{"version":3,"file":"vendor.js","mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACz3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEs8wB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACt3Vt8wB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEs8wB;;;;;;;;;;;;;;;;ACt3Vt8wB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA,CAAC;AAC0B;;;;;;;;;;;;;;;;;;;;;ACpC3B;AACA;AACA,iBAAiB,SAAI,IAAI,SAAI;AAC7B;AACA,WAAW,gBAAgB,sCAAsC,kBAAkB;AACnF,0BAA0B;AAC1B;AACA;AACA,wBAAwB;AACxB;AACA;AACA,CAAC;AACqC;AACc;AACV;AACP;AACa;AAChD,+BAA+B,oCAAoC;AACnE;AACA;AACA,uCAAuC,2CAA2C,sBAAsB,kCAAkC;AAC1I;AACA;AACA,4CAA4C,mDAAe;AAC3D,mCAAmC,6DAAe;AAClD;AACA;AACA,mCAAmC,yDAAa;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,+CAAU;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC,mDAAU;AACiB;;;;;;;;;;;;;;;;ACrD7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACiC;;;;;;;;;;;;;;;;;;ACdlC;AACA;AACA,iBAAiB,SAAI,IAAI,SAAI;AAC7B;AACA,WAAW,gBAAgB,sCAAsC,kBAAkB;AACnF,0BAA0B;AAC1B;AACA;AACA,wBAAwB;AACxB;AACA;AACA,CAAC;AACD;AACA;AACA;AACA,sCAAsC,mCAAmC;AACzE;AACA,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACoB;AACrB;AACA;AACA;AACA,sCAAsC,sCAAsC;AAC5E;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACuB;AACxB;AACA;AACA;AACA,sCAAsC,iBAAiB;AACvD;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACqB;;;;;;;;;;;;;;;;;;;;AC3EtB;AACA;AACA,iBAAiB,SAAI,IAAI,SAAI;AAC7B;AACA,WAAW,gBAAgB,sCAAsC,kBAAkB;AACnF,0BAA0B;AAC1B;AACA;AACA,wBAAwB;AACxB;AACA;AACA,CAAC;AACD,gBAAgB,SAAI,IAAI,SAAI;AAC5B,6CAA6C,OAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAI,IAAI,SAAI;AAC7B;AACA,oCAAoC,MAAM,+BAA+B,YAAY;AACrF,mCAAmC,MAAM,mCAAmC,YAAY;AACxF,gCAAgC,iEAAiE,wBAAwB;AACzH;AACA,KAAK;AACL;AACA,mBAAmB,SAAI,IAAI,SAAI;AAC/B,cAAc,6BAA6B,0BAA0B,cAAc,qBAAqB;AACxG,iBAAiB,oDAAoD,qEAAqE,cAAc;AACxJ,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC,mCAAmC,SAAS;AAC5C,mCAAmC,WAAW,UAAU;AACxD,0CAA0C,cAAc;AACxD;AACA,8GAA8G,OAAO;AACrH,iFAAiF,iBAAiB;AAClG,yDAAyD,gBAAgB,QAAQ;AACjF,+CAA+C,gBAAgB,gBAAgB;AAC/E;AACA,kCAAkC;AAClC;AACA;AACA,UAAU,YAAY,aAAa,SAAS,UAAU;AACtD,oCAAoC,SAAS;AAC7C;AACA;AAC+D;AACP;AACnB;AACF;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,KAAyC,GAAG,OAAuB,GAAG,CAAO;AAC3G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,+CAAU;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,+CAAU;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,sDAAgB;AACjE,4CAA4C,iDAAY;AACxD,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,4BAA4B,sDAAsD;AACtI;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,sDAAgB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,8CAAS;AAC/C;AACA;AACA;AACA;AACA;AACA,kDAAkD,qDAAY;AAC9D;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,YAAY,mDAAe;AAC3B;AACA,uDAAuD,2BAA2B,KAAK;AACvF;AACA;AACA;AACA;AACA,CAAC,CAAC,mDAAU;AACe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AC/LA;AACA;AACwD;AAChB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,uEAAuB;AACtC;AACA;AACA;AACA;AACA;AACA,YAAY,qDAAa;AACzB;AACA;AACA,oDAAoD,qFAAqC;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,iFAAiC;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,uEAAuB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAC4B;;;;;;;;;;;;;;;;;ACtD7B;AACA;AACA,gBAAgB,SAAI,IAAI,SAAI;AAC5B,6CAA6C,OAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACuB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,aAAa,yBAAyB;AAC1E;AACA;AACA,oCAAoC,aAAa,0BAA0B;AAC3E;AACA;AACA,oCAAoC,aAAa,4BAA4B;AAC7E;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACqB;;;;;;;;;;;;;;;;;;;;;;;;AC/CtB;AACA;AACA,gBAAgB,SAAI,IAAI,SAAI;AAC5B,6CAA6C,OAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAI,IAAI,SAAI;AAC7B;AACA,oCAAoC,MAAM,+BAA+B,YAAY;AACrF,mCAAmC,MAAM,mCAAmC,YAAY;AACxF,gCAAgC,iEAAiE,wBAAwB;AACzH;AACA,KAAK;AACL;AACA,mBAAmB,SAAI,IAAI,SAAI;AAC/B,cAAc,6BAA6B,0BAA0B,cAAc,qBAAqB;AACxG,iBAAiB,oDAAoD,qEAAqE,cAAc;AACxJ,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC,mCAAmC,SAAS;AAC5C,mCAAmC,WAAW,UAAU;AACxD,0CAA0C,cAAc;AACxD;AACA,8GAA8G,OAAO;AACrH,iFAAiF,iBAAiB;AAClG,yDAAyD,gBAAgB,QAAQ;AACjF,+CAA+C,gBAAgB,gBAAgB;AAC/E;AACA,kCAAkC;AAClC;AACA;AACA,UAAU,YAAY,aAAa,SAAS,UAAU;AACtD,oCAAoC,SAAS;AAC7C;AACA;AACwD;AACnB;AAC4B;AACH;AACU;AACE;AAChB;AAC1D;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA,QAAQ,kDAAc;AACtB,sBAAsB,oDAAY;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,mDAAe,IAAI,UAAc;AAC7C;AACA;AACA,8BAA8B,KAAyC,GAAG,OAAuB,GAAG,CAAO;AAC3G;AACA;AACA;AACA,aAAa,mDAAe;AAC5B;AACA;AACA,iBAAiB,mDAAe;AAChC;AACA;AACA;AACA;AACA,aAAa,mDAAe;AAC5B;AACA;AACA,iBAAiB,mDAAe;AAChC;AACA;AACA;AACA;AACA,oDAAoD,iEAAiB;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,8DAAqB;AAChF,wBAAwB,4CAAQ,iBAAiB,uDAAc;AAC/D,wCAAwC,oDAAc,iDAAiD,uDAAc;AACrH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,oDAAc;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,oDAAc;AAC1D;AACA;AACA;AACA,4CAA4C,oDAAc;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,qEAA4B;AACrF;AACA,iEAAiE,qEAA4B;AAC7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sFAAsF;AACtF;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,uEAAoB;AAC1E;AACA;AACA;AACA;AACA;AACA,4CAA4C,oDAAc;AAC1D;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,0DAAkB;AAC/C;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA,4CAA4C,oDAAc;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,iBAAiB,qEAA4B;AAC7C;AACA;AACA;AACA,2BAA2B,mEAAkB,mJAAmJ;AAChM,iBAAiB,2EAAkC;AACnD;AACA;AACA;AACA,2BAA2B,iFAAyB,mLAAmL;AACvO,iBAAiB,sEAA6B;AAC9C,2BAA2B,uEAAoB,yJAAyJ;AACxM;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA,wBAAwB,0DAAiB;AACzC;AACA,4BAA4B,oDAAc;AAC1C;AACA;AACA;AACA;AACA,kFAAkF,OAAO,uDAAc,MAAM;AAC7G;AACA,uCAAuC,qEAA4B;AACnE,uCAAuC,2EAAkC;AACzE,wCAAwC,oDAAc,2BAA2B,0DAAiB;AAClG,+CAA+C,0DAAiB;AAChE;AACA;AACA,wCAAwC,oDAAc,4BAA4B,0DAAiB;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,oDAAc,2BAA2B,0DAAiB,gFAAgF,uDAAc;AAC5L,2CAA2C,0DAAiB,sCAAsC,uDAAc;AAChH;AACA;AACA;AACA,gCAAgC,oDAAc,2BAA2B,0DAAiB;AAC1F,uCAAuC,0DAAiB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,oDAAc;AACtC;AACA;AACA;AACA;AACA;AACA,4BAA4B,oDAAc;AAC1C;AACA;AACA;AACA,4BAA4B,sDAAgB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,oDAAc;AAC1C;AACA;AACA,4BAA4B,0DAAoB;AAChD;AACA;AACA;AACA,iCAAiC,oDAAc;AAC/C,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,oDAAc;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,sDAAkB;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,0DAAoB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACyB;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,KAAK,EAAE,EAAwB;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA,0DAA0D,sBAAsB,2BAA2B,eAAe;AAC1H;AACA;AACA,wDAAwD,4BAA4B;AACpF;AACA;AACA;AACA;AA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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,wCAAwC;AACvE;AACA;AACA;AACA;AACA,QAAQ,kDAAc;AACtB;AACA;AACA;AACA;AACA;AACA,8BAA8B,iDAAa;AAC3C;AACA;AACA,8BAA8B,iDAAa;AAC3C;AACA;AACA;AACA;AACA,QAAQ,kDAAc;AACtB,QAAQ,kDAAc;AACtB;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA,oDAAoD,gCAAgC,mCAAmC;AACvH;AACA;AACA;AACA,wBAAwB,wCAAwC;AAChE;AACA,eAAe,cAAc,cAAc,uCAAuC;AAClF;AACA;AACA,QAAQ,kDAAc;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,2EAAsB;AAC7D;AACA;AACA,uCAAuC,2EAAsB;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,wCAAwC;AAC3D;AACA,iBAAiB,eAAe,gBAAgB,uCAAuC;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,2DAAc;AAC3C,eAAe,gEAAoB,4BAA4B,yDAAmB,uBAAuB,6DAAe;AACxH;AACA;AACA,CAAC;AAC+B;AAChC;AACA;AACA;;;;;;;;;;;;;;;;AC1HA;AACA;AACA;AACO;AACP;AACA,2EAA2E,4CAA4C;AACvH;AACA,0EAA0E,4CAA4C;AACtH;AACA,0EAA0E,4CAA4C;AACtH;AACA,iFAAiF,kDAAkD;AACnI;AACA,iFAAiF,kDAAkD;AACnI;AACA,oEAAoE,sCAAsC;AAC1G;AACA,qEAAqE,uCAAuC;AAC5G;AACA,CAAC,kCAAkC;;;;;;;;;;;;;;;;ACnBnC;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,4BAA4B;;;;;;;;;;;;;;;;;ACvB7B;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,8CAA8C;AAC/C;AACO;AACP;AACA;AACA;AACA;AACA;AACA,CAAC,wCAAwC;;;;;;;;;;;;;;;;;;;;;ACtBzC;AACA;AAC6C;AACR;AACS;AACP;AACiB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,4DAAmB;AACjD;AACA,6BAA6B,qCAAqC;AAClE;AACA,eAAe,QAAQ;AACvB,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,yDAAmB;AACxC;AACA;AACA,uBAAuB,uEAAuB;AAC9C;AACA,gDAAgD,wBAAwB;AACxE;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,iEAAsB;AAC3C;AACA;AACA,qBAAqB,iEAAsB;AAC3C;AACA;AACA,qBAAqB,iEAAsB;AAC3C;AACA;AACA,qBAAqB,2DAAgB;AACrC;AACA;AACA,qBAAqB,4DAAiB;AACtC;AACA;AACA;AACA;AACA,+BAA+B,0DAAoB;AACnD;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,qCAAqC;AACnE;AACA,eAAe,YAAY;AAC3B,iBAAiB,QAAQ;AACzB;AACA;AACA,eAAe,uEAAuB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAC0B;;;;;;;;;;;;;;;;ACxG3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,oCAAoC;AAC3E;AACA;AACA,CAAC;AACqB;;;;;;;;;;;;;;;;;;;;;ACdtB;AACA;AACA,gBAAgB,SAAI,IAAI,SAAI;AAC5B,6CAA6C,OAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAI,IAAI,SAAI;AAC7B;AACA,oCAAoC,MAAM,+BAA+B,YAAY;AACrF,mCAAmC,MAAM,mCAAmC,YAAY;AACxF,gCAAgC,iEAAiE,wBAAwB;AACzH;AACA,KAAK;AACL;AACA,mBAAmB,SAAI,IAAI,SAAI;AAC/B,cAAc,6BAA6B,0BAA0B,cAAc,qBAAqB;AACxG,iBAAiB,oDAAoD,qEAAqE,cAAc;AACxJ,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC,mCAAmC,SAAS;AAC5C,mCAAmC,WAAW,UAAU;AACxD,0CAA0C,cAAc;AACxD;AACA,8GAA8G,OAAO;AACrH,iFAAiF,iBAAiB;AAClG,yDAAyD,gBAAgB,QAAQ;AACjF,+CAA+C,gBAAgB,gBAAgB;AAC/E;AACA,kCAAkC;AAClC;AACA;AACA,UAAU,YAAY,aAAa,SAAS,UAAU;AACtD,oCAAoC,SAAS;AAC7C;AACA;AACoD;AACD;AACd;AACS;AACgC;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,6DAAe;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,kDAAc;AACtC,wBAAwB,kDAAc;AACtC,wBAAwB,4CAAQ,iBAAiB,uDAAc;AAC/D;AACA,wCAAwC,oDAAc;AACtD;AACA,+CAA+C,8DAAqB;AACpE;AACA;AACA;AACA,6BAA6B,0DAAkB;AAC/C,mDAAmD;AACnD;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,8DAAqB;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA,4CAA4C,oDAAc;AAC1D;AACA,kDAAkD,8CAAS;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA,4CAA4C,0DAAoB;AAChE;AACA;AACA;AACA,4CAA4C,oDAAc;AAC1D;AACA,kDAAkD,8CAAS;AAC3D;AACA;AACA;AACA;AACA;AACA,gDAAgD,oDAAc,8CAA8C,qDAAa;AACzH;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,oDAAc;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,oDAAc;AAC1D;AACA;AACA,+CAA+C,iDAAY;AAC3D;AACA,gDAAgD,oDAAc;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,mDAAW;AACjD,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA,6BAA6B,0DAAkB;AAC/C;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,oDAAc;AAC1C;AACA;AACA;AACA;AACA,CAAC;AAC+B;;;;;;;;;;;;;;;;;;;AC1ShC;AACA;AACA,gBAAgB,SAAI,IAAI,SAAI;AAC5B,6CAA6C,OAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAI,IAAI,SAAI;AAC7B;AACA,oCAAoC,MAAM,+BAA+B,YAAY;AACrF,mCAAmC,MAAM,mCAAmC,YAAY;AACxF,gCAAgC,iEAAiE,wBAAwB;AACzH;AACA,KAAK;AACL;AACA,mBAAmB,SAAI,IAAI,SAAI;AAC/B,cAAc,6BAA6B,0BAA0B,cAAc,qBAAqB;AACxG,iBAAiB,oDAAoD,qEAAqE,cAAc;AACxJ,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC,mCAAmC,SAAS;AAC5C,mCAAmC,WAAW,UAAU;AACxD,0CAA0C,cAAc;AACxD;AACA,8GAA8G,OAAO;AACrH,iFAAiF,iBAAiB;AAClG,yDAAyD,gBAAgB,QAAQ;AACjF,+CAA+C,gBAAgB,gBAAgB;AAC/E;AACA,kCAAkC;AAClC;AACA;AACA,UAAU,YAAY,aAAa,SAAS,UAAU;AACtD,oCAAoC,SAAS;AAC7C;AACA;AACqC;AACS;AAC0C;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,kDAAc;AACtC,wBAAwB,kDAAc;AACtC,wBAAwB,4CAAQ,iBAAiB,uDAAc;AAC/D,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,4DAAmB;AACtE;AACA;AACA;AACA;AACA,gCAAgC,sDAAkB,IAAI,wDAAoB;AAC1E,sFAAsF,wCAAwC;AAC9H;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,0DAAkB;AAC3D;AACA,sFAAsF,4DAA4D,2BAA2B;AAC7K;AACA;AACA;AACA;AACA;AACA,6DAA6D,oDAAc,sCAAsC,qDAAa;AAC9H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,0DAAoB;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,mDAAW;AACjD,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACoC;;;;;;;;;;;;;;;;;ACpKrC;AACA;AAC8C;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,gBAAgB;AAC9D;AACA;AACA;AACA;AACA;AACA,8CAA8C,gBAAgB;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,gBAAgB;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,uDAAmB;AACtC;AACA;AACA,CAAC;AACkB;;;;;;;;;;;;;;;;ACpCnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAC4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACtB7B;AACA;AACA,gBAAgB,SAAI,IAAI,SAAI;AAC5B,6CAA6C,OAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAI,IAAI,SAAI;AAC7B;AACA,oCAAoC,MAAM,+BAA+B,YAAY;AACrF,mCAAmC,MAAM,mCAAmC,YAAY;AACxF,gCAAgC,iEAAiE,wBAAwB;AACzH;AACA,KAAK;AACL;AACA,mBAAmB,SAAI,IAAI,SAAI;AAC/B,cAAc,6BAA6B,0BAA0B,cAAc,qBAAqB;AACxG,iBAAiB,oDAAoD,qEAAqE,cAAc;AACxJ,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC,mCAAmC,SAAS;AAC5C,mCAAmC,WAAW,UAAU;AACxD,0CAA0C,cAAc;AACxD;AACA,8GAA8G,OAAO;AACrH,iFAAiF,iBAAiB;AAClG,yDAAyD,gBAAgB,QAAQ;AACjF,+CAA+C,gBAAgB,gBAAgB;AAC/E;AACA,kCAAkC;AAClC;AACA;AACA,UAAU,YAAY,aAAa,SAAS,UAAU;AACtD,oCAAoC,SAAS;AAC7C;AACA;AACqC;AACE;AACvC;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACc;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA,CAAC;AACmB;AACpB;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,oDAAc;AAC7C;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA,yBAAyB;AACzB;AACA;AACA,+BAA+B,oDAAc;AAC7C;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACO;AACP;AACA,iCAAiC,0DAAoB;AACrD;AACA;AACA,eAAe,yDAAmB;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gEAAgE;AAChE;AACA;AACA;AACA,CAAC;AAC8B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,uDAAiB;AACtC,qBAAqB,oDAAc;AACnC,qFAAqF,8CAAQ;AAC7F;AACA,qBAAqB,sDAAgB;AACrC,oFAAoF,8CAAQ;AAC5F;AACA,qBAAqB,0DAAoB;AACzC,oFAAoF,8CAAQ;AAC5F;AACA;AACA;AACA,mFAAmF,8CAAQ;AAC3F;AACA;AACA;AACA;AACA;AACA,CAAC;AACwB;AACzB;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP,wDAAwD,oBAAoB,WAAW;AACvF;AACA;AACA;AACA,qCAAqC;AACrC;AACA,6BAA6B;AAC7B;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACxSA;AACA;AACA,gBAAgB,SAAI,IAAI,SAAI;AAC5B,6CAA6C,OAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAI,IAAI,SAAI;AAC7B;AACA,oCAAoC,MAAM,+BAA+B,YAAY;AACrF,mCAAmC,MAAM,mCAAmC,YAAY;AACxF,gCAAgC,iEAAiE,wBAAwB;AACzH;AACA,KAAK;AACL;AACA,mBAAmB,SAAI,IAAI,SAAI;AAC/B,cAAc,6BAA6B,0BAA0B,cAAc,qBAAqB;AACxG,iBAAiB,oDAAoD,qEAAqE,cAAc;AACxJ,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC,mCAAmC,SAAS;AAC5C,mCAAmC,WAAW,UAAU;AACxD,0CAA0C,cAAc;AACxD;AACA,8GAA8G,OAAO;AACrH,iFAAiF,iBAAiB;AAClG,yDAAyD,gBAAgB,QAAQ;AACjF,+CAA+C,gBAAgB,gBAAgB;AAC/E;AACA,kCAAkC;AAClC;AACA;AACA,UAAU,YAAY,aAAa,SAAS,UAAU;AACtD,oCAAoC,SAAS;AAC7C;AACA;AACqC;AACS;AAC6B;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,kDAAc;AACtC,wBAAwB,kDAAc;AACtC,wBAAwB,4CAAQ,iBAAiB,uDAAc;AAC/D,wCAAwC,oDAAc;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,mDAAe;AAC/C;AACA,yCAAyC,0DAAkB;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD;AACxD,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA,mDAAmD,8DAAqB;AACxE;AACA;AACA;AACA;AACA,iDAAiD,0DAAoB;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,oDAAc,6CAA6C,qDAAa;AACzH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,4BAA4B,oDAAc,4CAA4C,qDAAa;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,oDAAc;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAC6B;;;;;;;;;;;;;;;;;;;ACxM9B;AACA;AACA,iBAAiB,SAAI,IAAI,SAAI;AAC7B;AACA,WAAW,gBAAgB,sCAAsC,kBAAkB;AACnF,0BAA0B;AAC1B;AACA;AACA,wBAAwB;AACxB;AACA;AACA,CAAC;AAC8D;AACP;AACnB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,+CAAU;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D;AAC7D;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,+CAAU;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,qDAAY;AAC5C;AACA;AACA,+BAA+B,8CAAS;AACxC;AACA;AACA;AACA,iCAAiC,sDAAgB;AACjD,2BAA2B,8CAAS;AACpC;AACA;AACA,iCAAiC,sDAAgB;AACjD,2BAA2B,iDAAY;AACvC;AACA;AACA,SAAS;AACT;AACA;AACA,CAAC,CAAC,mDAAU;AACa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrFzB;AACA;AAC+D;AACP;AACA;AACY;AACN;AACjB;AACR;AAC4B;AAC1B;AACa;AAChB;AACF;;;;;;;;;;;ACblC;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,eAAe;AACf,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACjFD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtKD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACjED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACrLD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AClED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACnHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACjED;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACvMD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AChHD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACxJD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACjGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC7DD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC3ID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACjID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,IAAI;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AClLD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AChKD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9GD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD;AACtD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,sDAAsD;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9LD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACzED;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC,kBAAkB;AAClB;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC5GD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC/DD;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACzFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtFD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACxFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACpGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,gCAAgC;AAChC,+BAA+B;AAC/B,+BAA+B;AAC/B,8BAA8B;AAC9B;AACA;AACA;AACA,yDAAyD;AACzD;AACA,0DAA0D;AAC1D;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC;AACrC,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACpHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC1ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC1ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9ED;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9ED;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACxHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACxHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACxHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACxFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC3ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC3HD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACpED;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACnED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AChFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACpFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACrFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACzGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACzGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACrFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACxID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACpID;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACxGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AClLD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtKD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AChID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI,IAAI,IAAI;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACxGD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtJD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC1ED;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACpHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9JD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,8CAA8C,IAAI,IAAI,IAAI;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC5FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,sCAAsC,IAAI;AAC1C;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACjHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACrFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AChID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9FD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB;AACtB,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACnJD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,yCAAyC,IAAI;AAC7C;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC5ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACvID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D;AAC7D;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACxGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC/HD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,IAAI;AAC3D,6DAA6D,IAAI;AACjE,4DAA4D,IAAI;AAChE,kEAAkE,IAAI;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtED;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AChGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC5FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,KAAK;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9GD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACrND;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACrFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AClED;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACrGD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACnID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AChHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AClHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACrED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC/FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACpID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtJD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACpED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACzED;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtFD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC/ND;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC3FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACnED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,KAAK;AACzC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC/ED;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC3JD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACrLD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC3ED;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACzID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC3ID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACjED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,cAAc;AACd,iCAAiC;AACjC,cAAc;AACd,gCAAgC;AAChC,cAAc;AACd,mCAAmC;AACnC,cAAc;AACd,mCAAmC;AACnC,cAAc;AACd,gCAAgC;AAChC,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC7ID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AClGD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC/HD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC3ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACrGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACnED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACtID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACpHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,CAAC;;;;;;;;;;;ACnGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AChED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AChED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACzHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACjLD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC5FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AChED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC7DD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC1FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;ACnFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,0CAA0C,IAAI;AAC9C;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC/DD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AClID;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC/GD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;AC9GD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,qBAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;;AC7GD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,IAAI,KAA4D;AAChE,IAAI,CACyB;AAC7B,CAAC,sBAAsB;;AAEvB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,oBAAoB,YAAY;AAChC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,wBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,YAAY;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,IAAI;AACxB;AACA;;AAEA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,wGAAwG,IAAI,wBAAwB,IAAI,uDAAuD,IAAI;AACnM,qEAAqE,IAAI;AACzE,4BAA4B;AAC5B;;AAEA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,2CAA2C,YAAY;AACvD;AACA;AACA,cAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAwB,YAAY;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,4CAA4C,IAAI;;AAEhD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,gCAAgC;AAChC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,6BAA6B,kCAAkC;AAC/D;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,oBAAoB;AAC5C;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,qBAAqB,EAAE;AACvB,qBAAqB,EAAE;AACvB,0BAA0B,EAAE;AAC5B;AACA;AACA;AACA,wBAAwB,IAAI;AAC5B,wBAAwB,IAAI;AAC5B,6BAA6B,IAAI;AACjC;AACA;AACA;AACA;AACA,wCAAwC,IAAI;AAC5C;AACA;AACA;AACA,mBAAmB,MAAM,wEAAwE,MAAM,mBAAmB,MAAM,qBAAqB,MAAM,EAAE,IAAI;AACjK;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,8CAA8C;AAC9C;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,cAAc;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,wBAAwB,iBAAiB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,QAAQ;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,oBAAoB,QAAQ;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,QAAQ;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,QAAQ;AAC5B;AACA;AACA;AACA,oBAAoB,QAAQ;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,OAAO;AAC3B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,OAAO;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,oBAAoB;AACpB,2BAA2B;AAC3B;;AAEA;AACA;AACA;AACA,oBAAoB,UAAU;AAC9B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,QAAa;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,SAAO;AACxC,gBAAgB,0BAAe,IAAW,OAAO,CAAC;AAClD;AACA,cAAc;AACd;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB;AACjB;;AAEA;AACA;AACA;AACA;;AAEA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,EAAE,IAAI,EAAE;AACpC;AACA,4BAA4B,EAAE,IAAI,EAAE;AACpC;AACA;AACA,qCAAqC,EAAE;AACvC,+BAA+B,EAAE;AACjC,iCAAiC,EAAE;AACnC,+BAA+B,EAAE;AACjC,6BAA6B,EAAE,IAAI,EAAE;AACrC,4BAA4B,EAAE;AAC9B,mCAAmC,GAAG;AACtC,6BAA6B,EAAE;AAC/B,+BAA+B,EAAE,IAAI,EAAE;AACvC,8BAA8B,EAAE,IAAI,EAAE;AACtC,4BAA4B,EAAE;AAC9B,2BAA2B,EAAE;AAC7B,yBAAyB,EAAE;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,IAAI,0DAA0D,IAAI,qEAAqE,EAAE;AACjM;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,yCAAyC,OAAO;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,OAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,+BAA+B;AACnD;AACA;;AAEA;AACA,eAAe,OAAO;AACtB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,oBAAoB,cAAc;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,gBAAgB;AACpC;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,mCAAmC,iBAAiB;AACpD;;AAEA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA,aAAa;AACb;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,oBAAoB;AACxC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,cAAc;AAClC;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kBAAkB;AAClB;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,4GAA4G;AAC5G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,iBAAiB;AACrC;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,uBAAuB;AAC3C;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA,uBAAuB;AACvB;AACA;AACA,uBAAuB;AACvB;AACA;AACA,uBAAuB;AACvB;AACA;AACA,uBAAuB;AACvB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oCAAoC,sBAAsB;AAC1D;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oCAAoC,sBAAsB;AAC1D;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,wBAAwB;AACxB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qCAAqC,OAAO;AAC5C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qCAAqC,OAAO;AAC5C;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,yBAAyB,mBAAmB;AAC5C;AACA;;AAEA;AACA;AACA;;AAEA,sBAAsB,mBAAmB;AACzC;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,oBAAoB,QAAQ;AAC5B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,oBAAoB,OAAO;AAC3B;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,CAAC;;;;;;;;;;;;;;;;;;ACpjLmC;AACqC;AAClE,8BAA8B,6CAAO;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kFAAuB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC/B0C;AACnC,8BAA8B,mDAAU;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACpB2C;AACN;AACgB;AAC9C;AACP;AACA;AACA;AACA;AACA,CAAC,4CAA4C;AACtC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,kDAAE;AACzB;AACA,uBAAuB,kEAAU;AACjC;AACA,uBAAuB,wDAAK;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;ACvEuD;AACJ;AACmB;AAC1B;AACV;AAC3B;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,WAAW;AAC3B,qBAAqB,gEAAY;AACjC;AACA;AACA;AACA;AACA,qCAAqC,iFAA4C;AACjF;AACA;AACA;AACA,YAAY,iFAA4C;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iFAA4C;AAC5D;AACA;AACA;AACA,gBAAgB,oEAAc;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA,gBAAgB,SAAS;AACzB;AACA;AACA,KAAK,0DAAiB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,yDAAa;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,mDAAc;AACpC;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACzGkC;AACuB;AAClD;AACP;AACA,mBAAmB;AACnB;AACA,YAAY,iFAA4C;AACxD;AACA;AACA;AACA,YAAY,sEAAe;AAC3B;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;;;;;ACd0C;AACnC,8BAA8B,mDAAU;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;ACXoC;AACM;AACI;AACc;AACa;AACb;AACrD,4BAA4B,6CAAO;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kFAAuB;AAC7C;AACA;AACA,2BAA2B,6DAAkB;AAC7C;AACA;AACA;AACA,+BAA+B,qEAAmB;AAClD;AACA;AACA,4CAA4C,qEAAmB;AAC/D;AACA;AACA,4BAA4B,+BAA+B;AAC3D;AACA;AACA;AACA;AACA,4BAA4B,+BAA+B;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,mDAAK;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AC1GO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;ACT0C;AACA;AACI;AAC2B;AACb;AACyB;AAC9E,gCAAgC,mDAAU;AACjD;AACA;AACA;AACA;AACA;AACO,sBAAsB,mDAAU;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,uEAAkB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kFAAuB;AAC7C;AACA;AACA,oBAAoB,YAAY;AAChC;AACA;AACA,4BAA4B,SAAS;AACrC;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kFAAuB;AAC7C;AACA;AACA;AACA;AACA,gBAAgB,YAAY;AAC5B;AACA;AACA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kFAAuB;AAC7C;AACA;AACA,gBAAgB,YAAY;AAC5B;AACA;AACA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kFAAuB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kFAAuB;AAC7C;AACA;AACA;AACA,mBAAmB,6DAAkB;AACrC;AACA;AACA;AACA,mBAAmB,6DAAkB;AACrC;AACA;AACA;AACA,uBAAuB,qEAAmB;AAC1C;AACA;AACA;AACA,+BAA+B,mDAAU;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,cAAc;AAC9B;AACA;AACA;AACA;AACA;AACA,gBAAgB,cAAc;AAC9B;AACA;AACA;AACA;AACA;AACA,gBAAgB,cAAc;AAC9B;AACA;AACA;AACA;AACA;AACA,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA,mBAAmB,6DAAkB;AACrC;AACA;AACA;;;;;;;;;;;;;;;;;AC9I8C;AACvC,kCAAkC,uDAAY;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;ACxB+C;AACK;AACN;AACuC;AACnD;AACuB;AAClD,yBAAyB,uDAAY;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,4CAAa;AAChD;AACA;AACA;AACA,uCAAuC,4CAAa;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,uEAAkB,MAAM;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,mBAAmB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA,YAAY,4DAAU;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,4CAAa;AAChD;AACA,oBAAoB,4DAAU;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,oBAAoB;AACxC,iBAAiB,iFAA4C;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,oBAAoB;AACxC,oBAAoB,wCAAwC,EAAE,2CAAM;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,sEAAe;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,sEAAe;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,oBAAoB;AACxC;AACA;AACA,qBAAqB,iFAA4C;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iFAA4C;AAC5D;AACA;AACA;AACA,gBAAgB,sEAAe;AAC/B;AACA;AACA;AACA;AACA,aAAa,iFAA4C;AACzD;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iFAA4C;AAC5D;AACA;AACA;AACA;AACA;AACA,gBAAgB,sEAAe;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,oBAAoB;AACpC;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;AC5NyC;AACE;AACI;AACkB;AAC1D;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,mEAAmE;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,iCAAiC;AACjE;AACA;AACA;AACA;AACA,YAAY,4DAAU;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,0EAAmB;AACzD;AACA;AACA,YAAY,sDAAO;AACnB;AACA;AACA;AACA;AACA,oBAAoB,wDAAQ;AAC5B;AACA;AACA;AACA;AACA;AACA,yCAAyC,0EAAmB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,0EAAmB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,mBAAmB;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA,oEAAoE,0EAAmB;AACvF;;;;;;;;;;;;;;;;ACvIA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;;;;;;;;;;;;;;;;;;;;;;;AChB0C;AACA;AACO;AAC1C,oCAAoC,mDAAU;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,qCAAqC,mDAAU;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,oCAAoC,mDAAU;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,qCAAqC,mDAAU;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA,0BAA0B,mDAAU;AACpC;AACA;AACA;AACA;AACA,uBAAuB,8DAAW;AAClC;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;AC5E+C;AACJ;AACA;AACI;AACyB;AACjE,oCAAoC,mDAAU;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,uDAAY;AAC5D;AACA;AACA;AACA;AACA,6BAA6B,6DAAkB;AAC/C;AACA;AACA;AACA;AACA;AACA,eAAe,6DAAmB;AAClC;AACA;AACO;AACP;AACA;AACA,oBAAoB,aAAa;AACjC,qBAAqB,0BAA0B;AAC/C,oBAAoB,6BAA6B;AACjD,uBAAuB,6BAA6B;AACpD,sBAAsB,oCAAoC;AAC1D,uBAAuB,qDAAqD;AAC5E,sBAAsB,oCAAoC;AAC1D,mBAAmB,iCAAiC;AACpD,oBAAoB;AACpB;AACA,CAAC;AACD,oCAAoC,uDAAiB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,cAAc;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,mDAAU;AAC3C;AACA;AACA;AACA;AACA;AACA,gBAAgB,cAAc;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,aAAa;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;AC/HkD;AACR;AACW;AACS;AACtB;AACxC;AACO;AACP;AACA;AACA,QAAQ,8DAAW;AACnB;AACA;AACA;AACA;AACA;AACA,oCAAoC,sDAAO;AAC3C;AACA;AACA,WAAW,qDAAS;AACpB;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACO,sCAAsC,6DAAe;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,SAAS;AACrC;AACA,yBAAyB,0EAAiB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACvF0B;AACyB;AAC5C;AACP,WAAW,+DAAS,GAAG,uCAAE;AACzB;;;;;;;;;;;;;;;;;;;ACJ2C;AACb;AACE;AACzB;AACP,eAAe,mDAAU;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,2CAAI,UAAU,6CAAK;AAClD;AACA,KAAK;AACL;;;;;;;;;;;;;;;;;;AChB2C;AACpC,kBAAkB,mDAAU;AAC5B;AACP;AACA;AACA;AACA,eAAe,mDAAU;AACzB;;;;;;;;;;;;;;;;;;;;;ACP2C;AACD;AACH;AACK;AACd;AACvB;AACP;AACA;AACA,YAAY,sDAAO;AACnB;AACA;AACA,YAAY,wDAAQ;AACpB;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,sDAAO;AAClD,oDAAoD,mDAAG;AACvD;AACA;AACA;AACA;AACA,eAAe,mDAAU;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,SAAS;AACjC,2BAA2B,2CAAI;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,qGAAqG;AACrG;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,KAAK;AACL;;;;;;;;;;;;;;;;;;;AC3D2C;AACO;AACC;AAC5C;AACP;AACA,6BAA6B,mDAAU;AACvC;AACA;AACA,mBAAmB,mDAAU,CAAC,8DAAW;AACzC;AACA;AACA,eAAe,+DAAS;AACxB;AACA;;;;;;;;;;;;;;;;;;;ACb2C;AACiB;AACD;AACpD;AACP;AACA,mBAAmB,mDAAU,CAAC,wEAAgB;AAC9C;AACA;AACA,eAAe,uEAAa;AAC5B;AACA;;;;;;;;;;;;;;;;;;;;ACV2C;AACD;AACM;AACT;AACvC;AACO;AACP,QAAQ,4DAAU;AAClB;AACA;AACA;AACA;AACA,0DAA0D,mDAAG,SAAS,sDAAO;AAC7E;AACA,eAAe,mDAAU;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,SAAS;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;AC5D2C;AACO;AACD;AACT;AACjC;AACP;AACA;AACA;AACA,QAAQ,8DAAW;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oFAAoF,mDAAU;AAC9F;AACA;AACA,WAAW,6DAAQ,aAAa,qDAAS;AACzC;;;;;;;;;;;;;;;;;;;ACrBkD;AACV;AACmB;AACpD;AACP;AACA,QAAQ,8DAAW;AACnB;AACA,eAAe,uEAAa;AAC5B;AACA;AACA,eAAe,qDAAS;AACxB;AACA;;;;;;;;;;;;;;;;;ACZ2C;AACpC;AACP;AACA,mBAAmB,mDAAU;AAC7B;AACA;AACA,mBAAmB,mDAAU,iDAAiD,mBAAmB;AACjG;AACA;AACA,oBAAoB,mBAAmB;AACvC;AACA;;;;;;;;;;;;;;;;;;;;ACX2C;AACA;AACG;AACI;AAC3C;AACP;AACA,QAAQ,0DAAS;AACjB;AACA;AACA,aAAa,8DAAW;AACxB;AACA;AACA,SAAS,8DAAW;AACpB,oBAAoB,mDAAK;AACzB;AACA,eAAe,mDAAU;AACzB,oBAAoB,0DAAS;AAC7B;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA,YAAY,4BAA4B;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACnCiG;AAC1F;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,kEAAqB;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,mBAAmB;AAC3C;AACA;AACA;AACA;AACA;AACA,sCAAsC,+DAAc,eAAe,kEAAqB;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,6BAA6B;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC5D2C;AACX;AACY;AACrC,yCAAyC,mDAAK;AACrD,WAAW,6CAAK,OAAO,wDAAK;AAC5B;;;;;;;;;;;;;;;;;ACLiG;AAC1F;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,kEAAqB;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,kEAAqB;AAC7D;AACA,sCAAsC,+DAAc;AACpD;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACzCsC;AAC/B;AACP,WAAW,mDAAQ;AACnB;;;;;;;;;;;;;;;;;ACHsC;AAC/B;AACP,WAAW,mDAAQ;AACnB;;;;;;;;;;;;;;;;;;ACH2C;AACA;AACpC,2CAA2C,mDAAK;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,mDAAU;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,YAAY;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACrD2C;AACpC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,mDAAU;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC5B2C;AACpC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,mDAAU;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,cAAc;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,UAAU;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACpD2C;AACpC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,mDAAU;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACnC2C;AACI;AACxC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,mDAAU;AAC1C;AACA;AACA,qBAAqB,uDAAY;AACjC;AACA;;;;;;;;;;;;;;;;;;;;;;AClBgD;AACd;AACJ;AACoB;AACJ;AACF;AACrC;AACP;AACA,+CAA+C,+CAAM,sCAAsC,oDAAQ,EAAE,2CAAI,uBAAuB,+DAAc,iBAAiB,2DAAY,WAAW,wDAAU;AAChM;;;;;;;;;;;;;;;;;;;;;;ACTgD;AACd;AACI;AACQ;AACI;AACN;AACrC;AACP;AACA,+CAA+C,+CAAM,sCAAsC,oDAAQ,EAAE,mDAAQ,uBAAuB,+DAAc,iBAAiB,2DAAY,WAAW,wDAAU;AACpM;;;;;;;;;;;;;;;;;;ACT2C;AACpC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,mDAAU;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACpCsC;AACM;AACrC;AACP,WAAW,mDAAQ,CAAC,oDAAQ;AAC5B;;;;;;;;;;;;;;;;;;;;;;ACJ4B;AACc;AACuD;AAC1F;AACP;AACA,0DAA0D,sDAAI,qBAAqB,yCAAG;AACtF;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,iCAAiC,kEAAqB;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,kEAAqB;AACzD;AACA;AACA,kCAAkC,+DAAc;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;;;;;;;;;;;;;;;;;;AClF+E;AAC/E;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,8FAA+B;AACjF;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA,gBAAgB,WAAW;AAC3B;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;ACjC2C;AACI;AACxC;AACP;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,kCAAkC,mDAAU;AACnD;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,4BAA4B;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,kEAAuB;AACpD;AACA;AACA,6BAA6B,mEAAwB;AACrD;AACA;AACA;AACA,6BAA6B,sEAA2B;AACxD;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AChD2C;AACpC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,mDAAU;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC3B2C;AACpC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,cAAc;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,mDAAU;AAC3C;AACA;AACA;AACA;AACA;AACA,gBAAgB,cAAc;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,aAAa;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AClD2C;AACpC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,mDAAU;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACxDwC;AACF;AACD;AACrC;AACA,eAAe,6CAAO;AACtB;AACO;AACP,uBAAuB,mDAAQ,GAAG,qDAAS;AAC3C;;;;;;;;;;;;;;;;;ACRiD;AAC1C;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,iHAAiH;AAChJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,yDAAa;AACvC;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;;;;;;;;;;;;;;;;AC7D2C;AACpC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,mDAAU;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACvB8C;AACI;AAC3C;AACP;AACA,QAAQ,8DAAW;AACnB;AACA,2BAA2B,0DAAM;AACjC;AACA;AACA,2BAA2B,0DAAM;AACjC;AACA;;;;;;;;;;;;;;;;;;;ACX4B;AACc;AACuD;AAC1F;AACP;AACA,2DAA2D,sDAAI,qBAAqB,yCAAG;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,kEAAqB;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,kEAAqB;AACzD;AACA;AACA,iCAAiC,+DAAc;AAC/C;AACA;AACA;AACA;AACA;AACA,gBAAgB,oBAAoB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACnE2C;AAC+B;AAC9B;AACrC;AACP;AACA;AACA,mBAAmB,wDAAK;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kFAAuB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,mDAAU;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACzC2C;AAC+B;AAC9B;AACrC;AACP;AACA;AACA,mBAAmB,wDAAK;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kFAAuB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,mDAAU;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,WAAW;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACxDiG;AAC1F;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,+DAAc,oBAAoB,kEAAqB;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,kEAAqB;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC7B2C;AACpC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,mDAAU;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC5C2C;AACP;AACY;AACzC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,mDAAU;AACtC;AACA;AACA,wBAAwB,4CAAI;AAC5B,yBAAyB,4CAAI;AAC7B,4BAA4B,4CAAI;AAChC,kCAAkC,4CAAI;AACtC,wCAAwC,4CAAI;AAC5C,YAAY,4DAAU;AACtB;AACA;AACA;AACA;AACA;AACA,mDAAmD,4CAAI;AACvD,qDAAqD,4CAAI;AACzD,2DAA2D,4CAAI;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACnEgD;AACL;AACpC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,mDAAU;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,wDAAU;AACzB;;;;;;;;;;;;;;;;;;AC3C2C;AACI;AACxC;AACP,eAAe,mDAAU;AACzB,wBAAwB,uDAAY;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL;;;;;;;;;;;;;;;;;;;AClB2C;AACI;AACkB;AAC1D;AACP;AACA;AACA;AACA,eAAe,mDAAU;AACzB,wBAAwB,uDAAY;AACpC;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,6BAA6B,sDAAe;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA,KAAK;AACL;;;;;;;;;;;;;;;;;;;AC3C2C;AACI;AACwB;AAChE;AACP,eAAe,mDAAU;AACzB,wBAAwB,uDAAY;AACpC;AACA,qCAAqC,0DAAiB;AACtD;AACA,8BAA8B,4DAA4D;AAC1F,6BAA6B,2DAA2D;AACxF,6BAA6B,2DAA2D;AACxF,aAAa;AACb,SAAS;AACT;AACA,KAAK;AACL;;;;;;;;;;;;;;;;;;AChB2C;AACI;AACxC;AACP,eAAe,mDAAU;AACzB,wBAAwB,uDAAY;AACpC;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA,SAAS;AACT;AACA,KAAK;AACL;;;;;;;;;;;;;;;;;;;;;;;;ACf0D;AACN;AACJ;AACM;AACY;AACpB;AACI;AACF;AACzC;AACP;AACA,YAAY,8EAAmB;AAC/B,mBAAmB,uEAAkB;AACrC;AACA,iBAAiB,0DAAS;AAC1B,mBAAmB,iEAAe;AAClC;AACA,iBAAiB,8DAAW;AAC5B,mBAAmB,6DAAa;AAChC;AACA,iBAAiB,4DAAU;AAC3B,mBAAmB,mEAAgB;AACnC;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACxB+C;AACxC,qBAAqB,uDAAY;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACR4C;AACrC,mCAAmC,qDAAW;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACxBkD;AAC3C,sCAAsC,2DAAc;AAC3D;AACA;AACA;AACA,gBAAgB,UAAU;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACvB8C;AACF;AACrC,yBAAyB,qDAAW;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,mEAAsB;AACnF;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,qEAAwB;AACpC;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACzBkD;AAC3C,4BAA4B,2DAAc;AACjD;AACA;AACA;AACA,gBAAgB,UAAU;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACvBkC;AAC3B,0BAA0B,2CAAM;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC9EyC;AAClC,6BAA6B,iDAAS;AAC7C,uCAAuC,qDAAa;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,UAAU;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC5C4C;AACrC,0BAA0B,qDAAW;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC3BkD;AAC3C,6BAA6B,2DAAc;AAClD;;;;;;;;;;;;;;;;;;;ACF8D;AACM;AAC7D,oCAAoC,6EAAuB,CAAC,uEAAoB;AAChF;;;;;;;;;;;;;;;;;;;ACHmC;AACM;AACzC,0BAA0B,yDAAa,CAAC,mDAAU;AAClD;;;;;;;;;;;;;;;;;;;ACHqC;AACM;AAC3C,2BAA2B,2DAAc,CAAC,qDAAW;AACrD;;;;;;;;;;;;;;;;;;;ACHqC;AACM;AAC3C,2BAA2B,2DAAc,CAAC,qDAAW;AACrD;;;;;;;;;;;;;;;;;;ACHA;AACP;AACA;AACA;AACA;AACA;AACO;AACA;;;;;;;;;;;;;;;;ACPA;;;;;;;;;;;;;;;;;ACAA;AACP;AACA;AACO;;;;;;;;;;;;;;;;ACHP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACM;;;;;;;;;;;;;;;;ACVP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACM;;;;;;;;;;;;;;;;;ACVP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACO;AACP;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACM;;;;;;;;;;;;;;;;ACVP;AACA;AACA;AACA;AACA,eAAe,eAAe;AAC9B,EAAE,0BAA0B,MAAM,IAAI,eAAe,gBAAgB;AACrE;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACM;;;;;;;;;;;;;;;;;ACboC;AACpC;AACP;AACA,gBAAgB,iCAAiC;AACjD;AACA;AACA;AACA,uDAAuD,mDAAU;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACfO;AACP,uBAAuB,YAAY;AACnC;;;;;;;;;;;;;;;;ACFO;AACP;AACA;;;;;;;;;;;;;;;;ACFO;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;ACAA;AACP;AACA;;;;;;;;;;;;;;;;;ACFuE;AAChE;AACP,iCAAiC,0DAAiB;AAClD;;;;;;;;;;;;;;;;;ACHiE;AAC1D;AACP,iCAAiC,sDAAe;AAChD;;;;;;;;;;;;;;;;;ACHoC;AAC7B;AACP,YAAY,iDAAO;AACnB;;;;;;;;;;;;;;;;ACHO;AACP;AACA;;;;;;;;;;;;;;;;;ACF2C;AACpC;AACP,oCAAoC,mDAAU;AAC9C;;;;;;;;;;;;;;;;ACHO;AACP;AACA;;;;;;;;;;;;;;;;ACFO;AACP;AACA;;;;;;;;;;;;;;;;ACFO;;;;;;;;;;;;;;;;;;ACA+B;AAC/B;AACP;AACA;AACO;AACP;AACA,eAAe,+CAAQ;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;ACdsD;AACI;AACE;AACI;AACpB;AACJ;AACF;AAC2B;AACM;AAChE;AACP,kCAAkC,0DAAiB;AACnD,eAAe,6EAAqB;AACpC;AACA,aAAa,yDAAW;AACxB,eAAe,mEAAgB;AAC/B;AACA,aAAa,qDAAS;AACtB,eAAe,uEAAkB;AACjC;AACA,uCAAuC,sDAAe;AACtD,eAAe,yEAAmB;AAClC;AACA;AACA,sBAAsB,mDAAQ,qCAAqC,OAAO;AAC1E,oCAAoC,OAAO;AAC3C;AACA;AACA;AACA;;;;;;;;;;;;;;;;AC5BO;AACP,wCAAwC,+BAA+B;AACvE;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACLiE;AAC1D;AACP,8BAA8B,sDAAe;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;;;;;;;;;;;;;;;;AC7BuE;AAChE;AACP,oBAAoB,0DAAiB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACToD;AAC7C;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,oBAAoB,6DAAe;AACnC;AACA;;;;;;;;;;;;;;;;;;;ACVqD;AACT;AACD;AACpC,kGAAkG,6DAAe;AACxH;AACA;AACA;AACA,0BAA0B,mDAAU;AACpC;AACA;AACA,WAAW,yDAAW;AACtB;;;;;;;;;;;;;;;;;;;ACX2C;AACiC;AACvB;AAC9C;AACP;AACA,sCAAsC,mDAAU;AAChD;AACA;AACA,2BAA2B,8DAAkB;AAC7C,kCAAkC,8DAAkB;AACpD;AACA;AACA;AACA,mBAAmB,mDAAU,CAAC,4CAAa;AAC3C;AACA,eAAe,mDAAU;AACzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChBA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,kBAAkB;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,UAAU;AAC3B,+BAA+B,gBAAgB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yFAAyF;AACzF,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,+BAA+B;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,mBAAmB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,oBAAoB;AACjC,aAAa,mBAAmB;AAChC;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,qBAAqB;AAChD,2BAA2B,gBAAgB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,YAAY;AACzB,2BAA2B,YAAY;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,+BAA+B;AACxD;AACA;AACA,sCAAsC,+BAA+B;AACrE;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,kCAAkC;AAC7C;AACA;AACA,WAAW,uBAAuB;AAClC;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,WAAW;AACtB,yBAAyB,aAAa;AACtC;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,mCAAmC;AAChD,aAAa,sCAAsC;AACnD,aAAa,wCAAwC;AACrD,aAAa,qCAAqC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,wBAAwB;AACrC,aAAa,yBAAyB;AACtC,aAAa,2BAA2B;AACxC,aAAa,0BAA0B;AACvC;AACA;;AAEA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uEAAuE,WAAW;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,YAAY;AAChC,qCAAqC,YAAY;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,iCAAiC;AACrD,oBAAoB,qCAAqC;AACzD,oBAAoB,iCAAiC;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,aAAa,QAAQ,GAAG;AACrC,iBAAiB,OAAO;AACxB,aAAa,aAAa,MAAM,EAAE;AAClC;AACA,OAAO,UAAU,mCAAmC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,UAAU;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,gBAAgB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,YAAY;AAC1C,oCAAoC,YAAY;AAChD;AACA;AACA,4CAA4C,YAAY;AACxD,kDAAkD,YAAY;AAC9D;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,qDAAqD;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,YAAY;AAC/C;AACA;AACA;AACA,iBAAiB,YAAY;AAC7B;AACA,mCAAmC,YAAY;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,+BAA+B;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEyQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/rCzQ;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMuJ,aAAa,GAAG,OAAOC,SAAP,KAAqB,WAArB,IAAoC,CAAC,CAACA,SAA5D;AACA,MAAMC,UAAU,GAAG,OAAnB;;AACA,SAASC,kBAAT,CAA4BC,GAA5B,EAAiC;AAC7B,SAAO,IAAIN,2DAAJ,CAAkB;AAAK;AAAvB,IAAmDE,aAAa,IAAK,8BAA6BI,GAAI,eAAtG,CAAP;AACH;;AACD,SAASC,iBAAT,GAA6B;AACzB,SAAO,IAAIP,2DAAJ,CAAkB;AAAK;AAAvB,IAAkDE,aAAa,IAAI,kEAAnE,CAAP;AACH;;AACD,SAASM,kBAAT,GAA8B;AAC1B,SAAO,IAAIR,2DAAJ,CAAkB;AAAK;AAAvB,IAAmDE,aAAa,IAAI,+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G8lC,UAAvG;AAAA;;AACAA,UAAU,CAACvB,IAAX,kBA1FiG/sC,8DA0FjG;AAAA,QAAwGsuC;AAAxG;AACAA,UAAU,CAACtB,IAAX,kBA3FiGhtC,8DA2FjG;;AACA;AAAA,qDA5FiGA,+DA4FjG,CAA2FsuC,UAA3F,EAAmH,CAAC;AACxG3jD,IAAAA,IAAI,EAAEkpC,mDADkG;AAExGpvC,IAAAA,IAAI,EAAE,CAAC;AACC0oD,MAAAA,OAAO,EAAE,CAACY,GAAD,CADV;AAECb,MAAAA,YAAY,EAAE,CAACa,GAAD;AAFf,KAAD;AAFkG,GAAD,CAAnH;AAAA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC9LwC;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,kDAAO;;AAE3B;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEmB;;;;;;;;;;;;;;;;;;;;;;;AC5BwB;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,MAAM;AACrC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,MAAM;AACxD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,qDAAU;AAC7C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB,oBAAoB;AACpB,8BAA8B;AAC9B,yBAAyB;AACzB,SAAS,MAAM,SAAS;AACxB,QAAQ,MAAM,QAAQ;AACtB;AACA;AACA;AACA;AAC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;;;;;;;;AC5cA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB,yBAAyB;AACzB,uBAAuB;AACvB;AACA;AACA;AACA;AACA,uBAAuB;AACvB,oBAAoB;AACpB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEq/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrKr/B;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMkf,YAAN,CAAmB;;AAEnBA,YAAY,CAACnqC,IAAb;AAAA,mBAAyGmqC,YAAzG;AAAA;;AACAA,YAAY,CAAC5F,IAAb,kBAD+F/sC,8DAC/F;AAAA,QAA0G2yC;AAA1G;AACAA,YAAY,CAAC3F,IAAb,kBAF+FhtC,8DAE/F;;AACA;AAAA,qDAH+FA,+DAG/F,CAA2F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AAb;AACH;;AACQ,MAAL9qD,KAAK,GAAG;AACR,WAAO,KAAK/O,KAAL,KAAe,CAAtB;AACH;;AACO,MAAJ2mF,IAAI,GAAG;AACP,WAAO,KAAK3mF,KAAL,KAAe,KAAK65D,KAAL,GAAa,CAAnC;AACH;;AACO,MAAJ+sB,IAAI,GAAG;AACP,WAAO,KAAK5mF,KAAL,GAAa,CAAb,KAAmB,CAA1B;AACH;;AACM,MAAH6mF,GAAG,GAAG;AACN,WAAO,CAAC,KAAKD,IAAb;AACH;;AAlBgB;AAoBrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAM6d,OAAN,CAAc;AACV7xG,EAAAA,WAAW,CAAC8xG,cAAD,EAAiB9f,SAAjB,EAA4BC,QAA5B,EAAsC;AAC7C,SAAK6f,cAAL,GAAsBA,cAAtB;AACA,SAAK9f,SAAL,GAAiBA,SAAjB;AACA,SAAKC,QAAL,GAAgBA,QAAhB;AACA,SAAK8f,QAAL,GAAgB,IAAhB;AACA,SAAKC,aAAL,GAAqB,IAArB;AACA,SAAKxf,OAAL,GAAe,IAAf;AACH;AACD;AACJ;AACA;AACA;;;AACe,MAAPof,OAAO,CAACA,OAAD,EAAU;AACjB,SAAKG,QAAL,GAAgBH,OAAhB;AACA,SAAKI,aAAL,GAAqB,IAArB;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AAC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AX;AAE7IguD,IAAAA,YAAY,EAAE,CAAC;AACf72F,MAAAA,IAAI,EAAE6oC,gDAAKA;AADI,KAAD,CAF+H;AAI7IouD,IAAAA,aAAa,EAAE,CAAC;AAChBj3F,MAAAA,IAAI,EAAE6oC,gDAAKA;AADK,KAAD;AAJ8H,GAH7J;AAAA;;AAUA,SAASsuD,eAAT,CAAyBzyC,IAAzB,EAA+BH,MAA/B,EAAuC;AACnCG,EAAAA,IAAI,CAAC9iC,OAAL,CAAa+jC,SAAb,GAAyBpB,MAAM,CAACrzC,IAAhC;AACH;;AACD,SAASgmF,WAAT,CAAqBl3F,IAArB,EAA2B;AACvB,SAAOA,IAAI,CAAC,MAAD,CAAJ,IAAgB,OAAOA,IAA9B;AACH;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMs3F,IAAN,CAAW;AACP1yG,EAAAA,WAAW,CAAC8xG,cAAD,EAAiB3xC,WAAj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AAmB,4BAAnB,CAAnC,EACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMi0D,QAAN,CAAe;AACXn4G,EAAAA,WAAW,CAAC49F,MAAD,EAASwa,eAAT,EAA0B;AACjC,SAAKxa,MAAL,GAAcA,MAAd;AACA,SAAKwa,eAAL,GAAuBA,eAAvB;AACH;;AACDxnG,EAAAA,SAAS,CAACtP,KAAD,EAAQugG,MAAM,GAAG,YAAjB,EAA+Ba,QAA/B,EAAyC9E,MAAzC,EAAiD;AACtD,QAAIl0E,EAAJ;;AACA,QAAIpoB,KAAK,IAAI,IAAT,IAAiBA,KAAK,KAAK,EAA3B,IAAiCA,KAAK,KAAKA,KAA/C,EACI,OAAO,IAAP;;AACJ,QAAI;AACA,aAAOmhG,UAAU,CAACnhG,KAAD,EAAQugG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AAG23B,WAAW,CAAC33B,UAA/B;;AACA,UAAIA,UAAJ,EAAgB;AACZ;AACA;AACA,cAAMruE,MAAM,GAAGquE,UAAU,CAACq3B,cAAX,CAA0Bx7G,MAA1B,KAAqCmkF,UAAU,CAAC58E,aAAX,CAA0B,UAASvH,MAAO,IAA1C,CAApD;;AACA,YAAI8V,MAAJ,EAAY;AACR,iBAAOA,MAAP;AACH;AACJ;;AACDgmG,MAAAA,WAAW,GAAGH,UAAU,CAACI,QAAX,EAAd;AACH;AACJ;;AACD,SAAO,IAAP;AACH;AACD;AACA;AACA;;;AACA,MAAMC,oBAAN,CAA2B;AACvB;AACJ;AACA;AACIzB,EAAAA,SAAS,CAACjnG,MAAD,EAAS,CAAG;AACrB;AACJ;AACA;;;AACIknG,EAAAA,iBAAiB,GAAG;AAChB,WAAO,CAAC,CAAD,EAAI,CAAJ,CAAP;AACH;AACD;AACJ;AACA;;;AACII,EAAAA,gBAAgB,CAAC76F,QAAD,EAAW,CAAG;AAC9B;AACJ;AACA;;;AACI86F,EAAAA,cAAc,CAAC7oD,MAAD,EAAS,CAAG;AAC1B;AACJ;AACA;;;AACIipD,EAAAA,2BAA2B,CAACC,iBAAD,EAAoB,CAAG;;AAtB3B;AAyB3B;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMe,UAAN,CAAiB;AAGjB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACr1KA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMa,WAAN,CAAkB;AAElB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMC,WAAN,CAAkB;AAGlB;AACA;A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,IAAAA,eAAe,EAAEpmG,OAAO,CAAComG;AARtB,GAAP;AAUH;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMsB,UAAN,CAAiB;AACbtiH,EAAAA,WAAW,CAAC25D,OAAD,EAAU;AACjB,SAAKA,OAAL,GAAeA,OAAf;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACI4oD,EAAAA,OAAO,CAACpmG,KAAD,EAAQiN,GAAR,EAAaxO,OAAO,GAAG,EAAvB,EAA2B;AAC9B,QAAI4nG,GAAJ,CAD8B,CAE9B;;AACA,QAAIrmG,KAAK,YAAYykG,WAArB,EAAkC;AAC9B;AACA;AACA4B,MAAAA,GAAG,GAAGrmG,KAAN;AACH,KAJD,MAKK;AACD;AACA;AACA;AACA;AACA,UAAIqhG,OAAO,GAAGl6G,SAAd;;AACA,UAAIsX,OAAO,CAAC4iG,OAAR,YAA2BD,WAA/B,EAA4C;AACxCC,QAAAA,OAAO,GAAG5iG,OAAO,CAAC4iG,OAAlB;AACH,OAFD,MAGK;AACDA,QAAAA,OAAO,GAAG,IAAID,WAAJ,CAAgB3iG,OAAO,CAAC4iG,OAAxB,CAAV;AACH,OAXA,CAYD;;;AACA,UAAIvpG,MAAM,GAAG3Q,SAAb;;AACA,UAAI,CAAC,CAACsX,OAAO,CAAC3G,MAAd,EAAsB;AAClB,YAAI2G,OAAO,CAAC3G,MAAR,YAA0BsrG,UAA9B,EAA0C;AACtCtrG,UAAAA,MAAM,GAAG2G,OAAO,CAAC3G,MAAjB;AACH,SAFD,MAGK;AACDA,UAAAA,MAAM,GAAG,IAAIsrG,UAAJ,CAAe;AAAEK,YAAAA,UAAU,EAAEhlG,OAAO,CAAC3G;AAAtB,WAAf,CAAT;AACH;AACJ,OArBA,CAsBD;;;AACAuuG,MAAAA,GAAG,GAAG,IAAI5B,WAAJ,CAAgBzkG,KAAhB,EAAuBiN,GAAvB,EAA6BxO,OAAO,CAACqL,IAAR,KAAiB3iB,SAAjB,GAA6BsX,OAAO,CAACqL,IAArC,GAA4C,IAAzE,EAAgF;AAClFu3F,QAAAA,OADkF;AAElFxgF,QAAAA,OAAO,EAAEpiB,OAAO,CAACoiB,OAFiE;AAGlF/oB,QAAAA,MAHkF;AAIlF8sG,QAAAA,cAAc,EAAEnmG,OAAO,CAACmmG,cAJ0D;AAKlF;AACAE,QAAAA,YAAY,EAAErmG,OAAO,CAACqmG,YAAR,IAAwB,MAN4C;AAOlFD,QAAAA,eAAe,EAAEpmG,OAAO,CAAComG;AAPyD,OAAhF,CAAN;AASH,KAxC6B,CAyC9B;AACA;AACA;AACA;;;AACA,UAAMyB,OAAO,GAAG39D,wCAAE,CAAC09D,GAAD,CAAF,CAAQ32D,IAAR,CAAauxD,yDAAS,CAAEoF,GAAD,IAAS,KAAK7oD,OAAL,CAAa+oD,MAAb,CAAoBF,GAApB,CAAV,CAAtB,CAAhB,CA7C8B,CA8C9B;AACA;AACA;;AACA,QAAIrmG,KAAK,YAAYykG,WAAjB,IAAgChmG,OAAO,CAACD,OAAR,KAAoB,QAAxD,EAAkE;AAC9D,aAAO8nG,OAAP;AACH,KAnD6B,CAoD9B;AACA;AACA;;;AACA,UAAME,IAAI,GAAGF,OAAO,CAAC52D,IAAR,CAAa/pD,sDAAM,CAAE0zB,KAAD,IAAWA,KAAK,YAAY0sF,YAA7B,CAAnB,CAAb,CAvD8B,CAwD9B;;AACA,YAAQtnG,OAAO,CAACD,OAAR,IAAmB,MAA3B;AACI,WAAK,MAAL;AACI;AACA;AACA;AACA;AACA;AACA,gBAAQ6nG,GAAG,CAACvB,YAAZ;AACI,eAAK,aAAL;AACI,mBAAO0B,IAAI,CAAC92D,IAAL,CAAUtkD,mDAAG,CAAEu4F,GAAD,IAAS;AAC1B;AACA,kBAAIA,GAAG,CAAC75E,IAAJ,KAAa,IAAb,IAAqB,EAAE65E,GAAG,CAAC75E,IAAJ,YAAoBo6F,WAAtB,CAAzB,EAA6D;AACzD,sBAAM,IAAIjjG,KAAJ,CAAU,iCAAV,CAAN;AACH;;AACD,qBAAO0iF,GAAG,CAAC75E,IAAX;AACH,aANmB,CAAb,CAAP;;AAOJ,eAAK,MAAL;AACI,mBAAO08F,IAAI,CAAC92D,IAAL,CAAUtkD,mDAAG,CAAEu4F,GAAD,IAAS;AAC1B;AACA,kBAAIA,GAAG,CAAC75E,IAAJ,KAAa,IAAb,IAAqB,EAAE65E,GAAG,CAAC75E,IAAJ,YAAoBs6F,IAAtB,CAAzB,EAAsD;AAClD,sBAAM,IAAInjG,KAAJ,CAAU,yBAAV,CAAN;AACH;;AACD,qBAAO0iF,GAAG,CAAC75E,IAAX;AACH,aANmB,CAAb,CAAP;;AAOJ,eAAK,MAAL;AACI,mBAAO08F,IAAI,CAAC92D,IAAL,CAAUtkD,mDAAG,CAAEu4F,GAAD,IAAS;AAC1B;AACA,kBAAIA,GAAG,CAAC75E,IAAJ,KAAa,IAAb,IAAqB,OAAO65E,GAAG,CAAC75E,IAAX,KAAoB,QAA7C,EAAuD;AACnD,sBAAM,IAAI7I,KAAJ,CAAU,2BAAV,CAAN;AACH;;AACD,qBAAO0iF,GAAG,CAAC75E,IAAX;AACH,aANmB,CAAb,CAAP;;AAOJ,eAAK,MAAL;AACA;AACI;AACA,mBAAO08F,IAAI,CAAC92D,IAAL,CAAUtkD,mDAAG,CAAEu4F,GAAD,IAASA,GAAG,CAAC75E,IAAd,CAAb,CAAP;AA5BR;;AA8BJ,WAAK,UAAL;AACI;AACA,eAAO08F,IAAP;;AACJ;AACI;AACA,cAAM,IAAIvlG,KAAJ,CAAW,uCAAsCxC,OAAO,CAACD,OAAQ,GAAjE,CAAN;AA1CR;AA4CH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACIo6B,EAAAA,MAAM,CAAC3rB,GAAD,EAAMxO,OAAO,GAAG,EAAhB,EAAoB;AACtB,WAAO,KAAK2nG,OAAL,CAAa,QAAb,EAAuBn5F,GAAvB,EAA4BxO,OAA5B,CAAP;AACH;AACD;AACJ;AACA;AACA;AACA;;;AACIkI,EAAAA,GAAG,CAACsG,GAAD,EAAMxO,OAAO,GAAG,EAAhB,EAAoB;AACnB,WAAO,KAAK2nG,OAAL,CAAa,KAAb,EAAoBn5F,GAApB,EAAyBxO,OAAzB,CAAP;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;;;AACIxV,EAAAA,IAAI,CAACgkB,GAAD,EAAMxO,OAAO,GAAG,EAAhB,EAAoB;AACpB,WAAO,KAAK2nG,OAAL,CAAa,MAAb,EAAqBn5F,GAArB,EAA0BxO,OAA1B,CAAP;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACIgoG,EAAAA,KAAK,CAACx5F,GAAD,EAAMy5F,aAAN,EAAqB;AACtB,WAAO,KAAKN,OAAL,CAAa,OAAb,EAAsBn5F,GAAtB,EAA2B;AAC9BnV,MAAAA,MAAM,EAAE,IAAIsrG,UAAJ,GAAiBp6E,MAAjB,CAAwB09E,aAAxB,EAAuC,gBAAvC,CADsB;AAE9BloG,MAAAA,OAAO,EAAE,MAFqB;AAG9BsmG,MAAAA,YAAY,EAAE;AAHgB,KAA3B,CAAP;AAKH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;;;AACIrmG,EAAAA,OAAO,CAACwO,GAAD,EAAMxO,OAAO,GAAG,EAAhB,EAAoB;AACvB,WAAO,KAAK2nG,OAAL,CAAa,SAAb,EAAwBn5F,GAAxB,EAA6BxO,OAA7B,CAAP;AACH;AACD;AACJ;AACA;AACA;AACA;;;AACIkoG,EAAAA,KAAK,CAAC15F,GAAD,EAAMnD,IAAN,EAAYrL,OAAO,GAAG,EAAtB,EAA0B;AAC3B,WAAO,KAAK2nG,OAAL,CAAa,OAAb,EAAsBn5F,GAAtB,EAA2Bi5F,OAAO,CAACznG,OAAD,EAAUqL,IAAV,CAAlC,CAAP;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;;;AACI61B,EAAAA,IAAI,CAAC1yB,GAAD,EAAMnD,IAAN,EAAYrL,OAAO,GAAG,EAAtB,EAA0B;AAC1B,WAAO,KAAK2nG,OAAL,CAAa,MAAb,EAAqBn5F,GAArB,EAA0Bi5F,OAAO,CAACznG,OAAD,EAAUqL,IAAV,CAAjC,CAAP;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;;;AACI88F,EAAAA,GAAG,CAAC35F,GAAD,EAAMnD,IAAN,EAAYrL,OAAO,GAAG,EAAtB,EAA0B;AACzB,WAAO,KAAK2nG,OAAL,CAAa,KAAb,EAAoBn5F,GAApB,EAAyBi5F,OAAO,CAACznG,OAAD,EAAUqL,IAAV,CAAhC,CAAP;AACH;;AA9NY;;AAgOjBq8F,UAAU,CAACrpF,IAAX;AAAA,mBAAuGqpF,UAAvG,EAA6F7xF,sDAA7F,CAAmI4sF,WAAnI;AAAA;;AACAiF,UAAU,CAACppF,KAAX,kBAD6FzI,gEAC7F;AAAA,SAA2G6xF,UAA3G;AAAA,WAA2GA,UAA3G;AAAA;;AACA;AAAA,qDAF6F7xF,+DAE7F,CAA2F6xF,UAA3F,EAAmH,CAAC;AACxGlnG,IAAAA,IAAI,EAAEuV,qDAAUA;AADwF,GAAD,CAAnH,EAE4B,YAAY;AAAE,WAAO,CAAC;AAAEvV,MAAAA,IAAI,EAAEiiG;AAAR,KAAD,CAAP;AAAiC,GAF3E;AAAA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAM2F,sBAAN,CAA6B;AACzBhjH,EAAAA,WAAW,CAACyD,IAAD,EAAOw/G,WAAP,EAAoB;AAC3B,SAAKx/G,IAAL,GAAYA,IAAZ;AACA,SAAKw/G,WAAL,GAAmBA,WAAnB;AACH;;AACDP,EAAAA,MAAM,CAACF,GAAD,EAAM;AACR,WAAO,KAAKS,WAAL,CAAiBC,SAAjB,CAA2BV,GAA3B,EAAgC,KAAK/+G,IAArC,CAAP;AACH;;AAPwB;AAS7B;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAM0/G,iBAAiB,GAAG,IAAIj/D,yDAAJ,CAAmB,mBAAnB,CAA1B;;AACA,MAAMk/D,eAAN,CAAsB;AAClBF,EAAAA,SAAS,CAACV,GAAD,EAAM/+G,IAAN,EAAY;AACjB,WAAOA,IAAI,CAACi/G,MAAL,CAAYF,GAAZ,CAAP;AACH;;AAHiB;;AAKtBY,eAAe,CAACnqF,IAAhB;AAAA,mBAA4GmqF,eAA5G;AAAA;;AACAA,eAAe,CAAClqF,KAAhB,kBAxC6FzI,gEAwC7F;AAAA,SAAgH2yF,eAAhH;AAAA,WAAgHA,eAAhH;AAAA;;AACA;AAAA,qDAzC6F3yF,+DAyC7F,CAA2F2yF,eAA3F,EAAwH,CAAC;AAC7GhoG,IAAAA,IAAI,EAAEuV,qDAAUA;AAD6F,GAAD,CAAxH;AAAA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,IAAI0yF,aAAa,GAAG,CAApB;AACA;AACA;AACA;AACA;;AACA,IAAIC,eAAJ,EACA;AACA;;AACA,MAAMC,qBAAqB,GAAG,gDAA9B,EACA;AACA;;AACA,MAAMC,sBAAsB,GAAG,+CAA/B;AACA,MAAMC,6BAA6B,GAAG,6CAAtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMC,oBAAN,CAA2B;AAE3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMC,kBAAN,CAAyB;AACrB3jH,EAAAA,WAAW,CAAC4jH,WAAD,EAAcv/G,QAAd,EAAwB;AAC/B,SAAKu/G,WAAL,GAAmBA,WAAnB;AACA,SAAKv/G,QAAL,GAAgBA,QAAhB;AACA;AACR;AACA;;AACQ,SAAKw/G,eAAL,GAAuBt2G,OAAO,CAAClC,OAAR,EAAvB;AACH;AACD;AACJ;AACA;;;AACIy4G,EAAAA,YAAY,GAAG;AACX,WAAQ,qBAAoBT,aAAa,EAAG,EAA5C;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;;;AACIX,EAAAA,MAAM,CAACF,GAAD,EAAM;AACR;AACA;AACA,QAAIA,GAAG,CAACz1F,MAAJ,KAAe,OAAnB,EAA4B;AACxB,YAAM,IAAI3P,KAAJ,CAAUomG,sBAAV,CAAN;AACH,KAFD,MAGK,IAAIhB,GAAG,CAACvB,YAAJ,KAAqB,MAAzB,EAAiC;AAClC,YAAM,IAAI7jG,KAAJ,CAAUqmG,6BAAV,CAAN;AACH,KARO,CASR;;;AACA,WAAO,IAAIvgD,4CAAJ,CAAgBmC,QAAD,IAAc;AAChC;AACA;AACA;AACA,YAAMt6D,QAAQ,GAAG,KAAK+4G,YAAL,EAAjB;AACA,YAAM16F,GAAG,GAAGo5F,GAAG,CAACtB,aAAJ,CAAkBhxG,OAAlB,CAA0B,sBAA1B,EAAmD,IAAGnF,QAAS,IAA/D,CAAZ,CALgC,CAMhC;;AACA,YAAMuE,IAAI,GAAG,KAAKjL,QAAL,CAAciB,aAAd,CAA4B,QAA5B,CAAb;AACAgK,MAAAA,IAAI,CAACy0G,GAAL,GAAW36F,GAAX,CARgC,CAShC;AACA;AACA;;AACA,UAAInD,IAAI,GAAG,IAAX,CAZgC,CAahC;;AACA,UAAI+9F,QAAQ,GAAG,KAAf,CAdgC,CAehC;AACA;AACA;;AACA,WAAKJ,WAAL,CAAiB74G,QAAjB,IAA8Bid,IAAD,IAAU;AACnC;AACA,eAAO,KAAK47F,WAAL,CAAiB74G,QAAjB,CAAP,CAFmC,CAGnC;;AACAkb,QAAAA,IAAI,GAAG+B,IAAP;AACAg8F,QAAAA,QAAQ,GAAG,IAAX;AACH,OAND,CAlBgC,CAyBhC;AACA;AACA;;;AACA,YAAMC,OAAO,GAAG,MAAM;AAClB;AACA,YAAI30G,IAAI,CAAC6J,UAAT,EAAqB;AACjB7J,UAAAA,IAAI,CAAC6J,UAAL,CAAgByH,WAAhB,CAA4BtR,IAA5B;AACH,SAJiB,CAKlB;AACA;;;AACA,eAAO,KAAKs0G,WAAL,CAAiB74G,QAAjB,CAAP;AACH,OARD,CA5BgC,CAqChC;AACA;AACA;AACA;;;AACA,YAAMm5G,MAAM,GAAI1uF,KAAD,IAAW;AACtB;AACA;AACA;AACA,aAAKquF,eAAL,CAAqB93G,IAArB,CAA0B,MAAM;AAC5B;AACAk4G,UAAAA,OAAO,GAFqB,CAG5B;;AACA,cAAI,CAACD,QAAL,EAAe;AACX;AACA;AACA3+C,YAAAA,QAAQ,CAACpoD,KAAT,CAAe,IAAImlG,iBAAJ,CAAsB;AACjCh5F,cAAAA,GADiC;AAEjCy4F,cAAAA,MAAM,EAAE,CAFyB;AAGjCC,cAAAA,UAAU,EAAE,aAHqB;AAIjC7kG,cAAAA,KAAK,EAAE,IAAIG,KAAJ,CAAUmmG,qBAAV;AAJ0B,aAAtB,CAAf;AAMA;AACH,WAd2B,CAe5B;AACA;;;AACAl+C,UAAAA,QAAQ,CAAC5hE,IAAT,CAAc,IAAIy+G,YAAJ,CAAiB;AAC3Bj8F,YAAAA,IAD2B;AAE3B47F,YAAAA,MAAM,EAAE;AAAI;AAFe;AAG3BC,YAAAA,UAAU,EAAE,IAHe;AAI3B14F,YAAAA;AAJ2B,WAAjB,CAAd,EAjB4B,CAuB5B;;AACAi8C,UAAAA,QAAQ,CAACh5C,QAAT;AACH,SAzBD;AA0BH,OA9BD,CAzCgC,CAwEhC;AACA;AACA;;;AACA,YAAM83F,OAAO,GAAIlnG,KAAD,IAAW;AACvBgnG,QAAAA,OAAO,GADgB,CAEvB;;AACA5+C,QAAAA,QAAQ,CAACpoD,KAAT,CAAe,IAAImlG,iBAAJ,CAAsB;AACjCnlG,UAAAA,KADiC;AAEjC4kG,UAAAA,MAAM,EAAE,CAFyB;AAGjCC,UAAAA,UAAU,EAAE,aAHqB;AAIjC14F,UAAAA;AAJiC,SAAtB,CAAf;AAMH,OATD,CA3EgC,CAqFhC;AACA;;;AACA9Z,MAAAA,IAAI,CAACjK,gBAAL,CAAsB,MAAtB,EAA8B6+G,MAA9B;AACA50G,MAAAA,IAAI,CAACjK,gBAAL,CAAsB,OAAtB,EAA+B8+G,OAA/B;AACA,WAAK9/G,QAAL,CAAc4hB,IAAd,CAAmB9E,WAAnB,CAA+B7R,IAA/B,EAzFgC,CA0FhC;;AACA+1D,MAAAA,QAAQ,CAAC5hE,IAAT,CAAc;AAAE2X,QAAAA,IAAI,EAAEqmG,aAAa,CAAC2C;AAAtB,OAAd,EA3FgC,CA4FhC;;AACA,aAAO,MAAM;AACT,YAAI,CAACJ,QAAL,EAAe;AACX,eAAKK,eAAL,CAAqB/0G,IAArB;AACH,SAHQ,CAIT;;;AACA20G,QAAAA,OAAO;AACV,OAND;AAOH,KApGM,CAAP;AAqGH;;AACDI,EAAAA,eAAe,CAACC,MAAD,EAAS;AACpB;AACA;AACA;AACA,QAAI,CAAChB,eAAL,EAAsB;AAClBA,MAAAA,eAAe,GAAG,KAAKj/G,QAAL,CAAckgH,cAAd,CAA6BC,kBAA7B,EAAlB;AACH;;AACDlB,IAAAA,eAAe,CAACmB,SAAhB,CAA0BH,MAA1B;AACH;;AA7IoB;;AA+IzBX,kBAAkB,CAAC1qF,IAAnB;AAAA,mBAA+G0qF,kBAA/G,EArO6FlzF,sDAqO7F,CAAmJizF,oBAAnJ,GArO6FjzF,sDAqO7F,CAAoL3rB,qDAApL;AAAA;;AACA6+G,kBAAkB,CAACzqF,KAAnB,kBAtO6FzI,gEAsO7F;AAAA,SAAmHkzF,kBAAnH;AAAA,WAAmHA,kBAAnH;AAAA;;AACA;AAAA,qDAvO6FlzF,+DAuO7F,CAA2FkzF,kBAA3F,EAA2H,CAAC;AAChHvoG,IAAAA,IAAI,EAAEuV,qDAAUA;AADgG,GAAD,CAA3H,EAE4B,YAAY;AAChC,WAAO,CAAC;AAAEvV,MAAAA,IAAI,EAAEsoG;AAAR,KAAD,EAAiC;AAAEtoG,MAAAA,IAAI,EAAE9X,SAAR;AAAmBqmD,MAAAA,UAAU,EAAE,CAAC;AACxDvuC,QAAAA,IAAI,EAAE0oC,iDADkD;AAExD5uC,QAAAA,IAAI,EAAE,CAACpQ,qDAAD;AAFkD,OAAD;AAA/B,KAAjC,CAAP;AAIH,GAPL;AAAA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAM4/G,gBAAN,CAAuB;AACnB1kH,EAAAA,WAAW,CAAC4iH,KAAD,EAAQ;AACf,SAAKA,KAAL,GAAaA,KAAb;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;;;AACIM,EAAAA,SAAS,CAACV,GAAD,EAAM/+G,IAAN,EAAY;AACjB,QAAI++G,GAAG,CAACz1F,MAAJ,KAAe,OAAnB,EAA4B;AACxB,aAAO,KAAK61F,KAAL,CAAWF,MAAX,CAAkBF,GAAlB,CAAP;AACH,KAHgB,CAIjB;;;AACA,WAAO/+G,IAAI,CAACi/G,MAAL,CAAYF,GAAZ,CAAP;AACH;;AAjBkB;;AAmBvBkC,gBAAgB,CAACzrF,IAAjB;AAAA,mBAA6GyrF,gBAA7G,EA1Q6Fj0F,sDA0Q7F,CAA+IkzF,kBAA/I;AAAA;;AACAe,gBAAgB,CAACxrF,KAAjB,kBA3Q6FzI,gEA2Q7F;AAAA,SAAiHi0F,gBAAjH;AAAA,WAAiHA,gBAAjH;AAAA;;AACA;AAAA,qDA5Q6Fj0F,+DA4Q7F,CAA2Fi0F,gBAA3F,EAAyH,CAAC;AAC9GtpG,IAAAA,IAAI,EAAEuV,qDAAUA;AAD8F,GAAD,CAAzH,EAE4B,YAAY;AAAE,WAAO,CAAC;AAAEvV,MAAAA,IAAI,EAAEuoG;AAAR,KAAD,CAAP;AAAwC,GAFlF;AAAA;;AAIA,MAAMgB,WAAW,GAAG,cAApB;AACA;AACA;AACA;AACA;;AACA,SAASC,cAAT,CAAwBC,GAAxB,EAA6B;AACzB,MAAI,iBAAiBA,GAAjB,IAAwBA,GAAG,CAACC,WAAhC,EAA6C;AACzC,WAAOD,GAAG,CAACC,WAAX;AACH;;AACD,MAAI,mBAAmBj7G,IAAnB,CAAwBg7G,GAAG,CAACE,qBAAJ,EAAxB,CAAJ,EAA0D;AACtD,WAAOF,GAAG,CAACG,iBAAJ,CAAsB,eAAtB,CAAP;AACH;;AACD,SAAO,IAAP;AACH;AACD;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMC,cAAN,CAAqB;AACjBjlH,EAAAA,WAAW,CAACklH,UAAD,EAAa;AACpB,SAAKA,UAAL,GAAkBA,UAAlB;AACH;AACD;AACJ;AACA;AACA;AACA;;;AACIxC,EAAAA,MAAM,CAACF,GAAD,EAAM;AACR;AACA;AACA,QAAIA,GAAG,CAACz1F,MAAJ,KAAe,OAAnB,EAA4B;AACxB,YAAM,IAAI3P,KAAJ,CAAW,+EAAX,CAAN;AACH,KALO,CAMR;;;AACA,WAAO,IAAI8lD,4CAAJ,CAAgBmC,QAAD,IAAc;AAChC;AACA,YAAMw/C,GAAG,GAAG,KAAKK,UAAL,CAAgB/tG,KAAhB,EAAZ;AACA0tG,MAAAA,GAAG,CAAC9kC,IAAJ,CAASyiC,GAAG,CAACz1F,MAAb,EAAqBy1F,GAAG,CAACtB,aAAzB;;AACA,UAAI,CAAC,CAACsB,GAAG,CAACxB,eAAV,EAA2B;AACvB6D,QAAAA,GAAG,CAAC7D,eAAJ,GAAsB,IAAtB;AACH,OAN+B,CAOhC;;;AACAwB,MAAAA,GAAG,CAAChF,OAAJ,CAAYv7G,OAAZ,CAAoB,CAACgM,IAAD,EAAOkK,MAAP,KAAkB0sG,GAAG,CAACM,gBAAJ,CAAqBl3G,IAArB,EAA2BkK,MAAM,CAACpI,IAAP,CAAY,GAAZ,CAA3B,CAAtC,EARgC,CAShC;;AACA,UAAI,CAACyyG,GAAG,CAAChF,OAAJ,CAAY/9E,GAAZ,CAAgB,QAAhB,CAAL,EAAgC;AAC5BolF,QAAAA,GAAG,CAACM,gBAAJ,CAAqB,QAArB,EAA+B,mCAA/B;AACH,OAZ+B,CAahC;;;AACA,UAAI,CAAC3C,GAAG,CAAChF,OAAJ,CAAY/9E,GAAZ,CAAgB,cAAhB,CAAL,EAAsC;AAClC,cAAM2lF,YAAY,GAAG5C,GAAG,CAAClB,uBAAJ,EAArB,CADkC,CAElC;;AACA,YAAI8D,YAAY,KAAK,IAArB,EAA2B;AACvBP,UAAAA,GAAG,CAACM,gBAAJ,CAAqB,cAArB,EAAqCC,YAArC;AACH;AACJ,OApB+B,CAqBhC;;;AACA,UAAI5C,GAAG,CAACvB,YAAR,EAAsB;AAClB,cAAMA,YAAY,GAAGuB,GAAG,CAACvB,YAAJ,CAAiB5nG,WAAjB,EAArB,CADkB,CAElB;AACA;AACA;AACA;AACA;;AACAwrG,QAAAA,GAAG,CAAC5D,YAAJ,GAAqBA,YAAY,KAAK,MAAlB,GAA4BA,YAA5B,GAA2C,MAA/D;AACH,OA9B+B,CA+BhC;;;AACA,YAAMoE,OAAO,GAAG7C,GAAG,CAACnB,aAAJ,EAAhB,CAhCgC,CAiChC;AACA;AACA;AACA;AACA;AACA;;AACA,UAAIiE,cAAc,GAAG,IAArB,CAvCgC,CAwChC;AACA;;AACA,YAAMC,cAAc,GAAG,MAAM;AACzB,YAAID,cAAc,KAAK,IAAvB,EAA6B;AACzB,iBAAOA,cAAP;AACH;;AACD,cAAMxD,UAAU,GAAG+C,GAAG,CAAC/C,UAAJ,IAAkB,IAArC,CAJyB,CAKzB;;AACA,cAAMtE,OAAO,GAAG,IAAID,WAAJ,CAAgBsH,GAAG,CAACE,qBAAJ,EAAhB,CAAhB,CANyB,CAOzB;AACA;;AACA,cAAM37F,GAAG,GAAGw7F,cAAc,CAACC,GAAD,CAAd,IAAuBrC,GAAG,CAACp5F,GAAvC,CATyB,CAUzB;;AACAk8F,QAAAA,cAAc,GAAG,IAAItD,kBAAJ,CAAuB;AAAExE,UAAAA,OAAF;AAAWqE,UAAAA,MAAM,EAAEgD,GAAG,CAAChD,MAAvB;AAA+BC,UAAAA,UAA/B;AAA2C14F,UAAAA;AAA3C,SAAvB,CAAjB;AACA,eAAOk8F,cAAP;AACH,OAbD,CA1CgC,CAwDhC;AACA;AACA;;;AACA,YAAMpB,MAAM,GAAG,MAAM;AACjB;AACA,YAAI;AAAE1G,UAAAA,OAAF;AAAWqE,UAAAA,MAAX;AAAmBC,UAAAA,UAAnB;AAA+B14F,UAAAA;AAA/B,YAAuCm8F,cAAc,EAAzD,CAFiB,CAGjB;;AACA,YAAIt/F,IAAI,GAAG,IAAX;;AACA,YAAI47F,MAAM,KAAK;AAAI;AAAnB,UAAoC;AAChC;AACA57F,UAAAA,IAAI,GAAI,OAAO4+F,GAAG,CAAC3/C,QAAX,KAAwB,WAAzB,GAAwC2/C,GAAG,CAACW,YAA5C,GAA2DX,GAAG,CAAC3/C,QAAtE;AACH,SARgB,CASjB;;;AACA,YAAI28C,MAAM,KAAK,CAAf,EAAkB;AACdA,UAAAA,MAAM,GAAG,CAAC,CAAC57F,IAAF,GAAS;AAAI;AAAb,YAAwB,CAAjC;AACH,SAZgB,CAajB;AACA;AACA;AACA;;;AACA,YAAI87F,EAAE,GAAGF,MAAM,IAAI,GAAV,IAAiBA,MAAM,GAAG,GAAnC,CAjBiB,CAkBjB;AACA;;AACA,YAAIW,GAAG,CAACvB,YAAJ,KAAqB,MAArB,IAA+B,OAAOh7F,IAAP,KAAgB,QAAnD,EAA6D;AACzD;AACA,gBAAMw/F,YAAY,GAAGx/F,IAArB;AACAA,UAAAA,IAAI,GAAGA,IAAI,CAAC/V,OAAL,CAAay0G,WAAb,EAA0B,EAA1B,CAAP;;AACA,cAAI;AACA;AACA1+F,YAAAA,IAAI,GAAGA,IAAI,KAAK,EAAT,GAAcisF,IAAI,CAACluF,KAAL,CAAWiC,IAAX,CAAd,GAAiC,IAAxC;AACH,WAHD,CAIA,OAAOhJ,KAAP,EAAc;AACV;AACA;AACA;AACAgJ,YAAAA,IAAI,GAAGw/F,YAAP,CAJU,CAKV;AACA;;AACA,gBAAI1D,EAAJ,EAAQ;AACJ;AACAA,cAAAA,EAAE,GAAG,KAAL,CAFI,CAGJ;;AACA97F,cAAAA,IAAI,GAAG;AAAEhJ,gBAAAA,KAAF;AAASyH,gBAAAA,IAAI,EAAEuB;AAAf,eAAP;AACH;AACJ;AACJ;;AACD,YAAI87F,EAAJ,EAAQ;AACJ;AACA18C,UAAAA,QAAQ,CAAC5hE,IAAT,CAAc,IAAIy+G,YAAJ,CAAiB;AAC3Bj8F,YAAAA,IAD2B;AAE3Bu3F,YAAAA,OAF2B;AAG3BqE,YAAAA,MAH2B;AAI3BC,YAAAA,UAJ2B;AAK3B14F,YAAAA,GAAG,EAAEA,GAAG,IAAI9lB;AALe,WAAjB,CAAd,EAFI,CASJ;AACA;;AACA+hE,UAAAA,QAAQ,CAACh5C,QAAT;AACH,SAZD,MAaK;AACD;AACAg5C,UAAAA,QAAQ,CAACpoD,KAAT,CAAe,IAAImlG,iBAAJ,CAAsB;AACjC;AACAnlG,YAAAA,KAAK,EAAEgJ,IAF0B;AAGjCu3F,YAAAA,OAHiC;AAIjCqE,YAAAA,MAJiC;AAKjCC,YAAAA,UALiC;AAMjC14F,YAAAA,GAAG,EAAEA,GAAG,IAAI9lB;AANqB,WAAtB,CAAf;AAQH;AACJ,OAnED,CA3DgC,CA+HhC;AACA;AACA;;;AACA,YAAM6gH,OAAO,GAAIlnG,KAAD,IAAW;AACvB,cAAM;AAAEmM,UAAAA;AAAF,YAAUm8F,cAAc,EAA9B;AACA,cAAMzlB,GAAG,GAAG,IAAIsiB,iBAAJ,CAAsB;AAC9BnlG,UAAAA,KAD8B;AAE9B4kG,UAAAA,MAAM,EAAEgD,GAAG,CAAChD,MAAJ,IAAc,CAFQ;AAG9BC,UAAAA,UAAU,EAAE+C,GAAG,CAAC/C,UAAJ,IAAkB,eAHA;AAI9B14F,UAAAA,GAAG,EAAEA,GAAG,IAAI9lB;AAJkB,SAAtB,CAAZ;AAMA+hE,QAAAA,QAAQ,CAACpoD,KAAT,CAAe6iF,GAAf;AACH,OATD,CAlIgC,CA4IhC;AACA;AACA;AACA;;;AACA,UAAI4lB,WAAW,GAAG,KAAlB,CAhJgC,CAiJhC;AACA;;AACA,YAAMC,cAAc,GAAInwF,KAAD,IAAW;AAC9B;AACA,YAAI,CAACkwF,WAAL,EAAkB;AACdrgD,UAAAA,QAAQ,CAAC5hE,IAAT,CAAc8hH,cAAc,EAA5B;AACAG,UAAAA,WAAW,GAAG,IAAd;AACH,SAL6B,CAM9B;AACA;;;AACA,YAAIE,aAAa,GAAG;AAChBxqG,UAAAA,IAAI,EAAEqmG,aAAa,CAACoE,gBADJ;AAEhBn8G,UAAAA,MAAM,EAAE8rB,KAAK,CAAC9rB;AAFE,SAApB,CAR8B,CAY9B;;AACA,YAAI8rB,KAAK,CAACswF,gBAAV,EAA4B;AACxBF,UAAAA,aAAa,CAACG,KAAd,GAAsBvwF,KAAK,CAACuwF,KAA5B;AACH,SAf6B,CAgB9B;AACA;AACA;;;AACA,YAAIvD,GAAG,CAACvB,YAAJ,KAAqB,MAArB,IAA+B,CAAC,CAAC4D,GAAG,CAACW,YAAzC,EAAuD;AACnDI,UAAAA,aAAa,CAACI,WAAd,GAA4BnB,GAAG,CAACW,YAAhC;AACH,SArB6B,CAsB9B;;;AACAngD,QAAAA,QAAQ,CAAC5hE,IAAT,CAAcmiH,aAAd;AACH,OAxBD,CAnJgC,CA4KhC;AACA;;;AACA,YAAMK,YAAY,GAAIzwF,KAAD,IAAW;AAC5B;AACA;AACA,YAAI0wF,QAAQ,GAAG;AACX9qG,UAAAA,IAAI,EAAEqmG,aAAa,CAAC0E,cADT;AAEXz8G,UAAAA,MAAM,EAAE8rB,KAAK,CAAC9rB;AAFH,SAAf,CAH4B,CAO5B;AACA;;AACA,YAAI8rB,KAAK,CAACswF,gBAAV,EAA4B;AACxBI,UAAAA,QAAQ,CAACH,KAAT,GAAiBvwF,KAAK,CAACuwF,KAAvB;AACH,SAX2B,CAY5B;;;AACA1gD,QAAAA,QAAQ,CAAC5hE,IAAT,CAAcyiH,QAAd;AACH,OAdD,CA9KgC,CA6LhC;;;AACArB,MAAAA,GAAG,CAACx/G,gBAAJ,CAAqB,MAArB,EAA6B6+G,MAA7B;AACAW,MAAAA,GAAG,CAACx/G,gBAAJ,CAAqB,OAArB,EAA8B8+G,OAA9B;AACAU,MAAAA,GAAG,CAACx/G,gBAAJ,CAAqB,SAArB,EAAgC8+G,OAAhC;AACAU,MAAAA,GAAG,CAACx/G,gBAAJ,CAAqB,OAArB,EAA8B8+G,OAA9B,EAjMgC,CAkMhC;;AACA,UAAI3B,GAAG,CAACzB,cAAR,EAAwB;AACpB;AACA8D,QAAAA,GAAG,CAACx/G,gBAAJ,CAAqB,UAArB,EAAiCsgH,cAAjC,EAFoB,CAGpB;;AACA,YAAIN,OAAO,KAAK,IAAZ,IAAoBR,GAAG,CAACuB,MAA5B,EAAoC;AAChCvB,UAAAA,GAAG,CAACuB,MAAJ,CAAW/gH,gBAAX,CAA4B,UAA5B,EAAwC4gH,YAAxC;AACH;AACJ,OA1M+B,CA2MhC;;;AACApB,MAAAA,GAAG,CAACr4F,IAAJ,CAAS64F,OAAT;AACAhgD,MAAAA,QAAQ,CAAC5hE,IAAT,CAAc;AAAE2X,QAAAA,IAAI,EAAEqmG,aAAa,CAAC2C;AAAtB,OAAd,EA7MgC,CA8MhC;AACA;;AACA,aAAO,MAAM;AACT;AACAS,QAAAA,GAAG,CAACp7G,mBAAJ,CAAwB,OAAxB,EAAiC06G,OAAjC;AACAU,QAAAA,GAAG,CAACp7G,mBAAJ,CAAwB,OAAxB,EAAiC06G,OAAjC;AACAU,QAAAA,GAAG,CAACp7G,mBAAJ,CAAwB,MAAxB,EAAgCy6G,MAAhC;AACAW,QAAAA,GAAG,CAACp7G,mBAAJ,CAAwB,SAAxB,EAAmC06G,OAAnC;;AACA,YAAI3B,GAAG,CAACzB,cAAR,EAAwB;AACpB8D,UAAAA,GAAG,CAACp7G,mBAAJ,CAAwB,UAAxB,EAAoCk8G,cAApC;;AACA,cAAIN,OAAO,KAAK,IAAZ,IAAoBR,GAAG,CAACuB,MAA5B,EAAoC;AAChCvB,YAAAA,GAAG,CAACuB,MAAJ,CAAW38G,mBAAX,CAA+B,UAA/B,EAA2Cw8G,YAA3C;AACH;AACJ,SAXQ,CAYT;;;AACA,YAAIpB,GAAG,CAAC/6G,UAAJ,KAAmB+6G,GAAG,CAACwB,IAA3B,EAAiC;AAC7BxB,UAAAA,GAAG,CAACyB,KAAJ;AACH;AACJ,OAhBD;AAiBH,KAjOM,CAAP;AAkOH;;AAlPgB;;AAoPrBrB,cAAc,CAAChsF,IAAf;AAAA,mBAA2GgsF,cAA3G,EAzhB6Fx0F,sDAyhB7F,CAA2I8zB,uDAA3I;AAAA;;AACA0gE,cAAc,CAAC/rF,KAAf,kBA1hB6FzI,gEA0hB7F;AAAA,SAA+Gw0F,cAA/G;AAAA,WAA+GA,cAA/G;AAAA;;AACA;AAAA,qDA3hB6Fx0F,+DA2hB7F,CAA2Fw0F,cAA3F,EAAuH,CAAC;AAC5G7pG,IAAAA,IAAI,EAAEuV,qDAAUA;AAD4F,GAAD,CAAvH,EAE4B,YAAY;AAAE,WAAO,CAAC;AAAEvV,MAAAA,IAAI,EAAEmpC,uDAAai4D;AAArB,KAAD,CAAP;AAAmC,GAF7E;AAAA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAM+J,gBAAgB,GAAG,IAAIriE,yDAAJ,CAAmB,kBAAnB,CAAzB;AACA,MAAMsiE,gBAAgB,GAAG,IAAItiE,yDAAJ,CAAmB,kBAAnB,CAAzB;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMuiE,sBAAN,CAA6B;AAE7B;AACA;AACA;;;AACA,MAAMC,uBAAN,CAA8B;AAC1B1mH,EAAAA,WAAW,CAACo7D,GAAD,EAAMqmB,QAAN,EAAgB6tB,UAAhB,EAA4B;AACnC,SAAKl0C,GAAL,GAAWA,GAAX;AACA,SAAKqmB,QAAL,GAAgBA,QAAhB;AACA,SAAK6tB,UAAL,GAAkBA,UAAlB;AACA,SAAKqX,gBAAL,GAAwB,EAAxB;AACA,SAAKC,SAAL,GAAiB,IAAjB;AACA;AACR;AACA;;AACQ,SAAKC,UAAL,GAAkB,CAAlB;AACH;;AACDC,EAAAA,QAAQ,GAAG;AACP,QAAI,KAAKrlC,QAAL,KAAkB,QAAtB,EAAgC;AAC5B,aAAO,IAAP;AACH;;AACD,UAAMslC,YAAY,GAAG,KAAK3rD,GAAL,CAASg0C,MAAT,IAAmB,EAAxC;;AACA,QAAI2X,YAAY,KAAK,KAAKJ,gBAA1B,EAA4C;AACxC,WAAKE,UAAL;AACA,WAAKD,SAAL,GAAiB3J,qEAAiB,CAAC8J,YAAD,EAAe,KAAKzX,UAApB,CAAlC;AACA,WAAKqX,gBAAL,GAAwBI,YAAxB;AACH;;AACD,WAAO,KAAKH,SAAZ;AACH;;AAvByB;;AAyB9BF,uBAAuB,CAACztF,IAAxB;AAAA,mBAAoHytF,uBAApH,EA3kB6Fj2F,sDA2kB7F,CAA6J3rB,qDAA7J,GA3kB6F2rB,sDA2kB7F,CAAkL+xD,sDAAlL,GA3kB6F/xD,sDA2kB7F,CAA0M81F,gBAA1M;AAAA;;AACAG,uBAAuB,CAACxtF,KAAxB,kBA5kB6FzI,gEA4kB7F;AAAA,SAAwHi2F,uBAAxH;AAAA,WAAwHA,uBAAxH;AAAA;;AACA;AAAA,qDA7kB6Fj2F,+DA6kB7F,CAA2Fi2F,uBAA3F,EAAgI,CAAC;AACrHtrG,IAAAA,IAAI,EAAEuV,qDAAUA;AADqG,GAAD,CAAhI,EAE4B,YAAY;AAChC,WAAO,CAAC;AAAEvV,MAAAA,IAAI,EAAE9X,SAAR;AAAmBqmD,MAAAA,UAAU,EAAE,CAAC;AACxBvuC,QAAAA,IAAI,EAAE0oC,iDADkB;AAExB5uC,QAAAA,IAAI,EAAE,CAACpQ,qDAAD;AAFkB,OAAD;AAA/B,KAAD,EAGW;AAAEsW,MAAAA,IAAI,EAAE9X,SAAR;AAAmBqmD,MAAAA,UAAU,EAAE,CAAC;AAClCvuC,QAAAA,IAAI,EAAE0oC,iDAD4B;AAElC5uC,QAAAA,IAAI,EAAE,CAACstE,sDAAD;AAF4B,OAAD;AAA/B,KAHX,EAMW;AAAEpnE,MAAAA,IAAI,EAAE9X,SAAR;AAAmBqmD,MAAAA,UAAU,EAAE,CAAC;AAClCvuC,QAAAA,IAAI,EAAE0oC,iDAD4B;AAElC5uC,QAAAA,IAAI,EAAE,CAACqxG,gBAAD;AAF4B,OAAD;AAA/B,KANX,CAAP;AAUH,GAbL;AAAA;AAcA;AACA;AACA;;;AACA,MAAMS,mBAAN,CAA0B;AACtBhnH,EAAAA,WAAW,CAACinH,YAAD,EAAeC,UAAf,EAA2B;AAClC,SAAKD,YAAL,GAAoBA,YAApB;AACA,SAAKC,UAAL,GAAkBA,UAAlB;AACH;;AACDhE,EAAAA,SAAS,CAACV,GAAD,EAAM/+G,IAAN,EAAY;AACjB,UAAM0jH,KAAK,GAAG3E,GAAG,CAACp5F,GAAJ,CAAQ/P,WAAR,EAAd,CADiB,CAEjB;AACA;AACA;AACA;;AACA,QAAImpG,GAAG,CAACz1F,MAAJ,KAAe,KAAf,IAAwBy1F,GAAG,CAACz1F,MAAJ,KAAe,MAAvC,IAAiDo6F,KAAK,CAAC/rF,UAAN,CAAiB,SAAjB,CAAjD,IACA+rF,KAAK,CAAC/rF,UAAN,CAAiB,UAAjB,CADJ,EACkC;AAC9B,aAAO33B,IAAI,CAACi/G,MAAL,CAAYF,GAAZ,CAAP;AACH;;AACD,UAAMn+E,KAAK,GAAG,KAAK4iF,YAAL,CAAkBH,QAAlB,EAAd,CAViB,CAWjB;;AACA,QAAIziF,KAAK,KAAK,IAAV,IAAkB,CAACm+E,GAAG,CAAChF,OAAJ,CAAY/9E,GAAZ,CAAgB,KAAKynF,UAArB,CAAvB,EAAyD;AACrD1E,MAAAA,GAAG,GAAGA,GAAG,CAACzE,KAAJ,CAAU;AAAEP,QAAAA,OAAO,EAAEgF,GAAG,CAAChF,OAAJ,CAAYr0F,GAAZ,CAAgB,KAAK+9F,UAArB,EAAiC7iF,KAAjC;AAAX,OAAV,CAAN;AACH;;AACD,WAAO5gC,IAAI,CAACi/G,MAAL,CAAYF,GAAZ,CAAP;AACH;;AArBqB;;AAuB1BwE,mBAAmB,CAAC/tF,IAApB;AAAA,mBAAgH+tF,mBAAhH,EArnB6Fv2F,sDAqnB7F,CAAqJg2F,sBAArJ,GArnB6Fh2F,sDAqnB7F,CAAwL+1F,gBAAxL;AAAA;;AACAQ,mBAAmB,CAAC9tF,KAApB,kBAtnB6FzI,gEAsnB7F;AAAA,SAAoHu2F,mBAApH;AAAA,WAAoHA,mBAApH;AAAA;;AACA;AAAA,qDAvnB6Fv2F,+DAunB7F,CAA2Fu2F,mBAA3F,EAA4H,CAAC;AACjH5rG,IAAAA,IAAI,EAAEuV,qDAAUA;AADiG,GAAD,CAA5H,EAE4B,YAAY;AAChC,WAAO,CAAC;AAAEvV,MAAAA,IAAI,EAAEqrG;AAAR,KAAD,EAAmC;AAAErrG,MAAAA,IAAI,EAAE9X,SAAR;AAAmBqmD,MAAAA,UAAU,EAAE,CAAC;AAC1DvuC,QAAAA,IAAI,EAAE0oC,iDADoD;AAE1D5uC,QAAAA,IAAI,EAAE,CAACsxG,gBAAD;AAFoD,OAAD;AAA/B,KAAnC,CAAP;AAIH,GAPL;AAAA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMY,uBAAN,CAA8B;AAC1BpnH,EAAAA,WAAW,CAACqnH,OAAD,EAAUzhC,QAAV,EAAoB;AAC3B,SAAKyhC,OAAL,GAAeA,OAAf;AACA,SAAKzhC,QAAL,GAAgBA,QAAhB;AACA,SAAK0hC,KAAL,GAAa,IAAb;AACH;;AACD5E,EAAAA,MAAM,CAACF,GAAD,EAAM;AACR,QAAI,KAAK8E,KAAL,KAAe,IAAnB,EAAyB;AACrB,YAAMC,YAAY,GAAG,KAAK3hC,QAAL,CAAc9iE,GAAd,CAAkBqgG,iBAAlB,EAAqC,EAArC,CAArB;AACA,WAAKmE,KAAL,GAAaC,YAAY,CAACpZ,WAAb,CAAyB,CAAC1qG,IAAD,EAAOw/G,WAAP,KAAuB,IAAID,sBAAJ,CAA2Bv/G,IAA3B,EAAiCw/G,WAAjC,CAAhD,EAA+F,KAAKoE,OAApG,CAAb;AACH;;AACD,WAAO,KAAKC,KAAL,CAAW5E,MAAX,CAAkBF,GAAlB,CAAP;AACH;;AAZyB;;AAc9B4E,uBAAuB,CAACnuF,IAAxB;AAAA,mBAAoHmuF,uBAApH,EA9pB6F32F,sDA8pB7F,CAA6J6sF,WAA7J,GA9pB6F7sF,sDA8pB7F,CAAqLA,mDAArL;AAAA;;AACA22F,uBAAuB,CAACluF,KAAxB,kBA/pB6FzI,gEA+pB7F;AAAA,SAAwH22F,uBAAxH;AAAA,WAAwHA,uBAAxH;AAAA;;AACA;AAAA,qDAhqB6F32F,+DAgqB7F,CAA2F22F,uBAA3F,EAAgI,CAAC;AACrHhsG,IAAAA,IAAI,EAAEuV,qDAAUA;AADqG,GAAD,CAAhI,EAE4B,YAAY;AAAE,WAAO,CAAC;AAAEvV,MAAAA,IAAI,EAAEkiG;AAAR,KAAD,EAAwB;AAAEliG,MAAAA,IAAI,EAAEqV,mDAAWouD;AAAnB,KAAxB,CAAP;AAAwD,GAFlG;AAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAAS2oC,mBAAT,CAA6BH,OAA7B,EAAsCE,YAAY,GAAG,EAArD,EAAyD;AACrD,MAAI,CAACA,YAAL,EAAmB;AACf,WAAOF,OAAP;AACH;;AACD,SAAOE,YAAY,CAACpZ,WAAb,CAAyB,CAAC1qG,IAAD,EAAOw/G,WAAP,KAAuB,IAAID,sBAAJ,CAA2Bv/G,IAA3B,EAAiCw/G,WAAjC,CAAhD,EAA+FoE,OAA/F,CAAP;AACH;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASI,oBAAT,GAAgC;AAC5B,MAAI,OAAOrjH,MAAP,KAAkB,QAAtB,EAAgC;AAC5B,WAAOA,MAAP;AACH;;AACD,SAAO,EAAP;AACH;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMsjH,oBAAN,CAA2B;AACvB;AACJ;AACA;AACkB,SAAP/mE,OAAO,GAAG;AACb,WAAO;AACHgnE,MAAAA,QAAQ,EAAED,oBADP;AAEH5oD,MAAAA,SAAS,EAAE,CACP;AAAEF,QAAAA,OAAO,EAAEooD,mBAAX;AAAgC7yB,QAAAA,QAAQ,EAAEivB;AAA1C,OADO;AAFR,KAAP;AAMH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;;AACsB,SAAXwE,WAAW,CAAChtG,OAAO,GAAG,EAAX,EAAe;AAC7B,WAAO;AACH+sG,MAAAA,QAAQ,EAAED,oBADP;AAEH5oD,MAAAA,SAAS,EAAE,CACPlkD,OAAO,CAAC00F,UAAR,GAAqB;AAAE1wC,QAAAA,OAAO,EAAE2nD,gBAAX;AAA6BsB,QAAAA,QAAQ,EAAEjtG,OAAO,CAAC00F;AAA/C,OAArB,GAAmF,EAD5E,EAEP10F,OAAO,CAACssG,UAAR,GAAqB;AAAEtoD,QAAAA,OAAO,EAAE4nD,gBAAX;AAA6BqB,QAAAA,QAAQ,EAAEjtG,OAAO,CAACssG;AAA/C,OAArB,GAAmF,EAF5E;AAFR,KAAP;AAOH;;AA5BsB;;AA8B3BQ,oBAAoB,CAACzuF,IAArB;AAAA,mBAAiHyuF,oBAAjH;AAAA;;AACAA,oBAAoB,CAAClqD,IAArB,kBA1uB6F/sC,8DA0uB7F;AAAA,QAAkHi3F;AAAlH;AACAA,oBAAoB,CAACjqD,IAArB,kBA3uB6FhtC,8DA2uB7F;AAAA,aAAmJ,CAC3Iu2F,mBAD2I,EAE3I;AAAEpoD,IAAAA,OAAO,EAAEukD,iBAAX;AAA8BtkD,IAAAA,WAAW,EAAEmoD,mBAA3C;AAAgEjwF,IAAAA,KAAK,EAAE;AAAvE,GAF2I,EAG3I;AAAE6nC,IAAAA,OAAO,EAAE6nD,sBAAX;AAAmCtyB,IAAAA,QAAQ,EAAEuyB;AAA7C,GAH2I,EAI3I;AAAE9nD,IAAAA,OAAO,EAAE2nD,gBAAX;AAA6BsB,IAAAA,QAAQ,EAAE;AAAvC,GAJ2I,EAK3I;AAAEjpD,IAAAA,OAAO,EAAE4nD,gBAAX;AAA6BqB,IAAAA,QAAQ,EAAE;AAAvC,GAL2I;AAAnJ;;AAOA;AAAA,qDAlvB6Fp3F,+DAkvB7F,CAA2Fi3F,oBAA3F,EAA6H,CAAC;AAClHtsG,IAAAA,IAAI,EAAEkpC,mDAD4G;AAElHpvC,IAAAA,IAAI,EAAE,CAAC;AACC4pD,MAAAA,SAAS,EAAE,CACPkoD,mBADO,EAEP;AAAEpoD,QAAAA,OAAO,EAAEukD,iBAAX;AAA8BtkD,QAAAA,WAAW,EAAEmoD,mBAA3C;AAAgEjwF,QAAAA,KAAK,EAAE;AAAvE,OAFO,EAGP;AAAE6nC,QAAAA,OAAO,EAAE6nD,sBAAX;AAAmCtyB,QAAAA,QAAQ,EAAEuyB;AAA7C,OAHO,EAIP;AAAE9nD,QAAAA,OAAO,EAAE2nD,gBAAX;AAA6BsB,QAAAA,QAAQ,EAAE;AAAvC,OAJO,EAKP;AAAEjpD,QAAAA,OAAO,EAAE4nD,gBAAX;AAA6BqB,QAAAA,QAAQ,EAAE;AAAvC,OALO;AADZ,KAAD;AAF4G,GAAD,CAA7H;AAAA;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMC,gBAAN,CAAuB;;AAEvBA,gBAAgB,CAAC7uF,IAAjB;AAAA,mBAA6G6uF,gBAA7G;AAAA;;AACAA,gBAAgB,CAACtqD,IAAjB,kBA1wB6F/sC,8DA0wB7F;AAAA,QAA8Gq3F;AAA9G;AACAA,gBAAgB,CAACrqD,IAAjB,kBA3wB6FhtC,8DA2wB7F;AAAA,aAA2I,CACnI6xF,UADmI,EAEnI;AAAE1jD,IAAAA,OAAO,EAAEy+C,WAAX;AAAwBlpB,IAAAA,QAAQ,EAAEizB;AAAlC,GAFmI,EAGnInC,cAHmI,EAInI;AAAErmD,IAAAA,OAAO,EAAE0+C,WAAX;AAAwBz+C,IAAAA,WAAW,EAAEomD;AAArC,GAJmI,CAA3I;AAAA,YAKiB,CACLyC,oBAAoB,CAACE,WAArB,CAAiC;AAC7BtY,IAAAA,UAAU,EAAE,YADiB;AAE7B4X,IAAAA,UAAU,EAAE;AAFiB,GAAjC,CADK,CALjB;AAAA;;AAWA;AAAA,qDAtxB6Fz2F,+DAsxB7F,CAA2Fq3F,gBAA3F,EAAyH,CAAC;AAC9G1sG,IAAAA,IAAI,EAAEkpC,mDADwG;AAE9GpvC,IAAAA,IAAI,EAAE,CAAC;AACC;AACpB;AACA;AACoBwoD,MAAAA,OAAO,EAAE,CACLgqD,oBAAoB,CAACE,WAArB,CAAiC;AAC7BtY,QAAAA,UAAU,EAAE,YADiB;AAE7B4X,QAAAA,UAAU,EAAE;AAFiB,OAAjC,CADK,CAJV;;AAUC;AACpB;AACA;AACA;AACoBpoD,MAAAA,SAAS,EAAE,CACPwjD,UADO,EAEP;AAAE1jD,QAAAA,OAAO,EAAEy+C,WAAX;AAAwBlpB,QAAAA,QAAQ,EAAEizB;AAAlC,OAFO,EAGPnC,cAHO,EAIP;AAAErmD,QAAAA,OAAO,EAAE0+C,WAAX;AAAwBz+C,QAAAA,WAAW,EAAEomD;AAArC,OAJO;AAdZ,KAAD;AAFwG,GAAD,CAAzH;AAAA;AAwBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAM8C,qBAAN,CAA4B;;AAE5BA,qBAAqB,CAAC9uF,IAAtB;AAAA,mBAAkH8uF,qBAAlH;AAAA;;AACAA,qBAAqB,CAACvqD,IAAtB,kBA5zB6F/sC,8DA4zB7F;AAAA,QAAmHs3F;AAAnH;AACAA,qBAAqB,CAACtqD,IAAtB,kBA7zB6FhtC,8DA6zB7F;AAAA,aAAqJ,CAC7IkzF,kBAD6I,EAE7I;AAAE/kD,IAAAA,OAAO,EAAE8kD,oBAAX;AAAiCpiC,IAAAA,UAAU,EAAEmmC;AAA7C,GAF6I,EAG7I;AAAE7oD,IAAAA,OAAO,EAAEukD,iBAAX;AAA8BhvB,IAAAA,QAAQ,EAAEuwB,gBAAxC;AAA0D3tF,IAAAA,KAAK,EAAE;AAAjE,GAH6I;AAArJ;;AAKA;AAAA,qDAl0B6FtG,+DAk0B7F,CAA2Fs3F,qBAA3F,EAA8H,CAAC;AACnH3sG,IAAAA,IAAI,EAAEkpC,mDAD6G;AAEnHpvC,IAAAA,IAAI,EAAE,CAAC;AACC4pD,MAAAA,SAAS,EAAE,CACP6kD,kBADO,EAEP;AAAE/kD,QAAAA,OAAO,EAAE8kD,oBAAX;AAAiCpiC,QAAAA,UAAU,EAAEmmC;AAA7C,OAFO,EAGP;AAAE7oD,QAAAA,OAAO,EAAEukD,iBAAX;AAA8BhvB,QAAAA,QAAQ,EAAEuwB,gBAAxC;AAA0D3tF,QAAAA,KAAK,EAAE;AAAjE,OAHO;AADZ,KAAD;AAF6G,GAAD,CAA9H;AAAA;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMylF,UAAU,GAAGW,uDAAnB;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACjuEA;AACA;AACA;AACA;AACA;;AAE2E;AACpC;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,qBAAqB;AACvC;AACA;AACA,kBAAkB,WAAW;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,yCAAyC;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,eAAe;AAC1C,0BAA0B,SAAS,EAAE,8BAA8B;AACnE;AACA,0BAA0B,aAAa,iBAAiB,4BAA4B,GAAG,SAAS;AAChG;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,kBAAkB,IAAI,MAAM;AAC7E,sGAAsG,MAAM,EAAE,QAAQ;AACtH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yEAAyE,0BAA0B;AACnG;AACA,0DAA0D,wBAAwB;AAClF;AACA;AACA;AACA,kDAAkD,aAAa;AAC/D,6EAA6E,0BAA0B,OAAO,gBAAgB;AAC9H;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,IAAI;AAC5C,mDAAmD,UAAU,EAAE,YAAY,EAAE,QAAQ;AACrF;AACA;AACA;AACA;AACA;AACA;AACA,mFAAmF,gBAAgB;AACnG;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,QAAQ,UAAU,MAAM;AAC7E;AACA;AACA;AACA;AACA;AACA,8CAA8C,6BAA6B,UAAU,sBAAsB;AAC3G;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE,SAAS;AAC1E,0GAA0G,SAAS;AACnH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,+BAA+B;AAC5E,4CAA4C,8BAA8B;AAC1E;AACA,mDAAmD,yCAAyC;AAC5F,iDAAiD,uCAAuC;;AAExF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,kCAAkC;;AAEnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,cAAc;AAC3B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,0DAA0D;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,oDAAoD;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,iBAAiB;AAC3E;AACA;AACA,QAAQ,4CAA4C;AACpD;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,+BAA+B,IAAI,oCAAoC;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,+BAA+B,IAAI,qCAAqC;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,kDAAkD;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,8BAA8B;AAC3E,4CAA4C,8BAA8B;AAC1E,6CAA6C,+BAA+B;AAC5E,4CAA4C,8BAA8B;AAC1E,gDAAgD,8BAA8B;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,2CAA2C;;AAE1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,UAAU;AACtC;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,UAAU;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,iBAAiB;AACjD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,OAAO,2CAA2C,WAAW;AACzG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,OAAO,KAAK,OAAO,IAAI,MAAM;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,iBAAiB;AACjD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,qBAAqB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,+BAA+B;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,mBAAmB;AACjC;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,oCAAoC;AAC9E,kFAAkF;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,kDAAkD;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,gBAAgB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA,cAAc,gBAAgB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,gBAAgB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,mCAAmC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,gBAAgB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE,SAAS;AAC1E;AACA;AACA;AACA,gBAAgB,8FAA8F;AAC9G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mEAAmE,qBAAqB;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC;AACA,6BAA6B,SAAS;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,mCAAmC,YAAY,gCAAgC;AACxG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sFAAsF,0BAA0B;AAChH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,gBAAgB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA,QAAQ;AACR;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAwB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,cAAc;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,WAAW;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,WAAW;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE,WAAW;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE,0EAA0E;;AAElJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,iCAAiC,WAAW;AAC5C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,kCAAkC;AAC1C,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA,MAAM,mCAAmC;AACzC,MAAM;AACN;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiF,sBAAsB,8HAA8H;AACrO;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2EAA2E,sBAAsB,8DAA8D;AAC/J;AACA;AACA;AACA;AACA;AACA;AACA,2EAA2E,sBAAsB,4HAA4H;AAC7N;AACA;AACA;AACA;AACA;AACA;AACA,sFAAsF,6DAA6D;;AAEnJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,sCAAsC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,8CAA8C;;AAE/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,aAAa;AACjE,6BAA6B,cAAc,GAAG;AAC9C,uBAAuB;AACvB;AACA,8BAA8B,cAAc;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+EAA+E;AAC/E;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,kBAAkB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,cAAc;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,UAAU;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA,sEAAsE,GAAG;AACzE;AACA;AACA;AACA;AACA,gFAAgF,GAAG;AACnF;AACA;AACA;AACA;AACA,yFAAyF,GAAG,6BAA6B,GAAG;AAC5H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,mBAAmB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD;AACxD;AACA;AACA,iEAAiE;AACjE;AACA;AACA,uCAAuC,KAAK,sBAAsB,KAAK;AACvE,mBAAmB,KAAK,gBAAgB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,gBAAgB;AACpC;AACA;AACA,oBAAoB,gBAAgB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,mDAAmD;AAChG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gHAAgH,OAAO;AACvH;;AAEA,2DAA2D,OAAO;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,kBAAkB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,gBAAgB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,EAAE,kBAAkB;AACxC;AACA,cAAc,kBAAkB,EAAE,iCAAiC,GAAG,QAAQ,KAAK,+BAA+B;AAClH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,OAAO;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,gBAAgB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC,IAAI,EAAE;AACN,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,2CAA2C;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,KAAK,UAAU,YAAY;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,qBAAqB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,sBAAsB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,oBAAoB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,4BAA4B;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,OAAO;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D;AAC1D;AACA,gBAAgB;AAChB;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uIAAuI;AACvI;AACA;AACA;AACA;AACA;AACA,6DAA6D,KAAK;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,oBAAoB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yFAAyF,eAAe;AACxG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA,+EAA+E;AAC/E,KAAK;AACL;AACA,8CAA8C;AAC9C,KAAK;AACL,4BAA4B;AAC5B,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,0CAA0C;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,kCAAkC;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,mCAAmC;AAC7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,iCAAiC;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,yCAAyC;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD;AACzD,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,SAAS;AACxD;AACA;AACA;AACA;AACA,8EAA8E,eAAe;AAC7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE,SAAS;AAC7E;AACA;AACA;AACA;AACA,6EAA6E,cAAc;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,KAAK;AAChE,2BAA2B,cAAc;AACzC,qBAAqB,KAAK;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,KAAK;AACjE,2BAA2B,cAAc;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,uBAAuB;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,6BAA6B;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,6BAA6B;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,uBAAuB;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,6BAA6B;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,SAAS,aAAa,uEAAuE;AAChH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,gDAAgD;AAClE,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,KAAK;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gHAAgH,YAAY;AAC5H;AACA;AACA;AACA,sCAAsC,SAAS;AAC/C,yHAAyH,MAAM,KAAK,SAAS,qBAAqB,UAAU;AAC5K;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,mBAAmB;AACvC;AACA,uBAAuB,eAAe,EAAE,UAAU;AAClD,uBAAuB,4DAA4D,EAAE,UAAU;AAC/F;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,kDAAkD;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uFAAuF;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,qBAAqB;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA;AACA,oCAAoC,mBAAmB;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8EAA8E,gBAAgB;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,uBAAuB;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,kCAAkC;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,uBAAuB;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,qBAAqB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,qBAAqB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,sBAAsB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,iBAAiB;AACvD;AACA;AACA;AACA;AACA,wBAAwB,qBAAqB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE,yBAAyB;;AAE/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,gBAAgB;AAC/D,4CAA4C,eAAe,IAAI,mBAAmB;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE,MAAM,eAAe;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,iCAAiC;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,qCAAqC;AACnF;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,QAAQ;AACR,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,UAAU;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+DAA+D,UAAU;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,iBAAiB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,aAAa;AACzC,uBAAuB,qDAAqD;AAC5E;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,wBAAwB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,4CAA4C,6BAA6B;AACzE;AACA;AACA;AACA,0CAA0C,wBAAwB;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,uBAAuB,GAAG,uBAAuB,GAAG,uBAAuB,GAAG,uBAAuB,GAAG,uBAAuB,GAAG,uBAAuB,GAAG,uBAAuB,GAAG,uBAAuB;AAC3N;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,+BAA+B;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,2BAA2B;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,qBAAqB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,sBAAsB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD;AACrD;AACA,uDAAuD;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA;AACA;AACA;AACA,kCAAkC,MAAM,GAAG,yBAAyB;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,iBAAiB,wBAAwB,WAAW;AAC9G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,sBAAsB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,oBAAoB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,SAAS,wCAAwC,YAAY;AACjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,0BAA0B;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,0BAA0B;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,gBAAgB;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,qBAAqB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE,YAAY;AAChF,0EAA0E,qBAAqB;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,sBAAsB;AAC9C;AACA;AACA,oGAAoG,iBAAiB;AACrH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,yBAAyB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF,KAAK;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,qBAAqB;AAC1E,8CAA8C,uBAAuB;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,qBAAqB;AAC1E;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,qBAAqB;AAC1E,8CAA8C,uBAAuB;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,4BAA4B;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,oBAAoB,mCAAmC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,kBAAkB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,kBAAkB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sFAAsF;AACtF;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0EAA0E,iBAAiB;AAC3F;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,kBAAkB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,qCAAqC;AACrE,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uFAAuF;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wFAAwF,kBAAkB;AAC1G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mHAAmH,iBAAiB,KAAK,gBAAgB;AACzJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,UAAU;AAC9C;AACA;AACA;AACA,oCAAoC,MAAM;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,oBAAoB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,2CAA2C;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,oDAAoD;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,oCAAoC;AACjE;AACA;AACA;AACA;AACA,gHAAgH;AAChH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,sCAAsC;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,qBAAqB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,QAAQ;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,iBAAiB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,gBAAgB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,mBAAmB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,mBAAmB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,IAAI;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,IAAI,GAAG,IAAI;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,IAAI,GAAG,IAAI,GAAG,IAAI;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD;AACxD,4BAA4B,mBAAmB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,oDAAoD;AAC7G,4FAA4F,UAAU;AACtG;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,oDAAoD;AAC7G,sFAAsF,UAAU;AAChG;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA,2CAA2C,mDAAmD;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,eAAe;AAC3E,IAAI,gBAAgB,iBAAiB,gBAAgB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,MAAM,GAAG,6BAA6B;AACxE,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,wEAAwE;AAC9E,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,6BAA6B;AACpF,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,0BAA0B,kCAAkC,MAAM,GAAG,6BAA6B;AACpH,KAAK;AACL;AACA;AACA,qCAAqC,gBAAgB,0BAA0B;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6FAA6F,SAAS;AACtG;AACA;AACA;AACA;AACA,gDAAgD,gBAAgB;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,kBAAkB;AAC/E;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,QAAQ;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,qDAAqD;AAC5D,OAAO;AACP;AACA;AACA;AACA;AACA,2EAA2E,WAAW,EAAE,UAAU;AAClG;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,yBAAyB;AAChF;AACA;AACA;AACA;AACA;AACA,gCAAgC,0BAA0B;AAC1D;AACA;AACA;AACA,0CAA0C,0BAA0B;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,iBAAiB;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,sBAAsB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,uCAAuC;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,yBAAyB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,qBAAqB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,uCAAuC;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAwB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,UAAU;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,gCAAgC;AACpD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,cAAc;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,oBAAoB,KAAK;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,QAAQ;AACtC,iCAAiC,QAAQ;AACzC;AACA,qCAAqC,QAAQ;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C;AAC7C,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,iBAAiB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,cAAc,sBAAsB,mCAAmC;AACtH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,4BAA4B;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,IAAI;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD;AACxD,4BAA4B,mBAAmB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,eAAe;AACzC;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,cAAc,KAAK;AACtC,sCAAsC;AACtC;AACA,mBAAmB,cAAc,KAAK;AACtC,sCAAsC;AACtC;AACA,mBAAmB,cAAc,KAAK;AACtC,sCAAsC;AACtC;AACA,mBAAmB,cAAc,KAAK;AACtC,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,cAAc,KAAK;AACtC,sCAAsC;AACtC;AACA,mBAAmB,cAAc,KAAK;AACtC,sCAAsC;AACtC;AACA,mBAAmB,cAAc,KAAK;AACtC,sCAAsC;AACtC;AACA,mBAAmB,cAAc,KAAK;AACtC,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc,yBAAyB,cAAc;AAC5E;AACA;AACA;AACA;AACA,uBAAuB,cAAc,yBAAyB,cAAc;AAC5E;AACA;AACA;AACA,uBAAuB,cAAc,yBAAyB,cAAc;AAC5E;AACA;AACA;AACA,uBAAuB,cAAc,yBAAyB,cAAc;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,QAAQ;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,QAAQ;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,QAAQ;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,QAAQ;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB,kBAAkB;AAClB,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,OAAO;AAC3D;AACA,yBAAyB,UAAU;AACnC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,QAAQ;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,QAAQ;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,mDAAmD;AACvG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,kBAAkB;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,kBAAkB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,2BAA2B;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,WAAW;AAC7C;AACA;AACA,kCAAkC,WAAW;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,IAAI;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,IAAI;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,IAAI,GAAG,IAAI;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,IAAI,GAAG,IAAI,GAAG,IAAI;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,MAAM,QAAQ,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,MAAM,QAAQ,MAAM,QAAQ,IAAI;AACtD;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gBAAgB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ,IAAI;AACpE;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gBAAgB,gBAAgB;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ,IAAI;AAClF;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gBAAgB,gBAAgB,gBAAgB;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ;AAC9E,uBAAuB,IAAI;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,gBAAgB,gBAAgB,gBAAgB,gBAAgB;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ;AAC5F,uBAAuB,IAAI;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,gBAAgB,gBAAgB,gBAAgB,gBAAgB;AACtF,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ;AAC5F,uBAAuB,MAAM,QAAQ,IAAI;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,gBAAgB,gBAAgB,gBAAgB,gBAAgB;AACtF,SAAS,gBAAgB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ;AACxF,mBAAmB,MAAM,QAAQ,MAAM,QAAQ,MAAM,QAAQ,IAAI;AACjE;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,gBAAgB,gBAAgB,gBAAgB,gBAAgB;AACvF,UAAU,gBAAgB,gBAAgB,gBAAgB;AAC1D;AACA;AACA;AACA;AACA,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,IAAI;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,IAAI,GAAG,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,IAAI,GAAG,IAAI,GAAG,IAAI;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,cAAc;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uvBAAuvB,EAAE,GAAG,EAAE,QAAQ,GAAG,MAAM,EAAE,oBAAoB,2HAA2H;;AAEh6B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,OAAO;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,0CAA0C;AAC3C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,4CAA4C;AAC7C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,mCAAmC;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,QAAQ;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,0BAA0B;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,2BAA2B;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0IAA0I,OAAO;AACjJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oFAAoF,aAAa;AACjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+EAA+E,QAAQ;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4FAA4F,OAAO;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,0BAA0B;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sBAAsB;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAwB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,0BAA0B;AAC9C;AACA;AACA;AACA;AACA;AACA,4BAA4B,MAAM,eAAe,2CAA2C,GAAG,qBAAqB,EAAE;AACtH;AACA,mDAAmD,MAAM,GAAG;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,IAAI;AACrC;AACA;AACA;AACA,mDAAmD,eAAe;AAClE,iCAAiC,IAAI,8BAA8B,SAAS,KAAK,MAAM;AACvF;AACA,wCAAwC,IAAI;AAC5C;AACA,wCAAwC,IAAI;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sBAAsB;AACtD;AACA;AACA;AACA;AACA,qFAAqF;AACrF;AACA;AACA;AACA,mCAAmC,iBAAiB,IAAI,EAAE,uBAAuB;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,OAAO,kCAAkC,QAAQ;AAClF;AACA,iCAAiC,IAAI,8BAA8B,uBAAuB,MAAM,uBAAuB;AACvH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,QAAQ,8BAA8B,KAAK;AAC3E;AACA;AACA;AACA;AACA,gCAAgC,QAAQ,8BAA8B,KAAK;AAC3E;AACA;AACA;AACA,gCAAgC,QAAQ,+BAA+B,MAAM;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,wBAAwB;AAC5C;AACA;AACA;AACA,uCAAuC,eAAe;AACtD;AACA;AACA;AACA,0CAA0C,gBAAgB;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,uBAAuB,EAAE,YAAY;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,qBAAqB;AACzC;AACA;AACA;AACA;AACA,4BAA4B,kBAAkB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8EAA8E,QAAQ;AACtF;AACA,wJAAwJ,MAAM,GAAG,0BAA0B;AAC3L;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,GAAG;AACtB;AACA,8HAA8H,GAAG;AACjI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,mBAAmB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kGAAkG,QAAQ;AAC1G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C,qCAAqC;AACrC,oCAAoC;AACpC,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA,oBAAoB,sBAAsB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,oBAAoB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,OAAO,IAAI,WAAW,EAAE,OAAO;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA,uHAAuH,QAAQ;AAC/H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,iBAAiB,EAAE,OAAO;AACpE,iDAAiD,OAAO,aAAa,iBAAiB,EAAE,OAAO;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,mBAAmB;AACvC;AACA;AACA;AACA,wBAAwB,qBAAqB;AAC7C;AACA;AACA;AACA;AACA;AACA,sCAAsC,SAAS;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,sBAAsB,mBAAmB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,8CAA8C,KAAK;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,oBAAoB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,eAAe,aAAa,SAAS;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yFAAyF,eAAe;AACxG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B,qCAAqC,aAAa;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,6EAA6E,QAAQ;AACrF;AACA;AACA;AACA;AACA,4BAA4B,yBAAyB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,MAAM,EAAE,kBAAkB,EAAE,IAAI;AACrF,KAAK;AACL;AACA,uEAAuE;AACvE;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE,OAAO,YAAY,IAAI;AAC5F;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,MAAM,GAAG,MAAM;AACvB;AACA;AACA,SAAS,MAAM,GAAG,MAAM,SAAS,MAAM,GAAG,MAAM;AAChD;AACA;AACA;AACA,SAAS,MAAM,EAAE,MAAM,QAAQ,MAAM,EAAE,MAAM;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,iBAAiB,KAAK,eAAe;AACvD;AACA;AACA;AACA;AACA;AACA,QAAQ,MAAM,GAAG,MAAM;AACvB;AACA;AACA,SAAS,MAAM,GAAG,MAAM,SAAS,MAAM,GAAG,MAAM;AAChD;AACA;AACA;AACA,SAAS,MAAM,EAAE,MAAM,QAAQ,MAAM,EAAE,MAAM;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,iBAAiB,wBAAwB;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD;AACrD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,qBAAqB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,2BAA2B;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,sBAAsB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,qBAAqB;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,kBAAkB;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,6CAA6C;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,eAAe;AACtD;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,qDAAqD;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,GAAG;AAC7D;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,sCAAsC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,mBAAmB;AAC/C,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,uCAAuC;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,uCAAuC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,+CAA+C;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,kCAAkC;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,iBAAiB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,oCAAoC;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,uBAAuB;AAC/E;AACA;AACA,gFAAgF;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE;AACrE;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,IAAI,IAAI,iBAAiB,KAAK,qBAAqB;AAC9G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,wBAAwB;AAC5E;AACA;AACA,cAAc,wCAAwC;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,QAAQ;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,yBAAyB;AACzE,uEAAuE,KAAK,sBAAsB,UAAU;AAC5G;AACA;AACA;AACA;AACA;AACA,wCAAwC,+BAA+B;AACvE;AACA;AACA;AACA;AACA,8BAA8B,8BAA8B;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,+BAA+B;AACvE;AACA;AACA;AACA;AACA,8BAA8B,8BAA8B;AAC5D,8BAA8B,8BAA8B;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,+BAA+B;AACvE;AACA;AACA;AACA;AACA,8BAA8B,8BAA8B;AAC5D,8BAA8B,8BAA8B;AAC5D,8BAA8B,8BAA8B;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,+BAA+B;AACvE;AACA;AACA;AACA;AACA,8BAA8B,8BAA8B;AAC5D,8BAA8B,8BAA8B;AAC5D,8BAA8B,8BAA8B;AAC5D,8BAA8B,8BAA8B;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,+BAA+B;AACvE;AACA;AACA;AACA;AACA,gDAAgD,+BAA+B;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,yCAAO;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,oDAAoD;AAC3F,sCAAsC,8CAAY;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,mBAAmB,GAAG,sBAAsB,OAAO;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,IAAI;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,mBAAmB;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF,MAAM;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,0BAA0B;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA,wBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA;AACA,wBAAwB,iBAAiB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qHAAqH,gBAAgB;AACrI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,0BAA0B;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,0BAA0B;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,kCAAkC;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,2BAA2B;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,QAAQ;AACzD,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,8BAA8B;AACtE;AACA,qDAAqD,8DAA8D;AACnH,gFAAgF,gBAAgB;AAChG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,qDAAqD,8DAA8D;AACnH,gFAAgF,gBAAgB;AAChG;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,8DAA8D;AACnH;AACA,sEAAsE,gBAAgB;AACtF;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,gBAAgB,4BAA4B,qBAAqB;AAClH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,wBAAwB,4BAA4B,8BAA8B;AAC/H;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,yBAAyB;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,MAAM,EAAE,yBAAyB,OAAO,+BAA+B;AACnH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,yBAAyB,4CAA4C,YAAY,MAAM,WAAW;AACtI,8CAA8C,yBAAyB,kCAAkC,YAAY,MAAM,WAAW;AACtI,oFAAoF,yBAAyB,+BAA+B,YAAY,MAAM,WAAW;AACzK;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,yBAAyB;AAC9D;AACA;AACA;AACA;AACA;AACA,2BAA2B,yBAAyB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,UAAU,4BAA4B,qBAAqB;AAChH;AACA;AACA,gDAAgD,UAAU,4BAA4B,qBAAqB;AAC3G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,iBAAiB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,yCAAyC,mBAAmB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,yDAAyD;AAC9G;AACA,iDAAiD,UAAU;AAC3D;AACA,sDAAsD,qBAAqB;AAC3E;AACA;AACA,oDAAoD,mCAAmC;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE,UAAU;AAC/E,2DAA2D,wCAAwC,wYAAwY;AAC3e;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA,uEAAuE;AACvE,qDAAqD,mDAAmD;AACxG;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,kCAAkC,KAAK;AACvC,yCAAyC,mDAAmD;AAC5F;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,mDAAmD;AACxG,gFAAgF,UAAU;AAC1F;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,8DAA8D;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qFAAqF,MAAM;AAC3F,gCAAgC,wBAAwB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAwB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,6DAA6D;AAClH,gFAAgF,cAAc;AAC9F;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,qDAAqD,6DAA6D;AAClH;AACA,kEAAkE,cAAc;AAChF;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD;AACtD;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,sBAAsB,kDAAkD;AAC5H;AACA;AACA;AACA;AACA,2DAA2D,YAAY;AACvE;AACA;AACA;AACA;AACA,qEAAqE,qBAAqB;AAC1F;AACA;AACA;AACA;AACA,uEAAuE,qBAAqB;AAC5F;AACA;AACA;AACA;AACA,8EAA8E,kBAAkB;AAChG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,6BAA6B;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,0BAA0B;AACtC;AACA;AACA;AACA,oDAAoD,UAAU;AAC9D;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+EAA+E,iBAAiB;;AAEhG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,uBAAuB;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,0BAA0B;AACtD;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,kCAAkC;AACjF,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,yEAAyE;AACzE,iEAAiE,uFAAuF;AACxJ;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC,SAAS;AACT,kBAAkB;AAClB;AACA;AACA,qBAAqB;AACrB;AACA,qBAAqB,GAAG;AACxB,KAAK;AACL,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,6DAA6D;AACjE;AACA;AACA;AACA,aAAa,gBAAgB;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA,cAAc,cAAc,EAAE,cAAc,EAAE,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C;AAC7C,mDAAmD,uCAAuC;AAC1F;AACA;AACA;AACA,SAAS;AACT,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,YAAY;AACxB,YAAY,yBAAyB;AACrC,YAAY,YAAY;AACxB;AACA;AACA,kBAAkB,uCAAuC;AACzD,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yBAAyB;AACrC,YAAY,YAAY;AACxB;AACA;AACA,kBAAkB,iDAAiD;AACnE,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,eAAe;AAC3B,YAAY,yBAAyB;AACrC,YAAY,YAAY;AACxB;AACA;AACA;AACA;AACA;AACA,kBAAkB,+CAA+C;AACjE,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,mBAAmB;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,sBAAsB;AAClC,YAAY,yBAAyB;AACrC,YAAY,YAAY;AACxB;AACA;AACA,kBAAkB,+CAA+C;AACjE,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,6BAA6B;AACzC,YAAY,yBAAyB;AACrC,YAAY,YAAY;AACxB;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,gEAAgE;;AAEjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,uBAAuB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,0BAA0B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,gBAAgB,2BAA2B;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C,oDAAoD,6DAA6D;AACjH;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC,SAAS;AACT,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,0BAA0B;AACxE,qCAAqC,WAAW;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,mBAAmB;AAC9B,WAAW,MAAM;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,UAAU;AAChC,oDAAoD,QAAQ;AAC5D;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,+BAA+B;AACnE,UAAU;AACV,QAAQ;AACR;AACA;AACA;AACA;AACA,wCAAwC,cAAc;AACtD;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,oHAAoH;AACtI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,yBAAyB;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,yBAAyB;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,0BAA0B;AACxD;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,YAAY;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,IAAI;AACvB;AACA;AACA;AACA,uDAAuD;AACvD,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B;AAC1B,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,sBAAsB,WAAW;AAC9C;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,uBAAuB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,+BAA+B,sDAAsD;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD;AACrD,uDAAuD,+CAA+C;AACtG;AACA;AACA;AACA,SAAS,iBAAiB,UAAU,cAAc,IAAI;AACtD,CAAC;AACD;AACA,yBAAyB,mBAAmB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE;AACrE,+DAA+D,+DAA+D;AAC9H;AACA;AACA;AACA,SAAS,iBAAiB,YAAY;AACtC,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,sBAAsB;AAClC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,+CAA+C,8BAA8B;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,gFAAgF,iCAAiC;AACjH;AACA;AACA,oFAAoF,iCAAiC;AACrH;AACA;AACA,iBAAiB;AACjB,iDAAiD,0CAA0C;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,4CAA4C;AAC7F,6BAA6B,mCAAmC;AAChE;AACA;AACA;AACA;AACA;AACA,qDAAqD,kFAAkF;AACvI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,2CAA2C;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,eAAe;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD;AACrD,uDAAuD,+CAA+C;AACtG;AACA;AACA;AACA,SAAS,iBAAiB,UAAU,gBAAgB,IAAI;AACxD,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT,sCAAsC,4CAAU;AAChD;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,6BAA6B,4CAAU;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,YAAY,2CAAO,kCAAkC,qDAAK;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D;AAC3D,0DAA0D,yEAAyE;AACnI;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC,SAAS,iBAAiB,UAAU,cAAc,IAAI,gBAAgB,IAAI,oBAAoB,IAAI,kCAAkC,IAAI,6BAA6B,IAAI;AACzK,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,QAAQ;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,IAAI;AAC9C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E;AAC5E;AACA;AACA;AACA;AACA;AACA,qEAAqE;AACrE;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA,uCAAuC,MAAM;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,MAAM;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,cAAc;AAC9D,uDAAuD,QAAQ;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,mBAAmB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,uBAAuB;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,YAAY;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,2BAA2B;AACnD;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,8BAA8B;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,iBAAiB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,4BAA4B;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,iBAAiB;AAC7D;AACA;AACA;AACA;AACA;AACA,2CAA2C,iBAAiB;AAC5D;AACA;AACA;AACA;AACA;AACA,uCAAuC,iBAAiB;AACxD;AACA;AACA;AACA;AACA;AACA,0CAA0C,iBAAiB;AAC3D;AACA;AACA;AACA;AACA;AACA,iDAAiD,iBAAiB;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,sBAAsB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,qBAAqB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+DAA+D,iBAAiB;AAChF;AACA;AACA,+CAA+C,iBAAiB;AAChE;AACA;AACA;AACA,2CAA2C,iBAAiB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,4BAA4B;AAC1D;AACA,oCAAoC,4BAA4B;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,iBAAiB;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,6BAA6B;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,gBAAgB;AACvE;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,6BAA6B;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,iBAAiB;AACtD;AACA;AACA;AACA;AACA;AACA,6CAA6C,iBAAiB;AAC9D;AACA;AACA;AACA;AACA;AACA,yCAAyC,iBAAiB;AAC1D;AACA;AACA;AACA;AACA;AACA,2CAA2C,iBAAiB;AAC5D;AACA;AACA;AACA;AACA;AACA,0CAA0C,iBAAiB;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,eAAe;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,iBAAiB;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,iBAAiB;AAClE;AACA;AACA;AACA;AACA,6CAA6C,iBAAiB;AAC9D;AACA;AACA,+CAA+C,gBAAgB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,6BAA6B;AACvD,kBAAkB,uBAAuB;AACzC,QAAQ,uBAAuB;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,sBAAsB;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,SAAS,aAAa,kCAAkC;AACnH;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,oFAAoF;AACjI;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,6BAA6B;AACvD,kBAAkB,uBAAuB;AACzC,QAAQ,uBAAuB;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,sBAAsB;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,GAAG;AAC1D;AACA;AACA;AACA;AACA;AACA,6CAA6C,oFAAoF;;AAEjI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,2CAA2C;AACjD,MAAM,wCAAwC;AAC9C,MAAM,wCAAwC;AAC9C,MAAM,4BAA4B;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE;AACjE,0DAA0D,yBAAyB;AACnF,0DAA0D;AAC1D;AACA;AACA;AACA,SAAS,iBAAiB,UAAU,sBAAsB,IAAI;AAC9D,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,uEAAuE;AAChH,yEAAyE,eAAe;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,uEAAuE;AAChH,yEAAyE,eAAe;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,uEAAuE,eAAe;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,wEAAwE;AACjH,0EAA0E,eAAe;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,sEAAsE;AAC/G,wEAAwE,eAAe;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,sEAAsE;AAC/G,wEAAwE,eAAe;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,kEAAkE;AAC3G,oEAAoE,eAAe;AACnF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2EAA2E;AAC3E;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAE2nQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpj4B3nQ;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMiL,wBAAN,CAA+B;AAC3BpoH,EAAAA,WAAW,CAAC6vG,SAAD,EAAY78C,WAAZ,EAAyB;AAChC,SAAK68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AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAM6lE,YAAY,GAAG,oMAArB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMC,UAAN,CAAiB;AACb;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACc,SAAHtwC,GAAG,CAACA,GAAD,EAAM;AACZ,WAAOuwC,YAAY,CAACvwC,GAAD,CAAnB;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACc,SAAH53C,GAAG,CAACA,GAAD,EAAM;AACZ,WAAOooF,YAAY,CAACpoF,GAAD,CAAnB;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACmB,SAARqoF,QAAQ,CAACC,OAAD,EAAU;AACrB,WAAOC,iBAAiB,CAACD,OAAD,CAAxB;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACuB,SAAZE,YAAY,CAACF,OAAD,EAAU;AACzB,WAAOG,qBAAqB,CAACH,OAAD,CAA5B;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACgB,SAALI,KAAK,CAACJ,OAAD,EAAU;AAClB,WAAOK,cAAc,CAACL,OAAD,CAArB;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACoB,SAATM,SAAS,CAACA,SAAD,EAAY;AACxB,WAAOC,kBAAkB,CAACD,SAAD,CAAzB;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACoB,SAATE,SAAS,CAACA,SAAD,EAAY;AACxB,WAAOC,kBAAkB,CAACD,SAAD,CAAzB;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACkB,SAAPrgB,OAAO,CAACA,OAAD,EAAU;AACpB,WAAOugB,gBAAgB,CAACvgB,OAAD,CAAvB;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;;;AACwB,SAAbwgB,aAAa,CAACX,OAAD,EAAU;AAC1B,WAAOW,aAAa,CAACX,OAAD,CAApB;AACH;;AACa,SAAPY,OAAO,CAACC,UAAD,EAAa;AACvB,WAAOD,OAAO,CAACC,UAAD,CAAd;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACuB,SAAZC,YAAY,CAACD,UAAD,EAAa;AAC5B,WAAOC,YAAY,CAACD,UAAD,CAAnB;AACH;;AAlRY;AAoRjB;AACA;AACA;AACA;;;AACA,SAAShB,YAAT,CAAsBvwC,GAAtB,EAA2B;AACvB,SAAQ0wC,OAAD,IAAa;AAChB,QAAIT,iBAAiB,CAACS,OAAO,CAAC9oH,KAAT,CAAjB,IA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Aa7nG,KAAb,CAAmBjhB,KAAnB;AACP;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACI4sH,EAAAA,QAAQ,CAACC,SAAD,EAAY98G,IAAZ,EAAkB;AACtB,WAAO,KAAK+4G,OAAL,GAAe,KAAKA,OAAL,CAAa8D,QAAb,CAAsBC,SAAtB,EAAiC98G,IAAjC,CAAf,GAAwD,KAA/D;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACI+8G,EAAAA,QAAQ,CAACD,SAAD,EAAY98G,IAAZ,EAAkB;AACtB,WAAO,KAAK+4G,OAAL,GAAe,KAAKA,OAAL,CAAagE,QAAb,CAAsBD,SAAtB,EAAiC98G,IAAjC,CAAf,GAAwD,IAA/D;AACH;;AApQ0B;AAuQ/B;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMg9G,SAAN,SAAwBrB,wBAAxB,CAAiD;AAC7ChtH,EAAAA,WAAW,GAAG;AACV,UAAM,GAAGwB,SAAT;AACA;AACR;AACA;AACA;AACA;AACA;;AACQ,SAAK8sH,OAAL,GAAe,IAAf;AACA;AACR;AACA;AACA;;AACQ,SAAKrgH,IAAL,GAAY,IAAZ;AACA;AACR;AACA;AACA;;AACQ,SAAKsgH,aAAL,GAAqB,IAArB;AACH;;AApB4C;AAuBjD;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMC,gBAAN,SAA+BxB,wBAA/B,CAAwD;AACpD;AACJ;AACA;AACA;AACqB,MAAbyB,aAAa,GAAG;AAChB,WAAO,IAAP;AACH;AACD;AACJ;AACA;AACA;;;AACY,MAAJp9G,IAAI,GAAG;AACP,WAAO,IAAP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AZ,EAAuB73H,MAAvB,KAAkC,CAD/B,IACoC,WAAW63H,SAD/C,IAC4D,cAAcA,SADjF;AAEH;AACD;;;AACAtH,EAAAA,2BAA2B,CAACtnH,EAAD,EAAK;AAC5B,SAAKksH,mBAAL,GAA2BlsH,EAA3B;AACH;AACD;;;AACA6uH,EAAAA,kBAAkB,CAACjC,IAAD,EAAO;AACrB,QAAI1B,YAAY,CAAC0B,IAAD,CAAZ,IAAsBA,IAAI,CAACtE,QAAL,IAAiB,IAA3C,EAAiD;AAC7C,WAAKgE,SAAL,GAAiBM,IAAI,CAACtE,QAAtB;AACH;AACJ;AACD;AACJ;AACA;AACA;AACA;;;AACIgF,EAAAA,kBAAkB,CAACT,QAAD,EAAW;AACzB,UAAMiC,WAAW,GAAG,KAAKnK,OAAL,IAAgB,KAAKA,OAAL,CAAahB,KAAjD;AACA,WAAO,CAACkJ,QAAD,IAAa,CAAC,CAACiC,WAAf,IAA8B,CAAC,KAAKnK,OAAL,CAAa8J,iBAAb,EAAtC;AACH;;AAtvBiB;AAwvBtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMlD,WAAN,SAA0BS,eAA1B,CAA0C;AACtC;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACI31H,EAAAA,WAAW,CAACu4H,SAAS,GAAG,IAAb,EAAmB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,MAAM,CAACY,IAAP,CAAY,KAAK6yH,QAAjB,CAA1B,EAAsD;AAClD,UAAI,KAAKA,QAAL,CAAc6E,WAAd,EAA2BjuE,OAA/B,EAAwC;AACpC,eAAO,KAAP;AACH;AACJ;;AACD,WAAOrqD,MAAM,CAACY,IAAP,CAAY,KAAK6yH,QAAjB,EAA2B9zH,MAA3B,GAAoC,CAApC,IAAyC,KAAK6Z,QAArD;AACH;;AA9VmC;AAgWxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAM66G,SAAN,SAAwBO,eAAxB,CAAwC;AACpC;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACI31H,EAAAA,WAAW,CAACw0H,QAAD,EAAWI,eAAX,EAA4B7G,cAA5B,EAA4C;AACnD,UAAM4G,cAAc,CAACC,eAAD,CAApB,EAAuCG,mBAAmB,CAAChH,cAAD,EAAiB6G,eAAjB,CAA1D;AACA,SAAKJ,QAAL,GAAgBA,QAAhB;;AACA,SAAKyD,gBAAL;;AACA,SAAKO,kBAAL,CAAwB5D,eAAxB;;AACA,SAAKoE,cAAL;;AACA,SAAKtH,sBAAL,CAA4B;AACxB8E,MAAAA,QAAQ,EAAE,IADc;AAExB;AACA;AACA;AACA;AACAO,MAAAA,SAAS,EAAE,CAAC,CAAC,KAAKhJ;AANM,KAA5B;AAQH;AACD;AACJ;AACA;AACA;AACA;;;AACI2G,EAAAA,EAAE,CAACtnH,KAAD,EAAQ;AACN,WAAO,KAAKonH,QAAL,CAAcpnH,KAAd,CAAP;AACH;AACD;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAC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,QAAAA,IAAI,EAAE,CAAC20G,aAAD;AAFP,OAJkC;AAA/B,KAJX,EAWW;AAAEzuG,MAAAA,IAAI,EAAE9X,SAAR;AAAmBqmD,MAAAA,UAAU,EAAE,CAAC;AAClCvuC,QAAAA,IAAI,EAAE+oC,mDAAQA;AADoB,OAAD,EAElC;AACC/oC,QAAAA,IAAI,EAAE8sG,+CAAIA;AADX,OAFkC,EAIlC;AACC9sG,QAAAA,IAAI,EAAE0oC,iDADP;AAEC5uC,QAAAA,IAAI,EAAE,CAAC40G,mBAAD;AAFP,OAJkC;AAA/B,KAXX,CAAP;AAmBH,GAvBL,EAuBuB;AAAE77G,IAAAA,IAAI,EAAE,CAAC;AAChBmN,MAAAA,IAAI,EAAE6oC,gDADU;AAEhB/uC,MAAAA,IAAI,EAAE,CAAC,cAAD;AAFU,KAAD;AAAR,GAvBvB;AAAA;AA4BA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMomH,oBAAoB,GAAG;AACzB18D,EAAAA,OAAO,EAAEyvD,SADgB;AAEzBxvD,EAAAA,WAAW,EAAE8pB,yDAAU,CAAC,MAAM4yC,OAAP;AAFE,CAA7B;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAM1X,eAAe,GAAG,CAAC,MAAMt2G,OAAO,CAAClC,OAAR,CAAgB,IAAhB,CAAP,GAAxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA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oB;AAAE95I,MAAAA,IAAI,EAAEwyK;AAAR,KAApB,EAA6C;AAAExyK,MAAAA,IAAI,EAAE4+K;AAAR,KAA7C,EAA+E;AAAE5+K,MAAAA,IAAI,EAAEwtH,sDAAW9pD;AAAnB,KAA/E,EAAsG;AAAE1jE,MAAAA,IAAI,EAAEqV,mDAAWouD;AAAnB,KAAtG,EAA6H;AAAEzjE,MAAAA,IAAI,EAAEqV,mDAAW+2J;AAAnB,KAA7H,EAAoJ;AAAEpsK,MAAAA,IAAI,EAAE9X;AAAR,KAApJ,CAAP;AAAkL,GAF5N;AAAA;;AAGA,SAASqpM,gBAAT,CAA0BhZ,QAA1B,EAAoC;AAChC,OAAK,IAAIlzL,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGkzL,QAAQ,CAACjzL,MAA7B,EAAqCD,CAAC,EAAtC,EAA0C;AACtC,UAAM20L,GAAG,GAAGzB,QAAQ,CAAClzL,CAAD,CAApB;;AACA,QAAI20L,GAAG,IAAI,IAAX,EAAiB;AACb,YAAM,IAAIh4K,KAAJ,CAAW,+BAA8Bg4K,GAAI,qBAAoB30L,CAAE,EAAnE,CAAN;AACH;AACJ;AACJ;;AACD,SAASypM,4BAAT,CAAsCzoM,MAAtC,EAA8C;AAC1C,SAAOA,MAAM,KAAK,YAAlB;AACH;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAM+rM,UAAN,CAAiB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","sources":["en-US-POSIX.js","./node_modules/@fortawesome/fontawesome-svg-core/index.es.js","./node_modules/@fortawesome/pro-light-svg-icons/index.es.js","./node_modules/@fortawesome/pro-solid-svg-icons/index.es.js","./node_modules/@microsoft/signalr/dist/esm/AbortController.js","./node_modules/@microsoft/signalr/dist/esm/DefaultHttpClient.js","./node_modules/@microsoft/signalr/dist/esm/DefaultReconnectPolicy.js","./node_modules/@microsoft/signalr/dist/esm/Errors.js","./node_modules/@microsoft/signalr/dist/esm/FetchHttpClient.js","./node_modules/@microsoft/signalr/dist/esm/HandshakeProtocol.js","./node_modules/@microsoft/signalr/dist/esm/HttpClient.js","./node_modules/@microsoft/signalr/dist/esm/HttpConnection.js","./node_modules/@microsoft/signalr/dist/esm/HubConnection.js","./node_modules/@microsoft/signalr/dist/esm/HubConnectionBuilder.js","./node_modules/@microsoft/signalr/dist/esm/IHubProtocol.js","./node_modules/@microsoft/signalr/dist/esm/ILogger.js","./node_modules/@microsoft/signalr/dist/esm/ITransport.js","./node_modules/@microsoft/signalr/dist/esm/JsonHubProtocol.js","./node_modules/@microsoft/signalr/dist/esm/Loggers.js","./node_modules/@microsoft/signalr/dist/esm/LongPollingTransport.js","./node_modules/@microsoft/signalr/dist/esm/ServerSentEventsTransport.js","./node_modules/@microsoft/signalr/dist/esm/Subject.js","./node_modules/@microsoft/signalr/dist/esm/TextMessageFormat.js","./node_modules/@microsoft/signalr/dist/esm/Utils.js","./node_modules/@microsoft/signalr/dist/esm/WebSocketTransport.js","./node_modules/@microsoft/signalr/dist/esm/XhrHttpClient.js","./node_modules/@microsoft/signalr/dist/esm/index.js","./node_modules/moment/locale/af.js","./node_modules/moment/locale/ar-dz.js","./node_modules/moment/locale/ar-kw.js","./node_modules/moment/locale/ar-ly.js","./node_modules/moment/locale/ar-ma.js","./node_modules/moment/locale/ar-sa.js","./node_modules/moment/locale/ar-tn.js","./node_modules/moment/locale/ar.js","./node_modules/moment/locale/az.js","./node_modules/moment/locale/be.js","./node_modules/moment/locale/bg.js","./node_modules/moment/locale/bm.js","./node_modules/moment/locale/bn-bd.js","./node_modules/moment/locale/bn.js","./node_modules/moment/locale/bo.js","./node_modules/moment/locale/br.js","./node_modules/moment/locale/bs.js","./node_modules/moment/locale/ca.js","./node_modules/moment/locale/cs.js","./node_modules/moment/locale/cv.js","./node_modules/moment/locale/cy.js","./node_modules/moment/locale/da.js","./node_modules/moment/locale/de-at.js","./node_modules/moment/locale/de-ch.js","./node_modules/moment/locale/de.js","./node_modules/moment/locale/dv.js","./node_modules/moment/locale/el.js","./node_modules/moment/locale/en-au.js","./node_modules/moment/locale/en-ca.js","./node_modules/moment/locale/en-gb.js","./node_modules/moment/locale/en-ie.js","./node_modules/moment/locale/en-il.js","./node_modules/moment/locale/en-in.js","./node_modules/moment/locale/en-nz.js","./node_modules/moment/locale/en-sg.js","./node_modules/moment/locale/eo.js","./node_modules/moment/locale/es-do.js","./node_modules/moment/locale/es-mx.js","./node_modules/moment/locale/es-us.js","./node_modules/moment/locale/es.js","./node_modules/moment/locale/et.js","./node_modules/moment/locale/eu.js","./node_modules/moment/locale/fa.js","./node_modules/moment/locale/fi.js","./node_modules/moment/locale/fil.js","./node_modules/moment/locale/fo.js","./node_modules/moment/locale/fr-ca.js","./node_modules/moment/locale/fr-ch.js","./node_modules/moment/locale/fr.js","./node_modules/moment/locale/fy.js","./node_modules/moment/locale/ga.js","./node_modules/moment/locale/gd.js","./node_modules/moment/locale/gl.js","./node_modules/moment/locale/gom-deva.js","./node_modules/moment/locale/gom-latn.js","./node_modules/moment/locale/gu.js","./node_modules/moment/locale/he.js","./node_modules/moment/locale/hi.js","./node_modules/moment/locale/hr.js","./node_modules/moment/locale/hu.js","./node_modules/moment/locale/hy-am.js","./node_modules/moment/locale/id.js","./node_modules/moment/locale/is.js","./node_modules/moment/locale/it-ch.js","./node_modules/moment/locale/it.js","./node_modules/moment/locale/ja.js","./node_modules/moment/locale/jv.js","./node_modules/moment/locale/ka.js","./node_modules/moment/locale/kk.js","./node_modules/moment/locale/km.js","./node_modules/moment/locale/kn.js","./node_modules/moment/locale/ko.js","./node_modules/moment/locale/ku.js","./node_modules/moment/locale/ky.js","./node_modules/moment/locale/lb.js","./node_modules/moment/locale/lo.js","./node_modules/moment/locale/lt.js","./node_modules/moment/locale/lv.js","./node_modules/moment/locale/me.js","./node_modules/moment/locale/mi.js","./node_modules/moment/locale/mk.js","./node_modules/moment/locale/ml.js","./node_modules/moment/locale/mn.js","./node_modules/moment/locale/mr.js","./node_modules/moment/locale/ms-my.js","./node_modules/moment/locale/ms.js","./node_modules/moment/locale/mt.js","./node_modules/moment/locale/my.js","./node_modules/moment/locale/nb.js","./node_modules/moment/locale/ne.js","./node_modules/moment/locale/nl-be.js","./node_modules/moment/locale/nl.js","./node_modules/moment/locale/nn.js","./node_modules/moment/locale/oc-lnc.js","./node_modules/moment/locale/pa-in.js","./node_modules/moment/locale/pl.js","./node_modules/moment/locale/pt-br.js","./node_modules/moment/locale/pt.js","./node_modules/moment/locale/ro.js","./node_modules/moment/locale/ru.js","./node_modules/moment/locale/sd.js","./node_modules/moment/locale/se.js","./node_modules/moment/locale/si.js","./node_modules/moment/locale/sk.js","./node_modules/moment/locale/sl.js","./node_modules/moment/locale/sq.js","./node_modules/moment/locale/sr-cyrl.js","./node_modules/moment/locale/sr.js","./node_modules/moment/locale/ss.js","./node_modules/moment/locale/sv.js","./node_modules/moment/locale/sw.js","./node_modules/moment/locale/ta.js","./node_modules/moment/locale/te.js","./node_modules/moment/locale/tet.js","./node_modules/moment/locale/tg.js","./node_modules/moment/locale/th.js","./node_modules/moment/locale/tk.js","./node_modules/moment/locale/tl-ph.js","./node_modules/moment/locale/tlh.js","./node_modules/moment/locale/tr.js","./node_modules/moment/locale/tzl.js","./node_modules/moment/locale/tzm-latn.js","./node_modules/moment/locale/tzm.js","./node_modules/moment/locale/ug-cn.js","./node_modules/moment/locale/uk.js","./node_modules/moment/locale/ur.js","./node_modules/moment/locale/uz-latn.js","./node_modules/moment/locale/uz.js","./node_modules/moment/locale/vi.js","./node_modules/moment/locale/x-pseudo.js","./node_modules/moment/locale/yo.js","./node_modules/moment/locale/zh-cn.js","./node_modules/moment/locale/zh-hk.js","./node_modules/moment/locale/zh-mo.js","./node_modules/moment/locale/zh-tw.js","./node_modules/moment/moment.js","./node_modules/rxjs/_esm2015/internal/BehaviorSubject.js","./node_modules/rxjs/_esm2015/internal/InnerSubscriber.js","./node_modules/rxjs/_esm2015/internal/Notification.js","./node_modules/rxjs/_esm2015/internal/Observable.js","./node_modules/rxjs/_esm2015/internal/Observer.js","./node_modules/rxjs/_esm2015/internal/OuterSubscriber.js","./node_modules/rxjs/_esm2015/internal/ReplaySubject.js","./node_modules/rxjs/_esm2015/internal/Scheduler.js","./node_modules/rxjs/_esm2015/internal/Subject.js","./node_modules/rxjs/_esm2015/internal/SubjectSubscription.js","./node_modules/rxjs/_esm2015/internal/Subscriber.js","./node_modules/rxjs/_esm2015/internal/Subscription.js","./node_modules/rxjs/_esm2015/internal/config.js","./node_modules/rxjs/_esm2015/internal/innerSubscribe.js","./node_modules/rxjs/_esm2015/internal/observable/ConnectableObservable.js","./node_modules/rxjs/_esm2015/internal/observable/combineLatest.js","./node_modules/rxjs/_esm2015/internal/observable/concat.js","./node_modules/rxjs/_esm2015/internal/observable/defer.js","./node_modules/rxjs/_esm2015/internal/observable/empty.js","./node_modules/rxjs/_esm2015/internal/observable/forkJoin.js","./node_modules/rxjs/_esm2015/internal/observable/from.js","./node_modules/rxjs/_esm2015/internal/observable/fromArray.js","./node_modules/rxjs/_esm2015/internal/observable/fromEvent.js","./node_modules/rxjs/_esm2015/internal/observable/merge.js","./node_modules/rxjs/_esm2015/internal/observable/of.js","./node_modules/rxjs/_esm2015/internal/observable/throwError.js","./node_modules/rxjs/_esm2015/internal/observable/timer.js","./node_modules/rxjs/_esm2015/internal/operators/audit.js","./node_modules/rxjs/_esm2015/internal/operators/auditTime.js","./node_modules/rxjs/_esm2015/internal/operators/catchError.js","./node_modules/rxjs/_esm2015/internal/operators/concatAll.js","./node_modules/rxjs/_esm2015/internal/operators/concatMap.js","./node_modules/rxjs/_esm2015/internal/operators/debounceTime.js","./node_modules/rxjs/_esm2015/internal/operators/defaultIfEmpty.js","./node_modules/rxjs/_esm2015/internal/operators/distinctUntilChanged.js","./node_modules/rxjs/_esm2015/internal/operators/filter.js","./node_modules/rxjs/_esm2015/internal/operators/finalize.js","./node_modules/rxjs/_esm2015/internal/operators/first.js","./node_modules/rxjs/_esm2015/internal/operators/last.js","./node_modules/rxjs/_esm2015/internal/operators/map.js","./node_modules/rxjs/_esm2015/internal/operators/mergeAll.js","./node_modules/rxjs/_esm2015/internal/operators/mergeMap.js","./node_modules/rxjs/_esm2015/internal/operators/multicast.js","./node_modules/rxjs/_esm2015/internal/operators/observeOn.js","./node_modules/rxjs/_esm2015/internal/operators/pairwise.js","./node_modules/rxjs/_esm2015/internal/operators/refCount.js","./node_modules/rxjs/_esm2015/internal/operators/scan.js","./node_modules/rxjs/_esm2015/internal/operators/share.js","./node_modules/rxjs/_esm2015/internal/operators/shareReplay.js","./node_modules/rxjs/_esm2015/internal/operators/skip.js","./node_modules/rxjs/_esm2015/internal/operators/startWith.js","./node_modules/rxjs/_esm2015/internal/operators/switchMap.js","./node_modules/rxjs/_esm2015/internal/operators/take.js","./node_modules/rxjs/_esm2015/internal/operators/takeLast.js","./node_modules/rxjs/_esm2015/internal/operators/takeUntil.js","./node_modules/rxjs/_esm2015/internal/operators/takeWhile.js","./node_modules/rxjs/_esm2015/internal/operators/tap.js","./node_modules/rxjs/_esm2015/internal/operators/throwIfEmpty.js","./node_modules/rxjs/_esm2015/internal/scheduled/scheduleArray.js","./node_modules/rxjs/_esm2015/internal/scheduled/scheduleIterable.js","./node_modules/rxjs/_esm2015/internal/scheduled/scheduleObservable.js","./node_modules/rxjs/_esm2015/internal/scheduled/schedulePromise.js","./node_modules/rxjs/_esm2015/internal/scheduled/scheduled.js","./node_modules/rxjs/_esm2015/internal/scheduler/Action.js","./node_modules/rxjs/_esm2015/internal/scheduler/AnimationFrameAction.js","./node_modules/rxjs/_esm2015/internal/scheduler/AnimationFrameScheduler.js","./node_modules/rxjs/_esm2015/internal/scheduler/AsapAction.js","./node_modules/rxjs/_esm2015/internal/scheduler/AsapScheduler.js","./node_modules/rxjs/_esm2015/internal/scheduler/AsyncAction.js","./node_modules/rxjs/_esm2015/internal/scheduler/AsyncScheduler.js","./node_modules/rxjs/_esm2015/internal/scheduler/QueueAction.js","./node_modules/rxjs/_esm2015/internal/scheduler/QueueScheduler.js","./node_modules/rxjs/_esm2015/internal/scheduler/animationFrame.js","./node_modules/rxjs/_esm2015/internal/scheduler/asap.js","./node_modules/rxjs/_esm2015/internal/scheduler/async.js","./node_modules/rxjs/_esm2015/internal/scheduler/queue.js","./node_modules/rxjs/_esm2015/internal/symbol/iterator.js","./node_modules/rxjs/_esm2015/internal/symbol/observable.js","./node_modules/rxjs/_esm2015/internal/symbol/rxSubscriber.js","./node_modules/rxjs/_esm2015/internal/util/ArgumentOutOfRangeError.js","./node_modules/rxjs/_esm2015/internal/util/EmptyError.js","./node_modules/rxjs/_esm2015/internal/util/Immediate.js","./node_modules/rxjs/_esm2015/internal/util/ObjectUnsubscribedError.js","./node_modules/rxjs/_esm2015/internal/util/UnsubscriptionError.js","./node_modules/rxjs/_esm2015/internal/util/canReportError.js","./node_modules/rxjs/_esm2015/internal/util/hostReportError.js","./node_modules/rxjs/_esm2015/internal/util/identity.js","./node_modules/rxjs/_esm2015/internal/util/isArray.js","./node_modules/rxjs/_esm2015/internal/util/isArrayLike.js","./node_modules/rxjs/_esm2015/internal/util/isFunction.js","./node_modules/rxjs/_esm2015/internal/util/isInteropObservable.js","./node_modules/rxjs/_esm2015/internal/util/isIterable.js","./node_modules/rxjs/_esm2015/internal/util/isNumeric.js","./node_modules/rxjs/_esm2015/internal/util/isObject.js","./node_modules/rxjs/_esm2015/internal/util/isObservable.js","./node_modules/rxjs/_esm2015/internal/util/isPromise.js","./node_modules/rxjs/_esm2015/internal/util/isScheduler.js","./node_modules/rxjs/_esm2015/internal/util/noop.js","./node_modules/rxjs/_esm2015/internal/util/pipe.js","./node_modules/rxjs/_esm2015/internal/util/subscribeTo.js","./node_modules/rxjs/_esm2015/internal/util/subscribeToArray.js","./node_modules/rxjs/_esm2015/internal/util/subscribeToIterable.js","./node_modules/rxjs/_esm2015/internal/util/subscribeToObservable.js","./node_modules/rxjs/_esm2015/internal/util/subscribeToPromise.js","./node_modules/rxjs/_esm2015/internal/util/subscribeToResult.js","./node_modules/rxjs/_esm2015/internal/util/toSubscriber.js","./node_modules/@angular/animations/fesm2015/animations.mjs","./node_modules/@angular/animations/fesm2015/browser.mjs","./node_modules/@angular/cdk/fesm2015/a11y.mjs","./node_modules/@angular/cdk/fesm2015/bidi.mjs","./node_modules/@angular/cdk/fesm2015/cdk.mjs","./node_modules/@angular/cdk/fesm2015/coercion.mjs","./node_modules/@angular/cdk/fesm2015/collections.mjs","./node_modules/@angular/cdk/fesm2015/keycodes.mjs","./node_modules/@angular/cdk/fesm2015/layout.mjs","./node_modules/@angular/cdk/fesm2015/observers.mjs","./node_modules/@angular/cdk/fesm2015/overlay.mjs","./node_modules/@angular/cdk/fesm2015/platform.mjs","./node_modules/@angular/cdk/fesm2015/portal.mjs","./node_modules/@angular/cdk/fesm2015/scrolling.mjs","./node_modules/@angular/cdk/fesm2015/text-field.mjs","./node_modules/@angular/common/fesm2015/common.mjs","./node_modules/@angular/common/fesm2015/http.mjs","./node_modules/@angular/core/fesm2015/core.mjs","./node_modules/@angular/forms/fesm2015/forms.mjs","./node_modules/@angular/material-moment-adapter/fesm2015/material-moment-adapter.mjs","./node_modules/@angular/material/fesm2015/button.mjs","./node_modules/@angular/material/fesm2015/core.mjs","./node_modules/@angular/material/fesm2015/datepicker.mjs","./node_modules/@angular/material/fesm2015/dialog.mjs","./node_modules/@angular/material/fesm2015/form-field.mjs","./node_modules/@angular/material/fesm2015/input.mjs","./node_modules/@angular/material/fesm2015/select.mjs","./node_modules/@angular/material/fesm2015/slider.mjs","./node_modules/@angular/material/fesm2015/tooltip.mjs","./node_modules/@angular/platform-browser/fesm2015/animations.mjs","./node_modules/@angular/platform-browser/fesm2015/platform-browser.mjs","./node_modules/@angular/router/fesm2015/router.mjs","./node_modules/@fortawesome/angular-fontawesome/fesm2015/angular-fontawesome.mjs","./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"],"sourcesContent":["\"use strict\";(function(global){global.ng=global.ng||{};global.ng.common=global.ng.common||{};global.ng.common.locales=global.ng.common.locales||{};const u=undefined;function plural(val){const n=val,i=Math.floor(Math.abs(val)),v=val.toString().replace(/^[^.]*\\.?/,\"\").length;if(i===1&&v===0)return 1;return 5}global.ng.common.locales[\"en-us-posix\"]=[\"en-US-POSIX\",[[\"a\",\"p\"],[\"AM\",\"PM\"],u],[[\"AM\",\"PM\"],u,u],[[\"S\",\"M\",\"T\",\"W\",\"T\",\"F\",\"S\"],[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],[\"Su\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"]],u,[[\"J\",\"F\",\"M\",\"A\",\"M\",\"J\",\"J\",\"A\",\"S\",\"O\",\"N\",\"D\"],[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"]],u,[[\"B\",\"A\"],[\"BC\",\"AD\"],[\"Before Christ\",\"Anno Domini\"]],0,[6,0],[\"M/d/yy\",\"MMM d, y\",\"MMMM d, y\",\"EEEE, MMMM d, y\"],[\"h:mm a\",\"h:mm:ss a\",\"h:mm:ss a z\",\"h:mm:ss a zzzz\"],[\"{1}, {0}\",u,\"{1} 'at' {0}\",u],[\".\",\",\",\";\",\"%\",\"+\",\"-\",\"E\",\"\\xD7\",\"0/00\",\"INF\",\"NaN\",\":\"],[\"0.######\",\"0%\",\"\\xA4\\xA00.00\",\"0.000000E+000\"],\"USD\",\"$\",\"US Dollar\",{},\"ltr\",plural,[[[\"mi\",\"n\",\"in the morning\",\"in the afternoon\",\"in the evening\",\"at night\"],[\"midnight\",\"noon\",\"in the morning\",\"in the afternoon\",\"in the evening\",\"at night\"],u],[[\"midnight\",\"noon\",\"morning\",\"afternoon\",\"evening\",\"night\"],u,u],[\"00:00\",\"12:00\",[\"06:00\",\"12:00\"],[\"12:00\",\"18:00\"],[\"18:00\",\"21:00\"],[\"21:00\",\"06:00\"]]]]})(typeof globalThis!==\"undefined\"&&globalThis||typeof global!==\"undefined\"&&global||typeof window!==\"undefined\"&&window);","/*!\n * Font Awesome Free 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)\n */\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\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 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 _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n var ownKeys = Object.keys(source);\n\n if (typeof Object.getOwnPropertySymbols === 'function') {\n ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n\n ownKeys.forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n }\n\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest();\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_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 _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\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;\n\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 NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';\nvar UNITS_IN_GRID = 16;\nvar DEFAULT_FAMILY_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 PREFIX_TO_STYLE = {\n 'fas': 'solid',\n 'far': 'regular',\n 'fal': 'light',\n 'fad': 'duotone',\n 'fab': 'brands',\n 'fak': 'kit',\n 'fa': 'solid'\n};\nvar STYLE_TO_PREFIX = {\n 'solid': 'fas',\n 'regular': 'far',\n 'light': 'fal',\n 'duotone': 'fad',\n 'brands': 'fab',\n 'kit': 'fak'\n};\nvar LAYERS_TEXT_CLASSNAME = 'fa-layers-text';\nvar FONT_FAMILY_PATTERN = /Font Awesome ([5 ]*)(Solid|Regular|Light|Duotone|Brands|Free|Pro|Kit).*/i; // TODO: do we need to handle font-weight for kit SVG pseudo-elements?\n\nvar FONT_WEIGHT_TO_PREFIX = {\n '900': 'fas',\n '400': 'far',\n 'normal': 'far',\n '300': 'fal'\n};\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: 'group',\n SWAP_OPACITY: 'swap-opacity',\n PRIMARY: 'primary',\n SECONDARY: 'secondary'\n};\nvar RESERVED_CLASSES = ['xs', 'sm', 'lg', 'fw', 'ul', 'li', 'border', 'pull-left', 'pull-right', 'spin', 'pulse', 'rotate-90', 'rotate-180', 'rotate-270', 'flip-horizontal', 'flip-vertical', 'flip-both', 'stack', 'stack-1x', 'stack-2x', 'inverse', 'layers', 'layers-text', 'layers-counter', 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 // For example \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-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 familyPrefix: DEFAULT_FAMILY_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};\n\nvar _config = _objectSpread({}, _default, initial);\n\nif (!_config.autoReplaceSvg) _config.observeMutations = false;\n\nvar config = _objectSpread({}, _config);\n\nWINDOW.FontAwesomeConfig = config;\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\nvar PENDING = 'pending';\nvar SETTLED = 'settled';\nvar FULFILLED = 'fulfilled';\nvar REJECTED = 'rejected';\n\nvar NOOP = function NOOP() {};\n\nvar isNode = typeof global !== 'undefined' && typeof global.process !== 'undefined' && typeof global.process.emit === 'function';\nvar asyncSetTimer = typeof setImmediate === 'undefined' ? setTimeout : setImmediate;\nvar asyncQueue = [];\nvar asyncTimer;\n\nfunction asyncFlush() {\n // run promise callbacks\n for (var i = 0; i < asyncQueue.length; i++) {\n asyncQueue[i][0](asyncQueue[i][1]);\n } // reset async asyncQueue\n\n\n asyncQueue = [];\n asyncTimer = false;\n}\n\nfunction asyncCall(callback, arg) {\n asyncQueue.push([callback, arg]);\n\n if (!asyncTimer) {\n asyncTimer = true;\n asyncSetTimer(asyncFlush, 0);\n }\n}\n\nfunction invokeResolver(resolver, promise) {\n function resolvePromise(value) {\n resolve(promise, value);\n }\n\n function rejectPromise(reason) {\n reject(promise, reason);\n }\n\n try {\n resolver(resolvePromise, rejectPromise);\n } catch (e) {\n rejectPromise(e);\n }\n}\n\nfunction invokeCallback(subscriber) {\n var owner = subscriber.owner;\n var settled = owner._state;\n var value = owner._data;\n var callback = subscriber[settled];\n var promise = subscriber.then;\n\n if (typeof callback === 'function') {\n settled = FULFILLED;\n\n try {\n value = callback(value);\n } catch (e) {\n reject(promise, e);\n }\n }\n\n if (!handleThenable(promise, value)) {\n if (settled === FULFILLED) {\n resolve(promise, value);\n }\n\n if (settled === REJECTED) {\n reject(promise, value);\n }\n }\n}\n\nfunction handleThenable(promise, value) {\n var resolved;\n\n try {\n if (promise === value) {\n throw new TypeError('A promises callback cannot return that same promise.');\n }\n\n if (value && (typeof value === 'function' || _typeof(value) === 'object')) {\n // then should be retrieved only once\n var then = value.then;\n\n if (typeof then === 'function') {\n then.call(value, function (val) {\n if (!resolved) {\n resolved = true;\n\n if (value === val) {\n fulfill(promise, val);\n } else {\n resolve(promise, val);\n }\n }\n }, function (reason) {\n if (!resolved) {\n resolved = true;\n reject(promise, reason);\n }\n });\n return true;\n }\n }\n } catch (e) {\n if (!resolved) {\n reject(promise, e);\n }\n\n return true;\n }\n\n return false;\n}\n\nfunction resolve(promise, value) {\n if (promise === value || !handleThenable(promise, value)) {\n fulfill(promise, value);\n }\n}\n\nfunction fulfill(promise, value) {\n if (promise._state === PENDING) {\n promise._state = SETTLED;\n promise._data = value;\n asyncCall(publishFulfillment, promise);\n }\n}\n\nfunction reject(promise, reason) {\n if (promise._state === PENDING) {\n promise._state = SETTLED;\n promise._data = reason;\n asyncCall(publishRejection, promise);\n }\n}\n\nfunction publish(promise) {\n promise._then = promise._then.forEach(invokeCallback);\n}\n\nfunction publishFulfillment(promise) {\n promise._state = FULFILLED;\n publish(promise);\n}\n\nfunction publishRejection(promise) {\n promise._state = REJECTED;\n publish(promise);\n\n if (!promise._handled && isNode) {\n global.process.emit('unhandledRejection', promise._data, promise);\n }\n}\n\nfunction notifyRejectionHandled(promise) {\n global.process.emit('rejectionHandled', promise);\n}\n/**\n * @class\n */\n\n\nfunction P(resolver) {\n if (typeof resolver !== 'function') {\n throw new TypeError('Promise resolver ' + resolver + ' is not a function');\n }\n\n if (this instanceof P === false) {\n throw new TypeError('Failed to construct \\'Promise\\': Please use the \\'new\\' operator, this object constructor cannot be called as a function.');\n }\n\n this._then = [];\n invokeResolver(resolver, this);\n}\n\nP.prototype = {\n constructor: P,\n _state: PENDING,\n _then: null,\n _data: undefined,\n _handled: false,\n then: function then(onFulfillment, onRejection) {\n var subscriber = {\n owner: this,\n then: new this.constructor(NOOP),\n fulfilled: onFulfillment,\n rejected: onRejection\n };\n\n if ((onRejection || onFulfillment) && !this._handled) {\n this._handled = true;\n\n if (this._state === REJECTED && isNode) {\n asyncCall(notifyRejectionHandled, this);\n }\n }\n\n if (this._state === FULFILLED || this._state === REJECTED) {\n // already resolved, call callback async\n asyncCall(invokeCallback, subscriber);\n } else {\n // subscribe\n this._then.push(subscriber);\n }\n\n return subscriber.then;\n },\n catch: function _catch(onRejection) {\n return this.then(null, onRejection);\n }\n};\n\nP.all = function (promises) {\n if (!Array.isArray(promises)) {\n throw new TypeError('You must pass an array to Promise.all().');\n }\n\n return new P(function (resolve, reject) {\n var results = [];\n var remaining = 0;\n\n function resolver(index) {\n remaining++;\n return function (value) {\n results[index] = value;\n\n if (! --remaining) {\n resolve(results);\n }\n };\n }\n\n for (var i = 0, promise; i < promises.length; i++) {\n promise = promises[i];\n\n if (promise && typeof promise.then === 'function') {\n promise.then(resolver(i), reject);\n } else {\n results[i] = promise;\n }\n }\n\n if (!remaining) {\n resolve(results);\n }\n });\n};\n\nP.race = function (promises) {\n if (!Array.isArray(promises)) {\n throw new TypeError('You must pass an array to Promise.race().');\n }\n\n return new P(function (resolve, reject) {\n for (var i = 0, promise; i < promises.length; i++) {\n promise = promises[i];\n\n if (promise && typeof promise.then === 'function') {\n promise.then(resolve, reject);\n } else {\n resolve(promise);\n }\n }\n });\n};\n\nP.resolve = function (value) {\n if (value && _typeof(value) === 'object' && value.constructor === P) {\n return value;\n }\n\n return new P(function (resolve) {\n resolve(value);\n });\n};\n\nP.reject = function (reason) {\n return new P(function (resolve, reject) {\n reject(reason);\n });\n};\n\nvar picked = typeof Promise === 'function' ? Promise : P;\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};\n\nfunction isReserved(name) {\n return ~RESERVED_CLASSES.indexOf(name);\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 getIconName(familyPrefix, cls) {\n var parts = cls.split('-');\n var prefix = parts[0];\n var iconName = parts.slice(1).join('-');\n\n if (prefix === familyPrefix && iconName !== '' && !isReserved(iconName)) {\n return iconName;\n } else {\n return null;\n }\n}\nfunction htmlEscape(str) {\n return \"\".concat(str).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], \";\");\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 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(abstract) {\n if (abstract.tag === 'g') {\n return abstract.children;\n } else {\n return [abstract];\n }\n}\n\nfunction makeIconMasking (_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: _objectSpread({}, 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: _objectSpread({}, trans.inner),\n children: [fillBlack(_objectSpread({\n tag: mainPath.tag,\n attributes: _objectSpread({}, mainPath.attributes, trans.path)\n }, maskInnerGroupChildrenMixin))]\n };\n var maskOuterGroup = {\n tag: 'g',\n attributes: _objectSpread({}, 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: _objectSpread({}, 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: _objectSpread({\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\nfunction makeIconStandard (_ref) {\n var children = _ref.children,\n attributes = _ref.attributes,\n main = _ref.main,\n transform = _ref.transform,\n styles = _ref.styles;\n var styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n if (transformIsMeaningful(transform)) {\n var trans = transformForSvg({\n transform: transform,\n containerWidth: main.width,\n iconWidth: main.width\n });\n children.push({\n tag: 'g',\n attributes: _objectSpread({}, trans.outer),\n children: [{\n tag: 'g',\n attributes: _objectSpread({}, trans.inner),\n children: [{\n tag: main.icon.tag,\n children: main.icon.children,\n attributes: _objectSpread({}, main.icon.attributes, trans.path)\n }]\n }]\n });\n } else {\n children.push(main.icon);\n }\n\n return {\n children: children,\n attributes: attributes\n };\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(_objectSpread({}, 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.familyPrefix, \"-\").concat(iconName) : symbol;\n return [{\n tag: 'svg',\n attributes: {\n style: 'display: none;'\n },\n children: [{\n tag: 'symbol',\n attributes: _objectSpread({}, 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 widthClass = isUploadedIcon ? '' : \"fa-w-\".concat(Math.ceil(width / height * 16));\n var attrClass = [config.replacementClass, iconName ? \"\".concat(config.familyPrefix, \"-\").concat(iconName) : '', widthClass].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: _objectSpread({}, 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) content.children.push({\n tag: 'title',\n attributes: {\n id: content.attributes['aria-labelledby'] || \"title-\".concat(titleId || nextUniqueId())\n },\n children: [title]\n });\n\n var args = _objectSpread({}, content, {\n prefix: prefix,\n iconName: iconName,\n main: main,\n mask: mask,\n maskId: maskId,\n transform: transform,\n symbol: symbol,\n styles: _objectSpread({}, uploadedIconWidthStyle, extra.styles)\n });\n\n var _ref2 = mask.found && main.found ? makeIconMasking(args) : makeIconStandard(args),\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 = _objectSpread({}, 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 = _objectSpread({}, 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 = _objectSpread({}, 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 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 \\\"5.15.4\\\"\";\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\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\nfunction toHex(unicode) {\n var result = '';\n\n for (var i = 0; i < unicode.length; i++) {\n var hex = unicode.charCodeAt(i).toString(16);\n result += ('000' + hex).slice(-4);\n }\n\n return result;\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 = 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 if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {\n namespace.hooks.addPack(prefix, normalized);\n } else {\n namespace.styles[prefix] = _objectSpread({}, 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 easy 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 styles = namespace.styles,\n shims = namespace.shims;\nvar _byUnicode = {};\nvar _byLigature = {};\nvar _byOldName = {};\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 return acc;\n });\n _byLigature = lookup(function (acc, icon, iconName) {\n var ligatures = icon[2];\n acc[iconName] = iconName;\n ligatures.forEach(function (ligature) {\n acc[ligature] = iconName;\n });\n return acc;\n });\n var hasRegular = 'far' in styles;\n _byOldName = reduce(shims, function (acc, shim) {\n var oldName = shim[0];\n var prefix = shim[1];\n var iconName = shim[2];\n\n if (prefix === 'far' && !hasRegular) {\n prefix = 'fas';\n }\n\n acc[oldName] = {\n prefix: prefix,\n iconName: iconName\n };\n return acc;\n }, {});\n};\nbuild();\nfunction byUnicode(prefix, unicode) {\n return (_byUnicode[prefix] || {})[unicode];\n}\nfunction byLigature(prefix, ligature) {\n return (_byLigature[prefix] || {})[ligature];\n}\nfunction byOldName(name) {\n return _byOldName[name] || {\n prefix: null,\n iconName: null\n };\n}\n\nvar styles$1 = namespace.styles;\nvar emptyCanonicalIcon = function emptyCanonicalIcon() {\n return {\n prefix: null,\n iconName: null,\n rest: []\n };\n};\nfunction getCanonicalIcon(values) {\n return values.reduce(function (acc, cls) {\n var iconName = getIconName(config.familyPrefix, cls);\n\n if (styles$1[cls]) {\n acc.prefix = cls;\n } else if (config.autoFetchSvg && Object.keys(PREFIX_TO_STYLE).indexOf(cls) > -1) {\n acc.prefix = cls;\n } else if (iconName) {\n var shim = acc.prefix === 'fa' ? byOldName(iconName) : {};\n acc.iconName = shim.iconName || iconName;\n acc.prefix = shim.prefix || acc.prefix;\n } else if (cls !== config.replacementClass && cls.indexOf('fa-w-') !== 0) {\n acc.rest.push(cls);\n }\n\n return acc;\n }, emptyCanonicalIcon());\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\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(''), \"\");\n }\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 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\nvar mutators = {\n replace: function replace(mutation) {\n var node = mutation[0];\n var abstract = mutation[1];\n var newOuterHTML = abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n\n if (node.parentNode && node.outerHTML) {\n node.outerHTML = newOuterHTML + (config.keepOriginalSource && node.tagName.toLowerCase() !== 'svg' ? \"\") : '');\n } else if (node.parentNode) {\n var newNode = document.createElement('span');\n node.parentNode.replaceChild(newNode, node);\n newNode.outerHTML = newOuterHTML;\n }\n },\n nest: function nest(mutation) {\n var node = mutation[0];\n var abstract = 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.familyPrefix, \"-.*\"));\n delete abstract[0].attributes.style;\n delete abstract[0].attributes.id;\n var splitClasses = abstract[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 abstract[0].attributes.class = splitClasses.toSvg.join(' ');\n var newInnerHTML = abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n node.setAttribute('class', splitClasses.toNode.join(' '));\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 treeCallback = options.treeCallback,\n nodeCallback = options.nodeCallback,\n pseudoElementsCallback = options.pseudoElementsCallback,\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 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') {\n var _getCanonicalIcon = getCanonicalIcon(classArray(mutationRecord.target)),\n prefix = _getCanonicalIcon.prefix,\n iconName = _getCanonicalIcon.iconName;\n\n if (prefix) mutationRecord.target.setAttribute('data-prefix', prefix);\n if (iconName) mutationRecord.target.setAttribute('data-icon', iconName);\n } else {\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 (existingPrefix && existingIconName) {\n val.prefix = existingPrefix;\n val.iconName = existingIconName;\n }\n\n if (val.prefix && innerText.length > 1) {\n val.iconName = byLigature(val.prefix, node.innerText);\n } else if (val.prefix && innerText.length === 1) {\n val.iconName = byUnicode(val.prefix, toHex(node.innerText));\n }\n\n return val;\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\n if (!transformString) {\n return transform;\n } else {\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 }\n};\nfunction transformParser (node) {\n return parseTransformString(node.getAttribute('data-fa-transform'));\n}\n\nfunction symbolParser (node) {\n var symbol = node.getAttribute('data-fa-symbol');\n return symbol === null ? false : symbol === '' ? true : symbol;\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 maskParser (node) {\n var mask = node.getAttribute('data-fa-mask');\n\n if (!mask) {\n return emptyCanonicalIcon();\n } else {\n return getCanonicalIcon(mask.split(' ').map(function (i) {\n return i.trim();\n }));\n }\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: null,\n maskId: null,\n extra: {\n classes: [],\n styles: {},\n attributes: {}\n }\n };\n}\nfunction parseMeta(node) {\n var _classParser = classParser(node),\n iconName = _classParser.iconName,\n prefix = _classParser.prefix,\n extraClasses = _classParser.rest;\n\n var extraStyles = styleParser(node);\n var transform = transformParser(node);\n var symbol = symbolParser(node);\n var extraAttributes = attributesParser(node);\n var mask = maskParser(node);\n return {\n iconName: iconName,\n title: node.getAttribute('title'),\n titleId: node.getAttribute('data-fa-title-id'),\n prefix: prefix,\n transform: transform,\n symbol: symbol,\n mask: mask,\n maskId: node.getAttribute('data-fa-mask-id'),\n extra: {\n classes: extraClasses,\n styles: extraStyles,\n attributes: extraAttributes\n }\n };\n}\n\nfunction MissingIcon(error) {\n this.name = 'MissingIcon';\n this.message = error || 'Icon unavailable';\n this.stack = new Error().stack;\n}\nMissingIcon.prototype = Object.create(Error.prototype);\nMissingIcon.prototype.constructor = MissingIcon;\n\nvar FILL = {\n fill: 'currentColor'\n};\nvar ANIMATION_BASE = {\n attributeType: 'XML',\n repeatCount: 'indefinite',\n dur: '2s'\n};\nvar RING = {\n tag: 'path',\n attributes: _objectSpread({}, 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\nvar OPACITY_ANIMATE = _objectSpread({}, ANIMATION_BASE, {\n attributeName: 'opacity'\n});\n\nvar DOT = {\n tag: 'circle',\n attributes: _objectSpread({}, FILL, {\n cx: '256',\n cy: '364',\n r: '28'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread({}, ANIMATION_BASE, {\n attributeName: 'r',\n values: '28;14;28;28;14;28;'\n })\n }, {\n tag: 'animate',\n attributes: _objectSpread({}, OPACITY_ANIMATE, {\n values: '1;0;1;1;0;1;'\n })\n }]\n};\nvar QUESTION = {\n tag: 'path',\n attributes: _objectSpread({}, 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: [{\n tag: 'animate',\n attributes: _objectSpread({}, OPACITY_ANIMATE, {\n values: '1;0;0;0;0;1;'\n })\n }]\n};\nvar EXCLAMATION = {\n tag: 'path',\n attributes: _objectSpread({}, 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: _objectSpread({}, OPACITY_ANIMATE, {\n values: '0;0;1;1;0;0;'\n })\n }]\n};\nvar missing = {\n tag: 'g',\n children: [RING, DOT, QUESTION, EXCLAMATION]\n};\n\nvar styles$2 = 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.familyPrefix, \"-\").concat(DUOTONE_CLASSES.GROUP)\n },\n children: [{\n tag: 'path',\n attributes: {\n class: \"\".concat(config.familyPrefix, \"-\").concat(DUOTONE_CLASSES.SECONDARY),\n fill: 'currentColor',\n d: vectorData[0]\n }\n }, {\n tag: 'path',\n attributes: {\n class: \"\".concat(config.familyPrefix, \"-\").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}\nfunction findIcon(iconName, prefix) {\n return new picked(function (resolve, reject) {\n var val = {\n found: false,\n width: 512,\n height: 512,\n icon: missing\n };\n\n if (iconName && prefix && styles$2[prefix] && styles$2[prefix][iconName]) {\n var icon = styles$2[prefix][iconName];\n return resolve(asFoundIcon(icon));\n }\n\n if (iconName && prefix && !config.showMissingIcons) {\n reject(new MissingIcon(\"Icon is missing for prefix \".concat(prefix, \" with icon name \").concat(iconName)));\n } else {\n resolve(val);\n }\n });\n}\n\nvar styles$3 = namespace.styles;\n\nfunction generateSvgReplacementMutation(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 picked(function (resolve, reject) {\n picked.all([findIcon(iconName, prefix), findIcon(mask.iconName, mask.prefix)]).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 mask: mask,\n maskId: maskId,\n title: title,\n titleId: titleId,\n extra: extra,\n watchable: true\n })]);\n });\n });\n}\n\nfunction generateLayersText(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 picked.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\nfunction generateMutation(node) {\n var nodeMeta = parseMeta(node);\n\n if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {\n return generateLayersText(node, nodeMeta);\n } else {\n return generateSvgReplacementMutation(node, nodeMeta);\n }\n}\n\nfunction onTree(root) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n if (!IS_DOM) return;\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 ? Object.keys(PREFIX_TO_STYLE) : Object.keys(styles$3);\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;\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;\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 instanceof MissingIcon) {\n console.error(e);\n }\n }\n }\n\n return acc;\n }, []);\n return new picked(function (resolve, reject) {\n picked.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 () {\n mark();\n reject();\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 replaceForPosition(node, position) {\n var pendingAttribute = \"\".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':', '-'));\n return new picked(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 prefix = ~['Solid', 'Regular', 'Light', 'Duotone', 'Brands', 'Kit'].indexOf(fontFamily[2]) ? STYLE_TO_PREFIX[fontFamily[2].toLowerCase()] : FONT_WEIGHT_TO_PREFIX[fontWeight];\n var hexValue = toHex(_content.length === 3 ? _content.substr(1, 1) : _content);\n var iconName = byUnicode(prefix, hexValue);\n var iconIdentifier = iconName; // 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 if (iconName && (!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(_objectSpread({}, meta, {\n icons: {\n main: main,\n mask: emptyCanonicalIcon()\n },\n prefix: prefix,\n iconName: iconIdentifier,\n extra: extra,\n watchable: true\n }));\n var element = DOCUMENT.createElement('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 picked.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 picked(function (resolve, reject) {\n var operations = toArray(root.querySelectorAll('*')).filter(processable).map(replace);\n var end = perf.begin('searchPseudoElements');\n disableObservation();\n picked.all(operations).then(function () {\n end();\n enableObservation();\n resolve();\n }).catch(function () {\n end();\n enableObservation();\n reject();\n });\n });\n}\n\nvar baseStyles = \"svg:not(:root).svg-inline--fa {\\n overflow: visible;\\n}\\n\\n.svg-inline--fa {\\n display: inline-block;\\n font-size: inherit;\\n height: 1em;\\n overflow: visible;\\n vertical-align: -0.125em;\\n}\\n.svg-inline--fa.fa-lg {\\n vertical-align: -0.225em;\\n}\\n.svg-inline--fa.fa-w-1 {\\n width: 0.0625em;\\n}\\n.svg-inline--fa.fa-w-2 {\\n width: 0.125em;\\n}\\n.svg-inline--fa.fa-w-3 {\\n width: 0.1875em;\\n}\\n.svg-inline--fa.fa-w-4 {\\n width: 0.25em;\\n}\\n.svg-inline--fa.fa-w-5 {\\n width: 0.3125em;\\n}\\n.svg-inline--fa.fa-w-6 {\\n width: 0.375em;\\n}\\n.svg-inline--fa.fa-w-7 {\\n width: 0.4375em;\\n}\\n.svg-inline--fa.fa-w-8 {\\n width: 0.5em;\\n}\\n.svg-inline--fa.fa-w-9 {\\n width: 0.5625em;\\n}\\n.svg-inline--fa.fa-w-10 {\\n width: 0.625em;\\n}\\n.svg-inline--fa.fa-w-11 {\\n width: 0.6875em;\\n}\\n.svg-inline--fa.fa-w-12 {\\n width: 0.75em;\\n}\\n.svg-inline--fa.fa-w-13 {\\n width: 0.8125em;\\n}\\n.svg-inline--fa.fa-w-14 {\\n width: 0.875em;\\n}\\n.svg-inline--fa.fa-w-15 {\\n width: 0.9375em;\\n}\\n.svg-inline--fa.fa-w-16 {\\n width: 1em;\\n}\\n.svg-inline--fa.fa-w-17 {\\n width: 1.0625em;\\n}\\n.svg-inline--fa.fa-w-18 {\\n width: 1.125em;\\n}\\n.svg-inline--fa.fa-w-19 {\\n width: 1.1875em;\\n}\\n.svg-inline--fa.fa-w-20 {\\n width: 1.25em;\\n}\\n.svg-inline--fa.fa-pull-left {\\n margin-right: 0.3em;\\n width: auto;\\n}\\n.svg-inline--fa.fa-pull-right {\\n margin-left: 0.3em;\\n width: auto;\\n}\\n.svg-inline--fa.fa-border {\\n height: 1.5em;\\n}\\n.svg-inline--fa.fa-li {\\n width: 2em;\\n}\\n.svg-inline--fa.fa-fw {\\n 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 {\\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-counter, .fa-layers-text {\\n display: inline-block;\\n position: absolute;\\n text-align: 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: #ff253a;\\n border-radius: 1em;\\n -webkit-box-sizing: border-box;\\n box-sizing: border-box;\\n color: #fff;\\n height: 1.5em;\\n line-height: 1;\\n max-width: 5em;\\n min-width: 1.5em;\\n overflow: hidden;\\n padding: 0.25em;\\n right: 0;\\n text-overflow: ellipsis;\\n top: 0;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: top right;\\n transform-origin: top right;\\n}\\n\\n.fa-layers-bottom-right {\\n bottom: 0;\\n right: 0;\\n top: auto;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: bottom right;\\n transform-origin: bottom right;\\n}\\n\\n.fa-layers-bottom-left {\\n bottom: 0;\\n left: 0;\\n right: auto;\\n top: auto;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: bottom left;\\n transform-origin: bottom left;\\n}\\n\\n.fa-layers-top-right {\\n right: 0;\\n top: 0;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: top right;\\n transform-origin: top right;\\n}\\n\\n.fa-layers-top-left {\\n left: 0;\\n right: auto;\\n top: 0;\\n -webkit-transform: scale(0.25);\\n transform: scale(0.25);\\n -webkit-transform-origin: top left;\\n transform-origin: top left;\\n}\\n\\n.fa-lg {\\n font-size: 1.3333333333em;\\n line-height: 0.75em;\\n vertical-align: -0.0667em;\\n}\\n\\n.fa-xs {\\n font-size: 0.75em;\\n}\\n\\n.fa-sm {\\n font-size: 0.875em;\\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-fw {\\n text-align: center;\\n width: 1.25em;\\n}\\n\\n.fa-ul {\\n list-style-type: none;\\n margin-left: 2.5em;\\n padding-left: 0;\\n}\\n.fa-ul > li {\\n position: relative;\\n}\\n\\n.fa-li {\\n left: -2em;\\n position: absolute;\\n text-align: center;\\n width: 2em;\\n line-height: inherit;\\n}\\n\\n.fa-border {\\n border: solid 0.08em #eee;\\n border-radius: 0.1em;\\n padding: 0.2em 0.25em 0.15em;\\n}\\n\\n.fa-pull-left {\\n float: left;\\n}\\n\\n.fa-pull-right {\\n float: right;\\n}\\n\\n.fa.fa-pull-left,\\n.fas.fa-pull-left,\\n.far.fa-pull-left,\\n.fal.fa-pull-left,\\n.fab.fa-pull-left {\\n margin-right: 0.3em;\\n}\\n.fa.fa-pull-right,\\n.fas.fa-pull-right,\\n.far.fa-pull-right,\\n.fal.fa-pull-right,\\n.fab.fa-pull-right {\\n margin-left: 0.3em;\\n}\\n\\n.fa-spin {\\n -webkit-animation: fa-spin 2s infinite linear;\\n animation: fa-spin 2s infinite linear;\\n}\\n\\n.fa-pulse {\\n -webkit-animation: fa-spin 1s infinite steps(8);\\n animation: fa-spin 1s infinite steps(8);\\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\\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 -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)\\\";\\n -webkit-transform: rotate(90deg);\\n transform: rotate(90deg);\\n}\\n\\n.fa-rotate-180 {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)\\\";\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n}\\n\\n.fa-rotate-270 {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)\\\";\\n -webkit-transform: rotate(270deg);\\n transform: rotate(270deg);\\n}\\n\\n.fa-flip-horizontal {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)\\\";\\n -webkit-transform: scale(-1, 1);\\n transform: scale(-1, 1);\\n}\\n\\n.fa-flip-vertical {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)\\\";\\n -webkit-transform: scale(1, -1);\\n transform: scale(1, -1);\\n}\\n\\n.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {\\n -ms-filter: \\\"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)\\\";\\n -webkit-transform: scale(-1, -1);\\n transform: scale(-1, -1);\\n}\\n\\n:root .fa-rotate-90,\\n:root .fa-rotate-180,\\n:root .fa-rotate-270,\\n:root .fa-flip-horizontal,\\n:root .fa-flip-vertical,\\n:root .fa-flip-both {\\n -webkit-filter: none;\\n filter: none;\\n}\\n\\n.fa-stack {\\n display: inline-block;\\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}\\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: #fff;\\n}\\n\\n.sr-only {\\n border: 0;\\n clip: rect(0, 0, 0, 0);\\n height: 1px;\\n margin: -1px;\\n overflow: hidden;\\n padding: 0;\\n position: absolute;\\n width: 1px;\\n}\\n\\n.sr-only-focusable:active, .sr-only-focusable:focus {\\n clip: auto;\\n height: auto;\\n margin: 0;\\n overflow: visible;\\n position: static;\\n width: auto;\\n}\\n\\n.svg-inline--fa .fa-primary {\\n fill: var(--fa-primary-color, currentColor);\\n opacity: 1;\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa .fa-secondary {\\n fill: var(--fa-secondary-color, currentColor);\\n opacity: 0.4;\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-primary {\\n opacity: 0.4;\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-secondary {\\n opacity: 1;\\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 color: #fff;\\n}\";\n\nfunction css () {\n var dfp = DEFAULT_FAMILY_PREFIX;\n var drc = DEFAULT_REPLACEMENT_CLASS;\n var fp = config.familyPrefix;\n var rc = config.replacementClass;\n var s = baseStyles;\n\n if (fp !== dfp || rc !== drc) {\n var dPatt = new RegExp(\"\\\\.\".concat(dfp, \"\\\\-\"), 'g');\n var customPropPatt = new RegExp(\"\\\\--\".concat(dfp, \"\\\\-\"), '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 Library =\n/*#__PURE__*/\nfunction () {\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] = _objectSpread({}, _this.definitions[key] || {}, additions[key]);\n defineIcons(key, 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 if (!additions[prefix]) additions[prefix] = {};\n additions[prefix][iconName] = icon;\n });\n return additions;\n }\n }]);\n\n return Library;\n}();\n\nfunction ensureCss() {\n if (config.autoAddCss && !_cssInserted) {\n insertCss(css());\n\n _cssInserted = true;\n }\n}\n\nfunction apiObject(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 findIconDefinition(iconLookup) {\n var _iconLookup$prefix = iconLookup.prefix,\n prefix = _iconLookup$prefix === void 0 ? 'fa' : _iconLookup$prefix,\n iconName = iconLookup.iconName;\n if (!iconName) return;\n return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);\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, _objectSpread({}, params, {\n mask: mask\n }));\n };\n}\n\nvar library = new Library();\nvar noAuto = function noAuto() {\n config.autoReplaceSvg = false;\n config.observeMutations = false;\n disconnect();\n};\nvar _cssInserted = false;\nvar dom = {\n i2svg: function i2svg() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n if (IS_DOM) {\n ensureCss();\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\n if (config.searchPseudoElements) {\n searchPseudoElements(node);\n }\n\n return onTree(node, callback);\n } else {\n return picked.reject('Operation requires a DOM of some kind.');\n }\n },\n css: css,\n insertCss: function insertCss$$1() {\n if (!_cssInserted) {\n insertCss(css());\n\n _cssInserted = true;\n }\n },\n watch: function watch() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var autoReplaceSvgRoot = params.autoReplaceSvgRoot,\n observeMutationsRoot = params.observeMutationsRoot;\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 observe({\n treeCallback: onTree,\n nodeCallback: onNode,\n pseudoElementsCallback: searchPseudoElements,\n observeMutationsRoot: observeMutationsRoot\n });\n });\n }\n};\nvar parse = {\n transform: function transform(transformString) {\n return parseTransformString(transformString);\n }\n};\nvar icon = resolveIcons(function (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 apiObject(_objectSpread({\n type: 'icon'\n }, iconDefinition), function () {\n ensureCss();\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: _objectSpread({}, 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 text = function text(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$transform2 = params.transform,\n transform = _params$transform2 === void 0 ? meaninglessTransform : _params$transform2,\n _params$title2 = params.title,\n title = _params$title2 === void 0 ? null : _params$title2,\n _params$classes2 = params.classes,\n classes = _params$classes2 === void 0 ? [] : _params$classes2,\n _params$attributes2 = params.attributes,\n attributes = _params$attributes2 === void 0 ? {} : _params$attributes2,\n _params$styles2 = params.styles,\n styles = _params$styles2 === void 0 ? {} : _params$styles2;\n return apiObject({\n type: 'text',\n content: content\n }, function () {\n ensureCss();\n return makeLayersTextAbstract({\n content: content,\n transform: _objectSpread({}, meaninglessTransform, transform),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.familyPrefix, \"-layers-text\")].concat(_toConsumableArray(classes))\n }\n });\n });\n};\nvar counter = function counter(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$title3 = params.title,\n title = _params$title3 === void 0 ? null : _params$title3,\n _params$classes3 = params.classes,\n classes = _params$classes3 === void 0 ? [] : _params$classes3,\n _params$attributes3 = params.attributes,\n attributes = _params$attributes3 === void 0 ? {} : _params$attributes3,\n _params$styles3 = params.styles,\n styles = _params$styles3 === void 0 ? {} : _params$styles3;\n return apiObject({\n type: 'counter',\n content: content\n }, function () {\n ensureCss();\n return makeLayersCounterAbstract({\n content: content.toString(),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.familyPrefix, \"-layers-counter\")].concat(_toConsumableArray(classes))\n }\n });\n });\n};\nvar layer = function layer(assembler) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$classes4 = params.classes,\n classes = _params$classes4 === void 0 ? [] : _params$classes4;\n return apiObject({\n type: 'layer'\n }, function () {\n ensureCss();\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.familyPrefix, \"-layers\")].concat(_toConsumableArray(classes)).join(' ')\n },\n children: children\n }];\n });\n};\nvar api = {\n noAuto: noAuto,\n config: config,\n dom: dom,\n library: library,\n parse: parse,\n findIconDefinition: findIconDefinition,\n icon: icon,\n text: text,\n counter: counter,\n layer: layer,\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\nexport { icon, noAuto, config, toHtml, layer, text, counter, library, dom, parse, findIconDefinition };\n","/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (Commercial License)\n */\nvar prefix = \"fal\";\nvar faAbacus = {\n prefix: 'fal',\n iconName: 'abacus',\n icon: [576, 512, [], \"f640\", \"M560 0c-8.84 0-16 7.16-16 16v64h-64V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v16h-96V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v16h-32V64c0-17.67-14.33-32-32-32H96c-17.67 0-32 14.33-32 32v16H32V16c0-8.84-7.16-16-16-16S0 7.16 0 16v488c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-72h32v16c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-16h32v16c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-16h96v16c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-16h64v72c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V16c0-8.84-7.16-16-16-16zM416 64h32v64h-32V64zm-192 0h32v64h-32V64zM96 64h32v64H96V64zm32 384H96v-64h32v64zm128 0h-32v-64h32v64zm192 0h-32v-64h32v64zm96-48h-64v-16c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v16h-96v-16c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v16h-32v-16c0-17.67-14.33-32-32-32H96c-17.67 0-32 14.33-32 32v16H32V272h32v16c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-16h32v16c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-16h32v16c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-16h128v128zM96 288v-64h32v64H96zm128 0v-64h32v64h-32zm128 0v-64h32v64h-32zm192-48H416v-16c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v16h-32v-16c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v16h-32v-16c0-17.67-14.33-32-32-32H96c-17.67 0-32 14.33-32 32v16H32V112h32v16c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-16h32v16c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-16h96v16c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-16h64v128z\"]\n};\nvar faAcorn = {\n prefix: 'fal',\n iconName: 'acorn',\n icon: [448, 512, [], \"f6ae\", \"M352 64H241.12c3.32-14.4 9.75-27.88 19.46-39.28 2.77-3.25 2.81-7.98-.21-11L249.04 2.39c-3.22-3.22-8.62-3.23-11.62.2-15.38 17.51-25.27 38.67-29.1 61.41H96c-53.02 0-96 42.98-96 96v32c0 17.67 14.33 32 32 32v32c0 98.06 55.4 187.7 143.11 231.55L224 512l48.89-24.45C360.6 443.7 416 354.06 416 256v-32c17.67 0 32-14.33 32-32v-32c0-53.02-42.98-96-96-96zm32 192c0 86.49-48.06 164.25-125.42 202.93L224 476.22l-34.58-17.29C112.06 420.25 64 342.49 64 256v-32h320v32zm32-64H32v-32c0-35.29 28.71-64 64-64h256c35.29 0 64 28.71 64 64v32z\"]\n};\nvar faAd = {\n prefix: 'fal',\n iconName: 'ad',\n icon: [512, 512, [], \"f641\", \"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-48zm16 336c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16V112c0-8.82 7.18-16 16-16h416c8.82 0 16 7.18 16 16v288zm-72-240h-16c-4.42 0-8 3.58-8 8v64.88c-9.45-5.5-20.28-8.88-32-8.88-35.35 0-64 28.65-64 64s28.65 64 64 64c11.72 0 22.55-3.38 32-8.88v.88c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V168c0-4.42-3.58-8-8-8zm-56 160c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32zM196.97 165.13a8.007 8.007 0 0 0-7.47-5.13h-27.01c-3.31 0-6.28 2.04-7.47 5.13l-67.69 176C85.31 346.37 89.18 352 94.8 352h17.15c3.31 0 6.28-2.04 7.47-5.13L142.07 288h67.86l22.64 58.87a8.007 8.007 0 0 0 7.47 5.13h17.15c5.62 0 9.48-5.63 7.47-10.87l-67.69-176zM154.37 256L176 199.77 197.63 256h-43.26z\"]\n};\nvar faAddressBook = {\n prefix: 'fal',\n iconName: 'address-book',\n icon: [448, 512, [], \"f2b9\", \"M436 160c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20V64c0-35.3-28.7-64-64-64H64C28.7 0 0 28.7 0 64v384c0 35.3 28.7 64 64 64h288c35.3 0 64-28.7 64-64v-32h20c6.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-52 288c0 17.6-14.4 32-32 32H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h288c17.6 0 32 14.4 32 32v384zM208 272c44.2 0 80-35.8 80-80s-35.8-80-80-80-80 35.8-80 80 35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm46.8 144c-19.5 0-24.4 7-46.8 7s-27.3-7-46.8-7c-21.2 0-41.8 9.4-53.8 27.4C100.2 326.1 96 339 96 352.9V392c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-39.1c0-7 2.1-13.8 6-19.6 5.6-8.3 15.8-13.2 27.3-13.2 12.4 0 20.8 7 46.8 7 25.9 0 34.3-7 46.8-7 11.5 0 21.7 5 27.3 13.2 3.9 5.8 6 12.6 6 19.6V392c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-39.1c0-13.9-4.2-26.8-11.4-37.5-12.3-18-32.9-27.4-54-27.4z\"]\n};\nvar faAddressCard = {\n prefix: 'fal',\n iconName: 'address-card',\n icon: [576, 512, [], \"f2bb\", \"M512 32H64C28.7 32 0 60.7 0 96v320c0 35.3 28.7 64 64 64h448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64zm32 384c0 17.6-14.4 32-32 32H64c-17.6 0-32-14.4-32-32V96c0-17.6 14.4-32 32-32h448c17.6 0 32 14.4 32 32v320zm-72-128H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm0-64H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm0-64H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM208 288c44.2 0 80-35.8 80-80s-35.8-80-80-80-80 35.8-80 80 35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm46.8 144c-19.5 0-24.4 7-46.8 7s-27.3-7-46.8-7c-21.2 0-41.8 9.4-53.8 27.4C100.2 342.1 96 355 96 368.9V392c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-23.1c0-7 2.1-13.8 6-19.6 5.6-8.3 15.8-13.2 27.3-13.2 12.4 0 20.8 7 46.8 7 25.9 0 34.3-7 46.8-7 11.5 0 21.7 5 27.3 13.2 3.9 5.8 6 12.6 6 19.6V392c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-23.1c0-13.9-4.2-26.8-11.4-37.5-12.3-18-32.9-27.4-54-27.4z\"]\n};\nvar faAdjust = {\n prefix: 'fal',\n iconName: 'adjust',\n icon: [512, 512, [], \"f042\", \"M256 40c119.945 0 216 97.337 216 216 0 119.945-97.337 216-216 216-119.945 0-216-97.337-216-216 0-119.945 97.337-216 216-216m0-32C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm-32 124.01v247.98c-53.855-13.8-96-63.001-96-123.99 0-60.99 42.145-110.19 96-123.99M256 96c-88.366 0-160 71.634-160 160s71.634 160 160 160V96z\"]\n};\nvar faAirConditioner = {\n prefix: 'fal',\n iconName: 'air-conditioner',\n icon: [576, 512, [], \"f8f4\", \"M544,0H32A32,32,0,0,0,0,32V192a32,32,0,0,0,32,32H544a32,32,0,0,0,32-32V32A32,32,0,0,0,544,0Zm0,192H32V32H544ZM72,160H504a8,8,0,0,0,8-8V136a8,8,0,0,0-8-8H72a8,8,0,0,0-8,8v16A8,8,0,0,0,72,160ZM224,424a56,56,0,0,1-56,56H152a56.09,56.09,0,0,1-54.79-67.76c5.36-26.18,29.68-44.24,56.4-44.24H168a8,8,0,0,0,8-8V344a8,8,0,0,0-8-8H152a88.09,88.09,0,0,0-87.57,96.78C68.88,478.5,110,512,155.91,512H168a88,88,0,0,0,88-88V256H224ZM420.1,304H408a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8h16a56.09,56.09,0,0,1,54.79,67.76c-5.36,26.18-29.68,44.24-56.4,44.24H408a56,56,0,0,1-56-56V256H320V392a88,88,0,0,0,88,88h16a88.09,88.09,0,0,0,87.57-96.78C507.12,337.5,466,304,420.1,304Z\"]\n};\nvar faAirFreshener = {\n prefix: 'fal',\n iconName: 'air-freshener',\n icon: [512, 512, [], \"f5d0\", \"M160 240C115.875 240 80 275.875 80 320S115.875 400 160 400S240 364.125 240 320S204.125 240 160 240ZM160 368C133.5 368 112 346.5 112 320S133.5 272 160 272S208 293.5 208 320S186.5 368 160 368ZM224 128V32C224 14.406 209.594 0 192 0H128C110.406 0 96 14.406 96 32V128C43 128 0 171 0 224V448C0 483.203 28.812 512 64 512H256C291.188 512 320 483.203 320 448V224C320 171 277 128 224 128ZM128 32H192V128H128V32ZM288 448C288 465.672 273.688 480 256 480H64C46.312 480 32 465.672 32 448V224C32 188.797 60.812 160 96 160H224C259.188 160 288 188.797 288 224V448ZM496 224H480V208C480 199.156 472.844 192 464 192S448 199.156 448 208V224H432C423.156 224 416 231.156 416 240S423.156 256 432 256H448V272C448 280.844 455.156 288 464 288S480 280.844 480 272V256H496C504.844 256 512 248.844 512 240S504.844 224 496 224ZM432 64H448V80C448 88.844 455.156 96 464 96S480 88.844 480 80V64H496C504.844 64 512 56.844 512 48S504.844 32 496 32H480V16C480 7.156 472.844 0 464 0S448 7.156 448 16V32H432C423.156 32 416 39.156 416 48S423.156 64 432 64ZM416 160H432C440.844 160 448 152.844 448 144S440.844 128 432 128H416V112C416 103.156 408.844 96 400 96S384 103.156 384 112V128H368C359.156 128 352 135.156 352 144S359.156 160 368 160H384V176C384 184.844 391.156 192 400 192S416 184.844 416 176V160ZM352 64H368C376.844 64 384 56.844 384 48S376.844 32 368 32H352V16C352 7.156 344.844 0 336 0S320 7.156 320 16V32H304C295.156 32 288 39.156 288 48S295.156 64 304 64H320V80C320 88.844 327.156 96 336 96S352 88.844 352 80V64Z\"]\n};\nvar faAlarmClock = {\n prefix: 'fal',\n iconName: 'alarm-clock',\n icon: [512, 512, [], \"f34e\", \"M32 112a80.09 80.09 0 0 1 80-80 79.23 79.23 0 0 1 50 18 253.22 253.22 0 0 1 34.44-10.8C175.89 15.42 145.86 0 112 0A112.14 112.14 0 0 0 0 112c0 25.86 9.17 49.41 24 68.39a255.93 255.93 0 0 1 17.4-31.64A78.94 78.94 0 0 1 32 112zM400 0c-33.86 0-63.89 15.42-84.44 39.25A253.22 253.22 0 0 1 350 50.05a79.23 79.23 0 0 1 50-18 80.09 80.09 0 0 1 80 80 78.94 78.94 0 0 1-9.36 36.75A255.93 255.93 0 0 1 488 180.39c14.79-19 24-42.53 24-68.39A112.14 112.14 0 0 0 400 0zM256 64C132.29 64 32 164.29 32 288a222.89 222.89 0 0 0 54.84 146.54L34.34 487a8 8 0 0 0 0 11.32l11.31 11.31a8 8 0 0 0 11.32 0l52.49-52.5a223.21 223.21 0 0 0 293.08 0L455 509.66a8 8 0 0 0 11.32 0l11.31-11.31a8 8 0 0 0 0-11.32l-52.5-52.49A222.89 222.89 0 0 0 480 288c0-123.71-100.29-224-224-224zm0 416c-105.87 0-192-86.13-192-192S150.13 96 256 96s192 86.13 192 192-86.13 192-192 192zm14.38-183.69V168a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v136a16 16 0 0 0 6 12.48l73.75 59a8 8 0 0 0 11.25-1.25l10-12.5a8 8 0 0 0-1.25-11.25z\"]\n};\nvar faAlarmExclamation = {\n prefix: 'fal',\n iconName: 'alarm-exclamation',\n icon: [512, 512, [], \"f843\", \"M256 352a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm-8.5-24h17a8.14 8.14 0 0 0 8-7.5l7-136a8 8 0 0 0-8-8.5h-31a8 8 0 0 0-8 8.5l7 136a8 8 0 0 0 8 7.5zM32 112a80.09 80.09 0 0 1 80-80 79.23 79.23 0 0 1 50 18 253.22 253.22 0 0 1 34.44-10.8C175.89 15.42 145.86 0 112 0A112.14 112.14 0 0 0 0 112c0 25.86 9.17 49.41 24 68.39a255.93 255.93 0 0 1 17.4-31.64A78.94 78.94 0 0 1 32 112zM400 0c-33.86 0-63.89 15.42-84.44 39.25A253.22 253.22 0 0 1 350 50.05a79.23 79.23 0 0 1 50-18 80.09 80.09 0 0 1 80 80 78.94 78.94 0 0 1-9.36 36.75A255.93 255.93 0 0 1 488 180.39c14.79-19 24-42.53 24-68.39A112.14 112.14 0 0 0 400 0zM256 64C132.29 64 32 164.29 32 288a222.89 222.89 0 0 0 54.84 146.54L34.34 487a8 8 0 0 0 0 11.32l11.31 11.31a8 8 0 0 0 11.32 0l52.49-52.5a223.21 223.21 0 0 0 293.08 0L455 509.66a8 8 0 0 0 11.32 0l11.31-11.31a8 8 0 0 0 0-11.32l-52.5-52.49A222.89 222.89 0 0 0 480 288c0-123.71-100.29-224-224-224zm0 416c-105.87 0-192-86.13-192-192S150.13 96 256 96s192 86.13 192 192-86.13 192-192 192z\"]\n};\nvar faAlarmPlus = {\n prefix: 'fal',\n iconName: 'alarm-plus',\n icon: [512, 512, [], \"f844\", \"M344 272h-72v-72a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v72h-72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h72v72a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-72h72a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM32 112a80.09 80.09 0 0 1 80-80 79.23 79.23 0 0 1 50 18 253.22 253.22 0 0 1 34.44-10.8C175.89 15.42 145.86 0 112 0A112.14 112.14 0 0 0 0 112c0 25.86 9.17 49.41 24 68.39a255.93 255.93 0 0 1 17.4-31.64A78.94 78.94 0 0 1 32 112zM400 0c-33.86 0-63.89 15.42-84.44 39.25A253.22 253.22 0 0 1 350 50.05a79.23 79.23 0 0 1 50-18 80.09 80.09 0 0 1 80 80 78.94 78.94 0 0 1-9.36 36.75A255.93 255.93 0 0 1 488 180.39c14.79-19 24-42.53 24-68.39A112.14 112.14 0 0 0 400 0zM256 64C132.29 64 32 164.29 32 288a222.89 222.89 0 0 0 54.84 146.54L34.34 487a8 8 0 0 0 0 11.32l11.31 11.31a8 8 0 0 0 11.32 0l52.49-52.5a223.21 223.21 0 0 0 293.08 0L455 509.66a8 8 0 0 0 11.32 0l11.31-11.31a8 8 0 0 0 0-11.32l-52.5-52.49A222.89 222.89 0 0 0 480 288c0-123.71-100.29-224-224-224zm0 416c-105.87 0-192-86.13-192-192S150.13 96 256 96s192 86.13 192 192-86.13 192-192 192z\"]\n};\nvar faAlarmSnooze = {\n prefix: 'fal',\n iconName: 'alarm-snooze',\n icon: [512, 512, [], \"f845\", \"M328 352H225.28L332.5 218a16 16 0 0 0-12.5-26H184a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h102.72L179.5 358a16 16 0 0 0 12.5 26h136a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM32 112a80.09 80.09 0 0 1 80-80 79.23 79.23 0 0 1 50 18 253.22 253.22 0 0 1 34.44-10.8C175.89 15.42 145.86 0 112 0A112.14 112.14 0 0 0 0 112c0 25.86 9.17 49.41 24 68.39a255.93 255.93 0 0 1 17.4-31.64A78.94 78.94 0 0 1 32 112zM400 0c-33.86 0-63.89 15.42-84.44 39.25A253.22 253.22 0 0 1 350 50.05a79.23 79.23 0 0 1 50-18 80.09 80.09 0 0 1 80 80 78.94 78.94 0 0 1-9.36 36.75A255.93 255.93 0 0 1 488 180.39c14.79-19 24-42.53 24-68.39A112.14 112.14 0 0 0 400 0zM256 64C132.29 64 32 164.29 32 288a222.89 222.89 0 0 0 54.84 146.54L34.34 487a8 8 0 0 0 0 11.32l11.31 11.31a8 8 0 0 0 11.32 0l52.49-52.5a223.21 223.21 0 0 0 293.08 0L455 509.66a8 8 0 0 0 11.32 0l11.31-11.31a8 8 0 0 0 0-11.32l-52.5-52.49A222.89 222.89 0 0 0 480 288c0-123.71-100.29-224-224-224zm0 416c-105.87 0-192-86.13-192-192S150.13 96 256 96s192 86.13 192 192-86.13 192-192 192z\"]\n};\nvar faAlbum = {\n prefix: 'fal',\n iconName: 'album',\n icon: [448, 512, [], \"f89f\", \"M224 416c88.22 0 160-71.78 160-160S312.22 96 224 96 64 167.78 64 256s71.78 160 160 160zm0-288A128 128 0 1 1 96 256a128.14 128.14 0 0 1 128-128zm0 152a24 24 0 1 0-24-24 24 24 0 0 0 24 24zM416 32H32A32 32 0 0 0 0 64v384a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32zm0 416H32V64h384z\"]\n};\nvar faAlbumCollection = {\n prefix: 'fal',\n iconName: 'album-collection',\n icon: [512, 512, [], \"f8a0\", \"M496 80a16 16 0 0 0-16-16H32a16 16 0 0 0-16 16v16h480zm-16-64a16 16 0 0 0-16-16H48a16 16 0 0 0-16 16v16h448zm0 112H32C13.19 128-1.57 145.62.13 166.07l26.18 314.18c1.5 18 15.32 31.75 31.87 31.75h395.64c16.55 0 30.37-13.77 31.86-31.75l26.19-314.18C513.57 145.62 498.82 128 480 128zm-26.21 349.6c-.12 1.47-.69 2.31-.2 2.4l-394.32.27a4 4 0 0 1-1.07-2.68L32 163.41c-.18-2.09.67-3.32.12-3.41h447a5 5 0 0 1 .82 3.41zM256 299.15c-14.55 0-26.25 10.16-26.13 22.6S241.69 344 256 344s26-9.9 26.14-22.23-11.58-22.62-26.14-22.62zM256 192c-92.9 0-164.33 61.88-159.79 134.4C100.51 395 172 448 256 448s155.5-53 159.8-121.6C420.33 253.88 348.9 192 256 192zm0 224c-67.34 0-124.7-41.09-127.86-91.6-1.69-27 11.71-47.29 23.25-59.58C175.77 238.88 213.9 224 256 224s80.23 14.88 104.6 40.82c11.54 12.29 24.95 32.6 23.26 59.58C380.7 374.91 323.34 416 256 416z\"]\n};\nvar faAlicorn = {\n prefix: 'fal',\n iconName: 'alicorn',\n icon: [640, 512, [], \"f6b0\", \"M631.98 64h-96.92l-.24-.3c5.39-9.45 8.38-20.32 8.38-31.7 0-17.67-14.33-32-32-32H400c-69.18 0-125.38 55.26-127.59 123.92-35.69-9.21-63.11-34.71-81.51-76.61-4-9.16-13.06-15.16-23.03-15.31-10.53.2-18.84 5.36-23.13 14.39C133.63 69.94 128 95.08 128 121.09c0 75.38 56.56 143.6 132.87 161.9 4.42 1.06 8.86-1.96 9.7-6.43l2.97-15.7c.8-4.22-1.93-8.17-6.1-9.2C205.69 236.47 160 181.6 160 121.09c0-16.31 2.72-32.19 8.06-47.38C197.38 130.23 244.1 160 303.94 160l.06-32c0-53.02 42.98-96 96-96h111.2c0 13.29-8.1 24.66-19.63 29.5l20.39 24.78.05 93.88a16 16 0 0 1-10.83 15.15l-25.52 8.71c-9.33 3.19-16.14-2.76-18.48-6.27L432 160l-48-16v100.21c0 26.67-12.65 50.17-32 65.6V480h-64V318.69l-104.43-23.21-32.12 89.47L175.53 480H118l-21.13-87.86a31.698 31.698 0 0 1 .37-16.18l27.63-93.41C107.46 270.37 96 250.24 96 227.37c0-15.82 5.68-30.18 14.82-41.68-4.94-10.84-8.98-22.04-11.4-33.73-8.09 6.94-15.19 15.02-20.76 24.18C35.11 176.87 0 212.27 0 256v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56c0-21.5 14.23-39.48 33.72-45.59-.96 5.54-1.71 11.15-1.71 16.96 0 24.2 8.9 47.33 24.53 65.24l-21.97 74.27c-3.12 10.77-3.38 22.03-.8 32.74l21.13 87.86C90.34 501.86 103.21 512 118 512h57.53c20.95 0 36.12-19.75 31.02-39.86l-21.68-85.57 19.29-53.73L256 344.36V480c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V323.8c20.5-21.5 32-49.75 32-79.59v-50.52l14.55 21.82c19.11 28.67 49.98 20.67 55.45 18.8l25.52-8.71c19.44-6.63 32.5-24.89 32.49-45.44l-.03-64.83 92.45-36.66c6.58-4.4 3.47-14.67-4.45-14.67zM464.01 96c0-8.84-7.16-16-16-16s-16 7.16-16 16 7.16 16 16 16c8.83 0 16-7.16 16-16z\"]\n};\nvar faAlien = {\n prefix: 'fal',\n iconName: 'alien',\n icon: [448, 512, [], \"f8f5\", \"M224,0C100.28125,0,0,88.0293,0,232.45117c0,111.77735,134.21484,224.59766,194.86328,269.875a48.71553,48.71553,0,0,0,58.27344,0C313.78516,457.04883,448,344.22852,448,232.45117,448,88.0293,347.6875,0,224,0Zm9.99219,476.68359a16.71415,16.71415,0,0,1-19.98633,0C171.30859,444.80859,32,332.99609,32,232.45117,32,114.42773,110.95312,32,224,32s192,82.42773,192,200.45117C416,332.99609,276.69141,444.80859,233.99219,476.68359ZM368,212H320a79.999,79.999,0,0,0-80,80v12a16.00079,16.00079,0,0,0,16,16h48a80.00021,80.00021,0,0,0,80-80V228A15.99954,15.99954,0,0,0,368,212Zm-64,76H272.166A48.06494,48.06494,0,0,1,320,244h31.834A48.06645,48.06645,0,0,1,304,288ZM128,212H80a15.99954,15.99954,0,0,0-16,16v12a80.00021,80.00021,0,0,0,80,80h48a16.00079,16.00079,0,0,0,16-16V292A79.999,79.999,0,0,0,128,212Zm16,76a48.06645,48.06645,0,0,1-47.834-44H128a48.06494,48.06494,0,0,1,47.834,44Z\"]\n};\nvar faAlienMonster = {\n prefix: 'fal',\n iconName: 'alien-monster',\n icon: [576, 512, [], \"f8f6\", \"M192,320h32V224H192Zm160,0h32V224H352ZM544,112H512a32.03165,32.03165,0,0,0-32,32v16H416V128h32a32.03165,32.03165,0,0,0,32-32V64a32.03165,32.03165,0,0,0-32-32H416a32.03165,32.03165,0,0,0-32,32H352a32.03165,32.03165,0,0,0-32,32v32H256V96a32.03165,32.03165,0,0,0-32-32H192a32.03165,32.03165,0,0,0-32-32H128A32.03165,32.03165,0,0,0,96,64V96a32.03165,32.03165,0,0,0,32,32h32v32H96V144a32.03165,32.03165,0,0,0-32-32H32A32.03165,32.03165,0,0,0,0,144V288a32.03165,32.03165,0,0,0,32,32H64v32a32.03165,32.03165,0,0,0,32,32h32v64a32.03165,32.03165,0,0,0,32,32h80a32.03165,32.03165,0,0,0,32-32V416a32.03165,32.03165,0,0,0-32-32h96a32.03165,32.03165,0,0,0-32,32v32a32.03165,32.03165,0,0,0,32,32h80a32.03165,32.03165,0,0,0,32-32V384h32a32.03165,32.03165,0,0,0,32-32V320h32a32.03165,32.03165,0,0,0,32-32V144A32.03165,32.03165,0,0,0,544,112ZM416,64h32V96H416ZM128,96V64h32V96ZM240,448H160V384h32v32h48Zm176,0H336V416h48V384h32ZM544,288H480v64H96V288H32V144H64V256H96V192h96V96h32v64H352V96h32v96h96v64h32V144h32Z\"]\n};\nvar faAlignCenter = {\n prefix: 'fal',\n iconName: 'align-center',\n icon: [448, 512, [], \"f037\", \"M344 48H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h240a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8zm96 384H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm-96-128H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h240a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm96-128H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faAlignJustify = {\n prefix: 'fal',\n iconName: 'align-justify',\n icon: [448, 512, [], \"f039\", \"M439 48H7a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8zm0 384H7a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-128H7a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-128H7a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faAlignLeft = {\n prefix: 'fal',\n iconName: 'align-left',\n icon: [448, 512, [], \"f036\", \"M280 48H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h272a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8zm160 384H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM280 304H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h272a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm160-128H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faAlignRight = {\n prefix: 'fal',\n iconName: 'align-right',\n icon: [448, 512, [], \"f038\", \"M440 48H168a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h272a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8zm0 384H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-128H168a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h272a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-128H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faAlignSlash = {\n prefix: 'fal',\n iconName: 'align-slash',\n icon: [640, 512, [], \"f846\", \"M536 304h-77.57l40.64 32H536a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm8-120a8 8 0 0 0-8-8H295.89l40.63 32H536a8 8 0 0 0 8-8zm-8-104a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8H133.34L174 80zM96 328a8 8 0 0 0 8 8h240l-40.64-32H104a8 8 0 0 0-8 8zm541 157.32L23 1.8A7.86 7.86 0 0 0 11.79 3l-10 12.5A7.92 7.92 0 0 0 3 26.71l614 483.52a7.91 7.91 0 0 0 11.18-1.23l10-12.5a7.83 7.83 0 0 0-1.18-11.18zM104 432a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h402.55l-40.64-32zm0-224h77.45l-40.64-32H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8z\"]\n};\nvar faAllergies = {\n prefix: 'fal',\n iconName: 'allergies',\n icon: [448, 512, [], \"f461\", \"M240 416c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-160-32c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm192-96c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-64 64c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-64-32c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-64-32c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm216-176c-8.6 0-16.7 1.9-24 5.4V88c0-30.9-25.1-56-56-56-9.7 0-18.8 2.5-26.7 6.8C278 16.3 256.9 0 232 0s-46 16.3-53.3 38.8c-7.9-4.3-17-6.8-26.7-6.8-30.9 0-56 25.1-56 56v152.8c-11.5-11.8-42.1-27.7-72.1-6.7-25.3 17.7-31.5 52.7-13.8 78l113.7 171.3c11.9 17.9 31.8 28.6 53.3 28.6h180.6c30.4 0 56.8-21.6 62.8-51.4l20.6-103.2c4.5-22.7 6.8-45.9 6.8-69V168c.1-30.9-25-56-55.9-56zm24 176.3c0 21.1-2.1 42.1-6.2 62.8l-20.6 103.2c-3 15-16.1 25.7-31.4 25.7H177.2c-10.7 0-20.7-5.4-26.7-14.3L36.3 293.8c-7.6-10.9-5-25.8 5.9-33.4 15.8-11.1 30 1 33.4 5.9l37.8 54.4c4.5 6.4 14.6 3.3 14.6-4.6V88c0-13.3 10.7-24 24-24s24 10.7 24 24v160c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V56c0-13.3 10.7-24 24-24s24 10.7 24 24v192c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V88c0-13.3 10.7-24 24-24s24 10.7 24 24v160c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-80c0-13.3 10.7-24 24-24s24 10.7 24 24v120.3z\"]\n};\nvar faAmbulance = {\n prefix: 'fal',\n iconName: 'ambulance',\n icon: [640, 512, [], \"f0f9\", \"M296 192h-56v-56c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v56h-56c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h56v56c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-56h56c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zm336 192h-24V275.9c0-16.8-6.8-33.3-18.8-45.2l-83.9-83.9c-11.8-12-28.3-18.8-45.2-18.8H416V78.6c0-25.7-22.2-46.6-49.4-46.6H49.4C22.2 32 0 52.9 0 78.6v290.8C0 395.1 22.2 416 49.4 416h16.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-16h195.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-16H632c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-488 96c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm240-96H207.6C193 364.7 170 352 144 352s-49 12.7-63.6 32h-31c-9.6 0-17.4-6.5-17.4-14.6V78.6C32 70.5 39.8 64 49.4 64h317.2c9.6 0 17.4 6.5 17.4 14.6V384zm32-224h44.1c8.4 0 16.7 3.4 22.6 9.4l83.9 83.9c.8.8 1.1 1.9 1.8 2.8H416V160zm80 320c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-96h-16.4C545 364.7 522 352 496 352s-49 12.7-63.6 32H416v-96h160v96z\"]\n};\nvar faAmericanSignLanguageInterpreting = {\n prefix: 'fal',\n iconName: 'american-sign-language-interpreting',\n icon: [640, 512, [], \"f2a3\", \"M635.9 213.3c0-.1-41.3-83.1-41.3-83.1-9.6-19.3-33.6-28.5-54.4-18l-55.3 28-79-7.4c-5.1-.5-32.5-.7-59.3 15.8-7.5-14.4-18.5-20.5-32.9-26.1 17-32.5-6.9-77-51.8-70.8C263.5 24.2 241.8 0 213.4 0c-11.3 0-22.3 4-31.1 11.2-45 37.2-74.1 89.9-81.7 147.7L68 218.1l-48.1 27.6c-18.2 10.8-25 33.9-15.8 53.1 0 .1 41.3 83.1 41.3 83.1 9.6 19.3 33.6 28.5 54.4 18l55.3-28c81.1 7.5 81.2 7.5 82.7 7.5 19.9 0 39.1-5.7 55.6-15.9 4.7 9.1 12.2 16.4 21.5 21.1 2.6 1.3 7 3.3 11.3 5-16.9 32.3 6.9 77 51.8 70.8-1.6 27.8 20.7 51.5 48.6 51.5 11.3 0 22.4-4 31.1-11.3 45-37.3 74-89.9 81.7-147.6l32.6-59.2s48-27.6 48.1-27.6c18.2-10.7 25-33.8 15.8-52.9zm-339.6-26.9c-20.4-10.3-44.5-11.7-66.1-4-8.4 3-6.3 15.5 2.7 15.5 33.4 0 58.9 15.1 71.9 42.6 9.2 19.4-19.8 34.9-30 14.3-7-14.4-21.2-23.4-37-23.4-22.6 0-40.9 18.5-40.9 41.1 0 25.4 21.2 41.1 40.9 41.1 15.8 0 30-9 37-23.4 0 0 0-.1.1-.1 9.4-20.2 39.4-5.4 30 14.4-12.3 25.9-38.4 42.7-66.7 42.8-4.7-.4-64-5.9-87-8-1.5-.1-3 .1-4.3.8l-61.4 31.1c-4.1 2.1-9.2.5-11.3-3.6v-.1l-41.1-82.8c-2-4.2-.6-9.3 3.3-11.6l53.7-30.8c1.3-.7 2.3-1.8 3-3.1l38-69.1c.5-.9.8-1.9.9-3 5.7-51.7 30.9-98.3 70.9-131.4 16.6-13.9 38.7 11.3 21 26.1-12.5 10.7-23.1 22.4-31.5 34.8-4.9 7.3 3.9 16.1 11.1 11.1 19.9-13.6 41.8-22 65.2-24.8 8.6-1.1 17.1 4.3 18.5 14.6 1.2 9.3-5.1 17.7-14.4 18.7-15.4 1.9-30.2 7-44 15.3-7.7 4.6-3 16.6 5.8 14.7 24.3-5.4 52.8-1.7 76.2 9.7 20.6 10.4 4.6 39.9-14.5 30.5zM248 272.6c-2 3.3-3.6 9.1-10.2 9.1-2.8 0-8.9-2.3-8.9-9.1 0-5.1 3.9-9.1 8.9-9.1 6.6-.1 8.1 5.6 10.2 9.1zm355.8-33.9l-53.7 30.8c-1.3.7-2.3 1.8-3 3.1l-38 69.1c-.5.9-.8 1.9-.9 3-5.7 51.7-30.9 98.3-71 131.5-16.5 13.8-38.7-11.4-21-26.1 12.5-10.7 23.1-22.3 31.5-34.8 5-7.4-4-16-11.1-11.1-19.9 13.6-41.8 22-65.1 24.8-21.6 2.7-26.2-30.8-4.2-33.3 15.4-1.9 30.2-7 44-15.3 7.7-4.6 3-16.6-5.8-14.7-24.3 5.4-52.8 1.7-76.2-9.7-20.8-10.5-4.5-39.8 14.4-30.5 20.4 10.3 44.5 11.7 66.2 4 8.4-3 6.3-15.5-2.7-15.5-33.4 0-58.9-15.1-71.9-42.6-9.4-19.8 20.5-34.6 30-14.4l.1.1c7 14.4 21.2 23.4 37 23.4 22.6 0 40.9-18.5 40.9-41.1 0-25.4-21.2-41.1-40.9-41.1-15.8 0-30 9-37 23.4l-.1.1c-9.4 20.2-39.4 5.5-30-14.4 12.5-26.3 38.6-42.7 68.2-42.8l85.5 8c1.5.1 3-.1 4.4-.8l61.4-31.1c4.1-2.1 9.2-.5 11.3 3.6v.1l41.1 82.8c1.9 4.2.5 9.2-3.4 11.5zm-211.8.7c1.9-3.3 3.5-9.1 10.2-9.1 2.8 0 8.9 2.3 8.9 9.1 0 5.1-3.9 9.1-8.9 9.1-6.6.1-8.1-5.6-10.2-9.1z\"]\n};\nvar faAmpGuitar = {\n prefix: 'fal',\n iconName: 'amp-guitar',\n icon: [512, 512, [], \"f8a1\", \"M464 64h-77.19C357.9 36.07 310.29 0 256 0S154.1 36.07 125.19 64H48a48 48 0 0 0-48 48v352a48 48 0 0 0 48 48h416a48 48 0 0 0 48-48V112a48 48 0 0 0-48-48zM256 32c30.15 0 58.63 14.85 81.61 32H174.39c22.99-17.15 51.46-32 81.61-32zm224 432a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V288h448zm0-208H32V112a16 16 0 0 1 16-16h416a16 16 0 0 1 16 16zM112 128a48 48 0 1 0 48 48 48.05 48.05 0 0 0-48-48zm0 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm128-64a48 48 0 1 0 48 48 48.05 48.05 0 0 0-48-48zm0 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm176 160a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm0 64a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm-32-16a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm-32 16a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm-192 0a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm64 0a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm128-64a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm-64 64a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm-96-16a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm-32-48a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm-32 48a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm-32-48a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm224 48a16 16 0 1 0-16-16 16 16 0 0 0 16 16zM96 448a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm192-96a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm-32 48a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm-32-48a16 16 0 1 0-16-16 16 16 0 0 0 16 16z\"]\n};\nvar faAnalytics = {\n prefix: 'fal',\n iconName: 'analytics',\n icon: [576, 512, [], \"f643\", \"M80 352H16c-8.84 0-16 7.16-16 16v128c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V368c0-8.84-7.16-16-16-16zM64 480H32v-96h32v96zm496-288h-64c-8.84 0-16 7.16-16 16v288c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V208c0-8.84-7.16-16-16-16zm-16 288h-32V224h32v256zM502.77 88.68C510.12 93.24 518.71 96 528 96c26.51 0 48-21.49 48-48S554.51 0 528 0s-48 21.49-48 48c0 5.51 1.12 10.71 2.83 15.64l-89.6 71.68c-7.35-4.57-15.94-7.33-25.23-7.33s-17.88 2.76-25.23 7.33l-89.6-71.68C254.88 58.72 256 53.51 256 48c0-26.51-21.49-48-48-48s-48 21.49-48 48c0 7.4 1.81 14.32 4.8 20.58L68.58 164.8C62.32 161.81 55.4 160 48 160c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-7.4-1.81-14.32-4.8-20.58l96.22-96.22C193.68 94.19 200.6 96 208 96c9.29 0 17.88-2.76 25.23-7.33l89.6 71.68c-1.71 4.93-2.83 10.14-2.83 15.65 0 26.51 21.49 48 48 48s48-21.49 48-48c0-5.51-1.12-10.72-2.83-15.65l89.6-71.67zM528 32c8.82 0 16 7.18 16 16s-7.18 16-16 16-16-7.18-16-16 7.18-16 16-16zM48 224c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16zM208 64c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16zm160 128c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16zm-128 0h-64c-8.84 0-16 7.16-16 16v288c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V208c0-8.84-7.16-16-16-16zm-16 288h-32V224h32v256zm176-160h-64c-8.84 0-16 7.16-16 16v160c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V336c0-8.84-7.16-16-16-16zm-16 160h-32V352h32v128z\"]\n};\nvar faAnchor = {\n prefix: 'fal',\n iconName: 'anchor',\n icon: [576, 512, [], \"f13d\", \"M504.485 264.485c-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.485h49.129C461.111 420.749 390.501 473.6 304 479.452V192h52c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12h-52v-34.016c28.513-7.339 49.336-33.833 47.933-64.947-1.48-32.811-28.101-59.458-60.911-60.967C254.302-1.619 224 27.652 224 64c0 29.821 20.396 54.879 48 61.984V160h-52c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h52v287.452C185.498 473.6 114.888 420.749 97.901 352h49.129c10.691 0 16.045-12.926 8.485-20.485l-67.029-67.03c-4.686-4.686-12.284-4.686-16.971 0l-67.029 67.03C-3.074 339.074 2.28 352 12.971 352h52.136C83.963 448.392 182.863 512 288 512c110.901 0 204.938-68.213 222.893-160h52.136c10.691 0 16.045-12.926 8.485-20.485l-67.029-67.03zM256 64c0-17.645 14.355-32 32-32s32 14.355 32 32-14.355 32-32 32-32-14.355-32-32zM61.255 320L80 301.255 98.745 320h-37.49zm416 0L496 301.255 514.745 320h-37.49z\"]\n};\nvar faAngel = {\n prefix: 'fal',\n iconName: 'angel',\n icon: [576, 512, [], \"f779\", \"M176.7 137.3c.7-11.4 2.9-22.4 6.8-32.6-15-8.6-23.5-17.8-23.5-24.7 0-16.9 48.6-48 128-48s128 31.1 128 48c0 6.9-8.5 16.1-23.5 24.7 3.9 10.3 6.1 21.2 6.8 32.6 30-14.5 48.7-34.8 48.7-57.3 0-44.2-71.6-80-160-80S128 35.8 128 80c0 22.5 18.7 42.8 48.7 57.3zm395.8 327.3L534.3 386c-7.6-15.7-7.6-34.4 0-50.1 16.7-34.2 25.6-36.5 25.6-71.8 0-46.9-43.2-88-92.4-88-23 0-44.5 9.2-60.7 25.7l-67.5 68.1C324 261 306.4 256 288 256s-35.9 5-51.3 13.8l-67.5-68.1c-16.1-16.5-37.7-25.7-60.7-25.7-49.2 0-92.4 41.1-92.4 88 0 35.4 9 37.9 25.6 71.8 7.6 15.7 7.6 34.4 0 50.1L3.6 464.6C-8.1 488.5 11 512 32.6 512h510.8c22.2 0 40.5-24.1 29.1-47.4zM32.6 480l37.9-80.1c11.9-24.5 11.9-53.6 0-78.1C52.6 285 48.2 289.9 48.2 264c0-29.3 28.8-56 60.4-56 14.2 0 27.7 5.7 37.8 16.2l65.1 65.7c-6.3 6.9-11.7 14.8-16.1 23.4L112.1 480H32.6zm115.3 0L224 327.6c12.2-24.4 36.7-39.6 64-39.6 27.3 0 51.8 15.2 64 39.6L428.2 480H147.9zm316 0l-83.3-166.8c-4.3-8.6-9.8-16.4-16.1-23.4l65.1-65.7c10.1-10.4 23.6-16.2 37.8-16.2 31.6 0 60.4 26.7 60.4 56 0 26-4.5 21-22.4 57.8-11.9 24.5-11.9 53.6 0 78.1l37.9 80.1h-79.4zM208 144c0 44.2 35.8 80 80 80s80-35.8 80-80-35.8-80-80-80-80 35.8-80 80zm128 0c0 26.5-21.5 48-48 48s-48-21.5-48-48 21.5-48 48-48 48 21.5 48 48z\"]\n};\nvar faAngleDoubleDown = {\n prefix: 'fal',\n iconName: 'angle-double-down',\n icon: [256, 512, [], \"f103\", \"M119.5 262.9L3.5 145.1c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0L128 223.3l100.4-102.2c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17L136.5 263c-4.7 4.6-12.3 4.6-17-.1zm17 128l116-117.8c4.7-4.7 4.7-12.3 0-17l-7.1-7.1c-4.7-4.7-12.3-4.7-17 0L128 351.3 27.6 249.1c-4.7-4.7-12.3-4.7-17 0l-7.1 7.1c-4.7 4.7-4.7 12.3 0 17l116 117.8c4.7 4.6 12.3 4.6 17-.1z\"]\n};\nvar faAngleDoubleLeft = {\n prefix: 'fal',\n iconName: 'angle-double-left',\n icon: [320, 512, [], \"f100\", \"M153.1 247.5l117.8-116c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17L192.7 256l102.2 100.4c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.7-12.3 4.7-17 0L153 264.5c-4.6-4.7-4.6-12.3.1-17zm-128 17l117.8 116c4.7 4.7 12.3 4.7 17 0l7.1-7.1c4.7-4.7 4.7-12.3 0-17L64.7 256l102.2-100.4c4.7-4.7 4.7-12.3 0-17l-7.1-7.1c-4.7-4.7-12.3-4.7-17 0L25 247.5c-4.6 4.7-4.6 12.3.1 17z\"]\n};\nvar faAngleDoubleRight = {\n prefix: 'fal',\n iconName: 'angle-double-right',\n icon: [320, 512, [], \"f101\", \"M166.9 264.5l-117.8 116c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L127.3 256 25.1 155.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l117.8 116c4.6 4.7 4.6 12.3-.1 17zm128-17l-117.8-116c-4.7-4.7-12.3-4.7-17 0l-7.1 7.1c-4.7 4.7-4.7 12.3 0 17L255.3 256 153.1 356.4c-4.7 4.7-4.7 12.3 0 17l7.1 7.1c4.7 4.7 12.3 4.7 17 0l117.8-116c4.6-4.7 4.6-12.3-.1-17z\"]\n};\nvar faAngleDoubleUp = {\n prefix: 'fal',\n iconName: 'angle-double-up',\n icon: [256, 512, [], \"f102\", \"M136.5 249.1l116 117.8c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.7-12.3 4.7-17 0L128 288.7 27.6 390.9c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17l116-117.8c4.7-4.6 12.3-4.6 17 .1zm-17-128L3.5 238.9c-4.7 4.7-4.7 12.3 0 17l7.1 7.1c4.7 4.7 12.3 4.7 17 0L128 160.7l100.4 102.2c4.7 4.7 12.3 4.7 17 0l7.1-7.1c4.7-4.7 4.7-12.3 0-17L136.5 121c-4.7-4.6-12.3-4.6-17 .1z\"]\n};\nvar faAngleDown = {\n prefix: 'fal',\n iconName: 'angle-down',\n icon: [256, 512, [], \"f107\", \"M119.5 326.9L3.5 209.1c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0L128 287.3l100.4-102.2c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17L136.5 327c-4.7 4.6-12.3 4.6-17-.1z\"]\n};\nvar faAngleLeft = {\n prefix: 'fal',\n iconName: 'angle-left',\n icon: [192, 512, [], \"f104\", \"M25.1 247.5l117.8-116c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17L64.7 256l102.2 100.4c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.7-12.3 4.7-17 0L25 264.5c-4.6-4.7-4.6-12.3.1-17z\"]\n};\nvar faAngleRight = {\n prefix: 'fal',\n iconName: 'angle-right',\n icon: [192, 512, [], \"f105\", \"M166.9 264.5l-117.8 116c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L127.3 256 25.1 155.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l117.8 116c4.6 4.7 4.6 12.3-.1 17z\"]\n};\nvar faAngleUp = {\n prefix: 'fal',\n iconName: 'angle-up',\n icon: [256, 512, [], \"f106\", \"M136.5 185.1l116 117.8c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.7-12.3 4.7-17 0L128 224.7 27.6 326.9c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17l116-117.8c4.7-4.6 12.3-4.6 17 .1z\"]\n};\nvar faAngry = {\n prefix: 'fal',\n iconName: 'angry',\n icon: [496, 512, [], \"f556\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm0-136c-31.2 0-60.6 13.8-80.6 37.8-5.7 6.8-4.8 16.9 2 22.5s16.9 4.8 22.5-2c27.9-33.4 84.2-33.4 112.1 0 5.3 6.4 15.4 8 22.5 2 6.8-5.7 7.7-15.8 2-22.5-19.9-24-49.3-37.8-80.5-37.8zm-48-96c0-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.6-8.5-2.2-17.4-10.7-19.9l-80-24c-8.4-2.5-17.4 2.3-19.9 10.7-2.6 8.5 2.2 17.4 10.7 19.9l31 9.3c-6.3 5.8-10.5 14.1-10.5 23.4 0 17.7 14.3 32 32 32s32.1-14.3 32.1-32zm171.4-63.3l-80 24c-8.5 2.5-13.3 11.5-10.7 19.9 2.1 6.9 8.4 11.4 15.3 11.4.6 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 32s32-14.3 32-32c0-9.3-4.1-17.5-10.5-23.4l31-9.3c8.5-2.5 13.3-11.5 10.7-19.9-2.4-8.5-11.4-13.2-19.8-10.7z\"]\n};\nvar faAnkh = {\n prefix: 'fal',\n iconName: 'ankh',\n icon: [320, 512, [], \"f644\", \"M312 288h-96.58c36.8-35.94 72.58-96.37 72.58-150.86C288 52.98 230.69 0 160 0S32 52.98 32 137.14c0 54.49 35.78 114.91 72.58 150.86H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h136v184c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V320h136c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM64 137.14C64 75.24 103.48 32 160 32s96 43.24 96 105.14c0 71.78-75.25 149.02-95.79 150.86h-.03C139.25 286.16 64 208.93 64 137.14z\"]\n};\nvar faAppleAlt = {\n prefix: 'fal',\n iconName: 'apple-alt',\n icon: [448, 512, [], \"f5d1\", \"M224.48 128c21.33 0 59.54-3.73 83.67-27.86C343.08 65.21 335.26.75 335.26.75S329.08 0 319.52 0c-21.33 0-59.54 3.73-83.66 27.86-34.93 34.93-27.11 99.39-27.11 99.39s6.17.75 15.73.75zm34.01-77.52c11.49-11.5 30.05-15.92 44.67-17.57-1.79 15.7-6.59 33.54-17.64 44.6-11.5 11.49-30.05 15.92-44.66 17.57 1.79-15.78 6.58-33.55 17.63-44.6zm92.69 78.67c-4.46-.79-9.34-1.15-14.53-1.15-36.16 0-87.19 17.57-112.65 31.96C198.54 145.57 147.51 128 111.34 128c-5.19 0-10.07.36-14.53 1.15-81.24 14.3-107.41 124.49-93.09 205.6S65.02 512 160.41 512c12.06 0 24.12-4.61 34.44-10.34 9.04-5.02 19.1-7.52 29.16-7.52 10.06 0 20.12 2.51 29.16 7.52 10.32 5.73 22.38 10.34 34.43 10.34 95.39 0 142.36-96.14 156.68-177.25 14.32-81.11-11.84-191.3-93.1-205.6zm61.58 200.04C408.32 354.37 381.38 480 287.59 480c-4.85 0-11.56-2.24-18.91-6.33-13.61-7.55-29.06-11.54-44.68-11.54s-31.07 3.99-44.69 11.54c-7.34 4.08-14.05 6.32-18.9 6.32C66.62 480 39.69 354.37 35.24 329.18c-6.54-37.03-3.13-78.52 9.13-110.98 8.73-23.13 25.89-51.89 57.99-57.54 14.41-2.54 58.3.26 121.64 36.05 62.92-35.56 107.19-38.6 121.63-36.05 32.12 5.65 49.27 34.41 58 57.54 12.26 32.46 15.67 73.95 9.13 110.99z\"]\n};\nvar faAppleCrate = {\n prefix: 'fal',\n iconName: 'apple-crate',\n icon: [512, 512, [], \"f6b1\", \"M402.22 50.47c11.29-12.19 14.43-32.03 13.22-50.22-12.88-.86-35.67-.12-50.02 13.28-16.53 16.6-13.77 46.36-13.22 50.22 18.47 1.23 37.77-1.85 50.02-13.28zM496 224h-25.49c2.76-8.11 5.17-16.56 6.74-25.82 13.63-73.34-25.2-156.03-125.56-99.88-65.68-36.75-94.55-7.64-95.74-6.72-1.19-.92-30.28-30.02-95.94 6.72C59.44 42.04 20.98 125.78 34.44 198.18c1.56 9.26 3.98 17.71 6.74 25.82H16c-8.84 0-16 7.16-16 16v256c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16V240c0-8.84-7.16-16-16-16zm-159.94-97.77l15.62 8.74 15.62-8.74c54.74-30.63 67.11-3.69 67.76-2.75 12.04 17.42 14.51 48.48 10.63 69.37-1.98 11.71-5.51 21.76-9.67 31.15h-157.2c2.76-8.11 5.18-16.56 6.74-25.82 4.26-22.9 2.52-56.47-9.98-82.12 14.81-10.61 50.82 4.76 60.48 10.17zm-259.31-2.8c.65-.94 12.87-27.84 67.63 2.8l15.62 8.74 15.62-8.74c54.74-30.63 67.11-3.69 67.76-2.75 12.04 17.42 14.51 48.48 10.63 69.37-1.98 11.71-5.51 21.77-9.67 31.15H75.66c-4.17-9.45-7.73-19.63-9.77-31.66-3.82-20.61-.81-52.02 10.86-68.91zM480 480H32v-96h448v96zm0-128H32v-96h448v96zM80 320c8.84 0 16-7.16 16-16s-7.16-16-16-16-16 7.16-16 16 7.16 16 16 16zm0 128c8.84 0 16-7.16 16-16s-7.16-16-16-16-16 7.16-16 16 7.16 16 16 16zm352-128c8.84 0 16-7.16 16-16s-7.16-16-16-16-16 7.16-16 16 7.16 16 16 16zm0 128c8.84 0 16-7.16 16-16s-7.16-16-16-16-16 7.16-16 16 7.16 16 16 16zM210.53 50.47c11.29-12.19 14.43-32.03 13.22-50.22-12.88-.86-35.67-.12-50.02 13.28-16.53 16.6-13.77 46.36-13.22 50.22 18.47 1.23 37.77-1.85 50.02-13.28z\"]\n};\nvar faArchive = {\n prefix: 'fal',\n iconName: 'archive',\n icon: [512, 512, [], \"f187\", \"M464 32H48C21.5 32 0 53.5 0 80v64c0 8.8 7.2 16 16 16h16v272c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V160h16c8.8 0 16-7.2 16-16V80c0-26.5-21.5-48-48-48zm-16 400c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V160h384v272zm32-304H32V80c0-8.8 7.2-16 16-16h416c8.8 0 16 7.2 16 16v48zM204 256h104c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12H204c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12z\"]\n};\nvar faArchway = {\n prefix: 'fal',\n iconName: 'archway',\n icon: [576, 512, [], \"f557\", \"M568 32c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8H8C3.6 0 0 3.6 0 8v16c0 4.4 3.6 8 8 8h24v448H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h168c8.84 0 16-7.16 16-16V320c0-52.94 43.06-96 96-96s96 43.06 96 96v160l.02 16c0 8.84 7.16 16 16 16H568c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-24V32h24zm-56 448h-96V320c0-70.58-57.41-128-128-128s-128 57.42-128 128v160H64V128h448v352zm0-384H64V32h448v64z\"]\n};\nvar faArrowAltCircleDown = {\n prefix: 'fal',\n iconName: 'arrow-alt-circle-down',\n icon: [512, 512, [], \"f358\", \"M256 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 216zm-88-32h-64V120c0-13.2-10.8-24-24-24h-80c-13.2 0-24 10.8-24 24v104h-64c-28.4 0-42.8 34.5-22.6 54.6l128 128c12.5 12.5 32.8 12.5 45.3 0l128-128c20-20.1 5.8-54.6-22.7-54.6zM256 384L128 256h96V128h64v128h96L256 384z\"]\n};\nvar faArrowAltCircleLeft = {\n prefix: 'fal',\n iconName: 'arrow-alt-circle-left',\n icon: [512, 512, [], \"f359\", \"M504 256C504 119 393 8 256 8S8 119 8 256s111 248 248 248 248-111 248-248zM256 472c-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216zm32-88v-64h104c13.2 0 24-10.8 24-24v-80c0-13.2-10.8-24-24-24H288v-64c0-28.4-34.5-42.8-54.6-22.6l-128 128c-12.5 12.5-12.5 32.8 0 45.3l128 128c20.1 20 54.6 5.8 54.6-22.7zM128 256l128-128v96h128v64H256v96L128 256z\"]\n};\nvar faArrowAltCircleRight = {\n prefix: 'fal',\n iconName: 'arrow-alt-circle-right',\n icon: [512, 512, [], \"f35a\", \"M8 256c0 137 111 248 248 248s248-111 248-248S393 8 256 8 8 119 8 256zM256 40c118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216zm-32 88v64H120c-13.2 0-24 10.8-24 24v80c0 13.2 10.8 24 24 24h104v64c0 28.4 34.5 42.8 54.6 22.6l128-128c12.5-12.5 12.5-32.8 0-45.3l-128-128c-20.1-20-54.6-5.8-54.6 22.7zm160 128L256 384v-96H128v-64h128v-96l128 128z\"]\n};\nvar faArrowAltCircleUp = {\n prefix: 'fal',\n iconName: 'arrow-alt-circle-up',\n icon: [512, 512, [], \"f35b\", \"M256 504c137 0 248-111 248-248S393 8 256 8 8 119 8 256s111 248 248 248zM40 256c0-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-216zm88 32h64v104c0 13.2 10.8 24 24 24h80c13.2 0 24-10.8 24-24V288h64c28.4 0 42.8-34.5 22.6-54.6l-128-128c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-20 20.1-5.8 54.6 22.7 54.6zm128-160l128 128h-96v128h-64V256h-96l128-128z\"]\n};\nvar faArrowAltDown = {\n prefix: 'fal',\n iconName: 'arrow-alt-down',\n icon: [448, 512, [], \"f354\", \"M267.427 64C278.789 64 288 73.211 288 84.572v171.437h116.979c7.125 0 10.695 8.612 5.66 13.653L238.556 441.965c-8.036 8.046-21.076 8.047-29.112 0L37.36 269.662c-5.035-5.041-1.464-13.653 5.66-13.653H160V84.572C160 73.211 169.211 64 180.573 64h86.854m0-32h-86.855C151.584 32 128 55.584 128 84.572v139.437H43.021c-35.507 0-53.497 43.04-28.302 68.266l172.083 172.303c20.55 20.576 53.842 20.58 74.396 0l172.083-172.303c25.091-25.122 7.351-68.266-28.302-68.266H320V84.572C320 55.584 296.416 32 267.427 32z\"]\n};\nvar faArrowAltFromBottom = {\n prefix: 'fal',\n iconName: 'arrow-alt-from-bottom',\n icon: [384, 512, [], \"f346\", \"M372 480H12c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h360c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12zm-218.9-96h77.7c8.8 0 16-7.2 16-16V224h93.9c7.1 0 10.7-8.6 5.7-13.6L203.3 66.8c-6.3-6.3-16.4-6.3-22.7 0l-143 143.6c-5 5-1.5 13.6 5.7 13.6h93.9v144c-.1 8.8 7.1 16 15.9 16m0 32c-26.5 0-48-21.5-48-48V256H43.3c-35.6 0-53.4-43.1-28.3-68.2L158 44.2c18.8-18.8 49.2-18.8 68 0l143.1 143.5c25.2 25.2 7.2 68.2-28.3 68.2h-61.9v112c0 26.5-21.5 48-48 48h-77.8v.1z\"]\n};\nvar faArrowAltFromLeft = {\n prefix: 'fal',\n iconName: 'arrow-alt-from-left',\n icon: [448, 512, [], \"f347\", \"M0 436V76c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v360c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12zm96-218.9v77.7c0 8.8 7.2 16 16 16h144v93.9c0 7.1 8.6 10.7 13.6 5.7l141.6-143.1c6.3-6.3 6.3-16.4 0-22.7l-141.6-143c-5-5-13.6-1.5-13.6 5.7v93.9H112c-8.8-.1-16 7.1-16 15.9m-32 0c0-26.5 21.5-48 48-48h112v-61.9c0-35.6 43.1-53.4 68.2-28.3L433.9 222c18.8 18.8 18.8 49.2 0 68L292.2 433.1c-25.2 25.2-68.2 7.2-68.2-28.3v-61.9H112c-26.5 0-48-21.5-48-48v-77.8z\"]\n};\nvar faArrowAltFromRight = {\n prefix: 'fal',\n iconName: 'arrow-alt-from-right',\n icon: [448, 512, [], \"f348\", \"M448 76v360c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12V76c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12zm-96 218.9v-77.7c0-8.8-7.2-16-16-16H192v-93.9c0-7.1-8.6-10.7-13.6-5.7L36.7 244.7c-6.3 6.3-6.3 16.4 0 22.7l141.6 143.1c5 5 13.6 1.5 13.6-5.7v-93.9h144c8.9 0 16.1-7.2 16.1-16m32 0c0 26.5-21.5 48-48 48H224v61.9c0 35.6-43.1 53.4-68.2 28.3L14.1 290c-18.8-18.8-18.8-49.2 0-68L155.8 78.9C181 53.8 224 71.8 224 107.3v61.9h112c26.5 0 48 21.5 48 48v77.7z\"]\n};\nvar faArrowAltFromTop = {\n prefix: 'fal',\n iconName: 'arrow-alt-from-top',\n icon: [384, 512, [], \"f349\", \"M12 32h360c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12H12C5.4 64 0 58.6 0 52v-8c0-6.6 5.4-12 12-12zm218.9 96h-77.7c-8.8 0-16 7.2-16 16v144H43.3c-7.1 0-10.7 8.6-5.7 13.6l143.1 143.5c6.3 6.3 16.4 6.3 22.7 0l143.1-143.5c5-5 1.5-13.6-5.7-13.6h-93.9V144c0-8.8-7.2-16-16-16m0-32c26.5 0 48 21.5 48 48v112h61.9c35.6 0 53.4 43.1 28.3 68.2L226 467.8c-18.8 18.8-49.2 18.8-68 0L14.9 324.2C-10.2 299 7.8 256 43.3 256h61.9V144c0-26.5 21.5-48 48-48h77.7z\"]\n};\nvar faArrowAltLeft = {\n prefix: 'fal',\n iconName: 'arrow-alt-left',\n icon: [448, 512, [], \"f355\", \"M395.4 159.9H256V75c0-35.5-43-53.5-68.3-28.3L15.4 218.8c-20.6 20.6-20.6 53.8 0 74.4l172.3 172.1c25.1 25.1 68.3 7.4 68.3-28.3v-85h139.4c29 0 52.6-23.6 52.6-52.6v-86.9c0-29-23.6-52.6-52.6-52.6zM416 299.4c0 11.4-9.2 20.6-20.6 20.6H224v117c0 7.1-8.6 10.7-13.7 5.7L38 270.6c-8-8-8-21.1 0-29.1L210.3 69.4c5-5 13.7-1.5 13.7 5.7v117h171.4c11.4 0 20.6 9.2 20.6 20.6z\"]\n};\nvar faArrowAltRight = {\n prefix: 'fal',\n iconName: 'arrow-alt-right',\n icon: [448, 512, [], \"f356\", \"M32 212.57A20.57 20.57 0 0 1 52.57 192H224V75a8 8 0 0 1 13.66-5.66L410 241.44a20.56 20.56 0 0 1 0 29.11L237.66 442.63A8 8 0 0 1 224 437V320H52.57A20.57 20.57 0 0 1 32 299.42v-86.85m-32 0v86.85A52.63 52.63 0 0 0 52.57 352H192v85c0 35.51 43 53.5 68.27 28.3l172.3-172.08a52.55 52.55 0 0 0 0-74.4L260.27 46.71C235.15 21.62 192 39.36 192 75v85H52.57A52.63 52.63 0 0 0 0 212.57z\"]\n};\nvar faArrowAltSquareDown = {\n prefix: 'fal',\n iconName: 'arrow-alt-square-down',\n icon: [448, 512, [], \"f350\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352zm-64-208h-64V120c0-13.2-10.8-24-24-24h-80c-13.2 0-24 10.8-24 24v104H96c-28.4 0-42.8 34.5-22.6 54.6l128 128c12.5 12.5 32.8 12.5 45.3 0l128-128c20-20.1 5.8-54.6-22.7-54.6zM224 384L96 256h96V128h64v128h96L224 384z\"]\n};\nvar faArrowAltSquareLeft = {\n prefix: 'fal',\n iconName: 'arrow-alt-square-left',\n icon: [448, 512, [], \"f351\", \"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-48zM48 448c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48zm208-64v-64h104c13.2 0 24-10.8 24-24v-80c0-13.2-10.8-24-24-24H256v-64c0-28.4-34.5-42.8-54.6-22.6l-128 128c-12.5 12.5-12.5 32.8 0 45.3l128 128c20.1 20 54.6 5.8 54.6-22.7zM96 256l128-128v96h128v64H224v96L96 256z\"]\n};\nvar faArrowAltSquareRight = {\n prefix: 'fal',\n iconName: 'arrow-alt-square-right',\n icon: [448, 512, [], \"f352\", \"M0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H48C21.5 32 0 53.5 0 80zm400-16c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352zm-208 64v64H88c-13.2 0-24 10.8-24 24v80c0 13.2 10.8 24 24 24h104v64c0 28.4 34.5 42.8 54.6 22.6l128-128c12.5-12.5 12.5-32.8 0-45.3l-128-128c-20.1-20-54.6-5.8-54.6 22.7zm160 128L224 384v-96H96v-64h128v-96l128 128z\"]\n};\nvar faArrowAltSquareUp = {\n prefix: 'fal',\n iconName: 'arrow-alt-square-up',\n icon: [448, 512, [], \"f353\", \"M48 480h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48zM32 80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80zm64 208h64v104c0 13.2 10.8 24 24 24h80c13.2 0 24-10.8 24-24V288h64c28.4 0 42.8-34.5 22.6-54.6l-128-128c-12.5-12.5-32.8-12.5-45.3 0l-128 128C53.3 253.5 67.5 288 96 288zm128-160l128 128h-96v128h-64V256H96l128-128z\"]\n};\nvar faArrowAltToBottom = {\n prefix: 'fal',\n iconName: 'arrow-alt-to-bottom',\n icon: [384, 512, [], \"f34a\", \"M230.9 64c8.8 0 16 7.2 16 16v144h93.9c7.1 0 10.7 8.6 5.7 13.6L203.3 381.2c-6.3 6.3-16.4 6.3-22.7 0l-143-143.6c-5-5-1.5-13.6 5.7-13.6h93.9V80c0-8.8 7.2-16 16-16h77.7m0-32h-77.7c-26.5 0-48 21.5-48 48v112H43.3c-35.5 0-53.5 43-28.3 68.2l143 143.6c18.8 18.8 49.2 18.8 68 0l143.1-143.5c25.1-25.1 7.3-68.2-28.3-68.2h-61.9V80c0-26.5-21.6-48-48-48zM384 468v-8c0-6.6-5.4-12-12-12H12c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h360c6.6 0 12-5.4 12-12z\"]\n};\nvar faArrowAltToLeft = {\n prefix: 'fal',\n iconName: 'arrow-alt-to-left',\n icon: [448, 512, [], \"f34b\", \"M20 64h-8C5.4 64 0 69.4 0 76v360c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12zm380 105.2H288v-61.9c0-35.5-43-53.5-68.2-28.3L76.2 222c-18.8 18.8-18.8 49.2 0 68l143.5 143.1c25.1 25.1 68.2 7.3 68.2-28.3v-61.9h112c26.6 0 48.1-21.6 48.1-48v-77.7c0-26.5-21.5-48-48-48zm15.9 125.7c0 8.8-7.1 16-15.9 16H256v93.9c0 7.1-8.6 10.7-13.6 5.7L98.8 267.3c-6.3-6.3-6.3-16.4 0-22.7l143.5-143.1c5-5 13.6-1.5 13.6 5.7v93.9h144c8.8 0 16 7.2 16 16z\"]\n};\nvar faArrowAltToRight = {\n prefix: 'fal',\n iconName: 'arrow-alt-to-right',\n icon: [448, 512, [], \"f34c\", \"M32 217.1c0-8.8 7.2-16 16-16h144v-93.9c0-7.1 8.6-10.7 13.6-5.7l143.5 143.1c6.3 6.3 6.3 16.4 0 22.7L205.6 410.4c-5 5-13.6 1.5-13.6-5.7v-93.9H48c-8.8 0-16-7.2-16-16v-77.7m-32 0v77.7c0 26.5 21.5 48 48 48h112v61.9c0 35.5 43 53.5 68.2 28.3l143.6-143c18.8-18.8 18.8-49.2 0-68L228.2 78.9c-25.1-25.1-68.2-7.3-68.2 28.3v61.9H48c-26.5 0-48 21.6-48 48zM436 64h-8c-6.6 0-12 5.4-12 12v360c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12z\"]\n};\nvar faArrowAltToTop = {\n prefix: 'fal',\n iconName: 'arrow-alt-to-top',\n icon: [384, 512, [], \"f34d\", \"M153.1 448c-8.8 0-16-7.2-16-16V288H43.3c-7.1 0-10.7-8.6-5.7-13.6l143.1-143.5c6.3-6.3 16.4-6.3 22.7 0l143.1 143.5c5 5 1.5 13.6-5.7 13.6h-93.9v144c0 8.8-7.2 16-16 16h-77.8m0 32h77.7c26.5 0 48-21.5 48-48V320h61.9c35.5 0 53.5-43 28.3-68.2L226 108.2c-18.8-18.8-49.2-18.8-68 0L14.9 251.8c-25 25.1-7.3 68.2 28.4 68.2h61.9v112c-.1 26.5 21.5 48 47.9 48zM0 44v8c0 6.6 5.4 12 12 12h360c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12H12C5.4 32 0 37.4 0 44z\"]\n};\nvar faArrowAltUp = {\n prefix: 'fal',\n iconName: 'arrow-alt-up',\n icon: [448, 512, [], \"f357\", \"M180.573 448C169.211 448 160 438.789 160 427.428V255.991H43.021c-7.125 0-10.695-8.612-5.66-13.653L209.444 70.035c8.036-8.046 21.076-8.047 29.112 0L410.64 242.338c5.035 5.041 1.464 13.653-5.66 13.653H288v171.437C288 438.79 278.789 448 267.427 448h-86.854m0 32h86.855C296.416 480 320 456.416 320 427.428V287.991h84.979c35.507 0 53.497-43.04 28.302-68.266L261.198 47.422c-20.55-20.576-53.842-20.58-74.396 0L14.719 219.724c-25.091 25.122-7.351 68.266 28.302 68.266H128v139.437C128 456.416 151.584 480 180.573 480z\"]\n};\nvar faArrowCircleDown = {\n prefix: 'fal',\n iconName: 'arrow-circle-down',\n icon: [512, 512, [], \"f0ab\", \"M256 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 216zm-92.5-4.5l-6.9-6.9c-4.7-4.7-12.5-4.7-17.1.2L273 330.3V140c0-6.6-5.4-12-12-12h-10c-6.6 0-12 5.4-12 12v190.3l-82.5-85.6c-4.7-4.8-12.4-4.9-17.1-.2l-6.9 6.9c-4.7 4.7-4.7 12.3 0 17l115 115.1c4.7 4.7 12.3 4.7 17 0l115-115.1c4.7-4.6 4.7-12.2 0-16.9z\"]\n};\nvar faArrowCircleLeft = {\n prefix: 'fal',\n iconName: 'arrow-circle-left',\n icon: [512, 512, [], \"f0a8\", \"M504 256C504 119 393 8 256 8S8 119 8 256s111 248 248 248 248-111 248-248zM256 472c-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216zm-12.5-92.5l-115.1-115c-4.7-4.7-4.7-12.3 0-17l115.1-115c4.7-4.7 12.3-4.7 17 0l6.9 6.9c4.7 4.7 4.7 12.5-.2 17.1L181.7 239H372c6.6 0 12 5.4 12 12v10c0 6.6-5.4 12-12 12H181.7l85.6 82.5c4.8 4.7 4.9 12.4.2 17.1l-6.9 6.9c-4.8 4.7-12.4 4.7-17.1 0z\"]\n};\nvar faArrowCircleRight = {\n prefix: 'fal',\n iconName: 'arrow-circle-right',\n icon: [512, 512, [], \"f0a9\", \"M8 256c0 137 111 248 248 248s248-111 248-248S393 8 256 8 8 119 8 256zM256 40c118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216zm12.5 92.5l115.1 115c4.7 4.7 4.7 12.3 0 17l-115.1 115c-4.7 4.7-12.3 4.7-17 0l-6.9-6.9c-4.7-4.7-4.7-12.5.2-17.1l85.6-82.5H140c-6.6 0-12-5.4-12-12v-10c0-6.6 5.4-12 12-12h190.3l-85.6-82.5c-4.8-4.7-4.9-12.4-.2-17.1l6.9-6.9c4.8-4.7 12.4-4.7 17.1 0z\"]\n};\nvar faArrowCircleUp = {\n prefix: 'fal',\n iconName: 'arrow-circle-up',\n icon: [512, 512, [], \"f0aa\", \"M256 504c137 0 248-111 248-248S393 8 256 8 8 119 8 256s111 248 248 248zM40 256c0-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-216zm92.5-12.5l115-115.1c4.7-4.7 12.3-4.7 17 0l115 115.1c4.7 4.7 4.7 12.3 0 17l-6.9 6.9c-4.7 4.7-12.5 4.7-17.1-.2L273 181.7V372c0 6.6-5.4 12-12 12h-10c-6.6 0-12-5.4-12-12V181.7l-82.5 85.6c-4.7 4.8-12.4 4.9-17.1.2l-6.9-6.9c-4.7-4.8-4.7-12.4 0-17.1z\"]\n};\nvar faArrowDown = {\n prefix: 'fal',\n iconName: 'arrow-down',\n icon: [448, 512, [], \"f063\", \"M443.5 248.5l-7.1-7.1c-4.7-4.7-12.3-4.7-17 0L241 419.9V44c0-6.6-5.4-12-12-12h-10c-6.6 0-12 5.4-12 12v375.9L28.5 241.4c-4.7-4.7-12.3-4.7-17 0l-7.1 7.1c-4.7 4.7-4.7 12.3 0 17l211 211.1c4.7 4.7 12.3 4.7 17 0l211-211.1c4.8-4.8 4.8-12.3.1-17z\"]\n};\nvar faArrowFromBottom = {\n prefix: 'fal',\n iconName: 'arrow-from-bottom',\n icon: [384, 512, [], \"f342\", \"M35.5 184l148-148.5c4.7-4.7 12.3-4.7 17 0l148 148.5c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.7-12.3 4.7-17 0L209 92.1V404c0 6.6-5.4 12-12 12h-10c-6.6 0-12-5.4-12-12V92.1L59.6 208c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.6-4.7-12.2 0-16.9zM384 468v-8c0-6.6-5.4-12-12-12H12c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h360c6.6 0 12-5.4 12-12z\"]\n};\nvar faArrowFromLeft = {\n prefix: 'fal',\n iconName: 'arrow-from-left',\n icon: [448, 512, [], \"f343\", \"M296 99.5l148.5 148c4.7 4.7 4.7 12.3 0 17L296 412.5c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17l116-115.4H76c-6.6 0-12-5.4-12-12v-10c0-6.6 5.4-12 12-12h311.9L272 123.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.6-4.7 12.2-4.7 16.9 0zM12 448h8c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12h-8C5.4 64 0 69.4 0 76v360c0 6.6 5.4 12 12 12z\"]\n};\nvar faArrowFromRight = {\n prefix: 'fal',\n iconName: 'arrow-from-right',\n icon: [448, 512, [], \"f344\", \"M152 412.5L3.5 264.5c-4.7-4.7-4.7-12.3 0-17L152 99.5c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17L60.1 239H372c6.6 0 12 5.4 12 12v10c0 6.6-5.4 12-12 12H60.1L176 388.4c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.6 4.7-12.2 4.7-16.9 0zM436 64h-8c-6.6 0-12 5.4-12 12v360c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12z\"]\n};\nvar faArrowFromTop = {\n prefix: 'fal',\n iconName: 'arrow-from-top',\n icon: [384, 512, [], \"f345\", \"M348.5 328l-148 148.5c-4.7 4.7-12.3 4.7-17 0L35.5 328c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l115.4 116V108c0-6.6 5.4-12 12-12h10c6.6 0 12 5.4 12 12v311.9L324.4 304c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.6 4.7 12.2 0 16.9zM0 44v8c0 6.6 5.4 12 12 12h360c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12H12C5.4 32 0 37.4 0 44z\"]\n};\nvar faArrowLeft = {\n prefix: 'fal',\n iconName: 'arrow-left',\n icon: [448, 512, [], \"f060\", \"M231.536 475.535l7.071-7.07c4.686-4.686 4.686-12.284 0-16.971L60.113 273H436c6.627 0 12-5.373 12-12v-10c0-6.627-5.373-12-12-12H60.113L238.607 60.506c4.686-4.686 4.686-12.284 0-16.971l-7.071-7.07c-4.686-4.686-12.284-4.686-16.97 0L3.515 247.515c-4.686 4.686-4.686 12.284 0 16.971l211.051 211.05c4.686 4.686 12.284 4.686 16.97-.001z\"]\n};\nvar faArrowRight = {\n prefix: 'fal',\n iconName: 'arrow-right',\n icon: [448, 512, [], \"f061\", \"M216.464 36.465l-7.071 7.07c-4.686 4.686-4.686 12.284 0 16.971L387.887 239H12c-6.627 0-12 5.373-12 12v10c0 6.627 5.373 12 12 12h375.887L209.393 451.494c-4.686 4.686-4.686 12.284 0 16.971l7.071 7.07c4.686 4.686 12.284 4.686 16.97 0l211.051-211.05c4.686-4.686 4.686-12.284 0-16.971L233.434 36.465c-4.686-4.687-12.284-4.687-16.97 0z\"]\n};\nvar faArrowSquareDown = {\n prefix: 'fal',\n iconName: 'arrow-square-down',\n icon: [448, 512, [], \"f339\", \"M347.5 268.5l-115 115.1c-4.7 4.7-12.3 4.7-17 0l-115-115.1c-4.7-4.7-4.7-12.3 0-17l6.9-6.9c4.7-4.7 12.5-4.7 17.1.2l82.5 85.6V140c0-6.6 5.4-12 12-12h10c6.6 0 12 5.4 12 12v190.3l82.5-85.6c4.7-4.8 12.4-4.9 17.1-.2l6.9 6.9c4.7 4.8 4.7 12.4 0 17.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-32 0c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v352c0 8.8 7.2 16 16 16h352c8.8 0 16-7.2 16-16V80z\"]\n};\nvar faArrowSquareLeft = {\n prefix: 'fal',\n iconName: 'arrow-square-left',\n icon: [448, 512, [], \"f33a\", \"M211.5 379.5l-115.1-115c-4.7-4.7-4.7-12.3 0-17l115.1-115c4.7-4.7 12.3-4.7 17 0l6.9 6.9c4.7 4.7 4.7 12.5-.2 17.1L149.7 239H340c6.6 0 12 5.4 12 12v10c0 6.6-5.4 12-12 12H149.7l85.6 82.5c4.8 4.7 4.9 12.4.2 17.1l-6.9 6.9c-4.8 4.7-12.4 4.7-17.1 0zM400 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 48zm0-32c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v352c0 8.8 7.2 16 16 16h352z\"]\n};\nvar faArrowSquareRight = {\n prefix: 'fal',\n iconName: 'arrow-square-right',\n icon: [448, 512, [], \"f33b\", \"M236.5 132.5l115.1 115c4.7 4.7 4.7 12.3 0 17l-115.1 115c-4.7 4.7-12.3 4.7-17 0l-6.9-6.9c-4.7-4.7-4.7-12.5.2-17.1l85.6-82.5H108c-6.6 0-12-5.4-12-12v-10c0-6.6 5.4-12 12-12h190.3l-85.6-82.5c-4.8-4.7-4.9-12.4-.2-17.1l6.9-6.9c4.8-4.7 12.4-4.7 17.1 0zM48 32h352c26.5 0 48 21.5 48 48v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48zm0 32c-8.8 0-16 7.2-16 16v352c0 8.8 7.2 16 16 16h352c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16H48z\"]\n};\nvar faArrowSquareUp = {\n prefix: 'fal',\n iconName: 'arrow-square-up',\n icon: [448, 512, [], \"f33c\", \"M100.5 243.5l115-115.1c4.7-4.7 12.3-4.7 17 0l115 115.1c4.7 4.7 4.7 12.3 0 17l-6.9 6.9c-4.7 4.7-12.5 4.7-17.1-.2L241 181.7V372c0 6.6-5.4 12-12 12h-10c-6.6 0-12-5.4-12-12V181.7l-82.5 85.6c-4.7 4.8-12.4 4.9-17.1.2l-6.9-6.9c-4.7-4.8-4.7-12.4 0-17.1zM0 432V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48zm32 0c0 8.8 7.2 16 16 16h352c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v352z\"]\n};\nvar faArrowToBottom = {\n prefix: 'fal',\n iconName: 'arrow-to-bottom',\n icon: [384, 512, [], \"f33d\", \"M348.5 264l-148 148.5c-4.7 4.7-12.3 4.7-17 0L35.5 264c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l115.4 116V44c0-6.6 5.4-12 12-12h10c6.6 0 12 5.4 12 12v311.9L324.4 240c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.6 4.7 12.2 0 16.9zM384 468v-8c0-6.6-5.4-12-12-12H12c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h360c6.6 0 12-5.4 12-12z\"]\n};\nvar faArrowToLeft = {\n prefix: 'fal',\n iconName: 'arrow-to-left',\n icon: [448, 512, [], \"f33e\", \"M216 412.5l-148.5-148c-4.7-4.7-4.7-12.3 0-17L216 99.5c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17L124.1 239H436c6.6 0 12 5.4 12 12v10c0 6.6-5.4 12-12 12H124.1L240 388.4c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.6 4.7-12.2 4.7-16.9 0zM12 448h8c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12h-8C5.4 64 0 69.4 0 76v360c0 6.6 5.4 12 12 12z\"]\n};\nvar faArrowToRight = {\n prefix: 'fal',\n iconName: 'arrow-to-right',\n icon: [448, 512, [], \"f340\", \"M215 99.5l-7.1 7.1c-4.7 4.7-4.7 12.3 0 17l116 115.4H12c-6.6 0-12 5.4-12 12v10c0 6.6 5.4 12 12 12h311.9L208 388.4c-4.7 4.7-4.7 12.3 0 17l7.1 7.1c4.7 4.7 12.3 4.7 17 0l148.5-148c4.7-4.7 4.7-12.3 0-17L232 99.5c-4.7-4.7-12.3-4.7-17 0zM448 76v360c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12V76c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12z\"]\n};\nvar faArrowToTop = {\n prefix: 'fal',\n iconName: 'arrow-to-top',\n icon: [384, 512, [], \"f341\", \"M35.5 248l148-148.5c4.7-4.7 12.3-4.7 17 0l148 148.5c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.7-12.3 4.7-17 0L209 156.1V468c0 6.6-5.4 12-12 12h-10c-6.6 0-12-5.4-12-12V156.1L59.6 272c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.6-4.7-12.2 0-16.9zM0 44v8c0 6.6 5.4 12 12 12h360c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12H12C5.4 32 0 37.4 0 44z\"]\n};\nvar faArrowUp = {\n prefix: 'fal',\n iconName: 'arrow-up',\n icon: [448, 512, [], \"f062\", \"M4.465 263.536l7.07 7.071c4.686 4.686 12.284 4.686 16.971 0L207 92.113V468c0 6.627 5.373 12 12 12h10c6.627 0 12-5.373 12-12V92.113l178.494 178.493c4.686 4.686 12.284 4.686 16.971 0l7.07-7.071c4.686-4.686 4.686-12.284 0-16.97l-211.05-211.05c-4.686-4.686-12.284-4.686-16.971 0L4.465 246.566c-4.687 4.686-4.687 12.284 0 16.97z\"]\n};\nvar faArrows = {\n prefix: 'fal',\n iconName: 'arrows',\n icon: [512, 512, [], \"f047\", \"M337.782 434.704l-73.297 73.782c-4.686 4.686-12.284 4.686-16.971 0l-73.296-73.782c-4.686-4.686-4.686-12.284 0-16.97l7.07-7.07c4.686-4.686 12.284-4.686 16.971 0L239 451.887h1V272H60.113v1l41.224 40.741c4.686 4.686 4.686 12.284 0 16.971l-7.071 7.07c-4.686 4.686-12.284 4.686-16.97 0L3.515 264.485c-4.686-4.686-4.686-12.284 0-16.971l73.782-73.297c4.686-4.686 12.284-4.686 16.971 0l7.071 7.071c4.686 4.686 4.686 12.284 0 16.971L60.113 239v1H240V60.113h-1l-40.741 41.224c-4.686 4.686-12.284 4.686-16.971 0l-7.07-7.071c-4.686-4.686-4.687-12.284 0-16.97l73.297-73.782c4.686-4.686 12.284-4.686 16.971 0l73.297 73.782c4.686 4.686 4.686 12.284 0 16.971l-7.071 7.071c-4.686 4.686-12.284 4.686-16.971 0L273 60.113h-1V240h179.887v-1l-41.224-40.741c-4.686-4.686-4.686-12.284 0-16.971l7.071-7.07c4.686-4.686 12.284-4.686 16.97 0l73.782 73.297c4.687 4.686 4.686 12.284 0 16.971l-73.782 73.297c-4.686 4.686-12.284 4.686-16.97 0l-7.071-7.07c-4.686-4.686-4.686-12.284 0-16.971L451.887 273v-1H272v179.887h1l40.741-41.224c4.686-4.686 12.284-4.686 16.971 0l7.07 7.071c4.686 4.685 4.686 12.283 0 16.97z\"]\n};\nvar faArrowsAlt = {\n prefix: 'fal',\n iconName: 'arrows-alt',\n icon: [512, 512, [], \"f0b2\", \"M502.3 232.7l-66.5-66.5c-20.7-20.7-56.3-6-56.3 23.3V240H272V132.4h50.5c29.3 0 44.1-35.5 23.3-56.3L279.3 9.7c-12.9-12.9-33.8-12.9-46.6 0l-66.5 66.5c-20.7 20.7-6 56.3 23.3 56.3H240V240H132.4v-50.5c0-29.3-35.5-44.1-56.3-23.3L9.7 232.7c-12.9 12.9-12.9 33.8 0 46.6l66.5 66.5c20.7 20.7 56.3 6 56.3-23.3V272H240v107.6h-50.5c-29.3 0-44.1 35.5-23.3 56.3l66.5 66.5c12.9 12.9 33.8 12.9 46.6 0l66.5-66.5c20.7-20.7 6-56.3-23.3-56.3H272V272h107.6v50.5c0 29.3 35.5 44.1 56.3 23.3l66.5-66.5c12.8-12.9 12.8-33.7-.1-46.6zm-398.7 89.8c0 3.7-4.4 5.5-7 2.9l-66.5-66.5c-1.6-1.6-1.6-4.2 0-5.8l66.5-66.5c2.6-2.6 7-.7 7 2.9zm218.9 85.9c3.7 0 5.5 4.4 2.9 7l-66.5 66.5c-1.6 1.6-4.2 1.6-5.8 0l-66.5-66.5c-2.6-2.6-.7-7 2.9-7zm-133-304.8c-3.7 0-5.5-4.4-2.9-7l66.5-66.5c1.6-1.6 4.2-1.6 5.8 0l66.5 66.5c2.6 2.6.7 7-2.9 7zm292.4 155.3l-66.5 66.5c-2.6 2.6-7 .7-7-2.9V189.6c0-3.7 4.4-5.5 7-2.9l66.5 66.5c1.7 1.5 1.7 4.1 0 5.7z\"]\n};\nvar faArrowsAltH = {\n prefix: 'fal',\n iconName: 'arrows-alt-h',\n icon: [512, 512, [], \"f337\", \"M502.6 233.4l-64-64c-20.1-20.1-54.6-5.9-54.6 22.6v47H128v-47c0-28.4-34.5-42.8-54.6-22.6l-64 64c-12.5 12.5-12.5 32.8 0 45.3l64 64c20.1 20.1 54.6 5.9 54.6-22.6v-47h256v47c0 28.4 34.5 42.8 54.6 22.6l64-64c12.5-12.6 12.5-32.8 0-45.3zM100 320c0 3.5-4.3 5.4-6.8 2.8l-64-64c-1.6-1.6-1.6-4.1 0-5.6l64-64c2.5-2.5 6.8-.7 6.8 2.8zm382.8-61.2l-64 64c-2.5 2.5-6.8.7-6.8-2.8V192c0-3.5 4.3-5.4 6.8-2.8l64 64c1.6 1.5 1.6 4.1 0 5.6z\"]\n};\nvar faArrowsAltV = {\n prefix: 'fal',\n iconName: 'arrows-alt-v',\n icon: [192, 512, [], \"f338\", \"M160 384h-47V128h47c28.4 0 42.8-34.5 22.6-54.6l-64-64c-12.5-12.5-32.8-12.5-45.3 0l-64 64C-10.7 93.5 3.5 128 32 128h47v256H32c-28.4 0-42.8 34.5-22.6 54.6l64 64c12.5 12.5 32.8 12.5 45.3 0l64-64c20-20.1 5.8-54.6-22.7-54.6zM32 100c-3.5 0-5.4-4.3-2.8-6.8l64-64c1.6-1.6 4.1-1.6 5.6 0l64 64c2.5 2.5.7 6.8-2.8 6.8zm130.8 318.8l-64 64c-1.6 1.6-4.1 1.6-5.6 0l-64-64c-2.5-2.5-.7-6.8 2.8-6.8h128c3.5 0 5.3 4.3 2.8 6.8z\"]\n};\nvar faArrowsH = {\n prefix: 'fal',\n iconName: 'arrows-h',\n icon: [512, 512, [], \"f07e\", \"M399.959 170.585c-4.686 4.686-4.686 12.284 0 16.971L451.887 239H60.113l51.928-51.444c4.686-4.686 4.686-12.284 0-16.971l-7.071-7.07c-4.686-4.686-12.284-4.686-16.97 0l-84.485 84c-4.686 4.686-4.686 12.284 0 16.971l84.485 84c4.686 4.686 12.284 4.686 16.97 0l7.071-7.07c4.686-4.686 4.686-12.284 0-16.971L60.113 273h391.773l-51.928 51.444c-4.686 4.686-4.686 12.284 0 16.971l7.071 7.07c4.686 4.686 12.284 4.686 16.97 0l84.485-84c4.687-4.686 4.687-12.284 0-16.971l-84.485-84c-4.686-4.686-12.284-4.686-16.97 0l-7.07 7.071z\"]\n};\nvar faArrowsV = {\n prefix: 'fal',\n iconName: 'arrows-v',\n icon: [192, 512, [], \"f07d\", \"M181.415 399.959c-4.686-4.686-12.284-4.686-16.971 0L113 451.887V60.113l51.444 51.928c4.686 4.686 12.284 4.686 16.971 0l7.07-7.071c4.686-4.686 4.686-12.284 0-16.97l-84-84.485c-4.686-4.686-12.284-4.686-16.971 0L3.515 88c-4.686 4.686-4.686 12.284 0 16.97l7.07 7.071c4.686 4.686 12.284 4.686 16.971 0L79 60.113v391.773l-51.444-51.928c-4.686-4.686-12.284-4.686-16.971 0l-7.07 7.071c-4.686 4.686-4.686 12.284 0 16.97l84 84.485c4.686 4.687 12.284 4.687 16.971 0l84-84.485c4.686-4.686 4.686-12.284 0-16.97l-7.071-7.07z\"]\n};\nvar faAssistiveListeningSystems = {\n prefix: 'fal',\n iconName: 'assistive-listening-systems',\n icon: [512, 512, [], \"f2a2\", \"M217.6 512c-8.837 0-16-7.163-16-16s7.163-16 16-16c41.172 0 74.667-33.495 74.667-74.666 0-85.174 73.391-93.9 73.391-165.334 0-71.167-57.899-129.066-129.067-129.066-71.167 0-129.066 57.899-129.066 129.066 0 8.837-7.163 16-16 16s-16-7.163-16-16c0-88.812 72.254-161.066 161.066-161.066S397.657 151.188 397.657 240c0 86.857-73.391 96.041-73.391 165.334C324.267 464.149 276.416 512 217.6 512zm115.733-272c0-53.816-43.783-97.6-97.6-97.6s-97.6 43.783-97.6 97.6c0 8.837 7.163 16 16 16s16-7.163 16-16c0-36.172 29.428-65.6 65.6-65.6s65.6 29.428 65.6 65.6c0 8.837 7.163 16 16 16s16-7.163 16-16zm106.47-45.984c8.448-2.591 13.195-11.541 10.604-19.988-14.644-47.732-45.384-89.796-86.559-118.441-7.254-5.046-17.226-3.259-22.271 3.996-5.047 7.254-3.258 17.226 3.996 22.271 35.322 24.574 61.688 60.643 74.242 101.559 2.593 8.453 11.545 13.193 19.988 10.603zm60.888-18.65c8.447-2.594 13.193-11.544 10.601-19.991C492.386 93.787 452.886 39.627 400.059 2.868c-7.253-5.046-17.225-3.259-22.272 3.995-5.047 7.253-3.258 17.225 3.995 22.272 46.978 32.688 82.105 80.855 98.918 135.631 2.593 8.447 11.541 13.192 19.991 10.6zM240 256c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm-64 64c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm-96 96c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm-64 64c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm155.313-75.313l-64-64-22.627 22.627 64 64 22.627-22.627z\"]\n};\nvar faAsterisk = {\n prefix: 'fal',\n iconName: 'asterisk',\n icon: [512, 512, [], \"f069\", \"M475.31 364.144L288 256l187.31-108.144c5.74-3.314 7.706-10.653 4.392-16.392l-4-6.928c-3.314-5.74-10.653-7.706-16.392-4.392L272 228.287V12c0-6.627-5.373-12-12-12h-8c-6.627 0-12 5.373-12 12v216.287L52.69 120.144c-5.74-3.314-13.079-1.347-16.392 4.392l-4 6.928c-3.314 5.74-1.347 13.079 4.392 16.392L224 256 36.69 364.144c-5.74 3.314-7.706 10.653-4.392 16.392l4 6.928c3.314 5.74 10.653 7.706 16.392 4.392L240 283.713V500c0 6.627 5.373 12 12 12h8c6.627 0 12-5.373 12-12V283.713l187.31 108.143c5.74 3.314 13.079 1.347 16.392-4.392l4-6.928c3.314-5.74 1.347-13.079-4.392-16.392z\"]\n};\nvar faAt = {\n prefix: 'fal',\n iconName: 'at',\n icon: [512, 512, [], \"f1fa\", \"M256 8C118.941 8 8 118.919 8 256c0 137.058 110.919 248 248 248 52.925 0 104.68-17.078 147.092-48.319 5.501-4.052 6.423-11.924 2.095-17.211l-5.074-6.198c-4.018-4.909-11.193-5.883-16.307-2.129C346.93 457.208 301.974 472 256 472c-119.373 0-216-96.607-216-216 0-119.375 96.607-216 216-216 118.445 0 216 80.024 216 200 0 72.873-52.819 108.241-116.065 108.241-19.734 0-23.695-10.816-19.503-33.868l32.07-164.071c1.449-7.411-4.226-14.302-11.777-14.302h-12.421a12 12 0 0 0-11.781 9.718c-2.294 11.846-2.86 13.464-3.861 25.647-11.729-27.078-38.639-43.023-73.375-43.023-68.044 0-133.176 62.95-133.176 157.027 0 61.587 33.915 98.354 90.723 98.354 39.729 0 70.601-24.278 86.633-46.982-1.211 27.786 17.455 42.213 45.975 42.213C453.089 378.954 504 321.729 504 240 504 103.814 393.863 8 256 8zm-37.92 342.627c-36.681 0-58.58-25.108-58.58-67.166 0-74.69 50.765-121.545 97.217-121.545 38.857 0 58.102 27.79 58.102 65.735 0 58.133-38.369 122.976-96.739 122.976z\"]\n};\nvar faAtlas = {\n prefix: 'fal',\n iconName: 'atlas',\n icon: [448, 512, [], \"f558\", \"M448 392V24c0-13.3-10.7-24-24-24H80C35.8 0 0 35.8 0 80v368c0 35.35 28.65 64 64 64h372c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-3.3c-4-20.2-3.2-49.7.4-65.8 8.7-3.6 14.9-12.2 14.9-22.2zm-43.7 88H64c-17.67 0-32-14.33-32-32s14.33-32 32-32h340.3c-2.9 18.8-3.1 43.6 0 64zm11.7-96H64c-11.72 0-22.55 3.38-32 8.88V80c0-26.5 21.5-48 48-48h336v352zm-192-48c70.69 0 128-57.31 128-128S294.69 80 224 80 96 137.31 96 208s57.31 128 128 128zm94.38-144h-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.41zm-39.09 32h39.09c-5.29 31.22-25.59 57.17-53.3 70.41 7.68-19.06 12.72-43.38 14.21-70.41zM224 113.31c7.69 7.45 20.77 34.42 23.43 78.69h-46.87c2.67-44.26 15.75-71.24 23.44-78.69zM247.43 224c-2.66 44.26-15.74 71.24-23.43 78.69-7.69-7.45-20.77-34.42-23.43-78.69h46.86zm-64.51-102.41c-7.68 19.06-12.72 43.38-14.21 70.41h-39.09c5.28-31.22 25.59-57.17 53.3-70.41zM168.71 224c1.49 27.03 6.54 51.35 14.21 70.41-27.71-13.24-48.02-39.19-53.3-70.41h39.09z\"]\n};\nvar faAtom = {\n prefix: 'fal',\n iconName: 'atom',\n icon: [448, 512, [], \"f5d2\", \"M224,200a56,56,0,1,0,56.00149,56A56.06868,56.06868,0,0,0,224,200Zm0,80a24,24,0,1,1,24.00064-24A24.00651,24.00651,0,0,1,224,280Zm188.72376-24c15.56292-20.26562,26.71946-40.625,31.9071-60,6.03141-22.60938,3.9376-43.42188-6.06266-60.1875-18.21924-30.5-60.34535-42.96875-113.503-38.4375C301.81457,37.8125,265.5636,0,224,0S146.18543,37.8125,122.96607,97.375c-53.18892-4.53125-95.315,7.92188-113.503,38.4375C-.56846,152.57812-2.66227,173.39062,3.36914,196c5.18764,19.375,16.34418,39.73438,31.9071,60-15.56292,20.26562-26.71946,40.625-31.9071,60-6.03141,22.60938-3.9376,43.42188,6.06266,60.1875,15.84417,26.5,49.59507,39.51562,93.03372,39.51562,6.37517,0,13.50036-1.14062,20.25054-1.70312C145.96668,473.92188,182.31139,512,224,512s78.03332-38.07812,101.28394-98c6.75018.5625,13.87537,1.70312,20.25054,1.70312,43.4074,0,77.18955-13.01562,93.00247-39.51562,10.03151-16.76562,12.12532-37.57812,6.09391-60.1875C439.44322,296.625,428.28668,276.26562,412.72376,256ZM36.90128,359.78125c-5.5314-9.29687-6.43767-21.25-2.59382-35.5,3.68682-13.71875,11.59406-28.40625,22.3131-43.29687A400.69639,400.69639,0,0,0,99.93421,319.4375a432.51171,432.51171,0,0,0,12.59408,63.9375C74.80854,385.3125,47.1203,376.84375,36.90128,359.78125Zm59.53283-85.04687Q86.16822,265.42969,77.3086,256q8.85962-9.44532,19.12551-18.73438c-.21875,6.21876-.46876,12.39063-.46876,18.73438S96.21536,268.51562,96.43411,274.73438Zm3.5001-82.17188a397.74293,397.74293,0,0,0-43.31365,38.45312c-10.719-14.89062-18.62628-29.57812-22.3131-43.29687-3.84385-14.25-2.93758-26.20313,2.62507-35.5,9.219-15.46875,32.71962-23.98437,65.158-23.98437,3.31259,0,6.90644.28124,10.43778.45312A431.64065,431.64065,0,0,0,99.93421,192.5625Zm211.75562-25.5c-8.37522-5.32812-16.87545-10.57812-25.81319-15.54688-6.43767-3.57812-12.84409-6.90624-19.28176-10.14062a338.66891,338.66891,0,0,1,36.56347-8.8125C306.00139,141.96875,309.81478,157.42188,311.68983,167.0625ZM224,32c24.06314,0,49.53257,26.03125,68.18931,69.96875A407.59456,407.59456,0,0,0,224,122.3125a405.98246,405.98246,0,0,0-68.18931-20.35938C174.46743,58.01562,199.93686,32,224,32ZM144.84165,132.5625a336.43586,336.43586,0,0,1,36.53222,8.8125c-6.40642,3.23438-12.84409,6.5625-19.25051,10.14062-8.93774,4.96876-17.438,10.21876-25.81319,15.54688C138.18522,157.42188,141.997,141.96875,144.84165,132.5625Zm-8.53148,212.375c8.37522,5.32812,16.87545,10.57812,25.81319,15.54688,6.71893,3.75,13.37535,6.48437,20.09428,9.85937a344.234,344.234,0,0,1-37.376,9.125A355.36907,355.36907,0,0,1,136.31017,344.9375ZM224,480c-24.15689,0-49.72007-26.23438-68.40807-70.48438A402.25348,402.25348,0,0,0,224,389.20312a402.25348,402.25348,0,0,0,68.40807,20.3125C273.72007,453.76562,248.15689,480,224,480Zm79.15835-100.54688a341.68756,341.68756,0,0,1-37.34474-9.10937c6.71893-3.375,13.37536-6.10937,20.063-9.85937,8.93774-4.96876,17.46922-10.21876,25.84444-15.53126C309.31477,357.15625,306.40844,368.625,303.15835,379.45312Zm14.71914-77.39062a471.236,471.236,0,0,1-47.56376,30.48438,475.86157,475.86157,0,0,1-46.28248,22.60937,476.691,476.691,0,0,1-46.345-22.60937,471.236,471.236,0,0,1-47.56376-30.48438c-1.375-14.71875-2.15631-30.07812-2.15631-46.0625s.78127-31.34375,2.15631-46.0625a471.236,471.236,0,0,1,47.56376-30.48438A477.44789,477.44789,0,0,1,224,156.76562a477.44789,477.44789,0,0,1,46.31373,22.6875,471.236,471.236,0,0,1,47.56376,30.48438c1.375,14.71875,2.15631,30.07812,2.15631,46.0625S319.25253,287.34375,317.87749,302.0625Zm28.06325-173.82812c32.40711,0,55.90773,8.51562,65.158,23.96874,5.5314,9.3125,6.43767,21.25,2.59382,35.5-3.68839,13.73438-11.59406,28.40626-22.3131,43.3125a396.1044,396.1044,0,0,0-43.31365-38.45312,435.36835,435.36835,0,0,0-12.56283-63.875C339.003,128.5,342.5969,128.23438,345.94074,128.23438Zm5.62515,109.03124Q361.83179,246.57032,370.6914,256q-8.85962,9.44532-19.12551,18.73438c.21875-6.21876.46876-12.39063.46876-18.73438S351.78464,243.48438,351.56589,237.26562Zm59.50158,122.51563c-10.15652,17.0625-37.84476,25.53125-75.59576,23.5625a432.07594,432.07594,0,0,0,12.59408-63.90625,397.74293,397.74293,0,0,0,43.31365-38.45312c10.719,14.89062,18.62471,29.57812,22.3131,43.29687C417.53639,338.53125,416.63012,350.48438,411.06747,359.78125Z\"]\n};\nvar faAtomAlt = {\n prefix: 'fal',\n iconName: 'atom-alt',\n icon: [448, 512, [], \"f5d3\", \"M394.06157,256.00111c55.56193,84.484,71.15552,164.23356,32.84342,202.46775C412.49888,472.81254,392.40534,480,367.87434,480c-21.18728,0-45.562-5.34372-72.43676-16.06242-23.18726-9.25-47.312-22.71864-71.43677-38.57793-24.156,15.87492-48.28075,29.328-71.43677,38.57793C125.68932,474.65628,101.25207,480,80.12729,480c-24.56225,0-44.6558-7.18746-59.03065-21.53114C-17.21547,420.23467-1.62188,340.48507,53.9088,256.00111-1.62188,171.51715-17.21547,91.76755,21.09664,53.53336,47.90887,26.81474,94.53339,24.92413,152.564,48.06464c23.156,9.25,47.28077,22.71864,71.43677,38.57793,24.12476-15.87492,48.24951-29.328,71.43677-38.57793C353.562,24.89288,400.18651,26.86162,426.905,53.53336,465.21709,91.76755,449.6235,171.51715,394.06157,256.00111ZM195.7511,405.31287A619.164,619.164,0,0,1,130.56427,349.235a620.957,620.957,0,0,1-56.87442-64.96843C30.87779,353.51625,20.81539,412.95346,43.75266,435.844c16.93733,16.828,52.187,16.24992,96.874-1.60937C158.47023,427.094,177.06379,416.87531,195.7511,405.31287ZM73.7211,227.73562a609.0454,609.0454,0,0,1,122.03-121.04627c-18.68731-11.56244-37.24962-21.78114-55.12443-28.92173C117.5644,68.56454,97.03336,63.95518,80.18979,63.95518c-15.78109,0-28.24972,4.06248-36.40588,12.20307C20.81539,99.06439,30.909,158.486,73.7211,227.73562ZM224.00081,386.73484a585.00847,585.00847,0,0,0,70.74928-60.10908,581.92356,581.92356,0,0,0,60.43688-70.609,579.55986,579.55986,0,0,0-60.43688-70.609,585.9904,585.9904,0,0,0-70.74928-60.10908,583.82754,583.82754,0,0,0-70.78052,60.10908,576.41233,576.41233,0,0,0-60.40563,70.609,578.75052,578.75052,0,0,0,60.40563,70.609A586.65879,586.65879,0,0,0,224.00081,386.73484Zm56.12443-130.73373a56.12456,56.12456,0,1,1-56.12443-55.99972A56.1343,56.1343,0,0,1,280.12524,256.00111Zm-32.09342,0a24.04668,24.04668,0,1,0-24.031,23.99988A24.0027,24.0027,0,0,0,248.03182,256.00111Zm4.18745-149.31176a616.29534,616.29534,0,0,1,65.21809,56.07785,620.54665,620.54665,0,0,1,56.84317,64.96842c42.81206-69.24965,52.9057-128.68686,29.93719-151.57737-16.84358-16.79679-52.12447-16.21867-96.84276,1.60937C289.50014,84.90821,270.93783,95.14253,252.21927,106.68935ZM374.28053,284.26659A624.20736,624.20736,0,0,1,317.43736,349.235a622.60731,622.60731,0,0,1-65.21809,56.07785c18.68731,11.56244,37.28087,21.78114,55.15569,28.92173,44.687,17.85929,79.96793,18.42179,96.84276,1.60937C427.18623,412.95346,417.09259,353.51625,374.28053,284.26659Z\"]\n};\nvar faAudioDescription = {\n prefix: 'fal',\n iconName: 'audio-description',\n icon: [512, 512, [], \"f29e\", \"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-48zm16 336c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V112c0-8.822 7.178-16 16-16h416c8.822 0 16 7.178 16 16v288zm-293.411-97.217h-67.335l-13.508 40.974A11.999 11.999 0 0 1 94.35 352H84.01c-8.276 0-14.067-8.18-11.319-15.986l59.155-168a12 12 0 0 1 11.319-8.015h19.514a12 12 0 0 1 11.319 8.015l59.155 168C235.902 343.82 230.11 352 221.834 352h-10.34c-5.18 0-9.775-3.324-11.397-8.243l-13.508-40.974zm-33.802-109.521s-4.327 18.93-8.113 29.746l-17.036 51.38h50.298l-17.037-51.38c-3.515-10.817-7.571-29.746-7.571-29.746h-.541zM263.385 172c0-6.627 5.373-12 12-12h53.443c59.222 0 97.893 35.155 97.893 95.73 0 60.574-38.67 96.27-97.893 96.27h-53.443c-6.627 0-12-5.373-12-12V172zm63.549 149.983c38.941 0 63.819-22.986 63.819-66.253 0-42.727-25.419-65.713-63.819-65.713H298.27v131.966h28.664z\"]\n};\nvar faAward = {\n prefix: 'fal',\n iconName: 'award',\n icon: [384, 512, [], \"f559\", \"M192 95.95c-52.93 0-96 43.07-96 96s43.07 96 96 96 96-43.07 96-96-43.06-96-96-96zm0 160c-35.29 0-64-28.71-64-64s28.71-64 64-64 64 28.71 64 64-28.71 64-64 64zm175.63 16.38c14.06-14.31 19.59-35.33 14.47-54.86-6.39-24.2-6.39-20.45 0-44.69 5.13-19.52-.41-40.53-14.47-54.86-17.58-17.72-15.57-14.69-21.91-38.59-5.15-19.63-20.37-35.08-39.72-40.34-23.3-6.32-20.62-4.58-37.75-22.22-14.22-14.42-35.12-20.08-54.53-14.82-23.5 6.51-20.1 6.41-43.47 0-19.25-5.31-40.28.4-54.5 14.85-17.3 17.67-14.21 15.77-37.72 22.19-19.37 5.26-34.59 20.71-39.75 40.32-6.36 24.04-4.38 20.87-21.91 38.62C2.31 132.25-3.22 153.27 1.91 172.8c6.39 24.17 6.39 20.42 0 44.69-5.13 19.52.41 40.53 14.47 54.86 17.58 17.72 15.57 14.69 21.91 38.59 2.01 7.64 5.91 14.36 10.62 20.38L1.2 448.7c-4.31 10.57 3.51 22.04 14.79 22.04.55 0-2.91.12 53.32-2.03L105.56 507c3.22 3.4 7.42 5 11.58 5 6.17 0 12.23-3.53 14.86-9.96l52.45-129.03a23.346 23.346 0 0 1 15.11-.01L252 502.04c2.62 6.43 8.69 9.96 14.86 9.96 4.16 0 8.36-1.6 11.58-5l36.25-38.28c56.23 2.15 52.77 2.03 53.32 2.03 11.28 0 19.1-11.47 14.79-22.04l-47.7-117.37c4.71-6.02 8.61-12.74 10.62-20.37 6.36-24.06 4.38-20.89 21.91-38.64zM111.72 466.95c-22.59-23.86-16.56-17.49-29.13-30.77-18.3.7-9.45.36-42.41 1.63l35.55-87.48c.79.26 1.47.75 2.28.97 21.87 5.86 20.46 4.6 31.59 15.91 9.94 10.14 22.79 15.57 35.96 16.5l-33.84 83.24zm232.11-29.15c-32.91-1.26-24.13-.92-42.41-1.62-12.56 13.27-6.54 6.91-29.13 30.77l-33.9-83.4c13.21-.91 26.06-6.21 36.02-16.35 11.41-11.61 9.83-10.19 31.59-15.91.81-.22 1.49-.71 2.28-.96l35.55 87.47zm-29.05-134.99c-2.25 8.58-8.84 15.33-17.22 17.61-23.62 6.25-28.39 6.45-45.97 24.37-8 8.11-20.19 9.61-29.75 3.48-18.13-11.44-41.56-11.45-59.69.02-9.5 6.03-21.75 4.62-29.75-3.52-17.38-17.68-22.12-17.95-45.97-24.36-8.38-2.28-14.97-9.03-17.22-17.62-8.06-30.63-7.53-30.19-30.03-52.87-6.19-6.31-8.63-15.62-6.34-24.31 8.15-30.47 8.2-30.48 0-60.95-2.28-8.69.16-18 6.34-24.3 22.42-22.7 21.94-22.06 30.03-52.91 2.25-8.58 8.84-15.33 17.22-17.59 30.79-8.41 29.68-7.8 52.13-30.62 5.2-5.31 13.82-8.96 23.28-6.41 30.46 8.38 29.85 8.4 60.28 0 8.19-2.27 17.19.19 23.31 6.37 22.29 22.87 21.87 22.44 52.16 30.66 8.34 2.27 14.94 9.02 17.19 17.61 8.06 30.63 7.53 30.19 30.03 52.87 6.19 6.31 8.63 15.62 6.34 24.31-8.19 30.52-8.16 30.54 0 60.95 2.28 8.69-.16 18-6.34 24.3-22.41 22.71-21.94 22.06-30.03 52.91z\"]\n};\nvar faAxe = {\n prefix: 'fal',\n iconName: 'axe',\n icon: [640, 512, [], \"f6b2\", \"M525.74 160l-47.27-47.27 24.16-24.16c12.5-12.5 12.5-32.76 0-45.26L468.69 9.37C462.44 3.12 454.25 0 446.06 0s-16.38 3.12-22.63 9.37l-24.16 24.16-24.15-24.16C368.87 3.12 360.68 0 352.49 0s-16.38 3.12-22.63 9.37l-96.49 96.49c-12.5 12.5-12.5 32.76 0 45.25l24.16 24.16L9.37 423.43c-12.5 12.5-12.5 32.76 0 45.26l33.94 33.94c6.25 6.25 14.44 9.37 22.63 9.37s16.38-3.12 22.63-9.37l248.16-248.16L384 301.74V416h32c123.71 0 224-100.29 224-224v-32H525.74zM446.03 32h.03L480 65.94 455.84 90.1l-33.95-33.96L446.03 32zM65.94 480L32 446.06 280.16 197.9l33.94 33.94L65.94 480zM416 384v-95.51l-160-160L352.46 32h.03l160 160H608c0 105.87-86.13 192-192 192z\"]\n};\nvar faAxeBattle = {\n prefix: 'fal',\n iconName: 'axe-battle',\n icon: [512, 512, [], \"f6b3\", \"M512 160.92C505.23 99.15 476.88 44.29 437.8 4.7c-3.18-3.22-7.03-4.7-10.81-4.7-7.07 0-13.95 5.14-15.99 13.66-13.33 55.54-55.26 97.44-107 104.78V80c0-8.84-7.16-16-16-16h-64c-8.84 0-16 7.16-16 16v38.44c-51.74-7.35-93.67-49.24-107-104.78C98.96 5.14 92.08 0 85.01 0c-3.79 0-7.63 1.48-10.81 4.7C28.67 50.83 0 117.62 0 192c0 74.38 28.67 141.17 74.2 187.3 3.18 3.23 7.03 4.7 10.81 4.7 7.07 0 13.95-5.14 15.99-13.66 13.33-55.54 55.26-97.44 107-104.78V496c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V265.56c51.74 7.35 93.67 49.24 107 104.78 2.04 8.52 8.92 13.66 15.99 13.66 3.79 0 7.63-1.48 10.81-4.7 39.08-39.59 67.43-94.45 74.2-156.22L480 192l32-31.08zM78.65 335.56C48.76 295.83 32 244.92 32 192S48.76 88.17 78.65 48.44c6.93 17.01 38.53 89.43 129.35 102.33v82.47c-90.82 12.89-122.41 85.31-129.35 102.32zM272 480h-32V96h32v384zm185.04-265.71l19.29 19.87c-6.38 37.57-21.22 72.49-42.97 101.41-6.94-17.01-38.53-89.43-129.35-102.33v-82.47c90.82-12.9 122.41-85.32 129.35-102.33 21.75 28.92 36.59 63.83 42.97 101.41l-19.29 19.87L435.41 192l21.63 22.29z\"]\n};\nvar faBaby = {\n prefix: 'fal',\n iconName: 'baby',\n icon: [384, 512, [], \"f77c\", \"M374.2 160.3c-17.4-25.2-52-32.1-77.9-14.5l-36.4 25c-29.4 20.2-86 34.3-135.9 0l-36.4-25C61.9 128.2 27.2 135 9.8 160.3c-17.5 25.5-11 60.4 14.4 77.9l36.4 24.9c10.9 7.5 22.8 14.1 35.4 19.8v22.6l-54.3 56.2c-19.2 17.8-23.5 46.4-10 69.3L70 487.1c10.3 15.4 27.9 24.9 46.6 24.9 10 0 19.8-2.7 28.4-7.8 13-7.7 52.3-40.5 2-96.5l18.4-11.6c15.1 5.3 37.9 5.3 53.1 0l18.4 11.6c-50.3 56-11 88.8 2 96.5 8.6 5.1 18.4 7.8 28.4 7.8 18.7 0 36.2-9.5 46.6-24.9l38.3-56.1c13.5-22.9 9.1-51.5-10-69.3L288 305.5v-22.6c12.6-5.6 24.4-12.3 35.4-19.8l36.4-24.9c25.4-17.5 31.9-52.5 14.4-77.9zm-237 283.5c6.7 11.4 2.9 26.1-8.5 32.9-3.8 2.3-8 3.3-12.2 3.3-8.2 0-16.2-4.2-20.7-11.8l-36.6-53.4c-6-10.2-3.7-23.3 5.5-30.8l38.8-41.2c.7.8 1 1.8 1.7 2.6l35.2 35.2-29.4 27.7 26.2 35.5zm82.9-85.2c-13.2 13.2-43.5 12.8-56.2 0L128 322.7V312h128v10.7l-35.9 35.9zm99.1 25.4c9.2 7.5 11.5 20.6 5.5 30.8l-36.6 53.4c-4.5 7.6-12.5 11.8-20.7 11.8-4.1 0-8.3-1.1-12.2-3.3-11.4-6.7-15.2-21.5-8.5-32.9l26.1-35.6-29.4-27.7 35.2-35.2c.7-.7 1.1-1.8 1.7-2.6l38.9 41.3zm22.4-172.2l-36.3 24.9c-15.4 10.5-32 18.5-49.3 24.4V280H128v-18.9c-17.3-5.9-33.9-13.8-49.3-24.4l-36.3-24.9c-26.4-18.2 1.2-57.3 27.2-39.6l36.3 24.9c47.2 32.4 117.3 37.7 172.1 0l36.3-24.9c26.1-17.7 53.7 21.4 27.3 39.6zM192 160c44.2 0 80-35.8 80-80S236.2 0 192 0s-80 35.8-80 80 35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48z\"]\n};\nvar faBabyCarriage = {\n prefix: 'fal',\n iconName: 'baby-carriage',\n icon: [512, 512, [], \"f77d\", \"M504 96h-40c-26.5 0-48 21.5-48 48v48H280.8L174.3 24.5c-8-12.6-21.2-21.2-36.3-23.7-14.8-2.5-29.8 1.2-41.2 10.3C35.3 60.3 0 132 0 208v16c0 67.2 40.3 126.2 101.3 160.5-1.8-.1-3.5-.5-5.3-.5-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64c0-18.1-7.6-34.3-19.6-46 25.9 8.9 54 14 83.6 14s57.8-5 83.6-14c-12 11.6-19.6 27.9-19.6 46 0 35.3 28.7 64 64 64s64-28.7 64-64-28.7-64-64-64c-1.8 0-3.5.4-5.3.5C407.7 350.2 448 291.2 448 224v-80c0-8.8 7.2-16 16-16h40c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM116.8 36.1c5.9-4.7 12.6-4.4 15.9-3.8 6.2 1 11.5 4.4 14.6 9.3L242.9 192H32.6c4.6-60.2 34.7-116.3 84.2-155.9zM96 480c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm256-64c17.6 0 32 14.4 32 32s-14.4 32-32 32-32-14.4-32-32 14.4-32 32-32zm-128-32c-105.9 0-192-71.8-192-160h384c0 88.2-86.1 160-192 160z\"]\n};\nvar faBackpack = {\n prefix: 'fal',\n iconName: 'backpack',\n icon: [448, 512, [], \"f5d4\", \"M320 64h-16V48c0-26.47-21.53-48-48-48h-64c-26.47 0-48 21.53-48 48v16h-16C57.31 64 0 121.31 0 192v256c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V192c0-70.69-57.31-128-128-128zM176 48c0-8.83 7.19-16 16-16h64c8.81 0 16 7.17 16 16v16h-96V48zm160 432H112v-96h224v96zm0-128H112v-32c0-17.67 14.33-32 32-32h160c17.67 0 32 14.33 32 32v32zm80 96c0 17.64-14.36 32-32 32h-16V320c0-35.29-28.71-64-64-64H144c-35.29 0-64 28.71-64 64v160H64c-17.64 0-32-14.36-32-32V192c0-52.94 43.06-96 96-96h192c52.94 0 96 43.06 96 96v256zM312 160H136c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h176c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8z\"]\n};\nvar faBackspace = {\n prefix: 'fal',\n iconName: 'backspace',\n icon: [640, 512, [], \"f55a\", \"M469.66 181.65l-11.31-11.31c-3.12-3.12-8.19-3.12-11.31 0L384 233.37l-63.03-63.03c-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.31L361.38 256l-63.03 63.03c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0L384 278.63l63.03 63.03c3.12 3.12 8.19 3.12 11.31 0l11.31-11.31c3.12-3.12 3.12-8.19 0-11.31L406.63 256l63.03-63.03a8.015 8.015 0 0 0 0-11.32zM576 64H205.26C188.28 64 172 70.74 160 82.74L9.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-64zm32 320c0 17.64-14.36 32-32 32H205.26c-8.55 0-16.58-3.33-22.63-9.37L32 256l150.63-150.63c6.04-6.04 14.08-9.37 22.63-9.37H576c17.64 0 32 14.36 32 32v256z\"]\n};\nvar faBackward = {\n prefix: 'fal',\n iconName: 'backward',\n icon: [512, 512, [], \"f04a\", \"M267.5 281.1l192 159.4c20.6 17.2 52.5 2.8 52.5-24.6V96c0-27.4-31.9-41.8-52.5-24.6L267.5 232c-15.3 12.8-15.3 36.4 0 49.1zm20.5-24.5L480 96v320L288 256.6zM11.5 281.1l192 159.4c20.6 17.2 52.5 2.8 52.5-24.6V96c0-27.4-31.9-41.8-52.5-24.6L11.5 232c-15.3 12.8-15.3 36.4 0 49.1zM32 256.6L224 96v320L32 256.6z\"]\n};\nvar faBacon = {\n prefix: 'fal',\n iconName: 'bacon',\n icon: [576, 512, [], \"f7e5\", \"M566.93 104.4L470.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.11c-29.75 78.82-89.55 94.67-98.72 98.08-24.86 9.26-54.73 20.38-91.07 50.36C-3 374-3.63 395 9.07 407.61l96.14 95.49a30.73 30.73 0 0 0 21.71 8.9 31.05 31.05 0 0 0 18.47-6.08c13.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.26 54.74-20.4 91.11-50.41 13.89-11.4 14.52-32.45 1.82-45.05zM32.43 386.25c31.64-25.81 57.68-35.51 82.06-44.55 68.47-23.3 100.93-76.1 116.1-116.29l.93-2.5c29.66-79.72 86.61-135.76 169.26-166.54 16.73-6.24 31.22-11.63 48.19-24l34.54 34.11c-18.7 12.78-35 19-51.82 25.28-28.28 10.6-57.57 21.59-97.35 61.37s-50.78 69.01-61.34 97.31c-9.88 26.27-19.16 51.06-54 85.95s-59.66 44.16-85.91 54c-19.66 7.37-39.86 15.13-63.64 32.37zm429-215.9c-68.53 23.35-101 76.16-116.14 116.34l-.88 2.36c-29.77 79.82-86.73 135.89-169.32 166.66-16.93 6.3-31.55 11.74-47.37 24.69l-35.23-34.83c18.67-12.74 34.93-18.91 51.76-25.22 28.28-10.6 57.53-21.57 97.31-61.33s50.75-69 61.35-97.35c9.87-26.26 19.15-51.06 54.06-86s59.69-44.19 86-54c19.65-7.37 39.86-15.15 63.67-32.42l37 36.51c-31.75 25.85-57.79 35.55-82.17 44.59z\"]\n};\nvar faBacteria = {\n prefix: 'fal',\n iconName: 'bacteria',\n icon: [640, 512, [], \"e059\", \"M128,200a24,24,0,1,0,24,24A24,24,0,0,0,128,200Zm80-72a16,16,0,1,0,16,16A16,16,0,0,0,208,128ZM416,360a24,24,0,1,0,24,24A24,24,0,0,0,416,360ZM615.67,230.76l11.58-3.43a17.73,17.73,0,1,0-10.13-34l-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.45,83.45,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.89,17.89,0,0,0,24.94,3.6A17.68,17.68,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,615.67,230.76Zm-32.38,13.79A256.43,256.43,0,0,1,372.49,455.3a52,52,0,0,1-8.61.72c-25,0-47-18.69-51.17-43.48a52,52,0,0,1,42.75-59.83A152.41,152.41,0,0,0,480.71,227.45a52,52,0,1,1,102.58,17.1ZM272.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.4ZM159.29,284.55A51.78,51.78,0,0,1,108.11,328a52.71,52.71,0,0,1-8.66-.72,52,52,0,0,1-42.74-59.83A256.41,256.41,0,0,1,267.51,56.71c42.95-7.23,58.13,32.87,59.78,42.75a52,52,0,0,1-42.75,59.83A152.41,152.41,0,0,0,159.29,284.55Z\"]\n};\nvar faBacterium = {\n prefix: 'fal',\n iconName: 'bacterium',\n icon: [512, 512, [], \"e05a\", \"M511.32,100.33a16.31,16.31,0,0,0-20.26-10.86L468.7,96.1C450.61,56.5,414,42.27,413.3,41.94L419,20.19A16.13,16.13,0,0,0,407.38.53,16.44,16.44,0,0,0,403.24,0a16.21,16.21,0,0,0-15.71,12.06L382,33.33A111.51,111.51,0,0,0,366.32,32a101.2,101.2,0,0,0-16.72,1.49A386.14,386.14,0,0,0,301,45.14l-6.32-17.71a16.33,16.33,0,0,0-15.29-10.77,15.77,15.77,0,0,0-5.44,1A16.12,16.12,0,0,0,264,38.26l6.31,17.6a383.18,383.18,0,0,0-73.86,39.38L185.24,80.31A16.38,16.38,0,0,0,162.45,77a15.91,15.91,0,0,0-6.34,10.59,16.07,16.07,0,0,0,3,12l11.25,15a384.18,384.18,0,0,0-58.69,59.46L96.34,162.9a16.29,16.29,0,0,0-22.75,3.52,16,16,0,0,0,3.54,22.51l15.55,11.32a383,383,0,0,0-38.27,74l-18.64-6.41a16.27,16.27,0,0,0-20.67,10,15.85,15.85,0,0,0,.74,12.27,16.11,16.11,0,0,0,9.32,8.23l18.9,6.5a385.28,385.28,0,0,0-10.53,44.72c-2,12.08-1.49,23.88.27,35.35l-22.17,6.57a16.09,16.09,0,0,0-11,20,16.7,16.7,0,0,0,15.86,11.53,15.38,15.38,0,0,0,4.34-.62l22.05-6.51a111.81,111.81,0,0,0,55.65,54l-5.74,21.92a15.87,15.87,0,0,0,1.74,12.2,16.11,16.11,0,0,0,9.93,7.47,15.8,15.8,0,0,0,3.85.48,16.69,16.69,0,0,0,16-12.06l5.52-21.12A111.79,111.79,0,0,0,144.14,480,111.17,111.17,0,0,0,207,460.08l14.08,14.45a16.73,16.73,0,0,0,23,.32,16,16,0,0,0,.32-22.81L231,438.25a111.19,111.19,0,0,0,23.45-51.86A160.61,160.61,0,0,1,261,360.75l14.63,6.85a15.6,15.6,0,0,0,6.61,1.44,16.73,16.73,0,0,0,15-9.2,15.91,15.91,0,0,0,.58-12.28,16.07,16.07,0,0,0-8.39-9.17l-14.64-6.86a160.37,160.37,0,0,1,60.31-58.95l6.61,14.95A16.65,16.65,0,0,0,357,297.06a15.83,15.83,0,0,0,14.91-10.26,16,16,0,0,0-.29-12.31l-6.53-14.73a159.91,159.91,0,0,1,21.36-5.32,111,111,0,0,0,55-26.35l14.93,13.46a16.15,16.15,0,0,0,10.87,4,16.34,16.34,0,0,0,12.11-5.15,16.06,16.06,0,0,0-1.13-22.78l-15.8-14.26a111.11,111.11,0,0,0,16.14-76.54l21.82-6.45a16.12,16.12,0,0,0,9.68-7.84A15.92,15.92,0,0,0,511.32,100.33ZM381.15,222.87C301,236.23,236.27,301,222.91,381.13c-8.21,49.3-61.52,81.75-111.31,59.57a79.9,79.9,0,0,1-39.77-38.52C39.12,333.36,132.8,102,354.91,65c10.49-1.77,62.73-3.69,84.69,44.36C473.43,183.41,403.38,219.17,381.15,222.87ZM160,272a48,48,0,1,0,48,48A48,48,0,0,0,160,272Zm0,64a16,16,0,1,1,16-16A16,16,0,0,1,160,336Zm80-152a24,24,0,1,0,24,24A24,24,0,0,0,240,184Z\"]\n};\nvar faBadge = {\n prefix: 'fal',\n iconName: 'badge',\n icon: [512, 512, [], \"f335\", \"M256 512c-35.5 0-68.1-19.4-85.5-49.6-32.1 8.7-69 1.1-95.5-25.4-25.1-25.1-34.5-61.9-25.4-95.5C19.4 324.2 0 291.5 0 256s19.4-68.2 49.6-85.5c-9.1-33.6.3-70.4 25.4-95.5 25.1-25.1 61.9-34.5 95.5-25.4C187.8 19.4 220.5 0 256 0s68.2 19.4 85.5 49.6c33.6-9.1 70.4.3 95.5 25.4 25.1 25.1 34.5 61.9 25.4 95.5 30.2 17.3 49.6 50 49.6 85.5s-19.4 68.2-49.6 85.5c9.1 33.6-.3 70.4-25.4 95.5-26.1 26.1-62.8 34.3-95.5 25.4-17.4 30.2-50 49.6-85.5 49.6zm-68.3-91.1c3.6 9.6 16.2 59.1 68.3 59.1 51 0 63.7-47 68.3-59.1 32.6 14.8 61.2 22.4 90.1-6.5 36-36 11.8-78.3 6.5-90.1 9.6-3.6 59.1-16.2 59.1-68.3 0-51-47-63.7-59.1-68.3 4.4-9.6 30.3-53.4-6.5-90.1-36-36-78.3-11.8-90.1-6.5C320.7 81.5 308.1 32 256 32c-51 0-63.7 47-68.3 59.1-9.3-4.2-53.3-30.4-90.1 6.5-36 36-11.8 78.3-6.5 90.1C81.5 191.3 32 203.9 32 256c0 51 47 63.7 59.1 68.3-4.4 9.6-30.3 53.4 6.5 90.1 28.8 28.7 57.5 21.3 90.1 6.5z\"]\n};\nvar faBadgeCheck = {\n prefix: 'fal',\n iconName: 'badge-check',\n icon: [512, 512, [], \"f336\", \"M345.34 182.46a7.98 7.98 0 0 0-5.66-2.34c-2.05 0-4.1.78-5.66 2.34L226.54 289.94l-48.57-48.57a7.98 7.98 0 0 0-5.66-2.34c-2.05 0-4.1.78-5.66 2.34l-11.31 11.31c-3.12 3.12-3.12 8.19 0 11.31l65.54 65.54c1.56 1.56 3.61 2.34 5.66 2.34s4.09-.78 5.65-2.34l124.45-124.45c3.12-3.12 3.12-8.19 0-11.31l-11.3-11.31zM512 256c0-35.5-19.4-68.2-49.6-85.5 9.1-33.6-.3-70.4-25.4-95.5s-61.9-34.5-95.5-25.4C324.2 19.4 291.5 0 256 0s-68.2 19.4-85.5 49.6c-33.6-9.1-70.4.3-95.5 25.4s-34.5 61.9-25.4 95.5C19.4 187.8 0 220.5 0 256s19.4 68.2 49.6 85.5c-9.1 33.6.3 70.4 25.4 95.5 26.5 26.5 63.4 34.1 95.5 25.4 17.4 30.2 50 49.6 85.5 49.6s68.1-19.4 85.5-49.6c32.7 8.9 69.4.7 95.5-25.4 25.1-25.1 34.5-61.9 25.4-95.5 30.2-17.3 49.6-50 49.6-85.5zm-91.1 68.3c5.3 11.8 29.5 54.1-6.5 90.1-28.9 28.9-57.5 21.3-90.1 6.5C319.7 433 307 480 256 480c-52.1 0-64.7-49.5-68.3-59.1-32.6 14.8-61.3 22.2-90.1-6.5-36.8-36.7-10.9-80.5-6.5-90.1C79 319.7 32 307 32 256c0-52.1 49.5-64.7 59.1-68.3-5.3-11.8-29.5-54.1 6.5-90.1 36.8-36.9 80.8-10.7 90.1-6.5C192.3 79 205 32 256 32c52.1 0 64.7 49.5 68.3 59.1 11.8-5.3 54.1-29.5 90.1 6.5 36.8 36.7 10.9 80.5 6.5 90.1C433 192.3 480 205 480 256c0 52.1-49.5 64.7-59.1 68.3z\"]\n};\nvar faBadgeDollar = {\n prefix: 'fal',\n iconName: 'badge-dollar',\n icon: [512, 512, [], \"f645\", \"M289.94 249.05l-59.06-16.86c-8.75-2.52-14.88-10.61-14.88-19.7 0-11.3 9.19-20.48 20.47-20.48h36.91c8.24 0 16.08 2.56 22.63 7.32 2.99 2.17 7.22 1.46 9.84-1.16l11.42-11.42c3.5-3.5 2.94-9.22-.99-12.23-12.26-9.41-27.18-14.51-42.9-14.51H272v-24c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v24h-3.53c-30.59 0-55.13 26.3-52.24 57.48 2.06 22.16 19.06 40.12 40.45 46.22l56.44 16.11c8.75 2.52 14.88 10.61 14.88 19.7 0 11.3-9.19 20.48-20.47 20.48h-36.91c-8.24 0-16.08-2.56-22.63-7.32-2.99-2.17-7.22-1.46-9.84 1.16l-11.42 11.42c-3.5 3.5-2.94 9.21.99 12.23 12.26 9.41 27.18 14.51 42.9 14.51H240v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24h1.36c22.81 0 44.33-13.59 51.72-35.17 10.15-29.65-7.28-59.8-35.14-67.78zM512 256c0-35.5-19.4-68.2-49.6-85.5 9.1-33.6-.3-70.4-25.4-95.5s-61.9-34.5-95.5-25.4C324.2 19.4 291.5 0 256 0s-68.2 19.4-85.5 49.6c-33.6-9.1-70.4.3-95.5 25.4s-34.5 61.9-25.4 95.5C19.4 187.8 0 220.5 0 256s19.4 68.2 49.6 85.5c-9.1 33.6.3 70.4 25.4 95.5 26.5 26.5 63.4 34.1 95.5 25.4 17.4 30.2 50 49.6 85.5 49.6s68.1-19.4 85.5-49.6c32.7 8.9 69.4.7 95.5-25.4 25.1-25.1 34.5-61.9 25.4-95.5 30.2-17.3 49.6-50 49.6-85.5zm-91.1 68.3c5.3 11.8 29.5 54.1-6.5 90.1-28.9 28.9-57.5 21.3-90.1 6.5C319.7 433 307 480 256 480c-52.1 0-64.7-49.5-68.3-59.1-32.6 14.8-61.3 22.2-90.1-6.5-36.8-36.7-10.9-80.5-6.5-90.1C79 319.7 32 307 32 256c0-52.1 49.5-64.7 59.1-68.3-5.3-11.8-29.5-54.1 6.5-90.1 36.8-36.9 80.8-10.7 90.1-6.5C192.3 79 205 32 256 32c52.1 0 64.7 49.5 68.3 59.1 11.8-5.3 54.1-29.5 90.1 6.5 36.8 36.7 10.9 80.5 6.5 90.1C433 192.3 480 205 480 256c0 52.1-49.5 64.7-59.1 68.3z\"]\n};\nvar faBadgePercent = {\n prefix: 'fal',\n iconName: 'badge-percent',\n icon: [512, 512, [], \"f646\", \"M349.66 173.65l-11.31-11.31c-3.12-3.12-8.19-3.12-11.31 0l-164.7 164.69c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0l164.69-164.69c3.13-3.12 3.13-8.18.01-11.31zM240 192c0-26.47-21.53-48-48-48s-48 21.53-48 48 21.53 48 48 48 48-21.53 48-48zm-64 0c0-8.83 7.19-16 16-16s16 7.17 16 16-7.19 16-16 16-16-7.17-16-16zm144 80c-26.47 0-48 21.53-48 48s21.53 48 48 48 48-21.53 48-48-21.53-48-48-48zm0 64c-8.81 0-16-7.17-16-16s7.19-16 16-16 16 7.17 16 16-7.19 16-16 16zm192-80c0-35.5-19.4-68.2-49.6-85.5 9.1-33.6-.3-70.4-25.4-95.5s-61.9-34.5-95.5-25.4C324.2 19.4 291.5 0 256 0s-68.2 19.4-85.5 49.6c-33.6-9.1-70.4.3-95.5 25.4s-34.5 61.9-25.4 95.5C19.4 187.8 0 220.5 0 256s19.4 68.2 49.6 85.5c-9.1 33.6.3 70.4 25.4 95.5 26.5 26.5 63.4 34.1 95.5 25.4 17.4 30.2 50 49.6 85.5 49.6s68.1-19.4 85.5-49.6c32.7 8.9 69.4.7 95.5-25.4 25.1-25.1 34.5-61.9 25.4-95.5 30.2-17.3 49.6-50 49.6-85.5zm-91.1 68.3c5.3 11.8 29.5 54.1-6.5 90.1-28.9 28.9-57.5 21.3-90.1 6.5C319.7 433 307 480 256 480c-52.1 0-64.7-49.5-68.3-59.1-32.6 14.8-61.3 22.2-90.1-6.5-36.8-36.7-10.9-80.5-6.5-90.1C79 319.7 32 307 32 256c0-52.1 49.5-64.7 59.1-68.3-5.3-11.8-29.5-54.1 6.5-90.1 36.8-36.9 80.8-10.7 90.1-6.5C192.3 79 205 32 256 32c52.1 0 64.7 49.5 68.3 59.1 11.8-5.3 54.1-29.5 90.1 6.5 36.8 36.7 10.9 80.5 6.5 90.1C433 192.3 480 205 480 256c0 52.1-49.5 64.7-59.1 68.3z\"]\n};\nvar faBadgeSheriff = {\n prefix: 'fal',\n iconName: 'badge-sheriff',\n icon: [512, 512, [], \"f8a2\", \"M440 312a48.35 48.35 0 0 0-7.75.78l-33.81-56.84 33.78-56.73A47.94 47.94 0 1 0 395 136h-67.94l-34.24-57.58A47.53 47.53 0 0 0 304 48a48 48 0 0 0-96 0 47.53 47.53 0 0 0 11.28 30.54L185.06 136h-68a47.92 47.92 0 1 0-45 64 48.35 48.35 0 0 0 7.75-.78l33.81 56.84-33.84 56.73A47.6 47.6 0 0 0 72 312a48 48 0 1 0 45.05 64h67.89l34.24 57.58A47.53 47.53 0 0 0 208 464a48 48 0 0 0 96 0 47.53 47.53 0 0 0-11.28-30.54L326.94 376h68A47.92 47.92 0 1 0 440 312zm0-176a16 16 0 1 1-16 16 16 16 0 0 1 16-16zM256 32a16 16 0 1 1-16 16 16 16 0 0 1 16-16zM72 168a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm0 208a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm184 104a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm139-136h-77.16a16 16 0 0 0-13.75 7.81l-38.78 65.13a47 47 0 0 0-18.79 0l-38.74-65.13A15.94 15.94 0 0 0 194 344h-77a47.7 47.7 0 0 0-9.27-15.68l38.16-64.07a16 16 0 0 0 0-16.37l-38.13-64.18a47.77 47.77 0 0 0 9.29-15.7h77.11a16 16 0 0 0 13.75-7.81l38.78-65.13a47 47 0 0 0 18.8 0l38.73 65.13A15.94 15.94 0 0 0 318 168h77a47.63 47.63 0 0 0 9.27 15.68l-38.16 64.07a16 16 0 0 0 0 16.37l38.18 64.18A47.77 47.77 0 0 0 395 344zm45 32a16 16 0 1 1 16-16 16 16 0 0 1-16 16zM256 184a72 72 0 1 0 72 72 72.09 72.09 0 0 0-72-72zm0 112a40 40 0 1 1 40-40 40 40 0 0 1-40 40z\"]\n};\nvar faBadgerHoney = {\n prefix: 'fal',\n iconName: 'badger-honey',\n icon: [640, 512, [], \"f6b4\", \"M622.25 142.55l-2.73-1.55c-22.49-12.74-43.96-27.08-65.15-41.88-55.61-38.87-87.95-35.01-88.92-35.01-19.05 0-38.09 5.21-55.47 15.21-17.09 9.83-35.92 16.78-55.03 16.78H128C57.31 96.1 0 153.39 0 224.06v15.99c0 8.84 7.16 16 16 16h20.03c2.62 11.24 9.82 46.58 54.09 79.65l-23.78 52.46a31.97 31.97 0 0 0-.12 23.77l25.3 57.94A16.002 16.002 0 0 0 106.41 480h76.74c11.63 0 19.38-12.03 14.56-22.62l-22.45-49.36 32.96-55.99h73.69l23.03 115.11c1.5 7.48 8.06 12.86 15.69 12.86h79.36c10.1 0 17.67-9.24 15.69-19.13l-26.99-134.92c45.32-30.5 101.32-61.16 152.42-75.66L560 288.05l22.75-45.49c53.39-4.45 57.25-63.93 57.25-67.2 0-13.94-6.88-26.66-17.75-32.81zM128 128.09h226.96c22.83 0 46.71-7.08 70.99-21.05 12.44-7.16 26.11-10.94 39.51-10.94 3.93 0 26.41-1.64 70.59 29.24 4.79 3.35 10.05 6.98 15.59 10.75H460c-30.88 0-60.31 9.67-91.47 20.93l-100.78 45.82c-9.66 3.47-19.84 5.23-30.25 5.23H192c-45.14 0-78.89-41.04-79.83-78.38 5.18-.87 10.41-1.6 15.83-1.6zm225.13 183.22l27.35 136.7h-46.73l-25.6-127.97H189.93l-50.68 86.08 19.05 41.89h-40.99L96 400.2l33.07-75.35-19.8-14.78C89.1 295 74.36 279.51 67.2 248.79l-5.77-24.72H32c0-35.91 20.07-66.91 49.36-83.36 6.77 54.16 55.27 99.36 110.64 99.36h45.5c14.12 0 27.94-2.39 42.28-7.61l100.78-45.82c27.19-9.78 53.72-18.56 79.44-18.56h20.41c-2.6 3.38-4.41 7.41-4.41 12 0 11.04 8.96 19.99 20 19.99 11.05 0 20-8.95 20-19.99 0-4.59-1.81-8.62-4.41-12h90.88c3.57 2.03 5.53 2.55 5.54 6.95-5.27 73.78-21.42-20.81-254.88 136.28z\"]\n};\nvar faBagsShopping = {\n prefix: 'fal',\n iconName: 'bags-shopping',\n icon: [576, 512, [], \"f847\", \"M544 256H224a32 32 0 0 0-32 32v192a32 32 0 0 0 32 32h320a32 32 0 0 0 32-32V288a32 32 0 0 0-32-32zm0 224H224V288h320zm-172.63-32.81A96.12 96.12 0 0 0 480 352v-24a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v24a64.07 64.07 0 0 1-70.38 63.69c-33.25-3.23-57.62-33.12-57.62-66.53V328a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v20.66c0 48.79 35 92.34 83.37 98.53zM32 192h384v32h32v-32a32 32 0 0 0-32-32h-96V96a96 96 0 0 0-192 0v64H32a32 32 0 0 0-32 32v256a32 32 0 0 0 32 32h128v-32H32zm128-96a64 64 0 0 1 128 0v64H160z\"]\n};\nvar faBahai = {\n prefix: 'fal',\n iconName: 'bahai',\n icon: [512, 512, [], \"f666\", \"M496.25 202.52l-110-15.44 41.82-104.34c5.26-13.11-4.98-25.55-16.89-25.55-3.2 0-6.52.9-9.69 2.92L307.45 120l-34.1-107.18C270.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-3.18-2.02-6.5-2.92-9.69-2.92-11.91 0-22.15 12.43-16.89 25.55l41.82 104.34-110 15.44c-17.53 2.46-21.67 26.27-6.03 34.67l98.16 52.66-74.49 83.53c-10.92 12.25-1.72 30.93 13.28 30.93 1.32 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.16 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.55 0 18.84-7.57 18.41-19.22l-4.11-112.55 108.57 23.65c1.39.3 2.75.45 4.07.45 15.01 0 24.2-18.69 13.28-30.93l-74.48-83.54 98.16-52.66c15.65-8.4 11.51-32.21-6.03-34.67zm-106.88 59.05l-35.85 19.24 27.2 30.51 46.79 52.48-68.21-14.86-39.65-8.64 1.5 41.11 2.58 70.71-42.83-55.85L256 363.8l-24.9 32.47-42.83 55.85 2.58-70.71 1.5-41.11-39.65 8.64-68.21 14.86 46.79-52.48 27.2-30.51-35.85-19.24-61.67-33.09 69.11-9.7 40.18-5.64-15.27-38.11-26.27-65.55 59.08 37.62 34.35 21.87 12.45-39.15L256 62.49l21.42 67.34 12.45 39.15 34.35-21.87 59.08-37.62-26.27 65.55-15.27 38.11 40.18 5.64 69.11 9.7-61.68 33.08z\"]\n};\nvar faBalanceScale = {\n prefix: 'fal',\n iconName: 'balance-scale',\n icon: [640, 512, [], \"f24e\", \"M634.4 279.09L525.35 103.12C522.18 98.38 517.09 96 512 96s-10.18 2.38-13.35 7.12L389.6 279.09c-3.87 5.78-6.09 12.72-5.51 19.64C389.56 364.4 444.74 416 512 416s122.44-51.6 127.91-117.27c.58-6.92-1.64-13.86-5.51-19.64zM512 384c-41.58 0-77.55-27.13-90.78-64h181.2C589 357.23 553.28 384 512 384zm-90.27-96l90.31-145.76L602.98 288H421.73zM536 480H336V125.74c27.56-7.14 48-31.95 48-61.74h152c4.42 0 8-3.58 8-8V40c0-4.42-3.58-8-8-8H374.89c-.15-.26-4.37-11.11-19.11-21.07C345.57 4.03 333.25 0 320 0s-25.57 4.03-35.78 10.93c-14.74 9.96-18.96 20.81-19.11 21.07H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h152c0 29.79 20.44 54.6 48 61.74V480H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h432c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM288 64c0-17.67 14.33-32 32-32s32 14.33 32 32-14.33 32-32 32-32-14.33-32-32zm-32.09 234.73c.58-6.92-1.64-13.86-5.51-19.64L141.35 103.12C138.18 98.38 133.09 96 128 96s-10.18 2.38-13.35 7.12L5.6 279.09c-3.87 5.78-6.09 12.72-5.51 19.64C5.56 364.4 60.74 416 128 416s122.44-51.6 127.91-117.27zM128.04 142.24L218.98 288H37.73l90.31-145.76zM37.22 320h181.2C205 357.23 169.28 384 128 384c-41.58 0-77.55-27.13-90.78-64z\"]\n};\nvar faBalanceScaleLeft = {\n prefix: 'fal',\n iconName: 'balance-scale-left',\n icon: [640, 512, [], \"f515\", \"M634.4 247.09L525.35 71.12C522.18 66.38 517.09 64 512 64s-10.18 2.38-13.35 7.12L389.6 247.09c-3.87 5.78-6.09 12.72-5.51 19.64C389.56 332.4 444.74 384 512 384s122.44-51.6 127.91-117.27c.58-6.92-1.64-13.86-5.51-19.64zM512 352c-41.58 0-77.55-27.13-90.78-64h181.2C589 325.23 553.28 352 512 352zm-90.27-96l90.31-145.76L602.98 256H421.73zM536 480H336V125.74c22.29-5.77 39.71-23.13 45.62-45.36l148.29-49.62c4.19-1.4 6.45-5.94 5.05-10.12l-5.08-15.17c-1.4-4.19-5.94-6.45-10.12-5.05L381.34 46.73C373.77 19.83 349.32 0 320 0c-35.35 0-64 28.65-64 64 0 8.21 1.67 15.98 4.54 23.15l-150.45 50.34c-4.19 1.4-6.45 5.94-5.05 10.12l5.08 15.17c1.4 4.19 5.94 6.45 10.12 5.05l160.45-53.68c6.82 5.36 14.67 9.34 23.32 11.58V504c0 4.42 3.58 8 8 8h224c4.42 0 8-3.58 8-8v-16c-.01-4.42-3.59-8-8.01-8zM288 64c0-17.64 14.36-32 32-32s32 14.36 32 32-14.36 32-32 32-32-14.36-32-32zM141.35 199.12c-3.17-4.75-8.26-7.12-13.35-7.12s-10.18 2.38-13.35 7.12L5.6 375.09c-3.87 5.78-6.09 12.72-5.51 19.64C5.56 460.4 60.74 512 128 512s122.44-51.6 127.91-117.27c.58-6.92-1.64-13.86-5.51-19.64L141.35 199.12zM128 480c-41.58 0-77.55-27.13-90.78-64h181.2C205 453.23 169.28 480 128 480zm-90.27-96l90.31-145.76L218.98 384H37.73z\"]\n};\nvar faBalanceScaleRight = {\n prefix: 'fal',\n iconName: 'balance-scale-right',\n icon: [640, 512, [], \"f516\", \"M634.4 375.09L525.35 199.12c-3.17-4.75-8.26-7.12-13.35-7.12s-10.18 2.38-13.35 7.12L389.6 375.09c-3.87 5.78-6.09 12.72-5.51 19.64C389.56 460.4 444.74 512 512 512c67.27 0 122.45-51.6 127.91-117.27.57-6.92-1.64-13.86-5.51-19.64zM511.96 238.24L602.27 384H421.02l90.94-145.76zM512 480c-41.28 0-77-26.77-90.42-64h181.2c-13.23 36.87-49.2 64-90.78 64zm17.89-317.21l5.08-15.17c1.4-4.19-.86-8.72-5.05-10.12L379.46 87.15C382.33 79.98 384 72.21 384 64c0-35.35-28.65-64-64-64-29.32 0-53.77 19.83-61.34 46.73L120.24.42c-4.19-1.4-8.72.86-10.12 5.05l-5.08 15.17c-1.4 4.19.86 8.72 5.05 10.12l148.29 49.62c5.91 22.23 23.33 39.58 45.62 45.36V480H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h224c4.42 0 8-3.58 8-8V125.74c8.64-2.24 16.5-6.22 23.32-11.58l160.45 53.68c4.18 1.4 8.71-.86 10.12-5.05zM320 96c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32zm-64.09 170.73c.58-6.92-1.64-13.86-5.51-19.64L141.35 71.12C138.18 66.38 133.09 64 128 64s-10.18 2.38-13.35 7.12L5.6 247.09c-3.87 5.78-6.09 12.72-5.51 19.64C5.56 332.4 60.74 384 128 384s122.44-51.6 127.91-117.27zM127.96 110.24L218.27 256H37.02l90.94-145.76zM37.58 288h181.2c-13.23 36.87-49.2 64-90.78 64-41.28 0-77-26.77-90.42-64z\"]\n};\nvar faBallPile = {\n prefix: 'fal',\n iconName: 'ball-pile',\n icon: [576, 512, [], \"f77e\", \"M480 320c-10.4 0-20.3 2.1-29.7 5.2 18.2-17.5 29.7-41.9 29.7-69.2 0-53-43-96-96-96-10.4 0-20.3 2.1-29.7 5.2 18.3-17.5 29.7-42 29.7-69.2 0-53-43-96-96-96s-96 43-96 96c0 27.2 11.4 51.7 29.7 69.2-9.4-3.1-19.2-5.2-29.7-5.2-53 0-96 43-96 96 0 27.2 11.4 51.7 29.7 69.2-9.4-3.1-19.2-5.2-29.7-5.2-53 0-96 43-96 96s43 96 96 96 96-43 96-96c0-27.2-11.4-51.7-29.7-69.2 9.4 3.1 19.2 5.2 29.7 5.2s20.3-2.1 29.7-5.2c-18.3 17.5-29.7 42-29.7 69.2 0 53 43 96 96 96s96-43 96-96c0-27.2-11.4-51.7-29.7-69.2 9.4 3.1 19.2 5.2 29.7 5.2s20.3-2.1 29.7-5.2c-18.3 17.5-29.7 42-29.7 69.2 0 53 43 96 96 96s96-43 96-96-43-96-96-96zM288 32c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm29.7 293.2c-9.4-3.1-19.3-5.2-29.7-5.2s-20.3 2.1-29.7 5.2c18.2-17.5 29.7-41.9 29.7-69.2s-11.4-51.7-29.7-69.2c9.4 3.1 19.2 5.2 29.7 5.2s20.3-2.1 29.7-5.2c-18.3 17.5-29.7 42-29.7 69.2s11.4 51.7 29.7 69.2zM96 480c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm96-160c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm96 160c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm96-160c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm96 160c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64z\"]\n};\nvar faBallot = {\n prefix: 'fal',\n iconName: 'ballot',\n icon: [448, 512, [], \"f732\", \"M144 80h-32c-17.7 0-32 14.4-32 32v32c0 17.6 14.3 32 32 32h32c17.7 0 32-14.4 32-32v-32c0-17.6-14.3-32-32-32zm0 64h-32v-32h32v32zM416 0H32C14.3 0 0 14.4 0 32v448c0 17.6 14.3 32 32 32h384c17.7 0 32-14.4 32-32V32c0-17.6-14.3-32-32-32zm0 480H32V32h384v448zm-72-240H216c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h128c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-200 96h-32c-17.7 0-32 14.4-32 32v32c0 17.6 14.3 32 32 32h32c17.7 0 32-14.4 32-32v-32c0-17.6-14.3-32-32-32zm0 64h-32v-32h32v32zm200-32H216c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h128c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm0-256H216c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h128c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-200 96h-32c-17.7 0-32 14.4-32 32v32c0 17.6 14.3 32 32 32h32c17.7 0 32-14.4 32-32v-32c0-17.6-14.3-32-32-32zm0 64h-32v-32h32v32z\"]\n};\nvar faBallotCheck = {\n prefix: 'fal',\n iconName: 'ballot-check',\n icon: [448, 512, [], \"f733\", \"M112 432h32c17.7 0 32-14.4 32-32v-32c0-17.6-14.3-32-32-32h-32c-17.7 0-32 14.4-32 32v32c0 17.6 14.3 32 32 32zm0-64h32v32h-32v-32zm0-192h32c17.7 0 32-14.4 32-32v-32c0-17.6-14.3-32-32-32h-32c-17.7 0-32 14.4-32 32v32c0 17.6 14.3 32 32 32zm0-64h32v32h-32v-32zM416 0H32C14.3 0 0 14.4 0 32v448c0 17.6 14.3 32 32 32h384c17.7 0 32-14.4 32-32V32c0-17.6-14.3-32-32-32zm0 480H32V32h384v448zM216 144h128c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H216c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0 128h128c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H216c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0 128h128c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H216c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm-97.4-113.6c2.1 2.1 5.5 2.1 7.6 0l64.2-63.6c2.1-2.1 2.1-5.5 0-7.6l-12.6-12.7c-2.1-2.1-5.5-2.1-7.6 0l-47.6 47.2-20.6-20.9c-2.1-2.1-5.5-2.1-7.6 0l-12.7 12.6c-2.1 2.1-2.1 5.5 0 7.6l36.9 37.4z\"]\n};\nvar faBan = {\n prefix: 'fal',\n iconName: 'ban',\n icon: [512, 512, [], \"f05e\", \"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zM103.265 408.735c-80.622-80.622-84.149-208.957-10.9-293.743l304.644 304.643c-84.804 73.264-213.138 69.706-293.744-10.9zm316.37-11.727L114.992 92.365c84.804-73.263 213.137-69.705 293.743 10.9 80.622 80.621 84.149 208.957 10.9 293.743z\"]\n};\nvar faBandAid = {\n prefix: 'fal',\n iconName: 'band-aid',\n icon: [640, 512, [], \"f462\", \"M560 96H80c-44.1 0-80 35.9-80 80v160c0 44.1 35.9 80 80 80h480c44.1 0 80-35.9 80-80V176c0-44.1-35.9-80-80-80zM160 384H80c-26.5 0-48-21.5-48-48V176c0-26.5 21.5-48 48-48h80v256zm288 0H192V128h256v256zm160-48c0 26.5-21.5 48-48 48h-80V128h80c26.5 0 48 21.5 48 48v160zM272 228c11 0 20-9 20-20s-9-20-20-20-20 9-20 20 9 20 20 20zm96 0c11 0 20-9 20-20s-9-20-20-20-20 9-20 20 9 20 20 20zm-96 96c11 0 20-9 20-20s-9-20-20-20-20 9-20 20 9 20 20 20zm96 0c11 0 20-9 20-20s-9-20-20-20-20 9-20 20 9 20 20 20z\"]\n};\nvar faBanjo = {\n prefix: 'fal',\n iconName: 'banjo',\n icon: [512, 512, [], \"f8a3\", \"M121 334.46a8 8 0 0 0-11.32 0l-11.34 11.32a8 8 0 0 0 0 11.31l56.57 56.57a8 8 0 0 0 11.31 0l11.32-11.32a8 8 0 0 0 0-11.31zm380.81-292l-32.3-32.24a34.91 34.91 0 0 0-49.36 0l-50.52 50.52a38.46 38.46 0 0 0-9.29 15.05L339 139.85c-.39.3-1 .18-1.31.54l-94.93 94.93A142.12 142.12 0 0 0 176 209.61V208a16 16 0 0 0-32 0v1.61A142.42 142.42 0 0 0 70.57 240l-1.07-1.07a16 16 0 0 0-22.63 22.57l1.13 1.07A142.42 142.42 0 0 0 17.61 336H16a16 16 0 0 0 0 32h1.61A142.42 142.42 0 0 0 48 441.43l-1.08 1.07a16 16 0 1 0 22.58 22.62l1.07-1.07A142.42 142.42 0 0 0 144 494.39V496a16 16 0 0 0 32 0v-1.61a142.42 142.42 0 0 0 73.43-30.34l1.07 1.07a16 16 0 0 0 22.62-22.62l-1.07-1.07A142.42 142.42 0 0 0 302.39 368H304a16 16 0 0 0 0-32h-1.61a142.12 142.12 0 0 0-25.71-66.74l94.93-94.93c.36-.37.23-.92.54-1.31l64.06-21.36a38.46 38.46 0 0 0 15.05-9.29l50.52-50.52a34.92 34.92 0 0 0 0-49.37zM160 464a112 112 0 1 1 112-112 112.12 112.12 0 0 1-112 112zM479.15 69.22l-50.52 50.52a6.54 6.54 0 0 1-2.53 1.57L373 139l17.7-53.1a6.4 6.4 0 0 1 1.56-2.53l50.52-50.52a2.91 2.91 0 0 1 4.11 0l32.26 32.26a2.92 2.92 0 0 1 0 4.11z\"]\n};\nvar faBarcode = {\n prefix: 'fal',\n iconName: 'barcode',\n icon: [512, 512, [], \"f02a\", \"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\"]\n};\nvar faBarcodeAlt = {\n prefix: 'fal',\n iconName: 'barcode-alt',\n icon: [640, 512, [], \"f463\", \"M280 96h-16c-4.4 0-8 3.6-8 8v304c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8zm-64 0h-16c-4.4 0-8 3.6-8 8v304c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8zM592 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h544c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zm16 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h544c8.8 0 16 7.2 16 16v416zM152 96h-48c-4.4 0-8 3.6-8 8v304c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8zm384 0h-48c-4.4 0-8 3.6-8 8v304c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8zm-128 0h-48c-4.4 0-8 3.6-8 8v304c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8z\"]\n};\nvar faBarcodeRead = {\n prefix: 'fal',\n iconName: 'barcode-read',\n icon: [640, 512, [], \"f464\", \"M152 0H8C3.6 0 0 3.6 0 8v152c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V32h120c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8zm0 480H32V352c0-4.4-3.6-8-8-8H8c-4.4 0-8 3.6-8 8v152c0 4.4 3.6 8 8 8h144c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM632 0H488c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h120v128c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8zm0 344h-16c-4.4 0-8 3.6-8 8v128H488c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h144c4.4 0 8-3.6 8-8V352c0-4.4-3.6-8-8-8zM152 96h-48c-4.4 0-8 3.6-8 8v304c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8zm336 320h48c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v304c0 4.4 3.6 8 8 8zM408 96h-48c-4.4 0-8 3.6-8 8v304c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8zm-192 0h-16c-4.4 0-8 3.6-8 8v304c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8zm64 0h-16c-4.4 0-8 3.6-8 8v304c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8z\"]\n};\nvar faBarcodeScan = {\n prefix: 'fal',\n iconName: 'barcode-scan',\n icon: [640, 512, [], \"f465\", \"M160 8c0-4.4-3.6-8-8-8H72c-4.4 0-8 3.6-8 8v152h96V8zm128 0c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152h64V8zm96 0c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v152h32V8zm96 0c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152h64V8zm96 0c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152h64V8zM416 504c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V352h-64v152zm-64 0c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V352h-32v152zm-288 0c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8V352H64v152zm160 0c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V352h-64v152zm288 0c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V352h-64v152zm120-264H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h624c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faBars = {\n prefix: 'fal',\n iconName: 'bars',\n icon: [448, 512, [], \"f0c9\", \"M442 114H6a6 6 0 0 1-6-6V84a6 6 0 0 1 6-6h436a6 6 0 0 1 6 6v24a6 6 0 0 1-6 6zm0 160H6a6 6 0 0 1-6-6v-24a6 6 0 0 1 6-6h436a6 6 0 0 1 6 6v24a6 6 0 0 1-6 6zm0 160H6a6 6 0 0 1-6-6v-24a6 6 0 0 1 6-6h436a6 6 0 0 1 6 6v24a6 6 0 0 1-6 6z\"]\n};\nvar faBaseball = {\n prefix: 'fal',\n iconName: 'baseball',\n icon: [640, 512, [], \"f432\", \"M627.2 60.1l-23.6-32.5C581-3.5 538.9-8.2 510 12.8L307.7 159.6c-45.6 33.1-87.3 71.3-124.3 113.8-29 33.3-72.5 78.6-130.3 120.6l-21.6 15.7c-.2-.3-11.3-17.4-25.5-6.2-6.9 5.5-8 15.6-2.5 22.5l64 80c5.2 6.5 15.2 8.3 22.5 2.5.5-.4 12.9-9.5.1-25.5l18.2-13.2c66-47.9 122.3-72.6 155.1-86.5 51.9-22 101.2-49.9 146.8-83l202.3-146.8c29.8-21.7 36.4-63.5 14.7-93.4zM70.1 458l-18.6-23.2c28.9-20.9 71.8-50.7 125-106.3l32.3 44.4C140.6 405.7 99.2 436.8 70.1 458zm523.5-330.4c-247 179.2-243.1 182.5-359.9 233.8L195 308.3c84.9-95.1 86.5-90.2 333.8-269.6 14.8-10.7 36.9-8.7 48.9 7.7l23.6 32.5c11.4 15.6 7.9 37.4-7.7 48.7zM496 352c-44.1 0-80 35.9-80 80s35.9 80 80 80 80-35.9 80-80-35.9-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 48z\"]\n};\nvar faBaseballBall = {\n prefix: 'fal',\n iconName: 'baseball-ball',\n icon: [496, 512, [], \"f433\", \"M248 8C111.2 8 0 119.2 0 256s111.2 248 248 248 248-111.2 248-248S384.8 8 248 8zM103.5 416.1c16.7-17.4 30.6-37.2 41.3-59.1L118 344c-9.1 18.8-21.8 35.1-36 50-85.6-102.8-45.3-221.5 0-276 14.2 14.9 26.8 31.2 36 49.8l26.8-13.1c-10.6-21.8-24.5-41.5-41.2-58.9 79.1-71.4 203.1-77.6 289-.1-16.7 17.4-30.6 37.1-41.2 59l26.8 13c9.1-18.7 21.7-35 36-50 78.1 93.7 54.6 210.4.1 275.9-14.3-14.9-26.9-31.2-36-49.9l-26.8 13.1c10.7 21.9 24.5 41.6 41.3 58.9-90 81.5-214.3 68.2-289.3.4zm53.2-88.6l-28.3-9.2c12.2-37.5 14-81.5-.1-124.7l28.3-9.2c16.3 50 14 100.4.1 143.1zm211-9.2l-28.3 9.2c-16.3-50-14-100.5-.1-143.1l28.3 9.2c-12.2 37.6-13.9 81.6.1 124.7z\"]\n};\nvar faBasketballBall = {\n prefix: 'fal',\n iconName: 'basketball-ball',\n icon: [496, 512, [], \"f434\", \"M423.4 80.6c-96.7-96.7-254.2-96.7-350.9 0s-96.7 254.2 0 350.9c96.8 96.8 254.2 96.7 350.9 0 96.8-96.8 96.8-254.2 0-350.9zM241.2 471.7c-48-1.5-95.6-18.9-134.1-52.1l140.9-141 56.8 56.8c-33.9 38.3-56 85.7-63.6 136.3zm86.7-113.2l61 61c-33.3 28.7-73.2 45.6-114.4 50.6 7.4-41.3 25.8-79.8 53.4-111.6zm22.6-22.6c31.8-27.6 70.3-46 111.6-53.3-5.1 41.2-21.9 81.1-50.6 114.4l-61-61.1zm113.2-86.7c-50.6 7.6-98 29.7-136.3 63.5L270.6 256l140.9-140.9c33.3 38.5 50.7 86.1 52.2 134.1zm-315-69.9c-32.6 28.4-72.6 47.2-115.4 54.1 4.4-42.6 21.6-84 51.2-118.3l64.2 64.2zm-41.6-86.9c34.3-29.6 75.7-46.7 118.3-51.2-6.9 42.8-25.7 82.8-54.1 115.4l-64.2-64.2zm150.6-51.9c47 2.1 93.4 19.4 131.2 52L248 233.4l-54.1-54.1c34.5-38.9 56.7-87.2 63.8-138.8zM32.5 265.7c51.6-7.2 99.9-29.4 138.8-63.8l54.1 54.1-141 140.9c-32.5-37.8-49.8-84.1-51.9-131.2z\"]\n};\nvar faBasketballHoop = {\n prefix: 'fal',\n iconName: 'basketball-hoop',\n icon: [640, 512, [], \"f435\", \"M640 339.7c0 19.5-10.4 36.9-28.5 44.4l-108.3 44.5 2.5-35.7 93.6-38.4c6-2.5 9.9-8.3 9.9-14.8V216C527.1-8 115.7-8.9 33.2 216v123.7c0 6.5 3.9 12.3 9.9 14.8l93.6 38.4 2.5 35.7L31 384.1c-18.1-7.5-31-24.9-31-44.4l.8-131.4C1.4 206.3 69.3 16 321.2 16s317.3 190.3 317.9 192.3c1.2 7.1.9-9.1.9 131.4zM462.4 512L387 440.4 321.2 512l-65.8-71.6L180 512l-18.2-224h-24.6c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h368c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8h-24.6l-18.2 224zM207.9 352.4l46.7 43.6 44-44-42.1-42.1-48.6 42.5zm113.3-23l41.4-41.4h-82.8l41.4 41.4zm22.6 22.6l44 44 46.7-43.6-48.5-42.5-42.2 42.1zm104.7-64h-39l36.5 31.9 2.5-31.9zm-254.6 0l2.6 31.9L233 288h-39.1zM232 418.6l-29.9-27.9 4.3 53.5 25.6-25.6zm132.4-.8l-43.2-43.2-43.2 43.2 43.2 40.3 43.2-40.3zm71.6 26.4l4.3-53.5-29.9 27.9 25.6 25.6zM465.2 224v-89.9h-288V224h32v-57.9h224V224h32z\"]\n};\nvar faBat = {\n prefix: 'fal',\n iconName: 'bat',\n icon: [640, 512, [], \"f6b5\", \"M638.61 287.25L568.3 129.7c-5.48-12.27-17.85-19.4-30.67-19.4-5.81 0-11.7 1.46-17.1 4.57l-104.9 60.44L384 64l-50.11 48h-27.77L256 64l-31.62 111.3-104.9-60.44c-5.4-3.11-11.3-4.57-17.1-4.57-12.83 0-25.2 7.13-30.67 19.4L1.39 287.25c-5.66 12.69 6.94 25.85 20.58 21.48l16.48-5.27a69.132 69.132 0 0 1 21.07-3.29c21.83 0 42.85 10.33 55.46 28.51L153.39 384l12.31-11.82c13.11-12.59 30.14-18.75 47.09-18.75 20.13 0 40.15 8.69 53.36 25.6L320 448l53.86-68.97c13.21-16.91 33.23-25.6 53.36-25.6 16.95 0 33.98 6.16 47.09 18.75l12.3 11.82 38.41-55.33c12.61-18.17 33.63-28.51 55.46-28.51 7.02 0 14.13 1.07 21.07 3.29l16.48 5.27c13.64 4.38 26.24-8.78 20.58-21.47zm-58.13-19.08c-33.5 0-64.6 15.98-83.19 42.76l-17.32 24.95c-15.69-9.41-33.82-14.44-52.76-14.44-31.79 0-60.96 14-80.01 38.4L320 394.67l-27.2-34.83c-19.06-24.4-48.22-38.4-80.02-38.4-18.94 0-37.07 5.03-52.76 14.44l-17.32-24.95c-18.59-26.77-49.68-42.76-83.19-42.76-4.62 0-9.21.31-13.77.92l56.58-126.78 143.47 82.66 26.05-100.06 20.99 19.1h54.33l20.99-19.1 26.05 100.06 143.47-82.66 56.58 126.78c-4.55-.62-9.15-.92-13.77-.92z\"]\n};\nvar faBath = {\n prefix: 'fal',\n iconName: 'bath',\n icon: [512, 512, [], \"f2cd\", \"M504,256H64V61.25a29.26,29.26,0,0,1,49.94-20.69L139.18,65.8A71.49,71.49,0,0,0,128,104c0,20.3,8.8,38.21,22.34,51.26L138.58,167a8,8,0,0,0,0,11.31l11.31,11.32a8,8,0,0,0,11.32,0L285.66,65.21a8,8,0,0,0,0-11.32L274.34,42.58a8,8,0,0,0-11.31,0L251.26,54.34C238.21,40.8,220.3,32,200,32a71.44,71.44,0,0,0-38.2,11.18L136.56,18A61.24,61.24,0,0,0,32,61.25V256H8a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H32v96c0,41.74,26.8,76.9,64,90.12V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V480H384v24a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V474.12c37.2-13.22,64-48.38,64-90.12V288h24a8,8,0,0,0,8-8V264A8,8,0,0,0,504,256ZM228.71,76.9,172.9,132.71A38.67,38.67,0,0,1,160,104a40,40,0,0,1,40-40A38.67,38.67,0,0,1,228.71,76.9ZM448,384a64.07,64.07,0,0,1-64,64H128a64.07,64.07,0,0,1-64-64V288H448Z\"]\n};\nvar faBatteryBolt = {\n prefix: 'fal',\n iconName: 'battery-bolt',\n icon: [640, 512, [], \"f376\", \"M640 184v144c0 13.255-10.745 24-24 24h-8v16c0 26.51-21.49 48-48 48H400.69l18.028-32H560c8.823 0 16-7.177 16-16v-48h32V192h-32v-48c0-8.823-7.177-16-16-16h-90.776c-13.223-9.205-28.229-14.344-43.41-15.66l3.971-15.195c.101-.381.191-.763.287-1.145H560c26.51 0 48 21.49 48 48v16h8c13.255 0 24 10.745 24 24zM32 368V144c0-8.823 7.177-16 16-16h95.388l3.21-32H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h149.734c.034-.133.063-.267.097-.4l7.71-31.6H48c-8.823 0-16-7.177-16-16zm422.616-145.511L321.664 458.482C314.042 472.12 299.81 480 284.985 480c-27.295 0-47.645-25.901-40.605-52.684L278.374 288h-56.37c-24.74 0-44.15-21.313-41.812-45.964l17.252-172C199.487 48.472 217.595 32 239.255 32h103.557c27.656 0 47.711 26.272 40.563 52.892L363.745 160h54.208c32.032 0 52.288 34.528 36.663 62.489zM417.952 192h-95.646l30.11-115.2.027-.104.028-.103c1.7-6.331-3.078-12.593-9.658-12.593H239.255a9.96 9.96 0 0 0-9.956 9.056l-.008.087-.009.087-17.24 171.881c-.523 5.829 4.089 10.89 9.96 10.89h97.117l-43.653 178.902-.067.275-.072.274c-1.723 6.555 3.374 12.548 9.656 12.548 2.842 0 6.632-1.347 8.744-5.128l.027-.048.027-.048L426.69 206.86c3.693-6.634-1.12-14.86-8.738-14.86z\"]\n};\nvar faBatteryEmpty = {\n prefix: 'fal',\n iconName: 'battery-empty',\n icon: [640, 512, [], \"f244\", \"M560 128c8.823 0 16 7.177 16 16v48h32v128h-32v48c0 8.823-7.177 16-16 16H48c-8.823 0-16-7.177-16-16V144c0-8.823 7.177-16 16-16h512m0-32H48c-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\"]\n};\nvar faBatteryFull = {\n prefix: 'fal',\n iconName: 'battery-full',\n icon: [640, 512, [], \"f240\", \"M560 128c8.823 0 16 7.177 16 16v48h32v128h-32v48c0 8.823-7.177 16-16 16H48c-8.823 0-16-7.177-16-16V144c0-8.823 7.177-16 16-16h512m0-32H48c-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-48zM128 314V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6z\"]\n};\nvar faBatteryHalf = {\n prefix: 'fal',\n iconName: 'battery-half',\n icon: [640, 512, [], \"f242\", \"M560 128c8.823 0 16 7.177 16 16v48h32v128h-32v48c0 8.823-7.177 16-16 16H48c-8.823 0-16-7.177-16-16V144c0-8.823 7.177-16 16-16h512m0-32H48c-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-48zM128 314V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6z\"]\n};\nvar faBatteryQuarter = {\n prefix: 'fal',\n iconName: 'battery-quarter',\n icon: [640, 512, [], \"f243\", \"M560 128c8.823 0 16 7.177 16 16v48h32v128h-32v48c0 8.823-7.177 16-16 16H48c-8.823 0-16-7.177-16-16V144c0-8.823 7.177-16 16-16h512m0-32H48c-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-48zM128 314V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6z\"]\n};\nvar faBatterySlash = {\n prefix: 'fal',\n iconName: 'battery-slash',\n icon: [640, 512, [], \"f377\", \"M637 485.25L23 1.75A8 8 0 0 0 11.76 3l-10 12.51A8 8 0 0 0 3 26.75l614 483.5a8 8 0 0 0 11.24-1.25l10-12.51a8 8 0 0 0-1.24-11.24zM48 384a16 16 0 0 1-16-16V144a16 16 0 0 1 16-16h31.85L40.21 96.79A47.9 47.9 0 0 0 0 144v224a48 48 0 0 0 48 48h397.58L405 384zm568-224h-8v-16a48 48 0 0 0-48-48H194.4l40.6 32h325a16 16 0 0 1 16 16v48h32v128h-32v48a16 16 0 0 1-15.89 16l28.45 22.41A47.81 47.81 0 0 0 608 368v-16h8a24 24 0 0 0 24-24V184a24 24 0 0 0-24-24z\"]\n};\nvar faBatteryThreeQuarters = {\n prefix: 'fal',\n iconName: 'battery-three-quarters',\n icon: [640, 512, [], \"f241\", \"M560 128c8.823 0 16 7.177 16 16v48h32v128h-32v48c0 8.823-7.177 16-16 16H48c-8.823 0-16-7.177-16-16V144c0-8.823 7.177-16 16-16h512m0-32H48c-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-48zM128 314V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6zm64 0V198a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v116a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6z\"]\n};\nvar faBed = {\n prefix: 'fal',\n iconName: 'bed',\n icon: [640, 512, [], \"f236\", \"M144 320c44.11 0 80-35.89 80-80s-35.89-80-80-80-80 35.89-80 80 35.89 80 80 80zm0-128c26.47 0 48 21.53 48 48s-21.53 48-48 48-48-21.53-48-48 21.53-48 48-48zm384-32H272c-8.84 0-16 7.16-16 16v176H32V72c0-4.42-3.58-8-8-8H8c-4.42 0-8 3.58-8 8v368c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h576v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V272c0-61.86-50.14-112-112-112zm80 192H288V192h240c44.11 0 80 35.89 80 80v80z\"]\n};\nvar faBedAlt = {\n prefix: 'fal',\n iconName: 'bed-alt',\n icon: [512, 512, [], \"f8f7\", \"M480,226.15V80a48,48,0,0,0-48-48H80A48,48,0,0,0,32,80V226.15C13.74,231,0,246.89,0,266.67V472a8,8,0,0,0,8,8H24a8,8,0,0,0,8-8V416H480v56a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V266.67C512,246.89,498.26,231,480,226.15ZM64,192a32,32,0,0,1,32-32H208a32,32,0,0,1,32,32v32H64Zm384,32H272V192a32,32,0,0,1,32-32H416a32,32,0,0,1,32,32ZM80,64H432a16,16,0,0,1,16,16v56.9a63.27,63.27,0,0,0-32-8.9H304a63.9,63.9,0,0,0-48,21.71A63.9,63.9,0,0,0,208,128H96a63.27,63.27,0,0,0-32,8.9V80A16,16,0,0,1,80,64ZM32,384V266.67A10.69,10.69,0,0,1,42.67,256H469.33A10.69,10.69,0,0,1,480,266.67V384Z\"]\n};\nvar faBedBunk = {\n prefix: 'fal',\n iconName: 'bed-bunk',\n icon: [576, 512, [], \"f8f8\", \"M464,0H240a16,16,0,0,0-16,16V160H32V8a8,8,0,0,0-8-8H8A8,8,0,0,0,0,8V504a8,8,0,0,0,8,8H24a8,8,0,0,0,8-8V448H544v56a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V112A112,112,0,0,0,464,0Zm80,376v40H256V288H464a80.09,80.09,0,0,1,80,80Zm0-86.23A111.53,111.53,0,0,0,464,256H240a16,16,0,0,0-16,16V416H32V192H544ZM544,160H256V32H464a80.09,80.09,0,0,1,80,80ZM128,128A64,64,0,1,0,64,64,64,64,0,0,0,128,128Zm0-96A32,32,0,1,1,96,64,32,32,0,0,1,128,32Zm0,352a64,64,0,1,0-64-64A64,64,0,0,0,128,384Zm0-96a32,32,0,1,1-32,32A32,32,0,0,1,128,288Z\"]\n};\nvar faBedEmpty = {\n prefix: 'fal',\n iconName: 'bed-empty',\n icon: [640, 512, [], \"f8f9\", \"M528,128H32V72a8,8,0,0,0-8-8H8a8,8,0,0,0-8,8V440a8,8,0,0,0,8,8H24a8,8,0,0,0,8-8V384H608v56a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V240A112,112,0,0,0,528,128ZM32,352V160H160V352Zm576,0H192V160H528a80.09,80.09,0,0,1,80,80Z\"]\n};\nvar faBeer = {\n prefix: 'fal',\n iconName: 'beer',\n icon: [448, 512, [], \"f0fc\", \"M384 96h-32V80c0-26.51-21.49-48-48-48H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h256c26.51 0 48-21.49 48-48v-22.112l60.621-30.311C434.443 368.666 448 346.731 448 322.334V160c0-35.29-28.71-64-64-64zm-64 336c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h256c8.822 0 16 7.178 16 16v352zm96-109.666c0 12.199-6.778 23.166-17.689 28.622L352 374.112V128h32c17.645 0 32 14.355 32 32v162.334zM192 144v224c0 8.837-7.164 16-16 16s-16-7.163-16-16V144c0-8.837 7.164-16 16-16s16 7.163 16 16zm-64 0v224c0 8.837-7.164 16-16 16s-16-7.163-16-16V144c0-8.837 7.164-16 16-16s16 7.163 16 16zm128 0v224c0 8.837-7.163 16-16 16s-16-7.163-16-16V144c0-8.837 7.163-16 16-16s16 7.163 16 16z\"]\n};\nvar faBell = {\n prefix: 'fal',\n iconName: 'bell',\n icon: [448, 512, [], \"f0f3\", \"M224 480c-17.66 0-32-14.38-32-32.03h-32c0 35.31 28.72 64.03 64 64.03s64-28.72 64-64.03h-32c0 17.65-14.34 32.03-32 32.03zm209.38-145.19c-27.96-26.62-49.34-54.48-49.34-148.91 0-79.59-63.39-144.5-144.04-152.35V16c0-8.84-7.16-16-16-16s-16 7.16-16 16v17.56C127.35 41.41 63.96 106.31 63.96 185.9c0 94.42-21.39 122.29-49.35 148.91-13.97 13.3-18.38 33.41-11.25 51.23C10.64 404.24 28.16 416 48 416h352c19.84 0 37.36-11.77 44.64-29.97 7.13-17.82 2.71-37.92-11.26-51.22zM400 384H48c-14.23 0-21.34-16.47-11.32-26.01 34.86-33.19 59.28-70.34 59.28-172.08C95.96 118.53 153.23 64 224 64c70.76 0 128.04 54.52 128.04 121.9 0 101.35 24.21 138.7 59.28 172.08C421.38 367.57 414.17 384 400 384z\"]\n};\nvar faBellExclamation = {\n prefix: 'fal',\n iconName: 'bell-exclamation',\n icon: [448, 512, [], \"f848\", \"M433.37 334.81c-28-26.62-49.34-54.48-49.34-148.9 0-79.6-63.37-144.5-144-152.36V16a16 16 0 0 0-32 0v17.56C127.35 41.41 64 106.31 64 185.91c0 94.4-21.41 122.28-49.35 148.9a46.47 46.47 0 0 0-11.27 51.24A47.68 47.68 0 0 0 48 416h352a47.67 47.67 0 0 0 44.62-30 46.47 46.47 0 0 0-11.25-51.19zM400 384H48c-14.22 0-21.35-16.47-11.32-26C71.54 324.8 96 287.66 96 185.91 96 118.53 153.22 64 224 64s128 54.52 128 121.91c0 101.34 24.22 138.68 59.28 172.07C421.37 367.56 414.16 384 400 384zm-176 96a32 32 0 0 1-32-32h-32a64 64 0 1 0 128 0h-32a32 32 0 0 1-32 32zm-8.5-224h17a8.13 8.13 0 0 0 8-7.5l7-112a8 8 0 0 0-8-8.5h-31a8 8 0 0 0-8 8.5l7 112a8 8 0 0 0 8 7.5zm8.5 24a24 24 0 1 0 24 24 24 24 0 0 0-24-24z\"]\n};\nvar faBellOn = {\n prefix: 'fal',\n iconName: 'bell-on',\n icon: [640, 512, [], \"f8fa\", \"M528,64a16.17,16.17,0,0,0,7.16-1.69l64-32A16,16,0,0,0,584.84,1.69l-64,32A16,16,0,0,0,528,64ZM80,160H16a16,16,0,0,0,0,32H80a16,16,0,0,0,0-32ZM40.84,30.31l64,32A16.17,16.17,0,0,0,112,64a16,16,0,0,0,7.16-30.31l-64-32A16,16,0,0,0,40.84,30.31ZM624,160H560a16,16,0,0,0,0,32h64a16,16,0,0,0,0-32ZM320,480a32,32,0,0,1-32-32H256a64,64,0,1,0,128,0H352A32,32,0,0,1,320,480ZM480,185.91c0-79.6-63.37-144.5-144-152.36V16a16,16,0,0,0-32,0V33.56c-80.66,7.85-144,72.75-144,152.35,0,94.4-21.41,122.28-49.35,148.9a46.45,46.45,0,0,0-11.24,51.24A47.67,47.67,0,0,0,144,416H496a47.66,47.66,0,0,0,44.62-30,46.49,46.49,0,0,0-11.24-51.22C501.41,308.19,480,280.33,480,185.91ZM496,384H144c-14.22,0-21.34-16.47-11.31-26C167.53,324.8,192,287.66,192,185.91,192,118.53,249.22,64,320,64s128,54.52,128,121.91c0,101.34,24.22,138.68,59.28,172.07C517.38,367.56,510.16,384,496,384Z\"]\n};\nvar faBellPlus = {\n prefix: 'fal',\n iconName: 'bell-plus',\n icon: [448, 512, [], \"f849\", \"M224 480a32 32 0 0 1-32-32h-32a64 64 0 1 0 128 0h-32a32 32 0 0 1-32 32zm209.37-145.19c-28-26.62-49.34-54.48-49.34-148.9 0-79.6-63.37-144.5-144-152.36V16a16 16 0 0 0-32 0v17.56C127.35 41.41 64 106.31 64 185.91c0 94.4-21.41 122.28-49.35 148.9a46.47 46.47 0 0 0-11.27 51.24A47.68 47.68 0 0 0 48 416h352a47.67 47.67 0 0 0 44.62-30 46.47 46.47 0 0 0-11.25-51.19zM400 384H48c-14.22 0-21.35-16.47-11.32-26C71.54 324.8 96 287.66 96 185.91 96 118.53 153.22 64 224 64s128 54.52 128 121.91c0 101.34 24.22 138.68 59.28 172.07C421.37 367.56 414.16 384 400 384zM296 224h-56v-56a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v56h-56a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h56v56a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-56h56a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faBellSchool = {\n prefix: 'fal',\n iconName: 'bell-school',\n icon: [512, 512, [], \"f5d5\", \"M208 128c-44.11 0-80 35.89-80 80s35.89 80 80 80 80-35.89 80-80-35.89-80-80-80zm0 128c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm256 48c-26.47 0-48 21.53-48 48 0 20.15 12.51 37.37 30.15 44.48C440.62 416.88 422.13 432 400 432h-48v-74.12c39.38-37.85 64-90.94 64-149.88C416 93.12 322.88 0 208 0S0 93.12 0 208c0 58.93 24.62 112.03 64 149.88V480c0 17.67 14.33 32 32 32h224c17.67 0 32-14.33 32-32v-16h48c39.51 0 72.19-28.84 78.64-66.53C497.92 391.24 512 373.33 512 352c0-26.47-21.53-48-48-48zM320 480H96v-96.91C128.35 403.82 166.72 416 208 416s79.65-12.18 112-32.91V480zm-112-96c-97.05 0-176-78.95-176-176S110.95 32 208 32s176 78.95 176 176-78.95 176-176 176zm256-16c-8.81 0-16-7.17-16-16s7.19-16 16-16 16 7.17 16 16-7.19 16-16 16z\"]\n};\nvar faBellSchoolSlash = {\n prefix: 'fal',\n iconName: 'bell-school-slash',\n icon: [640, 512, [], \"f5d6\", \"M272 32c97 0 176 79 176 176 0 26.6-6.1 51.8-16.8 74.5l25.6 20.2c14.6-28.4 23.1-60.5 23.1-94.7C480 93.1 386.9 0 272 0c-51.8 0-99.1 19.1-135.5 50.4l25.7 20.3C192.4 46.5 230.5 32 272 32zm-29.6 101.8l33.8 26.6c19.3 1.7 35.1 14.7 41.1 32.3l33.6 26.4c.5-3.7 1.1-7.4 1.1-11.2 0-44.1-35.9-80-80-80-10.5.1-20.4 2.3-29.6 5.9zM528 336c8.8 0 16 7.2 16 16 0 5.7-3.2 10.4-7.6 13.3l25.3 19.9c8.6-8.6 14.3-20 14.3-33.2 0-26.5-21.5-48-48-48-17.2 0-32.1 9.1-40.6 22.7l25.7 20.2c2.1-6.3 7.9-10.9 14.9-10.9zm109 149.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zM464 432h-48v-39.3l-47.7-37.6C340.6 373.3 307.5 384 272 384c-97 0-176-79-176-176 0-20.8 3.8-40.6 10.4-59.1L80 128.1c-10.2 24.6-16 51.6-16 79.9 0 58.9 24.6 112 64 149.9V480c0 17.7 14.3 32 32 32h224c17.7 0 32-14.3 32-32v-16h48c11.9 0 22.9-2.9 33-7.5l-31.5-24.8c-.5.1-.9.3-1.5.3zm-80 0v48H160v-96.9c32.4 20.7 70.7 32.9 112 32.9s79.7-12.2 112-32.9zM281.8 287l-88.9-70c4.6 39.8 38.1 71 79.1 71 3.4 0 6.5-.6 9.8-1z\"]\n};\nvar faBellSlash = {\n prefix: 'fal',\n iconName: 'bell-slash',\n icon: [640, 512, [], \"f1f6\", \"M320 480c-17.7 0-32-14.4-32-32h-32c0 35.3 28.7 64 64 64s64-28.7 64-64h-32c0 17.6-14.3 32-32 32zm0-416c70.8 0 128 54.5 128 121.9 0 63.2 9.4 101.6 25 129.5l70.7 55.7c.7-13.4-4.2-26.6-14.4-36.3-28-26.6-49.3-54.5-49.3-148.9 0-79.6-63.4-144.5-144-152.3V16c0-8.8-7.2-16-16-16s-16 7.2-16 16v17.6c-43.9 4.2-84.2 26.2-111.5 60.9l24.7 19.4C240.4 83.8 277.7 64 320 64zm317 421.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zM144 384c-14.2 0-21.3-16.5-11.3-26 31.2-29.7 53.9-63 58.3-142.4L159.8 191c-.8 90-21.8 117.7-49.2 143.8-14 13.3-18.4 33.4-11.2 51.2 7.3 18.2 24.8 30 44.6 30h301.6L405 384z\"]\n};\nvar faBells = {\n prefix: 'fal',\n iconName: 'bells',\n icon: [640, 512, [], \"f77f\", \"M638.4 313.9c-2.1-5.9-6.4-11.2-12.9-14.5-21-10.8-58.3-24.9-87.4-105-.8-2.2-14.7-40.5-15.4-42.6C503 97.6 451.8 64 397.4 64c-15.1 0-30.5 2.6-45.6 8.1-3.6 1.3-6.6 3.3-10 4.8-14.2-16-32.1-29-53.5-36.8-15-5.5-30.5-8.1-45.6-8.1-54.5 0-105.6 33.6-125.3 87.8-.8 2.1-14.6 40.4-15.4 42.6-29.2 80.1-66.4 94.3-87.4 105-6.5 3.3-10.8 8.6-12.9 14.5-4.6 12.9 1 28.8 16 34.2l82 29.9c-2.1 7-3.6 14.3-3.6 22 0 44.2 35.8 80 80 80 32.6 0 60.5-19.6 72.9-47.7l42.1 15.3c-2.8 6.5-7.5 14.8-3.4 26 4.9 13.1 19.6 21.3 34.3 15.9l76-27.7c11.8 29.4 40.5 50.1 74.1 50.1 44.2 0 80-35.8 80-80 0-8.7-1.9-16.8-4.6-24.5l75-27.3c14.9-5.4 20.5-21.3 15.9-34.2zM176 416c-26.5 0-48-21.5-48-48 0-3.9.6-7.5 1.5-11.1l88.9 32.4C210.6 405 194.7 416 176 416zm124.7-30.9L40.1 290.3c24.5-12.8 63.2-38.2 91.8-117 8.3-22.9 5.1-14.1 15.4-42.6C161.9 90.8 200.2 64 242.6 64c44.7 0 70.8 29.1 71.6 29.9-43.3 34.8-62.2 94-42.2 149.1.8 2.1 14.8 40.4 15.6 42.6 16.9 46.4 17.4 77.3 13.1 99.5zM472 448c-19.7 0-36.1-12.2-43.4-29.3l89.3-32.5c1.3 4.4 2.1 9 2.1 13.8 0 26.5-21.5 48-48 48zm-149.5-24.8c10.6-25.6 23.8-69.8-4.8-148.7-9.6-26.3-5.5-15-15.6-42.6-19.1-52.5 8.1-110.8 60.6-129.9 53-19.3 110.9 8.5 129.9 60.6 9.7 26.7 5 13.8 15.4 42.6 28.7 78.8 67.3 104.2 91.8 117l-277.3 101z\"]\n};\nvar faBetamax = {\n prefix: 'fal',\n iconName: 'betamax',\n icon: [512, 512, [], \"f8a4\", \"M320 368h96a32 32 0 0 0 32-32v-96a32 32 0 0 0-32-32h-96a32 32 0 0 0-32 32v96a32 32 0 0 0 32 32zm0-128h96v96h-96zm-160 72a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm0 72a96 96 0 1 0-96-96 96 96 0 0 0 96 96zm0-160a64 64 0 1 1-64 64 64.07 64.07 0 0 1 64-64zM496 64H16A16 16 0 0 0 0 80v320a48 48 0 0 0 48 48h416a48 48 0 0 0 48-48V80a16 16 0 0 0-16-16zm-16 336a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V160h448zm0-272H32V96h448z\"]\n};\nvar faBezierCurve = {\n prefix: 'fal',\n iconName: 'bezier-curve',\n icon: [640, 512, [], \"f55b\", \"M576 176c35.35 0 64-28.65 64-64s-28.65-64-64-64c-29.79 0-54.6 20.44-61.74 48H400V64c0-17.67-14.33-32-32-32h-96c-17.67 0-32 14.33-32 32v32H125.74C118.6 68.44 93.79 48 64 48 28.65 48 0 76.65 0 112s28.65 64 64 64c29.79 0 54.6-20.44 61.74-48h112.81c-80.61 31.51-135.13 105.79-141.27 192H64c-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-32h-30.73c5.76-69.41 48.06-129.54 111.08-158.25.96 16.81 14.6 30.25 31.65 30.25h96c17.05 0 30.69-13.44 31.65-30.25 63.02 28.72 105.32 88.84 111.08 158.25H480c-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-32h-33.27c-6.13-86.21-60.66-160.49-141.27-192h112.81c7.13 27.56 31.94 48 61.73 48zM160 448H64v-96h96v96zM64 144c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32zm304 16h-96V64h96v96zm208 288h-96v-96h96v96zm0-368c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32z\"]\n};\nvar faBible = {\n prefix: 'fal',\n iconName: 'bible',\n icon: [448, 512, [], \"f647\", \"M448 392V24c0-13.3-10.7-24-24-24H80C35.8 0 0 35.8 0 80v368c0 35.35 28.65 64 64 64h372c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-3.3c-4-20.2-3.2-49.7.4-65.8 8.7-3.6 14.9-12.2 14.9-22.2zm-43.7 88H64c-17.67 0-32-14.33-32-32s14.33-32 32-32h340.3c-2.9 18.8-3.1 43.6 0 64zm11.7-96H64c-11.72 0-22.55 3.38-32 8.88V80c0-26.5 21.5-48 48-48h336v352zM152 224h40v104c0 13.23 10.78 24 24 24h48c13.22 0 24-10.77 24-24V224h40c13.22 0 24-10.77 24-24v-48c0-13.23-10.78-24-24-24h-40V88c0-13.23-10.78-24-24-24h-48c-13.22 0-24 10.77-24 24v40h-40c-13.22 0-24 10.77-24 24v48c0 13.23 10.78 24 24 24zm8-64h64V96h32v64h64v32h-64v128h-32V192h-64v-32z\"]\n};\nvar faBicycle = {\n prefix: 'fal',\n iconName: 'bicycle',\n icon: [640, 512, [], \"f206\", \"M512.303 192c-19.586-.047-38.147 4.313-54.759 12.132L373.508 71.439A16 16 0 0 0 359.991 64h-67.998c-6.627 0-12 5.373-12 12v8c0 6.627 5.372 12 12 12h59.193l40.532 64H255.994v-20c0-6.627-5.372-12-12-12h-83.998c-8.836 0-16 7.163-16 16s7.163 16 16 16h55.999l-31.808 44.969c-17.085-8.362-36.303-13.035-56.622-12.968C56.937 192.234-.001 249.37 0 320c.001 70.692 57.307 128 127.997 128 59.641 0 109.755-40.793 123.964-96h52.031a16.001 16.001 0 0 0 13.107-6.824l100.744-143.924 12.677 20.018c-28.385 23.449-46.487 58.903-46.531 98.587-.077 69.963 56.843 127.499 126.801 128.138 70.559.644 128.101-55.842 129.193-125.995 1.099-70.503-57.17-129.829-127.68-130zM127.997 416c-52.933 0-95.998-43.065-95.998-96s43.064-96 95.998-96c13.307 0 25.989 2.724 37.521 7.639L98.89 326.824C91.47 337.423 99.083 352 111.997 352h106.506c-13.207 37.248-48.788 64-90.506 64zm95.998-96h-81.268l49.744-71.065c19.354 17.575 31.524 42.925 31.524 71.065zm71.668 0h-39.669c0-39.04-17.483-73.992-45.04-97.47L232.325 192H385.26l-89.597 128zm212.533 95.927c-50.058-1.938-90.528-42.677-92.154-92.747-.961-29.57 11.533-56.303 31.81-74.546l52.759 83.306c3.546 5.599 10.959 7.263 16.558 3.717l6.758-4.281c5.599-3.546 7.263-10.96 3.717-16.558l-52.785-83.346c11.427-4.811 23.972-7.473 37.128-7.473 52.933 0 95.998 43.065 95.998 96 .001 54.194-45.136 98.043-99.789 95.928z\"]\n};\nvar faBiking = {\n prefix: 'fal',\n iconName: 'biking',\n icon: [640, 512, [], \"f84a\", \"M120 272a120 120 0 1 0 120 120 120 120 0 0 0-120-120zm0 208a88 88 0 1 1 88-88 88.1 88.1 0 0 1-88 88zm400-208a120 120 0 1 0 120 120 120 120 0 0 0-120-120zm0 208a88 88 0 1 1 88-88 88.1 88.1 0 0 1-88 88zM374.31 245.79a48.19 48.19 0 0 0 29.89 10.43H464a48 48 0 0 0 0-96h-42.95l-21.32-17.05a70.18 70.18 0 0 0 8.27.83 72.07 72.07 0 1 0-66.4-44.22 46.67 46.67 0 0 0-48.69 8l-99.25 79c-12.35 10.51-18.45 24.81-17.57 39.94a47.64 47.64 0 0 0 21.24 37.14L272 313.69V400a48 48 0 0 0 96 0V288a47.91 47.91 0 0 0-21.33-39.91l-13.33-9 16.5-12.72zM408 32a40 40 0 1 1-40 40 40 40 0 0 1 40-40zm-79.12 242.69A16 16 0 0 1 336 288v112a16 16 0 0 1-32 0V296.56l-88.88-59.25a16 16 0 0 1-1.53-25.45l100.2-79.78a16 16 0 0 1 20.41-.36l75.62 60.5H464a16 16 0 0 1 0 32h-59.8a16 16 0 0 1-10-3.5l-44.09-35-71.43 55.11z\"]\n};\nvar faBikingMountain = {\n prefix: 'fal',\n iconName: 'biking-mountain',\n icon: [640, 512, [], \"f84b\", \"M153.18 178.45l25.31-19.56-35.62-42.39 53.4-41.66A48.72 48.72 0 0 1 233 64.34a54.55 54.55 0 0 1 36.87 21.33l25.31-19.56a86.22 86.22 0 0 0-58.46-33.55 81 81 0 0 0-60.31 17.23L123 91.43c-12.53 10.13-14.56 29-4.5 42zm221.15 67.34a48.17 48.17 0 0 0 29.88 10.43H464a48 48 0 0 0 0-96h-42.94l-21.32-17.05a70.61 70.61 0 0 0 8.26.83 72.07 72.07 0 1 0-66.4-44.22 46.65 46.65 0 0 0-48.68 8l-99.25 79c-12.35 10.51-18.45 24.81-17.57 39.94a47.64 47.64 0 0 0 21.24 37.14L272 313.69V400a48 48 0 1 0 96 0V288a47.91 47.91 0 0 0-21.33-39.91l-13.33-9 16.5-12.72zM408 32a40 40 0 1 1-40 40 40 40 0 0 1 40-40zm-79.11 242.69A16 16 0 0 1 336 288v112a16 16 0 1 1-32 0V296.56l-88.87-59.25a16 16 0 0 1-1.54-25.45l100.2-79.78a16 16 0 0 1 20.4-.36l75.63 60.5H464a16 16 0 0 1 0 32h-59.8a16 16 0 0 1-10-3.5l-44.09-35-71.41 55.14zM128 328a56 56 0 1 0 56 56 56.06 56.06 0 0 0-56-56zm0 80a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm489-67.17c-.09-.19-.15-.38-.25-.57a30 30 0 0 0-4.37-36.87l-19.81-19.8a30.63 30.63 0 0 0-36.88-4.39l-.56-.23A30 30 0 0 0 526 256h-28a30 30 0 0 0-29.15 23l-.59.25a30.13 30.13 0 0 0-36.87 4.39l-19.79 19.8a30.08 30.08 0 0 0-4.37 36.86 4.83 4.83 0 0 0-.25.58A30.06 30.06 0 0 0 384 370v28a30.08 30.08 0 0 0 23 29.17c.06.19.16.39.22.58a30.09 30.09 0 0 0 4.4 36.86l19.79 19.8a30.13 30.13 0 0 0 36.87 4.39l.59.23A30 30 0 0 0 498 512h28a30 30 0 0 0 29.16-23l.59-.23a30.11 30.11 0 0 0 36.88-4.39l19.78-19.8a30.07 30.07 0 0 0 4.37-36.86 3.63 3.63 0 0 0 .25-.58A30.07 30.07 0 0 0 640 398v-28a30 30 0 0 0-23-29.17zM593.6 396l-3.44 11.39a83.81 83.81 0 0 1-6.34 15.27l-5.72 10.53 8.5 8.43 3.18.36-17 19.8-11.66-11.67-10.5 5.7a79.41 79.41 0 0 1-15.25 6.31L524 465.55v11.9l2 2.55-26 2v-16.45l-11.41-3.43a81.43 81.43 0 0 1-15.28-6.32l-10.47-5.68-8.43 8.44-.41 3.22-19.8-16.95 11.8-11.67-5.78-10.55a81.24 81.24 0 0 1-6.32-15.24L430.42 396h-11.88l-2.54 2-2-26h16.41l3.43-11.39a83.15 83.15 0 0 1 6.35-15.27l5.72-10.53-8.5-8.44-3.19-.36 17-19.79 11.65 11.67 10.5-5.7a78.89 78.89 0 0 1 15.22-6.32l11.44-3.4v-11.92L498 288l26-2v16.45l11.4 3.42a82.63 82.63 0 0 1 15.31 6.35l10.53 5.65 8.41-8.48.31-3.17 19.84 16.95-11.68 11.64 5.69 10.52a81.38 81.38 0 0 1 6.28 15.23L593.5 372h14.66l1.84 24zm-360.55-55.16a5.77 5.77 0 0 1-.25-.59 30.13 30.13 0 0 0-4.4-36.86l-19.79-19.8c-9.62-9.65-25.56-11.31-36.87-4.39l-.59-.23A30 30 0 0 0 142 256h-28a30 30 0 0 0-29.15 23l-.56.23a30.11 30.11 0 0 0-36.88 4.39l-19.81 19.8a30.06 30.06 0 0 0-4.37 36.89c-.06.17-.16.36-.22.55A30 30 0 0 0 0 370v28a30.05 30.05 0 0 0 23 29.17 2.63 2.63 0 0 0 .22.55 30.07 30.07 0 0 0 4.37 36.89l19.81 19.8a30.06 30.06 0 0 0 36.88 4.37 5.51 5.51 0 0 0 .59.25A30 30 0 0 0 114 512h28a30 30 0 0 0 29.16-23l.59-.23c11.25 6.9 27.19 5.26 36.84-4.39l19.82-19.8a30.08 30.08 0 0 0 4.37-36.86 5.64 5.64 0 0 0 .25-.58A30.06 30.06 0 0 0 256 398v-28.06a30.15 30.15 0 0 0-22.95-29.1zM209.52 396l-3.41 11.45a80.14 80.14 0 0 1-6.28 15.21l-5.71 10.53 8.5 8.43 3.18.36-17 19.8-11.65-11.67-10.5 5.7a79.67 79.67 0 0 1-15.25 6.31l-11.4 3.43v11.9l2 2.55-26 2v-16.47l-11.44-3.41a82.19 82.19 0 0 1-15.31-6.34l-10.53-5.66-8.41 8.49-.31 3.17-19.81-16.95 11.68-11.64-5.69-10.52a85.12 85.12 0 0 1-6.31-15.3L46.44 396H34.56L32 398l-2-26h16.44l3.43-11.39a83 83 0 0 1 6.35-15.33l5.62-10.5-8.44-8.41-3.18-.37 16.93-19.84 11.63 11.72 10.53-5.69a80.53 80.53 0 0 1 15.28-6.33l11.4-3.42v-11.9L114 288l26-2v16.47l11.44 3.4a82 82 0 0 1 15.25 6.33l10.47 5.67 8.43-8.43.41-3.22 19.75 17-11.56 11.63 5.65 10.47a84.62 84.62 0 0 1 6.32 15.29l3.42 11.39h14.6l1.82 24zM512 328a56 56 0 1 0 56 56 56.06 56.06 0 0 0-56-56zm0 80a24 24 0 1 1 24-24 24 24 0 0 1-24 24z\"]\n};\nvar faBinoculars = {\n prefix: 'fal',\n iconName: 'binoculars',\n icon: [512, 512, [], \"f1e5\", \"M511.67 404c-3.46-129.77-61.06-182.16-63.59-275.98-.47-17.64-14.27-32.02-31.92-32.02H416V64c0-17.67-14.33-32-32-32h-64c-17.67 0-32 14.33-32 32v32h-64V64c0-17.67-14.33-32-32-32h-64c-17.67 0-32 14.33-32 32v32h-.16c-17.65 0-31.45 14.38-31.93 32.02C61.39 221.84 3.79 274.23.33 404L0 432c0 26.51 21.49 48 48 48h128c26.51 0 48-21.49 48-48V288h64v144c0 26.51 21.49 48 48 48h128c26.51 0 48-21.49 48-48l-.33-28zM320 64h64v32h-64V64zm-192 0h64v32h-64V64zm64 368c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16 0 0 .94-41.26 1.48-48H192v48zm0-80H37.48c6.38-37.88 17.59-68.49 28.66-98.22C80.13 216.18 94.6 177.3 95.84 128H192v224zm32-96V128h64v128h-64zm96-128h96.16l-.06.88c1.3 48.42 15.77 87.3 29.76 124.9 11.06 29.73 22.28 60.33 28.66 98.22H320V128zm160 304c0 8.82-7.18 16-16 16H336c-8.82 0-16-7.18-16-16v-48h158.52c.54 6.74 1.48 48 1.48 48z\"]\n};\nvar faBiohazard = {\n prefix: 'fal',\n iconName: 'biohazard',\n icon: [576, 512, [], \"f780\", \"M288.1 96c17.7 0 34.8 2.7 50.9 7.6 6.5-8.5 11.1-18.4 13.1-29.4-20.2-6.5-41.7-10.1-64-10.1-22.4 0-44 3.7-64.2 10.2 1.9 11 6.6 21 13.1 29.4 16.2-5 33.3-7.7 51.1-7.7zm-.1 144.1c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zM146.1 423.6c9.7-5.6 17.2-13.6 22.6-22.7-28.5-26.4-48.2-62.2-54.4-102.4-.4 0-.8-.2-1.2-.2-10.4 0-20.7 2.9-30 7.9 7.7 46 30.4 86.9 63 117.4zm428.6-147c-13.8-40.3-41.2-74.1-77.2-95.3-12.2-7.2-25.6-12.8-40.1-16.7 3.5-13.9 5.2-27.4 5.2-40.8 0-42.2-15.1-83.2-42.4-115.5-7.3-8.6-19.7-10.9-29.7-5.2-9.7 5.6-14.1 17.4-10.6 27.9 3.7 11.3 5.5 21.5 5.5 31.1 0 54.7-43.6 99.3-97.3 99.3s-97.3-44.5-97.3-99.3c0-9.6 1.8-19.8 5.4-31 3.5-10.7-.9-22.5-10.7-28-9.8-5.6-22.2-3.5-29.6 5.2-27.4 32.3-42.5 73.3-42.5 115.5 0 13.4 1.7 26.9 5.2 40.8-14.5 4-27.9 9.6-40.1 16.7-36 21.1-63.4 55-77.2 95.3-3.7 10.6.5 22.2 10.2 28.1 9.7 5.8 22.2 3.8 29.7-4.8 7.7-8.8 15.4-15.5 23.6-20.3 22.3-13.1 48.3-16.6 73.2-9.9 25.3 6.8 46.4 23.2 59.5 46.2 26.9 47.5 10.9 108.4-35.7 135.8-8.2 4.8-17.7 8.3-29 10.7-11 2.3-18.8 12.1-18.7 23.4.1 11.2 8.1 20.9 19.1 23.1 11 2.1 22.1 3.2 33.1 3.2 30.4 0 60.4-8 86.9-23.6 12.5-7.3 24.1-16.5 34.7-27.3 10.7 10.9 22.3 20 34.7 27.3 36 21.2 78.6 28.5 119.9 20.4 11.1-2.1 18.9-11.6 19.1-23.1.1-11.3-7.8-21.1-18.7-23.4-11.4-2.4-20.8-5.9-29-10.7-46.6-27.4-62.6-88.3-35.7-135.8 13.1-23 34.2-39.4 59.5-46.2 24.9-6.7 50.9-3.2 73.2 9.9 8.2 4.8 15.9 11.4 23.6 20.3 7.5 8.6 20 10.5 29.8 4.7 9.9-5.9 14-17.4 10.4-28zm-145.1-37.8c-33.7 9-61.7 30.8-79 61.3-35.6 62.6-14.3 143 47.2 179.1.2.1.3.2.4.2-20.8-1.7-41.1-8-59.3-18.7-14.1-8.3-27-19.7-38.4-33.8L288 411.5 275.5 427c-11.4 14.1-24.3 25.5-38.4 33.8-18.2 10.7-38.5 17-59.3 18.7.1-.1.3-.2.4-.2 61.6-36.2 82.8-116.5 47.3-179.1-17.3-30.5-45.4-52.3-79.1-61.3-11-3-22.2-4.4-33.2-4.4-22.3 0-44.3 5.9-64.1 17.4C61 234.4 76.5 219.7 94.7 209c13.9-8.1 29.2-13.6 46.9-16.7l18.5-3.2-6.1-17.8c-5.7-16.7-8.6-32.2-8.6-47.5 0-21.1 4.6-41.9 13.3-60.9.4 72 58.2 130.5 129.3 130.5 71 0 128.9-58.5 129.3-130.5 8.7 19 13.3 39.8 13.3 60.9 0 15.2-2.8 30.7-8.5 47.5L416 189l18.5 3.2c17.7 3.1 33 8.5 46.9 16.7 18.2 10.7 33.7 25.4 45.6 42.9-29.7-17.2-64.3-21.9-97.4-13zm32.3 59.8c-6.2 40.2-25.9 76-54.5 102.5 5.5 9.1 12.9 17.1 22.5 22.8 32.7-30.5 55.4-71.4 63.1-117.4-9.4-5.1-19.7-8-30.2-8-.3 0-.6.1-.9.1z\"]\n};\nvar faBirthdayCake = {\n prefix: 'fal',\n iconName: 'birthday-cake',\n icon: [448, 512, [], \"f1fd\", \"M96 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 40zm48 160h-32V112h-32v144h-96V112h-32v144h-96V112H80v144H48c-26.5 0-48 21.5-48 48v208h448V304c0-26.5-21.5-48-48-48zm16 224H32v-72.043C48.222 398.478 55.928 384 74.75 384c27.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 18.488 0 26.245 14.475 42.5 23.955V480zm0-112.374C406.374 359.752 394.783 352 373.5 352c-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-21.463 0-33.101 7.774-42.75 15.658V304c0-8.822 7.178-16 16-16h352c8.822 0 16 7.178 16 16v63.626z\"]\n};\nvar faBlanket = {\n prefix: 'fal',\n iconName: 'blanket',\n icon: [512, 512, [], \"f498\", \"M446.2 384H104c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h344c35.3 0 64-28.7 64-64V80c0-44.2-35.8-80-80-80H80C35.8 0 0 35.8 0 80v320c0 61.9 50.1 112 112 112h392c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H115.6c-41.8 0-79.1-30.4-83.2-72-4.7-47.7 32.8-88 79.6-88h336c19.4 0 34.9 17.4 31.6 37.4-2.6 15.7-17.5 26.6-33.4 26.6zm1.8-96H112c-31.4 0-59.6 13-80 33.9V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48v216.9c-9.5-5.5-20.3-8.9-32-8.9z\"]\n};\nvar faBlender = {\n prefix: 'fal',\n iconName: 'blender',\n icon: [512, 512, [], \"f517\", \"M288 400c-13.26 0-24 10.74-24 24 0 13.25 10.74 24 24 24s24-10.75 24-24c0-13.26-10.74-24-24-24zm134.25-55.97L512 0H48C21.53 0 0 21.53 0 48v160c0 26.47 21.53 48 48 48h102.26l7.53 86.56C121.72 356.38 96 391.07 96 432v48c0 17.67 14.33 32 32 32h320c17.67 0 32-14.33 32-32v-48c0-39.4-23.79-73.18-57.75-87.97zM48 224c-8.81 0-16-7.17-16-16V48c0-8.83 7.19-16 16-16h82.78l16.7 192H48zM470.58 32l-16.7 64H296c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h149.54l-16.7 64H296c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h124.49l-29.22 112H189.34L162.9 32h307.68zM448 480H128v-48c0-35.29 28.71-64 64-64h192c35.29 0 64 28.71 64 64v48z\"]\n};\nvar faBlenderPhone = {\n prefix: 'fal',\n iconName: 'blender-phone',\n icon: [576, 512, [], \"f6b6\", \"M486.25 344.03L576 0H192l29.79 342.56C185.72 356.38 160 391.07 160 432v48c0 17.67 14.33 32 32 32h320c17.67 0 32-14.33 32-32v-48c0-39.4-23.79-73.18-57.75-87.97zM534.58 32l-16.7 64H360c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h149.54l-16.7 64H360c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h124.49l-29.22 112H253.34L226.9 32h307.68zM512 480H192v-48c0-35.29 28.71-64 64-64h192c35.29 0 64 28.71 64 64v48zm-160-80c-13.26 0-24 10.74-24 24 0 13.25 10.74 24 24 24s24-10.75 24-24c0-13.26-10.74-24-24-24zm-175.57-82.92l-23.62-57.97c-5.16-12.72-18.06-20.81-32.19-19.33l-28.53 2.8a180.1 180.1 0 0 1-.03-101.06l28.56 2.8c13.72 1.47 27-6.56 32.16-19.28l23.66-58.02c5.72-14.09.44-30.09-12.56-38.05L127.84 6.88c-19.41-11.89-44.91-8.02-60.53 9.44-90.53 101.33-89.62 253.41 2.06 353.72 8.31 9.11 21 13.94 33.81 13.94 8.59 0 17.22-2.17 24.56-6.67l36.09-22.16c13.04-7.98 18.32-23.98 12.6-38.07zm-65.44 32.94c-5.19 3.25-14.34 2.45-18-1.56C12.4 260.3 11.62 126.67 91.18 37.64c3.28-3.69 7.78-5.62 12.25-5.62 2.66 0 5.31.69 7.66 2.14l35.72 20.8-23.06 57.52-53.59-5.25-4.25 11.59c-17.41 47.22-17.41 99.23 0 146.47l4.25 11.59 53-5.72 23.31 57.11-35.48 21.75z\"]\n};\nvar faBlind = {\n prefix: 'fal',\n iconName: 'blind',\n icon: [384, 512, [], \"f29d\", \"M206.817 489.959c3.334 8.184-.598 17.521-8.78 20.854-8.166 3.329-17.515-.582-20.854-8.78L110.14 337.476l15.549-46.648 81.128 199.131zM102.663 121.531a4 4 0 0 1 6.562-4.577l112.933 161.912c3.815 5.468 11.307 6.742 16.708 2.976 5.356-3.737 6.796-11.232 2.976-16.708l-120-172a11.978 11.978 0 0 0-9.842-5.13V88H80v.013c-3.294.001-6.574 1.337-8.943 3.985L0 171.415V272c0 6.627 5.373 12 12 12s12-5.373 12-12v-91.415l48-53.646v198.465L16.821 490.936c-2.795 8.383 1.736 17.444 10.119 20.238 8.381 2.794 17.444-1.735 20.238-10.119L120 282.597v-136.21l-17.337-24.856zm280.725 384.343L245.791 286.463a20.279 20.279 0 0 1-6.78 4.245l137.6 219.416a4 4 0 1 0 6.777-4.25zM96 0C73.909 0 56 17.909 56 40s17.909 40 40 40 40-17.909 40-40S118.091 0 96 0z\"]\n};\nvar faBlinds = {\n prefix: 'fal',\n iconName: 'blinds',\n icon: [512, 512, [], \"f8fb\", \"M500.48,352h-33l8,32H36.5l8-32h-33l-11,44.12A16,16,0,0,0,16,416H496a16,16,0,0,0,15.52-19.88Zm0,96h-33l8,32H36.5l8-32h-33l-11,44.12A16,16,0,0,0,16,512H496a16,16,0,0,0,15.52-19.88ZM496,0H16A16,16,0,0,0,0,16V80A16,16,0,0,0,16,96H128v96H36.5l16-64h-33l-19,76.12A16,16,0,0,0,16,224H128v34.94A47.82,47.82,0,0,0,98.94,288H36.5l8-32h-33l-11,44.12A16,16,0,0,0,16,320H98.94A47.89,47.89,0,1,0,160,258.94V96H496a16,16,0,0,0,16-16V16A16,16,0,0,0,496,0ZM144,320a16,16,0,1,1,16-16A16,16,0,0,1,144,320ZM480,64H32V32H480Zm12.48,64h-33l16,64H192v32H496a16,16,0,0,0,15.52-19.88Zm8,128h-33l8,32H222.39a80.31,80.31,0,0,1,0,32H496a16,16,0,0,0,15.52-19.88Z\"]\n};\nvar faBlindsOpen = {\n prefix: 'fal',\n iconName: 'blinds-open',\n icon: [512, 512, [], \"f8fc\", \"M496,480H16a16,16,0,0,0,0,32H496a16,16,0,0,0,0-32ZM16,352H80.36a79.29,79.29,0,0,1-14.75-32H16a16,16,0,0,0,0,32Zm480-32H222.39a79.29,79.29,0,0,1-14.75,32H496a16,16,0,0,0,0-32ZM496,0H16A16,16,0,0,0,0,16V80A16,16,0,0,0,16,96H128v64H16a16,16,0,0,0,0,32H128v66.94a48,48,0,1,0,32,0V96H496a16,16,0,0,0,16-16V16A16,16,0,0,0,496,0ZM144,320a16,16,0,1,1,16-16A16,16,0,0,1,144,320ZM480,64H32V32H480Zm16,96H192v32H496a16,16,0,0,0,0-32Z\"]\n};\nvar faBlindsRaised = {\n prefix: 'fal',\n iconName: 'blinds-raised',\n icon: [512, 512, [], \"f8fd\", \"M500.48,224h-33l8,32H192v32H496a16,16,0,0,0,15.52-19.88Zm0-96h-33l8,32H192v32H496a16,16,0,0,0,15.52-19.88ZM496,0H16A16,16,0,0,0,0,16V80A16,16,0,0,0,16,96H128v64H36.5l8-32h-33l-11,44.12A16,16,0,0,0,16,192H128v64H36.5l8-32h-33l-11,44.12A16,16,0,0,0,16,288H128V418.94a48,48,0,1,0,32,0V96H496a16,16,0,0,0,16-16V16A16,16,0,0,0,496,0ZM144,480a16,16,0,1,1,16-16A16,16,0,0,1,144,480ZM480,64H32V32H480Z\"]\n};\nvar faBlog = {\n prefix: 'fal',\n iconName: 'blog',\n icon: [512, 512, [], \"f781\", \"M200.3 0c-4.5-.1-8.2 3.6-8.2 8.1V24c0 4.4 3.5 7.8 7.9 7.9C352.8 35.7 476 159.2 480 312c.1 4.4 3.6 7.9 7.9 7.9h16c4.5 0 8.2-3.7 8.1-8.2C507.7 141.8 370.2 4.3 200.3 0zm0 96c-4.5-.2-8.2 3.6-8.2 8.1v16c0 4.3 3.5 7.8 7.8 8 99.8 4 180.5 84.2 184.2 184 .2 4.3 3.6 7.8 8 7.8h15.8c4.5 0 8.2-3.7 8.1-8.2-4.3-117-98.7-211.4-215.7-215.7zM121 256h-9c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h10.9c47 0 88 38.4 84.9 85.3-2.6 39.9-34.6 71.8-74.4 74.5C86.4 467 48 426 48 378.9V144c0-8.8-7.2-16-16-16H16c-8.8 0-16 7.2-16 16v233c0 74.2 60.1 138.5 134.3 134.9 65.6-3.2 118.4-56 121.6-121.6C259.4 316.1 195.2 256 121 256z\"]\n};\nvar faBold = {\n prefix: 'fal',\n iconName: 'bold',\n icon: [384, 512, [], \"f032\", \"M306 234.12c27.74-20.38 46-53.01 46-90.12A112 112 0 0 0 240 32H40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v384H40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h216a128 128 0 0 0 50-245.88zM96 64h144a80 80 0 0 1 0 160H96zm160 384H96V256h160a96 96 0 0 1 0 192z\"]\n};\nvar faBolt = {\n prefix: 'fal',\n iconName: 'bolt',\n icon: [320, 512, [], \"f0e7\", \"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.3 0 16.4-4.4 20.8-12l176-304c9.3-15.9-2.2-36-20.7-36zM140.3 436.9l33.5-141.6 9.3-39.4h-150L63 32h125.9l-38.7 118-13.8 42h145.7L140.3 436.9z\"]\n};\nvar faBomb = {\n prefix: 'fal',\n iconName: 'bomb',\n icon: [512, 512, [], \"f1e2\", \"M420.7 68.7l-56 56-38.1-38.1c-12.5-12.5-32.8-12.5-45.3 0l-17.1 17.1c-17.9-5-36.8-7.7-56.3-7.7C96 96 3.3 185.9.1 297.8-3.3 415.5 91.1 512 208 512c115.1 0 208-94.2 208-208 0-19.5-2.7-38.4-7.7-56.3l17.1-17.1c12.5-12.5 12.5-32.8 0-45.3l-38.1-38.1 56-56-22.6-22.5zm-48.3 169.6c5.8 20.5 11.6 37.8 11.6 65.7 0 96.2-78.5 176-176 176-24.2 0-47.7-4.8-69.7-14.3-65.2-28.2-108.4-93.4-106.2-167C34.8 204.1 113.2 128 208 128c27.9 0 45.1 5.8 65.7 11.6l30.3-30.3 98.7 98.7s-1.8 1.9-30.3 30.3zM512 72c0 6.6-5.4 12-12 12h-24c-6.6 0-12-5.4-12-12s5.4-12 12-12h24c6.6 0 12 5.4 12 12zm-60-60v24c0 6.6-5.4 12-12 12s-12-5.4-12-12V12c0-6.6 5.4-12 12-12s12 5.4 12 12zm5 43c-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 17c-4.7 4.7-12.3 4.7-17 0zm-67.9-16.9c-4.7-4.7-4.7-12.3 0-17 4.7-4.7 12.3-4.7 17 0l17 17c4.7 4.7 4.7 12.3 0 17-4.7 4.7-12.3 4.7-17 0l-17-17zm101.8 67.8c4.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.7-4.7 12.3-4.7 17 0l17 17zM192 192c0 8.8-7.2 16-16 16-35.3 0-64 28.7-64 64 0 8.8-7.2 16-16 16s-16-7.2-16-16c0-52.9 43.1-96 96-96 8.8 0 16 7.2 16 16z\"]\n};\nvar faBone = {\n prefix: 'fal',\n iconName: 'bone',\n icon: [640, 512, [], \"f5d7\", \"M600.44 256c28.89-17.75 39.56-44.34 39.56-77.05C640 133.22 601.97 96 555.19 96c-36.5 0-68.81 22.75-80.41 56.59C467.19 175.22 467.57 176 456 176H184c-11.57 0-11.19-.78-18.78-23.41C153.62 118.75 121.31 96 84.81 96 38.03 96 0 133.22 0 178.95c0 32.71 10.67 59.3 39.56 77.05C10.67 273.75 0 300.34 0 333.05 0 378.78 38.03 416 84.81 416c36.5 0 68.81-22.75 80.41-56.59C172.81 336.78 172.43 336 184 336h272c11.57 0 11.19.78 18.78 23.41 11.59 33.84 43.91 56.59 80.41 56.59 46.78 0 84.81-37.22 84.81-82.95 0-32.71-10.67-59.3-39.56-77.05zm-45.25 128c-22.81 0-42.97-14.05-50.16-34.97C496.13 322.4 488.47 304 456 304H184c-32.47 0-40.13 18.4-49.03 45.03-7.19 20.92-27.35 34.97-50.16 34.97C55.69 384 32 361.14 32 333.05c0-23.44 6.88-41.59 29.03-52.36v-.02c9.59-4.66 15.53-14.12 15.53-24.67s-5.94-20.02-15.53-24.67v-.02C38.88 220.54 32 202.39 32 178.95 32 150.86 55.69 128 84.81 128c22.81 0 42.97 14.05 50.16 34.97C143.87 189.6 151.53 208 184 208h272c32.47 0 40.13-18.4 49.03-45.03 7.19-20.92 27.34-34.97 50.16-34.97 29.12 0 52.81 22.86 52.81 50.95 0 23.44-6.88 41.59-29.03 52.36v.02c-9.59 4.66-15.53 14.12-15.53 24.67s5.94 20.02 15.53 24.67v.02c22.15 10.77 29.03 28.92 29.03 52.36 0 28.09-23.69 50.95-52.81 50.95z\"]\n};\nvar faBoneBreak = {\n prefix: 'fal',\n iconName: 'bone-break',\n icon: [640, 512, [], \"f5d8\", \"M600.44 160C629.33 142.25 640 115.66 640 82.95 640 37.22 601.97 0 555.19 0c-36.5 0-68.81 22.75-80.41 56.59C467.19 79.22 467.57 80 456 80h-88c-17.67 0-32 14.33-32 32h120c32.47 0 40.13-18.4 49.03-45.03C512.22 46.05 532.37 32 555.19 32 584.31 32 608 54.86 608 82.95c0 23.44-6.88 41.59-29.03 52.36v.02c-9.59 4.66-15.53 14.13-15.53 24.67 0 10.55 5.94 20.02 15.53 24.67v.02c22.15 10.77 29.03 28.92 29.03 52.36 0 28.09-23.69 50.95-52.81 50.95-22.81 0-42.97-14.05-50.16-34.97C496.13 226.4 488.47 208 456 208h-56c-17.67 0-32 14.33-32 32h88c11.57 0 11.19.78 18.78 23.41 11.59 33.84 43.91 56.59 80.41 56.59 46.78 0 84.81-37.22 84.81-82.95 0-32.71-10.67-59.3-39.56-77.05zM327.26 297.88c-12.5-12.5-32.76-12.5-45.26 0l-39.6 39.6c-22.96 22.96-15.36 41.39-2.83 66.51 9.71 19.88 5.39 44.06-10.74 60.19-20.6 20.59-53.51 21.18-73.37 1.31-16.58-16.58-24.55-34.27-16.5-57.55l-.01-.01c3.49-10.08.99-20.97-6.46-28.43-7.46-7.46-18.35-9.96-28.43-6.46l-.01-.01c-23.28 8.05-40.98.08-57.55-16.5-19.87-19.87-19.28-52.78 1.31-73.37 16.13-16.13 40.32-20.45 60.19-10.74 25.13 12.53 43.55 20.13 66.51-2.83l84.85-84.85c-12.5-12.5-32.76-12.5-45.25 0l-62.23 62.22c-8.18 8.18-8.47 7.36-29.83-3.27-32.11-15.73-71.05-8.97-96.85 16.84-33.08 33.08-33.65 86.29-1.32 118.63 23.13 23.13 49.48 34.38 82.46 26.51-7.88 32.98 3.38 59.33 26.51 82.46 32.34 32.34 85.55 31.77 118.63-1.31 25.81-25.81 32.57-64.74 16.84-96.87-10.63-21.36-11.45-21.65-3.27-29.83l62.21-62.24z\"]\n};\nvar faBong = {\n prefix: 'fal',\n iconName: 'bong',\n icon: [448, 512, [], \"f55c\", \"M445.66 224.57l-62.22-62.23c-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.31l19.8 19.8-48.57 48.57c-12.91-13.79-27.58-25.91-44.04-35.44V32h24c4.42 0 8-3.58 8-8V8c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h24v185.9C38.67 251.11 0 312.97 0 384c0 43.81 14.8 84.07 39.52 116.35C45.34 507.96 54.73 512 64.31 512h255.37c9.58 0 18.97-4.04 24.79-11.65C369.21 468.07 384 427.8 384 384c0-39.04-11.99-75.08-32.03-105.35l51.26-51.26 19.8 19.8c3.12 3.12 8.19 3.12 11.31 0l11.31-11.31a7.994 7.994 0 0 0 .01-11.31zm-333.62 21.02l15.96-9.24V32h128v204.34l15.96 9.24c29.93 17.34 52.83 43.73 66.35 74.41H45.69c13.52-30.68 36.42-57.07 66.35-74.4zM319.69 480l-254.76.89C43.38 452.77 32 419.26 32 384c0-10.88 1.46-21.54 3.63-32h312.75c2.17 10.46 3.63 21.12 3.63 32-.01 35.27-11.39 68.77-32.32 96z\"]\n};\nvar faBook = {\n prefix: 'fal',\n iconName: 'book',\n icon: [448, 512, [], \"f02d\", \"M356 160H188c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12zm12 52v-8c0-6.6-5.4-12-12-12H188c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12zm64.7 268h3.3c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12H80c-44.2 0-80-35.8-80-80V80C0 35.8 35.8 0 80 0h344c13.3 0 24 10.7 24 24v368c0 10-6.2 18.6-14.9 22.2-3.6 16.1-4.4 45.6-.4 65.8zM128 384h288V32H128v352zm-96 16c13.4-10 30-16 48-16h16V32H80c-26.5 0-48 21.5-48 48v320zm372.3 80c-3.1-20.4-2.9-45.2 0-64H80c-64 0-64 64 0 64h324.3z\"]\n};\nvar faBookAlt = {\n prefix: 'fal',\n iconName: 'book-alt',\n icon: [448, 512, [], \"f5d9\", \"M448 392V24c0-13.3-10.7-24-24-24H80C35.8 0 0 35.8 0 80v368c0 35.35 28.65 64 64 64h372c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-3.3c-4-20.2-3.2-49.7.4-65.8 8.7-3.6 14.9-12.2 14.9-22.2zm-43.7 88H64c-17.67 0-32-14.33-32-32s14.33-32 32-32h340.3c-2.9 18.8-3.1 43.6 0 64zm11.7-96H64c-11.72 0-22.55 3.38-32 8.88V80c0-26.5 21.5-48 48-48h336v352z\"]\n};\nvar faBookDead = {\n prefix: 'fal',\n iconName: 'book-dead',\n icon: [448, 512, [], \"f6b7\", \"M216 160c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm48 0c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm-88 43.4V216c0 13.2 10.8 24 24 24h80c13.2 0 24-10.8 24-24v-12.6c20.4-15.1 32-36.4 32-59.4 0-44.1-43.1-80-96-80s-96 35.9-96 80c0 23 11.6 44.3 32 59.4zM240 96c35.3 0 64 21.5 64 48 0 14.3-8.8 27.9-24.3 37.2l-7.7 4.7V208h-64v-22.1l-7.7-4.7c-15.4-9.3-24.3-22.9-24.3-37.2 0-26.5 28.7-48 64-48zm208 296V24c0-13.3-10.7-24-24-24H80C35.8 0 0 35.8 0 80v368c0 35.3 28.7 64 64 64h372c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-3.3c-4-20.2-3.2-49.7.4-65.8 8.7-3.6 14.9-12.2 14.9-22.2zm-43.7 88H64c-17.7 0-32-14.3-32-32s14.3-32 32-32h340.3c-2.9 18.8-3.1 43.6 0 64zm11.7-96H64c-11.7 0-22.5 3.4-32 8.9V80c0-26.5 21.5-48 48-48h336zm-291.2-51.6l6.3 14.7c1.7 4.1 6.4 5.9 10.5 4.2l98.3-42.2 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.5l-70.3-30.1 70.3-30.2c4.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 274.4l-98.3-42.1c-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.3 30.2-70.4 30c-4 1.8-5.9 6.5-4.2 10.5z\"]\n};\nvar faBookHeart = {\n prefix: 'fal',\n iconName: 'book-heart',\n icon: [448, 512, [], \"f499\", \"M230.1 307.9c5.5 5.5 14.3 5.5 19.8 0l84.7-85.6c24.6-24.9 23.2-66.1-4.3-89.1-13.9-11.6-47.7-28.5-90.2 14.5-42.6-43-76.4-26.1-90.2-14.5-27.5 23-28.9 64.2-4.3 89.1l84.5 85.6zm-59.8-150.1c13.7-11.5 31.2-3.4 38.4 3.7l31.4 31.7 31.4-31.7c7.1-7.2 24.6-15.2 38.4-3.7 14.4 12 12.3 31.6 2.1 42l-72 72.6-71.8-72.6c-10.3-10.4-12.3-30 2.1-42zM448 392V24c0-13.3-10.7-24-24-24H80C35.8 0 0 35.8 0 80v368c0 35.3 28.7 64 64 64h372c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-3.3c-4-20.2-3.2-49.7.4-65.8 8.7-3.6 14.9-12.2 14.9-22.2zm-43.7 88H64c-17.7 0-32-14.3-32-32s14.3-32 32-32h340.3c-2.9 18.8-3.1 43.6 0 64zm11.7-96H64c-11.7 0-22.5 3.4-32 8.9V80c0-26.5 21.5-48 48-48h336v352z\"]\n};\nvar faBookMedical = {\n prefix: 'fal',\n iconName: 'book-medical',\n icon: [448, 512, [], \"f7e6\", \"M448 392V24a23.94 23.94 0 0 0-24-24H80A80 80 0 0 0 0 80v368a64 64 0 0 0 64 64h372a12 12 0 0 0 12-12v-8a12 12 0 0 0-12-12h-3.3c-4-20.2-3.2-49.7.4-65.8A24.1 24.1 0 0 0 448 392zm-43.7 88H64a32 32 0 0 1 0-64h340.3a228.6 228.6 0 0 0 0 64zm11.7-96H64a63.33 63.33 0 0 0-32 8.88V80a48 48 0 0 1 48-48h336zM152 240h56v56a8 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 8z\"]\n};\nvar faBookOpen = {\n prefix: 'fal',\n iconName: 'book-open',\n icon: [576, 512, [], \"f518\", \"M514.91 32h-.16c-24.08.12-144.75 8.83-219.56 48.09-4.05 2.12-10.33 2.12-14.38 0C205.99 40.83 85.32 32.12 61.25 32h-.16C27.4 32 0 58.47 0 91.01v296.7c0 31.41 25.41 57.28 57.85 58.9 34.77 1.76 122.03 8.26 181.89 30.37 5.27 1.95 10.64 3.02 16.25 3.02h64c5.62 0 10.99-1.08 16.26-3.02 59.87-22.11 147.12-28.61 181.92-30.37 32.41-1.62 57.82-27.48 57.82-58.89V91.01C576 58.47 548.6 32 514.91 32zM272 433c0 8.61-7.14 15.13-15.26 15.13-1.77 0-3.59-.31-5.39-.98-62.45-23.21-148.99-30.33-191.91-32.51-15.39-.77-27.44-12.6-27.44-26.93V91.01c0-14.89 13.06-27 29.09-27 19.28.1 122.46 7.38 192.12 38.29 11.26 5 18.64 15.75 18.66 27.84l.13 100.32V433zm272-45.29c0 14.33-12.05 26.16-27.45 26.93-42.92 2.18-129.46 9.3-191.91 32.51-1.8.67-3.62.98-5.39.98-8.11 0-15.26-6.52-15.26-15.13V230.46l.13-100.32c.01-12.09 7.4-22.84 18.66-27.84 69.66-30.91 172.84-38.19 192.12-38.29 16.03 0 29.09 12.11 29.09 27v296.7z\"]\n};\nvar faBookReader = {\n prefix: 'fal',\n iconName: 'book-reader',\n icon: [512, 512, [], \"f5da\", \"M459.91 192.02c-.7 0-1.39.02-2.06.05-49.8 2.84-140.51 13-201.84 47.57-61.33-34.57-152.05-44.73-201.84-47.57-.67-.04-1.36-.05-2.06-.05C31.71 192.01 0 206.36 0 242.22v178.05c0 26.69 21.25 48.7 48.34 50.12 34.41 1.81 120.56 9.08 177 37.47 4.68 2.37 9.66 3.5 14.66 3.84v.27h2.27c.09 0 .18.03.26.03h26.94c.09 0 .18-.03.26-.03H272v-.27c5-.34 9.98-1.48 14.66-3.84 56.44-28.39 142.59-35.65 177-37.47 27.09-1.42 48.34-23.44 48.34-50.12V242.22c0-35.86-31.71-50.2-52.09-50.2zM240 479.35c-.09-.04-.18-.02-.28-.07-59.59-29.97-144.43-38.45-189.7-40.84-10.1-.53-18.02-8.51-18.02-18.17V242.22c0-6.05 1.77-10 5.93-13.2 4.47-3.44 10.47-5.01 14.4-5.01 37.01 2.11 129.27 10.58 187.67 43.36v211.98zm240-59.08c0 9.66-7.92 17.64-18.03 18.17-45.27 2.38-130.11 10.86-189.76 40.87-.07.04-.14.02-.22.05V267.37c58.39-32.79 150.66-41.25 187.51-43.35l.39-.01c.2 0 20.09.49 20.09 18.21v178.05zM256 191.99c53.02 0 96-42.98 96-95.99S309.02 0 256 0s-96 42.98-96 95.99 42.98 96 96 96zM256 32c35.29 0 64 28.71 64 64s-28.71 64-64 64-64-28.71-64-64 28.71-64 64-64z\"]\n};\nvar faBookSpells = {\n prefix: 'fal',\n iconName: 'book-spells',\n icon: [448, 512, [], \"f6b8\", \"M64 144c0 6.06 3.44 11.59 8.84 14.31l37.88 18.94 18.97 37.91c2.72 5.42 8.25 8.84 14.31 8.84s11.59-3.42 14.31-8.84l18.94-37.91 37.91-18.94c5.41-2.7 8.84-8.25 8.84-14.31s-3.44-11.61-8.84-14.31l-37.91-18.94-18.94-37.91C155.59 67.42 150.06 64 144 64s-11.59 3.42-14.31 8.84l-18.97 37.91-37.88 18.94C67.44 132.41 64 137.94 64 144zm65.81-7.02a16.15 16.15 0 0 0 7.16-7.16l7.03-14.05 7 14.05c1.56 3.09 4.06 5.61 7.16 7.16l14.03 7.02-14.03 7.02a16.15 16.15 0 0 0-7.16 7.16l-7 14.05-7.03-14.05a16.101 16.101 0 0 0-7.16-7.16L115.78 144l14.03-7.02zM192 256c0 6.06 3.44 11.59 8.84 14.31l48.56 24.28 24.28 48.56c2.72 5.42 8.25 8.84 14.31 8.84s11.59-3.42 14.31-8.84l24.28-48.56 48.56-24.28c5.41-2.72 8.84-8.25 8.84-14.31s-3.44-11.59-8.84-14.31l-48.56-24.28-24.28-48.56c-5.44-10.84-23.19-10.84-28.62 0l-24.28 48.56-48.56 24.28c-5.4 2.72-8.84 8.25-8.84 14.31zm76.5-12.36a16.15 16.15 0 0 0 7.16-7.16l12.34-24.7 12.34 24.7c1.56 3.09 4.06 5.61 7.16 7.16L332.22 256l-24.72 12.36a16.15 16.15 0 0 0-7.16 7.16L288 300.22l-12.34-24.7a16.101 16.101 0 0 0-7.16-7.16L243.78 256l24.72-12.36zM448 392V24c0-13.3-10.7-24-24-24H80C35.8 0 0 35.8 0 80v368c0 35.35 28.65 64 64 64h372c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-3.3c-4-20.2-3.2-49.7.4-65.8 8.7-3.6 14.9-12.2 14.9-22.2zm-43.7 88H64c-17.67 0-32-14.33-32-32s14.33-32 32-32h340.3c-2.9 18.8-3.1 43.6 0 64zm11.7-96H64c-11.72 0-22.55 3.38-32 8.88V80c0-26.5 21.5-48 48-48h336v352z\"]\n};\nvar faBookUser = {\n prefix: 'fal',\n iconName: 'book-user',\n icon: [448, 512, [], \"f7e7\", \"M240 224a80 80 0 1 0-80-80 80.09 80.09 0 0 0 80 80zm0-128a48 48 0 1 1-48 48 48.05 48.05 0 0 1 48-48zm208 296V24a23.94 23.94 0 0 0-24-24H80A80 80 0 0 0 0 80v368a64 64 0 0 0 64 64h372a12 12 0 0 0 12-12v-8a12 12 0 0 0-12-12h-3.3c-4-20.2-3.2-49.7.4-65.8A24.1 24.1 0 0 0 448 392zm-43.7 88H64a32 32 0 0 1 0-64h340.3a228.6 228.6 0 0 0 0 64zm11.7-96H64a63.33 63.33 0 0 0-32 8.88V80a48 48 0 0 1 48-48h336zm-265.59-32h179.18C349 352 368 339 368 313.59 368 273 330.69 240 284.81 240c-21.5 2.38-22.6 8-44.81 8s-23.31-5.58-44.81-8c-45.88 0-83.19 33-83.19 73.59C112 339 131 352 150.41 352zm44.78-80c4.66 0 18.43 8 44.81 8s40.15-8 44.81-8C313 272 336 290.66 336 313.59c0 3.22.41 6.41-6.41 6.41H150.41c-6.82 0-6.41-3.19-6.41-6.41 0-22.93 23-41.59 51.19-41.59z\"]\n};\nvar faBookmark = {\n prefix: 'fal',\n iconName: 'bookmark',\n icon: [384, 512, [], \"f02e\", \"M336 0H48C21.49 0 0 21.49 0 48v464l192-112 192 112V48c0-26.51-21.49-48-48-48zm16 456.287l-160-93.333-160 93.333V48c0-8.822 7.178-16 16-16h288c8.822 0 16 7.178 16 16v408.287z\"]\n};\nvar faBooks = {\n prefix: 'fal',\n iconName: 'books',\n icon: [576, 512, [], \"f5db\", \"M575.33 456.43L399 8.02C397.28 3.1 392.61 0 387.65 0c-3.01 0-4.97 1.03-11.49 3.31-6.46 2.26-9.82 8.24-6.27 18.38-16.46 9.69-59.15 24.09-75.5 26.42-1.33-3.78-1.97-6.62-6.4-9.23V32c0-17.67-14.33-32-32-32h-96c-5.96 0-11.22 2.07-16 4.9C139.22 2.07 133.96 0 128 0H32C14.33 0 0 14.33 0 32v448c0 17.67 14.33 32 32 32h96c5.96 0 11.22-2.07 16-4.9 4.78 2.84 10.04 4.9 16 4.9h96c17.67 0 32-14.33 32-32V118.88l151.43 385.1c1.73 4.92 6.4 8.02 11.35 8.02 3 0 4.96-1.03 11.49-3.31 6.44-2.25 9.83-8.23 6.27-18.38 16.46-9.69 59.15-24.09 75.5-26.42 3.65 10.4 10.13 12.65 16.38 10.46l7.55-2.64c6.23-2.19 9.54-9.07 7.36-15.28zM128 480H32v-64h96v64zm0-96H32V128h96v256zm0-288H32V32h96v64zm128 384h-96v-64h96v64zm0-96h-96V128h96v256zm0-288h-96V32h96v64zm203.15 367.54L303.79 74.88c25.22-4.74 64.01-20.33 75.5-26.42l155.36 388.65c-25.23 4.75-64.01 20.33-75.5 26.43z\"]\n};\nvar faBooksMedical = {\n prefix: 'fal',\n iconName: 'books-medical',\n icon: [640, 512, [], \"f7e8\", \"M639.33 456.43L463 8a12 12 0 0 0-11.35-8c-3 0-5 1-11.49 3.31s-9.82 8.24-6.27 18.38c-16.46 9.69-59.15 24.09-75.5 26.42-1.33-3.78-2-6.62-6.4-9.23V32A32 32 0 0 0 320 0h-96c-6 0-11.22 2.07-16 4.9-4.78-2.83-10-4.9-16-4.9H96a32 32 0 0 0-32 32v77.56a158.67 158.67 0 0 1 32-10.33V32h96v77.56a159.52 159.52 0 0 1 32 19.25V128h96v256h-96v-.81a159.52 159.52 0 0 1-32 19.25V480H96v-67.23a158.67 158.67 0 0 1-32-10.33V480a32 32 0 0 0 32 32h96c6 0 11.22-2.07 16-4.9 4.78 2.84 10 4.9 16 4.9h96a32 32 0 0 0 32-32V118.88L503.43 504a12.06 12.06 0 0 0 11.35 8c3 0 5-1 11.49-3.31s9.83-8.23 6.27-18.38c16.46-9.69 59.15-24.09 75.5-26.42 3.65 10.4 10.13 12.65 16.38 10.46l7.55-2.64a12 12 0 0 0 7.36-15.28zM320 480h-96v-64h96zm0-384h-96V32h96zm203.15 367.54L367.79 74.88c25.22-4.74 64-20.33 75.5-26.42l155.36 388.65c-25.23 4.75-64.01 20.33-75.5 26.43zM256 256a128 128 0 1 0-128 128 128 128 0 0 0 128-128zm-224 0a96 96 0 1 1 96 96 96 96 0 0 1-96-96zm117.33 58.67v-37.34h37.34A5.33 5.33 0 0 0 192 272v-32a5.33 5.33 0 0 0-5.33-5.33h-37.34v-37.34A5.33 5.33 0 0 0 144 192h-32a5.33 5.33 0 0 0-5.33 5.33v37.34H69.33A5.33 5.33 0 0 0 64 240v32a5.33 5.33 0 0 0 5.33 5.33h37.34v37.34A5.33 5.33 0 0 0 112 320h32a5.33 5.33 0 0 0 5.33-5.33z\"]\n};\nvar faBoombox = {\n prefix: 'fal',\n iconName: 'boombox',\n icon: [640, 512, [], \"f8a5\", \"M176 224a112 112 0 1 0 112 112 112 112 0 0 0-112-112zm0 192a80 80 0 1 1 80-80 80.09 80.09 0 0 1-80 80zm288-192a112 112 0 1 0 112 112 112 112 0 0 0-112-112zm0 192a80 80 0 1 1 80-80 80.09 80.09 0 0 1-80 80zm128-256h-16V56a56.07 56.07 0 0 0-56-56H120a56.06 56.06 0 0 0-56 56v104H48a48 48 0 0 0-48 48v256a48 48 0 0 0 48 48h544a48 48 0 0 0 48-48V208a48 48 0 0 0-48-48zM96 56a24 24 0 0 1 24-24h400a24 24 0 0 1 24 24v104h-96v-16a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v16h-32v-16a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v16h-32v-16a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v16H96zm512 408a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V208a16 16 0 0 1 16-16h544a16 16 0 0 1 16 16zM464 304a32 32 0 1 0 32 32 32 32 0 0 0-32-32zm-288 0a32 32 0 1 0 32 32 32 32 0 0 0-32-32z\"]\n};\nvar faBoot = {\n prefix: 'fal',\n iconName: 'boot',\n icon: [512, 512, [], \"f782\", \"M415 247.8L352 232V128c17.7 0 32-14.3 32-32V32c0-17.7-14.3-32-32-32H32C14.3 0 0 14.3 0 32v434.7c0 8.5 3.4 16.6 9.4 22.6l13.3 13.3c6 6 14.1 9.4 22.6 9.4h37.5c8.5 0 16.6-3.4 22.6-9.4L128 480l22.6 22.6c6 6 14.1 9.4 22.6 9.4h37.5c8.5 0 16.6-3.4 22.6-9.4L256 480l22.6 22.6c6 6 14.1 9.4 22.6 9.4h37.5c8.5 0 16.6-3.4 22.6-9.4L384 480l22.6 22.6c6 6 14.1 9.4 22.6 9.4h37.5c8.5 0 16.6-3.4 22.6-9.4l13.3-13.3c6-6 9.4-14.1 9.4-22.6v-94.8c0-58.7-40-109.9-97-124.1zM32 32h320v64H32V32zm448 434.7L466.7 480h-37.5l-22.6-22.6c-6-6-14.1-9.4-22.6-9.4s-16.6 3.4-22.6 9.4L338.7 480h-37.5l-22.6-22.6c-6-6-14.1-9.4-22.6-9.4s-16.6 3.4-22.6 9.4L210.7 480h-37.5l-22.6-22.6c-6-6-14.1-9.4-22.6-9.4s-16.6 3.4-22.6 9.4L82.7 480H45.3L32 466.7V416h448v50.7zm0-82.7H32V128h288v32h-88c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h88v32h-88c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h88l87.3 22.8c42.8 10.7 72.7 49 72.7 93.1V384z\"]\n};\nvar faBoothCurtain = {\n prefix: 'fal',\n iconName: 'booth-curtain',\n icon: [512, 512, [], \"f734\", \"M0 32v472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V32h64v352c0 35.3 28.7 64 64 64 19.2 0 36.3-8.7 48-22.1 11.7 13.4 28.8 22.1 48 22.1s36.3-8.7 48-22.1c11.7 13.4 28.8 22.1 48 22.1s36.3-8.7 48-22.1c11.7 13.4 28.8 22.1 48 22.1 11.7 0 22.5-3.4 32-8.9V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V32c0-17.7-14.3-32-32-32H32C14.3 0 0 14.3 0 32zm416 0h64v352c0 17.7-14.3 32-32 32s-32-14.3-32-32V32zm-96 0h64v352c0 17.7-14.3 32-32 32s-32-14.3-32-32V32zm-96 0h64v352c0 17.7-14.3 32-32 32s-32-14.3-32-32V32zm-96 0h64v352c0 17.7-14.3 32-32 32s-32-14.3-32-32V32z\"]\n};\nvar faBorderAll = {\n prefix: 'fal',\n iconName: 'border-all',\n icon: [448, 512, [], \"f84c\", \"M432 32H16A16 16 0 0 0 0 48v416a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM32 64h176v176H32zm0 384V272h176v176zm384 0H240V272h176zm0-208H240V64h176z\"]\n};\nvar faBorderBottom = {\n prefix: 'fal',\n iconName: 'border-bottom',\n icon: [448, 512, [], \"f84d\", \"M440 448H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM216 280h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0 96h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm-96-96h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0-200h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm192 200h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0-200h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm-96 104h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0-104h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zM16 80h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H16A16 16 0 0 0 0 48v16a16 16 0 0 0 16 16zm416 56h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-104h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm0 200h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0 96h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM16 184h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0 96h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0 96h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16z\"]\n};\nvar faBorderCenterH = {\n prefix: 'fal',\n iconName: 'border-center-h',\n icon: [448, 512, [], \"f89c\", \"M440 240H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM216 376h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zM120 80h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm192 0h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm-96 104h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0-104h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zM16 80h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H16A16 16 0 0 0 0 48v16a16 16 0 0 0 16 16zm416 56h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-104h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM120 480h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm192 0h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm-96 0h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm-200 0h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm416-48h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-104h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM16 184h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0 192h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16z\"]\n};\nvar faBorderCenterV = {\n prefix: 'fal',\n iconName: 'border-center-v',\n icon: [448, 512, [], \"f89d\", \"M208 40v432a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8zm136 224v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16zM48 360v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16zm0-192v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16zm104 96v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16zm-104 0v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16zm0 200v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16zm56-416v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16zM0 48v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H16A16 16 0 0 0 0 48zm448 312v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16zm0-192v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16zm0 96v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16zm0 200v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16zM400 48v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16zm-104 0v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16zM152 464v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16zm192 0v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16z\"]\n};\nvar faBorderInner = {\n prefix: 'fal',\n iconName: 'border-inner',\n icon: [448, 512, [], \"f84e\", \"M439 240H239V40a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v200H7a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h200v200a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V272h200a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM15 184h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H15a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm16 248H15a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM15 80h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H15A16 16 0 0 0-1 48v16a16 16 0 0 0 16 16zm16 248H15a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM311 80h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm-192 0h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm312 56h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM135 432h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM431 32h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm0 296h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM327 432h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm104 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16z\"]\n};\nvar faBorderLeft = {\n prefix: 'fal',\n iconName: 'border-left',\n icon: [448, 512, [], \"f84f\", \"M24 32H8a8 8 0 0 0-8 8v432a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8zm208 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm0 296h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-192h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0 96h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM136 32h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm0 400h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-200h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm96 200h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm200-200h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-96h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-104h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM328 432h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm104-104h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0 104h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM328 232h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-200h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"]\n};\nvar faBorderNone = {\n prefix: 'fal',\n iconName: 'border-none',\n icon: [448, 512, [], \"f850\", \"M432 32h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM32 32H16A16 16 0 0 0 0 48v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm400 400h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-296h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0 192h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-96h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm-104 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM32 136H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm200 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0 192h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-96h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM32 328H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-96H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm104 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM32 432H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm104 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm192 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm-96 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM136 32h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm192 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm-96 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"]\n};\nvar faBorderOuter = {\n prefix: 'fal',\n iconName: 'border-outer',\n icon: [448, 512, [], \"f851\", \"M216 185h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm96 96h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm-96 0h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm-96 0h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm96 96h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zM432 33H16A16 16 0 0 0 0 49v416a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V49a16 16 0 0 0-16-16zm-16 416H32V65h384z\"]\n};\nvar faBorderRight = {\n prefix: 'fal',\n iconName: 'border-right',\n icon: [448, 512, [], \"f852\", \"M440 32h-16a8 8 0 0 0-8 8v432a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8zM136 432h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM32 32H16A16 16 0 0 0 0 48v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm104 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm0 200h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM32 328H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0 104H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-200H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-96H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm200 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm96 96h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-200h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm0 400h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zM232 32h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm0 400h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-104h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-96h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16z\"]\n};\nvar faBorderStyle = {\n prefix: 'fal',\n iconName: 'border-style',\n icon: [448, 512, [], \"f853\", \"M440 32H16A16 16 0 0 0 0 48v424a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V64h408a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8zM232 432h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm96 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm-192 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm296-200h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-96h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0 296h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-104h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16z\"]\n};\nvar faBorderStyleAlt = {\n prefix: 'fal',\n iconName: 'border-style-alt',\n icon: [448, 512, [], \"f854\", \"M439 32h-16a8 8 0 0 0-8 8v408H7a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h424a16 16 0 0 0 16-16V40a8 8 0 0 0-8-8zM15 80h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H15A16 16 0 0 0-1 48v16a16 16 0 0 0 16 16zm200 0h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm96 0h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm-192 0h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zM15 376h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H15a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0-96h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H15a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0-96h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H15a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16z\"]\n};\nvar faBorderTop = {\n prefix: 'fal',\n iconName: 'border-top',\n icon: [448, 512, [], \"f855\", \"M440 32H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8zM32 136H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm200 192h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0 104h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm-96-200h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm-104 0H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0 200H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-104H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm104 104h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm296 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-200h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0 96h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-192h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm-104 96h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm-96 0h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm0-96h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16zm96 296h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16z\"]\n};\nvar faBowArrow = {\n prefix: 'fal',\n iconName: 'bow-arrow',\n icon: [512, 512, [], \"f6b9\", \"M403.77 176.11l-23.47 23.47c50.46 78.99 46.83 182.75-11.62 257.82l-123.1-123.1-22.63 22.63L375.7 509.66c3.12 3.12 8.19 3.12 11.31 0l11.31-11.31a7.985 7.985 0 0 0 0-11.31l-6.76-6.76c70.86-88.04 74.96-212.03 12.21-304.17zM155.08 289.04l22.63-22.63-123.1-123.1c75.07-58.44 178.83-62.08 257.82-11.62l23.47-23.47c-92.14-62.75-216.13-58.65-304.16 12.21l-6.77-6.77c-3.13-3.12-8.19-3.12-11.31 0L2.34 124.99a7.985 7.985 0 0 0 0 11.31l152.74 152.74zM496.36 0c-1.03 0-2.07.1-3.13.31l-128.6 25.72c-12.29 2.46-16.88 17.62-8.02 26.49l40.12 40.12-252.37 252.37-53.63-23.96a20.547 20.547 0 0 0-21.04 4.96L6.03 389.69c-10.8 10.8-6.46 29.2 8.04 34.04l55.66 18.55 18.55 55.65c2.99 8.98 11.19 14.06 19.57 14.06 5.14 0 10.36-1.92 14.47-6.03l63.67-63.67a20.56 20.56 0 0 0 4.97-21.04L167 367.63l252.37-252.37 40.13 40.12c3.16 3.16 7.12 4.61 11.02 4.61 7.04 0 13.88-4.72 15.46-12.63l25.71-128.59C513.67 8.86 505.96 0 496.36 0zM112.77 470.25l-12.7-38.09-5.06-15.18-15.18-5.06-38.09-12.7 44.93-44.93 49.09 21.93 21.93 49.09-44.92 44.94zm347.8-359.03l-59.79-59.78 74.73-14.95-14.94 74.73z\"]\n};\nvar faBowlingBall = {\n prefix: 'fal',\n iconName: 'bowling-ball',\n icon: [496, 512, [], \"f436\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm-96-312c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm112-32c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.3 32-32zm-16 64c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"]\n};\nvar faBowlingPins = {\n prefix: 'fal',\n iconName: 'bowling-pins',\n icon: [480, 512, [], \"f437\", \"M475.2 312.2c-13-54.4-49.3-89.2-53.9-137.8-3.4-34.7 21.2-57.4 18.7-99.4-2.6-43.3-32.9-74.9-72-75-39.1.1-69.3 31.7-71.9 75-2.5 42 22 64.8 18.7 99.4-4.6 48.6-41 83.5-53.9 137.8-12.5 52.3.4 139.9 28.2 191.3l4.5 8.4h149l4.5-8.4c27.7-51.4 40.6-139 28.1-191.3zM408 76.9c1.7 28.6-16.1 49.3-18.7 83.1h-42.6c-2.6-33.9-20.5-54.4-18.7-83.1 3.6-60.1 76.4-60.1 80 0zm15.1 403H312.9c-21-45.2-31-118.7-21-160.3 10.7-44.8 41.9-77 52.1-127.7h48c10.2 50.7 41.4 82.9 52.1 127.7 9.9 41.7-.1 115.1-21 160.3zM165.3 174.5c-3.3-34.7 21.2-57.4 18.7-99.4-2.6-43.4-32.9-74.9-72-75-39.1 0-69.3 31.6-72 75-2.6 42 22 64.7 18.7 99.4-4.6 48.7-41 83.5-53.9 137.8-12.5 52.3.4 140 28.2 191.4l4.5 8.4h149l4.5-8.4c27.8-51.4 40.7-139 28.2-191.4-12.9-54.3-49.3-89.2-53.9-137.8zM152 77c1.7 28.7-16.1 49.1-18.7 83H90.7c-2.6-33.9-20.5-54.3-18.7-83 3.6-60.1 76.4-60.1 80 0zm15.1 403H56.9c-21-45.2-31-118.7-21-160.3 10.7-44.8 42-77 52.1-127.7h48c10.2 50.7 41.4 82.9 52.1 127.7 10 41.6 0 115.1-21 160.3z\"]\n};\nvar faBox = {\n prefix: 'fal',\n iconName: 'box',\n icon: [512, 512, [], \"f466\", \"M509.5 184.6L458.9 32.8C452.4 13.2 434.1 0 413.4 0H98.6c-20.7 0-39 13.2-45.5 32.8L2.5 184.6c-1.6 4.9-2.5 10-2.5 15.2V464c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V199.8c0-5.2-.8-10.3-2.5-15.2zM32 199.8c0-1.7.3-3.4.8-5.1L83.4 42.9C85.6 36.4 91.7 32 98.6 32H240v168H32v-.2zM480 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V232h448v232zm0-264H272V32h141.4c6.9 0 13 4.4 15.2 10.9l50.6 151.8c.5 1.6.8 3.3.8 5.1v.2z\"]\n};\nvar faBoxAlt = {\n prefix: 'fal',\n iconName: 'box-alt',\n icon: [448, 512, [], \"f49a\", \"M447.9 176c0-10.6-2.6-21-7.6-30.3l-49.1-91.9c-4.3-13-16.5-21.8-30.3-21.8H87.1c-13.8 0-26 8.8-30.4 21.9L7.6 145.8c-5 9.3-7.6 19.7-7.6 30.3C.1 236.6 0 448 0 448c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32 0 0-.1-211.4-.1-272zm-87-112l50.8 96H286.1l-12-96h86.8zM192 192h64v64h-64v-64zm49.9-128l12 96h-59.8l12-96h35.8zM87.1 64h86.8l-12 96H36.3l50.8-96zM32 448s.1-181.1.1-256H160v64c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32v-64h127.9c0 74.9.1 256 .1 256H32z\"]\n};\nvar faBoxBallot = {\n prefix: 'fal',\n iconName: 'box-ballot',\n icon: [576, 512, [], \"f735\", \"M571.4 276.6l-51.3-128.2c-4.8-12.3-16.6-20.3-29.8-20.3h-42.2V32c0-17.7-14.3-32-32-32h-256c-17.7 0-32 14.3-32 32v96H86c-13.2 0-25 8.1-29.8 20.3L4.6 276.4C1.5 284 0 292.2 0 300.4l.3 179.4c-.1 17.7 14.3 32.2 32 32.2H544c17.7 0 32.1-14.4 32-32.2V300.3c0-8.1-1.6-16.2-4.6-23.7zM160.2 32h256v192h-256V32zM86 160h42.2v64H104c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-23.8v-64h42.2l.1.2 51 127.8h-507L86 160zm458 320l-511.7-.2-.1-159.8H544v160z\"]\n};\nvar faBoxCheck = {\n prefix: 'fal',\n iconName: 'box-check',\n icon: [640, 512, [], \"f467\", \"M492.5 133.4L458.9 32.8C452.4 13.2 434.1 0 413.4 0H98.6c-20.7 0-39 13.2-45.5 32.8L2.5 184.6c-1.6 4.9-2.5 10-2.5 15.2V464c0 26.5 21.5 48 48 48h400c106 0 192-86 192-192 0-90.7-63-166.5-147.5-186.6zM272 32h141.4c6.9 0 13 4.4 15.2 10.9l28.5 85.5c-3-.1-6-.5-9.1-.5-56.8 0-107.7 24.8-142.8 64H272V32zM83.4 42.9C85.6 36.4 91.7 32 98.6 32H240v160H33.7L83.4 42.9zM48 480c-8.8 0-16-7.2-16-16V224h249.9c-16.4 28.3-25.9 61-25.9 96 0 66.8 34.2 125.6 86 160H48zm400 0c-88.2 0-160-71.8-160-160s71.8-160 160-160 160 71.8 160 160-71.8 160-160 160zm64.6-221.7c-3.1-3.1-8.1-3.1-11.2 0l-69.9 69.3-30.3-30.6c-3.1-3.1-8.1-3.1-11.2 0l-18.7 18.6c-3.1 3.1-3.1 8.1 0 11.2l54.4 54.9c3.1 3.1 8.1 3.1 11.2 0l94.2-93.5c3.1-3.1 3.1-8.1 0-11.2l-18.5-18.7z\"]\n};\nvar faBoxFragile = {\n prefix: 'fal',\n iconName: 'box-fragile',\n icon: [448, 512, [], \"f49b\", \"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-56zm24 392c0 13.2-10.8 24-24 24H56c-13.2 0-24-10.8-24-24V88c0-13.2 10.8-24 24-24h336c13.2 0 24 10.8 24 24v336zM304 96H144c-17.7 0-32 14.3-32 32v80c0 56.4 41.8 102.6 96 110.4V384h-40c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-40v-65.6c54.2-7.8 96-54 96-110.4v-80c0-17.7-14.3-32-32-32zm0 112c0 44.1-35.9 80-80 80s-80-35.9-80-80v-80h68.8c2.3 6.7 4.8 13.3 7.3 19.9-7.9 8.1-36.3 38.4-36.3 38.4s47.6 34.8 67.2 43.8c2.6 1.2 5.7 1 8.2-.7 3.7-2.6 4.6-7.7 2-11.4-8.9-12.5-29.8-33.7-29.8-33.7L260 156s-9.1-22.1-11.6-28H304v80z\"]\n};\nvar faBoxFull = {\n prefix: 'fal',\n iconName: 'box-full',\n icon: [640, 512, [], \"f49c\", \"M638.3 239.8L586.8 137c-2.8-5.6-8.5-9-14.6-9-1 0 4.3-.7-56.3 7l26.2-71.8c6-16.6-2.5-35-19.1-41L467.3 1.9c-16.5-6-34.9 2.5-41 19.1l-42.8 117.7C380.7 61.7 317.7 0 240 0 164.7 0 103.7 58 97.3 131.6 67.8 127.8 69 128 67.8 128c-6.1 0-11.8 3.5-14.6 9L1.7 239.8c-4.6 9.2.3 20.2 10.1 23L64 277.7V425c0 14.7 10 27.5 24.2 31l216.2 54.1c13.6 3.4 25 1.5 31 0L551.8 456c14.2-3.6 24.2-16.4 24.2-31V277.7l52.1-14.9c9.9-2.8 14.7-13.8 10.2-23zM456.4 32L512 52.2l-31.8 87.3-66 8.4L456.4 32zM38.8 237.3l38-76 190.4 24.3-60.1 99.8-168.3-48.1zM304 477L96 425V286.9C219.3 322.1 211 320 214.3 320c5.6 0 11-2.9 14-7.9L304 186.5V477zm16-317c-95.7-12.2-154.6-19.7-191.1-24.4C133.2 77.8 181.1 32 240 32c61.8 0 112 50.2 112 112 0 4.1-.6 8.1-1.1 12.1L320 160zm224 265l-208 52V186.5L411.7 312c3 5 8.4 7.9 14 7.9 3.3 0-5.2 2.1 118.3-33.1V425zM432.9 285.3l-60.1-99.8 190.4-24.3 38 76-168.3 48.1z\"]\n};\nvar faBoxHeart = {\n prefix: 'fal',\n iconName: 'box-heart',\n icon: [448, 512, [], \"f49d\", \"M447.9 176c0-10.6-2.6-21-7.6-30.3l-49.1-91.9c-4.3-13-16.5-21.8-30.3-21.8H87.1c-13.8 0-26 8.8-30.4 21.9L7.6 145.8c-5 9.3-7.6 19.7-7.6 30.3C.1 236.6 0 448 0 448c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32 0 0-.1-211.4-.1-272zM240 64h120.9l50.8 96H240V64zM87.1 64H208v96H36.3l50.8-96zM224 448H32s.1-181.1.1-256H416c0 74.9.1 256 .1 256H224zm90.2-210.8c-13.9-11.6-47.7-28.5-90.2 14.5-42.6-43-76.4-26.1-90.2-14.5-27.5 23-28.9 64.2-4.3 89.1l84.7 85.6c5.5 5.5 14.3 5.5 19.8 0l84.7-85.6c24.5-24.9 23-66.1-4.5-89.1zm-18.4 66.5L224 376.4l-71.8-72.6c-10.2-10.3-12.3-30 2.1-42 13.7-11.5 31.2-3.4 38.4 3.7l31.4 31.7 31.4-31.7c7.1-7.2 24.6-15.2 38.4-3.7 14.2 12 12.2 31.6 1.9 41.9z\"]\n};\nvar faBoxOpen = {\n prefix: 'fal',\n iconName: 'box-open',\n icon: [608, 512, [], \"f49e\", \"M606.4 143.8L557.5 41c-2.7-5.6-8.1-9-13.9-9C543 32 304 64 304 64S65 32 64.4 32c-5.8 0-11.2 3.5-13.9 9L1.6 143.8c-4.4 9.2.3 20.2 9.6 23l49.5 14.9V393c0 14.7 9.5 27.5 23 31l205.4 54.1c13 3.4 23.7 1.5 29.5 0L524.2 424c13.5-3.6 23-16.4 23-31V181.7l49.5-14.9c9.4-2.8 14-13.8 9.7-23zM73 65.3l180.9 24.3-57.1 99.8-159.9-48.1 36.1-76zm18.2 125.6C208.3 226.1 200.5 224 203.6 224c5.4 0 10.5-2.9 13.3-7.9l71.9-125.5V445L91.2 393V190.9zM516.8 393l-197.6 52V90.5L391.1 216c2.9 5 8 7.9 13.3 7.9 3.1 0-5 2.1 112.4-33.1V393zM411.3 189.3l-57.1-99.8L535 65.3l36.1 76-159.8 48z\"]\n};\nvar faBoxTissue = {\n prefix: 'fal',\n iconName: 'box-tissue',\n icon: [512, 512, [], \"e05b\", \"M464,224H405.33L448,96H338.6A70.2,70.2,0,0,1,272,48,70.19,70.19,0,0,0,205.4,0H64l49.78,224H48A48,48,0,0,0,0,272V464a48,48,0,0,0,48,48H464a48,48,0,0,0,48-48V272A48,48,0,0,0,464,224ZM103.89,32H205.4a38.15,38.15,0,0,1,36.24,26.12,102.07,102.07,0,0,0,97,69.88h65L350.27,288H160.78ZM480,464a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V416H480Zm0-80H32V272a16,16,0,0,1,16-16h72.89L128,288H112a16,16,0,0,0,0,32H400a16,16,0,0,0,0-32H384l10.67-32H464a16,16,0,0,1,16,16Z\"]\n};\nvar faBoxUp = {\n prefix: 'fal',\n iconName: 'box-up',\n icon: [512, 512, [], \"f49f\", \"M408 384H104c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h304c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM448 0H64C28.7 0 0 28.7 0 64v384c0 35.3 28.7 64 64 64h384c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64zm32 448c0 17.6-14.4 32-32 32H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h384c17.6 0 32 14.4 32 32v384zM108.5 202l35.5-44.4V312c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V157.6l35.5 44.4c4.6 5.8 14.5 8.8 22.5 2.5 6.9-5.5 8-15.6 2.5-22.5l-64-80c-6.1-7.6-18.9-7.6-25 0l-64 80c-5.5 6.9-4.4 17 2.5 22.5s17 4.4 22.5-2.5zm256-100c-6.1-7.6-18.9-7.6-25 0l-64 80c-5.5 6.9-4.4 17 2.5 22.5s17 4.4 22.5-2.5l35.5-44.4V312c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V157.6l35.5 44.4c4.6 5.8 14.5 8.8 22.5 2.5 6.9-5.5 8-15.6 2.5-22.5l-64-80z\"]\n};\nvar faBoxUsd = {\n prefix: 'fal',\n iconName: 'box-usd',\n icon: [448, 512, [], \"f4a0\", \"M249.4 310.9l-41.6-12.5c-4.2-1.3-7.2-5.6-7.2-10.6 0-6 4.3-10.9 9.7-10.9h25.9c3.9 0 7.7 1.1 11 3.1 3.2 1.9 7.3 1.2 10-1.4l11.4-10.9c3.5-3.4 3.4-9.2-.5-12.1-8.2-6-18-9.6-28.1-10.3V232c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v13.4c-21.9 1.3-39.4 19.6-39.4 42.5 0 19 12.3 35.9 30 41.2l41.6 12.5c4.2 1.3 7.2 5.6 7.2 10.6 0 6-4.3 10.9-9.7 10.9h-25.9c-3.9 0-7.7-1.1-11-3.1-3.2-1.9-7.3-1.2-10 1.4l-11.4 10.9c-3.5 3.4-3.4 9.2.5 12.1 8.2 6 18 9.6 28.1 10.3V408c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-13.4c21.9-1.3 39.4-19.6 39.4-42.5 0-18.9-12.4-35.9-30-41.2zM447.9 176c0-10.6-2.6-21-7.6-30.3l-49.1-91.9c-4.3-13-16.5-21.8-30.3-21.8H87.1c-13.8 0-26 8.8-30.4 21.9L7.6 145.8c-5 9.3-7.6 19.7-7.6 30.3C.1 236.6 0 448 0 448c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32 0 0-.1-211.4-.1-272zM240 64h120.9l50.8 96H240V64zM87.1 64H208v96H36.3l50.8-96zM32 448s.1-181.1.1-256H416c0 74.9.1 256 .1 256H32z\"]\n};\nvar faBoxes = {\n prefix: 'fal',\n iconName: 'boxes',\n icon: [640, 512, [], \"f468\", \"M624 224H480V16c0-8.8-7.2-16-16-16H176c-8.8 0-16 7.2-16 16v208H16c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16zm-176 32h64v62.3l-32-10.7-32 10.7V256zM352 32v62.3l-32-10.7-32 10.7V32h64zm-160 0h64v106.7l64-21.3 64 21.3V32h64v192H192V32zm0 224v62.3l-32-10.7-32 10.7V256h64zm-160 0h64v106.7l64-21.3 64 21.3V256h80v224H32V256zm576 224H336V256h80v106.7l64-21.3 64 21.3V256h64v224z\"]\n};\nvar faBoxesAlt = {\n prefix: 'fal',\n iconName: 'boxes-alt',\n icon: [640, 512, [], \"f4a1\", \"M624 224H480V16c0-8.8-7.2-16-16-16H176c-8.8 0-16 7.2-16 16v208H16c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16zm-112 32v64h-64v-64h64zM288 32h64v64h-64V32zm-96 0h64v64c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V32h64v192H192V32zm-64 224h64v64h-64v-64zm176 224H32V256h64v64c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32v-64h80v224zm304 0H336V256h80v64c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32v-64h64v224z\"]\n};\nvar faBoxingGlove = {\n prefix: 'fal',\n iconName: 'boxing-glove',\n icon: [448, 512, [], \"f438\", \"M252.4 360.8l7.2 14.3c2 4 .4 8.8-3.6 10.7L227.8 400l28.2 14.1c4 2 5.6 6.8 3.6 10.7l-7.2 14.3c-2 4-6.8 5.6-10.7 3.6L192 417.9l-49.7 24.8c-4 2-8.8.4-10.7-3.6l-7.2-14.3c-2-4-.4-8.8 3.6-10.7l28.2-14.1-28.2-14.1c-4-2-5.6-6.8-3.6-10.7l7.2-14.3c2-4 6.8-5.6 10.7-3.6l49.7 24.8 49.7-24.8c3.9-2 8.7-.4 10.7 3.5zm134 13.9L352 406.9V480c0 17.7-14.3 32-32 32H64c-17.7 0-32-14.3-32-32v-96l-17.1-96.5C5 227.6 0 166.6 0 106 0 47.6 47.2 0 105.2 0H280c57.3 0 104 47.6 104 106v43.6c37.2 12.6 64 45.9 64 85.4 0 52.8-21.9 102.4-61.6 139.7zm-21.9-23.4C397.7 320.2 416 278.9 416 235c0-32.5-28.7-59-64-59h-31.2c-26.3 0-48.3 20.8-48.8 47.1-.5 24.6 17.6 45.1 41.1 48.4 4 .6 6.9 4.1 6.9 8.1v16c0 4.7-4.1 8.5-8.8 8-40-4.4-71.2-38.4-71.2-79.5 0-11.4 2.5-22.2 6.8-32h-89.5c-30.6 0-59.5-10.9-82.3-30.8-3.5-3.1-3.7-8.4-.4-11.7l11.3-11.3c3-3 7.7-3.1 10.9-.4 16.9 14.4 38.1 22.3 60.5 22.3H272v.4c13.4-10.1 29.9-16.4 48-16.4h32v-38c0-41.5-31.6-74-72-74H105.2C64.8 32 32 65.2 32 106c0 149.6 31.7 252.5 31.8 278H88c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H63.8l.2 64h256v-64h-24c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h33.7l34.8-32.7z\"]\n};\nvar faBrackets = {\n prefix: 'fal',\n iconName: 'brackets',\n icon: [448, 512, [], \"f7e9\", \"M120 32H48A48 48 0 0 0 0 80v352a48 48 0 0 0 48 48h72a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H48a16 16 0 0 1-16-16V80a16 16 0 0 1 16-16h72a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8zm280 0h-72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h72a16 16 0 0 1 16 16v352a16 16 0 0 1-16 16h-72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h72a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48z\"]\n};\nvar faBracketsCurly = {\n prefix: 'fal',\n iconName: 'brackets-curly',\n icon: [576, 512, [], \"f7ea\", \"M571.31 244.69l-45.25-45.25A48 48 0 0 1 512 165.49V80a48 48 0 0 0-48-48h-72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h72a16 16 0 0 1 16 16v85.48a80 80 0 0 0 23.44 56.58L537.38 256l-33.94 33.94A80 80 0 0 0 480 346.52V432a16 16 0 0 1-16 16h-72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h72a48 48 0 0 0 48-48v-85.49a48 48 0 0 1 14.06-33.95l45.25-45.25a16 16 0 0 0 0-22.62zM184 32h-72a48 48 0 0 0-48 48v85.49a48 48 0 0 1-14.06 33.95L4.69 244.69a16 16 0 0 0 0 22.62l45.25 45.25A48 48 0 0 1 64 346.51V432a48 48 0 0 0 48 48h72a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-72a16 16 0 0 1-16-16v-85.48a80 80 0 0 0-23.44-56.58L38.62 256l33.94-33.94A80 80 0 0 0 96 165.48V80a16 16 0 0 1 16-16h72a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8z\"]\n};\nvar faBraille = {\n prefix: 'fal',\n iconName: 'braille',\n icon: [640, 512, [], \"f2a1\", \"M64 256c0 17.673-14.327 32-32 32S0 273.673 0 256s14.327-32 32-32 32 14.327 32 32zM32 400c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm0-336C14.327 64 0 78.327 0 96s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm160 176c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm0 160c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm0-336c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm256 176c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm0 160c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm0-336c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm160 176c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm0 160c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16zm0-320c-8.837 0-16 7.163-16 16s7.163 16 16 16 16-7.163 16-16-7.163-16-16-16z\"]\n};\nvar faBrain = {\n prefix: 'fal',\n iconName: 'brain',\n icon: [544, 512, [], \"f5dc\", \"M509.6 230.3c17.5-54.5-20.1-93.2-41.1-105.3 2.7-37.7-25.9-74.3-66.7-79.4C390 18.2 362.8 0 332.2 0 307.6 0 286 11.9 272 29.9 258 11.9 236.4 0 211.8 0c-30.6 0-57.7 18.2-69.7 45.6-40.8 5.1-69.3 41.7-66.7 79.4-21 12.2-58.6 50.9-41.1 105.3C12.9 247.4 0 273.4 0 301c0 32.7 17.4 62.4 45.3 78.5-2.3 48.2 36.7 88.7 84.9 87.4 14.2 27.4 42.6 45 74.1 45 27.9 0 52.5-13.8 67.8-34.8 15.2 21 39.9 34.8 67.8 34.8 31.5 0 59.8-17.6 74-45 48.2 1.2 87.2-39.3 84.9-87.4 27.9-16.2 45.3-45.8 45.3-78.5-.1-27.6-13-53.6-34.5-70.7zM255.9 428.5c0 28.4-23.2 51.5-51.7 51.5-31.9 0-44.2-21.8-53.1-48.2-16.3 2.7-18.3 3.2-22.2 3.2-28.5 0-51.7-23.1-51.7-51.5 0-6.2.9-9.1 3.7-23C55.5 350 32.1 336.3 32.1 301c0-33.9 23-46.9 42.9-58.3-12.6-25.7-12.8-29.2-12.8-39.2 0-33.9 21.9-48.5 49.4-59.7-2.5-10.9-4.2-16.6-4.2-22.8 0-24.1 19.6-43.8 45.5-43.8h.4l12.7.3c5.9-22.9 15-45.5 45.8-45.5 24.3 0 44.2 19.7 44.2 44v352.5zm207.1-68c2.8 13.8 3.7 16.8 3.7 23 0 28.4-23.2 51.5-51.7 51.5-3.9 0-5.9-.5-22.2-3.2-8.9 26.4-21.2 48.2-53.1 48.2-28.5 0-51.7-23.1-51.7-51.5V76c0-24.3 19.8-44 44.2-44 30.7 0 39.9 22.5 45.8 45.5l12.7-.3h.4c25.9 0 45.5 19.7 45.5 43.8 0 6.2-1.7 11.9-4.2 22.8 27.5 11.2 49.4 25.8 49.4 59.7 0 10-.2 13.4-12.8 39.2 19.9 11.4 42.9 24.5 42.9 58.3 0 35.3-23.4 49-48.9 59.5z\"]\n};\nvar faBreadLoaf = {\n prefix: 'fal',\n iconName: 'bread-loaf',\n icon: [640, 512, [], \"f7eb\", \"M400 32H240C107.45 32 0 103.63 0 192c0 35.35 30.86 64 64 64v192a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V256c33.14 0 64-28.65 64-64 0-88.37-107.45-160-240-160zm-16 416H96V224H64c-15.44 0-32-14.36-32-32 0-69.38 95.25-128 208-128s208 58.62 208 128c0 17.64-12.56 32-28 32h-36zm160 0H416V256h128zm36-224H471.68a66.61 66.61 0 0 0 8.32-32c0-52.43-38-98.82-96.44-128H400c112.75 0 208 58.62 208 128 0 17.64-12.56 32-28 32z\"]\n};\nvar faBreadSlice = {\n prefix: 'fal',\n iconName: 'bread-slice',\n icon: [576, 512, [], \"f7ec\", \"M288 0C115.72 0 0 90.88 0 175.75c0 34 26.59 60.63 64 66.58v223.45C64 491.27 86.44 512 114 512h348c27.56 0 50-20.73 50-46.22V242.33c37.41-6 64-32.6 64-66.58C576 90.88 460.28 0 288 0zm208 211.56h-16v254.22c0 7.7-8.25 14.22-18 14.22H114c-9.75 0-18-6.52-18-14.22V211.56H80c-27.38 0-48-15.39-48-35.81C32 117 123.16 32 288 32s256 85 256 143.75c0 20.42-20.62 35.81-48 35.81z\"]\n};\nvar faBriefcase = {\n prefix: 'fal',\n iconName: 'briefcase',\n icon: [512, 512, [], \"f0b1\", \"M464 128H352V56c0-13.26-10.74-24-24-24H184c-13.26 0-24 10.74-24 24v72H48c-26.51 0-48 21.49-48 48v256c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48zM192 64h128v64H192V64zm288 368c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16V288h160v40c0 13.25 10.75 24 24 24h80c13.25 0 24-10.75 24-24v-40h160v144zM224 320v-32h64v32h-64zm256-64H32v-80c0-8.82 7.18-16 16-16h416c8.82 0 16 7.18 16 16v80z\"]\n};\nvar faBriefcaseMedical = {\n prefix: 'fal',\n iconName: 'briefcase-medical',\n icon: [512, 512, [], \"f469\", \"M344 288h-56v-56c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v56h-56c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h56v56c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-56h56c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zm120-160H352V56c0-13.3-10.7-24-24-24H184c-13.3 0-24 10.7-24 24v72H48c-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 64h128v64H192V64zm288 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h416c8.8 0 16 7.2 16 16v288z\"]\n};\nvar faBringForward = {\n prefix: 'fal',\n iconName: 'bring-forward',\n icon: [512, 512, [], \"f856\", \"M352 304V48a48 48 0 0 0-48-48H48A48 48 0 0 0 0 48v256a48 48 0 0 0 48 48h256a48 48 0 0 0 48-48zm-320 0V48a16 16 0 0 1 16-16h256a16 16 0 0 1 16 16v256a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16zm432-144h-80v32h80a16 16 0 0 1 16 16v256a16 16 0 0 1-16 16H208a16 16 0 0 1-16-16v-80h-32v80a48 48 0 0 0 48 48h256a48 48 0 0 0 48-48V208a48 48 0 0 0-48-48zm-48 256H256v-32h-32v48a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16V240a16 16 0 0 0-16-16h-48v32h32z\"]\n};\nvar faBringFront = {\n prefix: 'fal',\n iconName: 'bring-front',\n icon: [640, 512, [], \"f857\", \"M32 208V48a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16v16h32V48a48 48 0 0 0-48-48H48A48 48 0 0 0 0 48v160a48 48 0 0 0 48 48h80v-32H48a16 16 0 0 1-16-16zm448 160V144a48 48 0 0 0-48-48H208a48 48 0 0 0-48 48v224a48 48 0 0 0 48 48h224a48 48 0 0 0 48-48zm-288 0V144a16 16 0 0 1 16-16h224a16 16 0 0 1 16 16v224a16 16 0 0 1-16 16H208a16 16 0 0 1-16-16zm400-112h-80v32h80a16 16 0 0 1 16 16v160a16 16 0 0 1-16 16H432a16 16 0 0 1-16-16v-16h-32v16a48 48 0 0 0 48 48h160a48 48 0 0 0 48-48V304a48 48 0 0 0-48-48zM464 448h96a16 16 0 0 0 16-16v-96a16 16 0 0 0-16-16h-48v32h32v64h-48.41a79.76 79.76 0 0 1-41.25 28.43A15.66 15.66 0 0 0 464 448zM176 64H80a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h48v-32H96V96h48.41a79.76 79.76 0 0 1 41.25-28.43A15.66 15.66 0 0 0 176 64z\"]\n};\nvar faBroadcastTower = {\n prefix: 'fal',\n iconName: 'broadcast-tower',\n icon: [576, 512, [], \"f519\", \"M40.55 0c-6.2 0-11.97 3.53-14.54 9.17C9.45 45.43 0 85.59 0 128c0 42.4 9.45 82.57 26.01 118.83 2.58 5.64 8.35 9.17 14.54 9.17 11.7 0 19.2-12.08 14.34-22.72C40.26 201.15 32 165.55 32 128s8.26-73.15 22.9-105.28C59.75 12.08 52.26 0 40.55 0zm285.89 178.84C341.87 167.14 352 148.81 352 128c0-35.3-28.72-64-64-64s-64 28.7-64 64c0 20.92 10.23 39.35 25.79 51.03l-137.13 315.4c-1.76 4.05.1 8.77 4.15 10.53l14.7 6.38c4.05 1.76 8.76-.1 10.52-4.15L209.51 352h157.3l67.47 155.19c1.76 4.05 6.47 5.91 10.52 4.15l14.7-6.38a8.005 8.005 0 0 0 4.15-10.53L326.44 178.84zM288 96c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.33-32-32 14.33-32 32-32zm-64.58 224l56.03-128.87c2.82.38 5.62.87 8.55.87 3.03 0 5.94-.49 8.86-.9L352.9 320H223.42zM118.99 192c10.7 0 18.1-10.24 15.15-20.53-3.97-13.82-6.14-28.38-6.14-43.47s2.17-29.65 6.14-43.47C137.09 74.24 129.69 64 118.99 64h-.15c-6.93 0-13.28 4.42-15.21 11.07C98.73 91.89 96 109.62 96 128s2.73 36.11 7.63 52.93c1.94 6.66 8.28 11.07 15.21 11.07h.15zM457.16 64h-.15c-10.7 0-18.1 10.24-15.15 20.53C445.83 98.35 448 112.91 448 128s-2.17 29.65-6.14 43.47c-2.95 10.29 4.45 20.53 15.15 20.53h.15c6.94 0 13.28-4.42 15.22-11.07 4.89-16.82 7.62-34.54 7.62-52.93s-2.73-36.11-7.62-52.93C470.44 68.42 464.09 64 457.16 64zm92.83-54.83C547.41 3.53 541.65 0 535.45 0c-11.7 0-19.19 12.08-14.34 22.72C535.74 54.85 544 90.45 544 128s-8.26 73.15-22.9 105.28c-4.85 10.65 2.64 22.72 14.34 22.72 6.2 0 11.97-3.53 14.54-9.17C566.56 210.57 576 170.4 576 128c0-42.41-9.44-82.57-26.01-118.83z\"]\n};\nvar faBroom = {\n prefix: 'fal',\n iconName: 'broom',\n icon: [640, 512, [], \"f51a\", \"M638.26 15.53L628.3 3.02c-2.75-3.45-7.78-4.03-11.24-1.28L372.91 194.67l-45.44-57.08c-4.98-6.25-14.56-5.98-19.18.53l-48.62 68.59c-28.53.32-107.2 4.97-158.01 45.37C38.78 302.06 0 511.39 0 511.39c15.38.67 215.11 6.82 275.65-41.3 50.93-40.48 73.32-116.22 79.99-143.78l77.47-31.27c7.44-3 9.89-12.32 4.9-18.6l-45.17-56.75L636.98 26.76a7.985 7.985 0 0 0 1.28-11.23zM255.73 445.62c-26.7 21.22-109.44 34.4-215.93 34.4h-.6c4.06-17.75 8.96-36.82 14.4-55.92l68.79-54.68c4.96-3.94 1.22-11.88-4.97-10.57l-45.98 9.71c15.01-41.64 32.34-77.31 50.15-91.46 33.6-26.71 89.69-37.24 133.9-38.38l67.77 85.13c-7.19 27.54-27.17 89.69-67.53 121.77zm87.1-148.87l-56.94-71.53 28.4-40.47c2.3-3.28 7.11-3.43 9.61-.29l67.61 84.93c2.52 3.16 1.25 7.85-2.51 9.33l-46.17 18.03z\"]\n};\nvar faBrowser = {\n prefix: 'fal',\n iconName: 'browser',\n icon: [512, 512, [], \"f37e\", \"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-48zM32 80c0-8.8 7.2-16 16-16h48v64H32V80zm448 352c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V160h448v272zm0-304H128V64h336c8.8 0 16 7.2 16 16v48z\"]\n};\nvar faBrush = {\n prefix: 'fal',\n iconName: 'brush',\n icon: [384, 512, [], \"f55d\", \"M352 0H32C14.33 0 0 14.33 0 32v288c0 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-64V32c0-17.67-14.33-32-32-32zm0 320c0 17.64-14.36 32-32 32h-96v96c0 17.64-14.36 32-32 32s-32-14.36-32-32v-96H64c-17.64 0-32-14.36-32-32v-32h320v32zm0-64H32V32h320v224z\"]\n};\nvar faBug = {\n prefix: 'fal',\n iconName: 'bug',\n icon: [576, 512, [], \"f188\", \"M544,272H480V150.627L523.314,107.314A16,16,0,0,0,500.686,84.687L457.373,128H415a127.00381,127.00381,0,1,0-254,0H118.627L75.314,84.687A16,16,0,1,0,52.686,107.314L96,150.627V272H32a16,16,0,0,0,0,32H96v24a174.98856,174.98856,0,0,0,30.484,98.889L68.687,484.686a15.99972,15.99972,0,1,0,22.627,22.627l55.616-55.616A175.45165,175.45165,0,0,0,272,504h32a175.45165,175.45165,0,0,0,125.07-52.303l55.616,55.616a15.99972,15.99972,0,0,0,22.627-22.627l-57.797-57.797A174.98856,174.98856,0,0,0,480,328V304h64a16,16,0,0,0,0-32ZM288,32.01263A95.99568,95.99568,0,0,1,383,128H193A95.99568,95.99568,0,0,1,288,32.01263ZM448,328c0,79.401-64.598,144-144,144V236a12.00052,12.00052,0,0,0-12-12h-8a12.00052,12.00052,0,0,0-12,12V472c-79.402,0-144-64.599-144-144V160H448Z\"]\n};\nvar faBuilding = {\n prefix: 'fal',\n iconName: 'building',\n icon: [448, 512, [], \"f1ad\", \"M192 107v40c0 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 12zm116-12h-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-128 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-12zm128 0h-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-128 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-12zm128 0h-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-12zm140 205v20H0v-20c0-6.627 5.373-12 12-12h20V24C32 10.745 42.745 0 56 0h336c13.255 0 24 10.745 24 24v456h20c6.627 0 12 5.373 12 12zm-64-12V32H64v448h128v-85c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v85h128z\"]\n};\nvar faBullhorn = {\n prefix: 'fal',\n iconName: 'bullhorn',\n icon: [576, 512, [], \"f0a1\", \"M544 184.88V32c0-8.74-6.98-32-31.99-32H512c-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 64l-.48 32c0 39.77 9.26 77.35 25.56 110.94 5.19 10.69 16.52 17.06 28.4 17.06h106.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.12c19.05-11.09 32-31.49 32-55.12.01-23.63-12.94-44.03-31.99-55.12zM223.76 480l-105.89-.03c-14.83-30.56-22.35-62.19-22.36-95.49l.48-32L96 352h99.33c-2.31 10.7-3.81 21.43-3.81 32 0 35.29 11.3 68.78 32.24 96zM64 320c-17.64 0-32-14.36-32-32v-96c0-17.64 14.36-32 32-32h192v160H64zm448.05 126.93c-.04.25-.13.58-.25.9l-84.83-67.87C386.99 348 338.54 328.14 288 322.13V157.87c50.54-6.01 98.99-25.87 138.98-57.84l84.87-67.9c.03.03.06.05.08.05.04 0 .06-.05.07-.17l.05 414.92z\"]\n};\nvar faBullseye = {\n prefix: 'fal',\n iconName: 'bullseye',\n icon: [496, 512, [], \"f140\", \"M248 92c-90.65 0-164 73.36-164 164 0 90.65 73.36 164 164 164 90.65 0 164-73.36 164-164 0-90.65-73.36-164-164-164zm0 296c-72.79 0-132-59.21-132-132s59.21-132 132-132 132 59.21 132 132-59.21 132-132 132zm0-212c-44.11 0-80 35.89-80 80s35.89 80 80 80 80-35.89 80-80-35.89-80-80-80zm0 128c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48zm0-296C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216z\"]\n};\nvar faBullseyeArrow = {\n prefix: 'fal',\n iconName: 'bullseye-arrow',\n icon: [496, 512, [], \"f648\", \"M305.05 98.74l23.96 53.62-92.33 92.33c-6.25 6.25-6.25 16.38 0 22.62 3.12 3.12 7.22 4.69 11.31 4.69s8.19-1.56 11.31-4.69l92.33-92.33 53.62 23.96a20.547 20.547 0 0 0 21.04-4.96l63.67-63.67c10.8-10.8 6.46-29.2-8.04-34.04l-55.66-18.55-18.55-55.65C404.73 13.08 396.54 8 388.16 8c-5.14 0-10.36 1.92-14.47 6.03L310.02 77.7a20.582 20.582 0 0 0-4.97 21.04zm78.18-48.99l12.7 38.09 5.06 15.18 15.18 5.06 38.09 12.7-44.93 44.93-49.09-21.93-21.93-49.09 44.92-44.94zm101.2 131.35l-26.18 26.18c3.63 15.69 5.75 31.95 5.75 48.72 0 119.1-96.9 216-216 216S32 375.1 32 256 128.9 40 248 40c16.78 0 33.04 2.11 48.72 5.75l26.18-26.18A247.848 247.848 0 0 0 248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248c0-26.11-4.09-51.26-11.57-74.9zM274.7 108.85a53.056 53.056 0 0 1-2.68-14.44C264.12 93.25 256.23 92 248 92c-90.65 0-164 73.36-164 164 0 90.65 73.36 164 164 164 90.65 0 164-73.36 164-164 0-8.35-1.25-16.35-2.45-24.36-4.89-.21-9.76-.79-14.41-2.34-2.12-.71 1.02.62-20.69-9.07C377.7 231.68 380 243.52 380 256c0 72.79-59.21 132-132 132s-132-59.21-132-132 59.21-132 132-132c12.48 0 24.32 2.3 35.77 5.55-9.69-21.7-8.36-18.56-9.07-20.7zM248 176c-44.11 0-80 35.89-80 80s35.89 80 80 80 80-35.89 80-80c0-3.77-.61-7.38-1.11-11.01l-44.95 44.95-.01-.01c-8.7 8.69-20.7 14.07-33.93 14.07-26.47 0-48-21.53-48-48 0-13.23 5.38-25.23 14.07-33.93l-.01-.01 44.95-44.95c-3.63-.5-7.24-1.11-11.01-1.11z\"]\n};\nvar faBullseyePointer = {\n prefix: 'fal',\n iconName: 'bullseye-pointer',\n icon: [496, 512, [], \"f649\", \"M241.5 240.7L20.83 303.41c-15.63 4.44-17.46 25.86-2.82 32.89l55.27 26.54-60.59 60.59c-12.5 12.5-12.5 32.76 0 45.25l22.62 22.62c6.25 6.25 14.44 9.37 22.63 9.37s16.38-3.12 22.63-9.37l60.59-60.59 26.54 55.27c3.25 6.76 9.56 10.01 15.86 10.01 7.34 0 14.64-4.41 17.04-12.83l62.72-220.67c3.77-13.3-8.53-25.57-21.82-21.79zm-61.35 197.32l-29.7-61.85-92.51 92.51-22.62-22.62 92.51-92.51-61.84-29.71 159.5-45.33-45.34 159.51zM328 256c0-44.11-35.89-80-80-80-33.74 0-62.53 21.07-74.26 50.69C228.07 211.24 236.67 208 248 208c26.47 0 48 21.53 48 48 0 11.26-3.1 19.44-18.69 74.26C306.93 318.53 328 289.74 328 256zm-76.08 163.61C340.71 417.47 412 345.29 412 256c0-90.65-73.36-164-164-164-89.31 0-161.47 71.3-163.61 160.08l32.95-9.36C124.12 176.23 179.76 124 248 124c72.79 0 132 59.21 132 132 0 68.23-52.24 123.88-118.71 130.66l-9.37 32.95zM248 8C111.03 8 0 119.03 0 256c0 7.3.47 14.49 1.09 21.63 3.46-1.97 7-3.87 10.99-5l20.47-5.82c-.18-3.6-.55-7.16-.55-10.81 0-119.1 96.9-216 216-216s216 96.9 216 216-96.9 216-216 216c-3.65 0-7.21-.37-10.81-.55l-5.82 20.46c-1.14 4.02-3.15 7.5-5.14 10.98 7.19.63 14.42 1.1 21.77 1.1 136.97 0 248-111.03 248-248S384.97 8 248 8z\"]\n};\nvar faBurgerSoda = {\n prefix: 'fal',\n iconName: 'burger-soda',\n icon: [640, 512, [], \"f858\", \"M640 376a55.65 55.65 0 0 0-18.46-41.26 58.81 58.81 0 0 0 7.37-77.49C594 208 523 176.06 448 176c-75 .06-146 32-180.88 81.25a58.8 58.8 0 0 0 7.36 77.49 55.14 55.14 0 0 0-4.78 77.52A43.79 43.79 0 0 0 256 444a68.08 68.08 0 0 0 68 68h248a68.08 68.08 0 0 0 68-68 43.79 43.79 0 0 0-13.68-31.74A55.49 55.49 0 0 0 640 376zM293.22 275.73C320 237.87 379 208.06 448 208s128 29.87 154.79 67.73C616 294.39 602.62 320 579.57 320H316.43c-23.04 0-36.43-25.62-23.21-44.27zM572 480H324a36 36 0 0 1-36-36 12 12 0 0 1 12-12h296a12 12 0 0 1 12 12 36 36 0 0 1-36 36zm12-80H312a24 24 0 0 1 0-48h272a24 24 0 0 1 0 48zM448 272a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm80 16a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm-160 0a16 16 0 1 0-16-16 16 16 0 0 0 16 16zM95.89 479.11L63.89 160H344a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H212.5l24-96H280a8 8 0 0 0 8-8V8a8 8 0 0 0-8-8h-43.5a32 32 0 0 0-31.06 24.25L179.5 128H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v1.68l32 320.61A31.88 31.88 0 0 0 96 512h155.11a99.79 99.79 0 0 1-20.18-32.14z\"]\n};\nvar faBurn = {\n prefix: 'fal',\n iconName: 'burn',\n icon: [384, 512, [], \"f46a\", \"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.5zM98.9 385.2c0-13.3 4.2-61.2 93.1-161.2 88.9 100 93.1 147.9 93.1 161.2 0 48.5-28.9 84.1-72.4 92.7-6.8.8-13.5 2.1-20.7 2.1s-13.9-1.2-20.7-2.1c-43.5-8.5-72.4-44.2-72.4-92.7zm212 39.7c3.7-12.4 6.2-25.5 6.2-39.7 0-80.9-112.7-195.5-125.1-209.4-12.9 14.5-125.1 128.6-125.1 209.4 0 14.2 2.5 27.3 6.2 39.7-25.8-31.3-41.1-74-41.1-124.4 0-90.8 122.6-215.8 160-251.9 37.4 36 160 161.1 160 251.9 0 50.4-15.3 93.1-41.1 124.4z\"]\n};\nvar faBurrito = {\n prefix: 'fal',\n iconName: 'burrito',\n icon: [512, 512, [], \"f7ed\", \"M512 123a74.13 74.13 0 0 0-52.26-70.74A74.05 74.05 0 0 0 358.12 6.73a80.49 80.49 0 0 0-106 41.57L34 266.45a116 116 0 0 0 0 164.05L81.5 478a116 116 0 0 0 164.05 0L463.7 259.87a80.49 80.49 0 0 0 41.57-106A73.46 73.46 0 0 0 512 123zM267.55 78.13A174.58 174.58 0 0 1 288 160c0 97.05-79 176-176 176a175.92 175.92 0 0 1-74.51-16.9 83.35 83.35 0 0 1 19.11-30zm-44.63 377.26a84 84 0 0 1-118.79 0L56.6 407.87a83.4 83.4 0 0 1-24.25-55.77A208.34 208.34 0 0 0 112 368c90.14 0 166.86-57.75 195.66-138.11A178.68 178.68 0 0 1 434 244.35zM480 186c0 15.34-7.34 28.66-18.4 37.58-43.1-26.72-95.33-36.5-144.84-28.19A207.56 207.56 0 0 0 320 160c0-39.14-11.29-76.52-31.77-109.4A48.16 48.16 0 0 1 326 32a48.65 48.65 0 0 1 32.84 12.86A41.94 41.94 0 0 1 431 74a42.4 42.4 0 0 1-.78 7.78A41.74 41.74 0 0 1 480 123a41.82 41.82 0 0 1-12.86 30.16A48.65 48.65 0 0 1 480 186z\"]\n};\nvar faBus = {\n prefix: 'fal',\n iconName: 'bus',\n icon: [512, 512, [], \"f207\", \"M128 384c17.67 0 32-14.33 32-32s-14.33-32-32-32-32 14.33-32 32 14.33 32 32 32zm256 0c17.67 0 32-14.33 32-32s-14.33-32-32-32-32 14.33-32 32 14.33 32 32 32zm104-256h-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 32h48c17.67 0 32-14.33 32-32v-32h160v32c0 17.67 14.33 32 32 32h48c17.67 0 32-14.33 32-32v-32c17.67 0 32-14.33 32-32V256h8c13.25 0 24-10.75 24-24v-80c0-13.26-10.75-24-24-24zM144 480H96v-32h48v32zm272 0h-48v-32h48v32zm32-64H64l-.01-128h384.02L448 416zm.01-160H63.99l-.01-128h384.05l-.02 128zm.02-160H63.97V80.31C67.31 67 131.41 32 256 32s188.69 35 192.03 48.31V96z\"]\n};\nvar faBusAlt = {\n prefix: 'fal',\n iconName: 'bus-alt',\n icon: [512, 512, [], \"f55e\", \"M384 384c17.67 0 32-14.33 32-32s-14.33-32-32-32-32 14.33-32 32 14.33 32 32 32zm-256 0c17.67 0 32-14.33 32-32s-14.33-32-32-32-32 14.33-32 32 14.33 32 32 32zm360-256h-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 32h48c17.67 0 32-14.33 32-32v-32h160v32c0 17.67 14.33 32 32 32h48c17.67 0 32-14.33 32-32v-32c17.67 0 32-14.33 32-32V256h8c13.25 0 24-10.75 24-24v-80c0-13.26-10.75-24-24-24zm-424.03 0H240v128H63.99l-.02-128zM144 480H96v-32h48v32zm272 0h-48v-32h48v32zm32-64H64l-.01-128h384.02L448 416zm.01-160H272V128h176.03l-.02 128zm.02-160H320v-8c0-13.26-10.75-24-24-24h-80c-13.25 0-24 10.74-24 24v8H63.97V80.31C67.31 67 131.41 32 256 32s188.69 35 192.03 48.31V96z\"]\n};\nvar faBusSchool = {\n prefix: 'fal',\n iconName: 'bus-school',\n icon: [512, 512, [], \"f5dd\", \"M128 320c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm256 0c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm96-192h-32V73.85C448 32.49 362.97 0 256 0S64 32.49 64 73.85V128H32c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h16.7C38.43 301.37 32 317.82 32 336v80c0 17.67 14.33 32 32 32v32c0 17.67 14.33 32 32 32h48c17.67 0 32-14.33 32-32v-32h160v32c0 17.67 14.33 32 32 32h48c17.67 0 32-14.33 32-32v-32c17.67 0 32-14.33 32-32v-80c0-18.18-6.43-34.63-16.7-48H480c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32zM256 32c102.96 0 156.91 30.59 160 41.85V96h-96v-8c0-13.26-10.75-24-24-24h-80c-13.25 0-24 10.74-24 24v8H95.96V74.21C99.09 62.59 153.04 32 256 32zm160 96v129.61a80.321 80.321 0 0 0-16-1.61H272V128h144zm-176 0v128H112c-5.48 0-10.83.57-16 1.61V128h144zM32 256v-96h32v96H32zm112 224H96v-32h48v32zm272 0h-48v-32h48v32zm32-64H64v-80c0-26.47 21.53-48 48-48h288c26.47 0 48 21.53 48 48v80zm32-160h-32v-96h32v96z\"]\n};\nvar faBusinessTime = {\n prefix: 'fal',\n iconName: 'business-time',\n icon: [640, 512, [], \"f64a\", \"M48 416c-8.82 0-16-7.18-16-16V256h160v40c0 13.25 10.75 24 24 24h80c13.25 0 24-10.75 24-24v-40h40.23c10.06-12.19 21.81-22.9 34.77-32H32v-80c0-8.82 7.18-16 16-16h416c8.82 0 16 7.18 16 16v48.81c5.28-.48 10.6-.81 16-.81s10.72.33 16 .81V144c0-26.51-21.49-48-48-48H352V24c0-13.26-10.74-24-24-24H184c-13.26 0-24 10.74-24 24v72H48c-26.51 0-48 21.49-48 48v256c0 26.51 21.49 48 48 48h291.37a174.574 174.574 0 0 1-12.57-32H48zm176-160h64v32h-64v-32zM192 32h128v64H192V32zm358.29 320H512v-54.29c0-5.34-4.37-9.71-9.71-9.71h-12.57c-5.34 0-9.71 4.37-9.71 9.71v76.57c0 5.34 4.37 9.71 9.71 9.71h60.57c5.34 0 9.71-4.37 9.71-9.71v-12.57c0-5.34-4.37-9.71-9.71-9.71zM496 224c-79.59 0-144 64.41-144 144s64.41 144 144 144 144-64.41 144-144-64.41-144-144-144zm0 256c-61.76 0-112-50.24-112-112s50.24-112 112-112 112 50.24 112 112-50.24 112-112 112z\"]\n};\nvar faCabinetFiling = {\n prefix: 'fal',\n iconName: 'cabinet-filing',\n icon: [512, 512, [], \"f64b\", \"M464 0H48C21.49 0 0 21.49 0 48v416c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V48c0-26.51-21.49-48-48-48zm16 464c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16V272h448v192zm0-224H32V48c0-8.82 7.18-16 16-16h416c8.82 0 16 7.18 16 16v192zM336 96H176c-8.84 0-16 7.16-16 16v40c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24h128v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-40c0-8.84-7.16-16-16-16zM168 416h16c4.42 0 8-3.58 8-8v-24h128v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-40c0-8.84-7.16-16-16-16H176c-8.84 0-16 7.16-16 16v40c0 4.42 3.58 8 8 8z\"]\n};\nvar faCactus = {\n prefix: 'fal',\n iconName: 'cactus',\n icon: [512, 512, [], \"f8a7\", \"M446.54 208.78C419 213.32 400 239.24 400 267.15V296a8 8 0 0 1-8 8h-40V101.43c0-52-38.93-98.58-90.84-101.29A96 96 0 0 0 160 96v96h-40a8 8 0 0 1-8-8v-28.85c0-27.91-19-53.83-46.54-58.37A56.08 56.08 0 0 0 0 152v32a120 120 0 0 0 120 120h40v192a16 16 0 0 0 16 16h160a16 16 0 0 0 16-16v-80h40a120 120 0 0 0 120-120v-32a56.08 56.08 0 0 0-65.46-55.22zM160 272h-40a88.09 88.09 0 0 1-88-88v-32a24 24 0 0 1 48 0v32a40 40 0 0 0 40 40h40zm160 208H192V96a64 64 0 0 1 128 0zm160-184a88.09 88.09 0 0 1-88 88h-40v-48h40a40 40 0 0 0 40-40v-32a24 24 0 0 1 48 0zM240 128a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm32 224a16 16 0 1 0 16 16 16 16 0 0 0-16-16z\"]\n};\nvar faCalculator = {\n prefix: 'fal',\n iconName: 'calculator',\n icon: [448, 512, [], \"f1ec\", \"M80 448h288c8.84 0 16-7.16 16-16V240c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.16-16 16v192c0 8.84 7.16 16 16 16zm208-96v-96h64v160h-64v-64zm-96-96h64v64h-64v-64zm0 96h64v64h-64v-64zm-96-96h64v64H96v-64zm0 96h64v64H96v-64zM400 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-48zm16 464c0 7.93-8.07 16-16 16H48c-7.93 0-16-8.07-16-16V192h384v272zm0-304H32V48c0-7.93 8.07-16 16-16h352c7.93 0 16 8.07 16 16v112z\"]\n};\nvar faCalculatorAlt = {\n prefix: 'fal',\n iconName: 'calculator-alt',\n icon: [480, 512, [], \"f64c\", \"M72 160h112c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm5.09 247.6l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0L128 390.63l28.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.31L150.63 368l28.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 0L128 345.37l-28.29-28.29c-3.12-3.12-8.19-3.12-11.31 0L77.09 328.4c-3.12 3.12-3.12 8.19 0 11.31L105.37 368l-28.29 28.28a8.006 8.006 0 0 0 .01 11.32zM448 16H32C14.33 16 0 30.33 0 48v416c0 17.67 14.33 32 32 32h416c17.67 0 32-14.33 32-32V48c0-17.67-14.33-32-32-32zM224 464H32V272h192v192zm0-224H32V48h192v192zm224 224H256V272h192v192zm0-224H256V48h192v192zm-152-80h40v40c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-40h40c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-40V88c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v40h-40c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm0 256h112c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H296c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm0-64h112c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H296c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8z\"]\n};\nvar faCalendar = {\n prefix: 'fal',\n iconName: 'calendar',\n icon: [448, 512, [], \"f133\", \"M400 64h-48V12c0-6.627-5.373-12-12-12h-8c-6.627 0-12 5.373-12 12v52H128V12c0-6.627-5.373-12-12-12h-8c-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-48zM48 96h352c8.822 0 16 7.178 16 16v48H32v-48c0-8.822 7.178-16 16-16zm352 384H48c-8.822 0-16-7.178-16-16V192h384v272c0 8.822-7.178 16-16 16z\"]\n};\nvar faCalendarAlt = {\n prefix: 'fal',\n iconName: 'calendar-alt',\n icon: [448, 512, [], \"f073\", \"M400 64h-48V12c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v52H128V12c0-6.6-5.4-12-12-12h-8c-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-48zM48 96h352c8.8 0 16 7.2 16 16v48H32v-48c0-8.8 7.2-16 16-16zm352 384H48c-8.8 0-16-7.2-16-16V192h384v272c0 8.8-7.2 16-16 16zM148 320h-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 12zm96 0h-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 12zm96 0h-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 12zm-96 96h-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 12zm-96 0h-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 12zm192 0h-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 12z\"]\n};\nvar faCalendarCheck = {\n prefix: 'fal',\n iconName: 'calendar-check',\n icon: [448, 512, [], \"f274\", \"M400 64h-48V12c0-6.627-5.373-12-12-12h-8c-6.627 0-12 5.373-12 12v52H128V12c0-6.627-5.373-12-12-12h-8c-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-48zM48 96h352c8.822 0 16 7.178 16 16v48H32v-48c0-8.822 7.178-16 16-16zm352 384H48c-8.822 0-16-7.178-16-16V192h384v272c0 8.822-7.178 16-16 16zm-66.467-194.937l-134.791 133.71c-4.7 4.663-12.288 4.642-16.963-.046l-67.358-67.552c-4.683-4.697-4.672-12.301.024-16.985l8.505-8.48c4.697-4.683 12.301-4.672 16.984.024l50.442 50.587 117.782-116.837c4.709-4.671 12.313-4.641 16.985.068l8.458 8.527c4.672 4.709 4.641 12.313-.068 16.984z\"]\n};\nvar faCalendarDay = {\n prefix: 'fal',\n iconName: 'calendar-day',\n icon: [448, 512, [], \"f783\", \"M400 64h-48V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56H128V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56H48C21.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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V192h384v272zm0-304H32v-48c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v48zM112 384h96c8.8 0 16-7.2 16-16v-96c0-8.8-7.2-16-16-16h-96c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16zm16-96h64v64h-64v-64z\"]\n};\nvar faCalendarEdit = {\n prefix: 'fal',\n iconName: 'calendar-edit',\n icon: [448, 512, [], \"f333\", \"M400 64h-48V12c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v52H128V12c0-6.6-5.4-12-12-12h-8c-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-48zM48 96h352c8.8 0 16 7.2 16 16v48H32v-48c0-8.8 7.2-16 16-16zm352 384H48c-8.8 0-16-7.2-16-16V192h384v272c0 8.8-7.2 16-16 16zM255.7 269.7l34.6 34.6c2.1 2.1 2.1 5.4 0 7.4L159.1 442.9l-35.1 5c-6.9 1-12.9-4.9-11.9-11.9l5-35.1 131.2-131.2c2-2 5.4-2 7.4 0zm75.2 1.4l-19.2 19.2c-2.1 2.1-5.4 2.1-7.4 0l-34.6-34.6c-2.1-2.1-2.1-5.4 0-7.4l19.2-19.2c6.8-6.8 17.9-6.8 24.7 0l17.3 17.3c6.8 6.8 6.8 17.9 0 24.7z\"]\n};\nvar faCalendarExclamation = {\n prefix: 'fal',\n iconName: 'calendar-exclamation',\n icon: [448, 512, [], \"f334\", \"M400 64h-48V12c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v52H128V12c0-6.6-5.4-12-12-12h-8c-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-48zM48 96h352c8.8 0 16 7.2 16 16v48H32v-48c0-8.8 7.2-16 16-16zm352 384H48c-8.8 0-16-7.2-16-16V192h384v272c0 8.8-7.2 16-16 16zM212.7 224h22.6c6.9 0 12.4 5.8 12 12.7l-6.7 120c-.4 6.4-5.6 11.3-12 11.3h-9.3c-6.4 0-11.6-5-12-11.3l-6.7-120c-.3-6.9 5.2-12.7 12.1-12.7zM252 416c0 15.5-12.5 28-28 28s-28-12.5-28-28 12.5-28 28-28 28 12.5 28 28z\"]\n};\nvar faCalendarMinus = {\n prefix: 'fal',\n iconName: 'calendar-minus',\n icon: [448, 512, [], \"f272\", \"M400 64h-48V12c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v52H128V12c0-6.6-5.4-12-12-12h-8c-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-48zM48 96h352c8.8 0 16 7.2 16 16v48H32v-48c0-8.8 7.2-16 16-16zm352 384H48c-8.8 0-16-7.2-16-16V192h384v272c0 8.8-7.2 16-16 16zm-92-128H140c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12z\"]\n};\nvar faCalendarPlus = {\n prefix: 'fal',\n iconName: 'calendar-plus',\n icon: [448, 512, [], \"f271\", \"M320 332v8c0 6.6-5.4 12-12 12h-68v68c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12v-68h-68c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h68v-68c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v68h68c6.6 0 12 5.4 12 12zm128-220v352c0 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-12h8c6.6 0 12 5.4 12 12v52h192V12c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48zm-416 0v48h384v-48c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16zm384 352V192H32v272c0 8.8 7.2 16 16 16h352c8.8 0 16-7.2 16-16z\"]\n};\nvar faCalendarStar = {\n prefix: 'fal',\n iconName: 'calendar-star',\n icon: [448, 512, [], \"f736\", \"M149.8 369l-7.9 46.3c-1.8 10.6 2.5 21.1 11.2 27.4 4.9 3.5 10.7 5.4 16.4 5.4 4.4 0 8.9-1.1 13-3.3L224 423l41.5 21.8c9.5 5 20.8 4.2 29.5-2.1 8.7-6.3 13-16.8 11.2-27.4l-7.9-46.3 33.5-32.7c7.7-7.5 10.4-18.5 7.1-28.7s-12-17.5-22.6-19l-46.4-6.8-20.7-42.1C244.3 230 234.7 224 224 224s-20.3 6-25 15.6l-20.7 42.1-46.4 6.8c-10.6 1.5-19.3 8.8-22.6 19s-.6 21.2 7.1 28.7l33.4 32.8zm49.6-58.1L224 261l24.6 49.9 55 8-39.8 38.9 9.4 54.8-49.2-25.8-49.2 25.9 9.4-54.8-39.8-38.9 55-8.1zM400 64h-48V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56H128V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56H48C21.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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V192h384v272zm0-304H32v-48c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v48z\"]\n};\nvar faCalendarTimes = {\n prefix: 'fal',\n iconName: 'calendar-times',\n icon: [448, 512, [], \"f273\", \"M400 64h-48V12c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v52H128V12c0-6.6-5.4-12-12-12h-8c-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-48zM48 96h352c8.8 0 16 7.2 16 16v48H32v-48c0-8.8 7.2-16 16-16zm352 384H48c-8.8 0-16-7.2-16-16V192h384v272c0 8.8-7.2 16-16 16zm-105.3-95.9c4.7 4.7 4.7 12.3 0 17l-5.7 5.7c-4.7 4.7-12.3 4.7-17 0l-48-48.2-48.1 48.1c-4.7 4.7-12.3 4.7-17 0l-5.7-5.7c-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-17l5.7-5.7c4.7-4.7 12.3-4.7 17 0l48.1 48.1 48.1-48.1c4.7-4.7 12.3-4.7 17 0l5.7 5.7c4.7 4.7 4.7 12.3 0 17L246.6 336l48.1 48.1z\"]\n};\nvar faCalendarWeek = {\n prefix: 'fal',\n iconName: 'calendar-week',\n icon: [448, 512, [], \"f784\", \"M400 64h-48V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56H128V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56H48C21.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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V192h384v272zm0-304H32v-48c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v48zM80 352h288c8.8 0 16-7.2 16-16v-96c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16zm16-96h256v64H96v-64z\"]\n};\nvar faCamcorder = {\n prefix: 'fal',\n iconName: 'camcorder',\n icon: [576, 512, [], \"f8a8\", \"M511.88 160l.12 31.5-.22 256.37L416 381.72V258.23L511.93 192h-.07v-32a32.13 32.13 0 0 0-18.27 5.73L416 219.32V208a48 48 0 0 0-48-48H128v-48a48 48 0 0 1 48-48h168a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8H176a80 80 0 0 0-80 80v48H80a48 48 0 0 0-48 48v224a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48v-11.39l77.59 53.59a32 32 0 0 0 18.26 5.8c16.63 0 32.15-13 32.15-31.59V191.5c0-18.5-15.48-31.5-32.12-31.5zM384 432a16 16 0 0 1-16 16H80a16 16 0 0 1-16-16V208a16 16 0 0 1 16-16h288a16 16 0 0 1 16 16zm-38.4-208H102.4a6.41 6.41 0 0 0-6.4 6.4v19.2a6.41 6.41 0 0 0 6.4 6.4h243.2a6.41 6.41 0 0 0 6.4-6.4v-19.2a6.41 6.41 0 0 0-6.4-6.4z\"]\n};\nvar faCamera = {\n prefix: 'fal',\n iconName: 'camera',\n icon: [512, 512, [], \"f030\", \"M324.3 64c3.3 0 6.3 2.1 7.5 5.2l22.1 58.8H464c8.8 0 16 7.2 16 16v288c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16h110.2l20.1-53.6c2.3-6.2 8.3-10.4 15-10.4h131m0-32h-131c-20 0-37.9 12.4-44.9 31.1L136 96H48c-26.5 0-48 21.5-48 48v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V144c0-26.5-21.5-48-48-48h-88l-14.3-38c-5.8-15.7-20.7-26-37.4-26zM256 408c-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-88z\"]\n};\nvar faCameraAlt = {\n prefix: 'fal',\n iconName: 'camera-alt',\n icon: [512, 512, [], \"f332\", \"M256 408c-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-32 88c0-17.6 14.4-32 32-32 8.8 0 16-7.2 16-16s-7.2-16-16-16c-35.3 0-64 28.7-64 64 0 8.8 7.2 16 16 16s16-7.2 16-16zM324.3 64c3.3 0 6.3 2.1 7.5 5.2l22.1 58.8H464c8.8 0 16 7.2 16 16v288c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16h110.2l20.1-53.6c2.3-6.2 8.3-10.4 15-10.4h131m0-32h-131c-20 0-37.9 12.4-44.9 31.1L136 96H48c-26.5 0-48 21.5-48 48v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V144c0-26.5-21.5-48-48-48h-88l-14.3-38c-5.8-15.7-20.7-26-37.4-26z\"]\n};\nvar faCameraHome = {\n prefix: 'fal',\n iconName: 'camera-home',\n icon: [448, 512, [], \"f8fe\", \"M208,128a64.06,64.06,0,0,0-64,64,16,16,0,0,0,32,0,32,32,0,0,1,32-32,16,16,0,0,0,0-32Zm15.94-64a144,144,0,0,0,0,288H224a144,144,0,0,0-.05-288Zm0,256a112,112,0,0,1,0-224H224a112,112,0,0,1-.05,224ZM384,0H64A64,64,0,0,0,0,64V352a64,64,0,0,0,64,64h72.71L76.53,450.83c-6.9,4.33-12.5,14.45-12.5,22.6v11.9A26.68,26.68,0,0,0,90.7,512H357.37A26.68,26.68,0,0,0,384,485.33V473.45c0-8.17-5.65-18.3-12.58-22.62L311.28,416H384a64,64,0,0,0,64-64V64A64,64,0,0,0,384,0ZM352,476.54V480H96v-3.48l56.71-32.82L200.59,416H247.4l47.85,27.7ZM416,352a32,32,0,0,1-32,32H64a32,32,0,0,1-32-32V64A32,32,0,0,1,64,32H384a32,32,0,0,1,32,32Z\"]\n};\nvar faCameraMovie = {\n prefix: 'fal',\n iconName: 'camera-movie',\n icon: [576, 512, [], \"f8a9\", \"M368 80a64 64 0 1 0 64 64 64 64 0 0 0-64-64zm0 96a32 32 0 1 1 32-32 32 32 0 0 1-32 32zM176 80a64 64 0 1 0 64 64 64.07 64.07 0 0 0-64-64zm0 96a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm374.29 80a25.67 25.67 0 0 0-14.61 4.59l-87.68 61V304a47.74 47.74 0 0 0-13.34-33.07C480.44 246.81 512 199.34 512 144A144 144 0 0 0 368 0c-37 0-70.48 14.38-96 37.37C246.48 14.38 213.05 0 176 0A144 144 0 0 0 32 144c0 45.52 21.54 85.61 54.51 112H32a32 32 0 0 0-32 32v32a32 32 0 0 0 32 32h64v112a48 48 0 0 0 48 48h256a48 48 0 0 0 48-48v-17.54l87.68 60.94a25.53 25.53 0 0 0 14.6 4.6c13.3 0 25.72-10.36 25.72-25.24V281.23c0-14.83-12.39-25.23-25.71-25.23zM416 464a16 16 0 0 1-16 16H144a16 16 0 0 1-16-16V320H32v-32h368a16 16 0 0 1 16 16zm-48-208H176a112 112 0 1 1 74.58-194.85L272 80.44l21.42-19.29A111.78 111.78 0 1 1 368 256zm176 218.22l-96-66.74v-47l96-66.74z\"]\n};\nvar faCameraPolaroid = {\n prefix: 'fal',\n iconName: 'camera-polaroid',\n icon: [576, 512, [], \"f8aa\", \"M288 128a80 80 0 1 0 80 80 80.12 80.12 0 0 0-80-80zm0 128a48 48 0 1 1 48-48 48.05 48.05 0 0 1-48 48zM104 416h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm470.43-87.94a32.12 32.12 0 0 0-3.8-8.06L512 256V80a48 48 0 0 0-48-48H112a48 48 0 0 0-48 48v176L5.38 320A33.45 33.45 0 0 0 0 337.75V448a32 32 0 0 0 32 32h512a32 32 0 0 0 32-32V337.75a31.81 31.81 0 0 0-1.57-9.69zM96 268.44V80a16 16 0 0 1 16-16h352a16 16 0 0 1 16 16v188.44L527.23 320H48.77zM544 448H32v-96h512zM432 104h-32a8 8 0 0 0-8 8v32a8 8 0 0 0 8 8h32a8 8 0 0 0 8-8v-32a8 8 0 0 0-8-8z\"]\n};\nvar faCameraRetro = {\n prefix: 'fal',\n iconName: 'camera-retro',\n icon: [512, 512, [], \"f083\", \"M32 58V38c0-3.3 2.7-6 6-6h116c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H38c-3.3 0-6-2.7-6-6zm344 230c0-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 88zm-120 0c0-17.6 14.4-32 32-32 8.8 0 16-7.2 16-16s-7.2-16-16-16c-35.3 0-64 28.7-64 64 0 8.8 7.2 16 16 16s16-7.2 16-16zM512 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V144c0-26.5 21.5-48 48-48h136l33.6-44.8C226.7 39.1 240.9 32 256 32h208c26.5 0 48 21.5 48 48zM224 96h240c5.6 0 11 1 16 2.7V80c0-8.8-7.2-16-16-16H256c-5 0-9.8 2.4-12.8 6.4L224 96zm256 48c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v288c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16V144z\"]\n};\nvar faCampfire = {\n prefix: 'fal',\n iconName: 'campfire',\n icon: [512, 512, [], \"f6ba\", \"M256 320c79.53 0 144-64.47 144-144 0-33.29-33.42-101.96-80-144-13.37 12.06-25.45 24.75-36.14 37.48C266.34 46.01 244.61 22.21 220 0c-63.17 56.98-108 131.22-108 176 0 79.53 64.47 144 144 144zM220.1 44.42c14.11 14.38 27.04 29.37 38.12 44.21L282.39 121l25.98-30.95c3.56-4.24 7.23-8.41 10.99-12.47C349.96 114.53 368 159.21 368 176c0 61.76-50.24 112-112 112s-112-50.24-112-112c0-27.75 28.05-81.63 76.1-131.58zM295.91 400l211.3-82.02a7.99 7.99 0 0 0 4.12-10.53l-6.4-14.65a8.006 8.006 0 0 0-10.54-4.13L256 382.54 17.61 288.67a8.006 8.006 0 0 0-10.54 4.13l-6.4 14.65a7.999 7.999 0 0 0 4.12 10.53L216.09 400 4.8 482.02a7.994 7.994 0 0 0-4.12 10.53l6.4 14.65c1.77 4.05 6.49 5.9 10.54 4.12L256 417.46l238.39 93.87c4.05 1.77 8.77-.07 10.54-4.12l6.4-14.65a7.999 7.999 0 0 0-4.12-10.53L295.91 400z\"]\n};\nvar faCampground = {\n prefix: 'fal',\n iconName: 'campground',\n icon: [640, 512, [], \"f6bb\", \"M632 480h-24L339.74 109.19l63-87.09c2.6-3.57 1.8-8.57-1.77-11.17l-12.93-9.4c-3.57-2.6-8.58-1.81-11.18 1.77L320 81.9 263.14 3.3a7.999 7.999 0 0 0-11.18-1.77l-12.93 9.4c-3.57 2.6-4.37 7.6-1.77 11.17l63 87.09L32 480H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h624c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-409.81 0L320 343.06 417.81 480H222.19zm234.96 0L333.02 306.23c-6.38-8.93-19.66-8.93-26.04 0L182.85 480H71.49L320 136.48 568.51 480H457.15z\"]\n};\nvar faCandleHolder = {\n prefix: 'fal',\n iconName: 'candle-holder',\n icon: [448, 512, [], \"f6bc\", \"M160 192c45.93 0 78-32.61 78-79.29C238 82.72 205.41 37.82 160 0c-45.62 38-78 82.84-78 112.71 0 46.68 32.07 79.29 78 79.29zm0-148.93c31.56 30.97 46 58.26 46 69.63 0 29.17-17.63 47.29-46 47.29s-46-18.12-46-47.29c0-11.37 14.44-38.66 46-69.63zM384 384c-35.35 0-64 28.65-64 64 0 11.72 3.38 22.55 8.88 32H256V256c0-17.67-14.33-32-32-32H96c-17.67 0-32 14.33-32 32v224H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h376c35.35 0 64-28.65 64-64s-28.65-64-64-64zm-160 96H96V256h32v48c0 8.84 7.16 16 16 16s16-7.16 16-16v-48h64v224zm160 0c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32z\"]\n};\nvar faCandyCane = {\n prefix: 'fal',\n iconName: 'candy-cane',\n icon: [512, 512, [], \"f786\", \"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.9c9.4 15.7 29.3 19.8 43.9 11l27.5-16.4c35.9-21.5 69.6 33 32.8 54.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-205.2 29.4l-32.8-54.9C291.8 47.2 312.6 32.1 352 32v64c-23.6.3-37.3 12.1-59.7 25.4zm91-17.4h.7V36.1c36.7 9.2 67.8 34 84.6 69.5 3.4 7.2 6 14.7 7.9 22.3H408v.1c-.2-.3-.3-.6-.4-.9-5.9-9.9-14.4-17.7-24.3-23.1zM256.8 291.4l82.3-49 64.3 36.2-82.3 49-64.3-36.2zm32.6 55.1l-87.5 52-64.3-36.2 87.5-52 64.3 36.2zM64.8 480l-32.9-54.9 73.9-43.9 64.3 36.2L64.8 480zm368-221.5l-62-34.9 14.6-8.7c20-11.9 30.9-33.2 30.9-54.9h63c-.9 36.5-17.2 72.8-46.5 98.5z\"]\n};\nvar faCandyCorn = {\n prefix: 'fal',\n iconName: 'candy-corn',\n icon: [640, 512, [], \"f6bd\", \"M480 0C314.19 1.62 315.52 39.54 322.11 72.47 352.45 224.02 416.18 416 479.91 416h.09c63.77-.18 127.53-191.9 157.89-343.53C644.48 39.54 645.81 1.62 480 0zm-.09 383.99c-12.75-.03-39.26-37.06-67.43-108.71 43.78-3.73 91.2-3.73 134.98-.01-28.2 71.64-54.77 108.68-67.55 108.72zm79.07-139.8c-50.83-4.96-107.17-4.96-158 0-9.47-27.05-18.92-57.92-27.95-92.61 66.6-9.76 147.33-9.77 213.93 0-9.04 34.68-18.49 65.56-27.98 92.61zm47.65-178.03c-3.8 19-7.83 36.88-11.94 54.22-71.31-10.82-158.08-10.82-229.39 0-4.11-17.34-8.13-35.23-11.93-54.23-1.98-9.89-1.55-12.44-1.27-13.08.1-.2 12.85-19.9 127.9-21.06 115.06 1.16 127.81 20.87 127.9 21.06.28.65.71 3.2-1.27 13.09zM84.94 205.81c-116.1 118.4-88.35 144.26-60.4 162.89 128.62 85.71 309.43 176.4 354.49 131.34l.06-.06c44.96-45.22-45.52-225.87-131.27-354.56-18.62-27.96-44.48-55.71-162.88 60.39zM356.4 477.4c-9.03 9-53.97 1.56-124.54-29.19 28.32-33.6 61.85-67.12 95.44-95.45 30.71 70.59 38.11 115.57 29.1 124.64zm-42.94-154.77c-39.45 32.44-79.29 72.28-111.72 111.73-25.83-12.43-54.34-27.58-85.25-45.72 40.19-53.99 97.27-111.08 151.27-151.27 18.13 30.91 33.28 59.42 45.7 85.26zm-224.5 49.41c-15.17-9.36-30.66-19.16-46.78-29.91-8.39-5.59-9.89-7.7-10.15-8.35-.07-.21-4.99-23.16 75.55-105.34 82.18-80.54 105.13-75.62 105.34-75.55.64.25 2.75 1.76 8.35 10.15 10.74 16.12 20.54 31.62 29.9 46.78-58.08 42.79-119.43 104.15-162.21 162.22z\"]\n};\nvar faCannabis = {\n prefix: 'fal',\n iconName: 'cannabis',\n icon: [512, 512, [], \"f55f\", \"M494.42 323.43c-1.2-.6-19.6-9.78-47.96-17.83 48.3-64.24 63.94-129.7 64.72-133.04a31.977 31.977 0 0 0-8.31-29.62 31.997 31.997 0 0 0-22.86-9.61c-2.19 0-4.4.23-6.59.69-3.34.7-66.31 14.35-130.68 55.97-8.59-97.8-57.86-172.39-60.14-175.8C276.64 5.32 266.67 0 256 0s-20.64 5.32-26.58 14.19c-2.29 3.41-51.56 78.01-60.14 175.8-64.37-41.62-127.34-55.27-130.68-55.97-2.19-.46-4.4-.69-6.59-.69-8.51 0-16.78 3.4-22.86 9.61a31.991 31.991 0 0 0-8.31 29.62c.77 3.34 16.42 68.79 64.72 133.04-28.37 8.05-46.77 17.23-47.96 17.83A32 32 0 0 0 0 351.98a32.005 32.005 0 0 0 17.54 28.57c2.3 1.17 54.42 27.19 120.97 29.89-2.84 6.84-4.26 11.06-4.41 11.51A31.999 31.999 0 0 0 164.48 464c3.04 0 6.11-.43 9.12-1.33 1.66-.49 31.46-9.55 66.39-30.71V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-72.03c34.94 21.16 64.74 30.21 66.39 30.71 3.01.89 6.08 1.33 9.12 1.33 8.53 0 16.86-3.41 22.97-9.72a31.982 31.982 0 0 0 7.41-32.33c-.15-.45-1.56-4.67-4.41-11.51 66.55-2.71 118.66-28.73 120.97-29.89 10.77-5.45 17.55-16.5 17.54-28.57s-6.79-23.12-17.56-28.56zM362.4 378.66c-17.33 0-31.19-.9-42.49-2.42-.22.12-.4.16-.62.28 19.8 30.01 28.23 55.48 28.23 55.48s-48.08-14.3-91.52-50.5c-43.44 36.2-91.52 50.5-91.52 50.5s8.43-25.47 28.23-55.48c-.22-.12-.4-.16-.62-.28-11.3 1.53-25.16 2.42-42.49 2.42C84.65 378.66 32 352 32 352s40.95-20.67 95.13-25.58c-.85-.8-1.57-1.36-2.43-2.18C53.02 255.98 32 165.33 32 165.33s95.18 20.02 166.85 88.28c.93.89 1.57 1.63 2.48 2.51-.85-11.28-1.33-23.67-1.33-37.46C200 115.57 256 32 256 32s56 83.57 56 186.67c0 13.79-.48 26.18-1.33 37.46.91-.88 1.55-1.62 2.48-2.51C384.82 185.35 480 165.33 480 165.33s-21.02 90.64-92.7 158.9c-.86.82-1.58 1.38-2.43 2.18C439.05 331.33 480 352 480 352s-52.65 26.66-117.6 26.66z\"]\n};\nvar faCapsules = {\n prefix: 'fal',\n iconName: 'capsules',\n icon: [544, 512, [], \"f46b\", \"M529 296.8L417.5 103.7c-30.8-53.2-99-71.5-152.3-40.8-21.2 12.2-36.5 30.5-45.8 51.3C206.3 67 163.4 32 112 32 50.2 32 0 82.2 0 144v224c0 61.8 50.2 112 112 112s112-50.2 112-112V214.2c.2.3.2.6.4.9l111.5 193.1c20.6 35.7 58.2 55.7 96.8 55.7 18.9 0 38-4.8 55.5-14.9 25.8-14.9 44.2-38.9 51.9-67.7 7.8-28.7 3.8-58.7-11.1-84.5zM112 64c44.1 0 80 35.9 80 80v112H32V144c0-44.1 35.9-80 80-80zm0 384c-44.1 0-80-35.9-80-80v-80h160v80c0 44.1-35.9 80-80 80zM281.2 90.5c40.4-23.3 88.2-6.5 108.8 29.1l47.6 82.4-137.9 79.6-47.7-82.3c-21.9-38.1-8.9-86.9 29.2-108.8zm228.2 282.7c-5.5 20.5-18.7 37.7-37.1 48.4-38 21.9-86.8 8.8-108.8-29.1l-47.9-83 137.9-79.6 47.9 83c10.7 18.2 13.5 39.7 8 60.3z\"]\n};\nvar faCar = {\n prefix: 'fal',\n iconName: 'car',\n icon: [512, 512, [], \"f1b9\", \"M120.81 248c-25.96 0-44.8 16.8-44.8 39.95 0 23.15 18.84 39.95 44.8 39.95l10.14.1c39.21 0 45.06-20.1 45.06-32.08-.01-24.68-31.1-47.92-55.2-47.92zm10.14 56c-3.51 0-7.02-.1-10.14-.1-12.48 0-20.8-6.38-20.8-15.95s8.32-15.95 20.8-15.95 31.2 14.36 31.2 23.93c0 7.17-10.54 8.07-21.06 8.07zm260.24-56c-24.1 0-55.19 23.24-55.19 47.93 0 11.98 5.85 32.08 45.06 32.08l10.14-.1c25.96 0 44.8-16.8 44.8-39.95-.01-23.16-18.85-39.96-44.81-39.96zm0 55.9c-3.12 0-6.63.1-10.14.1-10.53 0-21.06-.9-21.06-8.07 0-9.57 18.72-23.93 31.2-23.93s20.8 6.38 20.8 15.95-8.32 15.95-20.8 15.95zm114.8-140.94c-7.34-11.88-20.06-18.97-34.03-18.97H422.3l-8.07-24.76C403.5 86.29 372.8 64 338.17 64H173.83c-34.64 0-65.33 22.29-76.06 55.22l-8.07 24.76H40.04c-13.97 0-26.69 7.09-34.03 18.97s-8 26.42-1.75 38.91l5.78 11.61c3.96 7.88 9.92 14.09 17 18.55-6.91 11.74-11.03 25.32-11.03 39.97V400c0 26.47 21.53 48 48 48h16c26.47 0 48-21.53 48-48v-16H384v16c0 26.47 21.53 48 48 48h16c26.47 0 48-21.53 48-48V271.99c0-14.66-4.12-28.23-11.03-39.98 7.09-4.46 13.04-10.68 17-18.57l5.78-11.56c6.24-12.5 5.58-27.05-1.76-38.92zM128.2 129.14C134.66 109.32 153 96 173.84 96h164.33c20.84 0 39.18 13.32 45.64 33.13l20.47 62.85H107.73l20.47-62.84zm-89.53 70.02l-5.78-11.59c-1.81-3.59-.34-6.64.34-7.78.87-1.42 2.94-3.8 6.81-3.8h39.24l-6.45 19.82a80.69 80.69 0 0 0-23.01 11.29c-4.71-1-8.94-3.52-11.15-7.94zM96.01 400c0 8.83-7.19 16-16 16h-16c-8.81 0-16-7.17-16-16v-16h48v16zm367.98 0c0 8.83-7.19 16-16 16h-16c-8.81 0-16-7.17-16-16v-16h48v16zm0-80.01v32H48.01v-80c0-26.47 21.53-48 48-48h319.98c26.47 0 48 21.53 48 48v48zm15.12-132.41l-5.78 11.55c-2.21 4.44-6.44 6.97-11.15 7.97-6.94-4.9-14.69-8.76-23.01-11.29l-6.45-19.82h39.24c3.87 0 5.94 2.38 6.81 3.8.69 1.14 2.16 4.18.34 7.79z\"]\n};\nvar faCarAlt = {\n prefix: 'fal',\n iconName: 'car-alt',\n icon: [480, 512, [], \"f5de\", \"M423.18 195.81l-24.94-76.58C387.51 86.29 356.81 64 322.17 64H157.83c-34.64 0-65.34 22.29-76.07 55.22L56.82 195.8C24.02 205.79 0 235.92 0 271.99V400c0 26.47 21.53 48 48 48h16c26.47 0 48-21.53 48-48v-16h256v16c0 26.47 21.53 48 48 48h16c26.47 0 48-21.53 48-48V271.99c0-36.07-24.02-66.2-56.82-76.18zm-310.99-66.67c6.46-19.82 24.8-33.14 45.64-33.14h164.34c20.84 0 39.18 13.32 45.64 33.13l20.47 62.85H91.72l20.47-62.84zM80 400c0 8.83-7.19 16-16 16H48c-8.81 0-16-7.17-16-16v-16h48v16zm368 0c0 8.83-7.19 16-16 16h-16c-8.81 0-16-7.17-16-16v-16h48v16zm0-80.01v32H32v-80c0-26.47 21.53-48 48-48h320c26.47 0 48 21.53 48 48v48zM104.8 248C78.84 248 60 264.8 60 287.95c0 23.15 18.84 39.95 44.8 39.95l10.14.1c39.21 0 45.06-20.1 45.06-32.08 0-24.68-31.1-47.92-55.2-47.92zm10.14 56c-3.51 0-7.02-.1-10.14-.1-12.48 0-20.8-6.38-20.8-15.95S92.32 272 104.8 272s31.2 14.36 31.2 23.93c0 7.17-10.53 8.07-21.06 8.07zm260.26-56c-24.1 0-55.2 23.24-55.2 47.93 0 11.98 5.85 32.08 45.06 32.08l10.14-.1c25.96 0 44.8-16.8 44.8-39.95 0-23.16-18.84-39.96-44.8-39.96zm0 55.9c-3.12 0-6.63.1-10.14.1-10.53 0-21.06-.9-21.06-8.07 0-9.57 18.72-23.93 31.2-23.93s20.8 6.38 20.8 15.95-8.32 15.95-20.8 15.95z\"]\n};\nvar faCarBattery = {\n prefix: 'fal',\n iconName: 'car-battery',\n icon: [512, 512, [], \"f5df\", \"M480 128h-32V80c0-8.84-7.16-16-16-16H304c-8.84 0-16 7.16-16 16v48h-64V80c0-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-32zM320 96h96v32h-96V96zM96 96h96v32H96V96zm384 320H32V160h448v256zm-56-160h-40v-40c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v40h-40c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h40v40c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-40h40c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-224 0H88c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h112c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8z\"]\n};\nvar faCarBuilding = {\n prefix: 'fal',\n iconName: 'car-building',\n icon: [640, 512, [], \"f859\", \"M595.4 294.44l-15.88-68.83A63.71 63.71 0 0 0 517.16 176H344.07a63.7 63.7 0 0 0-62.36 49.61l-16.28 70.55C241 308.44 224 333.49 224 362.67v55.11a46.14 46.14 0 0 0 32 43.75V496a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-32h256v32a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-34.47a46.14 46.14 0 0 0 32-43.75v-55.11a74.7 74.7 0 0 0-44.6-68.23zM312.89 232.8a32 32 0 0 1 31.18-24.8h173.09a32 32 0 0 1 31.18 24.8l12.73 55.2H300.15zM608 417.78A14.24 14.24 0 0 1 593.78 432H270.22A14.24 14.24 0 0 1 256 417.78v-55.11A42.72 42.72 0 0 1 298.67 320h266.66A42.72 42.72 0 0 1 608 362.67zM320 48v96h32V48a48 48 0 0 0-48-48H48A48 48 0 0 0 0 48v392a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V48a16 16 0 0 1 16-16h256a16 16 0 0 1 16 16zM204 96a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm-56 96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0 96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm160 64a20 20 0 1 0 20 20 20 20 0 0 0-20-20zm248 0a20 20 0 1 0 20 20 20 20 0 0 0-20-20zM148 96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm102.53 122.42a96.81 96.81 0 0 1 5.16-15.95A11.86 11.86 0 0 0 244 192h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h37.85z\"]\n};\nvar faCarBump = {\n prefix: 'fal',\n iconName: 'car-bump',\n icon: [576, 512, [], \"f5e0\", \"M157.56 410.15l233.93-105.9 13.63 28.39c11.28 23.48 40.13 33.68 64.31 22.73l14.62-6.62c24.19-10.95 34.69-38.96 23.41-62.44L446.1 158.56c-15.37-32-50.16-48.79-84.38-44.08L306.3 56.86c-23.84-24.78-61.39-31.85-93.04-17.52L63.1 107.32c-31.65 14.33-50.21 46.8-45.98 80.46l9.84 78.25C1.24 288.46-7.87 325.13 7.5 357.12l61.36 127.75c11.28 23.48 40.13 33.68 64.31 22.73l14.62-6.62c24.19-10.95 34.69-38.96 23.41-62.44l-13.64-28.39zm320.67-110.61c3.76 7.83.25 17.17-7.8 20.81l-14.62 6.62c-8.05 3.65-17.68.26-21.44-7.57l-13.63-28.39 43.86-19.86 13.63 28.39zM76.73 135.71L226.9 67.73c19.04-8.62 41.48-4.4 55.82 10.51l45.49 47.29L57.22 248.21l-8.08-64.22c-2.54-20.26 8.55-39.66 27.59-48.28zm57.43 336.88l-14.62 6.62c-8.05 3.65-17.68.26-21.44-7.58l-13.64-28.39 43.86-19.86 13.63 28.39c3.77 7.84.26 17.18-7.79 20.82zm-63.33-57.73l-34.09-70.97c-11.28-23.48-.78-51.49 23.41-62.44l292.41-132.38c24.19-10.95 53.04-.75 64.31 22.73l20.45 42.58 13.63 28.39-43.86 19.86-29.24 13.24L70.83 414.86zm327.25-217.32c-9.87-20.54-34.24-27.65-57.96-16.91-22.02 9.97-40.54 43.45-30.02 65.35 5.1 10.63 19.01 26.03 54.84 9.81l9.22-4.28c23.73-10.74 33.78-33.43 23.92-53.97zm-34.14 32.68c-2.85 1.29-6.01 2.83-9.22 4.28-9.62 4.36-19.63 7.92-22.69 1.55-4.08-8.49 6.91-28.97 18.31-34.13 11.4-5.16 21.72-2.95 25.8 5.54s-.8 17.6-12.2 22.76zm-270.9 62.27c-23.72 10.74-33.78 33.44-23.91 53.97 9.87 20.54 34.24 27.65 57.96 16.91l9.3-4.11c35.83-16.22 32.61-36.47 27.51-47.09-10.52-21.9-48.83-29.65-70.86-19.68zm33.13 45.48c-3.21 1.45-6.46 2.81-9.3 4.11-11.4 5.16-21.72 2.94-25.8-5.55-4.08-8.49.81-17.59 12.21-22.75s34.62-.17 38.7 8.32c3.05 6.36-6.19 11.52-15.81 15.87zm449.49 154.78c-10.72-51.84-57.56-89.47-111.34-89.47S363.72 440.91 353 492.75c-1.81 8.66 3.75 17.12 12.41 18.92 8.5 1.73 17.09-3.77 18.91-12.42 7.69-37.06 41.31-63.97 80-63.97s72.34 26.91 80.03 63.97c1.56 7.55 8.22 12.75 15.63 12.75 1.09 0 2.19-.11 3.28-.33 8.65-1.79 14.21-10.26 12.4-18.92z\"]\n};\nvar faCarBus = {\n prefix: 'fal',\n iconName: 'car-bus',\n icon: [640, 512, [], \"f85a\", \"M64 300a20 20 0 1 0 20-20 20 20 0 0 0-20 20zm-32 49.09L31.93 256h209.92l7.39-32H208v-96h144v16h32V70.23C384 30.91 299 0 192 0S0 30.91 0 70.23v278.86A34.91 34.91 0 0 0 34.91 384H32v48a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-48h112v-21.33c0-3.66.93-7.09 1.29-10.67H34.91a2.91 2.91 0 0 1-2.91-2.91zM176 224H32v-96h144zM31.8 71.55C36.41 60.29 90.84 32 192 32s155.59 28.29 160 38.23V96H31.82zm563.6 222.89l-15.88-68.83A63.71 63.71 0 0 0 517.16 176H344.07a63.7 63.7 0 0 0-62.36 49.61l-16.28 70.55C241 308.44 224 333.49 224 362.67v55.11a46.14 46.14 0 0 0 32 43.75V496a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-32h256v32a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-34.47a46.14 46.14 0 0 0 32-43.75v-55.11a74.7 74.7 0 0 0-44.6-68.23zm-282.51-61.63A32 32 0 0 1 344.07 208h173.09a32 32 0 0 1 31.18 24.81L561.07 288H300.15zM608 417.78A14.24 14.24 0 0 1 593.78 432H270.22A14.24 14.24 0 0 1 256 417.78v-55.11A42.72 42.72 0 0 1 298.67 320h266.66A42.72 42.72 0 0 1 608 362.67zM308 352a20 20 0 1 0 20 20 20 20 0 0 0-20-20zm248 0a20 20 0 1 0 20 20 20 20 0 0 0-20-20z\"]\n};\nvar faCarCrash = {\n prefix: 'fal',\n iconName: 'car-crash',\n icon: [640, 512, [], \"f5e1\", \"M162.55 84.62c3.72 5.59 9.66 9.39 16.31 10.39 6.44.97 13.41-.86 18.66-5.16l52.16-42.94c6.84-5.63 7.81-15.7 2.19-22.53-5.63-6.86-15.75-7.81-22.5-2.19L184.2 59.37l-32.38-48.69c-5.66-8.52-15.63-12.45-25.66-9.92-9.91 2.48-16.94 10.66-17.91 20.78l-5.66 58.22-57.32-11.55c-10.09-2.11-19.88 2.34-25.13 11.11S15.7 98.84 22.2 106.7l37.16 45.16-48.72 32.39c-8.5 5.66-12.38 15.7-9.91 25.59 2.47 9.91 10.63 16.94 20.81 17.94l58.22 5.64-11.56 57.34c-1.75 8.66 3.88 17.09 12.53 18.84 1.06.22 2.13.31 3.19.31 7.44 0 14.13-5.25 15.66-12.84l13.34-66.25c1.31-6.58-.22-13.45-4.22-18.84-4-5.41-10.13-8.88-16.84-9.53l-44.34-4.3 37.06-24.64c5.63-3.7 9.41-9.66 10.41-16.3a23.68 23.68 0 0 0-5.16-18.7l-28.28-34.38 43.69 8.8c6.44 1.27 13.47-.23 18.88-4.25 5.41-4 8.84-10.14 9.5-16.8l4.28-44.34 24.65 37.08zm118.53 132.42c-25.07-6.72-47.62 4.63-53.61 26.99-5.99 22.36 7.86 43.47 32.93 50.19l9.77 2.72c37.87 10.15 48.73-7.75 51.83-19.32 6.38-23.84-17.64-54.34-40.92-60.58zm-4.71 56.72c-3.39-.91-6.75-1.91-9.77-2.72-12.05-3.23-18.44-11.55-15.96-20.79 2.48-9.24 12.16-13.25 24.22-10.02 12.05 3.23 26.42 21.94 23.94 31.19-1.85 6.92-12.26 5.06-22.43 2.34zm325.74-24.73l-4.27-80.42c-1.84-34.59-25.73-64.06-59.18-73.03L379.92 53.04c-33.46-8.96-68.88 4.62-87.77 33.65l-43.91 67.51c-34.27 1.16-65.27 24.04-74.6 58.88l-37.27 139.09c-6.85 25.57 8.37 51.94 33.94 58.79l15.45 4.14c25.57 6.85 51.94-8.38 58.79-33.94l8.28-30.91 247.28 66.26-8.28 30.91c-6.85 25.57 8.37 51.94 33.94 58.79l15.46 4.14c25.57 6.85 51.94-8.37 58.79-33.94l37.27-139.09c9.32-34.83-6.08-70.16-35.18-88.29zM318.97 104.14c11.37-17.47 32.53-25.59 52.66-20.19l158.74 42.53c20.13 5.39 34.4 23 35.51 43.82l3.51 66.01-286.46-76.76 36.04-55.41zM213.64 372.89c-2.29 8.53-11.08 13.6-19.6 11.31l-15.46-4.14c-8.51-2.28-13.6-11.07-11.31-19.6l8.28-30.91 46.37 12.42-8.28 30.92zm355.46 95.25c-2.29 8.53-11.08 13.59-19.6 11.31l-15.46-4.14c-8.51-2.28-13.6-11.07-11.31-19.6l8.28-30.91 46.36 12.42-8.27 30.92zm37.27-139.1l-12.42 46.37-8.28 30.91-46.37-12.42-30.91-8.28-324.55-86.96 20.71-77.27c6.85-25.56 33.22-40.79 58.79-33.94l309.1 82.82c25.55 6.83 40.78 33.21 33.93 58.77zm-64.11-42.02c-23.28-6.24-59.33 8.16-65.72 32.01-3.1 11.57-2.65 32.5 35.22 42.64l9.82 2.53c25.07 6.72 47.62-4.63 53.61-26.99 5.99-22.36-7.86-43.47-32.93-50.19zm9.75 43.98c-2.48 9.24-12.17 13.25-24.22 10.02-3.01-.81-6.43-1.62-9.82-2.53-10.17-2.72-20.11-6.32-18.25-13.25 2.48-9.24 24.27-18.27 36.33-15.04 12.05 3.24 18.43 11.55 15.96 20.8z\"]\n};\nvar faCarGarage = {\n prefix: 'fal',\n iconName: 'car-garage',\n icon: [640, 512, [], \"f5e2\", \"M635.88 160L327.78 2.02c-4.88-2.69-10.69-2.69-15.56 0l-308.1 161c-3.87 2.15-5.26 7.02-3.11 10.88l7.78 13.99c2.15 3.86 7.02 5.25 10.88 3.1L320 34.3l300.33 153.68c3.86 2.14 8.73.76 10.87-3.1l7.79-13.99c2.15-3.87.76-8.74-3.11-10.89zm-142.5 101.74l-15.15-46.5c-10.73-32.93-41.43-55.22-76.07-55.22H237.83c-34.64 0-65.34 22.29-76.07 55.22l-15.15 46.5C117.01 273.47 96 302.22 96 336v128c0 26.47 21.53 48 48 48h16c26.47 0 48-21.53 48-48v-16h224v16c0 26.47 21.53 48 48 48h16c26.47 0 48-21.53 48-48V336c0-33.78-21.01-62.53-50.62-74.26zm-301.19-36.59a47.888 47.888 0 0 1 45.64-33.13h164.34c20.84 0 39.18 13.32 45.64 33.13L457.86 256H182.14l10.05-30.85zM176 464c0 8.83-7.19 16-16 16h-16c-8.81 0-16-7.17-16-16v-16h48v16zm336 0c0 8.83-7.19 16-16 16h-16c-8.81 0-16-7.17-16-16v-16h48v16zm0-80v32H128v-80c0-26.47 21.53-48 48-48h288c26.47 0 48 21.53 48 48v48zm-72.8-71.99c-24.1 0-55.2 23.24-55.2 47.93 0 11.98 5.85 32.07 45.06 32.07l10.14-.1c25.96 0 44.8-16.8 44.8-39.95 0-23.15-18.84-39.95-44.8-39.95zm0 55.9c-3.12 0-6.63.1-10.14.1-10.53 0-21.06-.9-21.06-8.07 0-9.57 18.72-23.93 31.2-23.93s20.8 6.38 20.8 15.95-8.33 15.95-20.8 15.95zm-238.4-55.9c-25.96 0-44.8 16.8-44.8 39.95 0 23.15 18.84 39.95 44.8 39.95l10.14.1c39.21 0 45.06-20.1 45.06-32.07 0-24.69-31.1-47.93-55.2-47.93zm10.14 56c-3.51 0-7.02-.1-10.14-.1-12.48 0-20.8-6.38-20.8-15.95s8.32-15.95 20.8-15.95 31.2 14.36 31.2 23.93c0 7.17-10.53 8.07-21.06 8.07z\"]\n};\nvar faCarMechanic = {\n prefix: 'fal',\n iconName: 'car-mechanic',\n icon: [512, 512, [], \"f5e3\", \"M510.15 53.28C498.82 21.41 468.6 0 434.94 0c-26.03 0-48.97 12.69-63.59 32h-230.7C126.04 12.69 103.09 0 77.06 0 43.4 0 13.18 21.41 1.85 53.28A31.966 31.966 0 0 0 4.29 80a32.036 32.036 0 0 0-2.44 26.72C13.18 138.59 43.4 160 77.06 160c26.02 0 48.95-12.68 63.57-31.97h230.74c14.62 19.29 37.55 31.97 63.57 31.97 33.66 0 63.89-21.41 75.21-53.28A32.04 32.04 0 0 0 507.71 80c4.67-8.08 5.6-17.84 2.44-26.72zM434.94 96H480c-6.61 18.6-24.19 32-45.06 32s-38.45-13.4-45.06-32H122.13c-6.61 18.6-24.19 32-45.06 32S38.61 114.6 32 96h45.06l16-16-16-16H32c6.61-18.6 24.19-32 45.06-32 20.88 0 38.47 13.41 45.07 32.03h267.73C396.47 45.41 414.06 32 434.94 32c20.87 0 38.45 13.4 45.06 32h-45.06l-16 16 16 16zm-5.56 165.74l-15.15-46.5c-10.73-32.93-41.43-55.22-76.07-55.22H173.83c-34.64 0-65.34 22.29-76.07 55.22l-15.15 46.5C53.01 273.47 32 302.22 32 336v128c0 26.47 21.53 48 48 48h16c26.47 0 48-21.53 48-48v-16h224v16c0 26.47 21.53 48 48 48h16c26.47 0 48-21.53 48-48V336c0-33.78-21.01-62.53-50.62-74.26zm-301.19-36.59a47.888 47.888 0 0 1 45.64-33.13h164.34c20.84 0 39.18 13.32 45.64 33.13L393.86 256H118.14l10.05-30.85zM112 464c0 8.83-7.19 16-16 16H80c-8.81 0-16-7.17-16-16v-16h48v16zm336 0c0 8.83-7.19 16-16 16h-16c-8.81 0-16-7.17-16-16v-16h48v16zm0-80v32H64v-80c0-26.47 21.53-48 48-48h288c26.47 0 48 21.53 48 48v48zm-72.8-71.99c-24.1 0-55.2 23.24-55.2 47.93 0 11.98 5.85 32.07 45.06 32.07l10.14-.1c25.96 0 44.8-16.8 44.8-39.95 0-23.15-18.84-39.95-44.8-39.95zm0 55.9c-3.12 0-6.63.1-10.14.1-10.53 0-21.06-.9-21.06-8.07 0-9.57 18.72-23.93 31.2-23.93s20.8 6.38 20.8 15.95-8.32 15.95-20.8 15.95zm-238.4-55.9c-25.96 0-44.8 16.8-44.8 39.95 0 23.15 18.84 39.95 44.8 39.95l10.14.1c39.21 0 45.06-20.1 45.06-32.07 0-24.69-31.1-47.93-55.2-47.93zm10.14 56c-3.51 0-7.02-.1-10.14-.1-12.48 0-20.8-6.38-20.8-15.95s8.32-15.95 20.8-15.95 31.2 14.36 31.2 23.93c0 7.17-10.53 8.07-21.06 8.07z\"]\n};\nvar faCarSide = {\n prefix: 'fal',\n iconName: 'car-side',\n icon: [640, 512, [], \"f5e4\", \"M544 192h-16L419.21 56.02A63.99 63.99 0 0 0 369.24 32H171.33c-26.17 0-49.7 15.93-59.42 40.23L64 192c-35.35 0-64 28.65-64 64v112c0 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-96zM288 64h81.24c9.77 0 18.88 4.38 24.99 12.01L487.02 192H288V64zM141.62 84.12C146.51 71.89 158.17 64 171.33 64H256v128H98.46l43.16-107.88zM160 448c-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 64zm128-96h-37.88c-13.22-37.2-48.38-64-90.12-64s-76.9 26.8-90.12 64H250.12c-13.22-37.2-48.38-64-90.12-64s-76.9 26.8-90.12 64H32v-96c0-17.64 14.36-32 32-32h480c35.29 0 64 28.71 64 64v64z\"]\n};\nvar faCarTilt = {\n prefix: 'fal',\n iconName: 'car-tilt',\n icon: [640, 512, [], \"f5e5\", \"M179.55 305.94c-18.28 18.28-19.71 43.37-3.42 59.67 16.3 16.3 41.4 14.87 59.68-3.41l7.21-7.07c27.61-27.61 17.58-45.88 9.14-54.31-17.38-17.38-55.64-11.85-72.61 5.12zm46.57 32.29c-2.47 2.47-5.01 4.87-7.21 7.07-8.79 8.79-19.14 10.15-25.88 3.41-6.74-6.74-5.37-17.09 3.41-25.88 8.79-8.79 32.07-11.86 38.81-5.12 5.06 5.06-1.72 13.11-9.13 20.52zM632 480H307.39c13.09-18.64 12.16-44.2-4.48-60.84l-22.53-22.53 180.26-180.25 22.53 22.53c18.64 18.64 48.96 18.64 67.6 0l11.27-11.27c18.64-18.64 18.64-48.96 0-67.6L460.63 58.65c-25.4-25.39-63.53-29.7-93.65-13.63L295.49 8.66c-30.74-15.63-68.05-9.71-92.44 14.68L87.33 139.05c-24.39 24.39-30.31 61.7-14.68 92.45l36.36 71.48c-16.06 30.13-11.76 68.26 13.63 93.65L206.02 480H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h624c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-92.51-297.43c6.22 6.22 6.21 16.33 0 22.53l-11.27 11.27c-6.21 6.21-16.32 6.21-22.53 0l-22.53-22.53 33.8-33.8 22.53 22.53zm-438.43 34.48c-9.41-18.5-5.87-40.79 8.81-55.47L225.58 45.87a47.715 47.715 0 0 1 55.47-8.81l58.67 29.84L130.9 275.72l-29.84-58.67zm100.45 213.38l-56.33-56.33c-18.64-18.63-18.64-48.96 0-67.6L370.5 81.18c18.64-18.64 48.96-18.64 67.6 0l33.8 33.8 22.53 22.53-33.8 33.8-22.53 22.53-236.59 236.59zm78.86 33.79l-11.27 11.27c-2.9 2.9-6.68 4.32-10.5 4.51h-1.53c-3.82-.18-7.6-1.6-10.51-4.51l-22.53-22.53 33.8-33.8 22.53 22.53c6.23 6.22 6.22 16.33.01 22.53zm149.24-352.09c-16.3-16.3-41.39-14.86-59.67 3.41-16.97 16.97-22.5 55.23-5.12 72.61 8.44 8.44 26.71 18.46 54.31-9.14l7.07-7.21c18.28-18.27 19.71-43.36 3.41-59.67zm-20.31 42.78c-2.2 2.2-4.6 4.74-7.07 7.21-7.41 7.41-15.46 14.2-20.51 9.14-6.74-6.74-3.67-30.03 5.12-38.81 8.79-8.79 19.14-10.15 25.88-3.42s5.37 17.09-3.42 25.88z\"]\n};\nvar faCarWash = {\n prefix: 'fal',\n iconName: 'car-wash',\n icon: [448, 512, [], \"f5e6\", \"M80 128c26.47 0 48-21.6 48-48.16 0-20.52-24.38-58.12-34.84-73.32-5.94-8.69-20.38-8.69-26.31 0C56.38 21.72 32 59.32 32 79.84 32 106.4 53.53 128 80 128zm0-82.61c9.22 15.57 15.88 29.55 16 34.44 0 8.86-7.19 16.05-16 16.05s-16-7.2-16-16.04c.12-4.89 6.78-18.88 16-34.45zM224 128c26.47 0 48-21.6 48-48.16 0-20.52-24.38-58.12-34.84-73.32-5.94-8.69-20.38-8.69-26.31 0C200.38 21.72 176 59.32 176 79.84c0 26.56 21.53 48.16 48 48.16zm0-82.61c9.22 15.57 15.88 29.55 16 34.44 0 8.86-7.19 16.05-16 16.05s-16-7.2-16-16.04c.12-4.89 6.78-18.88 16-34.45zM368 128c26.47 0 48-21.6 48-48.16 0-20.52-24.38-58.12-34.84-73.32-5.94-8.69-20.38-8.69-26.31 0C344.38 21.72 320 59.32 320 79.84c0 26.56 21.53 48.16 48 48.16zm0-82.61c9.22 15.57 15.88 29.55 16 34.44 0 8.86-7.19 16.05-16 16.05s-16-7.2-16-16.04c.12-4.89 6.78-18.88 16-34.45zm29.38 216.35l-15.15-46.5c-10.73-32.93-41.43-55.22-76.07-55.22H141.83c-34.64 0-65.34 22.29-76.07 55.22l-15.15 46.5C21.01 273.47 0 302.22 0 336v128c0 26.47 21.53 48 48 48h16c26.47 0 48-21.53 48-48v-16h224v16c0 26.47 21.53 48 48 48h16c26.47 0 48-21.53 48-48V336c0-33.78-21.01-62.53-50.62-74.26zM96.19 225.15a47.888 47.888 0 0 1 45.64-33.13h164.34c20.84 0 39.18 13.32 45.64 33.13L361.86 256H86.14l10.05-30.85zM80 464c0 8.83-7.19 16-16 16H48c-8.81 0-16-7.17-16-16v-16h48v16zm336 0c0 8.83-7.19 16-16 16h-16c-8.81 0-16-7.17-16-16v-16h48v16zm0-80v32H32v-80c0-26.47 21.53-48 48-48h288c26.47 0 48 21.53 48 48v48zm-72.8-71.99c-24.1 0-55.2 23.24-55.2 47.93 0 11.98 5.85 32.07 45.06 32.07l10.14-.1c25.96 0 44.8-16.8 44.8-39.95 0-23.15-18.84-39.95-44.8-39.95zm0 55.9c-3.12 0-6.63.1-10.14.1-10.53 0-21.06-.9-21.06-8.07 0-9.57 18.72-23.93 31.2-23.93s20.8 6.38 20.8 15.95-8.32 15.95-20.8 15.95zm-238.4-55.9c-25.96 0-44.8 16.8-44.8 39.95 0 23.15 18.84 39.95 44.8 39.95l10.14.1c39.21 0 45.06-20.1 45.06-32.07 0-24.69-31.1-47.93-55.2-47.93zm10.14 56c-3.51 0-7.02-.1-10.14-.1-12.48 0-20.8-6.38-20.8-15.95s8.32-15.95 20.8-15.95 31.2 14.36 31.2 23.93c0 7.17-10.53 8.07-21.06 8.07z\"]\n};\nvar faCaravan = {\n prefix: 'fal',\n iconName: 'caravan',\n icon: [640, 512, [], \"f8ff\", \"M416,240a16,16,0,1,0-16-16A16,16,0,0,0,416,240ZM632,352H576V160A160,160,0,0,0,416,0H96A96,96,0,0,0,0,96V288a96,96,0,0,0,96,96,96,96,0,0,0,192,0H632a8,8,0,0,0,8-8V360A8,8,0,0,0,632,352ZM192,448a64,64,0,1,1,64-64A64.07,64.07,0,0,1,192,448Zm256-96H352V128h96Zm96,0H480V128a32,32,0,0,0-32-32H352a32,32,0,0,0-32,32V352H282.12c-13.22-37.2-48.38-64-90.12-64s-76.9,26.8-90.12,64H96a64.07,64.07,0,0,1-64-64V96A64.07,64.07,0,0,1,96,32H416A128.14,128.14,0,0,1,544,160ZM240,96H112a32,32,0,0,0-32,32v64a32,32,0,0,0,32,32H240a32,32,0,0,0,32-32V128A32,32,0,0,0,240,96Zm0,96H112V128H240Z\"]\n};\nvar faCaravanAlt = {\n prefix: 'fal',\n iconName: 'caravan-alt',\n icon: [640, 512, [], \"e000\", \"M432,96H368a32,32,0,0,0-32,32v64a32,32,0,0,0,32,32h64a32,32,0,0,0,32-32V128A32,32,0,0,0,432,96Zm0,96H368V128h64ZM632,352H576V160A160,160,0,0,0,416,0H96A96,96,0,0,0,0,96V288a96,96,0,0,0,96,96,96,96,0,0,0,192,0H632a8,8,0,0,0,8-8V360A8,8,0,0,0,632,352ZM192,448a64,64,0,1,1,64-64A64.07,64.07,0,0,1,192,448Zm352-96H282.12c-13.22-37.2-48.38-64-90.12-64s-76.9,26.8-90.12,64H96a64.07,64.07,0,0,1-64-64V96A64.07,64.07,0,0,1,96,32H416A128.14,128.14,0,0,1,544,160ZM240,96H112a32,32,0,0,0-32,32v64a32,32,0,0,0,32,32H240a32,32,0,0,0,32-32V128A32,32,0,0,0,240,96Zm0,96H112V128H240Z\"]\n};\nvar faCaretCircleDown = {\n prefix: 'fal',\n iconName: 'caret-circle-down',\n icon: [512, 512, [], \"f32d\", \"M256 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 216zm-120-32l-96 96-96-96h192m-192-32c-28.4 0-42.8 34.5-22.6 54.6l96 96c12.5 12.5 32.8 12.5 45.3 0l96-96c20.1-20.1 5.9-54.6-22.6-54.6H160z\"]\n};\nvar faCaretCircleLeft = {\n prefix: 'fal',\n iconName: 'caret-circle-left',\n icon: [512, 512, [], \"f32e\", \"M504 256C504 119 393 8 256 8S8 119 8 256s111 248 248 248 248-111 248-248zM256 472c-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216zm32-120l-96-96 96-96v192m32-192c0-28.4-34.5-42.8-54.6-22.6l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96c20.1 20.1 54.6 5.9 54.6-22.6V160z\"]\n};\nvar faCaretCircleRight = {\n prefix: 'fal',\n iconName: 'caret-circle-right',\n icon: [512, 512, [], \"f330\", \"M8 256c0 137 111 248 248 248s248-111 248-248S393 8 256 8 8 119 8 256zM256 40c118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216zm-32 120l96 96-96 96V160m-32 192c0 28.4 34.5 42.8 54.6 22.6l96-96c12.5-12.5 12.5-32.8 0-45.3l-96-96c-20.1-20.1-54.6-5.9-54.6 22.6V352z\"]\n};\nvar faCaretCircleUp = {\n prefix: 'fal',\n iconName: 'caret-circle-up',\n icon: [512, 512, [], \"f331\", \"M256 504c137 0 248-111 248-248S393 8 256 8 8 119 8 256s111 248 248 248zM40 256c0-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-216zm120 32l96-96 96 96H160m192 32c28.4 0 42.8-34.5 22.6-54.6l-96-96c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-20.1 20.1-5.9 54.6 22.6 54.6H352z\"]\n};\nvar faCaretDown = {\n prefix: 'fal',\n iconName: 'caret-down',\n icon: [320, 512, [], \"f0d7\", \"M287.968 160H32.038c-28.425 0-42.767 34.488-22.627 54.627l127.962 128c12.496 12.496 32.758 12.497 45.255 0l127.968-128C330.695 194.528 316.45 160 287.968 160zM160 320L32 192h256L160 320z\"]\n};\nvar faCaretLeft = {\n prefix: 'fal',\n iconName: 'caret-left',\n icon: [192, 512, [], \"f0d9\", \"M192 383.968v-255.93c0-28.425-34.488-42.767-54.627-22.627l-128 127.962c-12.496 12.496-12.497 32.758 0 45.255l128 127.968C157.472 426.695 192 412.45 192 383.968zM32 256l128-128v256L32 256z\"]\n};\nvar faCaretRight = {\n prefix: 'fal',\n iconName: 'caret-right',\n icon: [192, 512, [], \"f0da\", \"M0 128.032v255.93c0 28.425 34.488 42.767 54.627 22.627l128-127.962c12.496-12.496 12.497-32.758 0-45.255l-128-127.968C34.528 85.305 0 99.55 0 128.032zM160 256L32 384V128l128 128z\"]\n};\nvar faCaretSquareDown = {\n prefix: 'fal',\n iconName: 'caret-square-down',\n icon: [448, 512, [], \"f150\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352zm-96-208l-96 96-96-96h192m-192-32c-28.4 0-42.8 34.5-22.6 54.6l96 96c12.5 12.5 32.8 12.5 45.3 0l96-96c20.1-20.1 5.9-54.6-22.6-54.6H128z\"]\n};\nvar faCaretSquareLeft = {\n prefix: 'fal',\n iconName: 'caret-square-left',\n icon: [448, 512, [], \"f191\", \"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-48zM48 448c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48zm208-96l-96-96 96-96v192m32-192c0-28.4-34.5-42.8-54.6-22.6l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96c20.1 20.1 54.6 5.9 54.6-22.6V160z\"]\n};\nvar faCaretSquareRight = {\n prefix: 'fal',\n iconName: 'caret-square-right',\n icon: [448, 512, [], \"f152\", \"M0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H48C21.5 32 0 53.5 0 80zm400-16c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352zm-208 96l96 96-96 96V160m-32 192c0 28.4 34.5 42.8 54.6 22.6l96-96c12.5-12.5 12.5-32.8 0-45.3l-96-96c-20.1-20.1-54.6-5.9-54.6 22.6V352z\"]\n};\nvar faCaretSquareUp = {\n prefix: 'fal',\n iconName: 'caret-square-up',\n icon: [448, 512, [], \"f151\", \"M48 480h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48zM32 80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80zm96 208l96-96 96 96H128m192 32c28.4 0 42.8-34.5 22.6-54.6l-96-96c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-20 20.1-5.8 54.6 22.7 54.6h192z\"]\n};\nvar faCaretUp = {\n prefix: 'fal',\n iconName: 'caret-up',\n icon: [320, 512, [], \"f0d8\", \"M32.032 352h255.93c28.425 0 42.767-34.488 22.627-54.627l-127.962-128c-12.496-12.496-32.758-12.497-45.255 0l-127.968 128C-10.695 317.472 3.55 352 32.032 352zM160 192l128 128H32l128-128z\"]\n};\nvar faCarrot = {\n prefix: 'fal',\n iconName: 'carrot',\n icon: [512, 512, [], \"f787\", \"M504.6 138.5c-22.9-27.6-53.4-43.4-86.4-44.8-1.6-32.1-17.1-63.4-44.7-86.3-5.9-4.9-13.1-7.4-20.4-7.4-7.2 0-14.5 2.5-20.4 7.4-27.2 22.6-43.1 53-44.6 85.8-.7 14.5 1.8 28.7 6.6 42.2-13.3-4.4-26.8-7.3-40.3-7.3-48 0-94.1 26.8-116.6 72.8L2.4 478.3c-3 6.2-3.3 13.8 0 20.5 4.1 8.3 12.4 13.1 21 13.1 3.4 0 6.9-.8 10.2-2.4L311.2 374c25-12.2 46.4-32.6 59.6-59.6 15.4-31.5 16.7-66.2 6.5-97.1 11.8 4.1 23.9 6.6 36.4 6.6 34.7 0 67-15.9 90.9-44.7 9.9-11.7 9.9-28.9 0-40.7zm-162.5 162c-9.6 19.7-25.2 35.3-44.9 44.9l-124.8 60.9c-.4-.5-.6-1.1-1.1-1.6l-32-32c-6.2-6.2-16.4-6.2-22.6 0-6.2 6.2-6.2 16.4 0 22.6l25.6 25.6-100.2 49L154 240.6l26.7 26.7c3.1 3.1 7.2 4.7 11.3 4.7s8.2-1.6 11.3-4.7c6.2-6.2 6.2-16.4 0-22.6l-32-32c-.7-.7-1.7-1.1-2.5-1.7 17.1-31.5 49.4-51 85.6-51 14.9 0 29.2 3.3 42.7 9.9 23.4 11.4 41 31.3 49.5 56s6.9 51.1-4.5 74.6zM413.8 192c-21.5 0-43.1-8.9-60.6-26.5l-6.7-6.7c-37.2-37.1-35.4-92 6.6-126.8 33.2 27.5 41.5 67.6 25.3 101.6 11.2-5.3 23-8 34.9-8 24.1 0 48.3 11.1 66.7 33.3-18.3 22.1-42.3 33.1-66.2 33.1z\"]\n};\nvar faCars = {\n prefix: 'fal',\n iconName: 'cars',\n icon: [640, 512, [], \"f85b\", \"M241.85 256H46.22A14.24 14.24 0 0 1 32 241.78v-55.11A42.72 42.72 0 0 1 74.67 144h266.66c.29 0 .53.16.81.16.65 0 1.27-.16 1.93-.16h58.14a75.19 75.19 0 0 0-30.81-25.56l-15.88-68.83A63.71 63.71 0 0 0 293.16 0H120.07a63.7 63.7 0 0 0-62.36 49.61l-16.28 70.55C17 132.44 0 157.49 0 186.67v55.11a46.14 46.14 0 0 0 32 43.75V320a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-32h143.65c4.31-4.29 8.57-8.65 13.64-12.21zM88.89 56.81A32 32 0 0 1 120.07 32h173.09a32 32 0 0 1 31.18 24.81L337.07 112H76.15zM64 196a20 20 0 1 0 20-20 20 20 0 0 0-20 20zm244 156a20 20 0 1 0 20 20 20 20 0 0 0-20-20zm248 0a20 20 0 1 0 20 20 20 20 0 0 0-20-20zm39.4-57.56l-15.88-68.83A63.71 63.71 0 0 0 517.16 176H344.07a63.7 63.7 0 0 0-62.36 49.61l-16.28 70.55C241 308.44 224 333.49 224 362.67v55.11a46.14 46.14 0 0 0 32 43.75V496a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-32h256v32a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-34.47a46.14 46.14 0 0 0 32-43.75v-55.11a74.7 74.7 0 0 0-44.6-68.23zm-282.51-61.63A32 32 0 0 1 344.07 208h173.09a32 32 0 0 1 31.18 24.81L561.07 288H300.15zM608 417.78A14.24 14.24 0 0 1 593.78 432H270.22A14.24 14.24 0 0 1 256 417.78v-55.11A42.72 42.72 0 0 1 298.67 320h266.66A42.72 42.72 0 0 1 608 362.67z\"]\n};\nvar faCartArrowDown = {\n prefix: 'fal',\n iconName: 'cart-arrow-down',\n icon: [576, 512, [], \"f218\", \"M551.991 64H129.28l-8.329-44.423C118.822 8.226 108.911 0 97.362 0H12C5.373 0 0 5.373 0 12v8c0 6.627 5.373 12 12 12h78.72l69.927 372.946C150.305 416.314 144 431.42 144 448c0 35.346 28.654 64 64 64s64-28.654 64-64a63.681 63.681 0 0 0-8.583-32h145.167a63.681 63.681 0 0 0-8.583 32c0 35.346 28.654 64 64 64 35.346 0 64-28.654 64-64 0-17.993-7.435-34.24-19.388-45.868C506.022 391.891 496.76 384 485.328 384H189.28l-12-64h331.381c11.368 0 21.177-7.976 23.496-19.105l43.331-208C578.592 77.991 567.215 64 551.991 64zM240 448c0 17.645-14.355 32-32 32s-32-14.355-32-32 14.355-32 32-32 32 14.355 32 32zm224 32c-17.645 0-32-14.355-32-32s14.355-32 32-32 32 14.355 32 32-14.355 32-32 32zm38.156-192H171.28l-36-192h406.876l-40 192zm-106.641-75.515l-51.029 51.029c-4.686 4.686-12.284 4.686-16.971 0l-51.029-51.029c-7.56-7.56-2.206-20.485 8.485-20.485H320v-52c0-6.627 5.373-12 12-12h8c6.627 0 12 5.373 12 12v52h35.029c10.691 0 16.045 12.926 8.486 20.485z\"]\n};\nvar faCartPlus = {\n prefix: 'fal',\n iconName: 'cart-plus',\n icon: [576, 512, [], \"f217\", \"M551.991 64H129.28l-8.329-44.423C118.822 8.226 108.911 0 97.362 0H12C5.373 0 0 5.373 0 12v8c0 6.627 5.373 12 12 12h78.72l69.927 372.946C150.305 416.314 144 431.42 144 448c0 35.346 28.654 64 64 64s64-28.654 64-64a63.681 63.681 0 0 0-8.583-32h145.167a63.681 63.681 0 0 0-8.583 32c0 35.346 28.654 64 64 64 35.346 0 64-28.654 64-64 0-17.993-7.435-34.24-19.388-45.868C506.022 391.891 496.76 384 485.328 384H189.28l-12-64h331.381c11.368 0 21.177-7.976 23.496-19.105l43.331-208C578.592 77.991 567.215 64 551.991 64zM464 416c17.645 0 32 14.355 32 32s-14.355 32-32 32-32-14.355-32-32 14.355-32 32-32zm-256 0c17.645 0 32 14.355 32 32s-14.355 32-32 32-32-14.355-32-32 14.355-32 32-32zm294.156-128H171.28l-36-192h406.876l-40 192zM272 196v-8c0-6.627 5.373-12 12-12h36v-36c0-6.627 5.373-12 12-12h8c6.627 0 12 5.373 12 12v36h36c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12h-36v36c0 6.627-5.373 12-12 12h-8c-6.627 0-12-5.373-12-12v-36h-36c-6.627 0-12-5.373-12-12z\"]\n};\nvar faCashRegister = {\n prefix: 'fal',\n iconName: 'cash-register',\n icon: [512, 512, [], \"f788\", \"M232 248c0-8.8-7.2-16-16-16h-16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-16zm-96 0c0-8.8-7.2-16-16-16h-16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-16zm32 48h-16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm96 0h-16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm64-48c0-8.8-7.2-16-16-16h-16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-16zm183.4 131.5l-25.5-178.3c-3.4-23.6-23.6-41.2-47.5-41.2H192V96h80c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h80v64H73.6c-23.9 0-44.1 17.6-47.5 41.2L.6 379.5c-.4 3-.6 6-.6 9.1V464c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48v-75.5c0-3-.2-6-.6-9zM96 64V32h160v32H96zM57.8 205.7c1.1-7.8 7.9-13.7 15.8-13.7h364.7c7.9 0 14.7 5.9 15.8 13.7L479.7 384H32.3l25.5-178.3zM480 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16v-48h448v48zm-72-232h-16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm-48 64h-16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16z\"]\n};\nvar faCassetteTape = {\n prefix: 'fal',\n iconName: 'cassette-tape',\n icon: [512, 512, [], \"f8ab\", \"M464 64H48a48 48 0 0 0-48 48v288a48 48 0 0 0 48 48h416a48 48 0 0 0 48-48V112a48 48 0 0 0-48-48zM123.78 416l24-48h216.44l24 48zM480 400a16 16 0 0 1-16 16h-40l-40-80H128l-40 80H48a16 16 0 0 1-16-16V112a16 16 0 0 1 16-16h416a16 16 0 0 1 16 16zM368 160H144a64 64 0 0 0 0 128h224a64 64 0 0 0 0-128zm-224 96a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm168.88 0H199.12a62.1 62.1 0 0 0 0-64h113.76a62.1 62.1 0 0 0 0 64zm55.12 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"]\n};\nvar faCat = {\n prefix: 'fal',\n iconName: 'cat',\n icon: [576, 512, [], \"f6be\", \"M432 128c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm48 16c0 8.84 7.16 16 16 16s16-7.16 16-16-7.16-16-16-16-16 7.16-16 16zM544.01 0c-9.32 0-18.39 4.08-24.59 11.52L475.68 64h-23.36l-43.74-52.49A32.024 32.024 0 0 0 383.99 0C366.37 0 352 14.3 352 32v128h-16c-103.82 0-194.18 58.53-240 144.27V176c0-44.11-35.88-80-80-80-8.84 0-16 7.16-16 16s7.16 16 16 16c26.47 0 48 21.53 48 48v256c0 44.11 35.88 80 80 80h208c17.66 0 32-14.36 32-32 0-33.05-25.19-60.33-57.38-63.66L416 376.63V480c0 17.64 14.34 32 32 32h32c17.66 0 32-14.36 32-32V260.77c37.7-18.05 64-56.25 64-100.77V32c0-17.7-14.37-32-31.99-32zM480 480h-32V327.38l-144.81 64.37c-3.98-39-30.03-72.23-67.25-84.89-4.33-1.47-8.99 1.34-10.1 5.77l-3.88 15.55c-1.03 4.12 1.41 8.09 5.39 9.57A68.41 68.41 0 0 1 272 401.97V448h48c17.66 0 32 14.36 32 32H144c-26.47 0-48-21.53-48-48 0-132.34 107.66-240 240-240h21.22c13.87 46.1 56.22 80 106.78 80 5.48 0 10.73-.85 16-1.62V480zm64-320c0 44.18-35.82 80-80 80s-80-35.82-80-80V32l53.33 64h53.33L544 32v128z\"]\n};\nvar faCatSpace = {\n prefix: 'fal',\n iconName: 'cat-space',\n icon: [640, 512, [], \"e001\", \"M512,176a16,16,0,1,0-16-16A15.9908,15.9908,0,0,0,512,176ZM576,32.72461V32l-.46094.3457C548.81445,12.30469,515.97461,0,480,0s-68.81445,12.30469-95.53906,32.3457L384,32v.72461C345.35156,61.93164,320,107.82422,320,160c0,.38086.10938.73242.11133,1.11328A272.01015,272.01015,0,0,0,96,304.26562V176A80.08413,80.08413,0,0,0,16,96a16,16,0,0,0,0,32,48.05249,48.05249,0,0,1,48,48V432a80.08413,80.08413,0,0,0,80,80H352a32.03165,32.03165,0,0,0,32-32,64.0956,64.0956,0,0,0-57.375-63.65625L416,376.625V480a32.03165,32.03165,0,0,0,32,32h32a32.03165,32.03165,0,0,0,32-32V316.77539A160.036,160.036,0,0,0,640,160C640,107.82422,614.64844,61.93164,576,32.72461ZM480,32a126.94015,126.94015,0,0,1,68.78906,20.4082L512,80H448L411.21094,52.4082A126.94015,126.94015,0,0,1,480,32Zm64,64v64a64,64,0,0,1-128,0V96l21.334,16h85.332ZM480,480H448V351.99609A15.99929,15.99929,0,0,0,425.5,337.377L303.1875,391.75a100.1169,100.1169,0,0,0-67.25-84.89062,7.96929,7.96929,0,0,0-10.09375,5.76562l-3.875,15.5625a8.16346,8.16346,0,0,0,5.375,9.5625C252,346.875,272,375.625,272,401.90625V448h48a32.03165,32.03165,0,0,1,32,32H144c-26.94531,0-48.13086-22.27344-47.99609-49.21875.63671-127.52734,101.31054-231.53516,227.36914-238.14063A160.02931,160.02931,0,0,0,480,320Zm0-192A128.14414,128.14414,0,0,1,352,160c0-32.16992,12.334-61.25391,32-83.76367V160a96,96,0,0,0,192,0V76.23633C595.666,98.74609,608,127.83008,608,160A128.14414,128.14414,0,0,1,480,288ZM432,160a16,16,0,1,0,16-16A15.9908,15.9908,0,0,0,432,160ZM162.94531,68.76953l39.71094,16.56055,16.5625,39.71094a5.32345,5.32345,0,0,0,9.53906,0l16.5586-39.71094,39.71484-16.56055a5.336,5.336,0,0,0,0-9.541l-39.71484-16.5586L228.75781,2.957a5.325,5.325,0,0,0-9.53906,0l-16.5625,39.71289-39.71094,16.5586a5.336,5.336,0,0,0,0,9.541Z\"]\n};\nvar faCauldron = {\n prefix: 'fal',\n iconName: 'cauldron',\n icon: [448, 512, [], \"f6bf\", \"M272 128c26.51 0 48-21.49 48-48s-21.49-48-48-48-48 21.49-48 48 21.49 48 48 48zm0-64c8.82 0 16 7.18 16 16s-7.18 16-16 16-16-7.18-16-16 7.18-16 16-16zm176 120v-16c0-4.42-3.58-8-8-8H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h46.73C20.78 237.78 0 293.62 0 345.6c0 39.08 11.82 70.65 32 95.53V496c0 8.84 7.16 16 16 16s16-7.16 16-16v-25.34C104.66 498.69 161.28 512 224 512c62.71 0 119.34-13.31 160-41.33V496c0 8.84 7.16 16 16 16s16-7.16 16-16v-54.87c20.18-24.88 32-56.45 32-95.53 0-51.98-20.78-107.82-54.73-153.6H440c4.42 0 8-3.58 8-8zm-32 161.6C416 466.9 281.73 480 224 480S32 466.9 32 345.6c0-52.25 24.14-110.02 63.64-153.6h256.71C391.86 235.58 416 293.35 416 345.6zM160 64c17.67 0 32-14.33 32-32S177.67 0 160 0s-32 14.33-32 32 14.33 32 32 32z\"]\n};\nvar faCctv = {\n prefix: 'fal',\n iconName: 'cctv',\n icon: [576, 512, [], \"f8ac\", \"M556.34 243.12l-40.43-17.79a44.91 44.91 0 0 0-18.47-69.25L149.8 3.22a45.59 45.59 0 0 0-56.28 19.61L6 176a45.43 45.43 0 0 0 23.53 65l160.15 66.31L148.93 416H32v-56a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v144a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-56h128a16 16 0 0 0 15-10.37l44.25-118 71.59 29.64a45.33 45.33 0 0 0 39.55-4.16l17.84-11.15 141 62c18.6 8.2 37-2.33 43.34-16.85l40.68-92.63a32.83 32.83 0 0 0-16.91-43.36zm-242.86 74.8a13 13 0 0 1-11.06 1.5L41.5 211.35l-.66-.25c-10-3.65-9.9-14.21-7-19.22L121.3 38.71c1.74-3 8-9.16 16.1-6l347.66 152.87a13.39 13.39 0 0 1 2.13 23.77zm188.61 48.69l-121-53.21 105.41-65.89 57.43 26z\"]\n};\nvar faCertificate = {\n prefix: 'fal',\n iconName: 'certificate',\n icon: [512, 512, [], \"f0a3\", \"M495.768 272.292l-16.72-16.363 16.719-16.362c30.04-28.786 16.251-79.537-23.83-89.365l-22.768-5.811 6.464-22.698c11.232-39.997-26.115-76.468-65.449-65.451l-22.672 6.461-5.809-22.778C351.926.052 300.89-13.786 272.299 16.142L256 32.934l-16.301-16.791c-28.323-29.647-79.535-16.514-89.405 23.793l-5.807 22.768-22.672-6.461c-39.14-10.992-76.677 25.224-65.449 65.45l6.464 22.698-22.767 5.811c-40.081 9.827-53.87 60.579-23.831 89.365l16.72 16.363-16.719 16.362c-30.04 28.786-16.251 79.537 23.83 89.365l22.768 5.811-6.464 22.698c-11.221 40.203 26.255 76.429 65.449 65.45l22.672-6.461 5.807 22.767c9.93 40.578 60.865 53.609 89.366 23.836L256 479.05l16.254 16.62c28.257 29.9 79.554 16.68 89.452-23.746l5.807-22.767 22.672 6.461c39.472 11.086 76.598-25.509 65.449-65.45l-6.464-22.698 22.767-5.811c40.082-9.829 53.87-60.581 23.831-89.367zm-31.567 58.313l-54.819 13.991 15.453 54.263c4.366 15.605-10.346 30.332-25.953 25.962l-54.245-15.458L330.65 464.2c-3.796 15.884-24.347 21.136-35.285 9.334L256 433.284l-39.366 40.251c-11.051 11.681-31.4 6.919-35.285-9.334l-13.986-54.837-54.245 15.458c-15.603 4.368-30.32-10.354-25.953-25.962l15.453-54.263-54.819-13.991c-15.733-3.762-21.326-23.942-9.331-35.297l40.237-39.379-40.237-39.379c-11.989-11.35-6.407-31.532 9.331-35.296l54.819-13.991L87.165 113c-4.366-15.605 10.346-30.332 25.953-25.962l54.245 15.458 13.986-54.837c3.743-15.664 24.233-21.016 35.285-9.334L256 78.873l39.366-40.548c11.179-11.816 31.583-6.152 35.285 9.334l13.986 54.837 54.245-15.458c15.603-4.368 30.32 10.354 25.953 25.962l-15.453 54.263 54.819 13.991c15.733 3.762 21.326 23.942 9.331 35.296l-40.237 39.379 40.237 39.379c11.989 11.351 6.407 31.533-9.331 35.297z\"]\n};\nvar faChair = {\n prefix: 'fal',\n iconName: 'chair',\n icon: [448, 512, [], \"f6c0\", \"M446.2 341.5l-22.2-64c-4.5-12.9-16.6-21.5-30.2-21.5H384V128C384 57.3 326.7 0 256 0h-64C121.3 0 64 57.3 64 128v128h-9.8c-13.6 0-25.8 8.6-30.2 21.5l-22.2 64C-5.4 362.3 10 384 32 384v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V384h320v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V384c22 0 37.4-21.7 30.2-42.5zM288 37.9c37.2 13.2 64 48.4 64 90.1v128h-64zM192 32h64v224h-64zm-96 96c0-41.7 26.8-76.8 64-90.1V256H96zM32 352l22.2-64h339.6l22.2 64z\"]\n};\nvar faChairOffice = {\n prefix: 'fal',\n iconName: 'chair-office',\n icon: [384, 512, [], \"f6c1\", \"M32 240v-96c0-8.84-7.16-16-16-16s-16 7.16-16 16v96c0 8.84 7.16 16 16 16s16-7.16 16-16zm314.49 47.03c-6.39-10.63-15.74-18.67-26.49-24.02V64c0-35.35-28.65-64-64-64H128C92.65 0 64 28.65 64 64v199.01c-10.75 5.35-20.1 13.39-26.49 24.02l-14.57 24.24C3.71 343.26 26.75 384 64.07 384H176v33.22c-35.61 5.41-65 28.54-77.85 59.63-6.41 15.51 2.41 35.14 15.02 35.14h157.66c12.61 0 21.44-19.63 15.02-35.14-12.85-31.08-42.24-54.22-77.85-59.63V384h111.93c37.33 0 60.37-40.74 41.14-72.73l-14.58-24.24zM96 64c0-17.64 14.36-32 32-32h128c17.64 0 32 14.36 32 32v192H96V64zm155.6 416H132.4c12.18-19.47 34.96-32 59.6-32s47.42 12.53 59.6 32zm82.25-136.12c-1.38 2.44-5.5 8.12-13.93 8.12H64.07c-8.42 0-12.54-5.68-13.93-8.12-1.38-2.44-4.13-8.9.21-16.12l14.57-24.24C70.69 293.95 81.19 288 92.36 288h199.28c11.17 0 21.67 5.95 27.43 15.52l14.57 24.24c4.34 7.21 1.59 13.68.21 16.12zM368 128c-8.84 0-16 7.16-16 16v96c0 8.84 7.16 16 16 16s16-7.16 16-16v-96c0-8.84-7.16-16-16-16z\"]\n};\nvar faChalkboard = {\n prefix: 'fal',\n iconName: 'chalkboard',\n icon: [640, 512, [], \"f51b\", \"M632 448h-24V64c0-17.67-14.33-32-32-32H64c-17.67 0-32 14.33-32 32v384H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h624c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-344 0v-64h192v64H288zm224 0v-64c0-17.67-14.33-32-32-32H288c-17.67 0-32 14.33-32 32v64H64V64h512v384h-64z\"]\n};\nvar faChalkboardTeacher = {\n prefix: 'fal',\n iconName: 'chalkboard-teacher',\n icon: [640, 512, [], \"f51c\", \"M608 0H192c-17.67 0-32 14.33-32 32v96c-53.02 0-96 42.98-96 96s42.98 96 96 96 96-42.98 96-96c0-41.74-26.8-76.9-64-90.12V32h416v352h-64v-64c0-17.67-14.33-32-32-32H384c-17.67 0-32 14.33-32 32v64h-46.66c-.59-.94-1.03-1.96-1.65-2.88-17.25-25.62-46.67-39.11-76.9-39.11C199 342.02 192.02 352 160 352c-31.97 0-38.95-9.98-66.79-9.98-30.23 0-59.65 13.48-76.9 39.11C6.01 396.42 0 414.84 0 434.67V472c0 22.09 17.91 40 40 40h240c22.09 0 40-17.91 40-40v-37.33c0-6.41-.84-12.6-2.04-18.67H608c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32zM224 224c0 35.29-28.71 64-64 64s-64-28.71-64-64 28.71-64 64-64 64 28.71 64 64zm64 248c0 4.41-3.59 8-8 8H40c-4.41 0-8-3.59-8-8v-37.33c0-12.79 3.75-25.13 10.85-35.67 10.53-15.64 29.35-24.98 50.36-24.98 21.8 0 29.99 9.98 66.79 9.98 36.79 0 45.01-9.98 66.79-9.98 21 0 39.83 9.34 50.36 24.98 7.1 10.54 10.85 22.88 10.85 35.67V472zm224-88H384v-64h128v64z\"]\n};\nvar faChargingStation = {\n prefix: 'fal',\n iconName: 'charging-station',\n icon: [576, 512, [], \"f5e7\", \"M560 128h-16V80c0-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 16v48c0 38.7 27.48 70.97 64 78.39V384c0 17.64-14.34 32-32 32s-32-14.36-32-32v-48c0-44.11-35.88-80-80-80h-16V64c0-35.35-28.65-64-64-64H96C60.65 0 32 28.65 32 64v416H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h336c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-24V288h16c26.47 0 48 21.53 48 48v48c0 35.3 28.72 64 64 64s64-28.7 64-64V270.39c36.52-7.41 64-39.69 64-78.39v-48c0-8.84-7.16-16-16-16zM288 480H64V64c0-17.64 14.36-32 32-32h160c17.64 0 32 14.36 32 32v416zm256-288c0 26.47-21.53 48-48 48s-48-21.53-48-48v-32h96v32zm-304-16h-16.91l15.88-42.38C242.9 123.13 235.13 112 224 112h-80c-6.53 0-12.44 3.98-14.84 10.06l-32 80C92.94 212.59 100.72 224 112 224h19.5l-19.03 76.12c-3.89 15.5 15.22 26.76 26.84 15.19l112-112C261.35 193.24 254.24 176 240 176zm-82.47 75.84l10-39.97C170.06 201.7 162.35 192 152 192h-16.38l19.22-48h46.06l-15.88 42.38c-3.28 8.75 1.46 21.62 16.34 21.62l-43.83 43.84z\"]\n};\nvar faChartArea = {\n prefix: 'fal',\n iconName: 'chart-area',\n icon: [512, 512, [], \"f1fe\", \"M500 416c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12V76c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v340h468zM372 162l-84 54-86.5-84.5c-5.1-5.1-13.4-4.6-17.9 1L64 288v96h416l-90.3-216.7c-3-6.9-11.5-9.4-17.7-5.3zM96 299.2l98.7-131.3 89.3 89.3 85.8-57.2 61.7 152H96v-52.8z\"]\n};\nvar faChartBar = {\n prefix: 'fal',\n iconName: 'chart-bar',\n icon: [512, 512, [], \"f080\", \"M424 352h16c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8zm-96 0h16c4.4 0 8-3.6 8-8V200c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8zm-192 0h16c4.4 0 8-3.6 8-8v-80c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v80c0 4.4 3.6 8 8 8zm96 0h16c4.4 0 8-3.6 8-8V136c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v208c0 4.4 3.6 8 8 8zm272 64H32V72c0-4.42-3.58-8-8-8H8c-4.42 0-8 3.58-8 8v360c0 8.84 7.16 16 16 16h488c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8z\"]\n};\nvar faChartLine = {\n prefix: 'fal',\n iconName: 'chart-line',\n icon: [512, 512, [], \"f201\", \"M504 416H32V72c0-4.42-3.58-8-8-8H8c-4.42 0-8 3.58-8 8v360c0 8.84 7.16 16 16 16h488c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM98.34 263.03c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0l72.69-72.01 84.69 84.69c6.25 6.25 16.38 6.25 22.63 0l93.53-93.53 44.04 44.04c4.95 4.95 11.03 7.16 17 7.16 12.48 0 24.46-9.7 24.46-24.34V112.19c0-8.94-7.25-16.19-16.19-16.19H344.34c-21.64 0-32.47 26.16-17.17 41.46l44.71 44.71-82.22 82.22-84.63-84.63c-6.23-6.23-16.32-6.25-22.57-.05l-84.12 83.32zM362.96 128H448v85.04L362.96 128z\"]\n};\nvar faChartLineDown = {\n prefix: 'fal',\n iconName: 'chart-line-down',\n icon: [512, 512, [], \"f64d\", \"M504 416H32V72c0-4.42-3.58-8-8-8H8c-4.42 0-8 3.58-8 8v360c0 8.84 7.16 16 16 16h488c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM182.45 236.29c6.26 6.2 16.35 6.18 22.57-.05l84.63-84.63 82.22 82.22-44.71 44.71c-15.3 15.3-4.46 41.46 17.17 41.46H463.8c8.94 0 16.19-7.25 16.19-16.19V184.34c0-14.64-11.98-24.34-24.46-24.34-5.97 0-12.05 2.21-17 7.16L394.5 211.2l-93.53-93.53c-6.25-6.25-16.38-6.25-22.63 0l-84.69 84.69-72.69-72.01c-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.31l84.11 83.32zM448 202.96V288h-85.04L448 202.96z\"]\n};\nvar faChartNetwork = {\n prefix: 'fal',\n iconName: 'chart-network',\n icon: [640, 512, [], \"f78a\", \"M513.6 202.8l-19.2-25.6-48 36 19.2 25.6 48-36zM576 192c13.3 0 25.6-4 35.8-10.9 6.8-4.6 12.7-10.5 17.3-17.3C636 153.6 640 141.3 640 128c0-13.3-4-25.6-10.9-35.8-2.3-3.4-4.9-6.6-7.8-9.5-2.9-2.9-6.1-5.5-9.5-7.8C601.6 68 589.3 64 576 64s-25.6 4-35.8 10.9c-6.8 4.6-12.7 10.5-17.3 17.3C516 102.4 512 114.7 512 128c0 35.3 28.7 64 64 64zm0-96c17.6 0 32 14.4 32 32s-14.4 32-32 32-32-14.4-32-32 14.4-32 32-32zM99.8 250.9C89.6 244 77.3 240 64 240s-25.6 4-35.8 10.9c-6.8 4.6-12.7 10.5-17.3 17.3C4 278.4 0 290.7 0 304c0 35.3 28.7 64 64 64s64-28.7 64-64c0-13.3-4-25.6-10.9-35.8-4.6-6.8-10.5-12.7-17.3-17.3zM64 336c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm88-16h48v-32h-48v32zm469.3 82.7c-2.9-2.9-6.1-5.5-9.5-7.8C601.6 388 589.3 384 576 384s-25.6 4-35.8 10.9c-3.3 2.2-6.3 4.7-9.1 7.5l-91.8-55.1c5.6-13.3 8.7-28 8.7-43.3 0-61.9-50.1-112-112-112-11.3 0-21.9 2.2-32.2 5.2l-39.3-84.1C278.8 101.4 288 83.9 288 64c0-13.3-4-25.6-10.9-35.8-4.6-6.8-10.5-12.7-17.3-17.3C249.6 4 237.3 0 224 0s-25.6 4-35.8 10.9c-6.8 4.6-12.7 10.5-17.3 17.3C164 38.4 160 50.7 160 64c0 35.3 28.7 64 64 64 4 0 7.9-.5 11.7-1.2l39 83.6c-30.5 20-50.7 54.4-50.7 93.6 0 61.9 50.1 112 112 112 35 0 65.8-16.4 86.4-41.5l92.4 55.4c-1.7 5.8-2.7 11.8-2.7 18.1 0 35.3 28.7 64 64 64 13.3 0 25.6-4 35.8-10.9 6.8-4.6 12.7-10.5 17.3-17.3C636 473.6 640 461.3 640 448c0-13.3-4-25.6-10.9-35.8-2.3-3.4-5-6.6-7.8-9.5zM224 96c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm112 288c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80zm240 96c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32z\"]\n};\nvar faChartPie = {\n prefix: 'fal',\n iconName: 'chart-pie',\n icon: [544, 512, [], \"f200\", \"M527.79 288H290.5l158.03 158.03a16.51 16.51 0 0 0 11.62 4.81c3.82 0 7.62-1.35 10.57-4.13 38.7-36.46 65.32-85.61 73.13-140.86 1.34-9.46-6.51-17.85-16.06-17.85zm-67.91 124.12L367.76 320h140.88c-8.12 34.16-24.96 66-48.76 92.12zM224 288V50.71c0-8.83-7.18-16.21-15.74-16.21-.69 0-1.4.05-2.11.15C86.99 51.49-4.1 155.6.14 280.37 4.47 407.53 113.18 512 240.13 512c.98 0 1.93-.01 2.91-.02 50.4-.63 96.97-16.87 135.26-44.03 7.9-5.6 8.42-17.23 1.57-24.08L224 288zm18.63 191.98l-2.51.02c-109.04 0-204.3-91.92-208-200.72C28.72 179.15 96.33 92.25 192 69.83v231.42l9.37 9.37 141.84 141.84c-30.56 17.62-64.96 27.08-100.58 27.52zM511.96 223.2C503.72 103.74 408.26 8.28 288.8.04c-.35-.03-.7-.04-1.04-.04C279.1 0 272 7.45 272 16.23V240h223.77c9.14 0 16.82-7.68 16.19-16.8zM304 208V33.9c89.25 13.81 160.28 84.85 174.1 174.1H304z\"]\n};\nvar faChartPieAlt = {\n prefix: 'fal',\n iconName: 'chart-pie-alt',\n icon: [512, 512, [], \"f64e\", \"M461.29 288H224V50.71c0-8.83-7.18-16.21-15.74-16.21-.69 0-1.4.05-2.11.15C87.08 51.47-3.96 155.43.13 280.07 4.2 404.1 107.91 507.8 231.93 511.87c2.69.09 5.39.13 8.07.13 121.04 0 220.89-89.66 237.35-206.16 1.33-9.45-6.52-17.84-16.06-17.84zM240 480c-2.33 0-4.68-.04-7.02-.12-107.24-3.52-197.35-93.63-200.87-200.87C28.84 179.02 96.45 92.23 192 69.83V320h250.15C420.27 412.43 336.49 480 240 480zM288.8.04c-.35-.03-.7-.04-1.04-.04C279.1 0 272 7.44 272 16.23V240h223.77c9.14 0 16.82-7.69 16.2-16.8C503.72 103.74 408.26 8.28 288.8.04zM304 208V33.9c89.25 13.81 160.28 84.85 174.1 174.1H304z\"]\n};\nvar faChartScatter = {\n prefix: 'fal',\n iconName: 'chart-scatter',\n icon: [512, 512, [], \"f7ee\", \"M504 416H32V72a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v360a16 16 0 0 0 16 16h488a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM160 312a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm256-160a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm-224 0a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm192 160a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm-96-64a24 24 0 1 0-24-24 24 24 0 0 0 24 24z\"]\n};\nvar faCheck = {\n prefix: 'fal',\n iconName: 'check',\n icon: [448, 512, [], \"f00c\", \"M413.505 91.951L133.49 371.966l-98.995-98.995c-4.686-4.686-12.284-4.686-16.971 0L6.211 284.284c-4.686 4.686-4.686 12.284 0 16.971l118.794 118.794c4.686 4.686 12.284 4.686 16.971 0l299.813-299.813c4.686-4.686 4.686-12.284 0-16.971l-11.314-11.314c-4.686-4.686-12.284-4.686-16.97 0z\"]\n};\nvar faCheckCircle = {\n prefix: 'fal',\n iconName: 'check-circle',\n icon: [512, 512, [], \"f058\", \"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 464c-118.664 0-216-96.055-216-216 0-118.663 96.055-216 216-216 118.664 0 216 96.055 216 216 0 118.663-96.055 216-216 216zm141.63-274.961L217.15 376.071c-4.705 4.667-12.303 4.637-16.97-.068l-85.878-86.572c-4.667-4.705-4.637-12.303.068-16.97l8.52-8.451c4.705-4.667 12.303-4.637 16.97.068l68.976 69.533 163.441-162.13c4.705-4.667 12.303-4.637 16.97.068l8.451 8.52c4.668 4.705 4.637 12.303-.068 16.97z\"]\n};\nvar faCheckDouble = {\n prefix: 'fal',\n iconName: 'check-double',\n icon: [448, 512, [], \"f560\", \"M444.96 159l-12.16-11c-2.03-2.67-4.72-4-8.11-4s-6.08 1.33-8.11 4L131.77 428 31.42 329c-2.03-2.67-4.72-4-8.11-4s-6.08 1.33-8.11 4L3.04 340C1.01 342.67 0 345.67 0 349s1.01 6 3.04 8l120.62 119c2.69 2.67 5.57 4 8.62 4s5.92-1.33 8.62-4l304.07-300c2.03-2 3.04-4.67 3.04-8s-1.02-6.33-3.05-9zM127.17 284.03c2.65 2.65 5.48 3.97 8.47 3.97s5.82-1.32 8.47-3.97L365.01 63.8c1.99-2 2.99-4.65 2.99-7.96s-1-6.29-2.99-8.94l-11.96-10.93c-1.99-2.65-4.64-3.97-7.97-3.97s-5.98 1.32-7.97 3.97L135.14 236.34l-72.25-72.03c-1.99-2.65-4.64-3.97-7.97-3.97s-5.98 1.32-7.97 3.97l-11.96 10.93C33 177.89 32 180.87 32 184.18s1 5.96 2.99 7.95l92.18 91.9z\"]\n};\nvar faCheckSquare = {\n prefix: 'fal',\n iconName: 'check-square',\n icon: [448, 512, [], \"f14a\", \"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 32c8.823 0 16 7.178 16 16v352c0 8.822-7.177 16-16 16H48c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h352m-34.301 98.293l-8.451-8.52c-4.667-4.705-12.265-4.736-16.97-.068l-163.441 162.13-68.976-69.533c-4.667-4.705-12.265-4.736-16.97-.068l-8.52 8.451c-4.705 4.667-4.736 12.265-.068 16.97l85.878 86.572c4.667 4.705 12.265 4.736 16.97.068l180.48-179.032c4.704-4.667 4.735-12.265.068-16.97z\"]\n};\nvar faCheese = {\n prefix: 'fal',\n iconName: 'cheese',\n icon: [512, 512, [], \"f7ef\", \"M299.83 32h-1.49a32.27 32.27 0 0 0-19.64 7L0 255.87V448a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V255.87C512 136.05 418 38.2 299.83 32zM480 448H32V287.89h448zM52.13 255.87L298.72 64C400.42 69.62 480 153.78 480 255.87z\"]\n};\nvar faCheeseSwiss = {\n prefix: 'fal',\n iconName: 'cheese-swiss',\n icon: [512, 512, [], \"f7f0\", \"M176 319.9a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16.04zM299.83 32h-1.49a32.27 32.27 0 0 0-19.64 7L0 255.87V448a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V255.87C512 136.05 418 38.2 299.83 32zM240 127.79a16 16 0 1 1-16 16 16 16 0 0 1 16-16zM480 448H32V287.89h290.94a47.72 47.72 0 0 0 90.12 0H480zM352 271.88a16 16 0 1 1 16 16 16 16 0 0 1-16-16zm61.06-16a47.72 47.72 0 0 0-90.12 0H52.13l140.17-109a47.89 47.89 0 1 0 62.38-48.58l44-34.26C400.42 69.62 480 153.78 480 255.87z\"]\n};\nvar faCheeseburger = {\n prefix: 'fal',\n iconName: 'cheeseburger',\n icon: [512, 512, [], \"f7f1\", \"M304 144a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm208 176a63.81 63.81 0 0 0-30.2-54.1c13.5-20.9 18.5-52.9 6.3-79.1C448 100.3 359.5 32.1 256 32c-103.5.1-192 68.3-232.2 154.8-12.5 26.8-9.1 59.9 3.7 80.8a63.46 63.46 0 0 0-16.3 88.3 65.07 65.07 0 0 0 10.1 11.5c-3.1 4.9-5.3 10.4-5.3 16.6v32a64.06 64.06 0 0 0 64 64h352a64.06 64.06 0 0 0 64-64v-32c0-6.2-2.2-11.7-5.3-16.6A64.06 64.06 0 0 0 512 320zM52.81 200.3C90.71 118.9 172.31 64.1 256 64c83.69.1 165.39 54.9 203.19 136.3 5.8 12.5 5.2 29.5-1.4 43.5a5.94 5.94 0 0 1-.4.8A21 21 0 0 1 438.5 256H70.11c-6.1 0-12.2-2.4-16-7.2a14.75 14.75 0 0 1-2.5-4.4c-5.2-13.9-4.8-31.2 1.2-44.1zM464 416a32 32 0 0 1-32 32H80a32 32 0 0 1-32-32v-32h416zm-16-64H64a32 32 0 1 1 0-64h160l96 48 96-48h32a32 32 0 0 1 0 64zm-64-144a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm-256 0a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm80-64a16 16 0 1 0-16-16 16 16 0 0 0 16 16z\"]\n};\nvar faChess = {\n prefix: 'fal',\n iconName: 'chess',\n icon: [512, 512, [], \"f439\", \"M400 320a16 16 0 0 0-32 0v32h32zm103.16 115.57L480 424v-24a16 16 0 0 0-16-16h-1.1l-2.83-82.21 24.6-20.79A32 32 0 0 0 496 256.54V176a16 16 0 0 0-16-16H288a16 16 0 0 0-16 16v80.6a32 32 0 0 0 11.35 24.4l24.57 20.76L305.1 384H304a16 16 0 0 0-16 16v24l-23.15 11.57a16 16 0 0 0-8.85 14.31 16 16 0 0 0-8.84-14.31L224 424v-24a16 16 0 0 0-16-16h-6.4c-6-30.16-9.6-60.75-9.6-91.47V256h24a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16.9l31.81-84.78a32 32 0 0 0-30-43.22H144V64h24a8 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.09a32 32 0 0 0-30 43.25L56.91 224H40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v36.53c0 30.71-3.56 61.31-9.6 91.47H48a16 16 0 0 0-16 16v24L8.84 435.57c-4.25 2.13-6.7 6.19-7.81 10.68-.3 1.24-1 2.33-1 3.64V496a16 16 0 0 0 16 16H240a16 16 0 0 0 16-16 16 16 0 0 0 16 16h224a16 16 0 0 0 16-16v-46.12a16 16 0 0 0-8.84-14.31zM55.09 128h145.85l-36 96H91.09zm113.79 256H87.12A499.15 499.15 0 0 0 96 292.53V256h64v36.53a499.15 499.15 0 0 0 8.88 91.47zM224 480H32v-20.22l32-16V416h128v27.78l32 16zm80-223.4V192h32v32h32v-32h32v32h32v-32h32v64.54l-24.6 20.82-11.84 10 .53 15.5 2.79 81.14h-93.76l2.79-81.1.53-15.52-11.86-10zM480 480H288v-20.22l32-16V416h128v27.78l32 16z\"]\n};\nvar faChessBishop = {\n prefix: 'fal',\n iconName: 'chess-bishop',\n icon: [320, 512, [], \"f43a\", \"M64 400v48h32v-71.41l-22.31-7.09C53.54 363.1 32 342.52 32 304c0-58.29 54.72-162.67 99.6-208h56.8c19.29 19.48 40.19 50 58 83l-84 84a8 8 0 0 0 0 11.32l11.31 11.31a8 8 0 0 0 11.32 0l76.43-76.44C277.09 243.77 288 278.35 288 304c0 38.52-21.54 59.1-41.69 65.5L224 376.59V448h32v-48c33.86-10.76 64-44.36 64-96 0-72.64-66.43-194.57-119-240h-82C66.43 109.43 0 231.36 0 304c0 51.64 30.14 85.24 64 96zm248 80H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h304a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM112 32h96a16 16 0 0 0 0-32h-96a16 16 0 0 0 0 32z\"]\n};\nvar faChessBishopAlt = {\n prefix: 'fal',\n iconName: 'chess-bishop-alt',\n icon: [256, 512, [], \"f43b\", \"M247.16 435.58L224 424v-16a24 24 0 0 0-24-24h1.41a519 519 0 0 1-9.31-96H216a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-9.21c19.63-21.36 17.06-51.75 17.06-52.61 0-49.4-36.44-117.48-70.59-139.39h-1.1a16 16 0 0 0 0-32h-48a16 16 0 0 0 0 32h-1.07c-34.3 22-70.74 90.34-70.74 139.48 0 .7-2.55 31.09 17.1 52.52H40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h23.9a519 519 0 0 1-9.31 96H56a24 24 0 0 0-24 24v16L8.85 435.58A16 16 0 0 0 0 449.89V496a16 16 0 0 0 16 16h224a16 16 0 0 0 16-16v-46.11a16 16 0 0 0-8.84-14.31zm-119-346.69c6.59 0 21.69 11.08 37.59 37.14l-44.68 46.34a6.46 6.46 0 0 0 0 8.82l14.09 14.61a5.92 5.92 0 0 0 8.5 0l37.5-38.89c6.69 16.92 10.69 33.61 10.69 46.57 0 34.42-19.1 36.82-31.69 40.55v12h-64V244c-12.41-3.63-31.69-6-31.69-40.55 0-45.69 43.69-114.56 63.69-114.56zM168.84 384H87.16a552.7 552.7 0 0 0 8.75-96h64.18a552.7 552.7 0 0 0 8.75 96zM224 480H32v-20.22l32-16V416h128v27.78l32 16z\"]\n};\nvar faChessBoard = {\n prefix: 'fal',\n iconName: 'chess-board',\n icon: [512, 512, [], \"f43c\", \"M320.07 448h64v-64h-64zm-127.95 0h64v-64h-64zM64.18 256.1v64h64v-64zM192.12 64.17h-64v64h64zM448 256.1v-64h-64v64zm0-191.93h-64v64h64zm0 319.88v-64h-64v64zM320 64.17h-64v64h64zm-255.89 64v64h64v-64zm255.89 128v-64h-64v64zm-64-64v-64h-64v64zm-64 0h-64v64h64zM128 384.1H64v64h64zm64-64h-64v64h64zm192.05-127.98v-64h-64v64zm-127.95 64h-64v64h64zm0 64v64h64v-64zm64 0h64v-64h-64zM480 0H32A32 32 0 0 0 0 32v448a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V32a32 32 0 0 0-32-32zm0 480H32V32h448z\"]\n};\nvar faChessClock = {\n prefix: 'fal',\n iconName: 'chess-clock',\n icon: [640, 512, [], \"f43d\", \"M464 416a112 112 0 1 0-112-112 112 112 0 0 0 112 112zm0-192a79.42 79.42 0 0 1 43.85 13.22l-56.52 56.53a12 12 0 0 0 0 17l5.65 5.65a12 12 0 0 0 17 0l56.6-56.6A79.93 79.93 0 1 1 464 224zM176 416A112 112 0 1 0 64 304a112 112 0 0 0 112 112zm-16-190.37V308a12 12 0 0 0 12 12h8a12 12 0 0 0 12-12v-82.37a80 80 0 1 1-32 0zM608 128h-72a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H392a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8H192V64h56a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h56v64H32a32 32 0 0 0-32 32v288a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32zm0 320H32V160h576z\"]\n};\nvar faChessClockAlt = {\n prefix: 'fal',\n iconName: 'chess-clock-alt',\n icon: [640, 512, [], \"f43e\", \"M464 416a112 112 0 1 0-112-112 112 112 0 0 0 112 112zm-16-190.37V308a12 12 0 0 0 12 12h8a12 12 0 0 0 12-12v-82.37a80 80 0 1 1-32 0zM608 128H480V64h56a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8H392a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h56v64H248a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8H32a32 32 0 0 0-32 32v288a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32zm0 320H32V160h576zm-432-32A112 112 0 1 0 64 304a112 112 0 0 0 112 112zm0-192a79.42 79.42 0 0 1 43.85 13.22l-56.52 56.53a12 12 0 0 0 0 17l5.65 5.65a12 12 0 0 0 17 0l56.6-56.6A79.93 79.93 0 1 1 176 224z\"]\n};\nvar faChessKing = {\n prefix: 'fal',\n iconName: 'chess-king',\n icon: [448, 512, [], \"f43f\", \"M408 480H40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm31.34-301.88A44 44 0 0 0 403.51 160H240V96h56a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8h-56V8a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v56h-56a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h56v64H44.46a44.46 44.46 0 0 0-42.34 58L79 448h33.75L32.59 208.16A12.42 12.42 0 0 1 44.46 192h359.05c10.57 0 13.67 10.38 12 15.88L335.2 448H369l77-230.28a44.07 44.07 0 0 0-6.68-39.6z\"]\n};\nvar faChessKingAlt = {\n prefix: 'fal',\n iconName: 'chess-king-alt',\n icon: [320, 512, [], \"f440\", \"M295.16 435.58L272 424v-16a24 24 0 0 0-24-24h-13.09A469.21 469.21 0 0 1 224 284.53V256h24a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16.9l31.81-84.78a32 32 0 0 0-30-43.22H176V64h24a8 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 8v24h-24a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v32H87.09a32 32 0 0 0-30 43.25L88.91 224H72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v28.53A469.21 469.21 0 0 1 85.09 384H72a24 24 0 0 0-24 24v16l-23.15 11.58A16 16 0 0 0 16 449.89V496a16 16 0 0 0 16 16h256a16 16 0 0 0 16-16v-46.11a16 16 0 0 0-8.84-14.31zM87.09 128h145.85l-36 96h-73.85zM128 284.53V256h64v28.53A500.84 500.84 0 0 0 202.1 384h-84.2a500.84 500.84 0 0 0 10.1-99.47zM272 480H48v-20.22l32-16V416h160v27.78l32 16z\"]\n};\nvar faChessKnight = {\n prefix: 'fal',\n iconName: 'chess-knight',\n icon: [384, 512, [], \"f441\", \"M35.48 301.64c38 16.9 36.79 16.47 40.39 17.68A100.72 100.72 0 0 0 32 402.82V448h32v-45.18a69.35 69.35 0 0 1 38.31-62L144.62 316a41.62 41.62 0 0 0 23-37.21v-62.25l-16.16 9.59a20.8 20.8 0 0 0-10.87 13.56l-8 26.57A27.75 27.75 0 0 1 116.32 284l-11.08 4.43a27.68 27.68 0 0 1-21.56-.41l-35.2-15.62A27.74 27.74 0 0 1 32 247.05v-119c0-10.4 6.44-15.06 13.86-22.49L33.55 81c-4.67-9.33 1.63-17 8.85-17H128c106 0 192 86 192 192v192h32V256c0-123.51-100.49-224-224-224H42.4A42.45 42.45 0 0 0 0 74.4a46.92 46.92 0 0 0 4.94 20.9l2.69 5.39A52.56 52.56 0 0 0 0 128.09v119a59.8 59.8 0 0 0 35.48 54.55zM64 164a20 20 0 1 0 20-20 20 20 0 0 0-20 20zm312 316H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faChessKnightAlt = {\n prefix: 'fal',\n iconName: 'chess-knight-alt',\n icon: [320, 512, [], \"f442\", \"M91.73 170.67a14.87 14.87 0 1 0-14.87 14.93 14.91 14.91 0 0 0 14.87-14.93zm219.43 264.91L288 424v-16c0-11.71-8.54-21-19.63-23.12l.88-.88A63.58 63.58 0 0 0 288 338.74V225.88C288 136.62 215.38 64 126.12 64H40a40 40 0 0 0-40 40 43.55 43.55 0 0 0 4.54 19.3l.36.74A47.92 47.92 0 0 0 0 145.22v83.37a53.41 53.41 0 0 0 31.61 48.72l26.68 11.91c-20.56 22.1-35.67 54.56-18.69 101.42A23.81 23.81 0 0 0 32 408v16L8.85 435.58A16 16 0 0 0 0 449.89V496a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-46.11a16 16 0 0 0-8.84-14.31zM44.65 248.09A21.36 21.36 0 0 1 32 228.59v-83.37a16 16 0 0 1 4.66-11.29l6-6L33.19 109a11.29 11.29 0 0 1-1.19-5 8 8 0 0 1 8-8h86.16C197.55 96 256 154.45 256 225.88v112.86a32 32 0 0 1-9.37 22.63L224 384H71.05c-35.32-86.63 73.62-95.47 73.62-133.8v-42.73l-21.26 5.06a15.93 15.93 0 0 0-8.32 10.47L109 243.35A21.26 21.26 0 0 1 96.53 257l-8.48 3.4a21.09 21.09 0 0 1-16.5-.31zM288 480H32v-20.22l14.31-7.16L64 443.78V416h192v27.78l17.69 8.84 14.31 7.16z\"]\n};\nvar faChessPawn = {\n prefix: 'fal',\n iconName: 'chess-pawn',\n icon: [320, 512, [], \"f443\", \"M312 480H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h304a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM56 256h40v32c0 73.62-11.36 128.34-33 160h36.8c18.66-37.54 28.2-91 28.2-160v-32h64v32c0 69 9.54 122.46 28.2 160H257c-21.6-31.66-33-86.38-33-160v-32h40a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-25.78a112 112 0 1 0-156.44 0H56a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm24-112a80 80 0 1 1 80 80 80.09 80.09 0 0 1-80-80z\"]\n};\nvar faChessPawnAlt = {\n prefix: 'fal',\n iconName: 'chess-pawn-alt',\n icon: [256, 512, [], \"f444\", \"M247.16 435.58L224 424v-16a24 24 0 0 0-24-24h1.41a519 519 0 0 1-9.31-96H216a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16.91A95.86 95.86 0 1 0 32 192a95.3 95.3 0 0 0 24.91 64H40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h23.9a519 519 0 0 1-9.31 96H56a24 24 0 0 0-24 24v16L8.85 435.58A16 16 0 0 0 0 449.89V496a16 16 0 0 0 16 16h224a16 16 0 0 0 16-16v-46.11a16 16 0 0 0-8.84-14.31zM160.09 288a552.7 552.7 0 0 0 8.75 96H87.16a552.7 552.7 0 0 0 8.75-96zM128 128a64 64 0 1 1-64 64 64.07 64.07 0 0 1 64-64zm96 352H32v-20.22l32-16V416h128v27.78l32 16z\"]\n};\nvar faChessQueen = {\n prefix: 'fal',\n iconName: 'chess-queen',\n icon: [512, 512, [], \"f445\", \"M256 112a56 56 0 1 0-56-56 56 56 0 0 0 56 56zm0-80a24 24 0 1 1-24 24 24 24 0 0 1 24-24zm184 448H72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm64.87-295.84l-28.51-15.92a15.09 15.09 0 0 0-8.45-2.59 17.59 17.59 0 0 0-13.84 7.27A47.48 47.48 0 0 1 416 192a50.79 50.79 0 0 1-9.16-.85C383.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.49-1.12.07-2.23.11-3.33.11a47.47 47.47 0 0 1-38.21-19.26 17.17 17.17 0 0 0-13.61-7.13 15.16 15.16 0 0 0-8.48 2.59l-28.57 16a16 16 0 0 0-5.44 20.47L117.45 448h35.43l-116-243.82 4.12-2.27A78.8 78.8 0 0 0 96 224c1.81 0 3.65-.06 5.49-.19 35.63-2.41 64.68-29.1 72.46-63.81h8.73a80 80 0 0 0 146.64 0H338c6.95 31.66 31.32 56.74 63 62.61a82.66 82.66 0 0 0 15 1.39 78.81 78.81 0 0 0 55-22.09l4.07 2.27L359.11 448h35.44l115.76-243.37a16 16 0 0 0-5.44-20.47z\"]\n};\nvar faChessQueenAlt = {\n prefix: 'fal',\n iconName: 'chess-queen-alt',\n icon: [256, 512, [], \"f446\", \"M128 48a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm119.16 387.58L224 424v-16a23.72 23.72 0 0 0-20.95-23.38A469.21 469.21 0 0 1 192 284.53V256h24a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-22.39l50.93-124.23a7.46 7.46 0 0 0-2.54-9.55l-11.16-7.44a7.06 7.06 0 0 0-3.94-1.21 8.18 8.18 0 0 0-6.45 3.4 22.19 22.19 0 0 1-17.78 8.9 23.34 23.34 0 0 1-4.27-.4c-10.8-2-18.13-12.23-18.13-23.21A6.26 6.26 0 0 0 174 64h-18.07a6 6 0 0 0-6 4.62 22.41 22.41 0 0 1-43.86 0 6 6 0 0 0-6-4.62H82a6.26 6.26 0 0 0-6.26 6.26c0 12-8.89 22.75-20.85 23.56-.52 0-1 .05-1.55.05a22.17 22.17 0 0 1-17.84-9 8 8 0 0 0-6.35-3.33 7.13 7.13 0 0 0-4 1.21L14 90.22a7.46 7.46 0 0 0-2.53 9.55L62.39 224H40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v28.53a469.21 469.21 0 0 1-11 100.09A23.72 23.72 0 0 0 32 408v16L8.85 435.58A16 16 0 0 0 0 449.89V496a16 16 0 0 0 16 16h224a16 16 0 0 0 16-16v-46.11a16 16 0 0 0-8.84-14.31zM56.7 125.77h.33a53.69 53.69 0 0 0 37.35-19 54.14 54.14 0 0 0 67.14.07 53.35 53.35 0 0 0 31.08 18.17 55.71 55.71 0 0 0 6.7.83L159 224H97zM170.1 384H85.9A500.84 500.84 0 0 0 96 284.53V256h64v28.53A500.84 500.84 0 0 0 170.1 384zm53.9 96H32v-20.22l32-16V416h128v27.78l32 16z\"]\n};\nvar faChessRook = {\n prefix: 'fal',\n iconName: 'chess-rook',\n icon: [384, 512, [], \"f447\", \"M376 480H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM352 32H32A32 32 0 0 0 0 64v167.34l56 48C56 322 57.57 372.73 45.35 448h32.47C89.44 373.48 88 326.59 88 264.66l-56-48V64h80l.09 64h32V64H240v64h32V64h80v152.66l-56 48c0 62.63-1.41 109 10.18 183.34h32.47C326.43 372.77 328 322.05 328 279.34l56-48V64a32 32 0 0 0-32-32zM192 192a48.05 48.05 0 0 0-48 48v80h96v-80a48.05 48.05 0 0 0-48-48zm16 96h-32v-48a16 16 0 0 1 32 0z\"]\n};\nvar faChessRookAlt = {\n prefix: 'fal',\n iconName: 'chess-rook-alt',\n icon: [320, 512, [], \"f448\", \"M311.16 427.58L288 416v-16a16 16 0 0 0-16-16h-.39l-7.27-145.31 30.42-30.78a32 32 0 0 0 9.24-22.49V88a24.07 24.07 0 0 0-24-24H40a24.07 24.07 0 0 0-24 24v97.52A32 32 0 0 0 25.27 208l30.39 30.68L48.39 384H48a16 16 0 0 0-16 16v16L8.85 427.58A16 16 0 0 0 0 441.89V496a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-54.11a16 16 0 0 0-8.84-14.31zM48 185.5V96h48v48h32V96h64v48h32V96h48v89.44l-40.34 40.75L239.59 384H80.41l7.93-157.78zM288 480H32v-28.22l14.31-7.16L64 435.78V416h192v19.78l17.69 8.84 14.31 7.16zM183.59 231.59a23.59 23.59 0 0 0-47.18 0v47.18h47.18z\"]\n};\nvar faChevronCircleDown = {\n prefix: 'fal',\n iconName: 'chevron-circle-down',\n icon: [512, 512, [], \"f13a\", \"M256 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 216zm-207.5 86.6l115-115.1c4.7-4.7 4.7-12.3 0-17l-7.1-7.1c-4.7-4.7-12.3-4.7-17 0L256 303l-99.5-99.5c-4.7-4.7-12.3-4.7-17 0l-7.1 7.1c-4.7 4.7-4.7 12.3 0 17l115 115.1c4.8 4.6 12.4 4.6 17.1-.1z\"]\n};\nvar faChevronCircleLeft = {\n prefix: 'fal',\n iconName: 'chevron-circle-left',\n icon: [512, 512, [], \"f137\", \"M504 256C504 119 393 8 256 8S8 119 8 256s111 248 248 248 248-111 248-248zM256 472c-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216zm-86.6-224.5l115.1-115c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17L209 256l99.5 99.5c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.7-12.3 4.7-17 0l-115.1-115c-4.6-4.8-4.6-12.4.1-17.1z\"]\n};\nvar faChevronCircleRight = {\n prefix: 'fal',\n iconName: 'chevron-circle-right',\n icon: [512, 512, [], \"f138\", \"M8 256c0 137 111 248 248 248s248-111 248-248S393 8 256 8 8 119 8 256zM256 40c118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216zm86.6 224.5l-115.1 115c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L303 256l-99.5-99.5c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l115.1 115c4.6 4.8 4.6 12.4-.1 17.1z\"]\n};\nvar faChevronCircleUp = {\n prefix: 'fal',\n iconName: 'chevron-circle-up',\n icon: [512, 512, [], \"f139\", \"M256 504c137 0 248-111 248-248S393 8 256 8 8 119 8 256s111 248 248 248zM40 256c0-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-216zm224.5-86.6l115 115.1c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.7-12.3 4.7-17 0L256 209l-99.5 99.5c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17l115-115.1c4.8-4.6 12.4-4.6 17.1.1z\"]\n};\nvar faChevronDoubleDown = {\n prefix: 'fal',\n iconName: 'chevron-double-down',\n icon: [448, 512, [], \"f322\", \"M443.5 98.5l-211 211.1c-4.7 4.7-12.3 4.7-17 0L4.5 98.5c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0L224 269.9 419.5 74.5c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.6 4.6 4.6 12.2-.1 16.9zm0 111l-7.1-7.1c-4.7-4.7-12.3-4.7-17 0L224 397.9 28.5 202.5c-4.7-4.7-12.3-4.7-17 0l-7.1 7.1c-4.7 4.7-4.7 12.3 0 17l211 211.1c4.7 4.7 12.3 4.7 17 0l211-211.1c4.8-4.8 4.8-12.4.1-17.1z\"]\n};\nvar faChevronDoubleLeft = {\n prefix: 'fal',\n iconName: 'chevron-double-left',\n icon: [384, 512, [], \"f323\", \"M349.5 475.5l-211.1-211c-4.7-4.7-4.7-12.3 0-17l211.1-211c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17L178.1 256l195.5 195.5c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.6-12.3 4.6-17-.1zm-111 0l7.1-7.1c4.7-4.7 4.7-12.3 0-17L50.1 256 245.5 60.5c4.7-4.7 4.7-12.3 0-17l-7.1-7.1c-4.7-4.7-12.3-4.7-17 0l-211.1 211c-4.7 4.7-4.7 12.3 0 17l211.1 211c4.8 4.8 12.4 4.8 17.1.1z\"]\n};\nvar faChevronDoubleRight = {\n prefix: 'fal',\n iconName: 'chevron-double-right',\n icon: [384, 512, [], \"f324\", \"M34.5 36.5l211.1 211c4.7 4.7 4.7 12.3 0 17l-211.1 211c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L205.9 256 10.5 60.5c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.6-4.6 12.2-4.6 16.9.1zm111 0l-7.1 7.1c-4.7 4.7-4.7 12.3 0 17L333.9 256 138.5 451.5c-4.7 4.7-4.7 12.3 0 17l7.1 7.1c4.7 4.7 12.3 4.7 17 0l211.1-211c4.7-4.7 4.7-12.3 0-17l-211.1-211c-4.8-4.8-12.4-4.8-17.1-.1z\"]\n};\nvar faChevronDoubleUp = {\n prefix: 'fal',\n iconName: 'chevron-double-up',\n icon: [448, 512, [], \"f325\", \"M4.5 413.5l211-211.1c4.7-4.7 12.3-4.7 17 0l211 211.1c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.7-12.3 4.7-17 0L224 242.1 28.5 437.5c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.6-4.6-4.6-12.2.1-16.9zm0-111l7.1 7.1c4.7 4.7 12.3 4.7 17 0L224 114.1l195.5 195.5c4.7 4.7 12.3 4.7 17 0l7.1-7.1c4.7-4.7 4.7-12.3 0-17l-211-211.1c-4.7-4.7-12.3-4.7-17 0L4.5 285.5c-4.7 4.7-4.7 12.3 0 17z\"]\n};\nvar faChevronDown = {\n prefix: 'fal',\n iconName: 'chevron-down',\n icon: [448, 512, [], \"f078\", \"M443.5 162.6l-7.1-7.1c-4.7-4.7-12.3-4.7-17 0L224 351 28.5 155.5c-4.7-4.7-12.3-4.7-17 0l-7.1 7.1c-4.7 4.7-4.7 12.3 0 17l211 211.1c4.7 4.7 12.3 4.7 17 0l211-211.1c4.8-4.7 4.8-12.3.1-17z\"]\n};\nvar faChevronLeft = {\n prefix: 'fal',\n iconName: 'chevron-left',\n icon: [256, 512, [], \"f053\", \"M238.475 475.535l7.071-7.07c4.686-4.686 4.686-12.284 0-16.971L50.053 256 245.546 60.506c4.686-4.686 4.686-12.284 0-16.971l-7.071-7.07c-4.686-4.686-12.284-4.686-16.97 0L10.454 247.515c-4.686 4.686-4.686 12.284 0 16.971l211.051 211.05c4.686 4.686 12.284 4.686 16.97-.001z\"]\n};\nvar faChevronRight = {\n prefix: 'fal',\n iconName: 'chevron-right',\n icon: [256, 512, [], \"f054\", \"M17.525 36.465l-7.071 7.07c-4.686 4.686-4.686 12.284 0 16.971L205.947 256 10.454 451.494c-4.686 4.686-4.686 12.284 0 16.971l7.071 7.07c4.686 4.686 12.284 4.686 16.97 0l211.051-211.05c4.686-4.686 4.686-12.284 0-16.971L34.495 36.465c-4.686-4.687-12.284-4.687-16.97 0z\"]\n};\nvar faChevronSquareDown = {\n prefix: 'fal',\n iconName: 'chevron-square-down',\n icon: [448, 512, [], \"f329\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352zm-200.5-96.4l-115-115.1c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0L224 296l99.5-99.5c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17l-115 115.1c-4.8 4.5-12.4 4.5-17.1-.1z\"]\n};\nvar faChevronSquareLeft = {\n prefix: 'fal',\n iconName: 'chevron-square-left',\n icon: [448, 512, [], \"f32a\", \"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-48zM48 448c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48zm96.4-200.5l115.1-115c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17L184 256l99.5 99.5c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.7-12.3 4.7-17 0l-115.1-115c-4.5-4.8-4.5-12.4.1-17.1z\"]\n};\nvar faChevronSquareRight = {\n prefix: 'fal',\n iconName: 'chevron-square-right',\n icon: [448, 512, [], \"f32b\", \"M0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H48C21.5 32 0 53.5 0 80zm400-16c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352zm-96.4 200.5l-115.1 115c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L264 256l-99.5-99.5c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l115.1 115c4.5 4.8 4.5 12.4-.1 17.1z\"]\n};\nvar faChevronSquareUp = {\n prefix: 'fal',\n iconName: 'chevron-square-up',\n icon: [448, 512, [], \"f32c\", \"M48 480h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48zM32 80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80zm200.5 96.4l115 115.1c4.7 4.7 4.7 12.3 0 17l-7.1 7.1c-4.7 4.7-12.3 4.7-17 0L224 216l-99.5 99.5c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17l115-115.1c4.8-4.5 12.4-4.5 17.1.1z\"]\n};\nvar faChevronUp = {\n prefix: 'fal',\n iconName: 'chevron-up',\n icon: [448, 512, [], \"f077\", \"M4.465 366.475l7.07 7.071c4.686 4.686 12.284 4.686 16.971 0L224 178.053l195.494 195.493c4.686 4.686 12.284 4.686 16.971 0l7.07-7.071c4.686-4.686 4.686-12.284 0-16.97l-211.05-211.051c-4.686-4.686-12.284-4.686-16.971 0L4.465 349.505c-4.687 4.686-4.687 12.284 0 16.97z\"]\n};\nvar faChild = {\n prefix: 'fal',\n iconName: 'child',\n icon: [448, 512, [], \"f1ae\", \"M413.287 90.746c-23.71-23.707-63.332-27.212-93.318 2.776C318.651 41.725 276.107 0 224 0c-52.104 0-94.647 41.729-95.969 93.521-30.087-30.087-69.711-26.379-93.316-2.778-24.954 24.956-24.954 65.558-.002 90.511L112 258.511V456c0 30.879 25.122 56 56 56h16c15.654 0 29.828-6.456 40-16.846C234.172 505.544 248.346 512 264 512h16c30.878 0 56-25.121 56-56V258.511l77.286-77.256c24.952-24.954 24.952-65.556.001-90.509zM224 32c35.346 0 64 28.654 64 64s-28.654 64-64 64-64-28.654-64-64 28.654-64 64-64zm166.628 126.628L304 245.256V456c0 13.255-10.745 24-24 24h-16c-13.255 0-24-10.745-24-24V344h-32v112c0 13.255-10.745 24-24 24h-16c-13.255 0-24-10.745-24-24V245.256l-86.628-86.628c-12.496-12.497-12.496-32.759 0-45.256 12.498-12.496 32.757-12.497 45.256 0L181.256 192h85.488l78.628-78.628c12.498-12.496 32.757-12.497 45.256 0 12.496 12.497 12.496 32.759 0 45.256z\"]\n};\nvar faChimney = {\n prefix: 'fal',\n iconName: 'chimney',\n icon: [512, 512, [], \"f78b\", \"M480 0H32C14.3 0 0 14.3 0 32v128c0 17.7 14.3 32 32 32v304c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16V192c17.7 0 32-14.3 32-32V32c0-17.7-14.3-32-32-32zM64 192h96v128H64V192zm0 288V352h256v128H64zm384 0h-96V352h96v128zm0-160H192V192h256v128zm32-160H32V32h448v128z\"]\n};\nvar faChurch = {\n prefix: 'fal',\n iconName: 'church',\n icon: [576, 512, [], \"f51d\", \"M281.71 320.3c-33.28 3.17-57.71 33.02-57.71 66.45V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V385.8c0-15.95 10.86-30.76 26.59-33.36C302.61 349.15 320 364.58 320 384v120c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V384c0-37.42-32.12-67.34-70.29-63.7zm276.86 35.69L448 303.26v-29.14c0-11.24-5.9-21.66-15.54-27.44L304 169.6V96h72c4.42 0 8-3.58 8-8V72c0-4.42-3.58-8-8-8h-72V8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v56h-72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h72v73.6l-128.46 77.08A31.997 31.997 0 0 0 128 274.12v29.15L17.43 355.99C6.96 360.99 0 373.89 0 388.32V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V388.32c0-1.98.45-3.42.8-4.21l95.2-45.4V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V274.12l128-76.8 128 76.8V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V338.71l95.2 45.4c.35.78.8 2.22.8 4.21V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V388.32c0-14.43-6.96-27.33-17.43-32.33z\"]\n};\nvar faCircle = {\n prefix: 'fal',\n iconName: 'circle',\n icon: [512, 512, [], \"f111\", \"M256 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\"]\n};\nvar faCircleNotch = {\n prefix: 'fal',\n iconName: 'circle-notch',\n icon: [512, 512, [], \"f1ce\", \"M288 24.103v8.169a11.995 11.995 0 0 0 9.698 11.768C396.638 63.425 472 150.461 472 256c0 118.663-96.055 216-216 216-118.663 0-216-96.055-216-216 0-104.534 74.546-192.509 174.297-211.978A11.993 11.993 0 0 0 224 32.253v-8.147c0-7.523-6.845-13.193-14.237-11.798C94.472 34.048 7.364 135.575 8.004 257.332c.72 137.052 111.477 246.956 248.531 246.667C393.255 503.711 504 392.789 504 256c0-121.187-86.924-222.067-201.824-243.704C294.807 10.908 288 16.604 288 24.103z\"]\n};\nvar faCity = {\n prefix: 'fal',\n iconName: 'city',\n icon: [640, 512, [], \"f64f\", \"M132 368H92c-6.62 0-12 5.37-12 12v40c0 6.63 5.38 12 12 12h40c6.62 0 12-5.37 12-12v-40c0-6.63-5.38-12-12-12zm0-96H92c-6.62 0-12 5.37-12 12v40c0 6.63 5.38 12 12 12h40c6.62 0 12-5.37 12-12v-40c0-6.63-5.38-12-12-12zm0-96H92c-6.62 0-12 5.37-12 12v40c0 6.63 5.38 12 12 12h40c6.62 0 12-5.37 12-12v-40c0-6.63-5.38-12-12-12zm96 192h-40c-6.62 0-12 5.37-12 12v40c0 6.63 5.38 12 12 12h40c6.62 0 12-5.37 12-12v-40c0-6.63-5.38-12-12-12zm0-96h-40c-6.62 0-12 5.37-12 12v40c0 6.63 5.38 12 12 12h40c6.62 0 12-5.37 12-12v-40c0-6.63-5.38-12-12-12zm0-96h-40c-6.62 0-12 5.37-12 12v40c0 6.63 5.38 12 12 12h40c6.62 0 12-5.37 12-12v-40c0-6.63-5.38-12-12-12zm192 96h-40c-6.62 0-12 5.37-12 12v40c0 6.63 5.38 12 12 12h40c6.62 0 12-5.37 12-12v-40c0-6.63-5.38-12-12-12zm0-96h-40c-6.62 0-12 5.37-12 12v40c0 6.63 5.38 12 12 12h40c6.62 0 12-5.37 12-12v-40c0-6.63-5.38-12-12-12zm0-96h-40c-6.62 0-12 5.37-12 12v40c0 6.63 5.38 12 12 12h40c6.62 0 12-5.37 12-12V92c0-6.63-5.38-12-12-12zm128 288h-40c-6.62 0-12 5.37-12 12v40c0 6.63 5.38 12 12 12h40c6.62 0 12-5.37 12-12v-40c0-6.63-5.38-12-12-12zm0-96h-40c-6.62 0-12 5.37-12 12v40c0 6.63 5.38 12 12 12h40c6.62 0 12-5.37 12-12v-40c0-6.63-5.38-12-12-12zm68-80H512V24c0-13.26-10.75-24-24-24H312c-13.25 0-24 10.74-24 24v72h-64V8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v88h-64V8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v88H24c-13.25 0-24 10.74-24 24v384c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V128h288V32h160v192h128v280c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V216c0-13.26-10.75-24-24-24z\"]\n};\nvar faClarinet = {\n prefix: 'fal',\n iconName: 'clarinet',\n icon: [640, 512, [], \"f8ad\", \"M272 232a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm96 0a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm96 0a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm152-120a23.73 23.73 0 0 0-13.28 4l-66 44H480v-32h24a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H232a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v32H101.2a31.92 31.92 0 0 0-10.12 1.64l-69.2 23.07A32 32 0 0 0 0 215.06v81.88a32 32 0 0 0 21.88 30.35l69.2 23.07A31.92 31.92 0 0 0 101.2 352h435.53l66 44A24 24 0 0 0 640 376V136a24 24 0 0 0-24-24zm-232 16h64v32h-64zm-96 0h64v32h-64zm320 233.05L546.42 320H101.2L32 296.94v-81.88L101.2 192h445.22L608 151z\"]\n};\nvar faClawMarks = {\n prefix: 'fal',\n iconName: 'claw-marks',\n icon: [512, 512, [], \"f6c2\", \"M509.64 477.53l-1.47-3.12C463.56 378.88 328.12 141.69 34.58 2.4c-10.75-5.11-23.12-1.86-30 7.86-6.94 9.84-5.84 22.69 2.69 31.23l168.44 168.35c.44 1.06.41 4.81.34 10.25v51.89h55.89c3.69 0 7.28 1.5 9.69 3.9l75.08 77.51c2.62 2.64 4.09 6.15 4.09 9.54l-1.12 53.39 53.02-1.14c3.69 0 7.31 1.5 10.06 4.25l87.8 85.37c4.72 4.77 10.84 7.19 17.03 7.19 4.84 0 9.75-1.48 14.06-4.53 9.77-6.85 13.05-19.15 7.99-29.93zm-104.42-80.87c-8.56-8.56-20.4-13.47-32.84-13.47h-.03l-20 .42.44-20.33c0-12.28-4.78-23.83-13.28-32.33l-75.08-77.51c-8.69-8.69-20.21-13.47-32.49-13.47h-23.9l.03-22.45c.09-8.05.25-20.23-9.5-29.97L64.26 53.23c222.8 119.7 342.4 296.28 396.05 397.03l-55.09-53.6zM29.52 212l-.03-.02a20.536 20.536 0 0 0-25.59 6.75c-5.81 8.23-4.84 19.4 1.06 25.17l71.02 89.17c2.62 2.64 4.09 6.16 4.09 9.91v57h56.99c3.75 0 7.25 1.45 10.84 4.97L266.75 505.9c4 4 9.28 6.06 14.59 6.06 4.12 0 8.28-1.25 11.87-3.78 8.22-5.75 11.09-16.5 6.81-25.56C222.01 317.23 84.85 238.26 29.52 212zm140.06 169.44c-8.69-8.69-20.25-13.47-32.53-13.47h-24.99v-25c0-12.3-4.78-23.84-12.25-31.17L64.6 267.62c52.18 32.22 122.97 87.92 177.46 175.4l-72.48-61.58zm144.19-274.15c1.69 1.67 2.62 3.95 2.75 8.19l5.09 42.9 44.8 5.23c2.34 0 4.62.94 7.62 3.8l104.04 82.75c3.84 3.84 8.9 5.81 14 5.81 4 0 8-1.2 11.5-3.66 7.87-5.55 10.59-15.89 6.5-24.56C445 89.79 330.55 23.88 284.34 1.93c-8.72-4.12-19.06-1.44-24.65 6.45-5.59 7.94-4.69 18.67.44 23.47l53.64 75.44zm137.29 80.63l-55.71-44.33c-7.5-7.52-17.87-11.87-26.71-11.87h-.31l-17.96-2.14-1.97-16c0-10.89-4.25-21.15-10.22-26.84l-21.53-30.25c40.37 25.78 92.42 67.86 134.41 131.43z\"]\n};\nvar faClinicMedical = {\n prefix: 'fal',\n iconName: 'clinic-medical',\n icon: [576, 512, [], \"f7f2\", \"M573.48 219.92L310.6 8a35.85 35.85 0 0 0-45.19 0L2.53 219.92a6.71 6.71 0 0 0-1 9.5l14.2 17.49a6.82 6.82 0 0 0 9.6 1L64 216.72V496a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V216.82l38.8 31.29a6.83 6.83 0 0 0 9.6-1l14.19-17.5a7.13 7.13 0 0 0-1.11-9.69zM480 480H96V190.92l187.71-151.4a6.63 6.63 0 0 1 8.4 0L480 191zM256 216v56h-56a8 8 0 0 0-8 8v48a8 8 0 0 0 8 8h56v56a8 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 8z\"]\n};\nvar faClipboard = {\n prefix: 'fal',\n iconName: 'clipboard',\n icon: [384, 512, [], \"f328\", \"M336 64h-88.6c.4-2.6.6-5.3.6-8 0-30.9-25.1-56-56-56s-56 25.1-56 56c0 2.7.2 5.4.6 8H48C21.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 32c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm160 432c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16h48v20c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12V96h48c8.8 0 16 7.2 16 16z\"]\n};\nvar faClipboardCheck = {\n prefix: 'fal',\n iconName: 'clipboard-check',\n icon: [384, 512, [], \"f46c\", \"M336 64h-88.6c.4-2.6.6-5.3.6-8 0-30.9-25.1-56-56-56s-56 25.1-56 56c0 2.7.2 5.4.6 8H48C21.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 32c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm160 432c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16h48v20c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12V96h48c8.8 0 16 7.2 16 16v352zm-58.9-236.4c-4.7-4.7-12.3-4.7-17-.1L158.4 344.3 108 293.7c-4.7-4.7-12.3-4.7-17 0l-8.5 8.5c-4.7 4.7-4.7 12.3 0 17l67.4 67.6c4.7 4.7 12.3 4.7 17 0l134.8-133.7c4.7-4.7 4.7-12.3.1-17l-8.7-8.5z\"]\n};\nvar faClipboardList = {\n prefix: 'fal',\n iconName: 'clipboard-list',\n icon: [384, 512, [], \"f46d\", \"M280 240H168c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm0 96H168c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM112 232c-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-24zM336 64h-88.6c.4-2.6.6-5.3.6-8 0-30.9-25.1-56-56-56s-56 25.1-56 56c0 2.7.2 5.4.6 8H48C21.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 32c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm160 432c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16h48v20c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12V96h48c8.8 0 16 7.2 16 16v352z\"]\n};\nvar faClipboardListCheck = {\n prefix: 'fal',\n iconName: 'clipboard-list-check',\n icon: [384, 512, [], \"f737\", \"M336 64h-88.6c.4-2.6.6-5.3.6-8 0-30.9-25.1-56-56-56s-56 25.1-56 56c0 2.7.2 5.4.6 8H48C21.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 32c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm160 432c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16h48v20c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12V96h48c8.8 0 16 7.2 16 16v352zM112 328c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm168 8H168c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-153.8-65.6l64.2-63.6c2.1-2.1 2.1-5.5 0-7.6l-12.6-12.7c-2.1-2.1-5.5-2.1-7.6 0l-47.6 47.2-20.6-20.9c-2.1-2.1-5.5-2.1-7.6 0l-12.7 12.6c-2.1 2.1-2.1 5.5 0 7.6l37.1 37.4c1.9 2.1 5.3 2.1 7.4 0zM280 240h-77.6l-32.3 32H280c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faClipboardPrescription = {\n prefix: 'fal',\n iconName: 'clipboard-prescription',\n icon: [384, 512, [], \"f5e8\", \"M336 64h-88.6c.4-2.6.6-5.3.6-8 0-30.9-25.1-56-56-56s-56 25.1-56 56c0 2.7.2 5.4.6 8H48C21.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 32c13.3 0 24 10.7 24 24 0 13.2-10.7 24-24 24s-24-10.8-24-24c0-13.3 10.7-24 24-24zm160 432c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16h48v20c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12V96h48c8.8 0 16 7.2 16 16zm-66.3-162.3l-11.3-11.3c-3.1-3.1-8.2-3.1-11.3 0l-39 39-31.4-31.4c18.5-9.1 31.3-28 31.3-50 0-30.9-25.1-56-56-56h-64c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-40h25.4l48 48-39 39c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l39-39 39 39c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-39-39 39-39c3.2-3.2 3.2-8.2.1-11.3zM168 272h-40v-48h40c13.2 0 24 10.8 24 24s-10.8 24-24 24z\"]\n};\nvar faClipboardUser = {\n prefix: 'fal',\n iconName: 'clipboard-user',\n icon: [384, 512, [], \"f7f3\", \"M336 64h-88.58a57.06 57.06 0 0 0 .58-8 56 56 0 0 0-112 0 57.06 57.06 0 0 0 .58 8H48a48 48 0 0 0-48 48v352a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V112a48 48 0 0 0-48-48zM192 32a24 24 0 1 1-24 24 24 24 0 0 1 24-24zm160 432a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V112a16 16 0 0 1 16-16h48v20a12 12 0 0 0 12 12h168a12 12 0 0 0 12-12V96h48a16 16 0 0 1 16 16zM236.81 336c-21.5 2.38-22.6 8-44.81 8s-23.31-5.58-44.81-8C101.31 336 64 369 64 409.59 64 435 83 448 102.41 448h179.18C301 448 320 435 320 409.59 320 369 282.69 336 236.81 336zm44.78 80H102.41c-6.82 0-6.41-3.19-6.41-6.41 0-22.93 23-41.59 51.19-41.59 4.66 0 18.43 8 44.81 8s40.15-8 44.81-8C265 368 288 386.66 288 409.59c0 3.22.41 6.41-6.41 6.41zM192 320a80 80 0 1 0-80-80 80.09 80.09 0 0 0 80 80zm0-128a48 48 0 1 1-48 48 48.05 48.05 0 0 1 48-48z\"]\n};\nvar faClock = {\n prefix: 'fal',\n iconName: 'clock',\n icon: [512, 512, [], \"f017\", \"M256 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 216zm-148.9 88.3l-81.2-59c-3.1-2.3-4.9-5.9-4.9-9.7V116c0-6.6 5.4-12 12-12h14c6.6 0 12 5.4 12 12v146.3l70.5 51.3c5.4 3.9 6.5 11.4 2.6 16.8l-8.2 11.3c-3.9 5.3-11.4 6.5-16.8 2.6z\"]\n};\nvar faClone = {\n prefix: 'fal',\n iconName: 'clone',\n icon: [512, 512, [], \"f24d\", \"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-48zm-80 464c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16V144c0-8.82 7.18-16 16-16h48v240c0 26.51 21.49 48 48 48h240v48zm96-96c0 8.82-7.18 16-16 16H144c-8.82 0-16-7.18-16-16V48c0-8.82 7.18-16 16-16h320c8.82 0 16 7.18 16 16v320z\"]\n};\nvar faClosedCaptioning = {\n prefix: 'fal',\n iconName: 'closed-captioning',\n icon: [512, 512, [], \"f20a\", \"M246.2 188.5l-9.8 15.2c-2 3-5.7 3.7-8.6 1.5-40.7-31.2-113-14.3-113 48.5 0 64.8 70.1 85.3 111.6 47.6 2.7-2.4 6.8-1.9 9 1l10.7 14.6c1.8 2.4 1.5 5.8-.6 7.9-49.2 50-165.5 29.4-165.5-70.6 0-96.3 118.3-117.1 165.2-73.5 2.2 2.1 2.6 5.4 1 7.8zM464 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-48zm16 336c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16h416c8.8 0 16 7.2 16 16v288zm-49-211.5l-9.8 15.2c-2 3-5.7 3.7-8.6 1.5-40.7-31.2-113-14.3-113 48.5 0 64.8 70.1 85.3 111.6 47.6 2.7-2.4 6.8-1.9 9 1l10.7 14.6c1.8 2.4 1.5 5.8-.6 7.9-49.1 50.1-165.4 29.5-165.4-70.5 0-96.3 118.3-117.1 165.2-73.5 2.1 2 2.5 5.3.9 7.7z\"]\n};\nvar faCloud = {\n prefix: 'fal',\n iconName: 'cloud',\n icon: [640, 512, [], \"f0c2\", \"M571.7 238.8c2.8-9.9 4.3-20.2 4.3-30.8 0-61.9-50.1-112-112-112-16.7 0-32.9 3.6-48 10.8-31.6-45-84.3-74.8-144-74.8-94.4 0-171.7 74.5-175.8 168.2C39.2 220.2 0 274.3 0 336c0 79.6 64.4 144 144 144h368c70.7 0 128-57.2 128-128 0-47-25.8-90.8-68.3-113.2zM512 448H144c-61.9 0-112-50.1-112-112 0-56.8 42.2-103.7 97-111-.7-5.6-1-11.3-1-17 0-79.5 64.5-144 144-144 60.3 0 111.9 37 133.4 89.6C420 137.9 440.8 128 464 128c44.2 0 80 35.8 80 80 0 18.5-6.3 35.6-16.9 49.2C573 264.4 608 304.1 608 352c0 53-43 96-96 96z\"]\n};\nvar faCloudDownload = {\n prefix: 'fal',\n iconName: 'cloud-download',\n icon: [640, 512, [], \"f0ed\", \"M571.7 238.8c2.8-9.9 4.3-20.2 4.3-30.8 0-61.9-50.1-112-112-112-16.7 0-32.9 3.6-48 10.8-31.6-45-84.3-74.8-144-74.8-94.4 0-171.7 74.5-175.8 168.2C39.2 220.2 0 274.3 0 336c0 79.6 64.4 144 144 144h368c70.7 0 128-57.2 128-128 0-47-25.8-90.8-68.3-113.2zM512 448H144c-61.9 0-112-50.1-112-112 0-56.8 42.2-103.7 97-111-.7-5.6-1-11.3-1-17 0-79.5 64.5-144 144-144 60.3 0 111.9 37 133.4 89.6C420 137.9 440.8 128 464 128c44.2 0 80 35.8 80 80 0 18.5-6.3 35.6-16.9 49.2C573 264.4 608 304.1 608 352c0 53-43 96-96 96zM405.2 254.5c-4.7-4.7-12.3-4.7-17 0L320 322.7V172c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v150.7l-68.2-68.2c-4.7-4.7-12.3-4.7-17 0l-5.7 5.7c-4.7 4.7-4.7 12.3 0 17l98.3 98.3c4.7 4.7 12.3 4.7 17 0l98.3-98.3c4.7-4.7 4.7-12.3 0-17l-5.5-5.7z\"]\n};\nvar faCloudDownloadAlt = {\n prefix: 'fal',\n iconName: 'cloud-download-alt',\n icon: [640, 512, [], \"f381\", \"M571.7 238.8c2.8-9.9 4.3-20.2 4.3-30.8 0-61.9-50.1-112-112-112-16.7 0-32.9 3.6-48 10.8-31.6-45-84.3-74.8-144-74.8-94.4 0-171.7 74.5-175.8 168.2C39.2 220.2 0 274.3 0 336c0 79.6 64.4 144 144 144h368c70.7 0 128-57.2 128-128 0-47-25.8-90.8-68.3-113.2zM512 448H144c-61.9 0-112-50.1-112-112 0-56.8 42.2-103.7 97-111-.7-5.6-1-11.3-1-17 0-79.5 64.5-144 144-144 60.3 0 111.9 37 133.4 89.6C420 137.9 440.8 128 464 128c44.2 0 80 35.8 80 80 0 18.5-6.3 35.6-16.9 49.2C573 264.4 608 304.1 608 352c0 53-43 96-96 96zM384 248h-64v-84c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v84h-64c-29.2 0-43.2 36.2-21.4 55.8l80 72c12.2 11 30.6 11 42.8 0l80-72c21.7-19.6 7.9-55.8-21.4-55.8zm-80 104l-80-72h160l-80 72z\"]\n};\nvar faCloudDrizzle = {\n prefix: 'fal',\n iconName: 'cloud-drizzle',\n icon: [512, 512, [], \"f738\", \"M48 360c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16s16-7.2 16-16v-40c0-8.8-7.2-16-16-16zm96 80c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16s16-7.2 16-16v-40c0-8.8-7.2-16-16-16zm96-80c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16s16-7.2 16-16v-40c0-8.8-7.2-16-16-16zm96 80c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16s16-7.2 16-16v-40c0-8.8-7.2-16-16-16zm96-80c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16s16-7.2 16-16v-40c0-8.8-7.2-16-16-16zm-16.3-247.7C411.8 67.4 373.9 32 328 32c-17.8 0-34.8 5.3-49.2 15.2C256.3 17.7 221.5 0 184 0 117.8 0 64 53.8 64 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h304c57.3 0 104-46.7 104-104 0-54.8-42.6-99.8-96.3-103.7zM408 288H104c-39.7 0-72-32.3-72-72 0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8L287 82.1C297.9 70.4 312.4 64 328 64c30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72S447.7 288 408 288z\"]\n};\nvar faCloudHail = {\n prefix: 'fal',\n iconName: 'cloud-hail',\n icon: [512, 512, [], \"f739\", \"M376 368c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm-192 96c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm128 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm-64-96c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM56 464c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm64-96c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm295.7-255.7C411.8 67.4 373.9 32 328 32c-17.8 0-34.8 5.3-49.2 15.2C256.3 17.7 221.5 0 184 0 117.8 0 64 53.8 64 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h304c57.3 0 104-46.7 104-104 0-54.8-42.6-99.8-96.3-103.7zM408 288H104c-39.7 0-72-32.3-72-72 0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8L287 82.1C297.9 70.4 312.4 64 328 64c30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72S447.7 288 408 288z\"]\n};\nvar faCloudHailMixed = {\n prefix: 'fal',\n iconName: 'cloud-hail-mixed',\n icon: [512, 512, [], \"f73a\", \"M415.7 112.3C411.8 67.4 373.9 32 328 32c-17.8 0-34.8 5.3-49.2 15.2C256.3 17.7 221.5 0 184 0 117.8 0 64 53.8 64 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h304c57.3 0 104-46.7 104-104 0-54.8-42.6-99.8-96.3-103.7zM408 288H104c-39.7 0-72-32.3-72-72 0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8L287 82.1C297.9 70.4 312.4 64 328 64c30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72S447.7 288 408 288zm-224.1 82.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.8zM216 464c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM87.2 369.7c-7.9-3.9-17.5-.8-21.5 7.2l-16 32c-3.9 7.9-.8 17.5 7.2 21.5 2.3 1.1 4.8 1.7 7.2 1.7 5.8 0 11.5-3.2 14.3-8.8l16-32c3.8-8.1.7-17.7-7.2-21.6zM24 464c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm447.2-94.3c-7.9-3.9-17.5-.8-21.5 7.2l-16 32c-3.9 7.9-.8 17.5 7.2 21.5 2.3 1.1 4.8 1.7 7.2 1.7 5.8 0 11.5-3.2 14.3-8.8l16-32c3.8-8.1.7-17.7-7.2-21.6zm-192 0c-7.9-3.9-17.5-.8-21.5 7.2l-16 32c-3.9 7.9-.8 17.5 7.2 21.5 2.3 1.1 4.8 1.7 7.2 1.7 5.8 0 11.5-3.2 14.3-8.8l16-32c3.8-8.1.7-17.7-7.2-21.6zM408 464c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm-32.1-93.9c-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.8z\"]\n};\nvar faCloudMeatball = {\n prefix: 'fal',\n iconName: 'cloud-meatball',\n icon: [512, 512, [], \"f73b\", \"M48 352c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm416-64c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zM346.5 293.5c-12.2-12.2-29.3-17.9-46.3-16.3-21.8-26.6-66.7-26.6-88.4 0-16.9-1.6-34 4.1-46.3 16.3-12.2 12.2-18 29.2-16.3 46.3-13.3 10.9-21.2 27-21.2 44.2s7.9 33.3 21.2 44.2c-1.7 17.1 4.1 34.1 16.3 46.3 12.3 12.3 30.5 19 46.5 16.6 10.9 13.1 26.8 20.9 44 20.9s33.1-7.8 44-20.9c16.2 2.4 34.2-4.3 46.5-16.6 12.2-12.2 18-29.2 16.3-46.3 13.3-10.9 21.2-27 21.2-44.2s-7.9-33.3-21.2-44.2c1.7-17.1-4.1-34.1-16.3-46.3zm-8.8 113.2l-11.9 6.2 4.1 12.8c3 9.5.8 19.5-5.9 26.2-4.9 4.9-11.4 7.6-18.4 7.6-2 0-4.5-.7-7.8-1.7l-12.8-4.1-6.2 12c-9.2 17.7-36.2 17.7-45.4 0l-6.2-12-12.8 4.1c-3.2 1-5.8 1.7-7.8 1.7-6.9 0-13.5-2.7-18.4-7.6-6.7-6.7-8.9-16.7-5.9-26.2l4.1-12.8-11.9-6.2c-8.8-4.6-14.3-13.3-14.3-22.7s5.5-18.1 14.3-22.7l11.9-6.2-4.1-12.8c-3-9.5-.8-19.5 5.9-26.2 6.7-6.7 16.7-8.9 26.2-5.9l12.8 4.1 6.2-11.9c9.2-17.7 36.2-17.7 45.4 0l6.2 11.9 12.8-4.1c9.4-3 19.5-.8 26.2 5.9 6.7 6.7 8.9 16.7 5.9 26.2l-4.1 12.8 11.9 6.2c8.8 4.6 14.3 13.3 14.3 22.7s-5.5 18.1-14.3 22.7zM512 216c0-54.8-42.6-99.8-96.3-103.7C411.8 67.4 373.9 32 328 32c-17.8 0-34.8 5.3-49.2 15.2C256.3 17.7 221.5 0 184 0 117.8 0 64 53.8 64 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h14.3c1.8-11.4 5.7-22.2 11.6-32H104c-39.7 0-72-32.3-72-72 0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8L287 82.1C297.9 70.4 312.4 64 328 64c30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72s-32.3 72-72 72h-25.9c5.9 9.8 9.8 20.6 11.6 32H408c57.3-.1 104-46.8 104-104.1z\"]\n};\nvar faCloudMoon = {\n prefix: 'fal',\n iconName: 'cloud-moon',\n icon: [640, 512, [], \"f6c3\", \"M351.5 313.6c-4.5-41.3-39.6-73.6-82.1-73.6-13.9 0-27.3 3.5-39.5 10.3-18.3-16.8-41.9-26.3-66.8-26.3-53.7 0-97.5 42.8-99.2 96.2-38.3 14.3-64 50.7-64 92.7C0 467.5 44.5 512 99.2 512h249.6c54.7 0 99.2-44.5 99.2-99.2 0-53.8-43-97.7-96.5-99.2zM348.8 480H99.2C62.1 480 32 449.9 32 412.8c0-31.6 21.5-58.5 52.4-65.4l14-5.9-2-14.6c-.2-1.2-.4-2.5-.4-3.8 0-37.1 30.1-67.2 67.2-67.2 20.1 0 39 9.2 52 25.2l10.1 12.5 12.4-10.1C247 276 258 272 269.4 272c27.9 0 50.6 22.7 50.6 50.6 0 1.5-.2 2.8-.7 6.4l-2.6 21.3 21.2-3.6c3.6-.6 7.2-1.2 11-1.2 37.1 0 67.2 30.2 67.2 67.2S385.9 480 348.8 480zm288.8-192.8c-4.1-8.6-12.4-13.9-21.8-13.9-1.5 0-3 .1-4.6.4-7.7 1.5-15.5 2.2-23.2 2.2-67 0-121.5-54.7-121.5-121.9 0-43.7 23.6-84.3 61.6-106 8.9-5.1 13.6-15 11.9-25.1-1.7-10.2-9.4-17.9-19.5-19.8-11.5-2-23.2-3.1-35-3.1-105.7 0-191.8 86.1-191.8 192 0 6.5.4 12.8 1.1 19.2 12.7 2.9 24.6 7.8 35.4 14.6-2.6-10.9-4.5-22-4.5-33.7 0-88.2 71.7-160 159.8-160 3 0 5.9.1 8.9.2-37.4 28.9-59.9 73.9-59.9 121.9C434.5 239 503.4 308 588 308c2.6 0 5.2-.1 7.8-.2C566.2 336.1 527 352 485.5 352c-7.5 0-14.8-.7-21.9-1.9 5.7 10.3 9.7 21.5 12.5 33.1 3.1.2 6.2.7 9.4.7 58.1 0 112.4-25.9 149-71.1 6-7.2 7.2-17.1 3.1-25.6z\"]\n};\nvar faCloudMoonRain = {\n prefix: 'fal',\n iconName: 'cloud-moon-rain',\n icon: [576, 512, [], \"f73c\", \"M573.9 237.5c-3.6-7.7-11.5-12.6-19.9-12.6h-1.4l-2.8.4c-6.3 1.2-12.6 1.8-18.9 1.8-54.4 0-98.7-44-98.7-98.2 0-35.2 19.2-67.9 50.1-85.3 8.2-4.6 12.4-13.6 10.9-22.8-1.6-9.3-8.5-16.3-17.8-18C465.7.9 455.8 0 446 0c-67.1 0-123.6 41.4-147.7 99.5 10.2 2.5 20 6.3 29 11.4 19.1-45.6 63.9-78 116.5-78.9-27.3 24.4-43.5 59.6-43.5 96.8 0 70.7 57 128.5 127.6 130.1-22.3 18.2-50.3 28.4-79.8 28.8v.2c0 11-1.5 21.7-4.1 31.9.7 0 1.4.1 2.1.1 48.7 0 94.3-21.6 125-59.2 5.3-6.5 6.4-15.5 2.8-23.2zm-222.6-40.2C346 158.2 312.5 128 272 128c-8.6 0-17 1.4-25.2 4.3-19.7-23-48.2-36.3-78.8-36.3-56.5 0-102.7 45.3-104 101.6C26.2 210.9 0 246.9 0 288c0 52.9 43.1 96 96 96h224c52.9 0 96-43.1 96-96 0-1.3-.3-2.6-.3-4-1.7-39.6-27.5-74-64.4-86.7zM320 352H96c-35.3 0-64-28.7-64-64 0-30.6 21.8-57 52-62.8l14.5-2.8-2-18c-.2-1.5-.4-2.9-.4-4.4 0-39.7 32.3-72 72-72 24.3 0 46.8 12.2 60.2 32.8l8.1 12.4 13-7.1c32.7-17.8 70.7 8.2 70.8 40.4l-.2 16.2 12.8 2.6c29.8 6 51.3 32.3 51.3 62.7-.1 35.3-28.8 64-64.1 64zm-149.8 66.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.4-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.4-7.7 1.7-17.4-6-21.8zm192 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.4-7.7 1.7-17.4-6-21.8zm96 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.4-7.7 1.7-17.4-6-21.8z\"]\n};\nvar faCloudMusic = {\n prefix: 'fal',\n iconName: 'cloud-music',\n icon: [640, 512, [], \"f8ae\", \"M571.69 238.8A112 112 0 0 0 464 96a110.64 110.64 0 0 0-48 10.8A175.82 175.82 0 0 0 272 32c-94.41 0-171.69 74.5-175.81 168.2A144 144 0 0 0 144 480h368a128 128 0 0 0 59.69-241.2zM512 448H144a112 112 0 0 1-15-223 139.16 139.16 0 0 1-1-17 144.05 144.05 0 0 1 277.41-54.41A80 80 0 0 1 527.09 257.2 96 96 0 0 1 512 448zM363.19 176.75l-128 47.25A16 16 0 0 0 224 239.25V338a69.34 69.34 0 0 0-16-2c-26.5 0-48 14.33-48 32s21.5 32 48 32 48-14.33 48-32V259.16l96-37.52V306a69.34 69.34 0 0 0-16-2c-26.5 0-48 14.33-48 32s21.5 32 48 32 48-14.33 48-32V192a16 16 0 0 0-20.81-15.25z\"]\n};\nvar faCloudRain = {\n prefix: 'fal',\n iconName: 'cloud-rain',\n icon: [512, 512, [], \"f73d\", \"M118.5 369.2c-2.8-10.2-11.8-17.1-22.3-17.2-11.6.7-19.7 6.8-22.7 17.1-4.7 16.3-11.8 26.9-18.8 37.1-8.6 12.7-17.4 25.8-17.4 45.3 0 33.4 26.3 60.5 58.7 60.5s58.7-27.1 58.7-60.5c0-19.6-8.8-32.6-17.4-45.2-7-10.3-14.1-20.8-18.8-37.1zM96 480c-14.7 0-26.7-12.8-26.7-28.5 0-9.3 4.1-15.8 11.9-27.3 4.6-6.8 9.9-14.7 14.7-24.6 4.8 9.9 10.2 17.8 14.8 24.6 7.8 11.5 11.9 18 11.9 27.3.1 15.7-11.9 28.5-26.6 28.5zm182.5-110.8c-2.8-10.2-11.8-17.1-22.3-17.2h-.2c-10.5 0-19.5 6.8-22.5 17.1-4.7 16.3-11.8 26.9-18.8 37.1-8.6 12.7-17.4 25.8-17.4 45.3 0 33.4 26.3 60.5 58.7 60.5s58.7-27.1 58.7-60.5c0-19.6-8.8-32.6-17.4-45.2-7-10.3-14.1-20.8-18.8-37.1zM256 480c-14.7 0-26.7-12.8-26.7-28.5 0-9.3 4.1-15.8 11.9-27.3 4.6-6.8 9.9-14.7 14.7-24.6 4.8 9.9 10.2 17.8 14.8 24.6 7.8 11.5 11.9 18 11.9 27.3.1 15.7-11.9 28.5-26.6 28.5zm182.5-110.8c-2.8-10.2-11.8-17.1-22.3-17.2-10.4.7-19.7 6.8-22.7 17.1-4.7 16.3-11.8 26.9-18.8 37.1-8.6 12.7-17.4 25.8-17.4 45.3 0 33.4 26.3 60.5 58.7 60.5s58.7-27.1 58.7-60.5c0-19.6-8.8-32.6-17.4-45.2-7-10.3-14.1-20.8-18.8-37.1zM416 480c-14.7 0-26.7-12.8-26.7-28.5 0-9.3 4.1-15.8 11.9-27.3 4.6-6.8 9.9-14.7 14.7-24.6 4.8 9.9 10.2 17.8 14.8 24.6 7.8 11.5 11.9 18 11.9 27.3.1 15.7-11.9 28.5-26.6 28.5zm-.3-367.7C411.8 67.4 373.9 32 328 32c-17.8 0-34.8 5.3-49.2 15.2C256.3 17.7 221.5 0 184 0 117.8 0 64 53.8 64 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h304c57.3 0 104-46.7 104-104 0-54.8-42.6-99.8-96.3-103.7zM408 288H104c-39.7 0-72-32.3-72-72 0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8L287 82.1C297.9 70.4 312.4 64 328 64c30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72S447.7 288 408 288z\"]\n};\nvar faCloudRainbow = {\n prefix: 'fal',\n iconName: 'cloud-rainbow',\n icon: [576, 512, [], \"f73e\", \"M568.2 32c4.3-.1 7.8-3.5 7.8-7.9v-16c0-4.5-3.7-8.2-8.2-8.1-140.6 2.9-265.9 80.3-331.7 204.2-16-7.8-33.7-12.2-52.1-12.2-66.2 0-120 53.8-120 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h304c57.3 0 104-46.7 104-104 0-38.8-21.6-72.4-53.1-90.2 25.3-36.1 65.8-59.1 109.5-61.5 4.3-.2 7.7-3.6 7.7-7.9v-16c0-4.5-3.8-8.3-8.3-8.1-56.8 2.7-109 33.6-139.8 82.1-4.1-.8-8.1-1.8-12.4-2.1-2.3-26.3-16.3-49-36.6-63.6 45.6-58.7 114.3-94.3 189.2-96.6 4.3-.1 7.8-3.6 7.8-7.9v-16c0-4.5-3.8-8.3-8.3-8.1-87.1 2.5-166.7 45-218.2 114.8-6.9-1.8-14-3-21.5-3-17.8 0-34.8 5.3-49.2 15.2-4.7-6.2-10.2-11.5-15.9-16.6C322.8 107.2 438.2 34.8 568.2 32zM287 274.1c10.8-11.7 25.4-18.1 41-18.1 30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72s-32.3 72-72 72H104c-39.7 0-72-32.3-72-72 0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8 15.2-16.6z\"]\n};\nvar faCloudShowers = {\n prefix: 'fal',\n iconName: 'cloud-showers',\n icon: [512, 512, [], \"f73f\", \"M415.7 112.3C411.8 67.4 373.9 32 328 32c-17.8 0-34.8 5.3-49.2 15.2C256.3 17.7 221.5 0 184 0 117.8 0 64 53.8 64 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h304c57.3 0 104-46.7 104-104 0-54.8-42.6-99.8-96.3-103.7zM408 288H104c-39.7 0-72-32.3-72-72 0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8L287 82.1C297.9 70.4 312.4 64 328 64c30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72S447.7 288 408 288zM48 368c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16v-80c0-8.8-7.2-16-16-16zm96 32c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16v-80c0-8.8-7.2-16-16-16zm96-32c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16v-80c0-8.8-7.2-16-16-16zm96 32c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16v-80c0-8.8-7.2-16-16-16zm96-32c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16v-80c0-8.8-7.2-16-16-16z\"]\n};\nvar faCloudShowersHeavy = {\n prefix: 'fal',\n iconName: 'cloud-showers-heavy',\n icon: [512, 512, [], \"f740\", \"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.8zm39.8-257.8C411.8 67.4 373.9 32 328 32c-17.8 0-34.8 5.3-49.2 15.2C256.3 17.7 221.5 0 184 0 117.9 0 64 53.8 64 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h304c57.3 0 104-46.7 104-104 0-54.8-42.6-99.8-96.3-103.7zM408 288H104c-39.7 0-72-32.3-72-72 0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8L287 82.1C297.9 70.4 312.4 64 328 64c30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72S447.7 288 408 288z\"]\n};\nvar faCloudSleet = {\n prefix: 'fal',\n iconName: 'cloud-sleet',\n icon: [512, 512, [], \"f741\", \"M87.2 353.7c-7.9-3.9-17.5-.7-21.5 7.2l-64 128c-3.9 7.9-.8 17.5 7.2 21.5 2.3 1.1 4.8 1.7 7.2 1.7 5.8 0 11.5-3.2 14.3-8.8l64-128c3.8-8.1.7-17.7-7.2-21.6zm256 0c-7.9-3.9-17.5-.7-21.5 7.2l-64 128c-3.9 7.9-.8 17.5 7.2 21.5 2.3 1.1 4.8 1.7 7.2 1.7 5.8 0 11.5-3.2 14.3-8.8l64-128c3.8-8.1.7-17.7-7.2-21.6zm151.7 35.4l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V360c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16 27.9-16c3.8-2.2 5.1-7.1 2.9-10.9zm-256 0l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V360c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16 27.9-16c3.8-2.2 5.1-7.1 2.9-10.9zM512 216c0-54.8-42.6-99.8-96.3-103.7C411.8 67.4 373.9 32 328 32c-17.8 0-34.8 5.3-49.2 15.2C256.3 17.7 221.5 0 184 0 117.8 0 64 53.8 64 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h304c57.3 0 104-46.7 104-104zm-480 0c0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8L287 82.1C297.9 70.4 312.4 64 328 64c30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72s-32.3 72-72 72H104c-39.7-.1-72-32.4-72-72.1z\"]\n};\nvar faCloudSnow = {\n prefix: 'fal',\n iconName: 'cloud-snow',\n icon: [512, 512, [], \"f742\", \"M126.9 389.1l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V360c0-4.4-3.6-8-8-8H56c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16L4 432c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16 27.9-16c3.8-2.2 5.1-7.1 2.9-10.9zm384 0l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V360c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16 27.9-16c3.8-2.2 5.1-7.1 2.9-10.9zm-192 32l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V392c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16 27.9-16c3.8-2.2 5.1-7.1 2.9-10.9zM104 320h304c57.3 0 104-46.7 104-104 0-54.8-42.6-99.8-96.3-103.7-4-44.9-41.8-80.3-87.7-80.3-17.8 0-34.8 5.3-49.2 15.2C256.3 17.7 221.5 0 184 0 117.8 0 64 53.8 64 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104zM85.3 146.8l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8L287 82.1C297.9 70.4 312.4 64 328 64c30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72s-32.3 72-72 72H104c-39.7 0-72-32.3-72-72 0-32.4 21.9-60.8 53.3-69.3z\"]\n};\nvar faCloudSun = {\n prefix: 'fal',\n iconName: 'cloud-sun',\n icon: [640, 512, [], \"f6c4\", \"M543.7 304.3C539.8 259.4 502 224 456 224c-17.8 0-34.8 5.3-49.2 15.2-22.5-29.5-57.3-47.2-94.8-47.2-66.2 0-120 53.8-120 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h304c57.3 0 104-46.7 104-104 0-54.8-42.6-99.8-96.3-103.7zM536 480H232c-39.7 0-72-32.3-72-72 0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8 15.2-16.5c10.8-11.7 25.4-18.1 41-18.1 30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72S575.7 480 536 480zM92.6 323l12.5-63.2c1.2-6.3-1.4-12.8-6.8-16.4l-53.5-35.8 53.5-35.8c5.4-3.6 8-10.1 6.8-16.4L92.6 92.1l63.2 12.5c6.4 1.3 12.8-1.5 16.4-6.8L208 44.3l35.8 53.5c3.6 5.3 9.9 8.1 16.4 6.8l63.2-12.5-12.5 63.2c-.3 1.6-.1 3.2 0 4.8.4 0 .7-.1 1.1-.1 10.1 0 20 1.1 29.6 3 .2-.5.5-.9.6-1.5l17.2-86.7c1-5.2-.6-10.6-4.4-14.4s-9.2-5.5-14.4-4.4l-76.2 15.1-43.1-64.4c-6-8.9-20.6-8.9-26.6 0l-43.2 64.5-76.1-15.1c-5.3-1.1-10.7.6-14.4 4.4-3.8 3.8-5.4 9.2-4.4 14.4l15.1 76.2-64.6 43.1c-4.4 3-7.1 8-7.1 13.3s2.7 10.3 7.1 13.3L71.6 264l-15.1 76.2c-1 5.2.6 10.6 4.4 14.4 3 3 7.1 4.7 11.3 4.7 1 0 2.1-.1 3.1-.3l32.8-6.5c6.2-13.8 14.6-26.5 25.1-37.6L92.6 323zM208 149.7c18.5 0 34.8 8.9 45.4 22.4 10.2-4.3 20.8-7.6 31.9-9.6-15.6-26.6-44.2-44.8-77.3-44.8-49.5 0-89.8 40.3-89.8 89.8 0 33 18.1 61.7 44.8 77.3 2-11.1 5.3-21.7 9.6-31.9-13.6-10.6-22.4-26.9-22.4-45.4 0-31.8 25.9-57.8 57.8-57.8z\"]\n};\nvar faCloudSunRain = {\n prefix: 'fal',\n iconName: 'cloud-sun-rain',\n icon: [640, 512, [], \"f743\", \"M298.2 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.4-7.7 1.7-17.4-6-21.8zM192 140c26.4 0 48 20 51.1 45.6 4.8-3.6 9.8-6.9 15.1-9.9 1.5-8.4 3.9-16.5 6.8-24.3-14.3-25.7-41.5-43.4-73-43.4-46.2 0-83.7 37.6-83.7 83.8s37.5 83.8 83.7 83.8c.3 0 .6-.1.9-.1 1.1-11.4 3.7-22.4 7.7-32.8-2.8.5-5.6.9-8.5.9-28.5 0-51.7-23.2-51.7-51.7-.1-28.6 23.1-51.9 51.6-51.9zm-31.7 151.7c-3.6-5.3-9.9-8.1-16.4-6.8l-56 11.1L99 240c1.2-6.4-1.4-12.8-6.8-16.4l-47.4-31.8L92.2 160c5.4-3.6 8-10.1 6.8-16.4l-11.1-56 56 11.1c6.5 1.3 12.8-1.4 16.4-6.8L192 44.4l31.8 47.5c3.6 5.3 10 8.1 16.4 6.8L319.6 83c8.7-1.7 14.3-10.1 12.6-18.8-1.7-8.7-10.3-14.5-18.8-12.6l-68.9 13.6-39.2-58.5c-5.9-8.9-20.6-8.9-26.6 0l-39.1 58.5-69-13.7c-5.3-1.1-10.7.6-14.4 4.4-3.8 3.8-5.4 9.2-4.4 14.5l13.7 69-58.4 39.1c-4.4 3-7.1 7.9-7.1 13.3 0 5.3 2.7 10.3 7.1 13.3l58.4 39.1-13.7 69c-1 5.3.6 10.7 4.4 14.5 3.8 3.8 9 5.5 14.4 4.4l68.9-13.7 39.1 58.5c3.1 4.6 8.2 7.1 13.3 7.1 3.1 0 6.2-.9 8.9-2.7 7.3-4.9 9.3-14.9 4.4-22.2l-44.9-67.4zm329.9 126.4c-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.4-7.7 1.7-17.4-6-21.8zm85.1-220.8C570 158.2 536.5 128 496 128c-8.6 0-17 1.4-25.2 4.3C451.1 109.4 422.6 96 392 96c-56.5 0-102.7 45.3-104 101.6-37.8 13.3-64 49.3-64 90.4 0 52.9 43.1 96 96 96h224c52.9 0 96-43.1 96-96 0-41.3-26.6-77.6-64.7-90.7zM560 208.8zM544 352H320c-35.3 0-64-28.7-64-64 0-30.6 21.8-57 52-62.8l14.5-2.8-2-18c-.2-1.5-.4-2.9-.4-4.4 0-39.7 32.3-72 72-72 24.3 0 46.8 12.2 60.2 32.8l8.1 12.4 13-7.1c32.7-17.8 70.7 8.2 70.8 40.4l-.2 16.2 12.8 2.6c29.8 6 51.3 32.3 51.3 62.7-.1 35.3-28.8 64-64.1 64zm42.2 66.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.4-7.7 1.7-17.4-6-21.8zm-192 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.4-7.7 1.7-17.4-6-21.8z\"]\n};\nvar faCloudUpload = {\n prefix: 'fal',\n iconName: 'cloud-upload',\n icon: [640, 512, [], \"f0ee\", \"M312.5 168.5c-4.7-4.7-12.3-4.7-17 0l-98.3 98.3c-4.7 4.7-4.7 12.3 0 17l5.7 5.7c4.7 4.7 12.3 4.7 17 0l68.2-68.2V372c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V221.3l68.2 68.2c4.7 4.7 12.3 4.7 17 0l5.7-5.7c4.7-4.7 4.7-12.3 0-17l-98.5-98.3zm259.2 70.3c2.8-9.9 4.3-20.2 4.3-30.8 0-61.9-50.1-112-112-112-16.7 0-32.9 3.6-48 10.8-31.6-45-84.3-74.8-144-74.8-94.4 0-171.7 74.5-175.8 168.2C39.2 220.2 0 274.3 0 336c0 79.6 64.4 144 144 144h368c70.7 0 128-57.2 128-128 0-47-25.8-90.8-68.3-113.2zM512 448H144c-61.9 0-112-50.1-112-112 0-56.8 42.2-103.7 97-111-.7-5.6-1-11.3-1-17 0-79.5 64.5-144 144-144 60.3 0 111.9 37 133.4 89.6C420 137.9 440.8 128 464 128c44.2 0 80 35.8 80 80 0 18.5-6.3 35.6-16.9 49.2C573 264.4 608 304.1 608 352c0 53-43 96-96 96z\"]\n};\nvar faCloudUploadAlt = {\n prefix: 'fal',\n iconName: 'cloud-upload-alt',\n icon: [640, 512, [], \"f382\", \"M405.4 232.2l-80-72c-12.2-11-30.6-11-42.8 0l-80 72c-21.7 19.6-7.9 55.8 21.4 55.8h64v84c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-84h64c29.2 0 43.1-36.2 21.4-55.8zM224 256l80-72 80 72H224zm347.7-17.2c2.8-9.9 4.3-20.2 4.3-30.8 0-61.9-50.1-112-112-112-16.7 0-32.9 3.6-48 10.8-31.6-45-84.3-74.8-144-74.8-94.4 0-171.7 74.5-175.8 168.2C39.2 220.2 0 274.3 0 336c0 79.6 64.4 144 144 144h368c70.7 0 128-57.2 128-128 0-47-25.8-90.8-68.3-113.2zM512 448H144c-61.9 0-112-50.1-112-112 0-56.8 42.2-103.7 97-111-.7-5.6-1-11.3-1-17 0-79.5 64.5-144 144-144 60.3 0 111.9 37 133.4 89.6C420 137.9 440.8 128 464 128c44.2 0 80 35.8 80 80 0 18.5-6.3 35.6-16.9 49.2C573 264.4 608 304.1 608 352c0 53-43 96-96 96z\"]\n};\nvar faClouds = {\n prefix: 'fal',\n iconName: 'clouds',\n icon: [640, 512, [], \"f744\", \"M543.7 304.3C539.8 259.4 502 224 456 224c-7.1 0-14 1.1-20.7 2.7 7.9-15.3 12.7-32.4 12.7-50.7 0-61.8-50.2-112-112-112-10.5 0-20.9 1.5-31 4.5C283 27 239.4 0 192 0 130.2 0 78.2 43.9 66.9 103.8c-39.4 11.8-66.9 48-66.9 90 0 52 42.3 94.2 94.2 94.2h100.2c-1.6 7.8-2.4 15.8-2.4 24v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h304c57.3 0 104-46.7 104-104 0-54.8-42.6-99.8-96.3-103.7zM94.2 256C59.9 256 32 228.1 32 193.8c0-30.3 21.8-56 51.8-61.1l12-2 1.2-12.1c5-49.4 45.8-86.6 95-86.6 39.5 0 75.5 25 89.6 62.3l6 16 15.5-7c10.6-4.8 21.7-7.3 32.9-7.3 44.1 0 80 35.9 80 80 0 19.9-7.4 38.1-19.7 52.2-22.2-22.5-52-36.2-84.3-36.2-45.8 0-85.3 26.1-105.5 64H94.2zM536 480H232c-39.7 0-72-32.3-72-72 0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8 15.2-16.5c10.8-11.7 25.4-18.1 41-18.1 30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72S575.7 480 536 480z\"]\n};\nvar faCloudsMoon = {\n prefix: 'fal',\n iconName: 'clouds-moon',\n icon: [640, 512, [], \"f745\", \"M462.6 321.1c-7-37-39.6-65.1-78.6-65.1 0-52.9-43.1-96-96-96h-5.5C269.2 122.2 233 96 192 96s-77.2 26.2-90.5 64H96c-52.9 0-96 43.1-96 96s43.1 96 96 96h40.8c-15.4 17.1-24.8 39.5-24.8 64 0 52.9 43.1 96 96 96h240c52.9 0 96-43.1 96-96 0-48-35.4-87.8-81.4-94.9zM96 320c-35.3 0-64-28.7-64-64s28.7-64 64-64h30.7l2.6-12.8c6-29.7 32.4-51.2 62.7-51.2s56.7 21.5 62.7 51.2l2.6 12.8H288c35.3 0 64 28.7 64 64 0 2.6-.7 5-1 7.4-.4.2-.9.3-1.4.5-17.8-24.7-46.7-39.9-77.6-39.9-52.9 0-96 43.1-96 96H96zm352 160H208c-35.3 0-64-28.7-64-64 0-31 22.2-57.4 52.8-62.8l16.5-2.9-3.6-16.3c-1.1-5-1.7-9.6-1.7-13.9 0-35.3 28.7-64 64-64 24.6 0 47.2 14.5 57.7 37l8.6 18.4 15.8-12.7c8.8-7 19.1-10.7 29.8-10.7 26.5 0 48 21.5 48 48v16h16c35.3 0 64 28.7 64 64S483.3 480 448 480zm189.8-230.6c-3.8-8.1-12-13.3-20.9-13.3h-1.5l-2.9.4c-6.6 1.2-13.2 1.9-19.8 1.9-57.2 0-103.7-46.2-103.7-103.1 0-37 20.1-71.3 52.6-89.6 8.6-4.8 13.1-14.2 11.4-23.9-1.6-9.7-9-17.1-18.7-18.9C524.2.9 513.8 0 503.5 0c-83 0-151.8 59.8-166 138.2 10.9 4.6 21 10.7 30.2 18.1C373.7 86.8 431.9 32 503.5 32h1.9C475 57.4 457 95.2 457 135.3c0 74.5 60.9 135.1 135.7 135.1h1c-23.5 20.5-53.5 32-85.1 33.2 13.1 7.2 24.7 16.6 34.5 27.7 35.7-8.5 67.9-28.4 91.6-57.4 5.8-7 6.9-16.4 3.1-24.5z\"]\n};\nvar faCloudsSun = {\n prefix: 'fal',\n iconName: 'clouds-sun',\n icon: [640, 512, [], \"f746\", \"M640 258.3c0-51.6-40.2-93.5-89.6-93.5h-.5c-16.6-40.7-55.3-69.2-99.4-69.2-46.4 0-86.2 30.1-101.5 74.2-25.3 8.8-45.2 29.1-54.7 54.9-48.3 5-86.3 45.5-86.3 95.1 0 1.8.1 3.7.2 5.6-38 13.2-64.2 49.2-64.2 90.5 0 53 43.1 96.1 96 96.1h240c52.9 0 96-43.1 96-96.1 0-24.7-9.4-47.1-24.8-64.1 49-.5 88.8-42.2 88.8-93.5zM480 480H240c-35.3 0-64-28.7-64-64.1 0-31 22.2-57.5 52.8-62.9l16.5-2.9-3.6-16.3c-1.1-5-1.7-9.6-1.7-13.9 0-35.3 28.7-64.1 64-64.1 24.6 0 47.2 14.5 57.8 37l8.6 18.4 15.8-12.7c8.8-7 19.1-10.7 29.8-10.7 26.5 0 48 21.5 48 48v16h16c35.3 0 64 28.7 64 64.1S515.3 480 480 480zm70.4-160.2h-56.1c-7.5-36.5-39.7-64.1-78.3-64.1-12 0-23.7 2.7-34.4 7.9-13-18-32-30.8-53.2-36.5 9.6-17.3 26.7-29.1 46.7-30.1 5.6-39.3 37-69.4 75.3-69.4 40.3 0 72.9 33.3 75.9 75.5 7.4-3.7 15.3-6.3 24-6.3 31.8 0 57.6 27.5 57.6 61.5.1 34-25.7 61.5-57.5 61.5zm-384.9-7.7c-2.1-1-4.3-1.7-6.6-1.7-1 0-2.1.1-3.1.3l-63.2 12.5 12.5-63.2c1.2-6.3-1.4-12.8-6.8-16.5l-53.5-35.8 53.5-35.8c5.4-3.6 8-10.1 6.8-16.5L92.6 92.2l63.2 12.5c6.5 1.3 12.8-1.5 16.4-6.8L208 44.4 243.8 98c3.6 5.3 9.9 8.1 16.4 6.8l63.2-12.5-12.1 61.2c4.2-2.8 8.4-5.5 13-7.8 7.3-15.7 17.5-29.4 29.3-41.2l5.8-29.5c1-5.2-.6-10.6-4.4-14.4-3.8-3.8-9-5.5-14.4-4.4l-76.2 15.1-43.1-64.6c-6-8.9-20.6-8.9-26.6 0l-43.2 64.6-76.2-15.2c-5.3-1.1-10.6.7-14.4 4.4-3.8 3.8-5.4 9.2-4.4 14.4l15.1 76.3-64.5 43.2c-4.4 3-7.1 8-7.1 13.3C0 213 2.7 218 7.1 221l64.5 43.2-15.1 76.2c-1 5.3.6 10.7 4.4 14.4s9.2 5.4 14.4 4.4l56.3-11.1c8.8-14 20.3-26.3 33.9-36zM208 149.8c28.8 0 52.5 21.2 56.9 48.8 2.4-.8 4.8-1.8 7.3-2.4 5-9 11.2-17.1 18-24.5-13.9-31.7-45.5-53.9-82.2-53.9-49.5 0-89.8 40.3-89.8 89.9 0 39.5 25.7 72.7 61.1 84.8 2.3-10.6 5.9-20.6 10.6-30.1-23-7.6-39.8-29.1-39.8-54.7.1-31.9 26-57.9 57.9-57.9z\"]\n};\nvar faClub = {\n prefix: 'fal',\n iconName: 'club',\n icon: [512, 512, [], \"f327\", \"M256 32c64.9 0 109.1 65.6 85.7 125.4l-16 41c-1.7 4.3 1.9 8.7 6.4 8.1l43.7-5.8c55.4-7.3 103.8 35.7 104.2 90.5.4 51.7-42.8 93.2-94.5 92.7-41-.4-54.6-11.3-87.2-45.2-3.7-3.9-10.3-1.2-10.3 4.2v25c0 40.6 0 52.6 29.1 89.3 7.3 9.2.7 22.7-11 22.7H205.8c-11.7 0-18.3-13.5-11-22.7C224 420.6 224 408.6 224 368v-25c0-5.4-6.6-8.1-10.3-4.2-32.3 33.7-45.9 44.7-87.1 45.2-51.8.5-95-41.1-94.5-92.8.5-54.8 49-97.7 104.2-90.3l43.7 5.8c4.5.6 8-3.9 6.4-8.1l-16-41C146.8 97.5 191.2 32 256 32m0-32c-87.4 0-147.1 88.2-115.5 169.1C65.6 159.2 0 217.6 0 292c0 68.4 55.6 124 124 124 35.5 0 52-8 76-32 0 24-9.7 27.6-30.2 53.4-23.9 30.1-2.4 74.6 36 74.6h100.3c38.5 0 60-44.5 36-74.6-19-24.1-30.1-29.4-30.1-53.4 24 24 48.9 32 76 32 68.4 0 124-55.6 124-124 0-74.5-65.8-132.8-140.5-122.9C403.1 88.4 343.5 0 256 0z\"]\n};\nvar faCocktail = {\n prefix: 'fal',\n iconName: 'cocktail',\n icon: [576, 512, [], \"f561\", \"M391.32 128H24.68c-21.95 0-32.94 26.53-17.42 42.05L192 354.79V480h-53.33c-14.73 0-26.67 11.94-26.67 26.67 0 2.95 2.39 5.33 5.33 5.33h181.33c2.95 0 5.33-2.39 5.33-5.33 0-14.73-11.94-26.67-26.67-26.67H224V354.79l107.7-107.7 22.66-22.66 54.37-54.37c15.52-15.53 4.53-42.06-17.41-42.06zM208 325.53L42.47 160h331.06L208 325.53zM432 0c-62.55 0-114.89 40.23-134.61 96h34.31c17.95-37.68 55.83-64 100.3-64 61.76 0 112 50.24 112 112s-50.24 112-112 112c-18.49 0-35.68-4.93-51.06-12.9l-23.52 23.52C379.23 279.92 404.59 288 432 288c79.53 0 144-64.47 144-144S511.53 0 432 0zm0 192c-.04 0-.08-.01-.13-.01-.2.21-.3.48-.51.69L405.04 219c8.46 3.05 17.46 5 26.96 5 44.12 0 80-35.89 80-80s-35.88-80-80-80c-26.05 0-49.01 12.68-63.62 32H432c26.47 0 48 21.53 48 48s-21.53 48-48 48z\"]\n};\nvar faCode = {\n prefix: 'fal',\n iconName: 'code',\n icon: [576, 512, [], \"f121\", \"M228.5 511.8l-25-7.1c-3.2-.9-5-4.2-4.1-7.4L340.1 4.4c.9-3.2 4.2-5 7.4-4.1l25 7.1c3.2.9 5 4.2 4.1 7.4L235.9 507.6c-.9 3.2-4.3 5.1-7.4 4.2zm-75.6-125.3l18.5-20.9c1.9-2.1 1.6-5.3-.5-7.1L49.9 256l121-102.5c2.1-1.8 2.4-5 .5-7.1l-18.5-20.9c-1.8-2.1-5-2.3-7.1-.4L1.7 252.3c-2.3 2-2.3 5.5 0 7.5L145.8 387c2.1 1.8 5.3 1.6 7.1-.5zm277.3.4l144.1-127.2c2.3-2 2.3-5.5 0-7.5L430.2 125.1c-2.1-1.8-5.2-1.6-7.1.4l-18.5 20.9c-1.9 2.1-1.6 5.3.5 7.1l121 102.5-121 102.5c-2.1 1.8-2.4 5-.5 7.1l18.5 20.9c1.8 2.1 5 2.3 7.1.4z\"]\n};\nvar faCodeBranch = {\n prefix: 'fal',\n iconName: 'code-branch',\n icon: [384, 512, [], \"f126\", \"M384 144c0-44.2-35.8-80-80-80s-80 35.8-80 80c0 39.2 28.2 71.8 65.5 78.7-.8 17.2-5 30.4-12.7 40-17.5 21.8-53.1 25.2-90.7 28.7-28.2 2.6-57.4 5.4-80.4 16.9-3.4 1.7-6.7 3.6-9.7 5.7V158.4c36.5-7.4 64-39.7 64-78.4 0-44.2-35.8-80-80-80S0 35.8 0 80c0 38.7 27.5 71 64 78.4v195.2C27.5 361 0 393.3 0 432c0 44.2 35.8 80 80 80s80-35.8 80-80c0-36.9-24.9-67.9-58.9-77.2 5-9.6 12.3-14.6 19-18 17.5-8.8 42.5-11.2 68.9-13.7 42.6-4 86.7-8.1 112.7-40.5 12.4-15.5 19-35.5 19.8-60.7C357.3 214 384 182.1 384 144zM32 80c0-26.5 21.5-48 48-48s48 21.5 48 48-21.5 48-48 48-48-21.5-48-48zm96 352c0 26.5-21.5 48-48 48s-48-21.5-48-48c0-26.4 21.4-47.9 47.8-48h.6c26.3.2 47.6 21.7 47.6 48zm187.8-241.5L304 192c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48c0 22.4-15.4 41.2-36.2 46.5z\"]\n};\nvar faCodeCommit = {\n prefix: 'fal',\n iconName: 'code-commit',\n icon: [640, 512, [], \"f386\", \"M320 128c34.19 0 66.33 13.31 90.51 37.49S448 221.81 448 256s-13.31 66.33-37.49 90.51S354.19 384 320 384s-66.33-13.31-90.51-37.49S192 290.19 192 256s13.31-66.33 37.49-90.51S285.81 128 320 128m0-32c-88.37 0-160 71.63-160 160s71.63 160 160 160 160-71.63 160-160S408.37 96 320 96zm308 144H511.33c.44 5.3.67 10.63.67 16s-.23 10.7-.67 16H628c6.63 0 12-5.37 12-12v-8c0-6.63-5.37-12-12-12zm-500 16c0-5.37.23-10.7.67-16H12c-6.63 0-12 5.37-12 12v8c0 6.63 5.37 12 12 12h116.67c-.44-5.3-.67-10.63-.67-16z\"]\n};\nvar faCodeMerge = {\n prefix: 'fal',\n iconName: 'code-merge',\n icon: [384, 512, [], \"f387\", \"M304 192c-41.7 0-76 32-79.7 72.8-25.2-1.3-61.6-7.9-88.8-31.7-20.3-17.8-32.8-43-37.5-75.1 35.5-8.2 62-40 62-77.9 0-44.2-35.8-80-80-80S0 35.8 0 80c0 38.7 27.5 71 64 78.4v195.2C27.5 361 0 393.3 0 432c0 44.2 35.8 80 80 80s80-35.8 80-80c0-38.7-27.5-71-64-78.4V237.4c5.5 7.2 11.7 13.9 18.6 19.9C151 289 197.9 296.1 228 297c10.5 31.9 40.5 55 76 55 44.2 0 80-35.8 80-80s-35.8-80-80-80zM32 80c0-26.5 21.5-48 48-48s48 21.5 48 48-21.5 48-48 48-48-21.5-48-48zm96 352c0 26.5-21.5 48-48 48s-48-21.5-48-48 21.5-48 48-48 48 21.5 48 48zm176-112c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z\"]\n};\nvar faCoffee = {\n prefix: 'fal',\n iconName: 'coffee',\n icon: [576, 512, [], \"f0f4\", \"M517.9 448H26.1c-24.5 0-33.1-32-20-32h531.8c13.1 0 4.5 32-20 32zM576 159.1c.5 53.4-42.7 96.9-96 96.9h-32v32c0 53-43 96-96 96H160c-53 0-96-43-96-96V76c0-6.6 5.4-12 12-12h402.8c52.8 0 96.7 42.2 97.2 95.1zM416 96H96v192c0 35.3 28.7 64 64 64h192c35.3 0 64-28.7 64-64V96zm128 64c0-35.3-28.7-64-64-64h-32v128h32c35.3 0 64-28.7 64-64z\"]\n};\nvar faCoffeePot = {\n prefix: 'fal',\n iconName: 'coffee-pot',\n icon: [512, 512, [], \"e002\", \"M431.45,177.65,437.33,160h0L480,32H80A80,80,0,0,0,0,112V216a8,8,0,0,0,8,8H24a8,8,0,0,0,8-8V112A48,48,0,0,1,80,64h26.67l32,96h0l6.05,18.16C95.41,217.9,64,277.69,64,344.62c0,51.47,18.62,84.77,49.64,117.71A57.18,57.18,0,0,0,155.17,480H420.84a57.08,57.08,0,0,0,41.45-17.6c31-32.95,49.69-66.24,49.71-117.72C512,278.37,481.37,217.83,431.45,177.65ZM140.4,64H435.6l-32,96H172.4Zm38.15,128h219.7c21,16.92,54.68,42.08,72.5,96H105.39C123.5,234,158.21,208.39,178.55,192ZM439,440.45A24.92,24.92,0,0,1,420.84,448H155.17a25,25,0,0,1-18.23-7.62C107.1,408.71,96,382.75,96,344.62A178.3,178.3,0,0,1,97.9,320H478.13A180.47,180.47,0,0,1,480,344.67C480,382.79,468.88,408.75,439,440.45Z\"]\n};\nvar faCoffeeTogo = {\n prefix: 'fal',\n iconName: 'coffee-togo',\n icon: [448, 512, [], \"f6c5\", \"M432 64h-16l-23.16-46.31A32 32 0 0 0 364.22 0H83.78a32 32 0 0 0-28.62 17.69L32 64H16C7.16 64 0 71.16 0 80v64c0 8.84 7.16 16 16 16h18.67l26.89 322.66C62.94 499.24 76.8 512 93.44 512h261.11c16.64 0 30.51-12.76 31.89-29.34L413.33 160H432c8.84 0 16-7.16 16-16V80c0-8.84-7.16-16-16-16zm-77.44 416H93.44l-5.33-64h271.78l-5.33 64zm8-96H85.44L74.78 256h298.45l-10.67 128zm13.33-160H72.11l-5.33-64h314.45l-5.34 64zM416 128H32V96h19.78l32-64h280.45l32 64H416v32z\"]\n};\nvar faCoffin = {\n prefix: 'fal',\n iconName: 'coffin',\n icon: [384, 512, [], \"f6c6\", \"M370.62,112.7,271.83,13.47A45.65,45.65,0,0,0,239.38,0H144.62a45.63,45.63,0,0,0-32.47,13.5L13.39,112.7a46.34,46.34,0,0,0-12,43.64L81.2,477.14A45.83,45.83,0,0,0,125.71,512H258.29a45.83,45.83,0,0,0,44.51-34.86l79.85-320.77a46.39,46.39,0,0,0-12-43.67ZM271.73,469.42A13.83,13.83,0,0,1,258.29,480H125.71a13.82,13.82,0,0,1-13.44-10.58L32.42,148.59a14.16,14.16,0,0,1,3.66-13.33l98.73-99.17A13.84,13.84,0,0,1,144.62,32h94.76a13.78,13.78,0,0,1,9.78,4.06l98.76,99.2a14.22,14.22,0,0,1,3.66,13.36l-79.85,320.8Z\"]\n};\nvar faCoffinCross = {\n prefix: 'fal',\n iconName: 'coffin-cross',\n icon: [384, 512, [], \"e051\", \"M370.62 112.7l-98.79-99.23C263.13 4.78 251.6 0 239.38 0h-94.76c-12.22 0-23.75 4.78-32.47 13.5l-98.76 99.2C2.07 124.08-2.52 140.81 1.35 156.34l79.85 320.8c5.1 20.52 23.41 34.86 44.51 34.86h132.58c21.1 0 39.41-14.34 44.51-34.86l79.85-320.77c3.87-15.56-.72-32.29-12.03-43.67zm-98.89 356.72c-1.53 6.23-7.06 10.58-13.44 10.58H125.71c-6.38 0-11.91-4.34-13.44-10.58L32.42 148.59c-1.19-4.75.22-9.86 3.66-13.33l98.73-99.17c2.66-2.64 6.13-4.09 9.81-4.09h94.76c3.69 0 7.16 1.45 9.78 4.06l98.76 99.2c3.44 3.47 4.84 8.58 3.66 13.36l-79.85 320.8zm.28-325.42h-32v-32c0-8.84-7.16-16-16-16H160c-8.84 0-16 7.16-16 16v32h-32c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h32v96c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16v-96h32c8.84 0 16-7.16 16-16v-64c.01-8.84-7.15-16-15.99-16zm-16 64H208v112h-32V208h-48.01v-32H176v-48h32v48h48.01v32z\"]\n};\nvar faCog = {\n prefix: 'fal',\n iconName: 'cog',\n icon: [512, 512, [], \"f013\", \"M482.696 299.276l-32.61-18.827a195.168 195.168 0 0 0 0-48.899l32.61-18.827c9.576-5.528 14.195-16.902 11.046-27.501-11.214-37.749-31.175-71.728-57.535-99.595-7.634-8.07-19.817-9.836-29.437-4.282l-32.562 18.798a194.125 194.125 0 0 0-42.339-24.48V38.049c0-11.13-7.652-20.804-18.484-23.367-37.644-8.909-77.118-8.91-114.77 0-10.831 2.563-18.484 12.236-18.484 23.367v37.614a194.101 194.101 0 0 0-42.339 24.48L105.23 81.345c-9.621-5.554-21.804-3.788-29.437 4.282-26.36 27.867-46.321 61.847-57.535 99.595-3.149 10.599 1.47 21.972 11.046 27.501l32.61 18.827a195.168 195.168 0 0 0 0 48.899l-32.61 18.827c-9.576 5.528-14.195 16.902-11.046 27.501 11.214 37.748 31.175 71.728 57.535 99.595 7.634 8.07 19.817 9.836 29.437 4.283l32.562-18.798a194.08 194.08 0 0 0 42.339 24.479v37.614c0 11.13 7.652 20.804 18.484 23.367 37.645 8.909 77.118 8.91 114.77 0 10.831-2.563 18.484-12.236 18.484-23.367v-37.614a194.138 194.138 0 0 0 42.339-24.479l32.562 18.798c9.62 5.554 21.803 3.788 29.437-4.283 26.36-27.867 46.321-61.847 57.535-99.595 3.149-10.599-1.47-21.972-11.046-27.501zm-65.479 100.461l-46.309-26.74c-26.988 23.071-36.559 28.876-71.039 41.059v53.479a217.145 217.145 0 0 1-87.738 0v-53.479c-33.621-11.879-43.355-17.395-71.039-41.059l-46.309 26.74c-19.71-22.09-34.689-47.989-43.929-75.958l46.329-26.74c-6.535-35.417-6.538-46.644 0-82.079l-46.329-26.74c9.24-27.969 24.22-53.869 43.929-75.969l46.309 26.76c27.377-23.434 37.063-29.065 71.039-41.069V44.464a216.79 216.79 0 0 1 87.738 0v53.479c33.978 12.005 43.665 17.637 71.039 41.069l46.309-26.76c19.709 22.099 34.689 47.999 43.929 75.969l-46.329 26.74c6.536 35.426 6.538 46.644 0 82.079l46.329 26.74c-9.24 27.968-24.219 53.868-43.929 75.957zM256 160c-52.935 0-96 43.065-96 96s43.065 96 96 96 96-43.065 96-96-43.065-96-96-96zm0 160c-35.29 0-64-28.71-64-64s28.71-64 64-64 64 28.71 64 64-28.71 64-64 64z\"]\n};\nvar faCogs = {\n prefix: 'fal',\n iconName: 'cogs',\n icon: [640, 512, [], \"f085\", \"M538.6 196.4l-2.5-3.9c-4.1.3-8.1.3-12.2 0l-2.5 4c-5.8 9.2-17.1 13.4-27.5 10.1-13.8-4.3-23-8.8-34.3-18.1-9-7.4-11.2-20.3-5.4-30.4l2.5-4.3c-2.3-3.4-4.3-6.9-6.1-10.6h-9.1c-11.6 0-21.4-8.2-23.6-19.6-2.6-13.7-2.7-24.2.1-38.5 2.1-11.3 12.1-19.5 23.6-19.5h9c1.8-3.7 3.8-7.2 6.1-10.6l-2.6-4.5c-5.8-10-3.6-22.7 5.2-30.3 10.6-9.1 19.7-14.3 33.5-19 10.8-3.7 22.7.7 28.5 10.6l2.6 4.4c4.1-.3 8.1-.3 12.2 0l2.6-4.4c5.8-9.9 17.7-14.3 28.6-10.5 13.3 4.5 22.3 9.6 33.5 19.1 8.8 7.5 10.9 20.2 5.1 30.2l-2.6 4.4c2.3 3.4 4.3 6.9 6.1 10.6h5.1c11.6 0 21.4 8.2 23.6 19.6 2.6 13.7 2.7 24.2-.1 38.5-2.1 11.3-12.1 19.5-23.6 19.5h-5c-1.8 3.7-3.8 7.2-6.1 10.6l2.5 4.3c5.9 10.2 3.5 23.1-5.5 30.5-10.7 8.8-19.9 13.4-34 17.9-10.5 3.3-21.9-.8-27.7-10.1zm12.2-34.5l10.6 18.3c6.7-2.8 12.9-6.4 18.7-10.8l-10.6-18.3 6.4-7.5c4.8-5.7 8.6-12.1 11-19.1l3.3-9.3h21.1c.9-7.1.9-14.4 0-21.5h-21.1l-3.3-9.3c-2.5-7-6.2-13.4-11-19.1l-6.4-7.5L580 39.4c-5.7-4.4-12-8-18.7-10.8l-10.6 18.3-9.7-1.8c-7.3-1.4-14.8-1.4-22.1 0l-9.7 1.8-10.6-18.3C492 31.3 485.7 35 480 39.4l10.6 18.3-6.4 7.5c-4.8 5.7-8.6 12.1-11 19.1l-3.3 9.3h-21.1c-.9 7.1-.9 14.4 0 21.5h21.1l3.3 9.3c2.5 7 6.2 13.4 11 19.1l6.4 7.5-10.6 18.4c5.7 4.4 12 8 18.7 10.8l10.6-18.3 9.7 1.8c7.3 1.4 14.8 1.4 22.1 0l9.7-1.8zM145.3 454.4v-31.6c-12.9-5.5-25.1-12.6-36.4-21.1l-27.5 15.9c-9.8 5.6-22.1 3.7-29.7-4.6-24.2-26.3-38.5-49.5-50.6-88.1-3.4-10.7 1.1-22.3 10.8-28L39.2 281c-1.7-14-1.7-28.1 0-42.1l-27.3-15.8c-9.7-5.6-14.2-17.3-10.8-28 12.1-38.4 26.2-61.6 50.6-88.1 7.6-8.3 20-10.2 29.7-4.6l27.4 15.9c11.3-8.5 23.5-15.5 36.4-21.1V65.6c0-11.3 7.8-21 18.8-23.4 34.7-7.8 62-8.7 101.7 0 11 2.4 18.9 12.2 18.9 23.4v31.6c12.9 5.5 25.1 12.6 36.4 21l27.4-15.8c9.8-5.6 22.2-3.7 29.8 4.6 26.9 29.6 41.5 55.9 52.1 88.5 3.4 10.5-.8 21.9-10.2 27.7l-25 15.8c1.7 14 1.7 28.1 0 42.1l28.1 17.5c8.6 5.4 13 15.6 10.8 25.5-6.9 31.3-33 64.6-55.9 89.2-7.6 8.2-19.9 10-29.6 4.4L321 401.8c-11.3 8.5-23.5 15.5-36.4 21.1v31.6c0 11.2-7.8 21-18.8 23.4-37.5 8.3-64.9 8.2-101.9 0-10.8-2.5-18.6-12.3-18.6-23.5zm32-6.2c24.8 5 50.5 5 75.3 0v-47.7l10.7-3.8c16.8-5.9 32.3-14.9 45.9-26.5l8.6-7.4 41.4 23.9c16.8-19.1 34-41.3 42.1-65.2l-41.4-23.9 2.1-11.1c3.2-17.6 3.2-35.5 0-53.1l-2.1-11.1 41.4-23.9c-8.1-23.9-25.3-46.2-42.1-65.2l-41.4 23.9-8.6-7.4c-13.6-11.7-29-20.6-45.9-26.5l-10.7-3.8V71.8c-24.8-5-50.5-5-75.3 0v47.7l-10.7 3.8c-16.8 5.9-32.3 14.9-45.9 26.5l-8.6 7.4-41.4-23.9A192.19 192.19 0 0 0 33 198.5l41.4 23.9-2.1 11.1c-3.2 17.6-3.2 35.5 0 53.1l2.1 11.1L33 321.6c8.1 23.9 20.9 46.2 37.7 65.2l41.4-23.9 8.6 7.4c13.6 11.7 29 20.6 45.9 26.5l10.7 3.8v47.6zm38.4-105.3c-45.7 0-82.9-37.2-82.9-82.9s37.2-82.9 82.9-82.9 82.9 37.2 82.9 82.9-37.2 82.9-82.9 82.9zm0-133.8c-28 0-50.9 22.8-50.9 50.9s22.8 50.9 50.9 50.9c28 0 50.9-22.8 50.9-50.9s-22.8-50.9-50.9-50.9zm322.9 291.7l-2.5-3.9c-4.1.3-8.1.3-12.2 0l-2.5 4c-5.8 9.2-17.1 13.4-27.5 10.1-13.8-4.3-23-8.8-34.3-18.1-9-7.4-11.2-20.3-5.4-30.4l2.5-4.3c-2.3-3.4-4.3-6.9-6.1-10.6h-9.1c-11.6 0-21.4-8.2-23.6-19.6-2.6-13.7-2.7-24.2.1-38.5 2.1-11.3 12.1-19.5 23.6-19.5h9c1.8-3.7 3.8-7.2 6.1-10.6l-2.6-4.5c-5.8-10-3.6-22.7 5.2-30.3 10.6-9.1 19.7-14.3 33.5-19 10.8-3.7 22.7.7 28.5 10.6l2.6 4.4c4.1-.3 8.1-.3 12.2 0l2.6-4.4c5.8-9.9 17.7-14.3 28.6-10.5 13.3 4.5 22.3 9.6 33.5 19.1 8.8 7.5 10.9 20.2 5.1 30.2l-2.6 4.4c2.3 3.4 4.3 6.9 6.1 10.6h5.1c11.6 0 21.4 8.2 23.6 19.6 2.6 13.7 2.7 24.2-.1 38.5-2.1 11.3-12.1 19.5-23.6 19.5h-5c-1.8 3.7-3.8 7.2-6.1 10.6l2.5 4.3c5.9 10.2 3.5 23.1-5.5 30.5-10.7 8.8-19.9 13.4-34 17.9-10.5 3.2-21.9-.9-27.7-10.1zm12.2-34.6l10.6 18.3c6.7-2.8 12.9-6.4 18.7-10.8l-10.6-18.3 6.4-7.5c4.8-5.7 8.6-12.1 11-19.1l3.3-9.3h21.1c.9-7.1.9-14.4 0-21.5h-21.1l-3.3-9.3c-2.5-7-6.2-13.4-11-19.1l-6.4-7.5 10.6-18.3c-5.7-4.4-12-8-18.7-10.8l-10.6 18.3-9.7-1.8c-7.3-1.4-14.8-1.4-22.1 0l-9.7 1.8-10.6-18.3c-6.7 2.8-12.9 6.4-18.7 10.8l10.6 18.3-6.4 7.5c-4.8 5.7-8.6 12.1-11 19.1l-3.3 9.3h-21.1c-.9 7.1-.9 14.4 0 21.5h21.1l3.3 9.3c2.5 7 6.2 13.4 11 19.1l6.4 7.5-10.6 18.3c5.7 4.4 12 8 18.7 10.8l10.6-18.3 9.7 1.8c7.3 1.4 14.8 1.4 22.1 0l9.7-1.8zM560 408c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.3 32-32zm0-304.3c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.4 32-32z\"]\n};\nvar faCoin = {\n prefix: 'fal',\n iconName: 'coin',\n icon: [512, 512, [], \"f85c\", \"M256 64C114.67 64 0 128.44 0 208v112c0 70.72 114.67 128 256 128s256-57.28 256-128V208c0-79.56-114.67-144-256-144zM64 366.61C43.69 352 32 335.68 32 320v-42.34A183.65 183.65 0 0 0 64 303zm80 35.32A306.25 306.25 0 0 1 96 385v-64.69a327.39 327.39 0 0 0 48 17zm96 13.68a450 450 0 0 1-64-6.61v-64.27a442.1 442.1 0 0 0 64 6.53zm96-6.61a450 450 0 0 1-64 6.64v-64.38a442.1 442.1 0 0 0 64-6.53zm80-24a306.25 306.25 0 0 1-48 16.9v-64.6a327.39 327.39 0 0 0 48-17zm64-65c0 15.68-11.69 32-32 46.61V303a183.65 183.65 0 0 0 32-25.37zm-224 0c-132 0-224-59-224-112S124 96 256 96s224 59 224 112-92 112-224 112z\"]\n};\nvar faCoins = {\n prefix: 'fal',\n iconName: 'coins',\n icon: [512, 512, [], \"f51e\", \"M336 32c-48.6 0-92.6 9-124.5 23.4-.9.4-51.5 21-51.5 56.6v16.7C76.1 132.2 0 163.4 0 208v192c0 44.2 78.8 80 176 80s176-35.8 176-80v-16.4c89.7-3.7 160-37.9 160-79.6V112c0-37-62.1-80-176-80zm-16 368c0 13.9-50.5 48-144 48S32 413.9 32 400v-50.1c31.8 20.6 84.4 34.1 144 34.1s112.2-13.5 144-34.1V400zm0-96c0 13.9-50.5 48-144 48S32 317.9 32 304v-50.1c31.8 20.6 84.4 34.1 144 34.1s112.2-13.5 144-34.1V304zm-144-48c-81 0-146.7-21.5-146.7-48S95 160 176 160s146.7 21.5 146.7 48S257 256 176 256zm304 48c0 13.1-45 43.6-128 47.3v-64.1c52.8-2.2 99.1-14.6 128-33.3V304zm0-96c0 13.1-45.1 43.4-128 47.2V208c0-5.6-1.7-11-4.1-16.3 54.6-1.7 102.4-14.5 132.1-33.8V208zm-144-48c-7.3 0-14-.5-20.9-.9-36.9-21.7-85-28.2-115.6-30-6.3-5.3-10.1-11-10.1-17.1 0-26.5 65.7-48 146.7-48s146.7 21.5 146.7 48S417 160 336 160z\"]\n};\nvar faColumns = {\n prefix: 'fal',\n iconName: 'columns',\n icon: [512, 512, [], \"f0db\", \"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-48zM240 448H48c-8.837 0-16-7.163-16-16V96h208v352zm240-16c0 8.837-7.163 16-16 16H272V96h208v336z\"]\n};\nvar faComet = {\n prefix: 'fal',\n iconName: 'comet',\n icon: [512, 512, [], \"e003\", \"M236.90992,256.02578,205.6384,192.55713a15.29617,15.29617,0,0,0-27.45706,0l-31.27152,63.46865L77.04451,266.223a15.3143,15.3143,0,0,0-8.46875,26.13668l50.60356,49.33391-12,69.72841a15.3707,15.3707,0,0,0,15.08595,17.9531,14.985,14.985,0,0,0,7.11329-1.81641L191.90987,394.631l62.53131,32.92768A15.26524,15.26524,0,0,0,276.64043,411.422l-11.92775-69.72841,50.5938-49.33391a15.347,15.347,0,0,0-8.53126-26.13668Zm5.46289,62.75772-12.03712,11.73435,2.83594,16.57029,6.22266,36.38081L206.82,366.31663l-14.91017-7.85155-14.91017,7.85155-32.53715,17.13278,6.25392-36.32806L153.57,330.53153l-12.05274-11.75194L115.08362,293.0101l36.4473-5.32031,16.64846-2.42968,7.43555-15.09177,16.29494-33.07222,16.29494,33.07222,7.43555,15.09177,16.64846,2.42968,36.50589,5.32812ZM504.754,7.23124a24.64079,24.64079,0,0,0-24.5-6.20116C447.97068,10.825,371.3749,34.616,312.87484,59.92256c-.8125-2.90624-1.71875-5.5-2.40625-7.90428a31.09684,31.09684,0,0,0-17.72073-19.58981,30.52225,30.52225,0,0,0-26.375,1.18749C223.154,56.11007,116.36877,114.79943,58.05621,173.08255c-77.40828,77.3866-77.40828,203.45086,0,280.83746a198.87425,198.87425,0,0,0,280.91241,0c58.28326-58.28311,116.90832-165.05444,139.50405-208.24578a31.37146,31.37146,0,0,0,1.1875-26.40035,31.034,31.034,0,0,0-19.59572-17.69919c-2.40626-.6875-5-1.5-7.90626-2.39062,25.002-58.18741,49.002-134.96659,58.81451-167.365A24.76358,24.76358,0,0,0,504.754,7.23124Zm-89.2833,195.2497-7.90626,16.90232,18,5.18554c9.68751,2.81249,18.40627,5.40624,24.40628,6.20311-21.81253,41.89447-78.59579,145.37088-133.72085,200.45087-64.877,64.89053-170.69158,64.98428-235.59985,0s-64.90827-170.66185,0-235.53675C135.74575,140.59041,239.24781,83.80729,279.87285,61.51631c2,6.59179,4.59376,15.29295,7.375,24.99215l5.21875,17.99607,16.90823-7.90429c51.375-24.08785,126.28333-48.28508,166.69158-60.67178C463.752,76.30926,439.37692,151.49274,415.47065,202.48094Z\"]\n};\nvar faComment = {\n prefix: 'fal',\n iconName: 'comment',\n icon: [512, 512, [], \"f075\", \"M256 64c123.5 0 224 79 224 176S379.5 416 256 416c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C47.3 313.7 32 277.6 32 240c0-97 100.5-176 224-176m0-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 26 3.8 8.8 12.4 14.5 22 14.5 61.5 0 110-25.7 139.1-46.3 29 9.1 60.2 14.3 93 14.3 141.4 0 256-93.1 256-208S397.4 32 256 32z\"]\n};\nvar faCommentAlt = {\n prefix: 'fal',\n iconName: 'comment-alt',\n icon: [512, 512, [], \"f27a\", \"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-64zm32 352c0 17.6-14.4 32-32 32H293.3l-8.5 6.4L192 460v-76H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h384c17.6 0 32 14.4 32 32v288z\"]\n};\nvar faCommentAltCheck = {\n prefix: 'fal',\n iconName: 'comment-alt-check',\n icon: [512, 512, [], \"f4a2\", \"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-64zm32 352c0 17.6-14.4 32-32 32H293.3l-8.5 6.4L192 460v-76H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h384c17.6 0 32 14.4 32 32v288zM345.3 134.5c-1.6-1.6-3.6-2.3-5.7-2.3-2 0-4.1.8-5.7 2.3L226.5 241.9 178 193.4c-1.6-1.6-3.6-2.3-5.7-2.3-2 0-4.1.8-5.7 2.3l-11.3 11.3c-3.1 3.1-3.1 8.2 0 11.3l65.5 65.5c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3L356.7 157c3.1-3.1 3.1-8.2 0-11.3l-11.4-11.2z\"]\n};\nvar faCommentAltDollar = {\n prefix: 'fal',\n iconName: 'comment-alt-dollar',\n icon: [512, 512, [], \"f650\", \"M448 0H64C28.65 0 0 28.65 0 64v288c0 35.35 28.65 64 64 64h96v83.98c0 7.1 5.83 12.02 12.05 12.02 2.41 0 4.87-.74 7.08-2.37L304 416h144c35.35 0 64-28.65 64-64V64c0-35.35-28.65-64-64-64zm32 352c0 17.64-14.36 32-32 32H293.34l-8.53 6.4L192 459.98V384H64c-17.64 0-32-14.36-32-32V64c0-17.64 14.36-32 32-32h384c17.64 0 32 14.36 32 32v288zM289.94 201.05l-59.06-16.86c-8.75-2.52-14.88-10.61-14.88-19.7 0-11.3 9.19-20.48 20.47-20.48h36.91c8.24 0 16.08 2.56 22.63 7.32 2.99 2.17 7.22 1.46 9.84-1.16l11.42-11.42c3.5-3.5 2.94-9.22-.99-12.23-12.26-9.41-27.18-14.51-42.9-14.51H272V88c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v24h-3.53c-30.59 0-55.13 26.3-52.24 57.48 2.06 22.16 19.06 40.12 40.45 46.22l56.44 16.11c8.75 2.52 14.88 10.61 14.88 19.7 0 11.3-9.19 20.48-20.47 20.48h-36.91c-8.24 0-16.08-2.56-22.63-7.32-2.99-2.17-7.22-1.46-9.84 1.16l-11.42 11.42c-3.5 3.5-2.94 9.21.99 12.23 12.26 9.41 27.18 14.51 42.9 14.51H240v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24h1.36c22.81 0 44.33-13.59 51.72-35.17 10.15-29.64-7.28-59.79-35.14-67.77z\"]\n};\nvar faCommentAltDots = {\n prefix: 'fal',\n iconName: 'comment-alt-dots',\n icon: [512, 512, [], \"f4a3\", \"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-64zm32 352c0 17.6-14.4 32-32 32H293.3l-8.5 6.4L192 460v-76H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h384c17.6 0 32 14.4 32 32v288zM128 184c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm128 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm128 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24z\"]\n};\nvar faCommentAltEdit = {\n prefix: 'fal',\n iconName: 'comment-alt-edit',\n icon: [512, 512, [], \"f4a4\", \"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-64zm32 352c0 17.6-14.4 32-32 32H293.3l-8.5 6.4L192 460v-76H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h384c17.6 0 32 14.4 32 32v288zM336 105.4c-12.5-12.5-32.8-12.5-45.2 0l-126.1 126c-2 2-3.4 4.5-4.2 7.3l-16 61.2c-1.4 5.5.1 11.3 4.2 15.4 3 3 7.1 4.7 11.3 4.7 1.3 0 2.7-.2 4-.5l61.2-16c2.8-.7 5.3-2.2 7.3-4.2l126.1-126.1c12.5-12.5 12.5-32.8 0-45.2L336 105.4zM213 273.6l-30.6 8 8-30.6 75-75 22.6 22.6-75 75zm97.6-97.6L288 153.4l25.4-25.4 22.6 22.6-25.4 25.4z\"]\n};\nvar faCommentAltExclamation = {\n prefix: 'fal',\n iconName: 'comment-alt-exclamation',\n icon: [512, 512, [], \"f4a5\", \"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-64zm32 352c0 17.6-14.4 32-32 32H293.3l-8.5 6.4L192 460v-76H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h384c17.6 0 32 14.4 32 32v288zm-224-88c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm-8.5-24h17c4.2 0 7.7-3.3 8-7.5l7-112c.3-4.6-3.4-8.5-8-8.5h-31c-4.6 0-8.3 3.9-8 8.5l7 112c.3 4.2 3.8 7.5 8 7.5z\"]\n};\nvar faCommentAltLines = {\n prefix: 'fal',\n iconName: 'comment-alt-lines',\n icon: [512, 512, [], \"f4a6\", \"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-64zm32 352c0 17.6-14.4 32-32 32H293.3l-8.5 6.4L192 460v-76H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h384c17.6 0 32 14.4 32 32v288zM280 240H136c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h144c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm96-96H136c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h240c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faCommentAltMedical = {\n prefix: 'fal',\n iconName: 'comment-alt-medical',\n icon: [512, 512, [], \"f7f4\", \"M448 0H64A64 64 0 0 0 0 64v288a64 64 0 0 0 64 64h96v84a12 12 0 0 0 12.05 12 11.84 11.84 0 0 0 7.08-2.37L304 416h144a64 64 0 0 0 64-64V64a64 64 0 0 0-64-64zm32 352a32 32 0 0 1-32 32H293.34l-8.54 6.4L192 460v-76H64a32 32 0 0 1-32-32V64a32 32 0 0 1 32-32h384a32 32 0 0 1 32 32zM344 176h-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 8h56v56a8 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-8z\"]\n};\nvar faCommentAltMinus = {\n prefix: 'fal',\n iconName: 'comment-alt-minus',\n icon: [512, 512, [], \"f4a7\", \"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-64zm32 352c0 17.6-14.4 32-32 32H293.3l-8.5 6.4L192 460v-76H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h384c17.6 0 32 14.4 32 32v288zM344 192H168c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faCommentAltMusic = {\n prefix: 'fal',\n iconName: 'comment-alt-music',\n icon: [512, 512, [], \"f8af\", \"M448 0H64A64.05 64.05 0 0 0 0 64v288a64.05 64.05 0 0 0 64 64h96v84a12 12 0 0 0 12 12 11.35 11.35 0 0 0 7.09-2.41L304 416h144a64.05 64.05 0 0 0 64-64V64a64.05 64.05 0 0 0-64-64zm32 352a32.11 32.11 0 0 1-32 32H293.31l-8.5 6.41L192 460v-76H64a32.11 32.11 0 0 1-32-32V64a32.11 32.11 0 0 1 32-32h384a32.11 32.11 0 0 1 32 32zM331.19 96.75l-128 47.25A16 16 0 0 0 192 159.25V258a69.89 69.89 0 0 0-16-2c-26.5 0-48 14.33-48 32s21.5 32 48 32 48-14.33 48-32V179.16l96-37.52V226a69.89 69.89 0 0 0-16-2c-26.5 0-48 14.33-48 32s21.5 32 48 32 48-14.33 48-32V112a16 16 0 0 0-20.81-15.25z\"]\n};\nvar faCommentAltPlus = {\n prefix: 'fal',\n iconName: 'comment-alt-plus',\n icon: [512, 512, [], \"f4a8\", \"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-64zm32 352c0 17.6-14.4 32-32 32H293.3l-8.5 6.4L192 460v-76H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h384c17.6 0 32 14.4 32 32v288zM344 192h-72v-72c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v72h-72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h72v72c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-72h72c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faCommentAltSlash = {\n prefix: 'fal',\n iconName: 'comment-alt-slash',\n icon: [640, 512, [], \"f4a9\", \"M637 485.2l-96.7-76.1-22.5-17.7-443.2-349-5.2-4.1L23 1.8C19.6-1 14.5-.4 11.8 3l-10 12.5C-1 19-.4 24 3 26.8l61 48L96 100l360.7 284 15.9 12.5L617 510.2c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.2-8.5-1.2-11.3zM368 384h-10.7l-8.5 6.4L256 460v-76H128c-17.6 0-32-14.4-32-32V161.1l-32-25.2V352c0 35.3 28.7 64 64 64h96v84c0 7.1 5.8 12 12 12 2.4 0 4.9-.7 7.1-2.4L368 416h51.7l-40.6-32H368zM512 32c17.6 0 32 14.4 32 32v286.9l28.2 22.2c2.3-6.6 3.8-13.7 3.8-21.1V64c0-35.3-28.7-64-64-64H128c-8.4 0-16.4 1.7-23.7 4.7L139 32h373z\"]\n};\nvar faCommentAltSmile = {\n prefix: 'fal',\n iconName: 'comment-alt-smile',\n icon: [512, 512, [], \"f4aa\", \"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-64zm32 352c0 17.6-14.4 32-32 32H293.3l-8.5 6.4L192 460v-76H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h384c17.6 0 32 14.4 32 32v288zM331.8 237.3C313 259.4 285.4 272 256 272s-57-12.6-75.8-34.6c-5.7-6.7-15.8-7.4-22.5-1.8-6.8 5.8-7.5 15.8-1.8 22.6C180.7 287.3 217.2 304 256 304s75.3-16.7 100.2-45.9c5.8-6.7 4.9-16.8-1.8-22.6-6.7-5.7-16.8-4.9-22.6 1.8zM192 184c13.3 0 24-10.7 24-24s-10.7-24-24-24-24 10.7-24 24 10.7 24 24 24zm128 0c13.3 0 24-10.7 24-24s-10.7-24-24-24-24 10.7-24 24 10.7 24 24 24z\"]\n};\nvar faCommentAltTimes = {\n prefix: 'fal',\n iconName: 'comment-alt-times',\n icon: [512, 512, [], \"f4ab\", \"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-64zm32 352c0 17.6-14.4 32-32 32H293.3l-8.5 6.4L192 460v-76H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h384c17.6 0 32 14.4 32 32v288zM329.5 145.8l-11.3-11.3c-1.6-1.6-3.6-2.3-5.7-2.3s-4.1.8-5.7 2.3L256 185.4l-50.9-50.9c-1.6-1.6-3.6-2.3-5.7-2.3s-4.1.8-5.7 2.3l-11.3 11.3c-3.1 3.1-3.1 8.2 0 11.3l50.9 50.9-50.9 50.9c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l50.9-50.9 50.9 50.9c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-51-50.9 50.9-50.9c3.2-3.1 3.2-8.2 0-11.3z\"]\n};\nvar faCommentCheck = {\n prefix: 'fal',\n iconName: 'comment-check',\n icon: [512, 512, [], \"f4ac\", \"M345.3 166.5c-1.6-1.6-3.6-2.3-5.7-2.3-2 0-4.1.8-5.7 2.3L226.5 273.9 178 225.4c-1.6-1.6-3.6-2.3-5.7-2.3-2 0-4.1.8-5.7 2.3l-11.3 11.3c-3.1 3.1-3.1 8.2 0 11.3l65.5 65.5c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3L356.7 189c3.1-3.1 3.1-8.2 0-11.3l-11.4-11.2zM256 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 384c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C47.3 313.7 32 277.6 32 240c0-97 100.5-176 224-176s224 79 224 176-100.5 176-224 176z\"]\n};\nvar faCommentDollar = {\n prefix: 'fal',\n iconName: 'comment-dollar',\n icon: [512, 512, [], \"f651\", \"M256 32C114.62 32 0 125.12 0 240c0 47.55 19.86 91.23 52.9 126.27C38 405.72 6.97 439.06 6.54 439.5c-6.56 6.95-8.38 17.19-4.59 25.98S14.39 480 23.98 480c61.51 0 110.02-25.72 139.15-46.33C191.95 442.8 223.2 448 256 448c141.38 0 256-93.12 256-208S397.38 32 256 32zm0 384c-28.33 0-56.32-4.32-83.21-12.84l-15.16-4.8-12.99 9.19c-23.02 16.29-58.53 35.34-102.62 39.59 11.99-15.09 29.82-40.44 40.81-69.55l7.07-18.71-13.72-14.55C47.28 313.67 32 277.6 32 240c0-97.05 100.49-176 224-176s224 78.95 224 176-100.49 176-224 176zm33.94-182.95l-59.06-16.86c-8.75-2.52-14.88-10.61-14.88-19.7 0-11.3 9.19-20.48 20.47-20.48h36.91c8.24 0 16.08 2.56 22.63 7.32 2.99 2.17 7.22 1.46 9.84-1.16l11.42-11.42c3.5-3.5 2.94-9.22-.99-12.23-12.26-9.41-27.18-14.51-42.9-14.51H272v-24c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v24h-3.53c-30.59 0-55.13 26.3-52.24 57.48 2.06 22.16 19.06 40.12 40.45 46.22l56.44 16.11c8.75 2.52 14.88 10.61 14.88 19.7 0 11.3-9.19 20.48-20.47 20.48h-36.91c-8.24 0-16.08-2.56-22.63-7.32-2.99-2.17-7.22-1.46-9.84 1.16l-11.42 11.42c-3.5 3.5-2.94 9.21.99 12.23 12.26 9.41 27.18 14.51 42.9 14.51H240v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24h1.36c22.81 0 44.33-13.59 51.72-35.17 10.15-29.65-7.28-59.8-35.14-67.78z\"]\n};\nvar faCommentDots = {\n prefix: 'fal',\n iconName: 'comment-dots',\n icon: [512, 512, [], \"f4ad\", \"M128 216c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm128 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm128 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM256 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 384c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C47.3 313.7 32 277.6 32 240c0-97 100.5-176 224-176s224 79 224 176-100.5 176-224 176z\"]\n};\nvar faCommentEdit = {\n prefix: 'fal',\n iconName: 'comment-edit',\n icon: [512, 512, [], \"f4ae\", \"M336 137.4c-12.5-12.5-32.8-12.5-45.2 0l-126.1 126c-2 2-3.4 4.5-4.2 7.3l-16 61.2c-1.4 5.5.1 11.3 4.2 15.4 3 3 7.1 4.7 11.3 4.7 1.3 0 2.7-.2 4-.5l61.2-16c2.8-.7 5.3-2.2 7.3-4.2l126.1-126.1c12.5-12.5 12.5-32.8 0-45.2L336 137.4zM213 305.6l-30.6 8 8-30.6 75-75 22.6 22.6-75 75zm97.6-97.6L288 185.4l25.4-25.4 22.6 22.6-25.4 25.4zM256 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 384c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C47.3 313.7 32 277.6 32 240c0-97 100.5-176 224-176s224 79 224 176-100.5 176-224 176z\"]\n};\nvar faCommentExclamation = {\n prefix: 'fal',\n iconName: 'comment-exclamation',\n icon: [512, 512, [], \"f4af\", \"M256 296c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm-8.5-24h17c4.2 0 7.7-3.3 8-7.5l7-112c.3-4.6-3.4-8.5-8-8.5h-31c-4.6 0-8.3 3.9-8 8.5l7 112c.3 4.2 3.8 7.5 8 7.5zM256 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 384c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C47.3 313.7 32 277.6 32 240c0-97 100.5-176 224-176s224 79 224 176-100.5 176-224 176z\"]\n};\nvar faCommentLines = {\n prefix: 'fal',\n iconName: 'comment-lines',\n icon: [512, 512, [], \"f4b0\", \"M280 272H136c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h144c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm96-96H136c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h240c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM256 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 384c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C47.3 313.7 32 277.6 32 240c0-97 100.5-176 224-176s224 79 224 176-100.5 176-224 176z\"]\n};\nvar faCommentMedical = {\n prefix: 'fal',\n iconName: 'comment-medical',\n icon: [512, 512, [], \"f7f5\", \"M344 208h-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 8h56v56a8 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-8zM256 32C114.62 32 0 125.12 0 240c0 47.55 19.86 91.23 52.9 126.27C38 405.72 7 439.06 6.54 439.5A24 24 0 0 0 24 480c61.51 0 110-25.72 139.15-46.33A307.33 307.33 0 0 0 256 448c141.38 0 256-93.12 256-208S397.38 32 256 32zm0 384a275.11 275.11 0 0 1-83.21-12.84l-15.16-4.8-13 9.18c-23 16.29-58.53 35.34-102.63 39.59 12-15.13 29.84-40.44 40.84-69.55l7.06-18.71-13.72-14.56C47.28 313.67 32 277.6 32 240c0-97 100.49-176 224-176s224 79 224 176-100.49 176-224 176z\"]\n};\nvar faCommentMinus = {\n prefix: 'fal',\n iconName: 'comment-minus',\n icon: [512, 512, [], \"f4b1\", \"M344 224H168c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM256 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 384c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C47.3 313.7 32 277.6 32 240c0-97 100.5-176 224-176s224 79 224 176-100.5 176-224 176z\"]\n};\nvar faCommentMusic = {\n prefix: 'fal',\n iconName: 'comment-music',\n icon: [512, 512, [], \"f8b0\", \"M256 32C114.64 32 .07 125.09.07 240 .07 287.59 20 331.2 53 366.3c-14.91 39.4-45.9 72.79-46.4 73.2A24 24 0 0 0 24 480c61.49 0 110-25.7 139.07-46.3A309.89 309.89 0 0 0 256 448c141.39 0 256-93.09 256-208S397.42 32 256 32zm0 384a275.44 275.44 0 0 1-83.17-12.8l-15.22-4.79-13 9.18c-23 16.32-58.49 35.32-102.58 39.61 12-15.11 29.81-40.4 40.81-69.61L90 358.91 76.24 344.3C47.37 313.7 32.06 277.59 32.06 240c0-97 100.49-176 224-176s224 79 224 176S379.52 416 256 416zm75.18-287.25L203.23 176A16 16 0 0 0 192 191.25V290a69.82 69.82 0 0 0-16-2c-26.49 0-48 14.33-48 32s21.5 32 48 32 48-14.33 48-32V211.16l96-37.52V258a69.8 69.8 0 0 0-16-2c-26.5 0-48 14.33-48 32s21.5 32 48 32 48-14.33 48-32V144a16 16 0 0 0-20.79-15.25z\"]\n};\nvar faCommentPlus = {\n prefix: 'fal',\n iconName: 'comment-plus',\n icon: [512, 512, [], \"f4b2\", \"M344 224h-72v-72c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v72h-72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h72v72c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-72h72c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM256 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 384c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C47.3 313.7 32 277.6 32 240c0-97 100.5-176 224-176s224 79 224 176-100.5 176-224 176z\"]\n};\nvar faCommentSlash = {\n prefix: 'fal',\n iconName: 'comment-slash',\n icon: [640, 512, [], \"f4b3\", \"M320 64c123.5 0 224 79 224 176 0 31.8-11 61.6-29.9 87.4l25 19.7C562.4 315.8 576 279.2 576 240c0-114.9-114.6-208-256-208-51.2 0-98.7 12.3-138.7 33.3l27.8 21.9C241.9 72.5 279.7 64 320 64zm317 421.2L164.8 113.4 138.9 93 23 1.8C19.6-1 14.5-.4 11.8 3l-10 12.5C-1 19-.4 24 3 26.8l112.5 88.6 25.1 19.8 476.4 375c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.2-8.5-1.2-11.3zM320 416c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C111.3 313.7 96 277.6 96 240c0-23.3 5.9-45.6 16.5-66l-25.4-20C72.4 180.3 64 209.3 64 240c0 47.6 19.9 91.2 52.9 126.3-14.9 39.4-45.9 72.8-46.4 73.2-6.6 7-8.4 17.2-4.6 26S78.4 480 88 480c61.5 0 110-25.7 139.1-46.3C256 442.8 287.2 448 320 448c40.6 0 78.9-7.9 113-21.6l-29.5-23.2c-25.9 8.2-54 12.8-83.5 12.8z\"]\n};\nvar faCommentSmile = {\n prefix: 'fal',\n iconName: 'comment-smile',\n icon: [512, 512, [], \"f4b4\", \"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 384c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C47.3 313.7 32 277.6 32 240c0-97 100.5-176 224-176s224 79 224 176-100.5 176-224 176zm75.8-130.7C313 307.4 285.4 320 256 320s-57-12.6-75.8-34.6c-5.7-6.7-15.8-7.4-22.5-1.8-6.8 5.8-7.5 15.8-1.8 22.6C180.7 335.3 217.2 352 256 352s75.3-16.7 100.2-45.9c5.8-6.7 4.9-16.8-1.8-22.6-6.7-5.7-16.8-4.9-22.6 1.8zM192 216c13.3 0 24-10.7 24-24s-10.7-24-24-24-24 10.7-24 24 10.7 24 24 24zm128 0c13.3 0 24-10.7 24-24s-10.7-24-24-24-24 10.7-24 24 10.7 24 24 24z\"]\n};\nvar faCommentTimes = {\n prefix: 'fal',\n iconName: 'comment-times',\n icon: [512, 512, [], \"f4b5\", \"M329.5 177.8l-11.3-11.3c-1.6-1.6-3.6-2.3-5.7-2.3s-4.1.8-5.7 2.3L256 217.4l-50.9-50.9c-1.6-1.6-3.6-2.3-5.7-2.3s-4.1.8-5.7 2.3l-11.3 11.3c-3.1 3.1-3.1 8.2 0 11.3l50.9 50.9-50.9 50.9c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l50.9-50.9 50.9 50.9c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-51-50.9 50.9-50.9c3.2-3.1 3.2-8.2 0-11.3zM256 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 384c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C47.3 313.7 32 277.6 32 240c0-97 100.5-176 224-176s224 79 224 176-100.5 176-224 176z\"]\n};\nvar faComments = {\n prefix: 'fal',\n iconName: 'comments',\n icon: [576, 512, [], \"f086\", \"M569.9 441.1c-.5-.4-22.6-24.2-37.9-54.9 27.5-27.1 44-61.1 44-98.2 0-80-76.5-146.1-176.2-157.9C368.4 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.1 2.1 18.4 3.7 28 4.8 31.5 57.5 105.5 98 191.8 98 20.8 0 40.8-2.4 59.8-6.8 28.5 18.5 71.6 38.8 125.2 38.8 9.2 0 17.5-5.5 21.2-14 3.6-8.5 1.9-18.3-4.4-25zM155.4 314l-13.2-3-11.4 7.4c-20.1 13.1-50.5 28.2-87.7 32.5 8.8-11.3 20.2-27.6 29.5-46.4L83 283.7l-16.5-16.3C50.7 251.9 32 226.2 32 192c0-70.6 79-128 176-128s176 57.4 176 128-79 128-176 128c-17.7 0-35.4-2-52.6-6zm289.8 100.4l-11.4-7.4-13.2 3.1c-17.2 4-34.9 6-52.6 6-65.1 0-122-25.9-152.4-64.3C326.9 348.6 416 278.4 416 192c0-9.5-1.3-18.7-3.3-27.7C488.1 178.8 544 228.7 544 288c0 34.2-18.7 59.9-34.5 75.4L493 379.7l10.3 20.7c9.4 18.9 20.8 35.2 29.5 46.4-37.1-4.2-67.5-19.4-87.6-32.4z\"]\n};\nvar faCommentsAlt = {\n prefix: 'fal',\n iconName: 'comments-alt',\n icon: [576, 512, [], \"f4b6\", \"M512 160h-96V64c0-35.3-28.7-64-64-64H64C28.7 0 0 28.7 0 64v160c0 35.3 28.7 64 64 64h32v52c0 7.1 5.8 12 12 12 2.4 0 4.9-.7 7.1-2.4l76.9-43.5V384c0 35.3 28.7 64 64 64h96l108.9 61.6c2.2 1.6 4.7 2.4 7.1 2.4 6.2 0 12-4.9 12-12v-52h32c35.3 0 64-28.7 64-64V224c0-35.3-28.7-64-64-64zM64 256c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h288c17.6 0 32 14.4 32 32v160c0 17.6-14.4 32-32 32H215.6l-7.3 4.2-80.3 45.4V256zm480 128c0 17.6-14.4 32-32 32h-64v49.6l-80.2-45.4-7.3-4.2H256c-17.6 0-32-14.4-32-32v-96h128c35.3 0 64-28.7 64-64v-32h96c17.6 0 32 14.4 32 32z\"]\n};\nvar faCommentsAltDollar = {\n prefix: 'fal',\n iconName: 'comments-alt-dollar',\n icon: [576, 512, [], \"f652\", \"M224 234.6c21.85-1.29 39.38-19.62 39.38-42.46 0-18.98-12.34-35.94-30-41.23l-41.56-12.47c-4.22-1.27-7.19-5.62-7.19-10.58 0-6.03 4.34-10.94 9.66-10.94h25.94c3.9 0 7.65 1.08 10.96 3.1 3.17 1.93 7.31 1.15 10-1.4l11.44-10.87c3.53-3.36 3.38-9.22-.54-12.11-8.18-6.03-17.97-9.58-28.08-10.32V72c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v13.4c-21.85 1.29-39.38 19.62-39.38 42.46 0 18.98 12.34 35.94 30 41.23l41.56 12.47c4.22 1.27 7.19 5.62 7.19 10.58 0 6.03-4.34 10.94-9.66 10.94h-25.94c-3.9 0-7.65-1.08-10.96-3.1-3.17-1.94-7.31-1.15-10 1.4l-11.44 10.87c-3.53 3.36-3.38 9.22.54 12.11 8.18 6.03 17.97 9.58 28.08 10.32V248c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-13.4zM512 160h-96V64c0-35.35-28.65-64-64-64H64C28.65 0 0 28.65 0 64v192c0 35.35 28.65 64 64 64h32v51.98c0 7.1 5.83 12.02 12.05 12.02 2.41 0 4.87-.74 7.08-2.37L192 338.12V384c0 35.35 28.65 64 64 64h96l108.87 61.63c2.21 1.63 4.68 2.37 7.08 2.37 6.22 0 12.05-4.92 12.05-12.02V448h32c35.35 0 64-28.65 64-64V224c0-35.35-28.65-64-64-64zM128 337.57V288H64c-17.64 0-32-14.36-32-32V64c0-17.64 14.36-32 32-32h288c17.64 0 32 14.36 32 32v192c0 17.64-14.36 32-32 32H215.57L128 337.57zM544 384c0 17.64-14.36 32-32 32h-64v49.57L360.43 416H256c-17.64 0-32-14.36-32-32v-64h128c35.35 0 64-28.65 64-64v-64h96c17.64 0 32 14.36 32 32v160z\"]\n};\nvar faCommentsDollar = {\n prefix: 'fal',\n iconName: 'comments-dollar',\n icon: [576, 512, [], \"f653\", \"M532.01 386.17C559.48 359.05 576 325.04 576 288c0-80.02-76.45-146.13-176.18-157.94 0 .01.01.02.01.03C368.37 72.47 294.34 32 208 32 93.12 32 0 103.63 0 192c0 37.04 16.52 71.05 43.99 98.17-15.3 30.74-37.34 54.53-37.7 54.89-6.31 6.69-8.05 16.53-4.42 24.99A23.085 23.085 0 0 0 23.06 384c53.54 0 96.67-20.24 125.17-38.78 9.08 2.09 18.45 3.68 28 4.82C207.74 407.59 281.73 448 368 448c20.79 0 40.83-2.41 59.77-6.78C456.27 459.76 499.4 480 552.94 480c9.22 0 17.55-5.5 21.18-13.96 3.64-8.46 1.89-18.3-4.42-24.99-.35-.36-22.39-24.14-37.69-54.88zm-376.59-72.13l-13.24-3.05-11.39 7.41c-20.07 13.06-50.49 28.25-87.68 32.47 8.77-11.3 20.17-27.61 29.54-46.44l10.32-20.75-16.49-16.28C50.75 251.87 32 226.19 32 192c0-70.58 78.95-128 176-128s176 57.42 176 128-78.95 128-176 128c-17.73 0-35.42-2.01-52.58-5.96zm289.8 100.35l-11.39-7.41-13.24 3.05A234.318 234.318 0 0 1 368 416c-65.14 0-122-25.94-152.43-64.29C326.91 348.62 416 278.4 416 192c0-9.45-1.27-18.66-3.32-27.66C488.12 178.78 544 228.67 544 288c0 34.19-18.75 59.87-34.47 75.39l-16.49 16.28 10.32 20.75c9.38 18.86 20.81 35.19 29.53 46.44-37.19-4.22-67.6-19.41-87.67-32.47zM233.38 182.91l-41.56-12.47c-4.22-1.27-7.19-5.62-7.19-10.58 0-6.03 4.34-10.94 9.66-10.94h25.94c3.9 0 7.65 1.08 10.96 3.1 3.17 1.93 7.31 1.15 10-1.4l11.44-10.87c3.53-3.36 3.38-9.22-.54-12.11-8.18-6.03-17.97-9.58-28.08-10.32V104c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v13.4c-21.85 1.29-39.38 19.62-39.38 42.46 0 18.98 12.34 35.94 30 41.23l41.56 12.47c4.22 1.27 7.19 5.62 7.19 10.58 0 6.03-4.34 10.94-9.66 10.94h-25.94c-3.9 0-7.65-1.08-10.96-3.1-3.17-1.94-7.31-1.15-10 1.4l-11.44 10.87c-3.53 3.36-3.38 9.22.54 12.11 8.18 6.03 17.97 9.58 28.08 10.32V280c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-13.4c21.85-1.29 39.38-19.62 39.38-42.46 0-18.98-12.35-35.94-30-41.23z\"]\n};\nvar faCompactDisc = {\n prefix: 'fal',\n iconName: 'compact-disc',\n icon: [496, 512, [], \"f51f\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm0-312c-53 0-96 43-96 96s43 96 96 96 96-43 96-96-43-96-96-96zm0 160c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm0-88c-13.2 0-24 10.8-24 24s10.8 24 24 24 24-10.8 24-24-10.8-24-24-24zm-8-144c-88.2 0-160 71.8-160 160h32c0-70.6 57.4-128 128-128V88z\"]\n};\nvar faCompass = {\n prefix: 'fal',\n iconName: 'compass',\n icon: [496, 512, [], \"f14e\", \"M264.97 272.97c9.38-9.37 9.38-24.57 0-33.94-9.37-9.37-24.57-9.37-33.94 0-9.38 9.37-9.38 24.57 0 33.94 9.37 9.37 24.57 9.37 33.94 0zM351.44 125c-2.26 0-4.51.37-6.71 1.16l-154.9 55.85c-7.49 2.7-13.1 8.31-15.8 15.8l-55.85 154.91c-5.65 15.67 10.33 34.27 26.4 34.27 2.26 0 4.51-.37 6.71-1.16l154.9-55.85c7.49-2.7 13.1-8.31 15.8-15.8l55.85-154.9c5.64-15.67-10.33-34.28-26.4-34.28zm-58.65 175.79l-140.1 50.51 50.51-140.11 140.11-50.51-50.52 140.11zM248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216z\"]\n};\nvar faCompassSlash = {\n prefix: 'fal',\n iconName: 'compass-slash',\n icon: [640, 512, [], \"f5e9\", \"M322 474.1c-58 0-114.6-23.3-155.2-63.9C126.5 370 104.3 315.6 104 257c-.1-33.2 7.1-65 20.5-93.9l-25.8-20.3c-47.4 94.3-31.2 213.4 45.4 290 48.4 48.4 113.1 73.3 177.9 73.3 57.6 0 115.1-20 161.2-60.5l-25.5-20C420 457 372.5 474.1 322 474.1zm89.1-207.4l38.7-107.4c5.6-15.7-10.3-34.3-26.4-34.3-2.3 0-4.5.4-6.7 1.2l-126.2 45.5 29.6 23.3 95.2-34.3-30.7 85.1zM317.3 40c58.2 0 113.2 23 154.9 64.7 66 66 80.4 164.1 43.7 244.4l25.8 20.3C587.9 276 572.4 159.6 494.8 82 445.6 32.9 381.4 8 317.3 8 260.5 8 203.9 27.8 158 67.3l25.5 20.1C221.4 56.7 268 40 317.3 40zm-88.4 205.3l-38.7 107.4c-5.7 15.7 10.3 34.3 26.4 34.3 2.3 0 4.5-.4 6.7-1.2l126.2-45.5-29.6-23.3-95.2 34.3 30.7-85.1zM637 485.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3z\"]\n};\nvar faCompress = {\n prefix: 'fal',\n iconName: 'compress',\n icon: [448, 512, [], \"f066\", \"M436 192H312c-13.3 0-24-10.7-24-24V44c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v116h116c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12zm-276-24V44c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v116H12c-6.6 0-12 5.4-12 12v8c0 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 12v8c0 6.6 5.4 12 12 12h116v116c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12zm160 0V352h116c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12H312c-13.3 0-24 10.7-24 24v124c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12z\"]\n};\nvar faCompressAlt = {\n prefix: 'fal',\n iconName: 'compress-alt',\n icon: [448, 512, [], \"f422\", \"M9.171 476.485l-5.656-5.656c-4.686-4.686-4.686-12.284 0-16.971L169.373 288H108c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h100c8.837 0 16 7.163 16 16v100c0 6.627-5.373 12-12 12h-8c-6.627 0-12-5.373-12-12v-61.373L26.142 476.485c-4.687 4.687-12.285 4.687-16.971 0zM240 256h100c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12h-61.373L444.485 58.142c4.686-4.686 4.686-12.284 0-16.971l-5.656-5.656c-4.686-4.686-12.284-4.686-16.971 0L256 201.373V140c0-6.627-5.373-12-12-12h-8c-6.627 0-12 5.373-12 12v100c0 8.837 7.163 16 16 16z\"]\n};\nvar faCompressArrowsAlt = {\n prefix: 'fal',\n iconName: 'compress-arrows-alt',\n icon: [512, 512, [], \"f78c\", \"M312 224h112c21.4 0 32.1-25.9 17-41l-44.7-44.7L509.7 25c3.1-3.1 3.1-8.2 0-11.3L498.3 2.3c-3.1-3.1-8.2-3.1-11.3 0L373.6 115.7 329 71.1c-4.9-4.9-10.9-7.1-16.8-7.1-12.3 0-24.2 9.6-24.2 24.1v112c0 13.2 10.7 23.9 24 23.9zm8-116.7l84.7 84.7H320v-84.7zm76.3 266.3l44.7-44.7c4.9-4.9 7.1-10.9 7.1-16.8 0-12.3-9.6-24.2-24.1-24.2H312c-13.3 0-24 10.7-24 24v112c0 21.4 25.9 32.1 41 17l44.7-44.7L487 509.7c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3L396.3 373.6zM320 404.7V320h84.7L320 404.7zM200 288H88c-21.4 0-32.1 25.9-17 41l44.7 44.7L2.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 0l113.4-113.4 44.7 44.7c4.9 4.9 10.9 7.1 16.8 7.1 12.3 0 24.2-9.6 24.2-24.1V312c0-13.3-10.7-24-24-24zm-8 116.7L107.3 320H192v84.7zm-9-333.6l-44.7 44.7L25 2.3c-3.1-3.1-8.2-3.1-11.3 0L2.3 13.7c-3.1 3.1-3.1 8.2 0 11.3l113.4 113.4L71.1 183c-4.9 4.9-7.1 10.9-7.1 16.8 0 12.3 9.6 24.2 24.1 24.2h112c13.3 0 24-10.7 24-24V88c-.1-21.3-26-32-41.1-16.9zm9 120.9h-84.7l84.7-84.7V192z\"]\n};\nvar faCompressWide = {\n prefix: 'fal',\n iconName: 'compress-wide',\n icon: [512, 512, [], \"f326\", \"M500 224H376c-13.3 0-24-10.7-24-24V76c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v116h116c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12zm-340-24V76c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v116H12c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24zm0 236V312c0-13.3-10.7-24-24-24H12c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h116v116c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12zm224 0V320h116c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12H376c-13.3 0-24 10.7-24 24v124c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12z\"]\n};\nvar faComputerClassic = {\n prefix: 'fal',\n iconName: 'computer-classic',\n icon: [448, 512, [], \"f8b1\", \"M376 320H232a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h144a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM416 0H32A32 32 0 0 0 0 32v400a16 16 0 0 0 16 16h16v48a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-48h16a16 16 0 0 0 16-16V32a32 32 0 0 0-32-32zm-32 480H64v-32h320zm32-64H32V32h384zM96 256h256a32 32 0 0 0 32-32V96a32 32 0 0 0-32-32H96a32 32 0 0 0-32 32v128a32 32 0 0 0 32 32zm0-160h256v128H96zM80 356a20 20 0 1 0-20-20 20 20 0 0 0 20 20z\"]\n};\nvar faComputerSpeaker = {\n prefix: 'fal',\n iconName: 'computer-speaker',\n icon: [640, 512, [], \"f8b2\", \"M480 192a48 48 0 1 0-48-48 48 48 0 0 0 48 48zm0-64a16 16 0 1 1-16 16 16 16 0 0 1 16-16zm0 96a96 96 0 1 0 96 96 96.1 96.1 0 0 0-96-96zm0 160a64 64 0 1 1 64-64 64.08 64.08 0 0 1-64 64zm0-88a24 24 0 1 0 24 24 24 24 0 0 0-24-24zM592 32H368a48 48 0 0 0-48 48v352a48 48 0 0 0 48 48h224a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48zm16 400a16 16 0 0 1-16 16H368a16 16 0 0 1-16-16V80a16 16 0 0 1 16-16h224a16 16 0 0 1 16 16zm-504 16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h200.41a79.15 79.15 0 0 1-14.79-32zM0 64v288a32 32 0 0 0 32 32h256v-32H32V64h257.62a79.15 79.15 0 0 1 14.79-32H32A32 32 0 0 0 0 64z\"]\n};\nvar faConciergeBell = {\n prefix: 'fal',\n iconName: 'concierge-bell',\n icon: [512, 512, [], \"f562\", \"M504 416h-24v-64c0-118.31-91.79-214.96-208-223.19V96h40c4.42 0 8-3.58 8-8V72c0-4.42-3.58-8-8-8H200c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h40v32.81C123.79 137.04 32 233.69 32 352v64H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h496c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-56 0H64v-64c0-100.17 78.3-184.19 178.26-191.27 16.87-1.19 10.33-1.21 27.48 0C369.7 167.81 448 251.83 448 352v64z\"]\n};\nvar faConstruction = {\n prefix: 'fal',\n iconName: 'construction',\n icon: [640, 512, [], \"f85d\", \"M289.38 372l-83-53.81-29.75 109.4a16 16 0 0 0 11.23 19.69 15.75 15.75 0 0 0 4.22.56A16 16 0 0 0 207.45 436l18.25-67.06 46.31 30v32.85a16 16 0 1 0 32 0v-32.85A32 32 0 0 0 289.38 372zM308 215.22a28.08 28.08 0 1 0-28-28.07 28 28 0 0 0 28 28.07zm168.87 117.17a10.92 10.92 0 0 0-8.4-6.13 16.3 16.3 0 0 0-5-1.23h-.07a1400.59 1400.59 0 0 0-7.31 1.76 15.78 15.78 0 0 0-6 5.35l-28.34 42.44-79.45-49-10.55-52.87c-3.72-18.66-18.11-33.4-35.56-37.24l-24.57-7.3a47.44 47.44 0 0 0-10.45-1.17 48 48 0 0 0-38.35 19.27l-11.6 15.53a16.07 16.07 0 0 0 4.4 23.28l103.94 64.14a.6.6 0 0 0 .11.06l70.65 43.6H369a19.14 19.14 0 0 0-18.21 12.54L336 447.83h185.49A16 16 0 0 0 535 423.12zm-229.53-65.46l1.09-1.47a16 16 0 0 1 12.74-6.46 14.86 14.86 0 0 1 2.66.23l23.3 6.92 1.11.33 1.13.25c5.21 1.15 9.86 6.27 11 12.19l4.72 23.62zm185.45 148.82l3.38-5.07 27-40.37 29.08 45.44zm199.51 22.74L361.43 20.91C343.37-7 296.63-7 278.57 20.91L7.7 438.49a46.38 46.38 0 0 0-1.94 48A49.12 49.12 0 0 0 49.13 512h541.74a49.12 49.12 0 0 0 43.37-25.54 46.38 46.38 0 0 0-1.94-47.97zm-26.18 32.67a17 17 0 0 1-15.25 8.76H49.13a17 17 0 0 1-15.25-8.76 14.59 14.59 0 0 1 .63-15.16L305.38 38.4a17.78 17.78 0 0 1 29.24 0L605.49 456a14.59 14.59 0 0 1 .63 15.16z\"]\n};\nvar faContainerStorage = {\n prefix: 'fal',\n iconName: 'container-storage',\n icon: [640, 512, [], \"f4b7\", \"M632 64c4.4 0 8-3.6 8-8V40c0-4.4-3.6-8-8-8H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h8v384H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h624c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-8V64h8zm-40 384H48V64h544v384zm-472-64h16c4.4 0 8-3.6 8-8V136c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8zm96 0h16c4.4 0 8-3.6 8-8V136c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8zm96 0h16c4.4 0 8-3.6 8-8V136c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8zm96 0h16c4.4 0 8-3.6 8-8V136c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8zm96 0h16c4.4 0 8-3.6 8-8V136c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8z\"]\n};\nvar faConveyorBelt = {\n prefix: 'fal',\n iconName: 'conveyor-belt',\n icon: [640, 512, [], \"f46e\", \"M544 320H96c-53 0-96 43-96 96s43 96 96 96h448c53 0 96-43 96-96s-43-96-96-96zm0 160H96c-35.3 0-64-28.7-64-64s28.7-64 64-64h448c35.3 0 64 28.7 64 64s-28.7 64-64 64zM144 368c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm352-64c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm-176-64c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zM144 288h352c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H144c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16zM288 32h64v76.2l-32-16-32 16V32zm-128 0h96v128l64-32 64 32V32h96v224H160V32z\"]\n};\nvar faConveyorBeltAlt = {\n prefix: 'fal',\n iconName: 'conveyor-belt-alt',\n icon: [640, 512, [], \"f46f\", \"M544 320H96c-53 0-96 43-96 96s43 96 96 96h448c53 0 96-43 96-96s-43-96-96-96zm0 160H96c-35.3 0-64-28.7-64-64s28.7-64 64-64h448c35.3 0 64 28.7 64 64s-28.7 64-64 64zM144 368c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm352-64c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm-176-64c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zM112 288h416c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16H384V16c0-8.8-7.2-16-16-16H112c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16zM384 96h128v160H384V96zM128 32h224v224H128V32z\"]\n};\nvar faCookie = {\n prefix: 'fal',\n iconName: 'cookie',\n icon: [512, 512, [], \"f563\", \"M352 328c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm-8-200c0-13.26-10.75-24-24-24s-24 10.74-24 24c0 13.25 10.75 24 24 24s24-10.75 24-24zm-160 64c0-13.26-10.75-24-24-24s-24 10.74-24 24c0 13.25 10.75 24 24 24s24-10.75 24-24zm8 136c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm96-96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm222.37 22.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.15C250.11.54 243.22 0 236.34 0c-20.72 0-41.25 4.88-59.89 14.38l-69.12 35.21a132.25 132.25 0 0 0-57.79 57.8l-35.1 68.87A132.602 132.602 0 0 0 1.62 257.2l12.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.14c6.86 1.09 13.75 1.62 20.63 1.62 20.72 0 41.25-4.88 59.88-14.38l69.12-35.21a132.302 132.302 0 0 0 57.79-57.8l35.1-68.87a132.56 132.56 0 0 0 12.82-80.93zm-41.33 66.41l-35.1 68.88c-9.68 19-24.83 34.15-43.8 43.82l-69.12 35.21c-13.98 7.13-29.67 10.89-45.36 10.89-5.21 0-10.47-.41-15.63-1.23l-76.69-12.14c-20.99-3.33-40.04-13.04-55.09-28.08L73.5 383.79c-15.09-15.09-24.84-34.22-28.18-55.33L33.24 252.2c-3.35-21.12.02-42.36 9.72-61.4l35.1-68.88c9.68-19 24.83-34.15 43.8-43.82l69.12-35.21C204.97 35.77 220.65 32 236.34 32c5.21 0 10.47.41 15.62 1.23l76.7 12.15c20.99 3.32 40.04 13.03 55.08 28.08l54.76 54.75c15.09 15.09 24.84 34.22 28.18 55.33l12.08 76.26c3.35 21.12-.02 42.36-9.72 61.4z\"]\n};\nvar faCookieBite = {\n prefix: 'fal',\n iconName: 'cookie-bite',\n icon: [512, 512, [], \"f564\", \"M352 328c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zM184 192c0-13.26-10.75-24-24-24s-24 10.74-24 24c0 13.25 10.75 24 24 24s24-10.75 24-24zm8 136c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm96-96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm222.52 23.82c-69.97-.85-126.47-57.69-126.47-127.86-70.17 0-127-56.49-127.86-126.45C249.57.5 242.9 0 236.26 0c-20.68 0-41.18 4.85-59.79 14.33l-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.28a132.555 132.555 0 0 0 37.16 72.96l54.77 54.76a132.036 132.036 0 0 0 72.71 37.06l76.71 12.14c6.86 1.09 13.76 1.62 20.64 1.62 20.72 0 41.25-4.88 59.89-14.38l69.13-35.22a132.221 132.221 0 0 0 57.79-57.81l35.1-68.88c12.56-24.63 17.01-52.57 12.91-79.9zm-41.42 65.36L434 390.07c-9.68 19-24.83 34.15-43.81 43.82l-69.13 35.22C307.08 476.23 291.39 480 275.7 480c-5.21 0-10.47-.41-15.63-1.23l-76.7-12.14c-21-3.33-40.05-13.04-55.09-28.08l-54.77-54.76c-15.1-15.09-24.84-34.23-28.18-55.33l-12.08-76.27c-3.35-21.12.02-42.36 9.72-61.41l35.1-68.88c9.68-19 24.83-34.15 43.81-43.82L191 42.85c11.33-5.77 23.8-9.33 36.51-10.46 13.15 63.15 63.84 112.95 127.25 124.86 11.91 63.42 61.71 114.11 124.87 127.25-1.1 12.73-4.64 25.14-10.53 36.68z\"]\n};\nvar faCopy = {\n prefix: 'fal',\n iconName: 'copy',\n icon: [448, 512, [], \"f0c5\", \"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.941zM352 32.491a15.88 15.88 0 0 1 7.431 4.195l51.882 51.883A15.885 15.885 0 0 1 415.508 96H352V32.491zM288 464c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V144c0-8.822 7.178-16 16-16h80v240c0 26.51 21.49 48 48 48h112v48zm128-96c0 8.822-7.178 16-16 16H176c-8.822 0-16-7.178-16-16V48c0-8.822 7.178-16 16-16h144v72c0 13.2 10.8 24 24 24h72v240z\"]\n};\nvar faCopyright = {\n prefix: 'fal',\n iconName: 'copyright',\n icon: [512, 512, [], \"f1f9\", \"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm216 248c0 118.663-96.055 216-216 216-118.663 0-216-96.055-216-216 0-118.663 96.055-216 216-216 118.663 0 216 96.055 216 216zM360.474 357.366c-9.414 9.142-44.455 38.966-100.106 38.966-77.825 0-136.513-60.551-136.513-140.846 0-77.951 58.345-137.596 135.431-137.596 53.547 0 85.508 24.785 94.028 32.381a11.96 11.96 0 0 1 1.721 16.001l-8.763 12.08c-4.034 5.561-11.877 6.579-17.203 2.329-8.921-7.122-33.509-23.688-69.062-23.688-54.32 0-94.161 41.791-94.161 98.131 0 58.209 40.791 102.104 94.882 102.104 39.538 0 66.522-22.074 73.851-28.84 5.068-4.681 13.054-4.108 17.423 1.239l9.414 11.534c3.969 4.861 3.564 11.828-.942 16.205z\"]\n};\nvar faCorn = {\n prefix: 'fal',\n iconName: 'corn',\n icon: [512, 512, [], \"f6c7\", \"M446.02 0c-12.95 0-25.27 3.8-35.67 10.62-15.35-4.08-28.15-1.5-34.89.49a65.477 65.477 0 0 0-27.61 15.95c-6.24-.44-17.55-.39-30.47 5.1-10.02 4.51-18.52 11.13-25.04 19.2a64.994 64.994 0 0 0-29.68 8.99c-8.75 4.96-16.12 11.98-21.61 20.32-10.18 1.49-19.83 5.37-28.32 11.43-.09.06-.15.16-.24.23-6.96-9.54-14.48-18.74-22.99-27.24l-21.13-21.14c-9.04-9.04-24.5-4.36-27 8.17l-23.76 118.81-80.55 80.56C16.98 271.58 2.98 297.65.47 325.94c-3.1 34.91 9.09 68.28 33.5 92.69l62.21 62.23.28-.28c27.38 25.57 64.77 36.9 103.31 28.88 22.86-4.75 43.42-17.25 59.93-33.76l81.32-81.34 118.8-23.76c12.53-2.51 17.21-17.97 8.18-27l-21.14-21.14c-8.66-8.66-18.02-16.31-27.74-23.36 4.96-7.75 8.43-16.21 9.79-25.06a64.739 64.739 0 0 0 20.94-22.24c5.29-8.9 8.26-18.84 8.84-28.94 8.11-6.41 14.68-14.7 19.02-24.35 4.47-9.93 6.33-20.58 5.63-31.05a66.545 66.545 0 0 0 16.12-26.97 66.217 66.217 0 0 0 .79-34.51C528.26 65.2 504.65 0 446.02 0zM56.6 277.21l90.49-90.51 19.79-98.99c48.33 48.33 65.35 115.45 52.51 177.72-35.47 10.72-67.98 30.09-94.92 57.04L54.06 392.9c-29.96-32.98-29.3-83.86 2.54-115.69zm367.63 67.88l-98.98 19.8-90.5 90.51c-16.4 16.4-37.89 24.6-59.39 24.6-21.49 0-42.99-8.2-59.39-24.6l-39.59-39.6 70.7-70.71c38.27-38.27 88.42-57.41 138.57-57.41 50.16 0 100.31 19.14 138.58 57.41zm37.16-246.25c7.5 8.31 10.98 20.36 7.5 32.15-3.49 11.25-12.33 19.55-22.77 22.76 5.88 9.11 7.23 20.9 2.41 31.61-4.83 10.71-14.46 17.41-25.17 19.29 4.83 9.64 4.55 21.42-1.33 31.33-5.63 9.91-15.81 15.8-26.52 16.61 3.58 9.45 2.61 20.32-3.29 29.45-32.44-17.2-68.79-26.36-106.55-26.36-10.82 0-21.46 1.01-31.98 2.48 1.53-10.48 2.6-21.08 2.6-31.87 0-37.79-9.16-74.16-26.38-106.63 13.48-11.22 27.58-7.41 32.49-5.56.81-10.44 6.7-20.63 16.61-26.25 15.82-9.39 30.92-1.53 31.33-1.33 1.88-10.45 8.84-20.09 19.55-24.91 13.46-5.71 25.43-1.32 31.61 2.68 3.22-10.71 11.78-19.28 23.03-22.5 3-.89 18.64-5.03 32.14 8.03C422.33 38.99 433.44 32 446.02 32c.52 0 33.85-.95 33.85 37.92-.54 12.85-8.03 23.56-18.48 28.92z\"]\n};\nvar faCouch = {\n prefix: 'fal',\n iconName: 'couch',\n icon: [640, 512, [], \"f4b8\", \"M576 193.9v-33.7c0-53.1-43-96.2-96-96.2H160c-53 0-96 43.1-96 96.2v33.7c-36.5 7.5-64 39.8-64 78.6 0 25.1 12.1 48.8 32 63.8v79.6c0 17.7 14.3 32.1 32 32.1h64c17.3 0 31.3-14.7 31.8-32h320.4c.5 17.3 14.5 32 31.8 32h64c17.7 0 32-14.4 32-32.1v-79.6c19.9-15.1 32-38.7 32-63.8 0-38.7-27.5-71.1-64-78.6zm-448 222H64v-97.4c-17.1-10-32-21.1-32-46 0-26.5 21.5-48.1 48-48.1h32c8.8 0 16 7.2 16 16v175.5zM480 384H160v-95.5h320V384zm0-143.6V256H160v-15.6c0-26.5-21.5-48.1-48-48.1H96v-32.1c0-35.4 28.7-64.1 64-64.1h320c35.3 0 64 28.8 64 64.1v32.1h-16c-26.5 0-48 21.6-48 48.1zm96 78.1v97.4h-64V240.4c0-8.8 7.2-16 16-16h32c26.5 0 48 21.6 48 48.1 0 23.9-13.9 35.4-32 46z\"]\n};\nvar faCow = {\n prefix: 'fal',\n iconName: 'cow',\n icon: [640, 512, [], \"f6c8\", \"M634.06 279.67L624 265.54v-54.96c0-19.35-15.74-35.09-35.08-35.09-9.08 0-14.25 2.94-23.61 7.65l-56.6-79.46A96.029 96.029 0 0 0 430.95 64H112c-44.12 0-80 35.89-80 80v88.88C12.95 243.96 0 264.37 0 288v32c35.35 0 64-28.65 64-64V144c0-23.89 17.59-43.59 40.46-47.24C99.23 106.04 96 116.59 96 128v288c0 17.67 14.33 32 32 32h48c17.67 0 32-14.33 32-32v-51.58c7.31 2.92 15.62 4.97 24.04 6.85V392c0 8.84 7.16 16 16 16s16-7.16 16-16v-16.71c2.73.12 5.18.71 7.96.71 2.81 0 5.29-.61 8.04-.72V392c0 8.84 7.16 16 16 16s16-7.16 16-16v-20.75c8.39-1.88 16.68-3.92 23.96-6.83V416c0 17.67 14.33 32 32 32h47.96c17.67 0 32-14.32 32-31.99l.04-143.97L479.96 288v41.98c0 12.32 3.55 24.38 10.24 34.72l35.46 54.9a62.073 62.073 0 0 0 52.15 28.4h.11c34.29 0 62.08-27.79 62.08-62.08v-87.69c0-6.65-2.08-13.14-5.94-18.56zM212.73 96h118.54c17.54 0 27.12 19.78 15.89 32.8-40.1 46.51-57.96 47.2-75.11 47.2h-1.09c-17.2 0-33.82-.43-74.13-47.2-11.22-13.02-1.64-32.8 15.9-32.8zm-4.14 234.19C211.57 297.65 238.71 272 272 272s60.43 25.65 63.41 58.19c-14.2 5.68-57.45 27.73-126.82 0zM608 385.92c0 16.59-13.49 30.08-30.19 30.08-10.26 0-19.7-5.14-25.27-13.76l-35.46-54.9a31.939 31.939 0 0 1-5.12-17.36v-61.77l-95.95-47.92-.01 51.74-.04 143.97H368v-80c0-30.87-25.45-96-96-96-70.86 0-96 64.55-96 96v80h-48V128c0-17.64 14.36-32 32-32h4.29c-7.71 18.18-4.71 38.6 8.3 53.7 42.25 49.01 67.17 58.3 98.37 58.3 32.93 0 58.19-9.29 100.44-58.3 13.01-15.1 16.02-35.52 8.3-53.7h51.25c20.46 0 39.83 9.89 51.69 26.26l78.66 110.42c4.49-17.23 18.92-24.62 22.69-24.62 4.2 0 8 3.37 8 8.01v59.7l16 22.46v87.69zM568 304c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16z\"]\n};\nvar faCowbell = {\n prefix: 'fal',\n iconName: 'cowbell',\n icon: [448, 512, [], \"f8b3\", \"M384.19 122.35A32 32 0 0 0 352.64 96h-16V48a48.1 48.1 0 0 0-48.12-48H160.29a48.1 48.1 0 0 0-48.09 48v48H95.36a32 32 0 0 0-31.55 26.35l-63.3 352A32 32 0 0 0 32.07 512h383.86a32 32 0 0 0 31.56-37.65zM144.2 48a16.07 16.07 0 0 1 16.09-16h128.23a16.07 16.07 0 0 1 16.09 16v48H144.2zM32 480l63.36-352H352.7l63.23 352z\"]\n};\nvar faCowbellMore = {\n prefix: 'fal',\n iconName: 'cowbell-more',\n icon: [640, 512, [], \"f8b4\", \"M480 192a160 160 0 1 0 160 160 160 160 0 0 0-160-160zm0 288a128 128 0 1 1 128-128 128.14 128.14 0 0 1-128 128zm72-144h-56v-56a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v56h-56a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h56v56a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-56h56a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM32 480l63.36-352h257.33l12.63 70.26a192.21 192.21 0 0 1 29.28-18.05l-10.41-57.87A32 32 0 0 0 352.64 96h-16V48a48.1 48.1 0 0 0-48.12-48H160.29a48.1 48.1 0 0 0-48.09 48v48H95.36a32 32 0 0 0-31.56 26.35l-63.29 352A32 32 0 0 0 32.07 512H374a192.56 192.56 0 0 1-36.77-32zM144.2 48a16.07 16.07 0 0 1 16.09-16h128.23a16.07 16.07 0 0 1 16.09 16v48H144.2z\"]\n};\nvar faCreditCard = {\n prefix: 'fal',\n iconName: 'credit-card',\n icon: [576, 512, [], \"f09d\", \"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-48zM48 64h480c8.8 0 16 7.2 16 16v48H32V80c0-8.8 7.2-16 16-16zm480 384H48c-8.8 0-16-7.2-16-16V224h512v208c0 8.8-7.2 16-16 16zm-336-84v8c0 6.6-5.4 12-12 12h-72c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12zm192 0v8c0 6.6-5.4 12-12 12H236c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h136c6.6 0 12 5.4 12 12z\"]\n};\nvar faCreditCardBlank = {\n prefix: 'fal',\n iconName: 'credit-card-blank',\n icon: [576, 512, [], \"f389\", \"M528 31H48C21.5 31 0 52.5 0 79v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V79c0-26.5-21.5-48-48-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V79c0-8.8 7.2-16 16-16h480c8.8 0 16 7.2 16 16v352zm-352-68v8c0 6.6-5.4 12-12 12h-72c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12zm192 0v8c0 6.6-5.4 12-12 12H236c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h136c6.6 0 12 5.4 12 12z\"]\n};\nvar faCreditCardFront = {\n prefix: 'fal',\n iconName: 'credit-card-front',\n icon: [576, 512, [], \"f38a\", \"M528 31H48C21.5 31 0 52.5 0 79v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V79c0-26.5-21.5-48-48-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V79c0-8.8 7.2-16 16-16h480c8.8 0 16 7.2 16 16v352zm-352-68v8c0 6.6-5.4 12-12 12h-72c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12zm192 0v8c0 6.6-5.4 12-12 12H236c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h136c6.6 0 12 5.4 12 12zM488 95h-80c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h80c13.3 0 24-10.7 24-24v-48c0-13.3-10.7-24-24-24zm-8 64h-64v-32h64v32zM260 319h-56c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12zm28-12v-40c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12zm-192 0v-40c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12zm384-40v40c0 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 12z\"]\n};\nvar faCricket = {\n prefix: 'fal',\n iconName: 'cricket',\n icon: [640, 512, [], \"f449\", \"M632.8 30.2l-9.2-13.1C617.5 8.3 608.3 2.5 597.8.6c-10.5-2-21.1.5-29.9 6.6L419.1 112c-14.5 10.1-34.4 6.6-44.6-7.9L365.3 91c-10.1-14.5-30-18-44.5-7.9L20.6 293.4c-14 9.8-21.8 25.9-20.5 42C6.2 410.4 52.5 476.6 121 508c20.8 9.5 39.4.1 46.5-4.9l300.1-210.2c14.4-10.1 18.2-29.9 7.9-44.6l-9.2-13.1c-10.1-14.5-6.6-34.4 7.9-44.6L622.9 85.9c18.1-12.7 22.5-37.6 9.9-55.7zM149.1 476.9c-4.6 3.3-10.4 4-14.8 2C53.2 441.6 32.9 362.4 32 332.7c-.4-4.8 2.3-9.9 6.9-13.2l225.3-157.7-23.6 133.7 133.7 23.6-225.2 157.8zm293.6-205.6l-31.3 21.9-133.7-23.6 23.6-133.7 31.3-21.9c3.6-2.5 8.6-1.7 11.1 2l100.9 144.2c2.6 3.6 1.7 8.5-1.9 11.1zM604.6 59.7l-175 123.1-18.4-26.2 175-123.1c3.3-2.3 8.4-2 11.1 2l9.2 13.1c2.6 3.6 1.7 8.6-1.9 11.1zM496 352c-44.1 0-80 35.9-80 80s35.9 80 80 80 80-35.9 80-80-35.9-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 48z\"]\n};\nvar faCroissant = {\n prefix: 'fal',\n iconName: 'croissant',\n icon: [512, 512, [], \"f7f6\", \"M508.1 175.66c-11.51-30.34-29.86-56.51-52.36-78.17a59.19 59.19 0 0 0-.27-12.12 60.35 60.35 0 0 0-23.13-40.11A222.19 222.19 0 0 0 298.37 0a217.65 217.65 0 0 0-58.26 8.4C229.86 2.58 215.22-3 196.19 1.8A266.7 266.7 0 0 0 1.78 196.18a59.74 59.74 0 0 0 6.63 45c-17.76 65.52-5.22 136 36.84 191.13a60.4 60.4 0 0 0 40.11 23.13c9.18 1.16 9.09 0 11.4-.16 21.78 22.72 48.24 41.2 78.88 52.81 42.54 16.12 87-19.95 79.5-65.18l-14.54-87.23a58.85 58.85 0 0 0 17.47-31.43 59.4 59.4 0 0 0 26.33-15.11l24.77-24.77A59.82 59.82 0 0 0 324.35 258a58.82 58.82 0 0 0 31.32-17.41l87.24 14.54c45.43 7.6 81.25-37.13 65.19-79.47zM298.37 32a190.06 190.06 0 0 1 114.57 38.7c13.92 10.62 13.47 28.81 5 39.54l-84 107c-1.55 2-9.2 9.34-9.91 7.06l-56-182c-.77-2.48-2.3-4.47-3.35-6.79A181.18 181.18 0 0 1 298.36 32zM35.26 265.11a60.1 60.1 0 0 0 7.09 3l182 56c2.26.69-5.09 8.35-7.07 9.9l-107 84c-14.08 11.05-31.58 5.4-39.55-5a188.09 188.09 0 0 1-35.47-147.9zM187 478.17a181.28 181.28 0 0 1-57-35.09l82-64.32 11.57 69.42c3.48 20.82-17.01 37.4-36.57 29.99zm99.56-216.42l-24.77 24.76c-4 4-14.4 11.15-28 7l-182-56a28 28 0 0 1-18.93-33.55A234.75 234.75 0 0 1 204 32.84a28 28 0 0 1 33.5 18.93l56 182a28 28 0 0 1-6.96 27.98zm161.63-38.14L378.76 212l64.34-82a182.08 182.08 0 0 1 35.08 57c7.49 19.76-9.36 40.05-30.01 36.61z\"]\n};\nvar faCrop = {\n prefix: 'fal',\n iconName: 'crop',\n icon: [512, 512, [], \"f125\", \"M488 320h-72V118.62l93.66-93.66c3.12-3.12 3.12-8.19 0-11.31L498.35 2.34c-3.12-3.12-8.19-3.12-11.31 0L393.37 96H192V24c0-13.26-10.75-24-24-24h-48c-13.25 0-24 10.74-24 24v72H24c-13.25 0-24 10.74-24 24v48c0 13.25 10.75 24 24 24h72v192c0 17.67 14.33 32 32 32h192v72c0 13.25 10.75 24 24 24h48c13.25 0 24-10.75 24-24v-72h72c13.25 0 24-10.75 24-24v-48c0-13.25-10.75-24-24-24zM96 160H32v-32h64v32zm96-32h169.37l-32 32H192v-32zm105.38 64L192 297.38V192h105.38zM320 384H128V32h32v320h160v32zm-105.38-64L320 214.63V320H214.62zM352 480V182.63l32-32V480h-32zm128-96h-64v-32h64v32z\"]\n};\nvar faCropAlt = {\n prefix: 'fal',\n iconName: 'crop-alt',\n icon: [512, 512, [], \"f565\", \"M488 320h-72V128c0-17.67-14.33-32-32-32H192V24c0-13.26-10.75-24-24-24h-48c-13.25 0-24 10.74-24 24v72H24c-13.25 0-24 10.74-24 24v48c0 13.25 10.75 24 24 24h72v192c0 17.67 14.33 32 32 32h192v72c0 13.25 10.75 24 24 24h48c13.25 0 24-10.75 24-24v-72h72c13.25 0 24-10.75 24-24v-48c0-13.26-10.75-24-24-24zM96 160H32v-32h64v32zm224 224H128V32h32v320h160v32zm0-64H192V192h128v128zm64 160h-32V160H192v-32h192v352zm96-96h-64v-32h64v32z\"]\n};\nvar faCross = {\n prefix: 'fal',\n iconName: 'cross',\n icon: [384, 512, [], \"f654\", \"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-32zm0 96H224v256h-64V224H32v-64h128V32h64v128h128v64z\"]\n};\nvar faCrosshairs = {\n prefix: 'fal',\n iconName: 'crosshairs',\n icon: [512, 512, [], \"f05b\", \"M506 240h-34.591C463.608 133.462 378.538 48.392 272 40.591V6a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v34.591C133.462 48.392 48.392 133.462 40.591 240H6a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6h34.591C48.392 378.538 133.462 463.608 240 471.409V506a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6v-34.591C378.538 463.608 463.608 378.538 471.409 272H506a6 6 0 0 0 6-6v-20a6 6 0 0 0-6-6zM272 439.305V374a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v65.305C151.282 431.711 80.315 361.031 72.695 272H138a6 6 0 0 0 6-6v-20a6 6 0 0 0-6-6H72.695C80.289 151.282 150.969 80.316 240 72.695V138a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6V72.695C360.718 80.289 431.685 150.969 439.305 240H374a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6h65.305C431.711 360.718 361.031 431.684 272 439.305zM280 256c0 13.255-10.745 24-24 24s-24-10.745-24-24 10.745-24 24-24 24 10.745 24 24z\"]\n};\nvar faCrow = {\n prefix: 'fal',\n iconName: 'crow',\n icon: [640, 512, [], \"f520\", \"M416 72c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm104-8h-13.88C492.9 26.8 457.74 0 416 0c-53.02 0-96 42.98-96 96v39.6L11.38 393.57C4.21 399.28 0 408.23 0 417.74 0 435.26 13.53 448 28.45 448c4.22 0 8.54-1.02 12.71-3.23L168 384h109.49l44.41 120.1c2.27 6.23 9.15 9.44 15.38 7.17l6.83-2.49c6.23-2.27 9.44-9.15 7.17-15.38L310.82 384h20.47c13.89 0 27.36-1.82 40.35-4.98l46.25 125.08c2.27 6.23 9.15 9.44 15.38 7.17l6.83-2.49c6.23-2.27 9.44-9.15 7.17-15.38l-45.98-124.36C466.33 339.98 512 271.67 512 192v-30.93L640 144c0-44.18-53.73-80-120-80zm-40 128c0 88.22-66.71 160-148.71 160h-57.03l45.33-12.95c48.03-13.73 88.41-47.23 110.72-91.89 3.94-7.91.75-17.52-7.16-21.47-7.91-3.89-17.47-.77-21.47 7.16-18.31 36.66-51.44 64.16-90.91 75.42-192.18 54.91-115.72 27.27-266.62 99.61L352 150.56V96c0-35.29 28.71-64 64-64s64 28.71 64 64v96zm32-63.22V96h8c30.83 0 56.88 9.49 72.46 22.05L512 128.78z\"]\n};\nvar faCrown = {\n prefix: 'fal',\n iconName: 'crown',\n icon: [640, 512, [], \"f521\", \"M536 480H104c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h432c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm48-320c-30.9 0-56 25.1-56 56 0 7.6 1.5 14.8 4.3 21.4L476 271.2c-5.2 3.1-10.8 4.6-16.4 4.6-11.1 0-21.9-5.8-27.8-16.1l-74.4-130.2c11.3-10.3 18.6-25 18.6-41.5 0-30.9-25.1-56-56-56s-56 25.1-56 56c0 16.5 7.3 31.2 18.6 41.4l-74.4 130.2c-5.9 10.4-16.7 16.1-27.8 16.1-5.6 0-11.3-1.5-16.4-4.6l-56.3-33.8c2.7-6.6 4.3-13.8 4.3-21.4 0-30.9-25.1-56-56-56S0 185.1 0 216s25.1 56 56 56c2 0 3.9-.4 5.8-.6L128 448h384l66.2-176.6c1.9.2 3.8.6 5.8.6 30.9 0 56-25.1 56-56s-25.1-56-56-56zM320 64c13.2 0 24 10.8 24 24s-10.8 24-24 24-24-10.8-24-24 10.8-24 24-24zM56 240c-13.2 0-24-10.8-24-24s10.8-24 24-24 24 10.8 24 24-10.8 24-24 24zm433.8 176H150.2l-56-149.4 53.4 32c10 6 21.3 9.1 32.9 9.1 22.9 0 44.2-12.4 55.6-32.3l75.6-132.3c2.8.4 5.5.8 8.4.8s5.6-.4 8.4-.8L404 275.5c11.4 19.9 32.7 32.2 55.6 32.2 11.6 0 22.9-3.2 32.9-9.1l53.4-32L489.8 416zM584 240c-13.2 0-24-10.8-24-24s10.8-24 24-24 24 10.8 24 24-10.8 24-24 24z\"]\n};\nvar faCrutch = {\n prefix: 'fal',\n iconName: 'crutch',\n icon: [512, 512, [], \"f7f7\", \"M507.31 185.71l-181-181a16 16 0 0 0-22.62 0l-42.2 42.15a16 16 0 0 0 0 22.63l22.63 22.63-112.74 112.72A80 80 0 0 0 150 243.45l-28.8 124.73L2.34 487a8 8 0 0 0 0 11.31l11.32 11.32a8 8 0 0 0 11.31 0l118.87-118.84L268.56 362a79.85 79.85 0 0 0 38.56-21.4l112.76-112.72 22.63 22.63a16 16 0 0 0 22.63 0l42.17-42.18a16 16 0 0 0 0-22.62zM284.5 318a47.79 47.79 0 0 1-23.12 12.81l-104.29 24.08 24.1-104.27A47.78 47.78 0 0 1 194 227.48l21.43-21.42 90.51 90.51zm44.07-44.08l-90.51-90.51 68.69-68.68 90.5 90.5zm125.25-57.37L295.43 58.18 315 38.63 473.37 197z\"]\n};\nvar faCrutches = {\n prefix: 'fal',\n iconName: 'crutches',\n icon: [640, 512, [], \"f7f8\", \"M635.31 185.71l-181-181a16 16 0 0 0-22.62 0l-42.2 42.15a16 16 0 0 0 0 22.63l22.63 22.63-112.74 112.72A80 80 0 0 0 278 243.45l-28.8 124.73L130.34 487a8 8 0 0 0 0 11.31l11.32 11.32a8 8 0 0 0 11.31 0l118.87-118.84L396.56 362a79.85 79.85 0 0 0 38.56-21.4l112.75-112.72 22.64 22.63a16 16 0 0 0 22.63 0l42.17-42.18a16 16 0 0 0 0-22.62zM412.5 318a47.77 47.77 0 0 1-23.13 12.81l-104.28 24.08 24.1-104.27A47.86 47.86 0 0 1 322 227.48l21.43-21.42 90.51 90.51zm44.07-44.08l-90.51-90.51 68.69-68.68 90.5 90.5zm125.25-57.37L423.43 58.18 443 38.63 601.37 197zM220 352.07l7.79-33.74c-.11-.11-.26-.17-.37-.28l-112.67-112.8 90.5-90.5 69.63 69.62c.66-.69 1.19-1.48 1.87-2.16l20.62-20.61-69.49-69.48 22.63-22.63a16 16 0 0 0 0-22.63L208.33 4.69a16 16 0 0 0-22.62 0l-181 181a16 16 0 0 0 0 22.62l42.17 42.18a16 16 0 0 0 22.63 0l22.64-22.63 112.73 112.76A78.72 78.72 0 0 0 220 352.07zM58.18 216.57L38.63 197 197 38.63l19.55 19.55zM413 390.37c-3.07 1-6.09 2.1-9.24 2.83l-27 6.22L487 509.66a8 8 0 0 0 11.31 0l11.32-11.32a8 8 0 0 0 0-11.31z\"]\n};\nvar faCube = {\n prefix: 'fal',\n iconName: 'cube',\n icon: [512, 512, [], \"f1b2\", \"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 34.2l224 84v.3l-224 97.1-224-97.1v-.3l224-84zM32 153.4l208 90.1v224.7l-208-104V153.4zm240 314.8V243.5l208-90.1v210.9L272 468.2z\"]\n};\nvar faCubes = {\n prefix: 'fal',\n iconName: 'cubes',\n icon: [512, 512, [], \"f1b3\", \"M488.6 256.7L388 219V107.9c0-15-9.3-28.4-23.4-33.7l-96-36c-8.1-3.1-17.1-3.1-25.3 0l-96 36c-14.1 5.3-23.4 18.7-23.4 33.7V219L23.4 256.7C9.3 262 0 275.4 0 290.4v101.3c0 13.6 7.7 26.1 19.9 32.2l96 48c10.1 5.1 22.1 5.1 32.2 0L256 418l107.9 54c10.1 5.1 22.1 5.1 32.2 0l96-48c12.2-6.1 19.9-18.6 19.9-32.2V290.4c0-15-9.3-28.4-23.4-33.7zM16.5 403.8V295.1l107.2 46.5v115.8zm231 0l-107.2 53.6V341.6l107.2-46.5zm0-126.7l-115.5 50-115.5-50v-.2L131 234l107.6 39.6 8.9 3.3zm.3-19.7L195 239.6l-54.5-20.4V112.5L247.8 159zM140.5 94.5v-.1L256 51l115.5 43.3v.2l-115.5 50zM264.2 159l107.2-46.5v106.7L317 239.6l-52.8 17.8zm107.6 298.4l-107.2-53.6V295.1l107.2 46.5zm123.7-53.6l-107.2 53.6V341.6l107.2-46.5zm0-126.7l-115.5 50L264.5 277v-.2l8.9-3.3L381 234l114.5 42.9z\"]\n};\nvar faCurling = {\n prefix: 'fal',\n iconName: 'curling',\n icon: [640, 512, [], \"f44a\", \"M517.9 194.2c-18-39.9-57.6-66.2-101.9-66.2H304c0-17.7 14.3-32 32-32h128c17.7 0 32-14.3 32-32V32c0-17.7-14.3-32-32-32H336c-70.6 0-128 57.4-128 128v1.2c-37.7 5.4-70.2 30.1-86 65.1C53 204.9 0 264 0 336v32c0 79.5 64.5 144 144 144h352c79.5 0 144-64.5 144-144v-32c0-72-53.1-131.2-122.1-141.8zM240 160v-32c0-52.9 43.1-96 96-96h128v32H336c-35.3 0-64 28.7-64 64v32h144c25.6 0 49.1 12.3 64 32H160c26.8-35.6 64.3-32 80-32zm256 320H144c-61.8 0-112-50.2-112-112h576c0 61.8-50.2 112-112 112zM32 336c0-61.8 50.2-112 112-112h352c61.8 0 112 50.2 112 112H32z\"]\n};\nvar faCut = {\n prefix: 'fal',\n iconName: 'cut',\n icon: [448, 512, [], \"f0c4\", \"M249.52 256L446.83 58.83a3.996 3.996 0 0 0 0-5.65c-12.5-12.5-32.76-12.5-45.25 0L224.06 230.56l-48.64-48.61C185.88 166.57 192 148 192 128c0-53.02-42.98-96-96-96S0 74.98 0 128s42.98 96 96 96c20.01 0 38.58-6.12 53.96-16.6l48.63 48.6-48.63 48.6C134.58 294.12 116.01 288 96 288c-53.02 0-96 42.98-96 96s42.98 96 96 96 96-42.98 96-96c0-20-6.12-38.57-16.58-53.95l48.64-48.61 177.52 177.38c12.5 12.5 32.76 12.5 45.25 0a3.996 3.996 0 0 0 0-5.65L249.52 256zM96 192c-35.29 0-64-28.71-64-64s28.71-64 64-64 64 28.71 64 64-28.71 64-64 64zm0 256c-35.29 0-64-28.71-64-64s28.71-64 64-64 64 28.71 64 64-28.71 64-64 64z\"]\n};\nvar faDagger = {\n prefix: 'fal',\n iconName: 'dagger',\n icon: [384, 512, [], \"f6cb\", \"M335.21 127.96H240V16c0-8.83-7.16-16-16-16h-64c-8.84 0-16 7.16-16 16v111.97H48.79c-26.32 0-48.34 20.85-48.78 47.17C-.44 202 21.22 223.93 48 223.93c26.51 0 48-21.48 48-47.99 0-5.64-1.15-10.97-2.94-16H128v268.92l50.69 76.01c6.33 9.5 20.29 9.5 26.63 0l50.68-76V159.95h34.94c-1.79 5.03-2.94 10.36-2.94 16 0 26.5 21.49 47.99 48 47.99 26.78 0 48.44-21.93 47.99-48.81-.44-26.31-22.46-47.17-48.78-47.17zM64 175.95c0 8.82-7.18 16-16 16s-16-7.18-16-16 7.18-16 16-16 16 7.18 16 16zM176 31.99h32v95.97h-32V31.99zm48 387.19l-32 47.99-32-47.99V159.95h64v259.23zm112-227.24c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16z\"]\n};\nvar faDatabase = {\n prefix: 'fal',\n iconName: 'database',\n icon: [448, 512, [], \"f1c0\", \"M224 32c106 0 192 28.75 192 64v32c0 35.25-86 64-192 64S32 163.25 32 128V96c0-35.25 86-64 192-64m192 149.5V224c0 35.25-86 64-192 64S32 259.25 32 224v-42.5c41.25 29 116.75 42.5 192 42.5s150.749-13.5 192-42.5m0 96V320c0 35.25-86 64-192 64S32 355.25 32 320v-42.5c41.25 29 116.75 42.5 192 42.5s150.749-13.5 192-42.5m0 96V416c0 35.25-86 64-192 64S32 451.25 32 416v-42.5c41.25 29 116.75 42.5 192 42.5s150.749-13.5 192-42.5M224 0C145.858 0 0 18.801 0 96v320c0 77.338 146.096 96 224 96 78.142 0 224-18.801 224-96V96c0-77.338-146.096-96-224-96z\"]\n};\nvar faDeaf = {\n prefix: 'fal',\n iconName: 'deaf',\n icon: [512, 512, [], \"f2a4\", \"M409.171 108.485l-5.656-5.656c-4.686-4.686-4.686-12.284 0-16.971l82.344-82.344c4.686-4.686 12.284-4.686 16.971 0l5.656 5.656c4.686 4.686 4.686 12.284 0 16.971l-82.344 82.344c-4.687 4.687-12.285 4.687-16.971 0zm-383.029 400l186.344-186.344c4.686-4.686 4.686-12.284 0-16.971l-5.656-5.656c-4.686-4.686-12.284-4.686-16.971 0L3.515 485.858c-4.686 4.686-4.686 12.284 0 16.971l5.656 5.656c4.686 4.687 12.284 4.687 16.971 0zm317.534-103.151c0-69.293 73.391-78.477 73.391-165.334 0-88.812-72.255-161.066-161.067-161.066S94.933 151.188 94.933 240c0 8.837 7.163 16 16 16s16-7.163 16-16c0-71.167 57.899-129.066 129.066-129.066 71.168 0 129.067 57.899 129.067 129.066 0 71.434-73.391 80.16-73.391 165.334 0 41.171-33.495 74.666-74.667 74.666-8.837 0-16 7.163-16 16s7.163 16 16 16c58.818 0 106.668-47.851 106.668-106.666zM336.743 256c-8.837 0-16-7.163-16-16 0-36.172-29.428-65.6-65.6-65.6s-65.6 29.428-65.6 65.6c0 8.837-7.163 16-16 16s-16-7.163-16-16c0-53.816 43.783-97.6 97.6-97.6s97.6 43.783 97.6 97.6c0 8.837-7.163 16-16 16z\"]\n};\nvar faDebug = {\n prefix: 'fal',\n iconName: 'debug',\n icon: [512, 512, [], \"f7f9\", \"M130.25 311.84l45.88-6.55a79.17 79.17 0 0 0 3.1 20l-44.11 29.4a16 16 0 0 0-4.43 22.19c3.41 5.09 12.87 10.64 22.19 4.43L194 353.93c14.62 18.19 36.81 30.07 62 30.07a79.26 79.26 0 0 0 45.63-14.49l-23.29-23.29A47.3 47.3 0 0 1 256 352a48.05 48.05 0 0 1-48-48v-28.12l-32-32V273l-50.25 7.18a16 16 0 0 0-13.59 18.11c1.97 13.58 15.36 13.95 18.09 13.55zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 464c-119.1 0-216-96.9-216-216a214.87 214.87 0 0 1 52.56-140.81l304.25 304.25A214.87 214.87 0 0 1 256 472zm-44.16-282.78A48 48 0 0 1 304 208v73.38zm207.6 207.59l-84.37-84.36a67.57 67.57 0 0 0 .8-7.16l45.88 6.55c2.73.4 16.12 0 18.09-13.57a16 16 0 0 0-13.59-18.11L336 273v-26l50.25-7.18a16 16 0 1 0-4.5-31.68L336 214.69c0-17.31-1.41-21.43-3.23-28l44.11-29.4a16 16 0 0 0-17.76-26.62l-41.07 27.38C303.38 139.88 281.19 128 256 128c-28.64 0-53.4 15.26-67.46 37.92l-73.35-73.36A214.87 214.87 0 0 1 256 40c119.1 0 216 96.9 216 216a214.87 214.87 0 0 1-52.56 140.81z\"]\n};\nvar faDeer = {\n prefix: 'fal',\n iconName: 'deer',\n icon: [512, 512, [], \"f78e\", \"M400 160c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm88.7-26.7l-91.9-25.8 11.1-5.6c12.4-6.2 23-15.6 30.7-27.1l18.1-27.2c2.5-3.7 1.5-8.6-2.2-11.1l-13.3-8.9c-3.7-2.5-8.6-1.5-11.1 2.2l-18 27.2c-4.6 7-11 12.6-18.5 16.3L351 94.6l-33.8-9.5 8.3-10.3c6.8-8.5 10.5-19.1 10.5-30V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v36.8c0 3.6-1.2 7.1-3.5 10l-16.8 20.9-16.1-4.5c-6.9-1.9-11.7-8.2-11.7-15.4V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v47.8c0 21.5 14.3 40.4 35 46.2l78.9 22.2L304 192H96c-53 0-96 43-96 96v32h32v27.5l-11.9 31.8c-4.6 12.2-5.3 25.4-2.2 38l23 72.4C45.1 503 57.5 512 71.4 512h47.7c20.8 0 36.1-19.5 31.1-39.7l-17-68.6 19.4-51.7H256v128c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V320l32-64h48c26.5 0 48-21.5 48-48v-43.9c0-14.3-9.6-26.9-23.3-30.8zM480 208c0 8.8-7.2 16-16 16h-67.8L352 312.4V480h-64V320H130.4l-30.7 81.8 19.4 78.2H71.4l-22.6-71.2c-1.4-6.1-.9-12.3 1.3-18.2l14-37.2V288H32c0-35.3 28.7-64 64-64h227.8l33.7-67.4c6.9-13.7 22.5-20.6 37.3-16.5l73.6 20.7c6.9 1.9 11.7 8.2 11.7 15.4V208z\"]\n};\nvar faDeerRudolph = {\n prefix: 'fal',\n iconName: 'deer-rudolph',\n icon: [512, 512, [], \"f78f\", \"M368 160c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm112-48c-13.3 0-24.6 8.1-29.5 19.5l-85.7-24.1 11.1-5.6c12.4-6.2 23-15.6 30.7-27.1l18.1-27.2c2.5-3.7 1.5-8.6-2.2-11.1l-13.3-8.9c-3.7-2.5-8.6-1.5-11.1 2.2l-18 27.3c-4.6 7-11 12.6-18.5 16.3L319 94.6l-33.8-9.5 8.3-10.3c6.8-8.5 10.5-19.1 10.5-30V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v36.8c0 3.6-1.2 7.1-3.5 10l-16.8 20.9-16.1-4.5c-6.9-1.9-11.7-8.2-11.7-15.4V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v47.8c0 21.5 14.3 40.4 35 46.2l78.9 22.2L272 192H96c-53 0-96 43-96 96v32h32v27.5l-11.9 31.8c-4.6 12.2-5.3 25.4-2.2 38l23 72.4C45.1 503 57.5 512 71.4 512h47.7c20.8 0 36.1-19.5 31.1-39.7l-17-68.6 19.4-51.7H224v128c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V320l32-64h48c26.5 0 48-21.5 48-48v-32c17.7 0 32-14.3 32-32s-14.3-32-32-32zm-32 96c0 8.8-7.2 16-16 16h-67.8L320 312.4V480h-64V320H130.4l-30.7 81.8 19.4 78.2H71.4l-22.6-71.2c-1.4-6.1-.9-12.3 1.3-18.2l14-37.2V288H32c0-35.3 28.7-64 64-64h195.8l33.7-67.4c6.9-13.7 22.5-20.6 37.3-16.5l73.6 20.7c6.9 1.9 11.7 8.2 11.7 15.4V208z\"]\n};\nvar faDemocrat = {\n prefix: 'fal',\n iconName: 'democrat',\n icon: [640, 512, [], \"f747\", \"M283.7 226.8l-8.2-16.5c-1.5-3-5.7-3-7.2 0l-8.2 16.5-18.2 2.7c-3.3.5-4.6 4.5-2.2 6.8l13.2 12.9-3.1 18.2c-.6 3.3 2.9 5.7 5.8 4.2l16.3-8.6 16.3 8.6c2.9 1.5 6.4-.9 5.8-4.2l-3.1-18.2 13.2-12.9c2.4-2.3 1.1-6.3-2.2-6.8l-18.2-2.7zm96 0l-8.2-16.5c-1.5-3-5.7-3-7.2 0l-8.2 16.5-18.2 2.7c-3.3.5-4.6 4.5-2.2 6.8l13.2 12.9-3.1 18.2c-.6 3.3 2.9 5.7 5.8 4.2l16.3-8.6 16.3 8.6c2.9 1.5 6.4-.9 5.8-4.2l-3.1-18.2 13.2-12.9c2.4-2.3 1.1-6.3-2.2-6.8l-18.2-2.7zm259-.6l-15.2-22.8C579.6 137.7 516.3 144 485.2 144H271.8L247 111.6c17.3-28 17.5-64.4-1.2-92.7C238.2 7.4 225.4.6 211.6.5c-11 0-21.3 4.3-29.1 12l-14.9 14.9-15.8-15.8C144.3 4.1 134.4 0 123.8 0 110.6 0 98.3 6.6 91 17.6 76.2 40 74.7 68.1 85.5 91.5l-75.2 91.9c-11.7 14.3-13.6 33.9-4.8 50l15.9 29.1C30 278.3 46.9 288 65.6 288H100c12.8 0 24.8-4.5 34.1-12.7l14.6-12.2 27.2 63.5v138.7c0 25.7 20.9 46.7 46.7 46.7h50.6c25.7 0 46.7-20.9 46.7-46.7V416h113.3v49.3c0 25.7 20.9 46.7 46.7 46.7h49.3c25.7 0 46.7-20.9 46.7-46.7V234.8c0-16.4-4.7-31.6-12.4-44.9 13 7.8 24.5 18.2 33.2 31.3L612 244c2.4 3.7 7.4 4.7 11.1 2.2l13.3-8.9c3.7-2.4 4.7-7.4 2.3-11.1zM544 465.3c0 8.1-6.6 14.7-14.7 14.7H480c-8.1 0-14.7-6.6-14.7-14.7V384H288v81.3c0 8.1-6.6 14.7-14.7 14.7h-50.6c-8.1 0-14.7-6.6-14.7-14.7V336h336v129.3zm0-161.3H201.1l-39.8-93-48.1 40.1c-3.4 3.1-8.2 4.9-13.1 4.9H65.6c-6.9 0-13.3-3.4-16.2-8.7l-15.9-29.1c-2.6-4.7-2-10.1 1.5-14.4l82.9-101.2c3.1-3.8 8.2-6 13.7-6.3-2.8-1.7-5.8-3.1-8.3-5.5-15.1-15.1-16.9-38.3-5.6-55.4 1.4-2.2 3.8-3.3 6.2-3.3 1.9 0 3.8.7 5.3 2.2l38.5 38.5 37.5-37.5c1.8-1.8 4.1-2.7 6.4-2.7 2.9 0 5.8 1.4 7.5 4 13.8 20.9 11.5 49.4-6.9 67.8-2.1 2.1-4.4 3.9-6.8 5.5L256 176h229.3c32.5 0 58.8 26.3 58.8 58.8V304zm-68.3-77.2l-8.2-16.5c-1.5-3-5.7-3-7.2 0l-8.2 16.5-18.2 2.7c-3.3.5-4.6 4.5-2.2 6.8l13.2 12.9-3.1 18.2c-.6 3.3 2.9 5.7 5.8 4.2l16.3-8.6 16.3 8.6c2.9 1.5 6.4-.9 5.8-4.2l-3.1-18.2 13.2-12.9c2.4-2.3 1.1-6.3-2.2-6.8l-18.2-2.7z\"]\n};\nvar faDesktop = {\n prefix: 'fal',\n iconName: 'desktop',\n icon: [576, 512, [], \"f108\", \"M528 0H48C21.5 0 0 21.5 0 48v288c0 26.5 21.5 48 48 48h192l-24 96h-72c-8.8 0-16 7.2-16 16s7.2 16 16 16h288c8.8 0 16-7.2 16-16s-7.2-16-16-16h-72l-24-96h192c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM249 480l16-64h46l16 64h-78zm295-144c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h480c8.8 0 16 7.2 16 16v288z\"]\n};\nvar faDesktopAlt = {\n prefix: 'fal',\n iconName: 'desktop-alt',\n icon: [576, 512, [], \"f390\", \"M528 0H48C21.5 0 0 21.5 0 48v288c0 26.5 21.5 48 48 48h192l-24 96h-72c-8.8 0-16 7.2-16 16s7.2 16 16 16h288c8.8 0 16-7.2 16-16s-7.2-16-16-16h-72l-24-96h192c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM249 480l16-64h46l16 64h-78zm295-144c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16v-48h512v48zm0-80H32V48c0-8.8 7.2-16 16-16h480c8.8 0 16 7.2 16 16v208z\"]\n};\nvar faDewpoint = {\n prefix: 'fal',\n iconName: 'dewpoint',\n icon: [448, 512, [], \"f748\", \"M176 0c-12.4 0-24.7 6.8-29.2 20.7C100 168.6 0 240.8 0 345c0 92.3 78.7 167 176 167s176-74.7 176-167c0-104.8-99.8-175.8-146.8-324.3C201.2 7.1 188.6 0 176 0zm144 345c0 74.4-64.6 135-144 135S32 419.5 32 345c0-47.5 26.1-89.2 59.2-142 29.2-46.6 62.2-99.3 84.8-168.6 22.7 69.7 55.7 122.3 84.9 168.8 33 52.6 59.1 94.1 59.1 141.8zM384 0c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64zm0 96c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"]\n};\nvar faDharmachakra = {\n prefix: 'fal',\n iconName: 'dharmachakra',\n icon: [512, 512, [], \"f655\", \"M503.67 232.35l-24.81 1.03c-4.5-44.89-22.28-85.84-49.31-118.94l18.31-16.84c3.35-3.08 3.46-8.33.24-11.54l-22.15-22.15c-3.21-3.21-8.46-3.11-11.54.24l-16.84 18.31c-33.1-27.03-74.05-44.81-118.94-49.31l1.03-24.81a7.997 7.997 0 0 0-7.99-8.33h-31.32c-4.55 0-8.18 3.79-7.99 8.33l1.03 24.81c-44.88 4.5-85.84 22.28-118.94 49.31L97.6 64.15c-3.08-3.35-8.33-3.46-11.54-.24L63.91 86.05a7.99 7.99 0 0 0 .24 11.54l18.31 16.84c-27.04 33.1-44.81 74.05-49.31 118.94l-24.81-1.03c-4.55-.18-8.34 3.45-8.34 8v31.32c0 4.55 3.79 8.18 8.33 7.99l24.81-1.03c4.5 44.89 22.28 85.84 49.31 118.94l-18.3 16.84c-3.35 3.08-3.46 8.33-.24 11.54l22.15 22.15c3.21 3.22 8.46 3.11 11.54-.24l16.84-18.31c33.1 27.04 74.05 44.81 118.94 49.31l-1.03 24.81a7.997 7.997 0 0 0 7.99 8.33h31.32c4.55 0 8.18-3.79 7.99-8.33l-1.03-24.81c44.89-4.5 85.84-22.28 118.94-49.31l16.84 18.31c3.08 3.35 8.33 3.46 11.54.24l22.15-22.15a7.99 7.99 0 0 0-.24-11.54l-18.31-16.84c27.04-33.1 44.81-74.05 49.31-118.94l24.81 1.03c4.55.19 8.33-3.44 8.33-7.99v-31.32c.01-4.55-3.78-8.18-8.32-7.99zm-56.92 2.37l-96.49 4.02c-2.48-13.64-7.74-26.27-15.34-37.24l70.91-65.24c22.13 27.64 36.82 61.45 40.92 98.46zM256 320c-35.29 0-64-28.71-64-64s28.71-64 64-64 64 28.71 64 64-28.71 64-64 64zm119.74-213.83l-65.24 70.91c-10.97-7.6-23.6-12.86-37.24-15.34l4.02-96.49c37.01 4.1 70.82 18.79 98.46 40.92zM234.72 65.25l4.02 96.49c-13.64 2.48-26.27 7.74-37.24 15.34l-65.24-70.91c27.64-22.13 61.45-36.82 98.46-40.92zm-128.55 71.01l70.91 65.24c-7.6 10.97-12.86 23.6-15.34 37.24l-96.49-4.02c4.1-37.01 18.79-70.82 40.92-98.46zM65.25 277.28l96.49-4.02c2.48 13.64 7.74 26.27 15.34 37.24l-70.91 65.24c-22.13-27.64-36.82-61.45-40.92-98.46zm71.01 128.55l65.24-70.91c10.97 7.6 23.6 12.86 37.24 15.34l-4.02 96.49c-37.01-4.1-70.82-18.79-98.46-40.92zm141.02 40.92l-4.02-96.49c13.64-2.48 26.27-7.74 37.24-15.34l65.24 70.91c-27.64 22.13-61.45 36.82-98.46 40.92zm128.55-71.01l-70.91-65.24c7.6-10.97 12.86-23.6 15.34-37.24l96.49 4.02c-4.1 37.01-18.79 70.82-40.92 98.46z\"]\n};\nvar faDiagnoses = {\n prefix: 'fal',\n iconName: 'diagnoses',\n icon: [640, 512, [], \"f470\", \"M160 256c0 .5-.1 1-.1 1.4 46.7-18.1 103-33.4 160.1-33.4 44.9 0 89 9.6 128.6 22.4-1.3-9.8-.4-20.1 6.6-31.5C413.7 201.7 367.4 192 320 192c-61.1 0-120.5 16-170 35 6.2 8.1 10 18 10 29zm336 0c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm88.6 72.4l-17.8 26.7c-5 7.5-14.5 9-21.4 4.9-22.4-13.2-71.7-39.7-129.4-56.7V444c0 2.2 1.8 4 4 4h24c2.2 0 4-1.8 4-4v-95.8c37.9 14.9 67.8 31.5 81.2 39.4 20.4 12 49.1 8.1 64.3-14.7l17.8-26.7c13.1-19.7 11.4-51.8-15.1-67.7-12.4-7.4-30.9-17.7-53.2-28.5-2.3 11-8.6 20.5-17.1 27.3 23.2 11.1 42.2 21.6 53.9 28.6 7.8 4.7 9.9 14.9 4.8 22.5zM416 96c0-52.9-43.1-96-96-96s-96 43.1-96 96 43.1 96 96 96 96-43.1 96-96zm-96 64c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zM46.5 372.9c15 22.6 43.7 26.9 64.3 14.7 13.3-7.9 43.3-24.6 81.2-39.4V444c0 2.2 1.8 4 4 4h24c2.2 0 4-1.8 4-4V303.4c-57.7 16.9-107.1 43.5-129.4 56.7-7 4.1-16.4 2.5-21.4-4.9l-17.8-26.7c-5.1-7.6-2.9-17.8 4.9-22.5 5.7-3.4 13.4-7.8 22.1-12.5-8.5-6.8-14.8-16.2-17.2-27.1-8.2 4.5-15.5 8.7-21.3 12.2-26.4 15.8-28.3 47.8-15.1 67.7zM632 480H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h624c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM112 272c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm144 32c0 8.8 7.2 16 16 16s16-7.2 16-16-7.2-16-16-16-16 7.2-16 16zm96 96c0 8.8 7.2 16 16 16s16-7.2 16-16-7.2-16-16-16-16 7.2-16 16z\"]\n};\nvar faDiamond = {\n prefix: 'fal',\n iconName: 'diamond',\n icon: [448, 512, [], \"f219\", \"M253 13.4c-15.3-17.9-42.8-17.9-58.1 0L9.3 230.9c-12.4 14.5-12.4 35.6 0 50.2L195 498.6c15.3 17.9 42.8 17.9 58.1 0l185.6-217.5c12.4-14.5 12.4-35.6 0-50.2L253 13.4zm161.4 246.9L228.7 477.8c-2.5 2.9-6.9 2.9-9.4 0L33.6 260.3c-2.1-2.5-2.1-6.2 0-8.6L219.3 34.2c2.5-2.9 6.9-2.9 9.4 0l185.7 217.5c2.1 2.5 2.1 6.1 0 8.6z\"]\n};\nvar faDice = {\n prefix: 'fal',\n iconName: 'dice',\n icon: [640, 512, [], \"f522\", \"M480 328c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zM224 200c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm96 0c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm-192 0c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm96 96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm0-192c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm352 88H439.38c-2.89-5.17-6.26-10.15-10.65-14.54L270.54 19.28C257.69 6.42 240.84 0 224 0s-33.69 6.42-46.54 19.28L19.28 177.46c-25.7 25.7-25.7 67.38 0 93.08l158.18 158.18C190.31 441.57 207.16 448 224 448s33.69-6.43 46.54-19.28L320 379.26V448c0 35.35 28.65 64 64 64h192c35.35 0 64-28.65 64-64V256c0-35.35-28.65-64-64-64zM247.27 405.45c-6.21 6.21-14.48 9.64-23.27 9.64s-17.05-3.42-23.27-9.64L42.55 247.27c-6.21-6.22-9.64-14.48-9.64-23.27s3.42-17.05 9.64-23.27L200.73 42.55c6.21-6.21 14.48-9.64 23.27-9.64s17.05 3.42 23.27 9.64l158.18 158.18c6.22 6.21 9.64 14.48 9.64 23.27s-3.42 17.05-9.64 23.27L247.27 405.45zM608 448c0 17.64-14.36 32-32 32H384c-17.64 0-32-14.36-32-32V347.26l76.72-76.72C441.57 257.69 448 240.84 448 224h128c17.64 0 32 14.36 32 32v192z\"]\n};\nvar faDiceD10 = {\n prefix: 'fal',\n iconName: 'dice-d10',\n icon: [512, 512, [], \"f6cd\", \"M503.88 261.29L279.8 10.64C273.45 3.55 264.72 0 256 0s-17.45 3.55-23.8 10.64L8.12 261.29c-11.81 13.21-10.6 33.5 2.69 45.22l224.08 197.52c6.03 5.32 13.57 7.97 21.11 7.97 7.54 0 15.08-2.66 21.11-7.97L501.19 306.5c13.29-11.71 14.49-32.01 2.69-45.21zM256 297.95l-75.86-50.57 75.86-177 75.86 177L256 297.95zm-107.28-58.24L47.69 264.97 220.97 71.12l-72.25 168.59zm214.56 0L291.03 71.12 464.5 265.01l-101.22-25.3zM31.91 282.62l.01.04-.03-.02.02-.02zm17.03 15.03l108.34-27.09 82.76 55.19v140.22L48.94 297.65zM271.96 465.9V325.75l82.76-55.19 108.2 27.06L271.96 465.9z\"]\n};\nvar faDiceD12 = {\n prefix: 'fal',\n iconName: 'dice-d12',\n icon: [512, 512, [], \"f6ce\", \"M505.24 178.49l-47.7-95.41a63.972 63.972 0 0 0-28.62-28.62l-95.41-47.7A63.905 63.905 0 0 0 304.89 0h-97.78c-9.94 0-19.73 2.31-28.62 6.76l-95.41 47.7a63.972 63.972 0 0 0-28.62 28.62l-47.7 95.41A63.874 63.874 0 0 0 0 207.11v97.78c0 9.94 2.31 19.73 6.76 28.62l47.7 95.41a63.972 63.972 0 0 0 28.62 28.62l95.41 47.7a64.07 64.07 0 0 0 28.62 6.76h97.78c9.94 0 19.73-2.31 28.62-6.76l95.41-47.7a63.972 63.972 0 0 0 28.62-28.62l47.7-95.41a64.07 64.07 0 0 0 6.76-28.62v-97.78c0-9.94-2.31-19.74-6.76-28.62zm-29.55 12.44l-95.58 109.23L272 246.11V140.22l156.94-42.8 46.75 93.51zM308.8 480H203.2l-55.29-152.06L256 273.89l108.09 54.05L308.8 480zM199.55 32h112.89l82.85 41.42L256 111.41 116.71 73.42 199.55 32zM83.06 97.42L240 140.22V246.1l-108.11 54.05-95.58-109.22 46.75-93.51zM32 312.45v-77.88l81.99 93.7 48.42 133.16-74.56-37.28L32 312.45zm392.15 111.7l-74.56 37.28 48.42-133.16 81.99-93.7v77.88l-55.85 111.7z\"]\n};\nvar faDiceD20 = {\n prefix: 'fal',\n iconName: 'dice-d20',\n icon: [448, 512, [], \"f6cf\", \"M431.88 116.13L239.88 4.3a31.478 31.478 0 0 0-31.76 0l-192 111.84C6.15 121.94 0 132.75 0 144.46v223.09c0 11.71 6.15 22.51 16.12 28.32l192 111.83a31.478 31.478 0 0 0 31.76 0l192-111.83c9.97-5.81 16.12-16.62 16.12-28.32V144.46c0-11.71-6.15-22.52-16.12-28.33zM224 57.62L318.7 176H129.3L224 57.62zM124.62 208h198.75L224 369.47 124.62 208zm68.28 171.99L55.92 362.87l44.43-133.28 92.55 150.4zm154.75-150.41l44.43 133.28-136.98 17.13 92.55-150.41zm7.17-59.69L262.67 54.72l138.01 80.78-45.86 34.39zm-261.64 0l-46.24-34.68 138.54-80.7-92.3 115.38zm-16.01 27.98l-45.13 135.4.17-169.12 44.96 33.72zM208 414.12v56.43L85.4 398.8 208 414.12zm155.6-15.45L240 470.84v-56.72l123.6-15.45zm7.23-200.8l45.15-33.86-.17 168.79-44.98-134.93zM224.14 480h.17l-.09.05-.08-.05z\"]\n};\nvar faDiceD4 = {\n prefix: 'fal',\n iconName: 'dice-d4',\n icon: [512, 512, [], \"f6d0\", \"M504.9 289.03L280.84 11.86C274.45 3.96 265.23 0 256 0s-18.45 3.96-24.85 11.86L7.1 289.03c-11.31 14-8.84 34.57 5.47 45.49l224.05 170.94c5.72 4.37 12.55 6.55 19.38 6.55s13.66-2.18 19.38-6.55l224.05-170.94c14.31-10.92 16.78-31.5 5.47-45.49zM31.99 309.14L240 51.75v416.04L31.99 309.14zM256.02 480h.03l-.01.01-.02-.01zM272 467.82v-416l208.02 257.26L272 467.82z\"]\n};\nvar faDiceD6 = {\n prefix: 'fal',\n iconName: 'dice-d6',\n icon: [448, 512, [], \"f6d1\", \"M431.88 116.13L239.88 4.3a31.478 31.478 0 0 0-31.76 0l-192 111.84C6.15 121.94 0 132.75 0 144.46v223.09c0 11.71 6.15 22.51 16.12 28.32l192 111.83a31.478 31.478 0 0 0 31.76 0l192-111.83c9.97-5.81 16.12-16.62 16.12-28.32V144.46c0-11.71-6.15-22.52-16.12-28.33zM224 32.08l175.75 102.86L224 237.48 47.83 134.7 224 32.08zM32.21 162.65L208 265.18v205.37L32 367.54l.21-204.89zM240 470.84V265.18l175.98-102.64-.21 205.67L240 470.84z\"]\n};\nvar faDiceD8 = {\n prefix: 'fal',\n iconName: 'dice-d8',\n icon: [512, 512, [], \"f6d2\", \"M502.1 232.1L279.9 9.9C273.3 3.3 264.6 0 256 0s-17.3 3.3-23.9 9.9L9.9 232.1c-13.2 13.2-13.2 34.5 0 47.7L232.1 502c6.6 6.6 15.2 9.9 23.9 9.9s17.3-3.3 23.9-9.9l222.2-222.2c13.2-13.1 13.2-34.5 0-47.7zM240 464.7L61.2 285.9 240 362.5zm0-137L43.7 243.6 240 47.3zm32 137V362.5l178.8-76.6zm0-137V47.3l196.3 196.3z\"]\n};\nvar faDiceFive = {\n prefix: 'fal',\n iconName: 'dice-five',\n icon: [448, 512, [], \"f523\", \"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-64zm32 384c0 17.64-14.36 32-32 32H64c-17.64 0-32-14.36-32-32V96c0-17.64 14.36-32 32-32h320c17.64 0 32 14.36 32 32v320zM128 136c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm96 96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm-96 96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm192-192c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm0 192c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faDiceFour = {\n prefix: 'fal',\n iconName: 'dice-four',\n icon: [448, 512, [], \"f524\", \"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-64zm32 384c0 17.64-14.36 32-32 32H64c-17.64 0-32-14.36-32-32V96c0-17.64 14.36-32 32-32h320c17.64 0 32 14.36 32 32v320zM128 136c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm0 192c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm192-192c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm0 192c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faDiceOne = {\n prefix: 'fal',\n iconName: 'dice-one',\n icon: [448, 512, [], \"f525\", \"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-64zm32 384c0 17.64-14.36 32-32 32H64c-17.64 0-32-14.36-32-32V96c0-17.64 14.36-32 32-32h320c17.64 0 32 14.36 32 32v320zM224 232c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faDiceSix = {\n prefix: 'fal',\n iconName: 'dice-six',\n icon: [448, 512, [], \"f526\", \"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-64zm32 384c0 17.64-14.36 32-32 32H64c-17.64 0-32-14.36-32-32V96c0-17.64 14.36-32 32-32h320c17.64 0 32 14.36 32 32v320zM128 136c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm0 96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm192 0c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm-192 96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm192-192c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm0 192c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faDiceThree = {\n prefix: 'fal',\n iconName: 'dice-three',\n icon: [448, 512, [], \"f527\", \"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-64zm32 384c0 17.64-14.36 32-32 32H64c-17.64 0-32-14.36-32-32V96c0-17.64 14.36-32 32-32h320c17.64 0 32 14.36 32 32v320zM128 136c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm96 96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm96 96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faDiceTwo = {\n prefix: 'fal',\n iconName: 'dice-two',\n icon: [448, 512, [], \"f528\", \"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-64zm32 384c0 17.64-14.36 32-32 32H64c-17.64 0-32-14.36-32-32V96c0-17.64 14.36-32 32-32h320c17.64 0 32 14.36 32 32v320zM128 136c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm192 192c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faDigging = {\n prefix: 'fal',\n iconName: 'digging',\n icon: [576, 512, [], \"f85e\", \"M208 464a16 16 0 0 1-32 0V325.11l-47.75-25L63 469.74A16 16 0 0 1 48 480a16.28 16.28 0 0 1-5.75-1.07 16 16 0 0 1-9.18-20.68l66.59-173.14-28.54-14.95L3.2 446.75a48 48 0 0 0 27.6 62A47.47 47.47 0 0 0 48 512a48 48 0 0 0 44.82-30.78l50.69-131.8.49.24V464a48 48 0 0 0 96 0V358.63l-32-16.76zm103.06-48a32 32 0 0 0-30.35 21.88L256 512h320L474.07 305.68a32 32 0 0 0-56.07-2.15l-36 61.4-14.73-7.6a46.66 46.66 0 0 0-2.11-21.67c-10.16-28.14-18.47-51.81-25.47-71.84-22.73-64.81-35.05-99-56.65-122.69 30.45-8.4 53-36 53-69.13a72 72 0 0 0-144 0 71.26 71.26 0 0 0 4.91 25.56A145.19 145.19 0 0 0 176.73 96H104a48 48 0 0 0-36.87 17.26l-40 48a48 48 0 0 0 6.16 67.61 47.46 47.46 0 0 0 35.57 10.67l296.88 153L352 416zM264 32a40 40 0 1 1-40 40 40 40 0 0 1 40-40zm-58.81 241.77l26.65-26.37c4.56 12.27 10.09 27.83 17.23 48.18.11.31.24.69.35 1zM290.88 318c-4.22-11.9-8.18-23.12-11.62-33-16.79-47.85-25.92-73.31-34.85-88.83l-64.55 64.53-74.63-38.49L167.45 160H111.5l-35.2 42.24a16 16 0 1 1-24.57-20.5l34.68-42.09a32 32 0 0 1 24.7-11.65h64.36c17.49 0 34.93 3.48 50.65 11.17 43.35 21.2 49.94 39.93 83.32 135.24 6.42 18.28 14.07 40.06 23.05 65zm79.45 130l9.27-15.81L445.31 320h.12l79.07 160H300.41l10.66-32h59.26z\"]\n};\nvar faDigitalTachograph = {\n prefix: 'fal',\n iconName: 'digital-tachograph',\n icon: [640, 512, [], \"f566\", \"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-32zm0 288H32V128h576v256zM80 272h208c8.84 0 16-7.16 16-16v-80c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.16-16 16v80c0 8.84 7.16 16 16 16zm8-88h192v64H88v-64zM72 360h224c4.42 0 8-3.58 8-8v-8c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v8c0 4.42 3.58 8 8 8zm272 0h224c4.42 0 8-3.58 8-8v-8c0-4.42-3.58-8-8-8H344c-4.42 0-8 3.58-8 8v8c0 4.42 3.58 8 8 8zM80 288c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H80zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-16z\"]\n};\nvar faDiploma = {\n prefix: 'fal',\n iconName: 'diploma',\n icon: [640, 512, [], \"f5ea\", \"M608.64 47.56C603.02 38.01 591.58 32 579.27 32c-2.53 0-5.1.25-7.66.78L444.65 75.56A390.24 390.24 0 0 1 320 96c-42.38 0-84.48-6.9-124.65-20.44L68.39 32.78c-2.56-.53-5.13-.78-7.65-.78-12.31 0-23.75 6.01-29.38 15.56-41.81 70.94-41.81 217.95 0 288.89C36.99 345.99 48.42 352 60.74 352c2.53 0 5.09-.25 7.65-.78l126.96-42.78c4.29-1.45 8.74-2.3 13.08-3.56l-56.23 94.79a31.992 31.992 0 0 0-.29 32.16 32.007 32.007 0 0 0 27.81 16.16h20.2l15.61 19.81a32.009 32.009 0 0 0 25.13 12.19c11.56 0 22.23-6.24 27.9-16.32l51.47-91.57 51.53 91.5a32.004 32.004 0 0 0 53.03 4.1l15.52-19.71 20.35-.01a31.997 31.997 0 0 0 27.49-48.35l-56.3-94.73c4.32 1.25 8.73 2.1 13 3.54l126.96 42.78c2.56.53 5.13.78 7.66.78 12.31 0 23.75-6.01 29.38-15.55 41.8-70.94 41.8-217.95-.01-288.89zM185.13 278.11L60.74 320.03V320c-.8 0-1.45-.16-1.75-.16-.16 0-.23.05-.16.2-35.92-61.18-35.89-195.18-.53-255.43.15-.12.87-.51 2.82-.51l124.02 41.79c17.99 6.06 36.34 10.58 54.87 14.15v131.62l-8.35 14.07c-15.68 3.34-31.25 7.23-46.53 12.38zM424.56 416l-25.12 31.91L320 306.84 240.66 448l-25.22-32h-35.72L272 260.44v-135.5c15.91 1.82 31.9 3.07 48 3.07s32.09-1.25 48-3.07v135.5l92.44 155.55-35.88.01zm157.14-96.61c-.15.11-.87.5-2.83.5l-124-41.79c-15.27-5.14-30.83-9.04-46.5-12.38L400 251.65v-131.6c18.52-3.58 36.88-8.09 54.87-14.15L579.18 64h.09c.8 0 1.45.16 1.75.16.16 0 .22-.05.16-.2 35.91 61.18 35.88 195.19.52 255.43z\"]\n};\nvar faDirections = {\n prefix: 'fal',\n iconName: 'directions',\n icon: [512, 512, [], \"f5eb\", \"M502.61 233.32L278.68 9.39C272.42 3.13 264.21 0 256 0s-16.42 3.13-22.68 9.39L9.39 233.32c-12.52 12.53-12.52 32.83 0 45.36l223.93 223.93c6.26 6.26 14.47 9.39 22.68 9.39s16.42-3.13 22.68-9.39l223.93-223.93c12.52-12.53 12.52-32.83 0-45.36zM255.95 479.98L32.02 255.95 255.95 32.01c.01 0 .02-.01.05-.01l.05.02 223.93 224.03-224.03 223.93zM330.89 224H208c-26.51 0-48 21.49-48 48v40c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-40c0-8.84 7.16-16 16-16h122.89l-54.63 50.43c-3.25 3-3.45 8.06-.45 11.3l10.84 11.74c3 3.25 8.06 3.45 11.3.45l78.4-72.36c4.87-4.52 7.66-10.94 7.66-17.58s-2.78-13.06-7.72-17.62l-78.34-72.31c-3.25-3-8.31-2.79-11.3.45l-10.84 11.74c-3 3.25-2.79 8.31.45 11.3L330.89 224z\"]\n};\nvar faDiscDrive = {\n prefix: 'fal',\n iconName: 'disc-drive',\n icon: [512, 512, [], \"f8b5\", \"M256 224a32 32 0 1 0 32 32 32 32 0 0 0-32-32zm248 224h-24V96a64 64 0 0 0-64-64H96a64 64 0 0 0-64 64v352H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h496a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm-56 0H64V96a32 32 0 0 1 32-32h320a32 32 0 0 1 32 32zM256 96a160 160 0 1 0 160 160A160 160 0 0 0 256 96zm0 288a128 128 0 1 1 128-128 128.14 128.14 0 0 1-128 128z\"]\n};\nvar faDisease = {\n prefix: 'fal',\n iconName: 'disease',\n icon: [512, 512, [], \"f7fa\", \"M463.92 185.06L401 163.75c-13-4.41-22.5-13.58-25.4-24.53l-15-56.16c-6.28-23.38-25.56-41.41-51.6-48.24-28.7-7.5-58.83.18-78.39 20.18l-43.25 44.29c-9.19 9.38-23.5 14.4-38.12 13.16l-67.38-5.22c-31.31-2.42-60.43 12.11-74.18 37-11.68 21.19-9.94 45.63 4.75 65.4l36.12 48.69c6.81 9.19 7.88 20.09 2.91 29.92L24.8 341.17c-10.68 21.22-8.25 45.26 6.5 64.33 17.85 23.06 49.19 33.65 80.06 27L177 418.36c14.54-3.13 29.57-.08 40.57 8.07l50.9 37.91A81.26 81.26 0 0 0 316.86 480a83.83 83.83 0 0 0 34.71-7.48c23.44-10.66 38.5-31 40.28-54.35l4.44-57.46c.81-10.87 8.28-20.92 20-26.86l58.13-29.47c24.87-12.62 39.21-36.22 37.43-61.58-1.85-26.22-20.25-48.33-47.93-57.74zm-4 90.79l-58.13 29.47c-21.75 11.05-35.75 30.85-37.4 53L360 415.73c-1.25 16.66-15.53 24.89-21.62 27.67-16.72 7.63-36.66 5.82-50.78-4.71l-50.94-37.93c-13.66-10.15-31-15.59-48.56-15.59a83.84 83.84 0 0 0-17.84 1.9l-65.6 14.19c-23 5-40.15-5.19-48-15.36-4.18-5.4-10.15-16.55-3.22-30.34L80 302.66c10.47-20.72 8.31-44.4-5.78-63.41l-36.1-48.69c-9.72-13.09-5.69-24.93-2.44-30.83 7.75-14 25.34-21.9 43.68-20.59l67.38 5.22c24.31 1.87 47.78-6.61 63.5-22.71l43.24-44.26c11.38-11.64 30.07-16.19 47.52-11.6 14.75 3.86 25.53 13.41 28.75 25.54l15 56.14c5.72 21.33 22.94 38.73 46.09 46.59l62.84 21.32c15.53 5.26 25.38 16.36 26.31 29.69.83 12.47-6.67 23.98-20.07 30.78zM160 192a32 32 0 1 0 32 32 32 32 0 0 0-32-32zm128 96a32 32 0 1 0 32 32 32 32 0 0 0-32-32zm16-96a16 16 0 1 0 16 16 16 16 0 0 0-16-16z\"]\n};\nvar faDivide = {\n prefix: 'fal',\n iconName: 'divide',\n icon: [384, 512, [], \"f529\", \"M376 232H8c-4.42 0-8 3.58-8 8v32c0 4.42 3.58 8 8 8h368c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8zM192 336c-26.46 0-48 21.54-48 48s21.54 48 48 48 48-21.54 48-48-21.54-48-48-48zm0-160c26.46 0 48-21.54 48-48s-21.54-48-48-48-48 21.54-48 48 21.54 48 48 48z\"]\n};\nvar faDizzy = {\n prefix: 'fal',\n iconName: 'dizzy',\n icon: [496, 512, [], \"f567\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm0-184c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64zm0 96c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm-28.7-140.7c6.2-6.2 6.2-16.4 0-22.6L190.6 192l28.7-28.7c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.2-22.6 0L168 169.4l-28.7-28.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6l28.7 28.7-28.7 28.7c-6.2 6.2-6.2 16.4 0 22.6 6.2 6.2 16.4 6.3 22.6 0l28.7-28.7 28.7 28.7c6.2 6.3 16.4 6.3 22.6 0zm160-102.6c-6.2-6.2-16.4-6.2-22.6 0L328 169.4l-28.7-28.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6l28.7 28.7-28.7 28.7c-6.2 6.2-6.2 16.4 0 22.6 6.2 6.2 16.4 6.3 22.6 0l28.7-28.7 28.7 28.7c6.2 6.2 16.4 6.3 22.6 0 6.2-6.2 6.2-16.4 0-22.6L350.6 192l28.7-28.7c6.3-6.2 6.3-16.4 0-22.6z\"]\n};\nvar faDna = {\n prefix: 'fal',\n iconName: 'dna',\n icon: [384, 512, [], \"f471\", \"M0 503.5c-.3 4.6 3.3 8.5 8 8.5h16.1c4.2 0 7.7-3.1 8-7.3.4-5.6 1.4-14.1 3.5-24.7h312.6c2.2 10.7 3.3 19.3 3.7 24.8.4 4.1 3.8 7.2 8 7.2H376c4.7 0 8.3-3.9 8-8.5-2.3-31.5-18.5-142-132.2-227.9-9.3 6.3-19.2 12.4-29.6 18.3 26 18.4 46.6 38.2 63.2 58.2H97.7c24.1-28.8 57-57.5 102-82C360.9 182.3 381.4 44.4 384 8.5c.3-4.6-3.3-8.5-8-8.5h-16.1c-4.2 0-7.7 3.1-8 7.3-.4 5.6-1.4 14.2-3.5 24.8H35.8c-2.2-10.7-3.2-19.3-3.7-24.8-.4-4.1-3.8-7.2-8-7.2L8 0C3.4 0-.3 3.9 0 8.5c2.5 34 21.7 159.5 161 247.3C21.3 343.6 2.5 469.5 0 503.5zM340 64c-6.3 19.2-15.9 41.2-30.4 64H75c-14.4-22.9-24.1-44.8-30.5-64H340zM192 237.4c-40.7-23.3-71.2-50.2-93.8-77.4h188.1c-22.7 27.1-53.4 53.9-94.3 77.4zM44 448c6.3-19.2 15.9-41.1 30.4-64h234.5c14.5 22.9 24.2 44.9 30.6 64H44z\"]\n};\nvar faDoNotEnter = {\n prefix: 'fal',\n iconName: 'do-not-enter',\n icon: [496, 512, [], \"f5ec\", \"M394.67 192H101.33C93.97 192 88 199.16 88 208v96c0 8.84 5.97 16 13.33 16h293.33c7.36 0 13.33-7.16 13.33-16v-96c.01-8.84-5.96-16-13.32-16zM376 288H120v-64h256v64zM248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216z\"]\n};\nvar faDog = {\n prefix: 'fal',\n iconName: 'dog',\n icon: [576, 512, [], \"f6d3\", \"M528,96H464l-7.16-14.31C452,71.92,439.13,64,428.22,64H358.59L331.31,36.72A15.57,15.57,0,0,0,320.13,32,16,16,0,0,0,304,48V224H192a95.53,95.53,0,0,0-52.94,16H112a48.05,48.05,0,0,1-48-48,16,16,0,0,0-32,0,79.94,79.94,0,0,0,77.47,79.73A95.08,95.08,0,0,0,96,320V480a32,32,0,0,0,32,32h64a32,32,0,0,0,32-32V384h96v96a32,32,0,0,0,32,32h64a32,32,0,0,0,32-32V240h32a64,64,0,0,0,64-64V112A16,16,0,0,0,528,96ZM416,480H352V352H192V480H128V320a64.07,64.07,0,0,1,64-64H310.06L416,282.48Zm96-304a32,32,0,0,1-32,32H416v41.52l-80-20V86.66L345.34,96h82.88l16,32H512Zm-96-48a16,16,0,1,1-16-16A16,16,0,0,1,416,128Z\"]\n};\nvar faDogLeashed = {\n prefix: 'fal',\n iconName: 'dog-leashed',\n icon: [576, 512, [], \"f6d4\", \"M544,112v64a64,64,0,0,1-64,64H448V480a32,32,0,0,1-32,32H352a32,32,0,0,1-32-32V384H224v96a32,32,0,0,1-32,32H128a32,32,0,0,1-32-32V320a95,95,0,0,1,13.46-48.26A80,80,0,0,1,32,192a16,16,0,0,1,32,0,48.05,48.05,0,0,0,48,48h27.05A95.48,95.48,0,0,1,192,224h79.94L34.88,26.45a8,8,0,0,1-1-11.27L44.11,2.88a8,8,0,0,1,11.27-1L304,209V48a16,16,0,0,1,16.12-16,15.67,15.67,0,0,1,11.2,4.72L358.6,64h69.62c10.92,0,23.74,7.93,28.62,17.69L464,96h64A16,16,0,0,1,544,112ZM288,256H192a64.07,64.07,0,0,0-64,64V480h64V352h96Zm128,26.48-96-24V352h32V480h64ZM512,128H444.22l-16-32H345.34L336,86.66V229.52l80,20V208h64a32,32,0,0,0,32-32Zm-96,0a16,16,0,1,1-16-16A16,16,0,0,1,416,128Z\"]\n};\nvar faDollarSign = {\n prefix: 'fal',\n iconName: 'dollar-sign',\n icon: [256, 512, [], \"f155\", \"M191.9 259.3L73.7 222.2C49.2 214.5 32 189 32 160.3 32 124.8 57.6 96 89 96h73.8c22.2 0 43.3 8.6 60.1 24.5 3.1 2.9 7.8 3.2 11 .3l11.9-10.8c3.4-3.1 3.6-8.4.4-11.6-22.8-22-52.7-34.5-83.3-34.5H144V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56H89c-49.1 0-89 43.2-89 96.3 0 42.6 26.4 80.6 64.1 92.4l118.2 37.1c24.6 7.7 41.7 33.2 41.7 61.9 0 35.4-25.6 64.3-57 64.3H93.2c-22.2 0-43.3-8.6-60.1-24.5-3.1-2.9-7.8-3.2-11-.3L10.3 402c-3.3 3-3.6 8.4-.3 11.5 22.8 22 52.7 34.5 83.3 34.5H112v56c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-56h23c49.1 0 89-43.2 89-96.3 0-42.5-26.4-80.5-64.1-92.4z\"]\n};\nvar faDolly = {\n prefix: 'fal',\n iconName: 'dolly',\n icon: [576, 512, [], \"f472\", \"M575.6 309.8l-5.1-15.2c-1.4-4.2-5.9-6.5-10.1-5.1L526 301.1 451.5 77.9c-2.7-8.1-8.4-14.7-16-18.5-7.7-3.8-16.3-4.4-24.4-1.7L176.3 136l-18-50.7C146.9 53.3 116.7 32 82.8 32H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h74.8c20.3 0 38.4 12.8 45.2 31.9l96.7 271.9c-23.3 17.2-37.2 46.5-31.4 78.9 5.6 31.3 30.4 57 61.5 63.5 51.7 10.7 97.2-28.4 97.2-78.2 0-13.1-3.4-25.2-9-36.1l227.5-76c4.2-1.4 6.5-5.9 5.1-10.1zM187 166.1l106.4-35.5 25 74.9c1.4 4.2 5.9 6.5 10.1 5.1l15.2-5.1c4.2-1.4 6.5-5.9 5.1-10.1l-25-74.9L421.2 88l74.5 223.3-174.4 58.1C307.6 358.7 290.7 352 272 352c-6.3 0-12.3.9-18.1 2.3L187 166.1zM272 480c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z\"]\n};\nvar faDollyEmpty = {\n prefix: 'fal',\n iconName: 'dolly-empty',\n icon: [576, 512, [], \"f473\", \"M570.5 294.6c-1.4-4.2-5.9-6.5-10.1-5.1l-239.1 79.8C307.6 358.7 290.7 352 272 352c-6.3 0-12.3.9-18.1 2.3l-95.7-269C146.9 53.3 116.7 32 82.8 32H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h74.8c20.3 0 38.4 12.8 45.2 31.9l96.7 271.9c-23.3 17.2-37.2 46.5-31.4 78.9 5.6 31.3 30.4 57.1 61.5 63.5C306.5 521 352 481.8 352 432c0-13.1-3.4-25.2-9-36.1l227.5-76c4.2-1.4 6.5-5.9 5.1-10.1l-5.1-15.2zM272 480c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z\"]\n};\nvar faDollyFlatbed = {\n prefix: 'fal',\n iconName: 'dolly-flatbed',\n icon: [640, 512, [], \"f474\", \"M208 352h384c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16H208c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16zM352 96h96v80.7l-36.1-14.4-11.9-4.8-11.9 4.8-36.1 14.4V96zm-128 0h96v128l80-32 80 32V96h96v224H224V96zm408 320H128V8c0-4.4-3.6-8-8-8H8C3.6 0 0 3.6 0 8v16c0 4.4 3.6 8 8 8h88v408c0 4.4 3.6 8 8 8h58.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-16H632c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-424 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm288 0c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z\"]\n};\nvar faDollyFlatbedAlt = {\n prefix: 'fal',\n iconName: 'dolly-flatbed-alt',\n icon: [640, 512, [], \"f475\", \"M208 352h384c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16h-48V80c0-8.8-7.2-16-16-16H208c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16zM416 96h96v96h-96V96zm0 128h160v96H416v-96zM224 96h160v224H224V96zm408 320H128V8c0-4.4-3.6-8-8-8H8C3.6 0 0 3.6 0 8v16c0 4.4 3.6 8 8 8h88v408c0 4.4 3.6 8 8 8h58.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-16H632c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-424 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm288 0c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z\"]\n};\nvar faDollyFlatbedEmpty = {\n prefix: 'fal',\n iconName: 'dolly-flatbed-empty',\n icon: [640, 512, [], \"f476\", \"M632 416H128V8c0-4.4-3.6-8-8-8H8C3.6 0 0 3.6 0 8v16c0 4.4 3.6 8 8 8h88v408c0 4.4 3.6 8 8 8h58.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-16H632c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-408 48c0 8.8-7.2 16-16 16s-16-7.2-16-16 7.2-16 16-16 16 7.2 16 16zm288 0c0 8.8-7.2 16-16 16s-16-7.2-16-16 7.2-16 16-16 16 7.2 16 16z\"]\n};\nvar faDonate = {\n prefix: 'fal',\n iconName: 'donate',\n icon: [512, 512, [], \"f4b9\", \"M224.7 215.7l56.4 16.1c8.8 2.5 14.9 10.6 14.9 19.7 0 11.3-9.2 20.5-20.5 20.5h-36.9c-8.2 0-16.1-2.6-22.6-7.3-3-2.2-7.2-1.5-9.8 1.2l-11.4 11.4c-3.5 3.5-2.9 9.2 1 12.2 12.3 9.4 27.2 14.5 42.9 14.5h1.4v24c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-24h1.4c22.8 0 44.3-13.6 51.7-35.2 10.1-29.6-7.3-59.8-35.1-67.8L231 184.1c-8.8-2.5-14.9-10.6-14.9-19.7 0-11.3 9.2-20.5 20.5-20.5h36.9c8.2 0 16.1 2.6 22.6 7.3 3 2.2 7.2 1.5 9.8-1.2l11.4-11.4c3.5-3.5 2.9-9.2-1-12.2-12.3-9.4-27.2-14.5-42.9-14.5H272V88c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v24h-3.5c-30.6 0-55.1 26.3-52.2 57.5 2 22.1 19 40.1 40.4 46.2zM480 288h-32c10.3-24.6 16-51.6 16-80C464 93.1 370.9 0 256 0S48 93.1 48 208c0 28.4 5.7 55.4 16 80H32c-17.7 0-32 14.4-32 32v160c0 17.6 14.3 32 32 32h448c17.7 0 32-14.4 32-32V320c0-17.6-14.3-32-32-32zM256 32c97 0 176 79 176 176s-79 176-176 176S80 305 80 208 159 32 256 32zm224 448H32V320h48.9c16.6 25.8 38.6 47.7 64.6 64H104c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h304c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-41.5c26-16.3 48-38.2 64.6-64H480v160z\"]\n};\nvar faDoorClosed = {\n prefix: 'fal',\n iconName: 'door-closed',\n icon: [640, 512, [], \"f52a\", \"M400 288c17.67 0 32-14.33 32-32s-14.33-32-32-32-32 14.33-32 32 14.33 32 32 32zm232 192H512V32c0-17.67-14.33-32-32-32H160c-17.67 0-32 14.33-32 32v448H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h624c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-152 0H160V32h320v448z\"]\n};\nvar faDoorOpen = {\n prefix: 'fal',\n iconName: 'door-open',\n icon: [640, 512, [], \"f52b\", \"M288 288c13.25 0 24-14.33 24-32s-10.75-32-24-32-24 14.33-24 32 10.75 32 24 32zm344 192H512V96c0-17.67-14.33-32-32-32h-96V33.18C384 14.42 369.2 0 352.06 0c-2.57 0-5.19.32-7.83 1.01l-192 49.74C137.99 54.44 128 67.7 128 82.92V480H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h624c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM352 33.18V480H160l.26-398.27 191.8-49.69-.06 1.14zM480 480h-96V96h96v384z\"]\n};\nvar faDotCircle = {\n prefix: 'fal',\n iconName: 'dot-circle',\n icon: [512, 512, [], \"f192\", \"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 464c-118.663 0-216-96.055-216-216 0-118.663 96.055-216 216-216 118.663 0 216 96.055 216 216 0 118.663-96.055 216-216 216zm0-296c-44.183 0-80 35.817-80 80s35.817 80 80 80 80-35.817 80-80-35.817-80-80-80zm0 128c-26.467 0-48-21.533-48-48s21.533-48 48-48 48 21.533 48 48-21.533 48-48 48z\"]\n};\nvar faDove = {\n prefix: 'fal',\n iconName: 'dove',\n icon: [512, 512, [], \"f4ba\", \"M368 160.1c0 8.8 7.2 16 16 16s16-7.2 16-16-7.2-16-16-16-16 7.1-16 16zM384 64c-46.5 0-85.3 33.1-94.1 77.1-29.2-36.6-48.9-80.3-56-127.3C231.8.6 215-5.1 206 5.5c-35.3 41.7-53 88.5-58.7 122.3-25.3-24.4-46-53.3-60.4-86-5.5-12.6-23.3-13.1-29.1-.7-16 34-25.3 71.9-25.8 112-.6 42.9 9.8 130.2 110.6 211.8L13.8 397.1C1.5 400.2-3.9 414.3 3 425c19.9 30.7 68.9 82.6 174.8 87 13.4.6 22.7-6.8 25.2-9l63.9-54.8H320c88.4 0 160-71.7 160-160.1V160l32-96H384zm-174.1-9.7c14.1 50.3 41.2 96 78.1 133V200c-41.1-7.4-78.8-24.3-111.3-47.8 3.2-41.8 19.4-75.8 33.2-97.9zM448 154.7v133.5c0 70.6-57.4 128.1-128 128.1h-64.9s-75.2 63.8-76 63.8c-74.6-3.1-115.8-32.4-137.4-56.9l170.8-42.7C164.9 341.8 62.4 276.4 64 153.5c.3-22.7 3.7-44.9 10.3-66.4C156.4 226.2 300 235.9 320 238.2v-78.1c0-35.4 28.7-64.1 64-64.1h83.6L448 154.7z\"]\n};\nvar faDownload = {\n prefix: 'fal',\n iconName: 'download',\n icon: [512, 512, [], \"f019\", \"M452 432c0 11-9 20-20 20s-20-9-20-20 9-20 20-20 20 9 20 20zm-84-20c-11 0-20 9-20 20s9 20 20 20 20-9 20-20-9-20-20-20zm144-48v104c0 24.3-19.7 44-44 44H44c-24.3 0-44-19.7-44-44V364c0-24.3 19.7-44 44-44h99.4L87 263.6c-25.2-25.2-7.3-68.3 28.3-68.3H168V40c0-22.1 17.9-40 40-40h96c22.1 0 40 17.9 40 40v155.3h52.7c35.6 0 53.4 43.1 28.3 68.3L368.6 320H468c24.3 0 44 19.7 44 44zm-261.7 17.7c3.1 3.1 8.2 3.1 11.3 0L402.3 241c5-5 1.5-13.7-5.7-13.7H312V40c0-4.4-3.6-8-8-8h-96c-4.4 0-8 3.6-8 8v187.3h-84.7c-7.1 0-10.7 8.6-5.7 13.7l140.7 140.7zM480 364c0-6.6-5.4-12-12-12H336.6l-52.3 52.3c-15.6 15.6-41 15.6-56.6 0L175.4 352H44c-6.6 0-12 5.4-12 12v104c0 6.6 5.4 12 12 12h424c6.6 0 12-5.4 12-12V364z\"]\n};\nvar faDraftingCompass = {\n prefix: 'fal',\n iconName: 'drafting-compass',\n icon: [512, 512, [], \"f568\", \"M433.86 304.31c21.47-18.17 40.59-39.34 55.75-63.8 2.38-3.83 1.01-8.95-2.89-11.21l-13.86-8.03c-3.73-2.16-8.41-.89-10.69 2.77-12.29 19.75-27.49 37.08-44.51 52.2l-77.71-134.59C347.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.66L96.11 273.19c-15.81-14.44-30.21-30.57-41.77-49.14-2.28-3.66-6.96-4.94-10.69-2.77l-13.86 8.03c-3.9 2.26-5.27 7.37-2.89 11.21 14.43 23.29 32.76 43.22 53 60.76L0 439.66l7.02 58.25c1.01 8.35 8.11 14.1 15.88 14.1 2.08 0 4.21-.41 6.29-1.3l53.95-23.04 78.85-136.57c30.37 11.71 62.83 18.33 96.26 18.33 32.07 0 63.27-6.12 92.63-16.82l77.98 135.06 53.95 23.04c2.07.88 4.2 1.3 6.29 1.3 7.77 0 14.88-5.75 15.88-14.1l7.02-58.25-78.14-135.35zm-41.75-8.32c-8.87 5.97-18.11 11.3-27.69 16.04l-73.26-126.89c10.11-3.99 19.19-9.78 27.28-16.76l73.67 127.61zM256 32c35.35 0 64 28.65 64 64s-28.65 64-64 64-64-28.65-64-64 28.65-64 64-64zM60.76 462.42l-24.52 10.47-3.19-26.47 160.52-278.04c8.09 6.98 17.17 12.77 27.28 16.76L60.76 462.42zm197.49-125.01c-27.73 0-54.72-5.11-80.11-14.3l75.81-131.31c.7.02 1.34.21 2.04.21s1.35-.19 2.04-.21l76.54 132.57c-24.33 8.22-49.96 13.04-76.32 13.04zm217.51 135.48l-24.52-10.47-70.82-122.66c9.54-4.82 18.74-10.2 27.66-16.1l70.87 122.76-3.19 26.47z\"]\n};\nvar faDragon = {\n prefix: 'fal',\n iconName: 'dragon',\n icon: [640, 512, [], \"f6d5\", \"M481.01 119.95c14.92.86 27.35-9.89 30.88-24.58L453.47 80c-6.49 27.12 15.51 39.26 27.54 39.95zm54.5 131.8c-29.84-16.98-55.61-31.64-55.61-51.38V192h16.96l28.62 22.03c8.34 6.42 18.74 9.97 29.27 9.97h29.18c21.15 0 40.09-14.17 46.02-34.45l7.4-25.16c5.84-19.8 1.88-41.44-10.62-57.91L569.8 31.59C554.78 11.81 530.98 0 506.14 0H297.16c-19.47 0-33.09 24.04-15.4 41.25l37.49 30.25-32.55 13.42c-16.19 7.94-19.14 32.81 1.13 42.64l48.11 19.25v50.89l-190.3-47.88c-19.18-4.86-39.68 2.83-50.99 19.08L3.76 299.12c-5.03 7.91-5 17.72.03 25.59 1.69 2.62 9.54 13.11 24.99 10.91l115.02-21.8-12.07 17.3c-5.03 7.91-5 17.72.03 25.59 6.7 10.45 17.87 11.86 24.15 11.05l202.87-27.39c8.33 16.71 18.17 32.35 31.17 45.73-130.55 8.75-252.39 36.8-364.13 61.33C10.86 450.7.01 464.1.01 479.31c0 18 14.75 32.64 32.87 32.64l474.01.05c42.65 0 83.14-19.77 108.29-52.89 23.4-30.8 30.49-68.73 19.9-106.8-14.5-52.15-61.68-79-99.57-100.56zM41.72 300.62l79.17-113.41c3.75-5.39 10.59-7.86 17-6.36l84.07 21.02L170 276.3 41.72 300.62zm127.18 33.1l86.23-123.48 80.79 20.5c0 47.9 8.68 72.63 10.6 79L168.9 333.72zM506.89 480H32c230.53-56.77 352.62-62.36 400.47-64.02 15.54-.53 21.22-20.83 8.22-29.34-48.96-32.23-72.76-80.92-72.76-148.83V135.98c0-6.55-3.97-12.42-10.06-14.86l-38.15-15.23 36.71-15.09c5.22-2.16 8.94-6.91 9.75-12.5s-1.41-11.2-5.81-14.75L321.15 32h184.99c14.9 0 29.18 7.08 38.18 18.95l56.92 74.91c6.38 8.38 8.4 19.39 5.44 29.48l-7.4 25.19c-2 6.75-8.31 11.47-15.34 11.47h-29.18c-3.56 0-6.9-1.14-9.75-3.33l-32.96-25.36a16.01 16.01 0 0 0-9.75-3.31h-38.4c-8.84 0-16 7.16-16 16v24.38c0 38.34 34.87 58.19 71.8 79.19 36.18 20.59 73.58 41.89 84.57 81.33 19.36 69.86-41.14 119.1-97.38 119.1z\"]\n};\nvar faDrawCircle = {\n prefix: 'fal',\n iconName: 'draw-circle',\n icon: [512, 512, [], \"f5ed\", \"M512 256c0-33.51-25.84-60.69-58.63-63.46-20.48-63.5-70.41-113.43-133.91-133.91C316.69 25.84 289.51 0 256 0s-60.69 25.84-63.46 58.63c-63.5 20.48-113.43 70.41-133.91 133.91C25.84 195.31 0 222.49 0 256c0 33.51 25.84 60.69 58.63 63.46 20.48 63.5 70.41 113.43 133.91 133.91C195.31 486.16 222.49 512 256 512s60.69-25.84 63.46-58.63c63.5-20.48 113.43-70.41 133.91-133.91C486.16 316.69 512 289.51 512 256zM256 32c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32zM32 256c0-17.64 14.36-32 32-32s32 14.36 32 32-14.36 32-32 32-32-14.36-32-32zm224 224c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32zm58.12-58.47C304.04 399.43 281.88 384 256 384s-48.04 15.43-58.12 37.53c-50.16-17.67-89.73-57.24-107.4-107.4C112.57 304.04 128 281.88 128 256c0-25.88-15.43-48.04-37.53-58.12 17.67-50.17 57.24-89.73 107.4-107.4C207.96 112.57 230.12 128 256 128s48.04-15.43 58.12-37.53c50.16 17.67 89.73 57.24 107.4 107.4C399.43 207.96 384 230.12 384 256c0 25.88 15.43 48.04 37.53 58.12-17.68 50.17-57.25 89.74-107.41 107.41zM448 288c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32z\"]\n};\nvar faDrawPolygon = {\n prefix: 'fal',\n iconName: 'draw-polygon',\n icon: [448, 512, [], \"f5ee\", \"M384 352c-6.3 0-12.26 1.19-18.01 2.89l-32.42-54.02C344.95 289.31 352 273.49 352 256s-7.05-33.31-18.42-44.87L366 157.11c5.75 1.7 11.71 2.89 18.01 2.89 35.35 0 64-28.65 64-64s-28.65-64-64-64c-29.79 0-54.6 20.45-61.74 48H125.74C118.6 52.45 93.79 32 64 32 28.65 32 0 60.65 0 96c0 29.79 20.44 54.6 48 61.74v196.53C20.44 361.4 0 386.21 0 416c0 35.35 28.65 64 64 64 29.79 0 54.6-20.44 61.74-48h196.53c7.14 27.56 31.95 48 61.74 48 35.35 0 64-28.65 64-64-.01-35.35-28.66-64-64.01-64zm-304 2.26V157.74c22.41-5.8 39.93-23.32 45.74-45.74h196.53c2.86 11.04 8.4 20.99 16.16 28.87l-32.42 54.02c-5.75-1.7-11.71-2.89-18.01-2.89-35.35 0-64 28.65-64 64s28.65 64 64 64c6.3 0 12.26-1.19 18.01-2.89l32.42 54.02c-7.76 7.88-13.3 17.83-16.16 28.87H125.74A63.814 63.814 0 0 0 80 354.26zM288 288c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32zm96-224c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32zM32 96c0-17.64 14.36-32 32-32s32 14.36 32 32-14.36 32-32 32-32-14.36-32-32zm32 352c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32zm320 0c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32z\"]\n};\nvar faDrawSquare = {\n prefix: 'fal',\n iconName: 'draw-square',\n icon: [448, 512, [], \"f5ef\", \"M400 354.26V157.74c27.56-7.14 48-31.95 48-61.74 0-35.35-28.65-64-64-64-29.79 0-54.6 20.45-61.74 48H125.74C118.6 52.45 93.79 32 64 32 28.65 32 0 60.65 0 96c0 29.79 20.44 54.6 48 61.74v196.53C20.44 361.4 0 386.21 0 416c0 35.35 28.65 64 64 64 29.79 0 54.6-20.44 61.74-48h196.53c7.14 27.56 31.95 48 61.74 48 35.35 0 64-28.65 64-64-.01-29.79-20.45-54.6-48.01-61.74zM322.26 400H125.74c-5.8-22.41-23.32-39.93-45.74-45.74V157.74c22.41-5.8 39.93-23.32 45.74-45.74h196.53c5.8 22.41 23.32 39.93 45.74 45.74v196.53c-22.42 5.8-39.94 23.32-45.75 45.73zM384 64c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32zM32 96c0-17.64 14.36-32 32-32s32 14.36 32 32-14.36 32-32 32-32-14.36-32-32zm32 352c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32zm320 0c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32z\"]\n};\nvar faDreidel = {\n prefix: 'fal',\n iconName: 'dreidel',\n icon: [448, 512, [], \"f792\", \"M438.6 64L416 41.4c-12.5-12.5-32.8-12.5-45.3 0L278.1 134l-60.6-60.6c-6.5-6.5-15.1-9.8-23.6-9.8s-17.1 3.3-23.6 9.8L19.6 224C7 236.5 0 253.5 0 271.3v141.8c0 37 29.9 66.9 66.9 66.9h141.8c17.7 0 34.7-7 47.3-19.6l150.7-150.7c13.1-13.1 13.1-34.2 0-47.3l-60.6-60.6 92.6-92.6c12.4-12.4 12.4-32.7-.1-45.2zM233.4 437.8c-6.6 6.6-15.3 10.2-24.7 10.2H66.9C47.6 448 32 432.4 32 413.1V271.3c0-9.3 3.6-18.1 10.2-24.7l59.4-59.4 191.2 191.2-59.4 59.4zM384 287.1l-68.7 68.7-191.1-191.2L192.9 96c.1-.1.4-.4 1-.4l1 .4L384 285.1c.6.5.6 1.5 0 2zm-60.6-107.9l-22.6-22.6L393.4 64 416 86.6l-92.6 92.6z\"]\n};\nvar faDrone = {\n prefix: 'fal',\n iconName: 'drone',\n icon: [512, 512, [], \"f85f\", \"M302.87,128c6.68,0,12.75-2.57,18.11-6.35a78.8574,78.8574,0,0,1-1-9.65,80,80,0,1,1,80,80,78.64886,78.64886,0,0,1-9.65-1c-3.79,5.36-6.35,11.43-6.35,18.11v13.26a112.703,112.703,0,0,0,15.9099,1.13245c59.63853,0,111.624-48.159,111.624-111.90443,0-59.6385-48.15906-111.62393-111.90445-111.62393-58.38959,0-111.60974,46.99339-111.60974,111.764L288,112a110.99719,110.99719,0,0,0,1.61,16ZM400,431.99994a32,32,0,0,0,0-64c-2.77,0-5.24.91-7.8,1.57l-21.45-21.45A64,64,0,0,1,352,302.87V209.13a63.99991,63.99991,0,0,1,18.75-45.25l21.45-21.45c2.56.66,5,1.57,7.8,1.57a32,32,0,1,0-32-32c0,2.77.91,5.24,1.57,7.8l-21.45,21.45A63.99991,63.99991,0,0,1,302.87,160H209.13a63.99991,63.99991,0,0,1-45.25-18.75L142.43,119.8c.66-2.56,1.57-5.03,1.57-7.8a32,32,0,1,0-32,32c2.8,0,5.24-.91,7.8-1.57l21.45,21.45A63.99991,63.99991,0,0,1,160,209.13v93.74a64,64,0,0,1-18.75,45.24993L119.8,369.57c-2.56-.66-5.03-1.57-7.8-1.57a32,32,0,1,0,32,32c0-2.8-.91-5.24-1.57-7.8l21.45-21.46A63.99973,63.99973,0,0,1,209.13,352h93.74a63.99973,63.99973,0,0,1,45.25,18.74l21.45,21.46c-.66,2.56-1.57,5-1.57,7.8A32,32,0,0,0,400,431.99994ZM320,320H192V192H320Zm192.00593,79.60957c0-58.38963-46.9934-111.60983-111.764-111.60983L400,288a110.99719,110.99719,0,0,0-16,1.61v13.26c0,6.68,2.57,12.75,6.35,18.11a78.84341,78.84341,0,0,1,9.65-1,80,80,0,1,1-80,80,78.66278,78.66278,0,0,1,1-9.65c-5.36-3.78-11.43-6.35-18.11-6.35h-13.28a112.70134,112.70134,0,0,0-1.13248,15.91c0,59.6385,48.159,111.624,111.90439,111.624C460.03838,511.51394,512.00593,463.34218,512.00593,399.60957ZM209.11,383.98c-6.68,0-12.75,2.57-18.11,6.35a78.66278,78.66278,0,0,1,1,9.65,80,80,0,1,1-80-80,78.84341,78.84341,0,0,1,9.65,1c3.78-5.36,6.35-11.43,6.35-18.11V289.61A110.99719,110.99719,0,0,0,112,288l-.24189-.00026c-65.16452,0-111.764,53.56054-111.764,111.60983,0,64.98207,53.23282,111.90437,111.624,111.90437,64.98206,0,111.90439-53.23282,111.90439-111.624A112.70134,112.70134,0,0,0,222.39,383.98ZM112.11012,223.50245A112.703,112.703,0,0,0,128.02,222.37V209.11c0-6.68-2.56-12.75-6.35-18.11a78.64886,78.64886,0,0,1-9.65,1,80,80,0,1,1,80-80,78.8574,78.8574,0,0,1-1,9.65c5.36,3.78,11.43,6.35,18.11,6.35h13.26A110.99719,110.99719,0,0,0,224,112l.00031-.26192c0-65.16448-53.56048-111.764-111.60974-111.764C47.4085-.02591.48612,53.20687.48612,111.598.48612,176.58012,53.71894,223.50245,112.11012,223.50245Z\"]\n};\nvar faDroneAlt = {\n prefix: 'fal',\n iconName: 'drone-alt',\n icon: [640, 512, [], \"f860\", \"M624.21 127.93l-112.21.22V112a16 16 0 0 0-32 0v16.21l-112.3.23a15.75 15.75 0 1 0 .09 31.49L480 159.7v67.39l-95.09-25.93a247.11 247.11 0 0 0-129.82 0L160 227.09v-67.45l112.44-.23a15.74 15.74 0 1 0-.1-31.48l-112.34.22V112a16 16 0 0 0-32 0v16.21l-112.3.23a15.75 15.75 0 1 0 .1 31.49l112.2-.23V288a16 16 0 0 0 16 16h54.51a193.92 193.92 0 0 0-52.22 102.71 8.08 8.08 0 0 0 8 9.29h16.38a7.89 7.89 0 0 0 7.73-6.56 162 162 0 0 1 57.47-96.29l27.84 25.3A52.75 52.75 0 0 0 299.38 352h41.24a52.7 52.7 0 0 0 35.63-13.53l28.29-25.7a162 162 0 0 1 58 96.67 7.9 7.9 0 0 0 7.74 6.56h16.38a8.07 8.07 0 0 0 8-9.29A193.91 193.91 0 0 0 442.42 304H496a16 16 0 0 0 16-16V159.64l112.31-.23a15.74 15.74 0 1 0-.1-31.48zM480 272h-72a16 16 0 0 0-10.75 4.16l-42.53 38.64a21.18 21.18 0 0 1-14.1 5.2h-41.24a21.23 21.23 0 0 1-14.13-5.22l-42.5-38.62A16 16 0 0 0 232 272h-72v-11.73L263.53 232a215.1 215.1 0 0 1 112.94 0L480 260.27z\"]\n};\nvar faDrum = {\n prefix: 'fal',\n iconName: 'drum',\n icon: [512, 512, [], \"f569\", \"M414.51 117.78l90-56.22a16 16 0 0 0-16.94-27.13l-115.89 72.41C335.19 99.56 295.14 96 256 96 132.7 96 0 131 0 208v160c0 61.85 114.62 112 256 112s256-50.15 256-112V208c0-42.48-40.52-72.13-97.49-90.22zM96 421.46C55.12 405.34 32 384.74 32 368V265.91c16.53 13 38.55 23.58 64 31.8zm144 26.19c-43.14-1.19-80.93-7-112-15.6V306.43c34.85 8 73.52 12.34 112 13.28zm144-15.6c-31.07 8.55-68.86 14.41-112 15.6V319.71c38.48-.94 77.15-5.3 112-13.28zM480 368c0 16.74-23.12 37.34-64 53.46V297.71c25.45-8.22 47.47-18.79 64-31.8zm-224-80c-123.71 0-224-35.82-224-80s100.29-80 224-80a598.54 598.54 0 0 1 74.44 4.61l-98.91 61.82a16 16 0 0 0 16.94 27.13l129.11-80.7C439.16 155.12 480 179.83 480 208c0 44.18-100.29 80-224 80z\"]\n};\nvar faDrumSteelpan = {\n prefix: 'fal',\n iconName: 'drum-steelpan',\n icon: [576, 512, [], \"f56a\", \"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-128zm0 32c25.68 0 50.43 1.46 73.82 4.09l-15.45 60.08C341.86 145.72 315.67 160 288 160s-53.86-14.27-58.37-31.82l-15.45-60.09C237.57 65.46 262.32 64 288 64zm94.84 185.12c-29.35 4.4-61.3 6.88-94.84 6.88-33.79 0-65.96-2.52-95.49-6.97 20.07-19.65 33.38-45.44 37.12-73.47C245.95 185.92 266.66 192 288 192c21.02 0 41.47-5.87 57.68-15.95 3.64 28.08 17.05 53.74 37.16 73.07zM178.26 73.37l16.97 60.04c12.05 42.66-7.64 86.71-44.73 107.47C79.32 223.84 32 194.02 32 160c0-38.27 59.87-71.21 146.26-86.63zM544 352c0 39.14-99.73 96-256 96S32 391.14 32 352V218.47C79.81 259.73 176.38 288 288 288s208.19-28.27 256-69.54V352zM425.61 240.87c-36.04-18.69-56.55-59.84-46.96-101.16l15.56-66.98C482.52 87.87 544 121.21 544 160c0 34-47.28 63.81-118.39 80.87z\"]\n};\nvar faDrumstick = {\n prefix: 'fal',\n iconName: 'drumstick',\n icon: [512, 512, [], \"f6d6\", \"M471.25 57.59A169.77 169.77 0 0 0 348.47.06c-46.9-1.28-92.87 16.63-126 49.65C195.63 76.34 160 119.94 160 190.56v69.3l-43.34 43.35c-3.13 3.14-9.11 5.32-17.22 2.06A72.53 72.53 0 0 0 0 372.66c0 21.53 15.58 69.06 67.71 71.67 2 39.37 34.35 67.67 71.68 67.67 51.85 0 86.26-52.22 67.39-99.41-1-2.53-3.88-11.28 2.06-17.21l43.3-43.38h70.12c38.87 0 73-10.19 104.34-31.16 46.44-31 77-79.68 84-133.5 6.14-48.13-7.82-94.23-39.35-129.75zm-285 315.14c-13.1 13.08-16.62 32.86-9.16 51.74 23.47 58.7-74.37 78.88-77.4 18.26l-1.45-28.91-28.91-1.45c-50.62-2.54-49-80.3 3.21-80.3a40 40 0 0 1 15 2.89c17.72 7.13 38 4.7 51.81-9.12l26-26a80.2 80.2 0 0 0 46.93 46.87zm292.59-189.44c-5.66 44-31.81 85.46-70 111C382.93 311.6 354.62 320 322.28 320h-81.9A48.24 48.24 0 0 1 192 272v-81.45c0-45.29 16.35-81.73 53-118.15A137.74 137.74 0 0 1 343 32q2.21 0 4.5.06a137.92 137.92 0 0 1 99.81 46.79c25.31 28.49 36.53 65.59 31.53 104.44z\"]\n};\nvar faDrumstickBite = {\n prefix: 'fal',\n iconName: 'drumstick-bite',\n icon: [512, 512, [], \"f6d7\", \"M471.39 57.58A169.89 169.89 0 0 0 348.54.06C301-1.15 255.67 16.72 222.51 49.7c-26.82 26.63-62.46 70.23-62.46 140.85v69.29l-43.39 43.37c-3.13 3.14-9.11 5.32-17.22 2.06A72.53 72.53 0 0 0 0 372.66c0 21.53 15.58 69.06 67.71 71.67 2 39.37 34.35 67.67 71.68 67.67 51.85 0 86.26-52.22 67.39-99.41-1-2.53-3.88-11.28 2.06-17.21L252.23 352h70.15a189.76 189.76 0 0 0 50.39-6.83 16 16 0 0 0 9.5-23.74A94.12 94.12 0 0 1 368.11 272a96.13 96.13 0 0 1 96-96c8.35 0 17 1.42 27.29 4.49a16 16 0 0 0 20.6-15.36c0-40.48-14.07-77.67-40.61-107.55zM186.23 372.73c-13.1 13.08-16.62 32.86-9.16 51.74 23.47 58.7-74.37 78.88-77.4 18.26l-1.45-28.91-28.91-1.45c-50.62-2.54-49-80.3 3.21-80.3a40 40 0 0 1 15 2.89c17.72 7.13 38 4.7 51.81-9.12l26-26a80.24 80.24 0 0 0 47 46.88zM464.14 144a128.16 128.16 0 0 0-128 128 125.53 125.53 0 0 0 9 46.35 155.14 155.14 0 0 1-22.76 1.65h-81.93a48.24 48.24 0 0 1-48.39-48v-81.44c0-45.29 16.35-81.73 53-118.16a137.79 137.79 0 0 1 98-40.41q2.25 0 4.5.06a138 138 0 0 1 99.87 46.79 127.18 127.18 0 0 1 31 66.13 109 109 0 0 0-14.29-.97z\"]\n};\nvar faDryer = {\n prefix: 'fal',\n iconName: 'dryer',\n icon: [448, 512, [], \"f861\", \"M384-1H64A64 64 0 0 0 0 63v416a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V63a64 64 0 0 0-64-64zm32 480H32V63a32 32 0 0 1 32-32h320a32 32 0 0 1 32 32zM80 95a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm64 0a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm80 32a160 160 0 1 0 160 160 160 160 0 0 0-160-160zm0 288a128 128 0 1 1 128-128 128.14 128.14 0 0 1-128 128zm-7.11-156.42c0-20.12-10.63-30.75-18.39-38.51-5.18-5.18-8.21-8.4-9.43-13a7.11 7.11 0 0 0-6.82-5.4h-14.51a7.25 7.25 0 0 0-7.06 8.47c2.45 14.79 11.11 23.45 17.71 30 7 7 10.06 10.4 10.06 18.4S185.36 270 178.39 277c-7.77 7.75-18.39 18.38-18.39 38.5s10.62 30.72 18.39 38.47c5.17 5.18 8.21 8.39 9.42 13a7.13 7.13 0 0 0 6.83 5.39h14.5a7.25 7.25 0 0 0 7.07-8.47c-2.46-14.76-11.12-23.42-17.71-30-7-7-10.05-10.39-10.05-18.36s3.08-11.43 10.05-18.4c7.76-7.8 18.39-18.42 18.39-38.55zm71.11 0c0-20.12-10.62-30.75-18.39-38.51-5.18-5.18-8.21-8.4-9.43-13a7.11 7.11 0 0 0-6.82-5.4h-14.51a7.25 7.25 0 0 0-7.06 8.47c2.46 14.79 11.12 23.45 17.71 30 7 7 10.05 10.4 10.05 18.4S256.47 270 249.5 277c-7.76 7.76-18.39 18.39-18.39 38.51s10.63 30.71 18.39 38.49c5.17 5.18 8.21 8.39 9.43 13a7.11 7.11 0 0 0 6.82 5.39h14.51a7.25 7.25 0 0 0 7.06-8.47c-2.46-14.76-11.12-23.42-17.71-30-7-7-10.06-10.39-10.06-18.36s3.09-11.43 10.06-18.4c7.77-7.83 18.39-18.45 18.39-38.58z\"]\n};\nvar faDryerAlt = {\n prefix: 'fal',\n iconName: 'dryer-alt',\n icon: [448, 512, [], \"f862\", \"M384-1H64A64 64 0 0 0 0 63v416a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V63a64 64 0 0 0-64-64zm32 480H32V63a32 32 0 0 1 32-32h320a32 32 0 0 1 32 32zM80 95a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm64 0a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm80 32a160 160 0 1 0 160 160 160 160 0 0 0-160-160zm0 288a128 128 0 1 1 128-128 128.14 128.14 0 0 1-128 128zm0-224a96 96 0 1 0 96 96 96 96 0 0 0-96-96zm0 160a64 64 0 0 1-61.73-48H200a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-37.73A63.9 63.9 0 1 1 224 351z\"]\n};\nvar faDuck = {\n prefix: 'fal',\n iconName: 'duck',\n icon: [576, 512, [], \"f6d8\", \"M432 256c70.69 0 144-57.31 144-128h-97.57c-.44-3.21-.56-6.36-1.29-9.61-9.02-40.55-41.61-73.73-82.06-83.21C385.9 33.02 376.83 32 368 32c-61.86 0-112 50.14-112 112v112h-60.73c-25.68 0-49.79-10.07-69.95-25.99-5-3.95-11.13-6.02-17.35-6.02-3.61 0-7.24.7-10.71 2.12C86.77 230.47 80 240.6 80 251.95c0 1.39.37 2.67.41 4.05H32.25C12.87 256-2.72 273.21.4 292.34 17.76 398.77 110.13 480 221.47 480h99.94c68.24 0 128.85-55.86 126.53-124.06-1.01-29.74-13.09-56.53-31.93-76.98V256H432zm46.73-96h59.79c-11.59 32.68-56.4 57.25-91.47 62.8 16.7-16.61 28.14-38.37 31.68-62.8zm-86.27 140.64c14.44 15.68 22.78 35.7 23.49 56.38.75 22.18-7.95 43.83-24.5 60.96-18.44 19.08-43.97 30.02-70.04 30.02h-99.94c-94.97 0-174.05-69.31-189.33-160h52.82c16.21 64.17 73.95 112 143.09 112H248c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-19.96c-60.8 0-110.84-47-115.66-106.59 21.26 17.65 49.09 26.59 82.88 26.59H288V144c0-44.18 35.82-80 80-80s80 35.82 80 80c0 33.83-21.07 62.6-50.75 74.3-12.82 6.12-11.61 5.54-13.25 6.33v66.83l8.46 9.18zM368 128c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16z\"]\n};\nvar faDumbbell = {\n prefix: 'fal',\n iconName: 'dumbbell',\n icon: [640, 512, [], \"f44b\", \"M632 240h-24v-96c0-26.5-21.5-48-48-48h-32c-5.6 0-11 1.2-16 2.9V80c0-26.5-21.5-48-48-48h-32c-26.5 0-48 21.5-48 48v160H256V80c0-26.5-21.5-48-48-48h-32c-26.5 0-48 21.5-48 48v18.9c-5-1.8-10.4-2.9-16-2.9H80c-26.5 0-48 21.5-48 48v96H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h24v96c0 26.5 21.5 48 48 48h32c5.6 0 11-1.2 16-2.9V432c0 26.5 21.5 48 48 48h32c26.5 0 48-21.5 48-48V272h128v160c0 26.5 21.5 48 48 48h32c26.5 0 48-21.5 48-48v-18.9c5 1.8 10.4 2.9 16 2.9h32c26.5 0 48-21.5 48-48v-96h24c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM112 384H80c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v224c0 8.8-7.2 16-16 16zm112 48c0 8.8-7.2 16-16 16h-32c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v352zm256 0c0 8.8-7.2 16-16 16h-32c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v352zm96-64c0 8.8-7.2 16-16 16h-32c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v224z\"]\n};\nvar faDumpster = {\n prefix: 'fal',\n iconName: 'dumpster',\n icon: [576, 512, [], \"f793\", \"M568 256h-34.7l7.1-64H560c10.4 0 18-12.2 15.5-24.9l-24-120C549.7 38.2 543.3 32 536 32H40c-7.3 0-13.7 6.2-15.5 15.1l-24 120C-2 179.8 5.6 192 16 192h19.5l7.1 64H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h38.2L64 448v16c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-16h256v16c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-16l17.8-160H568c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-26.6-96h-78.7l-19.2-96h78.7l19.2 96zm-395.5 0l19.2-96H272v96H145.9zM304 64h106.9l19.2 96H304V64zM53.8 64h78.7l-19.2 96H34.6l19.2-96zM480 448h-32v-32H128v32H96L67.8 192h440.5L480 448z\"]\n};\nvar faDumpsterFire = {\n prefix: 'fal',\n iconName: 'dumpster-fire',\n icon: [640, 512, [], \"f794\", \"M551.1 163.2c-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-57 283.4c-4.7.5-9.2 1.4-14.1 1.4s-9.4-.9-14.1-1.4c-31.8-6.4-55.8-34.2-55.8-67.4 0-14 15.4-46.1 44.5-78.3 7.1 7.6 13.6 15.3 19.4 23l24.1 31.9 25.9-30.5c.1-.1.1-.2.2-.2 16.2 22.2 25.5 46.1 25.5 54.1.1 33.2-23.9 61-55.6 67.4zm85.5-46.6c1.4-6.7 2.2-13.7 2.2-20.8 0-23.3-23.6-71.4-56.6-100.8-9.5 8.4-18 17.3-25.6 26.2-12.4-16.4-27.8-33.1-45.2-48.6-44.7 39.9-76.4 91.9-76.4 123.2 0 7.1.8 14.1 2.2 20.8-17.5-21.6-28.4-48.7-28.4-78.4 0-31.6 32.5-93.2 88.1-149.5 16.8 16.7 32.2 34.3 45.3 51.6l24.1 31.9 25.9-30.5c4.9-5.8 9.9-11.4 15.1-16.8 34.3 39.9 57.5 91.4 57.5 113.3.2 29.8-10.7 56.8-28.2 78.4zM128 416v32H96L67.8 192h272.8c7.5-10.7 15.5-21.4 24.3-32H304V64h106.9l8 40c6-5.3 13.6-8 21.1-8 3.5 0 7 .7 10.3 1.9L443.5 64h78.7l14.3 71.3c4.6-2.4 9.5-4.1 14.6-4.1 6.6 0 12.9 2.4 18.5 6.4l-18.1-90.5C549.7 38.2 543.3 32 536 32H40c-7.3 0-13.7 6.2-15.5 15.1l-24 120C-2 179.8 5.6 192 16 192h19.5l7.1 64H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h38.2L64 448v16c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-16h176.8c-8.8-9.8-16.7-20.5-23.3-32H128zm37.1-352H272v96H145.9l19.2-96zM34.6 160l19.2-96h78.7l-19.2 96H34.6z\"]\n};\nvar faDungeon = {\n prefix: 'fal',\n iconName: 'dungeon',\n icon: [512, 512, [], \"f6d9\", \"M240 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.77zM512 296c0-9.08-3.04-17.47-8.16-24.19 5.46-7.31 8.33-16.36 7.98-25.49-1.32-35.19-9.76-69.17-25.09-100.97-4.49-9.32-12.48-16.41-21.94-19.99.86-10.14-2.16-20.28-8.51-28.26-21.34-26.85-47.37-48.83-77.36-65.33a40.004 40.004 0 0 0-19.19-4.93c-3.45 0-6.83.45-10.09 1.31-5.17-8.82-13.55-15.38-23.4-18.2C303.29 3.35 279.65 0 256 0s-47.29 3.35-70.25 9.95c-9.83 2.82-18.22 9.38-23.39 18.2-3.26-.86-6.64-1.31-10.09-1.31-6.69 0-13.33 1.7-19.19 4.92-30 16.5-56.03 38.48-77.37 65.34-6.34 7.98-9.36 18.11-8.5 28.25-9.47 3.59-17.45 10.67-21.94 19.99C9.95 177.15 1.51 211.12.18 246.33c-.35 9.12 2.52 18.17 7.98 25.48A39.772 39.772 0 0 0 0 296v64c0 9 2.99 17.31 8.02 24C2.99 390.69 0 399 0 408v64c0 22.05 17.94 40 40 40h64c22.06 0 40-17.95 40-40v-64c0-9-2.99-17.31-8.02-24 5.03-6.69 8.02-15 8.02-24v-64c0-8.92-2.93-17.16-7.88-23.82a40.01 40.01 0 0 0 8.04-21.96c.71-12.54 3.74-25.12 9.02-37.4 2.66-6.19 3.67-12.68 3.2-18.97 6-2.32 11.44-6.08 15.78-11.05 7.3-8.34 15.78-15.54 25.21-21.41 5.7-3.54 10.24-8.31 13.44-13.78 3.14.77 6.42 1.18 9.77 1.18 3.37 0 6.74-.42 10.01-1.26 9.42-2.41 17.48-3.53 25.39-3.53 7.92 0 15.99 1.12 25.41 3.53 3.28.84 6.65 1.26 10.02 1.26 3.36 0 6.63-.4 9.78-1.18 3.2 5.46 7.74 10.23 13.44 13.77 9.44 5.87 17.92 13.07 25.22 21.41 4.35 4.97 9.79 8.74 15.79 11.05-.48 6.29.54 12.78 3.2 18.97 5.28 12.28 8.31 24.86 9.02 37.39.46 8.26 3.39 15.81 8.04 21.96a39.793 39.793 0 0 0-7.88 23.82v64c0 9 2.99 17.31 8.02 24-5.03 6.69-8.02 15-8.02 24v64c0 22.05 17.94 40 40 40h64c22.06 0 40-17.95 40-40v-64c0-9-2.99-17.31-8.02-24 5.03-6.69 8.02-15 8.02-24V296zM112 472c0 4.42-3.58 8-8 8H40c-4.42 0-8-3.58-8-8v-64c0-4.42 3.58-8 8-8h64c4.42 0 8 3.58 8 8v64zm0-112c0 4.42-3.58 8-8 8H40c-4.42 0-8-3.58-8-8v-64c0-4.42 3.58-8 8-8h64c4.42 0 8 3.58 8 8v64zm11.78-159.82c-6.44 14.99-10.61 31.16-11.57 48.23-.24 4.22-3.51 7.58-7.74 7.58H40.41c-4.57 0-8.42-3.9-8.25-8.47 1.19-31.53 8.97-61.38 21.94-88.3 1.39-2.88 4.32-4.49 7.32-4.49 1.5 0 3.01.4 4.37 1.25l55.04 34.4c3.32 2.08 4.5 6.2 2.95 9.8zm56.7-65.97a143.632 143.632 0 0 0-32.4 27.51c-1.59 1.82-3.81 2.8-6.05 2.8-1.39 0-2.8-.38-4.08-1.18l-55-34.38c-4.07-2.54-5.16-8.21-2.17-11.97a225.31 225.31 0 0 1 67.73-57.21c1.2-.66 2.49-.96 3.77-.96 3.27 0 6.45 1.99 7.72 5.24l23.79 60.57c1.4 3.6-.04 7.55-3.31 9.58zm118.38-22.33c-1.21 3.08-4.24 4.91-7.45 4.91-.7 0-1.4-.08-2.09-.26-11.83-3.02-22.6-4.52-33.33-4.52-10.79 0-21.54 1.52-33.3 4.52-.7.18-1.4.26-2.09.26-3.21 0-6.23-1.83-7.44-4.92l-23.73-60.41c-1.72-4.39.64-9.47 5.17-10.77C214.11 35.09 234.69 32 256 32s41.89 3.09 61.42 8.7c4.53 1.3 6.9 6.38 5.17 10.77l-23.73 60.41zm75.19 51.47c-1.28.8-2.68 1.18-4.08 1.18-2.25 0-4.46-.98-6.05-2.8a144.07 144.07 0 0 0-32.4-27.51c-3.27-2.04-4.71-5.99-3.31-9.57L352 64.08c1.27-3.24 4.46-5.24 7.72-5.24 1.28 0 2.57.31 3.77.96a225.31 225.31 0 0 1 67.73 57.21c2.99 3.76 1.9 9.43-2.17 11.97l-55 34.37zm14.17 36.83c-1.55-3.61-.37-7.72 2.96-9.8l55.04-34.4a8.181 8.181 0 0 1 4.37-1.25c3 0 5.94 1.61 7.32 4.49 12.97 26.91 20.75 56.77 21.94 88.3.17 4.57-3.68 8.47-8.25 8.47h-64.06c-4.23 0-7.5-3.36-7.74-7.58-.97-17.07-5.14-33.23-11.58-48.23zM480 472c0 4.42-3.58 8-8 8h-64c-4.42 0-8-3.58-8-8v-64c0-4.42 3.58-8 8-8h64c4.42 0 8 3.58 8 8v64zm0-112c0 4.42-3.58 8-8 8h-64c-4.42 0-8-3.58-8-8v-64c0-4.42 3.58-8 8-8h64c4.42 0 8 3.58 8 8v64zM304 189.36V472c0 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\"]\n};\nvar faEar = {\n prefix: 'fal',\n iconName: 'ear',\n icon: [384, 512, [], \"f5f0\", \"M192 96c-52.94 0-96 43.06-96 96 0 35.3 28.72 64 64 64 17.66 0 32 14.36 32 32s-14.34 32-32 32h-24c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h24c35.28 0 64-28.7 64-64s-28.72-64-64-64c-17.66 0-32-14.36-32-32 0-35.3 28.72-64 64-64s64 28.7 64 64v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24c0-52.94-43.06-96-96-96zm0-96C85.96 0 0 85.96 0 192v176c0 79.53 64.47 144 144 144s144-64.47 144-144v-9.9c57.33-33.21 96-95.08 96-166.1C384 85.96 298.04 0 192 0zm79.96 330.41L256 339.66V368c0 61.76-50.24 112-112 112S32 429.76 32 368V192c0-88.22 71.78-160 160-160s160 71.78 160 160c0 56.78-30.67 109.81-80.04 138.41z\"]\n};\nvar faEarMuffs = {\n prefix: 'fal',\n iconName: 'ear-muffs',\n icon: [640, 512, [], \"f795\", \"M640 352c0-15.1-6.1-28.9-16-39 .4-24.1-14.4-45-35.8-53.3-7.2-18.5-24.1-31.6-44.2-34.5V224C544 100.5 443.5 0 320 0S96 100.5 96 224v1.2c-20.2 3-37 16.1-44.2 34.5-21.3 8.4-36.2 29.2-35.8 53.3-9.9 10.1-16 23.9-16 39 0 5.5.8 10.8 2.4 16C.8 373.2 0 378.5 0 384c0 15.1 6.1 28.9 16 39-.4 24.1 14.4 45 35.8 53.3C59.9 497.1 80.2 512 104 512c5.5 0 10.8-.8 16-2.4 5.2 1.6 10.5 2.4 16 2.4 30.9 0 56-25.1 56-56 0-7.7-1.6-15.2-4.5-22 2.2-5.2 8.9-23.1 0-44 2.2-5.2 8.9-23.1 0-44 2.2-5.2 8.9-23.1 0-44 2.9-6.8 4.5-14.3 4.5-22 0-30.9-25.1-56-56-56-2.7 0-5.3.8-8 1.2V224c0-105.9 86.1-192 192-192s192 86.1 192 192v1.2c-2.7-.4-5.3-1.2-8-1.2-30.9 0-56 25.1-56 56 0 7.7 1.6 15.2 4.5 22-2.2 5.2-8.9 23.1 0 44-2.2 5.2-8.9 23.1 0 44-2.2 5.2-8.9 23.1 0 44-2.9 6.8-4.5 14.3-4.5 22 0 30.9 25.1 56 56 56 5.5 0 10.8-.8 16-2.4 5.2 1.6 10.5 2.4 16 2.4 23.7 0 44.1-14.9 52.2-35.8 21.3-8.3 36.2-29.1 35.8-53.3 9.9-10.1 16-23.9 16-39 0-5.5-.8-10.8-2.4-16 1.6-5.1 2.4-10.4 2.4-15.9zm-504-96c13.3 0 24 10.7 24 24 0 9.9-6 18.3-14.5 22 8.5 3.7 14.5 12.1 14.5 22s-6 18.3-14.5 22c8.5 3.7 14.5 12.1 14.5 22s-6 18.3-14.5 22c8.5 3.7 14.5 12.1 14.5 22s-6 18.3-14.5 22c8.5 3.7 14.5 12.1 14.5 22 0 13.3-10.7 24-24 24-6.2 0-11.7-2.5-16-6.4-4.3 3.9-9.8 6.4-16 6.4-13.3 0-24-10.7-24-24 0-4 1.2-7.7 3-11-3.3 1.8-7 3-11 3-13.3 0-24-10.7-24-24 0-6.3 2.6-12 6.6-16.3C42 406.9 32 396.7 32 384c0-6.2 2.5-11.7 6.4-16-3.9-4.3-6.4-9.8-6.4-16 0-12.7 10-22.9 22.6-23.7-4-4.3-6.6-10-6.6-16.3 0-13.3 10.7-24 24-24 4 0 7.7 1.2 11 3-1.8-3.3-3-7-3-11 0-13.3 10.7-24 24-24 6.2 0 11.7 2.5 16 6.4 4.3-3.9 9.8-6.4 16-6.4zm472 128c0 12.7-10 22.9-22.6 23.7 4 4.3 6.6 10 6.6 16.3 0 13.3-10.7 24-24 24-4 0-7.7-1.2-11-3 1.8 3.3 3 7 3 11 0 13.3-10.7 24-24 24-6.2 0-11.7-2.5-16-6.4-4.3 3.9-9.8 6.4-16 6.4-13.3 0-24-10.7-24-24 0-9.9 6-18.3 14.5-22-8.5-3.7-14.5-12.1-14.5-22s6-18.3 14.5-22c-8.5-3.7-14.5-12.1-14.5-22s6-18.3 14.5-22c-8.5-3.7-14.5-12.1-14.5-22s6-18.3 14.5-22c-8.5-3.7-14.5-12.1-14.5-22 0-13.3 10.7-24 24-24 6.2 0 11.7 2.5 16 6.4 4.3-3.9 9.8-6.4 16-6.4 13.3 0 24 10.7 24 24 0 4-1.2 7.7-3 11 3.3-1.8 7-3 11-3 13.3 0 24 10.7 24 24 0 6.3-2.6 12-6.6 16.3 12.6.8 22.6 11 22.6 23.7 0 6.2-2.5 11.7-6.4 16 3.9 4.3 6.4 9.8 6.4 16z\"]\n};\nvar faEclipse = {\n prefix: 'fal',\n iconName: 'eclipse',\n icon: [640, 512, [], \"f749\", \"M256 467.4l-48.4-71.6c-3-4.4-8-7-13.2-7-1 0-2 .1-3 .3l-84.8 16.4 16.4-84.8c1.2-6.3-1.4-12.7-6.8-16.3L44.6 256l71.6-48.4c5.3-3.6 8-10 6.8-16.3l-16.4-84.8 84.8 16.4c6.2 1.1 12.7-1.5 16.3-6.8L256 44.6l35.1 51.9c7.6-7.5 15.9-14.4 24.6-20.7L269.2 7c-3-4.4-7.9-7-13.2-7s-10.3 2.6-13.2 7L187 89.4 89.3 70.6c-5.2-1-10.6.7-14.3 4.4s-5.4 9.1-4.4 14.3L89.4 187 7 242.8c-4.4 3-7 7.9-7 13.2s2.6 10.3 7 13.2L89.4 325l-18.9 97.7c-1 5.2.7 10.6 4.4 14.3s9.2 5.4 14.3 4.4l97.7-18.9 55.8 82.4c3 4.4 7.9 7 13.2 7s10.3-2.6 13.2-7l46.4-68.6c-8.7-6.4-17-13.2-24.6-20.7L256 467.4zm-17.8-289.2c4.4-11.8 9.7-23.1 15.9-33.9-28.5.4-55.9 11.1-77.3 32.5-37.8 37.8-43.5 94-14.5 143.2 7.2 12.2 17.5 22.4 29.7 29.7 20.1 11.9 41.5 17.8 62.3 18.2-6.3-10.8-11.6-22.1-16-34-9.6-2-19.7-5.7-30-11.8-7.5-4.4-14-10.9-18.4-18.4-25.9-43.9-11.1-83.6 9.6-104.3 9.4-9.3 22.8-17.5 38.7-21.2zM448 64c-106 0-192 86-192 192s86 192 192 192 192-86 192-192S554 64 448 64zm0 352c-88.2 0-160-71.8-160-160S359.8 96 448 96s160 71.8 160 160-71.8 160-160 160z\"]\n};\nvar faEclipseAlt = {\n prefix: 'fal',\n iconName: 'eclipse-alt',\n icon: [512, 512, [], \"f74a\", \"M512 256c0-5.3-2.6-10.3-7-13.2L422.5 187l18.9-97.7c1-5.2-.7-10.6-4.4-14.3s-9.1-5.3-14.3-4.4L325 89.4 269.2 7c-3-4.4-7.9-7-13.2-7s-10.3 2.6-13.2 7L187 89.4 89.3 70.6c-5.2-1-10.6.7-14.3 4.4s-5.4 9.1-4.4 14.3L89.4 187 7 242.8c-4.4 3-7 7.9-7 13.2s2.6 10.3 7 13.2L89.4 325l-18.9 97.7c-1 5.2.7 10.6 4.4 14.3s9.1 5.4 14.3 4.4l97.7-18.9 55.8 82.4c3 4.4 7.9 7 13.2 7s10.3-2.6 13.2-7l55.8-82.4 97.7 18.9c5.2 1 10.6-.7 14.3-4.4s5.4-9.1 4.4-14.3L422.6 325l82.4-55.8c4.4-2.9 7-7.9 7-13.2zm-116.1 48.4c-5.3 3.6-8 10-6.8 16.3l16.4 84.8-84.8-16.4c-6.3-1.2-12.7 1.5-16.3 6.8L256 467.4l-48.4-71.6c-3-4.4-8-7-13.2-7-1 0-2 .1-3 .3l-84.8 16.4 16.4-84.8c1.2-6.3-1.4-12.7-6.8-16.3L44.6 256l71.6-48.4c5.3-3.6 8-10 6.8-16.3l-16.4-84.8 84.8 16.4c6.2 1.1 12.7-1.5 16.3-6.8L256 44.6l48.4 71.6c3.6 5.3 10.1 7.9 16.3 6.8l84.8-16.4-16.4 84.8c-1.2 6.3 1.4 12.7 6.8 16.3l71.6 48.4-71.6 48.3zM327 293.1c-1 0-2.9.2-3.9.4-3.7.7-7.5 1.1-11.3 1.1-32.5 0-59-26.6-59-59.2 0-21.2 11.5-41 29.9-51.5 7.6-4.3 11.5-12.6 10.1-21.2-1.4-8.6-7.9-15.2-16.5-16.7-6.7-1.2-13.6-1.9-20.4-1.9C194.2 144 144 194.2 144 256c0 61.8 50.2 112 111.9 112 33.9 0 65.6-15.1 86.9-41.5 5-6.2 6-14.5 2.6-21.7-3.4-7.1-10.6-11.7-18.4-11.7zM255.9 336c-44.1 0-79.9-35.9-79.9-80 0-39.3 28.4-72 65.7-78.7a91.288 91.288 0 0 0-20.9 58.1c0 44.9 32.6 82.4 75.3 89.9-12.1 6.9-25.9 10.7-40.2 10.7z\"]\n};\nvar faEdit = {\n prefix: 'fal',\n iconName: 'edit',\n icon: [576, 512, [], \"f044\", \"M417.8 315.5l20-20c3.8-3.8 10.2-1.1 10.2 4.2V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h292.3c5.3 0 8 6.5 4.2 10.2l-20 20c-1.1 1.1-2.7 1.8-4.2 1.8H48c-8.8 0-16 7.2-16 16v352c0 8.8 7.2 16 16 16h352c8.8 0 16-7.2 16-16V319.7c0-1.6.6-3.1 1.8-4.2zm145.9-191.2L251.2 436.8l-99.9 11.1c-13.4 1.5-24.7-9.8-23.2-23.2l11.1-99.9L451.7 12.3c16.4-16.4 43-16.4 59.4 0l52.6 52.6c16.4 16.4 16.4 43 0 59.4zm-93.6 48.4L403.4 106 169.8 339.5l-8.3 75.1 75.1-8.3 233.5-233.6zm71-85.2l-52.6-52.6c-3.8-3.8-10.2-4-14.1 0L426 83.3l66.7 66.7 48.4-48.4c3.9-3.8 3.9-10.2 0-14.1z\"]\n};\nvar faEgg = {\n prefix: 'fal',\n iconName: 'egg',\n icon: [384, 512, [], \"f7fb\", \"M192 0C86 0 0 214 0 320s86 192 192 192 192-86 192-192S298 0 192 0zm0 480c-88.22 0-160-71.78-160-160 0-100.72 82.24-288 160-288s160 187.28 160 288c0 88.22-71.78 160-160 160z\"]\n};\nvar faEggFried = {\n prefix: 'fal',\n iconName: 'egg-fried',\n icon: [512, 512, [], \"f7fc\", \"M224 112.12c-70.56 0-128 57.48-128 128.15s57.41 128.12 128 128.12 128-57.47 128-128.12-57.41-128.15-128-128.15zm0 224.24a96.15 96.15 0 0 1-96-96.09c0-53 43.07-96.12 96-96.12s96 43.13 96 96.12a96.15 96.15 0 0 1-96 96.09zm0-168.18a72.13 72.13 0 0 0-72 72.09 16 16 0 1 0 32 0 40.08 40.08 0 0 1 40-40.06 16 16 0 0 0 0-32zm254.32-17.73c-39.5-40.71-100.73-46.29-144.39-82.24S255.63 0 200.55 0a157.76 157.76 0 0 0-25.16 2.1c-86.78 14-111.71 80-125 157.13-11.1 64.34-54.41 127-50 192.91s52.83 128.45 114.97 150.75c17.64 6.32 33.83 9.11 48.92 9.11 64.66 0 108.94-51.18 155.72-95.56 43.68-41.44 93.4-37.72 140.93-73.89 56.28-42.82 71.71-140.55 17.39-192.1zm1.52 89.31c-1.69 31-16.35 60.6-38.27 77.28-18.12 13.79-37.53 20.88-58.09 28.4-26.8 9.79-57.19 20.9-85.49 47.75-5.47 5.19-10.91 10.47-16.35 15.76-37.59 36.52-73.1 71-117.36 71-12.09 0-24.56-2.37-38.12-7.24C75.24 454.46 35.74 402.85 32.24 350c-2.16-32.48 10.67-66.45 24.25-102.41 10-26.58 20.41-54.06 25.4-82.92C97 77.3 122.78 43 180.48 33.73A126.07 126.07 0 0 1 200.55 32c39.59 0 66.48 22.31 103.7 53.19L313.6 93c23.67 19.49 50 30.66 75.45 41.47s49.5 21 67.25 39.27c22.45 21.26 24.39 50.49 23.54 66.02z\"]\n};\nvar faEject = {\n prefix: 'fal',\n iconName: 'eject',\n icon: [448, 512, [], \"f052\", \"M435.322 239.565L259.383 47.558c-19.014-20.743-51.751-20.745-70.767 0L12.67 239.565C-15.475 270.268 6.324 320 48.053 320h351.886c41.651 0 63.581-49.674 35.383-80.435zM399.939 288H48.053c-13.866 0-21.169-16.585-11.791-26.816L212.205 69.181c6.323-6.897 17.248-6.918 23.585-.005l175.943 192.012c9.371 10.223 2.076 26.812-11.794 26.812zM448 400v32c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48v-32c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48zm-48-16H48c-8.822 0-16 7.178-16 16v32c0 8.823 7.178 16 16 16h352c8.822 0 16-7.177 16-16v-32c0-8.822-7.178-16-16-16z\"]\n};\nvar faElephant = {\n prefix: 'fal',\n iconName: 'elephant',\n icon: [640, 512, [], \"f6da\", \"M512 31.97h-45.81C460.54 26.16 437.16 0 391.99 0c-38.08 0-62.5 18.23-75.55 31.97H192C85.96 31.97 0 117.93 0 223.98v128.01h32V480c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-80.01c48.43 24.21 83.07 38.47 160 0V480c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V287.98h96v32h-32c-17.67 0-32 14.33-32 32v11.27c0 41.84 30.02 80.06 71.64 84.3 47.85 4.88 88.36-32.71 88.36-79.58v-208c0-70.7-57.31-128-128-128zM416 480h-64V348.21l-46.31 23.16c-54.82 27.41-76.47 27.46-131.38 0L128 348.21V480H64V319.99H32v-96.01c0-88.23 71.78-160.01 160-160.01h104.39c-1.1 2.71-2.7 5.19-3.55 8-8.96 29.48-5.42 59.87 9.94 85.47 11.53 19.19 28.91 34.05 49.22 42.53 0 40.15 27.18 73.73 64 84.26V480zm192-112.01c0 26.47-21.53 48-48 48s-48-21.53-48-48v-16h32v16c0 8.83 7.19 16 16 16s16-7.17 16-16V255.98H440c-30.88 0-56-25.12-56-56v-21.32l-19.67-8.21c-28.75-12.01-53.9-46.29-40.87-89.17C332.04 53.02 358.41 32 391.99 32c32.86 0 46.72 17.61 60.7 31.97H512c52.94 0 96 43.07 96 96.01v208.01zm-80-240.02c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16z\"]\n};\nvar faEllipsisH = {\n prefix: 'fal',\n iconName: 'ellipsis-h',\n icon: [320, 512, [], \"f141\", \"M192 256c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm88-32c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm-240 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"]\n};\nvar faEllipsisHAlt = {\n prefix: 'fal',\n iconName: 'ellipsis-h-alt',\n icon: [512, 512, [], \"f39b\", \"M256 184c-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-40s17.9-40 40-40 40 17.9 40 40-17.9 40-40 40zm176-112c-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-40s17.9-40 40-40 40 17.9 40 40-17.9 40-40 40zM80 184c-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-40s17.9-40 40-40 40 17.9 40 40-17.9 40-40 40z\"]\n};\nvar faEllipsisV = {\n prefix: 'fal',\n iconName: 'ellipsis-v',\n icon: [64, 512, [], \"f142\", \"M32 224c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zM0 136c0 17.7 14.3 32 32 32s32-14.3 32-32-14.3-32-32-32-32 14.3-32 32zm0 240c0 17.7 14.3 32 32 32s32-14.3 32-32-14.3-32-32-32-32 14.3-32 32z\"]\n};\nvar faEllipsisVAlt = {\n prefix: 'fal',\n iconName: 'ellipsis-v-alt',\n icon: [192, 512, [], \"f39c\", \"M96 152c39.8 0 72-32.2 72-72S135.8 8 96 8 24 40.2 24 80s32.2 72 72 72zm0-112c22.1 0 40 17.9 40 40s-17.9 40-40 40-40-17.9-40-40 17.9-40 40-40zm0 144c-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-40s17.9-40 40-40 40 17.9 40 40-17.9 40-40 40zm0 64c-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-40s17.9-40 40-40 40 17.9 40 40-17.9 40-40 40z\"]\n};\nvar faEmptySet = {\n prefix: 'fal',\n iconName: 'empty-set',\n icon: [448, 512, [], \"f656\", \"M445.66 45.65l-11.31-11.31c-3.12-3.12-8.19-3.12-11.31 0l-75.12 75.12C314.46 81.15 271.26 64 224 64 117.96 64 32 149.96 32 256c0 47.26 17.15 90.46 45.46 123.91L2.34 455.03c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0l75.12-75.12C133.54 430.85 176.74 448 224 448c106.04 0 192-85.96 192-192 0-47.26-17.15-90.46-45.46-123.91l75.12-75.12a8.015 8.015 0 0 0 0-11.32zM64 256c0-88.22 71.78-160 160-160 38.34 0 73.1 14.12 100.69 36.69l-224 224C78.11 329.1 64 294.34 64 256zm320 0c0 88.22-71.78 160-160 160-38.34 0-73.1-14.12-100.69-36.69l224-224C369.89 182.9 384 217.66 384 256z\"]\n};\nvar faEngineWarning = {\n prefix: 'fal',\n iconName: 'engine-warning',\n icon: [640, 512, [], \"f5f2\", \"M320 32C196.3 32 96 132.3 96 256c0 123.76 100.3 224 224 224s224-100.24 224-224c0-123.7-100.3-224-224-224zm0 416c-105.87 0-192-86.13-192-192S214.13 64 320 64s192 86.13 192 192-86.13 192-192 192zm18.64-320.02h-37.28c-7.9 0-14.08 6.82-13.29 14.69l10.69 149.29c.68 6.83 6.43 12.03 13.29 12.03h15.9c6.87 0 12.61-5.2 13.29-12.03l10.69-149.29c.79-7.86-5.39-14.69-13.29-14.69zM320 328c-13.26 0-24 10.74-24 24 0 13.25 10.74 24 24 24s24-10.75 24-24c0-13.26-10.74-24-24-24zM90.69 69.17l-12.4-10.11c-3.49-2.85-8.75-2.31-11.51 1.25C23.65 116.12 0 185.28 0 256c0 70.74 23.65 139.88 66.75 195.65 2.76 3.57 8.01 4.1 11.51 1.25l12.4-10.11c3.36-2.73 3.84-7.58 1.19-11.01C53.2 381.66 32 319.54 32 256c0-63.53 21.2-125.65 59.88-175.82 2.65-3.43 2.17-8.28-1.19-11.01zm482.53-8.86c-2.76-3.57-8.01-4.1-11.51-1.25l-12.4 10.11c-3.36 2.73-3.83 7.58-1.19 11.01C586.8 130.35 608 192.47 608 256c0 63.54-21.2 125.66-59.85 175.79-2.64 3.43-2.17 8.27 1.19 11.01l12.4 10.11c3.49 2.85 8.75 2.31 11.51-1.25C616.35 395.88 640 326.74 640 256c0-70.72-23.65-139.88-66.78-195.69z\"]\n};\nvar faEnvelope = {\n prefix: 'fal',\n iconName: 'envelope',\n icon: [512, 512, [], \"f0e0\", \"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-48zM48 96h416c8.8 0 16 7.2 16 16v41.4c-21.9 18.5-53.2 44-150.6 121.3-16.9 13.4-50.2 45.7-73.4 45.3-23.2.4-56.6-31.9-73.4-45.3C85.2 197.4 53.9 171.9 32 153.4V112c0-8.8 7.2-16 16-16zm416 320H48c-8.8 0-16-7.2-16-16V195c22.8 18.7 58.8 47.6 130.7 104.7 20.5 16.4 56.7 52.5 93.3 52.3 36.4.3 72.3-35.5 93.3-52.3 71.9-57.1 107.9-86 130.7-104.7v205c0 8.8-7.2 16-16 16z\"]\n};\nvar faEnvelopeOpen = {\n prefix: 'fal',\n iconName: 'envelope-open',\n icon: [512, 512, [], \"f2b6\", \"M349.32 52.26C328.278 35.495 292.938 0 256 0c-36.665 0-71.446 34.769-93.31 52.26-34.586 27.455-109.525 87.898-145.097 117.015A47.99 47.99 0 0 0 0 206.416V464c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V206.413a47.989 47.989 0 0 0-17.597-37.144C458.832 140.157 383.906 79.715 349.32 52.26zM464 480H48c-8.837 0-16-7.163-16-16V206.161c0-4.806 2.155-9.353 5.878-12.392C64.16 172.315 159.658 95.526 182.59 77.32 200.211 63.27 232.317 32 256 32c23.686 0 55.789 31.27 73.41 45.32 22.932 18.207 118.436 95.008 144.714 116.468a15.99 15.99 0 0 1 5.876 12.39V464c0 8.837-7.163 16-16 16zm-8.753-216.312c4.189 5.156 3.393 12.732-1.776 16.905-22.827 18.426-55.135 44.236-104.156 83.148-21.045 16.8-56.871 52.518-93.318 52.258-36.58.264-72.826-35.908-93.318-52.263-49.015-38.908-81.321-64.716-104.149-83.143-5.169-4.173-5.966-11.749-1.776-16.905l5.047-6.212c4.169-5.131 11.704-5.925 16.848-1.772 22.763 18.376 55.014 44.143 103.938 82.978 16.85 13.437 50.201 45.69 73.413 45.315 23.219.371 56.562-31.877 73.413-45.315 48.929-38.839 81.178-64.605 103.938-82.978 5.145-4.153 12.679-3.359 16.848 1.772l5.048 6.212z\"]\n};\nvar faEnvelopeOpenDollar = {\n prefix: 'fal',\n iconName: 'envelope-open-dollar',\n icon: [512, 512, [], \"f657\", \"M494.59 164.52c-1.98-1.63-22.19-17.91-46.59-37.53V96c0-17.67-14.33-32-32-32h-46.47c-4.13-3.31-7.71-6.16-10.2-8.14C337.23 38.19 299.44 0 256 0c-43.21 0-80.64 37.72-103.34 55.86-2.53 2.01-6.1 4.87-10.2 8.14H96c-17.67 0-32 14.33-32 32v30.98c-24.52 19.71-44.75 36.01-46.48 37.43A48.002 48.002 0 0 0 0 201.48V464c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V201.51c0-14.31-6.38-27.88-17.41-36.99zM256 32c21.77 0 44.64 16.72 63.14 32H192.9c18.53-15.27 41.42-32 63.1-32zM96 96h320v173.35c-32.33 26-65.3 52.44-86.59 69.34-16.85 13.43-50.19 45.68-73.41 45.31-23.21.38-56.56-31.88-73.41-45.32-21.29-16.9-54.24-43.33-86.59-69.34V96zM32 201.48c0-4.8 2.13-9.31 5.84-12.36 1.24-1.02 11.62-9.38 26.16-21.08v75.55c-11.53-9.28-22.51-18.13-32-25.78v-16.33zM480 464c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16V258.91c42.75 34.44 99.31 79.92 130.68 104.82 20.49 16.36 56.74 52.53 93.32 52.26 36.45.26 72.27-35.46 93.31-52.26C380.72 338.8 437.24 293.34 480 258.9V464zm0-246.19c-9.62 7.75-20.27 16.34-32 25.79v-75.54c14.44 11.62 24.8 19.97 26.2 21.12 3.69 3.05 5.8 7.54 5.8 12.33v16.3zm-251.09 22.77l45 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.11c-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.35V328c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16.12c23.62-.63 42.67-20.54 42.67-45.07 0-19.97-12.98-37.81-31.58-43.39l-45-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.35V136c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v16.12c-23.62.63-42.67 20.55-42.67 45.07 0 19.97 12.98 37.81 31.58 43.39z\"]\n};\nvar faEnvelopeOpenText = {\n prefix: 'fal',\n iconName: 'envelope-open-text',\n icon: [512, 512, [], \"f658\", \"M352 248v-16c0-4.42-3.58-8-8-8H168c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h176c4.42 0 8-3.58 8-8zm-184-56h176c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H168c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm326.59-27.48c-1.98-1.63-22.19-17.91-46.59-37.53V96c0-17.67-14.33-32-32-32h-46.47c-4.13-3.31-7.71-6.16-10.2-8.14C337.23 38.19 299.44 0 256 0c-43.21 0-80.64 37.72-103.34 55.86-2.53 2.01-6.1 4.87-10.2 8.14H96c-17.67 0-32 14.33-32 32v30.98c-24.52 19.71-44.75 36.01-46.48 37.43A48.002 48.002 0 0 0 0 201.48V464c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V201.51c0-14.31-6.38-27.88-17.41-36.99zM256 32c21.77 0 44.64 16.72 63.14 32H192.9c18.53-15.27 41.42-32 63.1-32zM96 96h320v173.35c-32.33 26-65.3 52.44-86.59 69.34-16.85 13.43-50.19 45.68-73.41 45.31-23.21.38-56.56-31.88-73.41-45.32-21.29-16.9-54.24-43.33-86.59-69.34V96zM32 201.48c0-4.8 2.13-9.31 5.84-12.36 1.24-1.02 11.62-9.38 26.16-21.08v75.55c-11.53-9.28-22.51-18.13-32-25.78v-16.33zM480 464c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16V258.91c42.75 34.44 99.31 79.92 130.68 104.82 20.49 16.36 56.74 52.53 93.32 52.26 36.45.26 72.27-35.46 93.31-52.26C380.72 338.8 437.24 293.34 480 258.9V464zm0-246.19c-9.62 7.75-20.27 16.34-32 25.79v-75.54c14.44 11.62 24.8 19.97 26.2 21.12 3.69 3.05 5.8 7.54 5.8 12.33v16.3z\"]\n};\nvar faEnvelopeSquare = {\n prefix: 'fal',\n iconName: 'envelope-square',\n icon: [448, 512, [], \"f199\", \"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-48zm16 400c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h352c8.822 0 16 7.178 16 16v352zm-64-304H96c-17.673 0-32 14.327-32 32v192c0 17.673 14.327 32 32 32h256c17.673 0 32-14.327 32-32V160c0-17.673-14.327-32-32-32zm0 32v33.855c-14.136 11.628-36.566 29.664-82.117 65.821C259.426 268.015 238.748 288 224.256 288l-.256-.002-.256.002c-14.492 0-35.17-19.984-45.628-28.324-45.544-36.152-67.978-54.192-82.117-65.822V160H352zM96 352V235.092c14.109 11.367 33.624 26.948 62.221 49.648 13.777 11.01 37.902 35.26 65.523 35.26l.253-.001.258.001c27.529 0 51.392-23.975 65.541-35.274 28.583-22.689 48.099-38.27 62.203-49.634V352H96z\"]\n};\nvar faEquals = {\n prefix: 'fal',\n iconName: 'equals',\n icon: [384, 512, [], \"f52c\", \"M376 304H8c-4.42 0-8 3.58-8 8v32c0 4.42 3.58 8 8 8h368c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8zm0-144H8c-4.42 0-8 3.58-8 8v32c0 4.42 3.58 8 8 8h368c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8z\"]\n};\nvar faEraser = {\n prefix: 'fal',\n iconName: 'eraser',\n icon: [512, 512, [], \"f12d\", \"M497.94 273.94a48 48 0 0 0 0-67.88l-160-160a48 48 0 0 0-67.88 0l-256 256a48 48 0 0 0 0 67.88l96 96A48 48 0 0 0 144 480h356a12 12 0 0 0 12-12v-8a12 12 0 0 0-12-12H323.88l174.06-174.06zM292.69 68.69a16 16 0 0 1 22.62 0l160 160a16 16 0 0 1 0 22.62L358.63 368 176 185.37zM144 448a15.88 15.88 0 0 1-11.31-4.69l-96-96a16 16 0 0 1 0-22.62L153.37 208 336 390.63l-52.69 52.68A15.88 15.88 0 0 1 272 448z\"]\n};\nvar faEthernet = {\n prefix: 'fal',\n iconName: 'ethernet',\n icon: [512, 512, [], \"f796\", \"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 16h480c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16zm-16 224h-64V288h-32v128h-64V288h-32v128h-64V288h-32v128h-64V288H96v128H32V224h64v-64h64V96h192v64h64v64h64v192z\"]\n};\nvar faEuroSign = {\n prefix: 'fal',\n iconName: 'euro-sign',\n icon: [320, 512, [], \"f153\", \"M303.625 444.131c-1.543-6.481-8.063-10.445-14.538-8.874-10.014 2.43-25.689 5.304-43.827 5.304-80.726 0-141.733-46.614-160.837-120.561h155.241a12 12 0 0 0 11.784-9.731l1.541-8c1.425-7.402-4.246-14.269-11.784-14.269H77.646c-1.849-20.951-1.849-43.664.616-64h178.657a12 12 0 0 0 11.784-9.731l1.541-8c1.425-7.402-4.246-14.269-11.784-14.269H85.04c20.951-70.25 80.111-120.561 159.604-120.561 14.725 0 28.452 2.194 37.551 4.086 6.282 1.306 12.47-2.581 14.05-8.799l3.93-15.475c1.689-6.652-2.529-13.383-9.262-14.718C280.423 34.452 264.068 32 245.26 32 143.582 32 63.472 100.181 39.439 192H12c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h21.893c-2.466 17.87-1.849 49.827-.617 64H12c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h26.207c21.568 96.749 101.678 160 207.053 160 22.511 0 41.595-3.426 53.081-6.106 6.47-1.51 10.465-7.999 8.926-14.462l-3.642-15.301z\"]\n};\nvar faExchange = {\n prefix: 'fal',\n iconName: 'exchange',\n icon: [512, 512, [], \"f0ec\", \"M508.485 184.485l-92.485 92c-4.687 4.686-12.284 4.686-16.97 0l-7.071-7.07c-4.687-4.686-4.687-12.284 0-16.971L452.893 192H12c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h440.905l-60.946-60.444c-4.687-4.686-4.687-12.284 0-16.971l7.07-7.07c4.687-4.686 12.284-4.686 16.971 0l92.485 92c4.687 4.686 4.686 12.284 0 16.97zm-504.97 160l92.485 92c4.687 4.686 12.284 4.686 16.971 0l7.07-7.07c4.687-4.686 4.687-12.284 0-16.971L59.095 352H500c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12H59.107l60.934-60.444c4.687-4.686 4.687-12.284 0-16.971l-7.071-7.07c-4.686-4.686-12.284-4.687-16.97 0l-92.485 92c-4.686 4.686-4.687 12.284 0 16.97z\"]\n};\nvar faExchangeAlt = {\n prefix: 'fal',\n iconName: 'exchange-alt',\n icon: [512, 512, [], \"f362\", \"M12 192h372v56c0 29.552 36.528 43.072 55.917 21.26l64-72c10.777-12.124 10.777-30.395 0-42.519l-64-72C420.535 60.936 384 74.436 384 104v56H12c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12zm404-88l64 72-64 72V104zm84 216H128v-56c0-29.552-36.528-43.072-55.917-21.26l-64 72c-10.777 12.124-10.777 30.395 0 42.519l64 72C91.465 451.064 128 437.564 128 408v-56h372c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12zM96 408l-64-72 64-72v144z\"]\n};\nvar faExclamation = {\n prefix: 'fal',\n iconName: 'exclamation',\n icon: [192, 512, [], \"f12a\", \"M139.315 32c6.889 0 12.364 5.787 11.982 12.666l-14.667 264c-.353 6.359-5.613 11.334-11.982 11.334H67.352c-6.369 0-11.628-4.975-11.982-11.334l-14.667-264C40.321 37.787 45.796 32 52.685 32h86.63M96 352c35.29 0 64 28.71 64 64s-28.71 64-64 64-64-28.71-64-64 28.71-64 64-64M139.315 0h-86.63C27.457 0 7.353 21.246 8.753 46.441l14.667 264c.652 11.728 5.864 22.178 13.854 29.665C14.613 357.682 0 385.168 0 416c0 52.935 43.065 96 96 96s96-43.065 96-96c0-30.832-14.613-58.318-37.274-75.894 7.991-7.487 13.203-17.937 13.854-29.665l14.667-264C184.647 21.251 164.548 0 139.315 0z\"]\n};\nvar faExclamationCircle = {\n prefix: 'fal',\n iconName: 'exclamation-circle',\n icon: [512, 512, [], \"f06a\", \"M256 40c118.621 0 216 96.075 216 216 0 119.291-96.61 216-216 216-119.244 0-216-96.562-216-216 0-119.203 96.602-216 216-216m0-32C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm-11.49 120h22.979c6.823 0 12.274 5.682 11.99 12.5l-7 168c-.268 6.428-5.556 11.5-11.99 11.5h-8.979c-6.433 0-11.722-5.073-11.99-11.5l-7-168c-.283-6.818 5.167-12.5 11.99-12.5zM256 340c-15.464 0-28 12.536-28 28s12.536 28 28 28 28-12.536 28-28-12.536-28-28-28z\"]\n};\nvar faExclamationSquare = {\n prefix: 'fal',\n iconName: 'exclamation-square',\n icon: [448, 512, [], \"f321\", \"M219.5 320h9c6.4 0 11.7-5.1 12-11.5l7-168c.3-6.8-5.2-12.5-12-12.5h-23c-6.8 0-12.3 5.7-12 12.5l7 168c.3 6.4 5.6 11.5 12 11.5zM400 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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16zm-192-92c-15.5 0-28 12.5-28 28s12.5 28 28 28 28-12.5 28-28-12.5-28-28-28z\"]\n};\nvar faExclamationTriangle = {\n prefix: 'fal',\n iconName: 'exclamation-triangle',\n icon: [576, 512, [], \"f071\", \"M270.2 160h35.5c3.4 0 6.1 2.8 6 6.2l-7.5 196c-.1 3.2-2.8 5.8-6 5.8h-20.5c-3.2 0-5.9-2.5-6-5.8l-7.5-196c-.1-3.4 2.6-6.2 6-6.2zM288 388c-15.5 0-28 12.5-28 28s12.5 28 28 28 28-12.5 28-28-12.5-28-28-28zm281.5 52L329.6 24c-18.4-32-64.7-32-83.2 0L6.5 440c-18.4 31.9 4.6 72 41.6 72H528c36.8 0 60-40 41.5-72zM528 480H48c-12.3 0-20-13.3-13.9-24l240-416c6.1-10.6 21.6-10.7 27.7 0l240 416c6.2 10.6-1.5 24-13.8 24z\"]\n};\nvar faExpand = {\n prefix: 'fal',\n iconName: 'expand',\n icon: [448, 512, [], \"f065\", \"M0 180V56c0-13.3 10.7-24 24-24h124c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12H32v116c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12zM300 32h124c13.3 0 24 10.7 24 24v124c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12V64H300c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12zm148 300v124c0 13.3-10.7 24-24 24H300c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h116V332c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12zM148 480H24c-13.3 0-24-10.7-24-24V332c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v116h116c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12z\"]\n};\nvar faExpandAlt = {\n prefix: 'fal',\n iconName: 'expand-alt',\n icon: [448, 512, [], \"f424\", \"M198.829 275.515l5.656 5.656c4.686 4.686 4.686 12.284 0 16.971L54.627 448H116c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12H12c-6.627 0-12-5.373-12-12V364c0-6.627 5.373-12 12-12h8c6.627 0 12 5.373 12 12v61.373l149.858-149.858c4.687-4.687 12.285-4.687 16.971 0zM436 32H332c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h61.373L243.515 213.858c-4.686 4.686-4.686 12.284 0 16.971l5.656 5.656c4.686 4.686 12.284 4.686 16.971 0L416 86.627V148c0 6.627 5.373 12 12 12h8c6.627 0 12-5.373 12-12V44c0-6.627-5.373-12-12-12z\"]\n};\nvar faExpandArrows = {\n prefix: 'fal',\n iconName: 'expand-arrows',\n icon: [448, 512, [], \"f31d\", \"M447.7 364l.3 104c0 6.6-5.4 12-12 12l-104-.3c-6.6 0-12-5.4-12-12v-10c0-6.6 5.4-12 12-12l58 .3.7-.7L224 278.6 57.3 445.3l.7.7 58-.3c6.6 0 12 5.4 12 12v10c0 6.6-5.4 12-12 12L12 480c-6.6 0-12-5.4-12-12l.3-104c0-6.6 5.4-12 12-12h10c6.6 0 12 5.4 12 12l-.3 58 .7.7L201.4 256 34.7 89.3l-.7.7.3 58c0 6.6-5.4 12-12 12h-10c-6.6 0-12-5.4-12-12L0 44c0-6.6 5.4-12 12-12l104 .3c6.6 0 12 5.4 12 12v10c0 6.6-5.4 12-12 12L58 66l-.7.7L224 233.4 390.7 66.7l-.7-.7-58 .3c-6.6 0-12-5.4-12-12v-10c0-6.6 5.4-12 12-12l104-.3c6.6 0 12 5.4 12 12l-.3 104c0 6.6-5.4 12-12 12h-10c-6.6 0-12-5.4-12-12l.3-58-.7-.7L246.6 256l166.7 166.7.7-.7-.3-58c0-6.6 5.4-12 12-12h10c6.6 0 12 5.4 12 12z\"]\n};\nvar faExpandArrowsAlt = {\n prefix: 'fal',\n iconName: 'expand-arrows-alt',\n icon: [448, 512, [], \"f31e\", \"M391.7 329.7L356 365.4 246.6 256 356 146.6l35.7 35.7c20.7 20.7 56.3 6 56.3-23.3V65c0-18.2-14.8-33-33-33h-94c-29.3 0-44.1 35.5-23.3 56.3l35.7 35.7L224 233.4 114.6 124l35.7-35.7C171 67.6 156.3 32 127 32H33C14.8 32 0 46.8 0 65v94c0 29.3 35.5 44.1 56.3 23.3L92 146.6 201.4 256 92 365.4l-35.7-35.7C35.6 309 0 323.7 0 353v94c0 18.2 14.8 33 33 33h94c29.3 0 44.1-35.5 23.3-56.3L114.6 388 224 278.6 333.4 388l-35.7 35.7c-20.7 20.7-6 56.3 23.3 56.3h94c18.2 0 33-14.8 33-33v-94c0-29.3-35.6-44.1-56.3-23.3zM321 60.9h94c2.3 0 4.1 1.9 4.1 4.1v94c0 3.7-4.4 5.5-7 2.9l-94-94c-2.6-2.6-.8-7 2.9-7zm-285.1 101c-2.6 2.6-7 .8-7-2.9V65c0-2.3 1.9-4.1 4.1-4.1h94c3.7 0 5.5 4.4 2.9 7l-94 94zM127 451.1H33c-2.3 0-4.1-1.9-4.1-4.1v-94c0-3.7 4.4-5.5 7-2.9l94 94c2.6 2.6.8 7-2.9 7zm288 0h-94c-3.7 0-5.5-4.4-2.9-7l94-94c2.6-2.6 7-.8 7 2.9v94c.1 2.3-1.8 4.1-4.1 4.1z\"]\n};\nvar faExpandWide = {\n prefix: 'fal',\n iconName: 'expand-wide',\n icon: [512, 512, [], \"f320\", \"M0 212V88c0-13.3 10.7-24 24-24h124c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12H32v116c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12zM364 64h124c13.3 0 24 10.7 24 24v124c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12V96H364c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12zm148 236v124c0 13.3-10.7 24-24 24H364c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h116V300c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12zM148 448H24c-13.3 0-24-10.7-24-24V300c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v116h116c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12z\"]\n};\nvar faExternalLink = {\n prefix: 'fal',\n iconName: 'external-link',\n icon: [512, 512, [], \"f08e\", \"M440,256H424a8,8,0,0,0-8,8V464a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V112A16,16,0,0,1,48,96H248a8,8,0,0,0,8-8V72a8,8,0,0,0-8-8H48A48,48,0,0,0,0,112V464a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V264A8,8,0,0,0,440,256ZM500,0,364,.34a12,12,0,0,0-12,12v10a12,12,0,0,0,12,12L454,34l.7.71L131.51,357.86a12,12,0,0,0,0,17l5.66,5.66a12,12,0,0,0,17,0L477.29,57.34l.71.7-.34,90a12,12,0,0,0,12,12h10a12,12,0,0,0,12-12L512,12A12,12,0,0,0,500,0Z\"]\n};\nvar faExternalLinkAlt = {\n prefix: 'fal',\n iconName: 'external-link-alt',\n icon: [512, 512, [], \"f35d\", \"M440,256H424a8,8,0,0,0-8,8V464a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V112A16,16,0,0,1,48,96H248a8,8,0,0,0,8-8V72a8,8,0,0,0-8-8H48A48,48,0,0,0,0,112V464a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V264A8,8,0,0,0,440,256ZM480,0h-.06L383.78.17c-28.45,0-42.66,34.54-22.58,54.62l35.28,35.28-265,265a12,12,0,0,0,0,17l8.49,8.49a12,12,0,0,0,17,0l265-265,35.28,35.27c20,20,54.57,6,54.62-22.57L512,32.05A32,32,0,0,0,480,0Zm-.17,128.17-96-96L480,32Z\"]\n};\nvar faExternalLinkSquare = {\n prefix: 'fal',\n iconName: 'external-link-square',\n icon: [448, 512, [], \"f14c\", \"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-48zm16 400c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h352c8.822 0 16 7.178 16 16v352zM99.515 374.828c-4.686-4.686-4.686-12.284 0-16.971l195.15-195.15-.707-.707-89.958.342c-6.627 0-12-5.373-12-12v-9.999c0-6.628 5.372-12 12-12L340 128c6.627 0 12 5.372 12 12l-.343 136c0 6.627-5.373 12-12 12h-9.999c-6.627 0-12-5.373-12-12l.342-89.958-.707-.707-195.15 195.15c-4.686 4.686-12.284 4.686-16.971 0l-5.657-5.657z\"]\n};\nvar faExternalLinkSquareAlt = {\n prefix: 'fal',\n iconName: 'external-link-square-alt',\n icon: [448, 512, [], \"f360\", \"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-48zm16 400c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h352c8.822 0 16 7.178 16 16v352zm-96-304h-.056l-96.167.167c-28.442.049-42.66 34.539-22.572 54.627l35.272 35.272L98.545 356c-4.686 4.686-4.686 12.284 0 16.97l8.484 8.485c4.687 4.686 12.285 4.686 16.971 0l137.934-137.934 35.272 35.272c20.023 20.023 54.578 5.98 54.627-22.572l.167-96.166c.03-17.702-14.325-32.055-32-32.055zm-.167 128.167l-96-96L320 160l-.167 96.167z\"]\n};\nvar faEye = {\n prefix: 'fal',\n iconName: 'eye',\n icon: [576, 512, [], \"f06e\", \"M288 288a64 64 0 0 0 0-128c-1 0-1.88.24-2.85.29a47.5 47.5 0 0 1-60.86 60.86c0 1-.29 1.88-.29 2.85a64 64 0 0 0 64 64zm284.52-46.6C518.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 96a128 128 0 1 1-128 128A128.14 128.14 0 0 1 288 96zm0 320c-107.36 0-205.46-61.31-256-160a294.78 294.78 0 0 1 129.78-129.33C140.91 153.69 128 187.17 128 224a160 160 0 0 0 320 0c0-36.83-12.91-70.31-33.78-97.33A294.78 294.78 0 0 1 544 256c-50.53 98.69-148.64 160-256 160z\"]\n};\nvar faEyeDropper = {\n prefix: 'fal',\n iconName: 'eye-dropper',\n icon: [512, 512, [], \"f1fb\", \"M483.61 26.62c-35.51-35.65-92.84-35.33-128.04 0l-82.63 82.94-17-17.06c-9.37-9.41-24.57-9.41-33.95 0l-40.98 41.14c-9.37 9.41-9.38 24.67 0 34.08l16.98 17.05-147.3 149.84a64.38 64.38 0 0 0-18.76 45.44v33.74l-27 39.79c-7.98 12.7-6.13 29.25 4.44 39.86l9.11 9.14c10.57 10.61 27.06 12.46 39.71 4.46l39.65-27.1h33.62a63.91 63.91 0 0 0 45.27-18.82l149.31-147.85L343 330.31c9.38 9.41 24.58 9.41 33.95 0l40.98-41.14c9.38-9.41 9.37-24.67 0-34.08l-16.95-17.02 82.63-82.94c29.67-29.77 45.24-83.1 0-128.51zM154.09 440.41c-6.05 6.07-14.08 7.41-22.63 7.41H88.59l-47.47 32.05-9.11-9.14 31.94-47.65v-43.03c0-8.58 3.33-16.65 9.38-22.72l147.3-149.85 82.77 83.08-149.31 149.85zm306.89-307.99L355.71 238.07l33.93 34.06-29.67 29.78L209.3 150.67l29.67-29.77 33.97 34.1L378.21 49.34c22.82-22.91 59.95-22.91 82.77 0 39.39 39.53 6.91 76.14 0 83.08z\"]\n};\nvar faEyeEvil = {\n prefix: 'fal',\n iconName: 'eye-evil',\n icon: [640, 512, [], \"f6db\", \"M627.03 239.08L514.87 208.7c-4.74-6.5-10.02-13.27-15.92-20.25 1.37-2.11 55.26-88.1 55.26-88.1 8.9-14.26-6.04-31.37-22.45-25.42l-119.65 43.32c-9.73-4.86-20.03-9.01-30.84-12.44l-44.39-95.07C333.54 3.58 326.77 0 320 0s-13.54 3.58-16.88 10.73l-44.39 95.07c-10.81 3.43-21.11 7.58-30.84 12.44C98.03 71.23 106.35 73.72 101.5 73.72c-13.37 0-23.41 14.32-15.72 26.63 0 0 53.89 86 55.26 88.1-5.9 6.98-11.18 13.75-15.92 20.25L12.97 239.08c-17.29 4.68-17.29 29.15 0 33.84l112.16 30.38c4.72 6.48 9.98 13.22 15.86 20.18-1.37 2.13-55.2 88.17-55.2 88.17-8.93 14.31 6.07 31.35 22.45 25.43l119.65-43.32c9.73 4.86 20.04 9.01 30.85 12.44l44.39 95.07c3.33 7.15 10.1 10.73 16.87 10.73s13.54-3.58 16.88-10.73l44.39-95.07c10.81-3.43 21.11-7.58 30.85-12.44l119.65 43.32c16.42 5.95 31.35-11.16 22.45-25.43 0 0-53.83-86.04-55.2-88.17 5.88-6.96 11.13-13.7 15.86-20.18l112.16-30.38c17.28-4.69 17.28-29.15-.01-33.84zm-131.39 36.27c-14.98 20.55-12.65 17.51-36.32 45.52l45.78 72.51-95-34.39c-24.77 12.38-24.11 12.13-51.89 20.95L320 461.78l-38.21-81.84c-27.76-8.81-27.08-8.56-51.89-20.95l-95 34.39 45.78-72.51c-23.7-28.04-21.34-24.96-36.32-45.52L72.91 256l71.45-19.35c14.93-20.48 12.55-17.39 36.49-45.72l-45.95-72.32 95 34.4c24.69-12.33 24-12.1 51.88-20.96L320 50.22l38.21 81.84c27.82 8.84 27.08 8.57 51.88 20.96l95-34.4-45.95 72.32c23.84 28.21 21.47 25.12 36.49 45.72L567.09 256l-71.45 19.35zM320 213.33c-32.82 0-62.7-8.79-86.45-23.09C222.48 206.77 216 226.62 216 248c0 57.44 46.56 104 104 104s104-46.56 104-104c0-21.38-6.48-41.23-17.55-57.75-23.75 14.29-53.63 23.08-86.45 23.08zM320 320c-39.7 0-72-32.3-72-72 0-5.03.52-10 1.54-14.85 12.42 4.53 25.52 7.48 38.91 9.5-.08.94-.45 1.71-.45 2.69 0 28.45 32 42.67 32 42.67s32-14.22 32-42.67c0-.97-.38-1.75-.45-2.69 13.39-2.01 26.49-4.97 38.91-9.5C391.48 238 392 242.97 392 248c0 39.7-32.3 72-72 72z\"]\n};\nvar faEyeSlash = {\n prefix: 'fal',\n iconName: 'eye-slash',\n icon: [640, 512, [], \"f070\", \"M637 485.25L23 1.75A8 8 0 0 0 11.76 3l-10 12.51A8 8 0 0 0 3 26.75l614 483.5a8 8 0 0 0 11.25-1.25l10-12.51a8 8 0 0 0-1.25-11.24zM320 96a128.14 128.14 0 0 1 128 128c0 21.62-5.9 41.69-15.4 59.57l25.45 20C471.65 280.09 480 253.14 480 224c0-36.83-12.91-70.31-33.78-97.33A294.88 294.88 0 0 1 576.05 256a299.73 299.73 0 0 1-67.77 87.16l25.32 19.94c28.47-26.28 52.87-57.26 70.93-92.51a32.35 32.35 0 0 0 0-29.19C550.3 135.59 442.94 64 320 64a311.23 311.23 0 0 0-130.12 28.43l45.77 36C258.24 108.52 287.56 96 320 96zm60.86 146.83A63.15 63.15 0 0 0 320 160c-1 0-1.89.24-2.85.29a45.11 45.11 0 0 1-.24 32.19zm-217.62-49.16A154.29 154.29 0 0 0 160 224a159.39 159.39 0 0 0 226.27 145.29L356.69 346c-11.7 3.53-23.85 6-36.68 6A128.15 128.15 0 0 1 192 224c0-2.44.59-4.72.72-7.12zM320 416c-107.36 0-205.47-61.31-256-160 17.43-34 41.09-62.72 68.31-86.72l-25.86-20.37c-28.48 26.28-52.87 57.25-70.93 92.5a32.35 32.35 0 0 0 0 29.19C89.71 376.41 197.07 448 320 448a311.25 311.25 0 0 0 130.12-28.43l-29.25-23C389.06 408.84 355.15 416 320 416z\"]\n};\nvar faFan = {\n prefix: 'fal',\n iconName: 'fan',\n icon: [512, 512, [], \"f863\", \"M346.54 120a238.17 238.17 0 0 0-53.94 6l9.24-91.74A30.93 30.93 0 0 0 294 10.41 31.73 31.73 0 0 0 270.51 0a31.94 31.94 0 0 0-4 .25C183 10.72 120 81.75 120 165.47a238.24 238.24 0 0 0 6 53.94l-91.74-9.25-.8-.08-2.35-.08a31 31 0 0 0-23.19 10.52 31.76 31.76 0 0 0-7.67 25C10.72 329 81.75 392 165.46 392a238.11 238.11 0 0 0 53.94-6l-9.24 91.74a30.92 30.92 0 0 0 7.84 23.85 31.78 31.78 0 0 0 27.5 10.16C329 501.28 392 430.25 392 346.53a238.15 238.15 0 0 0-6-53.93l91.74 9.24.8.08 2.33.08a31 31 0 0 0 23.19-10.51 31.79 31.79 0 0 0 7.67-25C501.28 183 430.25 120 346.54 120zm19 138.37l-25.33-2.55 8.69 23.93c7.37 20.25 11.1 42.76 11.1 66.78 0 67.62-50.94 125-118 134.43l11.63-115.41 2.55-25.33-23.93 8.69C212 356.27 189.49 360 165.46 360 97.85 360 40.47 309.06 31 242l115.42 11.63 25.33 2.55-8.69-23.93C155.73 212 152 189.49 152 165.47c0-67.42 50.64-124.66 117.9-133.39l-11.53 114.37-2.55 25.33 23.93-8.68c20.25-7.37 42.76-11.1 66.79-11.1 67.61 0 125 50.94 134.43 118zM256 224a32 32 0 1 0 32 32 32 32 0 0 0-32-32z\"]\n};\nvar faFanTable = {\n prefix: 'fal',\n iconName: 'fan-table',\n icon: [448, 512, [], \"e004\", \"M224,209.42A14.58,14.58,0,1,0,238.58,224,14.58,14.58,0,0,0,224,209.42ZM448,224C448,100.29,347.71,0,224,0S0,100.29,0,224C0,342.31,91.79,439,208,447.19V480H88a24,24,0,0,0-24,24,8,8,0,0,0,8,8H376a8,8,0,0,0,8-8,24,24,0,0,0-24-24H240V447.19C356.21,439,448,342.31,448,224ZM224,413.54c-104.51,0-189.54-85-189.54-189.54S119.49,34.46,224,34.46s189.54,85,189.54,189.54S328.51,413.54,224,413.54ZM383.21,243.33a101.68,101.68,0,0,0-140.28-94.15L222,93.23c-8-21.36-34.11-32.76-56-20.11a101.76,101.76,0,0,0-37.24,139,99.86,99.86,0,0,0,25.93,29.45l-38.1,46.28a39,39,0,0,0,10.69,58.59,101.54,101.54,0,0,0,50.64,13.61h0c28.88,0,66.61-13.37,88.27-50.9A99.43,99.43,0,0,0,278.68,272c12.35,2,31.56,5.23,59.13,9.83C358.83,285.33,383.21,269.94,383.21,243.33Zm-39.65,6.94c-1.62,0-76.85-12.91-78.95-12.91-.12,0-.05,0-.19,0-10,0-17.43,8.59-17,18.47a68.27,68.27,0,0,1-9,37.3c-19.49,33.76-54.1,34.9-59.81,34.9a69.57,69.57,0,0,1-35.48-9.38,7,7,0,0,1-1.91-10.49l49-59.48c7.82-9.5,2.77-21.62-5.83-26.06a68.35,68.35,0,0,1-28-26.54,69.75,69.75,0,0,1,25.53-95.27A7,7,0,0,1,192,104.45l27,72a16.94,16.94,0,0,0,25.2,8,69.67,69.67,0,0,1,107,58.9C351.21,247,348.63,250.27,343.56,250.27Z\"]\n};\nvar faFarm = {\n prefix: 'fal',\n iconName: 'farm',\n icon: [576, 512, [], \"f864\", \"M154.71 192l16-32H32v-43.28c0-41.84 30-80 71.64-84.29A80.09 80.09 0 0 1 192 112v6.56a63.81 63.81 0 0 1 28.7-26.95c-11-49-51.24-88.76-102.68-91.45A112 112 0 0 0 0 112v384a16 16 0 0 0 16 16h112v-32H32V192zM408 224h-80a8 8 0 0 0-8 8v80a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-80a8 8 0 0 0-8-8zm-24 64h-32v-32h32zm188.62-41.78l-55.49-111a32.05 32.05 0 0 0-15.62-14.93L381 66.76a32 32 0 0 0-26 0l-120.51 53.56c-6.69 3-13.47 10.62-15.62 14.93l-55.49 111a32.08 32.08 0 0 0-3.38 14.29V496a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-80h96v80a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16V260.54a32.08 32.08 0 0 0-3.38-14.32zM544 480h-96v-80a16 16 0 0 0-16-16H304a16 16 0 0 0-16 16v80h-96V260.54l55.49-111L368 96l120.51 53.56 55.49 111z\"]\n};\nvar faFastBackward = {\n prefix: 'fal',\n iconName: 'fast-backward',\n icon: [512, 512, [], \"f049\", \"M12 447h8c6.6 0 12-5.4 12-12V277.3c.9 1 1.9 2 3 2.9l200.5 159.4c20.6 17.2 52.5 2.8 52.5-24.6V297.2l171.5 142.4c20.6 17.2 52.5 2.8 52.5-24.6V95c0-27.4-31.9-41.8-52.5-24.6L288 213.9V95.1c0-27.4-31.9-41.8-52.5-24.6L35 231c-1.1.9-2.1 1.9-3 2.9V75c0-6.6-5.4-12-12-12h-8C5.4 63 0 68.4 0 75v360c0 6.6 5.4 12 12 12zm280.5-191.4l.2-.1.2-.1L480 95v320L292.7 255.8l-.1-.1-.1-.1zM61 255.2l194.8-160 .1-.1.1-.1v320l-.1-.1-.1-.1L61 256v-.8z\"]\n};\nvar faFastForward = {\n prefix: 'fal',\n iconName: 'fast-forward',\n icon: [512, 512, [], \"f050\", \"M500 63h-8c-6.6 0-12 5.4-12 12v157.7c-.9-1-1.9-2-3-2.9L276.5 70.4C255.9 53.3 224 67.6 224 95v117.8L52.5 70.4C31.9 53.3 0 67.6 0 95v320c0 27.4 31.9 41.8 52.5 24.6L224 296.2V415c0 27.4 31.9 41.8 52.5 24.6L477 279c1.1-.9 2.1-1.9 3-2.9V435c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V75c0-6.6-5.4-12-12-12zM219.5 254.4l-.2.1-.2.1L32 415V95l187.3 159.2.1.1.1.1zm231.5.5l-194.8 160-.1.1h-.1V95l.1.1.1.1L451 254v.9z\"]\n};\nvar faFaucet = {\n prefix: 'fal',\n iconName: 'faucet',\n icon: [512, 512, [], \"e005\", \"M368,240H307.71A127.34,127.34,0,0,0,224,193.23V178.75l-16-1.69-16,1.69v14.48A127.34,127.34,0,0,0,108.29,240H8a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H125.31C142,243.43,172.56,224,208,224s66.05,19.43,82.69,48H368A112.14,112.14,0,0,1,480,384v32H384V384a16,16,0,0,0-16-16H290.69c-16.64,28.57-47.25,48-82.69,48S142,396.57,125.31,368H8a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H108.29a127.56,127.56,0,0,0,199.42,0H352v16a32,32,0,0,0,32,32h96a32,32,0,0,0,32-32V384C512,304.6,447.4,240,368,240ZM65.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.8L224,109.43V72a8,8,0,0,0-8-8H200a8,8,0,0,0-8,8v37.43L65.59,96.09c-9.42-1-17.59,6.81-17.59,16.8v30.22C48,153.1,56.17,160.91,65.59,159.91Z\"]\n};\nvar faFaucetDrip = {\n prefix: 'fal',\n iconName: 'faucet-drip',\n icon: [512, 512, [], \"e006\", \"M65.59,95.91,208,80.88l142.41,15c9.42,1,17.59-6.81,17.59-16.8V48.89c0-10-8.17-17.8-17.59-16.8L224,45.43V8a8,8,0,0,0-8-8H200a8,8,0,0,0-8,8V45.43L65.59,32.09C56.17,31.09,48,38.9,48,48.89V79.11C48,89.1,56.17,96.91,65.59,95.91ZM368,176H307.71A127.34,127.34,0,0,0,224,129.23V114.75l-16-1.69-16,1.69v14.48A127.34,127.34,0,0,0,108.29,176H8a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H125.31C142,179.43,172.56,160,208,160s66.05,19.43,82.69,48H368A112.14,112.14,0,0,1,480,320v32H384V320a16,16,0,0,0-16-16H290.69c-16.64,28.57-47.25,48-82.69,48S142,332.57,125.31,304H8a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H108.29a127.56,127.56,0,0,0,199.42,0H352v16a32,32,0,0,0,32,32h96a32,32,0,0,0,32-32V320C512,240.6,447.4,176,368,176Zm32,304a32,32,0,0,0,64,0c0-17.67-32-64-32-64S400,462.33,400,480Z\"]\n};\nvar faFax = {\n prefix: 'fal',\n iconName: 'fax',\n icon: [512, 512, [], \"f1ac\", \"M392 304h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm0 128h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zM80 128H48a48 48 0 0 0-48 48v288a48 48 0 0 0 48 48h32a48 48 0 0 0 48-48V176a48 48 0 0 0-48-48zm16 336a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V176a16 16 0 0 1 16-16h32a16 16 0 0 1 16 16zm296-96h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm-128 64h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm0-64h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm216-205.06v-53.69a32 32 0 0 0-9.38-22.63L393.38 9.38A32 32 0 0 0 370.75 0H208a48 48 0 0 0-48 48v416a48 48 0 0 0 48 48h256a48 48 0 0 0 48-48V208a47.87 47.87 0 0 0-32-45.06zM384 45.25L434.75 96H384zM192 48a16 16 0 0 1 16-16h144v64a32 32 0 0 0 32 32h64v64H192zm288 416a16 16 0 0 1-16 16H208a16 16 0 0 1-16-16V224h288zm-152-32h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm0-64h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm0-64h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm-64 0h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8z\"]\n};\nvar faFeather = {\n prefix: 'fal',\n iconName: 'feather',\n icon: [512, 512, [], \"f52d\", \"M467.11 44.89C438.25 16.03 401.61 0 361.61 0c-46.7 0-97.96 21.85-146.76 70.65l-85.74 85.74c-79.32 79.32-71.83 210.7-53.54 257.4L4.69 484.66A15.962 15.962 0 0 0 0 495.98C0 504.52 6.87 512 16.02 512c4.1 0 8.2-1.56 11.32-4.69l70.93-70.93c17.2 6.76 45.79 12.08 79.23 12.08 57.18 0 128.03-15.48 178.11-65.56l85.74-85.74c90.6-90.61 88.31-189.72 25.76-252.27zM151.76 179.04L237.5 93.3c40.08-40.08 83-61.27 124.11-61.27 30.97 0 59.62 12.28 82.85 35.51 42.32 42.32 45.75 100.1 13.13 156.69H310.42l37.24-37.24c6.26-6.26 6.26-16.39 0-22.65s-16.39-6.26-22.65 0L101.19 388.16c-9.9-43.33-13.3-145.26 50.57-209.12zm25.74 237.38c-23.3 0-40.97-2.79-53.49-5.79l58.75-58.75 158.19.37-7.99 7.99c-48.88 48.88-118.38 56.18-155.46 56.18zm195.38-96.09H214.32l64.07-64.07h156.34c-5.11 6.12-61.85 64.07-61.85 64.07z\"]\n};\nvar faFeatherAlt = {\n prefix: 'fal',\n iconName: 'feather-alt',\n icon: [512, 512, [], \"f56b\", \"M71.46 287.61c-4.86 42.01-7.27 84.27-7.38 126.56l-.03 11.16-59.36 59.36A15.922 15.922 0 0 0 0 496c0 9.14 7.47 16 16 16 4.09 0 8.19-1.56 11.31-4.69l59.36-59.36 11.16-.03c42.29-.12 84.55-2.53 126.56-7.38C473.8 415.13 508.44 51.72 512 0 460.28 3.56 96.87 38.2 71.46 287.61zm31.83 3.24C122.75 99.86 374.98 48.66 476.23 35.77 470.56 80.23 457.47 153.8 428.4 224H310.62l36.69-36.69c6.25-6.25 6.25-16.38 0-22.62s-16.38-6.25-22.62 0L96.74 392.64c.75-34.17 2.68-68.26 6.55-101.79zM214.62 320l64-64h135.11c-11.37 22.73-24.86 44.31-40.38 64H214.62zm6.1 88.75c-33.16 3.83-67.2 5.76-101.36 6.51L182.62 352h161.44c-32.76 30.25-73.12 51.63-123.34 56.75z\"]\n};\nvar faFemale = {\n prefix: 'fal',\n iconName: 'female',\n icon: [256, 512, [], \"f182\", \"M254.648 340.891l-39.909-164.276a48.18 48.18 0 0 0-16.794-26.583 47.458 47.458 0 0 0-4.554-3.208C207.438 131.225 216 110.594 216 88c0-48.523-39.477-88-88-88S40 39.477 40 88c0 22.594 8.562 43.225 22.609 58.824a47.405 47.405 0 0 0-4.554 3.208 48.184 48.184 0 0 0-16.794 26.583L1.352 340.891C-5.868 370.559 16.716 400 48.047 400H61v59c0 29.224 23.776 53 53 53h28c29.224 0 53-23.776 53-53v-59h12.952c31.329 0 53.917-29.436 46.696-59.109zM128 32c30.928 0 56 25.072 56 56s-25.072 56-56 56-56-25.072-56-56 25.072-56 56-56zm80 336h-45v91c0 11.598-9.402 21-21 21h-28c-11.598 0-21-9.402-21-21v-91H48c-10.259 0-17.877-9.539-15.602-19.546l40-164.454A16 16 0 0 1 88 171.546h12.351a88.015 88.015 0 0 0 55.299 0H168A16 16 0 0 1 183.602 184l40 164.454C225.876 358.458 218.262 368 208 368z\"]\n};\nvar faFieldHockey = {\n prefix: 'fal',\n iconName: 'field-hockey',\n icon: [640, 512, [], \"f44c\", \"M619.5 117.2L563.8 173 496 105.2l84.6-84.7c7.6-7.6 2.2-20.5-8.5-20.5h-11.3c-3.2 0-6.2 1.3-8.5 3.5L214.4 341.8c-29.4 29.5-75.5-14.8-45.2-45.2 31.2-31.2 31.2-81.9 0-113.1-31.2-31.2-81.7-31.3-113 0C19.9 219.7 0 267.9 0 319.2c0 106.5 86.1 191.9 191.8 191.9 89.4 0 134-54.5 164.1-84.7 12.3 50.4 58.4 87.7 113 85.5 57.9-2.3 104.8-49.3 107.2-107.3 2.2-54.6-35-100.8-85.4-113.1l145.9-146c2.2-2.3 3.5-5.3 3.5-8.5v-11.3c-.1-10.7-13-16.1-20.6-8.5zM191.8 479.1C103 479.1 32 407.3 32 319.2c0-42.8 16.6-82.9 46.8-113.2 18.7-18.8 49-18.8 67.8 0 18.7 18.7 18.7 49.2 0 67.9-24.9 24.9-24.9 65.5.1 90.6 25 24.9 65.5 24.9 90.3-.1l236.4-236.7 67.8 67.9-93.9 94.1c-48 7.4-85.7 45.2-93.1 93.2-50.1 50.2-84.5 96.2-162.4 96.2zM544.1 400c0 44.1-35.8 80-79.9 80s-79.9-35.9-79.9-80 35.8-80 79.9-80 79.9 35.9 79.9 80z\"]\n};\nvar faFighterJet = {\n prefix: 'fal',\n iconName: 'fighter-jet',\n icon: [640, 512, [], \"f0fb\", \"M526.785 195.932l-102.96-11.267L382.163 168H367.31L283.183 63.609C304.102 62.027 320 55.759 320 48c0-9-21.383-16-47.189-16H144v32h16v120h-1.63l-64-72H36.462L8 140.11v67.647l-8 .988v94.511l8 .988v67.647L36.462 400H94.37l64-72H160v120h-16v32h128.811c25.806 0 47.189-7 47.189-16 0-7.759-15.898-14.027-36.817-15.609L367.31 344h14.853l41.663-16.665 102.96-11.267C598.984 300.222 640 293.159 640 256c0-37.458-41.863-44.407-113.215-60.068zm-5.185 88.512L416 296l-40 16h-24L242.4 448H192V296h-48l-64 72H49.6l-9.6-9.481V304h8v-16h41.6v-5.926L32 274.963v-37.926l57.6-7.111V224H48v-16h-8v-54.519L49.6 144H80l64 72h48V64h50.4L352 200h24l40 16 105.6 11.556C608 246.519 608 251.185 608 256s0 9.481-86.4 28.444z\"]\n};\nvar faFile = {\n prefix: 'fal',\n iconName: 'file',\n icon: [384, 512, [], \"f15b\", \"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-34zm-22.6 22.7c2.1 2.1 3.5 4.6 4.2 7.4H256V32.5c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9zM336 480H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h176v104c0 13.3 10.7 24 24 24h104v304c0 8.8-7.2 16-16 16z\"]\n};\nvar faFileAlt = {\n prefix: 'fal',\n iconName: 'file-alt',\n icon: [384, 512, [], \"f15c\", \"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-34zm-22.6 22.7c2.1 2.1 3.5 4.6 4.2 7.4H256V32.5c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9zM336 480H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h176v104c0 13.3 10.7 24 24 24h104v304c0 8.8-7.2 16-16 16zm-48-244v8c0 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 12zm0 64v8c0 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 12zm0 64v8c0 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 12z\"]\n};\nvar faFileArchive = {\n prefix: 'fal',\n iconName: 'file-archive',\n icon: [384, 512, [], \"f1c6\", \"M128 96v32h32V96zm65.9 169.6c-1.1-5.6-6-9.6-11.8-9.6H160v-32h-32v32l-19.4 97.2c-6.5 32.5 18.3 62.8 51.4 62.8s57.9-30.3 51.4-62.8zm-33.6 124.5c-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 27zM128 160v32h32v-32zm64-96h-32v32h32zm177.9 33.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-34zM256 32.5c2.8.7 5.4 2.1 7.4 4.2l83.9 83.9c2 2 3.5 4.6 4.2 7.4H256zM352 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h79.7v32h32V32H224v104c0 13.3 10.7 24 24 24h104zM192 192h-32v32h32zm0-64h-32v32h32z\"]\n};\nvar faFileAudio = {\n prefix: 'fal',\n iconName: 'file-audio',\n icon: [384, 512, [], \"f1c7\", \"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-34zm-22.6 22.7c2.1 2.1 3.5 4.6 4.2 7.4H256V32.5c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9zM336 480H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h176v104c0 13.3 10.7 24 24 24h104v304c0 8.8-7.2 16-16 16zm-77.6-66.6c38.5-26 61.6-69.3 61.6-115.7 0-24.7-6.5-48.9-18.9-70.1-12-20.6-29.1-37.8-49.6-50-7.1-4.2-16.3-1.9-20.6 5.2-4.2 7.1-1.9 16.3 5.2 20.6 33.1 19.7 53.7 55.8 53.7 94.3 0 36.5-18.1 70.4-48.3 90.9-6.9 4.6-8.7 14-4 20.8 2.9 4.3 7.6 6.6 12.4 6.6 3.1 0 6-.8 8.5-2.6zm-26.6-38.3c26-17.3 41.5-46.2 41.5-77.4 0-32.9-17.7-63.7-46.2-80.3-7.2-4.2-16.3-1.7-20.5 5.4-4.2 7.2-1.7 16.3 5.4 20.5 19.3 11.2 31.3 32 31.3 54.3 0 21.1-10.5 40.7-28.1 52.4-6.9 4.6-8.8 13.9-4.2 20.8 2.9 4.4 7.7 6.7 12.5 6.7 2.8.1 5.7-.7 8.3-2.4zm-27-38.2c13.7-8.5 21.8-23.1 21.8-39.2 0-17-9.3-32.5-24.2-40.6-7.3-3.9-16.4-1.2-20.3 6.1-3.9 7.3-1.2 16.4 6.1 20.3 5.2 2.8 8.5 8.3 8.5 14.2 0 5.6-2.9 10.8-7.6 13.7-7 4.4-9.2 13.6-4.8 20.7 2.8 4.6 7.7 7.1 12.8 7.1 2.5 0 5.2-.7 7.7-2.3zM138 266.7v74.7L112 322H94v-36h18l26-19.3m17.9-50.7c-2.9 0-6 1.1-8.4 3.5L104 256H76c-6.6 0-12 5.4-12 12v72c0 6.6 5.4 12 12 12h28l43.5 36.5c2.4 2.4 5.4 3.5 8.4 3.5 6.2 0 12.1-4.8 12.1-12V228c0-7.2-5.9-12-12.1-12z\"]\n};\nvar faFileCertificate = {\n prefix: 'fal',\n iconName: 'file-certificate',\n icon: [512, 512, [], \"f5f3\", \"M497.9 97.98L414.02 14.1c-9-9-21.19-14.1-33.89-14.1H176c-26.5.1-47.99 21.6-47.99 48.09V165.7c-5.97 0-11.94-1.68-24.13-5.03-1.7-.46-3.36-.66-4.96-.66-5.56 0-10.43 2.5-13.66 5.79-17.95 18.26-17.07 17.77-41.7 24.5-6.7 1.81-11.97 7.21-13.78 14.07-6.47 24.67-6.09 24.16-24.02 42.32-4.95 5.04-6.9 12.48-5.08 19.43 6.56 24.38 6.52 24.39 0 48.76-1.82 6.95.12 14.4 5.08 19.45 18 18.15 17.58 17.79 24.02 42.29 1.8 6.88 7.08 12.27 13.78 14.1 1.8.48 2.92.8 4.46 1.21V496c0 5.55 2.87 10.69 7.59 13.61 4.66 2.91 10.59 3.16 15.56.7l56.84-28.42 56.84 28.42c2.25 1.12 4.72 1.69 7.16 1.69h272c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM384.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zM33.28 316.68c5.7-22.3 5.7-30.23.01-52.39 15.65-16.2 19.56-22.98 25.63-45.06 21.57-6.13 28.06-9.92 43.88-25.69 9.8 2.62 16.82 4.15 25.21 4.15 8.28 0 15.25-1.49 25.19-4.16 15.56 15.51 22.49 19.58 43.86 25.68 5.98 21.95 9.71 28.63 25.65 45.07-5.77 22.45-5.76 30 0 52.4-15.62 16.17-19.55 22.96-25.61 44.96-14.63 3.92-24 7.36-37.25 19.36-9.94-4.53-20.78-6.89-31.85-6.89s-21.9 2.36-31.85 6.9c-13.18-11.88-22.56-15.34-37.23-19.33-5.97-21.89-9.72-28.57-25.64-45zm101.89 133.01c-4.5-2.25-9.81-2.25-14.31 0l-40.84 20.42V409.9c.12.12.19.17.31.29 3.75 3.82 8.68 5.79 13.64 5.79 3.5 0 7.02-.98 10.16-2.97 7.25-4.59 15.56-6.88 23.87-6.88s16.62 2.29 23.87 6.86c3.16 2.02 6.68 3.01 10.17 3.01 4.96 0 9.87-1.99 13.63-5.79.13-.13.21-.18.34-.32v60.22l-40.84-20.42zm344.84 14.32c0 8.8-7.2 16-16 16h-256V391.9c1.54-.4 2.65-.71 4.44-1.19 6.7-1.82 11.97-7.22 13.77-14.08 6.47-24.68 6.09-24.16 24.03-42.32 4.95-5.04 6.9-12.49 5.07-19.44-6.53-24.33-6.55-24.34 0-48.76 1.83-6.95-.12-14.4-5.07-19.45-18-18.15-17.58-17.79-24.03-42.29-1.8-6.87-7.07-12.27-13.75-14.09-24.23-6.57-23.89-6.23-41.72-24.52-2.94-2.97-6.78-4.52-10.74-5.16V48.09c0-8.8 7.2-16.09 16-16.09h176.03v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01z\"]\n};\nvar faFileChartLine = {\n prefix: 'fal',\n iconName: 'file-chart-line',\n icon: [384, 512, [], \"f659\", \"M136 320h-16c-4.4 0-8 3.6-8 8v96c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-96c0-4.4-3.6-8-8-8zm64-96h-16c-4.4 0-8 3.6-8 8v192c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V232c0-4.4-3.6-8-8-8zm40 72v128c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8zM369.9 97.98L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM256.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zm95.98 431.42c0 8.8-7.2 16-16 16H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01z\"]\n};\nvar faFileChartPie = {\n prefix: 'fal',\n iconName: 'file-chart-pie',\n icon: [384, 512, [], \"f65a\", \"M369.9 97.98L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM256.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zm95.98 431.42c0 8.8-7.2 16-16 16H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01zM192 192v128h127.99c.01 0 0-.01 0-.02-.01-70.68-57.29-127.97-127.97-127.98H192zm32 37.49c27.22 9.66 48.85 31.28 58.5 58.51H224v-58.51zM176 416c-44.12 0-80-35.89-80-80 0-38.63 27.52-70.95 64-78.38v-32c-54.13 7.85-96 54.11-96 110.38 0 61.75 50.25 112 112 112 56.27 0 102.54-41.87 110.38-96h-32c-7.43 36.47-39.74 64-78.38 64z\"]\n};\nvar faFileCheck = {\n prefix: 'fal',\n iconName: 'file-check',\n icon: [384, 512, [], \"f316\", \"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.941zm-22.627 22.628a15.89 15.89 0 0 1 4.195 7.431H256V32.491a15.88 15.88 0 0 1 7.431 4.195l83.883 83.883zM336 480H48c-8.837 0-16-7.163-16-16V48c0-8.837 7.163-16 16-16h176v104c0 13.255 10.745 24 24 24h104v304c0 8.837-7.163 16-16 16zm-34.467-210.949l-134.791 133.71c-4.7 4.663-12.288 4.642-16.963-.046l-67.358-67.552c-4.683-4.697-4.672-12.301.024-16.985l8.505-8.48c4.697-4.683 12.301-4.672 16.984.024l50.442 50.587 117.782-116.837c4.709-4.671 12.313-4.641 16.985.068l8.458 8.527c4.672 4.709 4.641 12.313-.068 16.984z\"]\n};\nvar faFileCode = {\n prefix: 'fal',\n iconName: 'file-code',\n icon: [384, 512, [], \"f1c9\", \"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.941zm-22.627 22.628a15.89 15.89 0 0 1 4.195 7.431H256V32.491a15.88 15.88 0 0 1 7.431 4.195l83.883 83.883zM336 480H48c-8.837 0-16-7.163-16-16V48c0-8.837 7.163-16 16-16h176v104c0 13.255 10.745 24 24 24h104v304c0 8.837-7.163 16-16 16zm-161.471-67.404l-25.928-7.527a5.1 5.1 0 0 1-3.476-6.32l58.027-199.869a5.1 5.1 0 0 1 6.32-3.476l25.927 7.527a5.1 5.1 0 0 1 3.476 6.32L180.849 409.12a5.1 5.1 0 0 1-6.32 3.476zm-48.446-47.674l18.492-19.724a5.101 5.101 0 0 0-.351-7.317L105.725 304l38.498-33.881a5.1 5.1 0 0 0 .351-7.317l-18.492-19.724a5.1 5.1 0 0 0-7.209-.233L57.61 300.279a5.1 5.1 0 0 0 0 7.441l61.263 57.434a5.1 5.1 0 0 0 7.21-.232zm139.043.232l61.262-57.434a5.1 5.1 0 0 0 0-7.441l-61.262-57.434a5.1 5.1 0 0 0-7.209.233l-18.492 19.724a5.101 5.101 0 0 0 .351 7.317L278.275 304l-38.499 33.881a5.1 5.1 0 0 0-.351 7.317l18.492 19.724a5.1 5.1 0 0 0 7.209.232z\"]\n};\nvar faFileContract = {\n prefix: 'fal',\n iconName: 'file-contract',\n icon: [384, 512, [], \"f56c\", \"M196.66 363.33l-13.88-41.62c-3.28-9.81-12.44-16.41-22.78-16.41s-19.5 6.59-22.78 16.41L119 376.36c-1.5 4.58-5.78 7.64-10.59 7.64H96c-8.84 0-16 7.16-16 16s7.16 16 16 16h12.41c18.62 0 35.09-11.88 40.97-29.53L160 354.58l16.81 50.48a15.994 15.994 0 0 0 14.06 10.89c.38.03.75.05 1.12.05 6.03 0 11.59-3.41 14.31-8.86l7.66-15.33c2.78-5.59 7.94-6.19 10.03-6.19s7.25.59 10.19 6.53c7.38 14.7 22.19 23.84 38.62 23.84H288c8.84 0 16-7.16 16-16s-7.16-16-16-16h-15.19c-4.28 0-8.12-2.38-10.16-6.5-11.96-23.85-46.24-30.33-65.99-14.16zM72 96h112c4.42 0 8-3.58 8-8V72c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm120 56v-16c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h112c4.42 0 8-3.58 8-8zm177.9-54.02L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM256.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zm95.98 431.42c0 8.8-7.2 16-16 16H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01z\"]\n};\nvar faFileCsv = {\n prefix: 'fal',\n iconName: 'file-csv',\n icon: [384, 512, [], \"f6dd\", \"M369.9 97.98L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM256.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zm95.98 431.42c0 8.8-7.2 16-16 16H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01zM120 256h-8c-26.51 0-48 21.49-48 48v32c0 26.51 21.49 48 48 48h8c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-8c-8.84 0-16-7.16-16-16v-32c0-8.84 7.16-16 16-16h8c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm112 0c-4.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.11s8.7-1.86 11.72-5.11c23.41-25.2 36.28-58.61 36.28-94.09V264c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v20.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-8h-16zm-52.55 42.47c-1.38-1.19-2.12-2.55-2.12-3.84 0-3.12 4.45-6.62 10.41-6.62H200c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-12.27c-23.39 0-42.41 17.33-42.41 38.62 0 10.66 4.86 20.92 13.33 28.14l21.89 18.77c1.38 1.19 2.12 2.55 2.12 3.84 0 3.12-4.45 6.62-10.41 6.62H160c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h12.27c23.39 0 42.41-17.33 42.41-38.62 0-10.66-4.86-20.92-13.33-28.14l-21.9-18.77z\"]\n};\nvar faFileDownload = {\n prefix: 'fal',\n iconName: 'file-download',\n icon: [384, 512, [], \"f56d\", \"M369.9 97.98L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM256.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zm95.98 431.42c0 8.8-7.2 16-16 16H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01zM208 216c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v88.02h-52.66c-11 0-20.59 6.41-25 16.72-4.5 10.52-2.38 22.62 5.44 30.81l68.12 71.78c5.34 5.59 12.47 8.69 20.09 8.69s14.75-3.09 20.09-8.7l68.12-71.75c7.81-8.2 9.94-20.31 5.44-30.83-4.41-10.31-14-16.72-25-16.72H208V216zm42.84 120.02l-58.84 62-58.84-62h117.68z\"]\n};\nvar faFileEdit = {\n prefix: 'fal',\n iconName: 'file-edit',\n icon: [384, 512, [], \"f31c\", \"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-34zm-22.6 22.7c2.1 2.1 3.5 4.6 4.2 7.4H256V32.5c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9zM336 480H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h176v104c0 13.3 10.7 24 24 24h104v304c0 8.8-7.2 16-16 16zM219.2 247.2l29.6 29.6c1.8 1.8 1.8 4.6 0 6.4L136.4 395.6l-30.1 4.3c-5.9.8-11-4.2-10.2-10.2l4.3-30.1 112.4-112.4c1.8-1.8 4.6-1.8 6.4 0zm64.4 1.2l-16.4 16.4c-1.8 1.8-4.6 1.8-6.4 0l-29.6-29.6c-1.8-1.8-1.8-4.6 0-6.4l16.4-16.4c5.9-5.9 15.4-5.9 21.2 0l14.8 14.8c5.9 5.8 5.9 15.3 0 21.2z\"]\n};\nvar faFileExcel = {\n prefix: 'fal',\n iconName: 'file-excel',\n icon: [384, 512, [], \"f1c3\", \"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-34zm-22.6 22.7c2.1 2.1 3.5 4.6 4.2 7.4H256V32.5c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9zM336 480H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h176v104c0 13.3 10.7 24 24 24h104v304c0 8.8-7.2 16-16 16zM211.7 308l50.5-81.8c4.8-8-.9-18.2-10.3-18.2h-4.1c-4.1 0-7.9 2.1-10.1 5.5-31 48.5-36.4 53.5-45.7 74.5-17.2-32.2-8.4-16-45.8-74.5-2.2-3.4-6-5.5-10.1-5.5H132c-9.4 0-15.1 10.3-10.2 18.2L173 308l-59.1 89.5c-5.1 8 .6 18.5 10.1 18.5h3.5c4.1 0 7.9-2.1 10.1-5.5 37.2-58 45.3-62.5 54.4-82.5 31.5 56.7 44.3 67.2 54.4 82.6 2.2 3.4 6 5.4 10 5.4h3.6c9.5 0 15.2-10.4 10.1-18.4L211.7 308z\"]\n};\nvar faFileExclamation = {\n prefix: 'fal',\n iconName: 'file-exclamation',\n icon: [384, 512, [], \"f31a\", \"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-34zm-22.6 22.7c2.1 2.1 3.5 4.6 4.2 7.4H256V32.5c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9zM336 480H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h176v104c0 13.3 10.7 24 24 24h104v304c0 8.8-7.2 16-16 16zM180.7 192h22.6c6.9 0 12.4 5.8 12 12.7l-6.7 120c-.4 6.4-5.6 11.3-12 11.3h-9.3c-6.4 0-11.6-5-12-11.3l-6.7-120c-.3-6.9 5.2-12.7 12.1-12.7zM220 384c0 15.5-12.5 28-28 28s-28-12.5-28-28 12.5-28 28-28 28 12.5 28 28z\"]\n};\nvar faFileExport = {\n prefix: 'fal',\n iconName: 'file-export',\n icon: [576, 512, [], \"f56e\", \"M567.31 283.89l-71.78-68.16c-8.28-7.8-20.41-9.88-30.84-5.38-10.31 4.42-16.69 13.98-16.69 24.97V288h-64V131.97c0-12.7-5.1-25-14.1-33.99L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99V352h-31.99v112.01c0 8.8-7.2 16-16 16H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v128H168c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h280v52.67c0 10.98 6.38 20.55 16.69 24.97 14.93 6.45 26.88-1.61 30.88-5.39l71.72-68.12c5.62-5.33 8.72-12.48 8.72-20.12s-3.1-14.81-8.7-20.12zM256.03 128.07V32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48zM480 362.88V245.12L542 304l-62 58.88z\"]\n};\nvar faFileImage = {\n prefix: 'fal',\n iconName: 'file-image',\n icon: [384, 512, [], \"f1c5\", \"M159 336l-39.5-39.5c-4.7-4.7-12.3-4.7-17 0l-39 39L63 448h256V304l-55.5-55.5c-4.7-4.7-12.3-4.7-17 0L159 336zm96-50.7l32 32V416H95.1l.3-67.2 15.6-15.6 48 48c20.3-20.3 77.7-77.6 96-95.9zM127 256c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm0-96c17.6 0 32 14.4 32 32s-14.4 32-32 32-32-14.4-32-32 14.4-32 32-32zm242.9-62.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 32.5c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9c2.1 2.1 3.5 4.6 4.2 7.4H256V32.5zM352 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h176v104c0 13.3 10.7 24 24 24h104v304z\"]\n};\nvar faFileImport = {\n prefix: 'fal',\n iconName: 'file-import',\n icon: [512, 512, [], \"f56f\", \"M497.9 97.98L414.02 14.1c-9-9-21.2-14.1-33.89-14.1H175.99C149.5.1 128 21.6 128 48.09V288H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h248v52.67c0 10.98 6.38 20.55 16.69 24.97 14.93 6.45 26.88-1.61 30.88-5.39l71.72-68.12c5.62-5.33 8.72-12.48 8.72-20.12s-3.09-14.8-8.69-20.11l-71.78-68.16c-8.28-7.8-20.41-9.88-30.84-5.38-10.31 4.42-16.69 13.98-16.69 24.97V288H160V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01c0 8.8-7.2 16-16 16H175.99c-8.8 0-16-7.2-16-16V352H128v112.01c0 26.49 21.5 47.99 47.99 47.99h288.02c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM288 245.12L350 304l-62 58.88V245.12zm96.03-117.05V32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48z\"]\n};\nvar faFileInvoice = {\n prefix: 'fal',\n iconName: 'file-invoice',\n icon: [384, 512, [], \"f570\", \"M312 416h-80c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h80c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM64 240v96c0 8.84 8.19 16 18.29 16h219.43c10.1 0 18.29-7.16 18.29-16v-96c0-8.84-8.19-16-18.29-16H82.29C72.19 224 64 231.16 64 240zm32 16h192v64H96v-64zM72 96h112c4.42 0 8-3.58 8-8V72c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm0 64h112c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm297.9-62.02L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM256.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zm95.98 431.42c0 8.8-7.2 16-16 16H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01z\"]\n};\nvar faFileInvoiceDollar = {\n prefix: 'fal',\n iconName: 'file-invoice-dollar',\n icon: [384, 512, [], \"f571\", \"M219.09 327.42l-45-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.35V232c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v24.12c-23.62.63-42.67 20.55-42.67 45.07 0 19.97 12.98 37.81 31.58 43.39l45 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.11c-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.35V440c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24.12c23.62-.63 42.67-20.54 42.67-45.07 0-19.97-12.98-37.81-31.58-43.39zM72 96h112c4.42 0 8-3.58 8-8V72c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm120 56v-16c0-4.42-3.58-8-8-8H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h112c4.42 0 8-3.58 8-8zm177.9-54.02L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM256.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zm95.98 431.42c0 8.8-7.2 16-16 16H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01z\"]\n};\nvar faFileMedical = {\n prefix: 'fal',\n iconName: 'file-medical',\n icon: [384, 512, [], \"f477\", \"M224 232c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v56h-56c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h56v56c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-56h56c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8h-56v-56zM369.9 98L286 14.1C277 5.1 264.8 0 252.1 0H48C21.5.1 0 21.6 0 48.1V464c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V132c0-12.7-5.1-25-14.1-34zM256 32.6c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9c2.1 2.1 3.5 4.6 4.2 7.4H256V32.6zM352 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V48.1C32 39.3 39.2 32 48 32h176v104.1c0 13.3 10.7 23.9 24 23.9h104v304z\"]\n};\nvar faFileMedicalAlt = {\n prefix: 'fal',\n iconName: 'file-medical-alt',\n icon: [448, 512, [], \"f478\", \"M433.9 98L350 14.1C341 5.1 328.8 0 316.1 0h-204c-26.5.1-48 21.6-48 48.1V288H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h126.1l34.7 69.5c2.9 5.9 11.4 5.9 14.3 0L240 275.8l22.1 44.2H352c8.8 0 16-7.2 16-16s-7.2-16-16-16h-70.1l-34.7-69.5c-2.9-5.9-11.4-5.9-14.3 0L176 332.2l-19.9-39.8c-1.4-2.7-4.1-4.4-7.2-4.4H96V48.1c0-8.8 7.3-16.1 16.1-16.1h176v104.1c0 13.3 10.7 23.9 24 23.9h104v304c0 8.8-7.2 16-16 16h-288c-8.8 0-16.1-7.2-16.1-16V352H64.1v112c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V132c0-12.7-5.1-25-14.1-34zM320 128.1V32.6c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9c2.1 2.1 3.5 4.6 4.2 7.4H320z\"]\n};\nvar faFileMinus = {\n prefix: 'fal',\n iconName: 'file-minus',\n icon: [384, 512, [], \"f318\", \"M369.9,97.9,286,14A48,48,0,0,0,252.1-.1H48A48.16,48.16,0,0,0,0,48V464a48,48,0,0,0,48,48H336a48,48,0,0,0,48-48V131.9A48.23,48.23,0,0,0,369.9,97.9Zm-22.6,22.7a15.73,15.73,0,0,1,4.2,7.4H256V32.5a15.73,15.73,0,0,1,7.4,4.2ZM336,480H48a16,16,0,0,1-16-16V48A16,16,0,0,1,48,32H224V136a23.94,23.94,0,0,0,24,24H352V464A16,16,0,0,1,336,480ZM288,300v8a12,12,0,0,1-12,12H108a12,12,0,0,1-12-12v-8a12,12,0,0,1,12-12H276A12,12,0,0,1,288,300Z\"]\n};\nvar faFileMusic = {\n prefix: 'fal',\n iconName: 'file-music',\n icon: [384, 512, [], \"f8b6\", \"M369.91 98L286 14.09A48 48 0 0 0 252.09 0H48A48.15 48.15 0 0 0 0 48.08V464a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V132a48.22 48.22 0 0 0-14.09-34zM256 32.59a15.63 15.63 0 0 1 7.41 4.2l83.9 83.88a15.63 15.63 0 0 1 4.19 7.4H256zM352 464a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V48.08a16 16 0 0 1 16-16h176v104a23.93 23.93 0 0 0 24 24h104zM128 271.2v98.69a69.34 69.34 0 0 0-16-2c-26.5 0-48 14.33-48 32s21.5 32 48 32 48-14.32 48-32V291.11l96-37.51v84.29a69.34 69.34 0 0 0-16-1.95c-26.5 0-48 14.32-48 32s21.5 32 48 32 48-14.33 48-32V224a16 16 0 0 0-20.81-15.24l-128 47.24A16 16 0 0 0 128 271.2z\"]\n};\nvar faFilePdf = {\n prefix: 'fal',\n iconName: 'file-pdf',\n icon: [384, 512, [], \"f1c1\", \"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-34zm-22.6 22.7c2.1 2.1 3.5 4.6 4.2 7.4H256V32.5c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9zM336 480H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h176v104c0 13.3 10.7 24 24 24h104v304c0 8.8-7.2 16-16 16zm-22-171.2c-13.5-13.3-55-9.2-73.7-6.7-21.2-12.8-35.2-30.4-45.1-56.6 4.3-18 12-47.2 6.4-64.9-4.4-28.1-39.7-24.7-44.6-6.8-5 18.3-.3 44.4 8.4 77.8-11.9 28.4-29.7 66.9-42.1 88.6-20.8 10.7-54.1 29.3-58.8 52.4-3.5 16.8 22.9 39.4 53.1 6.4 9.1-9.9 19.3-24.8 31.3-45.5 26.7-8.8 56.1-19.8 82-24 21.9 12 47.6 19.9 64.6 19.9 27.7.1 28.9-30.2 18.5-40.6zm-229.2 89c5.9-15.9 28.6-34.4 35.5-40.8-22.1 35.3-35.5 41.5-35.5 40.8zM180 175.5c8.7 0 7.8 37.5 2.1 47.6-5.2-16.3-5-47.6-2.1-47.6zm-28.4 159.3c11.3-19.8 21-43.2 28.8-63.7 9.7 17.7 22.1 31.7 35.1 41.5-24.3 4.7-45.4 15.1-63.9 22.2zm153.4-5.9s-5.8 7-43.5-9.1c41-3 47.7 6.4 43.5 9.1z\"]\n};\nvar faFilePlus = {\n prefix: 'fal',\n iconName: 'file-plus',\n icon: [384, 512, [], \"f319\", \"M369.9,97.9,286,14A48,48,0,0,0,252.1-.1H48A48.16,48.16,0,0,0,0,48V464a48,48,0,0,0,48,48H336a48,48,0,0,0,48-48V131.9A48.23,48.23,0,0,0,369.9,97.9Zm-22.6,22.7a15.73,15.73,0,0,1,4.2,7.4H256V32.5a15.73,15.73,0,0,1,7.4,4.2ZM336,480H48a16,16,0,0,1-16-16V48A16,16,0,0,1,48,32H224V136a23.94,23.94,0,0,0,24,24H352V464A16,16,0,0,1,336,480ZM288,300v8a12,12,0,0,1-12,12H208v68a12,12,0,0,1-12,12h-8a12,12,0,0,1-12-12V320H108a12,12,0,0,1-12-12v-8a12,12,0,0,1,12-12h68V220a12,12,0,0,1,12-12h8a12,12,0,0,1,12,12v68h68A12,12,0,0,1,288,300Z\"]\n};\nvar faFilePowerpoint = {\n prefix: 'fal',\n iconName: 'file-powerpoint',\n icon: [384, 512, [], \"f1c4\", \"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-34zm-22.6 22.7c2.1 2.1 3.5 4.6 4.2 7.4H256V32.5c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9zM336 480H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h176v104c0 13.3 10.7 24 24 24h104v304c0 8.8-7.2 16-16 16zM204.3 208H140c-6.6 0-12 5.4-12 12v184c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-60.4h44.3c38.7 0 67.7-27.3 67.7-69 0-38.6-23.8-66.6-67.7-66.6zm26 97.7c-7.5 7.6-17.8 11.4-31 11.4H160V233h39.7c12.9 0 23.1 3.7 30.6 11.1 15.3 15.1 15 46.5 0 61.6z\"]\n};\nvar faFilePrescription = {\n prefix: 'fal',\n iconName: 'file-prescription',\n icon: [384, 512, [], \"f572\", \"M369.9 98L286 14.1C277 5.1 264.8 0 252.1 0H48C21.5.1 0 21.6 0 48.1V464c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V132c0-12.7-5.1-25-14.1-34zM256 32.6c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9c2.1 2.1 3.5 4.6 4.2 7.4H256zM352 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V48.1C32 39.3 39.2 32 48 32h176v104.1c0 13.3 10.7 23.9 24 23.9h104zM192.7 298c18.5-9.1 31.3-28 31.3-50 0-30.9-25.1-56-56-56h-64c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-40h25.4l48 48-39 39c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l39-39 39 39c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-39-39 39-39c3.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-39 39zM168 272h-40v-48h40c13.2 0 24 10.8 24 24s-10.8 24-24 24z\"]\n};\nvar faFileSearch = {\n prefix: 'fal',\n iconName: 'file-search',\n icon: [640, 512, [], \"f865\", \"M605.65 487.05l-88.89-88.88c16.86-21.68 27.31-48.58 27.31-78.17a128 128 0 1 0-128 128c29.55 0 56.43-10.42 78.1-27.24l88.9 88.89a8 8 0 0 0 11.32 0l11.31-11.31a8 8 0 0 0-.05-11.29zM416.05 416a96 96 0 1 1 96-96 96.12 96.12 0 0 1-96 96zM368 480H80a16 16 0 0 1-16-16V48.09a16 16 0 0 1 16-16h176v104a23.93 23.93 0 0 0 24 24l136-.09v-28a48.23 48.23 0 0 0-14.1-34L318 14.1A48 48 0 0 0 284.08 0H80a48.16 48.16 0 0 0-48 48.09V464a48 48 0 0 0 48 48h288a47.87 47.87 0 0 0 45.15-32.29 159.9 159.9 0 0 1-33.92-4.36A15.91 15.91 0 0 1 368 480zM288 32.59a15.73 15.73 0 0 1 7.4 4.2l83.9 83.89a15.75 15.75 0 0 1 4.2 7.39H288z\"]\n};\nvar faFileSignature = {\n prefix: 'fal',\n iconName: 'file-signature',\n icon: [576, 512, [], \"f573\", \"M560.83 135.96l-24.79-24.79c-20.23-20.24-53-20.26-73.26 0L384 189.72v-57.75c0-12.7-5.1-25-14.1-33.99L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99v-80.54c6.29-4.68 12.62-9.35 18.18-14.95l158.64-159.3c9.79-9.78 15.17-22.79 15.17-36.63s-5.38-26.84-15.16-36.63zM256.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zm95.98 431.42c0 8.8-7.2 16-16 16H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v61.53l-48.51 48.24c-30.14 29.96-47.42 71.51-47.47 114-3.93-.29-7.47-2.42-9.36-6.27-11.97-23.86-46.25-30.34-66-14.17l-13.88-41.62c-3.28-9.81-12.44-16.41-22.78-16.41s-19.5 6.59-22.78 16.41L103 376.36c-1.5 4.58-5.78 7.64-10.59 7.64H80c-8.84 0-16 7.16-16 16s7.16 16 16 16h12.41c18.62 0 35.09-11.88 40.97-29.53L144 354.58l16.81 50.48c4.54 13.51 23.14 14.83 29.5 2.08l7.66-15.33c4.01-8.07 15.8-8.59 20.22.34C225.44 406.61 239.9 415.7 256 416h32c22.05-.01 43.95-4.9 64.01-13.6v61.61zm27.48-118.05A129.012 129.012 0 0 1 288 384v-.03c0-34.35 13.7-67.29 38.06-91.51l120.55-119.87 52.8 52.8-119.92 120.57zM538.2 186.6l-21.19 21.19-52.8-52.8 21.2-21.19c7.73-7.73 20.27-7.74 28.01 0l24.79 24.79c7.72 7.73 7.72 20.27-.01 28.01z\"]\n};\nvar faFileSpreadsheet = {\n prefix: 'fal',\n iconName: 'file-spreadsheet',\n icon: [384, 512, [], \"f65b\", \"M369.9 97.98L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM256.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zm95.98 431.42c0 8.8-7.2 16-16 16H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01zM64 208v224c0 8.84 7.16 16 16 16h224c8.84 0 16-7.16 16-16V208c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.16-16 16zm224 208h-80v-48h80v48zm0-80h-80v-48h80v48zM96 224h192v32H96v-32zm0 64h80v48H96v-48zm0 80h80v48H96v-48z\"]\n};\nvar faFileTimes = {\n prefix: 'fal',\n iconName: 'file-times',\n icon: [384, 512, [], \"f317\", \"M369.9,97.9,286,14A48,48,0,0,0,252.1-.1H48A48.16,48.16,0,0,0,0,48V464a48,48,0,0,0,48,48H336a48,48,0,0,0,48-48V131.9A48.23,48.23,0,0,0,369.9,97.9Zm-22.6,22.7a15.73,15.73,0,0,1,4.2,7.4H256V32.5a15.73,15.73,0,0,1,7.4,4.2ZM336,480H48a16,16,0,0,1-16-16V48A16,16,0,0,1,48,32H224V136a23.94,23.94,0,0,0,24,24H352V464A16,16,0,0,1,336,480ZM262.71,369.05l-5.66,5.66a12,12,0,0,1-17,0L192,326.63l-48.08,48.08a12,12,0,0,1-17,0l-5.66-5.66a12,12,0,0,1,0-17L169.37,304l-48.08-48.08a12,12,0,0,1,0-17l5.66-5.66a12,12,0,0,1,17,0L192,281.37l48.08-48.08a12,12,0,0,1,17,0l5.66,5.66a12,12,0,0,1,0,17L214.63,304l48.08,48.08A12,12,0,0,1,262.71,369.05Z\"]\n};\nvar faFileUpload = {\n prefix: 'fal',\n iconName: 'file-upload',\n icon: [384, 512, [], \"f574\", \"M369.9 97.98L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM256.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zm95.98 431.42c0 8.8-7.2 16-16 16H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01zm-180.1-247.32l-68.12 71.75c-7.81 8.2-9.94 20.31-5.44 30.83 4.41 10.31 14 16.72 25 16.72H176V424c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-88.02h52.66c11 0 20.59-6.41 25-16.72 4.5-10.52 2.38-22.62-5.44-30.81l-68.12-71.78c-10.69-11.19-29.51-11.2-40.19.02zm-38.75 87.29l58.84-62 58.84 62H133.16z\"]\n};\nvar faFileUser = {\n prefix: 'fal',\n iconName: 'file-user',\n icon: [384, 512, [], \"f65c\", \"M369.9 97.98L286.02 14.1c-9-9-21.2-14.1-33.89-14.1H47.99C21.5.1 0 21.6 0 48.09v415.92C0 490.5 21.5 512 47.99 512h288.02c26.49 0 47.99-21.5 47.99-47.99V131.97c0-12.69-5.1-24.99-14.1-33.99zM256.03 32.59c2.8.7 5.3 2.1 7.4 4.2l83.88 83.88c2.1 2.1 3.5 4.6 4.2 7.4h-95.48V32.59zM272 480.01H112v-31.15c0-18.38 13.05-32.86 33.25-32.86 12.45 0 20.8 6.99 46.75 6.99 25.5 0 34.56-6.99 46.75-6.99 20.16 0 33.25 14.43 33.25 32.86v31.15zm80.01-16c0 8.8-7.2 16-16 16H304v-31.15c0-13.88-4.21-26.77-11.41-37.48-12.08-17.94-32.67-27.38-53.84-27.38-19.46 0-24.36 6.99-46.75 6.99-22.41 0-27.26-6.99-46.75-6.99-21.17 0-41.76 9.44-53.83 27.38-7.21 10.7-11.42 23.6-11.42 37.48v31.15H47.99c-8.8 0-16-7.2-16-16V48.09c0-8.8 7.2-16.09 16-16.09h176.04v104.07c0 13.3 10.7 23.93 24 23.93h103.98v304.01zM112 288c0 44.18 35.82 80 80 80s80-35.82 80-80c0-44.19-35.82-80-80-80s-80 35.81-80 80zm128 0c0 26.47-21.53 48-48 48s-48-21.53-48-48 21.53-48 48-48 48 21.53 48 48z\"]\n};\nvar faFileVideo = {\n prefix: 'fal',\n iconName: 'file-video',\n icon: [384, 512, [], \"f1c8\", \"M224 280.593C224 267.01 212.989 256 199.407 256H88.593C75.011 256 64 267.01 64 280.593v110.815C64 404.99 75.011 416 88.593 416h110.814C212.989 416 224 404.99 224 391.407V381l27.971 27.971a23.998 23.998 0 0 0 16.97 7.029H296c13.255 0 24-10.745 24-24V280c0-13.255-10.745-24-24-24h-27.059a24.003 24.003 0 0 0-16.97 7.029L224 291v-10.407zM192 384H96v-96h96v96zm80.255-96H288v96h-15.745L224 342.826v-13.652L272.255 288zm97.686-190.059l-83.883-83.882A47.996 47.996 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.941zM256 32.491a15.888 15.888 0 0 1 7.432 4.195l83.882 83.882a15.882 15.882 0 0 1 4.195 7.431H256V32.491zM352 464c0 8.837-7.164 16-16 16H48c-8.836 0-16-7.163-16-16V48c0-8.837 7.164-16 16-16h176v104c0 13.255 10.745 24 24 24h104v304z\"]\n};\nvar faFileWord = {\n prefix: 'fal',\n iconName: 'file-word',\n icon: [384, 512, [], \"f1c2\", \"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-34zm-22.6 22.7c2.1 2.1 3.5 4.6 4.2 7.4H256V32.5c2.8.7 5.3 2.1 7.4 4.2l83.9 83.9zM336 480H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h176v104c0 13.3 10.7 24 24 24h104v304c0 8.8-7.2 16-16 16zm-53.6-246.5c-6.8 32.8-32.5 139.7-33.4 150.3-5.8-29.1-.7 1.6-41.8-150.9-1.4-5.2-6.2-8.9-11.6-8.9h-6.4c-5.4 0-10.2 3.6-11.6 8.9-38.3 142.3-37.4 140.6-39.4 154.7-4.1-23.9 2.1-2.9-34.4-154.4-1.3-5.4-6.1-9.2-11.7-9.2h-7.2c-7.8 0-13.5 7.3-11.6 14.9 9.5 38 34.5 137.4 42.2 168 1.3 5.3 6.1 9.1 11.6 9.1h17c5.4 0 10.2-3.7 11.6-8.9 34.2-127.7 33.5-123.4 36.7-142.9 6.5 31.1.2 7 36.7 142.9 1.4 5.2 6.2 8.9 11.6 8.9h14c5.5 0 13.7-3.7 15.1-9l42.8-168c1.9-7.6-3.8-15-11.6-15h-6.8c-5.7 0-10.6 4-11.8 9.5z\"]\n};\nvar faFilesMedical = {\n prefix: 'fal',\n iconName: 'files-medical',\n icon: [448, 512, [], \"f7fd\", \"M433.94 65.94l-51.88-51.88A48 48 0 0 0 348.12 0H176a48 48 0 0 0-48 48v48H48a48 48 0 0 0-48 48v320a48 48 0 0 0 48 48h224a48 48 0 0 0 48-48v-48h80a48 48 0 0 0 48-48V99.88a48 48 0 0 0-14.06-33.94zM352 32.49a15.88 15.88 0 0 1 7.43 4.2l51.88 51.88a16 16 0 0 1 4.2 7.43H352zM288 464a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V144a16 16 0 0 1 16-16h80v240a48 48 0 0 0 48 48h112zm128-96a16 16 0 0 1-16 16H176a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h144v72a24.07 24.07 0 0 0 24 24h72zM314.67 182.67A6.67 6.67 0 0 0 308 176h-40a6.67 6.67 0 0 0-6.67 6.67v46.66h-46.66A6.67 6.67 0 0 0 208 236v40a6.67 6.67 0 0 0 6.67 6.67h46.66v46.66A6.67 6.67 0 0 0 268 336h40a6.67 6.67 0 0 0 6.67-6.67v-46.66h46.66A6.67 6.67 0 0 0 368 276v-40a6.67 6.67 0 0 0-6.67-6.67h-46.66z\"]\n};\nvar faFill = {\n prefix: 'fal',\n iconName: 'fill',\n icon: [512, 512, [], \"f575\", \"M502.63 217.06L294.94 9.37C288.69 3.12 280.5 0 272.31 0s-16.38 3.12-22.62 9.37l-92.85 92.85L56.97 2.35c-3.12-3.12-8.19-3.12-11.31 0L34.34 13.66c-3.12 3.12-3.12 8.19 0 11.31l99.88 99.87-106.1 106.1c-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.49 12.49-32.75 0-45.25zm-244.2 244.2C246.34 473.34 230.27 480 213.18 480s-33.16-6.66-45.24-18.74l-117.2-117.2c-6.88-6.88-11.77-15.14-14.91-24.06h363.85L258.43 461.26zM431.68 288H33.06c2.2-12.96 8.2-24.94 17.69-34.43l106.09-106.11 87.85 87.85c6.25 6.25 16.38 6.25 22.62 0 6.25-6.25 6.25-16.38 0-22.62l-87.85-87.85L272.29 32h.02L480 239.68 431.68 288z\"]\n};\nvar faFillDrip = {\n prefix: 'fal',\n iconName: 'fill-drip',\n icon: [576, 512, [], \"f576\", \"M512 320s-64 92.65-64 128c0 35.35 28.66 64 64 64s64-28.65 64-64-64-128-64-128zm0 160c-17.64 0-32-14.36-32-31.96.26-9.78 13.57-37.67 32.01-68.73 18.43 31.04 31.73 58.91 31.99 68.69 0 17.64-14.36 32-32 32zm-9.37-262.94L294.94 9.37C288.69 3.12 280.5 0 272.31 0s-16.38 3.12-22.62 9.37l-92.85 92.85L56.97 2.35c-3.12-3.12-8.19-3.12-11.31 0L34.34 13.66c-3.12 3.12-3.12 8.19 0 11.31l99.88 99.88-106.1 106.1c-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.87-28.12l221.57-221.57c12.5-12.5 12.5-32.76.01-45.26zm-244.2 244.2C246.34 473.34 230.27 480 213.18 480s-33.16-6.66-45.24-18.74l-117.2-117.2c-6.88-6.88-11.77-15.14-14.91-24.06h363.85L258.43 461.26zM431.68 288H33.06c2.2-12.96 8.2-24.94 17.69-34.43l106.09-106.11 87.85 87.85c6.25 6.25 16.38 6.25 22.62 0 6.25-6.25 6.25-16.38 0-22.62l-87.85-87.85L272.29 32h.02L480 239.68 431.68 288z\"]\n};\nvar faFilm = {\n prefix: 'fal',\n iconName: 'film',\n icon: [512, 512, [], \"f008\", \"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 12v40zm288 224c0 6.6-5.4 12-12 12H140c-6.6 0-12-5.4-12-12V284c0-6.6 5.4-12 12-12h232c6.6 0 12 5.4 12 12v120zm0-176c0 6.6-5.4 12-12 12H140c-6.6 0-12-5.4-12-12V108c0-6.6 5.4-12 12-12h232c6.6 0 12 5.4 12 12v120zm96 144c0 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\"]\n};\nvar faFilmAlt = {\n prefix: 'fal',\n iconName: 'film-alt',\n icon: [512, 512, [], \"f3a0\", \"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 12v40zm288 224c0 6.6-5.4 12-12 12H140c-6.6 0-12-5.4-12-12V108c0-6.6 5.4-12 12-12h232c6.6 0 12 5.4 12 12v296zm96-32c0 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\"]\n};\nvar faFilmCanister = {\n prefix: 'fal',\n iconName: 'film-canister',\n icon: [576, 512, [], \"f8b7\", \"M544 96H320V64h24a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8h-88V16a16 16 0 0 0-16-16H112a16 16 0 0 0-16 16v16H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v416H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h336a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-24v-32h160a32 32 0 0 0 32-32v-64a32 32 0 0 1 32-32 32 32 0 0 0 32-32V128a32 32 0 0 0-32-32zM288 480H64V64h224zm256-192a64.07 64.07 0 0 0-64 64v64H320V128h224zm-64-80h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zM368 384h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0-176h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16z\"]\n};\nvar faFilter = {\n prefix: 'fal',\n iconName: 'filter',\n icon: [512, 512, [], \"f0b0\", \"M479.968 0H32.038C3.613 0-10.729 34.487 9.41 54.627L192 237.255V424a31.996 31.996 0 0 0 10.928 24.082l64 55.983c20.438 17.883 53.072 3.68 53.072-24.082V237.255L502.595 54.627C522.695 34.528 508.45 0 479.968 0zM288 224v256l-64-56V224L32 32h448L288 224z\"]\n};\nvar faFingerprint = {\n prefix: 'fal',\n iconName: 'fingerprint',\n icon: [512, 512, [], \"f577\", \"M256 169.92c-28.28.41-52.84 9.62-71.37 28.17-18 18-27.69 41.94-27.28 67.44.78 50.23-3.91 100.5-14 149.39-1.81 8.66 3.78 17.12 12.41 18.91 8.5 1.66 17.09-3.77 18.91-12.44 10.56-51.17 15.5-103.78 14.69-156.35-.25-16.77 6.09-32.5 17.91-44.31 18.66-18.66 42.27-18.8 48.75-18.8 37.12.55 66.41 30.19 66.97 66.06.78 50.37-2.97 100.86-11.12 150.06-1.44 8.72 4.44 16.95 13.16 18.39.91.16 1.78.22 2.66.22 7.69 0 14.47-5.55 15.75-13.39 8.47-51.08 12.34-103.48 11.56-155.79-.87-53-44.81-96.76-99-97.56zm-.09 86.09c-8.84.14-15.87 7.41-15.75 16.25 1.12 73.39-8.22 144.99-27.78 215.07l-1.22 4.33c-1.85 6.63 1.74 20.34 15.41 20.34 7 0 13.41-4.61 15.41-11.66l1.22-4.37c20.41-73.08 30.16-147.74 28.97-224.21-.14-8.84-8.23-15.9-16.26-15.75zM112.66 149.79c-25.19 30.98-38.72 70.11-38.09 110.15.62 39.56-2.62 79.14-9.59 117.61-1.56 8.7 4.19 17.03 12.91 18.61.97.17 1.91.25 2.87.25 7.56 0 14.31-5.42 15.72-13.14 7.34-40.53 10.72-82.18 10.09-123.82-.53-33.01 10.19-63.95 30.91-89.47 5.59-6.86 4.53-16.94-2.31-22.51-6.85-5.55-16.91-4.57-22.51 2.32zm399.22 103.03c-.25-16.5-2.19-33.03-5.75-49.14-1.91-8.61-10.34-14-19.06-12.17-8.62 1.91-14.09 10.44-12.19 19.08 3.09 14 4.78 28.39 5 42.73.12 7.66.16 15.31.09 22.97-.06 8.83 7.03 16.05 15.87 16.12h.12c8.78 0 15.94-7.08 16-15.87.07-7.91.04-15.81-.08-23.72zM252.6.05C182.63-1.29 118.32 24.88 70.32 72.91 24.04 119.22-.87 180.76.16 246.2c.12 7.55.06 15.09-.16 22.62-.25 8.83 6.72 16.2 15.56 16.45H16c8.62 0 15.75-6.87 16-15.55.22-8 .28-16.02.16-24.03-.9-56.69 20.69-110.04 60.78-150.16 41.78-41.84 98.9-64.37 159.15-63.48 74.69 1.09 144.87 38.23 187.75 99.32 5.12 7.23 15.12 8.97 22.28 3.91 7.25-5.08 9-15.05 3.91-22.28C417.28 43.52 337.5 1.3 252.6.05zm1.28 84.93a182.36 182.36 0 0 0-45.19 4.91c-8.59 2.03-13.91 10.66-11.87 19.26 2.03 8.58 10.75 13.87 19.25 11.86 12.12-2.86 25.09-4.25 37.31-4.03 82.78 1.22 151.12 67.56 152.37 147.89.62 39.65-1.34 79.59-5.81 118.7-1 8.78 5.31 16.7 14.09 17.7.62.08 1.22.11 1.84.11 8 0 14.94-6.02 15.87-14.19 4.62-40.47 6.62-81.79 6-122.82-1.49-97.44-83.99-177.92-183.86-179.39z\"]\n};\nvar faFire = {\n prefix: 'fal',\n iconName: 'fire',\n icon: [384, 512, [], \"f06d\", \"M216 24.01c0-23.8-31.16-33.11-44.15-13.04C76.55 158.25 200 238.73 200 288c0 22.06-17.94 40-40 40s-40-17.94-40-40V182.13c0-19.39-21.85-30.76-37.73-19.68C30.75 198.38 0 257.28 0 320c0 105.87 86.13 192 192 192s192-86.13 192-192c0-170.29-168-192.85-168-295.99zM192 480c-88.22 0-160-71.78-160-160 0-46.94 20.68-97.75 56-128v96c0 39.7 32.3 72 72 72s72-32.3 72-72c0-65.11-112-128-45.41-248C208 160 352 175.3 352 320c0 88.22-71.78 160-160 160z\"]\n};\nvar faFireAlt = {\n prefix: 'fal',\n iconName: 'fire-alt',\n icon: [448, 512, [], \"f7e4\", \"M448 281.6c0-53.27-51.98-163.13-124.44-230.4-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 512c.53 0 1.04-.08 1.58-.08.32 0 .6.08.92.08 1.88 0 3.71-.35 5.58-.42C352.02 507.17 448 406.04 448 281.6zm-416 0c0-50.22 47.51-147.44 136.05-237.09 27.38 27.45 52.44 56.6 73.39 85.47l24.41 33.62 26.27-32.19a573.83 573.83 0 0 1 30.99-34.95C379.72 159.83 416 245.74 416 281.6c0 54.69-21.53 104.28-56.28 140.21 12.51-35.29 10.88-75.92-8.03-112.02a357.34 357.34 0 0 0-10.83-19.19l-22.63-37.4-28.82 32.87-25.86 29.5c-24.93-31.78-59.31-75.5-63.7-80.54l-24.65-28.39-24.08 28.87C108.16 287 80 324.21 80 370.41c0 19.02 3.62 36.66 9.77 52.79C54.17 387.17 32 337.03 32 281.6zm193.54 198.32C162.86 479.49 112 437.87 112 370.41c0-33.78 21.27-63.55 63.69-114.41 6.06 6.98 86.48 109.68 86.48 109.68l51.3-58.52a334.43 334.43 0 0 1 9.87 17.48c23.92 45.66 13.83 104.1-29.26 134.24-17.62 12.33-39.14 19.71-62.37 20.73-2.06.07-4.09.29-6.17.31z\"]\n};\nvar faFireExtinguisher = {\n prefix: 'fal',\n iconName: 'fire-extinguisher',\n icon: [448, 512, [], \"f134\", \"M429.627 32.177l-160 24C254.178 58.494 256 74.414 256 80h-61.396C212.106 43.162 185.315 0 144 0c-43.131 0-69.629 46.603-48.775 83.504-42.891 9.634-75.08 39.064-94.077 86.554-3.282 8.205.708 17.517 8.913 20.798 8.21 3.282 17.518-.713 20.798-8.913C62.582 102.637 120.434 112 176 112v33.353c-45.574 7.763-80 48.123-80 95.853V488c0 13.255 10.745 24 24 24h144c13.255 0 24-10.745 24-24V240c0-47.566-34.599-87.046-80-94.665V112h48c0 4.893-2.181 21.452 13.627 23.823l160 24C439.275 161.264 448 153.803 448 144V48c0-9.775-8.695-17.269-18.373-15.823zM256 240v240H128V241.205c0-35.694 28.49-64.944 63.501-65.203L192 176c35.29 0 64 28.71 64 64zM144 32c13.234 0 24 10.766 24 24s-10.766 24-24 24-24-10.766-24-24 10.766-24 24-24zm272 93.421l-128-19.2V85.779l128-19.2v58.842z\"]\n};\nvar faFireSmoke = {\n prefix: 'fal',\n iconName: 'fire-smoke',\n icon: [576, 512, [], \"f74b\", \"M464 288c-25.5 0-50 8.9-69.8 24.8C370.8 277.7 331.1 256 288 256s-82.8 21.7-106.2 56.8C162 296.9 137.5 288 112 288 50.2 288 0 338.2 0 400s50.2 112 112 112h352c61.8 0 112-50.2 112-112s-50.2-112-112-112zm0 192H112c-44.1 0-80-35.9-80-80s35.9-80 80-80c23.5 0 45.8 10.7 61.2 29.2l16.5 19.9 10.4-23.7C215.6 310.6 250 288 288 288s72.4 22.6 87.8 57.4l10.4 23.7 16.5-19.9c15.4-18.6 37.8-29.2 61.2-29.2 44.1 0 80 35.9 80 80s-35.8 80-79.9 80zm-63.1-209.2c1.7-.8 3.4-1.4 5.1-2.2 7.3-28.9 4.4-60.7-9.7-88.4-3.2-6.3-6.8-13-10.8-19.7L320 192s-78.1-81.4-84.7-89.3c-46.3 57.4-69.5 91-69.5 129.1 0 13.5 2.3 25.8 5.6 37.4 1.2.6 2.5 1 3.7 1.6 7.5-7.4 15.8-13.8 24.6-19.6-1.1-6.1-1.8-12.4-1.8-19.4 0-21.7 12.4-44.3 39.6-80 21 22.1 48.2 50.5 59.5 62.3l16.1 16.7 20.9-10.1 37.6-18.1c6.4 16 7.9 32.8 5.6 48.7 8.4 5.8 16.4 12.2 23.7 19.5zM112 256c6.3 0 12.4.5 18.6 1.3-1.3-8.2-2.6-16.4-2.6-25 0-39.9 41.2-117.9 111.4-187.8 15.3 16.9 28.8 35.2 42 53.1 4.4 6 8.7 11.9 13.1 17.6l24.1 31.9 25.9-30.5c7.3-8.6 17.4-19.3 28.3-30 46 50.8 75.3 117.6 75.3 145.6 0 8.6-1.2 16.8-2.6 25 6.1-.8 12.3-1.3 18.6-1.3 4.8 0 9.4 1 14.1 1.4 1.1-8.2 1.9-16.6 1.9-25.1 0-43.9-44.6-134.6-106.7-190.1C355.5 58.2 334.2 79.2 320 96c-23.4-31-47.2-66.7-80-96C155.8 75.2 96 173.2 96 232.3c0 8.5.8 16.9 1.9 25.1 4.7-.4 9.3-1.4 14.1-1.4z\"]\n};\nvar faFireplace = {\n prefix: 'fal',\n iconName: 'fireplace',\n icon: [640, 512, [], \"f79a\", \"M624 0H16C7.2 0 0 7.2 0 16v96c0 8.8 7.2 16 16 16h16v352c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V358.9c0-83.6 61.1-158.2 144.3-166.1 5.3-.5 10.5-.8 15.7-.8 88.4 0 160 71.6 160 160v128c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V128h16c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16zm-48 480h-64V352c0-105.9-86.1-192-192-192-6.2 0-12.4.3-18.8.9-97.1 9.3-173.2 96.2-173.2 198V480H64V128h512v352zm32-384H32V32h576v64zM342.3 311.6c-14-18.8-31.4-37.8-51.1-55.6-50.5 45.6-86.4 105-86.4 140.8 0 63.6 51.6 115.2 115.2 115.2s115.2-51.6 115.2-115.2c0-26.6-26.7-81.6-64-115.2-10.7 9.6-20.4 19.8-28.9 30zM320 480c-45.9 0-83.2-37.3-83.2-83.2 0-19.6 20.4-58.9 54.5-96 9.3 9.8 17.8 19.9 25.3 29.9l24.2 32.4 26-30.9 3.6-4.2c20.5 26.9 32.8 57.4 32.8 68.8 0 45.9-37.3 83.2-83.2 83.2z\"]\n};\nvar faFirstAid = {\n prefix: 'fal',\n iconName: 'first-aid',\n icon: [576, 512, [], \"f479\", \"M200 288h56v56c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-56h56c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8h-56v-56c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v56h-56c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 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-48zM96 448H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h48v384zm352 0H128V64h320v384zm96-16c0 8.8-7.2 16-16 16h-48V64h48c8.8 0 16 7.2 16 16v352z\"]\n};\nvar faFish = {\n prefix: 'fal',\n iconName: 'fish',\n icon: [640, 512, [], \"f578\", \"M363.44 80c-99.96 0-187.27 60.25-235.86 111.79l-97.04-72.66c-3.65-2.73-7.78-3.94-11.8-3.94-10.85 0-20.87 8.78-18.36 20.06L27.27 256 .39 376.74c-2.51 11.28 7.52 20.06 18.36 20.06 4.02 0 8.15-1.21 11.8-3.94l97.04-72.66C176.17 371.75 263.48 432 363.44 432 516.18 432 640 291.2 640 256c0-35.2-123.82-176-276.56-176zm0 320c-86.02 0-166.21-52.56-212.57-101.74l-19.6-20.79-22.87 17.12-68.33 51.17 18.43-82.8 1.55-6.95-1.55-6.95-18.43-82.8 68.33 51.17 22.87 17.12 19.6-20.79C197.23 164.56 277.42 112 363.44 112 489 112 595.86 223.33 607.5 256 595.86 288.67 489 400 363.44 400zM448 232c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faFishCooked = {\n prefix: 'fal',\n iconName: 'fish-cooked',\n icon: [640, 512, [], \"f7fe\", \"M363.44 64c-100 0-187.26 65.72-235.85 122l-97-85.67C17.08 89.28-3 101 .4 117.89L27.27 256 .39 394.12C-3 411 17.06 422.72 30.54 411.71l97-85.65C176.17 382.28 263.48 448 363.44 448 516.18 448 640 294.4 640 256S516.18 64 363.44 64zm0 352c-85.4 0-165.33-57.27-211.65-110.87l-20.35-23.55c-31.19 25.48-12.24 8.88-92.08 81.61C61.12 249.3 58.13 264.82 59.93 256c-1.8-8.81 1.2 6.73-20.56-107.19 80 72.85 61 56.21 92.08 81.62l20.35-23.55C198.12 153.28 278 96 363.44 96c128.19 0 236.08 126.49 244.35 160-8.27 33.51-116.16 160-244.35 160zm-21.78-250.35l-11.31-11.31a8 8 0 0 0-11.32 0L234.35 239a8 8 0 0 0 0 11.31l11.31 11.31a8 8 0 0 0 11.31 0L341.66 177a8 8 0 0 0 0-11.35zm112 16l-11.31-11.31a8 8 0 0 0-11.32 0L282.35 319a8 8 0 0 0 0 11.31l11.31 11.31a8 8 0 0 0 11.31 0L453.66 193a8 8 0 0 0 0-11.35zm36.69 68.69a8 8 0 0 0-11.32 0L394.35 335a8 8 0 0 0 0 11.31l11.31 11.31a8 8 0 0 0 11.31 0L501.66 273a8 8 0 0 0 0-11.32z\"]\n};\nvar faFistRaised = {\n prefix: 'fal',\n iconName: 'fist-raised',\n icon: [384, 512, [], \"f6de\", \"M350.82 167.94c.46-2.63 1.18-5.18 1.18-7.94V80c0-26.51-21.49-48-48-48h-16c-6.32 0-12.32 1.29-17.85 3.52C264.62 15.12 246.12 0 224 0h-16c-22.12 0-40.62 15.12-46.15 35.52C156.32 33.29 150.32 32 144 32h-16c-22.12 0-40.62 15.12-46.15 35.52C76.32 65.29 70.32 64 64 64H48C21.49 64 0 85.49 0 112v186.98c0 38.17 15.16 74.78 42.15 101.77L64 422.62V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-94.63l-31.22-31.23A111.97 111.97 0 0 1 32 298.98v-45.93c5.03 1.79 10.36 2.95 16 2.95h16c12.34 0 23.49-4.81 32-12.48 8.51 7.68 19.66 12.48 32 12.48h16c13.16 0 25.09-5.34 33.77-13.95.24.3 9.34 14.63 30.62 23.65-19.67 15.79-33.92 35.74-57.27 70.77a7.992 7.992 0 0 0 2.22 11.09l13.31 8.88a7.992 7.992 0 0 0 11.09-2.22l6.31-9.47c31.91-47.87 51.56-70.29 96.12-72.56 4.25-.22 7.82-3.67 7.82-7.93V248c0-4.42-3.58-8-8-8h-40.67c-26.16 0-47.36-21.21-47.36-47.36v-.74c0-8.78 7.12-15.9 15.9-15.9H288c35.35 0 64 28.65 64 64v88.32c0 25.41-10.09 49.77-28.06 67.74L288 432v72c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-58.75l26.51-26.51c24-24 37.49-56.56 37.49-90.51V240c0-28.87-13.01-54.46-33.18-72.06zM80 208c0 8.84-7.16 16-16 16H48c-8.84 0-16-7.16-16-16v-96c0-8.84 7.16-16 16-16h16c8.84 0 16 7.16 16 16v96zm80 0c0 8.84-7.16 16-16 16h-16c-8.84 0-16-7.16-16-16V80c0-8.84 7.16-16 16-16h16c8.84 0 16 7.16 16 16v128zm80-64h-32.03c-5.58 0-10.92 1.1-15.97 2.85V48c0-8.84 7.16-16 16-16h16c8.84 0 16 7.16 16 16v96zm80 5.88c-10.05-3.57-20.72-5.88-32-5.88h-16V80c0-8.84 7.16-16 16-16h16c8.84 0 16 7.16 16 16v69.88z\"]\n};\nvar faFlag = {\n prefix: 'fal',\n iconName: 'flag',\n icon: [512, 512, [], \"f024\", \"M344.348 74.667C287.742 74.667 242.446 40 172.522 40c-28.487 0-53.675 5.322-76.965 14.449C99.553 24.713 75.808-1.127 46.071.038 21.532.999 1.433 20.75.076 45.271-1.146 67.34 12.553 86.382 32 93.258V500c0 6.627 5.373 12 12 12h8c6.627 0 12-5.373 12-12V378.398c31.423-14.539 72.066-29.064 135.652-29.064 56.606 0 101.902 34.667 171.826 34.667 51.31 0 91.933-17.238 130.008-42.953 6.589-4.45 10.514-11.909 10.514-19.86V59.521c0-17.549-18.206-29.152-34.122-21.76-36.78 17.084-86.263 36.906-133.53 36.906zM48 28c11.028 0 20 8.972 20 20s-8.972 20-20 20-20-8.972-20-20 8.972-20 20-20zm432 289.333C456.883 334.03 415.452 352 371.478 352c-63.615 0-108.247-34.667-171.826-34.667-46.016 0-102.279 10.186-135.652 26V106.667C87.117 89.971 128.548 72 172.522 72c63.615 0 108.247 34.667 171.826 34.667 45.92 0 102.217-18.813 135.652-34.667v245.333z\"]\n};\nvar faFlagAlt = {\n prefix: 'fal',\n iconName: 'flag-alt',\n icon: [512, 512, [], \"f74c\", \"M472.5 0c-7 0-14.3 1.5-21.2 4.6-50.5 22.7-87.8 30.3-119.1 30.3C266.1 34.9 227.7.4 151.4.4 119.8.4 81.2 6.9 32 23.6V16c0-8.8-7.2-16-16-16S0 7.2 0 16v488c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V403.6c44.2-15.8 81.6-22 114.5-22 81.2 0 137.8 34.4 219.1 34.4 35.3 0 75.1-6.5 123.7-25 14-5.4 22.8-17.9 22.8-31.2V33.4C512 13 493.4 0 472.5 0zm-107 384c-75.6 0-133-34.4-219.1-34.4-36.7 0-74.4 6.5-114.5 19.8V57.2c46-16.7 85.3-24.8 119.4-24.8 69.5 0 108.4 34.5 180.8 34.5 39.8 0 81.8-10.5 132.1-33.1 9.4-4.2 15.7-.5 15.7 5.6v320.1c-.8 2.5-58.8 24.5-114.4 24.5z\"]\n};\nvar faFlagCheckered = {\n prefix: 'fal',\n iconName: 'flag-checkered',\n icon: [512, 512, [], \"f11e\", \"M464 96.3c-22.5 8.9-49.7 17.4-76.8 22.2v72.6c26.8-4.4 51.7-13.8 76.8-23.7zm0 212.5v-71.1c-16.8 10.6-46.8 21.5-76.8 25.5v72c30.7-3.2 58.6-14.9 76.8-26.4zM80 186.3c16.2-10.2 46.9-20.7 76.8-25V88.8C126.1 92 98.2 103.7 80 115.2zm0 133.5c23.1-7.7 50.3-13.1 76.8-16v-71.7c-26 2.7-52 8.4-76.8 16.6zm230.4-63.1c-25.1-6.9-49.6-16.6-76.8-22.2v69.7c27.7 4.7 52 14 76.8 21.4v-68.9c27.5 7.6 49.7 10.1 76.8 6.5v-72.1c-24.4 4-48.6 3.6-76.8-2.5zM477.9 37.8c-36.8 17.1-86.3 36.9-133.5 36.9-56.7 0-102-34.7-171.9-34.7-28.5 0-53.7 5.3-77 14.4C99.6 24.7 75.8-1.1 46.1 0 21.5 1 1.4 20.8.1 45.3c-1.2 22.1 12.5 41.1 31.9 48V500c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V378.4c31.4-14.5 72.1-29.1 135.7-29.1 56.6 0 101.9 34.7 171.8 34.7 51.3 0 91.9-17.2 130-43 6.6-4.5 10.5-11.9 10.5-19.9V59.5c0-17.5-18.2-29.1-34.1-21.7zM48 68c-11 0-20-9-20-20s9-20 20-20 20 9 20 20-9 20-20 20zm432 249.3C456.9 334 415.5 352 371.5 352c-63.6 0-108.2-34.7-171.8-34.7-46 0-102.3 10.2-135.7 26V106.7C87.1 90 128.5 72 172.5 72c63.6 0 108.2 34.7 171.8 34.7 45.9 0 102.2-18.8 135.7-34.7zM310.4 119.7c-27.7-4.7-52.3-14.2-76.8-21.4v67.9c25.3 6.7 49.6 16.4 76.8 22.4zm-153.6 41.5v70.9c34.2-3.6 56.2-1.7 76.8 2.5v-68.4c-29.7-7.8-51.3-8.7-76.8-5z\"]\n};\nvar faFlagUsa = {\n prefix: 'fal',\n iconName: 'flag-usa',\n icon: [512, 512, [], \"f74d\", \"M472.5 0c-7 0-14.3 1.5-21.2 4.6-50.5 22.7-87.8 30.3-119.1 30.3C266.1 34.9 227.7.4 151.4.4 119.8.4 81.2 6.9 32 23.6V16c0-8.8-7.2-16-16-16S0 7.2 0 16v488c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V403.6c44.2-15.8 81.6-22 114.5-22 81.2 0 137.8 34.4 219.1 34.4 35.3 0 75.1-6.5 123.7-25 14-5.4 22.8-17.9 22.8-31.2V33.4C512 13 493.4 0 472.5 0zM256 54.3c58.3 17.5 113.9 21.8 208.3-20.5 9.4-4.2 15.7-.5 15.7 5.6v52.4c-98.8 41.7-153.2 28.3-224 16.1V54.3zm0 86c34.5 6.1 64.2 12 98.8 12 35.2 0 75.8-7 125.2-26.3v61.6c-103.5 33.4-162.8 18.4-224 4v-51.3zM32 57.2c46-16.7 85.3-24.8 119.4-24.8 27.7 0 50.5 5.5 72.6 12.1v140c-51.1-10.4-108.6-14.8-192 10.4V57.2zm0 171.1c100.6-32.4 159.1-19.2 220.4-4.7 57.5 13.6 120.2 30 227.7-2.4v54.5c-100.5 32.4-159 19.2-220.4 4.7-61-14.4-124.5-28.6-227.7 2.5v-54.6zM365.5 384c-75.6 0-133-34.4-219.1-34.4-36.7 0-74.4 6.5-114.5 19.8v-53.1c100.6-32.4 159-19.2 220.3-4.7 58.8 13.8 120.5 29.9 227.7-2.4v50.3c-.8 2.5-58.8 24.5-114.4 24.5zM96 64c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm72 32c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm-72 24c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm72 32c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16z\"]\n};\nvar faFlame = {\n prefix: 'fal',\n iconName: 'flame',\n icon: [384, 512, [], \"f6df\", \"M192 0C79.7 101.33 0 220.92 0 300.55 0 425.05 78.95 512 192 512s192-86.95 192-211.45C384 220.6 303.78 100.86 192 0zm0 480c-95.7 0-160-72.12-160-179.45 0-63.08 63.42-164.08 160-256.83 96.58 92.76 160 193.76 160 256.83C352 407.88 287.7 480 192 480zm60.1-267.1c-26.52-22.66-51.57-44.08-51.57-77.63 0-4.54-3.77-6.25-5.38-6.78-.96-.3-2.05-.49-3.2-.49-2.57 0-5.39.95-7.38 3.67C111.36 231.23 224 224 224 296c0 30.93-25.07 56-56 56s-56-25.07-56-56v-40c0-2.05-.78-4.1-2.34-5.66S106.05 248 104 248s-4.09.78-5.66 2.34C89.84 258.6 64 285.98 64 330.11c0 65 57.42 117.89 128 117.89s128-52.89 128-117.89c0-59.17-34.52-88.67-67.9-117.21zM192 416c-45.26 0-83.29-28.16-93.38-65.93C114.74 370.71 139.85 384 168 384c48.52 0 88-39.48 88-88 0-20.66-6.08-36.85-14.51-50.01 26.69 23.29 46.51 44.58 46.51 84.12 0 47.36-43.06 85.89-96 85.89z\"]\n};\nvar faFlashlight = {\n prefix: 'fal',\n iconName: 'flashlight',\n icon: [640, 512, [], \"f8b8\", \"M288 208h-32a48 48 0 0 0 0 96h32a48 48 0 0 0 0-96zm0 64h-32a16 16 0 0 1 0-32h32a16 16 0 0 1 0 32zM608 96h-32c-59 0-116.52 17-166.59 48H64a64 64 0 0 0-64 64v96a64 64 0 0 0 64 64h345.42C459.48 399 517 416 576 416h32a32 32 0 0 0 32-32V128a32 32 0 0 0-32-32zm-96 280.49a289.65 289.65 0 0 1-85.74-35.7l-7.74-4.79H64a32 32 0 0 1-32-32v-96a32 32 0 0 1 32-32h354.52l7.73-4.79a289.7 289.7 0 0 1 85.75-35.7zm96 7.51h-32a275.75 275.75 0 0 1-32-1.88V129.88a275.75 275.75 0 0 1 32-1.88h32z\"]\n};\nvar faFlask = {\n prefix: 'fal',\n iconName: 'flask',\n icon: [448, 512, [], \"f0c3\", \"M434.9 410.7L288 218.6V32h26c3.3 0 6-2.7 6-6V6c0-3.3-2.7-6-6-6H134c-3.3 0-6 2.7-6 6v20c0 3.3 2.7 6 6 6h26v186.6L13.1 410.7C-18.6 452.2 11 512 63.1 512h321.8c52.2 0 81.7-59.8 50-101.3zm-50 69.3H63.1c-25.7 0-40.3-29.4-24.6-49.8l150.2-196.5c2.1-2.8 3.3-6.2 3.3-9.7V32h64v192c0 3.5 1.2 6.9 3.3 9.7l150.2 196.5c15.6 20.4 1.2 49.8-24.6 49.8z\"]\n};\nvar faFlaskPoison = {\n prefix: 'fal',\n iconName: 'flask-poison',\n icon: [416, 512, [], \"f6e0\", \"M288 159.99V32h24c4.42 0 8-3.58 8-8V8c0-4.42-3.58-8-8-8H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h24v127.99C52.85 191.35 0 265.48 0 352c0 53.79 20.43 102.79 53.94 139.7 11.95 13.17 29.21 20.3 47 20.3h214.04c18.06 0 35.49-7.44 47.58-20.85 12.92-14.34 53.24-61.93 53.14-139.15h.3c0-86.52-52.85-160.65-128-192.01zm50.79 309.73c-5.89 6.53-14.56 10.28-23.81 10.28H100.94c-9.15 0-17.65-3.57-23.3-9.8C48.21 437.77 32 395.8 32 352c0-71.25 42.52-135.02 108.32-162.47l19.68-8.21V32h96v149.31l19.68 8.21c62.56 26.1 104.07 85.02 108.01 151.99l.01 10.53c.07 55.99-24.38 94.91-44.91 117.68zM176 304c-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-16zm-32-80c-70.69 0-128 42.98-128 96 0 30.19 18.89 56.78 48 74.3V432c0 8.84 7.16 16 16 16h128c8.84 0 16-7.16 16-16v-37.7c29.11-17.53 48-44.12 48-74.3 0-53.02-57.31-96-128-96zm63.49 142.89L256 376.22V416h-96v-39.78l-15.49-9.33C123.85 354.45 112 337.36 112 320c0-34.69 43.96-64 96-64s96 29.31 96 64c0 17.36-11.85 34.45-32.51 46.89z\"]\n};\nvar faFlaskPotion = {\n prefix: 'fal',\n iconName: 'flask-potion',\n icon: [416, 512, [], \"f6e1\", \"M416 352c0-86.52-52.85-160.65-128-192.01V32h24c4.42 0 8-3.58 8-8V8c0-4.42-3.58-8-8-8H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h24v127.99C52.85 191.35 0 265.48 0 352c0 53.79 20.43 102.79 53.94 139.7 11.95 13.17 29.21 20.3 47 20.3h214.04c18.06 0 35.49-7.44 47.58-20.85 12.92-14.34 53.24-61.93 53.14-139.15h.3zM140.32 189.53l19.68-8.21V32h96v149.32l19.68 8.21C336.49 214.9 377.11 271.36 382.97 336h-51.35c-28.66 0-57.41-7.59-83.09-21.97-61.81-34.56-135.62-34.56-197.44 0l-16.6 9.29c9.73-59.28 49.03-110.1 105.83-133.79zm198.47 280.19c-5.89 6.53-14.56 10.28-23.81 10.28H100.94c-9.15 0-17.65-3.57-23.3-9.8-27.4-30.19-42.74-68.76-44.81-109.27l33.89-18.96c52.09-29.11 114.22-29.08 166.19 0C263.38 359 297.5 368 331.62 368h50.99c-3.45 37.65-18.35 73.46-43.82 101.72z\"]\n};\nvar faFlower = {\n prefix: 'fal',\n iconName: 'flower',\n icon: [512, 512, [], \"f7ff\", \"M461.5 256c30.7-26.8 50.5-65.8 50.5-109.7C512 65.5 446.5 0 365.7 0 321.8 0 282.8 19.8 256 50.5 229.2 19.8 190.2 0 146.3 0 65.5 0 0 65.5 0 146.3c0 43.9 19.8 82.9 50.5 109.7C19.8 282.8 0 321.8 0 365.7 0 446.5 65.5 512 146.3 512c43.9 0 82.9-19.8 109.7-50.5 26.8 30.7 65.8 50.5 109.7 50.5 80.8 0 146.3-65.5 146.3-146.3 0-43.9-19.8-82.9-50.5-109.7zm-95.8 224c-32.9 0-63.3-14-85.6-39.5L256 412.9l-24.1 27.6C209.6 466 179.2 480 146.3 480 83.3 480 32 428.7 32 365.7c0-32.9 14-63.3 39.5-85.6L99.1 256l-27.6-24.1C46 209.6 32 179.2 32 146.3 32 83.3 83.3 32 146.3 32c32.9 0 63.3 14 85.6 39.5L256 99.1l24.1-27.6C302.4 46 332.8 32 365.7 32c63 0 114.3 51.3 114.3 114.3 0 32.9-14 63.3-39.5 85.6L412.9 256l27.6 24.1c25.5 22.3 39.5 52.7 39.5 85.6 0 63-51.3 114.3-114.3 114.3zM256 160c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm0 160c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64z\"]\n};\nvar faFlowerDaffodil = {\n prefix: 'fal',\n iconName: 'flower-daffodil',\n icon: [512, 512, [], \"f800\", \"M288 144a32 32 0 1 0-32 32 32 32 0 0 0 32-32zm207.87 144H448.6A224 224 0 0 0 272 374v-96.54A85.76 85.76 0 0 0 312.87 288 87.22 87.22 0 0 0 400 200.89 85.82 85.82 0 0 0 378.62 144 85.82 85.82 0 0 0 400 87.11 87.22 87.22 0 0 0 312.87 0 85.8 85.8 0 0 0 256 21.36 85.8 85.8 0 0 0 199.13 0 87.22 87.22 0 0 0 112 87.11 85.82 85.82 0 0 0 133.38 144 85.82 85.82 0 0 0 112 200.89 87.22 87.22 0 0 0 199.13 288 85.64 85.64 0 0 0 240 277.46V374a224 224 0 0 0-176.6-86H16.13c-9.19 0-17 9-16.06 19.65C10.06 422.15 106.43 512 223.83 512h64.34c117.4 0 213.77-89.85 223.76-204.35.92-10.65-6.87-19.65-16.06-19.65zM240 480h-16.17c-93.89 0-174.52-69.14-189.94-160H63.4a192.45 192.45 0 0 1 165 93.35C242 436.09 240 454.05 240 480zm16-263.61l-12.84 17.22a54.58 54.58 0 0 1-44 22.39A55.17 55.17 0 0 1 144 200.89a54.59 54.59 0 0 1 22.41-44.06L183.63 144l-17.22-12.83A54.59 54.59 0 0 1 144 87.11 55.17 55.17 0 0 1 199.13 32a54.58 54.58 0 0 1 44 22.39L256 71.61l12.84-17.22a54.58 54.58 0 0 1 44-22.39A55.17 55.17 0 0 1 368 87.11a54.59 54.59 0 0 1-22.41 44.06L328.37 144l17.22 12.83A54.59 54.59 0 0 1 368 200.89 55.17 55.17 0 0 1 312.87 256a54.58 54.58 0 0 1-44-22.39zM288 480h-16c0-26-2-43.9 11.63-66.65A192.45 192.45 0 0 1 448.6 320h29.51C462.69 410.86 382.05 480 288 480z\"]\n};\nvar faFlowerTulip = {\n prefix: 'fal',\n iconName: 'flower-tulip',\n icon: [512, 512, [], \"f801\", \"M495.87 288H448.6A224 224 0 0 0 272 374v-86a144 144 0 0 0 144-144V16a16 16 0 0 0-25.45-12.88l-73.91 53.64-48.35-51a16 16 0 0 0-24.58 0l-48.35 51-73.91-53.64A16 16 0 0 0 96 16v128a144 144 0 0 0 144 144v86a224 224 0 0 0-176.6-86H16.13c-9.19 0-17 9-16.06 19.65C10.06 422.15 106.43 512 223.83 512h64.34c117.4 0 213.77-89.85 223.76-204.35.92-10.65-6.87-19.65-16.06-19.65zM128 144V47.41l71.28 51.73L256 39.3l56.72 59.84L384 47.41V144a112 112 0 0 1-112 112h-32a112 112 0 0 1-112-112zm112 336h-16.17c-93.89 0-174.52-69.14-189.94-160H63.4a192.45 192.45 0 0 1 165 93.35C242 436.09 240 454.05 240 480zm48 0h-16c0-26-2-43.9 11.63-66.65A192.45 192.45 0 0 1 448.6 320h29.51C462.69 410.86 382.05 480 288 480z\"]\n};\nvar faFlushed = {\n prefix: 'fal',\n iconName: 'flushed',\n icon: [496, 512, [], \"f579\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm96-328c-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 168H184c-8.8 0-16 7.2-16 16s7.2 16 16 16h128c8.8 0 16-7.2 16-16s-7.2-16-16-16z\"]\n};\nvar faFlute = {\n prefix: 'fal',\n iconName: 'flute',\n icon: [640, 512, [], \"f8b9\", \"M512 280a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm-192 0a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm96 0a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm192-120H32a32 32 0 0 0-32 32v128a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V192a32 32 0 0 0-32-32zM112 320H32V192h80zm496 0H144V192h464z\"]\n};\nvar faFluxCapacitor = {\n prefix: 'fal',\n iconName: 'flux-capacitor',\n icon: [448, 512, [], \"f8ba\", \"M448,112V400a80.15451,80.15451,0,0,1-80,80H80A80.15451,80.15451,0,0,1,0,400V112A80.15451,80.15451,0,0,1,80,32H368A80.15451,80.15451,0,0,1,448,112Zm-32,0a48.0927,48.0927,0,0,0-48-48H80a48.0927,48.0927,0,0,0-48,48V400a48.0927,48.0927,0,0,0,48,48H368a48.0927,48.0927,0,0,0,48-48Zm-32,64a80.034,80.034,0,0,1-80,80,92.12951,92.12951,0,0,1-11.18751-1l45.125-45.0625c7.625-7.73438,13.78126-22.8125,13.78126-33.65625a48.01238,48.01238,0,0,0-48-48c-10.84375,0-25.90626,6.17187-33.65626,13.78125L224,188.125l-46.06251-46.10938c-7.75-7.60937-22.81249-13.78124-33.65624-13.78124a48.01238,48.01238,0,0,0-48,48c0,10.84374,6.15625,25.9375,13.78125,33.67187L155.1875,255A92.12916,92.12916,0,0,1,144,256a80,80,0,1,1,80-80,80,80,0,0,1,160,0ZM208,336V262.625l-75.3125-75.3125a18.38329,18.38329,0,0,1-4.375-11.01562,15.97086,15.97086,0,0,1,16-16,18.49292,18.49292,0,0,1,11,4.39062L224,233.375l68.68749-68.6875a18.49294,18.49294,0,0,1,11-4.39062,15.97086,15.97086,0,0,1,16,16,18.38323,18.38323,0,0,1-4.375,11.01562L240,262.625V336a16,16,0,0,1-32,0Zm96,0a80.00157,80.00157,0,1,1-129.93751-62L176,275.875V336a48,48,0,0,0,96,0V275.875L273.93749,274A79.34533,79.34533,0,0,1,304,336Z\"]\n};\nvar faFog = {\n prefix: 'fal',\n iconName: 'fog',\n icon: [640, 512, [], \"f74e\", \"M168 320h304c57.3 0 104-46.7 104-104 0-54.8-42.6-99.8-96.3-103.7C475.8 67.4 437.9 32 392 32c-17.8 0-34.8 5.3-49.2 15.2C320.3 17.7 285.5 0 248 0c-66.2 0-120 53.8-120 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104zm-18.7-173.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8L351 82.1C361.9 70.4 376.4 64 392 64c30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72s-32.3 72-72 72H168c-39.7 0-72-32.3-72-72 0-32.4 21.9-60.8 53.3-69.3zM216 480H72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h144c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm416 0H296c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h336c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-56-72v-16c0-4.4-3.6-8-8-8H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h560c4.4 0 8-3.6 8-8z\"]\n};\nvar faFolder = {\n prefix: 'fal',\n iconName: 'folder',\n icon: [512, 512, [], \"f07b\", \"M194.74 96l54.63 54.63c6 6 14.14 9.37 22.63 9.37h192c8.84 0 16 7.16 16 16v224c0 8.84-7.16 16-16 16H48c-8.84 0-16-7.16-16-16V112c0-8.84 7.16-16 16-16h146.74M48 64C21.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-48H272l-54.63-54.63c-6-6-14.14-9.37-22.63-9.37H48z\"]\n};\nvar faFolderDownload = {\n prefix: 'fal',\n iconName: 'folder-download',\n icon: [512, 512, [], \"e053\", \"M464,128H272L217.37,73.37A32,32,0,0,0,194.74,64H48A48,48,0,0,0,0,112V400a48,48,0,0,0,48,48H464a48,48,0,0,0,48-48V176A48,48,0,0,0,464,128ZM314.85,288,256,350l-58.84-62ZM480,400a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V112A16,16,0,0,1,48,96H194.74L240,141.27V256H187.35a26.94,26.94,0,0,0-25,16.72,28.38,28.38,0,0,0,5.44,30.81l68.12,71.78c10.69,11.19,29.51,11.2,40.19,0l68.12-71.75a28.43,28.43,0,0,0,5.44-30.83,26.94,26.94,0,0,0-25-16.72H272V160H464a16,16,0,0,1,16,16Z\"]\n};\nvar faFolderMinus = {\n prefix: 'fal',\n iconName: 'folder-minus',\n icon: [512, 512, [], \"f65d\", \"M344 272H168c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h176c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM194.74 96l54.63 54.63c6 6 14.14 9.37 22.63 9.37h192c8.84 0 16 7.16 16 16v224c0 8.84-7.16 16-16 16H48c-8.84 0-16-7.16-16-16V112c0-8.84 7.16-16 16-16h146.74M48 64C21.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-48H272l-54.63-54.63c-6-6-14.14-9.37-22.63-9.37H48z\"]\n};\nvar faFolderOpen = {\n prefix: 'fal',\n iconName: 'folder-open',\n icon: [576, 512, [], \"f07c\", \"M527.95 224H480v-48c0-26.51-21.49-48-48-48H272l-64-64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h385.057c28.068 0 54.135-14.733 68.599-38.84l67.453-112.464C588.24 264.812 565.285 224 527.95 224zM48 96h146.745l64 64H432c8.837 0 16 7.163 16 16v48H171.177c-28.068 0-54.135 14.733-68.599 38.84L32 380.47V112c0-8.837 7.163-16 16-16zm493.695 184.232l-67.479 112.464A47.997 47.997 0 0 1 433.057 416H44.823l82.017-136.696A48 48 0 0 1 168 256h359.975c12.437 0 20.119 13.568 13.72 24.232z\"]\n};\nvar faFolderPlus = {\n prefix: 'fal',\n iconName: 'folder-plus',\n icon: [512, 512, [], \"f65e\", \"M464,128H272L217.37,73.37A32,32,0,0,0,194.74,64H48A48,48,0,0,0,0,112V400a48,48,0,0,0,48,48H464a48,48,0,0,0,48-48V176A48,48,0,0,0,464,128Zm16,272a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V112A16,16,0,0,1,48,96H194.74l54.63,54.63A32,32,0,0,0,272,160H464a16,16,0,0,1,16,16ZM339.5,272h-68V204a12,12,0,0,0-12-12h-8a12,12,0,0,0-12,12v68h-68a12,12,0,0,0-12,12v8a12,12,0,0,0,12,12h68v68a12,12,0,0,0,12,12h8a12,12,0,0,0,12-12V304h68a12,12,0,0,0,12-12v-8A12,12,0,0,0,339.5,272Z\"]\n};\nvar faFolderTimes = {\n prefix: 'fal',\n iconName: 'folder-times',\n icon: [512, 512, [], \"f65f\", \"M329.54 225.77l-11.31-11.31c-3.12-3.12-8.19-3.12-11.31 0L256 265.37l-50.91-50.91c-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.31l50.9 50.92-50.91 50.91c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0l50.92-50.9 50.91 50.91c3.12 3.12 8.19 3.12 11.31 0l11.31-11.31c3.12-3.12 3.12-8.19 0-11.31L278.63 288l50.91-50.91a8.015 8.015 0 0 0 0-11.32zM194.74 96l54.63 54.63c6 6 14.14 9.37 22.63 9.37h192c8.84 0 16 7.16 16 16v224c0 8.84-7.16 16-16 16H48c-8.84 0-16-7.16-16-16V112c0-8.84 7.16-16 16-16h146.74M48 64C21.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-48H272l-54.63-54.63c-6-6-14.14-9.37-22.63-9.37H48z\"]\n};\nvar faFolderTree = {\n prefix: 'fal',\n iconName: 'folder-tree',\n icon: [576, 512, [], \"f802\", \"M288 224h224a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32H400L368 0h-80a32 32 0 0 0-32 32v64H64V8a8 8 0 0 0-8-8H40a8 8 0 0 0-8 8v392a16 16 0 0 0 16 16h208v64a32 32 0 0 0 32 32h224a32 32 0 0 0 32-32V352a32 32 0 0 0-32-32H400l-32-32h-80a32 32 0 0 0-32 32v64H64V128h192v64a32 32 0 0 0 32 32zm0 96h66.74l32 32H512v128H288zm0-288h66.74l32 32H512v128H288z\"]\n};\nvar faFolderUpload = {\n prefix: 'fal',\n iconName: 'folder-upload',\n icon: [512, 512, [], \"e054\", \"M464,128H272L217.37,73.37A32,32,0,0,0,194.74,64H48A48,48,0,0,0,0,112V400a48,48,0,0,0,48,48H464a48,48,0,0,0,48-48V176A48,48,0,0,0,464,128Zm16,272a16,16,0,0,1-16,16H272V319.7h52.66a26.94,26.94,0,0,0,25-16.72,28.38,28.38,0,0,0-5.44-30.81l-68.12-71.78c-10.69-11.19-29.51-11.2-40.19,0l-68.12,71.75A28.43,28.43,0,0,0,162.34,303a26.94,26.94,0,0,0,25,16.72H240V416H48a16,16,0,0,1-16-16V112A16,16,0,0,1,48,96H194.74l54.63,54.63A32,32,0,0,0,272,160H464a16,16,0,0,1,16,16ZM197.15,287.7l58.84-62,58.84,62Z\"]\n};\nvar faFolders = {\n prefix: 'fal',\n iconName: 'folders',\n icon: [640, 512, [], \"f660\", \"M592 64H400L345.37 9.37c-6-6-14.14-9.37-22.63-9.37H176c-26.51 0-48 21.49-48 48v80H48c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48v-80h80c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zM480 464c0 8.84-7.16 16-16 16H48c-8.84 0-16-7.16-16-16V176c0-8.84 7.16-16 16-16h80v176c0 26.51 21.49 48 48 48h304v80zm128-128c0 8.84-7.16 16-16 16H176c-8.84 0-16-7.16-16-16V48c0-8.84 7.16-16 16-16h146.74l54.63 54.63c6 6 14.14 9.37 22.63 9.37h192c8.84 0 16 7.16 16 16v224z\"]\n};\nvar faFont = {\n prefix: 'fal',\n iconName: 'font',\n icon: [448, 512, [], \"f031\", \"M424 448h-36.6L247.13 42.77A16 16 0 0 0 232 32h-16a16 16 0 0 0-15.12 10.77L60.6 448H24a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H94.48l44.3-128h170.44l44.31 128H312a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM149.86 288L224 73.8 298.14 288z\"]\n};\nvar faFontAwesomeLogoFull = {\n prefix: 'fal',\n iconName: 'font-awesome-logo-full',\n icon: [3992, 512, [\"Font Awesome\"], \"f4e6\", \"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\"]\n};\nvar faFontCase = {\n prefix: 'fal',\n iconName: 'font-case',\n icon: [640, 512, [], \"f866\", \"M632 160h-16a8 8 0 0 0-8 8v36.14C584.54 177.3 550.45 160 512 160a128 128 0 0 0-128 128v32a128 128 0 0 0 128 128c38.45 0 72.54-17.3 96-44.14V440a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V168a8 8 0 0 0-8-8zm-24 160a96 96 0 0 1-192 0v-32a96 96 0 0 1 192 0zM200.57 73.86A16 16 0 0 0 185.79 64h-19.58a16 16 0 0 0-14.77 9.86L.57 436.93A8 8 0 0 0 8 448h17.29a8 8 0 0 0 7.39-4.93L83.82 320h184.37l51.13 123.07a8 8 0 0 0 7.39 4.93h17.34a8 8 0 0 0 7.39-11.07zM97.11 288L176 98.16 254.89 288z\"]\n};\nvar faFootballBall = {\n prefix: 'fal',\n iconName: 'football-ball',\n icon: [496, 512, [], \"f44e\", \"M344.2 182.5l-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.7 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 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.4-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.3c3.1-3.1 8.2-3.1 11.3 0l11.3 11.3c3.3 3 3.3 8 .2 11.2zm57.3 227.2C263.6 547.9 75.7 495.3 51.9 488.9c-18.2-4.9-32.4-19.1-37.2-37.3-17.1-64.7-42.9-226.4 79.8-349.3C232.4-35.9 420.3 16.7 444.1 23.1c18.2 4.9 32.4 19.1 37.2 37.3 17.1 64.7 42.9 226.4-79.8 349.3zM435.9 54c-20.3-5.4-50.8-11.4-86.3-13.2l113.9 113.9c-1.6-35.7-7.7-66.1-13-86.1-1.9-7.1-7.5-12.7-14.6-14.6zM60.1 458c20.3 5.4 50.8 11.4 86.3 13.2L32.6 357.3c1.6 35.7 7.7 66.1 13 86.1 1.8 7.1 7.4 12.7 14.5 14.6zm402.7-258.8L304.6 41.1c-74.2 5.3-137.2 33.3-187.5 83.7-58.4 58.5-79.3 127.3-83.9 187.9l158.1 158.1c74.2-5.3 137.2-33.3 187.5-83.7 58.5-58.4 79.4-127.2 84-187.9z\"]\n};\nvar faFootballHelmet = {\n prefix: 'fal',\n iconName: 'football-helmet',\n icon: [512, 512, [], \"f44f\", \"M480 320H355.5l-15.2-76 136.8-17.8c9-1.2 15.6-9.8 13.9-18.7C468.4 93.8 368.3 8 248 8 114.9 8 18.2 109.5 2.6 219.9-7.6 292 13.3 361.2 53.7 412.1c3.1 3.9 7.8 6.1 12.8 6.1H120l85.7 42.9c9.3 4.7 19.4 6.9 29.3 6.9 46.5 0 78.1-49.2 60.9-92.1l-9.5-23.9h42.9l9.5 49.4c9.5 47.4 48 83.2 95.9 89.2 44 5.5 42.5 5.4 45.3 5.4 22.5 0 32-19.7 32-32V352c0-17.7-14.3-32-32-32zm-206.4 0l-10.3-25.7c-17.9-44.9 45.1-46.2 45.2-46.2l14.4 71.9h-49.3zm11.2-101.1c-41.4 5.4-66.7 48.4-51.2 87.2l32.6 83.7c5 12.5 2.1 26.7-7.4 36.2-12.8 12.8-29.3 11-38.8 6.3-88.6-44.3-82.9-43.6-92.5-48.4H74.1c-33.9-45.8-48-102.2-39.9-159.6C47.5 130.6 131.2 40 248 40c96.8 0 181.4 64.9 207.5 156.7l-170.7 22.2zM480 464l-41.3-5.2c-25.9-3.2-48-18.7-60.1-40.7H480V464zm0-80H368.3l-6.4-32H480v32zm-304-72c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24z\"]\n};\nvar faForklift = {\n prefix: 'fal',\n iconName: 'forklift',\n icon: [640, 512, [], \"f47a\", \"M416 368.4v-99.2c0-8.7-1.8-17.2-5.2-25.2L332.5 61.1C324.9 43.4 307.6 32 288.3 32H144c-26.5 0-48 21.5-48 48v112H48c-26.5 0-48 21.5-48 48v192c0 44.2 35.8 80 80 80 38.7 0 71-27.5 78.4-64h131.2c7.4 36.5 39.7 64 78.4 64 44.2 0 80-35.8 80-80 0-26.1-12.7-49-32-63.6zM128 80c0-8.8 7.2-16 16-16h144.3c6.4 0 12.2 3.8 14.7 9.7l78.4 182.8c1.7 4 2.6 8.2 2.6 12.6V288H247.7c-11.4 0-22.5-4.1-31.2-11.5L128 200.6V80zM80 480c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm209.6-64H158.4c-7.4-36.5-39.7-64-78.4-64-18.1 0-34.6 6.2-48 16.4V240c0-8.8 7.2-16 16-16h58.1l89.5 76.7c14.5 12.4 33 19.3 52 19.3H384v33.6c-5.2-1.1-10.5-1.6-16-1.6-38.7 0-71 27.5-78.4 64zm78.4 64c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm264-64H512V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v432c0 4.4 3.6 8 8 8h144c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faForward = {\n prefix: 'fal',\n iconName: 'forward',\n icon: [512, 512, [], \"f04e\", \"M244.5 230.9L52.5 71.4C31.9 54.3 0 68.6 0 96v320c0 27.4 31.9 41.8 52.5 24.6l192-160.5c15.3-12.9 15.3-36.5 0-49.2zM224 255.4L32 416V96l192 159.4zm276.5-24.5l-192-159.4C287.9 54.3 256 68.6 256 96v320c0 27.4 31.9 41.8 52.5 24.6l192-160.5c15.3-12.9 15.3-36.5 0-49.2zM480 255.4L288 416V96l192 159.4z\"]\n};\nvar faFragile = {\n prefix: 'fal',\n iconName: 'fragile',\n icon: [288, 512, [], \"f4bb\", \"M213.9 480H160V350.3c76.7-8.7 134.6-77.6 127.4-157.6l-16-178.1C270.7 6.3 263.9 0 255.7 0H32.3c-8.2 0-15 6.3-15.7 14.6L.6 192.7c-7.2 80 50.7 148.9 127.4 157.6V480H74.1c-24.5 0-33.2 32-20 32h179.8c13.1 0 4.5-32-20-32zM32.5 195.5L47.1 32h71.8L154 90.5c-82.7 49.6-60.8 36.5-86.3 51.8 27.1 21 12.5 9.7 113.5 87.9 3.3 2.5 8 2.3 11-.7 3.3-3.2 3.3-8.5 0-11.8l-70.5-70.6c72.1-43.3 58.3-35 76.2-45.7L156.3 32h84.6l14.6 163.5C260.6 252.7 218.8 320 144 320S27.3 252.9 32.5 195.5z\"]\n};\nvar faFrenchFries = {\n prefix: 'fal',\n iconName: 'french-fries',\n icon: [512, 512, [], \"f803\", \"M437.29 88.14a31.71 31.71 0 0 0-30.47-6.76l-9.9 3 2.58-14.77a32 32 0 0 0-40.69-36.19l-34.25 10.21A31.61 31.61 0 0 0 304 63.17V48a31.86 31.86 0 0 0-17.69-28.63l-32-16A32 32 0 0 0 208 32v15.72l-4-21.56a32 32 0 0 0-50.81-19.62l-28.47 21.59a31.65 31.65 0 0 0-12.16 31.39L117.32 85l-12.14-3.63a32 32 0 0 0-40.68 36.16L84 228.87a31.5 31.5 0 0 0-9 7.13 32 32 0 0 0-6.28 27l49.78 224a32 32 0 0 0 31.23 25h212.54a32 32 0 0 0 31.24-25.06l49.78-224A30 30 0 0 0 428 228.87l19.5-111.31a31.75 31.75 0 0 0-10.21-29.42zm-46.53 31.44L416 112l-20.19 115.52A31.68 31.68 0 0 0 380 243.81c-3.19 7.73-8.38 14.83-14.73 21.39zm-57-45.3L368 64l-39.44 225.6a163.15 163.15 0 0 1-24.56 8.32v-53.67zM272 48v255.17c-5.28.41-10.57.84-16 .84s-10.72-.43-16-.84V32zm-99.47-16L208 221.71v76.21a169.52 169.52 0 0 1-19.49-6.24L144 53.64zm-71.94 64.71L96 112l27.94 8.36 28 149.89c-9-7.85-16-16.7-20-26.47a31.68 31.68 0 0 0-15.82-16.31L95.93 112zM362.27 480H149.73L100 256c19.44 47.11 83.53 80 156.05 80s136.62-32.88 156.05-80z\"]\n};\nvar faFrog = {\n prefix: 'fal',\n iconName: 'frog',\n icon: [576, 512, [], \"f52e\", \"M368 120c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm186.67 328h-67.48L384.31 332.27l161.98-91.6A58.16 58.16 0 0 0 576 189.94c0-21.39-11.72-40.95-30.48-51.23-40.56-22.22-98.99-41.27-98.99-41.27C439.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.89 29.08 480 64 480h309.33c5.89 0 10.67-4.78 10.67-10.67 0-11.78-9.55-21.33-21.33-21.33h-62.66l34.46-45.92a103.734 103.734 0 0 0 17.49-56.06L472.81 480h92.52c5.89 0 10.67-4.78 10.67-10.67 0-11.78-9.55-21.33-21.33-21.33zM346.84 313.08c-6.21-19.81-18.03-38-35.61-51.5-37.91-29.12-91.51-26.62-129.75 2.07l-31.07 23.31c-7.06 5.3-8.5 15.33-3.22 22.41 5.31 7.08 15.34 8.45 22.41 3.19l32.57-24.44c23.53-17.65 55.72-21.33 81.24-6.71 37 21.2 47.35 68.58 24.96 102.19L260.03 448H64c-17.59 0-31.95-13.96-32-31.12-.45-149.77 111.53-273.36 260.48-287.48l24.1-2.29 4.36-23.81C325.1 80.53 344.9 64 368 64c23.07 0 42.87 16.5 47.06 39.24l3.46 18.71 18.08 5.9c.56.18 56.15 18.43 93.54 38.92 8.55 4.68 13.86 13.56 13.86 23.17 0 9.45-5.12 18.2-13.37 22.82L346.84 313.08z\"]\n};\nvar faFrostyHead = {\n prefix: 'fal',\n iconName: 'frosty-head',\n icon: [384, 512, [], \"f79b\", \"M376 224h-56V32c0-17.7-14.3-32-32-32H96C78.3 0 64 14.3 64 32v192H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h37.5C27 284 16 317.5 16 353.7c0 62.8 32.8 117.5 82 148.8 10.7 6.8 23.6 9.5 36.2 9.5h21.6c-4.4-6.3-11.8-17-20.8-32h-.7c-5.5 0-13.2-.8-19-4.5C73.1 448.7 48 403.2 48 353.7c0-37.9 14.9-72 38.8-97.7h211.7c17.6 19.5 30.2 43.7 35.1 70.4 10.3 57.1-12.6 112.9-59.7 145.7-7.4 5.1-15.9 7.8-24.8 7.8-9 15-16.5 25.7-20.8 32h20.8c15.4 0 30.5-4.8 43.1-13.6 53.9-37.6 86.1-104.1 72.8-177.7-4.3-23.6-13.9-45.3-26.9-64.7H376c4.4 0 8-3.6 8-8v-16c0-4.3-3.6-7.9-8-7.9zm-88 0H96v-64h192v64zm0-96H96V32h192v96zm-42.7 277.3c0-29.4-23.9-53.3-53.3-53.3s-53.3 23.9-53.3 53.3c0 27.6 39.2 82.3 53.3 102.8 14.2-20.5 53.3-75.2 53.3-102.8zM192 384c11.8 0 21.3 9.6 21.3 21.3 0 6.7-9.7 26-21.3 45.2-11.6-19.1-21.3-38.5-21.3-45.2 0-11.7 9.5-21.3 21.3-21.3zm64-32c11.8 0 21.3-9.6 21.3-21.3 0-11.8-9.6-21.3-21.3-21.3-11.8 0-21.3 9.6-21.3 21.3 0 11.7 9.5 21.3 21.3 21.3zm-106.7-21.3c0-11.8-9.6-21.3-21.3-21.3-11.8 0-21.3 9.6-21.3 21.3 0 11.8 9.6 21.3 21.3 21.3 11.8 0 21.3-9.6 21.3-21.3z\"]\n};\nvar faFrown = {\n prefix: 'fal',\n iconName: 'frown',\n icon: [496, 512, [], \"f119\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm0-152c-44.4 0-86.2 19.6-114.8 53.8-5.7 6.8-4.8 16.9 2 22.5 6.8 5.7 16.9 4.8 22.5-2 22.4-26.8 55.3-42.2 90.2-42.2s67.8 15.4 90.2 42.2c5.3 6.4 15.4 8 22.5 2 6.8-5.7 7.7-15.8 2-22.5C334.2 339.6 292.4 320 248 320zm-80-80c17.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\"]\n};\nvar faFrownOpen = {\n prefix: 'fal',\n iconName: 'frown-open',\n icon: [496, 512, [], \"f57a\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm-80-232c17.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 112c-39.7 0-102.6 23.7-111.5 74.5-1.9 10.9 2 22.2 10.3 29.5 8.2 7.3 19.9 9.9 30.6 6.6 29.3-9 56.4-14.6 70.6-14.6s41.3 5.6 70.6 14.6c7.7 2.4 20.1 2.6 30.6-6.6 8.2-7.3 12.2-18.6 10.3-29.5-8.9-50.8-71.8-74.5-111.5-74.5zm0 64c-17.7 0-46.9 5.8-80 16 5.2-29.7 50.1-48 80-48s74.8 18.3 80 48c-33.1-10.2-62.3-16-80-16z\"]\n};\nvar faFunction = {\n prefix: 'fal',\n iconName: 'function',\n icon: [640, 512, [], \"f661\", \"M308.8 106.6l-12.7-9.1c-3.6-2.6-8.6-1.8-11.2 1.8-39.9 56.9-61 122-61 188.7s21.1 131.8 61 188.7c2.5 3.6 7.6 4.4 11.2 1.8l12.7-9.1c3.4-2.5 4.2-7.2 1.7-10.6-36.2-51.6-55.2-110.5-55.2-170.8s19.1-119.1 55.2-170.8c2.5-3.4 1.8-8.1-1.7-10.6zM224 40c0-4.4-3.6-8-8-8h-56c-44.2 0-80 35.8-80 80v80H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h72v144c0 26.5-21.5 48-48 48H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h24c44.2 0 80-35.8 80-80V224h72c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-72v-80c0-26.5 21.5-48 48-48h56c4.4 0 8-3.6 8-8zm355 59.3c-2.5-3.6-7.6-4.4-11.2-1.8l-12.7 9.1c-3.4 2.5-4.2 7.2-1.7 10.6 36.2 51.6 55.2 110.5 55.2 170.8s-19.1 119.1-55.2 170.8c-2.4 3.5-1.7 8.2 1.7 10.6l12.7 9.1c3.6 2.6 8.7 1.8 11.2-1.8 39.9-56.9 61-122 61-188.7s-21.1-131.8-61-188.7zm-69.3 122.3l-11.3-11.3c-3.1-3.1-8.2-3.1-11.3 0l-55 55-55-55c-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.3l55 55-55 55c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l55-55 55 55c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-55-55 55-55c3.1-3.1 3.1-8.1 0-11.3z\"]\n};\nvar faFunnelDollar = {\n prefix: 'fal',\n iconName: 'funnel-dollar',\n icon: [640, 512, [], \"f662\", \"M464.02 160c-4.7 0-9.32.34-13.93.7L568.06 46.09C585.02 29.13 573.01 0 548.97 0H27.03C3.05 0-9.05 29.1 7.94 46.09L224 256v182c0 8.81 4.3 17.07 11.52 22.12l74 46.98c4.82 3.37 10.15 4.9 15.36 4.9 13.99 0 27.12-11.03 27.12-27.02v-13.22c30.43 25.12 69.46 40.21 112.02 40.21 97.34 0 175.98-78.78 175.98-175.98C640 238.64 561.22 160 464.02 160zM320 474l-63.74-38.25-.26-.22V242.47L39.35 32h497.29l-150.7 146.41c-58.01 28.78-97.9 88.42-97.9 157.56 0 37.65 11.88 72.42 31.96 101.01V474zm144.02 5.96c-79.39 0-143.98-64.59-143.98-143.98S384.63 192 464.02 192 608 256.59 608 335.98s-64.59 143.98-143.98 143.98zm27.11-152.54l-45-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.35V240c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v16.12c-23.62.63-42.67 20.55-42.67 45.07 0 19.97 12.98 37.81 31.58 43.39l45 13.5c5.16 1.55 8.77 6.78 8.77 12.73 0 7.27-5.3 13.19-11.8 13.19H450.8c-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.35V432c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16.12c23.62-.63 42.67-20.54 42.67-45.07 0-19.97-12.98-37.81-31.58-43.39z\"]\n};\nvar faFutbol = {\n prefix: 'fal',\n iconName: 'futbol',\n icon: [496, 512, [], \"f1e3\", \"M483.7 179.4C449.7 74.6 352.5 8 248.1 8 81.2 8-40 171.4 12.3 332.6 46.3 437.4 143.7 504 248 504c166.9 0 288-163.4 235.7-324.6zm-43 173.7l-94.3 11.6-17.8-24.9 33.7-104.1 28.9-9 69.6 65c-3.6 21.1-10.3 41.8-20.1 61.4zM35.6 291.5l69.4-64.9 28.9 9 33.9 103.7-18.1 25.2-94.2-11.6c-13-26-17.2-45.2-19.9-61.4zm196.5-180.7v32.9L146.2 206l-31.5-9.8-18-93.9c15.3-15.1 32.8-27.8 52-37.8l83.4 46.3zm149.4 85.4L350 206l-85.9-62.3v-32.9l83.6-46.4c19.1 10 36.7 22.7 52 37.9l-18.2 93.9zm-215.4 35l82-59.5 82.1 59.6-31.1 96H197.5l-31.4-96.1zm297.7 19.5L412.7 203l13.3-68.3c34.5 50.8 37.3 97.2 37.8 116zM309.2 49.2l-61.1 33.9-61-33.8c71.5-21.2 122-.1 122.1-.1zM70.3 134.1L83.5 203l-51.1 47.5c.8-31.8 8.7-63.4 23.6-92.6 4.2-8.3 9.1-16.2 14.3-23.8zm7.5 254l68.7 8.4 29.2 62.7c-38.8-13.8-72.7-38.5-97.9-71.1zm137.9 81.3l-40.1-86 17.4-24.2h110.2l17.3 24.2-40.1 86c-22.7 3.5-42.4 3.4-64.7 0zm104.8-10.2l29.2-62.7 69-8.5c-25 32.6-58.8 57.1-98.2 71.2z\"]\n};\nvar faGalaxy = {\n prefix: 'fal',\n iconName: 'galaxy',\n icon: [512, 512, [], \"e008\", \"M255.99959,192.00854a63.9983,63.9983,0,1,0,63.99865,63.9983A64.07181,64.07181,0,0,0,255.99959,192.00854Zm0,95.99744a31.99915,31.99915,0,1,1,31.99932-31.99914A31.99832,31.99832,0,0,1,255.99959,288.006Zm250.46349-21.09319-.03125-.01562C489.18219,193.74287,428.121,134.74445,354.59127,120.073a206.301,206.301,0,0,0-40.28627-4.02919,196.07944,196.07944,0,0,0-20.55621,1.07614A106.75469,106.75469,0,0,1,344.56023,71.293C374.41507,58.54141,383.58285.01953,313.95735,0a204.93571,204.93571,0,0,0-47.083,5.5604c-73.12347,17.29641-132.12223,78.326-146.80942,151.87094a202.428,202.428,0,0,0-2.84369,60.87338A106.56506,106.56506,0,0,1,71.28471,167.478C56.4569,132.69372,4.77439,140.39274,1.00494,178.19641a201.27566,201.27566,0,0,0,4.5624,66.92009C22.817,318.2708,83.8782,377.26922,157.4079,391.94071a204.38064,204.38064,0,0,0,40.18276,4.035,197.5223,197.5223,0,0,0,20.65972-1.082,106.75465,106.75465,0,0,1-50.81144,45.8269C137.61535,453.45859,128.43781,512,198.0008,512a205.81012,205.81012,0,0,0,47.124-5.54673c73.12347-17.29641,132.12223-78.326,146.80942-151.87094a202.428,202.428,0,0,0,2.84369-60.87338,106.56506,106.56506,0,0,1,45.93654,50.82677c14.904,34.96391,66.524,26.93483,70.27978-10.71846A201.96274,201.96274,0,0,0,506.46308,266.91279Zm-27.31,63.72877c-.4414,4.40418-6.95689,6.13656-9.01739,1.31247a138.94319,138.94319,0,0,0-59.73312-66.17011c-22.59719-12.64224-50.163,5.48618-47.44823,31.27651a170.17135,170.17135,0,0,1-2.40034,51.25449c-12.279,61.4925-61.62761,112.5302-122.75133,126.98879a169.93235,169.93235,0,0,1-56.40506,3.85732,4.69412,4.69412,0,0,1-1.36912-9.02124,139.25291,139.25291,0,0,0,66.11385-59.56091c11.97436-21.29631-3.44524-47.68427-27.88613-47.68427-4.89443,0-24.96237,3.59951-54.58675-2.33588C102.15516,348.28562,51.1367,298.94124,36.70341,237.73584a169.4596,169.4596,0,0,1-3.85735-56.36568c.4375-4.37293,6.95884-6.13851,9.01739-1.31051a138.952,138.952,0,0,0,59.73313,66.1701C124.1,258.81731,151.7713,240.849,149.0448,214.95129a170.17168,170.17168,0,0,1,2.40034-51.25449C167.1245,85.17937,242.46667,23.808,330.60349,32.85069a4.69617,4.69617,0,0,1,1.36716,9.02319,139.24308,139.24308,0,0,0-66.11385,59.56091c-11.97436,21.29631,3.44524,47.68427,27.88614,47.68427,4.7831,0,24.79635-3.58584,54.58674,2.33393C428.58386,167.46428,487.97128,243.86849,479.15311,330.64156Z\"]\n};\nvar faGameBoard = {\n prefix: 'fal',\n iconName: 'game-board',\n icon: [512, 512, [], \"f867\", \"M256 160h-96v96h96zm-32 64h-32v-32h32zm224 32v-96h-96v96zm-64-64h32v32h-32zM352 64h-96v96h96zm-32 64h-32V96h32zM160 256H64v96h96zm-32 64H96v-32h32zm32 128h96v-96h-96zm32-64h32v32h-32zm256 64v-96h-96v96zm-64-64h32v32h-32zm-128-32h96v-96h-96zm32-64h32v32h-32zM480 0H32A32 32 0 0 0 0 32v448a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V32a32 32 0 0 0-32-32zm0 480H32V32h448zM64 64v96h96V64zm64 64H96V96h32z\"]\n};\nvar faGameBoardAlt = {\n prefix: 'fal',\n iconName: 'game-board-alt',\n icon: [512, 512, [], \"f868\", \"M480 0H32A32 32 0 0 0 0 32v448a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V32a32 32 0 0 0-32-32zm0 480H32V32h448zm-32-32V256H256v192zM288 288h128v128H288zM256 64H64v192h192zm-32 160H96V96h128z\"]\n};\nvar faGameConsoleHandheld = {\n prefix: 'fal',\n iconName: 'game-console-handheld',\n icon: [384, 512, [], \"f8bb\", \"M232 336a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm40-24a24 24 0 1 0 24-24 24 24 0 0 0-24 24zM352 0H32A32 32 0 0 0 0 32v448a32 32 0 0 0 32 32h256a96 96 0 0 0 96-96V32a32 32 0 0 0-32-32zm0 416a64.07 64.07 0 0 1-64 64H32V32h320zM112 224h144a32 32 0 0 0 32-32V80a16 16 0 0 0-16-16H112a16 16 0 0 0-16 16v128a16 16 0 0 0 16 16zm16-128h128v96H128zM72 352h24v24a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-24h24a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-24v-24a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v24H72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8z\"]\n};\nvar faGamepad = {\n prefix: 'fal',\n iconName: 'gamepad',\n icon: [640, 512, [], \"f11b\", \"M480.07 96H160a160 160 0 1 0 114.24 272h91.52A160 160 0 1 0 480.07 96zM480 384a127 127 0 0 1-91.37-38.4l-9.43-9.6H260.8l-9.41 9.6A127 127 0 0 1 160 384c-70.57 0-128-57.42-128-128s57.43-128 128-128h320c70.61 0 128 57.42 128 128s-57.43 128-128 128zM222.18 236.36h-42.54v-42.54a9.86 9.86 0 0 0-9.82-9.82h-19.64a9.86 9.86 0 0 0-9.82 9.82v42.54H97.82a9.86 9.86 0 0 0-9.82 9.82v19.64a9.86 9.86 0 0 0 9.82 9.82h42.54v42.54a9.86 9.86 0 0 0 9.82 9.82h19.64a9.86 9.86 0 0 0 9.82-9.82v-42.54h42.54a9.86 9.86 0 0 0 9.82-9.82v-19.64a9.86 9.86 0 0 0-9.82-9.82zM448 256a32 32 0 1 0 32 32 32 32 0 0 0-32-32zm64-64a32 32 0 1 0 32 32 32 32 0 0 0-32-32z\"]\n};\nvar faGamepadAlt = {\n prefix: 'fal',\n iconName: 'gamepad-alt',\n icon: [640, 512, [], \"f8bc\", \"M638.59 368.22l-33.37-211.59c-8.86-50.26-48.4-90.77-100.66-103.13h-.07a803.14 803.14 0 0 0-369 0C83.17 65.86 43.64 106.36 34.78 156.63L1.41 368.22C-8.9 426.73 38.8 480 101.51 480c49.67 0 93.77-30.07 109.48-74.64l7.52-21.36h203l7.49 21.36C444.72 449.93 488.82 480 538.49 480c62.71 0 110.41-53.27 100.1-111.78zm-45.11 54.88c-13.28 15.82-33.33 24.9-55 24.9-36.2 0-68.07-21.41-79.29-53.27l-7.53-21.36-7.52-21.37H195.86l-7.53 21.37-7.53 21.36C169.58 426.59 137.71 448 101.51 448c-21.66 0-41.71-9.08-55-24.9A59.93 59.93 0 0 1 33 373.2l33.28-211c6.66-37.7 36.72-68.14 76.53-77.57a771.07 771.07 0 0 1 354.38 0c39.84 9.42 69.87 39.86 76.42 77l33.47 212.15c3.11 17.64-1.72 35.16-13.6 49.32zm-339.3-218.74h-42.54v-42.54a9.86 9.86 0 0 0-9.82-9.82h-19.64a9.86 9.86 0 0 0-9.82 9.82v42.54h-42.54a9.86 9.86 0 0 0-9.82 9.82v19.64a9.86 9.86 0 0 0 9.82 9.82h42.54v42.54a9.86 9.86 0 0 0 9.82 9.82h19.64a9.86 9.86 0 0 0 9.82-9.82v-42.54h42.54a9.86 9.86 0 0 0 9.82-9.82v-19.64a9.86 9.86 0 0 0-9.82-9.82zM416 224a32 32 0 1 0 32 32 32 32 0 0 0-32-32zm64-64a32 32 0 1 0 32 32 32 32 0 0 0-32-32z\"]\n};\nvar faGarage = {\n prefix: 'fal',\n iconName: 'garage',\n icon: [640, 512, [], \"e009\", \"M368,416H272a16,16,0,0,0,0,32h96a16,16,0,0,0,0-32ZM610.59,118.33,338.59,3.75a48,48,0,0,0-37.18,0l-272,114.58A47.84,47.84,0,0,0,0,162.53V504a8,8,0,0,0,8,8H24a8,8,0,0,0,8-8V162.53a16,16,0,0,1,9.81-14.79l272-114.6a15.75,15.75,0,0,1,12.38,0l272,114.6A15.91,15.91,0,0,1,608,162.53V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V162.53A47.84,47.84,0,0,0,610.59,118.33ZM512,192H128a32,32,0,0,0-32,32V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V352H512V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V224A32,32,0,0,0,512,192Zm0,128H128V224H512Z\"]\n};\nvar faGarageCar = {\n prefix: 'fal',\n iconName: 'garage-car',\n icon: [640, 512, [], \"e00a\", \"M240,384a16,16,0,1,0,16,16A16,16,0,0,0,240,384Zm160,0a16,16,0,1,0,16,16A16,16,0,0,0,400,384ZM610.59,118.33,338.59,3.75a48,48,0,0,0-37.18,0l-272,114.58A47.84,47.84,0,0,0,0,162.53V504a8,8,0,0,0,8,8H24a8,8,0,0,0,8-8V162.53a16,16,0,0,1,9.81-14.79l272-114.6a15.75,15.75,0,0,1,12.38,0l272,114.6A15.91,15.91,0,0,1,608,162.53V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V162.53A47.84,47.84,0,0,0,610.59,118.33ZM512,192H128a32,32,0,0,0-32,32V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V224H512V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V224A32,32,0,0,0,512,192ZM443.92,337.69l-9.42-37.75A58,58,0,0,0,378.22,256H261.78A58,58,0,0,0,205.5,300l-9.42,37.73A47.88,47.88,0,0,0,160,384v48a32,32,0,0,0,32,32v32a16,16,0,0,0,16,16h16a16,16,0,0,0,16-16V464H400v32a16,16,0,0,0,16,16h16a16,16,0,0,0,16-16V464a32,32,0,0,0,32-32V384A47.88,47.88,0,0,0,443.92,337.69Zm-207.36-30A26,26,0,0,1,261.78,288H378.22a26,26,0,0,1,25.22,19.69L410.51,336h-181ZM448,432H192V384a16,16,0,0,1,16-16H432a16,16,0,0,1,16,16Z\"]\n};\nvar faGarageOpen = {\n prefix: 'fal',\n iconName: 'garage-open',\n icon: [640, 512, [], \"e00b\", \"M610.59,118.33,338.59,3.75a48,48,0,0,0-37.18,0l-272,114.58A47.84,47.84,0,0,0,0,162.53V504a8,8,0,0,0,8,8H24a8,8,0,0,0,8-8V162.53a16,16,0,0,1,9.81-14.79l272-114.6a15.75,15.75,0,0,1,12.38,0l272,114.6A15.91,15.91,0,0,1,608,162.53V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V162.53A47.84,47.84,0,0,0,610.59,118.33ZM512,192H128a32,32,0,0,0-32,32V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V288H512V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V224A32,32,0,0,0,512,192Zm0,64H128V224H512Zm-68.08,81.67L439.51,320h-33l4,16h-181l4-16h-33l-4.41,17.67A47.88,47.88,0,0,0,160,384v48a32,32,0,0,0,32,32v32a16,16,0,0,0,16,16h16a16,16,0,0,0,16-16V464H400v32a16,16,0,0,0,16,16h16a16,16,0,0,0,16-16V464a32,32,0,0,0,32-32V384A47.88,47.88,0,0,0,443.92,337.69ZM448,432H192V384a16,16,0,0,1,16-16H432a16,16,0,0,1,16,16ZM240,384a16,16,0,1,0,16,16A16,16,0,0,0,240,384Zm160,0a16,16,0,1,0,16,16A16,16,0,0,0,400,384Z\"]\n};\nvar faGasPump = {\n prefix: 'fal',\n iconName: 'gas-pump',\n icon: [512, 512, [], \"f52f\", \"M502.6 120L409 26.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.3L416 78.6V160c0 26.5 21.5 48 48 48h16v174.2c0 15.9-10.9 30.8-26.6 33.4-20 3.3-37.4-12.1-37.4-31.6v-48c0-44.2-35.8-80-80-80h-16V64c0-35.3-28.7-64-64-64H96C60.7 0 32 28.7 32 64v416H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h336c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-24V288h16c26.5 0 48 21.5 48 48v44.4c0 31.9 21.7 61.5 53.2 66.7 40.1 6.6 74.8-24.3 74.8-63.1V142.6c0-8.5-3.4-16.6-9.4-22.6zM480 176h-16c-8.8 0-16-7.2-16-16v-49.4l32 32V176zM288 480H64V224h224v256zm0-288H64V64c0-17.6 14.4-32 32-32h160c17.6 0 32 14.4 32 32v128z\"]\n};\nvar faGasPumpSlash = {\n prefix: 'fal',\n iconName: 'gas-pump-slash',\n icon: [640, 512, [], \"f5f4\", \"M480 78.6V160c0 26.5 21.5 48 48 48h16v163.3l30.7 24.2c.7-3.8 1.3-7.5 1.3-11.5V142.6c0-8.5-3.4-16.6-9.4-22.6L473 26.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.3zm32 32l32 32V176h-16c-8.8 0-16-7.2-16-16zm125 374.6L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zM408 480h-24V367.5l-32-25.2V480H128V165.9l-32-25.2V480H72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h336c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM160 32h160c17.6 0 32 14.4 32 32v156.1l32 25.2V64c0-35.3-28.6-64-64-64H160c-21.8 0-41 10.9-52.5 27.5l25.6 20.2C138.7 38.5 148.4 32 160 32z\"]\n};\nvar faGavel = {\n prefix: 'fal',\n iconName: 'gavel',\n icon: [512, 512, [], \"f0e3\", \"M500.892 186.561l-20.633-20.643c-12.912-12.912-32.416-14.337-46.732-5.448L351.53 78.474c8.888-14.315 7.465-33.82-5.448-46.731L325.44 11.108c-14.808-14.808-38.781-14.813-53.592 0L158.315 124.633c-14.774 14.775-14.774 38.815 0 53.591l20.643 20.644c12.659 12.657 32.118 14.473 46.725 5.439l29.692 29.692-58.803 58.803-8.082-8.082c-16.933-16.934-44.484-16.932-61.417 0L12.699 399.073c-16.932 16.933-16.932 44.484 0 61.417l38.81 38.811c16.931 16.932 44.482 16.933 61.417 0L227.28 384.927c16.932-16.933 16.932-44.484 0-61.417l-8.081-8.081 58.803-58.803 29.692 29.692c-9.031 14.607-7.218 34.067 5.44 46.725l20.643 20.643c14.776 14.776 38.815 14.776 53.591 0l113.525-113.533c14.808-14.809 14.811-38.781-.001-53.592zM204.653 362.3L90.3 476.652c-4.456 4.458-11.707 4.457-16.163 0v.001l-38.79-38.79c-4.456-4.456-4.456-11.707 0-16.163L149.7 307.348c4.456-4.457 11.706-4.458 16.162-.001l38.79 38.79c4.456 4.456 4.456 11.707.001 16.163zm273.62-144.776L364.74 331.058a5.896 5.896 0 0 1-8.337 0l-20.643-20.643a5.902 5.902 0 0 1-.001-8.336l16.478-16.474-125.842-125.841-16.474 16.475a5.902 5.902 0 0 1-8.336.001l-20.643-20.643a5.903 5.903 0 0 1 0-8.337L294.476 33.727a5.896 5.896 0 0 1 8.337 0l20.643 20.644a5.893 5.893 0 0 1-.001 8.336l-16.472 16.475L432.82 205.019l16.477-16.473a5.893 5.893 0 0 1 8.335 0l20.643 20.643v.001a5.893 5.893 0 0 1-.002 8.334z\"]\n};\nvar faGem = {\n prefix: 'fal',\n iconName: 'gem',\n icon: [576, 512, [], \"f3a5\", \"M463.7 0H112.3c-4.2 0-8.1 2.2-10.3 5.8L1.7 168.6c-2.7 4.4-2.2 10.1 1.2 14l276 325.2c4.8 5.6 13.4 5.6 18.2 0l276-325.2c3.4-3.9 3.8-9.6 1.2-14L474 5.8c-2.2-3.6-6.1-5.8-10.3-5.8zm-13.6 36l74.3 124h-83L384.6 36h65.5zM345 36l56.8 124H174.1L231 36h114zm-219.1 0h65.5l-56.8 124h-83l74.3-124zM61.2 192h73L216 384 61.2 192zm112 0h229.5L288 455.8 173.2 192zM360 384l81.8-192h73L360 384z\"]\n};\nvar faGenderless = {\n prefix: 'fal',\n iconName: 'genderless',\n icon: [288, 512, [], \"f22d\", \"M144 144c61.9 0 112 50 112 112 0 61.9-50 112-112 112-61.9 0-112-50-112-112 0-61.9 50-112 112-112m0-32C64.5 112 0 176.5 0 256s64.5 144 144 144 144-64.5 144-144-64.5-144-144-144z\"]\n};\nvar faGhost = {\n prefix: 'fal',\n iconName: 'ghost',\n icon: [384, 512, [], \"f6e2\", \"M192 0c-1.96 0-3.93.03-5.91.09C81.01 3.24 0 94.92 0 200.05v263.92C0 473.61 7.89 480 16.12 480c3.93 0 7.94-1.46 11.2-4.72l24.92-18.53c2.86-2.12 6.21-3.16 9.54-3.16 4.43 0 8.82 1.83 11.97 5.38l42.95 48.35c3.12 3.12 7.22 4.69 11.31 4.69s8.19-1.56 11.31-4.69l40.72-45.85c3.18-3.58 7.57-5.38 11.96-5.38s8.78 1.79 11.96 5.38l40.72 45.85c3.12 3.12 7.22 4.69 11.31 4.69s8.19-1.56 11.31-4.69l42.95-48.35a15.994 15.994 0 0 1 21.51-2.22l24.92 18.53c3.26 3.26 7.27 4.72 11.2 4.72 8.22 0 16.12-6.39 16.12-16.03V192C384 85.96 298.04 0 192 0zm160 431.92l-1.13-.84c-8.34-6.21-18.24-9.48-28.64-9.48-13.71 0-26.79 5.88-35.89 16.12L256 471.87l-28.11-31.65c-9.1-10.25-22.18-16.12-35.89-16.12s-26.79 5.88-35.89 16.12L128 471.87l-30.34-34.15a48.017 48.017 0 0 0-35.89-16.12c-10.39 0-20.29 3.28-28.63 9.48l-1.14.84V200.05C32 110 101.56 34.64 187.05 32.08L192 32c88.22 0 160 71.78 160 160v239.92zM128 160c-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\"]\n};\nvar faGift = {\n prefix: 'fal',\n iconName: 'gift',\n icon: [512, 512, [], \"f06b\", \"M464 144h-39.3c9.5-13.4 15.3-29.9 15.3-48 0-44.1-33.4-80-74.5-80-42.3 0-66.8 25.4-109.5 95.8C213.3 41.4 188.8 16 146.5 16 105.4 16 72 51.9 72 96c0 18.1 5.8 34.6 15.3 48H48c-26.5 0-48 21.5-48 48v96c0 8.8 7.2 16 16 16h16v144c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304h16c8.8 0 16-7.2 16-16v-96c0-26.5-21.5-48-48-48zm-187.8-3.6c49.5-83.3 66-92.4 89.3-92.4 23.4 0 42.5 21.5 42.5 48s-19.1 48-42.5 48H274l2.2-3.6zM146.5 48c23.4 0 39.8 9.1 89.3 92.4l2.1 3.6h-91.5c-23.4 0-42.5-21.5-42.5-48 .1-26.5 19.2-48 42.6-48zM192 464H80c-8.8 0-16-7.2-16-16V304h128v160zm0-192H32v-80c0-8.8 7.2-16 16-16h144v96zm96 192h-64V176h64v288zm160-16c0 8.8-7.2 16-16 16H320V304h128v144zm32-176H320v-96h144c8.8 0 16 7.2 16 16v80z\"]\n};\nvar faGiftCard = {\n prefix: 'fal',\n iconName: 'gift-card',\n icon: [576, 512, [], \"f663\", \"M528 128h-71.3c9.5-13.4 15.3-29.9 15.3-48 0-44.1-33.4-80-74.5-80-42.3 0-66.8 25.4-109.5 95.8C245.3 25.4 220.8 0 178.5 0 137.4 0 104 35.9 104 80c0 18.1 5.8 34.6 15.3 48H48c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48zm-219.8-3.6c49.5-83.3 66-92.4 89.3-92.4 23.4 0 42.5 21.5 42.5 48s-19.1 48-42.5 48H306l2.2-3.6zM178.5 32c23.4 0 39.8 9.1 89.3 92.4l2.1 3.6h-91.5c-23.4 0-42.5-21.5-42.5-48 .1-26.5 19.2-48 42.6-48zM544 464c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16v-32h512v32zm0-64H32v-64h512v64zm0-96H32V176c0-8.84 7.16-16 16-16h201.38l-79.03 79.03c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0L288 166.62l95.03 95.03c3.12 3.12 8.19 3.12 11.31 0l11.31-11.31c3.12-3.12 3.12-8.19 0-11.31L326.62 160H528c8.84 0 16 7.16 16 16v128z\"]\n};\nvar faGifts = {\n prefix: 'fal',\n iconName: 'gifts',\n icon: [640, 512, [], \"f79c\", \"M608 224h-27.3c7.1-10 11.3-21.5 11.3-33.9 0-30.5-25.3-62.1-67.8-62.1-42.9 0-74.6 34.8-92.2 62.2-17.7-27.4-49.3-62.2-92.2-62.2-7.2 0-13.6 1.2-19.8 2.8V128c0-17.7-14.3-32-32-32h-70.4l43.1-30.8c3.6-2.6 4.4-7.6 1.9-11.2l-9.3-13c-2.6-3.6-7.6-4.4-11.2-1.9l-53.1 38 22.8-60.7c1.6-4.1-.5-8.7-4.7-10.3l-15-5.6c-4.1-1.6-8.8.5-10.3 4.7L160 63.3 138.2 5.2C136.6 1.1 132-1 127.9.5l-15 5.6c-4.1 1.6-6.2 6.2-4.7 10.3L131 77.1 78 39.2c-3.6-2.6-8.6-1.7-11.2 1.9l-9.3 13c-2.6 3.6-1.7 8.6 1.9 11.2l43 30.7H32c-17.7 0-32 14.3-32 32v352c0 17.7 14.3 32 32 32h576c17.7 0 32-14.3 32-32V256c0-17.7-14.3-32-32-32zm-268.2-64c37.6 0 66 45.9 74.7 64H357c-21.9 0-34.4-6.2-41.1-11.4-7.8-6-11.9-13.8-11.9-22.5 0-14.8 13.4-30.1 35.8-30.1zM224 256v224H32V128h256v22c-10.3 11.4-16 25.8-16 40.1 0 12.4 4.1 23.9 11.3 33.9H256c-17.7 0-32 14.3-32 32zm192 224H256v-96h160v96zm0-128H256v-96h160v96zm108.2-192c22.4 0 35.8 15.3 35.8 30.1 0 8.7-4.1 16.5-11.9 22.5-6.7 5.2-19.2 11.4-41.1 11.4h-57.5c8.7-18.1 37.1-64 74.7-64zM608 480H448v-96h160v96zm0-128H448v-96h160v96z\"]\n};\nvar faGingerbreadMan = {\n prefix: 'fal',\n iconName: 'gingerbread-man',\n icon: [448, 512, [], \"f79d\", \"M224 336c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zM192 88c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm32 184c-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-16zm32-120c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm192 152c0-44.1-35.9-80-80-80h-39.6c10.3-23.1 12.6-49.4 5.8-75.6-9.9-38.8-41.4-70.4-80-80.5C244.2 1.3 234.1 0 224 0c-30.5 0-59.1 11.9-80.6 33.4C121.9 54.9 110 83.5 110 114c0 16 3.4 31.7 9.8 46H80c-44.1 0-80 35.9-80 80s35.9 80 80 80h27.9l-58 61.6c-27.8 34.2-22.6 84.7 11.6 112.5C75.8 505.6 93.7 512 112 512c24.2 0 46.9-10.8 62.1-29.6l49.9-51.6 49.9 51.6c15.2 18.8 37.9 29.6 62.1 29.6 18.3 0 36.2-6.4 50.4-17.9 34.2-27.8 39.4-78.3 11.6-112.5L340 320h28c44.1 0 80-35.9 80-80zm-143.4 87.1l68.6 74.6c16.7 20.6 13.6 50.8-7 67.5-8.9 7.2-19.6 10.8-30.2 10.8-14 0-27.8-6.1-37.3-17.7l-49.9-51.6c-6.4-7.9-15.6-11.8-24.8-11.8s-18.4 3.9-24.8 11.8l-49.9 51.6C139.8 474 126 480 112 480c-10.6 0-21.3-3.5-30.2-10.8-20.6-16.7-23.7-46.9-7-67.5l68.6-74.6c12.7-15.7 1.6-39.1-18.6-39.1H80c-26.5 0-48-21.5-48-48s21.5-48 48-48h81.6c9.3 0 14.2-11.5 7.3-17.7C152.4 159.4 142 138 142 114c0-45.3 36.7-82 82-82 7.2 0 14.6.9 22.1 2.9 27.6 7.2 50.1 29.8 57.1 57.5 8.3 32.5-2.7 62.7-24 81.9-6.9 6.3-2.2 17.8 7.2 17.8H368c26.5 0 48 21.5 48 48s-21.5 48-48 48h-44.7c-20.2-.1-31.4 23.3-18.7 39z\"]\n};\nvar faGlass = {\n prefix: 'fal',\n iconName: 'glass',\n icon: [384, 512, [], \"f804\", \"M352 0H32A32 32 0 0 0 .06 34l32 448A32 32 0 0 0 64 512h256a32 32 0 0 0 31.94-30l32-448A32 32 0 0 0 352 0zm0 32l-9.15 128H41.14L32 32zM64 479.72L43.43 192h297.14L320 480z\"]\n};\nvar faGlassChampagne = {\n prefix: 'fal',\n iconName: 'glass-champagne',\n icon: [256, 512, [], \"f79e\", \"M255 212.3L228 27.4C225.7 11.7 212.2 0 196.3 0H59.7C43.8 0 30.3 11.7 28 27.4L1 212.3c-9 68.8 41.9 129.5 111 138V480H58.7C43.9 480 32 491.9 32 506.7c0 2.9 2.4 5.3 5.3 5.3h181.3c3 0 5.3-2.4 5.3-5.3 0-14.7-11.9-26.7-26.7-26.7H144V350.3c69-8.4 120-69.2 111-138zM196.3 32l14 96H45.7l14-96h136.6zM32.7 216.9L41 160h174l8.2 56.5c3.4 25.7-4.3 50.8-21.8 70.7-18.2 20.8-45 32.8-73.4 32.8s-55.2-12-73.5-32.8c-17.4-19.9-25.1-45-21.8-70.3z\"]\n};\nvar faGlassCheers = {\n prefix: 'fal',\n iconName: 'glass-cheers',\n icon: [640, 512, [], \"f79f\", \"M605.4 437l-35 13-46-123.4c57-32.2 79.5-103.5 46.8-160.1L484.3 16c-5.9-10.2-16.6-16-27.7-16-4.1 0-8.2.8-12.2 2.4l-120.6 50c-1.4.6-6.1.6-7.5 0l-120.6-50c-4-1.7-8.1-2.4-12.2-2.4-11.1 0-21.9 5.8-27.7 16l-87 150.5c-32.7 56.6-10.2 127.9 46.8 160.1L69.6 450l-35-13c-13.8-5.1-29.1 1.9-34.3 15.7-1 2.8.4 5.8 3.1 6.9l139.9 52.2c2.8 1 5.8-.4 6.9-3.1 5.1-13.8-1.9-29.2-15.7-34.3l-35-13L145.1 339c71.1 18.7 129.8-25.6 144.6-80.7L320 145.8 350.1 258c14.9 55.4 73.8 99.4 144.6 80.7l45.6 122.4-35 13c-13.8 5.1-20.8 20.5-15.7 34.3 1 2.8 4.1 4.2 6.9 3.1l139.9-52.2c2.8-1 4.2-4.1 3.1-6.9-5-13.6-20.3-20.6-34.1-15.4zM259 249.8c-15.8 58.8-77.9 71-117.7 54.5-48.6-20.1-70.6-77-44.7-121.8l25.5-44.2 150.2 62.2-13.3 49.3zm21.6-80.5l-142.4-59L183.4 32 304 82l-23.4 87.3zM336 82l120.6-50 45.2 78.3-142.4 59L336 82zm45 167.8l-13.2-49.3L518 138.3l25.5 44.2c25.9 44.9 3.9 101.7-44.7 121.8C458 321.2 396.4 307 381 249.8z\"]\n};\nvar faGlassCitrus = {\n prefix: 'fal',\n iconName: 'glass-citrus',\n icon: [512, 512, [], \"f869\", \"M368 0c-62.61 0-115.35 40.2-135.18 96h34.37c18-37.73 56.21-64 100.81-64a112 112 0 0 1 112 112c0 59.54-46.6 107.76-105.25 111.32l-3.22 32.32C449.39 285.73 512 222.32 512 144A144 144 0 0 0 368 0zm-48 128H32A32 32 0 0 0 .16 163.18l32 320A32 32 0 0 0 64 512h224a32 32 0 0 0 31.84-28.82l32-320A32 32 0 0 0 320 128zm-32 352H64L44.8 288h262.4zm22.4-224H41.6L32 160h288z\"]\n};\nvar faGlassMartini = {\n prefix: 'fal',\n iconName: 'glass-martini',\n icon: [512, 512, [], \"f000\", \"M502.05 57.6C523.3 36.34 508.25 0 478.2 0H33.8C3.75 0-11.3 36.34 9.95 57.6L240 287.64V480h-53.33c-14.73 0-26.67 11.94-26.67 26.67 0 2.95 2.39 5.33 5.33 5.33h181.33c2.95 0 5.33-2.39 5.33-5.33 0-14.73-11.94-26.67-26.67-26.67H272V287.64L502.05 57.6zM256.06 258.33L32.58 34.97c-.51-.51-.82-.82-.38-1.89.44-1.08.88-1.08 1.6-1.08h444.4c.72 0 1.16 0 1.6 1.07.45 1.07.14 1.38-.38 1.89L418.39 96 256.06 258.33z\"]\n};\nvar faGlassMartiniAlt = {\n prefix: 'fal',\n iconName: 'glass-martini-alt',\n icon: [512, 512, [], \"f57b\", \"M502.05 57.6C523.3 36.34 508.25 0 478.2 0H33.8C3.75 0-11.3 36.34 9.95 57.6L240 287.64V480h-53.33c-14.73 0-26.67 11.94-26.67 26.67 0 2.95 2.39 5.33 5.33 5.33h181.33c2.95 0 5.33-2.39 5.33-5.33 0-14.73-11.94-26.67-26.67-26.67H272V287.64L502.05 57.6zM32.2 33.07c.44-1.07.88-1.07 1.6-1.07h444.4c.72 0 1.16 0 1.6 1.07.45 1.07.14 1.38-.38 1.89L418.39 96H93.61L32.58 34.97c-.52-.51-.82-.82-.38-1.9zm223.86 225.26L125.61 128H386.4L256.06 258.33z\"]\n};\nvar faGlassWhiskey = {\n prefix: 'fal',\n iconName: 'glass-whiskey',\n icon: [512, 512, [], \"f7a0\", \"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-55.6 388.5c-2.2 15.7-15.9 27.5-31.7 27.5h-273c-15.8 0-29.4-11.8-31.7-27.9L67.2 288H445l-20.6 132.5zM450 256H62.2L32 64h448l-30 192z\"]\n};\nvar faGlassWhiskeyRocks = {\n prefix: 'fal',\n iconName: 'glass-whiskey-rocks',\n icon: [512, 512, [], \"f7a1\", \"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-55.6 388.5c-2.2 15.7-15.9 27.5-31.7 27.5h-273c-15.8 0-29.4-11.8-31.7-27.9L67.2 288H96v48c0 26.5 21.5 48 48 48h96c14 0 26.5-6.2 35.3-15.9l10.8 10.8c9.1 9.1 21.1 14.1 33.9 14.1 12.8 0 24.9-5 33.9-14.1l57-57c9.4-9.4 14-21.7 14-33.9H445l-20.6 132.5zM251.7 299.3c-6.2-6.2-6.2-16.4 0-22.6l57-57c3.1-3.1 7.2-4.7 11.3-4.7 4.1 0 8.2 1.6 11.3 4.7l57 57c6.2 6.2 6.2 16.4 0 22.6l-57 57c-3.1 3.1-7.2 4.7-11.3 4.7-4.1 0-8.2-1.6-11.3-4.7l-57-57zm-22.6-45.2c-18.7 18.7-18.7 49.2 0 67.9l23.5 23.5c-2.9 3.9-7.3 6.6-12.6 6.6h-96c-8.8 0-16-7.2-16-16v-96c0-8.8 7.2-16 16-16h96c5.2 0 9.7 2.7 12.6 6.6l-23.5 23.4zM450 256h-37.8c-.5-.6-.7-1.4-1.3-1.9l-57-57c-9-9.1-21.1-14.1-33.9-14.1-12.8 0-24.9 5-33.9 14.1l-10.8 10.8C266.5 198.2 254 192 240 192h-96c-26.5 0-48 21.5-48 48v16H62.2L32 64h448l-30 192z\"]\n};\nvar faGlasses = {\n prefix: 'fal',\n iconName: 'glasses',\n icon: [576, 512, [], \"f530\", \"M574.21 280.58l-45.49-188c-5.38-21.55-19.62-40.05-39.09-50.73-19.47-10.66-42.66-12.8-63.81-5.77l-22.85 7.62c-4.19 1.4-6.46 5.93-5.06 10.12L402.97 69c1.4 4.19 5.93 6.46 10.12 5.06l21.79-7.27c10.1-3.37 21.16-3.95 31.23-.48 16.15 5.56 27.57 18.12 31.51 33.84l40.61 171.44c-22.35-7.63-53.24-15.06-89.57-15.06-37.34 0-80.26 8-125 31.48h-71.31c-44.74-23.48-87.66-31.49-125-31.48-36.33 0-67.22 7.44-89.58 15.07l40.57-171.24c3.36-13.44 11.99-24.44 24.29-30.9 12.24-6.43 26.88-6.51 39.99-2.14l20.28 6.77c4.19 1.4 8.72-.87 10.12-5.06l5.06-15.18c1.4-4.19-.87-8.72-5.06-10.12l-22.85-7.61c-21.09-7.06-44.31-4.95-63.81 5.75-19.45 10.68-33.7 29.18-39.11 50.91L1.8 280.58C.6 285.51 0 290.56 0 295.64v73.64C0 430.43 50.14 480 112 480h36.08c58.61 0 107.3-44.67 111.69-102.44l4.37-57.56h47.72l4.37 57.56C320.61 435.34 369.31 480 427.92 480H464c61.86 0 112-49.57 112-110.72v-73.65c0-5.07-.6-10.12-1.79-15.05zm-346.35 94.56C224.76 416 189.72 448 148.08 448H112c-44.11 0-80-35.31-80-78.72v-61.3c18.79-7.97 53.21-19.46 95.37-19.46 36.35 0 71.64 8.44 105.16 25.13l-4.67 61.49zM544 369.28c0 43.41-35.89 78.72-80 78.72h-36.08c-41.63 0-76.68-32-79.78-72.86l-4.67-61.49c33.53-16.68 68.83-25.13 105.19-25.13 42.16 0 76.56 11.49 95.34 19.46v61.3z\"]\n};\nvar faGlassesAlt = {\n prefix: 'fal',\n iconName: 'glasses-alt',\n icon: [576, 512, [], \"f5f5\", \"M572.39 302.63L528.75 92.78c-5.41-21.73-19.66-40.23-39.12-50.92-19.5-10.7-42.72-12.81-63.81-5.75l-22.85 7.61c-4.19 1.4-6.46 5.93-5.06 10.12l5.06 15.18c1.4 4.19 5.93 6.46 10.12 5.06l20.28-6.77c13.11-4.37 27.75-4.29 39.99 2.14 12.3 6.46 20.94 17.46 24.29 30.9l30.45 140.84C504.32 220.78 473.79 208 440 208c-66.89 0-122.21 48.38-133.58 112h-36.84C258.21 256.38 202.89 208 136 208c-33.79 0-64.32 12.78-88.1 33.18l30.45-140.84c3.36-13.44 11.99-24.44 24.29-30.9 12.24-6.43 26.88-6.51 39.99-2.14l20.28 6.77c4.19 1.4 8.72-.87 10.12-5.06l5.06-15.18c1.4-4.19-.87-8.72-5.06-10.12l-22.85-7.61c-21.09-7.06-44.31-4.95-63.81 5.75-19.46 10.7-33.71 29.2-39.12 50.93L3.61 302.63A172.5 172.5 0 0 0 0 336v8c0 75.11 60.89 136 136 136 72.37 0 130.97-56.69 135.19-128h33.61c4.22 71.31 62.82 128 135.19 128 75.11 0 136-60.89 136-136v-8c-.1-11.21-1.32-22.39-3.6-33.37zM136 448c-57.35 0-104-46.65-104-104s46.65-104 104-104 104 46.65 104 104-46.65 104-104 104zm304 0c-57.35 0-104-46.65-104-104s46.65-104 104-104 104 46.65 104 104-46.65 104-104 104z\"]\n};\nvar faGlobe = {\n prefix: 'fal',\n iconName: 'globe',\n icon: [496, 512, [], \"f0ac\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm193.2 152h-82.5c-9-44.4-24.1-82.2-43.2-109.1 55 18.2 100.2 57.9 125.7 109.1zM336 256c0 22.9-1.6 44.2-4.3 64H164.3c-2.7-19.8-4.3-41.1-4.3-64s1.6-44.2 4.3-64h167.4c2.7 19.8 4.3 41.1 4.3 64zM248 40c26.9 0 61.4 44.1 78.1 120H169.9C186.6 84.1 221.1 40 248 40zm-67.5 10.9c-19 26.8-34.2 64.6-43.2 109.1H54.8c25.5-51.2 70.7-90.9 125.7-109.1zM32 256c0-22.3 3.4-43.8 9.7-64h90.5c-2.6 20.5-4.2 41.8-4.2 64s1.5 43.5 4.2 64H41.7c-6.3-20.2-9.7-41.7-9.7-64zm22.8 96h82.5c9 44.4 24.1 82.2 43.2 109.1-55-18.2-100.2-57.9-125.7-109.1zM248 472c-26.9 0-61.4-44.1-78.1-120h156.2c-16.7 75.9-51.2 120-78.1 120zm67.5-10.9c19-26.8 34.2-64.6 43.2-109.1h82.5c-25.5 51.2-70.7 90.9-125.7 109.1zM363.8 320c2.6-20.5 4.2-41.8 4.2-64s-1.5-43.5-4.2-64h90.5c6.3 20.2 9.7 41.7 9.7 64s-3.4 43.8-9.7 64h-90.5z\"]\n};\nvar faGlobeAfrica = {\n prefix: 'fal',\n iconName: 'globe-africa',\n icon: [496, 512, [], \"f57c\", \"M248 8C111.04 8 0 119.03 0 256s111.04 248 248 248 248-111.03 248-248S384.96 8 248 8zm193.21 152H423.5c-17.38 0-31.5 14.12-31.5 31.5l.28 6.47-12.62 6.69c-2.66.48-8.41.66-15.09.97-32.31 1.52-46.88 2.67-52.91 14.61l-4 10.12 18.44 27.61A31.427 31.427 0 0 0 352.29 272l7.72-.5.09 11.02-18.81 25.09a31.937 31.937 0 0 0-5.66 12.97l-4.19 22.56c-10.38 9.5-19.62 20.3-27.47 32.08l-13.03 19.53c-4.66 6.98-16.53 6.33-20.28-1.28a62.926 62.926 0 0 1-6.66-28.09V335.5c0-17.38-14.12-31.5-31.5-31.5h-25.88c-10.31 0-20-4.02-27.31-11.31-7.28-7.3-11.31-17-11.31-27.31v-14.06c0-12.09 5.78-23.66 15.44-30.91l27.62-20.69c10.94-8.27 27.72-10.42 41.31-3.64l14.72 7.36c7.5 3.73 16.03 4.38 24.06 1.7l47.31-15.77a31.466 31.466 0 0 0 21.53-29.88c0-17.38-14.12-31.5-31.5-31.5l-9.72.16-6.94-6.94c-5.94-5.94-13.84-9.22-22.25-9.22l-89.58.51-.38-3.92 14.44-3.61c7.66-1.91 14.25-6.56 18.56-13.06L240.28 80h24.22c17.38 0 31.5-14.12 31.5-31.5v-2.94C359.74 60.1 412.7 102.86 441.21 160zM248 472c-119.1 0-216-96.9-216-216S128.9 40 248 40c5.54 0 10.96.42 16.39.83l.11 7.17h-24.22c-10.53 0-20.34 5.25-26.19 14.02l-7.78 11.92-14.47 3.61C177.81 81.08 168 93.64 168 108.09v4.41c0 17.38 14.12 31.5 31.5 31.5l89.72-.16 6.94 6.94c5.94 5.95 13.84 9.22 22.25 9.22l9.94-.97-46.94 15.78-14.72-7.36c-22.34-11.17-53.38-9.5-74.84 6.67l-27.59 20.69c-17.7 13.27-28.26 34.39-28.26 56.5v14.06c0 18.86 7.34 36.59 20.69 49.94S187.75 336 206.62 336l25.38-.5v29.88c0 14.69 3.47 29.38 10.03 42.42 7.44 14.92 22.44 24.2 39.12 24.2 14.66 0 28.25-7.28 36.41-19.48l13.03-19.55c6.44-9.64 14-18.47 22.41-26.17 5.09-4.62 8.47-10.66 9.75-17.45l4.22-22.62 18.75-25c4.06-5.42 6.28-12.12 6.28-18.89V271.5c0-17.38-14.12-31.5-31.5-31.5l-7.78.2-1.22-1.83c5.38-.34 10.81-.61 14.53-.78 15.88-.73 20.66-1.05 25.16-3.3l15.41-7.7c10.75-5.38 17.41-16.17 17.41-28.17l-.5-6.42h30.81c6.29 20.23 9.69 41.73 9.69 64C464 375.1 367.1 472 248 472z\"]\n};\nvar faGlobeAmericas = {\n prefix: 'fal',\n iconName: 'globe-americas',\n icon: [496, 512, [], \"f57d\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm215.72 253.45l-42.82-10.71c-1.97-.5-3.66-1.67-4.75-3.33l-17.97-26.97a8.05 8.05 0 0 1 0-8.88l19.59-29.39c.78-1.16 1.81-2.09 3.06-2.7l23.97-11.99C457.03 194.53 464 224.44 464 256c0 1.84-.23 3.62-.28 5.45zM32 256c0-11.92 1.22-23.53 3.09-34.93 7.16 10.6 14.52 21.46 19.91 29.36 5.88 8.67 12.81 16.61 21.38 24.34 10.72 9.69 22.56 17.83 35.16 24.16 13.81 6.97 34.06 17.95 48.28 25.83 5.03 2.8 8.19 8.16 8.19 13.97v32.02c0 12.81 5 24.88 14.06 33.94 12.66 12.66 18.91 31.67 17.94 39.94v21.81C103.95 444.53 32 358.59 32 256zm199.92 215.19l-.08-24.44c2.5-18.58-9.44-46.98-27.16-64.69-2.97-2.98-4.69-7.11-4.69-11.31v-32.02c0-17.47-9.47-33.55-24.72-41.97-14.5-8.03-35.19-19.27-49.34-26.41-10.06-5.05-19.53-11.56-28.94-20.05a100.36 100.36 0 0 1-15.56-17.89c-9.66-14.19-25.54-37.72-35.4-52.35 25.98-68.87 85.98-121.14 159.56-135.85L257.38 96l-15.03 15.03c-9.03 9.03-9.34 23.53-.94 32.94l-5.72.03c-6.25 0-12.19 2.41-16.72 6.8l-9.91 9.64c-7.56 7.3-9.47 18.53-4.75 27.95l4 7.98c-6.94-2.75-14.78-3.12-22.03-.66l-31.19 10.39A27.893 27.893 0 0 0 136 232.6c0 10.66 5.91 20.23 15.44 25l11.09 5.55c10.72 5.36 22.62 8.38 34.62 8.8 2.38 2.3 6.25 7.56 8.69 10.89 5.91 8.08 11.5 15.72 19 19.47l3.38 1.69h70.53c4.22 0 8.34 1.7 11.31 4.69l13.69 13.69a14.66 14.66 0 0 1 4.25 10.27c0 8.05-3.28 15.92-9.06 21.66l-11.34 11.33a39.93 39.93 0 0 0-10.25 17.88l-1.12 4.41c-.94 3.69-1.84 7.38-3.19 11l-26.78 72.17c-6.03.51-12.09.92-18.25.92-5.44-.02-10.76-.44-16.09-.83zm70.82-6.49L323 410.09c1.78-4.7 3.03-9.53 4.25-14.36l1.03-4.05c.34-1.31 1.06-2.55 4.09-5.58l9.19-9.16c11.72-11.64 18.44-27.8 18.44-44.31 0-12.25-4.97-24.23-13.62-32.89l-13.69-13.69c-8.94-8.94-21.31-14.06-33.94-14.06h-60.94c-1.91-2.23-4.34-5.59-6.16-8.06C223.44 252.72 214.12 240 200 240c-8 0-16-1.89-23.16-5.47l-2.34-1.17 21.91-7.3 9.28 8.06c4.38 3.78 9.94 5.88 15.72 5.88h5.66c8.38 0 16-4.25 20.41-11.39 4.41-7.12 4.81-15.86 1.06-23.34l-12.97-25.95 3.38-3.31h5.75c6.41 0 12.44-2.5 16.97-7.03l8-8c9.03-9.03 9.34-23.53.94-32.94l9.41-9.41c6.03-6.05 9.38-14.08 9.38-22.62s-3.34-16.58-9.38-22.62l-33.31-33.31c.44 0 .87-.07 1.31-.07 76.13 0 143.04 39.68 181.52 99.35l-22.98 11.49a39.974 39.974 0 0 0-15.38 13.58l-19.59 29.39c-9 13.48-9 30.89 0 44.38l17.97 26.97c5.53 8.28 13.88 14.17 23.59 16.61l47.38 11.84c-14.72 83.15-77.04 149.87-157.79 171.08z\"]\n};\nvar faGlobeAsia = {\n prefix: 'fal',\n iconName: 'globe-asia',\n icon: [496, 512, [], \"f57e\", \"M248 8C111.04 8 0 119.03 0 256s111.04 248 248 248 248-111.03 248-248S384.96 8 248 8zm0 32c18.88 0 37.09 2.68 54.55 7.25l-51.93 43.78c-7.12 4.72-11.19 12.94-10.69 21.44.53 8.53 5.62 16.19 13.25 20.02l10.81 5.41v64.19c-1.75-.55-3.56-.88-5.44-.94-7.12 0-14.47 3.56-18.25 9.91L222.62 240c-8.53 0-16.59 3.33-22.62 9.38l-5.66 5.66c-4.53 4.53-7.03 10.56-7.03 16.97s2.5 12.44 7.03 16.97l5.66 5.66V304h-22.12l-22.59-45.23a23.997 23.997 0 0 0-17.66-12.95c-7.38-1.23-15.38 1.28-20.78 6.72L97.38 272H32.81c-.39-5.3-.81-10.6-.81-16 0-119.1 96.9-216 216-216zM37.56 304h59.81c8.53 0 16.59-3.33 22.62-9.38l11.62-11.61 17.62 35.31c5.47 10.91 16.44 17.67 28.62 17.67H200c17.66 0 32-14.36 32-32v-9.38c0-8.34-3.34-16.53-9.22-22.47l.16-.16c11.19 0 21.72-5.97 27.44-15.53l10.84-18.06c3.16 1.03 6.75 1.59 10.78 1.59 13.22 0 24-10.77 24-24v-78.11c0-12.16-6.72-23.09-17.56-28.56l59.07-49.67C412.01 93.76 464 168.84 464 256c0 22.71-3.57 44.58-10.09 65.16-1.32-1.77-2.38-3.7-3.96-5.29l-4.88-4.88V308c0-19.85-16.15-36-36-36H403c-5.5 0-10.79 1.27-15.55 3.57a40.04 40.04 0 0 0-16.56-3.57H358.8c-8.37 0-16.39 2.57-23.21 7.42l-23.72 16.9-38.25 15.14c-15.28 6.11-25.14 20.69-25.14 37.14v10.21c0 10.68 4.16 20.73 11.71 28.28L272.11 399c9.06 9.06 21.12 14.06 33.94 14.06h10.34c3.92 0 7.84-.48 11.64-1.43l18.39-4.6 10.91 10.91c5.38 5.38 11.89 9.13 18.93 11.45C340.34 456.03 296.06 472 248 472c-102.59 0-188.53-71.95-210.44-168zM409 399.49c-.87.14-1.68.51-2.57.51h-15.16c-4.24 0-8.31-1.69-11.31-4.69l-13.01-13.01a26.78 26.78 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.89a8.05 8.05 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.17 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.31v18.75A216.64 216.64 0 0 1 409 399.49z\"]\n};\nvar faGlobeEurope = {\n prefix: 'fal',\n iconName: 'globe-europe',\n icon: [496, 512, [], \"f7a2\", \"M184 119.2c0-7-5.7-12.7-12.7-12.7h-.1c-3.4 0-6.6 1.3-8.9 3.7l-28.5 28.5c-2.4 2.4-3.7 5.6-3.7 8.9v.1c0 7 5.7 12.7 12.7 12.7h18c3.4 0 6.6-1.3 8.9-3.7l10.5-10.5c2.4-2.4 3.7-5.6 3.7-8.9v-18.1zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm48 458.4V432c0-26.5-21.5-48-48-48h-20.2c-3.9 0-13.1-3.1-16.2-5.4l-22.2-16.7c-3.4-2.5-5.4-6.6-5.4-10.8v-23.9c0-4.7 2.5-9.1 6.5-11.6l42.9-25.7c2.1-1.3 4.5-1.9 6.9-1.9h31.2c3.2 0 6.3 1.2 8.8 3.2l52.2 44.8h30.2l17.3 17.3c9.5 9.5 22.1 14.7 35.5 14.7h16.8c-29.9 49.1-78.7 85.3-136.3 98.4zM448.5 336h-32.9c-4.8 0-9.5-1.9-12.9-5.3l-17.3-17.3c-6-6-14.1-9.4-22.6-9.4h-18.3l-43.2-37.1c-8.2-7.1-18.7-10.9-29.6-10.9h-31.2c-8.2 0-16.3 2.2-23.4 6.5l-42.9 25.7c-13.7 8.2-22.1 23-22.1 39v23.9c0 14.3 6.7 27.8 18.2 36.4l22.2 16.7c8.6 6.5 24.6 11.8 35.4 11.8h20.2c8.8 0 16 7.2 16 16v39.2c-5.3.4-10.6.8-16 .8-119.1 0-216-96.9-216-216 0-118.9 96.5-215.6 215.3-216L232 51.1c-10.2 7.7-16 19.2-16 31.4v23.2c0 6.4 3.1 17 5.9 22.3-.8 2.1-21.1 15-24.6 18.5-8.6 8.6-13.3 20-13.3 32.1V195c0 25 20.4 45.4 45.4 45.4h25.3c11 0 21.2-3.9 29.2-10.6 3.9 1.4 8.2 2.1 12.6 2.1h13.4c25.6 0 32.2-20.2 36.1-21.5 5.1 9.1 13.5 16.2 23.5 19.5-4.3 14.2-.9 30.3 10.1 41.6l18.2 19.1c8.7 8.9 20.6 13.9 32.7 13.9h27.7c-2.4 10.8-5.7 21.3-9.7 31.5zm-17.8-63.6c-3.6 0-7.1-1.5-9.6-4L402.6 249a9.93 9.93 0 0 1 .1-14c12.6-12.6 10.5-8.6 10.5-17.8 0-2.5-1-4.9-2.8-6.7l-7.9-7.9c-1.8-1.8-4.2-2.8-6.7-2.8h-13.4c-8.5 0-12.6-10.3-6.7-16.2l7.9-7.3c1.8-1.8 4.2-2.8 6.7-2.8h8.3c5.2 0 9.5-4.2 9.5-9.5v-10.2c0-5.2-4.2-9.5-9.5-9.5h-28.2c-7.4 0-13.4 6-13.4 13.4v5.6c0 5.8-3.7 10.9-9.2 12.7l-26.5 8.8c-4.3 1.4-4.6 5-4.6 8.2 0 3.7-3 6.7-6.7 6.7h-13.4c-3.7 0-6.7-3-6.7-6.7 0-8.4-12.5-8.6-15.3-3-9 12.4-11.5 18.2-19.9 18.2h-25.3c-7.4 0-13.4-6-13.4-13.4v-16.4c0-3.6 1.4-7 3.9-9.5 19.5-14 29.6-17.6 29.6-31.5 0-2.9 1.8-5.5 4.6-6.4l33.6-11.2c1.4-.5 2.7-1.2 3.7-2.3L313.9 95c5-5 3.5-14.9-6.7-14.9h-17.4L276.4 99v6.7c0 3.7-3 6.7-6.7 6.7h-15c-3.7 0-6.7-3-6.7-6.7V82.5c0-2.1 1-4.1 2.7-5.4l44-31.9C391.4 66.7 464 153 464 256c0 5.5-.4 11-.8 16.4h-32.5z\"]\n};\nvar faGlobeSnow = {\n prefix: 'fal',\n iconName: 'globe-snow',\n icon: [448, 512, [], \"f7a3\", \"M224 96c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm-112 80c0-8.8-7.2-16-16-16s-16 7.2-16 16 7.2 16 16 16 16-7.2 16-16zm208-16c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm43.3 239c51.5-41 84.7-104 84.7-175C448 100.3 347.7 0 224 0S0 100.3 0 224c0 71 33.2 134 84.7 175l-46.3 61.8C22.6 481.9 37.6 512 64 512h320c26.4 0 41.4-30.1 25.6-51.2L363.3 399zM32 224c0-105.9 86.1-192 192-192s192 86.1 192 192c0 66.7-34.3 125.6-86.1 160H240v-32h80c12.3 0 23.5-7 28.8-18.1 5.3-11.1 3.8-24.2-3.8-33.8l-19.7-24.6c1.3-1.7 2.4-3.5 3.3-5.4 5.3-11 3.9-24.2-3.7-33.8L249.1 140c-6.1-7.7-15.3-12.2-25.1-12.2s-19.1 4.5-25.1 12.2l-76 96.3c-7.6 9.6-9 22.8-3.6 33.8.9 1.9 2.1 3.7 3.3 5.4L103 300c-7.7 9.6-9.2 22.8-3.8 33.8C104.5 345 115.7 352 128 352h80v32h-89.9C66.3 349.6 32 290.7 32 224zm116 32.1l76-96.3 75.9 96.2h-31l51.1 64h-80v-88c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v88h-80l51.1-64-31.1.1zM64 480l48-64h224l48 64H64z\"]\n};\nvar faGlobeStand = {\n prefix: 'fal',\n iconName: 'globe-stand',\n icon: [448, 512, [], \"f5f6\", \"M360.21 480H240.14v-50.41c50.37-6.61 99.04-29.15 137.79-67.89 87.21-87.16 92.85-224.41 17.84-318.61l18.14-18.12a7.985 7.985 0 0 0 0-11.31L402.58 2.34a8.015 8.015 0 0 0-11.32 0l-39.45 39.43c1.14 1.09 2.36 2.04 3.48 3.15 39.31 39.29 60.96 91.52 60.96 147.08s-21.65 107.79-60.96 147.08C315.98 378.36 263.71 400 208.12 400s-107.86-21.64-147.17-60.92c-1.11-1.11-2.07-2.34-3.15-3.47L2.35 391.03a7.985 7.985 0 0 0 0 11.31l11.32 11.31a8.015 8.015 0 0 0 11.32 0l34.14-34.12c43.54 34.62 96.26 51.83 149 51.97V480H88.04c-13.26 0-24.01 10.74-24.01 24 0 4.42 3.58 8 8 8h304.19c4.42 0 8-3.58 8-8 .01-13.26-10.74-24-24.01-24zM208.12 368c45.07 0 90.14-17.18 124.53-51.55 68.77-68.73 68.77-180.17 0-248.9C298.26 33.18 253.19 16 208.12 16S117.98 33.18 83.59 67.55c-68.77 68.73-68.77 180.17 0 248.9C117.98 350.82 163.05 368 208.12 368zM106.23 90.18C133.45 62.98 169.63 48 208.12 48s74.67 14.98 101.89 42.18c27.21 27.2 42.2 63.36 42.2 101.82 0 38.46-14.99 74.62-42.2 101.82-27.22 27.2-63.4 42.18-101.89 42.18s-74.67-14.98-101.89-42.18c-27.21-27.2-42.2-63.36-42.2-101.82 0-38.46 14.99-74.62 42.2-101.82z\"]\n};\nvar faGolfBall = {\n prefix: 'fal',\n iconName: 'golf-ball',\n icon: [416, 512, [], \"f450\", \"M416 208C416 91.7 320.5-2.3 203.7 0 91.6 2.3.9 94.2 0 206.3-.5 273.5 31 333 80 371.4V416c0 26.5 21.5 48 48 48 7.3 0 32-4 32 16v26c0 3.3 2.7 6 6 6h20c3.3 0 6-2.7 6-6v-26c0-26.5-21.5-48-48-48-7.3 0-32 4-32-16v-16h192v16c0 20-24.6 16-32 16-26.5 0-48 21.5-48 48v26c0 3.3 2.7 6 6 6h20c3.3 0 6-2.7 6-6v-26c0-20 24.6-16 32-16 26.5 0 48-21.5 48-48v-44.6c48.6-38 80-96.9 80-163.4zm-384 0c0-97 79-176 176-176s176 79 176 176c0 71-42.4 132.2-103.1 160H135.1C74.4 340.2 32 279 32 208zm240 14.9c0 18.3-14.8 33.1-33.1 33.1-14.4 0-26.3-9.3-30.9-22.1 26.3 9.4 51.5-15.2 41.9-41.9 12.8 4.6 22.1 16.5 22.1 30.9zm80 16c0 18.3-14.8 33.1-33.1 33.1-14.4 0-26.3-9.3-30.9-22.1 26.3 9.4 51.5-15.2 41.9-41.9 12.8 4.6 22.1 16.5 22.1 30.9zm-64 64c0 18.3-14.8 33.1-33.1 33.1-14.4 0-26.3-9.3-30.9-22.1 26.3 9.4 51.5-15.2 41.9-41.9 12.8 4.6 22.1 16.5 22.1 30.9z\"]\n};\nvar faGolfClub = {\n prefix: 'fal',\n iconName: 'golf-club',\n icon: [640, 512, [], \"f451\", \"M633.2 6.4l-10.8-5.2c-6-2.9-13.1-.4-16 5.6L473 280.7C44 200.2 72.8 205.1 63.9 205.1c-34.5 0-63.9 28-63.9 64V448c0 35.3 28.7 64 64 64h299.1c24.6 0 47-14.1 57.7-36.3l218-453.3c2.9-5.9.4-13.1-5.6-16zm-183.9 323L393.5 444c-10.7 22-33.1 36-57.5 36H64c-17.7 0-32-14.3-32-32v-16h88c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H32v-64h88c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H32v-34.9c0-17.7 14.3-32 31.9-32 4.5 0-19.7-4.3 374 69.6 10.4 1.9 16.1 13.2 11.4 22.7z\"]\n};\nvar faGopuram = {\n prefix: 'fal',\n iconName: 'gopuram',\n icon: [512, 512, [], \"f664\", \"M277.3 416h-42.7c-23.6 0-42.7 19.1-42.7 42.7V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-45.3c0-5.9 4.8-10.7 10.7-10.7h42.7c5.9 0 10.7 4.8 10.7 10.7V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-45.3c0-23.6-19.1-42.7-42.7-42.7zM496 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 16v136c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V384h64v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V384h256v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V384h64v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V368c0-8.8-7.2-16-16-16zM128 64h256v64H128zm133.3 128h-10.7c-5.9 0-10.7 4.8-10.7 10.7V224h-48v-64h128v64h-48v-21.3c.1-5.9-4.7-10.7-10.6-10.7zM128 352H64v-96h64zm32-128H96v-64h64zm112 128h-32v-26.7c0-3 2.4-5.3 5.3-5.3h21.3c3 0 5.3 2.4 5.3 5.3V352zm80 0h-48v-26.7c0-20.6-16.8-37.3-37.3-37.3h-21.3c-20.6 0-37.3 16.8-37.3 37.3V352h-48v-96h192v96zm0-128v-64h64v64zm96 128h-64v-96h64z\"]\n};\nvar faGraduationCap = {\n prefix: 'fal',\n iconName: 'graduation-cap',\n icon: [640, 512, [], \"f19d\", \"M612.16 153.99l-265-85.68c-17.81-5.75-36.5-5.75-54.31 0l-265 85.68C10.94 159.46 0 174.38 0 192s10.94 32.54 27.84 38.01l29.71 9.6c-3.3 6.18-5.74 12.83-7.33 19.8C39.53 264.59 32 275.32 32 288c0 12.73 7.57 23.52 18.33 28.67L32.28 428.53C30.67 438.52 36.19 448 43.62 448h40.75c7.43 0 12.96-9.48 11.34-19.47L77.67 316.67C88.43 311.52 96 300.73 96 288c0-10.6-5.49-19.54-13.43-25.37 1.49-4.66 3.8-8.86 6.57-12.81l53.47 17.29L128 384c0 35.35 85.96 64 192 64s192-28.65 192-64l-14.61-116.89L612.16 230c16.9-5.46 27.84-20.38 27.84-38s-10.94-32.54-27.84-38.01zM479.48 381.86C468.72 393.19 414.04 416 320 416c-94.04 0-148.72-22.81-159.48-34.14l13.09-104.73 119.24 38.55c2.6.84 25.72 9.23 54.31 0l119.24-38.55 13.08 104.73zm122.8-182.28l-265 85.68c-11.31 3.66-23.25 3.66-34.56 0l-175.67-56.8 195.89-36.74c8.69-1.62 14.41-9.98 12.78-18.67-1.62-8.7-10.16-14.39-18.66-12.77l-203.78 38.2c-12.4 2.32-23.51 7.65-33.08 14.83l-42.49-13.74c-7.85-2.55-7.46-12.74 0-15.15l265-85.68c15.1-4.88 27.84-2.17 34.56 0l265 85.68c7.39 2.39 7.91 12.6.01 15.16z\"]\n};\nvar faGramophone = {\n prefix: 'fal',\n iconName: 'gramophone',\n icon: [384, 512, [], \"f8bd\", \"M45.51 314.12a32 32 0 0 0 36.57.28c59.69-40.87 119.58-66.14 178-75 1.45-.18 75.92-10.49 75.92 40.6a40 40 0 0 1-40 40H192a32 32 0 0 0-32 32h130.41c36.73 0 70.27-25.2 76.48-61.4 7.82-45.66-10.28-55.79-88.76-118.51C232 135.21 192.72 83.42 161.45 18.17A32 32 0 0 0 132.61 0a29.52 29.52 0 0 0-3 .14 32 32 0 0 0-28 23.58l-68.59 256a32 32 0 0 0 12.49 34.4zM132.57 32C166 101.63 208.2 157.17 258.15 197.09l11.32 9c-4.58.4-9.32 1-14.18 1.7C192.06 217.4 127.7 244.38 64 288zM376 480h-24v-64a32 32 0 0 0-32-32H64a32 32 0 0 0-32 32v64H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm-56 0H64v-64h256z\"]\n};\nvar faGreaterThan = {\n prefix: 'fal',\n iconName: 'greater-than',\n icon: [320, 512, [], \"f531\", \"M320 250.17c0-3.02-1.7-5.78-4.4-7.14L25.87 96.85c-3.95-1.98-8.76-.37-10.73 3.58L.84 129.05a8.006 8.006 0 0 0 3.58 10.73L236.87 256 4.42 372.22C.47 374.19-1.13 379 .84 382.95l14.29 28.62c1.97 3.95 6.78 5.56 10.73 3.58l289.71-144.92a8.007 8.007 0 0 0 4.42-7.15v-12.91z\"]\n};\nvar faGreaterThanEqual = {\n prefix: 'fal',\n iconName: 'greater-than-equal',\n icon: [384, 512, [], \"f532\", \"M32.84 318.95l14.29 28.62a7.986 7.986 0 0 0 10.73 3.58l289.71-144.92a7.996 7.996 0 0 0 4.42-7.15v-12.91c0-3.02-1.7-5.78-4.4-7.14L57.87 32.85c-3.95-1.98-8.76-.37-10.73 3.58l-14.3 28.62a8.006 8.006 0 0 0 3.58 10.73L268.87 192 36.42 308.22a8.006 8.006 0 0 0-3.58 10.73zM376 432H8c-4.42 0-8 3.58-8 8v32c0 4.42 3.58 8 8 8h368c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8z\"]\n};\nvar faGrimace = {\n prefix: 'fal',\n iconName: 'grimace',\n icon: [496, 512, [], \"f57f\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm-80-232c17.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 32H152c-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\"]\n};\nvar faGrin = {\n prefix: 'fal',\n iconName: 'grin',\n icon: [496, 512, [], \"f580\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm123.1-151.2C340.9 330.5 296 336 248 336s-92.9-5.5-123.1-15.2c-5.3-1.7-11.1-.5-15.3 3.1-4.2 3.7-6.2 9.2-5.3 14.8 9.2 55 83.2 93.3 143.8 93.3s134.5-38.3 143.8-93.3c.9-5.5-1.1-11.1-5.3-14.8-4.3-3.7-10.2-4.9-15.5-3.1zM248 400c-35 0-77-16.3-98.5-40.3 57.5 10.8 139.6 10.8 197.1 0C325 383.7 283 400 248 400zm-80-160c17.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\"]\n};\nvar faGrinAlt = {\n prefix: 'fal',\n iconName: 'grin-alt',\n icon: [496, 512, [], \"f581\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm-63.7-216c12.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 0zm160 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 0zm26.8 64.8C340.9 330.5 296 336 248 336s-92.9-5.5-123.1-15.2c-5.3-1.7-11.2-.5-15.3 3.1-4.2 3.7-6.2 9.2-5.3 14.8 9.2 55 83.2 93.3 143.8 93.3s134.5-38.3 143.8-93.3c.9-5.5-1.1-11.1-5.3-14.8-4.3-3.7-10.2-4.9-15.5-3.1zM248 400c-35 0-77-16.3-98.5-40.3 57.5 10.8 139.6 10.8 197.1 0C325 383.7 283 400 248 400z\"]\n};\nvar faGrinBeam = {\n prefix: 'fal',\n iconName: 'grin-beam',\n icon: [496, 512, [], \"f582\", \"M117.7 247.7c3.4 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.4 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.3zm93.4 73.1C340.9 330.5 296 336 248 336s-92.9-5.5-123.1-15.2c-5.3-1.7-11.1-.5-15.3 3.1-4.2 3.7-6.2 9.2-5.3 14.8 9.2 55 83.2 93.3 143.8 93.3s134.5-38.3 143.8-93.3c.9-5.5-1.1-11.1-5.3-14.8-4.3-3.7-10.2-4.9-15.5-3.1zM248 400c-35 0-77-16.3-98.5-40.3 57.5 10.8 139.6 10.8 197.1 0C325 383.7 283 400 248 400zm0-392C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216z\"]\n};\nvar faGrinBeamSweat = {\n prefix: 'fal',\n iconName: 'grin-beam-sweat',\n icon: [504, 512, [], \"f583\", \"M277.7 247.7c3.4 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.3zm-160 0c3.4 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.3zm253.4 73.1C340.9 330.5 296 336 248 336s-92.9-5.5-123.1-15.2c-5.3-1.7-11.1-.5-15.3 3.1-4.2 3.7-6.2 9.2-5.3 14.8 9.2 55 83.2 93.3 143.8 93.3s134.5-38.3 143.8-93.3c.9-5.5-1.1-11.1-5.3-14.8-4.3-3.7-10.2-4.9-15.5-3.1zM248 400c-35 0-77-16.3-98.5-40.3 57.5 10.8 139.6 10.8 197.1 0C325 383.7 283 400 248 400zm256-282.7c0-27.2-28-72.9-51.4-106.4C448.8 5.4 440.4 0 432 0c-8.4 0-16.8 5.4-20.6 10.8-8.4 12-17.3 25.5-25.3 39.2-39.5-26.5-87-42-138.1-42C111 8 0 119 0 256s111 248 248 248 248-111 248-248c0-29.6-5.5-57.9-15-84.3 14.1-13.6 23-32.9 23-54.4zM248 472c-119.1 0-216-96.9-216-216S128.9 40 248 40c45.7 0 88 14.4 123 38.7-6.6 14.5-11 28-11 38.6 0 41.2 32.3 74.7 72 74.7 7.4 0 14.3-1.5 21-3.6 7 21.3 11 44 11 67.6 0 119.1-96.9 216-216 216zm184-312c-22.1 0-40-19.2-40-42.7 0-12.9 15.5-43.8 40-79.9 24.5 36.2 40 67 40 79.9 0 23.5-17.9 42.7-40 42.7z\"]\n};\nvar faGrinHearts = {\n prefix: 'fal',\n iconName: 'grin-hearts',\n icon: [496, 512, [], \"f584\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm123.1-151.2C340.9 330.5 296 336 248 336s-92.9-5.5-123.1-15.2c-11.6-3.7-22.6 6.3-20.7 17.9 9.2 55 83.2 93.3 143.8 93.3s134.5-38.3 143.8-93.3c1.9-11.6-9-21.6-20.7-17.9zM248 400c-35 0-77-16.3-98.5-40.3 57.5 10.8 139.6 10.8 197.1 0C325 383.7 283 400 248 400zm-61.8-128.8c14.3 3.7 27.2-5.5 30.5-17.6l20.5-73.9c4.1-14.7 1.7-30.4-6.5-43.2-8.2-12.8-21.6-21.5-36.8-23.9-25.2-4.1-49.4 10.7-59.3 34-25.2-3-50.2 11-59.1 34.3-5.5 14.4-4.7 30.3 2.3 43.8 6.9 13.5 19.4 23.4 34.2 27.2l74.2 19.3zm-80.7-78.8c5.2-13.8 20.4-15.5 28.5-13.4l22.8 5.9 6.2-22.7c3.3-11.9 14.7-19.7 25.9-18 13.1 2.1 20.9 14.6 17.5 27l-18.7 67.3-67.6-17.5c-12.1-3.1-19.4-15.9-14.6-28.6zM420.4 181c-8.9-23.3-34.1-37.3-59-34.3-9.9-23.3-34.7-38.2-59.3-34-15.2 2.4-28.6 11.1-36.8 23.9-8.2 12.8-10.6 28.5-6.5 43.2l20.4 73.8c3.4 12.3 16.5 21.3 30.5 17.6l74.2-19.2a53.47 53.47 0 0 0 34.2-27.2c6.9-13.5 7.8-29.5 2.3-43.8zm-44.5 40l-67.7 17.5-18.7-67.3c-3.4-12.3 4.4-24.9 17.5-27 13.7-2.2 23.4 9 25.8 17.9l6.2 22.7 23-5.8c12-3.1 24.5 2.8 28.5 13.4 4.8 12.7-2.5 25.5-14.6 28.6z\"]\n};\nvar faGrinSquint = {\n prefix: 'fal',\n iconName: 'grin-squint',\n icon: [496, 512, [], \"f585\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zM118.9 263.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.5-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.9-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 48zm9.3 54.5C340.9 330.5 296 336 248 336s-92.9-5.5-123.1-15.2c-5.3-1.7-11.2-.5-15.3 3.1-4.2 3.7-6.2 9.2-5.3 14.8 9.2 55 83.2 93.3 143.8 93.3s134.5-38.3 143.8-93.3c.9-5.5-1.1-11.1-5.3-14.8-4.3-3.7-10.2-4.9-15.5-3.1zM248 400c-35 0-77-16.3-98.5-40.3 57.5 10.8 139.6 10.8 197.1 0C325 383.7 283 400 248 400z\"]\n};\nvar faGrinSquintTears = {\n prefix: 'fal',\n iconName: 'grin-squint-tears',\n icon: [512, 512, [], \"f586\", \"M402 206.1c-5.6.4-10.5 3.7-13.1 8.6-14.6 28.3-42.4 63.9-76.3 97.8-33.9 34-69.6 61.8-97.8 76.3-5 2.5-8.3 7.5-8.7 13.1-.4 5.6 2.2 10.9 6.7 14.2 14.3 10.2 32.1 14.7 51 14.7 41 0 87.4-21 116.7-50.4 42.9-42.8 68-122.2 35.7-167.7-3.3-4.5-9-7.1-14.2-6.6zm-44.2 151.7c-24.8 24.7-64.9 43.1-98.2 41.1 24.1-16.5 50.4-38.6 75.5-63.8 25.1-25.1 47.3-51.4 63.8-75.5 1.8 32.2-16.3 73.5-41.1 98.2zM207.9 236.2c-3-3-7.3-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.9 8.6.4 11.9-6.2 12.6-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.7-.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.2zm243.6-86.5c28.1-28.2 27.7-74.3-.9-102.9-29.2-29.2-75.3-28.3-102.9-.8-4.5 4.5-8.5 10.9-12.1 18.5C338.2 18.9 297.2 8 256 8 192.5 8 129 32.2 80.6 80.6c-79.9 79.9-93 200.4-41 294.6-8 3.8-14.4 7.8-18.7 12.2-28.1 28.2-27.7 74.3.9 102.9 28.5 28.5 74.5 29.2 102.9.8 4.5-4.5 8.5-10.9 12.1-18.5 37 20.5 78 31.4 119.2 31.4 63.5 0 127-24.2 175.4-72.6 79.9-79.9 93-200.3 41-294.6 8-3.8 14.4-7.9 18.8-12.2zM410 43.5c7.4-7.4 17.4-11.5 28-11.5h.4c11 .1 21.3 4.5 29.2 12.4 16.1 16.1 16.5 42 .9 57.6-6.6 6.6-32.3 16.8-83.3 24.8 8-51 18.2-76.7 24.8-83.3zm-308 425c-15.7 15.7-41.5 15.3-57.6-.8s-16.5-42-.9-57.6c6.6-6.6 32.3-16.8 83.3-24.8-8 50.8-18.2 76.6-24.8 83.2zm306.8-59.8C368 449.5 313.7 472 256 472c-38.8 0-75.8-10.8-108.4-29.9 5.4-19.7 9.4-41.6 12.2-60.9 1.2-8-1.5-15.9-7.2-21.7-5.8-5.8-13.7-8.4-21.7-7.3-23.8 3.4-43.9 7.5-60.6 12-48.1-82.7-37.7-190.3 33-261C144 62.4 198.3 40 256 40c38.8 0 75.8 10.8 108.4 29.9-5.4 19.7-9.4 41.6-12.2 60.9-1.2 8 1.5 15.9 7.2 21.7 4.9 4.9 11.3 7.5 18 7.5 1.2 0 2.4-.1 3.7-.3 23.8-3.4 43.9-7.5 60.6-12 48.2 82.6 37.8 190.3-32.9 261z\"]\n};\nvar faGrinStars = {\n prefix: 'fal',\n iconName: 'grin-stars',\n icon: [496, 512, [], \"f587\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm123.1-151.2C340.9 330.5 296 336 248 336s-92.9-5.5-123.1-15.2c-11.6-3.7-22.6 6.3-20.7 17.9 9.2 55 83.2 93.3 143.8 93.3s134.5-38.3 143.8-93.3c1.9-11.6-9-21.6-20.7-17.9zM248 400c-35 0-77-16.3-98.5-40.3 57.5 10.8 139.6 10.8 197.1 0C325 383.7 283 400 248 400zm162.1-252l-35.3-5.1-15.8-32.1c-9.5-18.8-36.3-18.9-45.9 0l-15.8 32.1-35.5 5.1c-5.4.8-10 3.6-13.8 7.4-3.8-3.8-8.4-6.6-13.9-7.4l-35.3-5.1-15.8-32.1c-9.5-18.8-36.3-18.9-45.9 0l-15.8 32.1-35.5 5.1c-20.2 3-29.6 28.2-14.1 43.7l25.7 24.9-6.1 35.6c-3.4 21.4 19.2 36.3 36.9 26.5l31.8-16.5 31.5 16.3c18.5 10.2 40.6-5.2 37.2-26.6l-6.1-35.4L248 192l25.4 24.6-6.1 35.6c-3.4 21.4 19.2 36.3 36.9 26.5l31.8-16.5 31.5 16.3c18.5 10.2 40.6-5.2 37.2-26.6l-6.1-35.4 25.9-25.1c14.9-14.9 6.3-40.3-14.4-43.4zm-221.9 57.5l6.7 38.9-34.9-18.2-34.9 18.1 6.7-38.9-28.5-27.7 39.2-5.6 17.5-35.5 17.5 35.5 39.2 5.6-28.5 27.8zm176 0l6.7 38.9-34.9-18.2-34.9 18.1 6.7-38.9-28.5-27.7 39.2-5.6 17.5-35.5 17.5 35.5 39.2 5.6-28.5 27.8z\"]\n};\nvar faGrinTears = {\n prefix: 'fal',\n iconName: 'grin-tears',\n icon: [640, 512, [], \"f588\", \"M349.7 247.7c3.4 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.3zm93.4 73.1C412.9 330.5 368 336 320 336s-92.9-5.5-123.1-15.2c-5.3-1.7-11.1-.5-15.3 3.1-4.2 3.7-6.3 9.2-5.3 14.8 9.3 55 83.2 93.3 143.8 93.3s134.5-38.3 143.8-93.3c.9-5.5-1.1-11.1-5.3-14.8-4.3-3.7-10.1-4.9-15.5-3.1zM320 400c-35 0-77-16.3-98.5-40.3 57.5 10.8 139.6 10.8 197.1 0C397 383.7 355 400 320 400zM189.7 247.7c3.4 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.3zm429.5 11.7c-9.2-9.2-26.8-17.2-52.4-23.9C556.3 108.1 450 8 320 8S83.7 108.1 73.2 235.4c-25.6 6.7-43.2 14.7-52.4 23.9-28.1 28.2-27.7 74.3.9 102.9 11.8 11.8 44.2 32.9 82.7 14.7 42.5 75.5 122.7 127 215.5 127s173.1-51.5 215.5-127c38.4 18.1 70.8-2.8 82.7-14.7 28.8-28.5 29.2-74.7 1.1-102.8zM102 340.5c-15.5 15.5-41.4 15.5-57.7-.9-16.1-16.1-16.5-42-.9-57.6 6.6-6.6 32.3-16.8 83.3-24.8-7.9 51-18.1 76.7-24.7 83.3zM320 472c-82.6 0-154.1-46.9-190.4-115.2 15.6-22.2 25-67.5 30.1-103.6 1.2-8-1.5-15.9-7.2-21.7-5.8-5.8-13.7-8.4-21.7-7.3-8.7 1.3-16.8 2.6-24.6 4C119.9 122.3 210.3 40 320 40s200.1 82.3 213.8 188.3c-7.8-1.4-15.9-2.8-24.6-4-7.9-1.1-15.9 1.5-21.7 7.3-5.8 5.8-8.4 13.6-7.2 21.7 5.2 36.1 14.5 81.4 30.1 103.6C474.1 425.1 402.6 472 320 472zm275.7-132.4c-16.4 16.5-42.3 16.2-57.6.8-6.6-6.6-16.8-32.3-24.8-83.3 51 8 76.7 18.2 83.3 24.8 15.6 15.8 15.2 41.6-.9 57.7z\"]\n};\nvar faGrinTongue = {\n prefix: 'fal',\n iconName: 'grin-tongue',\n icon: [496, 512, [], \"f589\", \"M168 176c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zM248 8C111 8 0 119 0 256c0 121.1 86.8 221.8 201.6 243.5 13.8 7.7 29.5 12.5 46.4 12.5s32.6-4.8 46.4-12.5C409.2 477.8 496 377.1 496 256 496 119 385 8 248 8zm64 408c0 35.6-29.1 64.5-64.9 64-35.1-.5-63.1-29.8-63.1-65v-31c18.9-9.5 22.7-12.2 32-12.2h.3c9.8.1 18.2 7 20.4 16.6l2.7 11.6c2.1 9.2 15.2 9.2 17.3 0l2.7-11.6c2.2-9.6 10.6-16.5 20.4-16.6h.3c9.2 0 12.9 2.7 32 12.2v32zm24.6 36.8c4.7-11.3 7.4-23.7 7.4-36.8v-13.6c24.7-16.1 43.4-38 47.8-63.8 2-11.6-9-21.6-20.7-17.9C340.9 330.5 296 336 248 336s-92.9-5.5-123.1-15.2c-11.6-3.7-22.6 6.3-20.7 17.9 4.3 25.8 23 47.6 47.8 63.8V416c0 13 2.7 25.4 7.4 36.8C84.4 418.9 32 343.5 32 256c0-119.1 96.9-216 216-216s216 96.9 216 216c0 87.5-52.4 162.9-127.4 196.8zM328 176c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"]\n};\nvar faGrinTongueSquint = {\n prefix: 'fal',\n iconName: 'grin-tongue-squint',\n icon: [496, 512, [], \"f58a\", \"M248 8C111 8 0 119 0 256c0 121.1 86.8 221.8 201.6 243.5 13.8 7.7 29.5 12.5 46.4 12.5s32.6-4.8 46.4-12.5C409.2 477.8 496 377.1 496 256 496 119 385 8 248 8zm64 408c0 35.6-29.1 64.5-64.9 64-35.1-.5-63.1-29.8-63.1-65v-31c18.9-9.5 22.7-12.2 32-12.2h.3c9.8.1 18.2 7 20.4 16.6l2.7 11.6c2.1 9.2 15.2 9.2 17.3 0l2.7-11.6c2.2-9.6 10.6-16.5 20.4-16.6h.3c9.2 0 12.9 2.7 32 12.2v32zm24.6 36.8c4.7-11.3 7.4-23.7 7.4-36.8v-13.6c24.7-16.1 43.4-38 47.8-63.8 2-11.6-9-21.6-20.7-17.9C340.9 330.5 296 336 248 336s-92.9-5.5-123.1-15.2c-11.6-3.7-22.6 6.3-20.7 17.9 4.3 25.8 23 47.6 47.8 63.8V416c0 13 2.7 25.4 7.4 36.8C84.4 418.9 32 343.5 32 256c0-119.1 96.9-216 216-216s216 96.9 216 216c0 87.5-52.4 162.9-127.4 196.8zm40.5-300.6c-3.8-4.4-10.2-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\"]\n};\nvar faGrinTongueWink = {\n prefix: 'fal',\n iconName: 'grin-tongue-wink',\n icon: [496, 512, [], \"f58b\", \"M248 8C111 8 0 119 0 256c0 121.1 86.8 221.8 201.6 243.5 13.8 7.7 29.5 12.5 46.4 12.5s32.6-4.8 46.4-12.5C409.2 477.8 496 377.1 496 256 496 119 385 8 248 8zm64 408c0 35.6-29.1 64.5-64.9 64-35.1-.5-63.1-29.8-63.1-65v-31c18.9-9.5 22.7-12.2 32-12.2h.3c9.8.1 18.2 7 20.4 16.6l2.7 11.6c2.1 9.2 15.2 9.2 17.3 0l2.7-11.6c2.2-9.6 10.6-16.5 20.4-16.6h.3c9.2 0 12.9 2.7 32 12.2v32zm24.6 36.8c4.7-11.3 7.4-23.7 7.4-36.8v-13.6c24.7-16.1 43.4-38 47.8-63.8 2-11.6-9-21.6-20.7-17.9C340.9 330.5 296 336 248 336s-92.9-5.5-123.1-15.2c-11.6-3.7-22.6 6.3-20.7 17.9 4.3 25.8 23 47.6 47.8 63.8V416c0 13 2.7 25.4 7.4 36.8C84.4 418.9 32 343.5 32 256c0-119.1 96.9-216 216-216s216 96.9 216 216c0 87.5-52.4 162.9-127.4 196.8zM344 128c-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 48zm-192-76c-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.1zm192 4c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24z\"]\n};\nvar faGrinWink = {\n prefix: 'fal',\n iconName: 'grin-wink',\n icon: [496, 512, [], \"f58c\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm152.7 400.7c-19.8 19.8-43 35.4-68.7 46.3-26.6 11.3-54.9 17-84.1 17s-57.5-5.7-84.1-17c-25.7-10.9-48.8-26.5-68.7-46.3s-35.4-43-46.3-68.7c-11.3-26.6-17-54.9-17-84.1s5.7-57.5 17-84.1c10.9-25.7 26.5-48.8 46.3-68.7s43-35.4 68.7-46.3c26.6-11.3 54.9-17 84.1-17s57.5 5.7 84.1 17c25.7 10.9 48.8 26.5 68.7 46.3s35.4 43 46.3 68.7c11.3 26.6 17 54.9 17 84.1s-5.7 57.5-17 84.1c-10.8 25.8-26.4 48.9-46.3 68.7zM168 240c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm120-7l9.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-4-25.2-34.2-42.1-59.9-42.1S272 197 268 222.2c-1.6 11.1 11.6 18.2 20 10.8zm88.1 87c-1.6 0-3.3.3-4.9.8C340.9 330.5 296 336 248 336s-92.9-5.5-123.1-15.2c-1.7-.5-3.3-.8-4.9-.8-9.4 0-17.4 8.6-15.7 18.7 9.2 55 83.2 93.3 143.8 93.3s134.5-38.3 143.8-93.3c1.6-10.2-6.4-18.7-15.8-18.7zm-53.5 58.6C300.4 392 272.5 400 248 400s-52.4-8-74.6-21.4c-9.4-5.7-17.3-12.1-23.5-18.8 28.6 5.3 62.7 8.2 98 8.2 35.4 0 69.4-2.9 98-8.2-6 6.7-13.9 13.1-23.3 18.8z\"]\n};\nvar faGripHorizontal = {\n prefix: 'fal',\n iconName: 'grip-horizontal',\n icon: [448, 512, [], \"f58d\", \"M424 96h-80c-13.22 0-24 10.77-24 24v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24v-80c0-13.23-10.78-24-24-24zm-8 96h-64v-64h64v64zM264 96h-80c-13.22 0-24 10.77-24 24v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24v-80c0-13.23-10.78-24-24-24zm-8 96h-64v-64h64v64zM104 96H24c-13.22 0-24 10.77-24 24v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24v-80c0-13.23-10.78-24-24-24zm-8 96H32v-64h64v64zm328 96h-80c-13.22 0-24 10.77-24 24v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24v-80c0-13.23-10.78-24-24-24zm-8 96h-64v-64h64v64zm-152-96h-80c-13.22 0-24 10.77-24 24v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24v-80c0-13.23-10.78-24-24-24zm-8 96h-64v-64h64v64zm-152-96H24c-13.22 0-24 10.77-24 24v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24v-80c0-13.23-10.78-24-24-24zm-8 96H32v-64h64v64z\"]\n};\nvar faGripLines = {\n prefix: 'fal',\n iconName: 'grip-lines',\n icon: [448, 512, [], \"f7a4\", \"M440 192H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h432c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm0 96H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h432c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faGripLinesVertical = {\n prefix: 'fal',\n iconName: 'grip-lines-vertical',\n icon: [256, 512, [], \"f7a5\", \"M192 472V40c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v432c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8zm-96 0V40c0-4.4-3.6-8-8-8H72c-4.4 0-8 3.6-8 8v432c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8z\"]\n};\nvar faGripVertical = {\n prefix: 'fal',\n iconName: 'grip-vertical',\n icon: [320, 512, [], \"f58e\", \"M104 32H24C10.78 32 0 42.77 0 56v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24V56c0-13.23-10.78-24-24-24zm-8 96H32V64h64v64zm8 64H24c-13.22 0-24 10.77-24 24v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24v-80c0-13.23-10.78-24-24-24zm-8 96H32v-64h64v64zm8 64H24c-13.22 0-24 10.77-24 24v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24v-80c0-13.23-10.78-24-24-24zm-8 96H32v-64h64v64zM296 32h-80c-13.22 0-24 10.77-24 24v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24V56c0-13.23-10.78-24-24-24zm-8 96h-64V64h64v64zm8 64h-80c-13.22 0-24 10.77-24 24v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24v-80c0-13.23-10.78-24-24-24zm-8 96h-64v-64h64v64zm8 64h-80c-13.22 0-24 10.77-24 24v80c0 13.23 10.78 24 24 24h80c13.22 0 24-10.77 24-24v-80c0-13.23-10.78-24-24-24zm-8 96h-64v-64h64v64z\"]\n};\nvar faGuitar = {\n prefix: 'fal',\n iconName: 'guitar',\n icon: [512, 512, [], \"f7a6\", \"M160 288a64 64 0 1 0 64 64 64 64 0 0 0-64-64zm0 96a32 32 0 1 1 32-32 32 32 0 0 1-32 32zM501.78 42.49l-32.27-32.27a34.91 34.91 0 0 0-49.36 0l-50.52 50.53a38.46 38.46 0 0 0-9.29 15L339 139.87c-.39.31-1 .18-1.31.54L291.09 187c-13.79-11.17-29.47-19.89-46.72-23.91a115.75 115.75 0 0 0-26.1-3.07c-24.17 0-46.86 8.19-63.76 25.1a82.52 82.52 0 0 0-20.24 33.47c-6 18.56-23.2 32.69-42.15 34.46-23.69 2.27-45.72 11.45-62.59 28.44C-16.1 327-7.9 409 47.57 464.45 78.9 495.77 118.66 512 155.53 512c28.45 0 55.17-9.65 75-29.48 17-16.88 26.17-38.9 28.45-62.7 1.76-18.86 15.89-36.14 34.43-42.15a82.72 82.72 0 0 0 33.47-20.24c22.87-22.89 29.73-56.36 22-89.76-4-17.26-12.67-33-23.83-46.75l46.56-46.57c.36-.36.24-.91.54-1.3l64.06-21.36a38.6 38.6 0 0 0 15.05-9.3l50.52-50.53a34.92 34.92 0 0 0 0-49.37zM304.25 334.8a50.44 50.44 0 0 1-20.73 12.42c-30.79 10-53.46 38-56.4 69.54-1.17 12.11-5.43 29.41-19.23 43.13-16.61 16.62-37.64 20.11-52.36 20.11-30 0-61.07-13.92-85.32-38.18S32 386.37 32 356.39c0-14.69 3.51-35.67 20.22-52.34 13.64-13.72 30.88-18 42.89-19.13 31.64-3 59.61-25.65 69.61-56.52a50.32 50.32 0 0 1 12.42-20.65c13-13 29.53-15.72 41.13-15.72a83.63 83.63 0 0 1 18.85 2.23c10.31 2.4 20.86 7.82 31.11 15.6l-52.71 52.72a12 12 0 0 0 0 17l17 17a12 12 0 0 0 17 0l52.71-52.72c7.76 10.23 13.16 20.76 15.55 31.06 5.47 23.93.56 45.77-13.53 59.88zm174.9-265.57l-50.52 50.52a6.45 6.45 0 0 1-2.53 1.58L373 139l17.7-53.12a6.61 6.61 0 0 1 1.57-2.53l50.52-50.53a2.81 2.81 0 0 1 2.05-.85 2.85 2.85 0 0 1 2.06.85l32.26 32.27a2.92 2.92 0 0 1-.01 4.14z\"]\n};\nvar faGuitarElectric = {\n prefix: 'fal',\n iconName: 'guitar-electric',\n icon: [512, 512, [], \"f8be\", \"M129 330.35a8 8 0 0 0-11.31 0l-11.31 11.31a8 8 0 0 0 0 11.31L159 405.66a8 8 0 0 0 11.32 0l11.31-11.31a8 8 0 0 0 0-11.32zm64-64a8 8 0 0 0-11.31 0l-11.31 11.32a8 8 0 0 0 0 11.31L223 341.66a8 8 0 0 0 11.32 0l11.31-11.31a8 8 0 0 0 0-11.32zM511.21 39.57a48.14 48.14 0 0 0-37.8-38.26A58.42 58.42 0 0 0 462.57 0c-14.8 0-27.14 10.61-95.83 54.94a32.15 32.15 0 0 0-14.74 27v44.59l-83.23 83.17a12.46 12.46 0 0 1-1.77-12.78l15.9-34.17a41.31 41.31 0 0 0-66.67-46.65L181 151.34a95.94 95.94 0 0 0-22.42 35.47 47.67 47.67 0 0 1-24.74 27.11l-70.29 32.57c-31 12.38-54.45 40.37-61.43 74.36a102.65 102.65 0 0 0 28 93.48l67.51 67.5A102.9 102.9 0 0 0 266 447.28l32.05-69.15a47.69 47.69 0 0 1 27.12-24.74A96 96 0 0 0 360.65 331l19.84-19.83a42.28 42.28 0 0 0 0-59.82A40.82 40.82 0 0 0 350.94 239a44.65 44.65 0 0 0-13.21 2l-21.8 6.95a13.07 13.07 0 0 1-4 .65c-4.75 0-7.94-2.89-9.58-4.54L451.72 94.63A47.44 47.44 0 0 0 464 96.42a48.05 48.05 0 0 0 47.21-56.85zm-199.28 241a45.34 45.34 0 0 0 13.72-2.16l21.8-6.95a12.94 12.94 0 0 1 3.49-.46 8.85 8.85 0 0 1 6.92 3 10.12 10.12 0 0 1 3 7.28 10.27 10.27 0 0 1-3 7.28L338 308.34a64 64 0 0 1-23.57 14.9A79.89 79.89 0 0 0 269 364.67l-32 69.15-.36.78-.32.79a70.89 70.89 0 0 1-116 23.81l-67.53-67.5a70.73 70.73 0 0 1-19.32-64.41c4.73-23.08 20.8-42.65 41.93-51.08l.81-.32.78-.37L147.31 243a79.84 79.84 0 0 0 41.44-45.42 63.85 63.85 0 0 1 14.9-23.58l35.25-35.24a9.28 9.28 0 0 1 13.17 0 9.47 9.47 0 0 1 1.86 10.52L238 183.42a44.48 44.48 0 0 0 5.16 45.51l36.53 37.7c11.53 11.5 23.89 13.91 32.24 13.91zm164.35-221.9A16 16 0 0 1 464 64.42a17.52 17.52 0 0 1-4.07-.71L442.12 59 384 117.08l.07-35.25C398.37 72.61 457.78 33.71 463 32a35.26 35.26 0 0 1 4.45.73 16.14 16.14 0 0 1 12.27 12.44 15.92 15.92 0 0 1-3.44 13.5z\"]\n};\nvar faGuitars = {\n prefix: 'fal',\n iconName: 'guitars',\n icon: [512, 512, [], \"f8bf\", \"M80 320a48 48 0 1 0 48-48 48 48 0 0 0-48 48zm64 0a16 16 0 1 1-16-16 16 16 0 0 1 16 16zm264 16h-80a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm96.67 50.93l-30.3-50.64c-7.5-20.46-11.6-29.58-2.24-49.27a81.26 81.26 0 0 0 7.87-34.81v-31.87a20.76 20.76 0 0 0-20.77-20.77 20.77 20.77 0 0 0-18.47 11.25l-11.95 23.12c-6 11.67-12.13 19.87-24.81 22.06h-12V89.38a47.32 47.32 0 0 0 9.94-7.38 48 48 0 0 0-60.59-73.95 58.88 58.88 0 0 0-8.59 6.74c-10.46 10.47-11.68 26.69-28.91 106.61a32.1 32.1 0 0 0 8.63 29.48L344 182.41V256h-12c-12.72-3.5-18.48-14-23.15-26.85l-14.67-40.22A19.64 19.64 0 0 0 275.72 176 19.69 19.69 0 0 0 256 195.68v56.62a81.19 81.19 0 0 0 7.83 34.81c9.35 19.68 5.42 28.81-2.1 49.26L231.36 387c-25.38 59.16 18 125 82.33 125h108.47c64.41-.07 107.84-65.91 82.51-125.07zM335.13 128.14c3.58-16.61 18.07-86.13 20.57-91a35.47 35.47 0 0 1 3.66-2.62 16 16 0 0 1 20 24.82 17.79 17.79 0 0 1-3.38 2.38L360 71v82.17zM470.37 454a56.87 56.87 0 0 1-48.18 26h-108.5A57.62 57.62 0 0 1 260 401.44l29.14-48.62 1.55-2.58 1-2.83.72-2c7.75-21 15.07-40.88.26-72.06a49.46 49.46 0 0 1-4-12.42c6.81 10.4 17.56 21.15 34.74 25.88l4.17 1.15h79.07l2.7-.47a59.52 59.52 0 0 0 36.41-21.07 50.41 50.41 0 0 1-2.63 6.83c-14.75 31-7.49 50.7.18 71.53l.92 2.49 1 2.82 1.54 2.59L476 401.31a56.74 56.74 0 0 1-5.63 52.69zM408 400.12h-80a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM128 480c-26.82 0-51.76-8.35-70.24-23.5C41.13 442.87 32 425.29 32 406.89c-.05-16.47 7.82-29.49 14.4-37.45 19.06-23 22.58-56.66 8.73-83.8a42.07 42.07 0 0 1-4.9-19.64c0-15.45 8.29-27 15.24-33.95A72.47 72.47 0 0 1 78.33 222c6.67-4.15 15.33-6.79 25.67-8.43V224a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-10.47c10.34 1.64 19 4.28 25.67 8.43a72.47 72.47 0 0 1 12.86 10.12c6.95 7 15.25 18.5 15.24 33.95a42.07 42.07 0 0 1-4.9 19.61c-13.08 25.65-10.16 56.83 6.23 79.62l19.39-32.35c-2.89-10.73-2.31-22.54 2.87-32.67a79.15 79.15 0 0 0 2.8-7.43c-5-12.95-8.16-26.66-8.16-40.52v-29.61a91.15 91.15 0 0 0-10.86-13.22 103.66 103.66 0 0 0-18.58-14.67c-12.84-8-27.55-12-42.58-13.83v-54.22l16.62-33.23a29.12 29.12 0 0 0 3.07-13v-54.1A26.41 26.41 0 0 0 145.28 0h-34.56A26.41 26.41 0 0 0 84.3 26.41v54.08a29.12 29.12 0 0 0 3.07 13L104 126.74V181c-15 1.84-29.74 5.84-42.58 13.83a103.66 103.66 0 0 0-18.58 14.67c-15.39 15.39-24.62 35-24.61 56.58a74.36 74.36 0 0 0 8.41 34.2c8 15.65 6 35.59-4.88 48.78C8.11 365.55-.07 385.43 0 407c-.07 58 57.34 105 128 105 31.64 0 60.25-9.78 82.61-25.39a121.63 121.63 0 0 1-13.27-29.5C179 471.82 154.42 480 128 480zm11.7-448v48.49l-11.64 22.79-.05-.11v.11l-11.7-22.79V32z\"]\n};\nvar faHSquare = {\n prefix: 'fal',\n iconName: 'h-square',\n icon: [448, 512, [], \"f0fd\", \"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-48zm16 400c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h352c8.822 0 16 7.178 16 16v352zm-80-292v232c0 6.627-5.373 12-12 12h-8c-6.627 0-12-5.373-12-12V272H144v100c0 6.627-5.373 12-12 12h-8c-6.627 0-12-5.373-12-12V140c0-6.627 5.373-12 12-12h8c6.627 0 12 5.373 12 12v100h160V140c0-6.627 5.373-12 12-12h8c6.627 0 12 5.373 12 12z\"]\n};\nvar faH1 = {\n prefix: 'fal',\n iconName: 'h1',\n icon: [576, 512, [], \"f313\", \"M312 96H200a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h40v112H80V128h40a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h40v256H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H80V272h160v112h-40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-40V128h40a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm256 288h-70.34V112a16 16 0 0 0-16-16h-16a16 16 0 0 0-11.31 4.69L412 143a8 8 0 0 0 0 11.31l11.31 11.31a8 8 0 0 0 11.32 0l31-31V384H392a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faH2 = {\n prefix: 'fal',\n iconName: 'h2',\n icon: [576, 512, [], \"f314\", \"M312 96H200a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h40v112H80V128h40a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h40v256H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H80V272h160v112h-40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-40V128h40a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm240 288H406.07c3.84-78.76 159.24-94.63 159.24-198.94 0-50-36.93-89.06-97.75-89.06-38.5 0-73 20.77-91.81 48.46A11.83 11.83 0 0 0 379 161l7.15 4.75a12.1 12.1 0 0 0 16.35-2.84c14.5-19 37.72-33.76 63.28-33.76 37.31 0 63.37 23.72 63.37 57.7 0 82.34-161.12 97-161.12 207.31 0 4.22.19 7.81.5 11.18a12 12 0 0 0 12 10.69H552a8 8 0 0 0 8-8V392a8 8 0 0 0-8-8z\"]\n};\nvar faH3 = {\n prefix: 'fal',\n iconName: 'h3',\n icon: [576, 512, [], \"f315\", \"M476.8 223.64l90.74-101.26a11.69 11.69 0 0 0 3-7.81v-6.71A12.1 12.1 0 0 0 558.26 96H391a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h130.37c-3.27 3.13-7.65 7.56-12.42 12.95l-76.32 86.44a11.68 11.68 0 0 0-2 12.26l2.75 6.42a12.24 12.24 0 0 0 11.32 7.31h15.11c42.44 0 78.76 22.91 78.78 64.29a62.89 62.89 0 0 1-20.54 46c-36.94 33.66-92 18.39-124.16-9.63a12.52 12.52 0 0 0-17.76 1.49l-6.44 7.9a11.56 11.56 0 0 0 1.34 16.1c22.64 20 59 36.46 96.44 36.46C527.74 416 575 372.42 575 316.71c.1-57.3-44.9-88.62-98.2-93.07zM311 96H199a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h40v112H79V128h40a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H7a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h40v256H7a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H79V272h160v112h-40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-40V128h40a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faH4 = {\n prefix: 'fal',\n iconName: 'h4',\n icon: [576, 512, [], \"f86a\", \"M312 96H200a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h40v112H80V128h40a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h40v256H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H80V272h160v112h-40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-40V128h40a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm256 144h-24V104a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v136H384V104a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v152a16 16 0 0 0 16 16h144v136a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V272h24a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faHamburger = {\n prefix: 'fal',\n iconName: 'hamburger',\n icon: [512, 512, [], \"f805\", \"M384 208a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm-176-64a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm96 0a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm-176 64a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm384 112a63.84 63.84 0 0 0-30.17-54.1c13.54-20.94 18.48-52.94 6.35-79.07C448 100.27 359.55 32.13 256 32c-103.54.13-192 68.26-232.18 154.82-12.45 26.81-9.11 59.87 3.66 80.75a63.51 63.51 0 0 0-6.14 99.79C18.25 372.28 16 377.76 16 384v32a64 64 0 0 0 64 64h352a64 64 0 0 0 64-64v-32c0-6.24-2.25-11.72-5.34-16.64A63.64 63.64 0 0 0 512 320zM52.85 200.3C90.66 118.9 172.3 64.13 256 64c83.72.13 165.37 54.9 203.16 136.31 5.79 12.47 5.24 29.54-1.41 43.48-.14.28-.27.56-.41.83a21.07 21.07 0 0 1-18.9 11.38H70.1c-6.12 0-12.24-2.39-16-7.22a16.5 16.5 0 0 1-2.49-4.4c-5.25-13.87-4.76-31.18 1.24-44.08zM464 416a32 32 0 0 1-32 32H80a32 32 0 0 1-32-32v-32h416zm-16-64H64a32 32 0 0 1 0-64h384a32 32 0 0 1 0 64z\"]\n};\nvar faHammer = {\n prefix: 'fal',\n iconName: 'hammer',\n icon: [576, 512, [], \"f6e3\", \"M573.65 200.92l-11.34-11.31c-3.13-3.12-8.21-3.12-11.34 0l-17.01 16.97-52.98-52.86c5.64-21.31.36-44.9-16.39-61.61l-45.36-45.25C387.92 15.62 346.88 0 305.84 0c-41.04 0-82.09 15.62-113.4 46.86l68.66 68.5c-4.42 16.71-1.88 34.7 7.4 49.8L21.47 395.26c-27.95 26.04-28.71 70.01-1.67 96.99C33.02 505.44 50.32 512 67.59 512c18.05 0 36.09-7.17 49.42-21.42l233.13-249.14c12.84 5.06 26.84 6.3 40.12 2.8l52.98 52.86-17.01 16.97a7.985 7.985 0 0 0 0 11.31l11.34 11.31c3.13 3.12 8.21 3.12 11.34 0l124.74-124.45a7.997 7.997 0 0 0 0-11.32zM93.57 468.74C86.78 476 77.55 480 67.59 480c-9.48 0-18.4-3.69-25.11-10.38-6.87-6.86-10.57-15.97-10.4-25.67.17-9.7 4.17-18.68 11.28-25.3l246.37-229.47 33.85 33.77L93.57 468.74zm372.35-194.28l-52.98-52.85-13.04-13.01-17.83 4.7c-11.3 2.98-22.84-.03-30.87-8.04l-51.03-50.91c-8.03-8.01-11.04-19.53-8.06-30.8l4.71-17.79-13.04-13.01-43.14-43.05c19.54-11.54 41.9-17.7 65.2-17.7 34.27 0 66.48 13.32 90.72 37.49l45.36 45.26c8.03 8.01 11.04 19.53 8.06 30.8l-4.71 17.79 13.04 13.01 52.98 52.86-45.37 45.25z\"]\n};\nvar faHammerWar = {\n prefix: 'fal',\n iconName: 'hammer-war',\n icon: [384, 512, [], \"f6e4\", \"M352.07 32c-1.75 0-3.53.14-5.33.44L240 50.23V16c0-8.84-7.16-16-16-16h-64c-8.84 0-16 7.16-16 16v34.23L37.26 32.44c-1.79-.3-3.58-.44-5.33-.44C14.64 32 0 46.05 0 64.01v191.98C0 273.95 14.64 288 31.94 288c1.75 0 3.53-.14 5.33-.44L144 269.77V496c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V269.77l106.74 17.79c1.79.3 3.57.44 5.33.44 17.3 0 31.94-14.05 31.94-32.01V64.01C384 46.05 369.36 32 352.07 32zM176 32h32v23.57l-16 2.67-16-2.67V32zm32 448h-32V264.43l16-2.67 16 2.67V480zm144-224.01L197.26 230.2l-5.26-.88-5.26.88L32 255.99V64.01L186.74 89.8l5.26.88 5.26-.88L352 64.01v191.98z\"]\n};\nvar faHamsa = {\n prefix: 'fal',\n iconName: 'hamsa',\n icon: [512, 512, [], \"f665\", \"M256 328c-13.25 0-24 10.74-24 24s10.75 24 24 24 24-10.74 24-24-10.75-24-24-24zm195.95-104H416V96c0-35.29-28.71-64-64-64-13.16 0-25.41 3.99-35.6 10.84C307.65 17.91 283.88 0 256 0s-51.65 17.91-60.4 42.84A63.603 63.603 0 0 0 160 32c-35.29 0-64 28.71-64 64v128H60.06C18.96 224 .05 261.31 0 288c-.03 15.18 5.04 30.12 14.79 42.06L104.6 440.1c37.33 45.7 92.52 71.9 151.41 71.9s114.08-26.21 151.4-71.89l89.8-110.04c9.74-11.94 14.81-26.88 14.79-42.07-.05-26.76-19.31-64-60.05-64zm20.48 85.83L385.05 416.9c-24.74 30.29-58.67 52.64-97.07 60.03-60.8 11.71-120.68-10.67-158.59-57.07l-89.8-110.03c-7.6-9.31-9.65-22.89-5.19-34.58C38.81 263.56 48.9 256 60.06 256H128V97.95c0-15.96 10.8-30.84 26.53-33.49C174.52 61.1 192 76.61 192 96v120c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V65.95c0-15.96 10.8-30.84 26.53-33.49C270.52 29.1 288 44.61 288 64v152c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V97.95c0-15.96 10.8-30.84 26.53-33.49C366.52 61.1 384 76.61 384 96v160h67.95c11.16 0 21.25 7.56 25.67 19.25 4.46 11.69 2.41 25.27-5.19 34.58zM256 272c-18.79 0-57.96 1.82-112.12 69.86-4.59 5.77-4.59 14.51 0 20.27C198.07 430.22 237.24 432 256 432c18.79 0 57.96-1.82 112.12-69.87 4.59-5.77 4.59-14.51 0-20.27C313.93 273.78 274.76 272 256 272zm0 128c-44.18 0-80-48-80-48s35.82-48 80-48 80 48 80 48-35.82 48-80 48z\"]\n};\nvar faHandHeart = {\n prefix: 'fal',\n iconName: 'hand-heart',\n icon: [448, 512, [], \"f4bc\", \"M392 112c-8.6 0-16.7 1.9-24 5.4V88c0-30.9-25.1-56-56-56-9.7 0-18.8 2.5-26.7 6.8C278 16.3 256.9 0 232 0s-46 16.3-53.3 38.8c-7.9-4.3-17-6.8-26.7-6.8-30.9 0-56 25.1-56 56v152.8c-11.5-11.8-42.1-27.7-72.1-6.7-25.3 17.7-31.5 52.7-13.8 78l113.7 171.3c11.9 17.9 31.8 28.6 53.3 28.6h180.6c30.4 0 56.8-21.6 62.8-51.4l20.6-103.2c4.5-22.7 6.8-45.9 6.8-69V168c.1-30.9-25-56-55.9-56zm24 176.3c0 21.1-2.1 42.1-6.2 62.8l-20.6 103.2c-3 15-16.1 25.7-31.4 25.7H177.2c-10.7 0-20.7-5.4-26.7-14.3L36.3 293.8c-7.6-10.9-5-25.8 5.9-33.4 15.8-11.1 30 1 33.4 5.9l37.8 54.4c4.5 6.4 14.6 3.3 14.6-4.6V88c0-13.3 10.7-24 24-24s24 10.7 24 24v160c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V56c0-13.3 10.7-24 24-24s24 10.7 24 24v192c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V88c0-13.3 10.7-24 24-24s24 10.7 24 24v160c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-80c0-13.3 10.7-24 24-24s24 10.7 24 24v120.3zM333.3 299c-6.1-4.9-16.6-11-30.3-11-13.1 0-29.2 5.6-47 23.1-17.8-17.5-33.9-23.1-47-23.1-13.7 0-24.3 6.1-30.3 11-23.6 19.1-24.8 53.5-3.7 74.2l72.6 71.3c4.7 4.6 12.3 4.6 17 0l72.6-71.3c20.9-20.7 19.7-55.1-3.9-74.2zm-18.7 51.4L256 408l-58.6-57.6c-12-11.8-2.1-30.4 11.6-30.4 6.7 0 15.5 5 24.6 13.9L256 356l22.4-22.1c9.1-9 17.9-13.9 24.6-13.9 13.7 0 23.6 18.6 11.6 30.4z\"]\n};\nvar faHandHolding = {\n prefix: 'fal',\n iconName: 'hand-holding',\n icon: [576, 512, [], \"f4bd\", \"M558.3 333.6c-9.6-8.6-22.1-13.4-35.2-13.4-12.5 0-24.8 4.3-34.6 12.2l-61.6 49.3c-1.9 1.5-4.2 2.3-6.7 2.3h-41.6c4.6-9.6 6.5-20.7 4.8-32.3-4-27.9-29.6-47.7-57.8-47.7H181.3c-20.8 0-41 6.7-57.6 19.2L85.3 352H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h88l46.9-35.2c11.1-8.3 24.6-12.8 38.4-12.8H328c13.3 0 24 10.7 24 24s-10.7 24-24 24h-88c-8.8 0-16 7.2-16 16s7.2 16 16 16h180.2c9.7 0 19.1-3.3 26.7-9.3l61.6-49.2c4.2-3.4 9.5-5.2 14.6-5.2 5 0 9.9 1.7 13.8 5.2 10.1 9.1 9.3 24.5-.9 32.6l-100.8 80.7c-7.6 6.1-17 9.3-26.7 9.3H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h400.5c17 0 33.4-5.8 46.6-16.4L556 415c12.2-9.8 19.5-24.4 20-40s-6-30.8-17.7-41.4z\"]\n};\nvar faHandHoldingBox = {\n prefix: 'fal',\n iconName: 'hand-holding-box',\n icon: [576, 512, [], \"f47b\", \"M112 256h352c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H112c-8.8 0-16 7.2-16 16v224c0 8.8 7.2 16 16 16zM256 32h64v76.2l-32-16-32 16V32zm-128 0h96v128l64-32 64 32V32h96v192H128V32zm430.3 301.6c-9.6-8.6-22.1-13.4-35.2-13.4-12.5 0-24.8 4.3-34.6 12.2l-61.6 49.3c-1.9 1.5-4.2 2.3-6.7 2.3h-41.6c4.6-9.6 6.5-20.7 4.8-32.3-4-27.9-29.6-47.7-57.8-47.7H181.3c-20.8 0-41 6.7-57.6 19.2L85.3 352H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h88l46.9-35.2c11.1-8.3 24.6-12.8 38.4-12.8H328c13.3 0 24 10.7 24 24s-10.7 24-24 24h-88c-8.8 0-16 7.2-16 16s7.2 16 16 16h180.2c9.7 0 19.1-3.3 26.7-9.3l61.6-49.2c4.2-3.4 9.5-5.2 14.6-5.2 5 0 9.9 1.7 13.8 5.2 10.1 9.1 9.3 24.5-.9 32.6l-100.8 80.7c-7.6 6.1-17 9.3-26.7 9.3H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h400.5c17 0 33.4-5.8 46.6-16.4L556 415c12.2-9.8 19.5-24.4 20-40s-6-30.8-17.7-41.4z\"]\n};\nvar faHandHoldingHeart = {\n prefix: 'fal',\n iconName: 'hand-holding-heart',\n icon: [576, 512, [], \"f4be\", \"M558.3 333.6c-19.7-17.7-49.4-17.6-69.9-1.2l-61.6 49.3c-1.9 1.5-4.2 2.3-6.7 2.3h-41.6c4.6-9.6 6.5-20.7 4.8-32.3-4-27.9-29.6-47.7-57.8-47.7H181.3c-20.8 0-41 6.7-57.6 19.2L85.3 352H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h88l46.9-35.2c11.1-8.3 24.6-12.8 38.4-12.8H328c13.3 0 24 10.7 24 24s-10.7 24-24 24h-88c-8.8 0-16 7.2-16 16s7.2 16 16 16h180.2c9.7 0 19.1-3.3 26.7-9.3l61.6-49.2c7.7-6.1 20-7.6 28.4 0 10.1 9.1 9.3 24.5-.9 32.6l-100.8 80.7c-7.6 6.1-17 9.3-26.7 9.3H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h400.5c17 0 33.4-5.8 46.6-16.4L556 415c12.2-9.8 19.5-24.4 20-40s-6-30.8-17.7-41.4zm-283-83.1c7 7.4 18.4 7.4 25.5 0l108.9-114.1c31.6-33.2 29.8-88.1-5.6-118.7-35.3-30.6-81.4-17-104.9 7.7L288 37l-11.1-11.6c-23-24.1-69.3-38.6-104.9-7.7-35.3 30.6-37.2 85.6-5.6 118.7l108.9 114.1zM192.4 41.9c20.8-18 48.2-8.7 61.9 5.7L288 82.9l33.7-35.3c13.5-14.1 41-23.7 61.9-5.7 23.8 20.6 20.2 54.5 3.4 72.1l-99 103.8L189 114c-16.7-17.4-20.3-51.5 3.4-72.1z\"]\n};\nvar faHandHoldingMagic = {\n prefix: 'fal',\n iconName: 'hand-holding-magic',\n icon: [576, 512, [], \"f6e5\", \"M558.3 333.65c-9.58-8.65-22.09-13.41-35.23-13.41-12.51 0-24.81 4.32-34.62 12.17l-61.57 49.25a10.68 10.68 0 0 1-6.66 2.34h-41.63c4.56-9.58 6.48-20.66 4.81-32.27-4.02-27.93-29.62-47.73-57.83-47.73H181.33c-20.77 0-40.98 6.74-57.6 19.2L85.33 352H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h88l46.93-35.2a63.99 63.99 0 0 1 38.4-12.8H328c13.25 0 24 10.74 24 24 0 13.25-10.75 24-24 24h-88c-8.84 0-16 7.16-16 16s7.16 16 16 16h180.22c9.69 0 19.09-3.3 26.65-9.35l61.56-49.25c4.22-3.38 9.46-5.16 14.63-5.16 4.99 0 9.91 1.66 13.78 5.16 10.05 9.08 9.26 24.51-.87 32.59l-100.83 80.66a42.656 42.656 0 0 1-26.65 9.35H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h400.51c16.95 0 33.4-5.77 46.63-16.36l100.83-80.67c12.23-9.76 19.52-24.36 20-40.03s-5.96-30.72-17.67-41.29zM208 224h72c39.69 0 72-32.3 72-72s-32.31-72-72-72h-15.31C233 80 204.81 98.78 192 126.61c17.72-7.86 41.88-14.61 72.69-14.61H280c22.06 0 40 17.94 40 40s-17.94 40-40 40h-72c-27.47 0-48-25.34-48-48V80c0-26.47 21.53-48 48-48h160c26.47 0 48 21.53 48 48v69.23c0 36.12-16.63 72.41-46.84 102.2L348.31 272c57.09-14.78 99.25-64.27 99.69-121.33V80c0-44.11-35.88-80-80-80H208c-44.13 0-80 35.89-80 80v64c0 42.61 37.38 80 80 80z\"]\n};\nvar faHandHoldingMedical = {\n prefix: 'fal',\n iconName: 'hand-holding-medical',\n icon: [576, 512, [], \"e05c\", \"M160,192h48v48a16,16,0,0,0,16,16h96a16,16,0,0,0,16-16V192h48a16,16,0,0,0,16-16V80a16,16,0,0,0-16-16H336V16A16,16,0,0,0,320,0H224a16,16,0,0,0-16,16V64H160a16,16,0,0,0-16,16v96A16,16,0,0,0,160,192Zm16-96h64V32h64V96h64v64H304v64H240V160H176ZM558.27,333.5a52.68,52.68,0,0,0-35.2-13.39,55.26,55.26,0,0,0-34.59,12.2l-61.59,49.3a10.72,10.72,0,0,1-6.71,2.3h-41.6a55.68,55.68,0,0,0,4.81-32.3c-4-27.91-29.61-47.7-57.81-47.7H181.29a95.61,95.61,0,0,0-57.59,19.2l-38.41,28.8H8a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H96l46.9-35.21a64.21,64.21,0,0,1,38.39-12.79H328a24,24,0,0,1,0,48H240a16,16,0,0,0,0,32H420.18a43.14,43.14,0,0,0,26.71-9.3l61.59-49.2a23.44,23.44,0,0,1,14.59-5.21,20.51,20.51,0,0,1,13.81,5.21A21.25,21.25,0,0,1,536,390L435.18,470.7a42.47,42.47,0,0,1-26.7,9.3H8a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H408.48a74.34,74.34,0,0,0,46.59-16.39L556,414.91a53.39,53.39,0,0,0,2.3-81.41Z\"]\n};\nvar faHandHoldingSeedling = {\n prefix: 'fal',\n iconName: 'hand-holding-seedling',\n icon: [576, 512, [], \"f4bf\", \"M248.9 192H272v56c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-56h23.1C411.4 192 480 113 480 16V0h-55.1C364.9 0 313 40.1 288 98.1 263 40.1 211.1 0 151.1 0H96v16c0 97 68.6 176 152.9 176zm176-160h22.4c-6.7 71.9-58 128-120.1 128h-22.4c6.6-71.9 58-128 120.1-128zm-273.8 0c62.1 0 113.4 56.1 120.1 128h-22.4c-62.1 0-113.4-56.1-120.1-128h22.4zm407.2 301.6c-9.6-8.6-22.1-13.4-35.2-13.4-12.5 0-24.8 4.3-34.6 12.2l-61.6 49.3c-1.9 1.5-4.2 2.3-6.7 2.3h-41.6c4.6-9.6 6.5-20.7 4.8-32.3-4-27.9-29.6-47.7-57.8-47.7H181.3c-20.8 0-41 6.7-57.6 19.2L85.3 352H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h88l46.9-35.2c11.1-8.3 24.6-12.8 38.4-12.8H328c13.3 0 24 10.7 24 24s-10.7 24-24 24h-88c-8.8 0-16 7.2-16 16s7.2 16 16 16h180.2c9.7 0 19.1-3.3 26.7-9.3l61.6-49.2c4.2-3.4 9.5-5.2 14.6-5.2 5 0 9.9 1.7 13.8 5.2 10.1 9.1 9.3 24.5-.9 32.6l-100.8 80.7c-7.6 6.1-17 9.3-26.7 9.3H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h400.5c17 0 33.4-5.8 46.6-16.4L556 415c12.2-9.8 19.5-24.4 20-40s-6-30.8-17.7-41.4z\"]\n};\nvar faHandHoldingUsd = {\n prefix: 'fal',\n iconName: 'hand-holding-usd',\n icon: [576, 512, [], \"f4c0\", \"M256.7 135.7l56.4 16.1c8.8 2.5 14.9 10.6 14.9 19.7 0 11.3-9.2 20.5-20.5 20.5h-36.9c-8.2 0-16.1-2.6-22.6-7.3-3-2.2-7.2-1.5-9.8 1.2l-11.4 11.4c-3.5 3.5-2.9 9.2 1 12.2 12.3 9.4 27.2 14.5 42.9 14.5h1.4v24c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-24h1.4c22.8 0 44.3-13.6 51.7-35.2 10.1-29.6-7.3-59.8-35.1-67.8L263 104.1c-8.8-2.5-14.9-10.6-14.9-19.7 0-11.3 9.2-20.5 20.5-20.5h36.9c8.2 0 16.1 2.6 22.6 7.3 3 2.2 7.2 1.5 9.8-1.2l11.4-11.4c3.5-3.5 2.9-9.2-1-12.2C336 37.1 321.1 32 305.4 32H304V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v24h-3.5c-30.6 0-55.1 26.3-52.2 57.5 2 22.1 19 40.1 40.4 46.2zm301.6 197.9c-19.7-17.7-49.4-17.6-69.9-1.2l-61.6 49.3c-1.9 1.5-4.2 2.3-6.7 2.3h-41.6c4.6-9.6 6.5-20.7 4.8-32.3-4-27.9-29.6-47.7-57.8-47.7H181.3c-20.8 0-41 6.7-57.6 19.2L85.3 352H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h88l46.9-35.2c11.1-8.3 24.6-12.8 38.4-12.8H328c13.3 0 24 10.7 24 24s-10.7 24-24 24h-88c-8.8 0-16 7.2-16 16s7.2 16 16 16h180.2c9.7 0 19.1-3.3 26.7-9.3l61.6-49.2c7.7-6.1 20-7.6 28.4 0 10.1 9.1 9.3 24.5-.9 32.6l-100.8 80.7c-7.6 6.1-17 9.3-26.7 9.3H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h400.5c17 0 33.4-5.8 46.6-16.4L556 415c12.2-9.8 19.5-24.4 20-40s-6-30.8-17.7-41.4z\"]\n};\nvar faHandHoldingWater = {\n prefix: 'fal',\n iconName: 'hand-holding-water',\n icon: [576, 512, [], \"f4c1\", \"M558.3 333.6c-9.6-8.6-22.1-13.4-35.2-13.4-12.5 0-24.8 4.3-34.6 12.2l-61.6 49.3c-1.9 1.5-4.2 2.3-6.7 2.3h-41.6c4.6-9.6 6.5-20.7 4.8-32.3-4-27.9-29.6-47.7-57.8-47.7H181.3c-20.8 0-41 6.7-57.6 19.2L85.3 352H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h88l46.9-35.2c11.1-8.3 24.6-12.8 38.4-12.8H328c13.3 0 24 10.7 24 24s-10.7 24-24 24h-88c-8.8 0-16 7.2-16 16s7.2 16 16 16h180.2c9.7 0 19.1-3.3 26.7-9.3l61.6-49.2c4.2-3.4 9.5-5.2 14.6-5.2 5 0 9.9 1.7 13.8 5.2 10.1 9.1 9.3 24.5-.9 32.6l-100.8 80.7c-7.6 6.1-17 9.3-26.7 9.3H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h400.5c17 0 33.4-5.8 46.6-16.4L556 415c12.2-9.8 19.5-24.4 20-40s-6-30.8-17.7-41.4zM288 256c53 0 96-42.1 96-94 0-40-57.1-120.7-83.2-155.6-3.2-4.3-8-6.4-12.8-6.4s-9.6 2.1-12.8 6.4C249.1 41.3 192 122 192 162c0 51.9 43 94 96 94zm0-213c44.1 61.4 64 103.5 64 119 0 34.2-28.7 62-64 62s-64-27.8-64-62c0-15.5 19.9-57.6 64-119z\"]\n};\nvar faHandLizard = {\n prefix: 'fal',\n iconName: 'hand-lizard',\n icon: [576, 512, [], \"f258\", \"M558.232 297.931L406.298 61.41C394.468 42.994 374.338 32 352.45 32H48C21.532 32 0 53.532 0 80v8c0 39.701 32.299 72 72 72h216.103l-23.189 58.93a7.954 7.954 0 0 1-7.444 5.07H144c-44.112 0-80 35.888-80 80 0 26.468 21.532 48 48 48h125.848a31.98 31.98 0 0 1 16.822 4.778l93.536 57.799a7.948 7.948 0 0 1 3.794 6.805V480h224V358.463c0-21.506-6.144-42.439-17.768-60.532zM544 448H384v-26.618c0-13.966-7.093-26.687-18.973-34.027l-93.537-57.799A63.96 63.96 0 0 0 237.847 320H112c-8.822 0-16-7.178-16-16 0-26.468 21.532-48 48-48h113.469c16.551 0 31.161-9.952 37.222-25.353l25.34-64.394c7.227-18.362-6.334-38.254-26.055-38.254H72c-22.056 0-40-17.944-40-40v-8c0-8.822 7.178-16 16-16h304.45c10.943 0 21.009 5.497 26.924 14.705l151.935 236.521A79.854 79.854 0 0 1 544 358.463V448z\"]\n};\nvar faHandMiddleFinger = {\n prefix: 'fal',\n iconName: 'hand-middle-finger',\n icon: [512, 512, [], \"f806\", \"M479.94 312.94a63.91 63.91 0 0 0-48.47-62L415.94 247c0-26.64-17.73-44.92-39.23-48.91-30.84-5.73-31.43-6.11-37.6-6.11a50.84 50.84 0 0 0-19.11 3.74V64a64 64 0 0 0-127.94-.57c0 .21-.09.36-.09.57v131.72a50.84 50.84 0 0 0-19.15-3.72c-6.39 0-8.41.67-30.53 5.09A57.76 57.76 0 0 0 96 253.57v14.65l-28.63 14.31A63.66 63.66 0 0 0 32 339.78v63A63.58 63.58 0 0 0 50.75 448l26.5 26.51a127.15 127.15 0 0 0 90.5 37.49H352a128 128 0 0 0 128-128.08zM352 480H167.76a96 96 0 0 1-67.88-28.12l-26.51-26.51A32 32 0 0 1 64 402.74v-63a32 32 0 0 1 17.69-28.63L96 304v32a16 16 0 0 0 32 0v-82.43a25.64 25.64 0 0 1 20.62-25.11c19.45-3.89 21.11-4.46 24.21-4.46A19.21 19.21 0 0 1 192 243.21 12.79 12.79 0 0 0 204.77 256h6.41A12.79 12.79 0 0 0 224 243.21V65.37c0-16.71 12.22-31.64 28.86-33.22A32 32 0 0 1 288 64v179.21A12.79 12.79 0 0 0 300.75 256h6.41A12.79 12.79 0 0 0 320 243.21 19.21 19.21 0 0 1 339.11 224c2.88 0 3.31.29 31.69 5.56a16.06 16.06 0 0 1 13.14 15.74V272l39.76 9.94a32 32 0 0 1 24.24 31l.06 71A96 96 0 0 1 352 480z\"]\n};\nvar faHandPaper = {\n prefix: 'fal',\n iconName: 'hand-paper',\n icon: [448, 512, [], \"f256\", \"M369.4 119.1V96.3c0-42.8-42.8-72.8-82.3-56.5-19.8-54.2-94.4-52.2-112.5.8-38.4-15.8-81.8 12.8-81.8 55.9v145.7c-20.3-13.7-47.6-13.9-68.4 1.5-26.6 19.6-32.4 57.1-13.1 83.9l125 174.4c4.5 6.3 11.8 10 19.5 10H388c11.2 0 20.9-7.7 23.4-18.6l31.4-135.6c3.4-14.8 5.2-30 5.2-45.3V176.2c0-41.5-40.6-70.1-78.6-57.1zM416 312.5c0 12.8-1.5 25.6-4.4 38l-30 129.4H159.9l-122.6-171c-9-12.6-6.3-30.4 6.1-39.5 12.3-9.1 29.6-6.4 38.6 6.2l28.3 39.4c4.5 6.3 14.5 3.1 14.5-4.7V96.5c0-38 55.4-36.9 55.4.7V256c0 4.4 3.6 8 8 8h7.1c4.4 0 8-3.6 8-8V60.2c0-38 55.4-36.9 55.4.7v195c0 4.4 3.6 8 8 8h7.1c4.4 0 8-3.6 8-8V95.6c0-38 55.4-36.9 55.4.7V256c0 4.4 3.6 8 8 8h7.1c4.4 0 8-3.6 8-8v-79c0-37.6 55.4-38.8 55.4-.7v136.2z\"]\n};\nvar faHandPeace = {\n prefix: 'fal',\n iconName: 'hand-peace',\n icon: [448, 512, [], \"f25b\", \"M363.642 201.124c-13.07-27.616-44.381-40.855-72.775-31.297V67.5c0-37.22-29.991-67.5-66.855-67.5s-66.855 30.28-66.855 67.5L160 176l-30.852-89.568C115.645 51.546 76.664 34.523 42.319 48.22 8.02 61.896-8.796 100.93 4.609 135.568L65.068 291.78c-29.161 23.68-49.333 51.547-28.683 88.228l57.139 101.5C104.112 500.316 124.007 512 145.445 512h214.273c13.464 0 26.679-4.662 37.21-13.128 10.455-8.405 17.889-20.266 20.933-33.4l28.57-123.25A60.856 60.856 0 0 0 448 328.5V256c0-43.874-45.136-72.88-84.358-54.876zM71.039 328.153l27.757-22.54a8.002 8.002 0 0 0 2.418-9.098L34.453 124.019C17.447 80.08 82.438 54.403 99.305 97.981l62.274 160.906a8 8 0 0 0 7.461 5.112h12.117a8 8 0 0 0 8-8V67.5c0-46.929 69.709-47.021 69.709 0V256a8 8 0 0 0 8 8h7.143a8 8 0 0 0 8-8v-29c0-37.351 55.425-37.41 55.425 0v29a8 8 0 0 0 8 8h7.143a8 8 0 0 0 8-8c0-37.35 55.424-37.41 55.424 0v72.5c0 2.186-.25 4.371-.742 6.496l-28.57 123.25C383.72 471.055 372.629 480 359.719 480H145.445c-9.898 0-19.108-5.437-24.035-14.189l-57.14-101.5c-6.863-12.192-4.016-27.398 6.769-36.158z\"]\n};\nvar faHandPointDown = {\n prefix: 'fal',\n iconName: 'hand-point-down',\n icon: [448, 512, [], \"f0a7\", \"M185.6 512c38.484 0 70.4-32.063 70.4-70.4v-56.817c.351-.009.703-.02 1.054-.033 14.187-.536 27.727-4.655 39.582-11.885 23.339 4.644 48.386-2.335 65.494-16.635 49.786 1.625 85.87-29.026 85.87-88.631v-23.236c0-54.11-34.281-90.452-42.038-125.102C412.139 113.428 416 105.167 416 96V32c0-17.673-14.327-32-32-32H160c-17.673 0-32 14.327-32 32v64c0 11.62 6.194 21.792 15.459 27.397-10.075 18.05-49.384 49.858-67.144 60.919C53.853 198.2 0 207.454 0 256c0 41.313 29.922 73.6 70.4 73.6 17.79 0 32.611-4.354 44.8-9.791V441.6c0 37.63 32.239 70.4 70.4 70.4zM384 32v64H160V32h224zM185.6 480c-20.4 0-38.4-18.3-38.4-38.4V268.8c-18.9 0-38.4 28.8-76.8 28.8C48 297.6 32 280 32 256s35.686-28.704 61.2-44.5c23.443-14.595 72.556-53.665 83.262-83.5h198.677C384.733 167.68 416 200.026 416 244.364V267.6c0 44.208-24.215 62.317-66.9 55.201-8.728 15.94-37.068 26.347-58.5 14.1-19.882 21.125-50.597 19.404-66.6 5.4V441.6c0 20.7-17.7 38.4-38.4 38.4zM332 64c0-11.046 8.954-20 20-20s20 8.954 20 20-8.954 20-20 20-20-8.954-20-20z\"]\n};\nvar faHandPointLeft = {\n prefix: 'fal',\n iconName: 'hand-point-left',\n icon: [512, 512, [], \"f0a5\", \"M0 217.6C0 256.084 32.063 288 70.4 288h56.817c.009.351.02.703.033 1.054.536 14.187 4.655 27.727 11.885 39.582-4.644 23.339 2.335 48.386 16.635 65.494-1.625 49.786 29.026 85.87 88.631 85.87h23.236c54.11 0 90.452-34.281 125.102-42.038C398.572 444.139 406.833 448 416 448h64c17.673 0 32-14.327 32-32V192c0-17.673-14.327-32-32-32h-64c-11.62 0-21.792 6.194-27.397 15.459-18.051-10.075-49.858-49.384-60.919-67.144C313.8 85.853 304.546 32 256 32c-41.313 0-73.6 29.922-73.6 70.4 0 17.79 4.354 32.611 9.791 44.8H70.4C32.77 147.2 0 179.439 0 217.6zM480 416h-64V192h64v224zM32 217.6c0-20.4 18.3-38.4 38.4-38.4h172.8c0-18.9-28.8-38.4-28.8-76.8C214.4 80 232 64 256 64s28.704 35.686 44.5 61.2c14.595 23.443 53.665 72.556 83.5 83.262v198.677C344.32 416.733 311.974 448 267.636 448H244.4c-44.208 0-62.317-24.215-55.201-66.9-15.94-8.728-26.347-37.068-14.1-58.5-21.125-19.882-19.404-50.597-5.4-66.6H70.4C49.7 256 32 238.3 32 217.6zM448 364c11.046 0 20 8.954 20 20s-8.954 20-20 20-20-8.954-20-20 8.954-20 20-20z\"]\n};\nvar faHandPointRight = {\n prefix: 'fal',\n iconName: 'hand-point-right',\n icon: [512, 512, [], \"f0a4\", \"M441.6 147.2H319.809c5.437-12.189 9.791-27.01 9.791-44.8 0-40.478-32.286-70.4-73.6-70.4-48.546 0-57.8 53.853-71.683 76.315-11.062 17.761-42.869 57.069-60.919 67.144C117.792 166.194 107.62 160 96 160H32c-17.673 0-32 14.327-32 32v224c0 17.673 14.327 32 32 32h64c9.167 0 17.428-3.861 23.262-10.038C153.911 445.719 190.254 480 244.364 480H267.6c59.606 0 90.256-36.084 88.631-85.87 14.3-17.108 21.279-42.155 16.635-65.494 7.229-11.856 11.348-25.395 11.885-39.582.013-.351.024-.703.033-1.054H441.6c38.337 0 70.4-31.916 70.4-70.4 0-38.161-32.77-70.4-70.4-70.4zM32 192h64v224H32V192zm409.6 64h-99.301c14.004 16.003 15.726 46.718-5.4 66.6 12.247 21.431 1.841 49.771-14.1 58.5 7.116 42.685-10.993 66.9-55.201 66.9h-23.236c-44.337 0-76.684-31.267-116.364-40.861V208.462c29.835-10.706 68.904-59.818 83.5-83.262C227.296 99.686 232 64 256 64s41.6 16 41.6 38.4c0 38.4-28.8 57.9-28.8 76.8h172.8c20.1 0 38.4 18 38.4 38.4 0 20.7-17.7 38.4-38.4 38.4zM84 384c0 11.046-8.954 20-20 20s-20-8.954-20-20 8.954-20 20-20 20 8.954 20 20z\"]\n};\nvar faHandPointUp = {\n prefix: 'fal',\n iconName: 'hand-point-up',\n icon: [448, 512, [], \"f0a6\", \"M115.2 70.4v121.792c-12.189-5.437-27.01-9.791-44.8-9.791C29.922 182.4 0 214.687 0 256c0 48.546 53.853 57.8 76.315 71.683 17.761 11.062 57.069 42.869 67.144 60.919C134.194 394.208 128 404.38 128 416v64c0 17.673 14.327 32 32 32h224c17.673 0 32-14.327 32-32v-64c0-9.167-3.861-17.428-10.038-23.262C413.719 358.089 448 321.746 448 267.636V244.4c0-59.606-36.084-90.256-85.87-88.631-17.108-14.3-42.155-21.279-65.494-16.635-11.856-7.229-25.395-11.348-39.582-11.885a92.713 92.713 0 0 0-1.054-.033V70.4C256 32.063 224.084 0 185.6 0c-38.161 0-70.4 32.77-70.4 70.4zM160 480v-64h224v64H160zm64-409.6v99.301c16.003-14.004 46.718-15.726 66.6 5.4 21.431-12.247 49.771-1.841 58.5 14.1 42.685-7.116 66.9 10.993 66.9 55.201v23.236c0 44.337-31.267 76.684-40.861 116.364H176.462c-10.706-29.835-59.818-68.904-83.262-83.5C67.686 284.704 32 280 32 256s16-41.6 38.4-41.6c38.4 0 57.9 28.8 76.8 28.8V70.4c0-20.1 18-38.4 38.4-38.4 20.7 0 38.4 17.7 38.4 38.4zM352 428c11.046 0 20 8.954 20 20s-8.954 20-20 20-20-8.954-20-20 8.954-20 20-20z\"]\n};\nvar faHandPointer = {\n prefix: 'fal',\n iconName: 'hand-pointer',\n icon: [448, 512, [], \"f25a\", \"M360.543 188.156c-17.46-28.491-54.291-37.063-82.138-19.693-15.965-20.831-42.672-28.278-66.119-20.385V60.25c0-33.222-26.788-60.25-59.714-60.25S92.857 27.028 92.857 60.25v181.902c-20.338-13.673-47.578-13.89-68.389 1.472-26.556 19.605-32.368 57.08-13.132 83.926l114.271 159.5C136.803 502.673 154.893 512 174 512h185.714c27.714 0 51.832-19.294 58.145-46.528l28.571-123.25a60.769 60.769 0 0 0 1.57-13.723v-87c0-45.365-48.011-74.312-87.457-53.343zM82.097 275.588l28.258 39.439a7.999 7.999 0 1 0 14.503-4.659V60.25c0-37.35 55.428-37.41 55.428 0V241.5a8 8 0 0 0 8 8h7.144a8 8 0 0 0 8-8v-36.25c0-37.35 55.429-37.41 55.429 0v36.25a8 8 0 0 0 8 8H274a8 8 0 0 0 8-8v-21.75c0-37.351 55.429-37.408 55.429 0v21.75a8 8 0 0 0 8 8h7.143a8 8 0 0 0 8-8c0-37.35 55.429-37.41 55.429 0v87c0 2.186-.25 4.371-.742 6.496l-28.573 123.251C383.717 471.055 372.626 480 359.715 480H174c-8.813 0-17.181-4.332-22.381-11.588l-114.283-159.5c-22.213-31.004 23.801-62.575 44.761-33.324zM180.285 401v-87a8 8 0 0 1 8-8h7.144a8 8 0 0 1 8 8v87a8 8 0 0 1-8 8h-7.144a8 8 0 0 1-8-8zm78.572 0v-87a8 8 0 0 1 8-8H274a8 8 0 0 1 8 8v87a8 8 0 0 1-8 8h-7.143a8 8 0 0 1-8-8zm78.572 0v-87a8 8 0 0 1 8-8h7.143a8 8 0 0 1 8 8v87a8 8 0 0 1-8 8h-7.143a8 8 0 0 1-8-8z\"]\n};\nvar faHandReceiving = {\n prefix: 'fal',\n iconName: 'hand-receiving',\n icon: [640, 512, [], \"f47c\", \"M439.2 105.6L342.9 9.3C336.7 3.1 328.6 0 320.5 0s-16.2 3.1-22.4 9.3l-96.4 96.4c-12.3 12.3-12.3 32.4 0 44.7l96.4 96.4c6.2 6.2 14.3 9.3 22.4 9.3s16.2-3.1 22.4-9.3l96.4-96.4c12.3-12.4 12.3-32.4-.1-44.8zM320.5 224.4L224.1 128l96.3-96.4 96.4 96.4-96.3 96.4zM220 248.8c-14-19.2-49.1-31.4-74.5-3.9-15.6 16.8-15.9 42.8-2.5 61.3l28.6 39.3c6.5 8.9-6.5 19.1-13.6 10.7l-62-73.3V145.8c0-26-21.2-49.3-47.2-49.7C21.9 95.6 0 117.2 0 144v170.4c0 10.9 3.7 21.5 10.5 30l107 133.7c5.4 6.8 8.9 17.5 10.1 27 .5 4 4 6.9 8 6.9h16c4.8 0 8.5-3.9 8-8.7-1.6-16-7.5-33.3-17.1-45.2l-107-133.7c-2.3-2.8-3.5-6.4-3.5-10V144c0-21 32-21.6 32 .7v149.7l64.6 77.5c36.9 44.2 96.8-2.7 70.8-42.4-.2-.3-.4-.5-.5-.8l-30.6-42.2c-4.7-6.5-4.2-16.7 3.5-22.3 7-5.1 17.1-3.8 22.4 3.5l42.4 58.4c12.7 16.9 19.5 37.4 19.5 58v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-120c0-27.7-9-54.6-25.6-76.8L220 248.8zM640 144c0-26.8-21.9-48.4-48.8-48-26 .4-47.2 23.7-47.2 49.7v137.1l-62 73.3c-7.1 8.4-20.1-1.7-13.6-10.7l28.6-39.3c13.4-18.5 13.1-44.6-2.5-61.3-25.5-27.4-60.6-15.3-74.5 3.9l-42.4 58.4C361 329.3 352 356.3 352 384v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V384c0-20.6 6.8-41.1 19.5-58l42.4-58.4c5.3-7.3 15.3-8.7 22.4-3.5 7.8 5.6 8.3 15.8 3.5 22.3l-30.6 42.2c-.2.3-.4.5-.5.8-26.1 39.7 33.9 86.7 70.8 42.4l64.6-77.5V144.6c0-22.3 32-21.7 32-.7v170.4c0 3.6-1.2 7.2-3.5 10L497.6 458c-9.5 11.9-15.5 29.2-17.1 45.2-.5 4.8 3.2 8.7 8 8.7h16c4 0 7.5-2.9 8-6.9 1.2-9.6 4.6-20.2 10.1-27l107-133.7c6.8-8.5 10.5-19.1 10.5-30L640 144z\"]\n};\nvar faHandRock = {\n prefix: 'fal',\n iconName: 'hand-rock',\n icon: [512, 512, [], \"f255\", \"M412.055 83.099C394.09 42.33 342.756 30.157 308.44 57.07c-28.257-34.829-80.888-32.701-106.878 2.23C157.639 26.987 94.25 58.222 94.25 113.143v10.078C50.599 104.318 0 135.857 0 184.571v59.326c0 31.379 13.628 61.31 37.389 82.119l101.2 88.626C147.059 422.06 145 429.788 145 456c0 13.255 10.745 24 24 24h261c13.255 0 24-10.745 24-24 0-24.785-1.14-33.765 4.887-47.867l44.364-103.808c5.805-13.583 8.749-27.948 8.749-42.694V142.42c0-51.69-55.549-83.525-99.945-59.321zM159.67 390.568l-101.2-88.626C41.648 287.21 32 266.054 32 243.897v-59.326c0-19.525 16.327-35.242 36.112-34.852 19.237.316 34.888 16.267 34.888 35.557v42.946c0 2.306.995 4.5 2.729 6.019l7.25 6.349a8 8 0 0 0 13.271-6.018V113.143c0-45.246 71-47.412 71 .706v27.865a8 8 0 0 0 8 8h7.25a8 8 0 0 0 8-8V98.857c0-45.23 71-47.429 71 .705v42.151a8 8 0 0 0 8 8h7.25a8 8 0 0 0 8-8V109.57c0-46.004 71-46.504 71 .705v31.438a8 8 0 0 0 8 8H401a8 8 0 0 0 8-8c0-45.242 71-47.428 71 .706V261.63a76.236 76.236 0 0 1-6.174 30.119l-44.365 103.808C420.883 415.63 422 429.933 422 448H177c0-19.081 2.866-39.746-17.33-57.432z\"]\n};\nvar faHandScissors = {\n prefix: 'fal',\n iconName: 'hand-scissors',\n icon: [512, 512, [], \"f257\", \"M256 480h72.5c4.615 0 9.232-.528 13.722-1.569l123.25-28.57c13.133-3.044 24.995-10.478 33.4-20.933 8.466-10.531 13.128-23.746 13.128-37.21V177.445c0-21.438-11.684-41.333-30.492-51.92l-101.5-57.139c-36.681-20.651-64.548-.478-88.228 28.683l-156.211-60.46c-34.639-13.405-73.672 3.411-87.35 37.709-13.696 34.345 3.326 73.326 38.212 86.829L176 192l-108.5-2.843c-37.22 0-67.5 29.991-67.5 66.855s30.28 66.854 67.5 66.854h102.327c-9.558 28.393 3.681 59.705 31.297 72.775C183.12 434.864 212.126 480 256 480zM364.311 96.271l101.5 57.14c8.753 4.927 14.189 14.137 14.189 24.035v214.272c0 12.91-8.945 24.001-21.754 26.97l-123.25 28.57a28.843 28.843 0 0 1-6.496.742H256c-37.41 0-37.35-55.424 0-55.424a8 8 0 0 0 8-8v-7.143a8 8 0 0 0-8-8h-29c-37.41 0-37.351-55.425 0-55.425h29a8 8 0 0 0 8-8v-7.143a8 8 0 0 0-8-8H67.5c-47.021 0-46.929-69.709 0-69.709H256a8 8 0 0 0 8-8V201.04a8 8 0 0 0-5.112-7.461L97.981 131.305c-43.579-16.867-17.902-81.857 26.037-64.852l172.497 66.761a8.002 8.002 0 0 0 9.098-2.418l22.54-27.757c8.76-10.785 23.966-13.632 36.158-6.768z\"]\n};\nvar faHandSparkles = {\n prefix: 'fal',\n iconName: 'hand-sparkles',\n icon: [640, 512, [], \"e05d\", \"M307.58,288a4,4,0,0,0-7.15,0L288,317.79l-29.79,12.42a4,4,0,0,0,0,7.15L288,349.78l12.42,29.78a4,4,0,0,0,7.15,0L320,349.78l29.79-12.42a4,4,0,0,0,0-7.15L320,317.79ZM106.66,168.46l.09-.05,49.55-20.66a7.32,7.32,0,0,0,3.68-6h0a7.29,7.29,0,0,0-3.68-6l-49.57-20.67-.07,0L86,65.48a6.65,6.65,0,0,0-11.92,0l-20.7,49.63-.05,0L3.7,135.82a7.29,7.29,0,0,0-3.68,6H0a7.32,7.32,0,0,0,3.68,6l49.57,20.67.07,0L74,218.08a6.65,6.65,0,0,0,11.92,0l20.69-49.62ZM640,429.78a7.29,7.29,0,0,0-3.68-6l-49.57-20.67-.07,0L566,353.48a6.65,6.65,0,0,0-11.92,0l-20.7,49.63-.05,0L483.7,423.82a7.29,7.29,0,0,0-3.68,6h0a7.32,7.32,0,0,0,3.68,6l49.57,20.67.07,0L554,506.08a6.65,6.65,0,0,0,11.92,0l20.69-49.62h0l.09,0,49.55-20.66a7.32,7.32,0,0,0,3.68-6h0ZM453.89,480H273.3a32.3,32.3,0,0,1-26.71-14.3L132.39,293.8a23.92,23.92,0,0,1,5.91-33.39c15.79-11.11,30,1,33.39,5.89l37.81,54.4a8,8,0,0,0,14.59-4.61V88a24,24,0,1,1,48,0V248a8,8,0,0,0,8,8H292.3a35.81,35.81,0,0,1,7.78-1.66c2.26-1.41,4-3.49,4-6.34V56a24,24,0,0,1,48,0V248a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V88a24,24,0,0,1,48,0V248a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V168a24,24,0,0,1,48,0V288.3a321.9,321.9,0,0,1-6.2,62.79l-6.27,31.42,9.25-3.86,15.63-37.49.41-1,.47-.95a38.75,38.75,0,0,1,16.93-16.7c1.1-11.35,1.69-22.75,1.69-34.12V168a55.89,55.89,0,0,0-55.91-56,55.24,55.24,0,0,0-24,5.41V88a56,56,0,0,0-82.7-49.2,56,56,0,0,0-106.59,0A56,56,0,0,0,192.09,88V240.8C180.59,229,150,213.09,120,234.09a56.09,56.09,0,0,0-13.81,78l113.7,171.32A63.88,63.88,0,0,0,273.19,512H453.8a64.21,64.21,0,0,0,54.9-31.16l-30.47-12.7A31.57,31.57,0,0,1,453.89,480Z\"]\n};\nvar faHandSpock = {\n prefix: 'fal',\n iconName: 'hand-spock',\n icon: [512, 512, [], \"f259\", \"M503.03886,115.67818a59.82954,59.82954,0,0,0-37.35993-27.03135,60.44007,60.44007,0,0,0-33.70576,1.64649c.08593-26.49815-16.33728-50.40449-41.75234-58.467C344.205,17.23249,317.34857,55.80686,312.964,77.139L291.47649,181.89913,256.33524,45.22479A60.245,60.245,0,1,0,139.64431,75.24248l3.74205,14.55279a60.14487,60.14487,0,0,0-75.66708,74.55888C108.98335,303.634,106.626,295.65543,107.02249,297.05192l-5.49394-5.1719a60.24146,60.24146,0,1,0-82.5633,87.74643l98.14084,92.36363A146.6781,146.6781,0,0,0,217.99879,512H333.41632a117.845,117.845,0,0,0,115.02693-90.85386L510.33546,161.2096A59.83169,59.83169,0,0,0,503.03886,115.67818Zm-23.83309,38.11928L417.31356,413.73205a85.95272,85.95272,0,0,1-83.89724,66.26783H217.99879A114.79622,114.79622,0,0,1,139.035,448.68726l-98.1428-92.36754c-27.206-25.59385,11.5191-66.8108,38.70753-41.13688l54.91005,51.67989c5.43534,5.12111,13.48191.70313,13.48191-5.8262a264.52145,264.52145,0,0,0-10.90584-75.19559L98.40367,155.274c-10.67929-36.08607,43.56086-51.87129,54.18156-16.045L186.25584,252.8662c5.78884,19.57234,34.942,11.08012,29.96762-8.28909L170.63728,67.27956c-9.36683-36.45913,45.39283-50.30683,54.70693-14.086l50.834,197.70778c4.60725,17.91218,30.28988,17.14264,33.98115-.83985L344.30654,83.58235c7.46066-36.2931,63.11286-26.49619,54.994,13.0899L368.63375,246.17282c-3.83775,18.7364,24.45807,25.40634,28.98133,6.4219l26.63963-111.88129C433.07469,103.768,487.79334,117.813,479.20577,153.79746Z\"]\n};\nvar faHands = {\n prefix: 'fal',\n iconName: 'hands',\n icon: [640, 512, [], \"f4c2\", \"M220 248.8c-14-19.2-49.1-31.4-74.5-3.9-15.6 16.8-15.9 42.8-2.5 61.3l28.6 39.3c6.5 8.9-6.5 19.1-13.6 10.7l-62-73.3V145.8c0-26-21.2-49.3-47.2-49.7C21.9 95.6 0 117.2 0 144v170.4c0 10.9 3.7 21.5 10.5 30l107 133.7c5.4 6.8 8.9 17.5 10.1 27 .5 4 4 6.9 8 6.9h16c4.8 0 8.5-3.9 8-8.7-1.6-16-7.5-33.3-17.1-45.2l-107-133.7c-2.3-2.8-3.5-6.4-3.5-10V144c0-21 32-21.6 32 .7v149.7l64.6 77.5c36.9 44.2 96.8-2.7 70.8-42.4-.2-.3-.4-.5-.5-.8l-30.6-42.2c-4.7-6.5-4.2-16.7 3.5-22.3 7-5.1 17.1-3.8 22.4 3.5l42.4 58.4c12.7 16.9 19.5 37.4 19.5 58v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-120c0-27.7-9-54.6-25.6-76.8L220 248.8zM640 144c0-26.8-21.9-48.4-48.8-48-26 .4-47.2 23.7-47.2 49.7v137.1l-62 73.3c-7.1 8.4-20.1-1.7-13.6-10.7l28.6-39.3c13.4-18.5 13.1-44.6-2.5-61.3-25.5-27.4-60.6-15.3-74.5 3.9l-42.4 58.4C361 329.3 352 356.3 352 384v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V384c0-20.6 6.8-41.1 19.5-58l42.4-58.4c5.3-7.3 15.3-8.7 22.4-3.5 7.8 5.6 8.3 15.8 3.5 22.3l-30.6 42.2c-.2.3-.4.5-.5.8-26.1 39.7 33.9 86.7 70.8 42.4l64.6-77.5V144.6c0-22.3 32-21.7 32-.7v170.4c0 3.6-1.2 7.2-3.5 10L497.6 458c-9.5 11.9-15.5 29.2-17.1 45.2-.5 4.8 3.2 8.7 8 8.7h16c4 0 7.5-2.9 8-6.9 1.2-9.6 4.6-20.2 10.1-27l107-133.7c6.8-8.5 10.5-19.1 10.5-30L640 144z\"]\n};\nvar faHandsHeart = {\n prefix: 'fal',\n iconName: 'hands-heart',\n icon: [640, 512, [], \"f4c3\", \"M436 17.6C421.6 5.1 405.4 0 389.6 0 366.8 0 345 10.7 331 25.3L320 37l-11.1-11.6C295.2 11 273.3 0 250.2 0c-15.7 0-31.8 5.1-46.3 17.6-35.3 30.6-37.2 85.6-5.6 118.7l108.9 114.1c7 7.4 18.4 7.4 25.5 0l108.9-114.1c31.6-33.1 29.8-88.1-5.6-118.7zm-17 96.5l-99 103.8-99-103.8c-16.7-17.5-20.4-51.6 3.4-72.1 8.2-7.1 17.3-9.9 26.3-9.9 13.9 0 27.3 6.9 35.6 15.6L320 82.9l33.7-35.3C361.9 39 375.4 32 389.3 32c8.9 0 18.1 2.8 26.2 9.9 23.9 20.7 20.2 54.6 3.5 72.2zM220 248.8c-14-19.2-49.1-31.4-74.5-3.9-15.6 16.8-15.9 42.8-2.5 61.3l28.6 39.3c6.5 8.9-6.5 19.1-13.6 10.7l-62-73.3V145.8c0-26-21.2-49.3-47.2-49.7C21.9 95.6 0 117.2 0 144v170.4c0 10.9 3.7 21.5 10.5 30l107 133.7c5.4 6.8 8.9 17.5 10.1 27 .5 4 4 6.9 8 6.9h16c4.8 0 8.5-3.9 8-8.7-1.6-16-7.5-33.3-17.1-45.2l-107-133.7c-2.3-2.8-3.5-6.4-3.5-10V144c0-21 32-21.6 32 .7v149.7l64.6 77.5c36.9 44.2 96.8-2.7 70.8-42.4-.2-.3-.4-.5-.5-.8l-30.6-42.2c-4.7-6.5-4.2-16.7 3.5-22.3 7-5.1 17.1-3.8 22.4 3.5l42.4 58.4c12.7 16.9 19.5 37.4 19.5 58v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-120c0-27.7-9-54.6-25.6-76.8L220 248.8zM640 144c0-26.8-21.9-48.4-48.8-48-26 .4-47.2 23.7-47.2 49.7v137.1l-62 73.3c-7.1 8.4-20.1-1.7-13.6-10.7l28.6-39.3c13.4-18.5 13.1-44.6-2.5-61.3-25.5-27.4-60.6-15.3-74.5 3.9l-42.4 58.4C361 329.3 352 356.3 352 384v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V384c0-20.6 6.8-41.1 19.5-58l42.4-58.4c5.3-7.3 15.3-8.7 22.4-3.5 7.8 5.6 8.3 15.8 3.5 22.3l-30.6 42.2c-.2.3-.4.5-.5.8-26.1 39.7 33.9 86.7 70.8 42.4l64.6-77.5V144.6c0-22.3 32-21.7 32-.7v170.4c0 3.6-1.2 7.2-3.5 10L497.6 458c-9.5 11.9-15.5 29.2-17.1 45.2-.5 4.8 3.2 8.7 8 8.7h16c4 0 7.5-2.9 8-6.9 1.2-9.6 4.6-20.2 10.1-27l107-133.7c6.8-8.5 10.5-19.1 10.5-30L640 144z\"]\n};\nvar faHandsHelping = {\n prefix: 'fal',\n iconName: 'hands-helping',\n icon: [640, 512, [], \"f4c4\", \"M638.9 209.7l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-108 63V240c0-26.5-21.5-48-48-48H320v62.2c0 16-10.9 30.8-26.6 33.3-20 3.3-37.4-12.2-37.4-31.6v-94.3c0-13.8 7.1-26.6 18.8-33.9l33.4-20.9c11.4-7.1 24.6-10.9 38.1-10.9h103.2l118.5-67c3.8-2.2 5.2-7.1 3-10.9l-8-14c-2.2-3.8-7.1-5.2-10.9-3l-111 63h-94.7c-19.5 0-38.6 5.5-55.1 15.8l-33.5 20.9c-17.5 11-28.7 28.6-32.2 48.5l-62.5 37c-21.6 13-35.1 36.7-35.1 61.9v38.6L4 357.1c-3.8 2.2-5.2 7.1-3 10.9l8 13.9c2.2 3.8 7.1 5.2 10.9 3L160 305.3v-57.2c0-14 7.5-27.2 19.4-34.4l44.6-26.4v65.9c0 33.4 24.3 63.3 57.6 66.5 38.1 3.7 70.4-26.3 70.4-63.7v-32h112c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16h-24v36c0 19.8-16 35.8-35.8 35.8h-16.1v16c0 22.2-18 40.2-40.2 40.2H238.5l-115.6 67.3c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.8c2.2 3.8 7.1 5.1 10.9 2.9L247.1 448h100.8c34.8 0 64-24.8 70.8-57.7 30.4-6.7 53.3-33.9 53.3-66.3v-4.7c13.6-2.3 24.6-10.6 31.8-21.7l132.2-77c3.8-2.2 5.1-7.1 2.9-10.9z\"]\n};\nvar faHandsUsd = {\n prefix: 'fal',\n iconName: 'hands-usd',\n icon: [640, 512, [], \"f4c5\", \"M640 144c0-26.8-21.9-48.4-48.8-48-26 .4-47.2 23.7-47.2 49.7v137.1l-62 73.3c-7.1 8.4-20.1-1.7-13.6-10.7l28.6-39.3c13.4-18.5 13.1-44.6-2.5-61.3-25.5-27.4-60.6-15.3-74.5 3.9l-42.4 58.4C361 329.3 352 356.3 352 384v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V384c0-20.6 6.8-41.1 19.5-58l42.4-58.4c5.3-7.3 15.3-8.7 22.4-3.5 7.8 5.6 8.3 15.8 3.5 22.3l-30.6 42.2c-.2.3-.4.5-.5.8-26.1 39.7 33.9 86.7 70.8 42.4l64.6-77.5V144.6c0-22.3 32-21.7 32-.7v170.4c0 3.6-1.2 7.2-3.5 10L497.6 458c-9.5 11.9-15.5 29.2-17.1 45.2-.5 4.8 3.2 8.7 8 8.7h16c4 0 7.5-2.9 8-6.9 1.2-9.6 4.6-20.2 10.1-27l107-133.7c6.8-8.5 10.5-19.1 10.5-30L640 144zM220 248.8c-14-19.2-49.1-31.4-74.5-3.9-15.6 16.8-15.9 42.8-2.5 61.3l28.6 39.3c6.5 8.9-6.5 19.1-13.6 10.7l-62-73.3V145.8c0-26-21.2-49.3-47.2-49.7C21.9 95.6 0 117.2 0 144v170.4c0 10.9 3.7 21.5 10.5 30l107 133.7c5.4 6.8 8.9 17.5 10.1 27 .5 4 4 6.9 8 6.9h16c4.8 0 8.5-3.9 8-8.7-1.6-16-7.5-33.3-17.1-45.2l-107-133.7c-2.3-2.8-3.5-6.4-3.5-10V144c0-21 32-21.6 32 .7v149.7l64.6 77.5c36.9 44.2 96.8-2.7 70.8-42.4-.2-.3-.4-.5-.5-.8l-30.6-42.2c-4.7-6.5-4.2-16.7 3.5-22.3 7-5.1 17.1-3.8 22.4 3.5l42.4 58.4c12.7 16.9 19.5 37.4 19.5 58v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-120c0-27.7-9-54.6-25.6-76.8L220 248.8zm169.1-60c10.1-29.6-7.3-59.8-35.1-67.8l-59.1-16.9c-8.8-2.5-14.9-10.6-14.9-19.7 0-11.3 9.2-20.5 20.5-20.5h36.9c8.2 0 16.1 2.6 22.6 7.3 3 2.2 7.2 1.5 9.8-1.2l11.4-11.4c3.5-3.5 2.9-9.2-1-12.2C368 37.1 353.1 32 337.4 32H336V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v24h-3.5c-30.6 0-55.1 26.3-52.2 57.5 2.1 22.2 19.1 40.1 40.5 46.2l56.4 16.1c8.8 2.5 14.9 10.6 14.9 19.7 0 11.3-9.2 20.5-20.5 20.5h-36.9c-8.2 0-16.1-2.6-22.6-7.3-3-2.2-7.2-1.5-9.8 1.2l-11.4 11.4c-3.5 3.5-2.9 9.2 1 12.2 12.3 9.4 27.2 14.5 42.9 14.5h1.4v24c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-24h1.4c22.6 0 44.1-13.6 51.5-35.2z\"]\n};\nvar faHandsWash = {\n prefix: 'fal',\n iconName: 'hands-wash',\n icon: [576, 512, [], \"e05e\", \"M416,160a64,64,0,1,0,64-64A64.06,64.06,0,0,0,416,160Zm96,0a32,32,0,1,1-32-32A32,32,0,0,1,512,160ZM432,96a48,48,0,1,0-48-48A48.05,48.05,0,0,0,432,96Zm0-64a16,16,0,1,1-16,16A16,16,0,0,1,432,32Zm83.22,268a53.5,53.5,0,0,0-.2-19.25C510.26,256,488,238,462.21,238H375.94a53.21,53.21,0,0,0-8.3-31.58l2.45-7.75,13.44-42.54a53,53,0,0,0-43.24-68.47,53.12,53.12,0,0,0-45-43.57A53.08,53.08,0,0,0,249,.35,52.23,52.23,0,0,0,243,0h0a53.09,53.09,0,0,0-37.38,15.82,53.62,53.62,0,0,0-18.49-5.64,52.05,52.05,0,0,0-6-.35c-22.85,0-43.71,15.55-50.75,37.82l-26,82.26A53.15,53.15,0,0,0,86,126.48c-29.54,0-53.64,23.53-54,52.46V278c.53,33.33,13.29,64.23,34,88.73A79.87,79.87,0,0,0,112,512c24.09,0,45.47-10.93,60.15-27.84C194.78,501.28,222.42,512,253,512H435a53,53,0,0,0,52.26-61.86,53.09,53.09,0,0,0,28-56,52.84,52.84,0,0,0,0-94.1ZM333,119.14a19.44,19.44,0,0,1,2.27.13A21,21,0,0,1,353,146.49l-12.24,38.74a51.92,51.92,0,0,0-33.22-.94l-11.67,3.6,16.84-53.3C315.56,125.64,323.76,119.14,333,119.14ZM64,278V179.36c.15-11.63,10.17-20.88,21.71-20.88h.08a21,21,0,0,1,20.88,21.13l1.82,43.79L161,57.29c2.83-9,11-15.46,20.23-15.46a21.4,21.4,0,0,1,2.26.13,21,21,0,0,1,17.8,27.22L167.52,176a7,7,0,0,0,13.35,4.22L222.8,47.46c2.83-9,11-15.46,20.23-15.46a19.32,19.32,0,0,1,2.27.13,21,21,0,0,1,17.79,27.22L225.14,179.92a7,7,0,0,0,13.35,4.22L267.77,91c2.82-9,11-15.45,20.23-15.45a19.15,19.15,0,0,1,2.26.13,21,21,0,0,1,17.79,27.22l-28.43,90L213.1,213.45C154.75,232.9,116,286.47,116,347v5.43c-1.35-.06-2.63-.4-4-.4a79.54,79.54,0,0,0-15.3,1.55A107.58,107.58,0,0,1,64,278Zm48,202a48,48,0,1,1,48-48A48,48,0,0,1,112,480ZM491,368H351a7,7,0,0,0,0,14H462.21c10.16,0,19.47,6.86,21.39,16.84A21,21,0,0,1,463,424H351a7,7,0,0,0,0,14h83.21c10.16,0,19.47,6.86,21.39,16.84A21,21,0,0,1,435,480H253a103.56,103.56,0,0,1-65.27-23.41A79,79,0,0,0,192,432c0-31.1-18-57.81-44-71V347a108.4,108.4,0,0,1,74.54-103l94.25-29.09A21.43,21.43,0,0,1,323,214a21,21,0,0,1,6.24,41.06L288,270H462.21c10.16,0,19.47,6.86,21.39,16.84A21,21,0,0,1,463,312H351a7,7,0,0,0,0,14H490.21c10.16,0,19.47,6.86,21.39,16.84A21,21,0,0,1,491,368Z\"]\n};\nvar faHandshake = {\n prefix: 'fal',\n iconName: 'handshake',\n icon: [640, 512, [], \"f2b5\", \"M16 319.8c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16c0 8.9 7.2 16 16 16zM632 128l-113.5.2-51.2-49.9c-9.1-9.1-21.1-14.1-33.9-14.1h-101c-10.4 0-20.1 3.9-28.3 10-8.4-6.5-18.7-10.3-29.3-10.3h-69.5c-12.7 0-24.9 5.1-33.9 14.1l-50 50H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h56v191.9H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h56c17.6 0 31.8-14.2 31.9-31.7h33.2l81.5 78c29.8 24.1 71.8 23.4 101-.2l7.2 6.2c9.6 7.8 21.3 11.9 33.5 11.9 16 0 31.1-7 41.4-19.6l21.9-26.9c16.4 8.9 42.9 9 60-12l9.5-11.7c6.2-7.6 9.6-16.6 10.5-25.7h48.6c.1 17.5 14.4 31.7 31.9 31.7h56c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-56V160.2l56-.2c4.4 0 8-3.6 8-8v-16c-.1-4.5-3.7-8-8.1-8zM460.2 357.6l-9.5 11.7c-5.4 6.6-15.4 8.1-22.5 2.3l-17.8-14.4-41.5 51c-7.5 9.3-21 10.2-29.4 3.4l-30.6-26.1-10.4 12.8c-16.7 20.5-47 23.7-66.6 7.9L142 320.1H96V159.9h38.6l59.3-59.3c3-3 7.1-4.7 11.3-4.7h69.5c.9 2.2.3.7 1.1 2.9l-59 54.2c-28.2 25.9-29.6 69.2-4.2 96.9 14.3 15.6 58.6 39.3 96.9 4.2l22.8-20.9 125.6 101.9c6.8 5.6 7.8 15.7 2.3 22.5zm83.8-37.5h-57.2c-2.5-3.5-5.3-6.9-8.8-9.8l-121.9-99 28.4-26.1c6.5-6 7-16.1 1-22.6s-16.1-6.9-22.6-1l-75.1 68.8c-14.4 13.1-38.6 12-51.7-2.2-13.6-14.8-12.7-38 2.2-51.7l83.1-76.2c3-2.7 6.8-4.2 10.8-4.2h101c4.3 0 8.3 1.7 11.4 4.8l60.7 59.1H544v160.1zm80-32.2c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16c0-8.9-7.2-16-16-16z\"]\n};\nvar faHandshakeAlt = {\n prefix: 'fal',\n iconName: 'handshake-alt',\n icon: [640, 512, [], \"f4c6\", \"M238.4 176.6l83.1-76.2c3-2.7 6.8-4.2 10.8-4.2h101c4.3 0 8.3 1.7 11.4 4.8l60.7 59.1H632c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H518.5l-51.2-49.9c-9.1-9.1-21.1-14.1-33.9-14.1h-101c-10.4 0-20.1 3.9-28.3 10-8.4-6.5-18.7-10.3-29.3-10.3h-69.5c-12.7 0-24.9 5.1-34 14.1L121.4 128H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h126.6l59.3-59.3c3-3 7.1-4.7 11.3-4.7h69.5c.9 2.2.3.7 1.1 2.9l-59 54.1c-28.2 25.9-29.6 69.2-4.2 96.9 14.3 15.6 58.6 39.3 96.9 4.2l22.8-20.9 125.6 101.9c6.8 5.5 7.9 15.7 2.3 22.5l-9.5 11.7c-5.4 6.6-15.4 8.1-22.5 2.3l-17.8-14.4-41.5 51c-7.5 9.3-21 10.2-29.4 3.4l-30.6-26.1-10.4 12.8c-16.7 20.5-47 23.7-66.6 7.9L142 320.1H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h121.2l81.5 78c29.8 24.1 71.8 23.4 101-.2l7.2 6.2c9.6 7.8 21.3 11.9 33.5 11.9 16 0 31.1-7 41.4-19.6l21.9-26.9c16.4 8.9 42.9 9 60-12l9.5-11.7c6.2-7.6 9.6-16.6 10.5-25.7H632c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H486.8c-2.5-3.5-5.3-6.9-8.8-9.8l-121.9-99 28.4-26.1c6.5-6 7-16.1 1-22.6s-16.1-6.9-22.6-1l-75.1 68.8c-14.4 13.1-38.6 12-51.7-2.2-13.5-14.7-12.6-37.9 2.3-51.6z\"]\n};\nvar faHandshakeAltSlash = {\n prefix: 'fal',\n iconName: 'handshake-alt-slash',\n icon: [640, 512, [], \"e05f\", \"M385.5,162.59a16.07,16.07,0,0,0-22.59-1l-27.47,25.17,25.5,20.08L384.5,185.2A16,16,0,0,0,385.5,162.59ZM368.91,408.2a21.14,21.14,0,0,1-29.41,3.39L308.91,385.5,298.5,398.3c-16.7,20.5-47,23.7-66.59,7.9L142,320.09H8a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H129.2l81.5,78a80.23,80.23,0,0,0,101-.18l7.21,6.18a53.33,53.33,0,0,0,74.89-7.68l16.29-20-25.2-19.84ZM632,320.09H504.76l40.63,32H632a8,8,0,0,0,8-8v-16A8,8,0,0,0,632,320.09ZM8,160H94.65L54,128H8a8,8,0,0,0-8,8v16A8,8,0,0,0,8,160Zm624-31.91H518.5L467.3,78.2a47.55,47.55,0,0,0-33.89-14.11h-101c-10.41,0-20.11,3.91-28.32,10A48.06,48.06,0,0,0,274.8,63.8H205.3a47.57,47.57,0,0,0-20.13,4.63l35,27.57H274.7c.89,2.2.3.7,1.1,2.91l-24,22L277.27,141l44.23-40.55a16,16,0,0,1,10.8-4.21h101a16,16,0,0,1,11.4,4.8l60.71,59.09H632a8,8,0,0,0,8-8v-16A8,8,0,0,0,632,128.09ZM23,1.8A7.88,7.88,0,0,0,11.77,3l-10,12.5A7.94,7.94,0,0,0,3,26.71L617,510.23A8,8,0,0,0,628.2,509l10-12.5a7.86,7.86,0,0,0-1.21-11.2Z\"]\n};\nvar faHandshakeSlash = {\n prefix: 'fal',\n iconName: 'handshake-slash',\n icon: [640, 512, [], \"e060\", \"M16,319.89a16,16,0,1,0-16-16A16.05,16.05,0,0,0,16,319.89Zm369.44-157.2a16.07,16.07,0,0,0-22.59-1l-27.36,25.07L361,206.85l23.45-21.55A16,16,0,0,0,385.44,162.69ZM368.85,408.3a21.15,21.15,0,0,1-29.4,3.39l-30.59-26.1-10.4,12.8c-16.7,20.5-47,23.7-66.59,7.91L142,320.19H96V161L54.22,128.09H8a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H64V352H8a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H64a31.89,31.89,0,0,0,31.9-31.7h33.18l81.49,78a80.23,80.23,0,0,0,101-.21l7.2,6.21a53.36,53.36,0,0,0,74.9-7.71l16.45-20.22-25.18-19.82ZM623.91,288a16,16,0,1,0,16,16A16,16,0,0,0,623.91,288ZM640,136.09a8.09,8.09,0,0,0-8.09-8l-113.49.21L467.23,78.39A47.58,47.58,0,0,0,433.34,64.3h-101c-10.41,0-20.11,3.89-28.31,10A48.09,48.09,0,0,0,274.76,64H205.27a47.62,47.62,0,0,0-19.92,4.52L220.24,96h54.42c.89,2.19.3.69,1.1,2.89l-23.93,22,25.39,20,44.14-40.48a16.06,16.06,0,0,1,10.79-4.2h101A15.9,15.9,0,0,1,444.53,101l60.69,59.09h38.7v160.1h-39l81,63.81H632a8,8,0,0,0,8-8V360a8,8,0,0,0-8-8H576V160.3l56-.21a8,8,0,0,0,8-8ZM23.07,1.8A7.87,7.87,0,0,0,11.87,3l-10,12.5a7.93,7.93,0,0,0,1.2,11.2L617,510.23A7.94,7.94,0,0,0,628.2,509l10-12.5a7.86,7.86,0,0,0-1.21-11.2Z\"]\n};\nvar faHanukiah = {\n prefix: 'fal',\n iconName: 'hanukiah',\n icon: [624, 512, [], \"f6e6\", \"M232 128c13.25 0 24-11.94 24-26.67S232 48 232 48s-24 38.61-24 53.33S218.75 128 232 128zm160 0c13.25 0 24-11.94 24-26.67S392 48 392 48s-24 38.61-24 53.33S378.75 128 392 128zm-8 32c-4.42 0-8 3.58-8 8v136h32V168c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v136h32V168c0-4.42-3.58-8-8-8h-16zm8-32c13.25 0 24-11.94 24-26.67S456 48 456 48s-24 38.61-24 53.33S442.75 128 456 128zm64 0c13.25 0 24-11.94 24-26.67S520 48 520 48s-24 38.61-24 53.33S506.75 128 520 128zm-8 32c-4.42 0-8 3.58-8 8v136h32V168c0-4.42-3.58-8-8-8h-16zM312 80c13.25 0 24-11.94 24-26.67S312 0 312 0s-24 38.61-24 53.33S298.75 80 312 80zm-88 80c-4.42 0-8 3.58-8 8v136h32V168c0-4.42-3.58-8-8-8h-16zm384 0h-16c-4.42 0-8 3.58-8 8v136c0 26.51-21.49 48-48 48H328V120c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v232H88c-26.51 0-48-21.49-48-48V168c0-4.42-3.58-8-8-8H16c-4.42 0-8 3.58-8 8v136c0 44.18 35.82 80 80 80h208v96H96c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h432c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H328v-96h208c44.18 0 80-35.82 80-80V168c0-4.42-3.58-8-8-8zM48 101.33C48 86.61 24 48 24 48S0 86.61 0 101.33 10.75 128 24 128s24-11.94 24-26.67zM600 48s-24 38.61-24 53.33S586.75 128 600 128s24-11.94 24-26.67S600 48 600 48zM96 160c-4.42 0-8 3.58-8 8v136h32V168c0-4.42-3.58-8-8-8H96zm8-32c13.25 0 24-11.94 24-26.67S104 48 104 48s-24 38.61-24 53.33S90.75 128 104 128zm64 0c13.25 0 24-11.94 24-26.67S168 48 168 48s-24 38.61-24 53.33S154.75 128 168 128zm-8 32c-4.42 0-8 3.58-8 8v136h32V168c0-4.42-3.58-8-8-8h-16z\"]\n};\nvar faHardHat = {\n prefix: 'fal',\n iconName: 'hard-hat',\n icon: [512, 512, [], \"f807\", \"M480 352v-32c0-101.34-67.66-186.11-160-213.75V96a32 32 0 0 0-32-32h-64a32 32 0 0 0-32 32v10.25C99.66 133.89 32 218.66 32 320v32a32 32 0 0 0-32 32v32a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32v-32a32 32 0 0 0-32-32zM64 320c0-78.76 48.24-145.4 116.28-174.88l26 104.07A9 9 0 0 0 224 247V96h64v151a9 9 0 0 0 17.7 2.18l26-104.07C399.76 174.6 448 241.24 448 320v32H64zm416 96H32v-32h448z\"]\n};\nvar faHashtag = {\n prefix: 'fal',\n iconName: 'hashtag',\n icon: [448, 512, [], \"f292\", \"M446.381 182.109l1.429-8c1.313-7.355-4.342-14.109-11.813-14.109h-98.601l20.338-113.891C359.047 38.754 353.392 32 345.92 32h-8.127a12 12 0 0 0-11.813 9.891L304.89 160H177.396l20.338-113.891C199.047 38.754 193.392 32 185.92 32h-8.127a12 12 0 0 0-11.813 9.891L144.89 160H42.003a12 12 0 0 0-11.813 9.891l-1.429 8C27.448 185.246 33.103 192 40.575 192h98.6l-22.857 128H13.432a12 12 0 0 0-11.813 9.891l-1.429 8C-1.123 345.246 4.532 352 12.003 352h98.601L90.266 465.891C88.953 473.246 94.608 480 102.08 480h8.127a12 12 0 0 0 11.813-9.891L143.11 352h127.494l-20.338 113.891C248.953 473.246 254.608 480 262.08 480h8.127a12 12 0 0 0 11.813-9.891L303.11 352h102.886a12 12 0 0 0 11.813-9.891l1.429-8c1.313-7.355-4.342-14.109-11.813-14.109h-98.601l22.857-128h102.886a12 12 0 0 0 11.814-9.891zM276.318 320H148.825l22.857-128h127.494l-22.858 128z\"]\n};\nvar faHatChef = {\n prefix: 'fal',\n iconName: 'hat-chef',\n icon: [512, 512, [], \"f86b\", \"M416 32a95.17 95.17 0 0 0-57.73 19.74C334.93 20.5 298 0 256 0s-78.93 20.5-102.27 51.74A95.56 95.56 0 0 0 0 128c0 41.74 64 224 64 224v128a32 32 0 0 0 32 32h320a32 32 0 0 0 32-32V352s64-182.26 64-224a96 96 0 0 0-96-96zm0 448H96v-96h320zm0-128h-44.09L384 201.25a8 8 0 0 0-7.33-8.61l-16-1.28h-.65a8 8 0 0 0-8 7.37L339.8 352h-68.46V200a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v152H172.2l-12.27-153.3a8 8 0 0 0-8-7.37h-.65l-16 1.28a8 8 0 0 0-7.33 8.61L140.09 352H96S32 150.7 32 128a64.07 64.07 0 0 1 64-64 63.22 63.22 0 0 1 38.39 13.24l25.68 19.48 19.3-25.83C197.83 46.18 225.77 32 256 32s58.17 14.18 76.63 38.89l19.3 25.83 25.68-19.48A63.22 63.22 0 0 1 416 64a64.07 64.07 0 0 1 64 64c0 22.7-64 224-64 224z\"]\n};\nvar faHatCowboy = {\n prefix: 'fal',\n iconName: 'hat-cowboy',\n icon: [640, 512, [], \"f8c0\", \"M626.38 258.52a26.15 26.15 0 0 0-10.93-2.36 25.84 25.84 0 0 0-20.38 9.61c-.37.48-23.28 30.85-85.94 55.42C498.86 250.73 465.52 64 400.33 64c-15.56 0-29.44 7.41-41.11 17.45a59.08 59.08 0 0 1-78.43 0C269.12 71.41 255.24 64 239.68 64c-65.31 0-98.58 187-108.78 257.18-62.08-24.34-85.16-54.38-86-55.38a25.39 25.39 0 0 0-20.3-9.8 26.35 26.35 0 0 0-10.78 2.29C2.73 263.22-2.62 274.85 1.26 285.5 2 287.44 75.36 480 320 480s318-192.56 318.75-194.5c3.85-10.56-1.47-21.98-12.37-26.98zM239.68 96c5.95 0 12.76 3.27 20.25 9.71a91.05 91.05 0 0 0 120.15 0c7.49-6.44 14.3-9.71 20.25-9.71 13.92 0 43.34 53.8 65.29 160.79-38 10-85.38 17.15-145.61 17.15s-107.58-7.19-145.62-17.17C196.34 149.79 225.76 96 239.68 96zm-71.24 192.45c40.25 10.29 89.68 17.49 151.57 17.49 61.62 0 111.26-7.15 151.57-17.43 2.39 13.77 4.7 28 6.78 43.28C438.49 343.47 386.64 352 320 352s-118.48-8.55-158.36-20.24c2.1-15.25 4.36-29.54 6.8-43.31zM320 448c-150.92 0-229.54-78.79-264.78-130.23C96.68 347 177.31 384 320 384s223.72-37.53 264.91-66.48C549.66 369.09 471 448 320 448z\"]\n};\nvar faHatCowboySide = {\n prefix: 'fal',\n iconName: 'hat-cowboy-side',\n icon: [640, 512, [], \"f8c1\", \"M638.22 392.71c-19.22-89.6-78.13-152.45-150.7-165.52l-19.12-110a64 64 0 0 0-63-53.2c-9.36 0 3.23-2.11-204.55 42a64 64 0 0 0-50.35 55.78l-7.19 67.15C75 245.51 20.17 306.91 1.76 392.74c-4.41 20.76-.44 42.45 10.9 59.49C24.44 469.88 42.38 480 61.88 480h516.25c19.47 0 37.41-10.12 49.19-27.75 11.37-17.04 15.34-38.75 10.9-59.54zM182.31 165.17a31.92 31.92 0 0 1 25.17-27.89l191.19-40.55c19.37-4.1 35.36 9.43 38.2 26L465.62 288H316.29l-29.5-25.42c-49-39.23-95.31-38.59-110.83-38.14zM61.88 448c-20.64 0-33.66-25.81-28.88-48.55C51.45 313.65 110.66 256 180.38 256c30.76 0 60.63 10.91 85.52 30.82C445.63 441.68 429.43 431.65 453.76 448zm323.38-100.57L353.43 320h117.75l19.53 112.31c-32.94-15.81-57.71-43.76-105.45-84.88zM578.13 448c-5.41 0-29.46.33-53-4.38l-31.7-182.3c54.43 15.26 98.13 66.69 113.45 138.1 5.69 26.35-11 48.58-28.75 48.58z\"]\n};\nvar faHatSanta = {\n prefix: 'fal',\n iconName: 'hat-santa',\n icon: [640, 512, [], \"f7a7\", \"M627.2 189.5c-.9-12.3-6.1-24.2-15.3-33.4-9-9-20.7-14.4-33.3-15.3-9.3-8.1-21.5-12.8-34.5-12.8s-25.2 4.7-34.5 12.8c-4.3.3-8.3 1.8-12.3 3.2C419.7 65.6 379.9 32 305.2 32c-68.6 0-130.4 41.2-156.8 104.5L58.7 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-48h-11.4l-61-142.2c-2.4-5.5 1.9-11.2 7.3-11.2 1 0 2 .2 3 .6l47.1 18.9c-.2 2-1.1 3.9-1.1 6 0 13.1 4.7 25.1 12.8 34.5.9 12.3 6.1 24.2 15.3 33.4 9.1 9.1 20.9 14.5 33.6 15.5 9.3 8 21.3 12.7 34.3 12.7s25-4.7 34.3-12.7c12.7-1 24.5-6.4 33.6-15.5 9.2-9.2 14.4-21.1 15.3-33.4 8.1-9.3 12.8-21.4 12.8-34.5s-4.6-25.2-12.7-34.6zM480 400v32c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16v-32c0-8.8 7.2-16 16-16h416c8.8 0 16 7.2 16 16zm-81.1-233.4c-13.5 0-25.9 6.7-33.4 18-7.4 11.2-8.7 25.3-3.3 37.7L417.8 352H93.3L178 148.8C199.5 97.3 249.4 64 305.2 64c61.3 0 93.9 26.6 165.9 99.3-5.4 7.6-9.2 16-10.1 25.1l-47.3-18.9c-4.7-2-9.7-2.9-14.8-2.9zm193.7 77.5c4.4 8.1 3.5 18.3-3.4 25.1-4.2 4.2-9.6 6.2-15.1 6.2-3.5 0-6.9-1.2-10-2.9-2.6 8.8-10.5 15.4-20.1 15.4s-17.5-6.6-20.1-15.4c-3.2 1.7-6.5 2.9-10 2.9-5.5 0-10.9-2.1-15.1-6.2-6.8-6.8-7.7-17-3.4-25.1-8.8-2.6-15.4-10.5-15.4-20.1s6.6-17.5 15.4-20.1c-4.4-8.1-3.5-18.3 3.4-25.1 4.1-4.1 9.3-6 14.6-6 3.6 0 7.2.9 10.5 2.7 2.6-8.8 10.5-15.4 20.1-15.4s17.5 6.6 20.1 15.4c3.3-1.8 6.9-2.7 10.5-2.7 5.3 0 10.6 2 14.6 6 6.8 6.8 7.8 17 3.4 25.1 8.8 2.6 15.4 10.5 15.4 20.1s-6.6 17.5-15.4 20.1z\"]\n};\nvar faHatWinter = {\n prefix: 'fal',\n iconName: 'hat-winter',\n icon: [512, 512, [], \"f7a8\", \"M489.9 386c-11.8-73.4-47.4-193.5-154.1-257.4v-.7c10-7.8 16.2-19.8 16.2-33.1s-6.1-25.2-16.2-33.1c1.6-12.7-2.6-25.5-12-34.8-9.4-9.3-22.2-13.4-34.8-11.9-15.6-20-50.4-20-66.1.1-12.6-1.4-25.4 2.6-34.8 11.9-9.4 9.4-13.5 22.2-12 34.8-10 7.8-16.2 19.8-16.2 33.1s6.1 25.2 16.2 33.1v.7C69.5 192.5 33.9 312.6 22.1 386 9.3 390.2 0 401.8 0 416v64c0 17.7 14.3 32 32 32h448c17.7 0 32-14.3 32-32v-64c0-14.2-9.3-25.8-22.1-30zm-33.1-2H55.2c2.6-14.4 6-30.1 10.8-47.1l62-31 64 32 64-32 64 32 64-32 62 31c4.8 17 8.3 32.7 10.8 47.1zm-257-298.9l19-5.6-9.4-17.4c-1.8-3.3-2.5-8.5 1.4-12.4 3.9-4 9.2-3.2 12.5-1.5l17.4 9.4 5.6-19c1.2-3.9 4.6-7.8 9.8-7.8s8.7 3.9 9.8 7.8l5.6 19 17.4-9.4c3.3-1.8 8.5-2.5 12.5 1.5 3.9 3.9 3.2 9.1 1.4 12.4l-9.4 17.4 19 5.6c3.9 1.1 7.8 4.6 7.8 9.8s-3.9 8.7-7.8 9.8l-19 5.6 9.4 17.4c1.8 3.3 2.5 8.5-1.4 12.4-2.9 2.9-5.6 5.2-12.5 1.5l-17.4-9.5-5.6 19c-1.2 3.9-4.6 7.8-9.8 7.8s-8.7-3.9-9.8-7.8l-5.6-19-17.4 9.5c-6.9 3.8-9.6 1.4-12.5-1.5-3.9-3.9-3.2-9.1-1.4-12.4l9.4-17.4-19-5.6c-3.9-1.1-7.8-4.6-7.8-9.8s3.9-8.7 7.8-9.8zm-13.3 75.6c.6.7 1 1.5 1.7 2.1 9.2 9.2 22 13.7 35 12.2 7.8 9.9 19.7 15.9 32.9 15.9s25.1-6 32.9-15.9c13 1.6 25.8-3 35-12.2.7-.7 1.1-1.4 1.7-2.1 52.4 33.8 85.1 83.6 105.2 132.8L384 270.1l-64 32-64-32-64 32-64-32-46.7 23.4c20.1-49.2 52.7-99 105.2-132.8zM480 480H32v-64h448v64z\"]\n};\nvar faHatWitch = {\n prefix: 'fal',\n iconName: 'hat-witch',\n icon: [576, 512, [], \"f6e7\", \"M573.99 439.89l-10.49-12.03c-2.83-3.25-7.65-3.55-10.97-.8-15.37 12.7-32.56 22.48-50.42 30.75L393.59 214.36a64.009 64.009 0 0 1-1.89-45.45l6.35-19.04C402.4 136.81 414.62 128 428.4 128h39.2c13.77 0 26 8.81 30.36 21.88L512 192l30.36-77.24c3.83-11.5.84-24.18-7.73-32.75L465.28 9.37A31.974 31.974 0 0 0 442.64 0c-5.43 0-10.9 1.38-15.87 4.22L260.43 107.18a128.004 128.004 0 0 0-53.47 59.15L74.07 457.89c-17.93-8.28-35.18-18.09-50.61-30.84-3.32-2.74-8.14-2.45-10.97.8L2.01 439.89c-2.96 3.39-2.62 8.68.84 11.55C50.01 490.55 109.39 512 170.92 512h234.16c61.53 0 120.9-21.45 168.07-60.56 3.46-2.87 3.8-8.15.84-11.55zM236.21 179.33c8.36-18.81 22.23-34.15 41.07-44.94L442.65 32.01l69.32 72.6-2.68 6.81A63.876 63.876 0 0 0 467.6 96h-39.2a63.913 63.913 0 0 0-60.71 43.76l-6.35 19.04c-7.44 22.33-6.44 46.54 3.02 68.6l82.35 184.73c-13.42 2.34-27.01 3.88-40.83 3.88H352v-4c0-15.44-12.56-28-28-28h-72c-15.44 0-28 12.56-28 28v4h-53.87c-13.56 0-26.91-1.45-40.1-3.71l106.18-232.97zM103.99 469.41l12.52-27.47c17.58 3.59 35.42 6.06 53.61 6.06H224v32h-53.08c-22.96 0-45.34-4.07-66.93-10.59zM256 480v-64h64v64h-64zm96 0v-32h53.87c18.35 0 36.34-2.52 54.07-6.17l12.27 27.52C450.57 475.91 428.1 480 405.07 480H352z\"]\n};\nvar faHatWizard = {\n prefix: 'fal',\n iconName: 'hat-wizard',\n icon: [512, 512, [], \"f6e8\", \"M288 192l-16-32-16 32-32 16 32 16 16 32 16-32 32-16-32-16zm216 288h-24L379.18 247.34a73.068 73.068 0 0 1-2.21-52.44L442.67 0 223.83 123.68c-27.61 15.6-49.46 39.51-62.37 68.25L32 480H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h496c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-436.92 0l31.72-70.6 55.86 27.93L176 480H67.08zM192 440.45l-13.48-26.97L151.55 400l26.96-13.48L192 359.55l13.48 26.96L232.45 400l-26.96 13.48L192 440.45zM208 480l21.33-42.67L304 400l-74.67-37.33L192 288l-37.33 74.67-44.96 22.48 80.94-180.11c10.19-22.67 27.11-41.18 48.93-53.51l146.08-82.55-39 115.7c-8.32 24.69-7.2 51.47 3.17 75.38l23.7 54.7L352 304l-16-32-16 32-32 16 32 16 16 32 16-32 25.26-12.63L445.12 480H208z\"]\n};\nvar faHdd = {\n prefix: 'fal',\n iconName: 'hdd',\n icon: [576, 512, [], \"f0a0\", \"M566.819 227.377L462.377 83.768A48.001 48.001 0 0 0 423.557 64H152.443a47.998 47.998 0 0 0-38.819 19.768L9.181 227.377A47.996 47.996 0 0 0 0 255.609V400c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V255.609a47.996 47.996 0 0 0-9.181-28.232zM139.503 102.589A16.048 16.048 0 0 1 152.443 96h271.115c5.102 0 9.939 2.463 12.94 6.589L524.796 224H51.204l88.299-121.411zM544 272v128c0 8.823-7.178 16-16 16H48c-8.822 0-16-7.177-16-16V272c0-8.837 7.163-16 16-16h480c8.837 0 16 7.163 16 16zm-56 64c0 13.255-10.745 24-24 24s-24-10.745-24-24 10.745-24 24-24 24 10.745 24 24zm-64 0c0 13.255-10.745 24-24 24s-24-10.745-24-24 10.745-24 24-24 24 10.745 24 24z\"]\n};\nvar faHeadSide = {\n prefix: 'fal',\n iconName: 'head-side',\n icon: [512, 512, [], \"f6e9\", \"M509.21 275c-20.94-47.12-48.44-151.73-73.08-186.75C397.68 33.6 334.56 0 266.09 0h-66.08C95.47 0 4.12 80.08.14 184.55-2.13 244.33 23.1 298.14 64 334.82V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V320.54L85.36 311c-35.65-31.97-55.06-77.62-53.25-125.23C35.35 100.98 110.66 32 200.01 32h66.08c57.19 0 110.97 27.91 143.86 74.66 12.52 17.8 29.11 66.74 42.45 106.07 9.73 28.71 18.93 55.83 27.57 75.27H416v96c0 17.64-14.36 32-32 32h-96v88c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h64c35.35 0 64-28.65 64-64v-64h31.96c23.16 0 38.65-23.84 29.25-45zM352 192c0-17.67-14.33-32-32-32s-32 14.33-32 32 14.33 32 32 32 32-14.33 32-32z\"]\n};\nvar faHeadSideBrain = {\n prefix: 'fal',\n iconName: 'head-side-brain',\n icon: [512, 512, [], \"f808\", \"M509.21 275c-20.94-47.12-48.44-151.73-73.08-186.75A207.94 207.94 0 0 0 266.09 0H200C95.47 0 4.12 80.08.14 184.55A191.3 191.3 0 0 0 64 334.82V504a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V320.54L85.36 311a159.67 159.67 0 0 1-53.25-125.23C35.35 101 110.66 32 200 32h66.08A176.08 176.08 0 0 1 410 106.66c12.52 17.8 29.11 66.74 42.45 106.07 9.73 28.71 18.93 55.83 27.57 75.27H416v96a32 32 0 0 1-32 32h-96v88a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-56h64a64 64 0 0 0 64-64v-64h32a32 32 0 0 0 29.21-45zM313.6 192c21.21 0 38.4-16.48 38.4-36.8s-17.19-36.8-38.4-36.8H311a38.09 38.09 0 0 0-35.8-25.6c-7.1 0-13.38 2.45-19.08 5.81C249.35 87.68 237.8 80 224 80s-25.34 7.68-32.11 18.61c-5.71-3.36-12-5.81-19.09-5.81a38.4 38.4 0 0 0-38.4 38.4A38.4 38.4 0 0 0 96 169.6c0 16.85 11 30.74 26.11 35.92-.06.86-.51 1.6-.51 2.48a38.4 38.4 0 0 0 38.4 38.4 37.91 37.91 0 0 0 12.8-2.58V288H224v-44.18a37.91 37.91 0 0 0 12.8 2.58 38.4 38.4 0 0 0 38.4-38.4 37.84 37.84 0 0 0-3.73-16z\"]\n};\nvar faHeadSideCough = {\n prefix: 'fal',\n iconName: 'head-side-cough',\n icon: [640, 512, [], \"e061\", \"M488,360a24,24,0,1,0,24,24A24,24,0,0,0,488,360Zm-10.8-85c-20.93-47.12-48.43-151.73-73.07-186.75A207.9,207.9,0,0,0,234.1,0H196.74C92.49,0,3.67,81.11.11,185.29A191.32,191.32,0,0,0,64,334.81V504a8,8,0,0,0,8,8H88a8,8,0,0,0,8-8V320.55l-5.69-5.11C70.46,297.63,54.08,276,44,251.31-1.34,139.68,88.37,32,200,32H234.1A176.07,176.07,0,0,1,378,106.66c12.52,17.79,29.11,66.75,42.46,106.07,9.72,28.71,18.92,55.83,27.56,75.27H384v48H338c-26.28,0-49.2,20.25-50,46.52A48,48,0,0,0,336,432h48v16a32,32,0,0,1-32,32H296a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8h56a64,64,0,0,0,64-64V416a16,16,0,0,0-16-16H336.85c-8,0-15.35-5.45-16.63-13.32A16,16,0,0,1,336,368h64a16,16,0,0,0,16-16V320H448A32,32,0,0,0,477.2,275ZM320,192a32,32,0,1,0-32,32A32,32,0,0,0,320,192ZM616,304a24,24,0,1,0-24-24A24,24,0,0,0,616,304Zm0,56a24,24,0,1,0,24,24A24,24,0,0,0,616,360Zm0,104a24,24,0,1,0,24,24A24,24,0,0,0,616,464ZM552,320a24,24,0,1,0,24,24A24,24,0,0,0,552,320Zm0,96a24,24,0,1,0,24,24A24,24,0,0,0,552,416Z\"]\n};\nvar faHeadSideCoughSlash = {\n prefix: 'fal',\n iconName: 'head-side-cough-slash',\n icon: [640, 512, [], \"e062\", \"M427,320H448a32,32,0,0,0,29.25-45c-20.93-47.12-48.43-151.73-73.07-186.75A207.9,207.9,0,0,0,234.1,0H196.74A198.73,198.73,0,0,0,74.44,42.34L23,1.82A7.87,7.87,0,0,0,11.77,3l-10,12.5A8,8,0,0,0,3,26.73l614,483.5a7.66,7.66,0,0,0,2.84,1l.35-.07c3,.73,6.05.35,8-2.14l10-12.5a7.86,7.86,0,0,0-1.21-11.2ZM301.25,221A31.89,31.89,0,0,0,288,160c-15.63,0-28,11.42-30.83,26.23L101.6,63.73C129.48,44.12,163.34,32,200,32H234.1A176.07,176.07,0,0,1,378,106.66c12.52,17.79,29.11,66.75,42.46,106.07,9.72,28.71,18.92,55.83,27.56,75.27H386.4ZM616,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,368Zm64-8a24,24,0,1,0,24,24A24,24,0,0,0,616,360ZM44,251.31c-20.94-51.5-12.9-102,12.55-141.63L30.79,89.36A186,186,0,0,0,.11,185.29,191.32,191.32,0,0,0,64,334.81V504a8,8,0,0,0,8,8H88a8,8,0,0,0,8-8V320.55l-5.69-5.11C70.46,297.63,54.08,276,44,251.31ZM400,400H336.85c-8,0-15.35-5.45-16.63-13.32A16,16,0,0,1,336,368h48.64L344,336h-6c-26.28,0-49.2,20.25-50,46.52A48,48,0,0,0,336,432h48v16a32,32,0,0,1-32,32H296a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8h56a64,64,0,0,0,64-64V416A16,16,0,0,0,400,400Z\"]\n};\nvar faHeadSideHeadphones = {\n prefix: 'fal',\n iconName: 'head-side-headphones',\n icon: [512, 512, [], \"f8c2\", \"M509.21 275c-20.94-47.12-48.44-151.73-73.09-186.75A207.88 207.88 0 0 0 266.09 0H200C95.48 0 4.14 80.08.14 184.55A191.34 191.34 0 0 0 64 334.81V504a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V320.55L85.38 311a159.63 159.63 0 0 1-53.24-125.23C34.65 119.6 81.29 63.56 144 41.92v74.35a112 112 0 1 0 128 0V32.36a175.82 175.82 0 0 1 137.92 74.3c12.53 17.79 29.12 66.75 42.47 106.07 9.72 28.71 18.93 55.83 27.56 75.27H416v96a32 32 0 0 1-32 32h-96v88a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-56h64a64 64 0 0 0 64-64v-64h32a32 32 0 0 0 29.21-45zM176 34.29c7.9-1.11 15.8-2.29 24-2.29h40v69.2c-10.2-3.06-20.8-5.2-32-5.2s-21.8 2.14-32 5.2zM288 208a80 80 0 1 1-80-80 80.08 80.08 0 0 1 80 80zm-80-48a48 48 0 1 0 48 48 48.05 48.05 0 0 0-48-48zm0 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16z\"]\n};\nvar faHeadSideMask = {\n prefix: 'fal',\n iconName: 'head-side-mask',\n icon: [512, 512, [], \"e063\", \"M512,288a31.66,31.66,0,0,0-2.77-13c-21-47.12-48.5-151.75-73.12-186.75A208.11,208.11,0,0,0,266.11,0H197.68C93.48,0,4,80.61.13,184.74-2.08,244.4,23.08,298.13,64,334.88V504a8,8,0,0,0,8,8H88a8,8,0,0,0,8-8l0-183.4-10.61-9.53a159.87,159.87,0,0,1-52.79-133l.68-.31L224,316.51V504a8,8,0,0,0,8,8H401.88a64,64,0,0,0,60.71-43.76l47.77-143.31A32,32,0,0,0,512,314.81Zm-44.38,64H336a16,16,0,0,0,0,32H456.94l-10.67,32H336a16,16,0,0,0,0,32h99.6l-3.38,10.12A32,32,0,0,1,401.88,480H256V320H478.27Zm12.16-64H239.21L40.69,143.61C62.58,79.4,126.15,32,200,32h66.15a176.21,176.21,0,0,1,143.82,74.66c12.48,17.75,29,66.57,42.35,105.8,9.78,28.83,19,56.06,27.49,75.48ZM320,160a32,32,0,1,0,32,32A32.07,32.07,0,0,0,320,160Z\"]\n};\nvar faHeadSideMedical = {\n prefix: 'fal',\n iconName: 'head-side-medical',\n icon: [512, 512, [], \"f809\", \"M336 216v-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 8h56v56a8 8 0 0 0 8 8h48a8 8 0 0 0 8-8v-56h56a8 8 0 0 0 8-8zm173.21 59c-20.94-47.12-48.44-151.73-73.08-186.75A207.94 207.94 0 0 0 266.09 0H200C95.47 0 4.12 80.08.14 184.55A191.3 191.3 0 0 0 64 334.82V504a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V320.54L85.36 311a159.67 159.67 0 0 1-53.25-125.23C35.35 101 110.66 32 200 32h66.08A176.08 176.08 0 0 1 410 106.66c12.52 17.8 29.11 66.74 42.45 106.07 9.73 28.71 18.93 55.83 27.57 75.27H416v96a32 32 0 0 1-32 32h-96v88a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-56h64a64 64 0 0 0 64-64v-64h32a32 32 0 0 0 29.21-45z\"]\n};\nvar faHeadSideVirus = {\n prefix: 'fal',\n iconName: 'head-side-virus',\n icon: [512, 512, [], \"e064\", \"M256,224a16,16,0,1,0,16,16A16,16,0,0,0,256,224Zm253.2,51c-20.93-47.12-48.43-151.73-73.07-186.75A207.9,207.9,0,0,0,266.09,0H200C95.47,0,4.13,80.08.14,184.55A191.27,191.27,0,0,0,64,334.81V504a8,8,0,0,0,8,8H88a8,8,0,0,0,8-8V320.55L85.36,311A159.66,159.66,0,0,1,32.11,185.77C35.34,101,110.66,32,200,32h66.07A176.08,176.08,0,0,1,410,106.66c12.52,17.79,29.11,66.75,42.46,106.07,9.72,28.71,18.92,55.83,27.56,75.27H416v96a32,32,0,0,1-32,32H288v88a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V448h64a64,64,0,0,0,64-64V320H480A32,32,0,0,0,509.2,275ZM224,192a16,16,0,1,0,16,16A16,16,0,0,0,224,192Zm86.63,125.25,8.57,8.58a16,16,0,1,0,22.63-22.62l-8.58-8.58C313.09,274.47,327.37,240,355.88,240H368a16,16,0,0,0,0-32H355.88c-28.51,0-42.79-34.47-22.63-54.63l8.58-8.57a16,16,0,0,0-22.63-22.63l-8.57,8.58a31.35,31.35,0,0,1-22.4,9.44c-16.45,0-32.23-12.78-32.23-32.07V96a16,16,0,0,0-32,0v12.12c0,19.29-15.78,32.07-32.23,32.07a31.35,31.35,0,0,1-22.4-9.44l-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.63H112a16,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.58a31.34,31.34,0,0,1,22.4-9.43c16.45,0,32.23,12.77,32.23,32.06V352a16,16,0,0,0,32,0V339.88c0-19.29,15.78-32.06,32.23-32.06A31.38,31.38,0,0,1,310.63,317.25Zm-66.53-24c-1.47,1.37-2.86,2.81-4.18,4.29a64.18,64.18,0,0,0-48.15-21.7c-1.25,0-2.5,0-3.74.11A64.3,64.3,0,0,0,166.5,224,64.3,64.3,0,0,0,188,172.08c1.24.07,2.49.11,3.74.11A64.2,64.2,0,0,0,240,150.39a64.18,64.18,0,0,0,48.23,21.8c1.25,0,2.5,0,3.73-.11A64.38,64.38,0,0,0,313.49,224,64.38,64.38,0,0,0,292,275.93c-1.23-.08-2.48-.11-3.73-.11A64.46,64.46,0,0,0,244.1,293.23Z\"]\n};\nvar faHeadVr = {\n prefix: 'fal',\n iconName: 'head-vr',\n icon: [512, 512, [], \"f6ea\", \"M480 64h-96.49C345.04 23.98 291.6 0 234.09 0h-34.08C127.59 0 61.92 38.7 26.82 97.04 11.71 99.61 0 112.16 0 128v64c0 17.67 14.33 32 32 32h184c.72 0 1.18-.59 1.85-.77 18.99 20.1 46.27 32.77 75.58 32.77H480c17.67 0 32-14.33 32-32V96c0-17.67-14.33-32-32-32zM32 192v-64h165.66c-4.1 11.56-6.21 24.05-5.53 37.16.5 9.5 2.89 18.37 6.1 26.84H32zm184.57-95.76c-.22-.02-.35-.24-.57-.24H67.08c30.83-38.58 79.05-64 132.94-64h34.08c36.29 0 70.79 11.79 99.82 32H288c-28.47 0-53.85 12.56-71.43 32.24zM384 224h-96c-35.29 0-64-28.71-64-64s28.71-64 64-64h96v128zm96 0h-64V96h64v128zM46.19 256H11.26c10.86 30.54 29.07 57.59 52.74 78.82V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V320.54L85.37 311c-17.27-15.49-30.15-34.41-39.18-55zM384 288v96c0 17.64-14.36 32-32 32h-64v88c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h32c35.35 0 64-28.65 64-64v-64h31.96c18.45 0 31.79-15.15 31.8-32H384z\"]\n};\nvar faHeading = {\n prefix: 'fal',\n iconName: 'heading',\n icon: [512, 512, [], \"f1dc\", \"M416 64v384h56a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8H328a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h56V272H128v176h56a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8H40a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h56V64H40a8 8 0 0 1-8-8V40a8 8 0 0 1 8-8h144a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8h-56v176h256V64h-56a8 8 0 0 1-8-8V40a8 8 0 0 1 8-8h144a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8z\"]\n};\nvar faHeadphones = {\n prefix: 'fal',\n iconName: 'headphones',\n icon: [512, 512, [], \"f025\", \"M256 32C114.517 32 0 146.497 0 288v51.429a16.003 16.003 0 0 0 8.213 13.978l23.804 13.262c-.005.443-.017.886-.017 1.331 0 61.856 50.144 112 112 112h24c13.255 0 24-10.745 24-24V280c0-13.255-10.745-24-24-24h-24c-49.675 0-91.79 32.343-106.453 77.118L32 330.027V288C32 164.205 132.184 64 256 64c123.796 0 224 100.184 224 224v42.027l-5.547 3.09C459.79 288.343 417.676 256 368 256h-24c-13.255 0-24 10.745-24 24v176c0 13.255 10.745 24 24 24h24c61.856 0 112-50.144 112-112 0-.445-.012-.888-.017-1.332l23.804-13.262A16.002 16.002 0 0 0 512 339.428V288c0-141.482-114.497-256-256-256zM144 288h16v160h-16c-44.112 0-80-35.888-80-80s35.888-80 80-80zm224 160h-16V288h16c44.112 0 80 35.888 80 80s-35.888 80-80 80z\"]\n};\nvar faHeadphonesAlt = {\n prefix: 'fal',\n iconName: 'headphones-alt',\n icon: [512, 512, [], \"f58f\", \"M384 288h-32c-17.67 0-32 14.35-32 32.06v127.88c0 17.7 14.33 32.06 32 32.06h32c35.35 0 64-28.71 64-64.12v-63.76c0-35.41-28.65-64.12-64-64.12zm32 127.88c0 17.68-14.36 32.06-32 32.06h-32V320.06h32c17.64 0 32 14.38 32 32.06v63.76zM160 288h-32c-35.35 0-64 28.71-64 64.12v63.76C64 451.29 92.65 480 128 480h32c17.67 0 32-14.35 32-32.06V320.06c0-17.71-14.33-32.06-32-32.06zm0 159.94h-32c-17.64 0-32-14.38-32-32.06v-63.76c0-17.68 14.36-32.06 32-32.06h32v127.88zM256 32C114.84 32 0 146.85 0 288v120c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V288C32 164.48 132.5 64 256 64s224 100.48 224 224v120c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V288c0-141.15-114.84-256-256-256z\"]\n};\nvar faHeadset = {\n prefix: 'fal',\n iconName: 'headset',\n icon: [512, 512, [], \"f590\", \"M192 224c0-17.67-14.33-32-32-32h-32c-35.35 0-64 28.65-64 64v63.64c0 35.35 28.65 64 64 64h32c17.67 0 32-14.33 32-32V224zm-32 127.64h-32c-17.64 0-32-14.36-32-32V256c0-17.64 14.36-32 32-32h32v127.64zm224 32c35.35 0 64-28.65 64-64V256c0-35.35-28.65-64-64-64h-32c-17.67 0-32 14.33-32 32v127.64c0 17.67 14.33 32 32 32h32zM352 224h32c17.64 0 32 14.36 32 32v63.64c0 17.64-14.36 32-32 32h-32V224zM256 0C113.97 0 3.92 117.82.1 256L0 280c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8l.09-24C35.43 135.19 131.63 32 256 32c123.5 0 224 100.48 224 224v176c0 26.47-21.53 48-48 48h-82.94c1.79-5.03 2.94-10.36 2.94-16 0-26.51-21.49-48-48-48h-64c-26.51 0-48 21.49-48 48s21.49 48 48 48h192c44.12 0 80-35.89 80-80V256C512 114.85 397.16 0 256 0zm48 480h-64c-8.82 0-16-7.18-16-16s7.18-16 16-16h64c8.82 0 16 7.18 16 16s-7.18 16-16 16z\"]\n};\nvar faHeart = {\n prefix: 'fal',\n iconName: 'heart',\n icon: [512, 512, [], \"f004\", \"M462.3 62.7c-54.5-46.4-136-38.7-186.6 13.5L256 96.6l-19.7-20.3C195.5 34.1 113.2 8.7 49.7 62.7c-62.8 53.6-66.1 149.8-9.9 207.8l193.5 199.8c6.2 6.4 14.4 9.7 22.6 9.7 8.2 0 16.4-3.2 22.6-9.7L472 270.5c56.4-58 53.1-154.2-9.7-207.8zm-13.1 185.6L256.4 448.1 62.8 248.3c-38.4-39.6-46.4-115.1 7.7-161.2 54.8-46.8 119.2-12.9 142.8 11.5l42.7 44.1 42.7-44.1c23.2-24 88.2-58 142.8-11.5 54 46 46.1 121.5 7.7 161.2z\"]\n};\nvar faHeartBroken = {\n prefix: 'fal',\n iconName: 'heart-broken',\n icon: [512, 512, [], \"f7a9\", \"M473.7 73.9c-39.6-41.2-83.8-41.7-95.5-41.7-28.7 0-57.5 9.4-81.3 28.2-5.2 4.1-7 11.4-4.9 17.6l25 75.4-85.8 57.2c-6.2 4.1-8.7 12-6.1 18.9l22.1 58.8-78-78 79.7-53.2c6-4 8.6-11.5 6.3-18.3l-17.4-52.5c-1.7-5-4.6-9.8-8.4-13.4-43.9-41.6-80.9-41.1-95-41.1-12 0-54.1 0-96.1 41.9C-10.4 123.7-12.5 203 31 256l212.1 218.5c3.5 3.6 8.2 5.5 12.8 5.5 4.7 0 9.3-1.8 12.8-5.5L481 256c43.5-53 41.4-132.3-7.3-182.1zM457 234.8l-201 207-201-207C22.3 194 25 133.4 61 96.6 81.1 76.4 103.8 64 134.4 64c27.3 0 51.6 10.3 72.8 32l13.7 41.5-85.8 57.2c-8.4 5.6-9.6 17.5-2.4 24.6l130.9 130.9c15.2 15.2 40.4-1 32.9-21.2l-37-98.8 85.4-57c6-4 8.6-11.5 6.3-18.4L326 79c15.6-9.7 33.6-14.8 52.2-14.8 26.7 0 51.3 9.9 72.6 32.1 36.3 37.1 38.9 97.7 6.2 138.5z\"]\n};\nvar faHeartCircle = {\n prefix: 'fal',\n iconName: 'heart-circle',\n icon: [496, 512, [], \"f4c7\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm116-318.4c-41.9-36.3-89.5-8.4-104.9 7.7L248 172.9l-11.1-11.6c-26.6-27.9-72.5-35.9-104.9-7.7-35.3 30.6-37.2 85.6-5.6 118.7l108.9 114.1c7 7.4 18.4 7.4 25.5 0l108.9-114.1c31.5-33.2 29.7-88.1-5.7-118.7zm-17 96.5l-99 103.8-99-103.8c-16.7-17.5-20.4-51.6 3.4-72.1 22.2-19.3 50-6.8 61.9 5.7L248 219l33.7-35.3c8.7-9.2 37.5-26.8 61.9-5.7 23.8 20.5 20.1 54.5 3.4 72.1z\"]\n};\nvar faHeartRate = {\n prefix: 'fal',\n iconName: 'heart-rate',\n icon: [640, 512, [], \"f5f8\", \"M480 224c-6.53 0-12.44 3.98-14.84 10.06l-45.62 114.05-84-335.98C333.72 4.86 327.69.17 319.62 0c-7.5.19-13.84 5.53-15.31 12.86l-82.06 410.23-46.72-186.97A16.005 16.005 0 0 0 160 224H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h139.5l60.97 243.88c1.78 7.14 8.22 12.12 15.53 12.12h.38c7.5-.19 13.84-5.53 15.31-12.86l82.06-410.23 78.72 314.97c1.69 6.73 7.53 11.62 14.44 12.09 7.62.28 13.38-3.59 15.94-10.03l60-149.94H632c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H480z\"]\n};\nvar faHeartSquare = {\n prefix: 'fal',\n iconName: 'heart-square',\n icon: [448, 512, [], \"f4c8\", \"M340 145.6c-14.4-12.5-30.6-17.6-46.4-17.6-22.8 0-44.6 10.7-58.6 25.3l-11 11.6-11.1-11.6C199.2 139 177.3 128 154.2 128c-15.7 0-31.8 5.1-46.3 17.6-35.3 30.6-37.2 85.6-5.6 118.7l108.9 114.1c7 7.4 18.4 7.4 25.5 0l108.9-114.1c31.6-33.2 29.8-88.1-5.6-118.7zm-17 96.5l-99 103.8-99-103.8c-16.7-17.5-20.4-51.6 3.4-72.1 8.2-7.1 17.3-9.9 26.3-9.9 13.9 0 27.3 6.9 35.6 15.6L224 211l33.7-35.3c8.2-8.6 21.7-15.5 35.6-15.5 8.9 0 18.1 2.8 26.2 9.9 23.9 20.4 20.2 54.4 3.5 72zM400 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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352z\"]\n};\nvar faHeartbeat = {\n prefix: 'fal',\n iconName: 'heartbeat',\n icon: [512, 512, [], \"f21e\", \"M468.7 76.5C423.6 32.2 375 32 362.3 32c-12.7 0-61.5.2-106.3 44.4C211.3 32.3 162.5 32 149.7 32c-12.7 0-61.4.2-106.4 44.5C15.4 104 0 140.7 0 179.9 0 214.1 12.3 246 33.8 272h120.8l29.9-71.8 56.9 126.4c5.5 12.3 22.9 12.7 28.9.6l49.7-99.4 22.1 44.2h136c21.5-26 33.8-57.9 33.8-92.1.1-39.2-15.3-75.9-43.2-103.4zM462.5 240H361.9l-27.6-55.2c-5.9-11.8-22.7-11.8-28.6 0l-48.9 97.9-58.2-129.3c-5.8-12.8-24-12.5-29.4.4L133.3 240H49.5c-9.2-14.6-42.6-82.7 18.3-142.7C90.4 75.1 120 64 149.7 64c33.9 0 54.5 6.3 106.3 57.3C311 67.1 330.5 64 362.3 64c29.7 0 59.3 11.1 81.8 33.3 61 60.1 27.5 128.2 18.4 142.7zM268.7 443.4c-6.2 6.1-16.2 6.1-22.4 0L108.9 304H64l159.9 162.2c18.7 18.5 48.6 18.4 67.3 0L448 304h-44.5L268.7 443.4z\"]\n};\nvar faHeat = {\n prefix: 'fal',\n iconName: 'heat',\n icon: [448, 512, [], \"e00c\", \"M192,153.59V48a16,16,0,0,0-32,0V152.25A202.63,202.63,0,0,0,210.26,286C238.49,318.19,256,358.38,256,401.23V464a16,16,0,0,0,32,0V402.41a202.44,202.44,0,0,0-50.27-133.7C209.51,236.53,192,196.39,192,153.59ZM64,132.4V112a16,16,0,0,0-32,0v16A257.68,257.68,0,0,0,82.29,280.39C110.65,318.68,128,364,128,411.6V464a16,16,0,0,0,32,0V416a257.68,257.68,0,0,0-50.29-152.39C81.35,225.32,64,180,64,132.4ZM365.71,263.61C337.35,225.32,320,180,320,132.4V112a16,16,0,0,0-32,0v16a257.68,257.68,0,0,0,50.29,152.39C366.65,318.68,384,364,384,411.6V464a16,16,0,0,0,32,0V416A257.68,257.68,0,0,0,365.71,263.61Z\"]\n};\nvar faHelicopter = {\n prefix: 'fal',\n iconName: 'helicopter',\n icon: [640, 512, [], \"f533\", \"M304 416h272c17.67 0 32-14.33 32-32 0-123.71-100.29-224-224-224V64h184c4.42 0 8-3.58 8-8V40c0-4.42-3.58-8-8-8H136c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h216v96H128l-43.2-57.6C81.78 98.37 77.03 96 72 96H16.01C5.6 96-2.04 105.78.49 115.88L32 224l160 64 86.4 115.2A31.992 31.992 0 0 0 304 416zm112-221.11C506.66 210.2 576 289.05 576 384H416V194.89zm-203.78 66.73l-8.33-3.33-145.54-58.21L37.33 128H64l38.4 51.2L112 192h272v192h-80l-86.4-115.2-5.38-7.18zm425.44 208.03l-11.31-11.31c-3.12-3.12-8.19-3.12-11.31 0l-7.6 7.6c-9 9-21.2 14.05-33.93 14.05H232c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h341.48c21.22 0 41.58-8.43 56.58-23.44l7.59-7.59c3.13-3.12 3.13-8.18.01-11.31z\"]\n};\nvar faHelmetBattle = {\n prefix: 'fal',\n iconName: 'helmet-battle',\n icon: [512, 512, [], \"f6eb\", \"M510.28 223.37L429.41 4.53C428.26 1.42 425.63 0 423 0c-3.5 0-7.01 2.52-7.01 6.93v106.39C361.41 35.29 255.99 0 255.99 0S150.6 35.28 96.01 113.3V6.93C96.01 2.52 92.51 0 89 0c-2.63 0-5.27 1.42-6.42 4.53L1.72 223.37c-3.86 15.05-1.16 30.91 7.41 43.51C18.12 280.11 32.66 288 48.02 288c3.29 0 6.48-.42 9.57-1.11-7.39 45.62-19.22 81.5-24.72 104.64-3.43 14.43 3.59 29.37 16.32 35.24L239.99 512V256l-80-16v-16h191.99v16l-80 16v256l190.81-85.23c12.73-5.87 19.75-20.81 16.32-35.24-5.5-23.14-17.33-59.02-24.72-104.64 3.1.69 6.29 1.11 9.59 1.11 15.36 0 29.9-7.89 38.89-21.12 8.57-12.6 11.27-28.46 7.41-43.51zM64.01 236.89c0 10.36-7.33 19.11-16 19.11-4.75 0-9.4-2.66-12.42-7.11-3.18-4.67-4.3-10.55-3.16-16.31l31.58-85.47v89.78zm239.98 225.77V282.23l80-16V192H128v74.23l80 16v180.43L64.13 398.4c1.51-6.3 3.52-13.55 5.76-21.7C80.28 338.95 96 281.89 96 210.82 96 106.62 219.41 49 256.04 34.2c36.68 14.71 159.95 71.96 159.95 176.63 0 71.07 15.71 128.12 26.11 165.88 2.24 8.15 4.25 15.4 5.76 21.7l-143.87 64.25zm172.42-213.77c-3.02 4.45-7.67 7.11-12.42 7.11-8.67 0-16-8.75-16-19.11v-89.77l31.58 85.47c1.14 5.76.01 11.63-3.16 16.3z\"]\n};\nvar faHexagon = {\n prefix: 'fal',\n iconName: 'hexagon',\n icon: [576, 512, [], \"f312\", \"M441.5 39.8C432.9 25.1 417.1 16 400 16H176c-17.1 0-32.9 9.1-41.5 23.8l-112 192c-8.7 14.9-8.7 33.4 0 48.4l112 192c8.6 14.7 24.4 23.8 41.5 23.8h224c17.1 0 32.9-9.1 41.5-23.8l112-192c8.7-14.9 8.7-33.4 0-48.4l-112-192zm84.3 224.3l-112 192c-2.9 4.9-8.2 7.9-13.8 7.9H176c-5.7 0-11-3-13.8-7.9l-112-192c-2.9-5-2.9-11.2 0-16.1l112-192c2.8-5 8.1-8 13.8-8h224c5.7 0 11 3 13.8 7.9l112 192c2.9 5 2.9 11.2 0 16.2z\"]\n};\nvar faHighlighter = {\n prefix: 'fal',\n iconName: 'highlighter',\n icon: [544, 512, [], \"f591\", \"M528.61 75.91l-60.49-60.52C457.91 5.16 444.45 0 430.98 0a52.38 52.38 0 0 0-34.75 13.15L110.59 261.8c-10.29 9.08-14.33 23.35-10.33 36.49l12.49 41.02-36.54 36.56c-6.74 6.75-6.74 17.68 0 24.43l.25.26L0 479.98 99.88 512l43.99-44.01.02.02c6.75 6.75 17.69 6.75 24.44 0l36.46-36.47 40.91 12.53c18.01 5.51 31.41-4.54 36.51-10.32l248.65-285.9c18.35-20.82 17.37-52.32-2.25-71.94zM91.05 475.55l-32.21-10.33 40.26-42.03 22.14 22.15-30.19 30.21zm167.16-62.99c-.63.72-1.4.94-2.32.94-.26 0-.54-.02-.83-.05l-40.91-12.53-18.39-5.63-39.65 39.67-46.85-46.88 39.71-39.72-5.6-18.38-12.49-41.02c-.34-1.13.01-2.36.73-3l44.97-39.15 120.74 120.8-39.11 44.95zm248.51-285.73L318.36 343.4l-117.6-117.66L417.4 37.15c4.5-3.97 17.55-9.68 28.1.88l60.48 60.52c7.65 7.65 8.04 20 .74 28.28z\"]\n};\nvar faHiking = {\n prefix: 'fal',\n iconName: 'hiking',\n icon: [384, 512, [], \"f6ec\", \"M376 160h-16c-4.42 0-8 3.58-8 8v26.95c-5.03-1.79-10.36-2.95-16-2.95h-30.16l-43.08-55.18-1.22-1.56-1.4-1.4c5.11-3.04 10-6.52 14.39-10.9C288.3 109.2 295.57 91.57 295.57 72s-7.28-37.2-21.04-50.96C260.77 7.28 243.15 0 223.58 0c-19.58 0-37.2 7.28-50.96 21.04S151.58 52.42 151.58 72c0 18.07 6.46 34.33 18.24 47.57l-45.84-13.16c-44.78-10.62-90.62 15.75-102 59.09L.92 247.08c-1.94 7.5-.78 15.28 3.22 21.94 4.09 6.83 10.66 11.61 17.81 13.31l80.26 22.95-36.78 147.08c-6.38 25.73 9.31 51.81 34.97 58.2 3.8.95 7.71 1.43 11.61 1.43 22.09 0 41.25-14.97 46.58-36.4l27.13-108.52 38.28 25.9V464c0 26.47 21.53 48 48 48s48-21.53 48-48v-79.53c0-25.75-12.51-50.08-33.47-65.08L238 287.59l5.02-20.06 1.52 1.95c9.17 11.77 22.97 18.52 37.88 18.52H336c5.64 0 10.97-1.15 16-2.95V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V168c0-4.42-3.58-8-8-8zM195.24 43.67C203.02 35.89 212.47 32 223.58 32s20.56 3.89 28.33 11.67c7.77 7.77 11.67 17.23 11.67 28.33s-3.89 20.56-11.67 28.33c-7.77 7.77-17.23 11.67-28.33 11.67-11.11 0-20.56-3.89-28.33-11.67-7.77-7.77-11.67-17.23-11.67-28.33s3.89-20.56 11.66-28.33zM31.92 255.09l.12-.45.22.53-.34-.08zm.75-2.98l20.28-78.56c6.94-26.61 35.44-42.78 62.9-36.2l28.98 8.32a74.842 74.842 0 0 0-10.06 23.01l-26.28 105.1-75.82-21.67zm94.87 215.77c-1.81 7.28-8.34 12.12-15.53 12.12-1.28 0-2.56-.16-3.87-.48-8.59-2.14-13.78-10.83-11.66-19.39l32.8-131.2 28.23 19.08-29.97 119.87zM336 256h-53.59c-4.94 0-9.59-2.28-12.62-6.17l-41.88-53.81-25.96 103.86c-.17.68-.83 1.01-1.08 1.65l67.04 43.88c12.59 9.02 20.09 23.61 20.09 39.06V464c0 8.84-7.16 16-16 16s-16-7.16-16-16v-79.53c0-5.16-2.5-10.03-6.72-13.03L145.1 301.02a16.002 16.002 0 0 1-6.22-16.89l26.94-107.72a42.682 42.682 0 0 1 41.5-32.41c11.41 0 22.12 4.44 30.22 12.52L290.23 224H336c8.84 0 16 7.16 16 16s-7.16 16-16 16z\"]\n};\nvar faHippo = {\n prefix: 'fal',\n iconName: 'hippo',\n icon: [640, 512, [], \"f6ed\", \"M584.11 96.29c-28.85-1.51-54.65 17.18-79.6 26.54C489.98 88.27 455.83 64 416 64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v40.98C286.01 79.58 241.24 64 192 64 85.96 64 0 135.63 0 224v224c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-59.42c24.66 7.19 51.56 11.42 80 11.42s55.34-4.24 80-11.42V448c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V288h96v48c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16v-48c17.67 0 32-14.33 32-32v-96.42c0-32.17-23.76-61.6-55.89-63.29zM384 448h-64V345.92c-120.03 34.98-142.84 23.65-224 0V448H32V224c0-70.58 71.78-128 160-128 40.32 0 78.98 12.29 108.84 34.62L320 144.93V208c0 38.63 27.52 70.95 64 78.38V448zm192-128h-32v-32h32v32zm32-64H400c-26.47 0-48-21.53-48-48V64h32v32h32c25.83 0 49 15.4 59.02 39.23l11.93 28.36c72.91-27.35 75.75-35.88 95.48-35.35 13.86.73 25.57 15.08 25.57 31.34V256zm-176.19-96c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16z\"]\n};\nvar faHistory = {\n prefix: 'fal',\n iconName: 'history',\n icon: [512, 512, [], \"f1da\", \"M20 24h10c6.627 0 12 5.373 12 12v94.625C85.196 57.047 165.239 7.715 256.793 8.001 393.18 8.428 504.213 120.009 504 256.396 503.786 393.181 392.834 504 256 504c-63.926 0-122.202-24.187-166.178-63.908-5.113-4.618-5.354-12.561-.482-17.433l7.069-7.069c4.503-4.503 11.749-4.714 16.482-.454C150.782 449.238 200.935 470 256 470c117.744 0 214-95.331 214-214 0-117.744-95.331-214-214-214-82.862 0-154.737 47.077-190.289 116H164c6.627 0 12 5.373 12 12v10c0 6.627-5.373 12-12 12H20c-6.627 0-12-5.373-12-12V36c0-6.627 5.373-12 12-12zm321.647 315.235l4.706-6.47c3.898-5.36 2.713-12.865-2.647-16.763L272 263.853V116c0-6.627-5.373-12-12-12h-8c-6.627 0-12 5.373-12 12v164.147l84.884 61.734c5.36 3.899 12.865 2.714 16.763-2.646z\"]\n};\nvar faHockeyMask = {\n prefix: 'fal',\n iconName: 'hockey-mask',\n icon: [448, 512, [], \"f6ee\", \"M376.61 54.46C335.13 18.15 279.56 0 224 0 168.43 0 112.87 18.15 71.39 54.46 7.36 110.5-31.01 224.44 32.63 416 64.53 512 224 512 224 512s159.47 0 191.37-96c63.64-191.56 25.27-305.5-38.76-361.54zM385 405.91c-20.08 60.43-123.06 73.97-161 74.09-1.36 0-137.06-2.02-161-74.09C-4.54 202.62 52.47 113.54 92.47 78.54 126.25 48.96 174.2 32 224 32s97.74 16.96 131.53 46.54c40 35 97.01 124.08 29.47 327.37zM272 112c8.84 0 16-7.16 16-16s-7.16-16-16-16-16 7.16-16 16 7.17 16 16 16zm-96 0c8.84 0 16-7.16 16-16s-7.16-16-16-16-16 7.16-16 16 7.16 16 16 16zm16 304c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm0-64c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm0-64c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm-20-112h-72c-19.88 0-36 14.33-36 32 0 35.35 32.23 64 72 64 39.76 0 72-28.65 72-64 0-17.67-16.12-32-36-32zm-36 64c-33.59 0-48.06-32-36-32h72c11.72 0-2.9 32-36 32zm88-112c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm32 288c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm0-64c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm0-64c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm92-112h-72c-19.88 0-36 14.33-36 32 0 35.35 32.24 64 72 64s72-28.65 72-64c0-17.67-16.12-32-36-32zm-36 64c-33.6 0-48.06-32-36-32h72c11.72 0-2.91 32-36 32z\"]\n};\nvar faHockeyPuck = {\n prefix: 'fal',\n iconName: 'hockey-puck',\n icon: [544, 512, [], \"f453\", \"M272 64C141 64 0 99 0 176v144c0 84 136.8 128 272 128s272-44 272-128V176c0-77-141-112-272-112zm240 256c0 53-107.5 96-240 96S32 373 32 320v-87.7c95.7 74 383.6 74.5 480 0V320zm-240-64c-132.5 0-240-35.8-240-80s107.5-80 240-80 240 35.8 240 80-107.5 80-240 80z\"]\n};\nvar faHockeySticks = {\n prefix: 'fal',\n iconName: 'hockey-sticks',\n icon: [640, 512, [], \"f454\", \"M624 352H410.6c-3 0-5.8-1.7-7.2-4.4L373.6 288l118-236.2c3.9-7.9.7-17.5-7.2-21.5L427.3 1.7c-7.9-4-17.5-.8-21.5 7.2L320 180.6 234.2 8.8c-3.9-7.9-13.6-11.1-21.5-7.2l-57.3 28.6c-7.9 4-11.1 13.6-7.2 21.5l118 236.2-29.8 59.6c-1.4 2.7-4.1 4.4-7.2 4.4H16c-8.8 0-16 7.2-16 16v128c0 8.8 7.2 16 16 16h186.3c36.4 0 69.6-20.6 85.9-53.1l31.8-63.6 31.8 63.6c16.3 32.5 49.5 53.1 85.9 53.1H624c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16zM184.1 51.8l28.6-14.3 89.4 178.9-17.9 35.8L184.1 51.8zM32 480v-96h32v96H32zm227.6-35.4c-10.9 21.8-32.8 35.4-57.2 35.4H96v-96h133.4c15.3 0 29-8.5 35.8-22.1L427.3 37.5l28.6 14.3-196.3 392.8zM437.7 480c-24.4 0-46.3-13.6-57.2-35.4L338 359.5l17.9-35.8 19.1 38.1c6.8 13.6 20.5 22.1 35.8 22.1H544v96H437.7zm170.3 0h-32v-96h32v96z\"]\n};\nvar faHollyBerry = {\n prefix: 'fal',\n iconName: 'holly-berry',\n icon: [448, 512, [], \"f7aa\", \"M443.9 343.6c-5-8.7-13.8-14.4-23.7-15.4-14.3-1.5-29-4.5-43.8-8.9-7.4-2.2-11.8-9.8-10-17.4 3.6-15.1 8.4-29.4 14.3-42.6 4.1-9.1 3.5-19.7-1.6-28.3-5-8.6-13.8-14.2-23.5-15.1-14.6-1.4-29.2-4.6-43.7-8.8 19.1-11 32.1-31.5 32.1-55.1 0-34.3-27-62-60.8-63.7 3.1-7.5 4.8-15.7 4.8-24.3 0-35.3-28.7-64-64-64s-64 28.6-64 64c0 8.6 1.8 16.8 4.8 24.3C131 90 104 117.7 104 152c0 23.7 13 44.1 32.1 55.2-14.5 4.2-29.1 7.4-43.7 8.8-9.7.9-18.6 6.6-23.5 15.1-5.1 8.7-5.6 19.2-1.6 28.3 5.9 13.2 10.7 27.5 14.3 42.6 1.8 7.5-2.6 15.2-10 17.4-14.8 4.4-29.6 7.4-43.8 8.9-9.8 1-18.7 6.8-23.7 15.4-4.9 8.6-5.5 19.1-1.4 28 14.5 31.7 22.2 68.1 22.4 105.2.1 12.8 6.6 24.2 17.5 30.4C48.1 510.4 54 512 60 512c6 0 12.1-1.6 17.7-4.8 32.2-18.4 67.4-29.9 101.9-33.1 9.7-.9 18.5-6.6 23.5-15.2 5-8.7 5.6-19.2 1.5-28.3-5.9-13.2-10.7-27.5-14.2-42.6-1.8-7.5 2.6-15.2 10-17.4 7.9-2.4 15.8-4.3 23.6-5.8 7.8 1.5 15.7 3.4 23.6 5.8 7.4 2.2 11.7 9.8 10 17.4-3.6 15.1-8.4 29.4-14.2 42.6-4.1 9.1-3.5 19.6 1.5 28.3 5 8.6 13.8 14.2 23.6 15.2 34.5 3.2 69.8 14.7 101.9 33.1 5.5 3.2 11.6 4.8 17.6 4.8 6 0 12-1.6 17.4-4.7 10.9-6.3 17.4-17.7 17.5-30.4.2-37.1 7.9-73.5 22.4-105.2 4.1-9 3.5-19.5-1.4-28.1zM280 120c17.6 0 32 14.4 32 32s-14.4 32-32 32-32-14.4-32-32 14.4-32 32-32zm-144 32c0-17.6 14.4-32 32-32s32 14.4 32 32-14.4 32-32 32-32-14.4-32-32zm55.2 188.1c-23.6 7.1-37.6 31.4-31.9 55.4 4 17 9.5 33.3 17.3 46.8-39.6 3.7-78.3 16.3-118 37.4-1-.6-1.5-1.5-1.5-2.9C57 434.5 48.5 394.7 31 360c16.3-1.7 33-5.1 49.8-10.1 23.6-7.1 37.6-31.4 31.9-55.4-4-17-9.5-33.3-17.3-46.8 40.6-3.8 81.8-17.5 119.5-39.3-.5 42.9 8 85 24.6 121.8-15.9 1.7-32.1 5-48.3 9.9zM224 96c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm166.9 380.7c0 1.3-.5 2.3-4.6 2.8-36.6-21-75.3-33.5-113.8-35.8 6.7-15 12.2-31.2 16.2-48.3 4.7-19.8-4.1-39.6-20.5-50 4.5-8.4 5-18.5 1.1-27.1-14.2-31.1-21.6-66.6-22.1-103.2 33.6 17.7 69.6 29 104.4 31.1-6.7 15-12.2 31.2-16.2 48.3-5.7 24 8.3 48.3 31.9 55.4 16.8 5 33.5 8.4 48.9 8.4-16.7 36.4-25.2 76.2-25.3 118.4z\"]\n};\nvar faHome = {\n prefix: 'fal',\n iconName: 'home',\n icon: [576, 512, [], \"f015\", \"M541 229.16l-61-49.83v-77.4a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v51.33L308.19 39.14a32.16 32.16 0 0 0-40.38 0L35 229.16a8 8 0 0 0-1.16 11.24l10.1 12.41a8 8 0 0 0 11.2 1.19L96 220.62v243a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-128l64 .3V464a16 16 0 0 0 16 16l128-.33a16 16 0 0 0 16-16V220.62L520.86 254a8 8 0 0 0 11.25-1.16l10.1-12.41a8 8 0 0 0-1.21-11.27zm-93.11 218.59h.1l-96 .3V319.88a16.05 16.05 0 0 0-15.95-16l-96-.27a16 16 0 0 0-16.05 16v128.14H128V194.51L288 63.94l160 130.57z\"]\n};\nvar faHomeAlt = {\n prefix: 'fal',\n iconName: 'home-alt',\n icon: [576, 512, [], \"f80a\", \"M541 229.16l-232.85-190a32.16 32.16 0 0 0-40.38 0L35 229.16a8 8 0 0 0-1.16 11.24l10.1 12.41a8 8 0 0 0 11.2 1.19L96 220.62v243a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-128l64 .3V464a16 16 0 0 0 16 16l128-.33a16 16 0 0 0 16-16V220.62L520.86 254a8 8 0 0 0 11.25-1.16l10.1-12.41a8 8 0 0 0-1.21-11.27zm-93.11 218.59h.1l-96 .3V319.88a16.05 16.05 0 0 0-15.95-16l-96-.27a16 16 0 0 0-16.05 16v128.14H128V194.51L288 63.94l160 130.57z\"]\n};\nvar faHomeHeart = {\n prefix: 'fal',\n iconName: 'home-heart',\n icon: [576, 512, [], \"f4c9\", \"M573.5 219.9L512 170.4V72c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v72.6L310.6 8c-13.2-10.7-32.1-10.7-45.2 0L2.5 219.9c-2.9 2.4-3.4 6.6-1 9.5l14.2 17.5c2.4 2.9 6.6 3.4 9.6 1L64 216.7V496c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16V216.8l38.8 31.3c2.9 2.4 7.2 1.9 9.6-1l14.2-17.5c2.3-3 1.7-7.3-1.1-9.7zM480 480H96V190.9L283.7 39.5c2.5-2 6-2 8.4 0L480 191v289zM276.9 201.5c-26.6-27.9-72.5-35.9-104.9-7.7-35.3 30.6-37.2 85.6-5.6 118.7l108.9 114.1c7 7.4 18.4 7.4 25.5 0l108.9-114.1c31.6-33.2 29.8-88.1-5.6-118.7-41.9-36.3-89.5-8.4-104.9 7.7L288 213.2l-11.1-11.7zm44.8 22.3c8.7-9.2 37.5-26.8 61.9-5.7 23.8 20.6 20.2 54.5 3.4 72.1L288 394l-99-103.8c-16.7-17.5-20.4-51.6 3.4-72.1 22.2-19.3 50-6.8 61.9 5.7l33.7 35.3 33.7-35.3z\"]\n};\nvar faHomeLg = {\n prefix: 'fal',\n iconName: 'home-lg',\n icon: [576, 512, [], \"f80b\", \"M573.48 219.91L512 170.42V72a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v72.6L310.6 8a35.85 35.85 0 0 0-45.19 0L2.53 219.91a6.71 6.71 0 0 0-1 9.5l14.2 17.5a6.82 6.82 0 0 0 9.6 1L64 216.72V496a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V216.82l38.8 31.29a6.83 6.83 0 0 0 9.6-1l14.19-17.5a7.14 7.14 0 0 0-1.11-9.7zM336 480h-96V320h96zm144 0H368V304a16 16 0 0 0-16-16H224a16 16 0 0 0-16 16v176H96V190.92l187.71-151.4a6.63 6.63 0 0 1 8.4 0L480 191z\"]\n};\nvar faHomeLgAlt = {\n prefix: 'fal',\n iconName: 'home-lg-alt',\n icon: [576, 512, [], \"f80c\", \"M573.48 219.91L310.6 8a35.85 35.85 0 0 0-45.19 0L2.53 219.91a6.71 6.71 0 0 0-1 9.5l14.2 17.5a6.82 6.82 0 0 0 9.6 1L64 216.72V496a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V216.82l38.8 31.29a6.83 6.83 0 0 0 9.6-1l14.19-17.5a7.14 7.14 0 0 0-1.11-9.7zM240 480V320h96v160zm240 0H368V304a16 16 0 0 0-16-16H224a16 16 0 0 0-16 16v176H96V190.92l187.71-151.4a6.63 6.63 0 0 1 8.4 0L480 191z\"]\n};\nvar faHoodCloak = {\n prefix: 'fal',\n iconName: 'hood-cloak',\n icon: [576, 512, [], \"f6ef\", \"M569.65 460.85C511.98 383.87 511.98 320 511.98 320v-64c0-84.03-46.36-123.05-101.17-182.7l39.75-39.75C462.94 21.17 454.17 0 436.66 0H287.57C191.98 0 64.02 109.45 64.02 256v64s0 63.87-57.67 140.85C-9.42 481.9 6.02 512 32.32 512h511.35c26.31 0 41.75-30.1 25.98-51.15zM191.98 480V320c0-52.94 43.06-96 95.99-96s95.99 43.06 95.99 96v160H191.98zm223.98.01V320c0-70.69-57.3-128-127.99-128s-127.99 57.31-127.99 128v160.02l-128.02.01C95.29 395.5 96.02 323.04 96.02 320v-64c0-129.94 114.42-224 191.55-224h119.28L366.5 72.36s32.84 35.6 38.68 41.82c45.05 47.98 74.81 79.68 74.81 141.81v64c0 3.04.73 75.5 63.69 160l-127.72.02z\"]\n};\nvar faHorizontalRule = {\n prefix: 'fal',\n iconName: 'horizontal-rule',\n icon: [640, 512, [], \"f86c\", \"M640 247.5v16a8 8 0 0 1-8 8H8a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h624a8 8 0 0 1 8 8z\"]\n};\nvar faHorse = {\n prefix: 'fal',\n iconName: 'horse',\n icon: [576, 512, [], \"f6f0\", \"M575.95 86.27c-.01-9.62-3.67-15.92-9.14-22.56 5.39-9.45 8.38-20.32 8.38-31.71 0-17.67-14.33-32-32-32H432c-70.58 0-128 57.42-128 128H163.36c-35.98 0-67.27 19.42-84.71 48.13C35.11 176.87 0 212.28 0 256v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56c0-21.5 14.23-39.48 33.71-45.59-.96 5.54-1.71 11.15-1.71 16.96 0 24.2 8.9 47.33 24.53 65.24l-21.97 74.28c-3.12 10.77-3.38 22.03-.8 32.74l21.13 87.86C90.34 501.86 103.2 512 118 512h57.53c20.95 0 36.12-19.75 31.02-39.86l-21.68-85.57 19.29-53.73L288 351.47V480c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V323.81c20.5-21.51 32-49.75 32-79.6v-50.52l14.55 21.82c19.11 28.67 49.98 20.67 55.45 18.8l25.52-8.71c19.44-6.63 32.5-24.9 32.49-45.45l-.06-93.88zm-42.78 109.04l-25.52 8.71c-9.33 3.19-16.14-2.76-18.48-6.27L464 160l-48-16v100.21c0 26.67-12.64 50.17-32 65.6V480h-64V325.8l-136.43-30.32-32.12 89.47L175.53 480H118l-21.13-87.86a31.698 31.698 0 0 1 .37-16.18l27.63-93.41C107.45 270.37 96 250.24 96 227.37c0-37.21 30.16-67.37 67.37-67.37H336v-32c0-53.02 42.98-96 96-96h111.19c0 13.29-8.11 24.67-19.63 29.5l20.39 24.78.05 93.88a16 16 0 0 1-10.83 15.15zM480 80c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16z\"]\n};\nvar faHorseHead = {\n prefix: 'fal',\n iconName: 'horse-head',\n icon: [512, 512, [], \"f7ab\", \"M296 176c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm211.9 123.2C435 142 432.3 124.5 390.4 97.8c10.2-19.9 12.5-43.4 6.1-68.1C391.8 12.2 375.9 0 357.6 0c-13 0-11.9 2.1-81.2 32.3C118.8 101.2 0 139.1 0 380.9V464c0 26.5 21.5 48 48 48h224c30.5 0 54.3-28.6 46.6-59.6l-18.3-73.3c6.5-2.4 12.6-5.4 18.5-8.8l14.7 20.6c11.4 15.8 29.6 25.2 48.9 25.2h30.1c15.6 0 30.3-5.9 41.6-16.7l40.5-35.7c16.7-17 22-42.2 13.3-64.5zM471.8 341l-39.6 34.8c-5.2 5.2-12.4 8.2-19.8 8.2h-30.1c-9 0-17.5-4.3-22.7-11.6L323.7 327c-17.3 17.1-40.6 28.2-66.9 28.2-39.2 0-72.6-23.7-87.4-57.4-2.2-5.1-8.9-6.3-12.9-2.4l-12.1 12.1c-2.4 2.4-3.1 6.2-1.6 9.3 21.1 41.6 64.2 70.3 114 70.3 4.2 0 8.1-.8 12.2-1.2l18.5 74.1c2.6 10.4-5.4 19.9-15.5 19.9H48c-8.8 0-16-7.2-16-16v-83.1c0-249.6 119.5-255.3 323-348.5 17.5-6.3 25.2 51.3-19.4 77.4 37.3 7.2 68.3 33.2 81.3 69.3l61.2 131.8c4 10.5 1.6 22.3-6.3 30.2z\"]\n};\nvar faHorseSaddle = {\n prefix: 'fal',\n iconName: 'horse-saddle',\n icon: [576, 512, [], \"f8c3\", \"M575.94 86.27c0-9.61-3.66-15.93-9.13-22.57a63.91 63.91 0 0 0 8.38-31.7 32 32 0 0 0-32-32H432a128.14 128.14 0 0 0-128 128H163.37c-36 0-67.28 19.42-84.71 48.12A80 80 0 0 0 0 256v56a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-56a47.82 47.82 0 0 1 33.72-45.59 97.81 97.81 0 0 0-1.72 17 99.36 99.36 0 0 0 24.53 65.23l-22 74.28a64 64 0 0 0-.81 32.73l21.12 87.86A32 32 0 0 0 118 512h57.53a32 32 0 0 0 31-39.86l-21.69-85.58 19.29-53.72L288 351.47V480a32 32 0 0 0 32 32h64a32 32 0 0 0 32-32V323.81a115 115 0 0 0 32-79.61v-50.51l14.56 21.83c19.1 28.67 50 20.67 55.44 18.79l25.53-8.72A47.91 47.91 0 0 0 576 180.16zM224 304.47l-40.44-9L151.44 385l24.09 95H118l-21.13-87.86a33 33 0 0 1 .38-16.14l27.62-93.4A67 67 0 0 1 144 163.17V176a95.83 95.83 0 0 0 80 94.39zM176 176v-16h128v16a64 64 0 0 1-128 0zm368 4.17c0 6.31-4.84 13.1-10.84 15.14l-25.5 8.69c-9.35 3.18-16.16-2.75-18.5-6.27L464 160l-48-16v100.2c0 26.68-12.63 50.18-32 65.61V480h-64V325.8l-64-14.22v-41.19A95.83 95.83 0 0 0 336 176v-48a96 96 0 0 1 96-96h111.19a32 32 0 0 1-19.63 29.5l20.38 24.78.06 93.88zM480 80a16 16 0 1 0 16 16 16 16 0 0 0-16-16z\"]\n};\nvar faHospital = {\n prefix: 'fal',\n iconName: 'hospital',\n icon: [448, 512, [], \"f0f8\", \"M180 352h-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 12zm88 0h40c6.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-128-96h40c6.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 12zm128 0h40c6.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 256H0v-20c0-6.627 5.373-12 12-12h20V85c0-11.598 10.745-21 24-21h88V24c0-13.255 10.745-24 24-24h112c13.255 0 24 10.745 24 24v40h88c13.255 0 24 9.402 24 21v395h20c6.627 0 12 5.373 12 12v20zM64 480h128v-84c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v84h128V96h-80v40c0 13.255-10.745 24-24 24H168c-13.255 0-24-10.745-24-24V96H64v384zM266 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\"]\n};\nvar faHospitalAlt = {\n prefix: 'fal',\n iconName: 'hospital-alt',\n icon: [576, 512, [], \"f47d\", \"M468 384h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12zm0-128h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12zM308 384h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12zm0-128h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12zM148 384h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12zm0-128h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12zm182-144h-26V86c0-3.3-2.7-6-6-6h-20c-3.3 0-6 2.7-6 6v26h-26c-3.3 0-6 2.7-6 6v20c0 3.3 2.7 6 6 6h26v26c0 3.3 2.7 6 6 6h20c3.3 0 6-2.7 6-6v-26h26c3.3 0 6-2.7 6-6v-20c0-3.3-2.7-6-6-6zm198 16H416V48c0-26.5-21.5-48-48-48H208c-26.5 0-48 21.5-48 48v80H48c-26.5 0-48 21.5-48 48v328c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V176c0-8.8 7.2-16 16-16h144V48c0-8.8 7.2-16 16-16h160c8.8 0 16 7.2 16 16v112h144c8.8 0 16 7.2 16 16v328c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V176c0-26.5-21.5-48-48-48z\"]\n};\nvar faHospitalSymbol = {\n prefix: 'fal',\n iconName: 'hospital-symbol',\n icon: [512, 512, [], \"f47e\", \"M344 144h-16c-4.4 0-8 3.6-8 8v88H192v-88c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v208c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-88h128v88c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V152c0-4.4-3.6-8-8-8zM256 0C114.6 0 0 114.6 0 256s114.6 256 256 256 256-114.6 256-256S397.4 0 256 0zm0 480C132.5 480 32 379.5 32 256S132.5 32 256 32s224 100.5 224 224-100.5 224-224 224z\"]\n};\nvar faHospitalUser = {\n prefix: 'fal',\n iconName: 'hospital-user',\n icon: [640, 512, [], \"f80d\", \"M148 192h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0 96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0 96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm96-96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0-96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0 192h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm-52-256h26a6 6 0 0 0 6-6v-20a6 6 0 0 0-6-6h-26V70a6 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-6zm288 192a96 96 0 1 0-96-96 96 96 0 0 0 96 96zm0-160a64 64 0 1 1-64 64 64.07 64.07 0 0 1 64-64zm143.69 221.13C606.44 355.5 577 342 546.79 342 519 342 512 352 480 352s-38.95-10-66.79-10c-30.23 0-59.65 13.48-76.9 39.11A95.5 95.5 0 0 0 320 434.67V472a40 40 0 0 0 40 40h240a40 40 0 0 0 40-40v-37.33a95.5 95.5 0 0 0-16.31-53.54zM608 472a8 8 0 0 1-8 8H360a8 8 0 0 1-8-8v-37.33A63.61 63.61 0 0 1 362.85 399c10.53-15.64 29.35-25 50.36-25 21.8 0 30 10 66.79 10s45-10 66.79-10c21 0 39.83 9.34 50.36 25A63.61 63.61 0 0 1 608 434.67zM320 128v222.31a119.48 119.48 0 0 1 32-25V128a32 32 0 0 0-32-32h-16V32a32 32 0 0 0-32-32H80a32 32 0 0 0-32 32v64H32a32 32 0 0 0-32 32v376a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V128h48V32h192v96z\"]\n};\nvar faHospitals = {\n prefix: 'fal',\n iconName: 'hospitals',\n icon: [640, 512, [], \"f80e\", \"M148 192h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0 96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0 96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm96-96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0-96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0 192h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm-52-256h26a6 6 0 0 0 6-6v-20a6 6 0 0 0-6-6h-26V70a6 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-6zm276 64h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0 96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0 96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm96-96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0-96h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm0 192h-40a12 12 0 0 0-12 12v40a12 12 0 0 0 12 12h40a12 12 0 0 0 12-12v-40a12 12 0 0 0-12-12zm-52-256h26a6 6 0 0 0 6-6v-20a6 6 0 0 0-6-6h-26V70a6 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-6zm128-32h-16V32a32 32 0 0 0-32-32H400a32 32 0 0 0-32 32v64h-64V32a32 32 0 0 0-32-32H80a32 32 0 0 0-32 32v64H32a32 32 0 0 0-32 32v376a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V128h48V32h192v96h48v376a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V128h48V32h192v96h48v376a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V128a32 32 0 0 0-32-32z\"]\n};\nvar faHotTub = {\n prefix: 'fal',\n iconName: 'hot-tub',\n icon: [512, 512, [], \"f593\", \"M80 144c39.76 0 72-32.24 72-72 0-39.77-32.24-72-72-72S8 32.23 8 72c0 39.76 32.24 72 72 72zm0-112c22.06 0 40 17.94 40 40s-17.94 40-40 40-40-17.94-40-40 17.94-40 40-40zm255.58 184.28c.25 4.29 3.63 7.72 7.93 7.72h15.98c4.54 0 8.34-3.8 8.11-8.34-2.03-40.37-18.75-77.44-45.6-100.42-19.77-16.92-32.18-44.75-33.96-75.52-.25-4.29-3.63-7.71-7.93-7.71h-15.98c-4.54 0-8.34 3.8-8.11 8.34 2.03 40.37 18.75 77.44 45.6 100.42 19.76 16.91 32.17 44.74 33.96 75.51zm96 0c.25 4.29 3.63 7.72 7.93 7.72h15.98c4.54 0 8.34-3.8 8.11-8.34-2.03-40.37-18.75-77.44-45.6-100.42-19.77-16.92-32.18-44.75-33.96-75.52-.25-4.29-3.63-7.71-7.93-7.71h-15.98c-4.54 0-8.34 3.8-8.11 8.34 2.03 40.37 18.75 77.44 45.6 100.42 19.76 16.91 32.17 44.74 33.96 75.51zM104 448h16c4.42 0 8-3.58 8-8V328c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v112c0 4.42 3.58 8 8 8zm96 0h16c4.42 0 8-3.58 8-8V328c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v112c0 4.42 3.58 8 8 8zm96 0h16c4.42 0 8-3.58 8-8V328c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v112c0 4.42 3.58 8 8 8zm96 0h16c4.42 0 8-3.58 8-8V328c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v112c0 4.42 3.58 8 8 8zm88-192H272l-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-32zM32 224c0-17.64 14.36-32 32-32h58.67c6.88 0 13.7 2.27 19.2 6.4l76.8 57.6H32v-32zm448 224c0 17.64-14.36 32-32 32H64c-17.64 0-32-14.36-32-32V288h448v160z\"]\n};\nvar faHotdog = {\n prefix: 'fal',\n iconName: 'hotdog',\n icon: [512, 512, [], \"f80f\", \"M469.96 179.21l13.62-13.63C501.91 147.27 512 122.91 512 97s-10.09-50.27-28.42-68.59C465.28 10.1 440.92 0 415 0s-50.28 10.1-68.6 28.43l-13.62 13.62-22.15-22.15C297.44 6.69 280.37 0 263.83 0c-14.79 0-29.16 5.35-39.98 16.17L16.17 223.85c-22.94 22.94-21.27 61.8 3.72 86.79l22.15 22.15-13.63 13.63C10.09 364.73 0 389.09 0 415s10.09 50.27 28.42 68.59C46.72 501.9 71.08 512 97 512s50.28-10.1 68.6-28.43l13.62-13.62 22.15 22.15c13.2 13.2 30.26 19.89 46.81 19.89 14.79 0 29.16-5.35 39.98-16.17l207.68-207.68c22.94-22.94 21.27-61.8-3.72-86.79l-22.16-22.14zM38.8 246.47L246.47 38.8c10.91-10.91 29.79-8.02 41.54 3.72l22.15 22.15L64.67 310.16l-22.15-22.15c-12.48-12.48-14.15-31.11-3.72-41.54zm104.16 214.49c-25.36 25.38-66.54 25.4-91.91 0-25.39-25.38-25.39-66.54 0-91.91l318-318c25.36-25.38 66.54-25.4 91.91 0 25.39 25.38 25.39 66.54 0 91.91l-318 318zM473.2 265.53L265.52 473.2c-10.89 10.89-29.77 8.04-41.53-3.72l-22.15-22.15 245.49-245.49 22.15 22.15c12.48 12.48 14.15 31.11 3.72 41.54zM416 96c-12.4 12.41-21.76 14.01-34.71 16.23-14.4 2.47-32.33 5.55-51.92 25.14-19.6 19.6-22.67 37.52-25.14 51.92-2.22 12.95-3.83 22.3-16.23 34.71-12.4 12.4-21.76 14.01-34.71 16.23-14.4 2.47-32.33 5.55-51.92 25.14-19.6 19.6-22.67 37.52-25.14 51.92C174 330.25 172.4 339.6 160 352c-12.4 12.4-21.76 14.01-34.7 16.23-14.4 2.47-32.33 5.54-51.92 25.14-6.25 6.25-6.25 16.38 0 22.63 3.12 3.12 7.22 4.69 11.31 4.69S92.88 419.12 96 416c12.4-12.4 21.76-14.01 34.7-16.23 14.4-2.47 32.33-5.54 51.92-25.14 19.6-19.6 22.67-37.52 25.14-51.92 2.22-12.95 3.83-22.3 16.23-34.71 12.4-12.4 21.76-14.01 34.71-16.23 14.4-2.47 32.33-5.55 51.92-25.14s22.67-37.52 25.14-51.92c2.22-12.95 3.83-22.3 16.23-34.71s21.76-14.01 34.71-16.23c14.4-2.47 32.33-5.55 51.92-25.14 6.25-6.25 6.25-16.38 0-22.63-6.24-6.25-16.37-6.25-22.62 0z\"]\n};\nvar faHotel = {\n prefix: 'fal',\n iconName: 'hotel',\n icon: [576, 512, [], \"f594\", \"M396.8 224h38.4c6.4 0 12.8-6.4 12.8-12.8v-38.4c0-6.4-6.4-12.8-12.8-12.8h-38.4c-6.4 0-12.8 6.4-12.8 12.8v38.4c0 6.4 6.4 12.8 12.8 12.8zm-128-96h38.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.8v38.4c0 6.4 6.4 12.8 12.8 12.8zm128 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.8v38.4c0 6.4 6.4 12.8 12.8 12.8zm-256 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.8v38.4c0 6.4 6.4 12.8 12.8 12.8zm128 96h38.4c6.4 0 12.8-6.4 12.8-12.8v-38.4c0-6.4-6.4-12.8-12.8-12.8h-38.4c-6.4 0-12.8 6.4-12.8 12.8v38.4c0 6.4 6.4 12.8 12.8 12.8zM568 32c4.42 0 8-3.58 8-8V8c0-4.42-3.58-8-8-8H8C3.58 0 0 3.58 0 8v16c0 4.42 3.58 8 8 8h23.98v448H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h560c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-24V32h24zM320 480h-64v-80c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v80zm192 0H352v-80c0-26.47-21.53-48-48-48h-32c-26.47 0-48 21.53-48 48v80H63.98V32H512v448zM140.8 224h38.4c6.4 0 12.8-6.4 12.8-12.8v-38.4c0-6.4-6.4-12.8-12.8-12.8h-38.4c-6.4 0-12.8 6.4-12.8 12.8v38.4c0 6.4 6.4 12.8 12.8 12.8zm26.31 157.66l16.25 2.26c4.3.6 8.11-2.24 9.07-6.36 9.96-42.83 49.74-74.28 95.58-74.28s85.61 31.45 95.58 74.28c.96 4.12 4.77 6.96 9.07 6.36l16.25-2.26c4.6-.64 7.9-4.92 6.94-9.34C403.22 314.29 349.72 271.5 288 271.5s-115.22 42.79-127.83 100.81c-.96 4.43 2.34 8.71 6.94 9.35z\"]\n};\nvar faHourglass = {\n prefix: 'fal',\n iconName: 'hourglass',\n icon: [384, 512, [], \"f254\", \"M368 32h4c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12H12C5.373 0 0 5.373 0 12v8c0 6.627 5.373 12 12 12h4c0 91.821 44.108 193.657 129.646 224C59.832 286.441 16 388.477 16 480h-4c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h360c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12h-4c0-91.821-44.108-193.657-129.646-224C324.168 225.559 368 123.523 368 32zM48 32h288c0 110.457-64.471 200-144 200S48 142.457 48 32zm288 448H48c0-110.457 64.471-200 144-200s144 89.543 144 200z\"]\n};\nvar faHourglassEnd = {\n prefix: 'fal',\n iconName: 'hourglass-end',\n icon: [384, 512, [], \"f253\", \"M368 32h4c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12H12C5.373 0 0 5.373 0 12v8c0 6.627 5.373 12 12 12h4c0 91.821 44.108 193.657 129.646 224C59.832 286.441 16 388.477 16 480h-4c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h360c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12h-4c0-91.821-44.108-193.657-129.646-224C324.168 225.559 368 123.523 368 32zM48 32h288c0 110.457-64.471 200-144 200S48 142.457 48 32zm288 448H48c0-110.457 64.471-200 144-200s144 89.543 144 200zM98.379 416h187.243a12.01 12.01 0 0 1 11.602 8.903 199.464 199.464 0 0 1 2.059 8.43c1.664 7.522-4 14.667-11.704 14.667H96.422c-7.704 0-13.368-7.145-11.704-14.667.62-2.804 1.307-5.616 2.059-8.43A12.01 12.01 0 0 1 98.379 416zm15.962-50.912a141.625 141.625 0 0 1 6.774-8.739c2.301-2.738 5.671-4.348 9.248-4.348h123.276c3.576 0 6.947 1.61 9.248 4.348a142.319 142.319 0 0 1 6.774 8.739c5.657 7.91-.088 18.912-9.813 18.912H124.153c-9.724 0-15.469-11.003-9.812-18.912z\"]\n};\nvar faHourglassHalf = {\n prefix: 'fal',\n iconName: 'hourglass-half',\n icon: [384, 512, [], \"f252\", \"M368 32h4c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12H12C5.373 0 0 5.373 0 12v8c0 6.627 5.373 12 12 12h4c0 91.821 44.108 193.657 129.646 224C59.832 286.441 16 388.477 16 480h-4c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h360c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12h-4c0-91.821-44.108-193.657-129.646-224C324.168 225.559 368 123.523 368 32zM48 32h288c0 110.457-64.471 200-144 200S48 142.457 48 32zm288 448H48c0-110.457 64.471-200 144-200s144 89.543 144 200zm-66.34-333.088a141.625 141.625 0 0 1-6.774 8.739c-2.301 2.738-5.671 4.348-9.248 4.348H130.362c-3.576 0-6.947-1.61-9.248-4.348a142.319 142.319 0 0 1-6.774-8.739c-5.657-7.91.088-18.912 9.813-18.912h135.694c9.725 0 15.469 11.003 9.813 18.912zM98.379 416h187.243a12.01 12.01 0 0 1 11.602 8.903 199.464 199.464 0 0 1 2.059 8.43c1.664 7.522-4 14.667-11.704 14.667H96.422c-7.704 0-13.368-7.145-11.704-14.667.62-2.804 1.307-5.616 2.059-8.43A12.01 12.01 0 0 1 98.379 416z\"]\n};\nvar faHourglassStart = {\n prefix: 'fal',\n iconName: 'hourglass-start',\n icon: [384, 512, [], \"f251\", \"M368 32h4c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12H12C5.373 0 0 5.373 0 12v8c0 6.627 5.373 12 12 12h4c0 91.821 44.108 193.657 129.646 224C59.832 286.441 16 388.477 16 480h-4c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h360c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12h-4c0-91.821-44.108-193.657-129.646-224C324.168 225.559 368 123.523 368 32zM48 32h288c0 110.457-64.471 200-144 200S48 142.457 48 32zm288 448H48c0-110.457 64.471-200 144-200s144 89.543 144 200zM285.621 96H98.379a12.01 12.01 0 0 1-11.602-8.903 199.464 199.464 0 0 1-2.059-8.43C83.054 71.145 88.718 64 96.422 64h191.157c7.704 0 13.368 7.145 11.704 14.667a199.464 199.464 0 0 1-2.059 8.43A12.013 12.013 0 0 1 285.621 96zm-15.961 50.912a141.625 141.625 0 0 1-6.774 8.739c-2.301 2.738-5.671 4.348-9.248 4.348H130.362c-3.576 0-6.947-1.61-9.248-4.348a142.319 142.319 0 0 1-6.774-8.739c-5.657-7.91.088-18.912 9.813-18.912h135.694c9.725 0 15.469 11.003 9.813 18.912z\"]\n};\nvar faHouse = {\n prefix: 'fal',\n iconName: 'house',\n icon: [576, 512, [], \"e00d\", \"M570.53,242,512,190.75V48a16,16,0,0,0-16-16H400a16,16,0,0,0-16,16V78.75L298.53,4a16,16,0,0,0-21.06,0L5.47,242a16,16,0,0,0,21.07,24.09L64,233.27V464a48.05,48.05,0,0,0,48,48H464a48.05,48.05,0,0,0,48-48V233.27l37.46,32.79A16,16,0,0,0,570.53,242ZM480,464a16,16,0,0,1-16,16H112a16,16,0,0,1-16-16V205.27l192-168,192,168Zm0-301.25-64-56V64h64ZM208,218.67V325.34A26.75,26.75,0,0,0,234.66,352H341.3A26.76,26.76,0,0,0,368,325.34V218.67A26.75,26.75,0,0,0,341.3,192H234.66A26.74,26.74,0,0,0,208,218.67ZM240,224h96v96H240Z\"]\n};\nvar faHouseDamage = {\n prefix: 'fal',\n iconName: 'house-damage',\n icon: [576, 512, [], \"f6f1\", \"M573.51 219.94L512 170.35V72c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v72.55L310.63 8.01c-13.16-10.69-32.06-10.69-45.22 0L2.53 219.94c-2.92 2.36-3.37 6.64-1.01 9.45l14.17 17.55a6.788 6.788 0 0 0 9.56 1.01L64 216.7V496c0 8.84 7.16 16 16 16h149.57l-14.55-32-22.69-49.91 104.11-71.99L236.28 224l148.05 153.86-104.11 71.99L299.59 480l20.55 32H496c8.84 0 16-7.16 16-16V216.78l38.79 31.28c2.93 2.36 7.2 1.91 9.56-1.01l14.17-17.55c2.36-2.92 1.8-7.2-1.01-9.56zM480 480H337.63l-13.76-21.42 78.67-54.4a31.976 31.976 0 0 0 13.64-23.13c.94-9.34-2.28-18.62-8.78-25.38L259.34 201.81c-6.22-6.47-14.61-9.81-23.07-9.81-6.2 0-12.44 1.8-17.9 5.48-12.89 8.71-17.66 25.42-11.29 39.62l49.27 109.82-82.22 56.85c-12.73 8.81-17.34 25.47-10.93 39.56L179.87 480H96V190.9L283.74 39.51a6.635 6.635 0 0 1 8.44 0L480 190.98V480z\"]\n};\nvar faHouseDay = {\n prefix: 'fal',\n iconName: 'house-day',\n icon: [640, 512, [], \"e00e\", \"M120,176a56,56,0,1,0,56-56A56.09,56.09,0,0,0,120,176Zm80,0a24,24,0,1,1-24-24A24,24,0,0,1,200,176ZM634.53,296,576,244.75V144a16,16,0,0,0-32,0v72.75L410.53,100a16,16,0,0,0-21.06,0l-224,196a16,16,0,0,0,21.06,24.09L224,287.28V464a48.05,48.05,0,0,0,48,48H528a48.06,48.06,0,0,0,48-48V287.28l37.46,32.78A16,16,0,0,0,634.53,296ZM544,464a16,16,0,0,1-16,16H272a16,16,0,0,1-16-16V264a15.43,15.43,0,0,0-.81-4L400,133.27l144,126ZM78.72,272.19l22-66.16L38.41,174.89l62.34-31.22-22-66.08,66.15,22L176,37.3l31.22,62.42,66.06-22.06-22,66.09,25,12.51,26.06-22.75-12-6,16.57-49.61a26.74,26.74,0,0,0-6.6-27.54A26.4,26.4,0,0,0,273,44L223.4,60.56,200,13.73c-9.19-18.31-38.81-18.31-48,0L128.62,60.52,79,44A26.82,26.82,0,0,0,45.06,77.89l16.56,49.59L14.84,150.89a26.83,26.83,0,0,0,0,48l46.78,23.36L45.06,271.92a26.67,26.67,0,0,0,6.6,27.53A26.31,26.31,0,0,0,79,305.81l41.94-14,31.11-27.15-7.27-14.56ZM336,277.33v85.34A21.39,21.39,0,0,0,357.37,384h85.3A21.39,21.39,0,0,0,464,362.67V277.33A21.39,21.39,0,0,0,442.67,256h-85.3A21.39,21.39,0,0,0,336,277.33ZM368,288H432v64H368Z\"]\n};\nvar faHouseFlood = {\n prefix: 'fal',\n iconName: 'house-flood',\n icon: [576, 512, [], \"f74f\", \"M252 193c-15.4 0-28 12.6-28 28v72c0 15.4 12.6 28 28 28h72c15.4 0 28-12.6 28-28v-72c0-15.4-12.6-28-28-28h-72zm68 96h-64v-64h64v64zm248.3 160c-29.5-1.5-57.7-11.6-78.2-28.3-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.2-171.8-.1-5.9-4.8-14.3-4.7-20.2.1-20.2 16.6-48.4 26.7-78.2 28.2-4.3.2-7.7 3.6-7.7 7.9v16c0 4.5 3.8 8.3 8.3 8.1 32.3-1.5 63.3-11.4 87.8-27.9 53.8 36.1 139.2 35.8 192 0 53.7 36.1 139.2 35.8 192 0 24.6 16.5 55.6 26.4 87.6 27.9 4.5.2 8.3-3.6 8.3-8.1v-16c0-4.3-3.4-7.7-7.7-7.9zM45.9 252.4c2.1 2.6 5.9 3 8.5.9L96 219.8v165.4c10.9 0 21.6 3.8 30.2 10.7.5.4 1.2.7 1.8 1.1V194L284.1 68.1c2.2-1.8 5.3-1.8 7.5 0l156 125.9v203.3c.6-.4 1.3-.8 1.9-1.2 8.5-7 19.2-10.8 30.2-10.9V219.9l41.6 33.5c2.6 2.1 6.4 1.7 8.5-.9l12.6-15.6c2.1-2.6 1.6-6.4-.9-8.5l-61.8-49.7v-75.9c0-3.3-2.7-6-6-6h-20c-3.3 0-6 2.7-6 6v50.1L307.9 40.1c-11.7-9.5-28.5-9.5-40.2 0L34.2 228.4c-2.6 2.1-3 5.9-.9 8.4l12.6 15.6z\"]\n};\nvar faHouseLeave = {\n prefix: 'fal',\n iconName: 'house-leave',\n icon: [640, 512, [], \"e00f\", \"M112,384a16,16,0,0,1-16-16V168a15.35,15.35,0,0,0-.81-4L240,37.27l108.4,94.85a135.51,135.51,0,0,1,27-18.88L250.53,4a16,16,0,0,0-21.06,0L5.47,200a16,16,0,0,0,21.07,24.1L64,191.28V368a48.05,48.05,0,0,0,48,48H299.31a82.32,82.32,0,0,1,10.91-15.37l15-16.63Zm69.33-224A21.39,21.39,0,0,0,160,181.34v85.33A21.39,21.39,0,0,0,181.33,288h85.3A21.39,21.39,0,0,0,288,266.67V181.34A21.39,21.39,0,0,0,266.63,160ZM256,256H192V192h64Zm369.54-8.7-19.6-21.09-8.71-28.5c-7.88-26.11-23.28-47.8-43.19-62.8A74,74,0,1,0,451.32,116.3c-14.72,3.8-28.4,9.8-45.31,17.41l-8.59,3.8c-24,10.5-43.4,30.09-54.9,55.2l-11.81,28c-7.28,17.2-5.69,35.7,4.22,50.7A52.78,52.78,0,0,0,378.42,295a48.24,48.24,0,0,0,32.91-12.9c.18,1.4.37,2.7.59,4.11L397.7,325.1l-16.28,44.61L334,422.1c-18.69,20.4-18.69,52.4,0,72.9a50,50,0,0,0,74.4,0l46.68-51.2a111.23,111.23,0,0,0,22-36.5l8.72-23.89,10.59,10.69a4,4,0,0,1,.91,1.9l15.59,74.2C518,494.5,539,512,562.82,512a50.1,50.1,0,0,0,12.09-1.5c27.4-6.91,44-34.59,38-62.91L597.31,373.5a114.57,114.57,0,0,0-14.72-36.7,49.59,49.59,0,0,0,5.5.3c20.31,0,38.91-12.6,47.41-32.19S640.18,263.3,625.5,247.3ZM512,32a42,42,0,1,1-42,42A42,42,0,0,1,512,32ZM447,396.3a78,78,0,0,1-15.59,25.9L384.7,473.41a18.19,18.19,0,0,1-13.59,6.18,18.54,18.54,0,0,1-13.59-6.18,22.43,22.43,0,0,1,0-29.71l46.68-51.2a35.57,35.57,0,0,0,7.13-11.79l16.28-44.61.09.11,1,1.2,29,29.3Zm141.08-91.09c-4.4,0-9-1.8-13-6.21L551.6,273.71a50.14,50.14,0,0,1-11-19.41c-11.41-37.5-11.5-39.89-17.5-48.5l-20.91,91.7,43,43.41A78.39,78.39,0,0,1,566,380.21l15.59,74.09c2.41,11.29-4,22.61-14.4,25.2a16.49,16.49,0,0,1-4.37.5c-9.41,0-16.72-7.59-18.63-16.3L528.6,389.5a34.7,34.7,0,0,0-9.5-17.79L456,307.8c-11.59-13.8-15.69-31.2-11.91-47.7l15.82-69.3c-9,3.2-18.1,7.3-35.41,15a36.13,36.13,0,0,0-18.31,18.41L395,250.8c-3.69,8.7-10.1,12.3-16.6,12.3-12.5,0-25.21-13.39-18.21-29.89L371.7,206c8.32-18.2,21.91-31.9,38.63-39.2C444.51,151.71,459,144,486.91,144c36.28,0,68.28,25.29,79.78,63L577,240.91a6.9,6.9,0,0,0,1.59,2.8L602,269C616.09,284.3,602.91,305.21,588.09,305.21Z\"]\n};\nvar faHouseNight = {\n prefix: 'fal',\n iconName: 'house-night',\n icon: [640, 512, [], \"e010\", \"M112,224a111.5,111.5,0,0,0,87-41.45,20.51,20.51,0,0,0-19.75-33.08A59.2,59.2,0,0,1,138.84,39.85a20.3,20.3,0,0,0,10.07-21.27,20.26,20.26,0,0,0-16.47-16.7A136,136,0,0,0,112,0a112,112,0,0,0,0,224ZM97.78,33.27a91.21,91.21,0,0,0,54.47,147.9A80,80,0,1,1,97.78,33.27Zm97.15,35.51,39.72,16.56,16.56,39.72a5.33,5.33,0,0,0,9.55,0l16.56-39.72L317,68.78a5.33,5.33,0,0,0,0-9.54L277.32,42.68,260.76,3a5.33,5.33,0,0,0-9.55,0L234.65,42.68,194.93,59.24a5.34,5.34,0,0,0,0,9.54ZM157,379.24l-39.72-16.57L100.76,323a5.34,5.34,0,0,0-9.55,0L74.65,362.67,34.93,379.24a5.34,5.34,0,0,0,0,9.54l39.72,16.56,16.56,39.72a5.33,5.33,0,0,0,9.55,0l16.56-39.72L157,388.78a5.33,5.33,0,0,0,0-9.54Zm179-101.9v85.33A21.39,21.39,0,0,0,357.36,384h85.31A21.39,21.39,0,0,0,464,362.67V277.34A21.4,21.4,0,0,0,442.67,256H357.36A21.4,21.4,0,0,0,336,277.34ZM368,288H432v64H368Zm266.49,8L576,244.75V144a16,16,0,0,0-32,0v72.75L410.53,100a16,16,0,0,0-21.07,0l-224,196a16,16,0,0,0,21.07,24.09L224,287.28V464a48.05,48.05,0,0,0,48,48H528a48.06,48.06,0,0,0,48-48V287.28l37.46,32.78A16,16,0,0,0,634.53,296ZM544,464a16,16,0,0,1-16,16H272a16,16,0,0,1-16-16V264a15.94,15.94,0,0,0-.81-4L400,133.27l144,126Z\"]\n};\nvar faHouseReturn = {\n prefix: 'fal',\n iconName: 'house-return',\n icon: [640, 512, [], \"e011\", \"M96,368V168a15.35,15.35,0,0,0-.81-4L240,37.27,357.21,139.84c1.34-1.8,2.3-3.87,3.72-5.6a105.83,105.83,0,0,1-18-49.42L250.53,4a16,16,0,0,0-21.06,0L5.47,200a16,16,0,0,0,21.07,24.1L64,191.28V368a48.05,48.05,0,0,0,48,48H321.14l6.74-32H112A16,16,0,0,1,96,368Zm85.33-208A21.39,21.39,0,0,0,160,181.34v85.33A21.39,21.39,0,0,0,181.33,288h85.3A21.39,21.39,0,0,0,288,266.67V181.34A21.39,21.39,0,0,0,266.63,160ZM256,256H192V192h64ZM626,422.1l-47.4-52.39L562.3,325.1l-14.21-38.89c.21-1.41.4-2.71.59-4.11a48.21,48.21,0,0,0,32.9,12.9,52.8,52.8,0,0,0,43.5-23.59c9.9-15,11.5-33.5,4.22-50.7l-11.81-28c-11.5-25.11-30.91-44.7-54.91-55.2l-8.59-3.8c-16.9-7.61-30.59-13.61-45.31-17.41A74,74,0,1,0,406,134.91c-19.9,15-35.31,36.69-43.18,62.8l-8.72,28.5L334.51,247.3c-14.69,16-18.6,38.11-10,57.61s27.09,32.19,47.4,32.19a49.33,49.33,0,0,0,5.5-.3,114.57,114.57,0,0,0-14.72,36.7L347.1,447.59c-6,28.32,10.59,56,38,62.91a50,50,0,0,0,12.09,1.5c23.81,0,44.81-17.5,49.9-41.8L462.68,396a4,4,0,0,1,.91-1.9l10.59-10.69,8.72,23.89a111.4,111.4,0,0,0,22,36.5L551.59,495A50,50,0,0,0,626,495C644.67,474.5,644.67,442.5,626,422.1ZM448,32a42,42,0,1,1-42,42A42,42,0,0,1,448,32Zm-7.1,339.7a34.61,34.61,0,0,0-9.49,17.79l-15.6,74.2c-1.9,8.71-9.22,16.3-18.62,16.3a16.44,16.44,0,0,1-4.37-.5c-10.41-2.59-16.82-13.91-14.41-25.2L394,380.21a78.55,78.55,0,0,1,20.81-39.3l43-43.41-20.9-91.7c-6,8.61-6.1,11-17.5,48.5a50.14,50.14,0,0,1-11,19.41L384.91,299c-4,4.41-8.59,6.21-13,6.21-14.81,0-28-20.91-13.9-36.21l23.4-25.29a6.9,6.9,0,0,0,1.59-2.8L393.32,207c11.49-37.7,43.49-63,79.77-63,27.9,0,42.4,7.7,76.59,22.79,16.72,7.3,30.31,21,38.62,39.2l11.5,27.21c7,16.5-5.72,29.89-18.22,29.89-6.5,0-12.9-3.6-16.59-12.3L553.8,224.21a36.13,36.13,0,0,0-18.31-18.41c-17.31-7.7-26.4-11.8-35.4-15l15.81,69.3c3.78,16.5-.31,33.9-11.91,47.7Zm161.59,101.7a18.58,18.58,0,0,1-13.59,6.18,18.23,18.23,0,0,1-13.6-6.18L528.59,422.2A78,78,0,0,1,513,396.3l-10.68-29.59,29-29.3,1-1.2.1-.11,16.28,44.61a35.55,35.55,0,0,0,7.12,11.79l46.69,51.2A22.43,22.43,0,0,1,602.49,473.41Z\"]\n};\nvar faHouseSignal = {\n prefix: 'fal',\n iconName: 'house-signal',\n icon: [640, 512, [], \"e012\", \"M0,224v32c141.38,0,256,114.62,256,256h32C288,352.94,159.06,224,0,224Zm0,96v32A160,160,0,0,1,160,512h32C192,406,106,320,0,320Zm0,96v32a64,64,0,0,1,64,64H96A96,96,0,0,0,0,416ZM634.53,200,576,148.76V48a16,16,0,1,0-32,0v72.74L410.53,4a16,16,0,0,0-21.06,0L224,148.76h0L165.47,200a16,16,0,1,0,21.06,24.09L224,191.29h0v70.79a337.37,337.37,0,0,1,32,32.61V168a15.35,15.35,0,0,0-.81-4L400,37.27l144,126V368a16,16,0,0,1-16,16H310.61a333,333,0,0,1,11.29,32H528a48.05,48.05,0,0,0,48-48V191.28l37.46,32.79A16,16,0,0,0,634.53,200ZM442.67,288A21.39,21.39,0,0,0,464,266.67V181.34A21.39,21.39,0,0,0,442.67,160h-85.3A21.39,21.39,0,0,0,336,181.34v85.33A21.39,21.39,0,0,0,357.37,288ZM368,192H432v64H368Z\"]\n};\nvar faHouseUser = {\n prefix: 'fal',\n iconName: 'house-user',\n icon: [576, 512, [], \"e065\", \"M570.93,242l-58.57-51.26V48a16,16,0,0,0-16-16H400.28a16,16,0,0,0-16,16V78.71L298.74,4a16,16,0,0,0-21.08,0L5.47,242A18.2,18.2,0,0,0,0,254a16,16,0,0,0,16,16,18.56,18.56,0,0,0,10.56-3.95l37.48-32.83V464a48.1,48.1,0,0,0,48,48H464.33a48.11,48.11,0,0,0,48-48V233.24L549.84,266A18.65,18.65,0,0,0,560,269.65a16,16,0,0,0,16-16A18.26,18.26,0,0,0,570.93,242ZM175.72,480a80.12,80.12,0,0,1,80.05-80h64a80.12,80.12,0,0,1,80.06,80Zm304.62-16a16,16,0,0,1-16,16H431.9A112.18,112.18,0,0,0,319.82,368h-64A112.17,112.17,0,0,0,143.7,480H112.08a16,16,0,0,1-16-16V205.24l192.13-168,192.14,168Zm0-301.28-64-56V64h64ZM207.74,256a80.06,80.06,0,1,0,80.06-80A80.13,80.13,0,0,0,207.74,256Zm128.09,0a48,48,0,1,1-48-48A48.07,48.07,0,0,1,335.83,256Z\"]\n};\nvar faHryvnia = {\n prefix: 'fal',\n iconName: 'hryvnia',\n icon: [384, 512, [], \"f6f2\", \"M376 224c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-96.54l12.73-12.59c16.23-16.05 25.53-38.73 25.53-62.22 0-46.97-36.14-85.19-80.58-85.19h-84.42c-22.05 0-43.2 7.77-59.56 21.84l-33.51 28.8a8.008 8.008 0 0 0-.86 11.28l10.42 12.14c2.88 3.35 7.93 3.74 11.28.86l33.52-28.81C124.59 69.02 138.33 64 152.72 64h84.42c26.78 0 48.58 23.86 48.58 53.19 0 15-5.84 29.39-16.03 39.47L233.96 192H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h193.6l-64.71 64H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h96.54l-12.73 12.59c-16.23 16.05-25.53 38.73-25.53 62.22 0 46.97 36.14 85.19 80.58 85.19h84.42c22.05 0 43.2-7.77 59.56-21.84l33.52-28.8a8.008 8.008 0 0 0 .86-11.28l-10.42-12.14a8.01 8.01 0 0 0-11.29-.86l-33.52 28.81c-10.58 9.09-24.31 14.11-38.7 14.11h-84.42c-26.78 0-48.58-23.86-48.58-53.19 0-15 5.84-29.39 16.03-39.47L150.04 320H376c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H182.4l64.71-64H376z\"]\n};\nvar faHumidity = {\n prefix: 'fal',\n iconName: 'humidity',\n icon: [384, 512, [], \"f750\", \"M160 292c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm92 60c-15.5 0-28 12.5-28 28s12.5 28 28 28 28-12.5 28-28-12.5-28-28-28zM223.9 22.1C219.5 7.5 205.8 0 192 0c-13.5 0-27 7.2-31.8 22.1C109.1 179.8 0 222.7 0 333.9 0 432.3 85.9 512 192 512s192-79.7 192-178.1c0-111.7-108.9-153.3-160.1-311.8zM192 480c-88.2 0-160-65.5-160-146.1 0-47.6 25-80.4 59.6-125.9 32.6-42.8 73.1-96 98.6-175.7.1-.1.8-.3 1.8-.3.7 0 1.2.1 1.4.1h.1c26 80.4 66.5 133.4 99.1 176.1C327.1 253.4 352 286 352 333.9c0 80.6-71.8 146.1-160 146.1zm61-212.2l-12.5-10c-3.5-2.8-8.5-2.2-11.2 1.2l-99.5 134c-2.8 3.5-2.2 8.5 1.2 11.2l12.5 10c3.5 2.8 8.5 2.2 11.2-1.2l99.5-134c2.8-3.4 2.2-8.5-1.2-11.2z\"]\n};\nvar faHurricane = {\n prefix: 'fal',\n iconName: 'hurricane',\n icon: [384, 512, [], \"f751\", \"M176 96l24.5-74.8C204 10.6 195.9 0 185.1 0c-.7 0-1.3 0-2 .1C80 12.4 0 101.6 0 208c0 114.9 93.1 208 208 208l-24.5 74.8c-3.5 10.6 4.6 21.2 15.4 21.2.7 0 1.3 0 2-.1C304 499.6 384 410.4 384 304c0-114.9-93.1-208-208-208zm46.3 379.2l16.1-49.3 13.7-42H208c-97 0-176-79-176-176 0-81.1 54.2-150.7 129.7-171.2L145.6 86l-13.7 42H176c97 0 176 79 176 176 0 81.1-54.2 150.7-129.7 171.2zM192 184c-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-40s17.9-40 40-40 40 17.9 40 40-17.9 40-40 40z\"]\n};\nvar faICursor = {\n prefix: 'fal',\n iconName: 'i-cursor',\n icon: [192, 512, [], \"f246\", \"M96 38.223C75.091 13.528 39.824 1.336 6.191.005 2.805-.129 0 2.617 0 6.006v20.013c0 3.191 2.498 5.847 5.686 5.989C46.519 33.825 80 55.127 80 80v160H38a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6h42v160c0 24.873-33.481 46.175-74.314 47.992-3.188.141-5.686 2.797-5.686 5.989v20.013c0 3.389 2.806 6.135 6.192 6.002C40.03 510.658 75.193 498.351 96 473.777c20.909 24.695 56.176 36.887 89.809 38.218 3.386.134 6.191-2.612 6.191-6.001v-20.013c0-3.191-2.498-5.847-5.686-5.989C145.481 478.175 112 456.873 112 432V272h42a6 6 0 0 0 6-6v-20a6 6 0 0 0-6-6h-42V80c0-24.873 33.481-46.175 74.314-47.992 3.188-.142 5.686-2.798 5.686-5.989V6.006c0-3.389-2.806-6.135-6.192-6.002C151.97 1.342 116.807 13.648 96 38.223z\"]\n};\nvar faIceCream = {\n prefix: 'fal',\n iconName: 'ice-cream',\n icon: [448, 512, [], \"f810\", \"M380.91 129.3C366.57 55.65 301.85 0 224 0S81.43 55.65 67.09 129.3A79.87 79.87 0 0 0 80 288h6l95 196.65a47.54 47.54 0 0 0 86.06 0L362 288h6a79.87 79.87 0 0 0 12.91-158.7zM238.22 470.73c-4.06 8.38-11.28 9.27-14.22 9.27s-10.16-.89-14.22-9.27L121.5 288h205zM368 256H80a47.86 47.86 0 0 1-7.75-95.12l22-3.59 4.25-21.88a127.86 127.86 0 0 1 251 0l4.25 21.88 22 3.59A47.86 47.86 0 0 1 368 256z\"]\n};\nvar faIceSkate = {\n prefix: 'fal',\n iconName: 'ice-skate',\n icon: [576, 512, [], \"f7ac\", \"M568 416h-16c-4.4 0-8 3.6-8 8v8c0 26.5-21.5 48-48 48h-80v-64h32c35.3 0 64-28.7 64-64v-37c0-44.1-30-82.5-72.7-93.1L320 192V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v24h-83.7c-8.1 0-16.2 1.6-23.8 4.6L52.1 88C40 92.8 32 104.6 32 117.7V352c0 35.3 28.7 64 64 64v64H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h488c44.2 0 80-35.8 80-80v-8c0-4.4-3.6-8-8-8zM64 352V117.7l128.4-51.4c3.8-1.5 7.8-2.3 11.9-2.3H288v64h-56c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h56v32h-56c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h84.1l115.5 28.9C460.1 260 480 285.5 480 315v37c0 17.6-14.4 32-32 32H96c-17.6 0-32-14.4-32-32zm320 128H128v-64h256v64z\"]\n};\nvar faIcicles = {\n prefix: 'fal',\n iconName: 'icicles',\n icon: [512, 512, [], \"f7ad\", \"M466 0H46C16.3 0-7.3 28.5 2.1 59.8l88.7 249.4c2.3 6.7 7.9 11.3 15.7 10.8 7-.2 13.1-5.1 14.9-11.9l23.5-77 35.3 172.1c1.5 7.5 8.1 12.9 15.7 12.9 7.7 0 14.2-5.4 15.7-13L248 221.6l22.3 86c1.6 7.2 8 12.4 15.5 12.5h.1c7.4 0 13.8-5 15.5-12.2l32.3-119.3 56.5 310.3c1.4 7.6 7.9 13.1 15.6 13.1h.2c7.6 0 14.2-5.4 15.7-12.8l89.5-444.5v-.2C516.6 25.8 494.4 0 466 0zm-59.2 411l-54.9-301.8c-3.1-17-27.2-17.6-31.3-1l-34 138.3-24.1-106c-3.7-16.3-27.9-16.8-31.3.5l-35.3 182L163 157c-3.5-17.6-27.2-15.8-31.2-1l-27.7 104.7L32.6 50C30 41.2 36.4 32 46 32h420c11.1 0 14.9 10.5 13.8 16.5l-73 362.5z\"]\n};\nvar faIcons = {\n prefix: 'fal',\n iconName: 'icons',\n icon: [512, 512, [], \"f86d\", \"M106.66 215.41a29.89 29.89 0 0 0 42.59 0l84.66-85.62a76.63 76.63 0 0 0-5.41-112.62C199.84-6.75 156.41-4.67 128 21.38 99.66-4.73 56.22-6.86 27.47 17.19A76.7 76.7 0 0 0 22 129.8zM48 41.73a41.14 41.14 0 0 1 26.53-9.39A47.2 47.2 0 0 1 108 46.55l20 20.17 20-20.19c16.69-16.86 43-18.94 60-4.81a44.62 44.62 0 0 1 3.19 65.56l-81.72 85.64-84.69-85.61a44.71 44.71 0 0 1-12.72-33.47A44.12 44.12 0 0 1 48 41.73zM260.57 288h-48l-7.08-14.21A27.4 27.4 0 0 0 179.83 256h-71.71a27.4 27.4 0 0 0-25.66 17.75l-7 14.21h-48A27.42 27.42 0 0 0 0 315.35v169.26A27.42 27.42 0 0 0 27.43 512h233.14A27.42 27.42 0 0 0 288 484.61V315.35A27.42 27.42 0 0 0 260.57 288zM256 480H32V320h63.3l8.81-17.81 7-14.15h65.73l7.09 14.21 8.84 17.75H256zM484.62 0a24.05 24.05 0 0 0-3.93.33L343.55 23.18C330 25.44 320 38.94 320 54.86V166.8a81.36 81.36 0 0 0-32-6.47c-35.88 0-64 21.08-64 48s28.12 48 64 48 64-21.08 64-48V54.86a4.45 4.45 0 0 1 0-.65l128-21.33V135a80 80 0 0 0-32-6.65c-35.35 0-64 21.49-64 48s28.65 48 64 48 64-21.49 64-48V32c0-17.91-12.51-32-27.38-32zM288 224.33c-19.25 0-32-9.63-32-16s12.75-16 32-16 32 9.62 32 16-12.75 16-32 16zm160-32c-19.85 0-32-10.36-32-16s12.15-16 32-16 32 10.36 32 16-12.15 16-32 16zM144 336a64 64 0 1 0 64 64 64.07 64.07 0 0 0-64-64zm0 96a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm280.19-152.84a16 16 0 0 0-28.63-14.32L328 400h110.31l-52.2 88.06a16 16 0 0 0 6 21.83A15.8 15.8 0 0 0 400 512a16 16 0 0 0 13.91-8.06L493.44 368H379.75z\"]\n};\nvar faIconsAlt = {\n prefix: 'fal',\n iconName: 'icons-alt',\n icon: [512, 512, [], \"f86e\", \"M480.84 0a23.6 23.6 0 0 0-3.9.33L340.87 23.18c-13.41 2.26-23.37 15.76-23.37 31.68V166.8a80.15 80.15 0 0 0-31.75-6.47c-35.59 0-63.5 21.08-63.5 48s27.91 48 63.5 48 63.5-21.08 63.5-48V54.86a4.45 4.45 0 0 1 0-.65l127-21.33V135a78.79 78.79 0 0 0-31.75-6.65c-35.07 0-63.5 21.49-63.5 48s28.43 48 63.5 48 63.5-21.49 63.5-48V32c0-17.91-12.41-32-27.16-32zM285.75 224.33c-19.1 0-31.75-9.63-31.75-16s12.65-16 31.75-16 31.75 9.62 31.75 16-12.65 16-31.75 16zm158.75-32c-19.7 0-31.75-10.36-31.75-16s12.05-16 31.75-16 31.75 10.36 31.75 16-12.05 16-31.75 16zM7.94 96h87.31v120a8 8 0 0 0 7.94 8h15.87a8 8 0 0 0 7.94-8V96h87.31a8 8 0 0 0 7.94-8V72a8 8 0 0 0-7.94-8H7.94A8 8 0 0 0 0 72v16a8 8 0 0 0 7.94 8zm325.44 288a48 48 0 1 0-47.63-48 47.81 47.81 0 0 0 47.63 48zm0-64a16 16 0 1 1-15.88 16 16 16 0 0 1 15.88-16zM7.94 32h206.37a8 8 0 0 0 7.94-8V8.33a8 8 0 0 0-7.94-8H7.94a8 8 0 0 0-7.94 8V24a8 8 0 0 0 7.94 8zm452.44 384A48 48 0 1 0 508 464a47.81 47.81 0 0 0-47.62-48zm0 64a16 16 0 1 1 15.87-16 16 16 0 0 1-15.87 16zm34.07-189.66a7.89 7.89 0 0 0-11.22 0L288.08 487a8.05 8.05 0 0 0 0 11.32l11.22 11.31a7.89 7.89 0 0 0 11.22 0L505.67 313a8 8 0 0 0 0-11.32zM181.32 448.13l37.2-24.13a8.05 8.05 0 0 0 2.53-11l-8.41-13.58a7.9 7.9 0 0 0-10.94-2.55L158.35 425l-43.93-44.28A63.79 63.79 0 0 0 158.75 320c0-35.3-28.49-64-63.5-64s-63.5 28.7-63.5 64a63.91 63.91 0 0 0 30.57 54.45l-30.1 18.25C1.28 411.45-9.2 451.31 8.81 481.55 20.57 501.19 41.49 512 63.26 512a66.67 66.67 0 0 0 34.63-9.75l56.11-36.4 43.47 43.81a7.89 7.89 0 0 0 11.22 0l11.22-11.31a8 8 0 0 0 0-11.32zM95.25 288a32 32 0 1 1-31.75 32 31.87 31.87 0 0 1 31.75-32zM81.31 475c-15.91 9.66-36.22 5.22-45.27-9.9s-3.38-35.27 12.55-44.94l37.48-22.73 45 45.31z\"]\n};\nvar faIdBadge = {\n prefix: 'fal',\n iconName: 'id-badge',\n icon: [384, 512, [], \"f2c1\", \"M320 0H64C28.7 0 0 28.7 0 64v384c0 35.3 28.7 64 64 64h256c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64zm32 448c0 17.6-14.4 32-32 32H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h256c17.6 0 32 14.4 32 32v384zM144 96h96c8.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 208c44.2 0 80-35.8 80-80s-35.8-80-80-80-80 35.8-80 80 35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm46.8 144c-19.5 0-24.4 7-46.8 7s-27.3-7-46.8-7c-21.2 0-41.8 9.4-53.8 27.4C84.2 358.1 80 371 80 384.9V424c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-39.1c0-14 9-32.9 33.2-32.9 12.4 0 20.8 7 46.8 7 25.9 0 34.3-7 46.8-7 24.3 0 33.2 18.9 33.2 32.9V424c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-39.1c0-13.9-4.2-26.8-11.4-37.5-12.1-18-32.7-27.4-53.8-27.4z\"]\n};\nvar faIdCard = {\n prefix: 'fal',\n iconName: 'id-card',\n icon: [576, 512, [], \"f2c2\", \"M360 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 128h112c4.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-32c44.2 0 80-35.8 80-80s-35.8-80-80-80-80 35.8-80 80 35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zM512 32H64C28.7 32 0 60.7 0 96v320c0 35.3 28.7 64 64 64h448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64zM272 448H112v-15.1c0-7 2.1-13.8 6-19.6 5.6-8.3 15.8-13.2 27.3-13.2 12.4 0 20.8 7 46.8 7 25.9 0 34.3-7 46.8-7 11.5 0 21.7 5 27.3 13.2 3.9 5.8 6 12.6 6 19.6V448h-.2zm272-32c0 17.6-14.4 32-32 32H304v-15.1c0-13.9-4.2-26.8-11.4-37.5-12.1-17.9-32.7-27.4-53.8-27.4-19.5 0-24.4 7-46.8 7s-27.3-7-46.8-7c-21.2 0-41.8 9.4-53.8 27.4C84.2 406.1 80 419 80 432.9V448H64c-17.6 0-32-14.4-32-32V160h512v256zm0-288H32V96c0-17.6 14.4-32 32-32h448c17.6 0 32 14.4 32 32v32z\"]\n};\nvar faIdCardAlt = {\n prefix: 'fal',\n iconName: 'id-card-alt',\n icon: [576, 512, [], \"f47f\", \"M288 208c-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 48zM512 64H352V32c0-17.7-14.3-32-32-32h-64c-17.7 0-32 14.3-32 32v32H64C28.7 64 0 92.7 0 128v320c0 35.3 28.7 64 64 64h448c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64zM256 32h64v96h-64V32zm128 448H192v-21.9c0-9 2.6-17.6 7.6-25 7.2-10.7 20.3-17.2 35-17.2 15.9 0 23.5 8 53.4 8s37.6-8 53.4-8c14.7 0 27.7 6.4 35 17.2 5 7.4 7.6 16 7.6 25V480zm160-32c0 17.6-14.4 32-32 32h-96v-21.9c0-15.9-4.8-30.6-13-42.8-13.8-20.5-37.3-31.3-61.5-31.3-22.2 0-27.8 8-53.4 8-25.6 0-31.2-8-53.4-8-24.2 0-47.7 10.8-61.5 31.3-8.2 12.2-13 27-13 42.8V480H64c-17.6 0-32-14.4-32-32V128c0-17.6 14.4-32 32-32h160v64h128V96h160c17.6 0 32 14.4 32 32v320z\"]\n};\nvar faIgloo = {\n prefix: 'fal',\n iconName: 'igloo',\n icon: [576, 512, [], \"f7ae\", \"M288 32C128.9 32 0 160.9 0 320v128c0 17.7 14.3 32 32 32h512c17.7 0 32-14.3 32-32V320c0-159.1-128.9-288-288-288zm199.5 128H352V72.4c54.2 14 101.5 45.2 135.5 87.6zM448 320h-49.8c-22.2-38.1-63-64-110.2-64s-88 25.9-110.2 64H128V192h320v128zM288 64c10.9 0 21.5.9 32 2.2V160H88.5c46.9-58.4 118.9-96 199.5-96zM66.6 192H96v128H32c0-46.7 12.7-90.3 34.6-128zM32 448v-96h132.5c-2.7 10.3-4.5 20.9-4.5 32v64H32zm160 0v-64c0-53 43-96 96-96s96 43 96 96v64H192zm352 0H416v-64c0-11.1-1.9-21.7-4.5-32H544v96zm-64-128V192h29.4c21.9 37.7 34.6 81.3 34.6 128h-64z\"]\n};\nvar faImage = {\n prefix: 'fal',\n iconName: 'image',\n icon: [512, 512, [], \"f03e\", \"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-48zm16 336c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V112c0-8.822 7.178-16 16-16h416c8.822 0 16 7.178 16 16v288zM112 232c30.928 0 56-25.072 56-56s-25.072-56-56-56-56 25.072-56 56 25.072 56 56 56zm0-80c13.234 0 24 10.766 24 24s-10.766 24-24 24-24-10.766-24-24 10.766-24 24-24zm207.029 23.029L224 270.059l-31.029-31.029c-9.373-9.373-24.569-9.373-33.941 0l-88 88A23.998 23.998 0 0 0 64 344v28c0 6.627 5.373 12 12 12h360c6.627 0 12-5.373 12-12v-92c0-6.365-2.529-12.47-7.029-16.971l-88-88c-9.373-9.372-24.569-9.372-33.942 0zM416 352H96v-4.686l80-80 48 48 112-112 80 80V352z\"]\n};\nvar faImagePolaroid = {\n prefix: 'fal',\n iconName: 'image-polaroid',\n icon: [448, 512, [], \"f8c4\", \"M112 192a48 48 0 1 0-48-48 48 48 0 0 0 48 48zm0-64a16 16 0 1 1-16 16 16 16 0 0 1 16-16zm304-96H32A32 32 0 0 0 0 64v384a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32zm0 416H32v-80h384zM85.2 336l52-69.33 40 53.33-12 16zm120 0l76-101.33 76 101.33zm210.8 0h-18.8L294 198.41c-6.06-8.07-19.56-8.07-25.62 0l-71.19 94.91L150 230.41c-6.06-8.07-19.56-8.07-25.62 0L45.18 336H32V64h384z\"]\n};\nvar faImages = {\n prefix: 'fal',\n iconName: 'images',\n icon: [576, 512, [], \"f302\", \"M528 32H112c-26.51 0-48 21.49-48 48v16H48c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48v-16h16c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zm-48 400c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V144c0-8.822 7.178-16 16-16h16v240c0 26.51 21.49 48 48 48h368v16zm64-64c0 8.822-7.178 16-16 16H112c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h416c8.822 0 16 7.178 16 16v288zM176 200c30.928 0 56-25.072 56-56s-25.072-56-56-56-56 25.072-56 56 25.072 56 56 56zm0-80c13.234 0 24 10.766 24 24s-10.766 24-24 24-24-10.766-24-24 10.766-24 24-24zm240.971 23.029c-9.373-9.373-24.568-9.373-33.941 0L288 238.059l-31.029-31.03c-9.373-9.373-24.569-9.373-33.941 0l-88 88A24.002 24.002 0 0 0 128 312v28c0 6.627 5.373 12 12 12h360c6.627 0 12-5.373 12-12v-92c0-6.365-2.529-12.47-7.029-16.971l-88-88zM480 320H160v-4.686l80-80 48 48 112-112 80 80V320z\"]\n};\nvar faInbox = {\n prefix: 'fal',\n iconName: 'inbox',\n icon: [576, 512, [], \"f01c\", \"M566.819 227.377L462.377 83.768A48.001 48.001 0 0 0 423.557 64H152.443a47.998 47.998 0 0 0-38.819 19.768L9.181 227.377A47.996 47.996 0 0 0 0 255.609V400c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V255.609a47.996 47.996 0 0 0-9.181-28.232zM139.503 102.589A16.048 16.048 0 0 1 152.443 96h271.115c5.102 0 9.939 2.463 12.94 6.589L524.796 224H388.223l-32 64H219.777l-32-64H51.204l88.299-121.411zM544 272v128c0 8.823-7.178 16-16 16H48c-8.822 0-16-7.177-16-16V272c0-8.837 7.163-16 16-16h120l32 64h176l32-64h120c8.837 0 16 7.163 16 16z\"]\n};\nvar faInboxIn = {\n prefix: 'fal',\n iconName: 'inbox-in',\n icon: [576, 512, [], \"f310\", \"M560.8 329.8l-94.6-88.7c-2.4-2.3-6.2-2.1-8.5.3L444.1 256c-2.3 2.4-2.1 6.2.3 8.5l59.3 55.6H388.2l-32 64H219.8l-32-64H72.4l59.3-55.6c2.4-2.3 2.5-6.1.3-8.5l-13.7-14.6c-2.3-2.4-6.1-2.5-8.5-.3l-94.6 88.7c-9.7 9-15.2 21.7-15.2 35V464c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48v-99.2c0-13.3-5.5-26-15.2-35zM544 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16v-96c0-8.8 7.2-16 16-16h120l32 64h176l32-64h120c8.8 0 16 7.2 16 16v96zM416 128h-64V24c0-13.2-10.8-24-24-24h-80c-13.2 0-24 10.8-24 24v104h-64c-28.4 0-42.8 34.5-22.6 54.6l128 128c12.5 12.5 32.8 12.5 45.3 0l128-128c20-20.1 5.8-54.6-22.7-54.6zM288 288L160 160h96V32h64v128h96L288 288z\"]\n};\nvar faInboxOut = {\n prefix: 'fal',\n iconName: 'inbox-out',\n icon: [576, 512, [], \"f311\", \"M560.8 329.8l-94.6-88.7c-2.4-2.3-6.2-2.1-8.5.3L444.1 256c-2.3 2.4-2.1 6.2.3 8.5l59.3 55.6H388.2l-32 64H219.8l-32-64H72.4l59.3-55.6c2.4-2.3 2.5-6.1.3-8.5l-13.7-14.6c-2.3-2.4-6.1-2.5-8.5-.3l-94.6 88.7C5.5 338.9 0 351.5 0 364.8V464c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48v-99.2c0-13.3-5.5-25.9-15.2-35zM544 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16v-96c0-8.8 7.2-16 16-16h120l32 64h176l32-64h120c8.8 0 16 7.2 16 16v96zM160 192h64v104c0 13.2 10.8 24 24 24h80c13.2 0 24-10.8 24-24V192h64c28.4 0 42.8-34.5 22.6-54.6l-128-128c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-20 20.1-5.8 54.6 22.7 54.6zM288 32l128 128h-96v128h-64V160h-96L288 32z\"]\n};\nvar faIndent = {\n prefix: 'fal',\n iconName: 'indent',\n icon: [448, 512, [], \"f03c\", \"M27.31 148.7a15.63 15.63 0 0 0-11.17-4.7A16 16 0 0 0 0 160v192a16 16 0 0 0 16.13 16 15.58 15.58 0 0 0 11.18-4.7l96-96a16 16 0 0 0 0-22.62zM32 313.36V198.64L89.37 256zM440 48H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8zm0 384H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-128H200a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h240a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-128H200a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h240a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faIndustry = {\n prefix: 'fal',\n iconName: 'industry',\n icon: [512, 512, [], \"f275\", \"M477.267 162.534L320 241.167V184c0-18.007-18.948-29.359-34.733-21.466L128 241.167V56c0-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-24V184c0-18.007-18.948-29.359-34.733-21.466zM107.578 287.155L288 196.944V280c0 5.949 6.268 9.81 11.578 7.155L480 196.944V448H32V64h64v216c0 5.947 6.269 9.811 11.578 7.155z\"]\n};\nvar faIndustryAlt = {\n prefix: 'fal',\n iconName: 'industry-alt',\n icon: [512, 512, [], \"f3b3\", \"M404 384h-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 12zm-116-12v-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-128 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-12zm352-188v272c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V56c0-13.255 10.745-24 24-24h80c13.255 0 24 10.745 24 24v185.167l157.267-78.633C301.052 154.641 320 165.993 320 184v57.167l157.267-78.633C493.052 154.641 512 165.993 512 184zM96 280V64H32v384h448V196.944l-180.422 90.211C294.268 289.81 288 285.949 288 280v-83.056l-180.422 90.211C102.269 289.811 96 285.947 96 280z\"]\n};\nvar faInfinity = {\n prefix: 'fal',\n iconName: 'infinity',\n icon: [640, 512, [], \"f534\", \"M488.88 96C406.31 96 346.21 178.45 320 222.45 293.79 178.45 233.69 96 151.12 96 67.78 96 0 167.78 0 256s67.78 160 151.12 160c82.56 0 142.67-82.45 168.88-126.46C346.21 333.55 406.31 416 488.88 416 572.22 416 640 344.22 640 256S572.22 96 488.88 96zM151.12 384C85.44 384 32 326.58 32 256s53.44-128 119.12-128c78.03 0 136.47 100.61 150.94 128-14.47 27.39-72.9 128-150.94 128zm337.76 0c-78.03 0-136.47-100.61-150.94-128 14.47-27.39 72.91-128 150.94-128C554.56 128 608 185.42 608 256s-53.44 128-119.12 128z\"]\n};\nvar faInfo = {\n prefix: 'fal',\n iconName: 'info',\n icon: [256, 512, [], \"f129\", \"M208 368.667V208c0-15.495-7.38-29.299-18.811-38.081C210.442 152.296 224 125.701 224 96c0-52.935-43.065-96-96-96S32 43.065 32 96c0 24.564 9.274 47.004 24.504 64H56c-26.467 0-48 21.533-48 48v48c0 23.742 17.327 43.514 40 47.333v65.333C25.327 372.486 8 392.258 8 416v48c0 26.467 21.533 48 48 48h144c26.467 0 48-21.533 48-48v-48c0-23.742-17.327-43.514-40-47.333zM128 32c35.346 0 64 28.654 64 64s-28.654 64-64 64-64-28.654-64-64 28.654-64 64-64zm88 432c0 8.837-7.163 16-16 16H56c-8.837 0-16-7.163-16-16v-48c0-8.837 7.163-16 16-16h24V272H56c-8.837 0-16-7.163-16-16v-48c0-8.837 7.163-16 16-16h104c8.837 0 16 7.163 16 16v192h24c8.837 0 16 7.163 16 16v48z\"]\n};\nvar faInfoCircle = {\n prefix: 'fal',\n iconName: 'info-circle',\n icon: [512, 512, [], \"f05a\", \"M256 40c118.621 0 216 96.075 216 216 0 119.291-96.61 216-216 216-119.244 0-216-96.562-216-216 0-119.203 96.602-216 216-216m0-32C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm-36 344h12V232h-12c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h48c6.627 0 12 5.373 12 12v140h12c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12h-72c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12zm36-240c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32z\"]\n};\nvar faInfoSquare = {\n prefix: 'fal',\n iconName: 'info-square',\n icon: [448, 512, [], \"f30f\", \"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-48zm16 400c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h352c8.822 0 16 7.178 16 16v352zm-228-80h12V232h-12c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h48c6.627 0 12 5.373 12 12v140h12c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12h-72c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12zm36-240c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32z\"]\n};\nvar faInhaler = {\n prefix: 'fal',\n iconName: 'inhaler',\n icon: [640, 512, [], \"f5f9\", \"M24 264c-13.25 0-24 10.75-24 24s10.75 24 24 24 24-10.75 24-24-10.75-24-24-24zm0 96c-13.25 0-24 10.75-24 24s10.75 24 24 24 24-10.75 24-24-10.75-24-24-24zm0 96c-13.25 0-24 10.75-24 24s10.75 24 24 24 24-10.75 24-24-10.75-24-24-24zM616.27 38.02L478.47 1.1c-2.77-.74-5.56-1.1-8.3-1.1-14.13 0-27.06 9.43-30.89 23.72l-24.97 93.21-5.11-5.11c-3.21-3.21-7.26-4.7-11.25-4.7-6.87 0-13.56 4.39-15.54 11.95L346.49 256H224c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32h270.62c29.09 0 54.53-19.62 61.91-47.76l37.96-144.71c2.88-11-.28-22.71-8.32-30.75l-3.11-3.11L638.9 77.21c4.58-17.07-5.55-34.61-22.63-39.19zm-90.7 418.1c-3.69 14.06-16.42 23.88-30.95 23.88H224V288h147.18l6.26-23.88 28.84-109.96 157.25 157.25-37.96 144.71zm31.35-196.58L440.45 143.07l29.77-111.06L608 68.93l-51.08 190.61zM120 312c-13.25 0-24 10.75-24 24s10.75 24 24 24 24-10.75 24-24-10.75-24-24-24zm0 96c-13.25 0-24 10.75-24 24s10.75 24 24 24 24-10.75 24-24-10.75-24-24-24z\"]\n};\nvar faIntegral = {\n prefix: 'fal',\n iconName: 'integral',\n icon: [366, 512, [], \"f667\", \"M88.46 479.84c-19.3-1.3-36.8-11.91-48.88-27.02L1.75 405.54A8.007 8.007 0 0 1 3 394.29l12.5-10a7.983 7.983 0 0 1 11.23 1.25l39.72 49.65c7.69 9.64 19.93 14.41 32.42 12.33 14.06-2.34 24.72-14.1 27.93-27.99l76.85-333.31c6.43-27.9 28.9-50.51 57.32-53.77 23.05-2.64 45.12 6.59 59.38 24.38l43.9 54.92a7.995 7.995 0 0 1-1.25 11.24l-12.5 10c-3.45 2.76-8.48 2.2-11.23-1.25l-43.9-54.92c-7.7-9.62-19.83-14.39-32.29-12.37-14.09 2.29-24.83 14.02-28.04 27.95l-77.55 336.31c-7.31 31.69-36.1 53.35-69.03 51.13z\"]\n};\nvar faIntersection = {\n prefix: 'fal',\n iconName: 'intersection',\n icon: [320, 512, [], \"f668\", \"M149.35 64.35C64.31 69.85 0 144.26 0 229.48V440c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V228.52c0-68.11 51.28-127.67 119.24-132.22C225.76 91.3 288 150.52 288 224v216c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V224c0-91.89-77.46-165.69-170.65-159.65z\"]\n};\nvar faInventory = {\n prefix: 'fal',\n iconName: 'inventory',\n icon: [640, 512, [], \"f480\", \"M632 0h-16c-4.4 0-8 4.1-8 9.1V192h-64V48c0-8.8-7.2-16-16-16H368c-8.8 0-16 7.2-16 16v144H32V9.1c0-5-3.6-9.1-8-9.1H8C3.6 0 0 4.1 0 9.1V512h32v-32h576v32h32V9.1c0-5-3.6-9.1-8-9.1zM384 64h128v128H384V64zM256 448H128V320h128v128zm32 0V320h128v128H288zm320 0H448V304c0-8.8-7.2-16-16-16H112c-8.8 0-16 7.2-16 16v144H32V224h576v224z\"]\n};\nvar faIslandTropical = {\n prefix: 'fal',\n iconName: 'island-tropical',\n icon: [448, 512, [], \"f811\", \"M299.39 32c-15.4 0-30 2.55-43.94 6.23C228.22 14.67 190.46 0 148.62 0 73.38 0 11.08 47.24.24 108.86A16.51 16.51 0 0 0 16.8 128h73.45C57.94 177.87 55.12 238.52 85 281.15c7.13 10.17 19.58 7.49 25.24 1.84l83.13-83.14c-8.85 57-25.63 110.52-41.67 152.15h-20.51C58.84 352 0 410.86 0 483.2A28.85 28.85 0 0 0 28.81 512h326.38A28.85 28.85 0 0 0 384 483.2c0-62.2-43.62-114.2-101.81-127.61 9.7-74.31 4.43-147.08-1.9-195.59H431.2a16.51 16.51 0 0 0 16.56-19.14C436.92 79.25 374.62 32 299.39 32zm52.55 448H32.06a99.3 99.3 0 0 1 99.13-96h121.62a99.3 99.3 0 0 1 99.13 96zM250.12 352h-64.27c17.86-48.47 30.69-116.82 37.11-181.72L233.23 160H248c6.26 46.64 11.77 119 2.12 192zM220 128L102.22 245.76c-18.69-49 7.89-121.36 73-150.68a8 8 0 0 0 4.28-10.22l-6-14.91a8 8 0 0 0-10.58-4.46A169.86 169.86 0 0 0 117.24 96h-79.9c16.44-37.53 60.83-64 111.28-64 32.72 0 63.21 10.8 85.87 30.42l12.76 11c10.81-2.8 31.44-9.42 52.14-9.42 50.45 0 94.83 26.48 111.27 64z\"]\n};\nvar faItalic = {\n prefix: 'fal',\n iconName: 'italic',\n icon: [320, 512, [], \"f033\", \"M320 40v16a8 8 0 0 1-8 8h-87.5l-96 384H216a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8H8a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h87.5l96-384H104a8 8 0 0 1-8-8V40a8 8 0 0 1 8-8h208a8 8 0 0 1 8 8z\"]\n};\nvar faJackOLantern = {\n prefix: 'fal',\n iconName: 'jack-o-lantern',\n icon: [576, 512, [], \"f30e\", \"M494.75 110.52C460.24 77.96 409.33 71.33 368 90.9V51.8c0-12.2-6.78-23.17-17.69-28.62L310.69 3.36c-7.97-3.97-17.38-4.45-25.66-1.27-8.31 3.16-15 9.72-18.34 18.03l-28.7 71.75c-4.78 2.44-9.4 5.19-13.74 8.38-43.41-30.29-103.78-26.76-143 10.26C28.84 159.92 0 225.78 0 295.95c0 70.16 28.84 136 81.25 185.4 39.19 36.98 99.53 40.6 143 10.28 36.56 26.9 90.94 26.9 127.5 0 19.5 13.59 42.38 20.36 65.22 20.36 28.12 0 56.16-10.23 77.78-30.63C547.16 431.96 576 366.11 576 295.94s-28.84-136.02-81.25-185.42zM296.41 31.99L336 51.8v39.11c-18.21-8.78-38.95-11.99-59.17-10.01l19.58-48.91zm176.4 426.09c-30.16 28.42-79.78 28.87-110.62 1.06l-11-9.9-10.75 10.2c-14.5 13.76-31.66 20.46-52.44 20.46s-37.94-6.7-52.44-20.46l-10.75-10.2-11 9.9c-30.84 27.81-80.47 27.35-110.62-1.06C57.28 414.79 32 357.21 32 295.94s25.28-118.85 71.19-162.16c30.12-28.4 79.75-28.9 110.62-1.05l11 9.9 10.75-10.2c14.5-13.76 31.66-20.46 52.44-20.46s37.94 6.7 52.44 20.46l10.75 10.2 11-9.9c30.81-27.82 80.44-27.4 110.62 1.06C518.72 177.09 544 234.67 544 295.94s-25.28 118.85-71.19 162.14zm1.66-179.15c-10.62-8.39-24.81-9.28-36.28-2.27-53.41 32.73-116.03 46.65-180.53 39.9L240 314.7v29.23h-32v-36.79l-10.97-3.64c-22.56-7.48-41.91-16.26-59.16-26.81-11.47-7.05-25.75-6.08-36.28 2.31-10.81 8.62-14.91 22.68-10.47 35.84 5.5 16.18 12.38 30.18 21.09 42.9 33.84 48.52 94.66 74.17 175.78 74.17 11.69 0 22.78-.7 33.56-1.75l14.44-1.41v-36.84h32v31.15l21.97-8.81c31.72-12.72 56.69-31.93 74.31-57.18 8.47-12.31 15.22-26.14 20.69-42.34 4.45-13.14.32-27.2-10.49-35.8zm-19.81 25.6c-4.5 13.33-9.97 24.59-16.69 34.32-10.56 15.14-24.69 27.62-42.12 37.31-5.53-9.69-15.94-16.23-27.84-16.23h-32c-17.66 0-32 14.36-32 31.99v7.53c-5.22.3-10.53.47-16 .47-70.22 0-121.94-20.92-149.47-60.39-6.97-10.15-12.56-21.59-17.34-35.56 16.44 10.08 34.47 18.65 54.81 26.09v13.87c0 17.64 14.34 31.99 32 31.99h32c15.56 0 28.56-11.17 31.44-25.92 63.41 4.78 128.84-12.58 183.5-46.07l-.29.6zm-205.51-48.58c2.85 0 4.86-1.11 6-3.33s1.14-4.44 0-6.66L214 179.29c-1.71-2.23-3.86-3.33-6.43-3.33s-4.43 1.11-5.57 3.33l-41.15 66.65c-1.14 2.23-1.14 4.44 0 6.66s3.15 3.33 6 3.33h82.3zm160 0c2.85 0 4.86-1.11 6-3.33s1.14-4.44 0-6.66L374 179.29c-1.71-2.23-3.86-3.33-6.43-3.33s-4.43 1.11-5.57 3.33l-41.15 66.65c-1.14 2.23-1.14 4.44 0 6.66s3.15 3.33 6 3.33h82.3z\"]\n};\nvar faJedi = {\n prefix: 'fal',\n iconName: 'jedi',\n icon: [576, 512, [], \"f669\", \"M560,241.23438C560,390.53125,437.97065,512,288.00423,512,141.569,512,22.78961,394.76562,16.28971,253.95312c-4.24993-92.54687,38.46815-179.84374,114.31072-233.5a23.72023,23.72023,0,0,1,13.74979-4.40624,24.075,24.075,0,0,1,22.31215,32.9375,126.06511,126.06511,0,0,0-8.96861,46.65624c0,41.10938,19.1872,78.90626,52.62418,103.67188a24.08535,24.08535,0,0,1,1.81248,37.375,111.64354,111.64354,0,0,0-37.21818,83.29688c0,56.5625,42.3431,102.42187,97.09224,110.21874V358.625l-20.68717,20.6875a15.99817,15.99817,0,1,1-22.62465-22.625L249.37984,336H224.00523a16,16,0,0,1,0-32h25.37461l-20.68718-20.6875a15.99817,15.99817,0,1,1,22.62465-22.625l20.68717,20.6875V16a15.99975,15.99975,0,1,1,31.9995,0V281.375l20.68718-20.6875a15.99817,15.99817,0,0,1,22.62465,22.625L326.62863,304h25.37461a16,16,0,0,1,0,32H326.62863l20.68718,20.70312a15.99265,15.99265,0,0,1-22.62465,22.60938L303.97274,358.625v71.67188C387.47144,418.98438,400.94,342.15625,401.00248,320A111.45108,111.45108,0,0,0,363.878,236.70312a24.04818,24.04818,0,0,1,1.81247-37.39062c33.40573-24.76562,52.59294-62.54688,52.59294-103.65625A125.851,125.851,0,0,0,409.2836,48.9375,24.075,24.075,0,0,1,431.59575,16a23.66572,23.66572,0,0,1,13.71854,4.40625A271.02474,271.02474,0,0,1,560,241.23438Zm-33.74947,27.5625L490.50108,300.0625a16.00686,16.00686,0,0,1-21.06217-24.10938l57.6866-50.46874a237.50982,237.50982,0,0,0-5.18742-36.82813L491.28232,219.3125a15.99265,15.99265,0,0,1-22.62465-22.60938l42.40559-42.40624a239.45023,239.45023,0,0,0-64.374-92.07813,157.73669,157.73669,0,0,1,3.56245,33.4375,159.43294,159.43294,0,0,1-58.28034,123.6875A142.8669,142.8669,0,0,1,433.002,320.01562c-.1875,87.89063-72.84262,143.82813-145.029,143.82813-79.99875,0-145.06024-64.8125-145.06024-144.46875a143.69178,143.69178,0,0,1,41.09311-100.03125,159.36344,159.36344,0,0,1-58.31159-123.6875V95.5625a189.99126,189.99126,0,0,1,3.59369-33.375,237.7374,237.7374,0,0,0-64.53024,91.96875L107.2883,196.6875a15.99817,15.99817,0,0,1-22.62465,22.625l-30.49953-30.5a235.49408,235.49408,0,0,0-5.62491,36.39062l57.96785,50.75a16.001,16.001,0,0,1-21.06217,24.09376L49.82044,268.84375C60.789,362.34375,142.78774,480,288.00423,480,410.93982,480,512.46949,387.48438,526.25053,268.79688Z\"]\n};\nvar faJoint = {\n prefix: 'fal',\n iconName: 'joint',\n icon: [640, 512, [], \"f595\", \"M556.44 93.48C548.9 88.45 544 80.33 544 71.26V8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v62.31c0 20.16 10.28 38.78 27.02 50.01 43.2 28.98 68.98 77.3 68.98 129.36V280c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-30.31c0-62.93-31.24-121.31-83.56-156.21zm-52.87 80.13C528.9 190.71 544 219.1 544 249.69V280c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-30.31c0-41.96-21.08-80.88-56.31-103.78C494.07 129.25 480 99.53 480 68.97V8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v67.03c0 40.32 22.15 76.02 55.57 98.58zM616 352H278.94C180.3 352 83.65 379.72 0 432c83.65 52.28 180.3 80 278.94 80H616c13.25 0 24-10.75 24-24V376c0-13.26-10.75-24-24-24zM278.94 480c-73.85 0-146.33-16.47-212.51-48 60.11-28.64 125.5-44.14 192.32-46.88l81.3 94.88h-61.11zm103.27 0l-82.27-96h117.85l82.27 96H382.21zM608 480h-65.79l-82.27-96H608v96z\"]\n};\nvar faJournalWhills = {\n prefix: 'fal',\n iconName: 'journal-whills',\n icon: [448, 512, [], \"f66a\", \"M433.09375,414.20312C429.5,430.29688,428.68749,459.79688,432.68749,480H436a12.04337,12.04337,0,0,1,12,12v8a12.04337,12.04337,0,0,1-12,12H64A64.00317,64.00317,0,0,1,0,448V80A79.964,79.964,0,0,1,80,0H424a23.95631,23.95631,0,0,1,24,24V392A24.14194,24.14194,0,0,1,433.09375,414.20312ZM416,32H80A48.01238,48.01238,0,0,0,32,80V392.875A63.29355,63.29355,0,0,1,64,384H416ZM404.28125,416H64a32,32,0,0,0,0,64H404.28125A229.78513,229.78513,0,0,1,404.28125,416ZM100,206.95312c0-50.1875,27.5625-96.8125,71.93749-121.6875a11.95085,11.95085,0,0,1,14.5,2.14063,13.58423,13.58423,0,0,1,3.375,8.29687A13.90947,13.90947,0,0,1,188,101.98438,60.027,60.027,0,0,0,201.46875,180.875a11.82582,11.82582,0,0,1,4.40625,8.5625,11.95519,11.95519,0,0,1-3.31251,9.03125A51.74024,51.74024,0,0,0,228,284.84375V259.3125l-6.34375,6.34375a7.99915,7.99915,0,0,1-11.3125-11.3125L220.68749,244H208a8,8,0,0,1,0-16h12.68749l-10.34374-10.34375a7.99915,7.99915,0,0,1,11.3125-11.3125L228,212.6875V84a12,12,0,0,1,24,0V212.6875l6.34375-6.34375a7.99915,7.99915,0,0,1,11.3125,11.3125L259.31249,228H272a8,8,0,0,1,0,16H259.31249L269.625,254.32812a7.99915,7.99915,0,1,1-11.31251,11.3125l-6.34374-6.34374v25.53124a51.76724,51.76724,0,0,0,25.46874-86.375,11.92036,11.92036,0,0,1-3.31249-9.01562,13.5281,13.5281,0,0,1,4.375-8.5625,60.027,60.027,0,0,0,13.46875-78.89062A11.99016,11.99016,0,0,1,308.06249,85.25C352.43749,110.14062,380,156.76562,380,206.95312c0,77.20313-62.81251,140-140,140S100,284.15625,100,206.95312Zm50,46.3125a8.03978,8.03978,0,0,1-11.3125.75l-6.84375-6c16.65625,43.6875,58.65625,74.9375,108.125,74.9375s91.46874-31.25,108.125-74.9375l-6.84375,6a8.005,8.005,0,1,1-10.56251-12.03124l23.84376-20.875c.59375-4.6875,1.4375-9.3125,1.4375-14.15626a115.1298,115.1298,0,0,0-2.0625-21.5625L341.625,197.65625a7.99915,7.99915,0,0,1-11.31251-11.3125L348.75,167.90625a115.65937,115.65937,0,0,0-23.78125-39.20313c.125,1.70313.1875,3.39063.1875,5.09376a84.38526,84.38526,0,0,1-22.71876,57.42187,76.01587,76.01587,0,1,1-124.90624,0,84.21054,84.21054,0,0,1-22.71875-57.42187c0-1.70313.09375-3.39063.15625-5.09376a116.81117,116.81117,0,0,0-23.78125,39.20313l18.46875,18.4375a7.99915,7.99915,0,0,1-11.3125,11.3125L126.0625,185.39062A112.56957,112.56957,0,0,0,124,206.95312c0,4.84376.84375,9.46876,1.4375,14.15626l23.84375,20.875A7.97419,7.97419,0,0,1,150,253.26562Z\"]\n};\nvar faJoystick = {\n prefix: 'fal',\n iconName: 'joystick',\n icon: [448, 512, [], \"f8c5\", \"M200 64a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm216 288H240V222.39c54.21-7.83 96-54 96-110.39a112 112 0 0 0-224 0c0 56.38 41.79 102.56 96 110.39V352h-80v-16a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v16H32a32 32 0 0 0-32 32v96a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32v-96a32 32 0 0 0-32-32zM144 112a80 80 0 1 1 80 80 80.09 80.09 0 0 1-80-80zm272 368H32v-96h384z\"]\n};\nvar faJug = {\n prefix: 'fal',\n iconName: 'jug',\n icon: [448, 512, [], \"f8c6\", \"M304 272H144a48.05 48.05 0 0 0-48 48v64a48.05 48.05 0 0 0 48 48h160a48 48 0 0 0 48-48v-64a48 48 0 0 0-48-48zm16 112a16 16 0 0 1-16 16H144a16 16 0 0 1-16-16v-64a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16zm128-248a71.75 71.75 0 0 0-137.71-28.48A32 32 0 0 1 304 88.78V32h8a8 8 0 0 0 8-8V8a8 8 0 0 0-8-8H136a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h8v56.78a32 32 0 0 1-7 20l-76.95 96.16a128 128 0 0 0-28 80V448a64 64 0 0 0 64 64H352a64 64 0 0 0 64-64V284.9a128 128 0 0 0-26.88-78.22A71.93 71.93 0 0 0 448 136zm-64 312a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V284.9a96.39 96.39 0 0 1 21-60l77-96.14a64.22 64.22 0 0 0 14-40V32h96v56.78a64.23 64.23 0 0 0 14 40l76.93 96.18a96.34 96.34 0 0 1 21 60zm-8-272a39.41 39.41 0 0 1-13.41-2.71l-25.49-31.87c-.27-1.85-1.1-3.5-1.1-5.42a40 40 0 1 1 40 40z\"]\n};\nvar faKaaba = {\n prefix: 'fal',\n iconName: 'kaaba',\n icon: [576, 512, [], \"f66b\", \"M261.89 166.54l-96 26.18a7.997 7.997 0 0 0-5.89 7.72v16.58c0 5.28 5.02 9.11 10.11 7.72l96-26.18a7.997 7.997 0 0 0 5.89-7.72v-16.57c0-5.29-5.02-9.12-10.11-7.73zm48 32.01l96 26.18c5.09 1.39 10.11-2.44 10.11-7.72v-16.58c0-3.61-2.41-6.77-5.89-7.72l-96-26.18c-5.09-1.39-10.11 2.44-10.11 7.72v16.57a8 8 0 0 0 5.89 7.73zM554.12 83.51L318.36 4.93C308.51 1.64 298.25 0 288 0s-20.51 1.64-30.36 4.93L21.88 83.51A32.006 32.006 0 0 0 0 113.87v310.8c0 15 10.42 27.98 25.06 31.24l242.12 53.8c6.86 1.53 13.84 2.29 20.83 2.29s13.97-.76 20.83-2.29l242.12-53.8c14.64-3.25 25.06-16.24 25.06-31.24v-310.8c-.02-13.77-8.83-26-21.9-30.36zM544 229.3l-85.89-23.49c-5.09-1.39-10.11 2.44-10.11 7.72v16.58c0 3.61 2.41 6.77 5.89 7.72L544 262.08v162.59l-242.12 53.8a63.984 63.984 0 0 1-27.77 0L32 424.67V262.3l90.11-24.48a7.997 7.997 0 0 0 5.89-7.72v-16.58c0-5.28-5.02-9.11-10.11-7.72L32 229.14V186.7l242.25-72.68c9-2.69 18.47-2.7 27.53.02L544 186.69v42.61zm0-76.02L311 83.39c-15.09-4.56-31-4.55-45.97-.02L32 153.29v-39.41l235.76-78.59c7.57-2.53 22.71-5.92 40.48 0L544 113.87v39.41z\"]\n};\nvar faKazoo = {\n prefix: 'fal',\n iconName: 'kazoo',\n icon: [640, 512, [], \"f8c7\", \"M467.91 216.4l-11.31-11.31a8 8 0 0 0-11.32 0L417 233.37l-28.29-28.28a8 8 0 0 0-11.31 0l-11.31 11.31a8 8 0 0 0 0 11.31L394.37 256l-28.28 28.28a8 8 0 0 0 0 11.32l11.31 11.31a8 8 0 0 0 11.31 0L417 278.63l28.28 28.28a8 8 0 0 0 11.32 0l11.31-11.31a8 8 0 0 0 0-11.32L439.62 256l28.29-28.29a8 8 0 0 0 0-11.31zM609 128H481.68c-19.53-9.89-41.29-16-64.68-16s-45.15 6.11-64.68 16H242.93a128.18 128.18 0 0 0-35.16 4.92L24.21 185.37A32 32 0 0 0 1 216.14v79.72a32 32 0 0 0 23.21 30.77l183.56 52.44a127.81 127.81 0 0 0 35.16 4.93h109.39c19.53 9.89 41.29 16 64.68 16s45.15-6.11 64.68-16H609a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32zM242.93 352a95.64 95.64 0 0 1-26.37-3.7L33 295.86v-79.72l183.56-52.45a95.9 95.9 0 0 1 26.37-3.69h66.83a143.73 143.73 0 0 0 0 192zM417 368a112 112 0 1 1 112-112 112.12 112.12 0 0 1-112 112zm192-16h-84.76a143.73 143.73 0 0 0 0-192H609z\"]\n};\nvar faKerning = {\n prefix: 'fal',\n iconName: 'kerning',\n icon: [640, 512, [], \"f86f\", \"M416.54 0h-17A8 8 0 0 0 392 5.32l-176.28 496a8 8 0 0 0 7.55 10.68h17a8 8 0 0 0 7.54-5.32l176.29-496A8 8 0 0 0 416.54 0zm-131 96h-17.02a8 8 0 0 0-7.5 5.19L160 371 59 101.19A8 8 0 0 0 51.49 96H34.43a8 8 0 0 0-7.49 10.8l113.8 304a8 8 0 0 0 7.5 5.2h23.53a8 8 0 0 0 7.49-5.2l113.81-304a8 8 0 0 0-7.5-10.8zm327.52 309.2l-113.8-304a8 8 0 0 0-7.49-5.2h-23.53a8 8 0 0 0-7.5 5.2l-113.8 304a8 8 0 0 0 7.49 10.8h17.06a8 8 0 0 0 7.49-5.2L413 320h134l34 90.8a8 8 0 0 0 7.5 5.2h17.05a8 8 0 0 0 7.51-10.8zM425 288l55-147 55 147z\"]\n};\nvar faKey = {\n prefix: 'fal',\n iconName: 'key',\n icon: [512, 512, [], \"f084\", \"M336 32c79.529 0 144 64.471 144 144s-64.471 144-144 144c-18.968 0-37.076-3.675-53.661-10.339L240 352h-48v64h-64v64H32v-80l170.339-170.339C195.675 213.076 192 194.968 192 176c0-79.529 64.471-144 144-144m0-32c-97.184 0-176 78.769-176 176 0 15.307 1.945 30.352 5.798 44.947L7.029 379.716A24.003 24.003 0 0 0 0 396.686V488c0 13.255 10.745 24 24 24h112c13.255 0 24-10.745 24-24v-40h40c13.255 0 24-10.745 24-24v-40h19.314c6.365 0 12.47-2.529 16.971-7.029l30.769-30.769C305.648 350.055 320.693 352 336 352c97.184 0 176-78.769 176-176C512 78.816 433.231 0 336 0zm48 108c11.028 0 20 8.972 20 20s-8.972 20-20 20-20-8.972-20-20 8.972-20 20-20m0-28c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48z\"]\n};\nvar faKeySkeleton = {\n prefix: 'fal',\n iconName: 'key-skeleton',\n icon: [512, 512, [], \"f6f3\", \"M329.37 137.37c-12.49 12.5-12.49 32.76 0 45.26 12.5 12.5 32.76 12.5 45.26 0 12.49-12.5 12.49-32.76 0-45.26-12.5-12.49-32.76-12.49-45.26 0zm64-64c-12.49 12.5-12.49 32.76 0 45.26 12.5 12.5 32.76 12.5 45.26 0s12.5-32.76 0-45.26c-12.5-12.49-32.76-12.49-45.26 0zM448 0H320c-35.35 0-64 28.65-64 64v128c0 11.85 3.44 22.8 9.05 32.32L2.34 487.03c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0l48.7-48.7 46.4 46.4c6.16 6.16 16.2 6.22 22.43 0l44.86-44.86c6.19-6.19 6.19-16.23 0-22.43l-46.4-46.4 28.71-28.72 46.4 46.4c6.16 6.16 16.2 6.22 22.43 0l44.86-44.86c6.19-6.19 6.19-16.23 0-22.43l-46.4-46.4 50.72-50.72c9.52 5.61 20.47 9.05 32.32 9.05h128c35.35 0 64-28.65 64-64V64C512 28.65 483.35 0 448 0zM153.71 451.28l-22.43 22.43-35.18-35.18 22.43-22.43 35.18 35.18zm96-96l-22.43 22.43-35.19-35.19 22.43-22.43 35.19 35.19zM480 192c0 17.64-14.36 32-32 32H320c-17.64 0-32-14.36-32-32V64c0-17.64 14.36-32 32-32h128c17.64 0 32 14.36 32 32v128z\"]\n};\nvar faKeyboard = {\n prefix: 'fal',\n iconName: 'keyboard',\n icon: [576, 512, [], \"f11c\", \"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-48zm16 336c0 8.823-7.177 16-16 16H48c-8.823 0-16-7.177-16-16V112c0-8.823 7.177-16 16-16h480c8.823 0 16 7.177 16 16v288zM168 268v-24c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h24c6.627 0 12-5.373 12-12zm96 0v-24c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h24c6.627 0 12-5.373 12-12zm96 0v-24c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h24c6.627 0 12-5.373 12-12zm96 0v-24c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h24c6.627 0 12-5.373 12-12zm-336 80v-24c0-6.627-5.373-12-12-12H84c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h24c6.627 0 12-5.373 12-12zm384 0v-24c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h24c6.627 0 12-5.373 12-12zM120 188v-24c0-6.627-5.373-12-12-12H84c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h24c6.627 0 12-5.373 12-12zm96 0v-24c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h24c6.627 0 12-5.373 12-12zm96 0v-24c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h24c6.627 0 12-5.373 12-12zm96 0v-24c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h24c6.627 0 12-5.373 12-12zm96 0v-24c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h24c6.627 0 12-5.373 12-12zm-96 152v-8c0-6.627-5.373-12-12-12H180c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h216c6.627 0 12-5.373 12-12z\"]\n};\nvar faKeynote = {\n prefix: 'fal',\n iconName: 'keynote',\n icon: [512, 512, [], \"f66c\", \"M505.24 274.49l-48.4-96.8A32 32 0 0 0 428.22 160H128v-16c0-39.77 29.25-72.6 67.34-78.72C202.29 83.22 219.6 96 240 96h64c26.51 0 48-21.49 48-48S330.51 0 304 0h-64c-21.37 0-39.27 14.06-45.48 33.36C139.17 40.12 96 86.87 96 144v16H83.78a32 32 0 0 0-28.62 17.69l-48.4 96.8A63.874 63.874 0 0 0 0 303.11V352c0 17.67 14.33 32 32 32h160v96h-56c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h240c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-56v-96h160c17.67 0 32-14.33 32-32v-48.89c0-9.94-2.31-19.74-6.76-28.62zM240 32h64c8.82 0 16 7.18 16 16s-7.18 16-16 16h-64c-8.82 0-16-7.18-16-16s7.18-16 16-16zM83.78 192h344.45l48 96H35.78l48-96zM288 480h-64v-96h64v96zm192-128H32v-32h448v32z\"]\n};\nvar faKhanda = {\n prefix: 'fal',\n iconName: 'khanda',\n icon: [512, 512, [], \"f66d\", \"M415.81 66a16.095 16.095 0 0 0-7.76-1.99c-4.28 0-8.51 1.71-11.6 5.01a15.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.17-5.14 1.24-11.54-3.57-16.04L255.86 0l-58.99 52.81c-4.75 4.44-5.77 10.81-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-3-3.21-7.34-4.8-11.69-4.8-2.89 0-5.8.7-8.33 2.1C16.32 109.6-22.3 205.3 13.36 295.99c7.07 17.99 17.89 34.38 30.46 49.06l55.97 65.36c3.12 3.65 7.6 5.59 12.15 5.59 2.55 0 5.13-.61 7.5-1.88l79.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.23c2.38 1.26 4.95 1.88 7.5 1.88 4.55 0 9.03-1.94 12.15-5.59l52.51-61.31c18.87-22.02 34-47.5 41.25-75.59 21.62-83.66-16.45-167.27-90.16-207.51zM115.73 379.85L68.1 324.23c-11.38-13.29-19.78-26.73-24.98-39.96-21.09-53.63-11.41-110.92 22.11-152.16a197.139 197.139 0 0 0-4.95 44c.22 63.87 32.09 123.19 84.73 158.32l24.28 16.91-53.56 28.51zm184.21-270.48c21.58 14.34 35.86 38.83 35.86 66.63 0 28.76-15.38 53.81-38.21 67.91l-12.27-26.93c-8.75-24.52-8.75-51.04 0-75.56l14.62-32.05zm-44.08-66.43l27.85 24.93-27.48 60.28-.38.83-.38-.83-27.49-60.26 27.88-24.95zm-41.75 200.97c-22.83-14.1-38.21-39.15-38.21-67.91 0-27.81 14.29-52.29 35.86-66.63l14.61 32.06c8.75 24.52 8.75 51.03 0 75.56l-12.26 26.92zm41.75 69.43l-27.84-22.81 27.46-60.28.37-.82.37.82 27.47 60.28-27.83 22.81zm219.16-47.84c-5.5 21.29-17.13 42.41-34.57 62.77l-44.17 51.57-53.57-28.51 23.52-16.38c53.31-35.6 85.27-95.01 85.5-159.02 0-14.7-1.64-29.26-4.85-43.43 29.44 36.32 40.6 84.75 28.14 133z\"]\n};\nvar faKidneys = {\n prefix: 'fal',\n iconName: 'kidneys',\n icon: [608, 512, [], \"f5fb\", \"M248.4 224.84l-56.12-29.54c4.75-9.17 10.65-18.07 18.84-26.14 36.75-36.24 41.81-100.27 7.33-138.91C200.55 10.21 176.29 0 151.92 0c-21.63 0-43.33 8.04-60.74 24.39-77.1 72.43-108.5 179.1-81.85 278.4C30.18 380.45 84.84 384 100.09 384c77.87 0 99.25-79.77 87.85-122.11-4.33-16.25-5.97-22.32-5.01-35.72l51.87 27.3c5.15 2.71 8.4 8.25 8.4 14.31V504c0 4.42 3.4 8 7.6 8H266c4.2 0 7.6-3.58 7.6-8V267.77c0-18.18-9.76-34.8-25.2-42.93zm-92.72 34.45l3.02 11.32c21.86 81.24-95.2 116.37-117.08 34.76l-3.03-11.27c-23.45-87.4 4.46-181.6 72.83-245.83C122.59 37.78 136.97 32 151.92 32c34.53 0 62.78 30.46 60.78 67.63-.92 17.06-8.1 32.73-20.22 44.11-33.91 31.83-47.67 75.05-36.8 115.55zm361.14-234.9C499.41 8.04 477.71 0 456.08 0c-24.36 0-48.63 10.21-66.51 30.25-34.48 38.64-29.42 102.67 7.33 138.91 8.19 8.08 14.09 16.98 18.83 26.14l-56.12 29.54c-15.45 8.13-25.2 24.75-25.2 42.93V504c0 4.42 3.4 8 7.6 8h15.2c4.2 0 7.6-3.58 7.6-8V267.78c0-6.06 3.25-11.6 8.41-14.31l51.86-27.3c.96 13.4-.68 19.47-5.01 35.72C408.66 304.23 430.04 384 507.91 384c15.25 0 69.91-3.55 90.76-81.21 26.65-99.3-4.75-205.98-81.85-278.4zm52.6 269.7l-3.03 11.27c-21.89 81.61-138.95 46.49-117.08-34.76l3.02-11.32c10.86-40.5-2.89-83.71-36.81-115.55-12.12-11.38-19.3-27.05-20.22-44.11-2-37.17 26.25-67.63 60.78-67.63 14.95 0 29.33 5.78 40.5 16.27 68.38 64.24 96.29 158.43 72.84 245.83z\"]\n};\nvar faKiss = {\n prefix: 'fal',\n iconName: 'kiss',\n icon: [496, 512, [], \"f596\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm56-164c0-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 308zM168 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\"]\n};\nvar faKissBeam = {\n prefix: 'fal',\n iconName: 'kiss-beam',\n icon: [496, 512, [], \"f597\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm56-164c0-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 308zM168 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.4zm160 0c-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\"]\n};\nvar faKissWinkHeart = {\n prefix: 'fal',\n iconName: 'kiss-wink-heart',\n icon: [504, 512, [], \"f598\", \"M499.6 392.3c-5.2-13.6-15.2-24.3-27.4-31.8 15-31.8 23.8-67 23.8-104.5C496 119 385 8 248 8S0 119 0 256s111 248 248 248c36.1 0 70.2-8.1 101.2-22.1 9.5 11.6 24.7 17.8 40.7 13.7l65.4-16.9c37.5-9.8 58.3-49.8 44.3-86.4zm-176.4 10.1l13.8 49.9c-27.2 12.5-57.2 19.7-89 19.7-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216c0 33.9-8 65.9-22 94.4-1-.1-18.6-30.4-56.1-30.4-41.9 0-74.5 39.8-62.7 82.4zm124 45.3l-65.4 16.9c-4 1.1-8.5-1.3-9.8-5.6l-18-65.1c-5.2-18.9 6.9-38.3 26.8-41.4 17.7-2.8 34 9.5 38.6 26l1.8 6.6 6.7-1.7c14.3-3.7 34.7 1.7 41.8 20.4 7.2 18.8-3.5 38.9-22.5 43.9zM304 308c0-19.2-28.7-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.7 13.5 20.7 21.5s-7.7 16-20.7 21.5l-17 7.2c-5.7 2.4-6 12.2 0 14.8l16.9 7.2c13 5.5 20.7 13.5 20.7 21.5s-7.7 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 308zM168 176c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm235.8 46.1c-4-25.2-34.2-42.1-59.8-42.1s-55.9 16.9-59.8 42.1c-1.8 10.9 11.3 18.4 19.8 10.8l9.5-8.5c14.8-13.2 46.2-13.2 61 0l9.5 8.5c8.6 7.5 21.6.2 19.8-10.8z\"]\n};\nvar faKite = {\n prefix: 'fal',\n iconName: 'kite',\n icon: [640, 512, [], \"f6f4\", \"M608 0H345.5c-14.9 0-27.8 10.3-31.2 24.8l-83.5 361.8-88.2 88.2c-10.5 10.4-30.6 2-30.6-12.7V356.6l12 9.2c7.4 5.7 16.2 8.7 25.3 8.7 23.5 0 42.7-19.9 42.7-44.3V278c0-24.4-19.2-44.3-42.7-44.3-9.2 0-17.9 3-25.3 8.7l-12 9.2V224c0-44.2-35.8-80-80-80H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h24c26.5 0 48 21.5 48 48v27.4l-12-9.2c-7.4-5.7-16.2-8.7-25.3-8.7-23.5.1-42.7 20-42.7 44.4v52.2c0 24.4 19.2 44.3 42.7 44.3 9.2 0 17.9-3 25.3-8.7l12-9.2v103.1c0 25.7 18.3 48.9 43.8 52 15.5 1.8 30.5-3.4 41.4-14.3l88.2-88.2 361.8-83.5c14.5-3.4 24.8-16.3 24.8-31.2V32c0-17.7-14.3-32-32-32zM48.6 340.3c-7.1 5.4-16.6-.4-16.6-10.2v-52.2c0-9.8 9.5-15.6 16.6-10.2L96 304l47.4-36.3c7.1-5.4 16.6.4 16.6 10.2v52.2c0 9.8-9.5 15.6-16.6 10.2L96 304zM585.4 32L476 141.4 366.6 32zM340.9 51.6L453.4 164 273.5 343.9zm-44.8 314.9L476 186.6 588.4 299zM608 273.4L498.6 164 608 54.6z\"]\n};\nvar faKiwiBird = {\n prefix: 'fal',\n iconName: 'kiwi-bird',\n icon: [576, 512, [], \"f535\", \"M463.99 200c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm98.61 76.02c9.13-17.26 14.34-36.92 13.23-58.04C572.66 157.41 518.3 112 457.65 112h-9.37c-52.82 0-104.26-16.25-147.74-46.24C269.69 44.48 232.32 32 191.99 32c-14.56 0-29.5 1.62-44.67 5.05C76.36 53.08 19.49 110.89 4.43 182.07c-18.61 87.96 23.2 168.34 91.56 207.96V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-66.93c20.02 7.08 41.56 10.93 64 10.93 10.94 0 21.57-1.14 32-2.91V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-67.44c14.23-5.07 27.88-11.38 40.34-19.5C342.08 355.25 393.88 336 448.48 336h15.51c2.58 0 4.99-.61 7.53-.78l74.44 136.44c2.84 5.25 8.28 8.34 14.03 8.34 1.5 0 3-.2 4.5-.64 7.22-2.12 12-9 11.47-16.5L562.6 276.02zm-58.45 52.14c10.54-4.07 20.18-9.66 28.9-16.54l5.73 80.07-34.63-63.53zm17.88-49.1C506.77 295.14 486.16 304 463.99 304h-15.51c-57.3 0-114.36 18.25-169.62 54.25C253.01 375.1 222.97 384 191.99 384c-48.47 0-93.81-21.63-124.37-59.33-30.56-37.71-42.18-87.27-31.88-135.98 12.44-58.81 60.12-107.2 118.64-120.42C166.9 65.44 179.56 64 191.99 64c32.47 0 63.72 9.72 90.38 28.1 49.23 33.95 106.6 51.9 165.91 51.9h9.37c45.36 0 84.04 33.94 86.22 75.65 1.17 22.24-6.59 43.34-21.84 59.41z\"]\n};\nvar faKnifeKitchen = {\n prefix: 'fal',\n iconName: 'knife-kitchen',\n icon: [576, 512, [], \"f6f5\", \"M566.64 65.94L511 9.37C504.76 3.12 496.59 0 488.41 0s-16.35 3.12-22.58 9.37L4.58 464.14C-3.36 472.1-.6 486.3 9.9 489.83 51.69 503.86 98.5 512 144.82 512c72.96 0 144.73-20.19 193.87-69.35l100.45-100.04c11.72-11.67 12.18-30.39 2.11-43.16l11.59-68.83 113.8-119.42c12.48-12.5 12.48-32.76 0-45.26zM317.34 419.6C278.4 458.55 217.13 480 144.82 480c-32.83 0-66.58-4.38-98.97-12.77l261.67-262.38 110.33 114.66L317.34 419.6zm104.7-202.14l-10.5 50.25-81.36-84.55C378.55 136.89 488.22 32 488.41 32l56.36 56.68-122.73 128.78zM432 128c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm32-32c0 8.84 7.16 16 16 16s16-7.16 16-16-7.16-16-16-16-16 7.16-16 16z\"]\n};\nvar faLambda = {\n prefix: 'fal',\n iconName: 'lambda',\n icon: [448, 512, [], \"f66e\", \"M440 448h-72.63c-3.12 0-5.96-1.81-7.26-4.65L178.83 50.59A31.999 31.999 0 0 0 149.78 32H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h136.63c3.12 0 5.96 1.81 7.26 4.65l7.79 16.88L.62 468.92C-1.57 474.19 2.3 480 8.01 480h17.36a7.99 7.99 0 0 0 7.38-4.92l145.17-350.05 155.25 336.38A31.999 31.999 0 0 0 362.22 480H440c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8z\"]\n};\nvar faLamp = {\n prefix: 'fal',\n iconName: 'lamp',\n icon: [416, 512, [], \"f4ca\", \"M413.7 237.8l-71.9-216C337.3 8.6 327.2 0 316 0H112c-10.6 0-20.3 7.7-25 19.9l-84 216C-6.3 259.8 7.2 288 28 288h92.7C86.3 327.8 64 383.9 64 423.6c0 26.1 9.7 50.3 26.2 70.1 9.9 11.9 26.1 18.3 42.7 18.3h150.3c16.6 0 32.8-6.4 42.7-18.3 16.5-19.8 26.2-43.9 26.2-70.1 0-39.7-22.3-95.8-56.7-135.6H388c20.1 0 33.6-26.4 25.7-50.2zM320 423.6c0 17.6-6.5 34.8-18.8 49.6-3.4 4.1-10.5 6.8-18 6.8H132.9c-7.5 0-14.6-2.7-18-6.8-12.3-14.8-18.8-32-18.8-49.6 0-41.7 31-106 70.4-135.6h83.1C289 317.6 320 381.9 320 423.6zM377.4 256H38.6c-4.3 0-7.3-4.2-5.9-8.2 0-.1.1-.2.1-.3L116.7 32h194.7l71.9 215.9v.1c1.4 4-1.7 8-5.9 8z\"]\n};\nvar faLampDesk = {\n prefix: 'fal',\n iconName: 'lamp-desk',\n icon: [512, 512, [], \"e014\", \"M494.42,64H369.14L328.57,23.43A80,80,0,0,0,215.43,136.57l4.69,4.68L116.69,244.67a16.06,16.06,0,0,0-4.07,15.8L158,416H80c-35.09,0-68.12,23.22-78.53,55.2A30.19,30.19,0,0,0,6,498.55,32.64,32.64,0,0,0,32.27,512H351.73A32.64,32.64,0,0,0,378,498.55a30.21,30.21,0,0,0,4.47-27.36C372,439.2,339,416,304,416H191.35L146,260.59l96.74-96.71L256,177.14V302.42A17.53,17.53,0,0,0,273.67,320,17.18,17.18,0,0,0,286,314.82l60.16-60.16C358.6,265.24,374.39,272,392,272a72.08,72.08,0,0,0,72-72c0-17.61-6.75-33.4-17.33-45.87L506.82,94C517.88,82.9,510.05,64,494.42,64ZM304,448c21.6,0,41.84,13.94,47.75,32H31.93c6.25-19.19,26.46-32,48.09-32Zm88-208a38.92,38.92,0,0,1-23.37-7.83l55.54-55.54A38.94,38.94,0,0,1,432,200,40,40,0,0,1,392,240ZM288,267.53V163.88l-49.94-49.94a48,48,0,0,1,67.88-67.88L355.88,96H459.53Z\"]\n};\nvar faLampFloor = {\n prefix: 'fal',\n iconName: 'lamp-floor',\n icon: [384, 512, [], \"e015\", \"M381.38,179.39l-68.57-160A32,32,0,0,0,283.39,0H100.61A32,32,0,0,0,71.19,19.39l-68.57,160A32,32,0,0,0,32,224H176V416H144c-35.09,0-68.12,23.22-78.53,55.2a30.16,30.16,0,0,0,4.47,27.35A32.63,32.63,0,0,0,96.25,512h191.5a32.63,32.63,0,0,0,26.31-13.45,30.18,30.18,0,0,0,4.47-27.36C308.06,439.2,275.06,416,240,416H208V224H352A32,32,0,0,0,381.38,179.39ZM240,448c21.59,0,41.84,13.94,47.75,32L95.91,480c6.25-19.19,26.47-32,48.09-32ZM32,192,100.61,32H283.39L352,192Z\"]\n};\nvar faLandmark = {\n prefix: 'fal',\n iconName: 'landmark',\n icon: [576, 512, [], \"f66f\", \"M565.62 92.11L299.24 2.04C295.62.68 291.81 0 288 0s-7.62.68-11.24 2.04L10.38 92.11A16.001 16.001 0 0 0 0 107.09V144c0 8.84 7.16 16 16 16h544c8.84 0 16-7.16 16-16v-36.91c0-6.67-4.14-12.64-10.38-14.98zM544 128H32v-9.42L288 32l256 86.56V128zm24 352h-24v-64c0-17.67-16.37-32-36.57-32H496V192h-32v192h-96V192h-32v192h-96V192h-32v192h-96V192H80v192H68.57C48.37 384 32 398.33 32 416v64H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h560c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-56 0H64v-62.72c.7-.52 2.21-1.28 4.57-1.28h438.86c2.37 0 3.87.76 4.57 1.28V480z\"]\n};\nvar faLandmarkAlt = {\n prefix: 'fal',\n iconName: 'landmark-alt',\n icon: [512, 512, [], \"f752\", \"M504 480h-24v-80c0-8.8-7.2-16-16-16h-16V256h24c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-24c0-100.5-77.6-183-176-191.2V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v24.8C141.6 41 64 123.5 64 224H40c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h24v128H48c-8.8 0-16 7.2-16 16v80H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h496c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM256 64c88.2 0 160 71.8 160 160H96c0-88.2 71.8-160 160-160zm160 192v128h-80V256h80zm-112 0v128h-96V256h96zm-208 0h80v128H96V256zm352 224H64v-64h384v64z\"]\n};\nvar faLanguage = {\n prefix: 'fal',\n iconName: 'language',\n icon: [640, 512, [], \"f1ab\", \"M616 96H24c-13.255 0-24 10.745-24 24v272c0 13.255 10.745 24 24 24h592c13.255 0 24-10.745 24-24V120c0-13.255-10.745-24-24-24zM304 384H32V128h272v256zm304 0H336V128h272v256zM91.088 352h10.34a12 12 0 0 0 11.397-8.243l13.508-40.973h67.335l13.508 40.973A12.001 12.001 0 0 0 218.573 352h10.339c8.276 0 14.067-8.18 11.319-15.985l-59.155-168A12 12 0 0 0 169.757 160h-19.513a12 12 0 0 0-11.319 8.014l-59.155 168C77.021 343.82 82.812 352 91.088 352zm60.663-128.991c3.787-10.818 8.113-29.747 8.113-29.747h.541s4.057 18.929 7.572 29.747l17.036 51.38h-50.298l17.036-51.38zM384 212v-8c0-6.627 5.373-12 12-12h68v-20c0-6.627 5.373-12 12-12h8c6.627 0 12 5.373 12 12v20h68c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12h-15.699c-7.505 24.802-23.432 50.942-44.896 74.842 10.013 9.083 20.475 17.265 30.924 24.086 5.312 3.467 6.987 10.475 3.84 15.982l-3.987 6.976c-3.429 6.001-11.188 7.844-16.993 4.091-13.145-8.5-25.396-18.237-36.56-28.5-11.744 10.454-24.506 20.146-37.992 28.68-5.761 3.646-13.409 1.698-16.791-4.221l-3.972-6.95c-3.197-5.594-1.379-12.672 4.058-16.129 11.382-7.237 22.22-15.428 32.24-24.227-10.026-11.272-18.671-22.562-25.687-33.033-3.833-5.721-2.11-13.48 3.803-17.01l6.867-4.099c5.469-3.264 12.55-1.701 16.092 3.592 6.379 9.531 13.719 18.947 21.677 27.953 15.017-16.935 26.721-34.905 33.549-52.033H396c-6.627 0-12-5.373-12-12z\"]\n};\nvar faLaptop = {\n prefix: 'fal',\n iconName: 'laptop',\n icon: [640, 512, [], \"f109\", \"M624 368h-48V96c0-35.3-28.72-64-64-64H128c-35.28 0-64 28.7-64 64v272H16c-8.84 0-16 7.16-16 16v48c0 44.11 35.88 80 80 80h480c44.12 0 80-35.89 80-80v-48c0-8.84-7.16-16-16-16zM96 96c0-17.67 14.33-32 32-32h384c17.67 0 32 14.33 32 32v272H391.13c-4.06 0-7.02 3.13-7.92 7.09C379.98 389.35 367.23 400 352 400h-64c-15.23 0-27.98-10.65-31.21-24.91-.9-3.96-3.86-7.09-7.92-7.09H96V96zm512 336c0 26.47-21.53 48-48 48H80c-26.47 0-48-21.53-48-48v-32h194.75c6.59 18.62 24.38 32 45.25 32h96c20.88 0 38.66-13.38 45.25-32H608v32z\"]\n};\nvar faLaptopCode = {\n prefix: 'fal',\n iconName: 'laptop-code',\n icon: [640, 512, [], \"f5fc\", \"M266.34 277.65l11.31-11.31c3.12-3.12 3.12-8.19 0-11.31L230.62 208l47.03-47.03c3.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-64 64c-3.12 3.12-3.12 8.19 0 11.31l64 64c3.13 3.12 8.19 3.12 11.31-.01zm96-11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0l64-64c3.12-3.12 3.12-8.19 0-11.31l-64-64c-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.31L409.38 208l-47.03 47.03a7.994 7.994 0 0 0-.01 11.31zM624 368h-48V96c0-35.3-28.72-64-64-64H128c-35.28 0-64 28.7-64 64v272H16c-8.84 0-16 7.16-16 16v48c0 44.11 35.88 80 80 80h480c44.12 0 80-35.89 80-80v-48c0-8.84-7.16-16-16-16zM96 96c0-17.67 14.33-32 32-32h384c17.67 0 32 14.33 32 32v272H391.13c-4.06 0-7.02 3.13-7.92 7.09C379.98 389.35 367.23 400 352 400h-64c-15.23 0-27.98-10.65-31.21-24.91-.9-3.96-3.86-7.09-7.92-7.09H96V96zm512 336c0 26.47-21.53 48-48 48H80c-26.47 0-48-21.53-48-48v-32h194.75c6.59 18.62 24.38 32 45.25 32h96c20.88 0 38.66-13.38 45.25-32H608v32z\"]\n};\nvar faLaptopHouse = {\n prefix: 'fal',\n iconName: 'laptop-house',\n icon: [640, 512, [], \"e066\", \"M624,416H592V288c0-17.68-12.9-32-28.81-32H332.73c-15.91,0-28.8,14.32-28.8,32V416h-32a16,16,0,0,0-16,16v37.34A42.82,42.82,0,0,0,298.53,512H597.39A42.83,42.83,0,0,0,640,469.33V432A16,16,0,0,0,624,416ZM335.93,288H560V416h-224ZM608,469.26A10.76,10.76,0,0,1,597.39,480H298.64a10.78,10.78,0,0,1-10.72-10.67V448H608ZM197.28,160A21.41,21.41,0,0,0,175.9,181.3v85.35A21.42,21.42,0,0,0,197.28,288h74.64a64.32,64.32,0,0,1,32-56V181.3A21.44,21.44,0,0,0,282.59,160Zm74.64,96h-64V192h64Zm-176,112V168a18.8,18.8,0,0,0-.81-4L239.91,37.22l144,126V224h32V191.25L453.34,224h20a15.71,15.71,0,0,0,6.2-12.33A18.31,18.31,0,0,0,474.49,200L416,148.72V48a16,16,0,0,0-32,0v72.75L250.45,4a16,16,0,0,0-21.07,0L5.33,200A18.24,18.24,0,0,0,0,211.89a16,16,0,0,0,16,16,18.62,18.62,0,0,0,10.4-3.83l37.47-32.82V368a48.1,48.1,0,0,0,48,48h112V384h-112A16,16,0,0,1,95.88,368Z\"]\n};\nvar faLaptopMedical = {\n prefix: 'fal',\n iconName: 'laptop-medical',\n icon: [640, 512, [], \"f812\", \"M624 368h-48V96a64.07 64.07 0 0 0-64-64H128a64.07 64.07 0 0 0-64 64v272H16a16 16 0 0 0-16 16v48a80.09 80.09 0 0 0 80 80h480a80.09 80.09 0 0 0 80-80v-48a16 16 0 0 0-16-16zM96 96a32 32 0 0 1 32-32h384a32 32 0 0 1 32 32v272H391.13c-4.06 0-7 3.13-7.92 7.09A32 32 0 0 1 352 400h-64a32 32 0 0 1-31.21-24.91c-.9-4-3.86-7.09-7.92-7.09H96zm512 336a48.05 48.05 0 0 1-48 48H80a48.05 48.05 0 0 1-48-48v-32h194.75A48.06 48.06 0 0 0 272 432h96a48 48 0 0 0 45.25-32H608zM288 312a8 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 8h56z\"]\n};\nvar faLasso = {\n prefix: 'fal',\n iconName: 'lasso',\n icon: [576, 512, [], \"f8c8\", \"M288 0C126.5 0 0 77.31 0 176c0 46.78 29.06 90.62 81.81 123.45 4.54 2.82 9.51 5.58 14.7 8.34C93.28 333.29 117.4 352 144 352a55.73 55.73 0 0 0 19.65-3.58c17.26 15.75 29.07 36.41 28.32 67.77C191.11 451.85 161 480 125.38 480H40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h84.61c54.33 0 99.47-44.5 99.39-98.83 0-29.05-8.41-51.28-21.06-68.84A464.82 464.82 0 0 0 288 352c161.5 0 288-77.31 288-176S449.5 0 288 0zm0 320a422.74 422.74 0 0 1-96.36-11c-1.86-20.67-22.35-37-47.64-37a53.72 53.72 0 0 0-29.64 8.76c-5.36-2.8-11-5.6-15.64-8.46C55.69 245.52 32 211.33 32 176 32 97.94 149.22 32 288 32s256 65.94 256 144-117.22 144-256 144z\"]\n};\nvar faLaugh = {\n prefix: 'fal',\n iconName: 'laugh',\n icon: [496, 512, [], \"f599\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm152.7 400.7c-19.8 19.8-43 35.4-68.7 46.3-26.6 11.3-54.9 17-84.1 17s-57.5-5.7-84.1-17c-25.7-10.9-48.8-26.5-68.7-46.3-19.8-19.8-35.4-43-46.3-68.7-11.3-26.6-17-54.9-17-84.1s5.7-57.5 17-84.1c10.9-25.7 26.5-48.8 46.3-68.7 19.8-19.8 43-35.4 68.7-46.3 26.6-11.3 54.9-17 84.1-17s57.5 5.7 84.1 17c25.7 10.9 48.8 26.5 68.7 46.3 19.8 19.8 35.4 43 46.3 68.7 11.3 26.6 17 54.9 17 84.1s-5.7 57.5-17 84.1c-10.8 25.8-26.4 48.9-46.3 68.7zM328 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 32zm215 64H113c-9.6 0-17.1 8.4-15.9 18 8.8 71 69.4 126 142.9 126h16c73.4 0 134-55 142.9-126 1.2-9.6-6.3-18-15.9-18zM256 400h-16c-50.2 0-93.5-33.3-107.4-80h230.8c-13.9 46.7-57.2 80-107.4 80z\"]\n};\nvar faLaughBeam = {\n prefix: 'fal',\n iconName: 'laugh-beam',\n icon: [496, 512, [], \"f59a\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm152.7 400.7c-19.8 19.8-43 35.4-68.7 46.3-26.6 11.3-54.9 17-84.1 17s-57.5-5.7-84.1-17c-25.7-10.9-48.8-26.5-68.7-46.3-19.8-19.8-35.4-43-46.3-68.7-11.3-26.6-17-54.9-17-84.1s5.7-57.5 17-84.1c10.9-25.7 26.5-48.8 46.3-68.7 19.8-19.8 43-35.4 68.7-46.3 26.6-11.3 54.9-17 84.1-17s57.5 5.7 84.1 17c25.7 10.9 48.8 26.5 68.7 46.3 19.8 19.8 35.4 43 46.3 68.7 11.3 26.6 17 54.9 17 84.1s-5.7 57.5-17 84.1c-10.8 25.8-26.4 48.9-46.3 68.7zM287 227.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.6 11 11.9 15.1 4.5zm-160 0l9.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.5zM383 288H113c-9.6 0-17.1 8.4-15.9 18 8.8 71 69.4 126 142.9 126h16c73.4 0 134-55 142.9-126 1.2-9.6-6.3-18-15.9-18zM256 400h-16c-50.2 0-93.5-33.3-107.4-80h230.8c-13.9 46.7-57.2 80-107.4 80z\"]\n};\nvar faLaughSquint = {\n prefix: 'fal',\n iconName: 'laugh-squint',\n icon: [496, 512, [], \"f59b\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm152.7 400.7c-19.8 19.8-43 35.4-68.7 46.3-26.6 11.3-54.9 17-84.1 17s-57.5-5.7-84.1-17c-25.7-10.9-48.8-26.5-68.7-46.3-19.8-19.8-35.4-43-46.3-68.7-11.3-26.6-17-54.9-17-84.1s5.7-57.5 17-84.1c10.9-25.7 26.5-48.8 46.3-68.7 19.8-19.8 43-35.4 68.7-46.3 26.6-11.3 54.9-17 84.1-17s57.5 5.7 84.1 17c25.7 10.9 48.8 26.5 68.7 46.3 19.8 19.8 35.4 43 46.3 68.7 11.3 26.6 17 54.9 17 84.1s-5.7 57.5-17 84.1c-10.8 25.8-26.4 48.9-46.3 68.7zM281.8 206.3l80 48c11.5 6.8 24-7.6 15.4-18L343.6 196l33.6-40.3c8.6-10.3-3.8-24.8-15.4-18l-80 48c-7.7 4.7-7.7 15.9 0 20.6zm-147.6 48l80-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 18zM383 288H113c-9.6 0-17.1 8.4-15.9 18 8.8 71 69.4 126 142.9 126h16c73.4 0 134-55 142.9-126 1.2-9.6-6.3-18-15.9-18zM256 400h-16c-50.2 0-93.5-33.3-107.4-80h230.8c-13.9 46.7-57.2 80-107.4 80z\"]\n};\nvar faLaughWink = {\n prefix: 'fal',\n iconName: 'laugh-wink',\n icon: [496, 512, [], \"f59c\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm152.7 400.7c-19.8 19.8-43 35.4-68.7 46.3-26.6 11.3-54.9 17-84.1 17s-57.5-5.7-84.1-17c-25.7-10.9-48.8-26.5-68.7-46.3s-35.4-43-46.3-68.7c-11.3-26.6-17-54.9-17-84.1s5.7-57.5 17-84.1c10.9-25.7 26.5-48.8 46.3-68.7s43-35.4 68.7-46.3c26.6-11.3 54.9-17 84.1-17s57.5 5.7 84.1 17c25.7 10.9 48.8 26.5 68.7 46.3s35.4 43 46.3 68.7c11.3 26.6 17 54.9 17 84.1s-5.7 57.5-17 84.1c-10.8 25.8-26.4 48.9-46.3 68.7zM288 217l9.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-4-25.2-34.2-42.1-59.9-42.1S272 181 268 206.2c-1.6 11.1 11.6 18.2 20 10.8zm-120 7c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm215 64H113c-9.6 0-17.1 8.4-15.9 18 8.8 71 69.4 126 142.9 126h16c73.4 0 134-55 142.9-126 1.2-9.6-6.3-18-15.9-18zM256 400h-16c-50.2 0-93.5-33.3-107.4-80h230.8c-13.9 46.7-57.2 80-107.4 80z\"]\n};\nvar faLayerGroup = {\n prefix: 'fal',\n iconName: 'layer-group',\n icon: [512, 512, [], \"f5fd\", \"M512 256.01c0-9.98-5.81-18.94-14.77-22.81l-99.74-43.27 99.7-43.26c9-3.89 14.81-12.84 14.81-22.81s-5.81-18.92-14.77-22.79L271.94 3.33c-10.1-4.44-21.71-4.45-31.87-.02L14.81 101.06C5.81 104.95 0 113.9 0 123.87s5.81 18.92 14.77 22.79l99.73 43.28-99.7 43.26C5.81 237.08 0 246.03 0 256.01c0 9.97 5.81 18.92 14.77 22.79l99.72 43.26-99.69 43.25C5.81 369.21 0 378.16 0 388.14c0 9.97 5.81 18.92 14.77 22.79l225.32 97.76a40.066 40.066 0 0 0 15.9 3.31c5.42 0 10.84-1.1 15.9-3.31l225.29-97.74c9-3.89 14.81-12.84 14.81-22.81 0-9.98-5.81-18.94-14.77-22.81l-99.72-43.26 99.69-43.25c9-3.89 14.81-12.84 14.81-22.81zM45.23 123.87l208.03-90.26.03-.02c1.74-.71 3.65-.76 5.45.02l208.03 90.26-208.03 90.27c-1.81.77-3.74.77-5.48 0L45.23 123.87zm421.54 264.27L258.74 478.4c-1.81.77-3.74.77-5.48 0L45.23 388.13l110.76-48.06 84.11 36.49a40.066 40.066 0 0 0 15.9 3.31c5.42 0 10.84-1.1 15.9-3.31l84.11-36.49 110.76 48.07zm-208.03-41.87c-1.81.77-3.74.77-5.48 0L45.23 256 156 207.94l84.1 36.5a40.066 40.066 0 0 0 15.9 3.31c5.42 0 10.84-1.1 15.9-3.31l84.1-36.49 110.77 48.07-208.03 90.25z\"]\n};\nvar faLayerMinus = {\n prefix: 'fal',\n iconName: 'layer-minus',\n icon: [512, 512, [], \"f5fe\", \"M512 253.21c0-10.08-5.81-19.13-14.77-23.04L271.9 131.33c-10.06-4.43-21.74-4.43-31.81 0L14.81 230.15C5.81 234.08 0 243.13 0 253.21c0 10.08 5.81 19.13 14.77 23.04L114.5 320l-99.7 43.73C5.81 367.65 0 376.7 0 386.79c0 10.08 5.81 19.13 14.77 23.04l225.32 98.82c5.06 2.22 10.48 3.34 15.9 3.34s10.84-1.11 15.9-3.34l225.29-98.81c9-3.93 14.81-12.98 14.81-23.06 0-10.09-5.81-19.14-14.77-23.06l-99.72-43.75 99.69-43.73c9-3.91 14.81-12.96 14.81-23.03zm-45.19 133.57l-208.06 91.26c-1.81.78-3.74.78-5.48 0L45.23 386.78 156 338.2l84.1 36.89c5.06 2.22 10.48 3.34 15.9 3.34s10.84-1.11 15.9-3.34l84.12-36.9 110.79 48.59zm-208.07-42.31c-1.81.78-3.74.78-5.48 0L45.23 253.21l208.03-91.26c1.81-.78 3.74-.78 5.48 0l208.03 91.26-208.03 91.26zM504 64H296c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h208c4.42 0 8-3.58 8-8V72c0-4.42-3.58-8-8-8z\"]\n};\nvar faLayerPlus = {\n prefix: 'fal',\n iconName: 'layer-plus',\n icon: [512, 512, [], \"f5ff\", \"M504 96h-88V8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v88h-88c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h88v88c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-88h88c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-6.77 270.71l-99.72-42.87 99.72-42.87c8.35-3.6 12.19-13.23 8.58-21.52-3.65-8.29-13.32-12.13-21.74-8.48l-225.32 96.86c-1.81.77-3.74.77-5.48 0L45.23 258.4l193.45-83.16c8.35-3.59 12.19-13.23 8.58-21.52-3.65-8.28-13.26-12.13-21.74-8.48L14.81 235.81C5.81 239.66 0 248.52 0 258.4c0 9.87 5.81 18.74 14.77 22.58l99.73 42.87-99.7 42.85C5.81 370.55 0 379.42 0 389.31c0 9.87 5.81 18.74 14.77 22.58l225.32 96.84c5.06 2.17 10.48 3.28 15.9 3.28s10.84-1.09 15.9-3.28l225.29-96.83c9-3.85 14.81-12.72 14.81-22.59.01-9.89-5.8-18.76-14.76-22.6zM258.74 478.72c-1.81.77-3.74.77-5.48 0L45.23 389.29 156 341.68l84.1 36.15c5.06 2.17 10.48 3.28 15.9 3.28s10.84-1.09 15.9-3.28l84.12-36.16 110.78 47.62-208.06 89.43z\"]\n};\nvar faLeaf = {\n prefix: 'fal',\n iconName: 'leaf',\n icon: [576, 512, [], \"f06c\", \"M546.2 9.7c-2.9-6.5-8.6-9.7-14.3-9.7-5.3 0-10.7 2.8-14 8.5C486.9 62.4 431.4 96 368 96h-80C182 96 96 182 96 288c0 20.9 3.4 40.9 9.6 59.7C29.3 413 1.4 489.4.9 490.7c-2.9 8.3 1.5 17.5 9.8 20.4 7.9 2.8 17.4-1.1 20.4-9.8.4-1.2 23.9-65.1 87.6-122.7C151.1 438.9 214.7 480 288 480c6.9 0 13.7-.4 20.4-1.1C465.5 467.5 576 326.8 576 154.3c0-50.2-10.8-102.2-29.8-144.6zM305 447.1c-5.9.6-11.6.9-17 .9-63.3 0-117.6-37.2-143.5-90.6C196.3 319 268.6 288 368 288c8.8 0 16-7.2 16-16s-7.2-16-16-16c-102.8 0-179 31-234.8 70.4-3.1-12.4-5.2-25.1-5.2-38.4 0-88.2 71.8-160 160-160h80c63.3 0 121-28.4 159.7-77.2 10.5 32.3 16.3 68.7 16.3 103.5 0 159.6-100.1 282.7-239 292.8z\"]\n};\nvar faLeafHeart = {\n prefix: 'fal',\n iconName: 'leaf-heart',\n icon: [576, 512, [], \"f4cb\", \"M426.2 205.2c-13.9-11.6-47.7-28.5-90.2 14.5-42.6-43-76.4-26.1-90.2-14.5-27.5 23-28.9 64.2-4.3 89.1l84.7 85.6c5.4 5.5 14.3 5.6 19.8 0l84.7-85.6c24.5-24.9 23-66.1-4.5-89.1zm-18.4 66.6L336 344.4l-71.8-72.6c-10.2-10.3-12.3-30 2.1-42 13.7-11.5 31.2-3.4 38.4 3.7l31.4 31.7 31.4-31.7c7.1-7.2 24.6-15.2 38.4-3.7 14.2 12 12.2 31.6 1.9 42zM546.2 9.7c-2.9-6.5-8.6-9.7-14.3-9.7-5.3 0-10.7 2.8-14 8.5C486.9 62.4 431.4 96 368 96h-80C182 96 96 182 96 288c0 20.7 3.4 40.6 9.4 59.2C29.3 412.2 2 487.5.9 490.7c-2.9 8.3 1.5 17.4 9.8 20.4 7.6 2.7 17.3-.8 20.4-9.8.2-.7 24.2-65.4 87.5-122.9 15.5 29 75.2 112.6 189.8 100.5C465.5 467.6 576 326.8 576 154.3c0-50.2-10.8-102.2-29.8-144.6zM305 447.1c-97 10.2-177-66.4-177-159.1 0-88.2 71.8-160 160-160h80c63.3 0 121-28.4 159.7-77.2 10.5 32.3 16.3 68.7 16.3 103.5 0 159.6-100.1 282.7-239 292.8z\"]\n};\nvar faLeafMaple = {\n prefix: 'fal',\n iconName: 'leaf-maple',\n icon: [512, 512, [], \"f6f6\", \"M496.06 163.47l-27.34-16.41 8.44-75.97c2.14-19.5-13.61-38.41-36.25-36.27l-75.97 8.45-16.41-27.34C342.62 6.11 332.28.16 320.81 0c-10.59-.02-21.97 5.53-28.12 15.2l-42.91 67.45c-8.33-22.52-32.9-24.41-42.53-19.2l-13.81 7.41-35.09-39.72c-6.17-7.71-15.42-12.31-25.62-12.31-10.03 0-19.37 4.47-25.16 11.7L72 70.86l-13.81-7.41c-18.48-9.99-50.1 8.62-43.72 37.31l29.41 142.69-24 10.3c-26.45 11.34-26.45 49 0 60.34l108.79 46.62L4.69 484.69c-6.25 6.25-6.25 16.38 0 22.62C7.81 510.44 11.91 512 16 512s8.19-1.56 11.31-4.69l123.98-123.98 46.62 108.74c5.19 12.18 17.11 19.92 30.19 19.92 13.12 0 24.97-7.8 30.19-19.91l10.25-23.98L411 497.5c23.83 5.29 47.82-17.22 38.97-40l-8.84-17.5 39.75-35.09c16.65-13.35 16.07-38.02.34-50.97l-40.09-35.38 7.41-13.8c6.34-11.73 1.1-35.19-19.22-42.52l67.5-42.94c20.67-13.17 20.05-43.34-.76-55.83zM342.94 279.28c-15.25 9.71-5.02 33.47 12.56 29l62.78-14.8-17.34 32.3 60.43 53.51-60.43 53.49 17.78 33.12-169.32-34.42-22.06 48.02-51.68-120.54L331.3 203.32c6.25-6.25 6.25-16.38 0-22.62-6.25-6.25-16.37-6.25-22.62 0L153.16 336.21 32.5 283.16l48-20.58L46.87 93.69l32.31 17.36 54.66-59.33 52.41 59.33 33.41-17.95.16.47-16.09 62.94c-4.45 17.53 19.18 27.83 29 12.56L321.1 32.41l26.97 44.94 97.28-9.78-10.69 96.37 44.97 28.38-136.69 86.96z\"]\n};\nvar faLeafOak = {\n prefix: 'fal',\n iconName: 'leaf-oak',\n icon: [512, 512, [], \"f6f7\", \"M511.52 207.17c-4.14-37.69-37.21-54.28-44.63-58.83 14.26-48.71-4.46-75.76-16.31-86.93-11.18-11.85-38.21-30.57-86.93-16.31-4.55-7.41-21.14-40.48-58.83-44.63-46.25-5.04-64.93 30.95-85.61 67.47-27.94-22.58-51.06-18.94-58.25-17.53-73.71 14.56-55.51 117.73-54.29 129.09-34.93-9.76-74.01 11.67-74.01 65.41 0 38.62 28.68 72.88 21.39 92.19-13.25 36.77-11.6 70.13 3.85 94.38L4.69 484.69c-6.25 6.25-6.25 16.38 0 22.62C7.81 510.44 11.91 512 16 512s8.19-1.56 11.31-4.69l53.21-53.21c24.24 15.45 57.61 17.09 94.38 3.85 19.31-7.29 53.57 21.39 92.19 21.39 53.74 0 75.17-39.08 65.41-74.01 11.37 1.23 114.53 19.42 129.09-54.28 1.42-7.19 5.05-30.31-17.53-58.26 36.51-20.69 72.51-39.37 67.46-85.62zm-41.18 30.61c-5.96 6.43-12.2 10.09-75.13 45.99 23.41 28.45 22.54 27.29 25.54 31.12 21.12 27.08 4.55 45.26-10.47 53.84-24 13.73-40.15 8.24-139.22-1.97 0 0 26.31 37.53 27.06 38.86 16.36 28.49-10.66 48.05-44.53 40.27-15.59-3.58-31.98-12.57-50-17.59-37.01-10.42-70.39 16.78-99.94 2.68l227.66-227.66c6.25-6.25 6.25-16.38 0-22.62-6.25-6.25-16.38-6.25-22.63 0L81.02 408.35c-14.09-29.55 13.1-62.93 2.68-99.94-5.02-18.02-14-34.41-17.59-50-7.79-33.87 11.77-60.89 40.26-44.53 1.33.75 38.86 27.06 38.86 27.06-10.21-99.07-15.7-115.21-1.96-139.22 8.58-15.03 26.76-31.59 53.84-10.47 3.84 2.99 2.68 2.12 31.13 25.53 35.9-62.92 39.56-69.16 45.99-75.12 19.92-18.42 48.37-9 59.66 17.06 6.3 14.35 22.94 21.65 38.73 17.1 24.38-7.15 43.5-4.29 55.35 8.22 12.51 11.85 15.37 30.97 8.22 55.34-4.56 15.8 2.75 32.44 17.09 38.73 26.06 11.3 35.48 39.75 17.06 59.67z\"]\n};\nvar faLemon = {\n prefix: 'fal',\n iconName: 'lemon',\n icon: [512, 512, [], \"f094\", \"M489.038 22.963C473.784 7.709 454.948 0 437.954 0c-8.734 0-16.98 2.035-24.007 6.129-58.912 34.315-181.245-53.083-321.073 86.745C-46.948 232.697 40.441 355.041 6.129 413.945c-12.059 20.702-6.26 51.999 16.833 75.093 23.08 23.08 54.378 28.899 75.095 16.832 58.902-34.31 181.245 53.081 321.068-86.743C558.949 279.304 471.56 156.96 505.871 98.056c12.059-20.702 6.261-51.999-16.833-75.093zM478.22 81.95c-44.546 76.475 49.666 183.163-81.721 314.55-131.434 131.434-238.029 37.148-314.547 81.72-20.528 11.956-60.128-27.64-48.171-48.167 44.547-76.475-49.667-183.163 81.721-314.55C246.942-15.939 353.523 78.359 430.053 33.78c19.978-11.637 60.439 27.102 48.167 48.17zm-218.749 29.669c-31.89 7.086-64.973 26.511-93.157 54.694-28.184 28.185-47.608 61.268-54.694 93.157-1.657 7.457-8.271 12.533-15.604 12.533-1.149 0-2.316-.125-3.485-.385-8.626-1.917-14.065-10.464-12.148-19.09 8.391-37.756 30.872-76.41 63.306-108.843 32.433-32.434 71.087-54.915 108.843-63.306 8.628-1.919 17.173 3.522 19.09 12.148s-3.525 17.175-12.151 19.092z\"]\n};\nvar faLessThan = {\n prefix: 'fal',\n iconName: 'less-than',\n icon: [320, 512, [], \"f536\", \"M0 261.83c0 3.02 1.7 5.78 4.4 7.14l289.73 146.18c3.95 1.98 8.76.37 10.73-3.58l14.29-28.62c1.97-3.95.37-8.75-3.58-10.73L83.13 256l232.44-116.22c3.95-1.97 5.55-6.78 3.58-10.73l-14.29-28.62c-1.97-3.95-6.78-5.56-10.73-3.58L4.42 241.77A7.985 7.985 0 0 0 0 248.92v12.91z\"]\n};\nvar faLessThanEqual = {\n prefix: 'fal',\n iconName: 'less-than-equal',\n icon: [384, 512, [], \"f537\", \"M347.58 308.22L115.13 192 347.58 75.78c3.95-1.97 5.55-6.78 3.58-10.73l-14.29-28.62a7.986 7.986 0 0 0-10.73-3.58L36.4 179.02a7.992 7.992 0 0 0-4.4 7.14v12.91c0 3.03 1.71 5.8 4.42 7.15l289.71 144.92c3.95 1.98 8.76.38 10.73-3.58l14.29-28.62c1.98-3.94.38-8.74-3.57-10.72zM0 440v32c0 4.42 3.58 8 8 8h368c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8H8c-4.42 0-8 3.58-8 8z\"]\n};\nvar faLevelDown = {\n prefix: 'fal',\n iconName: 'level-down',\n icon: [256, 512, [], \"f149\", \"M252.478 408.503l-99.974 99.975c-4.697 4.697-12.311 4.697-17.008 0l-99.974-99.975c-4.696-4.697-4.696-12.311 0-17.008l8.503-8.503c4.697-4.697 12.311-4.697 17.007 0L126 447.959V36H24.024a11.996 11.996 0 0 1-8.485-3.515l-12-12C-4.021 12.926 1.333 0 12.024 0H138c13.255 0 24 10.745 24 24v423.959l64.967-64.966c4.697-4.697 12.311-4.697 17.007 0l8.503 8.503c4.697 4.696 4.697 12.31.001 17.007z\"]\n};\nvar faLevelDownAlt = {\n prefix: 'fal',\n iconName: 'level-down-alt',\n icon: [256, 512, [], \"f3be\", \"M216.01 384h-53.986V24c0-13.255-10.745-24-24-24h-118C9.333 0 3.979 12.926 11.539 20.485l12 12A12 12 0 0 0 32.024 36h94v348H72.037c-29.564 0-43.064 36.535-21.26 55.917l71.987 64c12.125 10.777 30.395 10.777 42.52 0l71.986-64C259.082 420.528 245.562 384 216.01 384zm.014 32l-72 64-72-64h144z\"]\n};\nvar faLevelUp = {\n prefix: 'fal',\n iconName: 'level-up',\n icon: [256, 512, [], \"f148\", \"M252.478 103.497L152.504 3.522c-4.697-4.697-12.311-4.697-17.008 0l-99.974 99.975c-4.696 4.697-4.696 12.311 0 17.008l8.503 8.503c4.697 4.697 12.311 4.697 17.007 0L126 64.041V476H24.024a11.996 11.996 0 0 0-8.485 3.515l-12 12C-4.021 499.074 1.333 512 12.024 512H138c13.255 0 24-10.745 24-24V64.041l64.967 64.966c4.697 4.697 12.311 4.697 17.007 0l8.503-8.503c4.697-4.696 4.697-12.31.001-17.007z\"]\n};\nvar faLevelUpAlt = {\n prefix: 'fal',\n iconName: 'level-up-alt',\n icon: [256, 512, [], \"f3bf\", \"M237.27 72.083l-71.986-64c-12.125-10.777-30.395-10.777-42.52 0l-71.987 64C28.973 91.465 42.473 128 72.037 128h53.987v348h-94a11.996 11.996 0 0 0-8.485 3.515l-12 12C3.979 499.074 9.333 512 20.024 512h118c13.255 0 24-10.745 24-24V128h53.986c29.552 0 43.072-36.528 21.26-55.917zM72.024 96l72-64 72 64h-144z\"]\n};\nvar faLifeRing = {\n prefix: 'fal',\n iconName: 'life-ring',\n icon: [512, 512, [], \"f1cd\", \"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm168.766 113.176l-62.885 62.885a128.711 128.711 0 0 0-33.941-33.941l62.885-62.885a217.323 217.323 0 0 1 33.941 33.941zM256 352c-52.935 0-96-43.065-96-96s43.065-96 96-96 96 43.065 96 96-43.065 96-96 96zM363.952 68.853l-66.14 66.14c-26.99-9.325-56.618-9.33-83.624 0l-66.139-66.14c66.716-38.524 149.23-38.499 215.903 0zM121.176 87.234l62.885 62.885a128.711 128.711 0 0 0-33.941 33.941l-62.885-62.885a217.323 217.323 0 0 1 33.941-33.941zm-52.323 60.814l66.139 66.14c-9.325 26.99-9.33 56.618 0 83.624l-66.139 66.14c-38.523-66.715-38.5-149.229 0-215.904zm18.381 242.776l62.885-62.885a128.711 128.711 0 0 0 33.941 33.941l-62.885 62.885a217.366 217.366 0 0 1-33.941-33.941zm60.814 52.323l66.139-66.14c26.99 9.325 56.618 9.33 83.624 0l66.14 66.14c-66.716 38.524-149.23 38.499-215.903 0zm242.776-18.381l-62.885-62.885a128.711 128.711 0 0 0 33.941-33.941l62.885 62.885a217.323 217.323 0 0 1-33.941 33.941zm52.323-60.814l-66.14-66.14c9.325-26.99 9.33-56.618 0-83.624l66.14-66.14c38.523 66.715 38.5 149.229 0 215.904z\"]\n};\nvar faLightCeiling = {\n prefix: 'fal',\n iconName: 'light-ceiling',\n icon: [512, 512, [], \"e016\", \"M272,192.74V0H240V192.74C117.11,200.21,17.4,292.62.32,411.64-2.43,430.83,13,448,32.56,448H177.62a80,80,0,0,0,156.76,0H479.44c19.56,0,35-17.18,32.24-36.37C494.6,292.62,394.89,200.21,272,192.74ZM256,480a48,48,0,0,1-45.24-32h90.48A48,48,0,0,1,256,480ZM32,416.18C47.72,306.62,144,224,256,224s208.28,82.61,223.44,192Z\"]\n};\nvar faLightSwitch = {\n prefix: 'fal',\n iconName: 'light-switch',\n icon: [384, 512, [], \"e017\", \"M256,96H128a32,32,0,0,0-32,32V384a32,32,0,0,0,32,32H256a32,32,0,0,0,32-32V128A32,32,0,0,0,256,96Zm0,288H128V272H256Zm0-144H128V128H256ZM320,0H64A64,64,0,0,0,0,64V448a64,64,0,0,0,64,64H320a64,64,0,0,0,64-64V64A64,64,0,0,0,320,0Zm32,448a32,32,0,0,1-32,32H214.38a23.7,23.7,0,0,0,1.61-8,24,24,0,0,0-48,0,23.47,23.47,0,0,0,1.62,8H64a32,32,0,0,1-32-32V64A32,32,0,0,1,64,32H169.61A23.47,23.47,0,0,0,168,40a24,24,0,0,0,48,0,23.7,23.7,0,0,0-1.61-8H320a32,32,0,0,1,32,32Z\"]\n};\nvar faLightSwitchOff = {\n prefix: 'fal',\n iconName: 'light-switch-off',\n icon: [384, 512, [], \"e018\", \"M256,96H128a32,32,0,0,0-32,32V384a32,32,0,0,0,32,32H256a32,32,0,0,0,32-32V128A32,32,0,0,0,256,96Zm0,288H128V272H256Zm0-144H128V128H256Zm-32,80H160v32h64ZM320,0H64A64,64,0,0,0,0,64V448a64,64,0,0,0,64,64H320a64,64,0,0,0,64-64V64A64,64,0,0,0,320,0Zm32,448a32,32,0,0,1-32,32H214.38a23.7,23.7,0,0,0,1.61-8,24,24,0,0,0-48,0,23.47,23.47,0,0,0,1.62,8H64a32,32,0,0,1-32-32V64A32,32,0,0,1,64,32H169.61A23.47,23.47,0,0,0,168,40a24,24,0,0,0,48,0,23.7,23.7,0,0,0-1.61-8H320a32,32,0,0,1,32,32Z\"]\n};\nvar faLightSwitchOn = {\n prefix: 'fal',\n iconName: 'light-switch-on',\n icon: [384, 512, [], \"e019\", \"M224,160H160v32h64ZM320,0H64A64,64,0,0,0,0,64V448a64,64,0,0,0,64,64H320a64,64,0,0,0,64-64V64A64,64,0,0,0,320,0Zm32,448a32,32,0,0,1-32,32H214.39a23.47,23.47,0,0,0,1.62-8,24,24,0,0,0-48,0,23.7,23.7,0,0,0,1.61,8H64a32,32,0,0,1-32-32V64A32,32,0,0,1,64,32H169.62A23.7,23.7,0,0,0,168,40a24,24,0,0,0,48,0,23.47,23.47,0,0,0-1.62-8H320a32,32,0,0,1,32,32ZM256,96H128a32,32,0,0,0-32,32V384a32,32,0,0,0,32,32H256a32,32,0,0,0,32-32V128A32,32,0,0,0,256,96Zm0,288H128V272H256Zm0-144H128V128H256Z\"]\n};\nvar faLightbulb = {\n prefix: 'fal',\n iconName: 'lightbulb',\n icon: [352, 512, [], \"f0eb\", \"M176 0C73.05 0-.12 83.54 0 176.24c.06 44.28 16.5 84.67 43.56 115.54C69.21 321.03 93.85 368.68 96 384l.06 75.18c0 3.15.94 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.84L256 384c2.26-15.72 26.99-63.19 52.44-92.22C335.55 260.85 352 220.37 352 176 352 78.8 273.2 0 176 0zm47.94 454.31L206.85 480h-61.71l-17.09-25.69-.01-6.31h95.9v6.31zm.04-38.31h-95.97l-.07-32h96.08l-.04 32zm60.4-145.32c-13.99 15.96-36.33 48.1-50.58 81.31H118.21c-14.26-33.22-36.59-65.35-50.58-81.31C44.5 244.3 32.13 210.85 32.05 176 31.87 99.01 92.43 32 176 32c79.4 0 144 64.6 144 144 0 34.85-12.65 68.48-35.62 94.68zM176 64c-61.75 0-112 50.25-112 112 0 8.84 7.16 16 16 16s16-7.16 16-16c0-44.11 35.88-80 80-80 8.84 0 16-7.16 16-16s-7.16-16-16-16z\"]\n};\nvar faLightbulbDollar = {\n prefix: 'fal',\n iconName: 'lightbulb-dollar',\n icon: [352, 512, [], \"f670\", \"M203.09 183.42l-45-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.35V96c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v16.12c-23.62.63-42.67 20.55-42.67 45.07 0 19.97 12.98 37.81 31.58 43.39l45 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.11c-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.35V288c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16.12c23.62-.63 42.67-20.54 42.67-45.07 0-19.97-12.98-37.81-31.58-43.39zM176 0C73.05 0-.12 83.54 0 176.24c.06 44.28 16.5 84.67 43.56 115.54C69.21 321.03 93.85 368.68 96 384l.06 75.18c0 3.15.94 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.84L256 384c2.26-15.72 26.99-63.19 52.44-92.22C335.55 260.85 352 220.37 352 176 352 78.8 273.2 0 176 0zm47.94 454.31L206.85 480h-61.71l-17.09-25.69-.01-6.31h95.9v6.31zm.04-38.31h-95.97l-.07-32h96.08l-.04 32zm60.4-145.32c-13.99 15.96-36.33 48.1-50.58 81.31H118.21c-14.26-33.22-36.59-65.35-50.58-81.31C44.5 244.3 32.13 210.85 32.05 176 31.87 99.01 92.43 32 176 32c79.4 0 144 64.6 144 144 0 34.85-12.65 68.48-35.62 94.68z\"]\n};\nvar faLightbulbExclamation = {\n prefix: 'fal',\n iconName: 'lightbulb-exclamation',\n icon: [352, 512, [], \"f671\", \"M176 248c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm-16.47-31.5c.26 4.22 3.76 7.5 7.98 7.5h16.97a8 8 0 0 0 7.98-7.5l7-112c.29-4.61-3.37-8.5-7.98-8.5h-30.97c-4.61 0-8.27 3.89-7.98 8.5l7 112zM176 0C73.05 0-.12 83.54 0 176.24c.06 44.28 16.5 84.67 43.56 115.54C69.21 321.03 93.85 368.68 96 384l.06 75.18c0 3.15.94 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.84L256 384c2.26-15.72 26.99-63.19 52.44-92.22C335.55 260.85 352 220.37 352 176 352 78.8 273.2 0 176 0zm47.94 454.31L206.85 480h-61.71l-17.09-25.69-.01-6.31h95.9v6.31zm.04-38.31h-95.97l-.07-32h96.08l-.04 32zm60.4-145.32c-13.99 15.96-36.33 48.1-50.58 81.31H118.21c-14.26-33.22-36.59-65.35-50.58-81.31C44.5 244.3 32.13 210.85 32.05 176 31.87 99.01 92.43 32 176 32c79.4 0 144 64.6 144 144 0 34.85-12.65 68.48-35.62 94.68z\"]\n};\nvar faLightbulbOn = {\n prefix: 'fal',\n iconName: 'lightbulb-on',\n icon: [640, 512, [], \"f672\", \"M320,64A112.14,112.14,0,0,0,208,176a16,16,0,0,0,32,0,80.09,80.09,0,0,1,80-80,16,16,0,0,0,0-32Zm0-64C217.06,0,143.88,83.55,144,176.23a175,175,0,0,0,43.56,115.55C213.22,321,237.84,368.69,240,384l.06,75.19a15.88,15.88,0,0,0,2.69,8.83l24.5,36.84A16,16,0,0,0,280.56,512h78.85a16,16,0,0,0,13.34-7.14L397.25,468a16.17,16.17,0,0,0,2.69-8.83L400,384c2.25-15.72,27-63.19,52.44-92.22A175.9,175.9,0,0,0,320,0Zm47.94,454.31L350.84,480H289.12l-17.06-25.69,0-6.31h95.91ZM368,416H272l-.06-32H368Zm60.41-145.31c-14,15.95-36.32,48.09-50.57,81.29H262.22c-14.28-33.21-36.6-65.34-50.6-81.29A143.47,143.47,0,0,1,176.06,176C175.88,99,236.44,32,320,32c79.41,0,144,64.59,144,144A143.69,143.69,0,0,1,428.38,270.69ZM96,176a16,16,0,0,0-16-16H16a16,16,0,0,0,0,32H80A16,16,0,0,0,96,176ZM528,64a16.17,16.17,0,0,0,7.16-1.69l64-32A16,16,0,0,0,584.84,1.69l-64,32A16,16,0,0,0,528,64Zm96,96H560a16,16,0,0,0,0,32h64a16,16,0,0,0,0-32ZM119.16,33.69l-64-32A16,16,0,0,0,40.84,30.31l64,32A16.17,16.17,0,0,0,112,64a16,16,0,0,0,7.16-30.31Zm480,288-64-32a16,16,0,0,0-14.32,28.63l64,32a16,16,0,0,0,14.32-28.63ZM112,288a16.17,16.17,0,0,0-7.16,1.69l-64,32a16,16,0,0,0,14.32,28.63l64-32A16,16,0,0,0,112,288Z\"]\n};\nvar faLightbulbSlash = {\n prefix: 'fal',\n iconName: 'lightbulb-slash',\n icon: [640, 512, [], \"f673\", \"M224 119.3l25.4 20C262.7 113.7 289.2 96 320 96c8.8 0 16-7.2 16-16s-7.2-16-16-16c-41 0-76.5 22.4-96 55.3zM320 32c79.4 0 144 64.6 144 144 0 59.1-35.3 94.4-40.3 100.5l25 19.7c2.9-3.5 47.3-47.1 47.3-120.3C496 78.8 417.2 0 320 0c-75.1 0-123.2 43.4-146.9 79.2L198.3 99c19.2-30.3 58.8-67 121.7-67zm317 453.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zM262.2 352c-14.3-33.2-36.6-65.4-50.6-81.3-16.2-18.5-27-40.6-32.1-64.2l-35.3-27.8c.7 43.3 16.8 82.8 43.3 113.1 25.7 29.3 50.3 76.9 52.4 92.2l.1 75.2c0 3.1.9 6.2 2.7 8.8l24.5 36.8c3 4.5 8 7.1 13.3 7.1h78.9c5.4 0 10.4-2.7 13.3-7.1l24.5-36.8c1.7-2.6 2.7-5.7 2.7-8.8l.1-75.2c.1-.4.9-2.6 1-3.1L364.3 352zm105.7 102.3l-17 25.7h-61.7l-17.1-25.7V448H368v6.3zm.1-38.3h-96l-.1-32H368z\"]\n};\nvar faLightsHoliday = {\n prefix: 'fal',\n iconName: 'lights-holiday',\n icon: [640, 512, [], \"f7b2\", \"M638.3 77l-4.1-7c-3.4-5.7-10.6-7.6-16.5-4.4-83.2 46-188.4 71.3-297.8 71.3S105.4 111.6 22.2 65.6C16.4 62.3 9.1 64.2 5.8 70l-4.1 7C-1.7 82.9.2 90.5 6.2 93.8c44.5 24.7 94.9 43.6 148.6 56.4l-9.7 23.1-7.4-3.1c-12.2-5.1-26.3.6-31.4 12.8l-21.6 51.4c-18.2 5.5-34.4 19.8-45.4 45.9-20.6 48.9 7.9 129.6 21.2 135.2 13.3 5.6 90.9-30.4 111.5-79.3 11-26.1 9.9-47.6 1.1-64.5l21.6-51.4c5.1-12.2-.6-26.3-12.8-31.4l-7.4-3.1 12.2-28.9c38 7.1 77.3 11.1 117.3 12V192h-8c-13.2 0-24 10.8-24 24v55.8c-14.6 12.2-24 31.6-24 59.9 0 53 57.6 116.4 72 116.4s72-63.3 72-116.4c0-28.3-9.4-47.7-24-59.9V216c0-13.2-10.8-24-24-24h-8v-23.2c40-.9 79.3-4.8 117.3-12l12.2 28.9-7.4 3.1c-12.2 5.1-17.9 19.2-12.8 31.4l21.6 51.4c-8.8 16.9-9.9 38.4 1.1 64.5 20.6 48.9 98.2 84.9 111.5 79.3 13.3-5.6 41.8-86.3 21.2-135.2-11-26.1-27.2-40.3-45.4-45.9L533.8 183c-5.1-12.2-19.2-17.9-31.4-12.8l-7.4 3.1-9.7-23.1c53.8-12.8 104.1-31.8 148.6-56.4 5.9-3.4 7.8-11 4.4-16.8zM142.5 323.7c-10.5 25-46.3 47.6-67.2 56.4-8.3-21.2-17.1-62.5-6.6-87.5 11.6-27.4 28.6-35.3 53.8-24.7s31.5 28.4 20 55.8zm6.6-77.7c-4.4-2.8-9.1-5.4-14.2-7.5-5.1-2.1-10.2-3.7-15.3-4.9l13-30.8 29.5 12.4-13 30.8zm422.2 46.7c10.5 25 1.7 66.3-6.6 87.5-20.9-8.9-56.6-31.4-67.2-56.4-11.6-27.4-5.2-45.1 19.9-55.7 25.2-10.7 42.3-2.9 53.9 24.6zm-63.9-89.9l13 30.8c-5.1 1.2-10.2 2.7-15.3 4.9-5.1 2.1-9.8 4.7-14.2 7.5l-13-30.8 29.5-12.4zM304 224h32v33.4c-5.2-.9-10.5-1.4-16-1.4s-10.8.5-16 1.4V224zm56 107.6c0 27.1-24.2 61.8-40 78.1-15.8-16.3-40-51-40-78.1 0-29.8 12.7-43.6 40-43.6s40 13.9 40 43.6z\"]\n};\nvar faLineColumns = {\n prefix: 'fal',\n iconName: 'line-columns',\n icon: [512, 512, [], \"f870\", \"M504 304H296a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h208a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0 128H296a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h208a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-256H296a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h208a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-128H296a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h208a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8zM216 432H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h208a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-128H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h208a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-256H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h208a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8zm0 128H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h208a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faLineHeight = {\n prefix: 'fal',\n iconName: 'line-height',\n icon: [640, 512, [], \"f871\", \"M175 144c14.31 0 21.33-17.31 11.31-27.31l-80-80a16 16 0 0 0-22.63 0l-80 80C-5.64 126-.64 144 15 144h64v224H15C.71 368-6.31 385.31 3.71 395.31l80 80a16 16 0 0 0 22.63 0l80-80C195.65 386 190.65 368 175 368h-64V144zm-38.62 256L95 441.37 53.65 400h82.73zM79 112H53.63L95 70.63 136.36 112H79zm552 128H263a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0 128H263a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-256H263a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faLink = {\n prefix: 'fal',\n iconName: 'link',\n icon: [512, 512, [], \"f0c1\", \"M301.148 394.702l-79.2 79.19c-50.778 50.799-133.037 50.824-183.84 0-50.799-50.778-50.824-133.037 0-183.84l79.19-79.2a132.833 132.833 0 0 1 3.532-3.403c7.55-7.005 19.795-2.004 20.208 8.286.193 4.807.598 9.607 1.216 14.384.481 3.717-.746 7.447-3.397 10.096-16.48 16.469-75.142 75.128-75.3 75.286-36.738 36.759-36.731 96.188 0 132.94 36.759 36.738 96.188 36.731 132.94 0l79.2-79.2.36-.36c36.301-36.672 36.14-96.07-.37-132.58-8.214-8.214-17.577-14.58-27.585-19.109-4.566-2.066-7.426-6.667-7.134-11.67a62.197 62.197 0 0 1 2.826-15.259c2.103-6.601 9.531-9.961 15.919-7.28 15.073 6.324 29.187 15.62 41.435 27.868 50.688 50.689 50.679 133.17 0 183.851zm-90.296-93.554c12.248 12.248 26.362 21.544 41.435 27.868 6.388 2.68 13.816-.68 15.919-7.28a62.197 62.197 0 0 0 2.826-15.259c.292-5.003-2.569-9.604-7.134-11.67-10.008-4.528-19.371-10.894-27.585-19.109-36.51-36.51-36.671-95.908-.37-132.58l.36-.36 79.2-79.2c36.752-36.731 96.181-36.738 132.94 0 36.731 36.752 36.738 96.181 0 132.94-.157.157-58.819 58.817-75.3 75.286-2.651 2.65-3.878 6.379-3.397 10.096a163.156 163.156 0 0 1 1.216 14.384c.413 10.291 12.659 15.291 20.208 8.286a131.324 131.324 0 0 0 3.532-3.403l79.19-79.2c50.824-50.803 50.799-133.062 0-183.84-50.802-50.824-133.062-50.799-183.84 0l-79.2 79.19c-50.679 50.682-50.688 133.163 0 183.851z\"]\n};\nvar faLips = {\n prefix: 'fal',\n iconName: 'lips',\n icon: [640, 512, [], \"f600\", \"M545.25 219c-17.56-7.56-65.56-25.33-131.97-26.89-29.09-.26-43.57 13.79-93.28 13.79-49.64 0-64.6-14.04-93.28-13.79-66.41 1.56-114.41 19.33-131.97 26.89-6.13 2.62-10.53 8.09-11.72 14.62-1.22 6.53.94 13.22 5.78 17.89 115.97 113.38 347.91 111.91 462.38 0 4.84-4.67 7-11.36 5.78-17.89-1.19-6.53-5.59-12-11.72-14.62zM320 304c-100.16 0-164.34-38.81-194.19-62.55 91.6-30.58 135.94-10.52 137.28-10.19 17.59 4.41 37.25 6.61 56.91 6.61s39.31-2.21 56.91-6.61c1.34-.33 45.68-20.39 137.28 10.19C484.34 265.19 420.16 304 320 304zm311.14-108.32C579.47 109.99 466.31 32 417.72 32c0 0-32.57 0-97.72 50-65.15-50-97.72-50-97.72-50-48.59 0-161.75 77.99-213.42 163.68-10.32 17.11-11.63 37.99-3.89 56.38C32.95 318.51 117.59 480 279.28 480h81.43c161.69 0 246.33-161.49 274.32-227.95 7.74-18.38 6.43-39.26-3.89-56.37zm-25.6 43.95C579.16 302.28 502.49 448 360.72 448h-81.43C137.51 448 60.84 302.28 34.46 239.63c-3.85-9.15-3.19-19.14 1.8-27.43 48.4-80.28 151.23-146.83 184.99-148.18 27.32 4.25 64.82 32.28 98.74 58.31 33.92-26.04 71.42-54.07 98.74-58.31 33.77 1.35 136.59 67.9 184.99 148.18 5.01 8.29 5.67 18.29 1.82 27.43z\"]\n};\nvar faLiraSign = {\n prefix: 'fal',\n iconName: 'lira-sign',\n icon: [384, 512, [], \"f195\", \"M371.994 255.681h-16.255c-6.398 0-11.706 5.02-11.983 11.412-4.877 112.517-82.255 173.397-188.949 173.397h-46.834V240.396l170.631-37.918a12 12 0 0 0 9.397-11.714v-8.195c0-7.677-7.109-13.38-14.603-11.714l-165.425 36.761v-47.219l170.631-37.918a12 12 0 0 0 9.397-11.714v-8.195c0-7.677-7.109-13.38-14.603-11.714l-165.425 36.761V44c0-6.627-5.373-12-12-12H76c-6.627 0-12 5.373-12 12v93.387L9.397 149.521A12 12 0 0 0 0 161.235v8.196c0 7.677 7.109 13.379 14.603 11.714L64 170.168v47.219L9.397 229.521A12 12 0 0 0 0 241.235v8.195c0 7.677 7.109 13.38 14.603 11.714L64 250.168V468c0 6.627 5.373 12 12 12h83.268c130.519 0 219.608-76.854 224.724-211.914.256-6.78-5.213-12.405-11.998-12.405z\"]\n};\nvar faList = {\n prefix: 'fal',\n iconName: 'list',\n icon: [512, 512, [], \"f03a\", \"M88 56H40a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h48a16 16 0 0 0 16-16V72a16 16 0 0 0-16-16zm0 160H40a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h48a16 16 0 0 0 16-16v-48a16 16 0 0 0-16-16zm0 160H40a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h48a16 16 0 0 0 16-16v-48a16 16 0 0 0-16-16zm416 24H168a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h336a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-320H168a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h336a8 8 0 0 0 8-8V88a8 8 0 0 0-8-8zm0 160H168a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h336a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faListAlt = {\n prefix: 'fal',\n iconName: 'list-alt',\n icon: [512, 512, [], \"f022\", \"M464 64c8.823 0 16 7.178 16 16v352c0 8.822-7.177 16-16 16H48c-8.823 0-16-7.178-16-16V80c0-8.822 7.177-16 16-16h416m0-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-336 96c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0 96c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0 96c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm288-148v-24a6 6 0 0 0-6-6H198a6 6 0 0 0-6 6v24a6 6 0 0 0 6 6h212a6 6 0 0 0 6-6zm0 96v-24a6 6 0 0 0-6-6H198a6 6 0 0 0-6 6v24a6 6 0 0 0 6 6h212a6 6 0 0 0 6-6zm0 96v-24a6 6 0 0 0-6-6H198a6 6 0 0 0-6 6v24a6 6 0 0 0 6 6h212a6 6 0 0 0 6-6z\"]\n};\nvar faListMusic = {\n prefix: 'fal',\n iconName: 'list-music',\n icon: [512, 512, [], \"f8c9\", \"M8 224h272a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm152 104a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h144a8 8 0 0 0 8-8zM8 96h272a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zM470 1.64l-96.59 31.88C360.72 37.74 352 50 352 64v312.13C331.66 361.28 303.38 352 272 352c-61.86 0-112 35.82-112 80s50.14 80 112 80 112-35.82 112-80V192l106.12-35.37A32 32 0 0 0 512 126.27V32a32 32 0 0 0-42-30.36zM272 480c-47.14 0-80-25.3-80-48s32.86-48 80-48 80 25.3 80 48-32.86 48-80 48zm208-353.72l-96 32V64h-.56v-.13L480 32z\"]\n};\nvar faListOl = {\n prefix: 'fal',\n iconName: 'list-ol',\n icon: [512, 512, [], \"f0cb\", \"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.84a154.82 154.82 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.3 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.73 6.13-3.2 11.72 2.62 15.94 7.71 4.69 20.39 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.88zM12.1 320H80a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H41.33c3.28-10.29 48.33-18.68 48.33-56.44 0-29.06-25-39.56-44.47-39.56-21.36 0-33.8 10-40.45 18.75-4.38 5.59-3 10.84 2.79 15.37l8.58 6.88c5.61 4.56 11 2.47 16.13-2.44a13.4 13.4 0 0 1 9.45-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.1 320zM16 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 8zm488-80H168a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h336a8 8 0 0 0 8-8V88a8 8 0 0 0-8-8zm0 320H168a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h336a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-160H168a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h336a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faListUl = {\n prefix: 'fal',\n iconName: 'list-ul',\n icon: [512, 512, [], \"f0ca\", \"M32.39 224C14.73 224 0 238.33 0 256s14.73 32 32.39 32a32 32 0 0 0 0-64zm0-160C14.73 64 0 78.33 0 96s14.73 32 32.39 32a32 32 0 0 0 0-64zm0 320C14.73 384 0 398.33 0 416s14.73 32 32.39 32a32 32 0 0 0 0-64zM504 80H136a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8V88a8 8 0 0 0-8-8zm0 160H136a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0 160H136a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faLocation = {\n prefix: 'fal',\n iconName: 'location',\n icon: [512, 512, [], \"f601\", \"M504 240h-56.81C439.48 146.76 365.24 72.52 272 64.81V8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v56.81C146.76 72.52 72.52 146.76 64.81 240H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56.81c7.71 93.24 81.95 167.48 175.19 175.19V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56.81c93.24-7.71 167.48-81.95 175.19-175.19H504c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM256 416c-88.22 0-160-71.78-160-160S167.78 96 256 96s160 71.78 160 160-71.78 160-160 160zm0-256c-53.02 0-96 42.98-96 96s42.98 96 96 96 96-42.98 96-96-42.98-96-96-96zm0 160c-35.29 0-64-28.71-64-64s28.71-64 64-64 64 28.71 64 64-28.71 64-64 64z\"]\n};\nvar faLocationArrow = {\n prefix: 'fal',\n iconName: 'location-arrow',\n icon: [512, 512, [], \"f124\", \"M461.9 0c-5.73 0-11.59 1.1-17.39 3.52L28.74 195.41c-47.97 22.39-31.98 92.75 19.19 92.75h175.91v175.91c0 30.01 24.21 47.93 48.74 47.93 17.3 0 34.75-8.9 44.01-28.74l191.9-415.78C522.06 34.89 494.14 0 461.9 0zm17.55 54.08L287.6 469.74c-3.18 6.82-8.24 10.28-15.03 10.28-5.8 0-16.76-3.33-16.76-15.94v-207.9H47.93c-11.45 0-14.64-8.83-15.49-12.63-1.1-4.93-1.27-13.98 9.7-19.1L456.82 33.04c1.71-.71 3.37-1.05 5.09-1.05 5.42 0 11.49 3.65 15.11 9.08 2.19 3.29 4.32 8.41 2.43 13.01z\"]\n};\nvar faLocationCircle = {\n prefix: 'fal',\n iconName: 'location-circle',\n icon: [496, 512, [], \"f602\", \"M307.75 147l-181.94 84c-16.38 7.64-24.78 24.53-20.91 42.05 3.88 17.36 18.34 29.03 36.06 29.03h60.97v60.95c0 17.72 11.66 32.22 29.03 36.06 2.84.62 5.69.94 8.44.94 14.31 0 27.22-8.14 33.62-21.91L357 196.22l.25-.55c5.69-13.64 2.34-29.48-8.5-40.34-10.91-10.92-26.72-14.27-41-8.33zM244 364.67c-1.28 2.72-3.28 3.89-6.12 3.17-2.59-.58-3.94-2.2-3.94-4.81v-92.95h-92.97c-2.59 0-4.22-1.33-4.81-3.97-.62-2.78.44-4.84 3.12-6.08l181.31-83.72c.53-.22 1-.3 1.5-.3 1.91 0 3.47 1.39 4 1.92.62.62 2.56 2.83 1.69 5.25L244 364.67zM248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216z\"]\n};\nvar faLocationSlash = {\n prefix: 'fal',\n iconName: 'location-slash',\n icon: [640, 512, [], \"f603\", \"M284.5 167l32.2 25.4c1.1-.1 2.1-.3 3.3-.3 31.3 0 57.3 22.6 62.8 52.4l31.8 25.1c.6-4.4 1.4-8.8 1.4-13.4 0-53-43-96-96-96-12.6-.2-24.5 2.4-35.5 6.8zM320 96c88.2 0 160 71.8 160 160 0 19.9-4.1 38.8-10.8 56.4l26.2 20.6c8.3-19 14-39.4 15.8-61H568c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-56.8c-7.7-93.2-82-167.5-175.2-175.2V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56.8c-37.5 3.1-71.6 17.3-99.9 38.8l25.8 20.3C255.6 106.4 286.6 96 320 96zm0 320c-88.2 0-160-71.8-160-160 0-19.9 4.1-38.8 10.8-56.4L144.6 179c-8.3 19-14 39.4-15.8 61H72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h56.8c7.7 93.2 82 167.5 175.2 175.2V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-56.8c37.5-3.1 71.6-17.3 99.9-38.9L410.1 388c-25.7 17.6-56.7 28-90.1 28zm317 69.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zM355.5 345l-32.2-25.4c-1.1.1-2.1.3-3.3.3-31.3 0-57.3-22.6-62.8-52.4l-31.8-25.1c-.6 4.4-1.4 8.8-1.4 13.4 0 53 43 96 96 96 12.6.2 24.5-2.4 35.5-6.8z\"]\n};\nvar faLock = {\n prefix: 'fal',\n iconName: 'lock',\n icon: [448, 512, [], \"f023\", \"M400 224h-16v-62.5C384 73.1 312.9.3 224.5 0 136-.3 64 71.6 64 160v64H48c-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-48zM96 160c0-70.6 57.4-128 128-128s128 57.4 128 128v64H96v-64zm304 320H48c-8.8 0-16-7.2-16-16V272c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v192c0 8.8-7.2 16-16 16z\"]\n};\nvar faLockAlt = {\n prefix: 'fal',\n iconName: 'lock-alt',\n icon: [448, 512, [], \"f30d\", \"M224 420c-11 0-20-9-20-20v-64c0-11 9-20 20-20s20 9 20 20v64c0 11-9 20-20 20zm224-148v192c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V272c0-26.5 21.5-48 48-48h16v-64C64 71.6 136-.3 224.5 0 312.9.3 384 73.1 384 161.5V224h16c26.5 0 48 21.5 48 48zM96 224h256v-64c0-70.6-57.4-128-128-128S96 89.4 96 160v64zm320 240V272c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v192c0 8.8 7.2 16 16 16h352c8.8 0 16-7.2 16-16z\"]\n};\nvar faLockOpen = {\n prefix: 'fal',\n iconName: 'lock-open',\n icon: [640, 512, [], \"f3c1\", \"M480.5 0C392-.3 320 71.6 320 160v64H48c-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-62.6c0-70.7 56.7-129 127.3-129.4C550.2 31.6 608 89.2 608 160v84c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-82.5C640 73.1 568.9.3 480.5 0zM400 256c8.8 0 16 7.2 16 16v192c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V272c0-8.8 7.2-16 16-16h352z\"]\n};\nvar faLockOpenAlt = {\n prefix: 'fal',\n iconName: 'lock-open-alt',\n icon: [640, 512, [], \"f3c2\", \"M227 417c-11 0-20-9-20-20v-64c0-11 9-20 20-20s20 9 20 20v64c0 11-9 20-20 20zM480.5 0C392-.3 320 71.6 320 160v64H48c-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-62.6c0-70.7 56.7-129 127.3-129.4C550.2 31.6 608 89.2 608 160v84c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-82.5C640 73.1 568.9.3 480.5 0zM400 256c8.8 0 16 7.2 16 16v192c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V272c0-8.8 7.2-16 16-16h352z\"]\n};\nvar faLongArrowAltDown = {\n prefix: 'fal',\n iconName: 'long-arrow-alt-down',\n icon: [256, 512, [], \"f309\", \"M223.351 320H145V44c0-6.627-5.373-12-12-12h-10c-6.627 0-12 5.373-12 12v276H32.652c-29.388 0-43.268 34.591-23.231 54.627l95.952 96c12.497 12.496 32.757 12.497 45.255 0l95.955-96C266.56 354.65 252.85 320 223.351 320zM128 448l-96-96h192l-96 96z\"]\n};\nvar faLongArrowAltLeft = {\n prefix: 'fal',\n iconName: 'long-arrow-alt-left',\n icon: [448, 512, [], \"f30a\", \"M160 351.351V273h276c6.627 0 12-5.373 12-12v-10c0-6.627-5.373-12-12-12H160v-78.348c0-29.388-34.591-43.268-54.627-23.231l-96 95.952c-12.496 12.497-12.497 32.757 0 45.255l96 95.955C125.35 394.56 160 380.85 160 351.351zM32 256l96-96v192l-96-96z\"]\n};\nvar faLongArrowAltRight = {\n prefix: 'fal',\n iconName: 'long-arrow-alt-right',\n icon: [448, 512, [], \"f30b\", \"M288 160.649V239H12c-6.627 0-12 5.373-12 12v10c0 6.627 5.373 12 12 12h276v78.348c0 29.388 34.591 43.268 54.627 23.231l96-95.952c12.496-12.497 12.497-32.757 0-45.255l-96-95.955C322.65 117.44 288 131.15 288 160.649zM416 256l-96 96V160l96 96z\"]\n};\nvar faLongArrowAltUp = {\n prefix: 'fal',\n iconName: 'long-arrow-alt-up',\n icon: [256, 512, [], \"f30c\", \"M32.649 192H111v276c0 6.627 5.373 12 12 12h10c6.627 0 12-5.373 12-12V192h78.348c29.388 0 43.268-34.591 23.231-54.627l-95.952-96c-12.497-12.496-32.757-12.497-45.255 0l-95.955 96C-10.56 157.35 3.15 192 32.649 192zM128 64l96 96H32l96-96z\"]\n};\nvar faLongArrowDown = {\n prefix: 'fal',\n iconName: 'long-arrow-down',\n icon: [256, 512, [], \"f175\", \"M252.485 343.03l-7.07-7.071c-4.686-4.686-12.284-4.686-16.971 0L145 419.887V44c0-6.627-5.373-12-12-12h-10c-6.627 0-12 5.373-12 12v375.887l-83.444-83.928c-4.686-4.686-12.284-4.686-16.971 0l-7.07 7.071c-4.686 4.686-4.686 12.284 0 16.97l116 116.485c4.686 4.686 12.284 4.686 16.971 0l116-116.485c4.686-4.686 4.686-12.284-.001-16.97z\"]\n};\nvar faLongArrowLeft = {\n prefix: 'fal',\n iconName: 'long-arrow-left',\n icon: [448, 512, [], \"f177\", \"M136.97 380.485l7.071-7.07c4.686-4.686 4.686-12.284 0-16.971L60.113 273H436c6.627 0 12-5.373 12-12v-10c0-6.627-5.373-12-12-12H60.113l83.928-83.444c4.686-4.686 4.686-12.284 0-16.971l-7.071-7.07c-4.686-4.686-12.284-4.686-16.97 0l-116.485 116c-4.686 4.686-4.686 12.284 0 16.971l116.485 116c4.686 4.686 12.284 4.686 16.97-.001z\"]\n};\nvar faLongArrowRight = {\n prefix: 'fal',\n iconName: 'long-arrow-right',\n icon: [448, 512, [], \"f178\", \"M311.03 131.515l-7.071 7.07c-4.686 4.686-4.686 12.284 0 16.971L387.887 239H12c-6.627 0-12 5.373-12 12v10c0 6.627 5.373 12 12 12h375.887l-83.928 83.444c-4.686 4.686-4.686 12.284 0 16.971l7.071 7.07c4.686 4.686 12.284 4.686 16.97 0l116.485-116c4.686-4.686 4.686-12.284 0-16.971L328 131.515c-4.686-4.687-12.284-4.687-16.97 0z\"]\n};\nvar faLongArrowUp = {\n prefix: 'fal',\n iconName: 'long-arrow-up',\n icon: [256, 512, [], \"f176\", \"M3.515 168.97l7.07 7.071c4.686 4.686 12.284 4.686 16.971 0L111 92.113V468c0 6.627 5.373 12 12 12h10c6.627 0 12-5.373 12-12V92.113l83.444 83.928c4.686 4.686 12.284 4.686 16.971 0l7.07-7.071c4.686-4.686 4.686-12.284 0-16.97l-116-116.485c-4.686-4.686-12.284-4.686-16.971 0L3.515 152c-4.687 4.686-4.687 12.284 0 16.97z\"]\n};\nvar faLoveseat = {\n prefix: 'fal',\n iconName: 'loveseat',\n icon: [512, 512, [], \"f4cc\", \"M448 193.9v-33.7c0-53.1-43-96.2-96-96.2H160c-53 0-96 43.1-96 96.2v33.7c-36.5 7.5-64 39.8-64 78.6 0 25.1 12.1 48.8 32 63.8v79.6c0 17.7 14.3 32.1 32 32.1h64c17.3 0 31.3-14.7 31.8-32h192.4c.5 17.3 14.5 32 31.8 32h64c17.7 0 32-14.4 32-32.1v-79.6c19.9-15.1 32-38.7 32-63.8 0-38.7-27.5-71.1-64-78.6zm-320 222H64v-97.4c-17.1-10-32-21.1-32-46 0-26.5 21.5-48.1 48-48.1h32c8.8 0 16 7.2 16 16v175.5zM352 384H160v-95.5h192V384zm0-143.6V256H160v-15.6c0-26.5-21.5-48.1-48-48.1H96v-32.1c0-35.4 28.7-64.1 64-64.1h192c35.3 0 64 28.8 64 64.1v32.1h-16c-26.5 0-48 21.6-48 48.1zm96 78.1v97.4h-64V240.4c0-8.8 7.2-16 16-16h32c26.5 0 48 21.6 48 48.1 0 23.9-13.9 35.4-32 46z\"]\n};\nvar faLowVision = {\n prefix: 'fal',\n iconName: 'low-vision',\n icon: [576, 512, [], \"f2a8\", \"M569.348 231.63C512.998 135.99 407.86 72 288 72c-36.303 0-71.26 5.877-103.93 16.722L121.889 4.913c-4-5.391-11.612-6.519-17.003-2.519l-6.507 4.828c-5.391 4-6.519 11.613-2.519 17.004l56.926 76.726C91.489 128.594 40.334 174.447 6.637 231.631c-8.979 15.238-8.719 33.949.004 48.739 30.605 51.943 75.611 94.537 129.537 122.627C29.589 259.268 39.873 273.724 34.215 264.124a16.006 16.006 0 0 1 0-16.247 287.008 287.008 0 0 1 16.929-25.491L204.72 429.39c15 3.91 30.42 6.78 46.18 8.54L72.243 197.124a293.367 293.367 0 0 1 33.449-30.602L308.14 439.39c12.42-.74 24.66-2.18 36.68-4.27L131.942 148.202a293.06 293.06 0 0 1 7.594-4.553 292.057 292.057 0 0 1 32.824-16.313l281.751 379.751c4 5.391 11.612 6.519 17.003 2.519l6.507-4.828c5.391-4 6.519-11.613 2.519-17.004l-56.917-76.714c61.284-27.629 112.419-73.491 146.124-130.69a47.961 47.961 0 0 0 .001-48.74zM362.31 328.959l-38.511-51.906c27.52-18.592 35.914-54.676 20.671-83.193v.02c0 14.56-11.8 26.36-26.35 26.36-14.56 0-26.36-11.8-26.36-26.36 0-14.55 11.8-26.35 26.36-26.35h.02c-22.278-11.908-50.192-9.748-70.538 6.823l-34.7-46.77C233.992 112.746 259.945 104 288 104c70.69 0 128 55.52 128 124 0 41.637-21.187 78.478-53.69 100.959zm179.47-64.839c-31.903 54.148-80.569 96.241-138.133 120.555l-22.24-29.975c74.24-52.148 88.248-153.521 32.713-222.709 54.32 25.45 98.59 66.55 127.66 115.89a15.958 15.958 0 0 1 0 16.239z\"]\n};\nvar faLuchador = {\n prefix: 'fal',\n iconName: 'luchador',\n icon: [448, 512, [], \"f455\", \"M224 0C100.3 0 0 100.3 0 224v128c0 88.4 71.6 160 160 160h128c88.4 0 160-71.6 160-160V224C448 100.3 347.7 0 224 0zm192 352c0 70.6-57.4 128-128 128H160c-70.6 0-128-57.4-128-128V224c0-105.9 86.1-192 192-192s192 86.1 192 192v128zM226.5 226.2c-.9-.7-4.2-.7-5.1 0C213.3 188.3 182 160 144 160H76c-6.6 0-12 5.4-12 12v30.7c0 47.1 35.8 85.3 80 85.3h22.4c-7.4 12.2-12.5 23.5-15.8 32.9-30.9 4.6-54.6 31-54.6 63.1 0 35.5 29.4 64 64.9 64H287c35.5 0 64.9-28.5 64.9-64 0-32.1-23.7-58.5-54.6-63.1-3.3-9.5-8.4-20.7-15.8-32.9H304c44.2 0 80-38.2 80-85.3V172c0-6.6-5.4-12-12-12h-68c-37.9 0-69.3 28.3-77.5 66.2zm36.2 93.8h-77.4c6.8-14.8 18.5-33.4 38.7-53.3 20.2 19.9 31.9 38.5 38.7 53.3zM144 256c-26.5 0-48-23.9-48-53.3V192h48c26.5 0 48 23.9 48 53.3v8.7c-.6.7-1.2 1.3-1.8 2H144zm176 128c0 17.6-14.4 32-32 32H160c-17.6 0-32-14.4-32-32s14.4-32 32-32h128c17.6 0 32 14.4 32 32zm32-181.3c0 29.4-21.5 53.3-48 53.3h-46.2c-.6-.7-1.2-1.3-1.8-2v-8.7c0-29.4 21.5-53.3 48-53.3h48v10.7z\"]\n};\nvar faLuggageCart = {\n prefix: 'fal',\n iconName: 'luggage-cart',\n icon: [640, 512, [], \"f59d\", \"M224 352h320c17.67 0 32-14.33 32-32V128c0-17.67-14.33-32-32-32h-64V48c0-26.51-21.49-48-48-48h-96c-26.51 0-48 21.49-48 48v48h-64c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32zm256-224h64v192h-64V128zM320 48c0-8.84 7.16-16 16-16h96c8.84 0 16 7.16 16 16v48H320V48zm0 80h128v192H320V128zm-96 0h64v192h-64V128zm408 288H128V8c0-4.42-3.58-8-8-8H8C3.58 0 0 3.58 0 8v16c0 4.42 3.58 8 8 8h88v408c0 4.42 3.58 8 8 8h58.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-16H632c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-424 64c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16zm288 0c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16z\"]\n};\nvar faLungs = {\n prefix: 'fal',\n iconName: 'lungs',\n icon: [640, 512, [], \"f604\", \"M636.11 390.15c-21.68-81.3-56.08-159.15-102.08-231.02C511.89 124.56 497.93 96 453.92 96c-38.72 0-70.1 29.42-70.1 65.71v75.36l-47.81-31.85V8c0-4.42-3.59-8-8.01-8h-16.01c-4.42 0-8.01 3.58-8.01 8v197.22l-47.81 31.85v-75.36c0-36.29-31.38-65.71-70.1-65.71-44.01 0-57.97 28.56-80.1 63.13-46 71.87-80.4 149.72-102.08 231.02C1.3 399.84 0 409.79 0 419.79 0 472.11 45.66 512 98.13 512c18.1 0 24.47-2.87 86.74-19.55 42.21-11.3 71.31-47.47 71.31-88.61v-89.87l-32.02 21.33v68.54c0 26.47-19.56 50.2-47.57 57.7C112.18 478.79 110.55 480 98.13 480c-36.45 0-66.11-27.01-66.11-60.21 0-7.2.95-14.4 2.81-21.39 20.85-78.18 53.86-152.87 98.12-222.01 27.82-43.94 32.14-48.38 53.13-48.38 21 0 38.08 15.12 38.08 33.71v96.69l-98.51 65.63c-3.68 2.45-4.67 7.42-2.22 11.1l8.88 13.31c2.45 3.68 7.42 4.67 11.1 2.22L320 233.01l176.59 117.65c3.68 2.45 8.65 1.46 11.1-2.22l8.88-13.31a8.006 8.006 0 0 0-2.22-11.1l-98.51-65.63v-96.69c0-18.59 17.08-33.71 38.08-33.71 20.99 0 25.31 4.44 53.13 48.38 44.25 69.14 77.27 143.84 98.12 222.01a83.248 83.248 0 0 1 2.81 21.39c0 33.2-29.66 60.21-66.11 60.21-12.42 0-14.05-1.21-78.45-18.46-28.01-7.5-47.57-31.23-47.57-57.7V335.3l-32.02-21.33v89.87c0 41.15 29.1 77.31 71.31 88.61 62.27 16.68 68.64 19.55 86.74 19.55 52.47 0 98.13-39.89 98.13-92.21-.01-10-1.31-19.95-3.9-29.64z\"]\n};\nvar faLungsVirus = {\n prefix: 'fal',\n iconName: 'lungs-virus',\n icon: [640, 512, [], \"e067\", \"M421.83,421.83a16,16,0,0,0,0-22.62l-8.57-8.58C393.1,370.47,407.38,336,435.88,336H448a16,16,0,0,0,0-32H435.88c-28.5,0-42.78-34.47-22.62-54.63l8.57-8.57a16,16,0,0,0-22.62-22.63l-8.58,8.58a31.31,31.31,0,0,1-22.39,9.44c-16.45,0-32.23-12.78-32.23-32.07V192a16,16,0,0,0-32,0v12.12c0,19.29-15.78,32.07-32.23,32.07a31.35,31.35,0,0,1-22.4-9.44l-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.63H192a16,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.58a31.38,31.38,0,0,1,22.4-9.43c16.45,0,32.23,12.77,32.23,32.06V448a16,16,0,0,0,32,0V435.88c0-19.29,15.78-32.06,32.23-32.06a31.31,31.31,0,0,1,22.39,9.43l8.58,8.58a16,16,0,0,0,22.62,0Zm-45.07-78.32A64,64,0,0,0,372,371.93c-1.24-.08-2.48-.11-3.73-.11A64.15,64.15,0,0,0,320,393.62a64.17,64.17,0,0,0-48.23-21.8c-1.25,0-2.5,0-3.74.11A64.33,64.33,0,0,0,246.52,320,64.33,64.33,0,0,0,268,268.08c1.24.07,2.49.11,3.74.11A64.2,64.2,0,0,0,320,246.39a64.18,64.18,0,0,0,48.23,21.8c1.25,0,2.49,0,3.73-.11A64.38,64.38,0,0,0,393.5,320,64.11,64.11,0,0,0,376.76,343.51ZM304,288a16,16,0,1,0,16,16A16,16,0,0,0,304,288Zm32,32a16,16,0,1,0,16,16A16,16,0,0,0,336,320ZM204.13,272l-.15-.15-.23.15ZM336,147V8a8,8,0,0,0-8-8H312a8,8,0,0,0-8,8V147a44.88,44.88,0,0,1,32,0ZM201.16,449.07a67.76,67.76,0,0,1-24.57,12.48C112.18,478.8,110.54,480,98.12,480,61.69,480,32,453,32,419.8a83.14,83.14,0,0,1,2.82-21.39,788.37,788.37,0,0,1,98.12-222C160.76,132.45,165.09,128,186.07,128s38.08,15.1,38.08,33.7V182a43.15,43.15,0,0,1,32,7.56V161.7c0-36.28-31.38-65.7-70.11-65.7-44,0-58,28.56-80.09,63.12a820.64,820.64,0,0,0-102.08,231A114.64,114.64,0,0,0,0,419.8C0,472.11,45.66,512,98.12,512c18.11,0,24.47-2.88,86.75-19.55a98.18,98.18,0,0,0,52.57-34.71,45.76,45.76,0,0,1-36.28-8.67Zm434.93-58.91A820.61,820.61,0,0,0,534,159.12C511.88,124.56,497.93,96,453.91,96c-38.72,0-70.11,29.42-70.11,65.7v27.91a47.62,47.62,0,0,1,26.72-8.12,46.57,46.57,0,0,1,5.31.52V161.7c0-18.58,17.08-33.7,38.08-33.7s25.31,4.44,53.12,48.37a789.06,789.06,0,0,1,98.13,222A101.48,101.48,0,0,1,608,419.78C608,453,578.3,480,541.86,480c-12.42,0-14.06-1.2-78.45-18.45a67.76,67.76,0,0,1-24.56-12.46,45.79,45.79,0,0,1-36.29,8.67,98.15,98.15,0,0,0,52.57,34.71C517.39,509.12,523.77,512,541.86,512c52.47,0,98.14-39.89,98.14-92.2A115.09,115.09,0,0,0,636.09,390.16ZM435.88,272h.36l-.21-.14Z\"]\n};\nvar faMace = {\n prefix: 'fal',\n iconName: 'mace',\n icon: [512, 512, [], \"f6f8\", \"M501.02 198.92l-71.37-14.29c-9.77-52.76-51.8-93.84-104.93-102.54l-15.77-71.25c-3.21-14.52-11.27-14.44-14.18.14l-14.29 71.39c-52.64 9.81-93.62 51.75-102.36 104.75l-71.26 15.77c-14.52 3.21-14.44 11.27.14 14.18l71.37 14.29c1.7 9.17 4.68 17.81 8.22 26.17L4.69 439.43c-6.25 6.25-6.25 16.38 0 22.63l45.26 45.26c6.25 6.25 16.38 6.25 22.63 0l182-182.02c9.04 3.8 18.43 6.92 28.38 8.58l15.78 71.28c3.21 14.52 11.27 14.44 14.18-.14l14.29-71.36c52.79-9.7 93.92-51.68 102.68-104.79l71.26-15.77c14.53-3.21 14.44-11.26-.13-14.18zM61.25 473.37l-22.63-22.63 164.53-164.53c6.58 8.45 14.27 15.96 22.74 22.51L61.25 473.37zM304 304c-53.02 0-96-42.98-96-96s42.98-96 96-96 96 42.98 96 96-42.98 96-96 96zm0-144c-26.47 0-48 21.53-48 48s21.53 48 48 48 48-21.53 48-48-21.53-48-48-48zm0 64c-8.81 0-16-7.17-16-16s7.19-16 16-16 16 7.17 16 16-7.19 16-16 16z\"]\n};\nvar faMagic = {\n prefix: 'fal',\n iconName: 'magic',\n icon: [512, 512, [], \"f0d0\", \"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 160zm0-96c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16zm352 224l-26.66 53.33L352 368l53.34 26.67L432 448l26.66-53.33L512 368l-53.34-26.67L432 288zm0 96c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm70.63-306.04L434.04 9.37C427.79 3.12 419.6 0 411.41 0s-16.38 3.12-22.63 9.37L9.37 388.79c-12.5 12.5-12.5 32.76 0 45.25l68.59 68.59c6.25 6.25 14.44 9.37 22.63 9.37s16.38-3.12 22.63-9.37l379.41-379.41c12.49-12.5 12.49-32.76 0-45.26zM100.59 480L32 411.41l258.38-258.4 68.6 68.6L100.59 480zm281.02-281.02l-68.6-68.6L411.38 32h.03L480 100.59l-98.39 98.39z\"]\n};\nvar faMagnet = {\n prefix: 'fal',\n iconName: 'magnet',\n icon: [512, 512, [], \"f076\", \"M372 32c-19.9 0-36 16.1-36 36v172c0 64-40 96-79.9 96-40 0-80.1-32-80.1-96V68c0-19.9-16.1-36-36-36H36.4C16.4 32 .2 48.3.4 68.4c.3 24.5.6 58.4.7 91.6H0v32h1.1C1 218.3.7 242 0 257.3 0 408 136.2 504 256.8 504 377.5 504 512 408 512 257.3V68c0-19.9-16.1-36-36-36H372zM36.5 68H140v92H37.1c-.1-33.4-.4-67.4-.6-92zM476 258.1c-.1 30.4-6.6 59.3-19.4 85.8-11.9 24.9-29 47.2-50.8 66.3-20.6 18.1-45.2 32.9-71.2 42.9-25.5 9.8-52.4 15-77.9 15-25.5 0-52.5-5.2-78.2-15-26.2-10-51-24.9-71.8-43-22-19.2-39.2-41.5-51.3-66.3-12.9-26.5-19.4-55.3-19.6-85.6.7-15.9 1-39.7 1.1-66.1H140v48c0 49.2 18.9 79.7 34.8 96.6 10.8 11.5 23.5 20.4 37.8 26.5 13.8 5.9 28.5 8.9 43.5 8.9s29.7-3 43.5-8.9c14.3-6.1 27-15 37.7-26.5 15.8-16.9 34.7-47.4 34.7-96.6v-48h102.9c.1 26.2.4 50.1 1.1 66zM372 160V68h103.5c-.3 24.6-.6 58.6-.6 92H372z\"]\n};\nvar faMailBulk = {\n prefix: 'fal',\n iconName: 'mail-bulk',\n icon: [640, 512, [], \"f674\", \"M592 96H240c-26.47 0-48 21.53-48 48v16h32v-16c0-8.84 7.16-16 16-16h352c8.84 0 16 7.16 16 16v224c0 8.84-7.16 16-16 16H416v32h176c26.47 0 48-21.53 48-48V144c0-26.47-21.53-48-48-48zM96 48c0-8.84 7.16-16 16-16h288c8.84 0 16 7.16 16 16v16h32V48c0-26.47-21.53-48-48-48H112C85.53 0 64 21.53 64 48v112h32V48zm464 208c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16h-64c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h64zm-48-64h32v32h-32v-32zm-176 0H48c-26.47 0-48 21.53-48 48v224c0 26.47 21.53 48 48 48h288c26.47 0 48-21.53 48-48V240c0-26.47-21.53-48-48-48zm16 272c0 8.84-7.16 16-16 16H48c-8.84 0-16-7.16-16-16V313.6c12.8 9.6 32 25.6 96 70.4 12.8 9.6 38.4 32 64 32s51.2-22.4 64-32c64-44.8 83.2-60.8 96-70.4V464zm0-188.8c-25.6 19.2-22.4 19.2-115.2 86.4-9.6 3.2-28.8 22.4-44.8 22.4s-35.2-19.2-44.8-25.6C54.4 291.2 57.6 291.2 32 272v-32c0-8.84 7.16-16 16-16h288c8.84 0 16 7.16 16 16v35.2z\"]\n};\nvar faMailbox = {\n prefix: 'fal',\n iconName: 'mailbox',\n icon: [576, 512, [], \"f813\", \"M432 64H144A144 144 0 0 0 0 208v208a32 32 0 0 0 32 32h512a32 32 0 0 0 32-32V208A144 144 0 0 0 432 64zM256 416H32V208a112 112 0 0 1 224 0zm288 0H288V208c0-45.52-21.54-85.61-54.51-112H432a112.12 112.12 0 0 1 112 112zm-48-224H328a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h88v80a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16v-96a16 16 0 0 0-16-16zm-16 96h-32v-64h32zm-296-96h-80a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h80a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faMale = {\n prefix: 'fal',\n iconName: 'male',\n icon: [256, 512, [], \"f183\", \"M198.746 140.274C209.582 125.647 216 107.56 216 88c0-48.523-39.477-88-88-88S40 39.477 40 88c0 19.56 6.418 37.647 17.254 52.274C28.585 150.478 8 177.873 8 210v105c0 24.74 17.041 45.576 40 51.387V459c0 29.224 23.776 53 53 53h54c29.224 0 53-23.776 53-53v-92.613c22.959-5.812 40-26.647 40-51.387V210c0-32.127-20.585-59.522-49.254-69.726zM128 32c30.928 0 56 25.072 56 56s-25.072 56-56 56-56-25.072-56-56 25.072-56 56-56zm88 283c0 11.598-9.402 21-21 21h-19v123c0 11.598-9.402 21-21 21h-54c-11.598 0-21-9.402-21-21V336H61c-11.598 0-21-9.402-21-21V210c0-23.196 18.804-42 42-42h9.36c22.711 10.443 49.59 10.894 73.28 0H174c23.196 0 42 18.804 42 42v105z\"]\n};\nvar faMandolin = {\n prefix: 'fal',\n iconName: 'mandolin',\n icon: [512, 512, [], \"f6f9\", \"M507.31 50.67l-46-46a16 16 0 0 0-19.81-2.25l-64 40.07a32 32 0 0 0-14 19.11L345.07 133l-59.23 59.23c-6.75-.13-13.36-.2-19.75-.2-177.4 0-220.3 49.21-235.35 64.26-46.81 46.78-39.52 150.35 17.53 207.44C80.22 495.65 126.73 512 169.69 512c33.81 0 65.42-10.12 86-30.74 15.59-15.59 67.83-61.13 64-255.09L379 166.93l71.37-18.46a32 32 0 0 0 19.11-14l40.07-64a16 16 0 0 0-2.24-19.8zM234.73 457l-1.64 1.63c-13.57 13.58-36.68 21.37-63.4 21.37-36.93 0-74.78-14.91-98.78-38.89-47.55-47.58-49.42-130.34-17.55-162.2l1.64-1.65c12.66-12.81 50.81-51 198.86-53l-35.51 35.51a16 16 0 0 0 0 22.62l11.32 11.31a16 16 0 0 0 22.62 0l35.52-35.51c-2 147.93-39.99 185.89-53.08 198.81zm207.64-339.51l-64.55 16.69 16.69-64.55 53.2-33.31 28 28zM160 288a64 64 0 1 0 64 64 64 64 0 0 0-64-64zm0 96a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"]\n};\nvar faMap = {\n prefix: 'fal',\n iconName: 'map',\n icon: [576, 512, [], \"f279\", \"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.02zM30.63 118.18L176 67.61V387.8L31.91 441.05l-1.28-322.87zM208 387.71V67.8l160 56.48v319.91l-160-56.48zm192 56.68V124.2l144.09-53.26 1.28 322.87L400 444.39z\"]\n};\nvar faMapMarked = {\n prefix: 'fal',\n iconName: 'map-marked',\n icon: [576, 512, [], \"f59f\", \"M560 160c-2 0-4 .4-6 1.2L384 224l-10.3-3.6C397 185.5 416 149.2 416 123 416 55 358.7 0 288 0S160 55.1 160 123c0 11.8 4 25.8 10.4 40.6L20.1 216C8 220.8 0 232.6 0 245.7V496c0 9.2 7.5 16 16 16 2 0 4-.4 6-1.2L192 448l172 60.7c13 4.3 27 4.4 40 .2L555.9 456c12.2-4.9 20.1-16.6 20.1-29.7V176c0-9.2-7.5-16-16-16zM176 419.8L31.9 473l-1.3-226.9L176 195.6zM288 32c52.9 0 96 40.8 96 91 0 27-38.1 88.9-96 156.8-57.9-67.9-96-129.8-96-156.8 0-50.2 43.1-91 96-91zm-80 387.7V228.8c24.4 35.3 52.1 68 67.7 85.7 3.2 3.7 7.8 5.5 12.3 5.5s9-1.8 12.3-5.5c12.8-14.5 33.7-39.1 54.3-66.9l13.4 4.7v223.9zm192 56.7V252.2L544.1 199l1.3 226.9z\"]\n};\nvar faMapMarkedAlt = {\n prefix: 'fal',\n iconName: 'map-marked-alt',\n icon: [576, 512, [], \"f5a0\", \"M560 160c-2 0-4 .4-6 1.2L384 224l-10.3-3.6C397 185.5 416 149.2 416 123 416 55 358.7 0 288 0S160 55.1 160 123c0 11.8 4 25.8 10.4 40.6L20.1 216C8 220.8 0 232.6 0 245.7V496c0 9.2 7.5 16 16 16 2 0 4-.4 6-1.2L192 448l172 60.7c13 4.3 27 4.4 40 .2L555.9 456c12.2-4.9 20.1-16.6 20.1-29.7V176c0-9.2-7.5-16-16-16zM176 419.8L31.9 473l-1.3-226.9L176 195.6zM288 32c52.9 0 96 40.8 96 91 0 27-38.1 88.9-96 156.8-57.9-67.9-96-129.8-96-156.8 0-50.2 43.1-91 96-91zm80 444.2l-160-56.5V228.8c24.4 35.3 52.1 68 67.7 85.7 3.2 3.7 7.8 5.5 12.3 5.5s9-1.8 12.3-5.5c12.8-14.5 33.7-39.1 54.3-66.9l13.4 4.7zm32 .2V252.2L544.1 199l1.3 226.9zM312 128c0-13.3-10.8-24-24-24s-24 10.7-24 24c0 13.2 10.8 24 24 24s24-10.7 24-24z\"]\n};\nvar faMapMarker = {\n prefix: 'fal',\n iconName: 'map-marker',\n icon: [384, 512, [], \"f041\", \"M192 0C85.961 0 0 85.961 0 192c0 77.413 26.97 99.031 172.268 309.67 9.534 13.772 29.929 13.774 39.465 0C357.03 291.031 384 269.413 384 192 384 85.961 298.039 0 192 0zm0 473.931C52.705 272.488 32 256.494 32 192c0-42.738 16.643-82.917 46.863-113.137S149.262 32 192 32s82.917 16.643 113.137 46.863S352 149.262 352 192c0 64.49-20.692 80.47-160 281.931z\"]\n};\nvar faMapMarkerAlt = {\n prefix: 'fal',\n iconName: 'map-marker-alt',\n icon: [384, 512, [], \"f3c5\", \"M192 96c-52.935 0-96 43.065-96 96s43.065 96 96 96 96-43.065 96-96-43.065-96-96-96zm0 160c-35.29 0-64-28.71-64-64s28.71-64 64-64 64 28.71 64 64-28.71 64-64 64zm0-256C85.961 0 0 85.961 0 192c0 77.413 26.97 99.031 172.268 309.67 9.534 13.772 29.929 13.774 39.465 0C357.03 291.031 384 269.413 384 192 384 85.961 298.039 0 192 0zm0 473.931C52.705 272.488 32 256.494 32 192c0-42.738 16.643-82.917 46.863-113.137S149.262 32 192 32s82.917 16.643 113.137 46.863S352 149.262 352 192c0 64.49-20.692 80.47-160 281.931z\"]\n};\nvar faMapMarkerAltSlash = {\n prefix: 'fal',\n iconName: 'map-marker-alt-slash',\n icon: [640, 512, [], \"f605\", \"M320 32c88.2 0 160 71.8 160 160 0 34.7-4.7 54.1-34.8 101.5l25.3 19.9C503.9 261.2 512 235.2 512 192 512 86.4 425.6 0 320 0c-61.7 0-116.7 29.7-151.9 75.3l25.4 20C222.7 57.1 268.3 32 320 32zm74 221.1c13.6-16.5 22-37.6 22-61.1 0-53.8-42.2-96-96-96-31.9 0-59.5 15.1-76.8 38.4l25.1 19.8c11.5-15.9 30.1-26.2 51.7-26.2 35.9 0 64 28.1 64 64 0 16-5.8 30.2-15.2 41.3zm-21.5 146.2c-15.5 22-33.1 46.9-52.5 74.7-19.7-28.2-37.1-52.9-52.5-74.7C170.6 262 160 245.1 160 192c0-.3.1-.5.1-.8l-30.3-23.9c-1.1 8.1-1.8 16.3-1.8 24.7 0 76.8 25.6 99.2 172.8 310.4 4.8 6.4 12 9.6 19.2 9.6s14.4-3.2 19.2-9.6c30.8-44.1 56-79.7 77-109.6L391 373c-5.8 8.3-11.9 17-18.5 26.3zM637 485.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3z\"]\n};\nvar faMapMarkerCheck = {\n prefix: 'fal',\n iconName: 'map-marker-check',\n icon: [384, 512, [], \"f606\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 4.8 6.4 12 9.6 19.2 9.6s14.4-3.2 19.2-9.6C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm.01 474c-19.67-28.17-37.09-52.85-52.49-74.69C42.64 261.97 32 245.11 32 192c0-88.22 71.78-160 160-160s160 71.78 160 160c0 53.11-10.64 69.97-107.52 207.31-15.52 22.01-33.09 46.92-52.47 74.69zm89.33-339.54a7.98 7.98 0 0 0-5.66-2.34c-2.05 0-4.1.78-5.66 2.34L162.54 241.94l-48.57-48.57a7.98 7.98 0 0 0-5.66-2.34c-2.05 0-4.1.78-5.66 2.34l-11.31 11.31c-3.12 3.12-3.12 8.19 0 11.31l65.54 65.54c1.56 1.56 3.61 2.34 5.66 2.34s4.09-.78 5.65-2.34l124.45-124.45c3.12-3.12 3.12-8.19 0-11.31l-11.3-11.31z\"]\n};\nvar faMapMarkerEdit = {\n prefix: 'fal',\n iconName: 'map-marker-edit',\n icon: [384, 512, [], \"f607\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 4.8 6.4 12 9.6 19.2 9.6s14.4-3.2 19.2-9.6C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm.01 474c-19.67-28.17-37.09-52.85-52.49-74.69C42.64 261.97 32 245.11 32 192c0-88.22 71.78-160 160-160s160 71.78 160 160c0 53.11-10.64 69.97-107.52 207.31-15.52 22.01-33.09 46.92-52.47 74.69zm64.01-368.65c-12.5-12.47-32.75-12.47-45.25 0l-94.09 94.09c-2 2.02-3.44 4.51-4.16 7.27l-16 61.25c-1.44 5.5.12 11.34 4.16 15.36 3.03 3.05 7.12 4.69 11.31 4.69 1.34 0 2.72-.17 4.03-.52l61.25-16c2.75-.72 5.28-2.15 7.28-4.17l94.09-94.09c12.47-12.47 12.47-32.78 0-45.25l-22.62-22.63zM165 241.61l-30.62 8 8-30.61 91.03-91.03 22.62 22.62L165 241.61z\"]\n};\nvar faMapMarkerExclamation = {\n prefix: 'fal',\n iconName: 'map-marker-exclamation',\n icon: [384, 512, [], \"f608\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 4.8 6.4 12 9.6 19.2 9.6s14.4-3.2 19.2-9.6C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm.01 474c-19.67-28.17-37.09-52.85-52.49-74.69C42.64 261.97 32 245.11 32 192c0-88.22 71.78-160 160-160s160 71.78 160 160c0 53.11-10.64 69.97-107.52 207.31-15.52 22.01-33.09 46.92-52.47 74.69zm-8.49-234h16.97a8 8 0 0 0 7.98-7.5l7-112c.29-4.61-3.37-8.5-7.98-8.5h-30.97c-4.61 0-8.27 3.89-7.98 8.5l7 112c.25 4.21 3.75 7.5 7.98 7.5zm8.48 24c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faMapMarkerMinus = {\n prefix: 'fal',\n iconName: 'map-marker-minus',\n icon: [384, 512, [], \"f609\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 4.8 6.4 12 9.6 19.2 9.6s14.4-3.2 19.2-9.6C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm.01 474c-19.67-28.17-37.09-52.85-52.49-74.69C42.64 261.97 32 245.11 32 192c0-88.22 71.78-160 160-160s160 71.78 160 160c0 53.11-10.64 69.97-107.52 207.31-15.52 22.01-33.09 46.92-52.47 74.69zM280 176H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h176c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8z\"]\n};\nvar faMapMarkerPlus = {\n prefix: 'fal',\n iconName: 'map-marker-plus',\n icon: [384, 512, [], \"f60a\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 4.8 6.4 12 9.6 19.2 9.6s14.4-3.2 19.2-9.6C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm.01 474c-19.67-28.17-37.09-52.85-52.49-74.69C42.64 261.97 32 245.11 32 192c0-88.22 71.78-160 160-160s160 71.78 160 160c0 53.11-10.64 69.97-107.52 207.31-15.52 22.01-33.09 46.92-52.47 74.69zM280 176h-72v-72c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v72h-72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h72v72c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-72h72c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8z\"]\n};\nvar faMapMarkerQuestion = {\n prefix: 'fal',\n iconName: 'map-marker-question',\n icon: [384, 512, [], \"f60b\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 4.8 6.4 12 9.6 19.2 9.6s14.4-3.2 19.2-9.6C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm.01 474.01c-19.67-28.17-37.09-52.85-52.49-74.69C42.64 261.97 32 245.11 32 192c0-88.22 71.78-160 160-160s160 71.78 160 160c0 53.11-10.64 69.97-107.52 207.31-15.52 22.01-33.09 46.92-52.47 74.7zM192 296c-13.26 0-24 10.74-24 24 0 13.25 10.74 24 24 24s24-10.75 24-24c0-13.26-10.74-24-24-24zm.68-200c-41.09 0-75.02 31.12-79.5 71.01-.54 4.77 3.2 8.99 8 8.99h16.13c3.95 0 7.29-2.9 7.85-6.81 3.31-23.26 23.36-41.19 47.52-41.19 31.19 0 48 24.73 48 48 0 20.62-20.84 32.53-55.16 49.69a15.996 15.996 0 0 0-8.84 14.31v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-14.14c31.66-16.09 64-35.56 64-73.86 0-39.33-29.94-80-80-80z\"]\n};\nvar faMapMarkerSlash = {\n prefix: 'fal',\n iconName: 'map-marker-slash',\n icon: [640, 512, [], \"f60c\", \"M320 32c88.2 0 160 71.8 160 160 0 34.7-4.7 54.1-34.8 101.5l25.3 19.9C503.9 261.2 512 235.2 512 192 512 86.4 425.6 0 320 0c-61.7 0-116.7 29.7-151.9 75.3l25.4 20C222.7 57.1 268.3 32 320 32zm52.5 367.3c-15.5 22-33.1 46.9-52.5 74.7-19.7-28.2-37.1-52.9-52.5-74.7C170.6 262 160 245.1 160 192c0-.3.1-.5.1-.8l-30.3-23.9c-1.1 8.1-1.8 16.3-1.8 24.7 0 76.8 25.6 99.2 172.8 310.4 4.8 6.4 12 9.6 19.2 9.6s14.4-3.2 19.2-9.6c30.8-44.1 56-79.7 77-109.6L391 373c-5.8 8.3-11.9 17-18.5 26.3zM637 485.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3z\"]\n};\nvar faMapMarkerSmile = {\n prefix: 'fal',\n iconName: 'map-marker-smile',\n icon: [384, 512, [], \"f60d\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 4.8 6.4 12 9.6 19.2 9.6s14.4-3.2 19.2-9.6C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm.01 474c-19.67-28.17-37.09-52.85-52.49-74.69C42.64 261.97 32 245.11 32 192c0-88.22 71.78-160 160-160s160 71.78 160 160c0 53.11-10.64 69.97-107.52 207.31-15.52 22.01-33.09 46.91-52.47 74.69zM256 184c13.25 0 24-10.75 24-24 0-13.26-10.75-24-24-24s-24 10.74-24 24c0 13.25 10.75 24 24 24zm11.84 53.34C249.03 259.38 221.41 272 192 272s-57.03-12.62-75.84-34.64c-5.72-6.73-15.84-7.44-22.53-1.78-6.75 5.75-7.53 15.84-1.78 22.56C116.72 287.28 153.22 304 192 304s75.28-16.72 100.16-45.88c5.75-6.72 4.94-16.83-1.78-22.56-6.66-5.72-16.79-4.94-22.54 1.78zM128 184c13.25 0 24-10.75 24-24 0-13.26-10.75-24-24-24s-24 10.74-24 24c0 13.25 10.75 24 24 24z\"]\n};\nvar faMapMarkerTimes = {\n prefix: 'fal',\n iconName: 'map-marker-times',\n icon: [384, 512, [], \"f60e\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 4.8 6.4 12 9.6 19.2 9.6s14.4-3.2 19.2-9.6C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm.01 474c-19.67-28.17-37.09-52.85-52.49-74.69C42.64 261.97 32 245.11 32 192c0-88.22 71.78-160 160-160s160 71.78 160 160c0 53.11-10.64 69.97-107.52 207.31-15.52 22.01-33.09 46.92-52.47 74.69zm73.53-344.23l-11.31-11.31c-1.56-1.56-3.61-2.34-5.66-2.34s-4.1.78-5.66 2.34L192 169.37l-50.91-50.91c-1.56-1.56-3.61-2.34-5.66-2.34s-4.09.78-5.66 2.34l-11.31 11.31c-3.12 3.12-3.12 8.19 0 11.31L169.37 192l-50.91 50.91c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c1.56 1.56 3.61 2.34 5.66 2.34s4.1-.78 5.66-2.34l50.91-50.9 50.91 50.91c1.56 1.56 3.61 2.34 5.66 2.34s4.09-.78 5.66-2.34l11.31-11.31c3.12-3.12 3.12-8.19 0-11.31L214.63 192l50.91-50.91a8.015 8.015 0 0 0 0-11.32z\"]\n};\nvar faMapPin = {\n prefix: 'fal',\n iconName: 'map-pin',\n icon: [288, 512, [], \"f276\", \"M144 0C64.47 0 0 64.47 0 144c0 74.05 56.1 134.33 128 142.39v206.43l11.01 16.51c2.38 3.56 7.61 3.56 9.98 0L160 492.82V286.39c71.9-8.05 128-68.34 128-142.39C288 64.47 223.53 0 144 0zm0 256c-61.76 0-112-50.24-112-112S82.24 32 144 32s112 50.24 112 112-50.24 112-112 112zm0-192c-44.12 0-80 35.89-80 80 0 8.84 7.16 16 16 16s16-7.16 16-16c0-26.47 21.53-48 48-48 8.84 0 16-7.16 16-16s-7.16-16-16-16z\"]\n};\nvar faMapSigns = {\n prefix: 'fal',\n iconName: 'map-signs',\n icon: [512, 512, [], \"f277\", \"M441.37 192c8.49 0 16.62-4.21 22.63-11.72l43.31-54.14c6.25-7.81 6.25-20.47 0-28.29L464 43.71C458 36.21 449.86 32 441.37 32H272V8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v24H56c-13.25 0-24 13.43-24 30v100c0 16.57 10.75 30 24 30h184v32H70.63C62.14 224 54 228.21 48 235.71L4.69 289.86c-6.25 7.81-6.25 20.47 0 28.29L48 372.28c6 7.5 14.14 11.72 22.63 11.72H240v120c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V384h184c13.25 0 24-13.43 24-30V254c0-16.57-10.75-30-24-30H272v-32h169.37zm6.38 160h-375l-38.4-48 38.45-48h375.19l-.24 96zM64.25 64h375l38.4 48-38.45 48H64.01l.24-96z\"]\n};\nvar faMarker = {\n prefix: 'fal',\n iconName: 'marker',\n icon: [512, 512, [], \"f5a1\", \"M421.4 0c-23.17 0-46.33 8.84-64 26.52l-6.28 6.28-23.43-23.43c-12.5-12.5-32.75-12.5-45.25 0L152.36 139.48c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0L305.07 32l23.42 23.43-234.55 234.6A327.069 327.069 0 0 0 .18 485.12l-.03.23C-1.45 499.72 9.88 512 23.94 512c.89 0 1.78-.05 2.69-.15a326.972 326.972 0 0 0 195.3-93.8L485.4 154.54C542.54 97.38 501.35 0 421.4 0zM199.31 395.42c-44.99 45-103.91 74.41-166.07 83.39 9.13-62.64 38.49-121.32 83.32-166.16l78.71-78.72 82.75 82.77-78.71 78.72zm263.46-263.51L300.64 294.07l-82.75-82.77L380.02 49.14C391.07 38.09 405.77 32 421.4 32c32.32 0 58.52 26.16 58.52 58.53-.01 15.63-6.09 30.33-17.15 41.38z\"]\n};\nvar faMars = {\n prefix: 'fal',\n iconName: 'mars',\n icon: [384, 512, [], \"f222\", \"M372 64h-88c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h45.4l-95.5 95.5C209.2 171.8 178 160 144 160 64.5 160 0 224.5 0 304s64.5 144 144 144 144-64.5 144-144c0-34-11.8-65.2-31.5-89.9l95.5-95.5V164c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12zM144 416c-61.9 0-112-50-112-112 0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112z\"]\n};\nvar faMarsDouble = {\n prefix: 'fal',\n iconName: 'mars-double',\n icon: [512, 512, [], \"f227\", \"M288 208c0-34-11.8-65.2-31.5-89.9L320 54.6V100c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V12c0-6.6-5.4-12-12-12h-88c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h45.4l-63.5 63.5C209.2 75.8 178 64 144 64 64.5 64 0 128.5 0 208s64.5 144 144 144 144-64.5 144-144zM144 320c-61.9 0-112-50-112-112 0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112zm368-148v88c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12v-45.4l-63.5 63.5C436.2 302.8 448 334 448 368c0 79.5-64.5 144-144 144-74.4 0-135.6-56.4-143.2-128.8 10.7-1 21.2-3 31.6-6C197 434.7 245.1 480 304 480c62 0 112-50.1 112-112 0-59-45.4-107-102.8-111.6 3-10.4 4.9-20.9 6-31.6 28.1 2.9 53.8 14 74.7 30.7l63.5-63.5H412c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h88c6.6 0 12 5.4 12 12z\"]\n};\nvar faMarsStroke = {\n prefix: 'fal',\n iconName: 'mars-stroke',\n icon: [384, 512, [], \"f229\", \"M372 64h-88c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h45.4l-49.6 49.6-31.1-31.1c-4.7-4.7-12.3-4.7-17 0l-5.7 5.7c-4.7 4.7-4.7 12.3 0 17l31.1 31.1-23.3 23.3C209.2 171.8 178 160 144 160 64.5 160 0 224.5 0 304s64.5 144 144 144 144-64.5 144-144c0-34-11.8-65.2-31.5-89.9l23.3-23.3 31.1 31.1c4.7 4.7 12.3 4.7 17 0l5.7-5.7c4.7-4.7 4.7-12.3 0-17l-31.1-31.1 49.6-49.6V164c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V76c-.1-6.6-5.5-12-12.1-12zM144 416c-61.9 0-112-50-112-112 0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112z\"]\n};\nvar faMarsStrokeH = {\n prefix: 'fal',\n iconName: 'mars-stroke-h',\n icon: [480, 512, [], \"f22b\", \"M474.9 247.5l-62.2-62.2c-4.7-4.7-12.3-4.7-17 0L390 191c-4.7 4.7-4.7 12.3 0 17l32.1 32.1H352v-44c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v44h-32.9c-3.5-31.4-17.2-61.8-41.3-85.8-56.2-56.2-147.4-56.2-203.6 0-56.2 56.2-56.2 147.4 0 203.6 56.2 56.2 147.4 56.2 203.6 0 24-24 37.8-54.5 41.3-85.8H320v44c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-44h70.2l-32.1 32.1c-4.7 4.7-4.7 12.3 0 17l5.7 5.7c4.7 4.7 12.3 4.7 17 0l62.2-62.2c4.6-4.9 4.6-12.5-.1-17.2zM144 368c-61.9 0-112-50-112-112 0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112z\"]\n};\nvar faMarsStrokeV = {\n prefix: 'fal',\n iconName: 'mars-stroke-v',\n icon: [288, 512, [], \"f22a\", \"M245.8 234.2c-24-24-54.5-37.8-85.8-41.3V160h44c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-44V57.8l32.1 32.1c4.7 4.7 12.3 4.7 17 0l5.7-5.7c4.7-4.7 4.7-12.3 0-17L152.5 5.1c-4.7-4.7-12.3-4.7-17 0L73.3 67.3c-4.7 4.7-4.7 12.3 0 17L79 90c4.7 4.7 12.3 4.7 17 0l32-32.2V128H84c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h44v32.9c-31.4 3.5-61.8 17.2-85.8 41.3-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.6zM144 448c-61.9 0-112-50-112-112 0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112z\"]\n};\nvar faMask = {\n prefix: 'fal',\n iconName: 'mask',\n icon: [640, 512, [], \"f6fa\", \"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.79c7.83-11.5 19.57-17.25 31.31-17.25 11.74 0 23.49 5.75 31.31 17.25l25.73 37.79C401.66 427.31 439.23 448 479.13 448c189.86 0 290.63-384-158.46-384zm158.46 349.09c-29.61 0-57.92-15.61-75.72-41.76l-25.73-37.79c-13.56-19.92-34.34-31.34-57-31.34-22.67 0-43.44 11.42-57 31.34l-25.73 37.79c-17.8 26.15-46.11 41.76-75.73 41.76C84.32 413.09 32 340.54 32 272.77c0-31.04 10.25-75.99 59.07-113.92 50.48-39.22 129.87-59.94 229.6-59.94 100.06 0 179.35 20.29 229.31 58.66C597.93 194.41 608 238.62 608 269.21c0 68.05-52.92 143.88-128.87 143.88zM192 186.18c-46.93 0-77.44 29.93-91.52 47.89-5.97 7.62-5.97 18.78 0 26.39 14.08 17.96 44.59 47.89 91.52 47.89s77.44-29.93 91.52-47.89c5.97-7.62 5.97-18.78 0-26.39-14.08-17.96-44.59-47.89-91.52-47.89zm0 87.27c-26.83 0-46.54-13.8-58.82-26.18 12.28-12.38 32-26.18 58.82-26.18s46.54 13.8 58.82 26.18c-12.28 12.38-31.99 26.18-58.82 26.18zm256-87.27c-46.93 0-77.44 29.93-91.52 47.89-5.97 7.62-5.97 18.78 0 26.39 14.08 17.96 44.59 47.89 91.52 47.89s77.44-29.93 91.52-47.89c5.97-7.62 5.97-18.78 0-26.39-14.08-17.96-44.59-47.89-91.52-47.89zm0 87.27c-26.83 0-46.54-13.8-58.82-26.18 12.28-12.38 32-26.18 58.82-26.18 26.83 0 46.54 13.8 58.82 26.18-12.28 12.38-31.99 26.18-58.82 26.18z\"]\n};\nvar faMeat = {\n prefix: 'fal',\n iconName: 'meat',\n icon: [512, 512, [], \"f814\", \"M343 115.9c-9.81 9.8-5.83 29.67 8.88 44.37s34.57 18.68 44.38 8.87 5.83-29.67-8.88-44.37-34.63-18.67-44.38-8.87zm100.67-47.32l-.05-.06C388.15 13.07 330.39 0 298.94 0 260.32 0 237 19.06 230.22 25.85 191.52 64.53 128 139.63 128 209.45v82.28l-11.47 11.48c-3.14 3.14-9.11 5.32-17.21 2.06A72.48 72.48 0 0 0 0 372.66c0 21.53 15.57 69.06 67.66 71.67C69.63 483.7 102 512 139.28 512c51.81 0 86.19-52.22 67.34-99.41-1-2.53-3.88-11.28 2-17.21L220.05 384h82.59c69.84 0 145-63.46 183.65-102.15 55.27-55.27 12.22-158.4-42.62-213.27zM302.64 352H206.8l-20.72 20.73c-13.08 13.08-16.61 32.86-9.15 51.74 23.45 58.7-74.31 78.88-77.34 18.26l-1.45-28.91-28.88-1.45c-50.58-2.54-49-80.3 3.2-80.3a40 40 0 0 1 15 2.89c17.7 7.13 38 4.7 51.76-9.12L160 305v-95.55c0-37.67 27-88.94 73.31-140.37a118.4 118.4 0 0 0 1.08 40.14c7.35 36.69 29.64 75.82 61.17 107.33 40 40 89.81 63.82 133.32 63.82a102.3 102.3 0 0 0 13.57-1.08C391.22 325.19 340.19 352 302.64 352zm161-115.42C440.24 260 374 249.7 318.17 193.91 264.46 140.22 250.94 73 275.49 48.46 298.92 25 365.19 35.35 421 91.13c53.84 53.87 66.93 121.19 42.67 145.45z\"]\n};\nvar faMedal = {\n prefix: 'fal',\n iconName: 'medal',\n icon: [576, 512, [], \"f5a2\", \"M332.37 275.41l-19.75-40.05c-9.44-18.81-39.91-18.86-49.28.08l-19.72 39.97-44.06 6.44c-10.44 1.5-18.94 8.67-22.22 18.7-3.25 10.02-.59 20.83 6.97 28.17l31.91 31.09-7.56 43.92c-3.91 22.74 20.25 39.5 39.87 28.97L288 411.97l39.44 20.72c19.35 10.13 43.87-5.88 39.91-28.95l-7.56-43.92 31.91-31.09c7.56-7.34 10.22-18.16 6.97-28.17-3.28-10.03-11.78-17.19-22.19-18.7l-44.11-6.45zm-6.96 73.25l8.84 51.45-46.25-24.3-46.34 24.91 8.94-52.06-37.41-36.47 51.69-7.53L288 257.78l23.12 46.88 51.69 7.53-37.4 36.47zM559.97 0H402.12c-11.24 0-21.66 5.9-27.44 15.54L288 160 201.32 15.54A31.997 31.997 0 0 0 173.88 0H16.03C3.08 0-4.5 14.57 2.92 25.18l144.12 205.88C125.14 260.4 112 296.65 112 336c0 97.05 78.95 176 176 176s176-78.95 176-176c0-39.35-13.14-75.6-35.04-104.94L573.08 25.18C580.5 14.57 572.92 0 559.97 0zM46.76 32h127.12l78.93 131.55c-31.95 6.51-60.65 21.84-83.78 43.13L46.76 32zM432 336c0 79.53-64.47 144-144 144s-144-64.47-144-144 64.47-144 144-144 144 64.47 144 144zm-25.03-129.32c-23.13-21.29-51.83-36.62-83.78-43.13L402.12 32h127.12L406.97 206.68z\"]\n};\nvar faMedkit = {\n prefix: 'fal',\n iconName: 'medkit',\n icon: [512, 512, [], \"f0fa\", \"M464 96H352V56c0-13.255-10.745-24-24-24H184c-13.255 0-24 10.745-24 24v40H48c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V144c0-26.51-21.49-48-48-48zM192 64h128v32H192V64zm192 64v320H128V128h256zM32 432V144c0-8.822 7.178-16 16-16h48v320H48c-8.822 0-16-7.178-16-16zm448 0c0 8.822-7.178 16-16 16h-48V128h48c8.822 0 16 7.178 16 16v288zM352 272v32c0 6.627-5.373 12-12 12h-56v56c0 6.627-5.373 12-12 12h-32c-6.627 0-12-5.373-12-12v-56h-56c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h56v-56c0-6.627 5.373-12 12-12h32c6.627 0 12 5.373 12 12v56h56c6.627 0 12 5.373 12 12z\"]\n};\nvar faMegaphone = {\n prefix: 'fal',\n iconName: 'megaphone',\n icon: [576, 512, [], \"f675\", \"M568 32h-16c-4.42 0-8 3.58-8 8v19.33L32 179.8V168c0-4.42-3.58-8-8-8H8c-4.42 0-8 3.58-8 8v176c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-11.8l130.58 30.72c-1.56 6.8-2.58 13.8-2.58 21.07 0 53.02 42.98 96 96 96 45.13 0 82.45-31.3 92.64-73.29L544 452.67V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V40c0-4.42-3.58-8-8-8zM256 448c-35.29 0-64-28.71-64-64 0-4.75.72-9.31 1.76-13.74l124.13 29.21C310.92 427.27 285.93 448 256 448zM32 299.33v-86.66L544 92.2v327.6L32 299.33z\"]\n};\nvar faMeh = {\n prefix: 'fal',\n iconName: 'meh',\n icon: [496, 512, [], \"f11a\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm-80-232c17.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-32zm16 160H152c-8.8 0-16 7.2-16 16s7.2 16 16 16h192c8.8 0 16-7.2 16-16s-7.2-16-16-16z\"]\n};\nvar faMehBlank = {\n prefix: 'fal',\n iconName: 'meh-blank',\n icon: [496, 512, [], \"f5a4\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm-80-296c-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\"]\n};\nvar faMehRollingEyes = {\n prefix: 'fal',\n iconName: 'meh-rolling-eyes',\n icon: [496, 512, [], \"f5a5\", \"M224 224c0-39.8-32.2-72-72-72s-72 32.2-72 72 32.2 72 72 72 72-32.2 72-72zm-72 40c-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 40zm192-112c-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 40zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm64-104H184c-8.8 0-16 7.2-16 16s7.2 16 16 16h128c8.8 0 16-7.2 16-16s-7.2-16-16-16z\"]\n};\nvar faMemory = {\n prefix: 'fal',\n iconName: 'memory',\n icon: [640, 512, [], \"f538\", \"M496 272h32V144h-96v128h64zm-32-96h32v64h-32v-64zm-128 96h32V144h-96v128h64zm-32-96h32v64h-32v-64zm-128 96h32V144h-96v128h64zm-32-96h32v64h-32v-64zm488-16h8V96c0-17.67-14.33-32-32-32H32C14.33 64 0 78.33 0 96v64h8c13.26 0 24 10.74 24 24 0 13.25-10.74 24-24 24H0v240h640V208h-8c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24zm-24 256h-80v-16c0-8.84-7.16-16-16-16s-16 7.16-16 16v16h-96v-16c0-8.84-7.16-16-16-16s-16 7.16-16 16v16h-96v-16c0-8.84-7.16-16-16-16s-16 7.16-16 16v16h-96v-16c0-8.84-7.16-16-16-16s-16 7.16-16 16v16H32v-64h576v64zm0-282.59c-18.91 9-32 28.3-32 50.59s13.09 41.59 32 50.59V320H32v-85.41c18.9-9 32-28.3 32-50.59s-13.1-41.59-32-50.59V96h576v37.41z\"]\n};\nvar faMenorah = {\n prefix: 'fal',\n iconName: 'menorah',\n icon: [640, 512, [], \"f676\", \"M608 0s-32 46.33-32 64 14.33 32 32 32 32-14.33 32-32-32-64-32-64zm-96 96c17.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 32zM64 64C64 46.33 32 0 32 0S0 46.33 0 64s14.33 32 32 32 32-14.33 32-32zm552 64h-16c-4.42 0-8 3.58-8 8v168c0 26.51-21.49 48-48 48H336V136c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v216H96c-26.51 0-48-21.49-48-48V136c0-4.42-3.58-8-8-8H24c-4.42 0-8 3.58-8 8v168c0 44.18 35.82 80 80 80h208v96H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h432c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H336v-96h208c44.18 0 80-35.82 80-80V136c0-4.42-3.58-8-8-8zm-112 0c-4.42 0-8 3.58-8 8v184h32V136c0-4.42-3.58-8-8-8h-16zm-384 0c-4.42 0-8 3.58-8 8v184h32V136c0-4.42-3.58-8-8-8h-16zm288 0c-4.42 0-8 3.58-8 8v184h32V136c0-4.42-3.58-8-8-8h-16zm-192 0c-4.42 0-8 3.58-8 8v184h32V136c0-4.42-3.58-8-8-8h-16z\"]\n};\nvar faMercury = {\n prefix: 'fal',\n iconName: 'mercury',\n icon: [288, 512, [], \"f223\", \"M288 208c0-57-33.1-106.2-81.1-129.6 24-14.9 40.9-37.9 45.3-64.5C253.4 6.6 247.7 0 240.3 0h-8.1c-5.7 0-10.7 4.1-11.8 9.7C214.8 40.4 182.7 64 144 64S73.2 40.4 67.6 9.7C66.6 4 61.6 0 55.8 0h-8.1c-7.4 0-13.1 6.6-11.9 13.9 4.4 26.6 21.3 49.7 45.3 64.5C33.1 101.8 0 151 0 208c0 74.2 56.2 135.3 128.3 143.1-.2.9-.3 1.8-.3 2.7V416H76c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h52v52c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-52h52c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-52v-62.2c0-.9-.1-1.8-.3-2.7C231.8 343.3 288 282.2 288 208zM144 320c-61.9 0-112-50-112-112 0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112z\"]\n};\nvar faMeteor = {\n prefix: 'fal',\n iconName: 'meteor',\n icon: [512, 512, [], \"f753\", \"M510.97268,31.81922C501.16,64.21764,477.1594,140.996,452.15883,199.185c2.90631.89041,5.50012,1.70271,7.90643,2.39a31.03387,31.03387,0,0,1,19.5942,17.69885,31.36973,31.36973,0,0,1-1.18753,26.39987c-22.59427,43.19268-81.22061,149.96374-139.5032,208.24652a198.87529,198.87529,0,0,1-280.91271,0c-77.408-77.38754-77.408-203.45081,0-280.83835C116.36986,114.79916,223.15357,56.11022,266.37331,33.61566a30.5167,30.5167,0,0,1,26.3756-1.18721,31.09638,31.09638,0,0,1,17.71916,19.589c.68752,2.40567,1.59379,4.99879,2.40631,7.90434,58.50134-25.30638,135.09685-49.0975,167.37884-58.892a24.72164,24.72164,0,0,1,30.71946,30.78943ZM476.06563,35.9276C435.65845,48.31523,360.75048,72.51251,309.3743,96.60043l-16.90664,7.90434-5.21887-17.99565c-2.78132-9.70078-5.37513-18.4018-7.37517-24.99395C239.24769,83.80665,135.74531,140.5898,80.65029,195.68585c-64.90774,64.87494-64.90774,170.55252,0,235.53681s170.72267,64.89056,235.59916,0c55.12627-55.08044,111.90883-158.55542,133.72183-200.45154-6.00014-.79668-14.71909-3.38981-24.40681-6.20163l-18.00042-5.18624,7.90643-16.90217C439.37728,151.49341,463.75284,76.30847,476.06563,35.9276Zm-148.19091,276.027c0,70.57668-57.40757,127.96906-128.00294,127.96906a127.96906,127.96906,0,1,1,0-255.93812C270.46715,183.98556,327.96847,241.47166,327.87472,311.95462Zm-32.00073.09372a96.00221,96.00221,0,1,0-96.00221,95.9768C252.873,408.02514,295.96774,364.94181,295.874,312.04834Zm-88.002-32.086a24.00055,24.00055,0,1,1-24.00055-23.9942A23.95369,23.95369,0,0,1,207.872,279.96235Zm32.00074,72.07633a16.00037,16.00037,0,1,1-16.00037-15.99614A16.04933,16.04933,0,0,1,239.8727,352.03868Z\"]\n};\nvar faMicrochip = {\n prefix: 'fal',\n iconName: 'microchip',\n icon: [512, 512, [], \"f2db\", \"M368 0H144c-26.51 0-48 21.49-48 48v416c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48V48c0-26.51-21.49-48-48-48zm16 464c0 8.822-7.178 16-16 16H144c-8.822 0-16-7.178-16-16V48c0-8.822 7.178-16 16-16h224c8.822 0 16 7.178 16 16v416zm128-358v12a6 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\"]\n};\nvar faMicrophone = {\n prefix: 'fal',\n iconName: 'microphone',\n icon: [320, 512, [], \"f130\", \"M160 352c53.02 0 96-42.98 96-96V96c0-53.02-42.98-96-96-96S64 42.98 64 96v160c0 53.02 42.98 96 96 96zM96 96c0-35.29 28.71-64 64-64s64 28.71 64 64v160c0 35.29-28.71 64-64 64s-64-28.71-64-64V96zm216 96h-16c-4.42 0-8 3.58-8 8v56c0 73.46-62.2 132.68-136.73 127.71C83.3 379.18 32 319.61 32 251.49V200c0-4.42-3.58-8-8-8H8c-4.42 0-8 3.58-8 8v50.34c0 83.39 61.65 156.12 144 164.43V480H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h176c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-72v-65.01C256.71 406.9 320 338.8 320 256v-56c0-4.42-3.58-8-8-8z\"]\n};\nvar faMicrophoneAlt = {\n prefix: 'fal',\n iconName: 'microphone-alt',\n icon: [320, 512, [], \"f3c9\", \"M160 352c53.02 0 96-42.98 96-96V96c0-53.02-42.98-96-96-96S64 42.98 64 96v160c0 53.02 42.98 96 96 96zM96 96c0-35.29 28.71-64 64-64s64 28.71 64 64h-56c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56v32h-56c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56v32h-56c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56c0 35.29-28.71 64-64 64s-64-28.71-64-64V96zm216 96h-16c-4.42 0-8 3.58-8 8v56c0 73.46-62.2 132.68-136.73 127.71C83.3 379.18 32 319.61 32 251.49V200c0-4.42-3.58-8-8-8H8c-4.42 0-8 3.58-8 8v50.34c0 83.39 61.64 156.12 144 164.43V480H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h176c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-72v-65.01C256.71 406.9 320 338.8 320 256v-56c0-4.42-3.58-8-8-8z\"]\n};\nvar faMicrophoneAltSlash = {\n prefix: 'fal',\n iconName: 'microphone-alt-slash',\n icon: [640, 512, [], \"f539\", \"M256 96c0-35.3 28.7-64 64-64s64 28.7 64 64h-56c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h56v32h-56c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h56v32h-27l57.7 45.4c.6-4.4 1.3-8.8 1.3-13.4V96c0-53-43-96-96-96s-96 43-96 96v23.3l32 25.2zm224 160v-56c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56c0 12.3-2.3 24-5.6 35.3l27 21.3C476.2 295 480 276 480 256zm-160 96c12.6 0 24.5-2.6 35.5-7l-32.2-25.4c-1.1.1-2.1.3-3.3.3-31.3 0-57.3-22.6-62.8-52.4l-33.2-26V256c0 53 43 96 96 96zm317 133.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zM408 480h-72v-65c27.2-2.7 52.1-12.7 73.6-27.3l-26.4-20.8c-21 12-45.6 18.6-71.9 16.8-68-4.5-119.3-64.1-119.3-132.2v-35.2l-28.5-22.5c-2 1.5-3.5 3.5-3.5 6.1v50.3c0 83.4 61.6 156.1 144 164.4V480h-72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faMicrophoneSlash = {\n prefix: 'fal',\n iconName: 'microphone-slash',\n icon: [640, 512, [], \"f131\", \"M256 96c0-35.3 28.7-64 64-64s64 28.7 64 64v149.3l30.7 24.1c.6-4.4 1.3-8.8 1.3-13.4V96c0-53-43-96-96-96s-96 43-96 96v23.3l32 25.2zm224 160v-56c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56c0 12.3-2.3 24-5.6 35.3l27 21.3C476.2 295 480 276 480 256zm-72 224h-72v-65c27.2-2.7 52.1-12.7 73.6-27.3l-26.4-20.8c-21 12-45.6 18.6-71.9 16.8-68-4.5-119.3-64.1-119.3-132.2v-35.2l-28.5-22.5c-2 1.5-3.5 3.5-3.5 6.1v50.3c0 83.4 61.7 156.1 144 164.4V480h-72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-88-128c12.6 0 24.5-2.6 35.5-7l-32.2-25.4c-1.1.1-2.1.3-3.3.3-31.3 0-57.3-22.6-62.8-52.4l-33.2-26V256c0 53 43 96 96 96zm317 133.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3z\"]\n};\nvar faMicrophoneStand = {\n prefix: 'fal',\n iconName: 'microphone-stand',\n icon: [512, 512, [], \"f8cb\", \"M475.78 33.5a122.38 122.38 0 0 0-170.45 2.13l-28.77 28.68a121 121 0 0 0-35.66 85.08L12.06 406.85a47.88 47.88 0 0 0 2 65.71l25.46 25.38a48.27 48.27 0 0 0 65.93 2l150.42-133.6V504a8 8 0 0 0 8 8H280a8 8 0 0 0 8-8V338l75.85-66.08a121.82 121.82 0 0 0 85.37-35.54l25.09-25C523 162.86 525.64 80.79 475.78 33.5zM84.25 476a16.08 16.08 0 0 1-22-.68l-25.44-25.39a16 16 0 0 1-.72-21.86l219.39-246.83 76.4 76.13zM426.5 213.74a89.56 89.56 0 0 1-62.92 26.17h-3.8L273 153.42v-3.78a88.92 88.92 0 0 1 26.27-62.7l11.06-11 127.24 126.77zm33.28-34.14L333.52 53.77A89.34 89.34 0 0 1 459.78 179.6z\"]\n};\nvar faMicroscope = {\n prefix: 'fal',\n iconName: 'microscope',\n icon: [512, 512, [], \"f610\", \"M456 416h-40.99C454.22 386.81 480 340.52 480 288c0-88.22-71.78-160-160-160V64c0-17.67-14.33-32-32-32V16c0-8.84-7.16-16-16-16h-96c-8.84 0-16 7.16-16 16v16c-17.67 0-32 14.33-32 32v224c0 17.67 14.33 32 32 32v48c0 8.84 7.16 16 16 16h96c8.84 0 16-7.16 16-16v-48c17.67 0 32-14.33 32-32V160c70.59 0 128 57.42 128 128s-57.41 128-128 128H56c-30.88 0-56 25.12-56 56 0 22.06 17.94 40 40 40h432c22.06 0 40-17.94 40-40 0-30.88-25.12-56-56-56zm-200-64h-64v-32h64v32zm32-64H160V64h32V32h64v32h32v224zm184 192H40c-4.42 0-8-3.58-8-8 0-13.26 10.75-24 24-24h400c13.25 0 24 10.74 24 24 0 4.42-3.58 8-8 8z\"]\n};\nvar faMicrowave = {\n prefix: 'fal',\n iconName: 'microwave',\n icon: [512, 512, [], \"e01b\", \"M480,64H32A32,32,0,0,0,0,96V416a32,32,0,0,0,32,32H48l24,32h48l24-32H368l24,32h48l24-32h16a32,32,0,0,0,32-32V96A32,32,0,0,0,480,64Zm0,352H32V96H480ZM432,256a16,16,0,1,0-16-16A16,16,0,0,0,432,256Zm0-64a16,16,0,1,0-16-16A16,16,0,0,0,432,192ZM96,384H352a32,32,0,0,0,32-32V160a32,32,0,0,0-32-32H96a32,32,0,0,0-32,32V352A32,32,0,0,0,96,384Zm0-224H352V352H96Z\"]\n};\nvar faMindShare = {\n prefix: 'fal',\n iconName: 'mind-share',\n icon: [640, 512, [], \"f677\", \"M288.1 272.6V76c0-24.3 19.8-44 44.2-44 30.7 0 39.9 22.5 45.8 45.5l12.7-.3h.4c25.9 0 45.5 19.7 45.5 43.8 0 6.2-1.7 11.9-4.2 22.8 22.4 9.1 40.8 20.7 47 42.9 2.8-1.7 5.2-3.7 8.3-5 3.6-1.5 7.3-2.6 11.1-3.4 3.7-.8 7.5-1.2 11.3-1.3-8.5-26.1-28.2-44.4-41.5-52 2.7-37.7-25.9-74.3-66.7-79.4C390 18.2 362.8 0 332.2 0 307.6 0 286 11.9 272 29.9 258 11.9 236.4 0 211.8 0c-30.6 0-57.7 18.2-69.7 45.6-40.8 5.1-69.3 41.7-66.7 79.4-21 12.2-58.6 50.9-41.1 105.3C12.9 247.4 0 273.4 0 301c0 32.7 17.4 62.4 45.3 78.5-2.3 48.2 36.7 88.7 84.9 87.4 14.2 27.4 42.6 45 74.1 45 19.1 0 36.5-6.8 50.6-17.7-6.3-8.7-11.8-17.9-16.2-27.6-9.1 8.2-21.1 13.3-34.3 13.3-31.9 0-44.2-21.8-53.1-48.2-16.3 2.7-18.3 3.2-22.2 3.2-28.5 0-51.7-23.1-51.7-51.5 0-6.2.9-9.1 3.7-23-25.6-10.4-49-24.1-49-59.4 0-33.9 23-46.9 42.9-58.3-12.6-25.7-12.8-29.2-12.8-39.2 0-33.9 21.9-48.5 49.4-59.7-2.5-10.9-4.2-16.6-4.2-22.8 0-24.1 19.6-43.8 45.5-43.8h.4l12.7.3c5.9-22.9 15-45.5 45.8-45.5 24.3 0 44.2 19.7 44.2 44v228.4c9-12.1 20-22.7 32.1-31.8zm342.2 40.6l-96-95.2c-9.2-9.2-22.4-11.7-34.3-6.8-12.1 5.1-19.9 17-19.9 30.4v31.2h-97.2c-6.1-.1-12 0-18.1 1-53.8 7.9-97.5 50.6-106.7 103.9 0 .2-.1.5-.2.7-8.4 50.3 13.2 100.9 55.2 128.8 4.8 3.2 10.2 4.8 15.6 4.8 18.7 0 32.6-18.9 26.3-37.6-4.3-12.8-4.9-39.6 7.4-56.9 8.1-11.2 20.4-16.7 37.7-16.7h80V432c0 13.4 7.8 25.3 19.9 30.4 11.9 5 25.1 2.4 34.3-6.8l96-95.2c6.2-6.2 9.7-14.6 9.7-23.5s-3.4-17.4-9.7-23.7zM512 432v-63.2H400c-34.8 0-53.8 16.3-63.7 30-17 23.7-18.3 54.4-14.5 75-25.5-21.8-38.1-56-32.4-90.1 6.7-40.2 39.6-72.3 80-78.2 4.4-.7 8.7-.6 14.7-.6h128l-.3-64.1 96 95.2-95.8 96z\"]\n};\nvar faMinus = {\n prefix: 'fal',\n iconName: 'minus',\n icon: [384, 512, [], \"f068\", \"M376 232H8c-4.42 0-8 3.58-8 8v32c0 4.42 3.58 8 8 8h368c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8z\"]\n};\nvar faMinusCircle = {\n prefix: 'fal',\n iconName: 'minus-circle',\n icon: [512, 512, [], \"f056\", \"M140 274c-6.6 0-12-5.4-12-12v-12c0-6.6 5.4-12 12-12h232c6.6 0 12 5.4 12 12v12c0 6.6-5.4 12-12 12H140zm364-18c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-32 0c0-119.9-97.3-216-216-216-119.9 0-216 97.3-216 216 0 119.9 97.3 216 216 216 119.9 0 216-97.3 216-216z\"]\n};\nvar faMinusHexagon = {\n prefix: 'fal',\n iconName: 'minus-hexagon',\n icon: [576, 512, [], \"f307\", \"M441.5 39.8C432.9 25.1 417.1 16 400 16H176c-17.1 0-32.9 9.1-41.5 23.8l-112 192c-8.7 14.9-8.7 33.4 0 48.4l112 192c8.6 14.7 24.4 23.8 41.5 23.8h224c17.1 0 32.9-9.1 41.5-23.8l112-192c8.7-14.9 8.7-33.4 0-48.4l-112-192zm84.3 224.3l-112 192c-2.9 4.9-8.2 7.9-13.8 7.9H176c-5.7 0-11-3-13.8-7.9l-112-192c-2.9-5-2.9-11.2 0-16.1l112-192c2.8-5 8.1-8 13.8-8h224c5.7 0 11 3 13.8 7.9l112 192c2.9 5 2.9 11.2 0 16.2zM172 274c-6.6 0-12-5.4-12-12v-12c0-6.6 5.4-12 12-12h232c6.6 0 12 5.4 12 12v12c0 6.6-5.4 12-12 12H172z\"]\n};\nvar faMinusOctagon = {\n prefix: 'fal',\n iconName: 'minus-octagon',\n icon: [512, 512, [], \"f308\", \"M361.5 14.1c-9-9-21.2-14.1-33.9-14.1H184.5c-12.7 0-24.9 5.1-33.9 14.1L14.1 150.5c-9 9-14.1 21.2-14.1 33.9v143.1c0 12.7 5.1 24.9 14.1 33.9l136.5 136.5c9 9 21.2 14.1 33.9 14.1h143.1c12.7 0 24.9-5.1 33.9-14.1L498 361.4c9-9 14.1-21.2 14.1-33.9v-143c0-12.7-5.1-24.9-14.1-33.9L361.5 14.1zM480 327.5c0 4.3-1.7 8.3-4.7 11.3L338.9 475.3c-3 3-7 4.7-11.3 4.7H184.5c-4.3 0-8.3-1.7-11.3-4.7L36.7 338.9c-3-3-4.7-7-4.7-11.3V184.5c0-4.3 1.7-8.3 4.7-11.3L173.1 36.7c3-3 7-4.7 11.3-4.7h143.1c4.3 0 8.3 1.7 11.3 4.7l136.5 136.5c3 3 4.7 7 4.7 11.3v143zM140 274c-6.6 0-12-5.4-12-12v-12c0-6.6 5.4-12 12-12h232c6.6 0 12 5.4 12 12v12c0 6.6-5.4 12-12 12H140z\"]\n};\nvar faMinusSquare = {\n prefix: 'fal',\n iconName: 'minus-square',\n icon: [448, 512, [], \"f146\", \"M400 64c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352m0-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-60 242c6.6 0 12-5.4 12-12v-12c0-6.6-5.4-12-12-12H108c-6.6 0-12 5.4-12 12v12c0 6.6 5.4 12 12 12h232z\"]\n};\nvar faMistletoe = {\n prefix: 'fal',\n iconName: 'mistletoe',\n icon: [576, 512, [], \"f7b4\", \"M542.1 197.4c-29-29-104.4-41.3-143.9-45.8L304 57.4V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v49.4l-94.2 94.2c-39.5 4.6-114.9 16.9-143.9 45.8-40 40-45.4 99.4-12.1 132.7C36.5 344.8 56.3 352 77.2 352c26.6 0 55-11.5 77.4-33.9 14.9-14.9 25.3-42 32.6-70.2 5.6 4.9 12.7 8.1 20.8 8.1 17.7 0 32-14.3 32-32s-14.3-32-32-32c-3.6 0-6.9 1-10.2 2.1 1.1-7.3 1.9-13.9 2.6-19.9l71.6-71.6v170.5c-27.3 30.4-80 94.5-80 136.4 0 56.6 43 102.4 96 102.4s96-45.8 96-102.4c0-41.9-52.7-106-80-136.4V102.6l71.6 71.6c4.6 39.5 16.9 114.9 45.8 143.9 22.4 22.4 50.8 33.9 77.4 33.9 20.9 0 40.7-7.2 55.4-21.8 33.3-33.4 27.9-92.8-12.1-132.8zM132 295.5C116.4 311.1 96.4 320 77.2 320c-9.2 0-22.4-2.2-32.7-12.5C24 287.1 29.6 247 56.5 220c16.5-16.5 66.2-28.7 110.4-35-6.1 44.2-18.3 93.9-34.9 110.5zm220 114.1c0 38.8-28.7 70.4-64 70.4s-64-31.6-64-70.4c0-23.5 32.9-70.4 64-106.4 31.1 36 64 82.8 64 106.4zm179.5-102.1C521.2 317.8 508 320 498.8 320c-19.2 0-39.2-8.9-54.8-24.5-16.5-16.5-28.7-66.2-35-110.4 44.2 6.2 93.8 18.4 110.4 35 27 26.9 32.6 67 12.1 87.4zM384 64c17.7 0 32-14.3 32-32S401.7 0 384 0s-32 14.3-32 32 14.3 32 32 32z\"]\n};\nvar faMitten = {\n prefix: 'fal',\n iconName: 'mitten',\n icon: [448, 512, [], \"f7b5\", \"M420.9 197.6c-13.5-11.4-30.6-17.6-48.2-17.6-21.9 0-42.5 9.5-56.9 26.1l-20.4-89C279.7 48.1 219.8 0 149.8 0c-11.3 0-22.7 1.3-33.8 3.9C35.6 22.6-14.7 103.9 3.8 185l44.6 195c.4 1.9 1.1 3.7 1.6 5.6-9.4 3.1-18 11.8-18 22.4v80c0 13.3 10.7 24 23.8 24h303.1c13.1 0 25.2-10.7 25.2-24v-80c0-11.4-9.4-20.4-19.9-22.9l66.4-80.4c26.6-32.2 22.2-80.2-9.7-107.1zM352 480H64v-64h288v64zm54.2-195.8L323.7 384H82.9c-1.2-3.7-2.7-7.4-3.6-11.3l-44.6-195C20.1 113.8 59.7 49.8 123.1 35c8.8-2 17.7-3.1 26.6-3.1 55.2 0 102.4 37.9 114.8 92.3L292 244.6l7.2 31.4 20.5-24.8 19.4-23.5c8.3-10.1 20.5-15.8 33.5-15.8 10.2 0 20 3.6 27.9 10.2 18.6 15.6 21.1 43.4 5.7 62.1z\"]\n};\nvar faMobile = {\n prefix: 'fal',\n iconName: 'mobile',\n icon: [320, 512, [], \"f10b\", \"M192 416c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zM320 48v416c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V48C0 21.5 21.5 0 48 0h224c26.5 0 48 21.5 48 48zm-32 0c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v416c0 8.8 7.2 16 16 16h224c8.8 0 16-7.2 16-16V48z\"]\n};\nvar faMobileAlt = {\n prefix: 'fal',\n iconName: 'mobile-alt',\n icon: [320, 512, [], \"f3cd\", \"M192 416c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm32-320H96v240h128V96m20-32c6.6 0 12 5.4 12 12v280c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12V76c0-6.6 5.4-12 12-12h168zm76-16v416c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V48C0 21.5 21.5 0 48 0h224c26.5 0 48 21.5 48 48zm-32 0c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v416c0 8.8 7.2 16 16 16h224c8.8 0 16-7.2 16-16V48z\"]\n};\nvar faMobileAndroid = {\n prefix: 'fal',\n iconName: 'mobile-android',\n icon: [320, 512, [], \"f3ce\", \"M196 448h-72c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12zM320 48v416c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V48C0 21.5 21.5 0 48 0h224c26.5 0 48 21.5 48 48zm-32 0c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v416c0 8.8 7.2 16 16 16h224c8.8 0 16-7.2 16-16V48z\"]\n};\nvar faMobileAndroidAlt = {\n prefix: 'fal',\n iconName: 'mobile-android-alt',\n icon: [320, 512, [], \"f3cf\", \"M224 96v240H96V96h128m48-96H48C21.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-48zM48 480c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h224c8.8 0 16 7.2 16 16v416c0 8.8-7.2 16-16 16H48zM244 64H76c-6.6 0-12 5.4-12 12v280c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12zm-48 352h-72c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h72c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12z\"]\n};\nvar faMoneyBill = {\n prefix: 'fal',\n iconName: 'money-bill',\n icon: [640, 512, [], \"f0d6\", \"M320 144c-53 0-96 50.1-96 112 0 61.8 43 112 96 112s96-50.1 96-112-43-112-96-112zm0 192c-35.3 0-64-35.9-64-80s28.7-80 64-80 64 35.9 64 80-28.7 80-64 80zM608 64H32C14.3 64 0 78.3 0 96v320c0 17.7 14.3 32 32 32h576c17.7 0 32-14.3 32-32V96c0-17.7-14.3-32-32-32zM32 96h64c0 35.3-28.7 64-64 64V96zm0 320v-64c35.3 0 64 28.7 64 64H32zm576 0h-64c0-35.3 28.7-64 64-64v64zm0-96c-52.9 0-96 43.1-96 96H128c0-52.9-43.1-96-96-96V192c52.9 0 96-43.1 96-96h384c0 52.9 43.1 96 96 96v128zm0-160c-35.3 0-64-28.7-64-64h64v64z\"]\n};\nvar faMoneyBillAlt = {\n prefix: 'fal',\n iconName: 'money-bill-alt',\n icon: [640, 512, [], \"f3d1\", \"M608 64H32C14.3 64 0 78.3 0 96v320c0 17.7 14.3 32 32 32h576c17.7 0 32-14.3 32-32V96c0-17.7-14.3-32-32-32zM32 96h64c0 35.3-28.7 64-64 64zm0 320v-64c35.3 0 64 28.7 64 64zm576 0h-64c0-35.3 28.7-64 64-64zm0-96c-52.9 0-96 43.1-96 96H128c0-52.9-43.1-96-96-96V192c52.9 0 96-43.1 96-96h384c0 52.9 43.1 96 96 96zm0-160c-35.3 0-64-28.7-64-64h64zm-288-32c-61.9 0-112 57.3-112 128s50.1 128 112 128c61.8 0 112-57.3 112-128s-50.1-128-112-128zm0 224c-44.1 0-80-43.1-80-96s35.9-96 80-96 80 43.1 80 96-35.9 96-80 96zm32-63.9h-16v-88c0-4.4-3.6-8-8-8h-13.7c-4.7 0-9.4 1.4-13.3 4l-15.3 10.2c-3.7 2.5-4.6 7.4-2.2 11.1l8.9 13.3c2.5 3.7 7.4 4.6 11.1 2.2l.5-.3V288h-16c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h64c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-7.9z\"]\n};\nvar faMoneyBillWave = {\n prefix: 'fal',\n iconName: 'money-bill-wave',\n icon: [640, 512, [], \"f53a\", \"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-112zm0 192c-35.29 0-64-35.89-64-80s28.71-80 64-80 64 35.89 64 80-28.71 80-64 80zM621.16 54.46C582.37 38.19 543.55 32 504.75 32c-123.17-.01-246.33 62.34-369.5 62.34C70.34 94.34 46.9 79 32.25 79 15.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.33-62.35 369.5-62.35 64.91 0 88.34 15.35 103 15.35 17.21 0 32.25-13.32 32.25-31.81V83.93c0-12.64-7.23-24.6-18.84-29.47zm-588.21 56.8c20.22 6.42 41.03 10.53 62.67 12.89-1.97 33.41-29.23 60.04-62.89 60.43l.22-73.32zM32 428.07l.13-42.54c33.58.07 60.88 26.31 63.38 59.43-22.45-3.04-43.63-8.45-63.51-16.89zm575.05-27.33c-20.16-6.4-40.9-10.51-62.47-12.87 2.89-32.5 29.69-58.14 62.69-58.52l-.22 71.39zm.31-103.54c-50 .34-90.59 39.32-94.58 88.6-70.73-1.43-137.18 15.82-200.6 31.87-75.07 19-126.54 31.21-184.41 29.87-1.23-52.02-43.48-94.01-95.55-94.13l.41-136.67c50.65-.34 91.72-40.32 94.78-90.52 70.53 1.41 137.02-15.83 200.4-31.87C402.6 75.41 454.3 63.13 512.03 64.46c.18 52.93 43.01 95.94 95.74 96.07l-.41 136.67zm.51-168.8c-34.24-.07-62.04-27.34-63.58-61.38 22.53 3.03 43.78 8.45 63.71 16.91l-.13 44.47z\"]\n};\nvar faMoneyBillWaveAlt = {\n prefix: 'fal',\n iconName: 'money-bill-wave-alt',\n icon: [640, 512, [], \"f53b\", \"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-112zm0 192c-35.29 0-64-35.89-64-80s28.71-80 64-80 64 35.89 64 80-28.71 80-64 80zM621.16 54.46C582.37 38.19 543.55 32 504.75 32c-123.17-.01-246.33 62.34-369.5 62.34C70.34 94.34 46.9 79 32.25 79 15.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.33-62.35 369.5-62.35 64.91 0 88.34 15.35 103 15.35 17.21 0 32.25-13.32 32.25-31.81V83.93c0-12.64-7.23-24.6-18.84-29.47zm-22.69 344c-16.94-4.79-45.28-12.8-93.72-12.8-65.57 0-130.15 16.34-192.6 32.15-61.35 15.53-119.3 30.2-176.9 30.2-37.96 0-71.99-6.53-103.25-19.93l-.49-317.1c1.55.18 6.25 1.51 10.02 2.57 16.93 4.79 45.28 12.8 93.71 12.8 65.57 0 130.14-16.35 192.59-32.15C389.2 78.66 447.15 64 504.75 64c37.97 0 72 6.54 103.25 19.93l.49 317.1c-1.55-.18-6.25-1.51-10.02-2.57z\"]\n};\nvar faMoneyCheck = {\n prefix: 'fal',\n iconName: 'money-check',\n icon: [640, 512, [], \"f53c\", \"M624 32H16C7.16 32 0 39.16 0 48v400c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V48c0-8.84-7.16-16-16-16zm-16 416H32V160h576v288zm0-320H32V64h576v64zM104 384h144c4.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 8zm288 0h144c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H392c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm-288-96h208c4.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 8zm296 0h128c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16H400c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16zm16-64h96v32h-96v-32z\"]\n};\nvar faMoneyCheckAlt = {\n prefix: 'fal',\n iconName: 'money-check-alt',\n icon: [640, 512, [], \"f53d\", \"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-32zm0 416H32V64h576v384zM296 320h80c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-80c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm240-32h-80c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h80c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-240-64h240c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H296c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm-161.28 33.72l42.19 11.44c4.19 1.14 7.09 4.55 7.09 8.3 0 4.8-4.5 8.7-10.06 8.7H147.6c-4.15 0-8.23-1.04-11.77-2.95-3.08-1.67-6.84-1.37-9.24 1.18l-12.07 12.73c-3.11 3.28-2.6 8.64 1.13 11.19 8.3 5.65 18.06 8.88 28.35 9.52V328c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-10.25c22.18-1.1 40-18.57 40-40.3 0-18.17-12.62-34.28-30.72-39.17l-42.19-11.44c-4.19-1.14-7.09-4.55-7.09-8.3 0-4.8 4.5-8.7 10.06-8.7h26.34c4.15 0 8.23 1.04 11.77 2.95 3.08 1.66 6.84 1.37 9.24-1.18l12.07-12.73c3.11-3.28 2.6-8.64-1.13-11.19-8.3-5.65-18.06-8.88-28.35-9.52V168c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v10.25c-22.18 1.1-40 18.57-40 40.3 0 18.17 12.62 34.28 30.72 39.17z\"]\n};\nvar faMoneyCheckEdit = {\n prefix: 'fal',\n iconName: 'money-check-edit',\n icon: [640, 512, [], \"f872\", \"M425.23 406.49A32.06 32.06 0 0 0 448 416h64a32 32 0 0 0 32-32v-64a32 32 0 0 0-9.5-22.76L246.68 12.07a41.15 41.15 0 0 0-58.24 0l-48.38 48.4A41.48 41.48 0 0 0 128 89.89 40.68 40.68 0 0 0 140.34 119zM289.46 100L512 320v64h-64L228.1 161.4l61.36-61.4zM162.69 83.09l48.39-48.4A9.21 9.21 0 0 1 217.6 32a9 9 0 0 1 6.45 2.69l44.53 44.54-61.36 61.38-44.53-44.54a9.18 9.18 0 0 1 0-12.98zM128 408a8 8 0 0 0 8 8h253.61l-31.71-32H136a8 8 0 0 0-8 8zm8-88h158.49l-31.71-32H136a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm472-192H409.15l32.3 32H608v320H32V160h104l-18-18.12A73.25 73.25 0 0 1 107.13 128H32a32 32 0 0 0-32 32v320a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32z\"]\n};\nvar faMoneyCheckEditAlt = {\n prefix: 'fal',\n iconName: 'money-check-edit-alt',\n icon: [640, 512, [], \"f873\", \"M425.23 406.49A32.06 32.06 0 0 0 448 416h64a32 32 0 0 0 32-32v-64a32 32 0 0 0-9.5-22.76L246.68 12.07a41.15 41.15 0 0 0-58.24 0l-48.38 48.4A41.48 41.48 0 0 0 128 89.89 40.68 40.68 0 0 0 140.34 119zM289.46 100L512 320v64h-64L228.1 161.4l61.36-61.4zM162.69 83.09l48.39-48.4A9.21 9.21 0 0 1 217.6 32a9 9 0 0 1 6.45 2.69l44.53 44.54-61.36 61.38-44.53-44.54a9.18 9.18 0 0 1 0-12.98zM224 408a8 8 0 0 0 8 8h157.61l-31.71-32H232a8 8 0 0 0-8 8zm8-88h62.49l-31.71-32H232a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm376-192H409.15l32.3 32H608v320H32V160h104l-18-18.12A73.25 73.25 0 0 1 107.13 128H32a32 32 0 0 0-32 32v320a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32zM136 424h16a8 8 0 0 0 8-8v-16.12c23.62-.63 42.67-20.54 42.67-45.07 0-20-13-37.81-31.58-43.39l-45-13.5c-5.16-1.54-8.77-6.78-8.77-12.73 0-7.27 5.29-13.19 11.79-13.19h28.11a24 24 0 0 1 12.82 3.72 8.21 8.21 0 0 0 10.13-.73l11.75-11.21a8 8 0 0 0-.57-12.14A57.15 57.15 0 0 0 160 240.29V224a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16.12c-23.62.63-42.67 20.55-42.67 45.07 0 20 13 37.81 31.58 43.39l45 13.5c5.16 1.54 8.77 6.78 8.77 12.73 0 7.27-5.29 13.19-11.79 13.19h-28.12a24.08 24.08 0 0 1-12.77-3.72 8.21 8.21 0 0 0-10.13.73l-11.8 11.21a8 8 0 0 0 .57 12.14A57.23 57.23 0 0 0 128 399.71V416a8 8 0 0 0 8 8z\"]\n};\nvar faMonitorHeartRate = {\n prefix: 'fal',\n iconName: 'monitor-heart-rate',\n icon: [576, 512, [], \"f611\", \"M544 0H32C14.33 0 0 14.33 0 32v448c0 17.67 14.33 32 32 32h512c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32zm0 480H32V272h134.12l43.56 87.16c2.72 5.45 8.28 8.84 14.31 8.84.38 0 .75-.02 1.12-.05 6.47-.45 12-4.75 14.06-10.89L288 210.59l16.81 50.45c2.18 6.54 8.3 10.95 15.19 10.95h152c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H331.53l-28.34-85.06c-4.38-13.06-26-13.06-30.38 0L221.03 310.3l-30.72-61.45a15.996 15.996 0 0 0-14.31-8.84H32V32h512v448z\"]\n};\nvar faMonkey = {\n prefix: 'fal',\n iconName: 'monkey',\n icon: [640, 512, [], \"f6fb\", \"M576 192c35.35 0 64-28.65 64-64 0-41.85-35.37-64-64-64h-5.88C556.9 26.8 521.74 0 480 0s-76.9 26.8-90.12 64H384c-28.22 0-64 21.93-64 64 0 35.35 28.65 64 64 64h5.88C391.02 195.2 192 218.88 192 416v32c0 11.71 3.39 22.55 8.9 32H176c-26.47 0-48-21.53-48-48V192c0-35.3-28.72-64-64-64S0 156.7 0 192v48c0 8.84 7.16 16 16 16s16-7.16 16-16v-48c0-17.64 14.34-32 32-32s32 14.36 32 32v240c0 44.11 35.88 80 80 80h240c17.67 0 32-14.33 32-32 0-26.5-16.19-49.3-39.21-59l72.48-54.79L512 458.36V480c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-26.8c0-8.62-1.38-17.15-4.11-25.33l-65.42-192.21c14.4-11.15 25.44-26.16 31.65-43.65H576zm0-96c14.22 0 32 11.05 32 32 0 17.64-14.36 32-32 32V96zm-192 64c-17.64 0-32-14.36-32-32 0-20.84 17.57-32 32-32v64zm189.53 277.98c1.63 4.9 2.47 10.04 2.47 15.21V480h-32v-26.83L497.54 313.8 320 448h64c17.66 0 32 14.36 32 32H256c-17.67 0-32-14.33-32-32v-32c0-103.74 82.34-188.04 185.2-191.66C426.76 243.66 451.84 256 480 256c10.48 0 20.38-2.1 29.82-5.2l63.71 187.18zM544 160c0 35.29-28.71 64-64 64s-64-28.71-64-64V96c0-35.29 28.71-64 64-64s64 28.71 64 64v64zm-96-64c-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-16z\"]\n};\nvar faMonument = {\n prefix: 'fal',\n iconName: 'monument',\n icon: [384, 512, [], \"f5a6\", \"M368 416h-48l-30.86-315.26a31.97 31.97 0 0 0-9.21-19.44L203.31 4.69C200.19 1.56 196.09 0 192 0s-8.19 1.56-11.31 4.69L104.08 81.3a31.97 31.97 0 0 0-9.21 19.44L64 416H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h352c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zM126.71 103.92l65.3-65.3 65.29 65.23L287.85 416H96.15l30.56-312.08zM352 480H32v-32h320v32zM232 256h-80c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faMoon = {\n prefix: 'fal',\n iconName: 'moon',\n icon: [512, 512, [], \"f186\", \"M448.964 365.617C348.188 384.809 255.14 307.765 255.14 205.419c0-58.893 31.561-112.832 82.574-141.862 25.83-14.7 19.333-53.859-10.015-59.28A258.114 258.114 0 0 0 280.947 0c-141.334 0-256 114.546-256 256 0 141.334 114.547 256 256 256 78.931 0 151.079-35.924 198.85-94.783 18.846-23.22-1.706-57.149-30.833-51.6zM280.947 480c-123.712 0-224-100.288-224-224s100.288-224 224-224c13.984 0 27.665 1.294 40.94 3.745-58.972 33.56-98.747 96.969-98.747 169.674 0 122.606 111.613 214.523 231.81 191.632C413.881 447.653 351.196 480 280.947 480z\"]\n};\nvar faMoonCloud = {\n prefix: 'fal',\n iconName: 'moon-cloud',\n icon: [576, 512, [], \"f754\", \"M320 300.8c0-45.4-36.6-82.4-81.8-83.2-16.1-34.1-50.8-57.6-90.2-57.6-41.7 0-77.6 25.2-92.5 62.5C23 233.9 0 264.6 0 300.8 0 346.7 37.3 384 83.2 384h153.6c45.9 0 83.2-37.3 83.2-83.2zM236.8 352H83.2C54.9 352 32 329.1 32 300.8c0-27.5 21.8-49.8 49-51 4.9-32.7 32.9-57.8 67-57.8 35.8 0 64.8 27.8 67.5 62.9 6.5-3.1 13.6-5.3 21.3-5.3 28.3 0 51.2 22.9 51.2 51.2S265.1 352 236.8 352zm336.8-.8c-4.1-8.6-12.4-13.9-21.8-13.9-1.5 0-3 .1-4.6.4-7.7 1.5-15.5 2.2-23.2 2.2-67 0-121.5-54.7-121.5-121.9 0-43.7 23.6-84.3 61.6-106 8.9-5.1 13.6-15 11.9-25.1-1.7-10.2-9.4-17.9-19.5-19.8-11.5-2.1-23.3-3.2-35-3.2-76.6 0-142.7 45.3-173.4 110.5 3.5 4.1 6.8 8.5 9.8 13 5.9 1.1 11.6 2.8 17.1 4.8C299.7 135.8 356 96 421.5 96c3 0 5.9.1 8.9.2-37.4 28.9-59.9 73.9-59.9 121.9C370.5 303 439.4 372 524 372c2.6 0 5.2-.1 7.8-.2C502.2 400.1 463 416 421.5 416c-38.4 0-73.2-14.2-100.8-36.9-7.6 8.1-16.3 14.9-25.9 20.6 33.8 29.9 78.1 48.2 126.7 48.2 58.1 0 112.4-25.9 149-71.1 6-7.2 7.2-17.1 3.1-25.6z\"]\n};\nvar faMoonStars = {\n prefix: 'fal',\n iconName: 'moon-stars',\n icon: [512, 512, [], \"f755\", \"M333.9 426.2c-.6 0-1.2.1-1.8.2-9.6 1.8-19.2 2.7-28.6 2.7-81.3 0-150-66.1-150-150.4 0-54.2 29-104 76.1-130.8 7.3-4.1 5.4-15.1-2.8-16.7-11.6-2.1-23.3-3.2-35-3.2C85.9 128 0 213.9 0 320c0 106 85.8 192 191.8 192 59.2 0 113.2-26.9 149-71.1 4.9-6 .3-14.7-6.9-14.7zM191.8 480C103.7 480 32 408.2 32 320c0-78.5 56.8-144 131.4-157.5-26.6 32.2-41.8 73.2-41.8 116.2 0 89.8 65.1 164.7 150.5 179.7-24 14-51.6 21.6-80.3 21.6zm311.4-286.3l-48.6-24.3-24.3-48.6c-5.4-10.8-23.2-10.8-28.6 0l-24.3 48.6-48.6 24.3c-5.4 2.7-8.8 8.2-8.8 14.3s3.4 11.6 8.8 14.3l48.6 24.3 24.3 48.6c2.7 5.4 8.2 8.8 14.3 8.8s11.6-3.4 14.3-8.8l24.3-48.6 48.6-24.3c5.4-2.7 8.8-8.2 8.8-14.3s-3.4-11.6-8.8-14.3zm-67.7 26.7c-3.1 1.5-5.6 4.1-7.2 7.2L416 252.2l-12.3-24.7c-1.6-3.1-4.1-5.6-7.2-7.2L371.8 208l24.7-12.4c3.1-1.5 5.6-4.1 7.2-7.2l12.3-24.7 12.3 24.7c1.6 3.1 4.1 5.6 7.2 7.2l24.7 12.4-24.7 12.4zM304 96l16-32 32-16-32-16-16-32-16 32-32 16 32 16 16 32z\"]\n};\nvar faMortarPestle = {\n prefix: 'fal',\n iconName: 'mortar-pestle',\n icon: [512, 512, [], \"f5a7\", \"M504 192H390.63L497.36 85.27c24.11-24.11 17.51-64.75-12.98-80A49.957 49.957 0 0 0 462.05 0c-10.62 0-21.16 3.38-29.98 9.99L189.39 192H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h24v32c0 81.42 50.76 150.83 122.29 178.75-12.76 16.78-21.7 36.63-24.92 58.44-1.45 9.83 5.98 18.81 15.92 18.81h221.42c9.94 0 17.37-8.97 15.92-18.81-3.21-21.81-12.15-41.67-24.92-58.44C429.24 406.83 480 337.42 480 256v-32h24c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM451.26 35.59c17.58-13.18 39.21 11.31 23.47 27.05L345.38 192H242.72L451.26 35.59zM448 256c0 66.31-40.01 124.77-101.92 148.94l-39.51 15.42 25.68 33.76c6.08 8 10.87 16.75 14.19 25.88H165.57c3.32-9.13 8.1-17.88 14.19-25.88l25.68-33.76-39.51-15.42C104.01 380.77 64 322.31 64 256v-32h384v32z\"]\n};\nvar faMosque = {\n prefix: 'fal',\n iconName: 'mosque',\n icon: [640, 512, [], \"f678\", \"M240 384c-29.53 0-48 25.06-48 49.89V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-72c0-8.83 7.19-16 16-16s16 7.17 16 16v72c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-72c0-26.47-21.53-48-48-48zm352-128h-6.17c3.77-8.64 6.17-17.59 6.17-26.91 0-53.93-43.52-95.46-90.74-124.66C459.48 78.59 426.39 52.01 384 0c-42.25 51.85-74.61 78.05-117.26 104.43-47.22 29.2-90.74 70.73-90.74 124.66 0 9.32 2.4 18.27 6.17 26.91H176c-5.64 0-10.97 1.15-16 2.95V120C160 40 80 0 80 0S0 40 0 120v392h32V192h96v312c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V304c0-8.84 7.16-16 16-16h416c8.84 0 16 7.16 16 16v200c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V304c0-26.51-21.49-48-48-48zm-464-96H32v-40c0-40.6 29.55-68.62 48-82.15C98.45 51.38 128 79.4 128 120v40zm421.07 96H218.93c-7.26-9.22-10.93-18.24-10.93-26.91 0-33.03 24.56-65.27 73-95.84 40.99-25.86 74.89-53.45 103-83.86 28.11 30.41 62.02 58 103 83.86 48.44 30.56 73 62.81 73 95.84 0 8.67-3.67 17.69-10.93 26.91zM384 320c-61.02 30.51-64 76.2-64 89.89V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-94.11c0-27.19 20.69-45.33 32-53.22 11.31 7.89 32 26.03 32 53.22V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-94.11c0-13.71-2.98-59.38-64-89.89zm144 64c-29.53 0-48 25.06-48 49.89V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-72c0-8.83 7.19-16 16-16s16 7.17 16 16v72c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-72c0-26.47-21.53-48-48-48z\"]\n};\nvar faMotorcycle = {\n prefix: 'fal',\n iconName: 'motorcycle',\n icon: [640, 512, [], \"f21c\", \"M512.238 192c-17.943-.033-35.025 3.631-50.534 10.266L435.799 160H520c13.255 0 24-10.745 24-24V88c0-13.255-10.745-24-24-24h-60a24.002 24.002 0 0 0-19.2 9.6l-31.893 42.524-27.265-44.485A16.005 16.005 0 0 0 368 64h-76c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h67.04l39.226 64H217.584c-16.679-19.064-41.794-32-89.584-32H80.452c-8.616 0-16.029 6.621-16.433 15.227C63.586 152.416 70.907 160 80 160h48c24.268 0 40.146 8.239 51.566 19.951l-10.364 18.843a127.7 127.7 0 0 0-39.723-6.786C58.709 191.202.272 248.724.001 319.499-.27 390.422 57.141 448 128 448c59.641 0 109.745-40.795 123.956-96h84.776c9.384 0 16.781-8.057 15.936-17.438-5.123-56.79 20.187-110.805 64.631-143.511l16.791 27.395c-30.629 23.533-50.314 60.604-50.086 102.267.38 69.638 57.194 126.66 126.83 127.281 70.58.629 128.112-55.871 129.153-126.057 1.052-71.012-56.729-129.808-127.749-129.937zM462 92h54v40h-84l30-40zM128 416c-52.935 0-96-43.065-96-96s43.065-96 96-96a95.687 95.687 0 0 1 25.45 3.436L97.98 328.289C92.126 338.933 99.838 352 112 352h106.499c-13.208 37.247-48.781 64-90.499 64zm192-96H139.061l70.399-128h159.467C337.778 226.865 320 272.362 320 320zm188.206 95.926c-49.822-1.93-90.199-42.305-92.132-92.127-1.214-31.294 12.642-59.467 34.879-77.836l57.496 93.808c3.463 5.651 10.852 7.424 16.502 3.96l6.821-4.181c5.65-3.463 7.423-10.851 3.96-16.502l-57.051-93.083A95.57 95.57 0 0 1 512 224c52.935 0 96 43.065 96 96 0 54.194-45.139 98.043-99.794 95.926z\"]\n};\nvar faMountain = {\n prefix: 'fal',\n iconName: 'mountain',\n icon: [640, 512, [], \"f6fc\", \"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 32l102.86 160H313.38L256 249.38l-46.14-46.05L320 32zM32 480l160.19-249.19L256 294.62 326.62 224h116.8L608 480H32z\"]\n};\nvar faMountains = {\n prefix: 'fal',\n iconName: 'mountains',\n icon: [640, 512, [], \"f6fd\", \"M635.73 406.91l-194.04-297.6C435.9 100.44 425.95 96 416 96c-9.95 0-19.9 4.44-25.69 13.31l-52 79.76-70.79-110.55C261.32 68.84 250.66 64 240 64s-21.32 4.84-27.52 14.52L4.58 403.18C-7.99 422.81 6.81 448 30.92 448h580.22c22.5 0 36.32-23.09 24.59-41.09zM33.71 417.02L239.03 96.17c.08-.04.44-.17.97-.17l.57-.22L445.63 416l-411.92 1.02zM479.65 416c-.39-4.33-1.58-8.7-4.22-12.82L357.24 218.62 416 128.51 603.45 416h-123.8z\"]\n};\nvar faMouse = {\n prefix: 'fal',\n iconName: 'mouse',\n icon: [384, 512, [], \"f8cc\", \"M224 0h-64A160 160 0 0 0 0 160v192a160 160 0 0 0 160 160h64a160 160 0 0 0 160-160V160A160 160 0 0 0 224 0zM32 160A128.14 128.14 0 0 1 160 32h16v160H32zm320 192a128.14 128.14 0 0 1-128 128h-64A128.14 128.14 0 0 1 32 352V224h320zm0-160H208V32h16a128.14 128.14 0 0 1 128 128z\"]\n};\nvar faMouseAlt = {\n prefix: 'fal',\n iconName: 'mouse-alt',\n icon: [384, 512, [], \"f8cd\", \"M224 0h-64A160 160 0 0 0 0 160v192a160 160 0 0 0 160 160h64a160 160 0 0 0 160-160V160A160 160 0 0 0 224 0zm128 352a128.14 128.14 0 0 1-128 128h-64A128.14 128.14 0 0 1 32 352V160A128.14 128.14 0 0 1 160 32h64a128.14 128.14 0 0 1 128 128zM192 80a48.05 48.05 0 0 0-48 48v32a48 48 0 0 0 96 0v-32a48.05 48.05 0 0 0-48-48zm16 80a16 16 0 0 1-32 0v-32a16 16 0 0 1 32 0z\"]\n};\nvar faMousePointer = {\n prefix: 'fal',\n iconName: 'mouse-pointer',\n icon: [320, 512, [], \"f245\", \"M154.149 488.438l-41.915-101.865-46.788 52.8C42.432 465.345 0 448.788 0 413.5V38.561c0-34.714 41.401-51.675 64.794-26.59L309.547 274.41c22.697 24.335 6.074 65.09-27.195 65.09h-65.71l42.809 104.037c8.149 19.807-1.035 42.511-20.474 50.61l-36 15.001c-19.036 7.928-40.808-1.217-48.828-20.71zm-31.84-161.482l61.435 149.307c1.182 2.877 4.117 4.518 6.926 3.347l35.999-15c3.114-1.298 4.604-5.455 3.188-8.896L168.872 307.5h113.479c5.009 0 7.62-7.16 3.793-11.266L41.392 33.795C37.785 29.932 32 32.879 32 38.561V413.5c0 5.775 5.935 8.67 9.497 4.65l80.812-91.194z\"]\n};\nvar faMp3Player = {\n prefix: 'fal',\n iconName: 'mp3-player',\n icon: [384, 512, [], \"f8ce\", \"M64 192h256V64H64zm32-96h192v64H96zM336 0H48A48 48 0 0 0 0 48v416a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V48a48 48 0 0 0-48-48zm16 464a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h288a16 16 0 0 1 16 16zM192 224a112 112 0 1 0 112 112 112.14 112.14 0 0 0-112-112zm0 192a80 80 0 1 1 80-80 80.08 80.08 0 0 1-80 80zm0-104a24 24 0 1 0 24 24 24 24 0 0 0-24-24z\"]\n};\nvar faMug = {\n prefix: 'fal',\n iconName: 'mug',\n icon: [576, 512, [], \"f874\", \"M480 64H64a32 32 0 0 0-32 32v256a96 96 0 0 0 96 96h192a96 96 0 0 0 96-96v-96h64a96 96 0 0 0 0-192zm-96 288a64.07 64.07 0 0 1-64 64H128a64.07 64.07 0 0 1-64-64V96h320zm96-128h-64V96h64a64 64 0 0 1 0 128z\"]\n};\nvar faMugHot = {\n prefix: 'fal',\n iconName: 'mug-hot',\n icon: [512, 512, [], \"f7b6\", \"M416 192.1H32c-17.7 0-32 14.3-32 32V416c0 53 43 96 96 96h192c53 0 96-43 96-96v-32h32c52.9 0 96-43 96-96s-43.1-95.9-96-95.9zM352 416c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V224.1h320V416zm64-64h-32V224h32c35.3 0 64 28.7 64 64s-28.7 64-64 64zM191.3 78.5c17.3 17.2 30.4 40.7 32.2 73.4.2 4.3 3.7 7.8 8 7.8h16c4.5 0 8.2-3.7 8-8.2-2.1-42.1-19.3-73.3-41.6-95.5-18.4-18.7-21.1-38.2-21.9-48.9-.3-4.1-3.9-7.1-8-7.1l-16 .1c-4.7 0-8.2 4-7.9 8.7.9 14.9 5.2 43.6 31.2 69.7zm-95.6 0c17.3 17.2 30.4 40.7 32.2 73.4.2 4.3 3.7 7.8 8 7.8h16c4.5 0 8.2-3.7 8-8.2-2.1-42.1-19.3-73.3-41.6-95.5-18.3-18.7-21-38.2-21.8-48.9C96.2 3 92.6 0 88.4 0l-16 .1c-4.7 0-8.2 4-7.9 8.7 1 14.9 5.2 43.6 31.2 69.7z\"]\n};\nvar faMugMarshmallows = {\n prefix: 'fal',\n iconName: 'mug-marshmallows',\n icon: [512, 512, [], \"f7b7\", \"M416 160h-64c12.5-12.5 12.5-32.8 0-45.3l-73.4-73.4c-6.2-6.2-14.4-9.4-22.6-9.4s-16.4 3.1-22.6 9.4L206.7 68c-4.5-2.4-9.3-4-14.7-4H64c-17.7 0-32 14.3-32 32v64c-17.7 0-32 14.3-32 32v192c0 53 43 96 96 96h192c53 0 96-43 96-96v-32h32c52.9 0 96-43.1 96-96s-43.1-96-96-96zM256 64l73.4 73.4-22.7 22.6H205.3l-22.6-22.6L256 64zM64 96h114.7L160 114.7c-12.5 12.5-12.5 32.8 0 45.3H64V96zm288 288c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V192h64v80c0 8.8 7.2 16 16 16s16-7.2 16-16v-80h224v192zm64-64h-32V192h32c35.3 0 64 28.7 64 64s-28.7 64-64 64z\"]\n};\nvar faMugTea = {\n prefix: 'fal',\n iconName: 'mug-tea',\n icon: [640, 512, [], \"f875\", \"M601.9 448H6.1c-13.1 0-4.5 32 20 32h555.8c24.5 0 33.1-32 20-32zM544 32H128a32 32 0 0 0-32 32v224a96 96 0 0 0 96 96h192a96 96 0 0 0 96-96v-64h64a96 96 0 0 0 0-192zm-96 256a64.07 64.07 0 0 1-64 64H192a64.07 64.07 0 0 1-64-64V64h96v32l-38.63 38.63a32 32 0 0 0-9.37 22.62V224a32 32 0 0 0 32 32h64a32 32 0 0 0 32-32v-66.75a32 32 0 0 0-9.37-22.62L256 96V64h192zM240 125.25l32 32V224h-64v-66.75zM544 192h-64V64h64a64 64 0 0 1 0 128z\"]\n};\nvar faMusic = {\n prefix: 'fal',\n iconName: 'music',\n icon: [512, 512, [], \"f001\", \"M481.44 0a29.38 29.38 0 0 0-9.25 1.5l-290.78 96C168.72 101.72 160 114 160 128v244.75C143 360 120.69 352 96 352c-53 0-96 35.81-96 80s43 80 96 80 96-35.81 96-80V256l288-96v148.75C463 296 440.69 288 416 288c-53 0-96 35.81-96 80s43 80 96 80 96-35.81 96-80V32c0-18.25-14.31-32-30.56-32zM96 480c-34.69 0-64-22-64-48s29.31-48 64-48 64 22 64 48-29.31 48-64 48zm320-64c-34.69 0-64-22-64-48s29.31-48 64-48 64 22 64 48-29.31 48-64 48zm64-289.72l-288 96V128h-.56v-.12L480 32.62z\"]\n};\nvar faMusicAlt = {\n prefix: 'fal',\n iconName: 'music-alt',\n icon: [384, 512, [], \"f8cf\", \"M342 1.64L213.41 33.52C200.72 37.74 192 50 192 64v312.13C171.66 361.28 143.38 352 112 352 50.14 352 0 387.82 0 432s50.14 80 112 80 112-35.82 112-80V192l138.12-35.37A32 32 0 0 0 384 126.27V32a32 32 0 0 0-42-30.36zM112 480c-47.14 0-80-25.3-80-48s32.86-48 80-48 80 25.3 80 48-32.86 48-80 48zm240-353.72l-128 32V64h-.56v-.13L352 32z\"]\n};\nvar faMusicAltSlash = {\n prefix: 'fal',\n iconName: 'music-alt-slash',\n icon: [640, 512, [], \"f8d0\", \"M637 485.34L23 1.82A7.85 7.85 0 0 0 11.79 3l-10 12.5A7.92 7.92 0 0 0 3 26.73l614 483.48a7.89 7.89 0 0 0 11.18-1.21l10-12.5a7.82 7.82 0 0 0-1.18-11.16zM320 376.13C299.65 361.28 271.37 352 240 352c-61.86 0-112 35.82-112 80s50.15 80 112 80 112-35.82 112-80v-89.72l-32-25.2zM240 480c-47.15 0-80-25.3-80-48s32.86-48 80-48 80 25.3 80 48-32.87 48-80 48zm112-288l138.12-35.37A32 32 0 0 0 512 126.27V32a32 32 0 0 0-42-30.36L341.4 33.52C328.71 37.74 320 50 320 64v131l32 25.2zm-.56-128.11L480 32v94.26l-128 32V64h-.56z\"]\n};\nvar faMusicSlash = {\n prefix: 'fal',\n iconName: 'music-slash',\n icon: [640, 512, [], \"f8d1\", \"M637 485.34L23 1.82A7.85 7.85 0 0 0 11.79 3l-10 12.5A7.92 7.92 0 0 0 3 26.73l614 483.48a7.89 7.89 0 0 0 11.18-1.21l10-12.5a7.82 7.82 0 0 0-1.18-11.16zM256 128h-.56v-.12L544 32.62v93.66l-218.7 72.9 30.08 23.69L544 160v148.75C527 296 504.71 288 480 288a112.39 112.39 0 0 0-34.78 5.61l33.63 26.48c.39 0 .76-.09 1.15-.09 34.69 0 64 22 64 48 0 1-.34 2-.43 3.06l27.33 21.52A67.33 67.33 0 0 0 576 368V32c0-18.25-14.31-32-30.56-32a29.38 29.38 0 0 0-9.25 1.5l-290.79 96c-10.28 3.42-17.68 12.21-20.22 22.83L256 144.6zm-32 244.75C207 360 184.7 352 160 352c-53 0-96 35.81-96 80s43 80 96 80 96-35.81 96-80V266.7l-32-25.2zM160 480c-34.69 0-64-22-64-48s29.32-48 64-48 64 22 64 48-29.3 48-64 48z\"]\n};\nvar faNarwhal = {\n prefix: 'fal',\n iconName: 'narwhal',\n icon: [640, 512, [], \"f6fe\", \"M594.39 224.44l44.9-191.9c2.72-11.5-2.59-23.5-13-29.25-6.19-3.37-13.38-4.22-20.19-2.22-6.78 1.98-12.41 6.48-15.75 12.62l-99.19 179.69C296.64 207.72 223.11 416 179.87 416c-10.96 0-19.87-8.92-19.87-19.88V288l47.37-24.9c10.39-5.93 16.62-15.93 16.62-26.62v-92.45c0-9.41-9.01-16.03-18.72-16.03-3.47 0-7.03.85-10.3 2.71L112 178.13l-82.98-47.42c-3.27-1.87-6.83-2.71-10.3-2.71C9.01 128 0 134.61 0 144.03v92.45c0 10.7 6.24 20.69 16.62 26.62L64 288v108.12c0 64 51.88 115.87 115.87 115.87H560c44.18 0 80-35.82 80-80V320.54c0-39.11-18.68-72.86-45.61-96.1zm4.65-160.26l-33.11 141.37c-12.23-6.06-25.11-10.06-38.37-11.9l71.48-129.47zM608 432c0 26.47-21.53 48-48 48H179.87C133.63 480 96 442.37 96 396.13V268.67l-64-33.84v-65.56l80 45.71 80-45.71v65.76l-64 33.64v127.46c0 28.6 23.27 51.87 51.87 51.87 29.8 0 49.95-25.95 80.45-65.23C309.41 319.55 383.6 224 512 224c45.41 0 96 39.65 96 96.54V432zm-176-80c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16z\"]\n};\nvar faNetworkWired = {\n prefix: 'fal',\n iconName: 'network-wired',\n icon: [640, 512, [], \"f6ff\", \"M632 240H336v-80h80c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32H224c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h80v80H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h120v80H64c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32h-64v-80h320v80h-64c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32h-64v-80h120c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM224 384v96H64v-96h160zm0-256V32h192v96H224zm352 256v96H416v-96h160z\"]\n};\nvar faNeuter = {\n prefix: 'fal',\n iconName: 'neuter',\n icon: [288, 512, [], \"f22c\", \"M288 176c0-79.5-64.5-144-144-144S0 96.5 0 176c0 74.1 56 135.2 128 143.1V468c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V319.1c72-7.9 128-69 128-143.1zM144 288c-61.9 0-112-50-112-112 0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112z\"]\n};\nvar faNewspaper = {\n prefix: 'fal',\n iconName: 'newspaper',\n icon: [576, 512, [], \"f1ea\", \"M552 64H88c-13.234 0-24 10.767-24 24v8H24c-13.255 0-24 10.745-24 24v280c0 26.51 21.49 48 48 48h504c13.233 0 24-10.767 24-24V88c0-13.233-10.767-24-24-24zM32 400V128h32v272c0 8.822-7.178 16-16 16s-16-7.178-16-16zm512 16H93.258A47.897 47.897 0 0 0 96 400V96h448v320zm-404-96h168c6.627 0 12-5.373 12-12V140c0-6.627-5.373-12-12-12H140c-6.627 0-12 5.373-12 12v168c0 6.627 5.373 12 12 12zm20-160h128v128H160V160zm-32 212v-8c0-6.627 5.373-12 12-12h168c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12H140c-6.627 0-12-5.373-12-12zm224 0v-8c0-6.627 5.373-12 12-12h136c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12H364c-6.627 0-12-5.373-12-12zm0-64v-8c0-6.627 5.373-12 12-12h136c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12H364c-6.627 0-12-5.373-12-12zm0-128v-8c0-6.627 5.373-12 12-12h136c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12H364c-6.627 0-12-5.373-12-12zm0 64v-8c0-6.627 5.373-12 12-12h136c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12H364c-6.627 0-12-5.373-12-12z\"]\n};\nvar faNotEqual = {\n prefix: 'fal',\n iconName: 'not-equal',\n icon: [384, 512, [], \"f53e\", \"M376 160h-54.06l38.56-38.56 21.16-21.16c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L254.06 160H8c-4.42 0-8 3.58-8 8v32c0 4.42 3.58 8 8 8h198.06l-96 96H8c-4.42 0-8 3.58-8 8v32c0 4.42 3.58 8 8 8h54.06L2.34 411.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L129.94 352H376c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8H177.94l96-96H376c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8z\"]\n};\nvar faNotesMedical = {\n prefix: 'fal',\n iconName: 'notes-medical',\n icon: [384, 512, [], \"f481\", \"M336 64h-88.6c.4-2.6.6-5.3.6-8 0-30.9-25.1-56-56-56s-56 25.1-56 56c0 2.7.2 5.4.6 8H48C21.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 32c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm160 432c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16h48v20c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12V96h48c8.8 0 16 7.2 16 16v352zm-72-176h-56v-56c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v56h-56c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h56v56c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-56h56c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"]\n};\nvar faObjectGroup = {\n prefix: 'fal',\n iconName: 'object-group',\n icon: [512, 512, [], \"f247\", \"M404 192h-84v-52c0-6.6-5.4-12-12-12H108c-6.6 0-12 5.4-12 12v168c0 6.6 5.4 12 12 12h84v52c0 6.6 5.4 12 12 12h200c6.6 0 12-5.4 12-12V204c0-6.6-5.4-12-12-12zm-276 96V160h160v128zm256 64H224v-32h84c6.6 0 12-5.4 12-12v-84h64zm116-224c6.6 0 12-5.4 12-12V44c0-6.6-5.4-12-12-12h-72c-6.6 0-12 5.4-12 12v20H96V44c0-6.6-5.4-12-12-12H12C5.4 32 0 37.4 0 44v72c0 6.6 5.4 12 12 12h20v256H12c-6.6 0-12 5.4-12 12v72c0 6.6 5.4 12 12 12h72c6.6 0 12-5.4 12-12v-20h320v20c0 6.6 5.4 12 12 12h72c6.6 0 12-5.4 12-12v-72c0-6.6-5.4-12-12-12h-20V128zM32 64h32v32H32zm32 384H32v-32h32zm352-52v20H96v-20c0-6.6-5.4-12-12-12H64V128h20c6.6 0 12-5.4 12-12V96h320v20c0 6.6 5.4 12 12 12h20v256h-20c-6.6 0-12 5.4-12 12zm64 52h-32v-32h32zM448 96V64h32v32z\"]\n};\nvar faObjectUngroup = {\n prefix: 'fal',\n iconName: 'object-ungroup',\n icon: [576, 512, [], \"f248\", \"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 12v20h-96v-32h20c6.627 0 12-5.373 12-12V44c0-6.627-5.373-12-12-12h-72c-6.627 0-12 5.373-12 12v20H96V44c0-6.627-5.373-12-12-12H12C5.373 32 0 37.373 0 44v72c0 6.627 5.373 12 12 12h20v160H12c-6.627 0-12 5.373-12 12v72c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-20h96v32h-20c-6.627 0-12 5.373-12 12v72c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-20h224v20c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-72c0-6.627-5.373-12-12-12h-20V224h20zm-180 96v32h-32v-32h32zM352 64h32v32h-32V64zM32 64h32v32H32V64zm32 288H32v-32h32v32zm20-64H64V128h20c6.627 0 12-5.373 12-12V96h224v20c0 6.627 5.373 12 12 12h20v160h-20c-6.627 0-12 5.373-12 12v20H96v-20c0-6.627-5.373-12-12-12zm140 160h-32v-32h32v32zm256-52v20H256v-20c0-6.627-5.373-12-12-12h-20v-32h96v20c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-72c0-6.627-5.373-12-12-12h-20v-96h96v20c0 6.627 5.373 12 12 12h20v160h-20c-6.627 0-12 5.373-12 12zm64 52h-32v-32h32v32zm-32-256v-32h32v32h-32z\"]\n};\nvar faOctagon = {\n prefix: 'fal',\n iconName: 'octagon',\n icon: [512, 512, [], \"f306\", \"M361.5 14.1c-9-9-21.2-14.1-33.9-14.1H184.5c-12.7 0-24.9 5.1-33.9 14.1L14.1 150.5c-9 9-14.1 21.2-14.1 33.9v143.1c0 12.7 5.1 24.9 14.1 33.9l136.5 136.5c9 9 21.2 14.1 33.9 14.1h143.1c12.7 0 24.9-5.1 33.9-14.1L498 361.4c9-9 14.1-21.2 14.1-33.9v-143c0-12.7-5.1-24.9-14.1-33.9L361.5 14.1zM480 327.5c0 4.3-1.7 8.3-4.7 11.3L338.9 475.3c-3 3-7 4.7-11.3 4.7H184.5c-4.3 0-8.3-1.7-11.3-4.7L36.7 338.9c-3-3-4.7-7-4.7-11.3V184.5c0-4.3 1.7-8.3 4.7-11.3L173.1 36.7c3-3 7-4.7 11.3-4.7h143.1c4.3 0 8.3 1.7 11.3 4.7l136.5 136.5c3 3 4.7 7 4.7 11.3v143z\"]\n};\nvar faOilCan = {\n prefix: 'fal',\n iconName: 'oil-can',\n icon: [640, 512, [], \"f613\", \"M629.8 160.31L416 224l-50.49-25.24a64.07 64.07 0 0 0-28.62-6.76H272v-64h72c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H168c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h72v64h-64v-.02L37.72 166.84C16.54 162.98 0 179.92 0 198.33v94.95c0 15.46 11.06 28.72 26.28 31.48L96 337.44V384c0 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.74-5.48-9.03-10.19-7.69zM96 304.91l-64-11.64.04-94.94L96 209.96v94.95zM402.63 384H128V224h208.89c4.97 0 9.87 1.16 14.31 3.38l56.15 28.07c3.64 1.82 7.83 2.18 11.72 1.02l155.35-46.28L402.63 384zm176.21-89.09C568.38 310.06 544 347.53 544 367.98c0 26.47 21.53 48 48 48s48-21.53 48-48c0-20.45-24.38-57.92-34.84-73.08-5.94-8.65-20.38-8.65-26.32.01zM592 383.98c-8.81 0-16-7.17-16-15.98.12-4.89 6.78-18.83 16-34.34 9.22 15.52 15.88 29.45 16 34.33 0 8.82-7.19 15.99-16 15.99z\"]\n};\nvar faOilTemp = {\n prefix: 'fal',\n iconName: 'oil-temp',\n icon: [640, 512, [], \"f614\", \"M8 384h24c38.62 0 72.72-12.19 96-31.84 23.28 19.66 57.38 31.84 96 31.84 2.45 0 4.69-.46 7.1-.56-7.34-9.65-12.99-20.48-16.9-32.22-21.05-1.84-37.38-8.9-46.28-17.12-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 352H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm624-32h-24c-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.1-8.9 8.21-25.23 15.28-46.28 17.12-3.91 11.75-9.57 22.57-16.9 32.22 2.41.1 4.65.56 7.1.56 38.62 0 72.72-12.19 96-31.84 23.28 19.66 57.38 31.84 96 31.84h24c4.42 0 8-3.58 8-8v-16c.01-4.42-3.57-8-7.99-8zm-312 48.02c44.12 0 80-35.89 80-80.02 0-38.63-27.52-70.95-64-78.38V160h72c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-72V96h72c4.42 0 8-3.58 8-8V72c0-4.42-3.58-8-8-8h-72V32h72c4.42 0 8-3.58 8-8V8c0-4.42-3.58-8-8-8h-80c-13.2 0-24 10.8-24 24v217.62c-36.48 7.43-64 39.75-64 78.38 0 44.12 35.88 80.02 80 80.02zM320 272c26.47 0 48 21.53 48 48s-21.53 48.02-48 48.02-48-21.55-48-48.02 21.53-48 48-48zm312 208h-24c-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 471.58 442.04 480 416 480s-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 471.58 250.04 480 224 480s-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 471.58 58.04 480 32 480H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h24c38.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.84h24c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8z\"]\n};\nvar faOm = {\n prefix: 'fal',\n iconName: 'om',\n icon: [448, 512, [], \"f679\", \"M296.62 92.94c4.08 4.07 10.68 4.07 14.76 0l21.56-21.56a10.43 10.43 0 0 0 0-14.76l-21.56-21.56a10.43 10.43 0 0 0-14.76 0l-21.56 21.56a10.43 10.43 0 0 0 0 14.76l21.56 21.56zM310.56 160c56.59 0 69.84-14.42 71.92-17.31a8.073 8.073 0 0 0 1.52-4.72V112c0-6.58-7.35-10.29-12.5-6.46-20.05 14.86-41.94 22.4-65.06 22.4-39.69 0-69.59-22.14-69.89-22.37-6.99-5.25-16.15 3.37-11.23 10.87 1.17 1.78 29.21 43.56 85.24 43.56zm44.54 48.47c-19.97 2.1-38.29 12.09-52.49 26.29l-22.03 22.03a51.918 51.918 0 0 1-36.7 15.2h-72.56c17.23-20.68 25.74-48.87 17.53-79.42-8.62-32.11-35.75-57.32-68.49-63.13-31.19-5.53-61.18 4.98-81.39 27.25-3.07 3.38-2.29 8.78 1.36 11.53l12.86 9.67c3.37 2.53 7.91 1.83 10.86-1.19 12.67-12.95 30.8-19.04 49.66-15.91 21.57 3.58 39.66 20.39 44.68 41.67C167.06 239.18 139.29 272 104 272l-31.99.17c-5.96.03-9.81 6.31-7.15 11.64l8.04 16.09c1.27 2.53 3.8 4.05 6.59 4.28l37.3-.17c37.59 0 71.22 27.41 74.86 64.82C195.83 411.73 162.06 448 120 448h-8c-57.58 0-89.46-30.88-103.13-51.13-2.71-4.02-8.86-1.91-8.87 2.78C-.04 418.05 27.36 480 115.44 480c58.2 0 109.54-47.6 108.54-105.79-.47-27.26-11.6-51.9-29.24-70.21h49.13c22.25 0 43.59-8.84 59.32-24.57l23.14-23.15c7.28-7.28 16.31-12.9 26.38-15.06 33.54-7.2 63.28 18.31 63.28 50.65V376c0 22.09-17.91 40-40 40h-24c-20.68 0-32.6-12.97-40.55-22.47-2.5-2.99-7.45-1.29-7.45 2.56v19.3s-2.4 32.62 48 32.62h24c39.77 0 72-32.24 72-72v-84.12c.01-49.24-42.61-88.7-92.89-83.42z\"]\n};\nvar faOmega = {\n prefix: 'fal',\n iconName: 'omega',\n icon: [448, 512, [], \"f67a\", \"M448 256c0-132.21-114.54-237.67-249.8-222.55-101.56 11.34-184.1 93-196.48 194.43-11.37 93.2 34.7 176.53 107.34 220.12H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h144c4.42 0 8-3.58 8-8v-24.31c0-6.57-4.1-12.29-10.16-14.83C77.6 402.47 27.63 329.3 32.3 245.13c5.4-97.34 86.31-177 183.72-180.97C325.51 59.7 416 147.48 416 256c0 79.56-48.73 147.79-117.84 176.86-6.06 2.55-10.16 8.26-10.16 14.83V472c0 4.42 3.58 8 8 8h144c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H338.94C404.19 408.85 448 337.63 448 256z\"]\n};\nvar faOrnament = {\n prefix: 'fal',\n iconName: 'ornament',\n icon: [384, 512, [], \"f7b8\", \"M288 153.9V96c0-17.7-14.3-32-32-32h-18.9c1.8-5 2.9-10.4 2.9-16 0-26.5-21.5-48-48-48s-48 21.5-48 48c0 5.6 1.2 11 2.9 16H128c-17.7 0-32 14.3-32 32v57.9C38.7 187.1 0 249 0 320c0 106 86 192 192 192s192-86 192-192c0-71-38.7-132.9-96-166.1zM176 48c0-8.8 7.2-16 16-16s16 7.2 16 16-7.2 16-16 16-16-7.2-16-16zm-48 48h128v43.2c-20-7.1-41.5-11.2-64-11.2s-44 4.1-64 11.2V96zm64 64c52.1 0 97.9 25.4 127.2 64H64.8c29.3-38.6 75.1-64 127.2-64zm0 320c-52.1 0-97.9-25.4-127.2-64h254.4c-29.3 38.6-75.1 64-127.2 64zm146.4-96H45.6C36.9 364.4 32 342.8 32 320s4.9-44.4 13.6-64h292.9c8.6 19.6 13.6 41.2 13.6 64s-5 44.4-13.7 64z\"]\n};\nvar faOtter = {\n prefix: 'fal',\n iconName: 'otter',\n icon: [640, 512, [], \"f700\", \"M512 56c-8.84 0-16 7.16-16 16s7.17 16 16 16c8.84 0 16-7.16 16-16s-7.16-16-16-16zm80-24h-17.14L561.6 18.74C549.52 6.66 533.44 0 516.35 0h-20.49c-11.12 0-22.1 2.91-31.75 8.43L310.86 96H288C182.13 96 96 182.13 96 288v1.14C41.79 296.93 0 343.67 0 400c0 61.76 50.24 112 112 112h144c26.47 0 48-21.53 48-48s-21.53-48-48-48H112c-8.82 0-16-7.18-16-16s7.18-16 16-16h208c17.67 0 32-14.33 32-32 0-23-12.19-43.2-30.45-54.48l48.61-25.85 47.32 94.64A32 32 0 0 0 446.1 384H544c17.67 0 32-14.33 32-32 0-35.29-28.71-64-64-64h-26.33l-30.71-61.42 44.82-23.84C512.99 195.71 529.04 192 544 192c52.93 0 96-43.06 96-96V80c0-26.47-21.53-48-48-48zm-48 128c-20.26 0-41.36 4.97-59.25 14.49l-4.19 2.23 16.9-21.96C506.5 143 520.72 136 535.5 136h58.09c-11.73 14.52-29.47 24-49.59 24zm63.19-56H535.5c-24.66 0-48.34 11.67-63.41 31.23l-59.71 77.74L465.89 320H512c17.66 0 32 14.36 32 32h-97.89l-62-123.99L211.13 320H288c17.66 0 32 14.36 32 32H112c-26.47 0-48 21.53-48 48s21.53 48 48 48h144c8.84 0 16 7.16 16 16s-7.16 16-16 16H112c-44.12 0-80-35.89-80-80s35.88-80 80-80h16v-32c0-88.37 71.63-160 160-160h31.36l160.62-91.79A32.048 32.048 0 0 1 495.86 32h20.49c8.55 0 16.58 3.33 22.62 9.37L561.6 64H592c8.84 0 16 7.16 16 16 0 0-.47 21.35-.81 24z\"]\n};\nvar faOutdent = {\n prefix: 'fal',\n iconName: 'outdent',\n icon: [448, 512, [], \"f03b\", \"M100.69 363.29a15.63 15.63 0 0 0 11.17 4.7A16 16 0 0 0 128 352V160a16 16 0 0 0-16.13-16 15.66 15.66 0 0 0-11.18 4.7l-96 96a16 16 0 0 0 0 22.62zM96 198.64v114.72L38.63 256zM440 48H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8zm0 384H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-128H200a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h240a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-128H200a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h240a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faOutlet = {\n prefix: 'fal',\n iconName: 'outlet',\n icon: [512, 512, [], \"e01c\", \"M448,0H64A64,64,0,0,0,0,64V448a64,64,0,0,0,64,64H448a64,64,0,0,0,64-64V64A64,64,0,0,0,448,0Zm32,448a32,32,0,0,1-32,32H64a32,32,0,0,1-32-32V64A32,32,0,0,1,64,32H448a32,32,0,0,1,32,32ZM369.85,96H142.15a22.86,22.86,0,0,0-16.41,6.7C87.71,141.71,64,195.9,64,256s23.71,114.28,61.74,153.29A22.87,22.87,0,0,0,142.15,416h227.7a22.87,22.87,0,0,0,16.41-6.71c38-39,61.74-93.19,61.74-153.29s-23.71-114.29-61.74-153.3A22.86,22.86,0,0,0,369.85,96Zm-3.68,288H145.83C113.66,349.51,96,304.22,96,256s17.67-93.51,49.83-128H366.17C398.33,162.48,416,207.77,416,256S398.34,349.51,366.17,384ZM192,176a16,16,0,0,0-16,16v80a16,16,0,0,0,32,0V192A16,16,0,0,0,192,176Zm64,128a32,32,0,0,0-32,32v16h64V336A32,32,0,0,0,256,304Zm64-128a16,16,0,0,0-16,16v80a16,16,0,0,0,32,0V192A16,16,0,0,0,320,176Z\"]\n};\nvar faOven = {\n prefix: 'fal',\n iconName: 'oven',\n icon: [448, 512, [], \"e01d\", \"M384,0H64A64,64,0,0,0,0,64V480a32,32,0,0,0,32,32H416a32,32,0,0,0,32-32V64A64,64,0,0,0,384,0Zm32,480H32V160H416Zm0-352H32V64A32,32,0,0,1,64,32H384a32,32,0,0,1,32,32ZM368,64a16,16,0,1,0,16,16A16,16,0,0,0,368,64Zm-64,0a16,16,0,1,0,16,16A16,16,0,0,0,304,64ZM144,64a16,16,0,1,0,16,16A16,16,0,0,0,144,64ZM80,64A16,16,0,1,0,96,80,16,16,0,0,0,80,64Zm0,384H368a16,16,0,0,0,16-16V208a16,16,0,0,0-16-16H80a16,16,0,0,0-16,16V432A16,16,0,0,0,80,448ZM96,224H352V416H96Zm208,32H144a16,16,0,0,0,0,32H304a16,16,0,0,0,0-32Z\"]\n};\nvar faOverline = {\n prefix: 'fal',\n iconName: 'overline',\n icon: [448, 512, [], \"f876\", \"M439 0H7a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8V8a8 8 0 0 0-8-8zM223 96A160 160 0 0 0 63 256v96a160 160 0 0 0 320 0v-96A160 160 0 0 0 223 96zm128 256a128 128 0 0 1-256 0v-96a128 128 0 0 1 256 0z\"]\n};\nvar faPageBreak = {\n prefix: 'fal',\n iconName: 'page-break',\n icon: [576, 512, [], \"f877\", \"M232 272a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM128 32h192v112a16 16 0 0 0 16 16h112v64h32v-82.77a31.93 31.93 0 0 0-9.35-22.6C447 94.92 384.8 32.78 361.23 9.23A31.54 31.54 0 0 0 338.75 0H128a32 32 0 0 0-32 32v192h32zm224 13.25L434.77 128H352zM568 272H424a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h144a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm-408 24v-16a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h144a8 8 0 0 0 8-8zm288 184H128V352H96v128a32 32 0 0 0 32 32h320a32 32 0 0 0 32-32V352h-32z\"]\n};\nvar faPager = {\n prefix: 'fal',\n iconName: 'pager',\n icon: [512, 512, [], \"f815\", \"M272 320h-80v32h80a16 16 0 0 0 0-32zM448 64H64a64 64 0 0 0-64 64v256a64 64 0 0 0 64 64h384a64 64 0 0 0 64-64V128a64 64 0 0 0-64-64zm32 320a32 32 0 0 1-32 32H64a32 32 0 0 1-32-32V128a32 32 0 0 1 32-32h384a32 32 0 0 1 32 32zM64 336a16 16 0 0 0 16 16h80v-32H80a16 16 0 0 0-16 16zm360-208H88a24 24 0 0 0-24 24v112a24 24 0 0 0 24 24h336a24 24 0 0 0 24-24V152a24 24 0 0 0-24-24zm-8 128H96v-96h320z\"]\n};\nvar faPaintBrush = {\n prefix: 'fal',\n iconName: 'paint-brush',\n icon: [512, 512, [], \"f1fc\", \"M455.59 0c-15.81 0-30.62 6.99-41.93 17.15C195.73 211.82 169.77 216.5 179.98 281.99c-41.52 4.96-78.59 24.05-100.32 81.32-2.68 7.08-9.12 11.38-16.64 11.38-12.67 0-51.85-31.56-63.02-39.19C0 429.45 43.26 512 146 512c117.18 0 152.72-87.75 145.06-145.89 56.9-7.01 97.15-62.51 206.45-266.49C505.2 84.65 512 68.48 512 51.66 512 21.52 484.89 0 455.59 0zM236.52 445.55C216.47 468.41 186.02 480 146 480c-63.78 0-92.29-38.83-104.75-78.69 8.02 3.65 14.98 5.39 21.77 5.39 20.92 0 39.2-12.58 46.56-32.03 6.65-17.52 16.05-53.95 83.76-62.04l65.08 50.62c4.03 30.68-1.25 58.75-21.9 82.3zM469.31 84.5c-118.4 220.96-143.69 245.11-194.08 251.31l-62-48.22c-8.8-56.43-14.8-35.28 221.82-246.64 6.33-5.69 13.81-8.95 20.54-8.95C467.38 32 480 39.9 480 51.66c0 10.58-5.54 22.79-10.69 32.84z\"]\n};\nvar faPaintBrushAlt = {\n prefix: 'fal',\n iconName: 'paint-brush-alt',\n icon: [512, 512, [], \"f5a9\", \"M489.17 144.05C547.44 80.02 483.28 0 418.52 0c-23.39 0-46.87 10.44-64.68 35.85L187.9 284.01c-45.13 2.9-86.1 20.09-109.34 81.34-2.65 6.99-9 11.22-16.41 11.22-12.49 0-51.14-31.13-62.15-38.65C0 430.58 42.67 512 144 512c141.21 0 145.89-117.04 142.91-145.49l.02-.02 202.24-222.44zM230.96 449.18C212.54 469.63 183.28 480 144 480c-62.08 0-90.15-37.47-102.57-76.29 7.55 3.32 14.15 4.86 20.72 4.86 20.81 0 39-12.52 46.33-31.87 6.86-18.09 17.63-56.66 89.31-61.26L254.68 366c2.96 28.21-4.08 61.37-23.72 83.18zm39.4-112.03l-49.86-44.32L380.05 54.22C390.38 39.47 403.33 32 418.52 32c22.9 0 47.56 16.71 57.36 38.88 7.94 17.96 4.45 35.34-10.39 51.64L270.36 337.15z\"]\n};\nvar faPaintRoller = {\n prefix: 'fal',\n iconName: 'paint-roller',\n icon: [512, 512, [], \"f5aa\", \"M464 64h-48V48c0-26.51-21.49-48-48-48H48C21.49 0 0 21.49 0 48v64c0 26.51 21.49 48 48 48h320c26.51 0 48-21.49 48-48V96h48c8.81 0 16 7.17 16 16v96c0 8.83-7.19 16-16 16H256c-26.47 0-48 21.53-48 48v48h-16c-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-32h-16v-48c0-8.83 7.19-16 16-16h208c26.47 0 48-21.53 48-48v-96c0-26.47-21.53-48-48-48zm-80 0v48c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16V48c0-8.82 7.18-16 16-16h320c8.82 0 16 7.18 16 16v16zM256 480h-64V352h64v128z\"]\n};\nvar faPalette = {\n prefix: 'fal',\n iconName: 'palette',\n icon: [512, 512, [], \"f53f\", \"M112 264c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm32-112c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM256 0c-16.9 0-34.2 1.6-51.7 5C104.9 24.4 24.8 104.3 5.2 203.4-29.4 378.5 116.4 512 239.5 512c8.3 0 16.5-.6 24.6-1.9 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.6 113.9 397.1 0 256 0zm191.1 288h-79.7c-35.3 0-67.4 17.9-85.7 47.8-18.2 29.7-19.6 66-3.7 97.2 4.9 9.6 4.8 21.6-.1 31.3-2.4 4.6-7.9 12.6-18.7 14.3-6.3 1-12.9 1.5-19.7 1.5-54.6 0-114.1-31.3-155.5-81.6-44-53.6-60.9-120.6-47.4-188.7 17.1-86.6 87-156.2 173.9-173.2 15.2-3 30.5-4.5 45.5-4.5 123.1 0 223.6 99.9 224 222.6 0 18.3-14.8 33.3-32.9 33.3zM368 136c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM240 88c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24z\"]\n};\nvar faPallet = {\n prefix: 'fal',\n iconName: 'pallet',\n icon: [640, 512, [], \"f482\", \"M144 288h352c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H144c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16zM288 32h64v76.2l-32-16-32 16V32zm-128 0h96v128l64-32 64 32V32h96v224H160V32zm472 320c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h56v128H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h624c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-56V352h56zM160 480H96V352h64v128zm288 0H192V352h256v128zm96 0h-64V352h64v128z\"]\n};\nvar faPalletAlt = {\n prefix: 'fal',\n iconName: 'pallet-alt',\n icon: [640, 512, [], \"f483\", \"M112 288h416c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16H352V16c0-8.8-7.2-16-16-16H112c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16zM352 96h160v160H352V96zM128 32h192v224H128V32zm504 320c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h56v128H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h624c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-56V352h56zM160 480H96V352h64v128zm288 0H192V352h256v128zm96 0h-64V352h64v128z\"]\n};\nvar faPaperPlane = {\n prefix: 'fal',\n iconName: 'paper-plane',\n icon: [512, 512, [], \"f1d8\", \"M464 4.3L16 262.7C-7 276-4.7 309.9 19.8 320L160 378v102c0 30.2 37.8 43.3 56.7 20.3l60.7-73.8 126.4 52.2c19.1 7.9 40.7-4.2 43.8-24.7l64-417.1C515.7 10.2 487-9 464 4.3zM192 480v-88.8l54.5 22.5L192 480zm224-30.9l-206.2-85.2 199.5-235.8c4.8-5.6-2.9-13.2-8.5-8.4L145.5 337.3 32 290.5 480 32l-64 417.1z\"]\n};\nvar faPaperclip = {\n prefix: 'fal',\n iconName: 'paperclip',\n icon: [512, 512, [], \"f0c6\", \"M149.106 512c-33.076 0-66.153-12.59-91.333-37.771-50.364-50.361-50.364-132.305-.002-182.665L319.842 29.498c39.331-39.331 103.328-39.331 142.66 0 39.331 39.332 39.331 103.327 0 142.657l-222.63 222.626c-28.297 28.301-74.347 28.303-102.65 0-28.3-28.301-28.3-74.349 0-102.649l170.301-170.298c4.686-4.686 12.284-4.686 16.97 0l5.661 5.661c4.686 4.686 4.686 12.284 0 16.971l-170.3 170.297c-15.821 15.821-15.821 41.563.001 57.385 15.821 15.82 41.564 15.82 57.385 0l222.63-222.626c26.851-26.851 26.851-70.541 0-97.394-26.855-26.851-70.544-26.849-97.395 0L80.404 314.196c-37.882 37.882-37.882 99.519 0 137.401 37.884 37.881 99.523 37.882 137.404.001l217.743-217.739c4.686-4.686 12.284-4.686 16.97 0l5.661 5.661c4.686 4.686 4.686 12.284 0 16.971L240.44 474.229C215.26 499.41 182.183 512 149.106 512z\"]\n};\nvar faParachuteBox = {\n prefix: 'fal',\n iconName: 'parachute-box',\n icon: [512, 512, [], \"f4cd\", \"M511.9 204.2C499.2 80.9 368.8 0 256 0S12.8 80.9.1 204.2C-1 214.9 6.9 224 16.1 224h32.5L160 345.4V480c0 17.7 14.3 32 32 32h128c17.7 0 32-14.3 32-32V345.4L463.3 224h32.5c9.3 0 17.2-9.1 16.1-19.8zM256 32c51.8 0 112 64 112 160H144c0-96 60.2-160 112-160zM34.3 192C47.7 126.9 101 76.8 163.4 51.1c-30.1 32.7-51.4 81-51.4 140.1v.8H34.3zm145.8 128L92 224h148v96h-59.9zM320 472c0 4.4-3.6 8-8 8H200c-4.4 0-8-3.6-8-8V360c0-4.4 3.6-8 8-8h112c4.4 0 8 3.6 8 8v112zm11.9-152H272v-96h147.9l-88 96zM400 192v-.8c0-59.1-21.3-107.3-51.4-140.1 62.3 25.7 115.7 75.8 129.1 140.9H400z\"]\n};\nvar faParagraph = {\n prefix: 'fal',\n iconName: 'paragraph',\n icon: [448, 512, [], \"f1dd\", \"M440 32H224A160 160 0 0 0 64.35 202.65c5.5 85 79.91 149.35 165.13 149.35H256v120a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V64h64v408a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V64h56a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8zM256 320h-32a128 128 0 0 1 0-256h32z\"]\n};\nvar faParagraphRtl = {\n prefix: 'fal',\n iconName: 'paragraph-rtl',\n icon: [384, 512, [], \"f878\", \"M176 224h48v88a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V32h32v280a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V32h24a8 8 0 0 0 8-8V8a8 8 0 0 0-8-8H179.37C116.72 0 63.68 50 64 112.66 64.33 176.33 112.22 224 176 224zM119.12 57a85.55 85.55 0 0 1 60.25-25H224v160h-48c-46.12 0-79.76-33.44-80-79.51A77.8 77.8 0 0 1 119.12 57zM376 400H112v-64a16 16 0 0 0-16.12-16 15.66 15.66 0 0 0-11.19 4.7l-80 80a16 16 0 0 0 0 22.63l80 80A16.16 16.16 0 0 0 96.17 512c8 0 15.83-5.69 15.83-16v-64h264a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm-296 0v57.37L38.63 416 80 374.64z\"]\n};\nvar faParking = {\n prefix: 'fal',\n iconName: 'parking',\n icon: [448, 512, [], \"f540\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352zM244.1 127.9H152c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-72h72c51.4 0 92.7-44.3 87.6-96.8-4.4-45.7-45.5-79.2-91.5-79.2zM248 272h-72V160h72c30.9 0 56 25.1 56 56s-25.1 56-56 56z\"]\n};\nvar faParkingCircle = {\n prefix: 'fal',\n iconName: 'parking-circle',\n icon: [496, 512, [], \"f615\", \"M268.1 127.91H176c-4.42 0-8 3.58-8 8v240c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-72h72c51.43 0 92.68-44.32 87.57-96.78-4.45-45.71-45.54-79.22-91.47-79.22zm3.9 144h-72v-112h72c30.88 0 56 25.12 56 56s-25.12 56-56 56zM248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216z\"]\n};\nvar faParkingCircleSlash = {\n prefix: 'fal',\n iconName: 'parking-circle-slash',\n icon: [496, 512, [], \"f616\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 464c-119.1 0-216-96.9-216-216 0-44.65 13.62-86.17 36.92-120.65l338.14 266.27C367.54 444.75 310.96 472 248 472zm-48-274.17v-37.91h72c30.88 0 56 25.12 56 56 0 24.55-15.99 45.23-38.02 52.77L200 197.83zm117.54 92.55c27.62-16.75 45.47-47.9 42.03-83.25-4.45-45.72-45.54-79.22-91.48-79.22H176c-4.42 0-8 3.58-8 8v36.72l-79.06-62.26C128.46 67.25 185.04 40 248 40c119.1 0 216 96.9 216 216 0 44.65-13.62 86.17-36.92 120.64l-109.54-86.26zM168 375.91c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-72h31.25L168 254.11v121.8z\"]\n};\nvar faParkingSlash = {\n prefix: 'fal',\n iconName: 'parking-slash',\n icon: [640, 512, [], \"f617\", \"M496 64c8.8 0 16 7.2 16 16v266.1l32 25.2V80c0-26.5-21.5-48-48-48H144.1c-8.4 0-16.2 2.4-23.1 6.2L153.8 64zm-82.2 204.8c12.9-16.9 20.1-38.3 17.8-61.6-4.5-45.7-45.5-79.2-91.5-79.2H248c-3.3 0-5.5 2.2-6.8 5l34.3 27H344c30.9 0 56 25.1 56 56 0 12.5-4.2 23.9-11.2 33.2zM637 485.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zM264.1 383.9c4.4 0 8-3.6 8-8v-72h31.2l-63.2-49.7v121.7c0 4.4 3.6 8 8 8zm-120 64c-8.8 0-16-7.2-16-16V166l-32-25.2v291.1c0 26.5 21.5 48 48 48H496c8.4 0 16.1-2.3 23-6.1l-32.9-25.9z\"]\n};\nvar faPassport = {\n prefix: 'fal',\n iconName: 'passport',\n icon: [448, 512, [], \"f5ab\", \"M416 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-32zm0 480H64c-17.64 0-32-14.36-32-32V64c0-17.64 14.36-32 32-32h352v448zm-304-64h224c8.8 0 16-7.2 16-16s-7.2-16-16-16H112c-8.8 0-16 7.2-16 16s7.2 16 16 16zm112-96c70.69 0 128-57.31 128-128S294.69 64 224 64 96 121.31 96 192s57.31 128 128 128zm94.38-144h-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.41zm-39.09 32h39.09c-5.29 31.22-25.59 57.17-53.3 70.41 7.68-19.06 12.72-43.38 14.21-70.41zM224 97.31c7.69 7.45 20.77 34.42 23.43 78.69h-46.87c2.67-44.26 15.75-71.24 23.44-78.69zM247.43 208c-2.66 44.26-15.74 71.24-23.43 78.69-7.69-7.45-20.77-34.42-23.43-78.69h46.86zm-64.51-102.41c-7.68 19.06-12.72 43.38-14.21 70.41h-39.09c5.28-31.22 25.59-57.17 53.3-70.41zM168.71 208c1.49 27.03 6.54 51.35 14.21 70.41-27.71-13.24-48.02-39.19-53.3-70.41h39.09z\"]\n};\nvar faPastafarianism = {\n prefix: 'fal',\n iconName: 'pastafarianism',\n icon: [640, 512, [], \"f67b\", \"M629.28 355.14c-29.93-10.97-52.59 3.78-70.75 15.61-16.97 11-27.2 16.95-40.3 12.2-13.1-4.8-16.61-15.83-21.61-34.89-3.35-12.71-7.23-27.35-16.85-39.25 7.51-9.17 13.47-17.9 18.21-25.65 9.74 11.26 22.76 20.84 42.18 20.84 30.03 0 44.88-22.84 55.71-39.52 11.08-17.03 17-24.48 27.49-24.48 9.2 0 16.64-7.16 16.64-16s-7.44-16-16.64-16c-30.03 0-44.88 22.84-55.71 39.52-11.08 17.03-17 24.48-27.49 24.48-46.08 0-20.68-62.88-119.11-118.33l21.13-42.26c1.94.2 3.82.59 5.82.59 30.93 0 56-25.07 56-56S478.93 0 448 0s-56 25.07-56 56c0 17.42 8.12 32.78 20.58 43.05l-20.56 41.11C371.26 132.66 347.38 128 320 128s-51.26 4.66-72.03 12.16l-20.56-41.11C239.88 88.78 248 73.42 248 56c0-30.93-25.07-56-56-56s-56 25.07-56 56 25.07 56 56 56c1.99 0 3.88-.38 5.82-.59l21.13 42.26C120.52 209.12 145.92 272 99.84 272c-10.5 0-16.41-7.45-27.49-24.48C61.52 230.84 46.67 208 16.64 208 7.44 208 0 215.16 0 224s7.44 16 16.64 16c10.5 0 16.41 7.45 27.49 24.48C54.96 281.16 69.81 304 99.84 304c19.42 0 32.44-9.58 42.18-20.84 4.74 7.75 10.7 16.48 18.21 25.65-9.62 11.9-13.5 26.54-16.85 39.25-5.01 19.06-8.52 30.09-21.61 34.89-13.1 4.75-23.33-1.2-40.3-12.2-18.17-11.83-40.82-26.58-70.75-15.61-8.61 3.14-12.9 12.39-9.62 20.66 3.25 8.27 12.87 12.41 21.45 9.25 13.1-4.83 23.34 1.17 40.3 12.2 13.68 8.91 29.9 19.45 49.86 19.45 6.53 0 13.52-1.14 20.9-3.84 29.93-10.97 36.66-36.45 42.05-56.92 2.51-9.57 4.65-17.11 7.82-22.85 19.39 17.36 44.71 33.15 76.63 42.41-12.45 50.02-36.41 102.84-68.11 102.84-8.84 0-16 7.53-16 16.83 0 9.3 7.16 16.83 16 16.83 60.44 0 89.31-88.06 99.63-129.86 9.04 1.14 18.43 1.86 28.37 1.86s19.33-.73 28.37-1.86C358.69 423.94 387.56 512 448 512c8.84 0 16-7.53 16-16.83 0-9.3-7.16-16.83-16-16.83-31.7 0-55.66-52.82-68.11-102.85 31.92-9.26 57.24-25.04 76.63-42.41 3.16 5.75 5.3 13.28 7.82 22.85 5.39 20.47 12.12 45.95 42.05 56.92 7.38 2.7 14.37 3.84 20.9 3.84 19.96 0 36.17-10.55 49.86-19.45 16.96-11.03 27.2-17.03 40.3-12.2 8.58 3.16 18.2-.98 21.45-9.25 3.28-8.26-1.01-17.51-9.62-20.65zM448 32c13.23 0 24 10.77 24 24s-10.77 24-24 24-24-10.77-24-24 10.77-24 24-24zM192 80c-13.23 0-24-10.77-24-24s10.77-24 24-24 24 10.77 24 24-10.77 24-24 24zm128 272c-97.04 0-142.39-68.26-156.81-96.01C177.55 228.36 222.88 160 320 160s142.45 68.36 156.81 95.99C462.39 283.74 417.04 352 320 352z\"]\n};\nvar faPaste = {\n prefix: 'fal',\n iconName: 'paste',\n icon: [448, 512, [], \"f0ea\", \"M433.941 193.941l-51.882-51.882A48 48 0 0 0 348.118 128H320V80c0-26.51-21.49-48-48-48h-66.752C198.643 13.377 180.858 0 160 0s-38.643 13.377-45.248 32H48C21.49 32 0 53.49 0 80v288c0 26.51 21.49 48 48 48h80v48c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48V227.882a48 48 0 0 0-14.059-33.941zm-22.627 22.627a15.888 15.888 0 0 1 4.195 7.432H352v-63.509a15.88 15.88 0 0 1 7.431 4.195l51.883 51.882zM160 30c9.941 0 18 8.059 18 18s-8.059 18-18 18-18-8.059-18-18 8.059-18 18-18zM48 384c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h66.752c6.605 18.623 24.389 32 45.248 32s38.643-13.377 45.248-32H272c8.822 0 16 7.178 16 16v48H176c-26.51 0-48 21.49-48 48v208H48zm352 96H176c-8.822 0-16-7.178-16-16V176c0-8.822 7.178-16 16-16h144v72c0 13.2 10.8 24 24 24h72v208c0 8.822-7.178 16-16 16z\"]\n};\nvar faPause = {\n prefix: 'fal',\n iconName: 'pause',\n icon: [448, 512, [], \"f04c\", \"M48 479h96c26.5 0 48-21.5 48-48V79c0-26.5-21.5-48-48-48H48C21.5 31 0 52.5 0 79v352c0 26.5 21.5 48 48 48zM32 79c0-8.8 7.2-16 16-16h96c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V79zm272 400h96c26.5 0 48-21.5 48-48V79c0-26.5-21.5-48-48-48h-96c-26.5 0-48 21.5-48 48v352c0 26.5 21.5 48 48 48zM288 79c0-8.8 7.2-16 16-16h96c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16h-96c-8.8 0-16-7.2-16-16V79z\"]\n};\nvar faPauseCircle = {\n prefix: 'fal',\n iconName: 'pause-circle',\n icon: [512, 512, [], \"f28b\", \"M218 160h-20c-3.3 0-6 2.7-6 6v180c0 3.3 2.7 6 6 6h20c3.3 0 6-2.7 6-6V166c0-3.3-2.7-6-6-6zm96 0h-20c-3.3 0-6 2.7-6 6v180c0 3.3 2.7 6 6 6h20c3.3 0 6-2.7 6-6V166c0-3.3-2.7-6-6-6zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 464c-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216z\"]\n};\nvar faPaw = {\n prefix: 'fal',\n iconName: 'paw',\n icon: [512, 512, [], \"f1b0\", \"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 224zm120.26 224c-20.3 0-37.81-5.77-56.35-11.88-19.68-6.49-40.02-13.19-63.91-13.19-23.65 0-43.85 6.67-63.39 13.12-18.64 6.15-36.25 11.96-56.87 11.96C96 448 96 430.12 96 424.25 96 361.35 196.19 256 256 256s160 105.35 160 168.25c0 5.87 0 23.75-39.74 23.75zm98.57-286.73c-3.57-.86-7.2-1.27-10.81-1.27-25.85 0-51.62 21-60.74 51.39-10.4 34.65 4.77 68.38 33.89 75.34 3.58.86 7.2 1.27 10.81 1.27 25.85 0 51.62-21 60.74-51.39 10.4-34.65-4.77-68.38-33.89-75.34zm3.24 66.14C472.7 245.3 458.55 256 447.98 256c-1.16 0-2.29-.13-3.37-.39-3.7-.88-6.72-3.32-8.98-7.25-4.13-7.18-4.76-17.55-1.7-27.76 5.37-17.9 19.52-28.6 30.1-28.6 1.16 0 2.29.13 3.37.39 3.7.88 6.72 3.33 8.98 7.25 4.12 7.18 4.76 17.55 1.69 27.77zm-159.51-36.8c3.55.93 7.15 1.38 10.76 1.38 27.84 0 56.22-26.82 66.7-65.25 11.84-43.42-3.64-85.21-34.58-93.36a41.92 41.92 0 0 0-10.76-1.39c-27.84 0-56.22 26.82-66.7 65.26-11.84 43.42 3.64 85.22 34.58 93.36zm-3.71-84.93C322.27 78.48 340.43 64 350.68 64c.91 0 1.77.11 2.61.33 4.13 1.09 7.12 5 8.9 8.09 5.08 8.8 8.52 25.48 2.95 45.91-7.42 27.19-25.57 41.67-35.83 41.67-.91 0-1.77-.11-2.62-.33-4.12-1.08-7.12-4.99-8.9-8.08-5.07-8.81-8.51-25.48-2.94-45.91zM182.68 192c3.61 0 7.21-.45 10.76-1.38 30.94-8.14 46.42-49.94 34.58-93.36C217.54 58.82 189.16 32 161.32 32c-3.61 0-7.21.45-10.76 1.39-30.94 8.14-46.42 49.94-34.58 93.36 10.48 38.43 38.87 65.25 66.7 65.25zM149.8 72.42c1.78-3.09 4.78-7 8.9-8.09.85-.22 1.7-.33 2.61-.33 10.26 0 28.41 14.48 35.83 41.68 5.57 20.43 2.13 37.11-2.95 45.91-1.78 3.09-4.77 7-8.9 8.08-.85.22-1.7.33-2.61.33-10.26 0-28.41-14.48-35.83-41.68-5.57-20.42-2.13-37.1 2.95-45.9zM74.84 286.73c29.12-6.96 44.29-40.69 33.88-75.34C99.6 181 73.83 160 47.98 160c-3.62 0-7.24.41-10.81 1.27-29.12 6.96-44.29 40.69-33.89 75.34C12.4 267 38.18 288 64.02 288c3.62 0 7.24-.41 10.82-1.27zM33.93 227.4c-3.06-10.21-2.43-20.59 1.7-27.76 2.26-3.93 5.28-6.37 8.98-7.25 1.08-.26 2.21-.39 3.37-.39 10.57 0 24.72 10.7 30.09 28.59 3.06 10.21 2.43 20.59-1.7 27.77-2.26 3.93-5.28 6.37-8.98 7.25-1.1.26-2.2.39-3.37.39-10.57 0-24.72-10.7-30.09-28.6z\"]\n};\nvar faPawAlt = {\n prefix: 'fal',\n iconName: 'paw-alt',\n icon: [448, 512, [], \"f701\", \"M367.31 300.78c-26.29-14.84-47.14-61.41-67.17-97.83C284.41 174.31 254.21 160 224 160s-60.41 14.31-76.15 42.95c-20.29 36.96-40.12 82.56-67.17 97.83C51.63 317.18 32 348.18 32 383.95c0 53.01 42.98 95.98 96 95.98 1.31.04 2.6.07 3.87.07 48.88 0 68.92-32.06 92.13-32.06S267.25 480 316.13 480c1.27 0 2.56-.02 3.87-.07 53.02 0 96-42.97 96-95.98 0-35.77-19.63-66.77-48.69-83.17zm-48.39 147.17l-2.79.05c-20.12 0-33.04-7.72-46.73-15.89-12.71-7.58-27.1-16.17-45.39-16.17s-32.69 8.59-45.39 16.17C164.93 440.28 152 448 131.88 448l-3.87-.07c-35.29 0-64-28.7-64-63.98 0-22.82 12.42-44.02 32.42-55.31 30.46-17.2 50.03-54.48 68.96-90.53 3.52-6.71 7.02-13.37 10.52-19.75C184.97 201.85 202.95 192 224 192s39.03 9.85 48.1 26.36c3.31 6.02 6.64 12.32 10.02 18.71 19.4 36.69 39.46 74.63 69.46 91.57 20 11.29 32.42 32.49 32.42 55.31 0 35.28-28.71 63.98-65.08 64zM112 200c0-30.93-25.07-56-56-56S0 169.07 0 200s25.07 56 56 56 56-25.07 56-56zm-80 0c0-13.23 10.77-24 24-24s24 10.77 24 24-10.77 24-24 24-24-10.77-24-24zm360-56c-30.93 0-56 25.07-56 56s25.07 56 56 56 56-25.07 56-56-25.07-56-56-56zm0 80c-13.23 0-24-10.77-24-24s10.77-24 24-24 24 10.77 24 24-10.77 24-24 24zm-96-80c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0-80c13.23 0 24 10.77 24 24s-10.77 24-24 24-24-10.77-24-24 10.77-24 24-24zm-144 80c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0-80c13.23 0 24 10.77 24 24s-10.77 24-24 24-24-10.77-24-24 10.77-24 24-24z\"]\n};\nvar faPawClaws = {\n prefix: 'fal',\n iconName: 'paw-claws',\n icon: [512, 512, [], \"f702\", \"M318.55 222.61c40.16 10.56 69.55-34.86 77.46-63.87 8.44-30.94 3.01-61.05-12.01-78.75L320 0v74.96c-15.94 11.26-29.49 30.37-36.02 54.29-11.84 43.42 3.64 85.22 34.57 93.36zm-3.7-84.93c18.22-66.79 66.59-47.08 50.29 12.65-18.19 66.71-66.59 47.12-50.29-12.65zm178.65 52.69L448 128v66.94c-19.83 6.55-37.51 24.43-44.72 48.46-10.4 34.65 4.77 68.38 33.89 75.34 30.46 7.29 61.64-17.11 71.55-50.13 8.85-29.51-1.55-59.5-15.22-78.24zm-15.43 69.03c-12.72 42.35-56.89 35.65-44.15-6.81 12.69-42.26 56.91-35.72 44.15 6.81zM256 256c-79.41 0-191.99 122.76-191.99 200.25 0 34.91 26.81 55.75 71.74 55.75 48.84 0 81.09-25.08 120.26-25.08 39.51 0 71.84 25.08 120.26 25.08 44.93 0 71.74-20.85 71.74-55.75C447.99 378.76 335.41 256 256 256zm120.26 224c-20.3 0-37.81-5.77-56.34-11.88-19.68-6.49-40.02-13.19-63.91-13.19-23.65 0-43.85 6.67-63.39 13.12-18.64 6.15-36.25 11.96-56.87 11.96-39.74 0-39.74-17.88-39.74-23.75C96.01 393.35 196.19 288 256 288s159.99 105.35 159.99 168.25c0 5.87 0 23.75-39.73 23.75zM108.73 243.39c-7.21-24.03-24.89-41.91-44.72-48.46V128L18.5 190.37C4.81 209.13-5.57 239.11 3.29 268.61c10 33.3 41.36 57.35 71.55 50.13 29.11-6.97 44.29-40.7 33.89-75.35zM33.94 259.4c-12.84-42.77 31.51-48.87 44.15-6.81 12.8 42.69-31.5 48.95-44.15 6.81zm159.51-36.79c30.94-8.14 46.42-49.94 34.58-93.36-6.53-23.92-20.07-43.04-36.02-54.29V0L128 79.99c-15.02 17.7-20.45 47.82-12.01 78.75 7.65 28.05 37.08 74.5 77.46 63.87zm3.7-84.93c16.2 59.39-32 79.74-50.3 12.65-16.19-59.39 32-79.75 50.3-12.65z\"]\n};\nvar faPeace = {\n prefix: 'fal',\n iconName: 'peace',\n icon: [496, 512, [], \"f67c\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm216 248c0 45.24-14.04 87.23-37.9 121.97L264 248.3V40.81C375.63 49.05 464 142.3 464 256zM232 40.81V248.3L69.9 377.97C46.04 343.23 32 301.24 32 256c0-113.7 88.37-206.95 200-215.19zM90.05 402.85L232 289.3v181.89c-55.93-4.13-105.9-29.59-141.95-68.34zM264 471.19V289.3l141.95 113.55C369.9 441.6 319.93 467.06 264 471.19z\"]\n};\nvar faPegasus = {\n prefix: 'fal',\n iconName: 'pegasus',\n icon: [576, 512, [], \"f703\", \"M575.95 86.27c-.01-9.62-3.67-15.92-9.14-22.56 5.39-9.45 8.38-20.32 8.38-31.71 0-17.67-14.33-32-32-32H432c-69.18 0-125.38 55.26-127.59 123.92-35.69-9.21-63.11-34.71-81.5-76.6-4-9.16-13.06-15.16-23.03-15.31-10.53.2-18.84 5.36-23.13 14.39C165.63 69.94 160 95.08 160 121.09c0 75.38 56.56 143.6 132.87 161.9 4.42 1.06 8.86-1.96 9.7-6.43l2.97-15.7c.8-4.22-1.93-8.17-6.1-9.2C237.69 236.47 192 181.6 192 121.09c0-16.31 2.72-32.19 8.06-47.38C229.38 130.23 276.1 160 335.94 160l.06-32c0-53.02 42.98-96 96-96h111.19c0 13.29-8.11 24.67-19.63 29.5l20.39 24.78.05 93.88a16 16 0 0 1-10.83 15.15l-25.52 8.71c-9.35 3.19-16.15-2.77-18.48-6.27L464 160l-48-16v100.21c0 26.67-12.64 50.17-32 65.6V480h-64V325.8l-136.43-30.32-32.12 89.47L175.53 480H118l-21.13-87.86a31.698 31.698 0 0 1 .37-16.18l27.63-93.41C107.45 270.37 96 250.24 96 227.37c0-27.2 16.21-50.49 39.41-61.13-3.19-10.36-5.22-21.01-6.18-31.92a100.202 100.202 0 0 0-50.57 41.82C35.11 176.87 0 212.28 0 256v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56c0-21.5 14.23-39.48 33.71-45.59-.96 5.54-1.71 11.15-1.71 16.96 0 24.2 8.9 47.33 24.53 65.24l-21.97 74.28c-3.12 10.77-3.38 22.03-.8 32.74l21.13 87.86C90.34 501.86 103.2 512 118 512h57.53c20.95 0 36.12-19.75 31.02-39.86l-21.68-85.57 19.29-53.73L288 351.47V480c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V323.81c20.5-21.51 32-49.75 32-79.6v-50.52l14.55 21.82c19.11 28.67 49.98 20.67 55.45 18.8l25.52-8.71c19.44-6.63 32.5-24.9 32.49-45.45l-.06-93.88zM496.01 96c0-8.84-7.16-16-16-16s-16 7.16-16 16 7.16 16 16 16 16-7.16 16-16z\"]\n};\nvar faPen = {\n prefix: 'fal',\n iconName: 'pen',\n icon: [512, 512, [], \"f304\", \"M493.25 56.26l-37.51-37.51C443.25 6.25 426.87 0 410.49 0s-32.76 6.25-45.26 18.74L12.85 371.12.15 485.34C-1.45 499.72 9.88 512 23.95 512c.89 0 1.78-.05 2.69-.15l114.14-12.61 352.48-352.48c24.99-24.99 24.99-65.51-.01-90.5zM126.09 468.68l-93.03 10.31 10.36-93.17 263.89-263.89 82.77 82.77-263.99 263.98zm344.54-344.54l-57.93 57.93-82.77-82.77 57.93-57.93c6.04-6.04 14.08-9.37 22.63-9.37 8.55 0 16.58 3.33 22.63 9.37l37.51 37.51c12.47 12.48 12.47 32.78 0 45.26z\"]\n};\nvar faPenAlt = {\n prefix: 'fal',\n iconName: 'pen-alt',\n icon: [512, 512, [], \"f305\", \"M493.25 56.26l-37.51-37.51C443.24 6.25 426.86 0 410.49 0c-16.38 0-32.76 6.25-45.25 18.74l-67.88 67.88L274.74 64c-12.5-12.5-32.76-12.5-45.25 0L99.37 194.12c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0L252.1 86.63l22.62 22.62L93.95 290.03A327.038 327.038 0 0 0 .17 485.12l-.03.23C-1.45 499.72 9.88 512 23.95 512c5.73 0 111.06-6.99 198.03-93.95l271.28-271.28c24.99-25 24.99-65.52-.01-90.51zm-293.9 339.16c-45 45-103.93 74.41-166.1 83.39 9.13-62.64 38.5-121.32 83.34-166.16l180.77-180.77.01.01.01-.01 82.76 82.76-180.79 180.78zm271.28-271.28l-67.88 67.88-82.77-82.77 67.88-67.88c12.5-12.5 32.74-12.51 45.25 0l37.51 37.51c12.51 12.5 12.52 32.74.01 45.26z\"]\n};\nvar faPenFancy = {\n prefix: 'fal',\n iconName: 'pen-fancy',\n icon: [512, 512, [], \"f5ac\", \"M424.86 0c-23.46 0-46.85 9.64-63.71 28.72L169.93 240 84.1 268.62a34.005 34.005 0 0 0-21.5 21.5L0 478l33.99 34 187.79-62.62a34.005 34.005 0 0 0 21.5-21.5l28.6-85.88 211.19-191.3C544.5 96.38 500.08 0 424.86 0zM212.93 417.75c-.2.59-145.42 49.34-145.42 49.34l68.63-68.66c2.56.66 5.03 1.57 7.8 1.57 17.67 0 31.99-14.33 31.99-32s-14.32-32-31.99-32-31.99 14.33-31.99 32c0 2.77.91 5.24 1.57 7.8l-68.64 68.67S93.6 299.18 94.2 298.98l88.54-29.53 59.69 59.71-29.5 88.59zM461.6 126.97L264.26 305.74l-58.09-58.11L385.11 49.92A53.057 53.057 0 0 1 424.86 32c29.1 0 55.87 25.55 54.91 56.61-.45 14.78-6.81 28.31-18.17 38.36z\"]\n};\nvar faPenNib = {\n prefix: 'fal',\n iconName: 'pen-nib',\n icon: [512, 512, [], \"f5ad\", \"M493.87 95.6L416.4 18.13C404.32 6.04 388.48 0 372.64 0c-15.84 0-31.68 6.04-43.76 18.13l-92.45 92.45-99.83 28.21a64.003 64.003 0 0 0-43.31 41.35L0 460l52 52 279.86-93.29a64.003 64.003 0 0 0 41.35-43.31l28.21-99.83 92.45-92.45c24.17-24.17 24.17-63.35 0-87.52zM342.42 366.7a31.985 31.985 0 0 1-20.68 21.66l-261.1 87.03-.7-.7L175.7 358.93c9.52 5.62 20.47 9.07 32.3 9.07 35.28 0 64-28.7 64-64s-28.72-64-64-64-64 28.7-64 64c0 11.83 3.45 22.79 9.07 32.31L37.32 452.06l-.71-.7 87.03-261.1a31.986 31.986 0 0 1 21.66-20.68l99.83-28.21 1.25-.36 124.6 124.6-.35 1.25-28.21 99.84zM176 304c0-17.64 14.34-32 32-32s32 14.36 32 32-14.34 32-32 32-32-14.36-32-32zm295.25-143.51l-80.06 80.06-119.75-119.73 80.07-80.06c11.67-11.67 30.58-11.69 42.27 0l77.47 77.47c11.65 11.65 11.65 30.61 0 42.26z\"]\n};\nvar faPenSquare = {\n prefix: 'fal',\n iconName: 'pen-square',\n icon: [448, 512, [], \"f14b\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352zm-67.1-324.3c-15.6-15.6-40.9-15.6-56.6 0L72 328l-7.9 71.4C63 409 71.1 417 80.7 416l71.3-8 220.3-220.3c15.6-15.6 15.6-40.9 0-56.6l-23.4-23.4zM137.3 377.4l-39.1 4.3 4.3-39.1 162.7-162.7 34.7 34.7-162.6 162.8zm212.4-212.3l-27 27-34.7-34.7 27-27c3.1-3.1 8.2-3.1 11.3 0l23.4 23.4c3.1 3.1 3.1 8.2 0 11.3z\"]\n};\nvar faPencil = {\n prefix: 'fal',\n iconName: 'pencil',\n icon: [512, 512, [], \"f040\", \"M493.255 56.236l-37.49-37.49c-24.993-24.993-65.515-24.994-90.51 0L12.838 371.162.151 485.346c-1.698 15.286 11.22 28.203 26.504 26.504l114.184-12.687 352.417-352.417c24.992-24.994 24.992-65.517-.001-90.51zm-95.196 140.45L174 420.745V386h-48v-48H91.255l224.059-224.059 82.745 82.745zM126.147 468.598l-58.995 6.555-30.305-30.305 6.555-58.995L63.255 366H98v48h48v34.745l-19.853 19.853zm344.48-344.48l-49.941 49.941-82.745-82.745 49.941-49.941c12.505-12.505 32.748-12.507 45.255 0l37.49 37.49c12.506 12.506 12.507 32.747 0 45.255z\"]\n};\nvar faPencilAlt = {\n prefix: 'fal',\n iconName: 'pencil-alt',\n icon: [512, 512, [], \"f303\", \"M493.255 56.236l-37.49-37.49c-24.993-24.993-65.515-24.994-90.51 0L12.838 371.162.151 485.346c-1.698 15.286 11.22 28.203 26.504 26.504l114.184-12.687 352.417-352.417c24.992-24.994 24.992-65.517-.001-90.51zM164.686 347.313c6.249 6.249 16.379 6.248 22.627 0L368 166.627l30.059 30.059L174 420.745V386h-48v-48H91.255l224.059-224.059L345.373 144 164.686 324.687c-6.249 6.248-6.249 16.378 0 22.626zm-38.539 121.285l-58.995 6.555-30.305-30.305 6.555-58.995L63.255 366H98v48h48v34.745l-19.853 19.853zm344.48-344.48l-49.941 49.941-82.745-82.745 49.941-49.941c12.505-12.505 32.748-12.507 45.255 0l37.49 37.49c12.506 12.506 12.507 32.747 0 45.255z\"]\n};\nvar faPencilPaintbrush = {\n prefix: 'fal',\n iconName: 'pencil-paintbrush',\n icon: [512, 512, [], \"f618\", \"M433.43 365.35c-20.56-54.19-55.01-73.83-93.93-79.66l158.43-158.45c18.76-18.76 18.75-49.17 0-67.93l-45.25-45.25C443.3 4.69 431 0 418.71 0s-24.59 4.69-33.97 14.07l-144.52 144.5-82.07-122.72C140.34 10.44 116.87 0 93.48 0 28.72 0-35.44 80.02 22.83 144.05l110.43 121.46L19.09 379.66.35 487.11c-2.72 15.63 11.22 26.9 24.59 24.56l107.44-18.84 93.71-93.72C232.1 444.02 260.26 512 368 512c101.33 0 144-81.42 144-174.07-11.01 7.52-49.66 38.65-62.15 38.65-7.42 0-13.77-4.24-16.42-11.23zM407.36 36.7c4.09-4.09 18.61-4.09 22.7 0l45.25 45.24c6.25 6.25 6.25 16.42 0 22.67l-46.03 46.03-67.94-67.94 46.02-46zM46.51 122.52c-14.84-16.31-18.33-33.68-10.39-51.64C45.92 48.71 70.58 32 93.48 32c15.2 0 28.14 7.47 38.47 22.22l85.2 127.42-61.23 61.22L46.51 122.52zm70.38 340.54L34.5 477.5l14.38-82.37 289.83-289.8 67.94 67.94-289.76 289.79zM368 480c-39.28 0-68.54-10.37-86.96-30.82-19.21-21.33-26.21-53.48-23.74-81.28l16.87-16.87 40.03-35.59c71.69 4.61 82.45 43.17 89.31 61.26 7.33 19.35 25.52 31.87 46.33 31.87 6.57 0 13.17-1.55 20.72-4.86C458.15 442.53 430.08 480 368 480z\"]\n};\nvar faPencilRuler = {\n prefix: 'fal',\n iconName: 'pencil-ruler',\n icon: [512, 512, [], \"f5ae\", \"M502.71 368.14L379.88 245.31l49.4-49.4 68.65-68.66c18.76-18.76 18.75-49.17 0-67.93l-45.25-45.25C443.3 4.69 431 0 418.71 0s-24.59 4.69-33.97 14.07l-68.65 68.64-49.4 49.4L143.87 9.29C137.68 3.1 129.56 0 121.44 0s-16.23 3.1-22.43 9.29L9.31 99c-12.38 12.39-12.39 32.47 0 44.86l122.8 122.8-113.01 113L.34 487.11c-2.72 15.63 11.22 26.9 24.59 24.56l107.44-18.84 112.94-112.96L368.14 502.7a31.621 31.621 0 0 0 22.42 9.29c8.12 0 16.24-3.1 22.43-9.29l89.72-89.7c12.39-12.39 12.39-32.47 0-44.86zM407.36 36.7c4.09-4.09 18.6-4.09 22.69 0l45.25 45.24c6.25 6.25 6.25 16.42 0 22.67l-46.03 46.03-67.94-67.94 46.03-46zM31.93 121.63l89.51-89.52L177.39 88l-39.03 39.03c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0l39.04-39.04 44.1 44.05-89.5 89.49L31.93 121.63zm84.96 341.43L34.5 477.51l14.37-82.37 289.83-289.8 67.94 67.94-289.75 289.78zm273.88 17.02l-122.86-122.8 89.47-89.48 44.12 44.07-39.15 39.16c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0l39.17-39.17 55.94 55.88-89.31 89.72z\"]\n};\nvar faPennant = {\n prefix: 'fal',\n iconName: 'pennant',\n icon: [576, 512, [], \"f456\", \"M552 191.3c-30 6.2-115.6 12.5-260.7-63.6-87-45.7-158.1-51.8-210-45.2 9-8.8 14.7-21 14.7-34.5C96 21.5 74.5 0 48 0S0 21.5 0 48c0 20.8 13.4 38.4 32 45.1V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-79.6c40.2-27.2 102-56.4 179.5-60.2 28.7-1.4 76-5.8 137.9-18.8 4.4-.9 109.4-23.8 190-121.7 11.8-14.3-.7-36.2-19.4-32.4zM48 32c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16zm326.9 282.1c-59.9 12.5-105.4 16.8-133 18.2-84.8 4.2-145.3 35.1-177.9 54.2V117.7c47.2-10.6 119.5-10.5 212.4 38.3 118.9 62.4 202.3 72.4 249.5 70.4-69.5 69.7-150.1 87.5-151 87.7z\"]\n};\nvar faPeopleArrows = {\n prefix: 'fal',\n iconName: 'people-arrows',\n icon: [576, 512, [], \"e068\", \"M480,128a64,64,0,1,0-64-64A64,64,0,0,0,480,128Zm0-96a32,32,0,1,1-32,32A32,32,0,0,1,480,32Zm32,128H448a63.55,63.55,0,0,0-50.15,24.51,62.7,62.7,0,0,1,32.67,13.41c5.1-3.44,10.88-5.92,17.48-5.92h64a32,32,0,0,1,32,32V352H512V480H448V393.8l-12,11.81a65.12,65.12,0,0,1-20,13.44V480a32,32,0,0,0,32,32h64a32,32,0,0,0,32-32V384a32,32,0,0,0,32-32V224A64,64,0,0,0,512,160ZM128,393.81V480H64V352H32V224a32,32,0,0,1,32-32h64c6.6,0,12.39,2.49,17.49,5.92a62.6,62.6,0,0,1,32.71-13.34A63.57,63.57,0,0,0,128,160H64A64,64,0,0,0,0,224V352a32,32,0,0,0,32,32v96a32,32,0,0,0,32,32h64a32,32,0,0,0,32-32V419.07a65.42,65.42,0,0,1-20-13.46ZM96,128A64,64,0,1,0,32,64,64,64,0,0,0,96,128Zm0-96A32,32,0,1,1,64,64,32,32,0,0,1,96,32ZM472.89,304a32,32,0,0,0-9.55-22.8l-56.89-56C385.64,204.71,352,220.52,352,248v40H224V248c0-27.41-33.82-43.11-54.45-22.8l-56.89,56a32,32,0,0,0,0,45.6l56.89,56c21.3,21,54.45,4,54.45-22.8V320H352v40c0,27,33.36,43.57,54.45,22.8l56.89-56A32,32,0,0,0,472.89,304ZM192,360l-56.89-56L192,248Zm192,0V248l56.89,56Z\"]\n};\nvar faPeopleCarry = {\n prefix: 'fal',\n iconName: 'people-carry',\n icon: [640, 512, [], \"f4ce\", \"M635.9 444.4l-52.2-117.3c19.4-22 25-48.2 19.4-72.4l-18.4-80.2c-5-21.7-19.3-40-38.4-51.1 24.5-24 28.4-60.4 11.4-88.6C542.8 10.2 517.7 0 496 0c-33.2 0-61.9 22.5-69.9 54.8-3.5 14.1-6.2 52.1 29.3 76.4-17.3 13.2-30.8 30.5-39.4 50.5V160c0-8.8-7.2-16-16-16H240c-8.8 0-16 7.2-16 16v21.8c-8.5-20-22-37.3-39.4-50.5 35.4-24.3 32.8-62.2 29.3-76.4C206 22.5 177.2 0 144 0c-21.8 0-46.8 10.3-61.6 34.7-17 28.1-13.2 64.5 11.4 88.6-19.1 11.2-33.4 29.4-38.4 51.1L37 254.6c-5.5 24.1-.2 50.3 19.4 72.4L4.1 444.4c-10.7 24.1.2 52.6 24.3 63.3 29 12.8 54.9-5.2 63.4-24.3l29.7-66.7 6.9 53.3c1.1 8.6 13 46.1 53.3 41.5 26.7-3.5 45.3-27.6 42-53.8l-10.5-81.5c-1.6-12.7-7-24.6-15.5-34.2l-41.2-46.6 4.2-16.9c4.6 6 10.2 11.4 16.7 16.1 1.7 1.2-2.7-1.6 47.7 30.4 2.2 6.2 8 10.8 14.9 10.8h160c7 0 12.8-4.5 14.9-10.8 50.4-32.1 46.1-29.2 47.7-30.4 6.5-4.8 12.1-10.2 16.7-16.1l4.2 16.9-41.1 46.6c-8.5 9.6-13.9 21.5-15.5 34.2l-10.5 81.5c-3.4 26.2 15.2 50.3 42 53.8 40.5 4.6 52.1-32.7 53.3-41.5l6.9-53.3 29.7 66.7c8.5 19.1 34.4 37.1 63.4 24.3 24-10.8 34.9-39.2 24.2-63.3zm-178.7-382C461.6 44.2 478 32 496 32c24.4 0 45.4 22.8 38.9 49.5C530.3 99.8 514 112 496 112c-24.4 0-45.4-22.9-38.8-49.6zM144 32c18 0 34.3 12.2 38.8 30.4C189.5 89.6 168 112 144 112c-18 0-34.3-12.2-38.8-30.4C98.5 54.4 120 32 144 32zM62.6 470.4c-3.6 8.1-13 11.7-21.1 8.1s-11.7-13-8.1-21.1l46.2-103.9 23.3 26.4zm207.1-173.9c-5 7.8-15 9.4-22.1 4.9l-51.1-32.5c-9.1-6.6-15-14.7-18.1-24.1L167.1 211c-2.3-6.9-6-12.8-9.3-17.2-2.7-3.6-8.3-2.4-9.4 1.9L121.3 304l52.4 59.3c4.2 4.8 6.9 10.8 7.8 17.1l10.5 81.5c1.1 8.6-4.9 16.8-13.5 17.9-14.1 1.8-17.9-11-18.2-13.8l-9.2-71.8c-.8-6.3-3.5-12.3-7.8-17.1l-64.2-72.7c-10.3-11.6-14.3-27.5-10.8-42.6l18.4-80.2c3.5-15 14-27.7 28.2-33.8 23-9.9 41.1 2.1 41.7 2.4 19.4 11.4 33.9 29.4 41 50.7l11.7 34.9c1.8 2.3 3.5 4.5 5.3 6.8l50.2 31.8c7.4 4.7 9.7 14.6 4.9 22.1zm69.2 7.4h-37.7c7.3-20.6-.2-44.2-19.3-56.5L256 231.1V176h128v55l-25.8 16.4c-19.2 12.2-26.6 35.9-19.3 56.5zm158 73.1c-4.2 4.8-6.9 10.7-7.8 17.1l-9.2 71.8c-.4 2.8-4.2 15.6-18.2 13.8-8.6-1.1-14.6-9.2-13.5-17.9l10.5-81.5c.8-6.3 3.5-12.3 7.8-17.1l52.4-59.3-27.1-108.2c-1.1-4.4-6.7-5.5-9.4-1.9-3.3 4.4-7 10.3-9.3 17.2l-11.3 33.8c-3.1 9.4-9 17.5-17.9 24.1l-51.1 32.5c-7 4.4-17.1 3-22.1-4.9-4.7-7.5-2.5-17.3 4.9-22.1l50.2-31.8c1.8-2.3 3.5-4.5 5.3-6.8l11.7-34.9c7.1-21.3 21.6-39.3 41-50.7.5-.3 18.7-12.3 41.7-2.4 14.2 6.1 24.8 18.8 28.2 33.8l18.4 80.2c3.5 15.1-.6 30.9-10.8 42.6zm101.6 101.5c-8.1 3.6-17.5 0-21.1-8.1l-40.3-90.6 23.3-26.4 46.2 103.9c3.6 8.1 0 17.6-8.1 21.2z\"]\n};\nvar faPepperHot = {\n prefix: 'fal',\n iconName: 'pepper-hot',\n icon: [512, 512, [], \"f816\", \"M452.4 135.6c43.74-64.2 25.25-112.11 13.43-131.86A7.69 7.69 0 0 0 459.19 0a7.86 7.86 0 0 0-5.57 2.32l-12 12a7.92 7.92 0 0 0-1.27 9.35c8.24 15.58 16.74 47.65-13.81 93C402.26 102 378.48 96 348.34 96c-29.43 0-58.78 8.66-84.87 25-12.06 7.59-9.55 23.21 1.47 27.93-22.94 24.82-35.7 58.31-48 93.47-10.74 30.6-21.71 61.62-40.23 88.54-25.17 36.56-68.77 52.64-113.16 53-41.41.33-59.58 35.09-62.58 52.88A64.06 64.06 0 0 0 64 512c185 0 341.43-87.14 416.23-195.48a15.1 15.1 0 0 0 10.82 4.62c6.23 0 12.54-4 14.89-13.11C510.06 292 512 278.2 512 264.72a169.7 169.7 0 0 0-59.6-129.12zM348.34 128C443 128 480 218.68 480 264.72c0 1.73 0 3.47-.13 5.24L452 241a32 32 0 0 0-23.07-9.82H368v-51.73A32 32 0 0 0 348.61 150L311 133.92a122.85 122.85 0 0 1 37.34-5.92zM64 480c-14 0-35.77-12.48-31.51-37.82.71-4.17 7.72-26 31.28-26.19 59.59-.47 110.35-24.83 139.27-66.85 21.13-30.69 33.31-65.43 44.06-96.09 24.07-68.62 36.32-76.9 48.46-90l40.44 16.4v51.71a32 32 0 0 0 32 32h60.94s14.62 15.9 28.24 30.41C370.7 418.86 211.88 480 64 480z\"]\n};\nvar faPercent = {\n prefix: 'fal',\n iconName: 'percent',\n icon: [384, 512, [], \"f295\", \"M96 224c53 0 96-43 96-96s-43-96-96-96S0 75 0 128s43 96 96 96zm0-156c33.1 0 60 26.9 60 60s-26.9 60-60 60-60-26.9-60-60 26.9-60 60-60zm192 220c-53 0-96 43-96 96s43 96 96 96 96-43 96-96-43-96-96-96zm0 156c-33.1 0-60-26.9-60-60s26.9-60 60-60 60 26.9 60 60-26.9 60-60 60zm59.8-412H378c5 0 7.8 5.7 4.8 9.6L41 477.6c-1.1 1.5-2.9 2.4-4.8 2.4H6c-5 0-7.8-5.7-4.8-9.6L343 34.4c1.1-1.5 2.9-2.4 4.8-2.4z\"]\n};\nvar faPercentage = {\n prefix: 'fal',\n iconName: 'percentage',\n icon: [320, 512, [], \"f541\", \"M317.66 132.28c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L296.5 153.44l21.16-21.16zM64 224c16.38 0 32.76-6.25 45.25-18.74 24.99-24.99 24.99-65.52 0-90.51C96.76 102.25 80.38 96 64 96s-32.76 6.25-45.26 18.75c-24.99 24.99-24.99 65.52 0 90.51C31.24 217.75 47.62 224 64 224zm-22.62-86.63C47.42 131.33 55.45 128 64 128s16.58 3.33 22.63 9.37c12.48 12.48 12.47 32.78 0 45.25C80.59 188.67 72.55 192 64 192c-8.55 0-16.58-3.33-22.62-9.37-12.48-12.48-12.48-32.78 0-45.26zM256 288c-16.38 0-32.76 6.25-45.26 18.75-24.99 24.99-24.99 65.52 0 90.51C223.24 409.75 239.62 416 256 416s32.76-6.25 45.25-18.74c24.99-24.99 24.99-65.52 0-90.51C288.76 294.25 272.38 288 256 288zm22.63 86.63c-6.04 6.04-14.08 9.37-22.63 9.37-8.55 0-16.58-3.33-22.62-9.37-12.48-12.48-12.48-32.78 0-45.26 6.04-6.04 14.08-9.37 22.62-9.37 8.55 0 16.58 3.33 22.63 9.37 12.48 12.48 12.47 32.78 0 45.26z\"]\n};\nvar faPersonBooth = {\n prefix: 'fal',\n iconName: 'person-booth',\n icon: [576, 512, [], \"f756\", \"M224.1 504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V320h-32v184zM544 0H256.1c-17.7 0-32 14.3-32 32v128h32V32l79.2 205.1c-5.4 21.2-23.5 93.2-23.5 117.1 0 34.1 27.7 61.8 61.7 61.8 12.3 0 24-3.9 34-10.6 9.2 6.6 20.4 10.6 32.5 10.6 15.7 0 29.8-6.5 40-16.9 10.2 10.4 24.3 16.9 40 16.9 8.6 0 16.7-2.1 24-5.6V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V32c0-17.7-14.3-32-32-32zM373.5 384c-16.4 0-29.7-13.4-29.7-29.8 0-16.9 14.6-78.9 23.8-114 .8-3.2.7-6.7-.5-9.8L290.9 32h93.2v328c0 7 1.4 13.6 3.8 19.7-4.5 2.6-9.2 4.3-14.4 4.3zm90.5-24c0 13.3-10.7 24-24 24s-24-10.7-24-24V32h48v328zm80 0c0 13.3-10.7 24-24 24-13.2 0-24-10.7-24-24V32h48v328zM240.1 192h-44.3l-40.5-40.6c-8.5-8.5-18.6-14.6-29.6-18.5 20.4-12.7 34.1-35.2 34.1-60.9 0-39.7-32.3-72-72-72s-72 32.3-72 72c0 26.2 14.2 49 35.2 61.6-10.2 4-19.6 9.9-27.6 17.9C8.3 166.6 0 186.8.1 208.2L.2 304 0 463.9c0 26.5 21.5 48 47.9 48.1 25.5 0 46.4-19.9 48-45 1.6 25.1 22.4 45 47.9 45 26.5 0 48-21.5 48-48v-56.5c0-36.8-13.5-43.2-48-76.9v-55.8c11.1 8.4 24.8 13.1 38.8 13.1h57.6c26.5 0 48-21.5 48-48S266.6 192 240.1 192zM47.8 72c0-22.1 17.9-40 40-40s40 17.9 40 40-17.9 40-40 40-40-17.9-40-40zm192.3 184h-57.6c-8.4 0-16.6-3.4-22.6-9.4l-48.2-48.2v145.7c42.1 41.2 48 42.1 48 63.4V464c0 8.8-7.2 16-16 16s-16-7.2-16-16c0-78.2 15.5-45.8-63.6-121.9L64 464c0 8.8-7.2 16-16 16s-16-7.2-16-16l.2-160-.2-95.9c0-26.2 21.2-48.1 48-48.1h18.7c12.8 0 24.9 5 33.9 14.1l49.9 49.9h57.6c8.8 0 16 7.2 16 16s-7.1 16-16 16z\"]\n};\nvar faPersonCarry = {\n prefix: 'fal',\n iconName: 'person-carry',\n icon: [384, 512, [], \"f4cf\", \"M368 96H208c-8.8 0-16 7.2-16 16v76.1l-52.7-52.7c-2.4-2.4-5.1-4.2-7.7-6.3 28.1-21.5 31.4-53.5 26.3-74.4C150 22.5 121.2 0 88 0 41.7 0 6.8 43.5 18.1 89.2c3.4 13.8 10.7 25.6 20.4 34.8C15.6 138.1 0 163.4 0 192v272c0 26.5 21.5 48 48 48s48-21.5 48-48v-66l3.6 3.1 13.1 71.5c4.4 23.8 27.8 43.8 56 38.5 25.7-4.7 43.3-29.5 38.4-55.8L193 378.7c-3.4-18.3-13-35.1-27.2-47.1L128 299.1v-39.2l28.1 28.1H368c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16zM88 32c18 0 34.3 12.2 38.8 30.5C133.5 89.6 112 112 88 112c-18 0-34.3-12.2-38.8-30.5C42.5 54.4 64 32 88 32zM64 464c0 8.8-7.2 16-16 16s-16-7.2-16-16V343.2l32 27.4V464zm105.4-208l-59.7-59.7c-1.6-1.6-3.6-2.4-5.6-2.4-4.1 0-8.1 3.2-8.1 8v111.9l49.2 42.1c8.6 7.3 14.4 17.5 16.5 28.6l14.1 76.6c1.6 8.7-4.2 17-12.8 18.6-1 .2-2 .3-2.9.3-7.6 0-14.3-5.4-15.7-13.1l-14.1-76.5c-.7-3.9-2.8-7.5-5.8-10.1l-75.6-64.7C38.1 306.3 32 293.1 32 279v-87c0-25.6 20.3-47.2 45.9-48H80c15.4 0 27.8 5.1 36.7 14.1l65.9 65.9H224c8.8 0 16 7.2 16 16s-7.2 16-16 16h-54.6zm182.6 0h-82.9c1.8-5 2.9-10.4 2.9-16 0-26.5-21.5-48-48-48v-64h128v128z\"]\n};\nvar faPersonDolly = {\n prefix: 'fal',\n iconName: 'person-dolly',\n icon: [512, 512, [], \"f4d0\", \"M507.6 391.8c-1.1-4.3-5.5-6.8-9.8-5.7l-20.3 5.4-40.7-151.8c-4.6-17.1-22.1-27.2-39.2-22.6l-127.1 34c.9-3.6 1.5-7.3 1.5-11.2 0-23.6-17.2-43.2-39.7-47.2L208 101.9c-1.1-4.3-5.5-6.8-9.8-5.7l-15.5 4.1c-4.3 1.1-6.8 5.5-5.7 9.8l21.8 81.8h-3l-56.6-56.6c-2.4-2.4-5.1-4.2-7.7-6.3 7.1-5.4 13.2-12 18-19.9 10-16.4 12.9-35.8 8.3-54.5C150 22.5 121.2 0 88 0 66.3 0 41.2 10.3 26.4 34.7c-10 16.4-12.9 35.8-8.3 54.5 3.4 13.8 10.7 25.6 20.4 34.8C15.6 138.1 0 163.4 0 192v272c0 26.5 21.5 48 48 48s48-21.5 48-48v-66l3.6 3.1 13.1 71.5c4.4 23.8 27.8 43.8 56 38.5 12.5-2.3 23.4-9.4 30.7-19.9 7.3-10.6 10-23.3 7.7-35.9L193 378.7c-3.4-18.3-13-35.1-27.2-47.1L128 299.1v-39.2l28.1 28.1H224c.2 0 .4-.1.6-.1l28.5 106.5C235.6 405.8 224 425.5 224 448c0 35.3 28.7 64 64 64 31.7 0 57.8-23.1 62.9-53.4L506.1 417c4.3-1.1 6.8-5.5 5.7-9.8l-4.2-15.4zM88 32c18 0 34.3 12.2 38.8 30.5C133.5 89.6 112 112 88 112c-18 0-34.3-12.2-38.8-30.5C42.5 54.4 64 32 88 32zM64 464c0 8.8-7.2 16-16 16s-16-7.2-16-16V343.2l32 27.4V464zm105.4-208l-59.7-59.7c-1.6-1.6-3.6-2.4-5.6-2.4-4.1 0-8.1 3.2-8.1 8v111.9l49.2 42.1c8.6 7.3 14.4 17.5 16.5 28.6l14.1 76.6c1.6 8.7-4.2 17-12.8 18.6-1 .2-2 .3-2.9.3-7.6 0-14.3-5.4-15.7-13.1l-14.1-76.5c-.7-3.9-2.8-7.5-5.8-10.1l-75.6-64.7C38.1 306.3 32 293.1 32 279v-87c0-25.6 20.3-47.2 45.9-48H80c15.4 0 27.8 5.1 36.7 14.1l65.9 65.9H224c8.8 0 16 7.2 16 16s-7.2 16-16 16h-54.6zM288 480c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm60-53.8c-8.9-24.6-32.3-42.3-60-42.3-1.5 0-2.9.3-4.4.4l-25.9-96.6L405.9 248l40.7 151.8-98.6 26.4z\"]\n};\nvar faPersonDollyEmpty = {\n prefix: 'fal',\n iconName: 'person-dolly-empty',\n icon: [512, 512, [], \"f4d1\", \"M507.6 391.8c-1.1-4.3-5.5-6.8-9.8-5.7L348 426.2c-8.9-24.6-32.3-42.3-60-42.3-1.5 0-2.9.3-4.4.4l-28.9-107.8c10.5-8.8 17.3-21.9 17.3-36.6 0-23.6-17.2-43.2-39.7-47.2l-25.1-90.9c-1.1-4.3-5.5-6.8-9.8-5.7l-15.5 4.1c-4.3 1.1-6.8 5.5-5.7 9.8l22.6 81.8h-3l-56.6-56.6c-2.4-2.4-5.1-4.2-7.7-6.3 7.1-5.4 13.2-12 18-19.9 10-16.4 12.9-35.8 8.3-54.5C150 22.5 121.2 0 88 0 66.3 0 41.2 10.3 26.4 34.7c-10 16.4-12.9 35.8-8.3 54.5 3.4 13.8 10.7 25.6 20.4 34.8C15.6 138.1 0 163.4 0 192v272c0 26.5 21.5 48 48 48s48-21.5 48-48v-66l3.6 3.1 13.1 71.5c4.4 23.8 27.8 43.8 56 38.5 12.5-2.3 23.4-9.4 30.7-19.9 7.3-10.6 10-23.3 7.7-35.9L193 378.7c-3.4-18.3-13-35.1-27.2-47.1L128 299.1v-39.2l28.1 28.1H224c.2 0 .4-.1.6-.1l28.5 106.5C235.6 405.8 224 425.5 224 448c0 35.3 28.7 64 64 64 31.7 0 57.8-23.1 62.9-53.4L506.1 417c4.3-1.1 6.8-5.5 5.7-9.8l-4.2-15.4zM88 32c18 0 34.3 12.2 38.8 30.5C133.5 89.6 112 112 88 112c-18 0-34.3-12.2-38.8-30.5C42.5 54.4 64 32 88 32zM64 464c0 8.8-7.2 16-16 16s-16-7.2-16-16V343.2l32 27.4V464zm105.4-208l-59.7-59.7c-1.6-1.6-3.6-2.4-5.6-2.4-4.1 0-8.1 3.2-8.1 8v111.9l49.2 42.1c8.6 7.3 14.4 17.5 16.5 28.6l14.1 76.6c1.6 8.7-4.2 17-12.8 18.6-1 .2-2 .3-2.9.3-7.6 0-14.3-5.4-15.7-13.1l-14.1-76.5c-.7-3.9-2.8-7.5-5.8-10.1l-75.6-64.7C38.1 306.3 32 293.1 32 279v-87c0-25.6 20.3-47.2 45.9-48H80c15.4 0 27.8 5.1 36.7 14.1l65.9 65.9H224c8.8 0 16 7.2 16 16s-7.2 16-16 16h-54.6zM288 480c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32z\"]\n};\nvar faPersonSign = {\n prefix: 'fal',\n iconName: 'person-sign',\n icon: [512, 512, [], \"f757\", \"M501.5 66.6l-71.7-26.1 9.5-23.2c1.7-4.1-.2-8.8-4.3-10.5L420.2.6c-4.1-1.7-8.8.2-10.5 4.3l-10 24.7L321.1 1c-8.9-3.2-18 2.7-20.5 9.6L264.1 111c-3 8.3 1.2 17.5 9.6 20.5l73.6 26.8-22.5 55.4c-3.7-1.8-7.3-3.9-11.5-4.8L253.6 197l-10.1-16.1c-11.9-19-28.8-33.5-48.4-42.5 12.8-13 20.7-30.8 20.7-50.4 0-39.7-32.3-72-72-72S72 48.3 72 88c0 20.8 9 39.4 23.1 52.6-22.8 11.3-41.9 29.7-53.8 53.5L5 266.5c-11.8 23.7-2.2 52.6 21.5 64.4.7.3 26.5 14.1 51-5L49.1 453.6c-5.7 25.8 10.6 51.5 36.4 57.3 3.6.8 7 1.1 10.4 1.1 22.3 0 42-15.8 46.8-37.6l17.2-77.5 15.9 19.9V464c0 26.5 21.5 48 48 48s48-21.5 48-48v-52.8c0-18.1-6.2-35.8-17.5-50l-46.5-58.1v-20.3c6.3 3.2 13.1 5.5 20.1 6.9l60.8 12.2-.3.8c-1.7 4.1.2 8.8 4.3 10.5l14.8 6.2c4.1 1.7 8.8-.2 10.5-4.3l6.7-16.6c13-6.4 23.1-18.1 26.2-33.1 1.8-8.8.9-17.8-2.1-26l28.6-70.2 76.6 27.9c8.9 3.3 18-2.8 20.5-9.6L511 87.1c3.1-8.3-1.2-17.4-9.5-20.5zM143.9 48c22.1 0 40 17.9 40 40s-17.9 40-40 40-40-17.9-40-40 17.9-40 40-40zm157.2 223.7h-.4l-66.4-13.3c-12.9-2.6-24.3-10.5-31.3-21.6-14.6-23.3-16.3-28-27.1-35.6v113.2l53.5 66.9c6.8 8.5 10.5 19.1 10.5 30V464c0 8.8-7.2 16-16 16s-16-7.2-16-16v-52.8c0-3.6-1.2-7.2-3.5-10L152.2 336h-11.5l-29.2 131.5c-1.7 7.7-9.6 14.2-19.1 12.2-8.6-1.9-14.1-10.5-12.2-19.1l31.6-142.3V206c-5.3 4.7-10.1 10-13.4 16.7l-36.2 72.5c-3.1 6.2-12.1 11.9-21.5 7.2-7.9-4-11.1-13.6-7.2-21.5l36.2-72.5c14.9-29.8 44.9-48.4 78.2-48.4 28 0 53.5 14.2 68.3 37.9l13.7 21.9c2.3 3.7 6.1 6.3 10.4 7.2l66.4 13.3c2.2.4 4.2 1.3 5.9 2.5l-11.5 28.9zm148.8-110.1l-150.3-54.7 25.6-70.4 150.3 54.7-25.6 70.4z\"]\n};\nvar faPhone = {\n prefix: 'fal',\n iconName: 'phone',\n icon: [512, 512, [], \"f095\", \"M487.8 24.1L387 .8c-14.7-3.4-29.8 4.2-35.8 18.1l-46.5 108.5c-5.5 12.7-1.8 27.7 8.9 36.5l53.9 44.1c-34 69.2-90.3 125.6-159.6 159.6l-44.1-53.9c-8.8-10.7-23.8-14.4-36.5-8.9L18.9 351.3C5 357.3-2.6 372.3.8 387L24 487.7C27.3 502 39.9 512 54.5 512 306.7 512 512 307.8 512 54.5c0-14.6-10-27.2-24.2-30.4zM55.1 480l-23-99.6 107.4-46 59.5 72.8c103.6-48.6 159.7-104.9 208.1-208.1l-72.8-59.5 46-107.4 99.6 23C479.7 289.7 289.6 479.7 55.1 480z\"]\n};\nvar faPhoneAlt = {\n prefix: 'fal',\n iconName: 'phone-alt',\n icon: [512, 512, [], \"f879\", \"M493.09 351.3L384.7 304.8a31.36 31.36 0 0 0-36.5 8.9l-44.1 53.9A350 350 0 0 1 144.5 208l53.9-44.1a31.35 31.35 0 0 0 8.9-36.49l-46.5-108.5A31.33 31.33 0 0 0 125 .81L24.2 24.11A31.05 31.05 0 0 0 0 54.51C0 307.8 205.3 512 457.49 512A31.23 31.23 0 0 0 488 487.7L511.19 387a31.21 31.21 0 0 0-18.1-35.7zM456.89 480C222.4 479.7 32.3 289.7 32.1 55.21l99.6-23 46 107.39-72.8 59.5C153.3 302.3 209.4 358.6 313 407.2l59.5-72.8 107.39 46z\"]\n};\nvar faPhoneLaptop = {\n prefix: 'fal',\n iconName: 'phone-laptop',\n icon: [640, 512, [], \"f87a\", \"M608 128H416a32 32 0 0 0-32 32v320a32 32 0 0 0 32 32h192a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32zm0 352H416V160h192zM96 32h384v64h32V32a32 32 0 0 0-32-32H96a32 32 0 0 0-32 32v256H16a16 16 0 0 0-16 16v16a64.14 64.14 0 0 0 63.91 64H352v-32H63.91A32 32 0 0 1 32 320h320v-32H96z\"]\n};\nvar faPhoneOffice = {\n prefix: 'fal',\n iconName: 'phone-office',\n icon: [576, 512, [], \"f67d\", \"M352 320h-32c-17.66 0-32 14.36-32 32v32c0 17.64 14.34 32 32 32h32c17.66 0 32-14.36 32-32v-32c0-17.64-14.34-32-32-32zm0 64h-32v-32h32v32zm0-192h-32c-17.66 0-32 14.36-32 32v32c0 17.64 14.34 32 32 32h32c17.66 0 32-14.36 32-32v-32c0-17.64-14.34-32-32-32zm0 64h-32v-32h32v32zm128 64h-32c-17.66 0-32 14.36-32 32v32c0 17.64 14.34 32 32 32h32c17.66 0 32-14.36 32-32v-32c0-17.64-14.34-32-32-32zm0 64h-32v-32h32v32zm0-192h-32c-17.66 0-32 14.36-32 32v32c0 17.64 14.34 32 32 32h32c17.66 0 32-14.36 32-32v-32c0-17.64-14.34-32-32-32zm0 64h-32v-32h32v32zm32-224H237.06C230.45 13.4 212.87 0 192 0h-64c-20.87 0-38.45 13.4-45.06 32H64C28.65 32 0 60.65 0 96v352c0 35.35 28.65 64 64 64h448c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM320 64h160v64H320V64zM112 48c0-8.82 7.18-16 16-16h64c8.82 0 16 7.18 16 16v336c0 8.82-7.18 16-16 16h-64c-8.82 0-16-7.18-16-16V48zm432 400c0 17.64-14.36 32-32 32H64c-17.64 0-32-14.36-32-32V96c0-17.64 14.36-32 32-32h16v320c0 26.51 21.49 48 48 48h64c26.51 0 48-21.49 48-48V64h48v64c0 17.64 14.34 32 32 32h160c17.66 0 32-14.36 32-32V64c17.64 0 32 14.36 32 32v352z\"]\n};\nvar faPhonePlus = {\n prefix: 'fal',\n iconName: 'phone-plus',\n icon: [512, 512, [], \"f4d2\", \"M8 128h88v88c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-88h88c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-88V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v88H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zM487.8 24.1L387 .8c-14.7-3.4-29.8 4.2-35.8 18.1l-46.5 108.5c-5.5 12.7-1.8 27.7 8.9 36.5l53.9 44.1c-34 69.2-90.3 125.6-159.6 159.6l-44.1-53.9c-8.8-10.7-23.8-14.4-36.5-8.9L18.9 351.3c-13.9 6-21.5 21-18.1 35.8L24 487.9C27.3 502 39.9 512 54.5 512 306.7 512 512 307.8 512 54.5c0-14.6-10-27.2-24.2-30.4zM55.1 480l-23-99.6 107.4-46 59.5 72.8c103.6-48.6 159.7-104.9 208.1-208.1l-72.8-59.5 46-107.4 99.6 23C479.7 289.7 289.6 479.7 55.1 480z\"]\n};\nvar faPhoneRotary = {\n prefix: 'fal',\n iconName: 'phone-rotary',\n icon: [512, 512, [], \"f8d3\", \"M256 240a80 80 0 1 0 80 80 80 80 0 0 0-80-80zm0 128a48 48 0 1 1 48-48 48.05 48.05 0 0 1-48 48zm114.43-175.75A64 64 0 0 0 314.86 160H197.14a64 64 0 0 0-55.57 32.25L36.21 376.62A32 32 0 0 0 32 392.5V448a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32v-55.5a32 32 0 0 0-4.21-15.88zM448 448H64v-55.5l105.36-184.38A32.07 32.07 0 0 1 197.14 192h117.72a32.07 32.07 0 0 1 27.78 16.12L448 392.5zm52.27-329.8C431.72 63.21 344.81 32 256 32S80.28 63.21 11.73 118.2A32.17 32.17 0 0 0 0 143.29V208a16 16 0 0 0 16 16h70.11a16 16 0 0 0 14.31-8.85L128 152c39.9-17.28 83.23-24 128-24 44.77 0 88.08 6.72 128 24l27.58 63.15a16 16 0 0 0 14.31 8.85H496a16 16 0 0 0 16-16v-64.71a32.17 32.17 0 0 0-11.73-25.09zM480 192h-43.61l-23.07-52.81-5-11.55-11.57-5C355.33 104.71 309.3 96 256 96s-99.32 8.71-140.71 26.63l-11.57 5-5 11.55L75.61 192H31.94l-.18-48.84A359.7 359.7 0 0 1 256 64a357.89 357.89 0 0 1 224 79.29z\"]\n};\nvar faPhoneSlash = {\n prefix: 'fal',\n iconName: 'phone-slash',\n icon: [640, 512, [], \"f3dd\", \"M637 485.2L462.6 347.9l-21.2-16.7-35.4-27.8-17.4-13.7L23 1.8C19.6-1 14.5-.4 11.8 3l-10 12.5C-1 19-.4 24 3 26.8l355.7 280.1 10.9 8.6 69 54.3 6.4 5 172 135.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.6 2.2-8.6-1.2-11.4zM431.6 208c-8.8 17.8-19 34.7-30.6 50.7l24.6 19.4c16.4-23.1 31.4-48.9 45.6-79l-72.8-59.5 46-107.4 99.6 23c-.1 94-31.1 180.6-82.8 251l25.1 19.8C542.4 249.9 576 156.4 576 54.5c0-14.6-10-27.2-24.2-30.4L451 .8c-14.7-3.4-29.8 4.2-35.8 18.1l-46.5 108.5c-5.5 12.7-1.8 27.7 8.9 36.5l54 44.1zM119.1 480l-23-99.6 107.4-46 59.5 72.8c38.1-17.9 69.6-36.8 96.8-58.7L334 328.1c-19.2 15.1-39.9 28.5-62 39.4l-44.1-53.9c-8.8-10.7-23.8-14.4-36.5-8.9L82.9 351.3c-13.9 6-21.5 21-18.1 35.7L88 487.7c3.3 14.3 15.8 24.2 30.4 24.2 116.1 0 222-43.7 302.8-115.1l-25.5-20C321.5 440.9 224.9 479.9 119.1 480z\"]\n};\nvar faPhoneSquare = {\n prefix: 'fal',\n iconName: 'phone-square',\n icon: [448, 512, [], \"f098\", \"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-48zm16 400c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h352c8.822 0 16 7.178 16 16v352zm-54.867-321.745l-58.499-13.493a29.473 29.473 0 0 0-33.748 17.123l-27.001 62.995c-5.146 12.012-1.678 26.179 8.435 34.451l24.129 19.742a192.006 192.006 0 0 1-75.376 75.375l-19.74-24.127c-8.273-10.115-22.44-13.582-34.453-8.435l-62.992 26.998c-13.138 5.63-20.34 19.824-17.125 33.748l13.494 58.501C81.363 406.597 93.184 416 107 416c153.033 0 277-123.819 277-277 0-13.818-9.403-25.639-22.867-28.745zM108.987 383.992l-12.579-54.518 59.348-25.435 34.601 42.288c61.893-29.035 94.185-60.484 123.973-123.971l-42.29-34.602 25.436-59.348 54.518 12.579c-1.057 133.704-109.058 241.949-243.007 243.007z\"]\n};\nvar faPhoneSquareAlt = {\n prefix: 'fal',\n iconName: 'phone-square-alt',\n icon: [448, 512, [], \"f87b\", \"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-48zm16 400a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V80a16 16 0 0 1 16-16h352a16 16 0 0 1 16 16zm-49.89-131.12l-63-27a29.63 29.63 0 0 0-34.45 8.43l-19.74 24.13c-26.82-14.79-60.59-48.56-75.38-75.38l24.13-19.74a29.65 29.65 0 0 0 8.44-34.45l-27-63C174.89 104 162.75 96 152 96a35.39 35.39 0 0 0-6.65.76l-58.5 13.49A29.37 29.37 0 0 0 64 139c0 153.18 124 277 277 277a29.35 29.35 0 0 0 28.74-22.87l13.5-58.5a29.49 29.49 0 0 0-17.13-33.75zM339 384C205.06 382.93 97.06 274.69 96 141l54.51-12.58L176 187.75l-42.29 34.61c29.79 63.48 62.08 94.93 124 124L292.24 304l59.35 25.43z\"]\n};\nvar faPhoneVolume = {\n prefix: 'fal',\n iconName: 'phone-volume',\n icon: [448, 512, [], \"f2a0\", \"M154.9 187.8c14.7 1.5 28.7-7 34.2-20.7l32.5-81c6-14.9.4-31.9-13.3-40.5l-65-40.5c-13.2-8.2-30.1-6.3-41.1 4.7C-34.3 146-34 366.4 102.2 502.3c11 11 27.9 12.9 41.1 4.7l65-40.5C222 458 227.5 441 221.6 426l-32.5-81c-5.5-13.6-19.5-22.1-34.2-20.7l-43.2 4.3c-14.5-47.2-14.5-97.9 0-145.1zM89.8 362.9l68.4-6.8c.5-.1 1 .2 1.2.7l32.5 81c.2.5 0 1.1-.5 1.4l-65 40.5c-.5.3-1.1.2-1.5-.2C1 356 1.1 155.9 124.9 32.4c.4-.4 1-.5 1.5-.2l65 40.5c.5.3.7.9.5 1.4l-32.5 81c-.2.5-.7.8-1.2.7L89.8 149c-28.7 79.1-27.6 137.9 0 213.9zm202.4-270l-6 5.7c-3.9 3.7-4.8 9.6-2.3 14.4 4.9 9.4 4.9 20.6 0 29.9-2.5 4.8-1.6 10.7 2.3 14.4l6 5.7c5.6 5.4 14.8 4.1 18.7-2.6 11.8-20 11.8-45 0-65.1-3.9-6.5-13-7.8-18.7-2.4zM357 49.2c-4.4-5.6-12.7-6.3-17.9-1.3l-5.8 5.6c-4.4 4.2-5 11.1-1.3 15.9 26.5 34.6 26.5 82.6 0 117.1-3.7 4.8-3.1 11.7 1.3 15.9l5.8 5.6c5.2 4.9 13.5 4.3 17.9-1.3 36.1-46.2 36.1-111.1 0-157.5zm45.9-44.9c-4.5-5.3-12.5-5.7-17.6-.9L379.5 9c-4.6 4.4-5 11.5-.9 16.4 49.7 59.5 49.6 145.9 0 205.4-4 4.8-3.6 12 .9 16.4l5.8 5.6c5 4.8 13.1 4.4 17.6-.9 60.2-71.8 60.1-176.1 0-247.6z\"]\n};\nvar faPhotoVideo = {\n prefix: 'fal',\n iconName: 'photo-video',\n icon: [640, 512, [], \"f87c\", \"M608 0H160c-17.67 0-32 13.13-32 29.33V128h128V32h256v288h-32v32h128c17.67 0 32-13.13 32-29.33V29.33C640 13.13 625.67 0 608 0zM224 96h-64V32h64zm384 224h-64v-64h64zm0-96h-64v-96h64zm0-128h-64V32h64zm-192 64H32a32 32 0 0 0-32 32v288a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V192a32 32 0 0 0-32-32zm0 320H32v-24l81.69-61.26 80 40 126.84-95.14L416 403.23zm0-115.23l-96.53-64.36-129.16 96.86-80-40L32 416V192h384zM112 320a48 48 0 1 0-48-48 48 48 0 0 0 48 48zm0-64a16 16 0 1 1-16 16 16 16 0 0 1 16-16z\"]\n};\nvar faPi = {\n prefix: 'fal',\n iconName: 'pi',\n icon: [448, 512, [], \"f67e\", \"M444.79 385.6l-12.82-9.6a7.997 7.997 0 0 0-11.2 1.61l-20.75 27.72C395 412.02 387 416 378.66 416c-14.69 0-26.66-11.97-26.66-26.67V128h88c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H27.33c-4.24 0-8.31 1.69-11.31 4.69L2.36 114.34C-2.68 119.38.89 128 8.02 128H128v131.46c0 32.99-9.27 65.31-26.75 93.28l-46.58 74.53a8 8 0 0 0 2.54 11.02l13.56 8.48a8.006 8.006 0 0 0 11.03-2.54l46.6-74.57A207.927 207.927 0 0 0 160 259.47V128h160v258.87c0 20.63 9.6 40.73 27.02 51.79 27.57 17.5 61.15 9.08 78.61-14.12l20.78-27.73c2.64-3.55 1.92-8.56-1.62-11.21z\"]\n};\nvar faPiano = {\n prefix: 'fal',\n iconName: 'piano',\n icon: [512, 512, [], \"f8d4\", \"M476.62,270.31l-57.24-28.62A64,64,0,0,1,384,184.45,184.45,184.45,0,0,0,199.55,0h-15.1A184.45,184.45,0,0,0,0,184.45H0V480a32,32,0,0,0,32,32H480a32,32,0,0,0,32-32V327.55A64,64,0,0,0,476.62,270.31ZM480,480H32V384H80v40a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V384h32v40a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V384h32v40a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V384h96v40a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V384h32v40a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V384h48Zm0-128H32V184.45C32,100.39,100.39,32,184.45,32h15.1C283.61,32,352,100.39,352,184.45a95.49,95.49,0,0,0,53.07,85.86l57.24,28.62A31.83,31.83,0,0,1,480,327.55Z\"]\n};\nvar faPianoKeyboard = {\n prefix: 'fal',\n iconName: 'piano-keyboard',\n icon: [576, 512, [], \"f8d5\", \"M544 64H32A32 32 0 0 0 0 96v320a32 32 0 0 0 32 32h512a32 32 0 0 0 32-32V96a32 32 0 0 0-32-32zM128 416H32V224h64v96a16 16 0 0 0 16 16h16zm144 0H160v-80h16a16 16 0 0 0 16-16v-96h48v96a16 16 0 0 0 16 16h16zM128 304v-80h32v80zm288 112H304v-80h16a16 16 0 0 0 16-16v-96h48v96a16 16 0 0 0 16 16h16zM272 304v-80h32v80zm272 112h-96v-80h16a16 16 0 0 0 16-16v-96h64zM416 304v-80h32v80zm128-112H32V96h512z\"]\n};\nvar faPie = {\n prefix: 'fal',\n iconName: 'pie',\n icon: [576, 512, [], \"f705\", \"M528.49 228.23C490.58 129.67 394.93 64 288 64S85.41 129.67 47.53 228.23C5 229.87 0 265.64 0 274.14A46.09 46.09 0 0 0 46.22 320c2.72 0 4.77-.6 7.32-.76L86 416.56A46 46 0 0 0 129.63 448h316.74A46 46 0 0 0 490 416.55l32.43-97.31c2.54.17 4.6.76 7.32.76A46.09 46.09 0 0 0 576 274.14c0-8.77-5.15-44.14-47.51-45.91zm-68.84 178.18a14 14 0 0 1-13.28 9.59H129.62a14 14 0 0 1-13.28-9.58l-31.26-93.79a127.07 127.07 0 0 0 29.2-16.69c9.09-6.74 12.6-9.43 25.41.06 12.12 9 32.47 24 67.94 24s55.84-15.06 68-24.08c9.07-6.71 12.51-9.4 25.21.05 12.15 9 32.46 24 67.93 24s55.81-15.06 67.94-24.06c10.88-8.07 14.12-8.2 25.12 0a126.91 126.91 0 0 0 29.08 16.69l-31.26 93.8zM529.77 288c-24.94 0-38.19-9.84-48.91-17.81-29.71-22-50.06-9.69-63.22.06C407 278.16 393.74 288 368.77 288s-38.22-9.84-48.94-17.77c-31.82-23.68-53.5-7.25-63.3 0-10.66 7.93-23.91 17.77-48.91 17.77s-38.25-9.84-49-17.77c-6.78-5-29.71-25-63.47 0-10.68 7.9-24 17.74-49 17.74a13.87 13.87 0 1 1 0-27.74c5.39 0 11.08.48 26.75-8.17C126.23 98.14 271.72 96 288 96c16 0 161.72 2 215 156 15.75 8.91 20.57 8.31 26.78 8.31a13.87 13.87 0 1 1 0 27.74zM199.16 145.69a16.07 16.07 0 0 0-21.47 7.16l-16 32a16 16 0 0 0 7.16 21.47c9.54 4.7 18.36-1 21.47-7.16l16-32a16 16 0 0 0-7.16-21.47zm199.14 7.15a16 16 0 1 0-28.63 14.31l16 32c3.1 6.17 11.93 11.86 21.47 7.16a16 16 0 0 0 7.16-21.47zM288 144a16 16 0 0 0-16 16v32a16 16 0 1 0 32 0v-32a16 16 0 0 0-16-16z\"]\n};\nvar faPig = {\n prefix: 'fal',\n iconName: 'pig',\n icon: [576, 512, [], \"f706\", \"M560 192h-29.5c-11.1-25.3-28.7-46.9-50.5-63.4V64h-16c-46.68 0-83.15 27.22-89.39 32H223.99c-41.32 0-82.57 17.33-111.74 45.92-22.43 21.87-38.56 50.15-45.07 82.08h-11.2c-14.8 0-26.5-13.5-23.5-28.8 2.2-11.4 12.9-19.2 24.5-19.2h1c3.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.6-4.4 34.2 22.2 63.4 55.5 63.4h8c0 52.2 25.4 98.1 64 127.3V464c0 8.8 7.2 16 16 16h112c8.8 0 16-7.2 16-16v-48h64v48c0 8.8 7.2 16 16 16h112c8.8 0 16-7.2 16-16v-80.9c11.7-9 22.4-19.3 31.3-31.1H560c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16zm-16 128h-48.7c-17 22.4-17 24.1-47.3 47.3V448h-80v-64H239.99v64h-80v-80.7c-64.9-49-64-93.5-64-111.3 0-70.6 57.4-128 128.01-128h161.71c16.9-13.5 33.2-26.5 62.3-30.8v47.3c39.7 30.1 44 39.3 61.6 79.5H544v96zm-112.01-96c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.19-16-16-16z\"]\n};\nvar faPiggyBank = {\n prefix: 'fal',\n iconName: 'piggy-bank',\n icon: [576, 512, [], \"f4d3\", \"M432 256c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm128-32h-29.5c-11.1-25.3-28.7-46.9-50.5-63.4V96h-16c-30.3 0-57.8 10.1-80.9 26.2.4-3.4.9-6.7.9-10.2C384 50.1 333.9 0 272 0S160 50.1 160 112c0 9.7 1.6 18.9 4 27.9C115 159.7 78 203 67.2 256H56c-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 288h8c0 52.2 25.4 98.1 64 127.3V496c0 8.8 7.2 16 16 16h112c8.8 0 16-7.2 16-16v-48h64v48c0 8.8 7.2 16 16 16h112c8.8 0 16-7.2 16-16v-80.9c11.7-9 22.4-19.3 31.3-31.1H560c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16zM272 32c44.2 0 80 35.8 80 80 0 5.5-.6 10.8-1.6 16H224c-10.1 0-19.9 1.2-29.5 3-1.6-6.1-2.5-12.4-2.5-19 0-44.2 35.8-80 80-80zm272 320h-48.7c-17 22.4-17 24.1-47.3 47.3V480h-80v-64H240v64h-80v-80.7c-64.9-49-64-93.5-64-111.3 0-70.6 57.4-128 128-128h161.7c16.9-13.5 33.2-26.5 62.3-30.8v47.3c39.7 30.1 44 39.3 61.6 79.5H544v96z\"]\n};\nvar faPills = {\n prefix: 'fal',\n iconName: 'pills',\n icon: [576, 512, [], \"f484\", \"M112 32C50.2 32 0 82.2 0 144v224c0 61.8 50.2 112 112 112s112-50.2 112-112V144c0-61.8-50.2-112-112-112zm80 336c0 44.1-35.9 80-80 80s-80-35.9-80-80v-80h160v80zm0-112H32V144c0-44.1 35.9-80 80-80s80 35.9 80 80v112zm224-96c-88.4 0-160 71.6-160 160s71.6 160 160 160 160-71.6 160-160-71.6-160-160-160zm0 288c-70.7 0-128-57.3-128-128 0-29.6 10.4-56.4 27.3-78.1l178.9 178.9C472.4 437.6 445.6 448 416 448zm100.7-49.9L337.9 219.3c21.7-16.8 48.5-27.3 78.1-27.3 70.7 0 128 57.3 128 128 0 29.6-10.4 56.4-27.3 78.1z\"]\n};\nvar faPizza = {\n prefix: 'fal',\n iconName: 'pizza',\n icon: [576, 512, [], \"f817\", \"M523.2 100.13a15.43 15.43 0 0 0-12.36-6 16.42 16.42 0 0 0-11.61 4.78L342.17 256l157.06 157.06a16.42 16.42 0 0 0 11.61 4.78 15.4 15.4 0 0 0 12.36-6 256.47 256.47 0 0 0 0-311.71zm-62 229.69L387.42 256l73.87-73.87A157.51 157.51 0 0 1 480 256a155.93 155.93 0 0 1-18.76 73.82zm47.31 47.3l-23.61-23.6A190.2 190.2 0 0 0 512 256c0-35.68-10.2-68.79-27.17-97.41l23.72-23.71a224.58 224.58 0 0 1 0 242.24zM256.45 256L425.6 86.85c6.46-6.46 6.45-17.36-.42-23.39A255.13 255.13 0 0 0 256.46 0C175.37 0 94.29 38.28 42.65 114.84c-56.87 84.3-56.87 198 0 282.34C94.3 473.72 175.38 512 256.45 512a255.14 255.14 0 0 0 168.73-63.46c6.87-6 6.88-16.93.42-23.39zm7.55-64a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm44.61-33.41a47.93 47.93 0 1 0-62 62L211.2 256l132.42 132.42c-25.23 17-55 27.58-87.62 27.58-18.23 0-35.46-3.71-51.8-9.35a47.87 47.87 0 1 0-73.84-52.77C109.16 326.73 96 293 96 256c0-88.22 71.78-160 160-160 32.64 0 62.5 10.49 87.73 27.47zM192 368a16 16 0 1 1-16-16 16 16 0 0 1 16 16zm64.45 112c-75.82 0-144.08-36.71-187.27-100.72-49.74-73.73-49.75-172.8 0-246.54C112.36 68.72 180.62 32 256.46 32a223.62 223.62 0 0 1 134.15 44.59l-23.74 23.74C335.48 77.87 297.55 64 256 64 150 64 64 150 64 256s86 192 192 192c41.55 0 79.58-13.77 111-36.21l23.62 23.62A223.65 223.65 0 0 1 256.45 480z\"]\n};\nvar faPizzaSlice = {\n prefix: 'fal',\n iconName: 'pizza-slice',\n icon: [512, 512, [], \"f818\", \"M158.87.15c-1.09-.1-2.18-.15-3.26-.15a32.85 32.85 0 0 0-32.07 24.27L.55 491.63A16.24 16.24 0 0 0 16.15 512a16.54 16.54 0 0 0 4.4-.61l467.6-129.66c15.72-4.35 25.49-19.67 23.62-35.89C490.89 165.08 340.78 17.32 158.87.15zM38.49 473.21L133 113.91c148.3 14 248.38 112.63 264.45 259.75zM428.65 365C409.38 206.37 301.13 99.81 141.26 82.67l13.24-50.31a1.54 1.54 0 0 1 1.11-.36h.25c165.67 15.63 305 152.13 323.74 318.89zM192 176a48 48 0 1 0 48 48 48.05 48.05 0 0 0-48-48zm0 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm-48 80a48 48 0 1 0 48 48 48.05 48.05 0 0 0-48-48zm0 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm96-64a48 48 0 1 0 48-48 48.05 48.05 0 0 0-48 48zm64 0a16 16 0 1 1-16-16 16 16 0 0 1 16 16z\"]\n};\nvar faPlaceOfWorship = {\n prefix: 'fal',\n iconName: 'place-of-worship',\n icon: [576, 512, [], \"f67f\", \"M558.57 355.99L448 303.26v-29.14c0-11.24-5.9-21.65-15.53-27.44L384 217.6V102.63c0-8.49-3.37-16.63-9.38-22.63L299.31 4.69C296.19 1.56 292.09 0 288 0s-8.19 1.56-11.31 4.69L201.37 80c-6 6-9.37 14.14-9.37 22.62V217.6l-48.47 29.08A31.988 31.988 0 0 0 128 274.12v29.15L17.43 355.99C6.96 360.99 0 373.89 0 388.32V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8 0 0-.35-119.22 0-120l96-45.29V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V274.12l64-38.4V102.63l64-64 64 64v133.09l64 38.4V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V338.71L544 384c.35.78 0 120 0 120 0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V388.32c0-14.43-6.96-27.33-17.43-32.33zM281.71 320.3c-33.28 3.17-57.71 33.02-57.71 66.45V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V385.8c0-15.95 10.86-30.76 26.59-33.36C302.61 349.15 320 364.58 320 384v120c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V384c0-37.42-32.12-67.34-70.29-63.7z\"]\n};\nvar faPlane = {\n prefix: 'fal',\n iconName: 'plane',\n icon: [576, 512, [], \"f072\", \"M480 192H365.71L260.61 8.06A16.014 16.014 0 0 0 246.71 0h-88.36c-10.63 0-18.3 10.17-15.38 20.39L192 192h-64l-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 384H72c5.04 0 9.78-2.37 12.8-6.4L128 320h64l-49.03 171.6c-2.92 10.22 4.75 20.4 15.38 20.4h88.36c5.74 0 11.04-3.08 13.89-8.06L365.71 320H480c35.35 0 96-28.65 96-64s-60.65-64-96-64zm0 96H347.14L237.43 480h-57.86l54.86-192H112l-48 64H37.35l27.98-96-28-96H64l48 64h122.42L179.57 32h57.87l109.71 192H480c26.24 0 62.61 21.75 64 31.91-1.39 10.34-37.76 32.09-64 32.09z\"]\n};\nvar faPlaneAlt = {\n prefix: 'fal',\n iconName: 'plane-alt',\n icon: [576, 512, [], \"f3de\", \"M462.5 192.319H353.904l-33.695-64.33c6.53-.113 11.79-5.433 11.79-11.99V76c0-6.627-5.373-12-12-12h-33.307l-26.298-50.208C255.257 4.858 245.982 0 236.714 0h-54.175c-17.549 0-30.473 16.313-26.563 33.331l27.989 160.119c-20.696 1.057-40.83 2.827-58.722 5.169l-31.987-57.441-.259-.447c-4.896-8.161-13.85-13.23-23.366-13.23H29.723c-17.213 0-30.09 15.749-26.721 32.594l13.41 67.052C5.51 235.553 0 245.225 0 256.001c0 10.775 5.51 20.447 16.412 28.854l-13.41 67.049c-3.375 16.877 9.542 32.597 26.722 32.595l39.911-.001c9.516-.002 18.467-5.072 23.362-13.23l32.245-57.887c17.892 2.342 38.025 4.112 58.723 5.169l-27.989 160.119C152.064 495.694 164.999 512 182.539 512h54.175c9.003 0 18.012-4.512 23.456-13.372L286.689 448H320c6.627 0 12-5.373 12-12v-40c0-6.558-5.262-11.878-11.793-11.99l33.697-64.332 108.596.002c48.364 0 113.5-16.362 113.5-63.68 0-47.602-65.772-63.681-113.5-63.681zm0 95.361l-128.441-.001L233.849 480h-45.621l33.588-192.14c-45.335-1.352-67.17-2.232-113.778-9.356l-41.205 73.994-31.315.001L55 256.001 35.517 159.5h31.315l41.206 73.996c46.89-7.168 68.859-8.017 113.777-9.356L188.228 32h45.621l100.21 192.319H462.5c32.513 0 81.5 10.7 81.5 31.681 0 23.203-56.152 31.68-81.5 31.68z\"]\n};\nvar faPlaneArrival = {\n prefix: 'fal',\n iconName: 'plane-arrival',\n icon: [640, 512, [], \"f5af\", \"M632 480H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h624c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-51.56-177.46c-19.46-20.21-45.93-35.35-76.55-43.77l-96.94-26.68L310.5 46.83c-2.19-4.23-4.15-8.58-6.18-12.89-3.14-6.64-8.97-11.67-16.05-13.62C269.1 15.05 216.78 0 216.78 0c-.28 0-10.77-.48-18.69 8.65-5.41 6.25-7.37 16.41-5.09 24.35l42.32 151.85-87.29-24.02-26.88-67.79c-2.92-7.47-9.18-13.18-16.75-15.26C59.87 65.53 61.43 65.64 57 65.64c-13.55 0-24.77 11.34-25 25.29l.29 107.22c.25 11.54 5.21 22.55 13.62 30.21l93.32 83.17c8.42 7.67 18.62 13.31 29.49 16.3l295.95 81.45c16.21 4.46 32.32 6.73 47.88 6.73 13.79 0 27.15-1.79 39.71-5.33 30.87-8.69 49.14-23.15 54.31-43 5.17-19.85-3.61-41.76-26.13-65.14zm-4.86 57.07c-2.01 7.72-13.67 15.1-32.01 20.26-30.85 8.68-60.03 1.41-70.42-1.45L177.2 296.97c-6.03-1.66-11.72-4.81-16.43-9.1L67.45 204.7c-1.93-1.76-3.11-4.46-3.17-7.23l-.1-97.57 28.35 7.8 31.54 79.72 157.85 43.44-54.51-194.65 48.8 13.98 108.76 209.03 110.44 30.4c25.08 6.9 46.51 19.04 61.99 35.11 13.64 14.18 20.28 26.88 18.18 34.88z\"]\n};\nvar faPlaneDeparture = {\n prefix: 'fal',\n iconName: 'plane-departure',\n icon: [640, 512, [], \"f5b0\", \"M80.52 339.28A40.69 40.69 0 0 0 110.06 352l127.06-.17a73.86 73.86 0 0 0 32.45-7.61l283.1-140.31c29.18-14.46 52.82-34.58 68.36-58.18 18-27.27 22.38-50.28 13.16-68.4-11.59-22.86-42-30.76-72.7-30.76-26 0-52.45 6.61-78.76 19.64l-92.71 46-208.71-76.54A25.67 25.67 0 0 0 168 32a26 26 0 0 0-11.45 2.68l-64 31.7a25.07 25.07 0 0 0-13.8 19.32A24 24 0 0 0 90.2 109l136.53 84.1-83.95 41.61L76 201.83a25.86 25.86 0 0 0-22.84 0l-39.07 19.38A25.11 25.11 0 0 0 .51 238.8a24.87 24.87 0 0 0 5.67 21.41zM64.6 231.87l78.22 38.51 149.94-74.31L118.54 89.23l49.28-24.42 224.09 82.12 105-52c21.85-10.83 43.58-16.32 64.59-16.32 16.3 0 39.32 3.6 44.23 13.28 3.41 6.71-.84 20.26-11.36 36.26-12.43 18.87-31.74 35.17-55.85 47.12L255.41 315.54a41.63 41.63 0 0 1-18.32 4.29l-127 .17a8.77 8.77 0 0 1-6.29-2.66l-67.3-71.53 28.1-13.94zM632 448H9.1a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8H632a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faPlaneSlash = {\n prefix: 'fal',\n iconName: 'plane-slash',\n icon: [640, 512, [], \"e069\", \"M269.44,480H211.56l53.18-186.06L257.2,288H144L96,352H69.34l28-96-28-96H94.66L54,128H48a16,16,0,0,0-15.54,19.88L64,256,32.48,364.13A16,16,0,0,0,48,384h56a16,16,0,0,0,12.8-6.41L160,320h64L175,491.59A16,16,0,0,0,190.34,512H278.7a16,16,0,0,0,13.89-8.06l74.12-129.71-25.41-20ZM189.72,72l42.94,33.81L211.56,32h57.88L376.23,218.89l6.5,5.11H512c26.23,0,62.61,21.75,64,31.91C574.61,266.25,538.23,288,512,288H464l40.64,32H512c35.34,0,96-28.66,96-64s-60.66-64-96-64H397.7L292.61,8.06C290.06,3.61,283.84,0,278.72,0H190.34A16,16,0,0,0,175,20.39ZM637,485.32,23,1.8A7.88,7.88,0,0,0,11.77,3l-10,12.5A7.94,7.94,0,0,0,3,26.71L617,510.23A8,8,0,0,0,628.2,509l10-12.5A7.86,7.86,0,0,0,637,485.32Z\"]\n};\nvar faPlanetMoon = {\n prefix: 'fal',\n iconName: 'planet-moon',\n icon: [576, 512, [], \"e01f\", \"M224,64C100.28711,64,0,164.28516,0,288,0,411.71289,100.28711,512,224,512S448,411.71289,448,288C448,164.28516,347.71289,64,224,64ZM55.03906,202.86133A168.37236,168.37236,0,0,1,208,104c16.42969.23242,24,9.5918,24,20.62109a55.68,55.68,0,0,1-8.79492,30.26368l-47.916,55.26562c-14.0332,16.18555-14.373,43.09961,1.29492,57.707A44.99741,44.99741,0,0,0,207.45312,280H272a24.02624,24.02624,0,0,1,24,24v16.89062a56.29763,56.29763,0,0,1-5.91406,25.04883l-40.32227,64.64844a20.736,20.736,0,0,1-15.0625,11.14063c-3.28515.55273-6.60156,1.01171-10.7832,1.41406a8.10651,8.10651,0,0,1-7.91992-8.07422c-.00586-70.99024-.01172-44.60742.04492-55.06836H208a24.0275,24.0275,0,0,1-24-24V300.68555L127.0332,243.7168A40.0085,40.0085,0,0,0,98.74609,232l-25.02539-.00195C58.207,231.99805,49.11133,215.93945,55.03906,202.86133ZM224,480C118.13086,480,32,393.86914,32,288a191.85276,191.85276,0,0,1,4.28516-40.10742A51.99721,51.99721,0,0,0,73.7207,263.99805L98.74609,264a7.94986,7.94986,0,0,1,5.65821,2.34375L152,313.94141V336a56.07819,56.07819,0,0,0,31.99805,50.5918c-.002,1.70312-.002.41992,0,28.47851A40.04816,40.04816,0,0,0,223.918,455.14258c4.89062,0,14.47656-1.58594,16.082-1.85547a52.83521,52.83521,0,0,0,38.38281-28.38672L318.709,360.252A88.49462,88.49462,0,0,0,328,320.89062V304a56.0629,56.0629,0,0,0-56-56H207.45312a13.22277,13.22277,0,0,1-9.4121-3.90039,8.02588,8.02588,0,0,1-.38477-10.89649l49.72656-57.35546.99414-1.14649.8418-1.26172A87.73535,87.73535,0,0,0,264,124.62109,52.59039,52.59039,0,0,0,257.25781,99.082C347.30273,114.90039,416,193.49219,416,288,416,393.86914,329.86914,480,224,480ZM512,0a64,64,0,1,0,64,64A64.00067,64.00067,0,0,0,512,0Zm0,96a32,32,0,1,1,32-32A32.03667,32.03667,0,0,1,512,96Z\"]\n};\nvar faPlanetRinged = {\n prefix: 'fal',\n iconName: 'planet-ringed',\n icon: [512, 512, [], \"e020\", \"M500.46078,11.36064c-28.37693-28.41319-93.93158-.6778-167.29286,51.54847A207.12926,207.12926,0,0,0,256,47.95048c-114.87493,0-207.99987,93.13494-207.99987,208.0222a207.22913,207.22913,0,0,0,15.09765,77.563c-9.41992,13.29049-18.27733,26.34657-25.84373,38.79711C-1.36507,435.89032-9.99788,479.04336,11.53922,500.59449,19.35757,508.41759,29.97085,512,42.81264,512c33.78513,0,82.90424-25.01634,136.12882-62.92273A207.12538,207.12538,0,0,0,256,463.99488c114.87493,0,207.99987-93.13494,207.99987-208.0222a207.20185,207.20185,0,0,0-15.043-77.41256c9.459-13.35689,18.18163-26.41883,25.789-38.93579C513.36507,76.06676,521.99788,32.91372,500.46078,11.36064ZM256,79.9539c67.666,0,126.43937,38.43965,155.88271,94.58431-30.19529,40.71528-67.73042,84.216-110.41985,126.93347-46.56442,46.60458-89.31635,83.001-126.4921,110.59188-56.34958-29.37814-94.97065-88.26138-94.97065-156.09088C80.00011,158.91545,158.95319,79.9539,256,79.9539ZM34.27163,477.84792c-4.082-4.06684-6.53125-27.94439,30.45506-88.80049,4.57031-7.51838,9.60546-15.2653,14.92577-23.14114a208.7054,208.7054,0,0,0,66.53706,66.50123C84.69347,473.74006,43.38686,486.888,34.27163,477.84792ZM431.99989,255.97268c0,97.05723-78.95308,176.01878-175.99989,176.01878a175.07568,175.07568,0,0,1-45.74606-6.24285c38.29294-29.91921,77.56635-65.12218,113.94133-101.53232,38.1074-38.131,72.5898-77.1,101.48235-114.30712A175.20682,175.20682,0,0,1,431.99989,255.97268ZM366.01165,79.6609c49-32.92734,85.38276-48.302,102.48626-48.302,4.30078,0,7.41015.94151,9.23046,2.74834,4.082,4.06879,6.53125,27.94634-30.45506,88.80244-4.42968,7.28789-10.04491,15.13638-15.15428,22.75243A208.73991,208.73991,0,0,0,366.01165,79.6609Z\"]\n};\nvar faPlay = {\n prefix: 'fal',\n iconName: 'play',\n icon: [448, 512, [], \"f04b\", \"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.6zm-16.2 55.1l-352 208C45.6 483.9 32 476.6 32 464V47.9c0-16.3 16.4-18.4 24.1-13.8l352 208.1c10.5 6.2 10.5 21.4.1 27.6z\"]\n};\nvar faPlayCircle = {\n prefix: 'fal',\n iconName: 'play-circle',\n icon: [512, 512, [], \"f144\", \"M256 504c137 0 248-111 248-248S393 8 256 8 8 119 8 256s111 248 248 248zM40 256c0-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-216zm331.7-18l-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-42zM192 335.8V176.9c0-4.7 5.1-7.6 9.1-5.1l134.5 81.7c3.9 2.4 3.8 8.1-.1 10.3L201 341c-4 2.3-9-.6-9-5.2z\"]\n};\nvar faPlug = {\n prefix: 'fal',\n iconName: 'plug',\n icon: [384, 512, [], \"f1e6\", \"M352,128H304V16a16,16,0,0,0-32,0V128H112V16a16,16,0,0,0-32,0V128H32A32,32,0,0,0,0,160v32a32,32,0,0,0,32,32v32c0,82.75,63.37,150.22,144,158.38V512h32V414.38c80.63-8.16,144-75.63,144-158.38V224a32,32,0,0,0,32-32V160A32,32,0,0,0,352,128ZM320,256a128,128,0,0,1-256,0V224H320Zm32-64H32V160H352Z\"]\n};\nvar faPlus = {\n prefix: 'fal',\n iconName: 'plus',\n icon: [384, 512, [], \"f067\", \"M376 232H216V72c0-4.42-3.58-8-8-8h-32c-4.42 0-8 3.58-8 8v160H8c-4.42 0-8 3.58-8 8v32c0 4.42 3.58 8 8 8h160v160c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V280h160c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8z\"]\n};\nvar faPlusCircle = {\n prefix: 'fal',\n iconName: 'plus-circle',\n icon: [512, 512, [], \"f055\", \"M384 250v12c0 6.6-5.4 12-12 12h-98v98c0 6.6-5.4 12-12 12h-12c-6.6 0-12-5.4-12-12v-98h-98c-6.6 0-12-5.4-12-12v-12c0-6.6 5.4-12 12-12h98v-98c0-6.6 5.4-12 12-12h12c6.6 0 12 5.4 12 12v98h98c6.6 0 12 5.4 12 12zm120 6c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-32 0c0-119.9-97.3-216-216-216-119.9 0-216 97.3-216 216 0 119.9 97.3 216 216 216 119.9 0 216-97.3 216-216z\"]\n};\nvar faPlusHexagon = {\n prefix: 'fal',\n iconName: 'plus-hexagon',\n icon: [576, 512, [], \"f300\", \"M441.5 39.8C432.9 25.1 417.1 16 400 16H176c-17.1 0-32.9 9.1-41.5 23.8l-112 192c-8.7 14.9-8.7 33.4 0 48.4l112 192c8.6 14.7 24.4 23.8 41.5 23.8h224c17.1 0 32.9-9.1 41.5-23.8l112-192c8.7-14.9 8.7-33.4 0-48.4l-112-192zm84.3 224.3l-112 192c-2.9 4.9-8.2 7.9-13.8 7.9H176c-5.7 0-11-3-13.8-7.9l-112-192c-2.9-5-2.9-11.2 0-16.1l112-192c2.8-5 8.1-8 13.8-8h224c5.7 0 11 3 13.8 7.9l112 192c2.9 5 2.9 11.2 0 16.2zM416 250v12c0 6.6-5.4 12-12 12h-98v98c0 6.6-5.4 12-12 12h-12c-6.6 0-12-5.4-12-12v-98h-98c-6.6 0-12-5.4-12-12v-12c0-6.6 5.4-12 12-12h98v-98c0-6.6 5.4-12 12-12h12c6.6 0 12 5.4 12 12v98h98c6.6 0 12 5.4 12 12z\"]\n};\nvar faPlusOctagon = {\n prefix: 'fal',\n iconName: 'plus-octagon',\n icon: [512, 512, [], \"f301\", \"M361.5 14.1c-9-9-21.2-14.1-33.9-14.1H184.5c-12.7 0-24.9 5.1-33.9 14.1L14.1 150.5c-9 9-14.1 21.2-14.1 33.9v143.1c0 12.7 5.1 24.9 14.1 33.9l136.5 136.5c9 9 21.2 14.1 33.9 14.1h143.1c12.7 0 24.9-5.1 33.9-14.1L498 361.4c9-9 14.1-21.2 14.1-33.9v-143c0-12.7-5.1-24.9-14.1-33.9L361.5 14.1zM480 327.5c0 4.3-1.7 8.3-4.7 11.3L338.9 475.3c-3 3-7 4.7-11.3 4.7H184.5c-4.3 0-8.3-1.7-11.3-4.7L36.7 338.9c-3-3-4.7-7-4.7-11.3V184.5c0-4.3 1.7-8.3 4.7-11.3L173.1 36.7c3-3 7-4.7 11.3-4.7h143.1c4.3 0 8.3 1.7 11.3 4.7l136.5 136.5c3 3 4.7 7 4.7 11.3v143zM384 250v12c0 6.6-5.4 12-12 12h-98v98c0 6.6-5.4 12-12 12h-12c-6.6 0-12-5.4-12-12v-98h-98c-6.6 0-12-5.4-12-12v-12c0-6.6 5.4-12 12-12h98v-98c0-6.6 5.4-12 12-12h12c6.6 0 12 5.4 12 12v98h98c6.6 0 12 5.4 12 12z\"]\n};\nvar faPlusSquare = {\n prefix: 'fal',\n iconName: 'plus-square',\n icon: [448, 512, [], \"f0fe\", \"M400 64c8.8 0 16 7.2 16 16v352c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352m0-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-60 206h-98v-98c0-6.6-5.4-12-12-12h-12c-6.6 0-12 5.4-12 12v98h-98c-6.6 0-12 5.4-12 12v12c0 6.6 5.4 12 12 12h98v98c0 6.6 5.4 12 12 12h12c6.6 0 12-5.4 12-12v-98h98c6.6 0 12-5.4 12-12v-12c0-6.6-5.4-12-12-12z\"]\n};\nvar faPodcast = {\n prefix: 'fal',\n iconName: 'podcast',\n icon: [448, 512, [], \"f2ce\", \"M326.011 313.366a81.658 81.658 0 0 0-11.127-16.147c-1.855-2.1-1.913-5.215-.264-7.481C328.06 271.264 336 248.543 336 224c0-63.221-52.653-114.375-116.41-111.915-57.732 2.228-104.69 48.724-107.458 106.433-1.278 26.636 6.812 51.377 21.248 71.22 1.648 2.266 1.592 5.381-.263 7.481a81.609 81.609 0 0 0-11.126 16.145c-2.003 3.816-7.25 4.422-9.961 1.072C92.009 289.7 80 258.228 80 224c0-79.795 65.238-144.638 145.178-143.995 77.583.624 141.19 63.4 142.79 140.969.73 35.358-11.362 67.926-31.928 93.377-2.738 3.388-8.004 2.873-10.029-.985zM224 0C100.206 0 0 100.185 0 224c0 82.003 43.765 152.553 107.599 191.485 4.324 2.637 9.775-.93 9.078-5.945-1.244-8.944-2.312-17.741-3.111-26.038a6.025 6.025 0 0 0-2.461-4.291c-48.212-35.164-79.495-92.212-79.101-156.409.636-103.637 84.348-188.625 187.964-190.76C327.674 29.822 416 116.79 416 224c0 63.708-31.192 120.265-79.104 155.21a6.027 6.027 0 0 0-2.462 4.292c-.799 8.297-1.866 17.092-3.11 26.035-.698 5.015 4.753 8.584 9.075 5.947C403.607 376.922 448 306.75 448 224 448 100.204 347.814 0 224 0zm64 355.75c0 32.949-12.871 104.179-20.571 132.813C262.286 507.573 242.858 512 224 512c-18.857 0-38.286-4.427-43.428-23.438C172.927 460.134 160 388.898 160 355.75c0-35.156 31.142-43.75 64-43.75 32.858 0 64 8.594 64 43.75zm-32 0c0-16.317-64-16.3-64 0 0 27.677 11.48 93.805 19.01 122.747 6.038 2.017 19.948 2.016 25.981 0C244.513 449.601 256 383.437 256 355.75zM288 224c0 35.346-28.654 64-64 64s-64-28.654-64-64 28.654-64 64-64 64 28.654 64 64zm-32 0c0-17.645-14.355-32-32-32s-32 14.355-32 32 14.355 32 32 32 32-14.355 32-32z\"]\n};\nvar faPodium = {\n prefix: 'fal',\n iconName: 'podium',\n icon: [448, 512, [], \"f680\", \"M440 160H96v-16c0-39.77 29.25-72.6 67.34-78.72C170.29 83.22 187.6 96 208 96h64c26.51 0 48-21.49 48-48S298.51 0 272 0h-64c-21.37 0-39.27 14.06-45.48 33.36C107.17 40.12 64 86.87 64 144v16H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56.09l.01 1.77L96 480H40c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h368c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-55.9L384 192h56c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM208 32h64c8.82 0 16 7.18 16 16s-7.18 16-16 16h-64c-8.82 0-16-7.18-16-16s7.18-16 16-16zm112 448H127.91l-.01-1.77L96 192h255.9L320 480z\"]\n};\nvar faPodiumStar = {\n prefix: 'fal',\n iconName: 'podium-star',\n icon: [448, 512, [], \"f758\", \"M440 160H96v-16c0-39.8 29.2-72.6 67.3-78.7 7 17.9 24.3 30.7 44.7 30.7h64c26.5 0 48-21.5 48-48S298.5 0 272 0h-64c-21.4 0-39.3 14.1-45.5 33.4C107.2 40.1 64 86.9 64 144v16H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h56.1v1.8L96 480H40c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-55.9L384 192h56c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM208 32h64c8.8 0 16 7.2 16 16s-7.2 16-16 16h-64c-8.8 0-16-7.2-16-16s7.2-16 16-16zm112 448H127.9v-1.8L96 192h255.9L320 480zM164.1 346.1l-5.6 32.7c-1.6 9.5 2.2 18.9 10.1 24.5 4.4 3.2 9.5 4.8 14.6 4.8 4 0 7.9-1 11.6-2.9l29.3-15.4 29.2 15.4c8.4 4.4 18.5 3.8 26.3-1.9 7.8-5.6 11.6-15 10-24.5l-5.6-32.6 23.7-23.1c6.9-6.7 9.3-16.5 6.3-25.7-3-9.1-10.7-15.6-20.2-17l-32.7-4.8-14.6-29.7c-4.2-8.6-12.8-13.9-22.4-13.9-9.6 0-18.2 5.3-22.4 13.9L187 275.6l-32.7 4.8c-9.5 1.4-17.2 7.9-20.2 17s-.5 19 6.3 25.6l23.7 23.1zm44.1-41.3l15.8-32 15.8 32 35.3 5.2-25.6 25 6 35.2-31.5-16.7-31.6 16.6 6-35.2-25.6-25 35.4-5.1z\"]\n};\nvar faPoliceBox = {\n prefix: 'fal',\n iconName: 'police-box',\n icon: [384, 512, [], \"e021\", \"M97.59961,336h76.80078A9.60081,9.60081,0,0,0,184,326.40039V249.59961A9.60081,9.60081,0,0,0,174.40039,240H97.59961A9.60081,9.60081,0,0,0,88,249.59961v76.80078A9.60081,9.60081,0,0,0,97.59961,336ZM112,264h48v48H112ZM97.59961,448h76.80078A9.60081,9.60081,0,0,0,184,438.40039V361.59961A9.60081,9.60081,0,0,0,174.40039,352H97.59961A9.60081,9.60081,0,0,0,88,361.59961v76.80078A9.60081,9.60081,0,0,0,97.59961,448ZM112,376h48v48H112Zm97.59961,72h76.80078A9.60081,9.60081,0,0,0,296,438.40039V361.59961A9.60081,9.60081,0,0,0,286.40039,352H209.59961A9.60081,9.60081,0,0,0,200,361.59961v76.80078A9.60081,9.60081,0,0,0,209.59961,448ZM224,376h48v48H224ZM97.59961,224h76.80078A9.60081,9.60081,0,0,0,184,214.40039V137.59961A9.60081,9.60081,0,0,0,174.40039,128H97.59961A9.60081,9.60081,0,0,0,88,137.59961v76.80078A9.60081,9.60081,0,0,0,97.59961,224ZM140,152h20v20H140Zm0,28h20v20H140Zm-28-28h20v20H112Zm0,28h20v20H112Zm97.59961,44h76.80078A9.60081,9.60081,0,0,0,296,214.40039V137.59961A9.60081,9.60081,0,0,0,286.40039,128H209.59961A9.60081,9.60081,0,0,0,200,137.59961v76.80078A9.60081,9.60081,0,0,0,209.59961,224ZM252,152h20v20H252Zm0,28h20v20H252Zm-28-28h20v20H224Zm0,28h20v20H224ZM209.59961,336h76.80078A9.60081,9.60081,0,0,0,296,326.40039V249.59961A9.60081,9.60081,0,0,0,286.40039,240H209.59961A9.60081,9.60081,0,0,0,200,249.59961v76.80078A9.60081,9.60081,0,0,0,209.59961,336ZM224,264h48v48H224ZM376,480H352V88a23.99993,23.99993,0,0,0-24-24h-8.02148V48a15.99829,15.99829,0,0,0-16-16H208V16a16,16,0,0,0-32,0V32H80A15.99954,15.99954,0,0,0,64,48V64H56A23.99993,23.99993,0,0,0,32,88V480H8a8.00039,8.00039,0,0,0-8,8v16a8.00039,8.00039,0,0,0,8,8H376a8.00039,8.00039,0,0,0,8-8V488A8.00039,8.00039,0,0,0,376,480Zm-56,0H64V96H320Z\"]\n};\nvar faPoll = {\n prefix: 'fal',\n iconName: 'poll',\n icon: [448, 512, [], \"f681\", \"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-48zm16 400c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16V80c0-8.82 7.18-16 16-16h352c8.82 0 16 7.18 16 16v352zM136 224h-16c-4.42 0-8 3.58-8 8v144c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V232c0-4.42-3.58-8-8-8zm96-96h-16c-4.42 0-8 3.58-8 8v240c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V136c0-4.42-3.58-8-8-8zm96 160h-16c-4.42 0-8 3.58-8 8v80c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-80c0-4.42-3.58-8-8-8z\"]\n};\nvar faPollH = {\n prefix: 'fal',\n iconName: 'poll-h',\n icon: [448, 512, [], \"f682\", \"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-48zM48 448c-8.82 0-16-7.18-16-16V80c0-8.82 7.18-16 16-16h352c8.82 0 16 7.18 16 16v352c0 8.82-7.18 16-16 16H48zm208-280v-16c0-4.42-3.58-8-8-8H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h144c4.42 0 8-3.58 8-8zm96 96v-16c0-4.42-3.58-8-8-8H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h240c4.42 0 8-3.58 8-8zm-160 96v-16c0-4.42-3.58-8-8-8h-80c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h80c4.42 0 8-3.58 8-8z\"]\n};\nvar faPollPeople = {\n prefix: 'fal',\n iconName: 'poll-people',\n icon: [640, 512, [], \"f759\", \"M145.8 391.7c8.8-11 14.2-24.7 14.2-39.7 0-35.3-28.7-64-64-64s-64 28.7-64 64c0 15.1 5.5 28.8 14.2 39.7C19 404.5 0 432 0 464v17.6C0 498.4 13.6 512 30.4 512h131.2c16.8 0 30.4-13.6 30.4-30.4V464c0-32-19-59.5-46.2-72.3zM96 320c17.7 0 32 14.4 32 32s-14.3 32-32 32-32-14.4-32-32 14.3-32 32-32zM32 481.6V464c0-26.5 21.5-48 48-48h32c26.5 0 48 21.5 48 48l1.6 16L32 481.6zm113.8-377.9C154.6 92.7 160 79 160 64c0-35.3-28.7-64-64-64S32 28.7 32 64c0 15.1 5.5 28.8 14.2 39.7C19 116.5 0 144 0 176v17.6C0 210.4 13.6 224 30.4 224h131.2c16.8 0 30.4-13.6 30.4-30.4V176c0-32-19-59.5-46.2-72.3zM96 32c17.7 0 32 14.4 32 32s-14.3 32-32 32-32-14.4-32-32 14.3-32 32-32zM32 193.6V176c0-26.5 21.5-48 48-48h32c26.5 0 48 21.5 48 48l1.6 16L32 193.6zM616 32H248c-13.3 0-24 10.7-24 24v112c0 13.3 10.7 24 24 24h368c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24zM480 160H256V64h224v96zm128 0h-96V64h96v96zm8 160H248c-13.3 0-24 10.7-24 24v112c0 13.3 10.7 24 24 24h368c13.3 0 24-10.7 24-24V344c0-13.3-10.7-24-24-24zM320 448h-64v-96h64v96zm288 0H352v-96h256v96z\"]\n};\nvar faPoo = {\n prefix: 'fal',\n iconName: 'poo',\n icon: [512, 512, [], \"f2fe\", \"M343.7 368H168.3c-5.8 0-9.8 5.7-7.8 11 10.5 27.9 58.4 53 95.5 53s85-25.1 95.5-53c2-5.3-2-11-7.8-11zM192 320c17.7 0 32-14.3 32-32s-14.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-32zm156.2 86.7c5.1-11.7 7.8-24.5 7.8-37.7 0-39.2-23.9-72.9-57.8-87.4 1.2-5.7 1.8-11.6 1.8-17.6 0-37.2-23.3-69.2-56-82v-2C372 52 320 0 256 0c-6.8 0-12.7.9-18.2 1.7-11 1.7-20.2 9-24.5 19.3-4.3 10.2-2.9 22 3.5 31 3.3 4.6 7.2 12.1 7.2 22 0 21-17 38-38 38h-14c-48.5 0-88 39.5-88 88 0 5.9.6 11.8 1.8 17.6C51.9 232.1 28 265.8 28 305c0 13.2 2.7 26 7.8 37.7C13.8 360.1 0 387 0 417c0 52.4 42.6 95 95 95h322c52.4 0 95-42.6 95-95 0-30-13.8-56.9-35.8-74.3zM417 480H95c-34.8 0-63-28.2-63-63 0-31.4 23-57.2 53.1-62C69.9 343.5 60 325.5 60 305c0-34.8 28.2-63 63-63h12.3c-11.7-10.3-19.3-25.2-19.3-42 0-30.9 25.1-56 56-56h14c38.7 0 70-31.3 70-70 0-15.2-5-29.2-13.2-40.7 4.3-.7 8.7-1.3 13.2-1.3 46.4 0 84 37.6 84 84 0 9.9-2 19.2-5.1 28h5.1c30.9 0 56 25.1 56 56 0 16.8-7.6 31.7-19.3 42H389c34.8 0 63 28.2 63 63 0 20.5-9.9 38.5-25.1 50 30 4.8 53.1 30.6 53.1 62 0 34.8-28.2 63-63 63z\"]\n};\nvar faPooStorm = {\n prefix: 'fal',\n iconName: 'poo-storm',\n icon: [448, 512, [], \"f75a\", \"M351.9 208.8zM320 304h-59.5l11-44.1c1.2-4.8.1-9.8-2.9-13.7s-7.7-6.2-12.6-6.2h-80c-7.3 0-13.8 5-15.5 12.1l-32 128C126 390.3 133.7 400 144 400h61.6l-13.4 93.7c-1.6 11.1 7.7 18.2 15.8 18.2 8.5 0 12.7-6.2 13.6-7.6 3.4-5.3 111.9-175.8 111.9-175.8 6.8-10.7-1-24.5-13.5-24.5zm-85.7 121.2l5.6-38.9c.7-4.6-.7-9.2-3.8-12.7-3-3.5-7.5-5.5-12.1-5.5h-59.5l24-96h47l-11 44.1c-2.5 10.2 5.2 19.9 15.5 19.9h50.8c-24.1 37.9-42.6 66.9-56.5 89.1zm158.6-227.4c.1-1.9.2-3.8.2-5.8 0-36-22.8-66.8-54.9-79.3v-.7C338.3 50.2 287 0 224 0c-6.5 0-12.4.8-17.8 1.6-11.1 1.7-20.5 9.1-24.7 19.4s-2.8 22.2 3.8 31.2c3.1 4.1 6.7 10.9 6.7 19.7 0 19.1-16.4 34.7-36.6 34.7h-13.7c-47.9 0-86.9 38.3-86.9 85.3 0 1.9.1 3.8.2 5.8-32.6 16.5-55 49.9-55 87.6 0 52.9 42.7 95.8 96 98.2 0-3.7.5-7.5 1.4-11.2l5.1-20.4h-1.9C62.9 352 32 322 32 285.3c0-34.8 27.9-63.3 63-66.1-5-8-8.2-17.2-8.2-27.2 0-29.5 24.6-53.3 54.9-53.3h13.7c37.9 0 68.6-29.8 68.6-66.7 0-14.5-4.9-27.8-12.9-38.7 4.2-.6 8.5-1.3 12.9-1.3 45.4 0 82.3 35.8 82.3 80 0 9.4-2 18.3-5 26.7h5c30.3 0 54.9 23.9 54.9 53.3 0 10.1-3.2 19.2-8.2 27.2 35.1 2.8 63 31.3 63 66.1 0 33.4-25.7 61-58.9 65.7-4 6.3-11.5 18.1-21 33h11.3c55.5 0 100.6-44.3 100.6-98.7 0-37.7-22.4-71.1-55.1-87.5z\"]\n};\nvar faPoop = {\n prefix: 'fal',\n iconName: 'poop',\n icon: [512, 512, [], \"f619\", \"M476.17 342.71C481.28 331 484 318.22 484 305c0-39.19-23.86-72.92-57.81-87.42A86.68 86.68 0 0 0 428 200c0-37.25-23.26-69.16-56.02-81.99.01-.67.02-1.34.02-2.01C372 52.04 319.96 0 256 0c-6.79 0-12.73.85-18.24 1.73a31.995 31.995 0 0 0-24.51 19.28 32.005 32.005 0 0 0 3.53 30.98C220.08 56.58 224 64.12 224 74c0 20.95-17.05 38-38 38h-14c-48.52 0-88 39.48-88 88 0 5.95.62 11.84 1.81 17.58C51.86 232.08 28 265.81 28 305c0 13.22 2.71 25.99 7.83 37.71C13.77 360.14 0 387.04 0 417c0 52.38 42.62 95 95 95h322c52.38 0 95-42.62 95-95 0-29.96-13.77-56.86-35.83-74.29zM417 480H95c-34.79 0-63-28.21-63-63 0-31.39 23.02-57.21 53.06-62C69.93 343.49 60 325.48 60 305c0-34.79 28.21-63 63-63h12.31C123.57 231.74 116 216.82 116 200c0-30.93 25.07-56 56-56h14c38.66 0 70-31.34 70-70 0-15.21-4.98-29.19-13.22-40.67 4.34-.69 8.69-1.33 13.22-1.33 46.39 0 84 37.61 84 84 0 9.87-2.02 19.2-5.14 28H340c30.93 0 56 25.07 56 56 0 16.82-7.57 31.74-19.31 42H389c34.79 0 63 28.21 63 63 0 20.48-9.93 38.49-25.06 50 30.04 4.79 53.06 30.61 53.06 62 0 34.79-28.21 63-63 63z\"]\n};\nvar faPopcorn = {\n prefix: 'fal',\n iconName: 'popcorn',\n icon: [512, 512, [], \"f819\", \"M440.17 138.22a68 68 0 0 0-19.8-22.31 66.9 66.9 0 0 0-49.47-61.38 67.33 67.33 0 0 0-68-35.65A67.69 67.69 0 0 0 255.94 0a65.92 65.92 0 0 0-46.47 18.89 67.18 67.18 0 0 0-68 35.64C110.7 62.78 93 90 91.74 116a65.84 65.84 0 0 0-19.83 22.78 64.67 64.67 0 0 0-3.37 54.86l39.76 290.68A32 32 0 0 0 140 512h232.35a32 32 0 0 0 31.73-27.68l40.08-293c5.92-17.13 5.3-36.23-3.99-53.1zM140 480l-39.28-288H176l16.22 288zm148.06 0h-63.78l-16.21-288h96.24zm84.26 0h-52.16l16.21-288h75.28zM98 160c4.42-15.78 17.82-23.38 29.78-24.57-13.9-26.22 9.64-56.43 38.11-50.43.55-29.22 34.33-44.9 56.37-27.17 11.74-41.86 67.59-25.63 67.59 0C312.6 40 345.94 56 346.49 85c28.57-6 51.45 23.81 38.15 50.45 12 1.2 25.44 9.11 29.74 24.57z\"]\n};\nvar faPortalEnter = {\n prefix: 'fal',\n iconName: 'portal-enter',\n icon: [512, 512, [], \"e022\", \"M448,0c-49.10352,0-60.52539,142.78711-63.17578,216h-3.35547l-9.03126-27.125c-8.125-24.3125-24.18749-44-44.5-58.03125C347,117.90625,360,96.73438,360,72a72,72,0,0,0-144,0,71.00847,71.00847,0,0,0,4.18749,23.71875A112.98756,112.98756,0,0,0,135.4375,108.5L89.25,132.5625a52.01084,52.01084,0,0,0,52.4375,89.82812l18.9375-9.84374L101.75,344H52a52,52,0,0,0,0,104h62.90625A83.90044,83.90044,0,0,0,192.125,397.07812l19.31249-39.73437,43.68751,19.625L235.5,445.70312A52.05212,52.05212,0,0,0,271.18749,510,52.89215,52.89215,0,0,0,285.5,512a52.24717,52.24717,0,0,0,50-37.6875l24.375-85.40625a84.15978,84.15978,0,0,0-12-71.10937A85.07673,85.07673,0,0,0,367.09375,320H396a51.95957,51.95957,0,0,0,20.75977-99.60938C419.97852,111.33594,437.041,48.01172,448,33.875,460.125,49.51562,480,124.45312,480,256s-19.875,206.48438-32,222.125c-8.75586-11.29492-21.46094-53.98438-27.89648-126.125H388.168c6.18359,73.043,21.54687,160,59.832,160,62.21875,0,64-229.79688,64-256S510.21875,0,448,0ZM288,32a40,40,0,1,1-40,40A39.997,39.997,0,0,1,288,32ZM162.6875,384.48438C155.25,401.875,133.875,416,114.9375,416H52a20,20,0,0,1,0-40h62.90625a11.9977,11.9977,0,0,0,11.03125-7.28125l26.71875-56.875A83.10126,83.10126,0,0,0,182.625,343.26562ZM396,288H367.03125c-20.6875,0-42.78125-15.92188-49.3125-35.54688L304.125,211.65625a43.28918,43.28918,0,0,0-15-20.67187l-41.46875,103.6875,52.78124,23.71874A52.30819,52.30819,0,0,1,329.125,380.125L304.71875,465.5c-7.22492,25.37752-45.81231,14.7403-38.46875-11l24.40625-85.375a12.07949,12.07949,0,0,0-6.625-14.25s-85.8125-39.04688-88.71875-41.17188a52.12113,52.12113,0,0,1-18.5-57.875l37.75-87.5625s-16.90624-3.78124-20.5-3.78124a43.34675,43.34675,0,0,0-22.5,6.3125l-45.25,23.51562a23.5854,23.5854,0,0,1-10.28125,2.84375,19.9989,19.9989,0,0,1-10.3125-37.14063l45.25-23.53124A83.78091,83.78091,0,0,1,194.09375,124.5a85.03565,85.03565,0,0,1,20.5,2.53125l68.1875,17.04687A83.59572,83.59572,0,0,1,342.09375,199l13.59374,40.79688A11.979,11.979,0,0,0,367.06249,248H396a20,20,0,0,1,0,40Z\"]\n};\nvar faPortalExit = {\n prefix: 'fal',\n iconName: 'portal-exit',\n icon: [512, 512, [], \"e023\", \"M460,216H445.46875l-9.03125-27.125c-8.125-24.3125-24.1875-44-44.5-58.03125C411,117.90625,424,96.73438,424,72a72,72,0,0,0-144,0,71.00848,71.00848,0,0,0,4.1875,23.71875A112.98758,112.98758,0,0,0,199.4375,108.5L153.25,132.5625a51.63613,51.63613,0,0,0-15.418,14.24414C129.09766,71.17773,109.79688,0,72,0,15.15625,0,0,160.92188,0,256S15.15625,512,72,512c22.94727,0,38.99023-26.44922,50.082-64h56.82422A83.90044,83.90044,0,0,0,256.125,397.07812l19.3125-39.73437,43.6875,19.625L299.5,445.70312A52.05212,52.05212,0,0,0,335.1875,510,52.892,52.892,0,0,0,349.5,512a52.24717,52.24717,0,0,0,50-37.6875l24.375-85.40625a84.15978,84.15978,0,0,0-12-71.10937A85.07673,85.07673,0,0,0,431.09375,320H460a52,52,0,0,0,0-104ZM352,32a40,40,0,1,1-40,40A39.997,39.997,0,0,1,352,32ZM72.65625,480.09375C58.46875,474.60938,32,392.79688,32,256,32,121.32812,57.65625,39.95312,72,32.21875,86.34375,39.95312,112,121.32812,112,256c0,16.86133-.418,32.84961-1.14648,48h31.9082C143.582,287.01562,144,270.67969,144,256c0-13.10352-.32422-27.51758-.96875-42.5293a51.69161,51.69161,0,0,0,62.65625,8.91992l18.9375-9.84374L165.75,344H116a51.81787,51.81787,0,0,0-24.86914,97.377C84.47656,464.63086,77.57812,477.99805,72.65625,480.09375ZM226.6875,384.48438C219.25,401.875,197.875,416,178.9375,416H116a20,20,0,0,1,0-40h62.90625a11.9977,11.9977,0,0,0,11.03125-7.28125l26.71875-56.875A83.10126,83.10126,0,0,0,246.625,343.26562ZM460,288H431.03125c-20.6875,0-42.78125-15.92188-49.3125-35.54688L368.125,211.65625a43.28905,43.28905,0,0,0-15-20.67187l-41.46875,103.6875,52.78125,23.71874A52.3082,52.3082,0,0,1,393.125,380.125L368.71875,465.5A19.97861,19.97861,0,0,1,349.5,480a20.38928,20.38928,0,0,1-5.5-.76562A20.014,20.014,0,0,1,330.25,454.5l24.40625-85.375a12.07948,12.07948,0,0,0-6.625-14.25s-85.8125-39.04688-88.71875-41.17188a52.12113,52.12113,0,0,1-18.5-57.875l37.75-87.5625s-16.90625-3.78124-20.5-3.78124a43.34675,43.34675,0,0,0-22.5,6.3125l-45.25,23.51562a23.5854,23.5854,0,0,1-10.28125,2.84375,19.9989,19.9989,0,0,1-10.3125-37.14063l45.25-23.53124A83.78091,83.78091,0,0,1,258.09375,124.5a85.03559,85.03559,0,0,1,20.5,2.53125l68.1875,17.04687A83.59571,83.59571,0,0,1,406.09375,199l13.59375,40.79688A11.979,11.979,0,0,0,431.0625,248H460a20,20,0,0,1,0,40Z\"]\n};\nvar faPortrait = {\n prefix: 'fal',\n iconName: 'portrait',\n icon: [384, 512, [], \"f3e0\", \"M320 0H64C28.7 0 0 28.7 0 64v384c0 35.3 28.7 64 64 64h256c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64zm32 448c0 17.6-14.4 32-32 32H64c-17.6 0-32-14.4-32-32V64c0-17.6 14.4-32 32-32h256c17.6 0 32 14.4 32 32v384zM192 288c44.2 0 80-35.8 80-80s-35.8-80-80-80-80 35.8-80 80 35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm46.8 144c-19.5 0-24.4 7-46.8 7s-27.3-7-46.8-7c-21.2 0-41.8 9.4-53.8 27.4C84.2 342.1 80 355 80 368.9V408c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-39.1c0-14 9-32.9 33.2-32.9 12.4 0 20.8 7 46.8 7 25.9 0 34.3-7 46.8-7 24.3 0 33.2 18.9 33.2 32.9V408c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-39.1c0-13.9-4.2-26.8-11.4-37.5-12.1-18-32.7-27.4-53.8-27.4z\"]\n};\nvar faPoundSign = {\n prefix: 'fal',\n iconName: 'pound-sign',\n icon: [320, 512, [], \"f154\", \"M308 368h-16.101c-6.627 0-12 5.373-12 12v62.406H97.556V288H204c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12H97.556V150.423c0-41.981 30.702-78.322 85.84-78.322 27.902 0 51.392 12.351 63.42 20.131 5.111 3.306 11.893 2.213 15.753-2.494l10.665-13.006c4.488-5.474 3.283-13.605-2.583-17.568C255.331 48.814 224.167 32 183.396 32 107.58 32 53.695 82.126 53.695 147.916V256H20c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h33.695v155.032H12c-6.627 0-12 5.373-12 12V468c0 6.627 5.373 12 12 12h296c6.627 0 12-5.373 12-12v-88c0-6.627-5.373-12-12-12z\"]\n};\nvar faPowerOff = {\n prefix: 'fal',\n iconName: 'power-off',\n icon: [512, 512, [], \"f011\", \"M388.5 46.3C457.9 90.3 504 167.8 504 256c0 136.8-110.8 247.7-247.5 248C120 504.3 8.2 393 8 256.4 7.9 168 54 90.3 123.5 46.3c5.8-3.7 13.5-1.8 16.9 4.2l3.9 7c3.1 5.6 1.3 12.6-4.1 16C79.9 112 40 179.6 40 256c0 119.9 97.3 216 216 216 119.9 0 216-97.3 216-216 0-77-40.1-144.2-100.3-182.4-5.4-3.4-7.2-10.5-4.1-16l3.9-7c3.4-6.1 11.2-7.9 17-4.3zM272 276V12c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v264c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12z\"]\n};\nvar faPray = {\n prefix: 'fal',\n iconName: 'pray',\n icon: [384, 512, [], \"f683\", \"M240 144c39.7 0 72-32.3 72-72S279.7 0 240 0s-72 32.3-72 72 32.3 72 72 72zm0-112c22.05 0 40 17.95 40 40s-17.95 40-40 40-40-17.95-40-40 17.95-40 40-40zm-20.75 294.89c20.49 24.41 55.05 20.13 70.56 3.05l80.13-88c18.74-18.75 18.74-49.14 0-67.88-18.75-18.75-49.14-18.75-67.88 0l-42.31 49.69-31.31-35.16C213.2 170.43 190.46 160 166.06 160c-38.53 0-61.85 24.24-71.17 41.53l-49.38 92.04C22.5 336.5 31.8 385.77 66.94 416H48c-26.47 0-48 21.53-48 48s21.53 48 48 48h202.03c20.84 0 39.37-13.29 46.1-33.07 6.47-19.02.51-39.11-15.18-51.19L178.2 352.79l24.49-45.62 16.56 19.72zm-82.44 35.33l124.61 90.88c11.1 8.54 3.3 26.9-11.4 26.9H48c-8.81 0-16-7.17-16-16s7.19-16 16-16h138.25l-90.03-50.02c-32-20.44-39.72-57.17-22.5-89.28l49.34-91.98c13.71-25.43 56.55-36.54 80.88-7.55l54.34 64.67 66.4-77.16c6.25-6.25 16.38-6.25 22.63 0s6.25 16.38 0 22.63l-81.19 89.11c-7.66 6.34-17.61 3.55-22.38-2.12l-46.94-55.84-59.99 111.76z\"]\n};\nvar faPrayingHands = {\n prefix: 'fal',\n iconName: 'praying-hands',\n icon: [640, 512, [], \"f684\", \"M502.58 340.23l127.06 39.99c5.14 1.58 10.35-2.26 10.35-7.65v-16.74c0-3.51-2.29-6.61-5.65-7.65L512 309.64v-66.51c0-22.28-5.81-44.17-16.87-63.51L408.65 28.26C398.71 10.83 380.07 0 359.99 0 345.2 0 330.73 6.01 320 16.94 309.27 6.01 294.8 0 280.01 0c-20.08 0-38.72 10.83-48.66 28.26l-86.49 151.37A128.015 128.015 0 0 0 128 243.14v66.51L5.65 348.18A8.011 8.011 0 0 0 0 355.83v16.74c0 5.38 5.21 9.23 10.35 7.65l127.06-39.99c13.42-4.13 22.58-16.54 22.58-30.58v-66.51c0-16.71 4.36-33.13 12.65-47.63l86.51-151.4c6.93-12.16 21.84-15.16 32.75-8.94 11.5 6.58 15.5 21.25 8.94 32.75l-64.19 112.33A96.022 96.022 0 0 0 224 227.88v84.13c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-64c0-13.25 10.75-24 24-24s24 10.75 24 24v86.08c0 35.86-23.87 67.34-58.39 77.03L5.84 479.68a8.008 8.008 0 0 0-5.84 7.7V504c0 5.3 5.06 9.13 10.16 7.7l244.09-69.77c28.41-7.97 51.4-26.63 65.75-50.73 14.35 24.09 37.34 42.76 65.75 50.73l244.09 69.77c5.1 1.43 10.16-2.4 10.16-7.7v-16.62c0-3.59-2.39-6.73-5.84-7.7l-239.77-68.56c-34.53-9.69-58.39-41.17-58.39-77.03v-86.08c0-13.25 10.75-24 24-24s24 10.75 24 24v64c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-84.13c0-16.71-4.36-33.13-12.65-47.63L339.16 67.92c-6.56-11.5-2.56-26.17 8.94-32.75 10.97-6.26 25.87-3.14 32.75 8.94l86.51 151.4a95.994 95.994 0 0 1 12.65 47.63v66.51c-.01 14.04 9.15 26.44 22.57 30.58zM374.27 193.85c-6.35-1.68-13.14-2.26-20.16-1.54-13.66 1.4-25.37 8.22-34.11 17.95-8.73-9.73-20.45-16.55-34.11-17.95-7.01-.72-13.8-.14-20.16 1.54L320 98.89l54.27 94.96z\"]\n};\nvar faPrescription = {\n prefix: 'fal',\n iconName: 'prescription',\n icon: [384, 512, [], \"f5b1\", \"M278.63 352l103.03-103.03c3.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 329.37 150.63 224H160c53.02 0 96-42.98 96-96s-42.98-96-96-96H8c-4.42 0-8 3.58-8 8v272c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-88h73.37l128 128-103.03 103.03c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0L256 374.63l103.03 103.03c3.12 3.12 8.19 3.12 11.31 0l11.31-11.31c3.12-3.12 3.12-8.19 0-11.31L278.63 352zM32 192V64h128c35.29 0 64 28.71 64 64s-28.71 64-64 64H32z\"]\n};\nvar faPrescriptionBottle = {\n prefix: 'fal',\n iconName: 'prescription-bottle',\n icon: [384, 512, [], \"f485\", \"M360 0H24C10.8 0 0 10.8 0 24v80c0 13.2 10.8 24 24 24h8v352c0 17.6 14.4 32 32 32h256c17.6 0 32-14.4 32-32V128h8c13.2 0 24-10.8 24-24V24c0-13.2-10.8-24-24-24zm-40 480H64v-64h88c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H64v-64h88c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H64v-64h88c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H64v-64h256v352zm32-384H32V32h320v64z\"]\n};\nvar faPrescriptionBottleAlt = {\n prefix: 'fal',\n iconName: 'prescription-bottle-alt',\n icon: [384, 512, [], \"f486\", \"M104 320h56v56c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-56h56c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8h-56v-56c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v56h-56c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8zM360 0H24C10.8 0 0 10.8 0 24v80c0 13.2 10.8 24 24 24h8v352c0 17.6 14.4 32 32 32h256c17.6 0 32-14.4 32-32V128h8c13.2 0 24-10.8 24-24V24c0-13.2-10.8-24-24-24zm-40 480H64V128h256v352zm32-384H32V32h320v64z\"]\n};\nvar faPresentation = {\n prefix: 'fal',\n iconName: 'presentation',\n icon: [576, 512, [], \"f685\", \"M568 0H8C3.58 0 0 3.59 0 8.02v16.04c0 4.43 3.58 8.02 8 8.02h24v287.78c0 17.69 14.34 32.09 32 32.09h208v49.13l-85.66 85.89c-3.12 3.13-3.12 8.21 0 11.34l11.31 11.34a7.985 7.985 0 0 0 11.31 0L288 430.41l79.03 79.24a7.985 7.985 0 0 0 11.31 0l11.31-11.34c3.12-3.13 3.12-8.21 0-11.34L304 401.08v-49.13h208c17.66 0 32-14.4 32-32.09V32.09h24c4.42 0 8-3.59 8-8.02V8.02c0-4.43-3.58-8.02-8-8.02zm-56 320H64V32h448v288z\"]\n};\nvar faPrint = {\n prefix: 'fal',\n iconName: 'print',\n icon: [512, 512, [], \"f02f\", \"M432 192h-16v-82.75c0-8.49-3.37-16.62-9.37-22.63L329.37 9.37c-6-6-14.14-9.37-22.63-9.37H126.48C109.64 0 96 14.33 96 32v160H80c-44.18 0-80 35.82-80 80v96c0 8.84 7.16 16 16 16h80v112c0 8.84 7.16 16 16 16h288c8.84 0 16-7.16 16-16V384h80c8.84 0 16-7.16 16-16v-96c0-44.18-35.82-80-80-80zM320 45.25L370.75 96H320V45.25zM128.12 32H288v64c0 17.67 14.33 32 32 32h64v64H128.02l.1-160zM384 480H128v-96h256v96zm96-128H32v-80c0-26.47 21.53-48 48-48h352c26.47 0 48 21.53 48 48v80zm-80-88c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faPrintSearch = {\n prefix: 'fal',\n iconName: 'print-search',\n icon: [640, 512, [], \"f81a\", \"M637.66 487l-89-89c39-50.21 35.94-122.46-10.17-168.57a128 128 0 0 0-181 181c46.11 46.11 118.36 49.13 168.57 10.17l89 89a8 8 0 0 0 11.32 0l11.31-11.31a8 8 0 0 0-.03-11.29zM448 416a96 96 0 1 1 96-96 96 96 0 0 1-96 96zm-64 64H128v-96h173.75a159.68 159.68 0 0 1-10.33-32H32v-80a48.05 48.05 0 0 1 48-48h240.88c11.62-15.39 13.51-18.17 32.06-32H128l.1-160H288v64a32 32 0 0 0 32 32h64v45.56a157.9 157.9 0 0 1 32-10.32v-54a32 32 0 0 0-9.37-22.63L329.37 9.37A32 32 0 0 0 306.74 0H126.48C109.64 0 96 14.33 96 32v160H80a80 80 0 0 0-80 80v96a16 16 0 0 0 16 16h80v112a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-19.24a157.9 157.9 0 0 1-32-10.32zM320 45.25L370.75 96H320z\"]\n};\nvar faPrintSlash = {\n prefix: 'fal',\n iconName: 'print-slash',\n icon: [640, 512, [], \"f686\", \"M637 485.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zM192.1 32H352v64c0 17.7 14.3 32 32 32h64v64H316.3l40.6 32h139c26.5 0 48 21.5 48 48v80h-24.5l40.6 32c8.8-.1 15.9-7.2 15.9-16v-96c0-44.2-35.8-80-80-80h-16v-82.8c0-8.5-3.4-16.6-9.4-22.6L393.4 9.4c-6-6-14.1-9.4-22.6-9.4H190.5C173.6 0 160 14.3 160 32v36.9l32.1 25.3zM384 45.2L434.8 96H384zM448 480H192v-96h213l-40.6-32H96v-80c0-26.5 21.5-48 48-48h57.8L160 191.1v.9h-16c-44.2 0-80 35.8-80 80v96c0 8.8 7.2 16 16 16h80v112c0 8.8 7.2 16 16 16h288c8.8 0 16-7.2 16-16v-52.9l-32-25.2zm-8-192c0 .6.3 1.1.3 1.6l27.4 21.6c11.4-1.9 20.2-11.3 20.2-23.2 0-13.3-10.8-24-24-24S440 274.7 440 288z\"]\n};\nvar faProcedures = {\n prefix: 'fal',\n iconName: 'procedures',\n icon: [640, 512, [], \"f487\", \"M144 384c44.1 0 80-35.9 80-80s-35.9-80-80-80-80 35.9-80 80 35.9 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm384-32H272c-8.8 0-16 7.2-16 16v176H32V136c0-4.4-3.6-8-8-8H8c-4.4 0-8 3.6-8 8v368c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-56h576v56c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V336c0-61.9-50.1-112-112-112zm80 192H288V256h240c44.2 0 80 35.8 80 80v80zM136 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 8z\"]\n};\nvar faProjectDiagram = {\n prefix: 'fal',\n iconName: 'project-diagram',\n icon: [640, 512, [], \"f542\", \"M592 0h-96c-26.51 0-48 21.49-48 48v32H192V48c0-26.51-21.49-48-48-48H48C21.49 0 0 21.49 0 48v96c0 26.51 21.49 48 48 48h94.86l88.76 150.21c-4.77 7.46-7.63 16.27-7.63 25.79v96c0 26.51 21.49 48 48 48h96c26.51 0 48-21.49 48-48v-96c0-26.51-21.49-48-48-48h-96c-5.2 0-10.11 1.04-14.8 2.57l-83.43-141.18C184.8 172.59 192 159.2 192 144v-32h256v32c0 26.51 21.49 48 48 48h96c26.51 0 48-21.49 48-48V48c0-26.51-21.49-48-48-48zM32 144V48c0-8.82 7.18-16 16-16h96c8.82 0 16 7.18 16 16v96c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16zm336 208c8.82 0 16 7.18 16 16v96c0 8.82-7.18 16-16 16h-96c-8.82 0-16-7.18-16-16v-96c0-8.82 7.18-16 16-16h96zm240-208c0 8.82-7.18 16-16 16h-96c-8.82 0-16-7.18-16-16V48c0-8.82 7.18-16 16-16h96c8.82 0 16 7.18 16 16v96z\"]\n};\nvar faProjector = {\n prefix: 'fal',\n iconName: 'projector',\n icon: [640, 512, [], \"f8d6\", \"M337.54 136.17a8 8 0 0 0 11.31 0l11.31-11.32a8 8 0 0 0 0-11.31L281 34.34a8 8 0 0 0-11.31 0l-11.35 11.32a8 8 0 0 0 0 11.31zm177.61 0a8 8 0 0 0 11.31 0L605.66 57a8 8 0 0 0 0-11.31l-11.32-11.35a8 8 0 0 0-11.31 0l-79.19 79.2a8 8 0 0 0 0 11.31zM424 128h16a8 8 0 0 0 8-8V8a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v112a8 8 0 0 0 8 8zm168 64H480.68c-19.52-9.89-41.29-16-64.68-16s-45.16 6.11-64.68 16H48a48 48 0 0 0-48 48v160a48 48 0 0 0 48 48h48v56a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-56h223.32c19.52 9.89 41.29 16 64.68 16s45.16-6.11 64.68-16H512v56a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-56h48a48 48 0 0 0 48-48V240a48 48 0 0 0-48-48zM48 416a16 16 0 0 1-16-16V240a16 16 0 0 1 16-16h261.37C286.38 249.52 272 283 272 320s14.38 70.48 37.37 96zm368 16a112 112 0 1 1 112-112 112.16 112.16 0 0 1-112 112zm192-32a16 16 0 0 1-16 16h-69.37c23-25.52 37.37-58.95 37.37-96s-14.38-70.48-37.37-96H592a16 16 0 0 1 16 16zM104 296a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm80 0a24 24 0 1 0 24 24 24 24 0 0 0-24-24z\"]\n};\nvar faPumpMedical = {\n prefix: 'fal',\n iconName: 'pump-medical',\n icon: [384, 512, [], \"e06a\", \"M226.67,277.33h-40v-40A13.33,13.33,0,0,0,173.33,224H146.67a13.33,13.33,0,0,0-13.34,13.33v40h-40A13.33,13.33,0,0,0,80,290.67v26.66a13.33,13.33,0,0,0,13.33,13.34h40v40A13.33,13.33,0,0,0,146.67,384h26.66a13.33,13.33,0,0,0,13.34-13.33v-40h40A13.33,13.33,0,0,0,240,317.33V290.67A13.33,13.33,0,0,0,226.67,277.33ZM379.31,100.69l-48-48A16,16,0,0,0,320,48H240V32A32,32,0,0,0,208,0H112A32,32,0,0,0,80,32v96.41a63.83,63.83,0,0,0-59.37,57.8L.27,442.21A64,64,0,0,0,64,512H256a64,64,0,0,0,63.74-69.79l-20.36-256A63.83,63.83,0,0,0,240,128.41V80h73.38l43.31,43.31a16,16,0,0,0,22.62-22.62ZM112,32h96v96H112ZM267.47,188.74,287.86,445.1A32,32,0,0,1,256,480H64a32,32,0,0,1-31.84-35.26L52.5,189.1A32,32,0,0,1,82.19,160H237.81A32,32,0,0,1,267.47,188.74Z\"]\n};\nvar faPumpSoap = {\n prefix: 'fal',\n iconName: 'pump-soap',\n icon: [384, 512, [], \"e06b\", \"M379.31,100.69l-48-48A16,16,0,0,0,320,48H240V32A32,32,0,0,0,208,0H112A32,32,0,0,0,80,32v96.41a63.83,63.83,0,0,0-59.37,57.8L.27,442.21A64,64,0,0,0,64,512H256a64,64,0,0,0,63.74-69.79l-20.36-256A63.83,63.83,0,0,0,240,128.41V80h73.38l43.31,43.31a16,16,0,0,0,22.62-22.62ZM112,32h96v96H112ZM267.47,188.74,287.86,445.1A32,32,0,0,1,256,480H64a32,32,0,0,1-31.84-35.26L52.5,189.1A32,32,0,0,1,82.19,160H237.81A32,32,0,0,1,267.47,188.74ZM139.22,234.39C102.58,283.31,84,319.27,84,341.25,84,382.47,118.09,416,160,416s76-33.53,76-74.75c0-22-18.58-57.94-55.23-106.86C170.86,221.17,149.16,221.17,139.22,234.39ZM160,384c-24.27,0-44-19.17-44-42.75,0-9.89,11.64-36.91,44-81.14,32.36,44.23,44,71.25,44,81.14C204,364.83,184.27,384,160,384Z\"]\n};\nvar faPumpkin = {\n prefix: 'fal',\n iconName: 'pumpkin',\n icon: [576, 512, [], \"f707\", \"M494.75 110.52C460.24 77.96 409.33 71.33 368 90.9V51.8c0-12.2-6.78-23.17-17.69-28.62L310.69 3.36c-7.97-3.97-17.38-4.45-25.66-1.27-8.31 3.16-15 9.72-18.34 18.03l-28.7 71.75c-4.78 2.44-9.4 5.19-13.74 8.38-43.41-30.29-103.78-26.76-143 10.26C28.84 159.92 0 225.78 0 295.95c0 70.16 28.84 136 81.25 185.4 39.19 36.98 99.53 40.6 143 10.28C252.04 512.08 286.62 512 288 512c6.57 0 37.2-.83 63.75-20.37 19.5 13.59 42.38 20.36 65.22 20.36 28.12 0 56.16-10.23 77.78-30.63C547.16 431.96 576 366.11 576 295.94s-28.84-136.02-81.25-185.42zM288 479.9c-121.09 0-124.26-367.9 0-367.9 121.22 0 124.21 367.9 0 367.9zm8.41-447.91L336 51.8v39.11c-18.21-8.78-38.95-11.99-59.17-10.01l19.58-48.91zM103.19 458.08C57.28 414.79 32 357.21 32 295.94s25.28-118.85 71.19-162.15c27.8-26.21 72.02-28.34 102.97-6.68-28.62 41.25-42.21 104.24-42.21 167.23 0 52.79 9.19 102.67 25.88 140.47 5.17 11.71 10.89 21.14 16.78 29.63-30.94 21.97-75.46 19.99-103.42-6.36zm369.62 0c-27.75 26.15-71.82 28.31-102.74 6.86 28.51-41.31 41.97-104.37 41.97-167.27 0-64.23-13.7-128.43-42.56-170.31 30.92-21.91 75.37-19.93 103.33 6.44C518.72 177.09 544 234.67 544 295.94s-25.28 118.85-71.19 162.14z\"]\n};\nvar faPuzzlePiece = {\n prefix: 'fal',\n iconName: 'puzzle-piece',\n icon: [576, 512, [], \"f12e\", \"M506.584 256c-52.307 0-72.012 46.513-87.263 27.506-20.125-25.082-2.028-107.233 3.475-131.942-34.229 6.371-137.243 24.274-163.836 2.178-16.619-13.81 31.313-43.496 31.313-86.443C290.272 26.025 256.447 0 214.842 0c-43.559 0-84.792 25.609-84.792 68.824 0 53.02 45.898 71.605 24.351 88.606C125.985 179.846 35.346 160.524 0 152.041v345.313c33.315 8.012 70.681 14.649 106.163 14.646 42.28 0 85.837-11.839 85.837-54.125 0-29.344-32-40.832-32-73.875 0-24.437 22.534-32 46.978-32C245.675 352 256 372.114 256 384c0 28.783-34.272 36.348-34.272 76.58 0 13.748 5.013 25.445 14.498 33.828 35.153 31.069 106.717 6.319 187.085 6.285-.958-3.426-26.807-86.724-7.702-111.907 16.715-22.023 48.578 29.106 92.52 29.106C550.227 417.893 576 377.616 576 336c0-42.835-26.227-80-69.416-80zm1.544 129.893c-30.002 0-41.364-33.893-81.513-33.893-53.566 0-54.841 64.979-44.272 117.816-36.396 3.424-107.025 16.434-124.926.614C237.293 452.645 288 428.279 288 384c0-37.683-33.317-64-81.022-64-74.981 0-102.885 59.829-56.167 122.037 4.726 6.293 9.189 12.237 9.189 15.838 0 33.69-94.005 20.629-128 13.925V191.971c63.255 11.657 160 18.136 160-46.505 0-28.567-29.95-42.982-29.95-76.642C162.05 44.146 190.265 32 214.842 32c20.035 0 43.43 9.244 43.43 35.298 0 29.426-34.272 40.752-34.272 80.61 0 57.828 100.845 50.931 158.22 43.093C374.142 245.294 373.959 320 429.086 320c29.143 0 43.674-32 77.498-32C531.543 288 544 311.301 544 336c0 34.413-20.977 49.893-35.872 49.893z\"]\n};\nvar faQrcode = {\n prefix: 'fal',\n iconName: 'qrcode',\n icon: [448, 512, [], \"f029\", \"M0 224h192V32H0v192zM32 64h128v128H32V64zm224-32v192h192V32H256zm160 160H288V64h128v128zM0 480h192V288H0v192zm32-160h128v128H32V320zM64 96h64v64H64V96zm320 64h-64V96h64v64zM64 352h64v64H64v-64zm352-64h32v128H320v-32h-32v96h-32V288h96v32h64v-32zm0 160h32v32h-32v-32zm-64 0h32v32h-32v-32z\"]\n};\nvar faQuestion = {\n prefix: 'fal',\n iconName: 'question',\n icon: [384, 512, [], \"f128\", \"M200.343 0C124.032 0 69.761 31.599 28.195 93.302c-14.213 21.099-9.458 49.674 10.825 65.054l42.034 31.872c20.709 15.703 50.346 12.165 66.679-8.51 21.473-27.181 28.371-31.96 46.132-31.96 10.218 0 25.289 6.999 25.289 18.242 0 25.731-109.3 20.744-109.3 122.251V304c0 16.007 7.883 30.199 19.963 38.924C109.139 360.547 96 386.766 96 416c0 52.935 43.065 96 96 96s96-43.065 96-96c0-29.234-13.139-55.453-33.817-73.076 12.08-8.726 19.963-22.917 19.963-38.924v-4.705c25.386-18.99 104.286-44.504 104.286-139.423C378.432 68.793 288.351 0 200.343 0zM192 480c-35.29 0-64-28.71-64-64s28.71-64 64-64 64 28.71 64 64-28.71 64-64 64zm50.146-186.406V304c0 8.837-7.163 16-16 16h-68.292c-8.836 0-16-7.163-16-16v-13.749c0-86.782 109.3-57.326 109.3-122.251 0-32-31.679-50.242-57.289-50.242-33.783 0-49.167 16.18-71.242 44.123-5.403 6.84-15.284 8.119-22.235 2.848l-42.034-31.872c-6.757-5.124-8.357-14.644-3.62-21.677C88.876 60.499 132.358 32 200.343 32c70.663 0 146.089 55.158 146.089 127.872 0 96.555-104.286 98.041-104.286 133.722z\"]\n};\nvar faQuestionCircle = {\n prefix: 'fal',\n iconName: 'question-circle',\n icon: [512, 512, [], \"f059\", \"M256 340c-15.464 0-28 12.536-28 28s12.536 28 28 28 28-12.536 28-28-12.536-28-28-28zm7.67-24h-16c-6.627 0-12-5.373-12-12v-.381c0-70.343 77.44-63.619 77.44-107.408 0-20.016-17.761-40.211-57.44-40.211-29.144 0-44.265 9.649-59.211 28.692-3.908 4.98-11.054 5.995-16.248 2.376l-13.134-9.15c-5.625-3.919-6.86-11.771-2.645-17.177C185.658 133.514 210.842 116 255.67 116c52.32 0 97.44 29.751 97.44 80.211 0 67.414-77.44 63.849-77.44 107.408V304c0 6.627-5.373 12-12 12zM256 40c118.621 0 216 96.075 216 216 0 119.291-96.61 216-216 216-119.244 0-216-96.562-216-216 0-119.203 96.602-216 216-216m0-32C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8z\"]\n};\nvar faQuestionSquare = {\n prefix: 'fal',\n iconName: 'question-square',\n icon: [448, 512, [], \"f2fd\", \"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-48zm16 400c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h352c8.822 0 16 7.178 16 16v352zm-192-92c-15.464 0-28 12.536-28 28s12.536 28 28 28 28-12.536 28-28-12.536-28-28-28zm7.67-24h-16c-6.627 0-12-5.373-12-12v-.381c0-70.343 77.44-63.619 77.44-107.408 0-20.016-17.761-40.211-57.44-40.211-29.144 0-44.265 9.649-59.211 28.692-3.908 4.98-11.054 5.995-16.248 2.376l-13.134-9.15c-5.625-3.919-6.86-11.771-2.645-17.177C153.658 133.514 178.842 116 223.67 116c52.32 0 97.44 29.751 97.44 80.211 0 67.414-77.44 63.849-77.44 107.408V304c0 6.627-5.373 12-12 12z\"]\n};\nvar faQuidditch = {\n prefix: 'fal',\n iconName: 'quidditch',\n icon: [640, 512, [], \"f458\", \"M638.3 15.5L628.3 3c-2.8-3.5-7.8-4-11.2-1.3l-244.2 193-45.4-57.1c-5-6.3-14.6-6-19.2.5l-48.6 68.6c-28.5.3-107.2 5-158 45.4C38.8 302.1 0 511.4 0 511.4c15.4.7 215.1 6.8 275.6-41.3 50.9-40.5 73.3-116.2 80-143.8l77.5-31.3c7.4-3 9.9-12.3 4.9-18.6l-45.2-56.7L637 26.8c3.4-2.8 4-7.8 1.3-11.3zM255.7 445.6C229 466.8 146.3 480 39.8 480h-.6c4.1-17.8 9-36.8 14.4-55.9l68.8-54.7c5-3.9 1.2-11.9-5-10.6l-46 9.7c15-41.6 32.3-77.3 50.1-91.5 33.6-26.7 89.7-37.2 133.9-38.4l67.8 85.1c-7.1 27.7-27.1 89.8-67.5 121.9zm87.1-148.8l-56.9-71.5 28.4-40.5c2.3-3.3 7.1-3.4 9.6-.3l67.6 84.9c2.5 3.2 1.3 7.9-2.5 9.3l-46.2 18.1zM496 351.5c-44.1 0-80 35.8-80 79.9s35.9 80.6 80 80.6 80-36.5 80-80.6-35.8-79.9-80-79.9zm0 127.9c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z\"]\n};\nvar faQuoteLeft = {\n prefix: 'fal',\n iconName: 'quote-left',\n icon: [512, 512, [], \"f10d\", \"M448 224h-64v-24c0-30.9 25.1-56 56-56h16c22.1 0 40-17.9 40-40V72c0-22.1-17.9-40-40-40h-16c-92.6 0-168 75.4-168 168v216c0 35.3 28.7 64 64 64h112c35.3 0 64-28.7 64-64V288c0-35.3-28.7-64-64-64zm32 192c0 17.7-14.3 32-32 32H336c-17.7 0-32-14.3-32-32V200c0-75.1 60.9-136 136-136h16c4.4 0 8 3.6 8 8v32c0 4.4-3.6 8-8 8h-16c-48.6 0-88 39.4-88 88v56h96c17.7 0 32 14.3 32 32v128zM176 224h-64v-24c0-30.9 25.1-56 56-56h16c22.1 0 40-17.9 40-40V72c0-22.1-17.9-40-40-40h-16C75.4 32 0 107.4 0 200v216c0 35.3 28.7 64 64 64h112c35.3 0 64-28.7 64-64V288c0-35.3-28.7-64-64-64zm32 192c0 17.7-14.3 32-32 32H64c-17.7 0-32-14.3-32-32V200c0-75.1 60.9-136 136-136h16c4.4 0 8 3.6 8 8v32c0 4.4-3.6 8-8 8h-16c-48.6 0-88 39.4-88 88v56h96c17.7 0 32 14.3 32 32v128z\"]\n};\nvar faQuoteRight = {\n prefix: 'fal',\n iconName: 'quote-right',\n icon: [512, 512, [], \"f10e\", \"M176 32H64C28.7 32 0 60.7 0 96v128c0 35.3 28.7 64 64 64h64v24c0 30.9-25.1 56-56 56H56c-22.1 0-40 17.9-40 40v32c0 22.1 17.9 40 40 40h16c92.6 0 168-75.4 168-168V96c0-35.3-28.7-64-64-64zm32 280c0 75.1-60.9 136-136 136H56c-4.4 0-8-3.6-8-8v-32c0-4.4 3.6-8 8-8h16c48.6 0 88-39.4 88-88v-56H64c-17.7 0-32-14.3-32-32V96c0-17.7 14.3-32 32-32h112c17.7 0 32 14.3 32 32v216zM448 32H336c-35.3 0-64 28.7-64 64v128c0 35.3 28.7 64 64 64h64v24c0 30.9-25.1 56-56 56h-16c-22.1 0-40 17.9-40 40v32c0 22.1 17.9 40 40 40h16c92.6 0 168-75.4 168-168V96c0-35.3-28.7-64-64-64zm32 280c0 75.1-60.9 136-136 136h-16c-4.4 0-8-3.6-8-8v-32c0-4.4 3.6-8 8-8h16c48.6 0 88-39.4 88-88v-56h-96c-17.7 0-32-14.3-32-32V96c0-17.7 14.3-32 32-32h112c17.7 0 32 14.3 32 32v216z\"]\n};\nvar faQuran = {\n prefix: 'fal',\n iconName: 'quran',\n icon: [448, 512, [], \"f687\", \"M246.25 338.38c15.03 0 29.97-2.72 44.03-7.97a18.75 18.75 0 0 0 12.78-17.8c0-10.34-8.44-18.77-18.81-18.77l-4.12.2c-45.69 0-82.88-37.17-82.88-82.86s37.19-82.86 82.84-82.86l4.16.2c8.94 0 16.66-6.34 18.38-15.06 1.84-9.12-3.12-18.08-11.78-21.28-14.5-5.44-29.5-8.19-44.59-8.19-70.12 0-127.19 57.06-127.19 127.19s57.05 127.2 127.18 127.2zm0-230.38c1.84 0 3.66.05 5.5.16-45.19 12.45-78.5 53.94-78.5 103.03 0 49.11 33.28 90.58 78.5 103.03-58.72 3.66-108.69-44.3-108.69-103.03 0-56.89 46.28-103.19 103.19-103.19zM448 392V24c0-13.3-10.7-24-24-24H80C35.8 0 0 35.8 0 80v368c0 35.35 28.65 64 64 64h372c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-3.3c-4-20.2-3.2-49.7.4-65.8 8.7-3.6 14.9-12.2 14.9-22.2zm-43.7 88H64c-17.67 0-32-14.33-32-32s14.33-32 32-32h340.3c-2.9 18.8-3.1 43.6 0 64zm11.7-96H64c-11.72 0-22.55 3.38-32 8.88V80c0-26.5 21.5-48 48-48h336v352zM292.72 155.27l-10.16 20.58-22.72 3.3c-6.03.86-11.06 5.09-12.94 10.89s-.31 12.16 4.06 16.41l16.47 16.03-3.91 22.62c-1.03 6 1.44 12.06 6.38 15.66 4.94 3.58 11.5 4.05 16.88 1.2l20.28-10.69 20.28 10.69a16.055 16.055 0 0 0 16.88-1.21c4.94-3.59 7.41-9.66 6.38-15.66l-3.91-22.62 16.47-16.03c4.38-4.25 5.94-10.61 4.06-16.41s-6.91-10.03-12.94-10.89l-22.72-3.3-10.16-20.58c-5.37-10.93-23.31-10.93-28.68.01zm24.22 39.41l22.12 3.2-16.03 15.6 3.78 22.02-19.75-10.41-19.75 10.41 3.78-22.02-16.03-15.6 22.12-3.2 9.88-20.03 9.88 20.03z\"]\n};\nvar faRabbit = {\n prefix: 'fal',\n iconName: 'rabbit',\n icon: [512, 512, [], \"f708\", \"M505.92 450.8a33.63 33.63 0 0 0-2.09-2.96L389.44 304h1.92c48.89 0 88.66-39.77 88.66-88.65 0-28.56-13.88-55.53-37.12-72.14-.61-.43-1.23-.85-1.87-1.24l-24.69-15.15c.27-.97.54-1.94.8-2.91C431.04 71.99 431.09 12.54 389.5 1.4 386.03.47 382.45 0 378.84 0 361.27 0 347.12 10.35 336 24.48 324.88 10.35 310.74.01 293.17 0h-.02c-3.6 0-7.19.47-10.65 1.4-41.6 11.14-41.55 70.59-27.64 122.52 2.3 8.58 5.03 16.98 8.17 25.11-2.69 6.53-4.63 13.43-5.81 20.63-.82 5.04-1.24 10.2-1.24 15.34v41.67c-67.32 11.34-122.72 57.92-146.87 119.97C98.03 339.8 85.33 336 71.97 336c-19.23 0-37.32 7.49-50.92 21.09-28.07 28.07-28.07 73.75 0 101.82C34.65 472.51 52.74 480 71.97 480c10.32 0 19.99-2.86 29.12-6.96 9.77 22.88 32.48 38.96 58.89 38.96H320c17.68 0 32-14.33 32-32 0-23.25-12.46-43.64-31.06-54.85l15.81-9.88 65.11 80.17c7.51 10.42 19.44 16.56 32.42 16.56H472c14.54 0 27.94-7.9 34.99-20.61 7.05-12.71 6.63-28.27-1.07-40.59zM95.97 416v23.03c-7.13 5.55-15.41 8.97-24 8.97-10.24 0-20.48-3.91-28.29-11.72-15.62-15.62-15.62-40.95 0-56.57C51.5 371.9 61.73 368 71.97 368c10 0 19.95 3.86 27.69 11.32-2.32 11.89-3.69 24.12-3.69 36.68zM472 480h-37.72c-2.76 0-5.32-1.42-6.79-3.76l-83.73-103.09L223.99 448H288c17.66 0 32 14.36 32 32H159.98c-17.68 0-32-14.33-32-32v-32c0-88.37 71.64-160 160.02-160v-71.01c0-3.47.28-6.87.82-10.19 1.53-9.35 4.93-17.49 9.61-24.3-4.77-10.19-9.16-21.9-12.64-34.87-11.32-42.25-9.08-79.55 5-83.32.77-.21 1.56-.31 2.37-.31 13.62 0 32.03 28.8 42.84 67.4C346.82 60.8 365.22 32 378.84 32c.81 0 1.6.1 2.37.31 14.08 3.77 16.32 41.08 5 83.32-2.41 9-5.3 17.34-8.41 25.11l46.48 28.51a56.632 56.632 0 0 1 23.72 46.1c0 31.29-25.37 56.65-56.66 56.65H352v36.34l126.78 159.42c3.33 5.33-.5 12.24-6.78 12.24zM368 192c0-8.84-7.16-16-16-16s-16 7.16-16 16 7.16 16 16 16 16-7.16 16-16z\"]\n};\nvar faRabbitFast = {\n prefix: 'fal',\n iconName: 'rabbit-fast',\n icon: [640, 512, [], \"f709\", \"M511.99 223.99c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16c0-8.83-7.16-16-16-16zm90.89-32.78c-.61-.43-58.52-35.99-58.52-35.99-2.54-1.57-9.73-5.07-18.35-7.52a261.57 261.57 0 0 0-4.89-22.02c-5.89-21.97-28.67-93.67-74.52-93.68h-.01c-37.96 0-44.2 41.84-44.49 43.33-32.09-17.15-55.46-13.15-69.7 1.09-8.71 8.71-20.55 28.35-4.36 63.28-31.09-16.38-61.55-27.7-88.06-27.7-45.73 0-86.28 18.33-117.89 52.43C108.58 151.29 90.85 144 71.97 144c-19.23 0-37.32 7.49-50.91 21.09-28.07 28.07-28.07 73.75 0 101.82C34.66 280.51 52.74 288 71.98 288c12.73 0 24.8-3.57 35.51-9.8 3.59 6.33 7.69 12.45 12.83 18.02l54.04 58.54-25.01 13.52a47.925 47.925 0 0 0-21.38 39.94v23.73c0 17.3 8.94 32.83 23.91 41.51 7.53 4.36 15.81 6.55 24.1 6.55 8.16 0 16.34-2.12 23.81-6.39l55.19-31.53 25.49 27.61a32.008 32.008 0 0 0 23.52 10.29H464c17.68 0 32-14.33 32-32 0-35.29-28.71-64-64-64h-48l70.4-32h96.96c48.88 0 88.65-39.77 88.65-88.65-.01-28.56-13.89-55.53-37.13-72.13zM96.26 246.93c-24.53 19.16-46.88 3.04-52.58-2.65-15.62-15.62-15.62-40.95 0-56.57 15.61-15.61 40.95-15.63 56.57 0 1.31 1.31 2.21 2.83 3.25 4.27-7.81 17.43-10.34 36.49-7.24 54.95zm87.65 198.9c-10.53 6.09-23.94-1.52-23.94-13.89v-23.73c0-5.36 2.66-10.34 5.84-12.55L196.74 379l35.96 38.96-48.79 27.87zm367.44-125.84H447.99l-64 26.67v-2.26c0-49.75-33.41-94.03-81.22-107.68l-42.38-12.11c-20.46-5.8-29.09 24.97-8.81 30.78l42.38 12.11c34.19 9.75 58.04 41.37 58.04 76.9v71.59h80c17.66 0 32 14.36 32 32H303.98L143.83 274.51c-22.36-24.22-22.66-61.37-.81-86.06 20.15-22.76 51.33-44.45 96.96-44.45 57.33 0 152.74 75.22 208.01 111.99 0-31.16-.53-30.77 3.54-43.01-15.31-3.53-37.75-17.86-59.17-39.28-30.93-30.92-47.64-64.35-37.33-74.65 10.74-10.74 45.14 7.8 74.66 37.33 3.25 3.25 6.25 6.54 9.18 9.81-11.63-44.51-8.08-82.19 7.72-82.19 13.94 0 32.92 30.05 43.61 69.97 4.1 15.28 6.36 29.86 6.98 42.49 14.17-1.01 24.77 3.23 30.44 6.03l56.65 34.75a56.632 56.632 0 0 1 23.72 46.1c.01 31.29-25.36 56.65-56.64 56.65z\"]\n};\nvar faRacquet = {\n prefix: 'fal',\n iconName: 'racquet',\n icon: [640, 512, [], \"f45a\", \"M615.5 59.6C560.6-17.9 433.3-19.2 332.7 52c-57.2 40.5-94.4 96-106.5 150.6-10.7 48.2-34.6 91.7-66.1 129.2-17.9-10-32.2.2-33.9 1.4L13.6 412c-14.4 10.1-18 30-7.8 44.5l29.4 41.9c9.9 14.1 29.7 18.2 44.5 7.8l112.6-78.8c9.5-6.7 13.7-17.6 13-28.4 36-13.7 73.8-21.7 112.3-21.7 31.6 0 112.3 21.8 211.5-48.4 101.8-72.2 140.6-192.8 86.4-269.3zM61.3 480l-29.4-41.8 112.6-78.8 29.4 41.9L61.3 480zm130-109.6l-9.7-13.9c18.7-21.7 34.8-44.9 47.4-69.6 11 33.1 29.1 49.8 44.4 61.5-27.6 3.9-55.2 11.5-82.1 22zm319.2-67.6c-85.6 60.6-194 62.4-238.3-.1-43.9-62-8.5-162.7 79-224.7 84.7-60 193.6-63.1 238.3 0 42 59.4 11.1 161.1-79 224.8z\"]\n};\nvar faRadar = {\n prefix: 'fal',\n iconName: 'radar',\n icon: [512, 512, [], \"e024\", \"M503.99585,264.19238C499.67236,397.36719,390.32422,504,256.06445,504,113.42725,504-1.092,383.64551,8.56958,238.97461c8.21411-122.999,108.14771-222.498,231.19507-230.44727,69.12842-4.46582,132.34009,19.71875,179.76977,61.42188l35.61524-35.60547a8.00327,8.00327,0,0,1,11.31689,0L477.78,45.65625a7.99914,7.99914,0,0,1-.00049,11.31348L265.03735,269.65625a8.003,8.003,0,0,1-11.31738,0L242.40649,258.3457a7.999,7.999,0,0,1,0-11.31445l45.89478-45.88281A62.51727,62.51727,0,0,0,256.06445,192a64.02183,64.02183,0,1,0,63.63306,71.02637A7.92009,7.92009,0,0,1,327.59277,256h16.08716a8.07465,8.07465,0,0,1,8.00928,8.82227,96.02921,96.02921,0,0,1-191.6311-10.73633c.93481-47.99121,38.821-88.7041,86.584-93.60156,24.45117-2.50684,46.55884,4.9082,64.52832,17.80078L345.228,144.23633C320.63379,124.48633,289.99316,112,256.06445,112c-70.7351,0-129.41064,51.33594-141.47021,118.63477,7.9414,5.82421,13.437,14.76367,13.437,25.36523,0,10.59961-5.49561,19.541-13.437,25.36523A143.92586,143.92586,0,0,0,230.69263,397.43359C236.51831,389.49414,245.46,384,256.06445,384c10.60425,0,19.5459,5.49414,25.37183,13.43359,64.83618-11.6123,114.85986-66.457,118.45776-133.668A8.05439,8.05439,0,0,1,407.866,256h16.031a7.97388,7.97388,0,0,1,8.02442,8.21484c-3.84912,83.64551-66.17969,151.876-147.02735,165.22461a31.67056,31.67056,0,0,1-57.65942,0A175.8776,175.8776,0,0,1,82.58008,284.82227a31.65708,31.65708,0,0,1,0-57.64649C96.3667,143.7168,168.68042,80,256.06445,80c42.8274,0,81.55811,15.9082,112.06226,41.34375l28.65576-28.64844C358.93091,60.02539,309.87915,40,256.06445,40,128.794,40,26.87354,150.583,41.38818,280.68848c11.05469,99.09082,90.85987,178.87695,189.97608,189.93164C358.82837,484.83594,467.561,387.37988,471.98071,263.81934A8.00326,8.00326,0,0,1,479.93213,256h16.01269A8.02725,8.02725,0,0,1,503.99585,264.19238Z\"]\n};\nvar faRadiation = {\n prefix: 'fal',\n iconName: 'radiation',\n icon: [496, 512, [], \"f7b9\", \"M247.9 320c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm0-96c17.6 0 32 14.4 32 32s-14.4 32-32 32-32-14.4-32-32 14.4-32 32-32zm51.2 113.2c-14.9 9.2-32.4 14.8-51.2 14.8s-36.3-5.6-51.2-14.8L133.8 437c-10.2 16.2-4.2 38.2 13.5 45.9C178 496.4 212 504 247.9 504s69.9-7.6 100.7-21.1c17.6-7.7 23.7-29.7 13.5-45.9l-63-99.8zM247.9 472c-30.4 0-59.8-6.2-86.8-18.1l47.9-76c12.6 4 25.7 6.1 38.8 6.1 13.3 0 26.4-2.1 39-6.1l48.6 75.8c-27.7 12.1-57.1 18.3-87.5 18.3zM32.5 256H151c0-34.3 18.3-64.2 45.7-81.2l-62.8-99.6c-6.2-9.8-17-15.3-27.8-15.3-7.1 0-14.2 2.3-20.1 7.3-45.2 38-76.7 91.7-85.7 152.5-2.9 19.2 12.6 36.3 32.2 36.3zm73.9-163.8l47.9 75.8c-15.2 15.7-26 35-31.5 56H32.5l-.3.4c7.6-51.6 34.2-98.7 74.2-132.2zM344.8 256h118.5c19.6 0 35.1-17.1 32.3-36.3-9-60.9-40.5-114.5-85.7-152.5-5.9-4.9-13-7.3-20.1-7.3-10.8 0-21.6 5.4-27.8 15.3l-62.8 99.6c27.3 17 45.6 46.9 45.6 81.2zm44.1-164.4c40.5 34.1 67 81.2 74.4 132.4H373c-5.5-21.1-16.4-40.3-31.6-56.1l47.5-76.3z\"]\n};\nvar faRadiationAlt = {\n prefix: 'fal',\n iconName: 'radiation-alt',\n icon: [496, 512, [], \"f7ba\", \"M217 256c0 17.1 13.9 31 31 31s31-13.9 31-31-13.9-31-31-31-31 13.9-31 31zm31 248c137 0 248-111 248-248S385 8 248 8 0 119 0 256s111 248 248 248zm0-464c119.1 0 216 96.9 216 216s-96.9 216-216 216S32 375.1 32 256 128.9 40 248 40zM69.3 264.2c4.4 4.6 10.6 7.3 17 7.3h99.8c-1.2-5-2.1-10.1-2.1-15.5 0-28.4 18.7-52.3 44.4-60.6l-52.7-84.3c-3.4-5.4-9-9.2-15.2-10.5-1.5-.3-3.1-.5-4.7-.5-4.7 0-9.3 1.4-13.2 4.1-47.9 33.2-76.9 85.3-79.7 142.9-.3 6.3 2 12.5 6.4 17.1zm84.2-128.3l30.5 48.8c-15.9 14.2-26.8 33.4-30.5 54.8H95.7c4.3-40.9 24.9-77.8 57.8-103.6zM312 256c0 5.4-.9 10.5-2.1 15.5h99.8c6.4 0 12.6-2.7 17-7.3s6.7-10.8 6.4-17.1c-2.8-57.5-31.8-109.6-79.7-142.9-3.9-2.7-8.5-4.1-13.2-4.1-1.5 0-3.1.2-4.7.5-6.3 1.3-11.8 5.1-15.2 10.5l-52.7 84.3c25.7 8.3 44.4 32.1 44.4 60.6zm30.5-120.1c32.8 25.7 53.5 62.7 57.9 103.5h-57.8c-3.7-21.4-14.6-40.6-30.5-54.8l30.4-48.7zM294 300.4c-11.6 12.1-27.9 19.6-46 19.6s-34.4-7.6-46-19.7l-52.5 84.1c-3.4 5.4-4.5 12.1-2.9 18.2 1.5 6.1 5.6 11.4 11 14.5 27.8 15.9 59.1 23.7 90.4 23.7s62.6-7.9 90.5-23.7c5.4-3.1 9.4-8.3 10.9-14.4 1.6-6.2.5-12.8-2.8-18.2L294 300.4zm-46 108.4c-23.1 0-45.9-5.2-66.5-15.2l30.4-48.6c11.3 4.6 23.5 7 36.1 7s24.8-2.4 36.1-7l30.4 48.6c-20.5 10-43.4 15.2-66.5 15.2z\"]\n};\nvar faRadio = {\n prefix: 'fal',\n iconName: 'radio',\n icon: [512, 512, [], \"f8d7\", \"M216 304H72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h144a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm-16 64H88a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM88 272h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H88a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm360-144H184.51L506.3 31a8 8 0 0 0 5.36-10L507 5.69a8 8 0 0 0-10-5.35L73.56 128H64a64 64 0 0 0-64 64v256a64 64 0 0 0 64 64h384a64 64 0 0 0 64-64V192a64 64 0 0 0-64-64zm32 320a32 32 0 0 1-32 32H64a32 32 0 0 1-32-32V192a32 32 0 0 1 32-32h384a32 32 0 0 1 32 32zM352 224a96 96 0 1 0 96 96 96 96 0 0 0-96-96zm0 160a64 64 0 1 1 64-64 64.07 64.07 0 0 1-64 64z\"]\n};\nvar faRadioAlt = {\n prefix: 'fal',\n iconName: 'radio-alt',\n icon: [512, 512, [], \"f8d8\", \"M448 128H184.51L506.3 31a8 8 0 0 0 5.36-10L507 5.69a8 8 0 0 0-10-5.35L73.56 128H64a64 64 0 0 0-64 64v256a64 64 0 0 0 64 64h384a64 64 0 0 0 64-64V192a64 64 0 0 0-64-64zm32 320a32 32 0 0 1-32 32H64a32 32 0 0 1-32-32V256h448zm0-224H32v-32a32 32 0 0 1 32-32h384a32 32 0 0 1 32 32zM216 384H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm152 64a80 80 0 1 0-80-80 80 80 0 0 0 80 80zm0-128a48 48 0 1 1-48 48 48.05 48.05 0 0 1 48-48zM72 352h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8z\"]\n};\nvar faRainbow = {\n prefix: 'fal',\n iconName: 'rainbow',\n icon: [576, 512, [], \"f75b\", \"M288 224.4c-52.9.1-96 42.6-96 95.5V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V319.9c0-35.3 28.8-63.6 64-63.7 35.2 0 64 28.4 64 63.7V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V319.9c0-53-43.1-95.5-96-95.5zM288 32C129.2 32 0 161 0 319.9V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V319.9C32 178.6 146.9 64.1 288 64c141.1 0 256 114.6 256 255.9V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V319.9C576 161 446.8 32 288 32zm0 95.8c-105.9 0-192 86.1-192 192V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V319.9c0-88.3 71.8-159.9 160-159.9s160 71.6 160 159.9V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V319.9c0-106-86.1-192-192-192.1z\"]\n};\nvar faRaindrops = {\n prefix: 'fal',\n iconName: 'raindrops',\n icon: [448, 512, [], \"f75c\", \"M406.6 252.7c-18.4-25.7-39.2-55-52.6-99.4-4.3-15-17.8-25.1-33.6-25.3-14.4-.3-29.6 10-34.2 25.2-13.4 44.3-34.2 73.6-52.6 99.5-21.3 30-41.5 58.4-41.5 100 0 70.2 57.4 127.3 128 127.3s128-57.1 128-127.3c-.1-41.8-20.2-70.1-41.5-100zM320 448c-52.9 0-96-42.7-96-95.3 0-31.4 15.7-53.5 35.6-81.5 18.8-26.5 42.2-59.4 57.1-108.7.2-.8.8-2.5 3.2-2.5 1.3.5 2.8.7 3.2 2.1l.1.3c15 49.5 38.4 82.4 57.2 108.8 20.6 28.9 35.5 49.8 35.5 81.4.1 52.7-43 95.4-95.9 95.4zm-80-306.1c0-21.4-9.8-35.8-19.2-49.8-7.9-11.6-16-23.6-21.4-42.2-2.9-10.6-12.2-17.8-23.1-17.9-12.4-.1-20.5 7-23.6 17.8-5.3 18.6-13.5 30.7-21.4 42.3-9.5 14-19.3 28.5-19.3 49.8 0 36.4 28.7 66.1 64 66.1s64-29.7 64-66.1zM176 176c-17.7 0-32-15.3-32-34.1 0-11 4.7-18.5 13.8-31.9 5.7-8.5 12.4-18.3 18.2-31.2 5.8 12.9 12.5 22.8 18.3 31.2 9 13.3 13.7 20.7 13.7 31.8 0 18.9-14.3 34.2-32 34.2zm-88.6 49.9c-2.9-10.6-12.2-17.8-23.1-17.9-10.1 1.2-20.5 7-23.6 17.8-5.3 18.6-13.5 30.7-21.4 42.3C9.8 282.1 0 296.6 0 317.9 0 354.3 28.7 384 64 384s64-29.7 64-66.1c0-21.4-9.8-35.8-19.2-49.8-7.9-11.6-16-23.6-21.4-42.2zM64 352c-17.7 0-32-15.3-32-34.1 0-11 4.7-18.5 13.8-31.9 5.7-8.5 12.4-18.3 18.2-31.2 5.8 12.9 12.5 22.8 18.3 31.2 9 13.3 13.7 20.7 13.7 31.8 0 18.9-14.3 34.2-32 34.2z\"]\n};\nvar faRam = {\n prefix: 'fal',\n iconName: 'ram',\n icon: [640, 512, [], \"f70a\", \"M496 96c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm117.31 11.61L576 89.27V80c0-26.47-21.53-48-48-48h-83.92C421.67 12.19 392.6 0 360.94 0c-55.25 0-100.16 43.04-104.16 97.29-13.17-1.89-26.9.05-38.37 6.79-18.31-10.89-43.09-10.45-61.16 1-12.28-6.66-26.56-8.7-40.88-5.67-17.03 3.84-31.41 14.97-39.62 30.16-16.94.88-33.06 9.11-44.12 23.12-10.81 13.95-15.06 31.86-12.12 48.95C7.62 213.09 0 229.81 0 247.69c0 17.91 7.5 34.59 20.19 46-3.06 17.3 1.25 35.27 12.12 48.98 10.78 14.02 26.78 22.3 43.78 23.16 4.83 9.1 11.99 16.48 20.41 21.98.14 3.96.33 7.93 1.26 11.81l21.12 87.86C122.34 501.86 135.21 512 150 512h57.53c20.95 0 36.12-19.76 31.02-39.86l-20.29-80.07a57.854 57.854 0 0 0 29.3 7.93c10.62 0 20.88-2.84 29.91-8.17 9.16 5.31 20.62 8.56 31.84 8.02 3.67-.12 7.17-1 10.69-1.77V480c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V356.83c5.69-3.63 11.01-7.98 15.38-13.51 10.81-13.95 15.06-31.86 12.12-48.95 12.88-11.45 20.5-28.17 20.5-46.05 0-8.54-1.81-16.77-4.97-24.31h92.63c14.91 0 28.81-8.03 36.28-21.02 17.97-31.55 20.06-45.08 20.06-52.52 0-18.35-10.22-34.77-26.69-42.86zM150 480l-19.82-82.44c9.14-.19 18.15-2.34 26.38-6.72 9.03 5.79 19.79 8.77 30.64 8.92L207.53 480H150zm266 0h-64v-84.09c8.85 2.29 18.22 2.72 27.62.68 15.13-3.41 27.89-12.78 36.38-25.42V480zm176.16-292.92c-1.75 3.08-4.94 4.92-8.5 4.92H444.55c-.06 3.56-.52 7.18-1.95 10.81l-5.16 13.02 12.22 6.84c18.61 10.44 19.64 40.06-.31 51.28l-12.22 6.84 5.16 13.02c8.51 21.38-9.05 44.04-30.59 40.3l-14.16-2.52-4.03 13.78c-5.48 18.83-28.59 28.04-44.84 13.67l-11.44-10.14-10.66 10.95c-8.68 8.94-25.64 12.3-38.12.45l-11.06-10.53-11.03 10.58c-10.31 9.92-27.25 9.91-37.16.16l-11.06-10.92-11.22 10.77c-10.59 10.09-28.12 9.72-38-.47l-10.44-10.83-11.44 9.77c-17.44 14.83-39.91 4.28-45.06-13.95L98 330.92l-14.25 2.56c-21.2 3.8-38.89-18.69-30.34-40.3l5.16-13.02-12.22-6.84c-18.61-10.44-19.64-40.06.31-51.28l12.22-6.84-5.16-13.02c-8.56-21.51 9.19-44.04 30.59-40.3l14.16 2.52 4.03-13.78c5.54-19.02 28.75-27.9 44.84-13.67l11.44 10.14 10.66-10.95c9.91-10.23 27.62-10.58 37.56-.69l11.09 10.97 11.25-10.77c8.42-8.09 21.16-9.19 31.28-4.01 11.35 34.96 43.84 60.46 82.54 60.46 39.98 0 72.5-32.39 72.84-72.3v-1.33c-.34-28.95-20.7-53.18-47.9-59.32-.12-.03-2.69-.6-4.26-.84-4.99-.78-9.59 2.87-9.59 7.92V82.5c0 3.68 2.5 6.94 6.1 7.69.04.01.07 0 .11 0 .01 0 0 .04.01.05 13.44 2.76 23.59 14.69 23.59 28.95 0 22.56-18.34 40.92-40.91 40.92-30.41 0-55.16-24.75-55.16-55.16C288 64.72 320.72 32 360.94 32c27.84 0 53.29 12.34 70.88 32H528c8.81 0 16 7.17 16 16v29.17l55.19 27.16c5.44 2.67 8.81 8.09 8.81 14.14 0 3.28-3.34 14.7-15.84 36.61z\"]\n};\nvar faRampLoading = {\n prefix: 'fal',\n iconName: 'ramp-loading',\n icon: [384, 512, [], \"f4d4\", \"M384 352V32c0-17.7-14.3-32-32-32H32C14.3 0 0 14.3 0 32v320c0 17.7 14.3 32 32 32h6.9L3.2 467.4C-5.9 488.5 9.6 512 32.6 512h318.9c23 0 38.5-23.5 29.4-44.6L345.1 384h6.9c17.7 0 32-14.3 32-32zm-32.6 128H32.6l68.6-160h181.7l68.5 160zm-20-128l-19.1-44.6c-5-11.8-16.6-19.4-29.4-19.4H101.1c-12.8 0-24.4 7.6-29.4 19.4L52.6 352H32V32h320v320h-20.6z\"]\n};\nvar faRandom = {\n prefix: 'fal',\n iconName: 'random',\n icon: [512, 512, [], \"f074\", \"M0 128v-8c0-6.6 5.4-12 12-12h105.8c3.3 0 6.5 1.4 8.8 3.9l89.7 97-21.8 23.6L109 140H12c-6.6 0-12-5.4-12-12zm502.6 278.6l-64 64c-20.1 20.1-54.6 5.8-54.6-22.6v-44h-25.7c-3.3 0-6.5-1.4-8.8-3.9l-89.7-97 21.8-23.6L367 372h17v-52c0-28.5 34.5-42.7 54.6-22.6l64 64c12.5 12.5 12.5 32.7 0 45.2zm-19.8-25.4l-64-64c-2.5-2.5-6.8-.7-6.8 2.8v128c0 3.6 4.3 5.4 6.8 2.8l64-64c1.6-1.5 1.6-4.1 0-5.6zm19.8-230.6l-64 64c-20.1 20.1-54.6 5.8-54.6-22.6v-52h-17L126.6 400.1c-2.3 2.5-5.5 3.9-8.8 3.9H12c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h97l240.4-260.1c2.3-2.5 5.5-3.9 8.8-3.9H384V64c0-28.5 34.5-42.7 54.6-22.6l64 64c12.5 12.5 12.5 32.7 0 45.2zm-19.8-25.4l-64-64c-2.5-2.5-6.8-.7-6.8 2.8v128c0 3.6 4.3 5.4 6.8 2.8l64-64c1.6-1.5 1.6-4.1 0-5.6z\"]\n};\nvar faRaygun = {\n prefix: 'fal',\n iconName: 'raygun',\n icon: [576, 512, [], \"e025\", \"M112,159.99684A16.00015,16.00015,0,1,0,128,175.997,16.00087,16.00087,0,0,0,112,159.99684ZM552.84375,97.69941l-96,47.99457A16.03507,16.03507,0,0,0,448,160.00661v-.00977H416V79.99613a16,16,0,1,0-32,0v80.00071H352V47.99584a16,16,0,1,0-32,0v49.7856A111.56316,111.56316,0,0,0,239.98047,63.996H195.40625L54.5,1.37042A15.99873,15.99873,0,0,0,32,15.99555l-.02734,81.8191A111.51592,111.51592,0,0,0,0,175.997c0,60.4771,48.03125,109.42481,107.99219,111.59475L38.4668,407.962a47.9323,47.9323,0,0,0,17.59375,65.57871l55.40625,31.99248a47.91657,47.91657,0,0,0,65.59375-17.59L304.377,267.41187A112.314,112.314,0,0,0,320,254.21253v49.78561a16,16,0,1,0,32,0v-112.001h32v80.00072a16,16,0,1,0,32,0V191.99713h32v-.041a15.97529,15.97529,0,0,0,8.84375,14.31067l96,48.0434A16.01141,16.01141,0,0,0,576,239.99951V112.01009A16.01117,16.01117,0,0,0,552.84375,97.69941ZM64,40.60515,116.61328,63.996h-4.59375A110.97556,110.97556,0,0,0,63.98438,75.20116Zm85.35742,431.32613a15.91027,15.91027,0,0,1-21.88672,5.89849L72.07617,445.84316a15.93689,15.93689,0,0,1-5.89844-21.883L144.71094,287.998h95.26953c.02734,0,.05078-.00781.07812-.00781h15.49024Zm90.62305-215.93357H112.01953a80.00072,80.00072,0,1,1,0-160.00144H239.98047a80.00072,80.00072,0,1,1,0,160.00144ZM544,214.095l-64-32.02764v-12.172L544,137.899ZM176,159.99684A16.00015,16.00015,0,1,0,192,175.997,16.00087,16.00087,0,0,0,176,159.99684Zm64,0A16.00015,16.00015,0,1,0,256,175.997,16.00087,16.00087,0,0,0,240,159.99684Z\"]\n};\nvar faReceipt = {\n prefix: 'fal',\n iconName: 'receipt',\n icon: [448, 512, [], \"f543\", \"M344 240H104c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h240c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm0 96H104c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h240c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM418.1 0c-5.8 0-11.8 1.8-17.3 5.7L357.3 37 318.7 9.2c-8.4-6-18.2-9.1-28.1-9.1-9.8 0-19.6 3-28 9.1L224 37 185.4 9.2C177 3.2 167.1.1 157.3.1s-19.6 3-28 9.1L90.7 37 47.2 5.7C41.8 1.8 35.8 0 29.9 0 14.4.1 0 12.3 0 29.9v452.3C0 499.5 14.3 512 29.9 512c5.8 0 11.8-1.8 17.3-5.7L90.7 475l38.6 27.8c8.4 6 18.2 9.1 28.1 9.1 9.8 0 19.6-3 28-9.1L224 475l38.6 27.8c8.4 6 18.3 9.1 28.1 9.1s19.6-3 28-9.1l38.6-27.8 43.5 31.3c5.4 3.9 11.4 5.7 17.3 5.7 15.5 0 29.8-12.2 29.8-29.8V29.9C448 12.5 433.7 0 418.1 0zM416 477.8L376 449l-18.7-13.5-18.7 13.5-38.6 27.8c-2.8 2-6 3-9.3 3-3.4 0-6.6-1.1-9.4-3.1L242.7 449 224 435.5 205.3 449l-38.6 27.8c-2.8 2-6 3-9.4 3-3.4 0-6.6-1.1-9.4-3.1L109.3 449l-18.7-13.5L72 449l-40 29.4V34.2L72 63l18.7 13.5L109.4 63 148 35.2c2.8-2 6-3 9.3-3 3.4 0 6.6 1.1 9.4 3.1L205.3 63 224 76.5 242.7 63l38.6-27.8c2.8-2 6-3 9.4-3 3.4 0 6.6 1.1 9.4 3.1L338.7 63l18.7 13.5L376 63l40-28.8v443.6zM344 144H104c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h240c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faRecordVinyl = {\n prefix: 'fal',\n iconName: 'record-vinyl',\n icon: [512, 512, [], \"f8d9\", \"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 464c-119.1 0-216-96.9-216-216S136.9 40 256 40s216 96.9 216 216-96.9 216-216 216zm0-320a104 104 0 1 0 104 104 104 104 0 0 0-104-104zm0 176a72 72 0 1 1 72-72 72.08 72.08 0 0 1-72 72zm0-96a24 24 0 1 0 24 24 24 24 0 0 0-24-24z\"]\n};\nvar faRectangleLandscape = {\n prefix: 'fal',\n iconName: 'rectangle-landscape',\n icon: [512, 512, [], \"f2fa\", \"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-48zm16 336c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16h416c8.8 0 16 7.2 16 16v288z\"]\n};\nvar faRectanglePortrait = {\n prefix: 'fal',\n iconName: 'rectangle-portrait',\n icon: [384, 512, [], \"f2fb\", \"M384 464V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48zM48 480c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h288c8.8 0 16 7.2 16 16v416c0 8.8-7.2 16-16 16H48z\"]\n};\nvar faRectangleWide = {\n prefix: 'fal',\n iconName: 'rectangle-wide',\n icon: [640, 512, [], \"f2fc\", \"M592 96H48c-26.5 0-48 21.5-48 48v224c0 26.5 21.5 48 48 48h544c26.5 0 48-21.5 48-48V144c0-26.5-21.5-48-48-48zm16 272c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16h544c8.8 0 16 7.2 16 16v224z\"]\n};\nvar faRecycle = {\n prefix: 'fal',\n iconName: 'recycle',\n icon: [512, 512, [], \"f1b8\", \"M201.728 62.049l-43.385 69.459c-3.511 5.622-10.916 7.332-16.537 3.819l-6.781-4.237c-5.619-3.511-7.329-10.912-3.819-16.533l43.387-69.48c37.575-60.12 125.263-60.084 162.816 0l46.217 74.015 12.037-52.14c1.491-6.458 7.934-10.484 14.392-8.993l7.794 1.799c6.458 1.491 10.484 7.934 8.993 14.392l-21.633 93.702c-1.491 6.458-7.934 10.484-14.392 8.993l-93.702-21.633c-6.458-1.491-10.484-7.934-8.993-14.392l1.799-7.794c1.491-6.458 7.934-10.484 14.392-8.993l52.202 12.052-46.251-74.047c-25.002-40.006-83.467-40.099-108.536.011zm295.56 239.071l-52.939-84.78c-3.511-5.623-10.916-7.334-16.538-3.821l-6.767 4.228c-5.62 3.512-7.329 10.913-3.819 16.534l52.966 84.798c26.605 42.568-4.054 97.92-54.272 97.92H310.627l37.858-37.858c4.686-4.686 4.686-12.284 0-16.97l-5.656-5.656c-4.686-4.686-12.284-4.686-16.97 0l-68 68c-4.686 4.686-4.686 12.284 0 16.971l68 68c4.686 4.686 12.284 4.686 16.97 0l5.656-5.657c4.686-4.686 4.686-12.284 0-16.971L310.627 448H415.88c75.274 0 121.335-82.997 81.408-146.88zM41.813 318.069l55.803-89.339 12.044 52.166c1.491 6.458 7.934 10.484 14.392 8.993l7.794-1.799c6.458-1.491 10.484-7.934 8.993-14.392l-21.633-93.702c-1.491-6.458-7.934-10.484-14.392-8.993l-93.702 21.633c-6.458 1.491-10.484 7.934-8.993 14.392l1.799 7.794c1.491 6.458 7.934 10.484 14.392 8.993l52.193-12.05-55.796 89.355C-25.188 364.952 20.781 448 96.115 448H196c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12H96.078c-50.199 0-80.887-55.335-54.265-97.931z\"]\n};\nvar faRedo = {\n prefix: 'fal',\n iconName: 'redo',\n icon: [512, 512, [], \"f01e\", \"M492 8h-10c-6.627 0-12 5.373-12 12v110.625C426.804 57.047 346.761 7.715 255.207 8.001 118.82 8.428 7.787 120.009 8 256.396 8.214 393.181 119.166 504 256 504c63.926 0 122.202-24.187 166.178-63.908 5.113-4.618 5.354-12.561.482-17.433l-7.069-7.069c-4.503-4.503-11.749-4.714-16.482-.454C361.218 449.238 311.065 470 256 470c-117.744 0-214-95.331-214-214 0-117.744 95.331-214 214-214 82.862 0 154.737 47.077 190.289 116H332c-6.627 0-12 5.373-12 12v10c0 6.627 5.373 12 12 12h160c6.627 0 12-5.373 12-12V20c0-6.627-5.373-12-12-12z\"]\n};\nvar faRedoAlt = {\n prefix: 'fal',\n iconName: 'redo-alt',\n icon: [512, 512, [], \"f2f9\", \"M457.4 9.4l-50.1 50.1C365.4 27.2 312.8 8 255.8 8 119.2 8.1 7.7 119.8 8 256.5S119.2 504 256 504c63.9 0 122.2-24.2 166.2-63.9 5.1-4.6 5.4-12.6.5-17.4l-7.1-7.1c-4.5-4.5-11.7-4.7-16.5-.5-39 35.1-89.4 54.9-143.1 54.9-118 0-214-95.6-214-214 0-118 95.6-214 214-214 46.5 0 90.7 14.9 127 41.7l-53.6 53.6c-20.1 20.1-5.9 54.6 22.6 54.6h128c17.7 0 32-14.3 32-32V32c0-28.5-34.6-42.7-54.6-22.6zM480 160H352L480 32z\"]\n};\nvar faRefrigerator = {\n prefix: 'fal',\n iconName: 'refrigerator',\n icon: [384, 512, [], \"e026\", \"M336,0H48A48,48,0,0,0,0,48V464a48,48,0,0,0,48,48H336a48,48,0,0,0,48-48V48A48,48,0,0,0,336,0Zm16,464a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V192H256V376a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V192h64Zm0-304H288V104a8,8,0,0,0-8-8H264a8,8,0,0,0-8,8v56H32V48A16,16,0,0,1,48,32H336a16,16,0,0,1,16,16Z\"]\n};\nvar faRegistered = {\n prefix: 'fal',\n iconName: 'registered',\n icon: [512, 512, [], \"f25d\", \"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm216 248c0 118.663-96.055 216-216 216-118.663 0-216-96.055-216-216 0-118.663 96.055-216 216-216 118.663 0 216 96.055 216 216zM359.387 374.293c-56.637-104.76-51.795-95.919-53.681-99.047 27.113-11.899 44.118-39.432 44.118-72.825 0-57.934-36.794-80.198-93.917-80.198h-71.086c-6.617 0-12 5.383-12 12V380c0 6.617 5.383 12 12 12h16.908c6.617 0 12-5.383 12-12v-94.854h51.111l54.004 100.532a11.983 11.983 0 0 0 10.57 6.321h19.416c9.1.001 14.878-9.717 10.557-17.706zm-93.371-127.528H213.73v-86.161h43.261c20.716 0 51.203 1.092 51.203 42.539-.001 27.314-15.768 43.622-42.178 43.622z\"]\n};\nvar faRemoveFormat = {\n prefix: 'fal',\n iconName: 'remove-format',\n icon: [640, 512, [], \"f87d\", \"M192 64h176l-44.56 133.68 25.35 20L400 64h176v56a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V48a16 16 0 0 0-16-16H176a16 16 0 0 0-16 16v21l32 25.19zm152 384h-72l44.55-133.64-25.35-20L240 448h-72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm293 37.31L23 1.8A7.86 7.86 0 0 0 11.79 3l-10 12.5A7.92 7.92 0 0 0 3 26.71l614 483.52a7.91 7.91 0 0 0 11.18-1.23l10-12.5a7.83 7.83 0 0 0-1.18-11.18z\"]\n};\nvar faRepeat = {\n prefix: 'fal',\n iconName: 'repeat',\n icon: [512, 512, [], \"f363\", \"M512 256c0 88.225-71.775 160-160 160H110.628l68.201 68.201c4.686 4.686 4.686 12.284 0 16.971l-5.656 5.656c-4.686 4.686-12.284 4.686-16.971 0l-98.343-98.343c-4.686-4.686-4.686-12.284 0-16.971l98.343-98.343c4.686-4.686 12.284-4.686 16.971 0l5.656 5.656c4.686 4.686 4.686 12.284 0 16.971L110.628 384H352c70.579 0 128-57.421 128-128 0-28.555-9.403-54.952-25.271-76.268-3.567-4.792-3.118-11.462 1.106-15.686l5.705-5.705c5.16-5.16 13.678-4.547 18.083 1.271C499.935 186.438 512 219.835 512 256zM57.271 332.268C41.403 310.952 32 284.555 32 256c0-70.579 57.421-128 128-128h241.372l-68.201 68.201c-4.686 4.686-4.686 12.284 0 16.971l5.656 5.656c4.686 4.686 12.284 4.686 16.971 0l98.343-98.343c4.686-4.686 4.686-12.284 0-16.971L355.799 5.172c-4.686-4.686-12.284-4.686-16.971 0l-5.656 5.656c-4.686 4.686-4.686 12.284 0 16.971L401.372 96H160C71.775 96 0 167.775 0 256c0 36.165 12.065 69.562 32.376 96.387 4.405 5.818 12.923 6.432 18.083 1.271l5.705-5.705c4.225-4.224 4.674-10.893 1.107-15.685z\"]\n};\nvar faRepeat1 = {\n prefix: 'fal',\n iconName: 'repeat-1',\n icon: [512, 512, [], \"f365\", \"M512 256c0 88.225-71.775 160-160 160H110.628l68.201 68.201c4.686 4.686 4.686 12.284 0 16.971l-5.656 5.656c-4.686 4.686-12.284 4.686-16.971 0l-98.343-98.343c-4.686-4.686-4.686-12.284 0-16.971l98.343-98.343c4.686-4.686 12.284-4.686 16.971 0l5.656 5.656c4.686 4.686 4.686 12.284 0 16.971L110.628 384H352c70.579 0 128-57.421 128-128 0-28.555-9.403-54.952-25.271-76.268-3.567-4.792-3.118-11.462 1.106-15.686l5.705-5.705c5.16-5.16 13.678-4.547 18.083 1.271C499.935 186.438 512 219.835 512 256zM57.271 332.268C41.403 310.952 32 284.555 32 256c0-70.579 57.421-128 128-128h241.372l-68.201 68.201c-4.686 4.686-4.686 12.284 0 16.971l5.656 5.656c4.686 4.686 12.284 4.686 16.971 0l98.343-98.343c4.686-4.686 4.686-12.284 0-16.971L355.799 5.172c-4.686-4.686-12.284-4.686-16.971 0l-5.656 5.656c-4.686 4.686-4.686 12.284 0 16.971L401.372 96H160C71.775 96 0 167.775 0 256c0 36.165 12.065 69.562 32.376 96.387 4.405 5.818 12.923 6.432 18.083 1.271l5.705-5.705c4.225-4.224 4.674-10.893 1.107-15.685zm172.224-29.275c0-6.444 3.401-9.847 9.847-9.847h17.365v-53.348c0-4.834.179-9.847.179-9.847h-.359s-1.79 3.939-3.938 5.729l-1.611 1.432c-4.655 4.298-9.489 4.117-13.786-.537l-4.654-5.013c-4.475-4.654-4.297-9.487.358-13.963l22.2-20.767c3.759-3.401 7.161-4.833 12.173-4.833h10.205c6.444 0 9.846 3.4 9.846 9.846v91.301h17.544c6.444 0 9.847 3.402 9.847 9.847v7.162c0 6.444-3.402 9.846-9.847 9.846h-65.522c-6.445 0-9.847-3.402-9.847-9.846v-7.162z\"]\n};\nvar faRepeat1Alt = {\n prefix: 'fal',\n iconName: 'repeat-1-alt',\n icon: [512, 512, [], \"f366\", \"M54.027 327.713C40.129 307.242 32 282.553 32 256c0-70.579 57.421-128 128-128h160v63.969c0 29.239 36.192 43.177 55.785 21.407l72-79.968c10.952-12.169 10.953-30.644 0-42.814l-72-79.974C356.226-11.114 320 2.738 320 32.026V96H160C71.775 96 0 167.775 0 256c0 33.913 10.612 65.391 28.683 91.299 4.427 6.348 13.606 6.936 18.785 1.185l5.488-6.096c3.667-4.073 4.149-10.14 1.071-14.675zM352 32l72 80-72 80V32zm131.317 132.701c-4.427-6.348-13.606-6.936-18.785-1.185l-5.488 6.096c-3.667 4.073-4.149 10.14-1.071 14.675C471.871 204.758 480 229.447 480 256c0 70.579-57.421 128-128 128H192v-63.969c0-29.239-36.192-43.177-55.785-21.407l-72 79.969c-10.952 12.169-10.953 30.644 0 42.814l72 79.974C155.774 523.113 192 509.264 192 479.974V416h160c88.225 0 160-71.775 160-160 0-33.913-10.612-65.391-28.683-91.299zM160 480l-72-80 72-80v160zm69.495-177.007c0-6.444 3.401-9.847 9.847-9.847h17.365v-53.348c0-4.834.179-9.847.179-9.847h-.359s-1.79 3.939-3.938 5.729l-1.611 1.432c-4.655 4.298-9.489 4.117-13.786-.537l-4.654-5.013c-4.475-4.654-4.297-9.487.358-13.963l22.2-20.767c3.759-3.401 7.161-4.833 12.173-4.833h10.205c6.444 0 9.846 3.4 9.846 9.846v91.301h17.544c6.444 0 9.847 3.402 9.847 9.847v7.162c0 6.443-3.402 9.846-9.847 9.846h-65.522c-6.445 0-9.847-3.402-9.847-9.846v-7.162z\"]\n};\nvar faRepeatAlt = {\n prefix: 'fal',\n iconName: 'repeat-alt',\n icon: [512, 512, [], \"f364\", \"M54.027 327.713C40.129 307.242 32 282.553 32 256c0-70.579 57.421-128 128-128h160v63.969c0 29.239 36.192 43.177 55.785 21.407l72-79.968c10.952-12.169 10.953-30.644 0-42.814l-72-79.974C356.226-11.114 320 2.738 320 32.026V96H160C71.775 96 0 167.775 0 256c0 33.913 10.612 65.391 28.683 91.299 4.427 6.348 13.606 6.936 18.785 1.185l5.488-6.096c3.667-4.073 4.149-10.14 1.071-14.675zM352 32l72 80-72 80V32zm131.317 132.701c-4.427-6.348-13.606-6.936-18.785-1.185l-5.488 6.096c-3.667 4.073-4.149 10.14-1.071 14.675C471.871 204.758 480 229.447 480 256c0 70.579-57.421 128-128 128H192v-63.969c0-29.239-36.192-43.177-55.785-21.407l-72 79.969c-10.952 12.169-10.953 30.644 0 42.814l72 79.974C155.774 523.113 192 509.264 192 479.974V416h160c88.225 0 160-71.775 160-160 0-33.913-10.612-65.391-28.683-91.299zM160 480l-72-80 72-80v160z\"]\n};\nvar faReply = {\n prefix: 'fal',\n iconName: 'reply',\n icon: [576, 512, [], \"f3e5\", \"M11.093 251.65l175.998 184C211.81 461.494 256 444.239 256 408v-87.84c154.425 1.812 219.063 16.728 181.19 151.091-8.341 29.518 25.447 52.232 49.68 34.51C520.16 481.421 576 426.17 576 331.19c0-171.087-154.548-201.035-320-203.02V40.016c0-36.27-44.216-53.466-68.91-27.65L11.093 196.35c-14.791 15.47-14.791 39.83 0 55.3zm23.127-33.18l176-184C215.149 29.31 224 32.738 224 40v120c157.114 0 320 11.18 320 171.19 0 74.4-40 122.17-76.02 148.51C519.313 297.707 395.396 288 224 288v120c0 7.26-8.847 10.69-13.78 5.53l-176-184a7.978 7.978 0 0 1 0-11.06z\"]\n};\nvar faReplyAll = {\n prefix: 'fal',\n iconName: 'reply-all',\n icon: [576, 512, [], \"f122\", \"M105.368 246.631l160.002 159.98c20.02 20.01 54.63 5.98 54.63-22.63v-71.15c121.58 4.36 148.9 28.23 121.2 126.42-8.35 29.59 25.5 52.21 49.69 34.51 51.57-37.71 85.11-90.99 85.11-155.97 0-152.9-140.5-177.23-256-181.07v-72.69c0-28.59-34.59-42.67-54.63-22.63l-160.002 159.97c-12.491 12.5-12.491 32.76 0 45.26zM128 224.001l160-160v104.1c130.165 1.345 256 18.265 256 149.69 0 65.1-40.49 107.16-72 130.21 40.979-145.267-38.329-166.574-184-167.9v103.9l-160-160zM9.372 201.373l160-159.974c13.467-13.467 33.495-11.506 45.189-.105L32 224.001l182.564 182.712c-11.699 11.403-31.738 13.347-45.191-.106l-160-159.978c-12.497-12.498-12.497-32.759-.001-45.256z\"]\n};\nvar faRepublican = {\n prefix: 'fal',\n iconName: 'republican',\n icon: [640, 512, [], \"f75e\", \"M173 160.2l-27.4-4-12.2-24.8c-2.2-4.4-8.5-4.5-10.7 0l-12.2 24.8-27.4 4c-4.9.7-6.9 6.8-3.3 10.2l19.8 19.3-4.8 27.3c-.8 4.9 4.3 8.6 8.7 6.3l24.5-12.9 24.5 12.9c4.3 2.3 9.5-1.4 8.7-6.3l-4.7-27.3 19.8-19.3c3.5-3.5 1.6-9.5-3.3-10.2zm128 0l-27.4-4-12.2-24.8c-2.2-4.4-8.5-4.5-10.7 0l-12.2 24.8-27.4 4c-4.9.7-6.9 6.8-3.3 10.2l19.8 19.3-4.7 27.3c-.8 4.9 4.3 8.6 8.7 6.3l24.5-12.9 24.5 12.9c4.3 2.3 9.5-1.4 8.7-6.3l-4.7-27.3 19.8-19.3c3.4-3.5 1.5-9.5-3.4-10.2zM608 256h-32c-17.7 0-32 14.3-32 32v80c0 8.8-7.2 16-16 16s-16-7.2-16-16V192c0-88.4-71.6-160-160-160H160C71.6 32 0 103.6 0 192v240c0 26.5 21.5 48 48 48h64c26.5 0 48-21.5 48-48v-48h128v48c0 26.5 21.5 48 48 48h64c22.3 0 40.9-15.3 46.3-35.9 24.4 26.2 60.9 41.1 100.9 34.3 54.6-9.2 92.9-59.6 92.9-115V288c-.1-17.7-14.4-32-32.1-32zM32 192c0-70.6 57.4-128 128-128h192c70.6 0 128 57.4 128 128v64H32v-64zm576 176c0 44.1-35.9 80-80 80s-80-35.9-80-80v-16h-32v80c0 8.8-7.2 16-16 16h-64c-8.8 0-16-7.2-16-16v-80H128v80c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V288h448v80c0 26.5 21.5 48 48 48s48-21.5 48-48v-80h32v80zM429 160.2l-27.4-4-12.2-24.8c-2.2-4.4-8.5-4.5-10.7 0l-12.2 24.8-27.4 4c-4.9.7-6.9 6.8-3.3 10.2l19.8 19.3-4.7 27.3c-.8 4.9 4.3 8.6 8.7 6.3l24.5-12.9 24.5 12.9c4.3 2.3 9.5-1.4 8.7-6.3l-4.7-27.3 19.8-19.3c3.4-3.5 1.5-9.5-3.4-10.2z\"]\n};\nvar faRestroom = {\n prefix: 'fal',\n iconName: 'restroom',\n icon: [640, 512, [], \"f7bd\", \"M328 0h-16c-4.4 0-8 3.6-8 8v496c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8zM128 160c44.2 0 80-35.8 80-80S172.2 0 128 0 48 35.8 48 80s35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm32 144H96c-44.2 0-80 35.8-80 80v101.3C16 372 27.9 384 42.7 384H56v96c0 17.7 14.3 32 32 32h80c17.7 0 32-14.3 32-32v-96h13.3c14.7 0 26.7-11.9 26.7-26.7V256c0-44.2-35.8-80-80-80zm48 176h-40v128H88V352H48v-96c0-26.5 21.5-48 48-48h64c26.5 0 48 21.5 48 48v96zm304-192c44.2 0 80-35.8 80-80S556.2 0 512 0s-80 35.8-80 80 35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm126.1 327l-44.9-121.4C583.1 201.3 549.7 176 512 176s-71.1 25.3-81.2 61.6L385.9 359c-3.5 9.4-2.2 20 3.6 28.3 5.8 8.3 15.2 13.2 25.3 13.2H440v79.6c0 17.6 14.3 31.9 31.9 31.9H552c17.6 0 31.9-14.3 31.9-31.9v-79.6h25.2c10.1 0 19.5-4.9 25.3-13.2 5.8-8.3 7.2-18.9 3.7-28.3zm-86.1 9.5l.1 111.5h-80.2l.1-111.5h-56l45.3-121c6.7-23.8 27.4-39.5 50.8-39.5s44.1 15.7 50.8 39.5l45.3 121H552z\"]\n};\nvar faRetweet = {\n prefix: 'fal',\n iconName: 'retweet',\n icon: [640, 512, [], \"f079\", \"M634.828 363.799l-98.343 98.343c-4.686 4.686-12.284 4.686-16.971 0l-98.343-98.343c-4.686-4.686-4.686-12.284 0-16.971l5.656-5.656c4.686-4.686 12.284-4.686 16.971 0l68.202 68.2V128H260.024a11.996 11.996 0 0 1-8.485-3.515l-8-8c-7.56-7.56-2.206-20.485 8.485-20.485H520c13.255 0 24 10.745 24 24v289.372l68.201-68.201c4.686-4.686 12.284-4.686 16.971 0l5.656 5.656c4.686 4.687 4.686 12.285 0 16.972zm-246.367 23.716a12.002 12.002 0 0 0-8.485-3.515H128V102.628l68.201 68.2c4.686 4.686 12.284 4.686 16.97 0l5.657-5.657c4.686-4.686 4.687-12.284 0-16.971l-98.343-98.343c-4.686-4.686-12.284-4.686-16.971 0L5.172 148.201c-4.686 4.686-4.686 12.285 0 16.971l5.657 5.657c4.686 4.686 12.284 4.686 16.97 0L96 102.628V392c0 13.255 10.745 24 24 24h267.976c10.691 0 16.045-12.926 8.485-20.485l-8-8z\"]\n};\nvar faRetweetAlt = {\n prefix: 'fal',\n iconName: 'retweet-alt',\n icon: [640, 512, [], \"f361\", \"M607.974 320H544V120c0-13.255-10.745-24-24-24H252.024c-10.998 0-16.202 13.562-8.028 20.919l8.889 8a12 12 0 0 0 8.028 3.081H512v192h-63.968c-29.239 0-43.177 36.192-21.407 55.785l79.969 72c12.169 10.952 30.644 10.953 42.814 0l79.974-72C651.113 356.226 637.264 320 607.974 320zM528 424l-80-72h160l-80 72zm-131.997-28.92l-8.889-8a12 12 0 0 0-8.028-3.08H128V192h63.968c29.239 0 43.177-36.192 21.407-55.785l-79.968-72c-12.169-10.952-30.644-10.953-42.814 0l-79.974 72C-11.114 155.774 2.738 192 32.026 192H96v200c0 13.255 10.745 24 24 24h267.976c10.998 0 16.202-13.562 8.027-20.92zM32 160l80-72 80 72H32z\"]\n};\nvar faRibbon = {\n prefix: 'fal',\n iconName: 'ribbon',\n icon: [448, 512, [], \"f4d6\", \"M439.5 407.7L323.7 285.9l42.4-45.4c33.4-35.7 37.4-87.3 10.2-131.5l-39.5-64.1c-5.5-9-12.8-16.3-21.5-21.9C299.1 12.5 270.2 0 224 0c-46.1 0-75.1 12.5-91.2 22.9-8.8 5.6-16 13.1-21.5 22.1l-42.2 68.5c-25.1 40.7-19.9 91.8 13 127l44.2 47.3L8.4 407.9c-14.9 16.1-8.1 38.8 5.1 47.2l66.9 51.5c16.5 10.7 33.8 3.6 41.9-5l101.7-109 101.7 109c15.6 16.7 35.7 9 43 4.3l64.8-50c16.3-10.7 19.7-33.4 6-48.2zM328.4 92.3l20.6 33.4c19.7 32 17.3 67.6-6.3 92.9l-41.1 44-54.8-57.6 52-56.3c16-15.5 24.7-37 29.6-56.4zm-103.6 89.5l-45.1-47.4c26.7-8 62.2-8 88.9 0l-43.8 47.4zm-74.6-132C162.7 41.6 185.7 32 224 32s61.3 9.7 73.9 17.8c1.9 1.2 3 3.2 4.6 4.7-1 13.7-4.5 35.3-13.5 53.3-18.6-7.7-40.2-11.8-65-11.8-24.8 0-46.5 4.1-65.2 11.9-9.7-19.4-12.5-43-13.3-54.6 1.5-1.3 3-2.5 4.7-3.5zM98.9 480.5L31.6 430l116.5-118.8 54.1 58L98.9 480.5zm250.2-.8L105.4 218.6c-22.9-24.5-26.6-60-9.1-88.4l23.2-37.6c4.9 19.2 13.7 40.5 29.3 55.6L415 429.8l-65.9 49.9z\"]\n};\nvar faRing = {\n prefix: 'fal',\n iconName: 'ring',\n icon: [512, 512, [], \"f70b\", \"M256 64C87.93 64 0 128.39 0 192v114.13C0 384.48 114.62 448 256 448s256-63.52 256-141.87V192c0-63.61-87.93-128-256-128zm224 242.13C480 358.1 388.01 416 256 416S32 358.1 32 306.13v-50.12C71.33 292.63 146.55 320 256 320s184.67-27.37 224-63.99v50.12zM89.32 255.97C130.3 236.37 189.74 224 256 224s125.7 12.37 166.68 31.97C381.67 275.59 322.29 288 256 288s-125.67-12.41-166.68-32.03zm364.88-19.31C411.3 210.2 345.06 192 256 192s-155.3 18.2-198.2 44.66C41.39 223.32 32 208.14 32 192c0-53.02 100.29-96 224-96s224 42.98 224 96c0 16.14-9.39 31.32-25.8 44.66z\"]\n};\nvar faRingsWedding = {\n prefix: 'fal',\n iconName: 'rings-wedding',\n icon: [512, 512, [], \"f81b\", \"M351.64 160.79a206.88 206.88 0 0 1 18 35.6C432.81 211.65 480 268.25 480 336c0 79.4-64.6 144-144 144s-144-64.6-144-144c0-66.45 45.53-121.62 106.86-138C312 219.67 320 244.83 320 272c0 55-31.37 102.36-76.83 126.59a112.52 112.52 0 0 0 23.06 24.32C317.54 392.16 352 336.17 352 272c0-76.38-48.75-141.22-116.76-165.56L278 44.22 217.19 0h-82.38L74 44.22l42.76 62.22C48.75 130.78 0 195.62 0 272a176 176 0 0 0 176 176 169.3 169.3 0 0 0 23-1.64A175.93 175.93 0 0 0 512 336c0-91.92-70.5-167.28-160.36-175.21zM118 51.78L145.22 32h61.56L234 51.78l-31.89 46.37A175.63 175.63 0 0 0 176 96a175.63 175.63 0 0 0-26.11 2.15zM176 416c-79.4 0-144-64.6-144-144s64.6-144 144-144a143.52 143.52 0 0 1 101.89 42.37C209.35 194.42 160 259.24 160 336a175.09 175.09 0 0 0 19.21 79.68c-1.09.03-2.11.32-3.21.32z\"]\n};\nvar faRoad = {\n prefix: 'fal',\n iconName: 'road',\n icon: [576, 512, [], \"f018\", \"M279.47 192h17.06c5.81 0 10.35-6.17 9.73-13.26l-3.75-43.58c-.35-4.07-3.15-7.16-6.49-7.16h-16.05c-3.34 0-6.14 3.09-6.49 7.16l-3.75 43.58c-.61 7.09 3.93 13.26 9.74 13.26zm-6.02 112h29.1c7.75 0 13.79-8.23 12.98-17.68l-4.13-48c-.7-8.14-6.3-14.32-12.98-14.32h-20.83c-6.68 0-12.28 6.18-12.98 14.32l-4.13 48c-.82 9.45 5.22 17.68 12.97 17.68zm10.66-208h7.79c3.88 0 6.9-4.12 6.49-8.84l-1.38-16c-.35-4.07-3.15-7.16-6.49-7.16h-5.03c-3.34 0-6.14 3.09-6.49 7.16l-1.38 16c-.41 4.72 2.61 8.84 6.49 8.84zm23.95 240h-40.12c-6.68 0-12.28 6.18-12.98 14.32l-6.89 80c-.81 9.45 5.23 17.68 12.98 17.68h53.89c7.75 0 13.79-8.23 12.98-17.68l-6.89-80c-.69-8.14-6.29-14.32-12.97-14.32zM157.35 64a7.99 7.99 0 0 0-7.38 4.92L1.25 425.85C-3.14 436.38 4.6 448 16.02 448h28c7.11 0 13.37-4.69 15.36-11.52L165.03 74.24c1.49-5.12-2.35-10.24-7.68-10.24zm417.4 361.85L426.04 68.92a8 8 0 0 0-7.38-4.92c-5.33 0-9.17 5.12-7.68 10.24l105.65 362.24A15.996 15.996 0 0 0 531.99 448h28c11.41 0 19.16-11.62 14.76-22.15z\"]\n};\nvar faRobot = {\n prefix: 'fal',\n iconName: 'robot',\n icon: [640, 512, [], \"f544\", \"M192,416h64V384H192ZM576,224H544V192a95.99975,95.99975,0,0,0-96-96H336V16a16,16,0,0,0-32,0V96H192a95.99975,95.99975,0,0,0-96,96v32H64a31.99908,31.99908,0,0,0-32,32V384a32.00033,32.00033,0,0,0,32,32H96a95.99975,95.99975,0,0,0,96,96H448a95.99975,95.99975,0,0,0,96-96h32a32.00033,32.00033,0,0,0,32-32V256A31.99908,31.99908,0,0,0,576,224ZM96,384H64V256H96Zm416,32a64.18916,64.18916,0,0,1-64,64H192a64.18916,64.18916,0,0,1-64-64V192a63.99942,63.99942,0,0,1,64-64H448a63.99942,63.99942,0,0,1,64,64Zm64-32H544V256h32ZM416,192a64,64,0,1,0,64,64A64.07333,64.07333,0,0,0,416,192Zm0,96a32,32,0,1,1,32-32A31.97162,31.97162,0,0,1,416,288ZM384,416h64V384H384Zm-96,0h64V384H288ZM224,192a64,64,0,1,0,64,64A64.07333,64.07333,0,0,0,224,192Zm0,96a32,32,0,1,1,32-32A31.97162,31.97162,0,0,1,224,288Z\"]\n};\nvar faRocket = {\n prefix: 'fal',\n iconName: 'rocket',\n icon: [512, 512, [], \"f135\", \"M505.07337,19.34375C503.85462,13.73438,498.32338,8.20312,492.72964,7c-32.62885-7-58.162-7-83.57017-7C305.39988,0,242.95858,55.09375,196.236,128H94.82015c-16.34567.01562-35.53314,11.875-42.87883,26.48438L2.53125,253.29688A28.125,28.125,0,0,0,0,264a24.00659,24.00659,0,0,0,24.00191,24h92.63266l-10.59373,21.42188c-9.33592,18.91015,4.27733,34.77539,6.15624,36.625l53.75381,53.71874c1.85352,1.86329,17.789,15.47852,36.62885,6.14063l21.37692-10.57813V488a24.14815,24.14815,0,0,0,24.00191,24,28.02956,28.02956,0,0,0,10.625-2.53125l98.72835-49.39063c14.625-7.3125,26.50191-26.5,26.50191-42.85937V315.70312C456.6008,268.9375,511.98156,206.25,511.98156,103,512.07531,77.46875,512.07531,52,505.07337,19.34375ZM36.94134,256l43.59759-87.20312c2.46874-4.82813,8.84373-8.78126,14.28122-8.79688h85.19517c-13.93943,28.0625-31.72065,64-47.56632,96ZM351.84316,417.1875c-.03125,5.4375-4.002,11.84375-8.87694,14.26562L255.95855,475V379.48438c32.00386-15.82813,67.81825-33.59376,95.88461-47.54688Zm14.625-128.28125c-39.50383,19.78125-135.88649,67.4375-177.92157,88.23437l-53.81632-53.54687c20.87692-42.23437,68.537-138.59375,88.22642-178.1875C273.17923,67,330.65374,32,409.15947,32c21.53317,0,42.00384,0,66.63075,4.29688,4.34374,24.85937,4.25,45.20312,4.18749,66.6875C479.97771,181.0625,444.97582,238.45312,366.46813,288.90625ZM367.98962,88.0293a55.99512,55.99512,0,1,0,55.99209,55.99414A56.01691,56.01691,0,0,0,367.98962,88.0293Zm0,79.99218a23.998,23.998,0,1,1,23.99605-23.998A24.02247,24.02247,0,0,1,367.98962,168.02148Z\"]\n};\nvar faRocketLaunch = {\n prefix: 'fal',\n iconName: 'rocket-launch',\n icon: [512, 512, [], \"e027\", \"M368.05829,88.0293a55.99512,55.99512,0,1,0,55.99215,55.99414A56.01694,56.01694,0,0,0,368.05829,88.0293Zm0,79.99218a23.998,23.998,0,1,1,23.99608-23.998A24.02247,24.02247,0,0,1,368.05829,168.02148ZM505.1656,19.29492C503.98982,13.832,498.18123,8.0293,492.71835,6.86133,460.63244,0,435.48793,0,410.45084,0,307.26342,0,245.38261,55.19727,199.18734,127.98828H95.01555c-16.293,0-35.58786,11.92188-42.87692,26.4961L2.73242,253.27344A28.4,28.4,0,0,0,.2168,263.97656a24.00493,24.00493,0,0,0,23.99607,23.998H128.13466a95.98845,95.98845,0,0,1,95.98625,95.99023V487.95508a24.00243,24.00243,0,0,0,23.99608,23.998,28.53884,28.53884,0,0,0,10.70116-2.51562l98.71671-49.40039c14.55663-7.28516,26.46678-26.5625,26.46678-42.83984V312.76758C456.568,266.46094,511.982,204.37109,511.982,101.69336,512.0738,76.54492,512.0738,51.39648,505.1656,19.29492ZM37.15427,255.97656l43.60152-87.18164c1.85156-3.70508,10.11523-8.81054,14.25976-8.81054h85.08c-13.93554,28.06054-31.71287,63.99609-47.55465,95.99218l.0664.45313C131.08778,256.377,61.01753,255.97656,37.15427,255.97656Zm314.8513,161.22071c0,4.13085-5.09179,12.375-8.789,14.22461L256.115,475.01172c0-23.90234-.4043-94.06055-.46094-95.60938l.36719.04688c31.99606-15.82617,67.80267-33.58984,95.85929-47.541l.125.002Zm-102.078-70.51368a127.62739,127.62739,0,0,0-84.6347-84.55468c52.02731-103.98633,99.76945-230.13282,245.158-230.13282,21.164,0,41.29684,0,65.41987,4.1875,4.26562,24.377,4.1914,44.38477,4.11523,65.50977C479.98594,246.66406,353.00752,295.1543,249.92753,346.68359Zm-147.494-26.71289C54.35347,319.9707,2.03125,359.31836.168,480H0v32H32v-.23242C203.617,508.42969,216.8885,396.74414,165.80065,345.40039,150.85925,330.38477,127.22255,319.9707,102.43351,319.9707Zm52.914,109.39844c-12.83593,31.14844-57.63667,49.42969-123.36709,50.55078.06446-3.55469-1.11914-127.88867,70.45307-127.88867,15.09569,0,31.11521,6.29492,40.81051,16.03906C156.05456,380.94336,164.6483,406.80273,155.34753,429.36914Z\"]\n};\nvar faRoute = {\n prefix: 'fal',\n iconName: 'route',\n icon: [512, 512, [], \"f4d7\", \"M432 352H320c-26.5 0-48-21.5-48-48s21.5-48 48-48h96s96-107 96-160-43-96-96-96-96 43-96 96c0 34.6 40.9 92.2 69.3 128H320c-44.1 0-80 35.9-80 80s35.9 80 80 80h112c26.5 0 48 21.5 48 48s-21.5 48-48 48H122.7c28.4-35.8 69.3-93.4 69.3-128 0-53-43-96-96-96S0 299 0 352s96 160 96 160h336c44.1 0 80-35.9 80-80s-35.9-80-80-80zM352 96c0-35.3 28.7-64 64-64s64 28.7 64 64c0 20.4-30.1 68-64 110.4-34-42.6-64-90.6-64-110.4zM32 352c0-35.3 28.7-64 64-64s64 28.7 64 64c0 20.4-30.1 68-64 110.4-34-42.6-64-90.6-64-110.4zm64-16c-21.2 0-21.1 32 0 32 21.2 0 21.1-32 0-32zM416 80c-21.2 0-21.1 32 0 32 21.2 0 21.1-32 0-32z\"]\n};\nvar faRouteHighway = {\n prefix: 'fal',\n iconName: 'route-highway',\n icon: [448, 512, [], \"f61a\", \"M428.4 269.21c-30.48-45.42-11.8-104.47 13-155.4 3.96-8.13 3.34-17.75-1.87-25.13l-41.17-58.36c-4.56-6.47-11.8-10.14-19.28-10.14-2.74 0-5.52.49-8.21 1.52-15.37 5.88-32.67 8.89-50.26 8.89-29.51 0-59.81-8.47-83.16-26.11C233.48 1.5 228.74 0 224 0s-9.48 1.5-13.44 4.49C187.21 22.13 156.9 30.6 127.39 30.6c-17.59 0-34.89-3.01-50.25-8.89a22.929 22.929 0 0 0-8.21-1.52c-7.48 0-14.72 3.67-19.28 10.13L8.47 88.69c-5.21 7.38-5.83 16.99-1.87 25.13 24.8 50.92 43.47 109.97 13 155.4-37.94 56.52-18.55 139.43 38.81 166.03L223.97 512l165.62-76.76c57.37-26.6 76.75-109.51 38.81-166.03zM72.17 53.91c17.17 5.7 36.12 8.69 55.22 8.69 35.63 0 69.64-10.04 96.61-28.38 26.97 18.35 60.97 28.38 96.61 28.38 19.11 0 38.06-2.99 55.23-8.69l35 49.62c-8.03 16.78-16.01 36.09-21.86 56.48H59.03c-5.86-20.38-13.83-39.7-21.86-56.48l35-49.62zm340.44 306.03c-6 21.44-19.29 38.3-36.47 46.27l-152.16 70.52-152.1-70.52c-17.19-7.97-30.48-24.83-36.48-46.27-7.03-25.12-3-52.37 10.78-72.89 20.25-30.18 24.07-63.23 19.87-95.04h315.92c-4.21 31.81-.38 64.86 19.87 95.05 13.77 20.51 17.79 47.76 10.77 72.88z\"]\n};\nvar faRouteInterstate = {\n prefix: 'fal',\n iconName: 'route-interstate',\n icon: [480, 512, [], \"f61b\", \"M464.83 55.14c-3.07-9.95-11.66-16.67-20.94-16.67-1.73 0-3.49.23-5.24.72-18.23 5.12-37.74 7.96-58.1 7.96-49.12 0-93.61-16.07-126.17-42.11C250.18 1.68 245.09 0 240 0s-10.18 1.68-14.38 5.03c-32.56 26.04-77.05 42.11-126.17 42.11-20.36 0-39.87-2.84-58.1-7.96-1.75-.49-3.51-.72-5.24-.72-9.28 0-17.87 6.73-20.94 16.67C-21.83 175.11-6.68 410.34 240 512 486.68 410.34 501.83 175.11 464.83 55.14zM43.37 72.73c18.29 4.25 37.11 6.41 56.08 6.41 52.1 0 101.71-15.86 140.55-44.79 38.83 28.93 88.45 44.79 140.55 44.79 18.96 0 37.77-2.15 56.05-6.4 4.63 17.18 10.92 48.28 11.28 87.26H32.07c.16-31.56 4.17-61.38 11.3-87.27zm196.64 404.45C97.11 413.26 42.04 296.52 33.32 192h413.33c-2.14 27.18-7.29 56.82-18.08 87.95-30.84 88.91-94.24 155.21-188.56 197.23z\"]\n};\nvar faRouter = {\n prefix: 'fal',\n iconName: 'router',\n icon: [576, 512, [], \"f8da\", \"M173.93 96.81a8.12 8.12 0 0 0 11.23.07C230.55 55 289.48 32 352 32s121.45 23 166.83 64.88a8.12 8.12 0 0 0 11.23-.07l11.53-11.34a8 8 0 0 0-.11-11.56C490 26.18 423 0 352 0S214 26.18 162.52 73.91a8 8 0 0 0-.11 11.56zM352 112a179.26 179.26 0 0 0-120.38 45.8 8 8 0 0 0-.15 11.64l11.53 11.3a8.21 8.21 0 0 0 11.22.14 148.17 148.17 0 0 1 195.64 0 8.21 8.21 0 0 0 11.22-.14l11.49-11.3a8 8 0 0 0-.15-11.64A179.26 179.26 0 0 0 352 112zm176 208H368v-88a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v88H48a48 48 0 0 0-48 48v96a48 48 0 0 0 48 48h480a48 48 0 0 0 48-48v-96a48 48 0 0 0-48-48zm16 144a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16v-96a16 16 0 0 1 16-16h480a16 16 0 0 1 16 16zm-360-72a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm-80 0a24 24 0 1 0 24 24 24 24 0 0 0-24-24z\"]\n};\nvar faRss = {\n prefix: 'fal',\n iconName: 'rss',\n icon: [448, 512, [], \"f09e\", \"M80 352c26.467 0 48 21.533 48 48s-21.533 48-48 48-48-21.533-48-48 21.533-48 48-48m0-32c-44.183 0-80 35.817-80 80s35.817 80 80 80 80-35.817 80-80-35.817-80-80-80zm367.996 147.615c-6.448-237.848-198.06-429.164-435.61-435.61C5.609 31.821 0 37.229 0 44.007v8.006c0 6.482 5.146 11.816 11.626 11.994 220.81 6.05 398.319 183.913 404.367 404.367.178 6.48 5.512 11.626 11.994 11.626h8.007c6.778 0 12.185-5.609 12.002-12.385zm-144.245-.05c-6.347-158.132-133.207-284.97-291.316-291.316C5.643 175.976 0 181.45 0 188.247v8.005c0 6.459 5.114 11.72 11.567 11.989 141.134 5.891 254.301 119.079 260.192 260.192.269 6.453 5.531 11.567 11.989 11.567h8.005c6.798 0 12.271-5.643 11.998-12.435z\"]\n};\nvar faRssSquare = {\n prefix: 'fal',\n iconName: 'rss-square',\n icon: [448, 512, [], \"f143\", \"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-48zm16 400c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h352c8.822 0 16 7.178 16 16v352zM144 320c8.822 0 16 7.177 16 16s-7.178 16-16 16-16-7.177-16-16 7.178-16 16-16m0-32c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm195.981 96h-8.019c-6.369 0-11.678-4.969-11.993-11.33-5.676-114.835-97.728-206.959-212.639-212.639-6.362-.314-11.33-5.623-11.33-11.993v-8.019c0-6.826 5.683-12.331 12.502-12.006 131.615 6.279 237.203 111.811 243.485 243.485.325 6.819-5.18 12.502-12.006 12.502zm-72.006 0h-8.045c-6.298 0-11.53-4.859-11.986-11.14-5.463-75.234-65.751-135.364-140.824-140.805-6.274-.454-11.12-5.695-11.12-11.985v-8.045c0-7.003 5.957-12.482 12.943-11.995 91.397 6.367 164.66 79.629 171.027 171.027.487 6.986-4.992 12.943-11.995 12.943z\"]\n};\nvar faRubleSign = {\n prefix: 'fal',\n iconName: 'ruble-sign',\n icon: [384, 512, [], \"f158\", \"M245.712 287.809c80.296 0 138.288-50.323 138.288-128.803C384 81.125 326.009 32 245.712 32H108c-6.627 0-12 5.373-12 12v204H12c-6.627 0-12 5.373-12 12v16c0 6.627 5.373 12 12 12h84v58H12c-6.627 0-12 5.373-12 12v14c0 6.627 5.373 12 12 12h84v84c0 6.627 5.373 12 12 12h19.971c6.627 0 12-5.373 12-12v-84H308c6.627 0 12-5.373 12-12v-14c0-6.627-5.373-12-12-12H139.971v-58.191h105.741zM139.971 71.594h104.643c59.266 0 98.14 31.979 98.14 87.215 0 55.818-38.873 88.96-98.777 88.96H139.971V71.594z\"]\n};\nvar faRuler = {\n prefix: 'fal',\n iconName: 'ruler',\n icon: [640, 512, [], \"f545\", \"M635.7 165.8L556.1 27.9C550.2 17.7 539.5 12 528.5 12c-5.4 0-10.9 1.4-15.9 4.3L15.9 302.8C.7 311.5-4.5 331 4.3 346.2L83.9 484c5.9 10.2 16.6 15.9 27.6 15.9 5.4 0 10.9-1.4 15.9-4.3L624 209.1c15.3-8.6 20.5-28.1 11.7-43.3zM111.5 468.2L31.9 330.3l69-39.8 43.8 75.8c2.2 3.8 7.1 5.1 10.9 2.9l13.8-8c3.8-2.2 5.1-7.1 2.9-10.9l-43.8-75.8 55.2-31.8 27.9 48.2c2.2 3.8 7.1 5.1 10.9 2.9l13.8-8c3.8-2.2 5.1-7.1 2.9-10.9l-27.9-48.2 55.2-31.8 43.8 75.8c2.2 3.8 7.1 5.1 10.9 2.9l13.8-8c3.8-2.2 5.1-7.1 2.9-10.9L294 179.1l55.2-31.8 27.9 48.2c2.2 3.8 7.1 5.1 10.9 2.9l13.8-8c3.8-2.2 5.1-7.1 2.9-10.9l-27.9-48.2L432 99.5l43.8 75.8c2.2 3.8 7.1 5.1 10.9 2.9l13.8-8c3.8-2.2 5.1-7.1 2.9-10.9l-43.8-75.8 69-39.8 79.6 137.8-496.7 286.7z\"]\n};\nvar faRulerCombined = {\n prefix: 'fal',\n iconName: 'ruler-combined',\n icon: [512, 512, [], \"f546\", \"M480 320H192V32c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v448c0 17.67 14.33 32 32 32h448c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32zM32 32h128v64h-56c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56v48h-56c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56v48h-56c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56v41.38l-128 128V32zm448 448H54.62l128-128H224v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h48v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h48v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h64v128z\"]\n};\nvar faRulerHorizontal = {\n prefix: 'fal',\n iconName: 'ruler-horizontal',\n icon: [640, 512, [], \"f547\", \"M608 128H32c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V160c0-17.67-14.33-32-32-32zm0 224H32V160h80v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h64v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h64v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h64v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h64v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h80v192z\"]\n};\nvar faRulerTriangle = {\n prefix: 'fal',\n iconName: 'ruler-triangle',\n icon: [512, 512, [], \"f61c\", \"M501.65 452.08L59.91 10.35C52.76 3.2 43.97 0 35.35 0 17.31 0 0 14.01 0 35.17V476.9C0 496.29 15.71 512 35.1 512h441.73c31.27 0 46.93-37.8 24.82-59.92zm-21.96 26.01c-.79 1.91-2.04 1.91-2.86 1.91H35.1c-1.71 0-3.1-1.39-3.1-3.1V35.17c0-3.13 3.21-3.17 3.36-3.17.48 0 1.03.08 1.93.98l73.79 73.79-16.97 16.97c-3.12 3.12-3.12 8.19 0 11.31l11.32 11.31a7.98 7.98 0 0 0 5.66 2.34c2.05 0 4.09-.78 5.66-2.34l16.97-16.97 45.26 45.26-16.97 16.97c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31a7.98 7.98 0 0 0 5.66 2.34c2.05 0 4.1-.78 5.66-2.34l16.97-16.97 45.26 45.26-16.97 16.97c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31a7.98 7.98 0 0 0 5.66 2.34c2.05 0 4.1-.78 5.66-2.34l16.97-16.97 45.25 45.25-16.97 16.97c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c1.56 1.56 3.61 2.34 5.66 2.34s4.09-.78 5.66-2.34l16.97-16.97 45.25 45.25-16.97 16.97c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c1.56 1.56 3.61 2.34 5.66 2.34s4.09-.78 5.66-2.34l16.97-16.97 73.79 73.79c.55.61 1.44 1.5.64 3.41zM123.31 228.68c-4.56-4.56-11.5-5.95-17.44-3.47A15.999 15.999 0 0 0 96 239.99v160c0 8.84 7.16 16 16 16h160c6.47 0 12.31-3.89 14.78-9.88a16.048 16.048 0 0 0-3.47-17.44l-160-159.99zM128 383.99V278.62L233.37 384H128z\"]\n};\nvar faRulerVertical = {\n prefix: 'fal',\n iconName: 'ruler-vertical',\n icon: [256, 512, [], \"f548\", \"M224 0H32C14.33 0 0 14.33 0 32v448c0 17.67 14.33 32 32 32h192c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32zM32 480V32h192v64h-56c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56v64h-56c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56v64h-56c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56v64h-56c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56v64H32z\"]\n};\nvar faRunning = {\n prefix: 'fal',\n iconName: 'running',\n icon: [448, 512, [], \"f70c\", \"M396 216h-14.53l-9.04-27.12c-8.11-24.31-24.18-44-44.5-58.04C347 117.91 360 96.73 360 72c0-39.7-32.3-72-72-72s-72 32.3-72 72c0 8.34 1.56 16.28 4.2 23.72-8.62-1.98-17.37-3.22-26.13-3.22-20.55 0-40.8 5.53-58.64 16l-46.19 24.07C64.7 147.31 56.7 179.3 71.4 203.88c9.39 15.62 26.48 25.27 44.63 25.27 8.98 0 17.82-2.33 25.65-6.76l18.95-9.85L101.75 344H52c-28.67 0-52 23.33-52 52s23.33 52 52 52h62.91c33.65 0 63.95-19.99 77.2-50.92l19.32-39.74 43.7 19.63-19.64 68.74c-7.87 27.58 8.15 56.42 35.71 64.29 4.8 1.34 9.55 2 14.31 2 23.07 0 43.62-15.5 49.98-37.69l24.4-85.4c7.11-24.86 2.02-50.92-12.01-71.12 6.2 1.45 12.63 2.21 19.2 2.21H396c28.67 0 52-23.33 52-52s-23.33-52-52-52zM288 32c22.09 0 40 17.91 40 40s-17.91 40-40 40-40-17.91-40-40 17.91-40 40-40zM162.69 384.48A51.915 51.915 0 0 1 114.91 416H52c-11.05 0-20-8.95-20-20s8.95-20 20-20h62.91c4.8 0 9.12-2.86 11.03-7.28l26.72-56.88c6.9 12.72 17.07 23.57 29.98 31.43l-19.95 41.21zM396 288h-28.94a51.94 51.94 0 0 1-49.33-35.55l-13.59-40.8c-2.83-8.46-8.21-15.43-15-20.67l-41.47 103.69 52.78 23.72c23.41 10.55 35.72 37.09 28.67 61.73l-24.39 85.38c-2.52 8.78-10.52 14.5-19.22 14.5-1.83 0-3.67-.25-5.52-.77-10.61-3.03-16.77-14.11-13.73-24.73l24.39-85.38c1.64-5.69-1.22-11.81-6.62-14.25 0 0-85.82-39.04-88.71-41.16-17.8-13.09-25.42-36.48-18.51-57.88l37.75-87.57s-16.9-3.77-20.5-3.77c-7.88 0-15.59 2.14-22.5 6.31l-45.25 23.52a20.137 20.137 0 0 1-10.29 2.84c-6.8 0-13.41-3.46-17.16-9.7-5.67-9.48-2.61-21.77 6.86-27.45l45.26-23.52c13.24-7.93 28.06-11.99 43.1-11.99 6.83 0 13.72.84 20.51 2.53l68.19 17.05c28 6.98 50.17 27.52 59.31 54.92l13.59 40.8c1.64 4.91 6.22 8.2 11.39 8.2H396c11.05 0 20 8.95 20 20s-8.95 20-20 20z\"]\n};\nvar faRupeeSign = {\n prefix: 'fal',\n iconName: 'rupee-sign',\n icon: [320, 512, [], \"f156\", \"M320 60V44c0-6.627-5.373-12-12-12H12C5.373 32 0 37.373 0 44v16c0 6.627 5.373 12 12 12h72.614c47.093 0 81.306 20.121 93.376 56H12c-6.627 0-12 5.373-12 12v16c0 6.627 5.373 12 12 12h170.387c-4.043 50.107-41.849 79.554-98.41 79.554H12c-6.627 0-12 5.373-12 12v15.807c0 2.985 1.113 5.863 3.121 8.072l175.132 192.639a11.998 11.998 0 0 0 8.879 3.928h21.584c10.399 0 15.876-12.326 8.905-20.043L62.306 288h23.407c77.219 0 133.799-46.579 138.024-120H308c6.627 0 12-5.373 12-12v-16c0-6.627-5.373-12-12-12h-87.338c-4.96-22.088-15.287-40.969-29.818-56H308c6.627 0 12-5.373 12-12z\"]\n};\nvar faRv = {\n prefix: 'fal',\n iconName: 'rv',\n icon: [640, 512, [], \"f7be\", \"M304 128H112c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16h192c8.8 0 16-7.2 16-16v-96c0-8.8-7.2-16-16-16zm-16 96H128v-64h160v64zm288.1-32H600c22.1 0 40-17.9 40-40 0-66.3-53.7-120-120-120H384V16c0-8.8-7.2-16-16-16H240c-8.8 0-16 7.2-16 16v16H64C28.7 32 0 60.7 0 96v197.5c0 17 6.7 33.2 18.7 45.2l69.7 69.7c2.8 2.8 6.1 4.6 9.7 5.9C96.8 420 96 425.9 96 432c0 44.2 35.8 80 80 80s80-35.8 80-80c0-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-16H608c17.6 0 32-14.4 32-32V282.4c0-17-6.7-33.2-18.7-45.2L576.1 192zm18.7 64H416v-64h101.5c8.6 0 16.7 3.4 22.8 9.4l54.5 54.6zM176 480c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm208-96H239.6C225 364.7 202 352 176 352s-49 12.7-63.6 32h-3.1l-67.9-67.9c-6-6-9.4-14.1-9.4-22.6V96c0-17.7 14.3-32 32-32h456c48.5 0 88 39.5 88 88 0 4.4-3.6 8-8 8H384v224zm112 96c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm112-96h-48.4C545 364.7 522 352 496 352s-49 12.7-63.6 32H416v-96h192v96z\"]\n};\nvar faSack = {\n prefix: 'fal',\n iconName: 'sack',\n icon: [512, 512, [], \"f81c\", \"M334.89 121.63l43.72-71.89C392.77 28.47 377.53 0 352 0H160.15c-25.56 0-40.8 28.5-26.61 49.76l43.57 71.88C-9.27 240.59.08 392.36.08 412c0 55.23 49.11 100 109.68 100h292.5c60.58 0 109.68-44.77 109.68-100 0-19.28 8.28-172-177.05-290.37zM160.15 32H352l-49.13 80h-93.73zM480 412c0 37.49-34.85 68-77.69 68H109.76c-42.84 0-77.69-30.51-77.69-68v-3.36c-.93-59.86 20-173 168.91-264.64h110.1C459.64 235.46 480.76 348.94 480 409z\"]\n};\nvar faSackDollar = {\n prefix: 'fal',\n iconName: 'sack-dollar',\n icon: [512, 512, [], \"f81d\", \"M334.89 121.63l43.72-71.89C392.77 28.47 377.53 0 352 0H160.15c-25.56 0-40.8 28.5-26.61 49.76l43.57 71.88C-9.27 240.59.08 392.36.08 412c0 55.23 49.11 100 109.68 100h292.5c60.58 0 109.68-44.77 109.68-100 0-19.28 8.28-172-177.05-290.37zM160.15 32H352l-49.13 80h-93.73zM480 412c0 37.49-34.85 68-77.69 68H109.76c-42.84 0-77.69-30.51-77.69-68v-3.36c-.93-59.86 20-173 168.91-264.64h110.1C459.64 235.46 480.76 348.94 480 409zM285.61 310.74l-49-14.54c-5.66-1.62-9.57-7.22-9.57-13.68 0-7.86 5.76-14.21 12.84-14.21h30.57a26.78 26.78 0 0 1 13.93 4 8.92 8.92 0 0 0 11-.75l12.73-12.17a8.54 8.54 0 0 0-.65-13 63.12 63.12 0 0 0-34.17-12.17v-17.6a8.68 8.68 0 0 0-8.7-8.62H247.2a8.69 8.69 0 0 0-8.71 8.62v17.44c-25.79.75-46.46 22.19-46.46 48.57 0 21.54 14.14 40.71 34.38 46.74l49 14.54c5.66 1.61 9.58 7.21 9.58 13.67 0 7.87-5.77 14.22-12.84 14.22h-30.61a26.72 26.72 0 0 1-13.93-4 8.92 8.92 0 0 0-11 .76l-12.84 12.06a8.55 8.55 0 0 0 .65 13 63.2 63.2 0 0 0 34.17 12.17v17.55a8.69 8.69 0 0 0 8.71 8.62h17.41a8.69 8.69 0 0 0 8.7-8.62V406c25.68-.64 46.46-22.18 46.57-48.56.02-21.5-14.13-40.67-34.37-46.7z\"]\n};\nvar faSadCry = {\n prefix: 'fal',\n iconName: 'sad-cry',\n icon: [496, 512, [], \"f5b3\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm128 421.6V272c0-8.8-7.2-16-16-16s-16 7.2-16 16v177.2c-29 14.5-61.5 22.8-96 22.8s-67-8.3-96-22.8V272c0-8.8-7.2-16-16-16s-16 7.2-16 16v157.6C66.7 390.2 32 327.2 32 256c0-119.1 96.9-216 216-216s216 96.9 216 216c0 71.2-34.7 134.2-88 173.6zM205.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.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.1zm-96 108c-30.9 0-56 28.7-56 64s25.1 64 56 64 56-28.7 56-64-25.1-64-56-64zm0 96c-13 0-24-14.7-24-32s11-32 24-32 24 14.7 24 32-11 32-24 32z\"]\n};\nvar faSadTear = {\n prefix: 'fal',\n iconName: 'sad-tear',\n icon: [496, 512, [], \"f5b4\", \"M168 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 32zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm0-152c-11.2 0-22 1.7-32.7 4.1-7.2-12.6-16.1-26.5-28.1-42.4-9-12.1-29.4-12-38.4 0-29.7 39.6-44.8 69-44.8 87.3 0 34.7 28.7 63 64 63s64-28.3 64-63c0-4.4-1-9.5-2.7-15.1 6.1-1.2 12.3-1.9 18.7-1.9 34.9 0 67.8 15.4 90.2 42.2 5.3 6.4 15.4 8 22.5 2 6.8-5.7 7.7-15.8 2-22.5C334.2 339.6 292.4 320 248 320zm-80 80c-17.7 0-32-13.9-32-31 0-7.7 10-28.8 32-59.5 22 30.7 32 51.8 32 59.5 0 17.1-14.3 31-32 31z\"]\n};\nvar faSalad = {\n prefix: 'fal',\n iconName: 'salad',\n icon: [512, 512, [], \"f81e\", \"M495.82 288h5A110.13 110.13 0 0 0 512 240c0-33.16-14.77-62.69-37.75-83.21C459 103.33 410.38 64 352 64c-3.63 0-7.05.77-10.61 1.07C323.6 26.74 285 0 240 0s-83.6 26.74-101.39 65.07c-3.56-.3-7-1.07-10.61-1.07A128 128 0 0 0 0 192c0 38.58 17.43 72.66 44.52 96H16.18C7 288-.74 295.72.06 304.84 6.7 381.21 58.18 444.23 128 468.69V480a32.16 32.16 0 0 0 32.21 32h192.25c17.7 0 31.54-14.33 31.54-32v-11.51c69.49-24.62 121.32-87.49 127.94-163.65.8-9.12-6.94-16.84-16.12-16.84zM480 240a78.45 78.45 0 0 1-16.71 48H336.71A78.51 78.51 0 0 1 320 240a80 80 0 0 1 160 0zM32 192c0-35.13 23-104.78 128-96 27.87-63.73 65.28-64 80-64 14.18 0 52 0 80 64 35.07-2.93 76.19-1.1 106 35.35a110.79 110.79 0 0 0-26-3.35 112.12 112.12 0 0 0-112 112 110.27 110.27 0 0 0 11.09 48H256V104a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v161.37l-111-111a8 8 0 0 0-11.31 0l-11.35 11.29a8 8 0 0 0 0 11.31l111 111H128A96.11 96.11 0 0 1 32 192zm341.79 246.34L352 445.89V480H160v-34l-21.23-7.51C85.11 419.7 45.74 374.27 34.59 320h442.82c-11.12 54.07-50.27 99.43-103.62 118.34z\"]\n};\nvar faSandwich = {\n prefix: 'fal',\n iconName: 'sandwich',\n icon: [512, 512, [], \"f81f\", \"M480 32H32A32 32 0 0 0 0 64v96a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32zm0 128H32V64h448zm0 160H32a32 32 0 0 0-32 32v96a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32v-96a32 32 0 0 0-32-32zm-84.85 32L352 380.77 308.85 352zM480 448H32v-96h219.16l92 61.32a16 16 0 0 0 17.76 0l92-61.32H480zm24.16-192.19c-23-1.11-35.09-7.19-48.94-14.12-12.09-6.05-68.1-37.12-142.19 0-64.15 32.14-112.55.58-113.72 0-12.1-6.06-68.18-37.12-142.4 0-13.88 6.92-26 13-49.07 14.13a8.08 8.08 0 0 0-7.84 8v16a8 8 0 0 0 8.29 8c30.52-1.32 47.67-9.88 62.93-17.51 1.17-.58 49.49-32.14 113.78 0 74.14 37.07 130.06 6.15 142.34 0 64.15-32.14 112.4-.58 113.57 0 15.23 7.62 32.34 16.19 62.8 17.51a8 8 0 0 0 8.29-8v-16a8.1 8.1 0 0 0-7.84-8.01z\"]\n};\nvar faSatellite = {\n prefix: 'fal',\n iconName: 'satellite',\n icon: [512, 512, [], \"f7bf\", \"M502.62516,264.79688a31.98911,31.98911,0,0,1,0,45.10937l-96.6858,96.6875a31.8365,31.8365,0,0,1-44.99921,0l-45.99919-46c9.99982,48.20313,3.68743,99-20.12465,143.3125A15.39834,15.39834,0,0,1,280.94156,512a16.79636,16.79636,0,0,1-11.906-4.90625L148.13139,386.5l-37.81184,37.79688c.71874,2.5,1.625,5,1.625,7.79687a31.99944,31.99944,0,1,1-31.99944-32c2.78121,0,5.28116.90625,7.78112,1.60937l37.90558-37.90624L4.9464,243.09375C-2.67846,235.5-1.366,222.40625,8.0401,217.29688a211.415,211.415,0,0,1,142.59124-20.89063l-45.3117-45.3125a32.02746,32.02746,0,0,1,0-45.09375l96.717-96.70312A31.56644,31.56644,0,0,1,224.5363,0a32.04621,32.04621,0,0,1,22.59335,9.29688l70.81126,70.90624,70.78-70.79687a31.87473,31.87473,0,0,1,45.218,0L502.62516,78a32.04531,32.04531,0,0,1,0,45.29688l-70.81125,70.79687Zm-267.3078,11.79687a179.96533,179.96533,0,0,0-191.99663-40.5L275.94164,468.70312C301.1287,403.29688,285.72272,327,235.31736,276.59375Zm-107.27937-148,70.68626,70.8125,96.59205-96.60937-70.78-70.70313Zm91.49839,95.20313A209.36433,209.36433,0,0,1,258.03571,254c11.906,11.90625,21.40587,25.09375,29.90572,38.79688L480.03181,100.70312,411.31427,32Zm260.58918,63.5L409.3143,216.59375l-96.59205,96.60937L383.62725,384Z\"]\n};\nvar faSatelliteDish = {\n prefix: 'fal',\n iconName: 'satellite-dish',\n icon: [512, 512, [], \"f7c0\", \"M346.58818,455.90644c8.31269,8.3906,6.90641,22.7968-3.50008,28.39053A233.00967,233.00967,0,0,1,68.17549,443.79711c-74.408-74.39037-87.90828-186.70249-40.50093-274.88969a16.87606,16.87606,0,0,1,15.2191-8.90622,18.51882,18.51882,0,0,1,13.09405,5.40623L189.99081,299.407l35.59457-35.60926c-.68752-2.59374-1.59379-5-1.59379-7.79685a32.00074,32.00074,0,1,1,32.00074,31.9999c-2.81256,0-5.21887-.90625-7.81268-1.59375l-35.59457,35.59363Zm-36.5946,8.68747L47.39376,202.00106c-30.71946,74.0935-14.12533,161.70257,43.376,219.20238a199.69239,199.69239,0,0,0,142.00329,58.79667C254.92981,480.00011,289.52436,473.09388,309.99358,464.59391Zm202.00467-152.8901a8.08961,8.08961,0,0,1-8.09394,8.2031H487.90394a7.97613,7.97613,0,0,1-7.90643-7.90623C475.90367,159.20433,352.68207,35.70475,199.89729,31.90789a7.9254,7.9254,0,0,1-7.90644-7.90622V8.09547A8.07635,8.07635,0,0,1,200.17854.00175C370.18247,4.29861,507.68565,141.79814,511.99825,311.70381Zm-96.096,0a8.11591,8.11591,0,0,1-8.12519,8.2031H391.99548a8.03981,8.03981,0,0,1-8.00019-7.81248c-3.59383-99.79653-84.31445-179.99938-184.223-183.99937a8.098,8.098,0,0,1-7.78143-8V104.09514a8.00862,8.00862,0,0,1,8.18769-8.09372C317.18125,100.29828,411.68343,194.70421,415.90228,311.70381Z\"]\n};\nvar faSausage = {\n prefix: 'fal',\n iconName: 'sausage',\n icon: [512, 512, [], \"f820\", \"M455.72 72.83l14.92-44.75A21.34 21.34 0 0 0 450.4 0h-68.8a21.34 21.34 0 0 0-20.24 28.08l14.92 44.75A95.83 95.83 0 0 0 320 160c0 88.22-71.78 160-160 160a95.83 95.83 0 0 0-87.17 56.28l-44.75-14.92C10.49 355.5 0 371.25 0 381.6v68.8c0 9.64 10.48 26.1 28.08 20.24l44.75-14.92A95.83 95.83 0 0 0 160 512c194.09 0 352-157.91 352-352a95.83 95.83 0 0 0-56.28-87.17zM64 424.94L32 435.6v-39.2l32 10.66zM435.6 32l-10.66 32h-17.88L396.4 32zM160 480a64 64 0 0 1 0-128c105.87 0 192-86.13 192-192a64 64 0 0 1 128 0c0 176.45-143.55 320-320 320zm240-320a16 16 0 0 0-16 16c0 114.69-93.31 208-208 208a16 16 0 0 0 0 32c132.34 0 240-107.66 240-240a16 16 0 0 0-16-16z\"]\n};\nvar faSave = {\n prefix: 'fal',\n iconName: 'save',\n icon: [448, 512, [], \"f0c7\", \"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.941zM288 64v96H96V64h192zm128 368c0 8.822-7.178 16-16 16H48c-8.822 0-16-7.178-16-16V80c0-8.822 7.178-16 16-16h16v104c0 13.255 10.745 24 24 24h208c13.255 0 24-10.745 24-24V64.491a15.888 15.888 0 0 1 7.432 4.195l83.882 83.882A15.895 15.895 0 0 1 416 163.882V432zM224 232c-48.523 0-88 39.477-88 88s39.477 88 88 88 88-39.477 88-88-39.477-88-88-88zm0 144c-30.879 0-56-25.121-56-56s25.121-56 56-56 56 25.121 56 56-25.121 56-56 56z\"]\n};\nvar faSaxHot = {\n prefix: 'fal',\n iconName: 'sax-hot',\n icon: [640, 512, [], \"f8db\", \"M143.93 168.1c-18-26.76-33.27-49.41-34.11-50.57l-10.27-14.22-10.06 14.44C69.64 146.25 56.67 167 56.21 192h32.11c.32-9.61 3.92-19.13 11.6-32 6.19 9.18 13.73 20.4 21.52 32H192l-32-48zM37.41 192l-.14-.44c-3.6-11.44-5.27-21.18-5.27-30.64 0-23.82 24-71.55 64.15-115.63a392.69 392.69 0 0 1 30.71 37l24.39 33.6 26.28-32.13q3.25-4 6.62-7.84c25.13 32.53 39.85 70.43 39.85 85 0 9.46-1.68 19.2-5.27 30.64l-.14.44h32.95c2.55-10 4.46-20.25 4.46-31.08 0-30.45-29.72-93.23-71.12-131.66a343 343 0 0 0-32.12 34.27A442.25 442.25 0 0 0 96 0C39.85 52.1 0 120 0 160.92 0 171.75 1.91 182 4.46 192zM120 304a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm515.28-171.27L592 73.37A32 32 0 0 0 569.33 64H522.5a64 64 0 0 0-45.25 18.74l-29.76 27.62-23.09-23.1a8 8 0 0 0-11.32 0l-11.31 11.32a8 8 0 0 0 0 11.31L424 132.13l-23.48 21.78-21.39-21.39a8 8 0 0 0-11.31 0l-11.32 11.31a8 8 0 0 0 0 11.32l20.55 20.54-23.48 21.78-19.69-19.7a8 8 0 0 0-11.32 0l-11.31 11.32a8 8 0 0 0 0 11.31l18.85 18.85L248 296a25.41 25.41 0 0 1-39.76-31l5.48-9H232a8 8 0 0 0 8-8v-16a7.8 7.8 0 0 0-7-7.57l.27-.43H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h4.93C6.08 290.78 0 329.24 0 352c0 70.24 57.33 160 160 160 94.44 0 103.7-35.78 376-352h88c14.22 0 21.36-17.19 11.28-27.27zM536 128h-14.68l-9.58 11.13c-49.65 57.66-90.57 106-124.86 146.53C234 466.3 221 480 160 480c-83.52 0-128-74.34-128-128 0-21.08 6.5-60.82 13.6-96h132.26c-9 21.26-5.13 45.92 11.57 62.62A57 57 0 0 0 230 335.44c15.33 0 29.75-6 39.73-16l230.14-214.07A31.83 31.83 0 0 1 522.5 96h46.36l23.37 32z\"]\n};\nvar faSaxophone = {\n prefix: 'fal',\n iconName: 'saxophone',\n icon: [640, 512, [], \"f8dc\", \"M635.28 100.73L592 41.37A32 32 0 0 0 569.33 32H522.5a64 64 0 0 0-45.25 18.74l-29.77 27.62-23.09-23.1a8 8 0 0 0-11.31 0l-11.31 11.32a8 8 0 0 0 0 11.31L424 100.13l-23.48 21.78-21.39-21.39a8 8 0 0 0-11.31 0l-11.32 11.31a8 8 0 0 0 0 11.32l20.54 20.54-23.47 21.78-19.7-19.7a8 8 0 0 0-11.31 0l-11.31 11.32a8 8 0 0 0 0 11.31l18.85 18.85L256 256a25.41 25.41 0 0 1-39.76-31L256 160h8a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h19.46C18.64 191.92 0 280.13 0 320c0 70.24 57.33 160 160 160 94.44 0 103.69-35.78 376-352h88c14.22 0 21.36-17.19 11.28-27.27zM536 96h-14.68l-9.58 11.13c-49.65 57.66-90.57 106-124.86 146.53C234 434.3 221 448 160 448c-83.52 0-128-74.34-128-128 0-34.34 17.27-118.78 26.3-151.48l2.36-8.52h157.81l-29.67 48.49a57.41 57.41 0 0 0 49.2 86.95c15.33 0 29.75-6 39.73-16L499.87 73.37A31.83 31.83 0 0 1 522.5 64h46.36l23.37 32zM104 288a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm16-80a24 24 0 1 0 24 24 24 24 0 0 0-24-24z\"]\n};\nvar faScalpel = {\n prefix: 'fal',\n iconName: 'scalpel',\n icon: [544, 512, [], \"f61d\", \"M511.45 13.17C498.87 4.19 484.31 0 469.7 0c-23.06 0-46.27 10.44-62.13 28.97L183.68 290.6c-5.79 6.77-4.9 15.34-.5 21.57L0 512h.37c101.37 0 198.37-34.12 272.96-94.68.23-.19.46-.37.69-.56 30.39-24.9 47.16-59.96 52.22-96.75h17.57c10.41 0 20.3-4.55 27.08-12.47l154.47-180.49c29.31-34.23 23.6-87.13-13.91-113.88zm-258.28 379.3c-49.49 40.19-109.26 67.52-173.46 79.93L219.41 320h75.21c-4.94 28.79-19.33 54.35-41.45 72.47zm247.88-286.23L346.58 286.73c-.69.81-1.7 1.28-2.77 1.28H228.02L431.88 49.78C441.41 38.64 455.54 32 469.7 32c8.54 0 16.54 2.5 23.17 7.22 10.54 7.52 17.22 18.75 18.79 31.62 1.56 12.79-2.3 25.7-10.61 35.4z\"]\n};\nvar faScalpelPath = {\n prefix: 'fal',\n iconName: 'scalpel-path',\n icon: [640, 512, [], \"f61e\", \"M344 480h-80c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h80c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm144 0h-80c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h80c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm144 0h-80c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h80c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM511.45 13.17C498.87 4.19 484.31 0 469.7 0c-23.06 0-46.27 10.44-62.13 28.97L183.68 290.6c-5.79 6.77-4.9 15.34-.5 21.57L0 512h.38c101.37 0 198.38-34.12 272.96-94.68.23-.19.46-.37.69-.56 30.39-24.9 47.16-59.96 52.22-96.75h17.57c10.41 0 20.3-4.55 27.08-12.47l154.47-180.49c29.3-34.23 23.59-87.13-13.92-113.88zm-258.28 379.3c-49.49 40.19-109.26 67.52-173.46 79.93L219.41 320h75.21c-4.94 28.79-19.33 54.35-41.45 72.47zm247.88-286.23L346.58 286.73c-.69.81-1.7 1.28-2.77 1.28H228.02L431.88 49.78C441.41 38.64 455.54 32 469.7 32c8.54 0 16.54 2.5 23.17 7.22 10.54 7.52 17.22 18.75 18.79 31.62 1.56 12.79-2.3 25.7-10.61 35.4z\"]\n};\nvar faScanner = {\n prefix: 'fal',\n iconName: 'scanner',\n icon: [640, 512, [], \"f488\", \"M368 64H112C50.1 64 0 114.1 0 176c0 50.3 33.3 92.3 78.9 106.5L6.4 408C-6.9 431 1 460.3 24 473.6l55.4 32c7.6 4.4 15.8 6.4 24 6.4 16.6 0 32.7-8.6 41.6-24l60-104h67c26.5 0 48-21.5 48-48v-48h48c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16zM117.3 472c-2.9 5-8.1 8-13.9 8-2.8 0-5.5-.7-8-2.2l-55.4-32c-5-2.9-6.8-7.3-7.5-9.7s-1.3-7.1 1.6-12.1l78.5-136h110.8L117.3 472zM288 336c0 8.8-7.2 16-16 16h-48.5l37-64H288v48zm64-80H112c-44.1 0-80-35.9-80-80s35.9-80 80-80h240v160zm280 192H456c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zm0-384H456c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8V72c0-4.4-3.6-8-8-8zm0 288H456c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm0-192H456c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zm0-160H456c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8zm0 288H456c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faScannerImage = {\n prefix: 'fal',\n iconName: 'scanner-image',\n icon: [640, 512, [], \"f8f3\", \"M80 408h32a8 8 0 0 0 8-8v-32a8 8 0 0 0-8-8H80a8 8 0 0 0-8 8v32a8 8 0 0 0 8 8zm96 0h32a8 8 0 0 0 8-8v-32a8 8 0 0 0-8-8h-32a8 8 0 0 0-8 8v32a8 8 0 0 0 8 8zm444.69-138.88L17.52 32.66A8 8 0 0 0 7 36.83L.66 51.52A8 8 0 0 0 4.83 62l576.39 226H32a32 32 0 0 0-32 32v128a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V298.5a32.08 32.08 0 0 0-19.31-29.38zM608 384v64H32V320h576z\"]\n};\nvar faScannerKeyboard = {\n prefix: 'fal',\n iconName: 'scanner-keyboard',\n icon: [576, 512, [], \"f489\", \"M400 96H16c-8.8 0-16 7.2-16 16v169.4c0 4.2 1.7 8.3 4.7 11.3L32 320v144c0 26.5 21.5 48 48 48h256c26.5 0 48-21.5 48-48V320l27.3-27.3c3-3 4.7-7.1 4.7-11.3V112c0-8.8-7.2-16-16-16zm-16 178.7l-32 32V464c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V306.7l-9.4-9.4L32 274.7V128h352v146.7zM96 256h224c8.8 0 16-7.2 16-16v-64c0-8.8-7.2-16-16-16H96c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16zm16-64h192v32H112v-32zm72 128h-80c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm128 0h-80c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-128 64h-80c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm128 0h-80c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM256 8c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v56h64V8zm64 0c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56h32V8zm248-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8zm-96 0h-16c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8zm-64 0h-48c-4.4 0-8 3.6-8 8v56h64V8c0-4.4-3.6-8-8-8z\"]\n};\nvar faScannerTouchscreen = {\n prefix: 'fal',\n iconName: 'scanner-touchscreen',\n icon: [576, 512, [], \"f48a\", \"M400 96H16c-8.8 0-16 7.2-16 16v169.4c0 4.2 1.7 8.3 4.7 11.3L32 320v144c0 26.5 21.5 48 48 48h256c26.5 0 48-21.5 48-48V320l27.3-27.3c3-3 4.7-7.1 4.7-11.3V112c0-8.8-7.2-16-16-16zm-16 178.7l-32 32V464c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V306.7l-9.4-9.4L32 274.7V128h352v146.7zM112 448h192c8.8 0 16-7.2 16-16V176c0-8.8-7.2-16-16-16H112c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16zm16-256h160v224H128V192zM320 8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56h32V8zm-64 0c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v56h64V8zm312-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8zm-96 0h-16c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8zm-64 0h-48c-4.4 0-8 3.6-8 8v56h64V8c0-4.4-3.6-8-8-8z\"]\n};\nvar faScarecrow = {\n prefix: 'fal',\n iconName: 'scarecrow',\n icon: [448, 512, [], \"f70d\", \"M256 120c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm-64-16c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm253.7 82.3L419.3 160l18.3-18.3c5-5 1.5-13.7-5.7-13.7H320V96c0-53-43-96-96-96s-96 43-96 96v32H16c-7.1 0-10.7 8.6-5.7 13.7L28.7 160 2.3 186.3c-3.1 3.1-3.1 8.2 0 11.3L28.7 224l-18.3 18.3c-5 5-1.5 13.7 5.7 13.7h106.1l-26 141.3c-2.1 12.7 11.1 22.9 22.9 16.9l32.7-24.2c9.1-6.8 17-1.3 24.1 2.5V496c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16V392.5c7.6-4 15.1-9.2 24.1-2.5l32.7 24.2c11.9 6 25-4.3 22.9-16.9L325.9 256H432c7.1 0 10.7-8.6 5.7-13.7L419.3 224l26.3-26.3c3.2-3.2 3.2-8.2.1-11.4zM160 96c0-35.3 28.7-64 64-64s64 28.7 64 64v32c0 17.6-14.4 32-32 32h-64c-17.6 0-32-14.4-32-32zm80 384h-32v-70.4c9.2 4.9 11.2 6.5 16 6.5 4.7 0 6.5-1.5 16-6.5zm134.1-256h-86.6l25.4 138.7c-7.8-5.1-16.9-7.8-26.3-7.8-7.9 0-15.7 2-22.6 5.6l-40 21.3-40-21.3c-7-3.7-14.7-5.6-22.6-5.6-9.4 0-18.5 2.7-26.3 7.8L160.5 224H73.9l-32-32 32-32h62.9c11.1 19 31.5 32 55.1 32h64c23.6 0 44-13 55.1-32h63l32 32z\"]\n};\nvar faScarf = {\n prefix: 'fal',\n iconName: 'scarf',\n icon: [512, 512, [], \"f7c1\", \"M509.7 395.7l-68.8-68.6-74.4-74.1 24.1-24.7c48.6-53.7 13-113.3 11.5-115.8l-43.6-73.1c-4.3-7.2-9.9-13.3-16.8-18C320.1 6.9 288.3 0 256.6 0h-1.2c-31.7 0-63.6 6.9-85.2 21.5-6.9 4.7-12.5 10.8-16.8 18l-43.6 73.1c-1.5 2.5-37.1 62.1 11.5 115.8l24.1 24.7-74.3 74.2-68.8 68.4c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l68.8-68.6 22.6 22.6-68.8 68.6c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l68.8-68.6 22.5 22.5-68.7 69.7c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0L256 366l140.5 143.7c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-68.7-69.7 22.5-22.5 68.8 68.6c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-68.8-68.6 22.6-22.6 68.8 68.6c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.3-3.1 3.3-8.1.2-11.3zM184 394.6l-67.5-67.4 51.4-51.3 66 67.5-49.9 51.2zm144 0L145.1 206.8c-31.9-35.2-10.4-73.6-7.7-77.9l43.6-73C192 37.4 233.3 32 255.4 32h1.2c22.1 0 63.4 5.4 74.5 23.8l43.6 73c2.6 4.3 24.1 42.7-7.7 77.9l-23 23.6-65.3-65.2 41.8-41.7c8.2-8.2 11.3-20.2 8.2-31.4-3.2-11.2-12.2-19.7-23.5-22.4-17.9-4.2-34.2-5.3-49.1-5.2-14.8 0-31.1 1-49.1 5.2-11.3 2.6-20.3 11.2-23.5 22.4-3.2 11.2-.1 23.2 8.2 31.4l203.9 203.7-67.6 67.5zM214.2 100.9c11.4-2.7 25.8-4.5 41.8-4.6 16 0 30.4 1.9 41.8 4.6L256 142.6l-41.8-41.7z\"]\n};\nvar faSchool = {\n prefix: 'fal',\n iconName: 'school',\n icon: [640, 512, [], \"f549\", \"M352 192h-16v-32c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v56c0 4.42 3.58 8 8 8h40c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm16 128h-96c-26.51 0-48 21.49-48 48v136c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V368c0-8.84 7.16-16 16-16h96c8.84 0 16 7.16 16 16v136c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V368c0-26.51-21.49-48-48-48zm240-128h-96v-53.34c0-10.7-5.35-20.69-14.25-26.62l-160-106.67C332.38 1.79 326.19 0 320 0s-12.38 1.79-17.75 5.37l-160 106.67A32.02 32.02 0 0 0 128 138.67V192H32c-17.67 0-32 14.33-32 32v280c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V224h96v280c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V138.67L320 32l160 106.67V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V224h96v280c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V224c0-17.67-14.33-32-32-32zM320 96c-52.94 0-96 43.06-96 96s43.06 96 96 96 96-43.06 96-96-43.06-96-96-96zm0 160c-35.28 0-64-28.7-64-64s28.72-64 64-64 64 28.7 64 64-28.72 64-64 64z\"]\n};\nvar faScrewdriver = {\n prefix: 'fal',\n iconName: 'screwdriver',\n icon: [512, 512, [], \"f54a\", \"M416 192l96-128-64-64-128 96v73.38l-98.49 98.49c-12.24-7.85-26.24-11.86-40.27-11.86-19.13 0-38.26 7.3-52.86 21.89L10.95 395.33c-14.6 14.6-14.6 38.27 0 52.87l52.86 52.86c7.3 7.3 16.87 10.95 26.43 10.95 9.57 0 19.13-3.65 26.43-10.95L234.1 383.63c25.3-25.3 28.59-64.2 10.03-93.13l98.5-98.5H416zm-64-80l93-69.75L469.75 67 400 160h-48v-48zM211.41 360.92L93.98 478.36a5.192 5.192 0 0 1-3.74 1.55c-1 0-2.46-.27-3.74-1.55L33.65 425.5a5.3 5.3 0 0 1 0-7.48l117.43-117.43c8.06-8.06 18.77-12.5 30.17-12.5 11.4 0 22.11 4.44 30.17 12.5 16.62 16.63 16.62 43.7-.01 60.33z\"]\n};\nvar faScroll = {\n prefix: 'fal',\n iconName: 'scroll',\n icon: [640, 512, [], \"f70e\", \"M608 352h-64V112C544 50.25 493.75 0 432 0H80C35.88 0 0 35.89 0 80v80c0 17.64 14.34 32 32 32h96v224c0 51.11 40.25 92.62 90.66 95.46v.54h312C590.94 512 640 462.95 640 402.67V384c0-17.64-14.34-32-32-32zM128 160H32V80c0-26.47 21.53-48 48-48s48 21.53 48 48v80zm160 256c0 35.3-28.72 64-64 64s-64-28.7-64-64V80c0-18-5.97-34.62-16.03-48H432c44.12 0 80 35.89 80 80v240H320c-17.66 0-32 14.36-32 32v32zm320-13.33c0 42.64-34.69 77.33-77.34 77.33H295.03c15.35-17.02 24.97-39.32 24.97-64v-32h288v18.67z\"]\n};\nvar faScrollOld = {\n prefix: 'fal',\n iconName: 'scroll-old',\n icon: [640, 512, [], \"f70f\", \"M616 352h-72v-73.38L521.38 256 544 233.38v-82.75L521.38 128l22.25-22.28-.97-7.77C535.59 42.11 488.03 0 432 0H80C35.88 0 0 35.89 0 80v88c0 13.23 10.78 24 24 24h104v41.38L150.62 256 128 278.62v132.81c0 51.28 37.84 95.23 86.16 100.08 1.5.15 3 .14 4.5.23v.26h312C590.94 512 640 462.95 640 402.67V376c0-13.23-10.78-24-24-24zM128 160H32V80c0-26.47 21.53-48 48-48s48 21.53 48 48v80zm32 251.44V291.88L195.88 256 160 220.12V80c0-18-5.97-34.62-16.03-48H432c37.41 0 69.56 26.39 77.59 62.5L476.12 128 512 163.88v56.25L476.12 256 512 291.88V352h-73.38L416 374.62 393.38 352H320c-17.66 0-32 14.36-32 32v32c0 18.05-7.69 35.34-21.06 47.47-13.59 12.3-31.12 18.09-49.59 16.2-32.16-3.22-57.35-33.19-57.35-68.23zm448-8.77c0 42.64-34.69 77.33-77.34 77.33H294.83c15.82-17.55 25.17-40.18 25.17-64v-32h60.12L416 419.88 451.88 384H608v18.67z\"]\n};\nvar faScrubber = {\n prefix: 'fal',\n iconName: 'scrubber',\n icon: [496, 512, [], \"f2f8\", \"M248 40c119.3 0 216 96.6 216 216 0 119.3-96.6 216-216 216-119.3 0-216-96.6-216-216 0-119.3 96.6-216 216-216m0-32C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 216c17.6 0 32 14.4 32 32s-14.4 32-32 32-32-14.4-32-32 14.4-32 32-32m0-32c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64z\"]\n};\nvar faScythe = {\n prefix: 'fal',\n iconName: 'scythe',\n icon: [640, 512, [], \"f710\", \"M608 0H338.84C192 0 64 64 0 224h560.18l-13.06 64H392a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h148.6l-36.54 179.1a8 8 0 0 0 6.2 9.47l15.65 3.26a7.68 7.68 0 0 0 1.64.17 8 8 0 0 0 7.82-6.37L639.22 39A32 32 0 0 0 608 0zm-35.62 192H50.4C122.62 61.06 244.73 32 338.84 32H608z\"]\n};\nvar faSdCard = {\n prefix: 'fal',\n iconName: 'sd-card',\n icon: [384, 512, [], \"f7c2\", \"M320 0H128L0 128v320c0 35.3 28.7 64 64 64h256c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64zm32 448c0 17.6-14.4 32-32 32H64c-17.6 0-32-14.4-32-32V141.3L141.3 32H320c17.6 0 32 14.4 32 32v384zm-64-288h32V64h-32v96zm-64 0h32V64h-32v96zm-64 0h32V64h-32v96z\"]\n};\nvar faSearch = {\n prefix: 'fal',\n iconName: 'search',\n icon: [512, 512, [], \"f002\", \"M508.5 481.6l-129-129c-2.3-2.3-5.3-3.5-8.5-3.5h-10.3C395 312 416 262.5 416 208 416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c54.5 0 104-21 141.1-55.2V371c0 3.2 1.3 6.2 3.5 8.5l129 129c4.7 4.7 12.3 4.7 17 0l9.9-9.9c4.7-4.7 4.7-12.3 0-17zM208 384c-97.3 0-176-78.7-176-176S110.7 32 208 32s176 78.7 176 176-78.7 176-176 176z\"]\n};\nvar faSearchDollar = {\n prefix: 'fal',\n iconName: 'search-dollar',\n icon: [512, 512, [], \"f688\", \"M235.09 199.42l-45-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.62.63-42.67 20.55-42.67 45.07 0 19.97 12.98 37.81 31.58 43.39l45 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.11c-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.62-.63 42.67-20.54 42.67-45.07 0-19.97-12.98-37.81-31.58-43.39zm273.38 282.16l-128.99-129c-2.3-2.3-5.3-3.5-8.5-3.5h-10.3c34.3-37.1 55.3-86.6 55.3-141.09C415.98 93.1 322.88 0 207.99 0S0 93.1 0 207.99c0 114.89 93.1 207.99 207.99 207.99 54.5 0 103.99-21 141.09-55.2v10.2c0 3.2 1.3 6.2 3.5 8.5l128.99 128.99c4.7 4.7 12.3 4.7 17 0l9.9-9.9c4.71-4.69 4.71-12.29 0-16.99zm-300.48-97.6C110.7 383.98 32 305.29 32 207.99 32 110.69 110.7 32 207.99 32s175.99 78.7 175.99 175.99c0 97.3-78.69 175.99-175.99 175.99z\"]\n};\nvar faSearchLocation = {\n prefix: 'fal',\n iconName: 'search-location',\n icon: [512, 512, [], \"f689\", \"M208 96c-49.53 0-89.81 40.3-89.81 89.83 0 34.66 38.34 87.2 70.53 125.2 4.81 5.7 11.84 8.97 19.28 8.97s14.47-3.27 19.31-8.97c32.16-38 70.5-90.55 70.5-125.2C297.81 136.3 257.53 96 208 96zm0 188.23c-35.31-42.7-57.81-80.89-57.81-98.41 0-31.89 25.94-57.83 57.81-57.83s57.81 25.94 57.81 57.83c0 17.52-22.5 55.71-57.81 98.41zM208 160c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm300.47 321.58l-128.99-129c-2.3-2.3-5.3-3.5-8.5-3.5h-10.3c34.3-37.1 55.3-86.6 55.3-141.09C415.98 93.1 322.88 0 207.99 0S0 93.1 0 207.99c0 114.89 93.1 207.99 207.99 207.99 54.5 0 103.99-21 141.09-55.2v10.2c0 3.2 1.3 6.2 3.5 8.5l128.99 128.99c4.7 4.7 12.3 4.7 17 0l9.9-9.9c4.71-4.69 4.71-12.29 0-16.99zm-300.48-97.6C110.7 383.98 32 305.29 32 207.99 32 110.69 110.7 32 207.99 32s175.99 78.7 175.99 175.99c0 97.3-78.69 175.99-175.99 175.99z\"]\n};\nvar faSearchMinus = {\n prefix: 'fal',\n iconName: 'search-minus',\n icon: [512, 512, [], \"f010\", \"M307.8 223.8h-200c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12zM508.3 497L497 508.3c-4.7 4.7-12.3 4.7-17 0l-129-129c-2.3-2.3-3.5-5.3-3.5-8.5v-8.5C310.6 395.7 261.7 416 208 416 93.8 416 1.5 324.9 0 210.7-1.5 93.7 93.7-1.5 210.7 0 324.9 1.5 416 93.8 416 208c0 53.7-20.3 102.6-53.7 139.5h8.5c3.2 0 6.2 1.3 8.5 3.5l129 129c4.7 4.7 4.7 12.3 0 17zM384 208c0-97.3-78.7-176-176-176S32 110.7 32 208s78.7 176 176 176 176-78.7 176-176z\"]\n};\nvar faSearchPlus = {\n prefix: 'fal',\n iconName: 'search-plus',\n icon: [512, 512, [], \"f00e\", \"M319.8 204v8c0 6.6-5.4 12-12 12h-84v84c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12v-84h-84c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h84v-84c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v84h84c6.6 0 12 5.4 12 12zm188.5 293L497 508.3c-4.7 4.7-12.3 4.7-17 0l-129-129c-2.3-2.3-3.5-5.3-3.5-8.5v-8.5C310.6 395.7 261.7 416 208 416 93.8 416 1.5 324.9 0 210.7-1.5 93.7 93.7-1.5 210.7 0 324.9 1.5 416 93.8 416 208c0 53.7-20.3 102.6-53.7 139.5h8.5c3.2 0 6.2 1.3 8.5 3.5l129 129c4.7 4.7 4.7 12.3 0 17zM384 208c0-97.3-78.7-176-176-176S32 110.7 32 208s78.7 176 176 176 176-78.7 176-176z\"]\n};\nvar faSeedling = {\n prefix: 'fal',\n iconName: 'seedling',\n icon: [512, 512, [], \"f4d8\", \"M442.7 32c-95.9 0-176.4 79.4-197.2 185.7C210.5 145.1 144.8 96 69.3 96H0v16c0 132.3 90.9 240 202.7 240H240v120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V288h37.3C421.1 288 512 180.3 512 48V32h-69.3zm-240 288C113 320 39.2 235.2 32.5 128h36.8c89.7 0 163.4 84.8 170.2 192h-36.8zm106.6-64h-36.8C279.2 148.8 353 64 442.7 64h36.8c-6.7 107.2-80.5 192-170.2 192z\"]\n};\nvar faSendBack = {\n prefix: 'fal',\n iconName: 'send-back',\n icon: [640, 512, [], \"f87e\", \"M175 64H79a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16zm-16 96H95V96h64zm288-16v80h32v-80a48 48 0 0 0-48-48H287v32h144a16 16 0 0 1 16 16zm112 176h-96a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-96a16 16 0 0 0-16-16zm-16 96h-64v-64h64zm48-160H431a48 48 0 0 0-48 48v160a48 48 0 0 0 48 48h160a48 48 0 0 0 48-48V304a48 48 0 0 0-48-48zm16 208a16 16 0 0 1-16 16H431a16 16 0 0 1-16-16V304a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16zm-416-96v-80h-32v80a48 48 0 0 0 48 48h144v-32H207a16 16 0 0 1-16-16zm64-160V48a48 48 0 0 0-48-48H47A48 48 0 0 0-1 48v160a48 48 0 0 0 48 48h160a48 48 0 0 0 48-48zm-224 0V48a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16v160a16 16 0 0 1-16 16H47a16 16 0 0 1-16-16z\"]\n};\nvar faSendBackward = {\n prefix: 'fal',\n iconName: 'send-backward',\n icon: [512, 512, [], \"f87f\", \"M464,160H208a48,48,0,0,0-48,48V464a48,48,0,0,0,48,48H464a48,48,0,0,0,48-48V208A48,48,0,0,0,464,160Zm16,304a16,16,0,0,1-16,16H208a16,16,0,0,1-16-16V208a16,16,0,0,1,16-16H464a16,16,0,0,1,16,16ZM32,304V48A16,16,0,0,1,48,32H304a16,16,0,0,1,16,16v80h32V48A48,48,0,0,0,304,0H48A48,48,0,0,0,0,48V304a48,48,0,0,0,48,48h80V320H48A16,16,0,0,1,32,304Zm400-80H240a16,16,0,0,0-16,16V432a16,16,0,0,0,16,16H432a16,16,0,0,0,16-16V240A16,16,0,0,0,432,224ZM416,416H256V256H416Z\"]\n};\nvar faSensor = {\n prefix: 'fal',\n iconName: 'sensor',\n icon: [448, 512, [], \"e028\", \"M384,32H64A64,64,0,0,0,0,96V416a64,64,0,0,0,64,64H384a64,64,0,0,0,64-64V96A64,64,0,0,0,384,32Zm32,384a32,32,0,0,1-32,32H64a32,32,0,0,1-32-32V96A32,32,0,0,1,64,64H384a32,32,0,0,1,32,32ZM112,128a16,16,0,0,0-16,16V272a16,16,0,0,0,32,0V144A16,16,0,0,0,112,128Zm64,0a16,16,0,0,0-16,16V272a16,16,0,0,0,32,0V144A16,16,0,0,0,176,128Zm64,0a16,16,0,0,0-16,16V272a16,16,0,0,0,32,0V144A16,16,0,0,0,240,128Z\"]\n};\nvar faSensorAlert = {\n prefix: 'fal',\n iconName: 'sensor-alert',\n icon: [640, 512, [], \"e029\", \"M629.89,368.26l-117.31-203a74.6,74.6,0,0,0-129.15,0l-117.32,203A74.49,74.49,0,0,0,330.68,480H565.32a74.49,74.49,0,0,0,64.57-111.74ZM565.32,448H330.68c-32.76,0-53.25-35.4-36.88-63.73l117.33-203a42.61,42.61,0,0,1,73.75,0l117.32,203C618.57,412.6,598.08,448,565.32,448ZM448,368.17a20,20,0,1,0,20,20A20,20,0,0,0,448,368.17ZM462,248.43h-27.9a10,10,0,0,0-9.95,11l8,79.82a10,10,0,0,0,9.95,9H454a10,10,0,0,0,9.95-9l8-79.82A10,10,0,0,0,462,248.43ZM233.86,448H64a32,32,0,0,1-32-32V96A32,32,0,0,1,64,64H384a32,32,0,0,1,32,32v5a107.62,107.62,0,0,1,32-5,64,64,0,0,0-64-64H64A64,64,0,0,0,0,96V416a64,64,0,0,0,64,64H254.47a108.3,108.3,0,0,1-16.16-21.31C236.33,455.27,235.43,451.55,233.86,448ZM224,144V272a16,16,0,0,0,32,0V144a16,16,0,0,0-32,0Zm-64,0V272a16,16,0,0,0,32,0V144a16,16,0,0,0-32,0Zm-64,0V272a16,16,0,0,0,32,0V144a16,16,0,0,0-32,0Z\"]\n};\nvar faSensorFire = {\n prefix: 'fal',\n iconName: 'sensor-fire',\n icon: [640, 512, [], \"e02a\", \"M544,154.44C531.25,166,522.08,174,508.59,188.5c-26.35-32.29-51-53.82-64.59-66.06C325.57,229.47,320,304.05,320,320c0,88.22,71.78,160,160,160s160-71.78,160-160C640,243.09,551.71,161.41,544,154.44ZM480,448A128.13,128.13,0,0,1,352,320c0-38.25,38.88-102.72,92-154.12a461.15,461.15,0,0,1,51,57.18l12.09,16.22,13-15.5c7.53-9,15.5-17.56,23.75-25.66C583.34,239.06,608,295.72,608,320A128.13,128.13,0,0,1,480,448ZM160,144V272a16,16,0,0,0,32,0V144a16,16,0,0,0-32,0ZM64,448a32,32,0,0,1-32-32V96A32,32,0,0,1,64,64H384a32,32,0,0,1,32,32v8.61c8.47-7.65,2.43-2.86,30.11-23.4A63.9,63.9,0,0,0,384,32H64A64,64,0,0,0,0,96V416a64,64,0,0,0,64,64H374.1a193.09,193.09,0,0,1-36.8-32ZM224,144V272a16,16,0,0,0,32,0V144a16,16,0,0,0-32,0ZM96,144V272a16,16,0,0,0,32,0V144a16,16,0,0,0-32,0ZM524.11,257l-25.94,28.75c-17.21-21.26-11.36-14.29-39.89-46.36C417.4,287,398.63,305.84,398.63,337c0,45,35.45,79,82.47,79a84.65,84.65,0,0,0,47.77-14.58c31.94-21.73,41.85-64.36,23.08-99.19C548.74,296.24,548.68,296.33,524.11,257Zm-43,127c-27.83,0-50.47-17.9-50.47-47,0-14.48,9.37-27.25,28.08-49,2.67,3,38.11,47,38.11,47l22.62-25.07C546.3,353,514.05,384,481.1,384Z\"]\n};\nvar faSensorOn = {\n prefix: 'fal',\n iconName: 'sensor-on',\n icon: [640, 512, [], \"e02b\", \"M528,144a16.16,16.16,0,0,0,7.16-1.68l64-32a16,16,0,0,0-14.32-28.63l-64,32A16,16,0,0,0,528,144Zm96,96H528a16,16,0,1,0,0,32h96a16,16,0,0,0,0-32ZM384,32H64A64,64,0,0,0,0,96V416a64,64,0,0,0,64,64H384a64,64,0,0,0,64-64V96A64,64,0,0,0,384,32Zm32,384a32,32,0,0,1-32,32H64a32,32,0,0,1-32-32V96A32,32,0,0,1,64,64H384a32,32,0,0,1,32,32ZM112,128a16,16,0,0,0-16,16V272a16,16,0,0,0,32,0V144A16,16,0,0,0,112,128Zm64,0a16,16,0,0,0-16,16V272a16,16,0,0,0,32,0V144A16,16,0,0,0,176,128Zm64,0a16,16,0,0,0-16,16V272a16,16,0,0,0,32,0V144A16,16,0,0,0,240,128ZM599.16,401.7l-64-32a16,16,0,0,0-14.32,28.63l64,32a16,16,0,0,0,14.32-28.63Z\"]\n};\nvar faSensorSmoke = {\n prefix: 'fal',\n iconName: 'sensor-smoke',\n icon: [640, 512, [], \"e02c\", \"M586.25,293.61a72.1,72.1,0,0,0-71.58-64.28,71.34,71.34,0,0,0-22.29,3.55,98.67,98.67,0,0,0-168.77,54.79A98.67,98.67,0,0,0,354.67,480H541.33a98.59,98.59,0,0,0,44.92-186.39ZM541.33,448H354.67a66.67,66.67,0,1,1,0-133.33c.46,0,.9.12,1.36.13a66.6,66.6,0,0,1,127.19-37.92,39.83,39.83,0,0,1,68.67,38.85A66.55,66.55,0,0,1,541.33,448ZM224,144V272a16,16,0,0,0,32,0V144a16,16,0,0,0-32,0ZM64,448a32,32,0,0,1-32-32V96A32,32,0,0,1,64,64H384a32,32,0,0,1,32,32v75.11c1.8-.07,3.52-.44,5.33-.44a131.76,131.76,0,0,1,26.67,3V96a64,64,0,0,0-64-64H64A64,64,0,0,0,0,96V416a64,64,0,0,0,64,64H270a130.94,130.94,0,0,1-27.06-32Zm96-304V272a16,16,0,0,0,32,0V144a16,16,0,0,0-32,0Zm-64,0V272a16,16,0,0,0,32,0V144a16,16,0,0,0-32,0Z\"]\n};\nvar faServer = {\n prefix: 'fal',\n iconName: 'server',\n icon: [512, 512, [], \"f233\", \"M376 256c0-13.255 10.745-24 24-24s24 10.745 24 24-10.745 24-24 24-24-10.745-24-24zm-40 24c13.255 0 24-10.745 24-24s-10.745-24-24-24-24 10.745-24 24 10.745 24 24 24zm176-128c0 12.296-4.629 23.507-12.232 32 7.603 8.493 12.232 19.704 12.232 32v80c0 12.296-4.629 23.507-12.232 32 7.603 8.493 12.232 19.704 12.232 32v80c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48v-80c0-12.296 4.629-23.507 12.232-32C4.629 319.507 0 308.296 0 296v-80c0-12.296 4.629-23.507 12.232-32C4.629 175.507 0 164.296 0 152V72c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v80zm-480 0c0 8.822 7.178 16 16 16h416c8.822 0 16-7.178 16-16V72c0-8.822-7.178-16-16-16H48c-8.822 0-16 7.178-16 16v80zm432 48H48c-8.822 0-16 7.178-16 16v80c0 8.822 7.178 16 16 16h416c8.822 0 16-7.178 16-16v-80c0-8.822-7.178-16-16-16zm16 160c0-8.822-7.178-16-16-16H48c-8.822 0-16 7.178-16 16v80c0 8.822 7.178 16 16 16h416c8.822 0 16-7.178 16-16v-80zm-80-224c13.255 0 24-10.745 24-24s-10.745-24-24-24-24 10.745-24 24 10.745 24 24 24zm-64 0c13.255 0 24-10.745 24-24s-10.745-24-24-24-24 10.745-24 24 10.745 24 24 24zm64 240c-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\"]\n};\nvar faShapes = {\n prefix: 'fal',\n iconName: 'shapes',\n icon: [512, 512, [], \"f61f\", \"M480 288H320c-17.67 0-32 14.33-32 32v160c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32V320c0-17.67-14.33-32-32-32zm0 192H320V320h160v160zM128 256C57.31 256 0 313.31 0 384s57.31 128 128 128 128-57.31 128-128-57.31-128-128-128zm0 224c-52.93 0-96-43.07-96-96 0-52.94 43.07-96 96-96 52.94 0 96 43.06 96 96 0 52.93-43.06 96-96 96zm378.98-278.86L400.07 18.29C392.95 6.1 380.47 0 368 0s-24.95 6.1-32.07 18.29L229.02 201.14c-14.26 24.38 3.56 54.86 32.07 54.86h213.82c28.51 0 46.33-30.48 32.07-54.86zm-27.6 20.39c-.94 1.64-2.45 2.47-4.47 2.47H261.09c-2.02 0-3.53-.83-4.47-2.47-1.21-2.12-.35-3.6.02-4.23L363.55 34.44c.95-1.62 2.44-2.44 4.45-2.44s3.5.82 4.45 2.44L479.36 217.3c.37.63 1.24 2.11.02 4.23z\"]\n};\nvar faShare = {\n prefix: 'fal',\n iconName: 'share',\n icon: [576, 512, [], \"f064\", \"M564.907 196.35L388.91 12.366C364.216-13.45 320 3.746 320 40.016v88.154C154.548 130.155 0 160.103 0 331.19c0 94.98 55.84 150.231 89.13 174.571 24.233 17.722 58.021-4.992 49.68-34.51C100.937 336.887 165.575 321.972 320 320.16V408c0 36.239 44.19 53.494 68.91 27.65l175.998-184c14.79-15.47 14.79-39.83-.001-55.3zm-23.127 33.18l-176 184c-4.933 5.16-13.78 1.73-13.78-5.53V288c-171.396 0-295.313 9.707-243.98 191.7C72 453.36 32 405.59 32 331.19 32 171.18 194.886 160 352 160V40c0-7.262 8.851-10.69 13.78-5.53l176 184a7.978 7.978 0 0 1 0 11.06z\"]\n};\nvar faShareAll = {\n prefix: 'fal',\n iconName: 'share-all',\n icon: [576, 512, [], \"f367\", \"M470.632 201.371L310.63 41.4C290.59 21.36 256 35.44 256 64.03v72.69C140.5 140.56 0 164.89 0 317.79c0 64.98 33.54 118.26 85.11 155.97 24.19 17.7 58.04-4.92 49.69-34.51-27.7-98.19-.38-122.06 121.2-126.42v71.15c0 28.61 34.61 42.64 54.63 22.63l160.002-159.98c12.491-12.499 12.491-32.759 0-45.259zM288 384.001v-103.9c-145.671 1.326-224.979 22.633-184 167.9-31.51-23.05-72-65.11-72-130.21 0-131.425 125.835-148.345 256-149.69v-104.1l160 160-160 160zm278.628-137.373l-160 159.978c-13.454 13.454-33.492 11.509-45.191.106L544 224.001 361.438 41.294c11.695-11.401 31.723-13.362 45.189.105l160 159.974c12.497 12.497 12.497 32.758.001 45.255z\"]\n};\nvar faShareAlt = {\n prefix: 'fal',\n iconName: 'share-alt',\n icon: [448, 512, [], \"f1e0\", \"M352 320c-28.6 0-54.2 12.5-71.8 32.3l-95.5-59.7c9.6-23.4 9.7-49.8 0-73.2l95.5-59.7c17.6 19.8 43.2 32.3 71.8 32.3 53 0 96-43 96-96S405 0 352 0s-96 43-96 96c0 13 2.6 25.3 7.2 36.6l-95.5 59.7C150.2 172.5 124.6 160 96 160c-53 0-96 43-96 96s43 96 96 96c28.6 0 54.2-12.5 71.8-32.3l95.5 59.7c-4.7 11.3-7.2 23.6-7.2 36.6 0 53 43 96 96 96s96-43 96-96c-.1-53-43.1-96-96.1-96zm0-288c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zM96 320c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm256 160c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64z\"]\n};\nvar faShareAltSquare = {\n prefix: 'fal',\n iconName: 'share-alt-square',\n icon: [448, 512, [], \"f1e1\", \"M288 232c30.9 0 56-25.1 56-56s-25.1-56-56-56-56 25.1-56 56c0 3.2.3 6.5.9 9.7l-53.6 26.8c-9.6-7.8-21.9-12.5-35.2-12.5-30.9 0-56 25.1-56 56s25.1 56 56 56c13.4 0 25.6-4.7 35.2-12.5l53.6 26.8c-.5 3.1-.9 6.4-.9 9.7 0 30.9 25.1 56 56 56s56-25.1 56-56-25.1-56-56-56c-16.1 0-30.6 6.8-40.8 17.7l-49.7-24.9c3.4-11 3.4-22.7 0-33.6l49.7-24.9c10.2 10.9 24.7 17.7 40.8 17.7zm0-80c13.2 0 24 10.8 24 24s-10.8 24-24 24-24-10.8-24-24 10.8-24 24-24zM144 280c-13.2 0-24-10.8-24-24s10.8-24 24-24 24 10.8 24 24-10.8 24-24 24zm144 32c13.2 0 24 10.8 24 24s-10.8 24-24 24-24-10.8-24-24 10.8-24 24-24zM400 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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16z\"]\n};\nvar faShareSquare = {\n prefix: 'fal',\n iconName: 'share-square',\n icon: [576, 512, [], \"f14d\", \"M566.633 169.37L406.63 9.392C386.626-10.612 352 3.395 352 32.022v72.538C210.132 108.474 88 143.455 88 286.3c0 84.74 49.78 133.742 79.45 155.462 24.196 17.695 58.033-4.917 49.7-34.51C188.286 304.843 225.497 284.074 352 280.54V352c0 28.655 34.654 42.606 54.63 22.63l160.003-160c12.489-12.5 12.489-32.76 0-45.26zM384 352V248.04c-141.718.777-240.762 15.03-197.65 167.96C154.91 393 120 351.28 120 286.3c0-134.037 131.645-149.387 264-150.26V32l160 160-160 160zm37.095 52.186c2.216-1.582 4.298-3.323 6.735-5.584 7.68-7.128 20.17-1.692 20.17 8.787V464c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h172.146c6.612 0 11.954 5.412 11.852 12.04-.084 5.446-4.045 10.087-9.331 11.396-9.462 2.343-18.465 4.974-27.074 7.914-1.25.427-2.555.65-3.876.65H48c-8.837 0-16 7.163-16 16v352c0 8.837 7.163 16 16 16h352c8.837 0 16-7.163 16-16v-50.002c0-3.905 1.916-7.543 5.095-9.812z\"]\n};\nvar faSheep = {\n prefix: 'fal',\n iconName: 'sheep',\n icon: [640, 512, [], \"f711\", \"M496 96c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm117.31 11.61L576 89.27V80c0-26.47-21.53-48-48-48h-50.75C470.66 13.38 452.88 0 432 0c-26.47 0-48 21.53-48 48v53.01c-1.24-.36-2.38-.97-3.66-1.25-14.03-3.38-28.38-1.34-40.94 5.41-9.03-5.7-19.72-8.89-31.53-9.17-10.78 0-20.94 2.78-29.91 8.12-18-10.59-41.62-10.58-59.56-.05-18.31-10.89-43.09-10.45-61.16 1-12.28-6.66-26.56-8.7-40.88-5.67-17.03 3.84-31.41 14.97-39.62 30.16-16.94.88-33.06 9.11-44.12 23.12-10.81 13.95-15.06 31.86-12.12 48.95C7.62 213.09 0 229.81 0 247.69c0 17.91 7.5 34.59 20.19 46-3.06 17.3 1.25 35.27 12.12 48.98 10.78 14.02 26.78 22.3 43.78 23.16 4.83 9.1 11.99 16.48 20.41 21.98.14 3.96.33 7.93 1.26 11.81l21.12 87.86C122.34 501.86 135.21 512 150 512h57.53c20.95 0 36.12-19.76 31.02-39.86l-20.29-80.07a57.854 57.854 0 0 0 29.3 7.93c10.62 0 20.88-2.84 29.91-8.17 9.16 5.31 20.62 8.56 31.84 8.02 3.67-.12 7.17-1 10.69-1.77V480c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V356.83c5.69-3.63 11.01-7.98 15.38-13.51 10.81-13.95 15.06-31.86 12.12-48.95 12.88-11.45 20.5-28.17 20.5-46.05 0-8.54-1.81-16.77-4.97-24.31h92.63c14.91 0 28.81-8.03 36.28-21.02 17.97-31.55 20.06-45.08 20.06-52.52 0-18.35-10.22-34.77-26.69-42.86zM150 480l-19.82-82.44c9.14-.19 18.15-2.34 26.38-6.72 9.03 5.79 19.79 8.77 30.64 8.92L207.53 480H150zm266 0h-64v-84.09c8.85 2.29 18.22 2.72 27.62.68 15.13-3.41 27.89-12.78 36.38-25.42V480zm33.34-206.05l-12.22 6.84 5.16 13.02c8.51 21.38-9.05 44.04-30.59 40.3l-14.16-2.52-4.03 13.78c-5.48 18.83-28.59 28.04-44.84 13.67l-11.44-10.14-10.66 10.95c-8.68 8.94-25.64 12.3-38.12.45l-11.06-10.53-11.03 10.58c-10.31 9.92-27.25 9.91-37.16.16l-11.06-10.92-11.22 10.77c-10.59 10.09-28.12 9.72-38-.47l-10.44-10.83-11.44 9.77c-17.43 14.83-39.91 4.28-45.06-13.95L98 330.92l-14.25 2.56c-21.2 3.8-38.89-18.69-30.34-40.3l5.16-13.02-12.22-6.84c-18.61-10.44-19.64-40.06.31-51.28l12.22-6.84-5.16-13.02c-8.56-21.51 9.19-44.04 30.59-40.3l14.16 2.52 4.03-13.78c5.54-19.02 28.75-27.9 44.84-13.67l11.44 10.14 10.66-10.95c9.91-10.23 27.62-10.58 37.56-.69l11.09 10.97 11.25-10.77c10.28-9.88 27.25-9.89 37.66.02l11.06 10.56 11.06-10.59c10.49-10.05 27.6-10.21 37.97.48l10.44 10.8 11.44-9.75c17.4-14.87 39.91-4.26 45.06 13.95l3.97 13.95 14.25-2.56c21.24-3.85 38.87 18.75 30.34 40.3l-5.16 13.02 12.22 6.84c18.62 10.44 19.64 40.07-.31 51.28zm142.82-86.87c-1.75 3.08-4.94 4.92-8.5 4.92H476.55c.14-13.93-4.14-27.67-12.86-38.67-10.78-14.02-26.78-22.3-43.78-23.16-1.1-2.08-2.59-3.87-3.91-5.79V48c0-8.83 7.19-16 16-16s16 7.17 16 16v16h80c8.81 0 16 7.17 16 16v29.17l55.19 27.16c5.44 2.67 8.81 8.09 8.81 14.14 0 3.28-3.34 14.7-15.84 36.61z\"]\n};\nvar faShekelSign = {\n prefix: 'fal',\n iconName: 'shekel-sign',\n icon: [384, 512, [], \"f20b\", \"M224 152v208c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V152c0-66.28-53.73-120-120-120H16C7.16 32 0 39.16 0 48v424c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V80h104c39.76 0 72 32.23 72 72zM376 32h-32c-4.42 0-8 3.58-8 8v320c0 39.76-32.24 72-72 72H160V152c0-4.42-3.58-8-8-8h-32c-4.42 0-8 3.58-8 8v312c0 8.84 7.16 16 16 16h136c66.27 0 120-53.73 120-120V40c0-4.42-3.58-8-8-8z\"]\n};\nvar faShield = {\n prefix: 'fal',\n iconName: 'shield',\n icon: [512, 512, [], \"f132\", \"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.3zM262.2 478.8c-3.9 1.6-8.3 1.6-12.3 0C152 440 48 304 48 128c0-6.5 3.9-12.3 9.8-14.8l192-80c3.8-1.6 8.3-1.7 12.3 0l192 80c6 2.5 9.8 8.3 9.8 14.8.1 176-103.9 312-201.7 350.8z\"]\n};\nvar faShieldAlt = {\n prefix: 'fal',\n iconName: 'shield-alt',\n icon: [512, 512, [], \"f3ed\", \"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.3zM262.2 478.8c-4 1.6-8.4 1.6-12.3 0C152 440 48 304 48 128c0-6.5 3.9-12.3 9.8-14.8l192-80c3.9-1.6 8.4-1.6 12.3 0l192 80c6 2.5 9.9 8.3 9.8 14.8.1 176-103.9 312-201.7 350.8zM256 411V100l-142.7 59.5c10.1 120.1 77.1 215 142.7 251.5zm-32-66.8c-36.4-39.9-65.8-97.8-76.1-164.5L224 148z\"]\n};\nvar faShieldCheck = {\n prefix: 'fal',\n iconName: 'shield-check',\n icon: [512, 512, [], \"f2f7\", \"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.3zM262.2 478.8c-4 1.6-8.4 1.6-12.3 0C152 440 48 304 48 128c0-6.5 3.9-12.3 9.8-14.8l192-80c3.9-1.6 8.4-1.6 12.3 0l192 80c6 2.5 9.9 8.3 9.8 14.8.1 176-103.9 312-201.7 350.8zm136.2-325c-4.7-4.7-12.3-4.7-17-.1L218 315.8l-69-69.5c-4.7-4.7-12.3-4.7-17-.1l-8.5 8.5c-4.7 4.7-4.7 12.3-.1 17l85.9 86.6c4.7 4.7 12.3 4.7 17 .1l180.5-179c4.7-4.7 4.7-12.3.1-17z\"]\n};\nvar faShieldCross = {\n prefix: 'fal',\n iconName: 'shield-cross',\n icon: [448, 512, [], \"f712\", \"M420.43 83.69l-179.2-80C235.72 1.23 229.86 0 224 0s-11.72 1.23-17.23 3.69l-179.2 80C10.88 91.14 0 108.62 0 128c0 198.49 106.86 335.71 206.77 380.31 5.51 2.46 11.37 3.69 17.23 3.69s11.72-1.23 17.23-3.69C321.13 472.64 448 349.28 448 128c0-19.38-10.88-36.86-27.57-44.31zM32 128c0-6.72 3.46-12.79 8.62-15.09L176 52.47V144H32.53c-.17-5.34-.53-10.56-.53-16zm144 324.7C120.23 410.83 68.46 337.57 45.13 240H176v212.7zm96-.56V240h131.28C378.36 345.18 321.12 414.46 272 452.14zM409.58 208H240v265.19c-4.09 2.22-8.07 4.23-11.81 5.9-1.57.7-4.69 1.64-8.37 0-3.92-1.75-7.87-3.88-11.81-5.96V208H38.69a478.05 478.05 0 0 1-4.15-32H208V38.19l11.81-5.27c3.68-1.64 6.79-.71 8.37 0L240 38.19V176h173.54c-1.02 10.95-2.29 21.67-3.96 32zm5.84-64H272V52.47l135.39 60.44c5.15 2.3 8.61 8.36 8.61 15.09 0 5.5-.42 10.64-.58 16z\"]\n};\nvar faShieldVirus = {\n prefix: 'fal',\n iconName: 'shield-virus',\n icon: [512, 512, [], \"e06c\", \"M272,240a16,16,0,1,0,16,16A16,16,0,0,0,272,240ZM466.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.12,48.12,0,0,0,36.91,0C360.09,472.61,496,349.3,496,128A48,48,0,0,0,466.5,83.68ZM262.13,478.77a16.1,16.1,0,0,1-12.32,0C152.61,438.27,48,311.21,48,128a15.9,15.9,0,0,1,9.9-14.76L249.76,33.27A30,30,0,0,1,256.05,32a30.64,30.64,0,0,1,6.14,1.21l192,80A16.1,16.1,0,0,1,464,128C464,338.91,331.93,449.68,262.13,478.77ZM384,224H371.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.58a31.32,31.32,0,0,1-22.4,9.43c-16.45,0-32.23-12.77-32.23-32.06V112a16,16,0,0,0-32,0v12.12c0,19.29-15.78,32.06-32.23,32.06a31.34,31.34,0,0,1-22.4-9.43l-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.63H128a16,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.58a31.3,31.3,0,0,1,22.4-9.43c16.45,0,32.23,12.77,32.23,32.06V368a16,16,0,0,0,32,0V355.88c0-19.29,15.78-32.07,32.23-32.06a31.34,31.34,0,0,1,22.4,9.43l8.57,8.58a16,16,0,0,0,22.63-22.63l-8.58-8.57C329.09,290.47,343.37,256,371.88,256H384a16,16,0,0,0,0-32Zm-71.25,39.51A64.17,64.17,0,0,0,308,291.92c-1.23-.07-2.48-.1-3.73-.1a64.37,64.37,0,0,0-44.12,17.41c-1.48,1.37-2.87,2.81-4.19,4.29a64.18,64.18,0,0,0-48.15-21.7c-1.25,0-2.49,0-3.73.11A64.38,64.38,0,0,0,182.51,240,64.38,64.38,0,0,0,204,188.08c1.23.07,2.48.1,3.73.1A64.17,64.17,0,0,0,256,166.38a64.17,64.17,0,0,0,48.23,21.8c1.25,0,2.5,0,3.73-.1A64.38,64.38,0,0,0,329.49,240,64.11,64.11,0,0,0,312.75,263.51ZM240,208a16,16,0,1,0,16,16A16,16,0,0,0,240,208Z\"]\n};\nvar faShip = {\n prefix: 'fal',\n iconName: 'ship',\n icon: [640, 512, [], \"f21a\", \"M480 366.077l85.182-78.083c18.063-16.557 12.34-44.442-8.577-53.406L480 201.756V80c0-8.837-7.163-16-16-16h-48V24c0-13.255-10.745-24-24-24H248c-13.255 0-24 10.745-24 24v40h-48c-8.837 0-16 7.163-16 16v121.756l-76.055 32.595c-22.484 9.636-26.373 37.834-9.568 53.238L160 366.077C160 402.167 109.048 480 12 480c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12 65.489 0 117.316-28.984 150.756-73.148C173.036 480.79 210.938 512 256 512h128c45.062 0 82.964-31.21 93.244-73.148C510.878 483.273 562.822 512 628 512c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12-93.623 0-148-74.786-148-113.923zM256 32h128v32H256V32zm-64 64h256v92.042l-115.395-49.455a31.999 31.999 0 0 0-25.211 0L192 188.042V96zm256 256v64c0 35.346-28.654 64-64 64H256c-35.346 0-64-28.654-64-64v-64l-96-88 224-96 224 96-96 88z\"]\n};\nvar faShippingFast = {\n prefix: 'fal',\n iconName: 'shipping-fast',\n icon: [640, 512, [], \"f48b\", \"M280 192c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H40c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h240zm352 192h-24V275.9c0-16.8-6.8-33.3-18.8-45.2l-83.9-83.9c-11.8-12-28.3-18.8-45.2-18.8H416V78.6c0-25.7-22.2-46.6-49.4-46.6H113.4C86.2 32 64 52.9 64 78.6V96H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h240c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H96V78.6c0-8.1 7.8-14.6 17.4-14.6h253.2c9.6 0 17.4 6.5 17.4 14.6V384H207.6C193 364.7 170 352 144 352c-18.1 0-34.6 6.2-48 16.4V288H64v144c0 44.2 35.8 80 80 80s80-35.8 80-80c0-5.5-.6-10.8-1.6-16h195.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-16H632c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-488 96c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm272-320h44.1c8.4 0 16.7 3.4 22.6 9.4l83.9 83.9c.8.8 1.1 1.9 1.8 2.8H416V160zm80 320c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-96h-16.4C545 364.7 522 352 496 352s-49 12.7-63.6 32H416v-96h160v96zM256 248v-16c0-4.4-3.6-8-8-8H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h240c4.4 0 8-3.6 8-8z\"]\n};\nvar faShippingTimed = {\n prefix: 'fal',\n iconName: 'shipping-timed',\n icon: [640, 512, [], \"f48c\", \"M208 96c-66.2 0-120 53.8-120 120s53.8 120 120 120 120-53.8 120-120S274.2 96 208 96zm0 208c-48.5 0-88-39.5-88-88s39.5-88 88-88 88 39.5 88 88-39.5 88-88 88zm40-80h-24v-56c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v80c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm384 160h-24V275.9c0-16.8-6.8-33.3-18.8-45.2l-83.9-83.9c-11.8-12-28.3-18.8-45.2-18.8H416V78.6c0-25.7-22.2-46.6-49.4-46.6H49.4C22.2 32 0 52.9 0 78.6v290.8C0 395.1 22.2 416 49.4 416h16.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-16h195.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-16H632c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-488 96c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm240-96H207.6C193 364.7 170 352 144 352s-49 12.7-63.6 32h-31c-9.6 0-17.4-6.5-17.4-14.6V78.6C32 70.5 39.8 64 49.4 64h317.2c9.6 0 17.4 6.5 17.4 14.6V384zm32-224h44.1c8.4 0 16.7 3.4 22.6 9.4l83.9 83.9c.8.8 1.1 1.9 1.8 2.8H416V160zm80 320c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-96h-16.4C545 364.7 522 352 496 352s-49 12.7-63.6 32H416v-96h160v96z\"]\n};\nvar faShishKebab = {\n prefix: 'fal',\n iconName: 'shish-kebab',\n icon: [512, 512, [], \"f821\", \"M511.21 84.17c-3.75-29.74-21.09-55.74-47.52-71.32a94.9 94.9 0 0 0-96.22.5c-23.7 14.27-39.82 36.62-45.41 63s.18 53.93 14.87 76.37l-25.78 25.76-42.44-42.45a62.59 62.59 0 0 0-88.54 0l-42.31 42.31A62.3 62.3 0 0 0 119.62 226 62.39 62.39 0 0 0 72 244.28l-42.3 42.3a62.68 62.68 0 0 0 0 88.54L72 417.45 2.34 487a8 8 0 0 0 0 11.32l11.31 11.31a8 8 0 0 0 11.32 0l69.64-69.58 42.27 42.27a62.57 62.57 0 0 0 88.54 0l42.3-42.3A62.4 62.4 0 0 0 286 392.38a62.34 62.34 0 0 0 47.67-18.25l42.29-42.3a62.56 62.56 0 0 0 0-88.54l-42.15-42.15 25.78-25.75c10.85-10.84 13.08-27.69 5.53-40.07-6.3-10.35-12.12-21.3-13-33.39-1.79-25.28 10-47.52 30.85-60.55 19.09-11.92 44.05-12.64 63.6-1.48 18.32 10.48 30.35 28.1 32.92 48.31A63.64 63.64 0 0 1 466.18 136a8 8 0 0 0 .3 10.76l11.44 11.44a8 8 0 0 0 11.64-.25 95.23 95.23 0 0 0 21.65-73.78zM245.09 417.42l-42.3 42.3a30.6 30.6 0 0 1-43.28 0L52.28 352.49a30.6 30.6 0 0 1 0-43.28l42.3-42.3a30.59 30.59 0 0 1 43.28 0l107.23 107.23a30.59 30.59 0 0 1 0 43.28zm108.22-151.5a30.62 30.62 0 0 1 0 43.29L311 351.51a30.62 30.62 0 0 1-43.29 0L160.49 244.28a30.62 30.62 0 0 1 0-43.29l42.3-42.3a30.62 30.62 0 0 1 43.29 0z\"]\n};\nvar faShoePrints = {\n prefix: 'fal',\n iconName: 'shoe-prints',\n icon: [640, 512, [], \"f54b\", \"M337.46 272c-34.91 0-76.16 14.06-104.73 34.29-24.79 17.55-44.52 34.29-104.73 34.29H64c-35.35 0-64 30.7-64 68.57S28.65 480 64 480h64l57.53 14.82C217.42 504.3 250.17 512 293.3 512 403.84 512 512 456.84 512 374.86 512 306.29 427.82 272 337.46 272zM112 448H64c-17.05 0-32-18.16-32-38.86 0-20.17 14.36-36.57 32-36.57h48V448zm81.51 15.84L144 451.08v-79.11c55.33-2.95 80.75-20.66 103.08-36.62C338.33 270.38 480 316.73 480 374.86c0 62.15-121.49 137.92-286.49 88.98zM421.29 0c-43.42 0-76.17 7.78-107.77 17.17L256 32h-64c-35.35 0-64 32.98-64 70.86 0 37.87 28.65 68.57 64 68.57h64c60.2 0 79.94 16.73 104.73 34.29C389.3 225.94 430.54 240 465.46 240 555.82 240 640 205.71 640 137.14 640 55.84 533.12 0 421.29 0zM240 139.43h-48c-17.64 0-32-16.4-32-36.57C160 82.16 174.95 64 192 64h48v75.43zM465.46 208c-27.58 0-62.24-11.41-86.24-28.4-23.71-16.89-48.76-36.45-107.22-39.56V60.92l50.65-13.07C352.05 39.1 381.72 32 421.29 32 473.38 32 608 58.02 608 137.14c0 46.52-71.71 70.86-142.54 70.86z\"]\n};\nvar faShoppingBag = {\n prefix: 'fal',\n iconName: 'shopping-bag',\n icon: [448, 512, [], \"f290\", \"M352 128C352 57.421 294.579 0 224 0 153.42 0 96 57.421 96 128H0v304c0 44.183 35.817 80 80 80h288c44.183 0 80-35.817 80-80V128h-96zM224 32c52.935 0 96 43.065 96 96H128c0-52.935 43.065-96 96-96zm192 400c0 26.467-21.533 48-48 48H80c-26.467 0-48-21.533-48-48V160h64v48c0 8.837 7.164 16 16 16s16-7.163 16-16v-48h192v48c0 8.837 7.163 16 16 16s16-7.163 16-16v-48h64v272z\"]\n};\nvar faShoppingBasket = {\n prefix: 'fal',\n iconName: 'shopping-basket',\n icon: [576, 512, [], \"f291\", \"M564 192h-76.875L347.893 37.297c-5.91-6.568-16.027-7.101-22.596-1.189s-7.101 16.028-1.189 22.596L444.075 192h-312.15L251.893 58.703c5.912-6.567 5.379-16.685-1.189-22.596-6.569-5.912-16.686-5.38-22.596 1.189L88.875 192H12c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h16.444L58.25 438.603C61.546 462.334 81.836 480 105.794 480h364.412c23.958 0 44.248-17.666 47.544-41.397L547.556 224H564c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12zm-77.946 242.201c-1.093 7.867-7.906 13.799-15.848 13.799H105.794c-7.942 0-14.755-5.932-15.848-13.799L60.752 224h454.497l-29.195 210.201zM304 280v112c0 8.837-7.163 16-16 16-8.836 0-16-7.163-16-16V280c0-8.837 7.164-16 16-16 8.837 0 16 7.163 16 16zm112 0v112c0 8.837-7.163 16-16 16s-16-7.163-16-16V280c0-8.837 7.163-16 16-16s16 7.163 16 16zm-224 0v112c0 8.837-7.164 16-16 16s-16-7.163-16-16V280c0-8.837 7.164-16 16-16s16 7.163 16 16z\"]\n};\nvar faShoppingCart = {\n prefix: 'fal',\n iconName: 'shopping-cart',\n icon: [576, 512, [], \"f07a\", \"M551.991 64H129.28l-8.329-44.423C118.822 8.226 108.911 0 97.362 0H12C5.373 0 0 5.373 0 12v8c0 6.627 5.373 12 12 12h78.72l69.927 372.946C150.305 416.314 144 431.42 144 448c0 35.346 28.654 64 64 64s64-28.654 64-64a63.681 63.681 0 0 0-8.583-32h145.167a63.681 63.681 0 0 0-8.583 32c0 35.346 28.654 64 64 64 35.346 0 64-28.654 64-64 0-17.993-7.435-34.24-19.388-45.868C506.022 391.891 496.76 384 485.328 384H189.28l-12-64h331.381c11.368 0 21.177-7.976 23.496-19.105l43.331-208C578.592 77.991 567.215 64 551.991 64zM240 448c0 17.645-14.355 32-32 32s-32-14.355-32-32 14.355-32 32-32 32 14.355 32 32zm224 32c-17.645 0-32-14.355-32-32s14.355-32 32-32 32 14.355 32 32-14.355 32-32 32zm38.156-192H171.28l-36-192h406.876l-40 192z\"]\n};\nvar faShovel = {\n prefix: 'fal',\n iconName: 'shovel',\n icon: [512, 512, [], \"f713\", \"M501.55 86.12l-75.67-75.67C418.91 3.48 409.76 0 400.6 0s-18.3 3.48-25.27 10.45l-29.2 29.19C329.21 56.57 320 79.24 320 102.68c0 24.51 9.79 41.81 15.96 50.74L208.67 280.7l-56.57-56.57c-6.25-6.25-14.44-9.37-22.63-9.37s-16.38 3.12-22.63 9.37l-67.88 67.88C-11.02 342-6.29 473.03 16.34 495.66c9.87 9.87 40.39 16.34 75.8 16.34 45.75 0 99.67-10.79 127.85-38.97l67.88-67.88c12.5-12.5 12.5-32.76 0-45.25l-56.57-56.57 127.28-127.28c8.92 6.16 26.26 15.96 50.76 15.96 23.41 0 46.09-9.22 63.01-26.13l29.19-29.2c13.94-13.95 13.94-36.62.01-50.56zM197.36 450.41C160.69 487.07 63 483.13 39.2 472.67c-10.64-22.12-13.59-122.04 22.4-158.03l67.85-67.88h.03l135.76 135.77-67.88 67.88zm281.56-336.37l-29.19 29.19c-52.79 52.79-134.1-27.84-80.96-80.96l29.2-29.2c1.45-1.45 3.84-1.45 5.29 0l75.67 75.68c1.44 1.45 1.44 3.84-.01 5.29z\"]\n};\nvar faShovelSnow = {\n prefix: 'fal',\n iconName: 'shovel-snow',\n icon: [512, 512, [], \"f7c3\", \"M180.7 244.7l-80 80c-6.2 6.2-6.2 16.4 0 22.6 3.1 3.1 7.2 4.7 11.3 4.7 4.1 0 8.2-1.6 11.3-4.7l80-80c6.2-6.2 6.2-16.4 0-22.6-6.2-6.3-16.4-6.3-22.6 0zm-16 166.6c3.1 3.1 7.2 4.7 11.3 4.7s8.2-1.6 11.3-4.7l80-80c6.2-6.2 6.2-16.4 0-22.6-6.2-6.3-16.4-6.3-22.6 0l-80 80c-6.3 6.2-6.3 16.4 0 22.6zM502.6 65.9L446.1 9.4C439.8 3.1 431.6 0 423.4 0S407 3.1 400.8 9.4l-17 17c-24.2 24.2-27.4 61.3-10 89.1L267.6 221.8l-47.2-47.2c-9.7-9.7-22.5-14.6-35.3-14.6-10.7 0-21.5 3.4-30.5 10.4L19.4 274.9c-23.8 18.4-26.1 53.5-4.8 74.8l147.7 147.7c9.8 9.8 22.6 14.6 35.3 14.6 14.8 0 29.6-6.6 39.5-19.4l104.5-135.2c15.4-19.9 13.6-48.1-4.2-65.8l-47.2-47.2 106.3-106.3c11.7 7.3 24.9 11.1 38.2 11.1 18.4 0 36.9-7 50.9-21.1l17-17c12.5-12.4 12.5-32.7 0-45.2zM314.7 314.2c6.4 6.4 7 16.5 1.5 23.6L211.8 473c-3.4 4.4-8.6 7-14.2 7-2.8 0-8.1-.7-12.7-5.3L37.3 327.1c-5-5-5.4-10.8-5.2-13.8.2-3 1.3-8.7 6.9-13l135.2-104.5c4-3.1 8.2-3.7 10.9-3.7 4.8 0 9.3 1.9 12.7 5.3l116.9 116.8zM463 105.5c-7.6 7.6-17.6 11.7-28.3 11.7s-20.7-4.2-28.3-11.7c-7.6-7.6-11.7-17.6-11.7-28.3s4.2-20.7 11.7-28.3l16.9-17L480 88.6l-17 16.9z\"]\n};\nvar faShower = {\n prefix: 'fal',\n iconName: 'shower',\n icon: [512, 512, [], \"f2cc\", \"M336,320a16,16,0,1,0-16-16A16,16,0,0,0,336,320Zm32-128a16,16,0,1,0,16,16A16,16,0,0,0,368,192Zm0,96a16,16,0,1,0-16-16A16,16,0,0,0,368,288Zm-32-64a16,16,0,1,0,16,16A16,16,0,0,0,336,224Zm64,32a16,16,0,1,0-16-16A16,16,0,0,0,400,256Zm32-32a16,16,0,1,0-16-16A16,16,0,0,0,432,224ZM304,256a16,16,0,1,0,16,16A16,16,0,0,0,304,256Zm0,64a16,16,0,1,0,16,16A16,16,0,0,0,304,320Zm0,64a16,16,0,1,0,16,16A16,16,0,0,0,304,384ZM432,256a16,16,0,1,0,16,16A16,16,0,0,0,432,256ZM381.66,104.64,370.34,93.32a8,8,0,0,0-11.31,0l-5.91,5.91A110.48,110.48,0,0,0,205.25,86.62L181.81,63.2A106.5,106.5,0,0,0,0,138.52V472a8,8,0,0,0,8,8H24a8,8,0,0,0,8-8V138.52A74.5,74.5,0,0,1,159.19,85.83l23.43,23.42a110.48,110.48,0,0,0,12.61,147.87L189.32,263a8,8,0,0,0,0,11.31l11.32,11.32a8,8,0,0,0,11.31,0L381.66,116A8,8,0,0,0,381.66,104.64ZM218,234.34A78.84,78.84,0,0,1,192,176a80.09,80.09,0,0,1,80-80,78.84,78.84,0,0,1,58.34,26ZM496,192a16,16,0,1,0,16,16A16,16,0,0,0,496,192Zm-32,32a16,16,0,1,0,16,16A16,16,0,0,0,464,224ZM336,352a16,16,0,1,0,16,16A16,16,0,0,0,336,352Zm32-32a16,16,0,1,0,16,16A16,16,0,0,0,368,320Zm32-32a16,16,0,1,0,16,16A16,16,0,0,0,400,288Z\"]\n};\nvar faShredder = {\n prefix: 'fal',\n iconName: 'shredder',\n icon: [512, 512, [], \"f68a\", \"M432 192h-16v-82.75c0-8.49-3.37-16.62-9.37-22.63L329.37 9.37c-6-6-14.14-9.37-22.63-9.37H126.48C109.64 0 96 14.33 96 32v160H80c-44.18 0-80 35.82-80 80v96c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16v-96c0-44.18-35.82-80-80-80zM320 45.25L370.75 96H320V45.25zM128.12 32H288v64c0 17.67 14.33 32 32 32h64v64H128.02l.1-160zM480 352H32v-80c0-26.47 21.53-48 48-48h352c26.47 0 48 21.53 48 48v80zm-80-88c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zM48 504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-88H48v88zm96 0c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-88h-32v88zm96 0c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-88h-32v88zm96 0c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-88h-32v88zm96 0c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-88h-32v88z\"]\n};\nvar faShuttleVan = {\n prefix: 'fal',\n iconName: 'shuttle-van',\n icon: [640, 512, [], \"f5b6\", \"M625.17 238.2L499.19 87.03A64.006 64.006 0 0 0 450.02 64H48C21.49 64 0 85.49 0 112v272c0 17.67 14.33 32 32 32h33.62c7.43 36.47 39.75 64 78.38 64s70.95-27.53 78.38-64h195.24c7.43 36.47 39.75 64 78.38 64s70.95-27.53 78.38-64H608c17.67 0 32-14.33 32-32V279.17c0-14.97-5.25-29.47-14.83-40.97zM352 96h98.02c9.53 0 18.48 4.2 24.58 11.51L571.68 224H352V96zm-160 0h128v128H192V96zM32 112c0-8.82 7.18-16 16-16h112v128H32V112zm112 336c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm352 0c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm112-64h-33.62c-7.43-36.47-39.75-64-78.38-64s-70.95 27.53-78.38 64H222.38c-7.43-36.47-39.75-64-78.38-64s-70.95 27.53-78.38 64H32V256h566.35l2.23 2.68a32.093 32.093 0 0 1 7.42 20.49V384z\"]\n};\nvar faShuttlecock = {\n prefix: 'fal',\n iconName: 'shuttlecock',\n icon: [512, 512, [], \"f45b\", \"M480 192h-61.6l10.4-72.6c3-20.8-14.5-39.1-36.2-36.2L320 93.6V32c0-17.7-14.3-32-32-32h-43.1c-12.2 0-23.5 7.1-28.8 18.1l-118 245.8-67 67c-41.4 41.4-41.4 108.6 0 150 20.7 20.7 47.8 31.1 75 31.1 27.1 0 54.3-10.4 75-31.1l67-67 245.8-118c11-5.3 18.1-16.6 18.1-28.8V224c0-17.7-14.3-32-32-32zm-82.9-77.1l-11.4 80.2L294 218l22.9-91.7 80.2-11.4zM244.9 32H288v70.3l-102.4 53.3L244.9 32zm35 110.6l-22.3 89.2-87.8 87.8-42.4-42.4 35.2-73.5 117.3-61.1zM32 406c0-18.6 7-36 19.5-49.6l104.2 104.2C142 473 124.6 480 106 480c-40.9 0-74-33.1-74-74zm146.5 32.2L73.8 333.5l32.2-32.2L210.7 406l-32.2 32.2zm56.3-53.5l-42.4-42.4 87.8-87.8 89.2-22.3-61.1 117.3-73.5 35.2zM480 267l-123.6 59.4L409.7 224H480v43z\"]\n};\nvar faSickle = {\n prefix: 'fal',\n iconName: 'sickle',\n icon: [512, 512, [], \"f822\", \"M511.54 160.28C500.73 104.84 445.48 0 313.94 0c-92 0-170.24 64.23-190.24 156.2-6.23 28.67-7.3 64.76-1.57 97.92l-49.55 49.54a16 16 0 0 0 0 22.63l11.31 11.31-79.2 79.2a16 16 0 0 0 0 22.63l67.88 67.88a16 16 0 0 0 22.62 0l79.2-79.2 11.31 11.31a16 16 0 0 0 22.62 0l45.24-45.26a16 16 0 0 0 0-22.63l-3.15-3.15 27.28-27.27a16 16 0 0 0 .94-21.59c-20.63-24.58-29.28-55.84-24.34-88.08a120.9 120.9 0 0 1 54.53-83.5c35.91-23 83.16-24.66 120.38-4.05A124.34 124.34 0 0 1 469.51 179a23.25 23.25 0 0 0 28.31 7.61 23.52 23.52 0 0 0 13.72-26.28zM197 405.49l-22.63-22.63-22.63 22.63-67.85 67.88-45.26-45.25 67.88-67.88 22.63-22.62L106.52 315l22.63-22.63 90.51 90.51zm247.73-289.58C397.48 89.72 337.38 91.72 291.6 121a153 153 0 0 0-68.93 105.62c-5.56 36.48 2.44 72.08 22.58 101.72l-17.43 17.43L161 279c-14.11-33.36-13.43-82.15-6.09-116 16.78-77.13 82.15-131 159-131C401.07 32 448.38 86.47 469 132.33a162.22 162.22 0 0 0-24.28-16.42z\"]\n};\nvar faSigma = {\n prefix: 'fal',\n iconName: 'sigma',\n icon: [320, 512, [], \"f68b\", \"M296 160h16c4.42 0 8-3.58 8-8V96c0-17.67-14.32-32-31.99-32H33.39C22.2 64 11.2 69.12 5.19 78.56c-7.69 12.08-6.76 26.87 2.8 38.5L138.09 256 7.3 395.73c-8.81 10.77-9.82 25.69-2.07 37.78C11.3 442.96 22.38 448 33.61 448h254.4c17.67 0 31.99-14.33 31.99-32v-56c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v56l-256.65.81 130.07-138.92c11.53-12.28 11.53-31.5.03-43.77L32.05 96h255.96v56c0 4.42 3.58 8 7.99 8z\"]\n};\nvar faSign = {\n prefix: 'fal',\n iconName: 'sign',\n icon: [512, 512, [], \"f4d9\", \"M504 64H96V8c0-4.4-3.6-8-8-8H72c-4.4 0-8 3.6-8 8v56H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h56v408c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V96h96v48h-16c-17.7 0-32 14.3-32 32v176c0 17.7 14.3 32 32 32h288c17.7 0 32-14.3 32-32V176c0-17.7-14.3-32-32-32h-16V96h56c4.4 0 8-3.6 8-8V72c0-4.4-3.6-8-8-8zm-40 288H176V176h288v176zm-48-208H224V96h192v48z\"]\n};\nvar faSignIn = {\n prefix: 'fal',\n iconName: 'sign-in',\n icon: [512, 512, [], \"f090\", \"M184 83.5l164.5 164c4.7 4.7 4.7 12.3 0 17L184 428.5c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17l132-131.4H12c-6.6 0-12-5.4-12-12v-10c0-6.6 5.4-12 12-12h279.9L160 107.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.6-4.7 12.2-4.7 16.9 0zM512 400V112c0-26.5-21.5-48-48-48H332c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h132c8.8 0 16 7.2 16 16v288c0 8.8-7.2 16-16 16H332c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h132c26.5 0 48-21.5 48-48z\"]\n};\nvar faSignInAlt = {\n prefix: 'fal',\n iconName: 'sign-in-alt',\n icon: [512, 512, [], \"f2f6\", \"M32 217.1c0-8.8 7.2-16 16-16h144v-93.9c0-7.1 8.6-10.7 13.6-5.7l141.6 143.1c6.3 6.3 6.3 16.4 0 22.7L205.6 410.4c-5 5-13.6 1.5-13.6-5.7v-93.9H48c-8.8 0-16-7.2-16-16v-77.7m-32 0v77.7c0 26.5 21.5 48 48 48h112v61.9c0 35.5 43 53.5 68.2 28.3l141.7-143c18.8-18.8 18.8-49.2 0-68L228.2 78.9c-25.1-25.1-68.2-7.3-68.2 28.3v61.9H48c-26.5 0-48 21.6-48 48zM512 400V112c0-26.5-21.5-48-48-48H332c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h132c8.8 0 16 7.2 16 16v288c0 8.8-7.2 16-16 16H332c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h132c26.5 0 48-21.5 48-48z\"]\n};\nvar faSignLanguage = {\n prefix: 'fal',\n iconName: 'sign-language',\n icon: [448, 512, [], \"f2a7\", \"M447.971 255.391l-4.467-138.16c-1.57-48.503-65.102-66.816-91.36-24.961l-55.919-72.891C286.778 7.064 272.495.001 257.039 0c-15.93-.001-30.091 7.625-39.007 19.206-35.993-16.888-76.766 13.785-69.427 54.289-30.125 13.048-39.039 51.157-19.364 76.804l4.816 6.277c-25.733 14.752-33.109 49.561-14.534 73.773l8.418 10.973h-52.92c-32.727 0-55.982 31.248-47.933 62.349C11.542 311.644.374 327.898.01 347.221c-.371 19.654 10.668 36.491 26.55 44.946-8.624 32.448 16.301 62.869 48.328 62.869h7.246C77.853 485.01 100.941 512 131.143 512h95.892c11.305 0 22.617-1.333 33.62-3.96l71.85-17.159c24.568-5.867 42.026-28.037 42.026-53.589V342.06l52.546-41.529c13.648-10.787 21.459-27.662 20.894-45.14zm-334.334 207.07c-.091-4.771 1.736-9.31 5.145-12.782 3.457-3.524 8.026-5.465 12.865-5.465h55.619a8 8 0 0 0 8-8v-5.178a8 8 0 0 0-8-8H74.887c-23.423 0-24.037-35.786-.504-35.786h112.883a8 8 0 0 0 8-8v-5.179a8 8 0 0 0-8-8H50.014c-23.426 0-24.034-35.785-.504-35.785h137.756a8 8 0 0 0 8-8v-5.179a8 8 0 0 0-8-8H75.525c-23.429 0-24.033-35.786-.504-35.786h150.505c7.685 0 10.959-9.854 4.751-14.437l-27.755-20.486c-19.135-14.124 2.039-42.644 20.507-29.008l110.145 81.305c5.859 4.325 9.357 11.312 9.357 18.691V437.29c0 10.771-7.18 20.01-17.459 22.465l-71.85 17.159a112.86 112.86 0 0 1-26.187 3.085h-95.893c-9.47.001-17.323-7.866-17.505-17.538zm59.145-273.264l7.578 9.878c-11.571 15.417-10.662 36.638 1.045 50.996h-6.421l-30.072-39.2c-14.556-18.97 13.442-40.482 27.87-21.674zm174.094 82.761l-110.144-81.304c-11.634-8.586-26.841-10.128-39.76-4.64l-42.344-55.195c-14.408-18.782 12.669-41.491 27.252-22.479l69.353 90.401a7.995 7.995 0 0 0 5.36 3.069 7.983 7.983 0 0 0 5.948-1.662l4.025-3.182a8.001 8.001 0 0 0 1.387-11.146L183.63 75.904c-14.411-18.788 12.672-41.488 27.251-22.481l84.634 110.321a7.995 7.995 0 0 0 5.36 3.069 7.983 7.983 0 0 0 5.948-1.662l4.025-3.182a8.001 8.001 0 0 0 1.387-11.146l-68.651-89.487c-14.396-18.768 12.642-41.525 27.251-22.481l92.467 120.532a8.001 8.001 0 0 0 14.344-5.128l-1.126-34.813c-.784-24.211 34.249-24.39 35-1.182l4.468 138.16c.239 7.377-3.033 14.479-8.753 19l-41.574 32.858c-.341-14.339-7.308-27.851-18.785-36.324z\"]\n};\nvar faSignOut = {\n prefix: 'fal',\n iconName: 'sign-out',\n icon: [512, 512, [], \"f08b\", \"M48 64h132c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12H48c-8.8 0-16 7.2-16 16v288c0 8.8 7.2 16 16 16h132c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48zm279 19.5l-7.1 7.1c-4.7 4.7-4.7 12.3 0 17l132 131.4H172c-6.6 0-12 5.4-12 12v10c0 6.6 5.4 12 12 12h279.9L320 404.4c-4.7 4.7-4.7 12.3 0 17l7.1 7.1c4.7 4.7 12.3 4.7 17 0l164.5-164c4.7-4.7 4.7-12.3 0-17L344 83.5c-4.7-4.7-12.3-4.7-17 0z\"]\n};\nvar faSignOutAlt = {\n prefix: 'fal',\n iconName: 'sign-out-alt',\n icon: [512, 512, [], \"f2f5\", \"M160 217.1c0-8.8 7.2-16 16-16h144v-93.9c0-7.1 8.6-10.7 13.6-5.7l141.6 143.1c6.3 6.3 6.3 16.4 0 22.7L333.6 410.4c-5 5-13.6 1.5-13.6-5.7v-93.9H176c-8.8 0-16-7.2-16-16v-77.7m-32 0v77.7c0 26.5 21.5 48 48 48h112v61.9c0 35.5 43 53.5 68.2 28.3l141.7-143c18.8-18.8 18.8-49.2 0-68L356.2 78.9c-25.1-25.1-68.2-7.3-68.2 28.3v61.9H176c-26.5 0-48 21.6-48 48zM0 112v288c0 26.5 21.5 48 48 48h132c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12H48c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16h132c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12H48C21.5 64 0 85.5 0 112z\"]\n};\nvar faSignal = {\n prefix: 'fal',\n iconName: 'signal',\n icon: [640, 512, [], \"f012\", \"M208 288h-32c-4.42 0-8 3.58-8 8v208c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V296c0-4.42-3.58-8-8-8zM80 384H48c-4.42 0-8 3.58-8 8v112c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V392c0-4.42-3.58-8-8-8zm256-192h-32c-4.42 0-8 3.58-8 8v304c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V200c0-4.42-3.58-8-8-8zm128-96h-32c-4.42 0-8 3.58-8 8v400c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V104c0-4.42-3.58-8-8-8zM592 0h-32c-4.42 0-8 3.58-8 8v496c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V8c0-4.42-3.58-8-8-8z\"]\n};\nvar faSignal1 = {\n prefix: 'fal',\n iconName: 'signal-1',\n icon: [640, 512, [], \"f68c\", \"M80 384H48c-4.42 0-8 3.58-8 8v112c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V392c0-4.42-3.58-8-8-8z\"]\n};\nvar faSignal2 = {\n prefix: 'fal',\n iconName: 'signal-2',\n icon: [640, 512, [], \"f68d\", \"M208 288h-32c-4.42 0-8 3.58-8 8v208c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V296c0-4.42-3.58-8-8-8zM80 384H48c-4.42 0-8 3.58-8 8v112c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V392c0-4.42-3.58-8-8-8z\"]\n};\nvar faSignal3 = {\n prefix: 'fal',\n iconName: 'signal-3',\n icon: [640, 512, [], \"f68e\", \"M208 288h-32c-4.42 0-8 3.58-8 8v208c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V296c0-4.42-3.58-8-8-8zM80 384H48c-4.42 0-8 3.58-8 8v112c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V392c0-4.42-3.58-8-8-8zm256-192h-32c-4.42 0-8 3.58-8 8v304c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V200c0-4.42-3.58-8-8-8z\"]\n};\nvar faSignal4 = {\n prefix: 'fal',\n iconName: 'signal-4',\n icon: [640, 512, [], \"f68f\", \"M208 288h-32c-4.42 0-8 3.58-8 8v208c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V296c0-4.42-3.58-8-8-8zM80 384H48c-4.42 0-8 3.58-8 8v112c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V392c0-4.42-3.58-8-8-8zm256-192h-32c-4.42 0-8 3.58-8 8v304c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V200c0-4.42-3.58-8-8-8zm128-96h-32c-4.42 0-8 3.58-8 8v400c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V104c0-4.42-3.58-8-8-8z\"]\n};\nvar faSignalAlt = {\n prefix: 'fal',\n iconName: 'signal-alt',\n icon: [640, 512, [], \"f690\", \"M576 32v448h-32V32h32M416 160v320h-32V160h32M256 288v192h-32V288h32M96 416v64H64v-64h32M576 0h-32c-17.67 0-32 14.33-32 32v448c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32zM416 128h-32c-17.67 0-32 14.33-32 32v320c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V160c0-17.67-14.33-32-32-32zM256 256h-32c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V288c0-17.67-14.33-32-32-32zM96 384H64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z\"]\n};\nvar faSignalAlt1 = {\n prefix: 'fal',\n iconName: 'signal-alt-1',\n icon: [640, 512, [], \"f691\", \"M96 416v64H64v-64h32m0-32H64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z\"]\n};\nvar faSignalAlt2 = {\n prefix: 'fal',\n iconName: 'signal-alt-2',\n icon: [640, 512, [], \"f692\", \"M256 288v192h-32V288h32M96 416v64H64v-64h32m160-160h-32c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V288c0-17.67-14.33-32-32-32zM96 384H64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z\"]\n};\nvar faSignalAlt3 = {\n prefix: 'fal',\n iconName: 'signal-alt-3',\n icon: [640, 512, [], \"f693\", \"M416 160v320h-32V160h32M256 288v192h-32V288h32M96 416v64H64v-64h32m320-288h-32c-17.67 0-32 14.33-32 32v320c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V160c0-17.67-14.33-32-32-32zM256 256h-32c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V288c0-17.67-14.33-32-32-32zM96 384H64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z\"]\n};\nvar faSignalAltSlash = {\n prefix: 'fal',\n iconName: 'signal-alt-slash',\n icon: [640, 512, [], \"f694\", \"M384 160h32v110.5l32 25.2V160c0-17.7-14.3-32-32-32h-32c-17.7 0-32 14.3-32 32v60.1l32 25.2zM544 32h32v364.5l32 25.2V32c0-17.7-14.3-32-32-32h-32c-17.7 0-32 14.3-32 32v314.1l32 25.2zm93 453.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zM224 256c-17.7 0-32 14.3-32 32v192c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V291.9L242.4 256zm32 224h-32V288h32zm160 0h-32V367.5l-32-25.2V480c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32v-62.1l-32-25.2zM96 384H64c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32v-64c0-17.7-14.3-32-32-32zm0 96H64v-64h32z\"]\n};\nvar faSignalSlash = {\n prefix: 'fal',\n iconName: 'signal-slash',\n icon: [640, 512, [], \"f695\", \"M80 384H48c-4.4 0-8 3.6-8 8v112c0 4.4 3.6 8 8 8h32c4.4 0 8-3.6 8-8V392c0-4.4-3.6-8-8-8zm392-280c0-4.4-3.6-8-8-8h-32c-4.4 0-8 3.6-8 8v172.8l48 37.8zM600 8c0-4.4-3.6-8-8-8h-32c-4.4 0-8 3.6-8 8v369.6l48 37.8zM424 504c0 4.4 3.6 8 8 8h32c4.4 0 8-3.6 8-8v-67.2L424 399zM208 288h-32c-4.4 0-8 3.6-8 8v208c0 4.4 3.6 8 8 8h32c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8zm429 197.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zM296 504c0 4.4 3.6 8 8 8h32c4.4 0 8-3.6 8-8V336l-48-37.8z\"]\n};\nvar faSignalStream = {\n prefix: 'fal',\n iconName: 'signal-stream',\n icon: [576, 512, [], \"f8dd\", \"M96.81 77.93L85.47 66.41a8 8 0 0 0-11.55.1C26.18 118 0 185 0 256s26.18 138 73.92 189.49a8 8 0 0 0 11.55.09l11.34-11.51a8.13 8.13 0 0 0 .07-11.24C55 377.45 32 318.51 32 256S55 134.55 96.88 89.17a8.13 8.13 0 0 0-.07-11.24zm83.93 69l-11.3-11.49a8 8 0 0 0-11.64.15 181.1 181.1 0 0 0 0 240.76 8 8 0 0 0 11.64.15l11.3-11.5a8.21 8.21 0 0 0 .14-11.22 148.17 148.17 0 0 1 0-195.64 8.21 8.21 0 0 0-.14-11.14zm321.35-80.42a8 8 0 0 0-11.56-.1l-11.34 11.52a8.13 8.13 0 0 0-.07 11.24C521 134.55 544 193.49 544 256s-23 121.45-64.88 166.83a8.13 8.13 0 0 0 .07 11.24l11.34 11.51a8 8 0 0 0 11.56-.09C549.82 394 576 327 576 256s-26.18-138-73.91-189.49zM288 192a64 64 0 1 0 64 64 64 64 0 0 0-64-64zm0 96a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm118.56-152.53L395.26 147a8.21 8.21 0 0 0-.14 11.22 148.17 148.17 0 0 1 0 195.64 8.21 8.21 0 0 0 .14 11.22l11.3 11.49a8 8 0 0 0 11.64-.15 181.1 181.1 0 0 0 0-240.76 8 8 0 0 0-11.64-.19z\"]\n};\nvar faSignature = {\n prefix: 'fal',\n iconName: 'signature',\n icon: [640, 512, [], \"f5b7\", \"M630.1 206.8c-32.7 8.4-77.1 30.8-108.7 49.6-14.7 8.8-29.9 17.9-41.5 23.4-31.3 15.2-58.3 28.2-84.1 28.2-12.9 0-23-4.3-29.9-12.7-11.3-13.8-11.3-35.3-7.9-63.3 3.3-26.9.6-47.8-7.6-57.3-4.4-5-10-6.9-18.7-6.3C307 170 257 210.8 169.6 300.9l-54.4 56 70-187.6c11.8-31.6 3.6-66.1-20.9-87.8C145 64.3 112 54.3 77.3 78L3.5 127.8c-3.5 2.3-4.5 7-2.5 10.6l9.2 16.2c2.3 4.1 7.6 5.3 11.5 2.7L97.5 106c6.6-4.5 14-6.8 21.4-6.8 9.1 0 17.6 3.4 24.8 9.8 13.2 11.7 17.6 30.2 11.3 47.1L55.2 423.7c-1.9 5.2-1 12.6 2.2 17.7 2.4 3.7 6.6 6.1 11.3 6.6 4.9.3 9.7-1.4 13-4.9C125 396.8 239.5 278.4 298 228.4l20.4-17.4c3.4-2.9 8.5-.3 8.2 4.1l-2.1 27.9c-2 27.3-2.4 55.9 16.8 78.6 12.4 14.5 30.7 21.9 54.6 21.9 32.7 0 64.1-15.1 97.3-31.1 10.2-4.9 24.9-14.1 39.2-23 30.9-19.3 72.3-40.5 101.8-47.7 3.5-.9 5.9-4 5.9-7.6v-17.3c-.1-7.4-5-11.2-10-10z\"]\n};\nvar faSimCard = {\n prefix: 'fal',\n iconName: 'sim-card',\n icon: [384, 512, [], \"f7c4\", \"M64 240v160c0 26.5 21.5 48 48 48h160c26.5 0 48-21.5 48-48V240c0-26.5-21.5-48-48-48H112c-26.5 0-48 21.5-48 48zm152 24h-48v-40h48v40zm72 0h-40v-40h24c8.8 0 16 7.2 16 16v24zm-40 112h40v24c0 8.8-7.2 16-16 16h-24v-40zm-80 0h48v40h-48v-40zm-72 0h40v40h-24c-8.8 0-16-7.2-16-16v-24zm0-80h192v48H96v-48zm0-56c0-8.8 7.2-16 16-16h24v40H96v-24zM0 64v384c0 35.3 28.7 64 64 64h256c35.3 0 64-28.7 64-64V128L256 0H64C28.7 0 0 28.7 0 64zm32 0c0-17.6 14.4-32 32-32h178.7L352 141.3V448c0 17.6-14.4 32-32 32H64c-17.6 0-32-14.4-32-32V64z\"]\n};\nvar faSink = {\n prefix: 'fal',\n iconName: 'sink',\n icon: [512, 512, [], \"e06d\", \"M504,288H416V256h56a8,8,0,0,0,8-8V232a8,8,0,0,0-8-8H400a16,16,0,0,0-16,16v48H304V112a16,16,0,0,1,32,0v16a32,32,0,0,0,32,32h32a32,32,0,0,0,32-32V114.26c0-20.8-4.79-41.61-15.56-59.4A112.58,112.58,0,0,0,297.81,2.12C245.77,12.23,208,60,208,115.77V288H128V240a16,16,0,0,0-16-16H40a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H96v32H8a8,8,0,0,0-8,8v16a8,8,0,0,0,8,8H32v96a96,96,0,0,0,96,96H384a96,96,0,0,0,96-96V320h24a8,8,0,0,0,8-8V296A8,8,0,0,0,504,288ZM240,115.77c0-40.45,26.88-75,63.91-82.24A80.17,80.17,0,0,1,400,112v16H368V112a48,48,0,0,0-96,0V288H240ZM448,416a64.07,64.07,0,0,1-64,64H128a64.07,64.07,0,0,1-64-64V320H448Z\"]\n};\nvar faSiren = {\n prefix: 'fal',\n iconName: 'siren',\n icon: [448, 512, [], \"e02d\", \"M416,320h-1.88L390.88,134.08A80.13,80.13,0,0,0,311.5,64h-175a80.13,80.13,0,0,0-79.38,70.08L33.88,320H32A32,32,0,0,0,0,352v64a32,32,0,0,0,32,32H416a32,32,0,0,0,32-32V352A32,32,0,0,0,416,320ZM88.88,138.05A48.07,48.07,0,0,1,136.5,96h175a48.07,48.07,0,0,1,47.62,42.05l22.76,182H135.82l24.11-180.82a8,8,0,0,0-6.87-9l-15.86-2.13a8,8,0,0,0-9,6.87L103.54,320H66.12ZM416,416H32V352H416Z\"]\n};\nvar faSirenOn = {\n prefix: 'fal',\n iconName: 'siren-on',\n icon: [640, 512, [], \"e02e\", \"M512,320h-1.88L486.88,134.07A80.13,80.13,0,0,0,407.5,64h-175a80.13,80.13,0,0,0-79.38,70.08L129.88,320H128a32,32,0,0,0-32,32v64a32,32,0,0,0,32,32H512a32,32,0,0,0,32-32V352A32,32,0,0,0,512,320ZM184.88,138A48.07,48.07,0,0,1,232.5,96h175A48.07,48.07,0,0,1,455.12,138l22.76,182H231.82l24.11-180.83a8,8,0,0,0-6.87-9l-15.86-2.13a8,8,0,0,0-9,6.87L199.54,320H162.12ZM512,416H128V352H512ZM80,160H16a16,16,0,0,0,0,32H80a16,16,0,0,0,0-32Zm544,0H560a16,16,0,0,0,0,32h64a16,16,0,0,0,0-32ZM40.84,30.3l64,32a16,16,0,0,0,14.32-28.63l-64-32A16,16,0,0,0,40.84,30.3ZM528,64a16.17,16.17,0,0,0,7.16-1.69l64-32A16,16,0,0,0,584.84,1.67l-64,32A16,16,0,0,0,528,64Z\"]\n};\nvar faSitemap = {\n prefix: 'fal',\n iconName: 'sitemap',\n icon: [640, 512, [], \"f0e8\", \"M608 352h-32v-97.59c0-16.77-13.62-30.41-30.41-30.41H336v-64h48c17.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 32h48v64H94.41C77.62 224 64 237.64 64 254.41V352H32c-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-32H96v-96h208v96h-32c-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-32h-32v-96h208v96h-32c-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-480 32v96H32v-96h96zm240 0v96h-96v-96h96zM256 128V32h128v96H256zm352 352h-96v-96h96v96z\"]\n};\nvar faSkating = {\n prefix: 'fal',\n iconName: 'skating',\n icon: [448, 512, [], \"f7c5\", \"M384 0c-35.3 0-64 28.7-64 64 0 12.7 3.8 24.5 10.3 34.5-5.4-1.5-11.1-2.5-16.9-2.5H144c-26.5 0-48 21.5-48 48s21.5 48 48 48h48.5a80.063 80.063 0 0 0-17.4 46.7c-.2 4.5.2 9.1.8 13.5l-91 91c-9.1 9.1-14.1 21.1-14.1 33.9s5 24.9 14.1 33.9c18.7 18.8 49.1 18.8 67.9 0l79.2-79.2 40 40V416c0 26.5 21.5 48 48 48s48-21.5 48-48v-57.4c0-16.9-6.8-33.4-18.8-45.3L299.9 264l58.7-58.7c18.4-18.4 23.8-45.7 13.9-69.7-1.6-3.8-4-7-6.2-10.3 5.7 1.6 11.5 2.8 17.7 2.8 35.3 0 64-28.7 64-64S419.3 0 384 0zM130.2 388.5c-6.2 6.2-16.4 6.3-22.6 0-6.2-6.2-6.2-16.4 0-22.6l80.8-80.8c6.7 10.3 5.3 8.4 21.1 24.2l-79.3 79.2zM336 182.6L254.6 264l72 72c6 6 9.4 14.2 9.4 22.6V416c0 8.8-7.2 16-16 16s-16-7.2-16-16v-57.4l-82.9-82.9-.3-.3c-.1-.1-.1-.1-.2-.1-.2-.2-.2-.4-.4-.6-21.4-22.6-14.6-53.9 3.5-69.4l53.8-45.4H144c-8.8 0-16-7.2-16-16s7.2-16 16-16h169.4c28.5.1 42.7 34.6 22.6 54.7zM384 96c-17.7 0-32-14.4-32-32s14.3-32 32-32 32 14.4 32 32-14.3 32-32 32zM117.8 456.6c-6.2 6.2-16.4 6.2-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.3 9.4 21.7 14 33.9 14s24.6-4.7 33.9-14c6.2-6.2 6.2-16.4 0-22.6s-16.3-6.3-22.6 0zM400 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-16z\"]\n};\nvar faSkeleton = {\n prefix: 'fal',\n iconName: 'skeleton',\n icon: [512, 512, [], \"f620\", \"M504 160H272V96h168c4.42 0 8-3.58 8-8V72c0-4.42-3.58-8-8-8H272V8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v56H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h168v64H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h232v64H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h168v64H112c-44.18 0-80 35.82-80 80s35.82 80 80 80 80-35.82 80-80c0-18.1-6.23-34.6-16.36-48h160.72C326.23 397.4 320 413.9 320 432c0 44.18 35.82 80 80 80s80-35.82 80-80-35.82-80-80-80H272v-64h168c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H272v-64h232c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM160 432c0 26.47-21.53 48-48 48s-48-21.53-48-48 21.53-48 48-48 48 21.53 48 48zm288 0c0 26.47-21.53 48-48 48s-48-21.53-48-48 21.53-48 48-48 48 21.53 48 48z\"]\n};\nvar faSkiJump = {\n prefix: 'fal',\n iconName: 'ski-jump',\n icon: [512, 512, [], \"f7c7\", \"M510.8 191.5c-1.5-8.7-10.1-14.5-18.4-13.1-8.7 1.5-14.6 9.7-13.1 18.5 3.8 22.6-7 45.5-26.3 56.5L201.1 382.9 247.9 269l116.7-90.8c12.5-9.7 21.5-29.3 18.4-50.3 36 .7 65-28.5 65-63.9 0-35.3-28.7-64-64-64s-64 28.7-64 64c0 5.6.9 10.9 2.3 16H160c-26.5 0-48 21.5-48 48s21.5 48 48 48h39.8c-33.7 36.9-37.7 45.5-63.7 111-7.2 18.1-16.3 40.9-28.5 70.7-4.9 11.8-4.9 24.9.1 36.7 4.5 10.9 13 19.2 23.6 24.3l-122.6 63c-7.9 4-11 13.7-6.9 21.5 2.8 5.5 8.4 8.7 14.2 8.7 2.5 0 5-.6 7.3-1.8l444.9-228.8c31.5-17.8 48.7-54 42.6-89.8zM384 32c17.7 0 32 14.4 32 32s-14.3 32-32 32-32-14.4-32-32 14.4-32 32-32zM137.2 369.9c70-170.2 36.9-116 135.2-225.9H160c-8.8 0-16-7.2-16-16s7.2-16 16-16h168c21.4 0 32.1 25.9 17 41l-121.9 94.8c-.8.8-2.2 2.8-3.1 5l-53.3 129.3c-3.3 8.1-12.5 12.1-20.9 8.7-8-3.4-11.9-12.7-8.6-20.9z\"]\n};\nvar faSkiLift = {\n prefix: 'fal',\n iconName: 'ski-lift',\n icon: [512, 512, [], \"f7c8\", \"M496 296.3c-8.8 0-16 7.2-16 16 0 18.3-11.5 34.9-28.7 41.2l-128.7 47.6c8.3-8.6 13.4-20.3 13.4-33.1V248c0-14.6-6.5-28.2-17.8-37.3-9.6-7.9-24.5-13.2-40.6-9.5l-76.3 16.4-27-46.3c-6.9-14-19.2-24.2-33.4-29.5C152.6 130 160 113.9 160 96c0-35.3-28.7-64-64-64S32 60.7 32 96c0 28.3 18.5 52 44 60.5-5.2 5.5-9.5 11.9-12.4 19-7 17.4-4.9 37.3 2.4 50.2l43.2 76.2c8.8 17.4 29.8 30.6 53.5 24.9l77.2-18.4v59.7c0 24.9 19.2 45.3 43.5 47.5L106.3 481c-8.3 3.1-12.5 12.3-9.5 20.6 1.9 5.1 9.6 13.5 20.5 9.5l344.9-127.4c29.7-11 49.6-39.6 49.6-71.2.2-9.1-7-16.2-15.8-16.2zM64 96c0-17.6 14.3-32 32-32s32 14.4 32 32-14.3 32-32 32-32-14.4-32-32zm240 271.9c0 8.8-7.2 16-16 16s-16-7.2-16-16V267.8l-116.7 27.8c-6.4 1.5-14.3-1.1-17.8-8.7l-43.8-77.1c-6.7-14.8.3-32.3 15.4-38.4 22.2-8.9 34.8 10.6 36.6 14.7l39.4 67.4 99.4-21.3c9.5-2.2 19.3 5.2 19.3 15.6v120.1zM256 0h-32v184l32-8V0zm-74.9 383.1c8.4-2.8 12.9-11.8 10.1-20.2-2.8-8.4-11.9-12.9-20.2-10.1-33.4 11.1-70-4.4-85.2-36.2L30.4 201.1c-3.8-8-13.4-11.3-21.3-7.5-8 3.8-11.3 13.4-7.5 21.3l55.2 115.5c17.3 36.2 53.8 58 92.1 58 10.7-.1 21.6-1.7 32.2-5.3z\"]\n};\nvar faSkiing = {\n prefix: 'fal',\n iconName: 'skiing',\n icon: [512, 512, [], \"f7c9\", \"M507.3 465.7c-6.2-6.3-16.4-6.3-22.6 0-14.4 14.5-36.6 18.4-54.2 10.3l-130.1-69.7c4.4-3.2 8.4-7 11.5-11.6l.5-.8.5-.8 40.3-68.4c16.3-25.2 12.8-58.7-8.5-80l-49.5-49.5L426.5 267c33.6 16.7 58.1-9 64.4-21.4 11.8-23.7 2.2-52.6-21.5-64.4L423.3 158l-10.1-30.2c1 0 1.9.3 2.8.3 35.3 0 64-28.7 64-64S451.3 0 416 0c-34.3 0-62.2 27.2-63.7 61.1-15-3.8-31.4-4.4-49.6 2.9l-83.4 33.4c-5.1 2-9.7 4.9-14.2 7.8l-40-22.9c1.1-15.2-6.7-30.2-21.1-37.6l-11.1 21.8-34.6-7c-5.3-1.1-8.5 5.6-4.5 9.1l26.1 22.9c.1.1.1.2.1.3l-11.5 22.4c13.7 7 29.5 4.8 41-3.8L182 129c-5.2 8.1-9.5 16.9-11.5 26.7-5.4 26.4 2.7 53.6 21.8 72.6l66.9 66.9-27.8 47.2c-4.6 7.2-6.8 15.2-7.2 23.1L23.6 257.9c-7.7-4.1-17.5-1.3-21.7 6.5-4.2 7.8-1.2 17.5 6.5 21.7l407.8 218.5c10.8 5 22.3 7.4 33.7 7.4 21.1 0 41.9-8.2 57.3-23.7 6.4-6.2 6.4-16.4.1-22.6zM416 32c17.7 0 32 14.4 32 32s-14.3 32-32 32-32-14.4-32-32 14.3-32 32-32zM314.6 93.8c32.8-13.1 57.4 11.6 63.3 29.4l19.2 57.5 58.1 29c19 9.5 4.6 38-14.3 28.6l-28.3-14.1-39.8-22.8c-2.6-3.1-4.7-6.6-6-10.6l-18.1-54.4-50.1 22.4-60.2-34.5 76.2-30.5zm-55.9 265.4l40.7-69.1-84.4-84.5c-11.4-11.4-16.3-27.7-13.1-43.6 1.3-6.4 4.1-12.1 7.7-17.3l52.7 30.2-22.7 10.1 82.4 82.4c10.8 10.8 12.4 27.8 4 40.4l-40.7 69.1c-11.9 17.7-38.3-.2-26.6-17.7z\"]\n};\nvar faSkiingNordic = {\n prefix: 'fal',\n iconName: 'skiing-nordic',\n icon: [576, 512, [], \"f7ca\", \"M560 432c-8.8 0-16 7.2-16 16 0 17.6-14.3 32-32 32h-70.7L467 300c17-7.4 29-24.3 29-44 0-26.5-21.5-48-48-48h-34.1l-21.7-44.3c-7.8-15.9-19.2-29.6-32.9-40.2C383.2 114.2 400 91 400 64c0-35.3-28.7-64-64-64s-64 28.7-64 64c0 10 2.3 19.5 6.4 27.9l-29.6-8.8c-33-7.9-67.4-.7-94.4 20l-39.6 30.4c-10.2 7.8-16.7 19.1-18.4 31.8-1.7 12.7 1.7 25.3 9.5 35.5 3.6 4.8 8.1 8.5 12.9 11.5L65.3 480H16c-8.8 0-16 7.2-16 16s7.2 16 16 16h496c35.3 0 64-28.7 64-64 0-8.8-7.2-16-16-16zm-322.4-77.6l-55.1 116.4c-9 18.9-38.1 5.7-28.9-13.7l57.2-120.7c8.3 7.8 13.4 10.1 26.8 18zm27.7 16.4l31.9 18.8-23 60c-3.1 10.1-2.7 20.6.8 30.4h-61.4l51.7-109.2zm103.4-50.5l-49.4-29.2 12.8-32.1 4.4 9.1c10.7 21.8 33.2 35.9 57.5 35.9h40.1L409 480h-43.9c.1-.3.3-.6.4-.9l32.1-86.3c7.8-27.7-4-57.5-28.9-72.5zM336 32c17.7 0 32 14.4 32 32s-14.3 32-32 32-32-14.4-32-32 14.3-32 32-32zM134.3 158.9l39.6-30.4c19.3-14.7 43.9-19.9 66.6-14.5l71.7 21.3c21.9 5.6 41.1 21.5 51.3 42.5L394 240h54c21.2 0 21.2 32 0 32h-54c-12.1 0-23.4-7-28.8-17.9l-36.1-73.8-49.8 124.5 73 43c12.5 7.5 18.4 22.5 14.9 35.1l-31.9 85.9c-6.4 20.7-36.4 9.9-30.8-8.6l32.3-84.4-96.7-57c-20.7-12.2-29.2-38.1-19.7-60.2l44.5-103.9c-34.7-10.3-34.7-10.8-42.2-10.8-10.2 0-20.8 3.6-29.3 10.1l-39.7 30.4c-17 12.9-36-12.8-19.4-25.5zm15.8 60.1c8.1-1 16.1-4 23.1-9.3l39.7-30.4c2.7-2.1 5.8-3.1 8.1-3.5l-30.1 70.1c-8.4 19.6-8.1 40.9-1 59.7l-65.3 137.9c-5.5 11.6-6.1 24.5-1.8 36.6H97.9L150.1 219z\"]\n};\nvar faSkull = {\n prefix: 'fal',\n iconName: 'skull',\n icon: [512, 512, [], \"f54c\", \"M352 184c-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-40s17.9-40 40-40 40 17.9 40 40-17.9 40-40 40zM160 184c-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-40s17.9-40 40-40 40 17.9 40 40-17.9 40-40 40zM256 0C114.6 0 0 100.3 0 224c0 70.1 36.9 132.6 94.5 173.7 9.7 6.9 15.2 18.1 13.5 29.9l-7.1 21.3C90.6 480 113.8 512 146.5 512h219c32.7 0 55.9-32 45.6-63.1l-7.1-21.3c-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 0zm142.9 371.6c-19.7 14-29.9 37.2-26.6 60.4l.4 2.8.9 2.8 7.1 21.3c2.2 6.8-.4 11.9-2.2 14.4-1.8 2.5-5.8 6.6-13 6.6H320v-56c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56h-64v-56c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56h-45.5c-7.1 0-11.2-4.2-13-6.6-1.8-2.5-4.5-7.7-2.2-14.4l7.1-21.3.9-2.8.4-2.8c3.3-23.2-6.9-46.4-26.6-60.4C61.5 334.9 32 281.1 32 224 32 118.1 132.5 32 256 32s224 86.1 224 192c0 57.1-29.5 110.9-81.1 147.6z\"]\n};\nvar faSkullCow = {\n prefix: 'fal',\n iconName: 'skull-cow',\n icon: [640, 512, [], \"f8de\", \"M603.26,4.58a16,16,0,0,0-26.21,17c6.07,16.12,19.6,67.59,2.88,91.7C573.13,123.05,561.4,128,544,128l-73-.18A63.73,63.73,0,0,0,416,96H224a63.71,63.71,0,0,0-55.12,32H96c-17.35,0-29.08-4.93-35.88-14.7C43.35,89.22,56.49,38.92,63,21.57a16,16,0,0,0-26.19-17C13.05,27.81,0,60.17,0,95.7,0,166.18,57.43,224,128,224H160v80a64,64,0,0,0,64,64l26.4,118.93A32,32,0,0,0,281.6,512h76.66A32,32,0,0,0,389.49,487L416,368a64,64,0,0,0,64-64V224h32c70.59,0,128-57.83,128-128.3C640,60.18,627,27.82,603.26,4.58ZM160,192H128c-35.51,0-66.56-19.77-83.19-48.45C55.44,152.38,71.6,160,96,160h64ZM448,304a32,32,0,0,1-32,32H390.3l-5.58,25.05L358.26,480H281.6L255.2,361.07,249.64,336H224a32,32,0,0,1-32-32V160a32,32,0,0,1,32-32H416a32,32,0,0,1,32,32Zm64-112H480V160c0-.07,0-.13,0-.19L544,160c24.36,0,40.5-7.6,51.11-16.43C578.52,172.23,547.47,192,512,192ZM256,224a32,32,0,1,0,32,32A32,32,0,0,0,256,224Zm128,0a32,32,0,1,0,32,32A32,32,0,0,0,384,224Z\"]\n};\nvar faSkullCrossbones = {\n prefix: 'fal',\n iconName: 'skull-crossbones',\n icon: [448, 512, [], \"f714\", \"M264 160c13.24 0 24-10.76 24-24s-10.76-24-24-24-24 10.76-24 24 10.76 24 24 24zm-80 0c13.24 0 24-10.76 24-24s-10.76-24-24-24-24 10.76-24 24 10.76 24 24 24zm-48.97 67.93l-6.41 30.24c-3.21 15.15 6.5 29.82 19.73 29.82h151.3c13.23 0 22.94-14.67 19.73-29.82l-6.41-30.24C346.25 204.49 368 168.67 368 128 368 57.31 303.53 0 224 0S80 57.31 80 128c0 40.67 21.75 76.49 55.03 99.93zM224 32c61.76 0 112 43.06 112 96 0 28.32-15.11 55.21-41.46 73.77l-17.25 12.15 4.37 20.64 4.54 21.43H161.79l4.54-21.43 4.37-20.64-17.25-12.15C127.11 183.21 112 156.32 112 128c0-52.94 50.24-96 112-96zm45.12 384l174.03-65.94c4.06-1.74 5.94-6.45 4.2-10.51l-6.31-14.71a7.996 7.996 0 0 0-10.5-4.2L224 398.91 17.47 320.65a7.996 7.996 0 0 0-10.5 4.2L.66 339.56c-1.74 4.06.14 8.77 4.2 10.51L178.88 416 4.85 481.94c-4.06 1.74-5.94 6.45-4.2 10.51l6.31 14.7a7.996 7.996 0 0 0 10.5 4.2L224 433.09l206.53 78.26a7.996 7.996 0 0 0 10.5-4.2l6.31-14.7c1.74-4.06-.14-8.77-4.2-10.51L269.12 416z\"]\n};\nvar faSlash = {\n prefix: 'fal',\n iconName: 'slash',\n icon: [640, 512, [], \"f715\", \"M637 485.3L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.5 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.2z\"]\n};\nvar faSledding = {\n prefix: 'fal',\n iconName: 'sledding',\n icon: [512, 512, [], \"f7cb\", \"M507.3 433.1c-6.2-6.3-16.4-6.3-22.6 0-15.1 15.1-38.2 19.2-57 10.6l-60.6-31.3c10.3-8.8 16.9-21.7 16.9-36.3v-88c0-26.5-21.5-48-48-48h-12.1l18.7-18.7c17.8-17.8 23.1-44 14.5-67.4 8.2 3.8 17.3 6.1 26.9 6.1 35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64c0 8 1.7 15.6 4.3 22.7-8.4-3.9-17.3-6.7-27-6.7H160c-26.5 0-48 21.5-48 48s21.5 48 48 48h28.1l-18.7 18.7c-18.4 18.4-23.8 45.8-13.9 69.8 1.4 3.4 3.7 6.2 5.6 9.3L23.4 234.6c-7.7-4-17.5-1-21.6 6.9-4.1 7.8-1 17.5 6.9 21.6l405 209.3c11.1 5.1 23 7.6 34.7 7.6 21.7 0 43.1-8.4 58.9-24.3 6.3-6.3 6.3-16.4 0-22.6zM384 64c17.7 0 32 14.4 32 32s-14.3 32-32 32-32-14.4-32-32 14.3-32 32-32zM192 249.4l73.4-73.4H160c-8.8 0-16-7.2-16-16s7.2-16 16-16h137.4c13 0 24.6 7.8 29.6 19.8s2.2 25.7-6.9 34.9L246.6 272H336c8.8 0 16 7.2 16 16v88c0 8.8-7.2 16-16 16s-16-7.2-16-16v-72H214.6c-28.5 0-42.8-34.4-22.6-54.6zm96 86.6v35.4L219.5 336H288z\"]\n};\nvar faSleigh = {\n prefix: 'fal',\n iconName: 'sleigh',\n icon: [640, 512, [], \"f7cc\", \"M615.8 364.9l-14.3-11.2c-3.4-2.8-8.5-2.2-11.2 1.2l-10 12.5c-2.8 3.4-2.2 8.5 1.2 11.2l13.5 10.5c6.3 5.1 11.1 12.1 12.5 20 3.8 20.6-12.1 38.7-32.1 38.7H448v-64h10c65.1 0 118-52.9 118-118V128.5h24c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H480c-17.7 0-32 14.3-32 32V177c0 28.1-29.4 39.2-42.1 42.7-48.1 13.3-137-3.8-184.2-83.1C169.5 48.7 122 32 52.7 32H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h24v168c0 64 39.9 118.6 96 141v75H40c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h532c35.5 0 66-27.3 67.9-60.8 1.2-21.2-7.6-41-24.1-54.3zM64 232V64.4c53.4 1.8 88.2 17.9 130.3 88.5C236.5 224.1 309.8 256 372 256c15 0 29.3-1.8 42.4-5.5 41.1-11.3 65.6-38.8 65.6-73.5v-48.5h64V266c0 47.4-38.6 86-86 86H184c-66.2 0-120-53.8-120-120zm96 216v-66.4c7.9 1.3 15.8 2.4 24 2.4h232v64H160z\"]\n};\nvar faSlidersH = {\n prefix: 'fal',\n iconName: 'sliders-h',\n icon: [512, 512, [], \"f1de\", \"M504 384H192v-40c0-13.3-10.7-24-24-24h-48c-13.3 0-24 10.7-24 24v40H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h88v40c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24v-40h312c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-344 64h-32v-96h32v96zM504 96H256V56c0-13.3-10.7-24-24-24h-48c-13.3 0-24 10.7-24 24v40H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h152v40c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24v-40h248c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-280 64h-32V64h32v96zm280 80h-88v-40c0-13.3-10.7-24-24-24h-48c-13.3 0-24 10.7-24 24v40H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h312v40c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24v-40h88c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-120 64h-32v-96h32v96z\"]\n};\nvar faSlidersHSquare = {\n prefix: 'fal',\n iconName: 'sliders-h-square',\n icon: [448, 512, [], \"f3f0\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352zm-92-272H224v-40c0-13.2-10.8-24-24-24h-48c-13.2 0-24 10.8-24 24v40H92c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h36v40c0 13.2 10.8 24 24 24h48c13.2 0 24-10.8 24-24v-40h100c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12zm-132 64h-32v-96h32v96zm148 96h-20v-40c0-13.2-10.8-24-24-24h-48c-13.2 0-24 10.8-24 24v40H108c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h116v40c0 13.2 10.8 24 24 24h48c13.2 0 24-10.8 24-24v-40h20c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12zm-52 64h-32v-96h32v96z\"]\n};\nvar faSlidersV = {\n prefix: 'fal',\n iconName: 'sliders-v',\n icon: [448, 512, [], \"f3f1\", \"M160 168v-48c0-13.3-10.7-24-24-24H96V8c0-4.4-3.6-8-8-8H72c-4.4 0-8 3.6-8 8v88H24c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h40v312c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V192h40c13.3 0 24-10.7 24-24zm-32-8H32v-32h96v32zm152 160h-40V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v312h-40c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h40v88c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-88h40c13.3 0 24-10.7 24-24v-48c0-13.3-10.7-24-24-24zm-8 64h-96v-32h96v32zm152-224h-40V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v152h-40c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h40v248c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V256h40c13.3 0 24-10.7 24-24v-48c0-13.3-10.7-24-24-24zm-8 64h-96v-32h96v32z\"]\n};\nvar faSlidersVSquare = {\n prefix: 'fal',\n iconName: 'sliders-v-square',\n icon: [448, 512, [], \"f3f2\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352zM200 160h-40v-32c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v32H88c-13.2 0-24 10.8-24 24v48c0 13.2 10.8 24 24 24h40v116c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V256h40c13.2 0 24-10.8 24-24v-48c0-13.2-10.8-24-24-24zm-8 64H96v-32h96v32zm168 32h-40V128c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v128h-40c-13.2 0-24 10.8-24 24v48c0 13.2 10.8 24 24 24h40v20c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-20h40c13.2 0 24-10.8 24-24v-48c0-13.2-10.8-24-24-24zm-8 64h-96v-32h96v32z\"]\n};\nvar faSmile = {\n prefix: 'fal',\n iconName: 'smile',\n icon: [496, 512, [], \"f118\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm90.2-146.2C315.8 352.6 282.9 368 248 368s-67.8-15.4-90.2-42.2c-5.7-6.8-15.8-7.7-22.5-2-6.8 5.7-7.7 15.7-2 22.5C161.7 380.4 203.6 400 248 400s86.3-19.6 114.8-53.8c5.7-6.8 4.8-16.9-2-22.5-6.8-5.6-16.9-4.7-22.6 2.1zM168 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\"]\n};\nvar faSmileBeam = {\n prefix: 'fal',\n iconName: 'smile-beam',\n icon: [496, 512, [], \"f5b8\", \"M168 205.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.4 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.8 19.2-21.6 31.5-21.6zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm80-304c-23.8 0-52.7 29.3-56 71.4-.3 3.7 2.1 7.2 5.7 8.3 3.4 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.4zm10.2 157.8C315.8 352.6 282.9 368 248 368s-67.8-15.4-90.2-42.2c-5.7-6.8-15.8-7.7-22.5-2-6.8 5.7-7.7 15.7-2 22.5C161.7 380.4 203.6 400 248 400s86.3-19.6 114.8-53.8c5.7-6.8 4.8-16.9-2-22.5-6.9-5.6-16.9-4.7-22.6 2.1z\"]\n};\nvar faSmilePlus = {\n prefix: 'fal',\n iconName: 'smile-plus',\n icon: [640, 512, [], \"f5b9\", \"M208 96C93.1 96 0 189.1 0 304s93.1 208 208 208 208-93.1 208-208S322.9 96 208 96zm0 384c-97 0-176-79-176-176s79-176 176-176 176 79 176 176-79 176-176 176zm75.8-130.7C265 371.4 237.4 384 208 384s-57-12.6-75.8-34.6c-5.7-6.7-15.9-7.5-22.5-1.8-6.8 5.8-7.5 15.8-1.8 22.6C132.7 399.3 169.2 416 208 416s75.3-16.7 100.2-45.9c5.8-6.7 4.9-16.8-1.8-22.6-6.6-5.6-16.8-4.9-22.6 1.8zM144 280c13.3 0 24-10.7 24-24s-10.7-24-24-24-24 10.7-24 24 10.7 24 24 24zm128 0c13.3 0 24-10.7 24-24s-10.7-24-24-24-24 10.7-24 24 10.7 24 24 24zM632 96h-88V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v88h-88c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h88v88c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-88h88c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faSmileWink = {\n prefix: 'fal',\n iconName: 'smile-wink',\n icon: [496, 512, [], \"f4da\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm152.7 400.7c-19.8 19.8-43 35.4-68.7 46.3-26.6 11.3-54.9 17-84.1 17s-57.5-5.7-84.1-17c-25.7-10.9-48.8-26.5-68.7-46.3-19.8-19.8-35.4-43-46.3-68.7-11.3-26.6-17-54.9-17-84.1s5.7-57.5 17-84.1c10.9-25.7 26.5-48.8 46.3-68.7 19.8-19.8 43-35.4 68.7-46.3 26.6-11.3 54.9-17 84.1-17s57.5 5.7 84.1 17c25.7 10.9 48.8 26.5 68.7 46.3 19.8 19.8 35.4 43 46.3 68.7 11.3 26.6 17 54.9 17 84.1s-5.7 57.5-17 84.1c-10.8 25.8-26.4 48.9-46.3 68.7zM168 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.1zm10.2 145.8C315.8 352.6 282.9 368 248 368s-67.8-15.4-90.2-42.2c-13.5-16.2-38.2 4.2-24.6 20.5C161.7 380.4 203.5 400 248 400s86.3-19.6 114.8-53.8c13.5-16.2-11.1-36.7-24.6-20.4z\"]\n};\nvar faSmog = {\n prefix: 'fal',\n iconName: 'smog',\n icon: [640, 512, [], \"f75f\", \"M179.2 288h105.2c24.3 20.7 54.6 32 86.8 32 32.2 0 62.5-11.3 86.8-32h28.4c67.1 0 121.6-53.4 121.6-119.1S553.4 49.8 486.4 49.8c-9.2 0-18.4 1.1-27.4 3.2-27.6-33.2-69.1-53-113.4-53-30.2 0-58.9 8.9-83.2 25.4C238.1 8.9 209.4 0 179.2 0 98 0 32 64.6 32 144s66 144 147.2 144zm0-256c32.8 0 62.2 13.5 83.2 34.9 21-21.4 50.4-34.9 83.2-34.9 43.9 0 81.6 24.1 101 59.2 12-5.8 25.4-9.4 39.8-9.4 49.5 0 89.6 39 89.6 87.1S535.9 256 486.4 256h-41.1c-18.7 19.6-44.9 32-74.1 32s-55.4-12.4-74.1-32H179.2C115.6 256 64 205.9 64 144S115.6 32 179.2 32zM632 384H72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h560c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-64 96H232c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h336c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-416 0H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h144c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faSmoke = {\n prefix: 'fal',\n iconName: 'smoke',\n icon: [640, 512, [], \"f760\", \"M640 240c0-79.4-64.6-144-144-144-20.5 0-40.3 4.7-58.6 13-25.2-45.7-73.6-77-129.4-77-20.5 0-40.6 4.5-59.9 13.2C220.8 16.3 183.6 0 144 0 64.6 0 0 64.6 0 144c0 40.8 17.3 77.3 44.7 103.4C17.1 275.5 0 313.9 0 356.3 0 442.2 69.8 512 155.7 512h361.5c67.7 0 122.8-55.1 122.8-122.8 0-26.9-9-51.7-23.7-71.9 14.6-22.4 23.7-48.6 23.7-77.3zm-32 0c0 19.6-5.4 37.9-14.4 53.8-21-16.9-47.4-27.5-76.5-27.5-23.1 0-45.1 6.5-64.7 18.8-26.3-32.6-65.5-51.7-107.9-51.7-25.5 0-50.1 7.1-72 20.5-8.2-9.3-17.4-17.5-27.4-24.6 12.9-40.2 50.3-69.5 94.7-69.5 17 0 33.5 4.5 49.2 13.5l11.8 6.7 8.6-10.5c21.6-26.5 53.1-41.7 86.5-41.7C557.8 128 608 178.2 608 240zM32 144C32 82.2 82.2 32 144 32c34.1 0 66 15.7 87.6 43.1l8.4 10.7 11.9-6.6c18-10 36.9-15.1 56.1-15.1 44.3 0 82.5 25.1 101.9 61.8-5.7 4.4-11.4 8.7-16.5 14-17.1-7.8-35-11.8-53.4-11.8-56.4 0-104 35.8-122.8 85.6-19.2-8.4-40.1-13-61.5-13-32 0-61.7 9.7-86.4 26.3C46.5 206.5 32 177 32 144zm485.2 336H155.7C87.5 480 32 424.5 32 356.3s55.5-123.7 123.7-123.7c39.8 0 77.5 19.6 100.7 52.3l9.7 13.6 13.2-10.2c19.3-15 41.9-22.9 65.4-22.9 36.9 0 70.8 18.9 90.7 50.6l9.8 15.6 14.1-11.8c16.8-14.1 36.9-21.6 58-21.6 50.1 0 90.8 40.7 90.8 90.8s-40.9 91-90.9 91z\"]\n};\nvar faSmoking = {\n prefix: 'fal',\n iconName: 'smoking',\n icon: [640, 512, [], \"f48d\", \"M632 352h-16c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V360c0-4.4-3.6-8-8-8zm-64 0h-16c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V360c0-4.4-3.6-8-8-8zm-80 0H48c-26.5 0-48 21.5-48 48v64c0 26.5 21.5 48 48 48h440c13.2 0 24-10.8 24-24V376c0-13.2-10.8-24-24-24zM192 480H48c-8.8 0-16-7.2-16-16v-64c0-8.8 7.2-16 16-16h144v96zm288 0H224v-96h256v96zm76.4-386.5c-7.5-5-12.4-13.2-12.4-22.2V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v62.3c0 20.2 10.3 38.8 27 50 43.2 29 69 77.3 69 129.4V280c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-30.3c0-62.9-31.2-121.3-83.6-156.2zm-36.7 52.4C494.1 129.3 480 99.5 480 69V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v67c0 40.3 22.2 76 55.6 98.6 25.3 17.1 40.4 45.5 40.4 76.1V280c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-30.3c0-42-21.1-80.9-56.3-103.8z\"]\n};\nvar faSmokingBan = {\n prefix: 'fal',\n iconName: 'smoking-ban',\n icon: [512, 512, [], \"f54d\", \"M256 0C114.6 0 0 114.6 0 256s114.6 256 256 256 256-114.6 256-256S397.4 0 256 0zm0 480C132.5 480 32 379.5 32 256c0-56 20.8-107.2 54.9-146.5l315.6 315.6C363.2 459.2 312 480 256 480zm22.6-224H384v32h-73.4l-32-32zm146.5 146.5L342.6 320H400c8.8 0 16-7.2 16-16v-64c0-8.8-7.2-16-16-16H246.6L109.5 86.9C148.8 52.8 200 32 256 32c123.5 0 224 100.5 224 224 0 56-20.8 107.2-54.9 146.5zM112 320h140.1l-32-32H128v-32h60.1l-32-32H112c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16zm240-192c-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.5-30.9-31.2-54.6-63.3-54.6z\"]\n};\nvar faSms = {\n prefix: 'fal',\n iconName: 'sms',\n icon: [512, 512, [], \"f7cd\", \"M304 176h-16c-6.1 0-11.6 3.4-14.3 8.8L256 220.2l-17.7-35.4c-2.7-5.4-8.2-8.8-14.3-8.8h-16c-8.8 0-16 7.2-16 16v104c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-68.2l24.8 55.8c2.9 5.9 11.4 5.9 14.3 0l24.8-55.8V296c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V192c.1-8.8-7.1-16-15.9-16zm-168.6 42.5c-1.4-1.2-2.1-2.5-2.1-3.8 0-3.1 4.5-6.6 10.4-6.6H156c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-12.2c-23.4 0-42.4 17.3-42.4 38.6 0 10.7 4.9 20.9 13.3 28.1l21.9 18.8c1.4 1.2 2.1 2.5 2.1 3.8 0 3.1-4.5 6.6-10.4 6.6H116c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h12.3c23.4 0 42.4-17.3 42.4-38.6 0-10.7-4.9-20.9-13.3-28.1l-22-18.8zm240 0c-1.4-1.2-2.1-2.5-2.1-3.8 0-3.1 4.5-6.6 10.4-6.6H396c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-12.3c-23.4 0-42.4 17.3-42.4 38.6 0 10.7 4.9 20.9 13.3 28.1l21.9 18.8c1.4 1.2 2.1 2.5 2.1 3.8 0 3.1-4.5 6.6-10.4 6.6H356c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h12.3c23.4 0 42.4-17.3 42.4-38.6 0-10.7-4.9-20.9-13.3-28.1l-22-18.8zM256 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 26 3.8 8.8 12.4 14.5 22 14.5 61.5 0 110-25.7 139.1-46.3 29 9.1 60.2 14.3 93 14.3 141.4 0 256-93.1 256-208S397.4 32 256 32zm0 384c-28.3 0-56.3-4.3-83.2-12.8l-15.2-4.8-13 9.2c-23 16.3-58.5 35.3-102.6 39.6 12-15.1 29.8-40.4 40.8-69.6l7.1-18.7-13.7-14.6C47.4 313.7 32.1 277.6 32.1 240c0-97 100.5-176 224-176s224 79 224 176S379.5 416 256 416z\"]\n};\nvar faSnake = {\n prefix: 'fal',\n iconName: 'snake',\n icon: [640, 512, [], \"f716\", \"M528 248c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm0-16c8.84 0 16-7.16 16-16s-7.16-16-16-16-16 7.16-16 16 7.16 16 16 16zm90.96-53.03l-47.87-17.52c-46.68-17.13-47.57-17.46-57.9-17.46-28.31 0-53.19 18.27-61.67 44.42l-1.3 4.42C394.94 199.65 352 246.91 352 304v72c0 22.06-17.94 40-40 40s-40-17.94-40-40V136C272 61.01 210.99 0 136 0S0 61.01 0 136v223.53c0 43.6 5.42 84.48 17.06 128.63C20.76 502.21 33.47 512 48 512s27.24-9.79 30.94-23.84C90.58 444.01 96 403.14 96 359.53V136c0-22.06 17.94-40 40-40s40 17.94 40 40v240c0 74.99 61.01 136 136 136s136-61.01 136-136v-72c0-4.12 1.57-7.89 4.14-10.73 9.43 25.59 33.59 42.73 59.88 42.73h.09c11.42 0 12.43-.37 59.07-17.48l47.78-17.49c12.63-4.61 21.04-16.62 21.04-30.06v-61.93c0-13.45-8.41-25.46-21.04-30.07zm-10.96 92c-88.03 32.11-88.77 33.04-94.81 33.04h-1.18c-13.44 0-25.79-9.17-30.05-22.29l-7.58-25.71V256H464c-26.47 0-48 21.53-48 48v72c0 57.34-46.66 104-104 104s-104-46.66-104-104V136c0-39.7-32.31-72-72-72s-72 32.3-72 72v223.53c0 42.02-5.37 80.14-16 120.47-10.63-40.33-16-78.46-16-120.47V136C32 78.66 78.66 32 136 32s104 46.66 104 104v240c0 39.7 32.31 72 72 72s72-32.3 72-72v-72c0-44.11 35.88-80 80-80h10.39l7.58-25.71c4.26-13.12 16.61-22.29 30.05-22.29h1.18c6.03 0 6.78.93 94.81 33.04v61.93z\"]\n};\nvar faSnooze = {\n prefix: 'fal',\n iconName: 'snooze',\n icon: [448, 512, [], \"f880\", \"M176 272H24a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h131.19L3.72 469.75A16.06 16.06 0 0 0 0 480v16a16 16 0 0 0 16 16h168a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H36.81l151.48-165.77A15.94 15.94 0 0 0 192 304v-16a16 16 0 0 0-16-16zM272 0H168a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h78l-98.56 125.2a16.07 16.07 0 0 0-3.44 9.91V176a16 16 0 0 0 16 16h120a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-94l98.56-125.2a16.07 16.07 0 0 0 3.44-9.91V16a16 16 0 0 0-16-16zm176 248.89V240a16 16 0 0 0-16-16H328a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h78l-98.56 125.2a16.07 16.07 0 0 0-3.44 9.91V400a16 16 0 0 0 16 16h120a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-94l98.59-125.2a16.07 16.07 0 0 0 3.41-9.91z\"]\n};\nvar faSnowBlowing = {\n prefix: 'fal',\n iconName: 'snow-blowing',\n icon: [640, 512, [], \"f761\", \"M351 115.8l-7.6-13.2c-2.1-3.6-6.7-4.9-10.4-2.8l-40.6 23.5 8-29.9c1.1-4.1-1.3-8.2-5.4-9.3l-14.7-3.9c-4.1-1.1-8.2 1.3-9.3 5.4l-15.9 59.3-63.1 36.3v-78.6L237.7 57c3.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-23 23V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v49.4l-23-23c-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.3l45.7 45.7v78.6l-63.1-36.4L81 85.5c-1.1-4.1-5.3-6.5-9.3-5.4l-14.7 4c-4.1 1.1-6.5 5.3-5.4 9.3l8 29.9L19 99.8c-3.6-2.1-8.3-.9-10.4 2.8L1 115.8c-2.1 3.6-.9 8.3 2.8 10.4l40.6 23.5-29.9 8c-4.1 1.1-6.5 5.3-5.4 9.3l3.9 14.7c1.1 4.1 5.3 6.5 9.3 5.4l59.3-15.9 63.9 36.9L81.6 245l-59.2-16c-4.1-1.1-8.2 1.3-9.3 5.4l-3.9 14.7c-1.1 4.1 1.3 8.2 5.4 9.3l29.9 8-40.7 23.5C.2 292-1.1 296.6 1 300.3l7.6 13.2c2.1 3.6 6.7 4.9 10.4 2.8l40.6-23.5-8 29.9c-1.1 4.1 1.3 8.2 5.4 9.3l14.7 3.9c4.1 1.1 8.2-1.3 9.3-5.4l15.9-59.3 63.1-36.4v78.6L114.3 359c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l23-23V408c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-49.4l23 23c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3L192 313.4v-78.6l63.1 36.4 15.9 59.3c1.1 4.1 5.3 6.5 9.3 5.4L295 332c4.1-1.1 6.5-5.3 5.4-9.3l-8-29.9 40.6 23.5c3.6 2.1 8.3.9 10.4-2.8l7.6-13.2c2.1-3.6.9-8.3-2.8-10.4l-40.6-23.5 29.9-8c4.1-1.1 6.5-5.3 5.4-9.3l-3.9-14.7c-1.1-4.1-5.3-6.5-9.3-5.4l-59.3 15.9-64-36.9 63.9-36.9 59.3 15.9c4.1 1.1 8.2-1.3 9.3-5.4l3.9-14.7c1.1-4.1-1.3-8.2-5.4-9.3l-29.9-8 40.6-23.5c3.7-2.1 5-6.7 2.9-10.3zM392 288h152c59.8 0 106.8-54.6 93.8-116.7-7.6-36.3-36.9-65.6-73.2-73.2-59.1-12.3-111.5 29.8-116.3 85.4-.4 4.6 3.5 8.4 8 8.4h16.2c4.2 0 7.4-3.3 7.9-7.4 4.2-36.6 39.5-63.8 78.7-54.8 23.1 5.3 41.8 24.1 47.2 47.2 9.6 41.8-22.1 79.1-62.3 79.1H392c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm147.7 32H376c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h164.8c33.4 0 63.3 24.4 66.5 57.6C611 447.7 581 480 543.6 480c-32.8 0-59.9-24.8-63.6-56.5-.5-4.2-3.7-7.4-7.9-7.4H456c-4.6 0-8.4 3.9-8 8.4 4.3 49.1 45.5 87.6 95.6 87.6 54 0 97.6-44.6 96-98.9-1.5-52.7-47.4-93.2-99.9-93.2z\"]\n};\nvar faSnowboarding = {\n prefix: 'fal',\n iconName: 'snowboarding',\n icon: [512, 512, [], \"f7ce\", \"M492.8 177.6L425.4 127c30.8-4.6 54.6-31 54.6-63 0-35.3-28.7-64-64-64s-64 28.7-64 64c0 6.6 1.3 12.9 3.2 19-1.8-.7-3.5-1.6-5.3-2.2l-47.6-15.4L283 26.5C274.8 10.2 258.3 0 240 0c-7.3 0-14.7 1.7-21.3 5-23.8 11.9-33.4 40.8-21.6 64.4l25.4 50.8c2.6 5.2 5.8 9.9 9.6 14.1l-11.8 5.9C193 153.8 176 181.3 176 211.8v41.6l-63.2 21.1c-25.1 8.3-38.7 35.5-30.4 60.7 4.3 12.9 13.9 22.5 25.7 28l-51.3-18.7c-11.7-4.3-21-12.8-26.3-24.1-3.8-8-13.3-11.4-21.3-7.7S-2.3 326 1.5 334c8.9 19 24.6 33.4 44.3 40.6l364.8 132.8c8.8 3.2 17.9 4.8 26.9 4.8 11.3 0 22.6-2.5 33.2-7.4 8-3.7 11.5-13.2 7.8-21.2s-13.3-11.4-21.3-7.7c-11.3 5.2-23.9 5.8-35.7 1.5l-84.6-30.8c18.4-3.7 33.8-17.4 37.9-36.3l21.9-102c5.2-24.4-4.4-49.8-24.5-64.9L341.1 221l30.7-14.2 63.4 47.6c8.4 6.3 18.3 9.6 28.8 9.6 15 0 29.4-7.2 38.4-19.2 15.9-21.2 11.6-51.4-9.6-67.2zM416 32c17.7 0 32 14.4 32 32s-14.3 32-32 32-32-14.4-32-32 14.4-32 32-32zM291.3 429.7l-174.7-63.6c2.6.6 12.5 4 26.6-.7l85.1-28.3c22.2-7.4 38.2-26 42.6-48.3l27.7 19.7-17.4 81.4c-5.2 23.7 7.5 36.6 10.1 39.8zm185.5-204.1c-5.3 7.1-15.3 8.5-22.4 3.2l-78.7-59-98.1 45.2 75.6 53.8c10.3 7.7 15 20.4 12.4 32.5l-21.8 102c-2 9.3-11.1 14-19 12.3-8.7-1.8-14.2-10.3-12.3-19l21.8-102-94.2-67v48.8c0 13.8-8.8 26-21.9 30.4-92 30.7-86.5 29.2-90.1 29.2-6.7 0-12.9-4.2-15.2-10.9-2.8-8.4 1.8-17.5 10.1-20.2l85.1-28.4v-64.7c0-18.3 10.2-34.7 26.5-42.9l71-35.5-37.1-12.4c-7.6-2.5-13.8-7.9-17.3-15.1l-25.4-50.8c-3.9-7.9-.8-17.5 7.2-21.5 9.4-4.7 18.3.8 21.5 7.2l25.4 50.8L340 111c13.1 4.3 25.3 10.7 36.3 19l97.5 73.1c6.9 5.4 8.3 15.4 3 22.5z\"]\n};\nvar faSnowflake = {\n prefix: 'fal',\n iconName: 'snowflake',\n icon: [448, 512, [], \"f2dc\", \"M388.1 333.5l52.7-14.3c4.2-1.1 6.7-5.5 5.6-9.8l-4.1-15.5c-1.1-4.3-5.5-6.8-9.7-5.7l-83.2 22.6-93.8-54.8 93.8-54.8 83.2 22.6c4.2 1.1 8.6-1.4 9.7-5.7l4.1-15.5c1.1-4.3-1.4-8.7-5.6-9.8l-52.7-14.3 55.9-32.7c3.8-2.2 5.1-7.1 2.9-10.9L439 121c-2.2-3.8-7-5.1-10.8-2.9l-55.9 32.7 14.1-53.3c1.1-4.3-1.4-8.7-5.6-9.8l-15.3-4.1c-4.2-1.1-8.6 1.4-9.7 5.7l-22.3 84.2-93.8 54.8V118.6l61-61.6c3.1-3.1 3.1-8.2 0-11.3l-11.2-11.3c-3.1-3.1-8.1-3.1-11.2 0l-38.6 39V8c0-4.4-3.5-8-7.9-8H216c-4.4 0-7.9 3.6-7.9 8v65.4l-38.6-39c-3.1-3.1-8.1-3.1-11.2 0l-11.2 11.3c-3.1 3.1-3.1 8.2 0 11.3l60.9 61.7v109.7l-93.8-54.8-22.1-84.4c-1.1-4.3-5.5-6.8-9.7-5.7l-15.3 4.1c-4.2 1.1-6.7 5.5-5.6 9.8l14.1 53.3L19.7 118c-3.8-2.2-8.6-.9-10.8 2.9L1 134.8c-2.2 3.8-.9 8.7 2.9 10.9l55.9 32.7-52.6 14.4c-4.2 1.1-6.7 5.5-5.6 9.8l4.1 15.5c1.1 4.3 5.5 6.8 9.7 5.7l83.2-22.6 93.8 54.8-93.8 54.8-83.2-22.6c-4.2-1.1-8.6 1.4-9.7 5.7l-4.1 15.5c-1.1 4.3 1.4 8.7 5.6 9.8l52.7 14.3L4 366.1c-3.8 2.2-5.1 7.1-2.9 10.9L9 390.9c2.2 3.8 7 5.1 10.8 2.9l55.9-32.7-14.1 53.3c-1.1 4.3 1.4 8.7 5.6 9.8l15.3 4.1c4.2 1.1 8.6-1.4 9.7-5.7l22.3-84.2 93.8-54.8v109.7l-61 61.7c-3.1 3.1-3.1 8.2 0 11.3l11.2 11.3c3.1 3.1 8.1 3.1 11.2 0l38.6-39V504c0 4.4 3.5 8 7.9 8H232c4.4 0 7.9-3.6 7.9-8v-65.4l38.6 39c3.1 3.1 8.1 3.1 11.2 0l11.2-11.3c3.1-3.1 3.1-8.2 0-11.3L240 393.3V283.7l93.8 54.8 22.3 84.2c1.1 4.3 5.5 6.8 9.7 5.7l15.3-4.1c4.2-1.1 6.7-5.5 5.6-9.8l-14.1-53.3 55.9 32.7c3.8 2.2 8.6.9 10.8-2.9l7.9-13.9c2.2-3.8.9-8.7-2.9-10.9l-56.2-32.7z\"]\n};\nvar faSnowflakes = {\n prefix: 'fal',\n iconName: 'snowflakes',\n icon: [640, 512, [], \"f7cf\", \"M527.9 120c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V91.6l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9L576 64l27.9-16c3.8-2.2 5.1-7.1 2.9-10.9l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V120zm80.2 136l27.9-16c3.8-2.2 5.1-7.1 2.9-10.9l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V200c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V312c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16zm-220.2 77.5l52.7-14.3c4.2-1.1 6.7-5.5 5.6-9.8l-4.1-15.5c-1.1-4.3-5.5-6.8-9.7-5.7l-83.1 22.6-93.8-54.8 93.7-54.8 83.1 22.6c4.2 1.1 8.6-1.4 9.7-5.7l4.1-15.5c1.1-4.3-1.4-8.7-5.6-9.8l-52.7-14.3 55.9-32.7c3.8-2.2 5.1-7.1 2.9-10.9l-7.9-13.9c-2.2-3.8-7-5.1-10.8-2.9L372 150.8l14.1-53.3c1.1-4.3-1.4-8.7-5.6-9.8l-15.3-4.1c-4.2-1.1-8.6 1.4-9.7 5.7l-22.3 84.2-93.7 54.8V118.6l61-61.6c3.1-3.1 3.1-8.2 0-11.3l-11.2-11.3c-3.1-3.1-8.1-3.1-11.2 0l-38.6 39V8c0-4.4-3.5-8-7.9-8h-15.8c-4.4 0-7.9 3.6-7.9 8v65.4l-38.6-39c-3.1-3.1-8.1-3.1-11.2 0l-11.2 11.3c-3.1 3.1-3.1 8.2 0 11.3l60.9 61.7v109.7l-93.7-54.8-22-84.4c-1.1-4.3-5.5-6.8-9.7-5.7l-15.3 4.1c-4.2 1.1-6.7 5.5-5.6 9.8l14.1 53.3L19.8 118c-3.8-2.2-8.6-.9-10.8 2.9l-7.9 13.9c-2.2 3.8-.9 8.7 2.9 10.9l55.9 32.7-52.6 14.4c-4.2 1.1-6.7 5.5-5.6 9.8l4.1 15.5c1.1 4.3 5.5 6.8 9.7 5.7l83.1-22.6 93.7 54.8-93.7 54.8-83.1-22.6c-4.2-1.1-8.6 1.4-9.7 5.7l-4.1 15.5c-1.1 4.3 1.4 8.7 5.6 9.8L60 333.5 4.1 366.1C.3 368.3-1 373.2 1.2 377l7.9 13.9c2.2 3.8 7 5.1 10.8 2.9l55.9-32.7-14.1 53.3c-1.1 4.3 1.4 8.7 5.6 9.8l15.3 4.1c4.2 1.1 8.6-1.4 9.7-5.7l22.3-84.2 93.7-54.8v109.7l-61 61.7c-3.1 3.1-3.1 8.2 0 11.3l11.2 11.3c3.1 3.1 8.1 3.1 11.2 0l38.6-39V504c0 4.4 3.5 8 7.9 8H232c4.4 0 7.9-3.6 7.9-8v-65.4l38.6 39c3.1 3.1 8.1 3.1 11.2 0l11.2-11.3c3.1-3.1 3.1-8.2 0-11.3L240 393.3V283.7l93.7 54.8 22.3 84.2c1.1 4.3 5.5 6.8 9.7 5.7l15.3-4.1c4.2-1.1 6.7-5.5 5.6-9.8l-14.1-53.3 55.9 32.7c3.8 2.2 8.6.9 10.8-2.9l7.9-13.9c2.2-3.8.9-8.7-2.9-10.9l-56.3-32.7z\"]\n};\nvar faSnowman = {\n prefix: 'fal',\n iconName: 'snowman',\n icon: [512, 512, [], \"f7d0\", \"M256 336c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zM224 72c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm287.3 75.5l-6.3-14.7c-1.7-4.1-6.4-5.9-10.5-4.2l-46.5 20V104c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v58.3l-53.4 22.9c-4.6-8.6-9.8-16.9-16.4-24.2 10.4-16.7 15.8-35.4 15.8-55C362 47.5 314.4 0 256 0S150 47.5 150 106c0 19.5 5.4 38.3 15.8 55-6.6 7.4-11.8 15.6-16.4 24.2L96 162.3V104c0-4.4-3.6-8-8-8H72c-4.4 0-8 3.6-8 8v44.6l-46.5-19.9c-4.1-1.7-8.8.1-10.5 4.2L.7 147.6c-1.7 4.1.1 8.8 4.2 10.5l133.3 57.1c-1.9 8.4-3.2 17-3.2 25.8 0 7.2.8 14.5 2.4 22.4-25.8 29-39.9 66-39.9 105.1 0 54.2 27.6 104 73.8 133.4 10.5 6.6 23.6 10.1 37.9 10.1h93c15.8 0 31-4.8 44-13.8 51.8-35.9 76.9-96.8 65.6-159.1-5.1-28.1-17.9-54.1-37.2-75.8 1.6-7.9 2.4-15.1 2.4-22.3 0-8.8-1.3-17.4-3.2-25.8l133.3-57.1c4.1-1.8 6-6.5 4.2-10.6zm-131 197.3c9 49.8-11 98.5-52.4 127.1-7.6 5.3-16.6 8.1-25.8 8.1h-93c-5.7 0-14-.9-20.8-5.2-36.9-23.4-58.9-63.2-58.9-106.3 0-13.3-.5-51.6 43.3-95.7-5.8-21.5-5.8-25.5-5.8-31.8 0-25.5 10.7-49 30.2-66.3l11.5-10.2-9.7-11.9c-11.2-13.6-17-29.7-17-46.6 0-40.8 33.2-74 74-74s74 33.2 74 74c0 16.9-5.9 33-17 46.6l-9.7 11.9 11.5 10.2C334.2 192 345 215.5 345 241c0 6.6-.3 11.1-5.8 31.7 37.1 37.1 39.9 65.2 41.1 72.1zM256 272c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm32-200c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-32 136c-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 16s16 32 16 32 16-23.2 16-32-7.2-16-16-16z\"]\n};\nvar faSnowmobile = {\n prefix: 'fal',\n iconName: 'snowmobile',\n icon: [640, 512, [], \"f7d1\", \"M639.2 466.7l-7.2-14.3c-2-4-6.8-5.6-10.7-3.6l-57.7 26.1c-3.9 2-8.1 3.2-12.4 4L496 405.3l72.9-48.6c4.5-3 7.1-8 7.1-13.3V265c0-5.6-2.9-10.8-7.8-13.7l-138.1-82.9-47.8-95.6c-4-7.9-13.5-11.1-21.5-7.2-7.9 4-11.1 13.6-7.2 21.5l46.8 93.6-16.9 22.6c-2.4-24.2-22.7-43.3-47.5-43.3h-38.8l-41.1-33.8c-.1-.1-.3-.2-.4-.3 27.7-7 48.4-32 48.4-61.8 0-35.3-28.7-64-64-64s-64 28.7-64 64c0 15.6 5.8 29.7 15.1 40.8-10.1 1.2-43.6 7-61.9 43.4L104 198.6c-11.3 22.7-11.4 48.7-.1 71.3 3.4 6.8 7.8 12.7 12.7 18.1H112c-12.1 0-23.2 6.8-28.6 17.7l-32 64c-2.7 5.4-3.7 11.1-3.3 16.6C20.5 393.4 0 418.2 0 448c0 35.3 28.7 64 64 64h192c35.3 0 64-28.7 64-64 0-11.7-3.4-22.5-8.9-32H464l48 64h-88c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h118.2c12.4 0 24.6-2.9 35.7-8.4l57.7-26.1c3.9-2 5.5-6.8 3.6-10.8zM240 32c17.7 0 32 14.4 32 32s-14.3 32-32 32-32-14.4-32-32 14.3-32 32-32zM132.7 212.9l25.2-50.4c7-13.9 19.8-23.4 35.2-25.9 4.7-.8 24.7-3.5 41.7 13.4l46.6 38.3c2.8 2.3 6.5 3.6 10.2 3.6H336c8.8 0 16 7.2 16 16s-7.2 16-16 16h-44.5c-11.1 0-21.9-3.9-30.5-10.9l-43-35.3-37 74 76.5 14.3c26.6 5 35.4 38.7 14.6 56l-69.9 58.3c-7.1 5.9-17.1 4.5-22.5-2-5.7-6.8-4.8-16.9 2-22.5l69.9-58.2-84.9-15.9c-14.9-2.8-27.4-12.2-34.2-25.8-6.7-13.8-6.6-29.4.2-43zm212 42.2l-15.1 20.1c-3.9 5.2-9.5 8.4-15.5 10.4-.1-.3-.8-14.5-13.6-29.6H336c3 0 5.8-.4 8.7-.9zm-115.8-27h-.2v-.1l.2.1zM112 320h62.6l-13.3 11.1c-15.8 13.2-20.8 34.5-14.3 52.9H80l32-64zm144 160H64c-17.7 0-32-14.3-32-32s14.3-32 32-32h192c17.7 0 32 14.3 32 32s-14.3 32-32 32zm-8.2-96l44.9-37.4c9-7.5 15.3-17.1 19-27.5 17.1-2.1 33.1-10.7 43.5-24.7l69.1-92.1L544 274.1v60.8L470.3 384H247.8z\"]\n};\nvar faSnowplow = {\n prefix: 'fal',\n iconName: 'snowplow',\n icon: [640, 512, [], \"f7d2\", \"M360 376c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm212.4 47.4c-9-9-14.1-21.2-14.1-34v-139c0-12.7 5.1-25 14.1-34l65.2-63.6c3.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-65.3 63.6c-15 15-23.4 35.4-23.4 56.6V304h-96.1v-66.9c0-8.7-1.8-17.2-5.2-25.2L346.7 29.1C339.1 11.4 321.8 0 302.5 0H158.2c-26.5 0-48 21.5-48 48v80h-16c-26.5 0-48 21.5-48 48v133.7C18.3 330.1 0 362.8 0 400c0 61.9 50.1 112 112 112h256c61.9 0 112-50.1 112-112 0-23.8-7.6-45.8-20.3-64h66.6v53.5c0 21.2 8.4 41.6 23.4 56.6l65.2 63.6c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-65.1-63.7zM142.2 128V48c0-8.8 7.2-16 16-16h144.3c6.5 0 12.3 3.8 14.8 9.7L395.4 224H214.2l-72-95.7v-.3zm-64 48c0-8.8 7.2-16 16-16H126l67.4 89.6c3 4 7.8 6.4 12.8 6.4h192v36.6c-9.7-2.7-19.7-4.6-30.2-4.6H112c-11.9 0-23.1 2.3-33.8 5.8V176zM368 480H112c-44.1 0-80-35.9-80-80s35.9-80 80-80h256c44.1 0 80 35.9 80 80s-35.9 80-80 80zM120 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-24z\"]\n};\nvar faSoap = {\n prefix: 'fal',\n iconName: 'soap',\n icon: [512, 512, [], \"e06e\", \"M400,96a48,48,0,1,0-48-48A48.05,48.05,0,0,0,400,96Zm0-64a16,16,0,1,1-16,16A16,16,0,0,1,400,32ZM224,128a64,64,0,1,0-64-64A64,64,0,0,0,224,128Zm0-96a32,32,0,1,1-32,32A32,32,0,0,1,224,32ZM352,272H160a80,80,0,0,0,0,160H352a80,80,0,0,0,0-160Zm0,128H160a48,48,0,0,1,0-96H352a48,48,0,0,1,0,96Zm64-208H384a64,64,0,0,0-128,0H96A96,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-32a32,32,0,1,1-32,32A32,32,0,0,1,320,160ZM480,416a64.07,64.07,0,0,1-64,64H96a64.07,64.07,0,0,1-64-64V288a64.07,64.07,0,0,1,64-64H264.88a63.47,63.47,0,0,0,110.24,0H416a64.07,64.07,0,0,1,64,64Z\"]\n};\nvar faSocks = {\n prefix: 'fal',\n iconName: 'socks',\n icon: [512, 512, [], \"f696\", \"M448 0h-95.83c-11.87 0-22.84 3.43-32.37 9.04C310.43 3.49 299.71 0 288 0h-95.83c-35.32 0-63.96 28.46-64 63.78C128.1 137.27 128 248 128 248l-79.77 59.39c-45.97 34.49-62.82 98.49-34.06 148.25C35.46 492.47 73.8 512 112.09 512c23.38 0 46.97-7.3 67.09-22.41l13.76-10.32c21.47 21.46 50.13 32.72 79.14 32.72 23.38 0 46.97-7.3 67.09-22.41l121.61-91.2a128.006 128.006 0 0 0 51.21-102.4V64C512 28.65 483.35 0 448 0zm-95.83 32H448c17.64 0 32 14.36 32 32v32H320.14l.03-32.18c.02-17.55 14.38-31.82 32-31.82zm-160 0H288c2.91 0 5.68.47 8.31 1.24-5.02 9.1-8.13 19.4-8.14 30.54L288.14 96h-128l.03-32.18c.02-17.55 14.38-31.82 32-31.82zm-18.32 421.6L159.97 464c-13.94 10.46-30.5 16-47.88 16-28.98 0-55.61-15.09-70.22-40.38-19.78-34.21-8.55-81.05 25.56-106.64L159.98 264l.13-136h128c-.06 60.63-.11 120-.11 120l-79.16 59.39c-45.37 34.03-62.18 96.75-34.99 146.21zM480 295.99c0 30.06-14.36 58.77-38.4 76.8L319.97 464c-13.94 10.46-30.5 16-47.88 16-28.98 0-55-15.09-69.62-40.38-19.78-34.21-8.55-81.05 25.56-106.64L319.98 264l.13-136H480v167.99z\"]\n};\nvar faSolarPanel = {\n prefix: 'fal',\n iconName: 'solar-panel',\n icon: [640, 512, [], \"f5ba\", \"M586.22 26.74C583.65 11.31 570.3 0 554.66 0H85.34C69.7 0 56.35 11.31 53.78 26.74l-53.33 320C-2.81 366.24 12.23 384 32.01 384H224v96h-40c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h272c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-40v-96h191.99c19.77 0 34.81-17.76 31.56-37.26l-53.33-320zM578.66 176h-138.6l-14.4-144h129l24 144zm-170.73 0H232.07l14.4-144h147.07l14.39 144zM85.34 32h129l-14.4 144H61.34l24-144zM56.01 208h140.73l-14.4 144H32.01l24-144zM384 480H256v-96h128v96zM214.48 352l14.4-144h182.25l14.4 144H214.48zm243.17 0l-14.4-144h140.74l24 144H457.65z\"]\n};\nvar faSolarSystem = {\n prefix: 'fal',\n iconName: 'solar-system',\n icon: [512, 512, [], \"e02f\", \"M380.38574,123.71484c-12.63061-12.62695-31.37817-14.52343-46.441-6.73632C310.32861,103.71484,283.90894,96,256.06494,96A159.97282,159.97282,0,1,0,389.146,167.08984,39.99385,39.99385,0,0,0,380.38574,123.71484ZM346.59082,346.51562c-48.32629,48.34376-132.72546,48.34376-181.05176,0A128,128,0,0,1,256.06494,128c20.54492,0,40.09741,5.33594,57.88184,14.41406-3.27832,13.16992-.44544,27.57227,9.85241,37.86914a39.76141,39.76141,0,0,0,41.24817,9.19532,127.01793,127.01793,0,0,1-18.45654,157.0371ZM437.234,74.98047A255.4604,255.4604,0,0,0,147.06494,24.59766c.4397.42187.95935.70312,1.39111,1.13476A87.01815,87.01815,0,0,1,165.7832,51.05273,223.59876,223.59876,0,0,1,446.85205,372.9082a56.40228,56.40228,0,1,0,24.45227,21.15039C535.08618,294.95312,524.0166,161.69922,437.234,74.98047ZM424.113,448a24,24,0,1,1,24.00683-24A24.00468,24.00468,0,0,1,424.113,448Zm-79.18677,13.63477A224.11,224.11,0,0,1,31.92065,256c0-41.99609,12.22229-81.83008,33.74805-116.69531a56.61059,56.61059,0,1,0-24.98376-21.6211c-63.88941,99.11524-52.57556,232.57618,34.24621,319.33594a255.43887,255.43887,0,0,0,289.01441,50.91992c-.65259-.61328-1.41455-1.03711-2.05152-1.67383A86.959,86.959,0,0,1,344.92627,461.63477ZM88.01685,64A24,24,0,1,1,64.01,88,24.00335,24.00335,0,0,1,88.01685,64ZM256.06494,176a80,80,0,1,0,80.023,80A80.10313,80.10313,0,0,0,256.06494,176Zm0,128a48,48,0,1,1,48.0138-48A48.0067,48.0067,0,0,1,256.06494,304Z\"]\n};\nvar faSort = {\n prefix: 'fal',\n iconName: 'sort',\n icon: [320, 512, [], \"f0dc\", \"M288 288H32c-28.4 0-42.8 34.5-22.6 54.6l128 128c12.5 12.5 32.8 12.5 45.3 0l128-128c20-20.1 5.7-54.6-22.7-54.6zM160 448L32 320h256L160 448zM32 224h256c28.4 0 42.8-34.5 22.6-54.6l-128-128c-12.5-12.5-32.8-12.5-45.3 0l-128 128C-10.7 189.5 3.6 224 32 224zM160 64l128 128H32L160 64z\"]\n};\nvar faSortAlphaDown = {\n prefix: 'fal',\n iconName: 'sort-alpha-down',\n icon: [448, 512, [], \"f15d\", \"M432 288H304a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8l87.68.07-92.76 131.79a16 16 0 0 0-2.92 9.21V472a8 8 0 0 0 8 8h128a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-87.81l92.89-131.86a16 16 0 0 0 2.92-9.21V296a8 8 0 0 0-8-8zm15.29-80.06l-59.76-168A11.87 11.87 0 0 0 376.37 32h-16.74a11.87 11.87 0 0 0-11.16 7.94l-59.76 168A12 12 0 0 0 299.88 224H311a11.86 11.86 0 0 0 11.21-8.09l15.1-44.27h60.85L413.5 216a11.88 11.88 0 0 0 11.2 8h11.42a12 12 0 0 0 11.17-16.06zm-99.9-67.36s19.62-56.87 20.5-60c.87 3.14 20.24 60 20.24 60zm-148.46 231a11.93 11.93 0 0 0-16.91-.09l-54 52.67V40a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v383.92l-53.94-52.35a12 12 0 0 0-16.92 0l-5.64 5.66a12 12 0 0 0 0 17l84.06 82.3a11.94 11.94 0 0 0 16.87 0l84-82.32a12 12 0 0 0 .09-17z\"]\n};\nvar faSortAlphaDownAlt = {\n prefix: 'fal',\n iconName: 'sort-alpha-down-alt',\n icon: [448, 512, [], \"f881\", \"M304 224h128a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-87.81l92.89-131.86a16 16 0 0 0 2.92-9.21V40a8 8 0 0 0-8-8H304a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8l87.68.07-92.76 131.79a16 16 0 0 0-2.92 9.21V216a8 8 0 0 0 8 8zm143.29 239.94l-59.76-168a11.87 11.87 0 0 0-11.16-7.94h-16.74a11.87 11.87 0 0 0-11.16 7.94l-59.76 168A12 12 0 0 0 299.88 480H311a11.86 11.86 0 0 0 11.21-8.09l15.1-44.27h60.85L413.5 472a11.88 11.88 0 0 0 11.2 8h11.42a12 12 0 0 0 11.17-16.06zm-99.9-67.36s19.62-56.87 20.5-60c.87 3.14 20.24 60 20.24 60zm-148.46-25a11.93 11.93 0 0 0-16.91-.09l-54 52.67V40a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v383.92l-53.94-52.35a12 12 0 0 0-16.92 0l-5.64 5.66a12 12 0 0 0 0 17l84.06 82.3a11.94 11.94 0 0 0 16.87 0l84-82.32a12 12 0 0 0 .09-17z\"]\n};\nvar faSortAlphaUp = {\n prefix: 'fal',\n iconName: 'sort-alpha-up',\n icon: [448, 512, [], \"f15e\", \"M120.44 35.51a11.94 11.94 0 0 0-16.87 0l-84 82.32a12 12 0 0 0-.09 17l5.61 5.68a11.93 11.93 0 0 0 16.91.09l54-52.74V472a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V88.08l53.94 52.35a12 12 0 0 0 16.92 0l5.64-5.66a12 12 0 0 0 0-17zm326.85 172.43l-59.76-168A11.87 11.87 0 0 0 376.37 32h-16.74a11.87 11.87 0 0 0-11.16 7.94l-59.76 168A12 12 0 0 0 299.88 224H311a11.86 11.86 0 0 0 11.21-8.09l15.1-44.27h60.85L413.5 216a11.88 11.88 0 0 0 11.2 8h11.42a12 12 0 0 0 11.17-16.06zm-99.9-67.36s19.62-56.87 20.5-60c.87 3.14 20.24 60 20.24 60zM432 288H304a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8l87.68.07-92.76 131.79a16 16 0 0 0-2.92 9.21V472a8 8 0 0 0 8 8h128a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-87.81l92.89-131.86a16 16 0 0 0 2.92-9.21V296a8 8 0 0 0-8-8z\"]\n};\nvar faSortAlphaUpAlt = {\n prefix: 'fal',\n iconName: 'sort-alpha-up-alt',\n icon: [448, 512, [], \"f882\", \"M304 224h128a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-87.81l92.89-131.86a16 16 0 0 0 2.92-9.21V40a8 8 0 0 0-8-8H304a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8l87.68.07-92.76 131.79a16 16 0 0 0-2.92 9.21V216a8 8 0 0 0 8 8zM120.44 35.51a11.94 11.94 0 0 0-16.87 0l-84 82.32a12 12 0 0 0-.09 17l5.61 5.68a11.93 11.93 0 0 0 16.91.09l54-52.74V472a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V88.08l53.94 52.35a12 12 0 0 0 16.92 0l5.64-5.66a12 12 0 0 0 0-17zm326.85 428.43l-59.76-168a11.87 11.87 0 0 0-11.16-7.94h-16.74a11.87 11.87 0 0 0-11.16 7.94l-59.76 168A12 12 0 0 0 299.88 480H311a11.86 11.86 0 0 0 11.21-8.09l15.1-44.27h60.85L413.5 472a11.88 11.88 0 0 0 11.2 8h11.42a12 12 0 0 0 11.17-16.06zm-99.9-67.36s19.62-56.87 20.5-60c.87 3.14 20.24 60 20.24 60z\"]\n};\nvar faSortAlt = {\n prefix: 'fal',\n iconName: 'sort-alt',\n icon: [384, 512, [], \"f883\", \"M364.5 117.81l-84.06-82.3a11.94 11.94 0 0 0-16.87 0l-84 82.32a12 12 0 0 0-.09 17l5.61 5.68a11.93 11.93 0 0 0 16.91.09l54-52.67V472a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V88.08l53.94 52.35a12 12 0 0 0 16.92 0l5.64-5.66a12 12 0 0 0 0-16.96zM198.93 371.56a11.93 11.93 0 0 0-16.91-.09l-54 52.67V40a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v383.92l-53.94-52.35a12 12 0 0 0-16.92 0l-5.64 5.66a12 12 0 0 0 0 17l84.06 82.3a11.94 11.94 0 0 0 16.87 0l84-82.32a12 12 0 0 0 .09-17z\"]\n};\nvar faSortAmountDown = {\n prefix: 'fal',\n iconName: 'sort-amount-down',\n icon: [512, 512, [], \"f160\", \"M376 288H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm-64 96h-48a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h48a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM504 96H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h240a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm-64 96H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM198.93 371.56a11.93 11.93 0 0 0-16.91-.09l-54 52.67V40a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v383.92l-53.94-52.35a12 12 0 0 0-16.92 0l-5.64 5.66a12 12 0 0 0 0 17l84.06 82.3a11.94 11.94 0 0 0 16.87 0l84-82.32a12 12 0 0 0 .09-17z\"]\n};\nvar faSortAmountDownAlt = {\n prefix: 'fal',\n iconName: 'sort-amount-down-alt',\n icon: [512, 512, [], \"f884\", \"M264 320h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm0-192h48a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-48a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm0 96h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm240 160H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h240a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm-305.07-12.44a11.93 11.93 0 0 0-16.91-.09l-54 52.67V40a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v383.92l-53.94-52.35a12 12 0 0 0-16.92 0l-5.64 5.66a12 12 0 0 0 0 17l84.06 82.3a11.94 11.94 0 0 0 16.87 0l84-82.32a12 12 0 0 0 .09-17z\"]\n};\nvar faSortAmountUp = {\n prefix: 'fal',\n iconName: 'sort-amount-up',\n icon: [512, 512, [], \"f161\", \"M312 384h-48a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h48a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm64-96H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM504 96H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h240a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm-64 96H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM120.44 35.51a11.94 11.94 0 0 0-16.87 0l-84 82.32a12 12 0 0 0-.09 17l5.61 5.68a11.93 11.93 0 0 0 16.91.09l54-52.74V472a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V88.08l53.94 52.35a12 12 0 0 0 16.92 0l5.64-5.66a12 12 0 0 0 0-17z\"]\n};\nvar faSortAmountUpAlt = {\n prefix: 'fal',\n iconName: 'sort-amount-up-alt',\n icon: [512, 512, [], \"f885\", \"M264 224h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm0 96h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm0-192h48a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-48a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm240 256H264a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h240a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM120.44 35.51a11.94 11.94 0 0 0-16.87 0l-84 82.32a12 12 0 0 0-.09 17l5.61 5.68a11.93 11.93 0 0 0 16.91.09l54-52.74V472a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V88.08l53.94 52.35a12 12 0 0 0 16.92 0l5.64-5.66a12 12 0 0 0 0-17z\"]\n};\nvar faSortCircle = {\n prefix: 'fal',\n iconName: 'sort-circle',\n icon: [512, 512, [], \"e030\", \"M164.75,224H347.11c16.4,0,24.59-19.85,13-31.41L269,101.41a18.36,18.36,0,0,0-13-5.41,18.15,18.15,0,0,0-13,5.41l-91.25,91.18C140.16,204.15,148.35,224,164.75,224ZM256,133.67,314.3,192H197.59ZM347.11,288H164.75c-16.4,0-24.59,19.85-13,31.41L243,410.59a18.15,18.15,0,0,0,13,5.41,18.34,18.34,0,0,0,13-5.41l91.18-91.18C371.7,307.85,363.52,288,347.11,288ZM256,378.33,197.59,320H314.3ZM350.88,26.94A247.21,247.21,0,0,0,256.1,8C158.8,8,66.49,65.64,26.94,161.12c-52.4,126.51,7.67,271.54,134.18,323.94A247.21,247.21,0,0,0,255.9,504c97.3,0,189.61-57.64,229.16-153.12C537.46,224.37,477.39,79.34,350.88,26.94ZM455.5,338.64A215.73,215.73,0,0,1,173.37,455.5C63.36,409.93,10.94,283.37,56.5,173.36A215.73,215.73,0,0,1,338.63,56.5C448.64,102.07,501.06,228.63,455.5,338.64Z\"]\n};\nvar faSortCircleDown = {\n prefix: 'fal',\n iconName: 'sort-circle-down',\n icon: [512, 512, [], \"e031\", \"M350.88,26.94A247.21,247.21,0,0,0,256.1,8C158.8,8,66.49,65.64,26.94,161.12c-52.4,126.51,7.67,271.54,134.18,323.94A247.21,247.21,0,0,0,255.9,504c97.3,0,189.61-57.64,229.16-153.12C537.46,224.37,477.39,79.34,350.88,26.94ZM455.5,338.64A215.73,215.73,0,0,1,173.37,455.5C63.36,409.93,10.94,283.37,56.5,173.36A215.73,215.73,0,0,1,338.63,56.5C448.64,102.07,501.06,228.63,455.5,338.64ZM347.25,288H164.89c-16.4,0-24.59,19.85-13,31.41L243,410.59a18.36,18.36,0,0,0,13,5.41,18.15,18.15,0,0,0,13-5.41l91.25-91.18C371.84,307.85,363.65,288,347.25,288ZM256,378.33,197.7,320H314.41Zm11.27-277.64a16,16,0,0,0-22.62,0l-96,96a16,16,0,0,0,22.62,22.62L256,134.63l84.69,84.68a16,16,0,0,0,22.62-22.62Z\"]\n};\nvar faSortCircleUp = {\n prefix: 'fal',\n iconName: 'sort-circle-up',\n icon: [512, 512, [], \"e032\", \"M161.12,485.06A247.21,247.21,0,0,0,255.9,504c97.3,0,189.61-57.64,229.16-153.12,52.4-126.51-7.67-271.54-134.18-323.94A247.21,247.21,0,0,0,256.1,8C158.8,8,66.49,65.64,26.94,161.12-25.46,287.63,34.61,432.66,161.12,485.06ZM56.5,173.36A215.74,215.74,0,0,1,338.64,56.5c110,45.57,162.42,172.13,116.86,282.14A215.73,215.73,0,0,1,173.37,455.5C63.36,409.93,10.94,283.37,56.5,173.36ZM164.75,224H347.11c16.4,0,24.59-19.85,13-31.41L269,101.41a18.36,18.36,0,0,0-13-5.41,18.15,18.15,0,0,0-13,5.41l-91.25,91.18C140.17,204.15,148.35,224,164.75,224ZM256,133.67,314.3,192H197.59ZM244.69,411.31a16,16,0,0,0,22.62,0l96-96a16,16,0,0,0-22.62-22.62L256,377.37l-84.69-84.68a16,16,0,0,0-22.62,22.62Z\"]\n};\nvar faSortDown = {\n prefix: 'fal',\n iconName: 'sort-down',\n icon: [320, 512, [], \"f0dd\", \"M287.968 288H32.038c-28.425 0-42.767 34.488-22.627 54.627l127.962 128c12.496 12.496 32.758 12.497 45.255 0l127.968-128C330.695 322.528 316.45 288 287.968 288zM160 448L32 320h256L160 448z\"]\n};\nvar faSortNumericDown = {\n prefix: 'fal',\n iconName: 'sort-numeric-down',\n icon: [448, 512, [], \"f162\", \"M344.49 257.48a72 72 0 1 0 52.16 132c-8.84 31.22-35.92 54.86-69.08 58a8.07 8.07 0 0 0-7.57 7.92v16.07a8 8 0 0 0 8.38 8.05A112.15 112.15 0 0 0 432 367.86v-40a72.13 72.13 0 0 0-87.51-70.38zM360 367.86a40 40 0 1 1 40-40 40 40 0 0 1-40 40zM424 192h-40V48a16 16 0 0 0-16-16h-12a16 16 0 0 0-13.57 7.52l-20 32A16 16 0 0 0 336 96h16v96h-40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM198.93 371.56a11.93 11.93 0 0 0-16.91-.09l-54 52.67V40a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v383.92l-53.94-52.35a12 12 0 0 0-16.92 0l-5.64 5.66a12 12 0 0 0 0 17l84.06 82.3a11.94 11.94 0 0 0 16.87 0l84-82.32a12 12 0 0 0 .09-17z\"]\n};\nvar faSortNumericDownAlt = {\n prefix: 'fal',\n iconName: 'sort-numeric-down-alt',\n icon: [448, 512, [], \"f886\", \"M424 448h-40V304a16 16 0 0 0-16-16h-12a16 16 0 0 0-13.57 7.52l-20 32A16 16 0 0 0 336 352h16v96h-40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM344.49 33.92A72 72 0 0 0 360 176.29a71.13 71.13 0 0 0 36.65-10.37c-8.84 31.22-35.92 54.86-69.08 58a8.08 8.08 0 0 0-7.57 7.92v16.07a8 8 0 0 0 8.38 8.06A112.16 112.16 0 0 0 432 144.29v-40a72.13 72.13 0 0 0-87.51-70.37zM360 144.29a40 40 0 1 1 40-40 40 40 0 0 1-40 40zM198.93 371.56a11.93 11.93 0 0 0-16.91-.09l-54 52.67V40a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v383.92l-53.94-52.35a12 12 0 0 0-16.92 0l-5.64 5.66a12 12 0 0 0 0 17l84.06 82.3a11.94 11.94 0 0 0 16.87 0l84-82.32a12 12 0 0 0 .09-17z\"]\n};\nvar faSortNumericUp = {\n prefix: 'fal',\n iconName: 'sort-numeric-up',\n icon: [448, 512, [], \"f163\", \"M424 192h-40V48a16 16 0 0 0-16-16h-12a16 16 0 0 0-13.57 7.52l-20 32A16 16 0 0 0 336 96h16v96h-40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm-79.51 65.48a72 72 0 1 0 52.16 132c-8.84 31.22-35.92 54.86-69.08 58a8.07 8.07 0 0 0-7.57 7.92v16.07a8 8 0 0 0 8.38 8.05A112.15 112.15 0 0 0 432 367.86v-40a72.13 72.13 0 0 0-87.51-70.38zM360 367.86a40 40 0 1 1 40-40 40 40 0 0 1-40 40zM120.44 35.51a11.94 11.94 0 0 0-16.87 0l-84 82.32a12 12 0 0 0-.09 17l5.61 5.68a11.93 11.93 0 0 0 16.91.09l54-52.74V472a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V88.08l53.94 52.35a12 12 0 0 0 16.92 0l5.64-5.66a12 12 0 0 0 0-17z\"]\n};\nvar faSortNumericUpAlt = {\n prefix: 'fal',\n iconName: 'sort-numeric-up-alt',\n icon: [448, 512, [], \"f887\", \"M120.44 35.51a11.94 11.94 0 0 0-16.87 0l-84 82.32a12 12 0 0 0-.09 17l5.61 5.68a11.93 11.93 0 0 0 16.91.09l54-52.74V472a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V88.08l53.94 52.35a12 12 0 0 0 16.92 0l5.64-5.66a12 12 0 0 0 0-17zm224.05-1.59A72 72 0 0 0 360 176.29a71.13 71.13 0 0 0 36.65-10.37c-8.84 31.22-35.92 54.86-69.08 58a8.08 8.08 0 0 0-7.57 7.92v16.07a8 8 0 0 0 8.38 8.06A112.16 112.16 0 0 0 432 144.29v-40a72.13 72.13 0 0 0-87.51-70.37zM360 144.29a40 40 0 1 1 40-40 40 40 0 0 1-40 40zM424 448h-40V304a16 16 0 0 0-16-16h-12a16 16 0 0 0-13.57 7.52l-20 32A16 16 0 0 0 336 352h16v96h-40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faSortShapesDown = {\n prefix: 'fal',\n iconName: 'sort-shapes-down',\n icon: [448, 512, [], \"f888\", \"M444.1 182.86L361 45.71a29.56 29.56 0 0 0-49.9 0l-83.2 137.15c-11.08 18.28 2.77 41.14 24.95 41.14h166.3c22.18 0 36.03-22.86 24.95-41.14zM259.77 192L336 66.28 412.23 192zM264 480h144a24 24 0 0 0 24-24V312a24 24 0 0 0-24-24H264a24 24 0 0 0-24 24v144a24 24 0 0 0 24 24zm8-160h128v128H272zm-73.07 51.56a11.93 11.93 0 0 0-16.91-.09l-54 52.67V40a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v383.92l-53.94-52.35a12 12 0 0 0-16.92 0l-5.64 5.66a12 12 0 0 0 0 17l84.06 82.3a11.94 11.94 0 0 0 16.87 0l84-82.32a12 12 0 0 0 .09-17z\"]\n};\nvar faSortShapesDownAlt = {\n prefix: 'fal',\n iconName: 'sort-shapes-down-alt',\n icon: [448, 512, [], \"f889\", \"M444.1 438.86L361 301.71a29.56 29.56 0 0 0-49.9 0l-83.2 137.15c-11.08 18.28 2.77 41.14 24.95 41.14h166.3c22.18 0 36.03-22.86 24.95-41.14zM259.77 448L336 322.28 412.23 448zM264 224h144a24 24 0 0 0 24-24V56a24 24 0 0 0-24-24H264a24 24 0 0 0-24 24v144a24 24 0 0 0 24 24zm8-160h128v128H272zm-73.07 304.56a11.93 11.93 0 0 0-16.91-.09l-54 52.67V37a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v383.92l-53.94-52.35a12 12 0 0 0-16.92 0l-5.64 5.66a12 12 0 0 0 0 17l84.06 82.3a11.94 11.94 0 0 0 16.87 0l84-82.32a12 12 0 0 0 .09-17z\"]\n};\nvar faSortShapesUp = {\n prefix: 'fal',\n iconName: 'sort-shapes-up',\n icon: [448, 512, [], \"f88a\", \"M264 480h144a24 24 0 0 0 24-24V312a24 24 0 0 0-24-24H264a24 24 0 0 0-24 24v144a24 24 0 0 0 24 24zm8-160h128v128H272zM120.44 35.51a11.94 11.94 0 0 0-16.87 0l-84 82.32a12 12 0 0 0-.09 17l5.61 5.68a11.93 11.93 0 0 0 16.91.09l54-52.74V472a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V88.08l53.94 52.35a12 12 0 0 0 16.92 0l5.64-5.66a12 12 0 0 0 0-17zM444.1 182.86L361 45.71a29.56 29.56 0 0 0-49.9 0l-83.2 137.15c-11.08 18.28 2.77 41.14 24.95 41.14h166.3c22.18 0 36.03-22.86 24.95-41.14zM259.77 192L336 66.28 412.23 192z\"]\n};\nvar faSortShapesUpAlt = {\n prefix: 'fal',\n iconName: 'sort-shapes-up-alt',\n icon: [448, 512, [], \"f88b\", \"M444.1 438.86L361 301.71a29.56 29.56 0 0 0-49.9 0l-83.2 137.15c-11.08 18.28 2.77 41.14 24.95 41.14h166.3c22.18 0 36.03-22.86 24.95-41.14zM259.77 448L336 322.28 412.23 448zM264 224h144a24 24 0 0 0 24-24V56a24 24 0 0 0-24-24H264a24 24 0 0 0-24 24v144a24 24 0 0 0 24 24zm8-160h128v128H272zM120.44 35.51a11.94 11.94 0 0 0-16.87 0l-84 82.32a12 12 0 0 0-.09 17l5.61 5.68a11.93 11.93 0 0 0 16.91.09l54-52.74V472a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V88.08l53.94 52.35a12 12 0 0 0 16.92 0l5.64-5.66a12 12 0 0 0 0-17z\"]\n};\nvar faSortSizeDown = {\n prefix: 'fal',\n iconName: 'sort-size-down',\n icon: [512, 512, [], \"f88c\", \"M198.93 371.56a11.93 11.93 0 0 0-16.91-.09l-54 52.67V40a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v383.92l-53.94-52.35a12 12 0 0 0-16.92 0l-5.64 5.66a12 12 0 0 0 0 17l84.06 82.3a11.94 11.94 0 0 0 16.87 0l84-82.32a12 12 0 0 0 .09-17zM484 32H284a28 28 0 0 0-28 28v168a28 28 0 0 0 28 28h200a28 28 0 0 0 28-28V60a28 28 0 0 0-28-28zm-4 192H288V64h192zm-52 96H276a20 20 0 0 0-20 20v120a20 20 0 0 0 20 20h152a20 20 0 0 0 20-20V340a20 20 0 0 0-20-20zm-12 128H288v-96h128z\"]\n};\nvar faSortSizeDownAlt = {\n prefix: 'fal',\n iconName: 'sort-size-down-alt',\n icon: [512, 512, [], \"f88d\", \"M198.93 371.56a11.93 11.93 0 0 0-16.91-.09l-54 52.67V40a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v383.92l-53.94-52.35a12 12 0 0 0-16.92 0l-5.64 5.66a12 12 0 0 0 0 17l84.06 82.3a11.94 11.94 0 0 0 16.87 0l84-82.32a12 12 0 0 0 .09-17zM276 192h152a20 20 0 0 0 20-20V52a20 20 0 0 0-20-20H276a20 20 0 0 0-20 20v120a20 20 0 0 0 20 20zm12-128h128v96H288zm196 192H284a28 28 0 0 0-28 28v168a28 28 0 0 0 28 28h200a28 28 0 0 0 28-28V284a28 28 0 0 0-28-28zm-4 192H288V288h192z\"]\n};\nvar faSortSizeUp = {\n prefix: 'fal',\n iconName: 'sort-size-up',\n icon: [512, 512, [], \"f88e\", \"M25.07 140.44a11.93 11.93 0 0 0 16.91.09L96 87.86V472a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V88.08l53.94 52.35a12 12 0 0 0 16.92 0l5.64-5.66a12 12 0 0 0 0-17l-84.06-82.3a11.94 11.94 0 0 0-16.87 0l-84 82.32a12 12 0 0 0-.09 17zM484 32H284a28 28 0 0 0-28 28v168a28 28 0 0 0 28 28h200a28 28 0 0 0 28-28V60a28 28 0 0 0-28-28zm-4 192H288V64h192zm-52 96H276a20 20 0 0 0-20 20v120a20 20 0 0 0 20 20h152a20 20 0 0 0 20-20V340a20 20 0 0 0-20-20zm-12 128H288v-96h128z\"]\n};\nvar faSortSizeUpAlt = {\n prefix: 'fal',\n iconName: 'sort-size-up-alt',\n icon: [512, 512, [], \"f88f\", \"M25.07 140.44a11.93 11.93 0 0 0 16.91.09L96 87.86V472a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V88.08l53.94 52.35a12 12 0 0 0 16.92 0l5.64-5.66a12 12 0 0 0 0-17l-84.06-82.3a11.94 11.94 0 0 0-16.87 0l-84 82.32a12 12 0 0 0-.09 17zM276 192h152a20 20 0 0 0 20-20V52a20 20 0 0 0-20-20H276a20 20 0 0 0-20 20v120a20 20 0 0 0 20 20zm12-128h128v96H288zm196 192H284a28 28 0 0 0-28 28v168a28 28 0 0 0 28 28h200a28 28 0 0 0 28-28V284a28 28 0 0 0-28-28zm-4 192H288V288h192z\"]\n};\nvar faSortUp = {\n prefix: 'fal',\n iconName: 'sort-up',\n icon: [320, 512, [], \"f0de\", \"M32.032 224h255.93c28.425 0 42.767-34.488 22.627-54.627l-127.962-128c-12.496-12.496-32.758-12.497-45.255 0l-127.968 128C-10.695 189.472 3.55 224 32.032 224zM160 64l128 128H32L160 64z\"]\n};\nvar faSoup = {\n prefix: 'fal',\n iconName: 'soup',\n icon: [512, 512, [], \"f823\", \"M319.5 151.9a8.12 8.12 0 0 0 8 7.8h16a7.94 7.94 0 0 0 8-8.2c-2.1-42.1-19.3-73.3-41.6-95.5-18.4-18.7-21.1-38.2-21.9-48.9a7.87 7.87 0 0 0-8-7.1l-16 .1a8 8 0 0 0-7.9 8.7 105.46 105.46 0 0 0 31.2 69.7c17.3 17.2 30.4 40.7 32.2 73.4zm-111.5 0a8.12 8.12 0 0 0 8 7.8h16a7.94 7.94 0 0 0 8-8.2c-2.1-42.1-19.3-73.3-41.6-95.5-18.3-18.7-21-38.2-21.8-48.9a7.9 7.9 0 0 0-8.1-7.1l-16 .1a8 8 0 0 0-7.9 8.7c1 14.9 5.2 43.6 31.2 69.7 17.29 17.2 30.39 40.7 32.2 73.4zM480 192H32a32 32 0 0 0-32 32c0 94.7 51.56 177.16 128 221.45V480a32 32 0 0 0 32 32h192a32 32 0 0 0 32-32v-34.55C460.44 401.16 512 318.7 512 224a32 32 0 0 0-32-32zM352 427v53H160v-53C27.66 350.33 32 241.22 32 224h448c0 17.46 3.37 126.89-128 203z\"]\n};\nvar faSpa = {\n prefix: 'fal',\n iconName: 'spa',\n icon: [576, 512, [], \"f5bb\", \"M568.28 192.08h-.04c-22.64.1-92 4.29-158.85 42.35-19.43-81.58-60.36-153.88-112.52-199.29-2.4-2.09-5.63-3.14-8.85-3.14s-6.44 1.04-8.85 3.14C227 80.55 186.05 152.85 166.6 234.44 99.76 196.37 30.4 192.19 7.75 192.08h-.04c-4.39 0-7.76 3.41-7.72 7.82.23 27.94 7.14 126.2 88.77 199.41 58.23 56.73 131.07 74.8 176.96 80.46.01.3 44.52.3 44.52 0 45.89-5.66 118.73-23.73 176.96-80.46 81.64-73.2 88.54-171.47 88.77-199.41.07-4.41-3.29-7.82-7.69-7.82zM110.13 375.47c-55.22-49.52-71.61-112.28-76.32-149.92 40.84 4.1 110.91 19.31 166.44 73.44 25.37 22.72 44.4 49.96 58.17 83.28 8.5 20.57 13.57 41.3 13.57 65.82-42.77-1.15-114.58-26.6-161.86-72.62zm111.46-100.34c-8.51-8.3-17.45-15.42-26.46-22.15 15.13-71.58 48.71-138.15 92.9-182.33 44.17 44.17 77.74 110.74 92.85 182.32-9.02 6.73-17.95 13.85-26.47 22.15-33.12 29.65-53.36 63.34-66.41 94.91-13.05-31.57-33.29-65.26-66.41-94.9zM464.9 376.37c-44.61 43.46-116.13 70.51-160.9 71.71 0-24.31 4.98-45.03 13.57-65.82 13.77-33.33 32.8-60.57 59.17-84.22 54.78-53.42 124.71-68.46 165.44-72.52-4.74 37.68-21.29 100.62-77.28 150.85z\"]\n};\nvar faSpaceShuttle = {\n prefix: 'fal',\n iconName: 'space-shuttle',\n icon: [640, 512, [], \"f197\", \"M448 168C208 168 240 32 96.003 32H80c-26.51 0-48 28.654-48 64v64c-23.197 0-32 10.032-32 24v144c0 13.983 8.819 24 32 24v64c0 35.346 21.49 64 48 64h16.003C240 480 208 344 448 344c106.039 0 192-39.399 192-88s-85.961-88-192-88zm-152 0H166.495c-11.973-5.241-25.014-8-38.495-8V67.183C187.971 80.409 219.668 148.917 296 168zM127.046 320H64v-48h48c17.673 0 32-7.163 32-16s-14.327-16-32-16H64v-48h64c35.629 0 64.458 29.114 63.994 64.85-.456 35.171-29.775 63.15-64.948 63.15zM64 96c0-19.851 10.359-32 16-32h16v96H64V96zm0 320v-64h32v96H80c-5.641 0-16-12.149-16-32zm64 28.817v-92.829c13.196-.126 26.009-2.869 37.816-7.989H296c-76.327 19.083-108.024 87.591-168 100.818zM448 312H205.781c24.716-33.856 23.823-79.277.215-112H448c41.469 0 88 0 128 24v64c-40 24-86.45 24-128 24zm40.014-16c-4.426 0-8.014-3.582-8.014-8v-64c0-4.418 3.588-8 8.014-8 31.998 0 31.965 80 0 80z\"]\n};\nvar faSpaceStationMoon = {\n prefix: 'fal',\n iconName: 'space-station-moon',\n icon: [512, 512, [], \"e033\", \"M256,8C119.0332,8,8,119.0332,8,256S119.0332,504,256,504,504,392.9668,504,256,392.9668,8,256,8Zm0,464c-93.57227,0-173.207-59.918-203.14648-143.31445A892.19066,892.19066,0,0,0,256,352a892.19066,892.19066,0,0,0,203.14648-23.31445C429.207,412.082,349.57227,472,256,472ZM43.50391,293.64062A215.62336,215.62336,0,0,1,40,256C40,136.89648,136.89648,40,256,40s216,96.89648,216,216a215.62336,215.62336,0,0,1-3.50391,37.64062C337.67578,327.79883,174.32422,327.79883,43.50391,293.64062ZM200,80a88,88,0,1,0,88,88A87.99936,87.99936,0,0,0,200,80Zm0,144a56,56,0,1,1,56-56A56.06416,56.06416,0,0,1,200,224Zm0-80a24,24,0,1,0,24,24A23.99993,23.99993,0,0,0,200,144Z\"]\n};\nvar faSpaceStationMoonAlt = {\n prefix: 'fal',\n iconName: 'space-station-moon-alt',\n icon: [512, 512, [], \"e034\", \"M224.03985,168.00007a24.00456,24.00456,0,1,1-24.00456-24A24.00346,24.00346,0,0,1,224.03985,168.00007ZM496.85531,314.44538a8.20823,8.20823,0,0,1-5.64755,5.91992,810.55026,810.55026,0,0,1-107.13753,22.53125v41.10352h56.01063a7.99991,7.99991,0,0,1,8.00152,8v17.91211a8.25737,8.25737,0,0,1-1.91247,5.30273,247.48223,247.48223,0,0,1-190.124,88.78516c-140.99161,0-254.5073-117.61133-247.75993-260.05859C14.2891,117.20905,118.82261,13.43366,245.61426,8.21491A246.96216,246.96216,0,0,1,413.10309,64.19734a8.22137,8.22137,0,0,1,2.97322,6.34765v49.45508a8.00116,8.00116,0,0,1-8.00152,8H384.07023v32h56.01063a7.99991,7.99991,0,0,1,8.00152,8v56l46.671-.00195a7.91467,7.91467,0,0,1,7.94487,6.99609A243.9077,243.9077,0,0,1,496.85531,314.44538ZM368.06719,416.00007a16.00152,16.00152,0,0,1-16.003-16v-53.541a909.15658,909.15658,0,0,1-96.01822,5.541A882.06521,882.06521,0,0,1,52.8511,328.66023c29.93928,83.4082,109.595,143.33984,203.19483,143.33984a215.14345,215.14345,0,0,0,145.09785-56Zm104.01975-160H392.07175a8.00115,8.00115,0,0,1-8.00152-8v-16a7.99991,7.99991,0,0,1,8.00152-8h24.00456v-32H360.06567a8.00116,8.00116,0,0,1-8.00152-8v-56H328.0596a8.00115,8.00115,0,0,1-8.00152-8v-16a7.99991,7.99991,0,0,1,8.00152-8h56.01063V82.15046a216.05674,216.05674,0,0,0-128.0243-42.15039c-119.12613,0-216.041,96.89648-216.041,216A215.721,215.721,0,0,0,43.45674,293.295c65.4343,17.24024,137.39132,26.70508,212.58919,26.70508a826.14433,826.14433,0,0,0,212.7103-27.52148A209.22142,209.22142,0,0,0,472.08694,256.00007Zm-184.03494-88a88.01671,88.01671,0,1,1-88.01671-88A88.009,88.009,0,0,1,288.052,168.00007Zm-32.00607,0a56.01064,56.01064,0,1,0-56.01064,56A56.06823,56.06823,0,0,0,256.04593,168.00007Z\"]\n};\nvar faSpade = {\n prefix: 'fal',\n iconName: 'spade',\n icon: [512, 512, [], \"f2f4\", \"M471.4 200.3C456.1 186.4 327 57.7 278.6 9.3c-12.5-12.5-32.7-12.5-45.2 0-48.4 48.4-177.5 177-192.8 191C15.1 223.5 0 256.4 0 292c0 68.4 55.6 124 124 124 35.5 0 52-8 76-32 0 24-9.7 27.6-30.2 53.4-23.9 30.1-2.4 74.6 36 74.6h100.3c38.5 0 60-44.5 36-74.6-19-24.1-30.1-29.4-30.1-53.4 24 24 48.9 32 76 32 68.4 0 124-55.6 124-124 0-35.7-15.2-68.5-40.6-91.7zM385.5 384c-41-.4-54.6-11.3-87.2-45.2-3.7-3.9-10.3-1.2-10.3 4.2v25c0 40.6 0 52.6 29.1 89.3 7.3 9.2.7 22.7-11 22.7H205.8c-11.7 0-18.3-13.5-11-22.7C224 420.6 224 408.6 224 368v-25c0-5.4-6.6-8.1-10.3-4.2-32.3 33.7-45.9 44.7-87.1 45.2-51.8.5-95-41-94.5-92.8.2-26 11.4-50.1 30.1-67.2C81.3 206.5 256 32 256 32s174.7 174.5 193.9 192c19 17.3 29.9 41.6 30.1 67.3.4 51.8-42.7 93.2-94.5 92.7z\"]\n};\nvar faSparkles = {\n prefix: 'fal',\n iconName: 'sparkles',\n icon: [512, 512, [], \"f890\", \"M328.84 109.75l48.57 24.32 24.28 48.63a16 16 0 0 0 28.62 0l24.28-48.63 48.57-24.32a16 16 0 0 0 0-28.66l-48.57-24.32-24.28-48.63c-5.43-10.85-23.19-10.85-28.62 0l-24.28 48.63-48.57 24.32a16 16 0 0 0 0 28.66zM396.5 83a16.1 16.1 0 0 0 7.16-7.16L416 51.14l12.34 24.74A16.1 16.1 0 0 0 435.5 83l24.72 12.38-24.72 12.42a16.2 16.2 0 0 0-7.16 7.16L416 139.7 403.66 115a16.2 16.2 0 0 0-7.16-7.16l-24.72-12.42zm106.66 318.53l-48.57-24.31-24.28-48.63c-5.43-10.86-23.19-10.86-28.62 0l-24.28 48.63-48.57 24.31a16 16 0 0 0 0 28.67l48.57 24.31 24.28 48.63a16 16 0 0 0 28.62 0l24.28-48.63 48.57-24.31a16 16 0 0 0 0-28.67zm-67.66 26.71a16.17 16.17 0 0 0-7.16 7.17L416 460.15l-12.34-24.74a16.17 16.17 0 0 0-7.16-7.17l-24.72-12.37 24.72-12.38a16.17 16.17 0 0 0 7.16-7.17L416 371.59l12.34 24.73a16.17 16.17 0 0 0 7.16 7.17l24.72 12.38zM384 255.64a16.06 16.06 0 0 0-8.84-14.33L262.59 185 206.31 72.23c-5.43-10.86-23.19-10.86-28.62 0L121.41 185 8.84 241.31a16 16 0 0 0 0 28.67l112.57 56.36 56.28 112.71a16 16 0 0 0 28.62 0l56.28-112.71L375.16 270a16.09 16.09 0 0 0 8.84-14.36zm-140.5 44.43a16.1 16.1 0 0 0-7.16 7.16L192 396.06l-44.34-88.83a16.1 16.1 0 0 0-7.16-7.16l-88.72-44.43 88.72-44.42a16.2 16.2 0 0 0 7.16-7.16L192 115.23l44.34 88.83a16.2 16.2 0 0 0 7.16 7.16l88.72 44.42z\"]\n};\nvar faSpeaker = {\n prefix: 'fal',\n iconName: 'speaker',\n icon: [384, 512, [], \"f8df\", \"M192 192a64 64 0 1 0-64-64 64 64 0 0 0 64 64zm0-96a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm0 128a112 112 0 1 0 112 112 112 112 0 0 0-112-112zm0 192a80 80 0 1 1 80-80 80.09 80.09 0 0 1-80 80zm0-112a32 32 0 1 0 32 32 32 32 0 0 0-32-32zM336 0H48A48 48 0 0 0 0 48v416a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V48a48 48 0 0 0-48-48zm16 464a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h288a16 16 0 0 1 16 16z\"]\n};\nvar faSpeakers = {\n prefix: 'fal',\n iconName: 'speakers',\n icon: [640, 512, [], \"f8e0\", \"M592 0H304a48 48 0 0 0-48 48v416a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V48a48 48 0 0 0-48-48zm16 464a16 16 0 0 1-16 16H304a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h288a16 16 0 0 1 16 16zM448 224a112 112 0 1 0 112 112 112 112 0 0 0-112-112zm0 192a80 80 0 1 1 80-80 80.09 80.09 0 0 1-80 80zm0-112a32 32 0 1 0 32 32 32 32 0 0 0-32-32zm0-112a64 64 0 1 0-64-64 64 64 0 0 0 64 64zm0-96a32 32 0 1 1-32 32 32 32 0 0 1 32-32zM224 229.2c-10.2-3.06-20.8-5.2-32-5.2a112 112 0 0 0 0 224c11.2 0 21.8-2.14 32-5.2v-33.58a80 80 0 1 1 0-146.44zM160 336a32 32 0 1 0 32-32 32 32 0 0 0-32 32zM240.41 0H48A48 48 0 0 0 0 48v416a48 48 0 0 0 48 48h192.41a79.15 79.15 0 0 1-14.79-32H48a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h177.62a79.15 79.15 0 0 1 14.79-32zM224 128a32 32 0 1 1-32-32 32 32 0 0 1 32 32V72.88A63.33 63.33 0 0 0 192 64a64 64 0 0 0 0 128 63.33 63.33 0 0 0 32-8.88z\"]\n};\nvar faSpellCheck = {\n prefix: 'fal',\n iconName: 'spell-check',\n icon: [576, 512, [], \"f891\", \"M272 256h88a72 72 0 0 0 30.63-137.16A72 72 0 0 0 336 0h-64a16 16 0 0 0-16 16v224a16 16 0 0 0 16 16zm16-224h48a40 40 0 0 1 0 80h-48zm0 112h72a40 40 0 0 1 0 80h-72zm-63.93 101.34l-89-234.67A16 16 0 0 0 120 0h-16a16 16 0 0 0-15.09 10.67l-89 234.67A8 8 0 0 0 7.47 256h17a8 8 0 0 0 7.53-5.34L60.54 176h102.92L192 250.66a8 8 0 0 0 7.55 5.34h17a8 8 0 0 0 7.52-10.66zM72.78 144L112 41.41 151.22 144zm499.5 135L561 267.72a12 12 0 0 0-17 0L354.8 460.41l-99-99a12 12 0 0 0-17 0l-11.31 11.31a12 12 0 0 0 0 17L346.3 508.48a12 12 0 0 0 17 0L572.28 296a12 12 0 0 0 0-17z\"]\n};\nvar faSpider = {\n prefix: 'fal',\n iconName: 'spider',\n icon: [576, 512, [], \"f717\", \"M574.7 352.5l-54.8-82.2c-5.9-8.9-15.9-14.2-26.6-14.2H379.5l90.1-30c6.8-2.3 12.6-6.7 16.5-12.6l56.5-84.8c2.5-3.7 1.5-8.6-2.2-11.1l-13.3-8.9c-3.7-2.5-8.6-1.5-11.1 2.2l-55 82.5c-1 1.5-2.4 2.6-4.1 3.1l-83.1 27.7L426.9 118c5.8-11.4 6.7-24.5 2.6-36.7L404.2 5.5c-1.4-4.2-5.9-6.5-10.1-5.1l-15.2 5.1c-4.2 1.4-6.5 5.9-5.1 10.1l25.3 75.8c1.4 4 1.1 8.4-.9 12.2l-36.5 73.1-4.1-20.5c-2.2-11-17.4-60.1-69.6-60.1s-67.4 49.2-69.6 60.1l-4.1 20.5-36.5-73.1c-1.9-3.8-2.3-8.2-.9-12.2l25.3-75.8c1.4-4.2-.9-8.7-5.1-10.1L181.9.4c-4.2-1.4-8.7.9-10.1 5.1l-25.3 75.8c-4.1 12.2-3.1 25.2 2.6 36.7l53.1 106.2-83.1-27.7c-1.7-.6-3.1-1.7-4.1-3.1l-55-82.5c-2.4-3.7-7.4-4.7-11.1-2.2l-13.3 8.9c-3.7 2.4-4.7 7.4-2.2 11.1l56.5 84.8c3.9 5.9 9.8 10.4 16.5 12.6l90.1 30H82.8c-10.7 0-20.7 5.3-26.6 14.2L1.3 352.5c-2.5 3.7-1.5 8.6 2.2 11.1l13.3 8.9c3.7 2.5 8.6 1.5 11.1-2.2l52.4-78.7c1.5-2.2 4-3.6 6.7-3.6h102.1l-69.8 111.7c-4.8 7.6-7.3 16.4-7.3 25.5V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-81.1c0-1.5.4-3 1.2-4.2l46.9-75.1c0 1-.2 2-.2 3 0 53.1 40.8 101.4 96 101.4s96-48.4 96-101.4c0-1-.1-2-.1-3l46.9 75.1c.8 1.3 1.2 2.7 1.2 4.2V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-78.8c0-9-2.5-17.8-7.3-25.5L386.9 288H489c2.7 0 5.2 1.3 6.7 3.6l52.4 78.7c2.4 3.7 7.4 4.7 11.1 2.2l13.3-8.9c3.6-2.5 4.6-7.5 2.2-11.1zM288 416c-39.5 0-64-36-64-69.4 0-36.8 3.7-73.7 10.9-109.7l14.9-74.4c.7-3.5 7.8-34.4 38.2-34.4s37.5 30.9 38.2 34.4l14.9 74.4c7.2 36.1 10.9 72.9 10.9 109.7 0 33.4-24.5 69.4-64 69.4z\"]\n};\nvar faSpiderBlackWidow = {\n prefix: 'fal',\n iconName: 'spider-black-widow',\n icon: [576, 512, [], \"f718\", \"M320 272h-64c-6.6 0-10.4 7.5-6.4 12.8L276 320l-26.4 35.2c-4 5.3-.2 12.8 6.4 12.8h64c6.6 0 10.4-7.5 6.4-12.8L300 320l26.4-35.2c4-5.3.2-12.8-6.4-12.8zm254.7 80.5l-54.8-82.2c-5.9-8.9-15.9-14.2-26.6-14.2H379.5l90.1-30c6.8-2.3 12.6-6.7 16.5-12.6l56.5-84.8c2.5-3.7 1.5-8.6-2.2-11.1l-13.3-8.9c-3.7-2.5-8.6-1.5-11.1 2.2l-55 82.5c-1 1.5-2.4 2.6-4.1 3.1l-83.1 27.7L426.9 118c5.8-11.4 6.7-24.5 2.6-36.7L404.2 5.5c-1.4-4.2-5.9-6.5-10.1-5.1l-15.2 5.1c-4.2 1.4-6.5 5.9-5.1 10.1l25.3 75.8c1.4 4 1.1 8.4-.9 12.2l-36.5 73.1-4.1-20.5c-2.2-11-17.4-60.1-69.6-60.1s-67.4 49.2-69.6 60.1l-4.1 20.5-36.5-73.1c-1.9-3.8-2.3-8.2-.9-12.2l25.3-75.8c1.4-4.2-.9-8.7-5.1-10.1L181.9.4c-4.2-1.4-8.7.9-10.1 5.1l-25.3 75.8c-4.1 12.2-3.1 25.2 2.6 36.7l53.1 106.2-83.1-27.7c-1.7-.6-3.1-1.7-4.1-3.1l-55-82.5c-2.4-3.7-7.4-4.7-11.1-2.2l-13.3 8.9c-3.7 2.4-4.7 7.4-2.2 11.1l56.5 84.8c3.9 5.9 9.8 10.4 16.5 12.6l90.1 30H82.8c-10.7 0-20.7 5.3-26.6 14.2L1.3 352.5c-2.5 3.7-1.5 8.6 2.2 11.1l13.3 8.9c3.7 2.5 8.6 1.5 11.1-2.2l52.4-78.7c1.5-2.2 4-3.6 6.7-3.6h102.1l-69.8 111.7c-4.8 7.6-7.3 16.4-7.3 25.5V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-81.1c0-1.5.4-3 1.2-4.2l46.9-75.1c0 1-.2 2-.2 3 0 53.1 40.8 101.4 96 101.4s96-48.4 96-101.4c0-1-.1-2-.1-3l46.9 75.1c.8 1.3 1.2 2.7 1.2 4.2V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-78.8c0-9-2.5-17.8-7.3-25.5L386.9 288H489c2.7 0 5.2 1.3 6.7 3.6l52.4 78.7c2.4 3.7 7.4 4.7 11.1 2.2l13.3-8.9c3.6-2.5 4.6-7.5 2.2-11.1zM288 416c-39.5 0-64-36-64-69.4 0-36.8 3.7-73.7 10.9-109.7l14.9-74.4c.7-3.5 7.8-34.4 38.2-34.4s37.5 30.9 38.2 34.4l14.9 74.4c7.2 36.1 10.9 72.9 10.9 109.7 0 33.4-24.5 69.4-64 69.4z\"]\n};\nvar faSpiderWeb = {\n prefix: 'fal',\n iconName: 'spider-web',\n icon: [576, 512, [], \"f719\", \"M571.62 245.02C509.87 179.63 464.12 98.93 439.4 11.65c-2.37-8.33-10.84-13.3-19.31-11.16-86.44 21.78-177.75 21.78-264.18 0-8.5-2.11-16.94 2.83-19.31 11.16C111.88 98.93 66.13 179.63 4.38 245.02c-5.84 6.16-5.84 15.81 0 21.97 61.75 65.39 107.5 146.09 132.22 233.37 2.37 8.31 10.81 13.23 19.31 11.16 86.44-21.78 177.75-21.78 264.18 0 1.31.33 2.62.48 3.91.48 7 0 13.41-4.61 15.41-11.64 24.72-87.28 70.47-167.98 132.22-233.37 5.83-6.16 5.83-15.81-.01-21.97zm-46.23-5.01h-69.84c-31.47-35.4-55.14-77.87-69.23-123.78l34.42-60.24c23.74 67.2 59.24 129.67 104.65 184.02zm-264.97 0h-98.7a366.476 366.476 0 0 0 48.97-87.02l49.73 87.02zm-23.85-106.28c34.09 5.26 68.77 5.26 102.86 0l-51.43 90-51.43-90zm23.85 138.28l-49.73 87.02a366.476 366.476 0 0 0-48.97-87.02h98.7zM288 288.28l51.43 90.01c-17.04-2.63-34.2-4.38-51.43-4.38s-34.39 1.75-51.43 4.38L288 288.28zm27.58-16.27h98.69a366.824 366.824 0 0 0-48.97 87.02l-49.72-87.02zm0-32l49.73-87.02c12.33 31.22 28.83 60.51 48.97 87.02h-98.7zm78.43-201.79L360.3 97.21c-47.38 11.59-97.21 11.59-144.59 0L182 38.22a573.332 573.332 0 0 0 212.01 0zM155.26 55.99l34.42 60.24c-14.1 45.92-37.77 88.38-69.23 123.78H50.61c45.41-54.35 80.91-116.82 104.65-184.02zM50.61 272.01h69.84c31.47 35.4 55.14 77.87 69.23 123.78l-34.42 60.24c-23.74-67.2-59.24-129.68-104.65-184.02zM182 473.79l33.71-58.99c47.38-11.59 97.21-11.59 144.59 0l33.7 58.99c-35-6.59-70.44-10.61-106-10.61s-71.01 4.02-106 10.61zm238.74-17.77l-34.42-60.24c14.1-45.92 37.77-88.38 69.23-123.78h69.84c-45.41 54.35-80.91 116.83-104.65 184.02z\"]\n};\nvar faSpinner = {\n prefix: 'fal',\n iconName: 'spinner',\n icon: [512, 512, [], \"f110\", \"M288 32c0 17.673-14.327 32-32 32s-32-14.327-32-32 14.327-32 32-32 32 14.327 32 32zm-32 416c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm256-192c0-17.673-14.327-32-32-32s-32 14.327-32 32 14.327 32 32 32 32-14.327 32-32zm-448 0c0-17.673-14.327-32-32-32S0 238.327 0 256s14.327 32 32 32 32-14.327 32-32zm33.608 126.392c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm316.784 0c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zM97.608 65.608c-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32s32-14.327 32-32c0-17.673-14.327-32-32-32z\"]\n};\nvar faSpinnerThird = {\n prefix: 'fal',\n iconName: 'spinner-third',\n icon: [512, 512, [], \"f3f4\", \"M460.115 373.846l-6.941-4.008c-5.546-3.202-7.564-10.177-4.661-15.886 32.971-64.838 31.167-142.731-5.415-205.954-36.504-63.356-103.118-103.876-175.8-107.701C260.952 39.963 256 34.676 256 28.321v-8.012c0-6.904 5.808-12.337 12.703-11.982 83.552 4.306 160.157 50.861 202.106 123.67 42.069 72.703 44.083 162.322 6.034 236.838-3.14 6.149-10.75 8.462-16.728 5.011z\"]\n};\nvar faSplotch = {\n prefix: 'fal',\n iconName: 'splotch',\n icon: [512, 512, [], \"f5bc\", \"M463.94 185.08l-62.91-21.31c-12.97-4.41-22.5-13.58-25.41-24.53l-15-56.14c-6.25-23.38-25.5-41.41-51.53-48.23-28.84-7.58-58.94.17-78.47 20.17l-43.25 44.28c-9.16 9.38-23.56 14.38-38.13 13.16l-67.44-5.22c-31.41-2.41-60.44 12.14-74.16 37.05-11.69 21.17-9.91 45.61 4.75 65.36l36.13 48.69c6.81 9.16 7.88 20.06 2.91 29.91l-26.66 52.92c-10.69 21.22-8.25 45.27 6.5 64.33 17.88 23.06 49.22 33.63 80.06 27.03l65.59-14.17c14.38-3.09 29.56-.11 40.56 8.08l50.94 37.92c13.88 10.33 31.03 15.64 48.41 15.64 11.81 0 23.72-2.45 34.72-7.47 23.44-10.67 38.5-30.98 40.31-54.34l4.41-57.45c.81-10.89 8.28-20.92 20-26.86l58.09-29.48c24.94-12.61 39.28-36.22 37.47-61.58-1.83-26.25-20.2-48.36-47.89-57.76zm-4.03 90.78l-58.09 29.48c-21.78 11.02-35.78 30.83-37.47 52.97l-4.41 57.44c-1.25 16.66-15.53 24.89-21.63 27.66-16.78 7.61-36.69 5.77-50.75-4.7l-50.94-37.92c-13.66-10.17-30.94-15.61-48.53-15.61-6 0-12 .62-17.91 1.91l-65.59 14.17c-22.94 4.98-40.16-5.19-48-15.34-4.19-5.41-10.19-16.55-3.25-30.34L80 302.67c10.47-20.75 8.31-44.45-5.78-63.41l-36.13-48.67c-9.72-13.08-5.69-24.92-2.44-30.83 7.72-13.97 25.25-21.88 43.69-20.61l67.41 5.22c24.34 1.84 47.78-6.61 63.5-22.7L253.5 77.4c11.38-11.64 30.06-16.19 47.47-11.59 14.75 3.86 25.5 13.41 28.72 25.53l15 56.14c5.72 21.33 22.94 38.73 46.09 46.59l62.84 21.31c15.53 5.27 25.38 16.36 26.31 29.69.89 12.48-6.58 23.98-20.02 30.79z\"]\n};\nvar faSprayCan = {\n prefix: 'fal',\n iconName: 'spray-can',\n icon: [512, 512, [], \"f5bd\", \"M224 128V32c0-17.67-14.33-32-32-32h-64c-17.67 0-32 14.33-32 32v96c-53.02 0-96 42.98-96 96v256c0 17.67 14.33 32 32 32h256c17.67 0 32-14.33 32-32V224c0-53.02-42.98-96-96-96zm-96-96h64v96h-64V32zm160 448H32V224c0-35.29 28.71-64 64-64h128c35.29 0 64 28.71 64 64v256zM160 240c-44.18 0-80 35.82-80 80s35.82 80 80 80 80-35.82 80-80-35.82-80-80-80zm0 128c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48zM488 80c13.25 0 24-10.75 24-24 0-13.26-10.75-24-24-24s-24 10.74-24 24c0 13.25 10.75 24 24 24zm0 48c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm-96-96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm0 96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm-96-96c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm192 192c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faSprinkler = {\n prefix: 'fal',\n iconName: 'sprinkler',\n icon: [512, 512, [], \"e035\", \"M16,0A16,16,0,1,0,32,16,16,16,0,0,0,16,0Zm0,224a16,16,0,1,0,16,16A16,16,0,0,0,16,224Zm0-112a16,16,0,1,0,16,16A16,16,0,0,0,16,112Zm128,32a16,16,0,1,0-16-16A16,16,0,0,0,144,144ZM496,32a16,16,0,1,0-16-16A16,16,0,0,0,496,32ZM368,144a16,16,0,1,0-16-16A16,16,0,0,0,368,144Zm64,16a16,16,0,1,0,16,16A16,16,0,0,0,432,160Zm0-96a16,16,0,1,0,16,16A16,16,0,0,0,432,64Zm64,160a16,16,0,1,0,16,16A16,16,0,0,0,496,224ZM80,160a16,16,0,1,0,16,16A16,16,0,0,0,80,160Zm416-48a16,16,0,1,0,16,16A16,16,0,0,0,496,112ZM398.19,256H272V72a8,8,0,0,0-8-8H248a8,8,0,0,0-8,8V256H113.81a17.77,17.77,0,0,0-14.22,28.44L192,387.56V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V374.3L144.93,288H367.07L288,374.3V504a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V387.56l92.41-103.12A17.77,17.77,0,0,0,398.19,256ZM80,64A16,16,0,1,0,96,80,16,16,0,0,0,80,64Z\"]\n};\nvar faSquare = {\n prefix: 'fal',\n iconName: 'square',\n icon: [448, 512, [], \"f0c8\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352z\"]\n};\nvar faSquareFull = {\n prefix: 'fal',\n iconName: 'square-full',\n icon: [512, 512, [], \"f45c\", \"M480 32v448H32V32h448m32-32H0v512h512V0z\"]\n};\nvar faSquareRoot = {\n prefix: 'fal',\n iconName: 'square-root',\n icon: [512, 512, [], \"f697\", \"M160.13 477.29c-9.51-3.62-16.88-11.43-21.15-20.66L58.06 281.3c-2.62-5.67-8.29-9.3-14.53-9.3H8c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h35.53c18.62 0 35.75 10.94 43.59 27.88l81.31 176.2c2.31 5.16 11.12 4.39 12.66-1.09l101.1-375.46C287.78 46.61 306.84 32 328.53 32H504c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H328.53c-7.22 0-13.59 4.86-15.44 11.83L211.97 451.31c-5.8 21.47-29.03 34.68-51.84 25.98z\"]\n};\nvar faSquareRootAlt = {\n prefix: 'fal',\n iconName: 'square-root-alt',\n icon: [512, 512, [], \"f698\", \"M509.16 248.97L454.12 304l55.03 55.03c3.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-55.03-55.03-55.03 55.03c-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.31L408.88 304l-55.03-55.03c-3.12-3.12-3.12-8.19 0-11.31l11.31-11.31c3.12-3.12 8.19-3.12 11.31 0l55.03 55.03 55.03-55.03c3.12-3.12 8.19-3.12 11.31 0l11.31 11.31c3.13 3.12 3.13 8.18.01 11.31zM211.97 451.31L313.09 75.83c1.84-6.97 8.22-11.83 15.44-11.83H504c4.42 0 8-3.58 8-8V40c0-4.42-3.58-8-8-8H328.53c-21.69 0-40.75 14.61-46.34 35.53l-101.1 375.45c-1.53 5.48-10.34 6.25-12.66 1.09l-81.31-176.2C79.28 250.94 62.16 240 43.53 240H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h35.53c6.24 0 11.92 3.63 14.53 9.3l80.92 175.33c4.26 9.24 11.64 17.04 21.15 20.66 22.81 8.7 46.04-4.51 51.84-25.98z\"]\n};\nvar faSquirrel = {\n prefix: 'fal',\n iconName: 'squirrel',\n icon: [512, 512, [], \"f71a\", \"M400 160c8.84 0 16-7.16 16-16s-7.16-16-16-16-16 7.16-16 16 7.16 16 16 16zm63.74 258.19C473.95 401.69 480 384.36 480 368c0-34.12-28.88-70.66-76.78-78.47l9.91-49.53h50.72c28.81 0 48.16-22.05 48.16-54.86 0-59.81-42.62-111.17-96.16-119.84V32h-16c-50.13 0-84.09 41.08-105.37 80.06C270.98 51.21 207.09 0 144 0 64.59 0 0 64.59 0 144c0 71.06 51.75 130.27 119.53 141.92l-13.72 28.41c-6.5 17.19-9.81 34.58-9.81 51.69C96 446.52 161.47 512 241.97 512H480c17.68 0 32-14.33 32-32 0-29.83-20.6-54.74-48.26-61.81zM241.97 480C179.12 480 128 428.86 128 366.02c0-13.22 2.59-26.8 7.19-39.05L169.5 256h-21.58C91 256 40.21 215.21 32.95 158.76 24.17 90.46 77.4 32 144 32c62.22 0 128 65.8 128 128l-59.7 146.46c-1.7 4.08.23 8.76 4.31 10.46l14.79 6.16c4.08 1.7 8.76-.23 10.46-4.31l76.46-183.61c11.44-22.88 33.97-59.09 65.53-68.73V96h16c42.69 0 80.16 41.66 80.16 89.14 0 8.53-2.09 22.86-16.16 22.86h-76.97l-22.41 112H384c39.53 0 64 24.92 64 48 0 14.86-8.43 32.39-22.26 48H392c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56c17.66 0 32 14.36 32 32H241.97z\"]\n};\nvar faStaff = {\n prefix: 'fal',\n iconName: 'staff',\n icon: [512, 512, [], \"f71b\", \"M432 0h-76.23c-30.3 0-58 17.12-71.55 44.22l-16 32c-3.95 7.9-.75 17.51 7.15 21.46l57.25 28.63c2.3 1.15 4.74 1.69 7.14 1.69 5.87 0 11.52-3.24 14.32-8.85L365.67 96H416v75.8l-157.29 44.94a176.122 176.122 0 0 0-76.11 44.78L156.12 288H112c-8.84 0-16 7.16-16 16v44.12L7.03 437.1c-9.37 9.37-9.37 24.57 0 33.94l33.93 33.93c4.69 4.69 10.83 7.03 16.97 7.03s12.28-2.34 16.97-7.03l175.55-175.55a80.111 80.111 0 0 1 34.62-20.37l84.82-24.24 32.25 18.62c2.52 1.46 5.27 2.15 7.98 2.15 5.53 0 10.91-2.87 13.87-8l19.51-33.8 10.46-2.99c34.34-9.81 58.02-41.21 58.02-76.92V80C512 35.82 476.18 0 432 0zm48 183.86c0 21.32-14.32 40.3-34.81 46.15L434.73 233l-12.45 3.56-6.47 11.21-11.51 19.94-18.4-10.61-11.75-6.78-13.04 3.73-84.82 24.24a112.273 112.273 0 0 0-48.46 28.52L57.93 476.69l-22.62-22.62 83.31-83.32 9.37-9.37V320h41.38l9.37-9.37 26.48-26.48a144.372 144.372 0 0 1 62.27-36.64l157.29-44.94 23.21-6.63V64H345.88l-8.84 17.69-4.42 8.85L304 76.22l8.84-17.69C321.02 42.17 337.47 32 355.77 32H432c26.47 0 48 21.53 48 48v103.86z\"]\n};\nvar faStamp = {\n prefix: 'fal',\n iconName: 'stamp',\n icon: [512, 512, [], \"f5bf\", \"M416 256h-66.56c-16.26 0-29.44-13.18-29.44-29.44v-9.46c0-27.37 8.88-53.42 21.46-77.73 9.11-17.61 12.9-38.38 9.05-60.42-6.77-38.78-38.47-70.7-77.26-77.45C267.41.49 261.65 0 256 0c-53.02 0-96 42.98-96 96 0 14.16 3.12 27.54 8.68 39.57C182.02 164.43 192 194.71 192 226.5v.06c0 16.26-13.18 29.44-29.44 29.44H96c-53.02 0-96 42.98-96 96v32c0 17.67 14.33 32 32 32v64c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-64c17.67 0 32-14.33 32-32v-32c0-53.02-42.98-96-96-96zm32 224H64v-64h384v64zm32-96H32v-32c0-35.29 28.71-64 64-64h66.56c33.88 0 61.44-27.56 61.44-61.5 0-32.42-8.35-65.58-26.27-104.35-3.8-8.23-5.73-17.03-5.73-26.15 0-35.29 28.71-64 64-64 3.88 0 7.83.35 11.76 1.03 25.24 4.39 46.79 26.02 51.22 51.42 2.45 14.04.39 27.95-5.95 40.21C296.19 157.23 288 187.47 288 217.1v9.46c0 33.88 27.56 61.44 61.44 61.44H416c35.29 0 64 28.71 64 64v32z\"]\n};\nvar faStar = {\n prefix: 'fal',\n iconName: 'star',\n icon: [576, 512, [], \"f005\", \"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.6zM405.8 317.9l27.8 162L288 403.5 142.5 480l27.8-162L52.5 203.1l162.7-23.6L288 32l72.8 147.5 162.7 23.6-117.7 114.8z\"]\n};\nvar faStarAndCrescent = {\n prefix: 'fal',\n iconName: 'star-and-crescent',\n icon: [512, 512, [], \"f699\", \"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.06zM32 256c0-116.55 89.46-212.59 203.33-223.05C149.02 70.22 88.47 156.17 88.47 256c0 99.83 60.55 185.78 146.87 223.05C121.47 468.59 32 372.55 32 256zm471.46-42.14l-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.99zm-72.08 47.94l-12.05 11.74 2.84 16.58 5.5 32.05-28.78-15.13-14.89-7.83-14.89 7.83-28.78 15.13 5.5-32.05 2.84-16.58-12.05-11.74-23.28-22.7 32.18-4.68 16.65-2.42 7.45-15.09L384 187.76l14.39 29.16 7.45 15.09 16.65 2.42 32.18 4.68-23.29 22.69z\"]\n};\nvar faStarChristmas = {\n prefix: 'fal',\n iconName: 'star-christmas',\n icon: [512, 512, [], \"f7d4\", \"M493.7 232.4l-140.2-35 66.9-83.3c5.2-6.5 4.7-15.5-1.1-21.3-5.9-5.8-14.8-6.3-21.3-1.1l-83.4 66.7-35-140c-6.1-24.4-41-24.4-47.2 0l-35 140.2-83.3-67c-6.5-5.2-15.5-4.8-21.3 1.1-5.8 5.8-6.3 14.8-1.1 21.4l66.7 83.4-140 35C7.5 235.2 0 244.7 0 256c0 10.2 6.5 20.7 18.4 23.6l140.2 35-66.9 83.3c-5.2 6.5-4.7 15.5 1.1 21.3 5.6 5.5 14.5 6.5 21.3 1.1l83.4-66.7 35 140c3 11.9 13.3 18.4 23.6 18.4 4.5 0 19.4-2.1 23.6-18.4l35-140.2 83.3 67c6.9 5.5 15.8 4.4 21.3-1.1 5.8-5.8 6.3-14.8 1.1-21.3l-66.7-83.4 139.9-35c11.7-2.9 18.5-13.1 18.5-23.6-.1-10.3-6.6-20.6-18.4-23.6zM296 296l-40 160-40-160-160-40 160-40 40-160 40 160 160 40-160 40z\"]\n};\nvar faStarExclamation = {\n prefix: 'fal',\n iconName: 'star-exclamation',\n icon: [576, 512, [], \"f2f3\", \"M260.2 158.3c-.2-3.4 2.5-6.3 6-6.3h43.6c3.4 0 6.2 2.9 6 6.3l-7.3 132c-.2 3.2-2.8 5.7-6 5.7h-28.9c-3.2 0-5.8-2.5-6-5.7l-7.4-132zM288 320c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm257.9-94L440.1 329l25 145.5c4.5 26.2-23.1 46-46.4 33.7L288 439.6l-130.7 68.7c-23.4 12.3-50.9-7.6-46.4-33.7l25-145.5L30.1 226c-19-18.5-8.5-50.8 17.7-54.6L194 150.2l65.3-132.4c11.8-23.8 45.7-23.7 57.4 0L382 150.2l146.1 21.2c26.2 3.8 36.7 36.1 17.8 54.6zm-22.4-22.9l-162.7-23.7L288 32l-72.8 147.4-162.7 23.7 117.7 114.8-27.8 162L288 403.4l145.5 76.5-27.8-162 117.8-114.8z\"]\n};\nvar faStarHalf = {\n prefix: 'fal',\n iconName: 'star-half',\n icon: [576, 512, [], \"f089\", \"M288 403.4l-145.5 76.5 27.8-162L52.5 203.1l162.7-23.6L288 32V0c-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-36.2z\"]\n};\nvar faStarHalfAlt = {\n prefix: 'fal',\n iconName: 'star-half-alt',\n icon: [536, 512, [], \"f5c0\", \"M417.28 158.22l-55.12-8.03-24.64-49.84-28.74 14.16 32.1 64.94 71.78 10.44 4.62-31.67zm-12.87 267.09l9.44 54.62-49-25.7-14.9 28.31 49.02 25.72c4.7 2.45 9.68 3.7 14.79 3.7 9.35 0 18.6-4.33 24.71-11.56 4.87-5.72 7.44-12.72 7.44-20.22l-9.89-60.28-31.61 5.41zM275.3 407.58c-4.5-2.35-9.91-2.79-14.77-.25l-138.38 72.62 27.9-162.03L32.07 203.14l163.04-23.7L267.91 32c.03 0 .05-.02.08-.02V32l20.46 41.39 28.74-14.16-20.46-41.41C291.28 6.83 280.24 0 267.91 0c-12.45 0-23.15 6.66-28.68 17.81l-65.41 132.38L27.4 171.48c-12.1 1.78-22 10.12-25.82 21.81-3.79 11.67-.67 24.25 8.12 32.78l105.9 103-25.06 145.5c-1.6 9.45.88 18.64 6.97 25.84 6.12 7.25 15.34 11.58 24.67 11.58 5.1 0 10.08-1.25 14.86-3.75l130.95-68.7 49.32 25.87 14.9-28.31-56.77-29.78-.14.26zM534.37 193.3c-3.77-11.67-13.68-20.03-25.85-21.81l-54.95-8-4.63 31.66 54.95 8.02-39.67 38.59 22.39 22.91 39.61-38.53c6.31-6.08 9.79-14.17 9.79-22.8-.01-3.42-.57-6.82-1.64-10.04zM385.92 317.92l12.29 71.36 31.59-5.41-9.44-54.8 39.89-38.8-22.39-22.91-51.94 50.56z\"]\n};\nvar faStarOfDavid = {\n prefix: 'fal',\n iconName: 'star-of-david',\n icon: [464, 512, [], \"f69a\", \"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 256zm21.21-112c2.1 0 3.63.83 4.56 2.46 1.08 1.89.32 3.16-.04 3.78l-44.34 74.48L339.01 144h87.88zm-58.45 112l-66.67 112H162.23L95.56 256l66.67-112h139.54l66.67 112zM227.49 34.38c.94-1.58 2.46-2.38 4.51-2.38s3.57.8 4.51 2.38L282.72 112H181.28l46.21-77.62zM32.6 150.24c-.37-.61-1.12-1.88-.05-3.78.93-1.64 2.46-2.46 4.56-2.46h87.88l-48.05 80.72-44.34-74.48zM37.11 368c-2.1 0-3.63-.83-4.56-2.46-1.08-1.89-.32-3.17.04-3.78l44.34-74.48L124.99 368H37.11zm199.4 109.61c-.94 1.58-2.46 2.39-4.51 2.39s-3.57-.8-4.51-2.38L181.28 400h101.44l-46.21 77.61zm194.94-112.07c-.93 1.63-2.46 2.46-4.56 2.46h-87.88l48.05-80.72 44.34 74.48c.36.61 1.12 1.88.05 3.78z\"]\n};\nvar faStarOfLife = {\n prefix: 'fal',\n iconName: 'star-of-life',\n icon: [480, 512, [], \"f621\", \"M271.74 32v168.58l47.6-27.71 97.18-56.57 31.74 55.43-97.18 56.57-47.61 27.7 47.6 27.71 97.18 56.57-31.74 55.43-97.18-56.57-47.6-27.71V480h-63.47V311.42l-47.6 27.71-97.18 56.57-31.74-55.43 97.18-56.57 47.6-27.71-47.6-27.71-97.18-56.57 31.74-55.43 97.18 56.57 47.6 27.71V32h63.48m0-32h-63.47c-17.53 0-31.74 14.33-31.74 32v113.15L79.35 88.57c-5-2.91-10.46-4.29-15.84-4.29-10.97 0-21.63 5.74-27.51 16.01L4.26 155.71c-8.76 15.3-3.56 34.88 11.62 43.71L113.06 256l-97.18 56.57C.7 321.41-4.5 340.98 4.26 356.28L36 411.71a31.68 31.68 0 0 0 27.52 16.01c5.38 0 10.84-1.38 15.84-4.29l97.18-56.57V480c0 17.67 14.21 32 31.74 32h63.47c17.53 0 31.74-14.33 31.74-32V366.85l97.18 56.57c5 2.91 10.45 4.29 15.84 4.29a31.68 31.68 0 0 0 27.52-16.01l31.74-55.43c8.76-15.31 3.56-34.88-11.62-43.71L366.94 256l97.18-56.57c15.18-8.84 20.38-28.41 11.62-43.71L444 100.29a31.677 31.677 0 0 0-27.51-16.01c-5.38 0-10.84 1.38-15.84 4.29l-97.18 56.57V32c0-17.67-14.21-32-31.73-32z\"]\n};\nvar faStarShooting = {\n prefix: 'fal',\n iconName: 'star-shooting',\n icon: [512, 512, [], \"e036\", \"M364.294,267.28691,259.4951,251.99064l-46.90716-95.19941a22.9468,22.9468,0,0,0-41.18829,0l-46.90716,95.19941L19.69358,267.28691C.89634,269.98993-6.71318,293.19215,6.99021,306.4885l75.90772,73.99711L64.89758,485.07527A23.05232,23.05232,0,0,0,87.525,512a22.46219,22.46219,0,0,0,10.67013-2.72255l93.7987-49.38869,93.79869,49.38869A22.89785,22.89785,0,0,0,319.09,485.07527L301.199,380.48561l75.89209-73.99711C390.70077,293.19215,383.09125,269.98993,364.294,267.28691ZM278.85876,357.5744l-12.03734,11.73587,2.836,16.56966,14.80107,86.53177-77.55424-40.83629-14.91044-7.85126-14.91045,7.85126L99.5506,472.4l14.885-86.48686,2.85357-16.58919-12.053-11.7515-62.843-61.26127,86.72238-12.65771,16.64681-2.42959,7.43569-15.09121L191.9938,187.3955l38.79567,78.73716,7.43569,15.09121,16.64876,2.42959,86.80442,12.66943ZM498.34544,194.33469a8.00345,8.00345,0,0,0-11.31467,0l-68.68884,68.68676a7.99644,7.99644,0,0,0,0,11.31206l11.31077,11.31206a8.00347,8.00347,0,0,0,11.31467,0L509.6562,216.9588a7.99643,7.99643,0,0,0,0-11.31206ZM314.34187,186.337l11.31077,11.31011a7.99994,7.99994,0,0,0,11.31467,0L509.6562,24.96631a7.99643,7.99643,0,0,0,0-11.31206L498.34544,2.34219a8.00347,8.00347,0,0,0-11.31467,0L314.34187,175.02294A7.9988,7.9988,0,0,0,314.34187,186.337ZM237.649,93.65308a8.00347,8.00347,0,0,0,11.31467,0l68.68883-68.68677a7.99644,7.99644,0,0,0,0-11.31206L306.34172,2.34219a8.00348,8.00348,0,0,0-11.31468,0L226.33821,71.029a7.99644,7.99644,0,0,0,0,11.31206Z\"]\n};\nvar faStarfighter = {\n prefix: 'fal',\n iconName: 'starfighter',\n icon: [640, 512, [], \"e037\", \"M288,256v48a16.00079,16.00079,0,0,0,16,16h32a16.00079,16.00079,0,0,0,16-16V256a32,32,0,0,0-64,0ZM624,128V112a16,16,0,0,0-32,0v16H576v32h16V352H512V320a47.99987,47.99987,0,0,0-48-48H432a47.46463,47.46463,0,0,0-22.45508,5.81836L369.9375,27.01562A31.842,31.842,0,0,0,338.3125,0h-36.625a31.84226,31.84226,0,0,0-31.625,27L230.61719,277.90625A47.46045,47.46045,0,0,0,208,272H176a47.99987,47.99987,0,0,0-48,48v32H48V160H64V128H48V112a16,16,0,0,0-32,0v16H0v32H16V432a16,16,0,0,0,32,0v-8.88867l92.72266,41.21094A47.66212,47.66212,0,0,0,168,479.19336V496a16.00079,16.00079,0,0,0,16,16h16a16.00079,16.00079,0,0,0,16-16V479.19336a47.278,47.278,0,0,0,18.47656-7.83789A31.68121,31.68121,0,0,0,256,480H384a31.686,31.686,0,0,0,21.52539-8.64453A47.26957,47.26957,0,0,0,424,479.19336V496a16.00079,16.00079,0,0,0,16,16h16a16.00079,16.00079,0,0,0,16-16V479.19336a47.66212,47.66212,0,0,0,27.27734-14.87109L592,423.11133V432a16,16,0,0,0,32,0V160h16V128ZM128,423.64844,64,395.20312V384h64ZM224,432a16.01833,16.01833,0,0,1-16,16H176a16.01833,16.01833,0,0,1-16-16V320a16.01833,16.01833,0,0,1,16-16h32a16.01833,16.01833,0,0,1,16,16Zm160,0v16H256l-.02344-15.86914c0-.04688.02344-.084.02344-.13086V321.3125L301.6875,32h36.625L384,320Zm96,0a16.01833,16.01833,0,0,1-16,16H432a16.01833,16.01833,0,0,1-16-16V320a16.01833,16.01833,0,0,1,16-16h32a16.01833,16.01833,0,0,1,16,16Zm96-36.79688-64,28.44532V384h64Z\"]\n};\nvar faStarfighterAlt = {\n prefix: 'fal',\n iconName: 'starfighter-alt',\n icon: [576, 512, [], \"e038\", \"M568,32H552a8.00039,8.00039,0,0,0-8,8V191.01367l-84.65234-21.16211C427.70312,107.17773,362.87305,64,288,64S148.29688,107.17773,116.65234,169.85156L32,191.01367V40a8.00039,8.00039,0,0,0-8-8H8a8.00039,8.00039,0,0,0-8,8V472a8.00039,8.00039,0,0,0,8,8H24a8.00039,8.00039,0,0,0,8-8V320.98438l84.65234,21.16406C148.29688,404.82227,213.127,448,288,448s139.70312-43.17773,171.34766-105.85156L544,320.98438V472a8.00039,8.00039,0,0,0,8,8h16a8.00039,8.00039,0,0,0,8-8V40A8.00039,8.00039,0,0,0,568,32ZM102.75391,305.6875,32,288V224l70.75391-17.6875a186.14869,186.14869,0,0,0,0,99.375ZM288,416A160,160,0,1,1,448,256,160.00042,160.00042,0,0,1,288,416ZM544,288l-70.75391,17.6875a186.14869,186.14869,0,0,0,0-99.375L544,224ZM288,128A128,128,0,1,0,416,256,127.99883,127.99883,0,0,0,288,128Zm12,33.21094a94.89277,94.89277,0,0,1,46.57617,19.22851l-22.62695,22.627A63.59685,63.59685,0,0,0,300,193.21094Zm-24,0v32a63.59685,63.59685,0,0,0-23.94922,9.85547l-22.62695-22.627A94.89277,94.89277,0,0,1,276,161.21094Zm-63.56055,36.21289,22.627,22.62695A63.59685,63.59685,0,0,0,225.21094,244h-32A94.89277,94.89277,0,0,1,212.43945,197.42383ZM193.21094,268h32a63.59685,63.59685,0,0,0,9.85547,23.94922l-22.627,22.62695A94.89277,94.89277,0,0,1,193.21094,268ZM276,350.78906a94.89277,94.89277,0,0,1-46.57617-19.22851l22.62695-22.627A63.59685,63.59685,0,0,0,276,318.78906ZM256,256a32,32,0,1,1,32,32A31.99908,31.99908,0,0,1,256,256Zm44,94.78906v-32a63.59685,63.59685,0,0,0,23.94922-9.85547l22.62695,22.627A94.89277,94.89277,0,0,1,300,350.78906Zm63.56055-36.21289-22.627-22.62695A63.59685,63.59685,0,0,0,350.78906,268h32A94.89277,94.89277,0,0,1,363.56055,314.57617ZM350.78906,244a63.59685,63.59685,0,0,0-9.85547-23.94922l22.627-22.62695A94.89277,94.89277,0,0,1,382.78906,244Z\"]\n};\nvar faStars = {\n prefix: 'fal',\n iconName: 'stars',\n icon: [512, 512, [], \"f762\", \"M509.05273,219.03853l-39.71289-16.56934-16.55859-39.73866a5.32506,5.32506,0,0,0-9.541,0l-16.56054,39.73866-39.71094,16.56934a5.33947,5.33947,0,0,0,0,9.54721L426.67969,245.157l16.56054,39.73671a5.3235,5.3235,0,0,0,9.541,0L469.33984,245.157l39.71289-16.57129a5.33947,5.33947,0,0,0,0-9.54721ZM364.30049,267.08,259.38106,251.77833,212.46892,156.549a22.735,22.735,0,0,0-20.59634-12.7878A22.40581,22.40581,0,0,0,171.37,156.549l-46.91214,95.22933L19.6322,267.08C.84859,269.76557-6.65235,293.06155,6.94311,306.349l75.91578,74.05684L64.85663,485.01914A23.00313,23.00313,0,0,0,87.45322,512a22.60025,22.60025,0,0,0,10.68884-2.6856l93.82428-49.37123,93.82429,49.37123A23.38328,23.38328,0,0,0,296.38571,512a23.09547,23.09547,0,0,0,22.69035-26.88718l-17.9085-104.61329,75.91578-74.05685C390.6788,293.06155,383.0841,269.87487,364.30049,267.08ZM266.78824,369.28873l17.596,103.14558-92.51162-48.7779L99.361,472.43431l17.596-103.14558L42.26,296.1531l103.388-15.08305,46.31831-93.83969,46.19331,93.83969L341.57888,296.1531ZM423.1875,81.33009,374.59375,57.01744,350.3125,8.17327c-5.40625-10.89769-23.21875-10.89769-28.625,0L297.40625,56.81419,248.8125,81.12683A16.04689,16.04689,0,0,0,240,95.433a16.46336,16.46336,0,0,0,8.8125,14.50941L297.40625,134.255,321.6875,182.896A16.07056,16.07056,0,0,0,336,191.79235a15.87374,15.87374,0,0,0,14.3125-8.8964L374.59375,134.255l48.59375-24.31264a16.0185,16.0185,0,0,0,0-28.6123ZM355.5,107.94109a16.19316,16.19316,0,0,0-7.1875,7.2078L336,139.86805l-12.3125-24.71916a16.75685,16.75685,0,0,0-7.1875-7.2078L291.8125,95.54243,316.5,83.12813a16.11584,16.11584,0,0,0,7.1875-7.2078L336,51.20117l12.3125,24.71916a16.59161,16.59161,0,0,0,7.1875,7.2078l24.6875,12.4143Z\"]\n};\nvar faStarship = {\n prefix: 'fal',\n iconName: 'starship',\n icon: [640, 512, [], \"e039\", \"M448,64c-83.91992,0-155.07812,53.92969-181.18945,128.95312L214.916,197.76367,158.959,160h47.44727a48,48,0,0,0,0-96H32A32.03165,32.03165,0,0,0,0,96v32a32.03165,32.03165,0,0,0,32,32h69.76953l62.86328,42.42383-22.22656,2.06055C115.9375,206.9375,96,229.07812,96,256s19.9375,49.0625,46.40625,51.51562l22.22656,2.06055L101.76953,352H32A32.03165,32.03165,0,0,0,0,384v32a32.03165,32.03165,0,0,0,32,32H206.40625a48,48,0,0,0,0-96H158.959l55.957-37.76367,51.89453,4.81055C292.92188,394.07031,364.08008,448,448,448c106.03906,0,192-85.96094,192-192S554.03906,64,448,64ZM32,128V96H206.40625a16,16,0,0,1,0,32ZM206.40625,384a16,16,0,0,1,0,32H32V384Zm52.18945-97.86133-113.252-10.498C135.46875,274.73438,128,266.28125,128,256s7.46875-18.73438,17.34375-19.64062l113.252-10.498A192.3155,192.3155,0,0,0,256,256,192.3155,192.3155,0,0,0,258.5957,286.13867ZM448,416A160,160,0,1,1,608,256,160.00042,160.00042,0,0,1,448,416Zm0-224a64,64,0,1,0,64,64A63.99942,63.99942,0,0,0,448,192Zm0,96a32,32,0,1,1,32-32A32.00033,32.00033,0,0,1,448,288Z\"]\n};\nvar faStarshipFreighter = {\n prefix: 'fal',\n iconName: 'starship-freighter',\n icon: [576, 512, [], \"e03a\", \"M79.99855,240a16,16,0,1,0,16,16A15.99954,15.99954,0,0,0,79.99855,240Zm31.998-64a16,16,0,1,0-15.998-16A16.00079,16.00079,0,0,0,111.99656,176Zm0,160a16,16,0,1,0,16,16A15.99912,15.99912,0,0,0,111.99656,336ZM560,240a16.00078,16.00078,0,0,0,16-16V166.39844A31.99434,31.99434,0,0,0,554.95315,136.332L311.32644,47.5625A257.78772,257.78772,0,0,0,224.434,32c-29.15232,0-58.11713,5.41406-85.21476,17.15039C-4.09512,111.22266.01425,256,.01425,256S-4.34121,400.666,139.21919,462.84961C166.31291,474.584,195.28554,480,224.434,480c27.60544,0,55.3183-5.01367,81.79093-13.96094l16.33006,22.67969A55.93881,55.93881,0,0,0,367.99044,512h55.998a55.8466,55.8466,0,0,0,33.33981-100.76172L554.95315,375.668A32.00422,32.00422,0,0,0,576,345.59961V288a15.99954,15.99954,0,0,0-16-16H447.98841V256.23242c0-.07812.01172-.1543.01172-.23242,0-.05664-.01172-.10938-.01172-.166V240ZM224.434,448c-25.87107,0-50.26167-4.88281-72.496-14.51367C30.897,381.05664,31.90094,261.85742,32.00055,256.96289l.01953-.9375-.01562-.7793c-.09375-5.05468-.90625-124.39257,119.93347-176.73047,22.1699-9.60546,46.49019-14.47851,72.27336-14.50585.26367,0,.51367.03906.77735.041a214.74426,214.74426,0,0,1,30.32418,2.73438c90.91983,15.01172,160.56039,93.90039,160.67562,188.98242v.35742c-.02734,43.52344-15.293,83.15039-39.84761,115.35547L314.68,286.12109A94.74314,94.74314,0,0,0,319.99245,256a95.998,95.998,0,1,0-95.998,96c.03906,0,.07812-.01172.11718-.01172l62.05853,86.19531C265.60774,444.17578,244.92807,448,224.434,448Zm63.55853-192a63.998,63.998,0,1,1-63.998-64A64.00022,64.00022,0,0,1,287.99248,256Zm135.996,224h-55.998a23.97442,23.97442,0,0,1-19.46873-9.98438L258.69954,345.25977a95.83327,95.83327,0,0,0,38.78512-28.24415L380.27168,432h43.71675a24,24,0,0,1,0,48ZM544,304v41.60156L396.26581,399.42969l-.15821-.22071A223.08951,223.08951,0,0,0,442.70131,304ZM442.27162,208a222.53941,222.53941,0,0,0-46.68941-95.67969L544,166.39844V208Z\"]\n};\nvar faSteak = {\n prefix: 'fal',\n iconName: 'steak',\n icon: [576, 512, [], \"f824\", \"M466.81 118.83C435.3 82.94 401.42 64 368.85 64c-41.87 0-78.51 32.73-93.33 83.38l-.63 2.19c-17.44 60.74-69.45 110.34-154.6 147.41-57.29 24.9-56.54 60.8-53.57 75.07 10.7 51.39 91.56 74.8 162.16 74.8 97.65 0 188.59-39.8 249.5-109.2 48.92-55.73 43.62-155.94-11.57-218.82zm-12.48 197.71c-64.24 73.19-152.69 98.31-225.45 98.31-105.46 0-177.94-52.81-95.81-88.57 146.41-63.75 166.92-148.6 173.16-170C317 119.66 341.54 96 368.85 96c22.76 0 49 15.62 73.91 44 44.37 50.49 49.78 133 11.57 176.54zM384 191.92a32 32 0 1 0 32 32 32 32 0 0 0-32-32zM514.92 76.65C467.92 23.11 416.28 0 368.85 0 298.27 0 237 51.17 214.1 129.39 165 269.32 1.37 212.32 0 351.63-1.13 467.49 126.32 512 239.31 512q8.41 0 16.69-.32c87.78-3.41 187.32-37.1 270.49-131.85C596.78 299.75 591.6 164 514.92 76.65zm-12.47 282.07C418.8 454 321.59 477.11 254.75 479.7q-7.65.3-15.44.3c-77 0-143.78-21.08-178.76-56.4C41.06 403.92 31.73 380.48 32 352c.48-49.57 23.49-61.67 75.5-84.31 48.37-21.11 108.57-47.32 136.79-127.69l.28-.8.24-.82C263.72 73.75 312.41 32 368.85 32c42.06 0 84.26 22.74 122 65.76 66.36 75.58 71.55 192.65 11.6 260.96z\"]\n};\nvar faSteeringWheel = {\n prefix: 'fal',\n iconName: 'steering-wheel',\n icon: [496, 512, [], \"f622\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 32c119.1 0 215.99 96.89 216 215.98H358.38C350.94 219.52 318.64 192 280 192h-64c-38.64 0-70.94 27.52-78.38 63.98H32C32.01 136.89 128.9 40 248 40zm-5.66 299.7l-67.5-67.48c-4.62-4.62-5.94-11.6-3.55-17.68 7-17.86 24.41-30.54 44.71-30.54h64c20.3 0 37.71 12.68 44.71 30.54 2.39 6.09 1.07 13.06-3.55 17.68l-67.5 67.48a7.997 7.997 0 0 1-11.32 0zm-207.7-51.72h110.72L232 374.61v96.58c-100.94-7.46-182.6-84.45-197.36-183.21zM264 471.19v-96.58l86.64-86.63h110.72C446.6 386.74 364.94 463.73 264 471.19z\"]\n};\nvar faStepBackward = {\n prefix: 'fal',\n iconName: 'step-backward',\n icon: [448, 512, [], \"f048\", \"M76 479h8c6.6 0 12-5.4 12-12V276.7c1.1 1.2 2.2 2.4 3.5 3.4l232 191.4c20.6 17.2 52.5 2.8 52.5-24.6V63c0-27.4-31.9-41.8-52.5-24.6L99.5 231c-1.3 1.1-2.4 2.2-3.5 3.4V43c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v424c0 6.6 5.4 12 12 12zm40.5-223.4L351.8 63.2l.1-.1.1-.1v384l-.1-.1-.2-.1-235.2-191.2z\"]\n};\nvar faStepForward = {\n prefix: 'fal',\n iconName: 'step-forward',\n icon: [448, 512, [], \"f051\", \"M372 31h-8c-6.6 0-12 5.4-12 12v190.3c-1.1-1.2-2.2-2.4-3.5-3.4l-232-191.4C95.9 21.3 64 35.6 64 63v384c0 27.4 31.9 41.8 52.5 24.6l232-192.6c1.3-1.1 2.4-2.2 3.5-3.4V467c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V43c0-6.6-5.4-12-12-12zm-40.5 223.4L96.2 446.8l-.1.1-.1.1V63l.1.1.2.1 235.2 191.2z\"]\n};\nvar faStethoscope = {\n prefix: 'fal',\n iconName: 'stethoscope',\n icon: [512, 512, [], \"f0f1\", \"M430.1 96.5c-43.6 1-78.7 37.5-78.1 81.1.5 38.2 27.8 69.9 64 77.2v105.6c0 65.9-57.4 119.5-128 119.5s-128-53.6-128-119.5v-8.9c71.9-8 128-69.1 128-143.1V25.8c0-5.5-3.7-10.3-9.1-11.6L223.5.4c-6.4-1.6-12.9 2.3-14.6 8.7l-1.9 7.8c-1.6 6.4 2.3 12.9 8.7 14.6l40.3 10v165.8c0 61.8-49.5 112.9-111.3 113.2-62.1.4-112.7-50-112.7-112v-167l40.2-10.1c6.4-1.6 10.3-8.1 8.7-14.6L79 9.1C77.4 2.7 70.9-1.2 64.4.4L9.1 14.2C3.7 15.5 0 20.3 0 25.8v182.6c0 74 56.1 135.1 128 143.1v8.9C128 444 199.8 512 288 512s160-68 160-151.5V254.9c36.5-7.4 64-39.7 64-78.4 0-44.9-36.9-81.1-81.9-80zm1.9 128c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm23.5-48c0 13-10.5 23.5-23.5 23.5s-23.5-10.5-23.5-23.5S419 153 432 153s23.5 10.5 23.5 23.5z\"]\n};\nvar faStickyNote = {\n prefix: 'fal',\n iconName: 'sticky-note',\n icon: [448, 512, [], \"f249\", \"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-120.569 95.196a15.89 15.89 0 0 1-7.431 4.195v-95.509h95.509a15.88 15.88 0 0 1-4.195 7.431l-83.883 83.883zM416 80v239.988H312c-13.255 0-24 10.745-24 24v104H48c-8.837 0-16-7.163-16-16V80c0-8.837 7.163-16 16-16h352c8.837 0 16 7.163 16 16z\"]\n};\nvar faStocking = {\n prefix: 'fal',\n iconName: 'stocking',\n icon: [384, 512, [], \"f7d5\", \"M352 0H96C78.3 0 64 14.3 64 32v64c0 17.7 14.3 32 32 32v123.5l-39 26C-1.8 316.7-17.7 396.2 21.5 455c24.7 37 65.2 57 106.6 57 24.4 0 49.1-7 70.9-21.5l81.7-54.5c44.6-29.7 71.2-79.5 71.2-133.1V128c17.7 0 32-14.3 32-32V32C384 14.3 369.7 0 352 0zm-32 302.9c0 42.9-21.3 82.7-57 106.5l-81.8 54.5C165.4 474.5 147 480 128.1 480c-32.2 0-62.2-16-80-42.8-14.2-21.3-19.3-46.9-14.3-72.1 5-25.1 19.5-46.8 40.9-61l39-26 14.2-9.5V128h192v174.9zM352 96H96V32h256v64z\"]\n};\nvar faStomach = {\n prefix: 'fal',\n iconName: 'stomach',\n icon: [512, 512, [], \"f623\", \"M401.07 98.27C342.35 87.67 289.25 115.23 261.1 160H240c-44.18 0-80-35.82-80-80V8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v72c0 61.86 50.14 112 112 112h6.7c-3.95 12.73-6.7 25.99-6.7 40v56c0 44.18-35.82 80-80 80h-48C50.14 368 0 418.14 0 480v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24c0-32.35 19.31-60.29 47.01-72.88 11.13-5.06 24.36-2.05 33.4 6.19l62.31 56.78C208 497.11 249.94 512 292.78 512 413.66 512 512 413.66 512 292.78v-55.83c0-66.45-45.53-126.88-110.93-138.68zM376 128c57.34 0 104 46.66 104 104v60.78c0 12.07-1.25 23.85-3.45 35.29-31.33 15.03-68.19 7.84-92.77-18.9-29.66-32.24-72.22-43.89-111.78-32.91V232c0-57.34 46.66-104 104-104zm-83.22 352c-35.53 0-70.28-12.34-97.19-34.16L145.31 400H160c53.87 0 98.94-38.26 109.58-89.01 30.84-13.68 66.61-6.31 90.64 19.84 22.47 24.44 52.38 37.25 82.75 37.25 7.49 0 14.97-1.24 22.41-2.81C436.99 432.61 370.32 480 292.78 480z\"]\n};\nvar faStop = {\n prefix: 'fal',\n iconName: 'stop',\n icon: [448, 512, [], \"f04d\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352z\"]\n};\nvar faStopCircle = {\n prefix: 'fal',\n iconName: 'stop-circle',\n icon: [512, 512, [], \"f28d\", \"M256 504c137 0 248-111 248-248S393 8 256 8 8 119 8 256s111 248 248 248zM40 256c0-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-216zm296-96H176c-8.8 0-16 7.2-16 16v160c0 8.8 7.2 16 16 16h160c8.8 0 16-7.2 16-16V176c0-8.8-7.2-16-16-16zm-16 160H192V192h128v128z\"]\n};\nvar faStopwatch = {\n prefix: 'fal',\n iconName: 'stopwatch',\n icon: [448, 512, [], \"f2f2\", \"M393.3 141.3l17.5-17.5c4.7-4.7 4.7-12.3 0-17l-5.7-5.7c-4.7-4.7-12.3-4.7-17 0l-17.5 17.5c-35.8-31-81.5-50.9-131.7-54.2V32h25c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-80c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h23v32.6C91.2 73.3 0 170 0 288c0 123.7 100.3 224 224 224s224-100.3 224-224c0-56.1-20.6-107.4-54.7-146.7zM224 480c-106.1 0-192-85.9-192-192S117.9 96 224 96s192 85.9 192 192-85.9 192-192 192zm4-128h-8c-6.6 0-12-5.4-12-12V172c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v168c0 6.6-5.4 12-12 12z\"]\n};\nvar faStopwatch20 = {\n prefix: 'fal',\n iconName: 'stopwatch-20',\n icon: [448, 512, [], \"e06f\", \"M393.3,141.3l17.5-17.5a12,12,0,0,0,0-17l-5.71-5.71a12,12,0,0,0-17,0l-17.5,17.5A223.09,223.09,0,0,0,238.91,64.41V32h25a12,12,0,0,0,12-12V12a12,12,0,0,0-12-12h-80a12,12,0,0,0-12,12v8a12,12,0,0,0,12,12h23V64.59C91.2,73.3,0,170,0,288,0,411.7,100.3,512,224,512S448,411.7,448,288A223,223,0,0,0,393.3,141.3ZM224,480A192,192,0,1,1,416,288,191.93,191.93,0,0,1,224,480ZM178.48,307.91l2.41-3.32C201,277.09,212,262,212,229.05c0-39.46-15.91-57.05-51.58-57.05C125.14,172,108,190.41,108,228.25v4.06a4.21,4.21,0,0,0,4.33,4.07h24.9a4.21,4.21,0,0,0,4.33-4.07v-5.23c0-8,0-26.67,16.69-26.67,16.2,0,16.2,15.67,16.2,28.26,0,25-6.73,34.58-24.75,60.27l-3.06,4.37c-23.44,33.46-35.06,55.36-37.75,89.39a12.06,12.06,0,0,0,3.22,9.22,12.64,12.64,0,0,0,9.41,4.08h82.84a4.21,4.21,0,0,0,4.33-4.06V369.62a4.21,4.21,0,0,0-4.33-4.07H150.75l.52-4.46C153.34,342.91,169.22,320,178.48,307.91ZM288.19,172C254.05,172,236,192.48,236,231.22V336.56c0,40.55,16.12,59.44,50.77,59.44,36.31,0,53.23-19,53.23-59.69v-107C340,203.16,331,172,288.19,172Zm16.7,169c0,16.78-5.72,25.28-17,25.28s-17.24-8.28-17.24-24.61V225.73c0-19.84,9.38-24,17.24-24s17,4.05,17,23.34Z\"]\n};\nvar faStore = {\n prefix: 'fal',\n iconName: 'store',\n icon: [616, 512, [], \"f54e\", \"M602 118.6L537.1 15C531.3 5.7 521 0 510 0H106C95 0 84.7 5.7 78.9 15L14 118.6c-29.6 47.2-10 110.6 38 130.8v227.4c0 19.4 14.3 35.2 32 35.2h448c17.7 0 32-15.8 32-35.2V249.4c48-20.2 67.6-83.6 38-130.8zm-70 358.2c0 2-.8 3.1-.2 3.2l-446.6.3c-.3-.2-1.2-1.3-1.2-3.5V352h448zM84 320v-64h2.5c29.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.9 33.1h2.5v64zm494.2-126.5c-7.8 16.6-22.1 27.5-39.3 29.8-3.1.4-6.2.6-9.4.6-19.3 0-37-8-50-22.5L455.7 175l-23.8 26.6c-13 14.5-30.7 22.5-50 22.5s-37-8-50-22.5L308 175l-23.8 26.6c-13 14.5-30.7 22.5-50 22.5s-37-8-50-22.5L160.3 175l-23.8 26.6c-13 14.5-30.7 22.5-50 22.5-3.2 0-6.3-.2-9.4-.6-17.2-2.3-31.5-13.2-39.3-29.8-8.7-18.6-7.5-40.8 3.3-57.9L106 32h404l64.9 103.6c10.8 17.2 12 39.3 3.3 57.9z\"]\n};\nvar faStoreAlt = {\n prefix: 'fal',\n iconName: 'store-alt',\n icon: [640, 512, [], \"f54f\", \"M635.7 176.1l-91.4-160C538.6 6.2 528 0 516.5 0h-393C112 0 101.4 6.2 95.7 16.1l-91.4 160C-7.9 197.5 7.4 224 32 224h32v254.5C64 497 78.3 512 96 512h256c17.7 0 32-15 32-33.5V224h160v280c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V224h32c24.6 0 39.9-26.5 27.7-47.9zM352 478.5c0 .9-.3 1.4-.2 1.5l-255.2.2s-.6-.5-.6-1.7V352h256v126.5zm0-158.5H96v-96h256v96zM32.1 192l91.4-160h393L608 192H32.1z\"]\n};\nvar faStoreAltSlash = {\n prefix: 'fal',\n iconName: 'store-alt-slash',\n icon: [640, 512, [], \"e070\", \"M516.51,32,608,192H342.09L384,225v-1H544V351l32,25.2V224h32c24.6,0,39.91-26.5,27.71-47.91l-91.41-160A32.15,32.15,0,0,0,516.51,0h-393a31.85,31.85,0,0,0-17.92,5.76L138.91,32ZM352,478.5c0,.91-.29,1.41-.2,1.5l-255.2.2a2.23,2.23,0,0,1-.6-1.7V352H338.48l-40.64-32H96V224h79.92l-40.64-32H32.11l32-56-25.44-20L4.31,176.09C-7.89,197.5,7.42,224,32,224H64V478.5C64,497,78.31,512,96,512H352c17.71,0,32-15,32-33.5V387.86l-32-25.2ZM23,1.8A7.88,7.88,0,0,0,11.77,3l-10,12.5A7.94,7.94,0,0,0,3,26.71L617,510.23A8,8,0,0,0,628.2,509l10-12.5a7.86,7.86,0,0,0-1.21-11.2Z\"]\n};\nvar faStoreSlash = {\n prefix: 'fal',\n iconName: 'store-slash',\n icon: [640, 512, [], \"e071\", \"M97.2,480.3a4.53,4.53,0,0,1-1.2-3.5V352H338.48l-40.64-32H96V256h2.5a98.65,98.65,0,0,0,73.24-32.59C165.67,218.43,148,202,148,202A66.31,66.31,0,0,1,98.5,224.09a71.51,71.51,0,0,1-9.41-.59c-17.18-2.3-31.5-13.2-39.29-29.8-8.71-18.61-7.5-40.79,3.29-57.9l3.58-5.72-25.36-20L26,118.59C-3.59,165.8,16,229.2,64,249.41V476.8C64,496.2,78.3,512,96,512H541.66l-40.6-32ZM522,32l64.91,103.59a61,61,0,0,1,3.29,57.91c-7.79,16.59-22.11,27.5-39.29,29.8a73.26,73.26,0,0,1-9.41.61,66.35,66.35,0,0,1-50-22.5L467.7,175l-23.79,26.59a66.37,66.37,0,0,1-50,22.5,67.35,67.35,0,0,1-12.76-1.33l37.68,29.67a99.3,99.3,0,0,0,48.67-29.52A99.14,99.14,0,0,0,541.41,256h2.5v64H504.64L576,376.2V249.41c48-20.21,67.59-83.61,38-130.82L549.09,15A32,32,0,0,0,522,0H118a31.92,31.92,0,0,0-14.92,3.78L138.91,32ZM637,485.32,23,1.8A7.88,7.88,0,0,0,11.77,3l-10,12.5A7.94,7.94,0,0,0,3,26.71L617,510.23A8,8,0,0,0,628.2,509l10-12.5A7.86,7.86,0,0,0,637,485.32Z\"]\n};\nvar faStream = {\n prefix: 'fal',\n iconName: 'stream',\n icon: [512, 512, [], \"f550\", \"M8 128h432c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8zm496 112H72c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h432c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-64 144H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h432c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8z\"]\n};\nvar faStreetView = {\n prefix: 'fal',\n iconName: 'street-view',\n icon: [512, 512, [], \"f21d\", \"M368 360.15v30.87c62.27 8.42 104 23.6 104 40.99 0 26.51-96.71 48-216 48S40 458.51 40 432c0-17.38 41.73-32.56 104-40.99v-30.87C58.82 373.14 0 400.39 0 432c0 44.18 114.62 80 256 80s256-35.82 256-80c0-31.61-58.82-58.86-144-71.85zM176 320v80c0 26.47 21.53 48 48 48h64c26.47 0 48-21.53 48-48v-80c26.47 0 48-21.53 48-48v-64c0-34.53-22.11-63.75-52.82-74.93C339.14 119.84 344 104.54 344 88c0-48.52-39.48-88-88-88s-88 39.48-88 88c0 16.54 4.86 31.84 12.82 45.07C150.11 144.25 128 173.47 128 208v64c0 26.47 21.53 48 48 48zm80-288c30.93 0 56 25.07 56 56s-25.07 56-56 56-56-25.07-56-56 25.07-56 56-56zm-96 176c0-25.76 20.44-46.68 45.93-47.79C220.17 170.11 237.38 176 256 176s35.83-5.89 50.07-15.79C331.56 161.32 352 182.24 352 208v64c0 8.83-7.19 16-16 16h-32v112c0 8.83-7.19 16-16 16h-64c-8.81 0-16-7.17-16-16V288h-32c-8.81 0-16-7.17-16-16v-64z\"]\n};\nvar faStretcher = {\n prefix: 'fal',\n iconName: 'stretcher',\n icon: [640, 512, [], \"f825\", \"M608 128H192L79.84 10.74a32 32 0 0 0-45.18-2.65L10.74 29.35a32 32 0 0 0-2.66 45.17l121.7 128A64 64 0 0 0 177.62 224h23.18l143.11 125.81-51.84 45.36A65.88 65.88 0 1 0 313 419.38L368 371l55 48.39a63.26 63.26 0 1 0 20.89-24.21l-51.84-45.36L535.2 224H608a32 32 0 0 0 32-32v-32a32 32 0 0 0-32-32zM256 480a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm224-64a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm-112-87.27L248.3 224h239.4zM608 192H177.62c-9.14 0-17.85-3.92-24.65-11.53L32 53.26 55.89 32l122.44 128H608z\"]\n};\nvar faStrikethrough = {\n prefix: 'fal',\n iconName: 'strikethrough',\n icon: [512, 512, [], \"f0cc\", \"M361.36 320a72.48 72.48 0 0 1 21 68.24c-4.86 23-21.55 42.13-43.07 51.52a98.75 98.75 0 0 1-39.35 8.24H234a78.37 78.37 0 0 1-74.58-53.5 8.07 8.07 0 0 0-9.43-5.56l-15.65 3.65a8 8 0 0 0-6 10A110.28 110.28 0 0 0 234 480h66a130.93 130.93 0 0 0 52.12-10.91c33.54-14.6 58.16-46.18 63-82.44A104.52 104.52 0 0 0 401.79 320zm-192.11-96h68.28l-39.37-19.61c-24.78-12.33-40-37.46-39.29-66.71a72.2 72.2 0 0 1 40.23-63.34A98.53 98.53 0 0 1 242.91 64h47.86a108.83 108.83 0 0 1 95.51 56.91 8 8 0 0 0 10.33 3.69l14.6-6.62a8.06 8.06 0 0 0 3.92-11A140.86 140.86 0 0 0 290.77 32h-47.86a130.84 130.84 0 0 0-58.16 13.73c-35.72 17.86-57.9 53.82-57.9 95.21a102.1 102.1 0 0 0 42.4 83.06zM504 256H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h496a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faStroopwafel = {\n prefix: 'fal',\n iconName: 'stroopwafel',\n icon: [512, 512, [], \"f551\", \"M256 0C114.62 0 0 114.62 0 256s114.62 256 256 256 256-114.62 256-256S397.38 0 256 0zm0 480C132.49 480 32 379.51 32 256S132.49 32 256 32s224 100.49 224 224-100.49 224-224 224zm158.39-224l28.28-28.28c3.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-28.28 28.28-45.26-45.25 22.63-22.63 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 5.66-5.66c3.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-5.66 5.66-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-22.63 22.63-45.26-45.25 28.29-28.28c3.12-3.12 3.12-8.19 0-11.31L295.6 69.32c-3.12-3.12-8.19-3.12-11.31 0L256 97.61l-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.28-45.25 45.25-22.63-22.63 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-5.66-5.66c-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.31l5.66 5.66-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 22.63 22.63-45.25 45.25-28.29-28.28c-3.12-3.12-8.19-3.12-11.31 0L69.32 216.4c-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.28 45.25 45.25-22.63 22.63-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-5.66 5.66c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0l5.66-5.66 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 22.63-22.63 45.26 45.26-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 414.39l28.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.26 22.63 22.63-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 5.66 5.66c3.12 3.12 8.19 3.12 11.31 0l11.31-11.31c3.12-3.12 3.12-8.19 0-11.31l-5.66-5.66 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-22.63-22.63 45.25-45.25 28.29 28.28c3.12 3.12 8.19 3.12 11.31 0l11.31-11.31c3.12-3.12 3.12-8.19 0-11.31L414.39 256zM256 142.86l45.25 45.25L256 233.37l-45.25-45.25L256 142.86zM142.86 256l45.25-45.26L233.37 256l-45.26 45.26L142.86 256zM256 369.14l-45.26-45.26L256 278.62l45.26 45.26L256 369.14zm67.88-67.89L278.63 256l45.26-45.25L369.14 256l-45.26 45.25z\"]\n};\nvar faSubscript = {\n prefix: 'fal',\n iconName: 'subscript',\n icon: [512, 512, [], \"f12c\", \"M344 64h-56a16 16 0 0 0-13.49 7.41L176 226.2 77.5 71.41A16 16 0 0 0 64 64H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h47.22L157 256 55.22 416H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h56a16 16 0 0 0 13.5-7.41L176 285.8l98.51 154.79A16 16 0 0 0 288 448h56a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-47.22L195 256 296.78 96H344a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8zm160 416h-40V304a16 16 0 0 0-16-16h-16a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 416 352h16v128h-40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faSubway = {\n prefix: 'fal',\n iconName: 'subway',\n icon: [448, 512, [], \"f239\", \"M112 384c26.51 0 48-21.49 48-48s-21.49-48-48-48-48 21.49-48 48 21.49 48 48 48zm0-64c8.823 0 16 7.177 16 16s-7.177 16-16 16-16-7.177-16-16 7.177-16 16-16zm224 64c26.51 0 48-21.49 48-48s-21.49-48-48-48-48 21.49-48 48 21.49 48 48 48zm0-64c8.823 0 16 7.177 16 16s-7.177 16-16 16-16-7.177-16-16 7.177-16 16-16zM320 0H128C64 0 0 42.981 0 96v256c0 47.169 50.656 86.391 106.9 94.473l-55.285 55.285c-3.78 3.78-1.103 10.243 4.243 10.243h25.798c3.182 0 6.235-1.264 8.485-3.515L150.627 448h146.745l60.486 60.485a12.002 12.002 0 0 0 8.485 3.515h25.798c5.345 0 8.022-6.463 4.243-10.243L341.1 446.472C397.344 438.391 448 399.169 448 352V96c0-53.019-63-96-128-96zM32 128h176v96H32v-96zm384 224c0 32.299-47.552 64-96 64H128c-48.448 0-96-31.701-96-64v-96h384v96zm0-128H240v-96h176v96zM32 96c0-32.299 47.552-64 96-64h192c58.237 0 96 37.881 96 64H32z\"]\n};\nvar faSuitcase = {\n prefix: 'fal',\n iconName: 'suitcase',\n icon: [512, 512, [], \"f0f2\", \"M464 128H352V80c0-26.47-21.53-48-48-48h-96c-26.47 0-48 21.53-48 48v48H48c-26.5 0-48 21.5-48 48v256c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V176c0-26.5-21.5-48-48-48zM192 80c0-8.83 7.19-16 16-16h96c8.81 0 16 7.17 16 16v48H192V80zM96 448H48c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h48v288zm288 0H128V160h256v288zm96-16c0 8.8-7.2 16-16 16h-48V160h48c8.8 0 16 7.2 16 16v256z\"]\n};\nvar faSuitcaseRolling = {\n prefix: 'fal',\n iconName: 'suitcase-rolling',\n icon: [384, 512, [], \"f5c1\", \"M336 160h-48V48c0-26.51-21.49-48-48-48h-96c-26.51 0-48 21.49-48 48v112H48c-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-48zM128 48c0-8.82 7.18-16 16-16h96c8.82 0 16 7.18 16 16v112H128V48zm224 384c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16V208c0-8.82 7.18-16 16-16h288c8.82 0 16 7.18 16 16v224zm-72-80H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h176c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm0-96H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h176c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8z\"]\n};\nvar faSun = {\n prefix: 'fal',\n iconName: 'sun',\n icon: [512, 512, [], \"f185\", \"M256 143.7c-61.8 0-112 50.3-112 112.1s50.2 112.1 112 112.1 112-50.3 112-112.1-50.2-112.1-112-112.1zm0 192.2c-44.1 0-80-35.9-80-80.1s35.9-80.1 80-80.1 80 35.9 80 80.1-35.9 80.1-80 80.1zm256-80.1c0-5.3-2.7-10.3-7.1-13.3L422 187l19.4-97.9c1-5.2-.6-10.7-4.4-14.4-3.8-3.8-9.1-5.5-14.4-4.4l-97.8 19.4-55.5-83c-6-8.9-20.6-8.9-26.6 0l-55.5 83-97.8-19.5c-5.3-1.1-10.6.6-14.4 4.4-3.8 3.8-5.4 9.2-4.4 14.4L90 187 7.1 242.5c-4.4 3-7.1 8-7.1 13.3 0 5.3 2.7 10.3 7.1 13.3L90 324.6l-19.4 97.9c-1 5.2.6 10.7 4.4 14.4 3.8 3.8 9.1 5.5 14.4 4.4l97.8-19.4 55.5 83c3 4.5 8 7.1 13.3 7.1s10.3-2.7 13.3-7.1l55.5-83 97.8 19.4c5.4 1.2 10.7-.6 14.4-4.4 3.8-3.8 5.4-9.2 4.4-14.4L422 324.6l82.9-55.5c4.4-3 7.1-8 7.1-13.3zm-116.7 48.1c-5.4 3.6-8 10.1-6.8 16.4l16.8 84.9-84.8-16.8c-6.6-1.4-12.8 1.4-16.4 6.8l-48.1 72-48.1-71.9c-3-4.5-8-7.1-13.3-7.1-1 0-2.1.1-3.1.3l-84.8 16.8 16.8-84.9c1.2-6.3-1.4-12.8-6.8-16.4l-71.9-48.1 71.9-48.2c5.4-3.6 8-10.1 6.8-16.4l-16.8-84.9 84.8 16.8c6.5 1.3 12.8-1.4 16.4-6.8l48.1-72 48.1 72c3.6 5.4 9.9 8.1 16.4 6.8l84.8-16.8-16.8 84.9c-1.2 6.3 1.4 12.8 6.8 16.4l71.9 48.2-71.9 48z\"]\n};\nvar faSunCloud = {\n prefix: 'fal',\n iconName: 'sun-cloud',\n icon: [640, 512, [], \"f763\", \"M558.2 185.6C542.1 151.5 507.4 128 468 128c-41.7 0-77.6 25.2-92.5 62.5-32.5 11.4-55.5 42.1-55.5 78.3 0 45.9 37.3 83.2 83.2 83.2h153.6c45.9 0 83.2-37.3 83.2-83.2 0-45.4-36.6-82.4-81.8-83.2zM556.8 320H403.2c-28.3 0-51.2-22.9-51.2-51.2 0-27.5 21.8-49.8 49-51 4.9-32.7 32.9-57.8 67-57.8 35.8 0 64.8 27.8 67.5 62.9 6.5-3.1 13.6-5.3 21.3-5.3 28.3 0 51.2 22.9 51.2 51.2S585.1 320 556.8 320zm-153.6 64c-.7 0-1.4-.2-2.1-.2l4.3 21.6-84.8-16.8c-6.6-1.3-12.8 1.4-16.4 6.8L256 467.2l-48.1-71.9c-3.6-5.3-9.9-8.1-16.4-6.8l-84.8 16.8 16.8-84.8c1.2-6.3-1.4-12.8-6.8-16.4L44.8 256l71.9-48.1c5.4-3.6 8-10.1 6.8-16.4l-16.8-84.8 84.8 16.8c6.5 1.3 12.8-1.5 16.4-6.8L256 44.8l48.1 71.9c3.6 5.3 9.9 8.1 16.4 6.8L428.8 102c8.7-1.7 14.3-10.1 12.6-18.8-1.7-8.7-10.1-14.4-18.8-12.6L324.8 90 269.3 7.1c-3-4.4-8-7.1-13.3-7.1s-10.3 2.7-13.3 7.1L187.2 90 89.4 70.6c-5.3-1.1-10.6.6-14.4 4.4s-5.4 9.2-4.4 14.4L90 187.2 7.1 242.7c-4.4 3-7.1 7.9-7.1 13.3s2.7 10.3 7.1 13.3L90 324.8l-19.4 97.8c-1 5.2.6 10.7 4.4 14.4 3.8 3.8 9.1 5.4 14.4 4.4l97.8-19.4 55.5 82.9c3 4.4 8 7.1 13.3 7.1s10.3-2.7 13.3-7.1l55.4-82.9 97.8 19.4c5.4 1.1 10.7-.6 14.4-4.4 3.8-3.8 5.4-9.2 4.4-14.4l-7.6-38.6h-30.5zM256 179.7c21 0 40 8.5 53.8 22.3 6.2-8.7 13.6-16.4 22-23.1-19.5-19.2-46.3-31.1-75.8-31.1-59.7 0-108.3 48.6-108.3 108.3S196.3 364.3 256 364.3c22.8 0 44-7.2 61.5-19.3-7.1-8-13.1-16.9-17.8-26.6-12.4 8.7-27.4 13.9-43.7 13.9-42.1 0-76.3-34.2-76.3-76.3s34.2-76.3 76.3-76.3z\"]\n};\nvar faSunDust = {\n prefix: 'fal',\n iconName: 'sun-dust',\n icon: [512, 512, [], \"f764\", \"M123.5 191.5l-16.8-84.8 84.8 16.8c6.4 1.2 12.7-1.2 16.4-6.8L256 44.8l48.1 71.9c3.8 5.6 10.6 8.3 17.2 6.6l85.7-21.5c2.9-.7 5.4-2.2 7.4-4.2 3.8-3.8 5.6-9.5 4.2-15.2-2.1-8.6-10.8-13.8-19.4-11.6l-74.8 18.7-55.1-82.4c-3-4.4-7.9-7.1-13.3-7.1-5.3 0-10.3 2.5-13.3 7.1L187.3 90 89.6 70.6h-.1c-1-.2-2 0-3 0-1.1 0-2.1-.2-3.2 0-2.1.4-4.1 1.3-5.8 2.4-.5.3-.8.9-1.3 1.3-1.1.9-2.2 1.9-3.1 3.1-1.2 1.7-2 3.7-2.4 5.8-.2 1.1 0 2.1 0 3.1s-.2 2.1 0 3.1v.1L90 187.3 7.1 242.7c-4.5 3-7.1 7.9-7.1 13.3 0 5.3 2.7 10.3 7.1 13.3l82.4 55.1-18.7 74.8c-2.2 8.6 3 17.3 11.6 19.4 5.7 1.4 11.4-.4 15.2-4.2 2-2 3.5-4.5 4.2-7.4l21.5-85.7c1.7-6.6-1-13.4-6.6-17.2L44.8 256l71.9-48.1c5.5-3.6 8-10.1 6.8-16.4zm183.4 2.8c3.3 2.7 8 2.8 11-.3l11.3-11.3c3.2-3.2 3.2-8.6-.2-11.6-43.9-37.9-110.6-36-152.2 5.7-41.7 41.7-43.6 108.3-5.7 152.2 3 3.5 8.4 3.5 11.6.2l11.3-11.3c3-3 3-7.7.3-11-26-31.4-24.3-78.1 5.1-107.5 29.4-29.4 76.2-31 107.5-5.1zm183.8 275c-11.8 0-21.3 9.6-21.3 21.3 0 11.8 9.5 21.3 21.3 21.3s21.3-9.6 21.3-21.3c0-11.7-9.6-21.3-21.3-21.3zm0-170.6c-11.8 0-21.3 9.6-21.3 21.3 0 11.8 9.5 21.3 21.3 21.3S512 331.7 512 320c0-11.8-9.6-21.3-21.3-21.3zm0-128c11.8 0 21.3-9.6 21.3-21.3 0-11.8-9.6-21.3-21.3-21.3-11.8 0-21.3 9.6-21.3 21.3-.1 11.7 9.5 21.3 21.3 21.3zM149.3 469.3c-11.8 0-21.3 9.6-21.3 21.3 0 11.8 9.6 21.3 21.3 21.3 11.8 0 21.3-9.6 21.3-21.3.1-11.7-9.5-21.3-21.3-21.3zm85.4-85.3c-11.8 0-21.3 9.6-21.3 21.3 0 11.8 9.5 21.3 21.3 21.3S256 417 256 405.3c0-11.7-9.6-21.3-21.3-21.3zm85.3-85.3c-11.8 0-21.3 9.6-21.3 21.3 0 11.8 9.6 21.3 21.3 21.3s21.3-9.6 21.3-21.3c0-11.8-9.5-21.3-21.3-21.3zm85.3-85.4c-11.8 0-21.3 9.6-21.3 21.3 0 11.8 9.6 21.3 21.3 21.3 11.8 0 21.3-9.6 21.3-21.3.1-11.7-9.5-21.3-21.3-21.3zm-85.3 256c-11.8 0-21.3 9.6-21.3 21.3 0 11.8 9.6 21.3 21.3 21.3s21.3-9.6 21.3-21.3c0-11.7-9.5-21.3-21.3-21.3zm85.3-85.3c-11.8 0-21.3 9.6-21.3 21.3 0 11.8 9.6 21.3 21.3 21.3 11.8 0 21.3-9.6 21.3-21.3.1-11.7-9.5-21.3-21.3-21.3z\"]\n};\nvar faSunHaze = {\n prefix: 'fal',\n iconName: 'sun-haze',\n icon: [640, 512, [], \"f765\", \"M216 480H72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h144c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm416 0H296c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h336c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-56-56v-16c0-4.4-3.6-8-8-8H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h560c4.4 0 8-3.6 8-8zm56-104.1H488c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h144c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM72 352h336c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm136.3-104.5c-.3 4.5 3.5 8.4 8.1 8.4h16c4.3 0 7.6-3.4 8-7.6 3.8-40.6 38.1-72.4 79.6-72.4s75.8 31.8 79.6 72.4c.4 4.2 3.7 7.6 8 7.6h16c4.6 0 8.4-3.8 8.1-8.4-4.3-57.9-52.8-103.6-111.7-103.6s-107.4 45.8-111.7 103.6zM96 255.9c2.8 0 5.7-.7 8.2-2.3l75.8-45.4c5.8-3.5 8.8-10.2 7.5-16.8l-16.8-84.9 84.8 16.8c6.5 1.3 12.8-1.4 16.4-6.8L320 44.7l48.1 71.9c3.6 5.4 9.9 8.1 16.4 6.8l84.8-16.8-16.8 84.9c-1.3 6.6 1.7 13.4 7.5 16.8l75.8 45.4c2.6 1.5 5.4 2.3 8.2 2.3 5.4 0 10.7-2.8 13.7-7.8 4.6-7.6 2.1-17.4-5.5-21.9l-66.1-39.6 19.3-97.3c1-5.2-.6-10.6-4.4-14.4s-9.1-5.5-14.4-4.4L388.8 90 333.4 7.1l-.1-.1c-.6-.9-1.4-1.4-2.1-2.1-.8-.8-1.3-1.7-2.3-2.3-1.8-1.2-3.8-2-5.8-2.4-.6-.1-1.2 0-1.8 0-1.4-.1-2.9-.3-4.3 0-2 .4-4 1.2-5.8 2.4-.9.6-1.5 1.5-2.2 2.2-.7.7-1.6 1.3-2.2 2.2l-.1.1-55.4 82.8-97.8-19.4c-5.3-1.1-10.6.6-14.4 4.4-3.8 3.8-5.4 9.2-4.4 14.4l19.3 97.3-66.1 39.6c-7.6 4.5-10.1 14.4-5.5 21.9 2.9 5.1 8.2 7.8 13.6 7.8z\"]\n};\nvar faSunglasses = {\n prefix: 'fal',\n iconName: 'sunglasses',\n icon: [576, 512, [], \"f892\", \"M107.16 305.63L48 355.73v13.55C48 403.87 76.71 432 112 432h36.09c33.3 0 61.34-25.51 63.83-58.08l3.83-50.48a216.87 216.87 0 0 0-88.37-18.92c-7.03 0-13.69.48-20.22 1.11zm467.06-25.05l-45.5-188a80 80 0 0 0-102.91-56.5L403 43.71a8 8 0 0 0-5.06 10.1L403 69a8 8 0 0 0 10.12 5.06l21.79-7.26c10.09-3.38 21.15-3.95 31.24-.49 16.13 5.57 27.57 18.13 31.5 33.85l40.6 171.43a277.85 277.85 0 0 0-89.56-15.06c-37.35 0-80.25 8-125 31.49h-71.35c-44.72-23.49-87.65-31.5-125-31.49a278.55 278.55 0 0 0-89.56 15.06l40.56-171.23a47.54 47.54 0 0 1 24.28-30.9c12.26-6.43 26.88-6.5 40-2.15l20.29 6.79A8 8 0 0 0 173 69l5.06-15.18A8 8 0 0 0 173 43.74l-22.87-7.61A79.93 79.93 0 0 0 47.25 92.78L1.81 280.58A62.68 62.68 0 0 0 0 295.64v73.64C0 430.44 50.12 480 112 480h36.09c58.6 0 107.29-44.67 111.69-102.44l4.34-57.56h47.76l4.34 57.56C320.62 435.34 369.31 480 427.91 480H464c61.88 0 112-49.56 112-110.72v-73.65a64.18 64.18 0 0 0-1.78-15.05zm-346.34 94.56C224.75 416 189.72 448 148.09 448H112c-44.12 0-80-35.31-80-78.72V308a248.65 248.65 0 0 1 95.38-19.47c36.34 0 71.62 8.43 105.15 25.14zM544 369.28c0 43.41-35.88 78.72-80 78.72h-36.09c-41.63 0-76.66-32-79.79-72.86l-4.65-61.48C377 297 412.31 288.52 448.66 288.52A248.46 248.46 0 0 1 544 308zm-115.12-63.72l-65.69 56.6.89 11.77c2.49 32.56 30.53 58.07 63.83 58.07H464c35.29 0 64-28.13 64-62.72v-50.41a233.52 233.52 0 0 0-79.34-14.35c-6.66 0-13.22.48-19.78 1.04z\"]\n};\nvar faSunrise = {\n prefix: 'fal',\n iconName: 'sunrise',\n icon: [576, 512, [], \"f766\", \"M95.8 448h38.5l-44-66 86-17.2c6.3-1.3 11.3-6.2 12.6-12.6l17.2-86 73 48.7c5.4 3.6 12.4 3.6 17.8 0l73-48.7 17.2 86c1.2 6.3 6.2 11.3 12.6 12.6l86 17.2-44 66h38.5l45.5-68.1c3-4.4 3.5-10.1 1.5-15s-6.4-8.5-11.7-9.6l-99-19.8-19.8-99c-1-5.2-4.6-9.6-9.6-11.7-5-2.1-10.6-1.5-15 1.5l-84 56-84-56c-4.4-2.9-10.1-3.5-15-1.5s-8.5 6.4-9.6 11.7l-19.8 99-99 19.8c-5.2 1-9.6 4.6-11.7 9.6s-1.5 10.6 1.5 15L95.8 448zm101.9-330.3c3.1 3.1 8.2 3.1 11.3 0l63-63V216c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V54.6l63 63c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3L299.3 4.7C296.2 1.6 292.1 0 288 0s-8.2 1.6-11.3 4.7L186.3 95c-3.1 3.1-3.1 8.2 0 11.3l11.4 11.4zM568 480H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h560c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM287.8 352c-56.3 0-102.5 41.9-110.4 96h32c7.4-36.5 39.7-64 78.4-64s70.9 27.5 78.4 64h32c-7.8-54.1-54.1-96-110.4-96z\"]\n};\nvar faSunset = {\n prefix: 'fal',\n iconName: 'sunset',\n icon: [576, 512, [], \"f767\", \"M276.7 219.3c3.1 3.1 7.2 4.7 11.3 4.7s8.2-1.6 11.3-4.7l90.3-90.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-63 63V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v161.4l-63-63c-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.3l90.3 90.3zM95.8 448h38.5l-44-66 86-17.2c6.3-1.3 11.3-6.2 12.6-12.6l17.2-86 73 48.7c5.4 3.6 12.4 3.6 17.8 0l73-48.7 17.2 86c1.2 6.3 6.2 11.3 12.6 12.6l86 17.2-44 66h38.5l45.5-68.1c3-4.4 3.5-10.1 1.5-15s-6.4-8.5-11.7-9.6l-99-19.8-19.8-99c-1-5.2-4.6-9.6-9.6-11.7-5-2.1-10.6-1.5-15 1.5l-84 56-84-56c-4.4-2.9-10.1-3.5-15-1.5s-8.5 6.4-9.6 11.7l-19.8 99-99 19.8c-5.2 1-9.6 4.6-11.7 9.6s-1.5 10.6 1.5 15L95.8 448zm192-96c-56.3 0-102.5 41.9-110.4 96h32c7.4-36.5 39.7-64 78.4-64s70.9 27.5 78.4 64h32c-7.8-54.1-54.1-96-110.4-96zM568 480H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h560c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faSuperscript = {\n prefix: 'fal',\n iconName: 'superscript',\n icon: [512, 512, [], \"f12b\", \"M344 64h-56a16 16 0 0 0-13.49 7.41L176 226.2 77.5 71.41A16 16 0 0 0 64 64H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h47.22L157 256 55.22 416H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h56a16 16 0 0 0 13.5-7.41L176 285.8l98.51 154.79A16 16 0 0 0 288 448h56a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-47.22L195 256 296.78 96H344a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8zm160 128h-40V16a16 16 0 0 0-16-16h-16a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 416 64h16v128h-40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faSurprise = {\n prefix: 'fal',\n iconName: 'surprise',\n icon: [496, 512, [], \"f5c2\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm0-184c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64zm0 96c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm-48-176c0-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\"]\n};\nvar faSwatchbook = {\n prefix: 'fal',\n iconName: 'swatchbook',\n icon: [512, 512, [], \"f5c3\", \"M96 432c8.84 0 16-7.16 16-16s-7.16-16-16-16-16 7.16-16 16 7.16 16 16 16zm384-112H327.77l107.65-107.65c12.5-12.5 12.5-32.76 0-45.26l-90.52-90.5c-6.25-6.25-14.44-9.37-22.63-9.37s-16.38 3.12-22.63 9.37L192 184.23V32c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v384c0 53.02 42.98 96 96 96h384c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32zm-320 96c0 35.29-28.71 64-64 64s-64-28.71-64-64V288h128v128zm0-160H32v-96h128v96zm0-128H32V32h128v96zm32 101.47L322.24 99.22h.03l90.51 90.51L192 410.51V229.47zM480 480H167.76l128-128H480v128z\"]\n};\nvar faSwimmer = {\n prefix: 'fal',\n iconName: 'swimmer',\n icon: [640, 512, [], \"f5c4\", \"M128 288c53.02 0 96-42.98 96-96s-42.98-96-96-96-96 42.98-96 96 42.98 96 96 96zm0-160c35.29 0 64 28.71 64 64s-28.71 64-64 64-64-28.71-64-64 28.71-64 64-64zm61.61 214.58c2.73 2.52 10.45 6.69 22.56 8.5l42.24-60.29c15.47-22.12 32.69-42.73 50.76-62.52l154.55 107c11.11-7.99 23.08-12.79 35.44-14.37L327.4 204.75c23.24-22.91 48.13-44.19 74.91-63.31 10.97-7.83 24.91-10.69 38.47-7.77l100.38 18.08c8.59 1.53 17-4.19 18.59-12.91 1.56-8.7-4.22-17.03-12.91-18.59l-99.88-17.97a80.012 80.012 0 0 0-63.28 13.12c-60.56 43.25-112.88 96.09-155.5 157.03l-45.38 64.81c2.29 1.76 4.62 3.32 6.81 5.34zM632 384h-24c-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 375.58 442.04 384 416 384s-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 375.58 250.04 384 224 384s-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 375.58 58.04 384 32 384H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h24c38.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.84h24c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8z\"]\n};\nvar faSwimmingPool = {\n prefix: 'fal',\n iconName: 'swimming-pool',\n icon: [640, 512, [], \"f5c5\", \"M632 448h-24c-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 439.58 442.04 448 416 448s-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 439.58 250.04 448 224 448s-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 439.58 58.04 448 32 448H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h24c38.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.84h24c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-440-39.79V256h224v160c16.38 0 26.97-4.45 32-7.79V112c0-26.47 21.53-48 48-48s48 21.53 48 48v8c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-8c0-44.11-35.88-80-80-80s-80 35.89-80 80v112H192V112c0-26.47 21.53-48 48-48s48 21.53 48 48v8c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-8c0-44.11-35.88-80-80-80s-80 35.89-80 80v276.5c10.41 3.73 20.44 9.62 29.61 18.07.5.47 1.55 1.08 2.39 1.64z\"]\n};\nvar faSword = {\n prefix: 'fal',\n iconName: 'sword',\n icon: [512, 512, [], \"f71c\", \"M496.04 0c-.76 0-1.53.05-2.31.17L400 16 165.26 250.74l-39.15-39.15a15.887 15.887 0 0 0-11.31-4.68c-4.09 0-8.19 1.56-11.31 4.68l-34.79 34.8a16.005 16.005 0 0 0-2 20.19l45.9 68.84-39.79 39.79-16.76-8.38a13.82 13.82 0 0 0-6.21-1.47c-3.61 0-7.16 1.4-9.83 4.07L4.07 405.36c-5.42 5.43-5.42 14.22 0 19.64L87 507.93c2.71 2.71 6.27 4.07 9.82 4.07 3.55 0 7.11-1.36 9.82-4.07L142.57 472a13.889 13.889 0 0 0 2.6-16.03l-8.38-16.76 39.78-39.78 68.84 45.9c2.71 1.8 5.8 2.68 8.87 2.68 4.13 0 8.23-1.59 11.32-4.69l34.8-34.79c6.25-6.25 6.25-16.38 0-22.63l-39.15-39.15L496 112l15.83-93.73C513.23 8.49 505.57 0 496.04 0zM266.47 397.2l-14.21 14.21-57.92-38.62-21.83-14.55-18.55 18.55-39.78 39.78-16.31 16.31 10.31 20.63 2.54 5.09-13.9 13.9-57.32-57.32 13.9-13.9 5.08 2.54 20.63 10.32 16.31-16.31 39.79-39.79 18.55-18.55-14.55-21.83-38.62-57.92 14.21-14.21L266.47 397.2zM466.15 96.6L238.63 324.11l-50.74-50.74L415.4 45.85l61.06-10.32-10.31 61.07z\"]\n};\nvar faSwordLaser = {\n prefix: 'fal',\n iconName: 'sword-laser',\n icon: [512, 512, [], \"e03b\", \"M502.43507,11.94728A36.44142,36.44142,0,0,0,477.06206.00781C476.80229.002,476.54253,0,476.28081,0A38.64416,38.64416,0,0,0,450.6285,9.586L196.34371,243.305,182.192,229.15328a8.00293,8.00293,0,0,0-11.31443,0L159.56312,240.4697a7.9971,7.9971,0,0,0,.00195,11.31251l5.65564,5.65566-56.56828,56.56844-1.17578-1.17579a7.99588,7.99588,0,0,0-11.30858,0l-80.1698,80.1759a54.62117,54.62117,0,0,0,0,77.2462l25.75,25.75a54.61844,54.61844,0,0,0,77.244-.00195l80.16981-80.1759a7.99594,7.99594,0,0,0,0-11.30861l56.56828-56.56844,5.65759,5.65761a7.99882,7.99882,0,0,0,11.31248.002l11.31444-11.31642a7.99713,7.99713,0,0,0,0-11.31252l-15.34508-15.34512L502.46632,61.21884A36.55287,36.55287,0,0,0,502.43507,11.94728ZM96.36534,473.37372a22.64678,22.64678,0,0,1-31.99019.00391l-25.75-25.75394a22.62156,22.62156,0,0,1,.00195-31.99224l63.19718-63.19931,6.82811,6.83009,45.2558,45.254,5.65428,5.65626Zm80.16981-91.4845-45.25384-45.254,11.31248-11.31447,45.25579,45.25592Zm22.62692-22.627-45.25384-45.25592,11.31248-11.31252,45.25579,45.254Zm22.62692-22.627-45.25384-45.25593,11.31443-11.31251,45.25384,45.254ZM478.90385,39.56646,246.02333,292.98675l-27.03317-27.0352L472.09136,33.32036a6.83032,6.83032,0,0,1,3.86523-1.31445,4.39513,4.39513,0,0,1,2.82812,1.498A4.47664,4.47664,0,0,1,478.90385,39.56646Z\"]\n};\nvar faSwordLaserAlt = {\n prefix: 'fal',\n iconName: 'sword-laser-alt',\n icon: [512, 512, [], \"e03c\", \"M502.4353,11.9454A36.44741,36.44741,0,0,0,477.06225.0079a38.76627,38.76627,0,0,0-26.37109,9.51563L181.19507,255.39462l.541.59375H159.60913a15.99221,15.99221,0,0,0-11.31055,4.68555L15.99585,392.99814a54.63336,54.63336,0,0,0,0,77.252l25.748,25.75a54.60508,54.60508,0,0,0,77.23633,0L331.64038,283.30087c9.54492-9.54492,3.39062-25.05078-9.36914-26.71094L502.46655,61.213A36.54769,36.54769,0,0,0,502.4353,11.9454ZM38.62671,447.62509a22.648,22.648,0,0,1-.002-31.99414l65.19141-65.18945L125.58764,372.213l-81.1875,81.1875Zm57.74218,25.748a22.62382,22.62382,0,0,1-31.99414.002l-5.77539-5.77539,81.1875-81.1875,21.77149,21.77148Zm87.81446-87.81446L126.44116,327.8165l39.81641-39.81641H281.74194ZM478.8435,39.63486,279.32788,255.98837H228.033l244.1875-222.791a5.12736,5.12736,0,0,1,6.56054.29687A4.71587,4.71587,0,0,1,478.8435,39.63486Z\"]\n};\nvar faSwords = {\n prefix: 'fal',\n iconName: 'swords',\n icon: [512, 512, [], \"f71d\", \"M507.3 443.32l-55.88-55.88L486 329.91a16.007 16.007 0 0 0-2-20.19l-34.8-34.8c-6.21-6.21-16.35-6.28-22.63 0l-27.83 27.84L112 16.01 18.27.18C7.06-1.45-1.25 8.38.17 18.28L16 112.01l286.75 286.75-27.84 27.83c-6.25 6.25-6.25 16.38 0 22.63l34.8 34.79c5.4 5.4 13.86 6.22 20.19 2l57.52-34.58 55.88 55.88c6.25 6.25 16.38 6.25 22.63 0l41.37-41.37c6.25-6.24 6.25-16.38 0-22.62zM45.85 96.61L35.54 35.54 96.6 45.87 376.13 325.4l-50.74 50.74L45.85 96.61zm408.77 376.76l-63.11-63.12-68.44 41.86-14.21-14.21L437.9 308.87l14.21 14.21-41.85 68.44 63.11 63.11-18.75 18.74zM415.39 45.85l61.07-10.31-10.33 61.06-114.14 114.14 22.63 22.63L495.99 112l15.83-93.73c1.63-11.21-8.2-19.52-18.1-18.1L399.99 16 278.62 137.37 301.24 160 415.39 45.85zM237.07 426.58l-27.84-27.83 24.12-24.12L210.73 352l-24.12 24.12-50.74-50.74L160 301.25l-22.63-22.63-24.13 24.13-27.83-27.84c-6.25-6.25-16.38-6.25-22.63 0l-34.79 34.8c-5.4 5.4-6.22 13.86-2 20.19l34.58 57.52-55.89 55.89c-6.25 6.25-6.25 16.38 0 22.63l41.37 41.37c6.25 6.25 16.38 6.25 22.63 0l55.88-55.88 57.53 34.58a16.007 16.007 0 0 0 20.19-2l34.8-34.8c.87-.87 1.34-1.96 1.97-2.97-.48-2.73-.81-5.5-.81-8.33s.34-5.61.81-8.35c-.63-1.01-1.1-2.1-1.98-2.98zm-48.15 25.52l-68.44-41.85-63.11 63.11-18.75-18.75 63.12-63.11-41.86-68.44 14.21-14.21L203.13 437.9l-14.21 14.2z\"]\n};\nvar faSwordsLaser = {\n prefix: 'fal',\n iconName: 'swords-laser',\n icon: [640, 512, [], \"e03d\", \"M472.09186,33.29631a6.83342,6.83342,0,0,1,3.86523-1.31351,4.39616,4.39616,0,0,1,2.82813,1.497,4.471,4.471,0,0,1,.11914,6.05813L382.41807,144.45835l2.33984,2.15665a47.48026,47.48026,0,0,1,15.627-2.64068,46.70058,46.70058,0,0,1,21.11718,5.24232l80.96481-88.042A36.60564,36.60564,0,0,0,477.06256.00781C476.8028.002,476.543,0,476.28131,0A38.6606,38.6606,0,0,0,450.629,9.579l-107.4648,98.70228,23.60155,21.75189ZM275.73842,260.4626l-29.71483,32.31264-27.0332-27.01567,33.49609-30.76493L230.92008,211.373l-34.57616,31.7564-14.15234-14.14215a8.00705,8.00705,0,0,0-11.31445,0L159.56268,240.2955a7.98725,7.98725,0,0,0,.002,11.30435l5.65624,5.65218-56.56833,56.5276-1.17578-1.17493a8,8,0,0,0-11.30859,0l-80.1699,80.118a54.55385,54.55385,0,0,0,0,77.19044l25.75,25.73144a54.64644,54.64644,0,0,0,77.24411-.002l80.16989-80.118a7.98608,7.98608,0,0,0,0-11.30044l56.56834-56.52761,5.6582,5.65218a8.00291,8.00291,0,0,0,11.31249.00195l11.31445-11.30825a7.98725,7.98725,0,0,0,0-11.30435l-15.3457-15.3327,28.71874-31.22748ZM96.36544,473.032a22.6584,22.6584,0,0,1-31.99022.0039l-25.75-25.73535a22.59366,22.59366,0,0,1,.002-31.96914l63.19724-63.15368,6.82813,6.82516,45.25584,45.2213,5.65429,5.65217Zm80.16989-91.41846-45.25389-45.22131,11.3125-11.3063,45.25584,45.22326Zm22.627-22.61065-45.25389-45.22326,11.31249-11.30435,45.25585,45.2213Zm22.62694-22.61066L176.53533,291.169l11.31445-11.30435,45.25389,45.2213ZM624,393.10525,411.30087,180.59831c-9.54492-9.538-25.05077-3.38818-26.71093,9.36239L189.21306,9.89521a36.62975,36.62975,0,0,0-61.205,25.386,38.72144,38.72144,0,0,0,9.51562,26.3521l245.871,269.30193.59375-.54062v22.111a15.97489,15.97489,0,0,0,4.68554,11.3024L520.99809,496.01543a54.6612,54.6612,0,0,0,77.25193,0L624,470.28593a54.538,54.538,0,0,0,0-77.18068ZM383.98838,284.13109,161.19745,40.11951a5.12086,5.12086,0,0,1,.29687-6.55582,4.71845,4.71845,0,0,1,6.14063-.06245L383.98838,232.87312ZM416.00009,345.862V230.4608l97.55855,97.4883-57.74216,57.70059ZM575.625,473.40088a22.65957,22.65957,0,0,1-31.99412.002l-65.18943-65.14444,21.77147-21.7558,81.18747,81.129Zm25.75-25.7295-5.77538,5.77123-81.18747-81.129,21.77147-21.7558,65.18943,65.14249a22.596,22.596,0,0,1,.00195,31.97109Z\"]\n};\nvar faSynagogue = {\n prefix: 'fal',\n iconName: 'synagogue',\n icon: [640, 512, [], \"f69b\", \"M406.38 150.77a13.18 13.18 0 0 0-11.56-6.84h-37.15l-26.5-41.72c-4.88-7.66-17.44-7.67-22.31-.02l-26.51 41.73h-37.14c-4.81 0-9.25 2.62-11.56 6.84-2.31 4.19-2.12 9.3.44 13.31l17.73 27.91-17.73 27.91c-2.56 4.03-2.75 9.14-.44 13.33a13.18 13.18 0 0 0 11.56 6.84h37.15l26.5 41.72c2.44 3.83 6.59 6.12 11.16 6.12s8.72-2.28 11.16-6.11l26.51-41.73h37.14c4.81 0 9.25-2.62 11.56-6.84 2.31-4.19 2.12-9.3-.44-13.31L388.22 192l17.73-27.91c2.55-4.03 2.74-9.14.43-13.32zM320 114.47l18.71 29.45h-37.42L320 114.47zm-69.62 45.45h21.79l-10.9 17.15-10.89-17.15zm0 64.16l10.9-17.16 10.9 17.16h-21.8zM320 269.53l-18.71-29.45h37.42L320 269.53zm28.87-45.45h-57.75L270.75 192l20.38-32.08h57.75L369.25 192l-20.38 32.08zm40.75 0h-21.79l10.9-17.15 10.89 17.15zm-10.9-47l-10.9-17.16h21.8l-10.9 17.16zM313.71 320.3c-33.28 3.17-57.71 33.02-57.71 66.45V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V385.8c0-15.95 10.86-30.76 26.59-33.36C334.61 349.15 352 364.58 352 384v120c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V384c0-37.42-32.12-67.34-70.29-63.7zm318.28-52.01l-76-71.78c-6.6-6.23-17.4-6.23-24 0l-52 49.11V134.4c0-9.72-4.42-18.92-12.01-24.99l-128-102.4C334.15 2.34 327.07 0 320 0s-14.15 2.34-19.99 7.01l-128 102.4A32.005 32.005 0 0 0 160 134.4v111.23l-52-49.11c-6.6-6.23-17.4-6.23-24 0L8 268.3c-5.15 4.86-8 11.13-8 17.63V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V289.64l64-60.45 64 60.45V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V134.4L320 32l128 102.4V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V289.64l64-60.45 64 60.45V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V285.93c0-6.5-2.85-12.77-8.01-17.64z\"]\n};\nvar faSync = {\n prefix: 'fal',\n iconName: 'sync',\n icon: [512, 512, [], \"f021\", \"M492 8h-10c-6.627 0-12 5.373-12 12v110.627C426.929 57.261 347.224 8 256 8 123.228 8 14.824 112.338 8.31 243.493 7.971 250.311 13.475 256 20.301 256h10.016c6.353 0 11.646-4.949 11.977-11.293C48.157 132.216 141.097 42 256 42c82.862 0 154.737 47.077 190.289 116H332c-6.627 0-12 5.373-12 12v10c0 6.627 5.373 12 12 12h160c6.627 0 12-5.373 12-12V20c0-6.627-5.373-12-12-12zm-.301 248h-10.015c-6.352 0-11.647 4.949-11.977 11.293C463.841 380.158 370.546 470 256 470c-82.608 0-154.672-46.952-190.299-116H180c6.627 0 12-5.373 12-12v-10c0-6.627-5.373-12-12-12H20c-6.627 0-12 5.373-12 12v160c0 6.627 5.373 12 12 12h10c6.627 0 12-5.373 12-12V381.373C85.071 454.739 164.777 504 256 504c132.773 0 241.176-104.338 247.69-235.493.339-6.818-5.165-12.507-11.991-12.507z\"]\n};\nvar faSyncAlt = {\n prefix: 'fal',\n iconName: 'sync-alt',\n icon: [512, 512, [], \"f2f1\", \"M457.373 9.387l-50.095 50.102C365.411 27.211 312.953 8 256 8 123.228 8 14.824 112.338 8.31 243.493 7.971 250.311 13.475 256 20.301 256h10.015c6.352 0 11.647-4.949 11.977-11.293C48.159 131.913 141.389 42 256 42c47.554 0 91.487 15.512 127.02 41.75l-53.615 53.622c-20.1 20.1-5.855 54.628 22.627 54.628H480c17.673 0 32-14.327 32-32V32.015c0-28.475-34.564-42.691-54.627-22.628zM480 160H352L480 32v128zm11.699 96h-10.014c-6.353 0-11.647 4.949-11.977 11.293C463.84 380.203 370.504 470 256 470c-47.525 0-91.468-15.509-127.016-41.757l53.612-53.616c20.099-20.1 5.855-54.627-22.627-54.627H32c-17.673 0-32 14.327-32 32v127.978c0 28.614 34.615 42.641 54.627 22.627l50.092-50.096C146.587 484.788 199.046 504 256 504c132.773 0 241.176-104.338 247.69-235.493.339-6.818-5.165-12.507-11.991-12.507zM32 480V352h128L32 480z\"]\n};\nvar faSyringe = {\n prefix: 'fal',\n iconName: 'syringe',\n icon: [512, 512, [], \"f48e\", \"M509.7 81.5L430.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-11.3 11.3c-3.1 3.1-3.1 8.2 0 11.3l17 17L84.5 291.7c-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-23l227.2-227.2 17 17c3.1 3.1 8.2 3.1 11.3 0L487 206c3.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.4zm-84.9 96.2L197.7 404.9c-10.4 10.4-24.6 15.4-39.2 13.8l-58.5-6.5-6.5-58.5c-1.6-14.6 3.4-28.9 13.8-39.2l23.5-23.5 39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-39.6-39.6 45.3-45.3 39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-39.6-39.6 45.3-45.3 39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3L289 132.4l45.3-45.3 90.5 90.6z\"]\n};\nvar faTable = {\n prefix: 'fal',\n iconName: 'table',\n icon: [512, 512, [], \"f0ce\", \"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-48zM160 448H48c-8.837 0-16-7.163-16-16v-80h128v96zm0-128H32v-96h128v96zm0-128H32V96h128v96zm160 256H192v-96h128v96zm0-128H192v-96h128v96zm0-128H192V96h128v96zm160 160v80c0 8.837-7.163 16-16 16H352v-96h128zm0-32H352v-96h128v96zm0-128H352V96h128v96z\"]\n};\nvar faTableTennis = {\n prefix: 'fal',\n iconName: 'table-tennis',\n icon: [512, 512, [], \"f45d\", \"M482.8 325.2c47.1-83.1 36.2-190.6-34.5-261.4C407.2 22.7 352.6 0 294.5 0c-105.8 0-153 63.1-219.3 129.5-49.2 49.3-49.2 129.6 0 179l20.2 20.3-83.6 72.6c-15.1 13.2-15.7 36.3-1.8 50.3l50.1 50.1c17.5 17.6 40.7 9.4 50.3-1.8l72.4-83.6c15.9 15.9 58.9 70.6 132.5 56.1 20.6 24 50.7 39.5 84.7 39.5 61.8 0 112-50.2 112-112 0-28.8-11.3-54.9-29.2-74.8zM163.4 86.5c72.5-72.7 189.8-72.7 262.3 0 58.9 59 69 147.8 32 218-56.7-34.4-124.3-12.3-154.5 40.1l-199-199 59.2-59.1zm17.8 282.9L82.8 479.3l-50.1-50.2 109.6-98.6-44.5-44.6c-31.2-31.3-35.6-79-13.9-115.4L290.4 377c-2 9.6-6.3 34.1 5.7 64.2-51.7 1.5-70.5-27.3-114.9-71.8zM400 480c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z\"]\n};\nvar faTablet = {\n prefix: 'fal',\n iconName: 'tablet',\n icon: [448, 512, [], \"f10a\", \"M256 416c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-21.3 14.3-32 32-32s32 14.3 32 32zM448 48v416c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V48C0 21.5 21.5 0 48 0h352c26.5 0 48 21.5 48 48zm-32 0c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v416c0 8.8 7.2 16 16 16h352c8.8 0 16-7.2 16-16V48z\"]\n};\nvar faTabletAlt = {\n prefix: 'fal',\n iconName: 'tablet-alt',\n icon: [448, 512, [], \"f3fa\", \"M352 96v256H96V96h256m20-32H76c-6.6 0-12 5.4-12 12v296c0 6.6 5.4 12 12 12h296c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12zm28-64H48C21.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-48zm16 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v416zm-192-64c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"]\n};\nvar faTabletAndroid = {\n prefix: 'fal',\n iconName: 'tablet-android',\n icon: [448, 512, [], \"f3fb\", \"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-48zm16 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v416zm-140-16H172c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h104c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12z\"]\n};\nvar faTabletAndroidAlt = {\n prefix: 'fal',\n iconName: 'tablet-android-alt',\n icon: [448, 512, [], \"f3fc\", \"M352 96v256H96V96h256m48-96H48C21.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-48zM48 480c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v416c0 8.8-7.2 16-16 16H48zM372 64H76c-6.6 0-12 5.4-12 12v296c0 6.6 5.4 12 12 12h296c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12zm-96 352H172c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h104c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12z\"]\n};\nvar faTabletRugged = {\n prefix: 'fal',\n iconName: 'tablet-rugged',\n icon: [448, 512, [], \"f48f\", \"M439.2 164.4c5.4-2.7 8.8-8.2 8.8-14.3V73.9c0-6.1-3.4-11.6-8.8-14.3L416 48c0-26.5-21.5-48-48-48H80C53.5 0 32 21.5 32 48L8.8 59.6C3.4 62.3 0 67.8 0 73.9v76.2c0 6.1 3.4 11.6 8.8 14.3L32 176v16L8.8 203.6c-5.4 2.7-8.8 8.2-8.8 14.3v76.2c0 6.1 3.4 11.6 8.8 14.3L32 320v16L8.8 347.6c-5.4 2.7-8.8 8.2-8.8 14.3v76.2c0 6.1 3.4 11.6 8.8 14.3L32 464c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48l23.2-11.6c5.4-2.7 8.8-8.2 8.8-14.3v-76.2c0-6.1-3.4-11.6-8.8-14.3L416 336v-16l23.2-11.6c5.4-2.7 8.8-8.2 8.8-14.3v-76.2c0-6.1-3.4-11.6-8.8-14.3L416 192v-16l23.2-11.6zm-37.5 56.2l14.3 7.2v56.4l-14.3 7.2-17.7 8.8v55.6l17.7 8.8 14.3 7.2v56.4l-14.3 7.2-17.7 8.8V464c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16v-19.8l-17.7-8.8-14.3-7.2v-56.4l14.3-7.2 17.7-8.8v-55.6l-17.7-8.8-14.3-7.2v-56.4l14.3-7.2 17.7-8.8v-55.6l-17.7-8.8-14.3-7.2V83.8l14.3-7.2L64 67.8V48c0-8.8 7.2-16 16-16h288c8.8 0 16 7.2 16 16v19.8l17.7 8.8 14.3 7.2v56.4l-14.3 7.2-17.7 8.8v55.6l17.7 8.8zM336 64H112c-8.8 0-16 7.2-16 16v352c0 8.8 7.2 16 16 16h224c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16zm-16 352H128V96h192v320z\"]\n};\nvar faTablets = {\n prefix: 'fal',\n iconName: 'tablets',\n icon: [640, 512, [], \"f490\", \"M480 0c-88.4 0-160 71.6-160 160s71.6 160 160 160 160-71.6 160-160S568.4 0 480 0zm0 288c-70.7 0-128-57.3-128-128 0-29.6 10.4-56.4 27.3-78.1l178.9 178.9C536.4 277.6 509.6 288 480 288zm100.7-49.9L401.9 59.3C423.6 42.4 450.4 32 480 32c70.7 0 128 57.3 128 128 0 29.6-10.4 56.4-27.3 78.1zM160 192C71.6 192 0 263.6 0 352s71.6 160 160 160 160-71.6 160-160-71.6-160-160-160zm0 288c-65.2 0-118.4-48.9-126.4-112h252.8c-8 63.1-61.2 112-126.4 112zM33.6 336c8-63.1 61.2-112 126.4-112s118.4 48.9 126.4 112H33.6z\"]\n};\nvar faTachometer = {\n prefix: 'fal',\n iconName: 'tachometer',\n icon: [576, 512, [], \"f0e4\", \"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-288zm221.5 416l-442.8.68C44 409.75 32 365.26 32 320 32 178.84 146.84 64 288 64s256 114.84 256 256c0 45.26-12 89.75-34.5 128zM365.22 128.88c-8.19-2.78-17.44 1.55-20.34 9.89l-51.83 149.74c-1.69-.13-3.31-.51-5.04-.51-35.35 0-64 28.65-64 64s28.65 64 64 64 64-28.65 64-64c0-22.25-11.38-41.82-28.62-53.29l51.74-149.48c2.87-8.34-1.54-17.46-9.91-20.35zM288 384c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32z\"]\n};\nvar faTachometerAlt = {\n prefix: 'fal',\n iconName: 'tachometer-alt',\n icon: [576, 512, [], \"f3fd\", \"M288 152c13.26 0 24-10.74 24-24s-10.74-24-24-24-24 10.74-24 24 10.74 24 24 24zm-136 8c-13.26 0-24 10.74-24 24s10.74 24 24 24 24-10.74 24-24-10.74-24-24-24zm272 0c-13.26 0-24 10.74-24 24s10.74 24 24 24 24-10.74 24-24-10.74-24-24-24zm56 136c-13.26 0-24 10.74-24 24s10.74 24 24 24 24-10.74 24-24-10.74-24-24-24zM288 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-288zm221.5 416l-442.8.68C44 409.75 32 365.26 32 320 32 178.84 146.84 64 288 64s256 114.84 256 256c0 45.26-12 89.75-34.5 128zM96 296c-13.26 0-24 10.74-24 24s10.74 24 24 24 24-10.74 24-24-10.74-24-24-24zm269.22-167.12c-8.19-2.78-17.44 1.55-20.34 9.89l-51.83 149.74c-1.69-.13-3.31-.51-5.04-.51-35.35 0-64 28.65-64 64s28.65 64 64 64 64-28.65 64-64c0-22.25-11.38-41.82-28.62-53.29l51.74-149.48c2.87-8.34-1.54-17.46-9.91-20.35zM288 384c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32z\"]\n};\nvar faTachometerAltAverage = {\n prefix: 'fal',\n iconName: 'tachometer-alt-average',\n icon: [576, 512, [], \"f624\", \"M304 290.26V128c0-8.84-7.16-16-16-16s-16 7.16-16 16v162.26c-27.56 7.14-48 31.95-48 61.74 0 35.35 28.65 64 64 64s64-28.65 64-64c0-29.79-20.44-54.6-48-61.74zM288 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm-168-64c0 13.26-10.74 24-24 24s-24-10.74-24-24 10.74-24 24-24 24 10.74 24 24zm56-136c0 13.26-10.74 24-24 24s-24-10.74-24-24 10.74-24 24-24 24 10.74 24 24zm272 0c0 13.26-10.74 24-24 24s-24-10.74-24-24 10.74-24 24-24 24 10.74 24 24zM288 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-288zm221.5 416l-442.8.68C44 409.75 32 365.26 32 320 32 178.84 146.84 64 288 64s256 114.84 256 256c0 45.26-12 89.75-34.5 128zM504 320c0 13.26-10.74 24-24 24s-24-10.74-24-24 10.74-24 24-24 24 10.74 24 24z\"]\n};\nvar faTachometerAltFast = {\n prefix: 'fal',\n iconName: 'tachometer-alt-fast',\n icon: [576, 512, [], \"f625\", \"M120 320c0 13.26-10.74 24-24 24s-24-10.74-24-24 10.74-24 24-24 24 10.74 24 24zm168-168c13.26 0 24-10.74 24-24s-10.74-24-24-24-24 10.74-24 24 10.74 24 24 24zm-136 8c-13.26 0-24 10.74-24 24s10.74 24 24 24 24-10.74 24-24-10.74-24-24-24zm282.06 11.56c6.88 5.56 7.94 15.64 2.38 22.5l-97.14 120C347.18 324.7 352 337.74 352 352c0 35.35-28.65 64-64 64s-64-28.65-64-64 28.65-64 64-64c9.47 0 18.38 2.18 26.47 5.88l97.09-119.94c5.56-6.88 15.6-7.92 22.5-2.38zM320 352c0-17.67-14.33-32-32-32s-32 14.33-32 32 14.33 32 32 32 32-14.33 32-32zm160-56c-13.26 0-24 10.74-24 24s10.74 24 24 24 24-10.74 24-24-10.74-24-24-24zm96 24c0 52.8-14.25 102.26-39.06 144.8-5.61 9.62-16.3 15.2-27.44 15.2h-443c-11.14 0-21.83-5.58-27.44-15.2C14.25 422.26 0 372.8 0 320 0 160.94 128.94 32 288 32s288 128.94 288 288zm-32 0c0-141.16-114.84-256-256-256S32 178.84 32 320c0 45.26 12 89.75 34.7 128.68l442.8-.68C532 409.75 544 365.26 544 320z\"]\n};\nvar faTachometerAltFastest = {\n prefix: 'fal',\n iconName: 'tachometer-alt-fastest',\n icon: [576, 512, [], \"f626\", \"M120 320c0 13.26-10.74 24-24 24s-24-10.74-24-24 10.74-24 24-24 24 10.74 24 24zm168-168c13.26 0 24-10.74 24-24s-10.74-24-24-24-24 10.74-24 24 10.74 24 24 24zm136 56c13.26 0 24-10.74 24-24s-10.74-24-24-24-24 10.74-24 24 10.74 24 24 24zm71.78 109.38c1.47 8.72-4.44 16.95-13.16 18.41l-131.2 21.87C348.53 390.3 321.41 416 288 416c-35.35 0-64-28.65-64-64s28.65-64 64-64c26.09 0 48.44 15.66 58.41 38.05l130.97-21.83c8.53-1.49 16.93 4.44 18.4 13.16zM320 352c0-17.67-14.33-32-32-32s-32 14.33-32 32 14.33 32 32 32 32-14.33 32-32zM152 160c-13.26 0-24 10.74-24 24s10.74 24 24 24 24-10.74 24-24-10.74-24-24-24zm424 160c0 52.8-14.25 102.26-39.06 144.8-5.61 9.62-16.3 15.2-27.44 15.2h-443c-11.14 0-21.83-5.58-27.44-15.2C14.25 422.26 0 372.8 0 320 0 160.94 128.94 32 288 32s288 128.94 288 288zm-32 0c0-141.16-114.84-256-256-256S32 178.84 32 320c0 45.26 12 89.75 34.7 128.68l442.8-.68C532 409.75 544 365.26 544 320z\"]\n};\nvar faTachometerAltSlow = {\n prefix: 'fal',\n iconName: 'tachometer-alt-slow',\n icon: [576, 512, [], \"f627\", \"M120 320c0 13.26-10.74 24-24 24s-24-10.74-24-24 10.74-24 24-24 24 10.74 24 24zm168-168c13.26 0 24-10.74 24-24s-10.74-24-24-24-24 10.74-24 24 10.74 24 24 24zm64 200c0 35.35-28.65 64-64 64s-64-28.65-64-64c0-14.26 4.82-27.3 12.71-37.94l-97.14-120c-5.56-6.86-4.5-16.94 2.38-22.5 6.88-5.55 16.97-4.5 22.5 2.38l97.09 119.94c8.09-3.69 17-5.88 26.47-5.88 35.34 0 63.99 28.65 63.99 64zm-32 0c0-17.67-14.33-32-32-32s-32 14.33-32 32 14.33 32 32 32 32-14.33 32-32zm256-32c0 52.8-14.25 102.26-39.06 144.8-5.61 9.62-16.3 15.2-27.44 15.2h-443c-11.14 0-21.83-5.58-27.44-15.2C14.25 422.26 0 372.8 0 320 0 160.94 128.94 32 288 32s288 128.94 288 288zm-32 0c0-141.16-114.84-256-256-256S32 178.84 32 320c0 45.26 12 89.75 34.7 128.68l442.8-.68C532 409.75 544 365.26 544 320zM424 160c-13.26 0-24 10.74-24 24s10.74 24 24 24 24-10.74 24-24-10.74-24-24-24zm56 136c-13.26 0-24 10.74-24 24s10.74 24 24 24 24-10.74 24-24-10.74-24-24-24z\"]\n};\nvar faTachometerAltSlowest = {\n prefix: 'fal',\n iconName: 'tachometer-alt-slowest',\n icon: [576, 512, [], \"f628\", \"M128 184c0-13.26 10.74-24 24-24s24 10.74 24 24-10.74 24-24 24-24-10.74-24-24zm160-32c13.26 0 24-10.74 24-24s-10.74-24-24-24-24 10.74-24 24 10.74 24 24 24zm288 168c0 52.8-14.25 102.26-39.06 144.8-5.61 9.62-16.3 15.2-27.44 15.2h-443c-11.14 0-21.83-5.58-27.44-15.2C14.25 422.26 0 372.8 0 320 0 160.94 128.94 32 288 32s288 128.94 288 288zm-32 0c0-141.16-114.84-256-256-256S32 178.84 32 320c0 45.26 12 89.75 34.7 128.68l442.8-.68C532 409.75 544 365.26 544 320zm-192 32c0 35.35-28.65 64-64 64-33.41 0-60.53-25.7-63.43-58.35l-131.2-21.87c-8.72-1.45-14.62-9.69-13.16-18.41s9.88-14.64 18.41-13.16l130.97 21.83C239.56 303.66 261.91 288 288 288c35.35 0 64 28.65 64 64zm-32 0c0-17.67-14.33-32-32-32s-32 14.33-32 32 14.33 32 32 32 32-14.33 32-32zm160-56c-13.26 0-24 10.74-24 24s10.74 24 24 24 24-10.74 24-24-10.74-24-24-24zm-56-136c-13.26 0-24 10.74-24 24s10.74 24 24 24 24-10.74 24-24-10.74-24-24-24z\"]\n};\nvar faTachometerAverage = {\n prefix: 'fal',\n iconName: 'tachometer-average',\n icon: [576, 512, [], \"f629\", \"M304 290.26V128c0-8.84-7.16-16-16-16s-16 7.16-16 16v162.26c-27.56 7.14-48 31.95-48 61.74 0 35.35 28.65 64 64 64s64-28.65 64-64c0-29.79-20.44-54.6-48-61.74zM288 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-352C128.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-288zm221.5 416l-442.8.68C44 409.75 32 365.26 32 320 32 178.84 146.84 64 288 64s256 114.84 256 256c0 45.26-12 89.75-34.5 128z\"]\n};\nvar faTachometerFast = {\n prefix: 'fal',\n iconName: 'tachometer-fast',\n icon: [576, 512, [], \"f62a\", \"M411.56 173.94l-97.09 119.94c-8.09-3.69-17-5.88-26.47-5.88-35.35 0-64 28.65-64 64s28.65 64 64 64 64-28.65 64-64c0-14.26-4.82-27.3-12.71-37.94l97.14-120c5.56-6.86 4.5-16.94-2.38-22.5-6.89-5.54-16.93-4.5-22.49 2.38zM288 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-352C128.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-288zm221.5 416l-442.8.68C44 409.75 32 365.26 32 320 32 178.84 146.84 64 288 64s256 114.84 256 256c0 45.26-12 89.75-34.5 128z\"]\n};\nvar faTachometerFastest = {\n prefix: 'fal',\n iconName: 'tachometer-fastest',\n icon: [576, 512, [], \"f62b\", \"M477.38 304.22l-130.97 21.83C336.44 303.66 314.09 288 288 288c-35.35 0-64 28.65-64 64s28.65 64 64 64c33.41 0 60.53-25.7 63.43-58.35l131.2-21.87c8.72-1.45 14.62-9.69 13.16-18.41s-9.88-14.64-18.41-13.15zM288 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-352C128.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-288zm221.5 416l-442.8.68C44 409.75 32 365.26 32 320 32 178.84 146.84 64 288 64s256 114.84 256 256c0 45.26-12 89.75-34.5 128z\"]\n};\nvar faTachometerSlow = {\n prefix: 'fal',\n iconName: 'tachometer-slow',\n icon: [576, 512, [], \"f62c\", \"M288 288c-9.47 0-18.38 2.18-26.47 5.88l-97.09-119.94c-5.53-6.88-15.62-7.92-22.5-2.38-6.88 5.56-7.94 15.64-2.38 22.5l97.14 120C228.82 324.7 224 337.74 224 352c0 35.35 28.65 64 64 64s64-28.65 64-64-28.65-64-64-64zm0 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-352C128.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-288zm221.5 416l-442.8.68C44 409.75 32 365.26 32 320 32 178.84 146.84 64 288 64s256 114.84 256 256c0 45.26-12 89.75-34.5 128z\"]\n};\nvar faTachometerSlowest = {\n prefix: 'fal',\n iconName: 'tachometer-slowest',\n icon: [576, 512, [], \"f62d\", \"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-288zm221.5 416l-442.8.68C44 409.75 32 365.26 32 320 32 178.84 146.84 64 288 64s256 114.84 256 256c0 45.26-12 89.75-34.5 128zM288 288c-26.09 0-48.44 15.66-58.41 38.05L98.62 304.22c-8.53-1.48-16.94 4.44-18.41 13.16s4.44 16.95 13.16 18.41l131.2 21.87C227.47 390.3 254.59 416 288 416c35.35 0 64-28.65 64-64s-28.65-64-64-64zm0 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"]\n};\nvar faTaco = {\n prefix: 'fal',\n iconName: 'taco',\n icon: [512, 512, [], \"f826\", \"M511.47 407.64a309.9 309.9 0 0 0-14.63-62.14c7.7-19.83 1.06-27.47 7.5-49.89 5.32-18.45 12.55-43.48 3-69.58-10.11-27.73-33.39-41.74-48.79-51-3.35-2-8.64-5.19-11.12-7.13-.87-2.68-2.43-10.2-3.43-14.9-4.11-19.32-9.73-45.75-31.76-63.74-20.51-16.74-44.58-16.74-52.49-16.74-11.43 0-21.5 1.41-29.26 1.34C316.54 62.7 293.75 32 257.42 32c-37.66 0-64.67 32.84-75.88 41.86-8.22.07-17.45-1.35-29.26-1.35h-.11c-8 0-32 .08-52.38 16.75-22 18-27.66 44.41-31.76 63.71-1 4.47-2.44 11.52-3.66 15-2.57 2-7.64 5-10.86 6.94-15.45 9.33-38.73 23.34-48.85 51.09-9.54 26.06-2.32 51.08 3 69.35 6.47 22.56-.11 30.37 7.55 50.09a310.2 310.2 0 0 0-14.68 62.2C-3.86 442.58 21 480 60.49 480h391c39.51 0 64.38-37.34 59.98-72.36zm-60 40.36h-391c-17.11 0-30.62-17.19-28.21-36.38C47.87 287.47 142.09 192 256 192s208.13 95.47 223.72 219.62c2.41 19.19-11.1 36.38-28.21 36.38zm21-156c-46.43-79.73-127-132-216.52-132S85.92 212.27 39.49 292c-3.65-15.68-11.61-36.31-4.77-55C41 219.83 56.38 210.56 70 202.38c22.08-13.26 23.44-14.83 29.35-42.75 3.46-16.27 7.39-34.73 20.69-45.58 9.49-7.75 20.91-9.54 32.26-9.54 39.31 0 35.55 8 60.68-16C231.39 70.81 245.37 64 257.42 64c15.25 0 27.42 10.9 41.62 24.51 25.13 24.08 21.36 16 60.69 16 11.34 0 22.77 1.79 32.26 9.53 13.3 10.86 17.23 29.31 20.69 45.58 5.91 27.91 7.25 29.48 29.34 42.75 13.6 8.19 29 17.46 35.26 34.61 5.72 15.58 1.56 28.02-4.76 55.02zM112 352a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm64-64a16 16 0 1 0 16 16 16 16 0 0 0-16-16z\"]\n};\nvar faTag = {\n prefix: 'fal',\n iconName: 'tag',\n icon: [512, 512, [], \"f02b\", \"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.745 18.745 49.137 18.746 67.882 0l204.118-204.118c18.745-18.745 18.745-49.137 0-67.882zm-22.627 45.255L271.196 475.314c-6.243 6.243-16.375 6.253-22.627 0L36.686 263.431A15.895 15.895 0 0 1 32 252.117V48c0-8.822 7.178-16 16-16h204.118c4.274 0 8.292 1.664 11.314 4.686l211.882 211.882c6.238 6.239 6.238 16.39 0 22.628zM144 124c11.028 0 20 8.972 20 20s-8.972 20-20 20-20-8.972-20-20 8.972-20 20-20m0-28c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48z\"]\n};\nvar faTags = {\n prefix: 'fal',\n iconName: 'tags',\n icon: [640, 512, [], \"f02c\", \"M625.941 293.823L421.823 497.941c-18.746 18.746-49.138 18.745-67.882 0l-1.775-1.775 22.627-22.627 1.775 1.775c6.253 6.253 16.384 6.243 22.627 0l204.118-204.118c6.238-6.239 6.238-16.389 0-22.627L391.431 36.686A15.895 15.895 0 0 0 380.117 32h-19.549l-32-32h51.549a48 48 0 0 1 33.941 14.059L625.94 225.941c18.746 18.745 18.746 49.137.001 67.882zM252.118 32H48c-8.822 0-16 7.178-16 16v204.118c0 4.274 1.664 8.292 4.686 11.314l211.882 211.882c6.253 6.253 16.384 6.243 22.627 0l204.118-204.118c6.238-6.239 6.238-16.389 0-22.627L263.431 36.686A15.895 15.895 0 0 0 252.118 32m0-32a48 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.746 18.746-49.138 18.745-67.882 0L14.059 286.059A48 48 0 0 1 0 252.118V48C0 21.49 21.49 0 48 0h204.118zM144 124c-11.028 0-20 8.972-20 20s8.972 20 20 20 20-8.972 20-20-8.972-20-20-20m0-28c26.51 0 48 21.49 48 48s-21.49 48-48 48-48-21.49-48-48 21.49-48 48-48z\"]\n};\nvar faTally = {\n prefix: 'fal',\n iconName: 'tally',\n icon: [640, 512, [], \"f69c\", \"M634.79 149.58c-1.33-4.21-5.83-6.54-10.04-5.21L528 174.49V40c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v144.45l-96 29.88V40c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v184.3l-96 29.88V40c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v224.15l-96 29.88V40c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v263.99L5.58 337.12a8.005 8.005 0 0 0-5.21 10.04l4.84 15.25c1.33 4.21 5.83 6.54 10.04 5.21L112 337.51V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V327.54l96-29.88V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V287.7l96-29.88V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V247.85l96-29.88V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V208.01l106.42-33.13a8.005 8.005 0 0 0 5.21-10.04l-4.84-15.26z\"]\n};\nvar faTanakh = {\n prefix: 'fal',\n iconName: 'tanakh',\n icon: [448, 512, [], \"f827\", \"M368 0H24A23.94 23.94 0 0 0 0 24v368a24.1 24.1 0 0 0 14.9 22.2c3.6 16.1 4.4 45.6.4 65.8H12a12 12 0 0 0-12 12v8a12 12 0 0 0 12 12h372a64 64 0 0 0 64-64V80a80 80 0 0 0-80-80zm16 480H43.7a228.6 228.6 0 0 0 0-64H384a32 32 0 0 1 0 64zm32-87.12a63.33 63.33 0 0 0-32-8.88H32V32h336a48 48 0 0 1 48 48zM314.58 208l27.7-46.32a20 20 0 0 0-17.19-30.26h-56.35L241 85.16c-3.59-6.07-9.87-10.38-17-9.68a20 20 0 0 0-17.22 9.8l-27.6 46.16h-56.3a20.14 20.14 0 0 0-17.5 10.15 19.68 19.68 0 0 0 .21 20L133.42 208l-27.7 46.32a20 20 0 0 0 17.19 30.26h56.35L207 330.84a19.64 19.64 0 0 0 16.94 9.68h.06a20 20 0 0 0 17.22-9.8l27.6-46.16h56.3a20.14 20.14 0 0 0 17.5-10.15 19.68 19.68 0 0 0-.21-20zm3.48-52.58l-17.47 29.21-17.49-29.19zM224 103.38l16.8 28.06h-33.62zm-94 52.06h34.91l-17.51 29.17zm0 105.12l17.47-29.21 17.49 29.21zm94 52.06l-16.8-28.06h33.59zm31.15-52.06h-62.28L161.39 208l31.43-52.54h62.31L286.61 208zm28 0l17.45-29.17 17.46 29.17z\"]\n};\nvar faTape = {\n prefix: 'fal',\n iconName: 'tape',\n icon: [640, 512, [], \"f4db\", \"M632 448H338.9C404.2 408.8 448 337.6 448 256c0-123.7-100.3-224-224-224S0 132.3 0 256s100.3 224 224 224h408c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM32 256c0-105.9 86.1-192 192-192s192 86.1 192 192-86.1 192-192 192S32 361.9 32 256zm192-96c-53 0-96 43-96 96s43 96 96 96 96-43 96-96-43-96-96-96zm0 160c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64z\"]\n};\nvar faTasks = {\n prefix: 'fal',\n iconName: 'tasks',\n icon: [512, 512, [], \"f0ae\", \"M145.35 207a8 8 0 0 0-11.35 0l-71 71-39-39a8 8 0 0 0-11.31 0L1.35 250.34a8 8 0 0 0 0 11.32l56 56a8 8 0 0 0 11.31 0l88-88a8 8 0 0 0 0-11.32zM62.93 384c-17.67 0-32.4 14.33-32.4 32s14.73 32 32.4 32a32 32 0 0 0 0-64zm82.42-337A8 8 0 0 0 134 47l-71 71-39-39a8 8 0 0 0-11.31 0L1.35 90.34a8 8 0 0 0 0 11.32l56 56a8 8 0 0 0 11.31 0l88-88a8 8 0 0 0 0-11.32zM503 400H199a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h304a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zm0-320H199a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h304a8 8 0 0 0 8-8V88a8 8 0 0 0-8-8zm0 160H199a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h304a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faTasksAlt = {\n prefix: 'fal',\n iconName: 'tasks-alt',\n icon: [512, 512, [], \"f828\", \"M488 191H24c-13.3 0-24 10.7-24 24v80c0 13.3 10.7 24 24 24h464c13.3 0 24-10.7 24-24v-80c0-13.3-10.7-24-24-24zm-360 96H32v-64h96v64zm352 0H160v-64h320v64zm8-256H24C10.7 31 0 41.7 0 55v80c0 13.3 10.7 24 24 24h464c13.3 0 24-10.7 24-24V55c0-13.3-10.7-24-24-24zm-168 96H32V63h288v64zm160 0H352V63h128v64zm8 224H24c-13.3 0-24 10.7-24 24v80c0 13.3 10.7 24 24 24h464c13.3 0 24-10.7 24-24v-80c0-13.3-10.7-24-24-24zm-232 96H32v-64h224v64zm224 0H288v-64h192v64z\"]\n};\nvar faTaxi = {\n prefix: 'fal',\n iconName: 'taxi',\n icon: [512, 512, [], \"f1ba\", \"M96 288c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm320 0c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm-88 32H184c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h144c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm119.11-90.4l-13.32-68.79C426.53 123.25 393.5 96 355.25 96H352V64c0-17.67-14.33-32-32-32H192c-17.67 0-32 14.33-32 32v32h-3.25c-38.25 0-71.28 27.25-78.53 64.8L64.9 229.6C27.23 242.58 0 277.93 0 320v32c0 23.63 12.95 44.04 32 55.12V448c0 17.67 14.33 32 32 32h48c17.67 0 32-14.33 32-32v-32h224v32c0 17.67 14.33 32 32 32h48c17.67 0 32-14.33 32-32v-40.88c19.05-11.09 32-31.49 32-55.12v-32c0-42.07-27.23-77.42-64.89-90.4zM192 64h128v32H192V64zm-82.34 102.88C114 144.34 133.81 128 156.75 128h198.5c22.94 0 42.75 16.34 47.09 38.89L413.4 224H98.6l11.06-57.12zM112 448H64v-32h48v32zm336 0h-48v-32h48v32zm32-96c0 17.64-14.36 32-32 32H64c-17.64 0-32-14.36-32-32v-32c0-35.29 28.71-64 64-64h320c35.29 0 64 28.71 64 64v32z\"]\n};\nvar faTeeth = {\n prefix: 'fal',\n iconName: 'teeth',\n icon: [640, 512, [], \"f62e\", \"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-96zm64 416c0 35.29-28.71 64-64 64H96c-35.29 0-64-28.71-64-64V288h34.5c-1.37 4.25-2.5 8.62-2.5 13.33v53.33c0 39.7 32.3 72 72 72 22.7 0 42.73-10.77 55.94-27.23C206.53 419.08 229.71 432 256 432c26.26 0 49.4-12.89 64-32.49 14.6 19.6 37.74 32.49 64 32.49 26.29 0 49.47-12.92 64.06-32.57 13.21 16.46 33.24 27.23 55.94 27.23 39.7 0 72-32.3 72-72v-53.33c0-4.71-1.13-9.09-2.5-13.33H608v128zM109.33 288h53.33c7.36 0 13.33 5.97 13.33 13.33v53.34c0 22.09-17.91 40-40 40s-40-17.91-40-40v-53.33c.01-7.37 5.98-13.34 13.34-13.34zM96 242.67v-53.33c0-22.09 17.91-40 40-40s40 17.91 40 40v53.33c0 7.36-5.97 13.33-13.33 13.33h-53.33c-7.37 0-13.34-5.97-13.34-13.33zM221.71 288h68.57c7.57 0 13.71 6.14 13.71 13.71V352c0 26.51-21.49 48-48 48s-48-21.49-48-48v-50.29c.01-7.57 6.15-13.71 13.72-13.71zM208 242.29v-75.42c0-26.51 21.49-48 48-48s48 21.49 48 48v75.43c0 7.57-6.14 13.71-13.71 13.71h-68.57c-7.58-.01-13.72-6.15-13.72-13.72zM349.71 288h68.57c7.57 0 13.71 6.14 13.71 13.71V352c0 26.51-21.49 48-48 48s-48-21.49-48-48v-50.29c.01-7.57 6.15-13.71 13.72-13.71zM336 242.29v-75.43c0-26.51 21.49-48 48-48s48 21.49 48 48v75.42c0 7.57-6.14 13.71-13.71 13.71h-68.57c-7.58.01-13.72-6.13-13.72-13.7zm208 .38c0 7.36-5.97 13.33-13.33 13.33h-53.33c-7.36 0-13.33-5.97-13.33-13.33v-53.33c0-22.09 17.91-40 40-40s40 17.91 40 40v53.33zM477.33 288h53.33c7.36 0 13.33 5.97 13.33 13.33v53.33c0 22.09-17.91 40-40 40s-40-17.91-40-40v-53.33c.01-7.36 5.98-13.33 13.34-13.33zM608 256h-34.5c1.37-4.25 2.5-8.62 2.5-13.33v-53.33c0-39.7-32.3-72-72-72-17.9 0-34.1 6.81-46.71 17.66-12.35-28.28-40.52-48.14-73.29-48.14-26.26 0-49.4 12.89-64 32.49-14.6-19.6-37.74-32.49-64-32.49-32.78 0-60.95 19.86-73.29 48.14-12.61-10.85-28.8-17.66-46.71-17.66-39.7 0-72 32.3-72 72v53.33c0 4.71 1.13 9.09 2.5 13.33H32V96c0-35.29 28.71-64 64-64h448c35.29 0 64 28.71 64 64v160z\"]\n};\nvar faTeethOpen = {\n prefix: 'fal',\n iconName: 'teeth-open',\n icon: [640, 512, [], \"f62f\", \"M576 304H64c-35.34 0-64 28.65-64 64v48c0 53.02 42.98 96 96 96h448c53.02 0 96-42.98 96-96v-48c0-35.35-28.66-64-64-64zm-112 64v-18.67c0-7.36 5.97-13.33 13.33-13.33h53.33c7.36 0 13.33 5.97 13.33 13.33v21.33c0 22.09-17.91 40-40 40s-40-17.91-40-40V368zm-128-18.29c0-7.57 6.14-13.71 13.71-13.71h68.57c7.57 0 13.71 6.14 13.71 13.71V368c0 26.51-21.49 48-48 48s-48-21.49-48-48v-18.29zm-128 0c0-7.57 6.14-13.71 13.71-13.71h68.57c7.57 0 13.71 6.14 13.71 13.71V368c0 26.51-21.49 48-48 48s-48-21.49-48-48v-18.29zm-112-.38c0-7.36 5.97-13.33 13.33-13.33h53.33c7.36 0 13.33 5.97 13.33 13.33v21.34c0 22.09-17.91 40-40 40s-40-17.91-40-40v-21.34zM608 416c0 35.29-28.71 64-64 64H96c-35.29 0-64-28.71-64-64v-48c0-17.64 14.36-32 32-32h2.23c-1.32 4.24-2.23 8.66-2.23 13.33v21.33c0 39.7 32.3 72 72 72 22.7 0 42.73-10.77 55.94-27.23C206.53 435.08 229.71 448 256 448c26.26 0 49.4-12.89 64-32.49 14.6 19.6 37.74 32.49 64 32.49 26.29 0 49.47-12.92 64.06-32.57 13.21 16.46 33.24 27.23 55.94 27.23 39.7 0 72-32.3 72-72v-21.33c0-4.67-.91-9.09-2.23-13.33H576c17.64 0 32 14.36 32 32v48zM544 0H96C42.98 0 0 42.98 0 96v80c0 35.35 28.66 64 64 64h512c35.34 0 64-28.65 64-64V96c0-53.02-42.98-96-96-96zM176 194.67c0 7.36-5.97 13.33-13.33 13.33h-53.33c-7.36 0-13.33-5.97-13.33-13.33v-21.33c0-22.09 17.91-40 40-40s40 17.91 40 40v21.33zm128-.38c0 7.57-6.14 13.71-13.71 13.71h-68.57c-7.57 0-13.71-6.14-13.71-13.71v-43.43c0-26.51 21.49-48 48-48s48 21.49 48 48v43.43zm128 0c0 7.57-6.14 13.71-13.71 13.71h-68.57c-7.57 0-13.71-6.14-13.71-13.71v-43.43c0-26.51 21.49-48 48-48s48 21.49 48 48v43.43zm112 .38c0 7.36-5.97 13.33-13.33 13.33h-53.33c-7.36 0-13.33-5.97-13.33-13.33v-21.33c0-22.09 17.91-40 40-40s40 17.91 40 40v21.33zM608 176c0 17.64-14.36 32-32 32h-2.23c1.32-4.24 2.23-8.66 2.23-13.33v-21.33c0-39.7-32.3-72-72-72-17.84 0-34.19 6.52-46.78 17.31C444.8 90.53 416.66 70.86 384 70.86c-26.14 0-49.39 12.6-64 32.05-14.61-19.45-37.86-32.05-64-32.05-32.66 0-60.8 19.67-73.22 47.78-12.59-10.79-28.94-17.31-46.78-17.31-39.7 0-72 32.3-72 72v21.33c0 4.67.91 9.09 2.23 13.33H64c-17.64 0-32-14.36-32-32V96c0-35.29 28.71-64 64-64h448c35.29 0 64 28.71 64 64v80z\"]\n};\nvar faTelescope = {\n prefix: 'fal',\n iconName: 'telescope',\n icon: [640, 512, [], \"e03e\", \"M637.55438,197.1457,564.08568,19.76077A31.99673,31.99673,0,0,0,522.27907,2.44239L413.69712,47.4229c-15.24413,6.31446-22.5078,23.01956-17.96483,38.502L75.09384,241.41332c-8.76561,4.25-13.07225,13.584-9.85155,21.35744l8.74413,21.1094L9.881,310.43487a16.00153,16.00153,0,0,0-8.66015,20.90432l20.05663,48.42192a15.99879,15.99879,0,0,0,20.90428,8.66016l64.10542-26.55471,8.74218,21.10744c4.05469,9.79493,15.416,10.44337,22.06444,8.13868l133.89834-46.45121c1.28125,1.543,2.877,2.77344,4.291,4.19336L224.416,501.46826a8.0008,8.0008,0,0,0,7.58984,10.53126h16.84569a8.0008,8.0008,0,0,0,7.58984-5.47071l47-140.97865c12.43749,3.4336,21.67772,3.08789,33.11521-.00586l47.00192,140.98451a8.0008,8.0008,0,0,0,7.58983,5.47071H407.994a8.00079,8.00079,0,0,0,7.58983-10.53126l-50.67965-152.047a63.91267,63.91267,0,0,0,18.94335-43.91215l90.52728-31.40628c6.7207,8.53321,21.11717,16.53517,37.28317,9.832l108.58391-44.97856A31.999,31.999,0,0,0,637.55438,197.1457ZM44.71691,352.73374,36.90637,333.8763l49.32418-20.43166,7.81055,18.85744Zm275.283-16.73439a32,32,0,1,1,32-32A32.03165,32.03165,0,0,1,319.99992,335.99935Zm56.32027-61.75006a63.69444,63.69444,0,0,0-119.14835,41.334L138.76372,356.66148,100.63094,264.593,407.39829,115.83117l53.46481,129.088Zm123.09171-19.877L425.9432,76.98739l108.58-44.97856,73.4687,177.383Z\"]\n};\nvar faTemperatureDown = {\n prefix: 'fal',\n iconName: 'temperature-down',\n icon: [512, 512, [], \"e03f\", \"M160,354.91V304a16,16,0,1,0-32,0v50.91a48,48,0,1,0,32,0ZM224,80A80,80,0,1,0,64,80V321.91a112,112,0,1,0,160,0ZM144,480A79.87,79.87,0,0,1,96,336.2V80a48,48,0,1,1,96,0V336.2A79.87,79.87,0,0,1,144,480ZM492.53,377.17l-5.62-5.69a12,12,0,0,0-16.91-.07l-54,52.73V40a8,8,0,0,0-8-8H392a8,8,0,0,0-8,8V423.92l-53.94-52.36a12,12,0,0,0-16.93,0l-5.63,5.67a12,12,0,0,0,0,17l84.06,82.25a11.91,11.91,0,0,0,16.87,0l84-82.31a12,12,0,0,0,.09-17Z\"]\n};\nvar faTemperatureFrigid = {\n prefix: 'fal',\n iconName: 'temperature-frigid',\n icon: [512, 512, [], \"f768\", \"M416 354.9V336c0-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.1zm64-33V80c0-44.1-35.9-80-80-80s-80 35.9-80 80v241.9c-20.3 20.8-32 48.9-32 78.1 0 61.8 50.2 112 112 112s112-50.2 112-112c0-29.2-11.7-57.4-32-78.1zM400 480c-44.1 0-80-35.9-80-80 0-25.5 12.2-48.9 32-63.8V80c0-26.5 21.5-48 48-48s48 21.5 48 48v256.2c19.8 14.8 32 38.3 32 63.8 0 44.1-35.9 80-80 80zM277.1 326c3.4-5.6 6.8-11.1 10.9-16.2v-14.2L222.9 256l65.1-39.5v-37.1L208 228v-93.3L253.7 89c3.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-23 23V40c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v49.4l-23-23c-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.3l45.7 45.7V228l-77.7-46.5-16.1-62.4c-1.1-4.3-5.3-6.8-9.4-5.7l-14.9 4.1c-4.1 1.1-6.6 5.5-5.5 9.8l8.1 31.5-41.2-24.7c-3.7-2.2-8.4-.9-10.5 2.9l-8 13.9c-2.1 3.8-.9 8.7 2.8 10.9L45 186.5 14.8 195c-4.1 1.1-6.6 5.5-5.5 9.8l4 15.5c1.1 4.3 5.3 6.8 9.4 5.7l60.2-16.7 78.2 46.8-78.2 46.8-60.2-16.7c-4.1-1.1-8.3 1.4-9.4 5.7l-4 15.5c-1.1 4.3 1.3 8.7 5.5 9.8l30.3 8.4-41.2 24.5c-3.7 2.2-5 7.1-2.8 10.9l7.7 13.9c2.1 3.8 6.9 5.1 10.5 2.9l41.2-24.7-8.1 31.5c-1.1 4.3 1.3 8.7 5.5 9.8l14.9 4.1c4.1 1.1 8.3-1.4 9.4-5.7l16.1-62.4 77.7-46.5v93.3L130.3 423c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l23-23V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-49.4l23 23c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3L208 377.4v-93.3l69.1 41.9z\"]\n};\nvar faTemperatureHigh = {\n prefix: 'fal',\n iconName: 'temperature-high',\n icon: [384, 512, [], \"f769\", \"M320 0c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64zm0 96c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zM192 80c0-44.1-35.9-80-80-80S32 35.9 32 80v241.9C11.7 342.6 0 370.8 0 400c0 61.8 50.2 112 112 112s112-50.2 112-112c0-29.2-11.7-57.4-32-78.1V80zm-80 400c-44.1 0-80-35.9-80-80 0-25.5 12.2-48.9 32-63.8V80c0-26.5 21.5-48 48-48s48 21.5 48 48v256.2c19.8 14.8 32 38.3 32 63.8 0 44.1-35.9 80-80 80zm16-125.1V80c0-8.8-7.2-16-16-16s-16 7.2-16 16v274.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\"]\n};\nvar faTemperatureHot = {\n prefix: 'fal',\n iconName: 'temperature-hot',\n icon: [576, 512, [], \"f76a\", \"M128 240c0 52.9 43.1 96 96 96s96-43.1 96-96-43.1-96-96-96-96 43.1-96 96zm160 0c0 35.3-28.7 64-64 64s-64-28.7-64-64 28.7-64 64-64 64 28.7 64 64zm192 114.9V80c0-8.8-7.2-16-16-16s-16 7.2-16 16v274.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.1zm64-33V80c0-44.1-35.9-80-80-80s-80 35.9-80 80v241.9c-20.3 20.8-32 48.9-32 78.1 0 61.8 50.2 112 112 112s112-50.2 112-112c0-29.2-11.7-57.4-32-78.1zM464 480c-44.1 0-80-35.9-80-80 0-25.5 12.3-48.9 32-63.8V80c0-26.5 21.5-48 48-48s48 21.5 48 48v256.2c19.8 14.8 32 38.3 32 63.8 0 44.1-35.9 80-80 80zM263.9 359.6L224 419.2l-39.9-59.7c-3.6-5.4-10-8.2-16.4-6.8l-70.4 14 13.9-70.4c1.3-6.3-1.4-12.8-6.8-16.4L44.8 240l59.7-39.9c5.4-3.6 8-10.1 6.8-16.4l-13.9-70.4 70.4 14c6.4 1.3 12.8-1.4 16.4-6.8L224 60.8l39.9 59.7c3.6 5.4 9.9 8.1 16.4 6.8L352 113V80.4l-67.4 13.4-47.3-70.7c-6-8.9-20.6-8.9-26.6 0l-47.3 70.7-83.3-16.6c-5.3-1.1-10.7.6-14.4 4.4-3.8 3.8-5.4 9.2-4.4 14.4l16.5 83.4-70.7 47.3c-4.4 3-7.1 8-7.1 13.3s2.7 10.3 7.1 13.3l70.7 47.3L61.3 384c-1 5.2.6 10.7 4.4 14.4 3.8 3.8 9.1 5.5 14.4 4.4l83.3-16.5 47.3 70.7c3 4.5 8 7.1 13.3 7.1 5.3 0 10.3-2.7 13.3-7.1l47.3-70.7 36 7.1c.5-10.7 2.3-21.3 5.2-31.6l-45.5-9c-6.5-1.4-12.8 1.4-16.4 6.8z\"]\n};\nvar faTemperatureLow = {\n prefix: 'fal',\n iconName: 'temperature-low',\n icon: [384, 512, [], \"f76b\", \"M128 354.9V304c0-8.8-7.2-16-16-16s-16 7.2-16 16v50.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.1zM320 0c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64zm0 96c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zM192 80c0-44.1-35.9-80-80-80S32 35.9 32 80v241.9C11.7 342.6 0 370.8 0 400c0 61.8 50.2 112 112 112s112-50.2 112-112c0-29.2-11.7-57.4-32-78.1V80zm-80 400c-44.1 0-80-35.9-80-80 0-25.5 12.2-48.9 32-63.8V80c0-26.5 21.5-48 48-48s48 21.5 48 48v256.2c19.8 14.8 32 38.3 32 63.8 0 44.1-35.9 80-80 80z\"]\n};\nvar faTemperatureUp = {\n prefix: 'fal',\n iconName: 'temperature-up',\n icon: [512, 512, [], \"e040\", \"M224,80A80,80,0,1,0,64,80V321.91a112,112,0,1,0,160,0ZM144,480A79.87,79.87,0,0,1,96,336.2V80a48,48,0,1,1,96,0V336.2A79.87,79.87,0,0,1,144,480Zm16-125.09V80a16,16,0,1,0-32,0V354.91a48,48,0,1,0,32,0ZM492.47,117.75,408.41,35.5a11.91,11.91,0,0,0-16.87,0l-84,82.31a13.88,13.88,0,0,0-3.56,8.55,13.82,13.82,0,0,0,3.47,8.45l5.62,5.69a11.94,11.94,0,0,0,16.91.08l54-52.74V472a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8V88.06l53.94,52.36a12,12,0,0,0,16.93,0l5.63-5.67a13.83,13.83,0,0,0,3.53-8.5A13.85,13.85,0,0,0,492.47,117.75Z\"]\n};\nvar faTenge = {\n prefix: 'fal',\n iconName: 'tenge',\n icon: [384, 512, [], \"f7d7\", \"M376 128H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h168v312c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V160h168c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm0-96H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8V40c0-4.4-3.6-8-8-8z\"]\n};\nvar faTennisBall = {\n prefix: 'fal',\n iconName: 'tennis-ball',\n icon: [496, 512, [], \"f45e\", \"M248 8C111.2 8 0 119.2 0 256s111.2 248 248 248 248-111.2 248-248S384.8 8 248 8zm-12.5 32.6c-5.5 9.7-9.3 20.5-9.3 32.4 0 41.3-18.5 87.6-46 115.1s-73.8 46-115 46c-12 0-22.8 3.8-32.5 9.4 6.2-109.1 93.7-196.6 202.8-202.9zm-201 246.6c4.9-12.6 16.6-21.1 30.6-21.1 50 0 104-21.8 137.6-55.4 33.6-33.6 55.4-87.7 55.4-137.7 0-14 8.4-25.7 21-30.5 94.1 13.7 168.6 88.2 182.3 182.3-4.9 12.5-16.6 20.9-30.6 21-50 0-104 21.8-137.6 55.4-33.6 33.6-55.4 87.7-55.4 137.7 0 14-8.5 25.8-21.1 30.6-94-13.7-168.5-88.2-182.2-182.3zm226 184.2c5.6-9.7 9.3-20.5 9.4-32.5 0-41.3 18.5-87.6 46-115.1s73.8-46 115-46c11.9 0 22.8-3.8 32.4-9.3-6.2 109.1-93.7 196.6-202.8 202.9z\"]\n};\nvar faTerminal = {\n prefix: 'fal',\n iconName: 'terminal',\n icon: [640, 512, [], \"f120\", \"M34.495 36.465l211.051 211.05c4.686 4.686 4.686 12.284 0 16.971L34.495 475.535c-4.686 4.686-12.284 4.686-16.97 0l-7.071-7.07c-4.686-4.686-4.686-12.284 0-16.971L205.947 256 10.454 60.506c-4.686-4.686-4.686-12.284 0-16.971l7.071-7.07c4.686-4.687 12.284-4.687 16.97 0zM640 468v-10c0-6.627-5.373-12-12-12H300c-6.627 0-12 5.373-12 12v10c0 6.627 5.373 12 12 12h328c6.627 0 12-5.373 12-12z\"]\n};\nvar faText = {\n prefix: 'fal',\n iconName: 'text',\n icon: [448, 512, [], \"f893\", \"M448 48v72a8 8 0 0 1-8 8h-16a8 8 0 0 1-8-8V64H240v384h72a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8H136a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h72V64H32v56a8 8 0 0 1-8 8H8a8 8 0 0 1-8-8V48a16 16 0 0 1 16-16h416a16 16 0 0 1 16 16z\"]\n};\nvar faTextHeight = {\n prefix: 'fal',\n iconName: 'text-height',\n icon: [576, 512, [], \"f034\", \"M560 368h-64V144h64c14.31 0 21.33-17.31 11.31-27.31l-80-80a16 16 0 0 0-22.63 0l-80 80C379.36 126 384.36 144 400 144h64v224h-64c-14.31 0-21.33 17.32-11.31 27.32l80 80a16 16 0 0 0 22.63 0l80-80C580.64 386 575.64 368 560 368zM438.63 112L480 70.62 521.36 112h-82.73zM480 441.36L438.64 400h82.74zM304 32H16A16 16 0 0 0 0 48v72a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V64h112v384H72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-72V64h112v56a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V48a16 16 0 0 0-16-16z\"]\n};\nvar faTextSize = {\n prefix: 'fal',\n iconName: 'text-size',\n icon: [640, 512, [], \"f894\", \"M624 32H272a16 16 0 0 0-16 16v72a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V64h144v384h-72a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-72V64h144v56a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V48a16 16 0 0 0-16-16zM304 224H16a16 16 0 0 0-16 16v56a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-40h112v192H88a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h144a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-56V256h112v40a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-56a16 16 0 0 0-16-16z\"]\n};\nvar faTextWidth = {\n prefix: 'fal',\n iconName: 'text-width',\n icon: [448, 512, [], \"f035\", \"M362.31 292.69a16.12 16.12 0 0 0-11.48-4.69c-8 0-15.83 5.69-15.83 16v64H111v-64a16 16 0 0 0-16.12-16 15.63 15.63 0 0 0-11.19 4.71l-80 80a16 16 0 0 0 0 22.63l80 80A16.16 16.16 0 0 0 95.17 480c8 0 15.83-5.69 15.83-16v-64h224v64a16 16 0 0 0 16.13 16 15.64 15.64 0 0 0 11.18-4.7l80-80a16 16 0 0 0 0-22.63zM79 368v57.37L37.63 384 79 342.64zm288 57.36v-82.73L408.37 384zM431 32H15A16 16 0 0 0-1 48v72a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V64h176v192h-40a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h112a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-40V64h176v56a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V48a16 16 0 0 0-16-16z\"]\n};\nvar faTh = {\n prefix: 'fal',\n iconName: 'th',\n icon: [512, 512, [], \"f00a\", \"M0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48H48C21.49 32 0 53.49 0 80zm320-16v106.667H192V64h128zm160 245.333H352V202.667h128v106.666zm-160 0H192V202.667h128v106.666zM32 202.667h128v106.667H32V202.667zM160 64v106.667H32V80c0-8.837 7.163-16 16-16h112zM32 432v-90.667h128V448H48c-8.837 0-16-7.163-16-16zm160 16V341.333h128V448H192zm160 0V341.333h128V432c0 8.837-7.163 16-16 16H352zm128-277.333H352V64h112c8.837 0 16 7.163 16 16v90.667z\"]\n};\nvar faThLarge = {\n prefix: 'fal',\n iconName: 'th-large',\n icon: [512, 512, [], \"f009\", \"M0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48H48C21.49 32 0 53.49 0 80zm240-16v176H32V80c0-8.837 7.163-16 16-16h192zM32 432V272h208v176H48c-8.837 0-16-7.163-16-16zm240 16V272h208v160c0 8.837-7.163 16-16 16H272zm208-208H272V64h192c8.837 0 16 7.163 16 16v160z\"]\n};\nvar faThList = {\n prefix: 'fal',\n iconName: 'th-list',\n icon: [512, 512, [], \"f00b\", \"M0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48H48C21.49 32 0 53.49 0 80zm480 0v90.667H192V64h272c8.837 0 16 7.163 16 16zm0 229.333H192V202.667h288v106.666zM32 202.667h128v106.667H32V202.667zM160 64v106.667H32V80c0-8.837 7.163-16 16-16h112zM32 432v-90.667h128V448H48c-8.837 0-16-7.163-16-16zm160 16V341.333h288V432c0 8.837-7.163 16-16 16H192z\"]\n};\nvar faTheaterMasks = {\n prefix: 'fal',\n iconName: 'theater-masks',\n icon: [640, 512, [], \"f630\", \"M151.06 206.02c19.34-3.41 35.78-17.86 45.16-39.67 3.47-8.12-.28-17.53-8.41-21.02-8.12-3.5-17.53.25-21.03 8.39-2.94 6.89-9.62 18.73-21.28 20.78-11.69 2.16-22.03-6.81-27.16-12.25-6.09-6.44-16.22-6.72-22.62-.69-6.44 6.06-6.75 16.19-.69 22.62 5.17 5.5 26.31 27.14 56.03 21.84zm362.78 2.12c-19.41-3.48-39.47 4.25-56.03 21.81-6.06 6.44-5.75 16.56.69 22.62 6.41 6.03 16.53 5.75 22.62-.69 5.12-5.47 15.38-14.34 27.16-12.25 11.66 2.06 18.34 13.91 21.28 20.78 3.54 8.19 13.02 11.85 21.03 8.39 8.12-3.48 11.88-12.89 8.41-21.02-9.37-21.78-25.81-36.23-45.16-39.64zm5.69 110.61c-26.31 15.94-63.06 21.23-100.88 14.58-37.81-6.67-70.53-24.23-89.81-48.2-9.15-11.34-27.25-5.52-28.41 8.7-5.25 63.08 38.69 119.08 102.19 130.27 21.1 3.72 115.04 6.5 140.62-87.45 3.77-13.83-11.24-25.35-23.71-17.9zm-111.34 73.84c-33.19-5.86-59.19-28.08-70.28-56.95 21.34 14.09 47.22 24.27 75.19 29.19 28.03 4.98 55.75 4.25 80.66-1.72-20.35 23.33-52.38 35.3-85.57 29.48zm-68.88-165.7c5.12-5.44 15.5-14.55 27.16-12.25 11.66 2.05 18.34 13.89 21.28 20.78 3.54 8.19 13.02 11.85 21.03 8.39 8.12-3.48 11.88-12.89 8.41-21.02-9.5-22.14-25.53-36.23-45.16-39.69-19.59-3.36-39.5 4.31-56.03 21.84-6.06 6.44-5.75 16.56.69 22.62 6.44 6.05 16.53 5.77 22.62-.67zM606.8 119.91c-41.73-23.22-120-58.55-227.1-56.93-5.87-33.25-28.59-53.11-54.53-57.26C301.27 1.89 277.24 0 253.32 0 176.66 0 101.02 19.47 33.2 57.21 9.03 70.65-3.92 98.72 1.05 126.9l31.73 179.96C47.01 387.58 169.11 449.3 237.23 449.3c13.85 0 23.86-1.88 43.61-11.66 2.58 2.98 62.79 74.36 121.93 74.36 68.12 0 190.22-61.71 204.45-142.44l31.73-179.96c4.97-28.17-7.98-56.24-32.15-69.69zM237.23 417.29c-57.45 0-162.04-54.21-172.94-115.99L32.57 121.34c-2.61-14.79 3.9-29.33 16.19-36.17C74.2 71.02 178.25 14.61 320.12 37.32c13.48 2.16 24.17 13.06 27.18 27.22-10.83.94-21.66 2.15-32.47 3.88-27.31 4.37-49.08 26.32-54.04 54.49L237.12 257.1c-67.24 3.06-100.25 46.03-101.65 47.78-5.53 6.89-4.44 16.97 2.44 22.5 7.9 6.32 17.79 3.41 22.5-2.44 1.02-1.27 22.34-29.55 70.95-35.12l-2.3 13.07c-6.25 35.42 8.43 74.42 32.1 109.1-10.52 4.48-16.13 5.3-23.93 5.3zm370.21-233.25L575.7 364.01C564.81 425.79 460.21 480 402.77 480c-39.05 0-86.86-50.33-99.56-65.31-31.81-37.54-47.76-77.26-42.64-106.25l31.73-179.96c2.61-14.79 13.7-26.23 27.59-28.45 142.14-22.74 246.27 33.89 271.36 47.85 12.29 6.83 18.79 21.37 16.19 36.16z\"]\n};\nvar faThermometer = {\n prefix: 'fal',\n iconName: 'thermometer',\n icon: [512, 512, [], \"f491\", \"M476.4 20.5C438.9-10.3 381.1-5.9 345 30.3L137.2 238.6c-6 6-8.9 14.2-8.9 22.7v55L14 430c-25.3 25.3-10.6 57.3 0 68 18.7 18.8 49.1 18.7 67.8 0l113.5-114.1h54.9c8.5 0 16.6-2.9 22.6-8.9l211-211.9c34.6-34.8 43-101.2-7.4-142.6zM59.2 475.3c-15 15-37.5-7.7-22.6-22.6l30.5-30.2 22.6 22.6-30.5 30.2zm401.9-334.9L250.1 352h-54.9c-8.5 0-16.6 3.7-22.6 9.7l-60.4 60.8-22.5-22.6 60.6-61c6-6 9.8-14.2 9.8-22.7v-55l34.5-34.9 39.5 39.6c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6 45.2-45.3 39.5 39.6c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3L285 135.7l45.2-45.3 39.5 39.6c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-39.6-39.6L367.5 53c24.7-24.7 63.6-28.1 88.6-7.6 33.1 26.9 28.6 71.4 5 95z\"]\n};\nvar faThermometerEmpty = {\n prefix: 'fal',\n iconName: 'thermometer-empty',\n icon: [256, 512, [], \"f2cb\", \"M176 384c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm48-84.653c19.912 22.564 32 52.195 32 84.653 0 70.696-57.302 128-128 128-.299 0-.61-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.756 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM224 384c0-39.894-22.814-62.144-32-72.553V96c0-35.29-28.71-64-64-64S64 60.71 64 96v215.447c-9.467 10.728-31.797 32.582-31.999 72.049-.269 52.706 42.619 96.135 95.312 96.501L128 480c52.935 0 96-43.065 96-96z\"]\n};\nvar faThermometerFull = {\n prefix: 'fal',\n iconName: 'thermometer-full',\n icon: [256, 512, [], \"f2c7\", \"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 384l-.687-.002c-52.693-.366-95.581-43.795-95.312-96.501.202-39.467 22.532-61.321 31.999-72.05V96c0-35.29 28.71-64 64-64s64 28.71 64 64v215.447c9.186 10.409 32 32.659 32 72.553 0 52.935-43.065 96-96 96zm48-96c0 26.51-21.49 48-48 48s-48-21.49-48-48c0-20.898 13.359-38.667 32-45.258V96c0-8.837 7.164-16 16-16 8.837 0 16 7.163 16 16v242.742c18.641 6.591 32 24.36 32 45.258z\"]\n};\nvar faThermometerHalf = {\n prefix: 'fal',\n iconName: 'thermometer-half',\n icon: [256, 512, [], \"f2c9\", \"M176 384c0 26.51-21.49 48-48 48s-48-21.49-48-48c0-20.898 13.359-38.667 32-45.258V208c0-8.837 7.163-16 16-16s16 7.163 16 16v130.742c18.641 6.591 32 24.36 32 45.258zm48-84.653c19.912 22.564 32 52.195 32 84.653 0 70.696-57.302 128-128 128-.299 0-.61-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.756 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM224 384c0-39.894-22.814-62.144-32-72.553V96c0-35.29-28.71-64-64-64S64 60.71 64 96v215.447c-9.467 10.728-31.797 32.582-31.999 72.049-.269 52.706 42.619 96.135 95.312 96.501L128 480c52.935 0 96-43.065 96-96z\"]\n};\nvar faThermometerQuarter = {\n prefix: 'fal',\n iconName: 'thermometer-quarter',\n icon: [256, 512, [], \"f2ca\", \"M176 384c0 26.51-21.49 48-48 48s-48-21.49-48-48c0-20.898 13.359-38.667 32-45.258V272c0-8.837 7.163-16 16-16s16 7.163 16 16v66.742c18.641 6.591 32 24.36 32 45.258zm48-84.653c19.912 22.564 32 52.195 32 84.653 0 70.696-57.302 128-128 128-.299 0-.61-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.756 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM224 384c0-39.894-22.814-62.144-32-72.553V96c0-35.29-28.71-64-64-64S64 60.71 64 96v215.447c-9.467 10.728-31.797 32.582-31.999 72.049-.269 52.706 42.619 96.135 95.312 96.501L128 480c52.935 0 96-43.065 96-96z\"]\n};\nvar faThermometerThreeQuarters = {\n prefix: 'fal',\n iconName: 'thermometer-three-quarters',\n icon: [256, 512, [], \"f2c8\", \"M176 384c0 26.51-21.49 48-48 48s-48-21.49-48-48c0-20.898 13.359-38.667 32-45.258V144c0-8.837 7.163-16 16-16s16 7.163 16 16v194.742c18.641 6.591 32 24.36 32 45.258zm48-84.653c19.912 22.564 32 52.195 32 84.653 0 70.696-57.302 128-128 128-.299 0-.61-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.756 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM224 384c0-39.894-22.814-62.144-32-72.553V96c0-35.29-28.71-64-64-64S64 60.71 64 96v215.447c-9.467 10.728-31.797 32.582-31.999 72.049-.269 52.706 42.619 96.135 95.312 96.501L128 480c52.935 0 96-43.065 96-96z\"]\n};\nvar faTheta = {\n prefix: 'fal',\n iconName: 'theta',\n icon: [352, 512, [], \"f69e\", \"M176 32C78.8 32 0 132.29 0 256s78.8 224 176 224 176-100.29 176-224S273.2 32 176 32zm0 32c75.35 0 137.26 77.61 143.39 176H32.61C38.74 141.61 100.65 64 176 64zm0 384c-75.35 0-137.26-77.61-143.39-176H319.4c-6.14 98.39-68.05 176-143.4 176z\"]\n};\nvar faThumbsDown = {\n prefix: 'fal',\n iconName: 'thumbs-down',\n icon: [512, 512, [], \"f165\", \"M496.656 226.317c5.498-22.336 2.828-49.88-9.627-69.405 4.314-23.768-3.099-49.377-18.225-67.105C470.724 35.902 437.75 0 378.468.014c-3.363-.03-35.508-.003-41.013 0C260.593-.007 195.917 40 160 40h-10.845c-5.64-4.975-13.042-8-21.155-8H32C14.327 32 0 46.327 0 64v256c0 17.673 14.327 32 32 32h96c17.673 0 32-14.327 32-32v-12.481c.85.266 1.653.549 2.382.856C184 320 219.986 377.25 243.556 400.82c9.9 9.9 13.118 26.44 16.525 43.951C265.784 474.082 276.915 512 306.91 512c59.608 0 82.909-34.672 82.909-93.08 0-30.906-11.975-52.449-20.695-69.817h70.15c40.654 0 72.726-34.896 72.727-72.571-.001-20.532-5.418-37.341-15.345-50.215zM128 320H32V64h96v256zm311.273-2.898H327.274c0 40.727 30.545 59.628 30.545 101.817 0 25.574 0 61.091-50.909 61.091-20.363-20.364-10.182-71.272-40.727-101.817-28.607-28.607-71.272-101.818-101.818-101.818H160V72.74h4.365c34.701 0 101.818-40.727 173.09-40.727 3.48 0 37.415-.03 40.727 0 38.251.368 65.505 18.434 57.212 70.974 16.367 8.78 28.538 39.235 15.015 61.996C472 176 472 224 456.017 235.648 472 240 480.1 256.012 480 276.375c-.1 20.364-17.997 40.727-40.727 40.727zM104 272c0 13.255-10.745 24-24 24s-24-10.745-24-24 10.745-24 24-24 24 10.745 24 24z\"]\n};\nvar faThumbsUp = {\n prefix: 'fal',\n iconName: 'thumbs-up',\n icon: [512, 512, [], \"f164\", \"M496.656 285.683C506.583 272.809 512 256 512 235.468c-.001-37.674-32.073-72.571-72.727-72.571h-70.15c8.72-17.368 20.695-38.911 20.695-69.817C389.819 34.672 366.518 0 306.91 0c-29.995 0-41.126 37.918-46.829 67.228-3.407 17.511-6.626 34.052-16.525 43.951C219.986 134.75 184 192 162.382 203.625c-2.189.922-4.986 1.648-8.032 2.223C148.577 197.484 138.931 192 128 192H32c-17.673 0-32 14.327-32 32v256c0 17.673 14.327 32 32 32h96c17.673 0 32-14.327 32-32v-8.74c32.495 0 100.687 40.747 177.455 40.726 5.505.003 37.65.03 41.013 0 59.282.014 92.255-35.887 90.335-89.793 15.127-17.727 22.539-43.337 18.225-67.105 12.456-19.526 15.126-47.07 9.628-69.405zM32 480V224h96v256H32zm424.017-203.648C472 288 472 336 450.41 347.017c13.522 22.76 1.352 53.216-15.015 61.996 8.293 52.54-18.961 70.606-57.212 70.974-3.312.03-37.247 0-40.727 0-72.929 0-134.742-40.727-177.455-40.727V235.625c37.708 0 72.305-67.939 106.183-101.818 30.545-30.545 20.363-81.454 40.727-101.817 50.909 0 50.909 35.517 50.909 61.091 0 42.189-30.545 61.09-30.545 101.817h111.999c22.73 0 40.627 20.364 40.727 40.727.099 20.363-8.001 36.375-23.984 40.727zM104 432c0 13.255-10.745 24-24 24s-24-10.745-24-24 10.745-24 24-24 24 10.745 24 24z\"]\n};\nvar faThumbtack = {\n prefix: 'fal',\n iconName: 'thumbtack',\n icon: [384, 512, [], \"f08d\", \"M300.8 203.9L290.7 128H328c13.2 0 24-10.8 24-24V24c0-13.2-10.8-24-24-24H56C42.8 0 32 10.8 32 24v80c0 13.2 10.8 24 24 24h37.3l-10.1 75.9C34.9 231.5 0 278.4 0 335.2c0 8.8 7.2 16 16 16h160V472c0 .7.1 1.3.2 1.9l8 32c2 8 13.5 8.1 15.5 0l8-32c.2-.6.2-1.3.2-1.9V351.2h160c8.8 0 16-7.2 16-16 .1-56.8-34.8-103.7-83.1-131.3zM33.3 319.2c6.8-42.9 39.6-76.4 79.5-94.5L128 96H64V32h256v64h-64l15.3 128.8c40 18.2 72.7 51.8 79.5 94.5H33.3z\"]\n};\nvar faThunderstorm = {\n prefix: 'fal',\n iconName: 'thunderstorm',\n icon: [512, 512, [], \"f76c\", \"M368 256h-73.8l25-74.9c1.6-4.9.8-10.2-2.2-14.4-3-4.2-7.8-6.6-13-6.6H192c-7.7 0-14.3 5.5-15.8 13.1l-32 176c-.8 4.7.4 9.5 3.5 13.1s7.5 5.8 12.3 5.8h80v128c0 7.4 5.1 13.9 12.3 15.6 1.2.3 2.5.4 3.7.4 6 0 11.6-3.3 14.3-8.8l112-224c2.5-5 2.2-10.8-.7-15.6-2.9-4.8-8.1-7.7-13.6-7.7zm-96 172.2V352c0-8.8-7.2-16-16-16h-76.8l26.2-144h76.5l-25 74.9c-1.6 4.9-.8 10.2 2.2 14.4 3 4.2 7.8 6.6 13 6.6h70.1L272 428.2zm143.7-315.9C411.8 67.4 373.9 32 328 32c-17.8 0-34.8 5.3-49.2 15.2C256.3 17.7 221.5 0 184 0 117.8 0 64 53.8 64 120v.4c-38.3 16-64 53.5-64 95.6 0 57.3 46.7 104 104 104h13l5.8-32H104c-39.7 0-72-32.3-72-72 0-32.3 21.9-60.7 53.3-69.2l13.3-3.6-2-17.2c-.3-2-.6-4-.6-6 0-48.5 39.5-88 88-88 32.2 0 61.8 17.9 77.2 46.8l10.6 19.8L287 82.1C297.9 70.4 312.4 64 328 64c30.9 0 56 25.1 56 56 0 1.6-.3 3.1-.8 6.9l-2.5 20 23.5-2.4c1.2-.2 2.5-.4 3.8-.4 39.7 0 72 32.3 72 72 0 38-29.7 68.9-67 71.5-.7 2-1.1 4-2.1 6L397.7 320H408c57.3 0 104-46.7 104-104 0-54.8-42.6-99.8-96.3-103.7z\"]\n};\nvar faThunderstormMoon = {\n prefix: 'fal',\n iconName: 'thunderstorm-moon',\n icon: [576, 512, [], \"f76d\", \"M573.9 237.5c-3.6-7.7-11.5-12.6-19.9-12.6h-1.4l-2.7.4c-6.3 1.2-12.6 1.8-18.9 1.8-54.4 0-98.7-44-98.7-98.2 0-35.2 19.2-67.9 50.1-85.3 8.2-4.6 12.4-13.6 10.9-22.8-1.6-9.3-8.5-16.3-17.8-18C465.7.9 455.8 0 446 0c-67.1 0-124.7 41.1-148.8 99.2 10.5 2.5 20.5 6.3 29.7 11.5 19.2-45.5 64.2-77.8 116.8-78.7-27.3 24.4-43.5 59.6-43.5 96.8 0 70.7 57 128.5 127.6 130.1-22.3 18.2-50.3 28.4-79.8 28.8v.2c0 11-1.8 21.5-4.5 31.8.8 0 1.6.2 2.4.2 48.7 0 94.3-21.6 125-59.2 5.5-6.5 6.6-15.5 3-23.2zM304 304h-59.5l11-44.1c1.2-4.8.1-9.8-2.9-13.7s-7.7-6.2-12.6-6.2h-80c-7.3 0-13.8 5-15.5 12.1l-32 128C110 390.3 117.7 400 128 400h61.6l-13.4 93.7c-1.6 11.1 7.7 18.2 15.8 18.2 8.5 0 12.7-6.2 13.6-7.6 3.4-5.3 111.9-175.8 111.9-175.8 6.8-10.7-1-24.5-13.5-24.5zm-85.7 121.2l5.6-38.9c.7-4.6-.7-9.2-3.8-12.7-3-3.5-7.5-5.5-12.1-5.5h-59.5l24-96h47l-11 44.1c-2.5 10.2 5.2 19.9 15.5 19.9h50.8c-24.1 37.9-42.6 66.9-56.5 89.1zm133-227.9C346 158.2 312.5 128 272 128c-8.6 0-17 1.4-25.2 4.3-19.7-23-48.2-36.3-78.8-36.3-56.5 0-102.7 45.3-104 101.6C26.2 210.9 0 246.9 0 288c0 47.5 34.7 86.8 80.1 94.4.1-3.4.5-6.7 1.3-10.1l5.3-21.3C55.9 346.5 32 320.1 32 288c0-30.6 21.8-57 52-62.8l14.5-2.8-2-18c-.2-1.5-.4-2.9-.4-4.4 0-39.7 32.3-72 72-72 24.3 0 46.8 12.2 60.2 32.8l8.1 12.4 13-7.1c32.7-17.8 70.7 8.2 70.8 40.4l-.2 16.2 12.8 2.6c29.8 6 51.3 32.3 51.3 62.7 0 27-16.9 50-40.5 59.4-2.8 4.3-11.6 18.2-23.3 36.6 52.9-.1 95.8-43.1 95.8-96-.1-41.3-26.7-77.6-64.8-90.7z\"]\n};\nvar faThunderstormSun = {\n prefix: 'fal',\n iconName: 'thunderstorm-sun',\n icon: [640, 512, [], \"f76e\", \"M160.3 291.7c-3.6-5.3-9.9-8.1-16.4-6.8l-56 11.1L99 240c1.2-6.4-1.4-12.8-6.8-16.4l-47.4-31.8L92.2 160c5.4-3.6 8-10.1 6.8-16.4l-11.1-56 56 11.1c6.5 1.3 12.8-1.4 16.4-6.8L192 44.4l31.8 47.5c3.6 5.3 10 8.1 16.4 6.8L319.6 83c8.7-1.7 14.3-10.1 12.6-18.8-1.7-8.7-10.3-14.5-18.8-12.6l-68.9 13.6-39.2-58.5c-5.9-8.9-20.6-8.9-26.6 0l-39.1 58.5-69-13.7c-5.3-1.1-10.7.6-14.4 4.4-3.8 3.8-5.4 9.2-4.4 14.5l13.7 69-58.4 39.1c-4.4 3-7.1 7.9-7.1 13.3 0 5.3 2.7 10.3 7.1 13.3l58.4 39.1-13.7 69c-1 5.3.6 10.7 4.4 14.5 3.8 3.8 9 5.5 14.4 4.4l68.9-13.7 39.1 58.5c3.1 4.6 8.2 7.1 13.3 7.1 3.1 0 6.2-.9 8.9-2.7 7.3-4.9 9.3-14.9 4.4-22.2l-44.9-67.4zM192 140c26.4 0 48 20 51.1 45.6 4.8-3.6 9.8-6.9 15.1-9.9 1.5-8.4 3.9-16.5 6.8-24.3-14.3-25.7-41.5-43.4-73-43.4-46.2 0-83.7 37.6-83.7 83.8s37.5 83.8 83.7 83.8c.3 0 .6-.1.9-.1 1.1-11.4 3.7-22.4 7.7-32.8-2.8.5-5.6.9-8.5.9-28.5 0-51.7-23.2-51.7-51.7-.1-28.6 23.1-51.9 51.6-51.9zm336 164h-59.5l11-44.1c1.2-4.8.1-9.8-2.9-13.7-3-3.9-7.7-6.2-12.6-6.2h-80c-7.3 0-13.8 5-15.5 12.1l-32 128C334 390.3 341.7 400 352 400h61.6l-13.4 93.7c-1.6 11.1 7.7 18.2 15.8 18.2 8.5 0 12.7-6.2 13.6-7.6 3.4-5.3 111.9-175.8 111.9-175.8 6.8-10.7-1-24.5-13.5-24.5zm-85.7 121.2l5.6-38.9c.7-4.6-.7-9.2-3.8-12.7-3-3.5-7.5-5.5-12.1-5.5h-59.5l24-96h47l-11 44.1c-2.5 10.2 5.2 19.9 15.5 19.9h50.8c-24.1 37.9-42.6 66.9-56.5 89.1zm133-227.9C570 158.2 536.5 128 496 128c-8.6 0-17 1.4-25.2 4.3-19.7-23-48.2-36.3-78.8-36.3-56.5 0-102.7 45.3-104 101.6-37.8 13.3-64 49.3-64 90.4 0 47.5 34.8 86.8 80.1 94.4.1-3.4.5-6.7 1.3-10.1l5.3-21.3c-30.9-4.5-54.8-30.9-54.8-63.1 0-30.6 21.8-57 52-62.8l14.5-2.8-2-18c-.2-1.5-.4-2.9-.4-4.4 0-39.7 32.3-72 72-72 24.3 0 46.8 12.2 60.2 32.7l8.1 12.4 13-7.1c32.7-17.8 70.7 8.2 70.8 40.4l-.2 16.2 12.8 2.6c29.8 6 51.3 32.3 51.3 62.7 0 27-16.9 50-40.5 59.4-2.8 4.3-11.6 18.2-23.3 36.6 52.9-.1 95.8-43.1 95.8-96 0-41.1-26.6-77.4-64.7-90.5zM560 208.8z\"]\n};\nvar faTicket = {\n prefix: 'fal',\n iconName: 'ticket',\n icon: [576, 512, [], \"f145\", \"M544 224h32V112c0-26.51-21.49-48-48-48H48C21.49 64 0 85.49 0 112v112h32c17.673 0 32 14.327 32 32s-14.327 32-32 32H0v112c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V288h-32c-17.673 0-32-14.327-32-32s14.327-32 32-32zm0 96v80c0 8.823-7.177 16-16 16H48c-8.823 0-16-7.177-16-16v-80c35.29 0 64-28.71 64-64s-28.71-64-64-64v-80c0-8.823 7.177-16 16-16h480c8.823 0 16 7.177 16 16v80c-35.29 0-64 28.71-64 64s28.71 64 64 64z\"]\n};\nvar faTicketAlt = {\n prefix: 'fal',\n iconName: 'ticket-alt',\n icon: [576, 512, [], \"f3ff\", \"M424 160H152c-13.255 0-24 10.745-24 24v144c0 13.255 10.745 24 24 24h272c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24zm-8 160H160V192h256v128zm128-96h32V112c0-26.51-21.49-48-48-48H48C21.49 64 0 85.49 0 112v112h32c17.673 0 32 14.327 32 32s-14.327 32-32 32H0v112c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V288h-32c-17.673 0-32-14.327-32-32s14.327-32 32-32zm0 96v80c0 8.823-7.177 16-16 16H48c-8.823 0-16-7.177-16-16v-80c35.29 0 64-28.71 64-64s-28.71-64-64-64v-80c0-8.823 7.177-16 16-16h480c8.823 0 16 7.177 16 16v80c-35.29 0-64 28.71-64 64s28.71 64 64 64z\"]\n};\nvar faTilde = {\n prefix: 'fal',\n iconName: 'tilde',\n icon: [448, 512, [], \"f69f\", \"M416 168v71.85c0 35.91-23.16 69.16-58.01 77.84-31.8 7.91-64.07-4.93-81.96-30.74L200.75 178.4c-21.13-30.46-55.42-50.58-92.49-50.38C48.5 128.32 0 177.02 0 236.84V312c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-71.85c0-35.91 23.16-69.16 58.01-77.84 31.8-7.91 64.07 4.93 81.96 30.74l75.28 108.55c21.13 30.46 55.42 50.58 92.49 50.38 59.76-.3 108.26-49 108.26-108.82V168c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8z\"]\n};\nvar faTimes = {\n prefix: 'fal',\n iconName: 'times',\n icon: [320, 512, [], \"f00d\", \"M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z\"]\n};\nvar faTimesCircle = {\n prefix: 'fal',\n iconName: 'times-circle',\n icon: [512, 512, [], \"f057\", \"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 464c-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216zm94.8-285.3L281.5 256l69.3 69.3c4.7 4.7 4.7 12.3 0 17l-8.5 8.5c-4.7 4.7-12.3 4.7-17 0L256 281.5l-69.3 69.3c-4.7 4.7-12.3 4.7-17 0l-8.5-8.5c-4.7-4.7-4.7-12.3 0-17l69.3-69.3-69.3-69.3c-4.7-4.7-4.7-12.3 0-17l8.5-8.5c4.7-4.7 12.3-4.7 17 0l69.3 69.3 69.3-69.3c4.7-4.7 12.3-4.7 17 0l8.5 8.5c4.6 4.7 4.6 12.3 0 17z\"]\n};\nvar faTimesHexagon = {\n prefix: 'fal',\n iconName: 'times-hexagon',\n icon: [576, 512, [], \"f2ee\", \"M441.5 39.8C432.9 25.1 417.1 16 400 16H176c-17.1 0-32.9 9.1-41.5 23.8l-112 192c-8.7 14.9-8.7 33.4 0 48.4l112 192c8.6 14.7 24.4 23.8 41.5 23.8h224c17.1 0 32.9-9.1 41.5-23.8l112-192c8.7-14.9 8.7-33.4 0-48.4l-112-192zm84.3 224.3l-112 192c-2.9 4.9-8.2 7.9-13.8 7.9H176c-5.7 0-11-3-13.8-7.9l-112-192c-2.9-5-2.9-11.2 0-16.1l112-192c2.8-5 8.1-8 13.8-8h224c5.7 0 11 3 13.8 7.9l112 192c2.9 5 2.9 11.2 0 16.2zm-143 78.2l-8.5 8.5c-4.7 4.7-12.3 4.7-17 0L288 281.5l-69.3 69.3c-4.7 4.7-12.3 4.7-17 0l-8.5-8.5c-4.7-4.7-4.7-12.3 0-17l69.3-69.3-69.3-69.3c-4.7-4.7-4.7-12.3 0-17l8.5-8.5c4.7-4.7 12.3-4.7 17 0l69.3 69.3 69.3-69.3c4.7-4.7 12.3-4.7 17 0l8.5 8.5c4.7 4.7 4.7 12.3 0 17L313.5 256l69.3 69.3c4.6 4.7 4.6 12.3 0 17z\"]\n};\nvar faTimesOctagon = {\n prefix: 'fal',\n iconName: 'times-octagon',\n icon: [512, 512, [], \"f2f0\", \"M361.5 14.1c-9-9-21.2-14.1-33.9-14.1H184.5c-12.7 0-24.9 5.1-33.9 14.1L14.1 150.5c-9 9-14.1 21.2-14.1 33.9v143.1c0 12.7 5.1 24.9 14.1 33.9l136.5 136.5c9 9 21.2 14.1 33.9 14.1h143.1c12.7 0 24.9-5.1 33.9-14.1L498 361.4c9-9 14.1-21.2 14.1-33.9v-143c0-12.7-5.1-24.9-14.1-33.9L361.5 14.1zM480 327.5c0 4.3-1.7 8.3-4.7 11.3L338.9 475.3c-3 3-7 4.7-11.3 4.7H184.5c-4.3 0-8.3-1.7-11.3-4.7L36.7 338.9c-3-3-4.7-7-4.7-11.3V184.5c0-4.3 1.7-8.3 4.7-11.3L173.1 36.7c3-3 7-4.7 11.3-4.7h143.1c4.3 0 8.3 1.7 11.3 4.7l136.5 136.5c3 3 4.7 7 4.7 11.3v143zm-129.2 14.8l-8.5 8.5c-4.7 4.7-12.3 4.7-17 0L256 281.5l-69.3 69.3c-4.7 4.7-12.3 4.7-17 0l-8.5-8.5c-4.7-4.7-4.7-12.3 0-17l69.3-69.3-69.3-69.3c-4.7-4.7-4.7-12.3 0-17l8.5-8.5c4.7-4.7 12.3-4.7 17 0l69.3 69.3 69.3-69.3c4.7-4.7 12.3-4.7 17 0l8.5 8.5c4.7 4.7 4.7 12.3 0 17L281.5 256l69.3 69.3c4.6 4.7 4.6 12.3 0 17z\"]\n};\nvar faTimesSquare = {\n prefix: 'fal',\n iconName: 'times-square',\n icon: [448, 512, [], \"f2d3\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352zm-97.2-245.3L249.5 256l69.3 69.3c4.7 4.7 4.7 12.3 0 17l-8.5 8.5c-4.7 4.7-12.3 4.7-17 0L224 281.5l-69.3 69.3c-4.7 4.7-12.3 4.7-17 0l-8.5-8.5c-4.7-4.7-4.7-12.3 0-17l69.3-69.3-69.3-69.3c-4.7-4.7-4.7-12.3 0-17l8.5-8.5c4.7-4.7 12.3-4.7 17 0l69.3 69.3 69.3-69.3c4.7-4.7 12.3-4.7 17 0l8.5 8.5c4.6 4.7 4.6 12.3 0 17z\"]\n};\nvar faTint = {\n prefix: 'fal',\n iconName: 'tint',\n icon: [352, 512, [], \"f043\", \"M205.22 22.09C201.21 7.53 188.61 0 175.97 0c-12.35 0-24.74 7.2-29.19 22.09C100.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 480c-79.4 0-144-65.54-144-146.09 0-48.36 23-81.32 54.84-126.94 29.18-41.81 65.34-93.63 89.18-170.91 23.83 77.52 60.06 129.31 89.3 171.08C297.06 252.52 320 285.3 320 333.91 320 414.46 255.4 480 176 480zm0-64c-44.12 0-80-35.89-80-80 0-8.84-7.16-16-16-16s-16 7.16-16 16c0 61.75 50.25 112 112 112 8.84 0 16-7.16 16-16s-7.16-16-16-16z\"]\n};\nvar faTintSlash = {\n prefix: 'fal',\n iconName: 'tint-slash',\n icon: [640, 512, [], \"f5c7\", \"M320 480c-79.4 0-144-65.5-144-146.1 0-33.4 11.1-59.5 28.4-87.5l-25.3-20c-20.5 32.7-35.1 65.1-35.1 107.4 0 98.4 78.7 178.1 176 178.1 55.5 0 104.9-26 137.1-66.5l-25.7-20.2C405 458.4 365.2 480 320 480zm0-443.9c23.8 77.5 60.1 129.3 89.3 171.1 18.4 26.4 33.7 48.5 43.5 71.9l41.8 32.9c-12-96-101.6-142.2-145.3-289.9C345.2 7.5 332.6 0 320 0c-12.4 0-24.7 7.2-29.2 22.1-11.3 38.2-25.8 69.6-41.2 97l25.4 20c16.5-28.9 32.5-62.4 45-103zm317 449.1L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3z\"]\n};\nvar faTire = {\n prefix: 'fal',\n iconName: 'tire',\n icon: [512, 512, [], \"f631\", \"M256 0C114.62 0 0 114.62 0 256s114.62 256 256 256 256-114.62 256-256S397.38 0 256 0zm0 480C132.49 480 32 379.51 32 256S132.49 32 256 32s224 100.49 224 224-100.49 224-224 224zm0-384c-88.37 0-160 71.63-160 160s71.63 160 160 160 160-71.63 160-160S344.37 96 256 96zm0 32c22.34 0 43.04 6.26 61.34 16.36l-37.57 51.71c-7.37-2.93-15.35-4.65-23.77-4.65s-16.39 1.72-23.77 4.65l-37.57-51.71c18.3-10.1 39-16.36 61.34-16.36zM128 256c0-36.74 15.77-69.67 40.64-93.03l37.82 52.06c-9.25 11.18-15.04 25.33-15.04 40.97 0 1.38.32 2.67.41 4.03l-61.4 19.95c-1.49-7.79-2.43-15.77-2.43-23.98zm112 126.38a127.631 127.631 0 0 1-99.45-72.05l61.03-19.83c8.68 13.66 22.32 23.71 38.42 27.84v64.04zm-16-126.4c0-17.67 14.33-32 32-32s32 14.33 32 32-14.33 32-32 32-32-14.32-32-32zm48 126.4v-64.04c16.1-4.13 29.74-14.17 38.42-27.84l61.03 19.83A127.631 127.631 0 0 1 272 382.38zm48.17-122.35c.09-1.36.41-2.65.41-4.03 0-15.64-5.79-29.79-15.04-40.97l37.82-52.06C368.23 186.33 384 219.26 384 256c0 8.21-.94 16.19-2.42 23.97l-61.41-19.94z\"]\n};\nvar faTireFlat = {\n prefix: 'fal',\n iconName: 'tire-flat',\n icon: [512, 512, [], \"f632\", \"M256 128c-88.37 0-160 71.63-160 160s71.63 160 160 160 160-71.63 160-160-71.63-160-160-160zm0 32c22.34 0 43.04 6.26 61.34 16.36l-37.57 51.71c-7.37-2.93-15.35-4.65-23.77-4.65s-16.39 1.72-23.77 4.65l-37.57-51.71c18.3-10.1 39-16.36 61.34-16.36zM128 288c0-36.74 15.77-69.67 40.64-93.03l37.82 52.06c-9.25 11.18-15.04 25.33-15.04 40.97 0 1.38.32 2.67.41 4.03l-61.4 19.95c-1.49-7.79-2.43-15.77-2.43-23.98zm112 126.38a127.631 127.631 0 0 1-99.45-72.05l61.03-19.83c8.68 13.66 22.32 23.71 38.42 27.84v64.04zm-16-126.4c0-17.67 14.33-32 32-32s32 14.33 32 32-14.33 32-32 32-32-14.32-32-32zm48 126.4v-64.04c16.1-4.13 29.74-14.17 38.42-27.84l61.03 19.83A127.631 127.631 0 0 1 272 414.38zm48.17-122.35c.09-1.36.41-2.65.41-4.03 0-15.64-5.79-29.79-15.04-40.97l37.82-52.06C368.23 218.33 384 251.26 384 288c0 8.21-.94 16.19-2.42 23.97l-61.41-19.94zm156.59 125.69C499.75 378.83 512 334.39 512 288c0-141.16-114.84-256-256-256S0 146.84 0 288c0 46.39 12.25 90.83 35.24 129.72C14.95 423.32 0 441.95 0 464c0 26.47 21.53 48 48 48h416c26.47 0 48-21.53 48-48 0-22.05-14.95-40.68-35.24-46.28zM464 480H48c-8.84 0-16-7.16-16-16s7.16-16 16-16h48c8.84 0 16-7.16 16-16s-7.16-16-16-16H72.35C46.97 379.72 32 335.64 32 288 32 164.29 132.29 64 256 64s224 100.29 224 224c0 47.64-14.97 91.72-40.35 128H416c-8.84 0-16 7.16-16 16s7.16 16 16 16h48c8.84 0 16 7.16 16 16s-7.16 16-16 16z\"]\n};\nvar faTirePressureWarning = {\n prefix: 'fal',\n iconName: 'tire-pressure-warning',\n icon: [512, 512, [], \"f633\", \"M256 296.02c-13.26 0-24 10.74-24 24 0 13.25 10.74 24 24 24s24-10.75 24-24c0-13.26-10.74-24-24-24zm-7.95-24h15.9c6.87 0 12.61-5.2 13.29-12.03l10.69-149.29c.79-7.87-5.39-14.69-13.29-14.69h-37.28c-7.9 0-14.08 6.82-13.29 14.69l10.69 149.29c.68 6.82 6.43 12.03 13.29 12.03zm223.46-139.11c-11.05-18.29-16.88-37.79-16.88-56.43V40c0-22.06-17.94-40-40-40h-16c-22.06 0-40 17.94-40 40v36.48c0 36.08 10.59 72.72 30.62 105.97 17.5 29.05 26.75 62.42 26.75 96.48 0 38.15-12.41 68.63-41.48 101.94-1.73 1.99-4.34 3.12-7.14 3.12H144.62c-2.81 0-5.41-1.14-7.14-3.12C108.41 347.57 96 317.08 96 278.94c0-34.07 9.25-67.43 26.75-96.47 20.04-33.27 30.62-69.92 30.62-105.99V40c0-22.06-17.94-40-40-40h-16c-22.06 0-40 17.94-40 40v36.48c0 18.63-5.83 38.14-16.87 56.42C14 176.89 0 227.38 0 278.94c0 61.68 20.7 114.12 65.14 165.05 4.48 5.14 9.55 9.62 14.86 13.73V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-29.75c10.28 3.34 20.94 5.62 32 5.69V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24h32v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24h32v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24h32v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24.07c11.06-.07 21.72-2.34 32-5.69V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-46.28c5.31-4.12 10.39-8.6 14.88-13.75C491.3 393.06 512 340.62 512 278.94c0-51.55-14-102.05-40.49-146.03zm-48.76 290.04C408.88 438.88 388.69 448 367.38 448H144.62c-21.31 0-41.5-9.12-55.38-25.05C50.19 378.19 32 332.42 32 278.94c0-45.72 12.41-90.5 35.91-129.5 14.06-23.3 21.47-48.53 21.47-72.95V40c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v36.48c0 30.25-9 61.19-26.03 89.47C74.84 199.97 64 239.05 64 278.94c0 45.92 15.22 83.86 49.38 122.98 7.81 8.95 19.19 14.08 31.25 14.08h222.75c12.06 0 23.44-5.12 31.25-14.08C432.78 362.8 448 324.86 448 278.94c0-39.89-10.84-78.97-31.34-113-17.03-28.27-26.03-59.2-26.03-89.45V40c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v36.48c0 24.42 7.41 49.66 21.47 72.94 23.5 39.02 35.91 83.8 35.91 129.52-.01 53.48-18.2 99.25-57.26 144.01z\"]\n};\nvar faTireRugged = {\n prefix: 'fal',\n iconName: 'tire-rugged',\n icon: [512, 512, [], \"f634\", \"M467.12 169.93c-.32-.79-.64-1.57-.97-2.36 13.48-22.99 10.37-53.09-9.33-72.79l-39.6-39.6c-11.33-11.33-26.4-17.57-42.43-17.57-10.86 0-21.27 2.86-30.39 8.23-.78-.32-1.55-.64-2.33-.96C335.35 19.09 311.87 0 284 0h-56c-27.87 0-51.35 19.09-58.07 44.88-.78.32-1.56.64-2.33.96-9.11-5.37-19.53-8.23-30.39-8.23-16.03 0-31.1 6.24-42.43 17.58l-39.6 39.59c-19.7 19.7-22.81 49.81-9.33 72.79-.33.78-.65 1.57-.97 2.36C19.09 176.65 0 200.13 0 228v56c0 27.86 19.09 51.35 44.88 58.07.32.79.64 1.57.97 2.36-13.48 22.99-10.37 53.09 9.33 72.79l39.6 39.6c11.33 11.33 26.4 17.57 42.43 17.57 10.86 0 21.27-2.86 30.39-8.23.78.32 1.55.64 2.33.96C176.65 492.91 200.13 512 228 512h56c27.87 0 51.35-19.09 58.07-44.88l2.34-.96c9.11 5.37 19.53 8.23 30.38 8.23 16.03 0 31.09-6.24 42.43-17.57l39.6-39.6c19.7-19.7 22.81-49.8 9.33-72.79.33-.78.65-1.57.97-2.36C492.91 335.35 512 311.86 512 284v-56c0-27.87-19.09-51.35-44.88-58.07zM480 284c0 15.46-12.54 28-28 28h-8.22c-3.88 13.02-8.98 25.51-15.34 37.24l5.76 5.76c10.93 10.93 10.93 28.66 0 39.6l-39.6 39.6c-5.47 5.47-12.63 8.2-19.8 8.2s-14.33-2.73-19.8-8.2l-5.76-5.76c-11.73 6.36-24.22 11.46-37.24 15.34V452c0 15.46-12.54 28-28 28h-56c-15.46 0-28-12.54-28-28v-8.22c-13.02-3.88-25.51-8.98-37.24-15.34L157 434.2c-5.47 5.47-12.63 8.2-19.8 8.2s-14.33-2.73-19.8-8.2l-39.6-39.6c-10.93-10.93-10.93-28.66 0-39.6l5.76-5.76C77.21 337.51 72.1 325.02 68.22 312H60c-15.46 0-28-12.54-28-28v-56c0-15.46 12.54-28 28-28h8.22c3.88-13.02 8.98-25.51 15.34-37.24L77.8 157c-10.93-10.94-10.93-28.67 0-39.6l39.6-39.6c5.47-5.47 12.63-8.2 19.8-8.2s14.33 2.73 19.8 8.2l5.76 5.76C174.49 77.2 186.98 72.1 200 68.22V60c0-15.46 12.54-28 28-28h56c15.46 0 28 12.54 28 28v8.22c13.02 3.88 25.51 8.98 37.24 15.34L355 77.8c5.47-5.47 12.63-8.2 19.8-8.2s14.33 2.73 19.8 8.2l39.6 39.6c10.93 10.93 10.93 28.66 0 39.6l-5.76 5.76c6.36 11.73 11.46 24.22 15.34 37.24H452c15.46 0 28 12.54 28 28v56zM256 95.98c-88.37 0-160 71.63-160 160s71.63 160 160 160 160-71.63 160-160-71.63-160-160-160zm0 288c-70.58 0-128-57.42-128-128s57.42-128 128-128 128 57.42 128 128-57.42 128-128 128zM256 160c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm0 143.98c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24-10.75-24-24-24zM328 232c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm-144 0c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faTired = {\n prefix: 'fal',\n iconName: 'tired',\n icon: [496, 512, [], \"f5c8\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm113.8-322.3l-80 48c-7.8 4.7-7.8 15.9 0 20.6l80 48c11.6 6.9 24-7.7 15.4-18L343.6 208l33.6-40.3c8.6-10.3-3.8-24.8-15.4-18zM134.2 266.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.6 10.3 3.8 24.9 15.4 18zM248 272c-51.9 0-115.3 43.8-123.2 106.7-.8 6.3.9 12.7 4.6 16.9.6.7 5.8 6.7 13.2 3.6 25.9-11.1 64.4-17.4 105.5-17.4s79.6 6.3 105.5 17.4c5.5 2.4 10.5-.5 13.2-3.6 3.6-4.2 5.3-10.6 4.6-16.9C363.3 315.8 299.9 272 248 272zm0 77.7c-30.6 0-59.5 3.2-84.3 9.1 15.8-32.5 53-54.8 84.3-54.8 31.3 0 68.5 22.3 84.3 54.8-24.8-5.9-53.6-9.1-84.3-9.1z\"]\n};\nvar faToggleOff = {\n prefix: 'fal',\n iconName: 'toggle-off',\n icon: [576, 512, [], \"f204\", \"M384 96c42.738 0 82.917 16.643 113.137 46.863S544 213.262 544 256s-16.643 82.917-46.863 113.137S426.738 416 384 416H192c-42.738 0-82.917-16.643-113.137-46.863S32 298.738 32 256s16.643-82.917 46.863-113.137S149.262 96 192 96h192m0-32H192C85.961 64 0 149.961 0 256s85.961 192 192 192h192c106.039 0 192-85.961 192-192S490.039 64 384 64zm-192 96c52.935 0 96 43.065 96 96s-43.065 96-96 96-96-43.065-96-96 43.065-96 96-96m0-32c-70.692 0-128 57.307-128 128s57.308 128 128 128 128-57.307 128-128-57.308-128-128-128z\"]\n};\nvar faToggleOn = {\n prefix: 'fal',\n iconName: 'toggle-on',\n icon: [576, 512, [], \"f205\", \"M384 96c88.426 0 160 71.561 160 160 0 88.426-71.561 160-160 160H192c-88.426 0-160-71.561-160-160 0-88.425 71.561-160 160-160h192m0-32H192C85.961 64 0 149.961 0 256s85.961 192 192 192h192c106.039 0 192-85.961 192-192S490.039 64 384 64zm0 304c61.856 0 112-50.144 112-112s-50.144-112-112-112-112 50.144-112 112c0 28.404 10.574 54.339 27.999 74.082C320.522 353.335 350.548 368 384 368z\"]\n};\nvar faToilet = {\n prefix: 'fal',\n iconName: 'toilet',\n icon: [384, 512, [], \"f7d8\", \"M376 32c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8H8C3.6 0 0 3.6 0 8v16c0 4.4 3.6 8 8 8h24v172.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.3V32h24zM64 32h256v160.4c-34-10.2-78.8-16.4-128-16.4s-94 6.2-128 16.4V32zm128 176c83.9 0 152 14.3 152 32s-68.1 32-152 32-152-14.3-152-32 68.1-32 152-32zM96 480l19.5-63.9C139 426.3 164.8 432 192 432s53-5.7 76.5-15.9L288 480H96zm96-80c-75.2 0-138.1-52.3-155.1-122.4 34.9 16 91.3 26.4 155.1 26.4s120.2-10.4 155.1-26.4C330.1 347.7 267.2 400 192 400zM152 64h-48c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V72c0-4.4-3.6-8-8-8z\"]\n};\nvar faToiletPaper = {\n prefix: 'fal',\n iconName: 'toilet-paper',\n icon: [576, 512, [], \"f71e\", \"M112 192c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.17-16-16-16zm64 0c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.17-16-16-16zm64 0c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.17-16-16-16zm64 0c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.17-16-16-16zM464 0H144C82.14 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 512h312.92c13.77 0 26-8.81 30.36-21.88 11.16-33.48 21.59-63.54 24.11-106.12H464c61.86 0 112-85.96 112-192S525.86 0 464 0zM352 192v172.07c0 46.83-9.67 75.79-21.9 112.45l-1.16 3.48H38.29c.54-1.61 1.08-3.18 1.61-4.72C55.44 429.55 64 404.37 64 364.07V192c0-94.29 42.16-160 80-160h258.14C371.93 66.39 352 125.18 352 192zm112 160c-37.84 0-80-65.71-80-160s42.16-160 80-160 80 65.71 80 160-42.16 160-80 160zm0-208c-13.25 0-24 21.49-24 48s10.75 48 24 48c13.26 0 24-21.49 24-48s-10.74-48-24-48z\"]\n};\nvar faToiletPaperAlt = {\n prefix: 'fal',\n iconName: 'toilet-paper-alt',\n icon: [576, 512, [], \"f71f\", \"M464 0H144C82.14 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 512h312.92c13.77 0 26-8.81 30.36-21.88 11.16-33.48 21.59-63.54 24.11-106.12H464c61.86 0 112-85.96 112-192S525.86 0 464 0zM352 192v172.07c0 46.83-9.67 75.79-21.9 112.45l-1.16 3.48H38.29c.54-1.61 1.08-3.18 1.61-4.72C55.44 429.55 64 404.37 64 364.07V192c0-94.29 42.16-160 80-160h258.14C371.93 66.39 352 125.18 352 192zm112 160c-37.84 0-80-65.71-80-160s42.16-160 80-160 80 65.71 80 160-42.16 160-80 160zm0-208c-13.25 0-24 21.49-24 48s10.75 48 24 48c13.26 0 24-21.49 24-48s-10.74-48-24-48z\"]\n};\nvar faToiletPaperSlash = {\n prefix: 'fal',\n iconName: 'toilet-paper-slash',\n icon: [640, 512, [], \"e072\", \"M472,192c0,26.52,10.75,48,24,48s24-21.48,24-48-10.73-48-24-48S472,165.48,472,192ZM176,32H434.14C403.94,66.39,384,125.19,384,192v33l39,30.71A285.69,285.69,0,0,1,416,192c0-94.3,42.16-160,80-160s80,65.7,80,160c0,68.5-22.32,121.52-49,145.62l25.43,20C585.64,324.33,608,262.71,608,192,608,86,557.86,0,496,0H176c-18.35,0-35.62,7.71-50.9,21.12l26,20.45C159.27,35.66,167.72,32,176,32ZM362.09,476.52,360.94,480H70.3c.53-1.61,1.07-3.19,1.61-4.72C87.44,429.55,96,404.38,96,364.06V192c0-10.29.7-20.08,1.65-29.64L68.37,139.3A322.2,322.2,0,0,0,64,192V364.06c0,41.13-9.8,62.78-31.17,126.88A16,16,0,0,0,48,512H360.94a32,32,0,0,0,30.36-21.87C400,464,408.11,439.8,412.53,410.31L382.79,386.9C380.15,420.87,372.16,446.36,362.09,476.52Zm274.9,8.8L23,1.8A7.88,7.88,0,0,0,11.77,3l-10,12.5A7.94,7.94,0,0,0,3,26.71L216,194.42h0l3.92,3.09h0L617,510.23A8,8,0,0,0,628.2,509l10-12.5A7.86,7.86,0,0,0,637,485.32Z\"]\n};\nvar faTombstone = {\n prefix: 'fal',\n iconName: 'tombstone',\n icon: [512, 512, [], \"f720\", \"M496 416h-48V200.05C448 94.92 366.99 3.24 261.9.09 153.17-3.17 64 84 64 192v224H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zM96 192c0-88.22 71.78-160 160-160s160 71.78 160 160v224H96V192zm383.95 288H32.01l.04-32h447.94l-.04 32zM336.02 144h-32v-32c0-8.84-7.16-16-16-16h-64.01c-8.85 0-16 7.16-16 16v32h-32c-8.85 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h32v96c0 8.84 7.16 16 16 16h64.01c8.85 0 16-7.16 16-16v-96h32c8.85 0 16-7.16 16-16v-64c0-8.84-7.15-16-16-16zm-16 64h-48.01v112h-32V208H192v-32h48.01v-48h32v48h48.01v32z\"]\n};\nvar faTombstoneAlt = {\n prefix: 'fal',\n iconName: 'tombstone-alt',\n icon: [512, 512, [], \"f721\", \"M496 416h-48V200.05C448 94.92 366.99 3.24 261.9.09 153.17-3.17 64 84 64 192v224H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zM96 192c0-88.22 71.78-160 160-160s160 71.78 160 160v224H96V192zm383.95 288H32.01l.04-32h447.94l-.04 32z\"]\n};\nvar faToolbox = {\n prefix: 'fal',\n iconName: 'toolbox',\n icon: [512, 512, [], \"f552\", \"M502.63 214.63l-45.25-45.26c-6-6-14.14-9.37-22.63-9.37H384V80c0-26.47-21.53-48-48-48H176c-26.47 0-48 21.53-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.63V448c0 17.67 14.33 32 32 32h448c17.67 0 32-14.33 32-32V237.25c0-8.48-3.37-16.62-9.37-22.62zM160 80c0-8.83 7.19-16 16-16h160c8.81 0 16 7.17 16 16v80H160V80zm320 368H32v-96h96v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24h192v24c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-24h96v96zm-96-128v-24c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v24H160v-24c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v24H32v-82.75L77.25 192h357.49L480 237.25V320h-96z\"]\n};\nvar faTools = {\n prefix: 'fal',\n iconName: 'tools',\n icon: [512, 512, [], \"f7d9\", \"M502.6 389.5L378.2 265c-15.6-15.6-36.1-23.4-56.6-23.4-15.4 0-30.8 4.4-44.1 13.3L192 169.4V96L64 0 0 64l96 128h73.4l85.5 85.5c-20.6 31.1-17.2 73.3 10.2 100.7l124.5 124.5c6.2 6.2 14.4 9.4 22.6 9.4 8.2 0 16.4-3.1 22.6-9.4l67.9-67.9c12.4-12.6 12.4-32.8-.1-45.3zM160 158.1v1.9h-48L42.3 67 67 42.3l93 69.7v46.1zM412.1 480L287.7 355.5c-9.1-9.1-14.1-21.1-14.1-33.9 0-12.8 5-24.9 14.1-33.9 9.1-9.1 21.1-14.1 33.9-14.1 12.8 0 24.9 5 33.9 14.1L480 412.1 412.1 480zM64 432c0 8.8 7.2 16 16 16s16-7.2 16-16-7.2-16-16-16-16 7.2-16 16zM276.8 66.9C299.5 44.2 329.4 32 360.6 32c6.9 0 13.8.6 20.7 1.8L312 103.2l13.8 83 83.1 13.8 69.3-69.3c6.7 38.2-5.3 76.8-33.1 104.5-8.9 8.9-19.1 16-30 21.5l23.6 23.6c10.4-6.2 20.2-13.6 29-22.5 37.8-37.8 52.7-91.4 39.7-143.3-2.3-9.5-9.7-17-19.1-19.6-9.5-2.6-19.7 0-26.7 7l-63.9 63.9-44.2-7.4-7.4-44.2L410 50.3c6.9-6.9 9.6-17.1 7-26.5-2.6-9.5-10.2-16.8-19.7-19.2C345.6-8.3 292 6.5 254.1 44.3c-12.9 12.9-22.9 27.9-30.1 44v67.8l22.1 22.1c-9.6-40.4 1.6-82.2 30.7-111.3zM107 467.1c-16.6 16.6-45.6 16.6-62.2 0-17.1-17.1-17.1-45.1 0-62.2l146.1-146.1-22.6-22.6L22.2 382.3c-29.6 29.6-29.6 77.8 0 107.5C36.5 504.1 55.6 512 75.9 512c20.3 0 39.4-7.9 53.7-22.3L231.4 388c-6.7-9.2-11.8-19.3-15.5-29.8L107 467.1z\"]\n};\nvar faTooth = {\n prefix: 'fal',\n iconName: 'tooth',\n icon: [448, 512, [], \"f5c9\", \"M443.94 96.25c-11.03-45.28-47.12-82.08-92.02-93.73-27.93-7.22-57.56 1.12-89.08 24.34-12.58 9.24-44.2 24.48-77.59.06l-.4-.28c-.06-.04-.13-.04-.19-.08C153.32 3.6 123.92-4.66 96.05 2.54c-44.87 11.64-80.99 48.44-92 93.72-9.61 39.48-1.97 78.7 21.5 110.44 20.51 27.73 32.06 61.84 36.29 107.34 3.62 38.69 9.25 89.61 20.93 140.31l7.81 33.97c3.22 13.95 15.4 23.69 29.65 23.69 14.03 0 26.18-9.55 29.53-23.16l34.5-138.44c4.56-18.33 20.9-31.14 39.74-31.14s35.18 12.81 39.74 31.16l34.5 138.41a30.348 30.348 0 0 0 29.53 23.17c14.25 0 26.43-9.73 29.65-23.69l7.81-33.97c11.69-50.72 17.31-101.64 20.93-140.31 4.28-45.56 15.81-79.66 36.31-107.34 23.47-31.76 31.1-70.98 21.47-110.45zm-47.21 91.41c-24.09 32.56-37.59 71.76-42.43 123.39-3.5 37.7-9 87.23-20.25 136.11l-6.34 27.59-32.9-132.06c-8.12-32.64-37.25-55.42-70.8-55.42s-62.68 22.78-70.8 55.41l-31.43 138.45-7.81-33.97c-11.25-48.86-16.75-98.39-20.25-136.09-4.81-51.56-18.31-90.78-42.45-123.41-17.72-23.97-23.45-53.75-16.12-83.84 8.26-33.98 35.32-61.58 68.94-70.3 24.3-6.27 48.55 9.13 62.12 19.14.07.05.15.08.21.13.03.02.04.05.07.07l80.33 56.25c10.7 7.43 20.15-.87 22.28-3.94 5.09-7.23 3.31-17.2-3.91-22.28L245.5 69.11c13.05-3.13 25.54-8.55 36.31-16.47 23.5-17.36 43.74-23.89 62.09-19.14 33.62 8.73 60.71 36.33 68.99 70.31 7.3 30.1 1.59 59.88-16.16 83.85z\"]\n};\nvar faToothbrush = {\n prefix: 'fal',\n iconName: 'toothbrush',\n icon: [640, 512, [], \"f635\", \"M624 416H448V224h-32v192h-32V224h-32v192h-32V224h-32v192h-32V224h-32v192h-32V224h-32v192h-32V224H96v192H64V224H32v192H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h608c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zm-16 64H32v-32h576v32zM64 192h352c35.35 0 64-28.65 64-64C480 57.31 422.69 0 352 0c23.62 23.62 6.89 64-26.51 64H64C28.65 64 0 92.65 0 128s28.65 64 64 64zm0-96h261.49c28.21 0 53.41-16.84 64.2-42.9 1.59-3.84 2.82-7.76 3.69-11.72C425.66 56.87 448 89.88 448 128c0 17.64-14.36 32-32 32H64c-17.64 0-32-14.36-32-32s14.36-32 32-32z\"]\n};\nvar faTorah = {\n prefix: 'fal',\n iconName: 'torah',\n icon: [640, 512, [], \"f6a0\", \"M210.64 255l-33.39 55.86a24.16 24.16 0 0 0 20.69 36.58H266l33.44 55.87A23.72 23.72 0 0 0 320 415a24.13 24.13 0 0 0 20.76-11.86l33.31-55.68h68a24.31 24.31 0 0 0 21.13-12.25 23.67 23.67 0 0 0-.28-24.15L429.35 255l33.42-55.86a24.16 24.16 0 0 0-20.7-36.58H374l-33.45-55.87A23.71 23.71 0 0 0 320.06 95a24.11 24.11 0 0 0-20.83 11.86l-33.31 55.68h-68a24.3 24.3 0 0 0-21.13 12.26 23.67 23.67 0 0 0 .28 24.12zm-4.14 63.46l21-35.24 21.1 35.24zm113.56 62.87l-20.29-33.89h40.55zm113.49-62.87H391.4l21.06-35.22zm-.06-126.92l-21 35.24-21.11-35.24zM320 128.69l20.22 33.87h-40.54zm-37.65 62.83h75.22l38 63.48-37.92 63.46h-75.23l-38-63.46zm-33.76 0l-21 35.22-21.1-35.22zM576-1c-28.32 0-51.57 13.22-60.2 32H124.2C115.57 12.22 92.32-1 64-1 28.12-1 0 20.08 0 47v416c0 26.92 28.12 48 64 48 28.32 0 51.57-13.22 60.2-32h391.6c8.63 18.78 31.88 32 60.2 32 35.88 0 64-21.08 64-48V47c0-26.92-28.12-48-64-48zM96 63v400c0 6.38-12.75 16-32 16s-32-9.62-32-16V47c0-6.37 12.75-16 32-16s32 9.63 32 16zm416 384H128V63h384zm96 16c0 6.38-12.75 16-32 16s-32-9.62-32-16V47c0-6.37 12.75-16 32-16s32 9.63 32 16z\"]\n};\nvar faToriiGate = {\n prefix: 'fal',\n iconName: 'torii-gate',\n icon: [512, 512, [], \"f6a1\", \"M480 160c17.67 0 32-14.33 32-32V0a303.17 303.17 0 0 1-135.55 32h-240.9A303.17 303.17 0 0 1 0 0v128c0 17.67 14.33 32 32 32h32v96H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h56v216c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V288h320v216c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V288h56c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8h-56v-96h32zM32 128V47.56C65.39 58.38 100.49 64 135.55 64h240.89c35.07 0 70.17-5.62 103.55-16.44V128H32zm64 32h144v96H96v-96zm320 96H272v-96h144v96z\"]\n};\nvar faTornado = {\n prefix: 'fal',\n iconName: 'tornado',\n icon: [512, 512, [], \"f76f\", \"M429.1 25.2c7.4-10.6 0-25.2-12.9-25.2h-400C7.1 0-.3 7.6 0 16.5c13.3 352.7 452 219.8 331.7 472.6-5 10.6 2.6 22.9 14.3 22.9h27.4c7.9 0 15.8-3 21.7-8.3 320.6-286.7-138.9-229.8 34-478.5zM386.7 32c-13.7 23.5-22 44.6-26.4 64H45.5C39.4 77.1 35 56 33 32h353.7zM58.4 128h298c-.1 24.5 6.8 45.5 17.2 64h-265c-19.9-17.3-37.1-38.1-50.2-64zm95.3 96h242.6c11.1 12.9 23.2 24.5 34.4 35.2 11.2 10.7 20.2 19.9 27.9 28.8H287.7c-15.9-8-32.7-15.5-49.8-23-28.6-12.6-57.5-25.3-84.2-41zm185.2 96h138.8c1.2 4.4 2.4 8.7 2.4 13.3-.2 14.4-6.8 31.4-19.1 50.7h-80.5c-1-4-1.6-8.1-3-11.9-7.9-21.2-21.5-37.9-38.6-52.1zm34.5 160h-2.9c8.9-23.3 13.2-44.4 13.6-64h53.1c-16.6 19.5-37.8 40.8-63.8 64z\"]\n};\nvar faTractor = {\n prefix: 'fal',\n iconName: 'tractor',\n icon: [640, 512, [], \"f722\", \"M176 256c-44.18 0-80 35.82-80 80s35.82 80 80 80 80-35.82 80-80-35.82-80-80-80zm0 120c-22.06 0-40-17.94-40-40s17.94-40 40-40 40 17.94 40 40-17.94 40-40 40zm432-184h-64v-10.95c0-22.36 7.8-43.5 22.13-60.33 2.77-3.25 2.81-7.98-.21-11l-11.33-11.33c-3.22-3.22-8.62-3.23-11.63.2-20.02 22.82-30.96 51.79-30.96 82.46V192H368.57L284.73 18.1A32.02 32.02 0 0 0 255.9 0H128c-17.67 0-32 14.33-32 32v155.75c-10.76-1.46-22.02 1.41-30.31 9.65l-28.28 28.28c-12.81 12.83-13.94 33-3.31 47.09-1.12 2.5-2.19 5.03-3.16 7.58C13.47 282.83 0 297.86 0 316v40c0 18.14 13.47 33.17 30.94 35.64.97 2.55 2.03 5.08 3.16 7.58-4.69 6.2-7.22 13.7-7.22 21.61-.03 9.62 3.72 18.69 10.53 25.48l28.28 28.28c12.88 12.83 33.03 13.94 47.09 3.33 2.5 1.11 5.03 2.16 7.56 3.14C122.81 498.52 137.88 512 156 512h40c18.12 0 33.19-13.48 35.66-30.94 2.53-.98 5.06-2.03 7.56-3.14 14.12 10.61 34.28 9.5 47.09-3.33l28.28-28.28c6.81-6.8 10.56-15.86 10.53-25.48 0-7.91-2.53-15.44-7.22-21.61 1.12-2.5 2.19-5.03 3.16-7.58 6.35-.9 11.82-3.88 16.66-7.64h84.15c-3.57 10.05-5.88 20.72-5.88 32 0 53.02 42.98 96 96 96s96-42.98 96-96c0-26.51-10.74-50.51-28.12-67.88l50.74-50.74c6-6 9.37-14.14 9.37-22.63V224c.02-17.67-14.31-32-31.98-32zM128 32h127.9l77.14 160h-54.6c-10.94-6.21-24.08-6.16-35.06 0h-9.17c-.86-.35-1.7-.73-2.56-1.06C229.19 173.48 214.12 160 196 160h-40c-11.53 0-21.4 5.81-28 14.27V32zm192 324c0 2.2-1.78 4-4 4h-18.41c-7.11 23.63-6.71 22.85-18.62 44.98l12.97 13.03.03 5.67-28.28 28.28c-1.56 1.61-4.09 1.55-5.66 0l-13-13c-21.74 11.68-21.66 11.65-45.03 18.61V476c0 2.2-1.78 4-4 4h-40c-2.22 0-4-1.8-4-4v-18.42c-23.37-6.96-23.29-6.93-45.03-18.61l-13 13a3.972 3.972 0 0 1-5.66 0l-28.28-28.28.03-5.67 12.97-13.03C61.11 382.84 61.51 383.6 54.41 360H36c-2.22 0-4-1.8-4-4v-40c0-2.2 1.78-4 4-4h18.41c7.15-23.77 6.72-22.83 18.62-45.02l-13-13a4.02 4.02 0 0 1 0-5.67l28.28-28.28c1.59-1.56 4.12-1.53 5.66 0l13 13c21.74-11.68 21.66-11.65 45.03-18.61V196c0-2.2 1.78-4 4-4h40c2.22 0 4 1.8 4 4v18.42c23.37 6.96 23.29 6.93 45.03 18.61l13-13c1.56-1.53 4.09-1.56 5.66 0l28.28 28.28a4.02 4.02 0 0 1 0 5.67l-13 13c11.91 22.2 11.48 21.28 18.62 45.02H316c2.22 0 4 1.8 4 4v40zm192 124c-35.29 0-64-28.71-64-64s28.71-64 64-64 64 28.71 64 64-28.71 64-64 64zm96-205.26l-54.85 54.85c-12.51-5.97-26.36-9.6-41.15-9.6-28.32 0-53.51 12.49-71.09 32H352v-36c0-18.14-13.47-33.17-30.94-35.64-.97-2.55-2.03-5.08-3.16-7.58 10.62-14.09 9.5-34.27-3.31-47.09l-1.69-1.69H608v50.75z\"]\n};\nvar faTrademark = {\n prefix: 'fal',\n iconName: 'trademark',\n icon: [640, 512, [], \"f25c\", \"M264.1 96H23.9c-6.6 0-12 5.4-12 12v15c0 6.6 5.4 12 12 12h97.7v269c0 6.6 5.4 12 12 12h20.9c6.6 0 12-5.4 12-12V135h97.7c6.6 0 12-5.4 12-12v-15c-.1-6.6-5.4-12-12.1-12zM640 403l-23.9-296c-.5-6.2-5.7-11-12-11H576c-4.8 0-9.2 2.9-11 7.3l-70.3 165.8c-7.3 17.7-15.9 43.1-15.9 43.1h-.9s-8.6-25.4-15.9-43.1l-70.3-165.8c-1.9-4.4-6.2-7.3-11-7.3h-28.1c-6.3 0-11.5 4.8-12 11l-23.9 296c-.6 7 5 13 12 13h20.7c6.3 0 11.5-4.8 12-11.1L376 214.3c1.4-19.5.9-48 .9-48h.9s10 30.8 17.2 48l60.3 137c1.9 4.4 6.2 7.2 11 7.2h24.3c4.7 0 9-2.8 11-7.1l60.7-137c7.7-17.7 17.2-47.1 17.2-47.1h.9s-.9 27.6.5 47.1l15 190.6c.5 6.2 5.7 11.1 12 11.1H628c7-.1 12.5-6.1 12-13.1z\"]\n};\nvar faTrafficCone = {\n prefix: 'fal',\n iconName: 'traffic-cone',\n icon: [512, 512, [], \"f636\", \"M504 480h-23.02L294.54 11.52A18.284 18.284 0 0 0 277.55 0h-43.11c-7.49 0-14.22 4.57-16.99 11.52L31.02 480H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h496c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM382.87 320H129.13l50.94-128h151.85l50.95 128zM243.75 32h24.5l50.94 128H192.81l50.94-128zM65.46 480l50.94-128h279.2l50.94 128H65.46z\"]\n};\nvar faTrafficLight = {\n prefix: 'fal',\n iconName: 'traffic-light',\n icon: [416, 512, [], \"f637\", \"M416 64V48h-80V28.44C336 12.73 323.27 0 307.55 0h-199.1C92.73 0 80 12.73 80 28.44V48H0v16c0 50.55 33.89 92.77 80 106.57V176H0v16c0 50.55 33.89 92.77 80 106.57V304H0v16c0 53.54 38.07 97.51 88.38 108.43C106.49 477.13 153 512 208 512s101.51-34.87 119.62-83.57C377.93 417.51 416 373.54 416 320v-16h-80v-5.43c46.11-13.8 80-56.02 80-106.57v-16h-80v-5.43c46.11-13.8 80-56.02 80-106.57zm-80 16h46.41c-5.24 25.62-23.05 46.21-46.41 56.56V80zM33.59 80H80v56.56C56.64 126.21 38.84 105.62 33.59 80zm0 128H80v56.56C56.64 254.21 38.84 233.62 33.59 208zm0 128H80v48c0 3.04.69 5.9.9 8.89-23.79-10.2-42-30.95-47.31-56.89zM304 384c0 52.93-43.06 96-96 96s-96-43.07-96-96V32h192v352zm78.41-48c-5.31 25.94-23.51 46.69-47.3 56.89.21-2.99.9-5.84.9-8.89v-48h46.4zm0-128c-5.24 25.62-23.05 46.21-46.41 56.56V208h46.41zM208 184c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0-88c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32zm0 216c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0-88c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32zm0 216c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0-88c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32z\"]\n};\nvar faTrafficLightGo = {\n prefix: 'fal',\n iconName: 'traffic-light-go',\n icon: [416, 512, [], \"f638\", \"M416 64V48h-80V28.44C336 12.73 323.27 0 307.55 0h-199.1C92.73 0 80 12.73 80 28.44V48H0v16c0 50.55 33.89 92.77 80 106.57V176H0v16c0 50.55 33.89 92.77 80 106.57V304H0v16c0 53.54 38.07 97.51 88.38 108.43C106.49 477.13 153 512 208 512s101.51-34.87 119.62-83.57C377.93 417.51 416 373.54 416 320v-16h-80v-5.43c46.11-13.8 80-56.02 80-106.57v-16h-80v-5.43c46.11-13.8 80-56.02 80-106.57zm-80 16h46.41c-5.24 25.62-23.05 46.21-46.41 56.56V80zM33.59 80H80v56.56C56.64 126.21 38.84 105.62 33.59 80zm0 128H80v56.56C56.64 254.21 38.84 233.62 33.59 208zm0 128H80v48c0 3.04.69 5.9.9 8.89-23.79-10.2-42-30.95-47.31-56.89zM304 384c0 52.93-43.06 96-96 96s-96-43.07-96-96V32h192v352zm78.41-48c-5.31 25.94-23.51 46.69-47.3 56.89.21-2.99.9-5.84.9-8.89v-48h46.4zm0-128c-5.24 25.62-23.05 46.21-46.41 56.56V208h46.41zM208 184c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0-88c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32zm0 216c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0-88c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32zm0 216c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56z\"]\n};\nvar faTrafficLightSlow = {\n prefix: 'fal',\n iconName: 'traffic-light-slow',\n icon: [416, 512, [], \"f639\", \"M416 64V48h-80V28.44C336 12.73 323.27 0 307.55 0h-199.1C92.73 0 80 12.73 80 28.44V48H0v16c0 50.55 33.89 92.77 80 106.57V176H0v16c0 50.55 33.89 92.77 80 106.57V304H0v16c0 53.54 38.07 97.51 88.38 108.43C106.49 477.13 153 512 208 512s101.51-34.87 119.62-83.57C377.93 417.51 416 373.54 416 320v-16h-80v-5.43c46.11-13.8 80-56.02 80-106.57v-16h-80v-5.43c46.11-13.8 80-56.02 80-106.57zm-80 16h46.41c-5.24 25.62-23.05 46.21-46.41 56.56V80zM33.59 80H80v56.56C56.64 126.21 38.84 105.62 33.59 80zm0 128H80v56.56C56.64 254.21 38.84 233.62 33.59 208zm0 128H80v48c0 3.04.69 5.9.9 8.89-23.79-10.2-42-30.95-47.31-56.89zM304 384c0 52.93-43.06 96-96 96s-96-43.07-96-96V32h192v352zm78.41-48c-5.31 25.94-23.51 46.69-47.3 56.89.21-2.99.9-5.84.9-8.89v-48h46.4zm0-128c-5.24 25.62-23.05 46.21-46.41 56.56V208h46.41zM208 184c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0-88c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32zm0 216c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0 128c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0-88c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32z\"]\n};\nvar faTrafficLightStop = {\n prefix: 'fal',\n iconName: 'traffic-light-stop',\n icon: [416, 512, [], \"f63a\", \"M416 64V48h-80V28.44C336 12.73 323.27 0 307.55 0h-199.1C92.73 0 80 12.73 80 28.44V48H0v16c0 50.55 33.89 92.77 80 106.57V176H0v16c0 50.55 33.89 92.77 80 106.57V304H0v16c0 53.54 38.07 97.51 88.38 108.43C106.49 477.13 153 512 208 512s101.51-34.87 119.62-83.57C377.93 417.51 416 373.54 416 320v-16h-80v-5.43c46.11-13.8 80-56.02 80-106.57v-16h-80v-5.43c46.11-13.8 80-56.02 80-106.57zm-80 16h46.41c-5.24 25.62-23.05 46.21-46.41 56.56V80zM33.59 80H80v56.56C56.64 126.21 38.84 105.62 33.59 80zm0 128H80v56.56C56.64 254.21 38.84 233.62 33.59 208zm0 128H80v48c0 3.04.69 5.9.9 8.89-23.79-10.2-42-30.95-47.31-56.89zM304 384c0 52.93-43.06 96-96 96s-96-43.07-96-96V32h192v352zm78.41-48c-5.31 25.94-23.51 46.69-47.3 56.89.21-2.99.9-5.84.9-8.89v-48h46.4zm0-128c-5.24 25.62-23.05 46.21-46.41 56.56V208h46.41zM208 184c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0 128c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0-88c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32zm0 216c30.93 0 56-25.07 56-56s-25.07-56-56-56-56 25.07-56 56 25.07 56 56 56zm0-88c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32z\"]\n};\nvar faTrailer = {\n prefix: 'fal',\n iconName: 'trailer',\n icon: [640, 512, [], \"e041\", \"M632,352H544V96a32,32,0,0,0-32-32H32A32,32,0,0,0,0,96V352a32,32,0,0,0,32,32H68.58c7.59,0,13.69-5.44,15.64-12.78C96.91,323.36,140.14,288,192,288s95.09,35.36,107.78,83.22c2,7.34,8.05,12.78,15.64,12.78H632a8,8,0,0,0,8-8V360A8,8,0,0,0,632,352Zm-120,0H326.61c-19.72-55.77-72.06-96-134.61-96S77.11,296.23,57.39,352H32V96H512ZM192,320a80,80,0,1,0,80,80A80,80,0,0,0,192,320Zm0,128a48,48,0,1,1,48-48A48.05,48.05,0,0,1,192,448ZM360,320h16a8,8,0,0,0,8-8V136a8,8,0,0,0-8-8H360a8,8,0,0,0-8,8V312A8,8,0,0,0,360,320Zm96,0h16a8,8,0,0,0,8-8V136a8,8,0,0,0-8-8H456a8,8,0,0,0-8,8V312A8,8,0,0,0,456,320ZM96,136a8,8,0,0,0-8-8H72a8,8,0,0,0-8,8V279.45A177.09,177.09,0,0,1,96,252.6Zm96,0a8,8,0,0,0-8-8H168a8,8,0,0,0-8,8v91.05A175.77,175.77,0,0,1,192,224Zm96,0a8,8,0,0,0-8-8H264a8,8,0,0,0-8,8V236.18a175,175,0,0,1,32,16.42Z\"]\n};\nvar faTrain = {\n prefix: 'fal',\n iconName: 'train',\n icon: [448, 512, [], \"f238\", \"M224 320c8.823 0 16 7.177 16 16s-7.177 16-16 16-16-7.177-16-16 7.177-16 16-16m0-32c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM320 0H128C64 0 0 42.981 0 96v256c0 47.169 50.656 86.391 106.9 94.473l-55.285 55.285c-3.78 3.78-1.103 10.243 4.243 10.243h25.798c3.183 0 6.235-1.264 8.485-3.515L150.627 448h146.745l60.486 60.485a12.002 12.002 0 0 0 8.485 3.515h25.798c5.345 0 8.022-6.463 4.243-10.243L341.1 446.472C397.344 438.391 448 399.169 448 352V96c0-53.019-63-96-128-96zM32 128h384v96H32v-96zm96-96h192c58.237 0 96 37.881 96 64H32c0-32.299 47.552-64 96-64zm192 384H128c-48.448 0-96-31.701-96-64v-96h384v96c0 32.299-47.552 64-96 64z\"]\n};\nvar faTram = {\n prefix: 'fal',\n iconName: 'tram',\n icon: [512, 512, [], \"f7da\", \"M511.6 76.4c-2-8.6-10.5-13.9-19.2-11.9l-480 112c-8.6 2-14 10.6-12 19.2C2.2 203 8.7 208 16 208c1.2 0 2.4-.1 3.6-.4L240 156.2V224H64c-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-75.3l227.6-53.1c8.6-2 14-10.6 12-19.2zM64 256h96v96H64v-96zm288 0h96v96h-96v-96zm96 128v96H64v-96h384zM320 256v96H192v-96h128zM176 128c26.5 0 48-21.5 48-48s-21.5-48-48-48-48 21.5-48 48 21.5 48 48 48zm0-64c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16zm128 32c26.5 0 48-21.5 48-48S330.5 0 304 0s-48 21.5-48 48 21.5 48 48 48zm0-64c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16z\"]\n};\nvar faTransgender = {\n prefix: 'fal',\n iconName: 'transgender',\n icon: [384, 512, [], \"f224\", \"M160 383.1c72-8 128-69 128-143.1 0-34-11.8-65.2-31.5-89.9L352 54.6V100c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V12c0-6.6-5.4-12-12-12h-88c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h45.4l-95.5 95.5C209.2 107.8 178 96 144 96 64.5 96 0 160.5 0 240c0 74.1 56 135.2 128 143.1V424H76c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h52v44c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-44h52c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-52v-40.9zM144 352c-61.9 0-112-50-112-112 0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112z\"]\n};\nvar faTransgenderAlt = {\n prefix: 'fal',\n iconName: 'transgender-alt',\n icon: [480, 512, [], \"f225\", \"M468 0h-88c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h45.4l-95.5 95.5C305.2 107.8 274 96 240 96s-65.2 11.8-89.9 31.5l-28.9-28.9 31.1-31.1c4.7-4.7 4.7-12.3 0-17l-5.7-5.7c-4.7-4.7-12.3-4.7-17 0L98.6 76l-44-44H100c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12H12C5.4 0 0 5.4 0 12v88c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V54.6l44 44-31.1 31.1c-4.7 4.7-4.7 12.3 0 17l5.7 5.7c4.7 4.7 12.3 4.7 17 0l31.1-31.1 28.9 28.9C107.8 174.8 96 206 96 240c0 74.1 56 135.2 128 143.1V424h-52c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h52v44c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-44h52c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-52v-40.9c72-8 128-69 128-143.1 0-34-11.8-65.2-31.5-89.9L448 54.6V100c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12V12c0-6.6-5.4-12-12-12zM240 352c-61.9 0-112-50-112-112 0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112z\"]\n};\nvar faTransporter = {\n prefix: 'fal',\n iconName: 'transporter',\n icon: [512, 512, [], \"e042\", \"M509.789,44.43164l-29.786-12.41992L467.5828,2.22656a3.99313,3.99313,0,0,0-7.15449,0L448.00806,32.01172l-29.786,12.41992a4.00079,4.00079,0,0,0,0,7.1543l29.786,12.41992L460.42831,93.791a3.9947,3.9947,0,0,0,7.15449,0l12.42025-29.78516,29.786-12.41992a3.99921,3.99921,0,0,0,0-7.1543ZM95.98694,111.99609a4.37766,4.37766,0,0,0-2.211-3.57617L63.99194,96,51.57169,66.21484a3.99471,3.99471,0,0,0-7.15644,0L31.995,96,2.211,108.41992a3.99921,3.99921,0,0,0,0,7.1543l29.784,12.41992L44.41525,157.7793a3.99628,3.99628,0,0,0,7.15644,0l12.42025-29.78516,29.784-12.41992A4.38918,4.38918,0,0,0,95.98694,111.99609Zm263.02265,34.541a95.381,95.381,0,0,0-46.73953-30.17773A71.27468,71.27468,0,0,0,327.99509,72,72.0822,72.0822,0,0,0,255.99316,0H255.96A72.0822,72.0822,0,0,0,183.958,72a71.28393,71.28393,0,0,0,15.73479,44.375,95.36491,95.36491,0,0,0-46.6946,30.16406L84.98274,228.1543a55.97446,55.97446,0,0,0,7.16621,78.873,56.12369,56.12369,0,0,0,67.85532,2.92774V416h-.00976A63.999,63.999,0,0,0,95.9928,480v16a15.99975,15.99975,0,0,0,16.00042,16h288.0077a16.001,16.001,0,0,0,16.00042-16V480a64.00028,64.00028,0,0,0-63.99194-63.998V309.96875a56.00117,56.00117,0,0,0,74.99419-81.84766ZM255.96,32l.01758.002.01562-.002a40,40,0,1,1,0,80l-.01562-.00195L255.96,112a40,40,0,1,1,0-80ZM384.00049,480H127.99365a32.03709,32.03709,0,0,1,32.00086-32H351.99963A32.03709,32.03709,0,0,1,384.00049,480Zm15.38517-197.5625a24.00925,24.00925,0,0,1-33.8134-3.07812l-45.5852-54.69922V256h.02149V416H271.9975V320H239.99664v96H192.00513V224.70117l-45.56372,54.65821a23.99729,23.99729,0,1,1-36.876-30.71876l68.01548-81.61328A64.0009,64.0009,0,0,1,226.74824,144h58.51328a64.00441,64.00441,0,0,1,49.16538,23.02539l68.02135,81.61523A23.976,23.976,0,0,1,399.38566,282.4375Z\"]\n};\nvar faTransporter1 = {\n prefix: 'fal',\n iconName: 'transporter-1',\n icon: [512, 512, [], \"e043\", \"M159.99451,309.95508V320h32.00085V224.70117l-45.56372,54.65821c-5.174,6.20117-20.22514,14.34374-33.8134,3.07812a23.976,23.976,0,0,1-3.06258-33.79688l68.01549-81.61328A64.0009,64.0009,0,0,1,226.73848,144h58.51328a64.0044,64.0044,0,0,1,49.16537,23.02539l68.02135,81.61523a23.976,23.976,0,0,1-3.06258,33.79688c-13.58044,11.26953-28.47928,3.32617-33.8134-3.07812l-45.58521-54.69922V256h.02149v64h32.00085V309.96875a56.00117,56.00117,0,0,0,74.99419-81.84766l-67.994-81.584a95.381,95.381,0,0,0-46.73953-30.17773A71.27468,71.27468,0,0,0,327.98532,72,72.0822,72.0822,0,0,0,255.9834,0h-.03321a72.0822,72.0822,0,0,0-72.00192,72,71.28394,71.28394,0,0,0,15.7348,44.375,95.365,95.365,0,0,0-46.69461,30.16406L84.973,228.1543a55.97448,55.97448,0,0,0,7.16621,78.873,56.12371,56.12371,0,0,0,67.85533,2.92774ZM255.95019,32l.01758.002L255.9834,32a40,40,0,1,1,0,80l-.01563-.00195L255.95019,112a40,40,0,1,1,0-80Zm64.04859,352h32.00085V352H319.99878ZM95.98694,144a4.38058,4.38058,0,0,0-2.20905-3.57812L63.99194,128.002,51.57169,98.21875a3.99313,3.99313,0,0,0-7.15449,0L31.997,128.002,2.211,140.42188a4.00078,4.00078,0,0,0,0,7.15624l29.786,12.41993,12.42025,29.7832a3.99313,3.99313,0,0,0,7.15449,0l12.42025-29.7832,29.786-12.41993A4.39161,4.39161,0,0,0,95.98694,144ZM351.99963,416.002V416H159.98474A63.999,63.999,0,0,0,95.983,480v16a15.99975,15.99975,0,0,0,16.00043,16H399.99115a16.001,16.001,0,0,0,16.00043-16V480A64.00028,64.00028,0,0,0,351.99963,416.002ZM127.98389,480a32.03709,32.03709,0,0,1,32.00085-32H351.98987a32.03709,32.03709,0,0,1,32.00085,32ZM509.789,364.41992,480.005,352l-12.42026-29.78516a3.99471,3.99471,0,0,0-7.15644,0L448.00806,352l-29.784,12.41992a3.99921,3.99921,0,0,0,0,7.1543l29.784,12.41992,12.42025,29.78516a3.99628,3.99628,0,0,0,7.15644,0L480.005,383.99414l29.784-12.41992a3.99921,3.99921,0,0,0,0-7.1543ZM159.99451,384h32.00085V352H159.99451Zm111.99322,0V352H239.98688v32Z\"]\n};\nvar faTransporter2 = {\n prefix: 'fal',\n iconName: 'transporter-2',\n icon: [512, 512, [], \"e044\", \"M191.99609,256V224.70117L165.90545,256Zm79.99268,128V352h-32.001v32ZM352.001,352H320v32h32.001ZM319.97851,224.66016V256h26.118ZM177.57183,167.02734A64.00122,64.00122,0,0,1,226.73934,144h58.51351a64.00476,64.00476,0,0,1,49.16556,23.02539L355.2335,192H396.891l-37.88983-45.46289a95.38141,95.38141,0,0,0-46.73971-30.17773A71.2745,71.2745,0,0,0,327.98657,72a72.08234,72.08234,0,0,0-72.0022-72h-.0332A72.08235,72.08235,0,0,0,183.949,72a71.28375,71.28375,0,0,0,15.73486,44.375A95.36539,95.36539,0,0,0,152.989,146.53906L115.10312,192h41.65752ZM255.95117,32l.01758.002.01562-.002a40,40,0,1,1,0,80l-.01562-.00195L255.95117,112a40,40,0,1,1,0-80ZM130.09186,224H88.43629c-13.88714,16.6582-14.895,26.08984-15.74071,32h32.874C107.681,250.08984,107.30406,251.3418,130.09186,224ZM320,320h32.001V309.96875A55.675,55.675,0,0,0,434.45271,288H320Zm32.001,96.002V416H159.98535a63.99914,63.99914,0,0,0-64.002,64v16a15.99979,15.99979,0,0,0,16.00049,16H399.99268a16.001,16.001,0,0,0,16.00048-16V480A64.00039,64.00039,0,0,0,352.001,416.002ZM127.98437,480a32.03716,32.03716,0,0,1,32.001-32H351.99121a32.03716,32.03716,0,0,1,32.001,32ZM381.90423,224c22.75656,27.30469,22.4128,26.0957,24.52419,32h32.87014c-.85745-5.99219-1.91607-15.41211-15.73681-32ZM159.99512,309.95508V320h32.001V288H77.54143a55.62546,55.62546,0,0,0,14.5981,19.02734,56.12409,56.12409,0,0,0,67.85559,2.92774Zm0,74.04492h32.001V352h-32.001ZM509.791,140.416l-29.78607-12.41993-12.4203-29.7832a3.99315,3.99315,0,0,0-7.15451,0l-12.4203,29.7832L418.2237,140.416a4.00079,4.00079,0,0,0,0,7.15625l29.78607,12.41992,12.4203,29.7832a3.99315,3.99315,0,0,0,7.15451,0l12.4203-29.7832L509.791,147.57227a4.00237,4.00237,0,0,0,0-7.15625ZM95.9873,48a4.37811,4.37811,0,0,0-2.211-3.57812L63.99023,32.002,51.56993,2.21875a3.99315,3.99315,0,0,0-7.15451,0L31.99512,32.002,2.20905,44.42188a4.00078,4.00078,0,0,0,0,7.15429L31.99512,63.99609l12.4203,29.78516a3.99315,3.99315,0,0,0,7.15451,0l12.4203-29.78516L93.7763,51.57617A4.38313,4.38313,0,0,0,95.9873,48Z\"]\n};\nvar faTransporter3 = {\n prefix: 'fal',\n iconName: 'transporter-3',\n icon: [512, 512, [], \"e045\", \"M191.99609,287.99658H77.54143a55.62634,55.62634,0,0,0,14.5981,19.02764,56.12343,56.12343,0,0,0,67.85559,2.92778v10.04507h32.001Zm63.98828-256.0039h-.0332l.01758.002Zm56.27711,84.36066a73.90664,73.90664,0,0,0,11.44566-20.35969H287.15329c-7.31663,9.48648-18.26813,16.00025-31.16892,16.00025l-.01562-.002-.01758.002c-12.90078,0-23.85229-6.51377-31.16892-16.00025H188.2284A73.92186,73.92186,0,0,0,199.68383,116.369a99.67188,99.67188,0,0,0-25.58867,11.62518H337.88922A99.67424,99.67424,0,0,0,312.26148,116.35334ZM271.98877,383.99805V351.99756h-32.001v32.00049ZM255.95117,31.99268H196.13684a71.52385,71.52385,0,0,0-11.37925,32.00048h32.81546C221.40324,45.87765,236.77285,31.99268,255.95117,31.99268Zm64.02734,192.66309v31.34032h26.118ZM352.001,351.99756H320v32.00049h32.001ZM294.3625,63.99316H327.178A71.52373,71.52373,0,0,0,315.7987,31.99268H255.98437C275.16269,31.99268,290.5323,45.87765,294.3625,63.99316Zm40.05591,103.027,20.81509,24.975H396.891l-26.66878-32.00049H327.1135A63.421,63.421,0,0,1,334.41841,167.02013ZM320,319.99707h32.001v-10.0314a55.67477,55.67477,0,0,0,82.45173-21.96909H320Zm61.90423-96.00146,20.53579,24.641a23.60865,23.60865,0,0,1,3.9884,7.35948h32.87014c-.85745-5.99228-1.91607-15.41234-15.73681-32.00048ZM159.99512,383.99805h32.001V351.99756h-32.001ZM352.001,416.00049v-.002H159.98535a63.99963,63.99963,0,0,0-64.002,64.001v16.00025A15.99991,15.99991,0,0,0,111.98389,512H399.99268a16.00115,16.00115,0,0,0,16.00048-16.00024V479.99951A64.00087,64.00087,0,0,0,352.001,416.00049Zm-224.01661,63.999a32.0374,32.0374,0,0,1,32.001-32.00049H351.99121a32.0374,32.0374,0,0,1,32.001,32.00049Zm49.58746-312.97743a63.29146,63.29146,0,0,1,7.30686-7.02745H141.7719l-26.66878,32.00049h41.65752Zm14.42426,57.67471-26.09064,31.2993h26.09064Zm-82.44,23.93982,20.53578-24.641H88.43629c-13.88714,16.65845-14.895,26.09024-15.74071,32.00048h32.874A23.60261,23.60261,0,0,1,109.55608,248.63661ZM509.791,44.42451,480.00488,32.00439,467.58458,2.21878a3.99313,3.99313,0,0,0-7.15451,0l-12.4203,29.78561L418.2237,44.42451a3.99929,3.99929,0,0,0,0,7.1544L448.00977,63.999l12.4203,29.78561a3.99469,3.99469,0,0,0,7.15451,0L480.00488,63.999,509.791,51.57891a4.00087,4.00087,0,0,0,0-7.1544ZM93.7763,364.42158,63.99023,352.00146l-12.4203-29.78365a3.99312,3.99312,0,0,0-7.15451,0l-12.4203,29.78365L2.20905,364.42158a4.00246,4.00246,0,0,0,0,7.15636l29.78607,12.42011,12.4203,29.78365a3.99312,3.99312,0,0,0,7.15451,0l12.4203-29.78365L93.7763,371.57794a4.00088,4.00088,0,0,0,0-7.15636Z\"]\n};\nvar faTransporterEmpty = {\n prefix: 'fal',\n iconName: 'transporter-empty',\n icon: [512, 512, [], \"e046\", \"M509.791,268.419l-29.78607-12.42-12.4203-29.78527a3.99315,3.99315,0,0,0-7.15451,0L448.00977,255.999l-29.78607,12.42a3.99924,3.99924,0,0,0,0,7.15433l29.78607,12.42,12.4203,29.78527a3.99471,3.99471,0,0,0,7.15451,0l12.4203-29.78527,29.78607-12.42a4.00082,4.00082,0,0,0,0-7.15433ZM93.7763,44.422l-29.78607-12.42L51.56993,2.21876a3.99314,3.99314,0,0,0-7.15451,0L31.99512,32.00208,2.20905,44.422a4.0024,4.0024,0,0,0,0,7.15628l29.78607,12.42,12.4203,29.78332a3.99314,3.99314,0,0,0,7.15451,0l12.4203-29.78332,29.78607-12.42a4.00082,4.00082,0,0,0,0-7.15628ZM352.001,416.00159v-.002H159.98535a63.99927,63.99927,0,0,0-64.002,64.00025v16.00006A15.99982,15.99982,0,0,0,111.98389,512H399.99268a16.00106,16.00106,0,0,0,16.00048-16.00006V479.99988A64.0005,64.0005,0,0,0,352.001,416.00159ZM127.98437,479.99988a32.03721,32.03721,0,0,1,32.001-32.00012H351.99121a32.03721,32.03721,0,0,1,32.001,32.00012Z\"]\n};\nvar faTrash = {\n prefix: 'fal',\n iconName: 'trash',\n icon: [448, 512, [], \"f1f8\", \"M440 64H336l-33.6-44.8A48 48 0 0 0 264 0h-80a48 48 0 0 0-38.4 19.2L112 64H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h18.9l33.2 372.3a48 48 0 0 0 47.8 43.7h232.2a48 48 0 0 0 47.8-43.7L421.1 96H440a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8zM171.2 38.4A16.1 16.1 0 0 1 184 32h80a16.1 16.1 0 0 1 12.8 6.4L296 64H152zm184.8 427a15.91 15.91 0 0 1-15.9 14.6H107.9A15.91 15.91 0 0 1 92 465.4L59 96h330z\"]\n};\nvar faTrashAlt = {\n prefix: 'fal',\n iconName: 'trash-alt',\n icon: [448, 512, [], \"f2ed\", \"M296 432h16a8 8 0 0 0 8-8V152a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v272a8 8 0 0 0 8 8zm-160 0h16a8 8 0 0 0 8-8V152a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v272a8 8 0 0 0 8 8zM440 64H336l-33.6-44.8A48 48 0 0 0 264 0h-80a48 48 0 0 0-38.4 19.2L112 64H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v368a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V96h24a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8zM171.2 38.4A16.1 16.1 0 0 1 184 32h80a16.1 16.1 0 0 1 12.8 6.4L296 64H152zM384 464a16 16 0 0 1-16 16H80a16 16 0 0 1-16-16V96h320zm-168-32h16a8 8 0 0 0 8-8V152a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v272a8 8 0 0 0 8 8z\"]\n};\nvar faTrashRestore = {\n prefix: 'fal',\n iconName: 'trash-restore',\n icon: [448, 512, [], \"f829\", \"M440 64H336l-33.6-44.8A48 48 0 0 0 264 0h-80a48 48 0 0 0-38.4 19.2L112 64H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h18.9l33.2 372.3a48 48 0 0 0 47.8 43.7h232.2a48 48 0 0 0 47.8-43.7L421.1 96H440a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8zM171.2 38.4A16.1 16.1 0 0 1 184 32h80a16.1 16.1 0 0 1 12.8 6.4L296 64H152zm184.8 427a15.91 15.91 0 0 1-15.9 14.6H107.9A15.91 15.91 0 0 1 92 465.4L59 96h330zM155.33 288H208v120a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V288h52.66a26.94 26.94 0 0 0 25-16.72 28.38 28.38 0 0 0-5.44-30.81l-68.12-71.78c-10.69-11.19-29.51-11.2-40.19 0l-68.12 71.75a28.43 28.43 0 0 0-5.44 30.83A26.94 26.94 0 0 0 155.33 288zM224 194l58.84 62h-117.7z\"]\n};\nvar faTrashRestoreAlt = {\n prefix: 'fal',\n iconName: 'trash-restore-alt',\n icon: [448, 512, [], \"f82a\", \"M440 64H336l-33.6-44.8A48 48 0 0 0 264 0h-80a48 48 0 0 0-38.4 19.2L112 64H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v368a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V96h24a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8zM171.2 38.4A16.1 16.1 0 0 1 184 32h80a16.1 16.1 0 0 1 12.8 6.4L296 64H152zM384 464a16 16 0 0 1-16 16H80a16 16 0 0 1-16-16V96h320zM155.35 288H208v120a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V288h52.66a26.94 26.94 0 0 0 25-16.72 28.38 28.38 0 0 0-5.44-30.81l-68.12-71.8c-10.69-11.19-29.51-11.2-40.19 0l-68.12 71.75a28.43 28.43 0 0 0-5.44 30.83 26.94 26.94 0 0 0 25 16.75zM224 194l58.84 62H165.16z\"]\n};\nvar faTrashUndo = {\n prefix: 'fal',\n iconName: 'trash-undo',\n icon: [448, 512, [], \"f895\", \"M440 64H336l-33.59-44.8C294.44 8.59 277.25 0 264 0h-80c-13.25 0-30.44 8.59-38.41 19.2L112 64H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h18.91l33.18 372.3c2.19 24.12 23.6 43.7 47.82 43.7h232.18c24.22 0 45.63-19.58 47.82-43.7L421.09 96H440a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8zM171.19 38.41A18.15 18.15 0 0 1 184 32h80a18.15 18.15 0 0 1 12.81 6.41L296 64H152zm184.81 427A16.2 16.2 0 0 1 340.16 480H107.84A16.2 16.2 0 0 1 92 465.41L59 96h330zM192.75 360.34A28 28 0 0 0 240 340v-52h16a48.05 48.05 0 0 1 48 48 16 16 0 0 0 32 0 80.09 80.09 0 0 0-80-80h-16v-52a28 28 0 0 0-47.25-20.34l-72 68a28 28 0 0 0 0 40.68zM208 213.28v117.44L145.81 272z\"]\n};\nvar faTrashUndoAlt = {\n prefix: 'fal',\n iconName: 'trash-undo-alt',\n icon: [448, 512, [], \"f896\", \"M440 64H336l-33.59-44.8C294.44 8.59 277.25 0 264 0h-80c-13.25 0-30.44 8.59-38.41 19.2L112 64H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v368a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V96h24a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8zM171.19 38.41A18.15 18.15 0 0 1 184 32h80a18.15 18.15 0 0 1 12.81 6.41L296 64H152zM384 464a16 16 0 0 1-16 16H80a16 16 0 0 1-16-16V96h320zM192.75 360.34A28 28 0 0 0 240 340v-52h16a48.05 48.05 0 0 1 48 48 16 16 0 0 0 32 0 80.09 80.09 0 0 0-80-80h-16v-52a28 28 0 0 0-47.25-20.34l-72 68a28 28 0 0 0 0 40.68zM208 213.28v117.44L145.81 272z\"]\n};\nvar faTreasureChest = {\n prefix: 'fal',\n iconName: 'treasure-chest',\n icon: [576, 512, [], \"f723\", \"M480 32H96C42.98 32 0 74.98 0 128v320c0 17.67 14.33 32 32 32h512c17.67 0 32-14.33 32-32V128c0-53.02-42.98-96-96-96zM96 448H32V288h64v160zm0-192H32V128c0-35.29 28.71-64 64-64v192zm352 192H128V288h64v48c0 26.47 21.53 48 48 48h96c26.47 0 48-21.53 48-48v-48h64v160zM224 336V208c0-8.84 7.16-16 16-16h96c8.84 0 16 7.16 16 16v128c0 8.84-7.16 16-16 16h-96c-8.84 0-16-7.16-16-16zm224-80h-64v-48c0-26.47-21.53-48-48-48h-96c-26.47 0-48 21.53-48 48v48h-64V64h320v192zm96 192h-64V288h64v160zm0-192h-64V64c35.29 0 64 28.71 64 64v128zm-256 64c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16s-16 7.16-16 16v64c0 8.84 7.16 16 16 16z\"]\n};\nvar faTree = {\n prefix: 'fal',\n iconName: 'tree',\n icon: [448, 512, [], \"f1bb\", \"M444.09 389.46l-74.12-85.55H400c6.22 0 11.91-3.61 14.5-9.27 2.62-5.66 1.75-12.32-2.28-17.07l-72.5-85.71H368c6.31 0 12.03-3.72 14.62-9.49 2.56-5.78 1.5-12.52-2.72-17.23L235.9 5.07c-6.12-6.75-17.69-6.75-23.81 0l-144 160.07a16.06 16.06 0 0 0-2.72 17.23c2.59 5.77 8.31 9.49 14.62 9.49h28.28l-72.5 85.71c-4.03 4.75-4.91 11.41-2.28 17.07 2.59 5.66 8.28 9.27 14.5 9.27h30.03L3.91 389.46c-4.09 4.74-5.06 11.44-2.47 17.13 2.62 5.71 8.31 9.36 14.56 9.36h160v24.46l-24.2 48.42c-5.32 10.64 2.42 23.17 14.31 23.17h115.78c11.89 0 19.63-12.52 14.31-23.17L272 440.41v-24.46h160c6.25 0 11.94-3.66 14.56-9.36 2.6-5.69 1.63-12.39-2.47-17.13zM192 479.98l16-32.01v-32.02h32v32.02l16 32.01h-64zM50.78 384l96-112H82.5l94.78-112h-61.34L224 39.92 332.06 160h-61.34l94.78 112h-64.28l96 112H50.78z\"]\n};\nvar faTreeAlt = {\n prefix: 'fal',\n iconName: 'tree-alt',\n icon: [512, 512, [], \"f400\", \"M459.94 202.98c2.69-8.86 4.06-17.89 4.06-26.98 0-52.94-43.06-96-96-96-5.75 0-11.44.53-17.09 1.56C343.94 35.45 304.03 0 256 0s-87.94 35.45-94.91 81.56A95.058 95.058 0 0 0 144 80c-52.94 0-96 43.06-96 96 0 9.09 1.38 18.12 4.06 26.98C20.34 219.17 0 251.53 0 288c0 52.94 43.06 96 96 96h112v56.45l-24.2 48.4c-5.32 10.64 2.42 23.16 14.31 23.16h115.78c11.89 0 19.63-12.52 14.31-23.16l-24.2-48.4V384h112c52.94 0 96-43.06 96-96 0-36.47-20.34-68.83-52.06-85.02zM224 480l16-32v-64h32v64l16 32h-64zm192-128H96c-35.28 0-64-28.7-64-64 0-28.12 18.28-52.59 45.47-60.88l18.16-5.53-8.53-16.97C82.41 195.25 80 185.61 80 176c0-35.3 28.72-64 64-64 14.34 0 19.95 2.94 51.16 16.98-2.9-31.7-2.28-25.42-3.16-32.98 0-35.3 28.72-64 64-64s64 28.7 63.75 66.42l-2.91 30.56C345.08 116.28 352.1 112 368 112c35.28 0 64 28.7 64 64 0 9.61-2.41 19.25-7.09 28.62l-8.53 16.97 18.16 5.53C461.72 235.41 480 259.88 480 288c0 35.3-28.72 64-64 64z\"]\n};\nvar faTreeChristmas = {\n prefix: 'fal',\n iconName: 'tree-christmas',\n icon: [512, 512, [], \"f7db\", \"M304 352c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm-32-144c0-26.5-21.5-48-48-48s-48 21.5-48 48 21.5 48 48 48 48-21.5 48-48zm-48 16c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm281.3 172.4l-84.5-108.7c10.5-1.6 19.7-8.3 24.3-18.1 5.3-11.2 3.6-24.5-4.4-34.1l-134.1-161 27.9-13.9c10.8-5.4 17.7-16.5 17.7-28.6s-6.8-23.2-17.7-28.6l-33.1-16.6-16.6-33.1C279.2 6.8 268.1 0 256 0c-12.1 0-23.2 6.8-28.6 17.7l-16.6 33.1-33.1 16.6C166.8 72.8 160 83.9 160 96s6.8 23.2 17.7 28.6l27.9 13.9-134.1 161c-7.9 9.5-9.7 22.8-4.4 34.1 4.6 9.8 13.8 16.5 24.3 18.1L6.7 460.4c-7.5 9.6-8.9 22.7-3.5 33.7S19.8 512 32 512h448c12.2 0 23.4-7 28.7-17.9s4.1-24.1-3.4-33.7zM192 96l42.7-21.3L256 32l21.3 42.7L320 96l-42.7 21.3L256 160l-21.3-42.7L192 96zM32 480l124.4-160H96l127.6-153.2 3.7 7.5c5.4 10.8 16.5 17.7 28.6 17.7 12.1 0 23.2-6.8 28.6-17.7l3.7-7.5L416 320h-60.4L480 480H32z\"]\n};\nvar faTreeDecorated = {\n prefix: 'fal',\n iconName: 'tree-decorated',\n icon: [512, 512, [], \"f7dc\", \"M505.3 460.4L445.9 384h2.1c12.1 0 23.2-6.8 28.6-17.7 5.4-10.8 4.3-23.8-3-33.5l-82.2-109.7c9.3-2.2 17.2-8.5 21.5-17.3 5.3-11.1 3.8-24.2-3.9-33.9L281 12c-6.1-7.6-15.3-12-25-12s-18.9 4.4-25 12L103 172c-7.7 9.6-9.2 22.8-3.9 33.9 4.2 8.8 12.2 15.1 21.5 17.3L38.4 332.8c-7.3 9.7-8.4 22.7-3 33.5C40.8 377.2 51.9 384 64 384h2.1L6.7 460.4c-7.5 9.6-8.9 22.7-3.5 33.7C8.6 505 19.8 512 32 512h448c12.2 0 23.4-7 28.7-17.9 5.4-11 4.1-24.1-3.4-33.7zM32 480l99.6-128H64l120-160h-56L256 32l128 160h-56l120 160h-67.6L480 480H32zm272-128c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zM192 256c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm80-96c26.5 0 48-21.5 48-48s-21.5-48-48-48-48 21.5-48 48 21.5 48 48 48zm0-64c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16z\"]\n};\nvar faTreeLarge = {\n prefix: 'fal',\n iconName: 'tree-large',\n icon: [512, 512, [], \"f7dd\", \"M505.3 460.4L445.9 384h2.1c12.1 0 23.2-6.8 28.6-17.7 5.4-10.8 4.3-23.8-3-33.5l-82.2-109.7c9.3-2.2 17.2-8.5 21.5-17.3 5.3-11.1 3.8-24.2-3.9-33.9L281 12c-6.1-7.6-15.3-12-25-12s-18.9 4.4-25 12L103 172c-7.7 9.6-9.2 22.8-3.9 33.9 4.2 8.8 12.2 15.1 21.5 17.3L38.4 332.8c-7.3 9.7-8.4 22.7-3 33.5C40.8 377.2 51.9 384 64 384h2.1L6.7 460.4c-7.5 9.6-8.9 22.7-3.5 33.7S19.8 512 32 512h448c12.2 0 23.4-7 28.7-17.9s4.1-24.1-3.4-33.7zM32 480l99.6-128H64l120-160h-56L256 32l128 160h-56l120 160h-67.6L480 480H32z\"]\n};\nvar faTreePalm = {\n prefix: 'fal',\n iconName: 'tree-palm',\n icon: [640, 512, [], \"f82b\", \"M464.75 64c-44.62 0-87.12 14.79-119.87 39.86C323.48 44 255.61 0 175.25 0 87.35 0 13.85 51.27.54 121.89-3.14 141.44 12.45 160 34 160h59.63L128 132.48l13.29 10.65c-.57.56-1.22 1-1.79 1.54-62.19 62.19-77.88 150.39-37.35 209.72 11 16.08 34.89 19.05 51.1 2.77l120.63-132.22c3 101.71-20.34 201.93-32.72 246.59A31.84 31.84 0 0 0 271.63 512h90.43a31.66 31.66 0 0 0 31.38-26.77c15-93 1.68-192.71-12.49-261.23h89.67L496 198.62 521.37 224H606c21.46 0 37.14-18.44 33.46-38.11C626.15 115.27 552.65 64 464.75 64zM128 91.52L82.41 128 32 127.83C42.29 73.2 103.88 32 175.25 32c53.68 0 100.35 22.88 125.34 56.57-43.22-8.29-92.35 3.48-134.31 33.55zm.59 244.82c-31.37-45.89-16.94-118.56 33.53-169 32.5-32.49 73.47-49.8 110.84-49.8a104.67 104.67 0 0 1 46.22 10.23zM362.06 480l-90.06.05c14.13-50.91 42.32-171.45 32.29-288.46l28.14-30.84C344.55 202.9 382.73 351 362.06 480zm172.56-288L496 153.38 457.37 192h-83.53c-8.77-36.44-15.86-57.13-16.15-58 27.79-24 66.41-38 107.06-38 71.37 0 133 41.2 141.25 96z\"]\n};\nvar faTrees = {\n prefix: 'fal',\n iconName: 'trees',\n icon: [640, 512, [], \"f724\", \"M636.09 389.46l-74.12-85.55H592c6.22 0 11.91-3.61 14.5-9.27 2.62-5.66 1.75-12.32-2.28-17.07l-72.5-85.71H560c6.31 0 12.03-3.72 14.62-9.49 2.56-5.78 1.5-12.52-2.72-17.23L427.9 5.07c-6.12-6.75-17.69-6.75-23.81 0L320 98.55 235.91 5.07c-6.12-6.75-17.69-6.75-23.81 0l-144 160.07a16.06 16.06 0 0 0-2.72 17.23c2.59 5.77 8.31 9.49 14.62 9.49h28.28l-72.5 85.71c-4.03 4.75-4.91 11.41-2.28 17.07 2.59 5.66 8.28 9.27 14.5 9.27h30.03L3.91 389.46c-4.09 4.74-5.06 11.44-2.47 17.13 2.62 5.71 8.31 9.36 14.56 9.36h160v24.46l-24.2 48.42c-5.32 10.64 2.42 23.17 14.31 23.17h115.78c11.89 0 19.63-12.52 14.31-23.17L272 440.41v-24.46h96v24.46l-24.2 48.42c-5.32 10.64 2.42 23.17 14.31 23.17h115.78c11.89 0 19.63-12.52 14.31-23.17L464 440.41v-24.46h160c6.25 0 11.94-3.66 14.56-9.36 2.6-5.69 1.63-12.39-2.47-17.13zM192 479.98l16-32.01v-32.02h32v32.02l16 32.01h-64zM50.78 384l96-112H82.5l94.78-112h-61.34L224 39.92 332.06 160h-61.34l94.78 112h-64.28l96 112H50.78zM384 479.98l16-32.01v-32.02h32v32.02l16 32.01h-64zM439.36 384l-69.39-80.1H400c6.22 0 11.91-3.61 14.5-9.27 2.62-5.66 1.75-12.32-2.28-17.07l-72.5-85.71H368c6.31 0 12.03-3.72 14.62-9.49 2.56-5.78 1.5-12.52-2.72-17.23l-38.29-42.56L416 39.92 524.06 160h-61.34l94.78 112h-64.28l96 112H439.36z\"]\n};\nvar faTriangle = {\n prefix: 'fal',\n iconName: 'triangle',\n icon: [576, 512, [], \"f2ec\", \"M329.6 24c-18.4-32-64.7-32-83.2 0L6.5 440c-18.4 31.9 4.6 72 41.6 72H528c36.9 0 60-40 41.6-72l-240-416zM528 480H48c-12.3 0-20-13.3-13.9-24l240-416c6.1-10.6 21.6-10.7 27.7 0l240 416c6.2 10.6-1.5 24-13.8 24z\"]\n};\nvar faTriangleMusic = {\n prefix: 'fal',\n iconName: 'triangle-music',\n icon: [512, 512, [], \"f8e2\", \"M256.07 256A64.69 64.69 0 1 0 311 287.68L509.66 89a8 8 0 0 0 0-11.31l-11.31-11.35a8 8 0 0 0-11.31 0L288.38 265.05a63.34 63.34 0 0 0-32.31-9.05zm0 96a32 32 0 1 1 32-32 32 32 0 0 1-32 32zM413 230.88l-23.25 23.25 80.83 130.81a60.79 60.79 0 0 1 1.42 62.39A64.17 64.17 0 0 1 415.86 480H96.14A64.18 64.18 0 0 1 40 447.31a60.79 60.79 0 0 1 1.43-62.39l159.87-258.7a64.69 64.69 0 0 1 109.47 0l27.2 44L361.18 147 338 109.38C323.26 85.61 299.22 70.54 272.06 66V8a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v58c-27.21 4.49-51.31 19.57-66 43.4L14.19 368.09A92.46 92.46 0 0 0 12 462.91 96.16 96.16 0 0 0 96.14 512h319.72A96.16 96.16 0 0 0 500 462.91a92.46 92.46 0 0 0-2.16-94.82z\"]\n};\nvar faTrophy = {\n prefix: 'fal',\n iconName: 'trophy',\n icon: [576, 512, [], \"f091\", \"M448 64V12c0-6.6-5.4-12-12-12H140c-6.6 0-12 5.4-12 12v52H12C5.4 64 0 69.4 0 76v61.6C0 199.7 68.1 272 160.7 285.7c29.4 60.7 73.7 90.3 111.3 96.9V480h-86c-14.4 0-26 11.7-26 26.1 0 3.3 2.7 5.9 6 5.9h244c3.3 0 6-2.6 6-5.9 0-14.4-11.6-26.1-26-26.1h-86v-97.4c37.7-6.6 81.9-36.2 111.3-96.9C508 272 576 199.6 576 137.6V76c0-6.6-5.4-12-12-12H448zM32 137.6V96h96v24c0 51.8 7 94.9 18.5 130.2C77.9 232.5 32 178 32 137.6zM288 352c-72 0-128-104-128-232V32h256v88c0 128-56 232-128 232zm256-214.4c0 40.4-46 94.9-114.5 112.6C441 214.9 448 171.8 448 120V96h96v41.6z\"]\n};\nvar faTrophyAlt = {\n prefix: 'fal',\n iconName: 'trophy-alt',\n icon: [576, 512, [], \"f2eb\", \"M370.5 138.9l-50.2-7.3-22.5-45.5c-4-8.1-15.7-8.2-19.7 0l-22.5 45.5-50.2 7.3c-9 1.3-12.6 12.4-6.1 18.8l36.3 35.4-8.6 50c-1.5 8.9 7.9 15.8 16 11.6l44.9-23.6 44.9 23.6c8 4.2 17.5-2.6 16-11.6l-8.6-50 36.3-35.4c6.7-6.4 3-17.5-6-18.8zm-60.3 44.4l5.2 30.6-27.4-14.4-27.5 14.4 5.2-30.6-22.2-21.6 30.7-4.5 13.7-27.8 13.7 27.8 30.7 4.5-22.1 21.6zM448 64V12c0-6.6-5.4-12-12-12H140c-6.6 0-12 5.4-12 12v52H12C5.4 64 0 69.4 0 76v61.6C0 199.7 68.1 272 160.7 285.7c29.4 60.7 73.7 90.3 111.3 96.9V480h-86c-14.4 0-26 11.7-26 26.1 0 3.3 2.7 5.9 6 5.9h244c3.3 0 6-2.6 6-5.9 0-14.4-11.6-26.1-26-26.1h-86v-97.4c37.7-6.6 81.9-36.2 111.3-96.9C508 272 576 199.6 576 137.6V76c0-6.6-5.4-12-12-12H448zM32 137.6V96h96v24c0 51.8 7 94.9 18.5 130.2C77.9 232.5 32 178 32 137.6zM288 352c-72 0-128-104-128-232V32h256v88c0 128-56 232-128 232zm256-214.4c0 40.4-46 94.9-114.5 112.6C441 214.9 448 171.8 448 120V96h96v41.6z\"]\n};\nvar faTruck = {\n prefix: 'fal',\n iconName: 'truck',\n icon: [640, 512, [], \"f0d1\", \"M632 384h-24V275.9c0-16.8-6.8-33.3-18.8-45.2l-83.9-83.9c-11.8-12-28.3-18.8-45.2-18.8H416V78.6c0-25.7-22.2-46.6-49.4-46.6H49.4C22.2 32 0 52.9 0 78.6v290.8C0 395.1 22.2 416 49.4 416h16.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-16h195.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-16H632c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM460.1 160c8.4 0 16.7 3.4 22.6 9.4l83.9 83.9c.8.8 1.1 1.9 1.8 2.8H416v-96h44.1zM144 480c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm63.6-96C193 364.7 170 352 144 352s-49 12.7-63.6 32h-31c-9.6 0-17.4-6.5-17.4-14.6V78.6C32 70.5 39.8 64 49.4 64h317.2c9.6 0 17.4 6.5 17.4 14.6V384H207.6zM496 480c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm0-128c-26.1 0-49 12.7-63.6 32H416v-96h160v96h-16.4c-14.6-19.3-37.5-32-63.6-32z\"]\n};\nvar faTruckContainer = {\n prefix: 'fal',\n iconName: 'truck-container',\n icon: [640, 512, [], \"f4dc\", \"M32 320h336c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64v224c0 17.7 14.3 32 32 32zm0-256h336v224H32V64zm589.3 141.3l-58.5-58.5c-12-12-28.3-18.7-45.3-18.7H448c-8.8 0-16 7.2-16 16v208H228.7c-12.3-9.9-27.7-16-44.7-16-22.8 0-42.8 10.8-56 27.3-13.2-16.6-33.2-27.4-56-27.4-39.8 0-72 32.2-72 72s32.2 72 72 72c22.8 0 42.8-10.8 56-27.3 13.2 16.5 33.2 27.3 56 27.3 39.8 0 72-32.2 72-72 0-8.5-1.7-16.5-4.4-24h198c-2.7 13.2-2.2 27.6 2.8 42.4 8.4 25.1 29.9 44.9 55.6 51.1 52.8 12.8 100-26.9 100-77.6 0-5.5-.6-10.8-1.6-16H624c8.8 0 16-7.2 16-16V250.5c0-17-6.7-33.2-18.7-45.2zM72 448c-22.1 0-40-17.9-40-40s17.9-40 40-40 40 17.9 40 40-17.9 40-40 40zm112 0c-22.1 0-40-17.9-40-40s17.9-40 40-40 40 17.9 40 40-17.9 40-40 40zm280-288h53.5c8.5 0 16.6 3.3 22.6 9.4l54.6 54.6H464v-64zm64 288c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-96h-16.4c-14.6-19.3-37.5-32-63.6-32s-49 12.7-63.6 32h-.4v-96h144v96zm-504-96h16c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8zm96 0h16c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8zm96 0h16c4.4 0 8-3.6 8-8V104c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8z\"]\n};\nvar faTruckCouch = {\n prefix: 'fal',\n iconName: 'truck-couch',\n icon: [640, 512, [], \"f4dd\", \"M416 32h224V0H416c-35.3 0-64 28.7-64 64v307.9L5.9 480.8c-4.3 1.2-6.8 5.6-5.6 9.8L4.5 506c1.2 4.3 5.6 6.8 9.8 5.6L367.2 400H416c0 61.9 50.1 112 112 112s112-50.1 112-112-50.1-112-112-112c-50.6 0-92.8 33.9-106.7 80H384V64c0-17.6 14.4-32 32-32zm112 288c44.1 0 80 35.9 80 80s-35.9 80-80 80-80-35.9-80-80 35.9-80 80-80zM3 325.7l21.4 68.8c5.3 16.8 23.2 26.2 40 21h.1L320 336.1v-33.5L55 385l-21.4-68.8c-4-12.8 3.2-26.1 15.8-30 12.6-3.9 26.1 3.2 30 15.8l11.9 38.2 213.9-66.5-11.9-38.2c-3.9-12.6 3.1-26.1 15.8-30.1 3.7-1.1 7.3-1.3 10.8-.7v-45.3l-2.2-7c-13.1-42.1-58-65.7-100-52.7h-.1L64.9 147.3C22.7 160.4-.9 205.2 12.3 247.4l6.4 20.6C1.6 283.8-3.1 306.1 3 325.7zm71.4-147.8l152.8-47.5h.1c25.2-7.8 52.1 6.4 60 31.6l5 16.1c-24.7 11.8-37.8 40.1-29.5 67l2.4 7.6-152.8 47.5-2.4-7.6c-8.3-26.9-35.2-42.7-62.2-38.5l-5-16.1c-7.9-25.4 6.3-52.2 31.6-60.1z\"]\n};\nvar faTruckLoading = {\n prefix: 'fal',\n iconName: 'truck-loading',\n icon: [640, 512, [], \"f4de\", \"M100.4 414.6l213.4-68.2c16.8-5.4 26.1-23.4 20.7-40.2L276 123.3c-5.4-16.9-23.5-26.2-40.2-20.8L22.5 170.7C5.7 176-3.7 194 1.7 210.9l58.4 182.9c5.3 16.6 23.2 26.2 40.3 20.8zm53.7-252.4l19.5 61-30.4 9.8-19.5-61 30.4-9.8zm-61 19.5l29.3 91.4 91.4-29.2-29.2-91.4 60.9-19.5L304 315.9 90.6 384.1 32.2 201.2l60.9-19.5zM416 32h224V0H416c-35.3 0-64 28.7-64 64v307.9L5.9 480.8c-4.3 1.2-6.8 5.6-5.6 9.8L4.5 506c1.2 4.3 5.6 6.8 9.8 5.6L367.2 400H416c0 61.9 50.1 112 112 112s112-50.1 112-112-50.1-112-112-112c-50.6 0-92.8 33.9-106.7 80H384V64c0-17.6 14.4-32 32-32zm112 288c44.1 0 80 35.9 80 80s-35.9 80-80 80-80-35.9-80-80 35.9-80 80-80z\"]\n};\nvar faTruckMonster = {\n prefix: 'fal',\n iconName: 'truck-monster',\n icon: [640, 512, [], \"f63b\", \"M632 256h-24v-80c0-26.51-21.49-48-48-48h-57.6L419.21 24.02A63.99 63.99 0 0 0 369.24 0H256c-17.67 0-32 14.33-32 32v96H80c-26.51 0-48 21.49-48 48v80H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h24v.88c9.09-12.21 19.85-22.98 32-32.15V176c0-8.82 7.18-16 16-16h480c8.82 0 16 7.18 16 16v80.72c12.15 9.18 22.91 19.94 32 32.15V288h24c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM256 128V32h113.24c9.77 0 18.88 4.38 24.99 12.01L461.42 128H256zm16 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 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 352zM160 464c-44.18 0-80-35.82-80-80s35.82-80 80-80 80 35.82 80 80-35.82 80-80 80zm432-112h-5.2c-2.2-7.33-5.07-14.28-8.65-20.89l3.68-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-20.89-8.65V272c0-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-8.65 20.89H368c-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.68-3.67c3.58-6.61 6.45-13.56 8.65-20.89h5.2c8.84 0 16-7.16 16-16v-32c-.01-8.84-7.17-16-16.01-16zM480 464c-44.18 0-80-35.82-80-80s35.82-80 80-80 80 35.82 80 80-35.82 80-80 80z\"]\n};\nvar faTruckMoving = {\n prefix: 'fal',\n iconName: 'truck-moving',\n icon: [640, 512, [], \"f4df\", \"M621.3 205.3l-58.5-58.5c-12-12-28.3-18.7-45.3-18.7H464V64c0-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-16V250.5c0-17-6.7-33.2-18.7-45.2zM80 448c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm128 0c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm224-96H271.6c-14.6-19.3-37.5-32-63.6-32s-49 12.7-63.6 32h-.7C129 332.7 106 320 80 320c-18.1 0-34.6 6.2-48 16.4V64h400zm32-192h53.5c8.5 0 16.6 3.3 22.6 9.4l54.6 54.6H464zm64 288c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-96h-16.4c-14.6-19.3-37.5-32-63.6-32s-49 12.7-63.6 32h-.4v-96h144z\"]\n};\nvar faTruckPickup = {\n prefix: 'fal',\n iconName: 'truck-pickup',\n icon: [640, 512, [], \"f63c\", \"M632 352h-24V224c0-26.51-21.49-48-48-48h-44.8L419.21 56.02A63.99 63.99 0 0 0 369.24 32H256c-17.67 0-32 14.33-32 32v112H80c-26.51 0-48 21.49-48 48v128H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h72c0 53.02 42.98 96 96 96s96-42.98 96-96h96c0 53.02 42.98 96 96 96s96-42.98 96-96h72c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM256 64h113.24c9.78 0 18.88 4.38 24.99 12.01L474.22 176H256V64zm-80 384c-35.35 0-64-28.65-64-64s28.65-64 64-64 64 28.65 64 64-28.65 64-64 64zm288 0c-35.35 0-64-28.65-64-64s28.65-64 64-64 64 28.65 64 64-28.65 64-64 64zm112-96h-21.88c-13.22-37.2-48.38-64-90.12-64s-76.9 26.8-90.12 64H266.12c-13.22-37.2-48.38-64-90.12-64s-76.9 26.8-90.12 64H64V224c0-8.82 7.18-16 16-16h480c8.82 0 16 7.18 16 16v128z\"]\n};\nvar faTruckPlow = {\n prefix: 'fal',\n iconName: 'truck-plow',\n icon: [640, 512, [], \"f7de\", \"M572.4 391.4c-9-9-14.1-21.2-14.1-34v-139c0-12.7 5.1-25 14.1-34l65.2-63.6c3.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-65.3 63.6c-15 15-23.4 35.4-23.4 56.6V272H480v-32c0-26.5-21.5-48-48-48h-38.9L306.4 47.6C300.7 38 290.1 32 278.9 32H152c-13.2 0-24 10.8-24 24v136H48c-26.5 0-48 21.5-48 48v96c0 21 13.5 38.6 32.3 45.2 0 1-.3 1.9-.3 2.8 0 53 43 96 96 96s96-43 96-96h64c0 53 43 96 96 96s96-43 96-96v-80h46.3v53.5c0 21.2 8.4 41.6 23.4 56.6l65.2 63.6c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-65.1-63.7zM160 64h118.9l76.8 128H160V64zm-32 384c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm165.9-96h-75.8c-13.2-37.2-48.4-64-90.1-64-40.6 0-75.1 25.2-89.1 60.8-4.1-2.9-6.9-7.4-6.9-12.8v-96c0-8.8 7.2-16 16-16h384c8.8 0 16 7.2 16 16v72.9c-17-15.3-39.3-24.9-64-24.9-41.7 0-76.9 26.8-90.1 64zm90.1 96c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64z\"]\n};\nvar faTruckRamp = {\n prefix: 'fal',\n iconName: 'truck-ramp',\n icon: [640, 512, [], \"f4e0\", \"M416 32h224V0H416c-35.3 0-64 28.7-64 64v307.9L5.9 480.8c-4.3 1.2-6.8 5.6-5.6 9.8L4.5 506c1.2 4.3 5.6 6.8 9.8 5.6L367.2 400H416c0 61.9 50.1 112 112 112s112-50.1 112-112-50.1-112-112-112c-50.7 0-93 33.9-106.8 80H384V64c0-17.6 14.4-32 32-32zm112 288c44.1 0 80 35.9 80 80s-35.9 80-80 80-80-35.9-80-80 35.9-80 80-80z\"]\n};\nvar faTrumpet = {\n prefix: 'fal',\n iconName: 'trumpet',\n icon: [640, 512, [], \"f8e3\", \"M617.38 65.36l-.09-.07a32.32 32.32 0 0 0-35.85 12.94c-.44.66-44.93 66.33-112.36 102-14.57 7.67-31.95 11.77-50.3 11.77h-50.36v-24a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v24h-32v-24a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v24h-31.8v-24a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v24H33v-8a8 8 0 0 0-8-8H9a8 8 0 0 0-8 8v112a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-8h48.49a103.74 103.74 0 0 0 87.25 160h239.62A103.93 103.93 0 0 0 512.2 344a100.34 100.34 0 0 0-1.83-16.84c43.6 34.41 70.73 74.07 71.1 74.63A32 32 0 0 0 608.05 416a32.85 32.85 0 0 0 9.33-1.41A31.83 31.83 0 0 0 640 384V96a31.82 31.82 0 0 0-22.62-30.64zM168.74 416a71.74 71.74 0 0 1-44.63-128h84.56v128zm71.88 0V288h31.95v128zm63.9 0V288h32v128zm103.84 0h-39.94V288h50.36a108.77 108.77 0 0 1 44 9.43A71.65 71.65 0 0 1 408.36 416zM484 271.45C464.87 261.32 442.31 256 418.78 256H33v-32h385.78c23.53 0 46.09-5.34 65.21-15.47C559.38 168.62 607.77 96.42 608 96l.16 288.25c-.39-.73-48.78-72.92-124.16-112.8z\"]\n};\nvar faTshirt = {\n prefix: 'fal',\n iconName: 'tshirt',\n icon: [608, 512, [], \"f553\", \"M606.4 111.6c-2.6-7.8-8-14.1-15.2-17.8L403.8 0l-7.9 11.1c-15.7 22-51.8 36.2-91.9 36.2s-76.2-14.2-91.9-36.2L204.2 0 16.8 93.8c-7.3 3.7-12.7 10-15.2 17.8-2.6 7.8-2 16.1 1.7 23.4l51.5 104c3.6 7.4 9.8 12.9 17.5 15.4 7.7 2.7 16 2 23.2-1.6l48.6-24v237.8c0 25 20.1 45.3 44.8 45.3h230.4c24.7 0 44.8-20.3 44.8-45.3V228.9l48.5 24c7.2 3.7 15.5 4.3 23.3 1.6 7.7-2.6 13.9-8.1 17.5-15.4L604.9 135c3.5-7.3 4.1-15.6 1.5-23.4zm-79.7 112.3L432 177.1v289.7c0 7.1-5.7 12.9-12.8 12.9H188.8c-7.1 0-12.8-5.8-12.8-12.9V177.1l-92.6 47.6-52.3-101.9 164.1-82.2c24 24.3 64.2 39 108.9 39S389 64.9 413 40.6L575.5 122l-48.8 101.9z\"]\n};\nvar faTty = {\n prefix: 'fal',\n iconName: 'tty',\n icon: [512, 512, [], \"f1e4\", \"M364 464H148c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h216c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12zm-180-68c0 6.6 5.4 12 12 12h24c6.6 0 12-5.4 12-12v-24c0-6.6-5.4-12-12-12h-24c-6.6 0-12 5.4-12 12v24zm-48-24c0-6.6-5.4-12-12-12h-24c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12h24c6.6 0 12-5.4 12-12v-24zm-60 84H52c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12h24c6.6 0 12-5.4 12-12v-24c0-6.6-5.4-12-12-12zM52 312h24c6.6 0 12-5.4 12-12v-24c0-6.6-5.4-12-12-12H52c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12zm216-48h-24c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12h24c6.6 0 12-5.4 12-12v-24c0-6.6-5.4-12-12-12zm-96 0h-24c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12h24c6.6 0 12-5.4 12-12v-24c0-6.6-5.4-12-12-12zm288 0h-24c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12h24c6.6 0 12-5.4 12-12v-24c0-6.6-5.4-12-12-12zm42.2-161.7C366.1-34.2 145.6-33.9 9.8 102.3c-11 11-12.9 27.9-4.7 41.1l40.5 65c8.5 13.7 25.5 19.2 40.5 13.3l81-32.5c13.6-5.5 22.1-19.5 20.7-34.2l-4.3-43.2c47.2-14.5 97.9-14.5 145.1 0l-4.3 43.2c-1.5 14.7 7 28.7 20.7 34.2l81 32.5c14.9 6 31.9.4 40.5-13.3l40.5-65c8.2-13.2 6.2-30.1-4.8-41.1zm-22.4 24.1l-40.5 65c-.3.5-.9.7-1.4.5l-81-32.5c-.5-.2-.8-.7-.7-1.2l6.8-68.4c-79-28.6-137.8-27.5-213.8 0l6.8 68.4c.1.5-.2 1-.7 1.2l-81 32.5c-.5.2-1.1 0-1.4-.5l-40.5-65c-.3-.5-.2-1.1.2-1.5C156 1 356.1 1.1 479.6 124.9c.4.4.5 1.1.2 1.5zM460 456h-24c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12h24c6.6 0 12-5.4 12-12v-24c0-6.6-5.4-12-12-12zm-180-60c0 6.6 5.4 12 12 12h24c6.6 0 12-5.4 12-12v-24c0-6.6-5.4-12-12-12h-24c-6.6 0-12 5.4-12 12v24zm144-24c0-6.6-5.4-12-12-12h-24c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12h24c6.6 0 12-5.4 12-12v-24zm-60-60c6.6 0 12-5.4 12-12v-24c0-6.6-5.4-12-12-12h-24c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12h24z\"]\n};\nvar faTurkey = {\n prefix: 'fal',\n iconName: 'turkey',\n icon: [640, 512, [], \"f725\", \"M579.77 75.55c5.52-33.13-19.71-70.89-58.88-75.13-46.18-5.18-83.29 38.92-71.17 83.83 2.9 11.06.5 21.06-6.46 26.76-11.92 9.79-15 12.73-29.5 21.66C375.87 110.18 333.51 96 288.56 96 129.74 96 0 269.14 0 384s129.74 128 288.56 128 287.55-13.12 287.55-128c0-52.74-27.36-117.63-72.09-172.54 4-3.64 1.55-2.23 10-9.17 10.76-8.89 24.4-2.62 28.3-.5a64.79 64.79 0 0 0 24.27 7.62c36 4.05 69.16-22.41 73-59.79 3.73-35.33-20.59-69.71-59.82-74.07zM544.17 384c0 70.88-66.89 96-255.6 96S32 454.89 32 384c0-98.75 118-256 256.61-256 31.18 0 61.14 8.26 89 21.71-23.1 7.91-38.83 9.48-58.87 10.15-56.86 1.94-106.69 40-121.2 92.7-12 43.54-1.31 89.2 28.58 122.13A125.85 125.85 0 0 0 319.73 416c77.87 0 113.27-63.53 122.68-102 7.09-29 20.95-55.83 39.38-78.88 38.61 48.37 62.38 104.5 62.38 148.88zm13.51-210.27C480.61 131.64 419.44 273.48 411 307.89c-9.58 39.08-38.63 68.34-74 74.54-33.2 5.91-65.09-4.78-87.28-29.23-22.5-24.78-30.48-59.2-21.4-92.12 4-14.51 23.43-67 98.92-69.48C374.53 190 500.46 151.48 480.58 76a35.38 35.38 0 0 1 11.95-36.43c23.12-18.73 58.91-.63 55.6 31.46a35.05 35.05 0 0 1-5.34 15 16 16 0 0 0 19.13 23.45 33.57 33.57 0 0 1 15.29-2.08c18.94 2 32.67 19.48 30.67 38.86-2.67 25.41-29.58 38.76-50.2 27.43z\"]\n};\nvar faTurntable = {\n prefix: 'fal',\n iconName: 'turntable',\n icon: [576, 512, [], \"f8e4\", \"M484.59 304.5l-4.74-2.37c0-.48.15-.93.15-1.41V136a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v152a31.57 31.57 0 0 0-34 15l.53.31c-4.59 7.27-12 21.85-27.18 52.08a32 32 0 0 0 14.31 42.92l28.62 14.31a31.78 31.78 0 0 0 14.28 3.4 32.31 32.31 0 0 0 10.19-1.66 31.78 31.78 0 0 0 18.44-16l25.66-50.91a32 32 0 0 0-14.29-42.95zm-40 79.5L416 369.73s23.59-46.79 25.78-50.78l-.13-.07v-.07l28.62 14.31zM224 232a24 24 0 1 0 24 24 24 24 0 0 0-24-24zM512 32H64A64 64 0 0 0 0 96v320a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64V96a64 64 0 0 0-64-64zm32 384a32 32 0 0 1-32 32H64a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32h448a32 32 0 0 1 32 32zM224 96a160 160 0 1 0 160 160A160 160 0 0 0 224 96zm0 288a128 128 0 1 1 128-128 128.14 128.14 0 0 1-128 128z\"]\n};\nvar faTurtle = {\n prefix: 'fal',\n iconName: 'turtle',\n icon: [576, 512, [], \"f726\", \"M464 128c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm81.59-19.77C510.52 83.36 487.21 63.89 458.64 64c-70.67.28-74.64 70.17-74.64 73v71.19c-.02 6.89-2.07 13.4-4.99 19.59C306.47-5.44 87.67 22.02 33.15 241.28c-1.28 5.16-1.28 10.24-.52 15.11C14.53 257.47 0 272.21 0 290.59c0 14.91 9.5 28.11 23.66 32.81l47.69 15.91L36.31 400c-5.78 10.02-5.78 21.98 0 32s16.16 16 27.72 16h36.94c11.38 0 22-6.12 27.72-16l33.88-58.66C183.78 379.75 204.75 384 240 384s56.22-4.25 77.44-10.66l33.88 58.69c5.72 9.84 16.34 15.97 27.72 15.97h36.94c11.56 0 21.94-5.98 27.72-16 5.78-10.02 5.78-21.98 0-32l-38.47-66.64c17.81-9.58 32.88-22.28 44.91-37.91 12.75-16.58 21.47-35.19 26.03-55.45h27.19c40.06 0 72.66-32.59 72.66-72.66-.02-23.39-11.4-45.48-30.43-59.11zM351.8 249.01c.89 3.59-1.52 6.99-4.04 6.99H68.25c-2.53 0-4.93-3.42-4.04-7 50.42-202.79 236.99-203.48 287.59.01zM503.34 208h-54.75l-1.75 14c-2.53 20.03-9.97 38.17-22.09 53.94-19.88 25.87-43.07 33.45-65.25 42.25L415.97 416H379l-46.75-81.05C303.17 344.49 284.62 352 240 352c-45.86 0-64.64-8-92.25-17.05L100.97 416H64l54.66-94.63L32 288h303.06c29.22 0 51.64-15.08 64.38-31.59 10.78-14.05 16.53-30.7 16.56-48.19V137c0-26.99 22.44-40.55 42.26-41 19.93-.45 36.75 15.44 68.71 38.26 10.66 7.62 17.03 20 17.03 33.08 0 22.43-18.25 40.66-40.66 40.66z\"]\n};\nvar faTv = {\n prefix: 'fal',\n iconName: 'tv',\n icon: [640, 512, [], \"f26c\", \"M592 0H48A48 48 0 0 0 0 48v320a48 48 0 0 0 48 48h256v64H136a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h368a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H336v-64h256a48 48 0 0 0 48-48V48a48 48 0 0 0-48-48zm16 368a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h544a16 16 0 0 1 16 16z\"]\n};\nvar faTvAlt = {\n prefix: 'fal',\n iconName: 'tv-alt',\n icon: [640, 512, [], \"f8e5\", \"M536 480H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM608 0H32A32 32 0 0 0 0 32v352a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V32a32 32 0 0 0-32-32zm0 384H32V32h576z\"]\n};\nvar faTvMusic = {\n prefix: 'fal',\n iconName: 'tv-music',\n icon: [640, 512, [], \"f8e6\", \"M608 0H32A32 32 0 0 0 0 32v352a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V32a32 32 0 0 0-32-32zm0 384H32V32h576zm-72 96H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8zM240 320c26.5 0 48-14.33 48-32V179.16l96-37.52V226a69.89 69.89 0 0 0-16-2c-26.5 0-48 14.33-48 32s21.5 32 48 32 48-14.33 48-32V112a16 16 0 0 0-20.81-15.25l-128 47.25A16 16 0 0 0 256 159.25V258a69.89 69.89 0 0 0-16-2c-26.5 0-48 14.33-48 32s21.5 32 48 32z\"]\n};\nvar faTvRetro = {\n prefix: 'fal',\n iconName: 'tv-retro',\n icon: [512, 512, [], \"f401\", \"M416 243v-8c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12zm96-100v288c0 26.5-21.5 48-48 48h-16v33h-16l-11-33H91l-11 33H64v-33H48c-26.5 0-48-21.5-48-48V143c0-26.5 21.5-48 48-48h160.1l-74.8-67.1c-6.6-5.9-7.2-16-1.3-22.6 5.9-6.6 16-7.2 22.6-1.3L256 95h.8L357.3 4.1c6.6-5.9 16.7-5.4 22.6 1.2 5.9 6.6 5.4 16.7-1.2 22.6L304.5 95H464c26.5 0 48 21.5 48 48zm-32 0c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v288c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16V143zm-256 49c-68.8 0-106.2 2.3-125.3 4.3-1.3 14.4-2.7 41.5-2.7 90.7 0 50.5 1.4 78 2.7 92.8 19.2 1.9 56.5 4.2 125.3 4.2s106.1-2.3 125.3-4.2c1.3-14.7 2.7-42.3 2.7-92.8 0-49.2-1.4-76.3-2.7-90.7-19.1-2-56.5-4.3-125.3-4.3m0-32c128 0 152 8 152 8s8 0 8 119c0 121-8 121-8 121s-24 8-152 8-152-8-152-8-8 0-8-121c0-119 8-119 8-119s24-8 152-8zm204 159h8c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-8c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12z\"]\n};\nvar faTypewriter = {\n prefix: 'fal',\n iconName: 'typewriter',\n icon: [512, 512, [], \"f8e7\", \"M312 384h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm64 0h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm-256 0h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm360-192h-32v-82.73a32.07 32.07 0 0 0-9.38-22.65L361.38 9.38A32 32 0 0 0 338.75 0H112a48 48 0 0 0-48 48v144H32a32 32 0 0 0-32 32v64a32 32 0 0 0 32 32v128a64 64 0 0 0 64 64h320a64 64 0 0 0 64-64V320a32 32 0 0 0 32-32v-64a32 32 0 0 0-32-32zM352 45.25L402.75 96H352zM96 48a16 16 0 0 1 16-16h208v64a32 32 0 0 0 32 32h64v64h-50.75a32 32 0 0 0-22.62 9.37l-13.26 13.26a32 32 0 0 1-22.62 9.37h-101.5a32 32 0 0 1-22.62-9.37l-13.26-13.26a32 32 0 0 0-22.62-9.37H96zm352 400a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V320h384zm32-160H32v-64h114.75L160 237.25A63.58 63.58 0 0 0 205.25 256h101.5A63.58 63.58 0 0 0 352 237.25L365.25 224H480zM144 440a8 8 0 0 0 8 8h208a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H152a8 8 0 0 0-8 8zm40-56h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm64 0h16a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8z\"]\n};\nvar faUfo = {\n prefix: 'fal',\n iconName: 'ufo',\n icon: [640, 512, [], \"e047\", \"M320,344a24,24,0,1,0,24,24A23.99993,23.99993,0,0,0,320,344ZM128,296a24,24,0,1,0,24,24A23.99993,23.99993,0,0,0,128,296Zm384,0a24,24,0,1,0,24,24A23.99993,23.99993,0,0,0,512,296Zm-21.00391-83.79883C479.42969,128.63672,407.25977,64,320,64S160.57031,128.63672,149.00391,212.20117C59.7207,234.9043,0,274.54688,0,320c0,70.69141,143.26953,128,320,128s320-57.30859,320-128C640,274.54688,580.2793,234.9043,490.99609,212.20117ZM320,96c77.76172,0,140.80078,62.51562,140.80078,139.63672,0,6.26953-1.05273,12.25586-1.86133,18.30664A299.64457,299.64457,0,0,1,320,288a299.64457,299.64457,0,0,1-138.93945-34.05664c-.8086-6.05078-1.86133-12.03711-1.86133-18.30664C179.19922,158.51562,242.23828,96,320,96Zm0,320c-175.80664,0-288-56.85742-288-96,0-24.00977,42.82031-54.46875,116.05859-74.58984.543,5.31.12628,4.44162,1.28321,12.77148a31.99835,31.99835,0,0,0,16.92578,24.13672A333.93177,333.93177,0,0,0,320,320a333.93177,333.93177,0,0,0,153.73242-37.68164,31.99835,31.99835,0,0,0,16.92578-24.13672c1.15479-8.31444.74077-7.466,1.28321-12.77344C565.17969,265.5293,608,295.99023,608,320,608,359.14258,495.80664,416,320,416Z\"]\n};\nvar faUfoBeam = {\n prefix: 'fal',\n iconName: 'ufo-beam',\n icon: [640, 512, [], \"e048\", \"M320,216.00007a24,24,0,1,0,24,24A23.99993,23.99993,0,0,0,320,216.00007Zm-168-32a24,24,0,1,0,24,24A23.99993,23.99993,0,0,0,152,184.00007Zm336,0a24,24,0,1,0,24,24A23.99993,23.99993,0,0,0,488,184.00007Zm120,24c0-40.92969-56.92578-76.45312-141.21875-95.98633C449.06445,47.33015,389.36523.00007,320,.00007S190.93555,47.33015,173.21875,112.01374C88.92578,131.547,32,167.07038,32,208.00007c0,61.85547,128.94141,112,288,112S608,269.85554,608,208.00007Zm-288-176a119.89847,119.89847,0,0,1,119.79883,110.957c-35.75586,10.84571-76.4961,17.043-119.79883,17.043s-84.043-6.19726-119.79883-17.043A119.89847,119.89847,0,0,1,320,32.00007Zm0,256c-165.64062,0-256-52.84765-256-80,0-17.13672,36.58008-44.332,104.79492-62.1875,1.17774,12.77539,9.51172,23.94336,22.11719,27.76758C231.209,185.80281,274.64062,192.00007,320,192.00007s88.791-6.19726,129.08789-18.41992c12.60547-3.82422,20.93945-14.99219,22.11719-27.76758C539.41992,163.668,576,190.86335,576,208.00007,576,235.15242,485.64062,288.00007,320,288.00007Zm200.9082,34.252c-9.98828,3.41016-20.30664,6.59571-31.08984,9.42579L578.5293,507.57624a8.00084,8.00084,0,0,0,10.73242,3.57813l14.31445-7.1582a8.00142,8.00142,0,0,0,3.57813-10.73243ZM32.8457,493.26374a8.00142,8.00142,0,0,0,3.57813,10.73243l14.31445,7.1582a8.00084,8.00084,0,0,0,10.73242-3.57813l88.71094-175.89843c-10.7832-2.83008-21.10156-6.01563-31.08984-9.42579Z\"]\n};\nvar faUmbrella = {\n prefix: 'fal',\n iconName: 'umbrella',\n icon: [576, 512, [], \"f0e9\", \"M575.2 253.8C545.9 130.8 430.5 54.5 304 48.4V16c0-8.8-7.2-16-16-16s-16 7.2-16 16v32.4C146 54.4 30.9 129.9.8 253.7c-6 23.9 22.8 44.1 44.1 25.1 49.5-46.1 89.9-27.7 125.4 27.7 11.4 17.8 34.8 16.9 45.6 0 15.2-23.5 31.2-45 56.2-51.5v193.1c0 17.7-14.3 32-32 32-13.6 0-25.7-8.6-30.2-21.3-3-8.3-12.1-12.7-20.4-9.8-8.3 2.9-12.7 12.1-9.7 20.4 9 25.5 33.3 42.7 60.4 42.7 35.3 0 64-28.7 64-64V255.2c30.1 8.3 44.6 33.3 56.2 51.2 10.8 17 34.3 17.7 45.6 0 36.2-55.9 76.6-73 125.4-27.7 20.9 18.9 49.7-1 43.8-24.9zm-191.9 28.7C359 242.8 325.4 221 288 221c-44.5 0-71.6 27-94.7 61.5-41.6-67.8-107.5-77.5-156.1-39.3C72.1 138.7 178.8 80 288 80c109.3 0 217 59.3 251.2 163.7-58.3-43.9-114.1-21.9-155.9 38.8z\"]\n};\nvar faUmbrellaBeach = {\n prefix: 'fal',\n iconName: 'umbrella-beach',\n icon: [640, 512, [], \"f5ca\", \"M443.48 18.08C409.77 5.81 375.31 0 341.41 0c-90.47 0-176.84 41.45-233.44 112.33-6.7 8.39-2.67 21.04 7.42 24.71l236.15 85.95L257.99 480H8c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h560c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H292.03l89.56-246.07 236.75 86.17c1.83.67 3.7.98 5.53.98 8.27 0 15.82-6.35 16.04-15.14 3.03-124.66-72.77-242.85-196.43-287.86zm-295.31 96.84C198.11 62.64 268.77 32 341.42 32c7.81 0 15.6.35 23.36 1.04-36.87 23.16-73.76 66.62-103.06 123.21l-113.55-41.33zm315.21 114.73l-171.12-62.28C332.69 90.93 384.89 46.1 420.4 46.09c4.35 0 8.32.68 12.13 2.06 19.56 7.12 33.97 35.16 38.56 75 3.66 31.83.53 68.45-7.71 106.5zm30.8 11.21c13.83-61.57 13.67-118.28.7-159.64 65.33 46.08 107.58 119.45 112.61 200.89l-113.31-41.25z\"]\n};\nvar faUnderline = {\n prefix: 'fal',\n iconName: 'underline',\n icon: [448, 512, [], \"f0cd\", \"M440 0H296a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h56v224a128 128 0 0 1-256 0V32h56a8 8 0 0 0 8-8V8a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h56v224c0 88.22 71.78 160 160 160s160-71.78 160-160V32h56a8 8 0 0 0 8-8V8a8 8 0 0 0-8-8zm0 480H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h432a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faUndo = {\n prefix: 'fal',\n iconName: 'undo',\n icon: [512, 512, [], \"f0e2\", \"M20 8h10c6.627 0 12 5.373 12 12v110.625C85.196 57.047 165.239 7.715 256.793 8.001 393.18 8.428 504.213 120.009 504 256.396 503.786 393.181 392.834 504 256 504c-63.926 0-122.202-24.187-166.178-63.908-5.113-4.618-5.354-12.561-.482-17.433l7.069-7.069c4.503-4.503 11.749-4.714 16.482-.454C150.782 449.238 200.935 470 256 470c117.744 0 214-95.331 214-214 0-117.744-95.331-214-214-214-82.862 0-154.737 47.077-190.289 116H180c6.627 0 12 5.373 12 12v10c0 6.627-5.373 12-12 12H20c-6.627 0-12-5.373-12-12V20c0-6.627 5.373-12 12-12z\"]\n};\nvar faUndoAlt = {\n prefix: 'fal',\n iconName: 'undo-alt',\n icon: [512, 512, [], \"f2ea\", \"M256.2 8c-57 0-109.5 19.2-151.5 51.5L54.6 9.4C34.6-10.7 0 3.5 0 32v128c0 17.7 14.3 32 32 32h128c28.5 0 42.7-34.5 22.6-54.6L129 83.7C165.3 56.9 209.5 42 256 42c118.4 0 214 96 214 214 0 118.4-96 214-214 214-53.7 0-104.2-19.8-143.1-54.9-4.7-4.3-12-4-16.5.5l-7.1 7.1c-4.9 4.9-4.6 12.8.5 17.4 44 39.7 102.3 63.9 166.2 63.9 136.8 0 247.7-110.8 248-247.5S392.8 8.1 256.2 8zM160 160H32V32z\"]\n};\nvar faUnicorn = {\n prefix: 'fal',\n iconName: 'unicorn',\n icon: [640, 512, [], \"f727\", \"M448 80c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm183.98-16h-96.93l-.24-.3c5.39-9.45 8.38-20.32 8.38-31.7 0-17.67-14.33-32-32-32H400c-70.58 0-128 57.42-128 128H163.36c-35.98 0-67.27 19.42-84.7 48.13C35.11 176.87 0 212.28 0 256v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56c0-21.5 14.23-39.48 33.71-45.59-.96 5.54-1.71 11.15-1.71 16.96 0 24.2 8.9 47.33 24.53 65.24l-21.97 74.27c-3.12 10.77-3.38 22.03-.8 32.74l21.13 87.86C90.34 501.86 103.21 512 118 512h57.53c20.95 0 36.12-19.76 31.02-39.86l-21.68-85.57 19.29-53.73L256 344.36V480c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V323.8c20.5-21.5 32-49.75 32-79.59v-50.52l14.55 21.82c19.11 28.67 49.98 20.67 55.45 18.8l25.52-8.71c19.44-6.63 32.5-24.89 32.49-45.44l-.03-64.83 92.46-36.67c6.57-4.39 3.46-14.66-4.46-14.66zM501.17 195.31l-25.52 8.71c-9.33 3.19-16.14-2.76-18.48-6.27L432 160l-48-16v100.21c0 26.67-12.65 50.17-32 65.6V480h-64V318.69l-104.43-23.21-32.12 89.47L175.53 480H118l-21.13-87.86a31.698 31.698 0 0 1 .37-16.18l27.63-93.41C107.45 270.37 96 250.24 96 227.37c0-37.21 30.16-67.37 67.37-67.37H304v-32c0-53.02 42.98-96 96-96h111.19c0 13.29-8.1 24.66-19.63 29.5l20.39 24.78.05 93.88a16 16 0 0 1-10.83 15.15z\"]\n};\nvar faUnion = {\n prefix: 'fal',\n iconName: 'union',\n icon: [320, 512, [], \"f6a2\", \"M170.65 447.65C255.69 442.15 320 367.74 320 282.52V72c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v211.48c0 68.11-51.28 127.67-119.24 132.22C94.24 420.7 32 361.48 32 288V72c0-4.42-3.58-8-8-8H8c-4.42 0-8 3.58-8 8v216c0 91.89 77.46 165.69 170.65 159.65z\"]\n};\nvar faUniversalAccess = {\n prefix: 'fal',\n iconName: 'universal-access',\n icon: [512, 512, [], \"f29a\", \"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 464c-118.663 0-216-96.055-216-216 0-118.663 96.055-216 216-216 118.663 0 216 96.055 216 216 0 118.663-96.055 216-216 216zm139.701-299.677c2.03 8.601-3.296 17.218-11.896 19.249-31.006 7.321-59.956 13.775-88.689 17.114.535 114.852 13.167 139.988 27.255 176.036 4.02 10.289-1.063 21.888-11.352 25.906-10.296 4.022-21.89-1.069-25.906-11.352-9.319-23.841-18.551-44.565-24.271-87.277h-9.685c-5.728 42.773-14.986 63.515-24.27 87.276-4.023 10.299-15.633 15.369-25.906 11.353-10.289-4.019-15.371-15.617-11.353-25.906 14.103-36.083 26.72-61.235 27.255-176.036-28.734-3.339-57.683-9.793-88.689-17.114-8.6-2.031-13.926-10.648-11.895-19.249 2.03-8.6 10.647-13.926 19.249-11.896 105.222 24.845 135.48 24.893 240.904 0 8.599-2.022 17.218 3.297 19.249 11.896zm-177.895-42.517c0-21.094 17.1-38.193 38.194-38.193s38.194 17.1 38.194 38.193S277.094 168 256 168s-38.194-17.1-38.194-38.194z\"]\n};\nvar faUniversity = {\n prefix: 'fal',\n iconName: 'university',\n icon: [512, 512, [], \"f19c\", \"M496 448h-16v-40c0-13.255-10.745-24-24-24h-40V208h-32v176h-64V208h-32v176h-64V208h-32v176h-64V208H96v176H56c-13.255 0-24 10.745-24 24v40H16c-8.837 0-16 7.163-16 16v8a8 8 0 0 0 8 8h496a8 8 0 0 0 8-8v-8c0-8.837-7.163-16-16-16zM64 416h384v32H64v-32zm440.267-280L271.179 34.463a48.004 48.004 0 0 0-30.358 0L7.733 136A11.999 11.999 0 0 0 0 147.216V156c0 6.627 5.373 12 12 12h20v12c0 6.627 5.373 12 12 12h424c6.627 0 12-5.373 12-12v-12h20c6.627 0 12-5.373 12-12v-8.784c0-4.982-3.077-9.445-7.733-11.216zM448 160H64v-13.606l187.943-81.871a16.004 16.004 0 0 1 8.114 0L448 146.394V160z\"]\n};\nvar faUnlink = {\n prefix: 'fal',\n iconName: 'unlink',\n icon: [512, 512, [], \"f127\", \"M207.889 137.235c-4.686-4.686-4.686-12.284 0-16.971l82.159-82.159c50.81-50.813 133.046-50.803 183.848 0 50.812 50.81 50.802 133.048-.001 183.847l-82.159 82.159c-4.686 4.686-12.284 4.686-16.971 0l-8.485-8.485c-4.686-4.686-4.686-12.284 0-16.971l82.159-82.159c36.739-36.741 36.735-96.2 0-132.936-36.741-36.741-96.199-36.736-132.937-.001l-82.159 82.159c-4.686 4.686-12.284 4.686-16.971 0l-8.483-8.483zm-11.391 311.294c-36.65 36.65-96.286 36.651-132.937-.001-36.736-36.736-36.739-96.194 0-132.936l82.19-82.19c4.686-4.686 4.686-12.284 0-16.971l-8.485-8.485c-4.686-4.686-12.284-4.686-16.971 0l-82.19 82.189c-50.802 50.8-50.813 133.038 0 183.848 50.686 50.688 133.162 50.687 183.847 0l82.19-82.19c4.686-4.686 4.686-12.284 0-16.971l-8.484-8.484c-4.686-4.686-12.284-4.686-16.971 0l-82.189 82.191zM11.999 3.515L3.514 12c-4.686 4.686-4.686 12.284 0 16.971L483.03 508.485c4.686 4.686 12.284 4.686 16.971 0l8.485-8.485c4.686-4.686 4.686-12.284 0-16.971L28.97 3.515c-4.686-4.687-12.284-4.687-16.971 0z\"]\n};\nvar faUnlock = {\n prefix: 'fal',\n iconName: 'unlock',\n icon: [384, 512, [], \"f09c\", \"M336 256H96v-96c0-70.6 25.4-128 96-128s96 57.4 96 128v20c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-18.5C320 73.1 280.9.3 192.5 0 104-.3 64 71.6 64 160v96H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zm16 208c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V304c0-8.8 7.2-16 16-16h288c8.8 0 16 7.2 16 16v160z\"]\n};\nvar faUnlockAlt = {\n prefix: 'fal',\n iconName: 'unlock-alt',\n icon: [384, 512, [], \"f13e\", \"M336 256H96v-96c0-70.6 25.4-128 96-128s96 57.4 96 128v20c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-18.5C320 73.1 280.9.3 192.5 0 104-.3 64 71.6 64 160v96H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zm16 208c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V304c0-8.8 7.2-16 16-16h288c8.8 0 16 7.2 16 16v160zm-160-32c-8.8 0-16-7.2-16-16v-64c0-8.8 7.2-16 16-16s16 7.2 16 16v64c0 8.8-7.2 16-16 16z\"]\n};\nvar faUpload = {\n prefix: 'fal',\n iconName: 'upload',\n icon: [512, 512, [], \"f093\", \"M452 432c0 11-9 20-20 20s-20-9-20-20 9-20 20-20 20 9 20 20zm-84-20c-11 0-20 9-20 20s9 20 20 20 20-9 20-20-9-20-20-20zm144-48v104c0 24.3-19.7 44-44 44H44c-24.3 0-44-19.7-44-44V364c0-24.3 19.7-44 44-44h124v-99.3h-52.7c-35.6 0-53.4-43.1-28.3-68.3L227.7 11.7c15.6-15.6 40.9-15.6 56.6 0L425 152.4c25.2 25.2 7.3 68.3-28.3 68.3H344V320h124c24.3 0 44 19.7 44 44zM200 188.7V376c0 4.4 3.6 8 8 8h96c4.4 0 8-3.6 8-8V188.7h84.7c7.1 0 10.7-8.6 5.7-13.7L261.7 34.3c-3.1-3.1-8.2-3.1-11.3 0L109.7 175c-5 5-1.5 13.7 5.7 13.7H200zM480 364c0-6.6-5.4-12-12-12H344v24c0 22.1-17.9 40-40 40h-96c-22.1 0-40-17.9-40-40v-24H44c-6.6 0-12 5.4-12 12v104c0 6.6 5.4 12 12 12h424c6.6 0 12-5.4 12-12V364z\"]\n};\nvar faUsbDrive = {\n prefix: 'fal',\n iconName: 'usb-drive',\n icon: [640, 512, [], \"f8e9\", \"M536 240h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm0 80h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm88-192H480v-16a16 16 0 0 0-16-16H64a64 64 0 0 0-64 64v192a64 64 0 0 0 64 64h400a16 16 0 0 0 16-16v-16h144a16 16 0 0 0 16-16V144a16 16 0 0 0-16-16zM448 384H64a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h384zm160-32H480V160h128z\"]\n};\nvar faUsdCircle = {\n prefix: 'fal',\n iconName: 'usd-circle',\n icon: [496, 512, [], \"f2e8\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 464c-119.1 0-216-96.9-216-216S128.9 40 248 40s216 96.9 216 216-96.9 216-216 216zm40.3-221.3l-72-20.2c-12.1-3.4-20.6-14.4-20.6-26.7 0-15.3 12.8-27.8 28.5-27.8h45c11.2 0 21.9 3.6 30.6 10.1 3.2 2.4 7.6 2 10.4-.8l11.3-11.5c3.4-3.4 3-9-.8-12-14.6-11.6-32.6-17.9-51.6-17.9H264v-40c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v40h-7.8c-33.3 0-60.5 26.8-60.5 59.8 0 26.6 18.1 50.2 43.9 57.5l72 20.2c12.1 3.4 20.6 14.4 20.6 26.7 0 15.3-12.8 27.8-28.5 27.8h-45c-11.2 0-21.9-3.6-30.6-10.1-3.2-2.4-7.6-2-10.4.8l-11.3 11.5c-3.4 3.4-3 9 .8 12 14.6 11.6 32.6 17.9 51.6 17.9h5.2v40c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-40h7.8c33.3 0 60.5-26.8 60.5-59.8-.1-26.6-18.1-50.2-44-57.5z\"]\n};\nvar faUsdSquare = {\n prefix: 'fal',\n iconName: 'usd-square',\n icon: [448, 512, [], \"f2e9\", \"M264.3 250.7l-72-20.2c-12.1-3.4-20.6-14.4-20.6-26.7 0-15.3 12.8-27.8 28.5-27.8h45c11.2 0 21.9 3.6 30.6 10.1 3.2 2.4 7.6 2 10.4-.8l11.3-11.5c3.4-3.4 3-9-.8-12-14.6-11.6-32.6-17.9-51.6-17.9H240v-40c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v40h-7.8c-33.3 0-60.5 26.8-60.5 59.8 0 26.6 18.1 50.2 43.9 57.5l72 20.2c12.1 3.4 20.6 14.4 20.6 26.7 0 15.3-12.8 27.8-28.5 27.8h-45c-11.2 0-21.9-3.6-30.6-10.1-3.2-2.4-7.6-2-10.4.8l-11.3 11.5c-3.4 3.4-3 9 .8 12 14.6 11.6 32.6 17.9 51.6 17.9h5.2v40c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-40h7.8c33.3 0 60.5-26.8 60.5-59.8-.1-26.6-18.1-50.2-44-57.5zM400 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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h352c8.8 0 16 7.2 16 16v352z\"]\n};\nvar faUser = {\n prefix: 'fal',\n iconName: 'user',\n icon: [448, 512, [], \"f007\", \"M313.6 288c-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.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.4zM416 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16v-41.6C32 365.9 77.9 320 134.4 320c19.6 0 39.1 16 89.6 16 50.4 0 70-16 89.6-16 56.5 0 102.4 45.9 102.4 102.4V464zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96z\"]\n};\nvar faUserAlien = {\n prefix: 'fal',\n iconName: 'user-alien',\n icon: [448, 512, [], \"e04a\", \"M252,288h40a60.00047,60.00047,0,0,0,60-60V204a12.0006,12.0006,0,0,0-12-12H300a60.00047,60.00047,0,0,0-60,60v24A12.0006,12.0006,0,0,0,252,288Zm20-36a28.03146,28.03146,0,0,1,28-28h20v4a28.03146,28.03146,0,0,1-28,28H272Zm-76,36a12.0006,12.0006,0,0,0,12-12V252a60.00047,60.00047,0,0,0-60-60H108a12.0006,12.0006,0,0,0-12,12v24a60.00047,60.00047,0,0,0,60,60Zm-68-60v-4h20a28.03146,28.03146,0,0,1,28,28v4H156A28.03146,28.03146,0,0,1,128,228ZM352,352h-8.81445c39.14843-43.77734,72.8789-96.6582,72.8789-149.36719C416.06445,76.73633,330.05273,0,224,0,117.918,0,31.93555,76.73633,31.93555,202.63281c0,52.709,33.73047,105.58985,72.8789,149.36719H96A95.99975,95.99975,0,0,0,0,448v16a47.99987,47.99987,0,0,0,48,48H400a47.99987,47.99987,0,0,0,48-48V448A95.99975,95.99975,0,0,0,352,352ZM63.93555,202.63281C63.93555,100.57227,128.25977,32,224,32s160.06445,68.57227,160.06445,170.63281c0,87.58789-121.332,185.05664-158.51953,212.84571a2.5483,2.5483,0,0,1-3.0918-.002C185.26758,387.68945,63.93555,290.2207,63.93555,202.63281ZM416,464a16.01833,16.01833,0,0,1-16,16H48a16.01833,16.01833,0,0,1-16-16V448a64.07333,64.07333,0,0,1,64-64h39.79883a744.84828,744.84828,0,0,0,67.5,57.11133,34.54892,34.54892,0,0,0,41.40234,0A744.84828,744.84828,0,0,0,312.20117,384H352a64.07333,64.07333,0,0,1,64,64Z\"]\n};\nvar faUserAlt = {\n prefix: 'fal',\n iconName: 'user-alt',\n icon: [512, 512, [], \"f406\", \"M256 32c61.8 0 112 50.2 112 112s-50.2 112-112 112-112-50.2-112-112S194.2 32 256 32m128 320c52.9 0 96 43.1 96 96v32H32v-32c0-52.9 43.1-96 96-96 85 0 67.3 16 128 16 60.9 0 42.9-16 128-16M256 0c-79.5 0-144 64.5-144 144s64.5 144 144 144 144-64.5 144-144S335.5 0 256 0zm128 320c-92.4 0-71 16-128 16-56.8 0-35.7-16-128-16C57.3 320 0 377.3 0 448v32c0 17.7 14.3 32 32 32h448c17.7 0 32-14.3 32-32v-32c0-70.7-57.3-128-128-128z\"]\n};\nvar faUserAltSlash = {\n prefix: 'fal',\n iconName: 'user-alt-slash',\n icon: [640, 512, [], \"f4fa\", \"M637 485.2L23 1.8C19.6-1 14.5-.4 11.8 3l-10 12.5C-1 19-.4 24 3 26.8l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.6 2.2-8.6-1.2-11.4zM320 32c61.8 0 112 50.2 112 112 0 34.8-16.3 65.6-41.3 86.2l25.6 20.2C445.4 224 464 186.3 464 144 464 64.5 399.5 0 320 0c-54.6 0-101.4 30.7-125.9 75.4l25.4 20C237.7 58 275.7 32 320 32zM96 480v-32c0-52.9 43.1-96 96-96h36.8c22.4 0 40.3 16 91.2 16 11.7 0 23.3-1.1 34.8-3.1l-36.9-29.1c-46.2-.6-59.3-15.8-89.2-15.8H192c-70.7 0-128 57.3-128 128v32c0 17.7 14.3 32 32 32h445.6L501 480H96z\"]\n};\nvar faUserAstronaut = {\n prefix: 'fal',\n iconName: 'user-astronaut',\n icon: [448, 512, [], \"f4fb\", \"M288 128H160c-35.3 0-64 28.7-64 64v16c0 61.8 50.2 112 112 112h32c61.8 0 112-50.2 112-112v-16c0-35.3-28.7-64-64-64zm32 80c0 44.1-35.9 80-80 80h-32c-44.1 0-80-35.9-80-80v-16c0-17.6 14.3-32 32-32h128c17.7 0 32 14.4 32 32v16zm-128-32l-12 36-36 12 36 12 12 36 12-36 36-12-36-12-12-36zm112 224H144c-26.5 0-48 21.5-48 48v56c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-56c0-8.8 7.2-16 16-16h160c8.8 0 16 7.2 16 16v56c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-56c0-26.5-21.5-48-48-48zm-32 48c-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 16v40c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-40c0-8.8-7.2-16-16-16zm183.2-119.7c20.3-20.1 35.9-44.8 45.7-72.3H416c8.8 0 16-7.2 16-16v-96c0-8.8-7.2-16-16-16h-11.2C378.5 53.5 307.6 0 224 0S69.5 53.5 43.2 128H32c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16h11.2c9.7 27.5 25.4 52.2 45.7 72.3C37.1 347 0 396.2 0 454.4V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-49.6c0-51.6 38.5-94 88.3-101C150.2 372.7 185.8 384 224 384s73.8-11.3 103.7-30.6c49.8 6.9 88.3 49.3 88.3 101V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-49.6c0-58.2-37.1-107.4-88.8-126.1zM224 352c-88.2 0-160-71.8-160-160S135.8 32 224 32s160 71.8 160 160-71.8 160-160 160z\"]\n};\nvar faUserChart = {\n prefix: 'fal',\n iconName: 'user-chart',\n icon: [640, 512, [], \"f6a3\", \"M608 0H192c-17.67 0-32 14.33-32 32v96c-53.02 0-96 42.98-96 96s42.98 96 96 96 96-42.98 96-96c0-41.74-26.8-76.9-64-90.12V32h416v352H305.34c-.59-.94-1.03-1.96-1.65-2.88-17.25-25.62-46.67-39.11-76.9-39.11C199 342.02 192.02 352 160 352c-31.97 0-38.95-9.98-66.79-9.98-30.23 0-59.65 13.48-76.9 39.11C6.01 396.42 0 414.84 0 434.67V472c0 22.09 17.91 40 40 40h240c22.09 0 40-17.91 40-40v-37.33c0-6.41-.84-12.6-2.04-18.67H608c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32zM224 224c0 35.29-28.71 64-64 64s-64-28.71-64-64 28.71-64 64-64 64 28.71 64 64zm64 248c0 4.41-3.59 8-8 8H40c-4.41 0-8-3.59-8-8v-37.33c0-12.79 3.75-25.13 10.85-35.67 10.53-15.64 29.35-24.98 50.36-24.98 21.8 0 29.99 9.98 66.79 9.98 36.79 0 45.01-9.98 66.79-9.98 21 0 39.83 9.34 50.36 24.98 7.1 10.54 10.85 22.88 10.85 35.67V472zm50.62-319.31c-9.38-9.38-24.56-9.38-33.94 0l-25.49 25.49c4.56 11.72 7.3 24.17 8.21 37.04l34.25-34.25L384.69 244c4.69 4.69 10.81 7.02 16.97 7.02s12.28-2.33 16.97-7.02l58.97-58.97 33.24 33.24c3.96 3.96 8.82 5.73 13.6 5.73 9.99 0 19.57-7.76 19.57-19.47v-95.58c0-7.15-5.8-12.95-12.95-12.95h-95.58c-17.31 0-25.98 20.93-13.74 33.17l33.24 33.24-53.31 53.31-63.05-63.03zM512 128v46.18L465.82 128H512z\"]\n};\nvar faUserCheck = {\n prefix: 'fal',\n iconName: 'user-check',\n icon: [640, 512, [], \"f4fc\", \"M637.7 144.6l-14.1-14.2c-3.1-3.1-8.2-3.2-11.3 0L497.1 242.1l-53.3-53.4c-3.1-3.1-8.2-3.1-11.3 0l-14.2 14.1c-3.1 3.1-3.1 8.2 0 11.3l70.2 70.4c4.7 4.7 12.3 4.7 17 0l132.1-128.6c3.2-3.1 3.2-8.2.1-11.3zM313.6 288c-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.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.4zM416 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16v-41.6C32 365.9 77.9 320 134.4 320c19.6 0 39.1 16 89.6 16 50.4 0 70-16 89.6-16 56.5 0 102.4 45.9 102.4 102.4V464zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96z\"]\n};\nvar faUserCircle = {\n prefix: 'fal',\n iconName: 'user-circle',\n icon: [496, 512, [], \"f2bd\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm128 421.6c-35.9 26.5-80.1 42.4-128 42.4s-92.1-15.9-128-42.4V416c0-35.3 28.7-64 64-64 11.1 0 27.5 11.4 64 11.4 36.6 0 52.8-11.4 64-11.4 35.3 0 64 28.7 64 64v13.6zm30.6-27.5c-6.8-46.4-46.3-82.1-94.6-82.1-20.5 0-30.4 11.4-64 11.4S204.6 320 184 320c-48.3 0-87.8 35.7-94.6 82.1C53.9 363.6 32 312.4 32 256c0-119.1 96.9-216 216-216s216 96.9 216 216c0 56.4-21.9 107.6-57.4 146.1zM248 120c-48.6 0-88 39.4-88 88s39.4 88 88 88 88-39.4 88-88-39.4-88-88-88zm0 144c-30.9 0-56-25.1-56-56s25.1-56 56-56 56 25.1 56 56-25.1 56-56 56z\"]\n};\nvar faUserClock = {\n prefix: 'fal',\n iconName: 'user-clock',\n icon: [640, 512, [], \"f4fd\", \"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96zm272 192c-79.6 0-144 64.4-144 144s64.4 144 144 144 144-64.4 144-144-64.4-144-144-144zm0 256c-61.8 0-112-50.2-112-112s50.2-112 112-112 112 50.2 112 112-50.2 112-112 112zm-135.8 0H48c-8.8 0-16-7.2-16-16v-41.6C32 365.9 77.9 320 134.4 320c19.6 0 39.1 16 89.6 16 50.4 0 70-16 89.6-16 4.4 0 8.6.8 12.9 1.3 2.9-10.7 6.9-21 11.7-30.8-8-1.5-16.1-2.5-24.5-2.5-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h346.9c-12.9-9.1-24.7-19.8-34.7-32zm190.1-128H512v-54.3c0-5.3-4.4-9.7-9.7-9.7h-12.6c-5.3 0-9.7 4.4-9.7 9.7v76.6c0 5.3 4.4 9.7 9.7 9.7h60.6c5.3 0 9.7-4.4 9.7-9.7v-12.6c0-5.3-4.4-9.7-9.7-9.7z\"]\n};\nvar faUserCog = {\n prefix: 'fal',\n iconName: 'user-cog',\n icon: [640, 512, [], \"f4fe\", \"M628.3 358.3l-16.5-9.5c.8-8.5.8-17.1 0-25.6l16.6-9.5c9.5-5.5 13.8-16.7 10.5-27-7.2-23.4-19.9-45.4-36.7-63.5-7.4-8.1-19.3-9.9-28.7-4.4l-16.5 9.5c-7-5-14.4-9.3-22.2-12.8v-19c0-11-7.5-20.3-18.2-22.7-23.9-5.4-49.3-5.4-73.2 0-10.7 2.4-18.2 11.8-18.2 22.7v19c-7.8 3.5-15.2 7.8-22.2 12.8l-16.5-9.5c-9.5-5.5-21.3-3.7-28.7 4.4-16.7 18.1-29.4 40.1-36.7 63.4-3.3 10.4 1.2 21.8 10.6 27.2l16.5 9.5c-.8 8.5-.8 17.1 0 25.6l-16.6 9.5c-9.3 5.4-13.8 16.9-10.5 27.1 7.2 23.4 19.9 45.4 36.7 63.5 7.4 8 19.2 9.8 28.7 4.4l16.5-9.5c7 5 14.4 9.3 22.2 12.8v19c0 11 7.5 20.3 18.2 22.7 12 2.7 24.3 4 36.6 4s24.7-1.3 36.6-4c10.7-2.4 18.2-11.8 18.2-22.7v-19c7.8-3.5 15.2-7.8 22.2-12.8l16.5 9.5c9.4 5.4 21.3 3.6 28.7-4.4 16.7-18.1 29.4-40.1 36.7-63.4 3.3-10.4-1.2-21.9-10.6-27.3zm-51.6 7.2l29.4 17c-5.2 14.3-13 27.8-22.8 39.5l-29.4-17c-21.4 18.3-24.5 20.1-51.1 29.5v34c-15.1 2.6-30.6 2.6-45.6 0v-34c-26.9-9.5-30.2-11.7-51.1-29.5l-29.4 17c-9.8-11.8-17.6-25.2-22.8-39.5l29.4-17c-4.9-26.8-5.2-30.6 0-59l-29.4-17c5.2-14.3 13-27.7 22.8-39.5l29.4 17c21.4-18.3 24.5-20.1 51.1-29.5v-34c15.1-2.5 30.7-2.5 45.6 0v34c26.8 9.5 30.2 11.6 51.1 29.5l29.4-17c9.8 11.8 17.6 25.2 22.8 39.5l-29.4 17c4.9 26.8 5.2 30.6 0 59zm-96.7-94c-35.6 0-64.5 29-64.5 64.5s28.9 64.5 64.5 64.5 64.5-29 64.5-64.5-28.9-64.5-64.5-64.5zm0 97c-17.9 0-32.5-14.6-32.5-32.5s14.6-32.5 32.5-32.5 32.5 14.6 32.5 32.5-14.6 32.5-32.5 32.5zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96zM48 480c-8.8 0-16-7.2-16-16v-41.6C32 365.9 77.9 320 134.4 320c19.6 0 39.1 16 89.6 16 19.2 0 38-3.3 56.5-8.7.5-11.6 1.8-23 4.2-34-8.9 2.7-30.1 10.7-60.7 10.7-47.1 0-60.8-16-89.6-16C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h337c-16-8.6-30.6-19.5-43.5-32H48z\"]\n};\nvar faUserCowboy = {\n prefix: 'fal',\n iconName: 'user-cowboy',\n icon: [448, 512, [], \"f8ea\", \"M99.46 165.1A150.52 150.52 0 0 0 96 192a128 128 0 0 0 256 0 150.48 150.48 0 0 0-3.5-27.07c72.19-35.62 97.88-93.86 98.25-94.7a16 16 0 0 0-29.47-12.53c-1.16 2.67-19.77 43.52-71.21 72.78C336.2 80.21 314.75 0 278.1 0c-10.33 0-19.55 4.45-27.3 10.47a42.32 42.32 0 0 1-26 8.93 42.32 42.32 0 0 1-26-8.93C191 4.45 181.76 0 171.43 0c-36.78 0-58.26 80.78-68.08 131-52.26-29.32-71.51-70.75-72.69-73.44a16 16 0 0 0-29.28 13c1.52 3.38 27.44 59.81 98.08 94.54zm73.4-132.88a19.71 19.71 0 0 1 6.23 3.51 74.77 74.77 0 0 0 45.67 15.67 74.83 74.83 0 0 0 45.68-15.66 19.57 19.57 0 0 1 6.23-3.52c9.17 6.89 26.59 41.8 39.5 112.27v.06C291.24 153.84 260.85 160 224 160c-36.13 0-66-6-90.71-15.1 12.9-70.71 30.37-105.77 39.57-112.68zm-43.27 145C156.07 186.12 187.12 192 224 192s67.91-5.92 94.4-14.87A95 95 0 0 1 320 192a96 96 0 0 1-192 0 95.31 95.31 0 0 1 1.59-14.8zm184 174.8c-28.72 0-42.43 16-89.59 16s-60.88-16-89.56-16A134.46 134.46 0 0 0 0 486.41 25.61 25.61 0 0 0 25.59 512H422.4a25.61 25.61 0 0 0 25.6-25.59A134.46 134.46 0 0 0 313.59 352zM32.19 480c3.4-52.94 49.18-95.95 102.25-96 19.81 0 38.93 16 89.56 16 51 0 69.59-16 89.59-16 53 .06 98.85 43.08 102.22 96z\"]\n};\nvar faUserCrown = {\n prefix: 'fal',\n iconName: 'user-crown',\n icon: [448, 512, [], \"f6a4\", \"M313.6 320c-28.71 0-42.6 16-89.6 16-47.09 0-60.82-16-89.6-16C60.17 320 0 380.17 0 454.4v9.6c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48v-9.6c0-74.23-60.17-134.4-134.4-134.4zM416 464c0 8.82-7.18 16-16 16H48c-8.82 0-16-7.18-16-16v-9.6C32 397.94 77.94 352 134.4 352c19.38 0 39.33 16 89.6 16 49.4 0 70.66-16 89.6-16 56.46 0 102.4 45.94 102.4 102.4v9.6zM224 288c70.7 0 128-57.31 128-128V0l-64 32-64-32-64 32L96 0v160c0 70.69 57.31 128 128 128zM128 51.78l32 16 64-32 64 32 32-16V112H128V51.78zm0 92.22h192v16c0 52.93-43.06 96-96 96s-96-43.07-96-96v-16z\"]\n};\nvar faUserEdit = {\n prefix: 'fal',\n iconName: 'user-edit',\n icon: [640, 512, [], \"f4ff\", \"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96zm406.6 204.1l-34.7-34.7c-6.3-6.3-14.5-9.4-22.8-9.4-8.2 0-16.5 3.1-22.8 9.4L327.8 424l-7.6 68.2c-1.2 10.7 7.2 19.8 17.7 19.8.7 0 1.3 0 2-.1l68.2-7.6 222.5-222.5c12.5-12.7 12.5-33.1 0-45.7zM393.3 473.7l-39.4 4.5 4.4-39.5 156.9-156.9 35 35-156.9 156.9zm179.5-179.5l-35-35L573 224h.1l.2.1 34.7 35-35.2 35.1zM134.4 320c19.6 0 39.1 16 89.6 16 50.4 0 70-16 89.6-16 20.7 0 39.9 6.3 56 16.9l22.8-22.8c-22.2-16.2-49.3-26-78.8-26-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h243.5c-2.8-7.4-4.1-15.4-3.2-23.4l1-8.6H48c-8.8 0-16-7.2-16-16v-41.6C32 365.9 77.9 320 134.4 320z\"]\n};\nvar faUserFriends = {\n prefix: 'fal',\n iconName: 'user-friends',\n icon: [640, 512, [], \"f500\", \"M480 256c53 0 96-43 96-96s-43-96-96-96-96 43-96 96 43 96 96 96zm0-160c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zM192 256c61.9 0 112-50.1 112-112S253.9 32 192 32 80 82.1 80 144s50.1 112 112 112zm0-192c44.1 0 80 35.9 80 80s-35.9 80-80 80-80-35.9-80-80 35.9-80 80-80zm80.1 212c-33.4 0-41.7 12-80.1 12-38.4 0-46.7-12-80.1-12-36.3 0-71.6 16.2-92.3 46.9C7.2 341.3 0 363.4 0 387.2V432c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48v-44.8c0-23.8-7.2-45.9-19.6-64.3-20.7-30.7-56-46.9-92.3-46.9zM352 432c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16v-44.8c0-16.6 4.9-32.7 14.1-46.4 13.8-20.5 38.4-32.8 65.7-32.8 27.4 0 37.2 12 80.2 12s52.8-12 80.1-12c27.3 0 51.9 12.3 65.7 32.8 9.2 13.7 14.1 29.8 14.1 46.4V432zm271.7-114.9C606.4 291.5 577 278 546.8 278c-27.8 0-34.8 10-66.8 10s-39-10-66.8-10c-13.2 0-26.1 3-38.1 8.1 15.2 15.4 18.5 23.6 20.2 26.6 5.7-1.6 11.6-2.6 17.9-2.6 21.8 0 30 10 66.8 10s45-10 66.8-10c21 0 39.8 9.3 50.4 25 7.1 10.5 10.9 22.9 10.9 35.7V408c0 4.4-3.6 8-8 8H416c0 17.7.3 22.5-1.6 32H600c22.1 0 40-17.9 40-40v-37.3c0-19.9-6-38.3-16.3-53.6z\"]\n};\nvar faUserGraduate = {\n prefix: 'fal',\n iconName: 'user-graduate',\n icon: [448, 512, [], \"f501\", \"M319.4 320.6L224 400l-95.4-79.4C110.2 321.4 0 336.1 0 464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48 0-127.9-110.1-142.6-128.6-143.4zM208 480H48c-8.8 0-16-7.2-16-16 0-99.6 84.1-109.9 86.4-110.3l89.6 74.6V480zm208-16c0 8.8-7.2 16-16 16H240v-51.7l89.6-74.6c2.3.4 86.4 10.7 86.4 110.3zM13.2 100l6.8 2v37.6c-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.3v-30.5L90.7 123C84 139.4 80 157.2 80 176c0 79.5 64.5 144 144 144s144-64.5 144-144c0-18.8-4-36.6-10.7-53l77.5-23c17.6-5.2 17.6-34.8 0-40L240.9 2.5C235.3.8 229.7 0 224 0s-11.3.8-16.9 2.5L13.2 60c-17.6 5.2-17.6 34.8 0 40zM224 288c-61.8 0-112-50.2-112-112 0-15.7 3.7-30.3 9.6-43.8l85.5 25.4c14.8 4.4 27.2 2 33.8 0l85.5-25.4c5.9 13.5 9.6 28.2 9.6 43.8 0 61.8-50.2 112-112 112zm-7.8-254.9c.8-.2 7.3-2.4 15.6 0l158 46.9-158 46.9c-.8.2-7.3 2.4-15.6 0L58.2 80l158-46.9z\"]\n};\nvar faUserHardHat = {\n prefix: 'fal',\n iconName: 'user-hard-hat',\n icon: [448, 512, [], \"f82c\", \"M313.6 352c-28.72 0-42.45 16-89.6 16s-60.88-16-89.56-16A134.4 134.4 0 0 0 0 486.4 25.6 25.6 0 0 0 25.6 512h396.8a25.6 25.6 0 0 0 25.6-25.6A134.4 134.4 0 0 0 313.6 352zM32.2 480a102.54 102.54 0 0 1 102.24-96c19.82 0 38.92 16 89.56 16 51 0 69.6-16 89.6-16a102.53 102.53 0 0 1 102.2 96zM88 160h12.66A124.32 124.32 0 0 0 96 192a128 128 0 0 0 256 0 124.32 124.32 0 0 0-4.66-32H360a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-8c0-51.52-35-94.46-82.33-107.52A31.89 31.89 0 0 0 240 0h-32a31.89 31.89 0 0 0-29.67 20.48C131 33.54 96 76.48 96 128h-8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zM272 54.91A79.94 79.94 0 0 1 320 128h-48zM208 32h32v96h-32zm-80 96a79.94 79.94 0 0 1 48-73.09V128zm6 32h180a92 92 0 0 1 6 32 96 96 0 0 1-192 0 92 92 0 0 1 6-32z\"]\n};\nvar faUserHeadset = {\n prefix: 'fal',\n iconName: 'user-headset',\n icon: [448, 512, [], \"f82d\", \"M320 352h-4.7c-12.16 0-24 2.9-35.5 6.8a173.76 173.76 0 0 1-111.64 0c-11.48-3.9-23.29-6.78-35.42-6.78H128A128 128 0 0 0 0 480a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32 128 128 0 0 0-128-128zM32 480a96.1 96.1 0 0 1 96-96h4.74c6.92 0 14.92 1.62 25.16 5.09a205.75 205.75 0 0 0 132.16 0c10.31-3.49 18.33-5.11 25.24-5.11h4.7a96.1 96.1 0 0 1 96 96zm16-256a16 16 0 0 0 16-16v-16c0-88.22 71.78-160 160-160s160 71.78 160 160v16a80.09 80.09 0 0 1-80 80h-32a32 32 0 0 0-32-32h-32a32 32 0 0 0 0 64h96a112.14 112.14 0 0 0 112-112v-16C416 86.12 329.88 0 224 0S32 86.12 32 192v16a16 16 0 0 0 16 16zM224 96a95.57 95.57 0 0 1 71.23 159.76c0 .09.13.15.18.24H304a47.89 47.89 0 0 0 40.55-22.58C349 220.36 352 206.58 352 192a128 128 0 0 0-256 0c0 40.42 19.1 76 48.35 99.47-.06-1.17-.35-2.28-.35-3.47a63.25 63.25 0 0 1 8.93-32A95.58 95.58 0 0 1 224 96z\"]\n};\nvar faUserInjured = {\n prefix: 'fal',\n iconName: 'user-injured',\n icon: [448, 512, [], \"f728\", \"M313.6 288c-11.04 0-21.78 2.6-32.2 6.24-18 6.28-37.28 9.76-57.4 9.76-20.11 0-39.4-3.48-57.39-9.76-10.42-3.64-21.17-6.24-32.21-6.24C60.17 288 0 348.17 0 422.4V464c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48v-41.6c0-74.23-60.17-134.4-134.4-134.4zM80 480H48c-8.82 0-16-7.18-16-16v-41.6c0-36.43 19.26-68.26 48-86.42V480zm32 0V322.64c7.23-1.62 14.69-2.64 22.4-2.64 1.47 0 3.18.36 4.75.52L210.04 480H112zm160 0h-26.93l-28.45-64H272c17.66 0 32 14.36 32 32s-14.34 32-32 32zm144-16c0 8.82-7.18 16-16 16h-72.9c5.51-9.45 8.9-20.29 8.9-32 0-35.3-28.72-64-64-64h-69.6l-23.9-53.76c14.96 3.41 30.11 5.76 45.5 5.76 23.12 0 45.98-3.89 67.95-11.55 8.69-3.04 15.57-4.45 21.65-4.45 56.46 0 102.4 45.94 102.4 102.4V464zM224 256c70.7 0 128-57.31 128-128C352 57.3 294.7 0 224 0 153.31 0 96 57.3 96 128c0 70.69 57.31 128 128 128zm90.1-160h-74.11l49.93-37.45c10.84 10.3 19.06 23.09 24.18 37.45zM224 32c13.38 0 26.1 2.78 37.68 7.75l-75 56.25H133.9c13.25-37.17 48.44-64 90.1-64zm96 96c0 52.93-43.06 96-96 96s-96-43.07-96-96h192z\"]\n};\nvar faUserLock = {\n prefix: 'fal',\n iconName: 'user-lock',\n icon: [640, 512, [], \"f502\", \"M48 480a16 16 0 0 1-16-16v-41.6A102.47 102.47 0 0 1 134.4 320c19.6 0 39.1 16 89.6 16s70-16 89.6-16c2.7 0 5.3.6 7.9.8a79.45 79.45 0 0 1 13.1-30.7 132.34 132.34 0 0 0-21.1-2.1c-28.7 0-42.5 16-89.6 16s-60.8-16-89.6-16C60.2 288 0 348.2 0 422.4V464a48 48 0 0 0 48 48h288.4a78.34 78.34 0 0 1-14.8-32zm176-224A128 128 0 1 0 96 128a128 128 0 0 0 128 128zm0-224a96 96 0 1 1-96 96 96.15 96.15 0 0 1 96-96zm272 336a32 32 0 1 0 32 32 32 32 0 0 0-32-32zm96-80h-16v-48a80 80 0 0 0-160 0v48h-16a48 48 0 0 0-48 48v128a48 48 0 0 0 48 48h192a48 48 0 0 0 48-48V336a48 48 0 0 0-48-48zm-144-48a48 48 0 0 1 96 0v48h-96zm160 224a16 16 0 0 1-16 16H400a16 16 0 0 1-16-16V336a16 16 0 0 1 16-16h192a16 16 0 0 1 16 16z\"]\n};\nvar faUserMd = {\n prefix: 'fal',\n iconName: 'user-md',\n icon: [448, 512, [], \"f0f0\", \"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96zm93.7 256.1c-33.8-1-44.3 15.9-93.7 15.9-49.3 0-59.8-16.9-93.6-15.9C58 290.2 0 349.5 0 422.4V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-81.6c0-54.3 42.6-98.4 96-101.8v81.7c-23.1 6.9-40 28.3-40 53.7 0 30.9 25.1 56 56 56s56-25.1 56-56c0-25.4-16.9-46.8-40-53.7v-76.9c20.8 6.8 42.2 10.5 64 10.5 21.8 0 43.2-3.7 64-10.5v68.8c-28.2 7.5-48 34.5-48 64.6V488c0 4.2 1.7 8.3 4.7 11.3l10.3 10.3c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-5.7-5.7V456c0-19.4 17.4-34.8 37.4-31.6 15.7 2.6 26.6 17.4 26.6 33.3v23.6l-5.7 5.7c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l10.3-10.3c3-3 4.7-7.1 4.7-11.3v-32c0-29.7-20.5-54.5-48-61.6v-73.7c53.4 3.4 96 47.5 96 101.8V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-81.6c.2-72.9-57.8-132.2-130.1-134.3zM168 456c0 13.2-10.8 24-24 24s-24-10.8-24-24 10.8-24 24-24 24 10.8 24 24z\"]\n};\nvar faUserMdChat = {\n prefix: 'fal',\n iconName: 'user-md-chat',\n icon: [640, 512, [], \"f82e\", \"M512 0c-70.69 0-128 50.17-128 112 0 28.76 12.75 54.72 33.11 74.55a312.08 312.08 0 0 1-31.29 55.37 9.86 9.86 0 0 0-1.25 9.07c1.09 3.13 3.43 5 6.1 5 39.85 0 72.35-17.13 95.23-34.36A146 146 0 0 0 512 224c70.7 0 128-50.14 128-112S582.7 0 512 0zm0 192a114.76 114.76 0 0 1-20.38-1.84l-13.78-2.5-11.18 8.42a155.47 155.47 0 0 1-26.13 16.07c2-4.08 4-8.35 5.91-12.79l8.87-20.28-15.87-15.45C428.75 153.24 416 135.83 416 112c0-44.11 43.06-80 96-80s96 35.89 96 80-43.06 80-96 80zm-194.31 96.1c-33.8-1-44.3 15.9-93.7 15.9s-59.79-16.9-93.59-15.9A134.33 134.33 0 0 0 0 422.4V504a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-81.6c0-54.3 42.6-98.4 96-101.8v81.7a56 56 0 1 0 32 0v-76.9a200.3 200.3 0 0 0 128 0v68.8c-28.2 7.5-48 34.5-48 64.6V488a16.06 16.06 0 0 0 4.7 11.3l10.3 10.3a8 8 0 0 0 11.3 0l11.3-11.3a8 8 0 0 0 0-11.3l-5.7-5.7V456a32.14 32.14 0 0 1 37.4-31.6c15.7 2.6 26.6 17.4 26.6 33.3v23.6l-5.7 5.7a8 8 0 0 0 0 11.3l11.3 11.3a8 8 0 0 0 11.3 0l10.3-10.3a16.06 16.06 0 0 0 4.7-11.3v-32a63.8 63.8 0 0 0-48-61.6v-73.7c53.4 3.4 96 47.5 96 101.8V504a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-81.6a134 134 0 0 0-130.11-134.3zM168 456a24 24 0 1 1-24-24 24.06 24.06 0 0 1 24 24zm56-200A128 128 0 1 0 96 128a128 128 0 0 0 128 128zm0-224a96 96 0 1 1-96 96 96.15 96.15 0 0 1 96-96z\"]\n};\nvar faUserMinus = {\n prefix: 'fal',\n iconName: 'user-minus',\n icon: [640, 512, [], \"f503\", \"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96zm408 192H424c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h208c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-318.4 64c-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.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.4zM416 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16v-41.6C32 365.9 77.9 320 134.4 320c19.6 0 39.1 16 89.6 16 50.4 0 70-16 89.6-16 56.5 0 102.4 45.9 102.4 102.4V464z\"]\n};\nvar faUserMusic = {\n prefix: 'fal',\n iconName: 'user-music',\n icon: [640, 512, [], \"f8eb\", \"M598 97.64l-96.56 31.88C488.72 133.73 480 146 480 160v216.13C459.66 361.28 431.38 352 400 352c-61.86 0-112 35.82-112 80s50.14 80 112 80 112-35.82 112-80V288l106.12-35.37A32 32 0 0 0 640 222.27V128a32 32 0 0 0-42-30.36zM400 480c-47.14 0-80-25.3-80-48s32.86-48 80-48 80 25.3 80 48-32.86 48-80 48zm208-257.72l-96 32V160h-.56v-.13L608 128zM269.91 480H48a16 16 0 0 1-16-16v-41.59A102.49 102.49 0 0 1 134.41 320c19.59 0 39.09 16 89.59 16s70-16 89.59-16a101.48 101.48 0 0 1 36.64 7.06 184.33 184.33 0 0 1 49.49-7c-23.38-19.69-53.17-32-86.13-32-28.68 0-42.5 16-89.59 16s-60.81-16-89.59-16A134.43 134.43 0 0 0 0 422.41V464a48 48 0 0 0 48 48h250.42a113.81 113.81 0 0 1-28.51-32zM224 256A128 128 0 1 0 96 128a128 128 0 0 0 128 128zm0-224a96 96 0 1 1-96 96 96.14 96.14 0 0 1 96-96z\"]\n};\nvar faUserNinja = {\n prefix: 'fal',\n iconName: 'user-ninja',\n icon: [448, 512, [], \"f504\", \"M319.4 288.6L224 368l-95.4-79.4C57.1 291.7 0 350.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-72.2-57.1-130.7-128.6-133.8zM208 480H48c-8.8 0-16-7.2-16-16v-41.6c0-50.8 37.1-93 86.4-100.7 89.9 74.8 83.2 69.2 89.6 74.6V480zm208-16c0 8.8-7.2 16-16 16H240v-83.7c6.3-5.3-.2.2 89.6-74.6 49.3 7.7 86.4 49.9 86.4 100.7V464zM32 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 80zM224 32c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96zm48 64h-96c-17.7 0-32 14.3-32 32h160c0-17.7-14.3-32-32-32z\"]\n};\nvar faUserNurse = {\n prefix: 'fal',\n iconName: 'user-nurse',\n icon: [448, 512, [], \"f82f\", \"M319.41,318,224,413.39,128.59,318C57.09,321.09,0,379.59,0,451.8A58.23,58.23,0,0,0,58.2,510H389.8A58.23,58.23,0,0,0,448,451.8C448,379.59,390.91,321.09,319.41,318ZM208,478H58.2A26.28,26.28,0,0,1,32,451.8c0-47.46,38-92.44,84.73-100.41L208,442.66Zm181.8,0H240V442.64l91.25-91.25C378,359.36,416,404.34,416,451.8A26.28,26.28,0,0,1,389.8,478ZM224,302A128,128,0,0,0,352,174V63.82a32,32,0,0,0-20.76-30L246.47,2.07a64.06,64.06,0,0,0-44.94,0L116.76,33.86A32,32,0,0,0,96,63.82V174A128,128,0,0,0,224,302ZM128,63.82,212.77,32a32,32,0,0,1,22.47,0L320,63.82V142H128ZM320,174a96,96,0,0,1-192,0ZM259,72.67H237.33V51a5,5,0,0,0-5-5H215.67a5,5,0,0,0-5,5V72.67H189a5,5,0,0,0-5,5V94.33a5,5,0,0,0,5,5h21.67V121a5,5,0,0,0,5,5h16.66a5,5,0,0,0,5-5V99.33H259a5,5,0,0,0,5-5V77.67A5,5,0,0,0,259,72.67Z\"]\n};\nvar faUserPlus = {\n prefix: 'fal',\n iconName: 'user-plus',\n icon: [640, 512, [], \"f234\", \"M632 224h-88v-88c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v88h-88c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h88v88c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-88h88c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm-318.4 64c-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.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.4zM416 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16v-41.6C32 365.9 77.9 320 134.4 320c19.6 0 39.1 16 89.6 16 50.4 0 70-16 89.6-16 56.5 0 102.4 45.9 102.4 102.4V464zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96z\"]\n};\nvar faUserRobot = {\n prefix: 'fal',\n iconName: 'user-robot',\n icon: [448, 512, [], \"e04b\", \"M144,288h32V256H144Zm128,0h32V256H272Zm-64,0h32V256H208Zm48,144a16,16,0,1,0,16,16A15.99954,15.99954,0,0,0,256,432ZM384,272h32a31.99908,31.99908,0,0,0,32-32V176a31.99908,31.99908,0,0,0-32-32H384V128a64.00067,64.00067,0,0,0-64-64H241.99926V18a18,18,0,1,0-36,0V64H128a64.00067,64.00067,0,0,0-64,64v16H32A31.99908,31.99908,0,0,0,0,176v64a31.99908,31.99908,0,0,0,32,32H64v16a63.57126,63.57126,0,0,0,10.32617,34.67383A95.88682,95.88682,0,0,0,0,416v64a31.99908,31.99908,0,0,0,32,32H416a31.99908,31.99908,0,0,0,32-32V416a95.88682,95.88682,0,0,0-74.32617-93.32617A63.57126,63.57126,0,0,0,384,288Zm0-96h32v64H384ZM64,240H32V176H64ZM96,128a32.03667,32.03667,0,0,1,32-32H320a32.03667,32.03667,0,0,1,32,32V288a32.03667,32.03667,0,0,1-32,32H128a32.03667,32.03667,0,0,1-32-32ZM320,480H208V448a16,16,0,0,0-32,0v32H128V432a16.00079,16.00079,0,0,1,16-16H304a16.00079,16.00079,0,0,1,16,16Zm96-64v64H352V432a48.055,48.055,0,0,0-48-48H144a48.055,48.055,0,0,0-48,48v48H32V416a64.07333,64.07333,0,0,1,64-64H352A64.07333,64.07333,0,0,1,416,416ZM288,224a48,48,0,1,0-48-48A47.99737,47.99737,0,0,0,288,224Zm0-64a16,16,0,1,1-16,16A16.01833,16.01833,0,0,1,288,160ZM160,224a48,48,0,1,0-48-48A47.99737,47.99737,0,0,0,160,224Zm0-64a16,16,0,1,1-16,16A16.01833,16.01833,0,0,1,160,160Z\"]\n};\nvar faUserSecret = {\n prefix: 'fal',\n iconName: 'user-secret',\n icon: [448, 512, [], \"f21b\", \"M383.9 308.3l23.9-62.6c4-10.5-3.7-21.7-15-21.7h-43.2c1.5-7.8 2.4-15.8 2.4-24 0-7.2-.9-14.2-2.2-21.1 40.5-9.8 66.2-24.2 66.2-40.2 0-16.5-27-31.2-69.3-41-8.9-33.6-27.4-67.9-41.3-85.4-6.3-8-15.7-12.3-25.3-12.3-9.5 0-12.3 2.4-41.8 17.2-12.8 6.4-24.3 2.1-28.6 0C179.9 2.3 177.3 0 167.9 0c-9.6 0-18.9 4.3-25.2 12.2-13.9 17.5-32.4 51.8-41.3 85.4C59 107.4 32 122.2 32 138.7c0 16.1 25.7 30.5 66.2 40.2-1.3 6.9-2.2 13.9-2.2 21.1 0 8.2.9 16.2 2.4 24H56.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.1zM128 200c0-2.7.3-5.3.6-7.9 1.3.8 5.1 3.3 5.8 5.4 3.9 11.9 7 24.6 16.5 33.4 8 7.4 47 25.1 64-25 2.8-8.4 15.4-8.4 18.3 0 16 47.4 53.9 34.4 64 25 9.5-8.8 12.7-21.5 16.5-33.4.7-2.1 4.4-4.6 5.8-5.4.3 2.6.6 5.2.6 7.9 0 52.9-43.1 96-96 96S128 252.9 128 200zm-.7-75.5c.7-2.7 12.3-57 40.5-92.5 28.7 14.4 37.7 20.5 56.2 20.5 18.6 0 27.7-6.3 56.2-20.5l.1.1c28.1 35.4 39.7 89.6 40.4 92.4 21.4 4.9 35.8 7.9 51 14.2-24.3 9.9-75.4 21.3-147.7 21.3s-123.4-11.4-147.7-21.3c15.2-6.3 29.9-9.3 51-14.2zM44.8 480c-7.1 0-12.8-5.7-12.8-12.8v-44.8c0-36.5 19.2-69.5 51.4-88.2L108 320l-27.4-64h28.9c4.7 9.6 64.3 108.5 64.3 108.5L142.9 480H44.8zm131.2 0l32-120-21.9-38.4c12.1 3.8 24.6 6.4 37.9 6.4s25.9-2.6 37.9-6.4L240 360l32 120h-96zm240-12.8c0 7.1-5.7 12.8-12.8 12.8h-98.1l-30.8-115.5s59.6-98.9 64.3-108.5h31l-25 65.6 22.5 13.9c30.6 18.9 48.9 51.4 48.9 86.9v44.8z\"]\n};\nvar faUserShield = {\n prefix: 'fal',\n iconName: 'user-shield',\n icon: [640, 512, [], \"f505\", \"M622.3 271.1l-115.2-45c-3.5-1.4-7.3-2.1-11.1-2.1s-7.5.7-11.1 2.1l-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 3.5 1.4 7.3 2.1 11.1 2.1s7.5-.7 11.1-2.1C558.4 489.9 640 420.5 640 296c0-10.9-7-20.7-17.7-24.9zM480 472c-48.2-26.8-94.6-87.6-96-172.1l96-37.5V472zm16.6 8.1c-.1 0-.2-.1-.2-.1h.5c-.2 0-.3.1-.3.1zm15.4-7.6V262.4l96 37.5c-1.5 94.8-57.1 150.2-96 172.6zM48 480c-8.8 0-16-7.2-16-16v-41.6C32 365.9 77.9 320 134.4 320c19.6 0 39.1 16 89.6 16 50.4 0 70-16 89.6-16 2.6 0 5 .6 7.5.8-.7-8.1-1.1-16.3-1.1-24.8 0-2.5.8-4.8 1.1-7.2-2.5-.1-4.9-.8-7.5-.8-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c6.8 0 13.3-1.5 19.2-4-10.3-8.2-20.2-17.6-29.7-28H48zm176-224c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96z\"]\n};\nvar faUserSlash = {\n prefix: 'fal',\n iconName: 'user-slash',\n icon: [640, 512, [], \"f506\", \"M637 485.2L23 1.8C19.6-1 14.5-.4 11.8 3l-10 12.5C-1 19-.4 24 3 26.8l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.6 2.2-8.6-1.2-11.4zM320 32c52.9 0 96 43.1 96 96 0 35.9-20 66.9-49.3 83.3l26.8 21.1C426.4 209.3 448 171.2 448 128 448 57.3 390.7 0 320 0c-54 0-100 33.6-118.8 81l26.8 21.1C239.4 61.8 276.1 32 320 32zm176 448H144c-8.8 0-16-7.2-16-16v-41.6c0-56.5 45.9-102.4 102.4-102.4 6.1 0 13 1.4 21.7 4.4 21.3 7.4 43.4 11.1 65.8 11.4l-51.6-40.6c-17.5-5.7-26.8-7.2-35.9-7.2C156.2 288 96 348.2 96 422.4V464c0 26.5 21.5 48 48 48h352c11.9 0 22.6-4.5 30.9-11.6l-27-21.2c-1.2.3-2.5.8-3.9.8z\"]\n};\nvar faUserTag = {\n prefix: 'fal',\n iconName: 'user-tag',\n icon: [640, 512, [], \"f507\", \"M223.9 256c70.7 0 128-57.3 128-128S294.6 0 223.9 0C153.3 0 96 57.3 96 128s57.3 128 127.9 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96c.1-52.9 43.1-96 96-96zm406.7 332.8l-90.2-90.3c-12-12-28.3-18.7-45.2-18.7h-79.3c-17.7 0-32 14.3-32 32v79.3c0 17 6.7 33.3 18.7 45.3l90.2 90.3c6.2 6.2 14.4 9.4 22.6 9.4 8.2 0 16.4-3.1 22.6-9.4l92.5-92.5c12.6-12.6 12.6-32.9.1-45.4zM515.5 480l-90.2-90.3c-6-6-9.4-14.1-9.4-22.6v-79.3h79.3c8.5 0 16.6 3.3 22.6 9.4l90.2 90.3-92.5 92.5zm-51.6-160c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-64 160H48c-8.8 0-16-7.2-16-16v-41.6C32 365.9 77.9 320 134.4 320c19.6 0 39.1 16 89.6 16 50.3 0 70-16 89.6-16 13.6 0 26.5 2.8 38.4 7.6v-33.4c-12.2-3.7-25-6.2-38.4-6.2-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h351.9c15.6 0 29.3-7.6 38.1-19.1l-23.2-23.2c-2.4 6-8.1 10.3-14.9 10.3z\"]\n};\nvar faUserTie = {\n prefix: 'fal',\n iconName: 'user-tie',\n icon: [448, 512, [], \"f508\", \"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96zm91.9 272.2L276.2 442l-33.9-101.7 25-25c10.1-10.1 2.9-27.3-11.3-27.3h-64c-14.3 0-21.4 17.2-11.3 27.3l25 25L171.8 442l-39.7-137.7C58.9 305.5 0 365 0 438.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-25.6c0-73.4-58.9-132.9-132.1-134.2zM48 480c-8.8 0-16-7.2-16-16v-25.6c0-47.2 32.8-87.5 76.9-98.9L149.5 480H48zm144.9 0l31.1-93.4 31.1 93.4h-62.2zM416 464c0 8.8-7.2 16-16 16H298.5L339 339.5c44.1 11.4 76.9 51.7 76.9 98.9V464z\"]\n};\nvar faUserTimes = {\n prefix: 'fal',\n iconName: 'user-times',\n icon: [640, 512, [], \"f235\", \"M582.6 240l55-55c3.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 55-55-55c-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.3l55 55-55 55c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l55-55 55 55c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-55-55zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm0-224c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96zm89.6 256c-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.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.4zM416 464c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16v-41.6C32 365.9 77.9 320 134.4 320c19.6 0 39.1 16 89.6 16 50.4 0 70-16 89.6-16 56.5 0 102.4 45.9 102.4 102.4V464z\"]\n};\nvar faUserUnlock = {\n prefix: 'fal',\n iconName: 'user-unlock',\n icon: [640, 512, [], \"e058\", \"M592,288H448V208.79c0-26.32,20.86-48.34,47.18-48.78A48,48,0,0,1,544,208v8a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8v-7c0-43.28-34-79.51-77.26-80.95A80,80,0,0,0,416,208v80H400a48,48,0,0,0-48,48V464a48,48,0,0,0,48,48H592a48,48,0,0,0,48-48V336A48,48,0,0,0,592,288Zm16,176a16,16,0,0,1-16,16H400a16,16,0,0,1-16-16V336a16,16,0,0,1,16-16H592a16,16,0,0,1,16,16ZM224,256A128,128,0,1,0,96,128,128,128,0,0,0,224,256Zm0-224a96,96,0,1,1-96,96A96,96,0,0,1,224,32ZM496,368a32,32,0,1,0,32,32A32,32,0,0,0,496,368ZM48,480a16,16,0,0,1-16-16V422.4A102.47,102.47,0,0,1,134.4,320c19.6,0,39.1,16,89.6,16s70-16,89.6-16c2.7,0,5.3.6,7.9.8a79.38,79.38,0,0,1,13.1-30.7,132.22,132.22,0,0,0-21.1-2.1c-28.7,0-42.5,16-89.6,16s-60.8-16-89.6-16C60.2,288,0,348.2,0,422.4V464a48,48,0,0,0,48,48H336.4a78.37,78.37,0,0,1-14.8-32Z\"]\n};\nvar faUserVisor = {\n prefix: 'fal',\n iconName: 'user-visor',\n icon: [448, 512, [], \"e04c\", \"M98.50586,152.8457a127.91341,127.91341,0,0,0,250.98828.002C360.37305,145.69141,368,133.97266,368,120V104c0-19.57422-14.38672-35.14648-32.98047-38.58008C313.04883,26.54688,271.834,0,224,0S134.95312,26.54688,112.98242,65.41992C94.38867,68.85352,80,84.42578,80,104v16C80,133.9707,87.62695,145.69141,98.50586,152.8457ZM224,224c-41.63281,0-76.834-26.8457-90.0957-64H314.0957C300.834,197.1543,265.63281,224,224,224Zm0-192c28.24023,0,53.42188,12.50586,71.00977,32H152.99023C170.57812,44.50586,195.75977,32,224,32ZM112,104a8.01545,8.01545,0,0,1,8-8H328a8.01545,8.01545,0,0,1,8,8v16a8.01545,8.01545,0,0,1-8,8H120a8.01545,8.01545,0,0,1-8-8ZM322.875,352h-.125a3.9709,3.9709,0,0,0-3.03125,1.39062c-19.8125,22.98438-31.8125,53.09376-35.6875,89.5a3.9982,3.9982,0,0,0,6.4375,3.57813c24.84375-19.32813,33.75-23.8125,37.03125-24.8125a6.629,6.629,0,0,1,1.375-.375c2.625,2.32813,8.1875,8.57813,19.875,25.03125A3.94519,3.94519,0,0,0,352,448a4.06435,4.06435,0,0,0,1.28125-.20312A4.01157,4.01157,0,0,0,356,443.875c-1.15625-35.32812-11.28125-65.70312-30.0625-90.29688A4.02082,4.02082,0,0,0,322.875,352Zm-9.28125-64c-28.6875,0-42.5,16-89.59375,16s-60.8125-16-89.59375-16A134.43133,134.43133,0,0,0,0,422.40625V464a48.01238,48.01238,0,0,0,48,48H400a48.01238,48.01238,0,0,0,48-48V422.40625A134.43133,134.43133,0,0,0,313.59375,288ZM416,464a16.041,16.041,0,0,1-16,16H48a16.041,16.041,0,0,1-16-16V422.40625A102.47984,102.47984,0,0,1,134.40625,320C153.99922,320,173.5,336,224,336c50.40625,0,69.99922-16,89.59375-16A102.47984,102.47984,0,0,1,416,422.40625Z\"]\n};\nvar faUsers = {\n prefix: 'fal',\n iconName: 'users',\n icon: [640, 512, [], \"f0c0\", \"M544 224c44.2 0 80-35.8 80-80s-35.8-80-80-80-80 35.8-80 80 35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zM320 256c61.9 0 112-50.1 112-112S381.9 32 320 32 208 82.1 208 144s50.1 112 112 112zm0-192c44.1 0 80 35.9 80 80s-35.9 80-80 80-80-35.9-80-80 35.9-80 80-80zm244 192h-40c-15.2 0-29.3 4.8-41.1 12.9 9.4 6.4 17.9 13.9 25.4 22.4 4.9-2.1 10.2-3.3 15.7-3.3h40c24.2 0 44 21.5 44 48 0 8.8 7.2 16 16 16s16-7.2 16-16c0-44.1-34.1-80-76-80zM96 224c44.2 0 80-35.8 80-80s-35.8-80-80-80-80 35.8-80 80 35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm304.1 180c-33.4 0-41.7 12-80.1 12-38.4 0-46.7-12-80.1-12-36.3 0-71.6 16.2-92.3 46.9-12.4 18.4-19.6 40.5-19.6 64.3V432c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48v-44.8c0-23.8-7.2-45.9-19.6-64.3-20.7-30.7-56-46.9-92.3-46.9zM480 432c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16v-44.8c0-16.6 4.9-32.7 14.1-46.4 13.8-20.5 38.4-32.8 65.7-32.8 27.4 0 37.2 12 80.2 12s52.8-12 80.1-12c27.3 0 51.9 12.3 65.7 32.8 9.2 13.7 14.1 29.8 14.1 46.4V432zM157.1 268.9c-11.9-8.1-26-12.9-41.1-12.9H76c-41.9 0-76 35.9-76 80 0 8.8 7.2 16 16 16s16-7.2 16-16c0-26.5 19.8-48 44-48h40c5.5 0 10.8 1.2 15.7 3.3 7.5-8.5 16.1-16 25.4-22.4z\"]\n};\nvar faUsersClass = {\n prefix: 'fal',\n iconName: 'users-class',\n icon: [640, 512, [], \"f63d\", \"M544 224c-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 48zm-304-48c0 44.2 35.8 80 80 80s80-35.8 80-80-35.8-80-80-80-80 35.8-80 80zm128 0c0 26.5-21.5 48-48 48s-48-21.5-48-48 21.5-48 48-48 48 21.5 48 48zM96 384c44.2 0 80-35.8 80-80s-35.8-80-80-80-80 35.8-80 80 35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm468 160h-40c-41.9 0-76 35.9-76 80 0 8.8 7.2 16 16 16s16-7.2 16-16c0-26.5 19.8-48 44-48h40c24.2 0 44 21.5 44 48 0 8.8 7.2 16 16 16s16-7.2 16-16c0-44.1-34.1-80-76-80zm-448 0H76c-41.9 0-76 35.9-76 80 0 8.8 7.2 16 16 16s16-7.2 16-16c0-26.5 19.8-48 44-48h40c24.2 0 44 21.5 44 48 0 8.8 7.2 16 16 16s16-7.2 16-16c0-44.1-34.1-80-76-80zm224 0h-40c-41.9 0-76 35.9-76 80 0 8.8 7.2 16 16 16s16-7.2 16-16c0-26.5 19.8-48 44-48h40c24.2 0 44 21.5 44 48 0 8.8 7.2 16 16 16s16-7.2 16-16c0-44.1-34.1-80-76-80zM64 48c0-8.83 7.19-16 16-16h480c8.81 0 16 7.17 16 16v149.22c11.51 3.46 22.37 8.36 32 15.11V48c0-26.47-21.53-48-48-48H80C53.53 0 32 21.53 32 48v164.33c9.63-6.75 20.49-11.64 32-15.11V48z\"]\n};\nvar faUsersCog = {\n prefix: 'fal',\n iconName: 'users-cog',\n icon: [640, 512, [], \"f509\", \"M287.4 250.6c2.9-10.4 6.5-20.4 10.9-30-33.6-9.5-58.4-40.1-58.4-76.7 0-44.1 35.9-80 80-80 36.6 0 67.1 24.8 76.7 58.4 9.6-4.4 19.6-8.1 30-10.9C412.6 65.6 370.4 32 320 32c-61.9 0-112 50.1-112 112 0 50.4 33.6 92.6 79.4 106.6zM96 224c44.2 0 80-35.8 80-80s-35.8-80-80-80-80 35.8-80 80 35.8 80 80 80zm0-128c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm61.1 172.9c-11.9-8.1-26-12.9-41.1-12.9H76c-41.9 0-76 35.9-76 80 0 8.8 7.2 16 16 16s16-7.2 16-16c0-26.5 19.8-48 44-48h40c5.5 0 10.8 1.2 15.7 3.3 7.5-8.5 16.1-16 25.4-22.4zM176 448c-8.8 0-16-7.2-16-16v-44.8c0-16.6 4.9-32.7 14.1-46.4 13.8-20.5 38.4-32.8 65.7-32.8 14.3 0 18.8 2.4 40.7 7.2-.2-3.8-1.4-13.4.6-32.6-16.3-4.3-26.4-6.6-41.3-6.6-36.3 0-71.6 16.2-92.3 46.9-12.4 18.4-19.6 40.5-19.6 64.3V432c0 26.5 21.5 48 48 48h209c-16-8.6-30.6-19.5-43.5-32H176zm304-208.5c-35.6 0-64.5 29-64.5 64.5s28.9 64.5 64.5 64.5 64.5-29 64.5-64.5-28.9-64.5-64.5-64.5zm0 97c-17.9 0-32.5-14.6-32.5-32.5s14.6-32.5 32.5-32.5 32.5 14.6 32.5 32.5-14.6 32.5-32.5 32.5zm148.3-10.2l-16.5-9.5c.8-8.5.8-17.1 0-25.6l16.6-9.5c9.5-5.5 13.8-16.7 10.5-27-7.2-23.4-19.9-45.4-36.7-63.5-7.4-8.1-19.3-9.9-28.8-4.4l-16.5 9.5c-7-5-14.4-9.3-22.2-12.8v-19c0-11-7.5-20.3-18.2-22.7-23.9-5.4-49.3-5.4-73.3 0-10.7 2.4-18.2 11.8-18.2 22.7v19c-7.8 3.5-15.3 7.8-22.2 12.8l-16.5-9.5c-9.5-5.5-21.3-3.7-28.7 4.4-16.8 18.1-29.4 40.1-36.7 63.4-3.3 10.4 1.2 21.8 10.6 27.2l16.5 9.5c-.8 8.5-.8 17.1 0 25.6l-16.6 9.5c-9.3 5.4-13.8 16.9-10.5 27.1 7.3 23.4 19.9 45.4 36.7 63.5 7.4 8 19.2 9.8 28.8 4.4l16.5-9.5c7 5 14.4 9.3 22.2 12.8v19c0 11 7.5 20.3 18.2 22.7 12 2.7 24.3 4 36.6 4s24.7-1.3 36.6-4c10.7-2.4 18.2-11.8 18.2-22.7v-19c7.8-3.5 15.2-7.8 22.2-12.8l16.5 9.5c9.4 5.4 21.3 3.6 28.7-4.4 16.8-18.1 29.4-40.1 36.7-63.4 3.4-10.4-1.1-21.9-10.5-27.3zm-51.6 7.2l29.4 17c-5.3 14.3-13 27.8-22.8 39.5l-29.4-17c-21.4 18.3-24.5 20.1-51.1 29.5v34c-15.1 2.6-30.6 2.6-45.6 0v-34c-26.9-9.5-30.2-11.7-51.1-29.5l-29.4 17c-9.8-11.8-17.6-25.2-22.8-39.5l29.4-17c-4.9-26.8-5.2-30.6 0-59l-29.4-17c5.2-14.3 13-27.7 22.8-39.5l29.4 17c21.4-18.3 24.5-20.1 51.1-29.5v-34c15.1-2.5 30.7-2.5 45.6 0v34c26.8 9.5 30.2 11.6 51.1 29.5l29.4-17c9.8 11.8 17.6 25.2 22.8 39.5l-29.4 17c4.9 26.8 5.2 30.6 0 59z\"]\n};\nvar faUsersCrown = {\n prefix: 'fal',\n iconName: 'users-crown',\n icon: [640, 512, [], \"f6a5\", \"M564 288h-40c-15.18 0-29.27 4.83-41.15 12.93 9.38 6.37 17.93 13.87 25.45 22.37 4.89-2.05 10.15-3.3 15.7-3.3h40c24.25 0 44 21.53 44 48 0 8.84 7.16 16 16 16s16-7.16 16-16c0-44.11-34.09-80-76-80zm-20-32c44.18 0 80-35.82 80-80s-35.82-80-80-80-80 35.82-80 80 35.82 80 80 80zm0-128c26.47 0 48 21.53 48 48s-21.53 48-48 48-48-21.53-48-48 21.53-48 48-48zM400.15 308.02c-11.88 0-23.87 1.73-35.49 5.26-14.16 4.3-29.1 6.72-44.66 6.72s-30.5-2.42-44.66-6.71a122.209 122.209 0 0 0-35.49-5.26c-36.29 0-71.58 16.18-92.28 46.93C135.21 373.3 128 395.41 128 419.2V432c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48v-12.8c0-23.79-7.21-45.9-19.57-64.25-20.7-30.75-56-46.93-92.28-46.93zM480 432c0 8.82-7.18 16-16 16H176c-8.82 0-16-7.18-16-16v-12.8c0-16.63 4.88-32.67 14.11-46.38 13.83-20.54 38.4-32.8 65.74-32.8 8.9 0 17.71 1.31 26.19 3.88 17.69 5.37 35.84 8.1 53.96 8.1s36.27-2.72 53.96-8.1a89.887 89.887 0 0 1 26.19-3.88c27.34 0 51.91 12.26 65.74 32.8 9.23 13.71 14.11 29.75 14.11 46.38V432zM96 256c44.18 0 80-35.82 80-80s-35.82-80-80-80-80 35.82-80 80 35.82 80 80 80zm0-128c26.47 0 48 21.53 48 48s-21.53 48-48 48-48-21.53-48-48 21.53-48 48-48zm61.15 172.93C145.27 292.83 131.18 288 116 288H76c-41.91 0-76 35.89-76 80 0 8.84 7.16 16 16 16s16-7.16 16-16c0-26.47 19.75-48 44-48h40c5.55 0 10.81 1.25 15.7 3.3 7.52-8.5 16.07-16 25.45-22.37zM320 288c61.86 0 112-50.14 112-112V32l-56 28-56-28-56 28-56-28v144c0 61.86 50.14 112 112 112zM240 83.78l24 12 56-28 56 28 24-12V128H240V83.78zm0 76.22h160v16c0 44.11-35.89 80-80 80s-80-35.89-80-80v-16z\"]\n};\nvar faUsersMedical = {\n prefix: 'fal',\n iconName: 'users-medical',\n icon: [640, 512, [], \"f830\", \"M512 224a128 128 0 1 0 128 128 128 128 0 0 0-128-128zm0 224a96 96 0 1 1 96-96 96 96 0 0 1-96 96zm58.67-117.33h-37.34v-37.34A5.33 5.33 0 0 0 528 288h-32a5.33 5.33 0 0 0-5.33 5.33v37.34h-37.34A5.33 5.33 0 0 0 448 336v32a5.33 5.33 0 0 0 5.33 5.33h37.34v37.34A5.33 5.33 0 0 0 496 416h32a5.33 5.33 0 0 0 5.33-5.33v-37.34h37.34A5.33 5.33 0 0 0 576 368v-32a5.33 5.33 0 0 0-5.33-5.33zM320 256a112 112 0 1 0-112-112 111.94 111.94 0 0 0 112 112zm0-192a80 80 0 1 1-80 80 80.11 80.11 0 0 1 80-80zM96 224a80 80 0 1 0-80-80 80 80 0 0 0 80 80zm0-128a48 48 0 1 1-48 48 48 48 0 0 1 48-48zm288.81 352H176a16 16 0 0 1-16-16v-44.8a83.08 83.08 0 0 1 14.1-46.4c13.8-20.5 38.4-32.8 65.7-32.8s37.2 12 80.2 12a164.08 164.08 0 0 0 36.33-3.66A157.66 157.66 0 0 1 370 279.85c-13.87 3.51-26.11 8.15-50 8.15-38.4 0-46.7-12-80.1-12-36.3 0-71.6 16.2-92.3 46.9a114.59 114.59 0 0 0-19.6 64.3V432a48 48 0 0 0 48 48h241a161 161 0 0 1-32.19-32zM157.1 268.9A72.83 72.83 0 0 0 116 256H76c-41.9 0-76 35.9-76 80a16 16 0 0 0 32 0c0-26.5 19.8-48 44-48h40a39.79 39.79 0 0 1 15.7 3.3 138.76 138.76 0 0 1 25.4-22.4z\"]\n};\nvar faUsersSlash = {\n prefix: 'fal',\n iconName: 'users-slash',\n icon: [640, 512, [], \"e073\", \"M320,64a79.94,79.94,0,0,1,45,146.05l25.67,20.21C415.71,209.73,432,178.94,432,144A111.93,111.93,0,0,0,320,32c-44.42,0-82.41,26-100.53,63.44l25.91,20.4A80,80,0,0,1,320,64ZM544,224a80,80,0,1,0-80-80A80,80,0,0,0,544,224Zm0-128a48,48,0,1,1-48,48A48,48,0,0,1,544,96Zm20,160H524a72.22,72.22,0,0,0-41.09,12.91A135.38,135.38,0,0,1,508.3,291.3,39.79,39.79,0,0,1,524,288h40c24.2,0,44,21.5,44,48a16,16,0,0,0,32,0C640,291.91,605.91,256,564,256ZM176,448a16,16,0,0,1-16-16V387.2a83.2,83.2,0,0,1,14.09-46.4C187.91,320.3,212.5,308,239.8,308c21.3,0,32.15,7.19,56,10.42L242.09,276.1c-.77,0-1.39-.1-2.18-.1-36.32,0-71.61,16.2-92.32,46.91A114.63,114.63,0,0,0,128,387.2V432a48,48,0,0,0,48,48H464a47.73,47.73,0,0,0,26.7-8.13L460.39,448ZM26,106a79.12,79.12,0,0,0-10,38,79.7,79.7,0,0,0,133.45,59.15L123.83,183a47.86,47.86,0,0,1-72.28-56.92Zm131.06,163A72.73,72.73,0,0,0,116,256H76c-41.91,0-76,35.91-76,80a16,16,0,0,0,32,0c0-26.5,19.8-48,44-48h40a39.79,39.79,0,0,1,15.7,3.3A138.6,138.6,0,0,1,157.09,268.91ZM23,1.8A7.88,7.88,0,0,0,11.77,3l-10,12.5A7.94,7.94,0,0,0,3,26.71L617,510.23A8,8,0,0,0,628.2,509l10-12.5a7.86,7.86,0,0,0-1.21-11.2Z\"]\n};\nvar faUtensilFork = {\n prefix: 'fal',\n iconName: 'utensil-fork',\n icon: [512, 512, [], \"f2e3\", \"M458.5 107.1c.4-27.4-27.3-54-53.6-53.6.4-34.4-43.8-68.7-75.3-46.5-8.8 6.1-80.1 55.7-105.2 80.7-42.1 42.1-51.5 97.7-32 145.8L13 395c-16.8 15.1-17.5 41.2-1.5 57.2l48.3 48.3c16.2 16.2 42.3 15 57.2-1.5l161.4-179.2c49 19.8 104.3 9.4 145.8-32 25.1-25.1 74.5-96.4 80.6-105.2 22-31.3-10.2-76-46.3-75.5zm20.2 57s-53.2 77-77.2 101c-38.1 38.1-89.2 41.9-130.4 14.8l-178 197.6c-2.8 3.2-7.7 3.3-10.7.3l-48.3-48.3c-3-3-2.9-7.9.3-10.7l197.6-178c-27.1-41.3-23.2-92.4 14.8-130.4 23.9-23.9 101-77.2 101-77.2 9.2-6.7 30.6 15 23.6 24l-98.6 98.6c-8.5 10 13.3 32.2 23.6 24l105-93.1c9.1-6.5 30.3 14.7 23.8 23.8l-93.1 105c-8.2 10.3 14 32.1 24 23.6l98.6-98.6c9.1-7 30.7 14.4 24 23.6z\"]\n};\nvar faUtensilKnife = {\n prefix: 'fal',\n iconName: 'utensil-knife',\n icon: [512, 512, [], \"f2e4\", \"M72.9 498.4l-48.3-48.3C7 432.5 6.2 404.5 23.3 387.4l375-375C415.2-4.5 443.4-4 461 13.7c20.8 20.6 40 60.8 40 122.3 0 102.8-67.6 225.8-231.9 205.2L138.1 497c-16.6 19.7-46.7 19.9-65.2 1.4zM421 35L46 410c-4.6 4.6-3.7 12.5 1.3 17.5l48.3 48.3c5.4 5.4 13.8 5.7 18 .7L256.1 307c82.8 12.7 153.2-4 191.3-79.3 14.7-29 21.7-61.4 21.7-91.7 0-48-11.3-80.4-30.6-99.7-5.2-5.2-13-5.8-17.5-1.3z\"]\n};\nvar faUtensilSpoon = {\n prefix: 'fal',\n iconName: 'utensil-spoon',\n icon: [512, 512, [], \"f2e5\", \"M60.3 499.8l-48.1-48.1C-4.6 435-4 407.4 13.8 391.5L206 219c-22.3-53.2-10.6-111.8 35.2-157.7C303.3-.8 416.7-26 477.3 34.6c60.7 60.7 35.3 174.2-26.7 236.1-45.8 45.9-104.4 57.7-157.6 35.3L120.5 498.2c-15.9 17.7-43.4 18.5-60.2 1.6zM263.8 83.9c-45.7 45.7-44.5 92.6-18.4 142.7L35.2 415.3c-4.1 3.6-4.2 9.9-.4 13.8l48.1 48.1c3.9 3.9 10.2 3.6 13.8-.4l188.7-210.3c49.5 25.8 96.7 27.7 142.7-18.4 49.3-49.4 74-143.7 26.7-191-45.4-45.3-139-25.2-191 26.8z\"]\n};\nvar faUtensils = {\n prefix: 'fal',\n iconName: 'utensils',\n icon: [480, 512, [], \"f2e7\", \"M344.1 470.3l14.2-164.8c-42.1-33.1-70.4-77-70.4-129.5C288 81.7 376.1 0 440 0c22.1 0 40 17.3 40 38.5v435c0 21.2-17.9 38.5-40 38.5h-56c-22.8 0-41.8-18.7-39.9-41.7zM320 176c0 51 32.2 85.5 71.8 114.5L376 473.1c-.3 3.7 3.4 6.9 8 6.9h56c4.3 0 8-3 8-6.5v-435c0-3.5-3.7-6.5-8-6.5-44.6 0-120 65.8-120 144zM240.7 33.8C237.4 14.3 219.5 0 194.6 0c-11.9 0-24.1 3.4-33.3 11.2C152.9 4.1 141.3 0 128 0s-24.9 4.1-33.3 11.2C85.5 3.4 73.3 0 61.4 0 36.2 0 18.6 14.5 15.3 33.8 13.5 43.2 0 118.4 0 149.9c0 50.9 26.7 91.6 71 110.7L59.6 471.4C58.4 493.4 75.9 512 98 512h60c22 0 39.6-18.5 38.4-40.6L185 260.6c44.2-19.1 71-59.8 71-110.7 0-31.5-13.5-106.7-15.3-116.1zM152.3 240l12.2 233.1c.2 3.7-2.7 6.9-6.5 6.9H98c-3.7 0-6.7-3.1-6.5-6.9L103.7 240C61.3 231.2 32 197 32 149.9c0-29.7 14.8-110.6 14.8-110.6 1.6-9.9 28.3-9.7 29.5.2V162c.9 11.5 28.2 11.7 29.5.2l7.4-122.9c1.6-9.7 27.9-9.7 29.5 0l7.4 122.9c1.3 11.4 28.6 11.2 29.5-.2V39.6c1.2-9.9 27.9-10.1 29.5-.2 0 0 14.8 80.9 14.8 110.6.1 46.8-29 81.2-71.6 90z\"]\n};\nvar faUtensilsAlt = {\n prefix: 'fal',\n iconName: 'utensils-alt',\n icon: [576, 512, [], \"f2e6\", \"M0 60c0 142.9 69.8 215.8 188.6 226.5L84.2 379.1c-25.8 22.9-27 63-2.6 87.3l28 28c24.6 24.6 64.6 23.1 87.3-2.6L290 386.7c96.3 113.5 89.4 105.4 90.3 106.3 22.9 24.4 61.9 25.7 86.2 1.4l28-28c24.1-24.1 23.2-63.3-1.6-86.4L384.8 279.7l7.2-7.7c38.8 12.1 77.1 7 110.3-26.1 20.9-20.9 61.7-79.7 66.8-87.1 20.1-28.5-7.3-66.8-37.4-70.6-2.8-22.1-23.6-41.5-43.9-44-3.9-31-42.6-57.1-70.6-37.4-7.4 5.1-66.2 46-87.1 66.9C298 105.8 291.4 144 304 184l-11.2 10.3-192-178.2C62.6-19.4 0 7.7 0 60zm379.7 177.2l-18.4 20.7-44.9-41.7 22.5-19.9c-18.8-33-15.4-70.7 13.9-100C372.3 76.7 435.6 33 435.6 33c7.6-5.5 25.1 12.3 19.4 19.7l-81 80.9c-7 8.2 10.9 26.4 19.4 19.7l86.1-76.4c7.4-5.4 24.9 12 19.5 19.5l-76.4 86.1C416 191 434.1 209 442.4 202l80.9-80.9c7.4-5.8 25.2 11.8 19.7 19.4 0 0-43.7 63.2-63.3 82.9-29.6 29.4-67.3 32.4-100 13.8zm-161 65.5l50.4 59.3L173 470.6c-10.7 12-29.3 12.7-40.8 1.2l-28-28c-11.4-11.4-10.8-30.1 1.2-40.8l113.3-100.3zM32 60c0-24.4 29.1-37.2 47.1-20.5l392 364c11.6 10.8 12 29.1.7 40.3l-28 28c-11.2 11.2-29.4 10.9-40.2-.6L221 256C81 256 32 177.2 32 60z\"]\n};\nvar faVacuum = {\n prefix: 'fal',\n iconName: 'vacuum',\n icon: [640, 512, [], \"e04d\", \"M352,400a16,16,0,1,0,16,16A16,16,0,0,0,352,400ZM640,112A112.14,112.14,0,0,0,528,0H302.16A112.4,112.4,0,0,0,192.5,89.31L124.91,416H80A80,80,0,0,0,0,496a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V432a16,16,0,0,0-16-16H157.57L223.81,95.78A80.33,80.33,0,0,1,302.16,32H528a80,80,0,0,1,0,160H494.82A191.28,191.28,0,0,0,352,128a32,32,0,0,0-32,32V325.9c-37.17,13.25-64,48.44-64,90.1a96.1,96.1,0,0,0,96,96H480a64,64,0,0,0,64-64V320a190.78,190.78,0,0,0-25.9-96H528A112.14,112.14,0,0,0,640,112ZM192,448v32H34.74A48.1,48.1,0,0,1,80,448Zm160,32a64,64,0,1,1,64-64A64.07,64.07,0,0,1,352,480Zm160-32a32,32,0,0,1-32,32H423a95.58,95.58,0,0,0-71-160h0l0-160h0c88.22,0,160,71.78,160,160Z\"]\n};\nvar faVacuumRobot = {\n prefix: 'fal',\n iconName: 'vacuum-robot',\n icon: [512, 512, [], \"e04e\", \"M431.36,80.64a248,248,0,0,0-350.72,0c-96.85,96.85-96.85,253.87,0,350.72a248,248,0,0,0,350.72,0C528.21,334.51,528.21,177.49,431.36,80.64ZM408.74,408.73a216,216,0,0,1-305.48,0c-84.21-84.21-84.21-221.25,0-305.47a216,216,0,0,1,305.48,0C493,187.48,493,324.52,408.74,408.73ZM140.12,304a16,16,0,0,0-22.63,22.63l67.88,67.88A16,16,0,0,0,208,371.88Zm22.62-67.88a16,16,0,0,0-22.62,22.62L253.25,371.88a16,16,0,0,0,22.63-22.63Zm67.89-22.63A16,16,0,0,0,208,236.12L275.88,304a16,16,0,0,0,22.63-22.63Zm149.82-81.94c-68.62-68.63-180.28-68.63-248.9,0a16,16,0,0,0,22.62,22.62c56.16-56.15,147.5-56.15,203.66,0s56.14,147.5,0,203.66a16,16,0,1,0,22.62,22.62C449.08,311.83,449.08,200.17,380.45,131.55Z\"]\n};\nvar faValueAbsolute = {\n prefix: 'fal',\n iconName: 'value-absolute',\n icon: [448, 512, [], \"f6a6\", \"M24 32H8c-4.4 0-8 3.6-8 8v432c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V40c0-4.4-3.6-8-8-8zm416 0h-16c-4.4 0-8 3.6-8 8v432c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V40c0-4.4-3.6-8-8-8zM325.7 165.6l-11.3-11.3c-3.1-3.1-8.2-3.1-11.3 0l-79 79-79-79c-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.3l79 79-79 79c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l79-79 79 79c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-79-79 79-79c3.1-3.1 3.1-8.1 0-11.3z\"]\n};\nvar faVectorSquare = {\n prefix: 'fal',\n iconName: 'vector-square',\n icon: [512, 512, [], \"f5cb\", \"M486.4 128c14.14 0 25.6-11.46 25.6-25.6V25.6C512 11.46 500.54 0 486.4 0h-76.8C395.46 0 384 11.46 384 25.6V48H128V25.6C128 11.46 116.54 0 102.4 0H25.6C11.46 0 0 11.46 0 25.6v76.8C0 116.54 11.46 128 25.6 128H48v256H25.6C11.46 384 0 395.46 0 409.6v76.8C0 500.54 11.46 512 25.6 512h76.8c14.14 0 25.6-11.46 25.6-25.6V464h256v22.4c0 14.14 11.46 25.6 25.6 25.6h76.8c14.14 0 25.6-11.46 25.6-25.6v-76.8c0-14.14-11.46-25.6-25.6-25.6H464V128h22.4zM416 32h64v64h-64V32zM32 96V32h64v64H32zm64 384H32v-64h64v64zm384-64v64h-64v-64h64zm-48-32h-22.4c-14.14 0-25.6 11.46-25.6 25.6V432H128v-22.4c0-14.14-11.46-25.6-25.6-25.6H80V128h22.4c14.14 0 25.6-11.46 25.6-25.6V80h256v22.4c0 14.14 11.46 25.6 25.6 25.6H432v256z\"]\n};\nvar faVenus = {\n prefix: 'fal',\n iconName: 'venus',\n icon: [288, 512, [], \"f221\", \"M288 176c0-79.5-64.5-144-144-144S0 96.5 0 176c0 74.1 56 135.2 128 143.1V384H76c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h52v52c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-52h52c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-52v-64.9c72-7.9 128-69 128-143.1zm-256 0c0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112-61.9 0-112-50-112-112z\"]\n};\nvar faVenusDouble = {\n prefix: 'fal',\n iconName: 'venus-double',\n icon: [512, 512, [], \"f226\", \"M288 176c0-79.5-64.5-144-144-144S0 96.5 0 176c0 74.1 56 135.2 128 143.1V384H76c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h52v52c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-52h52c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-52v-64.9c72-7.9 128-69 128-143.1zm-256 0c0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112-61.9 0-112-50-112-112zm352 143.1V384h52c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12h-52v52c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12v-52h-52c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h52v-64.9c-27.4-3-52.6-13.8-73.2-30 6.9-8.2 13-17 18.3-26.3 19.9 16.3 44.7 25.2 70.8 25.2 62 0 112-50.1 112-112 0-62-50.1-112-112-112-26.1 0-50.9 8.9-70.8 25.2-5.3-9.3-11.4-18.2-18.3-26.3C303.4 43.6 334.3 32 368 32c79.5 0 144 64.5 144 144 0 74.1-56 135.2-128 143.1z\"]\n};\nvar faVenusMars = {\n prefix: 'fal',\n iconName: 'venus-mars',\n icon: [576, 512, [], \"f228\", \"M288 208c0-79.5-64.5-144-144-144S0 128.5 0 208c0 74.1 56 135.2 128 143.1V416H76c-6.6 0-12 5.4-12 12v8c0 6.6 5.4 12 12 12h52v52c0 6.6 5.4 12 12 12h8c6.6 0 12-5.4 12-12v-52h52c6.6 0 12-5.4 12-12v-8c0-6.6-5.4-12-12-12h-52v-64.9c72-7.9 128-69 128-143.1zm-256 0c0-61.9 50-112 112-112 61.9 0 112 50 112 112 0 61.9-50 112-112 112-61.9 0-112-50-112-112zM576 12v88c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12V54.6l-63.5 63.5C500.2 142.8 512 174 512 208c0 79.5-64.5 144-144 144-33.7 0-64.6-11.6-89.2-30.9 6.9-8.2 13-17 18.3-26.3 19.9 16.3 44.7 25.2 70.8 25.2 62 0 112-50.1 112-112 0-62-50.1-112-112-112-26.1 0-50.9 8.9-70.8 25.2-5.3-9.3-11.4-18.2-18.3-26.3C303.4 75.6 334.3 64 368 64c34 0 65.2 11.8 89.9 31.5L521.4 32H476c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h88c6.6 0 12 5.4 12 12z\"]\n};\nvar faVest = {\n prefix: 'fal',\n iconName: 'vest',\n icon: [448, 512, [], \"e085\", \"M60.688,396.688a16,16,0,1,0,22.624,22.624l48-48a16,16,0,0,0-22.624-22.624ZM434.562,231,384,155.156V48A48.052,48.052,0,0,0,336,0H320a15.991,15.991,0,0,0-8.871,2.693l0,0-.018.011-.019.012L286.125,19.359a111.712,111.712,0,0,1-124.25,0l-25-16.671L136.8,2.8A15.9,15.9,0,0,0,128,0H112A48.052,48.052,0,0,0,64,48V155.156L13.438,231A79.628,79.628,0,0,0,0,275.375V464a48.052,48.052,0,0,0,48,48H400a48.052,48.052,0,0,0,48-48V275.375A79.628,79.628,0,0,0,434.562,231ZM193.2,281.906A15.989,15.989,0,0,0,192,288V480H48a16.011,16.011,0,0,1-16-16V275.375a47.759,47.759,0,0,1,8.062-26.625l53.25-79.875A16.016,16.016,0,0,0,96,160V48a16.011,16.011,0,0,1,16-16h4.672l82.82,234.633ZM158.4,54.039A143.466,143.466,0,0,0,224,70.234a143.511,143.511,0,0,0,62.254-14.306l-68.486,166.32ZM416,464a16.011,16.011,0,0,1-16,16H224V291.172L330.719,32H336a16.011,16.011,0,0,1,16,16V160a16.016,16.016,0,0,0,2.688,8.875l53.25,79.875A47.759,47.759,0,0,1,416,275.375ZM339.312,348.688a16,16,0,0,0-22.624,22.624l48,48a16,16,0,0,0,22.624-22.624Z\"]\n};\nvar faVestPatches = {\n prefix: 'fal',\n iconName: 'vest-patches',\n icon: [448, 512, [], \"e086\", \"M352.375,287.7c-4-16.844-18.156-29.953-35.5-31.531a40.263,40.263,0,0,0-31.156,10.406,41.271,41.271,0,0,0-13.5,30.063L272,345.156A22.648,22.648,0,0,0,294.656,368h.094l48.594-.219a40.944,40.944,0,0,0,40.5-44.593C382.281,305.859,369.188,291.719,352.375,287.7Zm-2.656,45.109a8.983,8.983,0,0,1-6.563,2.969l-39.125.172.188-39.062A8.987,8.987,0,0,1,313.156,288a7.687,7.687,0,0,1,.844.047c4.156.375,7.531,4.594,7.5,9.265l-.25,21.36,21.344-.125c4.812,0,9,3.359,9.375,7.5A8.765,8.765,0,0,1,349.719,332.812ZM112,352a48,48,0,1,0,48,48A48,48,0,0,0,112,352Zm0,64a16,16,0,1,1,16-16A16.019,16.019,0,0,1,112,416ZM96.5,239.516a12.01,12.01,0,0,0-17,16.968L95.016,272,79.5,287.516a12.01,12.01,0,0,0,17,16.968l15.5-15.5,15.5,15.5a12.01,12.01,0,0,0,17-16.968L128.984,272,144.5,256.484a12.01,12.01,0,0,0-17-16.968l-15.5,15.5ZM434.562,231,384,155.156V48A48.052,48.052,0,0,0,336,0H320a15.991,15.991,0,0,0-8.871,2.693l0,0-.018.011-.019.012L286.125,19.359a111.712,111.712,0,0,1-124.25,0l-25-16.671L136.8,2.8A15.9,15.9,0,0,0,128,0H112A48.052,48.052,0,0,0,64,48V155.156L13.438,231A79.628,79.628,0,0,0,0,275.375V464a48.052,48.052,0,0,0,48,48H400a48.052,48.052,0,0,0,48-48V275.375A79.628,79.628,0,0,0,434.562,231ZM193.2,281.906A15.989,15.989,0,0,0,192,288V480H48a16.011,16.011,0,0,1-16-16V275.375a47.759,47.759,0,0,1,8.062-26.625l53.25-79.875A16.016,16.016,0,0,0,96,160V48a16.011,16.011,0,0,1,16-16h4.672l82.82,234.633ZM158.4,54.039A143.466,143.466,0,0,0,224,70.234a143.511,143.511,0,0,0,62.254-14.306l-68.486,166.32ZM416,464a16.011,16.011,0,0,1-16,16H224V291.172L330.719,32H336a16.011,16.011,0,0,1,16,16V160a16.016,16.016,0,0,0,2.688,8.875l53.25,79.875A47.759,47.759,0,0,1,416,275.375Z\"]\n};\nvar faVhs = {\n prefix: 'fal',\n iconName: 'vhs',\n icon: [512, 512, [], \"f8ec\", \"M496 64H16A16 16 0 0 0 0 80v320a48 48 0 0 0 48 48h416a48 48 0 0 0 48-48V80a16 16 0 0 0-16-16zm-16 336a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V192h59.45A130.66 130.66 0 0 0 113 374.12c7.88 6.38 18.31 9.88 29.38 9.88h227.24c11.07 0 21.5-3.5 29.38-9.86A130.68 130.68 0 0 0 420.55 192H480zm-320-78.39V352h-17.62C131.86 352 96 321.73 96 272c0-49.51 35.41-80 46.38-80H160v30.39a63.27 63.27 0 0 0 0 99.22zM192 352V192h128v160zm160-129.61V192h17.62c10.52 0 46.38 30.27 46.38 80 0 49.51-35.41 80-46.38 80H352v-30.39a63.27 63.27 0 0 0 0-99.22zM480 160H32V96h448z\"]\n};\nvar faVial = {\n prefix: 'fal',\n iconName: 'vial',\n icon: [480, 512, [], \"f492\", \"M477.7 188L308 18.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.3l17 17L28.1 332.1c-37.5 37.5-37.6 98.2 0 135.7 37.5 37.5 98.2 37.6 135.7 0L438 193.6l17 17c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.2-3.1 3.2-8.1.1-11.3zM141.3 445.2c-24.2 24.2-66.3 24.2-90.5 0-25-25-25-65.5 0-90.5l66.7-66.7h181L141.3 445.2zM330.5 256h-181L324.9 80.6l90.5 90.5-84.9 84.9z\"]\n};\nvar faVials = {\n prefix: 'fal',\n iconName: 'vials',\n icon: [640, 512, [], \"f493\", \"M72 32h24v304c0 44.1 35.9 80 80 80s80-35.9 80-80V32h24c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8H72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm56 0h96v128h-96V32zm0 160h96v144c0 63.5-96 63.5-96 0V192zM360 32h24v304c0 44.1 35.9 80 80 80s80-35.9 80-80V32h24c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm56 0h96v128h-96V32zm0 160h96v144c0 63.5-96 63.5-96 0V192zm216 288H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h624c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faVideo = {\n prefix: 'fal',\n iconName: 'video',\n icon: [576, 512, [], \"f03d\", \"M543.9 96c-6.2 0-12.5 1.8-18.2 5.7L416 171.6v-59.8c0-26.4-23.2-47.8-51.8-47.8H51.8C23.2 64 0 85.4 0 111.8v288.4C0 426.6 23.2 448 51.8 448h312.4c28.6 0 51.8-21.4 51.8-47.8v-59.8l109.6 69.9c5.7 4 12.1 5.7 18.2 5.7 16.6 0 32.1-13 32.1-31.5v-257c.1-18.5-15.4-31.5-32-31.5zM384 400.2c0 8.6-9.1 15.8-19.8 15.8H51.8c-10.7 0-19.8-7.2-19.8-15.8V111.8c0-8.6 9.1-15.8 19.8-15.8h312.4c10.7 0 19.8 7.2 19.8 15.8v288.4zm160-15.7l-1.2-1.3L416 302.4v-92.9L544 128v256.5z\"]\n};\nvar faVideoPlus = {\n prefix: 'fal',\n iconName: 'video-plus',\n icon: [576, 512, [], \"f4e1\", \"M543.9 96c-6.2 0-12.5 1.8-18.2 5.7L416 171.6v-59.8c0-26.4-23.2-47.8-51.8-47.8H51.8C23.2 64 0 85.4 0 111.8v288.4C0 426.6 23.2 448 51.8 448h312.4c28.6 0 51.8-21.4 51.8-47.8v-59.8l109.6 69.9c5.7 4 12.1 5.7 18.2 5.7 16.6 0 32.1-13 32.1-31.5v-257c.1-18.5-15.4-31.5-32-31.5zM384 192v208.2c0 8.6-9.1 15.8-19.8 15.8H51.8c-10.7 0-19.8-7.2-19.8-15.8V111.8c0-8.6 9.1-15.8 19.8-15.8h312.4c10.7 0 19.8 7.2 19.8 15.8V192zm160 192.5l-1.2-1.3L416 302.4v-92.9L544 128v256.5zM296 240h-72v-72c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v72h-72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h72v72c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-72h72c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8z\"]\n};\nvar faVideoSlash = {\n prefix: 'fal',\n iconName: 'video-slash',\n icon: [640, 512, [], \"f4e2\", \"M637 485.2L142.7 96l-16.2-12.7L23 1.8C19.6-1 14.5-.4 11.8 3l-10 12.5C-1 19-.4 24 3 26.8L438.9 370l9.1 7.2 169 133.1c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.6 2.2-8.6-1.2-11.4zM396.2 416H83.8c-10.7 0-19.8-7.2-19.8-15.8V135.9l-31.9-25.1c0 .4-.1.7-.1 1.1v288.4c0 26.4 23.2 47.8 51.8 47.8h312.4c16.6 0 31.2-7.3 40.7-18.5l-25.3-19.9c-3.7 3.7-9.1 6.3-15.4 6.3zm0-320c10.7 0 19.8 7.2 19.8 15.8v138.3l32 25.2v-65.8L576 128v248.1l28.4 22.4c2.1-4.2 3.6-8.8 3.6-14v-257C608 109 592.5 96 575.9 96c-6.2 0-12.5 1.8-18.2 5.7L448 171.6v-59.8c0-26.4-23.2-47.8-51.8-47.8H179.6l40.6 32h176z\"]\n};\nvar faVihara = {\n prefix: 'fal',\n iconName: 'vihara',\n icon: [640, 512, [], \"f6a7\", \"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-10.22 6.82-9.27 22.13 1.72 27.62L64 448v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h208v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56h208v56c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-56l55.15-19.67c10.99-5.49 11.95-20.81 1.73-27.62zM320 35.36L449.06 96h-258.1L320 35.36zM192 128h256v64H192v-64zM94.6 253.94L166.4 224h307.2l71.81 29.94L539 256H101.01l-6.41-2.06zM128 288h384v64H128v-64zm442.47 128H69.53l-14.38-5.13L104.19 384H535.8l49.04 26.87-14.37 5.13z\"]\n};\nvar faViolin = {\n prefix: 'fal',\n iconName: 'violin',\n icon: [640, 512, [], \"f8ed\", \"M472 96a24 24 0 1 0-24-24 24 24 0 0 0 24 24zM349.66 13.66L338.34 2.34a8 8 0 0 0-11.31 0L2.34 327a8 8 0 0 0 0 11.32l11.32 11.31a8 8 0 0 0 11.31 0L349.66 25a8 8 0 0 0 0-11.34zM520 48a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm96 48a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm-48 48a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm-86.86 48.8L635.31 38.62a16 16 0 0 0 0-22.62L624 4.69a16 16 0 0 0-22.62 0l-154.2 154.19c-15.44-12.84-33.06-23-52.59-27.53a128.23 128.23 0 0 0-28.69-3.3c-21.11 0-47.55 5.52-69.35 27.33-3.68 3.69-6.5 7.9-9.4 12.05A63.51 63.51 0 0 1 224.36 240a64.53 64.53 0 0 1-23.16-4.35c-15.23 5.15-29.31 13.11-41 24.86-38.2 38.13-41.2 99.6-13.3 153.55L138 420a22.41 22.41 0 0 0-3.41 34.48l50.95 50.95a22.22 22.22 0 0 0 8.06 5.06 20.75 20.75 0 0 0 2.93.56 22.54 22.54 0 0 0 4.83.94c.36 0 .67-.23 1-.25a22.35 22.35 0 0 0 6.54-1.59 20.62 20.62 0 0 0 3.2-1A22 22 0 0 0 220 502l5.81-8.71c23.39 12.11 48.14 18.61 71.88 18.61 31 0 60.18-10.53 81.8-32.16 11.75-11.68 19.71-25.77 24.87-41-16.1-42.18 15-86.46 59.09-86.46a68.11 68.11 0 0 1 8.93.6c4.21-2.94 8.48-5.8 12.23-9.54 24.94-25 32.43-61.48 24-97.91-4.52-19.55-14.61-37.18-27.47-52.63zM199.86 474.53l-34.39-34.39 80.08-53.39 7.7 7.7zm262.52-154.26a95.45 95.45 0 0 0-91.83 117 67.49 67.49 0 0 1-13.7 19.86C338 476 314.28 479.92 297.68 479.92c-17.76 0-36.41-4.72-54.08-13.32l40.64-61a22.4 22.4 0 0 0-2.8-28.26l-18.83-18.83a25.73 25.73 0 0 0-14.85-6.36c-.34 0-.65-.2-1-.2a22.17 22.17 0 0 0-3.51.51 21.39 21.39 0 0 0-2.27.33 22.39 22.39 0 0 0-6.64 2.92l-60.78 40.52C153 354.45 156 309.9 182.91 283a67 67 0 0 1 19.68-13.58 95.34 95.34 0 0 0 93.78-30.33 94 94 0 0 0 23.42-61.72c11.83-11.52 27.34-17.36 46.11-17.36a96.24 96.24 0 0 1 21.44 2.46c12.24 2.86 24.64 9.55 36.92 19.29l-99.57 99.58a16 16 0 0 0 0 22.62L336 315.31a16 16 0 0 0 22.62 0l99.59-99.59c9.72 12.26 16.39 24.65 19.22 36.9 6.22 26.92.73 51.54-15.05 67.65z\"]\n};\nvar faVirus = {\n prefix: 'fal',\n iconName: 'virus',\n icon: [512, 512, [], \"e074\", \"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.22A55.74,55.74,0,0,1,341.74,107c-29.24,0-57.29-22.7-57.29-57V28.44a28.45,28.45,0,0,0-56.9,0V50c0,34.29-28.05,57-57.29,57a55.7,55.7,0,0,1-39.82-16.77L115.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.25A55.7,55.7,0,0,1,170.25,405c29.25,0,57.3,22.7,57.3,57v21.54a28.45,28.45,0,0,0,56.9,0V462c0-34.29,28.05-57,57.3-57a55.7,55.7,0,0,1,39.81,16.77L396.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.89ZM379.88,307.32c-10.64,25.71-8.94,53.3,3.84,76.44a86.92,86.92,0,0,0-42-10.75A89.42,89.42,0,0,0,256,437.11,89.42,89.42,0,0,0,170.25,373a86.92,86.92,0,0,0-42,10.75c12.78-23.14,14.48-50.73,3.84-76.44s-31.33-44-56.69-51.32c25.36-7.34,46.05-25.63,56.69-51.32s8.94-53.3-3.84-76.44a87,87,0,0,0,42,10.75A89.42,89.42,0,0,0,256,74.88,89.42,89.42,0,0,0,341.74,139a87,87,0,0,0,42-10.75c-12.78,23.14-14.48,50.73-3.84,76.44s31.33,44,56.69,51.32C411.21,263.33,390.52,281.63,379.88,307.32ZM224,176a48,48,0,1,0,48,48A48,48,0,0,0,224,176Zm0,64a16,16,0,1,1,16-16A16,16,0,0,1,224,240Zm80,48a16,16,0,1,0,16,16A16,16,0,0,0,304,288Z\"]\n};\nvar faVirusSlash = {\n prefix: 'fal',\n iconName: 'virus-slash',\n icon: [640, 512, [], \"e075\", \"M320,437.11A89.42,89.42,0,0,0,234.26,373a87,87,0,0,0-42,10.75c12.79-23.14,14.49-50.73,3.84-76.44s-31.32-44-56.68-51.32c16.55-4.79,30.76-14.64,41.84-27.78l-25.12-19.78A55.23,55.23,0,0,1,114,227.55H92.45a28.45,28.45,0,1,0,0,56.89H114c50.68,0,76.06,61.28,40.22,97.12L139,396.8A28.44,28.44,0,1,0,179.2,437l15.24-15.25A55.7,55.7,0,0,1,234.26,405c29.25,0,57.3,22.7,57.3,57v21.54a28.45,28.45,0,1,0,56.89,0V462c0-34.29,28.06-57,57.31-57h0l-32.57-25.64A89.36,89.36,0,0,0,320,437.11Zm0-362.23A89.42,89.42,0,0,0,405.76,139a87,87,0,0,0,42-10.75C435,151.38,433.25,179,443.9,204.68s31.32,44,56.68,51.32c-16.58,4.79-30.8,14.66-41.88,27.83l25.11,19.77A55.26,55.26,0,0,1,526,284.44h21.55a28.45,28.45,0,1,0,0-56.89H526c-50.68,0-76.06-61.27-40.23-97.11L501,115.19A28.44,28.44,0,1,0,460.82,75L445.57,90.22A55.74,55.74,0,0,1,405.76,107c-29.25,0-57.31-22.7-57.31-57V28.44a28.45,28.45,0,0,0-56.89,0V50c0,34.29-28.05,57-57.3,57h-.15l32.62,25.69A89.41,89.41,0,0,0,320,74.88ZM637,485.32,23,1.82A7.87,7.87,0,0,0,11.77,3l-10,12.5A8,8,0,0,0,3,26.73l614,483.5A8,8,0,0,0,628.2,509l10-12.5A7.86,7.86,0,0,0,637,485.32Z\"]\n};\nvar faViruses = {\n prefix: 'fal',\n iconName: 'viruses',\n icon: [640, 512, [], \"e076\", \"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.58a31.34,31.34,0,0,1-22.4,9.43c-16.45,0-32.23-12.77-32.23-32.06V240a16,16,0,0,0-32,0v12.12c0,19.29-15.78,32.06-32.23,32.06a31.34,31.34,0,0,1-22.4-9.43l-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.58a31.34,31.34,0,0,1,22.4-9.43c16.45,0,32.23,12.77,32.23,32.06V496a16,16,0,0,0,32,0V483.88c0-19.29,15.78-32.06,32.23-32.06a31.32,31.32,0,0,1,22.4,9.43l8.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-32Zm-71.25,39.51A64.17,64.17,0,0,0,548,419.92c-1.23-.07-2.48-.1-3.73-.1A64.19,64.19,0,0,0,496,441.61a64.19,64.19,0,0,0-48.23-21.79c-1.25,0-2.5,0-3.73.1A64.38,64.38,0,0,0,422.51,368,64.38,64.38,0,0,0,444,316.08c1.23.07,2.48.1,3.73.1A64.19,64.19,0,0,0,496,294.39a64.19,64.19,0,0,0,48.23,21.79c1.25,0,2.5,0,3.73-.1A64.38,64.38,0,0,0,569.49,368,64.11,64.11,0,0,0,552.75,391.51ZM346.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,1,0,297.6,56.23L286.17,67.66a41.78,41.78,0,0,1-29.86,12.58c-21.94,0-43-17-43-42.75V21.33a21.33,21.33,0,0,0-42.66,0V37.49c0,25.72-21,42.75-43,42.75A41.74,41.74,0,0,1,97.83,67.66L86.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.43a41.75,41.75,0,0,1,29.86-12.59c21.94,0,43,17,43,42.76v16.16a21.33,21.33,0,0,0,42.66,0V346.51c0-25.72,21-42.76,43-42.76a41.75,41.75,0,0,1,29.86,12.59l11.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.33Zm-69,14.09A74.56,74.56,0,0,0,274,273.9a73.24,73.24,0,0,0-17.66-2.15A75,75,0,0,0,192,308.11a75,75,0,0,0-64.31-36.36A73.24,73.24,0,0,0,110,273.9,74.88,74.88,0,0,0,76,192a74.89,74.89,0,0,0,34-81.9,73.24,73.24,0,0,0,17.66,2.15A75.07,75.07,0,0,0,192,75.89a75.07,75.07,0,0,0,64.31,36.36A73.24,73.24,0,0,0,274,110.1,74.89,74.89,0,0,0,308,192,74.52,74.52,0,0,0,277.52,227.42ZM160,128a32,32,0,1,0,32,32A32,32,0,0,0,160,128Zm64,80a16,16,0,1,0,16,16A16,16,0,0,0,224,208ZM480,336a16,16,0,1,0,16,16A16,16,0,0,0,480,336Z\"]\n};\nvar faVoicemail = {\n prefix: 'fal',\n iconName: 'voicemail',\n icon: [640, 512, [], \"f897\", \"M640 272a144 144 0 0 0-288 0c0 45.52 21.54 85.61 54.51 112h-173c33-26.39 54.51-66.48 54.51-112A144 144 0 0 0 0 272c0 74.05 56.1 134.33 128 142.39V416h384v-1.61c71.9-8.06 128-68.34 128-142.39zm-608 0a112 112 0 1 1 112 112A112.12 112.12 0 0 1 32 272zm464 112a112 112 0 1 1 112-112 112.12 112.12 0 0 1-112 112z\"]\n};\nvar faVolcano = {\n prefix: 'fal',\n iconName: 'volcano',\n icon: [512, 512, [], \"f770\", \"M505.5 460.6l-175.9-225c-4.9-6.3-12.1-9.7-19.8-11.1l16.4-49.4H352c44.1 0 80-36 80-80.2s-35.9-80.2-80-80.2c-13.1 0-26 3.4-37.6 9.6-29.9-32.6-86.9-32.6-116.9 0-11.6-6.3-24.5-9.6-37.6-9.6-44.1 0-80 36-80 80.2s35.9 80.2 80 80.2h25.8l16.4 49.4c-7.7 1.4-14.9 4.8-19.8 11.1L6.5 460.6C-9.4 481.8 5.7 512 32.1 512H480c26.3 0 41.4-30.2 25.5-51.4zM160 143.1c-26.5 0-48-21.6-48-48.1s21.5-48.1 48-48.1c14.2 0 24.6 6.3 30.8 11.6l14.4 12.2 9.7-16.2c17.7-29.7 64.5-29.7 82.2 0l9.7 16.2 14.4-12.2c6.2-5.3 16.7-11.6 30.8-11.6 26.5 0 48 21.6 48 48.1s-21.5 48.1-48 48.1h-48.9l-26.7 80.2h-40.9l-26.7-80.2H160zm47.6 112.3h96.8l51 65.2-35 41c-6.7 7.9-19.7 7.8-26.3 0L268.8 332c-9.6-11.2-23.1-17-38.3-17.3-14.8.3-28.5 7-37.7 18.6-6.6 8.3-20.5 8.3-27.1 0l-9.6-12 51.5-65.9zm-175.9 225l104.1-133.2 4.9 6.1c18.8 23.5 58.3 23.6 77.1 0 3.3-4.1 8.1-6.5 13.3-6.5 5.3.1 10.1 2.2 13.4 6.1l25.3 29.5c9.4 11 23.1 17.3 37.5 17.3 14.4 0 28.1-6.3 37.5-17.3l30.8-36.1L480 479.9l-448.3.5z\"]\n};\nvar faVolleyballBall = {\n prefix: 'fal',\n iconName: 'volleyball-ball',\n icon: [496, 512, [], \"f45f\", \"M248 8C111.2 8 0 119.2 0 256s111.2 248 248 248 248-111.2 248-248S384.8 8 248 8zm172 378.1c-85.6 22.4-176.5 4.8-247.7-46.9 21.3-25.6 47.1-47.5 76.5-64.8 84.3 47.1 159.8 45.1 207.5 37.9-7.3 27-19.8 52-36.3 73.8zm42.8-107.2c-24.4 4.6-48.9 6.4-73.2 4.9 8.7-81.6-13.6-162.9-61.8-228.3 59.2 23.6 148.2 98.2 135 223.4zM274.4 41.8c62.3 62.9 92.6 150.4 83.4 238.1-32.8-5.6-64.5-17-94.2-33.7-1-72.8-25.7-142.2-70.9-198.9 40.2-10.5 69.3-7 81.7-5.5zM160.5 58.7c16.1 18.8 30 39.1 40.8 60.8C126.4 152.7 67.1 212.7 34.5 287 14 145.8 123.2 75.3 160.5 58.7zM49.2 340.4c23.3-85.5 84-155.6 164.6-191.5 11.5 31.2 17.5 64.4 17.9 98.4-62.6 37.2-110.3 93.5-136.8 160.9-19.2-19.4-34.9-42.3-45.7-67.8zm71.7 89.9c8.1-23.2 18.8-45.2 32.1-65.3 47.5 34.6 125.7 71.9 228.5 60.5-52.5 41.4-160.7 77.9-260.6 4.8z\"]\n};\nvar faVolume = {\n prefix: 'fal',\n iconName: 'volume',\n icon: [480, 512, [], \"f6a8\", \"M342.91 193.57c-7.81-3.8-17.5-.48-21.34 7.5-3.81 7.97-.44 17.53 7.53 21.34C343.22 229.2 352 242.06 352 256c0 13.94-8.78 26.8-22.9 33.58-7.97 3.81-11.34 13.38-7.53 21.34 3.86 8.05 13.54 11.29 21.34 7.5C368.25 306.28 384 282.36 384 256s-15.75-50.29-41.09-62.43zM231.81 64c-5.91 0-11.92 2.18-16.78 7.05L126.06 160H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c4.87 4.87 10.88 7.05 16.78 7.05 12.33 0 24.19-9.52 24.19-24.02V88.02C256 73.51 244.13 64 231.81 64zM224 404.67L139.31 320H32V192h107.31L224 107.33v297.34zm256-148.68c0-66.12-34.02-126.62-88.81-157.87-7.69-4.38-17.59-1.78-22.04 5.89-4.45 7.66-1.77 17.44 5.96 21.86 44.77 25.55 72.61 75.4 72.61 130.12s-27.84 104.58-72.61 130.12c-7.72 4.42-10.4 14.2-5.96 21.86 4.3 7.38 14.06 10.44 22.04 5.89C445.98 382.62 480 322.12 480 255.99z\"]\n};\nvar faVolumeDown = {\n prefix: 'fal',\n iconName: 'volume-down',\n icon: [384, 512, [], \"f027\", \"M342.91 194.57c-7.81-3.8-17.5-.48-21.34 7.5-3.81 7.97-.44 17.53 7.53 21.34C343.22 230.2 352 243.06 352 257c0 13.94-8.78 26.8-22.9 33.58-7.97 3.81-11.34 13.38-7.53 21.34 3.86 8.05 13.54 11.29 21.34 7.5C368.25 307.28 384 283.36 384 257s-15.75-50.29-41.09-62.43zM231.81 65c-5.91 0-11.92 2.18-16.78 7.05L126.06 161H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c4.87 4.87 10.88 7.05 16.78 7.05 12.33 0 24.19-9.52 24.19-24.02V89.02C256 74.51 244.13 65 231.81 65zM224 405.67L139.31 321H32V193h107.31L224 108.33v297.34z\"]\n};\nvar faVolumeMute = {\n prefix: 'fal',\n iconName: 'volume-mute',\n icon: [512, 512, [], \"f6a9\", \"M454.63 256l55.03-55.03c3.12-3.12 3.12-8.19 0-11.31l-11.31-11.31c-3.12-3.12-8.19-3.12-11.31 0L432 233.37l-55.03-55.03c-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.31L409.37 256l-55.03 55.03c-3.12 3.12-3.12 8.19 0 11.31l11.31 11.31c3.12 3.12 8.19 3.12 11.31 0L432 278.63l55.03 55.03c3.12 3.12 8.19 3.12 11.31 0l11.31-11.31c3.12-3.12 3.12-8.19 0-11.31L454.63 256zM231.81 64c-5.91 0-11.92 2.18-16.78 7.05L126.06 160H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c4.87 4.87 10.88 7.05 16.78 7.05 12.33 0 24.19-9.52 24.19-24.02V88.02C256 73.51 244.13 64 231.81 64zM224 404.67l-75.32-75.3-9.37-9.37H32V192h107.31l9.37-9.37 75.32-75.3v297.34z\"]\n};\nvar faVolumeOff = {\n prefix: 'fal',\n iconName: 'volume-off',\n icon: [256, 512, [], \"f026\", \"M231.81 64a23.44 23.44 0 0 0-16.78 7l-89 89H24a24 24 0 0 0-24 24v144a24 24 0 0 0 24 24h102.06L215 441a23.47 23.47 0 0 0 16.81 7c12.33 0 24.19-9.52 24.19-24V88c0-14.51-11.86-24-24.19-24zM224 404.67L139.31 320H32V192h107.31L224 107.33v297.34z\"]\n};\nvar faVolumeSlash = {\n prefix: 'fal',\n iconName: 'volume-slash',\n icon: [640, 512, [], \"f2e2\", \"M256 107.3v37.2l32 25.2V88c0-14.5-11.9-24-24.2-24-5.9 0-11.9 2.2-16.8 7l-37.1 37.1 25.3 19.9zm152 18.6c44.4 25.5 72 75.4 72 130.1 0 19.8-3.7 39-10.5 56.6l25.9 20.4c10.6-23.6 16.6-49.8 16.6-77 0-66.1-33.7-126.6-88-157.9-7.6-4.4-17.4-1.8-21.8 5.9-4.5 7.7-1.8 17.5 5.8 21.9zm30.8-95.7C523.4 74.7 576 161.2 576 256c0 41.8-10.7 81.7-29.4 117.3l25.5 20.1C595 352 608 305.1 608 256c0-106.7-59.1-204.1-154.2-254.2-7.9-4.1-17.5-1.1-21.6 6.7-4.2 7.9-1.2 17.5 6.6 21.7zm-77.7 192.2c9.5 4.5 16.3 12 19.9 20.5l33.1 26c.9-4.3 1.9-8.5 1.9-13 0-26.4-15.8-50.3-41.1-62.4-7.8-3.8-17.5-.5-21.3 7.5s-.5 17.6 7.5 21.4zM637 485.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zm-198.2-3.4c-7.8 4.1-10.8 13.8-6.7 21.6 2.8 5.3 8.2 8.6 14.2 8.5 2.5 0 5.1-.6 7.5-1.8 21.7-11.4 41.2-25.5 58.8-41.4l-25.7-20.2c-14.7 12.6-30.5 24.1-48.1 33.3zM256 404.7L171.3 320H64V192h97.1l-40.6-32H56c-13.3 0-24 10.7-24 24v144c0 13.2 10.7 24 24 24h102.1l89 89c4.9 4.9 10.9 7 16.8 7 12.3 0 24.2-9.5 24.2-24V291.9l-32-25.2v138z\"]\n};\nvar faVolumeUp = {\n prefix: 'fal',\n iconName: 'volume-up',\n icon: [576, 512, [], \"f028\", \"M342.91 193.57c-7.81-3.8-17.5-.48-21.34 7.5-3.81 7.97-.44 17.53 7.53 21.34C343.22 229.2 352 242.06 352 256s-8.78 26.8-22.9 33.58c-7.97 3.81-11.34 13.38-7.53 21.34 3.86 8.05 13.54 11.29 21.34 7.5C368.25 306.28 384 282.36 384 256s-15.75-50.29-41.09-62.43zM231.81 64c-5.91 0-11.92 2.18-16.78 7.05L126.06 160H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c4.87 4.87 10.88 7.05 16.78 7.05 12.33 0 24.19-9.52 24.19-24.02V88.02C256 73.51 244.13 64 231.81 64zM224 404.67L139.31 320H32V192h107.31L224 107.33v297.34zM421.51 1.83c-7.89-4.08-17.53-1.12-21.66 6.7-4.13 7.81-1.13 17.5 6.7 21.61 84.76 44.55 137.4 131.1 137.4 225.85s-52.64 181.3-137.4 225.85c-7.82 4.11-10.83 13.8-6.7 21.61 4.1 7.75 13.68 10.84 21.66 6.7C516.78 460.06 576 362.67 576 255.99c0-106.67-59.22-204.06-154.49-254.16zM480 255.99c0-66.12-34.02-126.62-88.81-157.87-7.69-4.38-17.59-1.78-22.04 5.89-4.45 7.66-1.77 17.44 5.96 21.86 44.77 25.55 72.61 75.4 72.61 130.12s-27.84 104.58-72.61 130.12c-7.72 4.42-10.4 14.2-5.96 21.86 4.3 7.38 14.06 10.44 22.04 5.89C445.98 382.62 480 322.12 480 255.99z\"]\n};\nvar faVoteNay = {\n prefix: 'fal',\n iconName: 'vote-nay',\n icon: [640, 512, [], \"f771\", \"M393.5 153.8l-11.3-11.3c-1.6-1.6-3.6-2.3-5.7-2.3s-4.1.8-5.7 2.3L320 193.4l-50.9-50.9c-1.6-1.6-3.6-2.3-5.7-2.3s-4.1.8-5.7 2.3l-11.3 11.3c-3.1 3.1-3.1 8.2 0 11.3l50.9 50.9-50.9 50.9c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l50.9-50.9 50.9 50.9c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3l-51-50.9 50.9-50.9c3.2-3.1 3.2-8.2 0-11.3zM608 288h-64V62.5c0-16.8-14.3-30.5-32-30.5H128c-17.7 0-32 13.7-32 30.5V288H32c-17.7 0-32 14.3-32 32v128c0 17.7 14.3 32 32 32h576c17.7 0 32-14.3 32-32V320c0-17.7-14.3-32-32-32zM128 64h384v304H128V64zm480 384H32V320h64v48H73.6c-5.3 0-9.6 3.6-9.6 8v16c0 4.4 4.3 8 9.6 8h492.8c5.3 0 9.6-3.6 9.6-8v-16c0-4.4-4.3-8-9.6-8H544v-48h64v128z\"]\n};\nvar faVoteYea = {\n prefix: 'fal',\n iconName: 'vote-yea',\n icon: [640, 512, [], \"f772\", \"M409.3 138.6c-1.6-1.6-3.6-2.3-5.7-2.3-2 0-4.1.8-5.7 2.3L290.5 246.1 242 197.5c-1.6-1.6-3.6-2.3-5.7-2.3-2 0-4.1.8-5.7 2.3l-11.3 11.3c-3.1 3.1-3.1 8.2 0 11.3l65.5 65.5c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l124.5-124.5c3.1-3.1 3.1-8.2 0-11.3l-11.4-11.2zM608 288h-64V62.5c0-16.8-14.3-30.5-32-30.5H128c-17.7 0-32 13.7-32 30.5V288H32c-17.7 0-32 14.3-32 32v128c0 17.7 14.3 32 32 32h576c17.7 0 32-14.3 32-32V320c0-17.7-14.3-32-32-32zM128 64h384v304H128V64zm480 384H32V320h64v48H73.6c-5.3 0-9.6 3.6-9.6 8v16c0 4.4 4.3 8 9.6 8h492.8c5.3 0 9.6-3.6 9.6-8v-16c0-4.4-4.3-8-9.6-8H544v-48h64v128z\"]\n};\nvar faVrCardboard = {\n prefix: 'fal',\n iconName: 'vr-cardboard',\n icon: [640, 512, [], \"f729\", \"M592 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h165.82c25.19 0 48.03-14.77 58.36-37.74l16.56-36.8C294.66 360.31 306.76 352 320 352s25.34 8.31 31.26 21.46l16.56 36.8C378.15 433.23 401 448 426.18 448H592c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm16 336c0 8.82-7.18 16-16 16H426.18c-12.57 0-24.02-7.41-29.18-18.87l-16.56-36.8C369.42 335.83 345.69 320 320 320s-49.42 15.83-60.44 40.33L243 397.13c-5.16 11.46-16.61 18.87-29.18 18.87H48c-8.82 0-16-7.18-16-16V112c0-8.82 7.18-16 16-16h544c8.82 0 16 7.18 16 16v288zM176 160c-44.18 0-80 35.81-80 80 0 44.18 35.82 80 80 80s80-35.82 80-80-35.82-80-80-80zm0 128c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48zm288-128c-44.18 0-80 35.81-80 80 0 44.18 35.82 80 80 80s80-35.82 80-80-35.82-80-80-80zm0 128c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48z\"]\n};\nvar faWagonCovered = {\n prefix: 'fal',\n iconName: 'wagon-covered',\n icon: [640, 512, [], \"f8ee\", \"M544.15,256l91-169.67A62.18,62.18,0,0,0,577.68,0C560.75,0,426.09,32,410.05,32A63.67,63.67,0,0,0,368,16H272A63.67,63.67,0,0,0,230,32C213.92,32,79.49,0,62.39,0A62.18,62.18,0,0,0,4.75,85.85L96,256v65.83A111.88,111.88,0,0,0,176,512c56.37,0,102.56-41.79,110.39-96h67.22c7.83,54.21,54,96,110.39,96a111.88,111.88,0,0,0,80-190.22V256ZM572,32.51c3.35-.61,18.45-2.66,29.24,10.71a30.14,30.14,0,0,1,4.78,29.54L525,224H432V79.59A62.62,62.62,0,0,0,429.2,62ZM244.71,64c5.54-9.5,15.46-16.21,27.29-16.21h96c11.83,0,21.75,6.71,27.29,16.21,2.06,3.54,4.71,9.85,4.71,15.59V224H240V79.59C240,73.85,242.65,67.54,244.71,64Zm-206-20.76A30.53,30.53,0,0,1,67.31,32.38l143.5,29.56A62.48,62.48,0,0,0,208,79.59V224H115.18L33.79,72.29A29.78,29.78,0,0,1,38.75,43.24ZM254.38,384H192V321.62A80.22,80.22,0,0,1,254.38,384ZM160,384H97.62A80.22,80.22,0,0,1,160,321.62ZM97.62,416H160v62.38A80.22,80.22,0,0,1,97.62,416ZM192,478.38V416h62.38A80.22,80.22,0,0,1,192,478.38ZM542.38,384H480V321.62A80.22,80.22,0,0,1,542.38,384ZM448,384H385.62A80.22,80.22,0,0,1,448,321.62Zm-62.38,32H448v62.38A80.22,80.22,0,0,1,385.62,416ZM480,478.38V416h62.38A80.22,80.22,0,0,1,480,478.38Zm32.12-179.13A111,111,0,0,0,464,288c-56.38,0-102.56,41.79-110.39,96H286.39c-7.83-54.21-54-96-110.39-96a111,111,0,0,0-48.12,11.25V256H512.12Z\"]\n};\nvar faWalker = {\n prefix: 'fal',\n iconName: 'walker',\n icon: [448, 512, [], \"f831\", \"M400.85 386.53V80a80 80 0 0 0-80-80h-134a79.92 79.92 0 0 0-77.63 60.61L.24 498.18a8 8 0 0 0 5.83 9.7l15.53 3.88a8 8 0 0 0 9.7-5.82L85.57 288h283.28v98a64.18 64.18 0 1 0 32 .53zM140.26 68.36A47.92 47.92 0 0 1 186.82 32h134a48 48 0 0 1 48 48v112H109.47zM93.53 256l8-32h267.32v32zM384 480a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"]\n};\nvar faWalkieTalkie = {\n prefix: 'fal',\n iconName: 'walkie-talkie',\n icon: [384, 512, [], \"f8ef\", \"M104 192h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm248-96h-32V80a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v16h-32V80a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v16H96V8a8 8 0 0 0-8-8H72a8 8 0 0 0-8 8v88H32a32.09 32.09 0 0 0-32 32v178.74a32 32 0 0 0 9.38 22.63L32 352v112a48 48 0 0 0 48 48h224a48 48 0 0 0 48-48V352l22.62-22.63a32 32 0 0 0 9.38-22.63V128a32.09 32.09 0 0 0-32-32zm0 210.75l-22.63 22.62-9.37 9.38V464a16 16 0 0 1-16 16H80a16 16 0 0 1-16-16V338.75l-9.37-9.38L32 306.74V128h320zM104 256h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm0 64h176a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H104a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8z\"]\n};\nvar faWalking = {\n prefix: 'fal',\n iconName: 'walking',\n icon: [320, 512, [], \"f554\", \"M305.5 247.3l-19.6-21.1-8.7-28.5c-7.9-26.1-23.3-47.8-43.2-62.8 19.3-13.4 32-35.7 32-60.9 0-40.8-33.2-74-74-74s-74 33.2-74 74c0 15.7 4.9 30.3 13.3 42.3-14.7 3.8-28.4 9.8-45.3 17.4l-8.6 3.8c-24 10.5-43.4 30.1-54.9 55.2l-11.8 28c-7.3 17.2-5.7 35.7 4.2 50.7C24.6 286 41.2 295 58.4 295c12.5 0 24-4.7 32.9-12.9.2 1.4.4 2.7.6 4.1l-14.2 38.9-16.3 44.6L14 422.1c-18.7 20.4-18.7 52.4 0 72.9 9.6 10.5 23.2 16.6 37.2 16.6 14 0 27.6-6 37.2-16.6l46.7-51.2c9.6-10.6 17-22.9 22-36.5l8.7-23.9 10.6 10.7c.5.5.8 1.3.9 1.9l15.6 74.2C198 494.5 219 512 242.8 512c4 0 8.1-.5 12.1-1.5 27.4-6.9 44-34.6 38-62.9l-15.6-74.1c-2.8-13.2-7.8-25.6-14.7-36.7 1.8.2 3.6.3 5.5.3 20.3 0 38.9-12.6 47.4-32.2 8.6-19.5 4.7-41.6-10-57.6zM192 32c23.2 0 42 18.8 42 42s-18.8 42-42 42-42-18.8-42-42 18.8-42 42-42zm-65 364.3c-3.5 9.7-8.8 18.4-15.6 25.9l-46.7 51.2c-3.7 4.1-8.6 6.2-13.6 6.2-4.9 0-9.8-2.1-13.6-6.2-7.5-8.2-7.5-21.5 0-29.7l46.7-51.2c3.1-3.4 5.5-7.4 7.1-11.8l16.3-44.6.1.1 1 1.2 29 29.3-10.7 29.6zm141.1-91.1c-4.4 0-9-1.8-13-6.2l-23.5-25.3c-5-5.4-8.8-12.1-11-19.4-11.4-37.5-11.5-39.9-17.5-48.5l-20.9 91.7 43 43.4c10.4 10.6 17.7 24.2 20.8 39.3l15.6 74.1c2.4 11.3-4 22.6-14.4 25.2-1.5.4-3 .5-4.4.5-9.4 0-16.7-7.6-18.6-16.3l-15.6-74.2c-1.4-6.9-4.7-13-9.5-17.8L136 307.8c-11.6-13.8-15.7-31.2-11.9-47.7l15.8-69.3c-9 3.2-18.1 7.3-35.4 15-8 3.5-14.5 10-18.3 18.4L75 250.8c-3.7 8.7-10.1 12.3-16.6 12.3-12.5 0-25.2-13.4-18.2-29.9L51.7 206c8.3-18.2 21.9-31.9 38.6-39.2 34.2-15.1 48.7-22.8 76.6-22.8 36.3 0 68.3 25.3 79.8 63l10.3 33.9c.3 1 .8 2 1.6 2.8L282 269c14.1 15.3.9 36.2-13.9 36.2z\"]\n};\nvar faWallet = {\n prefix: 'fal',\n iconName: 'wallet',\n icon: [512, 512, [], \"f555\", \"M384 256c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm80-160h-16V80c0-26.51-21.49-48-48-48H96C42.98 32 0 74.98 0 128v256c0 53.02 42.98 96 96 96h352c35.35 0 64-28.65 64-64V144c0-26.51-21.49-48-48-48zm16 320c0 17.64-14.36 32-32 32H96c-35.29 0-64-28.71-64-64V128c0-35.29 28.71-64 64-64h304c8.82 0 16 7.18 16 16v16H112c-8.84 0-16 7.16-16 16s7.16 16 16 16h352c8.82 0 16 7.18 16 16v272z\"]\n};\nvar faWand = {\n prefix: 'fal',\n iconName: 'wand',\n icon: [512, 512, [], \"f72a\", \"M400 192c8.84 0 16-7.16 16-16v-27.96l91.87-101.83c5.72-6.32 5.48-16.02-.55-22.05L487.84 4.69A15.97 15.97 0 0 0 476.52 0c-3.84 0-7.68 1.37-10.73 4.13L186.6 256H144c-8.84 0-16 7.16-16 16v36.87L10.53 414.84c-13.57 12.28-14.1 33.42-1.16 46.36l41.43 41.43c6.26 6.27 14.45 9.37 22.62 9.37 8.71 0 17.4-3.53 23.73-10.53L376.34 192H400zM73.43 480l-41.46-41.4L455.35 56.65 73.43 480z\"]\n};\nvar faWandMagic = {\n prefix: 'fal',\n iconName: 'wand-magic',\n icon: [512, 512, [], \"f72b\", \"M458.66 341.33L432 288l-26.66 53.33L352 368l53.34 26.67L432 448l26.66-53.33L512 368l-53.34-26.67zM432 384c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zM224 96l16-32 32-16-32-16-16-32-16 32-32 16 32 16 16 32zm176 96c8.84 0 16-7.16 16-16v-27.96l91.87-101.83c5.72-6.32 5.48-16.02-.55-22.05L487.84 4.69A15.97 15.97 0 0 0 476.52 0c-3.84 0-7.68 1.37-10.73 4.13L186.6 256H144c-8.84 0-16 7.16-16 16v36.87L10.53 414.84c-13.57 12.28-14.1 33.42-1.16 46.36l41.43 41.43c6.26 6.27 14.45 9.37 22.62 9.37 8.71 0 17.4-3.53 23.73-10.53L376.34 192H400zM73.43 480l-41.46-41.4L455.35 56.65 73.43 480zM80 160l26.66-53.33L160 80l-53.34-26.67L80 0 53.34 53.33 0 80l53.34 26.67L80 160zm0-96c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16z\"]\n};\nvar faWarehouse = {\n prefix: 'fal',\n iconName: 'warehouse',\n icon: [640, 512, [], \"f494\", \"M512 224H128c-17.7 0-32 14.4-32 32v248c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-56h384v56c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V256c0-17.6-14.3-32-32-32zm0 192H128v-64h384v64zm0-96H128v-64h384v64zm98.6-201.7L338.6 3.7c-11.8-5-25.3-5-37.2 0l-272 114.6C11.5 125.8 0 143.2 0 162.5V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V162.5c0-6.5 3.8-12.2 9.8-14.8l272-114.6c3.9-1.7 8.5-1.7 12.4 0l272 114.6c6 2.5 9.8 8.3 9.8 14.8V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V162.5c0-19.3-11.5-36.7-29.4-44.2z\"]\n};\nvar faWarehouseAlt = {\n prefix: 'fal',\n iconName: 'warehouse-alt',\n icon: [640, 512, [], \"f495\", \"M528 352H352V240c0-8.8-7.2-16-16-16H112c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16zM320 480H128v-96h192v96zm0-128H128v-96h192v96zm192 128H352v-96h160v96zm98.6-361.7L338.6 3.7c-11.8-5-25.3-5-37.2 0l-272 114.6C11.5 125.8 0 143.2 0 162.5V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V162.5c0-6.5 3.8-12.2 9.8-14.8l272-114.6c3.9-1.7 8.5-1.7 12.4 0l272 114.6c6 2.5 9.8 8.3 9.8 14.8V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V162.5c0-19.3-11.5-36.7-29.4-44.2z\"]\n};\nvar faWasher = {\n prefix: 'fal',\n iconName: 'washer',\n icon: [446, 512, [], \"f898\", \"M384-1H64A64 64 0 0 0 0 63v416a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V63a64 64 0 0 0-64-64zm32 480H32V63a32 32 0 0 1 32-32h320a32 32 0 0 1 32 32zM80 95a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm64 0a16 16 0 1 0-16-16 16 16 0 0 0 16 16zm80 32a160 160 0 1 0 160 160 160 160 0 0 0-160-160zm0 288a128 128 0 1 1 128-128 128.14 128.14 0 0 1-128 128zm36.87-131.66a51.23 51.23 0 0 1-73.74 0A51.81 51.81 0 0 1 150 299c-7.71 0-14.74-2.15-21.31-5.16C132.27 343.53 173.41 383 224 383s91.73-39.47 95.31-89.16c-6.57 3-13.6 5.16-21.31 5.16a51.81 51.81 0 0 1-37.13-15.66z\"]\n};\nvar faWatch = {\n prefix: 'fal',\n iconName: 'watch',\n icon: [384, 512, [], \"f2e1\", \"M320 112.9V24c0-13.2-10.8-24-24-24H88C74.8 0 64 10.8 64 24v88.9C24.7 148.1 0 199.1 0 256s24.7 107.9 64 143.1V488c0 13.2 10.8 24 24 24h208c13.2 0 24-10.8 24-24v-88.9c39.3-35.2 64-86.2 64-143.1s-24.7-107.9-64-143.1zM96 32h192v57.7C259.8 73.3 227 64 192 64s-67.8 9.3-96 25.7V32zm192 448H96v-57.7c28.2 16.3 61 25.7 96 25.7s67.8-9.4 96-25.7V480zm-96-64c-88.6 0-160-71.8-160-160S103.5 96 192 96c88.4 0 160 71.6 160 160s-71.6 160-160 160zm49-92.2l-60.1-43.7c-3.1-2.3-4.9-5.9-4.9-9.7V150.3c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v109.9l51.8 37.7c5.4 3.9 6.5 11.4 2.6 16.8l-4.7 6.5c-3.8 5.3-11.3 6.5-16.7 2.6z\"]\n};\nvar faWatchCalculator = {\n prefix: 'fal',\n iconName: 'watch-calculator',\n icon: [384, 512, [], \"f8f0\", \"M136 232h-32a8 8 0 0 0-8 8v32a8 8 0 0 0 8 8h32a8 8 0 0 0 8-8v-32a8 8 0 0 0-8-8zm72 72h-32a8 8 0 0 0-8 8v32a8 8 0 0 0 8 8h32a8 8 0 0 0 8-8v-32a8 8 0 0 0-8-8zm-72 0h-32a8 8 0 0 0-8 8v32a8 8 0 0 0 8 8h32a8 8 0 0 0 8-8v-32a8 8 0 0 0-8-8zm144 0h-32a8 8 0 0 0-8 8v32a8 8 0 0 0 8 8h32a8 8 0 0 0 8-8v-32a8 8 0 0 0-8-8zm-72-72h-32a8 8 0 0 0-8 8v32a8 8 0 0 0 8 8h32a8 8 0 0 0 8-8v-32a8 8 0 0 0-8-8zM320 81.61V32a32 32 0 0 0-32-32H96a32 32 0 0 0-32 32v49.61A80 80 0 0 0 0 160v192a80 80 0 0 0 64 78.39V480a32 32 0 0 0 32 32h192a32 32 0 0 0 32-32v-49.61A80 80 0 0 0 384 352V160a80 80 0 0 0-64-78.39zM96 32h192v48H96zm192 448H96v-48h192zm64-128a48.05 48.05 0 0 1-48 48H80a48.05 48.05 0 0 1-48-48V160a48.05 48.05 0 0 1 48-48h224a48.05 48.05 0 0 1 48 48zm-72-192H104a8 8 0 0 0-8 8v32a8 8 0 0 0 8 8h176a8 8 0 0 0 8-8v-32a8 8 0 0 0-8-8zm0 72h-32a8 8 0 0 0-8 8v32a8 8 0 0 0 8 8h32a8 8 0 0 0 8-8v-32a8 8 0 0 0-8-8z\"]\n};\nvar faWatchFitness = {\n prefix: 'fal',\n iconName: 'watch-fitness',\n icon: [384, 512, [], \"f63e\", \"M248.42 168.01c-15.76 0-35.02 6.7-56.42 27.74-21.4-21.04-40.66-27.74-56.42-27.74-16.47 0-29.11 7.31-36.38 13.22-28.27 22.95-29.75 64.17-4.45 89.04l87.08 85.59c5.61 5.52 14.73 5.53 20.36 0l87.08-85.59c25.3-24.87 23.81-66.09-4.46-89.04-7.28-5.91-19.93-13.22-36.39-13.22zm18.41 79.44L192 321l-74.83-73.55c-11.77-11.57-11.19-30.51 2.2-41.38 11.1-9.02 27.15-10.16 50.2 12.5L192 240.63l22.43-22.05c22.96-22.57 39.01-21.58 50.2-12.49 13.42 10.88 13.94 29.81 2.2 41.36zM320 81.61V32c0-17.67-14.33-32-32-32H96C78.33 0 64 14.33 64 32v49.61C27.48 89.03 0 121.3 0 160v192c0 38.7 27.48 70.97 64 78.39V480c0 17.67 14.33 32 32 32h192c17.67 0 32-14.33 32-32v-49.61c36.52-7.41 64-39.69 64-78.39V160c0-38.7-27.48-70.97-64-78.39zM96 32h192v48H96V32zm192 448H96v-48h192v48zm64-128c0 26.47-21.53 48-48 48H80c-26.47 0-48-21.53-48-48V160c0-26.47 21.53-48 48-48h224c26.47 0 48 21.53 48 48v192z\"]\n};\nvar faWater = {\n prefix: 'fal',\n iconName: 'water',\n icon: [576, 512, [], \"f773\", \"M568.3 416c-29.5-1.5-57.7-11.6-78.2-28.3-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.7-20.2.1-20.2 16.6-48.4 26.7-78.2 28.2-4.3.2-7.7 3.6-7.7 7.9v16c0 4.5 3.8 8.3 8.3 8.1 32.3-1.5 63.3-11.4 87.8-27.9 53.8 36.1 139.2 35.8 192 0 53.7 36.1 139.2 35.8 192 0 24.6 16.5 55.6 26.4 87.6 27.9 4.5.2 8.3-3.6 8.3-8.1v-16c0-4.3-3.4-7.7-7.7-7.9zm0-106.7c-29.5-1.5-57.7-11.6-78.2-28.3-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.7-20.2.1-20.2 16.6-48.3 26.7-78.1 28.2-4.3.2-7.7 3.6-7.7 7.9v16c0 4.5 3.8 8.3 8.3 8.1 32.3-1.5 63.3-11.4 87.8-27.9 53.8 36.1 139.2 35.8 192 0 53.7 36.1 139.2 35.8 192 0 24.6 16.5 55.6 26.4 87.6 27.9 4.5.2 8.3-3.6 8.3-8.1v-16c-.1-4.3-3.5-7.7-7.8-7.9zm0-106.7c-29.5-1.5-57.7-11.6-78.2-28.3-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.7-20.2.1-20.2 16.6-48.4 26.7-78.2 28.2-4.3.2-7.7 3.6-7.7 7.9v16c0 4.5 3.8 8.3 8.3 8.1 32.3-1.5 63.3-11.4 87.8-27.9 53.8 36.1 139.2 35.8 192 0 53.7 36.1 139.2 35.8 192 0 24.6 16.5 55.6 26.4 87.6 27.9 4.5.2 8.3-3.6 8.3-8.1v-16c0-4.3-3.4-7.7-7.7-7.9zm0-106.7c-29.5-1.5-57.7-11.6-78.2-28.3-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.7-20.2.1C65.7 84.3 37.5 94.4 7.7 95.9c-4.3.2-7.7 3.6-7.7 7.9v16c0 4.5 3.8 8.3 8.3 8.1 32.3-1.5 63.3-11.4 87.8-27.9 53.8 36.1 139.2 35.8 192 0 53.7 36.1 139.2 35.8 192 0 24.6 16.5 55.6 26.4 87.6 27.9 4.5.2 8.3-3.6 8.3-8.1v-16c0-4.3-3.4-7.7-7.7-7.9z\"]\n};\nvar faWaterLower = {\n prefix: 'fal',\n iconName: 'water-lower',\n icon: [576, 512, [], \"f774\", \"M276.7 235.7c3.1 2.9 7.2 4.4 11.3 4.4s8.2-1.5 11.3-4.4l90.3-84.7c3.1-2.9 3.1-7.7 0-10.6l-11.3-10.6c-3.1-2.9-8.2-2.9-11.3 0l-63 59.1V7.5c0-4.1-3.6-7.5-8-7.5h-16c-4.4 0-8 3.4-8 7.5v181.3l-63-59.1c-3.1-2.9-8.2-2.9-11.3 0l-11.3 10.6c-3.1 2.9-3.1 7.7 0 10.6l90.3 84.8zM568.3 450c-29.5-1.4-57.7-10.9-78.2-26.5-5.9-4.5-14.3-4.5-20.2.1-43.7 33.6-127 34-171.8-.1-5.9-4.5-14.3-4.5-20.2.1-43.7 33.6-127 34-171.8-.1-5.9-4.5-14.3-4.4-20.2.1-20.2 15.6-48.3 25-78.1 26.4-4.3.2-7.7 3.4-7.7 7.4v15c0 4.2 3.8 7.8 8.3 7.6 32.3-1.4 63.3-10.6 87.8-26.2 53.8 33.9 139.2 33.5 192 0 53.7 33.9 139.2 33.5 192 0 24.6 15.5 55.6 24.8 87.6 26.2 4.5.2 8.3-3.3 8.3-7.6v-15c-.1-4-3.5-7.2-7.8-7.4zm0-119.9c-29.5-1.4-57.7-10.9-78.2-26.5-5.9-4.5-14.3-4.5-20.2.1-43.7 33.6-127 34-171.8-.1-5.9-4.5-14.3-4.5-20.2.1-43.7 33.6-127 34-171.8-.1-5.9-4.5-14.3-4.4-20.2.1-20.2 15.6-48.3 25-78.1 26.4-4.3.2-7.7 3.4-7.7 7.4v15c0 4.2 3.8 7.8 8.3 7.6 32.3-1.4 63.3-10.6 87.8-26.2 53.8 33.9 139.2 33.5 192 0 53.7 33.9 139.2 33.5 192 0 24.6 15.5 55.6 24.8 87.6 26.2 4.5.2 8.3-3.3 8.3-7.6v-15c-.1-4-3.5-7.2-7.8-7.4z\"]\n};\nvar faWaterRise = {\n prefix: 'fal',\n iconName: 'water-rise',\n icon: [576, 512, [], \"f775\", \"M197.7 117.7c3.1 3.1 8.2 3.1 11.3 0l63-63v193.4c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V54.6l63 63c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3L299.3 4.7C296.2 1.6 292.1 0 288 0s-8.2 1.6-11.3 4.7l-90.3 90.4c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3zM568.3 480c-29.5-1.5-57.7-11.6-78.2-28.3-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.7-20.2.1-20.2 16.6-48.4 26.7-78.2 28.2-4.3.2-7.7 3.6-7.7 7.9v16c0 4.5 3.8 8.3 8.3 8.1 32.3-1.5 63.3-11.4 87.8-27.9 53.8 36.1 139.2 35.8 192 0 53.7 36.1 139.2 35.8 192 0 24.6 16.5 55.6 26.4 87.6 27.9 4.5.2 8.3-3.6 8.3-8.1v-16c0-4.3-3.4-7.7-7.7-7.9zm0-128.1c-29.5-1.5-57.7-11.6-78.2-28.3-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.8-20.2.1-43.7 35.9-127 36.3-171.8-.1-5.9-4.8-14.3-4.7-20.2.1-20.2 16.6-48.3 26.7-78.1 28.2-4.3.2-7.7 3.6-7.7 7.9v16c0 4.5 3.8 8.3 8.3 8.1 32.3-1.5 63.3-11.4 87.8-27.9 53.8 36.1 139.2 35.8 192 0 53.7 36.1 139.2 35.8 192 0 24.6 16.5 55.6 26.4 87.6 27.9 4.5.2 8.3-3.6 8.3-8.1v-16c-.1-4.3-3.5-7.6-7.8-7.9z\"]\n};\nvar faWaveSine = {\n prefix: 'fal',\n iconName: 'wave-sine',\n icon: [640, 512, [], \"f899\", \"M634.1 260.56l-15.4-4.27a8 8 0 0 0-9.77 5.33C592.08 317.9 521.8 448 464 448c-57.47 0-93.81-100.38-129-197.45C296.16 143.11 255.94 32 176 32 87.29 32 13.05 198.62.33 241.55a7.92 7.92 0 0 0 5.57 9.89l15.4 4.26a7.93 7.93 0 0 0 9.77-5.32C47.92 194.1 118.2 64 176 64c57.47 0 93.81 100.38 129 197.45C343.84 368.89 384.06 480 464 480c88.71 0 163-166.62 175.67-209.55a7.92 7.92 0 0 0-5.57-9.89z\"]\n};\nvar faWaveSquare = {\n prefix: 'fal',\n iconName: 'wave-square',\n icon: [640, 512, [], \"f83e\", \"M632 240H496a32 32 0 0 0-32 32v176H336V64a32 32 0 0 0-32-32H176a32 32 0 0 0-32 32v176H8a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h136a32 32 0 0 0 32-32V64h128v384a32 32 0 0 0 32 32h128a32 32 0 0 0 32-32V272h136a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8z\"]\n};\nvar faWaveTriangle = {\n prefix: 'fal',\n iconName: 'wave-triangle',\n icon: [640, 512, [], \"f89a\", \"M636.73 235.05l-12.91-9.47a8 8 0 0 0-11.18 1.72L464.38 436.44 189.16 38.93A16 16 0 0 0 176.22 32c-6.22-.43-10 2.38-13.13 6.54L1.55 265.82A8 8 0 0 0 3.27 277l12.91 9.47a8 8 0 0 0 11.18-1.72L175.62 75.6l275.22 397.51a16 16 0 0 0 12.94 6.89h.22a16 16 0 0 0 12.91-6.53l161.54-227.24a8 8 0 0 0-1.72-11.18z\"]\n};\nvar faWaveform = {\n prefix: 'fal',\n iconName: 'waveform',\n icon: [640, 512, [], \"f8f1\", \"M232 96h-16a8 8 0 0 0-8 8v304a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V104a8 8 0 0 0-8-8zm-96 96h-16a8 8 0 0 0-8 8v112a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V200a8 8 0 0 0-8-8zm-96 32H24a8 8 0 0 0-8 8v48a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-48a8 8 0 0 0-8-8zm384-96h-16a8 8 0 0 0-8 8v240a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V136a8 8 0 0 0-8-8zm192 96h-16a8 8 0 0 0-8 8v48a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8v-48a8 8 0 0 0-8-8zM520 64h-16a8 8 0 0 0-8 8v368a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V72a8 8 0 0 0-8-8zM328 0h-16a8 8 0 0 0-8 8v496a8 8 0 0 0 8 8h16a8 8 0 0 0 8-8V8a8 8 0 0 0-8-8z\"]\n};\nvar faWaveformPath = {\n prefix: 'fal',\n iconName: 'waveform-path',\n icon: [640, 512, [], \"f8f2\", \"M632 276h-61.72l-14.44-93.83A12 12 0 0 0 544.25 172c-4.69.11-10.91 4.11-12 9.66L498 353 459.88 86.3a12 12 0 0 0-23.76-.16L385 412.42l-53.06-402a12 12 0 0 0-23.82 0l-53.12 402-51.12-326.28a12 12 0 0 0-23.76.16L142 353l-34.25-171.36c-1.16-5.81-7.87-9.53-12.19-9.64a12 12 0 0 0-11.44 10.17L69.72 276H8a8 8 0 0 0-8 8v8a8 8 0 0 0 8 8h72a12 12 0 0 0 11.84-10.17l5.72-36.91 34.69 173.44c1.16 5.92 5.56 9.34 12.37 9.64a11.92 11.92 0 0 0 11.26-10.3L192.56 169l51.56 332.91c.5 3.08 2.63 10.14 11.6 10.14h.37a12.09 12.09 0 0 0 11.82-10.42L320 106.78l52.09 394.8a12 12 0 0 0 23.79.28L447.44 169l36.68 256.7a12 12 0 0 0 11.57 10.3c4.75-.25 10.81-3.39 12.09-9.66l34.66-173.42 5.72 36.91A11.88 11.88 0 0 0 560 300h72a8 8 0 0 0 8-8v-8a8 8 0 0 0-8-8z\"]\n};\nvar faWebcam = {\n prefix: 'fal',\n iconName: 'webcam',\n icon: [448, 512, [], \"f832\", \"M401 438.6l-49.19-30.75C409.88 367.39 448 300.19 448 224 448 100.29 347.71 0 224 0S0 100.29 0 224c0 76.19 38.12 143.39 96.23 183.85L47 438.6a32 32 0 0 0-15 27.14V480a32 32 0 0 0 32 32h320a32 32 0 0 0 32-32v-14.26a32 32 0 0 0-15-27.14zM32 224c0-106 86-192 192-192s192 86 192 192-86 192-192 192S32 330 32 224zm352 256H64v-14.26L127.62 426a221.84 221.84 0 0 0 192.76 0L384 465.74zm0-256a160 160 0 1 0-160 160 160 160 0 0 0 160-160zm-288 0a128 128 0 1 1 128 128A128.14 128.14 0 0 1 96 224zm144-80a16 16 0 0 0-16-16 96.1 96.1 0 0 0-96 96 16 16 0 0 0 32 0 64.07 64.07 0 0 1 64-64 16 16 0 0 0 16-16z\"]\n};\nvar faWebcamSlash = {\n prefix: 'fal',\n iconName: 'webcam-slash',\n icon: [640, 512, [], \"f833\", \"M637 485.25L23 1.75A8 8 0 0 0 11.76 3l-10 12.51A8 8 0 0 0 3 26.75l614 483.5a8 8 0 0 0 11.25-1.25l10-12.51a8 8 0 0 0-1.25-11.24zM320 32c106 0 192 86 192 192a190.79 190.79 0 0 1-28.24 99.86l25.12 19.78A222 222 0 0 0 544 224C544 100.29 443.72 0 320 0a223.19 223.19 0 0 0-160.81 68.27l25.19 19.84A191.38 191.38 0 0 1 320 32zM163.07 193.53A159.34 159.34 0 0 0 320 384a158.7 158.7 0 0 0 66.24-14.73L356.69 346c-11.7 3.53-23.85 6-36.68 6A128.15 128.15 0 0 1 192 224c0-2.44.59-4.72.72-7.12zM458 303.6c13.6-23.53 22-50.47 22-79.6a159.65 159.65 0 0 0-270-115.72l25.65 20.2C258.24 108.52 287.56 96 320 96a128.14 128.14 0 0 1 128 128c0 21.62-5.9 41.69-15.4 59.57zm-196.79-155l26.15 20.59A63.31 63.31 0 0 1 320 160a16 16 0 0 0 0-32 95.06 95.06 0 0 0-58.75 20.64zM320 416c-106 0-192-86-192-192a191.88 191.88 0 0 1 7.39-52.27l-26.83-21.13A223.05 223.05 0 0 0 96 224c0 76.19 38.12 143.39 96.24 183.85L143 438.6a32 32 0 0 0-15 27.14V480a32 32 0 0 0 32 32h320a32 32 0 0 0 32-32v-11.7l-97.87-77.06A190.94 190.94 0 0 1 320 416zm160 49.74V480H160v-14.26L223.63 426a221.82 221.82 0 0 0 192.75 0z\"]\n};\nvar faWeight = {\n prefix: 'fal',\n iconName: 'weight',\n icon: [512, 512, [], \"f496\", \"M448 64h-64.81C353.95 25.38 308.07 0 256 0s-97.95 25.38-127.19 64H64C28.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 32c70.69 0 128 57.31 128 128s-57.31 128-128 128-128-57.31-128-128S185.31 32 256 32zm224 416c0 17.67-14.33 32-32 32H64c-17.67 0-32-14.33-32-32V128c0-17.67 14.33-32 32-32h45.56C100.94 115.63 96 137.22 96 160c0 88.22 71.78 160 160 160s160-71.78 160-160c0-22.78-4.94-44.37-13.56-64H448c17.67 0 32 14.33 32 32v320zM256 256c26.47 0 48-21.53 48-48 0-13.92-6.05-26.36-15.54-35.13l30.24-70.57c3.48-8.11-.28-17.52-8.41-21-8.08-3.48-17.52.27-21 8.41l-30.26 70.6C223.57 158 208 188.65 208 208c0 26.47 21.53 48 48 48zm0-64c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16z\"]\n};\nvar faWeightHanging = {\n prefix: 'fal',\n iconName: 'weight-hanging',\n icon: [512, 512, [], \"f5cd\", \"M510.28 445.86l-73.03-292.13c-3.8-15.19-16.44-25.72-30.87-25.72h-86.74C329.77 114.6 336 98.09 336 80c0-44.18-35.82-80-80-80s-80 35.82-80 80c0 18.09 6.23 34.6 16.36 48h-86.74c-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.14zM208 80c0-26.47 21.53-48 48-48s48 21.53 48 48-21.53 48-48 48-48-21.53-48-48zm267.27 393.92c-2.17 2.77-5.88 6.08-11.3 6.08H48.03c-5.42 0-9.13-3.3-11.3-6.08-4.29-5.49-5.77-13.08-3.96-20.3l73.03-292.13c.21-.83.52-1.32.43-1.48h299.31c.2.26.47.72.66 1.48l73.03 292.13c1.81 7.22.33 14.81-3.96 20.3z\"]\n};\nvar faWhale = {\n prefix: 'fal',\n iconName: 'whale',\n icon: [640, 512, [], \"f72c\", \"M432 288c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16zm80-160c-210.5 0-287.35 224-332.12 224-10.96 0-19.88-8.92-19.88-19.88V224l47.38-24.9c10.39-5.93 16.62-15.93 16.62-26.62V80.03c0-9.41-9.01-16.03-18.72-16.03-3.47 0-7.03.85-10.3 2.71L112 114.13 29.02 66.71A20.781 20.781 0 0 0 18.72 64C9.01 64 0 70.61 0 80.03v92.45c0 10.7 6.24 20.69 16.62 26.62L64 224v108.12c0 64 51.88 115.88 115.88 115.88H560c44.18 0 80-35.82 80-80V256.54C640 183.59 576 128 512 128zm96 240c0 26.47-21.53 48-48 48H179.88C133.63 416 96 378.37 96 332.12V204.67l-64-33.84v-65.56l80 45.71 80-45.71v65.76l-64 33.64v127.46c0 28.6 23.27 51.88 51.88 51.88 29.8 0 49.95-25.95 80.45-65.23C309.41 255.54 383.6 160 512 160c45.41 0 96 39.65 96 96.54V368z\"]\n};\nvar faWheat = {\n prefix: 'fal',\n iconName: 'wheat',\n icon: [512, 512, [], \"f72d\", \"M454.06 171.37c-4.44-4.43-9.24-8.25-14.25-11.64 14.69-5.26 28.28-12.24 39.23-22.42 26.58-28.86 34.78-75.04 32.64-120.09-.44-9.23-8.03-16.47-17.26-16.91-4.28-.19-8.76-.31-13.4-.31-34.31 0-76.99 6.42-105.77 33.15-10.84 10.88-18.32 24.1-23.46 37.97-3.19-4.56-6.61-9.01-10.68-13.07l-34.45-34.43c-6.24-6.24-16.37-6.25-22.62 0L250.33 57.3c-17.5 17.49-26.49 40.07-27.66 62.97l-6.34-6.33c-6.24-6.24-16.37-6.25-22.62 0L160 147.63c-17.58 17.57-26.59 40.28-27.69 63.3l-6.48-6.48c-6.24-6.24-16.37-6.25-22.62 0L69.5 238.14c-37.51 37.49-37.51 98.3 0 135.8l22.96 22.95-87.76 87.8c-6.25 6.25-6.25 16.38 0 22.62C7.81 510.44 11.91 512 16 512s8.19-1.56 11.31-4.69l87.55-87.59 22.84 22.83c18.74 18.73 43.3 28.1 67.87 28.1s49.12-9.37 67.87-28.1l33.77-33.75c6.25-6.25 6.25-16.38 0-22.63l-6.47-6.47c22.98-1.11 45.66-10.11 63.21-27.66l33.77-33.75c6.25-6.25 6.25-16.38 0-22.63l-6.33-6.32c22.87-1.19 45.42-10.16 62.89-27.62l33.77-33.75c6.25-6.25 6.25-16.38 0-22.63l-33.99-33.97zM397.03 56.59c21.59-20.06 56.82-24.48 82.96-24.59-.21 36.03-8.62 65.65-23.67 82.71-21.99 19.63-56.99 23.78-82.66 23.78h-.38c-.34-25.94 3.95-61.99 23.75-81.9zM272.95 79.94l22.4-22.39 23.14 23.12c24.38 24.37 25.42 64.13.69 89.69-.29.25-.66.34-.93.62l-22.38 22.39-22.92-22.91c-25.01-24.99-25.04-65.49 0-90.52zm-90.33 90.33l22.4-22.39 23.14 23.13c13.62 13.62 33.75 53.21 1.95 88.16l-24.55 24.56-22.94-22.93c-25.02-25-25.04-65.5 0-90.53zM92.11 351.31c-25.02-25-25.04-65.5 0-90.53l22.4-22.39 23.14 23.13c23.78 23.76 25.63 62.42 1.75 88.4l-24.33 24.34-22.96-22.95zm158.7 68.61c-25 24.98-65.46 25.01-90.49 0l-22.66-22.65 22.45-22.43c24.99-24.98 65.46-25.02 90.49 0l22.66 22.65-22.45 22.43zm90.51-90.51c-25 24.98-65.46 25.01-90.49 0l-22.66-22.65 22.45-22.43c24.99-24.98 65.46-25.02 90.49 0l22.66 22.65-22.45 22.43zm90.33-90.33c-25 24.98-65.46 25.01-90.49 0l-22.66-22.65L340.95 194c24.99-24.98 65.46-25.02 90.49 0l22.66 22.65-22.45 22.43z\"]\n};\nvar faWheelchair = {\n prefix: 'fal',\n iconName: 'wheelchair',\n icon: [448, 512, [], \"f193\", \"M443.875 396.323l3.151 7.353c2.611 6.092-.211 13.146-6.303 15.757l-42.421 19.273c-7.658 3.284-17.345.3-21.175-8.797L317.376 288H176a16 16 0 0 1-15.839-13.737C125.779 33.586 128.211 51.165 128 48c0-27.13 22.508-49.003 49.87-47.964 24.878.945 45.15 21.216 46.095 46.094C225.004 73.491 203.131 96 176 96c-3.115 0-6.156-.307-9.105-.874L176.162 160H308c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12H180.734l9.143 64H328a16 16 0 0 1 14.746 9.791l57.752 137.159 27.621-12.929c6.091-2.611 13.146.211 15.756 6.302zm-127.488-28.211C301.755 432.107 244.366 480 176 480c-79.401 0-144-64.599-144-144 0-58.714 35.326-109.325 85.836-131.717l-4.671-32.679C47.059 196.957 0 261.081 0 336c0 97.047 78.953 176 176 176 69.906 0 130.418-40.969 158.801-100.155l-18.414-43.733z\"]\n};\nvar faWhistle = {\n prefix: 'fal',\n iconName: 'whistle',\n icon: [640, 512, [], \"f460\", \"M210 189.4c-35.7 0-64.6 28.9-64.6 64.6 0 35.7 28.9 64.6 64.6 64.6s64.6-28.9 64.6-64.6c0-35.7-28.9-64.6-64.6-64.6zm0 96.9c-17.8 0-32.3-14.5-32.3-32.3 0-17.8 14.5-32.3 32.3-32.3s32.3 14.5 32.3 32.3c0 17.8-14.5 32.3-32.3 32.3zm254.2-83.7L436.5 219c-2.9 1.7-6.5 1.5-9.2-.6L401.9 198c-2.7-2.1-3.7-5.7-2.6-8.9l10.3-29.8c2.2-6.5.1-13.6-5.2-17.9-68-54.4-107.8-97.3-194.5-97.3-33 0-66 7.8-96.1 23.3C101.5 52.8 83.8 44 64.6 44 29 44 0 73 0 108.6c0 19.5 8.7 37.5 23.2 49.6-40.5 79-27.8 178.2 38.3 244.3 41 41 94.7 61.5 148.5 61.5s107.5-20.5 148.5-61.5c10.1-10.1 18.9-20.9 26.5-32.4l151.9 86.8c7.1 4 16 2.2 20.9-4.3l79-105.3c5.2-7 4-16.9-2.8-22.3L482.5 203.8c-5.2-4.2-12.5-4.7-18.3-1.2zm-431.9-94c0-17.8 14.5-32.3 32.3-32.3 8.1 0 15.8 3 21.6 8.3-8.6 6.3-17 13.1-24.7 20.9-7.7 7.7-14.4 16-20.7 24.5-5.2-5.8-8.5-13.2-8.5-21.4zm512.5 307.5c-2.4 3.3-6.9 4.2-10.5 2.2l-159.5-91.2c-13.2 19.9-57 104.2-164.1 104.6-158 .6-238.3-191.4-126.4-303.3 82.3-82.3 183.4-48 220.5-24.5 9.2 6.7 70.5 55.6 70.5 55.6l-12.1 35.2c-2.2 6.5-.1 13.6 5.2 17.9l51.9 41.5c5.2 4.2 12.5 4.7 18.3 1.3l32.5-19.2 124.4 99.5c3.4 2.7 4 7.7 1.4 11.2l-52.1 69.2z\"]\n};\nvar faWifi = {\n prefix: 'fal',\n iconName: 'wifi',\n icon: [640, 512, [], \"f1eb\", \"M320 320c-44.18 0-80 35.82-80 80 0 44.19 35.83 80 80 80 44.19 0 80-35.84 80-80 0-44.18-35.82-80-80-80zm0 128c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48zm316.21-290.05C459.22-9.9 180.95-10.06 3.79 157.95c-4.94 4.69-5.08 12.51-.26 17.32l5.69 5.69c4.61 4.61 12.07 4.74 16.8.25 164.99-156.39 423.64-155.76 587.97 0 4.73 4.48 12.19 4.35 16.8-.25l5.69-5.69c4.81-4.81 4.67-12.63-.27-17.32zM526.02 270.31c-117.34-104.48-294.86-104.34-412.04 0-5.05 4.5-5.32 12.31-.65 17.2l5.53 5.79c4.46 4.67 11.82 4.96 16.66.67 105.17-93.38 264-93.21 368.98 0 4.83 4.29 12.19 4.01 16.66-.67l5.53-5.79c4.65-4.89 4.38-12.7-.67-17.2z\"]\n};\nvar faWifi1 = {\n prefix: 'fal',\n iconName: 'wifi-1',\n icon: [640, 512, [], \"f6aa\", \"M320 320c-44.18 0-80 35.82-80 80 0 44.19 35.83 80 80 80 44.19 0 80-35.84 80-80 0-44.18-35.82-80-80-80zm0 128c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48z\"]\n};\nvar faWifi2 = {\n prefix: 'fal',\n iconName: 'wifi-2',\n icon: [640, 512, [], \"f6ab\", \"M526.02 270.31c-117.34-104.48-294.86-104.34-412.04 0-5.05 4.5-5.32 12.31-.65 17.2l5.53 5.79c4.46 4.67 11.82 4.96 16.66.67 105.17-93.38 264-93.21 368.98 0 4.83 4.29 12.19 4.01 16.66-.67l5.53-5.79c4.65-4.89 4.38-12.7-.67-17.2zM320 320c-44.18 0-80 35.82-80 80 0 44.19 35.83 80 80 80 44.19 0 80-35.84 80-80 0-44.18-35.82-80-80-80zm0 128c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48z\"]\n};\nvar faWifiSlash = {\n prefix: 'fal',\n iconName: 'wifi-slash',\n icon: [640, 512, [], \"f6ac\", \"M324.2 320.4c-1.4-.1-2.8-.4-4.2-.4-44.2 0-80 35.8-80 80s35.8 80 80 80 80-35.8 80-80c0-8-1.5-15.5-3.7-22.8zM320 448c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zM3.8 158c-4.9 4.7-5.1 12.5-.3 17.3l5.7 5.7c4.6 4.6 12.1 4.7 16.8.3 19.1-18.1 39.5-33.9 60.8-47.8l-26.4-20.8C40.8 126.3 21.7 141 3.8 158zM614 181.3c4.7 4.5 12.2 4.4 16.8-.3l5.7-5.7c4.8-4.8 4.7-12.6-.3-17.3C503.6 32.2 314.1.6 152.9 63.3l30.2 23.8C328.9 37.9 495.8 69.2 614 181.3zm-297.5 10.8l44.6 35.2c51.8 7.7 101.8 29.8 143.3 66.7 4.8 4.3 12.2 4 16.6-.7l5.5-5.8c4.7-4.9 4.4-12.7-.7-17.2-59.4-53-134.4-79-209.3-78.2zM637 485.2L23 1.8C19.6-1 14.5-.5 11.8 3l-10 12.5C-1 19-.4 24 3 26.7l614 483.5c3.4 2.8 8.5 2.2 11.2-1.2l10-12.5c2.8-3.5 2.3-8.5-1.2-11.3zM114 270.3c-5 4.5-5.3 12.3-.6 17.2l5.5 5.8c4.5 4.7 11.8 5 16.7.7 25.8-23 55.7-40.9 88.1-52.8L195 218.6c-29 12.7-56.4 29.8-81 51.7z\"]\n};\nvar faWind = {\n prefix: 'fal',\n iconName: 'wind',\n icon: [512, 512, [], \"f72e\", \"M8 224h344c59.8 0 106.8-54.6 93.8-116.7-7.6-36.3-36.9-65.6-73.2-73.2-59.1-12.3-111.5 29.8-116.3 85.4-.4 4.6 3.5 8.4 8 8.4h16.2c4.2 0 7.4-3.3 7.9-7.4 4.3-36.6 39.5-63.8 78.7-54.8 23.1 5.3 41.8 24.1 47.2 47.2 9.6 41.8-22.1 79.1-62.3 79.1H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm148 32H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h149.1c33.4 0 63.3 24.4 66.5 57.6 3.7 38.1-26.3 70.4-63.7 70.4-32.8 0-59.9-24.8-63.6-56.5-.5-4.2-3.7-7.4-7.9-7.4h-16c-4.6 0-8.4 3.9-8 8.4 4.3 49.1 45.5 87.6 95.6 87.6 54 0 97.6-44.6 96-98.9-1.6-52.7-47.5-93.2-100-93.2zm239.3 0H243.8c10.5 9.2 19.4 19.9 26.4 32h126.2c41.8 0 79.1 30.4 83.2 72 4.7 47.7-32.9 88-79.6 88-36.5 0-67.3-24.5-76.9-58-1-3.5-4-6-7.7-6h-16.1c-5 0-9 4.6-7.9 9.5C302.9 443 347 480 400 480c63 0 113.9-52 112-115.4-1.9-61.3-55.4-108.6-116.7-108.6z\"]\n};\nvar faWindTurbine = {\n prefix: 'fal',\n iconName: 'wind-turbine',\n icon: [514, 512, [], \"f89b\", \"M323.48 430.84a45.94 45.94 0 0 0 77.94-47l-67.74-155.58a16.75 16.75 0 0 1-.22-12.89L393.92 62.7A45.82 45.82 0 0 0 314.18 19L218 152.06a16.9 16.9 0 0 1-11 6.74L39.45 185.34a45.93 45.93 0 0 0 2.24 91L207 294.27 195 480h-32.3a36.94 36.94 0 0 0-33 20.42 8 8 0 0 0 7.11 11.58h240a8 8 0 0 0 7.15-11.58 36.93 36.93 0 0 0-33-20.42h-32.33l-3.86-59.58 7 8.3zM227 480l9.83-151.64 43.16 51L286.56 480zm17-199.46a48.85 48.85 0 0 0-32.84-18l-166-18a13.83 13.83 0 0 1-12.35-13.44v-.2a13.82 13.82 0 0 1 11.65-14L212 190.41a48.75 48.75 0 0 0 31.91-19.6l96.2-133.09a13.83 13.83 0 0 1 24.06 13.19l-60.46 152.68a48.77 48.77 0 0 0 .64 37.45l67.73 155.52a13.82 13.82 0 0 1-5.49 17.33l-.17.1a13.83 13.83 0 0 1-18-3.17zM256.8 200a24 24 0 1 0 24 24 24 24 0 0 0-24-24z\"]\n};\nvar faWindWarning = {\n prefix: 'fal',\n iconName: 'wind-warning',\n icon: [640, 512, [], \"f776\", \"M192 0C86 0 0 86 0 192s86 192 192 192 192-86 192-192S298 0 192 0zm0 352c-88.2 0-160-71.8-160-160S103.8 32 192 32s160 71.8 160 160-71.8 160-160 160zm-8.5-144h17c4.2 0 7.7-3.3 8-7.5l7-112c.3-4.6-3.4-8.5-8-8.5h-31c-4.6 0-8.3 3.9-8 8.5l7 112c.3 4.2 3.8 7.5 8 7.5zm8.5 24c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm347.7 88H375.6c-8 11.5-17.1 22.2-27.1 32h192.4c33.4 0 63.3 24.4 66.5 57.6 3.7 38.1-26.3 70.4-63.7 70.4-32.8 0-59.9-24.8-63.6-56.5-.5-4.2-3.7-7.4-7.9-7.4h-16.1c-4.6 0-8.4 3.9-8 8.4 4.3 49.1 45.5 87.6 95.6 87.6 54 0 97.6-44.6 96-98.9-1.6-52.7-47.5-93.2-100-93.2zm98.1-148.7c-7.6-36.3-36.9-65.6-73.2-73.2-59.1-12.3-111.5 29.8-116.3 85.4-.4 4.6 3.5 8.4 8 8.4h16.2c4.2 0 7.4-3.3 7.9-7.4 4.2-36.6 39.5-63.8 78.7-54.8 23.1 5.3 41.8 24.1 47.2 47.2 9.6 41.8-22.1 79.1-62.3 79.1H406.6c-3.3 11.1-7.6 21.7-12.5 32H544c59.8 0 106.8-54.6 93.8-116.7z\"]\n};\nvar faWindow = {\n prefix: 'fal',\n iconName: 'window',\n icon: [512, 512, [], \"f40e\", \"M96 160c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128-32c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.3 32-32zm96 0c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.3 32-32zm192-48v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h416c26.5 0 48 21.5 48 48zm-32 144H32v208c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16V224zm0-32V80c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v112h448z\"]\n};\nvar faWindowAlt = {\n prefix: 'fal',\n iconName: 'window-alt',\n icon: [512, 512, [], \"f40f\", \"M224 160c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128-32c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.3 32-32zm96 0c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.3 32-32zm64-48v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h416c26.5 0 48 21.5 48 48zm-32 144H32v208c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16V224zm0-32V80c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v112h448z\"]\n};\nvar faWindowClose = {\n prefix: 'fal',\n iconName: 'window-close',\n icon: [512, 512, [], \"f410\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h416c8.8 0 16 7.2 16 16v352zM348.6 188.3L280.9 256l67.7 67.7c4.6 4.6 4.6 12 0 16.6l-8.3 8.3c-4.6 4.6-12 4.6-16.6 0L256 280.9l-67.7 67.7c-4.6 4.6-12 4.6-16.6 0l-8.3-8.3c-4.6-4.6-4.6-12 0-16.6l67.7-67.7-67.7-67.7c-4.6-4.6-4.6-12 0-16.6l8.3-8.3c4.6-4.6 12-4.6 16.6 0l67.7 67.7 67.7-67.7c4.6-4.6 12-4.6 16.6 0l8.3 8.3c4.5 4.6 4.5 12 0 16.6z\"]\n};\nvar faWindowFrame = {\n prefix: 'fal',\n iconName: 'window-frame',\n icon: [512, 512, [], \"e04f\", \"M496,416H480V32A32,32,0,0,0,448,0H64A32,32,0,0,0,32,32V416H16A16,16,0,0,0,0,432v64a16,16,0,0,0,16,16H496a16,16,0,0,0,16-16V432A16,16,0,0,0,496,416ZM272,32H448V208H272Zm0,208H448V416H272ZM64,32H240V208H64Zm0,208H240V416H64ZM480,480H32V448H480Z\"]\n};\nvar faWindowFrameOpen = {\n prefix: 'fal',\n iconName: 'window-frame-open',\n icon: [512, 512, [], \"e050\", \"M480,32A32,32,0,0,0,448,0H64A32,32,0,0,0,32,32V256H480ZM240,224H64V32H240Zm208,0H272V32H448Zm48,192H480V288H448V416H64V288H32V416H16A16,16,0,0,0,0,432v64a16,16,0,0,0,16,16H496a16,16,0,0,0,16-16V432A16,16,0,0,0,496,416Zm-16,64H32V448H480Z\"]\n};\nvar faWindowMaximize = {\n prefix: 'fal',\n iconName: 'window-maximize',\n icon: [512, 512, [], \"f2d0\", \"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-48zm16 400c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V192h448v240zM32 160V80c0-8.8 7.2-16 16-16h416c8.8 0 16 7.2 16 16v80H32z\"]\n};\nvar faWindowMinimize = {\n prefix: 'fal',\n iconName: 'window-minimize',\n icon: [512, 512, [], \"f2d1\", \"M496 480H16c-8.8 0-16-7.2-16-16s7.2-16 16-16h480c8.8 0 16 7.2 16 16s-7.2 16-16 16z\"]\n};\nvar faWindowRestore = {\n prefix: 'fal',\n iconName: 'window-restore',\n icon: [512, 512, [], \"f2d2\", \"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-48zM32 144c0-8.8 7.2-16 16-16h320c8.8 0 16 7.2 16 16v80H32v-80zm352 320c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V256h352v208zm96-96c0 8.8-7.2 16-16 16h-48V144c0-26.5-21.5-48-48-48H128V48c0-8.8 7.2-16 16-16h320c8.8 0 16 7.2 16 16v320z\"]\n};\nvar faWindsock = {\n prefix: 'fal',\n iconName: 'windsock',\n icon: [512, 512, [], \"f777\", \"M497.3 158L64 100.3v-7.2C82.6 86.5 96 68.9 96 48 96 21.5 74.5 0 48 0S0 21.5 0 48c0 20.9 13.4 38.5 32 45.1v410.3c0 4.8 3.6 8.6 8 8.6h16c4.4 0 8-3.9 8-8.6v-99.7L497.3 346c8.4-1.1 14.7-7.9 14.7-15.8V173.9c0-8-6.3-14.7-14.7-15.9zM48 32c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16zm256 132.5l80 10.7v153.6l-80 10.7v-175zm-32 179.2l-96 12.8v-209l96 12.8v183.4zM64 132.5l80 10.7v217.6l-80 10.7v-239zM480 316l-64 8.5v-145l64 8.5v128z\"]\n};\nvar faWineBottle = {\n prefix: 'fal',\n iconName: 'wine-bottle',\n icon: [512, 512, [], \"f72f\", \"M502.91 72.46L439.3 8.81c-11.75-11.75-32.12-11.74-43.87-.01l-21.25 21.25c-7.91 7.94-10.63 19.17-8.13 29.36l-56.44 56.47c-48.66-16.23-102.17-3.88-138.89 32.85L22.2 297.29c-29.6 29.66-29.6 77.89 0 107.54l84.88 84.89C121.43 504.09 140.49 512 160.8 512s39.41-7.91 53.76-22.28l148.52-148.57c36.69-36.71 49.04-90.22 32.82-138.97l56.41-56.44c10.28 2.5 21.75-.55 29.41-8.19l21.19-21.2c5.84-5.86 9.09-13.65 9.09-21.95s-3.25-16.08-9.09-21.94zm-184.7 268.3l-89.39 89.42-147.1-147.16 89.4-89.43 147.09 147.17zm-188.5 126.32l-84.88-84.89c-17.13-17.17-17.13-45.1 0-62.27l14.27-14.27 147.1 147.17-14.26 14.27c-16.63 16.63-45.6 16.63-62.23-.01zm330.82-352.14l-11.34-11.35-90.82 90.89 4.19 9.93c16.55 39.1 7.98 83.65-21.73 113.69L193.79 170.99c50.83-50.29 111.75-22.55 113.63-21.76l9.91 4.21 90.79-89.46-11.28-11.32 19.81-21.23 62.94 63-19.06 20.51z\"]\n};\nvar faWineGlass = {\n prefix: 'fal',\n iconName: 'wine-glass',\n icon: [288, 512, [], \"f4e3\", \"M287.4 192.66L271.44 14.55C270.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.57 272.67 51.27 341.55 128 350.27V480H74.67C59.94 480 48 491.94 48 506.67c0 2.95 2.39 5.33 5.33 5.33h181.34c2.95 0 5.33-2.39 5.33-5.33 0-14.73-11.94-26.67-26.67-26.67H160V350.27c76.73-8.72 134.57-77.6 127.4-157.61zM144 318.27c-44.18 0-84.74-25.67-102.45-66.15-7.49-17.13-10.88-36.44-9.07-56.6L47.12 32h193.76l14.65 163.51c1.81 20.16-1.58 39.47-9.07 56.6-17.72 40.48-58.28 66.16-102.46 66.16z\"]\n};\nvar faWineGlassAlt = {\n prefix: 'fal',\n iconName: 'wine-glass-alt',\n icon: [288, 512, [], \"f5ce\", \"M213.34 480H160V350.27c76.73-8.72 134.57-77.6 127.4-157.61L271.44 14.55C270.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.57 272.67 51.27 341.55 128 350.27V480H74.67C59.94 480 48 491.94 48 506.67c0 2.95 2.39 5.33 5.33 5.33h181.34c2.95 0 5.33-2.39 5.33-5.33 0-14.73-11.94-26.67-26.66-26.67zm27.54-448l8.6 96H38.52l8.6-96h193.76zM32.47 195.51L35.66 160h216.69l3.18 35.51c1.81 20.16-1.58 39.48-9.07 56.6-17.71 40.48-58.27 66.15-102.45 66.15s-84.74-25.67-102.45-66.15c-7.51-17.12-10.89-36.44-9.09-56.6z\"]\n};\nvar faWonSign = {\n prefix: 'fal',\n iconName: 'won-sign',\n icon: [576, 512, [], \"f159\", \"M564 160c6.627 0 12-5.373 12-12v-16c0-6.627-5.373-12-12-12h-53.813l17.23-72.328c1.797-7.541-3.921-14.781-11.673-14.781h-16.275a11.999 11.999 0 0 0-11.691 9.296L469.781 120H327.096l-18.92-77.94a12 12 0 0 0-11.662-9.169h-18.723a12.001 12.001 0 0 0-11.662 9.169L247.209 120H106.656L89.318 42.278a12 12 0 0 0-11.712-9.387H61.313c-7.722 0-13.434 7.188-11.69 14.71L66.41 120H12c-6.627 0-12 5.373-12 12v16c0 6.627 5.373 12 12 12h63.685l12.984 56H12c-6.627 0-12 5.373-12 12v16c0 6.627 5.373 12 12 12h85.943l49.783 214.71a12 12 0 0 0 11.69 9.29h28.302c5.539 0 10.357-3.79 11.662-9.173L251.463 256h71.378l52.084 214.827A12 12 0 0 0 386.587 480h28.361a12 12 0 0 0 11.673-9.219L477.788 256H564c6.627 0 12-5.373 12-12v-16c0-6.627-5.373-12-12-12h-76.683l13.341-56H564zM286.582 98.399h1.14s1.484 9.036 3.793 21.601h-8.726a1280.842 1280.842 0 0 0 3.793-21.601zM115.579 160h121.919l-13.595 56H128.07l-12.491-56zm68.477 220.147c-5.696 22.896-8.544 47.7-9.114 47.7h-1.139s-3.987-24.804-9.113-47.7L136.995 256h77.199l-30.138 124.147zM261.161 216l12.321-50.82c.405-1.696.808-3.427 1.208-5.18h24.926c.4 1.753.803 3.484 1.208 5.18l12.32 50.82h-51.983zm148.454 164.147c-5.127 22.896-9.113 47.7-9.113 47.7h-1.14c-.569 0-3.418-24.804-9.113-47.7L360.111 256h78.216l-28.712 124.147zM447.579 216h-97.178l-13.595-56H460.53l-12.951 56z\"]\n};\nvar faWreath = {\n prefix: 'fal',\n iconName: 'wreath',\n icon: [448, 512, [], \"f7e2\", \"M310.8 193.4c-2.3-22.1-10.3-34.6-31.4-44.5-1.4-.7-.9-.3-1.9-1.5-15.8-18.2-30.5-22.3-52.1-17.6-1.7.4-.9.3-2.6 0-21.6-4.7-36.3-.6-52.1 17.6-1 1.2-.5.8-1.9 1.5-21.1 9.9-29.1 22.4-31.5 44.5-.2 2.3 0 1.5-.9 3.2-11 19.8-11.2 34.7 0 54.9 1 1.7.7.9.9 3.2 2.4 22.8 10.9 34.8 31.4 44.5 1.4.7.9.3 1.9 1.5 15.8 18.2 30.5 22.3 52.1 17.6 1.6-.3.9-.4 2.6 0 21.6 4.7 36.3.6 52.1-17.6 1-1.2.6-.8 1.9-1.5 21.1-9.9 29.1-22.4 31.5-44.5.2-2.3 0-1.5.9-3.2 10.9-19.7 11.2-34.6 0-54.9-.9-1.7-.6-.9-.9-3.2zm-30.4 49.7c-2 6.5-.8 14.7-4.6 20.1-3.8 5.4-11.7 6.8-16.9 10.8-5.2 3.9-8.8 11.4-15 13.5-6 2-13.2-1.7-19.8-1.7-6.6 0-13.8 3.7-19.8 1.7-6.2-2.1-9.9-9.5-15-13.5-5.2-4-13.1-5.3-16.9-10.8-3.8-5.4-2.6-13.6-4.6-20.1-1.9-6.2-7.6-12.2-7.6-19.1 0-6.9 5.7-12.8 7.6-19.1 2-6.5.8-14.7 4.6-20.1 3.8-5.4 11.7-6.8 16.9-10.8 5.2-3.9 8.8-11.4 15-13.5 6-2 13.2 1.7 19.8 1.7 6.6 0 13.8-3.7 19.8-1.7 6.2 2.1 9.9 9.5 15 13.5 5.2 4 13.1 5.3 16.9 10.8 3.8 5.4 2.6 13.6 4.6 20.1 1.9 6.2 7.6 12.2 7.6 19.1s-5.7 12.8-7.6 19.1zM448 224c0-15.3-4.7-29.8-13.2-41.9 3.2-14.4 2-29.7-3.8-43.8-5.9-14.4-16.1-26.1-28.8-34-2.4-14.6-9.2-28.1-19.8-38.7-10.5-10.5-24-17.4-38.7-19.8-7.9-12.7-19.6-22.8-34-28.8-18.6-7.7-35.1-5.8-43.8-3.8C253.8 4.7 239.3 0 224 0s-29.8 4.7-41.9 13.2c-8.7-1.9-25.2-3.9-43.8 3.8-14.3 5.9-26 16-33.9 28.8-14.7 2.4-28.1 9.2-38.7 19.8C55 76.2 48.3 89.7 45.8 104.3c-12.7 7.9-22.8 19.6-28.8 34-5.8 14.1-7.1 29.4-3.8 43.8C4.7 194.2 0 208.7 0 224c0 15.3 4.7 29.8 13.2 41.9-3.2 14.4-2 29.7 3.8 43.8 5.9 14.2 16 25.9 28.7 33.7 2.4 14.7 9.2 28.3 19.8 39C78.1 394.9 94.1 400 112 400v78.6c0 9.5 3.6 19 10.7 25.3 8.6 7.6 20.5 10.1 32.5 6l68.8-28.6 69.9 29c3.3 1.1 6.7 1.6 10.1 1.6 6.7 0 13.2-2.1 18.8-6 8.3-6 13.3-15.7 13.3-26v-80c17.8 0 33.8-5 46.4-17.6 10.7-10.7 17.4-24.3 19.8-39 12.8-7.9 22.8-19.5 28.7-33.7 5.8-14.1 7-29.4 3.8-43.8 8.5-12 13.2-26.5 13.2-41.8zM224 446.7L144 480l-1.1-96.4 81.1 33.7 80-33.3 1.1 96.4-81.1-33.7zm173.2-188.2c7.6 11.1 9.7 25.7 4.2 39-5.6 13.6-17.8 22.1-31.3 24.4 2.9 13.3 0 27.6-10.3 37.9-7.4 7.4-16.9 11-26.6 11.6-2.3-5.2-5.7-9.9-10.5-13.3-8.3-6-19-7.7-28.8-4.4l-69.9 29-69.9-29c-9.9-3.3-20.6-1.6-28.8 4.4-4.7 3.4-8.2 8.1-10.5 13.3-9.7-.6-19.2-4.2-26.6-11.6-10.3-10.3-13.3-24.6-10.3-37.9-13.5-2.3-25.7-10.8-31.3-24.4-5.5-13.4-3.5-27.9 4.2-39-11.3-7.4-18.8-20-18.8-34.5s7.5-27.1 18.8-34.5c-7.6-11.1-9.7-25.7-4.2-39 5.6-13.6 17.7-22.5 31.2-24.7-2.8-13.2.2-27.3 10.4-37.6C103 73.4 121.8 77 125.8 77.8c2.3-13.5 11.1-25.6 24.7-31.2 14.1-5.8 28.6-3 39 4.2 7.3-11.3 20-18.8 34.5-18.8s27.1 7.5 34.5 18.8c10.5-7.2 25-9.9 39-4.1 13.6 5.6 22.4 17.7 24.7 31.2 4-.9 22.8-4.4 37.6 10.4 10.2 10.2 13.2 24.4 10.4 37.5 13.5 2.3 25.6 11.1 31.2 24.7 5.5 13.4 3.5 27.9-4.2 39 11.3 7.3 18.8 20 18.8 34.5s-7.5 27.1-18.8 34.5z\"]\n};\nvar faWrench = {\n prefix: 'fal',\n iconName: 'wrench',\n icon: [512, 512, [], \"f0ad\", \"M507.42 114.49c-2.34-9.47-9.66-16.98-19.06-19.61-9.47-2.61-19.65 0-26.65 6.98l-63.87 63.87-44.25-7.36-7.38-44.24 63.87-63.87c6.94-6.92 9.62-17.09 7-26.54-2.62-9.47-10.19-16.83-19.75-19.2C345.6-8.31 291.95 6.54 254.14 44.3c-37.84 37.87-52.21 92.52-38.62 144.7L22.19 382.29c-29.59 29.63-29.59 77.83 0 107.45C36.54 504.09 55.63 512 75.94 512s39.37-7.91 53.71-22.26l193.14-193.11c52.03 13.73 106.8-.72 144.89-38.82 37.81-37.81 52.68-91.39 39.74-143.32zm-62.36 120.7c-31.87 31.81-78.43 42.63-121.77 28.23l-9.38-3.14-206.88 206.84c-16.62 16.62-45.59 16.62-62.21 0-17.12-17.14-17.12-45.06 0-62.21l207.01-206.98-3.09-9.34c-14.31-43.45-3.56-90.06 28.03-121.67C299.48 44.2 329.44 32 360.56 32c6.87 0 13.81.59 20.72 1.81l-69.31 69.35 13.81 83.02L408.84 200l69.3-69.35c6.72 38.25-5.34 76.79-33.08 104.54zM80 416c-8.84 0-16 7.16-16 16s7.16 16 16 16 16-7.16 16-16-7.16-16-16-16z\"]\n};\nvar faXRay = {\n prefix: 'fal',\n iconName: 'x-ray',\n icon: [640, 512, [], \"f497\", \"M168 224h136v32H200c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h104v32h-64c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48v-16h64v16c0 26.5 21.5 48 48 48s48-21.5 48-48-21.5-48-48-48h-64v-32h104c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H336v-32h136c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H336v-32h104c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H336v-24c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v24H200c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h104v32H168c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm72 160c-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-16zM632 32c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8H8C3.6 0 0 3.6 0 8v16c0 4.4 3.6 8 8 8h56v448H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h624c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8h-56V32h56zm-88 448H96V32h448v448z\"]\n};\nvar faYenSign = {\n prefix: 'fal',\n iconName: 'yen-sign',\n icon: [320, 512, [], \"f157\", \"M307.982 32h-22.525a12 12 0 0 0-10.398 6.01l-87.337 153.306c-13.382 25.492-27.402 56.718-27.402 56.718h-1.274s-14.02-31.226-27.403-56.718L45.038 38.042A12 12 0 0 0 34.621 32H12.018c-9.237 0-15.01 9.998-10.394 17.998L100.974 224H44c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h75.442l18.573 32.182V320H44c-6.627 0-12 5.373-12 12v8c0 6.627 5.373 12 12 12h94.014v116c0 6.627 5.373 12 12 12h20.608c6.627 0 12-5.373 12-12V352H276c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12h-93.377v-31.818l17.7-32.182H276c6.627 0 12-5.373 12-12v-8c0-6.627-5.373-12-12-12h-58.062L318.35 50.042c4.662-8-1.109-18.042-10.368-18.042z\"]\n};\nvar faYinYang = {\n prefix: 'fal',\n iconName: 'yin-yang',\n icon: [496, 512, [], \"f6ad\", \"M232 192c26.47 0 48-21.53 48-48s-21.53-48-48-48-48 21.53-48 48 21.53 48 48 48zm0-64c8.81 0 16 7.17 16 16s-7.19 16-16 16-16-7.17-16-16 7.19-16 16-16zm32 192c-26.47 0-48 21.53-48 48s21.53 48 48 48 48-21.53 48-48-21.53-48-48-48zm0 64c-8.81 0-16-7.17-16-16s7.19-16 16-16 16 7.17 16 16-7.19 16-16 16zM248 8C111.03 8 0 119.03 0 256s111.03 248 248 248c136.75 0 248-111.25 248-248S384.75 8 248 8zM32 256c0-119.1 96.9-216 216-216 55.12 0 100 44.86 100 100s-44.88 100-100 100c-72.78 0-132 59.22-132 132 0 24.96 7.37 48.08 19.46 68.01C73.53 401.99 32 333.84 32 256zm216 216c-55.12 0-100-44.86-100-100s44.88-100 100-100c72.78 0 132-59.22 132-132 0-24.83-6.88-48.08-18.84-67.94C422.81 110.14 464 178.34 464 256c0 119.11-96.91 216-216 216z\"]\n};\nvar _iconsCache = {\n faAbacus: faAbacus,\n faAcorn: faAcorn,\n faAd: faAd,\n faAddressBook: faAddressBook,\n faAddressCard: faAddressCard,\n faAdjust: faAdjust,\n faAirConditioner: faAirConditioner,\n faAirFreshener: faAirFreshener,\n faAlarmClock: faAlarmClock,\n faAlarmExclamation: faAlarmExclamation,\n faAlarmPlus: faAlarmPlus,\n faAlarmSnooze: faAlarmSnooze,\n faAlbum: faAlbum,\n faAlbumCollection: faAlbumCollection,\n faAlicorn: faAlicorn,\n faAlien: faAlien,\n faAlienMonster: faAlienMonster,\n faAlignCenter: faAlignCenter,\n faAlignJustify: faAlignJustify,\n faAlignLeft: faAlignLeft,\n faAlignRight: faAlignRight,\n faAlignSlash: faAlignSlash,\n faAllergies: faAllergies,\n faAmbulance: faAmbulance,\n faAmericanSignLanguageInterpreting: faAmericanSignLanguageInterpreting,\n faAmpGuitar: faAmpGuitar,\n faAnalytics: faAnalytics,\n faAnchor: faAnchor,\n faAngel: faAngel,\n faAngleDoubleDown: faAngleDoubleDown,\n faAngleDoubleLeft: faAngleDoubleLeft,\n faAngleDoubleRight: faAngleDoubleRight,\n faAngleDoubleUp: faAngleDoubleUp,\n faAngleDown: faAngleDown,\n faAngleLeft: faAngleLeft,\n faAngleRight: faAngleRight,\n faAngleUp: faAngleUp,\n faAngry: faAngry,\n faAnkh: faAnkh,\n faAppleAlt: faAppleAlt,\n faAppleCrate: faAppleCrate,\n faArchive: faArchive,\n faArchway: faArchway,\n faArrowAltCircleDown: faArrowAltCircleDown,\n faArrowAltCircleLeft: faArrowAltCircleLeft,\n faArrowAltCircleRight: faArrowAltCircleRight,\n faArrowAltCircleUp: faArrowAltCircleUp,\n faArrowAltDown: faArrowAltDown,\n faArrowAltFromBottom: faArrowAltFromBottom,\n faArrowAltFromLeft: faArrowAltFromLeft,\n faArrowAltFromRight: faArrowAltFromRight,\n faArrowAltFromTop: faArrowAltFromTop,\n faArrowAltLeft: faArrowAltLeft,\n faArrowAltRight: faArrowAltRight,\n faArrowAltSquareDown: faArrowAltSquareDown,\n faArrowAltSquareLeft: faArrowAltSquareLeft,\n faArrowAltSquareRight: faArrowAltSquareRight,\n faArrowAltSquareUp: faArrowAltSquareUp,\n faArrowAltToBottom: faArrowAltToBottom,\n faArrowAltToLeft: faArrowAltToLeft,\n faArrowAltToRight: faArrowAltToRight,\n faArrowAltToTop: faArrowAltToTop,\n faArrowAltUp: faArrowAltUp,\n faArrowCircleDown: faArrowCircleDown,\n faArrowCircleLeft: faArrowCircleLeft,\n faArrowCircleRight: faArrowCircleRight,\n faArrowCircleUp: faArrowCircleUp,\n faArrowDown: faArrowDown,\n faArrowFromBottom: faArrowFromBottom,\n faArrowFromLeft: faArrowFromLeft,\n faArrowFromRight: faArrowFromRight,\n faArrowFromTop: faArrowFromTop,\n faArrowLeft: faArrowLeft,\n faArrowRight: faArrowRight,\n faArrowSquareDown: faArrowSquareDown,\n faArrowSquareLeft: faArrowSquareLeft,\n faArrowSquareRight: faArrowSquareRight,\n faArrowSquareUp: faArrowSquareUp,\n faArrowToBottom: faArrowToBottom,\n faArrowToLeft: faArrowToLeft,\n faArrowToRight: faArrowToRight,\n faArrowToTop: faArrowToTop,\n faArrowUp: faArrowUp,\n faArrows: faArrows,\n faArrowsAlt: faArrowsAlt,\n faArrowsAltH: faArrowsAltH,\n faArrowsAltV: faArrowsAltV,\n faArrowsH: faArrowsH,\n faArrowsV: faArrowsV,\n faAssistiveListeningSystems: faAssistiveListeningSystems,\n faAsterisk: faAsterisk,\n faAt: faAt,\n faAtlas: faAtlas,\n faAtom: faAtom,\n faAtomAlt: faAtomAlt,\n faAudioDescription: faAudioDescription,\n faAward: faAward,\n faAxe: faAxe,\n faAxeBattle: faAxeBattle,\n faBaby: faBaby,\n faBabyCarriage: faBabyCarriage,\n faBackpack: faBackpack,\n faBackspace: faBackspace,\n faBackward: faBackward,\n faBacon: faBacon,\n faBacteria: faBacteria,\n faBacterium: faBacterium,\n faBadge: faBadge,\n faBadgeCheck: faBadgeCheck,\n faBadgeDollar: faBadgeDollar,\n faBadgePercent: faBadgePercent,\n faBadgeSheriff: faBadgeSheriff,\n faBadgerHoney: faBadgerHoney,\n faBagsShopping: faBagsShopping,\n faBahai: faBahai,\n faBalanceScale: faBalanceScale,\n faBalanceScaleLeft: faBalanceScaleLeft,\n faBalanceScaleRight: faBalanceScaleRight,\n faBallPile: faBallPile,\n faBallot: faBallot,\n faBallotCheck: faBallotCheck,\n faBan: faBan,\n faBandAid: faBandAid,\n faBanjo: faBanjo,\n faBarcode: faBarcode,\n faBarcodeAlt: faBarcodeAlt,\n faBarcodeRead: faBarcodeRead,\n faBarcodeScan: faBarcodeScan,\n faBars: faBars,\n faBaseball: faBaseball,\n faBaseballBall: faBaseballBall,\n faBasketballBall: faBasketballBall,\n faBasketballHoop: faBasketballHoop,\n faBat: faBat,\n faBath: faBath,\n faBatteryBolt: faBatteryBolt,\n faBatteryEmpty: faBatteryEmpty,\n faBatteryFull: faBatteryFull,\n faBatteryHalf: faBatteryHalf,\n faBatteryQuarter: faBatteryQuarter,\n faBatterySlash: faBatterySlash,\n faBatteryThreeQuarters: faBatteryThreeQuarters,\n faBed: faBed,\n faBedAlt: faBedAlt,\n faBedBunk: faBedBunk,\n faBedEmpty: faBedEmpty,\n faBeer: faBeer,\n faBell: faBell,\n faBellExclamation: faBellExclamation,\n faBellOn: faBellOn,\n faBellPlus: faBellPlus,\n faBellSchool: faBellSchool,\n faBellSchoolSlash: faBellSchoolSlash,\n faBellSlash: faBellSlash,\n faBells: faBells,\n faBetamax: faBetamax,\n faBezierCurve: faBezierCurve,\n faBible: faBible,\n faBicycle: faBicycle,\n faBiking: faBiking,\n faBikingMountain: faBikingMountain,\n faBinoculars: faBinoculars,\n faBiohazard: faBiohazard,\n faBirthdayCake: faBirthdayCake,\n faBlanket: faBlanket,\n faBlender: faBlender,\n faBlenderPhone: faBlenderPhone,\n faBlind: faBlind,\n faBlinds: faBlinds,\n faBlindsOpen: faBlindsOpen,\n faBlindsRaised: faBlindsRaised,\n faBlog: faBlog,\n faBold: faBold,\n faBolt: faBolt,\n faBomb: faBomb,\n faBone: faBone,\n faBoneBreak: faBoneBreak,\n faBong: faBong,\n faBook: faBook,\n faBookAlt: faBookAlt,\n faBookDead: faBookDead,\n faBookHeart: faBookHeart,\n faBookMedical: faBookMedical,\n faBookOpen: faBookOpen,\n faBookReader: faBookReader,\n faBookSpells: faBookSpells,\n faBookUser: faBookUser,\n faBookmark: faBookmark,\n faBooks: faBooks,\n faBooksMedical: faBooksMedical,\n faBoombox: faBoombox,\n faBoot: faBoot,\n faBoothCurtain: faBoothCurtain,\n faBorderAll: faBorderAll,\n faBorderBottom: faBorderBottom,\n faBorderCenterH: faBorderCenterH,\n faBorderCenterV: faBorderCenterV,\n faBorderInner: faBorderInner,\n faBorderLeft: faBorderLeft,\n faBorderNone: faBorderNone,\n faBorderOuter: faBorderOuter,\n faBorderRight: faBorderRight,\n faBorderStyle: faBorderStyle,\n faBorderStyleAlt: faBorderStyleAlt,\n faBorderTop: faBorderTop,\n faBowArrow: faBowArrow,\n faBowlingBall: faBowlingBall,\n faBowlingPins: faBowlingPins,\n faBox: faBox,\n faBoxAlt: faBoxAlt,\n faBoxBallot: faBoxBallot,\n faBoxCheck: faBoxCheck,\n faBoxFragile: faBoxFragile,\n faBoxFull: faBoxFull,\n faBoxHeart: faBoxHeart,\n faBoxOpen: faBoxOpen,\n faBoxTissue: faBoxTissue,\n faBoxUp: faBoxUp,\n faBoxUsd: faBoxUsd,\n faBoxes: faBoxes,\n faBoxesAlt: faBoxesAlt,\n faBoxingGlove: faBoxingGlove,\n faBrackets: faBrackets,\n faBracketsCurly: faBracketsCurly,\n faBraille: faBraille,\n faBrain: faBrain,\n faBreadLoaf: faBreadLoaf,\n faBreadSlice: faBreadSlice,\n faBriefcase: faBriefcase,\n faBriefcaseMedical: faBriefcaseMedical,\n faBringForward: faBringForward,\n faBringFront: faBringFront,\n faBroadcastTower: faBroadcastTower,\n faBroom: faBroom,\n faBrowser: faBrowser,\n faBrush: faBrush,\n faBug: faBug,\n faBuilding: faBuilding,\n faBullhorn: faBullhorn,\n faBullseye: faBullseye,\n faBullseyeArrow: faBullseyeArrow,\n faBullseyePointer: faBullseyePointer,\n faBurgerSoda: faBurgerSoda,\n faBurn: faBurn,\n faBurrito: faBurrito,\n faBus: faBus,\n faBusAlt: faBusAlt,\n faBusSchool: faBusSchool,\n faBusinessTime: faBusinessTime,\n faCabinetFiling: faCabinetFiling,\n faCactus: faCactus,\n faCalculator: faCalculator,\n faCalculatorAlt: faCalculatorAlt,\n faCalendar: faCalendar,\n faCalendarAlt: faCalendarAlt,\n faCalendarCheck: faCalendarCheck,\n faCalendarDay: faCalendarDay,\n faCalendarEdit: faCalendarEdit,\n faCalendarExclamation: faCalendarExclamation,\n faCalendarMinus: faCalendarMinus,\n faCalendarPlus: faCalendarPlus,\n faCalendarStar: faCalendarStar,\n faCalendarTimes: faCalendarTimes,\n faCalendarWeek: faCalendarWeek,\n faCamcorder: faCamcorder,\n faCamera: faCamera,\n faCameraAlt: faCameraAlt,\n faCameraHome: faCameraHome,\n faCameraMovie: faCameraMovie,\n faCameraPolaroid: faCameraPolaroid,\n faCameraRetro: faCameraRetro,\n faCampfire: faCampfire,\n faCampground: faCampground,\n faCandleHolder: faCandleHolder,\n faCandyCane: faCandyCane,\n faCandyCorn: faCandyCorn,\n faCannabis: faCannabis,\n faCapsules: faCapsules,\n faCar: faCar,\n faCarAlt: faCarAlt,\n faCarBattery: faCarBattery,\n faCarBuilding: faCarBuilding,\n faCarBump: faCarBump,\n faCarBus: faCarBus,\n faCarCrash: faCarCrash,\n faCarGarage: faCarGarage,\n faCarMechanic: faCarMechanic,\n faCarSide: faCarSide,\n faCarTilt: faCarTilt,\n faCarWash: faCarWash,\n faCaravan: faCaravan,\n faCaravanAlt: faCaravanAlt,\n faCaretCircleDown: faCaretCircleDown,\n faCaretCircleLeft: faCaretCircleLeft,\n faCaretCircleRight: faCaretCircleRight,\n faCaretCircleUp: faCaretCircleUp,\n faCaretDown: faCaretDown,\n faCaretLeft: faCaretLeft,\n faCaretRight: faCaretRight,\n faCaretSquareDown: faCaretSquareDown,\n faCaretSquareLeft: faCaretSquareLeft,\n faCaretSquareRight: faCaretSquareRight,\n faCaretSquareUp: faCaretSquareUp,\n faCaretUp: faCaretUp,\n faCarrot: faCarrot,\n faCars: faCars,\n faCartArrowDown: faCartArrowDown,\n faCartPlus: faCartPlus,\n faCashRegister: faCashRegister,\n faCassetteTape: faCassetteTape,\n faCat: faCat,\n faCatSpace: faCatSpace,\n faCauldron: faCauldron,\n faCctv: faCctv,\n faCertificate: faCertificate,\n faChair: faChair,\n faChairOffice: faChairOffice,\n faChalkboard: faChalkboard,\n faChalkboardTeacher: faChalkboardTeacher,\n faChargingStation: faChargingStation,\n faChartArea: faChartArea,\n faChartBar: faChartBar,\n faChartLine: faChartLine,\n faChartLineDown: faChartLineDown,\n faChartNetwork: faChartNetwork,\n faChartPie: faChartPie,\n faChartPieAlt: faChartPieAlt,\n faChartScatter: faChartScatter,\n faCheck: faCheck,\n faCheckCircle: faCheckCircle,\n faCheckDouble: faCheckDouble,\n faCheckSquare: faCheckSquare,\n faCheese: faCheese,\n faCheeseSwiss: faCheeseSwiss,\n faCheeseburger: faCheeseburger,\n faChess: faChess,\n faChessBishop: faChessBishop,\n faChessBishopAlt: faChessBishopAlt,\n faChessBoard: faChessBoard,\n faChessClock: faChessClock,\n faChessClockAlt: faChessClockAlt,\n faChessKing: faChessKing,\n faChessKingAlt: faChessKingAlt,\n faChessKnight: faChessKnight,\n faChessKnightAlt: faChessKnightAlt,\n faChessPawn: faChessPawn,\n faChessPawnAlt: faChessPawnAlt,\n faChessQueen: faChessQueen,\n faChessQueenAlt: faChessQueenAlt,\n faChessRook: faChessRook,\n faChessRookAlt: faChessRookAlt,\n faChevronCircleDown: faChevronCircleDown,\n faChevronCircleLeft: faChevronCircleLeft,\n faChevronCircleRight: faChevronCircleRight,\n faChevronCircleUp: faChevronCircleUp,\n faChevronDoubleDown: faChevronDoubleDown,\n faChevronDoubleLeft: faChevronDoubleLeft,\n faChevronDoubleRight: faChevronDoubleRight,\n faChevronDoubleUp: faChevronDoubleUp,\n faChevronDown: faChevronDown,\n faChevronLeft: faChevronLeft,\n faChevronRight: faChevronRight,\n faChevronSquareDown: faChevronSquareDown,\n faChevronSquareLeft: faChevronSquareLeft,\n faChevronSquareRight: faChevronSquareRight,\n faChevronSquareUp: faChevronSquareUp,\n faChevronUp: faChevronUp,\n faChild: faChild,\n faChimney: faChimney,\n faChurch: faChurch,\n faCircle: faCircle,\n faCircleNotch: faCircleNotch,\n faCity: faCity,\n faClarinet: faClarinet,\n faClawMarks: faClawMarks,\n faClinicMedical: faClinicMedical,\n faClipboard: faClipboard,\n faClipboardCheck: faClipboardCheck,\n faClipboardList: faClipboardList,\n faClipboardListCheck: faClipboardListCheck,\n faClipboardPrescription: faClipboardPrescription,\n faClipboardUser: faClipboardUser,\n faClock: faClock,\n faClone: faClone,\n faClosedCaptioning: faClosedCaptioning,\n faCloud: faCloud,\n faCloudDownload: faCloudDownload,\n faCloudDownloadAlt: faCloudDownloadAlt,\n faCloudDrizzle: faCloudDrizzle,\n faCloudHail: faCloudHail,\n faCloudHailMixed: faCloudHailMixed,\n faCloudMeatball: faCloudMeatball,\n faCloudMoon: faCloudMoon,\n faCloudMoonRain: faCloudMoonRain,\n faCloudMusic: faCloudMusic,\n faCloudRain: faCloudRain,\n faCloudRainbow: faCloudRainbow,\n faCloudShowers: faCloudShowers,\n faCloudShowersHeavy: faCloudShowersHeavy,\n faCloudSleet: faCloudSleet,\n faCloudSnow: faCloudSnow,\n faCloudSun: faCloudSun,\n faCloudSunRain: faCloudSunRain,\n faCloudUpload: faCloudUpload,\n faCloudUploadAlt: faCloudUploadAlt,\n faClouds: faClouds,\n faCloudsMoon: faCloudsMoon,\n faCloudsSun: faCloudsSun,\n faClub: faClub,\n faCocktail: faCocktail,\n faCode: faCode,\n faCodeBranch: faCodeBranch,\n faCodeCommit: faCodeCommit,\n faCodeMerge: faCodeMerge,\n faCoffee: faCoffee,\n faCoffeePot: faCoffeePot,\n faCoffeeTogo: faCoffeeTogo,\n faCoffin: faCoffin,\n faCoffinCross: faCoffinCross,\n faCog: faCog,\n faCogs: faCogs,\n faCoin: faCoin,\n faCoins: faCoins,\n faColumns: faColumns,\n faComet: faComet,\n faComment: faComment,\n faCommentAlt: faCommentAlt,\n faCommentAltCheck: faCommentAltCheck,\n faCommentAltDollar: faCommentAltDollar,\n faCommentAltDots: faCommentAltDots,\n faCommentAltEdit: faCommentAltEdit,\n faCommentAltExclamation: faCommentAltExclamation,\n faCommentAltLines: faCommentAltLines,\n faCommentAltMedical: faCommentAltMedical,\n faCommentAltMinus: faCommentAltMinus,\n faCommentAltMusic: faCommentAltMusic,\n faCommentAltPlus: faCommentAltPlus,\n faCommentAltSlash: faCommentAltSlash,\n faCommentAltSmile: faCommentAltSmile,\n faCommentAltTimes: faCommentAltTimes,\n faCommentCheck: faCommentCheck,\n faCommentDollar: faCommentDollar,\n faCommentDots: faCommentDots,\n faCommentEdit: faCommentEdit,\n faCommentExclamation: faCommentExclamation,\n faCommentLines: faCommentLines,\n faCommentMedical: faCommentMedical,\n faCommentMinus: faCommentMinus,\n faCommentMusic: faCommentMusic,\n faCommentPlus: faCommentPlus,\n faCommentSlash: faCommentSlash,\n faCommentSmile: faCommentSmile,\n faCommentTimes: faCommentTimes,\n faComments: faComments,\n faCommentsAlt: faCommentsAlt,\n faCommentsAltDollar: faCommentsAltDollar,\n faCommentsDollar: faCommentsDollar,\n faCompactDisc: faCompactDisc,\n faCompass: faCompass,\n faCompassSlash: faCompassSlash,\n faCompress: faCompress,\n faCompressAlt: faCompressAlt,\n faCompressArrowsAlt: faCompressArrowsAlt,\n faCompressWide: faCompressWide,\n faComputerClassic: faComputerClassic,\n faComputerSpeaker: faComputerSpeaker,\n faConciergeBell: faConciergeBell,\n faConstruction: faConstruction,\n faContainerStorage: faContainerStorage,\n faConveyorBelt: faConveyorBelt,\n faConveyorBeltAlt: faConveyorBeltAlt,\n faCookie: faCookie,\n faCookieBite: faCookieBite,\n faCopy: faCopy,\n faCopyright: faCopyright,\n faCorn: faCorn,\n faCouch: faCouch,\n faCow: faCow,\n faCowbell: faCowbell,\n faCowbellMore: faCowbellMore,\n faCreditCard: faCreditCard,\n faCreditCardBlank: faCreditCardBlank,\n faCreditCardFront: faCreditCardFront,\n faCricket: faCricket,\n faCroissant: faCroissant,\n faCrop: faCrop,\n faCropAlt: faCropAlt,\n faCross: faCross,\n faCrosshairs: faCrosshairs,\n faCrow: faCrow,\n faCrown: faCrown,\n faCrutch: faCrutch,\n faCrutches: faCrutches,\n faCube: faCube,\n faCubes: faCubes,\n faCurling: faCurling,\n faCut: faCut,\n faDagger: faDagger,\n faDatabase: faDatabase,\n faDeaf: faDeaf,\n faDebug: faDebug,\n faDeer: faDeer,\n faDeerRudolph: faDeerRudolph,\n faDemocrat: faDemocrat,\n faDesktop: faDesktop,\n faDesktopAlt: faDesktopAlt,\n faDewpoint: faDewpoint,\n faDharmachakra: faDharmachakra,\n faDiagnoses: faDiagnoses,\n faDiamond: faDiamond,\n faDice: faDice,\n faDiceD10: faDiceD10,\n faDiceD12: faDiceD12,\n faDiceD20: faDiceD20,\n faDiceD4: faDiceD4,\n faDiceD6: faDiceD6,\n faDiceD8: faDiceD8,\n faDiceFive: faDiceFive,\n faDiceFour: faDiceFour,\n faDiceOne: faDiceOne,\n faDiceSix: faDiceSix,\n faDiceThree: faDiceThree,\n faDiceTwo: faDiceTwo,\n faDigging: faDigging,\n faDigitalTachograph: faDigitalTachograph,\n faDiploma: faDiploma,\n faDirections: faDirections,\n faDiscDrive: faDiscDrive,\n faDisease: faDisease,\n faDivide: faDivide,\n faDizzy: faDizzy,\n faDna: faDna,\n faDoNotEnter: faDoNotEnter,\n faDog: faDog,\n faDogLeashed: faDogLeashed,\n faDollarSign: faDollarSign,\n faDolly: faDolly,\n faDollyEmpty: faDollyEmpty,\n faDollyFlatbed: faDollyFlatbed,\n faDollyFlatbedAlt: faDollyFlatbedAlt,\n faDollyFlatbedEmpty: faDollyFlatbedEmpty,\n faDonate: faDonate,\n faDoorClosed: faDoorClosed,\n faDoorOpen: faDoorOpen,\n faDotCircle: faDotCircle,\n faDove: faDove,\n faDownload: faDownload,\n faDraftingCompass: faDraftingCompass,\n faDragon: faDragon,\n faDrawCircle: faDrawCircle,\n faDrawPolygon: faDrawPolygon,\n faDrawSquare: faDrawSquare,\n faDreidel: faDreidel,\n faDrone: faDrone,\n faDroneAlt: faDroneAlt,\n faDrum: faDrum,\n faDrumSteelpan: faDrumSteelpan,\n faDrumstick: faDrumstick,\n faDrumstickBite: faDrumstickBite,\n faDryer: faDryer,\n faDryerAlt: faDryerAlt,\n faDuck: faDuck,\n faDumbbell: faDumbbell,\n faDumpster: faDumpster,\n faDumpsterFire: faDumpsterFire,\n faDungeon: faDungeon,\n faEar: faEar,\n faEarMuffs: faEarMuffs,\n faEclipse: faEclipse,\n faEclipseAlt: faEclipseAlt,\n faEdit: faEdit,\n faEgg: faEgg,\n faEggFried: faEggFried,\n faEject: faEject,\n faElephant: faElephant,\n faEllipsisH: faEllipsisH,\n faEllipsisHAlt: faEllipsisHAlt,\n faEllipsisV: faEllipsisV,\n faEllipsisVAlt: faEllipsisVAlt,\n faEmptySet: faEmptySet,\n faEngineWarning: faEngineWarning,\n faEnvelope: faEnvelope,\n faEnvelopeOpen: faEnvelopeOpen,\n faEnvelopeOpenDollar: faEnvelopeOpenDollar,\n faEnvelopeOpenText: faEnvelopeOpenText,\n faEnvelopeSquare: faEnvelopeSquare,\n faEquals: faEquals,\n faEraser: faEraser,\n faEthernet: faEthernet,\n faEuroSign: faEuroSign,\n faExchange: faExchange,\n faExchangeAlt: faExchangeAlt,\n faExclamation: faExclamation,\n faExclamationCircle: faExclamationCircle,\n faExclamationSquare: faExclamationSquare,\n faExclamationTriangle: faExclamationTriangle,\n faExpand: faExpand,\n faExpandAlt: faExpandAlt,\n faExpandArrows: faExpandArrows,\n faExpandArrowsAlt: faExpandArrowsAlt,\n faExpandWide: faExpandWide,\n faExternalLink: faExternalLink,\n faExternalLinkAlt: faExternalLinkAlt,\n faExternalLinkSquare: faExternalLinkSquare,\n faExternalLinkSquareAlt: faExternalLinkSquareAlt,\n faEye: faEye,\n faEyeDropper: faEyeDropper,\n faEyeEvil: faEyeEvil,\n faEyeSlash: faEyeSlash,\n faFan: faFan,\n faFanTable: faFanTable,\n faFarm: faFarm,\n faFastBackward: faFastBackward,\n faFastForward: faFastForward,\n faFaucet: faFaucet,\n faFaucetDrip: faFaucetDrip,\n faFax: faFax,\n faFeather: faFeather,\n faFeatherAlt: faFeatherAlt,\n faFemale: faFemale,\n faFieldHockey: faFieldHockey,\n faFighterJet: faFighterJet,\n faFile: faFile,\n faFileAlt: faFileAlt,\n faFileArchive: faFileArchive,\n faFileAudio: faFileAudio,\n faFileCertificate: faFileCertificate,\n faFileChartLine: faFileChartLine,\n faFileChartPie: faFileChartPie,\n faFileCheck: faFileCheck,\n faFileCode: faFileCode,\n faFileContract: faFileContract,\n faFileCsv: faFileCsv,\n faFileDownload: faFileDownload,\n faFileEdit: faFileEdit,\n faFileExcel: faFileExcel,\n faFileExclamation: faFileExclamation,\n faFileExport: faFileExport,\n faFileImage: faFileImage,\n faFileImport: faFileImport,\n faFileInvoice: faFileInvoice,\n faFileInvoiceDollar: faFileInvoiceDollar,\n faFileMedical: faFileMedical,\n faFileMedicalAlt: faFileMedicalAlt,\n faFileMinus: faFileMinus,\n faFileMusic: faFileMusic,\n faFilePdf: faFilePdf,\n faFilePlus: faFilePlus,\n faFilePowerpoint: faFilePowerpoint,\n faFilePrescription: faFilePrescription,\n faFileSearch: faFileSearch,\n faFileSignature: faFileSignature,\n faFileSpreadsheet: faFileSpreadsheet,\n faFileTimes: faFileTimes,\n faFileUpload: faFileUpload,\n faFileUser: faFileUser,\n faFileVideo: faFileVideo,\n faFileWord: faFileWord,\n faFilesMedical: faFilesMedical,\n faFill: faFill,\n faFillDrip: faFillDrip,\n faFilm: faFilm,\n faFilmAlt: faFilmAlt,\n faFilmCanister: faFilmCanister,\n faFilter: faFilter,\n faFingerprint: faFingerprint,\n faFire: faFire,\n faFireAlt: faFireAlt,\n faFireExtinguisher: faFireExtinguisher,\n faFireSmoke: faFireSmoke,\n faFireplace: faFireplace,\n faFirstAid: faFirstAid,\n faFish: faFish,\n faFishCooked: faFishCooked,\n faFistRaised: faFistRaised,\n faFlag: faFlag,\n faFlagAlt: faFlagAlt,\n faFlagCheckered: faFlagCheckered,\n faFlagUsa: faFlagUsa,\n faFlame: faFlame,\n faFlashlight: faFlashlight,\n faFlask: faFlask,\n faFlaskPoison: faFlaskPoison,\n faFlaskPotion: faFlaskPotion,\n faFlower: faFlower,\n faFlowerDaffodil: faFlowerDaffodil,\n faFlowerTulip: faFlowerTulip,\n faFlushed: faFlushed,\n faFlute: faFlute,\n faFluxCapacitor: faFluxCapacitor,\n faFog: faFog,\n faFolder: faFolder,\n faFolderDownload: faFolderDownload,\n faFolderMinus: faFolderMinus,\n faFolderOpen: faFolderOpen,\n faFolderPlus: faFolderPlus,\n faFolderTimes: faFolderTimes,\n faFolderTree: faFolderTree,\n faFolderUpload: faFolderUpload,\n faFolders: faFolders,\n faFont: faFont,\n faFontAwesomeLogoFull: faFontAwesomeLogoFull,\n faFontCase: faFontCase,\n faFootballBall: faFootballBall,\n faFootballHelmet: faFootballHelmet,\n faForklift: faForklift,\n faForward: faForward,\n faFragile: faFragile,\n faFrenchFries: faFrenchFries,\n faFrog: faFrog,\n faFrostyHead: faFrostyHead,\n faFrown: faFrown,\n faFrownOpen: faFrownOpen,\n faFunction: faFunction,\n faFunnelDollar: faFunnelDollar,\n faFutbol: faFutbol,\n faGalaxy: faGalaxy,\n faGameBoard: faGameBoard,\n faGameBoardAlt: faGameBoardAlt,\n faGameConsoleHandheld: faGameConsoleHandheld,\n faGamepad: faGamepad,\n faGamepadAlt: faGamepadAlt,\n faGarage: faGarage,\n faGarageCar: faGarageCar,\n faGarageOpen: faGarageOpen,\n faGasPump: faGasPump,\n faGasPumpSlash: faGasPumpSlash,\n faGavel: faGavel,\n faGem: faGem,\n faGenderless: faGenderless,\n faGhost: faGhost,\n faGift: faGift,\n faGiftCard: faGiftCard,\n faGifts: faGifts,\n faGingerbreadMan: faGingerbreadMan,\n faGlass: faGlass,\n faGlassChampagne: faGlassChampagne,\n faGlassCheers: faGlassCheers,\n faGlassCitrus: faGlassCitrus,\n faGlassMartini: faGlassMartini,\n faGlassMartiniAlt: faGlassMartiniAlt,\n faGlassWhiskey: faGlassWhiskey,\n faGlassWhiskeyRocks: faGlassWhiskeyRocks,\n faGlasses: faGlasses,\n faGlassesAlt: faGlassesAlt,\n faGlobe: faGlobe,\n faGlobeAfrica: faGlobeAfrica,\n faGlobeAmericas: faGlobeAmericas,\n faGlobeAsia: faGlobeAsia,\n faGlobeEurope: faGlobeEurope,\n faGlobeSnow: faGlobeSnow,\n faGlobeStand: faGlobeStand,\n faGolfBall: faGolfBall,\n faGolfClub: faGolfClub,\n faGopuram: faGopuram,\n faGraduationCap: faGraduationCap,\n faGramophone: faGramophone,\n faGreaterThan: faGreaterThan,\n faGreaterThanEqual: faGreaterThanEqual,\n faGrimace: faGrimace,\n faGrin: faGrin,\n faGrinAlt: faGrinAlt,\n faGrinBeam: faGrinBeam,\n faGrinBeamSweat: faGrinBeamSweat,\n faGrinHearts: faGrinHearts,\n faGrinSquint: faGrinSquint,\n faGrinSquintTears: faGrinSquintTears,\n faGrinStars: faGrinStars,\n faGrinTears: faGrinTears,\n faGrinTongue: faGrinTongue,\n faGrinTongueSquint: faGrinTongueSquint,\n faGrinTongueWink: faGrinTongueWink,\n faGrinWink: faGrinWink,\n faGripHorizontal: faGripHorizontal,\n faGripLines: faGripLines,\n faGripLinesVertical: faGripLinesVertical,\n faGripVertical: faGripVertical,\n faGuitar: faGuitar,\n faGuitarElectric: faGuitarElectric,\n faGuitars: faGuitars,\n faHSquare: faHSquare,\n faH1: faH1,\n faH2: faH2,\n faH3: faH3,\n faH4: faH4,\n faHamburger: faHamburger,\n faHammer: faHammer,\n faHammerWar: faHammerWar,\n faHamsa: faHamsa,\n faHandHeart: faHandHeart,\n faHandHolding: faHandHolding,\n faHandHoldingBox: faHandHoldingBox,\n faHandHoldingHeart: faHandHoldingHeart,\n faHandHoldingMagic: faHandHoldingMagic,\n faHandHoldingMedical: faHandHoldingMedical,\n faHandHoldingSeedling: faHandHoldingSeedling,\n faHandHoldingUsd: faHandHoldingUsd,\n faHandHoldingWater: faHandHoldingWater,\n faHandLizard: faHandLizard,\n faHandMiddleFinger: faHandMiddleFinger,\n faHandPaper: faHandPaper,\n faHandPeace: faHandPeace,\n faHandPointDown: faHandPointDown,\n faHandPointLeft: faHandPointLeft,\n faHandPointRight: faHandPointRight,\n faHandPointUp: faHandPointUp,\n faHandPointer: faHandPointer,\n faHandReceiving: faHandReceiving,\n faHandRock: faHandRock,\n faHandScissors: faHandScissors,\n faHandSparkles: faHandSparkles,\n faHandSpock: faHandSpock,\n faHands: faHands,\n faHandsHeart: faHandsHeart,\n faHandsHelping: faHandsHelping,\n faHandsUsd: faHandsUsd,\n faHandsWash: faHandsWash,\n faHandshake: faHandshake,\n faHandshakeAlt: faHandshakeAlt,\n faHandshakeAltSlash: faHandshakeAltSlash,\n faHandshakeSlash: faHandshakeSlash,\n faHanukiah: faHanukiah,\n faHardHat: faHardHat,\n faHashtag: faHashtag,\n faHatChef: faHatChef,\n faHatCowboy: faHatCowboy,\n faHatCowboySide: faHatCowboySide,\n faHatSanta: faHatSanta,\n faHatWinter: faHatWinter,\n faHatWitch: faHatWitch,\n faHatWizard: faHatWizard,\n faHdd: faHdd,\n faHeadSide: faHeadSide,\n faHeadSideBrain: faHeadSideBrain,\n faHeadSideCough: faHeadSideCough,\n faHeadSideCoughSlash: faHeadSideCoughSlash,\n faHeadSideHeadphones: faHeadSideHeadphones,\n faHeadSideMask: faHeadSideMask,\n faHeadSideMedical: faHeadSideMedical,\n faHeadSideVirus: faHeadSideVirus,\n faHeadVr: faHeadVr,\n faHeading: faHeading,\n faHeadphones: faHeadphones,\n faHeadphonesAlt: faHeadphonesAlt,\n faHeadset: faHeadset,\n faHeart: faHeart,\n faHeartBroken: faHeartBroken,\n faHeartCircle: faHeartCircle,\n faHeartRate: faHeartRate,\n faHeartSquare: faHeartSquare,\n faHeartbeat: faHeartbeat,\n faHeat: faHeat,\n faHelicopter: faHelicopter,\n faHelmetBattle: faHelmetBattle,\n faHexagon: faHexagon,\n faHighlighter: faHighlighter,\n faHiking: faHiking,\n faHippo: faHippo,\n faHistory: faHistory,\n faHockeyMask: faHockeyMask,\n faHockeyPuck: faHockeyPuck,\n faHockeySticks: faHockeySticks,\n faHollyBerry: faHollyBerry,\n faHome: faHome,\n faHomeAlt: faHomeAlt,\n faHomeHeart: faHomeHeart,\n faHomeLg: faHomeLg,\n faHomeLgAlt: faHomeLgAlt,\n faHoodCloak: faHoodCloak,\n faHorizontalRule: faHorizontalRule,\n faHorse: faHorse,\n faHorseHead: faHorseHead,\n faHorseSaddle: faHorseSaddle,\n faHospital: faHospital,\n faHospitalAlt: faHospitalAlt,\n faHospitalSymbol: faHospitalSymbol,\n faHospitalUser: faHospitalUser,\n faHospitals: faHospitals,\n faHotTub: faHotTub,\n faHotdog: faHotdog,\n faHotel: faHotel,\n faHourglass: faHourglass,\n faHourglassEnd: faHourglassEnd,\n faHourglassHalf: faHourglassHalf,\n faHourglassStart: faHourglassStart,\n faHouse: faHouse,\n faHouseDamage: faHouseDamage,\n faHouseDay: faHouseDay,\n faHouseFlood: faHouseFlood,\n faHouseLeave: faHouseLeave,\n faHouseNight: faHouseNight,\n faHouseReturn: faHouseReturn,\n faHouseSignal: faHouseSignal,\n faHouseUser: faHouseUser,\n faHryvnia: faHryvnia,\n faHumidity: faHumidity,\n faHurricane: faHurricane,\n faICursor: faICursor,\n faIceCream: faIceCream,\n faIceSkate: faIceSkate,\n faIcicles: faIcicles,\n faIcons: faIcons,\n faIconsAlt: faIconsAlt,\n faIdBadge: faIdBadge,\n faIdCard: faIdCard,\n faIdCardAlt: faIdCardAlt,\n faIgloo: faIgloo,\n faImage: faImage,\n faImagePolaroid: faImagePolaroid,\n faImages: faImages,\n faInbox: faInbox,\n faInboxIn: faInboxIn,\n faInboxOut: faInboxOut,\n faIndent: faIndent,\n faIndustry: faIndustry,\n faIndustryAlt: faIndustryAlt,\n faInfinity: faInfinity,\n faInfo: faInfo,\n faInfoCircle: faInfoCircle,\n faInfoSquare: faInfoSquare,\n faInhaler: faInhaler,\n faIntegral: faIntegral,\n faIntersection: faIntersection,\n faInventory: faInventory,\n faIslandTropical: faIslandTropical,\n faItalic: faItalic,\n faJackOLantern: faJackOLantern,\n faJedi: faJedi,\n faJoint: faJoint,\n faJournalWhills: faJournalWhills,\n faJoystick: faJoystick,\n faJug: faJug,\n faKaaba: faKaaba,\n faKazoo: faKazoo,\n faKerning: faKerning,\n faKey: faKey,\n faKeySkeleton: faKeySkeleton,\n faKeyboard: faKeyboard,\n faKeynote: faKeynote,\n faKhanda: faKhanda,\n faKidneys: faKidneys,\n faKiss: faKiss,\n faKissBeam: faKissBeam,\n faKissWinkHeart: faKissWinkHeart,\n faKite: faKite,\n faKiwiBird: faKiwiBird,\n faKnifeKitchen: faKnifeKitchen,\n faLambda: faLambda,\n faLamp: faLamp,\n faLampDesk: faLampDesk,\n faLampFloor: faLampFloor,\n faLandmark: faLandmark,\n faLandmarkAlt: faLandmarkAlt,\n faLanguage: faLanguage,\n faLaptop: faLaptop,\n faLaptopCode: faLaptopCode,\n faLaptopHouse: faLaptopHouse,\n faLaptopMedical: faLaptopMedical,\n faLasso: faLasso,\n faLaugh: faLaugh,\n faLaughBeam: faLaughBeam,\n faLaughSquint: faLaughSquint,\n faLaughWink: faLaughWink,\n faLayerGroup: faLayerGroup,\n faLayerMinus: faLayerMinus,\n faLayerPlus: faLayerPlus,\n faLeaf: faLeaf,\n faLeafHeart: faLeafHeart,\n faLeafMaple: faLeafMaple,\n faLeafOak: faLeafOak,\n faLemon: faLemon,\n faLessThan: faLessThan,\n faLessThanEqual: faLessThanEqual,\n faLevelDown: faLevelDown,\n faLevelDownAlt: faLevelDownAlt,\n faLevelUp: faLevelUp,\n faLevelUpAlt: faLevelUpAlt,\n faLifeRing: faLifeRing,\n faLightCeiling: faLightCeiling,\n faLightSwitch: faLightSwitch,\n faLightSwitchOff: faLightSwitchOff,\n faLightSwitchOn: faLightSwitchOn,\n faLightbulb: faLightbulb,\n faLightbulbDollar: faLightbulbDollar,\n faLightbulbExclamation: faLightbulbExclamation,\n faLightbulbOn: faLightbulbOn,\n faLightbulbSlash: faLightbulbSlash,\n faLightsHoliday: faLightsHoliday,\n faLineColumns: faLineColumns,\n faLineHeight: faLineHeight,\n faLink: faLink,\n faLips: faLips,\n faLiraSign: faLiraSign,\n faList: faList,\n faListAlt: faListAlt,\n faListMusic: faListMusic,\n faListOl: faListOl,\n faListUl: faListUl,\n faLocation: faLocation,\n faLocationArrow: faLocationArrow,\n faLocationCircle: faLocationCircle,\n faLocationSlash: faLocationSlash,\n faLock: faLock,\n faLockAlt: faLockAlt,\n faLockOpen: faLockOpen,\n faLockOpenAlt: faLockOpenAlt,\n faLongArrowAltDown: faLongArrowAltDown,\n faLongArrowAltLeft: faLongArrowAltLeft,\n faLongArrowAltRight: faLongArrowAltRight,\n faLongArrowAltUp: faLongArrowAltUp,\n faLongArrowDown: faLongArrowDown,\n faLongArrowLeft: faLongArrowLeft,\n faLongArrowRight: faLongArrowRight,\n faLongArrowUp: faLongArrowUp,\n faLoveseat: faLoveseat,\n faLowVision: faLowVision,\n faLuchador: faLuchador,\n faLuggageCart: faLuggageCart,\n faLungs: faLungs,\n faLungsVirus: faLungsVirus,\n faMace: faMace,\n faMagic: faMagic,\n faMagnet: faMagnet,\n faMailBulk: faMailBulk,\n faMailbox: faMailbox,\n faMale: faMale,\n faMandolin: faMandolin,\n faMap: faMap,\n faMapMarked: faMapMarked,\n faMapMarkedAlt: faMapMarkedAlt,\n faMapMarker: faMapMarker,\n faMapMarkerAlt: faMapMarkerAlt,\n faMapMarkerAltSlash: faMapMarkerAltSlash,\n faMapMarkerCheck: faMapMarkerCheck,\n faMapMarkerEdit: faMapMarkerEdit,\n faMapMarkerExclamation: faMapMarkerExclamation,\n faMapMarkerMinus: faMapMarkerMinus,\n faMapMarkerPlus: faMapMarkerPlus,\n faMapMarkerQuestion: faMapMarkerQuestion,\n faMapMarkerSlash: faMapMarkerSlash,\n faMapMarkerSmile: faMapMarkerSmile,\n faMapMarkerTimes: faMapMarkerTimes,\n faMapPin: faMapPin,\n faMapSigns: faMapSigns,\n faMarker: faMarker,\n faMars: faMars,\n faMarsDouble: faMarsDouble,\n faMarsStroke: faMarsStroke,\n faMarsStrokeH: faMarsStrokeH,\n faMarsStrokeV: faMarsStrokeV,\n faMask: faMask,\n faMeat: faMeat,\n faMedal: faMedal,\n faMedkit: faMedkit,\n faMegaphone: faMegaphone,\n faMeh: faMeh,\n faMehBlank: faMehBlank,\n faMehRollingEyes: faMehRollingEyes,\n faMemory: faMemory,\n faMenorah: faMenorah,\n faMercury: faMercury,\n faMeteor: faMeteor,\n faMicrochip: faMicrochip,\n faMicrophone: faMicrophone,\n faMicrophoneAlt: faMicrophoneAlt,\n faMicrophoneAltSlash: faMicrophoneAltSlash,\n faMicrophoneSlash: faMicrophoneSlash,\n faMicrophoneStand: faMicrophoneStand,\n faMicroscope: faMicroscope,\n faMicrowave: faMicrowave,\n faMindShare: faMindShare,\n faMinus: faMinus,\n faMinusCircle: faMinusCircle,\n faMinusHexagon: faMinusHexagon,\n faMinusOctagon: faMinusOctagon,\n faMinusSquare: faMinusSquare,\n faMistletoe: faMistletoe,\n faMitten: faMitten,\n faMobile: faMobile,\n faMobileAlt: faMobileAlt,\n faMobileAndroid: faMobileAndroid,\n faMobileAndroidAlt: faMobileAndroidAlt,\n faMoneyBill: faMoneyBill,\n faMoneyBillAlt: faMoneyBillAlt,\n faMoneyBillWave: faMoneyBillWave,\n faMoneyBillWaveAlt: faMoneyBillWaveAlt,\n faMoneyCheck: faMoneyCheck,\n faMoneyCheckAlt: faMoneyCheckAlt,\n faMoneyCheckEdit: faMoneyCheckEdit,\n faMoneyCheckEditAlt: faMoneyCheckEditAlt,\n faMonitorHeartRate: faMonitorHeartRate,\n faMonkey: faMonkey,\n faMonument: faMonument,\n faMoon: faMoon,\n faMoonCloud: faMoonCloud,\n faMoonStars: faMoonStars,\n faMortarPestle: faMortarPestle,\n faMosque: faMosque,\n faMotorcycle: faMotorcycle,\n faMountain: faMountain,\n faMountains: faMountains,\n faMouse: faMouse,\n faMouseAlt: faMouseAlt,\n faMousePointer: faMousePointer,\n faMp3Player: faMp3Player,\n faMug: faMug,\n faMugHot: faMugHot,\n faMugMarshmallows: faMugMarshmallows,\n faMugTea: faMugTea,\n faMusic: faMusic,\n faMusicAlt: faMusicAlt,\n faMusicAltSlash: faMusicAltSlash,\n faMusicSlash: faMusicSlash,\n faNarwhal: faNarwhal,\n faNetworkWired: faNetworkWired,\n faNeuter: faNeuter,\n faNewspaper: faNewspaper,\n faNotEqual: faNotEqual,\n faNotesMedical: faNotesMedical,\n faObjectGroup: faObjectGroup,\n faObjectUngroup: faObjectUngroup,\n faOctagon: faOctagon,\n faOilCan: faOilCan,\n faOilTemp: faOilTemp,\n faOm: faOm,\n faOmega: faOmega,\n faOrnament: faOrnament,\n faOtter: faOtter,\n faOutdent: faOutdent,\n faOutlet: faOutlet,\n faOven: faOven,\n faOverline: faOverline,\n faPageBreak: faPageBreak,\n faPager: faPager,\n faPaintBrush: faPaintBrush,\n faPaintBrushAlt: faPaintBrushAlt,\n faPaintRoller: faPaintRoller,\n faPalette: faPalette,\n faPallet: faPallet,\n faPalletAlt: faPalletAlt,\n faPaperPlane: faPaperPlane,\n faPaperclip: faPaperclip,\n faParachuteBox: faParachuteBox,\n faParagraph: faParagraph,\n faParagraphRtl: faParagraphRtl,\n faParking: faParking,\n faParkingCircle: faParkingCircle,\n faParkingCircleSlash: faParkingCircleSlash,\n faParkingSlash: faParkingSlash,\n faPassport: faPassport,\n faPastafarianism: faPastafarianism,\n faPaste: faPaste,\n faPause: faPause,\n faPauseCircle: faPauseCircle,\n faPaw: faPaw,\n faPawAlt: faPawAlt,\n faPawClaws: faPawClaws,\n faPeace: faPeace,\n faPegasus: faPegasus,\n faPen: faPen,\n faPenAlt: faPenAlt,\n faPenFancy: faPenFancy,\n faPenNib: faPenNib,\n faPenSquare: faPenSquare,\n faPencil: faPencil,\n faPencilAlt: faPencilAlt,\n faPencilPaintbrush: faPencilPaintbrush,\n faPencilRuler: faPencilRuler,\n faPennant: faPennant,\n faPeopleArrows: faPeopleArrows,\n faPeopleCarry: faPeopleCarry,\n faPepperHot: faPepperHot,\n faPercent: faPercent,\n faPercentage: faPercentage,\n faPersonBooth: faPersonBooth,\n faPersonCarry: faPersonCarry,\n faPersonDolly: faPersonDolly,\n faPersonDollyEmpty: faPersonDollyEmpty,\n faPersonSign: faPersonSign,\n faPhone: faPhone,\n faPhoneAlt: faPhoneAlt,\n faPhoneLaptop: faPhoneLaptop,\n faPhoneOffice: faPhoneOffice,\n faPhonePlus: faPhonePlus,\n faPhoneRotary: faPhoneRotary,\n faPhoneSlash: faPhoneSlash,\n faPhoneSquare: faPhoneSquare,\n faPhoneSquareAlt: faPhoneSquareAlt,\n faPhoneVolume: faPhoneVolume,\n faPhotoVideo: faPhotoVideo,\n faPi: faPi,\n faPiano: faPiano,\n faPianoKeyboard: faPianoKeyboard,\n faPie: faPie,\n faPig: faPig,\n faPiggyBank: faPiggyBank,\n faPills: faPills,\n faPizza: faPizza,\n faPizzaSlice: faPizzaSlice,\n faPlaceOfWorship: faPlaceOfWorship,\n faPlane: faPlane,\n faPlaneAlt: faPlaneAlt,\n faPlaneArrival: faPlaneArrival,\n faPlaneDeparture: faPlaneDeparture,\n faPlaneSlash: faPlaneSlash,\n faPlanetMoon: faPlanetMoon,\n faPlanetRinged: faPlanetRinged,\n faPlay: faPlay,\n faPlayCircle: faPlayCircle,\n faPlug: faPlug,\n faPlus: faPlus,\n faPlusCircle: faPlusCircle,\n faPlusHexagon: faPlusHexagon,\n faPlusOctagon: faPlusOctagon,\n faPlusSquare: faPlusSquare,\n faPodcast: faPodcast,\n faPodium: faPodium,\n faPodiumStar: faPodiumStar,\n faPoliceBox: faPoliceBox,\n faPoll: faPoll,\n faPollH: faPollH,\n faPollPeople: faPollPeople,\n faPoo: faPoo,\n faPooStorm: faPooStorm,\n faPoop: faPoop,\n faPopcorn: faPopcorn,\n faPortalEnter: faPortalEnter,\n faPortalExit: faPortalExit,\n faPortrait: faPortrait,\n faPoundSign: faPoundSign,\n faPowerOff: faPowerOff,\n faPray: faPray,\n faPrayingHands: faPrayingHands,\n faPrescription: faPrescription,\n faPrescriptionBottle: faPrescriptionBottle,\n faPrescriptionBottleAlt: faPrescriptionBottleAlt,\n faPresentation: faPresentation,\n faPrint: faPrint,\n faPrintSearch: faPrintSearch,\n faPrintSlash: faPrintSlash,\n faProcedures: faProcedures,\n faProjectDiagram: faProjectDiagram,\n faProjector: faProjector,\n faPumpMedical: faPumpMedical,\n faPumpSoap: faPumpSoap,\n faPumpkin: faPumpkin,\n faPuzzlePiece: faPuzzlePiece,\n faQrcode: faQrcode,\n faQuestion: faQuestion,\n faQuestionCircle: faQuestionCircle,\n faQuestionSquare: faQuestionSquare,\n faQuidditch: faQuidditch,\n faQuoteLeft: faQuoteLeft,\n faQuoteRight: faQuoteRight,\n faQuran: faQuran,\n faRabbit: faRabbit,\n faRabbitFast: faRabbitFast,\n faRacquet: faRacquet,\n faRadar: faRadar,\n faRadiation: faRadiation,\n faRadiationAlt: faRadiationAlt,\n faRadio: faRadio,\n faRadioAlt: faRadioAlt,\n faRainbow: faRainbow,\n faRaindrops: faRaindrops,\n faRam: faRam,\n faRampLoading: faRampLoading,\n faRandom: faRandom,\n faRaygun: faRaygun,\n faReceipt: faReceipt,\n faRecordVinyl: faRecordVinyl,\n faRectangleLandscape: faRectangleLandscape,\n faRectanglePortrait: faRectanglePortrait,\n faRectangleWide: faRectangleWide,\n faRecycle: faRecycle,\n faRedo: faRedo,\n faRedoAlt: faRedoAlt,\n faRefrigerator: faRefrigerator,\n faRegistered: faRegistered,\n faRemoveFormat: faRemoveFormat,\n faRepeat: faRepeat,\n faRepeat1: faRepeat1,\n faRepeat1Alt: faRepeat1Alt,\n faRepeatAlt: faRepeatAlt,\n faReply: faReply,\n faReplyAll: faReplyAll,\n faRepublican: faRepublican,\n faRestroom: faRestroom,\n faRetweet: faRetweet,\n faRetweetAlt: faRetweetAlt,\n faRibbon: faRibbon,\n faRing: faRing,\n faRingsWedding: faRingsWedding,\n faRoad: faRoad,\n faRobot: faRobot,\n faRocket: faRocket,\n faRocketLaunch: faRocketLaunch,\n faRoute: faRoute,\n faRouteHighway: faRouteHighway,\n faRouteInterstate: faRouteInterstate,\n faRouter: faRouter,\n faRss: faRss,\n faRssSquare: faRssSquare,\n faRubleSign: faRubleSign,\n faRuler: faRuler,\n faRulerCombined: faRulerCombined,\n faRulerHorizontal: faRulerHorizontal,\n faRulerTriangle: faRulerTriangle,\n faRulerVertical: faRulerVertical,\n faRunning: faRunning,\n faRupeeSign: faRupeeSign,\n faRv: faRv,\n faSack: faSack,\n faSackDollar: faSackDollar,\n faSadCry: faSadCry,\n faSadTear: faSadTear,\n faSalad: faSalad,\n faSandwich: faSandwich,\n faSatellite: faSatellite,\n faSatelliteDish: faSatelliteDish,\n faSausage: faSausage,\n faSave: faSave,\n faSaxHot: faSaxHot,\n faSaxophone: faSaxophone,\n faScalpel: faScalpel,\n faScalpelPath: faScalpelPath,\n faScanner: faScanner,\n faScannerImage: faScannerImage,\n faScannerKeyboard: faScannerKeyboard,\n faScannerTouchscreen: faScannerTouchscreen,\n faScarecrow: faScarecrow,\n faScarf: faScarf,\n faSchool: faSchool,\n faScrewdriver: faScrewdriver,\n faScroll: faScroll,\n faScrollOld: faScrollOld,\n faScrubber: faScrubber,\n faScythe: faScythe,\n faSdCard: faSdCard,\n faSearch: faSearch,\n faSearchDollar: faSearchDollar,\n faSearchLocation: faSearchLocation,\n faSearchMinus: faSearchMinus,\n faSearchPlus: faSearchPlus,\n faSeedling: faSeedling,\n faSendBack: faSendBack,\n faSendBackward: faSendBackward,\n faSensor: faSensor,\n faSensorAlert: faSensorAlert,\n faSensorFire: faSensorFire,\n faSensorOn: faSensorOn,\n faSensorSmoke: faSensorSmoke,\n faServer: faServer,\n faShapes: faShapes,\n faShare: faShare,\n faShareAll: faShareAll,\n faShareAlt: faShareAlt,\n faShareAltSquare: faShareAltSquare,\n faShareSquare: faShareSquare,\n faSheep: faSheep,\n faShekelSign: faShekelSign,\n faShield: faShield,\n faShieldAlt: faShieldAlt,\n faShieldCheck: faShieldCheck,\n faShieldCross: faShieldCross,\n faShieldVirus: faShieldVirus,\n faShip: faShip,\n faShippingFast: faShippingFast,\n faShippingTimed: faShippingTimed,\n faShishKebab: faShishKebab,\n faShoePrints: faShoePrints,\n faShoppingBag: faShoppingBag,\n faShoppingBasket: faShoppingBasket,\n faShoppingCart: faShoppingCart,\n faShovel: faShovel,\n faShovelSnow: faShovelSnow,\n faShower: faShower,\n faShredder: faShredder,\n faShuttleVan: faShuttleVan,\n faShuttlecock: faShuttlecock,\n faSickle: faSickle,\n faSigma: faSigma,\n faSign: faSign,\n faSignIn: faSignIn,\n faSignInAlt: faSignInAlt,\n faSignLanguage: faSignLanguage,\n faSignOut: faSignOut,\n faSignOutAlt: faSignOutAlt,\n faSignal: faSignal,\n faSignal1: faSignal1,\n faSignal2: faSignal2,\n faSignal3: faSignal3,\n faSignal4: faSignal4,\n faSignalAlt: faSignalAlt,\n faSignalAlt1: faSignalAlt1,\n faSignalAlt2: faSignalAlt2,\n faSignalAlt3: faSignalAlt3,\n faSignalAltSlash: faSignalAltSlash,\n faSignalSlash: faSignalSlash,\n faSignalStream: faSignalStream,\n faSignature: faSignature,\n faSimCard: faSimCard,\n faSink: faSink,\n faSiren: faSiren,\n faSirenOn: faSirenOn,\n faSitemap: faSitemap,\n faSkating: faSkating,\n faSkeleton: faSkeleton,\n faSkiJump: faSkiJump,\n faSkiLift: faSkiLift,\n faSkiing: faSkiing,\n faSkiingNordic: faSkiingNordic,\n faSkull: faSkull,\n faSkullCow: faSkullCow,\n faSkullCrossbones: faSkullCrossbones,\n faSlash: faSlash,\n faSledding: faSledding,\n faSleigh: faSleigh,\n faSlidersH: faSlidersH,\n faSlidersHSquare: faSlidersHSquare,\n faSlidersV: faSlidersV,\n faSlidersVSquare: faSlidersVSquare,\n faSmile: faSmile,\n faSmileBeam: faSmileBeam,\n faSmilePlus: faSmilePlus,\n faSmileWink: faSmileWink,\n faSmog: faSmog,\n faSmoke: faSmoke,\n faSmoking: faSmoking,\n faSmokingBan: faSmokingBan,\n faSms: faSms,\n faSnake: faSnake,\n faSnooze: faSnooze,\n faSnowBlowing: faSnowBlowing,\n faSnowboarding: faSnowboarding,\n faSnowflake: faSnowflake,\n faSnowflakes: faSnowflakes,\n faSnowman: faSnowman,\n faSnowmobile: faSnowmobile,\n faSnowplow: faSnowplow,\n faSoap: faSoap,\n faSocks: faSocks,\n faSolarPanel: faSolarPanel,\n faSolarSystem: faSolarSystem,\n faSort: faSort,\n faSortAlphaDown: faSortAlphaDown,\n faSortAlphaDownAlt: faSortAlphaDownAlt,\n faSortAlphaUp: faSortAlphaUp,\n faSortAlphaUpAlt: faSortAlphaUpAlt,\n faSortAlt: faSortAlt,\n faSortAmountDown: faSortAmountDown,\n faSortAmountDownAlt: faSortAmountDownAlt,\n faSortAmountUp: faSortAmountUp,\n faSortAmountUpAlt: faSortAmountUpAlt,\n faSortCircle: faSortCircle,\n faSortCircleDown: faSortCircleDown,\n faSortCircleUp: faSortCircleUp,\n faSortDown: faSortDown,\n faSortNumericDown: faSortNumericDown,\n faSortNumericDownAlt: faSortNumericDownAlt,\n faSortNumericUp: faSortNumericUp,\n faSortNumericUpAlt: faSortNumericUpAlt,\n faSortShapesDown: faSortShapesDown,\n faSortShapesDownAlt: faSortShapesDownAlt,\n faSortShapesUp: faSortShapesUp,\n faSortShapesUpAlt: faSortShapesUpAlt,\n faSortSizeDown: faSortSizeDown,\n faSortSizeDownAlt: faSortSizeDownAlt,\n faSortSizeUp: faSortSizeUp,\n faSortSizeUpAlt: faSortSizeUpAlt,\n faSortUp: faSortUp,\n faSoup: faSoup,\n faSpa: faSpa,\n faSpaceShuttle: faSpaceShuttle,\n faSpaceStationMoon: faSpaceStationMoon,\n faSpaceStationMoonAlt: faSpaceStationMoonAlt,\n faSpade: faSpade,\n faSparkles: faSparkles,\n faSpeaker: faSpeaker,\n faSpeakers: faSpeakers,\n faSpellCheck: faSpellCheck,\n faSpider: faSpider,\n faSpiderBlackWidow: faSpiderBlackWidow,\n faSpiderWeb: faSpiderWeb,\n faSpinner: faSpinner,\n faSpinnerThird: faSpinnerThird,\n faSplotch: faSplotch,\n faSprayCan: faSprayCan,\n faSprinkler: faSprinkler,\n faSquare: faSquare,\n faSquareFull: faSquareFull,\n faSquareRoot: faSquareRoot,\n faSquareRootAlt: faSquareRootAlt,\n faSquirrel: faSquirrel,\n faStaff: faStaff,\n faStamp: faStamp,\n faStar: faStar,\n faStarAndCrescent: faStarAndCrescent,\n faStarChristmas: faStarChristmas,\n faStarExclamation: faStarExclamation,\n faStarHalf: faStarHalf,\n faStarHalfAlt: faStarHalfAlt,\n faStarOfDavid: faStarOfDavid,\n faStarOfLife: faStarOfLife,\n faStarShooting: faStarShooting,\n faStarfighter: faStarfighter,\n faStarfighterAlt: faStarfighterAlt,\n faStars: faStars,\n faStarship: faStarship,\n faStarshipFreighter: faStarshipFreighter,\n faSteak: faSteak,\n faSteeringWheel: faSteeringWheel,\n faStepBackward: faStepBackward,\n faStepForward: faStepForward,\n faStethoscope: faStethoscope,\n faStickyNote: faStickyNote,\n faStocking: faStocking,\n faStomach: faStomach,\n faStop: faStop,\n faStopCircle: faStopCircle,\n faStopwatch: faStopwatch,\n faStopwatch20: faStopwatch20,\n faStore: faStore,\n faStoreAlt: faStoreAlt,\n faStoreAltSlash: faStoreAltSlash,\n faStoreSlash: faStoreSlash,\n faStream: faStream,\n faStreetView: faStreetView,\n faStretcher: faStretcher,\n faStrikethrough: faStrikethrough,\n faStroopwafel: faStroopwafel,\n faSubscript: faSubscript,\n faSubway: faSubway,\n faSuitcase: faSuitcase,\n faSuitcaseRolling: faSuitcaseRolling,\n faSun: faSun,\n faSunCloud: faSunCloud,\n faSunDust: faSunDust,\n faSunHaze: faSunHaze,\n faSunglasses: faSunglasses,\n faSunrise: faSunrise,\n faSunset: faSunset,\n faSuperscript: faSuperscript,\n faSurprise: faSurprise,\n faSwatchbook: faSwatchbook,\n faSwimmer: faSwimmer,\n faSwimmingPool: faSwimmingPool,\n faSword: faSword,\n faSwordLaser: faSwordLaser,\n faSwordLaserAlt: faSwordLaserAlt,\n faSwords: faSwords,\n faSwordsLaser: faSwordsLaser,\n faSynagogue: faSynagogue,\n faSync: faSync,\n faSyncAlt: faSyncAlt,\n faSyringe: faSyringe,\n faTable: faTable,\n faTableTennis: faTableTennis,\n faTablet: faTablet,\n faTabletAlt: faTabletAlt,\n faTabletAndroid: faTabletAndroid,\n faTabletAndroidAlt: faTabletAndroidAlt,\n faTabletRugged: faTabletRugged,\n faTablets: faTablets,\n faTachometer: faTachometer,\n faTachometerAlt: faTachometerAlt,\n faTachometerAltAverage: faTachometerAltAverage,\n faTachometerAltFast: faTachometerAltFast,\n faTachometerAltFastest: faTachometerAltFastest,\n faTachometerAltSlow: faTachometerAltSlow,\n faTachometerAltSlowest: faTachometerAltSlowest,\n faTachometerAverage: faTachometerAverage,\n faTachometerFast: faTachometerFast,\n faTachometerFastest: faTachometerFastest,\n faTachometerSlow: faTachometerSlow,\n faTachometerSlowest: faTachometerSlowest,\n faTaco: faTaco,\n faTag: faTag,\n faTags: faTags,\n faTally: faTally,\n faTanakh: faTanakh,\n faTape: faTape,\n faTasks: faTasks,\n faTasksAlt: faTasksAlt,\n faTaxi: faTaxi,\n faTeeth: faTeeth,\n faTeethOpen: faTeethOpen,\n faTelescope: faTelescope,\n faTemperatureDown: faTemperatureDown,\n faTemperatureFrigid: faTemperatureFrigid,\n faTemperatureHigh: faTemperatureHigh,\n faTemperatureHot: faTemperatureHot,\n faTemperatureLow: faTemperatureLow,\n faTemperatureUp: faTemperatureUp,\n faTenge: faTenge,\n faTennisBall: faTennisBall,\n faTerminal: faTerminal,\n faText: faText,\n faTextHeight: faTextHeight,\n faTextSize: faTextSize,\n faTextWidth: faTextWidth,\n faTh: faTh,\n faThLarge: faThLarge,\n faThList: faThList,\n faTheaterMasks: faTheaterMasks,\n faThermometer: faThermometer,\n faThermometerEmpty: faThermometerEmpty,\n faThermometerFull: faThermometerFull,\n faThermometerHalf: faThermometerHalf,\n faThermometerQuarter: faThermometerQuarter,\n faThermometerThreeQuarters: faThermometerThreeQuarters,\n faTheta: faTheta,\n faThumbsDown: faThumbsDown,\n faThumbsUp: faThumbsUp,\n faThumbtack: faThumbtack,\n faThunderstorm: faThunderstorm,\n faThunderstormMoon: faThunderstormMoon,\n faThunderstormSun: faThunderstormSun,\n faTicket: faTicket,\n faTicketAlt: faTicketAlt,\n faTilde: faTilde,\n faTimes: faTimes,\n faTimesCircle: faTimesCircle,\n faTimesHexagon: faTimesHexagon,\n faTimesOctagon: faTimesOctagon,\n faTimesSquare: faTimesSquare,\n faTint: faTint,\n faTintSlash: faTintSlash,\n faTire: faTire,\n faTireFlat: faTireFlat,\n faTirePressureWarning: faTirePressureWarning,\n faTireRugged: faTireRugged,\n faTired: faTired,\n faToggleOff: faToggleOff,\n faToggleOn: faToggleOn,\n faToilet: faToilet,\n faToiletPaper: faToiletPaper,\n faToiletPaperAlt: faToiletPaperAlt,\n faToiletPaperSlash: faToiletPaperSlash,\n faTombstone: faTombstone,\n faTombstoneAlt: faTombstoneAlt,\n faToolbox: faToolbox,\n faTools: faTools,\n faTooth: faTooth,\n faToothbrush: faToothbrush,\n faTorah: faTorah,\n faToriiGate: faToriiGate,\n faTornado: faTornado,\n faTractor: faTractor,\n faTrademark: faTrademark,\n faTrafficCone: faTrafficCone,\n faTrafficLight: faTrafficLight,\n faTrafficLightGo: faTrafficLightGo,\n faTrafficLightSlow: faTrafficLightSlow,\n faTrafficLightStop: faTrafficLightStop,\n faTrailer: faTrailer,\n faTrain: faTrain,\n faTram: faTram,\n faTransgender: faTransgender,\n faTransgenderAlt: faTransgenderAlt,\n faTransporter: faTransporter,\n faTransporter1: faTransporter1,\n faTransporter2: faTransporter2,\n faTransporter3: faTransporter3,\n faTransporterEmpty: faTransporterEmpty,\n faTrash: faTrash,\n faTrashAlt: faTrashAlt,\n faTrashRestore: faTrashRestore,\n faTrashRestoreAlt: faTrashRestoreAlt,\n faTrashUndo: faTrashUndo,\n faTrashUndoAlt: faTrashUndoAlt,\n faTreasureChest: faTreasureChest,\n faTree: faTree,\n faTreeAlt: faTreeAlt,\n faTreeChristmas: faTreeChristmas,\n faTreeDecorated: faTreeDecorated,\n faTreeLarge: faTreeLarge,\n faTreePalm: faTreePalm,\n faTrees: faTrees,\n faTriangle: faTriangle,\n faTriangleMusic: faTriangleMusic,\n faTrophy: faTrophy,\n faTrophyAlt: faTrophyAlt,\n faTruck: faTruck,\n faTruckContainer: faTruckContainer,\n faTruckCouch: faTruckCouch,\n faTruckLoading: faTruckLoading,\n faTruckMonster: faTruckMonster,\n faTruckMoving: faTruckMoving,\n faTruckPickup: faTruckPickup,\n faTruckPlow: faTruckPlow,\n faTruckRamp: faTruckRamp,\n faTrumpet: faTrumpet,\n faTshirt: faTshirt,\n faTty: faTty,\n faTurkey: faTurkey,\n faTurntable: faTurntable,\n faTurtle: faTurtle,\n faTv: faTv,\n faTvAlt: faTvAlt,\n faTvMusic: faTvMusic,\n faTvRetro: faTvRetro,\n faTypewriter: faTypewriter,\n faUfo: faUfo,\n faUfoBeam: faUfoBeam,\n faUmbrella: faUmbrella,\n faUmbrellaBeach: faUmbrellaBeach,\n faUnderline: faUnderline,\n faUndo: faUndo,\n faUndoAlt: faUndoAlt,\n faUnicorn: faUnicorn,\n faUnion: faUnion,\n faUniversalAccess: faUniversalAccess,\n faUniversity: faUniversity,\n faUnlink: faUnlink,\n faUnlock: faUnlock,\n faUnlockAlt: faUnlockAlt,\n faUpload: faUpload,\n faUsbDrive: faUsbDrive,\n faUsdCircle: faUsdCircle,\n faUsdSquare: faUsdSquare,\n faUser: faUser,\n faUserAlien: faUserAlien,\n faUserAlt: faUserAlt,\n faUserAltSlash: faUserAltSlash,\n faUserAstronaut: faUserAstronaut,\n faUserChart: faUserChart,\n faUserCheck: faUserCheck,\n faUserCircle: faUserCircle,\n faUserClock: faUserClock,\n faUserCog: faUserCog,\n faUserCowboy: faUserCowboy,\n faUserCrown: faUserCrown,\n faUserEdit: faUserEdit,\n faUserFriends: faUserFriends,\n faUserGraduate: faUserGraduate,\n faUserHardHat: faUserHardHat,\n faUserHeadset: faUserHeadset,\n faUserInjured: faUserInjured,\n faUserLock: faUserLock,\n faUserMd: faUserMd,\n faUserMdChat: faUserMdChat,\n faUserMinus: faUserMinus,\n faUserMusic: faUserMusic,\n faUserNinja: faUserNinja,\n faUserNurse: faUserNurse,\n faUserPlus: faUserPlus,\n faUserRobot: faUserRobot,\n faUserSecret: faUserSecret,\n faUserShield: faUserShield,\n faUserSlash: faUserSlash,\n faUserTag: faUserTag,\n faUserTie: faUserTie,\n faUserTimes: faUserTimes,\n faUserUnlock: faUserUnlock,\n faUserVisor: faUserVisor,\n faUsers: faUsers,\n faUsersClass: faUsersClass,\n faUsersCog: faUsersCog,\n faUsersCrown: faUsersCrown,\n faUsersMedical: faUsersMedical,\n faUsersSlash: faUsersSlash,\n faUtensilFork: faUtensilFork,\n faUtensilKnife: faUtensilKnife,\n faUtensilSpoon: faUtensilSpoon,\n faUtensils: faUtensils,\n faUtensilsAlt: faUtensilsAlt,\n faVacuum: faVacuum,\n faVacuumRobot: faVacuumRobot,\n faValueAbsolute: faValueAbsolute,\n faVectorSquare: faVectorSquare,\n faVenus: faVenus,\n faVenusDouble: faVenusDouble,\n faVenusMars: faVenusMars,\n faVest: faVest,\n faVestPatches: faVestPatches,\n faVhs: faVhs,\n faVial: faVial,\n faVials: faVials,\n faVideo: faVideo,\n faVideoPlus: faVideoPlus,\n faVideoSlash: faVideoSlash,\n faVihara: faVihara,\n faViolin: faViolin,\n faVirus: faVirus,\n faVirusSlash: faVirusSlash,\n faViruses: faViruses,\n faVoicemail: faVoicemail,\n faVolcano: faVolcano,\n faVolleyballBall: faVolleyballBall,\n faVolume: faVolume,\n faVolumeDown: faVolumeDown,\n faVolumeMute: faVolumeMute,\n faVolumeOff: faVolumeOff,\n faVolumeSlash: faVolumeSlash,\n faVolumeUp: faVolumeUp,\n faVoteNay: faVoteNay,\n faVoteYea: faVoteYea,\n faVrCardboard: faVrCardboard,\n faWagonCovered: faWagonCovered,\n faWalker: faWalker,\n faWalkieTalkie: faWalkieTalkie,\n faWalking: faWalking,\n faWallet: faWallet,\n faWand: faWand,\n faWandMagic: faWandMagic,\n faWarehouse: faWarehouse,\n faWarehouseAlt: faWarehouseAlt,\n faWasher: faWasher,\n faWatch: faWatch,\n faWatchCalculator: faWatchCalculator,\n faWatchFitness: faWatchFitness,\n faWater: faWater,\n faWaterLower: faWaterLower,\n faWaterRise: faWaterRise,\n faWaveSine: faWaveSine,\n faWaveSquare: faWaveSquare,\n faWaveTriangle: faWaveTriangle,\n faWaveform: faWaveform,\n faWaveformPath: faWaveformPath,\n faWebcam: faWebcam,\n faWebcamSlash: faWebcamSlash,\n faWeight: faWeight,\n faWeightHanging: faWeightHanging,\n faWhale: faWhale,\n faWheat: faWheat,\n faWheelchair: faWheelchair,\n faWhistle: faWhistle,\n faWifi: faWifi,\n faWifi1: faWifi1,\n faWifi2: faWifi2,\n faWifiSlash: faWifiSlash,\n faWind: faWind,\n faWindTurbine: faWindTurbine,\n faWindWarning: faWindWarning,\n faWindow: faWindow,\n faWindowAlt: faWindowAlt,\n faWindowClose: faWindowClose,\n faWindowFrame: faWindowFrame,\n faWindowFrameOpen: faWindowFrameOpen,\n faWindowMaximize: faWindowMaximize,\n faWindowMinimize: faWindowMinimize,\n faWindowRestore: faWindowRestore,\n faWindsock: faWindsock,\n faWineBottle: faWineBottle,\n faWineGlass: faWineGlass,\n faWineGlassAlt: faWineGlassAlt,\n faWonSign: faWonSign,\n faWreath: faWreath,\n faWrench: faWrench,\n faXRay: faXRay,\n faYenSign: faYenSign,\n faYinYang: faYinYang\n};\n\nexport { _iconsCache as fal, prefix, faAbacus, faAcorn, faAd, faAddressBook, faAddressCard, faAdjust, faAirConditioner, faAirFreshener, faAlarmClock, faAlarmExclamation, faAlarmPlus, faAlarmSnooze, faAlbum, faAlbumCollection, faAlicorn, faAlien, faAlienMonster, faAlignCenter, faAlignJustify, faAlignLeft, faAlignRight, faAlignSlash, faAllergies, faAmbulance, faAmericanSignLanguageInterpreting, faAmpGuitar, faAnalytics, faAnchor, faAngel, faAngleDoubleDown, faAngleDoubleLeft, faAngleDoubleRight, faAngleDoubleUp, faAngleDown, faAngleLeft, faAngleRight, faAngleUp, faAngry, faAnkh, faAppleAlt, faAppleCrate, faArchive, faArchway, faArrowAltCircleDown, faArrowAltCircleLeft, faArrowAltCircleRight, faArrowAltCircleUp, faArrowAltDown, faArrowAltFromBottom, faArrowAltFromLeft, faArrowAltFromRight, faArrowAltFromTop, faArrowAltLeft, faArrowAltRight, faArrowAltSquareDown, faArrowAltSquareLeft, faArrowAltSquareRight, faArrowAltSquareUp, faArrowAltToBottom, faArrowAltToLeft, faArrowAltToRight, faArrowAltToTop, faArrowAltUp, faArrowCircleDown, faArrowCircleLeft, faArrowCircleRight, faArrowCircleUp, faArrowDown, faArrowFromBottom, faArrowFromLeft, faArrowFromRight, faArrowFromTop, faArrowLeft, faArrowRight, faArrowSquareDown, faArrowSquareLeft, faArrowSquareRight, faArrowSquareUp, faArrowToBottom, faArrowToLeft, faArrowToRight, faArrowToTop, faArrowUp, faArrows, faArrowsAlt, faArrowsAltH, faArrowsAltV, faArrowsH, faArrowsV, faAssistiveListeningSystems, faAsterisk, faAt, faAtlas, faAtom, faAtomAlt, faAudioDescription, faAward, faAxe, faAxeBattle, faBaby, faBabyCarriage, faBackpack, faBackspace, faBackward, faBacon, faBacteria, faBacterium, faBadge, faBadgeCheck, faBadgeDollar, faBadgePercent, faBadgeSheriff, faBadgerHoney, faBagsShopping, faBahai, faBalanceScale, faBalanceScaleLeft, faBalanceScaleRight, faBallPile, faBallot, faBallotCheck, faBan, faBandAid, faBanjo, faBarcode, faBarcodeAlt, faBarcodeRead, faBarcodeScan, faBars, faBaseball, faBaseballBall, faBasketballBall, faBasketballHoop, faBat, faBath, faBatteryBolt, faBatteryEmpty, faBatteryFull, faBatteryHalf, faBatteryQuarter, faBatterySlash, faBatteryThreeQuarters, faBed, faBedAlt, faBedBunk, faBedEmpty, faBeer, faBell, faBellExclamation, faBellOn, faBellPlus, faBellSchool, faBellSchoolSlash, faBellSlash, faBells, faBetamax, faBezierCurve, faBible, faBicycle, faBiking, faBikingMountain, faBinoculars, faBiohazard, faBirthdayCake, faBlanket, faBlender, faBlenderPhone, faBlind, faBlinds, faBlindsOpen, faBlindsRaised, faBlog, faBold, faBolt, faBomb, faBone, faBoneBreak, faBong, faBook, faBookAlt, faBookDead, faBookHeart, faBookMedical, faBookOpen, faBookReader, faBookSpells, faBookUser, faBookmark, faBooks, faBooksMedical, faBoombox, faBoot, faBoothCurtain, faBorderAll, faBorderBottom, faBorderCenterH, faBorderCenterV, faBorderInner, faBorderLeft, faBorderNone, faBorderOuter, faBorderRight, faBorderStyle, faBorderStyleAlt, faBorderTop, faBowArrow, faBowlingBall, faBowlingPins, faBox, faBoxAlt, faBoxBallot, faBoxCheck, faBoxFragile, faBoxFull, faBoxHeart, faBoxOpen, faBoxTissue, faBoxUp, faBoxUsd, faBoxes, faBoxesAlt, faBoxingGlove, faBrackets, faBracketsCurly, faBraille, faBrain, faBreadLoaf, faBreadSlice, faBriefcase, faBriefcaseMedical, faBringForward, faBringFront, faBroadcastTower, faBroom, faBrowser, faBrush, faBug, faBuilding, faBullhorn, faBullseye, faBullseyeArrow, faBullseyePointer, faBurgerSoda, faBurn, faBurrito, faBus, faBusAlt, faBusSchool, faBusinessTime, faCabinetFiling, faCactus, faCalculator, faCalculatorAlt, faCalendar, faCalendarAlt, faCalendarCheck, faCalendarDay, faCalendarEdit, faCalendarExclamation, faCalendarMinus, faCalendarPlus, faCalendarStar, faCalendarTimes, faCalendarWeek, faCamcorder, faCamera, faCameraAlt, faCameraHome, faCameraMovie, faCameraPolaroid, faCameraRetro, faCampfire, faCampground, faCandleHolder, faCandyCane, faCandyCorn, faCannabis, faCapsules, faCar, faCarAlt, faCarBattery, faCarBuilding, faCarBump, faCarBus, faCarCrash, faCarGarage, faCarMechanic, faCarSide, faCarTilt, faCarWash, faCaravan, faCaravanAlt, faCaretCircleDown, faCaretCircleLeft, faCaretCircleRight, faCaretCircleUp, faCaretDown, faCaretLeft, faCaretRight, faCaretSquareDown, faCaretSquareLeft, faCaretSquareRight, faCaretSquareUp, faCaretUp, faCarrot, faCars, faCartArrowDown, faCartPlus, faCashRegister, faCassetteTape, faCat, faCatSpace, faCauldron, faCctv, faCertificate, faChair, faChairOffice, faChalkboard, faChalkboardTeacher, faChargingStation, faChartArea, faChartBar, faChartLine, faChartLineDown, faChartNetwork, faChartPie, faChartPieAlt, faChartScatter, faCheck, faCheckCircle, faCheckDouble, faCheckSquare, faCheese, faCheeseSwiss, faCheeseburger, faChess, faChessBishop, faChessBishopAlt, faChessBoard, faChessClock, faChessClockAlt, faChessKing, faChessKingAlt, faChessKnight, faChessKnightAlt, faChessPawn, faChessPawnAlt, faChessQueen, faChessQueenAlt, faChessRook, faChessRookAlt, faChevronCircleDown, faChevronCircleLeft, faChevronCircleRight, faChevronCircleUp, faChevronDoubleDown, faChevronDoubleLeft, faChevronDoubleRight, faChevronDoubleUp, faChevronDown, faChevronLeft, faChevronRight, faChevronSquareDown, faChevronSquareLeft, faChevronSquareRight, faChevronSquareUp, faChevronUp, faChild, faChimney, faChurch, faCircle, faCircleNotch, faCity, faClarinet, faClawMarks, faClinicMedical, faClipboard, faClipboardCheck, faClipboardList, faClipboardListCheck, faClipboardPrescription, faClipboardUser, faClock, faClone, faClosedCaptioning, faCloud, faCloudDownload, faCloudDownloadAlt, faCloudDrizzle, faCloudHail, faCloudHailMixed, faCloudMeatball, faCloudMoon, faCloudMoonRain, faCloudMusic, faCloudRain, faCloudRainbow, faCloudShowers, faCloudShowersHeavy, faCloudSleet, faCloudSnow, faCloudSun, faCloudSunRain, faCloudUpload, faCloudUploadAlt, faClouds, faCloudsMoon, faCloudsSun, faClub, faCocktail, faCode, faCodeBranch, faCodeCommit, faCodeMerge, faCoffee, faCoffeePot, faCoffeeTogo, faCoffin, faCoffinCross, faCog, faCogs, faCoin, faCoins, faColumns, faComet, faComment, faCommentAlt, faCommentAltCheck, faCommentAltDollar, faCommentAltDots, faCommentAltEdit, faCommentAltExclamation, faCommentAltLines, faCommentAltMedical, faCommentAltMinus, faCommentAltMusic, faCommentAltPlus, faCommentAltSlash, faCommentAltSmile, faCommentAltTimes, faCommentCheck, faCommentDollar, faCommentDots, faCommentEdit, faCommentExclamation, faCommentLines, faCommentMedical, faCommentMinus, faCommentMusic, faCommentPlus, faCommentSlash, faCommentSmile, faCommentTimes, faComments, faCommentsAlt, faCommentsAltDollar, faCommentsDollar, faCompactDisc, faCompass, faCompassSlash, faCompress, faCompressAlt, faCompressArrowsAlt, faCompressWide, faComputerClassic, faComputerSpeaker, faConciergeBell, faConstruction, faContainerStorage, faConveyorBelt, faConveyorBeltAlt, faCookie, faCookieBite, faCopy, faCopyright, faCorn, faCouch, faCow, faCowbell, faCowbellMore, faCreditCard, faCreditCardBlank, faCreditCardFront, faCricket, faCroissant, faCrop, faCropAlt, faCross, faCrosshairs, faCrow, faCrown, faCrutch, faCrutches, faCube, faCubes, faCurling, faCut, faDagger, faDatabase, faDeaf, faDebug, faDeer, faDeerRudolph, faDemocrat, faDesktop, faDesktopAlt, faDewpoint, faDharmachakra, faDiagnoses, faDiamond, faDice, faDiceD10, faDiceD12, faDiceD20, faDiceD4, faDiceD6, faDiceD8, faDiceFive, faDiceFour, faDiceOne, faDiceSix, faDiceThree, faDiceTwo, faDigging, faDigitalTachograph, faDiploma, faDirections, faDiscDrive, faDisease, faDivide, faDizzy, faDna, faDoNotEnter, faDog, faDogLeashed, faDollarSign, faDolly, faDollyEmpty, faDollyFlatbed, faDollyFlatbedAlt, faDollyFlatbedEmpty, faDonate, faDoorClosed, faDoorOpen, faDotCircle, faDove, faDownload, faDraftingCompass, faDragon, faDrawCircle, faDrawPolygon, faDrawSquare, faDreidel, faDrone, faDroneAlt, faDrum, faDrumSteelpan, faDrumstick, faDrumstickBite, faDryer, faDryerAlt, faDuck, faDumbbell, faDumpster, faDumpsterFire, faDungeon, faEar, faEarMuffs, faEclipse, faEclipseAlt, faEdit, faEgg, faEggFried, faEject, faElephant, faEllipsisH, faEllipsisHAlt, faEllipsisV, faEllipsisVAlt, faEmptySet, faEngineWarning, faEnvelope, faEnvelopeOpen, faEnvelopeOpenDollar, faEnvelopeOpenText, faEnvelopeSquare, faEquals, faEraser, faEthernet, faEuroSign, faExchange, faExchangeAlt, faExclamation, faExclamationCircle, faExclamationSquare, faExclamationTriangle, faExpand, faExpandAlt, faExpandArrows, faExpandArrowsAlt, faExpandWide, faExternalLink, faExternalLinkAlt, faExternalLinkSquare, faExternalLinkSquareAlt, faEye, faEyeDropper, faEyeEvil, faEyeSlash, faFan, faFanTable, faFarm, faFastBackward, faFastForward, faFaucet, faFaucetDrip, faFax, faFeather, faFeatherAlt, faFemale, faFieldHockey, faFighterJet, faFile, faFileAlt, faFileArchive, faFileAudio, faFileCertificate, faFileChartLine, faFileChartPie, faFileCheck, faFileCode, faFileContract, faFileCsv, faFileDownload, faFileEdit, faFileExcel, faFileExclamation, faFileExport, faFileImage, faFileImport, faFileInvoice, faFileInvoiceDollar, faFileMedical, faFileMedicalAlt, faFileMinus, faFileMusic, faFilePdf, faFilePlus, faFilePowerpoint, faFilePrescription, faFileSearch, faFileSignature, faFileSpreadsheet, faFileTimes, faFileUpload, faFileUser, faFileVideo, faFileWord, faFilesMedical, faFill, faFillDrip, faFilm, faFilmAlt, faFilmCanister, faFilter, faFingerprint, faFire, faFireAlt, faFireExtinguisher, faFireSmoke, faFireplace, faFirstAid, faFish, faFishCooked, faFistRaised, faFlag, faFlagAlt, faFlagCheckered, faFlagUsa, faFlame, faFlashlight, faFlask, faFlaskPoison, faFlaskPotion, faFlower, faFlowerDaffodil, faFlowerTulip, faFlushed, faFlute, faFluxCapacitor, faFog, faFolder, faFolderDownload, faFolderMinus, faFolderOpen, faFolderPlus, faFolderTimes, faFolderTree, faFolderUpload, faFolders, faFont, faFontAwesomeLogoFull, faFontCase, faFootballBall, faFootballHelmet, faForklift, faForward, faFragile, faFrenchFries, faFrog, faFrostyHead, faFrown, faFrownOpen, faFunction, faFunnelDollar, faFutbol, faGalaxy, faGameBoard, faGameBoardAlt, faGameConsoleHandheld, faGamepad, faGamepadAlt, faGarage, faGarageCar, faGarageOpen, faGasPump, faGasPumpSlash, faGavel, faGem, faGenderless, faGhost, faGift, faGiftCard, faGifts, faGingerbreadMan, faGlass, faGlassChampagne, faGlassCheers, faGlassCitrus, faGlassMartini, faGlassMartiniAlt, faGlassWhiskey, faGlassWhiskeyRocks, faGlasses, faGlassesAlt, faGlobe, faGlobeAfrica, faGlobeAmericas, faGlobeAsia, faGlobeEurope, faGlobeSnow, faGlobeStand, faGolfBall, faGolfClub, faGopuram, faGraduationCap, faGramophone, faGreaterThan, faGreaterThanEqual, faGrimace, faGrin, faGrinAlt, faGrinBeam, faGrinBeamSweat, faGrinHearts, faGrinSquint, faGrinSquintTears, faGrinStars, faGrinTears, faGrinTongue, faGrinTongueSquint, faGrinTongueWink, faGrinWink, faGripHorizontal, faGripLines, faGripLinesVertical, faGripVertical, faGuitar, faGuitarElectric, faGuitars, faHSquare, faH1, faH2, faH3, faH4, faHamburger, faHammer, faHammerWar, faHamsa, faHandHeart, faHandHolding, faHandHoldingBox, faHandHoldingHeart, faHandHoldingMagic, faHandHoldingMedical, faHandHoldingSeedling, faHandHoldingUsd, faHandHoldingWater, faHandLizard, faHandMiddleFinger, faHandPaper, faHandPeace, faHandPointDown, faHandPointLeft, faHandPointRight, faHandPointUp, faHandPointer, faHandReceiving, faHandRock, faHandScissors, faHandSparkles, faHandSpock, faHands, faHandsHeart, faHandsHelping, faHandsUsd, faHandsWash, faHandshake, faHandshakeAlt, faHandshakeAltSlash, faHandshakeSlash, faHanukiah, faHardHat, faHashtag, faHatChef, faHatCowboy, faHatCowboySide, faHatSanta, faHatWinter, faHatWitch, faHatWizard, faHdd, faHeadSide, faHeadSideBrain, faHeadSideCough, faHeadSideCoughSlash, faHeadSideHeadphones, faHeadSideMask, faHeadSideMedical, faHeadSideVirus, faHeadVr, faHeading, faHeadphones, faHeadphonesAlt, faHeadset, faHeart, faHeartBroken, faHeartCircle, faHeartRate, faHeartSquare, faHeartbeat, faHeat, faHelicopter, faHelmetBattle, faHexagon, faHighlighter, faHiking, faHippo, faHistory, faHockeyMask, faHockeyPuck, faHockeySticks, faHollyBerry, faHome, faHomeAlt, faHomeHeart, faHomeLg, faHomeLgAlt, faHoodCloak, faHorizontalRule, faHorse, faHorseHead, faHorseSaddle, faHospital, faHospitalAlt, faHospitalSymbol, faHospitalUser, faHospitals, faHotTub, faHotdog, faHotel, faHourglass, faHourglassEnd, faHourglassHalf, faHourglassStart, faHouse, faHouseDamage, faHouseDay, faHouseFlood, faHouseLeave, faHouseNight, faHouseReturn, faHouseSignal, faHouseUser, faHryvnia, faHumidity, faHurricane, faICursor, faIceCream, faIceSkate, faIcicles, faIcons, faIconsAlt, faIdBadge, faIdCard, faIdCardAlt, faIgloo, faImage, faImagePolaroid, faImages, faInbox, faInboxIn, faInboxOut, faIndent, faIndustry, faIndustryAlt, faInfinity, faInfo, faInfoCircle, faInfoSquare, faInhaler, faIntegral, faIntersection, faInventory, faIslandTropical, faItalic, faJackOLantern, faJedi, faJoint, faJournalWhills, faJoystick, faJug, faKaaba, faKazoo, faKerning, faKey, faKeySkeleton, faKeyboard, faKeynote, faKhanda, faKidneys, faKiss, faKissBeam, faKissWinkHeart, faKite, faKiwiBird, faKnifeKitchen, faLambda, faLamp, faLampDesk, faLampFloor, faLandmark, faLandmarkAlt, faLanguage, faLaptop, faLaptopCode, faLaptopHouse, faLaptopMedical, faLasso, faLaugh, faLaughBeam, faLaughSquint, faLaughWink, faLayerGroup, faLayerMinus, faLayerPlus, faLeaf, faLeafHeart, faLeafMaple, faLeafOak, faLemon, faLessThan, faLessThanEqual, faLevelDown, faLevelDownAlt, faLevelUp, faLevelUpAlt, faLifeRing, faLightCeiling, faLightSwitch, faLightSwitchOff, faLightSwitchOn, faLightbulb, faLightbulbDollar, faLightbulbExclamation, faLightbulbOn, faLightbulbSlash, faLightsHoliday, faLineColumns, faLineHeight, faLink, faLips, faLiraSign, faList, faListAlt, faListMusic, faListOl, faListUl, faLocation, faLocationArrow, faLocationCircle, faLocationSlash, faLock, faLockAlt, faLockOpen, faLockOpenAlt, faLongArrowAltDown, faLongArrowAltLeft, faLongArrowAltRight, faLongArrowAltUp, faLongArrowDown, faLongArrowLeft, faLongArrowRight, faLongArrowUp, faLoveseat, faLowVision, faLuchador, faLuggageCart, faLungs, faLungsVirus, faMace, faMagic, faMagnet, faMailBulk, faMailbox, faMale, faMandolin, faMap, faMapMarked, faMapMarkedAlt, faMapMarker, faMapMarkerAlt, faMapMarkerAltSlash, faMapMarkerCheck, faMapMarkerEdit, faMapMarkerExclamation, faMapMarkerMinus, faMapMarkerPlus, faMapMarkerQuestion, faMapMarkerSlash, faMapMarkerSmile, faMapMarkerTimes, faMapPin, faMapSigns, faMarker, faMars, faMarsDouble, faMarsStroke, faMarsStrokeH, faMarsStrokeV, faMask, faMeat, faMedal, faMedkit, faMegaphone, faMeh, faMehBlank, faMehRollingEyes, faMemory, faMenorah, faMercury, faMeteor, faMicrochip, faMicrophone, faMicrophoneAlt, faMicrophoneAltSlash, faMicrophoneSlash, faMicrophoneStand, faMicroscope, faMicrowave, faMindShare, faMinus, faMinusCircle, faMinusHexagon, faMinusOctagon, faMinusSquare, faMistletoe, faMitten, faMobile, faMobileAlt, faMobileAndroid, faMobileAndroidAlt, faMoneyBill, faMoneyBillAlt, faMoneyBillWave, faMoneyBillWaveAlt, faMoneyCheck, faMoneyCheckAlt, faMoneyCheckEdit, faMoneyCheckEditAlt, faMonitorHeartRate, faMonkey, faMonument, faMoon, faMoonCloud, faMoonStars, faMortarPestle, faMosque, faMotorcycle, faMountain, faMountains, faMouse, faMouseAlt, faMousePointer, faMp3Player, faMug, faMugHot, faMugMarshmallows, faMugTea, faMusic, faMusicAlt, faMusicAltSlash, faMusicSlash, faNarwhal, faNetworkWired, faNeuter, faNewspaper, faNotEqual, faNotesMedical, faObjectGroup, faObjectUngroup, faOctagon, faOilCan, faOilTemp, faOm, faOmega, faOrnament, faOtter, faOutdent, faOutlet, faOven, faOverline, faPageBreak, faPager, faPaintBrush, faPaintBrushAlt, faPaintRoller, faPalette, faPallet, faPalletAlt, faPaperPlane, faPaperclip, faParachuteBox, faParagraph, faParagraphRtl, faParking, faParkingCircle, faParkingCircleSlash, faParkingSlash, faPassport, faPastafarianism, faPaste, faPause, faPauseCircle, faPaw, faPawAlt, faPawClaws, faPeace, faPegasus, faPen, faPenAlt, faPenFancy, faPenNib, faPenSquare, faPencil, faPencilAlt, faPencilPaintbrush, faPencilRuler, faPennant, faPeopleArrows, faPeopleCarry, faPepperHot, faPercent, faPercentage, faPersonBooth, faPersonCarry, faPersonDolly, faPersonDollyEmpty, faPersonSign, faPhone, faPhoneAlt, faPhoneLaptop, faPhoneOffice, faPhonePlus, faPhoneRotary, faPhoneSlash, faPhoneSquare, faPhoneSquareAlt, faPhoneVolume, faPhotoVideo, faPi, faPiano, faPianoKeyboard, faPie, faPig, faPiggyBank, faPills, faPizza, faPizzaSlice, faPlaceOfWorship, faPlane, faPlaneAlt, faPlaneArrival, faPlaneDeparture, faPlaneSlash, faPlanetMoon, faPlanetRinged, faPlay, faPlayCircle, faPlug, faPlus, faPlusCircle, faPlusHexagon, faPlusOctagon, faPlusSquare, faPodcast, faPodium, faPodiumStar, faPoliceBox, faPoll, faPollH, faPollPeople, faPoo, faPooStorm, faPoop, faPopcorn, faPortalEnter, faPortalExit, faPortrait, faPoundSign, faPowerOff, faPray, faPrayingHands, faPrescription, faPrescriptionBottle, faPrescriptionBottleAlt, faPresentation, faPrint, faPrintSearch, faPrintSlash, faProcedures, faProjectDiagram, faProjector, faPumpMedical, faPumpSoap, faPumpkin, faPuzzlePiece, faQrcode, faQuestion, faQuestionCircle, faQuestionSquare, faQuidditch, faQuoteLeft, faQuoteRight, faQuran, faRabbit, faRabbitFast, faRacquet, faRadar, faRadiation, faRadiationAlt, faRadio, faRadioAlt, faRainbow, faRaindrops, faRam, faRampLoading, faRandom, faRaygun, faReceipt, faRecordVinyl, faRectangleLandscape, faRectanglePortrait, faRectangleWide, faRecycle, faRedo, faRedoAlt, faRefrigerator, faRegistered, faRemoveFormat, faRepeat, faRepeat1, faRepeat1Alt, faRepeatAlt, faReply, faReplyAll, faRepublican, faRestroom, faRetweet, faRetweetAlt, faRibbon, faRing, faRingsWedding, faRoad, faRobot, faRocket, faRocketLaunch, faRoute, faRouteHighway, faRouteInterstate, faRouter, faRss, faRssSquare, faRubleSign, faRuler, faRulerCombined, faRulerHorizontal, faRulerTriangle, faRulerVertical, faRunning, faRupeeSign, faRv, faSack, faSackDollar, faSadCry, faSadTear, faSalad, faSandwich, faSatellite, faSatelliteDish, faSausage, faSave, faSaxHot, faSaxophone, faScalpel, faScalpelPath, faScanner, faScannerImage, faScannerKeyboard, faScannerTouchscreen, faScarecrow, faScarf, faSchool, faScrewdriver, faScroll, faScrollOld, faScrubber, faScythe, faSdCard, faSearch, faSearchDollar, faSearchLocation, faSearchMinus, faSearchPlus, faSeedling, faSendBack, faSendBackward, faSensor, faSensorAlert, faSensorFire, faSensorOn, faSensorSmoke, faServer, faShapes, faShare, faShareAll, faShareAlt, faShareAltSquare, faShareSquare, faSheep, faShekelSign, faShield, faShieldAlt, faShieldCheck, faShieldCross, faShieldVirus, faShip, faShippingFast, faShippingTimed, faShishKebab, faShoePrints, faShoppingBag, faShoppingBasket, faShoppingCart, faShovel, faShovelSnow, faShower, faShredder, faShuttleVan, faShuttlecock, faSickle, faSigma, faSign, faSignIn, faSignInAlt, faSignLanguage, faSignOut, faSignOutAlt, faSignal, faSignal1, faSignal2, faSignal3, faSignal4, faSignalAlt, faSignalAlt1, faSignalAlt2, faSignalAlt3, faSignalAltSlash, faSignalSlash, faSignalStream, faSignature, faSimCard, faSink, faSiren, faSirenOn, faSitemap, faSkating, faSkeleton, faSkiJump, faSkiLift, faSkiing, faSkiingNordic, faSkull, faSkullCow, faSkullCrossbones, faSlash, faSledding, faSleigh, faSlidersH, faSlidersHSquare, faSlidersV, faSlidersVSquare, faSmile, faSmileBeam, faSmilePlus, faSmileWink, faSmog, faSmoke, faSmoking, faSmokingBan, faSms, faSnake, faSnooze, faSnowBlowing, faSnowboarding, faSnowflake, faSnowflakes, faSnowman, faSnowmobile, faSnowplow, faSoap, faSocks, faSolarPanel, faSolarSystem, faSort, faSortAlphaDown, faSortAlphaDownAlt, faSortAlphaUp, faSortAlphaUpAlt, faSortAlt, faSortAmountDown, faSortAmountDownAlt, faSortAmountUp, faSortAmountUpAlt, faSortCircle, faSortCircleDown, faSortCircleUp, faSortDown, faSortNumericDown, faSortNumericDownAlt, faSortNumericUp, faSortNumericUpAlt, faSortShapesDown, faSortShapesDownAlt, faSortShapesUp, faSortShapesUpAlt, faSortSizeDown, faSortSizeDownAlt, faSortSizeUp, faSortSizeUpAlt, faSortUp, faSoup, faSpa, faSpaceShuttle, faSpaceStationMoon, faSpaceStationMoonAlt, faSpade, faSparkles, faSpeaker, faSpeakers, faSpellCheck, faSpider, faSpiderBlackWidow, faSpiderWeb, faSpinner, faSpinnerThird, faSplotch, faSprayCan, faSprinkler, faSquare, faSquareFull, faSquareRoot, faSquareRootAlt, faSquirrel, faStaff, faStamp, faStar, faStarAndCrescent, faStarChristmas, faStarExclamation, faStarHalf, faStarHalfAlt, faStarOfDavid, faStarOfLife, faStarShooting, faStarfighter, faStarfighterAlt, faStars, faStarship, faStarshipFreighter, faSteak, faSteeringWheel, faStepBackward, faStepForward, faStethoscope, faStickyNote, faStocking, faStomach, faStop, faStopCircle, faStopwatch, faStopwatch20, faStore, faStoreAlt, faStoreAltSlash, faStoreSlash, faStream, faStreetView, faStretcher, faStrikethrough, faStroopwafel, faSubscript, faSubway, faSuitcase, faSuitcaseRolling, faSun, faSunCloud, faSunDust, faSunHaze, faSunglasses, faSunrise, faSunset, faSuperscript, faSurprise, faSwatchbook, faSwimmer, faSwimmingPool, faSword, faSwordLaser, faSwordLaserAlt, faSwords, faSwordsLaser, faSynagogue, faSync, faSyncAlt, faSyringe, faTable, faTableTennis, faTablet, faTabletAlt, faTabletAndroid, faTabletAndroidAlt, faTabletRugged, faTablets, faTachometer, faTachometerAlt, faTachometerAltAverage, faTachometerAltFast, faTachometerAltFastest, faTachometerAltSlow, faTachometerAltSlowest, faTachometerAverage, faTachometerFast, faTachometerFastest, faTachometerSlow, faTachometerSlowest, faTaco, faTag, faTags, faTally, faTanakh, faTape, faTasks, faTasksAlt, faTaxi, faTeeth, faTeethOpen, faTelescope, faTemperatureDown, faTemperatureFrigid, faTemperatureHigh, faTemperatureHot, faTemperatureLow, faTemperatureUp, faTenge, faTennisBall, faTerminal, faText, faTextHeight, faTextSize, faTextWidth, faTh, faThLarge, faThList, faTheaterMasks, faThermometer, faThermometerEmpty, faThermometerFull, faThermometerHalf, faThermometerQuarter, faThermometerThreeQuarters, faTheta, faThumbsDown, faThumbsUp, faThumbtack, faThunderstorm, faThunderstormMoon, faThunderstormSun, faTicket, faTicketAlt, faTilde, faTimes, faTimesCircle, faTimesHexagon, faTimesOctagon, faTimesSquare, faTint, faTintSlash, faTire, faTireFlat, faTirePressureWarning, faTireRugged, faTired, faToggleOff, faToggleOn, faToilet, faToiletPaper, faToiletPaperAlt, faToiletPaperSlash, faTombstone, faTombstoneAlt, faToolbox, faTools, faTooth, faToothbrush, faTorah, faToriiGate, faTornado, faTractor, faTrademark, faTrafficCone, faTrafficLight, faTrafficLightGo, faTrafficLightSlow, faTrafficLightStop, faTrailer, faTrain, faTram, faTransgender, faTransgenderAlt, faTransporter, faTransporter1, faTransporter2, faTransporter3, faTransporterEmpty, faTrash, faTrashAlt, faTrashRestore, faTrashRestoreAlt, faTrashUndo, faTrashUndoAlt, faTreasureChest, faTree, faTreeAlt, faTreeChristmas, faTreeDecorated, faTreeLarge, faTreePalm, faTrees, faTriangle, faTriangleMusic, faTrophy, faTrophyAlt, faTruck, faTruckContainer, faTruckCouch, faTruckLoading, faTruckMonster, faTruckMoving, faTruckPickup, faTruckPlow, faTruckRamp, faTrumpet, faTshirt, faTty, faTurkey, faTurntable, faTurtle, faTv, faTvAlt, faTvMusic, faTvRetro, faTypewriter, faUfo, faUfoBeam, faUmbrella, faUmbrellaBeach, faUnderline, faUndo, faUndoAlt, faUnicorn, faUnion, faUniversalAccess, faUniversity, faUnlink, faUnlock, faUnlockAlt, faUpload, faUsbDrive, faUsdCircle, faUsdSquare, faUser, faUserAlien, faUserAlt, faUserAltSlash, faUserAstronaut, faUserChart, faUserCheck, faUserCircle, faUserClock, faUserCog, faUserCowboy, faUserCrown, faUserEdit, faUserFriends, faUserGraduate, faUserHardHat, faUserHeadset, faUserInjured, faUserLock, faUserMd, faUserMdChat, faUserMinus, faUserMusic, faUserNinja, faUserNurse, faUserPlus, faUserRobot, faUserSecret, faUserShield, faUserSlash, faUserTag, faUserTie, faUserTimes, faUserUnlock, faUserVisor, faUsers, faUsersClass, faUsersCog, faUsersCrown, faUsersMedical, faUsersSlash, faUtensilFork, faUtensilKnife, faUtensilSpoon, faUtensils, faUtensilsAlt, faVacuum, faVacuumRobot, faValueAbsolute, faVectorSquare, faVenus, faVenusDouble, faVenusMars, faVest, faVestPatches, faVhs, faVial, faVials, faVideo, faVideoPlus, faVideoSlash, faVihara, faViolin, faVirus, faVirusSlash, faViruses, faVoicemail, faVolcano, faVolleyballBall, faVolume, faVolumeDown, faVolumeMute, faVolumeOff, faVolumeSlash, faVolumeUp, faVoteNay, faVoteYea, faVrCardboard, faWagonCovered, faWalker, faWalkieTalkie, faWalking, faWallet, faWand, faWandMagic, faWarehouse, faWarehouseAlt, faWasher, faWatch, faWatchCalculator, faWatchFitness, faWater, faWaterLower, faWaterRise, faWaveSine, faWaveSquare, faWaveTriangle, faWaveform, faWaveformPath, faWebcam, faWebcamSlash, faWeight, faWeightHanging, faWhale, faWheat, faWheelchair, faWhistle, faWifi, faWifi1, faWifi2, faWifiSlash, faWind, faWindTurbine, faWindWarning, faWindow, faWindowAlt, faWindowClose, faWindowFrame, faWindowFrameOpen, faWindowMaximize, faWindowMinimize, faWindowRestore, faWindsock, faWineBottle, faWineGlass, faWineGlassAlt, faWonSign, faWreath, faWrench, faXRay, faYenSign, faYinYang };\n","/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (Commercial License)\n */\nvar prefix = \"fas\";\nvar faAbacus = {\n prefix: 'fas',\n iconName: 'abacus',\n icon: [576, 512, [], \"f640\", \"M32 0C14.33 0 0 14.33 0 32v464c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V32C64 14.33 49.67 0 32 0zm512 0c-17.67 0-32 14.33-32 32v464c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V32c0-17.67-14.33-32-32-32zm-80 32h-32c-8.84 0-16 7.16-16 16v24H256V48c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v24h-32V48c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v96c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-24h32v24c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-24h160v24c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16zM352 208c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v24h-32v-24c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v24h-32v-24c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v96c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-24h32v24c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-24h32v24c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-24h128v-48H352v-24zm112 144h-32c-8.84 0-16 7.16-16 16v24H256v-24c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v24h-32v-24c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v96c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-24h32v24c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-24h160v24c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-96c0-8.84-7.16-16-16-16z\"]\n};\nvar faAcorn = {\n prefix: 'fas',\n iconName: 'acorn',\n icon: [448, 512, [], \"f6ae\", \"M175.11 487.55L224 512l48.89-24.45C360.6 443.7 416 354.06 416 256H32c0 98.06 55.4 187.7 143.11 231.55zM352 64H251.5c3.4-9.4 8.47-18.18 15.16-26.04 5.56-6.52 5.31-15.91-.62-21.86L254.69 4.78c-3.12-3.16-7.72-5.14-11.97-4.72-4.38.14-8.5 2.08-11.31 5.3-14.75 16.8-24.55 37.06-29.39 58.65H96c-53.02 0-96 42.98-96 96v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32C448 106.98 405.02 64 352 64z\"]\n};\nvar faAd = {\n prefix: 'fas',\n iconName: 'ad',\n icon: [512, 512, [], \"f641\", \"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\"]\n};\nvar faAddressBook = {\n prefix: 'fas',\n iconName: 'address-book',\n icon: [448, 512, [], \"f2b9\", \"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\"]\n};\nvar faAddressCard = {\n prefix: 'fas',\n iconName: 'address-card',\n icon: [576, 512, [], \"f2bb\", \"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\"]\n};\nvar faAdjust = {\n prefix: 'fas',\n iconName: 'adjust',\n icon: [512, 512, [], \"f042\", \"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\"]\n};\nvar faAirConditioner = {\n prefix: 'fas',\n iconName: 'air-conditioner',\n icon: [576, 512, [], \"f8f4\", \"M544,0H32A32,32,0,0,0,0,32V192a32,32,0,0,0,32,32H544a32,32,0,0,0,32-32V32A32,32,0,0,0,544,0ZM512,160H64V128H512ZM216,424a40,40,0,0,1-40,40h-6.22c-20,0-38.18-13.88-41.28-33.61-2.88-18.41,6.92-34.22,21.84-41.47,5.73-2.78,9.66-8.25,9.66-14.63V356.67a16.1,16.1,0,0,0-21.42-15.17A87.55,87.55,0,0,0,80.7,435.24C86.26,479.82,126.55,512,171.47,512H176a88,88,0,0,0,88-88V256H216ZM437.42,309.5A16.1,16.1,0,0,0,416,324.67v17.62c0,6.38,3.93,11.85,9.66,14.63,14.92,7.25,24.72,23.06,21.84,41.47C444.4,418.12,426.2,432,406.22,432H400a40,40,0,0,1-40-40V256H312V392a88,88,0,0,0,88,88h4.53c44.92,0,85.21-32.18,90.77-76.76A87.55,87.55,0,0,0,437.42,309.5Z\"]\n};\nvar faAirFreshener = {\n prefix: 'fas',\n iconName: 'air-freshener',\n icon: [512, 512, [], \"f5d0\", \"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\"]\n};\nvar faAlarmClock = {\n prefix: 'fas',\n iconName: 'alarm-clock',\n icon: [512, 512, [], \"f34e\", \"M96 0A96 96 0 0 0 0 96a94.81 94.81 0 0 0 15.3 51.26L161.2 25.68A95.63 95.63 0 0 0 96 0zm320 0a95.66 95.66 0 0 0-65.18 25.66l145.89 121.57A94.85 94.85 0 0 0 512 96a96 96 0 0 0-96-96zM256 64C132.3 64 32 164.29 32 288a222.7 222.7 0 0 0 44.79 134l-40.1 40.09a16 16 0 0 0 0 22.63l22.62 22.62a16 16 0 0 0 22.63 0L122 467.22a222.82 222.82 0 0 0 268 0l40.1 40.09a16 16 0 0 0 22.62 0l22.63-22.62a16 16 0 0 0 0-22.63L435.25 422A222.69 222.69 0 0 0 480 288c0-123.71-100.26-224-224-224zm90 291.51l-20 25a16 16 0 0 1-22.49 2.5L239 331.39a40 40 0 0 1-15-31.23V176a16 16 0 0 1 16-16h32a16 16 0 0 1 16 16v112.62l55.5 44.4a16 16 0 0 1 2.5 22.49z\"]\n};\nvar faAlarmExclamation = {\n prefix: 'fas',\n iconName: 'alarm-exclamation',\n icon: [512, 512, [], \"f843\", \"M96 0A96 96 0 0 0 0 96a94.81 94.81 0 0 0 15.3 51.26L161.2 25.68A95.63 95.63 0 0 0 96 0zm320 0a95.66 95.66 0 0 0-65.18 25.66l145.89 121.57A94.85 94.85 0 0 0 512 96a96 96 0 0 0-96-96zM256 64C132.3 64 32 164.29 32 288a222.7 222.7 0 0 0 44.79 134l-40.1 40.09a16 16 0 0 0 0 22.63l22.62 22.62a16 16 0 0 0 22.63 0L122 467.22a222.82 222.82 0 0 0 268 0l40.1 40.09a16 16 0 0 0 22.62 0l22.63-22.62a16 16 0 0 0 0-22.63L435.25 422A222.69 222.69 0 0 0 480 288c0-123.71-100.26-224-224-224zm0 352a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm25.4-110.4a16 16 0 0 1-15.9 14.4h-19a16 16 0 0 1-15.9-14.4l-12.8-128a16.06 16.06 0 0 1 15.9-17.6h44.6a16 16 0 0 1 15.9 17.6z\"]\n};\nvar faAlarmPlus = {\n prefix: 'fas',\n iconName: 'alarm-plus',\n icon: [512, 512, [], \"f844\", \"M96 0A96 96 0 0 0 0 96a94.81 94.81 0 0 0 15.3 51.26L161.2 25.68A95.63 95.63 0 0 0 96 0zm320 0a95.66 95.66 0 0 0-65.18 25.66l145.89 121.57A94.85 94.85 0 0 0 512 96a96 96 0 0 0-96-96zM256 64C132.3 64 32 164.29 32 288a222.7 222.7 0 0 0 44.79 134l-40.1 40.09a16 16 0 0 0 0 22.63l22.62 22.62a16 16 0 0 0 22.63 0L122 467.22a222.82 222.82 0 0 0 268 0l40.1 40.09a16 16 0 0 0 22.62 0l22.63-22.62a16 16 0 0 0 0-22.63L435.25 422A222.69 222.69 0 0 0 480 288c0-123.71-100.26-224-224-224zm112 232a16 16 0 0 1-16 16h-72v72a16 16 0 0 1-16 16h-16a16 16 0 0 1-16-16v-72h-72a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h72v-72a16 16 0 0 1 16-16h16a16 16 0 0 1 16 16v72h72a16 16 0 0 1 16 16z\"]\n};\nvar faAlarmSnooze = {\n prefix: 'fas',\n iconName: 'alarm-snooze',\n icon: [512, 512, [], \"f845\", \"M96 0A96 96 0 0 0 0 96a94.81 94.81 0 0 0 15.3 51.26L161.2 25.68A95.63 95.63 0 0 0 96 0zm320 0a95.66 95.66 0 0 0-65.18 25.66l145.89 121.57A94.85 94.85 0 0 0 512 96a96 96 0 0 0-96-96zM256 64C132.3 64 32 164.29 32 288a222.7 222.7 0 0 0 44.79 134l-40.1 40.09a16 16 0 0 0 0 22.63l22.62 22.62a16 16 0 0 0 22.63 0L122 467.22a222.82 222.82 0 0 0 268 0l40.1 40.09a16 16 0 0 0 22.62 0l22.63-22.62a16 16 0 0 0 0-22.63L435.25 422A222.69 222.69 0 0 0 480 288c0-123.71-100.26-224-224-224zm82.7 159l-96.8 121H320a16 16 0 0 1 16 16v16a16 16 0 0 1-16 16H192a24 24 0 0 1-18.74-39L270 232h-78a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h128a24 24 0 0 1 18.73 39z\"]\n};\nvar faAlbum = {\n prefix: 'fas',\n iconName: 'album',\n icon: [448, 512, [], \"f89f\", \"M224 224a32 32 0 1 0 32 32 32 32 0 0 0-32-32zM416 32H32A32 32 0 0 0 0 64v384a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32zM224 416a160 160 0 1 1 160-160 160 160 0 0 1-160 160z\"]\n};\nvar faAlbumCollection = {\n prefix: 'fas',\n iconName: 'album-collection',\n icon: [512, 512, [], \"f8a0\", \"M496 104a24 24 0 0 0-24-24H40a24 24 0 0 0-24 24v24h480zm-16-80a24 24 0 0 0-24-24H56a24 24 0 0 0-24 24v24h448zM256 325.65c-16.63 0-30 9.93-29.86 22.09s13.5 21.72 29.86 21.72 29.73-9.68 29.87-21.72-13.23-22.09-29.87-22.09zM480 160H32A32 32 0 0 0 .13 194.9l26.19 288A32 32 0 0 0 58.18 512h395.64a32 32 0 0 0 31.86-29.1l26.19-288A32 32 0 0 0 480 160zM256 472.89c-94.26 0-174.39-54.53-179.21-125.15C71.71 273.1 151.82 209.4 256 209.4s184.29 63.7 179.21 138.34c-4.82 70.63-84.95 125.15-179.21 125.15z\"]\n};\nvar faAlicorn = {\n prefix: 'fas',\n iconName: 'alicorn',\n icon: [640, 512, [], \"f6b0\", \"M631.98 32H531.73c5.93-6.14 10.4-13.63 12.18-22.36 1.01-4.96-2.88-9.64-7.94-9.64H416c-70.69 0-128 57.31-128 128h-.08c-63.92 0-104.2-36.78-127.66-90.27-3.22-7.35-13.61-7.76-17.04-.5C133.49 57.82 128 80.8 128 105.1c0 67.04 51.01 133.09 128 147.74v3.17c-76.89 0-133.8-49.67-152.67-108.99-5.58 4.17-10.75 8.86-15.33 14.1V160c-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.59 102.04 22.33V496c0 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.74L544 83.3l92.42-36.65c6.59-4.38 3.48-14.65-4.44-14.65zM480 96c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faAlien = {\n prefix: 'fas',\n iconName: 'alien',\n icon: [448, 512, [], \"f8f5\", \"M224,0C100.28125,0,0,88.0293,0,232.45117,0,344.22852,134.21484,457.04883,194.86328,502.32422a48.70766,48.70766,0,0,0,58.27344,0C313.78516,457.04883,448,344.22852,448,232.45117,448,88.0293,347.71875,0,224,0ZM176,320H144a80.00021,80.00021,0,0,1-80-80,15.99954,15.99954,0,0,1,16-16h32a79.999,79.999,0,0,1,80,80A16.00079,16.00079,0,0,1,176,320Zm128,0H272a16.00079,16.00079,0,0,1-16-16,79.999,79.999,0,0,1,80-80h32a15.99954,15.99954,0,0,1,16,16A80.00021,80.00021,0,0,1,304,320Z\"]\n};\nvar faAlienMonster = {\n prefix: 'fas',\n iconName: 'alien-monster',\n icon: [576, 512, [], \"f8f6\", \"M560,128H528a15.99954,15.99954,0,0,0-16,16v80H480V176a15.99954,15.99954,0,0,0-16-16H416V96h48a16.00079,16.00079,0,0,0,16-16V48a15.99954,15.99954,0,0,0-16-16H432a15.99954,15.99954,0,0,0-16,16V64H368a15.99954,15.99954,0,0,0-16,16v48H224V80a15.99954,15.99954,0,0,0-16-16H160V48a15.99954,15.99954,0,0,0-16-16H112A15.99954,15.99954,0,0,0,96,48V80a16.00079,16.00079,0,0,0,16,16h48v64H112a15.99954,15.99954,0,0,0-16,16v48H64V144a15.99954,15.99954,0,0,0-16-16H16A15.99954,15.99954,0,0,0,0,144V272a16.00079,16.00079,0,0,0,16,16H64v80a16.00079,16.00079,0,0,0,16,16h48v80a16.00079,16.00079,0,0,0,16,16h96a16.00079,16.00079,0,0,0,16-16V432a15.99954,15.99954,0,0,0-16-16H192V384H384v32H336a15.99954,15.99954,0,0,0-16,16v32a16.00079,16.00079,0,0,0,16,16h96a16.00079,16.00079,0,0,0,16-16V384h48a16.00079,16.00079,0,0,0,16-16V288h48a16.00079,16.00079,0,0,0,16-16V144A15.99954,15.99954,0,0,0,560,128ZM224,320H160V224h64Zm192,0H352V224h64Z\"]\n};\nvar faAlignCenter = {\n prefix: 'fas',\n iconName: 'align-center',\n icon: [448, 512, [], \"f037\", \"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\"]\n};\nvar faAlignJustify = {\n prefix: 'fas',\n iconName: 'align-justify',\n icon: [448, 512, [], \"f039\", \"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\"]\n};\nvar faAlignLeft = {\n prefix: 'fas',\n iconName: 'align-left',\n icon: [448, 512, [], \"f036\", \"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\"]\n};\nvar faAlignRight = {\n prefix: 'fas',\n iconName: 'align-right',\n icon: [448, 512, [], \"f038\", \"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\"]\n};\nvar faAlignSlash = {\n prefix: 'fas',\n iconName: 'align-slash',\n icon: [640, 512, [], \"f846\", \"M633.82 458.1L496.54 352H528a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H413.73l-82.81-64H528a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H248.12l-82.81-64H528a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H112a15.82 15.82 0 0 0-15 11.18L45.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.45zM112 416a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h340.83L370 416zm0-64h175.21l-82.8-64H112a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16z\"]\n};\nvar faAllergies = {\n prefix: 'fas',\n iconName: 'allergies',\n icon: [448, 512, [], \"f461\", \"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\"]\n};\nvar faAmbulance = {\n prefix: 'fas',\n iconName: 'ambulance',\n icon: [640, 512, [], \"f0f9\", \"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\"]\n};\nvar faAmericanSignLanguageInterpreting = {\n prefix: 'fas',\n iconName: 'american-sign-language-interpreting',\n icon: [640, 512, [], \"f2a3\", \"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\"]\n};\nvar faAmpGuitar = {\n prefix: 'fas',\n iconName: 'amp-guitar',\n icon: [512, 512, [], \"f8a1\", \"M120 224a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm272 0a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm72-144h-61.5C377.75 52.71 321.51 0 256 0S134.25 52.71 109.5 80H48a48 48 0 0 0-48 48v336a48 48 0 0 0 48 48h416a48 48 0 0 0 48-48V128a48 48 0 0 0-48-48zM256 48c26.9 0 54 14.79 76.25 32h-152.5C202 62.77 229.1 48 256 48zM96 400a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm32 48a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm-16-112a16 16 0 1 1 16 16 16 16 0 0 1-16-16zm48 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm32 48a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm-16-112a16 16 0 1 1 16 16 16 16 0 0 1-16-16zm48 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm32 48a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm-16-112a16 16 0 1 1 16 16 16 16 0 0 1-16-16zm48 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm32 48a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm-16-112a16 16 0 1 1 16 16 16 16 0 0 1-16-16zm48 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm32 48a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm-16-112a16 16 0 1 1 16 16 16 16 0 0 1-16-16zm48 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm32-144H64V144h384zm-248-32a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm112 0a24 24 0 1 0-24-24 24 24 0 0 0 24 24z\"]\n};\nvar faAnalytics = {\n prefix: 'fas',\n iconName: 'analytics',\n icon: [576, 512, [], \"f643\", \"M510.62 92.63C516.03 94.74 521.85 96 528 96c26.51 0 48-21.49 48-48S554.51 0 528 0s-48 21.49-48 48c0 2.43.37 4.76.71 7.09l-95.34 76.27c-5.4-2.11-11.23-3.37-17.38-3.37s-11.97 1.26-17.38 3.37L255.29 55.1c.35-2.33.71-4.67.71-7.1 0-26.51-21.49-48-48-48s-48 21.49-48 48c0 4.27.74 8.34 1.78 12.28l-101.5 101.5C56.34 160.74 52.27 160 48 160c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-4.27-.74-8.34-1.78-12.28l101.5-101.5C199.66 95.26 203.73 96 208 96c6.15 0 11.97-1.26 17.38-3.37l95.34 76.27c-.35 2.33-.71 4.67-.71 7.1 0 26.51 21.49 48 48 48s48-21.49 48-48c0-2.43-.37-4.76-.71-7.09l95.32-76.28zM400 320h-64c-8.84 0-16 7.16-16 16v160c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V336c0-8.84-7.16-16-16-16zm160-128h-64c-8.84 0-16 7.16-16 16v288c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V208c0-8.84-7.16-16-16-16zm-320 0h-64c-8.84 0-16 7.16-16 16v288c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V208c0-8.84-7.16-16-16-16zM80 352H16c-8.84 0-16 7.16-16 16v128c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V368c0-8.84-7.16-16-16-16z\"]\n};\nvar faAnchor = {\n prefix: 'fas',\n iconName: 'anchor',\n icon: [576, 512, [], \"f13d\", \"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\"]\n};\nvar faAngel = {\n prefix: 'fas',\n iconName: 'angel',\n icon: [576, 512, [], \"f779\", \"M208 144c0 44.2 35.8 80 80 80s80-35.8 80-80-35.8-80-80-80-80 35.8-80 80zm-23.5-42.6c4.1-9.9 9.9-18.9 16.6-27.1-5.8-4.1-9.1-7.9-9.1-10.3 0-8 34-32 96-32s96 24 96 32c0 2.3-3.3 6.1-9.1 10.3 6.6 8.3 12.4 17.2 16.6 27.1C406.7 90.9 416 78 416 64c0-35.3-57.3-64-128-64S160 28.7 160 64c0 14 9.3 26.9 24.5 37.4zm387.3 351.7l-38.2-78.6c-6.6-13.5-6.6-29.6 0-43.1 4.8-9.8 8.7-16.7 11.9-22.1C555 292.7 560 282.8 560 256c0-51.1-46.9-96-100.4-96-24.8 0-49 10.3-66.3 28.1l-72.7 73.4c-10.3-3.4-21.2-5.4-32.5-5.4s-22.1 2-32.5 5.4L183 188.2c-17.5-18-41.7-28.2-66.5-28.2C63 160 16 204.9 16 256c0 26.8 5 36.7 14.5 53.2 3.2 5.5 7.1 12.3 11.9 22.1 6.6 13.5 6.6 29.6 0 43.1L4.2 453.1C-2.1 466-1.3 480.9 6.3 493c7.5 11.9 20.2 19 34.2 19h495.1c13.9 0 26.7-7.1 34.2-19 7.5-12.1 8.3-27.1 2-39.9zM195.4 313.2L120 464H52.2l33.4-68.6c13-26.6 13-58.5 0-85.1-5.4-11.2-9.9-18.9-13.5-25.1-7.2-12.4-8.1-14-8.1-29.2 0-24.7 25.5-48 52.4-48 12.1 0 23.5 4.9 32.2 13.9l65.1 65.6c-7.2 7.5-13.5 16.1-18.3 25.7zM456 464l-75.4-150.8c-4.8-9.6-11.1-18.2-18.4-25.7l65.3-65.8c8.6-8.8 20-13.7 32.1-13.7 27 0 52.4 23.3 52.4 48 0 15.2-.9 16.8-8.1 29.2-3.6 6.2-8 14-13.5 25.1-13 26.6-13 58.5 0 85.1l33.4 68.6H456z\"]\n};\nvar faAngleDoubleDown = {\n prefix: 'fas',\n iconName: 'angle-double-down',\n icon: [320, 512, [], \"f103\", \"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\"]\n};\nvar faAngleDoubleLeft = {\n prefix: 'fas',\n iconName: 'angle-double-left',\n icon: [448, 512, [], \"f100\", \"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\"]\n};\nvar faAngleDoubleRight = {\n prefix: 'fas',\n iconName: 'angle-double-right',\n icon: [448, 512, [], \"f101\", \"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\"]\n};\nvar faAngleDoubleUp = {\n prefix: 'fas',\n iconName: 'angle-double-up',\n icon: [320, 512, [], \"f102\", \"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\"]\n};\nvar faAngleDown = {\n prefix: 'fas',\n iconName: 'angle-down',\n icon: [320, 512, [], \"f107\", \"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\"]\n};\nvar faAngleLeft = {\n prefix: 'fas',\n iconName: 'angle-left',\n icon: [256, 512, [], \"f104\", \"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\"]\n};\nvar faAngleRight = {\n prefix: 'fas',\n iconName: 'angle-right',\n icon: [256, 512, [], \"f105\", \"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\"]\n};\nvar faAngleUp = {\n prefix: 'fas',\n iconName: 'angle-up',\n icon: [320, 512, [], \"f106\", \"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\"]\n};\nvar faAngry = {\n prefix: 'fas',\n iconName: 'angry',\n icon: [496, 512, [], \"f556\", \"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\"]\n};\nvar faAnkh = {\n prefix: 'fas',\n iconName: 'ankh',\n icon: [320, 512, [], \"f644\", \"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\"]\n};\nvar faAppleAlt = {\n prefix: 'fas',\n iconName: 'apple-alt',\n icon: [448, 512, [], \"f5d1\", \"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\"]\n};\nvar faAppleCrate = {\n prefix: 'fas',\n iconName: 'apple-crate',\n icon: [512, 512, [], \"f6b1\", \"M318.2 192h159.79c5.26-39.47-5.15-102.65-53.82-111.39-18.13-3.03-51.9 6.18-72.49 17.69-17.01-9.52-42.45-16.98-61.15-17.79 1.82 2.21 3.83 4.17 5.5 6.58 20.84 30.15 25.74 72.3 22.17 104.91zM210.53 50.47c11.29-12.19 14.43-32.03 13.22-50.22-12.88-.86-35.67-.12-50.02 13.28-16.53 16.6-13.77 46.36-13.22 50.22 18.47 1.23 37.77-1.85 50.02-13.28zm191.69 0c11.29-12.19 14.43-32.03 13.22-50.22-12.88-.86-35.67-.12-50.02 13.28-16.53 16.6-13.77 46.36-13.22 50.22 18.47 1.23 37.77-1.85 50.02-13.28zM286.3 192c5.26-39.47-5.15-102.65-53.82-111.39-18.13-3.03-51.9 6.18-72.48 17.69-20.66-11.56-54.43-20.71-72.48-17.69C38.91 89.34 28.53 152.88 33.7 192h252.6zM496 224H16c-8.84 0-16 7.16-16 16v112h512V240c0-8.84-7.16-16-16-16zM64 304c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm384 0c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zM0 496c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16V384H0v112zm448-64c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16zm-384 0c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16z\"]\n};\nvar faArchive = {\n prefix: 'fas',\n iconName: 'archive',\n icon: [512, 512, [], \"f187\", \"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\"]\n};\nvar faArchway = {\n prefix: 'fas',\n iconName: 'archway',\n icon: [576, 512, [], \"f557\", \"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\"]\n};\nvar faArrowAltCircleDown = {\n prefix: 'fas',\n iconName: 'arrow-alt-circle-down',\n icon: [512, 512, [], \"f358\", \"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\"]\n};\nvar faArrowAltCircleLeft = {\n prefix: 'fas',\n iconName: 'arrow-alt-circle-left',\n icon: [512, 512, [], \"f359\", \"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\"]\n};\nvar faArrowAltCircleRight = {\n prefix: 'fas',\n iconName: 'arrow-alt-circle-right',\n icon: [512, 512, [], \"f35a\", \"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\"]\n};\nvar faArrowAltCircleUp = {\n prefix: 'fas',\n iconName: 'arrow-alt-circle-up',\n icon: [512, 512, [], \"f35b\", \"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\"]\n};\nvar faArrowAltDown = {\n prefix: 'fas',\n iconName: 'arrow-alt-down',\n icon: [448, 512, [], \"f354\", \"M176 32h96c13.3 0 24 10.7 24 24v200h103.8c21.4 0 32.1 25.8 17 41L241 473c-9.4 9.4-24.6 9.4-34 0L31.3 297c-15.1-15.1-4.4-41 17-41H152V56c0-13.3 10.7-24 24-24z\"]\n};\nvar faArrowAltFromBottom = {\n prefix: 'fas',\n iconName: 'arrow-alt-from-bottom',\n icon: [384, 512, [], \"f346\", \"M360 480H24c-13.3 0-24-10.7-24-24v-24c0-13.3 10.7-24 24-24h336c13.3 0 24 10.7 24 24v24c0 13.3-10.7 24-24 24zM256 360V224h87.7c17.8 0 26.7-21.5 14.1-34.1L205.7 37.7c-7.5-7.5-19.8-7.5-27.3 0L26.1 189.9C13.5 202.5 22.5 224 40.3 224H128v136c0 13.3 10.7 24 24 24h80c13.3 0 24-10.7 24-24z\"]\n};\nvar faArrowAltFromLeft = {\n prefix: 'fas',\n iconName: 'arrow-alt-from-left',\n icon: [448, 512, [], \"f347\", \"M0 424V88c0-13.3 10.7-24 24-24h24c13.3 0 24 10.7 24 24v336c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24zm120-104h136v87.7c0 17.8 21.5 26.7 34.1 14.1l152.2-152.2c7.5-7.5 7.5-19.8 0-27.3L290.1 90.1c-12.6-12.6-34.1-3.7-34.1 14.1V192H120c-13.3 0-24 10.7-24 24v80c0 13.3 10.7 24 24 24z\"]\n};\nvar faArrowAltFromRight = {\n prefix: 'fas',\n iconName: 'arrow-alt-from-right',\n icon: [448, 512, [], \"f348\", \"M448 88v336c0 13.3-10.7 24-24 24h-24c-13.3 0-24-10.7-24-24V88c0-13.3 10.7-24 24-24h24c13.3 0 24 10.7 24 24zM328 192H192v-87.7c0-17.8-21.5-26.7-34.1-14.1L5.7 242.3c-7.5 7.5-7.5 19.8 0 27.3l152.2 152.2c12.6 12.6 34.1 3.7 34.1-14.1V320h136c13.3 0 24-10.7 24-24v-80c0-13.3-10.7-24-24-24z\"]\n};\nvar faArrowAltFromTop = {\n prefix: 'fas',\n iconName: 'arrow-alt-from-top',\n icon: [384, 512, [], \"f349\", \"M24 32h336c13.3 0 24 10.7 24 24v24c0 13.3-10.7 24-24 24H24C10.7 104 0 93.3 0 80V56c0-13.3 10.7-24 24-24zm104 120v136H40.3c-17.8 0-26.7 21.5-14.1 34.1l152.2 152.2c7.5 7.5 19.8 7.5 27.3 0l152.2-152.2c12.6-12.6 3.7-34.1-14.1-34.1H256V152c0-13.3-10.7-24-24-24h-80c-13.3 0-24 10.7-24 24z\"]\n};\nvar faArrowAltLeft = {\n prefix: 'fas',\n iconName: 'arrow-alt-left',\n icon: [448, 512, [], \"f355\", \"M448 208v96c0 13.3-10.7 24-24 24H224v103.8c0 21.4-25.8 32.1-41 17L7 273c-9.4-9.4-9.4-24.6 0-34L183 63.3c15.1-15.1 41-4.4 41 17V184h200c13.3 0 24 10.7 24 24z\"]\n};\nvar faArrowAltRight = {\n prefix: 'fas',\n iconName: 'arrow-alt-right',\n icon: [448, 512, [], \"f356\", \"M0 304v-96c0-13.3 10.7-24 24-24h200V80.2c0-21.4 25.8-32.1 41-17L441 239c9.4 9.4 9.4 24.6 0 34L265 448.7c-15.1 15.1-41 4.4-41-17V328H24c-13.3 0-24-10.7-24-24z\"]\n};\nvar faArrowAltSquareDown = {\n prefix: 'fas',\n iconName: 'arrow-alt-square-down',\n icon: [448, 512, [], \"f350\", \"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 48zm-268 60v116h-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.5H268V140c0-6.6-5.4-12-12-12h-64c-6.6 0-12 5.4-12 12z\"]\n};\nvar faArrowAltSquareLeft = {\n prefix: 'fas',\n iconName: 'arrow-alt-square-left',\n icon: [448, 512, [], \"f351\", \"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 48zm-60-268H224v-70.9c0-10.7-13-16.1-20.5-8.5L89.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\"]\n};\nvar faArrowAltSquareRight = {\n prefix: 'fas',\n iconName: 'arrow-alt-square-right',\n icon: [448, 512, [], \"f352\", \"M48 32h352c26.5 0 48 21.5 48 48v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48zm60 268h116v70.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.5V212H108c-6.6 0-12 5.4-12 12v64c0 6.6 5.4 12 12 12z\"]\n};\nvar faArrowAltSquareUp = {\n prefix: 'fas',\n iconName: 'arrow-alt-square-up',\n icon: [448, 512, [], \"f353\", \"M0 432V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48zm268-60V256h70.9c10.7 0 16.1-13 8.5-20.5L232.5 121.2c-4.7-4.7-12.2-4.7-16.9 0l-115 114.3C93 243 98.4 256 109.1 256H180v116c0 6.6 5.4 12 12 12h64c6.6 0 12-5.4 12-12z\"]\n};\nvar faArrowAltToBottom = {\n prefix: 'fas',\n iconName: 'arrow-alt-to-bottom',\n icon: [384, 512, [], \"f34a\", \"M360 480H24c-13.3 0-24-10.7-24-24v-24c0-13.3 10.7-24 24-24h336c13.3 0 24 10.7 24 24v24c0 13.3-10.7 24-24 24zM128 56v136H40.3c-17.8 0-26.7 21.5-14.1 34.1l152.2 152.2c7.5 7.5 19.8 7.5 27.3 0l152.2-152.2c12.6-12.6 3.7-34.1-14.1-34.1H256V56c0-13.3-10.7-24-24-24h-80c-13.3 0-24 10.7-24 24z\"]\n};\nvar faArrowAltToLeft = {\n prefix: 'fas',\n iconName: 'arrow-alt-to-left',\n icon: [448, 512, [], \"f34b\", \"M0 424V88c0-13.3 10.7-24 24-24h24c13.3 0 24 10.7 24 24v336c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24zm424-232H288v-87.7c0-17.8-21.5-26.7-34.1-14.1L101.7 242.3c-7.5 7.5-7.5 19.8 0 27.3l152.2 152.2c12.6 12.6 34.1 3.7 34.1-14.1V320h136c13.3 0 24-10.7 24-24v-80c0-13.3-10.7-24-24-24z\"]\n};\nvar faArrowAltToRight = {\n prefix: 'fas',\n iconName: 'arrow-alt-to-right',\n icon: [448, 512, [], \"f34c\", \"M448 88v336c0 13.3-10.7 24-24 24h-24c-13.3 0-24-10.7-24-24V88c0-13.3 10.7-24 24-24h24c13.3 0 24 10.7 24 24zM24 320h136v87.7c0 17.8 21.5 26.7 34.1 14.1l152.2-152.2c7.5-7.5 7.5-19.8 0-27.3L194.1 90.1c-12.6-12.6-34.1-3.7-34.1 14.1V192H24c-13.3 0-24 10.7-24 24v80c0 13.3 10.7 24 24 24z\"]\n};\nvar faArrowAltToTop = {\n prefix: 'fas',\n iconName: 'arrow-alt-to-top',\n icon: [384, 512, [], \"f34d\", \"M24 32h336c13.3 0 24 10.7 24 24v24c0 13.3-10.7 24-24 24H24C10.7 104 0 93.3 0 80V56c0-13.3 10.7-24 24-24zm232 424V320h87.7c17.8 0 26.7-21.5 14.1-34.1L205.7 133.7c-7.5-7.5-19.8-7.5-27.3 0L26.1 285.9C13.5 298.5 22.5 320 40.3 320H128v136c0 13.3 10.7 24 24 24h80c13.3 0 24-10.7 24-24z\"]\n};\nvar faArrowAltUp = {\n prefix: 'fas',\n iconName: 'arrow-alt-up',\n icon: [448, 512, [], \"f357\", \"M272 480h-96c-13.3 0-24-10.7-24-24V256H48.2c-21.4 0-32.1-25.8-17-41L207 39c9.4-9.4 24.6-9.4 34 0l175.8 176c15.1 15.1 4.4 41-17 41H296v200c0 13.3-10.7 24-24 24z\"]\n};\nvar faArrowCircleDown = {\n prefix: 'fas',\n iconName: 'arrow-circle-down',\n icon: [512, 512, [], \"f0ab\", \"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\"]\n};\nvar faArrowCircleLeft = {\n prefix: 'fas',\n iconName: 'arrow-circle-left',\n icon: [512, 512, [], \"f0a8\", \"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\"]\n};\nvar faArrowCircleRight = {\n prefix: 'fas',\n iconName: 'arrow-circle-right',\n icon: [512, 512, [], \"f0a9\", \"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\"]\n};\nvar faArrowCircleUp = {\n prefix: 'fas',\n iconName: 'arrow-circle-up',\n icon: [512, 512, [], \"f0aa\", \"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\"]\n};\nvar faArrowDown = {\n prefix: 'fas',\n iconName: 'arrow-down',\n icon: [448, 512, [], \"f063\", \"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\"]\n};\nvar faArrowFromBottom = {\n prefix: 'fas',\n iconName: 'arrow-from-bottom',\n icon: [384, 512, [], \"f342\", \"M360 480H24c-13.3 0-24-10.7-24-24v-24c0-13.3 10.7-24 24-24h336c13.3 0 24 10.7 24 24v24c0 13.3-10.7 24-24 24zM90.4 216.5l65.6-65.6V360c0 13.3 10.7 24 24 24h24c13.3 0 24-10.7 24-24V150.9l65.6 65.6c9.4 9.4 24.6 9.4 33.9 0l17-17c9.4-9.4 9.4-24.6 0-33.9L209 30.1c-9.4-9.4-24.6-9.4-33.9 0L39.5 165.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0z\"]\n};\nvar faArrowFromLeft = {\n prefix: 'fas',\n iconName: 'arrow-from-left',\n icon: [448, 512, [], \"f343\", \"M0 424V88c0-13.3 10.7-24 24-24h24c13.3 0 24 10.7 24 24v336c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24zm254.5-269.6l65.6 65.6H120c-13.3 0-24 10.7-24 24v24c0 13.3 10.7 24 24 24h200.1l-65.6 65.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L441 273c9.4-9.4 9.4-24.6 0-33.9L305.5 103.5c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6-.1 33.9z\"]\n};\nvar faArrowFromRight = {\n prefix: 'fas',\n iconName: 'arrow-from-right',\n icon: [448, 512, [], \"f344\", \"M448 88v336c0 13.3-10.7 24-24 24h-24c-13.3 0-24-10.7-24-24V88c0-13.3 10.7-24 24-24h24c13.3 0 24 10.7 24 24zM193.5 357.6L127.9 292H328c13.3 0 24-10.7 24-24v-24c0-13.3-10.7-24-24-24H127.9l65.6-65.6c9.4-9.4 9.4-24.6 0-33.9l-17-17c-9.4-9.4-24.6-9.4-33.9 0L7 239c-9.4 9.4-9.4 24.6 0 33.9l135.5 135.5c9.4 9.4 24.6 9.4 33.9 0l17-17c9.4-9.3 9.4-24.5.1-33.8z\"]\n};\nvar faArrowFromTop = {\n prefix: 'fas',\n iconName: 'arrow-from-top',\n icon: [384, 512, [], \"f345\", \"M24 32h336c13.3 0 24 10.7 24 24v24c0 13.3-10.7 24-24 24H24C10.7 104 0 93.3 0 80V56c0-13.3 10.7-24 24-24zm269.6 263.5L228 361.1V152c0-13.3-10.7-24-24-24h-24c-13.3 0-24 10.7-24 24v209.1l-65.6-65.6c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L175 481.9c9.4 9.4 24.6 9.4 33.9 0l135.5-135.5c9.4-9.4 9.4-24.6 0-33.9l-17-17c-9.3-9.4-24.5-9.4-33.8 0z\"]\n};\nvar faArrowLeft = {\n prefix: 'fas',\n iconName: 'arrow-left',\n icon: [448, 512, [], \"f060\", \"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\"]\n};\nvar faArrowRight = {\n prefix: 'fas',\n iconName: 'arrow-right',\n icon: [448, 512, [], \"f061\", \"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\"]\n};\nvar faArrowSquareDown = {\n prefix: 'fas',\n iconName: 'arrow-square-down',\n icon: [448, 512, [], \"f339\", \"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 48zM328.4 227.1L256 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.9L207 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\"]\n};\nvar faArrowSquareLeft = {\n prefix: 'fas',\n iconName: 'arrow-square-left',\n icon: [448, 512, [], \"f33a\", \"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 48zM252.9 360.4L177.4 288H360c13.3 0 24-10.7 24-24v-16c0-13.3-10.7-24-24-24H177.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 0L75.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\"]\n};\nvar faArrowSquareRight = {\n prefix: 'fas',\n iconName: 'arrow-square-right',\n icon: [448, 512, [], \"f33b\", \"M48 32h352c26.5 0 48 21.5 48 48v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48zm147.1 119.6l75.5 72.4H88c-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 0L372.3 273c9.4-9.4 9.4-24.6 0-33.9L239.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\"]\n};\nvar faArrowSquareUp = {\n prefix: 'fas',\n iconName: 'arrow-square-up',\n icon: [448, 512, [], \"f33c\", \"M0 432V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48zm119.6-147.1l72.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.9L241 107.7c-9.4-9.4-24.6-9.4-33.9 0L74.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\"]\n};\nvar faArrowToBottom = {\n prefix: 'fas',\n iconName: 'arrow-to-bottom',\n icon: [384, 512, [], \"f33d\", \"M360 480H24c-13.3 0-24-10.7-24-24v-24c0-13.3 10.7-24 24-24h336c13.3 0 24 10.7 24 24v24c0 13.3-10.7 24-24 24zm-66.4-280.5L228 265.1V56c0-13.3-10.7-24-24-24h-24c-13.3 0-24 10.7-24 24v209.1l-65.6-65.6c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L175 385.9c9.4 9.4 24.6 9.4 33.9 0l135.5-135.5c9.4-9.4 9.4-24.6 0-33.9l-17-17c-9.3-9.4-24.5-9.4-33.8 0z\"]\n};\nvar faArrowToLeft = {\n prefix: 'fas',\n iconName: 'arrow-to-left',\n icon: [448, 512, [], \"f33e\", \"M0 424V88c0-13.3 10.7-24 24-24h24c13.3 0 24 10.7 24 24v336c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24zm280.5-66.4L214.9 292H424c13.3 0 24-10.7 24-24v-24c0-13.3-10.7-24-24-24H214.9l65.6-65.6c9.4-9.4 9.4-24.6 0-33.9l-17-17c-9.4-9.4-24.6-9.4-33.9 0L94.1 239c-9.4 9.4-9.4 24.6 0 33.9l135.5 135.5c9.4 9.4 24.6 9.4 33.9 0l17-17c9.4-9.3 9.4-24.5 0-33.8z\"]\n};\nvar faArrowToRight = {\n prefix: 'fas',\n iconName: 'arrow-to-right',\n icon: [448, 512, [], \"f340\", \"M448 88v336c0 13.3-10.7 24-24 24h-24c-13.3 0-24-10.7-24-24V88c0-13.3 10.7-24 24-24h24c13.3 0 24 10.7 24 24zm-280.5 66.4l65.6 65.6H24c-13.3 0-24 10.7-24 24v24c0 13.3 10.7 24 24 24h209.1l-65.6 65.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L353.9 273c9.4-9.4 9.4-24.6 0-33.9L218.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.9z\"]\n};\nvar faArrowToTop = {\n prefix: 'fas',\n iconName: 'arrow-to-top',\n icon: [384, 512, [], \"f341\", \"M24 32h336c13.3 0 24 10.7 24 24v24c0 13.3-10.7 24-24 24H24C10.7 104 0 93.3 0 80V56c0-13.3 10.7-24 24-24zm66.4 280.5l65.6-65.6V456c0 13.3 10.7 24 24 24h24c13.3 0 24-10.7 24-24V246.9l65.6 65.6c9.4 9.4 24.6 9.4 33.9 0l17-17c9.4-9.4 9.4-24.6 0-33.9L209 126.1c-9.4-9.4-24.6-9.4-33.9 0L39.5 261.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0z\"]\n};\nvar faArrowUp = {\n prefix: 'fas',\n iconName: 'arrow-up',\n icon: [448, 512, [], \"f062\", \"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\"]\n};\nvar faArrows = {\n prefix: 'fas',\n iconName: 'arrows',\n icon: [512, 512, [], \"f047\", \"M352.634 428.621l-74.007 74.007c-12.497 12.497-32.758 12.497-45.255 0l-74.007-74.007c-9.373-9.373-9.373-24.569 0-33.941l10.84-10.84c9.556-9.556 25.113-9.341 34.402.474L228 410.365V284H101.635l26.051 23.392c9.815 9.289 10.03 24.846.474 34.402l-10.84 10.84c-9.373 9.373-24.569 9.373-33.941 0L9.373 278.627c-12.497-12.497-12.497-32.758 0-45.255l74.007-74.007c9.373-9.373 24.569-9.373 33.941 0l10.84 10.84c9.556 9.556 9.341 25.114-.474 34.402L101.635 228H228V101.635l-23.392 26.051c-9.289 9.815-24.846 10.03-34.402.474l-10.84-10.84c-9.373-9.373-9.373-24.569 0-33.941l74.007-74.007c12.497-12.497 32.758-12.497 45.255 0l74.007 74.007c9.373 9.373 9.373 24.569 0 33.941l-10.84 10.84c-9.556 9.556-25.113 9.341-34.402-.474L284 101.635V228h126.365l-26.051-23.392c-9.815-9.289-10.03-24.846-.474-34.402l10.84-10.84c9.373-9.373 24.569-9.373 33.941 0l74.007 74.007c12.497 12.497 12.497 32.758 0 45.255l-74.007 74.007c-9.373 9.373-24.569 9.373-33.941 0l-10.84-10.84c-9.556-9.556-9.341-25.113.474-34.402L410.365 284H284v126.365l23.392-26.051c9.289-9.815 24.846-10.03 34.402-.474l10.84 10.84c9.373 9.372 9.373 24.568 0 33.941z\"]\n};\nvar faArrowsAlt = {\n prefix: 'fas',\n iconName: 'arrows-alt',\n icon: [512, 512, [], \"f0b2\", \"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\"]\n};\nvar faArrowsAltH = {\n prefix: 'fas',\n iconName: 'arrows-alt-h',\n icon: [512, 512, [], \"f337\", \"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\"]\n};\nvar faArrowsAltV = {\n prefix: 'fas',\n iconName: 'arrows-alt-v',\n icon: [256, 512, [], \"f338\", \"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\"]\n};\nvar faArrowsH = {\n prefix: 'fas',\n iconName: 'arrows-h',\n icon: [512, 512, [], \"f07e\", \"M105.815 288h300.371l-46.208 43.728c-9.815 9.289-10.03 24.846-.474 34.402l10.84 10.84c9.373 9.373 24.569 9.373 33.941 0l98.343-98.343c12.497-12.497 12.497-32.758 0-45.255l-98.343-98.343c-9.373-9.373-24.569-9.373-33.941 0l-10.84 10.84c-9.556 9.556-9.341 25.113.474 34.402L406.186 224H105.815l46.208-43.728c9.815-9.289 10.03-24.846.474-34.402l-10.84-10.84c-9.373-9.373-24.569-9.373-33.941 0L9.373 233.372c-12.497 12.497-12.497 32.758 0 45.255l98.343 98.343c9.373 9.373 24.569 9.373 33.941 0l10.84-10.84c9.556-9.556 9.341-25.113-.474-34.402L105.815 288z\"]\n};\nvar faArrowsV = {\n prefix: 'fas',\n iconName: 'arrows-v',\n icon: [256, 512, [], \"f07d\", \"M160 406.186V105.815l43.728 46.208c9.289 9.815 24.846 10.03 34.402.474l10.84-10.84c9.373-9.373 9.373-24.569 0-33.941L150.627 9.373c-12.497-12.497-32.758-12.497-45.255 0L7.029 107.715c-9.373 9.373-9.373 24.569 0 33.941l10.84 10.84c9.556 9.556 25.113 9.341 34.402-.474L96 105.815v300.371l-43.728-46.208c-9.289-9.815-24.846-10.03-34.402-.474l-10.84 10.84c-9.373 9.373-9.373 24.569 0 33.941l98.343 98.343c12.497 12.497 32.758 12.497 45.255 0l98.343-98.343c9.373-9.373 9.373-24.569 0-33.941l-10.84-10.84c-9.556-9.556-25.113-9.341-34.402.474L160 406.186z\"]\n};\nvar faAssistiveListeningSystems = {\n prefix: 'fas',\n iconName: 'assistive-listening-systems',\n icon: [512, 512, [], \"f2a2\", \"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\"]\n};\nvar faAsterisk = {\n prefix: 'fas',\n iconName: 'asterisk',\n icon: [512, 512, [], \"f069\", \"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\"]\n};\nvar faAt = {\n prefix: 'fas',\n iconName: 'at',\n icon: [512, 512, [], \"f1fa\", \"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\"]\n};\nvar faAtlas = {\n prefix: 'fas',\n iconName: 'atlas',\n icon: [448, 512, [], \"f558\", \"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\"]\n};\nvar faAtom = {\n prefix: 'fas',\n iconName: 'atom',\n icon: [448, 512, [], \"f5d2\", \"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\"]\n};\nvar faAtomAlt = {\n prefix: 'fas',\n iconName: 'atom-alt',\n icon: [448, 512, [], \"f5d3\", \"M400.87913,256.00022c47.5017,76.32937,66.25237,155.12752,22.2508,199.12823-41.439,41.42255-115.89477,29.188-199.13212-22.60974-83.58112,52.0321-157.8494,63.89166-199.13212,22.60974C-19.13589,411.12774-.38522,332.32959,47.11648,256.00022-.38522,179.67086-19.13589,100.87271,24.86569,56.872,68.86726,12.93378,147.65133,31.65283,223.98218,79.12235,300.29741,31.62158,379.0971,12.85565,423.12993,56.872,467.1315,100.87271,448.39646,179.67086,400.87913,256.00022ZM167.38641,391.68992c-26.07906-21.48472-50.36118-43.89133-79.19033-78.86065-24.86027,47.23514-30.423,84.68887-18.07877,97.04845C82.50837,422.26855,120.041,416.65908,167.38641,391.68992ZM88.19608,199.17118a561.57489,561.57489,0,0,1,79.1747-79.12629c-31.00111-16.35964-57.78331-24.40664-76.00271-24.40664-9.67223,0-16.93811,2.20316-21.25076,6.48448C57.77311,114.49793,63.35144,151.936,88.19608,199.17118Zm234.74277,56.84467a511.44441,511.44441,0,0,0-98.92542-99.42349,511.2289,511.2289,0,0,0-98.941,99.42349c25.90717,34.01618,54.11131,64.7823,98.92541,98.92348C258.06153,328.98578,288.797,300.81345,322.93885,256.01585Zm-66.92427-.01563a32.01677,32.01677,0,1,1-32.01677-32.01614A32.00909,32.00909,0,0,1,256.01458,256.00022ZM377.87831,102.13835c-4.31265-4.29694-11.57854-6.48448-21.25076-6.48448-18.20378,0-45.00161,8.03138-76.00272,24.391a563.57476,563.57476,0,0,1,79.17471,79.12629C384.64418,151.936,390.2225,114.49793,377.87831,102.13835ZM359.79954,312.82927c-28.92291,35.09432-53.205,57.46968-79.17471,78.86065,47.32982,24.93791,84.84679,30.51612,97.25348,18.1878C390.2225,397.51814,384.64418,360.06441,359.79954,312.82927Z\"]\n};\nvar faAudioDescription = {\n prefix: 'fas',\n iconName: 'audio-description',\n icon: [512, 512, [], \"f29e\", \"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\"]\n};\nvar faAward = {\n prefix: 'fas',\n iconName: 'award',\n icon: [384, 512, [], \"f559\", \"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\"]\n};\nvar faAxe = {\n prefix: 'fas',\n iconName: 'axe',\n icon: [640, 512, [], \"f6b2\", \"M4.69 439.43c-6.25 6.25-6.25 16.38 0 22.63l45.26 45.25c6.25 6.25 16.38 6.25 22.63 0l235.87-235.87-67.88-67.88L4.69 439.43zM525.74 160l-52.93-52.93 34.5-34.5c6.25-6.25 6.25-16.38 0-22.63L462.06 4.69c-6.25-6.25-16.38-6.25-22.63 0l-34.5 34.5-29.81-29.82C368.87 3.12 360.68 0 352.49 0s-16.38 3.12-22.63 9.37l-96.49 96.49c-12.5 12.5-12.5 32.76 0 45.25L384 301.74V416h32c123.71 0 224-100.29 224-224v-32H525.74zM448 348.79v-37.94c39.28-16.25 70.6-47.56 86.84-86.84h37.94C560.03 286.6 510.6 336.03 448 348.79z\"]\n};\nvar faAxeBattle = {\n prefix: 'fas',\n iconName: 'axe-battle',\n icon: [512, 512, [], \"f6b3\", \"M512 160.92C505.16 99.16 478.4 44.29 438.94 4.7c-9.21-9.25-23.89-4.12-27.06 8.96-12.03 49.67-47.25 88.27-91.88 101.23v154.22c44.63 12.96 79.85 51.56 91.88 101.23 3.17 13.08 17.85 18.21 27.06 8.96 39.46-39.59 66.22-94.45 73.06-156.22L449.24 192 512 160.92zM101 13.66C97.86.58 83.32-4.54 74.2 4.7 28.67 50.83 0 117.62 0 192c0 74.38 28.67 141.17 74.2 187.3 9.13 9.25 23.66 4.12 26.8-8.96 11.92-49.67 46.79-88.27 91-101.23V114.89c-44.21-12.96-79.08-51.56-91-101.23zM272 64h-32c-8.84 0-16 7.16-16 16v416c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V80c0-8.84-7.16-16-16-16z\"]\n};\nvar faBaby = {\n prefix: 'fas',\n iconName: 'baby',\n icon: [384, 512, [], \"f77c\", \"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\"]\n};\nvar faBabyCarriage = {\n prefix: 'fas',\n iconName: 'baby-carriage',\n icon: [512, 512, [], \"f77d\", \"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\"]\n};\nvar faBackpack = {\n prefix: 'fas',\n iconName: 'backpack',\n icon: [448, 512, [], \"f5d4\", \"M320 320H128c-17.67 0-32 14.33-32 32v32h256v-32c0-17.67-14.33-32-32-32zM96 512h256v-96H96v96zM320 80h-8V56c0-30.88-25.12-56-56-56h-64c-30.88 0-56 25.12-56 56v24h-8C57.31 80 0 137.31 0 208v240c0 35.35 28.65 64 64 64V352c0-35.29 28.71-64 64-64h192c35.29 0 64 28.71 64 64v160c35.35 0 64-28.65 64-64V208c0-70.69-57.31-128-128-128zM184 56c0-4.41 3.59-8 8-8h64c4.41 0 8 3.59 8 8v24h-80V56zm136 144c0 4.42-3.58 8-8 8H136c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h176c4.42 0 8 3.58 8 8v16z\"]\n};\nvar faBackspace = {\n prefix: 'fas',\n iconName: 'backspace',\n icon: [640, 512, [], \"f55a\", \"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\"]\n};\nvar faBackward = {\n prefix: 'fas',\n iconName: 'backward',\n icon: [512, 512, [], \"f04a\", \"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\"]\n};\nvar faBacon = {\n prefix: 'fas',\n iconName: 'bacon',\n icon: [576, 512, [], \"f7e5\", \"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\"]\n};\nvar faBacteria = {\n prefix: 'fas',\n iconName: 'bacteria',\n icon: [640, 512, [], \"e059\", \"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\"]\n};\nvar faBacterium = {\n prefix: 'fas',\n iconName: 'bacterium',\n icon: [512, 512, [], \"e05a\", \"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\"]\n};\nvar faBadge = {\n prefix: 'fas',\n iconName: 'badge',\n icon: [512, 512, [], \"f335\", \"M512 256c0-37.7-23.7-69.9-57.1-82.4 14.7-32.4 8.8-71.9-17.9-98.6-26.7-26.7-66.2-32.6-98.6-17.9C325.9 23.7 293.7 0 256 0s-69.9 23.7-82.4 57.1c-32.4-14.7-72-8.8-98.6 17.9-26.7 26.7-32.6 66.2-17.9 98.6C23.7 186.1 0 218.3 0 256s23.7 69.9 57.1 82.4c-14.7 32.4-8.8 72 17.9 98.6 26.6 26.6 66.1 32.7 98.6 17.9 12.5 33.3 44.7 57.1 82.4 57.1s69.9-23.7 82.4-57.1c32.6 14.8 72 8.7 98.6-17.9 26.7-26.7 32.6-66.2 17.9-98.6 33.4-12.5 57.1-44.7 57.1-82.4z\"]\n};\nvar faBadgeCheck = {\n prefix: 'fas',\n iconName: 'badge-check',\n icon: [512, 512, [], \"f336\", \"M512 256c0-37.7-23.7-69.9-57.1-82.4 14.7-32.4 8.8-71.9-17.9-98.6-26.7-26.7-66.2-32.6-98.6-17.9C325.9 23.7 293.7 0 256 0s-69.9 23.7-82.4 57.1c-32.4-14.7-72-8.8-98.6 17.9-26.7 26.7-32.6 66.2-17.9 98.6C23.7 186.1 0 218.3 0 256s23.7 69.9 57.1 82.4c-14.7 32.4-8.8 72 17.9 98.6 26.6 26.6 66.1 32.7 98.6 17.9 12.5 33.3 44.7 57.1 82.4 57.1s69.9-23.7 82.4-57.1c32.6 14.8 72 8.7 98.6-17.9 26.7-26.7 32.6-66.2 17.9-98.6 33.4-12.5 57.1-44.7 57.1-82.4zm-144.8-44.25L236.16 341.74c-4.31 4.28-11.28 4.25-15.55-.06l-75.72-76.33c-4.28-4.31-4.25-11.28.06-15.56l26.03-25.82c4.31-4.28 11.28-4.25 15.56.06l42.15 42.49 97.2-96.42c4.31-4.28 11.28-4.25 15.55.06l25.82 26.03c4.28 4.32 4.26 11.29-.06 15.56z\"]\n};\nvar faBadgeDollar = {\n prefix: 'fas',\n iconName: 'badge-dollar',\n icon: [512, 512, [], \"f645\", \"M512 256c0-37.7-23.7-69.9-57.1-82.4 14.7-32.4 8.8-71.9-17.9-98.6-26.7-26.7-66.2-32.6-98.6-17.9C325.9 23.7 293.7 0 256 0s-69.9 23.7-82.4 57.1c-32.4-14.7-72-8.8-98.6 17.9-26.7 26.7-32.6 66.2-17.9 98.6C23.7 186.1 0 218.3 0 256s23.7 69.9 57.1 82.4c-14.7 32.4-8.8 72 17.9 98.6 26.6 26.6 66.1 32.7 98.6 17.9 12.5 33.3 44.7 57.1 82.4 57.1s69.9-23.7 82.4-57.1c32.6 14.8 72 8.7 98.6-17.9 26.7-26.7 32.6-66.2 17.9-98.6 33.4-12.5 57.1-44.7 57.1-82.4zm-232 94.44V368c0 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.05V144c0-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\"]\n};\nvar faBadgePercent = {\n prefix: 'fas',\n iconName: 'badge-percent',\n icon: [512, 512, [], \"f646\", \"M512 256c0-37.7-23.7-69.9-57.1-82.4 14.7-32.4 8.8-71.9-17.9-98.6-26.7-26.7-66.2-32.6-98.6-17.9C325.9 23.7 293.7 0 256 0s-69.9 23.7-82.4 57.1c-32.4-14.7-72-8.8-98.6 17.9-26.7 26.7-32.6 66.2-17.9 98.6C23.7 186.1 0 218.3 0 256s23.7 69.9 57.1 82.4c-14.7 32.4-8.8 72 17.9 98.6 26.6 26.6 66.1 32.7 98.6 17.9 12.5 33.3 44.7 57.1 82.4 57.1s69.9-23.7 82.4-57.1c32.6 14.8 72 8.7 98.6-17.9 26.7-26.7 32.6-66.2 17.9-98.6 33.4-12.5 57.1-44.7 57.1-82.4zm-320-96c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.33-32-32 14.33-32 32-32zm12.28 181.65c-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.63l137.37-137.37c6.25-6.25 16.38-6.25 22.63 0l11.31 11.31c6.25 6.25 6.25 16.38 0 22.63L204.28 341.65zM320 352c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"]\n};\nvar faBadgeSheriff = {\n prefix: 'fas',\n iconName: 'badge-sheriff',\n icon: [512, 512, [], \"f8a2\", \"M440 320c-4 0-7.58 1.18-11.21 2.26l-39.46-66.32 39.43-66.21C432.4 190.82 436 192 440 192a40 40 0 0 0 0-80c-19.25 0-34.57 13.88-38.38 32h-78.88l-43.15-72.55C289.3 64.16 296 53.09 296 40a40 40 0 0 0-80 0c0 13.15 6.76 24.26 16.56 31.55L189.41 144h-79c-3.81-18.12-19.13-32-38.38-32a40 40 0 0 0 0 80c4 0 7.58-1.18 11.21-2.26l39.46 66.32-39.46 66.21C79.6 321.18 76 320 72 320a40 40 0 0 0 0 80c19.25 0 34.57-13.88 38.38-32h78.88l43.15 72.55C222.7 447.84 216 458.91 216 472a40 40 0 0 0 80 0c0-13.15-6.76-24.26-16.56-31.55L322.59 368h79c3.81 18.12 19.13 32 38.38 32a40 40 0 0 0 0-80zm-184 0a64 64 0 1 1 64-64 64 64 0 0 1-64 64z\"]\n};\nvar faBadgerHoney = {\n prefix: 'fas',\n iconName: 'badger-honey',\n icon: [640, 512, [], \"f6b4\", \"M622.25 142.47c-57.65-32.65-70.98-50.67-115.56-69.92C493.37 66.8 479.4 64 465.45 64c-19.05 0-38.09 5.21-55.47 15.21C392.89 89.05 374.05 96 354.95 96H128C57.31 96 0 153.31 0 224v16c0 8.84 7.16 16 16 16h20.03c7.79 33.38 28.05 64.24 53.53 81.18l-21.49 57.3a63.945 63.945 0 0 0-2.16 37.99L80 467.88A16.002 16.002 0 0 0 95.52 480h63.77c10.41 0 18.05-9.78 15.52-19.88l-15.55-41.26L192.22 352h105.69l23.03 115.14c1.5 7.48 8.06 12.86 15.69 12.86H400c10.1 0 17.67-9.24 15.69-19.14l-27-134.96c45.38-30.54 101.24-61.08 152.48-75.55L560 288l22.65-45.3c28.46-2.37 36.45-9.47 41.19-19.81 7-15.27 16.16-35.79 16.16-47.62 0-13.93-6.88-26.65-17.75-32.8zM515.19 160c.28 1.34.81 2.58.81 4 0 11.04-8.96 20-20 20s-20-8.96-20-20c0-1.42.53-2.66.81-4H460c-29.06 0-57.86 13.05-84.85 26.01l-101.98 61.75c-11.34 5.44-23.44 8.24-35.65 8.24H192c-42.49 0-78.12-41.48-90.76-90.66C113.52 152.13 130.03 144 148.3 144h206.65c25.67 0 52.24-7.8 78.97-23.19 10.02-5.77 20.92-8.81 31.53-8.81 7.65 0 15.12 1.55 22.21 4.62 26.87 11.6 36.43 20.42 71.41 43.38h-43.88z\"]\n};\nvar faBagsShopping = {\n prefix: 'fas',\n iconName: 'bags-shopping',\n icon: [576, 512, [], \"f847\", \"M448 224v-32a32 32 0 0 0-32-32h-96V96a96 96 0 0 0-192 0v64H32a32 32 0 0 0-32 32v256a32 32 0 0 0 32 32h128V256a32 32 0 0 1 32-32zM176 96a48 48 0 0 1 96 0v64h-96zm368 160H224a32 32 0 0 0-32 32v192a32 32 0 0 0 32 32h320a32 32 0 0 0 32-32V288a32 32 0 0 0-32-32zm-64 96a96.12 96.12 0 0 1-108.63 95.19C323 441 288 397.45 288 348.66V328a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v21.16c0 33.41 24.37 63.3 57.62 66.53A64.07 64.07 0 0 0 448 352v-24a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8z\"]\n};\nvar faBahai = {\n prefix: 'fas',\n iconName: 'bahai',\n icon: [512, 512, [], \"f666\", \"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\"]\n};\nvar faBalanceScale = {\n prefix: 'fas',\n iconName: 'balance-scale',\n icon: [640, 512, [], \"f24e\", \"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\"]\n};\nvar faBalanceScaleLeft = {\n prefix: 'fas',\n iconName: 'balance-scale-left',\n icon: [640, 512, [], \"f515\", \"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\"]\n};\nvar faBalanceScaleRight = {\n prefix: 'fas',\n iconName: 'balance-scale-right',\n icon: [640, 512, [], \"f516\", \"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\"]\n};\nvar faBallPile = {\n prefix: 'fas',\n iconName: 'ball-pile',\n icon: [576, 512, [], \"f77e\", \"M80 352c-44.2 0-80 35.8-80 80s35.8 80 80 80 80-35.8 80-80-35.8-80-80-80zm208-192c44.2 0 80-35.8 80-80S332.2 0 288 0s-80 35.8-80 80 35.8 80 80 80zm-32 88c0-44.2-35.8-80-80-80s-80 35.8-80 80 35.8 80 80 80 80-35.8 80-80zm32 104c-44.2 0-80 35.8-80 80s35.8 80 80 80 80-35.8 80-80-35.8-80-80-80zm208 0c-44.2 0-80 35.8-80 80s35.8 80 80 80 80-35.8 80-80-35.8-80-80-80zm-16-104c0-44.2-35.8-80-80-80s-80 35.8-80 80 35.8 80 80 80 80-35.8 80-80z\"]\n};\nvar faBallot = {\n prefix: 'fas',\n iconName: 'ballot',\n icon: [384, 512, [], \"f732\", \"M360 0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V24c0-13.3-10.7-24-24-24zM128 400c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16v-32c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32zm0-128c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16v-32c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32zm0-128c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16v-32c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32zm192 248c0 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-128c0 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-128c0 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\"]\n};\nvar faBallotCheck = {\n prefix: 'fas',\n iconName: 'ballot-check',\n icon: [384, 512, [], \"f733\", \"M360 0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V24c0-13.3-10.7-24-24-24zM64 112c0-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-16v-32zm1.6 129.4l12.7-12.6c2.1-2.1 5.5-2.1 7.6 0l20.6 20.8 47.6-47.2c2.1-2.1 5.5-2.1 7.6 0l12.6 12.7c2.1 2.1 2.1 5.5 0 7.6l-64.2 63.6c-2.1 2.1-5.5 2.1-7.6 0L65.6 249c-2.1-2.1-2.1-5.5 0-7.6zM128 400c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16v-32c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32zm192-8c0 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-128c0 4.4-4.3 8-9.6 8H170.2s29.2-30.2 30.4-32h109.7c5.3 0 9.6 3.6 9.6 8v16zm0-128c0 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\"]\n};\nvar faBan = {\n prefix: 'fas',\n iconName: 'ban',\n icon: [512, 512, [], \"f05e\", \"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\"]\n};\nvar faBandAid = {\n prefix: 'fas',\n iconName: 'band-aid',\n icon: [640, 512, [], \"f462\", \"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\"]\n};\nvar faBanjo = {\n prefix: 'fas',\n iconName: 'banjo',\n icon: [512, 512, [], \"f8a3\", \"M502.63 39L473.05 9.37a32 32 0 0 0-45.26 0l-46.31 46.32A35.26 35.26 0 0 0 373 69.48l-12.19 36.59L286 180.79c-19.93-13.49-43.08-22.24-67.86-26.15v-.46a26.18 26.18 0 0 0-52.36 0v.46a166.32 166.32 0 0 0-72.28 29.82l-.23-.23a26.18 26.18 0 0 0-37 37l.23.22a166.31 166.31 0 0 0-29.84 72.34h-.46a26.18 26.18 0 0 0 0 52.36h.46a166.31 166.31 0 0 0 29.84 72.34l-.23.22a26.18 26.18 0 1 0 37 37l.23-.23a166.32 166.32 0 0 0 72.32 29.82v.46a26.18 26.18 0 0 0 52.36 0v-.46a166.32 166.32 0 0 0 72.32-29.82l.23.23a26.18 26.18 0 1 0 37-37l-.23-.22a166.31 166.31 0 0 0 29.84-72.34h.46a26.18 26.18 0 0 0 0-52.36h-.46c-3.9-24.74-12.62-47.87-26.07-67.78l74.88-74.88 36.35-12.11a35.26 35.26 0 0 0 13.79-8.53l46.32-46.31a32 32 0 0 0 .02-45.18zM192 432a112 112 0 1 1 112-112 112.12 112.12 0 0 1-112 112zm-39-125.65a8 8 0 0 0-11.32 0l-11.31 11.31a8 8 0 0 0 0 11.31L183 381.66a8 8 0 0 0 11.31 0l11.31-11.31a8 8 0 0 0 0-11.32z\"]\n};\nvar faBarcode = {\n prefix: 'fas',\n iconName: 'barcode',\n icon: [512, 512, [], \"f02a\", \"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\"]\n};\nvar faBarcodeAlt = {\n prefix: 'fas',\n iconName: 'barcode-alt',\n icon: [640, 512, [], \"f463\", \"M592 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h544c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM160 408c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V104c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v304zm64 0c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8V104c0-4.4 3.6-8 8-8h16c4.4 0 8 3.6 8 8v304zm64 0c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8V104c0-4.4 3.6-8 8-8h16c4.4 0 8 3.6 8 8v304zm128 0c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V104c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v304zm128 0c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V104c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v304z\"]\n};\nvar faBarcodeRead = {\n prefix: 'fas',\n iconName: 'barcode-read',\n icon: [640, 512, [], \"f464\", \"M184 128h-48c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V136c0-4.4-3.6-8-8-8zm-40 320H64v-80c0-8.8-7.2-16-16-16H16c-8.8 0-16 7.2-16 16v128c0 8.8 7.2 16 16 16h128c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm104-320h-16c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V136c0-4.4-3.6-8-8-8zM16 160h32c8.8 0 16-7.2 16-16V64h80c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H16C7.2 0 0 7.2 0 16v128c0 8.8 7.2 16 16 16zm392-32h-48c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V136c0-4.4-3.6-8-8-8zm-96 0h-16c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V136c0-4.4-3.6-8-8-8zM624 0H496c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h80v80c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16zm0 352h-32c-8.8 0-16 7.2-16 16v80h-80c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h128c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16zm-112 24V136c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v240c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8z\"]\n};\nvar faBarcodeScan = {\n prefix: 'fas',\n iconName: 'barcode-scan',\n icon: [640, 512, [], \"f465\", \"M288 8c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152h64V8zM160 8c0-4.4-3.6-8-8-8H72c-4.4 0-8 3.6-8 8v152h96V8zM64 504c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8V352H64v152zM480 8c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152h64V8zm96 0c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152h64V8zM384 8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v152h32V8zm128 496c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V352h-64v152zm-288 0c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V352h-64v152zm192 0c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V352h-64v152zm-64 0c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V352h-32v152zm280-280H8c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h624c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"]\n};\nvar faBars = {\n prefix: 'fas',\n iconName: 'bars',\n icon: [448, 512, [], \"f0c9\", \"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\"]\n};\nvar faBaseball = {\n prefix: 'fas',\n iconName: 'baseball',\n icon: [640, 512, [], \"f432\", \"M629.6 56l-23.9-33.4c-17.6-24.6-51.5-30-75.8-12.2l-212 156.3c-69.1 50.9-112.4 99.8-137.2 128.3l62.2 86.7c34.6-15.2 93.7-41.8 162.8-92.7l212.1-156.2c24.1-17.8 29.4-52.2 11.8-76.8zM145.5 433.1l-43.2-60.3c-30 26-47 38.2-56 44.8-19.2-24.1-36.6-9-37.4-8.4-10.3 8.3-12 23.4-3.7 33.7l47.9 60c7.8 9.8 22.8 12.5 33.7 3.7 2.8-2.2 17.5-16.5 2.3-35.6 8.2-5.9 24.6-18.2 56.4-37.9zm-22.6-78.3l46 64.1c15.9-9.1 32.3-17.5 48.8-25.5l-55.8-77.8c-12.6 13.5-25.5 26.6-39 39.2zm372-2.8c-44.1 0-79.8 35.8-79.8 80s35.7 80 79.8 80 79.8-35.8 79.8-80-35.7-80-79.8-80z\"]\n};\nvar faBaseballBall = {\n prefix: 'fas',\n iconName: 'baseball-ball',\n icon: [496, 512, [], \"f433\", \"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\"]\n};\nvar faBasketballBall = {\n prefix: 'fas',\n iconName: 'basketball-ball',\n icon: [496, 512, [], \"f434\", \"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\"]\n};\nvar faBasketballHoop = {\n prefix: 'fas',\n iconName: 'basketball-hoop',\n icon: [640, 512, [], \"f435\", \"M208 160h224v48H208v-48zm431.9 176.9c0 22.8-13.6 43.2-34.7 51.8L501 431.6l9-143.6h-30.6l-18.2 224-75.4-71.6L320 512l-65.8-71.6-75.4 71.6-18.2-224H130l9 143.6-104.3-42.8C13.6 380.1 0 359.8 0 336.9L1.2 207C1.8 205 68.7 8 320 8s318.1 197 318.8 199c1.6 10.2 1.1-8.5 1.1 129.9zm-433.2 15.5l46.7 43.6 44-44-42.1-42.1-48.6 42.5zm113.3-23l41.4-41.4h-82.8l41.4 41.4zm22.6 22.6l44 44 46.7-43.6-48.6-42.5-42.1 42.1zm-149.9-64l2.6 31.9 36.5-31.9h-39.1zm38.1 130.6l-29.9-27.9 4.3 53.5 25.6-25.6zm132.4-.8L320 374.6l-43.2 43.2 43.2 40.3 43.2-40.3zm71.6 26.4l4.3-53.5-29.9 27.9 25.6 25.6zM447.3 288h-39l36.5 31.9 2.5-31.9zm96.7-72c0-4.4-3.6-8-8-8h-72v-80H176v80h-72c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h432c4.4 0 8-3.6 8-8v-16z\"]\n};\nvar faBat = {\n prefix: 'fas',\n iconName: 'bat',\n icon: [640, 512, [], \"f6b5\", \"M558.44 129.7c-7.64-17.82-29.25-24.81-45.88-14.83L411.83 175.3 384 64l-42.67 32h-42.67L256 64l-27.83 111.3-100.74-60.44c-16.63-9.98-38.24-2.99-45.88 14.83L0 320l49.62-16.54c27.38-9.13 57.48 1.2 73.49 25.21L160 384l11.82-11.82c27.54-27.54 73.09-24.3 96.46 6.85L320 448l51.72-68.97c23.37-31.16 68.91-34.39 96.46-6.85L480 384l36.88-55.33c16.01-24.01 46.11-34.34 73.49-25.21L640 320l-81.56-190.3z\"]\n};\nvar faBath = {\n prefix: 'fas',\n iconName: 'bath',\n icon: [512, 512, [], \"f2cd\", \"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\"]\n};\nvar faBatteryBolt = {\n prefix: 'fas',\n iconName: 'battery-bolt',\n icon: [640, 512, [], \"f376\", \"M64 352h178.778l-14.173 64H48c-26.51 0-48-21.49-48-48V144c0-26.51 21.49-48 48-48h115.944l-7.663 64H64v192zm364.778-160h-92.321l27.694-133.589C367.4 45.087 358.205 32 345.6 32H236.8c-9.623 0-17.76 7.792-19.031 18.225L192.171 264c-1.535 12.59 7.432 23.775 19.031 23.775h94.961l-36.847 166.382C266.44 467.443 275.728 480 287.993 480c6.68 0 13.101-3.827 16.623-10.481l140.778-245.997C452.79 209.55 443.564 192 428.778 192zM616 160h-8v-16c0-26.51-21.49-48-48-48H405.38l-9.951 48h33.349c16.112 0 31.233 5.762 43.115 16H544v64h32v64h-32v64H427.174l-36.626 64H560c26.51 0 48-21.49 48-48v-16h8c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24z\"]\n};\nvar faBatteryEmpty = {\n prefix: 'fas',\n iconName: 'battery-empty',\n icon: [640, 512, [], \"f244\", \"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\"]\n};\nvar faBatteryFull = {\n prefix: 'fas',\n iconName: 'battery-full',\n icon: [640, 512, [], \"f240\", \"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\"]\n};\nvar faBatteryHalf = {\n prefix: 'fas',\n iconName: 'battery-half',\n icon: [640, 512, [], \"f242\", \"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\"]\n};\nvar faBatteryQuarter = {\n prefix: 'fas',\n iconName: 'battery-quarter',\n icon: [640, 512, [], \"f243\", \"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\"]\n};\nvar faBatterySlash = {\n prefix: 'fas',\n iconName: 'battery-slash',\n icon: [640, 512, [], \"f377\", \"M64 352V179.48l-62.13-48A47.23 47.23 0 0 0 0 144v224a48 48 0 0 0 48 48h322l-82.81-64zm544 16v-16h8a24 24 0 0 0 24-24V184a24 24 0 0 0-24-24h-8v-16a48 48 0 0 0-48-48H165.31L45.47 3.37A16 16 0 0 0 23 6.18L3.37 31.45A16 16 0 0 0 6.18 53.9l588.35 454.73a16 16 0 0 0 22.47-2.81l19.64-25.27a16 16 0 0 0-2.81-22.45l-58.14-44.94A47.85 47.85 0 0 0 608 368zm-32-80h-32v64h-47.46L248.12 160H544v64h32z\"]\n};\nvar faBatteryThreeQuarters = {\n prefix: 'fas',\n iconName: 'battery-three-quarters',\n icon: [640, 512, [], \"f241\", \"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\"]\n};\nvar faBed = {\n prefix: 'fas',\n iconName: 'bed',\n icon: [640, 512, [], \"f236\", \"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\"]\n};\nvar faBedAlt = {\n prefix: 'fas',\n iconName: 'bed-alt',\n icon: [512, 512, [], \"f8f7\", \"M80,160a32,32,0,0,1,32-32h96a32,32,0,0,1,32,32v32h32V160a32,32,0,0,1,32-32h96a32,32,0,0,1,32,32v32h48V64a32,32,0,0,0-32-32H64A32,32,0,0,0,32,64V192H80Zm368,64H64A64,64,0,0,0,0,288V464a16,16,0,0,0,16,16H48a16,16,0,0,0,16-16V416H448v48a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V288A64,64,0,0,0,448,224Z\"]\n};\nvar faBedBunk = {\n prefix: 'fas',\n iconName: 'bed-bunk',\n icon: [576, 512, [], \"f8f8\", \"M464,0H240a16,16,0,0,0-16,16V128H64V16A16,16,0,0,0,48,0H16A16,16,0,0,0,0,16V496a16,16,0,0,0,16,16H48a16,16,0,0,0,16-16V448H512v48a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V112A112,112,0,0,0,464,0Zm48,267.19A110.9,110.9,0,0,0,464,256H240a16,16,0,0,0-16,16V384H64V192H512ZM144,352a48,48,0,1,0-48-48A48.05,48.05,0,0,0,144,352Zm0-256A48,48,0,1,0,96,48,48.05,48.05,0,0,0,144,96Z\"]\n};\nvar faBedEmpty = {\n prefix: 'fas',\n iconName: 'bed-empty',\n icon: [640, 512, [], \"f8f9\", \"M112,256h96a16,16,0,0,0,16-16V144a16,16,0,0,0-16-16H112a16,16,0,0,0-16,16v96A16,16,0,0,0,112,256ZM528,128H272a16,16,0,0,0-16,16V288H64V80A16,16,0,0,0,48,64H16A16,16,0,0,0,0,80V432a16,16,0,0,0,16,16H48a16,16,0,0,0,16-16V384H576v48a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V240A112,112,0,0,0,528,128Z\"]\n};\nvar faBeer = {\n prefix: 'fas',\n iconName: 'beer',\n icon: [448, 512, [], \"f0fc\", \"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\"]\n};\nvar faBell = {\n prefix: 'fas',\n iconName: 'bell',\n icon: [448, 512, [], \"f0f3\", \"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\"]\n};\nvar faBellExclamation = {\n prefix: 'fas',\n iconName: 'bell-exclamation',\n icon: [448, 512, [], \"f848\", \"M224 512a64 64 0 0 0 64-64H160a64 64 0 0 0 64 64zm215.39-149.71c-19.32-20.76-55.47-52-55.47-154.29 0-77.7-54.48-139.9-127.94-155.16V32a32 32 0 1 0-64 0v20.84C118.56 68.1 64.08 130.3 64.08 208c0 102.3-36.15 133.53-55.47 154.29A31.24 31.24 0 0 0 0 384c.11 16.4 13 32 32.1 32h383.8c19.12 0 32-15.6 32.1-32a31.23 31.23 0 0 0-8.61-21.71zM224 352a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm25.4-110.4a16 16 0 0 1-15.9 14.4h-19a16 16 0 0 1-15.9-14.4l-12.8-96a16.06 16.06 0 0 1 15.9-17.6h44.6a16 16 0 0 1 15.9 17.6z\"]\n};\nvar faBellOn = {\n prefix: 'fas',\n iconName: 'bell-on',\n icon: [640, 512, [], \"f8fa\", \"M112,192a24,24,0,0,0-24-24H24a24,24,0,0,0,0,48H88A24,24,0,0,0,112,192ZM51.66,64.78l55.42,32a24,24,0,1,0,24-41.56l-55.42-32a24,24,0,1,0-24,41.56ZM520.94,100a23.8,23.8,0,0,0,12-3.22l55.42-32a24,24,0,0,0-24-41.56l-55.42,32a24,24,0,0,0,12,44.78ZM320,512a64,64,0,0,0,64-64H256A64,64,0,0,0,320,512ZM616,168H552a24,24,0,0,0,0,48h64a24,24,0,0,0,0-48ZM479.92,208c0-77.69-54.48-139.91-127.94-155.16V32a32,32,0,1,0-64,0V52.84C214.56,68.09,160.08,130.31,160.08,208c0,102.31-36.14,133.53-55.47,154.28A31.28,31.28,0,0,0,96,384c.11,16.41,13,32,32.09,32H511.91c19.11,0,32-15.59,32.09-32a31.23,31.23,0,0,0-8.61-21.72C516.06,341.53,479.92,310.31,479.92,208Z\"]\n};\nvar faBellPlus = {\n prefix: 'fas',\n iconName: 'bell-plus',\n icon: [448, 512, [], \"f849\", \"M224 512a64 64 0 0 0 64-64H160a64 64 0 0 0 64 64zm215.39-149.71c-19.32-20.76-55.47-52-55.47-154.29 0-77.7-54.48-139.9-127.94-155.16V32a32 32 0 1 0-64 0v20.84C118.56 68.1 64.08 130.3 64.08 208c0 102.3-36.15 133.53-55.47 154.29A31.24 31.24 0 0 0 0 384c.11 16.4 13 32 32.1 32h383.8c19.12 0 32-15.6 32.1-32a31.23 31.23 0 0 0-8.61-21.71zM320 248a16 16 0 0 1-16 16h-56v56a16 16 0 0 1-16 16h-16a16 16 0 0 1-16-16v-56h-56a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h56v-56a16 16 0 0 1 16-16h16a16 16 0 0 1 16 16v56h56a16 16 0 0 1 16 16z\"]\n};\nvar faBellSchool = {\n prefix: 'fas',\n iconName: 'bell-school',\n icon: [512, 512, [], \"f5d5\", \"M416 208C416 93.12 322.88 0 208 0S0 93.12 0 208s93.12 208 208 208 208-93.12 208-208zm-288 0c0-44.11 35.89-80 80-80s80 35.89 80 80-35.89 80-80 80-80-35.89-80-80zm128 0c0-26.51-21.49-48-48-48s-48 21.49-48 48 21.49 48 48 48 48-21.49 48-48zm208 112c-26.51 0-48 21.49-48 48 0 16.43 8.27 30.89 20.86 39.55C430.78 421.9 416.55 432 400 432h-48v-32.46C311.83 429.82 262.06 448 208 448s-103.83-18.18-144-48.46V480c0 17.67 14.33 32 32 32h224c17.67 0 32-14.33 32-32h48c42.2 0 77.48-29.87 85.98-69.56 15.39-8 26.02-23.9 26.02-42.44 0-26.51-21.49-48-48-48z\"]\n};\nvar faBellSchoolSlash = {\n prefix: 'fas',\n iconName: 'bell-school-slash',\n icon: [640, 512, [], \"f5d6\", \"M272 448c-54.06 0-103.83-18.18-144-48.46V480c0 17.67 14.33 32 32 32h224c17.67 0 32-14.33 32-32v-28.47l-37.66-29.11C346.23 438.51 310.29 448 272 448zm78.19-47.33L65.95 180.99C64.8 189.85 64 198.82 64 208c0 114.88 93.12 208 208 208 27.68 0 54.04-5.52 78.19-15.33zm283.63 57.43l-72.26-55.85C570.45 393.54 576 381.43 576 368c0-26.51-21.49-48-48-48-17.82 0-33.2 9.83-41.48 24.25l-36.81-28.45C468.88 284.38 480 247.52 480 208 480 93.12 386.87 0 272 0c-58.54 0-111.06 24.5-148.8 63.45L45.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.45zM346.64 236.15l-27.35-21.14c.34-2.31.71-4.61.71-7.01 0-26.51-21.49-48-48-48-6.7 0-13.07 1.39-18.87 3.87l-27-20.87c12.98-9.29 28.68-15 45.87-15 44.11 0 80 35.89 80 80 0 9.95-2.02 19.37-5.36 28.15z\"]\n};\nvar faBellSlash = {\n prefix: 'fas',\n iconName: 'bell-slash',\n icon: [640, 512, [], \"f1f6\", \"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\"]\n};\nvar faBells = {\n prefix: 'fas',\n iconName: 'bells',\n icon: [640, 512, [], \"f77f\", \"M242 253.9c-27.9-76.7 5-160.6 73.7-199.8-8.5-5.6-17.5-10.5-27.4-14.1-69.3-25.1-145.8 10.6-171 79.8-.8 2.1-14.7 40.4-15.4 42.6-29.2 80.1-66.4 94.3-87.4 105-20.1 10.3-19.5 40.6 3 48.8l243.3 88.6c8.4-19.2 19.5-45.6-3.3-108.2-9.8-27-6.2-17.1-15.5-42.7zM138.1 444.2c27.6 10.1 57.5-.3 73.8-23.2L96.5 379c-2.3 27.9 13.9 55.1 41.6 65.2zm363.8 32c27.6-10.1 43.9-37.2 41.6-65.2l-115.4 42c16.3 22.8 46.2 33.2 73.8 23.2zm123.7-176.8c-21-10.7-58.3-24.9-87.4-105-.8-2.2-14.7-40.5-15.4-42.6-25.3-69.2-101.8-104.9-171-79.7-69.2 25.2-104.9 101.7-79.7 170.9.8 2.1 14.8 40.4 15.6 42.6 29.2 80.1 9.7 114.9.5 136.6-8.8 20.7 11.2 43.6 33.7 35.4l300.6-109.4c20.5-7.5 24.9-37.6 3.1-48.8z\"]\n};\nvar faBetamax = {\n prefix: 'fas',\n iconName: 'betamax',\n icon: [512, 512, [], \"f8a4\", \"M496 64H16A16 16 0 0 0 0 80v48h512V80a16 16 0 0 0-16-16zM0 400a48 48 0 0 0 48 48h416a48 48 0 0 0 48-48V160H0zm288-176h160v160H288zm-144 0a80 80 0 1 1-80 80 80 80 0 0 1 80-80zm0 112a32 32 0 1 0-32-32 32 32 0 0 0 32 32z\"]\n};\nvar faBezierCurve = {\n prefix: 'fas',\n iconName: 'bezier-curve',\n icon: [640, 512, [], \"f55b\", \"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\"]\n};\nvar faBible = {\n prefix: 'fas',\n iconName: 'bible',\n icon: [448, 512, [], \"f647\", \"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\"]\n};\nvar faBicycle = {\n prefix: 'fas',\n iconName: 'bicycle',\n icon: [640, 512, [], \"f206\", \"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\"]\n};\nvar faBiking = {\n prefix: 'fas',\n iconName: 'biking',\n icon: [640, 512, [], \"f84a\", \"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\"]\n};\nvar faBikingMountain = {\n prefix: 'fas',\n iconName: 'biking-mountain',\n icon: [640, 512, [], \"f84b\", \"M400 96a48 48 0 1 0-48-48 48 48 0 0 0 48 48zm-227.29 74.16c5.65 6.8 15.39 7.81 21.77 2.26L298.8 83.51c6.38-5.54 7-15.54 1.35-22.33-28.2-33.95-76.91-39-108.81-11.3l-58.12 48.76c-6.37 5.55-7 15.54-1.34 22.34zM240 352h-5.2a110.19 110.19 0 0 0-8.65-20.89l3.67-3.67a16 16 0 0 0 0-22.63l-22.63-22.63a16 16 0 0 0-22.63 0l-3.67 3.67A110.45 110.45 0 0 0 160 277.2V272a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v5.2a110.19 110.19 0 0 0-20.89 8.65l-3.67-3.67a16 16 0 0 0-22.63 0l-22.63 22.63a16 16 0 0 0 0 22.63l3.67 3.67A110.45 110.45 0 0 0 21.2 352H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h5.2a110.19 110.19 0 0 0 8.65 20.89l-3.67 3.67a16 16 0 0 0 0 22.63l22.63 22.63a16 16 0 0 0 22.63 0l3.67-3.67A110.94 110.94 0 0 0 96 490.8v5.2a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-5.2a110.47 110.47 0 0 0 20.89-8.65l3.67 3.67a16 16 0 0 0 22.63 0l22.63-22.63a16 16 0 0 0 0-22.63l-3.67-3.67a110.45 110.45 0 0 0 8.66-20.89H240a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-112 96a64 64 0 1 1 64-64 64 64 0 0 1-64 64zm496-96h-5.2a110.19 110.19 0 0 0-8.65-20.89l3.67-3.67a16 16 0 0 0 0-22.63l-22.63-22.63a16 16 0 0 0-22.63 0l-3.67 3.67A110.45 110.45 0 0 0 544 277.2V272a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v5.2a110.1 110.1 0 0 0-20.88 8.65l-3.67-3.67a16 16 0 0 0-22.63 0l-22.63 22.63a16 16 0 0 0 0 22.63l3.67 3.67a110.45 110.45 0 0 0-8.67 20.89H400a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h5.2a110.19 110.19 0 0 0 8.65 20.89l-3.67 3.67a16 16 0 0 0 0 22.63l22.63 22.63a16 16 0 0 0 22.63 0l3.67-3.67A111.13 111.13 0 0 0 480 490.8v5.2a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-5.2a110.56 110.56 0 0 0 20.9-8.65l3.67 3.67a16 16 0 0 0 22.63 0l22.63-22.63a16 16 0 0 0 0-22.63l-3.67-3.67A110.45 110.45 0 0 0 618.8 416h5.2a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-112 96a64 64 0 1 1 64-64 64 64 0 0 1-64 64zM396 217a32 32 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.07 50.92L288 305.12V416a32 32 0 0 0 64 0V288a32 32 0 0 0-14.25-26.62l-41.35-27.57 58.24-49.92z\"]\n};\nvar faBinoculars = {\n prefix: 'fas',\n iconName: 'binoculars',\n icon: [512, 512, [], \"f1e5\", \"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\"]\n};\nvar faBiohazard = {\n prefix: 'fas',\n iconName: 'biohazard',\n icon: [576, 512, [], \"f780\", \"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\"]\n};\nvar faBirthdayCake = {\n prefix: 'fas',\n iconName: 'birthday-cake',\n icon: [448, 512, [], \"f1fd\", \"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\"]\n};\nvar faBlanket = {\n prefix: 'fas',\n iconName: 'blanket',\n icon: [512, 512, [], \"f498\", \"M512 96c0-52.9-43.1-96-96-96H96C43.1 0 0 43.1 0 96v288c0 70.7 57.3 128 128 128h368c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16H128c-35.3 0-64-28.7-64-64s28.7-64 64-64h304c8.8 0 16 7.2 16 16s-7.2 16-16 16H128c-17.7 0-32 14.3-32 32s14.3 32 32 32h299.3c41.8 0 80.1-30 84.3-71.6.3-2.9.4-248.4.4-248.4z\"]\n};\nvar faBlender = {\n prefix: 'fas',\n iconName: 'blender',\n icon: [512, 512, [], \"f517\", \"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\"]\n};\nvar faBlenderPhone = {\n prefix: 'fas',\n iconName: 'blender-phone',\n icon: [576, 512, [], \"f6b6\", \"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\"]\n};\nvar faBlind = {\n prefix: 'fas',\n iconName: 'blind',\n icon: [384, 512, [], \"f29d\", \"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\"]\n};\nvar faBlinds = {\n prefix: 'fas',\n iconName: 'blinds',\n icon: [512, 512, [], \"f8fb\", \"M96,226.94V160H16L0,256H66.94A47.82,47.82,0,0,1,96,226.94ZM157.06,288a47.73,47.73,0,0,1-90.12,0H16L0,384H512l-16-96ZM16,416,0,512H512l-16-96ZM512,48V16A16,16,0,0,0,496,0H16A16,16,0,0,0,0,16V48A15.85,15.85,0,0,0,10.84,63L0,128H96V64h32v64H512L501.16,63A15.85,15.85,0,0,0,512,48ZM128,160v66.94A47.82,47.82,0,0,1,157.06,256H512l-16-96Z\"]\n};\nvar faBlindsOpen = {\n prefix: 'fas',\n iconName: 'blinds-open',\n icon: [512, 512, [], \"f8fc\", \"M16,464,0,512H512l-16-48ZM64,208.21V192H16L0,240H39.16A80.21,80.21,0,0,1,64,208.21ZM175.59,320a79.18,79.18,0,0,1-127.18,0H16L0,368H512l-16-48ZM160,192v16.21A80.12,80.12,0,0,1,184.84,240H512l-16-48ZM512,48V16A16,16,0,0,0,496,0H16A16,16,0,0,0,0,16V48A16,16,0,0,0,16,64L0,112H64V64H96V226.94a48,48,0,1,0,32,0V64h32v48H512L496,64A16,16,0,0,0,512,48Z\"]\n};\nvar faBlindsRaised = {\n prefix: 'fas',\n iconName: 'blinds-raised',\n icon: [512, 512, [], \"f8fd\", \"M16,160,0,224H96V160ZM512,48V16A16,16,0,0,0,496,0H16A16,16,0,0,0,0,16V48A16,16,0,0,0,16,64L0,128H96V64h32v64H512L496,64A16,16,0,0,0,512,48ZM496,160H128v64H512ZM96,224V418.94a48,48,0,1,0,32,0V224Z\"]\n};\nvar faBlog = {\n prefix: 'fas',\n iconName: 'blog',\n icon: [512, 512, [], \"f781\", \"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\"]\n};\nvar faBold = {\n prefix: 'fas',\n iconName: 'bold',\n icon: [384, 512, [], \"f032\", \"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\"]\n};\nvar faBolt = {\n prefix: 'fas',\n iconName: 'bolt',\n icon: [320, 512, [], \"f0e7\", \"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\"]\n};\nvar faBomb = {\n prefix: 'fas',\n iconName: 'bomb',\n icon: [512, 512, [], \"f1e2\", \"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\"]\n};\nvar faBone = {\n prefix: 'fas',\n iconName: 'bone',\n icon: [640, 512, [], \"f5d7\", \"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\"]\n};\nvar faBoneBreak = {\n prefix: 'fas',\n iconName: 'bone-break',\n icon: [640, 512, [], \"f5d8\", \"M598.88 148.56c25.2-12.6 41.12-38.36 41.12-66.53v-7.64C640 33.3 606.7 0 565.62 0c-32.02 0-60.44 20.49-70.57 50.86l-7.75 23.26A32.006 32.006 0 0 1 456.94 96H352l32 64-32 64h104.94c13.77 0 26 8.81 30.36 21.88l7.75 23.26C505.17 299.51 533.6 320 565.61 320c41.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.88zM320 282.51L256 256l-26.51-64-62.97 62.97c-9.74 9.74-24.62 12.15-36.94 5.99L107.65 250c-28.64-14.32-63.22-8.71-85.87 13.93-29.05 29.05-29.05 76.15 0 105.2l5.4 5.4c19.92 19.92 49.39 26.88 76.12 17.97 10-3.33 19.51 6.18 16.18 16.18-8.91 26.73-1.95 56.2 17.97 76.12l5.4 5.4c29.05 29.05 76.15 29.05 105.2 0 22.64-22.64 28.25-57.23 13.93-85.87l-10.96-21.93c-6.16-12.32-3.75-27.2 5.99-36.94L320 282.51z\"]\n};\nvar faBong = {\n prefix: 'fas',\n iconName: 'bong',\n icon: [448, 512, [], \"f55c\", \"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\"]\n};\nvar faBook = {\n prefix: 'fas',\n iconName: 'book',\n icon: [448, 512, [], \"f02d\", \"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\"]\n};\nvar faBookAlt = {\n prefix: 'fas',\n iconName: 'book-alt',\n icon: [448, 512, [], \"f5d9\", \"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.2zM380.8 448H96c-19.2 0-32-12.8-32-32s16-32 32-32h284.8v64z\"]\n};\nvar faBookDead = {\n prefix: 'fas',\n iconName: 'book-dead',\n icon: [448, 512, [], \"f6b7\", \"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\"]\n};\nvar faBookHeart = {\n prefix: 'fas',\n iconName: 'book-heart',\n icon: [448, 512, [], \"f499\", \"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.6zM149.8 109.1c24-20 59.7-16.4 81.6 5.8l8.6 8.7 8.6-8.7c22-22.2 57.7-25.8 81.6-5.8 27.5 23 28.9 64.2 4.3 89.1l-84.7 85.6c-5.5 5.5-14.3 5.5-19.8 0l-84.7-85.6c-24.5-24.9-23-66.1 4.5-89.1zM381.4 448H96c-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\"]\n};\nvar faBookMedical = {\n prefix: 'fas',\n iconName: 'book-medical',\n icon: [448, 512, [], \"f7e6\", \"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\"]\n};\nvar faBookOpen = {\n prefix: 'fas',\n iconName: 'book-open',\n icon: [576, 512, [], \"f518\", \"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\"]\n};\nvar faBookReader = {\n prefix: 'fas',\n iconName: 'book-reader',\n icon: [512, 512, [], \"f5da\", \"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\"]\n};\nvar faBookSpells = {\n prefix: 'fas',\n iconName: 'book-spells',\n icon: [448, 512, [], \"f6b8\", \"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.2zM272 160l26.66 53.33L352 240l-53.34 26.67L272 320l-26.66-53.33L192 240l53.34-26.67L272 160zM160 96l16-32 16 32 32 16-32 16-16 32-16-32-32-16 32-16zm220.8 352H96c-19.2 0-32-12.8-32-32s16-32 32-32h284.8v64z\"]\n};\nvar faBookUser = {\n prefix: 'fas',\n iconName: 'book-user',\n icon: [448, 512, [], \"f7e7\", \"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.2zM240 64a64 64 0 1 1-64 64 64 64 0 0 1 64-64zM128 281.6c0-31.81 30.09-57.6 67.2-57.6h5a103.25 103.25 0 0 0 79.7 0h4.95c37.11 0 67.2 25.79 67.2 57.6v19.2c0 10.61-10 19.2-22.4 19.2H150.4c-12.4 0-22.4-8.6-22.4-19.2zM380.8 448H96c-19.2 0-32-12.8-32-32s16-32 32-32h284.8z\"]\n};\nvar faBookmark = {\n prefix: 'fas',\n iconName: 'bookmark',\n icon: [384, 512, [], \"f02e\", \"M0 512V48C0 21.49 21.49 0 48 0h288c26.51 0 48 21.49 48 48v464L192 400 0 512z\"]\n};\nvar faBooks = {\n prefix: 'fas',\n iconName: 'books',\n icon: [576, 512, [], \"f5db\", \"M575.11 443.25L461.51 19.06C458.2 6.7 445.61-3.18 430.15.96L414.7 5.1c-6.18 1.66-11.53 6.4-16.06 14.24-14.03 6.94-52.3 17.21-68 18.22-7.84-4.53-14.85-5.96-21.03-4.3l-15.46 4.14c-2.42.65-4.2 1.95-6.15 3.08V32c0-17.67-14.33-32-32-32h-64c-17.67 0-32 14.33-32 32v64h128l101.66 396.94c3.31 12.36 15.9 22.24 31.36 18.1l15.45-4.14c6.18-1.66 11.53-6.4 16.06-14.24 13.91-6.88 52.18-17.2 68-18.22 7.84 4.53 14.85 5.96 21.03 4.3l15.46-4.14c15.45-4.14 21.41-18.99 18.09-31.35zm-134.4-7.06L348.64 92.37l61.82-16.56 92.07 343.82-61.82 16.56zM0 384h128V128H0v256zM96 0H32C14.33 0 0 14.33 0 32v64h128V32c0-17.67-14.33-32-32-32zM0 480c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64H0v64zm160-96h128V128H160v256zm0 96c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64H160v64z\"]\n};\nvar faBooksMedical = {\n prefix: 'fas',\n iconName: 'books-medical',\n icon: [640, 512, [], \"f7e8\", \"M128 128a128 128 0 1 0 128 128 128 128 0 0 0-128-128zm64 144a5.33 5.33 0 0 1-5.33 5.33h-37.34v37.34A5.33 5.33 0 0 1 144 320h-32a5.33 5.33 0 0 1-5.33-5.33v-37.34H69.33A5.33 5.33 0 0 1 64 272v-32a5.33 5.33 0 0 1 5.33-5.33h37.34v-37.34A5.33 5.33 0 0 1 112 192h32a5.33 5.33 0 0 1 5.33 5.33v37.34h37.34A5.33 5.33 0 0 1 192 240zM64 480a32 32 0 0 0 32 32h64a32 32 0 0 0 32-32v-64H64zM192 32a32 32 0 0 0-32-32H96a32 32 0 0 0-32 32v64h128zm447.11 411.25L525.51 19.06C522.2 6.7 509.61-3.18 494.15 1L478.7 5.1q-9.27 2.49-16.06 14.24c-14 6.94-52.3 17.21-68 18.22q-11.76-6.8-21-4.3l-15.49 4.14c-2.42.65-4.2 2-6.15 3.08V32a32 32 0 0 0-32-32h-64a32 32 0 0 0-32 32v64h128l101.66 396.94C457 505.3 469.56 515.18 485 511l15.45-4.14q9.27-2.49 16.06-14.24c13.91-6.88 52.18-17.2 68-18.22q11.76 6.8 21 4.3l15.49-4.1c15.47-4.14 21.43-18.99 18.11-31.35zm-134.4-7.06L412.64 92.37l61.82-16.56 92.07 343.82zM224 128.81c38.62 29.24 64 75.12 64 127.19s-25.38 98-64 127.19v.81h128V128H224zM224 480a32 32 0 0 0 32 32h64a32 32 0 0 0 32-32v-64H224z\"]\n};\nvar faBoombox = {\n prefix: 'fas',\n iconName: 'boombox',\n icon: [640, 512, [], \"f8a5\", \"M463 256a80 80 0 1 0 80 80 80.09 80.09 0 0 0-80-80zm-288 0a80 80 0 1 0 80 80 80.09 80.09 0 0 0-80-80zm432-93.06V56a56.06 56.06 0 0 0-56-56H87a56.06 56.06 0 0 0-56 56v106.94A47.86 47.86 0 0 0-1 208v256a48 48 0 0 0 48 48h544a48 48 0 0 0 48-48V208a47.86 47.86 0 0 0-32-45.06zM175 448a112 112 0 1 1 112-112 112 112 0 0 1-112 112zm160-320h-32a16 16 0 0 0-16 16v16h-32v-16a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v16H79V56a8 8 0 0 1 8-8h464a8 8 0 0 1 8 8v104H447v-16a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v16h-32v-16a16 16 0 0 0-16-16zm128 320a112 112 0 1 1 112-112 112 112 0 0 1-112 112z\"]\n};\nvar faBoot = {\n prefix: 'fas',\n iconName: 'boot',\n icon: [512, 512, [], \"f782\", \"M0 480l32 32h64l32-32 32 32h64l32-32 32 32h64l32-32 32 32h64l32-32v-32H0v32zM352 80V16c0-8.8-7.2-16-16-16H16C7.2 0 0 7.2 0 16v80h336c8.8 0 16-7.2 16-16zm87.3 205.8L320 256h-56c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h56v-32h-56c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h56v-32H0v288h512v-37c0-44.1-30-82.5-72.7-93.2z\"]\n};\nvar faBoothCurtain = {\n prefix: 'fas',\n iconName: 'booth-curtain',\n icon: [512, 512, [], \"f734\", \"M480 0h-32v496c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V32c0-17.7-14.3-32-32-32zM0 32v464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V64h32V0H32C14.3 0 0 14.3 0 32zM416 0H128v400c0 26.5 21.5 48 48 48 14.7 0 27.9-6.6 36.7-17 5.7-6.8 16.9-6.8 22.6 0 8.8 10.4 22 17 36.7 17s27.9-6.6 36.7-17c5.7-6.8 16.9-6.8 22.6 0 8.8 10.4 22 17 36.7 17 26.5 0 48-21.5 48-48V0z\"]\n};\nvar faBorderAll = {\n prefix: 'fas',\n iconName: 'border-all',\n icon: [448, 512, [], \"f84c\", \"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\"]\n};\nvar faBorderBottom = {\n prefix: 'fas',\n iconName: 'border-bottom',\n icon: [448, 512, [], \"f84d\", \"M208 288h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm96 0h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm128-64h-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-320 64h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm320 32h-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-16zM208 384h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-192h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-96h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm96 0h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm128-64h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM16 288h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0 96h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-192h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-96h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16zm96 0h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm320 320H16a16 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\"]\n};\nvar faBorderCenterH = {\n prefix: 'fas',\n iconName: 'border-center-h',\n icon: [448, 512, [], \"f89c\", \"M208 480h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm96 0h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm128-64h-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-320 64h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm320-160h-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-16zM208 384h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-192h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-96h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm96 0h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm128-64h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM16 480h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-96h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-192h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-96h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16zm96 0h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm320 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-16z\"]\n};\nvar faBorderCenterV = {\n prefix: 'fas',\n iconName: 'border-center-v',\n icon: [448, 512, [], \"f89d\", \"M448 272v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zm0-96v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zM384 48v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16zm64 320v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zM288 48v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16zM96 48v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16zm256 224v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zm-192 0v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zm-96 0v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zm0-96v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zM0 48v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H16A16 16 0 0 0 0 48zm448 416v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zm-96 0v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zm-192 0v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zm-96 0v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zm0-96v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16zM192 48v416a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16z\"]\n};\nvar faBorderInner = {\n prefix: 'fas',\n iconName: 'border-inner',\n icon: [448, 512, [], \"f84e\", \"M48 416H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM16 192h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm288-96h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zM48 320H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm64-224h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm-96 0h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16zm320 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-16zm96-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-96h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm0 192H256V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v176H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h176v176a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V288h176a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM144 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-16zm288-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-16z\"]\n};\nvar faBorderLeft = {\n prefix: 'fas',\n iconName: 'border-left',\n icon: [448, 512, [], \"f84f\", \"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-16zm-288 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-16zm-96 0H16A16 16 0 0 0 0 48v416a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"]\n};\nvar faBorderNone = {\n prefix: 'fas',\n iconName: 'border-none',\n icon: [448, 512, [], \"f850\", \"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\"]\n};\nvar faBorderOuter = {\n prefix: 'fas',\n iconName: 'border-outer',\n icon: [448, 512, [], \"f851\", \"M208 288h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm96 0h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm-192 0h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm96 96h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-192h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zM416 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 384H64V96h320z\"]\n};\nvar faBorderRight = {\n prefix: 'fas',\n iconName: 'border-right',\n icon: [448, 512, [], \"f852\", \"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-16zm-192 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-16zm-96-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-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-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-16zm288 0h-32a16 16 0 0 0-16 16v416a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"]\n};\nvar faBorderStyle = {\n prefix: 'fas',\n iconName: 'border-style',\n icon: [448, 512, [], \"f853\", \"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\"]\n};\nvar faBorderStyleAlt = {\n prefix: 'fas',\n iconName: 'border-style-alt',\n icon: [448, 512, [], \"f854\", \"M208 96h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm96 0h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm-192 0h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zM16 288h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-96h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-96h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16zm0 288h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zM432 32h-32a16 16 0 0 0-16 16v368H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h400a32 32 0 0 0 32-32V48a16 16 0 0 0-16-16z\"]\n};\nvar faBorderTop = {\n prefix: 'fas',\n iconName: 'border-top',\n icon: [448, 512, [], \"f855\", \"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-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-16zm384-96H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"]\n};\nvar faBowArrow = {\n prefix: 'fas',\n iconName: 'bow-arrow',\n icon: [512, 512, [], \"f6b9\", \"M145.78 287.03l45.26-45.25-90.58-90.58C128.24 136.08 159.49 128 192 128c32.03 0 62.86 7.79 90.33 22.47l46.61-46.61C288.35 78.03 241.3 64 192 64c-49.78 0-97.29 14.27-138.16 40.59l-3.9-3.9c-6.25-6.25-16.38-6.25-22.63 0L4.69 123.31c-6.25 6.25-6.25 16.38 0 22.63l141.09 141.09zm262.36-104.64L361.53 229c14.68 27.47 22.47 58.3 22.47 90.33 0 32.51-8.08 63.77-23.2 91.55l-90.58-90.58-45.26 45.26 141.76 141.76c6.25 6.25 16.38 6.25 22.63 0l22.63-22.63c6.25-6.25 6.25-16.38 0-22.63l-4.57-4.57C433.74 416.63 448 369.11 448 319.33c0-49.29-14.03-96.35-39.86-136.94zM493.22.31L364.63 26.03c-12.29 2.46-16.88 17.62-8.02 26.49l34.47 34.47-250.64 250.63-49.7-16.57a20.578 20.578 0 0 0-21.04 4.96L6.03 389.69c-10.8 10.8-6.46 29.2 8.04 34.04l55.66 18.55 18.55 55.65c4.83 14.5 23.23 18.84 34.04 8.04l63.67-63.67a20.56 20.56 0 0 0 4.97-21.04l-16.57-49.7 250.64-250.64 34.47 34.47c8.86 8.86 24.03 4.27 26.49-8.02l25.72-128.59C513.88 7.8 504.2-1.88 493.22.31z\"]\n};\nvar faBowlingBall = {\n prefix: 'fas',\n iconName: 'bowling-ball',\n icon: [496, 512, [], \"f436\", \"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\"]\n};\nvar faBowlingPins = {\n prefix: 'fas',\n iconName: 'bowling-pins',\n icon: [448, 512, [], \"f437\", \"M314.8 160c-.8-35.8-20.9-59.1-18.8-96 1.9-34.2 22.7-63.9 56-64 33.4.1 54.1 29.7 56 64 2.1 36.9-18 60.3-18.8 96h-74.4zm128.9 160c-10.8-48.1-39.9-82.8-50.7-128h-81.9c-10.8 45.2-39.9 79.9-50.7 128-11.5 51.1.6 140.5 26.7 192h130c26-51.5 38-141 26.6-192zM133.2 160c.8-35.8 20.9-59.1 18.8-96C150.1 29.8 129.3.1 96 0 62.6.1 41.9 29.8 40 64c-2.1 36.9 18 60.2 18.8 96h74.4zm3.7 32H55.1c-10.8 45.2-40 79.9-50.7 128-11.5 51.1.5 140.5 26.6 192h130c26.1-51.5 38.1-140.9 26.7-192-10.8-48.1-40-82.8-50.8-128z\"]\n};\nvar faBox = {\n prefix: 'fas',\n iconName: 'box',\n icon: [512, 512, [], \"f466\", \"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\"]\n};\nvar faBoxAlt = {\n prefix: 'fas',\n iconName: 'box-alt',\n icon: [448, 512, [], \"f49a\", \"M446.7 160c.4-.5.5-.7.9-1.2L391.3 53.9C386.9 40.8 374.7 32 360.9 32H256l32 128h158.7zM160 160l32-128H87.1c-13.8 0-26 8.8-30.4 21.9L.4 158.8c.4.5.5.7.9 1.2H160zm128 32v80c0 8.8-7.2 16-16 16h-96c-8.8 0-16-7.2-16-16v-80H0v256c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32V192H288z\"]\n};\nvar faBoxBallot = {\n prefix: 'fas',\n iconName: 'box-ballot',\n icon: [576, 512, [], \"f735\", \"M432 192l-.5-175.4c0-8.8-7.2-16-16-16L159.7 0c-8.9 0-16.2 7.2-16.2 16.2L144 192h288zM0 320v160c0 17.7 14.3 32 32 32h512c17.7 0 32-14.3 32-32V320H0zm574.7-32c.4-.5.5-.7.8-1.2L520 148.2c-4.9-12.1-16.6-20.1-29.7-20.1h-26.6l.2 64 16 32H95.5l16-32h.5l-.2-64H85.7c-13.1 0-24.8 8-29.7 20.1L.4 286.8c.3.5.5.7.8 1.2h573.5z\"]\n};\nvar faBoxCheck = {\n prefix: 'fas',\n iconName: 'box-check',\n icon: [640, 512, [], \"f467\", \"M240 0H98.6c-20.7 0-39 13.2-45.5 32.8L2.5 184.6c-.8 2.4-.8 4.9-1.2 7.4H240V0zm235.2 81.7l-16.3-48.8C452.4 13.2 434.1 0 413.4 0H272v157.4C315.9 109.9 378.4 80 448 80c9.2 0 18.3.6 27.2 1.7zM208 320c0-34.1 7.3-66.6 20.2-96H0v240c0 26.5 21.5 48 48 48h256.6C246.1 468.2 208 398.6 208 320zm240-192c-106 0-192 86-192 192s86 192 192 192 192-86 192-192-86-192-192-192zm114.1 147.8l-131 130c-4.3 4.3-11.3 4.3-15.6-.1l-75.7-76.3c-4.3-4.3-4.2-11.3.1-15.6l26-25.8c4.3-4.3 11.3-4.2 15.6.1l42.1 42.5 97.2-96.4c4.3-4.3 11.3-4.2 15.6.1l25.8 26c4.2 4.3 4.2 11.3-.1 15.5z\"]\n};\nvar faBoxFragile = {\n prefix: 'fas',\n iconName: 'box-fragile',\n icon: [448, 512, [], \"f49b\", \"M416 32H32C14.3 32 0 46.3 0 64v384c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32zm-96 160c0 47.5-34.6 86.7-80 94.4V384h40c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h40v-97.6c-45.4-7.7-80-46.8-80-94.4v-80c0-8.8 7.2-16 16-16h60.4l24.5 27.6-64 32 91 68.4-37-59.6 64-32L260.1 96H304c8.8 0 16 7.2 16 16v80z\"]\n};\nvar faBoxFull = {\n prefix: 'fas',\n iconName: 'box-full',\n icon: [640, 512, [], \"f49c\", \"M384.3 360.6L320 254l-64.2 106.6c-6.4 10.7-26.1 29.8-54.7 21.6L64 343v82c0 14.7 10 27.5 24.2 31l216.2 54.1c10.2 2.5 20.9 2.5 31 0L551.8 456c14.2-3.6 24.2-16.4 24.2-31v-82l-137 39.1c-28.5 8.2-48.2-10.7-54.7-21.5zM194.2 143.7c-1.3-5.1-2.2-10.3-2.2-15.7 0-35.3 28.7-64 64-64s64 28.7 64 64c0 11.2-3.1 21.5-8.2 30.7l8.2 1L475.3 140 511 41.7c3-8.3-1.3-17.5-9.6-20.5L445.9 1c-8.3-3-17.5 1.3-20.5 9.6L383.7 125C382 55.7 325.7 0 256 0c-70.7 0-128 57.3-128 128 0 2.5.6 4.9.7 7.4zM53.2 169L1.7 271.8c-4.6 9.2.3 20.2 10.1 23l197.9 56.5c7.1 2 14.7-1 18.5-7.3L320 192 69.8 160.1c-6.9-.8-13.5 2.7-16.6 8.9zm585.1 102.8L586.8 169c-3.1-6.2-9.8-9.8-16.7-8.9L320 192l91.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.1z\"]\n};\nvar faBoxHeart = {\n prefix: 'fas',\n iconName: 'box-heart',\n icon: [448, 512, [], \"f49d\", \"M447.6 158.8L391.3 53.9C386.9 40.8 374.7 32 360.9 32H240v128h206.7c.4-.5.5-.7.9-1.2zM0 192v256c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32V192H0zm305.1 149.2l-72.6 71.4c-4.7 4.6-12.3 4.6-17 0l-72.6-71.4c-21.1-20.7-19.8-55.1 3.7-74.2 20.5-16.7 51.1-13.7 70 4.8l7.4 7.3 7.4-7.3c18.8-18.5 49.4-21.5 70-4.8 23.5 19.1 24.7 53.4 3.7 74.2zM208 160V32H87.1c-13.8 0-26 8.8-30.4 21.9L.4 158.8c.4.5.5.7.9 1.2H208z\"]\n};\nvar faBoxOpen = {\n prefix: 'fas',\n iconName: 'box-open',\n icon: [640, 512, [], \"f49e\", \"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\"]\n};\nvar faBoxTissue = {\n prefix: 'fas',\n iconName: 'box-tissue',\n icon: [512, 512, [], \"e05b\", \"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\"]\n};\nvar faBoxUp = {\n prefix: 'fas',\n iconName: 'box-up',\n icon: [448, 512, [], \"f49f\", \"M416 32H32C14.3 32 0 46.3 0 64v384c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32zM57.8 179l64-80c3-3.8 9.5-3.8 12.5 0l64 80c4.2 5.2.4 13-6.2 13h-32v112c0 8.8-7.2 16-16 16h-32c-8.8 0-16-7.2-16-16V192H64c-6.7 0-10.4-7.8-6.2-13zM384 408c0 4.4-3.6 8-8 8H72c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h304c4.4 0 8 3.6 8 8v16zm0-216h-32v112c0 8.8-7.2 16-16 16h-32c-8.8 0-16-7.2-16-16V192h-32c-6.7 0-10.4-7.8-6.2-13l64-80c3-3.8 9.5-3.8 12.5 0l64 80c4.1 5.2.4 13-6.3 13z\"]\n};\nvar faBoxUsd = {\n prefix: 'fas',\n iconName: 'box-usd',\n icon: [448, 512, [], \"f4a0\", \"M447.6 158.8L391.3 53.9C386.9 40.8 374.7 32 360.9 32H240v128h206.7c.4-.5.5-.7.9-1.2zM208 160V32H87.1c-13.8 0-26 8.8-30.4 21.9L.4 158.8c.4.5.5.7.9 1.2H208zM0 192v256c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32V192H0zm240 223.9V432c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8v-16.3c-11.3-.6-22.3-4.5-31.4-11.3-3.9-2.9-4.1-8.8-.6-12.1l11.8-11.2c2.8-2.6 6.9-2.8 10.1-.7 3.9 2.4 8.3 3.7 12.8 3.7h28.1c6.5 0 11.8-5.9 11.8-13.2 0-6-3.6-11.2-8.8-12.7l-45-13.5c-18.6-5.6-31.6-23.4-31.6-43.4 0-24.5 19-44.4 42.7-45.1V240c0-4.4 3.6-8 8-8h16c4.4 0 8 3.6 8 8v16.3c11.3.6 22.3 4.5 31.4 11.3 3.9 2.9 4.1 8.8.6 12.1L260.2 291c-2.8 2.6-6.9 2.8-10.1.7-3.9-2.4-8.3-3.7-12.8-3.7h-28.1c-6.5 0-11.8 5.9-11.8 13.2 0 6 3.6 11.2 8.8 12.7l45 13.5c18.6 5.6 31.6 23.4 31.6 43.4-.1 24.5-19.2 44.5-42.8 45.1z\"]\n};\nvar faBoxes = {\n prefix: 'fas',\n iconName: 'boxes',\n icon: [576, 512, [], \"f468\", \"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\"]\n};\nvar faBoxesAlt = {\n prefix: 'fas',\n iconName: 'boxes-alt',\n icon: [576, 512, [], \"f4a1\", \"M240 288h-80v88c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-88H16c-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-64-64h224c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16h-80v88c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V0h-80c-8.8 0-16 7.2-16 16v192c0 8.8 7.2 16 16 16zm384 64h-80v88c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-88h-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-16z\"]\n};\nvar faBoxingGlove = {\n prefix: 'fas',\n iconName: 'boxing-glove',\n icon: [448, 512, [], \"f438\", \"M384 160h-31.1c-26.3 0-48.3 20.8-48.8 47.1-.5 24.6 17.6 45.1 41.1 48.4 4 .6 6.9 4.1 6.9 8.1v16c0 4.7-4.1 8.5-8.8 8-40-4.4-71.2-38.4-71.2-79.5 0-5.5.6-10.8 1.6-16H141.2c-30.6 0-59.5-10.9-82.3-30.8-3.5-3.1-3.7-8.4-.4-11.7l11.3-11.3c3-3 7.7-3.1 10.9-.4 16.9 14.4 38.1 22.3 60.5 22.3H288v.5c28.4-38.1 66.9-32.5 96-32.5V96c0-53-43-96-96-96H96C43.3 0 0 43.1 0 95.9c0 63.9 5.3 127.8 15.8 190.8L32 384h40c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H32v64c0 17.7 14.3 32 32 32h256c17.7 0 32-14.3 32-32v-64h-40c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h40l58.5-58.5C450.8 285.1 448 237.8 448 224c0-35.3-28.7-64-64-64zM260.8 441.6l-9.6 12.8c-2.6 3.5-7.7 4.3-11.2 1.6l-48-36-48 36c-3.5 2.7-8.6 1.9-11.2-1.6l-9.6-12.8c-2.6-3.5-1.9-8.5 1.6-11.2l40.5-30.4-40.5-30.4c-3.5-2.6-4.3-7.7-1.6-11.2l9.6-12.8c2.6-3.5 7.7-4.3 11.2-1.6l48 36 48-36c3.5-2.7 8.6-1.9 11.2 1.6l9.6 12.8c2.6 3.5 1.9 8.5-1.6 11.2L218.7 400l40.5 30.4c3.5 2.6 4.2 7.7 1.6 11.2z\"]\n};\nvar faBrackets = {\n prefix: 'fas',\n iconName: 'brackets',\n icon: [448, 512, [], \"f7e9\", \"M144 32H32A32 32 0 0 0 0 64v384a32 32 0 0 0 32 32h112a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H64V96h80a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm272 0H304a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h80v320h-80a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h112a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32z\"]\n};\nvar faBracketsCurly = {\n prefix: 'fas',\n iconName: 'brackets-curly',\n icon: [576, 512, [], \"f7ea\", \"M208 32h-48a96 96 0 0 0-96 96v37.48a32.06 32.06 0 0 1-9.38 22.65L9.37 233.37a32 32 0 0 0 0 45.26l45.25 45.25A32 32 0 0 1 64 346.51V384a96 96 0 0 0 96 96h48a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-48a32 32 0 0 1-32-32v-37.48a96 96 0 0 0-28.13-67.89L77.25 256l22.63-22.63A96 96 0 0 0 128 165.48V128a32 32 0 0 1 32-32h48a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm358.63 201.37l-45.25-45.24a32.06 32.06 0 0 1-9.38-22.65V128a96 96 0 0 0-96-96h-48a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h48a32 32 0 0 1 32 32v37.47a96 96 0 0 0 28.13 67.91L498.75 256l-22.62 22.63A96 96 0 0 0 448 346.52V384a32 32 0 0 1-32 32h-48a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h48a96 96 0 0 0 96-96v-37.49a32 32 0 0 1 9.38-22.63l45.25-45.25a32 32 0 0 0 0-45.26z\"]\n};\nvar faBraille = {\n prefix: 'fas',\n iconName: 'braille',\n icon: [640, 512, [], \"f2a1\", \"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\"]\n};\nvar faBrain = {\n prefix: 'fas',\n iconName: 'brain',\n icon: [576, 512, [], \"f5dc\", \"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\"]\n};\nvar faBreadLoaf = {\n prefix: 'fas',\n iconName: 'bread-loaf',\n icon: [640, 512, [], \"f7eb\", \"M480 192c0-88.37-107.45-160-240-160S0 103.63 0 192c0 35.35 26.86 64 60 64h4v192a32 32 0 0 0 32 32h288a32 32 0 0 0 32-32V256h4c33.14 0 60-28.65 60-64zM400 32c-2.43 0-4.78.2-7.19.24C465.2 66.39 512 124.62 512 192c0 42.75-26.92 79.06-64 91.46V448a63.27 63.27 0 0 1-8.9 32H544a32 32 0 0 0 32-32V256h4c33.14 0 60-28.65 60-64 0-88.37-107.45-160-240-160z\"]\n};\nvar faBreadSlice = {\n prefix: 'fas',\n iconName: 'bread-slice',\n icon: [576, 512, [], \"f7ec\", \"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\"]\n};\nvar faBriefcase = {\n prefix: 'fas',\n iconName: 'briefcase',\n icon: [512, 512, [], \"f0b1\", \"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\"]\n};\nvar faBriefcaseMedical = {\n prefix: 'fas',\n iconName: 'briefcase-medical',\n icon: [512, 512, [], \"f469\", \"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\"]\n};\nvar faBringForward = {\n prefix: 'fas',\n iconName: 'bring-forward',\n icon: [512, 512, [], \"f856\", \"M352 304V48a48 48 0 0 0-48-48H48A48 48 0 0 0 0 48v256a48 48 0 0 0 48 48h256a48 48 0 0 0 48-48zm112-144h-80v64h64v224H224v-64h-64v80a48 48 0 0 0 48 48h256a48 48 0 0 0 48-48V208a48 48 0 0 0-48-48z\"]\n};\nvar faBringFront = {\n prefix: 'fas',\n iconName: 'bring-front',\n icon: [640, 512, [], \"f857\", \"M480 368V144a48 48 0 0 0-48-48H208a48 48 0 0 0-48 48v224a48 48 0 0 0 48 48h224a48 48 0 0 0 48-48zM64 64h192V32a32 32 0 0 0-32-32H32A32 32 0 0 0 0 32v192a32 32 0 0 0 32 32h96v-64H64zm544 192h-96v64h64v128H384v32a32 32 0 0 0 32 32h192a32 32 0 0 0 32-32V288a32 32 0 0 0-32-32z\"]\n};\nvar faBroadcastTower = {\n prefix: 'fas',\n iconName: 'broadcast-tower',\n icon: [640, 512, [], \"f519\", \"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\"]\n};\nvar faBroom = {\n prefix: 'fas',\n iconName: 'broom',\n icon: [640, 512, [], \"f51a\", \"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\"]\n};\nvar faBrowser = {\n prefix: 'fas',\n iconName: 'browser',\n icon: [512, 512, [], \"f37e\", \"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-48zM128 148c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm320 0c0 6.6-5.4 12-12 12H188c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h248c6.6 0 12 5.4 12 12v40z\"]\n};\nvar faBrush = {\n prefix: 'fas',\n iconName: 'brush',\n icon: [384, 512, [], \"f55d\", \"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\"]\n};\nvar faBug = {\n prefix: 'fas',\n iconName: 'bug',\n icon: [512, 512, [], \"f188\", \"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\"]\n};\nvar faBuilding = {\n prefix: 'fas',\n iconName: 'building',\n icon: [448, 512, [], \"f1ad\", \"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\"]\n};\nvar faBullhorn = {\n prefix: 'fas',\n iconName: 'bullhorn',\n icon: [576, 512, [], \"f0a1\", \"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\"]\n};\nvar faBullseye = {\n prefix: 'fas',\n iconName: 'bullseye',\n icon: [496, 512, [], \"f140\", \"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\"]\n};\nvar faBullseyeArrow = {\n prefix: 'fas',\n iconName: 'bullseye-arrow',\n icon: [496, 512, [], \"f648\", \"M305.05 98.74l16.57 49.7-90.59 90.59c-9.38 9.38-9.38 24.56 0 33.94 9.37 9.37 24.56 9.38 33.94 0l90.59-90.59 49.7 16.57c7.39 2.46 15.53.54 21.04-4.96l63.67-63.67c10.8-10.8 6.46-29.2-8.04-34.04l-55.66-18.55-18.55-55.65c-4.83-14.5-23.23-18.84-34.04-8.04L310.02 77.7a20.582 20.582 0 0 0-4.97 21.04zm-75.17 96.19l55.14-55.14-2.12-6.38c-11.17-3.17-22.72-5.41-34.9-5.41-70.69 0-128 57.31-128 128s57.31 128 128 128 128-57.31 128-128c0-12.18-2.24-23.73-5.42-34.89l-6.37-2.12-55.14 55.14C301.19 300.55 276.95 320 248 320c-35.29 0-64-28.71-64-64 0-28.95 19.45-53.19 45.88-61.07zm254.55-13.83l-35.5 35.5c-5.5 5.5-12.07 9.48-19.17 12.07 1.33 8.94 2.25 18.02 2.25 27.33 0 101.69-82.29 184-184 184-101.69 0-184-82.29-184-184 0-101.69 82.29-184 184-184 9.42 0 18.6.93 27.63 2.29 2.58-7.02 6.23-13.69 11.76-19.22l35.5-35.5A247.848 247.848 0 0 0 248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248c0-26.11-4.09-51.26-11.57-74.9z\"]\n};\nvar faBullseyePointer = {\n prefix: 'fas',\n iconName: 'bullseye-pointer',\n icon: [496, 512, [], \"f649\", \"M242.16 240.67L27.98 301.55c-15.17 4.31-16.95 25.1-2.73 31.92l68.47 32.89-89.17 89.17c-6.07 6.06-6.07 15.9 0 21.96l21.96 21.96c6.07 6.06 15.9 6.06 21.96 0l89.17-89.17 32.89 68.47c6.83 14.22 27.61 12.44 31.92-2.73l60.87-214.18c3.68-12.91-8.25-24.83-21.16-21.17zm40.91 68.76l-20.79 73.13C326.16 375.37 376 321.8 376 256c0-70.69-57.31-128-128-128-65.8 0-119.38 49.84-126.56 113.72l73.13-20.78C206.02 203.54 225.66 192 248 192c35.29 0 64 28.71 64 64 0 22.34-11.54 41.98-28.93 53.43zM248 8C111.03 8 0 119.03 0 256c0 8.39.44 16.67 1.26 24.85 5.22-4.39 11.05-8.11 17.98-10.08l44.87-12.75c-.01-.68-.1-1.33-.1-2.01 0-101.69 82.29-184 184-184 101.69 0 184 82.29 184 184 0 101.69-82.29 184-184 184-.68 0-1.34-.09-2.01-.1l-12.75 44.87c-1.97 6.94-5.69 12.77-10.06 17.98 8.17.81 16.45 1.25 24.83 1.25 136.97 0 248-111.03 248-248S384.97 8 248 8z\"]\n};\nvar faBurgerSoda = {\n prefix: 'fas',\n iconName: 'burger-soda',\n icon: [640, 512, [], \"f858\", \"M352 176v-32a16 16 0 0 0-16-16H206.74l20-80H272a16 16 0 0 0 16-16V16a16 16 0 0 0-16-16h-51.5a40 40 0 0 0-38.81 30.3L157.26 128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16zm-88.45 142.22a64.71 64.71 0 0 1 3.74-66.82c6.72-9.87 15.07-18.86 24.09-27.4H38.27l25.78 258.29A31.88 31.88 0 0 0 96 512h160a31.59 31.59 0 0 0 13.65-3.36A79.55 79.55 0 0 1 256 464a47.93 47.93 0 0 1 17-36.61 63.91 63.91 0 0 1 4.58-91.27 64 64 0 0 1-14.03-17.9zM624 448H304a16 16 0 0 0-16 16 48 48 0 0 0 48 48h256a48 48 0 0 0 48-48 16 16 0 0 0-16-16zm-16-96H320a32 32 0 0 0 0 64h288a32 32 0 0 0 0-64zm-314.26-82.59c-14.53 21.32.19 50.59 25.54 50.59h289.45c25.35 0 40-29.27 25.53-50.59C604.8 226.13 539.94 192.07 464 192s-140.79 34.13-170.26 77.41zM544 240a16 16 0 1 1-16 16 16 16 0 0 1 16-16zm-80-16a16 16 0 1 1-16 16 16 16 0 0 1 16-16zm-80 16a16 16 0 1 1-16 16 16 16 0 0 1 16-16z\"]\n};\nvar faBurn = {\n prefix: 'fas',\n iconName: 'burn',\n icon: [384, 512, [], \"f46a\", \"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\"]\n};\nvar faBurrito = {\n prefix: 'fas',\n iconName: 'burrito',\n icon: [512, 512, [], \"f7ed\", \"M307.29 230.32C278.33 310.45 201.65 368 111.57 368A206.93 206.93 0 0 1 .72 335.76c-3.72 33.8 6.86 68.88 32.74 94.74L81 478a116.2 116.2 0 0 0 164.22 0l216-215.73A175.28 175.28 0 0 0 351.83 224c-15.22 0-30.04 2.53-44.54 6.32zM287.76 160a174.91 174.91 0 0 0-38.33-109.28l-216 215.73A115.28 115.28 0 0 0 9 302.83 175.18 175.18 0 0 0 111.57 336c97.14 0 176.19-78.95 176.19-176zM512 123a74.14 74.14 0 0 0-52.31-70.74A74.18 74.18 0 0 0 358 6.73 80.14 80.14 0 0 0 325.8 0c-22.06 0-42 9.37-56.81 24.26A204.24 204.24 0 0 1 316.61 195a209.73 209.73 0 0 1 35.22-3 207.25 207.25 0 0 1 135.88 50.75C502.63 228 512 208 512 186a80.08 80.08 0 0 0-6.74-32.12A73.35 73.35 0 0 0 512 123z\"]\n};\nvar faBus = {\n prefix: 'fas',\n iconName: 'bus',\n icon: [512, 512, [], \"f207\", \"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\"]\n};\nvar faBusAlt = {\n prefix: 'fas',\n iconName: 'bus-alt',\n icon: [512, 512, [], \"f55e\", \"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\"]\n};\nvar faBusSchool = {\n prefix: 'fas',\n iconName: 'bus-school',\n icon: [512, 512, [], \"f5dd\", \"M488 112h-24V80c0-44.8-92.11-80-208-80S48 35.2 48 80v32H24c-13.25 0-24 10.74-24 24v80c0 13.25 10.75 24 24 24h24v20.9c-9.39 5.57-16 15.38-16 27.1v128c0 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-32c17.67 0 32-14.33 32-32V288c0-11.72-6.61-21.52-16-27.1V240h24c13.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 312c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm128-128h-96c-17.67 0-32-14.33-32-32v-64c0-17.67 14.33-32 32-32h96v128zm32 0V128h96c17.67 0 32 14.33 32 32v64c0 17.67-14.33 32-32 32h-96zm128 128c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"]\n};\nvar faBusinessTime = {\n prefix: 'fas',\n iconName: 'business-time',\n icon: [640, 512, [], \"f64a\", \"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\"]\n};\nvar faCabinetFiling = {\n prefix: 'fas',\n iconName: 'cabinet-filing',\n icon: [512, 512, [], \"f64b\", \"M480 0H32C14.33 0 0 14.33 0 32v192h512V32c0-17.67-14.33-32-32-32zM352 152c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-24H192v24c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-40c0-8.84 7.16-16 16-16h160c8.84 0 16 7.16 16 16v40zM0 480c0 17.67 14.33 32 32 32h448c17.67 0 32-14.33 32-32V256H0v224zm160-112c0-8.84 7.16-16 16-16h160c8.84 0 16 7.16 16 16v40c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-24H192v24c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-40z\"]\n};\nvar faCactus = {\n prefix: 'fas',\n iconName: 'cactus',\n icon: [512, 512, [], \"f8a7\", \"M464 224a48 48 0 0 0-48 48v64a16 16 0 0 1-16 16h-48V101.43c0-52-38.93-98.58-90.84-101.29A96 96 0 0 0 160 96v128h-48a16 16 0 0 1-16-16v-64a48 48 0 0 0-96 0v64a112 112 0 0 0 112 112h48v160a32 32 0 0 0 32 32h128a32 32 0 0 0 32-32v-32h48a112 112 0 0 0 112-112v-64a48 48 0 0 0-48-48zm-240-48a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm64 224a16 16 0 1 1 16-16 16 16 0 0 1-16 16z\"]\n};\nvar faCalculator = {\n prefix: 'fas',\n iconName: 'calculator',\n icon: [448, 512, [], \"f1ec\", \"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\"]\n};\nvar faCalculatorAlt = {\n prefix: 'fas',\n iconName: 'calculator-alt',\n icon: [512, 512, [], \"f64c\", \"M192 288H32c-17.67 0-32 14.33-32 32v160c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32V320c0-17.67-14.33-32-32-32zm-29.09 140.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 0L112 422.63l-28.29 28.29c-3.12 3.12-8.19 3.12-11.31 0L61.09 439.6c-3.12-3.12-3.12-8.19 0-11.31L89.37 400l-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.3 28.28 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.31L134.63 400l28.28 28.29zM480 0H320c-17.67 0-32 14.33-32 32v160c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32zm-16 120c0 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-8h40V56c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v40h40c4.42 0 8 3.58 8 8v16zm16 168H320c-17.67 0-32 14.33-32 32v160c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32V320c0-17.67-14.33-32-32-32zm-16 152c0 4.42-3.58 8-8 8H344c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h112c4.42 0 8 3.58 8 8v16zm0-64c0 4.42-3.58 8-8 8H344c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h112c4.42 0 8 3.58 8 8v16zM192 0H32C14.33 0 0 14.33 0 32v160c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32zm-16 120c0 4.42-3.58 8-8 8H56c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h112c4.42 0 8 3.58 8 8v16z\"]\n};\nvar faCalendar = {\n prefix: 'fas',\n iconName: 'calendar',\n icon: [448, 512, [], \"f133\", \"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\"]\n};\nvar faCalendarAlt = {\n prefix: 'fas',\n iconName: 'calendar-alt',\n icon: [448, 512, [], \"f073\", \"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\"]\n};\nvar faCalendarCheck = {\n prefix: 'fas',\n iconName: 'calendar-check',\n icon: [448, 512, [], \"f274\", \"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\"]\n};\nvar faCalendarDay = {\n prefix: 'fas',\n iconName: 'calendar-day',\n icon: [448, 512, [], \"f783\", \"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\"]\n};\nvar faCalendarEdit = {\n prefix: 'fas',\n iconName: 'calendar-edit',\n icon: [448, 512, [], \"f333\", \"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-12zm208.4 109.6l-95 95-5.4 48.2c-.7 6.4 4.7 11.9 11.2 11.2l48.2-5.4 95-95c2-2 2-5.2 0-7.2l-46.8-46.8c-2-2-5.2-2-7.2 0zm109.7-30.3l-25.4-25.4c-7.9-7.9-20.7-7.9-28.6 0l-26 26c-2 2-2 5.2 0 7.2l46.8 46.8c2 2 5.2 2 7.2 0l26-26c7.9-7.9 7.9-20.7 0-28.6z\"]\n};\nvar faCalendarExclamation = {\n prefix: 'fas',\n iconName: 'calendar-exclamation',\n icon: [448, 512, [], \"f334\", \"M0 148v-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 12H12c-6.6 0-12-5.4-12-12zm448 56v260c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V204c0-6.6 5.4-12 12-12h424c6.6 0 12 5.4 12 12zM224 392c-22.1 0-40 17.9-40 40s17.9 40 40 40 40-17.9 40-40-17.9-40-40-40zm-39.2-139.2l7.2 112c.4 6.3 5.6 11.2 12 11.2h40c6.3 0 11.6-4.9 12-11.2l7.2-112c.4-6.9-5-12.8-12-12.8h-54.4c-6.9 0-12.4 5.9-12 12.8z\"]\n};\nvar faCalendarMinus = {\n prefix: 'fas',\n iconName: 'calendar-minus',\n icon: [448, 512, [], \"f272\", \"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\"]\n};\nvar faCalendarPlus = {\n prefix: 'fas',\n iconName: 'calendar-plus',\n icon: [448, 512, [], \"f271\", \"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\"]\n};\nvar faCalendarStar = {\n prefix: 'fas',\n iconName: 'calendar-star',\n icon: [448, 512, [], \"f736\", \"M400 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-48zM0 464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V192H0v272zm134.1-143.7l54.7-8 24.5-49.6c4.4-9 17.1-8.8 21.5 0l24.5 49.6 54.7 8c9.8 1.4 13.7 13.5 6.6 20.5L281 379.4l9.4 54.6c1.7 9.9-8.7 17.2-17.4 12.6l-49-25.8-48.9 25.8c-8.7 4.6-19.1-2.8-17.4-12.6l9.4-54.6-39.6-38.6c-7.2-7-3.2-19.1 6.6-20.5z\"]\n};\nvar faCalendarTimes = {\n prefix: 'fas',\n iconName: 'calendar-times',\n icon: [448, 512, [], \"f273\", \"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\"]\n};\nvar faCalendarWeek = {\n prefix: 'fas',\n iconName: 'calendar-week',\n icon: [448, 512, [], \"f784\", \"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\"]\n};\nvar faCamcorder = {\n prefix: 'fas',\n iconName: 'camcorder',\n icon: [576, 512, [], \"f8a8\", \"M525.59 165.7L416 241.3v157.4l109.59 75.5c21.21 14.6 50.41-.29 50.41-25.79V191.5c0-25.41-29.09-40.41-50.41-25.8zM336.2 160H96v-32a32 32 0 0 1 32-32h176a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H128a96 96 0 0 0-96 96v34.89A47.66 47.66 0 0 0 0 207.8v224.4A47.81 47.81 0 0 0 47.8 480h288.4a47.81 47.81 0 0 0 47.8-47.8V207.8a47.81 47.81 0 0 0-47.8-47.8zM320 249.6a6.41 6.41 0 0 1-6.4 6.4H70.4a6.41 6.41 0 0 1-6.4-6.4v-19.2a6.41 6.41 0 0 1 6.4-6.4h243.2a6.41 6.41 0 0 1 6.4 6.4z\"]\n};\nvar faCamera = {\n prefix: 'fas',\n iconName: 'camera',\n icon: [512, 512, [], \"f030\", \"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\"]\n};\nvar faCameraAlt = {\n prefix: 'fas',\n iconName: 'camera-alt',\n icon: [512, 512, [], \"f332\", \"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 88zm-120 0c0-17.6 14.4-32 32-32 8.8 0 16-7.2 16-16s-7.2-16-16-16c-35.3 0-64 28.7-64 64 0 8.8 7.2 16 16 16s16-7.2 16-16z\"]\n};\nvar faCameraHome = {\n prefix: 'fas',\n iconName: 'camera-home',\n icon: [448, 512, [], \"f8fe\", \"M384,0H64A64,64,0,0,0,0,64V352a64,64,0,0,0,64,64h72.71L76.53,450.83c-6.9,4.33-12.5,14.45-12.5,22.6v11.9A26.68,26.68,0,0,0,90.7,512H357.37A26.68,26.68,0,0,0,384,485.33V473.45c0-8.17-5.65-18.3-12.58-22.62L311.28,416H384a64,64,0,0,0,64-64V64A64,64,0,0,0,384,0ZM224,352h-.05a144,144,0,1,1,.05,0Zm0-256h-.05a112,112,0,1,0,.05,0Zm0,80a32,32,0,0,0-32,32,16,16,0,0,1-32,0,64.06,64.06,0,0,1,64-64,16,16,0,0,1,0,32Z\"]\n};\nvar faCameraMovie = {\n prefix: 'fas',\n iconName: 'camera-movie',\n icon: [576, 512, [], \"f8a9\", \"M535.68 260.59L448 321.05V447l87.66 60.39c17 11.68 40.32-.23 40.32-20.63V281.22c.02-20.32-23.25-32.32-40.3-20.63zM368.2 288H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h48v112.2a47.81 47.81 0 0 0 47.8 47.8h256.4a47.81 47.81 0 0 0 47.8-47.8V335.8a47.81 47.81 0 0 0-47.8-47.8zM352 0c-48.57 0-90.31 27.37-112 67.23C218.31 27.37 176.57 0 128 0a128 128 0 0 0 0 256h224a128 128 0 0 0 0-256zM128 192a64 64 0 1 1 64-64 64.07 64.07 0 0 1-64 64zm224 0a64 64 0 1 1 64-64 64.07 64.07 0 0 1-64 64z\"]\n};\nvar faCameraPolaroid = {\n prefix: 'fas',\n iconName: 'camera-polaroid',\n icon: [576, 512, [], \"f8aa\", \"M570.63 343.94L512 256V80a48 48 0 0 0-48-48H112a48 48 0 0 0-48 48v176L5.38 343.94A32 32 0 0 0 0 361.69V448a32 32 0 0 0 32 32h512a32 32 0 0 0 32-32v-86.31a32 32 0 0 0-5.37-17.75zM392 112a8 8 0 0 1 8-8h32a8 8 0 0 1 8 8v32a8 8 0 0 1-8 8h-32a8 8 0 0 1-8-8zm-104 16a64 64 0 1 1-64 64 64.1 64.1 0 0 1 64-64zm192 280a8 8 0 0 1-8 8H104a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h368a8 8 0 0 1 8 8z\"]\n};\nvar faCameraRetro = {\n prefix: 'fas',\n iconName: 'camera-retro',\n icon: [512, 512, [], \"f083\", \"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\"]\n};\nvar faCampfire = {\n prefix: 'fas',\n iconName: 'campfire',\n icon: [512, 512, [], \"f6ba\", \"M501 450.17l-139.97-44.68L501 360.81c8.26-2.64 12.86-11.61 10.28-20.04l-9.35-30.55c-2.58-8.43-11.37-13.13-19.62-10.5L256 371.96 29.69 299.72c-8.26-2.63-17.04 2.07-19.62 10.5L.72 340.77c-2.58 8.43 2.02 17.41 10.28 20.04l139.97 44.68L11 450.17C2.74 452.8-1.86 461.78.72 470.21l9.35 30.55c2.58 8.43 11.37 13.13 19.62 10.5L256 439.02l226.31 72.24c8.26 2.63 17.04-2.07 19.62-10.5l9.35-30.55c2.58-8.43-2.02-17.4-10.28-20.04zM256 320c79.53 0 144-64.47 144-144 0-33.29-33.42-101.96-80-144-13.37 12.06-25.45 24.75-36.14 37.48C266.34 46.01 244.61 22.21 220 0c-63.17 56.98-108 131.22-108 176 0 79.53 64.47 144 144 144zM220.5 92.48c4.23 5.09 60.42 80.06 60.42 80.06l35.84-42.72c2.53 4.37 4.83 8.65 6.89 12.76 16.71 33.33 9.66 75.99-20.44 97.99C289.97 250.26 273.64 256 256 256c-44.11 0-80-30.49-80-80 0-24.66 14.86-46.39 44.5-83.52z\"]\n};\nvar faCampground = {\n prefix: 'fas',\n iconName: 'campground',\n icon: [640, 512, [], \"f6bb\", \"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\"]\n};\nvar faCandleHolder = {\n prefix: 'fas',\n iconName: 'candle-holder',\n icon: [448, 512, [], \"f6bc\", \"M160 192c45.93 0 78-32.61 78-79.29C238 82.72 205.41 37.82 160 0c-45.62 38-78 82.84-78 112.71 0 46.68 32.07 79.29 78 79.29zm216 176c-39.7 0-72 32.3-72 72 0 8.46 1.73 16.46 4.42 24H16c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h360c39.7 0 72-32.3 72-72s-32.3-72-72-72zm0 96c-13.23 0-24-10.77-24-24s10.77-24 24-24 24 10.77 24 24-10.77 24-24 24zM256 256c0-17.67-14.33-32-32-32h-64v48c0 8.84-7.16 16-16 16s-16-7.16-16-16v-48H96c-17.67 0-32 14.33-32 32v176h192V256z\"]\n};\nvar faCandyCane = {\n prefix: 'fas',\n iconName: 'candy-cane',\n icon: [512, 512, [], \"f786\", \"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\"]\n};\nvar faCandyCorn = {\n prefix: 'fas',\n iconName: 'candy-corn',\n icon: [640, 512, [], \"f6bd\", \"M187.09 307.14c-43.74 43.74-71.71 81.05-88.97 107.56 115.85 67.98 243.97 122.28 280.91 85.33l.06-.06c36.88-37.09-17.38-165.27-85.4-281.18-26.45 17.31-63.38 45.14-106.6 88.35zM326 446.95c-19.61-3.51-50.11-14.01-87.69-30.88 8.55-9.53 17.64-19.32 28.02-29.7 10.04-10.04 19.56-18.92 28.81-27.24 16.87 37.64 27.36 68.18 30.86 87.82zm-48.89-255.73c-9.69-15.74-19.51-31.14-29.28-45.81-18.62-27.95-44.49-55.7-162.89 60.4-116.1 118.4-88.35 144.27-60.4 162.89 14.73 9.81 30.2 19.68 46.01 29.41 18.29-28.22 47.93-67.63 93.91-113.61 45.46-45.46 84.5-74.94 112.65-93.28zM480 0C314.19 1.62 315.52 39.54 322.11 72.47c3.47 17.35 7.44 35.27 11.74 53.33 32.89-7.02 81.71-13.93 146.74-13.93 64.29 0 112.75 6.76 145.62 13.7 4.28-17.98 8.22-35.81 11.68-53.1C644.48 39.54 645.81 1.62 480 0zM341.62 157.03C375.47 287.01 427.67 416 479.91 416h.09c52.3-.15 104.57-129.16 138.44-259.21-30.94-6.47-76.74-12.91-137.85-12.91-61.87 0-108.03 6.6-138.97 13.15zm138.33 183.93c-11.38-16.35-25.53-45.33-40.17-83.84 12.78-.69 26.14-1.19 40.81-1.19 14.2 0 27.21.45 39.63 1.11-14.68 38.55-28.86 67.56-40.27 83.92z\"]\n};\nvar faCannabis = {\n prefix: 'fas',\n iconName: 'cannabis',\n icon: [512, 512, [], \"f55f\", \"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\"]\n};\nvar faCapsules = {\n prefix: 'fas',\n iconName: 'capsules',\n icon: [576, 512, [], \"f46b\", \"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\"]\n};\nvar faCar = {\n prefix: 'fas',\n iconName: 'car',\n icon: [512, 512, [], \"f1b9\", \"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\"]\n};\nvar faCarAlt = {\n prefix: 'fas',\n iconName: 'car-alt',\n icon: [480, 512, [], \"f5de\", \"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\"]\n};\nvar faCarBattery = {\n prefix: 'fas',\n iconName: 'car-battery',\n icon: [512, 512, [], \"f5df\", \"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\"]\n};\nvar faCarBuilding = {\n prefix: 'fas',\n iconName: 'car-building',\n icon: [640, 512, [], \"f859\", \"M213.52 455.07A88.41 88.41 0 0 1 192 397.24v-28.69a89.11 89.11 0 0 1 42.09-75.84l7.55-20.71H220a12 12 0 0 1-12-12v-40a12 12 0 0 1 12-12h40a11.79 11.79 0 0 1 9.43 4.92A131.1 131.1 0 0 1 352 162.18V32a32 32 0 0 0-32-32H32A32 32 0 0 0 0 32v464a16 16 0 0 0 16 16h205.06a59.85 59.85 0 0 1-7.54-28.69zM208 92a12 12 0 0 1 12-12h40a12 12 0 0 1 12 12v40a12 12 0 0 1-12 12h-40a12 12 0 0 1-12-12zm-64 296a12 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 12zm0-128a12 12 0 0 1-12 12H92a12 12 0 0 1-12-12V92a12 12 0 0 1 12-12h40a12 12 0 0 1 12 12zm460.58 183.56L600 304.2l-17.87-49.08a99.92 99.92 0 0 0-93.2-63.12H375.07a99.94 99.94 0 0 0-93.24 63.12L264 304.2l-4.55 11.35a57.41 57.41 0 0 0-35.42 53v28.69a57 57 0 0 0 21.52 44.46v41.61A28.69 28.69 0 0 0 274.21 512h28.69a28.69 28.69 0 0 0 28.68-28.69V448h200.83v35.31A28.7 28.7 0 0 0 561.1 512h28.69a28.7 28.7 0 0 0 28.69-28.69V441.7A57 57 0 0 0 640 397.24v-28.69a57.39 57.39 0 0 0-35.42-52.99zM335.11 284c6.53-16.92 22.36-28 40-28h113.82c17.6 0 33.42 11.1 40 28L541 320H323zM300 407.85c-14.4 0-24-9.57-24-23.93S285.6 360 300 360s36 21.53 36 35.89-21.6 11.96-36 11.96zm264 0c-14.4 0-36 2.39-36-12S549.6 360 564 360s24 9.57 24 23.92-9.6 23.93-24 23.93z\"]\n};\nvar faCarBump = {\n prefix: 'fas',\n iconName: 'car-bump',\n icon: [576, 512, [], \"f5e0\", \"M575.67 492.44c2.06 9.91-5.85 19.27-16.13 19.27h-158.9c-10.29 0-18.19-9.35-16.13-19.27 9.07-43.75 48.42-76.67 95.58-76.67s86.51 32.92 95.58 76.67zm-401.95-39.28c7.2 16.17-.24 35.04-16.62 42.15l-32.21 13.98c-16.38 7.11-35.5-.23-42.7-16.4l-22.56-50.64c-13.99-6.28-25.89-17.26-32.57-32.24L5.45 361.49C-5.9 336 1.13 307.34 20.57 289.3l-1.04-30.49-1.89-55.13c-1.62-47.33 25.71-90.22 69.62-109.28l121.08-52.56c43.92-19.06 94.42-9.95 128.66 23.22l39.89 38.64 22.06 21.37c26.61-1.95 52.76 12.31 64.12 37.79l21.62 48.52c6.68 14.98 6.83 31.06 2.06 45.48l22.56 50.64c7.2 16.17-.24 35.04-16.62 42.15l-32.21 13.98c-16.38 7.11-35.5-.23-42.7-16.4l-13.79-30.95-244.06 105.93 13.79 30.95zm181.42-205.69c8.02 18.01 34.14 3.09 52.45-4.85 18.3-7.94 25.16-25.25 17.13-43.26-8.02-18.01-25.58-24.72-43.88-16.78-18.3 7.95-33.73 46.88-25.7 64.89zm-213.56 92.7c-8.02-18.01-47.52-33.11-65.82-25.17-18.3 7.94-25.16 25.25-17.13 43.26 8.02 18.01 25.58 24.72 43.88 16.78 18.3-7.95 47.1-16.86 39.07-34.87zm188.63-189.52l-39.89-38.64c-14.59-14.13-36.43-18.07-55.14-9.95L114.1 154.62c-18.71 8.12-30.53 26.67-29.84 46.84l1.89 55.13 244.06-105.94z\"]\n};\nvar faCarBus = {\n prefix: 'fas',\n iconName: 'car-bus',\n icon: [640, 512, [], \"f85a\", \"M604.58 315.56L600 304.2l-17.87-49.08a99.92 99.92 0 0 0-93.2-63.12H375.07a99.92 99.92 0 0 0-93.23 63.12L264 304.2l-4.55 11.36a57.39 57.39 0 0 0-35.42 53v28.69a57 57 0 0 0 21.52 44.46V480a32 32 0 0 0 32 32h22.07a32 32 0 0 0 32-32v-32h200.79v32a32 32 0 0 0 32 32h22.07a32 32 0 0 0 32-32v-38.3A57 57 0 0 0 640 397.24v-28.69a57.39 57.39 0 0 0-35.42-52.99zM335.11 284c6.53-16.92 22.36-28 40-28h113.82c17.6 0 33.42 11.1 40 28L541 320H323zM300 407.85c-14.4 0-24-9.57-24-23.92S285.6 360 300 360s36 21.53 36 35.89-21.6 11.96-36 11.96zm264 0c-14.4 0-36 2.39-36-12S549.6 360 564 360s24 9.57 24 23.93-9.6 23.92-24 23.92zM252.12 243.23a134.44 134.44 0 0 1 9.65-19.23H192V80h81.33A14.67 14.67 0 0 1 288 94.67v98.07a131.26 131.26 0 0 1 64-30.56V62.86C352 27.66 274.06 0 176 0S0 27.66 0 62.86v259.81A29.33 29.33 0 0 0 29.33 352H40v32a32 32 0 0 0 32 32h23.17a32 32 0 0 0 32-32v-32h67c4.63-24.49 18.73-46.08 40-59.29zM80 312a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm80-88H78.67A14.67 14.67 0 0 1 64 209.33V94.67A14.67 14.67 0 0 1 78.67 80H160z\"]\n};\nvar faCarCrash = {\n prefix: 'fas',\n iconName: 'car-crash',\n icon: [640, 512, [], \"f5e1\", \"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\"]\n};\nvar faCarGarage = {\n prefix: 'fas',\n iconName: 'car-garage',\n icon: [640, 512, [], \"f5e2\", \"M512.49 292.9l-5.07-12.67-19.93-49.83C470.38 187.63 429.57 160 383.5 160h-127c-46.06 0-86.88 27.63-103.99 70.4l-19.93 49.82-5.07 12.67C104.33 302.52 88 325.34 88 352v32c0 20.12 9.48 37.86 24 49.59V480c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h224v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-46.41c14.52-11.73 24-29.47 24-49.59v-32c0-26.66-16.33-49.48-39.51-59.1zM160 399.8c-19.2 0-32-12.76-32-31.9s12.8-31.9 32-31.9 48 28.71 48 47.85-28.8 15.95-48 15.95zm38.4-111.79l13.53-33.83c7.29-18.22 24.94-30.17 44.57-30.17h127c19.63 0 37.28 11.95 44.57 30.17l13.53 33.83H198.4zM480 399.8c-19.2 0-48 3.19-48-15.95S460.8 336 480 336s32 12.76 32 31.9-12.8 31.9-32 31.9zm151.76-231.57L331.67 3.02a24.04 24.04 0 0 0-23.34 0L8.24 168.23c-7.73 4.3-10.52 14.05-6.22 21.79l7.78 14.01c4.3 7.74 14.05 10.52 21.79 6.22L320 51.53l288.41 158.73c7.74 4.3 17.49 1.51 21.79-6.22l7.78-14.01c4.3-7.75 1.51-17.5-6.22-21.8z\"]\n};\nvar faCarMechanic = {\n prefix: 'fas',\n iconName: 'car-mechanic',\n icon: [512, 512, [], \"f5e3\", \"M503.91 104h-55.98l-24-24 24-24h55.97c5.95 0 9.9-6.31 7.25-11.64-15.19-30.52-49.01-50.04-86.84-42.87-25.65 4.86-46.72 22.98-57.05 46.51H145.01c-12.38-28.17-40.2-48-72.94-48C40.75 0 13.9 18.12.84 44.37-1.81 49.69 2.15 56 8.09 56h55.98l24 24-24 24H8.09c-5.95 0-9.9 6.31-7.25 11.64 15.19 30.52 49.01 50.04 86.84 42.87 25.65-4.86 46.73-22.99 57.05-46.51h222.25c12.38 28.17 40.2 48 72.94 48 31.32 0 58.17-18.12 71.23-44.37 2.66-5.33-1.3-11.63-7.24-11.63zm-55.42 188.91l-5.07-12.67-19.93-49.83c-17.11-42.77-57.92-70.4-103.99-70.4h-127c-46.06 0-86.88 27.63-103.99 70.4l-19.93 49.82-5.07 12.67C40.33 302.52 24 325.34 24 352v32c0 20.12 9.48 37.86 24 49.59V480c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h224v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-46.41c14.52-11.73 24-29.47 24-49.59v-32c0-26.66-16.33-49.48-39.51-59.09zM96 399.8c-19.2 0-32-12.76-32-31.9S76.8 336 96 336s48 28.71 48 47.85-28.8 15.95-48 15.95zm38.4-111.79l13.53-33.83c7.29-18.22 24.94-30.17 44.57-30.17h127c19.63 0 37.28 11.95 44.57 30.17l13.53 33.83H134.4zM416 399.8c-19.2 0-48 3.19-48-15.95S396.8 336 416 336s32 12.76 32 31.9-12.8 31.9-32 31.9z\"]\n};\nvar faCarSide = {\n prefix: 'fas',\n iconName: 'car-side',\n icon: [640, 512, [], \"f5e4\", \"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\"]\n};\nvar faCarTilt = {\n prefix: 'fas',\n iconName: 'car-tilt',\n icon: [640, 512, [], \"f5e5\", \"M624 448H317.12l-42.1-42.1 192.33-192.33 22.63 22.63c12.5 12.5 32.76 12.5 45.25 0l22.63-22.63c12.5-12.5 12.5-32.76 0-45.26l-38.24-38.23c-1-14.91-6.93-29.56-18.33-40.96l-33.94-33.94c-19.33-19.33-47.88-23.53-71.42-12.96L368.11 30.3 318.78 9.15C276.45-9 228.04.32 195.47 32.9l-89.8 89.81c-32.57 32.57-41.89 80.97-23.75 123.31l21.14 49.33 11.92 27.82c-10.57 23.54-6.37 52.09 12.96 71.42L181.36 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-16zM399.47 100.43c13.58-13.58 31.65-13.61 45.18-.07 13.54 13.54 13.51 31.61-.07 45.19s-31.69 36.2-45.22 22.66c-13.53-13.54-13.47-54.21.11-67.78zM140.74 220.81a48.003 48.003 0 0 1 10.18-52.85l89.8-89.8a48.003 48.003 0 0 1 52.85-10.18l49.33 21.14-181.02 181.01-21.14-49.32zm77.57 151c-13.58 13.58-31.65 13.61-45.19.07-13.53-13.53-13.51-31.61.07-45.18 13.58-13.58 54.24-13.64 67.78-.11 13.54 13.54-9.09 31.65-22.66 45.22z\"]\n};\nvar faCarWash = {\n prefix: 'fas',\n iconName: 'car-wash',\n icon: [464, 512, [], \"f5e6\", \"M349.33 85.33C349.33 61.77 392 0 392 0s42.67 61.77 42.67 85.33S415.56 128 392 128s-42.67-19.11-42.67-42.67zM232 128c23.56 0 42.67-19.1 42.67-42.67S232 0 232 0s-42.67 61.77-42.67 85.33S208.44 128 232 128zm-160 0c23.56 0 42.67-19.1 42.67-42.67S72 0 72 0 29.33 61.77 29.33 85.33 48.44 128 72 128zm392 224v32c0 20.12-9.48 37.86-24 49.59V480c0 17.67-14.33 32-32 32h-32c-17.67 0-32-14.33-32-32v-32H120v32c0 17.67-14.33 32-32 32H56c-17.67 0-32-14.33-32-32v-46.41C9.48 421.86 0 404.13 0 384v-32c0-26.67 16.33-49.48 39.51-59.1l5.07-12.67 19.93-49.82c17.11-42.77 57.92-70.4 103.99-70.4h127c46.06 0 86.88 27.63 103.99 70.4l19.93 49.83 5.07 12.67C447.67 302.52 464 325.34 464 352zm-344 31.85C120 364.71 91.2 336 72 336s-32 12.76-32 31.9 12.8 31.9 32 31.9 48 3.19 48-15.95zm233.6-95.84l-13.53-33.83c-7.29-18.22-24.94-30.17-44.57-30.17h-127c-19.63 0-37.28 11.95-44.57 30.17l-13.53 33.83h243.2zM424 367.9c0-19.14-12.8-31.9-32-31.9s-48 28.71-48 47.85 28.8 15.95 48 15.95 32-12.76 32-31.9z\"]\n};\nvar faCaravan = {\n prefix: 'fas',\n iconName: 'caravan',\n icon: [640, 512, [], \"f8ff\", \"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\"]\n};\nvar faCaravanAlt = {\n prefix: 'fas',\n iconName: 'caravan-alt',\n icon: [640, 512, [], \"e000\", \"M624,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,32Zm192,0a32,32,0,0,1-32,32H352a32,32,0,0,1-32-32V128a32,32,0,0,1,32-32h64a32,32,0,0,1,32,32Z\"]\n};\nvar faCaretCircleDown = {\n prefix: 'fas',\n iconName: 'caret-circle-down',\n icon: [512, 512, [], \"f32d\", \"M504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-379.5-27.5l123 123c4.7 4.7 12.3 4.7 17 0l123-123c7.6-7.6 2.2-20.5-8.5-20.5H133c-10.7 0-16.1 12.9-8.5 20.5z\"]\n};\nvar faCaretCircleLeft = {\n prefix: 'fas',\n iconName: 'caret-circle-left',\n icon: [512, 512, [], \"f32e\", \"M256 504C119 504 8 393 8 256S119 8 256 8s248 111 248 248-111 248-248 248zm27.5-379.5l-123 123c-4.7 4.7-4.7 12.3 0 17l123 123c7.6 7.6 20.5 2.2 20.5-8.5V133c0-10.7-12.9-16.1-20.5-8.5z\"]\n};\nvar faCaretCircleRight = {\n prefix: 'fas',\n iconName: 'caret-circle-right',\n icon: [512, 512, [], \"f330\", \"M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm-27.5 379.5l123-123c4.7-4.7 4.7-12.3 0-17l-123-123c-7.6-7.6-20.5-2.2-20.5 8.5v246c0 10.7 12.9 16.1 20.5 8.5z\"]\n};\nvar faCaretCircleUp = {\n prefix: 'fas',\n iconName: 'caret-circle-up',\n icon: [512, 512, [], \"f331\", \"M8 256C8 119 119 8 256 8s248 111 248 248-111 248-248 248S8 393 8 256zm379.5 27.5l-123-123c-4.7-4.7-12.3-4.7-17 0l-123 123c-7.6 7.6-2.2 20.5 8.5 20.5h246c10.7 0 16.1-12.9 8.5-20.5z\"]\n};\nvar faCaretDown = {\n prefix: 'fas',\n iconName: 'caret-down',\n icon: [320, 512, [], \"f0d7\", \"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\"]\n};\nvar faCaretLeft = {\n prefix: 'fas',\n iconName: 'caret-left',\n icon: [192, 512, [], \"f0d9\", \"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\"]\n};\nvar faCaretRight = {\n prefix: 'fas',\n iconName: 'caret-right',\n icon: [192, 512, [], \"f0da\", \"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\"]\n};\nvar faCaretSquareDown = {\n prefix: 'fas',\n iconName: 'caret-square-down',\n icon: [448, 512, [], \"f150\", \"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\"]\n};\nvar faCaretSquareLeft = {\n prefix: 'fas',\n iconName: 'caret-square-left',\n icon: [448, 512, [], \"f191\", \"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\"]\n};\nvar faCaretSquareRight = {\n prefix: 'fas',\n iconName: 'caret-square-right',\n icon: [448, 512, [], \"f152\", \"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\"]\n};\nvar faCaretSquareUp = {\n prefix: 'fas',\n iconName: 'caret-square-up',\n icon: [448, 512, [], \"f151\", \"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\"]\n};\nvar faCaretUp = {\n prefix: 'fas',\n iconName: 'caret-up',\n icon: [320, 512, [], \"f0d8\", \"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\"]\n};\nvar faCarrot = {\n prefix: 'fas',\n iconName: 'carrot',\n icon: [512, 512, [], \"f787\", \"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\"]\n};\nvar faCars = {\n prefix: 'fas',\n iconName: 'cars',\n icon: [640, 512, [], \"f85b\", \"M252.13 243.23A131.77 131.77 0 0 1 375.07 160h38.41a57.49 57.49 0 0 0-32.9-36.44L376 112.2l-17.84-49.08A99.92 99.92 0 0 0 264.93 0H151.07a99.92 99.92 0 0 0-93.23 63.12L40 112.2l-4.55 11.36A57.39 57.39 0 0 0 0 176.55v28.69a57 57 0 0 0 21.52 44.46V288a32 32 0 0 0 32 32h22.07a32 32 0 0 0 32-32v-32h139.88zM111.11 92c6.53-16.92 22.36-28 40-28h113.82c17.6 0 33.42 11.1 40 28L317 128H99zM76 215.85c-14.4 0-24-9.57-24-23.92S61.6 168 76 168s36 21.53 36 35.89-21.6 11.96-36 11.96zm528.58 99.71L600 304.2l-17.87-49.08a99.92 99.92 0 0 0-93.2-63.12H375.07a99.92 99.92 0 0 0-93.23 63.12L264 304.2l-4.55 11.36a57.39 57.39 0 0 0-35.42 53v28.69a57 57 0 0 0 21.52 44.46V480a32 32 0 0 0 32 32h22.07a32 32 0 0 0 32-32v-32h200.79v32a32 32 0 0 0 32 32h22.07a32 32 0 0 0 32-32v-38.3A57 57 0 0 0 640 397.24v-28.69a57.39 57.39 0 0 0-35.42-52.99zM335.11 284c6.53-16.92 22.36-28 40-28h113.82c17.6 0 33.42 11.1 40 28L541 320H323zM300 407.85c-14.4 0-24-9.57-24-23.93S285.6 360 300 360s36 21.53 36 35.89-21.6 11.96-36 11.96zm264 0c-14.4 0-36 2.39-36-12S549.6 360 564 360s24 9.57 24 23.92-9.6 23.93-24 23.93z\"]\n};\nvar faCartArrowDown = {\n prefix: 'fas',\n iconName: 'cart-arrow-down',\n icon: [576, 512, [], \"f218\", \"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\"]\n};\nvar faCartPlus = {\n prefix: 'fas',\n iconName: 'cart-plus',\n icon: [576, 512, [], \"f217\", \"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\"]\n};\nvar faCashRegister = {\n prefix: 'fas',\n iconName: 'cash-register',\n icon: [512, 512, [], \"f788\", \"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\"]\n};\nvar faCassetteTape = {\n prefix: 'fas',\n iconName: 'cassette-tape',\n icon: [512, 512, [], \"f8ab\", \"M464 63H48a48 48 0 0 0-48 48v288a48 48 0 0 0 48 48h32l48-96h256l48 96h32a48 48 0 0 0 48-48V111a48 48 0 0 0-48-48zM128 255a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm182.78 0H201.22a78.91 78.91 0 0 0 0-64h109.56a78.91 78.91 0 0 0 0 64zm73.22 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32zM147.78 383l-32 64h280.44l-32-64z\"]\n};\nvar faCat = {\n prefix: 'fas',\n iconName: 'cat',\n icon: [512, 512, [], \"f6be\", \"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\"]\n};\nvar faCatSpace = {\n prefix: 'fas',\n iconName: 'cat-space',\n icon: [640, 512, [], \"e001\", \"M544,32.72461V32l-.39648.39648C516.86914,12.32617,484.00391,0,448,0s-68.86914,12.32617-95.60352,32.39648L352,32v.72461C313.35156,61.93164,288,107.82422,288,160a159.95251,159.95251,0,0,0,3.89258,34.31445c-35.83985,5.3418-91.793,23.25782-131.89258,83.63867V192A96.105,96.105,0,0,0,64,96a32,32,0,0,0,0,64,32.04169,32.04169,0,0,1,32,32V448a64.06328,64.06328,0,0,0,64,64H336a15.9908,15.9908,0,0,0,16-16V480a32.00158,32.00158,0,0,0-32-32H288l128-96V496a15.9908,15.9908,0,0,0,16,16h32a15.9908,15.9908,0,0,0,16-16V316.77539A160.036,160.036,0,0,0,608,160C608,107.82422,582.64844,61.93164,544,32.72461ZM448,32a127.06647,127.06647,0,0,1,72.9375,23.0625L480,96H416L375.0625,55.0625A127.06647,127.06647,0,0,1,448,32Zm56,128a16,16,0,1,1-16-16A15.9908,15.9908,0,0,1,504,160Zm-80,0a16,16,0,1,1-16-16A15.9908,15.9908,0,0,1,424,160Zm24,128A128.14414,128.14414,0,0,1,320,160c0-32.16992,12.334-61.25391,32-83.76367V160a96,96,0,0,0,192,0V76.23633C563.666,98.74609,576,127.83008,576,160A128.14414,128.14414,0,0,1,448,288ZM162.94531,68.76953l39.71094,16.56055,16.5625,39.71094a5.32345,5.32345,0,0,0,9.53906,0l16.5586-39.71094,39.71484-16.56055a5.336,5.336,0,0,0,0-9.541l-39.71484-16.5586L228.75781,2.957a5.325,5.325,0,0,0-9.53906,0l-16.5625,39.71289-39.71094,16.5586a5.336,5.336,0,0,0,0,9.541Z\"]\n};\nvar faCauldron = {\n prefix: 'fas',\n iconName: 'cauldron',\n icon: [448, 512, [], \"f6bf\", \"M448 212v-40c0-6.63-6.27-12-14-12H14c-7.73 0-14 5.37-14 12v40c0 6.63 6.27 12 14 12h19.79C12.39 262.52 0 305.28 0 345.6c0 39.08 11.82 70.65 32 95.53V488c0 13.25 10.75 24 24 24s24-10.75 24-24v-7.49c38.95 21.3 89.14 31.49 144 31.49s105.05-10.19 144-31.49V488c0 13.25 10.75 24 24 24s24-10.75 24-24v-46.87c20.18-24.88 32-56.45 32-95.53 0-40.32-12.39-83.08-33.79-121.6H434c7.73 0 14-5.37 14-12zM160 64c17.67 0 32-14.33 32-32S177.67 0 160 0s-32 14.33-32 32 14.33 32 32 32zm112 64c26.51 0 48-21.49 48-48s-21.49-48-48-48-48 21.49-48 48 21.49 48 48 48z\"]\n};\nvar faCctv = {\n prefix: 'fas',\n iconName: 'cctv',\n icon: [576, 512, [], \"f8ac\", \"M517.45 168.58L139.24 2.29a32 32 0 0 0-39.67 13.84L4.23 183a32 32 0 0 0 16.85 46l156.57 64.85L137.81 400H64v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v128a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32h96a32 32 0 0 0 30-20.77l46.85-124.94 68.52 28.38a32 32 0 0 0 27.89-2.94l189.26-118.31c22.21-13.88 19.25-47.11-5.07-56.84zm48.47 105.2l-35.45-15.59-138.4 86.5 119.58 52.58a16.86 16.86 0 0 0 22.22-8.65l40.7-92.62a16.85 16.85 0 0 0-8.65-22.22z\"]\n};\nvar faCertificate = {\n prefix: 'fas',\n iconName: 'certificate',\n icon: [512, 512, [], \"f0a3\", \"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\"]\n};\nvar faChair = {\n prefix: 'fas',\n iconName: 'chair',\n icon: [448, 512, [], \"f6c0\", \"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\"]\n};\nvar faChairOffice = {\n prefix: 'fas',\n iconName: 'chair-office',\n icon: [448, 512, [], \"f6c1\", \"M64 224v-64c0-17.67-14.33-32-32-32S0 142.33 0 160v64c0 17.67 14.33 32 32 32s32-14.33 32-32zm352-96c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32s32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm-64-64c0-35.35-28.65-64-64-64H160c-35.35 0-64 28.65-64 64v192h256V64zm51.67 245.88A31.996 31.996 0 0 0 373.31 288H74.69c-13.77 0-26 8.81-30.36 21.88l-10.67 32C26.76 362.6 42.18 384 64.03 384H192v67.36c-28.27 6.01-50.99 19.69-61.85 37.21-6.41 10.34 2.41 23.43 15.02 23.43h157.66c12.61 0 21.44-13.09 15.02-23.43-10.86-17.52-33.59-31.2-61.85-37.21V384h127.97c21.84 0 37.27-21.4 30.36-42.12l-10.66-32z\"]\n};\nvar faChalkboard = {\n prefix: 'fas',\n iconName: 'chalkboard',\n icon: [640, 512, [], \"f51b\", \"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\"]\n};\nvar faChalkboardTeacher = {\n prefix: 'fas',\n iconName: 'chalkboard-teacher',\n icon: [640, 512, [], \"f51c\", \"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\"]\n};\nvar faChargingStation = {\n prefix: 'fas',\n iconName: 'charging-station',\n icon: [576, 512, [], \"f5e7\", \"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\"]\n};\nvar faChartArea = {\n prefix: 'fas',\n iconName: 'chart-area',\n icon: [512, 512, [], \"f1fe\", \"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\"]\n};\nvar faChartBar = {\n prefix: 'fas',\n iconName: 'chart-bar',\n icon: [512, 512, [], \"f080\", \"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\"]\n};\nvar faChartLine = {\n prefix: 'fas',\n iconName: 'chart-line',\n icon: [512, 512, [], \"f201\", \"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\"]\n};\nvar faChartLineDown = {\n prefix: 'fas',\n iconName: 'chart-line-down',\n icon: [512, 512, [], \"f64d\", \"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-16zm-16-80V185.94c0-21.38-25.85-32.09-40.97-16.97l-32.4 32.4-96-96c-12.5-12.5-32.76-12.5-45.25 0L192 178.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.63l68.69 68.69c12.5 12.5 32.76 12.5 45.25 0L288 173.25l73.38 73.38-32.4 32.4c-15.12 15.12-4.41 40.97 16.97 40.97H464c8.84 0 16-7.17 16-16z\"]\n};\nvar faChartNetwork = {\n prefix: 'fas',\n iconName: 'chart-network',\n icon: [640, 512, [], \"f78a\", \"M576 192c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zM64 240c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64zm449.6-37.2l-19.2-25.6-48 36 19.2 25.6 48-36zM576 384c-14.4 0-27.6 5-38.3 13l-96-57.6c3.8-11.2 6.3-23 6.3-35.5 0-61.9-50.1-112-112-112-8.4 0-16.6 1.1-24.4 2.9l-40.8-87.4C281.4 96 288 80.8 288 64c0-35.3-28.7-64-64-64s-64 28.7-64 64 28.7 64 64 64c1.1 0 2.1-.3 3.2-.3l41 87.8C241.5 235.9 224 267.8 224 304c0 61.9 50.1 112 112 112 32.1 0 60.8-13.7 81.2-35.3l95.8 57.5c-.5 3.2-1 6.5-1 9.8 0 35.3 28.7 64 64 64s64-28.7 64-64-28.7-64-64-64zm-240-32c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm-184-32h48v-32h-48v32z\"]\n};\nvar faChartPie = {\n prefix: 'fas',\n iconName: 'chart-pie',\n icon: [544, 512, [], \"f200\", \"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\"]\n};\nvar faChartPieAlt = {\n prefix: 'fas',\n iconName: 'chart-pie-alt',\n icon: [512, 512, [], \"f64e\", \"M461.29 288H224V50.71c0-9.55-8.39-17.39-17.84-16.06C87.08 51.47-3.96 155.43.13 280.07 4.2 404.1 107.91 507.8 231.93 511.87c124.64 4.09 228.6-86.95 245.42-206.03 1.33-9.45-6.52-17.84-16.06-17.84zM288.8.04C279.68-.59 272 7.1 272 16.24V240h223.77c9.14 0 16.82-7.69 16.2-16.8C503.72 103.74 408.26 8.28 288.8.04z\"]\n};\nvar faChartScatter = {\n prefix: 'fas',\n iconName: 'chart-scatter',\n icon: [512, 512, [], \"f7ee\", \"M496 384H64V80a16 16 0 0 0-16-16H16A16 16 0 0 0 0 80v336a32 32 0 0 0 32 32h464a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-336-64a32 32 0 1 0-32-32 32 32 0 0 0 32 32zm256-160a32 32 0 1 0-32-32 32 32 0 0 0 32 32zm-224 0a32 32 0 1 0-32-32 32 32 0 0 0 32 32zm192 160a32 32 0 1 0-32-32 32 32 0 0 0 32 32zm-96-64a32 32 0 1 0-32-32 32 32 0 0 0 32 32z\"]\n};\nvar faCheck = {\n prefix: 'fas',\n iconName: 'check',\n icon: [512, 512, [], \"f00c\", \"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\"]\n};\nvar faCheckCircle = {\n prefix: 'fas',\n iconName: 'check-circle',\n icon: [512, 512, [], \"f058\", \"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\"]\n};\nvar faCheckDouble = {\n prefix: 'fas',\n iconName: 'check-double',\n icon: [512, 512, [], \"f560\", \"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\"]\n};\nvar faCheckSquare = {\n prefix: 'fas',\n iconName: 'check-square',\n icon: [448, 512, [], \"f14a\", \"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\"]\n};\nvar faCheese = {\n prefix: 'fas',\n iconName: 'cheese',\n icon: [512, 512, [], \"f7ef\", \"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\"]\n};\nvar faCheeseSwiss = {\n prefix: 'fas',\n iconName: 'cheese-swiss',\n icon: [512, 512, [], \"f7f0\", \"M368 336a48 48 0 0 1-48-48H0v160a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V288h-96a48 48 0 0 1-48 48zm-192 96a48 48 0 1 1 48-48 48 48 0 0 1-48 48zM299.83 32a32 32 0 0 0-21.13 7l-61.76 48.06a47.91 47.91 0 0 1-75.1 58.48L0 256h512c0-119.89-94-217.8-212.17-224z\"]\n};\nvar faCheeseburger = {\n prefix: 'fas',\n iconName: 'cheeseburger',\n icon: [512, 512, [], \"f7f1\", \"M464 256h-48l-96 64-96-64H48a48 48 0 0 0 0 96h416a48 48 0 0 0 0-96zM58.6 224h394.7c34.6 0 54.6-43.9 34.8-75.9C448 83.2 359.5 32.1 256 32c-103.5.1-192 51.2-232.2 116.1-19.8 32 .3 75.9 34.8 75.9zM384 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-16zm352 272H32a16 16 0 0 0-16 16v16a64.06 64.06 0 0 0 64 64h352a64.06 64.06 0 0 0 64-64v-16a16 16 0 0 0-16-16z\"]\n};\nvar faChess = {\n prefix: 'fas',\n iconName: 'chess',\n icon: [512, 512, [], \"f439\", \"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\"]\n};\nvar faChessBishop = {\n prefix: 'fas',\n iconName: 'chess-bishop',\n icon: [320, 512, [], \"f43a\", \"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\"]\n};\nvar faChessBishopAlt = {\n prefix: 'fas',\n iconName: 'chess-bishop-alt',\n icon: [256, 512, [], \"f43b\", \"M64 288h14.89A535.84 535.84 0 0 1 64 384h128a535.84 535.84 0 0 1-14.89-96H192a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-11.67c16-6.67 26.48-25.09 26.48-50.43 0-19.32-7.2-42.34-17.73-63.33l-48.59 48.59a4 4 0 0 1-5.66 0l-5.66-5.66a4 4 0 0 1 0-5.65L181 111.7c-10.22-16.81-22.2-31.22-33.86-39.33C155.31 69.59 160 61.85 160 52.73 160 41.28 151.92 32 140.47 32h-24.94C104.08 32 96 41.28 96 52.73c0 9.12 4.69 16.86 12.87 19.64-28.58 19.87-59.68 76.75-59.68 117.2 0 25.34 10.49 43.76 26.48 50.43H64a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm183.16 171.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.31z\"]\n};\nvar faChessBoard = {\n prefix: 'fas',\n iconName: 'chess-board',\n icon: [512, 512, [], \"f43c\", \"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\"]\n};\nvar faChessClock = {\n prefix: 'fas',\n iconName: 'chess-clock',\n icon: [640, 512, [], \"f43d\", \"M519.38 243a12 12 0 0 0-17 0l-50.89 50.89a12 12 0 0 0 0 17l5.65 5.66a12 12 0 0 0 17 0L525 265.59a12 12 0 0 0 0-17zm80.52-115h-56v-16a16 16 0 0 0-16-16h-128a16 16 0 0 0-16 16v16H200.15V79.94H240a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H112a16 16 0 0 0-16 16v15.94a16 16 0 0 0 16 16h40.18V128H39.9a40 40 0 0 0-40 40v272a40 40 0 0 0 40 40h560a40 40 0 0 0 40-40V168a40 40 0 0 0-40-40zM176.2 416.06a112 112 0 1 1 112-111.95 111.95 111.95 0 0 1-112 111.95zm288 0a112 112 0 1 1 112-111.95 111.95 111.95 0 0 1-112 111.95zm-284-191.92h-8a12 12 0 0 0-12 12v72a12 12 0 0 0 12 12h8a12 12 0 0 0 12-12v-72a12 12 0 0 0-12-12z\"]\n};\nvar faChessClockAlt = {\n prefix: 'fas',\n iconName: 'chess-clock-alt',\n icon: [640, 512, [], \"f43e\", \"M600 128H487.75V80H528a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H400a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h39.75v48H255.91v-16a16 16 0 0 0-16-16h-128a16 16 0 0 0-16 16v16H40a40.17 40.17 0 0 0-40 40.11V440a40 40 0 0 0 40 40h560a40 40 0 0 0 40-40V168.11A40.17 40.17 0 0 0 600 128zM175.93 416.06a112 112 0 1 1 112-111.95 112 112 0 0 1-112 111.95zm287.89 0a112 112 0 1 1 112-111.95 112 112 0 0 1-112 111.95zM231.12 243a12 12 0 0 0-17 0l-50.89 50.89a12 12 0 0 0 0 17l5.66 5.66a12 12 0 0 0 17 0l50.89-50.9a12 12 0 0 0 0-17zm236.7-18.84h-8a12 12 0 0 0-12 12v72a12 12 0 0 0 12 12h8a12 12 0 0 0 12-12v-72a12 12 0 0 0-12-12.02z\"]\n};\nvar faChessKing = {\n prefix: 'fas',\n iconName: 'chess-king',\n icon: [448, 512, [], \"f43f\", \"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\"]\n};\nvar faChessKingAlt = {\n prefix: 'fas',\n iconName: 'chess-king-alt',\n icon: [320, 512, [], \"f440\", \"M106 208H96a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h15.94A535.78 535.78 0 0 1 96 384h128a535.78 535.78 0 0 1-15.94-128H224a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-10l33.89-90.38a16 16 0 0 0-15-21.62H176V64h24a8 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 8v24h-24a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v32H87.09a16 16 0 0 0-15 21.62zm173.16 251.58L256 448v-16a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v16l-23.15 11.58A16 16 0 0 0 32 473.89V496a16 16 0 0 0 16 16h224a16 16 0 0 0 16-16v-22.11a16 16 0 0 0-8.84-14.31z\"]\n};\nvar faChessKnight = {\n prefix: 'fas',\n iconName: 'chess-knight',\n icon: [384, 512, [], \"f441\", \"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\"]\n};\nvar faChessKnightAlt = {\n prefix: 'fas',\n iconName: 'chess-knight-alt',\n icon: [320, 512, [], \"f442\", \"M311.16 459.58L288 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 16h288a16 16 0 0 0 16-16v-22.11a16 16 0 0 0-8.84-14.31zM45.55 235.52l28.83 12.86a22.59 22.59 0 0 0 17.67.34l9.09-3.65a22.79 22.79 0 0 0 13.33-14.62l6.53-21.87a17.09 17.09 0 0 1 8.92-11.15l14.2-5.43v37.21a28.58 28.58 0 0 1-16.9 26.09L80.68 279C40.87 299.22 32.42 352.42 64 384h192c7-7.85 16-18.31 16-32V203.16C272 126.62 209.38 64 132.84 64H40.52A8.54 8.54 0 0 0 32 72.56 12.14 12.14 0 0 0 33.27 78l10.1 20.28-6.37 6.35a17.21 17.21 0 0 0-5 12.11v97.9a22.86 22.86 0 0 0 13.55 20.88zM80.07 128a16 16 0 1 1-15.94 16 16 16 0 0 1 15.94-16z\"]\n};\nvar faChessPawn = {\n prefix: 'fas',\n iconName: 'chess-pawn',\n icon: [320, 512, [], \"f443\", \"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\"]\n};\nvar faChessPawnAlt = {\n prefix: 'fas',\n iconName: 'chess-pawn-alt',\n icon: [256, 512, [], \"f444\", \"M64 288h14.89A535.84 535.84 0 0 1 64 384h128a535.84 535.84 0 0 1-14.89-96H192a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16.44a80 80 0 1 0-95.12 0H64a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16zm183.16 171.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.31z\"]\n};\nvar faChessQueen = {\n prefix: 'fas',\n iconName: 'chess-queen',\n icon: [512, 512, [], \"f445\", \"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\"]\n};\nvar faChessQueenAlt = {\n prefix: 'fas',\n iconName: 'chess-queen-alt',\n icon: [256, 512, [], \"f446\", \"M67.37 192H64a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h16v14a535.76 535.76 0 0 1-16 130h128a535.76 535.76 0 0 1-16-130v-14h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-3.37l44.5-95.73a6.73 6.73 0 0 0-2.29-8.62l-10.06-6.71c-3.13-2.08-7.12-1-9.38 2a20.05 20.05 0 0 1-19.89 7.67c-9.74-1.81-16.35-11-16.35-21a5.65 5.65 0 0 0-5.64-5.61h-16.33a5.45 5.45 0 0 0-5.41 4.17 20.22 20.22 0 0 1-39.56 0 5.45 5.45 0 0 0-5.41-4.17H86.48a5.65 5.65 0 0 0-5.64 5.64c0 10.82-8 20.53-18.81 21.26a20 20 0 0 1-17.49-8.06 6.81 6.81 0 0 0-9.3-1.91l-10.08 6.72a6.73 6.73 0 0 0-2.29 8.62zM128 48a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm119.16 411.6L224 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.31z\"]\n};\nvar faChessRook = {\n prefix: 'fas',\n iconName: 'chess-rook',\n icon: [384, 512, [], \"f447\", \"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\"]\n};\nvar faChessRookAlt = {\n prefix: 'fas',\n iconName: 'chess-rook-alt',\n icon: [320, 512, [], \"f448\", \"M311.16 459.58L288 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 16h288a16 16 0 0 0 16-16v-22.11a16 16 0 0 0-8.84-14.31zM71.81 210.32L57.33 384h205.34l-14.48-173.7 30.62-31.11a32 32 0 0 0 9.19-22.45V72a8 8 0 0 0-8-8h-35.18a8 8 0 0 0-8 8v40h-32.94V72a8 8 0 0 0-8-8h-71.75a8 8 0 0 0-8 8v40H83.19V72a8 8 0 0 0-8-8H40a8 8 0 0 0-8 8v84.82a32 32 0 0 0 9.21 22.47zm64.6 21.27a23.59 23.59 0 0 1 47.18 0v47.18h-47.18z\"]\n};\nvar faChevronCircleDown = {\n prefix: 'fas',\n iconName: 'chevron-circle-down',\n icon: [512, 512, [], \"f13a\", \"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\"]\n};\nvar faChevronCircleLeft = {\n prefix: 'fas',\n iconName: 'chevron-circle-left',\n icon: [512, 512, [], \"f137\", \"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\"]\n};\nvar faChevronCircleRight = {\n prefix: 'fas',\n iconName: 'chevron-circle-right',\n icon: [512, 512, [], \"f138\", \"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\"]\n};\nvar faChevronCircleUp = {\n prefix: 'fas',\n iconName: 'chevron-circle-up',\n icon: [512, 512, [], \"f139\", \"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\"]\n};\nvar faChevronDoubleDown = {\n prefix: 'fas',\n iconName: 'chevron-double-down',\n icon: [448, 512, [], \"f322\", \"M207 477.5L12.7 283.1c-9.4-9.4-9.4-24.6 0-33.9l22.7-22.7c9.4-9.4 24.5-9.4 33.9 0l154.7 154 154.7-154c9.4-9.3 24.5-9.3 33.9 0l22.7 22.7c9.4 9.4 9.4 24.6 0 33.9L241 477.5c-9.4 9.3-24.6 9.3-34 0zm34-192L435.3 91.1c9.4-9.4 9.4-24.6 0-33.9l-22.7-22.7c-9.4-9.4-24.5-9.4-33.9 0L224 188.5 69.3 34.5c-9.4-9.3-24.5-9.3-33.9 0L12.7 57.2c-9.4 9.4-9.4 24.6 0 33.9L207 285.5c9.4 9.3 24.6 9.3 34 0z\"]\n};\nvar faChevronDoubleLeft = {\n prefix: 'fas',\n iconName: 'chevron-double-left',\n icon: [512, 512, [], \"f323\", \"M34.5 239L228.9 44.7c9.4-9.4 24.6-9.4 33.9 0l22.7 22.7c9.4 9.4 9.4 24.5 0 33.9L131.5 256l154 154.7c9.3 9.4 9.3 24.5 0 33.9l-22.7 22.7c-9.4 9.4-24.6 9.4-33.9 0L34.5 273c-9.3-9.4-9.3-24.6 0-34zm192 34l194.3 194.3c9.4 9.4 24.6 9.4 33.9 0l22.7-22.7c9.4-9.4 9.4-24.5 0-33.9L323.5 256l154-154.7c9.3-9.4 9.3-24.5 0-33.9l-22.7-22.7c-9.4-9.4-24.6-9.4-33.9 0L226.5 239c-9.3 9.4-9.3 24.6 0 34z\"]\n};\nvar faChevronDoubleRight = {\n prefix: 'fas',\n iconName: 'chevron-double-right',\n icon: [512, 512, [], \"f324\", \"M477.5 273L283.1 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.7-22.7c-9.4-9.4-9.4-24.5 0-33.9l154-154.7-154-154.7c-9.3-9.4-9.3-24.5 0-33.9l22.7-22.7c9.4-9.4 24.6-9.4 33.9 0L477.5 239c9.3 9.4 9.3 24.6 0 34zm-192-34L91.1 44.7c-9.4-9.4-24.6-9.4-33.9 0L34.5 67.4c-9.4 9.4-9.4 24.5 0 33.9l154 154.7-154 154.7c-9.3 9.4-9.3 24.5 0 33.9l22.7 22.7c9.4 9.4 24.6 9.4 33.9 0L285.5 273c9.3-9.4 9.3-24.6 0-34z\"]\n};\nvar faChevronDoubleUp = {\n prefix: 'fas',\n iconName: 'chevron-double-up',\n icon: [448, 512, [], \"f325\", \"M241 34.5l194.3 194.3c9.4 9.4 9.4 24.6 0 33.9l-22.7 22.7c-9.4 9.4-24.5 9.4-33.9 0L224 131.5l-154.7 154c-9.4 9.3-24.5 9.3-33.9 0l-22.7-22.7c-9.4-9.4-9.4-24.6 0-33.9L207 34.5c9.4-9.3 24.6-9.3 34 0zm-34 192L12.7 420.9c-9.4 9.4-9.4 24.6 0 33.9l22.7 22.7c9.4 9.4 24.5 9.4 33.9 0l154.7-154 154.7 154c9.4 9.3 24.5 9.3 33.9 0l22.7-22.7c9.4-9.4 9.4-24.6 0-33.9L241 226.5c-9.4-9.3-24.6-9.3-34 0z\"]\n};\nvar faChevronDown = {\n prefix: 'fas',\n iconName: 'chevron-down',\n icon: [448, 512, [], \"f078\", \"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\"]\n};\nvar faChevronLeft = {\n prefix: 'fas',\n iconName: 'chevron-left',\n icon: [320, 512, [], \"f053\", \"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\"]\n};\nvar faChevronRight = {\n prefix: 'fas',\n iconName: 'chevron-right',\n icon: [320, 512, [], \"f054\", \"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\"]\n};\nvar faChevronSquareDown = {\n prefix: 'fas',\n iconName: 'chevron-square-down',\n icon: [448, 512, [], \"f329\", \"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 48zM240.971 361.941l135.515-135.515c9.373-9.373 9.373-24.569 0-33.941l-16.971-16.971c-9.373-9.373-24.569-9.373-33.941 0L224 277.088 122.427 175.515c-9.373-9.373-24.569-9.373-33.941 0l-16.971 16.971c-9.373 9.373-9.373 24.569 0 33.941L207.03 361.942c9.372 9.372 24.568 9.372 33.941-.001z\"]\n};\nvar faChevronSquareLeft = {\n prefix: 'fas',\n iconName: 'chevron-square-left',\n icon: [448, 512, [], \"f32a\", \"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 48zM118.059 272.971l135.515 135.515c9.373 9.373 24.569 9.373 33.941 0l16.971-16.971c9.373-9.373 9.373-24.569 0-33.941L202.912 256l101.574-101.573c9.373-9.373 9.373-24.569 0-33.941l-16.971-16.971c-9.373-9.373-24.569-9.373-33.941 0L118.059 239.029c-9.373 9.373-9.373 24.569 0 33.942z\"]\n};\nvar faChevronSquareRight = {\n prefix: 'fas',\n iconName: 'chevron-square-right',\n icon: [448, 512, [], \"f32b\", \"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-48zm281.941 207.029L194.427 103.515c-9.373-9.373-24.569-9.373-33.941 0l-16.971 16.971c-9.373 9.373-9.373 24.569 0 33.941L245.088 256 143.515 357.573c-9.373 9.373-9.373 24.569 0 33.941l16.971 16.971c9.373 9.373 24.569 9.373 33.941 0L329.942 272.97c9.372-9.372 9.372-24.568-.001-33.941z\"]\n};\nvar faChevronSquareUp = {\n prefix: 'fas',\n iconName: 'chevron-square-up',\n icon: [448, 512, [], \"f32c\", \"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-48zm207.029-281.941L71.515 285.573c-9.373 9.373-9.373 24.569 0 33.941l16.971 16.971c9.373 9.373 24.569 9.373 33.941 0L224 234.912l101.573 101.574c9.373 9.373 24.569 9.373 33.941 0l16.971-16.971c9.373-9.373 9.373-24.569 0-33.941L240.971 150.059c-9.373-9.373-24.569-9.373-33.942 0z\"]\n};\nvar faChevronUp = {\n prefix: 'fas',\n iconName: 'chevron-up',\n icon: [448, 512, [], \"f077\", \"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\"]\n};\nvar faChild = {\n prefix: 'fas',\n iconName: 'child',\n icon: [384, 512, [], \"f1ae\", \"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\"]\n};\nvar faChimney = {\n prefix: 'fas',\n iconName: 'chimney',\n icon: [512, 512, [], \"f78b\", \"M480 0H32C14.3 0 0 14.3 0 32v128c0 17.7 14.3 32 32 32h448c17.7 0 32-14.3 32-32V32c0-17.7-14.3-32-32-32zM32 512h288V384H32v128zm160-160h288V224H192v128zM32 224v128h128V224H32zm320 288h128V384H352v128z\"]\n};\nvar faChurch = {\n prefix: 'fas',\n iconName: 'church',\n icon: [640, 512, [], \"f51d\", \"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\"]\n};\nvar faCircle = {\n prefix: 'fas',\n iconName: 'circle',\n icon: [512, 512, [], \"f111\", \"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z\"]\n};\nvar faCircleNotch = {\n prefix: 'fas',\n iconName: 'circle-notch',\n icon: [512, 512, [], \"f1ce\", \"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\"]\n};\nvar faCity = {\n prefix: 'fas',\n iconName: 'city',\n icon: [640, 512, [], \"f64f\", \"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\"]\n};\nvar faClarinet = {\n prefix: 'fas',\n iconName: 'clarinet',\n icon: [640, 512, [], \"f8ad\", \"M630.12 129.22a15.94 15.94 0 0 0-17.43 3.47L569.38 176H480v-32h24a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H232a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v32H101.19a32 32 0 0 0-10.12 1.64l-80.13 26.71A16 16 0 0 0 0 219.53v72.94a16 16 0 0 0 10.94 15.18l80.13 26.71a32 32 0 0 0 10.12 1.64h468.19l43.31 43.31A16 16 0 0 0 624 384a15.73 15.73 0 0 0 6.12-1.22A16 16 0 0 0 640 368V144a16 16 0 0 0-9.88-14.78zM384 144h64v32h-64zm-96 0h64v32h-64zm-16 136a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm96 0a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm96 0a24 24 0 1 1 24-24 24 24 0 0 1-24 24z\"]\n};\nvar faClawMarks = {\n prefix: 'fas',\n iconName: 'claw-marks',\n icon: [512, 512, [], \"f6c2\", \"M6.99 224.51c-5-2.37-9.4 4.09-5.49 8l85.12 85.13c6 6 9.37 14.14 9.37 22.63V384h43.74c8.49 0 16.63 3.37 22.63 9.37l117.15 117.16c3.86 3.86 10.32-.56 7.99-5.49C206.4 333.11 63.36 251.26 6.99 224.51zM246.63 29.63c6 6 9.37 14.14 9.37 22.63V96h43.74c8.49 0 16.63 3.37 22.63 9.37l52.26 52.26c6 6 9.37 14.14 9.37 22.63V224h43.73c8.49 0 16.63 3.37 22.63 9.37l53.16 53.16c3.86 3.86 10.32-.56 7.99-5.49C430.4 109.11 287.36 27.26 230.99.51c-5-2.37-9.4 4.09-5.49 8l21.13 21.12zm-42.36 90.69c-7.8-6.05-12.27-15.15-12.27-25.03V64h-57.99c-6.01 0-12.04-1.84-17.12-5.05C74.85 32.39 38.37 13.23 12.42.91 3.54-3.3-4.28 8.18 2.67 15.13l179.96 179.96c6 6 9.37 14.14 9.37 22.63V256h38.29c8.49 0 16.62 3.37 22.63 9.37l89.71 89.71c6 6 9.37 14.14 9.37 22.63V416h38.29c8.49 0 16.62 3.37 22.63 9.37l84.01 84.01c6.86 6.86 18.34-.99 14.2-9.76-82.73-175.34-201.55-297.65-306.86-379.3z\"]\n};\nvar faClinicMedical = {\n prefix: 'fas',\n iconName: 'clinic-medical',\n icon: [576, 512, [], \"f7f2\", \"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\"]\n};\nvar faClipboard = {\n prefix: 'fas',\n iconName: 'clipboard',\n icon: [384, 512, [], \"f328\", \"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\"]\n};\nvar faClipboardCheck = {\n prefix: 'fas',\n iconName: 'clipboard-check',\n icon: [384, 512, [], \"f46c\", \"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\"]\n};\nvar faClipboardList = {\n prefix: 'fas',\n iconName: 'clipboard-list',\n icon: [384, 512, [], \"f46d\", \"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\"]\n};\nvar faClipboardListCheck = {\n prefix: 'fas',\n iconName: 'clipboard-list-check',\n icon: [384, 512, [], \"f737\", \"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-24zM65.6 209.4l12.7-12.6c2.1-2.1 5.5-2.1 7.6 0l20.6 20.8 47.6-47.2c2.1-2.1 5.5-2.1 7.6 0l12.6 12.7c2.1 2.1 2.1 5.5 0 7.6l-64.2 63.6c-2.1 2.1-5.5 2.1-7.6 0L65.6 217c-2.1-2.1-2.1-5.5 0-7.6zM96 392c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm224-16c0 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-128c0 4.4-4.3 8-9.6 8H154.1l32.3-32h124c5.3 0 9.6 3.6 9.6 8v16z\"]\n};\nvar faClipboardPrescription = {\n prefix: 'fas',\n iconName: 'clipboard-prescription',\n icon: [384, 512, [], \"f5e8\", \"M176 240h-48v32h48c8.82 0 16-7.18 16-16s-7.18-16-16-16zM336 64h-80c0-35.29-28.71-64-64-64s-64 28.71-64 64H48C21.49 64 0 85.49 0 112v352c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zM192 40c13.26 0 24 10.74 24 24 0 13.25-10.74 24-24 24s-24-10.75-24-24c0-13.26 10.74-24 24-24zm112 392l-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.34 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 0l11.3 11.31c6.25 6.25 6.25 16.38 0 22.63l-29.9 29.9L304 409.38c6.24 6.24 6.24 16.37 0 22.62z\"]\n};\nvar faClipboardUser = {\n prefix: 'fas',\n iconName: 'clipboard-user',\n icon: [384, 512, [], \"f7f3\", \"M336 64h-80a64 64 0 0 0-128 0H48a48 48 0 0 0-48 48v352a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V112a48 48 0 0 0-48-48zM192 40a24 24 0 1 1-24 24 24 24 0 0 1 24-24zm0 152a64 64 0 1 1-64 64 64 64 0 0 1 64-64zm112 236.8c0 10.61-10 19.2-22.4 19.2H102.4C90 448 80 439.4 80 428.8v-19.2c0-31.81 30.09-57.6 67.2-57.6h5a103.25 103.25 0 0 0 79.7 0h5c37.11 0 67.2 25.79 67.2 57.6z\"]\n};\nvar faClock = {\n prefix: 'fas',\n iconName: 'clock',\n icon: [512, 512, [], \"f017\", \"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\"]\n};\nvar faClone = {\n prefix: 'fas',\n iconName: 'clone',\n icon: [512, 512, [], \"f24d\", \"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\"]\n};\nvar faClosedCaptioning = {\n prefix: 'fas',\n iconName: 'closed-captioning',\n icon: [512, 512, [], \"f20a\", \"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\"]\n};\nvar faCloud = {\n prefix: 'fas',\n iconName: 'cloud',\n icon: [640, 512, [], \"f0c2\", \"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\"]\n};\nvar faCloudDownload = {\n prefix: 'fas',\n iconName: 'cloud-download',\n icon: [640, 512, [], \"f0ed\", \"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-139.9 93L305 412.3c-9.4 9.4-24.6 9.4-33.9 0l-92.7-92.7c-9.4-9.4-9.4-24.6 0-33.9l10.8-10.8c9.6-9.6 25.2-9.3 34.5.5l32.4 34.5V184c0-13.3 10.7-24 24-24h16c13.3 0 24 10.7 24 24v125.9l32.4-34.5c9.3-9.9 24.9-10.1 34.5-.5l10.8 10.8c9.2 9.3 9.2 24.5-.1 33.9z\"]\n};\nvar faCloudDownloadAlt = {\n prefix: 'fas',\n iconName: 'cloud-download-alt',\n icon: [640, 512, [], \"f381\", \"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\"]\n};\nvar faCloudDrizzle = {\n prefix: 'fas',\n iconName: 'cloud-drizzle',\n icon: [512, 512, [], \"f738\", \"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-96zM48 360c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16s16-7.2 16-16v-40c0-8.8-7.2-16-16-16zm96 80c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16s16-7.2 16-16v-40c0-8.8-7.2-16-16-16zm96-80c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16s16-7.2 16-16v-40c0-8.8-7.2-16-16-16zm96 80c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16s16-7.2 16-16v-40c0-8.8-7.2-16-16-16zm96-80c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16s16-7.2 16-16v-40c0-8.8-7.2-16-16-16z\"]\n};\nvar faCloudHail = {\n prefix: 'fas',\n iconName: 'cloud-hail',\n icon: [512, 512, [], \"f739\", \"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-96zm-32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm-192 96c-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-32zm-64-96c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zM64 448c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm64-96c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"]\n};\nvar faCloudHailMixed = {\n prefix: 'fas',\n iconName: 'cloud-hail-mixed',\n icon: [512, 512, [], \"f73a\", \"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.8zm95.3-.4c-7.9-3.9-17.5-.8-21.5 7.2l-16 32c-3.9 7.9-.8 17.5 7.2 21.5 2.3 1.1 4.8 1.7 7.2 1.7 5.8 0 11.5-3.2 14.3-8.8l16-32c3.8-8.1.7-17.7-7.2-21.6zm-192 0c-7.9-3.9-17.5-.8-21.5 7.2l-16 32c-3.9 7.9-.8 17.5 7.2 21.5 2.3 1.1 4.8 1.7 7.2 1.7 5.8 0 11.5-3.2 14.3-8.8l16-32c3.8-8.1.7-17.7-7.2-21.6zm384 0c-7.9-3.9-17.5-.8-21.5 7.2l-16 32c-3.9 7.9-.8 17.5 7.2 21.5 2.3 1.1 4.8 1.7 7.2 1.7 5.8 0 11.5-3.2 14.3-8.8l16-32c3.8-8.1.7-17.7-7.2-21.6zm-95.3.4c-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.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-96zM32 448c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm192 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm192 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"]\n};\nvar faCloudMeatball = {\n prefix: 'fas',\n iconName: 'cloud-meatball',\n icon: [512, 512, [], \"f73b\", \"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\"]\n};\nvar faCloudMoon = {\n prefix: 'fas',\n iconName: 'cloud-moon',\n icon: [576, 512, [], \"f6c3\", \"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\"]\n};\nvar faCloudMoonRain = {\n prefix: 'fas',\n iconName: 'cloud-moon-rain',\n icon: [576, 512, [], \"f73c\", \"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\"]\n};\nvar faCloudMusic = {\n prefix: 'fas',\n iconName: 'cloud-music',\n icon: [640, 512, [], \"f8ae\", \"M537.59 226.59a96 96 0 0 0-142.9-114.39A160 160 0 0 0 96 192c0 2.7.09 5.41.19 8.09A144 144 0 0 0 144 480h368a128 128 0 0 0 25.59-253.41zM384 352c0 17.67-21.5 32-48 32s-48-14.33-48-32 21.5-32 48-32a69.89 69.89 0 0 1 16 2v-76.36l-96 37.52V384c0 17.67-21.5 32-48 32s-48-14.33-48-32 21.5-32 48-32a69.89 69.89 0 0 1 16 2V239.25A16 16 0 0 1 235.19 224l128-47.25A16 16 0 0 1 384 192z\"]\n};\nvar faCloudRain = {\n prefix: 'fas',\n iconName: 'cloud-rain',\n icon: [512, 512, [], \"f73d\", \"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\"]\n};\nvar faCloudRainbow = {\n prefix: 'fas',\n iconName: 'cloud-rainbow',\n icon: [576, 512, [], \"f73e\", \"M430.8 304.9c9.9 5.6 19 12.4 26.9 20.3C487.1 292.8 529 272 576 272v-64c-61 0-116.3 24.6-156.8 64.3 5.7 9.9 9.8 20.9 11.6 32.6zm-31.6 20.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.9-56.5-66-101.9-66-61.9 0-112 50.1-112 112 0 3 .7 5.8.9 8.7C39.2 324.4 0 365.4 0 416c0 53 43 96 96 96h272c53 0 96-43 96-96 0-42-27.2-77.4-64.8-90.4zm-160.6-152c21 5.9 40.4 16.5 56.6 31C359.6 119.4 461.3 64 576 64V0C437.1 0 314.2 68.7 238.6 173.6zm87.2 51.5c7.4-.8 36.7-5.4 68.4 18.9 46.4-46.8 110.7-76 181.8-76v-64c-101.3 0-191.6 47.4-250.2 121.1z\"]\n};\nvar faCloudShowers = {\n prefix: 'fas',\n iconName: 'cloud-showers',\n icon: [512, 512, [], \"f73f\", \"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-96zM48 368c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16v-80c0-8.8-7.2-16-16-16zm96 32c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16v-80c0-8.8-7.2-16-16-16zm96-32c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16v-80c0-8.8-7.2-16-16-16zm96 32c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16v-80c0-8.8-7.2-16-16-16zm96-32c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16v-80c0-8.8-7.2-16-16-16z\"]\n};\nvar faCloudShowersHeavy = {\n prefix: 'fas',\n iconName: 'cloud-showers-heavy',\n icon: [512, 512, [], \"f740\", \"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\"]\n};\nvar faCloudSleet = {\n prefix: 'fas',\n iconName: 'cloud-sleet',\n icon: [512, 512, [], \"f741\", \"M512 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 96h320c53 0 96-43 96-96zM87.2 353.7c-7.9-3.9-17.5-.7-21.5 7.2l-64 128c-3.9 7.9-.8 17.5 7.2 21.5 2.3 1.1 4.8 1.7 7.2 1.7 5.8 0 11.5-3.2 14.3-8.8l64-128c3.8-8.1.7-17.7-7.2-21.6zm256 0c-7.9-3.9-17.5-.7-21.5 7.2l-64 128c-3.9 7.9-.8 17.5 7.2 21.5 2.3 1.1 4.8 1.7 7.2 1.7 5.8 0 11.5-3.2 14.3-8.8l64-128c3.8-8.1.7-17.7-7.2-21.6zm151.7 35.4l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V360c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16 27.9-16c3.8-2.2 5.1-7.1 2.9-10.9zm-256 0l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V360c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16 27.9-16c3.8-2.2 5.1-7.1 2.9-10.9z\"]\n};\nvar faCloudSnow = {\n prefix: 'fas',\n iconName: 'cloud-snow',\n icon: [512, 512, [], \"f742\", \"M96 320h320c53 0 96-43 96-96s-43-96-96-96c-.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 96zm30.9 69.1l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V360c0-4.4-3.6-8-8-8H56c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16L4 432c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16 27.9-16c3.8-2.2 5.1-7.1 2.9-10.9zm192 32l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V392c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V504c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16 27.9-16c3.8-2.2 5.1-7.1 2.9-10.9zm192-32l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V360c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V472c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16 27.9-16c3.8-2.2 5.1-7.1 2.9-10.9z\"]\n};\nvar faCloudSun = {\n prefix: 'fas',\n iconName: 'cloud-sun',\n icon: [640, 512, [], \"f6c4\", \"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\"]\n};\nvar faCloudSunRain = {\n prefix: 'fas',\n iconName: 'cloud-sun-rain',\n icon: [576, 512, [], \"f743\", \"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\"]\n};\nvar faCloudUpload = {\n prefix: 'fas',\n iconName: 'cloud-upload',\n icon: [640, 512, [], \"f0ee\", \"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-139.9 63.7l-10.8 10.8c-9.6 9.6-25.2 9.3-34.5-.5L320 266.1V392c0 13.3-10.7 24-24 24h-16c-13.3 0-24-10.7-24-24V266.1l-32.4 34.5c-9.3 9.9-24.9 10.1-34.5.5l-10.8-10.8c-9.4-9.4-9.4-24.6 0-33.9l92.7-92.7c9.4-9.4 24.6-9.4 33.9 0l92.7 92.7c9.4 9.4 9.4 24.6.1 33.9z\"]\n};\nvar faCloudUploadAlt = {\n prefix: 'fas',\n iconName: 'cloud-upload-alt',\n icon: [640, 512, [], \"f382\", \"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\"]\n};\nvar faClouds = {\n prefix: 'fas',\n iconName: 'clouds',\n icon: [640, 512, [], \"f744\", \"M544 320c-.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.8-18.6-35.9-55.8-60.8-99-60.8-61.9 0-112 50.1-112 112 0 7.3.8 14.3 2.1 21.2-38.3 12.6-66.1 48.3-66.1 90.8 0 53 43 96 96 96h320c53 0 96-43 96-96s-43-96-96-96zM304 160c40.7 0 78.6 17.2 105.4 46.5 9.8-5.6 20.5-9.4 31.6-11.8 4.3-10.8 7-22.3 7-34.7 0-53-43-96-96-96-14.1 0-27.4 3.2-39.5 8.7C296.6 30.3 256 0 208 0 151.6 0 105.3 41.9 97.6 96.2c-.5 0-1-.2-1.6-.2-53 0-96 43-96 96s43 96 96 96h65.6c8.1-71.8 68.5-128 142.4-128z\"]\n};\nvar faCloudsMoon = {\n prefix: 'fas',\n iconName: 'clouds-moon',\n icon: [640, 512, [], \"f745\", \"M448 320h-1.6c-7.4-36.5-39.7-64-78.4-64-24.6 0-46.3 11.3-61 28.8-18.6-35.9-55.8-60.8-99-60.8-58.3 0-105.6 44.7-110.9 101.6C59.3 338.5 32 373.9 32 416c0 53 43 96 96 96h320c53 0 96-43 96-96s-43-96-96-96zm183-71.3c-78.2 14.8-150-44.7-150-123.1 0-45.1 24.3-86.6 63.9-109 6.1-3.4 4.6-12.6-2.4-13.9C532.9.9 523 0 513.1 0 424.2 0 352 71.6 352 160c0 .7.2 1.3.2 2 16.3 16.8 27 38.8 30.3 63.1 38.5 5.1 71.7 29.9 87.6 64.8 23.1 4 44 14.4 61.1 29.1 42.5-4.7 80.7-26 107.1-58.2 4.4-5.5-.4-13.4-7.3-12.1zM68.3 303.2C83.2 238.6 140.2 192 208 192c40.7 0 78.6 17.2 105.4 46.5 11.5-6.5 24.1-10.8 37.1-12.9-6.8-37.3-39.3-65.6-78.5-65.6h-17.6c-7.4-36.5-39.7-64-78.4-64s-71 27.5-78.4 64H80c-44.2 0-80 35.8-80 80 0 33.9 21.2 62.8 51 74.4 5.5-4.1 11.2-8 17.3-11.2z\"]\n};\nvar faCloudsSun = {\n prefix: 'fas',\n iconName: 'clouds-sun',\n icon: [640, 512, [], \"f746\", \"M512 320h-1.6c-7.4-36.5-39.7-64-78.4-64-24.6 0-46.3 11.3-61 28.8-18.6-35.9-55.8-60.8-99-60.8-58.3 0-105.6 44.7-110.9 101.6C123.3 338.5 96 373.9 96 416c0 53 43 96 96 96h320c53 0 96-43 96-96s-43-96-96-96zm48-160h-17.6c-7.4-36.5-39.7-64-78.4-64s-71 27.5-78.4 64H368c-27.6 0-51.8 13.9-66.2 35.1 29.1 6.2 55.5 21.3 75.6 43.3 16.5-9.4 35.3-14.5 54.6-14.5 44.6 0 84.3 26.6 102.1 65.9 20.5 3.6 39.1 12.3 55 24.4 29.8-11.7 50.9-40.5 50.9-74.3 0-44.1-35.8-79.9-80-79.9zM132.3 303.2c2.4-10.3 6.1-19.9 10.5-29.1-6.6-4-13-8.5-18.7-14.2-37.4-37.4-37.4-98.3 0-135.8 37.4-37.4 98.3-37.4 135.8 0 12.2 12.2 19.9 26.9 24.1 42.4 6.1-7 12.9-13.3 20.6-18.6l26.3-78.4c3.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.1C59.3 49.7 49.7 59.4 53 69.6l25.1 75.3-71 35.5c-9.6 4.8-9.6 18.5 0 23.3l71 35.5L53 314.5c-3.4 10.2 6.3 19.8 16.5 16.5l42.7-14.2c6.3-5.1 12.9-9.8 20.1-13.6zM128 192c0 23.4 12.8 43.8 31.7 54.9 23.1-29.5 57.2-49.2 96.2-53.5 0-.5.1-.9.1-1.4 0-35.3-28.7-64-64-64s-64 28.7-64 64z\"]\n};\nvar faClub = {\n prefix: 'fas',\n iconName: 'club',\n icon: [512, 512, [], \"f327\", \"M371.5 169.1C403.1 88.4 343.7 0 256 0c-87.8 0-147 88.5-115.5 169.1C65.7 159.2 0 217.3 0 292c0 68.5 55.5 124 124 124 36.5 0 69.3-15.8 92-40.9-.1 36.7-.8 52.4-53 75.6-13.8 6.1-21.4 21.1-18.3 35.9 3.1 14.8 16.2 25.4 31.3 25.4h160c15.1 0 28.2-10.6 31.3-25.4 3.1-14.8-4.5-29.7-18.3-35.9-51.6-23-52.8-38.1-53-75.6 22.7 25.1 55.5 40.9 92 40.9 68.5 0 124-55.5 124-124 0-74.8-65.8-132.8-140.5-122.9z\"]\n};\nvar faCocktail = {\n prefix: 'fas',\n iconName: 'cocktail',\n icon: [576, 512, [], \"f561\", \"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\"]\n};\nvar faCode = {\n prefix: 'fas',\n iconName: 'code',\n icon: [640, 512, [], \"f121\", \"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\"]\n};\nvar faCodeBranch = {\n prefix: 'fas',\n iconName: 'code-branch',\n icon: [384, 512, [], \"f126\", \"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\"]\n};\nvar faCodeCommit = {\n prefix: 'fas',\n iconName: 'code-commit',\n icon: [640, 512, [], \"f386\", \"M128 256c0 10.8.9 21.5 2.6 32H12c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h118.6c-1.7 10.5-2.6 21.2-2.6 32zm500-32H509.4c1.8 10.5 2.6 21.2 2.6 32s-.9 21.5-2.6 32H628c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12zm-308-10c-23.2 0-42 18.8-42 42s18.8 42 42 42 42-18.8 42-42-18.8-42-42-42m0-118c88.4 0 160 71.6 160 160s-71.6 160-160 160-160-71.6-160-160S231.6 96 320 96z\"]\n};\nvar faCodeMerge = {\n prefix: 'fas',\n iconName: 'code-merge',\n icon: [384, 512, [], \"f387\", \"M304 192c-38 0-69.8 26.5-77.9 62-23.9-3.5-58-12.9-83.9-37.6-16.6-15.9-27.9-36.5-33.7-61.6C138.6 143.3 160 114.1 160 80c0-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-35.8-23.5-66.1-56-76.3V246.1c1.6 1.7 3.3 3.4 5 5 39.3 37.5 90.4 48.6 121.2 51.8 12.1 28.9 40.6 49.2 73.8 49.2 44.2 0 80-35.8 80-80S348.2 192 304 192zM80 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-160c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z\"]\n};\nvar faCoffee = {\n prefix: 'fas',\n iconName: 'coffee',\n icon: [640, 512, [], \"f0f4\", \"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\"]\n};\nvar faCoffeePot = {\n prefix: 'fas',\n iconName: 'coffee-pot',\n icon: [512, 512, [], \"e002\", \"M431.45,177.65,480,32H88A88,88,0,0,0,0,120v88a16,16,0,0,0,16,16H48a16,16,0,0,0,16-16V136a40,40,0,0,1,40-40h13.33l27.39,82.16C95.41,217.9,64,277.69,64,344.62c0,51.47,18.62,84.77,49.64,117.71A57.18,57.18,0,0,0,155.17,480H420.84a57.08,57.08,0,0,0,41.45-17.6c31-32.95,49.69-66.24,49.71-117.72C512,278.37,481.37,217.83,431.45,177.65ZM445.91,320H130.61c6.71-39.06,28.92-72.85,60.5-96h195.8C417.89,247.2,439.49,281.22,445.91,320Z\"]\n};\nvar faCoffeeTogo = {\n prefix: 'fas',\n iconName: 'coffee-togo',\n icon: [448, 512, [], \"f6c5\", \"M432 64h-16l-23.16-46.31A32 32 0 0 0 364.22 0H83.78a32 32 0 0 0-28.62 17.69L32 64H16C7.16 64 0 71.16 0 80v32c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16V80c0-8.84-7.16-16-16-16zM106.78 512h234.44c16.64 0 30.51-12.76 31.89-29.34L400 160H48l26.89 322.66C76.27 499.24 90.14 512 106.78 512zm221-256l-13.34 160H133.56l-13.34-160h207.56z\"]\n};\nvar faCoffin = {\n prefix: 'fas',\n iconName: 'coffin',\n icon: [384, 512, [], \"f6c6\", \"M374.44,115.19,266.7,9.37a32.89,32.89,0,0,0-23-9.37H140.32a32.89,32.89,0,0,0-23,9.37L9.54,115.19A31.61,31.61,0,0,0,1,145.58L88.08,487.76A32.47,32.47,0,0,0,119.69,512H264.31a32.48,32.48,0,0,0,31.61-24.24L383,145.58a31.65,31.65,0,0,0-8.59-30.39Z\"]\n};\nvar faCoffinCross = {\n prefix: 'fas',\n iconName: 'coffin-cross',\n icon: [384, 512, [], \"e051\", \"M374.45 115.19L266.71 9.37c-6.11-6-14.4-9.37-23.04-9.37H140.33c-8.64 0-16.93 3.37-23.04 9.37L9.55 115.19C1.46 123.14-1.8 134.67.98 145.58l87.11 342.18C91.71 502.01 104.75 512 119.7 512h144.62c14.95 0 27.98-9.99 31.61-24.24l87.11-342.18c2.76-10.91-.49-22.44-8.59-30.39zM288 192c0 8.84-7.16 16-16 16h-56v128c0 8.84-7.16 16-16 16h-16c-8.84 0-16-7.16-16-16V208h-56c-8.84 0-16-7.16-16-16v-16c0-8.84 7.16-16 16-16h56v-48c0-8.84 7.16-16 16-16h16c8.84 0 16 7.16 16 16v48h56c8.84 0 16 7.16 16 16v16z\"]\n};\nvar faCog = {\n prefix: 'fas',\n iconName: 'cog',\n icon: [512, 512, [], \"f013\", \"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\"]\n};\nvar faCogs = {\n prefix: 'fas',\n iconName: 'cogs',\n icon: [640, 512, [], \"f085\", \"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\"]\n};\nvar faCoin = {\n prefix: 'fas',\n iconName: 'coin',\n icon: [512, 512, [], \"f85c\", \"M0 320c0 27.77 18 53.37 48 74.33V330c-18.85-12-35.4-25.36-48-40.38zm256 32c141.33 0 256-64.44 256-144S397.33 64 256 64 0 128.44 0 208s114.67 144 256 144zM80 412.51c27.09 12.89 59.66 22.81 96 28.8V377c-35.39-6-67.81-15.88-96-29zm384-18.18c30.05-21 48-46.56 48-74.33v-30.37c-12.6 15-29.15 28.37-48 40.38zm-128 47c36.34-6 68.91-15.91 96-28.8V348c-28.19 13.12-60.61 23-96 29zM208 381.2v64.09c15.62 1.51 31.49 2.71 48 2.71s32.38-1.2 48-2.71V381.2a477.2 477.2 0 0 1-48 2.8 477.2 477.2 0 0 1-48-2.8z\"]\n};\nvar faCoins = {\n prefix: 'fas',\n iconName: 'coins',\n icon: [512, 512, [], \"f51e\", \"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\"]\n};\nvar faColumns = {\n prefix: 'fas',\n iconName: 'columns',\n icon: [512, 512, [], \"f0db\", \"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\"]\n};\nvar faComet = {\n prefix: 'fas',\n iconName: 'comet',\n icon: [512, 512, [], \"e003\", \"M491.12794.70921c-38.6972,11.5936-111.77976,34.29644-187.67439,61.2961-2.09343-6.99991-3.99939-13.49983-5.5929-18.59351a16.058,16.058,0,0,0-22.90274-9.49988c-42.39976,22.09347-152.77349,82.59271-214.37343,142.4982-1.09359,1-2.49962,2-3.49947,3A194.83045,194.83045,0,1,0,332.6522,454.90662c.99985-1,1.9997-2.40622,2.99954-3.49995,59.78772-61.6086,120.3722-172.10721,142.47819-214.40356a16.06158,16.06158,0,0,0-9.49854-22.906c-5.20233-1.59373-11.6076-3.5-18.60653-5.59368,26.99587-75.999,49.69552-148.99813,61.30311-187.70077A16.18325,16.18325,0,0,0,491.12794.70921ZM315.33649,300.35583l-50.586,49.33337,11.92591,69.72764a15.30186,15.30186,0,0,1-22.19583,16.13651L191.9589,402.626l-62.52168,32.92732c-11.07253,5.93743-24.33026-3.5312-22.19582-16.13651l11.99816-69.72764L68.64379,300.35583a15.31471,15.31471,0,0,1,8.46745-26.13639l69.85454-10.19714,31.2667-63.46795a15.29265,15.29265,0,0,1,27.45283,0L236.952,264.0223l69.85454,10.19714A15.34746,15.34746,0,0,1,315.33649,300.35583Z\"]\n};\nvar faComment = {\n prefix: 'fas',\n iconName: 'comment',\n icon: [512, 512, [], \"f075\", \"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\"]\n};\nvar faCommentAlt = {\n prefix: 'fas',\n iconName: 'comment-alt',\n icon: [512, 512, [], \"f27a\", \"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\"]\n};\nvar faCommentAltCheck = {\n prefix: 'fas',\n iconName: 'comment-alt-check',\n icon: [512, 512, [], \"f4a2\", \"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-64zm-77.9 163.8l-131 130c-4.3 4.3-11.3 4.3-15.6-.1l-75.7-76.3c-4.3-4.3-4.2-11.3.1-15.6l26-25.8c4.3-4.3 11.3-4.2 15.6.1l42.1 42.5 97.2-96.4c4.3-4.3 11.3-4.2 15.6.1l25.8 26c4.2 4.3 4.2 11.3-.1 15.5z\"]\n};\nvar faCommentAltDollar = {\n prefix: 'fas',\n iconName: 'comment-alt-dollar',\n icon: [512, 512, [], \"f650\", \"M448 0H64C28.65 0 0 28.65 0 64v288c0 35.35 28.65 64 64 64h96v83.98c0 9.85 11.21 15.5 19.13 9.65L304 416h144c35.35 0 64-28.65 64-64V64c0-35.35-28.65-64-64-64zM280 302.44V320c0 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.05V96c0-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\"]\n};\nvar faCommentAltDots = {\n prefix: 'fas',\n iconName: 'comment-alt-dots',\n icon: [512, 512, [], \"f4a3\", \"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-64zM128 240c-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\"]\n};\nvar faCommentAltEdit = {\n prefix: 'fas',\n iconName: 'comment-alt-edit',\n icon: [512, 512, [], \"f4a4\", \"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-64zM215.4 310.6l-48.2 5.4c-6.5.7-11.9-4.8-11.2-11.2l5.4-48.2 96.3-96.3 54 54-96.3 96.3zm150.7-150.7l-31.8 31.8-54-54 31.8-31.8c7.9-7.9 20.7-7.9 28.6 0l25.4 25.4c7.9 7.9 7.9 20.7 0 28.6z\"]\n};\nvar faCommentAltExclamation = {\n prefix: 'fas',\n iconName: 'comment-alt-exclamation',\n icon: [512, 512, [], \"f4a5\", \"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-64zM256 336c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm25.4-110.4c-.8 8.2-7.7 14.4-15.9 14.4h-19c-8.2 0-15.1-6.2-15.9-14.4l-12.8-128c-.9-9.4 6.5-17.6 15.9-17.6h44.6c9.5 0 16.9 8.2 15.9 17.6l-12.8 128z\"]\n};\nvar faCommentAltLines = {\n prefix: 'fas',\n iconName: 'comment-alt-lines',\n icon: [512, 512, [], \"f4a6\", \"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-64zM288 264c0 4.4-3.6 8-8 8H136c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm96-96c0 4.4-3.6 8-8 8H136c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h240c4.4 0 8 3.6 8 8v16z\"]\n};\nvar faCommentAltMedical = {\n prefix: 'fas',\n iconName: 'comment-alt-medical',\n icon: [512, 512, [], \"f7f4\", \"M448 0H64A64 64 0 0 0 0 64v288a64 64 0 0 0 64 64h96v84a12 12 0 0 0 19.13 9.65L304 416h144a64 64 0 0 0 64-64V64a64 64 0 0 0-64-64zm-96 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\"]\n};\nvar faCommentAltMinus = {\n prefix: 'fas',\n iconName: 'comment-alt-minus',\n icon: [512, 512, [], \"f4a7\", \"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-64zm-80 216c0 8.8-7.2 16-16 16H160c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h192c8.8 0 16 7.2 16 16v16z\"]\n};\nvar faCommentAltMusic = {\n prefix: 'fas',\n iconName: 'comment-alt-music',\n icon: [512, 512, [], \"f8af\", \"M448-1H64A64.05 64.05 0 0 0 0 63v288a64.05 64.05 0 0 0 64 64h96v84a12 12 0 0 0 19.09 9.7L304 415h144a64.05 64.05 0 0 0 64-64V63a64.05 64.05 0 0 0-64-64zm-96 256c0 17.67-21.5 32-48 32s-48-14.33-48-32 21.5-32 48-32a69.89 69.89 0 0 1 16 2v-76.36l-96 37.52V287c0 17.67-21.5 32-48 32s-48-14.33-48-32 21.5-32 48-32a69.89 69.89 0 0 1 16 2V142.25A16 16 0 0 1 203.19 127l128-47.25A16 16 0 0 1 352 95z\"]\n};\nvar faCommentAltPlus = {\n prefix: 'fas',\n iconName: 'comment-alt-plus',\n icon: [512, 512, [], \"f4a8\", \"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-64zm-80 216c0 8.8-7.2 16-16 16h-72v72c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-72h-72c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h72v-72c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v72h72c8.8 0 16 7.2 16 16v16z\"]\n};\nvar faCommentAltSlash = {\n prefix: 'fas',\n iconName: 'comment-alt-slash',\n icon: [640, 512, [], \"f4a9\", \"M64 352c0 35.3 28.7 64 64 64h96v84c0 9.8 11.2 15.5 19.1 9.7L368 416h2L64 179.5V352zm569.8 106.1l-77.6-60c12.1-11.6 19.8-28 19.8-46.1V64c0-35.3-28.7-64-64-64H128c-21.5 0-40.4 10.7-52 27L45.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\"]\n};\nvar faCommentAltSmile = {\n prefix: 'fas',\n iconName: 'comment-alt-smile',\n icon: [512, 512, [], \"f4aa\", \"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-64zM320 133.2c14.8 0 26.8 12 26.8 26.8s-12 26.8-26.8 26.8-26.8-12-26.8-26.8 12-26.8 26.8-26.8zm-128 0c14.8 0 26.8 12 26.8 26.8s-12 26.8-26.8 26.8-26.8-12-26.8-26.8 12-26.8 26.8-26.8zm164.2 140.9C331.3 303.3 294.8 320 256 320c-38.8 0-75.3-16.7-100.2-45.9-5.8-6.7-5-16.8 1.8-22.5 6.7-5.7 16.8-5 22.5 1.8 18.8 22 46.5 34.6 75.8 34.6 29.4 0 57-12.6 75.8-34.7 5.8-6.7 15.9-7.5 22.6-1.8 6.8 5.8 7.6 15.9 1.9 22.6z\"]\n};\nvar faCommentAltTimes = {\n prefix: 'fas',\n iconName: 'comment-alt-times',\n icon: [512, 512, [], \"f4ab\", \"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-64zM340.9 258.9c6.2 6.2 6.2 16.4 0 22.6l-11.3 11.3c-6.2 6.2-16.4 6.2-22.6 0l-51-50.9-50.9 50.9c-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.6l50.9-50.9-50.9-50.9c-6.2-6.2-6.2-16.4 0-22.6l11.3-11.3c6.2-6.2 16.4-6.2 22.6 0l50.9 50.9 50.9-50.9c6.2-6.2 16.4-6.2 22.6 0l11.3 11.3c6.2 6.2 6.2 16.4 0 22.6L289.9 208l51 50.9z\"]\n};\nvar faCommentCheck = {\n prefix: 'fas',\n iconName: 'comment-check',\n icon: [512, 512, [], \"f4ac\", \"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 32zm114.1 163.8l-131 130c-4.3 4.3-11.3 4.3-15.6-.1l-75.7-76.3c-4.3-4.3-4.2-11.3.1-15.6l26-25.8c4.3-4.3 11.3-4.2 15.6.1l42.1 42.5 97.2-96.4c4.3-4.3 11.3-4.2 15.6.1l25.8 26c4.2 4.3 4.2 11.3-.1 15.5z\"]\n};\nvar faCommentDollar = {\n prefix: 'fas',\n iconName: 'comment-dollar',\n icon: [512, 512, [], \"f651\", \"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\"]\n};\nvar faCommentDots = {\n prefix: 'fas',\n iconName: 'comment-dots',\n icon: [512, 512, [], \"f4ad\", \"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\"]\n};\nvar faCommentEdit = {\n prefix: 'fas',\n iconName: 'comment-edit',\n icon: [512, 512, [], \"f4ae\", \"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 32zm-40.6 310.6l-48.2 5.4c-6.5.7-11.9-4.8-11.2-11.2l5.4-48.2 96.3-96.3 54 54-96.3 96.3zm150.7-150.7l-31.8 31.8-54-54 31.8-31.8c7.9-7.9 20.7-7.9 28.6 0l25.4 25.4c7.9 7.9 7.9 20.7 0 28.6z\"]\n};\nvar faCommentExclamation = {\n prefix: 'fas',\n iconName: 'comment-exclamation',\n icon: [512, 512, [], \"f4af\", \"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 32zm0 336c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm25.4-110.4c-.8 8.2-7.7 14.4-15.9 14.4h-19c-8.2 0-15.1-6.2-15.9-14.4l-12.8-128c-.9-9.4 6.5-17.6 15.9-17.6h44.6c9.5 0 16.9 8.2 15.9 17.6l-12.8 128z\"]\n};\nvar faCommentLines = {\n prefix: 'fas',\n iconName: 'comment-lines',\n icon: [512, 512, [], \"f4b0\", \"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 32zm32 264c0 4.4-3.6 8-8 8H136c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm96-96c0 4.4-3.6 8-8 8H136c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h240c4.4 0 8 3.6 8 8v16z\"]\n};\nvar faCommentMedical = {\n prefix: 'fas',\n iconName: 'comment-medical',\n icon: [512, 512, [], \"f7f5\", \"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\"]\n};\nvar faCommentMinus = {\n prefix: 'fas',\n iconName: 'comment-minus',\n icon: [512, 512, [], \"f4b1\", \"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 32zm112 216c0 8.8-7.2 16-16 16H160c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h192c8.8 0 16 7.2 16 16v16z\"]\n};\nvar faCommentMusic = {\n prefix: 'fas',\n iconName: 'comment-music',\n icon: [512, 512, [], \"f8b0\", \"M256 32C114.59 32 0 125.09 0 240c0 49.59 21.41 95 57 130.7C44.5 421.09 2.69 466 2.19 466.5a8 8 0 0 0-1.5 8.7A7.87 7.87 0 0 0 8 480c66.31 0 116-31.8 140.59-51.41A304.63 304.63 0 0 0 256 448c141.41 0 256-93.09 256-208S397.41 32 256 32zm96 256c0 17.67-21.5 32-48 32s-48-14.33-48-32 21.5-32 48-32a69.89 69.89 0 0 1 16 2v-76.36l-96 37.52V320c0 17.67-21.5 32-48 32s-48-14.33-48-32 21.5-32 48-32a69.89 69.89 0 0 1 16 2V175.25A16 16 0 0 1 203.19 160l128-47.25A16 16 0 0 1 352 128z\"]\n};\nvar faCommentPlus = {\n prefix: 'fas',\n iconName: 'comment-plus',\n icon: [512, 512, [], \"f4b2\", \"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 32zm112 216c0 8.8-7.2 16-16 16h-72v72c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-72h-72c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h72v-72c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v72h72c8.8 0 16 7.2 16 16v16z\"]\n};\nvar faCommentSlash = {\n prefix: 'fas',\n iconName: 'comment-slash',\n icon: [640, 512, [], \"f4b3\", \"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\"]\n};\nvar faCommentSmile = {\n prefix: 'fas',\n iconName: 'comment-smile',\n icon: [512, 512, [], \"f4b4\", \"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 32zm64 133.2c14.8 0 26.8 12 26.8 26.8s-12 26.8-26.8 26.8-26.8-12-26.8-26.8 12-26.8 26.8-26.8zm-128 0c14.8 0 26.8 12 26.8 26.8s-12 26.8-26.8 26.8-26.8-12-26.8-26.8 12-26.8 26.8-26.8zm164.2 140.9C331.3 335.3 294.8 352 256 352c-38.8 0-75.3-16.7-100.2-45.9-5.8-6.7-5-16.8 1.8-22.5 6.7-5.7 16.8-5 22.5 1.8 18.8 22 46.5 34.6 75.8 34.6 29.4 0 57-12.6 75.8-34.7 5.8-6.7 15.9-7.5 22.6-1.8 6.8 5.8 7.6 15.9 1.9 22.6z\"]\n};\nvar faCommentTimes = {\n prefix: 'fas',\n iconName: 'comment-times',\n icon: [512, 512, [], \"f4b5\", \"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 32zm84.9 258.9c6.2 6.2 6.2 16.4 0 22.6l-11.3 11.3c-6.2 6.2-16.4 6.2-22.6 0l-51-50.9-50.9 50.9c-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.6l50.9-50.9-50.9-50.9c-6.2-6.2-6.2-16.4 0-22.6l11.3-11.3c6.2-6.2 16.4-6.2 22.6 0l50.9 50.9 50.9-50.9c6.2-6.2 16.4-6.2 22.6 0l11.3 11.3c6.2 6.2 6.2 16.4 0 22.6L289.9 240l51 50.9z\"]\n};\nvar faComments = {\n prefix: 'fas',\n iconName: 'comments',\n icon: [576, 512, [], \"f086\", \"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\"]\n};\nvar faCommentsAlt = {\n prefix: 'fas',\n iconName: 'comments-alt',\n icon: [576, 512, [], \"f4b6\", \"M416 224V64c0-35.3-28.7-64-64-64H64C28.7 0 0 28.7 0 64v160c0 35.3 28.7 64 64 64v54.2c0 8 9.1 12.6 15.5 7.8l82.8-62.1H352c35.3.1 64-28.6 64-63.9zm96-64h-64v64c0 52.9-43.1 96-96 96H192v64c0 35.3 28.7 64 64 64h125.7l82.8 62.1c6.4 4.8 15.5.2 15.5-7.8V448h32c35.3 0 64-28.7 64-64V224c0-35.3-28.7-64-64-64z\"]\n};\nvar faCommentsAltDollar = {\n prefix: 'fas',\n iconName: 'comments-alt-dollar',\n icon: [576, 512, [], \"f652\", \"M416 224V64c0-35.35-28.65-64-64-64H64C28.65 0 0 28.65 0 64v160c0 35.35 28.65 64 64 64v54.23c0 8 9.11 12.6 15.54 7.84L162.33 288H352c35.35 0 64-28.65 64-64zm-192-.12V240c0 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.07V48c0-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.07zM512 160h-64v64c0 52.93-43.06 96-96 96H192v64c0 35.35 28.65 64 64 64h125.67l82.79 62.07c6.44 4.76 15.54.16 15.54-7.84V448h32c35.35 0 64-28.65 64-64V224c0-35.35-28.65-64-64-64z\"]\n};\nvar faCommentsDollar = {\n prefix: 'fas',\n iconName: 'comments-dollar',\n icon: [576, 512, [], \"f653\", \"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\"]\n};\nvar faCompactDisc = {\n prefix: 'fas',\n iconName: 'compact-disc',\n icon: [496, 512, [], \"f51f\", \"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\"]\n};\nvar faCompass = {\n prefix: 'fas',\n iconName: 'compass',\n icon: [496, 512, [], \"f14e\", \"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\"]\n};\nvar faCompassSlash = {\n prefix: 'fas',\n iconName: 'compass-slash',\n icon: [640, 512, [], \"f5e9\", \"M633.82 458.1l-99.85-77.17C555.47 344.21 568 301.62 568 256 568 119.03 456.97 8 320 8c-68.31 0-130.03 27.72-174.82 72.44L45.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.45zM446.14 156.05l-53.03 116.01-105.65-81.66 132.48-60.55c16.66-7.6 33.81 9.55 26.2 26.2zM220.05 382.14c-16.65 7.61-33.81-9.55-26.2-26.2l25.7-56.24L80.57 192.29C75.16 212.65 72 233.93 72 256c0 136.97 111.03 248 248 248 44.43 0 86.03-11.83 122.1-32.29L286.77 351.65l-66.72 30.49z\"]\n};\nvar faCompress = {\n prefix: 'fas',\n iconName: 'compress',\n icon: [448, 512, [], \"f066\", \"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\"]\n};\nvar faCompressAlt = {\n prefix: 'fas',\n iconName: 'compress-alt',\n icon: [448, 512, [], \"f422\", \"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\"]\n};\nvar faCompressArrowsAlt = {\n prefix: 'fas',\n iconName: 'compress-arrows-alt',\n icon: [512, 512, [], \"f78c\", \"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\"]\n};\nvar faCompressWide = {\n prefix: 'fas',\n iconName: 'compress-wide',\n icon: [512, 512, [], \"f326\", \"M500 224H376c-13.3 0-24-10.7-24-24V76c0-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-340-24V76c0-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 236V312c0-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-12zm256 0v-84h84c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12H376c-13.3 0-24 10.7-24 24v124c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12z\"]\n};\nvar faComputerClassic = {\n prefix: 'fas',\n iconName: 'computer-classic',\n icon: [448, 512, [], \"f8b1\", \"M32 496a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-48H32zM416 0H32A32 32 0 0 0 0 32v368a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V32a32 32 0 0 0-32-32zM80 356a20 20 0 1 1 20-20 20 20 0 0 1-20 20zm304-12a8 8 0 0 1-8 8H232a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h144a8 8 0 0 1 8 8zm0-120a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32z\"]\n};\nvar faComputerSpeaker = {\n prefix: 'fas',\n iconName: 'computer-speaker',\n icon: [640, 512, [], \"f8b2\", \"M288 416H128a32 32 0 0 0 0 64h176.41A79.24 79.24 0 0 1 288 432zM0 80v256a48 48 0 0 0 48 48h240v-64H64V96h224V80a79.24 79.24 0 0 1 16.41-48H48A48 48 0 0 0 0 80zm592-48H368a48 48 0 0 0-48 48v352a48 48 0 0 0 48 48h224a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48zM480 96a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm0 320a96 96 0 1 1 96-96 96 96 0 0 1-96 96zm0-160a64 64 0 1 0 64 64 64 64 0 0 0-64-64z\"]\n};\nvar faConciergeBell = {\n prefix: 'fas',\n iconName: 'concierge-bell',\n icon: [512, 512, [], \"f562\", \"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\"]\n};\nvar faConstruction = {\n prefix: 'fas',\n iconName: 'construction',\n icon: [640, 512, [], \"f85d\", \"M634.66 460.17L349.5 15.92c-13.62-21.23-45.38-21.23-59 0L5.34 460.17C-9.14 482.73 7.52 512 34.85 512h570.3c27.33 0 43.99-29.27 29.51-51.83zM308 160a28 28 0 1 1-28 28 28 28 0 0 1 28-28zm-4 272a16 16 0 0 1-32 0v-32.77l-46.31-29.92-18.25 66.89A16 16 0 0 1 192 448a15.64 15.64 0 0 1-4.22-.56 16 16 0 0 1-11.24-19.64l29.75-109.11 83.06 53.67A31.91 31.91 0 0 1 304 399.23zm48 16l12-29.94A16 16 0 0 1 378.83 408h35.64l-94.8-58.34s-.08 0-.11-.07l-103.95-64a16 16 0 0 1-4.41-23.22l11.61-15.49a47.88 47.88 0 0 1 48.83-18l24.58 7.28c17.45 3.82 31.84 18.53 35.56 37.14l10.55 52.7L430 380l21.16-42.44a16 16 0 0 1 27.78-1.5L550.8 448z\"]\n};\nvar faContainerStorage = {\n prefix: 'fas',\n iconName: 'container-storage',\n icon: [640, 512, [], \"f4b7\", \"M640 80V48c0-8.8-7.2-16-16-16H16C7.2 32 0 39.2 0 48v32c0 8.8 7.2 16 16 16v320c-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-16V96c8.8 0 16-7.2 16-16zM448 416h-32V96h32v320zM192 96h32v320h-32V96zm144 320h-32V96h32v320zM80 96h32v320H80V96zm480 320h-32V96h32v320z\"]\n};\nvar faConveyorBelt = {\n prefix: 'fas',\n iconName: 'conveyor-belt',\n icon: [640, 512, [], \"f46e\", \"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 16zm400 64H96c-53 0-96 43-96 96s43 96 96 96h448c53 0 96-43 96-96s-43-96-96-96zM128 448c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm192 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm192 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"]\n};\nvar faConveyorBeltAlt = {\n prefix: 'fas',\n iconName: 'conveyor-belt-alt',\n icon: [640, 512, [], \"f46f\", \"M80 256h224c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16v224c0 8.8 7.2 16 16 16zm320 0h160c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16H400c-8.8 0-16 7.2-16 16v160c0 8.8 7.2 16 16 16zm144 64H96c-53 0-96 43-96 96s43 96 96 96h448c53 0 96-43 96-96s-43-96-96-96zM128 448c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm192 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm192 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"]\n};\nvar faCookie = {\n prefix: 'fas',\n iconName: 'cookie',\n icon: [512, 512, [], \"f563\", \"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\"]\n};\nvar faCookieBite = {\n prefix: 'fas',\n iconName: 'cookie-bite',\n icon: [512, 512, [], \"f564\", \"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\"]\n};\nvar faCopy = {\n prefix: 'fas',\n iconName: 'copy',\n icon: [448, 512, [], \"f0c5\", \"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\"]\n};\nvar faCopyright = {\n prefix: 'fas',\n iconName: 'copyright',\n icon: [512, 512, [], \"f1f9\", \"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\"]\n};\nvar faCorn = {\n prefix: 'fas',\n iconName: 'corn',\n icon: [512, 512, [], \"f6c7\", \"M118.63 370.74l-67.88 67.88L96 483.88c37.49 37.49 98.27 37.49 135.76 0l90.51-90.51 97.66-19.53c6.43-1.29 8.85-9.59 3.91-13.89-88-76.52-221.49-72.92-305.21 10.79zm82.4-85.89c15.42-67.76-.79-141.26-49-196.71-4.29-4.94-12.58-2.51-13.87 3.91l-19.54 97.68-90.51 90.51c-37.49 37.49-37.49 98.28 0 135.77L96 348.12c30.38-30.38 66.59-51.38 105.03-63.27zM511.93 45.3v-3.2c1.28-21.44-14.72-40-36.48-41.91-16.63-1.61-31.67 7.03-39.03 21.11-9.92-9.59-24.33-13.75-38.41-9.6-13.44 3.85-23.67 14.08-27.51 26.88-10.88-7.03-24.96-8.64-37.77-3.2-12.79 5.77-21.11 17.28-23.36 29.77-11.52-5.44-25.59-5.44-37.44 1.59-11.85 6.72-18.88 18.89-19.84 31.36-11.83-4.47-25.91-3.19-37.11 4.81-3.26 2.3-5.94 5.13-8.31 8.17 28.33 51.23 37.75 110.06 28.31 166.44 56.39-9.36 115.25-.37 166.48 28.13 1.7-1.66 3.43-3.29 4.87-5.31 8-11.2 9.28-24.97 4.79-36.8 12.8-.97 24.96-8 31.69-19.85 7.03-11.84 7.36-25.92 1.59-37.44 12.8-2.25 24.31-10.25 30.08-23.05 5.76-12.8 4.15-26.87-2.88-37.77 12.47-3.83 23.03-13.75 27.2-27.19 4.16-14.08 0-28.48-8.97-38.41 12.51-6.37 21.46-19.17 22.1-34.53z\"]\n};\nvar faCouch = {\n prefix: 'fas',\n iconName: 'couch',\n icon: [640, 512, [], \"f4b8\", \"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\"]\n};\nvar faCow = {\n prefix: 'fas',\n iconName: 'cow',\n icon: [640, 512, [], \"f6c8\", \"M634.01 276.72l-10-13.81v-77.02c0-11.89-12.52-19.63-23.16-14.31-10.82 5.41-19.47 13.59-26.31 23.01l-65.82-90.9A96.025 96.025 0 0 0 430.96 64H112c-48.6 0-88 39.4-88 88v86.41C9.48 250.14 0 267.88 0 288v32h8c35.35 0 64-28.65 64-64V152c0-16.87 10.55-31.16 25.34-37.04-.87 4.22-1.34 8.57-1.34 13.04v304c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V320c9.32 9.32 20.28 16.5 32.04 21.87V368c0 8.84 7.16 16 16 16s16-7.16 16-16v-17.31c9.1 1.12 12.81 2.36 32-.01V368c0 8.84 7.16 16 16 16s16-7.16 16-16v-26.18c11.71-5.36 22.64-12.51 31.92-21.79V432c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V256l32 32v41.48a63.97 63.97 0 0 0 10.75 35.5l41.33 61.99a47.233 47.233 0 0 0 39.3 21.03c22.52 0 41.9-15.89 46.32-37.97l21.73-108.63c1.72-8.62-.23-17.57-5.38-24.68zM377.24 167.36l-22.89 22.75c-21.82 21.7-51.41 33.88-82.26 33.88h-.17c-30.86 0-60.45-12.19-82.26-33.88l-22.89-22.75c-15.72-15.63-2.3-39.36 22.25-39.36h165.96c24.56 0 37.98 23.73 22.26 39.36zM576.01 352c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.17 16-16 16z\"]\n};\nvar faCowbell = {\n prefix: 'fas',\n iconName: 'cowbell',\n icon: [448, 512, [], \"f8b3\", \"M384.19 122.35A32 32 0 0 0 352.64 96h-16V48a48.1 48.1 0 0 0-48.12-48H160.29a48.1 48.1 0 0 0-48.09 48v48H95.36a32 32 0 0 0-31.55 26.35l-63.3 352A32 32 0 0 0 32.07 512h383.86a32 32 0 0 0 31.56-37.65zM176.32 64h96.17v32h-96.17z\"]\n};\nvar faCowbellMore = {\n prefix: 'fas',\n iconName: 'cowbell-more',\n icon: [640, 512, [], \"f8b4\", \"M287.78 352c0-75.21 43.66-140.27 106.92-171.76l-10.41-57.89A32.06 32.06 0 0 0 352.72 96h-15.91V48a48.05 48.05 0 0 0-48-48h-128a48.05 48.05 0 0 0-48 48v48H95.38a32 32 0 0 0-31.56 26.35l-63.31 352A32 32 0 0 0 32.07 512h342c-51.95-34.42-86.29-93.26-86.29-160zm-15-256h-96V64h96zM480 192a160 160 0 1 0 160 160 160 160 0 0 0-160-160zm80 168a8 8 0 0 1-8 8h-56v56a8 8 0 0 1-8 8h-16a8 8 0 0 1-8-8v-56h-56a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h56v-56a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v56h56a8 8 0 0 1 8 8z\"]\n};\nvar faCreditCard = {\n prefix: 'fas',\n iconName: 'credit-card',\n icon: [576, 512, [], \"f09d\", \"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\"]\n};\nvar faCreditCardBlank = {\n prefix: 'fas',\n iconName: 'credit-card-blank',\n icon: [576, 512, [], \"f389\", \"M528 40H48C21.5 40 0 61.5 0 88v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V88c0-26.5-21.5-48-48-48zM160 404c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12v40zm192 0c0 6.6-5.4 12-12 12H204c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h136c6.6 0 12 5.4 12 12v40z\"]\n};\nvar faCreditCardFront = {\n prefix: 'fas',\n iconName: 'credit-card-front',\n icon: [576, 512, [], \"f38a\", \"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-48zM192 268c0-6.6 5.4-12 12-12h64c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-64c-6.6 0-12-5.4-12-12v-40zm-32 136c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12v8zm16-96c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h88c6.6 0 12 5.4 12 12v40zm176 96c0 6.6-5.4 12-12 12H204c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h136c6.6 0 12 5.4 12 12v8zm32-96c0 6.6-5.4 12-12 12h-64c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h64c6.6 0 12 5.4 12 12v40zm128 0c0 6.6-5.4 12-12 12h-88c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h88c6.6 0 12 5.4 12 12v40zm0-140c0 13.3-10.7 24-24 24h-80c-13.3 0-24-10.7-24-24v-48c0-13.3 10.7-24 24-24h80c13.3 0 24 10.7 24 24v48z\"]\n};\nvar faCricket = {\n prefix: 'fas',\n iconName: 'cricket',\n icon: [640, 512, [], \"f449\", \"M421.5 321.5L158 506c-8.9 6.2-20.5 7.9-30.4 3.5C54.8 477 5.7 406.9.1 327.4c-.8-10.8 4.8-21.2 13.7-27.4l263.5-184.5-30.9 175.1 175.1 30.9zM635.7 30.4l-15.2-20.2C612.9-.6 597.9-3.3 587 4.3L443 104.8c-14.5 10.1-34.4 6.6-44.6-7.9l-21.9-31.3c-5.1-7.2-15-9-22.3-3.9l-21.3 14.9L302 251.7l175.1 30.9 21.3-14.9c7.2-5.1 9-15 3.9-22.3l-24.5-35c-10.1-14.5-6.6-34.4 7.9-44.6L629.8 63.9c10.8-7.6 13.5-22.6 5.9-33.5zM496 352c-44.2 0-80 35.8-80 80s35.8 80 80 80 80-35.8 80-80-35.8-80-80-80z\"]\n};\nvar faCroissant = {\n prefix: 'fas',\n iconName: 'croissant',\n icon: [512, 512, [], \"f7f6\", \"M209.1 387.94L110 465.73a215.54 215.54 0 0 0 70.67 44.19 32 32 0 0 0 42.91-35.18zm300.82-207.28A215.54 215.54 0 0 0 465.73 110l-77.79 99.1 86.8 14.47a32.36 32.36 0 0 0 5.26.43 32 32 0 0 0 29.92-43.34zM234.9 22.59A32 32 0 0 0 196.55 1 268.35 268.35 0 0 0 1 196.55a32 32 0 0 0 21.6 38.35l208 64a32 32 0 0 0 32-8l28.31-28.31a32 32 0 0 0 8-32zm212.84 43a32 32 0 0 0-12.33-21.39A217.11 217.11 0 0 0 304.46 0a215.78 215.78 0 0 0-43.26 4.48c1.41 2.93 3.3 5.52 4.28 8.7l64 208c.06.2 0 .41.1.62 6-1.93 11.61-5 15.6-10l96-122.32a32 32 0 0 0 6.56-23.85zM221.8 329.57c-.2-.06-.42 0-.62-.09l-208-64a62.68 62.68 0 0 1-8.54-3.57 215.1 215.1 0 0 0 39.59 173.5 32 32 0 0 0 21.39 12.33 32.51 32.51 0 0 0 4.05.26 32 32 0 0 0 19.76-6.83l122.32-96c5.1-3.99 8.12-9.58 10.05-15.6z\"]\n};\nvar faCrop = {\n prefix: 'fas',\n iconName: 'crop',\n icon: [512, 512, [], \"f125\", \"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\"]\n};\nvar faCropAlt = {\n prefix: 'fas',\n iconName: 'crop-alt',\n icon: [512, 512, [], \"f565\", \"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\"]\n};\nvar faCross = {\n prefix: 'fas',\n iconName: 'cross',\n icon: [384, 512, [], \"f654\", \"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\"]\n};\nvar faCrosshairs = {\n prefix: 'fas',\n iconName: 'crosshairs',\n icon: [512, 512, [], \"f05b\", \"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\"]\n};\nvar faCrow = {\n prefix: 'fas',\n iconName: 'crow',\n icon: [640, 512, [], \"f520\", \"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\"]\n};\nvar faCrown = {\n prefix: 'fas',\n iconName: 'crown',\n icon: [640, 512, [], \"f521\", \"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\"]\n};\nvar faCrutch = {\n prefix: 'fas',\n iconName: 'crutch',\n icon: [512, 512, [], \"f7f7\", \"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\"]\n};\nvar faCrutches = {\n prefix: 'fas',\n iconName: 'crutches',\n icon: [640, 512, [], \"f7f8\", \"M635.31 185.71l-181-181a16 16 0 0 0-22.62 0L409 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.6zM441 395.76a128.09 128.09 0 0 1-33.67 13L371.74 417l90.32 90.32a16 16 0 0 0 22.63 0l22.62-22.62a16 16 0 0 0 0-22.63zm-245.19-42.1l9.7-9.7 13.22-57.32L106.51 174.4l67.89-67.89 78.75 78.75a126.75 126.75 0 0 1 12.29-14.34L297.37 139l-77.72-77.74L231 49.94a16 16 0 0 0 0-22.63L208.33 4.69a16 16 0 0 0-22.62 0l-181 181a16 16 0 0 0 0 22.62L27.31 231a16 16 0 0 0 22.63 0l11.32-11.31 132.29 132.25c.68.68 1.58 1.06 2.28 1.72zm259.96-101.54l-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.29L234.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.68L510.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\"]\n};\nvar faCube = {\n prefix: 'fas',\n iconName: 'cube',\n icon: [512, 512, [], \"f1b2\", \"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\"]\n};\nvar faCubes = {\n prefix: 'fas',\n iconName: 'cubes',\n icon: [512, 512, [], \"f1b3\", \"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\"]\n};\nvar faCurling = {\n prefix: 'fas',\n iconName: 'curling',\n icon: [640, 512, [], \"f44a\", \"M554.1 192H85.9c13.2-37.2 48.4-64 90.1-64h48v-16C224 50.1 274.1 0 336 0h128c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16-117.7 0-176-11.4-176 48v16h176c41.7 0 76.9 26.8 90.1 64zM0 416c0 53 43 96 96 96h448c53 0 96-43 96-96v-32H0v32zm544-176H96c-53 0-96 43-96 96v16h640v-16c0-53-43-96-96-96z\"]\n};\nvar faCut = {\n prefix: 'fas',\n iconName: 'cut',\n icon: [448, 512, [], \"f0c4\", \"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\"]\n};\nvar faDagger = {\n prefix: 'fas',\n iconName: 'dagger',\n icon: [384, 512, [], \"f6cb\", \"M336 128H224V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v112H48c-26.51 0-48 21.49-48 48s21.49 48 48 48c20.87 0 38.45-13.4 45.06-32h197.88c6.61 18.6 24.19 32 45.06 32 26.51 0 48-21.49 48-48s-21.49-48-48-48zM128 428.84l50.69 76.03c6.33 9.5 20.29 9.5 26.63 0L256 428.84V224H128v204.84z\"]\n};\nvar faDatabase = {\n prefix: 'fas',\n iconName: 'database',\n icon: [448, 512, [], \"f1c0\", \"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\"]\n};\nvar faDeaf = {\n prefix: 'fas',\n iconName: 'deaf',\n icon: [512, 512, [], \"f2a4\", \"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\"]\n};\nvar faDebug = {\n prefix: 'fas',\n iconName: 'debug',\n icon: [512, 512, [], \"f7f9\", \"M146.27 303.84l30.88-4.41a79.07 79.07 0 0 0 6.77 22.72l-24.8 16.54a16 16 0 1 0 17.75 26.62l26.39-17.59a76.88 76.88 0 0 0 71.68 17.73L176 266.5v.76l-34.27 4.9a16 16 0 0 0 4.54 31.68zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 432c-101.46 0-184-82.54-184-184a182.89 182.89 0 0 1 33.38-105.37l256 256A182.89 182.89 0 0 1 256 440zm150.62-78.63l-60.3-60.3 19.41 2.77a16.23 16.23 0 0 0 2.27.16 16 16 0 0 0 2.25-31.84l-34.25-4.9v-22.52l34.27-4.9a16 16 0 1 0-4.54-31.68l-30.88 4.41a79.07 79.07 0 0 0-6.77-22.72l24.79-16.54a16 16 0 1 0-17.75-26.62l-26.38 17.59a78.43 78.43 0 0 0-102-2.79l-56.11-56.11A182.89 182.89 0 0 1 256 72c101.46 0 184 82.54 184 184a182.89 182.89 0 0 1-33.38 105.37z\"]\n};\nvar faDeer = {\n prefix: 'fas',\n iconName: 'deer',\n icon: [512, 512, [], \"f78e\", \"M488.7 133.3l-91.9-25.8 11.1-5.6c12.4-6.2 23-15.6 30.7-27.1l18.1-27.2c2.5-3.7 1.5-8.6-2.2-11.1l-13.3-8.9c-3.7-2.5-8.6-1.5-11.1 2.2l-18 27.2c-4.6 7-11 12.6-18.5 16.3L351 94.6l-33.8-9.5 8.3-10.3c6.8-8.5 10.5-19.1 10.5-30V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v36.8c0 3.6-1.2 7.1-3.5 10l-16.8 20.9-16.1-4.5c-6.9-1.9-11.7-8.2-11.7-15.4V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v47.8c0 21.5 14.3 40.4 35 46.2l78.9 22.2L304 192H64c-35.3 0-64 28.7-64 64v64l32-21.3v48.9l-11.9 31.8c-4.6 12.2-5.3 25.4-2.2 38l24.9 82.5C44.6 507 51 512 58.3 512h63.8c10.4 0 18-9.8 15.5-19.9l-26.3-88.4 19.4-51.7H288v144c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16V288l32-64h64c17.7 0 32-14.3 32-32v-27.9c0-14.3-9.6-26.9-23.3-30.8zM416 176c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z\"]\n};\nvar faDeerRudolph = {\n prefix: 'fas',\n iconName: 'deer-rudolph',\n icon: [512, 512, [], \"f78f\", \"M480 96c-17.7 0-32 14.3-32 32 0 1.1.5 2 .6 3l-83.8-23.5 11.1-5.6c12.4-6.2 23-15.6 30.7-27.1l18.1-27.2c2.5-3.7 1.5-8.6-2.2-11.1l-13.3-8.9c-3.7-2.5-8.6-1.5-11.1 2.2l-18 27.2c-4.6 7-11 12.6-18.5 16.3L319 94.6l-33.8-9.5 8.3-10.3c6.8-8.5 10.5-19.1 10.5-30V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v36.8c0 3.6-1.2 7.1-3.5 10l-16.8 20.9-16.1-4.5c-6.9-1.9-11.7-8.2-11.7-15.4V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v47.8c0 21.5 14.3 40.4 35 46.2l78.9 22.2L272 192H64c-35.3 0-64 28.7-64 64v64l32-21.3v48.9l-11.9 31.8c-4.6 12.2-5.3 25.4-2.2 38l24.9 82.5C44.6 507 51 512 58.3 512h63.8c10.4 0 18-9.8 15.5-19.9l-26.3-88.4 19.4-51.7H256v144c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16V288l32-64h64c17.7 0 32-14.3 32-32v-27.9c0-1.5-.5-2.8-.7-4.2.2 0 .5.1.7.1 17.7 0 32-14.3 32-32s-14.3-32-32-32zm-96 80c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z\"]\n};\nvar faDemocrat = {\n prefix: 'fas',\n iconName: 'democrat',\n icon: [640, 512, [], \"f747\", \"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\"]\n};\nvar faDesktop = {\n prefix: 'fas',\n iconName: 'desktop',\n icon: [576, 512, [], \"f108\", \"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\"]\n};\nvar faDesktopAlt = {\n prefix: 'fas',\n iconName: 'desktop-alt',\n icon: [576, 512, [], \"f390\", \"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 288H64V64h448v224z\"]\n};\nvar faDewpoint = {\n prefix: 'fas',\n iconName: 'dewpoint',\n icon: [512, 512, [], \"f748\", \"M160.1 22.1C109.1 179.8 0 222.7 0 333.9 0 432.3 85.9 512 192 512s192-79.7 192-178.1c0-111.8-108.9-153.3-160.1-311.8-8.7-28.8-54-30.1-63.8 0zM416 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 32z\"]\n};\nvar faDharmachakra = {\n prefix: 'fas',\n iconName: 'dharmachakra',\n icon: [512, 512, [], \"f655\", \"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\"]\n};\nvar faDiagnoses = {\n prefix: 'fas',\n iconName: 'diagnoses',\n icon: [640, 512, [], \"f470\", \"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\"]\n};\nvar faDiamond = {\n prefix: 'fas',\n iconName: 'diamond',\n icon: [448, 512, [], \"f219\", \"M242.2 8.3c-9.6-11.1-26.8-11.1-36.4 0l-200 232c-7.8 9-7.8 22.3 0 31.3l200 232c9.6 11.1 26.8 11.1 36.4 0l200-232c7.8-9 7.8-22.3 0-31.3l-200-232z\"]\n};\nvar faDice = {\n prefix: 'fas',\n iconName: 'dice',\n icon: [640, 512, [], \"f522\", \"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\"]\n};\nvar faDiceD10 = {\n prefix: 'fas',\n iconName: 'dice-d10',\n icon: [512, 512, [], \"f6cd\", \"M11.09 255.29l130.38-27.25 67.78-212.5c2.95-9.2-8.4-15.92-14.45-8.54L3.01 240.87c-5.24 6.38.2 16.07 8.08 14.42zm359.43-27.24L500.9 255.3c7.89 1.65 13.32-8.05 8.09-14.43L317.19 6.99c-6.04-7.37-17.39-.66-14.46 8.55l67.79 212.51zm-106.49-222c-2.57-8.06-13.49-8.06-16.06 0l-73.4 230.11L256 292.87l81.43-56.72-73.4-230.1zm241.16 286.22l-144.06-30.11-88.2 61.45v179.53c0 7.59 8.55 11.66 14.02 6.67l222.13-202.2c5.31-4.82 3-13.9-3.89-15.34zm-498.38 0c-6.89 1.44-9.2 10.52-3.9 15.34L225.05 509.8c5.48 4.98 14.02.92 14.02-6.67V323.61l-88.2-61.45L6.81 292.27z\"]\n};\nvar faDiceD12 = {\n prefix: 'fas',\n iconName: 'dice-d12',\n icon: [512, 512, [], \"f6ce\", \"M256 273.89l-108.59 54.29L206.23 512h99.53l58.82-183.82L256 273.89zm16-27.78l108.84 54.42 123.62-123.62-51.43-102.84L272 139.24v106.87zm-32 0V139.24L58.97 74.07 7.54 176.92l123.62 123.62L240 246.11zM422.28 51.14L333.51 6.76A63.874 63.874 0 0 0 304.89 0H207.1c-9.94 0-19.73 2.31-28.62 6.76L89.72 51.14 256 111l166.28-59.86zm-24.23 277.43l-55.01 171.91 85.88-42.94a64.02 64.02 0 0 0 28.62-28.62l47.7-95.4A64.07 64.07 0 0 0 512 304.9v-90.27L398.05 328.57zM0 214.62v90.27c0 9.94 2.31 19.74 6.76 28.62l47.7 95.4a63.972 63.972 0 0 0 28.62 28.62l85.88 42.94-55.01-171.91L0 214.62z\"]\n};\nvar faDiceD20 = {\n prefix: 'fas',\n iconName: 'dice-d20',\n icon: [480, 512, [], \"f6cf\", \"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\"]\n};\nvar faDiceD4 = {\n prefix: 'fas',\n iconName: 'dice-d4',\n icon: [512, 512, [], \"f6d0\", \"M225.28 3.34L1.68 309.48C-1 313.15-.4 318.4 3.03 321.3l223.61 188.81c5.3 4.47 13.17.51 13.17-6.64V8.53C239.8.4 229.99-3.1 225.28 3.34zm285.04 306.14L286.72 3.34C282.01-3.1 272.2.4 272.2 8.53v494.94c0 7.15 7.87 11.11 13.17 6.64l223.6-188.81c3.44-2.9 4.04-8.15 1.35-11.82z\"]\n};\nvar faDiceD6 = {\n prefix: 'fas',\n iconName: 'dice-d6',\n icon: [448, 512, [], \"f6d1\", \"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\"]\n};\nvar faDiceD8 = {\n prefix: 'fas',\n iconName: 'dice-d8',\n icon: [512, 512, [], \"f6d2\", \"M225.53 2.52L2.36 233.83c-4.21 4.37-2.56 11.71 3.1 13.77l234.13 85.06V8.39c-.01-7.49-8.91-11.21-14.06-5.87zm284.11 231.31L286.47 2.52C281.32-2.82 272.41.9 272.41 8.4v324.27l234.13-85.06c5.66-2.07 7.31-9.42 3.1-13.78zM33.53 310.38l192 199.1c5.15 5.34 14.06 1.62 14.06-5.88V368.29L42.13 296.61c-8.21-2.98-14.72 7.43-8.6 13.77zm436.34-13.77l-197.46 71.68V503.6c0 7.5 8.91 11.22 14.06 5.88l192-199.1c6.12-6.34-.39-16.75-8.6-13.77z\"]\n};\nvar faDiceFive = {\n prefix: 'fas',\n iconName: 'dice-five',\n icon: [448, 512, [], \"f523\", \"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\"]\n};\nvar faDiceFour = {\n prefix: 'fas',\n iconName: 'dice-four',\n icon: [448, 512, [], \"f524\", \"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\"]\n};\nvar faDiceOne = {\n prefix: 'fas',\n iconName: 'dice-one',\n icon: [448, 512, [], \"f525\", \"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\"]\n};\nvar faDiceSix = {\n prefix: 'fas',\n iconName: 'dice-six',\n icon: [448, 512, [], \"f526\", \"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\"]\n};\nvar faDiceThree = {\n prefix: 'fas',\n iconName: 'dice-three',\n icon: [448, 512, [], \"f527\", \"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\"]\n};\nvar faDiceTwo = {\n prefix: 'fas',\n iconName: 'dice-two',\n icon: [448, 512, [], \"f528\", \"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\"]\n};\nvar faDigging = {\n prefix: 'fas',\n iconName: 'digging',\n icon: [576, 512, [], \"f85e\", \"M272 96a48 48 0 1 0-48-48 48 48 0 0 0 48 48zm-62.24 261.36q-38.7-25.78-79.55-48.09l-71.56-39-57.42 201a32 32 0 1 0 61.56 17.59l36.6-128.16L160 401.11V480a32 32 0 0 0 64 0v-96a32 32 0 0 0-14.24-26.64zM311.07 416a32 32 0 0 0-30.36 21.88L256 512h320L474.07 305.68c-11.29-22.59-43.07-23.81-56.07-2.15l-31.86 54.29-65.3-35.62L296.85 201a129.78 129.78 0 0 0-69.72-91.2c-1-.5-2.11-.66-3.11-1.13a31 31 0 0 0-7.22-2.67c-15.34-6.1-31.56-10-48.07-10H96a32 32 0 0 0-24.07 10.92l-56 64a25.89 25.89 0 0 0-2.3 3.16c-8.83 14.1-3 32.86 11.62 40.85l336.6 184.3L352 416zM105.9 205l-23.49-12.85L110.54 160h34.33zm93.74 51.13l34.73-41.23 13.5 67.54z\"]\n};\nvar faDigitalTachograph = {\n prefix: 'fas',\n iconName: 'digital-tachograph',\n icon: [640, 512, [], \"f566\", \"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\"]\n};\nvar faDiploma = {\n prefix: 'fas',\n iconName: 'diploma',\n icon: [640, 512, [], \"f5ea\", \"M384 268.67V128H256v140.67l-95.16 164c-3.05 7.49 2.65 15.63 10.73 15.32l36.64.01 25.21 28.52c5.56 5.87 15.33 4.04 18.39-3.45L320 352l68.2 121.07c3.05 7.49 12.83 9.32 18.39 3.45l25.2-28.52 36.64-.01c8.08.31 13.78-7.83 10.73-15.32l-95.16-164zm-160-8.61V115.94c-9.64-2.45-19.21-5.19-28.65-8.37L68.39 64.78c-15.03-3.1-30.25 3.27-37.03 14.77-41.81 70.94-41.81 217.95 0 288.89 6.78 11.5 22.01 17.88 37.03 14.77l104.6-35.24L224 260.06zm384.64-180.5c-6.78-11.5-22.01-17.88-37.03-14.77l-126.96 42.78c-9.44 3.18-19.01 5.93-28.65 8.37v144.12l51.01 87.92 104.6 35.24c15.03 3.1 30.25-3.27 37.03-14.77 41.81-70.94 41.81-217.95 0-288.89z\"]\n};\nvar faDirections = {\n prefix: 'fas',\n iconName: 'directions',\n icon: [512, 512, [], \"f5eb\", \"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\"]\n};\nvar faDiscDrive = {\n prefix: 'fas',\n iconName: 'disc-drive',\n icon: [512, 512, [], \"f8b5\", \"M496 416h-16V96a64 64 0 0 0-64-64H96a64 64 0 0 0-64 64v320H16a16 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-240 0a160 160 0 1 1 160-160 160 160 0 0 1-160 160zm0-192a32 32 0 1 0 32 32 32 32 0 0 0-32-32z\"]\n};\nvar faDisease = {\n prefix: 'fas',\n iconName: 'disease',\n icon: [512, 512, [], \"f7fa\", \"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\"]\n};\nvar faDivide = {\n prefix: 'fas',\n iconName: 'divide',\n icon: [448, 512, [], \"f529\", \"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\"]\n};\nvar faDizzy = {\n prefix: 'fas',\n iconName: 'dizzy',\n icon: [496, 512, [], \"f567\", \"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\"]\n};\nvar faDna = {\n prefix: 'fas',\n iconName: 'dna',\n icon: [448, 512, [], \"f471\", \"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\"]\n};\nvar faDoNotEnter = {\n prefix: 'fas',\n iconName: 'do-not-enter',\n icon: [496, 512, [], \"f5ec\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm176 296H72c-8.84 0-16-7.16-16-16v-64c0-8.84 7.16-16 16-16h352c8.84 0 16 7.16 16 16v64c0 8.84-7.16 16-16 16z\"]\n};\nvar faDog = {\n prefix: 'fas',\n iconName: 'dog',\n icon: [576, 512, [], \"f6d3\", \"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\"]\n};\nvar faDogLeashed = {\n prefix: 'fas',\n iconName: 'dog-leashed',\n icon: [576, 512, [], \"f6d4\", \"M67.64,3.37,288,168.08V192H239.54L38.17,41.25a16,16,0,0,1-2.8-22.45L45.19,6.18A16,16,0,0,1,67.64,3.37ZM128,224H288V384H192V496a16,16,0,0,1-16,16H112a16,16,0,0,1-16-16V282.1C58.83,268.85,32,233.66,32,192a32,32,0,0,1,64,0A32,32,0,0,0,128,224ZM544,112v32a64,64,0,0,1-64,64H448v35.58L320,197.87V48c0-14.25,17.23-21.39,27.32-11.31L374.6,64h53.62c10.92,0,23.74,7.92,28.62,17.69L464,96h64A16,16,0,0,1,544,112ZM320,231.84l128,45.71V496a16,16,0,0,1-16,16H368a16,16,0,0,1-16-16V384H320ZM432,112a16,16,0,1,0-16,16A16,16,0,0,0,432,112Z\"]\n};\nvar faDollarSign = {\n prefix: 'fas',\n iconName: 'dollar-sign',\n icon: [288, 512, [], \"f155\", \"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\"]\n};\nvar faDolly = {\n prefix: 'fas',\n iconName: 'dolly',\n icon: [576, 512, [], \"f472\", \"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\"]\n};\nvar faDollyEmpty = {\n prefix: 'fas',\n iconName: 'dolly-empty',\n icon: [576, 512, [], \"f473\", \"M575.2 326.4L565 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.6L565 346.6c8.4-2.8 13-11.8 10.2-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\"]\n};\nvar faDollyFlatbed = {\n prefix: 'fas',\n iconName: 'dolly-flatbed',\n icon: [640, 512, [], \"f474\", \"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\"]\n};\nvar faDollyFlatbedAlt = {\n prefix: 'fas',\n iconName: 'dolly-flatbed-alt',\n icon: [640, 512, [], \"f475\", \"M624 384H128V16c0-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-16zm-416-64h160c8.8 0 16-7.2 16-16V48c0-8.8-7.2-16-16-16H208c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16zm224-160h96c8.8 0 16-7.2 16-16V48c0-8.8-7.2-16-16-16h-96c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16zm0 160h160c8.8 0 16-7.2 16-16v-96c0-8.8-7.2-16-16-16H432c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16z\"]\n};\nvar faDollyFlatbedEmpty = {\n prefix: 'fas',\n iconName: 'dolly-flatbed-empty',\n icon: [640, 512, [], \"f476\", \"M624 384H128V16c0-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\"]\n};\nvar faDonate = {\n prefix: 'fas',\n iconName: 'donate',\n icon: [512, 512, [], \"f4b9\", \"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\"]\n};\nvar faDoorClosed = {\n prefix: 'fas',\n iconName: 'door-closed',\n icon: [640, 512, [], \"f52a\", \"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\"]\n};\nvar faDoorOpen = {\n prefix: 'fas',\n iconName: 'door-open',\n icon: [640, 512, [], \"f52b\", \"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\"]\n};\nvar faDotCircle = {\n prefix: 'fas',\n iconName: 'dot-circle',\n icon: [512, 512, [], \"f192\", \"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\"]\n};\nvar faDove = {\n prefix: 'fas',\n iconName: 'dove',\n icon: [512, 512, [], \"f4ba\", \"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\"]\n};\nvar faDownload = {\n prefix: 'fas',\n iconName: 'download',\n icon: [512, 512, [], \"f019\", \"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\"]\n};\nvar faDraftingCompass = {\n prefix: 'fas',\n iconName: 'drafting-compass',\n icon: [512, 512, [], \"f568\", \"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\"]\n};\nvar faDragon = {\n prefix: 'fas',\n iconName: 'dragon',\n icon: [640, 512, [], \"f6d5\", \"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\"]\n};\nvar faDrawCircle = {\n prefix: 'fas',\n iconName: 'draw-circle',\n icon: [512, 512, [], \"f5ed\", \"M512 256c0-26.93-16.67-49.88-40.23-59.32-20.88-75.84-80.61-135.56-156.45-156.45C305.88 16.68 282.93 0 256 0s-49.88 16.68-59.32 40.23C120.84 61.11 61.11 120.84 40.23 196.68 16.67 206.12 0 229.07 0 256s16.67 49.88 40.23 59.32c20.88 75.84 80.61 135.56 156.45 156.45C206.12 495.33 229.07 512 256 512s49.88-16.67 59.32-40.23c75.84-20.88 135.56-80.61 156.45-156.45C495.33 305.88 512 282.93 512 256zm-64-16c8.82 0 16 7.18 16 16s-7.18 16-16 16-16-7.18-16-16 7.18-16 16-16zM272 64c0 8.82-7.18 16-16 16s-16-7.18-16-16 7.18-16 16-16 16 7.18 16 16zM64 272c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16zm176 176c0-8.82 7.18-16 16-16s16 7.18 16 16-7.18 16-16 16-16-7.18-16-16zm65.15-40.53C293.41 393.25 275.88 384 256 384s-37.41 9.25-49.15 23.47a159.62 159.62 0 0 1-102.32-102.32C118.75 293.41 128 275.88 128 256s-9.25-37.42-23.47-49.15a159.62 159.62 0 0 1 102.32-102.32C218.59 118.75 236.12 128 256 128s37.41-9.25 49.15-23.47a159.62 159.62 0 0 1 102.32 102.32C393.25 218.58 384 236.12 384 256s9.25 37.41 23.47 49.15a159.598 159.598 0 0 1-102.32 102.32z\"]\n};\nvar faDrawPolygon = {\n prefix: 'fas',\n iconName: 'draw-polygon',\n icon: [448, 512, [], \"f5ee\", \"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\"]\n};\nvar faDrawSquare = {\n prefix: 'fas',\n iconName: 'draw-square',\n icon: [448, 512, [], \"f5ef\", \"M416 360.88V151.12c19.05-11.09 32-31.49 32-55.12 0-35.35-28.65-64-64-64-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-23.63-12.94-44.04-31.99-55.12zm-320 0V151.12A63.825 63.825 0 0 0 119.12 128h209.75a63.825 63.825 0 0 0 23.12 23.12v209.75a63.825 63.825 0 0 0-23.12 23.12H119.12A63.798 63.798 0 0 0 96 360.88zM400 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\"]\n};\nvar faDreidel = {\n prefix: 'fas',\n iconName: 'dreidel',\n icon: [448, 512, [], \"f792\", \"M19.6 224C7 236.5 0 253.5 0 271.3v141.8c0 37 29.9 66.9 66.9 66.9h141.8c17.7 0 34.7-7 47.3-19.6l58.9-58.9L78.5 165.1 19.6 224zM443.3 59.3l-22.6-22.6c-6.2-6.2-16.4-6.2-22.6 0l-109 109-71.9-71.9c-13.1-13.1-34.2-13.1-47.3 0l-68.7 68.7 236.4 236.4 68.7-68.7c13.1-13.1 13.1-34.2 0-47.3l-72-71.9 109-109c6.3-6.3 6.3-16.4 0-22.7z\"]\n};\nvar faDrone = {\n prefix: 'fas',\n iconName: 'drone',\n icon: [512, 512, [], \"f85f\", \"M112 224a110.32 110.32 0 0 0 16.26-1.64l-35.93-49.77a63.82 63.82 0 1 1 80.26-80.26l49.77 35.93A110.45 110.45 0 0 0 224 112a112 112 0 1 0-112 112zM339.41 92.33a63.82 63.82 0 1 1 80.26 80.26l-35.93 49.77A110.32 110.32 0 0 0 400 224a112 112 0 1 0-112-112 110.32 110.32 0 0 0 1.64 16.26zM172.59 419.67a63.82 63.82 0 1 1-80.26-80.26l35.93-49.77A110.32 110.32 0 0 0 112 288a112 112 0 1 0 112 112 110.32 110.32 0 0 0-1.64-16.26zM400 288a110.32 110.32 0 0 0-16.26 1.64l35.93 49.77a63.82 63.82 0 1 1-80.26 80.25l-49.77-35.92A110.32 110.32 0 0 0 288 400a112 112 0 1 0 112-112zm1-144.2a31.91 31.91 0 1 0-32.8-32.8l-67.86 49h-88.68l-67.86-49a31.91 31.91 0 1 0-32.8 32.8l49 67.86v88.68l-49 67.86a31.91 31.91 0 1 0 32.8 32.8l67.86-49h88.68l67.86 49a31.91 31.91 0 1 0 32.8-32.8l-49-67.86v-88.68z\"]\n};\nvar faDroneAlt = {\n prefix: 'fas',\n iconName: 'drone-alt',\n icon: [640, 512, [], \"f860\", \"M288 136a24 24 0 0 0-24-24h-97.62a23.66 23.66 0 0 0-44.77 0H24a24 24 0 0 0 0 48h240a24 24 0 0 0 24-24zm328.4-23.93l-97.82.31a23.58 23.58 0 0 0-45 .14l-98 .31a23.55 23.55 0 0 0 .15 47.09l240.81-.77a23.54 23.54 0 0 0-.15-47.08zM472 237.65l-96.85-29.05a191.9 191.9 0 0 0-110.33 0L168 237.65V192h-48v64.05a32 32 0 0 0 32 32h45.4a179 179 0 0 0-53.33 110.24 16.14 16.14 0 0 0 16 17.71h16.25c8.34 0 14.76-6.58 15.68-14.87a130 130 0 0 1 53.67-91.38l32.92 32.93a32 32 0 0 0 22.63 9.37h37.49a32 32 0 0 0 22.63-9.37l32.92-32.93A130.06 130.06 0 0 1 448 401.13c.92 8.29 7.34 14.85 15.68 14.87h16.25a16.14 16.14 0 0 0 16-17.71 179 179 0 0 0-53.33-110.24H488a32 32 0 0 0 32-32V192h-48z\"]\n};\nvar faDrum = {\n prefix: 'fas',\n iconName: 'drum',\n icon: [512, 512, [], \"f569\", \"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\"]\n};\nvar faDrumSteelpan = {\n prefix: 'fas',\n iconName: 'drum-steelpan',\n icon: [576, 512, [], \"f56a\", \"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\"]\n};\nvar faDrumstick = {\n prefix: 'fas',\n iconName: 'drumstick',\n icon: [512, 512, [], \"f6d6\", \"M462.43 49.57a169.21 169.21 0 0 0-239.31 0C187.66 85 160 128 160 192v85.83l-40.59 40.59c-9.71 9.69-24 11.07-36.76 6a60.31 60.31 0 0 0-65 98.72c15.27 15.27 36.5 19.58 56.1 15.09-4.49 19.6-.18 40.83 15.09 56.1a60.32 60.32 0 0 0 98.73-65c-5.09-12.73-3.72-27 6-36.75l40.6-40.58H320c64 0 107-27.66 142.44-63.12a169.22 169.22 0 0 0-.01-239.31z\"]\n};\nvar faDrumstickBite = {\n prefix: 'fas',\n iconName: 'drumstick-bite',\n icon: [512, 512, [], \"f6d7\", \"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\"]\n};\nvar faDryer = {\n prefix: 'fas',\n iconName: 'dryer',\n icon: [448, 512, [], \"f861\", \"M384 0H64A64 64 0 0 0 0 64v416a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V64a64 64 0 0 0-64-64zM184 64a24 24 0 1 1-24 24 24 24 0 0 1 24-24zM64 88a24 24 0 1 1 24 24 24 24 0 0 1-24-24zm160 360a144 144 0 1 1 144-144 144 144 0 0 1-144 144zm-8-176c0-22.64-11.95-34.59-20.69-43.33-5.82-5.82-9.24-9.45-10.6-14.62A8 8 0 0 0 177 208h-16.29a8.16 8.16 0 0 0-8 9.53c2.77 16.64 12.51 26.38 19.93 33.8C180.53 259.17 184 263 184 272s-3.47 12.86-11.31 20.7C164 301.47 152 313.42 152 336.06s11.95 34.56 20.69 43.28c5.82 5.82 9.23 9.44 10.6 14.59A8 8 0 0 0 191 400h16.32a8.16 8.16 0 0 0 8-9.53c-2.77-16.61-12.51-26.35-19.93-33.75C187.47 348.88 184 345 184 336.06s3.47-12.86 11.31-20.7C204.05 306.62 216 294.67 216 272zm80 0c0-22.64-11.95-34.59-20.69-43.33-5.82-5.82-9.24-9.45-10.6-14.62A8 8 0 0 0 257 208h-16.29a8.16 8.16 0 0 0-8 9.53c2.77 16.64 12.51 26.38 19.93 33.8C260.53 259.17 264 263 264 272s-3.47 12.86-11.31 20.7C244 301.47 232 313.42 232 336.06s11.95 34.56 20.69 43.28c5.82 5.82 9.23 9.44 10.6 14.59A8 8 0 0 0 271 400h16.32a8.16 8.16 0 0 0 7.95-9.53c-2.77-16.61-12.51-26.35-19.93-33.75C267.47 348.88 264 345 264 336.06s3.47-12.86 11.31-20.7C284.05 306.62 296 294.67 296 272z\"]\n};\nvar faDryerAlt = {\n prefix: 'fas',\n iconName: 'dryer-alt',\n icon: [448, 512, [], \"f862\", \"M384 0H64A64 64 0 0 0 0 64v416a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V64a64 64 0 0 0-64-64zM184 64a24 24 0 1 1-24 24 24 24 0 0 1 24-24zM64 88a24 24 0 1 1 24 24 24 24 0 0 1-24-24zm160 360a144 144 0 1 1 144-144 144 144 0 0 1-144 144zm0-256a112 112 0 1 0 112 112 112 112 0 0 0-112-112zm0 192a80 80 0 0 1-78.39-64H184a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8h-38.39A80 80 0 1 1 224 384z\"]\n};\nvar faDuck = {\n prefix: 'fas',\n iconName: 'duck',\n icon: [512, 512, [], \"f6d8\", \"M416 224c53.02 0 96-42.98 96-96h-64c0-53.02-42.98-96-96-96s-96 42.98-96 96c0 23.15 8.37 44.15 22.1 60.59 6.25 7.48 9.9 16.78 9.9 26.53 0 22.58-18.3 40.88-40.88 40.88h-21.69c-31.51 0-80.18-13.2-101.68-36.24C113.73 209.03 96 216.17 96 230.63 96 315.33 164.67 384 249.37 384h-32c-76.01 0-138.67-55.44-150.82-128h-50.4C7.03 256-.64 263.66.03 272.75 8.61 388.64 105.35 480 223.42 480h107.2c55.51 0 110.81-44.52 116.72-99.71 4.54-42.43-14.76-80.4-46.04-102.86-10.85-7.79-17.3-20.27-17.3-33.63 0-7.12 1.97-13.83 5.33-19.79H416zm-64-80c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faDumbbell = {\n prefix: 'fas',\n iconName: 'dumbbell',\n icon: [640, 512, [], \"f44b\", \"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\"]\n};\nvar faDumpster = {\n prefix: 'fas',\n iconName: 'dumpster',\n icon: [576, 512, [], \"f793\", \"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\"]\n};\nvar faDumpsterFire = {\n prefix: 'fas',\n iconName: 'dumpster-fire',\n icon: [640, 512, [], \"f794\", \"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\"]\n};\nvar faDungeon = {\n prefix: 'fas',\n iconName: 'dungeon',\n icon: [512, 512, [], \"f6d9\", \"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\"]\n};\nvar faEar = {\n prefix: 'fas',\n iconName: 'ear',\n icon: [384, 512, [], \"f5f0\", \"M192 0C85.96 0 0 85.96 0 192v176c0 79.53 64.47 144 144 144s144-64.47 144-144v-9.9c57.33-33.21 96-95.08 96-166.1C384 85.96 298.04 0 192 0zm128 200c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-8c0-52.94-43.06-96-96-96s-96 43.06-96 96c0 17.64 14.36 32 32 32h32c35.3 0 64 28.7 64 64s-28.7 64-64 64h-8c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h8c17.64 0 32-14.36 32-32s-14.36-32-32-32h-32c-35.3 0-64-28.7-64-64 0-70.58 57.42-128 128-128s128 57.42 128 128v8z\"]\n};\nvar faEarMuffs = {\n prefix: 'fas',\n iconName: 'ear-muffs',\n icon: [640, 512, [], \"f795\", \"M152 224c-11.9 0-22.3 5.4-29.6 13.7-10.6-6.9-23.8-9.3-36.4-4.4-11.8 4.8-20.2 14.7-23.7 26.2-11.8-.3-23.4 4.8-31.7 14.4-8 9.9-10.6 22.1-8.3 33.6-10.2 5.1-18.6 14.7-21.1 26.9-2.9 12.2.3 24 7.4 33.3-7 9-10.2 21.1-7.7 33.3 2.9 12.2 10.9 21.8 21.4 27.2-2.6 11.2 0 23.7 8 33.3 8 9.9 19.8 14.7 31.7 14.7 3.2 11.5 11.5 21.1 23.4 26.2 5.1 1.9 9.9 2.9 15 2.9 7.9 0 15.6-2.4 22.1-6.8 7.3 8.2 17.7 13.5 29.5 13.5 22.1 0 40-17.9 40-40 0-10-4-18.9-10.1-25.9 6.1-7 10.1-15.9 10.1-25.9 0-9.9-3.5-19.2-9.6-26.2 6.1-7 9.6-16 9.6-25.9s-3.5-18.9-9.6-25.9c6.1-7 9.6-16 9.6-25.9 0-10.2-4.1-19.1-10.2-26.1 6.1-7 10.2-16 10.2-26 0-22.3-17.9-40.2-40-40.2zm487.1 111c-2.9-12.2-10.9-21.8-21.4-26.9 2.6-11.5 0-24-8-33.6-8-9.9-19.8-14.7-31.7-14.7-3.2-11.5-11.5-21.4-23.4-26.2-12.7-5-26.1-2.5-36.8 4.5-7.3-8.4-17.8-14.1-29.9-14.1-22.1 0-40 17.9-40 40 0 10.1 4.1 19 10.2 26-6.1 7-10.2 15.9-10.2 26.1 0 9.9 3.5 18.9 9.6 25.9-6.1 7-9.6 16-9.6 25.9s3.5 18.9 9.6 25.9c-6.1 7-9.6 16-9.6 25.9 0 10.2 4.1 19.1 10.2 26.1-6.1 7-10.2 16-10.2 26 0 22.1 17.9 40 40 40 11.7 0 22-5.2 29.3-13.2 6.5 4.2 14.1 6.5 22 6.5 4.8 0 9.9-.6 14.7-2.9 11.8-4.5 20.2-14.4 23.4-25.9 11.8.3 23.7-4.8 32-14.4 8-9.9 10.6-22.1 8.3-33.6 10.2-5.1 18.2-14.7 21.1-26.9s-.3-24.3-7.4-33.3c7.2-8.7 10.4-20.9 7.8-33.1zM506.3 194.5c5.7 1.6 11.3 3.8 16.5 6.8 5.9-1.5 11.9-2.3 18-2.3 5.3 0 10.5.8 15.7 2C537.8 87.2 439 0 320 0S102.3 87.1 83.5 200.9c5.3-1.3 10.7-2.1 16.2-2.1 6.1 0 12.1.8 18 2.3 5.1-2.8 10.5-5 16-6.5C154.2 110.6 229.8 48 320 48c90.2 0 165.8 62.6 186.3 146.5z\"]\n};\nvar faEclipse = {\n prefix: 'fas',\n iconName: 'eclipse',\n icon: [640, 512, [], \"f749\", \"M464 80c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176S561.2 80 464 80zM165.5 346.5c-49.9-49.9-49.9-131.1 0-181 35.1-35.1 85.5-45 129.8-30.7 7.5-10.4 15.8-20.1 25.1-28.9L271.5 9.6c-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 5.3 1.8c-10.7-9.7-20.3-20.5-28.8-32.3-44.2 14.3-94.6 4.4-129.7-30.7zM256 160c-52.9 0-96 43.1-96 96s43.1 96 96 96c7.7 0 15.1-1.2 22.3-2.9-14.2-28-22.3-59.6-22.3-93.1 0-33.5 8.1-65.1 22.3-93.1-7.2-1.7-14.6-2.9-22.3-2.9z\"]\n};\nvar faEclipseAlt = {\n prefix: 'fas',\n iconName: 'eclipse-alt',\n icon: [512, 512, [], \"f74a\", \"M502.4 240.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-181s131.1-49.9 181 0c49.9 49.9 49.9 131.1 0 181zm-20.4-37.3c-46.5 8.9-89.3-26.8-89.3-73.9 0-27.1 14.5-52 38-65.4 3.6-2.1 2.7-7.6-1.4-8.3-5.8-1.1-11.6-1.6-17.5-1.6-52.9 0-95.9 42.9-95.9 96 0 53 42.9 96 95.9 96 29.6 0 56.6-13.5 74.5-35.5 2.7-3.3-.2-8.1-4.3-7.3z\"]\n};\nvar faEdit = {\n prefix: 'fas',\n iconName: 'edit',\n icon: [576, 512, [], \"f044\", \"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\"]\n};\nvar faEgg = {\n prefix: 'fas',\n iconName: 'egg',\n icon: [384, 512, [], \"f7fb\", \"M192 0C86 0 0 214 0 320s86 192 192 192 192-86 192-192S298 0 192 0z\"]\n};\nvar faEggFried = {\n prefix: 'fas',\n iconName: 'egg-fried',\n icon: [512, 512, [], \"f7fc\", \"M478.32 150.45c-39.5-40.71-100.73-46.29-144.39-82.24C284.12 27.2 245.81-9.25 175.39 2.1c-86.78 14-111.71 80-125 157.14-11.1 64.34-54.41 127-50 192.91s52.83 128.43 114.97 150.74c93 33.39 146.94-31.71 204.64-86.45 43.68-41.44 93.4-37.72 140.93-73.89 56.28-42.82 71.71-140.55 17.39-192.1zM224 352.38c-61.74 0-112-50.3-112-112.11s50.26-112.12 112-112.12 112 50.29 112 112.12-50.19 112.11-112 112.11zM216 160a72.09 72.09 0 0 0-72 72 16 16 0 0 0 32 0 40.05 40.05 0 0 1 40-40 16 16 0 0 0 0-32z\"]\n};\nvar faEject = {\n prefix: 'fas',\n iconName: 'eject',\n icon: [448, 512, [], \"f052\", \"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\"]\n};\nvar faElephant = {\n prefix: 'fas',\n iconName: 'elephant',\n icon: [640, 512, [], \"f6da\", \"M512 32c-13.16 0-25.52 2.66-37.4 6.4C464.71 15.82 442.23 0 416 0c-35.35 0-64 28.65-64 64 0 23.63 12.95 44.04 32 55.12V160c0 17.67 14.33 32 32 32h8c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8h-8c-35.29 0-64-28.71-64-64v-24.8c-20.08-18.03-32-43.92-32-71.2 0-11.28 2.31-21.94 5.9-32H192C85.96 32 0 117.96 0 224v112c0 8.84 7.16 16 16 16h16v144c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V388.15C160.35 405.7 198.72 416 240 416s79.65-10.3 112-27.85V496c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V288h64c23.44 0 45.11-6.76 64-17.75V368c0 8.83-7.17 16-16 16s-16-7.17-16-16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16 0 46.87 40.52 84.46 88.36 79.57 41.62-4.25 71.64-42.46 71.64-84.3V160c0-70.69-57.31-128-128-128zm16 128c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faEllipsisH = {\n prefix: 'fas',\n iconName: 'ellipsis-h',\n icon: [512, 512, [], \"f141\", \"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\"]\n};\nvar faEllipsisHAlt = {\n prefix: 'fas',\n iconName: 'ellipsis-h-alt',\n icon: [512, 512, [], \"f39b\", \"M256 242c7.7 0 14 6.3 14 14s-6.3 14-14 14-14-6.3-14-14 6.3-14 14-14m0-58c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72zm176 58c7.7 0 14 6.3 14 14s-6.3 14-14 14-14-6.3-14-14 6.3-14 14-14m0-58c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72zM80 242c7.7 0 14 6.3 14 14s-6.3 14-14 14-14-6.3-14-14 6.3-14 14-14m0-58c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72z\"]\n};\nvar faEllipsisV = {\n prefix: 'fas',\n iconName: 'ellipsis-v',\n icon: [192, 512, [], \"f142\", \"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\"]\n};\nvar faEllipsisVAlt = {\n prefix: 'fas',\n iconName: 'ellipsis-v-alt',\n icon: [192, 512, [], \"f39c\", \"M96 242c7.7 0 14 6.3 14 14s-6.3 14-14 14-14-6.3-14-14 6.3-14 14-14m0-58c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72zm0-118c7.7 0 14 6.3 14 14s-6.3 14-14 14-14-6.3-14-14 6.3-14 14-14m0-58C56.2 8 24 40.2 24 80s32.2 72 72 72 72-32.2 72-72S135.8 8 96 8zm0 410c7.7 0 14 6.3 14 14s-6.3 14-14 14-14-6.3-14-14 6.3-14 14-14m0-58c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72z\"]\n};\nvar faEmptySet = {\n prefix: 'fas',\n iconName: 'empty-set',\n icon: [512, 512, [], \"f656\", \"M507.31 27.31L484.69 4.69c-6.25-6.25-16.38-6.25-22.63 0l-72.09 72.09C352.57 48.78 306.31 32 256 32 132.29 32 32 132.29 32 256c0 50.3 16.78 96.57 44.78 133.96l-72.09 72.1c-6.25 6.25-6.25 16.38 0 22.63l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0l72.09-72.09C159.43 463.22 205.7 480 256 480c123.71 0 224-100.29 224-224 0-50.3-16.78-96.57-44.78-133.96l72.09-72.09c6.25-6.26 6.25-16.39 0-22.64zM112 256c0-79.4 64.6-144 144-144 28.11 0 54.16 8.41 76.35 22.39L134.39 332.35C120.41 310.16 112 284.11 112 256zm288 0c0 79.4-64.6 144-144 144-28.11 0-54.16-8.41-76.35-22.39L377.6 179.65C391.59 201.84 400 227.89 400 256z\"]\n};\nvar faEngineWarning = {\n prefix: 'fas',\n iconName: 'engine-warning',\n icon: [640, 512, [], \"f5f2\", \"M48 256c0-59.53 19.55-117.38 55.36-164.51 5.18-6.81 4.48-16.31-2.03-21.86l-12.2-10.41c-6.91-5.9-17.62-5.06-23.15 2.15C23.32 117.02 0 185.5 0 256c0 70.47 23.32 138.96 65.96 194.62 5.53 7.21 16.23 8.05 23.15 2.16l12.19-10.4c6.51-5.55 7.21-15.04 2.04-21.86C67.55 373.37 48 315.53 48 256zM320 32C196.3 32 96 132.3 96 256c0 123.76 100.3 224 224 224s224-100.24 224-224c0-123.7-100.3-224-224-224zm0 352c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm25.44-110.41c-.82 8.18-7.7 14.41-15.92 14.41h-19.04c-8.22 0-15.1-6.23-15.92-14.41l-12.8-128c-.94-9.42 6.45-17.59 15.92-17.59h44.64c9.47 0 16.86 8.17 15.92 17.59l-12.8 128zM572.73 59.71c-5.58-7.18-16.29-7.95-23.17-2l-12.15 10.51c-6.47 5.6-7.1 15.09-1.88 21.87C572.04 137.47 592 195.81 592 256c0 60.23-19.96 118.57-56.46 165.95-5.22 6.78-4.59 16.27 1.88 21.87l12.15 10.5c6.87 5.95 17.59 5.18 23.17-2C616.21 396.38 640 327.31 640 256c0-71.27-23.79-140.34-67.27-196.29z\"]\n};\nvar faEnvelope = {\n prefix: 'fas',\n iconName: 'envelope',\n icon: [512, 512, [], \"f0e0\", \"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\"]\n};\nvar faEnvelopeOpen = {\n prefix: 'fas',\n iconName: 'envelope-open',\n icon: [512, 512, [], \"f2b6\", \"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\"]\n};\nvar faEnvelopeOpenDollar = {\n prefix: 'fas',\n iconName: 'envelope-open-dollar',\n icon: [512, 512, [], \"f657\", \"M256 417.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.18 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.77zM264 136h-16c-4.42 0-8 3.58-8 8v16.12c-23.62.63-42.67 20.55-42.67 45.07 0 19.97 12.98 37.81 31.58 43.39l45 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.11c-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.35V336c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16.12c23.62-.63 42.67-20.54 42.67-45.07 0-19.97-12.98-37.81-31.58-43.39l-45-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.35V144c0-4.42-3.58-8-8-8z\"]\n};\nvar faEnvelopeOpenText = {\n prefix: 'fas',\n iconName: 'envelope-open-text',\n icon: [512, 512, [], \"f658\", \"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\"]\n};\nvar faEnvelopeSquare = {\n prefix: 'fas',\n iconName: 'envelope-square',\n icon: [448, 512, [], \"f199\", \"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\"]\n};\nvar faEquals = {\n prefix: 'fas',\n iconName: 'equals',\n icon: [448, 512, [], \"f52c\", \"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\"]\n};\nvar faEraser = {\n prefix: 'fas',\n iconName: 'eraser',\n icon: [512, 512, [], \"f12d\", \"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\"]\n};\nvar faEthernet = {\n prefix: 'fas',\n iconName: 'ethernet',\n icon: [512, 512, [], \"f796\", \"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\"]\n};\nvar faEuroSign = {\n prefix: 'fas',\n iconName: 'euro-sign',\n icon: [320, 512, [], \"f153\", \"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\"]\n};\nvar faExchange = {\n prefix: 'fas',\n iconName: 'exchange',\n icon: [512, 512, [], \"f0ec\", \"M0 168v-16c0-13.255 10.745-24 24-24h381.97l-30.467-27.728c-9.815-9.289-10.03-24.846-.474-34.402l10.84-10.84c9.373-9.373 24.568-9.373 33.941 0l82.817 82.343c12.497 12.497 12.497 32.758 0 45.255l-82.817 82.343c-9.373 9.373-24.569 9.373-33.941 0l-10.84-10.84c-9.556-9.556-9.341-25.114.474-34.402L405.97 192H24c-13.255 0-24-10.745-24-24zm488 152H106.03l30.467-27.728c9.815-9.289 10.03-24.846.474-34.402l-10.84-10.84c-9.373-9.373-24.568-9.373-33.941 0L9.373 329.373c-12.497 12.497-12.497 32.758 0 45.255l82.817 82.343c9.373 9.373 24.569 9.373 33.941 0l10.84-10.84c9.556-9.556 9.341-25.113-.474-34.402L106.03 384H488c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24z\"]\n};\nvar faExchangeAlt = {\n prefix: 'fas',\n iconName: 'exchange-alt',\n icon: [512, 512, [], \"f362\", \"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\"]\n};\nvar faExclamation = {\n prefix: 'fas',\n iconName: 'exclamation',\n icon: [192, 512, [], \"f12a\", \"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\"]\n};\nvar faExclamationCircle = {\n prefix: 'fas',\n iconName: 'exclamation-circle',\n icon: [512, 512, [], \"f06a\", \"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\"]\n};\nvar faExclamationSquare = {\n prefix: 'fas',\n iconName: 'exclamation-square',\n icon: [448, 512, [], \"f321\", \"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-48zm-207.691 96h63.382c6.884 0 12.357 5.78 11.982 12.654l-7.418 136c-.347 6.364-5.609 11.346-11.982 11.346h-48.546c-6.373 0-11.635-4.982-11.982-11.346l-7.418-136c-.375-6.874 5.098-12.654 11.982-12.654zM224 398c-25.405 0-46-20.595-46-46s20.595-46 46-46 46 20.595 46 46-20.595 46-46 46z\"]\n};\nvar faExclamationTriangle = {\n prefix: 'fas',\n iconName: 'exclamation-triangle',\n icon: [576, 512, [], \"f071\", \"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\"]\n};\nvar faExpand = {\n prefix: 'fas',\n iconName: 'expand',\n icon: [448, 512, [], \"f065\", \"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\"]\n};\nvar faExpandAlt = {\n prefix: 'fas',\n iconName: 'expand-alt',\n icon: [448, 512, [], \"f424\", \"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\"]\n};\nvar faExpandArrows = {\n prefix: 'fas',\n iconName: 'expand-arrows',\n icon: [448, 512, [], \"f31d\", \"M448 312v136c0 17.7-14.3 32-32 32H280c-13.3 0-24-10.7-24-24v-15.3c0-13.5 11.2-24.4 24.7-24l66.3 1.9-123-123-123 123 66.3-1.9c13.5-.4 24.7 10.5 24.7 24V456c0 13.3-10.7 24-24 24H32c-17.7 0-32-14.3-32-32V312c0-13.3 10.7-24 24-24h15.3c13.5 0 24.4 11.2 24 24.7L61.4 379l123-123-123-123 1.9 66.3c.4 13.5-10.5 24.7-24 24.7H24c-13.3 0-24-10.7-24-24V64c0-17.7 14.3-32 32-32h136c13.3 0 24 10.7 24 24v15.3c0 13.5-11.2 24.4-24.7 24L101 93.4l123 123 123-123-66.3 1.9c-13.5.4-24.7-10.5-24.7-24V56c0-13.3 10.7-24 24-24h136c17.7 0 32 14.3 32 32v136c0 13.3-10.7 24-24 24h-15.3c-13.5 0-24.4-11.2-24-24.7l1.9-66.3-123 123 123 123-1.9-66.3c-.4-13.5 10.5-24.7 24-24.7H424c13.3 0 24 10.7 24 24z\"]\n};\nvar faExpandArrowsAlt = {\n prefix: 'fas',\n iconName: 'expand-arrows-alt',\n icon: [448, 512, [], \"f31e\", \"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\"]\n};\nvar faExpandWide = {\n prefix: 'fas',\n iconName: 'expand-wide',\n icon: [512, 512, [], \"f320\", \"M0 212V88c0-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-12zM352 76v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12V88c0-13.3-10.7-24-24-24H364c-6.6 0-12 5.4-12 12zm148 212h-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-24V300c0-6.6-5.4-12-12-12zM160 436v-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\"]\n};\nvar faExternalLink = {\n prefix: 'fas',\n iconName: 'external-link',\n icon: [512, 512, [], \"f08e\", \"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,320ZM474.67,0H316a28,28,0,0,0-28,28V46.71A28,28,0,0,0,316.79,73.9L384,72,135.06,319.09l-.06.06a24,24,0,0,0,0,33.94l23.94,23.85.06.06a24,24,0,0,0,33.91-.09L440,128l-1.88,67.22V196a28,28,0,0,0,28,28H484a28,28,0,0,0,28-28V37.33h0A37.33,37.33,0,0,0,474.67,0Z\"]\n};\nvar faExternalLinkAlt = {\n prefix: 'fas',\n iconName: 'external-link-alt',\n icon: [512, 512, [], \"f35d\", \"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\"]\n};\nvar faExternalLinkSquare = {\n prefix: 'fas',\n iconName: 'external-link-square',\n icon: [448, 512, [], \"f14c\", \"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-64 47.111C384 109.929 370.071 96 352.889 96H220.667c-12.887 0-23.333 10.447-23.333 23.334v14.904c0 13.138 10.843 23.686 23.976 23.324l56.002-1.588L69.908 361.908c-7.858 7.802-7.88 20.504-.05 28.334l19.899 19.899c7.83 7.83 20.532 7.808 28.334-.05l205.935-207.404-1.588 56.003c-.362 13.133 10.186 23.976 23.324 23.976h14.904c12.887 0 23.334-10.447 23.334-23.333V127.111z\"]\n};\nvar faExternalLinkSquareAlt = {\n prefix: 'fas',\n iconName: 'external-link-square-alt',\n icon: [448, 512, [], \"f360\", \"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\"]\n};\nvar faEye = {\n prefix: 'fas',\n iconName: 'eye',\n icon: [576, 512, [], \"f06e\", \"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\"]\n};\nvar faEyeDropper = {\n prefix: 'fas',\n iconName: 'eye-dropper',\n icon: [512, 512, [], \"f1fb\", \"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\"]\n};\nvar faEyeEvil = {\n prefix: 'fas',\n iconName: 'eye-evil',\n icon: [640, 512, [], \"f6db\", \"M627.03 239.08l-111.87-30.3c-4.79-6.56-10.15-13.4-16.13-20.45 1.35-2.07 55.18-87.98 55.18-87.98 8.94-14.32-6.1-31.35-22.45-25.42L412 118.29c-9.68-4.81-19.91-8.91-30.65-12.32l-44.47-95.24c-6.68-14.31-27.08-14.31-33.76 0l-44.47 95.24c-10.74 3.4-20.97 7.51-30.65 12.32L108.23 74.93C91.88 69 76.85 86.03 85.78 100.35c0 0 53.84 85.92 55.18 87.98a359.126 359.126 0 0 0-16.13 20.45l-111.87 30.3c-17.29 4.68-17.29 29.15 0 33.83l111.87 30.3c4.78 6.54 10.11 13.35 16.07 20.38-1.34 2.09-55.12 88.05-55.12 88.05-8.94 14.32 6.1 31.35 22.45 25.43L228 393.71c9.68 4.81 19.91 8.92 30.65 12.32l44.47 95.24c6.68 14.31 27.08 14.31 33.76 0l44.47-95.24c10.74-3.4 20.97-7.51 30.65-12.32l119.77 43.36c16.35 5.92 31.39-11.11 22.45-25.43 0 0-53.78-85.96-55.12-88.05 5.96-7.03 11.29-13.84 16.07-20.38l111.87-30.3c17.28-4.68 17.28-29.14-.01-33.83zM320 352c-53.02 0-96-42.98-96-96 0-19.73 5.99-38.06 16.2-53.31 15.91 9.57 34.77 16.33 55.59 19.33-4.41 9.25-7.79 20.41-7.79 33.98 0 42.67 32 64 32 64s32-21.33 32-64c0-13.57-3.37-24.73-7.79-33.98 20.82-3 39.68-9.76 55.59-19.33C410.01 217.94 416 236.27 416 256c0 53.02-42.98 96-96 96z\"]\n};\nvar faEyeSlash = {\n prefix: 'fas',\n iconName: 'eye-slash',\n icon: [640, 512, [], \"f070\", \"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\"]\n};\nvar faFan = {\n prefix: 'fas',\n iconName: 'fan',\n icon: [512, 512, [], \"f863\", \"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\"]\n};\nvar faFanTable = {\n prefix: 'fas',\n iconName: 'fan-table',\n icon: [448, 512, [], \"e004\", \"M320,448H248V414.51C351.55,402.59,432,314.75,432,208,432,93.13,338.88,0,224,0S16,93.13,16,208c0,106.75,80.45,194.59,184,206.51V448H128c-28.42,0-54.95,18.53-63.3,44.16C61.48,502,69.88,512,80.26,512H367.74c10.38,0,18.78-10,15.56-19.84C375,466.53,348.42,448,320,448ZM119.67,334.8c-7.09-4.08-14.57-16.86-5.14-28.28l67.47-82c-57.17-20.29-69.18-77.3-59.64-113a93.77,93.77,0,0,1,44-57.34l0,0c13-7.39,24.26,2.35,27,9.73l37.08,99A94.36,94.36,0,0,1,386,235a18.84,18.84,0,0,1-21.91,18.58l-104.7-17.45a93.41,93.41,0,0,1-10.7,64.11A94.47,94.47,0,0,1,119.67,334.8ZM224,192a16,16,0,1,1-16,16A16,16,0,0,1,224,192Z\"]\n};\nvar faFarm = {\n prefix: 'fas',\n iconName: 'farm',\n icon: [576, 512, [], \"f864\", \"M221.5 91.08l.37-.17A111.93 111.93 0 0 0 0 112v400h128V260.54a64.35 64.35 0 0 1 6.76-28.63l55.48-111a64.12 64.12 0 0 1 31.26-29.83zm351.12 155.14l-55.49-111a32 32 0 0 0-15.62-14.93L381 66.76a32 32 0 0 0-26 0l-120.51 53.56a32 32 0 0 0-15.62 14.93l-55.49 111a32.08 32.08 0 0 0-3.38 14.29V512h128v-96h160v96h128V260.54a32.08 32.08 0 0 0-3.38-14.32zM416 320h-96v-96h96z\"]\n};\nvar faFastBackward = {\n prefix: 'fas',\n iconName: 'fast-backward',\n icon: [512, 512, [], \"f049\", \"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\"]\n};\nvar faFastForward = {\n prefix: 'fas',\n iconName: 'fast-forward',\n icon: [512, 512, [], \"f050\", \"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\"]\n};\nvar faFaucet = {\n prefix: 'fas',\n iconName: 'faucet',\n icon: [512, 512, [], \"e005\", \"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\"]\n};\nvar faFaucetDrip = {\n prefix: 'fas',\n iconName: 'faucet-drip',\n icon: [512, 512, [], \"e006\", \"M416,480a32,32,0,0,0,64,0c0-17.67-32-64-32-64S416,462.33,416,480ZM352,192H313.39c-15.71-13.44-35.46-23.07-57.39-28V116.44l-32-3.38-32,3.38V164c-21.93,5-41.68,14.6-57.39,28H16A16,16,0,0,0,0,208v96a16,16,0,0,0,16,16h92.79C129.38,357.73,173,384,224,384s94.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,192ZM81.59,95.91,224,80.89l142.41,15c9.42,1,17.59-6.81,17.59-16.8V48.89c0-10-8.17-17.8-17.59-16.8L256,43.74V16A16,16,0,0,0,240,0H208a16,16,0,0,0-16,16V43.74L81.59,32.09C72.17,31.09,64,38.9,64,48.89V79.11C64,89.1,72.17,96.91,81.59,95.91Z\"]\n};\nvar faFax = {\n prefix: 'fas',\n iconName: 'fax',\n icon: [512, 512, [], \"f1ac\", \"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\"]\n};\nvar faFeather = {\n prefix: 'fas',\n iconName: 'feather',\n icon: [512, 512, [], \"f52d\", \"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\"]\n};\nvar faFeatherAlt = {\n prefix: 'fas',\n iconName: 'feather-alt',\n icon: [512, 512, [], \"f56b\", \"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\"]\n};\nvar faFemale = {\n prefix: 'fas',\n iconName: 'female',\n icon: [256, 512, [], \"f182\", \"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\"]\n};\nvar faFieldHockey = {\n prefix: 'fas',\n iconName: 'field-hockey',\n icon: [640, 512, [], \"f44c\", \"M560.7 0H628c6.6 0 12 5.4 12 12v124.9c0 3.2-1.3 6.2-3.5 8.5L592 190 479 76.9l73.3-73.3c2.2-2.3 5.2-3.6 8.4-3.6zm-53.4 274.7l50.8-50.8-113-113.1-230.7 231c-30 29.9-75-15.4-45.2-45.3 31.2-31.2 31.2-81.9 0-113.1-31.2-31.2-81.8-31.2-113 0C19.9 219.7 0 267.9 0 319.2c0 106 85.6 192 191.8 192 86.1 0 132.5-53.2 147.4-68-19.3-100.5 68.5-187.6 168.1-168.5zM480.2 320c-53 0-95.9 43-95.9 96s42.9 96 95.9 96 95.9-43 95.9-96-42.9-96-95.9-96z\"]\n};\nvar faFighterJet = {\n prefix: 'fas',\n iconName: 'fighter-jet',\n icon: [640, 512, [], \"f0fb\", \"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\"]\n};\nvar faFile = {\n prefix: 'fas',\n iconName: 'file',\n icon: [384, 512, [], \"f15b\", \"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\"]\n};\nvar faFileAlt = {\n prefix: 'fas',\n iconName: 'file-alt',\n icon: [384, 512, [], \"f15c\", \"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\"]\n};\nvar faFileArchive = {\n prefix: 'fas',\n iconName: 'file-archive',\n icon: [384, 512, [], \"f1c6\", \"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\"]\n};\nvar faFileAudio = {\n prefix: 'fas',\n iconName: 'file-audio',\n icon: [384, 512, [], \"f1c7\", \"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\"]\n};\nvar faFileCertificate = {\n prefix: 'fas',\n iconName: 'file-certificate',\n icon: [512, 512, [], \"f5f3\", \"M504.99 105.01l-97.9-98c-7.71-7.71-16-7-23.1-7v128h128c0-7.53.64-15.35-7-23zm-153 31V.01H152c-13.3 0-24 10.7-24 24V133c18.3-5 19.58-5 26.45-5 16.23 0 32.1 6.67 43.53 18.3 8.72 9.59 4.41 6.98 18.28 10.76 21.07 5.75 37.64 22.53 43.23 43.8 3.11 13.2.6 8.66 10.75 18.99 15.25 15.51 21.26 38.26 15.7 59.36-3.75 13.23-3.71 8.01 0 22.12 5.57 21.11-.45 43.85-15.69 59.37-9.64 9.36-7.04 4.88-10.75 18.99-4.89 18.59-18.16 33.75-35.5 41.12V512h263.99c13.3 0 24-10.7 24-24V160.01h-136c-13.2 0-24-10.8-24-24zM247.42 338.28c7.4-7.53 10.29-18.5 7.58-28.79-5.43-20.65-5.44-17.74 0-38.42 2.71-10.28-.18-21.26-7.58-28.79-14.86-15.12-13.43-12.61-18.87-33.27-2.71-10.28-10.6-18.32-20.71-21.07-20.28-5.53-17.84-4.1-32.69-19.21-7.4-7.53-18.18-10.47-28.28-7.71-20.32 5.54-17.46 5.53-37.75 0-10.1-2.76-20.88.19-28.28 7.71-14.91 15.18-12.5 13.7-32.69 19.21-10.11 2.76-18 10.79-20.71 21.07-5.46 20.74-4 18.13-18.87 33.27-7.4 7.53-10.29 18.5-7.58 28.79 5.45 20.71 5.42 17.79 0 38.41-2.71 10.28.18 21.26 7.58 28.79 14.85 15.11 13.43 12.61 18.87 33.27 2.71 10.28 10.6 18.32 20.71 21.07 14.31 3.9 11.52 2.97 15.84 5V512l64-32 64 32V397.62c4.31-2.02 1.52-1.1 15.84-5 10.11-2.76 18-10.79 20.71-21.07 5.47-20.74 4.01-18.13 18.88-33.27zM128 352.01c-35.34 0-64-28.65-64-64s28.66-64 64-64 64 28.65 64 64-28.66 64-64 64z\"]\n};\nvar faFileChartLine = {\n prefix: 'fas',\n iconName: 'file-chart-line',\n icon: [384, 512, [], \"f659\", \"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-24zm-96 299.2c0 6.4-6.4 12.8-12.8 12.8H76.8c-6.4 0-12.8-6.4-12.8-12.8v-70.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v70.4zm96 0c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8V236.8c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v198.4zm32-134.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v134.4c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8V300.8z\"]\n};\nvar faFileChartPie = {\n prefix: 'fas',\n iconName: 'file-chart-pie',\n icon: [384, 512, [], \"f65a\", \"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-87.49 302.53c-28.73-11.16-51.87-34.3-63.04-63.03C43.42 298.14 90.91 224.8 160 210.66V352h141.34c-14.14 69.09-87.48 116.58-164.83 86.53zm175.63-118.55c0 .01.01.02 0 .02H192V199.86c0-.01.01 0 .02 0 66.34.01 120.11 53.78 120.12 120.12zM377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z\"]\n};\nvar faFileCheck = {\n prefix: 'fas',\n iconName: 'file-check',\n icon: [384, 512, [], \"f316\", \"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 160h136v328c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V24C0 10.745 10.745 0 24 0h200v136c0 13.2 10.8 24 24 24zm65.296 109.732l-28.169-28.398c-4.667-4.705-12.265-4.736-16.97-.068L162.12 346.45l-45.98-46.352c-4.667-4.705-12.266-4.736-16.971-.068L70.772 328.2c-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\"]\n};\nvar faFileCode = {\n prefix: 'fas',\n iconName: 'file-code',\n icon: [384, 512, [], \"f1c9\", \"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\"]\n};\nvar faFileContract = {\n prefix: 'fas',\n iconName: 'file-contract',\n icon: [384, 512, [], \"f56c\", \"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\"]\n};\nvar faFileCsv = {\n prefix: 'fas',\n iconName: 'file-csv',\n icon: [384, 512, [], \"f6dd\", \"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\"]\n};\nvar faFileDownload = {\n prefix: 'fas',\n iconName: 'file-download',\n icon: [384, 512, [], \"f56d\", \"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\"]\n};\nvar faFileEdit = {\n prefix: 'fas',\n iconName: 'file-edit',\n icon: [384, 512, [], \"f31c\", \"M384 121.9v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9zM248 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-59.6 109.6l-95 95-5.4 48.2c-.7 6.4 4.7 11.9 11.2 11.2l48.2-5.4 95-95c2-2 2-5.2 0-7.2l-46.8-46.8c-2-2-5.2-2-7.2 0zm109.7-30.3l-25.4-25.4c-7.9-7.9-20.7-7.9-28.6 0l-26 26c-2 2-2 5.2 0 7.2l46.8 46.8c2 2 5.2 2 7.2 0l26-26c7.9-7.9 7.9-20.7 0-28.6z\"]\n};\nvar faFileExcel = {\n prefix: 'fas',\n iconName: 'file-excel',\n icon: [384, 512, [], \"f1c3\", \"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\"]\n};\nvar faFileExclamation = {\n prefix: 'fas',\n iconName: 'file-exclamation',\n icon: [384, 512, [], \"f31a\", \"M384 121.9v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9zm0 38.1v328c0 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 24h136zm-231.2 60.8l7.2 112c.4 6.3 5.6 11.2 12 11.2h40c6.3 0 11.6-4.9 12-11.2l7.2-112c.4-6.9-5-12.8-12-12.8h-54.4c-6.9 0-12.4 5.8-12 12.8zM232 400c0-22.1-17.9-40-40-40s-40 17.9-40 40 17.9 40 40 40 40-17.9 40-40z\"]\n};\nvar faFileExport = {\n prefix: 'fas',\n iconName: 'file-export',\n icon: [576, 512, [], \"f56e\", \"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\"]\n};\nvar faFileImage = {\n prefix: 'fas',\n iconName: 'file-image',\n icon: [384, 512, [], \"f1c5\", \"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\"]\n};\nvar faFileImport = {\n prefix: 'fas',\n iconName: 'file-import',\n icon: [512, 512, [], \"f56f\", \"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\"]\n};\nvar faFileInvoice = {\n prefix: 'fas',\n iconName: 'file-invoice',\n icon: [384, 512, [], \"f570\", \"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\"]\n};\nvar faFileInvoiceDollar = {\n prefix: 'fas',\n iconName: 'file-invoice-dollar',\n icon: [384, 512, [], \"f571\", \"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\"]\n};\nvar faFileMedical = {\n prefix: 'fas',\n iconName: 'file-medical',\n icon: [384, 512, [], \"f477\", \"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\"]\n};\nvar faFileMedicalAlt = {\n prefix: 'fas',\n iconName: 'file-medical-alt',\n icon: [448, 512, [], \"f478\", \"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\"]\n};\nvar faFileMinus = {\n prefix: 'fas',\n iconName: 'file-minus',\n icon: [384, 512, [], \"f318\", \"M377,105,279.1,7a24,24,0,0,0-17-7H256V128H384v-6.1A23.92,23.92,0,0,0,377,105ZM224,136V0H24A23.94,23.94,0,0,0,0,24V488a23.94,23.94,0,0,0,24,24H360a23.94,23.94,0,0,0,24-24V160H248A24.07,24.07,0,0,1,224,136Zm72,176v16a16,16,0,0,1-16,16H104a16,16,0,0,1-16-16V312a16,16,0,0,1,16-16H280A16,16,0,0,1,296,312Z\"]\n};\nvar faFileMusic = {\n prefix: 'fas',\n iconName: 'file-music',\n icon: [384, 512, [], \"f8b6\", \"M224 136V0H24A23.94 23.94 0 0 0 0 24v464a23.94 23.94 0 0 0 24 24h336a23.94 23.94 0 0 0 24-24V160H248a24.08 24.08 0 0 1-24-24zm64 88v160c0 17.67-21.5 32-48 32s-48-14.33-48-32 21.5-32 48-32a69.89 69.89 0 0 1 16 2v-76.36l-96 37.52V416c0 17.67-21.5 32-48 32s-48-14.33-48-32 21.5-32 48-32a69.89 69.89 0 0 1 16 2V271.25A16 16 0 0 1 139.19 256l128-47.25A16 16 0 0 1 288 224zm89-119L279.09 7a24 24 0 0 0-17-7H256v128h128v-6.09a23.91 23.91 0 0 0-7-16.91z\"]\n};\nvar faFilePdf = {\n prefix: 'fas',\n iconName: 'file-pdf',\n icon: [384, 512, [], \"f1c1\", \"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\"]\n};\nvar faFilePlus = {\n prefix: 'fas',\n iconName: 'file-plus',\n icon: [384, 512, [], \"f319\", \"M377,105,279.1,7a24,24,0,0,0-17-7H256V128H384v-6.1A23.92,23.92,0,0,0,377,105ZM224,136V0H24A23.94,23.94,0,0,0,0,24V488a23.94,23.94,0,0,0,24,24H360a23.94,23.94,0,0,0,24-24V160H248A24.07,24.07,0,0,1,224,136Zm72,176v16a16,16,0,0,1-16,16H216v64a16,16,0,0,1-16,16H184a16,16,0,0,1-16-16V344H104a16,16,0,0,1-16-16V312a16,16,0,0,1,16-16h64V232a16,16,0,0,1,16-16h16a16,16,0,0,1,16,16v64h64A16,16,0,0,1,296,312Z\"]\n};\nvar faFilePowerpoint = {\n prefix: 'fas',\n iconName: 'file-powerpoint',\n icon: [384, 512, [], \"f1c4\", \"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\"]\n};\nvar faFilePrescription = {\n prefix: 'fas',\n iconName: 'file-prescription',\n icon: [384, 512, [], \"f572\", \"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\"]\n};\nvar faFileSearch = {\n prefix: 'fas',\n iconName: 'file-search',\n icon: [640, 512, [], \"f865\", \"M288 320c0-65.45 39.59-121.68 96-146.44V160H248a24.07 24.07 0 0 1-24-24V0H24A23.94 23.94 0 0 0 0 24v464a23.94 23.94 0 0 0 24 24h336a23.94 23.94 0 0 0 24-24v-21.56c-56.41-24.75-96-80.99-96-146.44zm96-198.1a23.92 23.92 0 0 0-7-16.9L279.1 7a24 24 0 0 0-17-7H256v128h128zm251.31 340.16l-77.41-77.41A126.69 126.69 0 0 0 576 320a128 128 0 1 0-128 128c23.7 0 45.61-6.88 64.65-18.11l77.41 77.42a16 16 0 0 0 22.63 0l22.62-22.62a16 16 0 0 0 0-22.63zM448 384a64 64 0 1 1 64-64 64 64 0 0 1-64 64z\"]\n};\nvar faFileSignature = {\n prefix: 'fas',\n iconName: 'file-signature',\n icon: [576, 512, [], \"f573\", \"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\"]\n};\nvar faFileSpreadsheet = {\n prefix: 'fas',\n iconName: 'file-spreadsheet',\n icon: [384, 512, [], \"f65b\", \"M296 368h-48v48h48v-48zm-80-80h-48v48h48v-48zm80 0h-48v48h48v-48zm-80 80h-48v48h48v-48zm8-232V0H24C10.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-24zm104 104v192c0 8.84-7.16 16-16 16H72c-8.84 0-16-7.16-16-16V240c0-8.84 7.16-16 16-16h240c8.84 0 16 7.16 16 16zm49-135L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zM136 288H88v48h48v-48zm0 80H88v48h48v-48z\"]\n};\nvar faFileTimes = {\n prefix: 'fas',\n iconName: 'file-times',\n icon: [384, 512, [], \"f317\", \"M224,136V0H24A23.94,23.94,0,0,0,0,24V488a23.94,23.94,0,0,0,24,24H360a23.94,23.94,0,0,0,24-24V160H248A24.07,24.07,0,0,1,224,136Zm35.88,104.8,11.32,11.32a16,16,0,0,1,0,22.63L225.94,320l45.26,45.25a16,16,0,0,1,0,22.63L259.88,399.2a16,16,0,0,1-22.63,0L192,353.94,146.75,399.2a16,16,0,0,1-22.63,0L112.8,387.88a16,16,0,0,1,0-22.63L158.06,320,112.8,274.75a16,16,0,0,1,0-22.63l11.32-11.32a16,16,0,0,1,22.63,0L192,286.06l45.25-45.26A16,16,0,0,1,259.88,240.8ZM377,105,279.1,7a24,24,0,0,0-17-7H256V128H384v-6.1A23.92,23.92,0,0,0,377,105Z\"]\n};\nvar faFileUpload = {\n prefix: 'fas',\n iconName: 'file-upload',\n icon: [384, 512, [], \"f574\", \"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\"]\n};\nvar faFileUser = {\n prefix: 'fas',\n iconName: 'file-user',\n icon: [384, 512, [], \"f65c\", \"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-24zm80 273.6v19.2c0 10.61-10.03 19.2-22.4 19.2H102.4c-12.37 0-22.4-8.6-22.4-19.2v-19.2c0-31.81 30.09-57.6 67.2-57.6h4.95c12.29 5.12 25.73 8 39.85 8s27.56-2.88 39.85-8h4.95c37.11 0 67.2 25.79 67.2 57.6zM192 320c-35.35 0-64-28.65-64-64s28.65-64 64-64 64 28.65 64 64-28.65 64-64 64zm185-215L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z\"]\n};\nvar faFileVideo = {\n prefix: 'fas',\n iconName: 'file-video',\n icon: [384, 512, [], \"f1c8\", \"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\"]\n};\nvar faFileWord = {\n prefix: 'fas',\n iconName: 'file-word',\n icon: [384, 512, [], \"f1c2\", \"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\"]\n};\nvar faFilesMedical = {\n prefix: 'fas',\n iconName: 'files-medical',\n icon: [448, 512, [], \"f7fd\", \"M96 392V96H24a24 24 0 0 0-24 24v368a24 24 0 0 0 24 24h272a24 24 0 0 0 24-24v-40H152a56.06 56.06 0 0 1-56-56zm224-288V0H152a24 24 0 0 0-24 24v368a24 24 0 0 0 24 24h272a24 24 0 0 0 24-24V128H344a24.07 24.07 0 0 1-24-24zm64 128v48a8 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 8zm57-159L375 7a24 24 0 0 0-17-7h-6v96h96v-6.06A24 24 0 0 0 441 73z\"]\n};\nvar faFill = {\n prefix: 'fas',\n iconName: 'fill',\n icon: [512, 512, [], \"f575\", \"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\"]\n};\nvar faFillDrip = {\n prefix: 'fas',\n iconName: 'fill-drip',\n icon: [576, 512, [], \"f576\", \"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\"]\n};\nvar faFilm = {\n prefix: 'fas',\n iconName: 'film',\n icon: [512, 512, [], \"f008\", \"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\"]\n};\nvar faFilmAlt = {\n prefix: 'fas',\n iconName: 'film-alt',\n icon: [512, 512, [], \"f3a0\", \"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 12v40zm384 192c0 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\"]\n};\nvar faFilmCanister = {\n prefix: 'fas',\n iconName: 'film-canister',\n icon: [576, 512, [], \"f8b7\", \"M544 128H352v288h128a32 32 0 0 0 32-32v-32a32 32 0 0 1 32-32 32 32 0 0 0 32-32V160a32 32 0 0 0-32-32zM440 360a16 16 0 0 1-16 16h-16a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h16a16 16 0 0 1 16 16zm0-160a16 16 0 0 1-16 16h-16a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h16a16 16 0 0 1 16 16zm96 0a16 16 0 0 1-16 16h-16a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h16a16 16 0 0 1 16 16zM336 448h-16V96h16a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-80V16a16 16 0 0 0-16-16H112a16 16 0 0 0-16 16v16H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h16v352H16a16 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\"]\n};\nvar faFilter = {\n prefix: 'fas',\n iconName: 'filter',\n icon: [512, 512, [], \"f0b0\", \"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\"]\n};\nvar faFingerprint = {\n prefix: 'fas',\n iconName: 'fingerprint',\n icon: [512, 512, [], \"f577\", \"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\"]\n};\nvar faFire = {\n prefix: 'fas',\n iconName: 'fire',\n icon: [384, 512, [], \"f06d\", \"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\"]\n};\nvar faFireAlt = {\n prefix: 'fas',\n iconName: 'fire-alt',\n icon: [448, 512, [], \"f7e4\", \"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\"]\n};\nvar faFireExtinguisher = {\n prefix: 'fas',\n iconName: 'fire-extinguisher',\n icon: [448, 512, [], \"f134\", \"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\"]\n};\nvar faFireSmoke = {\n prefix: 'fas',\n iconName: 'fire-smoke',\n icon: [640, 512, [], \"f74b\", \"M528 288c-37.1 0-69.7 18.3-90.1 46.1C418.4 288.2 373 256 320 256s-98.4 32.2-117.9 78.1c-20.4-27.8-53-46.1-90.1-46.1C50.1 288 0 338.1 0 400s50.1 112 112 112h416c61.9 0 112-50.1 112-112s-50.1-112-112-112zm-332.3-4.8c9.7-12 21.3-22.3 33.9-31-4.7-11.6-7.4-24.7-7.4-39.3 0-29.8 18.2-56.1 54.4-101.1 5.2 6.2 73.8 96.9 73.8 96.9l43.8-51.7c3.1 5.3 5.9 10.5 8.4 15.4 12.4 24.5 13.9 53.1 5.1 77.8 13.7 9 26.1 20 36.5 32.8 13.5-9.7 28.6-16.7 44.5-21.3 4.6-15.5 7.2-31.9 7.2-48.9 0-40.3-40.8-123.4-97.8-174.2C381.8 53.2 367 68.5 353.9 84 332.6 55.7 306.1 26.9 276 0c-77.2 68.9-132 158.8-132 213 0 17 2.6 33.4 7.2 48.9 15.9 4.6 31 11.6 44.5 21.3z\"]\n};\nvar faFireplace = {\n prefix: 'fas',\n iconName: 'fireplace',\n icon: [640, 512, [], \"f79a\", \"M32 512h96V384c0-106 86-192 192-192s192 86 192 192v128h96V128H32v384zm310.3-200.4c-14-18.8-31.4-37.8-51.1-55.6-50.5 45.6-86.4 105-86.4 140.8 0 63.6 51.6 115.2 115.2 115.2s115.2-51.6 115.2-115.2c0-26.6-26.7-81.6-64-115.2-10.7 9.6-20.4 19.8-28.9 30zm15.5 136.9c-10.6 7.7-23.7 12.3-37.8 12.3-35.3 0-64-24.4-64-64 0-19.7 11.9-37.1 35.6-66.8 3.4 4.1 48.3 64.1 48.3 64.1l28.7-34.2c2 3.5 3.9 6.9 5.5 10.2 13.4 26.6 7.8 60.8-16.3 78.4zM624 0H16C7.2 0 0 7.2 0 16v64c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16z\"]\n};\nvar faFirstAid = {\n prefix: 'fas',\n iconName: 'first-aid',\n icon: [576, 512, [], \"f479\", \"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\"]\n};\nvar faFish = {\n prefix: 'fas',\n iconName: 'fish',\n icon: [576, 512, [], \"f578\", \"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\"]\n};\nvar faFishCooked = {\n prefix: 'fas',\n iconName: 'fish-cooked',\n icon: [640, 512, [], \"f7fe\", \"M363.44 64c-100 0-187.26 65.72-235.85 122l-97-79.26C17.08 95.68-3 107.42.4 124.29L27.27 256 .39 387.73C-3 404.6 17.07 416.32 30.54 405.32l97-79.26C176.17 382.28 263.48 448 363.44 448 516.18 448 640 294.4 640 256S516.18 64 363.44 64zM245.66 261.65l-11.31-11.31a8 8 0 0 1 0-11.31L319 154.34a8 8 0 0 1 11.32 0l11.31 11.31a8 8 0 0 1 0 11.32L257 261.65a8 8 0 0 1-11.34 0zm59.31 80a8 8 0 0 1-11.31 0l-11.31-11.31a8 8 0 0 1 0-11.31L431 170.34a8 8 0 0 1 11.32 0l11.31 11.31a8 8 0 0 1 0 11.32zM501.66 273L417 357.65a8 8 0 0 1-11.31 0l-11.31-11.31a8 8 0 0 1 0-11.31L479 250.34a8 8 0 0 1 11.32 0l11.31 11.31a8 8 0 0 1 .03 11.35z\"]\n};\nvar faFistRaised = {\n prefix: 'fas',\n iconName: 'fist-raised',\n icon: [384, 512, [], \"f6de\", \"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\"]\n};\nvar faFlag = {\n prefix: 'fas',\n iconName: 'flag',\n icon: [512, 512, [], \"f024\", \"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\"]\n};\nvar faFlagAlt = {\n prefix: 'fas',\n iconName: 'flag-alt',\n icon: [512, 512, [], \"f74c\", \"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 0zm430.6 4.2C291.3 91.5 305.4-62.2 96 32.4V384c185.7-92.2 221.7 53.3 397.5-23.1 11.4-5 18.5-16.5 18.5-28.8V30.8c0-25.1-26.8-38.1-49.4-26.6z\"]\n};\nvar faFlagCheckered = {\n prefix: 'fas',\n iconName: 'flag-checkered',\n icon: [512, 512, [], \"f11e\", \"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\"]\n};\nvar faFlagUsa = {\n prefix: 'fas',\n iconName: 'flag-usa',\n icon: [512, 512, [], \"f74d\", \"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\"]\n};\nvar faFlame = {\n prefix: 'fas',\n iconName: 'flame',\n icon: [384, 512, [], \"f6df\", \"M192 0C79.7 101.33 0 220.92 0 300.55 0 425.05 78.95 512 192 512s192-86.95 192-211.45C384 220.6 303.78 100.86 192 0zm0 448c-70.58 0-128-52.89-128-117.89 0-44.13 25.84-71.51 34.34-79.76 3.12-3.12 8.19-3.12 11.31 0a7.98 7.98 0 0 1 2.34 5.66v40c0 30.93 25.07 56 56 56s56-25.07 56-56c0-72-112.64-64.77-39.43-164.33 2.89-3.93 7.48-4.16 10.58-3.17 1.62.53 5.38 2.24 5.38 6.78 0 33.55 25.05 54.97 51.57 77.63 33.38 28.54 67.9 58.04 67.9 117.21C320 395.11 262.58 448 192 448z\"]\n};\nvar faFlashlight = {\n prefix: 'fas',\n iconName: 'flashlight',\n icon: [640, 512, [], \"f8b8\", \"M384 160H32a32 32 0 0 0-32 32v128a32 32 0 0 0 32 32h352l16.12 10.75c43.14 28.76 92.62 45.67 143.88 50.89V98.36c-51.26 5.22-100.74 22.13-143.88 50.89zm-96 128h-32a32 32 0 0 1 0-64h32a32 32 0 0 1 0 64zM608 96h-32v320h32a32 32 0 0 0 32-32V128a32 32 0 0 0-32-32z\"]\n};\nvar faFlask = {\n prefix: 'fas',\n iconName: 'flask',\n icon: [448, 512, [], \"f0c3\", \"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\"]\n};\nvar faFlaskPoison = {\n prefix: 'fas',\n iconName: 'flask-poison',\n icon: [416, 512, [], \"f6e0\", \"M80 48V16c0-8.84 7.16-16 16-16h224c8.84 0 16 7.16 16 16v32c0 8.84-7.16 16-16 16H96c-8.84 0-16-7.16-16-16zm88 240c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm247.95 68.67c-1.14 51.68-21.15 98.7-53.39 134.48-12.09 13.41-29.52 20.85-47.58 20.85H100.94c-17.78 0-35.05-7.13-47-20.3C20.43 454.79 0 405.79 0 352c0-80.12 45.61-149.15 112-183.88V96h192v73.05c67.19 36.13 113.71 107.67 111.95 187.62zM320 312c0-48.6-50.14-88-112-88S96 263.4 96 312c0 29.87 19.04 56.17 48 72.08V416c0 8.84 7.16 16 16 16h96c8.84 0 16-7.16 16-16v-31.92c28.96-15.91 48-42.21 48-72.08zm-72-24c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faFlaskPotion = {\n prefix: 'fas',\n iconName: 'flask-potion',\n icon: [416, 512, [], \"f6e1\", \"M415.95 356.67c-1.14 51.68-21.15 98.7-53.39 134.48-12.09 13.41-29.52 20.85-47.58 20.85H100.94c-17.78 0-35.05-7.13-47-20.3C20.43 454.79 0 405.79 0 352c0-80.12 45.61-149.15 112-183.88V96h64v110.86C155.79 217.44 75.67 245.6 65.15 335.42c65.85-32.92 127.64-31.03 181.8-3.95C291.94 353.97 328.27 352 351.8 352c-.27-91.84-75.33-125.09-111.79-144.7V96h64v73.05c67.18 36.13 113.7 107.67 111.94 187.62zM96 64h224c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16H96c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16z\"]\n};\nvar faFlower = {\n prefix: 'fas',\n iconName: 'flower',\n icon: [512, 512, [], \"f7ff\", \"M480 160A128 128 0 0 0 352 32c-38.45 0-72.54 17.3-96 44.14C232.54 49.3 198.45 32 160 32A128 128 0 0 0 32 160c0 38.45 17.3 72.54 44.14 96C49.3 279.46 32 313.55 32 352a128 128 0 0 0 128 128c38.45 0 72.54-17.3 96-44.14C279.46 462.7 313.55 480 352 480a128 128 0 0 0 128-128c0-38.45-17.3-72.54-44.14-96C462.7 232.54 480 198.45 480 160zM256 336a80 80 0 1 1 80-80 80 80 0 0 1-80 80z\"]\n};\nvar faFlowerDaffodil = {\n prefix: 'fas',\n iconName: 'flower-daffodil',\n icon: [512, 512, [], \"f800\", \"M495.87 320h-47.26c-63 0-119.82 22.23-160.61 57.92v-96.67A79.8 79.8 0 0 0 367.56 144 79.78 79.78 0 1 0 256 32.44 79.78 79.78 0 1 0 144.44 144 79.81 79.81 0 0 0 224 281.25v96.67C183.21 342.23 126.37 320 63.39 320H16.13c-9.19 0-17 7.72-16.06 16.84C10.06 435 106.43 512 223.83 512h64.34c117.4 0 213.77-77 223.76-175.16.92-9.12-6.87-16.84-16.06-16.84zM256 192a48 48 0 1 1 48-48 48 48 0 0 1-48 48z\"]\n};\nvar faFlowerTulip = {\n prefix: 'fas',\n iconName: 'flower-tulip',\n icon: [512, 512, [], \"f801\", \"M495.87 320h-47.26c-63 0-119.82 22.23-160.61 57.92V256a128 128 0 0 0 128-128V32l-80 48-78.86-80L176 80 96 32v96a128 128 0 0 0 128 128v121.92C183.21 342.23 126.37 320 63.39 320H16.13c-9.19 0-17 7.72-16.06 16.84C10.06 435 106.43 512 223.83 512h64.34c117.4 0 213.77-77 223.76-175.16.92-9.12-6.87-16.84-16.06-16.84z\"]\n};\nvar faFlushed = {\n prefix: 'fas',\n iconName: 'flushed',\n icon: [496, 512, [], \"f579\", \"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\"]\n};\nvar faFlute = {\n prefix: 'fas',\n iconName: 'flute',\n icon: [640, 512, [], \"f8b9\", \"M0 208v96a32 32 0 0 0 32 32h64V176H32a32 32 0 0 0-32 32zm608-32H128v160h480a32 32 0 0 0 32-32v-96a32 32 0 0 0-32-32zM320 280a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm96 0a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm96 0a24 24 0 1 1 24-24 24 24 0 0 1-24 24z\"]\n};\nvar faFluxCapacitor = {\n prefix: 'fas',\n iconName: 'flux-capacitor',\n icon: [448, 512, [], \"f8ba\", \"M448,112V400a80.15451,80.15451,0,0,1-80,80H80A80.15451,80.15451,0,0,1,0,400V112A80.15451,80.15451,0,0,1,80,32H368A80.15451,80.15451,0,0,1,448,112ZM139.0625,238.82812l-45-44.95312c-7.60938-7.73438-13.78125-22.8125-13.78125-33.65625a48.01238,48.01238,0,0,1,48-48c10.84375,0,25.92187,6.17187,33.65625,13.78125l44.95312,45A96.07,96.07,0,0,0,208,160a80,80,0,1,0-80,80A93.8335,93.8335,0,0,0,139.0625,238.82812ZM208,262.625V352a16,16,0,0,0,32,0V262.625l91.31249-91.3125a18.49794,18.49794,0,0,0,4.39063-11.01562,15.99079,15.99079,0,0,0-16-16,18.498,18.498,0,0,0-11.01563,4.39062L224,233.375l-84.6875-84.6875a18.498,18.498,0,0,0-11.01562-4.39062,15.99079,15.99079,0,0,0-16,16,18.498,18.498,0,0,0,4.39062,11.01562ZM224.23438,432A79.79393,79.79393,0,0,0,304,352.23438c0-22.04688-14.34375-50.67188-32-63.875V352a48,48,0,0,1-96,0V288.35938c-17.65625,13.20312-32,41.82812-32,63.875A79.79393,79.79393,0,0,0,223.76562,432h.46876ZM400,160a80,80,0,0,0-160,0,93.8335,93.8335,0,0,0,1.17188,11.0625l44.95312-45c7.73438-7.60938,22.81249-13.78125,33.65625-13.78125a48.01238,48.01238,0,0,1,48,48c0,10.84375-6.17187,25.92187-13.78125,33.65625l-45,44.95312A96.06972,96.06972,0,0,0,320,240,80.034,80.034,0,0,0,400,160Z\"]\n};\nvar faFog = {\n prefix: 'fas',\n iconName: 'fog',\n icon: [640, 512, [], \"f74e\", \"M160 320h320c53 0 96-43 96-96s-43-96-96-96c-.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.8C320.4 24.8 283.3 0 240 0c-61.9 0-112 50.1-112 112 0 7.3.8 14.3 2.1 21.2C91.8 145.8 64 181.5 64 224c0 53 43 96 96 96zm48 144H80c-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 0H288c-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-16zm-48-56v-16c0-8.8-7.2-16-16-16H16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h544c8.8 0 16-7.2 16-16z\"]\n};\nvar faFolder = {\n prefix: 'fas',\n iconName: 'folder',\n icon: [512, 512, [], \"f07b\", \"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\"]\n};\nvar faFolderDownload = {\n prefix: 'fas',\n iconName: 'folder-download',\n icon: [512, 512, [], \"e053\", \"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,128ZM364.44,283.36,268,379.06a17.05,17.05,0,0,1-24,0l-96.42-95.7A16,16,0,0,1,158.81,256H224V208a16,16,0,0,1,16-16h32a16,16,0,0,1,16,16v48h65.18A16,16,0,0,1,364.44,283.36Z\"]\n};\nvar faFolderMinus = {\n prefix: 'fas',\n iconName: 'folder-minus',\n icon: [512, 512, [], \"f65d\", \"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\"]\n};\nvar faFolderOpen = {\n prefix: 'fas',\n iconName: 'folder-open',\n icon: [576, 512, [], \"f07c\", \"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\"]\n};\nvar faFolderPlus = {\n prefix: 'fas',\n iconName: 'folder-plus',\n icon: [512, 512, [], \"f65e\", \"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\"]\n};\nvar faFolderTimes = {\n prefix: 'fas',\n iconName: 'folder-times',\n icon: [512, 512, [], \"f65f\", \"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-48zM340.85 338.91c6.25 6.25 6.25 16.38 0 22.63l-11.31 11.31c-6.25 6.25-16.38 6.25-22.63 0L256 321.94l-50.91 50.91c-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.63L222.06 288l-50.91-50.91c-6.25-6.25-6.25-16.38 0-22.63l11.31-11.31c6.25-6.25 16.38-6.25 22.63 0L256 254.06l50.91-50.91c6.25-6.25 16.38-6.25 22.63 0l11.31 11.31c6.25 6.25 6.25 16.38 0 22.63L289.94 288l50.91 50.91z\"]\n};\nvar faFolderTree = {\n prefix: 'fas',\n iconName: 'folder-tree',\n icon: [576, 512, [], \"f802\", \"M544 32H432L400 0h-80a32 32 0 0 0-32 32v160a32 32 0 0 0 32 32h224a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32zm0 288H432l-32-32h-80a32 32 0 0 0-32 32v160a32 32 0 0 0 32 32h224a32 32 0 0 0 32-32V352a32 32 0 0 0-32-32zM64 16A16 16 0 0 0 48 0H16A16 16 0 0 0 0 16v400a32 32 0 0 0 32 32h224v-64H64V160h192V96H64z\"]\n};\nvar faFolderUpload = {\n prefix: 'fas',\n iconName: 'folder-upload',\n icon: [512, 512, [], \"e054\", \"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,128ZM353.19,320H288v48a16,16,0,0,1-16,16H240a16,16,0,0,1-16-16V320H158.83a16,16,0,0,1-11.27-27.34L244,197a17.05,17.05,0,0,1,24,0l96.42,95.7A16,16,0,0,1,353.19,320Z\"]\n};\nvar faFolders = {\n prefix: 'fas',\n iconName: 'folders',\n icon: [640, 512, [], \"f660\", \"M96 336V128H48c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48v-48H176c-44.11 0-80-35.89-80-80zM592 64H400L336 0H176c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48z\"]\n};\nvar faFont = {\n prefix: 'fas',\n iconName: 'font',\n icon: [448, 512, [], \"f031\", \"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\"]\n};\nvar faFontAwesomeLogoFull = {\n prefix: 'fas',\n iconName: 'font-awesome-logo-full',\n icon: [3992, 512, [\"Font Awesome\"], \"f4e6\", \"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\"]\n};\nvar faFontCase = {\n prefix: 'fas',\n iconName: 'font-case',\n icon: [640, 512, [], \"f866\", \"M229.88 85.69A32 32 0 0 0 199.58 64h-47.16a32 32 0 0 0-30.3 21.69L.85 426.89A16 16 0 0 0 16 448h50.62a16 16 0 0 0 15.16-10.89L100.85 384h150.3l19.07 53.11A16 16 0 0 0 285.38 448H336a16 16 0 0 0 15.16-21.11zM129.58 304L176 174.74 222.42 304zM624 160h-32a16 16 0 0 0-16 16v1.81c-18.9-11-40.58-17.81-64-17.81a128.14 128.14 0 0 0-128 128v32a128.14 128.14 0 0 0 128 128c23.42 0 45.1-6.78 64-17.81V432a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V176a16 16 0 0 0-16-16zm-64 160a48 48 0 0 1-96 0v-32a48 48 0 0 1 96 0z\"]\n};\nvar faFootballBall = {\n prefix: 'fas',\n iconName: 'football-ball',\n icon: [496, 512, [], \"f44e\", \"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\"]\n};\nvar faFootballHelmet = {\n prefix: 'fas',\n iconName: 'football-helmet',\n icon: [512, 512, [], \"f44f\", \"M480 320H355.5l-15.2-76 136.8-17.8c9-1.2 15.6-9.8 13.9-18.7C466.2 82.6 347.9-8.6 211.9 10.6 104.6 25.7 17.8 112.6 2.6 219.9-7.6 292 13.3 359 53.7 409.9c3.1 3.9 7.8 6.1 12.8 6.1H120l85.7 45c25.2 12.6 55.7 7.7 75.7-12.3 36.2-36.2 10.9-81.9 5-96.7h42.9l9.5 47.3c9.5 47.4 48 85.3 95.9 91.3 44 5.5 42.5 5.4 45.3 5.4 22.5 0 32-19.7 32-32V352c0-17.7-14.3-32-32-32zm-304 40c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm97.6-40l-10.3-25.7c-7.8-19.4 4.9-40.9 25.6-43.6l19.6-2.6 14.4 71.9h-49.3zM480 464l-41.3-5.2c-25.9-3.2-48-18.7-60.1-40.7H480V464zm0-80H368.3l-6.4-32H480v32z\"]\n};\nvar faForklift = {\n prefix: 'fas',\n iconName: 'forklift',\n icon: [640, 512, [], \"f47a\", \"M624 384h-80V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v416c0 8.8 7.2 16 16 16h128c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM416 237.1c0-8.7-1.8-17.2-5.2-25.2L332.5 29.1C324.9 11.4 307.6 0 288.3 0H144c-26.5 0-48 21.5-48 48v112H48c-26.5 0-48 21.5-48 48v208c0 53 43 96 96 96s96-43 96-96h64c0 53 43 96 96 96s96-43 96-96c0-28.3-12.5-53.5-32-71.1V237.1zM96 464c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm160-208l-96-96V64h117.8L352 237.1V256h-96zm96 208c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z\"]\n};\nvar faForward = {\n prefix: 'fas',\n iconName: 'forward',\n icon: [512, 512, [], \"f04e\", \"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\"]\n};\nvar faFragile = {\n prefix: 'fas',\n iconName: 'fragile',\n icon: [288, 512, [], \"f4bb\", \"M287.4 192.7l-16-178.1C270.7 6.3 263.9 0 255.7 0h-63.5l30.6 63.7-85.5 56L186.7 224 65.2 104.3l85.5-56L117.9 0H32.3c-8.2 0-15 6.3-15.7 14.6L.6 192.7c-7.2 80 50.7 148.9 127.4 157.6V480H74.1c-24.5 0-33.2 32-20 32h179.8c13.1 0 4.5-32-20-32H160V350.3c76.7-8.8 134.6-77.6 127.4-157.6z\"]\n};\nvar faFrenchFries = {\n prefix: 'fas',\n iconName: 'french-fries',\n icon: [512, 512, [], \"f803\", \"M432 224h-34c-6.92 0-13.7 4.27-15.19 11-8.6 39-62.09 69-126.79 69s-118.19-30-126.79-69c-1.49-6.76-8.27-11-15.19-11H80a16 16 0 0 0-15.62 19.47l54.1 243.47A32 32 0 0 0 149.73 512h212.54a32 32 0 0 0 31.24-25.06l54.1-243.47A16 16 0 0 0 432 224zm-80.45 4.14c.4-1.78 1.46-3.22 2.06-4.91l30.14-172.46a16 16 0 0 0-20.34-18.08l-34.28 10.25c-4.24 1.27-7.17 4.51-9.13 8.33v207.27c17.55-8.38 29.15-19.54 31.54-30.4zm79.9-36.14l16.3-93.23a16 16 0 0 0-20.34-18.08l-17.31 5.17-18.75 107.26c2.24-.32 4.33-1.12 6.63-1.12zM288 268.78V32a16 16 0 0 0-8.84-14.31l-32-16A16 16 0 0 0 224 16v252.78a160.62 160.62 0 0 0 64 0zM114 192c3.6 0 7 1 10.35 1.75l-20-107.16-19.74-5.9a16 16 0 0 0-20.36 18.08L80.55 192zm78 66.54V33.17l-3.76-20.1a16 16 0 0 0-25.39-9.81l-28.51 21.62a16 16 0 0 0-6.07 15.69l36.9 197.22c5.3 7.58 14.49 14.86 26.83 20.75z\"]\n};\nvar faFrog = {\n prefix: 'fas',\n iconName: 'frog',\n icon: [576, 512, [], \"f52e\", \"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\"]\n};\nvar faFrostyHead = {\n prefix: 'fas',\n iconName: 'frosty-head',\n icon: [384, 512, [], \"f79b\", \"M320 16c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16v192h256V16zm48 224H16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h24.4C29.9 310.1 24 334.8 24 360.9c0 59.9 31.3 112.1 78.2 142 10.2 6.5 22.5 9.1 34.6 9.1h109.6c14.7 0 29.1-4.6 41.1-13 51.4-35.8 82.2-99.4 69.5-169.6-2.6-14.5-7.5-28.3-13.7-41.4H368c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zM130.7 362.7c-11.8 0-21.3-9.6-21.3-21.3 0-11.8 9.6-21.3 21.3-21.3 11.8 0 21.3 9.6 21.3 21.3 0 11.7-9.6 21.3-21.3 21.3zM192 464s-32-46.3-32-64c0-17.7 14.3-32 32-32s32 14.3 32 32-32 64-32 64zm61.3-101.3c-11.8 0-21.3-9.6-21.3-21.3 0-11.8 9.6-21.3 21.3-21.3 11.8 0 21.3 9.6 21.3 21.3.1 11.7-9.5 21.3-21.3 21.3z\"]\n};\nvar faFrown = {\n prefix: 'fas',\n iconName: 'frown',\n icon: [496, 512, [], \"f119\", \"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\"]\n};\nvar faFrownOpen = {\n prefix: 'fas',\n iconName: 'frown-open',\n icon: [496, 512, [], \"f57a\", \"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\"]\n};\nvar faFunction = {\n prefix: 'fas',\n iconName: 'function',\n icon: [640, 512, [], \"f661\", \"M288.73 320c0-52.34 16.96-103.22 48.01-144.95 5.17-6.94 4.45-16.54-2.15-22.14l-24.69-20.98c-7-5.95-17.83-5.09-23.38 2.23C246.09 187.42 224 252.78 224 320c0 67.23 22.09 132.59 62.52 185.84 5.56 7.32 16.38 8.18 23.38 2.23l24.69-20.99c6.59-5.61 7.31-15.2 2.15-22.14-31.06-41.71-48.01-92.6-48.01-144.94zM224 16c0-8.84-7.16-16-16-16h-48C102.56 0 56 46.56 56 104v64H16c-8.84 0-16 7.16-16 16v48c0 8.84 7.16 16 16 16h40v128c0 13.2-10.8 24-24 24H16c-8.84 0-16 7.16-16 16v48c0 8.84 7.16 16 16 16h16c57.44 0 104-46.56 104-104V248h40c8.84 0 16-7.16 16-16v-48c0-8.84-7.16-16-16-16h-40v-64c0-13.2 10.8-24 24-24h48c8.84 0 16-7.16 16-16V16zm353.48 118.16c-5.56-7.32-16.38-8.18-23.38-2.23l-24.69 20.98c-6.59 5.61-7.31 15.2-2.15 22.14 31.05 41.71 48.01 92.61 48.01 144.95 0 52.34-16.96 103.23-48.01 144.95-5.17 6.94-4.45 16.54 2.15 22.14l24.69 20.99c7 5.95 17.83 5.09 23.38-2.23C617.91 452.57 640 387.22 640 320c0-67.23-22.09-132.59-62.52-185.84zm-54.17 231.9L477.25 320l46.06-46.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 0L432 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.63L386.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 0L432 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.63z\"]\n};\nvar faFunnelDollar = {\n prefix: 'fas',\n iconName: 'funnel-dollar',\n icon: [640, 512, [], \"f662\", \"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\"]\n};\nvar faFutbol = {\n prefix: 'fas',\n iconName: 'futbol',\n icon: [512, 512, [], \"f1e3\", \"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\"]\n};\nvar faGalaxy = {\n prefix: 'fas',\n iconName: 'galaxy',\n icon: [512, 512, [], \"e008\", \"M506.578,274.10351C489.78116,202.99807,431.23821,146.26567,359.5898,131.959a194.38794,194.38794,0,0,0-101.80269,6.61719,143.73889,143.73889,0,0,1,85.51364-110.7441C356.6152,22.13681,353.61715,2.41416,339.207.963a196.56477,196.56477,0,0,0-65.10349,4.459C202.99807,22.21884,146.26567,80.76179,131.959,152.4102a194.38794,194.38794,0,0,0,6.61719,101.80269,143.73889,143.73889,0,0,1-110.7441-85.51364C22.13681,155.3848,2.41416,158.38285.963,172.793a196.56477,196.56477,0,0,0,4.459,65.10349C22.21884,309.00193,80.76179,365.73433,152.4102,380.041a194.38794,194.38794,0,0,0,101.80269-6.61719,143.73889,143.73889,0,0,1-85.51364,110.7441c-13.31445,5.69531-10.3164,25.418,4.09375,26.86913a196.56477,196.56477,0,0,0,65.10349-4.459C309.00193,489.78116,365.73433,431.23821,380.041,359.5898a194.38794,194.38794,0,0,0-6.61719-101.80269,143.73889,143.73889,0,0,1,110.7441,85.51364c5.69531,13.31445,25.418,10.3164,26.86913-4.09375A196.56477,196.56477,0,0,0,506.578,274.10351ZM256,304a48,48,0,1,1,48-48A47.99985,47.99985,0,0,1,256,304Z\"]\n};\nvar faGameBoard = {\n prefix: 'fas',\n iconName: 'game-board',\n icon: [512, 512, [], \"f867\", \"M256 160h-96v96h96zm0 192h96v-96h-96zM480 0H32A32 32 0 0 0 0 32v448a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V32a32 32 0 0 0-32-32zm-32 160h-96v96h96v96h-96v96h-96v-96h-96v96H64v-96h96v-96H64v-96h96V64h96v96h96V64h96z\"]\n};\nvar faGameBoardAlt = {\n prefix: 'fas',\n iconName: 'game-board-alt',\n icon: [512, 512, [], \"f868\", \"M480 0H32A32 32 0 0 0 0 32v448a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V32a32 32 0 0 0-32-32zm-32 256H256v192H64V256h192V64h192z\"]\n};\nvar faGameConsoleHandheld = {\n prefix: 'fas',\n iconName: 'game-console-handheld',\n icon: [384, 512, [], \"f8bb\", \"M352 0H32A32 32 0 0 0 0 32v448a32 32 0 0 0 32 32h256a96 96 0 0 0 96-96V32a32 32 0 0 0-32-32zM160 344a8 8 0 0 1-8 8h-24v24a8 8 0 0 1-8 8h-16a8 8 0 0 1-8-8v-24H72a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h24v-24a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v24h24a8 8 0 0 1 8 8zm72 40a24 24 0 1 1 24-24 24 24 0 0 1-24 24zM112 224a16 16 0 0 1-16-16V80a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16v112a32 32 0 0 1-32 32zm184 112a24 24 0 1 1 24-24 24 24 0 0 1-24 24z\"]\n};\nvar faGamepad = {\n prefix: 'fas',\n iconName: 'gamepad',\n icon: [640, 512, [], \"f11b\", \"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\"]\n};\nvar faGamepadAlt = {\n prefix: 'fas',\n iconName: 'gamepad-alt',\n icon: [640, 512, [], \"f8bc\", \"M638.59 368.22l-33.37-211.59c-8.86-50.26-48.4-90.77-100.66-103.13h-.07a803.19 803.19 0 0 0-369 0C83.17 65.86 43.64 106.36 34.78 156.63L1.41 368.22C-8.9 426.73 38.8 480 101.51 480c49.67 0 93.77-30.07 109.48-74.64l7.52-21.36h203l7.49 21.36C444.72 449.93 488.82 480 538.49 480c62.71 0 110.41-53.27 100.1-111.78zM280 236a12 12 0 0 1-12 12h-52v52a12 12 0 0 1-12 12h-24a12 12 0 0 1-12-12v-52h-52a12 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 12zm152 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\"]\n};\nvar faGarage = {\n prefix: 'fas',\n iconName: 'garage',\n icon: [640, 512, [], \"e009\", \"M128,512H512V352H128.11Zm144-96h96a16,16,0,0,1,0,32H272a16,16,0,0,1,0-32ZM128,320H511.47l.53-96H128S128,320,128,320ZM610.5,117,338.41,3.67A57.4,57.4,0,0,0,320,0,57.4,57.4,0,0,0,301.5,3.67L29.5,117A48.11,48.11,0,0,0,0,161.28V496a16,16,0,0,0,16,16H80a16,16,0,0,0,16-16V224c0-17.59,14.59-32,32.59-32H511.41c18,0,32.59,14.41,32.59,32V496a16,16,0,0,0,16,16h64a16,16,0,0,0,16-16V161.28A48.11,48.11,0,0,0,610.5,117Z\"]\n};\nvar faGarageCar = {\n prefix: 'fas',\n iconName: 'garage-car',\n icon: [640, 512, [], \"e00a\", \"M610.5,117,338.41,3.67A57.4,57.4,0,0,0,320,0,57.4,57.4,0,0,0,301.5,3.67L29.5,117A48.11,48.11,0,0,0,0,161.28V496a16,16,0,0,0,16,16H80a16,16,0,0,0,16-16V224c0-17.59,14.59-32,32.59-32H511.41c18,0,32.59,14.41,32.59,32V496a16,16,0,0,0,16,16h64a16,16,0,0,0,16-16V161.28A48.11,48.11,0,0,0,610.5,117Zm-145,238.42-15.75-63A69.09,69.09,0,0,0,382.61,240H257.39a69.09,69.09,0,0,0-67.11,52.39l-15.75,63A47.9,47.9,0,0,0,144,400v32c0,11.72,6.61,21.52,16,27.1V488a24,24,0,0,0,24,24h32a24,24,0,0,0,24-24V464H400v24a24,24,0,0,0,24,24h32a24,24,0,0,0,24-24V459.1c9.39-5.58,16-15.38,16-27.1V400A47.9,47.9,0,0,0,465.47,355.4ZM236.84,304.05A21.15,21.15,0,0,1,257.39,288H382.61a21.15,21.15,0,0,1,20.55,16.05l12,47.95H224.86ZM208,431.85c-14.4,0-24-9.56-24-23.92S193.6,384,208,384s36,21.53,36,35.89S222.4,431.85,208,431.85Zm224,0c-14.4,0-36,2.39-36-12S417.6,384,432,384s24,9.58,24,23.93S446.4,431.85,432,431.85Z\"]\n};\nvar faGarageOpen = {\n prefix: 'fas',\n iconName: 'garage-open',\n icon: [640, 512, [], \"e00b\", \"M128,224v64H511.47l.53-64S128,224,128,224ZM465.47,355.4,456.62,320H407.14l8,32H224.86l8-32H183.38l-8.85,35.4A47.9,47.9,0,0,0,144,400v32c0,11.72,6.61,21.52,16,27.1V488a24,24,0,0,0,24,24h32a24,24,0,0,0,24-24V464H400v24a24,24,0,0,0,24,24h32a24,24,0,0,0,24-24V459.1c9.39-5.58,16-15.38,16-27.1V400A47.9,47.9,0,0,0,465.47,355.4ZM208,431.85c-14.4,0-24-9.56-24-23.92S193.6,384,208,384s36,21.53,36,35.89S222.4,431.85,208,431.85Zm224,0c-14.4,0-36,2.39-36-12S417.6,384,432,384s24,9.58,24,23.93S446.4,431.85,432,431.85ZM610.5,117,338.41,3.67A57.4,57.4,0,0,0,320,0,57.4,57.4,0,0,0,301.5,3.67L29.5,117A48.11,48.11,0,0,0,0,161.28V496a16,16,0,0,0,16,16H80a16,16,0,0,0,16-16V224c0-17.59,14.59-32,32.59-32H511.41c18,0,32.59,14.41,32.59,32V496a16,16,0,0,0,16,16h64a16,16,0,0,0,16-16V161.28A48.11,48.11,0,0,0,610.5,117Z\"]\n};\nvar faGasPump = {\n prefix: 'fas',\n iconName: 'gas-pump',\n icon: [512, 512, [], \"f52f\", \"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\"]\n};\nvar faGasPumpSlash = {\n prefix: 'fas',\n iconName: 'gas-pump-slash',\n icon: [640, 512, [], \"f5f4\", \"M633.82 458.1l-65.45-50.58c4.72-9.54 7.63-20.15 7.63-31.52V152.57c0-16.97-6.74-33.25-18.75-45.26l-80.97-80.97c-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.63L480 97.94V160c0 28.14 20.93 51.27 48 55.19V376c0 .1-.05.18-.05.27L384 265.02V64c0-35.35-28.65-64-64-64H160c-28.65 0-52.62 18.96-60.78 44.92L45.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.45zM96 416h274.03L96 204.21V416zm304 32H80c-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-16z\"]\n};\nvar faGavel = {\n prefix: 'fas',\n iconName: 'gavel',\n icon: [512, 512, [], \"f0e3\", \"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\"]\n};\nvar faGem = {\n prefix: 'fas',\n iconName: 'gem',\n icon: [576, 512, [], \"f3a5\", \"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\"]\n};\nvar faGenderless = {\n prefix: 'fas',\n iconName: 'genderless',\n icon: [288, 512, [], \"f22d\", \"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\"]\n};\nvar faGhost = {\n prefix: 'fas',\n iconName: 'ghost',\n icon: [384, 512, [], \"f6e2\", \"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\"]\n};\nvar faGift = {\n prefix: 'fas',\n iconName: 'gift',\n icon: [512, 512, [], \"f06b\", \"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\"]\n};\nvar faGiftCard = {\n prefix: 'fas',\n iconName: 'gift-card',\n icon: [576, 512, [], \"f663\", \"M528 128h-58.07c6.22-12.06 10.07-25.52 10.07-40 0-48.52-39.48-88-88-88-41.6 0-68.51 21.34-103.04 68.33C254.44 21.33 227.53 0 185.93 0c-48.52 0-88 39.48-88 88 0 14.48 3.85 27.94 10.07 40H48c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48zM392 48c22.06 0 40 17.94 40 40 0 22.05-17.94 40-40 40h-86.07c51.36-76.47 65.72-80 86.07-80zM145.93 88c0-22.06 17.94-40 40-40 19.94 0 34.58 3.27 86.07 80h-86.07c-22.06 0-40-17.95-40-40zm60.13 104l-35.72 35.72c-6.25 6.25-6.25 16.38 0 22.63l11.31 11.31c6.25 6.25 16.38 6.25 22.63 0L273.94 192h28.13l69.65 69.65c6.25 6.25 16.38 6.25 22.63 0l11.31-11.31c6.25-6.25 6.25-16.38 0-22.63L369.94 192H512v128H64V192h142.06zM64 448v-64h448v64H64z\"]\n};\nvar faGifts = {\n prefix: 'fas',\n iconName: 'gifts',\n icon: [640, 512, [], \"f79c\", \"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\"]\n};\nvar faGingerbreadMan = {\n prefix: 'fas',\n iconName: 'gingerbread-man',\n icon: [416, 512, [], \"f79d\", \"M322.2 304H352c38.9 0 69.6-34.7 63.1-74.8-5.1-31.5-34.7-53.2-66.5-53.2h-65.9c-7.1 0-10.5-8.4-5.5-13.5 20.8-21.6 31.6-52.8 24.9-86.3-7.5-37.5-38.5-67.8-76-74.6C165-9.4 112 37.1 112 96c0 25.7 10.2 49.1 26.7 66.3 5 5.2 1.7 13.7-5.5 13.7H67.4C35.5 176 6 197.8.9 229.2-5.6 269.3 25.1 304 64 304h29.8c10.1 0 18.2 8.2 18.2 18.2 0 4.3-1.5 8.4-4.2 11.7l-58.2 69.8c-23.3 27.9-21.6 72.4 7.1 94.7C68.3 507.6 82.2 512 96 512c18.3 0 36.5-7.8 49.2-23l38.3-45.9c12.8-15.4 36.4-15.4 49.2 0L271 489c12.7 15.2 30.8 23 49.2 23 13.8 0 27.7-4.4 39.3-13.5 28.7-22.4 30.4-66.8 7.1-94.7L308.4 334c-2.7-3.3-4.2-7.4-4.2-11.7-.2-10.1 8-18.3 18-18.3zM176 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 16zm32-144c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z\"]\n};\nvar faGlass = {\n prefix: 'fas',\n iconName: 'glass',\n icon: [384, 512, [], \"f804\", \"M354 0H34A32 32 0 0 0 2.06 34l32 448A32 32 0 0 0 66 512h256a32 32 0 0 0 31.94-30l32-448A32 32 0 0 0 354 0zm-34.37 64l-6.86 96H75.22l-6.86-96z\"]\n};\nvar faGlassChampagne = {\n prefix: 'fas',\n iconName: 'glass-champagne',\n icon: [256, 512, [], \"f79e\", \"M216 464h-56V347.7c60.7-15.2 103.3-72 95-135.4L228 27.4C225.7 11.7 212.2 0 196.3 0H59.7C43.8 0 30.3 11.7 28 27.4L1 212.3c-8.3 63.4 34.3 120.2 95 135.4V464H40c-22.1 0-40 17.9-40 40 0 4.4 3.6 8 8 8h240c4.4 0 8-3.6 8-8 0-22.1-17.9-40-40-40zM61.8 128l11.7-80h109l11.7 80H61.8z\"]\n};\nvar faGlassCheers = {\n prefix: 'fas',\n iconName: 'glass-cheers',\n icon: [640, 512, [], \"f79f\", \"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\"]\n};\nvar faGlassCitrus = {\n prefix: 'fas',\n iconName: 'glass-citrus',\n icon: [512, 512, [], \"f869\", \"M368 0c-62.61 0-115.35 40.2-135.18 96h52.54C302 67.45 332.63 48 368 48a96.11 96.11 0 0 1 96 96c0 50.07-38.67 90.84-87.63 95.15l-4.84 48.49C449.39 285.73 512 222.32 512 144A144 144 0 0 0 368 0zm-48 128H32A32 32 0 0 0 .16 163.18l32 320A32 32 0 0 0 64 512h224a32 32 0 0 0 31.84-28.82l32-320A32 32 0 0 0 320 128zm-41.76 128H73.76l-6.4-64h217.28z\"]\n};\nvar faGlassMartini = {\n prefix: 'fas',\n iconName: 'glass-martini',\n icon: [512, 512, [], \"f000\", \"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\"]\n};\nvar faGlassMartiniAlt = {\n prefix: 'fas',\n iconName: 'glass-martini-alt',\n icon: [512, 512, [], \"f57b\", \"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\"]\n};\nvar faGlassWhiskey = {\n prefix: 'fas',\n iconName: 'glass-whiskey',\n icon: [512, 512, [], \"f7a0\", \"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\"]\n};\nvar faGlassWhiskeyRocks = {\n prefix: 'fas',\n iconName: 'glass-whiskey-rocks',\n icon: [512, 512, [], \"f7a1\", \"M252.1 345.4l45.3 45.3c12.5 12.5 32.8 12.5 45.3 0l45.3-45.3c12.5-12.5 12.5-32.8 0-45.3l-45.3-45.3c-12.5-12.5-32.8-12.5-45.3 0l-45.3 45.3c-12.5 12.5-12.5 32.8 0 45.3zM480 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-66.3 249.4c9.9 11.6 15.6 26 15.6 41.4 0 17.1-6.7 33.2-18.7 45.3l-45.3 45.3C353.2 425.3 337.1 432 320 432c-17.1 0-33.2-6.7-45.3-18.7L229.5 368H160c-35.3 0-64-28.7-64-64v-38.9L69.4 96h373.2l-28.9 185.4zM160 336h52.2c-.9-4.3-1.4-8.7-1.4-13.3 0-17.1 6.7-33.2 18.7-45.3L256 251v-11c0-17.7-14.3-32-32-32h-64c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32z\"]\n};\nvar faGlasses = {\n prefix: 'fas',\n iconName: 'glasses',\n icon: [576, 512, [], \"f530\", \"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\"]\n};\nvar faGlassesAlt = {\n prefix: 'fas',\n iconName: 'glasses-alt',\n icon: [576, 512, [], \"f5f5\", \"M560.51 225.9L528.75 98.64C522.05 71.78 495.01 32 443.33 32c-15.63 0-23.03 2.94-43.02 9.6-8.39 2.79-12.92 11.86-10.12 20.24l5.06 15.18c2.24 6.7 8.48 10.94 15.18 10.94 3.54 0 4.82-.74 18.23-5.21 26.07-8.68 48.2 6.13 53.53 27.54l29.67 118.68C490.97 215.88 466.47 208 440 208c-55.09 0-102.27 32.91-123.65 80h-56.7c-21.38-47.09-68.56-80-123.65-80-26.47 0-50.97 7.88-71.86 20.96l29.67-118.68c5.32-21.41 27.46-36.22 53.53-27.54 13.42 4.47 14.7 5.21 18.23 5.21 6.7 0 12.94-4.24 15.18-10.94l5.06-15.18c2.8-8.38-1.73-17.45-10.12-20.24C155.7 34.94 148.3 32 132.67 32 81 32 53.95 71.78 47.25 98.64L15.49 225.9C2.16 279.34 0 300.12 0 344c0 75.11 60.89 136 136 136 72.37 0 130.97-56.69 135.19-128h33.61c4.22 71.31 62.82 128 135.19 128 75.11 0 136-60.89 136-136 .01-43.88-2.15-64.66-15.48-118.1zM136 416c-39.7 0-72-32.3-72-72s32.3-72 72-72 72 32.3 72 72-32.3 72-72 72zm304 0c-39.7 0-72-32.3-72-72s32.3-72 72-72 72 32.3 72 72-32.3 72-72 72z\"]\n};\nvar faGlobe = {\n prefix: 'fas',\n iconName: 'globe',\n icon: [496, 512, [], \"f0ac\", \"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\"]\n};\nvar faGlobeAfrica = {\n prefix: 'fas',\n iconName: 'globe-africa',\n icon: [496, 512, [], \"f57c\", \"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\"]\n};\nvar faGlobeAmericas = {\n prefix: 'fas',\n iconName: 'globe-americas',\n icon: [496, 512, [], \"f57d\", \"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\"]\n};\nvar faGlobeAsia = {\n prefix: 'fas',\n iconName: 'globe-asia',\n icon: [496, 512, [], \"f57e\", \"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\"]\n};\nvar faGlobeEurope = {\n prefix: 'fas',\n iconName: 'globe-europe',\n icon: [496, 512, [], \"f7a2\", \"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\"]\n};\nvar faGlobeSnow = {\n prefix: 'fas',\n iconName: 'globe-snow',\n icon: [448, 512, [], \"f7a3\", \"M384 416H64l-47.4 71.1c-7.1 10.7.5 24.9 13.3 24.9h388.2c12.8 0 20.4-14.2 13.3-24.9L384 416zm-192-32v-32h-57.9c-14.2 0-22-15-12.9-24.9l65.5-71.1h-30.1c-10.7 0-16.5-11.2-9.7-18.7l67.4-73.2c5-5.5 14.3-5.5 19.3 0l67.4 73.2c6.8 7.4 1 18.7-9.7 18.7h-30.1l65.5 71.1c9.1 9.9 1.3 24.9-12.9 24.9H256v32h124.1c41.7-40.6 67.9-97.1 67.9-160C448 100.3 347.7 0 224 0S0 100.3 0 224c0 62.9 26.1 119.4 67.9 160H192zm144-224c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16zm-96-96c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16zM80 224c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16z\"]\n};\nvar faGlobeStand = {\n prefix: 'fas',\n iconName: 'globe-stand',\n icon: [448, 512, [], \"f5f6\", \"M321.14 305.14c62.48-62.48 62.48-163.79 0-226.27-62.48-62.48-163.79-62.48-226.27 0-62.48 62.48-62.48 163.79 0 226.27s163.78 62.48 226.27 0zM348.12 464h-92.03v-36.98c44.6-9.01 87.14-30.71 121.75-65.31 85.25-85.22 92.73-218.44 22.91-312.38l10.7-10.7c6.25-6.25 6.25-16.38 0-22.63L400.14 4.69c-6.25-6.25-16.38-6.25-22.64 0L334.47 47.7c3.18 2.79 6.39 5.52 9.41 8.53 74.89 74.86 74.89 196.67 0 271.53C307.61 364.03 259.37 384 208.07 384s-99.53-19.97-135.81-56.24c-3.07-3.07-5.25-6.65-8.07-9.88l-59.5 59.5c-6.25 6.25-6.25 16.38 0 22.63L16 411.31c6.25 6.25 16.38 6.25 22.64 0l26.71-26.7c37.78 28.06 81.91 43.6 126.72 46.64V464h-92.03c-19.89 0-36.01 16.12-36.01 36 0 6.63 5.37 12 12 12h296.1c6.63 0 12-5.37 12-12 0-19.88-16.12-36-36.01-36z\"]\n};\nvar faGolfBall = {\n prefix: 'fas',\n iconName: 'golf-ball',\n icon: [416, 512, [], \"f450\", \"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\"]\n};\nvar faGolfClub = {\n prefix: 'fas',\n iconName: 'golf-club',\n icon: [640, 512, [], \"f451\", \"M638.4 29.9L424.3 475.7c-10.7 22.2-33.1 36.3-57.7 36.3H64c-35.3 0-64-28.7-64-64v-8h120c4.4 0 8-3.6 8-8v-32c0-4.4-3.6-8-8-8H0v-48h120c4.4 0 8-3.6 8-8v-32c0-4.4-3.6-8-8-8H0v-26.9c0-40.1 36.4-70.3 75.8-62.9l389.7 73.1L595.2 9c3.8-8 13.4-11.3 21.4-7.4L631 8.5c7.9 3.9 11.2 13.5 7.4 21.4z\"]\n};\nvar faGopuram = {\n prefix: 'fas',\n iconName: 'gopuram',\n icon: [512, 512, [], \"f664\", \"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\"]\n};\nvar faGraduationCap = {\n prefix: 'fas',\n iconName: 'graduation-cap',\n icon: [640, 512, [], \"f19d\", \"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\"]\n};\nvar faGramophone = {\n prefix: 'fas',\n iconName: 'gramophone',\n icon: [384, 512, [], \"f8bd\", \"M69.56 317.08c62.84-43.05 161.76-94.4 238.6-73.8A26.79 26.79 0 0 1 328 269.15a34.81 34.81 0 0 1-34.78 34.77H184a24 24 0 0 0-24 24v24h133.22A82.87 82.87 0 0 0 376 269.15a74.89 74.89 0 0 0-55.41-72.27C243.17 176.13 183 80.83 150.84 13.62 141.2-6.5 111.76-3.68 106 17.79L32.82 291.06c-5.82 21.62 18.53 38.49 36.74 26.02zM368 448h-16v-32a32 32 0 0 0-32-32H64a32 32 0 0 0-32 32v32H16a16 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\"]\n};\nvar faGreaterThan = {\n prefix: 'fas',\n iconName: 'greater-than',\n icon: [384, 512, [], \"f531\", \"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\"]\n};\nvar faGreaterThanEqual = {\n prefix: 'fas',\n iconName: 'greater-than-equal',\n icon: [448, 512, [], \"f532\", \"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\"]\n};\nvar faGrimace = {\n prefix: 'fas',\n iconName: 'grimace',\n icon: [496, 512, [], \"f57f\", \"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\"]\n};\nvar faGrin = {\n prefix: 'fas',\n iconName: 'grin',\n icon: [496, 512, [], \"f580\", \"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\"]\n};\nvar faGrinAlt = {\n prefix: 'fas',\n iconName: 'grin-alt',\n icon: [496, 512, [], \"f581\", \"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\"]\n};\nvar faGrinBeam = {\n prefix: 'fas',\n iconName: 'grin-beam',\n icon: [496, 512, [], \"f582\", \"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\"]\n};\nvar faGrinBeamSweat = {\n prefix: 'fas',\n iconName: 'grin-beam-sweat',\n icon: [504, 512, [], \"f583\", \"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\"]\n};\nvar faGrinHearts = {\n prefix: 'fas',\n iconName: 'grin-hearts',\n icon: [496, 512, [], \"f584\", \"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\"]\n};\nvar faGrinSquint = {\n prefix: 'fas',\n iconName: 'grin-squint',\n icon: [496, 512, [], \"f585\", \"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\"]\n};\nvar faGrinSquintTears = {\n prefix: 'fas',\n iconName: 'grin-squint-tears',\n icon: [512, 512, [], \"f586\", \"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\"]\n};\nvar faGrinStars = {\n prefix: 'fas',\n iconName: 'grin-stars',\n icon: [496, 512, [], \"f587\", \"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\"]\n};\nvar faGrinTears = {\n prefix: 'fas',\n iconName: 'grin-tears',\n icon: [640, 512, [], \"f588\", \"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\"]\n};\nvar faGrinTongue = {\n prefix: 'fas',\n iconName: 'grin-tongue',\n icon: [496, 512, [], \"f589\", \"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\"]\n};\nvar faGrinTongueSquint = {\n prefix: 'fas',\n iconName: 'grin-tongue-squint',\n icon: [496, 512, [], \"f58a\", \"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\"]\n};\nvar faGrinTongueWink = {\n prefix: 'fas',\n iconName: 'grin-tongue-wink',\n icon: [496, 512, [], \"f58b\", \"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\"]\n};\nvar faGrinWink = {\n prefix: 'fas',\n iconName: 'grin-wink',\n icon: [496, 512, [], \"f58c\", \"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\"]\n};\nvar faGripHorizontal = {\n prefix: 'fas',\n iconName: 'grip-horizontal',\n icon: [448, 512, [], \"f58d\", \"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\"]\n};\nvar faGripLines = {\n prefix: 'fas',\n iconName: 'grip-lines',\n icon: [512, 512, [], \"f7a4\", \"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\"]\n};\nvar faGripLinesVertical = {\n prefix: 'fas',\n iconName: 'grip-lines-vertical',\n icon: [256, 512, [], \"f7a5\", \"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\"]\n};\nvar faGripVertical = {\n prefix: 'fas',\n iconName: 'grip-vertical',\n icon: [320, 512, [], \"f58e\", \"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\"]\n};\nvar faGuitar = {\n prefix: 'fas',\n iconName: 'guitar',\n icon: [512, 512, [], \"f7a6\", \"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\"]\n};\nvar faGuitarElectric = {\n prefix: 'fas',\n iconName: 'guitar-electric',\n icon: [512, 512, [], \"f8be\", \"M511.21 39.54a48.1 48.1 0 0 0-37.79-38.23C450.48-3 450.66.78 366.74 54.9A32.12 32.12 0 0 0 352 81.82v33.25L243.76 223.23a39.42 39.42 0 0 1-3.18-38.43l17.29-37.13a18.82 18.82 0 0 0-30.38-21.24l-38.31 38.28a77.44 77.44 0 0 0-18.24 28.84 77.63 77.63 0 0 1-40.52 44.37L54 273.29C-3.23 296.15-18.4 370 25.16 413.53l73.39 73.33c43.56 43.53 117.45 28.37 140.35-28.78l35.4-76.39a77.62 77.62 0 0 1 44.41-40.49 77.68 77.68 0 0 0 28.86-18.2l21.56-21.55a19.87 19.87 0 0 0-20.1-33L325.31 276a39.6 39.6 0 0 1-36.75-7.11L461.6 96c.82.05 1.56.35 2.4.35a48 48 0 0 0 47.21-56.81zm-329.56 354.8l-11.31 11.31a8 8 0 0 1-11.31 0L106.34 353a8 8 0 0 1 0-11.32l11.31-11.31a8 8 0 0 1 11.32 0L181.65 383a8 8 0 0 1 0 11.34zm64-64l-11.31 11.31a8 8 0 0 1-11.31 0L170.34 289a8 8 0 0 1 0-11.32l11.31-11.31a8 8 0 0 1 11.32 0L245.65 319a8 8 0 0 1 0 11.34z\"]\n};\nvar faGuitars = {\n prefix: 'fas',\n iconName: 'guitars',\n icon: [512, 512, [], \"f8bf\", \"M229.27 300.21A74.51 74.51 0 0 0 237.7 266c0-29.14-17-54.82-43.14-71.17-12.83-8-27.53-12-42.56-13.88v-54.22l16.6-33.21a29.17 29.17 0 0 0 3.08-13v-54.1A26.42 26.42 0 0 0 145.25 0h-34.53A26.41 26.41 0 0 0 84.3 26.41v54.08a29.12 29.12 0 0 0 3.07 13L104 126.74V181c-15 1.84-29.74 5.84-42.58 13.83a103.31 103.31 0 0 0-18.58 14.67c-15.39 15.39-24.62 35-24.62 56.58a74.37 74.37 0 0 0 8.42 34.2c8 15.65 6 35.59-4.88 48.78C8.11 365.55-.07 385.43 0 407c-.07 58 57.34 105 128 105 39.89 0 75.54-15 99-38.47 1.28-1.27 2.23-2.75 3.43-4.07a111.36 111.36 0 0 1 2.32-80.3L243 361.42a102.52 102.52 0 0 0-8.81-12.42c-10.89-13.16-12.89-33.16-4.92-48.79zm-73 32.08a40 40 0 1 1 0-56.58 40 40 0 0 1 .02 56.58zm349.19 68.53l-26.93-73.45a72.1 72.1 0 0 1 2.58-55.79 72.13 72.13 0 0 0 7-30.94v-28.32a18.47 18.47 0 0 0-34.88-8.47l-10.61 20.55c-5.36 10.37-15.35 17-26.62 19l-8-.1V73.38a34.72 34.72 0 0 0 5.09-3.8 40.77 40.77 0 0 0-51.44-62.75c-16.39 11.15-14 13.35-31.85 96.24a27.3 27.3 0 0 0 7.33 25L360 151v91.66l-8-.11c-11.31-3.11-20.84-11-25-22.37l-13-35.76a17.49 17.49 0 0 0-33.92 6v50.33a72.07 72.07 0 0 0 7 30.93 72.07 72.07 0 0 1 2.53 55.78l-27 73.48C240 453.53 278.54 512 335.76 512h96.41c57.23-.06 95.83-58.59 73.31-111.18zM432 392a8 8 0 0 1-8 8h-80a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h80a8 8 0 0 1 8 8zm0-64.12a8 8 0 0 1-8 8h-80a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h80a8 8 0 0 1 8 8z\"]\n};\nvar faHSquare = {\n prefix: 'fas',\n iconName: 'h-square',\n icon: [448, 512, [], \"f0fd\", \"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\"]\n};\nvar faH1 = {\n prefix: 'fas',\n iconName: 'h1',\n icon: [576, 512, [], \"f313\", \"M304 96h-98.94A13.06 13.06 0 0 0 192 109.06v37.88A13.06 13.06 0 0 0 205.06 160H224v64H96v-64h18.94A13.06 13.06 0 0 0 128 146.94V112a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v34.94A13.06 13.06 0 0 0 13.06 160H32v192H13.06A13.06 13.06 0 0 0 0 365.06V400a16 16 0 0 0 16 16h98.94A13.06 13.06 0 0 0 128 402.94v-37.88A13.06 13.06 0 0 0 114.94 352H96v-64h128v64h-18.94A13.06 13.06 0 0 0 192 365.06V400a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-34.94A13.06 13.06 0 0 0 306.94 352H288V160h18.94A13.06 13.06 0 0 0 320 146.94V112a16 16 0 0 0-16-16zm256 256h-48V120a24 24 0 0 0-24-24h-40a24 24 0 0 0-21.44 13.26l-24 48A24 24 0 0 0 424 192h24v160h-48a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h160a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"]\n};\nvar faH2 = {\n prefix: 'fas',\n iconName: 'h2',\n icon: [576, 512, [], \"f314\", \"M560 352H440.79c17-42.95 135.21-66.57 135.21-159.62C576 132.55 528.33 96 469.14 96c-43.83 0-81.41 21.38-103.42 57a15.66 15.66 0 0 0 4.75 21.4l28.26 18.6a16.15 16.15 0 0 0 21.86-3.83c10.77-14.86 24.94-26 43.85-26s38.22 10.46 38.22 33.84c0 52.18-142.1 73.21-142.1 184.56a155.06 155.06 0 0 0 1.71 20.66A15.94 15.94 0 0 0 378.14 416H560a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM304 96h-98.94A13.06 13.06 0 0 0 192 109.06v37.88A13.06 13.06 0 0 0 205.06 160H224v64H96v-64h18.94A13.06 13.06 0 0 0 128 146.94V112a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v34.94A13.06 13.06 0 0 0 13.06 160H32v192H13.06A13.06 13.06 0 0 0 0 365.06V400a16 16 0 0 0 16 16h98.94A13.06 13.06 0 0 0 128 402.94v-37.88A13.06 13.06 0 0 0 114.94 352H96v-64h128v64h-18.94A13.06 13.06 0 0 0 192 365.06V400a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-34.94A13.06 13.06 0 0 0 306.94 352H288V160h18.94A13.06 13.06 0 0 0 320 146.94V112a16 16 0 0 0-16-16z\"]\n};\nvar faH3 = {\n prefix: 'fas',\n iconName: 'h3',\n icon: [576, 512, [], \"f315\", \"M499 217.69l64.4-72.31a15.48 15.48 0 0 0 4-10.31v-23.32A16 16 0 0 0 551.12 96H384a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h85.18c-2.29 2.45-4.65 5-7.19 7.9l-53.1 61.1a18 18 0 0 0-3.83 10.17 18.36 18.36 0 0 0 1.38 6.34l8.41 18.59c2.35 5.21 9 9.42 14.84 9.42h15.95c28.94 0 57.79 10.32 57.79 38.48 0 21.32-19.93 36.79-47.39 36.79-22.08 0-41.18-9.17-57.7-22.83a16.46 16.46 0 0 0-23.87 3.34l-19.75 28.8a15.46 15.46 0 0 0 2.53 20.35C384.9 403.21 422 416 459.51 416c71 0 116.49-48.86 116.49-106.06 0-47.3-32.73-80.89-77-92.25zM304 96h-98.94A13.06 13.06 0 0 0 192 109.06v37.88A13.06 13.06 0 0 0 205.06 160H224v64H96v-64h18.94A13.06 13.06 0 0 0 128 146.94V112a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v34.94A13.06 13.06 0 0 0 13.06 160H32v192H13.06A13.06 13.06 0 0 0 0 365.06V400a16 16 0 0 0 16 16h98.94A13.06 13.06 0 0 0 128 402.94v-37.88A13.06 13.06 0 0 0 114.94 352H96v-64h128v64h-18.94A13.06 13.06 0 0 0 192 365.06V400a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-34.94A13.06 13.06 0 0 0 306.94 352H288V160h18.94A13.06 13.06 0 0 0 320 146.94V112a16 16 0 0 0-16-16z\"]\n};\nvar faH4 = {\n prefix: 'fas',\n iconName: 'h4',\n icon: [576, 512, [], \"f86a\", \"M304 96h-98.94A13.06 13.06 0 0 0 192 109.06v37.88A13.06 13.06 0 0 0 205.06 160H224v64H96v-64h18.94A13.06 13.06 0 0 0 128 146.94V112a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v34.94A13.06 13.06 0 0 0 13.06 160H32v192H13.06A13.06 13.06 0 0 0 0 365.06V400a16 16 0 0 0 16 16h98.94A13.06 13.06 0 0 0 128 402.94v-37.88A13.06 13.06 0 0 0 114.94 352H96v-64h128v64h-18.94A13.06 13.06 0 0 0 192 365.06V400a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-34.94A13.06 13.06 0 0 0 306.94 352H288V160h18.94A13.06 13.06 0 0 0 320 146.94V112a16 16 0 0 0-16-16zm256 128h-16V112a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v112h-64V112a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v144a32 32 0 0 0 32 32h96v112a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V288h16a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"]\n};\nvar faHamburger = {\n prefix: 'fas',\n iconName: 'hamburger',\n icon: [512, 512, [], \"f805\", \"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\"]\n};\nvar faHammer = {\n prefix: 'fas',\n iconName: 'hammer',\n icon: [576, 512, [], \"f6e3\", \"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\"]\n};\nvar faHammerWar = {\n prefix: 'fas',\n iconName: 'hammer-war',\n icon: [384, 512, [], \"f6e4\", \"M346.74 32.44L224 52.9V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v36.9L37.26 32.44C17.76 29.19 0 44.23 0 64.01v191.98c0 19.77 17.76 34.81 37.26 31.56L192 261.77l154.74 25.79C366.25 290.81 384 275.77 384 256V64.01c0-19.78-17.76-34.82-37.26-31.57zM160 299.54V496c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V299.54l-32-5.33-32 5.33z\"]\n};\nvar faHamsa = {\n prefix: 'fas',\n iconName: 'hamsa',\n icon: [512, 512, [], \"f665\", \"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\"]\n};\nvar faHandHeart = {\n prefix: 'fas',\n iconName: 'hand-heart',\n icon: [448, 512, [], \"f4bc\", \"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-32zm-62.9 261.2l-72.6 71.4c-4.7 4.6-12.3 4.6-17 0l-72.6-71.4c-21.1-20.7-19.8-55.1 3.7-74.2 20.5-16.7 51.1-13.7 70 4.8l7.4 7.3 7.4-7.3c18.8-18.5 49.4-21.5 70-4.8 23.5 19.1 24.7 53.4 3.7 74.2z\"]\n};\nvar faHandHolding = {\n prefix: 'fas',\n iconName: 'hand-holding',\n icon: [576, 512, [], \"f4bd\", \"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\"]\n};\nvar faHandHoldingBox = {\n prefix: 'fas',\n iconName: 'hand-holding-box',\n icon: [576, 512, [], \"f47b\", \"M112 256h352c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H352v128l-64-32-64 32V0H112c-8.8 0-16 7.2-16 16v224c0 8.8 7.2 16 16 16zm453.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\"]\n};\nvar faHandHoldingHeart = {\n prefix: 'fas',\n iconName: 'hand-holding-heart',\n icon: [576, 512, [], \"f4be\", \"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\"]\n};\nvar faHandHoldingMagic = {\n prefix: 'fas',\n iconName: 'hand-holding-magic',\n icon: [576, 512, [], \"f6e5\", \"M224 224c52.94 0 96-43.06 96-96 0 0-32 32-96 32-17.72 0-32-17.5-32-32V96c0-17.64 14.36-32 32-32h128c17.64 0 32 14.36 32 32v32c0 34.3-17.51 66.54-42.09 90.8L288 272l17.81-1.01c77.05-4.36 141.58-65.27 142.18-141.43 0-.52.01-1.04.01-1.56V96c0-52.94-43.06-96-96-96H224c-52.94 0-96 43.06-96 96v32c0 51.14 44.86 96 96 96zm341.28 104.1c-11.83-10.69-30.18-9.96-42.63 0l-92.34 73.87A64.004 64.004 0 0 1 390.33 416H272c-8.84 0-16-7.16-16-16s7.16-16 16-16h78.28c15.94 0 30.72-10.89 33.28-26.63C386.82 337.32 371.43 320 352 320H192c-26.97 0-53.11 9.27-74.06 26.27L71.44 384H16c-8.84 0-16 7.16-16 16v96c0 8.84 7.16 16 16 16h356.77c14.53 0 28.63-4.95 39.98-14.03l151.23-120.99c15.19-12.13 16.38-35.27 1.3-48.88z\"]\n};\nvar faHandHoldingMedical = {\n prefix: 'fas',\n iconName: 'hand-holding-medical',\n icon: [576, 512, [], \"e05c\", \"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\"]\n};\nvar faHandHoldingSeedling = {\n prefix: 'fas',\n iconName: 'hand-holding-seedling',\n icon: [576, 512, [], \"f4bf\", \"M480 0h-64c-40.7 0-77.5 15.7-105.8 40.8 25.4 32 40.9 72.2 41.6 116C424.9 142 480 77.5 480 0zM256 160v112c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V160C320 71.6 248.4 0 160 0H96c0 88.4 71.6 160 160 160zm309.3 168.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\"]\n};\nvar faHandHoldingUsd = {\n prefix: 'fas',\n iconName: 'hand-holding-usd',\n icon: [576, 512, [], \"f4c0\", \"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\"]\n};\nvar faHandHoldingWater = {\n prefix: 'fas',\n iconName: 'hand-holding-water',\n icon: [576, 512, [], \"f4c1\", \"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\"]\n};\nvar faHandLizard = {\n prefix: 'fas',\n iconName: 'hand-lizard',\n icon: [576, 512, [], \"f258\", \"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\"]\n};\nvar faHandMiddleFinger = {\n prefix: 'fas',\n iconName: 'hand-middle-finger',\n icon: [512, 512, [], \"f806\", \"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\"]\n};\nvar faHandPaper = {\n prefix: 'fas',\n iconName: 'hand-paper',\n icon: [448, 512, [], \"f256\", \"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\"]\n};\nvar faHandPeace = {\n prefix: 'fas',\n iconName: 'hand-peace',\n icon: [448, 512, [], \"f25b\", \"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\"]\n};\nvar faHandPointDown = {\n prefix: 'fas',\n iconName: 'hand-point-down',\n icon: [384, 512, [], \"f0a7\", \"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\"]\n};\nvar faHandPointLeft = {\n prefix: 'fas',\n iconName: 'hand-point-left',\n icon: [512, 512, [], \"f0a5\", \"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\"]\n};\nvar faHandPointRight = {\n prefix: 'fas',\n iconName: 'hand-point-right',\n icon: [512, 512, [], \"f0a4\", \"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\"]\n};\nvar faHandPointUp = {\n prefix: 'fas',\n iconName: 'hand-point-up',\n icon: [384, 512, [], \"f0a6\", \"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\"]\n};\nvar faHandPointer = {\n prefix: 'fas',\n iconName: 'hand-pointer',\n icon: [448, 512, [], \"f25a\", \"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\"]\n};\nvar faHandReceiving = {\n prefix: 'fas',\n iconName: 'hand-receiving',\n icon: [640, 512, [], \"f47c\", \"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-32zm-169.3 41.6L342.4 9.3C330-3.1 310-3.1 297.6 9.3l-96.4 96.4c-12.4 12.3-12.4 32.4 0 44.7l96.4 96.4c12.3 12.3 32.4 12.3 44.7 0l96.4-96.4c12.4-12.4 12.4-32.4 0-44.8z\"]\n};\nvar faHandRock = {\n prefix: 'fas',\n iconName: 'hand-rock',\n icon: [512, 512, [], \"f255\", \"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\"]\n};\nvar faHandScissors = {\n prefix: 'fas',\n iconName: 'hand-scissors',\n icon: [512, 512, [], \"f257\", \"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\"]\n};\nvar faHandSparkles = {\n prefix: 'fas',\n iconName: 'hand-sparkles',\n icon: [640, 512, [], \"e05d\", \"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\"]\n};\nvar faHandSpock = {\n prefix: 'fas',\n iconName: 'hand-spock',\n icon: [512, 512, [], \"f259\", \"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\"]\n};\nvar faHands = {\n prefix: 'fas',\n iconName: 'hands',\n icon: [640, 512, [], \"f4c2\", \"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\"]\n};\nvar faHandsHeart = {\n prefix: 'fas',\n iconName: 'hands-heart',\n icon: [640, 512, [], \"f4c3\", \"M436 17.5c-30.8-26.7-76.7-21.9-104.9 7.7L320 36.9l-11.1-11.6C280.7-4.4 234.8-9.2 204 17.5c-35.3 30.6-37.2 85.6-5.6 118.8l108.9 114.2c7 7.4 18.4 7.4 25.5 0l108.9-114.2c31.5-33.2 29.7-88.2-5.7-118.8zM204.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\"]\n};\nvar faHandsHelping = {\n prefix: 'fas',\n iconName: 'hands-helping',\n icon: [640, 512, [], \"f4c4\", \"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\"]\n};\nvar faHandsUsd = {\n prefix: 'fas',\n iconName: 'hands-usd',\n icon: [640, 512, [], \"f4c5\", \"M393.3 159.4c-2.9-23-20.7-41.3-42.9-47.7l-50.1-14.3c-3.6-1-6.1-4.4-6.1-8.1 0-4.6 3.8-8.4 8.4-8.4h32.8c3.6 0 7.1.8 10.3 2.2 4.8 2.2 10.4 1.7 14.1-2l17.5-17.5c5.3-5.3 4.7-14.3-1.5-18.4-9.5-6.3-20.4-10.1-31.8-11.5V16c0-8.8-7.2-16-16-16h-16c-8.8 0-16 7.2-16 16v17.6c-30.3 3.6-53.4 31-49.3 63 2.9 23 20.7 41.3 42.9 47.7l50.1 14.3c3.6 1 6.1 4.4 6.1 8.1 0 4.6-3.8 8.4-8.4 8.4h-32.8c-3.6 0-7.1-.8-10.3-2.2-4.8-2.2-10.4-1.7-14.1 2l-17.5 17.5c-5.3 5.3-4.7 14.3 1.5 18.4 9.5 6.3 20.4 10.1 31.8 11.5V240c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16v-17.6c30.3-3.6 53.4-30.9 49.3-63zm-188.5 71c-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\"]\n};\nvar faHandsWash = {\n prefix: 'fas',\n iconName: 'hands-wash',\n icon: [576, 512, [], \"e05e\", \"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\"]\n};\nvar faHandshake = {\n prefix: 'fas',\n iconName: 'handshake',\n icon: [640, 512, [], \"f2b5\", \"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\"]\n};\nvar faHandshakeAlt = {\n prefix: 'fas',\n iconName: 'handshake-alt',\n icon: [640, 512, [], \"f4c6\", \"M483.9 338.7L334.6 217.5l-30 27.5c-40.6 37.1-86.8 11.9-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 128H16c-8.8 0-16 7.2-16 16v191.9c0 8.8 7.2 16 16 16h130.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.1zM624 128H512l-54.6-54.6c-6-6-14.1-9.4-22.6-9.4h-85.9c-8 0-15.7 3-21.6 8.4l-98.3 90c-.1.1-.2.3-.3.4-16.7 15.7-16.3 40.6-2.1 56 9.6 10.5 35 21.6 56.1 2.7.1-.1.3-.1.4-.2l53-48.5 27-24.7c6.5-5.9 16.6-5.5 22.6 1s5.5 16.6-1 22.6l-26.1 23.9 145.6 118.2c12.2 9.9 19.5 23.5 22.2 37.9H624c8.8 0 16-7.2 16-16V143.9c0-8.8-7.2-15.9-16-15.9z\"]\n};\nvar faHandshakeAltSlash = {\n prefix: 'fas',\n iconName: 'handshake-alt-slash',\n icon: [640, 512, [], \"e05f\", \"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\"]\n};\nvar faHandshakeSlash = {\n prefix: 'fas',\n iconName: 'handshake-slash',\n icon: [640, 512, [], \"e060\", \"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\"]\n};\nvar faHanukiah = {\n prefix: 'fas',\n iconName: 'hanukiah',\n icon: [640, 512, [], \"f6e6\", \"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\"]\n};\nvar faHardHat = {\n prefix: 'fas',\n iconName: 'hard-hat',\n icon: [512, 512, [], \"f807\", \"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\"]\n};\nvar faHashtag = {\n prefix: 'fas',\n iconName: 'hashtag',\n icon: [448, 512, [], \"f292\", \"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\"]\n};\nvar faHatChef = {\n prefix: 'fas',\n iconName: 'hat-chef',\n icon: [512, 512, [], \"f86b\", \"M416 32a95.17 95.17 0 0 0-57.73 19.74C334.93 20.5 298 0 256 0s-78.93 20.5-102.27 51.74A95.56 95.56 0 0 0 0 128c0 41.74 64 192 64 192h60.09L112 169.25a8 8 0 0 1 7.33-8.61l16-1.28a8 8 0 0 1 8.61 7.34L156.2 320h83.14V168a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v152h84.46l12.27-153.3a8 8 0 0 1 8.61-7.34l16 1.28a8 8 0 0 1 7.33 8.61L387.91 320H448s64-150.26 64-192a96 96 0 0 0-96-96zM64 480a32 32 0 0 0 32 32h320a32 32 0 0 0 32-32V352H64z\"]\n};\nvar faHatCowboy = {\n prefix: 'fas',\n iconName: 'hat-cowboy',\n icon: [640, 512, [], \"f8c0\", \"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\"]\n};\nvar faHatCowboySide = {\n prefix: 'fas',\n iconName: 'hat-cowboy-side',\n icon: [640, 512, [], \"f8c1\", \"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\"]\n};\nvar faHatSanta = {\n prefix: 'fas',\n iconName: 'hat-santa',\n icon: [640, 512, [], \"f7a7\", \"M480 384H32c-17.7 0-32 14.3-32 32v32c0 17.7 14.3 32 32 32h448c17.7 0 32-14.3 32-32v-32c0-17.7-14.3-32-32-32zm-96-192l71.7 19.5c2.3-4.1 4.9-8 8.2-11.4.4-14.5 6.2-28.6 17-39.4 2.2-2.2 4.7-4.1 7.2-5.9L435 92.1C402.6 54 355.2 32 305.2 32c-68.6 0-130.4 41.2-156.8 104.5L58.7 352h393.9L384 192zm256 48c0-12.1-8.2-21.9-19.2-25.2 5.5-10.1 4.4-22.8-4.2-31.4s-21.3-9.7-31.4-4.2c-3.3-11-13.1-19.2-25.2-19.2s-21.9 8.2-25.2 19.2c-10.1-5.5-22.8-4.4-31.4 4.2s-9.7 21.3-4.2 31.4c-11 3.3-19.2 13.1-19.2 25.2s8.2 21.9 19.2 25.2c-5.5 10.1-4.4 22.8 4.2 31.4 5.2 5.2 12 7.8 18.9 7.8 4.4 0 8.6-1.5 12.5-3.6 3.3 11 13.1 19.2 25.2 19.2s21.9-8.2 25.2-19.2c4 2.1 8.2 3.6 12.5 3.6 6.8 0 13.6-2.6 18.9-7.8 8.6-8.6 9.7-21.3 4.2-31.4 11-3.3 19.2-13.1 19.2-25.2z\"]\n};\nvar faHatWinter = {\n prefix: 'fas',\n iconName: 'hat-winter',\n icon: [512, 512, [], \"f7a8\", \"M195.2 105.2c-5.5 10.1-4.4 22.8 4.2 31.4 5.2 5.2 12 7.8 18.9 7.8 4.4 0 8.6-1.5 12.5-3.6 3.3 11 13.1 19.2 25.2 19.2s21.9-8.2 25.2-19.2c4 2.1 8.2 3.6 12.5 3.6 6.8 0 13.6-2.6 18.9-7.8 8.6-8.6 9.7-21.3 4.2-31.4 11-3.3 19.2-13.1 19.2-25.2s-8.2-21.9-19.2-25.2c5.5-10.1 4.4-22.8-4.2-31.4s-21.3-9.7-31.4-4.2C277.9 8.2 268.1 0 256 0s-21.9 8.2-25.2 19.2c-10.1-5.5-22.8-4.4-31.4 4.2s-9.7 21.3-4.2 31.4C184.2 58.1 176 67.9 176 80s8.2 21.9 19.2 25.2zM128 270.1l64 32 64-32 64 32 64-32 64 32 7.2-3.6c-19.7-50.2-55.2-104.9-119-140.5-.4.4-.6.8-1 1.2-10.6 10.6-24.6 16.7-39.6 17.2-10.5 9.9-24.5 15.7-39.6 15.7-15.2 0-29.2-5.8-39.6-15.7-14.9-.5-28.9-6.5-39.6-17.2-.4-.4-.6-.8-1-1.2-63.9 35.6-99.4 90.4-119 140.5l7.2 3.6 64-32zM496 448H16c-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-16zm-30.3-118.9l-17.7 8.8-64-32-64 32-64-32-64 32-64-32-64 32-17.7-8.8C32.2 377.8 32 416 32 416h448s-.2-38.2-14.3-86.9z\"]\n};\nvar faHatWitch = {\n prefix: 'fas',\n iconName: 'hat-witch',\n icon: [576, 512, [], \"f6e7\", \"M571.21 426.81l-22.66-22.66c-6.03-6.03-15.49-5.96-21.99-.43C492.89 432.38 450.6 448 405.89 448H170.11c-44.71 0-87.01-15.62-120.68-44.28-6.5-5.53-15.95-5.61-21.99.43L4.79 426.81c-6.44 6.44-6.45 17.25.4 23.25C50.85 490.12 108.8 512 170.11 512h235.78c61.31 0 119.26-21.88 164.93-61.94 6.84-6 6.84-16.81.39-23.25zM224 416v-64c0-17.67 14.33-32 32-32h64c17.67 0 32 14.33 32 32v64h53.89c23.94 0 46.54-5.79 67.29-15.91l-79.6-185.73a64.009 64.009 0 0 1-1.89-45.45l6.35-19.04A32.01 32.01 0 0 1 428.4 128h39.2c13.77 0 26 8.81 30.36 21.88L512 192l30.36-77.24c3.83-11.5.84-24.18-7.73-32.75L465.28 9.37c-10.21-10.2-25.97-12.32-38.5-5.16L260.43 107.18a128.004 128.004 0 0 0-53.47 59.15L103.03 400.19c20.69 10.06 43.23 15.81 67.08 15.81H224zm32 0h64v-64h-64v64z\"]\n};\nvar faHatWizard = {\n prefix: 'fas',\n iconName: 'hat-wizard',\n icon: [512, 512, [], \"f6e8\", \"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\"]\n};\nvar faHdd = {\n prefix: 'fas',\n iconName: 'hdd',\n icon: [576, 512, [], \"f0a0\", \"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\"]\n};\nvar faHeadSide = {\n prefix: 'fas',\n iconName: 'head-side',\n icon: [512, 512, [], \"f6e9\", \"M509.21 275c-20.94-47.12-48.44-151.73-73.08-186.75C397.68 33.6 334.56 0 266.09 0H192C85.96 0 0 85.96 0 192c0 56.79 24.8 107.67 64 142.82V512h256v-64h64c35.35 0 64-28.65 64-64v-64h31.96c23.16 0 38.65-23.84 29.25-45zM320 224c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"]\n};\nvar faHeadSideBrain = {\n prefix: 'fas',\n iconName: 'head-side-brain',\n icon: [512, 512, [], \"f808\", \"M160 178.94V176c0 1-.23 1.89-.29 2.85a2.46 2.46 0 0 1 .29.09zM509.21 275c-20.94-47.12-48.44-151.73-73.08-186.75A207.94 207.94 0 0 0 266.09 0H192C86 0 0 86 0 192a191.28 191.28 0 0 0 64 142.82V512h256v-64h64a64 64 0 0 0 64-64v-64h32a32 32 0 0 0 29.21-45zM336 208h-50.94a47.5 47.5 0 0 1 2.94 16 48 48 0 0 1-48 48 47.5 47.5 0 0 1-16-2.94V320h-64v-50.94a47.5 47.5 0 0 1-16 2.94 48 48 0 0 1-48-48c0-1 .23-1.89.29-2.85A47.88 47.88 0 0 1 112 128a48 48 0 0 1 48-48 47.46 47.46 0 0 1 23.53 6.4 47.76 47.76 0 0 1 80.94 0 47.37 47.37 0 0 1 68.59 25.6H336a48 48 0 0 1 0 96z\"]\n};\nvar faHeadSideCough = {\n prefix: 'fas',\n iconName: 'head-side-cough',\n icon: [640, 512, [], \"e061\", \"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\"]\n};\nvar faHeadSideCoughSlash = {\n prefix: 'fas',\n iconName: 'head-side-cough-slash',\n icon: [640, 512, [], \"e062\", \"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\"]\n};\nvar faHeadSideHeadphones = {\n prefix: 'fas',\n iconName: 'head-side-headphones',\n icon: [512, 512, [], \"f8c2\", \"M509.21 273c-20.94-47.12-48.44-151.73-73.1-186.75A207.87 207.87 0 0 0 266.09-2H256v107.19c37.74 18 64 56.21 64 100.81a112 112 0 1 1-224 0c0-44.6 26.26-82.79 64-100.81V.88C69.23 16.14 0 94.88 0 190a191.27 191.27 0 0 0 64 142.81V510h256v-64h64a64 64 0 0 0 64-64v-64h32a32 32 0 0 0 29.21-45zM128 206a80 80 0 1 0 80-80 80 80 0 0 0-80 80zm80-32a32 32 0 1 1-32 32 32 32 0 0 1 32-32z\"]\n};\nvar faHeadSideMask = {\n prefix: 'fas',\n iconName: 'head-side-mask',\n icon: [512, 512, [], \"e063\", \"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\"]\n};\nvar faHeadSideMedical = {\n prefix: 'fas',\n iconName: 'head-side-medical',\n icon: [512, 512, [], \"f809\", \"M509.21 275c-20.94-47.12-48.44-151.73-73.08-186.75A207.94 207.94 0 0 0 266.09 0H192C86 0 0 86 0 192a191.28 191.28 0 0 0 64 142.82V512h256v-64h64a64 64 0 0 0 64-64v-64h32a32 32 0 0 0 29.21-45zM320 216a8 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\"]\n};\nvar faHeadSideVirus = {\n prefix: 'fas',\n iconName: 'head-side-virus',\n icon: [512, 512, [], \"e064\", \"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\"]\n};\nvar faHeadVr = {\n prefix: 'fas',\n iconName: 'head-vr',\n icon: [512, 512, [], \"f6ea\", \"M304 64h112v160H308.56c-41.85 0-79.98-30.11-84.15-71.75C219.62 104.36 257.1 64 304 64zm208 144V80c0-8.84-7.16-16-16-16h-48v160h48c8.84 0 16-7.16 16-16zm-319.43-52.56c-3.16-31.6 7.18-63.15 28.37-86.57C242.14 45.44 272.41 32 304 32h72.3C343.87 11.68 305.97 0 266.09 0H224C140.44 0 69.54 53.48 43.16 128H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h187.49c-5.67-11.31-9.61-23.56-10.92-36.56zM501.51 256H308.56c-31.13 0-59.73-12.33-80.92-32H34.95c7.4 43.72 29.4 82.44 61.05 110.82V512h224v-64h64c35.35 0 64-28.65 64-64v-64h31.96c23.16 0 38.65-23.84 29.24-45-2.47-5.56-5.05-12.04-7.69-19z\"]\n};\nvar faHeading = {\n prefix: 'fas',\n iconName: 'heading',\n icon: [512, 512, [], \"f1dc\", \"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\"]\n};\nvar faHeadphones = {\n prefix: 'fas',\n iconName: 'headphones',\n icon: [512, 512, [], \"f025\", \"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\"]\n};\nvar faHeadphonesAlt = {\n prefix: 'fas',\n iconName: 'headphones-alt',\n icon: [512, 512, [], \"f58f\", \"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\"]\n};\nvar faHeadset = {\n prefix: 'fas',\n iconName: 'headset',\n icon: [512, 512, [], \"f590\", \"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\"]\n};\nvar faHeart = {\n prefix: 'fas',\n iconName: 'heart',\n icon: [512, 512, [], \"f004\", \"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\"]\n};\nvar faHeartBroken = {\n prefix: 'fas',\n iconName: 'heart-broken',\n icon: [512, 512, [], \"f7a9\", \"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\"]\n};\nvar faHeartCircle = {\n prefix: 'fas',\n iconName: 'heart-circle',\n icon: [496, 512, [], \"f4c7\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm123.5 272.3L260.9 394.5c-7.1 7.4-18.7 7.4-25.9 0L124.5 280.3c-32.1-33.2-30.2-88.2 5.7-118.8 31.3-26.7 77.9-21.9 106.6 7.7l11.3 11.6 11.3-11.6c28.7-29.6 75.3-34.4 106.6-7.7 35.8 30.6 37.7 85.6 5.5 118.8z\"]\n};\nvar faHeartRate = {\n prefix: 'fas',\n iconName: 'heart-rate',\n icon: [640, 512, [], \"f5f8\", \"M624 224H480c-12.12 0-23.21 6.85-28.63 17.69l-26.54 53.09-73.95-271.2C346.99 9.35 333.82-.51 319.13.02 304.36.43 291.8 10.86 288.7 25.3l-69.14 322.68-28.79-100.78C186.84 233.47 174.29 224 160 224H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h119.86l57.38 200.79c3.94 13.77 16.52 23.2 30.75 23.2.36 0 .73 0 1.09-.02 14.67-.5 27.14-10.92 30.22-25.28l68.44-319.4 61.39 225.12a32.012 32.012 0 0 0 27.72 23.42c13.16 1.2 25.84-5.69 31.78-17.53L499.78 288H624c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z\"]\n};\nvar faHeartSquare = {\n prefix: 'fas',\n iconName: 'heart-square',\n icon: [448, 512, [], \"f4c8\", \"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-52.5 248.3L236.9 394.5c-7.1 7.4-18.7 7.4-25.9 0L100.5 280.3c-32.1-33.2-30.2-88.2 5.7-118.8 31.3-26.7 77.9-21.9 106.6 7.7l11.3 11.6 11.3-11.6c28.7-29.6 75.3-34.4 106.6-7.7 35.8 30.6 37.7 85.6 5.5 118.8z\"]\n};\nvar faHeartbeat = {\n prefix: 'fas',\n iconName: 'heartbeat',\n icon: [512, 512, [], \"f21e\", \"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\"]\n};\nvar faHeat = {\n prefix: 'fas',\n iconName: 'heat',\n icon: [448, 512, [], \"e00c\", \"M64,152.25V112A16,16,0,0,0,48,96H16A16,16,0,0,0,0,112v40.25A218.65,218.65,0,0,0,56.48,299,154.12,154.12,0,0,1,96,402.41V464a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V402.41a218.44,218.44,0,0,0-56.42-146.69A154.3,154.3,0,0,1,64,152.25ZM391.58,255.72A154.3,154.3,0,0,1,352,152.25V112a16,16,0,0,0-16-16H304a16,16,0,0,0-16,16v40.25A218.65,218.65,0,0,0,344.48,299,154.12,154.12,0,0,1,384,402.41V464a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V402.41A218.44,218.44,0,0,0,391.58,255.72ZM208,152.25V48a16,16,0,0,0-16-16H160a16,16,0,0,0-16,16V152.25A218.65,218.65,0,0,0,200.48,299,154.12,154.12,0,0,1,240,402.41V464a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V402.41a218.44,218.44,0,0,0-56.42-146.69A154.3,154.3,0,0,1,208,152.25Z\"]\n};\nvar faHelicopter = {\n prefix: 'fas',\n iconName: 'helicopter',\n icon: [640, 512, [], \"f533\", \"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\"]\n};\nvar faHelmetBattle = {\n prefix: 'fas',\n iconName: 'helmet-battle',\n icon: [576, 512, [], \"f6eb\", \"M32.01 256C49.68 256 64 243.44 64 227.94V0L.97 221.13C-4.08 238.84 11.2 256 32.01 256zm543.02-34.87L512 0v227.94c0 15.5 14.32 28.06 31.99 28.06 20.81 0 36.09-17.16 31.04-34.87zM480 210.82C480 90.35 288 0 288 0S96 90.35 96 210.82c0 82.76-22.86 145.9-31.13 180.71-3.43 14.43 3.59 29.37 16.32 35.24L256 512V256l-96-32v-32h256v32l-96 32v256l174.82-85.23c12.73-5.87 19.75-20.81 16.32-35.24-8.28-34.81-31.14-97.95-31.14-180.71z\"]\n};\nvar faHexagon = {\n prefix: 'fas',\n iconName: 'hexagon',\n icon: [576, 512, [], \"f312\", \"M441.5 39.8C432.9 25.1 417.1 16 400 16H176c-17.1 0-32.9 9.1-41.5 23.8l-112 192c-8.7 14.9-8.7 33.4 0 48.4l112 192c8.6 14.7 24.4 23.8 41.5 23.8h224c17.1 0 32.9-9.1 41.5-23.8l112-192c8.7-14.9 8.7-33.4 0-48.4l-112-192z\"]\n};\nvar faHighlighter = {\n prefix: 'fas',\n iconName: 'highlighter',\n icon: [544, 512, [], \"f591\", \"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\"]\n};\nvar faHiking = {\n prefix: 'fas',\n iconName: 'hiking',\n icon: [384, 512, [], \"f6ec\", \"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\"]\n};\nvar faHippo = {\n prefix: 'fas',\n iconName: 'hippo',\n icon: [640, 512, [], \"f6ed\", \"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\"]\n};\nvar faHistory = {\n prefix: 'fas',\n iconName: 'history',\n icon: [512, 512, [], \"f1da\", \"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\"]\n};\nvar faHockeyMask = {\n prefix: 'fas',\n iconName: 'hockey-mask',\n icon: [448, 512, [], \"f6ee\", \"M376.61 54.46c-82.95-72.61-222.26-72.61-305.22 0C7.36 110.5-31.01 224.44 32.63 416 64.53 512 224 512 224 512s159.47 0 191.37-96c63.64-191.56 25.27-305.5-38.76-361.54zM288 64c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16zm-128 0c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16zm16 400c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm0-64c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm0-64c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm-48-64c-35.35 0-64-28.65-64-64 0-17.67 14.33-32 32-32h64c17.67 0 32 14.33 32 32 0 35.35-28.65 64-64 64zm96-128c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm48 320c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm0-64c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm0-64c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm48-64c-35.35 0-64-28.65-64-64 0-17.67 14.33-32 32-32h64c17.67 0 32 14.33 32 32 0 35.35-28.65 64-64 64z\"]\n};\nvar faHockeyPuck = {\n prefix: 'fas',\n iconName: 'hockey-puck',\n icon: [512, 512, [], \"f453\", \"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\"]\n};\nvar faHockeySticks = {\n prefix: 'fas',\n iconName: 'hockey-sticks',\n icon: [640, 512, [], \"f454\", \"M0 368v128c0 8.8 7.2 16 16 16h48V352H16c-8.8 0-16 7.2-16 16zM484.6 30.3L427.4 1.7c-7.9-4-17.5-.7-21.5 7.2L238.8 343.2c-2.7 5.4-8.2 8.8-14.3 8.8H96v160h126.1c24.2 0 46.4-13.7 57.2-35.4L491.8 51.8c3.9-7.9.7-17.5-7.2-21.5zm-245.1 204L293.2 127 234.1 8.8c-4-7.9-13.6-11.1-21.5-7.2l-57.3 28.6c-7.9 4-11.1 13.6-7.2 21.5l91.4 182.6zM624 352h-48v160h48c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16zm-223.5-10.3L346.8 449c12.6 25.2 25.4 63 71.1 63H544V352H415.6c-4.6 0-10.8-1.7-15.1-10.3z\"]\n};\nvar faHollyBerry = {\n prefix: 'fas',\n iconName: 'holly-berry',\n icon: [448, 512, [], \"f7aa\", \"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\"]\n};\nvar faHome = {\n prefix: 'fas',\n iconName: 'home',\n icon: [576, 512, [], \"f015\", \"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\"]\n};\nvar faHomeAlt = {\n prefix: 'fas',\n iconName: 'home-alt',\n icon: [576, 512, [], \"f80a\", \"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.47L318.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\"]\n};\nvar faHomeHeart = {\n prefix: 'fas',\n iconName: 'home-heart',\n icon: [576, 512, [], \"f4c9\", \"M64 311.4V496c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16V311.4c-6.7-5.5-44.7-38.3-224-196.4C107.9 273.9 70.4 306.1 64 311.4zm314.1-26.3c27.6 23 29.1 64.2 4.5 89.1l-84.7 85.6c-5.5 5.5-14.3 5.5-19.8 0l-84.7-85.6c-24.6-24.9-23.2-66.1 4.3-89.1 24-20 59.7-16.4 81.6 5.8l8.6 8.7 8.6-8.7c22-22.2 57.7-25.8 81.6-5.8zM64 311.4v-.3s-2.7 2.5 0 .3zm506.7-75.1L512 184.5V48c0-8.8-7.2-16-16-16h-64c-8.8 0-16 7.2-16 16v51.7L314.7 10.3c-15.3-13.7-38.2-13.7-53.5 0l-256 226c-6.6 5.9-7.1 16-1.2 22.6l21.4 23.8c5.9 6.6 16 7.1 22.6 1.2L277.4 81.7c6-5.3 15.1-5.3 21.2 0L527.9 284c6.6 5.9 16.7 5.4 22.6-1.2l21.4-23.8c5.9-6.7 5.4-16.8-1.2-22.7zM512 311.1v.3c2.9 2.3 0-.3 0-.3z\"]\n};\nvar faHomeLg = {\n prefix: 'fas',\n iconName: 'home-lg',\n icon: [576, 512, [], \"f80b\", \"M570.69 236.28L512 184.45V48a16 16 0 0 0-16-16h-64a16 16 0 0 0-16 16v51.69L314.75 10.31a39.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.59zM288 115L69.47 307.71c-1.62 1.46-3.69 2.14-5.47 3.35V496a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16V368a16 16 0 0 1 16-16h96a16 16 0 0 1 16 16v128a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16V311.1c-1.7-1.16-3.72-1.82-5.26-3.2z\"]\n};\nvar faHomeLgAlt = {\n prefix: 'fas',\n iconName: 'home-lg-alt',\n icon: [576, 512, [], \"f80c\", \"M288 115L69.47 307.71c-1.62 1.46-3.69 2.14-5.47 3.35V496a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16V368a16 16 0 0 1 16-16h96a16 16 0 0 1 16 16v128a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16V311.1c-1.7-1.16-3.72-1.82-5.26-3.2zm282.69 121.28l-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\"]\n};\nvar faHoodCloak = {\n prefix: 'fas',\n iconName: 'hood-cloak',\n icon: [576, 512, [], \"f6ef\", \"M288.27 192c-70.69 0-128 57.31-128 128v192h256V320c0-70.69-57.3-128-128-128zm281.37 268.84C511.97 383.87 511.97 320 511.97 320h.06v-64c0-84.03-46.37-123.05-101.18-182.7l39.75-39.75C462.99 21.17 454.22 0 436.71 0H287.6C192 0 64.03 109.45 64.03 256v64s0 63.87-57.67 140.84C1.89 466.8-.07 473.48 0 480c.19 16.52 13.46 32 32.33 32h95.94V320c0-88.22 71.78-160 160-160s160 71.78 160 160v192h95.4c18.87 0 32.14-15.48 32.33-32 .07-6.52-1.89-13.2-6.36-19.16z\"]\n};\nvar faHorizontalRule = {\n prefix: 'fas',\n iconName: 'horizontal-rule',\n icon: [640, 512, [], \"f86c\", \"M640 239.87v31.26A15.88 15.88 0 0 1 624.14 287H15.87A15.88 15.88 0 0 1 0 271.13v-31.26A15.88 15.88 0 0 1 15.87 224h608.27A15.88 15.88 0 0 1 640 239.87z\"]\n};\nvar faHorse = {\n prefix: 'fas',\n iconName: 'horse',\n icon: [576, 512, [], \"f6f0\", \"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\"]\n};\nvar faHorseHead = {\n prefix: 'fas',\n iconName: 'horse-head',\n icon: [512, 512, [], \"f7ab\", \"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\"]\n};\nvar faHorseSaddle = {\n prefix: 'fas',\n iconName: 'horse-saddle',\n icon: [576, 512, [], \"f8c3\", \"M128 160v-25.83a96.74 96.74 0 0 0-40 26.94V160a88.09 88.09 0 0 0-88 88v56a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16v-56c0-13.22 6.87-24.39 16.78-31.69-.22 2.6-.78 5.07-.78 7.69a95.47 95.47 0 0 0 30.53 69.88l-25.72 68.6a64.13 64.13 0 0 0-2.15 38l24.84 99.4c1.69 6.68 8.62 12.12 15.5 12.12h66a16 16 0 0 0 15.53-19.88l-26.34-105.26L186 323.27l22 3.66v-72.54A95.83 95.83 0 0 1 128 160zm160 0v-32H160v32a64 64 0 0 0 128 0zm287.9-83.41a31.69 31.69 0 0 0-8.56-21.79c-3.78-4-8.59-9.11-13.69-14.5 11.07-6.85 19.5-17.49 22.19-30.66A8.11 8.11 0 0 0 567.9 0h-120A127.94 127.94 0 0 0 320 127.05v33a95.83 95.83 0 0 1-80 94.39v77.87l80 13.33V496a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16V318.22A111.5 111.5 0 0 0 448 240a3.55 3.55 0 0 0-.1-.64V136.89l16 7.11 18.91 37.7a32 32 0 0 0 40.5 15.36l32.56-13C567 179.61 576 166.3 576 154.34zM511.9 96a16 16 0 1 1 16-16 16 16 0 0 1-16 16z\"]\n};\nvar faHospital = {\n prefix: 'fas',\n iconName: 'hospital',\n icon: [448, 512, [], \"f0f8\", \"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\"]\n};\nvar faHospitalAlt = {\n prefix: 'fas',\n iconName: 'hospital-alt',\n icon: [576, 512, [], \"f47d\", \"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\"]\n};\nvar faHospitalSymbol = {\n prefix: 'fas',\n iconName: 'hospital-symbol',\n icon: [512, 512, [], \"f47e\", \"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\"]\n};\nvar faHospitalUser = {\n prefix: 'fas',\n iconName: 'hospital-user',\n icon: [640, 512, [], \"f80d\", \"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\"]\n};\nvar faHospitals = {\n prefix: 'fas',\n iconName: 'hospitals',\n icon: [640, 512, [], \"f80e\", \"M256 96V32a32 32 0 0 0-32-32H64a32 32 0 0 0-32 32v64a32 32 0 0 0-32 32v352a32 32 0 0 0 32 32h224a32 32 0 0 0 32-32V128a32 32 0 0 0-32-32zM128 404a12 12 0 0 1-12 12H76a12 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 12H76a12 12 0 0 1-12-12v-40a12 12 0 0 1 12-12h40a12 12 0 0 1 12 12zm26-116h-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-26v26a6 6 0 0 1-6 6zm70 244a12 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 12zM608 96V32a32 32 0 0 0-32-32H416a32 32 0 0 0-32 32v64a32 32 0 0 0-32 32v352a32 32 0 0 0 32 32h224a32 32 0 0 0 32-32V128a32 32 0 0 0-32-32zM480 404a12 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 12zm26-116h-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-26v26a6 6 0 0 1-6 6zm70 244a12 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\"]\n};\nvar faHotTub = {\n prefix: 'fas',\n iconName: 'hot-tub',\n icon: [512, 512, [], \"f593\", \"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\"]\n};\nvar faHotdog = {\n prefix: 'fas',\n iconName: 'hotdog',\n icon: [512, 512, [], \"f80f\", \"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\"]\n};\nvar faHotel = {\n prefix: 'fas',\n iconName: 'hotel',\n icon: [576, 512, [], \"f594\", \"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\"]\n};\nvar faHourglass = {\n prefix: 'fas',\n iconName: 'hourglass',\n icon: [384, 512, [], \"f254\", \"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\"]\n};\nvar faHourglassEnd = {\n prefix: 'fas',\n iconName: 'hourglass-end',\n icon: [384, 512, [], \"f253\", \"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\"]\n};\nvar faHourglassHalf = {\n prefix: 'fas',\n iconName: 'hourglass-half',\n icon: [384, 512, [], \"f252\", \"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\"]\n};\nvar faHourglassStart = {\n prefix: 'fas',\n iconName: 'hourglass-start',\n icon: [384, 512, [], \"f251\", \"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\"]\n};\nvar faHouse = {\n prefix: 'fas',\n iconName: 'house',\n icon: [576, 512, [], \"e00d\", \"M570.69,236.27,512,184.44V48a16,16,0,0,0-16-16H432a16,16,0,0,0-16,16V99.67L314.76,10.3C308.48,4.61,296.51,0,288,0s-20.45,4.61-26.73,10.3l-256,226a16,16,0,0,0-1.2,22.6l21.4,23.8A18.31,18.31,0,0,0,37.42,288a18.51,18.51,0,0,0,10.69-4.11l15.9-14V480a32,32,0,0,0,32,32H480a32,32,0,0,0,32-32V269.87l15.91,14A18.62,18.62,0,0,0,538.63,288a18.12,18.12,0,0,0,11.87-5.31l21.41-23.81A18.61,18.61,0,0,0,576,248.18,18.21,18.21,0,0,0,570.69,236.27ZM352,298.66A21.39,21.39,0,0,1,330.64,320h-85.3A21.39,21.39,0,0,1,224,298.66V213.32A21.39,21.39,0,0,1,245.34,192h85.3A21.39,21.39,0,0,1,352,213.32Z\"]\n};\nvar faHouseDamage = {\n prefix: 'fas',\n iconName: 'house-damage',\n icon: [576, 512, [], \"f6f1\", \"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\"]\n};\nvar faHouseDay = {\n prefix: 'fas',\n iconName: 'house-day',\n icon: [640, 512, [], \"e00e\", \"M136,176a40,40,0,1,0,40-40A40.07,40.07,0,0,0,136,176ZM635.23,292.42,576,240V144a16,16,0,0,0-16-16H528a16,16,0,0,0-16,16v39.29l-88.48-78.37a35.32,35.32,0,0,0-46.92,0L164.8,292.42a14.18,14.18,0,0,0-1.23,20l18.79,21.28a14.21,14.21,0,0,0,20,1.25L224,315.87V480a32,32,0,0,0,32,32H544a32,32,0,0,0,32-32V315.84L597.62,335a14.28,14.28,0,0,0,20-1.25l18.79-21.28A14.25,14.25,0,0,0,635.23,292.42ZM448,368a16,16,0,0,1-16,16H368a16,16,0,0,1-16-16V304a16,16,0,0,1,16-16h64a16,16,0,0,1,16,16ZM104,176a72,72,0,0,1,144,0v0l42.83-37.93-10.54-5.26,23-69a11.88,11.88,0,0,0-15.06-15l-69,23L186.66,6.6a11.9,11.9,0,0,0-21.31,0L132.83,71.7l-69.09-23a11.88,11.88,0,0,0-15.06,15l23,69L6.6,165.34a11.91,11.91,0,0,0,0,21.32l65.11,32.51-23,69.1a11.89,11.89,0,0,0,15.06,15.06l69-23,.74,1.49a46.66,46.66,0,0,1,10.08-13.32l24.07-21.31C131.92,243,104,212.84,104,176Z\"]\n};\nvar faHouseFlood = {\n prefix: 'fas',\n iconName: 'house-flood',\n icon: [576, 512, [], \"f74f\", \"M21.4 244c-5.9-6.6-5.2-16.7 1.4-22.6L261.6 10c15.1-13.4 37.8-13.4 52.9 0L416 99.9V48c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v108.6l73.2 64.8c6.6 5.9 7.2 16 1.4 22.6l-21.2 24c-5.9 6.6-16 7.2-22.6 1.4L288 72.1 65.2 269.4c-6.6 5.9-16.7 5.2-22.6-1.4l-21.2-24zm540.7 203.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.3zM288 114.8l192 170v99.8h-.1c-16 0-31.6 5.5-43.9 15.4-12.2 9.8-31.5 15.6-51.7 15.6-21.2 0-40.7-6.1-53.5-16.7-11.7-9.7-26.1-14.8-41.6-14.8-16.2 0-32.3 5.7-45.5 16.1-12.4 9.8-31.1 15.4-51.5 15.4-21.2 0-40.7-6.1-53.5-16.7-11.6-9.6-26-14.7-41.4-14.7-.5 0-.9.1-1.4.1v-99.4L288 114.8zM320 224h-64c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-64c0-8.8-7.2-16-16-16z\"]\n};\nvar faHouseLeave = {\n prefix: 'fas',\n iconName: 'house-leave',\n icon: [640, 512, [], \"e00f\", \"M356.87,384.5a30.05,30.05,0,0,0,6.95-10.64l20.71-51.5,11.76-29.25c-.48-3-.81-6-1-9a63.54,63.54,0,0,1-58,.39c-31.26-15.74-44.05-54.16-28.52-85.64l6.73-13.65a127.24,127.24,0,0,1,66.4-61.67l7.52-3.07L263.52,8.92a35.32,35.32,0,0,0-46.92,0L4.8,196.42a14.18,14.18,0,0,0-1.23,20l18.79,21.28a14.2,14.2,0,0,0,20,1.25L64,219.87V384a32,32,0,0,0,32,32H325.44ZM224,272a16,16,0,0,1-16,16H144a16,16,0,0,1-16-16V208a16,16,0,0,1,16-16h64a16,16,0,0,1,16,16ZM528,96a48,48,0,1,0-48-48A48,48,0,0,0,528,96ZM393.55,385.74a61.78,61.78,0,0,1-14.18,21.49l-50,50.11a32,32,0,0,0,45.18,45.29l59.4-59.4a64.8,64.8,0,0,0,14.2-21.5l13.5-33.79c-55.29-60.29-38.7-41.79-47.4-53.69ZM622.42,245.06l-23.29-11.8-9.7-29.38c-14.7-44.61-55.7-75.81-102.19-75.9-36-.09-55.88,10.09-93.28,25.2a95.46,95.46,0,0,0-49.7,46.2L337.56,213a32.11,32.11,0,0,0,14.2,42.9,31.55,31.55,0,0,0,42.49-14.31L401,228a31.82,31.82,0,0,1,16.49-15.41l26.8-10.79-15.2,60.69A64.23,64.23,0,0,0,444,321.25l59.9,65.4a64.42,64.42,0,0,1,14.89,27.69L537,487.63a32,32,0,0,0,62.1-15.5l-22.2-89a63.81,63.81,0,0,0-14.9-27.7l-45.5-49.7,17.2-68.69,5.5,16.5a63.73,63.73,0,0,0,31.7,37l23.29,11.81a31.57,31.57,0,0,0,42.5-14.31A32.37,32.37,0,0,0,622.42,245.06Z\"]\n};\nvar faHouseNight = {\n prefix: 'fas',\n iconName: 'house-night',\n icon: [640, 512, [], \"e010\", \"M112,224a111.77,111.77,0,0,0,87-41.47,5.25,5.25,0,0,0-5.05-8.47A87.74,87.74,0,0,1,134.11,11.6a5.26,5.26,0,0,0-1.65-9.73A136.16,136.16,0,0,0,112,0a112,112,0,0,0,0,224Zm523.23,68.42L576,240V144a16,16,0,0,0-16-16H528a16,16,0,0,0-16,16v39.29l-88.48-78.37a35.32,35.32,0,0,0-46.92,0L164.8,292.42a14.19,14.19,0,0,0-1.23,20l18.79,21.28a14.2,14.2,0,0,0,20,1.25L224,315.87V480a32,32,0,0,0,32,32H544a32,32,0,0,0,32-32V315.84L597.62,335a14.28,14.28,0,0,0,20-1.25l18.79-21.28A14.25,14.25,0,0,0,635.23,292.42ZM448,368a16,16,0,0,1-16,16H368a16,16,0,0,1-16-16V304a16,16,0,0,1,16-16h64a16,16,0,0,1,16,16ZM195,68.78l39.72,16.56,16.56,39.72a5.32,5.32,0,0,0,9.54,0l16.56-39.72,39.72-16.56a5.33,5.33,0,0,0,0-9.54L277.33,42.68,260.77,3a5.32,5.32,0,0,0-9.54,0L234.67,42.68,195,59.24a5.33,5.33,0,0,0,0,9.54Zm-37.9,310.46-39.72-16.56L100.77,323a5.32,5.32,0,0,0-9.54,0L74.67,362.68,35,379.24a5.33,5.33,0,0,0,0,9.54l39.72,16.56,16.56,39.72a5.32,5.32,0,0,0,9.54,0l16.56-39.72,39.72-16.56a5.33,5.33,0,0,0,0-9.54Z\"]\n};\nvar faHouseReturn = {\n prefix: 'fas',\n iconName: 'house-return',\n icon: [640, 512, [], \"e011\", \"M374.8,333.36a63.48,63.48,0,0,1-80.3-31.17c-15.47-31.51-2.63-69.95,28.56-85.65l11.51-5.83,5.56-16.83a143.26,143.26,0,0,1,51.95-71.1L263.52,8.92a35.32,35.32,0,0,0-46.92,0L4.8,196.41a14.19,14.19,0,0,0-1.23,20l18.79,21.29a14.21,14.21,0,0,0,20,1.24L64,219.87V384a32,32,0,0,0,32,32H341.86L352,375.38a95.83,95.83,0,0,1,22.33-41.5ZM224,272a16,16,0,0,1-16,16H144a16,16,0,0,1-16-16V208a16,16,0,0,1,16-16h64a16,16,0,0,1,16,16Zm307-9.51-15.2-60.69,26.79,10.79A31.81,31.81,0,0,1,559,228l6.71,13.59a31.56,31.56,0,0,0,42.49,14.31,32.11,32.11,0,0,0,14.2-42.9l-6.7-13.59A95.44,95.44,0,0,0,566,153.21c-37.4-15.11-57.29-25.3-93.28-25.2-46.49.09-87.49,31.29-102.19,75.89l-9.7,29.38-23.29,11.8a32.37,32.37,0,0,0-14.3,43,31.58,31.58,0,0,0,42.5,14.31l23.29-11.81a63.75,63.75,0,0,0,31.7-37l5.5-16.49,17.2,68.69L398,355.46a63.83,63.83,0,0,0-14.9,27.69l-22.2,89a32,32,0,0,0,62.1,15.5l18.29-73.28a64.51,64.51,0,0,1,14.89-27.7l59.9-65.39A64.21,64.21,0,0,0,531,262.48ZM432,96a48,48,0,1,0-48-48A48,48,0,0,0,432,96ZM630.63,457.34l-50-50.1a61.78,61.78,0,0,1-14.18-21.49l-20.7-51.49c-8.7,11.9,7.89-6.59-47.4,53.69l13.5,33.79a64.75,64.75,0,0,0,14.2,21.49l59.4,59.4a32,32,0,0,0,45.18-45.29Z\"]\n};\nvar faHouseSignal = {\n prefix: 'fas',\n iconName: 'house-signal',\n icon: [640, 512, [], \"e012\", \"M635.23,196.42,576,144V48a16,16,0,0,0-16-16H528a16,16,0,0,0-16,16V87.29L423.52,8.92a35.32,35.32,0,0,0-46.92,0L164.8,196.42a14.19,14.19,0,0,0-1.23,20l18.79,21.28a14.2,14.2,0,0,0,20,1.25L224,219.87v64A320.42,320.42,0,0,1,305.24,416H544a32,32,0,0,0,32-32V219.84L597.62,239a14.28,14.28,0,0,0,20-1.25l18.79-21.28A14.25,14.25,0,0,0,635.23,196.42ZM448,272a16,16,0,0,1-16,16H368a16,16,0,0,1-16-16V208a16,16,0,0,1,16-16h64a16,16,0,0,1,16,16ZM0,416v96H96A96,96,0,0,0,0,416Zm0-96v63.93A128.12,128.12,0,0,1,128.07,512H192C192,406,106,320,0,320Zm0-96H0v63.93c123.71,0,224.07,100.36,224.07,224.07H288C288,352.94,159.06,224,0,224Z\"]\n};\nvar faHouseUser = {\n prefix: 'fas',\n iconName: 'house-user',\n icon: [576, 512, [], \"e065\", \"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\"]\n};\nvar faHryvnia = {\n prefix: 'fas',\n iconName: 'hryvnia',\n icon: [384, 512, [], \"f6f2\", \"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\"]\n};\nvar faHumidity = {\n prefix: 'fas',\n iconName: 'humidity',\n icon: [384, 512, [], \"f750\", \"M223.9 22.1c-8.7-28.8-53.9-30.1-63.8 0C109.1 179.8 0 222.7 0 333.9 0 432.3 85.9 512 192 512s192-79.7 192-178.1c0-111.7-108.9-153.3-160.1-311.8zM96 288c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm49.5 131.8c-2.8 3.5-7.8 4-11.2 1.2l-12.5-10c-3.4-2.8-4-7.8-1.2-11.2l118-147.5c2.8-3.4 7.8-4 11.2-1.2l12.5 10c3.5 2.8 4 7.8 1.2 11.2l-118 147.5zM256 416c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"]\n};\nvar faHurricane = {\n prefix: 'fas',\n iconName: 'hurricane',\n icon: [384, 512, [], \"f751\", \"M176 96l24.5-74.8C204.2 10 194.9-1.3 183.1.1 80 12.4 0 101.6 0 208c0 114.9 93.1 208 208 208l-24.5 74.8c-3.7 11.2 5.6 22.5 17.4 21.1C304 499.6 384 410.4 384 304c0-114.9-93.1-208-208-208zm16 256c-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\"]\n};\nvar faICursor = {\n prefix: 'fas',\n iconName: 'i-cursor',\n icon: [256, 512, [], \"f246\", \"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\"]\n};\nvar faIceCream = {\n prefix: 'fas',\n iconName: 'ice-cream',\n icon: [448, 512, [], \"f810\", \"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\"]\n};\nvar faIceSkate = {\n prefix: 'fas',\n iconName: 'ice-skate',\n icon: [576, 512, [], \"f7ac\", \"M568 416h-32c-4.4 0-8 3.6-8 8v16c0 13.3-10.7 24-24 24h-72v-48h-48v48H144v-48H96v48H8c-4.4 0-8 3.6-8 8v32c0 4.4 3.6 8 8 8h504c35.3 0 64-28.7 64-64v-24c0-4.4-3.6-8-8-8zM64 384h416c17.7 0 32-14.3 32-32v-37c0-44.1-30-82.4-72.7-93.1L320 192h-56c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h56v-32h-56c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h56V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16L78.4 82.7c-27.5 7.9-46.4 33-46.4 61.5V352c0 17.7 14.3 32 32 32z\"]\n};\nvar faIcicles = {\n prefix: 'fas',\n iconName: 'icicles',\n icon: [512, 512, [], \"f7ad\", \"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\"]\n};\nvar faIcons = {\n prefix: 'fas',\n iconName: 'icons',\n icon: [512, 512, [], \"f86d\", \"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\"]\n};\nvar faIconsAlt = {\n prefix: 'fas',\n iconName: 'icons-alt',\n icon: [512, 512, [], \"f86e\", \"M16 160h64v48a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-48h64a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-96h192a16 16 0 0 0 16-16V16a16 16 0 0 0-16-16H16A16 16 0 0 0 0 16v32a16 16 0 0 0 16 16zM478.08.33L329.51 23.18C314.87 25.44 304 38.94 304 54.86V161.7a83.25 83.25 0 0 0-16-1.7c-35.35 0-64 21.49-64 48s28.65 48 64 48c35.2 0 63.73-21.33 64-47.69V99.73L464 82.5v47.2a83.25 83.25 0 0 0-16-1.7c-35.35 0-64 21.49-64 48s28.65 48 64 48c35.2 0 63.73-21.33 64-47.69V32c0-19.47-16-34.43-33.92-31.67zM328 368a40 40 0 1 0-40-40 40 40 0 0 0 40 40zm-108.41 15.94L197 361.31a16 16 0 0 0-22.63 0l-27.92 27.89-22.7-22.7a64 64 0 1 0-90.7-3.3l-6.92 6.92c-29.59 29.59-35.69 77.63-9.81 110.52A81.31 81.31 0 0 0 138 488.19l8.48-8.49 27.61 27.61a16 16 0 0 0 22.63 0l22.62-22.62a16 16 0 0 0 0-22.63l-27.64-27.61 27.89-27.89a16 16 0 0 0 0-22.62zM80 304a16 16 0 1 1-16 16 16 16 0 0 1 16-16zm12.72 138.94a17.29 17.29 0 1 1-24.45-24.46l8.48-8.48 24.45 24.45zm392-150.25a16 16 0 0 0-22.63 0l-169.4 169.37a16 16 0 0 0 0 22.63l22.62 22.62a16 16 0 0 0 22.63 0l169.37-169.37a16 16 0 0 0 0-22.63zM472 432a40 40 0 1 0 40 40 40 40 0 0 0-40-40z\"]\n};\nvar faIdBadge = {\n prefix: 'fas',\n iconName: 'id-badge',\n icon: [384, 512, [], \"f2c1\", \"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\"]\n};\nvar faIdCard = {\n prefix: 'fas',\n iconName: 'id-card',\n icon: [576, 512, [], \"f2c2\", \"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\"]\n};\nvar faIdCardAlt = {\n prefix: 'fas',\n iconName: 'id-card-alt',\n icon: [576, 512, [], \"f47f\", \"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\"]\n};\nvar faIgloo = {\n prefix: 'fas',\n iconName: 'igloo',\n icon: [576, 512, [], \"f7ae\", \"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\"]\n};\nvar faImage = {\n prefix: 'fas',\n iconName: 'image',\n icon: [512, 512, [], \"f03e\", \"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\"]\n};\nvar faImagePolaroid = {\n prefix: 'fas',\n iconName: 'image-polaroid',\n icon: [448, 512, [], \"f8c4\", \"M128 192a32 32 0 1 0-32-32 32 32 0 0 0 32 32zM416 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 320H64V96h320zM268.8 209.07a16 16 0 0 0-25.6 0l-49.32 65.75L173.31 244a16 16 0 0 0-26.62 0L96 320h256z\"]\n};\nvar faImages = {\n prefix: 'fas',\n iconName: 'images',\n icon: [576, 512, [], \"f302\", \"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\"]\n};\nvar faInbox = {\n prefix: 'fas',\n iconName: 'inbox',\n icon: [576, 512, [], \"f01c\", \"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\"]\n};\nvar faInboxIn = {\n prefix: 'fas',\n iconName: 'inbox-in',\n icon: [576, 512, [], \"f310\", \"M250.5 0h68.6c9.5 0 17.1 7.7 17.1 17.1V160h68.3c17.8 0 26.7 21.5 14.1 34.1l-119.4 120c-7.9 7.9-20.9 7.8-28.6-.3L157 193.8c-12.1-12.7-3.1-33.8 14.5-33.8h61.9V17.1c0-9.4 7.7-17.1 17.1-17.1zm315 338.9l-94.6-118.2c-4.5-5.6-13-6-18-.9l-28.1 28.9c-4.2 4.3-4.5 11.1-.8 15.9l44.3 55.4H376l-32 64H232l-32-64h-92.4l43.8-54.7c3.7-4.7 3.5-11.4-.6-15.7l-27.6-29.5c-5-5.3-13.6-5-18.1.7l-94.4 118c-7 8.6-10.7 19.1-10.7 30V464c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48v-95.2c0-10.9-3.7-21.4-10.5-29.9z\"]\n};\nvar faInboxOut = {\n prefix: 'fas',\n iconName: 'inbox-out',\n icon: [576, 512, [], \"f311\", \"M576 368.8V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48v-95.2c0-10.9 3.7-21.5 10.5-30l94.4-118c4.6-5.7 13.1-6 18.1-.7l27.6 29.5c4.1 4.4 4.3 11 .6 15.7L107.6 320H200l32 64h112l32-64h92.4l-44.3-55.4c-3.8-4.7-3.5-11.5.8-15.9l28.1-28.9c5-5.2 13.5-4.8 18 .9l94.6 118.2c6.7 8.5 10.4 19 10.4 29.9zm-233.4-65.9V160h61.9c17.6 0 26.6-21.1 14.5-33.8L305.3 6.2c-7.7-8.1-20.7-8.3-28.6-.3l-119.4 120c-12.6 12.6-3.7 34.1 14.1 34.1h68.3v142.9c0 9.5 7.7 17.1 17.1 17.1h68.6c9.5 0 17.2-7.7 17.2-17.1z\"]\n};\nvar faIndent = {\n prefix: 'fas',\n iconName: 'indent',\n icon: [448, 512, [], \"f03c\", \"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\"]\n};\nvar faIndustry = {\n prefix: 'fas',\n iconName: 'industry',\n icon: [512, 512, [], \"f275\", \"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\"]\n};\nvar faIndustryAlt = {\n prefix: 'fas',\n iconName: 'industry-alt',\n icon: [512, 512, [], \"f3b3\", \"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.248zM404 384h-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 12zm-128 0h-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 12zm-128 0h-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 12z\"]\n};\nvar faInfinity = {\n prefix: 'fas',\n iconName: 'infinity',\n icon: [640, 512, [], \"f534\", \"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\"]\n};\nvar faInfo = {\n prefix: 'fas',\n iconName: 'info',\n icon: [192, 512, [], \"f129\", \"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\"]\n};\nvar faInfoCircle = {\n prefix: 'fas',\n iconName: 'info-circle',\n icon: [512, 512, [], \"f05a\", \"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\"]\n};\nvar faInfoSquare = {\n prefix: 'fas',\n iconName: 'info-square',\n icon: [448, 512, [], \"f30f\", \"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-48zm-176 86c23.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\"]\n};\nvar faInhaler = {\n prefix: 'fas',\n iconName: 'inhaler',\n icon: [640, 512, [], \"f5f9\", \"M32 448c-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-32zm0 96c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm96-48c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zM616.27 38.02L478.47 1.1c-17.07-4.57-34.62 5.56-39.19 22.63l-15.41 57.52 168.74 168.74L638.9 77.21c4.58-17.07-5.55-34.61-22.63-39.19zm-207.08 73.8c-8.74-8.74-23.66-4.7-26.79 7.26L346.49 256H224c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32h295.31c14.55 0 27.26-9.81 30.95-23.88l44.22-168.59c2.88-11-.29-22.71-8.33-30.75L409.19 111.82zM128 400c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32z\"]\n};\nvar faIntegral = {\n prefix: 'fas',\n iconName: 'integral',\n icon: [384, 512, [], \"f667\", \"M377.21 73.03l-28-36.17C328.43 9.98 295.87-3.75 262.05.89 221.86 6.41 190.54 40 181.42 80.82l-78.16 334.36-23.95-30.91c-10.69-13.79-30.18-16.03-43.53-4.98l-24.17 20c-13.35 11.05-15.51 31.19-4.82 44.98l21.42 27.65c15.98 20.63 38.53 35.82 63.89 39.21 49.82 6.67 94.4-26.18 105.34-75.22l79.2-339.11 28.03 36.2c10.68 13.8 30.17 16.04 43.52 5l24.18-20c13.36-11.03 15.53-31.17 4.84-44.97z\"]\n};\nvar faIntersection = {\n prefix: 'fas',\n iconName: 'intersection',\n icon: [384, 512, [], \"f668\", \"M166.74 33.62C69.96 46.04 0 133.11 0 230.68V464c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V224c0-59.2 53.85-106.04 115.13-94.14 45.58 8.85 76.87 51.5 76.87 97.93V464c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V224c0-114.18-100.17-205.4-217.26-190.38z\"]\n};\nvar faInventory = {\n prefix: 'fas',\n iconName: 'inventory',\n icon: [640, 512, [], \"f480\", \"M624 0h-32c-8.8 0-16 7.2-16 16v144H64V16c0-8.8-7.2-16-16-16H16C7.2 0 0 7.2 0 16v496h64v-32h512v32h64V16c0-8.8-7.2-16-16-16zm-48 416H64V224h512v192zM368 128h96c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16h-96c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16zM112 384h96c8.8 0 16-7.2 16-16v-96c0-8.8-7.2-16-16-16h-96c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16zm160 0h96c8.8 0 16-7.2 16-16v-96c0-8.8-7.2-16-16-16h-96c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16z\"]\n};\nvar faIslandTropical = {\n prefix: 'fas',\n iconName: 'island-tropical',\n icon: [448, 512, [], \"f811\", \"M336.53 32c-34.88 0-65.66 13.82-86.3 35.08C235.78 28.29 193.72 0 143.47 0 87 0 40.31 35.43 32.18 81.64A12.38 12.38 0 0 0 44.6 96H80l16-32 16 32h30.17c-34.21 35-39.62 86.88-14.54 122.58 4.36 6.2 13.14 7.31 18.5 1.95l71-71c4 79.62-11 159.62-21 202.5H142.8A144 144 0 0 0 .36 474.78C-2.53 494.3 12.39 512 32.12 512H352c18.46 0 34.11-15.74 31.8-34.05-7-55.68-47.06-101-99-118.13 10.2-88.69-7.32-183.68-18.52-231.82H368l16-32 16 32h35.4a12.38 12.38 0 0 0 12.42-14.36C439.69 67.43 393 32 336.53 32z\"]\n};\nvar faItalic = {\n prefix: 'fas',\n iconName: 'italic',\n icon: [320, 512, [], \"f033\", \"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\"]\n};\nvar faJackOLantern = {\n prefix: 'fas',\n iconName: 'jack-o-lantern',\n icon: [576, 512, [], \"f30e\", \"M352 106.6V35.81c0-6.06-3.42-11.6-8.84-14.31l-39.6-19.8c-8.37-4.19-18.54-.32-22.01 8.37l-36.06 90.15C258.62 97.58 272.65 96 288 96c24.28 0 45.23 3.99 64 10.6zm143.3 46.53c-27-23.09-65.36-29.76-99.49-20.93 6.09 5.5 12.16 11.02 17.19 17.8 3.1 4.26 5.46 9.42 8.15 14.17C389.39 140.55 345.54 128 288 128s-101.39 12.54-133.15 36.17c2.69-4.75 5.04-9.91 8.15-14.17 5.02-6.78 11.1-12.29 17.19-17.8-34.13-8.83-72.49-2.16-99.49 20.93-107.6 92.01-107.6 241.72 0 333.74 38.63 33.03 100.82 33.34 140.12 1.25C238.65 503.51 260.72 512 288 512s49.35-8.49 67.19-23.88c39.3 32.09 101.49 31.78 140.12-1.25 107.59-92.01 107.59-241.73-.01-333.74zM320.85 278L362 211.33c2.33-4.57 8.6-4.42 12 0L415.15 278c1.66 3.25.9 10-6 10h-82.29c-6.9 0-7.7-6.69-6.01-10zm-160 0L202 211.33c2.33-4.57 8.6-4.42 12 0L255.15 278c1.66 3.25.9 10-6 10h-82.29c-6.9 0-7.7-6.69-6.01-10zm308.95 67.6c-5.96 17.04-12.75 28.62-18.7 36.96-9.38 12.94-21.34 23.8-35.19 32.99-.25-8.62-7.23-15.55-15.91-15.55h-16c-8.84 0-16 7.16-16 16v21.48c-23.46 6.88-50.16 10.52-79.98 10.52-29.85 0-56.56-3.65-80.02-10.51V416c0-8.84-7.16-16-16-16h-16c-8.7 0-15.71 6.97-15.92 15.63-13.71-9.08-25.53-19.79-34.75-32.51-6.12-8.59-13.02-20.31-19.04-37.46-4.87-13.89 10.56-26.15 23.24-18.67 32.94 19.44 70.39 32.74 110.47 38.84V384c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-14.26h.02c58.38 0 112.72-15.74 158.54-42.79 12.66-7.48 28.09 4.77 23.24 18.65z\"]\n};\nvar faJedi = {\n prefix: 'fas',\n iconName: 'jedi',\n icon: [576, 512, [], \"f669\", \"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\"]\n};\nvar faJoint = {\n prefix: 'fas',\n iconName: 'joint',\n icon: [640, 512, [], \"f595\", \"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\"]\n};\nvar faJournalWhills = {\n prefix: 'fas',\n iconName: 'journal-whills',\n icon: [448, 512, [], \"f66a\", \"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\"]\n};\nvar faJoystick = {\n prefix: 'fas',\n iconName: 'joystick',\n icon: [448, 512, [], \"f8c5\", \"M416 352H128v-16a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v16H32a32 32 0 0 0-32 32v96a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32v-96a32 32 0 0 0-32-32zM192 218.8V320h64V218.8c46.15-13.8 80-56.14 80-106.8a112 112 0 0 0-224 0c0 50.66 33.85 93 80 106.8zM200 48a24 24 0 1 1-24 24 24 24 0 0 1 24-24z\"]\n};\nvar faJug = {\n prefix: 'fas',\n iconName: 'jug',\n icon: [448, 512, [], \"f8c6\", \"M448 168a71.72 71.72 0 0 0-126.68-46.35L311 108.77A31.66 31.66 0 0 1 305.23 96H142.77a31.66 31.66 0 0 1-5.77 12.77l-76.95 96.17a128 128 0 0 0-28 80V448a64 64 0 0 0 64 64H352a64 64 0 0 0 64-64V284.9a127.59 127.59 0 0 0-11.1-51A72 72 0 0 0 448 168zm-96 216a32 32 0 0 1-32 32H128a32 32 0 0 1-32-32v-64a32 32 0 0 1 32-32h192a32 32 0 0 1 32 32zm25.38-192.28l-24.09-30.1C356.14 151.54 365 144 376 144a23.88 23.88 0 0 1 1.38 47.72zM152 64h144a23.94 23.94 0 0 0 24-24V24a23.94 23.94 0 0 0-24-24H152a23.94 23.94 0 0 0-24 24v16a23.94 23.94 0 0 0 24 24z\"]\n};\nvar faKaaba = {\n prefix: 'fas',\n iconName: 'kaaba',\n icon: [576, 512, [], \"f66b\", \"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\"]\n};\nvar faKazoo = {\n prefix: 'fas',\n iconName: 'kazoo',\n icon: [640, 512, [], \"f8c7\", \"M608 128h-95.42c-19.51-9.89-41.25-16-64.58-16s-45.07 6.11-64.58 16H241.93a128.3 128.3 0 0 0-35.17 4.92L23.21 185.37A32 32 0 0 0 0 216.14v79.72a32 32 0 0 0 23.21 30.77l183.55 52.44a127.93 127.93 0 0 0 35.17 4.93h141.49c19.51 9.89 41.25 16 64.58 16s45.07-6.11 64.58-16H608a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32zM448 352a96 96 0 1 1 96-96 96 96 0 0 1-96 96zm50.91-135.6l-11.31-11.31a8 8 0 0 0-11.32 0L448 233.37l-28.29-28.28a8 8 0 0 0-11.31 0l-11.31 11.31a8 8 0 0 0 0 11.31L425.37 256l-28.28 28.28a8 8 0 0 0 0 11.32l11.31 11.31a8 8 0 0 0 11.31 0L448 278.63l28.28 28.28a8 8 0 0 0 11.32 0l11.31-11.31a8 8 0 0 0 0-11.32L470.63 256l28.28-28.29a8 8 0 0 0 0-11.31z\"]\n};\nvar faKerning = {\n prefix: 'fas',\n iconName: 'kerning',\n icon: [640, 512, [], \"f86f\", \"M416.54 0h-17A8 8 0 0 0 392 5.32l-176.28 496a8 8 0 0 0 7.55 10.68h17a8 8 0 0 0 7.54-5.32l176.28-496A8 8 0 0 0 416.54 0zM304 96h-50.62a16 16 0 0 0-15.16 10.89L160 306.68 81.78 106.89A16 16 0 0 0 66.62 96H16A16 16 0 0 0 .85 117.11l105.27 277.2a32 32 0 0 0 30.3 21.69h47.16a32 32 0 0 0 30.3-21.69l105.27-277.2A16 16 0 0 0 304 96zm335.15 298.89l-105.27-277.2A32 32 0 0 0 503.58 96h-47.16a32 32 0 0 0-30.3 21.69l-105.27 277.2A16 16 0 0 0 336 416h50.61a16 16 0 0 0 15.16-10.89L416.31 368h127.38l14.53 37.11A16 16 0 0 0 573.38 416H624a16 16 0 0 0 15.15-21.11zM447.63 288L480 205.32 512.37 288z\"]\n};\nvar faKey = {\n prefix: 'fas',\n iconName: 'key',\n icon: [512, 512, [], \"f084\", \"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\"]\n};\nvar faKeySkeleton = {\n prefix: 'fas',\n iconName: 'key-skeleton',\n icon: [512, 512, [], \"f6f3\", \"M448 0H320c-35.35 0-64 28.65-64 64v153.6L4.69 468.91c-6.25 6.25-6.25 16.38 0 22.63l15.77 15.77c6.25 6.25 16.38 6.25 22.63 0l36.25-36.25 36.11 36.11c6.25 6.25 16.38 6.25 22.63 0l43.16-43.16c6.25-6.25 6.25-16.38 0-22.63l-36.11-36.11L176 374.4l36.91 36.91c6.25 6.25 16.38 6.25 22.63 0l15.77-15.77c6.25-6.25 6.25-16.38 0-22.63L214.4 336l80-80H448c35.35 0 64-28.65 64-64V64c0-35.35-28.65-64-64-64zm-73.37 182.63c-12.5 12.5-32.76 12.5-45.26 0s-12.5-32.76 0-45.25c12.5-12.5 32.76-12.5 45.26 0 12.49 12.49 12.49 32.75 0 45.25zm64-64c-12.5 12.5-32.76 12.5-45.26 0s-12.5-32.76 0-45.25c12.5-12.5 32.76-12.5 45.26 0 12.49 12.49 12.49 32.75 0 45.25z\"]\n};\nvar faKeyboard = {\n prefix: 'fas',\n iconName: 'keyboard',\n icon: [576, 512, [], \"f11c\", \"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\"]\n};\nvar faKeynote = {\n prefix: 'fas',\n iconName: 'keynote',\n icon: [512, 512, [], \"f66c\", \"M368 448h-80v-64h-64v64h-80c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h224c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm140.62-166.76l-51.78-103.55A32 32 0 0 0 428.22 160H144c0-37.62 26.21-69.06 62.68-77.55C215.31 90.81 227.03 96 240 96h64c26.51 0 48-21.49 48-48S330.51 0 304 0h-64c-22.35 0-40.96 15.34-46.31 36.02C137.77 49.72 96 99.91 96 160H83.78a32 32 0 0 0-28.62 17.69L3.38 281.24A32.066 32.066 0 0 0 0 295.55V320c0 17.67 14.33 32 32 32h448c17.67 0 32-14.33 32-32v-24.45c0-4.96-1.16-9.86-3.38-14.31z\"]\n};\nvar faKhanda = {\n prefix: 'fas',\n iconName: 'khanda',\n icon: [512, 512, [], \"f66d\", \"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\"]\n};\nvar faKidneys = {\n prefix: 'fas',\n iconName: 'kidneys',\n icon: [640, 512, [], \"f5fb\", \"M231.6 32.07c-35.33-39.56-96.04-42.99-135.62-7.69C36.08 77.85 2.39 149.96.13 224c-1.28 42.04 7.47 70.91 12.89 90.06 11.94 42.31 50.46 69.93 92.35 69.93 64.31 0 109.65-61.47 92.47-122.11-1.04-3.7-23.08-50.43 26.07-94.27 39.58-35.3 43.02-95.98 7.69-135.54zm72.27 235.7c0-21.31-11.84-40.5-30.97-50.09l-35.84-17.92c-8.57 10.12-16.55 24.95-11.66 42.26l1.82 6.49 24.21 12.11c2.72 1.37 4.44 4.09 4.44 7.16v212.21l.02 16.01c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16l-.02-48V267.77zm62.97-50.09c-19.09 9.59-30.97 28.78-30.97 50.09l.02 212.21V496c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16l-.02-48V267.77c0-3.03 1.72-5.78 4.47-7.16l23.87-11.94 2.13-7.39c4.89-16.94-3.08-31.56-11.61-41.56l-35.89 17.96zM543.89 24.3C504.34-10.92 443.56-7.45 408.3 32.2c-35.27 39.59-31.73 100.27 7.91 135.52 49.6 44.12 26.49 91.15 25.76 93.71C424.49 322 469.62 384 534.29 384c41.74 0 80.13-27.37 92.26-69.46 5.54-19.27 14.54-48.08 13.35-90.54-2.09-74.03-35.81-146.16-96.01-199.7z\"]\n};\nvar faKiss = {\n prefix: 'fas',\n iconName: 'kiss',\n icon: [496, 512, [], \"f596\", \"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\"]\n};\nvar faKissBeam = {\n prefix: 'fas',\n iconName: 'kiss-beam',\n icon: [496, 512, [], \"f597\", \"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\"]\n};\nvar faKissWinkHeart = {\n prefix: 'fas',\n iconName: 'kiss-wink-heart',\n icon: [504, 512, [], \"f598\", \"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\"]\n};\nvar faKite = {\n prefix: 'fas',\n iconName: 'kite',\n icon: [640, 512, [], \"f6f4\", \"M113.75 315.83l53.38 35.58c10.63 7.09 24.88-.54 24.88-13.31v-68.21c0-12.78-14.24-20.4-24.88-13.31L120 288v-64c0-48.6-39.4-88-88-88H16c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h16c22.09 0 40 17.91 40 40v64l-47.12-31.42C14.24 249.49 0 257.12 0 269.89v68.21c0 12.78 14.24 20.4 24.88 13.31l53.38-35.58a32.004 32.004 0 0 1 35.49 0zM615.8 1.57C613.24.91 610.77 0 608 0H345.46c-2.36 0-4.54.67-6.76 1.16l138.76 138.76L615.8 1.57zM331.31 331.31c-3.12 3.12-8.19 3.12-11.31 0L308.69 320c-3.12-3.12-3.12-8.19 0-11.31l146.14-146.14L315.11 22.82c-.21.7-.66 1.26-.83 1.98l-78.76 341.31c-.39 1.69-.44 3.34-.55 4.99l-88.33 88.33c-9.83 9.83-26.63 2.87-26.63-11.03v-89.95l-24-16-24 16v84.86c0 16.55 5.05 33.04 15.7 45.71 26.48 31.53 68.98 28.26 92.87 4.34l88.31-88.31c1.66-.12 3.32-.19 5.02-.58l341.31-78.76c.72-.17 1.29-.62 1.99-.83L477.46 185.17 331.31 331.31zM638.43 24.2L500.08 162.54 638.84 301.3c.49-2.22 1.16-4.4 1.16-6.75V32c0-2.77-.91-5.24-1.57-7.8z\"]\n};\nvar faKiwiBird = {\n prefix: 'fas',\n iconName: 'kiwi-bird',\n icon: [576, 512, [], \"f535\", \"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\"]\n};\nvar faKnifeKitchen = {\n prefix: 'fas',\n iconName: 'knife-kitchen',\n icon: [576, 512, [], \"f6f5\", \"M267.52 216.6L4.87 469.83c-8.72 8.41-5.22 22.73 6.49 26.49 113.84 36.59 239.36 8.02 324.21-73.79l61.04-58.85c6.48-6.25 6.48-16.38 0-22.63L267.52 216.6zM566.28 43.31L531.07 9.37c-12.96-12.5-33.98-12.5-46.94 0l-192.31 185.4 112.1 108.08 34.35-27.71c6.22-6 9.72-14.14 9.72-22.63V208L566.28 88.57c12.96-12.5 12.96-32.76 0-45.26zM444.24 149.66c-6.48 6.25-16.99 6.25-23.47 0s-6.48-16.38 0-22.63 16.99-6.25 23.47 0 6.48 16.38 0 22.63zm60.52-58.35c-6.48 6.25-16.99 6.25-23.47 0s-6.48-16.38 0-22.63 16.99-6.25 23.47 0 6.48 16.39 0 22.63z\"]\n};\nvar faLambda = {\n prefix: 'fas',\n iconName: 'lambda',\n icon: [448, 512, [], \"f66e\", \"M424 384h-43.5L197.6 48.68A32.018 32.018 0 0 0 169.5 32H24C10.75 32 0 42.74 0 56v48c0 13.25 10.75 24 24 24h107.5l4.63 8.49L3.25 446.55C-3.53 462.38 8.08 480 25.31 480h52.23c9.6 0 18.28-5.72 22.06-14.55l95.02-221.72L314.4 463.32A32.018 32.018 0 0 0 342.5 480H424c13.25 0 24-10.75 24-24v-48c0-13.26-10.75-24-24-24z\"]\n};\nvar faLamp = {\n prefix: 'fas',\n iconName: 'lamp',\n icon: [448, 512, [], \"f4ca\", \"M445.5 211.4L368 19.4C363.3 7.6 352.4 0 340.4 0H120.6c-11.4 0-21.8 6.8-27 17.7l-90.4 192c-10 21.3 4.6 46.3 27 46.3h387.7c21.6 0 36.2-23.5 27.6-44.6zM158.3 288C121 325.2 96 386.8 96 428.8c0 28.4 11.5 54.3 30.5 74.3 5.7 6 13.9 8.9 22.2 8.9h150.6c8.3 0 16.5-2.9 22.2-8.9 19-20.1 30.5-45.9 30.5-74.3 0-42-25-103.6-62.3-140.8H158.3z\"]\n};\nvar faLampDesk = {\n prefix: 'fas',\n iconName: 'lamp-desk',\n icon: [512, 512, [], \"e014\", \"M494.42,64H346.5L301.24,18.74a64,64,0,0,0-90.5,90.5l11,11L103,239a24,24,0,0,0-6.11,23.56L149.9,448H64C35.58,448,9.05,466.53.7,492.16-2.52,502,5.88,512,16.26,512H367.74c10.39,0,18.78-10,15.57-19.84C375,466.53,348.42,448,320,448H199.82L147,263,255.72,154.22l.28.28V302.42c0,15.63,18.9,23.46,30,12.4L506.82,94C517.88,82.9,510.05,64,494.42,64ZM379.71,266.33a55.73,55.73,0,0,0,78.62-78.62Z\"]\n};\nvar faLampFloor = {\n prefix: 'fas',\n iconName: 'lamp-floor',\n icon: [384, 512, [], \"e015\", \"M256,448H224V255.69H160V448H128c-28.42,0-54.95,18.53-63.3,44.16C61.48,502,69.88,512,80.26,512H303.74c10.38,0,18.78-10,15.56-19.84C311,466.53,284.42,448,256,448ZM381.38,179.4l-68.57-160A32,32,0,0,0,283.39,0H100.61A32,32,0,0,0,71.19,19.4L2.62,179.4A32,32,0,0,0,32,224H352A32,32,0,0,0,381.38,179.4Z\"]\n};\nvar faLandmark = {\n prefix: 'fas',\n iconName: 'landmark',\n icon: [512, 512, [], \"f66f\", \"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\"]\n};\nvar faLandmarkAlt = {\n prefix: 'fas',\n iconName: 'landmark-alt',\n icon: [512, 512, [], \"f752\", \"M48 256h416c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16h-18.9C431.6 111.7 368.3 48.4 288 34.9V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v18.9C143.7 48.4 80.4 111.7 66.9 192H48c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16zm448 192h-16v-16c0-8.8-7.2-16-16-16h-16V288h-64v128h-96V288h-64v128h-96V288H64v128H48c-8.8 0-16 7.2-16 16v16H16c-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\"]\n};\nvar faLanguage = {\n prefix: 'fas',\n iconName: 'language',\n icon: [640, 512, [], \"f1ab\", \"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\"]\n};\nvar faLaptop = {\n prefix: 'fas',\n iconName: 'laptop',\n icon: [640, 512, [], \"f109\", \"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\"]\n};\nvar faLaptopCode = {\n prefix: 'fas',\n iconName: 'laptop-code',\n icon: [640, 512, [], \"f5fc\", \"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\"]\n};\nvar faLaptopHouse = {\n prefix: 'fas',\n iconName: 'laptop-house',\n icon: [640, 512, [], \"e066\", \"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\"]\n};\nvar faLaptopMedical = {\n prefix: 'fas',\n iconName: 'laptop-medical',\n icon: [640, 512, [], \"f812\", \"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\"]\n};\nvar faLasso = {\n prefix: 'fas',\n iconName: 'lasso',\n icon: [576, 512, [], \"f8c8\", \"M288 0C126.5 0 0 79.63 0 181.3c0 49.78 30.22 95.84 85 129.7 3.52 2.17 7.37 4.29 11.3 6.41 0 .89-.33 1.71-.33 2.6 0 35.35 35.82 64 80 64 .69 0 1.33-.15 2-.16a68.71 68.71 0 0 1 2.69 17.9A45.7 45.7 0 0 1 134.94 448H48a16 16 0 0 0-16 15.94v32.12A16 16 0 0 0 48 512h86.94c59.38 0 108.8-47.22 109.76-106.38A135 135 0 0 0 238 360a468.23 468.23 0 0 0 50 2.58c161.5 0 288-79.63 288-181.28S449.5 0 288 0zm0 298.82c-12.73 0-25.23-.81-37.6-2C238.79 273 210 256 176 256a94.36 94.36 0 0 0-41.2 9.4c-5.58-2.86-11.32-5.69-16.05-8.61C98.31 244.17 64 217.57 64 181.3c0-62.61 104.69-117.54 224-117.54s224 54.93 224 117.54-104.69 117.52-224 117.52z\"]\n};\nvar faLaugh = {\n prefix: 'fas',\n iconName: 'laugh',\n icon: [496, 512, [], \"f599\", \"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\"]\n};\nvar faLaughBeam = {\n prefix: 'fas',\n iconName: 'laugh-beam',\n icon: [496, 512, [], \"f59a\", \"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\"]\n};\nvar faLaughSquint = {\n prefix: 'fas',\n iconName: 'laugh-squint',\n icon: [496, 512, [], \"f59b\", \"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\"]\n};\nvar faLaughWink = {\n prefix: 'fas',\n iconName: 'laugh-wink',\n icon: [496, 512, [], \"f59c\", \"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\"]\n};\nvar faLayerGroup = {\n prefix: 'fas',\n iconName: 'layer-group',\n icon: [512, 512, [], \"f5fd\", \"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\"]\n};\nvar faLayerMinus = {\n prefix: 'fas',\n iconName: 'layer-minus',\n icon: [512, 512, [], \"f5fe\", \"M12.41 276.3l232.94 105.59c6.8 3.08 14.49 3.08 21.29 0L499.59 276.3c16.55-7.5 16.55-32.5 0-40L266.65 130.72a25.682 25.682 0 0 0-21.29 0L12.41 236.3c-16.55 7.5-16.55 32.5 0 40zM304 64h192c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16H304c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16zm195.59 300.1l-58.09-26.33-161.63 73.27c-7.56 3.43-15.59 5.17-23.86 5.17s-16.29-1.74-23.86-5.17L70.51 337.77l-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 404.1c16.55-7.5 16.55-32.5 0-40z\"]\n};\nvar faLayerPlus = {\n prefix: 'fas',\n iconName: 'layer-plus',\n icon: [512, 512, [], \"f5ff\", \"M304 144h64v64c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-64h64c8.84 0 16-7.16 16-16V96c0-8.84-7.16-16-16-16h-64V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v64h-64c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16zm195.59 220.1l-58.54-26.53-161.19 73.06c-7.56 3.43-15.59 5.17-23.86 5.17s-16.29-1.74-23.86-5.17L70.95 337.57 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-40zM12.41 275.9l232.94 105.59c6.8 3.08 14.49 3.08 21.29 0L448 299.28V280.7c-15.32 4.38-31.27 7.29-48 7.29-88.01 0-160.72-64.67-173.72-149.04L12.41 235.9c-16.55 7.5-16.55 32.5 0 40z\"]\n};\nvar faLeaf = {\n prefix: 'fas',\n iconName: 'leaf',\n icon: [576, 512, [], \"f06c\", \"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\"]\n};\nvar faLeafHeart = {\n prefix: 'fas',\n iconName: 'leaf-heart',\n icon: [576, 512, [], \"f4cb\", \"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 19.2 2.9 37.7 8.1 55.1C31.6 399.5 4.3 463.2 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.6zM430.6 294.4L345.9 380c-5.5 5.5-14.3 5.5-19.8 0l-84.7-85.6c-24.6-24.9-23.2-66.1 4.3-89.1 24-20 59.6-16.4 81.6 5.8l8.6 8.7 8.6-8.7c22-22.2 57.7-25.8 81.6-5.8 27.6 22.9 29.1 64.2 4.5 89.1z\"]\n};\nvar faLeafMaple = {\n prefix: 'fas',\n iconName: 'leaf-maple',\n icon: [512, 512, [], \"f6f6\", \"M503.58 166.05l-37.24-22.34 9.86-88.78c1.23-11.04-8.1-20.37-19.14-19.14l-88.78 9.86-22.33-37.23c-6.63-11.05-22.57-11.26-29.49-.39l-89.6 140.79 16.58-64.84c2.8-12.58-8.62-23.7-21.12-20.58L196.6 77.22l-45.3-51.33c-6.94-8.67-20.13-8.67-27.07 0l-45.3 51.33L53.2 63.41c-12.5-3.12-23.92 8-21.12 20.58l33.04 160.19-37.09 15.89c-14.01 6-14.01 25.86 0 31.87l102.75 44.04L9.37 457.38c-12.5 12.5-12.5 32.75 0 45.25C15.62 508.88 23.81 512 32 512s16.37-3.12 22.62-9.38L257 300.25l-66.1 115.67 29.16 68.05c6.01 14.01 25.87 14.01 31.87 0l15.89-37.09 160.19 33.04c12.58 2.79 23.7-8.62 20.58-21.12l-13.81-25.72 51.32-45.3c8.67-6.94 8.67-20.13 0-27.07l-51.32-45.3 13.81-25.72c3.12-12.5-8-23.92-20.58-21.12l-64.84 16.58 140.79-89.59c10.88-6.94 10.67-22.88-.38-29.51z\"]\n};\nvar faLeafOak = {\n prefix: 'fas',\n iconName: 'leaf-oak',\n icon: [512, 512, [], \"f6f7\", \"M488.4 155.16c-3.97-2.74-8.07-5.45-12.47-7.36-7.33-3.19-10.35-11.81-8.06-19.56 9.76-33.08 2.92-57.01-12.43-71.51l.17-.17c-14.49-15.34-38.43-22.19-71.5-12.43-7.76 2.29-16.37-.73-19.56-8.06-1.91-4.39-4.62-8.5-7.36-12.47-18.65-26.98-54.04-31.7-77.81-9.65-6.76 6.27-11.71 14.7-16.65 22.66-7.82 12.63-14.94 25.7-23.13 39.93-6.72-5.51-11.65-9.75-16.77-13.73-28.61-22.23-59.63-15.96-77.62 15.4-13.05 22.74-11.64 47.07-8.47 71.76 1.65 12.84 2.69 25.76 4.38 42.31-6.14-4.27-8.58-6.24-11.27-7.78-26.1-14.94-55.32-4.3-63.17 24.64-3.2 11.82-3.57 25.64-.86 37.58 3.93 17.31 12.87 33.46 17.61 50.66 2.6 9.41 3.91 21.04.72 29.81-7.54 20.71-11.4 40.95-5.91 61.32L9.37 457.38c-12.5 12.5-12.5 32.75 0 45.25C15.62 508.88 23.81 512 32 512s16.37-3.12 22.62-9.38l183.71-183.71-64.41 112.71c3.62-1.09 7.23-2.11 10.87-3.43 8.77-3.19 20.4-1.88 29.81.72 17.2 4.75 33.35 13.68 50.66 17.62 11.94 2.71 25.76 2.35 37.58-.86 28.94-7.85 39.58-37.07 24.64-63.17-1.54-2.69-3.52-5.12-7.78-11.27 16.55 1.69 29.46 2.72 42.31 4.38 24.69 3.17 49.01 4.57 71.76-8.47 31.37-17.99 37.63-49.02 15.4-77.62-3.98-5.12-8.21-10.05-13.73-16.77 14.24-8.19 27.31-15.31 39.93-23.13 7.96-4.94 16.4-9.89 22.66-16.65 22.06-23.77 17.35-59.16-9.63-77.81z\"]\n};\nvar faLemon = {\n prefix: 'fas',\n iconName: 'lemon',\n icon: [512, 512, [], \"f094\", \"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\"]\n};\nvar faLessThan = {\n prefix: 'fas',\n iconName: 'less-than',\n icon: [384, 512, [], \"f536\", \"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\"]\n};\nvar faLessThanEqual = {\n prefix: 'fas',\n iconName: 'less-than-equal',\n icon: [448, 512, [], \"f537\", \"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\"]\n};\nvar faLevelDown = {\n prefix: 'fas',\n iconName: 'level-down',\n icon: [352, 512, [], \"f149\", \"M345.04 368l-136 136.901c-9.388 9.465-24.691 9.465-34.079 0L38.96 368c-9.307-9.384-9.277-24.526.069-33.872l22.056-22.056c9.619-9.619 25.301-9.329 34.557.639L152 373.16V80H68.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 24v349.16l56.357-60.448c9.256-9.968 24.938-10.258 34.557-.639l22.056 22.056c9.346 9.345 9.377 24.487.07 33.871z\"]\n};\nvar faLevelDownAlt = {\n prefix: 'fas',\n iconName: 'level-down-alt',\n icon: [320, 512, [], \"f3be\", \"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\"]\n};\nvar faLevelUp = {\n prefix: 'fas',\n iconName: 'level-up',\n icon: [352, 512, [], \"f148\", \"M345.04 144l-136-136.901c-9.388-9.465-24.691-9.465-34.079 0L38.96 144c-9.307 9.384-9.277 24.526.069 33.872l22.056 22.056c9.619 9.619 25.301 9.329 34.557-.639L152 138.84V432H68.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-24V138.84l56.357 60.448c9.256 9.968 24.938 10.258 34.557.639l22.056-22.056c9.346-9.345 9.377-24.487.07-33.871z\"]\n};\nvar faLevelUpAlt = {\n prefix: 'fas',\n iconName: 'level-up-alt',\n icon: [320, 512, [], \"f3bf\", \"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\"]\n};\nvar faLifeRing = {\n prefix: 'fas',\n iconName: 'life-ring',\n icon: [512, 512, [], \"f1cd\", \"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\"]\n};\nvar faLightCeiling = {\n prefix: 'fas',\n iconName: 'light-ceiling',\n icon: [512, 512, [], \"e016\", \"M288,162.39V0H224V162.39C108.51,176.59,16.56,266,.31,379.85-2.41,399,13.07,416,32.54,416H479.46c19.47,0,34.95-17,32.23-36.15C495.44,266,403.49,176.59,288,162.39ZM256,512a64,64,0,0,0,64-64H192A64,64,0,0,0,256,512Z\"]\n};\nvar faLightSwitch = {\n prefix: 'fas',\n iconName: 'light-switch',\n icon: [384, 512, [], \"e017\", \"M320,0H64A64,64,0,0,0,0,64V448a64,64,0,0,0,64,64H320a64,64,0,0,0,64-64V64A64,64,0,0,0,320,0ZM192,32a16,16,0,1,1-16,16A16,16,0,0,1,192,32Zm0,448a16,16,0,1,1,16-16A16,16,0,0,1,192,480Zm96-112a48,48,0,0,1-48,48H144a48,48,0,0,1-48-48V272H288Zm0-128H96V144a48,48,0,0,1,48-48h96a48,48,0,0,1,48,48Z\"]\n};\nvar faLightSwitchOff = {\n prefix: 'fas',\n iconName: 'light-switch-off',\n icon: [384, 512, [], \"e018\", \"M320,0H64A64,64,0,0,0,0,64V448a64,64,0,0,0,64,64H320a64,64,0,0,0,64-64V64A64,64,0,0,0,320,0ZM192,32a16,16,0,1,1-16,16A16,16,0,0,1,192,32Zm0,448a16,16,0,1,1,16-16A16,16,0,0,1,192,480Zm96-192h0v80a48,48,0,0,1-48,48H144a48,48,0,0,1-48-48V272h0V240h0V144a48,48,0,0,1,48-48h96a48,48,0,0,1,48,48v80h0ZM128,352a32,32,0,0,0,32,32h64a32,32,0,0,0,32-32V256H128Z\"]\n};\nvar faLightSwitchOn = {\n prefix: 'fas',\n iconName: 'light-switch-on',\n icon: [384, 512, [], \"e019\", \"M320,0H64A64,64,0,0,0,0,64V448a64,64,0,0,0,64,64H320a64,64,0,0,0,64-64V64A64,64,0,0,0,320,0ZM192,32a16,16,0,1,1-16,16A16,16,0,0,1,192,32Zm0,448a16,16,0,1,1,16-16A16,16,0,0,1,192,480Zm96-240h0v32h0v96a48,48,0,0,1-48,48H144a48,48,0,0,1-48-48V288h0V224h0V144a48,48,0,0,1,48-48h96a48,48,0,0,1,48,48ZM224,128H160a32,32,0,0,0-32,32v96H256V160A32,32,0,0,0,224,128Z\"]\n};\nvar faLightbulb = {\n prefix: 'fas',\n iconName: 'lightbulb',\n icon: [352, 512, [], \"f0eb\", \"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\"]\n};\nvar faLightbulbDollar = {\n prefix: 'fas',\n iconName: 'lightbulb-dollar',\n icon: [352, 512, [], \"f670\", \"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.35zM175.45 0C73.44.31 0 82.97 0 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 0zM192 255.88V272c0 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.07V80c0-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.07z\"]\n};\nvar faLightbulbExclamation = {\n prefix: 'fas',\n iconName: 'lightbulb-exclamation',\n icon: [352, 512, [], \"f671\", \"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.35zM175.45 0C73.44.31 0 82.97 0 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 0zm.55 320c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm38.24-238.41l-12.8 128c-.82 8.18-7.7 14.41-15.92 14.41h-19.04c-8.22 0-15.1-6.23-15.92-14.41l-12.8-128c-.94-9.42 6.45-17.59 15.92-17.59h44.64c9.47 0 16.86 8.17 15.92 17.59z\"]\n};\nvar faLightbulbOn = {\n prefix: 'fas',\n iconName: 'lightbulb-on',\n icon: [640, 512, [], \"f672\", \"M240.06,454.34A32,32,0,0,0,245.42,472l17.1,25.69c5.23,7.91,17.17,14.28,26.64,14.28h61.7c9.47,0,21.41-6.37,26.64-14.28L394.59,472A37.47,37.47,0,0,0,400,454.34L400,416H240ZM319.45,0C217.44.31,144,83,144,176a175,175,0,0,0,43.56,115.78c16.52,18.85,42.36,58.22,52.21,91.44,0,.28.07.53.11.78H400.12c0-.25.07-.5.11-.78,9.85-33.22,35.69-72.59,52.21-91.44A175,175,0,0,0,496,176C496,78.63,416.91-.31,319.45,0ZM320,96a80.09,80.09,0,0,0-80,80,16,16,0,0,1-32,0A112.12,112.12,0,0,1,320,64a16,16,0,0,1,0,32ZM112,192a24,24,0,0,0-24-24H24a24,24,0,0,0,0,48H88A24,24,0,0,0,112,192Zm504-24H552a24,24,0,0,0,0,48h64a24,24,0,0,0,0-48ZM131.08,55.22l-55.42-32a24,24,0,1,0-24,41.56l55.42,32a24,24,0,1,0,24-41.56Zm457.26,264-55.42-32a24,24,0,1,0-24,41.56l55.42,32a24,24,0,0,0,24-41.56Zm-481.26-32-55.42,32a24,24,0,1,0,24,41.56l55.42-32a24,24,0,0,0-24-41.56ZM520.94,100a23.8,23.8,0,0,0,12-3.22l55.42-32a24,24,0,0,0-24-41.56l-55.42,32a24,24,0,0,0,12,44.78Z\"]\n};\nvar faLightbulbSlash = {\n prefix: 'fas',\n iconName: 'lightbulb-slash',\n icon: [640, 512, [], \"f673\", \"M633.82 458.1L439.73 308.09c4.51-6.26 8.87-11.94 12.71-16.31C479.55 260.85 496 220.37 496 176 496 78.8 417.2 0 320 0 208.69 0 164.65 92.77 163.64 94.71L45.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.45zM320 96c-37.14 0-68.17 25.56-77.14 59.94l-26.89-20.78C232.36 93.59 272.69 64 320 64c8.84 0 16 7.16 16 16s-7.16 16-16 16zm-79.99 320l.04 38.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.02-15.21L370.03 416H240.01zm-76.28-159.44c6.57 12.69 14.49 24.57 23.83 35.22 16.52 18.85 42.36 58.23 52.21 91.45.04.26.07.52.11.78h88.74L163.73 256.56z\"]\n};\nvar faLightsHoliday = {\n prefix: 'fas',\n iconName: 'lights-holiday',\n icon: [640, 512, [], \"f7b2\", \"M637.4 98.8l-17.5-27.4c-4.7-7.4-14.2-9.5-21.8-5.1C522 110.7 424 135 320 135S118 110.7 41.9 66.3c-7.6-4.4-17.1-2.3-21.8 5.1L2.6 98.8c-4.9 7.8-2.7 18.3 5.2 22.9 38.1 22.4 81.1 40 127 53L114.7 230c-25.5 1.1-48.5 16.2-61.3 51.6-18.1 49.8 14.3 129 27.9 134 13.5 4.9 89.3-34.9 107.5-84.7 12.9-35.3 5-61.7-13.8-79l22.8-62.6c29.3 5.2 59.6 8.4 90.4 9.8v63c-23.6 9.8-40 31.8-40 69.5 0 53 57.6 116.4 72 116.4s72-63.3 72-116.4c0-37.6-16.4-59.7-40-69.5v-63c30.8-1.4 61-4.6 90.4-9.8l22.8 62.6c-18.8 17.3-26.7 43.6-13.8 79 18.1 49.8 93.9 89.6 107.5 84.7 13.5-4.9 46-84.2 27.9-134-12.9-35.3-35.8-50.5-61.3-51.6l-20.1-55.3c45.9-13 88.9-30.6 127-53 7.5-4.6 9.7-15.1 4.8-22.9zM145.6 309c-4.8 13.1-26.4 37.1-42.5 46.5-6.3-17.5-7.4-49.7-2.7-62.9 4.1-11.3 17.6-16.8 30-12.3s19.3 17.4 15.2 28.7zM320 384c-11.9-14.3-24-44.2-24-58.2 0-12.1 10.7-21.8 24-21.8s24 9.8 24 21.8c0 14-12.1 43.9-24 58.2zm189.5-103.7c12.5-4.5 25.9 1 30 12.3 4.8 13.1 3.7 45.4-2.7 62.9-16.1-9.3-37.7-33.3-42.5-46.5-4-11.3 2.8-24.2 15.2-28.7z\"]\n};\nvar faLineColumns = {\n prefix: 'fas',\n iconName: 'line-columns',\n icon: [512, 512, [], \"f870\", \"M496 288H304a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 128H304a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-256H304a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H304a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM208 288H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h192a16 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 16h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-384H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm0 128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"]\n};\nvar faLineHeight = {\n prefix: 'fas',\n iconName: 'line-height',\n icon: [640, 512, [], \"f871\", \"M626.29 224H269.71c-7.57 0-13.71 7.16-13.71 16v32c0 8.84 6.14 16 13.71 16h356.58c7.57 0 13.71-7.16 13.71-16v-32c0-8.84-6.14-16-13.71-16zm0 160H269.71c-7.57 0-13.71 7.16-13.71 16v32c0 8.84 6.14 16 13.71 16h356.58c7.57 0 13.71-7.16 13.71-16v-32c0-8.84-6.14-16-13.71-16zm0-320H269.71C262.14 64 256 71.16 256 80v32c0 8.84 6.14 16 13.71 16h356.58c7.57 0 13.71-7.16 13.71-16V80c0-8.84-6.14-16-13.71-16zM176 144c14.31 0 21.33-17.31 11.31-27.31l-80-80a16 16 0 0 0-22.62 0l-80 80C-4.64 126 .36 144 16 144h48v224H16c-14.29 0-21.31 17.31-11.29 27.31l80 80a16 16 0 0 0 22.62 0l80-80C196.64 386 191.64 368 176 368h-48V144z\"]\n};\nvar faLink = {\n prefix: 'fas',\n iconName: 'link',\n icon: [512, 512, [], \"f0c1\", \"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\"]\n};\nvar faLips = {\n prefix: 'fas',\n iconName: 'lips',\n icon: [640, 512, [], \"f600\", \"M631.14 195.68C579.47 109.99 466.31 32 417.72 32c0 0-32.57 0-97.72 50-65.15-50-97.72-50-97.72-50-48.59 0-161.75 77.99-213.42 163.68-10.32 17.11-11.63 37.99-3.89 56.38C32.95 318.51 117.59 480 279.28 480h81.43c161.69 0 246.33-161.49 274.32-227.95 7.74-18.38 6.43-39.26-3.89-56.37zM320 320c-170.66 0-256-96-256-96s64-32 160-32l35.38 8.84C278.2 205.55 298.95 208 320 208s41.8-2.45 60.62-7.16L416 192c96 0 160 32 160 32s-85.34 96-256 96z\"]\n};\nvar faLiraSign = {\n prefix: 'fas',\n iconName: 'lira-sign',\n icon: [384, 512, [], \"f195\", \"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\"]\n};\nvar faList = {\n prefix: 'fas',\n iconName: 'list',\n icon: [512, 512, [], \"f03a\", \"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\"]\n};\nvar faListAlt = {\n prefix: 'fas',\n iconName: 'list-alt',\n icon: [512, 512, [], \"f022\", \"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\"]\n};\nvar faListMusic = {\n prefix: 'fas',\n iconName: 'list-music',\n icon: [512, 512, [], \"f8c9\", \"M16 256h256a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0-128h256a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16H16A16 16 0 0 0 0 80v32a16 16 0 0 0 16 16zm128 192H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM470.94 1.33l-96.53 28.51A32 32 0 0 0 352 60.34V360a148.76 148.76 0 0 0-48-8c-61.86 0-112 35.82-112 80s50.14 80 112 80 112-35.82 112-80V148.15l73-21.39a32 32 0 0 0 23-30.71V32a32 32 0 0 0-41.06-30.67z\"]\n};\nvar faListOl = {\n prefix: 'fas',\n iconName: 'list-ol',\n icon: [512, 512, [], \"f0cb\", \"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\"]\n};\nvar faListUl = {\n prefix: 'fas',\n iconName: 'list-ul',\n icon: [512, 512, [], \"f0ca\", \"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\"]\n};\nvar faLocation = {\n prefix: 'fas',\n iconName: 'location',\n icon: [512, 512, [], \"f601\", \"M496 224h-50.88C431.61 143.66 368.34 80.39 288 66.88V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v50.88C143.66 80.39 80.39 143.66 66.88 224H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h50.88C80.39 368.34 143.66 431.61 224 445.12V496c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-50.88c80.34-13.51 143.61-76.78 157.12-157.12H496c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM256 384c-70.7 0-128-57.31-128-128s57.3-128 128-128 128 57.31 128 128-57.3 128-128 128zm0-216c-48.6 0-88 39.4-88 88s39.4 88 88 88 88-39.4 88-88-39.4-88-88-88z\"]\n};\nvar faLocationArrow = {\n prefix: 'fas',\n iconName: 'location-arrow',\n icon: [512, 512, [], \"f124\", \"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\"]\n};\nvar faLocationCircle = {\n prefix: 'fas',\n iconName: 'location-circle',\n icon: [496, 512, [], \"f602\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm110.24 169.74l-95.95 207.89c-11.2 23.99-46.38 15.99-46.38-9.59v-87.96h-87.96c-25.59 0-33.58-35.18-9.59-46.38l207.89-95.95c19.2-7.99 39.99 12.8 31.99 31.99z\"]\n};\nvar faLocationSlash = {\n prefix: 'fas',\n iconName: 'location-slash',\n icon: [640, 512, [], \"f603\", \"M633.82 458.1L488.95 346.13c9.66-17.86 16.68-37.35 20.18-58.13H560c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16h-50.88C495.61 143.66 432.34 80.39 352 66.88V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v50.88c-37.52 6.31-71.24 23.54-97.95 48.24L45.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.45zM437.33 306.24l-33.09-25.58c2.33-7.84 3.76-16.05 3.76-24.66 0-48.6-39.4-88-88-88-16.56 0-31.84 4.8-44.99 12.78l-33.21-25.66C263.45 138.28 290.44 128 320 128c70.7 0 128 57.31 128 128 0 17.93-3.94 34.83-10.67 50.24zM320 384c-62.37 0-114.18-44.65-125.55-103.7L121.61 224H80c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h50.88c13.51 80.34 76.78 143.61 157.12 157.12V496c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-50.88c14.07-2.37 27.35-6.75 40.19-11.99l-64.57-49.9c-2.57.15-5.01.77-7.62.77z\"]\n};\nvar faLock = {\n prefix: 'fas',\n iconName: 'lock',\n icon: [448, 512, [], \"f023\", \"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\"]\n};\nvar faLockAlt = {\n prefix: 'fas',\n iconName: 'lock-alt',\n icon: [448, 512, [], \"f30d\", \"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-48zM264 392c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48zm32-168H152v-72c0-39.7 32.3-72 72-72s72 32.3 72 72v72z\"]\n};\nvar faLockOpen = {\n prefix: 'fas',\n iconName: 'lock-open',\n icon: [576, 512, [], \"f3c1\", \"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\"]\n};\nvar faLockOpenAlt = {\n prefix: 'fas',\n iconName: 'lock-open-alt',\n icon: [576, 512, [], \"f3c2\", \"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 0zM264 392c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"]\n};\nvar faLongArrowAltDown = {\n prefix: 'fas',\n iconName: 'long-arrow-alt-down',\n icon: [256, 512, [], \"f309\", \"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\"]\n};\nvar faLongArrowAltLeft = {\n prefix: 'fas',\n iconName: 'long-arrow-alt-left',\n icon: [448, 512, [], \"f30a\", \"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\"]\n};\nvar faLongArrowAltRight = {\n prefix: 'fas',\n iconName: 'long-arrow-alt-right',\n icon: [448, 512, [], \"f30b\", \"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\"]\n};\nvar faLongArrowAltUp = {\n prefix: 'fas',\n iconName: 'long-arrow-alt-up',\n icon: [256, 512, [], \"f30c\", \"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\"]\n};\nvar faLongArrowDown = {\n prefix: 'fas',\n iconName: 'long-arrow-down',\n icon: [320, 512, [], \"f175\", \"M261.573 286.544L196 352.118V56c0-13.255-10.745-24-24-24h-24c-13.255 0-24 10.745-24 24v296.118l-65.573-65.574c-9.373-9.373-24.569-9.373-33.941 0L7.515 303.515c-9.373 9.373-9.373 24.569 0 33.941L143.03 472.97c9.373 9.373 24.568 9.373 33.941 0l135.515-135.514c9.373-9.373 9.373-24.569 0-33.941l-16.971-16.971c-9.373-9.373-24.569-9.373-33.942 0z\"]\n};\nvar faLongArrowLeft = {\n prefix: 'fas',\n iconName: 'long-arrow-left',\n icon: [448, 512, [], \"f177\", \"M193.456 357.573L127.882 292H424c13.255 0 24-10.745 24-24v-24c0-13.255-10.745-24-24-24H127.882l65.574-65.573c9.373-9.373 9.373-24.569 0-33.941l-16.971-16.971c-9.373-9.373-24.569-9.373-33.941 0L7.029 239.029c-9.373 9.373-9.373 24.568 0 33.941l135.515 135.515c9.373 9.373 24.569 9.373 33.941 0l16.971-16.971c9.373-9.372 9.373-24.568 0-33.941z\"]\n};\nvar faLongArrowRight = {\n prefix: 'fas',\n iconName: 'long-arrow-right',\n icon: [448, 512, [], \"f178\", \"M254.544 154.427L320.118 220H24c-13.255 0-24 10.745-24 24v24c0 13.255 10.745 24 24 24h296.118l-65.574 65.573c-9.373 9.373-9.373 24.569 0 33.941l16.971 16.971c9.373 9.373 24.569 9.373 33.941 0L440.97 272.97c9.373-9.373 9.373-24.569 0-33.941L305.456 103.515c-9.373-9.373-24.569-9.373-33.941 0l-16.971 16.971c-9.373 9.372-9.373 24.568 0 33.941z\"]\n};\nvar faLongArrowUp = {\n prefix: 'fas',\n iconName: 'long-arrow-up',\n icon: [320, 512, [], \"f176\", \"M58.427 225.456L124 159.882V456c0 13.255 10.745 24 24 24h24c13.255 0 24-10.745 24-24V159.882l65.573 65.574c9.373 9.373 24.569 9.373 33.941 0l16.971-16.971c9.373-9.373 9.373-24.569 0-33.941L176.971 39.029c-9.373-9.373-24.568-9.373-33.941 0L7.515 174.544c-9.373 9.373-9.373 24.569 0 33.941l16.971 16.971c9.372 9.373 24.568 9.373 33.941 0z\"]\n};\nvar faLoveseat = {\n prefix: 'fas',\n iconName: 'loveseat',\n icon: [512, 512, [], \"f4cc\", \"M160 224v64h192v-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 64zm288-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-16h256v16c0 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\"]\n};\nvar faLowVision = {\n prefix: 'fas',\n iconName: 'low-vision',\n icon: [576, 512, [], \"f2a8\", \"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\"]\n};\nvar faLuchador = {\n prefix: 'fas',\n iconName: 'luchador',\n icon: [448, 512, [], \"f455\", \"M190.2 256H144c-26.5 0-48-23.9-48-53.3V192h48c26.5 0 48 23.9 48 53.3v8.7c-.6.7-1.2 1.3-1.8 2zm33.8 64h38.7c-6.8-14.8-18.5-33.4-38.7-53.3-20.2 19.9-31.9 38.5-38.7 53.3H224zm-64 32c-17.6 0-32 14.4-32 32s14.4 32 32 32h128c17.6 0 32-14.4 32-32s-14.4-32-32-32H160zm96-106.7v8.7c.6.7 1.2 1.3 1.8 2H304c26.5 0 48-23.9 48-53.3V192h-48c-26.5 0-48 23.9-48 53.3zM448 224v128c0 88.4-71.6 160-160 160H160C71.6 512 0 440.4 0 352V224C0 100.3 100.3 0 224 0s224 100.3 224 224zm-64-52c0-6.6-5.4-12-12-12h-68c-37.9 0-69.3 28.3-77.5 66.2-.9-.7-4.2-.7-5.1 0C213.3 188.3 182 160 144 160H76c-6.6 0-12 5.4-12 12v30.7c0 47.1 35.8 85.3 80 85.3h22.4c-7.4 12.2-12.5 23.5-15.8 32.9-30.9 4.6-54.6 31-54.6 63.1 0 35.5 29.4 64 64.9 64H287c35.5 0 64.9-28.5 64.9-64 0-32.1-23.7-58.5-54.6-63.1-3.3-9.5-8.4-20.7-15.8-32.9H304c44.2 0 80-38.2 80-85.3V172z\"]\n};\nvar faLuggageCart = {\n prefix: 'fas',\n iconName: 'luggage-cart',\n icon: [640, 512, [], \"f59d\", \"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\"]\n};\nvar faLungs = {\n prefix: 'fas',\n iconName: 'lungs',\n icon: [640, 512, [], \"f604\", \"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\"]\n};\nvar faLungsVirus = {\n prefix: 'fas',\n iconName: 'lungs-virus',\n icon: [640, 512, [], \"e067\", \"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\"]\n};\nvar faMace = {\n prefix: 'fas',\n iconName: 'mace',\n icon: [512, 512, [], \"f6f8\", \"M170.65 296.09L4.69 462.06c-6.25 6.25-6.25 16.38 0 22.63l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0l165.97-165.97a161.122 161.122 0 0 1-45.27-45.26zm330.33-101.12l-74.99-23.77c-12.6-41.73-45.59-74.19-87.67-85.95L313.05 10.8c-4.92-14.5-17.46-14.37-22.08.22l-23.77 75c-41.73 12.6-74.19 45.59-85.96 87.67l-74.44 25.26c-14.5 4.92-14.37 17.46.22 22.08l74.99 23.77c12.6 41.73 45.59 74.19 87.67 85.96l25.26 74.44c4.92 14.5 17.46 14.37 22.08-.22l23.77-74.99c41.73-12.6 74.19-45.59 85.95-87.67l74.44-25.26c14.52-4.93 14.39-17.47-.2-22.09zM304 240c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"]\n};\nvar faMagic = {\n prefix: 'fas',\n iconName: 'magic',\n icon: [512, 512, [], \"f0d0\", \"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\"]\n};\nvar faMagnet = {\n prefix: 'fas',\n iconName: 'magnet',\n icon: [512, 512, [], \"f076\", \"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\"]\n};\nvar faMailBulk = {\n prefix: 'fas',\n iconName: 'mail-bulk',\n icon: [576, 512, [], \"f674\", \"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\"]\n};\nvar faMailbox = {\n prefix: 'fas',\n iconName: 'mailbox',\n icon: [576, 512, [], \"f813\", \"M144 64A144 144 0 0 0 0 208v208a32 32 0 0 0 32 32h256V208A144 144 0 0 0 144 64zm80 176a16 16 0 0 1-16 16H80a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h128a16 16 0 0 1 16 16zM432 64H244.87C290.23 95.87 320 148.48 320 208v240h224a32 32 0 0 0 32-32V208A144 144 0 0 0 432 64zm80 208a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16v-48h-56a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h104a16 16 0 0 1 16 16z\"]\n};\nvar faMale = {\n prefix: 'fas',\n iconName: 'male',\n icon: [192, 512, [], \"f183\", \"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\"]\n};\nvar faMandolin = {\n prefix: 'fas',\n iconName: 'mandolin',\n icon: [512, 512, [], \"f6f9\", \"M507.31 50.67l-46-46a16 16 0 0 0-19.81-2.25l-64 40.07a32 32 0 0 0-14 19.11L349 117.73l-74.46 74.46C90.38 190.67 46 241 30.74 256.28c-46.81 46.79-39.52 150.36 17.54 207.45s160.65 64.34 207.44 17.53C271 466 321.32 421.62 319.8 237.45L394.27 163l56.11-14.51a32 32 0 0 0 19.11-14l40.07-64a16 16 0 0 0-2.25-19.82zM208 352a48 48 0 1 1 48-48 48 48 0 0 1-48 48z\"]\n};\nvar faMap = {\n prefix: 'fas',\n iconName: 'map',\n icon: [576, 512, [], \"f279\", \"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\"]\n};\nvar faMapMarked = {\n prefix: 'fas',\n iconName: 'map-marked',\n icon: [576, 512, [], \"f59f\", \"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\"]\n};\nvar faMapMarkedAlt = {\n prefix: 'fas',\n iconName: 'map-marked-alt',\n icon: [576, 512, [], \"f5a0\", \"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\"]\n};\nvar faMapMarker = {\n prefix: 'fas',\n iconName: 'map-marker',\n icon: [384, 512, [], \"f041\", \"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\"]\n};\nvar faMapMarkerAlt = {\n prefix: 'fas',\n iconName: 'map-marker-alt',\n icon: [384, 512, [], \"f3c5\", \"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\"]\n};\nvar faMapMarkerAltSlash = {\n prefix: 'fas',\n iconName: 'map-marker-alt-slash',\n icon: [640, 512, [], \"f605\", \"M300.8 502.4c9.6 12.8 28.8 12.8 38.4 0 18.6-26.69 35.23-50.32 50.14-71.47L131.47 231.62c10.71 52.55 50.15 99.78 169.33 270.78zm333.02-44.3L462.41 325.62C502.09 265.52 512 238.3 512 192 512 86.4 425.6 0 320 0c-68.2 0-128.24 36.13-162.3 90.12L45.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.45zm-263.7-203.81L247 159.13c12.34-27.96 40.01-47.13 73-47.13 44.8 0 80 35.2 80 80 0 25.57-11.71 47.74-29.88 62.29z\"]\n};\nvar faMapMarkerCheck = {\n prefix: 'fas',\n iconName: 'map-marker-check',\n icon: [384, 512, [], \"f606\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 9.6 12.8 28.8 12.8 38.4 0C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm114.08 163.83L175.04 293.82c-4.31 4.28-11.28 4.25-15.55-.06l-75.72-76.33c-4.28-4.31-4.25-11.28.06-15.56l26.03-25.82c4.31-4.28 11.28-4.25 15.56.06l42.15 42.49 97.2-96.42c4.31-4.28 11.28-4.25 15.55.06l25.82 26.03c4.28 4.32 4.25 11.28-.06 15.56z\"]\n};\nvar faMapMarkerEdit = {\n prefix: 'fas',\n iconName: 'map-marker-edit',\n icon: [384, 512, [], \"f607\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 9.6 12.8 28.8 12.8 38.4 0C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm-43.17 283.15l-42.83 4.8c-5.78.62-10.57-4.27-9.95-9.95l4.8-42.83 85.54-85.54 47.98 47.98-85.54 85.54zm133.91-133.9l-28.26 28.26-47.98-47.98 28.26-28.26c7.02-7.02 18.39-7.02 25.41 0l22.57 22.57c7.02 7.01 7.02 18.39 0 25.41z\"]\n};\nvar faMapMarkerExclamation = {\n prefix: 'fas',\n iconName: 'map-marker-exclamation',\n icon: [384, 512, [], \"f608\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 9.6 12.8 28.8 12.8 38.4 0C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm0 336c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm25.44-110.41c-.82 8.18-7.7 14.41-15.92 14.41h-19.04c-8.22 0-15.1-6.23-15.92-14.41l-12.8-128c-.94-9.42 6.45-17.59 15.92-17.59h44.64c9.47 0 16.86 8.17 15.92 17.59l-12.8 128z\"]\n};\nvar faMapMarkerMinus = {\n prefix: 'fas',\n iconName: 'map-marker-minus',\n icon: [384, 512, [], \"f609\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 9.6 12.8 28.8 12.8 38.4 0C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm112 200c0 8.84-7.16 16-16 16H96c-8.84 0-16-7.16-16-16v-16c0-8.84 7.16-16 16-16h192c8.84 0 16 7.16 16 16v16z\"]\n};\nvar faMapMarkerPlus = {\n prefix: 'fas',\n iconName: 'map-marker-plus',\n icon: [384, 512, [], \"f60a\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 9.6 12.8 28.8 12.8 38.4 0C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm112 200c0 8.84-7.16 16-16 16h-72v72c0 8.84-7.16 16-16 16h-16c-8.84 0-16-7.16-16-16v-72H96c-8.84 0-16-7.16-16-16v-16c0-8.84 7.16-16 16-16h72V96c0-8.84 7.16-16 16-16h16c8.84 0 16 7.16 16 16v72h72c8.84 0 16 7.16 16 16v16z\"]\n};\nvar faMapMarkerQuestion = {\n prefix: 'fas',\n iconName: 'map-marker-question',\n icon: [384, 512, [], \"f60b\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 9.6 12.8 28.8 12.8 38.4 0C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm0 352c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm26.67-113.27v1.43c0 8.75-7.09 15.84-15.84 15.84h-16.32c-8.75 0-15.84-7.09-15.84-15.84V224c0-9.1 5.19-17.43 13.33-21.5 30.61-15.31 50.67-26.54 50.67-42.5 0-19.39-14.02-40-40-40-17.93 0-33.13 11.84-38.2 28.12-2.15 6.9-8.11 11.88-15.33 11.88H124.3c-10.24 0-17.72-9.56-15.44-19.55 8.91-39.15 44-68.45 85.81-68.45 55.08 0 88 44.75 88 88 0 40.95-32.75 62.47-64 78.73z\"]\n};\nvar faMapMarkerSlash = {\n prefix: 'fas',\n iconName: 'map-marker-slash',\n icon: [640, 512, [], \"f60c\", \"M633.82 458.1L462.41 325.62C502.09 265.52 512 238.3 512 192 512 86.4 425.6 0 320 0c-68.2 0-128.24 36.13-162.3 90.12L45.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.45zM300.8 502.4c9.6 12.8 28.8 12.8 38.4 0 18.6-26.69 35.23-50.32 50.14-71.47L131.47 231.62c10.71 52.55 50.15 99.78 169.33 270.78z\"]\n};\nvar faMapMarkerSmile = {\n prefix: 'fas',\n iconName: 'map-marker-smile',\n icon: [384, 512, [], \"f60d\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 9.6 12.8 28.8 12.8 38.4 0C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm64 117.16c14.82 0 26.84 12.02 26.84 26.84s-12.02 26.84-26.84 26.84-26.84-12.02-26.84-26.84 12.02-26.84 26.84-26.84zm-128 0c14.82 0 26.84 12.02 26.84 26.84s-12.02 26.84-26.84 26.84-26.84-12.02-26.84-26.84 12.02-26.84 26.84-26.84zm164.17 140.97C267.3 287.28 230.78 304 192 304c-38.75 0-75.27-16.72-100.16-45.86-5.75-6.72-4.95-16.81 1.77-22.55 6.69-5.73 16.81-4.97 22.55 1.77C134.98 259.38 162.62 272 192 272c29.41 0 57.03-12.63 75.83-34.66 5.78-6.73 15.86-7.53 22.56-1.78 6.72 5.74 7.52 15.85 1.78 22.57z\"]\n};\nvar faMapMarkerTimes = {\n prefix: 'fas',\n iconName: 'map-marker-times',\n icon: [384, 512, [], \"f60e\", \"M192 0C86.4 0 0 86.4 0 192c0 76.8 25.6 99.2 172.8 310.4 9.6 12.8 28.8 12.8 38.4 0C358.4 291.2 384 268.8 384 192 384 86.4 297.6 0 192 0zm84.85 242.91c6.25 6.25 6.25 16.38 0 22.63l-11.31 11.31c-6.25 6.25-16.38 6.25-22.63 0L192 225.94l-50.91 50.91c-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.63L158.06 192l-50.91-50.91c-6.25-6.25-6.25-16.38 0-22.63l11.31-11.31c6.25-6.25 16.38-6.25 22.63 0L192 158.06l50.91-50.91c6.25-6.25 16.38-6.25 22.63 0l11.31 11.31c6.25 6.25 6.25 16.38 0 22.63L225.94 192l50.91 50.91z\"]\n};\nvar faMapPin = {\n prefix: 'fas',\n iconName: 'map-pin',\n icon: [288, 512, [], \"f276\", \"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\"]\n};\nvar faMapSigns = {\n prefix: 'fas',\n iconName: 'map-signs',\n icon: [512, 512, [], \"f277\", \"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\"]\n};\nvar faMarker = {\n prefix: 'fas',\n iconName: 'marker',\n icon: [512, 512, [], \"f5a1\", \"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\"]\n};\nvar faMars = {\n prefix: 'fas',\n iconName: 'mars',\n icon: [384, 512, [], \"f222\", \"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\"]\n};\nvar faMarsDouble = {\n prefix: 'fas',\n iconName: 'mars-double',\n icon: [512, 512, [], \"f227\", \"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\"]\n};\nvar faMarsStroke = {\n prefix: 'fas',\n iconName: 'mars-stroke',\n icon: [384, 512, [], \"f229\", \"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\"]\n};\nvar faMarsStrokeH = {\n prefix: 'fas',\n iconName: 'mars-stroke-h',\n icon: [480, 512, [], \"f22b\", \"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\"]\n};\nvar faMarsStrokeV = {\n prefix: 'fas',\n iconName: 'mars-stroke-v',\n icon: [288, 512, [], \"f22a\", \"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\"]\n};\nvar faMask = {\n prefix: 'fas',\n iconName: 'mask',\n icon: [640, 512, [], \"f6fa\", \"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\"]\n};\nvar faMeat = {\n prefix: 'fas',\n iconName: 'meat',\n icon: [512, 512, [], \"f814\", \"M444 68.52C399.45 24.05 345.11 0 299.17 0c-23.64 0-44.77 6.79-61.47 20a41.83 41.83 0 0 0-7.3 5.82C191.68 64.5 128.14 139.6 128.14 209.42v100.37l-8.61 8.6c-9.71 9.69-24 11.07-36.79 6a60.33 60.33 0 0 0-65 98.72c15.26 15.28 36.51 19.59 56.13 15.1-4.49 19.6-.18 40.83 15.11 56.1a60.36 60.36 0 0 0 98.83-65c-5.1-12.73-3.72-27 6-36.75l8.6-8.59h100.47c69.89 0 145.07-63.46 183.8-102.15a40.86 40.86 0 0 0 6.66-9c37.42-49.4 17.37-137.63-49.34-204.3zm8.73 179.39c-9.76 9.75-24.3 11.8-34.79 11.8-34.72 0-77.19-20.87-110.82-54.47-27.19-27.16-46.31-60.32-52.45-91-4.74-23.7-1.19-43.56 9.74-54.48C274.13 50.05 288.69 48 299.18 48c34.72 0 77.18 20.87 110.82 54.46 53.88 53.84 67 121.19 42.7 145.45zM331.89 127.23c-9.81 9.8-5.84 29.67 8.88 44.37s34.61 18.68 44.42 8.87 5.84-29.66-8.88-44.37-34.61-18.67-44.42-8.87z\"]\n};\nvar faMedal = {\n prefix: 'fas',\n iconName: 'medal',\n icon: [512, 512, [], \"f5a2\", \"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\"]\n};\nvar faMedkit = {\n prefix: 'fas',\n iconName: 'medkit',\n icon: [512, 512, [], \"f0fa\", \"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\"]\n};\nvar faMegaphone = {\n prefix: 'fas',\n iconName: 'megaphone',\n icon: [576, 512, [], \"f675\", \"M32 176c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32 11.38 0 20.9-6.28 26.57-15.22l106.99 32.3c-3.35 9.76-5.56 20.04-5.56 30.92 0 52.94 43.06 96 96 96 44.49 0 81.66-30.57 92.5-71.7L480 448V64L58.57 191.22C52.9 182.28 43.38 176 32 176zm179.29 190.88l91.47 27.61C297.95 415.92 278.85 432 256 432c-26.47 0-48-21.53-48-48 0-6.05 1.24-11.79 3.29-17.12zM560 32h-32c-8.84 0-16 7.16-16 16v416c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16z\"]\n};\nvar faMeh = {\n prefix: 'fas',\n iconName: 'meh',\n icon: [496, 512, [], \"f11a\", \"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\"]\n};\nvar faMehBlank = {\n prefix: 'fas',\n iconName: 'meh-blank',\n icon: [496, 512, [], \"f5a4\", \"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\"]\n};\nvar faMehRollingEyes = {\n prefix: 'fas',\n iconName: 'meh-rolling-eyes',\n icon: [496, 512, [], \"f5a5\", \"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\"]\n};\nvar faMemory = {\n prefix: 'fas',\n iconName: 'memory',\n icon: [640, 512, [], \"f538\", \"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\"]\n};\nvar faMenorah = {\n prefix: 'fas',\n iconName: 'menorah',\n icon: [640, 512, [], \"f676\", \"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\"]\n};\nvar faMercury = {\n prefix: 'fas',\n iconName: 'mercury',\n icon: [288, 512, [], \"f223\", \"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\"]\n};\nvar faMeteor = {\n prefix: 'fas',\n iconName: 'meteor',\n icon: [512, 512, [], \"f753\", \"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\"]\n};\nvar faMicrochip = {\n prefix: 'fas',\n iconName: 'microchip',\n icon: [512, 512, [], \"f2db\", \"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\"]\n};\nvar faMicrophone = {\n prefix: 'fas',\n iconName: 'microphone',\n icon: [352, 512, [], \"f130\", \"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\"]\n};\nvar faMicrophoneAlt = {\n prefix: 'fas',\n iconName: 'microphone-alt',\n icon: [352, 512, [], \"f3c9\", \"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\"]\n};\nvar faMicrophoneAltSlash = {\n prefix: 'fas',\n iconName: 'microphone-alt-slash',\n icon: [640, 512, [], \"f539\", \"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\"]\n};\nvar faMicrophoneSlash = {\n prefix: 'fas',\n iconName: 'microphone-slash',\n icon: [640, 512, [], \"f131\", \"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\"]\n};\nvar faMicrophoneStand = {\n prefix: 'fas',\n iconName: 'microphone-stand',\n icon: [512, 512, [], \"f8cb\", \"M289.54 60.53c-23.85 23.84-34.57 55.55-33 86.77l108.15 108.14c31.22 1.58 62.94-9.14 86.78-33l2.19-2.18L291.72 58.34zM6.74 423.18a26.67 26.67 0 0 0 1.07 36.57l44.38 44.37a26.74 26.74 0 0 0 36.63 1.14L224 385.93V496a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V329.44L344 280 232 168zM478.46 33.54a114.49 114.49 0 0 0-161.93 0l-2.19 2.18 161.94 161.93 2.18-2.18a114.49 114.49 0 0 0 0-161.93z\"]\n};\nvar faMicroscope = {\n prefix: 'fas',\n iconName: 'microscope',\n icon: [512, 512, [], \"f610\", \"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\"]\n};\nvar faMicrowave = {\n prefix: 'fas',\n iconName: 'microwave',\n icon: [512, 512, [], \"e01b\", \"M464,64H48A48,48,0,0,0,0,112V368a48,48,0,0,0,48,48h0l24,32h48l24-32H368l24,32h48l24-32h0a48,48,0,0,0,48-48V112A48,48,0,0,0,464,64ZM384,352H64V128H384Zm64-72a24,24,0,1,1,24-24A24,24,0,0,1,448,280Zm0-96a24,24,0,1,1,24-24A24,24,0,0,1,448,184Z\"]\n};\nvar faMindShare = {\n prefix: 'fas',\n iconName: 'mind-share',\n icon: [640, 512, [], \"f677\", \"M410.4 273.1c7-1 13.3-1.1 18.6-1.1h51v-15.2c0-20 12-37.3 29-44.8 2.8-7.7 4.8-15.8 4.8-24.5 0-31.3-19.3-58.1-46.7-69.3 1-4.2 1.6-8.6 1.6-13.2 0-33.1-27-60-60.2-60-.7 0-1.4.2-2.1.2-6.6-25.9-30-45.2-58.2-45.2C315 0 288 26.9 288 60v324c12.6-57.1 64-102.3 122.4-110.9zM195.8 0c-28.1 0-51.5 19.3-58.2 45.2-.7 0-1.4-.2-2.1-.2-33.3 0-60.2 26.9-60.2 60 0 4.5.6 8.9 1.6 13.2-27.4 11.2-46.7 38-46.7 69.3 0 11.8 3 22.8 7.8 32.7-22.6 13-38 37-38 64.8 0 31.3 19.2 58 46.5 69.3-.8 4.3-1.3 8.7-1.3 13.2 0 37.3 30.3 67.5 67.8 67.5 3.9 0 7.6-.5 11.3-1.1 9 26.7 34.1 46.1 64 46.1 37.4 0 67.8-30.2 67.8-67.5L256 60c0-33.1-27-60-60.2-60zM635 339.8l-96-95.2c-10.1-10-27-2.6-27 12.2V304h-79.9c-5.6 0-11.2-.1-17 .8-47.1 6.9-85.6 44.5-93.4 91.5C313.9 443 335 486.7 370 510c9.8 6.5 21.6-3.2 17.8-14.4-9-26.6-5.6-95.5 60.3-95.5h64v47.2c0 14.8 16.9 22.2 27 12.2l96-95.2c6.6-6.7 6.6-17.9-.1-24.5z\"]\n};\nvar faMinus = {\n prefix: 'fas',\n iconName: 'minus',\n icon: [448, 512, [], \"f068\", \"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\"]\n};\nvar faMinusCircle = {\n prefix: 'fas',\n iconName: 'minus-circle',\n icon: [512, 512, [], \"f056\", \"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\"]\n};\nvar faMinusHexagon = {\n prefix: 'fas',\n iconName: 'minus-hexagon',\n icon: [576, 512, [], \"f307\", \"M553.5 231.8c8.7 14.9 8.7 33.4 0 48.4l-112 192c-8.6 14.7-24.4 23.8-41.5 23.8H176c-17.1 0-32.9-9.1-41.5-23.8l-112-192c-8.7-14.9-8.7-33.4 0-48.4l112-192C143.1 25.1 158.9 16 176 16h224c17.1 0 32.9 9.1 41.5 23.8l112 192zM420 296c6.6 0 12-5.4 12-12v-56c0-6.6-5.4-12-12-12H156c-6.6 0-12 5.4-12 12v56c0 6.6 5.4 12 12 12h264z\"]\n};\nvar faMinusOctagon = {\n prefix: 'fas',\n iconName: 'minus-octagon',\n icon: [512, 512, [], \"f308\", \"M497.9 150.5c9 9 14.1 21.2 14.1 33.9v143.1c0 12.7-5.1 24.9-14.1 33.9L361.5 497.9c-9 9-21.2 14.1-33.9 14.1H184.5c-12.7 0-24.9-5.1-33.9-14.1L14.1 361.5c-9-9-14.1-21.2-14.1-33.9V184.5c0-12.7 5.1-24.9 14.1-33.9L150.5 14.1c9-9 21.2-14.1 33.9-14.1h143.1c12.7 0 24.9 5.1 33.9 14.1l136.5 136.4zM388 296c6.6 0 12-5.4 12-12v-56c0-6.6-5.4-12-12-12H124c-6.6 0-12 5.4-12 12v56c0 6.6 5.4 12 12 12h264z\"]\n};\nvar faMinusSquare = {\n prefix: 'fas',\n iconName: 'minus-square',\n icon: [448, 512, [], \"f146\", \"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\"]\n};\nvar faMistletoe = {\n prefix: 'fas',\n iconName: 'mistletoe',\n icon: [576, 512, [], \"f7b4\", \"M373.3 117.3c23.6 0 42.7-19.1 42.7-42.7S396.9 32 373.3 32s-42.7 19.1-42.7 42.7 19.2 42.6 42.7 42.6zm168.8 144.1c-26-26-89.6-38.6-130.9-44.2L312 117.1c-8.4-12.1-13.3-26.6-13.3-42.4s5-30.3 13.3-42.4V16c0-8.8-7.2-16-16-16h-16c-8.8 0-16 7.2-16 16v102.1l-99.1 99.1C123.6 222.8 60 235.4 34 261.4c-40 40-45.4 99.4-12.1 132.7 33.3 33.3 92.8 27.9 132.7-12.1 11.4-11.4 20.1-30.2 26.9-51 6.8 12.3 19.5 20.9 34.5 20.9 22.1 0 40-17.9 40-40s-17.9-40-40-40c-8.2 0-15.4 3.1-21.7 7.3 1.8-10 3.4-19.6 4.5-28.2l65.2-65.2v72.8c14.6 13.2 24 32.1 24 53.3 0 39.7-32.3 72-72 72-6.2 0-12.1-1-17.8-2.5-3.7 9.9-6.2 19.5-6.2 28.1 0 56.6 43 102.4 96 102.4s96-45.8 96-102.4c0-38.1-43.6-94.6-72-127.3v-96.3l65.2 65.2c5.6 41.3 18.2 104.9 44.2 130.9 40 40 99.4 45.4 132.7 12.1 33.4-33.3 28-92.7-12-132.7z\"]\n};\nvar faMitten = {\n prefix: 'fas',\n iconName: 'mitten',\n icon: [448, 512, [], \"f7b5\", \"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\"]\n};\nvar faMobile = {\n prefix: 'fas',\n iconName: 'mobile',\n icon: [320, 512, [], \"f10b\", \"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\"]\n};\nvar faMobileAlt = {\n prefix: 'fas',\n iconName: 'mobile-alt',\n icon: [320, 512, [], \"f3cd\", \"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\"]\n};\nvar faMobileAndroid = {\n prefix: 'fas',\n iconName: 'mobile-android',\n icon: [320, 512, [], \"f3ce\", \"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-48zm-64 452c0 6.6-5.4 12-12 12h-72c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12v8z\"]\n};\nvar faMobileAndroidAlt = {\n prefix: 'fas',\n iconName: 'mobile-android-alt',\n icon: [320, 512, [], \"f3cf\", \"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-48zm-64 452c0 6.6-5.4 12-12 12h-72c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12v8zm64-80c0 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\"]\n};\nvar faMoneyBill = {\n prefix: 'fas',\n iconName: 'money-bill',\n icon: [640, 512, [], \"f0d6\", \"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\"]\n};\nvar faMoneyBillAlt = {\n prefix: 'fas',\n iconName: 'money-bill-alt',\n icon: [640, 512, [], \"f3d1\", \"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\"]\n};\nvar faMoneyBillWave = {\n prefix: 'fas',\n iconName: 'money-bill-wave',\n icon: [640, 512, [], \"f53a\", \"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\"]\n};\nvar faMoneyBillWaveAlt = {\n prefix: 'fas',\n iconName: 'money-bill-wave-alt',\n icon: [640, 512, [], \"f53b\", \"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\"]\n};\nvar faMoneyCheck = {\n prefix: 'fas',\n iconName: 'money-check',\n icon: [640, 512, [], \"f53c\", \"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\"]\n};\nvar faMoneyCheckAlt = {\n prefix: 'fas',\n iconName: 'money-check-alt',\n icon: [640, 512, [], \"f53d\", \"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\"]\n};\nvar faMoneyCheckEdit = {\n prefix: 'fas',\n iconName: 'money-check-edit',\n icon: [640, 512, [], \"f872\", \"M462.88 374.62a32 32 0 0 0 22.63 9.38H528a16 16 0 0 0 16-16v-42.46a32 32 0 0 0-9.38-22.63L303.19 71.47l-71.7 71.7zm-254-254l71.7-71.8L238.79 7a24.1 24.1 0 0 0-33.9 0L167 44.87a24 24 0 0 0 0 33.8zM608 160H437l120.27 120.28A64 64 0 0 1 576 325.54V400a16 16 0 0 1-16 16H104a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h323l-64-64H104a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h227L203 160H32a32 32 0 0 0-32 32v288a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V192a32 32 0 0 0-32-32z\"]\n};\nvar faMoneyCheckEditAlt = {\n prefix: 'fas',\n iconName: 'money-check-edit-alt',\n icon: [640, 512, [], \"f873\", \"M204.78 116.47l4.1 4.1 71.69-71.8L238.78 7a24.1 24.1 0 0 0-33.9 0L167 44.87a24 24 0 0 0 0 33.8zM608 160H437l120.25 120.28A64 64 0 0 1 576 325.54V400a16 16 0 0 1-16 16H264a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h163l-64-64h-99a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h67L203 160H32a32 32 0 0 0-32 32v288a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V192a32 32 0 0 0-32-32zM144 415.88V432a8 8 0 0 1-8 8h-16a8 8 0 0 1-8-8v-16.29a57.26 57.26 0 0 1-31.37-11.35 8 8 0 0 1-.57-12.14L91.81 381a8.21 8.21 0 0 1 10.13-.73 24.08 24.08 0 0 0 12.82 3.73h28.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.07V240a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v16.29a57.18 57.18 0 0 1 31.37 11.35 8 8 0 0 1 .57 12.14L164.18 291a8.22 8.22 0 0 1-10.14.73 23.93 23.93 0 0 0-12.81-3.73h-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.57 23.42 31.57 43.39 0 24.53-19.04 44.44-42.66 45.07zm318.87-41.25a32 32 0 0 0 22.62 9.37H528a16 16 0 0 0 16-16v-42.46a32 32 0 0 0-9.37-22.63L303.17 71.47l-71.7 71.7z\"]\n};\nvar faMonitorHeartRate = {\n prefix: 'fas',\n iconName: 'monitor-heart-rate',\n icon: [576, 512, [], \"f611\", \"M480 96H96v160h100.95c3.03 0 5.8 1.71 7.15 4.42l19.9 39.8 49.69-99.38c5.9-11.79 22.72-11.79 28.62 0L329.89 256H400c8.84 0 16 7.16 16 16s-7.16 16-16 16h-89.89L288 243.78l-49.69 99.38c-5.9 11.79-22.72 11.79-28.62 0L182.11 288H96v128h384V96zm48-96H48C21.49 0 0 21.49 0 48v416c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V48c0-26.51-21.49-48-48-48zm-16 448H64V64h448v384z\"]\n};\nvar faMonkey = {\n prefix: 'fas',\n iconName: 'monkey',\n icon: [640, 512, [], \"f6fb\", \"M549.47 267.22C529.43 280.25 505.64 288 480 288c-56.67 0-104.29-37.26-121.08-88.38C262.91 224.9 192 312.05 192 416v32c-17.64 0-32-14.36-32-32V176c0-44.11-35.89-80-80-80S0 131.89 0 176v48c0 17.67 14.33 32 32 32s32-14.33 32-32v-48c0-8.83 7.17-16 16-16s16 7.17 16 16v240c0 52.94 43.06 96 96 96h240c8.84 0 16-7.16 16-16v-16c0-17.67-14.33-32-32-32h-64l155.68-103.79 34.68 104.02 1.64 10.11V496c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-37.61c0-10.34-1.67-20.61-4.94-30.42l-53.59-160.75zM592 64h-21.88C556.9 26.8 521.74 0 480 0s-76.9 26.8-90.12 64H368c-26.51 0-48 21.49-48 48s21.49 48 48 48h16c0 53.02 42.98 96 96 96s96-42.98 96-96h16c26.51 0 48-21.49 48-48s-21.49-48-48-48zm-152 56c-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\"]\n};\nvar faMonument = {\n prefix: 'fas',\n iconName: 'monument',\n icon: [384, 512, [], \"f5a6\", \"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\"]\n};\nvar faMoon = {\n prefix: 'fas',\n iconName: 'moon',\n icon: [512, 512, [], \"f186\", \"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\"]\n};\nvar faMoonCloud = {\n prefix: 'fas',\n iconName: 'moon-cloud',\n icon: [576, 512, [], \"f754\", \"M256 256c-12 0-23.1 3.5-32.7 9.2-3.5-41-37.4-73.2-79.3-73.2-38.8 0-71.1 27.6-78.4 64.2-.5 0-1-.2-1.6-.2-35.3 0-64 28.7-64 64s28.7 64 64 64h192c35.3 0 64-28.7 64-64s-28.7-64-64-64zm309.3 106.4c-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.7-11.6-2.1-23.3-3.2-35-3.2-90.8 0-166.7 63.2-186.6 148.1 2.5 4 4.9 8.2 6.9 12.6 3.6-.4 7.1-.6 10.7-.6 52.9 0 96 43.1 96 96 0 36.1-20.2 67.2-49.7 83.6 33.2 27.7 76 44.4 122.7 44.4 59.2 0 113.2-26.9 149-71.1 5.2-6.6-.6-16.2-8.8-14.6z\"]\n};\nvar faMoonStars = {\n prefix: 'fas',\n iconName: 'moon-stars',\n icon: [512, 512, [], \"f755\", \"M332.2 426.4c-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.7C108.7 109.4 0 200 0 320c0 106 85.8 192 191.8 192 59.2 0 113.2-26.9 149-71.1 5.3-6.5-.5-16.1-8.6-14.5zM304 96l16-32 32-16-32-16-16-32-16 32-32 16 32 16 16 32zm154.7 85.3L432 128l-26.7 53.3L352 208l53.3 26.7L432 288l26.7-53.3L512 208l-53.3-26.7z\"]\n};\nvar faMortarPestle = {\n prefix: 'fas',\n iconName: 'mortar-pestle',\n icon: [512, 512, [], \"f5a7\", \"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\"]\n};\nvar faMosque = {\n prefix: 'fas',\n iconName: 'mosque',\n icon: [640, 512, [], \"f678\", \"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\"]\n};\nvar faMotorcycle = {\n prefix: 'fas',\n iconName: 'motorcycle',\n icon: [640, 512, [], \"f21c\", \"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\"]\n};\nvar faMountain = {\n prefix: 'fas',\n iconName: 'mountain',\n icon: [640, 512, [], \"f6fc\", \"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\"]\n};\nvar faMountains = {\n prefix: 'fas',\n iconName: 'mountains',\n icon: [640, 512, [], \"f6fd\", \"M635.73 406.91l-194.04-297.6c-11.57-17.75-39.8-17.75-51.37 0l-32.84 50.37 67.68 105.68c2.38 3.72 1.3 8.67-2.42 11.05l-13.46 8.62c-3.72 2.38-8.67 1.3-11.05-2.42l-59.9-93.54-70.81-110.55c-12.4-19.36-42.64-19.36-55.04 0L4.58 403.18C-7.99 422.81 6.81 448 30.92 448h580.22c22.5 0 36.32-23.09 24.59-41.09z\"]\n};\nvar faMouse = {\n prefix: 'fas',\n iconName: 'mouse',\n icon: [384, 512, [], \"f8cc\", \"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\"]\n};\nvar faMouseAlt = {\n prefix: 'fas',\n iconName: 'mouse-alt',\n icon: [384, 512, [], \"f8cd\", \"M224 0h-64A160 160 0 0 0 0 160v192a160 160 0 0 0 160 160h64a160 160 0 0 0 160-160V160A160 160 0 0 0 224 0zm0 160a32 32 0 0 1-64 0v-32a32 32 0 0 1 64 0z\"]\n};\nvar faMousePointer = {\n prefix: 'fas',\n iconName: 'mouse-pointer',\n icon: [320, 512, [], \"f245\", \"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\"]\n};\nvar faMp3Player = {\n prefix: 'fas',\n iconName: 'mp3-player',\n icon: [384, 512, [], \"f8ce\", \"M336 0H48A48 48 0 0 0 0 48v416a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V48a48 48 0 0 0-48-48zM192 448a96 96 0 1 1 96-96 96 96 0 0 1-96 96zm128-256H64V64h256zM192 320a32 32 0 1 0 32 32 32 32 0 0 0-32-32z\"]\n};\nvar faMug = {\n prefix: 'fas',\n iconName: 'mug',\n icon: [576, 512, [], \"f874\", \"M448 63H56a23.94 23.94 0 0 0-24 24v264a96 96 0 0 0 96 96h192a96 96 0 0 0 96-96v-32h32a128 128 0 0 0 0-256zm0 192h-32V127h32a64 64 0 0 1 0 128z\"]\n};\nvar faMugHot = {\n prefix: 'fas',\n iconName: 'mug-hot',\n icon: [512, 512, [], \"f7b6\", \"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\"]\n};\nvar faMugMarshmallows = {\n prefix: 'fas',\n iconName: 'mug-marshmallows',\n icon: [512, 512, [], \"f7b7\", \"M178.5 67.2l22.4-22.4c-5.9-7.3-14.5-12.4-24.6-12.4H64c-17.7 0-32 14.3-32 32v63.9h130.1c-5.5-21.1-.2-44.6 16.4-61.1zm18.2 61.2h151c7.2-12.3 6.1-28.1-4.4-38.6l-48.5-48.4c-12.5-12.5-32.8-12.5-45.3 0L201 89.8c-10.4 10.5-11.5 26.3-4.3 38.6zM400 160.3H160v63.5c0 17.7-14.3 32-32 32s-32-14.3-32-32v-63.5H32c-17.7 0-32 14.3-32 32v191.8c0 53 43 95.9 96 95.9h192c53 0 96-42.9 96-95.9h16c61.8 0 112-50.2 112-111.9s-50.2-111.9-112-111.9zm0 159.9h-16v-95.9h16c26.5 0 48 21.5 48 47.9s-21.5 48-48 48z\"]\n};\nvar faMugTea = {\n prefix: 'fas',\n iconName: 'mug-tea',\n icon: [640, 512, [], \"f875\", \"M595.6 416H12.36c-25 0-11.6 64 36 64h511.35c47.69 0 60.89-64 35.89-64zM192 384h192a96 96 0 0 0 96-96h32a128 128 0 0 0 0-256H240v64l38.63 38.63a32 32 0 0 1 9.37 22.62V224a32 32 0 0 1-32 32h-64a32 32 0 0 1-32-32v-66.75a32 32 0 0 1 9.37-22.62L208 96V32h-88a23.94 23.94 0 0 0-24 24v232a96 96 0 0 0 96 96zM480 96h32a64 64 0 0 1 0 128h-32z\"]\n};\nvar faMusic = {\n prefix: 'fas',\n iconName: 'music',\n icon: [512, 512, [], \"f001\", \"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\"]\n};\nvar faMusicAlt = {\n prefix: 'fas',\n iconName: 'music-alt',\n icon: [384, 512, [], \"f8cf\", \"M310.94 1.33l-96.53 28.51A32 32 0 0 0 192 60.34V360a148.76 148.76 0 0 0-48-8c-61.86 0-112 35.82-112 80s50.14 80 112 80 112-35.82 112-80V148.15l73-21.39a32 32 0 0 0 23-30.71V32a32 32 0 0 0-41.06-30.67z\"]\n};\nvar faMusicAltSlash = {\n prefix: 'fas',\n iconName: 'music-alt-slash',\n icon: [640, 512, [], \"f8d0\", \"M272 352c-61.86 0-112 35.82-112 80s50.14 80 112 80 112-35.82 112-80v-5.18l-94.91-73.36A144.39 144.39 0 0 0 272 352zm361.82 106.1L384 265V148.15l73-21.39a32 32 0 0 0 23-30.71V32a32 32 0 0 0-41.07-30.67L342.4 29.84a32 32 0 0 0-22.4 30.5v155.22L45.47 3.39A16 16 0 0 0 23 6.2L3.37 31.47a16 16 0 0 0 2.81 22.45l588.35 454.71a16 16 0 0 0 22.47-2.81l19.63-25.27a16 16 0 0 0-2.81-22.45z\"]\n};\nvar faMusicSlash = {\n prefix: 'fas',\n iconName: 'music-slash',\n icon: [640, 512, [], \"f8d1\", \"M192 387.92a139 139 0 0 0-32-3.92c-53 0-96 28.66-96 64s43 64 96 64 96-28.66 96-64V327.88l-64-49.46zm441.82 70.18l-65.06-50.28c4.51-7.37 7.24-15.35 7.24-23.82V32a32 32 0 0 0-41.62-30.49L214.41 96a31.85 31.85 0 0 0-21 21.73L45.47 3.39A16 16 0 0 0 23 6.2L3.37 31.47a16 16 0 0 0 2.81 22.45l588.35 454.71a16 16 0 0 0 22.47-2.81l19.63-25.27a16 16 0 0 0-2.81-22.45zM512 323.92a139 139 0 0 0-32-3.92 137 137 0 0 0-22.15 2.11l-156.61-121L512 139.3z\"]\n};\nvar faNarwhal = {\n prefix: 'fas',\n iconName: 'narwhal',\n icon: [640, 512, [], \"f6fe\", \"M600.83 211.05l38.9-166.17c1.04-4.46-.94-9.25-5.14-11.57-5.07-2.8-11.45-.96-14.25 4.11L535 192s.41.17 1.12.46C299.61 197.4 227.97 416 163.88 416 144.1 416 128 399.91 128 380.13v-97.99l49.75-30.51A32.007 32.007 0 0 0 192 225v-80.98c0-12.78-14.24-20.4-24.88-13.31L96 178.13l-71.12-47.42C14.24 123.63 0 131.25 0 144.03V225c0 10.7 5.35 20.69 14.25 26.62L64 282.14v97.99C64 435.2 108.8 480 163.88 480H576c35.35 0 64-28.65 64-64V288c0-31.6-15.54-59.45-39.17-76.95zM432 352c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faNetworkWired = {\n prefix: 'fas',\n iconName: 'network-wired',\n icon: [640, 512, [], \"f6ff\", \"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\"]\n};\nvar faNeuter = {\n prefix: 'fas',\n iconName: 'neuter',\n icon: [288, 512, [], \"f22c\", \"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\"]\n};\nvar faNewspaper = {\n prefix: 'fas',\n iconName: 'newspaper',\n icon: [576, 512, [], \"f1ea\", \"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\"]\n};\nvar faNotEqual = {\n prefix: 'fas',\n iconName: 'not-equal',\n icon: [448, 512, [], \"f53e\", \"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\"]\n};\nvar faNotesMedical = {\n prefix: 'fas',\n iconName: 'notes-medical',\n icon: [384, 512, [], \"f481\", \"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\"]\n};\nvar faObjectGroup = {\n prefix: 'fas',\n iconName: 'object-group',\n icon: [512, 512, [], \"f247\", \"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\"]\n};\nvar faObjectUngroup = {\n prefix: 'fas',\n iconName: 'object-ungroup',\n icon: [576, 512, [], \"f248\", \"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\"]\n};\nvar faOctagon = {\n prefix: 'fas',\n iconName: 'octagon',\n icon: [512, 512, [], \"f306\", \"M361.5 14.1c-9-9-21.2-14.1-33.9-14.1H184.5c-12.7 0-24.9 5.1-33.9 14.1L14.1 150.5c-9 9-14.1 21.2-14.1 33.9v143.1c0 12.7 5.1 24.9 14.1 33.9l136.5 136.5c9 9 21.2 14.1 33.9 14.1h143.1c12.7 0 24.9-5.1 33.9-14.1L498 361.4c9-9 14.1-21.2 14.1-33.9v-143c0-12.7-5.1-24.9-14.1-33.9L361.5 14.1z\"]\n};\nvar faOilCan = {\n prefix: 'fas',\n iconName: 'oil-can',\n icon: [640, 512, [], \"f613\", \"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\"]\n};\nvar faOilTemp = {\n prefix: 'fas',\n iconName: 'oil-temp',\n icon: [640, 512, [], \"f614\", \"M320 384c44.18 0 80-35.82 80-80 0-32.79-19.77-60.89-48-73.25V208h48c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16h-48v-32h48c8.84 0 16-7.16 16-16V96c0-8.84-7.16-16-16-16h-48V48h48c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16h-96c-8.84 0-16 7.16-16 16v214.75c-28.23 12.35-48 40.46-48 73.25 0 44.18 35.82 80 80 80zm-304 0h16c38.62 0 72.72-12.19 96-31.84 23.28 19.66 57.38 31.84 96 31.84 5.67 0 11.01-.79 16.46-1.3-16.71-16.89-27.65-39.17-30.96-63.86-18.79-2.44-33.34-9.14-41.59-16.74-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 311.58 58.04 320 32 320H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16zm608 64h-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 439.58 442.04 448 416 448s-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 439.58 250.04 448 224 448s-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 439.58 58.04 448 32 448H16c-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-16zm0-128h-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.1-8.24 7.6-22.8 14.3-41.59 16.74-3.32 24.69-14.25 46.97-30.96 63.86 5.46.51 10.79 1.3 16.46 1.3 38.62 0 72.72-12.19 96-31.84 23.28 19.66 57.38 31.84 96 31.84h16c8.84 0 16-7.16 16-16v-32c.02-8.84-7.14-16-15.98-16z\"]\n};\nvar faOm = {\n prefix: 'fas',\n iconName: 'om',\n icon: [512, 512, [], \"f679\", \"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\"]\n};\nvar faOmega = {\n prefix: 'fas',\n iconName: 'omega',\n icon: [512, 512, [], \"f67a\", \"M488 416h-32.61c42.89-53.17 65.05-123.68 53.64-199.4C492.12 104.36 399.19 14.85 286.45 1.77 131.74-16.18 0 104.82 0 256c0 60.59 21.27 116.18 56.61 160H24c-13.25 0-24 10.75-24 24v48c0 13.25 10.75 24 24 24h136c17.67 0 32-14.33 32-32v-42.7c0-20.53-11.09-38.78-27.88-50.59-48.22-33.92-76.98-93.67-65.67-159.06 10.89-62.93 60.5-114.85 122.99-128.01C324.68 77.9 416 156.49 416 256c0 54.44-27.4 102.51-69.08 131.38-16.49 11.43-26.92 29.63-26.92 49.7V480c0 17.67 14.33 32 32 32h136c13.25 0 24-10.75 24-24v-48c0-13.25-10.75-24-24-24z\"]\n};\nvar faOrnament = {\n prefix: 'fas',\n iconName: 'ornament',\n icon: [384, 512, [], \"f7b8\", \"M288 153.9V112c0-8.8-7.2-16-16-16h-24.9c5.5-9.4 8.9-20.3 8.9-32 0-35.3-28.7-64-64-64s-64 28.7-64 64c0 11.7 3.4 22.6 8.9 32H112c-8.8 0-16 7.2-16 16v41.9C66.9 170.7 42.7 195 25.9 224h332.2c-16.8-29-41-53.3-70.1-70.1zM192 80c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm180.6 176H11.4C4.3 276.1 0 297.5 0 320s4.1 44 11.2 64h361.7c7.1-20 11.2-41.5 11.2-64-.1-22.5-4.4-43.9-11.5-64zM192 512c71 0 132.9-38.7 166.1-96H25.9c33.2 57.3 95.1 96 166.1 96z\"]\n};\nvar faOtter = {\n prefix: 'fas',\n iconName: 'otter',\n icon: [640, 512, [], \"f700\", \"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\"]\n};\nvar faOutdent = {\n prefix: 'fas',\n iconName: 'outdent',\n icon: [448, 512, [], \"f03b\", \"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\"]\n};\nvar faOutlet = {\n prefix: 'fas',\n iconName: 'outlet',\n icon: [512, 512, [], \"e01c\", \"M448,0H64A64,64,0,0,0,0,64V448a64,64,0,0,0,64,64H448a64,64,0,0,0,64-64V64A64,64,0,0,0,448,0ZM386.26,409.29A22.87,22.87,0,0,1,369.85,416H142.15a22.87,22.87,0,0,1-16.41-6.71C87.71,370.28,64,316.1,64,256s23.71-114.28,61.74-153.3A22.86,22.86,0,0,1,142.15,96h227.7a22.86,22.86,0,0,1,16.41,6.7c38,39,61.74,93.2,61.74,153.3S424.29,370.28,386.26,409.29ZM256,304a32,32,0,0,0-32,32v16h64V336A32,32,0,0,0,256,304ZM192,176H176a16,16,0,0,0-16,16v80a16,16,0,0,0,16,16h16a16,16,0,0,0,16-16V192A16,16,0,0,0,192,176Zm144,0H320a16,16,0,0,0-16,16v80a16,16,0,0,0,16,16h16a16,16,0,0,0,16-16V192A16,16,0,0,0,336,176Z\"]\n};\nvar faOven = {\n prefix: 'fas',\n iconName: 'oven',\n icon: [448, 512, [], \"e01d\", \"M96,320H352V288H96ZM384,0H64A64,64,0,0,0,0,64v96H448V64A64,64,0,0,0,384,0ZM80,104a24,24,0,1,1,24-24A24,24,0,0,1,80,104Zm96,0a24,24,0,1,1,24-24A24,24,0,0,1,176,104Zm96,0a24,24,0,1,1,24-24A24,24,0,0,1,272,104Zm96,0a24,24,0,1,1,24-24A24,24,0,0,1,368,104ZM0,480a32,32,0,0,0,32,32H416a32,32,0,0,0,32-32V192H0ZM64,256H384V448H64Z\"]\n};\nvar faOverline = {\n prefix: 'fas',\n iconName: 'overline',\n icon: [448, 512, [], \"f876\", \"M432 0H16A16 16 0 0 0 0 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V16a16 16 0 0 0-16-16zM232.19 128h-16.38A167.81 167.81 0 0 0 48 295.81v48.38A167.81 167.81 0 0 0 215.81 512h16.38A167.81 167.81 0 0 0 400 344.19v-48.38A167.81 167.81 0 0 0 232.19 128zM320 344.19A87.91 87.91 0 0 1 232.19 432h-16.38A87.91 87.91 0 0 1 128 344.19v-48.38A87.91 87.91 0 0 1 215.81 208h16.38A87.91 87.91 0 0 1 320 295.81z\"]\n};\nvar faPageBreak = {\n prefix: 'fas',\n iconName: 'page-break',\n icon: [576, 512, [], \"f877\", \"M243.6 256a19.59 19.59 0 0 0-19.6 19.6v24.8a19.59 19.59 0 0 0 19.6 19.6h88.8a19.59 19.59 0 0 0 19.6-19.6v-24.8a19.59 19.59 0 0 0-19.6-19.6zM160 64h176v64a16 16 0 0 0 16 16h64v64h64v-76.06a48.16 48.16 0 0 0-14.09-34L382 14.09A48 48 0 0 0 348.09 0H144a48.14 48.14 0 0 0-48 48.07V208h64zm400 192H432a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM416 448H160v-80H96v96a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48v-96h-64zM160 304v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16z\"]\n};\nvar faPager = {\n prefix: 'fas',\n iconName: 'pager',\n icon: [512, 512, [], \"f815\", \"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\"]\n};\nvar faPaintBrush = {\n prefix: 'fas',\n iconName: 'paint-brush',\n icon: [512, 512, [], \"f1fc\", \"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\"]\n};\nvar faPaintBrushAlt = {\n prefix: 'fas',\n iconName: 'paint-brush-alt',\n icon: [512, 512, [], \"f5a9\", \"M365.99 33.1L194.11 289.51l78 65 218.81-221.52C564.15 52.52 427.95-55.3 365.99 33.1zM167.87 309.29c-40.45 2.41-77.23 17.53-98.03 72.35-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.39-.68-6.64-1.06-9.96l-87.07-72.56z\"]\n};\nvar faPaintRoller = {\n prefix: 'fas',\n iconName: 'paint-roller',\n icon: [512, 512, [], \"f5aa\", \"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\"]\n};\nvar faPalette = {\n prefix: 'fas',\n iconName: 'palette',\n icon: [512, 512, [], \"f53f\", \"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\"]\n};\nvar faPallet = {\n prefix: 'fas',\n iconName: 'pallet',\n icon: [640, 512, [], \"f482\", \"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\"]\n};\nvar faPalletAlt = {\n prefix: 'fas',\n iconName: 'pallet-alt',\n icon: [640, 512, [], \"f483\", \"M80 256h224c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16v224c0 8.8 7.2 16 16 16zm320 0h160c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16H400c-8.8 0-16 7.2-16 16v160c0 8.8 7.2 16 16 16zm224 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\"]\n};\nvar faPaperPlane = {\n prefix: 'fas',\n iconName: 'paper-plane',\n icon: [512, 512, [], \"f1d8\", \"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\"]\n};\nvar faPaperclip = {\n prefix: 'fas',\n iconName: 'paperclip',\n icon: [448, 512, [], \"f0c6\", \"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\"]\n};\nvar faParachuteBox = {\n prefix: 'fas',\n iconName: 'parachute-box',\n icon: [512, 512, [], \"f4cd\", \"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\"]\n};\nvar faParagraph = {\n prefix: 'fas',\n iconName: 'paragraph',\n icon: [448, 512, [], \"f1dd\", \"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\"]\n};\nvar faParagraphRtl = {\n prefix: 'fas',\n iconName: 'paragraph-rtl',\n icon: [384, 512, [], \"f878\", \"M368 384H112v-48c0-14.25-17.23-21.39-27.31-11.31l-80 80a16 16 0 0 0 0 22.62l80 80C94 516.64 112 511.64 112 496v-48h256a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM144 224h16v80a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V64h32v240a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V64h16a16 16 0 0 0 16-16V16a16 16 0 0 0-16-16H144C80 0 32 48 32 112s48 112 112 112z\"]\n};\nvar faParking = {\n prefix: 'fas',\n iconName: 'parking',\n icon: [448, 512, [], \"f540\", \"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\"]\n};\nvar faParkingCircle = {\n prefix: 'fas',\n iconName: 'parking-circle',\n icon: [496, 512, [], \"f615\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 432c-101.46 0-184-82.54-184-184S146.54 72 248 72s184 82.54 184 184-82.54 184-184 184zm32-296h-96c-8.84 0-16 7.16-16 16v192c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-48h48c44.18 0 80-35.82 80-80s-35.82-80-80-80zm0 96h-48v-32h48c8.82 0 16 7.18 16 16s-7.18 16-16 16z\"]\n};\nvar faParkingCircleSlash = {\n prefix: 'fas',\n iconName: 'parking-circle-slash',\n icon: [496, 512, [], \"f616\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 432c-101.46 0-184-82.54-184-184 0-30.83 7.71-59.86 21.17-85.41l286.39 221.35C338.86 421.69 295.58 440 248 440zm-9.77-232H280c8.82 0 16 7.18 16 16s-7.18 16-16 16h-.37l-41.4-32zm172.6 133.41l-76.42-59.06C350.07 267.74 360 247.1 360 224c0-44.18-35.82-80-80-80h-96c-6.91 0-12.67 4.43-14.9 10.57l-44.66-34.51C157.14 90.31 200.42 72 248 72c101.46 0 184 82.54 184 184 0 30.83-7.71 59.86-21.17 85.41zM168 352c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-19.48l-64-49.46V352z\"]\n};\nvar faParkingSlash = {\n prefix: 'fas',\n iconName: 'parking-slash',\n icon: [640, 512, [], \"f617\", \"M288 368c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-64.86L96 204.21V432c0 26.5 21.5 48 48 48h308.83L288 352.6V368zm345.82 90.1L544 388.68V80c0-26.5-21.5-48-48-48H144c-15.31 0-28.79 7.31-37.58 18.48L45.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.45zM409.69 284.87l-50.53-39.05c5.4-5.73 8.84-13.34 8.84-21.82 0-17.64-14.36-32-32-32h-46.48l-65.06-50.29C225.61 134 231.98 128 240 128h96c52.94 0 96 43.06 96 96 0 23.24-8.49 44.35-22.31 60.87z\"]\n};\nvar faPassport = {\n prefix: 'fas',\n iconName: 'passport',\n icon: [448, 512, [], \"f5ab\", \"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\"]\n};\nvar faPastafarianism = {\n prefix: 'fas',\n iconName: 'pastafarianism',\n icon: [640, 512, [], \"f67b\", \"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\"]\n};\nvar faPaste = {\n prefix: 'fas',\n iconName: 'paste',\n icon: [448, 512, [], \"f0ea\", \"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\"]\n};\nvar faPause = {\n prefix: 'fas',\n iconName: 'pause',\n icon: [448, 512, [], \"f04c\", \"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\"]\n};\nvar faPauseCircle = {\n prefix: 'fas',\n iconName: 'pause-circle',\n icon: [512, 512, [], \"f28b\", \"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\"]\n};\nvar faPaw = {\n prefix: 'fas',\n iconName: 'paw',\n icon: [512, 512, [], \"f1b0\", \"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\"]\n};\nvar faPawAlt = {\n prefix: 'fas',\n iconName: 'paw-alt',\n icon: [448, 512, [], \"f701\", \"M144 128c26.51 0 48-21.49 48-48s-21.49-48-48-48-48 21.49-48 48 21.49 48 48 48zm-48 64c0-26.51-21.49-48-48-48S0 165.49 0 192s21.49 48 48 48 48-21.49 48-48zm208-64c26.51 0 48-21.49 48-48s-21.49-48-48-48-48 21.49-48 48 21.49 48 48 48zm96 16c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm-32.69 156.78c-26.29-14.84-47.14-61.41-67.17-97.83C284.41 174.31 254.21 160 224 160s-60.41 14.31-76.15 42.95c-20.29 36.96-40.12 82.56-67.17 97.83C51.63 317.18 32 348.18 32 383.95c0 53.01 42.98 95.98 96 95.98 51.71 1.76 72.19-31.99 96-31.99s44.29 33.75 96 31.99c53.02 0 96-42.97 96-95.98 0-35.77-19.63-66.77-48.69-83.17z\"]\n};\nvar faPawClaws = {\n prefix: 'fas',\n iconName: 'paw-claws',\n icon: [512, 512, [], \"f702\", \"M193.44 222.61c30.94-8.14 46.42-49.94 34.58-93.36-6.53-23.92-20.07-43.04-36.02-54.29V0l-64.01 79.99c-15.02 17.7-20.45 47.82-12.01 78.75 11.84 43.42 46.53 72.02 77.46 63.87zm125.12 0c30.94 8.14 65.62-20.45 77.46-63.87 8.44-30.94 3.01-61.05-12.01-78.75L320 0v74.96c-15.95 11.26-29.49 30.37-36.02 54.29-11.84 43.42 3.64 85.22 34.58 93.36zM256 256c-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 378.76 335.41 256 256 256zm-147.28-12.61c-7.21-24.03-24.89-41.91-44.72-48.46V128l-45.51 62.37A96.204 96.204 0 0 0 0 247.09c.03 6.97 1.09 14.22 3.28 21.52 10.4 34.65 42.44 57.09 71.56 50.13 29.11-6.97 44.28-40.7 33.88-75.35zm384.79-53.02L448 128v66.94c-19.83 6.55-37.51 24.43-44.72 48.46-10.4 34.65 4.77 68.38 33.89 75.34 29.12 6.96 61.15-15.48 71.56-50.13 2.19-7.29 3.25-14.54 3.28-21.52a96.283 96.283 0 0 0-18.5-56.72z\"]\n};\nvar faPeace = {\n prefix: 'fas',\n iconName: 'peace',\n icon: [496, 512, [], \"f67c\", \"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\"]\n};\nvar faPegasus = {\n prefix: 'fas',\n iconName: 'pegasus',\n icon: [576, 512, [], \"f703\", \"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 128-63.92 0-104.2-36.78-127.66-90.27-3.22-7.35-13.61-7.76-17.04-.5C165.49 57.82 160 80.8 160 105.1c0 67.04 51.01 133.09 128 147.74v3.17c-82.89 0-143.33-57.52-157.03-122.86-16.72 5.47-31.62 14.98-42.97 27.97V160c-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\"]\n};\nvar faPen = {\n prefix: 'fas',\n iconName: 'pen',\n icon: [512, 512, [], \"f304\", \"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\"]\n};\nvar faPenAlt = {\n prefix: 'fas',\n iconName: 'pen-alt',\n icon: [512, 512, [], \"f305\", \"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\"]\n};\nvar faPenFancy = {\n prefix: 'fas',\n iconName: 'pen-fancy',\n icon: [512, 512, [], \"f5ac\", \"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\"]\n};\nvar faPenNib = {\n prefix: 'fas',\n iconName: 'pen-nib',\n icon: [512, 512, [], \"f5ad\", \"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\"]\n};\nvar faPenSquare = {\n prefix: 'fas',\n iconName: 'pen-square',\n icon: [448, 512, [], \"f14b\", \"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\"]\n};\nvar faPencil = {\n prefix: 'fas',\n iconName: 'pencil',\n icon: [512, 512, [], \"f040\", \"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 0zM88 424h48v36.3l-64.5 11.3-31.1-31.1L51.7 376H88v48z\"]\n};\nvar faPencilAlt = {\n prefix: 'fas',\n iconName: 'pencil-alt',\n icon: [512, 512, [], \"f303\", \"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\"]\n};\nvar faPencilPaintbrush = {\n prefix: 'fas',\n iconName: 'pencil-paintbrush',\n icon: [512, 512, [], \"f618\", \"M316.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.71zm181.85 44.53c18.75-18.76 18.75-49.17 0-67.93l-45.26-45.25c-18.76-18.76-49.18-18.76-67.94 0L338.7 60.08l113.2 113.2 46.03-46.04zm-41.18 264.38c-6.59 0-12.24-3.77-14.59-9.98-18.13-47.78-48.4-65.38-82.65-70.71L257.83 412.61C266.64 475.95 315.42 512 384 512c90.07 0 128-72.38 128-154.73-9.79 6.68-44.14 34.35-55.25 34.35zm-336.57-158.3L216 137.51 146.01 33.1C84.05-55.3-52.15 52.52 21.08 132.99l99.1 100.33z\"]\n};\nvar faPencilRuler = {\n prefix: 'fas',\n iconName: 'pencil-ruler',\n icon: [512, 512, [], \"f5ae\", \"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\"]\n};\nvar faPennant = {\n prefix: 'fas',\n iconName: 'pennant',\n icon: [576, 512, [], \"f456\", \"M571 228.5c-78.1 88.2-179.8 108.8-184.1 109.6-134.8 26.1-153.3 7.5-237.1 37.5-10.6 3.8-21.8-3.6-21.8-14.8V112.5c0-9 7.3-16.4 16.3-16 43.2 2 95.3 13.2 155.2 42.4 140.6 68.5 223.7 62.9 252.9 57.2 18-3.8 31.3 18.1 18.6 32.4zM56 0C25.1 0 0 25.1 0 56c0 22.3 13.2 41.4 32 50.4V504c0 4.4 3.6 8 8 8h32c4.4 0 8-3.6 8-8V106.4c18.8-9 32-28.1 32-50.4 0-30.9-25.1-56-56-56z\"]\n};\nvar faPeopleArrows = {\n prefix: 'fas',\n iconName: 'people-arrows',\n icon: [576, 512, [], \"e068\", \"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\"]\n};\nvar faPeopleCarry = {\n prefix: 'fas',\n iconName: 'people-carry',\n icon: [640, 512, [], \"f4ce\", \"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\"]\n};\nvar faPepperHot = {\n prefix: 'fas',\n iconName: 'pepper-hot',\n icon: [512, 512, [], \"f816\", \"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\"]\n};\nvar faPercent = {\n prefix: 'fas',\n iconName: 'percent',\n icon: [448, 512, [], \"f295\", \"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\"]\n};\nvar faPercentage = {\n prefix: 'fas',\n iconName: 'percentage',\n icon: [384, 512, [], \"f541\", \"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\"]\n};\nvar faPersonBooth = {\n prefix: 'fas',\n iconName: 'person-booth',\n icon: [576, 512, [], \"f756\", \"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\"]\n};\nvar faPersonCarry = {\n prefix: 'fas',\n iconName: 'person-carry',\n icon: [384, 512, [], \"f4cf\", \"M0 479.9c0 17.7 14.3 32 32 32s32-14.3 32-32v-74.5C48 391.7.6 350.8 0 350.3v129.6zM368 96H208c-8.8 0-16 7.2-16 16v112h-25.4l-33.3-61.8c-11.1-21.1-32.8-34.2-56.6-34.2H48c-26.5 0-48 21.5-48 48v103c0 18.7 8.2 36.4 22.4 48.6l76 65.1 14.1 92.5c1 5.7 10.1 30.7 36.8 26.3 17.4-2.9 29.2-19.4 26.3-36.8l-14.1-92.5c-2.5-14.8-10.1-28.3-21.5-38.1l-44-37.7v-78.3l32 59.9h240c8.8 0 16-7.2 16-16V112c0-8.9-7.2-16-16-16zM80 96c26.5 0 48-21.5 48-48S106.5 0 80 0 32 21.5 32 48s21.5 48 48 48z\"]\n};\nvar faPersonDolly = {\n prefix: 'fas',\n iconName: 'person-dolly',\n icon: [512, 512, [], \"f4d0\", \"M331.1 360.5c2.3 8.5 11.1 13.6 19.6 11.3l117-31.3c8.5-2.3 13.6-11.1 11.3-19.6L447.6 204c-2.3-8.5-11.1-13.6-19.6-11.3L311 224c-8.5 2.3-13.6 11.1-11.3 19.6l31.4 116.9zM0 479.9c0 17.7 14.3 32 32 32s32-14.3 32-32v-74.5C48 391.7.5 350.8 0 350.3v129.6zm503.4-106.1c-1.1-4.3-5.5-6.8-9.8-5.7l-154.1 41.3c-9.8-12.9-24.2-21.9-40.9-24.5l-59.4-221.6c-1.1-4.3-5.5-6.8-9.8-5.7l-30.9 8.3c-4.3 1.1-6.8 5.5-5.7 9.8l12.9 48.2h-39l-33.3-61.8c-11.1-21.1-32.8-34.2-56.7-34.2H48c-26.5 0-48 21.5-48 48v103c0 18.7 8.2 36.4 22.4 48.6l76 65.1 14.1 92.5c1 5.7 10.1 30.7 36.8 26.3 17.4-2.9 29.2-19.4 26.3-36.8l-14.1-92.5c-2.5-14.8-10.1-28.3-21.5-38.1l-44-37.7V228l32 59.9h94.8l28.9 107.8c-16.4 11.6-27.2 30.6-27.2 52.2 0 35.3 28.7 64 64 64 32.7 0 59.3-24.5 63.2-56.1l154.2-41.3c4.3-1.1 6.8-5.5 5.7-9.8l-8.2-30.9zm-214.8 90.1c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.1 16-16 16zM80 96c26.5 0 48-21.5 48-48S106.6 0 80 0 32 21.5 32 48s21.5 48 48 48z\"]\n};\nvar faPersonDollyEmpty = {\n prefix: 'fas',\n iconName: 'person-dolly-empty',\n icon: [512, 512, [], \"f4d1\", \"M0 479.9c0 17.7 14.3 32 32 32s32-14.3 32-32v-74.5C48 391.7.5 350.8 0 350.3v129.6zm503.4-106.1c-1.1-4.3-5.5-6.8-9.8-5.7l-154.1 41.3c-9.8-12.9-24.2-21.9-40.9-24.5l-59.4-221.6c-1.1-4.3-5.5-6.8-9.8-5.7l-30.9 8.3c-4.3 1.1-6.8 5.5-5.7 9.8l12.9 48.2h-39l-33.3-61.8c-11.1-21.1-32.8-34.2-56.7-34.2H48c-26.5 0-48 21.5-48 48v103c0 18.7 8.2 36.4 22.4 48.6l76 65.1 14.1 92.5c1 5.7 10.1 30.7 36.8 26.3 17.4-2.9 29.2-19.4 26.3-36.8l-14.1-92.5c-2.5-14.8-10.1-28.3-21.5-38.1l-44-37.7V228l32 59.9h94.8l28.9 107.8c-16.4 11.6-27.2 30.6-27.2 52.2 0 35.3 28.7 64 64 64 32.7 0 59.3-24.5 63.2-56.1l154.2-41.3c4.3-1.1 6.8-5.5 5.7-9.8l-8.2-30.9zm-214.8 90.1c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.1 16-16 16zM80 96c26.5 0 48-21.5 48-48S106.6 0 80 0 32 21.5 32 48s21.5 48 48 48z\"]\n};\nvar faPersonSign = {\n prefix: 'fas',\n iconName: 'person-sign',\n icon: [512, 512, [], \"f757\", \"M144 96c26.5 0 48-21.5 48-48S170.4 0 144 0 96 21.5 96 48s21.5 48 48 48zm357.5-29.4L433.8 42l5.5-15c3-8.3-1.3-17.5-9.6-20.5l-15-5.5c-8.3-3-17.5 1.3-20.5 9.6l-5.5 15L321.1 1c-8.3-3-17.5 1.3-20.5 9.6l-43.8 120.3c-3 8.3 1.3 17.5 9.6 20.5L334 176l-13 36-47.8-16-49.3-49.3c-12.1-12.1-28.1-18.8-45.2-18.8h-62.9c-24.4 0-46.3 13.6-57.2 35.4L3.4 273.7c-7.9 15.8-1.5 35 14.3 42.9 4.6 2.3 9.5 3.4 14.3 3.4 11.7 0 23-6.5 28.6-17.7L80 263.6v54.8L64.1 476.8c-1.7 17.6 11.1 33.3 28.6 35 1.1.1 2.2.2 3.2.2 16.2 0 30.1-12.3 31.8-28.8L140.9 352h15.3l35.8 71.5V480c0 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-82.5v-91.2l20 20c7 7 15.6 12.3 25 15.5l46.1 15.4-11.2 30.8c-3 8.3 1.3 17.5 9.6 20.5l15 5.5c8.3 3 17.5-1.3 20.5-9.6l46.2-126.9 67.6 24.6c8.3 3 17.5-1.3 20.5-9.6L511 87.1c3.1-8.3-1.2-17.4-9.5-20.5z\"]\n};\nvar faPhone = {\n prefix: 'fas',\n iconName: 'phone',\n icon: [512, 512, [], \"f095\", \"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\"]\n};\nvar faPhoneAlt = {\n prefix: 'fas',\n iconName: 'phone-alt',\n icon: [512, 512, [], \"f879\", \"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\"]\n};\nvar faPhoneLaptop = {\n prefix: 'fas',\n iconName: 'phone-laptop',\n icon: [640, 512, [], \"f87a\", \"M604 128H420a36 36 0 0 0-36 36v312a36 36 0 0 0 36 36h184a36 36 0 0 0 36-36V164a36 36 0 0 0-36-36zm-28 320H448V192h128zM128 64h320v32h64V48a48.1 48.1 0 0 0-47.91-48H111.91A48.1 48.1 0 0 0 64 48v240H16a16 16 0 0 0-16 16v16a64.14 64.14 0 0 0 63.91 64H352v-96H128z\"]\n};\nvar faPhoneOffice = {\n prefix: 'fas',\n iconName: 'phone-office',\n icon: [576, 512, [], \"f67d\", \"M128 416h64c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32h-64c-17.67 0-32 14.33-32 32v352c0 17.67 14.33 32 32 32zM528 32H256v352c0 35.29-28.71 64-64 64h-64c-35.29 0-64-28.71-64-64V32H48C21.49 32 0 53.49 0 80v384c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM384 432c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-32c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v32zm0-128c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-32c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v32zm128 128c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-32c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v32zm0-128c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-32c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v32zm0-112H320V96h192v96z\"]\n};\nvar faPhonePlus = {\n prefix: 'fas',\n iconName: 'phone-plus',\n icon: [512, 512, [], \"f4d2\", \"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.4zM16 144h64v64c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-64h64c8.8 0 16-7.2 16-16V96c0-8.8-7.2-16-16-16h-64V16c0-8.8-7.2-16-16-16H96c-8.8 0-16 7.2-16 16v64H16C7.2 80 0 87.2 0 96v32c0 8.8 7.2 16 16 16z\"]\n};\nvar faPhoneRotary = {\n prefix: 'fas',\n iconName: 'phone-rotary',\n icon: [512, 512, [], \"f8d3\", \"M370.43 192.25A64 64 0 0 0 314.86 160H197.14a64 64 0 0 0-55.57 32.25L36.22 376.62A32 32 0 0 0 32 392.5V448a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32v-55.5a32 32 0 0 0-4.22-15.88zM256 384a72 72 0 1 1 72-72 72 72 0 0 1-72 72zm250.18-261C436.76 65 347.38 32 256 32S75.24 65 5.82 123A16.45 16.45 0 0 0 0 135.64V192a16 16 0 0 0 16 16h70.11a16 16 0 0 0 14.31-8.85L128 128c39.9-17.28 83.2-24 128-24 44.77 0 88.07 6.72 128 24l27.58 71.15a16 16 0 0 0 14.31 8.85H496a16 16 0 0 0 16-16v-56.36a16.45 16.45 0 0 0-5.82-12.64z\"]\n};\nvar faPhoneSlash = {\n prefix: 'fas',\n iconName: 'phone-slash',\n icon: [640, 512, [], \"f3dd\", \"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\"]\n};\nvar faPhoneSquare = {\n prefix: 'fas',\n iconName: 'phone-square',\n icon: [448, 512, [], \"f098\", \"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\"]\n};\nvar faPhoneSquareAlt = {\n prefix: 'fas',\n iconName: 'phone-square-alt',\n icon: [448, 512, [], \"f87b\", \"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\"]\n};\nvar faPhoneVolume = {\n prefix: 'fas',\n iconName: 'phone-volume',\n icon: [384, 512, [], \"f2a0\", \"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\"]\n};\nvar faPhotoVideo = {\n prefix: 'fas',\n iconName: 'photo-video',\n icon: [640, 512, [], \"f87c\", \"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\"]\n};\nvar faPi = {\n prefix: 'fas',\n iconName: 'pi',\n icon: [512, 512, [], \"f67e\", \"M488 160c13.25 0 24-10.75 24-24V88c0-13.26-10.75-24-24-24H99.91c-16.97 0-33.25 6.74-45.25 18.74L4.72 132.69C-5.36 142.77 1.78 160 16.03 160H128v142.46c0 38.8-12.89 75.63-36.62 105.62-7.27 9.18-5.71 22.57 2.56 30.85l34.11 34.11c10.25 10.25 26.95 8.94 36.12-2.28C202.93 423.33 224 364.51 224 302.46V160h64v202.58c0 54.98 37.28 105.36 91.32 115.42 42.26 7.87 83.64-7.87 109.62-40.34l17.8-21.66c8.28-10.35 6.6-25.45-3.75-33.73l-37.46-29.98c-10.35-8.28-25.45-6.61-33.73 3.75L414 377.67a16.806 16.806 0 0 1-13.16 6.33c-9.28 0-16.84-7.56-16.84-16.84V160h104z\"]\n};\nvar faPiano = {\n prefix: 'fas',\n iconName: 'piano',\n icon: [512, 512, [], \"f8d4\", \"M476.62,269.81l-57.24-28.62A64,64,0,0,1,384,184,184.45,184.45,0,0,0,199.55-.5h-15.1A184.45,184.45,0,0,0,0,184H0V479.5a32,32,0,0,0,32,32H480a32,32,0,0,0,32-32V327.05A64,64,0,0,0,476.62,269.81ZM448,447.5H64v-96H96v56a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8v-56h32v56a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8v-56h32v56a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8v-56h64v56a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8v-56h32v56a8,8,0,0,0,8,8h16a8,8,0,0,0,8-8v-56h32Z\"]\n};\nvar faPianoKeyboard = {\n prefix: 'fas',\n iconName: 'piano-keyboard',\n icon: [576, 512, [], \"f8d5\", \"M544 63H32A32 32 0 0 0 0 95v320a32 32 0 0 0 32 32h512a32 32 0 0 0 32-32V95a32 32 0 0 0-32-32zM144 383H64V223h64v80a16 16 0 0 0 16 16zm128 0h-96v-64a16 16 0 0 0 16-16v-80h64v80a16 16 0 0 0 16 16zm128 0h-96v-64a16 16 0 0 0 16-16v-80h64v80a16 16 0 0 0 16 16zm112 0h-80v-64a16 16 0 0 0 16-16v-80h64z\"]\n};\nvar faPie = {\n prefix: 'fas',\n iconName: 'pie',\n icon: [576, 512, [], \"f705\", \"M458.78 304c-10.12 6.94-36.19 32-85.25 32s-75.15-25-85.26-32h-.08c-7.33 5-35.19 32-85.28 32-49.13 0-75.17-25-85.34-32h-.22c-8.34 5.7-26.69 22.63-59.6 29.2l31 92.88A32 32 0 0 0 119.07 448h337.87a32 32 0 0 0 30.36-21.88l31-92.88c-33.11-6.62-52.47-24.4-59.46-29.2zM544 240c-6.44 0-10.37-1.2-14.47-3.52C494.93 136.17 400.07 64 288 64S81 136.21 46.45 236.55c-4.07 2.28-8 3.45-14.45 3.45a32 32 0 0 0 0 64c32 0 50-13.47 61.92-22.39 9.08-6.8 12.83-9.61 23.53-9.61s14.47 2.81 23.55 9.61c11.91 8.92 29.89 22.39 61.91 22.39s50-13.48 61.88-22.41c9-6.78 12.8-9.59 23.45-9.59s14.39 2.81 23.44 9.59c11.89 8.92 29.86 22.41 61.86 22.41s49.95-13.48 61.84-22.41c9.05-6.78 12.8-9.59 23.44-9.59s14.34 2.81 23.38 9.58C494.06 290.52 512 304 544 304a32 32 0 0 0 0-64zm-337.69-88.84l-16 32c-9.44 18.83-38.17 4.79-28.62-14.31l16-32c9.53-18.85 38.09-4.63 28.62 14.31zM304 176c0 21.17-32 21.18-32 0v-32c0-21.17 32-21.18 32 0zm81.69 7.16l-16-32c-9.48-18.95 19.13-33.19 28.62-14.31l16 32c9.53 19.05-19.17 33.15-28.62 14.31z\"]\n};\nvar faPig = {\n prefix: 'fas',\n iconName: 'pig',\n icon: [576, 512, [], \"f706\", \"M560 192h-29.51c-8.77-20.04-21.64-37.71-37.38-52.46L512 64h-32c-29.4 0-55.39 13.5-73 34.32-7.57-1.1-15.12-2.32-23-2.32H256c-77.4 0-141.95 54.97-156.78 128H56c-14.8 0-26.51-13.46-23.54-28.78C34.68 183.82 45.34 176 56.95 176h1.01c3.34 0 6.04-2.71 6.04-6.04v-19.92c0-3.34-2.71-6.04-6.04-6.04C29.5 144 4.1 164.4.47 192.62-3.91 226.77 22.7 256 56 256h40c0 52.18 25.35 98.07 64 127.28V464c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16v-48h128v48c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16v-80.72A160.09 160.09 0 0 0 511.28 352H560c8.84 0 16-7.16 16-16V208c0-8.84-7.16-16-16-16zm-128 64c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faPiggyBank = {\n prefix: 'fas',\n iconName: 'piggy-bank',\n icon: [576, 512, [], \"f4d3\", \"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\"]\n};\nvar faPills = {\n prefix: 'fas',\n iconName: 'pills',\n icon: [576, 512, [], \"f484\", \"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\"]\n};\nvar faPizza = {\n prefix: 'fas',\n iconName: 'pizza',\n icon: [576, 512, [], \"f817\", \"M403.22 403.08c-81.87 81.92-215 81.22-296-2.11-77-79.19-77-210.74 0-289.94 81-83.33 214.14-84 296-2.11l22-22.07c6.46-6.46 6.44-17.36-.42-23.39-112.86-99.22-292.21-82.09-382.18 51.37-56.83 84.3-56.83 198.05 0 282.34 90 133.46 269.32 150.59 382.23 51.37 6.86-6 6.88-16.93.42-23.39zM131.9 380.45a175.77 175.77 0 0 0 248.71 0L256.25 256l124.36-124.45a175.77 175.77 0 0 0-248.71 0c-68.68 68.73-68.68 180.17 0 248.9zM256.25 352a16 16 0 1 1-16 16 16 16 0 0 1 16-16zm-48-208a16 16 0 1 1-16 16 16 16 0 0 1 16.04-16zm-48 96a16 16 0 1 1-16 16 16 16 0 0 1 16.08-16zm362.99-139.87c-5.79-7.55-17.22-7.92-23.95-1.19l-21.42 21.44c66.7 77.84 66.7 193.4 0 271.24l21.42 21.44c6.73 6.73 18.16 6.37 23.95-1.19a256.62 256.62 0 0 0 0-311.74zm-68.05 43l-49.92 50a15.83 15.83 0 0 1 10.86 15 16 16 0 0 1-16 16 15.83 15.83 0 0 1-14.95-10.87L342.35 256l112.84 112.93a176.6 176.6 0 0 0 0-225.85zM448.1 288a16 16 0 1 1 16-16 16 16 0 0 1-16 16z\"]\n};\nvar faPizzaSlice = {\n prefix: 'fas',\n iconName: 'pizza-slice',\n icon: [512, 512, [], \"f818\", \"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\"]\n};\nvar faPlaceOfWorship = {\n prefix: 'fas',\n iconName: 'place-of-worship',\n icon: [640, 512, [], \"f67f\", \"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\"]\n};\nvar faPlane = {\n prefix: 'fas',\n iconName: 'plane',\n icon: [576, 512, [], \"f072\", \"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\"]\n};\nvar faPlaneAlt = {\n prefix: 'fas',\n iconName: 'plane-alt',\n icon: [576, 512, [], \"f3de\", \"M472 200H347.7l-38.6-72H324c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12h-49.2L243.5 5.7c-2.2-3.5-6.1-5.7-10.2-5.7h-57.8c-7.9 0-13.6 7.4-11.6 15l33.3 185.4c-32.6 1-63.1 3.7-89.9 7.8l-39.8-66.4c-2.2-3.6-6.1-5.8-10.3-5.8H14.6c-7.6 0-13.3 6.9-11.8 14.4l16.6 82.8C6.9 240.1 0 247.9 0 256s6.9 15.9 19.4 22.8L2.9 361.6C1.4 369.1 7.1 376 14.6 376h42.6c4.2 0 8.1-2.2 10.3-5.8l39.8-66.4c26.8 4.1 57.3 6.8 89.9 7.8L163.9 497c-2 7.6 3.8 15 11.6 15h57.8c4.2 0 8-2.2 10.2-5.7l31.3-58.3H324c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-14.9l38.6-72H472c57.4 0 104-25.1 104-56s-46.6-56-104-56z\"]\n};\nvar faPlaneArrival = {\n prefix: 'fas',\n iconName: 'plane-arrival',\n icon: [640, 512, [], \"f5af\", \"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\"]\n};\nvar faPlaneDeparture = {\n prefix: 'fas',\n iconName: 'plane-departure',\n icon: [640, 512, [], \"f5b0\", \"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\"]\n};\nvar faPlaneSlash = {\n prefix: 'fas',\n iconName: 'plane-slash',\n icon: [640, 512, [], \"e069\", \"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\"]\n};\nvar faPlanetMoon = {\n prefix: 'fas',\n iconName: 'planet-moon',\n icon: [576, 512, [], \"e01f\", \"M512,0a64,64,0,1,0,64,64A63.99942,63.99942,0,0,0,512,0ZM224,64C100.28711,64,0,164.28516,0,288,0,411.71289,100.28711,512,224,512S448,411.71289,448,288C448,164.28516,347.71289,64,224,64Zm96,272.89062a64.02377,64.02377,0,0,1-6.75781,28.627L272.918,446.166a28.68332,28.68332,0,0,1-20.89258,15.45312q-5.16211.86719-10.41992,1.43359a16.03421,16.03421,0,0,1-17.60742-15.98437C223.99609,423.58984,223.99414,384,224,384a32.00033,32.00033,0,0,1-32-32V320l-54.62695-54.62891A32.00483,32.00483,0,0,0,114.74609,256l-25.02539-.00195c-20.74414,0-34.53125-21.54493-25.96875-40.43946C91.39258,154.55469,152.7793,112,224,112q2.25586,0,4.49805.0625A28.487,28.487,0,0,1,256,140.62109,64.00066,64.00066,0,0,1,245.25,176.125l-49.72852,57.35742a32.00106,32.00106,0,0,0,1.55079,43.58985A37.31367,37.31367,0,0,0,223.45312,288H288a31.99908,31.99908,0,0,1,32,32Z\"]\n};\nvar faPlanetRinged = {\n prefix: 'fas',\n iconName: 'planet-ringed',\n icon: [512, 512, [], \"e020\", \"M502.91733,9.0683c-23.49085-23.49086-88.309.01368-167.21341,54.81788-75.418-31.2567-165.47314-16.29536-226.79313,45.02464-61.318,61.32-76.28132,151.37515-45.02463,226.79319C9.082,414.60847-14.42256,479.42661,9.0683,502.91747c37.19239,37.19241,177.89534-43.21014,314.2681-179.58293C459.70916,186.9637,540.10973,46.26071,502.91733,9.0683ZM346.505,346.50508c-38.15531,38.15337-84.07059,78.86539-130.69292,113.57336A207.99464,207.99464,0,0,0,460.03924,215.65C423.85078,264.25092,382.07819,310.93186,346.505,346.50508Z\"]\n};\nvar faPlay = {\n prefix: 'fas',\n iconName: 'play',\n icon: [448, 512, [], \"f04b\", \"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\"]\n};\nvar faPlayCircle = {\n prefix: 'fas',\n iconName: 'play-circle',\n icon: [512, 512, [], \"f144\", \"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\"]\n};\nvar faPlug = {\n prefix: 'fas',\n iconName: 'plug',\n icon: [384, 512, [], \"f1e6\", \"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\"]\n};\nvar faPlus = {\n prefix: 'fas',\n iconName: 'plus',\n icon: [448, 512, [], \"f067\", \"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\"]\n};\nvar faPlusCircle = {\n prefix: 'fas',\n iconName: 'plus-circle',\n icon: [512, 512, [], \"f055\", \"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\"]\n};\nvar faPlusHexagon = {\n prefix: 'fas',\n iconName: 'plus-hexagon',\n icon: [576, 512, [], \"f300\", \"M553.5 231.8c8.7 14.9 8.7 33.4 0 48.4l-112 192c-8.6 14.7-24.4 23.8-41.5 23.8H176c-17.1 0-32.9-9.1-41.5-23.8l-112-192c-8.7-14.9-8.7-33.4 0-48.4l112-192C143.1 25.1 158.9 16 176 16h224c17.1 0 32.9 9.1 41.5 23.8l112 192zM432 228c0-6.6-5.4-12-12-12h-92v-92c0-6.6-5.4-12-12-12h-56c-6.6 0-12 5.4-12 12v92h-92c-6.6 0-12 5.4-12 12v56c0 6.6 5.4 12 12 12h92v92c0 6.6 5.4 12 12 12h56c6.6 0 12-5.4 12-12v-92h92c6.6 0 12-5.4 12-12v-56z\"]\n};\nvar faPlusOctagon = {\n prefix: 'fas',\n iconName: 'plus-octagon',\n icon: [512, 512, [], \"f301\", \"M497.9 150.5c9 9 14.1 21.2 14.1 33.9v143.1c0 12.7-5.1 24.9-14.1 33.9L361.5 497.9c-9 9-21.2 14.1-33.9 14.1H184.5c-12.7 0-24.9-5.1-33.9-14.1L14.1 361.5c-9-9-14.1-21.2-14.1-33.9V184.5c0-12.7 5.1-24.9 14.1-33.9L150.5 14.1c9-9 21.2-14.1 33.9-14.1h143.1c12.7 0 24.9 5.1 33.9 14.1l136.5 136.4zM400 228c0-6.6-5.4-12-12-12h-92v-92c0-6.6-5.4-12-12-12h-56c-6.6 0-12 5.4-12 12v92h-92c-6.6 0-12 5.4-12 12v56c0 6.6 5.4 12 12 12h92v92c0 6.6 5.4 12 12 12h56c6.6 0 12-5.4 12-12v-92h92c6.6 0 12-5.4 12-12v-56z\"]\n};\nvar faPlusSquare = {\n prefix: 'fas',\n iconName: 'plus-square',\n icon: [448, 512, [], \"f0fe\", \"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\"]\n};\nvar faPodcast = {\n prefix: 'fas',\n iconName: 'podcast',\n icon: [448, 512, [], \"f2ce\", \"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\"]\n};\nvar faPodium = {\n prefix: 'fas',\n iconName: 'podium',\n icon: [448, 512, [], \"f680\", \"M432 144H111.36c6.33-30.9 30.72-55.29 62.71-62.05C182.76 90.63 194.75 96 208 96h64c26.51 0 48-21.49 48-48S298.51 0 272 0h-64c-22.06 0-40.45 14.97-46.07 35.24C109.85 46.85 70.16 90.29 63.35 144H16c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-32 320h-38.22L384 224H64l22.22 240H48c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h352c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16z\"]\n};\nvar faPodiumStar = {\n prefix: 'fas',\n iconName: 'podium-star',\n icon: [448, 512, [], \"f758\", \"M432 144H111.4c6.3-30.9 30.7-55.3 62.7-62 8.7 8.7 20.7 14 33.9 14h64c26.5 0 48-21.5 48-48S298.5 0 272 0h-64c-22.1 0-40.4 15-46.1 35.2-52.1 11.6-91.8 55-98.6 108.8H16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm-32 320h-38.2L384 224H64l22.2 240H48c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h352c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm-95.5-137.3l-33 32.2 7.8 45.5c1.4 8.2-7.2 14.3-14.5 10.5L224 393.4l-40.8 21.5c-7.2 3.8-15.9-2.3-14.5-10.5l7.8-45.5-33-32.2c-5.9-5.8-2.7-15.9 5.5-17.1l45.6-6.7 20.4-41.4c3.7-7.5 14.3-7.4 17.9 0l20.4 41.4 45.6 6.7c8.2 1.2 11.5 11.3 5.6 17.1z\"]\n};\nvar faPoliceBox = {\n prefix: 'fas',\n iconName: 'police-box',\n icon: [384, 512, [], \"e021\", \"M368,464H352V88a24,24,0,0,0-24-24h-8.02148V48a16,16,0,0,0-16-16H208V16a16,16,0,0,0-32,0V32H80A16,16,0,0,0,64,48V64H56A24,24,0,0,0,32,88V464H16A16,16,0,0,0,0,480v16a16,16,0,0,0,16,16H368a16,16,0,0,0,16-16V480A16,16,0,0,0,368,464ZM168,128a8.00039,8.00039,0,0,1,8,8v24H144V128Zm-64,0h24v32H96V136A8.00039,8.00039,0,0,1,104,128Zm0,80a8.00039,8.00039,0,0,1-8-8V176h32v32Zm72,104a8.00039,8.00039,0,0,1-8,8H104a8.00039,8.00039,0,0,1-8-8V248a8.00039,8.00039,0,0,1,8-8h64a8.00039,8.00039,0,0,1,8,8Zm-8-104H144V176h32v24A8.00039,8.00039,0,0,1,168,208Zm112-80a8.00039,8.00039,0,0,1,8,8v24H256V128Zm-64,0h24v32H208V136A8.00039,8.00039,0,0,1,216,128Zm-8,72V176h32v32H216A8.00039,8.00039,0,0,1,208,200Zm72,8H256V176h32v24A8.00039,8.00039,0,0,1,280,208Z\"]\n};\nvar faPoll = {\n prefix: 'fas',\n iconName: 'poll',\n icon: [448, 512, [], \"f681\", \"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\"]\n};\nvar faPollH = {\n prefix: 'fas',\n iconName: 'poll-h',\n icon: [448, 512, [], \"f682\", \"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\"]\n};\nvar faPollPeople = {\n prefix: 'fas',\n iconName: 'poll-people',\n icon: [640, 512, [], \"f759\", \"M80 96c26.5 0 48-21.5 48-48S106.5 0 80 0 32 21.5 32 48s21.5 48 48 48zm48 240c0-26.5-21.5-48-48-48s-48 21.5-48 48 21.5 48 48 48 48-21.5 48-48zm-32 80H64c-35.3 0-64 28.7-64 64v16c0 8.8 7.2 16 16 16h128c8.8 0 16-7.2 16-16v-16c0-35.3-28.7-64-64-64zM616 32H248c-13.3 0-24 10.7-24 24v112c0 13.3 10.7 24 24 24h368c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24zm-40 96h-64V96h64v32zm-480 0H64c-35.3 0-64 28.7-64 64v16c0 8.8 7.2 16 16 16h128c8.8 0 16-7.2 16-16v-16c0-35.3-28.7-64-64-64zm520 192H248c-13.3 0-24 10.7-24 24v112c0 13.3 10.7 24 24 24h368c13.3 0 24-10.7 24-24V344c0-13.3-10.7-24-24-24zm-40 96H352v-32h224v32z\"]\n};\nvar faPoo = {\n prefix: 'fas',\n iconName: 'poo',\n icon: [512, 512, [], \"f2fe\", \"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\"]\n};\nvar faPooStorm = {\n prefix: 'fas',\n iconName: 'poo-storm',\n icon: [448, 512, [], \"f75a\", \"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\"]\n};\nvar faPoop = {\n prefix: 'fas',\n iconName: 'poop',\n icon: [512, 512, [], \"f619\", \"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\"]\n};\nvar faPopcorn = {\n prefix: 'fas',\n iconName: 'popcorn',\n icon: [512, 512, [], \"f819\", \"M443.62 138.88a42.72 42.72 0 0 0-33.09-20.79 37.89 37.89 0 0 0-.33-37.43c-9.11-16-28-23.69-45.55-20.17-.33-16.64-11.47-32-29-37.43a43.36 43.36 0 0 0-39.14 6.4 4.25 4.25 0 0 0-.68-1.92C288.73 6.42 264.77-4.78 242.5 2a41.66 41.66 0 0 0-27.32 27.19 43.4 43.4 0 0 0-38.82-6.08c-17.54 5.44-28.66 20.79-29 37.43-17.56-3.54-36.46 4.12-45.57 20.12a37.18 37.18 0 0 0-.33 37.43c-13.46 1.28-26.32 8.64-33.06 20.79-3.92 6.74-4.77 14-4.27 21.12h383.73c.52-7.12-.33-14.37-4.24-21.12zM366.4 192l-28 256h-45.01L315 192H197.05l21.56 256h-45.05l-28-256H64l43.91 292.75A32 32 0 0 0 139.56 512h232.88a32 32 0 0 0 31.65-27.25L448 192z\"]\n};\nvar faPortalEnter = {\n prefix: 'fas',\n iconName: 'portal-enter',\n icon: [512, 512, [], \"e022\", \"M432,0c-40.78711,0-74.373,97.74414-79.30859,223.98438H339.96875l-26.0625-53.25c-12.5-25.54688-35.45313-44.21876-61.78125-50.9375L181.04688,98.65625a95.62917,95.62917,0,0,0-80.84376,17.14063L60.54688,146.20312a31.99557,31.99557,0,1,0,38.9375,50.78126l39.6875-30.40626c7.67187-5.89062,17.4375-8,25.26562-6.14062l14.70312,4.375L141.6875,252.20312a64.16816,64.16816,0,0,0,26.29688,80.3125l84.96874,50.17188-27.46874,87.71875a32.00118,32.00118,0,1,0,61.07811,19.125l31.64063-101.0625a48.20913,48.20913,0,0,0-21.64063-54.39063l-61.25-36.14062L266.625,219.65625l20.28125,41.4375a48.27457,48.27457,0,0,0,43.10937,26.89063h22.67383C357.61719,414.23828,391.209,512,432,512c44.18359,0,80-114.61523,80-256S476.18359,0,432,0ZM272,96a48,48,0,1,0-48-48A47.99238,47.99238,0,0,0,272,96ZM113.6875,317.46875,98.89062,351.98438H32a32,32,0,0,0,0,64h77.45312a47.90248,47.90248,0,0,0,44.10938-29.07813l8.78125-20.53125-10.65625-6.29688A95.295,95.295,0,0,1,113.6875,317.46875Z\"]\n};\nvar faPortalExit = {\n prefix: 'fas',\n iconName: 'portal-exit',\n icon: [512, 512, [], \"e023\", \"M480,223.98438H435.96875l-26.0625-53.25c-12.5-25.54688-35.45313-44.21876-61.78125-50.9375L277.04688,98.65625a95.62917,95.62917,0,0,0-80.84376,17.14063l-39.65624,30.40624c-1.56055,1.19532-2.44336,2.85352-3.72071,4.25977C140.25586,61.78906,112.41016,0,80,0,35.81641,0,0,114.61523,0,256S35.81641,512,80,512c25.25391,0,47.73828-37.5332,62.40039-96.01562h63.05273a47.90248,47.90248,0,0,0,44.10938-29.07813l8.78125-20.53125-10.65625-6.29688a95.295,95.295,0,0,1-38-42.60937l-14.79688,34.51563H154.13281A768.691,768.691,0,0,0,160,256c0-20.22266-.80859-39.80273-2.19336-58.67383,11.14258,7.87305,26.27734,8.39258,37.67774-.34179l39.6875-30.40626c7.67187-5.89062,17.4375-8,25.26562-6.14062l14.70312,4.375L237.6875,252.20312a64.16816,64.16816,0,0,0,26.29688,80.3125l84.96874,50.17188-27.46874,87.71875a32.00118,32.00118,0,1,0,61.07812,19.125l31.64062-101.0625a48.20913,48.20913,0,0,0-21.64062-54.39063l-61.25-36.14062,31.3125-78.28125,20.28125,41.4375a48.27458,48.27458,0,0,0,43.10937,26.89063H480a32,32,0,0,0,0-64ZM368,96a48,48,0,1,0-48-48A47.99238,47.99238,0,0,0,368,96Z\"]\n};\nvar faPortrait = {\n prefix: 'fas',\n iconName: 'portrait',\n icon: [384, 512, [], \"f3e0\", \"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\"]\n};\nvar faPoundSign = {\n prefix: 'fas',\n iconName: 'pound-sign',\n icon: [320, 512, [], \"f154\", \"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\"]\n};\nvar faPowerOff = {\n prefix: 'fas',\n iconName: 'power-off',\n icon: [512, 512, [], \"f011\", \"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\"]\n};\nvar faPray = {\n prefix: 'fas',\n iconName: 'pray',\n icon: [384, 512, [], \"f683\", \"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\"]\n};\nvar faPrayingHands = {\n prefix: 'fas',\n iconName: 'praying-hands',\n icon: [640, 512, [], \"f684\", \"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\"]\n};\nvar faPrescription = {\n prefix: 'fas',\n iconName: 'prescription',\n icon: [384, 512, [], \"f5b1\", \"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\"]\n};\nvar faPrescriptionBottle = {\n prefix: 'fas',\n iconName: 'prescription-bottle',\n icon: [384, 512, [], \"f485\", \"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\"]\n};\nvar faPrescriptionBottleAlt = {\n prefix: 'fas',\n iconName: 'prescription-bottle-alt',\n icon: [384, 512, [], \"f486\", \"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\"]\n};\nvar faPresentation = {\n prefix: 'fas',\n iconName: 'presentation',\n icon: [576, 512, [], \"f685\", \"M560 0H16C7.16 0 0 7.16 0 16v32c0 8.84 7.16 16 16 16h16v256c0 17.67 14.33 32 32 32h192v34.75l-75.31 75.31c-6.25 6.25-6.25 16.38 0 22.63l22.62 22.62c6.25 6.25 16.38 6.25 22.63 0L288 445.25l62.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.63L320 386.75V352h192c17.67 0 32-14.33 32-32V64h16c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16zm-80 288H96V64h384v224z\"]\n};\nvar faPrint = {\n prefix: 'fas',\n iconName: 'print',\n icon: [512, 512, [], \"f02f\", \"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\"]\n};\nvar faPrintSearch = {\n prefix: 'fas',\n iconName: 'print-search',\n icon: [640, 512, [], \"f81a\", \"M128 448v-96h163.23a160.64 160.64 0 0 1-3.23-32c0-36.16 12.51-69.18 32.81-96H128V64h192v48a16 16 0 0 0 16 16h48v45.56A158.69 158.69 0 0 1 448 160V77.25a32 32 0 0 0-9.37-22.63L393.37 9.37A32 32 0 0 0 370.74 0H96a32 32 0 0 0-32 32v160a64 64 0 0 0-64 64v112a16 16 0 0 0 16 16h48v96a32 32 0 0 0 32 32h320a32 32 0 0 0 32-32c-35.7 0-68.37-12.16-95-32zm507.31 14.06l-77.41-77.41c11.22-19 18.1-40.95 18.1-64.65a128 128 0 1 0-128 128c23.7 0 45.61-6.88 64.65-18.11l77.41 77.42a16 16 0 0 0 22.63 0l22.62-22.62a16 16 0 0 0 0-22.63zM448 384a64 64 0 1 1 64-64 64 64 0 0 1-64 64z\"]\n};\nvar faPrintSlash = {\n prefix: 'fas',\n iconName: 'print-slash',\n icon: [640, 512, [], \"f686\", \"M192 448v-96h95.22L93.47 202.25C75.78 213.64 64 233.4 64 256v112c0 8.84 7.16 16 16 16h48v96c0 17.67 14.33 32 32 32h320c4 0 7.76-.93 11.29-2.28L411.43 448H192zm441.82 10.1L537.95 384H560c8.84 0 16-7.16 16-16V256c0-35.35-28.65-64-64-64V77.25c0-8.49-3.37-16.62-9.37-22.63L457.37 9.37c-6-6-14.14-9.37-22.63-9.37H160c-17.67 0-32 14.33-32 32v35.16L45.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.45zM448 224H330.93L192 116.62V64h192v48c0 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\"]\n};\nvar faProcedures = {\n prefix: 'fas',\n iconName: 'procedures',\n icon: [640, 512, [], \"f487\", \"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\"]\n};\nvar faProjectDiagram = {\n prefix: 'fas',\n iconName: 'project-diagram',\n icon: [640, 512, [], \"f542\", \"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\"]\n};\nvar faProjector = {\n prefix: 'fas',\n iconName: 'projector',\n icon: [640, 512, [], \"f8d6\", \"M592 192h-94.08A144.14 144.14 0 0 1 576 320c0 61.91-39.28 114.82-94.22 135.13L493 499.88A16 16 0 0 0 508.49 512h39A16 16 0 0 0 563 499.88L576 448h16a48 48 0 0 0 48-48V240a48 48 0 0 0-48-48zM288 320a144.14 144.14 0 0 1 78.08-128H48a48 48 0 0 0-48 48v160a48 48 0 0 0 48 48h16l13 51.88A16 16 0 0 0 92.49 512h39A16 16 0 0 0 147 499.88L160 448h206.08A144.14 144.14 0 0 1 288 320zM96 352a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm96 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm352-32a112 112 0 1 0-112 112 112.16 112.16 0 0 0 112-112zm-120-40a32 32 0 0 0-32 32 16 16 0 0 1-32 0 64.07 64.07 0 0 1 64-64 16 16 0 0 1 0 32zm0-152h16a16 16 0 0 0 16-16V16a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16zm93.65 5.65a16 16 0 0 0 22.63 0l67.88-67.88a16 16 0 0 0 0-22.63l-11.31-11.31a16 16 0 0 0-22.63 0l-67.88 67.89a16 16 0 0 0 0 22.62zm-193.93 0a16 16 0 0 0 22.63 0l11.31-11.31a16 16 0 0 0 0-22.62l-67.88-67.89a16 16 0 0 0-22.63 0l-11.31 11.31a16 16 0 0 0 0 22.63z\"]\n};\nvar faPumpMedical = {\n prefix: 'fas',\n iconName: 'pump-medical',\n icon: [384, 512, [], \"e06a\", \"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\"]\n};\nvar faPumpSoap = {\n prefix: 'fas',\n iconName: 'pump-soap',\n icon: [384, 512, [], \"e06b\", \"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\"]\n};\nvar faPumpkin = {\n prefix: 'fas',\n iconName: 'pumpkin',\n icon: [576, 512, [], \"f707\", \"M352 113.21v-77.4c0-6.06-3.42-11.6-8.84-14.31l-39.6-19.8c-8.37-4.19-18.54-.32-22.01 8.37L244 103.93C257.27 99.2 271.57 96 288 96c25.16 0 46.23 6.12 64 17.21zm143.3 39.92c-31.61-27.03-78.8-31.69-116.51-15.05 3.07 3.97 6.52 7.38 9.21 11.92 8.32 14.27 14.5 31.78 19.11 51.62-3.69-8.81-7.96-16.87-12.86-24.12-22.67-33-58.08-49.5-106.25-49.5s-83.58 16.5-106.25 49.5c-4.9 7.25-9.17 15.3-12.86 24.11 4.61-19.84 10.78-37.34 19.11-51.61 2.69-4.54 6.13-7.95 9.21-11.92-37.71-16.64-84.9-11.98-116.51 15.05-107.6 92.01-107.6 241.72 0 333.74 38.63 33.03 100.82 33.34 140.12 1.25C238.65 503.51 260.72 512 288 512s49.35-8.49 67.19-23.88c39.3 32.09 101.49 31.78 140.12-1.25 107.59-92.01 107.59-241.73-.01-333.74z\"]\n};\nvar faPuzzlePiece = {\n prefix: 'fas',\n iconName: 'puzzle-piece',\n icon: [576, 512, [], \"f12e\", \"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\"]\n};\nvar faQrcode = {\n prefix: 'fas',\n iconName: 'qrcode',\n icon: [448, 512, [], \"f029\", \"M0 224h192V32H0v192zM64 96h64v64H64V96zm192-64v192h192V32H256zm128 128h-64V96h64v64zM0 480h192V288H0v192zm64-128h64v64H64v-64zm352-64h32v128h-96v-32h-32v96h-64V288h96v32h64v-32zm0 160h32v32h-32v-32zm-64 0h32v32h-32v-32z\"]\n};\nvar faQuestion = {\n prefix: 'fas',\n iconName: 'question',\n icon: [384, 512, [], \"f128\", \"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\"]\n};\nvar faQuestionCircle = {\n prefix: 'fas',\n iconName: 'question-circle',\n icon: [512, 512, [], \"f059\", \"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\"]\n};\nvar faQuestionSquare = {\n prefix: 'fas',\n iconName: 'question-square',\n icon: [448, 512, [], \"f2fd\", \"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-48zM224 430c-25.365 0-46-20.636-46-46 0-25.365 20.635-46 46-46s46 20.635 46 46c0 25.364-20.635 46-46 46zm40-131.333V300c0 6.627-5.373 12-12 12h-56c-6.627 0-12-5.373-12-12v-4c0-41.059 31.128-57.472 54.652-70.66 20.171-11.309 32.534-19 32.534-33.976 0-19.81-25.269-32.958-45.698-32.958-27.19 0-39.438 13.139-57.303 35.797-4.045 5.13-11.46 6.069-16.665 2.122l-34.699-26.31c-5.068-3.843-6.251-10.972-2.715-16.258C141.4 112.957 176.158 90 230.655 90c56.366 0 116.531 43.998 116.531 102 0 77.02-83.186 78.205-83.186 106.667z\"]\n};\nvar faQuidditch = {\n prefix: 'fas',\n iconName: 'quidditch',\n icon: [640, 512, [], \"f458\", \"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\"]\n};\nvar faQuoteLeft = {\n prefix: 'fas',\n iconName: 'quote-left',\n icon: [512, 512, [], \"f10d\", \"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\"]\n};\nvar faQuoteRight = {\n prefix: 'fas',\n iconName: 'quote-right',\n icon: [512, 512, [], \"f10e\", \"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\"]\n};\nvar faQuran = {\n prefix: 'fas',\n iconName: 'quran',\n icon: [448, 512, [], \"f687\", \"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\"]\n};\nvar faRabbit = {\n prefix: 'fas',\n iconName: 'rabbit',\n icon: [448, 512, [], \"f708\", \"M445.54 487.52L352 337.85V272h7.35c31.29 0 56.65-25.36 56.65-56.65a56.66 56.66 0 0 0-23.72-46.1l-48.65-34.75c-1.1-.54-2.27-.74-3.38-1.21 7.8-12.49 15.21-29.76 20.54-49.66 11.32-42.24 9.08-79.55-5-83.32-14.08-3.77-34.67 27.41-45.99 69.66-2.72 10.15-4.61 19.97-5.79 29.15-1.18-9.18-3.07-19-5.79-29.15-11.33-42.25-31.92-73.43-46-69.66s-16.32 41.08-5 83.32c6.94 25.9 17.37 47.54 27.64 59.62-9.11 7.93-15.9 18.5-18.03 31.55-.54 3.32-.82 6.72-.82 10.19V256h-12.8c-83.19 0-152.93 56.77-173.12 133.61C63.44 386.15 56.01 384 48 384c-26.51 0-48 21.49-48 48s21.49 48 48 48c7.93 0 15.3-2.11 21.89-5.51C79.98 496.58 102.13 512 128 512h144c8.84 0 16-7.16 16-16v-16c0-17.67-14.33-32-32-32h-22.59l74.35-60.18 72.91 116.66a15.99 15.99 0 0 0 13.57 7.52h37.74c12.56 0 20.22-13.82 13.56-24.48zM336 208c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faRabbitFast = {\n prefix: 'fas',\n iconName: 'rabbit-fast',\n icon: [576, 512, [], \"f709\", \"M135.52 412.67a15.99 15.99 0 0 0-7.52 13.57v37.74c0 12.57 13.82 20.23 24.48 13.57l66.69-39.87-47.85-47.85-35.8 22.84zm416.76-195.42l-56.42-34.62c-.06-13.95-2.28-30.77-7.07-48.67-11.32-42.24-31.91-73.43-45.99-69.66-14.08 3.77-16.32 41.08-5 83.32.65 2.44 1.44 4.7 2.15 7.06-4.89-6.08-10.23-12.23-16.31-18.32-30.93-30.92-64.35-47.64-74.66-37.33s6.4 43.73 37.33 74.66c12.67 12.67 25.67 22.77 37.42 29.78-3.14 5.76-5.71 12.06-6.89 19.32-.49 3.03-.71 6.15-.75 9.31C364.55 195.11 261.59 128 192 128c-52.08 0-85.21 28.24-104.72 54.09-1.77-2.7-2.96-5.66-5.33-8.03-18.75-18.75-49.14-18.75-67.88 0-18.74 18.74-18.74 49.14 0 67.88 16.4 16.39 41.29 17.57 59.92 5.29l191.4 191.4c6 6 14.14 9.37 22.63 9.37h144c8.84 0 16-7.16 16-16v-16c0-17.67-14.33-32-32-32h-96v-55.59c0-35.53-23.86-67.16-58.02-76.91l-42.38-12.11c-8.5-2.44-13.42-11.3-11-19.78 2.44-8.52 11.41-13.33 19.78-11l42.38 12.11C318.59 234.38 352 278.66 352 328.41V352l64-32h103.35c31.29 0 56.65-25.36 56.65-56.65a56.66 56.66 0 0 0-23.72-46.1zM496 256c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faRacquet = {\n prefix: 'fas',\n iconName: 'racquet',\n icon: [640, 512, [], \"f45a\", \"M125.9 346.5l56.7 80-120.7 82.6c-7.2 5-17.2 3.3-22.2-3.9L2.9 453.4c-5.1-7.2-3.4-17.1 3.7-22.3.1.1 119.3-84.6 119.3-84.6zm402.8-16.7c-49.1 34.8-103.9 52-153.5 52-27.6 0-84.5-15.1-171.9 18.6l-45.7-64.5c32.7-38.2 56.7-83.2 67.7-132.7 12.2-54.7 49.5-110.5 106.8-151.1 100.5-71.2 228.2-70.2 283.4 7.7 54.3 76.7 15.4 197.6-86.8 270zm-271.2 5.9c-11.7-12.3-12-11.7-21.2-29.7-7.9 14.1-16.3 27.9-26.2 41 15.7-4.9 31.5-8.5 47.4-11.3zM485.9 64c-106.4 0-178.6 90-195 141.1-21.3 66.2 13.3 112.8 83.9 112.8 84.1 0 171.1-66.8 195-141.1C591.1 110.7 556.5 64 485.9 64z\"]\n};\nvar faRadar = {\n prefix: 'fas',\n iconName: 'radar',\n icon: [512, 512, [], \"e024\", \"M504,256c0,136.9668-111.0332,248-248,248S8,392.9668,8,256,119.0332,8,256,8A246.36335,246.36335,0,0,1,395.14648,50.916L425.377,20.68555a16.00006,16.00006,0,0,1,22.627,0l11.31054,11.31054a16.00006,16.00006,0,0,1,0,22.627l-201.373,201.373L257.93555,256H320a64.00026,64.00026,0,1,1-66.15625-63.78125L281.97852,164.084A92.08681,92.08681,0,0,0,256,160a96,96,0,1,0,96,96h64c0,79.53906-58.498,145.17578-134.63281,157.43555C275.54492,405.49414,266.60156,400,256,400s-19.54492,5.49414-25.36719,13.43555A159.59519,159.59519,0,0,1,98.56445,281.36719C106.50586,275.54492,112,266.60156,112,256s-5.49414-19.54492-13.43555-25.36719C110.82422,154.49805,176.46094,96,256,96c27.11328,0,52.21484,7.48438,74.53125,19.53125L354.51953,91.543A190.21144,190.21144,0,0,0,256,64C159.74023,64,80.26172,134.91211,66.375,227.30078a31.59809,31.59809,0,0,0,0,57.39649A191.79963,191.79963,0,0,0,227.30273,445.625a31.59657,31.59657,0,0,0,57.39454,0C377.08594,431.74023,448,352.25977,448,256Z\"]\n};\nvar faRadiation = {\n prefix: 'fas',\n iconName: 'radiation',\n icon: [496, 512, [], \"f7b9\", \"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\"]\n};\nvar faRadiationAlt = {\n prefix: 'fas',\n iconName: 'radiation-alt',\n icon: [496, 512, [], \"f7ba\", \"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\"]\n};\nvar faRadio = {\n prefix: 'fas',\n iconName: 'radio',\n icon: [512, 512, [], \"f8d7\", \"M447 127H210.5l288.83-81.21a16 16 0 0 0 11.07-19.74l-4.33-15.38A16 16 0 0 0 486.33-.4L63 127a64 64 0 0 0-64 64v256a64 64 0 0 0 64 64h384a64 64 0 0 0 64-64V191a64 64 0 0 0-64-64zM207 247v16a8 8 0 0 1-8 8H87a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h112a8 8 0 0 1 8 8zm0 144a8 8 0 0 1-8 8H87a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h112a8 8 0 0 1 8 8zm16-64a8 8 0 0 1-8 8H71a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h144a8 8 0 0 1 8 8zm144 72a80 80 0 1 1 80-80 80 80 0 0 1-80 80z\"]\n};\nvar faRadioAlt = {\n prefix: 'fas',\n iconName: 'radio-alt',\n icon: [512, 512, [], \"f8d8\", \"M448 128H211.5l288.83-81.21a16 16 0 0 0 11.07-19.74l-4.33-15.38A16 16 0 0 0 487.33.6L64 128a64 64 0 0 0-64 64v256a64 64 0 0 0 64 64h384a64 64 0 0 0 64-64V192a64 64 0 0 0-64-64zM224 424a8 8 0 0 1-8 8H104a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h112a8 8 0 0 1 8 8zm32-64a8 8 0 0 1-8 8H72a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h176a8 8 0 0 1 8 8zm128 88a64 64 0 1 1 64-64 64 64 0 0 1-64 64zm64-192H64v-64h384z\"]\n};\nvar faRainbow = {\n prefix: 'fas',\n iconName: 'rainbow',\n icon: [576, 512, [], \"f75b\", \"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\"]\n};\nvar faRaindrops = {\n prefix: 'fas',\n iconName: 'raindrops',\n icon: [448, 512, [], \"f75c\", \"M216 136.3c0-34.9-31.8-47.9-46.7-97.4-2.5-9-15.7-9.4-18.6 0-14.9 49.3-46.7 62.7-46.7 97.4 0 30.8 25 55.7 56 55.7s56-24.9 56-55.7zM46.7 230.9C31.8 280.2 0 293.6 0 328.3 0 359.1 25 384 56 384s56-24.9 56-55.7c0-34.9-31.8-47.9-46.7-97.4-2.5-9-15.7-9.4-18.6 0zm294.5-87.7c-5.8-19.8-36-20.7-42.5 0C264.7 251.6 192 281.1 192 357.6c0 67.7 57.2 122.4 128 122.4s128-54.8 128-122.4c0-76.9-72.6-105.5-106.8-214.4z\"]\n};\nvar faRam = {\n prefix: 'fas',\n iconName: 'ram',\n icon: [640, 512, [], \"f70a\", \"M622.25 105.96L576 83.22V64c0-17.67-14.33-32-32-32h-72.97C453.45 12.5 428.26 0 400 0c-52.94 0-96 43.06-96 96 0 47.46 34.7 86.72 80.02 94.38-5.23.88-10.53 1.62-16.02 1.62-51.54 0-93.26-40.71-95.56-91.68-5.9-2.63-12.29-4.32-19.33-4.32-12.47 0-24 4.8-32.31 12.8-8.64-8-20.16-12.8-32.64-12.8-13.12 0-24.97 5.44-33.61 13.75-11.19-9.28-26.23-13.75-41.59-10.23-17.59 3.84-31.03 16.95-35.84 33.28-16.64-2.88-34.23 3.2-45.44 17.28-11.52 14.08-13.44 32.64-7.03 48.31-14.72 8-24.64 24-24.64 41.92 0 18.23 10.23 33.92 24.95 41.92-6.41 15.69-4.16 34.23 7.05 48.31 11.52 14.09 29.11 20.17 45.75 16.97 4.08 13.88 14.64 25.07 28.47 30.58l-6.14 16.38a63.973 63.973 0 0 0-2.16 38l16.85 67.41A16.002 16.002 0 0 0 130.3 512h65.96c10.41 0 18.05-9.78 15.52-19.88l-18.31-73.26 14.76-39.36c4.73-2.15 9.22-4.78 12.9-8.31 8.64 8 20.17 12.81 32.64 12.81 12.48 0 24-4.81 32.64-12.81 8.64 8 19.84 12.81 32.64 12.81 12.49 0 23.87-4.96 32.46-12.91.16.15.34.27.51.42V496c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V330.67L483.5 307a64.009 64.009 0 0 0 28.5-53.25V192h87.66c9.26 0 17.76-4.9 22.37-12.94 7.59-13.26 17.98-33.45 17.98-44.59a31.798 31.798 0 0 0-17.76-28.51zM352 96c0-26.47 21.53-48 48-48s48 21.53 48 48-21.53 48-48 48-48-21.53-48-48zm160 16c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faRampLoading = {\n prefix: 'fas',\n iconName: 'ramp-loading',\n icon: [384, 512, [], \"f4d4\", \"M292.4 328.8c-2.7-5.4-8.2-8.8-14.3-8.8H105.9c-6.1 0-11.6 3.4-14.3 8.8l-80 160C6.3 499.5 14 512 25.9 512h332.2c11.9 0 19.6-12.5 14.3-23.2l-80-160zM352 0H32C14.3 0 0 14.3 0 32v320c0 16.5 12.6 29.5 28.6 31.3L63 314.5c.3-.6.7-1 1-1.5V64h256v249c.3.5.8 1 1 1.5l34.4 68.8c16-1.8 28.6-14.9 28.6-31.3V32c0-17.7-14.3-32-32-32z\"]\n};\nvar faRandom = {\n prefix: 'fas',\n iconName: 'random',\n icon: [512, 512, [], \"f074\", \"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\"]\n};\nvar faRaygun = {\n prefix: 'fas',\n iconName: 'raygun',\n icon: [576, 512, [], \"e025\", \"M554.9375,119.01044,480.002,143.98307H416.043V79.991a15.99661,15.99661,0,0,0-16-15.998H384.041a15.99828,15.99828,0,0,0-16.002,15.998V271.96731a15.99953,15.99953,0,0,0,16.002,15.998h16.002a15.99787,15.99787,0,0,0,16-15.998V207.97519h64.07617l74.8125,24.97068A16.00321,16.00321,0,0,0,576,217.76815v-83.58A16.00191,16.00191,0,0,0,554.9375,119.01044ZM320.0332,31.99687h-16.002a15.99787,15.99787,0,0,0-16,15.998V75.21557a110.96789,110.96789,0,0,0-48.06641-11.22264H192L87.166,1.70979A16.00223,16.00223,0,0,0,64.00586,16.01837v59.164C26.26758,93.196,0,131.38348,0,175.97913,0,231.25837,40.14844,276.9009,92.82812,286.03175L22.4082,407.95153A47.93786,47.93786,0,0,0,40.00391,473.5374L95.416,505.53346a47.96127,47.96127,0,0,0,65.60156-17.59178L281.10547,279.93019c2.38281-.94531,4.623-2.08789,6.92578-3.1875v27.22068a15.99912,15.99912,0,0,0,16,15.998h16.002a15.96,15.96,0,0,0,15.94141-15.69725v-256.57A15.95874,15.95874,0,0,0,320.0332,31.99687Zm-208.082,167.98028a23.998,23.998,0,1,1,24.002-23.998A24.00117,24.00117,0,0,1,111.95117,199.97715Zm96.00977,0a23.998,23.998,0,1,1,24.00195-23.998A24.00118,24.00118,0,0,1,207.96094,199.97715Z\"]\n};\nvar faReceipt = {\n prefix: 'fas',\n iconName: 'receipt',\n icon: [384, 512, [], \"f543\", \"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\"]\n};\nvar faRecordVinyl = {\n prefix: 'fas',\n iconName: 'record-vinyl',\n icon: [512, 512, [], \"f8d9\", \"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\"]\n};\nvar faRectangleLandscape = {\n prefix: 'fas',\n iconName: 'rectangle-landscape',\n icon: [512, 512, [], \"f2fa\", \"M464 448H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h416c26.5 0 48 21.5 48 48v288c0 26.5-21.5 48-48 48z\"]\n};\nvar faRectanglePortrait = {\n prefix: 'fas',\n iconName: 'rectangle-portrait',\n icon: [384, 512, [], \"f2fb\", \"M0 464V48C0 21.5 21.5 0 48 0h288c26.5 0 48 21.5 48 48v416c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48z\"]\n};\nvar faRectangleWide = {\n prefix: 'fas',\n iconName: 'rectangle-wide',\n icon: [640, 512, [], \"f2fc\", \"M592 416H48c-26.5 0-48-21.5-48-48V144c0-26.5 21.5-48 48-48h544c26.5 0 48 21.5 48 48v224c0 26.5-21.5 48-48 48z\"]\n};\nvar faRecycle = {\n prefix: 'fas',\n iconName: 'recycle',\n icon: [512, 512, [], \"f1b8\", \"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\"]\n};\nvar faRedo = {\n prefix: 'fas',\n iconName: 'redo',\n icon: [512, 512, [], \"f01e\", \"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\"]\n};\nvar faRedoAlt = {\n prefix: 'fas',\n iconName: 'redo-alt',\n icon: [512, 512, [], \"f2f9\", \"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\"]\n};\nvar faRefrigerator = {\n prefix: 'fas',\n iconName: 'refrigerator',\n icon: [384, 512, [], \"e026\", \"M0,160V48A48,48,0,0,1,48,0H336a48,48,0,0,1,48,48V160H320V72a8,8,0,0,0-8-8H296a8,8,0,0,0-8,8v88Zm320,32V376a8,8,0,0,1-8,8H296a8,8,0,0,1-8-8V192H0V464a48,48,0,0,0,48,48H336a48,48,0,0,0,48-48V192Z\"]\n};\nvar faRegistered = {\n prefix: 'fas',\n iconName: 'registered',\n icon: [512, 512, [], \"f25d\", \"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\"]\n};\nvar faRemoveFormat = {\n prefix: 'fas',\n iconName: 'remove-format',\n icon: [640, 512, [], \"f87d\", \"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\"]\n};\nvar faRepeat = {\n prefix: 'fas',\n iconName: 'repeat',\n icon: [512, 512, [], \"f363\", \"M512 256c0 88.224-71.775 160-160 160H170.067l34.512 32.419c9.875 9.276 10.119 24.883.539 34.464l-10.775 10.775c-9.373 9.372-24.568 9.372-33.941 0l-92.686-92.686c-9.373-9.373-9.373-24.568 0-33.941l92.686-92.686c9.373-9.373 24.568-9.373 33.941 0l10.775 10.775c9.581 9.581 9.337 25.187-.539 34.464L170.067 352H352c52.935 0 96-43.065 96-96 0-13.958-2.996-27.228-8.376-39.204-4.061-9.039-2.284-19.626 4.723-26.633l12.183-12.183c11.499-11.499 30.965-8.526 38.312 5.982C505.814 205.624 512 230.103 512 256zM72.376 295.204C66.996 283.228 64 269.958 64 256c0-52.935 43.065-96 96-96h181.933l-34.512 32.419c-9.875 9.276-10.119 24.883-.539 34.464l10.775 10.775c9.373 9.372 24.568 9.372 33.941 0l92.686-92.686c9.373-9.373 9.373-24.568 0-33.941l-92.686-92.686c-9.373-9.373-24.568-9.373-33.941 0L306.882 29.12c-9.581 9.581-9.337 25.187.539 34.464L341.933 96H160C71.775 96 0 167.776 0 256c0 25.897 6.186 50.376 17.157 72.039 7.347 14.508 26.813 17.481 38.312 5.982l12.183-12.183c7.008-7.008 8.786-17.595 4.724-26.634z\"]\n};\nvar faRepeat1 = {\n prefix: 'fas',\n iconName: 'repeat-1',\n icon: [512, 512, [], \"f365\", \"M512 256c0 88.224-71.775 160-160 160H170.067l34.512 32.419c9.875 9.276 10.119 24.883.539 34.464l-10.775 10.775c-9.373 9.372-24.568 9.372-33.941 0l-92.686-92.686c-9.373-9.373-9.373-24.568 0-33.941l80.269-80.27c9.373-9.373 24.568-9.373 33.941 0l10.775 10.775c9.581 9.581 9.337 25.187-.539 34.464l-22.095 20H352c52.935 0 96-43.065 96-96 0-13.958-2.996-27.228-8.376-39.204-4.061-9.039-2.284-19.626 4.723-26.633l12.183-12.183c11.499-11.499 30.965-8.526 38.312 5.982C505.814 205.624 512 230.103 512 256zM72.376 295.204C66.996 283.228 64 269.958 64 256c0-52.935 43.065-96 96-96h181.933l-22.095 20.002c-9.875 9.276-10.119 24.883-.539 34.464l10.775 10.775c9.373 9.372 24.568 9.372 33.941 0l80.269-80.27c9.373-9.373 9.373-24.568 0-33.941l-92.686-92.686c-9.373-9.373-24.568-9.373-33.941 0l-10.775 10.775c-9.581 9.581-9.337 25.187.539 34.464L341.933 96H160C71.775 96 0 167.776 0 256c0 25.897 6.186 50.376 17.157 72.039 7.347 14.508 26.813 17.481 38.312 5.982l12.183-12.183c7.008-7.008 8.786-17.595 4.724-26.634zm154.887 4.323c0-7.477 3.917-11.572 11.573-11.572h15.131v-39.878c0-5.163.534-10.503.534-10.503h-.356s-1.779 2.67-2.848 3.738c-4.451 4.273-10.504 4.451-15.666-1.068l-5.518-6.231c-5.342-5.341-4.984-11.216.534-16.379l21.72-19.939c4.449-4.095 8.366-5.697 14.42-5.697h12.105c7.656 0 11.749 3.916 11.749 11.572v84.384h15.488c7.655 0 11.572 4.094 11.572 11.572v8.901c0 7.477-3.917 11.572-11.572 11.572h-67.293c-7.656 0-11.573-4.095-11.573-11.572v-8.9z\"]\n};\nvar faRepeat1Alt = {\n prefix: 'fas',\n iconName: 'repeat-1-alt',\n icon: [512, 512, [], \"f366\", \"M493.544 181.463c11.956 22.605 18.655 48.4 18.452 75.75C511.339 345.365 438.56 416 350.404 416H192v47.495c0 22.475-26.177 32.268-40.971 17.475l-80-80c-9.372-9.373-9.372-24.569 0-33.941l80-80C166.138 271.92 192 282.686 192 304v48h158.875c52.812 0 96.575-42.182 97.12-94.992.155-15.045-3.17-29.312-9.218-42.046-4.362-9.185-2.421-20.124 4.8-27.284 4.745-4.706 8.641-8.555 11.876-11.786 11.368-11.352 30.579-8.631 38.091 5.571zM64.005 254.992c.545-52.81 44.308-94.992 97.12-94.992H320v47.505c0 22.374 26.121 32.312 40.971 17.465l80-80c9.372-9.373 9.372-24.569 0-33.941l-80-80C346.014 16.077 320 26.256 320 48.545V96H161.596C73.44 96 .661 166.635.005 254.788c-.204 27.35 6.495 53.145 18.452 75.75 7.512 14.202 26.723 16.923 38.091 5.57 3.235-3.231 7.13-7.08 11.876-11.786 7.22-7.16 9.162-18.098 4.8-27.284-6.049-12.735-9.374-27.001-9.219-42.046zm163.258 44.535c0-7.477 3.917-11.572 11.573-11.572h15.131v-39.878c0-5.163.534-10.503.534-10.503h-.356s-1.779 2.67-2.848 3.738c-4.451 4.273-10.504 4.451-15.666-1.068l-5.518-6.231c-5.342-5.341-4.984-11.216.534-16.379l21.72-19.939c4.449-4.095 8.366-5.697 14.42-5.697h12.105c7.656 0 11.749 3.916 11.749 11.572v84.384h15.488c7.655 0 11.572 4.094 11.572 11.572v8.901c0 7.477-3.917 11.572-11.572 11.572h-67.293c-7.656 0-11.573-4.095-11.573-11.572v-8.9z\"]\n};\nvar faRepeatAlt = {\n prefix: 'fas',\n iconName: 'repeat-alt',\n icon: [512, 512, [], \"f364\", \"M493.544 181.463c11.956 22.605 18.655 48.4 18.452 75.75C511.339 345.365 438.56 416 350.404 416H192v47.495c0 22.475-26.177 32.268-40.971 17.475l-80-80c-9.372-9.373-9.372-24.569 0-33.941l80-80C166.138 271.92 192 282.686 192 304v48h158.875c52.812 0 96.575-42.182 97.12-94.992.155-15.045-3.17-29.312-9.218-42.046-4.362-9.185-2.421-20.124 4.8-27.284 4.745-4.706 8.641-8.555 11.876-11.786 11.368-11.352 30.579-8.631 38.091 5.571zM64.005 254.992c.545-52.81 44.308-94.992 97.12-94.992H320v47.505c0 22.374 26.121 32.312 40.971 17.465l80-80c9.372-9.373 9.372-24.569 0-33.941l-80-80C346.014 16.077 320 26.256 320 48.545V96H161.596C73.44 96 .661 166.635.005 254.788c-.204 27.35 6.495 53.145 18.452 75.75 7.512 14.202 26.723 16.923 38.091 5.57 3.235-3.231 7.13-7.08 11.876-11.786 7.22-7.16 9.162-18.098 4.8-27.284-6.049-12.735-9.374-27.001-9.219-42.046z\"]\n};\nvar faReply = {\n prefix: 'fas',\n iconName: 'reply',\n icon: [512, 512, [], \"f3e5\", \"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\"]\n};\nvar faReplyAll = {\n prefix: 'fas',\n iconName: 'reply-all',\n icon: [576, 512, [], \"f122\", \"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\"]\n};\nvar faRepublican = {\n prefix: 'fas',\n iconName: 'republican',\n icon: [640, 512, [], \"f75e\", \"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\"]\n};\nvar faRestroom = {\n prefix: 'fas',\n iconName: 'restroom',\n icon: [640, 512, [], \"f7bd\", \"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\"]\n};\nvar faRetweet = {\n prefix: 'fas',\n iconName: 'retweet',\n icon: [640, 512, [], \"f079\", \"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\"]\n};\nvar faRetweetAlt = {\n prefix: 'fas',\n iconName: 'retweet-alt',\n icon: [640, 512, [], \"f361\", \"M392.402 383.598C404.359 395.555 395.891 416 378.981 416H120c-13.255 0-24-10.745-24-24V192H48c-21.361 0-32.045-25.895-16.971-40.971l80-80c9.373-9.372 24.568-9.372 33.941 0l80 80C240.074 166.134 229.319 192 208 192h-48v160h202.056c7.82 0 14.874 4.783 17.675 12.084a55.865 55.865 0 0 0 12.671 19.514zM592 320h-48V120c0-13.255-10.745-24-24-24H261.019c-16.91 0-25.378 20.445-13.421 32.402a55.865 55.865 0 0 1 12.671 19.514c2.801 7.302 9.855 12.084 17.675 12.084H480v160h-48c-21.313 0-32.08 25.861-16.971 40.971l80 80c9.374 9.372 24.568 9.372 33.941 0l80-80C624.041 345.9 613.368 320 592 320z\"]\n};\nvar faRibbon = {\n prefix: 'fas',\n iconName: 'ribbon',\n icon: [448, 512, [], \"f4d6\", \"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\"]\n};\nvar faRing = {\n prefix: 'fas',\n iconName: 'ring',\n icon: [512, 512, [], \"f70b\", \"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\"]\n};\nvar faRingsWedding = {\n prefix: 'fas',\n iconName: 'rings-wedding',\n icon: [512, 512, [], \"f81b\", \"M351.25 160.77A206.38 206.38 0 0 1 379.9 233 112 112 0 1 1 224 336c0-42.21 23.69-78.57 58.31-97.49 3.37 10.64 5.69 21.75 5.69 33.49a111.34 111.34 0 0 1-30.73 76.6A79.84 79.84 0 0 0 293 403.23 175.36 175.36 0 0 0 352 272c0-81.62-55.64-150.07-131-170l35-70-32-32h-96L96 32l35 70C55.64 121.93 0 190.38 0 272a176 176 0 0 0 176 176 171.77 171.77 0 0 0 22.94-1.71A175.93 175.93 0 0 0 512 336c0-92-70.7-167.49-160.75-175.23zM64 272a112.12 112.12 0 0 1 112-112c26.85 0 51.19 9.88 70.5 25.69C194.94 216.24 160 271.68 160 336a175.89 175.89 0 0 0 6.55 47C109.28 378.16 64 330.52 64 272z\"]\n};\nvar faRoad = {\n prefix: 'fas',\n iconName: 'road',\n icon: [576, 512, [], \"f018\", \"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\"]\n};\nvar faRobot = {\n prefix: 'fas',\n iconName: 'robot',\n icon: [640, 512, [], \"f544\", \"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\"]\n};\nvar faRocket = {\n prefix: 'fas',\n iconName: 'rocket',\n icon: [512, 512, [], \"f135\", \"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\"]\n};\nvar faRocketLaunch = {\n prefix: 'fas',\n iconName: 'rocket-launch',\n icon: [512, 512, [], \"e027\", \"M505.16405,19.29688c-1.176-5.4629-6.98736-11.26563-12.45106-12.4336C460.61647,0,435.46433,0,410.41962,0,307.2013,0,245.30155,55.20312,199.09162,128H94.88878c-16.29733,0-35.599,11.92383-42.88913,26.49805L2.57831,253.29688A28.39645,28.39645,0,0,0,.06231,264a24.008,24.008,0,0,0,24.00353,24H128.01866a96.00682,96.00682,0,0,1,96.01414,96V488a24.008,24.008,0,0,0,24.00353,24,28.54751,28.54751,0,0,0,10.7047-2.51562l98.747-49.40626c14.56074-7.28515,26.4746-26.56445,26.4746-42.84374V312.79688c72.58882-46.3125,128.01886-108.40626,128.01886-211.09376C512.07522,76.55273,512.07522,51.40234,505.16405,19.29688ZM384.05637,168a40,40,0,1,1,40.00589-40A40.02,40.02,0,0,1,384.05637,168ZM35.68474,352.06641C9.82742,377.91992-2.94985,442.59375.57606,511.41016c69.11565,3.55859,133.61147-9.35157,159.36527-35.10547,40.28913-40.2793,42.8774-93.98633,6.31147-130.54883C129.68687,309.19727,75.97,311.78516,35.68474,352.06641Zm81.63312,84.03125c-8.58525,8.584-30.08256,12.88672-53.11915,11.69922-1.174-22.93555,3.08444-44.49219,11.70289-53.10938,13.42776-13.42578,31.33079-14.28906,43.51813-2.10352C131.60707,404.77148,130.74562,422.67188,117.31786,436.09766Z\"]\n};\nvar faRoute = {\n prefix: 'fas',\n iconName: 'route',\n icon: [512, 512, [], \"f4d7\", \"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\"]\n};\nvar faRouteHighway = {\n prefix: 'fas',\n iconName: 'route-highway',\n icon: [448, 512, [], \"f61a\", \"M428.4 269.21c-30.48-45.42-11.8-104.47 13-155.4 3.96-8.13 3.34-17.75-1.87-25.13l-41.18-58.36c-5.06-7.18-15.76-13.1-27.49-8.61-15.37 5.88-32.67 8.89-50.26 8.89-29.51 0-59.81-8.47-83.16-26.11C233.48 1.5 228.74 0 224 0s-9.48 1.5-13.44 4.49C187.21 22.13 156.9 30.6 127.39 30.6c-17.59 0-34.89-3.01-50.25-8.89-11.82-4.52-22.49 1.52-27.49 8.61L8.47 88.69c-5.21 7.38-5.83 16.99-1.87 25.13 24.8 50.92 43.47 109.97 13 155.4-37.94 56.52-18.55 139.43 38.81 166.03L223.97 512l165.62-76.76c57.36-26.6 76.75-109.51 38.81-166.03zm-65.72 107.96l-138.7 64.29-138.65-64.29c-19.78-9.17-29.7-46.8-12.59-72.3 24.73-36.86 29.2-76.74 25.22-112.87h252.07c-3.98 36.13.49 76.02 25.22 112.88 17.23 25.66 7.05 63.2-12.57 72.29z\"]\n};\nvar faRouteInterstate = {\n prefix: 'fas',\n iconName: 'route-interstate',\n icon: [480, 512, [], \"f61b\", \"M464.83 55.14c-3.6-11.66-14.92-19.1-26.18-15.95-18.23 5.12-37.74 7.96-58.1 7.96-49.12 0-93.61-16.07-126.17-42.11C250.18 1.68 245.09 0 240 0s-10.18 1.68-14.37 5.03c-32.56 26.04-77.05 42.11-126.17 42.11-20.36 0-39.87-2.84-58.1-7.96-11.23-3.15-22.57 4.26-26.18 15.95C-21.83 175.11-6.68 410.34 240 512 486.68 410.34 501.84 175.11 464.83 55.14zM240 441.87C115.27 380.93 72.01 279.56 64.76 192h350.49c-7.26 87.56-50.52 188.93-175.25 249.87z\"]\n};\nvar faRouter = {\n prefix: 'fas',\n iconName: 'router',\n icon: [576, 512, [], \"f8da\", \"M528 320H376v-80a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v80H48a48 48 0 0 0-48 48v96a48 48 0 0 0 48 48h480a48 48 0 0 0 48-48v-96a48 48 0 0 0-48-48zM96 448a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm96 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm-32.59-320.34a15.85 15.85 0 0 0 21.86.64c96.45-86.55 244.24-85.85 341.11.42a16 16 0 0 0 21.84-.63l22.71-22.7a16.11 16.11 0 0 0-.71-23.34C444.81-27.34 259.26-27.34 137.78 82a16.11 16.11 0 0 0-.71 23.34zm46.47 38a16.12 16.12 0 0 0-.86 23.61L227.73 212a15.94 15.94 0 0 0 21.7.78c58.77-49.84 145.8-49.36 205.14.21a16.07 16.07 0 0 0 21.63-.84l22.8-22.8a16.22 16.22 0 0 0-.84-23.63c-83.83-71.91-208.42-71.91-292.28-.06z\"]\n};\nvar faRss = {\n prefix: 'fas',\n iconName: 'rss',\n icon: [448, 512, [], \"f09e\", \"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\"]\n};\nvar faRssSquare = {\n prefix: 'fas',\n iconName: 'rss-square',\n icon: [448, 512, [], \"f143\", \"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\"]\n};\nvar faRubleSign = {\n prefix: 'fas',\n iconName: 'ruble-sign',\n icon: [384, 512, [], \"f158\", \"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\"]\n};\nvar faRuler = {\n prefix: 'fas',\n iconName: 'ruler',\n icon: [640, 512, [], \"f545\", \"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\"]\n};\nvar faRulerCombined = {\n prefix: 'fas',\n iconName: 'ruler-combined',\n icon: [512, 512, [], \"f546\", \"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\"]\n};\nvar faRulerHorizontal = {\n prefix: 'fas',\n iconName: 'ruler-horizontal',\n icon: [576, 512, [], \"f547\", \"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\"]\n};\nvar faRulerTriangle = {\n prefix: 'fas',\n iconName: 'ruler-triangle',\n icon: [512, 512, [], \"f61c\", \"M501.65 452.08l-51.16-51.16-38.57 38.57c-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.31l38.57-38.57-56.57-56.57-38.57 38.57c-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.31l38.57-38.57-56.57-56.57-38.57 38.57c-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.31l38.57-38.57-56.57-56.57-38.57 38.57c-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.31l38.57-38.57-56.6-56.59-38.57 38.57c-3.12 3.12-8.19 3.12-11.31 0L72.51 111.4c-3.12-3.12-3.12-8.19 0-11.31l38.57-38.57-51.17-51.17C52.76 3.2 43.97 0 35.35 0 17.31 0 0 14.01 0 35.17V476.9C0 496.29 15.71 512 35.1 512h441.73c31.27 0 46.93-37.8 24.82-59.92zM128 384V259.46L252.54 384H128z\"]\n};\nvar faRulerVertical = {\n prefix: 'fas',\n iconName: 'ruler-vertical',\n icon: [256, 512, [], \"f548\", \"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\"]\n};\nvar faRunning = {\n prefix: 'fas',\n iconName: 'running',\n icon: [416, 512, [], \"f70c\", \"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\"]\n};\nvar faRupeeSign = {\n prefix: 'fas',\n iconName: 'rupee-sign',\n icon: [320, 512, [], \"f156\", \"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\"]\n};\nvar faRv = {\n prefix: 'fas',\n iconName: 'rv',\n icon: [640, 512, [], \"f7be\", \"M621.3 269.3L563 211c-12-12-28.4-18.8-45.4-18.8L416 192v240h.2c.1 34.1 22.1 66.3 54.9 76.2 54.8 16.6 105-23.9 105-76.2v-16h32c17.6 0 32-14.4 32-32v-69.5c-.1-17-6.8-33.2-18.8-45.2zM496 464c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm-16-176v-48h37.5c4.3 0 8.3 1.7 11.3 4.7l43.3 43.3H480zm128-160.8c-.4-52.6-43.2-95.2-96-95.2H384V16c0-8.8-7.2-16-16-16H240c-8.8 0-16 7.2-16 16v16H64C28.7 32 0 60.7 0 96v197.5c0 17 6.7 33.3 18.7 45.3L96 416v11.4c0 41.8 30.1 80 71.8 84.1 47.9 4.8 88.2-32.7 88.2-79.6v-16h128V160h192c17.9 0 32.1-14.8 32-32.8zM176 464c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm80-256c0 8.8-7.2 16-16 16H112c-8.8 0-16-7.2-16-16v-64c0-8.8 7.2-16 16-16h128c8.8 0 16 7.2 16 16v64z\"]\n};\nvar faSack = {\n prefix: 'fas',\n iconName: 'sack',\n icon: [512, 512, [], \"f81c\", \"M192 96h128l47.4-71.12A16 16 0 0 0 354.09 0H157.94a16 16 0 0 0-13.31 24.88zm128 32H192C-10.38 243.4.09 396.64.09 416c0 53 49.11 96 109.68 96h292.48c60.58 0 109.68-43 109.68-96 0-19 9.35-173.24-191.93-288z\"]\n};\nvar faSackDollar = {\n prefix: 'fas',\n iconName: 'sack-dollar',\n icon: [512, 512, [], \"f81d\", \"M192 96h128l47.4-71.12A16 16 0 0 0 354.09 0H157.94a16 16 0 0 0-13.31 24.88zm128 32H192C-10.38 243.4.09 396.64.09 416c0 53 49.11 96 109.68 96h292.48c60.58 0 109.68-43 109.68-96 0-19 9.35-173.24-191.93-288zm-46.58 278v17.34a8.69 8.69 0 0 1-8.7 8.62h-17.41a8.69 8.69 0 0 1-8.71-8.62v-17.51a63.19 63.19 0 0 1-34.16-12.17 8.55 8.55 0 0 1-.66-13l12.84-12.06a8.92 8.92 0 0 1 11-.76 26.72 26.72 0 0 0 13.93 4h30.58c7.07 0 12.84-6.35 12.84-14.22 0-6.46-3.92-12.06-9.58-13.67l-49-14.54c-20.24-6-34.39-25.2-34.39-46.74 0-26.38 20.68-47.82 46.46-48.57v-17.48a8.69 8.69 0 0 1 8.74-8.62h17.41a8.68 8.68 0 0 1 8.7 8.62v17.55a63.12 63.12 0 0 1 34.17 12.17 8.55 8.55 0 0 1 .65 13l-12.73 12.2a8.92 8.92 0 0 1-11 .75 26.78 26.78 0 0 0-13.93-4h-30.56c-7.07 0-12.84 6.35-12.84 14.21 0 6.46 3.92 12.06 9.57 13.68l49 14.54c20.24 6 34.38 25.2 34.38 46.74-.14 26.4-20.92 47.94-46.6 48.54z\"]\n};\nvar faSadCry = {\n prefix: 'fas',\n iconName: 'sad-cry',\n icon: [496, 512, [], \"f5b3\", \"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\"]\n};\nvar faSadTear = {\n prefix: 'fas',\n iconName: 'sad-tear',\n icon: [496, 512, [], \"f5b4\", \"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\"]\n};\nvar faSalad = {\n prefix: 'fas',\n iconName: 'salad',\n icon: [512, 512, [], \"f81e\", \"M96 256h73.37l-87-87a8 8 0 0 1 0-11.31l11.32-11.32a8 8 0 0 1 11.31 0l103 103V104a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v152h52.54a126.72 126.72 0 0 1-4.54-32A128.14 128.14 0 0 1 416 96c2.65 0 5.12.62 7.73.78C406.14 76.84 380.69 64 352 64a95 95 0 0 0-25.15 3.75 111.94 111.94 0 0 0-205.7 0A95 95 0 0 0 96 64a96 96 0 0 0 0 192zm224-32a95 95 0 0 0 5.88 32h169.29a47.88 47.88 0 0 1 10.57 1.24A95.87 95.87 0 1 0 320 224zm175.17 64h-479C7 288-.74 295.72.06 304.84 6.69 381.21 58.27 444.23 128 468.69V480a32 32 0 0 0 32 32h192a32 32 0 0 0 32-32v-11.51c69.4-24.62 120.66-87.49 127.27-163.65.79-9.12-6.95-16.84-16.1-16.84z\"]\n};\nvar faSandwich = {\n prefix: 'fas',\n iconName: 'sandwich',\n icon: [512, 512, [], \"f81f\", \"M480 32H32A32 32 0 0 0 0 64v96a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32zm17.9 223.29c-15.08-1.68-24-6.17-35.51-11.9-17.27-8.64-38.73-19.39-78.27-19.39s-61 10.75-78.26 19.38C291.22 250.7 280.64 256 256.22 256s-35.08-5.3-49.75-12.62c-17.28-8.63-38.78-19.38-78.36-19.38S67 234.73 49.77 243.38c-11.51 5.74-20.51 10.24-35.67 11.91A15.93 15.93 0 0 0 0 271.08v32.14a16.26 16.26 0 0 0 17.85 16c28.58-2.63 46-11.36 60.51-18.59C93 293.3 103.64 288 128.11 288s35.09 5.3 49.77 12.62c17.26 8.65 38.78 19.38 78.34 19.38s61-10.75 78.26-19.38C349.12 293.3 359.7 288 384.12 288s35 5.3 49.61 12.61c14.47 7.24 31.89 16 60.41 18.6a16.27 16.27 0 0 0 17.86-16v-32.14a15.94 15.94 0 0 0-14.1-15.78zM480 352h-64l-96 48-96-48H32a32 32 0 0 0-32 32v64a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32v-64a32 32 0 0 0-32-32z\"]\n};\nvar faSatellite = {\n prefix: 'fas',\n iconName: 'satellite',\n icon: [512, 512, [], \"f7bf\", \"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\"]\n};\nvar faSatelliteDish = {\n prefix: 'fas',\n iconName: 'satellite-dish',\n icon: [512, 512, [], \"f7c0\", \"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\"]\n};\nvar faSausage = {\n prefix: 'fas',\n iconName: 'sausage',\n icon: [512, 512, [], \"f820\", \"M447.83 69.83L463 24.18A18.36 18.36 0 0 0 445.62 0h-59.24A18.36 18.36 0 0 0 369 24.18l15.21 45.65C346.88 83 320 118.2 320 160c0 88.22-71.78 160-160 160-41.8 0-77 26.88-90.17 64.17L24.18 369A18.36 18.36 0 0 0 0 386.38v59.24A18.37 18.37 0 0 0 24.18 463l45.65-15.21C83 485.12 118.2 512 160 512c194.09 0 352-157.91 352-352 0-41.8-26.88-77-64.17-90.17zM160 400a16 16 0 0 1 0-32c114.69 0 208-93.31 208-208a16 16 0 0 1 32 0c0 132.34-107.66 240-240 240z\"]\n};\nvar faSave = {\n prefix: 'fas',\n iconName: 'save',\n icon: [448, 512, [], \"f0c7\", \"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\"]\n};\nvar faSaxHot = {\n prefix: 'fas',\n iconName: 'sax-hot',\n icon: [640, 512, [], \"f8db\", \"M83.23 176A60.88 60.88 0 0 1 72 140.8c0-7.62 8.66-30.3 28.46-57.54q2 2.61 3.89 5.22L147 147.26l27.06-33.08c6.07 12.1 9.54 22.24 9.92 26.62a60.88 60.88 0 0 1-11.21 35.2h61.34a117 117 0 0 0 5.89-35.2c0-26.63-26-81.57-62.23-115.2a301.94 301.94 0 0 0-28.1 30A387.31 387.31 0 0 0 100 0C50.88 45.58 16 105 16 140.8a117 117 0 0 0 5.89 35.2zm552.05-75.31L608 73.37A32 32 0 0 0 585.34 64h-46.83a64 64 0 0 0-45.26 18.74L449 127l-10.34-10.34a16 16 0 0 0-22.63 0L404.69 128a16 16 0 0 0 0 22.63L415 161l-14 14-10.34-10.34a16 16 0 0 0-22.63 0L356.69 176a16 16 0 0 0 0 22.63L367 209l-14 14-10.34-10.34a16 16 0 0 0-22.63 0L308.69 224a16 16 0 0 0 0 22.63L319 257 210 366a25.41 25.41 0 0 1-39.76-31l47.39-79H240a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a15.91 15.91 0 0 0 15.21 15.84C7.48 288.56 0 326.72 0 352c0 61.4 35 114.09 85.73 140.92A150 150 0 0 0 160 512c77.1 0 116.46-51.33 128-64l246.39-308a32 32 0 0 1 25-12H624c14.22 0 21.36-17.23 11.28-27.31zM88 392a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm32-88a24 24 0 1 1 24-24 24 24 0 0 1-24 24z\"]\n};\nvar faSaxophone = {\n prefix: 'fas',\n iconName: 'saxophone',\n icon: [640, 512, [], \"f8dc\", \"M635.28 68.69L608 41.37A32 32 0 0 0 585.34 32h-46.83a64 64 0 0 0-45.26 18.74L449 95l-10.37-10.31a16 16 0 0 0-22.63 0L404.69 96a16 16 0 0 0 0 22.63L415 129l-14 14-10.34-10.34a16 16 0 0 0-22.63 0L356.69 144a16 16 0 0 0 0 22.63L367 177l-14 14-10.34-10.34a16 16 0 0 0-22.63 0L308.69 192a16 16 0 0 0 0 22.63L319 225 210 334a25.41 25.41 0 0 1-39.76-31l76.16-127H272a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h11.46C18.65 207.92 0 280.13 0 320c0 61.4 35 114.09 85.73 140.92A150 150 0 0 0 160 480c77.1 0 116.46-51.33 128-64l246.39-308a32 32 0 0 1 25-12H624c14.22 0 21.36-17.23 11.28-27.31zM96 344a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm32-96a24 24 0 1 1 24-24 24 24 0 0 1-24 24z\"]\n};\nvar faScalpel = {\n prefix: 'fas',\n iconName: 'scalpel',\n icon: [512, 512, [], \"f61d\", \"M482.7 11.85c-29.2-20.83-70.18-13.03-93.49 14.22l-201.5 235.46c-8.9 10.41-1.51 26.47 12.19 26.47h131.94c9.37 0 18.28-4.1 24.37-11.22l139.02-162.44c26.37-30.8 21.23-78.41-12.53-102.49zM0 512c87 .07 170.28-29.18 234.29-81.16.2-.16.39-.32.59-.48 31.37-25.71 46.72-63.93 46.72-102.32V320H176L0 512z\"]\n};\nvar faScalpelPath = {\n prefix: 'fas',\n iconName: 'scalpel-path',\n icon: [640, 512, [], \"f61e\", \"M312 480h-80c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h80c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm160 0h-80c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h80c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm160 0h-80c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h80c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm-397.12-49.64c31.37-25.71 46.72-63.93 46.72-102.32V320H176L0 512c87 .07 170.28-29.18 234.29-81.16.2-.16.39-.32.59-.48zM482.71 11.85c-29.2-20.83-70.18-13.03-93.49 14.22l-201.5 235.46c-8.9 10.41-1.51 26.46 12.19 26.46h131.94c9.37 0 18.28-4.1 24.37-11.22l139.02-162.44c26.36-30.79 21.22-78.4-12.53-102.48z\"]\n};\nvar faScanner = {\n prefix: 'fas',\n iconName: 'scanner',\n icon: [640, 512, [], \"f488\", \"M368 64H96c-53 0-96 43-96 96 0 52.4 42.1 94.9 94.3 95.8L6.4 408C-6.9 431 1 460.3 24 473.6l55.4 32c23 13.3 52.3 5.4 65.6-17.6l133.9-232H368c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16zM256 448c17.7 0 32-14.3 32-32V304.3L205 448h51zm376 0H456c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zm0-96H456c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm0-288H456c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8V72c0-4.4-3.6-8-8-8zm0-64H456c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8zm0 288H456c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm0-128H456c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h176c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"]\n};\nvar faScannerImage = {\n prefix: 'fas',\n iconName: 'scanner-image',\n icon: [640, 512, [], \"f8f3\", \"M10.93 108.71L467.65 256h167.59l3.93-11.75a16 16 0 0 0-10.1-20.25L36.3 32.83a16 16 0 0 0-20.24 10.1L.83 88.46a16 16 0 0 0 10.1 20.25zM32 288a32 32 0 0 0-32 32v128a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V288zm88 112a8 8 0 0 1-8 8H80a8 8 0 0 1-8-8v-32a8 8 0 0 1 8-8h32a8 8 0 0 1 8 8zm96 0a8 8 0 0 1-8 8h-32a8 8 0 0 1-8-8v-32a8 8 0 0 1 8-8h32a8 8 0 0 1 8 8z\"]\n};\nvar faScannerKeyboard = {\n prefix: 'fas',\n iconName: 'scanner-keyboard',\n icon: [576, 512, [], \"f489\", \"M400 96H16c-8.8 0-16 7.2-16 16v137.4c0 4.2 1.7 8.3 4.7 11.3L32 288v176c0 26.5 21.5 48 48 48h256c26.5 0 48-21.5 48-48V288l27.3-27.3c3-3 4.7-7.1 4.7-11.3V112c0-8.8-7.2-16-16-16zM192 440c0 4.4-3.6 8-8 8h-80c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h80c4.4 0 8 3.6 8 8v48zm0-96c0 4.4-3.6 8-8 8h-80c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h80c4.4 0 8 3.6 8 8v48zm128 96c0 4.4-3.6 8-8 8h-80c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h80c4.4 0 8 3.6 8 8v48zm0-96c0 4.4-3.6 8-8 8h-80c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h80c4.4 0 8 3.6 8 8v48zm32-128c0 4.4-3.6 8-8 8H72c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h272c4.4 0 8 3.6 8 8v48zM256 8c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v56h64V8zm152-8h-48c-4.4 0-8 3.6-8 8v56h64V8c0-4.4-3.6-8-8-8zm160 0h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8zM320 8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56h32V8zm152-8h-16c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8z\"]\n};\nvar faScannerTouchscreen = {\n prefix: 'fas',\n iconName: 'scanner-touchscreen',\n icon: [576, 512, [], \"f48a\", \"M400 96H16c-8.8 0-16 7.2-16 16v137.4c0 4.2 1.7 8.3 4.7 11.3L32 288v176c0 26.5 21.5 48 48 48h256c26.5 0 48-21.5 48-48V288l27.3-27.3c3-3 4.7-7.1 4.7-11.3V112c0-8.8-7.2-16-16-16zm-80 336c0 8.8-7.2 16-16 16H112c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h192c8.8 0 16 7.2 16 16v256zM256 8c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v56h64V8zm64 0c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v56h32V8zm88-8h-48c-4.4 0-8 3.6-8 8v56h64V8c0-4.4-3.6-8-8-8zm160 0h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8zm-96 0h-16c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8z\"]\n};\nvar faScarecrow = {\n prefix: 'fas',\n iconName: 'scarecrow',\n icon: [448, 512, [], \"f70d\", \"M224 448.1c-7.7 0-15.4-1.9-22.2-5.5l-9.8-5.2V496c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-58.7l-9.8 5.2c-6.8 3.7-14.5 5.6-22.2 5.6zm221.7-261.8L419.3 160l18.3-18.3c5-5 1.5-13.7-5.7-13.7H314.1c3.6-10 5.9-20.7 5.9-32 0-53-43-96-96-96s-96 43-96 96c0 11.3 2.3 22 5.9 32H16c-7.1 0-10.7 8.6-5.7 13.7L28.7 160 2.3 186.3c-3.1 3.1-3.1 8.2 0 11.3L28.7 224l-18.3 18.3c-5 5-1.5 13.7 5.7 13.7h106.1l-26 141.3c-2.1 12.9 11.2 22.8 22.9 16.9l32.7-24.2c5-3.7 11.6-4.2 17.1-1.3l47.9 25.5c4.5 2.4 9.8 2.4 14.3 0l47.9-25.5c5.5-2.9 12.1-2.4 17.1 1.3l32.7 24.2c11.7 5.9 25.1-4 22.9-16.9L325.9 256H432c7.1 0 10.7-8.6 5.7-13.7L419.3 224l26.3-26.3c3.2-3.2 3.2-8.2.1-11.4zM192 96c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm64 16c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z\"]\n};\nvar faScarf = {\n prefix: 'fas',\n iconName: 'scarf',\n icon: [512, 512, [], \"f7c1\", \"M214.2 100.9c36.9-8.6 68.1-3.7 84.4.2l-19.5 19.4 109.8 109.6c46.6-51.7 20.4-105.3 13.2-117.3l-43.7-73.4c-4.3-7.2-9.9-13.3-16.8-18-40.6-27.5-127.3-29.6-171.3.1-6.9 4.7-12.5 10.8-16.8 18l-43.6 73.1c-1.5 2.5-37.1 62.1 11.5 115.8l135.1 140.7L369.6 256 214.2 100.9zM166 323.7L47.6 441.9c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l118.4-118.2-22.6-22.6zm-45.3-45.1L2.3 396.7c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l118.4-118.2-22.6-22.5zM92.9 487.1c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l118.4-118.2-22.6-22.6L92.9 487.1zm208.9-118.2l-22.6 22.6 117.4 117.2c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3L301.8 368.9zm207.9 26.8L392.3 278.6l-22.6 22.6L487 418.3c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.2-3.1 3.2-8.1.1-11.3zm-162.7-72l-22.6 22.6 117.4 117.2c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.1 3.1-8.2 0-11.3L347 323.7z\"]\n};\nvar faSchool = {\n prefix: 'fas',\n iconName: 'school',\n icon: [640, 512, [], \"f549\", \"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\"]\n};\nvar faScrewdriver = {\n prefix: 'fas',\n iconName: 'screwdriver',\n icon: [512, 512, [], \"f54a\", \"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\"]\n};\nvar faScroll = {\n prefix: 'fas',\n iconName: 'scroll',\n icon: [640, 512, [], \"f70e\", \"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\"]\n};\nvar faScrollOld = {\n prefix: 'fas',\n iconName: 'scroll-old',\n icon: [640, 512, [], \"f70f\", \"M48 0C21.53 0 0 21.53 0 48v64c0 8.84 7.16 16 16 16h80V48C96 21.53 74.47 0 48 0zm208 412.57V352h288v-57.37c0-4.24-1.69-8.31-4.69-11.31L512 256l27.31-27.31c3-3 4.69-7.07 4.69-11.31v-50.75c0-4.24-1.69-8.31-4.69-11.31L512 128l26.86-26.86c3.27-3.27 5.21-7.84 4.86-12.45C539.98 39.15 498.48 0 448 0H111.59C121.74 13.41 128 29.92 128 48v137.37c0 4.24 1.69 8.31 4.69 11.31L160 224l-27.31 27.31c-3 3-4.69 7.07-4.69 11.31V416c0 38.87 34.65 69.65 74.75 63.12C234.22 474 256 444.46 256 412.57zm187.31-23.88L416 416l-27.31-27.31c-3-3-7.07-4.69-11.31-4.69H288v32c0 52.93-43.06 96-96 96h336c61.86 0 112-50.14 112-112 0-8.84-7.16-16-16-16H454.63c-4.25 0-8.32 1.69-11.32 4.69z\"]\n};\nvar faScrubber = {\n prefix: 'fas',\n iconName: 'scrubber',\n icon: [496, 512, [], \"f2f8\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 312c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64z\"]\n};\nvar faScythe = {\n prefix: 'fas',\n iconName: 'scythe',\n icon: [640, 512, [], \"f710\", \"M608 0h-25.45l-59.74 288H400a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h109.54l-29.26 141.05A16 16 0 0 0 496 512h31.45a16 16 0 0 0 15.72-13l96.27-461A32 32 0 0 0 608 0zm-58.13 0h-211C192 0 64 64 0 192h510z\"]\n};\nvar faSdCard = {\n prefix: 'fas',\n iconName: 'sd-card',\n icon: [384, 512, [], \"f7c2\", \"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\"]\n};\nvar faSearch = {\n prefix: 'fas',\n iconName: 'search',\n icon: [512, 512, [], \"f002\", \"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\"]\n};\nvar faSearchDollar = {\n prefix: 'fas',\n iconName: 'search-dollar',\n icon: [512, 512, [], \"f688\", \"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\"]\n};\nvar faSearchLocation = {\n prefix: 'fas',\n iconName: 'search-location',\n icon: [512, 512, [], \"f689\", \"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\"]\n};\nvar faSearchMinus = {\n prefix: 'fas',\n iconName: 'search-minus',\n icon: [512, 512, [], \"f010\", \"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\"]\n};\nvar faSearchPlus = {\n prefix: 'fas',\n iconName: 'search-plus',\n icon: [512, 512, [], \"f00e\", \"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\"]\n};\nvar faSeedling = {\n prefix: 'fas',\n iconName: 'seedling',\n icon: [512, 512, [], \"f4d8\", \"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\"]\n};\nvar faSendBack = {\n prefix: 'fas',\n iconName: 'send-back',\n icon: [640, 512, [], \"f87e\", \"M256 224V32a32 32 0 0 0-32-32H32A32 32 0 0 0 0 32v192a32 32 0 0 0 32 32h192a32 32 0 0 0 32-32zm-64-32H64V64h128zm416 64H416a32 32 0 0 0-32 32v192a32 32 0 0 0 32 32h192a32 32 0 0 0 32-32V288a32 32 0 0 0-32-32zm-32 192H448V320h128zm-96-224v-80a48 48 0 0 0-48-48H288v128a64.07 64.07 0 0 1-64 64h-64v80a48 48 0 0 0 48 48h144V288a64.07 64.07 0 0 1 64-64z\"]\n};\nvar faSendBackward = {\n prefix: 'fas',\n iconName: 'send-backward',\n icon: [512, 512, [], \"f87f\", \"M464,160H208a48,48,0,0,0-48,48V464a48,48,0,0,0,48,48H464a48,48,0,0,0,48-48h0V208A48,48,0,0,0,464,160ZM448,448H224V224H448ZM352,128V48A48,48,0,0,0,304,0H48A48,48,0,0,0,0,48V304a48,48,0,0,0,48,48h80V208a80.09,80.09,0,0,1,80-80Z\"]\n};\nvar faSensor = {\n prefix: 'fas',\n iconName: 'sensor',\n icon: [448, 512, [], \"e028\", \"M384,32H64A64,64,0,0,0,0,96V416a64,64,0,0,0,64,64H384a64,64,0,0,0,64-64V96A64,64,0,0,0,384,32ZM96,272a16,16,0,0,1-32,0V112a16,16,0,0,1,32,0Zm64,0a16,16,0,0,1-32,0V112a16,16,0,0,1,32,0Zm64,0a16,16,0,0,1-32,0V112a16,16,0,0,1,32,0Z\"]\n};\nvar faSensorAlert = {\n prefix: 'fas',\n iconName: 'sensor-alert',\n icon: [640, 512, [], \"e029\", \"M235.19,387.38,376,143.23a82.24,82.24,0,0,1,72-41.58V96a64,64,0,0,0-64-64H64A64,64,0,0,0,0,96V416a64,64,0,0,0,64,64H242.51c-2.47-3.15-5.24-6-7.29-9.54A82.22,82.22,0,0,1,235.19,387.38ZM96,272a16,16,0,0,1-32,0V112a16,16,0,0,1,32,0Zm64,0a16,16,0,0,1-32,0V112a16,16,0,0,1,32,0Zm48,16a16,16,0,0,1-16-16V112a16,16,0,0,1,32,0V272A16,16,0,0,1,208,288ZM633.09,403.37,492.27,159.22c-19.66-34.09-68.87-34.09-88.53,0L262.91,403.36C243.26,437.43,267.85,480,307.18,480H588.82C628.15,480,652.74,437.43,633.09,403.37ZM448,432a24,24,0,1,1,24-24A24,24,0,0,1,448,432Zm19.08-82.8A12,12,0,0,1,455.14,360H440.87a12,12,0,0,1-11.95-10.8l-9.59-96A12,12,0,0,1,431.27,240h33.47a12,12,0,0,1,11.94,13.2Z\"]\n};\nvar faSensorFire = {\n prefix: 'fas',\n iconName: 'sensor-fire',\n icon: [640, 512, [], \"e02a\", \"M288.89,315.43c0-61.11,53.71-153.47,130.6-224.61a32.08,32.08,0,0,1,21.83-8.53c2.27,0,4.45.75,6.68,1.23A64.11,64.11,0,0,0,385.08,32H64.18A64.08,64.08,0,0,0,0,96V416a64.08,64.08,0,0,0,64.18,64H376.46A197.48,197.48,0,0,1,288.89,315.43ZM96.27,272a16,16,0,0,1-32.09,0V112a16,16,0,0,1,32.09,0Zm64.18,0a16,16,0,0,1-32.09,0V112a16,16,0,0,1,32.09,0Zm64.18,0a16,16,0,0,1-32.09,0V112a16,16,0,0,1,32.09,0ZM551.12,150.86A426.14,426.14,0,0,0,511,193.7,553.25,553.25,0,0,0,440,114.29c-70.19,65.11-120,150-120,201.14C320,406.33,391.63,480,480,480s160-73.67,160-164.57C640,277.38,602.87,198.89,551.12,150.86Zm-11.06,247A100.9,100.9,0,0,1,482.14,416C428,416,384,380.19,384,322.07c0-29,18.23-54.48,54.6-98.07,5.19,6,74.11,94,74.11,94l44-50.14c3.11,5.12,5.93,10.15,8.44,15C585.65,322,577,372.05,540.06,397.9Z\"]\n};\nvar faSensorOn = {\n prefix: 'fas',\n iconName: 'sensor-on',\n icon: [640, 512, [], \"e02b\", \"M384,32H64A64,64,0,0,0,0,96V416a64,64,0,0,0,64,64H384a64,64,0,0,0,64-64V96A64,64,0,0,0,384,32ZM96,272a16,16,0,0,1-32,0V112a16,16,0,0,1,32,0Zm64,0a16,16,0,0,1-32,0V112a16,16,0,0,1,32,0Zm64,0a16,16,0,0,1-32,0V112a16,16,0,0,1,32,0Zm392-40H552a24,24,0,0,0,0,48h64a24,24,0,0,0,0-48Zm-80-88a23.87,23.87,0,0,0,13.29-4l48-32a24,24,0,1,0-26.62-39.92l-48,32A24,24,0,0,0,536,144Zm13.29,228A24,24,0,1,0,522.69,412l48,32A24,24,0,1,0,597.31,404Z\"]\n};\nvar faSensorSmoke = {\n prefix: 'fas',\n iconName: 'sensor-smoke',\n icon: [640, 512, [], \"e02c\", \"M572.67,321.28a47.81,47.81,0,0,0-82.4-46.63,79.94,79.94,0,0,0-152.63,45.52c-.56,0-1.08-.17-1.64-.17a80,80,0,0,0,0,160H560a79.85,79.85,0,0,0,12.67-158.72Zm-268.08-28.8A112.15,112.15,0,0,1,416,192c11.14,0,21.74,2.15,32,5.22V96a64,64,0,0,0-64-64H64A64,64,0,0,0,0,96V416a64,64,0,0,0,64,64H257.86a111.81,111.81,0,0,1,46.73-187.52ZM96,272a16,16,0,0,1-32,0V112a16,16,0,0,1,32,0Zm64,0a16,16,0,0,1-32,0V112a16,16,0,0,1,32,0Zm48,16a16,16,0,0,1-16-16V112a16,16,0,0,1,32,0V272A16,16,0,0,1,208,288Z\"]\n};\nvar faServer = {\n prefix: 'fas',\n iconName: 'server',\n icon: [512, 512, [], \"f233\", \"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\"]\n};\nvar faShapes = {\n prefix: 'fas',\n iconName: 'shapes',\n icon: [512, 512, [], \"f61f\", \"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\"]\n};\nvar faShare = {\n prefix: 'fas',\n iconName: 'share',\n icon: [512, 512, [], \"f064\", \"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\"]\n};\nvar faShareAll = {\n prefix: 'fas',\n iconName: 'share-all',\n icon: [576, 512, [], \"f367\", \"M439.691 226.164L263.687 378.15C248.3 391.439 224 380.687 224 359.986v-84.175c-108.668 12.533-151.102 58.854-112.59 182.015 5.034 16.098-14.424 28.562-28.077 18.631C39.582 444.635 0 383.766 0 322.326 0 190.99 94.818 149.009 224 138.777V56.015c0-20.667 24.28-31.469 39.687-18.164l176.004 151.985c11.086 9.575 11.071 26.767 0 36.328zm128-36.328L391.687 37.851C376.28 24.546 352 35.348 352 56.015v15.818l108.607 93.786A55.949 55.949 0 0 1 480 207.998a55.96 55.96 0 0 1-19.394 42.385L352 344.168v15.818c0 20.701 24.3 31.453 39.687 18.164l176.004-151.986c11.071-9.561 11.086-26.753 0-36.328z\"]\n};\nvar faShareAlt = {\n prefix: 'fas',\n iconName: 'share-alt',\n icon: [448, 512, [], \"f1e0\", \"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\"]\n};\nvar faShareAltSquare = {\n prefix: 'fas',\n iconName: 'share-alt-square',\n icon: [448, 512, [], \"f1e1\", \"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\"]\n};\nvar faShareSquare = {\n prefix: 'fas',\n iconName: 'share-square',\n icon: [576, 512, [], \"f14d\", \"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\"]\n};\nvar faSheep = {\n prefix: 'fas',\n iconName: 'sheep',\n icon: [640, 512, [], \"f711\", \"M622.25 105.96L576 83.22V64c0-17.67-14.33-32-32-32h-64c0-17.67-14.33-32-32-32s-32 14.33-32 32v76.82c-17.53-15.92-47.07-15.86-64.62.42-8.6-8.16-20.16-13.24-32.99-13.24-12.47 0-24 4.8-32.64 12.8-8.64-8-19.83-12.8-32.64-12.8-12.47 0-24 4.8-32.31 12.8-8.64-8-20.16-12.8-32.64-12.8-13.12 0-24.97 5.44-33.61 13.75-11.19-9.28-26.23-13.75-41.59-10.23-17.59 3.84-31.03 16.95-35.84 33.28-16.64-2.88-34.23 3.2-45.44 17.28-11.52 14.08-13.44 32.64-7.03 48.31C9.92 206.72 0 222.39 0 240.31c0 18.23 10.23 33.92 24.95 41.92-6.41 15.69-4.16 34.23 7.05 48.31 11.52 14.09 29.11 20.17 45.75 17.28 4.08 13.61 14.64 24.76 28.47 30.27l-6.14 16.38a63.973 63.973 0 0 0-2.16 38l16.85 67.41A16.002 16.002 0 0 0 130.29 512h65.96c10.41 0 18.05-9.78 15.52-19.88l-18.31-73.26 14.76-39.36c4.73-2.15 9.22-4.78 12.9-8.31 8.64 8 20.17 12.81 32.64 12.81 12.48 0 24-4.81 32.64-12.81 8.64 8 19.84 12.81 32.64 12.81 12.52 0 23.87-4.98 32.39-12.97.17.16.4.21.57.37V496c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V330.67L483.5 307a64.009 64.009 0 0 0 28.5-53.25V192h87.66c9.26 0 17.76-4.9 22.37-12.94 7.59-13.26 17.98-33.45 17.98-44.59a31.798 31.798 0 0 0-17.76-28.51zM512 112c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faShekelSign = {\n prefix: 'fas',\n iconName: 'shekel-sign',\n icon: [448, 512, [], \"f20b\", \"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\"]\n};\nvar faShield = {\n prefix: 'fas',\n iconName: 'shield',\n icon: [512, 512, [], \"f132\", \"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.3z\"]\n};\nvar faShieldAlt = {\n prefix: 'fas',\n iconName: 'shield-alt',\n icon: [512, 512, [], \"f3ed\", \"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\"]\n};\nvar faShieldCheck = {\n prefix: 'fas',\n iconName: 'shield-check',\n icon: [512, 512, [], \"f2f7\", \"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.3zm-47.2 114.2l-184 184c-6.2 6.2-16.4 6.2-22.6 0l-104-104c-6.2-6.2-6.2-16.4 0-22.6l22.6-22.6c6.2-6.2 16.4-6.2 22.6 0l70.1 70.1 150.1-150.1c6.2-6.2 16.4-6.2 22.6 0l22.6 22.6c6.3 6.3 6.3 16.4 0 22.6z\"]\n};\nvar faShieldCross = {\n prefix: 'fas',\n iconName: 'shield-cross',\n icon: [448, 512, [], \"f712\", \"M420.43 83.69l-179.2-80c-11.03-4.92-23.43-4.92-34.46 0l-179.2 80C10.88 91.14 0 108.62 0 128c0 198.49 106.86 335.71 206.77 380.31 11.03 4.92 23.43 4.92 34.46 0C321.13 472.64 448 349.28 448 128c0-19.38-10.88-36.86-27.57-44.31zM374.09 224H256v200.27c-11.34 8.92-22.26 16.12-32.07 21.3-10.68-5.51-21.36-12.66-31.93-20.81V224H74.8c-4.39-20.25-7.37-41.58-8.9-64H192V80.37l32-14.29 32 14.29V160h126.74c-1.47 22.72-4.4 44.07-8.65 64z\"]\n};\nvar faShieldVirus = {\n prefix: 'fas',\n iconName: 'shield-virus',\n icon: [512, 512, [], \"e06c\", \"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\"]\n};\nvar faShip = {\n prefix: 'fas',\n iconName: 'ship',\n icon: [640, 512, [], \"f21a\", \"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\"]\n};\nvar faShippingFast = {\n prefix: 'fas',\n iconName: 'shipping-fast',\n icon: [640, 512, [], \"f48b\", \"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\"]\n};\nvar faShippingTimed = {\n prefix: 'fas',\n iconName: 'shipping-timed',\n icon: [640, 512, [], \"f48c\", \"M248 160h-24v-56c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v80c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm376 192h-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 48zm48-176c-61.9 0-112-50.1-112-112S146.1 64 208 64s112 50.1 112 112-50.1 112-112 112zm272 176c-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\"]\n};\nvar faShishKebab = {\n prefix: 'fas',\n iconName: 'shish-kebab',\n icon: [512, 512, [], \"f821\", \"M126.55 255.59a30.61 30.61 0 0 0-43.28 0L41 297.89a30.6 30.6 0 0 0 0 43.29L170.82 471a30.6 30.6 0 0 0 43.29 0l42.3-42.3a30.61 30.61 0 0 0 0-43.28zm108.22-108.21a30.62 30.62 0 0 0-43.29 0l-42.3 42.3a30.61 30.61 0 0 0 0 43.28L279 362.82a30.61 30.61 0 0 0 43.28 0l42.3-42.3a30.6 30.6 0 0 0 0-43.29zM4.55 473.52a15.49 15.49 0 0 0 0 21.94l12 12a15.49 15.49 0 0 0 21.94 0l61.78-61.73-33.95-33.94zM511.21 84.07c-3.78-29.71-21.06-55.68-47.42-71.21a95.17 95.17 0 0 0-97.93 1.43C323.2 41 307.71 94 330 138.88c1.44 2.93 2.28 7.16 0 9.49l-24.47 24.45 33.93 33.93 24.48-24.46c16.72-16.73 20.28-42.14 9.09-64.72-9.62-19.43-6-48.25 19.61-63.36a45.55 45.55 0 0 1 45.92-.53c14.22 8 23.15 21 25.13 36.45a47.88 47.88 0 0 1-6 30.09c-3.71 6.39-3.31 14.32 1.91 19.55l12.29 12.29c6.72 6.72 18.17 6.09 23.54-1.75a95.31 95.31 0 0 0 15.78-66.24z\"]\n};\nvar faShoePrints = {\n prefix: 'fas',\n iconName: 'shoe-prints',\n icon: [640, 512, [], \"f54b\", \"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\"]\n};\nvar faShoppingBag = {\n prefix: 'fas',\n iconName: 'shopping-bag',\n icon: [448, 512, [], \"f290\", \"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\"]\n};\nvar faShoppingBasket = {\n prefix: 'fas',\n iconName: 'shopping-basket',\n icon: [576, 512, [], \"f291\", \"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\"]\n};\nvar faShoppingCart = {\n prefix: 'fas',\n iconName: 'shopping-cart',\n icon: [576, 512, [], \"f07a\", \"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\"]\n};\nvar faShovel = {\n prefix: 'fas',\n iconName: 'shovel',\n icon: [512, 512, [], \"f713\", \"M500.3 96.38L415.62 11.7c-15.59-15.59-40.97-15.59-56.56 0l-32.67 32.67c-18.94 18.94-29.25 44.31-29.25 70.55 0 6.53.64 13.13 1.95 19.69 1.74 8.69 4.75 16.84 8.53 24.53L197.36 269.39l-45.26-45.26c-12.5-12.5-32.76-12.5-45.25 0l-67.88 67.88C-11.02 342-6.29 473.03 16.34 495.66c22.63 22.63 153.66 27.36 203.65-22.63l67.88-67.88c12.5-12.5 12.5-32.76 0-45.25l-45.26-45.26 110.26-110.26c7.7 3.79 15.87 6.8 24.57 8.54 32.81 6.56 66.53-3.64 90.19-27.3l32.67-32.67c15.6-15.6 15.6-40.97 0-56.57zm-77.92 43.99a35.87 35.87 0 0 1-32.42 9.8c-14.23-2.86-25.27-13.91-28.13-28.17-2.33-11.83 1.31-23.91 9.8-32.38l15.7-15.7 50.75 50.75-15.7 15.7z\"]\n};\nvar faShovelSnow = {\n prefix: 'fas',\n iconName: 'shovel-snow',\n icon: [512, 512, [], \"f7c3\", \"M503.2 72.3L439.7 8.8C428-2.9 409-2.9 397.3 8.8l-24.5 24.5c-14.2 14.2-21.9 33.2-21.9 52.9 0 4.9.5 9.8 1.5 14.8 1.3 6.5 3.6 12.6 6.4 18.4l-99.3 99.3-49.3-49.3c-11.3-11.3-29.3-12.5-41.9-2.7L12.4 287c-15.2 11.7-16.6 34.1-3 47.6l168 168c13.6 13.6 35.9 12.1 47.6-3l120.4-155.8c9.8-12.7 8.6-30.6-2.7-41.9l-49.3-49.3 99.3-99.3c5.8 2.8 11.9 5.1 18.4 6.4 24.6 4.9 49.9-2.7 67.6-20.5l24.5-24.5c11.7-11.7 11.7-30.7 0-42.4zM112 352c-4.1 0-8.2-1.6-11.3-4.7-6.2-6.2-6.2-16.4 0-22.6l80-80c6.2-6.3 16.4-6.3 22.6 0 6.2 6.2 6.2 16.4 0 22.6l-80 80c-3.1 3.1-7.2 4.7-11.3 4.7zm155.3-20.7l-80 80c-3.1 3.1-7.2 4.7-11.3 4.7s-8.2-1.6-11.3-4.7c-6.2-6.2-6.2-16.4 0-22.6l80-80c6.2-6.2 16.4-6.2 22.6 0s6.3 16.4 0 22.6zm177.5-226c-6.4 6.4-15.5 9.1-24.3 7.3-10.7-2.1-19-10.4-21.1-21.1-1.7-8.9 1-17.9 7.3-24.3l11.8-11.8 38.1 38.1-11.8 11.8z\"]\n};\nvar faShower = {\n prefix: 'fas',\n iconName: 'shower',\n icon: [512, 512, [], \"f2cc\", \"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\"]\n};\nvar faShredder = {\n prefix: 'fas',\n iconName: 'shredder',\n icon: [512, 512, [], \"f68a\", \"M232 496c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-80h-48v80zm-96 0c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-80h-48v80zm-96 0c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-80H40v80zm288 0c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-80h-48v80zm120-304V77.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 16h480c8.84 0 16-7.16 16-16V256c0-35.35-28.65-64-64-64zm-64 32H128V64h192v48c0 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 24zm-8 200c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-80h-48v80z\"]\n};\nvar faShuttleVan = {\n prefix: 'fas',\n iconName: 'shuttle-van',\n icon: [640, 512, [], \"f5b6\", \"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\"]\n};\nvar faShuttlecock = {\n prefix: 'fas',\n iconName: 'shuttlecock',\n icon: [512, 512, [], \"f45b\", \"M484 192h-20c0 6 4.3 55.7-44.7 71.2L328.1 292l-26.4 45.4-78 36.3-25.7-25.8 70.8-70.8 140.8-44.5c13.3-4.2 22.4-16.6 22.4-30.5V108c0-15.5-12.5-28-28-28h-94.1c-14 0-26.3 9.1-30.5 22.4l-44.5 140.8-70.8 70.8-25.7-25.7 36.3-78 45.4-26.4 28.8-91.2C263.4 46.7 307.7 48 320 48V28c0-15.4-12.6-28-28-28h-54.6c-10.8 0-20.8 6.3-25.4 16.2L95.5 266.5l-39.2 39.2 150 150 39.2-39.2L495.8 300c9.8-4.6 16.2-14.5 16.2-25.4V220c0-15.4-12.6-28-28-28zM31.1 331c-41.4 41.4-41.4 108.6 0 150 41.4 41.4 108.6 41.4 150 0l2.6-2.6-150-150-2.6 2.6z\"]\n};\nvar faSickle = {\n prefix: 'fas',\n iconName: 'sickle',\n icon: [512, 512, [], \"f822\", \"M129.94 308.69a16 16 0 0 0-22.63 0l-22.62 22.62a16 16 0 0 0 0 22.63l2.74 2.75-82.74 82.74a16 16 0 0 0 0 22.63L50 507.31a16 16 0 0 0 22.63 0l82.75-82.75 2.74 2.74a16 16 0 0 0 22.63 0l22.62-22.62a16 16 0 0 0 0-22.63zM320 0c-96 0-166.25 69.31-184.12 151.44-13.74 63.14 10.71 128.65 56.41 174.34L224 355.87l35.42-35.42c-38.53-64.2-23.88-151.27 46.88-196 43.09-27.24 99.58-28.9 144.05-4a148.11 148.11 0 0 1 47.33 41.42c5.08 6.9 15.79 1.93 14.14-6.48C501.17 100.72 448 0 320 0z\"]\n};\nvar faSigma = {\n prefix: 'fas',\n iconName: 'sigma',\n icon: [384, 512, [], \"f68b\", \"M352 32H52.03C32.37 32 14.59 42.89 5.68 60.44c-8.91 17.53-7.25 38.31 4.31 54.16L132.66 256 10.03 397.36c-11.59 15.89-13.25 36.67-4.34 54.2C14.59 469.11 32.37 480 52.03 480H352c17.67 0 32-14.33 32-32v-72c0-13.25-10.75-24-24-24h-48c-13.25 0-24 10.75-24 24v8H142.25l109.09-128-109.09-128H288v8c0 13.25 10.75 24 24 24h48c13.25 0 24-10.75 24-24V64c0-17.67-14.33-32-32-32z\"]\n};\nvar faSign = {\n prefix: 'fas',\n iconName: 'sign',\n icon: [512, 512, [], \"f4d9\", \"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\"]\n};\nvar faSignIn = {\n prefix: 'fas',\n iconName: 'sign-in',\n icon: [512, 512, [], \"f090\", \"M137.2 110.3l21.9-21.9c9.3-9.3 24.5-9.4 33.9-.1L344.9 239c9.5 9.4 9.5 24.7 0 34.1L193 423.7c-9.4 9.3-24.5 9.3-33.9-.1l-21.9-21.9c-9.7-9.7-9.3-25.4.8-34.7l77.6-71.1H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h191.5l-77.6-71.1c-10-9.1-10.4-24.9-.7-34.5zM512 352V160c0-53-43-96-96-96h-84c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h84c17.7 0 32 14.3 32 32v192c0 17.7-14.3 32-32 32h-84c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h84c53 0 96-43 96-96z\"]\n};\nvar faSignInAlt = {\n prefix: 'fas',\n iconName: 'sign-in-alt',\n icon: [512, 512, [], \"f2f6\", \"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\"]\n};\nvar faSignLanguage = {\n prefix: 'fas',\n iconName: 'sign-language',\n icon: [448, 512, [], \"f2a7\", \"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\"]\n};\nvar faSignOut = {\n prefix: 'fas',\n iconName: 'sign-out',\n icon: [512, 512, [], \"f08b\", \"M180 448H96c-53 0-96-43-96-96V160c0-53 43-96 96-96h84c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H96c-17.7 0-32 14.3-32 32v192c0 17.7 14.3 32 32 32h84c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12zm117.9-303.1l77.6 71.1H184c-13.3 0-24 10.7-24 24v32c0 13.3 10.7 24 24 24h191.5l-77.6 71.1c-10.1 9.2-10.4 25-.8 34.7l21.9 21.9c9.3 9.3 24.5 9.4 33.9.1l152-150.8c9.5-9.4 9.5-24.7 0-34.1L353 88.3c-9.4-9.3-24.5-9.3-33.9.1l-21.9 21.9c-9.7 9.6-9.3 25.4.7 34.6z\"]\n};\nvar faSignOutAlt = {\n prefix: 'fas',\n iconName: 'sign-out-alt',\n icon: [512, 512, [], \"f2f5\", \"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\"]\n};\nvar faSignal = {\n prefix: 'fas',\n iconName: 'signal',\n icon: [640, 512, [], \"f012\", \"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\"]\n};\nvar faSignal1 = {\n prefix: 'fas',\n iconName: 'signal-1',\n icon: [640, 512, [], \"f68c\", \"M88 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-16z\"]\n};\nvar faSignal2 = {\n prefix: 'fas',\n iconName: 'signal-2',\n icon: [640, 512, [], \"f68d\", \"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-16z\"]\n};\nvar faSignal3 = {\n prefix: 'fas',\n iconName: 'signal-3',\n icon: [640, 512, [], \"f68e\", \"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-16z\"]\n};\nvar faSignal4 = {\n prefix: 'fas',\n iconName: 'signal-4',\n icon: [640, 512, [], \"f68f\", \"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-16z\"]\n};\nvar faSignalAlt = {\n prefix: 'fas',\n iconName: 'signal-alt',\n icon: [640, 512, [], \"f690\", \"M96 384H64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160-128h-32c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V288c0-17.67-14.33-32-32-32zm160-128h-32c-17.67 0-32 14.33-32 32v320c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V160c0-17.67-14.33-32-32-32zM576 0h-32c-17.67 0-32 14.33-32 32v448c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32z\"]\n};\nvar faSignalAlt1 = {\n prefix: 'fas',\n iconName: 'signal-alt-1',\n icon: [640, 512, [], \"f691\", \"M96 384H64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z\"]\n};\nvar faSignalAlt2 = {\n prefix: 'fas',\n iconName: 'signal-alt-2',\n icon: [640, 512, [], \"f692\", \"M96 384H64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160-128h-32c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V288c0-17.67-14.33-32-32-32z\"]\n};\nvar faSignalAlt3 = {\n prefix: 'fas',\n iconName: 'signal-alt-3',\n icon: [640, 512, [], \"f693\", \"M96 384H64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160-128h-32c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V288c0-17.67-14.33-32-32-32zm160-128h-32c-17.67 0-32 14.33-32 32v320c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V160c0-17.67-14.33-32-32-32z\"]\n};\nvar faSignalAltSlash = {\n prefix: 'fas',\n iconName: 'signal-alt-slash',\n icon: [640, 512, [], \"f694\", \"M633.82 458.1L608 438.14V32c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v331.95l-64-49.46V160c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v80.29L45.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.45zM96 384H64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm96-96v192c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V352.6l-94.33-72.9c-.74 2.71-1.67 5.36-1.67 8.3zm160 192c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-3.73l-96-74.2V480z\"]\n};\nvar faSignalSlash = {\n prefix: 'fas',\n iconName: 'signal-slash',\n icon: [640, 512, [], \"f695\", \"M633.82 458.1L616 444.33V16c0-8.84-7.16-16-16-16h-48c-8.84 0-16 7.16-16 16v366.5l-48-37.1V112c0-8.84-7.16-16-16-16h-48c-8.84 0-16 7.16-16 16v171.57l-48-37.1V208c0-8.84-7.16-16-16-16h-48c-1.82 0-3.5.48-5.13 1.04L45.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.73c1.22.95 2.04 2.18 2.9 3.37H600c.73 0 1.35-.32 2.06-.42 5.51.8 11.27-1.05 14.93-5.77l19.64-25.27c5.43-6.96 4.17-17.01-2.81-22.44zM88 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-16zm80-96c-8.84 0-16 7.16-16 16v192c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V309.32L204.41 288H168zm112 208c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16v-87.75l-80-61.83V496zm128 0c0 8.84 7.16 16 16 16h48c5.49 0 10.1-2.94 12.98-7.15L408 445.35V496z\"]\n};\nvar faSignalStream = {\n prefix: 'fas',\n iconName: 'signal-stream',\n icon: [576, 512, [], \"f8dd\", \"M288 200a56 56 0 1 0 56 56 56 56 0 0 0-56-56zM64 256a214.3 214.3 0 0 1 55.42-144.06c5.59-6.22 4.91-15.74-1.08-21.59L96 68.53a16.41 16.41 0 0 0-23.56 1C25.59 121 0 186.56 0 256s25.59 135 72.44 186.52a16.41 16.41 0 0 0 23.56 1l22.34-21.82c6-5.85 6.67-15.37 1.08-21.59A214.3 214.3 0 0 1 64 256zm134.27-87.63l-22.76-22.23a16.44 16.44 0 0 0-24 1.31 168.77 168.77 0 0 0 0 217.1 16.44 16.44 0 0 0 24 1.31l22.76-22.22a15.12 15.12 0 0 0 1.45-20.32 107.39 107.39 0 0 1 0-134.64 15.11 15.11 0 0 0-1.45-20.31zm305.29-98.89a16.41 16.41 0 0 0-23.56-1l-22.34 21.87c-6 5.85-6.67 15.37-1.08 21.59a214.95 214.95 0 0 1 0 288.12c-5.59 6.22-4.91 15.74 1.08 21.59L480 443.47a16.41 16.41 0 0 0 23.56-1C550.41 391 576 325.44 576 256s-25.59-135-72.44-186.52zm-79.1 78a16.44 16.44 0 0 0-24-1.31L377.7 168.4a15.11 15.11 0 0 0-1.45 20.31 107.39 107.39 0 0 1 0 134.64 15.12 15.12 0 0 0 1.45 20.32l22.76 22.22a16.44 16.44 0 0 0 24-1.31 168.77 168.77 0 0 0 0-217.1z\"]\n};\nvar faSignature = {\n prefix: 'fas',\n iconName: 'signature',\n icon: [640, 512, [], \"f5b7\", \"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\"]\n};\nvar faSimCard = {\n prefix: 'fas',\n iconName: 'sim-card',\n icon: [384, 512, [], \"f7c4\", \"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\"]\n};\nvar faSink = {\n prefix: 'fas',\n iconName: 'sink',\n icon: [512, 512, [], \"e06d\", \"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\"]\n};\nvar faSiren = {\n prefix: 'fas',\n iconName: 'siren',\n icon: [448, 512, [], \"e02d\", \"M128.21,134.94a8,8,0,0,1,9-6.87l15.86,2.13a8,8,0,0,1,6.87,9L135.82,320H400L375,120.06A64,64,0,0,0,311.5,64h-175A64,64,0,0,0,73,120.06L48,320h55.54ZM432,352H16A16,16,0,0,0,0,368v64a16,16,0,0,0,16,16H432a16,16,0,0,0,16-16V368A16,16,0,0,0,432,352Z\"]\n};\nvar faSirenOn = {\n prefix: 'fas',\n iconName: 'siren-on',\n icon: [640, 512, [], \"e02e\", \"M224.21,134.94a8,8,0,0,1,9-6.87l15.86,2.13a8,8,0,0,1,6.87,9L231.82,320H496L471,120.06A64,64,0,0,0,407.5,64h-175A64,64,0,0,0,169,120.06L144,320h55.54ZM528,352H112a16,16,0,0,0-16,16v64a16,16,0,0,0,16,16H528a16,16,0,0,0,16-16V368A16,16,0,0,0,528,352ZM112,192a24,24,0,0,0-24-24H24a24,24,0,0,0,0,48H88A24,24,0,0,0,112,192Zm504-24H552a24,24,0,0,0,0,48h64a24,24,0,0,0,0-48ZM90.69,76a24,24,0,1,0,26.62-39.92l-48-32A24,24,0,1,0,42.69,44ZM536,80a23.87,23.87,0,0,0,13.29-4l48-32A24,24,0,1,0,570.69,4.06l-48,32A24,24,0,0,0,536,80Z\"]\n};\nvar faSitemap = {\n prefix: 'fas',\n iconName: 'sitemap',\n icon: [640, 512, [], \"f0e8\", \"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\"]\n};\nvar faSkating = {\n prefix: 'fas',\n iconName: 'skating',\n icon: [448, 512, [], \"f7c5\", \"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\"]\n};\nvar faSkeleton = {\n prefix: 'fas',\n iconName: 'skeleton',\n icon: [512, 512, [], \"f620\", \"M496 160H288v-32h144c8.84 0 16-7.16 16-16V80c0-8.84-7.16-16-16-16H288V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v48H80c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h144v32H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h208v32H80c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h144v32H112c-44.18 0-80 35.82-80 80s35.82 80 80 80 80-35.82 80-80c0-5.48-.56-10.83-1.61-16h131.23a80.321 80.321 0 0 0-1.61 16c0 44.18 35.82 80 80 80s80-35.82 80-80-35.82-80-80-80H288v-32h144c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16H288v-32h208c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM112 464c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32zm288-64c17.64 0 32 14.36 32 32s-14.36 32-32 32-32-14.36-32-32 14.36-32 32-32z\"]\n};\nvar faSkiJump = {\n prefix: 'fas',\n iconName: 'ski-jump',\n icon: [512, 512, [], \"f7c7\", \"M510.7 190.2c-2.2-13.1-14.8-21.9-27.7-19.7-13.1 2.2-21.9 14.6-19.7 27.7 3.3 19.3-6 38.9-22.1 48.1L174 383.8l44.9-109 121.4-110.5c11.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 32h97.5l-58.9 76.5c-3.4 4.4.2-3.6-60.2 143.3-5.1 12.4-1.8 26.2 7.3 35L13 466.7c-11.8 6-16.4 20.5-10.3 32.3 4.3 8.3 12.7 13 21.4 13 3.7 0 7.5-.9 11-2.7l429.2-220.9c34.3-19.7 53-59.2 46.4-98.2zM400 96c26.5 0 48-21.5 48-48S426.5 0 400 0s-48 21.5-48 48 21.5 48 48 48z\"]\n};\nvar faSkiLift = {\n prefix: 'fas',\n iconName: 'ski-lift',\n icon: [512, 512, [], \"f7c8\", \"M112 128c26.5 0 48-21.5 48-48s-21.5-48-48-48-48 21.5-48 48 21.5 48 48 48zM256 0h-32v184l32-8V0zm232 288c-13.2 0-24 10.8-24 24 0 13.9-8.8 26.5-21.8 31.3L320 388.5V248c0-9.9-4.5-19.2-12.3-25.2-7.8-6.1-17.9-8.3-27.5-5.8l-68.3 17-24.1-53.7c-10.9-24.2-39.3-35-63.5-24.1-24.2 10.9-35 39.3-24.1 63.5 0 0 26.9 65.9 27.8 68.1 7.9 19.1 22.7 27.6 39.8 23.3L256 289v123.2l-144.3 53.3c-12.4 4.6-18.8 18.4-14.2 30.8 3.6 9.7 12.8 15.7 22.5 15.7 2.8 0 5.6-.5 8.3-1.5l330.5-122.1c31.8-11.8 53.2-42.5 53.2-76.4 0-13.2-10.7-24-24-24zm-296.4 93.4c12.6-4.2 19.4-17.8 15.2-30.4-4.2-12.6-17.7-19.5-30.4-15.2L158 342c-19 6.4-40-2.5-48.7-20.7l-63.6-133c-5.7-11.9-20-17-32-11.3-12 5.7-17 20-11.3 32L66 342c15 31.2 46.4 50 79.5 50 12.6 0 17-.9 46.1-10.6z\"]\n};\nvar faSkiing = {\n prefix: 'fas',\n iconName: 'skiing',\n icon: [512, 512, [], \"f7c9\", \"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\"]\n};\nvar faSkiingNordic = {\n prefix: 'fas',\n iconName: 'skiing-nordic',\n icon: [576, 512, [], \"f7ca\", \"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\"]\n};\nvar faSkull = {\n prefix: 'fas',\n iconName: 'skull',\n icon: [512, 512, [], \"f54c\", \"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\"]\n};\nvar faSkullCow = {\n prefix: 'fas',\n iconName: 'skull-cow',\n icon: [640, 512, [], \"f8de\", \"M416,96H224a64,64,0,0,0-64,64V288a64,64,0,0,0,64,64l26.82,134.27A32,32,0,0,0,282.2,512h75.53a32,32,0,0,0,31.38-25.72L416,352a64,64,0,0,0,64-64V160A64,64,0,0,0,416,96ZM256,288a32,32,0,1,1,32-32A32,32,0,0,1,256,288Zm128,0a32,32,0,1,1,32-32A32,32,0,0,1,384,288ZM60.11,113.55C43.35,89.42,56.5,39,63,21.62a16,16,0,0,0-26.19-17C13.05,27.87,0,60.31,0,95.91,0,166.53,57.42,224,128,224V128.09H96C78.64,128.09,66.91,123.34,60.11,113.55Zm543.12-109A16,16,0,0,0,577,21.64c6.06,16.15,19.6,67.73,2.88,91.89-6.8,9.79-18.54,14.56-35.9,14.56H512V224c70.57,0,128-57.47,128-128.09C640,60.31,627,27.87,603.23,4.57Z\"]\n};\nvar faSkullCrossbones = {\n prefix: 'fas',\n iconName: 'skull-crossbones',\n icon: [448, 512, [], \"f714\", \"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\"]\n};\nvar faSlash = {\n prefix: 'fas',\n iconName: 'slash',\n icon: [640, 512, [], \"f715\", \"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\"]\n};\nvar faSledding = {\n prefix: 'fas',\n iconName: 'sledding',\n icon: [512, 512, [], \"f7cb\", \"M505 420.1c-9.4-9.4-24.6-9.4-33.9 0-12.1 12.1-30.5 15.4-45.1 8.7l-49.1-25.4c4.2-5.4 7.2-11.9 7.2-19.4v-96c0-17.7-14.3-32-32-32h-50.8l46.1-46.1c13.8-13.8 17.9-34.3 10.4-52.3-7.5-18-24.9-29.6-44.3-29.6H160c-17.7 0-32 14.3-32 32s14.3 32 32 32h82.8l-73.4 73.4c-3 2.9-5.3 6.5-6.9 10.4-2.1 5.1-2.4 10.5-1.8 15.9L35 226.6c-11.7-6-26.3-1.5-32.3 10.3-6.1 11.8-1.5 26.3 10.3 32.4l391.9 202.6c11.9 5.5 24.5 8.1 37.1 8.1 23.2 0 46-9 63-26 9.3-9.4 9.3-24.6 0-33.9zM320 374l-104.4-54H320v54zm80-246c26.5 0 48-21.5 48-48s-21.5-48-48-48-48 21.5-48 48 21.5 48 48 48z\"]\n};\nvar faSleigh = {\n prefix: 'fas',\n iconName: 'sleigh',\n icon: [640, 512, [], \"f7cc\", \"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\"]\n};\nvar faSlidersH = {\n prefix: 'fas',\n iconName: 'sliders-h',\n icon: [512, 512, [], \"f1de\", \"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\"]\n};\nvar faSlidersHSquare = {\n prefix: 'fas',\n iconName: 'sliders-h-square',\n icon: [448, 512, [], \"f3f0\", \"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 324c0 6.6-5.4 12-12 12h-52v24c0 13.3-10.7 24-24 24h-16c-13.3 0-24-10.7-24-24v-24H76c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h180v-24c0-13.3 10.7-24 24-24h16c13.3 0 24 10.7 24 24v24h52c6.6 0 12 5.4 12 12v40zm0-160c0 6.6-5.4 12-12 12H192v24c0 13.3-10.7 24-24 24h-16c-13.3 0-24-10.7-24-24v-24H76c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h52v-24c0-13.3 10.7-24 24-24h16c13.3 0 24 10.7 24 24v24h180c6.6 0 12 5.4 12 12v40z\"]\n};\nvar faSlidersV = {\n prefix: 'fas',\n iconName: 'sliders-v',\n icon: [448, 512, [], \"f3f1\", \"M112 96H96V16c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v80H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h16v336c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V160h16c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm320 128h-16V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v208h-16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h16v208c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V288h16c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM272 352h-16V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v336h-16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h16v80c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-80h16c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16z\"]\n};\nvar faSlidersVSquare = {\n prefix: 'fas',\n iconName: 'sliders-v-square',\n icon: [448, 512, [], \"f3f2\", \"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-48zM200 224h-24v180c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12V224H88c-13.3 0-24-10.7-24-24v-16c0-13.3 10.7-24 24-24h24v-52c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h24c13.3 0 24 10.7 24 24v16c0 13.3-10.7 24-24 24zm184 104c0 13.3-10.7 24-24 24h-24v52c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-52h-24c-13.3 0-24-10.7-24-24v-16c0-13.3 10.7-24 24-24h24V108c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v180h24c13.3 0 24 10.7 24 24v16z\"]\n};\nvar faSmile = {\n prefix: 'fas',\n iconName: 'smile',\n icon: [496, 512, [], \"f118\", \"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\"]\n};\nvar faSmileBeam = {\n prefix: 'fas',\n iconName: 'smile-beam',\n icon: [496, 512, [], \"f5b8\", \"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\"]\n};\nvar faSmilePlus = {\n prefix: 'fas',\n iconName: 'smile-plus',\n icon: [640, 512, [], \"f5b9\", \"M208 96C93.1 96 0 189.1 0 304s93.1 208 208 208 208-93.1 208-208S322.9 96 208 96zm64 133.2c14.8 0 26.8 12 26.8 26.8s-12 26.8-26.8 26.8-26.8-12-26.8-26.8 12-26.8 26.8-26.8zm-128 0c14.8 0 26.8 12 26.8 26.8s-12 26.8-26.8 26.8-26.8-12-26.8-26.8 12-26.8 26.8-26.8zm164.2 140.9C283.3 399.3 246.8 416 208 416c-38.8 0-75.3-16.7-100.2-45.9-5.8-6.7-5-16.8 1.8-22.5s16.8-5 22.5 1.8c18.8 22 46.5 34.6 75.8 34.6 29.4 0 57-12.6 75.8-34.7 5.8-6.8 15.9-7.5 22.6-1.8 6.8 5.8 7.6 15.9 1.9 22.6zM624 80h-64V16c0-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-16V96c0-8.8-7.2-16-16-16z\"]\n};\nvar faSmileWink = {\n prefix: 'fas',\n iconName: 'smile-wink',\n icon: [496, 512, [], \"f4da\", \"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\"]\n};\nvar faSmog = {\n prefix: 'fas',\n iconName: 'smog',\n icon: [640, 512, [], \"f75f\", \"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\"]\n};\nvar faSmoke = {\n prefix: 'fas',\n iconName: 'smoke',\n icon: [640, 512, [], \"f760\", \"M528 288c-18 0-34.7 4.6-49.7 12.1C454 255 406.8 224 352 224c-41 0-77.8 17.3-104 44.8-26.2-27.5-63-44.8-104-44.8C64.5 224 0 288.5 0 368s64.5 144 144 144h384c61.9 0 112-50.1 112-112s-50.1-112-112-112zM402.4 158.8C380.1 139.9 351.6 128 320 128c-51.7 0-95.9 30.8-116.1 74.8 15.6 5.7 30.6 13.4 44.1 23.4C278 204 314 192 352 192c54.9 0 106 25.9 139 69.1 12.1-3.4 24.5-5.1 37-5.1 35.5 0 67.6 13.4 92.7 34.8 12-19.5 19.3-42.2 19.3-66.8 0-70.7-57.3-128-128-128-46.8 0-87.3 25.3-109.6 62.8zM144 192c9.9 0 19.5.9 29.1 2.5C197.2 136.8 253.7 96 320 96c26.2 0 52 6.7 75.1 19.2 9.3-10.2 20.2-18.4 31.6-25.8C403.8 54.9 364.6 32 320 32c-31.6 0-60.1 11.9-82.4 30.8C215.3 25.3 174.8 0 128 0 57.3 0 0 57.3 0 128c0 38.2 17.1 72.1 43.7 95.6 28.5-19.9 63-31.6 100.3-31.6z\"]\n};\nvar faSmoking = {\n prefix: 'fas',\n iconName: 'smoking',\n icon: [640, 512, [], \"f48d\", \"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\"]\n};\nvar faSmokingBan = {\n prefix: 'fas',\n iconName: 'smoking-ban',\n icon: [512, 512, [], \"f54d\", \"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\"]\n};\nvar faSms = {\n prefix: 'fas',\n iconName: 'sms',\n icon: [512, 512, [], \"f7cd\", \"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\"]\n};\nvar faSnake = {\n prefix: 'fas',\n iconName: 'snake',\n icon: [640, 512, [], \"f716\", \"M617.4 180.09l-86.59-26.63c-33.39-10.27-66.71 8.26-78.25 38.54H448c-70.69 0-128 57.31-128 128v64c0 17.64-14.36 32-32 32s-32-14.36-32-32V133.7C256 66.89 207.29 7.11 140.79.63 64.49-6.82 0 53.2 0 128v191.53c0 62.18 11.18 123.86 33.02 182.09 5.19 13.84 24.77 13.84 29.96 0A518.514 518.514 0 0 0 96 319.53V128c0-17.64 14.36-32 32-32s32 14.36 32 32v250.3c0 66.81 48.71 126.59 115.21 133.08C351.51 518.82 416 458.8 416 384v-64c0-17.67 14.33-32 32-32h4.2c11.1 30.62 44.38 49.63 77.96 39.69l86.92-25.72c13.59-4.02 22.92-16.51 22.92-30.68v-60.61c0-14.05-9.17-26.46-22.6-30.59zM528 288c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm0-64c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faSnooze = {\n prefix: 'fas',\n iconName: 'snooze',\n icon: [448, 512, [], \"f880\", \"M192 224H40a24 24 0 0 0-24 24v48a24 24 0 0 0 24 24h50.44L8.08 412.66A32 32 0 0 0 0 433.92V480a32 32 0 0 0 32 32h152a24 24 0 0 0 24-24v-48a24 24 0 0 0-24-24h-50.44l82.36-92.66a32 32 0 0 0 8.08-21.26V256a32 32 0 0 0-32-32zm0-32h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-34.75l57.38-57.38A32 32 0 0 0 320 48V32a32 32 0 0 0-32-32H184a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h42.75l-57.38 57.38A32 32 0 0 0 160 144v16a32 32 0 0 0 32 32zm256 80v-16a32 32 0 0 0-32-32h-96a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h34.75l-57.38 57.38A32 32 0 0 0 288 368v16a32 32 0 0 0 32 32h104a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-42.75l57.38-57.38A32 32 0 0 0 448 272z\"]\n};\nvar faSnowBlowing = {\n prefix: 'fas',\n iconName: 'snow-blowing',\n icon: [640, 512, [], \"f761\", \"M540.2 320H361.7c-6.3 0-12.5 1.9-17.8 5.4l-44 29.3c-13.2 8.8-7 29.3 8.9 29.3h233.3c15.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.1h-32.8c-10 0-17.7 9.3-15.7 19.1 8.9 43.8 47.7 76.9 94.1 76.9 59.2 0 106-53.8 94.1-115.1-8.7-45.6-51.4-76.9-97.8-76.9zM400 288h144c59.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.1 4.2-12.7 16.3-21.9 30.4-21.9 19.4 0 34.9 17.4 31.6 37.4-2.6 15.7-17.4 26.6-33.4 26.6H400c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16zm-99.5 21.2l-5.5-20.4 26.6 15.3c5.8 3.4 13.2 1.4 16.6-4.4l12.1-21c3.4-5.8 1.4-13.2-4.4-16.6l-26.6-15.3 20.4-5.5c6.5-1.7 10.3-8.4 8.6-14.9l-3.1-11.7c-1.7-6.5-8.4-10.3-14.9-8.6L274.7 221l-50.2-29 50.2-29 55.6 14.9c6.5 1.7 13.1-2.1 14.9-8.6l3.1-11.7c1.7-6.5-2.1-13.1-8.6-14.9l-20.4-5.5 26.6-15.3c5.8-3.4 7.8-10.8 4.4-16.6l-12.1-21c-3.4-5.8-10.8-7.8-16.6-4.4L295 95.2l5.5-20.4c1.7-6.5-2.1-13.1-8.6-14.9l-11.7-3.1c-6.5-1.7-13.1 2.1-14.9 8.6L250.4 121 200 150.1V93.2L240.2 53c4.7-4.7 4.7-12.3 0-17l-8.5-8.5c-4.7-4.7-12.3-4.7-17 0L200 42.3V12c0-6.6-5.4-12-12-12h-24c-6.6 0-12 5.4-12 12v30.3l-14.8-14.8c-4.7-4.7-12.3-4.7-17 0l-8.5 8.5c-4.7 4.7-4.7 12.3 0 17L152 93.2v56.9L101.6 121l-15-55.7c-1.7-6.5-8.4-10.3-14.9-8.6L60 59.9c-6.5 1.7-10.3 8.4-8.6 14.9l5.5 20.4-26.5-15.3c-5.8-3.4-13.2-1.4-16.6 4.4l-12.1 21c-3.4 5.8-1.4 13.2 4.4 16.6l26.6 15.3-20.4 5.5c-6.5 1.7-10.3 8.4-8.6 14.9l3.1 11.7c1.7 6.5 8.4 10.3 14.9 8.6L77.3 163l50.2 29-50.2 29-55.7-15c-6.5-1.7-13.1 2.1-14.9 8.6l-3.1 11.7c-1.7 6.5 2.1 13.1 8.6 14.9l20.4 5.5-26.5 15.4c-5.8 3.4-7.8 10.8-4.4 16.6l12.1 21c3.4 5.8 10.8 7.8 16.6 4.4L57 288.8l-5.5 20.4c-1.7 6.5 2.1 13.1 8.6 14.9l11.7 3.1c6.5 1.7 13.1-2.1 14.9-8.6l14.9-55.6 50.4-29.1v56.9L111.8 331c-4.7 4.7-4.7 12.3 0 17l8.5 8.5c4.7 4.7 12.3 4.7 17 0l14.8-14.8V372c0 6.6 5.4 12 12 12h24c6.6 0 12-5.4 12-12v-30.3l14.8 14.8c4.7 4.7 12.3 4.7 17 0l8.5-8.5c4.7-4.7 4.7-12.3 0-17L200 290.8v-56.9l50.4 29.1 14.9 55.6c1.7 6.5 8.4 10.3 14.9 8.6l11.7-3.1c6.5-1.7 10.4-8.4 8.6-14.9z\"]\n};\nvar faSnowboarding = {\n prefix: 'fas',\n iconName: 'snowboarding',\n icon: [512, 512, [], \"f7ce\", \"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\"]\n};\nvar faSnowflake = {\n prefix: 'fas',\n iconName: 'snowflake',\n icon: [448, 512, [], \"f2dc\", \"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\"]\n};\nvar faSnowflakes = {\n prefix: 'fas',\n iconName: 'snowflakes',\n icon: [640, 512, [], \"f7cf\", \"M608.1 256l27.9-16c3.8-2.2 5.1-7.1 2.9-10.9l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V200c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V312c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-28.4l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9l-27.9-16zM445.9 145.7l-15.5-26.8c-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.3v-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.2 6.2-6.2 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.2 6.2-6.2 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.4 1.7-16.8-5.7-21.1l-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.8-36.9 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.5-4.3 10-13.8 5.7-21.2zm82-25.7c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V91.6l28 16.1c3.8 2.2 8.7.9 10.9-2.9l8-13.9c2.2-3.8.9-8.7-2.9-10.9L576 64l27.9-16c3.8-2.2 5.1-7.1 2.9-10.9l-8-13.9c-2.2-3.8-7.1-5.1-10.9-2.9l-28 16.1V8c0-4.4-3.6-8-8-8h-16c-4.4 0-8 3.6-8 8v28.4l-28-16.1c-3.8-2.2-8.7-.9-10.9 2.9l-8 13.9c-2.2 3.8-.9 8.7 2.9 10.9l27.9 16-27.9 16c-3.8 2.2-5.1 7.1-2.9 10.9l8 13.9c2.2 3.8 7.1 5.1 10.9 2.9l28-16.1V120z\"]\n};\nvar faSnowman = {\n prefix: 'fas',\n iconName: 'snowman',\n icon: [512, 512, [], \"f7d0\", \"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\"]\n};\nvar faSnowmobile = {\n prefix: 'fas',\n iconName: 'snowmobile',\n icon: [640, 512, [], \"f7d1\", \"M636.8 446.4l-9.6-12.8c-5.3-7.1-15.3-8.5-22.4-3.2L570.7 456c-6.9 5.2-15.3 8-24 8h-.7l-46-61.3 68.9-45.9c4.5-3 7.1-8 7.1-13.3V266c0-6.1-3.4-11.6-8.8-14.3L407.9 172l-41.5-83.1c-4-7.9-13.5-11.1-21.5-7.2-7.9 4-11.1 13.6-7.2 21.5l35.6 71.2L360 192h-58.7L246 136.8c-14.5-14.5-35.2-21.2-55.5-17.9-20.2 3.3-37.8 16.2-47 34.5l-29.8 59.7c-7.6 15.3-8.9 32.6-3.5 48.9 3.4 10.2 9.4 18.9 16.9 26.1H96c-12.1 0-23.2 6.8-28.6 17.7l-32 64C24.7 391 40.2 416 64 416h386l36 48h-54c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h114.7c19 0 37.6-6.2 52.8-17.6l34.1-25.6c7.1-5.3 8.5-15.3 3.2-22.4zM288 288h-24.4l-67-33.5 25.6-51.1 33.9 33.9c12.1 12.1 28.2 18.8 45.2 18.8H312L288 288zM240 96c26.5 0 48-21.5 48-48S266.5 0 240 0s-48 21.5-48 48 21.5 48 48 48zm48 352H32c-17.7 0-32 14.3-32 32s14.3 32 32 32h256c17.7 0 32-14.3 32-32s-14.3-32-32-32z\"]\n};\nvar faSnowplow = {\n prefix: 'fas',\n iconName: 'snowplow',\n icon: [640, 512, [], \"f7d2\", \"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\"]\n};\nvar faSoap = {\n prefix: 'fas',\n iconName: 'soap',\n icon: [512, 512, [], \"e06e\", \"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\"]\n};\nvar faSocks = {\n prefix: 'fas',\n iconName: 'socks',\n icon: [512, 512, [], \"f696\", \"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\"]\n};\nvar faSolarPanel = {\n prefix: 'fas',\n iconName: 'solar-panel',\n icon: [640, 512, [], \"f5ba\", \"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\"]\n};\nvar faSolarSystem = {\n prefix: 'fas',\n iconName: 'solar-system',\n icon: [512, 512, [], \"e02f\", \"M391.77844,120.23438c-16.64439-16.64258-42.06121-17.63868-60.76247-4.73047C307.55639,102.98633,281.92079,96,256,96A160,160,0,1,0,369.149,369.13672c51.02312-51.01758,59.65883-127.62891,27.36235-188.14453C409.421,162.291,408.42283,136.877,391.77844,120.23438ZM335.20393,335.19531a112.44148,112.44148,0,1,1-24.47337-176.39062c1.047,10.668,4.98687,21.14062,13.15964,29.3125,8.163,8.16211,18.62312,12.0957,29.27857,13.15039C377.15966,243.93945,371.48131,298.92383,335.20393,335.19531ZM256,192a64,64,0,1,0,64.007,64A64.00289,64.00289,0,0,0,256,192Zm80.90528,255.67773a208.24661,208.24661,0,0,1-227.9994-44.59961C39.328,333.50781,29.62381,226.59766,79.41829,146.38672a56.05613,56.05613,0,1,0-37.799-30.34375c-64.97,99.2832-53.88672,233.75781,33.34152,320.97656A255.17414,255.17414,0,0,0,364.422,487.65039c-2.19165-1.80273-4.5376-3.32812-6.58665-5.377A86.91321,86.91321,0,0,1,336.90528,447.67773ZM437.03922,74.98047A255.17108,255.17108,0,0,0,147.58,24.34961c2.19165,1.80273,4.53761,3.32812,6.5847,5.375a86.87534,86.87534,0,0,1,20.93,34.59766,208.24661,208.24661,0,0,1,227.9994,44.59961c69.57593,69.56835,79.28011,176.47851,29.48759,256.68945a56.05819,56.05819,0,1,0,37.799,30.3457C535.3507,296.67383,524.26746,162.19922,437.03922,74.98047Z\"]\n};\nvar faSort = {\n prefix: 'fas',\n iconName: 'sort',\n icon: [320, 512, [], \"f0dc\", \"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\"]\n};\nvar faSortAlphaDown = {\n prefix: 'fas',\n iconName: 'sort-alpha-down',\n icon: [448, 512, [], \"f15d\", \"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\"]\n};\nvar faSortAlphaDownAlt = {\n prefix: 'fas',\n iconName: 'sort-alpha-down-alt',\n icon: [448, 512, [], \"f881\", \"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\"]\n};\nvar faSortAlphaUp = {\n prefix: 'fas',\n iconName: 'sort-alpha-up',\n icon: [448, 512, [], \"f15e\", \"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\"]\n};\nvar faSortAlphaUpAlt = {\n prefix: 'fas',\n iconName: 'sort-alpha-up-alt',\n icon: [448, 512, [], \"f882\", \"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\"]\n};\nvar faSortAlt = {\n prefix: 'fas',\n iconName: 'sort-alt',\n icon: [384, 512, [], \"f883\", \"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 352zm203.29-219.31l-80-96a16 16 0 0 0-22.62 0l-80 96C186.65 142.74 193.78 160 208 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.19 0 21.36-17.24 11.29-27.31z\"]\n};\nvar faSortAmountDown = {\n prefix: 'fas',\n iconName: 'sort-amount-down',\n icon: [512, 512, [], \"f160\", \"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\"]\n};\nvar faSortAmountDownAlt = {\n prefix: 'fas',\n iconName: 'sort-amount-down-alt',\n icon: [512, 512, [], \"f884\", \"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\"]\n};\nvar faSortAmountUp = {\n prefix: 'fas',\n iconName: 'sort-amount-up',\n icon: [512, 512, [], \"f161\", \"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\"]\n};\nvar faSortAmountUpAlt = {\n prefix: 'fas',\n iconName: 'sort-amount-up-alt',\n icon: [512, 512, [], \"f885\", \"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\"]\n};\nvar faSortCircle = {\n prefix: 'fas',\n iconName: 'sort-circle',\n icon: [512, 512, [], \"e030\", \"M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8ZM360.57,319.41l-91.5,91.18a18.41,18.41,0,0,1-26.07,0l-91.57-91.18C139.83,307.85,148,288,164.5,288h183C364,288,372.17,307.85,360.57,319.41ZM347.5,224h-183c-16.46,0-24.67-19.85-13.07-31.42L243,101.41a18.41,18.41,0,0,1,26.07,0l91.5,91.17C372.17,204.15,364,224,347.5,224Z\"]\n};\nvar faSortCircleDown = {\n prefix: 'fas',\n iconName: 'sort-circle-down',\n icon: [512, 512, [], \"e031\", \"M197.7,192H314.41L256,133.67ZM256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8ZM360.57,319.42,269,410.59a18.41,18.41,0,0,1-26.07,0l-91.5-91.17C139.83,307.85,148,288,164.5,288h183C364,288,372.17,307.85,360.57,319.42ZM347.5,224h-183c-16.46,0-24.67-19.85-13.07-31.42l91.5-91.17a18.41,18.41,0,0,1,26.07,0l91.57,91.17C372.17,204.15,364,224,347.5,224Z\"]\n};\nvar faSortCircleUp = {\n prefix: 'fas',\n iconName: 'sort-circle-up',\n icon: [512, 512, [], \"e032\", \"M256,378.33,314.3,320H197.59ZM256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8ZM151.43,192.58,243,101.41a18.41,18.41,0,0,1,26.07,0l91.5,91.17C372.17,204.15,364,224,347.5,224h-183C148,224,139.83,204.15,151.43,192.58ZM360.57,319.42l-91.5,91.17a18.41,18.41,0,0,1-26.07,0l-91.57-91.17C139.83,307.85,148,288,164.5,288h183C364,288,372.17,307.85,360.57,319.42Z\"]\n};\nvar faSortDown = {\n prefix: 'fas',\n iconName: 'sort-down',\n icon: [320, 512, [], \"f0dd\", \"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\"]\n};\nvar faSortNumericDown = {\n prefix: 'fas',\n iconName: 'sort-numeric-down',\n icon: [448, 512, [], \"f162\", \"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\"]\n};\nvar faSortNumericDownAlt = {\n prefix: 'fas',\n iconName: 'sort-numeric-down-alt',\n icon: [448, 512, [], \"f886\", \"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\"]\n};\nvar faSortNumericUp = {\n prefix: 'fas',\n iconName: 'sort-numeric-up',\n icon: [448, 512, [], \"f163\", \"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\"]\n};\nvar faSortNumericUpAlt = {\n prefix: 'fas',\n iconName: 'sort-numeric-up-alt',\n icon: [448, 512, [], \"f887\", \"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\"]\n};\nvar faSortShapesDown = {\n prefix: 'fas',\n iconName: 'sort-shapes-down',\n icon: [448, 512, [], \"f888\", \"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 352zm268.1-169.14L361 45.71c-11.09-18.28-38.81-18.28-49.9 0l-83.2 137.15c-11.08 18.28 2.77 41.14 24.95 41.14h166.3c22.18 0 36.03-22.86 24.95-41.14zM408 288H264a24 24 0 0 0-24 24v144a24 24 0 0 0 24 24h144a24 24 0 0 0 24-24V312a24 24 0 0 0-24-24z\"]\n};\nvar faSortShapesDownAlt = {\n prefix: 'fas',\n iconName: 'sort-shapes-down-alt',\n icon: [448, 512, [], \"f889\", \"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 352zm268.1 86.86L361 301.71c-11.09-18.28-38.81-18.28-49.9 0l-83.2 137.15c-11.08 18.28 2.77 41.14 24.95 41.14h166.3c22.18 0 36.03-22.86 24.95-41.14zM264 224h144a24 24 0 0 0 24-24V56a24 24 0 0 0-24-24H264a24 24 0 0 0-24 24v144a24 24 0 0 0 24 24z\"]\n};\nvar faSortShapesUp = {\n prefix: 'fas',\n iconName: 'sort-shapes-up',\n icon: [448, 512, [], \"f88a\", \"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.39-17.24 11.31-27.31zM444.1 182.86L361 45.71c-11.09-18.28-38.81-18.28-49.9 0l-83.2 137.15c-11.08 18.28 2.77 41.14 24.95 41.14h166.3c22.18 0 36.03-22.86 24.95-41.14zM408 288H264a24 24 0 0 0-24 24v144a24 24 0 0 0 24 24h144a24 24 0 0 0 24-24V312a24 24 0 0 0-24-24z\"]\n};\nvar faSortShapesUpAlt = {\n prefix: 'fas',\n iconName: 'sort-shapes-up-alt',\n icon: [448, 512, [], \"f88b\", \"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.39-17.24 11.31-27.31zM444.1 438.86L361 301.71c-11.09-18.28-38.81-18.28-49.9 0l-83.2 137.15c-11.08 18.28 2.77 41.14 24.95 41.14h166.3c22.18 0 36.03-22.86 24.95-41.14zM264 224h144a24 24 0 0 0 24-24V56a24 24 0 0 0-24-24H264a24 24 0 0 0-24 24v144a24 24 0 0 0 24 24z\"]\n};\nvar faSortSizeDown = {\n prefix: 'fas',\n iconName: 'sort-size-down',\n icon: [512, 512, [], \"f88c\", \"M428 320H276a20 20 0 0 0-20 20v120a20 20 0 0 0 20 20h152a20 20 0 0 0 20-20V340a20 20 0 0 0-20-20zm-252 32h-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 352zM484 32H284a28 28 0 0 0-28 28v168a28 28 0 0 0 28 28h200a28 28 0 0 0 28-28V60a28 28 0 0 0-28-28z\"]\n};\nvar faSortSizeDownAlt = {\n prefix: 'fas',\n iconName: 'sort-size-down-alt',\n icon: [512, 512, [], \"f88d\", \"M275.9 192h152.2a20 20 0 0 0 19.9-20V52a20 20 0 0 0-19.9-20H275.9A20 20 0 0 0 256 52v120a20 20 0 0 0 19.9 20zM484 256H284a28 28 0 0 0-28 28v168a28 28 0 0 0 28 28h200a28 28 0 0 0 28-28V284a28 28 0 0 0-28-28zm-308 96h-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\"]\n};\nvar faSortSizeUp = {\n prefix: 'fas',\n iconName: 'sort-size-up',\n icon: [512, 512, [], \"f88e\", \"M107.31 36.69a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.77 160 16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31zM484 32H284a28 28 0 0 0-28 28v168a28 28 0 0 0 28 28h200a28 28 0 0 0 28-28V60a28 28 0 0 0-28-28zm-56 288H276a20 20 0 0 0-20 20v120a20 20 0 0 0 20 20h152a20 20 0 0 0 20-20V340a20 20 0 0 0-20-20z\"]\n};\nvar faSortSizeUpAlt = {\n prefix: 'fas',\n iconName: 'sort-size-up-alt',\n icon: [512, 512, [], \"f88f\", \"M276 192h152a20 20 0 0 0 20-20V52a20 20 0 0 0-20-20H276a20 20 0 0 0-20 20v120a20 20 0 0 0 20 20zm208 64H284a28 28 0 0 0-28 28v168a28 28 0 0 0 28 28h200a28 28 0 0 0 28-28V284a28 28 0 0 0-28-28zM107.31 36.69a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.77 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\"]\n};\nvar faSortUp = {\n prefix: 'fas',\n iconName: 'sort-up',\n icon: [320, 512, [], \"f0de\", \"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\"]\n};\nvar faSoup = {\n prefix: 'fas',\n iconName: 'soup',\n icon: [512, 512, [], \"f823\", \"M191.11 146.5a16.23 16.23 0 0 0 16 13.5h16.5c9.8 0 17.6-8.5 16.3-18a130.72 130.72 0 0 0-36.6-74.7 94.83 94.83 0 0 1-26.4-53.5A16.11 16.11 0 0 0 160.81 0h-16.4a16.31 16.31 0 0 0-16.3 18 145.36 145.36 0 0 0 40.6 84.4 81.22 81.22 0 0 1 22.4 44.1zm112 0a16.23 16.23 0 0 0 16 13.5h16.5c9.8 0 17.6-8.5 16.3-18a130.72 130.72 0 0 0-36.6-74.7 94.83 94.83 0 0 1-26.4-53.5A16.11 16.11 0 0 0 272.76 0h-16.4c-9.8 0-17.5 8.5-16.3 18a145.36 145.36 0 0 0 40.6 84.4 81.22 81.22 0 0 1 22.4 44.1zM480 192H32a32 32 0 0 0-32 32c0 94.7 51.56 177.16 128 221.45V480a32 32 0 0 0 32 32h192a32 32 0 0 0 32-32v-34.55C460.44 401.16 512 318.7 512 224a32 32 0 0 0-32-32z\"]\n};\nvar faSpa = {\n prefix: 'fas',\n iconName: 'spa',\n icon: [576, 512, [], \"f5bb\", \"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\"]\n};\nvar faSpaceShuttle = {\n prefix: 'fas',\n iconName: 'space-shuttle',\n icon: [640, 512, [], \"f197\", \"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\"]\n};\nvar faSpaceStationMoon = {\n prefix: 'fas',\n iconName: 'space-station-moon',\n icon: [512, 512, [], \"e033\", \"M256,8C119.0332,8,8,119.0332,8,256a250.01609,250.01609,0,0,0,1.72461,28.26562C81.19727,306.76953,165.47852,320,256,320s174.80273-13.23047,246.27539-35.73438A250.01609,250.01609,0,0,0,504,256C504,119.0332,392.9668,8,256,8ZM192,240a80,80,0,1,1,80-80A80.00021,80.00021,0,0,1,192,240ZM16.71094,320.26367C45.05859,426.01953,141.29883,504,256,504s210.94141-77.98047,239.28906-183.73633C424.71289,340.53906,343.3418,352,256,352S87.28711,340.53906,16.71094,320.26367ZM192,136a24,24,0,1,0,24,24A23.99993,23.99993,0,0,0,192,136Z\"]\n};\nvar faSpaceStationMoonAlt = {\n prefix: 'fas',\n iconName: 'space-station-moon-alt',\n icon: [512, 512, [], \"e034\", \"M192,136a24,24,0,1,0,24,24A23.99993,23.99993,0,0,0,192,136ZM384,343.13867A940.38216,940.38216,0,0,1,256,352c-87.3418,0-168.71289-11.46094-239.28906-31.73633C45.05859,426.01953,141.29883,504,256,504a247.46107,247.46107,0,0,0,192-91.0918V384H384ZM501.70508,224H448V160H368V96h48V66.67383A246.86934,246.86934,0,0,0,256,8C119.0332,8,8,119.0332,8,256a250.01609,250.01609,0,0,0,1.72461,28.26562C81.19727,306.76953,165.47852,320,256,320s174.80273-13.23047,246.27539-35.73438A250.01609,250.01609,0,0,0,504,256,249.15161,249.15161,0,0,0,501.70508,224ZM192,240a80,80,0,1,1,80-80A80.00021,80.00021,0,0,1,192,240Z\"]\n};\nvar faSpade = {\n prefix: 'fas',\n iconName: 'spade',\n icon: [512, 512, [], \"f2f4\", \"M272.5 6.6c-9.3-8.8-23.8-8.8-33.1 0C191.4 52.4 53.6 185 32 208.9c-19.3 21.3-32 49.4-32 80.6C0 360 54.9 415.7 123.5 416c36.7.1 69.7-15.7 92.5-40.9-.1 36.6-.8 52.3-52.4 75.4-14.1 6.3-22.2 21.6-18.7 36.6 3.3 14.5 16.3 24.8 31.2 24.8h159.4c15.5 0 29.2-10.8 32.1-26 2.8-14.6-4.8-29.2-18.4-35.2-51.6-23-52.8-38.1-53-75.6 23.4 25.8 57.5 41.8 95.3 40.8 67.5-1.7 120.7-56.5 120.7-124 0-32.2-12.2-61.2-32-83.1C458.4 185 320.6 52.4 272.5 6.6z\"]\n};\nvar faSparkles = {\n prefix: 'fas',\n iconName: 'sparkles',\n icon: [512, 512, [], \"f890\", \"M324.42 103.15L384 128l24.84 59.58a8 8 0 0 0 14.32 0L448 128l59.58-24.85a8 8 0 0 0 0-14.31L448 64 423.16 4.42a8 8 0 0 0-14.32 0L384 64l-59.58 24.84a8 8 0 0 0 0 14.31zm183.16 305.69L448 384l-24.84-59.58a8 8 0 0 0-14.32 0L384 384l-59.58 24.84a8 8 0 0 0 0 14.32L384 448l24.84 59.58a8 8 0 0 0 14.32 0L448 448l59.58-24.84a8 8 0 0 0 0-14.32zM384 255.64a16.06 16.06 0 0 0-8.84-14.33l-112.57-56.39-56.28-112.77c-5.44-10.87-23.19-10.87-28.62 0l-56.28 112.77L8.84 241.31a16 16 0 0 0 0 28.67l112.57 56.39 56.28 112.77a16 16 0 0 0 28.62 0l56.28-112.77L375.16 270a16.07 16.07 0 0 0 8.84-14.36z\"]\n};\nvar faSpeaker = {\n prefix: 'fas',\n iconName: 'speaker',\n icon: [384, 512, [], \"f8df\", \"M192 272a64 64 0 1 0 64 64 64 64 0 0 0-64-64zM336 0H48A48 48 0 0 0 0 48v416a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V48a48 48 0 0 0-48-48zM192 64a48 48 0 1 1-48 48 48 48 0 0 1 48-48zm0 384a112 112 0 1 1 112-112 112 112 0 0 1-112 112z\"]\n};\nvar faSpeakers = {\n prefix: 'fas',\n iconName: 'speakers',\n icon: [640, 512, [], \"f8e0\", \"M591 0H335a48 48 0 0 0-48 48v416a48 48 0 0 0 48 48h256a48 48 0 0 0 48-48V48a48 48 0 0 0-48-48zM463 64a48 48 0 1 1-48 48 48 48 0 0 1 48-48zm0 384a112 112 0 1 1 112-112 112 112 0 0 1-112 112zm0-176a64 64 0 1 0 64 64 64 64 0 0 0-64-64zM255 48a79.24 79.24 0 0 1 16.41-48H47A48 48 0 0 0-1 48v416a48 48 0 0 0 48 48h224.41A79.24 79.24 0 0 1 255 464v-49.78a112 112 0 1 1 0-156.44zm-80 112a48 48 0 1 1 48-48 48 48 0 0 1-48 48zm-64 176a64 64 0 1 0 64-64 64 64 0 0 0-64 64z\"]\n};\nvar faSpellCheck = {\n prefix: 'fas',\n iconName: 'spell-check',\n icon: [576, 512, [], \"f891\", \"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\"]\n};\nvar faSpider = {\n prefix: 'fas',\n iconName: 'spider',\n icon: [576, 512, [], \"f717\", \"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\"]\n};\nvar faSpiderBlackWidow = {\n prefix: 'fas',\n iconName: 'spider-black-widow',\n icon: [576, 512, [], \"f718\", \"M382.29 26.13c-2.79-8.38 1.73-17.44 10.12-20.24L407.58.83c8.38-2.8 17.45 1.73 20.24 10.12l25.89 77.68a32.04 32.04 0 0 1-1.73 24.43l-27.15 54.3L398.9 176h-4.67l-5.22-26.12c-.71-3.58-1.8-7.58-3.21-11.79l20.29-40.58-23.8-71.38zM151.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.3zm417.7 204.21l-13.31 8.88c-7.35 4.9-17.29 2.91-22.19-4.44l-48-72h-47.06l60.83 97.33a31.988 31.988 0 0 1 4.86 16.96V496c0 8.84-7.16 16-16 16h-16c-8.84 0-16-7.16-16-16v-73.11l-74.08-118.53c1.01 14.05 2.08 28.11 2.08 42.21C384 399.64 343.24 448 288 448s-96-48.36-96-101.43c0-14.1 1.08-28.16 2.08-42.21L120 422.89V496c0 8.84-7.16 16-16 16H88c-8.84 0-16-7.16-16-16v-77.71c0-6 1.69-11.88 4.86-16.96L137.69 304H90.63l-48 72c-4.9 7.35-14.84 9.34-22.19 4.44l-13.31-8.88c-7.35-4.9-9.34-14.84-4.44-22.19l52.75-79.12A32.007 32.007 0 0 1 82.07 256H160l-68.99-24.36a32.03 32.03 0 0 1-16.51-12.61l-53.6-80.41c-4.9-7.35-2.91-17.29 4.44-22.19l13.31-8.88c7.35-4.9 17.29-2.91 22.19 4.44l50.56 75.83L171.9 208H208l10.37-51.85C220.56 145.18 235.74 96 288 96c52.26 0 67.44 49.18 69.63 60.15L368 208h36.1l60.49-20.17L515.16 112c4.9-7.35 14.83-9.34 22.19-4.44l13.31 8.88c7.35 4.9 9.34 14.83 4.44 22.19l-53.6 80.41a32.03 32.03 0 0 1-16.51 12.61L416 256h77.94c10.7 0 20.69 5.35 26.62 14.25l52.75 79.12c4.9 7.36 2.92 17.29-4.44 22.19zM300 320l26.4-35.2c3.96-5.27.19-12.8-6.4-12.8h-64c-6.59 0-10.36 7.53-6.4 12.8L276 320l-26.4 35.2c-3.96 5.27-.19 12.8 6.4 12.8h64c6.59 0 10.36-7.53 6.4-12.8L300 320z\"]\n};\nvar faSpiderWeb = {\n prefix: 'fas',\n iconName: 'spider-web',\n icon: [576, 512, [], \"f719\", \"M567.16 233.86c-56.54-59.32-97.92-131.64-120.56-210.71l-.02-.06c-4.72-16.48-21.5-26.26-38-22.14l-.07.02a497.663 497.663 0 0 1-241.03 0l-.07-.02c-16.5-4.12-33.28 5.66-38 22.14l-.02.06C106.76 102.22 65.38 174.54 8.84 233.86c-11.79 12.37-11.79 31.92 0 44.29 56.54 59.32 97.92 131.64 120.56 210.71l.02.06c4.72 16.48 21.5 26.26 38 22.14l.07-.02a497.663 497.663 0 0 1 241.03 0l.07.02c16.5 4.12 33.28-5.66 38-22.14l.03-.12c22.63-79.04 63.99-151.32 120.5-210.62l.04-.04c11.79-12.36 11.79-31.92 0-44.28zM365.54 73.71l-23.52 40.74a264.971 264.971 0 0 1-108.04 0l-23.52-40.74a563.283 563.283 0 0 0 155.08 0zM288 208.01l-23.43-40.58a313.24 313.24 0 0 0 46.86 0L288 208.01zM302.43 232h-.58l-.29-.5.87.5zM288 303.99l23.44 40.59c-7.8-.58-15.62-.99-23.44-.99s-15.63.41-23.44.99L288 303.99zm-65-112.58L246.43 232h-46.87c8.81-12.93 16.65-26.5 23.44-40.59zm-53.39 221.65A574.3 574.3 0 0 0 93.29 280h45.11c24.22 27.11 42.66 59.04 54.01 93.56l-22.8 39.5zM138.4 232H93.29a574.3 574.3 0 0 0 76.32-133.06l22.81 39.5A264.912 264.912 0 0 1 138.4 232zm108.03 48L223 320.59A314.825 314.825 0 0 0 199.56 280h46.87zM288 432.28c-25.95 0-51.82 2.43-77.54 6.01l23.52-40.73c35.58-7.42 72.45-7.42 108.04 0l23.52 40.73c-25.72-3.58-51.59-6.01-77.54-6.01zm65-111.69L329.57 280h46.87A314.825 314.825 0 0 0 353 320.59zM329.56 232L353 191.41A314.825 314.825 0 0 0 376.44 232h-46.88zm76.83 181.06l-22.81-39.5c11.35-34.52 29.8-66.45 54.02-93.56h45.11a574.3 574.3 0 0 0-76.32 133.06zM437.6 232a264.912 264.912 0 0 1-54.02-93.56l22.81-39.5A574.3 574.3 0 0 0 482.71 232H437.6z\"]\n};\nvar faSpinner = {\n prefix: 'fas',\n iconName: 'spinner',\n icon: [512, 512, [], \"f110\", \"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\"]\n};\nvar faSpinnerThird = {\n prefix: 'fas',\n iconName: 'spinner-third',\n icon: [512, 512, [], \"f3f4\", \"M456.433 371.72l-27.79-16.045c-7.192-4.152-10.052-13.136-6.487-20.636 25.82-54.328 23.566-118.602-6.768-171.03-30.265-52.529-84.802-86.621-144.76-91.424C262.35 71.922 256 64.953 256 56.649V24.56c0-9.31 7.916-16.609 17.204-15.96 81.795 5.717 156.412 51.902 197.611 123.408 41.301 71.385 43.99 159.096 8.042 232.792-4.082 8.369-14.361 11.575-22.424 6.92z\"]\n};\nvar faSplotch = {\n prefix: 'fas',\n iconName: 'splotch',\n icon: [512, 512, [], \"f5bc\", \"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\"]\n};\nvar faSprayCan = {\n prefix: 'fas',\n iconName: 'spray-can',\n icon: [512, 512, [], \"f5bd\", \"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\"]\n};\nvar faSprinkler = {\n prefix: 'fas',\n iconName: 'sprinkler',\n icon: [512, 512, [], \"e035\", \"M398.19,256H288V80a16,16,0,0,0-16-16H240a16,16,0,0,0-16,16V256H113.81a17.77,17.77,0,0,0-14.22,28.44l67.52,78.23L192,387.56V512H320V387.56l24.89-24.89,67.52-78.23A17.77,17.77,0,0,0,398.19,256ZM152,152a24,24,0,1,0-24-24A24,24,0,0,0,152,152ZM88,96A24,24,0,1,0,64,72,24,24,0,0,0,88,96Zm24,72a24,24,0,1,0-24,24A24,24,0,0,0,112,168ZM24,104a24,24,0,1,0,24,24A24,24,0,0,0,24,104ZM24,0A24,24,0,1,0,48,24,24,24,0,0,0,24,0Zm0,208a24,24,0,1,0,24,24A24,24,0,0,0,24,208Zm336-56a24,24,0,1,0-24-24A24,24,0,0,0,360,152Zm64,8a24,24,0,1,0,24,24A24,24,0,0,0,424,160Zm0-96a24,24,0,1,0,24,24A24,24,0,0,0,424,64Zm64,40a24,24,0,1,0,24,24A24,24,0,0,0,488,104Zm0,104a24,24,0,1,0,24,24A24,24,0,0,0,488,208Zm0-160a24,24,0,1,0-24-24A24,24,0,0,0,488,48Z\"]\n};\nvar faSquare = {\n prefix: 'fas',\n iconName: 'square',\n icon: [448, 512, [], \"f0c8\", \"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\"]\n};\nvar faSquareFull = {\n prefix: 'fas',\n iconName: 'square-full',\n icon: [512, 512, [], \"f45c\", \"M512 512H0V0h512v512z\"]\n};\nvar faSquareRoot = {\n prefix: 'fas',\n iconName: 'square-root',\n icon: [576, 512, [], \"f697\", \"M552 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\"]\n};\nvar faSquareRootAlt = {\n prefix: 'fas',\n iconName: 'square-root-alt',\n icon: [576, 512, [], \"f698\", \"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\"]\n};\nvar faSquirrel = {\n prefix: 'fas',\n iconName: 'squirrel',\n icon: [512, 512, [], \"f71a\", \"M479.85 448h-30.93c18.19-18.4 30.93-42.12 30.93-64 0-26.55-22.08-52.81-47.85-61.09V224h47.85c20.4 0 35.7-18.91 31.43-38.87C500.84 136.42 466.72 96 415.87 96V64c-48.01 0-74.22 62.73-89.4 108.29l-65.34 196.52c-1.39 4.19-5.92 6.46-10.11 5.07l-15.19-5.05c-4.19-1.39-6.46-5.92-5.07-10.12l34.53-103.85C312.5 112.89 214.16 0 127.96 0 57.29 0 0 57.31 0 128s57.29 128 127.96 128c.27 0 .52-.08.79-.08-20.93 27.67-33.56 61.96-32.74 99.54C97.94 443.88 175.85 512 264.27 512h231.58c8.83 0 15.99-7.16 15.99-16v-16c0-17.67-14.32-32-31.99-32zm-47.98-304c8.83 0 15.99 7.16 15.99 16s-7.16 16-15.99 16-16-7.16-16-16 7.17-16 16-16z\"]\n};\nvar faStaff = {\n prefix: 'fas',\n iconName: 'staff',\n icon: [512, 512, [], \"f71b\", \"M432 0h-76.23c-30.3 0-58 17.12-71.55 44.22l-16 32c-3.95 7.9-.75 17.51 7.15 21.46l57.25 28.63c7.9 3.95 17.51.75 21.47-7.16L365.67 96H416v75.8l-157.29 44.94a176.122 176.122 0 0 0-76.11 44.78L156.12 288H112c-8.84 0-16 7.16-16 16v44.12L7.03 437.1c-9.37 9.37-9.37 24.57 0 33.94l33.93 33.93c9.37 9.37 24.57 9.37 33.94 0l175.55-175.55a80.111 80.111 0 0 1 34.62-20.37l84.82-24.24 32.25 18.62c7.65 4.42 17.44 1.79 21.86-5.86l19.51-33.8 10.46-2.99c34.34-9.81 58.02-41.21 58.02-76.92V80C512 35.82 476.18 0 432 0z\"]\n};\nvar faStamp = {\n prefix: 'fas',\n iconName: 'stamp',\n icon: [512, 512, [], \"f5bf\", \"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\"]\n};\nvar faStar = {\n prefix: 'fas',\n iconName: 'star',\n icon: [576, 512, [], \"f005\", \"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\"]\n};\nvar faStarAndCrescent = {\n prefix: 'fas',\n iconName: 'star-and-crescent',\n icon: [512, 512, [], \"f699\", \"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\"]\n};\nvar faStarChristmas = {\n prefix: 'fas',\n iconName: 'star-christmas',\n icon: [512, 512, [], \"f7d4\", \"M505.3 247.4l-192.5-48.1L264.6 6.7c-2.2-9-15-9-17.2 0l-48.1 192.6L6.7 247.4c-9 2.2-9 15 0 17.2l192.5 48.1 48.1 192.5c2.2 9 15 9 17.2 0l48.1-192.5 192.6-48.1c9-2.2 9-15 .1-17.2zm-352.4-69.5l19.9-5 5-19.9L109 97.9c-7.5-6-17.2 3.7-11.2 11.2l55.1 68.8zm206.2 156.2l-19.9 5-5 19.9 68.8 55.1c7.5 6 17.2-3.7 11.2-11.2l-55.1-68.8zm0-156.2l55.1-68.8c6-7.5-3.7-17.2-11.2-11.2l-68.8 55 5 19.9 19.9 5.1zM152.9 334.1l-55 68.8c-6 7.5 3.7 17.2 11.2 11.2l68.8-55.1-5-19.9-20-5z\"]\n};\nvar faStarExclamation = {\n prefix: 'fas',\n iconName: 'star-exclamation',\n icon: [576, 512, [], \"f2f3\", \"M259.3 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.6l130.7 68.7c23.3 12.3 50.9-7.5 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.8C305-5.9 271.1-6 259.3 17.8zM256.1 160h64c4.7 0 8.4 4.1 8 8.6l-8 112c-.3 4.2-3.8 7.4-8 7.4h-48c-4.2 0-7.7-3.2-8-7.4l-8-112c-.5-4.7 3.5-8.6 8-8.6zM288 392c-22.1 0-40-17.9-40-40s17.9-40 40-40 40 17.9 40 40-17.9 40-40 40z\"]\n};\nvar faStarHalf = {\n prefix: 'fas',\n iconName: 'star-half',\n icon: [576, 512, [], \"f089\", \"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\"]\n};\nvar faStarHalfAlt = {\n prefix: 'fas',\n iconName: 'star-half-alt',\n icon: [536, 512, [], \"f5c0\", \"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\"]\n};\nvar faStarOfDavid = {\n prefix: 'fas',\n iconName: 'star-of-david',\n icon: [464, 512, [], \"f69a\", \"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\"]\n};\nvar faStarOfLife = {\n prefix: 'fas',\n iconName: 'star-of-life',\n icon: [480, 512, [], \"f621\", \"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\"]\n};\nvar faStarShooting = {\n prefix: 'fas',\n iconName: 'star-shooting',\n icon: [512, 512, [], \"e036\", \"M308.68131,191.99637l11.31076,11.30812a15.9975,15.9975,0,0,0,22.62737,0L507.31388,38.62192a15.99872,15.99872,0,0,0,0-22.626L496.00312,4.68584a16.001,16.001,0,0,0-22.62737,0L308.68131,169.36841A16.00107,16.00107,0,0,0,308.68131,191.99637ZM239.99059,91.30917a15.9975,15.9975,0,0,0,22.62737,0l52.69238-52.68725a15.99872,15.99872,0,0,0,0-22.626L303.99958,4.68584a16.001,16.001,0,0,0-22.62737,0L228.67984,57.37309a16.00105,16.00105,0,0,0,0,22.628ZM496.00312,196.67782a16.001,16.001,0,0,0-22.62737,0l-52.69237,52.68725a16.00105,16.00105,0,0,0,0,22.628l11.31075,11.30812a15.9975,15.9975,0,0,0,22.62737,0l52.69238-52.68725a15.99872,15.99872,0,0,0,0-22.626ZM364.29366,267.28619,259.49486,251.99l-46.90712-95.19915c-8.39078-16.99929-32.6881-17.20241-41.18826,0L124.49237,251.99,19.69356,267.28619C.89634,269.98921-6.71318,293.19136,6.9902,306.48768l75.90765,73.99691L64.89752,485.074c-3.20319,18.90546,16.68781,33.108,33.29749,24.20211l93.7986-49.38856,93.79861,49.38856A22.95373,22.95373,0,0,0,319.08971,485.074l-17.891-104.58938,75.892-73.99691C390.7004,293.19136,383.09089,269.98921,364.29366,267.28619Z\"]\n};\nvar faStarfighter = {\n prefix: 'fas',\n iconName: 'starfighter',\n icon: [640, 512, [], \"e037\", \"M208,288H144a15.99985,15.99985,0,0,0-16,16v48H48V160h8a8.00008,8.00008,0,0,0,8-8V136a7.99977,7.99977,0,0,0-8-8H48V112.85547c0-7.96924-5.44531-15.356-13.311-16.63623A16.01034,16.01034,0,0,0,16,112v16H8a7.99977,7.99977,0,0,0-8,8v16a8.00008,8.00008,0,0,0,8,8h8V431.14209c0,7.97021,5.44531,15.3584,13.312,16.63867A16.01152,16.01152,0,0,0,48,432v-3.20117L176,480v16a16.00016,16.00016,0,0,0,16,16h16a16.00016,16.00016,0,0,0,16-16V304A15.99985,15.99985,0,0,0,208,288ZM632,128h-8V112.85547c0-7.96924-5.44531-15.356-13.311-16.63623A16.01034,16.01034,0,0,0,592,112v16h-8a7.99977,7.99977,0,0,0-8,8v16a8.00008,8.00008,0,0,0,8,8h8V352H512V304a15.99985,15.99985,0,0,0-16-16H432a15.99985,15.99985,0,0,0-16,16V496a16.00016,16.00016,0,0,0,16,16h16a16.00016,16.00016,0,0,0,16-16V480l128-51.20117v2.34326c0,7.97021,5.44531,15.3584,13.312,16.63867A16.01152,16.01152,0,0,0,624,432V160h8a8.00008,8.00008,0,0,0,8-8V136A7.99977,7.99977,0,0,0,632,128ZM337.875,0h-35.75a15.99837,15.99837,0,0,0-15.877,14.01562L256,256V464a16.00079,16.00079,0,0,0,16,16h96a16.00079,16.00079,0,0,0,16-16V256L353.752,14.01562A15.99837,15.99837,0,0,0,337.875,0ZM352,304a16.00079,16.00079,0,0,1-16,16H304a16.00079,16.00079,0,0,1-16-16V256a32,32,0,0,1,64,0Z\"]\n};\nvar faStarfighterAlt = {\n prefix: 'fas',\n iconName: 'starfighter-alt',\n icon: [576, 512, [], \"e038\", \"M560,32H528a15.99954,15.99954,0,0,0-16,16V216l-75.51953-18.87891C412.99414,137.96289,355.52344,96,288,96S163.00586,137.96289,139.51953,197.12109L64,216V48A15.99954,15.99954,0,0,0,48,32H16A15.99954,15.99954,0,0,0,0,48V464a16.00079,16.00079,0,0,0,16,16H48a16.00079,16.00079,0,0,0,16-16V296l75.51953,18.87891C163.00586,374.03711,220.47656,416,288,416s124.99414-41.96289,148.48047-101.12109L512,296V464a16.00079,16.00079,0,0,0,16,16h32a16.00079,16.00079,0,0,0,16-16V48A15.99954,15.99954,0,0,0,560,32ZM300,161.21094a94.90406,94.90406,0,0,1,46.584,19.23633l-22.627,22.62695A63.5822,63.5822,0,0,0,300,193.21094Zm-24,0v32a63.5822,63.5822,0,0,0-23.957,9.86328L229.416,180.44727A94.90406,94.90406,0,0,1,276,161.21094ZM212.44727,197.416,235.07422,220.043A63.5822,63.5822,0,0,0,225.21094,244h-32A94.90406,94.90406,0,0,1,212.44727,197.416ZM193.21094,268h32a63.5822,63.5822,0,0,0,9.86328,23.957l-22.62695,22.627A94.90406,94.90406,0,0,1,193.21094,268ZM276,350.78906a94.90406,94.90406,0,0,1-46.584-19.23633l22.62695-22.627A63.5822,63.5822,0,0,0,276,318.78906ZM256,256a32,32,0,1,1,32,32A31.99908,31.99908,0,0,1,256,256Zm44,94.78906v-32a63.5822,63.5822,0,0,0,23.957-9.86328l22.627,22.627A94.90406,94.90406,0,0,1,300,350.78906ZM363.55273,314.584l-22.627-22.627A63.5822,63.5822,0,0,0,350.78906,268h32A94.90406,94.90406,0,0,1,363.55273,314.584ZM350.78906,244a63.5822,63.5822,0,0,0-9.86328-23.957l22.627-22.62695A94.90406,94.90406,0,0,1,382.78906,244Z\"]\n};\nvar faStars = {\n prefix: 'fas',\n iconName: 'stars',\n icon: [512, 512, [], \"f762\", \"M259.69042,85.96457l49.64549,20.69969,20.70353,49.643a6.65746,6.65746,0,0,0,11.926,0L362.667,106.66426l49.64549-20.69969a6.66574,6.66574,0,0,0,0-11.92493L362.667,53.338,341.96545,3.697a6.65746,6.65746,0,0,0-11.926,0L309.33591,53.338,259.69042,74.03964a6.66574,6.66574,0,0,0,0,11.92493ZM364.294,267.29343,259.4951,251.99764l-46.90716-95.19633c-8.39078-16.99879-32.68813-17.2019-41.18829,0l-46.90716,95.19633L19.69358,267.29343C.89634,269.99636-6.71318,293.19783,6.99021,306.49376l75.90772,73.99472L64.89758,485.07476c-3.20319,18.9049,16.68782,33.107,33.29752,24.2014l93.7987-49.3871,93.79869,49.3871A22.95361,22.95361,0,0,0,319.09,485.07476L301.199,380.48848l75.89209-73.99472C390.70077,293.19783,383.09125,269.99636,364.294,267.29343ZM509.05268,219.2285,469.339,202.67109,452.7801,162.961a5.32691,5.32691,0,0,0-9.5412,0L426.678,202.67109l-39.7117,16.55741a5.33385,5.33385,0,0,0,0,9.54033L426.678,245.3282l16.56087,39.7081a5.32534,5.32534,0,0,0,9.5412,0L469.339,245.3282l39.71366-16.55937a5.33386,5.33386,0,0,0,0-9.54033Z\"]\n};\nvar faStarship = {\n prefix: 'fas',\n iconName: 'starship',\n icon: [640, 512, [], \"e039\", \"M448,224a32,32,0,1,0,32,32A32.03667,32.03667,0,0,0,448,224ZM240,128a31.99908,31.99908,0,0,0-32-32H24A23.99993,23.99993,0,0,0,0,120v16a24.00118,24.00118,0,0,0,24,24H86.23828l55.32227,56.94922-10.79493.98047a38.22631,38.22631,0,0,0,0,76.13867l10.79688.98242L64,352H24A23.99993,23.99993,0,0,0,0,376v16a24.00118,24.00118,0,0,0,24,24H208a32,32,0,0,0,0-64H137.76172L208.25,301.11328l20.7793,1.88867a222.14594,222.14594,0,0,1,0-94.0039l-20.78125,1.88867L160,160h48A32.00033,32.00033,0,0,0,240,128ZM448,64c-106.03906,0-192,85.96094-192,192s85.96094,192,192,192,192-85.96094,192-192S554.03906,64,448,64Zm0,256a64,64,0,1,1,64-64A64.07333,64.07333,0,0,1,448,320Z\"]\n};\nvar faStarshipFreighter = {\n prefix: 'fas',\n iconName: 'starship-freighter',\n icon: [576, 512, [], \"e03a\", \"M224.00871,208.00014a48,48,0,1,0,47.99881,48A47.99927,47.99927,0,0,0,224.00871,208.00014ZM560.0004,223.65443a16.00059,16.00059,0,0,0,15.9996-16v-52.455a16.0008,16.0008,0,0,0-10.52318-15.0332l-254.15-92.60347C255.57629,27.50609,193.613,25.59008,139.21979,49.15061-4.095,111.22285.01425,256.00012.01425,256.00012s-4.35536,144.66594,139.20554,206.8495c54.39319,23.55858,116.3565,21.64452,172.10707,1.58593l16.32772-5.94921,3.19524,3.90429A48.04351,48.04351,0,0,0,368.00515,480h63.99841a47.91689,47.91689,0,0,0,40.167-74.16988L565.47682,371.834A16.0008,16.0008,0,0,0,576,356.80084v-52.455a16.00059,16.00059,0,0,0-15.9996-16H416.004V223.65443ZM80.01227,272.00011a16,16,0,1,1,15.99961-16A16.00059,16.00059,0,0,1,80.01227,272.00011Zm31.99921,96a16,16,0,1,1,15.99961-16A16.00059,16.00059,0,0,1,112.01148,368.00006Zm0-191.9999a16,16,0,1,1,15.99961-16A16.00059,16.00059,0,0,1,112.01148,176.00016ZM224.00871,336.00007a80,80,0,1,1,79.998-80A80.09064,80.09064,0,0,1,224.00871,336.00007Z\"]\n};\nvar faSteak = {\n prefix: 'fas',\n iconName: 'steak',\n icon: [576, 512, [], \"f824\", \"M368.85 96c-27.31 0-51.89 23.7-62.62 60.36-6.24 21.36-26.75 106.21-173.16 170-138.8 60.35 163.93 169.45 321.26-9.82 38.21-43.53 32.8-126-11.57-176.59C417.86 111.58 391.61 96 368.85 96zM384 255.9a32 32 0 1 1 32-32 32 32 0 0 1-32 32zM514.92 76.65C467.92 23.11 416.28 0 368.85 0 298.27 0 237 51.17 214.1 129.38 165 269.31 1.37 212.32 0 351.63c-1.19 121.61 139.27 164.61 256 160 87.78-3.4 187.32-37.09 270.49-131.84C596.78 299.75 591.6 164 514.92 76.65zm-36.53 261c-76.15 86.75-164.32 107.76-224.82 110.1-37.65 1.38-131.52-6.52-171.24-46.62-2.49-2.51-59.44-61.76 38-104.17 71.64-31.19 132.3-71.24 155.23-149.6C290.34 96.7 327 64 368.85 64c32.58 0 66.45 19 98 54.88 55.15 62.84 60.45 163.03 11.54 218.76z\"]\n};\nvar faSteeringWheel = {\n prefix: 'fas',\n iconName: 'steering-wheel',\n icon: [496, 512, [], \"f622\", \"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 64c90.53 0 165.82 65.77 181.03 152h-93.9c-11.09-19.05-31.49-32-55.12-32h-64c-23.63 0-44.04 12.95-55.12 32h-93.9C82.18 137.77 157.47 72 248 72zM66.97 288H168l48 64v85.03C140.19 423.65 80.35 363.81 66.97 288zM280 437.03V352l48-64h101.03C415.65 363.81 355.81 423.65 280 437.03z\"]\n};\nvar faStepBackward = {\n prefix: 'fas',\n iconName: 'step-backward',\n icon: [448, 512, [], \"f048\", \"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\"]\n};\nvar faStepForward = {\n prefix: 'fas',\n iconName: 'step-forward',\n icon: [448, 512, [], \"f051\", \"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\"]\n};\nvar faStethoscope = {\n prefix: 'fas',\n iconName: 'stethoscope',\n icon: [512, 512, [], \"f0f1\", \"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\"]\n};\nvar faStickyNote = {\n prefix: 'fas',\n iconName: 'sticky-note',\n icon: [448, 512, [], \"f249\", \"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\"]\n};\nvar faStocking = {\n prefix: 'fas',\n iconName: 'stocking',\n icon: [384, 512, [], \"f7d5\", \"M368 0H80c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h288c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16zM96 251.5l-39 26C-1.8 316.7-17.7 396.2 21.5 455c24.7 37 65.2 57 106.6 57 24.4 0 49.1-7 70.9-21.5l81.7-54.5c44.6-29.7 71.2-79.5 71.2-133.1V128H96v123.5z\"]\n};\nvar faStomach = {\n prefix: 'fas',\n iconName: 'stomach',\n icon: [512, 512, [], \"f623\", \"M384 96c-54.29 0-90.86 32.57-109.17 64H256c-35.34 0-64-28.65-64-64V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v80c0 70.69 57.3 128 128 128h.49c-.07 1.85-.49 3.63-.49 5.5V288c0 35.35-28.66 64-64 64h-64C57.3 352 0 409.31 0 480v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16c0-37.63 33.96-51.21 53.92-51.21 17.11 0 29.59 6.71 41.07 18.2C226.21 514.21 297.63 512 308.36 512c112.48 0 203.65-91.17 203.65-203.65V224C512 153.31 454.7 96 384 96zm64 212.35c0 9.23-1.01 18.21-2.73 26.95-21.56 6.08-45.01.97-61.27-15.3-17.37-17.37-42.91-22.14-65.6-13.93.84-5.93 1.6-11.9 1.6-18.07v-58.5c0-36.15 26.38-69.5 64-69.5 35.29 0 64 28.71 64 64v84.35z\"]\n};\nvar faStop = {\n prefix: 'fas',\n iconName: 'stop',\n icon: [448, 512, [], \"f04d\", \"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\"]\n};\nvar faStopCircle = {\n prefix: 'fas',\n iconName: 'stop-circle',\n icon: [512, 512, [], \"f28d\", \"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\"]\n};\nvar faStopwatch = {\n prefix: 'fas',\n iconName: 'stopwatch',\n icon: [448, 512, [], \"f2f2\", \"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\"]\n};\nvar faStopwatch20 = {\n prefix: 'fas',\n iconName: 'stopwatch-20',\n icon: [448, 512, [], \"e06f\", \"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\"]\n};\nvar faStore = {\n prefix: 'fas',\n iconName: 'store',\n icon: [616, 512, [], \"f54e\", \"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\"]\n};\nvar faStoreAlt = {\n prefix: 'fas',\n iconName: 'store-alt',\n icon: [640, 512, [], \"f54f\", \"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\"]\n};\nvar faStoreAltSlash = {\n prefix: 'fas',\n iconName: 'store-alt-slash',\n icon: [640, 512, [], \"e070\", \"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\"]\n};\nvar faStoreSlash = {\n prefix: 'fas',\n iconName: 'store-slash',\n icon: [640, 512, [], \"e071\", \"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\"]\n};\nvar faStream = {\n prefix: 'fas',\n iconName: 'stream',\n icon: [512, 512, [], \"f550\", \"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\"]\n};\nvar faStreetView = {\n prefix: 'fas',\n iconName: 'street-view',\n icon: [512, 512, [], \"f21d\", \"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\"]\n};\nvar faStretcher = {\n prefix: 'fas',\n iconName: 'stretcher',\n icon: [640, 512, [], \"f825\", \"M608 128H192L79.84 10.74a32 32 0 0 0-45.18-2.66L10.74 29.35a32 32 0 0 0-2.66 45.17l121.7 128A64 64 0 0 0 177.62 224H608a32 32 0 0 0 32-32v-32a32 32 0 0 0-32-32zm-92.22 266.93a62.23 62.23 0 0 0-56.18-7.3l-43-37.63L524 256h-97.2L368 307.48 309.17 256H212l107.4 94-43 37.63a62.23 62.23 0 0 0-56.18 7.3 64.35 64.35 0 0 0-17.29 17.29 64.07 64.07 0 1 0 115.82 23.4l49.25-43.1 49.25 43.1a64 64 0 1 0 98.53-40.69zM256 464a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm224 0a16 16 0 1 1 16-16 16 16 0 0 1-16 16z\"]\n};\nvar faStrikethrough = {\n prefix: 'fas',\n iconName: 'strikethrough',\n icon: [512, 512, [], \"f0cc\", \"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\"]\n};\nvar faStroopwafel = {\n prefix: 'fas',\n iconName: 'stroopwafel',\n icon: [512, 512, [], \"f551\", \"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\"]\n};\nvar faSubscript = {\n prefix: 'fas',\n iconName: 'subscript',\n icon: [512, 512, [], \"f12c\", \"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\"]\n};\nvar faSubway = {\n prefix: 'fas',\n iconName: 'subway',\n icon: [448, 512, [], \"f239\", \"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\"]\n};\nvar faSuitcase = {\n prefix: 'fas',\n iconName: 'suitcase',\n icon: [512, 512, [], \"f0f2\", \"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\"]\n};\nvar faSuitcaseRolling = {\n prefix: 'fas',\n iconName: 'suitcase-rolling',\n icon: [384, 512, [], \"f5c1\", \"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\"]\n};\nvar faSun = {\n prefix: 'fas',\n iconName: 'sun',\n icon: [512, 512, [], \"f185\", \"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\"]\n};\nvar faSunCloud = {\n prefix: 'fas',\n iconName: 'sun-cloud',\n icon: [640, 512, [], \"f763\", \"M576 224c-12 0-23.1 3.5-32.7 9.2-3.5-41-37.4-73.2-79.3-73.2-38.8 0-71.1 27.6-78.4 64.2-.5 0-1-.2-1.6-.2-35.3 0-64 28.7-64 64s28.7 64 64 64h192c35.3 0 64-28.7 64-64s-28.7-64-64-64zM429.4 384H384c-22.2 0-42.4-7.9-58.6-20.5-49.6 32-116.5 26.4-159.9-16.9-49.9-49.9-49.9-131.1 0-181s131.1-49.9 181 0c7.2 7.2 13 15.1 18.1 23.4 13.2-25.5 35.6-45 62.6-54.5l13.9-41.7c4.5-13.6-8.4-26.5-21.9-21.9l-100.4 33.5-47.3-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.9L429.4 384zm-92.5-179.3C319.8 177.9 290 160 256 160c-52.9 0-96 43.1-96 96s43.1 96 96 96c17.2 0 33.1-4.9 47.1-12.8-9.4-14.8-15.1-32.3-15.1-51.2 0-35.8 19.8-66.8 48.9-83.3z\"]\n};\nvar faSunDust = {\n prefix: 'fas',\n iconName: 'sun-dust',\n icon: [512, 512, [], \"f764\", \"M256 160c-52.9 0-96 43.1-96 96 0 26.5 10.8 50.5 28.1 67.8l135.7-135.7C306.5 170.8 282.5 160 256 160zm163.3-89.2l-100.4 33.5-47.4-94.7c-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-2.3 6.8-.2 13.4 4.2 17.7l90.5-90.5c-49.9-49.9-49.9-131.1 0-181s131.1-49.9 181 0L437 75c-4.3-4.4-10.9-6.5-17.7-4.2zM160 448c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm320-256c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm-96 96c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.3 32-32zm-144 64c-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-32zm80 96c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm0-192c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zM320 448c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"]\n};\nvar faSunHaze = {\n prefix: 'fas',\n iconName: 'sun-haze',\n icon: [640, 512, [], \"f765\", \"M193.6 240c3.4-27.2 15-53.6 35.9-74.5 49.9-49.9 131.1-49.9 181 0 20.9 20.9 32.5 47.3 35.9 74.5h119l-93.7-46.9 33.5-100.4c4.5-13.6-8.4-26.5-21.9-21.9l-100.4 33.5-47.4-94.7c-6.4-12.8-24.6-12.8-31 0l-47.3 94.7-100.5-33.5c-13.6-4.5-26.5 8.4-21.9 21.9l33.5 100.4L74.6 240h119zM320 160c-47.5 0-86.7 34.7-94.4 80h188.8c-7.7-45.3-46.9-80-94.4-80zM80 336h336c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16zm544-48H496c-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-16zM208 464H80c-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 0H288c-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-16zm-48-56v-16c0-8.8-7.2-16-16-16H16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h544c8.8 0 16-7.2 16-16z\"]\n};\nvar faSunglasses = {\n prefix: 'fas',\n iconName: 'sunglasses',\n icon: [576, 512, [], \"f892\", \"M574.09 280.38L528.75 98.66a87.94 87.94 0 0 0-113.19-62.14l-15.25 5.08a16 16 0 0 0-10.12 20.25L395.25 77a16 16 0 0 0 20.22 10.13l13.19-4.39c10.87-3.63 23-3.57 33.15 1.73a39.59 39.59 0 0 1 20.38 25.81l38.47 153.83a276.7 276.7 0 0 0-81.22-12.47c-34.75 0-74 7-114.85 26.75h-73.18c-40.85-19.75-80.07-26.75-114.85-26.75a276.75 276.75 0 0 0-81.22 12.45l38.47-153.8a39.61 39.61 0 0 1 20.38-25.82c10.15-5.29 22.28-5.34 33.15-1.73l13.16 4.39A16 16 0 0 0 180.75 77l5.06-15.19a16 16 0 0 0-10.12-20.21l-15.25-5.08A87.95 87.95 0 0 0 47.25 98.65L1.91 280.38A75.35 75.35 0 0 0 0 295.86v70.25C0 429 51.59 480 115.19 480h37.12c60.28 0 110.38-45.94 114.88-105.37l2.93-38.63h35.76l2.93 38.63c4.5 59.43 54.6 105.37 114.88 105.37h37.12C524.41 480 576 429 576 366.13v-70.25a62.67 62.67 0 0 0-1.91-15.5zm-509.9 87.53c0-.61-.19-1.18-.19-1.8v-37.55a217.35 217.35 0 0 1 72.59-12.9c9.14 0 18.14 1.21 27.14 2.48zm308.13-2.07l-2.82-37.28a196.55 196.55 0 0 1 69.94-12.9 202.07 202.07 0 0 1 28.72 2.26z\"]\n};\nvar faSunrise = {\n prefix: 'fas',\n iconName: 'sunrise',\n icon: [576, 512, [], \"f766\", \"M250.9 374.5c-20.6 8.5-36.3 23.5-46.6 41.5h167.2c-23.8-41.6-75.1-60.3-120.6-41.5zM80.7 416h87.6c.2-.5.2-1 .4-1.4 27.3-65.8 102.9-97.2 168.7-69.9 33.4 13.8 57.8 40.2 70.3 71.3h87.6l28.4-32.7c9.4-10.9 2.4-27.9-12-28.9l-106.5-7.6-7.6-106.5c-1-14.4-18-21.4-28.9-12l-80.7 70-80.7-70c-10.9-9.4-27.9-2.4-28.9 12l-7.6 106.5-106.5 7.6c-14.4 1-21.4 18-12 28.9L80.7 416zM560 464H16c-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-16zM190.8 128H256v80c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-80h65.2c14.3 0 21.4-17.3 11.2-27.4L300 5c-6.6-6.6-17.4-6.6-24 0l-96.4 95.7c-10.2 10-3 27.3 11.2 27.3z\"]\n};\nvar faSunset = {\n prefix: 'fas',\n iconName: 'sunset',\n icon: [576, 512, [], \"f767\", \"M250.9 374.5c-20.6 8.5-36.3 23.5-46.6 41.5h167.2c-23.8-41.6-75.1-60.3-120.6-41.5zM80.7 416h87.6c.2-.5.2-1 .4-1.4 27.3-65.8 102.9-97.2 168.7-69.9 33.4 13.8 57.8 40.2 70.3 71.3h87.6l28.4-32.7c9.4-10.9 2.4-27.9-12-28.9l-106.5-7.6-7.6-106.5c-1-14.4-18-21.4-28.9-12l-80.7 70-80.7-70c-10.9-9.4-27.9-2.4-28.9 12l-7.6 106.5-106.5 7.6c-14.4 1-21.4 18-12 28.9L80.7 416zM560 464H16c-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-16zM276 219c6.6 6.6 17.4 6.6 24 0l96.4-95.7c10.1-10.1 3-27.4-11.3-27.4H320V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v80h-65.2c-14.3 0-21.4 17.3-11.2 27.4L276 219z\"]\n};\nvar faSuperscript = {\n prefix: 'fas',\n iconName: 'superscript',\n icon: [512, 512, [], \"f12b\", \"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\"]\n};\nvar faSurprise = {\n prefix: 'fas',\n iconName: 'surprise',\n icon: [496, 512, [], \"f5c2\", \"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\"]\n};\nvar faSwatchbook = {\n prefix: 'fas',\n iconName: 'swatchbook',\n icon: [512, 512, [], \"f5c3\", \"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\"]\n};\nvar faSwimmer = {\n prefix: 'fas',\n iconName: 'swimmer',\n icon: [640, 512, [], \"f5c4\", \"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\"]\n};\nvar faSwimmingPool = {\n prefix: 'fas',\n iconName: 'swimming-pool',\n icon: [640, 512, [], \"f5c5\", \"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\"]\n};\nvar faSword = {\n prefix: 'fas',\n iconName: 'sword',\n icon: [512, 512, [], \"f71c\", \"M110.11 227.59c-6.25-6.25-16.38-6.25-22.63 0l-18.79 18.8a16.005 16.005 0 0 0-2 20.19l53.39 80.09-53.43 53.43-29.26-14.63a13.902 13.902 0 0 0-16.04 2.6L4.07 405.36c-5.42 5.43-5.42 14.22 0 19.64L87 507.93c5.42 5.42 14.22 5.42 19.64 0l17.29-17.29a13.873 13.873 0 0 0 2.6-16.03l-14.63-29.26 53.43-53.43 80.09 53.39c6.35 4.23 14.8 3.39 20.19-2l18.8-18.79c6.25-6.25 6.25-16.38 0-22.63l-174.3-174.3zM493.73.16L400 16 171.89 244.11l96 96L496 112l15.83-93.73c1.51-10.56-7.54-19.61-18.1-18.11z\"]\n};\nvar faSwordLaser = {\n prefix: 'fas',\n iconName: 'sword-laser',\n icon: [512, 512, [], \"e03b\", \"M105.4989,327.28721l79.19794,79.19384,22.628-22.62688L128.1269,304.66032ZM9.37147,412.13472a32.00179,32.00179,0,0,0-.01935,45.23473L54.586,502.64519a32.07776,32.07776,0,0,0,45.26149.022L179.05363,423.465,88.54035,332.956Zm186.63937-175.355a8.00079,8.00079,0,0,0-11.314,0l-11.314,11.31319a8.00026,8.00026,0,0,0,0,11.31369l79.19793,79.19385a8.00081,8.00081,0,0,0,11.314,0l11.31394-11.3132a8.00015,8.00015,0,0,0,0-11.31369Zm-56.56994,56.567L218.63878,372.541l22.628-22.62688-79.19793-79.19433ZM504.97121,7.02851a24.00693,24.00693,0,0,0-33.279-.64061L225.58713,232.41406l53.98729,53.98451L505.612,40.306A24.0046,24.0046,0,0,0,504.97121,7.02851Z\"]\n};\nvar faSwordLaserAlt = {\n prefix: 'fas',\n iconName: 'sword-laser-alt',\n icon: [512, 512, [], \"e03c\", \"M54.60974,502.65158l.002.00195a32.08551,32.08551,0,0,0,45.26143.01173l84.88276-84.88155-22.63853-22.6382ZM94.22325,327.25434,9.3698,412.12416A31.99505,31.99505,0,0,0,9.36,457.35955l.00586.0039L116.85006,349.87887ZM128.16737,361.196,20.67539,468.68451l22.6229,22.64406L150.8,383.82836Zm180.866-105.13441H172.03587a15.99913,15.99913,0,0,0-11.31731,4.68861l-55.178,55.187,90.53068,90.52938L320.294,283.43531C330.45087,273.37628,323.328,256.06161,309.03335,256.06161ZM504.96954,7.02964a24.01262,24.01262,0,0,0-33.28575-.64077l-245.70461,225.667H329.50336l176.107-191.739A24.01232,24.01232,0,0,0,504.96954,7.02964Z\"]\n};\nvar faSwords = {\n prefix: 'fas',\n iconName: 'swords',\n icon: [512, 512, [], \"f71d\", \"M309.37 389.38l80-80L93.33 13.33 15.22.14C6.42-1.12-1.12 6.42.14 15.22l13.2 78.11 296.03 296.05zm197.94 72.68L448 402.75l31.64-59.03c3.33-6.22 2.2-13.88-2.79-18.87l-17.54-17.53c-6.25-6.25-16.38-6.25-22.63 0L307.31 436.69c-6.25 6.25-6.25 16.38 0 22.62l17.53 17.54a16 16 0 0 0 18.87 2.79L402.75 448l59.31 59.31c6.25 6.25 16.38 6.25 22.63 0l22.62-22.62c6.25-6.25 6.25-16.38 0-22.63zm-8.64-368.73l13.2-78.11c1.26-8.8-6.29-16.34-15.08-15.08l-78.11 13.2-140.05 140.03 80 80L498.67 93.33zm-345.3 185.3L100 332l-24.69-24.69c-6.25-6.25-16.38-6.25-22.62 0l-17.54 17.53a15.998 15.998 0 0 0-2.79 18.87L64 402.75 4.69 462.06c-6.25 6.25-6.25 16.38 0 22.63l22.62 22.62c6.25 6.25 16.38 6.25 22.63 0L109.25 448l59.03 31.64c6.22 3.33 13.88 2.2 18.87-2.79l17.53-17.54c6.25-6.25 6.25-16.38 0-22.62L180 412l53.37-53.37-80-80z\"]\n};\nvar faSwordsLaser = {\n prefix: 'fas',\n iconName: 'swords-laser',\n icon: [640, 512, [], \"e03d\", \"M135.03144,7.03013a24.01269,24.01269,0,0,0-.64257,33.287l225.66788,245.7026V182.49655L168.31854,6.38951A24.01275,24.01275,0,0,0,135.03144,7.03013ZM411.43563,191.70552c-10.05859-10.15623-27.373-3.0332-27.373,11.26169V339.963a16.00393,16.00393,0,0,0,4.6875,11.31834L443.93757,406.459l90.52927-90.53106Zm77.75974,192.12654L596.68361,491.324l22.64452-22.623-107.5-107.50172ZM630.666,412.12692l-84.88278-84.88263-22.63671,22.63862L630.65235,457.3905l.002-.002A32.08761,32.08761,0,0,0,630.666,412.12692Zm-175.412,5.64843L540.125,502.62868a31.99249,31.99249,0,0,0,45.23436.00977l.0039-.00586L477.879,395.1504ZM256.00015,313.1994l42.69725-46.67959-42.69725-46.48818ZM400.71689,154.98489,505.61138,40.3074a24.00207,24.00207,0,0,0-33.918-33.91984L343.65636,123.985,381.4669,158.7134a47.95342,47.95342,0,0,1,18.71483-3.78124C400.36337,154.93216,400.53525,154.98294,400.71689,154.98489ZM196.59978,224.62928l-28.76366,29.11321a32.0069,32.0069,0,0,0-45.27733,45.25186L9.33618,412.15427a32.06806,32.06806,0,0,0,.01172,45.2499l45.30857,45.23818a32.01845,32.01845,0,0,0,45.25-.00976L219.26774,384.25784a15.99284,15.99284,0,0,0,4.73242-11.3574v-137.029C224.00016,221.56678,206.65642,214.45156,196.59978,224.62928ZM168.5412,360.44734a16,16,0,1,1,16.0078-16A16.00535,16.00535,0,0,1,168.5412,360.44734Z\"]\n};\nvar faSynagogue = {\n prefix: 'fas',\n iconName: 'synagogue',\n icon: [640, 512, [], \"f69b\", \"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\"]\n};\nvar faSync = {\n prefix: 'fas',\n iconName: 'sync',\n icon: [512, 512, [], \"f021\", \"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\"]\n};\nvar faSyncAlt = {\n prefix: 'fas',\n iconName: 'sync-alt',\n icon: [512, 512, [], \"f2f1\", \"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\"]\n};\nvar faSyringe = {\n prefix: 'fas',\n iconName: 'syringe',\n icon: [512, 512, [], \"f48e\", \"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\"]\n};\nvar faTable = {\n prefix: 'fas',\n iconName: 'table',\n icon: [512, 512, [], \"f0ce\", \"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\"]\n};\nvar faTableTennis = {\n prefix: 'fas',\n iconName: 'table-tennis',\n icon: [512, 512, [], \"f45d\", \"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\"]\n};\nvar faTablet = {\n prefix: 'fas',\n iconName: 'tablet',\n icon: [448, 512, [], \"f10a\", \"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\"]\n};\nvar faTabletAlt = {\n prefix: 'fas',\n iconName: 'tablet-alt',\n icon: [448, 512, [], \"f3fa\", \"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\"]\n};\nvar faTabletAndroid = {\n prefix: 'fas',\n iconName: 'tablet-android',\n icon: [448, 512, [], \"f3fb\", \"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-48zM288 452c0 6.6-5.4 12-12 12H172c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h104c6.6 0 12 5.4 12 12v8z\"]\n};\nvar faTabletAndroidAlt = {\n prefix: 'fas',\n iconName: 'tablet-android-alt',\n icon: [448, 512, [], \"f3fc\", \"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-48zM288 452c0 6.6-5.4 12-12 12H172c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h104c6.6 0 12 5.4 12 12v8zm112-80c0 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\"]\n};\nvar faTabletRugged = {\n prefix: 'fas',\n iconName: 'tablet-rugged',\n icon: [448, 512, [], \"f48f\", \"M439.2 164.4c5.4-2.7 8.8-8.2 8.8-14.3V73.9c0-6.1-3.4-11.6-8.8-14.3L416 48c0-26.5-21.5-48-48-48H80C53.5 0 32 21.5 32 48L8.8 59.6C3.4 62.3 0 67.8 0 73.9v76.2c0 6.1 3.4 11.6 8.8 14.3L32 176v16L8.8 203.6c-5.4 2.7-8.8 8.2-8.8 14.3v76.2c0 6.1 3.4 11.6 8.8 14.3L32 320v16L8.8 347.6c-5.4 2.7-8.8 8.2-8.8 14.3v76.2c0 6.1 3.4 11.6 8.8 14.3L32 464c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48l23.2-11.6c5.4-2.7 8.8-8.2 8.8-14.3v-76.2c0-6.1-3.4-11.6-8.8-14.3L416 336v-16l23.2-11.6c5.4-2.7 8.8-8.2 8.8-14.3v-76.2c0-6.1-3.4-11.6-8.8-14.3L416 192v-16l23.2-11.6zM352 432c0 8.8-7.2 16-16 16H112c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h224c8.8 0 16 7.2 16 16v352z\"]\n};\nvar faTablets = {\n prefix: 'fas',\n iconName: 'tablets',\n icon: [640, 512, [], \"f490\", \"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\"]\n};\nvar faTachometer = {\n prefix: 'fas',\n iconName: 'tachometer',\n icon: [576, 512, [], \"f0e4\", \"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-288zm102.77 119.59l-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.36z\"]\n};\nvar faTachometerAlt = {\n prefix: 'fas',\n iconName: 'tachometer-alt',\n icon: [576, 512, [], \"f3fd\", \"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\"]\n};\nvar faTachometerAltAverage = {\n prefix: 'fas',\n iconName: 'tachometer-alt-average',\n icon: [576, 512, [], \"f624\", \"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-288zM96 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 32zm199.12 192H232.88c-5.5-9.45-8.88-20.28-8.88-32 0-26.85 16.56-49.75 40-59.25V128c0-13.25 10.75-24 24-24s24 10.75 24 24v196.75c23.44 9.5 40 32.41 40 59.25 0 11.72-3.38 22.55-8.88 32zM400 192c0-17.67 14.33-32 32-32s32 14.33 32 32-14.33 32-32 32-32-14.33-32-32zm80 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"]\n};\nvar faTachometerAltFast = {\n prefix: 'fas',\n iconName: 'tachometer-alt-fast',\n icon: [576, 512, [], \"f625\", \"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 64c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.33-32-32 14.33-32 32-32zM96 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 32zm199.12 192H232.88c-5.5-9.45-8.88-20.28-8.88-32 0-35.35 28.65-64 64-64 5.65 0 11.02.96 16.24 2.34L412.8 177.59c7.98-10.56 23-12.72 33.61-4.8 10.59 7.95 12.75 23 4.8 33.61L342.65 351.14c5.81 9.63 9.35 20.79 9.35 32.86 0 11.72-3.38 22.55-8.88 32zM480 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"]\n};\nvar faTachometerAltFastest = {\n prefix: 'fas',\n iconName: 'tachometer-alt-fastest',\n icon: [576, 512, [], \"f626\", \"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-288zm144 128c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.33-32-32 14.33-32 32-32zM288 96c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.33-32-32 14.33-32 32-32zM96 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 32zm339.95 151.67l-133.93 22.32c-1.51 6.37-3.69 12.48-6.9 18.01H232.88c-5.5-9.45-8.88-20.28-8.88-32 0-35.35 28.65-64 64-64 23.06 0 43.1 12.31 54.37 30.61l133.68-22.28c13.09-2.17 25.45 6.64 27.62 19.72 2.19 13.07-6.65 25.45-19.72 27.62z\"]\n};\nvar faTachometerAltSlow = {\n prefix: 'fas',\n iconName: 'tachometer-alt-slow',\n icon: [576, 512, [], \"f627\", \"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 64c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.33-32-32 14.33-32 32-32zM96 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm247.12 32H232.88c-5.5-9.45-8.88-20.28-8.88-32 0-12.07 3.54-23.23 9.35-32.86L124.8 206.41c-7.95-10.61-5.8-25.66 4.8-33.61 10.64-7.92 25.66-5.77 33.61 4.8l108.56 144.74c5.21-1.37 10.59-2.34 16.24-2.34 35.35 0 64 28.65 64 64-.01 11.72-3.39 22.55-8.89 32zM400 192c0-17.67 14.33-32 32-32s32 14.33 32 32-14.33 32-32 32-32-14.33-32-32zm80 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"]\n};\nvar faTachometerAltSlowest = {\n prefix: 'fas',\n iconName: 'tachometer-alt-slowest',\n icon: [576, 512, [], \"f628\", \"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 64c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.33-32-32 14.33-32 32-32zm-144 64c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.33-32-32 14.33-32 32-32zm199.12 256H232.88c-3.21-5.52-5.39-11.63-6.9-18.01L92.05 375.67c-13.06-2.17-21.91-14.55-19.72-27.62 2.17-13.08 14.53-21.89 27.62-19.72l133.68 22.28C244.9 332.31 264.94 320 288 320c35.35 0 64 28.65 64 64 0 11.72-3.38 22.55-8.88 32zM400 192c0-17.67 14.33-32 32-32s32 14.33 32 32-14.33 32-32 32-32-14.33-32-32zm80 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"]\n};\nvar faTachometerAverage = {\n prefix: 'fas',\n iconName: 'tachometer-average',\n icon: [576, 512, [], \"f629\", \"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-288zm55.12 384H232.88c-5.5-9.45-8.88-20.28-8.88-32 0-26.85 16.56-49.75 40-59.25V128c0-13.25 10.75-24 24-24s24 10.75 24 24v196.75c23.44 9.5 40 32.41 40 59.25 0 11.72-3.38 22.55-8.88 32z\"]\n};\nvar faTachometerFast = {\n prefix: 'fas',\n iconName: 'tachometer-fast',\n icon: [576, 512, [], \"f62a\", \"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-288zm163.2 174.41L342.65 351.14c5.81 9.63 9.35 20.79 9.35 32.86 0 11.72-3.38 22.55-8.88 32H232.88c-5.5-9.45-8.88-20.28-8.88-32 0-35.35 28.65-64 64-64 5.65 0 11.02.96 16.24 2.34L412.8 177.59c7.98-10.56 23-12.72 33.61-4.8 10.59 7.96 12.75 23.01 4.79 33.62z\"]\n};\nvar faTachometerFastest = {\n prefix: 'fas',\n iconName: 'tachometer-fastest',\n icon: [576, 512, [], \"f62b\", \"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-288zm195.95 343.67l-133.93 22.32c-1.51 6.37-3.69 12.48-6.9 18.01H232.88c-5.5-9.45-8.88-20.28-8.88-32 0-35.35 28.65-64 64-64 23.06 0 43.1 12.31 54.37 30.61l133.68-22.28c13.09-2.17 25.45 6.64 27.62 19.72 2.19 13.07-6.65 25.45-19.72 27.62z\"]\n};\nvar faTachometerSlow = {\n prefix: 'fas',\n iconName: 'tachometer-slow',\n icon: [576, 512, [], \"f62c\", \"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-288zm55.12 384H232.88c-5.5-9.45-8.88-20.28-8.88-32 0-12.07 3.54-23.23 9.35-32.86L124.8 206.41c-7.95-10.61-5.8-25.66 4.8-33.61 10.64-7.92 25.66-5.77 33.61 4.8l108.56 144.74c5.21-1.37 10.59-2.34 16.24-2.34 35.35 0 64 28.65 64 64-.01 11.72-3.39 22.55-8.89 32z\"]\n};\nvar faTachometerSlowest = {\n prefix: 'fas',\n iconName: 'tachometer-slowest',\n icon: [576, 512, [], \"f62d\", \"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-288zm55.12 384H232.88c-3.21-5.52-5.39-11.63-6.9-18.01L92.05 375.67c-13.06-2.17-21.91-14.55-19.72-27.62 2.17-13.08 14.53-21.89 27.62-19.72l133.68 22.28C244.9 332.31 264.94 320 288 320c35.35 0 64 28.65 64 64 0 11.72-3.38 22.55-8.88 32z\"]\n};\nvar faTaco = {\n prefix: 'fas',\n iconName: 'taco',\n icon: [512, 512, [], \"f826\", \"M256 192C125.82 192 18.14 299.4.32 439.08-2.43 460.66 13 480 32.56 480h446.88c19.56 0 35-19.34 32.24-40.92C493.86 299.4 386.18 192 256 192zM112 416a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm64-64a16 16 0 1 1 16-16 16 16 0 0 1-16 16zM7.33 279.48a129 129 0 0 1 4.53 28.14C64 218.51 154.91 160 256 160s192 58.52 244.14 147.64a128.36 128.36 0 0 1 4.53-28.09c0-.09.05-.18.08-.26 5.14-17.32 11-36.94 4.16-55-7.15-19.06-24.76-29.36-40.31-38.46-9.49-5.54-19.32-11.29-23.71-17.53-4.74-6.69-7.33-18.51-9.83-30-3.95-18.08-8.44-38.58-23.64-50.64-15.69-12.45-36-11-54-9.81-10.79.76-22 1.5-29.18-1.1-6.93-2.51-15.12-10.14-23-17.51-29.05-27.07-50.66-44.51-98.38-.05-7.92 7.37-16.11 15-23 17.51-7.22 2.6-18.39 1.86-29.18 1.1-18-1.24-38.32-2.64-54 9.81-15.2 12.06-19.69 32.56-23.64 50.64-2.5 11.46-5.09 23.28-9.83 30-4.39 6.24-14.22 12-23.71 17.53-15.55 9.1-33.16 19.39-40.31 38.46-6.81 18.08-1 37.7 4.16 55-.07.07-.05.16-.02.24z\"]\n};\nvar faTag = {\n prefix: 'fas',\n iconName: 'tag',\n icon: [512, 512, [], \"f02b\", \"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\"]\n};\nvar faTags = {\n prefix: 'fas',\n iconName: 'tags',\n icon: [640, 512, [], \"f02c\", \"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\"]\n};\nvar faTally = {\n prefix: 'fas',\n iconName: 'tally',\n icon: [640, 512, [], \"f69c\", \"M639.21 169.49l-9.89-30.43c-2.73-8.4-11.75-13-20.16-10.27L544 149.88V48c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v122.59l-64 20.71V48c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v164.01l-64 20.71V48c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v205.43l-64 20.71V48c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v246.86l-84.94 27.49C2.65 325.08-1.95 334.11.79 342.51l9.89 30.43c2.73 8.4 11.76 13 20.16 10.27L96 362.13V464c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V341.41l64-20.71V464c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V299.99l64-20.71V464c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V258.57l64-20.71V464c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V217.14l84.94-27.49c8.4-2.73 13.01-11.75 10.27-20.16z\"]\n};\nvar faTanakh = {\n prefix: 'fas',\n iconName: 'tanakh',\n icon: [448, 512, [], \"f827\", \"M318 139.44h-34.9l17.48 29.19zm-34.86 105.12h34.91l-17.47-29.17zm-59.09 52.07l16.78-28.07h-33.58zM130 244.56h34.9l-17.48-29.19zm34.89-105.12H130l17.47 29.17zM352 0H25.6C9.6 0 0 9.6 0 25.6v332.8q0 14.4 9.6 19.2c3.2 12.8 3.2 57.6 0 73.6Q0 460.8 0 470.4v16c0 16 12.8 25.6 25.6 25.6H352c54.4 0 96-41.6 96-96V96c0-54.4-41.6-96-96-96zM105.41 125.59a20.11 20.11 0 0 1 17.5-10.15h56.3L206.8 69.3a20 20 0 0 1 17.25-9.82 19.66 19.66 0 0 1 17 9.68l27.7 46.28h56.36a20 20 0 0 1 17.14 30.29L314.57 192l27.79 46.43a19.6 19.6 0 0 1 .23 20 20.11 20.11 0 0 1-17.5 10.15h-56.3L241.2 314.7a20 20 0 0 1-17.2 9.82 19.66 19.66 0 0 1-17-9.68l-27.7-46.28h-56.39a20 20 0 0 1-17.14-30.29L133.43 192l-27.79-46.43a19.6 19.6 0 0 1-.23-19.98zM352 448H67.2v-64H352c16 0 32 12.8 32 32s-12.8 32-32 32zM224 87.38l-16.78 28.06h33.58zm-31.12 157.18h62.3L286.59 192l-31.47-52.58h-62.3L161.41 192z\"]\n};\nvar faTape = {\n prefix: 'fas',\n iconName: 'tape',\n icon: [640, 512, [], \"f4db\", \"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\"]\n};\nvar faTasks = {\n prefix: 'fas',\n iconName: 'tasks',\n icon: [512, 512, [], \"f0ae\", \"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\"]\n};\nvar faTasksAlt = {\n prefix: 'fas',\n iconName: 'tasks-alt',\n icon: [512, 512, [], \"f828\", \"M488 351H24c-13.3 0-24 10.7-24 24v80c0 13.3 10.7 24 24 24h464c13.3 0 24-10.7 24-24v-80c0-13.3-10.7-24-24-24zm-24 80H289v-32h175v32zm24-240H24c-13.3 0-24 10.7-24 24v80c0 13.3 10.7 24 24 24h464c13.3 0 24-10.7 24-24v-80c0-13.3-10.7-24-24-24zm-24 80H161v-32h303v32zm24-240H24C10.7 31 0 41.7 0 55v80c0 13.3 10.7 24 24 24h464c13.3 0 24-10.7 24-24V55c0-13.3-10.7-24-24-24zm-24 80H353V79h111v32z\"]\n};\nvar faTaxi = {\n prefix: 'fas',\n iconName: 'taxi',\n icon: [512, 512, [], \"f1ba\", \"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\"]\n};\nvar faTeeth = {\n prefix: 'fas',\n iconName: 'teeth',\n icon: [640, 512, [], \"f62e\", \"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\"]\n};\nvar faTeethOpen = {\n prefix: 'fas',\n iconName: 'teeth-open',\n icon: [640, 512, [], \"f62f\", \"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\"]\n};\nvar faTelescope = {\n prefix: 'fas',\n iconName: 'telescope',\n icon: [640, 512, [], \"e03e\", \"M380.41991,92.1336,74.29894,241.7427c-8.31835,4.06444-12.27733,13.25583-9.05663,21.02925l8.74413,21.10934L9.881,310.43593a16.00146,16.00146,0,0,0-8.66015,20.90425L21.27748,379.762a16.00055,16.00055,0,0,0,20.90429,8.66014l64.10544-26.55464,8.74219,21.10738c3.21874,7.77343,12.51757,11.47459,21.27147,8.46678l127.0019-43.623c.1875.24219.39258.46875.584.709L216.42,490.93949A16.00034,16.00034,0,0,0,231.5977,512H248.459a15.99985,15.99985,0,0,0,15.17772-10.94139l42.16209-126.49585a71.088,71.088,0,0,0,28.44726,0l42.164,126.49585A15.99986,15.99986,0,0,0,391.58787,512h16.85937a16.00062,16.00062,0,0,0,15.17968-21.06051L376.16014,348.52765a71.2877,71.2877,0,0,0,15.85742-44.52726c0-.13086-.03906-.25-.03906-.38086l66.56637-22.86519ZM320,328.00035a24,24,0,1,1,24-24A24.02622,24.02622,0,0,1,320,328.00035ZM638.77722,216.83064,553.06241,9.88181a15.99768,15.99768,0,0,0-20.90233-8.66014L414.84372,49.81923a15.99966,15.99966,0,0,0-8.65625,20.90426l85.71286,206.94883a16.00055,16.00055,0,0,0,20.90429,8.66014L630.119,237.73489A15.99729,15.99729,0,0,0,638.77722,216.83064Z\"]\n};\nvar faTemperatureDown = {\n prefix: 'fas',\n iconName: 'temperature-down',\n icon: [512, 512, [], \"e03f\", \"M160,322.91V304a16,16,0,0,0-32,0v18.91a48,48,0,1,0,32,0ZM256,112a112,112,0,0,0-224,0V278.5C12.3,303.19,0,334,0,368a144,144,0,0,0,288,0c0-34-12.3-64.91-32-89.5ZM144,448A79.87,79.87,0,0,1,96,304.19V112a48,48,0,0,1,96,0V304.19A79.87,79.87,0,0,1,144,448Zm352-96H448V48a16,16,0,0,0-16-16H400a16,16,0,0,0-16,16V352H336c-14.21,0-21.39,17.25-11.31,27.31l80,96a16,16,0,0,0,22.62,0l80-96C517.34,369.25,510.22,352,496,352Z\"]\n};\nvar faTemperatureFrigid = {\n prefix: 'fas',\n iconName: 'temperature-frigid',\n icon: [576, 512, [], \"f768\", \"M544 278.5V112C544 50.1 493.9 0 432 0S320 50.1 320 112v166.5c-19.7 24.6-32 55.5-32 89.5 0 79.5 64.5 144 144 144s144-64.5 144-144c0-34-12.3-64.9-32-89.5zM432 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 80zM268.3 305.4c5.1-13 11.4-25.7 19.7-37.5v-7.2L224.6 224l63.4-36.6v-56.1l-88 50.8v-56.9L240.2 85c4.7-4.7 4.7-12.3 0-17l-8.5-8.5c-4.7-4.7-12.3-4.7-17 0L200 74.3V44c0-6.6-5.4-12-12-12h-24c-6.6 0-12 5.4-12 12v30.3l-14.8-14.8c-4.7-4.7-12.3-4.7-17 0l-8.5 8.5c-4.7 4.7-4.7 12.3 0 17l40.2 40.2v56.9L101.6 153l-15-55.7c-1.7-6.5-8.4-10.3-14.9-8.6L60 91.9c-6.5 1.7-10.3 8.4-8.6 14.9l5.5 20.4-26.6-15.3c-5.8-3.4-13.2-1.4-16.6 4.4l-12.1 21c-3.4 5.8-1.4 13.2 4.4 16.6l26.6 15.3-20.4 5.5c-6.5 1.7-10.3 8.4-8.6 14.9l3.1 11.7c1.7 6.5 8.4 10.3 14.9 8.6L77.3 195l50.2 29-50.2 29-55.7-15c-6.5-1.7-13.1 2.1-14.9 8.6l-3.1 11.7c-1.7 6.5 2.1 13.1 8.6 14.9l20.4 5.5-26.5 15.4c-5.8 3.4-7.8 10.8-4.4 16.6l12.1 21c3.4 5.8 10.8 7.8 16.6 4.4L57 320.8l-5.5 20.4c-1.7 6.5 2.1 13.1 8.6 14.9l11.7 3.1c6.5 1.7 13.1-2.1 14.9-8.6l14.9-55.6 50.4-29.1v56.9L111.8 363c-4.7 4.7-4.7 12.3 0 17l8.5 8.5c4.7 4.7 12.3 4.7 17 0l14.8-14.8V404c0 6.6 5.4 12 12 12h24c6.6 0 12-5.4 12-12v-30.3l14.8 14.8c4.7 4.7 12.3 4.7 17 0l8.5-8.5c4.7-4.7 4.7-12.3 0-17L200 322.8v-56.9l68.3 39.5zM448 322.9V304c0-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\"]\n};\nvar faTemperatureHigh = {\n prefix: 'fas',\n iconName: 'temperature-high',\n icon: [512, 512, [], \"f769\", \"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\"]\n};\nvar faTemperatureHot = {\n prefix: 'fas',\n iconName: 'temperature-hot',\n icon: [640, 512, [], \"f76a\", \"M352 267.9V112c0-16.9 3.5-33 8.9-48.1L279 91.2 237.6 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.1L91.2 169 8.4 210.4c-11.2 5.6-11.2 21.5 0 27.1L91.2 279l-29.3 87.9c-4 11.9 7.3 23.1 19.2 19.2l87.9-29.3 41.4 82.8c5.6 11.2 21.6 11.2 27.1 0l41.4-82.9 41.1 13.7c0-.8-.1-1.6-.1-2.5.1-35.8 11.1-70.2 32.1-100zm-60.1 24c-37.4 37.4-98.3 37.4-135.8 0s-37.4-98.4 0-135.8c37.4-37.4 98.3-37.4 135.8 0 37.4 37.4 37.4 98.4 0 135.8zM224 160c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64zm384 118.5V112C608 50.1 557.9 0 496 0S384 50.1 384 112v166.5c-19.7 24.6-32 55.5-32 89.5 0 79.5 64.5 144 144 144s144-64.5 144-144c0-34-12.3-64.9-32-89.5zM496 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\"]\n};\nvar faTemperatureLow = {\n prefix: 'fas',\n iconName: 'temperature-low',\n icon: [512, 512, [], \"f76b\", \"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\"]\n};\nvar faTemperatureUp = {\n prefix: 'fas',\n iconName: 'temperature-up',\n icon: [512, 512, [], \"e040\", \"M160,322.91V112a16,16,0,0,0-32,0V322.91a48,48,0,1,0,32,0ZM256,112a112,112,0,0,0-224,0V278.5C12.3,303.19,0,334,0,368a144,144,0,0,0,288,0c0-34-12.3-64.91-32-89.5ZM144,448A79.87,79.87,0,0,1,96,304.19V112a48,48,0,0,1,96,0V304.19A79.87,79.87,0,0,1,144,448ZM507.3,132.69l-80-96a16,16,0,0,0-22.63,0l-80,96C314.66,142.75,321.78,160,336,160h48V464a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V160h48C510.19,160,517.36,142.75,507.3,132.69Z\"]\n};\nvar faTenge = {\n prefix: 'fas',\n iconName: 'tenge',\n icon: [384, 512, [], \"f7d7\", \"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\"]\n};\nvar faTennisBall = {\n prefix: 'fas',\n iconName: 'tennis-ball',\n icon: [496, 512, [], \"f45e\", \"M219 79.1c-.9-27.9 5.6-52.4 18.4-71.1C113.8 13.2 5.8 110.6 0 245.3c18.7-12.9 43.1-19.6 71.1-18.4C150 228.8 221.2 150.3 219 79.1zm207.4 157.8c19.4.4 64.8-3.1 58.7-54.8-11.6-37.2-32-72.3-61.5-101.8S359 30.4 321.8 18.8c-51.7-6-55.4 39.2-54.8 58.7 1.5 47.1-21.6 101.6-58.7 138.7-37.1 37.3-91.3 60.6-138.7 58.8-19.6-.5-64.9 3.1-58.7 55 11.6 37.2 31.9 72.2 61.4 101.7s64.5 49.8 101.7 61.4c51.8 6 55.6-39.1 55-58.7-1.5-47.1 21.6-101.6 58.7-138.7 37.2-37.2 91.9-60.7 138.7-58.8zm-1.5 48.1c-71.5-2.6-150.3 70.4-147.9 147.9.9 27.9-5.6 52.4-18.5 71.1 121-5.1 231.6-100.1 237.4-237.4-18.6 12.8-43.1 19.3-71 18.4z\"]\n};\nvar faTerminal = {\n prefix: 'fas',\n iconName: 'terminal',\n icon: [640, 512, [], \"f120\", \"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\"]\n};\nvar faText = {\n prefix: 'fas',\n iconName: 'text',\n icon: [448, 512, [], \"f893\", \"M432 32a16 16 0 0 1 16 16v96a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16v-32H264v304h40a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16H144a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h40V112H64v32a16 16 0 0 1-16 16H16a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16z\"]\n};\nvar faTextHeight = {\n prefix: 'fas',\n iconName: 'text-height',\n icon: [576, 512, [], \"f034\", \"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\"]\n};\nvar faTextSize = {\n prefix: 'fas',\n iconName: 'text-size',\n icon: [640, 512, [], \"f894\", \"M624 32H272a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32h88v304h-40a16 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-40V112h88v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM304 224H16a16 16 0 0 0-16 16v64a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-16h56v128H96a16 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-24V288h56v16a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-64a16 16 0 0 0-16-16z\"]\n};\nvar faTextWidth = {\n prefix: 'fas',\n iconName: 'text-width',\n icon: [448, 512, [], \"f035\", \"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\"]\n};\nvar faTh = {\n prefix: 'fas',\n iconName: 'th',\n icon: [512, 512, [], \"f00a\", \"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\"]\n};\nvar faThLarge = {\n prefix: 'fas',\n iconName: 'th-large',\n icon: [512, 512, [], \"f009\", \"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\"]\n};\nvar faThList = {\n prefix: 'fas',\n iconName: 'th-list',\n icon: [512, 512, [], \"f00b\", \"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\"]\n};\nvar faTheaterMasks = {\n prefix: 'fas',\n iconName: 'theater-masks',\n icon: [640, 512, [], \"f630\", \"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\"]\n};\nvar faThermometer = {\n prefix: 'fas',\n iconName: 'thermometer',\n icon: [512, 512, [], \"f491\", \"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\"]\n};\nvar faThermometerEmpty = {\n prefix: 'fas',\n iconName: 'thermometer-empty',\n icon: [256, 512, [], \"f2cb\", \"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\"]\n};\nvar faThermometerFull = {\n prefix: 'fas',\n iconName: 'thermometer-full',\n icon: [256, 512, [], \"f2c7\", \"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\"]\n};\nvar faThermometerHalf = {\n prefix: 'fas',\n iconName: 'thermometer-half',\n icon: [256, 512, [], \"f2c9\", \"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\"]\n};\nvar faThermometerQuarter = {\n prefix: 'fas',\n iconName: 'thermometer-quarter',\n icon: [256, 512, [], \"f2ca\", \"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\"]\n};\nvar faThermometerThreeQuarters = {\n prefix: 'fas',\n iconName: 'thermometer-three-quarters',\n icon: [256, 512, [], \"f2c8\", \"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\"]\n};\nvar faTheta = {\n prefix: 'fas',\n iconName: 'theta',\n icon: [384, 512, [], \"f69e\", \"M192 8C84.34 8 0 116.94 0 256s84.34 248 192 248 192-108.94 192-248S299.66 8 192 8zm0 96c41.44 0 77.35 44.41 90.43 104H101.57c13.08-59.59 48.99-104 90.43-104zm0 304c-41.44 0-77.35-44.41-90.43-104h180.86c-13.08 59.59-48.99 104-90.43 104z\"]\n};\nvar faThumbsDown = {\n prefix: 'fas',\n iconName: 'thumbs-down',\n icon: [512, 512, [], \"f165\", \"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\"]\n};\nvar faThumbsUp = {\n prefix: 'fas',\n iconName: 'thumbs-up',\n icon: [512, 512, [], \"f164\", \"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\"]\n};\nvar faThumbtack = {\n prefix: 'fas',\n iconName: 'thumbtack',\n icon: [384, 512, [], \"f08d\", \"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\"]\n};\nvar faThunderstorm = {\n prefix: 'fas',\n iconName: 'thunderstorm',\n icon: [512, 512, [], \"f76c\", \"M337 288h-72.1l22.6-77.1c2.5-9.5-4.6-18.9-14.5-18.9h-82c-7.5 0-13.9 5.6-14.9 13l-16 130c-1.2 9 5.8 17 14.9 17h81l-31.6 141.5c-2.2 9.5 5 18.5 14.6 18.5 5.2 0 10.2-2.7 13-7.5l98-194c5.7-10-1.5-22.5-13-22.5zm79-160c-.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 96h32.5l15.9-119.2c3.1-23.3 23.1-40.8 46.6-40.8h85c14.7 0 28.3 6.7 37.3 18.4s11.9 26.5 8.1 40.7L310.5 260H341c16.7 0 32.3 9 40.7 23.5 6.4 11.2 7.8 24.4 4.3 36.5h30c53 0 96-43 96-96s-43-96-96-96z\"]\n};\nvar faThunderstormMoon = {\n prefix: 'fas',\n iconName: 'thunderstorm-moon',\n icon: [576, 512, [], \"f76d\", \"M567.9 223.8c-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.8zM276 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-18zm74.5-110.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 80h16.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.2 8.4 10.9 11.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.2 0 80-35.8 80-80 .1-39.2-28.1-71.7-65.4-78.5z\"]\n};\nvar faThunderstormSun = {\n prefix: 'fas',\n iconName: 'thunderstorm-sun',\n icon: [576, 512, [], \"f76e\", \"M124.1 259.9c-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.2zM436 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-18zm74.5-110.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 80h16.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.2 8.4 10.9 11.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.2 0 80-35.8 80-80 .1-39.2-28.1-71.7-65.4-78.5z\"]\n};\nvar faTicket = {\n prefix: 'fas',\n iconName: 'ticket',\n icon: [576, 512, [], \"f145\", \"M576 208v-96c0-26.51-21.49-48-48-48H48C21.49 64 0 85.49 0 112v96c26.51 0 48 21.49 48 48s-21.49 48-48 48v96c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48v-96c-26.51 0-48-21.49-48-48s21.49-48 48-48z\"]\n};\nvar faTicketAlt = {\n prefix: 'fas',\n iconName: 'ticket-alt',\n icon: [576, 512, [], \"f3ff\", \"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\"]\n};\nvar faTilde = {\n prefix: 'fas',\n iconName: 'tilde',\n icon: [512, 512, [], \"f69f\", \"M339.54 381.51c-35.52-6.48-66.75-27.68-89.31-55.87l-66.52-83.15C174.33 230.73 160.3 224 145.25 224 118.09 224 96 246.09 96 273.25V321c0 17.67-14.33 32-32 32H32c-17.67 0-32-14.33-32-32v-40.92c0-78.1 58.67-147.33 136.64-151.83 47.6-2.75 92.54 17.39 122.05 54.27l69.59 87c9.39 11.75 23.42 18.48 38.47 18.48 27.16 0 49.25-22.09 49.25-49.25V192c0-17.67 14.33-32 32-32h32c17.67 0 32 14.33 32 32v46.75c0 89-80.45 159.56-172.46 142.76z\"]\n};\nvar faTimes = {\n prefix: 'fas',\n iconName: 'times',\n icon: [352, 512, [], \"f00d\", \"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\"]\n};\nvar faTimesCircle = {\n prefix: 'fas',\n iconName: 'times-circle',\n icon: [512, 512, [], \"f057\", \"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\"]\n};\nvar faTimesHexagon = {\n prefix: 'fas',\n iconName: 'times-hexagon',\n icon: [576, 512, [], \"f2ee\", \"M553.5 231.8c8.7 14.9 8.7 33.4 0 48.4l-112 192c-8.6 14.7-24.4 23.8-41.5 23.8H176c-17.1 0-32.9-9.1-41.5-23.8l-112-192c-8.7-14.9-8.7-33.4 0-48.4l112-192C143.1 25.1 158.9 16 176 16h224c17.1 0 32.9 9.1 41.5 23.8l112 192zM409.6 338c4.7-4.7 4.7-12.3 0-17l-65-65 65.1-65.1c4.7-4.7 4.7-12.3 0-17L370 134.4c-4.7-4.7-12.3-4.7-17 0l-65 65-65.1-65.1c-4.7-4.7-12.3-4.7-17 0L166.4 174c-4.7 4.7-4.7 12.3 0 17l65.1 65.1-65.1 65.1c-4.7 4.7-4.7 12.3 0 17l39.6 39.6c4.7 4.7 12.3 4.7 17 0l65.1-65.1 65.1 65.1c4.7 4.7 12.3 4.7 17 0l39.4-39.8z\"]\n};\nvar faTimesOctagon = {\n prefix: 'fas',\n iconName: 'times-octagon',\n icon: [512, 512, [], \"f2f0\", \"M497.9 150.5c9 9 14.1 21.2 14.1 33.9v143.1c0 12.7-5.1 24.9-14.1 33.9L361.5 497.9c-9 9-21.2 14.1-33.9 14.1H184.5c-12.7 0-24.9-5.1-33.9-14.1L14.1 361.5c-9-9-14.1-21.2-14.1-33.9V184.5c0-12.7 5.1-24.9 14.1-33.9L150.5 14.1c9-9 21.2-14.1 33.9-14.1h143.1c12.7 0 24.9 5.1 33.9 14.1l136.5 136.4zM377.6 338c4.7-4.7 4.7-12.3 0-17l-65-65 65.1-65.1c4.7-4.7 4.7-12.3 0-17L338 134.4c-4.7-4.7-12.3-4.7-17 0l-65 65-65.1-65.1c-4.7-4.7-12.3-4.7-17 0L134.4 174c-4.7 4.7-4.7 12.3 0 17l65.1 65.1-65.1 65.1c-4.7 4.7-4.7 12.3 0 17l39.6 39.6c4.7 4.7 12.3 4.7 17 0l65.1-65.1 65.1 65.1c4.7 4.7 12.3 4.7 17 0l39.4-39.8z\"]\n};\nvar faTimesSquare = {\n prefix: 'fas',\n iconName: 'times-square',\n icon: [448, 512, [], \"f2d3\", \"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-54.4 289.1c4.7 4.7 4.7 12.3 0 17L306 377.6c-4.7 4.7-12.3 4.7-17 0L224 312l-65.1 65.6c-4.7 4.7-12.3 4.7-17 0L102.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 17L280 256l65.6 65.1z\"]\n};\nvar faTint = {\n prefix: 'fas',\n iconName: 'tint',\n icon: [352, 512, [], \"f043\", \"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\"]\n};\nvar faTintSlash = {\n prefix: 'fas',\n iconName: 'tint-slash',\n icon: [640, 512, [], \"f5c7\", \"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\"]\n};\nvar faTire = {\n prefix: 'fas',\n iconName: 'tire',\n icon: [512, 512, [], \"f631\", \"M256 0C114.62 0 0 114.62 0 256s114.62 256 256 256 256-114.62 256-256S397.38 0 256 0zm0 448c-105.87 0-192-86.13-192-192S150.13 64 256 64s192 86.13 192 192-86.13 192-192 192zm-80-192c0-17.82 6.03-34.12 15.88-47.41l-48.23-66.38C114.27 171.22 96 211.45 96 256c0 8.87 1.22 17.42 2.61 25.89l77.46-25.17c0-.24-.07-.47-.07-.72zm15 46.36l-77.42 25.15c22.86 45.4 66.32 78.17 118.42 86.07v-81.65c-16.69-5.28-31.04-15.64-41-29.57zM256 176c8.87 0 17.25 1.79 25.22 4.45l47.93-65.97C307.14 103.06 282.51 96 256 96s-51.14 7.06-73.15 18.48l47.93 65.97c7.97-2.66 16.35-4.45 25.22-4.45zm112.35-33.79l-48.23 66.38C329.97 221.88 336 238.18 336 256c0 .25-.07.48-.07.73l77.46 25.17c1.39-8.48 2.61-17.02 2.61-25.89 0-44.56-18.27-84.79-47.65-113.8zM280 331.93v81.65c52.1-7.9 95.55-40.67 118.42-86.07L321 302.36c-9.96 13.93-24.31 24.29-41 29.57zM256 224c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32z\"]\n};\nvar faTireFlat = {\n prefix: 'fas',\n iconName: 'tire-flat',\n icon: [512, 512, [], \"f632\", \"M256 160c-26.51 0-51.14 7.06-73.15 18.48l47.93 65.97c7.97-2.66 16.35-4.45 25.22-4.45s17.25 1.79 25.22 4.45l47.93-65.97C307.14 167.06 282.51 160 256 160zM96 320c0 8.87 1.22 17.42 2.61 25.89l77.46-25.17c0-.25-.07-.48-.07-.73 0-17.82 6.03-34.12 15.88-47.41l-48.23-66.38C114.27 235.22 96 275.45 96 320zm224.12-47.41C329.97 285.88 336 302.18 336 320c0 .25-.07.48-.07.73l77.46 25.17c1.39-8.48 2.61-17.02 2.61-25.89 0-44.55-18.27-84.78-47.65-113.79l-48.23 66.37zM256 288c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm224 160h-2.61C499.3 410.36 512 366.71 512 320c0-141.38-114.62-256-256-256S0 178.62 0 320c0 46.71 12.7 90.36 34.61 128H32c-17.67 0-32 14.33-32 32s14.33 32 32 32h448c17.67 0 32-14.33 32-32s-14.33-32-32-32zm-81.3 0h-47.79a160.175 160.175 0 0 0 47.51-56.49L321 366.36c-9.96 13.94-24.31 24.29-41 29.57V448h-48v-52.07c-16.69-5.28-31.04-15.64-41-29.57l-77.42 25.15A160.175 160.175 0 0 0 161.09 448H113.3C82.76 413.99 64 369.2 64 320c0-105.87 86.13-192 192-192s192 86.13 192 192c0 49.2-18.76 93.99-49.3 128z\"]\n};\nvar faTirePressureWarning = {\n prefix: 'fas',\n iconName: 'tire-pressure-warning',\n icon: [512, 512, [], \"f633\", \"M474.5 141.54C458.33 113.26 448 80.61 448 46.09V17.14C448 7.67 440.84 0 432 0h-32c-8.84 0-16 7.16-16 16v48c0 32 15.23 74.85 34.94 109.31C437.95 206.56 448 244.86 448 284.08c0 41.13-12.75 82.49-35.8 118.12-5.72 8.85-15.95 13.79-26.48 13.79H126.29c-10.53 0-20.76-4.95-26.48-13.79-23.05-35.63-35.8-77-35.8-118.12 0-39.22 10.05-77.53 29.06-110.77C112.77 138.85 128 96 128 64V16c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.67-16 17.14v28.95c0 34.53-10.33 67.17-26.5 95.46C13.76 183.06 0 231.81 0 284.08 0 360.89 32.54 430.22 80 480v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16h32v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16h32v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16h32v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16c47.46-49.78 80-119.11 80-195.92 0-52.27-13.76-101.02-37.5-142.54zM246.48 256h19.04c8.22 0 15.1-6.23 15.92-14.41l12.8-128c.94-9.42-6.45-17.59-15.92-17.59h-44.64c-9.47 0-16.86 8.17-15.92 17.59l12.8 128c.82 8.18 7.7 14.41 15.92 14.41zm9.52 32c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32z\"]\n};\nvar faTireRugged = {\n prefix: 'fas',\n iconName: 'tire-rugged',\n icon: [512, 512, [], \"f634\", \"M480 192h-9.4c-4.43-14.88-10.27-29.15-17.53-42.56l6.58-6.58c12.5-12.5 12.5-32.76 0-45.26L414.4 52.35c-12.5-12.5-32.76-12.5-45.26 0l-6.58 6.58c-13.41-7.27-27.68-13.1-42.56-17.53V32c0-17.67-14.33-32-32-32h-64c-17.67 0-32 14.33-32 32v9.4c-14.88 4.43-29.15 10.27-42.56 17.53l-6.58-6.58c-12.5-12.5-32.76-12.5-45.26 0L52.35 97.61c-12.5 12.5-12.5 32.76 0 45.26l6.58 6.58c-7.27 13.41-13.1 27.68-17.53 42.56H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h9.4c4.43 14.88 10.27 29.15 17.53 42.56l-6.58 6.58c-12.5 12.5-12.5 32.76 0 45.25l45.25 45.26c12.5 12.5 32.76 12.5 45.26 0l6.58-6.58c13.41 7.27 27.68 13.1 42.56 17.53v9.4c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-9.4c14.88-4.43 29.15-10.27 42.56-17.53l6.58 6.58c12.5 12.5 32.76 12.5 45.26 0l45.25-45.26c12.5-12.5 12.5-32.76 0-45.25l-6.58-6.58c7.27-13.41 13.1-27.68 17.53-42.56h9.4c17.67 0 32-14.33 32-32v-64c0-17.68-14.33-32.01-32-32.01zM256 383.98c-70.69 0-128-57.31-128-128s57.31-128 128-128 128 57.31 128 128c0 70.7-57.31 128-128 128zM256 160c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm0 144c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm72-72c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24zm-144 0c-13.25 0-24 10.74-24 24 0 13.25 10.75 24 24 24s24-10.75 24-24c0-13.26-10.75-24-24-24z\"]\n};\nvar faTired = {\n prefix: 'fas',\n iconName: 'tired',\n icon: [496, 512, [], \"f5c8\", \"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\"]\n};\nvar faToggleOff = {\n prefix: 'fas',\n iconName: 'toggle-off',\n icon: [576, 512, [], \"f204\", \"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\"]\n};\nvar faToggleOn = {\n prefix: 'fas',\n iconName: 'toggle-on',\n icon: [576, 512, [], \"f205\", \"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\"]\n};\nvar faToilet = {\n prefix: 'fas',\n iconName: 'toilet',\n icon: [384, 512, [], \"f7d8\", \"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\"]\n};\nvar faToiletPaper = {\n prefix: 'fas',\n iconName: 'toilet-paper',\n icon: [576, 512, [], \"f71e\", \"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\"]\n};\nvar faToiletPaperAlt = {\n prefix: 'fas',\n iconName: 'toilet-paper-alt',\n icon: [576, 512, [], \"f71f\", \"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-192H128zm352 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\"]\n};\nvar faToiletPaperSlash = {\n prefix: 'fas',\n iconName: 'toilet-paper-slash',\n icon: [640, 512, [], \"e072\", \"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\"]\n};\nvar faTombstone = {\n prefix: 'fas',\n iconName: 'tombstone',\n icon: [512, 512, [], \"f720\", \"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-48-256C448 85.96 362.04 0 256 0S64 85.96 64 192v224h384V192zm-96-8c0 8.84-7.16 16-16 16h-56v128c0 8.84-7.16 16-16 16h-16c-8.84 0-16-7.16-16-16V200h-56c-8.84 0-16-7.16-16-16v-16c0-8.84 7.16-16 16-16h56v-48c0-8.84 7.16-16 16-16h16c8.84 0 16 7.16 16 16v48h56c8.84 0 16 7.16 16 16v16z\"]\n};\nvar faTombstoneAlt = {\n prefix: 'fas',\n iconName: 'tombstone-alt',\n icon: [512, 512, [], \"f721\", \"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-48-256C448 85.96 362.04 0 256 0S64 85.96 64 192v224h384V192z\"]\n};\nvar faToolbox = {\n prefix: 'fas',\n iconName: 'toolbox',\n icon: [512, 512, [], \"f552\", \"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\"]\n};\nvar faTools = {\n prefix: 'fas',\n iconName: 'tools',\n icon: [512, 512, [], \"f7d9\", \"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\"]\n};\nvar faTooth = {\n prefix: 'fas',\n iconName: 'tooth',\n icon: [448, 512, [], \"f5c9\", \"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\"]\n};\nvar faToothbrush = {\n prefix: 'fas',\n iconName: 'toothbrush',\n icon: [640, 512, [], \"f635\", \"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-16zM64 416V232c0-4.42-3.58-8-8-8H40c-4.42 0-8 3.58-8 8v184h32zm64 0V232c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v184h32zm64 0V232c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v184h32zm64 0V232c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v184h32zm64 0V232c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v184h32zm64 0V232c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v184h32zm32 0h32V232c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v184zM64 192h352c35.35 0 64-28.65 64-64C480 57.31 422.69 0 352 0c23.62 23.62 6.89 64-26.51 64H64C28.65 64 0 92.65 0 128s28.65 64 64 64z\"]\n};\nvar faTorah = {\n prefix: 'fas',\n iconName: 'torah',\n icon: [640, 512, [], \"f6a0\", \"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\"]\n};\nvar faToriiGate = {\n prefix: 'fas',\n iconName: 'torii-gate',\n icon: [512, 512, [], \"f6a1\", \"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\"]\n};\nvar faTornado = {\n prefix: 'fas',\n iconName: 'tornado',\n icon: [512, 512, [], \"f76f\", \"M393.8 96H12.2c9.7 34.2 24.5 62.1 42.7 85.3h349.8c-14.1-23.1-20.6-50.2-10.9-85.3zm35.4-70.8c7.4-10.6 0-25.2-12.9-25.2H16.1C7.1 0-.3 7.6 0 16.5c.6 17 2.5 32.6 5.1 47.5h401.1c5.9-12.1 13.3-24.9 23-38.8zM299 330.7c33 20.5 54.4 45.8 53.3 85.3h125.5c25.1-34.4 34.7-62 34.1-85.3H299zm130.9-117.4h-345c45.1 40.4 101 63.6 150.1 85.3h269.4c-14.5-32.1-47.4-56.9-74.5-85.3zm-98.1 275.8c-5 10.6 2.7 22.9 14.4 22.9h27.4c7.9 0 15.8-3 21.7-8.3 22.7-20.3 41-38.6 56.4-55.7H347.4c-3.4 12.5-8.4 26.1-15.6 41.1z\"]\n};\nvar faTractor = {\n prefix: 'fas',\n iconName: 'tractor',\n icon: [640, 512, [], \"f722\", \"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\"]\n};\nvar faTrademark = {\n prefix: 'fas',\n iconName: 'trademark',\n icon: [640, 512, [], \"f25c\", \"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\"]\n};\nvar faTrafficCone = {\n prefix: 'fas',\n iconName: 'traffic-cone',\n icon: [512, 512, [], \"f636\", \"M362.12 192H149.88l-38.21 96h288.65l-38.2-96zM289.73 10.08A16.01 16.01 0 0 0 274.86 0h-37.72a16.01 16.01 0 0 0-14.87 10.08L175.35 128h161.3L289.73 10.08zM496 448h-32l-38.21-96H86.21L48 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-16z\"]\n};\nvar faTrafficLight = {\n prefix: 'fas',\n iconName: 'traffic-light',\n icon: [384, 512, [], \"f637\", \"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\"]\n};\nvar faTrafficLightGo = {\n prefix: 'fas',\n iconName: 'traffic-light-go',\n icon: [384, 512, [], \"f638\", \"M192 208c-17.64 0-32 14.36-32 32s14.36 32 32 32 32-14.36 32-32-14.36-32-32-32zm0-128c-17.64 0-32 14.36-32 32s14.36 32 32 32 32-14.36 32-32-14.36-32-32-32zm192 112h-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\"]\n};\nvar faTrafficLightSlow = {\n prefix: 'fas',\n iconName: 'traffic-light-slow',\n icon: [384, 512, [], \"f639\", \"M192 336c-17.64 0-32 14.36-32 32s14.36 32 32 32 32-14.36 32-32-14.36-32-32-32zm192-144h-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 48zm0-80c-17.64 0-32 14.36-32 32s14.36 32 32 32 32-14.36 32-32-14.36-32-32-32z\"]\n};\nvar faTrafficLightStop = {\n prefix: 'fas',\n iconName: 'traffic-light-stop',\n icon: [384, 512, [], \"f63a\", \"M192 336c-17.64 0-32 14.36-32 32s14.36 32 32 32 32-14.36 32-32-14.36-32-32-32zm0-128c-17.64 0-32 14.36-32 32s14.36 32 32 32 32-14.36 32-32-14.36-32-32-32zm192-16h-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\"]\n};\nvar faTrailer = {\n prefix: 'fas',\n iconName: 'trailer',\n icon: [640, 512, [], \"e041\", \"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\"]\n};\nvar faTrain = {\n prefix: 'fas',\n iconName: 'train',\n icon: [448, 512, [], \"f238\", \"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\"]\n};\nvar faTram = {\n prefix: 'fas',\n iconName: 'tram',\n icon: [512, 512, [], \"f7da\", \"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\"]\n};\nvar faTransgender = {\n prefix: 'fas',\n iconName: 'transgender',\n icon: [384, 512, [], \"f224\", \"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\"]\n};\nvar faTransgenderAlt = {\n prefix: 'fas',\n iconName: 'transgender-alt',\n icon: [480, 512, [], \"f225\", \"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\"]\n};\nvar faTransporter = {\n prefix: 'fas',\n iconName: 'transporter',\n icon: [512, 512, [], \"e042\", \"M384.00049,448H327.999V238.7793l31.42272,37.70508a31.99572,31.99572,0,0,0,49.15756-40.96876l-70.39251-84.48437A63.843,63.843,0,0,0,289.01358,128h-66.033A63.7877,63.7877,0,0,0,173.823,151.03125l-70.40813,84.48437a31.99572,31.99572,0,0,0,49.15756,40.96876l31.42272-37.70508V448h-56.0015A31.99951,31.99951,0,0,0,95.9928,480v32H416.00134V480A31.99951,31.99951,0,0,0,384.00049,448Zm-120.00321,0H247.99686V320h16.00042ZM255.958,96l.01953-.00195L255.99707,96a48,48,0,1,0,0-96l-.01953.002L255.958,0a48,48,0,1,0,0,96ZM509.789,44.43164,480.005,32.01172,467.58475,2.22656a3.99471,3.99471,0,0,0-7.15644,0L448.00806,32.01172l-29.784,12.41992a3.99921,3.99921,0,0,0,0,7.1543l29.784,12.41992L460.42831,93.791a3.99628,3.99628,0,0,0,7.15644,0L480.005,64.00586l29.784-12.41992a3.99921,3.99921,0,0,0,0-7.1543ZM63.99194,96,51.57169,66.21484a3.99313,3.99313,0,0,0-7.15449,0L31.997,96,2.211,108.41992a3.99921,3.99921,0,0,0,0,7.1543l29.786,12.41992L44.4172,157.7793a3.9947,3.9947,0,0,0,7.15449,0l12.42025-29.78516,29.786-12.41992a4.00079,4.00079,0,0,0,0-7.1543Z\"]\n};\nvar faTransporter1 = {\n prefix: 'fas',\n iconName: 'transporter-1',\n icon: [512, 512, [], \"e043\", \"M263.99728,416H327.999V384H263.99728ZM152.57243,276.48438l31.42272-37.70508V352h64.00171V320h16.00042v32H327.999V238.7793l31.42272,37.70508a31.99572,31.99572,0,0,0,49.15756-40.96876l-70.39251-84.48437A63.843,63.843,0,0,0,289.01358,128h-66.033A63.7877,63.7877,0,0,0,173.823,151.03125l-70.40813,84.48437a31.99572,31.99572,0,0,0,49.15756,40.96876ZM255.958,96l.01953-.00195L255.99707,96a48,48,0,1,0,0-96l-.01953.002L255.958,0a48,48,0,1,0,0,96ZM183.99515,416h64.00171V384H183.99515ZM509.789,364.41992,480.005,352l-12.42026-29.78516a3.99471,3.99471,0,0,0-7.15644,0L448.00806,352l-29.784,12.41992a3.99921,3.99921,0,0,0,0,7.1543l29.784,12.41992,12.42025,29.78516a3.99628,3.99628,0,0,0,7.15644,0L480.005,383.99414l29.784-12.41992a3.99921,3.99921,0,0,0,0-7.1543ZM63.99194,128.002,51.57169,98.21875a3.99313,3.99313,0,0,0-7.15449,0L31.997,128.002,2.211,140.42188a4.00078,4.00078,0,0,0,0,7.15624l29.786,12.41993,12.42025,29.7832a3.99313,3.99313,0,0,0,7.15449,0l12.42025-29.7832,29.786-12.41993a4.00236,4.00236,0,0,0,0-7.15624ZM384.00049,448H127.99365A31.99951,31.99951,0,0,0,95.9928,480v32H416.00134V480A31.99951,31.99951,0,0,0,384.00049,448Z\"]\n};\nvar faTransporter2 = {\n prefix: 'fas',\n iconName: 'transporter-2',\n icon: [512, 512, [], \"e044\", \"M328.00024,320h-64.002v32h64.002Zm-64.002,96h64.002V384h-64.002ZM255.959,96l.01953-.00195L255.99805,96a48,48,0,1,0,0-96l-.01954.002L255.959,0a48,48,0,1,0,0,96Zm72.04126,160H183.99585v32H328.00024Zm31.42284,20.48438a31.98515,31.98515,0,0,0,45.06387,4.09374A31.45531,31.45531,0,0,0,415.57323,256h-73.221Zm-21.235-125.45313A63.84341,63.84341,0,0,0,289.01468,128H222.98141a63.78806,63.78806,0,0,0-49.15775,23.03125L113.01321,224H398.98679ZM384.002,448H127.99414a31.99957,31.99957,0,0,0-32.001,32v32H416.00293V480A31.99957,31.99957,0,0,0,384.002,448ZM247.9978,320h-64.002v32h64.002ZM152.573,276.48438,169.64385,256h-73.221a31.45534,31.45534,0,0,0,11.08628,24.57812A32.00632,32.00632,0,0,0,152.573,276.48438ZM183.99585,416h64.002V384h-64.002ZM509.791,140.416l-29.78607-12.41993-12.4203-29.7832a3.99315,3.99315,0,0,0-7.15451,0l-12.4203,29.7832L418.2237,140.416a4.00079,4.00079,0,0,0,0,7.15625l29.78607,12.41992,12.4203,29.7832a3.99315,3.99315,0,0,0,7.15451,0l12.4203-29.7832L509.791,147.57227a4.00237,4.00237,0,0,0,0-7.15625ZM63.99023,32.002,51.56993,2.21875a3.99315,3.99315,0,0,0-7.15451,0L31.99512,32.002,2.20905,44.42188a4.00078,4.00078,0,0,0,0,7.15429L31.99512,63.99609l12.4203,29.78516a3.99315,3.99315,0,0,0,7.15451,0l12.4203-29.78516L93.7763,51.57617a3.99921,3.99921,0,0,0,0-7.15429Z\"]\n};\nvar faTransporter3 = {\n prefix: 'fas',\n iconName: 'transporter-3',\n icon: [512, 512, [], \"e045\", \"M372.32386,192H139.68l-26.66683,32H398.98679ZM263.99829,416h64.002V384h-64.002Zm64.002-96h-64.002v32h64.002Zm31.42284-43.51562a31.98515,31.98515,0,0,0,45.06387,4.09374A31.45531,31.45531,0,0,0,415.57323,256h-73.221ZM255.99805,0l-.01954.002L255.959,0a47.95186,47.95186,0,0,0-45.0502,32h90.13947A47.95186,47.95186,0,0,0,255.99805,0ZM255.959,96l.01953-.00195L255.99805,96a47.87741,47.87741,0,0,0,45.06-32H210.899A47.87741,47.87741,0,0,0,255.959,96Zm82.22908,55.03125A63.84341,63.84341,0,0,0,289.01468,128H222.98141a63.78806,63.78806,0,0,0-49.15775,23.03125L166.34883,160H345.66094ZM247.9978,320h-64.002v32h64.002ZM152.573,276.48438,169.64385,256h-73.221a31.45534,31.45534,0,0,0,11.08628,24.57812A32.00632,32.00632,0,0,0,152.573,276.48438ZM384.002,448H127.99414a31.99957,31.99957,0,0,0-32.001,32v32H416.00293V480A31.99957,31.99957,0,0,0,384.002,448ZM328.00024,256H183.99585v32H328.00024ZM183.99585,416h64.002V384h-64.002ZM509.791,44.43164,480.00488,32.01172,467.58458,2.22656a3.99315,3.99315,0,0,0-7.15451,0l-12.4203,29.78516L418.2237,44.43164a3.99921,3.99921,0,0,0,0,7.1543l29.78607,12.41992L460.43007,93.791a3.99472,3.99472,0,0,0,7.15451,0l12.4203-29.78516L509.791,51.58594a4.00079,4.00079,0,0,0,0-7.1543ZM63.99023,352.00391,51.56993,322.2207a3.99315,3.99315,0,0,0-7.15451,0l-12.4203,29.78321L2.20905,364.42383a4.00237,4.00237,0,0,0,0,7.15625L31.99512,384l12.4203,29.7832a3.99315,3.99315,0,0,0,7.15451,0L63.99023,384,93.7763,371.58008a4.00079,4.00079,0,0,0,0-7.15625Z\"]\n};\nvar faTransporterEmpty = {\n prefix: 'fas',\n iconName: 'transporter-empty',\n icon: [512, 512, [], \"e046\", \"M384.002,447.99976H127.99414a31.99963,31.99963,0,0,0-32.001,32.00012V512H416.00293V479.99988A31.99963,31.99963,0,0,0,384.002,447.99976ZM509.791,268.419l-29.78607-12.42-12.4203-29.78527a3.99315,3.99315,0,0,0-7.15451,0L448.00977,255.999l-29.78607,12.42a3.99924,3.99924,0,0,0,0,7.15433l29.78607,12.42,12.4203,29.78527a3.99471,3.99471,0,0,0,7.15451,0l12.4203-29.78527,29.78607-12.42a4.00082,4.00082,0,0,0,0-7.15433ZM63.99023,32.00208,51.56993,2.21876a3.99314,3.99314,0,0,0-7.15451,0L31.99512,32.00208,2.20905,44.422a4.0024,4.0024,0,0,0,0,7.15628l29.78607,12.42,12.4203,29.78332a3.99314,3.99314,0,0,0,7.15451,0l12.4203-29.78332,29.78607-12.42a4.00082,4.00082,0,0,0,0-7.15628Z\"]\n};\nvar faTrash = {\n prefix: 'fas',\n iconName: 'trash',\n icon: [448, 512, [], \"f1f8\", \"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\"]\n};\nvar faTrashAlt = {\n prefix: 'fas',\n iconName: 'trash-alt',\n icon: [448, 512, [], \"f2ed\", \"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\"]\n};\nvar faTrashRestore = {\n prefix: 'fas',\n iconName: 'trash-restore',\n icon: [448, 512, [], \"f829\", \"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\"]\n};\nvar faTrashRestoreAlt = {\n prefix: 'fas',\n iconName: 'trash-restore-alt',\n icon: [448, 512, [], \"f82a\", \"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\"]\n};\nvar faTrashUndo = {\n prefix: 'fas',\n iconName: 'trash-undo',\n icon: [448, 512, [], \"f895\", \"M53.2 467a48 48 0 0 0 47.9 45h245.8a48 48 0 0 0 47.9-45L416 128H32zm47.18-189.47l84-81.59c8.84-8.59 23.61-2.24 23.61 10.47v41.67c82.47.8 144 18.36 144 103.92 0 34.29-20.14 68.26-42.41 86-6.95 5.54-16.85-1.41-14.29-10.4 23.08-80.93-6.55-101.74-87.3-102.72v44.69c0 12.69-14.76 19.07-23.61 10.47l-84-81.59a14.7 14.7 0 0 1 0-20.92zM432 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\"]\n};\nvar faTrashUndoAlt = {\n prefix: 'fas',\n iconName: 'trash-undo-alt',\n icon: [448, 512, [], \"f896\", \"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-16zM32 464a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V128H32zm68.38-186.47l84-81.59c8.84-8.59 23.61-2.24 23.61 10.47v41.67c82.47.8 144 18.36 144 103.92 0 34.29-20.14 68.26-42.41 86-6.95 5.54-16.85-1.41-14.29-10.4 23.08-80.93-6.55-101.74-87.3-102.72v44.69c0 12.69-14.76 19.07-23.61 10.47l-84-81.59a14.7 14.7 0 0 1 0-20.92z\"]\n};\nvar faTreasureChest = {\n prefix: 'fas',\n iconName: 'treasure-chest',\n icon: [576, 512, [], \"f723\", \"M0 448c0 17.67 14.33 32 32 32h64V288H0v160zm0-320v128h96V32C42.98 32 0 74.98 0 128zm352 208c0 8.84-7.16 16-16 16h-96c-8.84 0-16-7.16-16-16v-48h-96v192h320V288h-96v48zm128 144h64c17.67 0 32-14.33 32-32V288h-96v192zM128 256h96v-48c0-8.84 7.16-16 16-16h96c8.84 0 16 7.16 16 16v48h96V32H128v224zM480 32v224h96V128c0-53.02-42.98-96-96-96zM304 304v-64c0-8.84-7.16-16-16-16s-16 7.16-16 16v64c0 8.84 7.16 16 16 16s16-7.16 16-16z\"]\n};\nvar faTree = {\n prefix: 'fas',\n iconName: 'tree',\n icon: [384, 512, [], \"f1bb\", \"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\"]\n};\nvar faTreeAlt = {\n prefix: 'fas',\n iconName: 'tree-alt',\n icon: [512, 512, [], \"f400\", \"M496 235c-10.67-16-25-27.67-43-35h1c8.67-16 11.83-32.5 9.5-49.5s-9.17-31.67-20.5-44S417.83 86 401.5 82s-32.83-2.33-49.5 5c-2.67-24.67-13.17-45.33-31.5-62S280.67 0 256 0s-46.17 8.33-64.5 25-28.83 37.33-31.5 62c-16.67-7.33-33.17-9-49.5-5S80.33 94.17 69 106.5s-18.17 27-20.5 44S49.67 184 59 200c-18 7.33-32.33 19-43 35S0 268.67 0 288c0 26.67 9.33 49.33 28 68s41.33 28 68 28h128v56.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.16L288 440.45V384h128c26.67 0 49.33-9.33 68-28s28-41.33 28-68c0-19.33-5.33-37-16-53z\"]\n};\nvar faTreeChristmas = {\n prefix: 'fas',\n iconName: 'tree-christmas',\n icon: [448, 512, [], \"f7db\", \"M224 160l26.7-53.3L304 80l-53.3-26.7L224 0l-26.7 53.3L144 80l53.3 26.7L224 160zm215.6 295.6L349.8 352h36c25.6 0 39.5-26.3 23.2-43.5L262.8 154 224 208l-38.8-54L39 308.5C22.7 325.7 36.6 352 62.2 352h36L8.4 455.6c-19 21.9-3.8 56.4 24.7 56.4h381.7c28.6 0 43.7-34.6 24.8-56.4zM160 312c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm128 128c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24z\"]\n};\nvar faTreeDecorated = {\n prefix: 'fas',\n iconName: 'tree-decorated',\n icon: [448, 512, [], \"f7dc\", \"M439.6 455.6L349.8 352h36c25.6 0 39.5-29.2 23.2-48.5L314.1 192h44.8c21.3 0 32.9-22.5 19.3-37.3L243.3 8.2c-10-10.9-28.6-10.9-38.6 0L69.9 154.7c-13.6 14.8-2 37.3 19.3 37.3H134L39 303.5C22.7 322.8 36.6 352 62.2 352h36L8.4 455.6c-19 21.9-3.8 56.4 24.7 56.4h381.7c28.6 0 43.7-34.6 24.8-56.4zM160 312c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm72-152c0-13.3 10.7-24 24-24s24 10.7 24 24-10.7 24-24 24-24-10.7-24-24zm56 280c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24z\"]\n};\nvar faTreeLarge = {\n prefix: 'fas',\n iconName: 'tree-large',\n icon: [448, 512, [], \"f7dd\", \"M439.6 455.6L349.8 352h36c25.6 0 39.5-29.2 23.2-48.5L314.1 192h44.8c21.3 0 32.9-22.5 19.3-37.3L243.3 8.2c-10-10.9-28.6-10.9-38.6 0L69.9 154.7c-13.6 14.8-2 37.3 19.3 37.3H134L39 303.5C22.7 322.8 36.6 352 62.2 352h36L8.4 455.6c-19 21.9-3.8 56.4 24.7 56.4h381.7c28.6 0 43.7-34.6 24.8-56.4z\"]\n};\nvar faTreePalm = {\n prefix: 'fas',\n iconName: 'tree-palm',\n icon: [640, 512, [], \"f82b\", \"M448.76 64c-39.43 0-75.06 11.74-103 30.5C327.14 40.17 265.37 0 191.24 0c-80.62 0-147.37 47.24-159 108.86C30.39 118.79 38.75 128 50 128h54l24-48 33.46 66.92c-3.53 3.07-7.28 5.69-10.66 9.07C93.8 213 80 293.6 115.37 345.38c5.7 8.34 18.12 8.94 26.07 1l146.13-146.14c10.72 104.75-11.42 215-25.85 272.15C256.64 492.52 272 512 292.8 512h55.13c15.75 0 29.67-11.37 31.71-27 14.79-113.47-11.57-236.34-26.41-293H488l24-48 24 48h54c11.25 0 19.61-9.21 17.74-19.14C596.13 111.24 529.38 64 448.76 64z\"]\n};\nvar faTrees = {\n prefix: 'fas',\n iconName: 'trees',\n icon: [640, 512, [], \"f724\", \"M298.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.39 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.87c9.01 0 17.26-5.2 21.01-13.25 3.8-8.17 2.44-17.47-3.56-24.26L298.42 288zm335.89 90.49L554.42 288h30.63c9.01 0 16.98-5 20.78-13.06 3.8-8.04 2.55-17.26-3.28-24.05L524.42 160h28.89c9.1 0 17.3-5.35 20.86-13.61 3.52-8.13 1.86-17.59-4.24-24.08L459.66 4.83c-6.03-6.45-17.28-6.45-23.32 0l-95.06 101.26c11.09 15.37 13.97 35.3 6.34 52.96-4 9.27-10.38 17.03-18.26 22.68l41.54 48.32c13.93 16.25 17.04 39.23 7.94 58.52-4.19 8.89-10.46 16.24-18.11 21.58l41.62 47.15c8.65 9.8 13.34 14.15 13.65 26.69v56.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.16L480 440.45V416h136.87c9.01 0 17.26-5.2 21.01-13.25 3.79-8.17 2.43-17.47-3.57-24.26z\"]\n};\nvar faTriangle = {\n prefix: 'fas',\n iconName: 'triangle',\n icon: [576, 512, [], \"f2ec\", \"M329.6 24c-18.4-32-64.7-32-83.2 0L6.5 440c-18.4 31.9 4.6 72 41.6 72H528c36.9 0 60-40 41.6-72l-240-416z\"]\n};\nvar faTriangleMusic = {\n prefix: 'fas',\n iconName: 'triangle-music',\n icon: [512, 512, [], \"f8e2\", \"M497.81 368.09l-80.48-130.24-46.49 46.5 72.55 117.4a29 29 0 0 1 .69 30A31.73 31.73 0 0 1 415.87 448H96.13a31.73 31.73 0 0 1-28.21-16.23 29 29 0 0 1 .69-30l159.87-258.7c8.4-13.6 22.05-15.07 27.52-15.07s19.12 1.47 27.52 15.05l44.11 71.37-53 53a56.85 56.85 0 1 0 33.92 33.94l198.7-198.74a16 16 0 0 0 0-22.62l-11.31-11.31a16 16 0 0 0-22.62 0l-99.21 99.23L338 109.39c-11.72-19-29.55-32.22-50-39.34V16a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v54.05c-20.41 7.12-38.24 20.37-50 39.34L14.19 368.09A92.48 92.48 0 0 0 12 462.92 96.17 96.17 0 0 0 96.13 512h319.74A96.17 96.17 0 0 0 500 462.92a92.48 92.48 0 0 0-2.19-94.83z\"]\n};\nvar faTrophy = {\n prefix: 'fas',\n iconName: 'trophy',\n icon: [576, 512, [], \"f091\", \"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\"]\n};\nvar faTrophyAlt = {\n prefix: 'fas',\n iconName: 'trophy-alt',\n icon: [576, 512, [], \"f2eb\", \"M552 64H448V24c0-13.3-10.7-24-24-24H152c-13.3 0-24 10.7-24 24v40H24C10.7 64 0 74.7 0 88v56c0 66.5 77.9 131.7 171.9 142.4C203.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.6C498.4 275.6 576 210.3 576 144V88c0-13.3-10.7-24-24-24zM64 144v-16h64.2c1 32.6 5.8 61.2 12.8 86.2-47.5-16.4-77-49.9-77-70.2zm448 0c0 20.2-29.4 53.8-77 70.2 7-25 11.8-53.6 12.8-86.2H512v16zm-127.3 4.7l-39.6 38.6 9.4 54.6c1.7 9.8-8.7 17.2-17.4 12.6l-49-25.8-49 25.8c-8.8 4.6-19.1-2.9-17.4-12.6l9.4-54.6-39.6-38.6c-7.1-6.9-3.2-19 6.7-20.5l54.8-8 24.5-49.6c4.4-8.9 17.1-8.9 21.5 0l24.5 49.6 54.8 8c9.6 1.5 13.5 13.6 6.4 20.5z\"]\n};\nvar faTruck = {\n prefix: 'fas',\n iconName: 'truck',\n icon: [640, 512, [], \"f0d1\", \"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\"]\n};\nvar faTruckContainer = {\n prefix: 'fas',\n iconName: 'truck-container',\n icon: [640, 512, [], \"f4dc\", \"M621.3 237.3l-58.5-58.5c-12-12-28.3-18.7-45.3-18.7H464c-17.7 0-32 14.3-32 32v144H32c-17.7 0-32 14.3-32 32v27.8c0 40.8 28.7 78.1 69.1 83.5 30.7 4.1 58.3-9.5 74.9-31.7 18.4 24.7 50.4 38.7 85.3 29.7 25.2-6.5 46.1-26.2 54.4-50.8 4.9-14.8 5.4-29.2 2.8-42.4h163.2c-2.7 13.2-2.2 27.6 2.8 42.4 8.4 25.1 29.9 44.9 55.6 51.1 52.8 12.8 100-26.9 100-77.6 0-5.5-.6-10.8-1.6-16H624c8.8 0 16-7.2 16-16v-85.5c0-17.1-6.7-33.3-18.7-45.3zM80 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 32zm320 0c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm-48-176v-48h37.5c4.2 0 8.3 1.7 11.3 4.7l43.3 43.3H480zM32 304h336c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64v208c0 17.7 14.3 32 32 32zM304 80h32v176h-32V80zm-80 0h32v176h-32V80zm-80 0h32v176h-32V80zm-80 0h32v176H64V80z\"]\n};\nvar faTruckCouch = {\n prefix: 'fas',\n iconName: 'truck-couch',\n icon: [640, 512, [], \"f4dd\", \"M24.1 400L320 320.7v-122c-8.3-4-18-5.6-27.6-3.1-21.3 5.7-34 27.7-28.3 49l6.2 23.2-185.4 49.7-6.2-23.2C73 273 51 260.3 29.7 266c-21.3 5.7-34 27.7-28.3 49l22.7 85zm-2.7-164.9c39.6-10.6 73.7 13.4 85.5 43.4L232 245c-5.4-35.7 16.5-70.7 52.2-80.2 2.6-.7 5.3-.7 8-1.1-9.9-36.9-45.9-55.1-78.7-46.3L58.9 158.8c-32.8 8.8-54.8 42.6-45.1 79.1 2.5-1 5-2.1 7.6-2.8zM384 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\"]\n};\nvar faTruckLoading = {\n prefix: 'fas',\n iconName: 'truck-loading',\n icon: [640, 512, [], \"f4de\", \"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\"]\n};\nvar faTruckMonster = {\n prefix: 'fas',\n iconName: 'truck-monster',\n icon: [640, 512, [], \"f63b\", \"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\"]\n};\nvar faTruckMoving = {\n prefix: 'fas',\n iconName: 'truck-moving',\n icon: [640, 512, [], \"f4df\", \"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\"]\n};\nvar faTruckPickup = {\n prefix: 'fas',\n iconName: 'truck-pickup',\n icon: [640, 512, [], \"f63c\", \"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\"]\n};\nvar faTruckPlow = {\n prefix: 'fas',\n iconName: 'truck-plow',\n icon: [640, 512, [], \"f7de\", \"M598.6 393.4c-14.5-14.5-22.6-34.1-22.6-54.6V237.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-32v-64c0-17.7-14.3-32-32-32h-45.9l-82-136.7C311.5 40.9 295.7 32 278.9 32H168c-22.1 0-40 17.9-40 40v120H32c-17.7 0-32 14.3-32 32v96c0 17.7 14.3 32 32 32h5.9c-3.6 10.1-5.9 20.7-5.9 32 0 53 43 96 96 96s96-43 96-96c0-11.3-2.3-21.9-5.9-32h75.8c-3.6 10.1-5.9 20.7-5.9 32 0 53 43 96 96 96s96-43 96-96c0-11.3-2.3-21.9-5.9-32h39.2c3.1 32.6 16.7 63.3 40.1 86.6l36.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 96h77.9l57.6 96H192V96zm-32 288c0 17.6-14.4 32-32 32s-32-14.4-32-32 14.4-32 32-32 32 14.4 32 32zm224 32c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32z\"]\n};\nvar faTruckRamp = {\n prefix: 'fas',\n iconName: 'truck-ramp',\n icon: [640, 512, [], \"f4e0\", \"M384 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\"]\n};\nvar faTrumpet = {\n prefix: 'fas',\n iconName: 'trumpet',\n icon: [640, 512, [], \"f8e3\", \"M624 64a16.27 16.27 0 0 0-13 6.67 555.44 555.44 0 0 1-66.19 71.68c-15.38 13-32.93 25.66-52.54 36-5.55 2.94-25.75 13.6-60 13.63H400V160a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v32h-40v-32a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v32h-40v-32a16 16 0 0 0-16-16h-16a16 16 0 0 0-16 16v32H48a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v64a16 16 0 0 0 16 16h16a16 16 0 0 0 16-16h33.81C70.78 274.9 64 296.58 64 320a128.14 128.14 0 0 0 128 128h224a96.1 96.1 0 0 0 96-96v-31.43a251.78 251.78 0 0 0-34.67-22.65c-8.63-4.55-18.76-7-29.33-8.41V352a32 32 0 0 1-32 32h-16V256h32c34.48 0 54.66 10.66 60.27 13.62a294.39 294.39 0 0 1 49.17 33.28c39.49 34.65 69.09 73.78 69.25 74A16 16 0 0 0 624 384c12.09 0 16-10.94 16-16V80c0-12-10.81-16-16-16zM176 381.73a63.69 63.69 0 0 1 0-123.46zm88 2.27h-40V256h40zm88 0h-40V256h40z\"]\n};\nvar faTshirt = {\n prefix: 'fas',\n iconName: 'tshirt',\n icon: [640, 512, [], \"f553\", \"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\"]\n};\nvar faTty = {\n prefix: 'fas',\n iconName: 'tty',\n icon: [512, 512, [], \"f1e4\", \"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\"]\n};\nvar faTurkey = {\n prefix: 'fas',\n iconName: 'turkey',\n icon: [640, 512, [], \"f725\", \"M596.39 83.63A52.25 52.25 0 0 0 572.46 85a51.78 51.78 0 0 0 10.25-36.3c-2-20.79-16.24-39.48-36.09-46a53.11 53.11 0 0 0-69 41.13 52.26 52.26 0 0 0 .43 20.88c3.53 15.67-1.36 32-14.57 41.19-15.48 10.73-24.23 17.61-48.07 28C377 110.67 333.83 96 288 96 128.94 96 0 269.13 0 384s128.94 128 288 128 288-13.12 288-128c0-50-24.54-110.94-65.24-163.91a193.68 193.68 0 0 0-61 90.2c-19.05 58.14-68.12 99.33-125 104.93q-8 .78-15.7.78c-49.36 0-93.81-23-121.94-63a148 148 0 0 1-23.87-55.58 8 8 0 0 1 7.94-9.42h16.43a8 8 0 0 1 7.71 6.28C207.22 344.46 251.64 384 309.05 384q6.19 0 12.56-.62c45.84-4.51 83.33-39.06 97.74-83.05 20.72-63.26 63.07-101.22 90.64-120.41 14.76-10.27 33.47-8.35 48.61 1.35a52.93 52.93 0 0 0 30.26 8.26c20.9-.57 40.12-14.38 47.52-33.94 12.22-32.3-7.86-66.09-39.99-71.96z\"]\n};\nvar faTurntable = {\n prefix: 'fas',\n iconName: 'turntable',\n icon: [576, 512, [], \"f8e4\", \"M224 224a32 32 0 1 0 32 32 32 32 0 0 0-32-32zM512 32H64A64 64 0 0 0 0 96v320a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64V96a64 64 0 0 0-64-64zM224 416a160 160 0 1 1 160-160 160 160 0 0 1-160 160zm288-148.18a64 64 0 0 1-6.76 28.63l-18.93 37.86a16 16 0 0 1 7.16 21.46l-25.69 51.38a16 16 0 0 1-21.47 7.16L417.69 400a16 16 0 0 1-7.16-21.46l25.69-51.38a16 16 0 0 1 21.47-7.16l18.93-37.87a32 32 0 0 0 3.38-14.32V104a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8z\"]\n};\nvar faTurtle = {\n prefix: 'fas',\n iconName: 'turtle',\n icon: [576, 512, [], \"f726\", \"M68.25 256h279.51c23.54 0 40.97-19.8 35.1-40.04C362.84 146.97 292.33 64 208.41 64h-.82c-83.91 0-154.43 82.97-174.44 151.96C27.27 236.2 44.71 256 68.25 256zm484.03-118.75l-48.65-34.75c-35.17-17.42-80.49 1.57-86.81 40.31-.54 3.32-.82 6.72-.82 10.19v71.22c-.03 13.88-4.6 27.18-13.27 38.44-12.42 16.11-31.25 25.34-51.68 25.34H18.6C8.33 288 0 296.33 0 306.6c0 8 5.12 15.11 12.71 17.64l98.29 22.1L66.17 424c-6.16 10.67 1.54 24 13.86 24h36.95c5.71 0 11-3.05 13.86-8l40.3-69.8c25.99 8.52 45.55 13.8 84.87 13.8s58.89-5.28 84.87-13.8l40.3 69.8c2.86 4.95 8.14 8 13.86 8h36.95c12.32 0 20.01-13.33 13.86-24l-47.21-81.76c21.25-8.42 40.36-21.78 54.81-40.53 14.08-18.28 22.47-39.4 25.29-61.7h40.62c31.29 0 56.65-25.36 56.65-56.65a56.7 56.7 0 0 0-23.73-46.11zM480 176c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faTv = {\n prefix: 'fas',\n iconName: 'tv',\n icon: [640, 512, [], \"f26c\", \"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\"]\n};\nvar faTvAlt = {\n prefix: 'fas',\n iconName: 'tv-alt',\n icon: [640, 512, [], \"f8e5\", \"M520 448H120a24 24 0 0 0-24 24v16a24 24 0 0 0 24 24h400a24 24 0 0 0 24-24v-16a24 24 0 0 0-24-24zM592 0H48A48 48 0 0 0 0 48v320a48 48 0 0 0 48 48h544a48 48 0 0 0 48-48V48a48 48 0 0 0-48-48zm-16 352H64V64h512z\"]\n};\nvar faTvMusic = {\n prefix: 'fas',\n iconName: 'tv-music',\n icon: [640, 512, [], \"f8e6\", \"M512 448H128a32 32 0 0 0 0 64h384a32 32 0 0 0 0-64zM240 320c26.5 0 48-14.33 48-32v-84.84l96-37.52V226a69.89 69.89 0 0 0-16-2c-26.5 0-48 14.33-48 32s21.5 32 48 32 48-14.33 48-32V112a16 16 0 0 0-20.81-15.25l-128 47.25A16 16 0 0 0 256 159.25V258a69.89 69.89 0 0 0-16-2c-26.5 0-48 14.33-48 32s21.5 32 48 32zM592 0H48A48 48 0 0 0 0 48v320a48 48 0 0 0 48 48h544a48 48 0 0 0 48-48V48a48 48 0 0 0-48-48zm-16 352H64V64h512z\"]\n};\nvar faTvRetro = {\n prefix: 'fas',\n iconName: 'tv-retro',\n icon: [512, 512, [], \"f401\", \"M464 96H338.8l35.7-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 94.2 182.8 9.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L173.2 96H48c-26.5 0-48 21.5-48 48v288c0 26.5 21.5 48 48 48h16v32h48l21.3-32h245.3l21.3 32h48v-32h16c26.5 0 48-21.5 48-48V144c.1-26.5-21.4-48-47.9-48zm-72 312s0 8-168 8c-152 0-152-8-152-8s-8 0-8-120 8-120 8-120 0-8 152-8c168 0 168 8 168 8s8 0 8 120-8 120-8 120zm72-100c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v8zm0-64c0 6.6-5.4 12-12 12h-8c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h8c6.6 0 12 5.4 12 12v8z\"]\n};\nvar faTypewriter = {\n prefix: 'fas',\n iconName: 'typewriter',\n icon: [512, 512, [], \"f8e7\", \"M480 192h-32V77.26a32 32 0 0 0-9.38-22.64L393.38 9.38A32 32 0 0 0 370.73 0H96a32 32 0 0 0-32 32v160H32a32 32 0 0 0-32 32v32a32 32 0 0 0 32 32v160a64 64 0 0 0 64 64h320a64 64 0 0 0 64-64V288a32 32 0 0 0 32-32v-32a32 32 0 0 0-32-32zM128 64h192v48a16 16 0 0 0 16 16h48v64h-18.75a32 32 0 0 0-22.62 9.37l-13.26 13.26a32 32 0 0 1-22.62 9.37h-101.5a32 32 0 0 1-22.62-9.37l-13.26-13.26a32 32 0 0 0-22.62-9.37H128zm240 232v16a8 8 0 0 1-8 8h-16a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8zm-64 64a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8h-16a8 8 0 0 1-8-8zm-8-40h-16a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8zm-56 40a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8h-16a8 8 0 0 1-8-8zm-8-40h-16a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8zm-56 40a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8h-16a8 8 0 0 1-8-8zm-8-40h-16a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8zm-64 0H88a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8zm32 64h-16a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8v16a8 8 0 0 1-8 8zm232 56a8 8 0 0 1-8 8H152a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h208a8 8 0 0 1 8 8zm32-64a8 8 0 0 1-8 8h-16a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8zm32-64a8 8 0 0 1-8 8h-16a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h16a8 8 0 0 1 8 8z\"]\n};\nvar faUfo = {\n prefix: 'fas',\n iconName: 'ufo',\n icon: [640, 512, [], \"e047\", \"M494.73633,212.84375C481.5332,128.67773,408.32031,64,320,64S158.4668,128.67773,145.26367,212.84375C57.86328,235.69336,0,275.11719,0,320c0,70.69141,143.26953,128,320,128s320-57.30859,320-128C640,275.11719,582.13672,235.69336,494.73633,212.84375ZM128,360a24,24,0,1,1,24-24A24.00118,24.00118,0,0,1,128,360Zm192,32a24,24,0,1,1,24-24A24.00118,24.00118,0,0,1,320,392ZM447.36133,256.78125a275.4037,275.4037,0,0,1-254.72266,0c-.74023-5.54687-1.70508-11.0332-1.70508-16.78125,0-70.69336,57.78321-128,129.06641-128s129.06641,57.30664,129.06641,128C449.06641,245.74805,448.10156,251.23438,447.36133,256.78125ZM512,360a24,24,0,1,1,24-24A24.00118,24.00118,0,0,1,512,360Z\"]\n};\nvar faUfoBeam = {\n prefix: 'fas',\n iconName: 'ufo-beam',\n icon: [640, 512, [], \"e048\", \"M33.69355,481.68452A15.99666,15.99666,0,0,0,40.8477,503.1494l14.31611,7.15822a16.00213,16.00213,0,0,0,21.46635-7.15431L158.316,339.77409a15.87807,15.87807,0,0,0,1.57028-5.79493,454.17592,454.17592,0,0,1-45.60452-13.47659Zm492.02691-161.178A454.88192,454.88192,0,0,1,480.114,333.98111a15.86859,15.86859,0,0,0,1.57028,5.793l81.68581,163.37922a16.00157,16.00157,0,0,0,21.46635,7.15431l14.31611-7.15822a15.99835,15.99835,0,0,0,7.15415-21.46488ZM608,208.0004c0-40.89266-56.534-76.56069-140.68263-96.11151C449.22009,47.57626,390.38147,0,320.006,0S190.79185,47.57626,172.69457,111.88889C88.54593,131.43971,32.01194,167.10774,32.01194,208.0004c0,61.85559,128.93874,112.00022,287.994,112.00022S608,269.856,608,208.0004Zm-479.99,24a24.00005,24.00005,0,1,1,23.9995-24A24.001,24.001,0,0,1,128.01,232.00045Zm191.996,48.00009a24,24,0,1,1,23.9995-24A24.001,24.001,0,0,1,320.006,280.00054ZM424.20889,166.45735a224.72853,224.72853,0,0,1-104.20292,25.543,224.72856,224.72856,0,0,1-104.20292-25.543,102.694,102.694,0,0,1-1.3945-13.73049c0-57.84,47.27636-104.72677,105.59742-104.72677S425.60339,94.8869,425.60339,152.72686A102.694,102.694,0,0,1,424.20889,166.45735Zm87.7931,65.5431a24.00005,24.00005,0,1,1,23.9995-24A24.001,24.001,0,0,1,512.002,232.00045Z\"]\n};\nvar faUmbrella = {\n prefix: 'fas',\n iconName: 'umbrella',\n icon: [576, 512, [], \"f0e9\", \"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\"]\n};\nvar faUmbrellaBeach = {\n prefix: 'fas',\n iconName: 'umbrella-beach',\n icon: [640, 512, [], \"f5ca\", \"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\"]\n};\nvar faUnderline = {\n prefix: 'fas',\n iconName: 'underline',\n icon: [448, 512, [], \"f0cd\", \"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\"]\n};\nvar faUndo = {\n prefix: 'fas',\n iconName: 'undo',\n icon: [512, 512, [], \"f0e2\", \"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\"]\n};\nvar faUndoAlt = {\n prefix: 'fas',\n iconName: 'undo-alt',\n icon: [512, 512, [], \"f2ea\", \"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\"]\n};\nvar faUnicorn = {\n prefix: 'fas',\n iconName: 'unicorn',\n icon: [640, 512, [], \"f727\", \"M631.98 32H531.73c5.93-6.14 10.4-13.63 12.18-22.36 1.01-4.96-2.88-9.64-7.94-9.64H416c-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.59 102.04 22.33V496c0 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.74L544 83.3l92.42-36.65c6.59-4.38 3.48-14.65-4.44-14.65zM480 96c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"]\n};\nvar faUnion = {\n prefix: 'fas',\n iconName: 'union',\n icon: [384, 512, [], \"f6a2\", \"M384 48c0-8.84-7.16-16-16-16h-64c-8.84 0-16 7.16-16 16v240c0 59.2-53.85 106.04-115.13 94.14-45.58-8.85-76.87-51.5-76.87-97.93V48c0-8.84-7.16-16-16-16H16C7.16 32 0 39.16 0 48v240c0 114.18 100.17 205.4 217.26 190.38C314.04 465.96 384 378.89 384 281.32V48z\"]\n};\nvar faUniversalAccess = {\n prefix: 'fas',\n iconName: 'universal-access',\n icon: [512, 512, [], \"f29a\", \"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\"]\n};\nvar faUniversity = {\n prefix: 'fas',\n iconName: 'university',\n icon: [512, 512, [], \"f19c\", \"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\"]\n};\nvar faUnlink = {\n prefix: 'fas',\n iconName: 'unlink',\n icon: [512, 512, [], \"f127\", \"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\"]\n};\nvar faUnlock = {\n prefix: 'fas',\n iconName: 'unlock',\n icon: [448, 512, [], \"f09c\", \"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\"]\n};\nvar faUnlockAlt = {\n prefix: 'fas',\n iconName: 'unlock-alt',\n icon: [448, 512, [], \"f13e\", \"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\"]\n};\nvar faUpload = {\n prefix: 'fas',\n iconName: 'upload',\n icon: [512, 512, [], \"f093\", \"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\"]\n};\nvar faUsbDrive = {\n prefix: 'fas',\n iconName: 'usb-drive',\n icon: [640, 512, [], \"f8e9\", \"M624 128H480v256h144a16 16 0 0 0 16-16V144a16 16 0 0 0-16-16zm-40 184a16 16 0 0 1-16 16h-16a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h16a16 16 0 0 1 16 16zm0-96a16 16 0 0 1-16 16h-16a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h16a16 16 0 0 1 16 16zM432 96H64a64 64 0 0 0-64 64v192a64 64 0 0 0 64 64h368a16 16 0 0 0 16-16V112a16 16 0 0 0-16-16z\"]\n};\nvar faUsdCircle = {\n prefix: 'fas',\n iconName: 'usd-circle',\n icon: [496, 512, [], \"f2e8\", \"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm24 376v16c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16.2c-16.5-.6-32.6-5.8-46.4-15.1-8.7-5.9-10-18.1-2.3-25.2l12-11.3c5.4-5.1 13.3-5.4 19.7-1.6 6.1 3.6 12.9 5.4 19.9 5.4h45c11.3 0 20.5-10.5 20.5-23.4 0-10.6-6.3-19.9-15.2-22.7L205 268c-29-8.8-49.2-37-49.2-68.6 0-39.3 30.6-71.3 68.2-71.4v-16c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16.2c16.5.6 32.6 5.8 46.4 15.1 8.7 5.9 10 18.1 2.3 25.2l-12 11.3c-5.4 5.1-13.3 5.4-19.7 1.6-6.1-3.6-12.9-5.4-19.9-5.4h-45c-11.3 0-20.5 10.5-20.5 23.4 0 10.6 6.3 19.9 15.2 22.7l72 21.9c29 8.8 49.2 37 49.2 68.6.2 39.3-30.4 71.2-68 71.4z\"]\n};\nvar faUsdSquare = {\n prefix: 'fas',\n iconName: 'usd-square',\n icon: [448, 512, [], \"f2e9\", \"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-48zM248 384v16c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16.2c-16.5-.6-32.6-5.8-46.4-15.1-8.7-5.9-10-18.1-2.3-25.2l12-11.3c5.4-5.1 13.3-5.4 19.7-1.6 6.1 3.6 12.9 5.4 19.9 5.4h45c11.3 0 20.5-10.5 20.5-23.4 0-10.6-6.3-19.9-15.2-22.7L181 268c-29-8.8-49.2-37-49.2-68.6 0-39.3 30.6-71.3 68.2-71.4v-16c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16.2c16.5.6 32.6 5.8 46.4 15.1 8.7 5.9 10 18.1 2.3 25.2l-12 11.3c-5.4 5.1-13.3 5.4-19.7 1.6-6.1-3.6-12.9-5.4-19.9-5.4h-45c-11.3 0-20.5 10.5-20.5 23.4 0 10.6 6.3 19.9 15.2 22.7l72 21.9c29 8.8 49.2 37 49.2 68.6.2 39.3-30.4 71.2-68 71.4z\"]\n};\nvar faUser = {\n prefix: 'fas',\n iconName: 'user',\n icon: [448, 512, [], \"f007\", \"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\"]\n};\nvar faUserAlien = {\n prefix: 'fas',\n iconName: 'user-alien',\n icon: [448, 512, [], \"e04a\", \"M352,384H317.61523c-19.65039,17.98828-39.01953,33.541-55.49023,45.84766a63.66049,63.66049,0,0,1-76.25.00195C169.4043,417.543,150.03516,401.98828,130.38477,384H96A95.99975,95.99975,0,0,0,0,480a32.00033,32.00033,0,0,0,32,32H416a32.00033,32.00033,0,0,0,32-32A95.99975,95.99975,0,0,0,352,384ZM205.0293,404.21484a31.66414,31.66414,0,0,0,37.9414,0C288.459,370.22266,400,277.51172,400,185.68359,400,70.31836,321.18164,0,224,0,126.791,0,48,70.31836,48,185.68359,48,277.51172,159.541,370.22266,205.0293,404.21484ZM240,252a60.00047,60.00047,0,0,1,60-60h24a12.0006,12.0006,0,0,1,12,12v8a60.00047,60.00047,0,0,1-60,60H252a12.0006,12.0006,0,0,1-12-12ZM112,212v-8a12.0006,12.0006,0,0,1,12-12h24a60.00047,60.00047,0,0,1,60,60v8a12.0006,12.0006,0,0,1-12,12H172A60.00047,60.00047,0,0,1,112,212Z\"]\n};\nvar faUserAlt = {\n prefix: 'fas',\n iconName: 'user-alt',\n icon: [512, 512, [], \"f406\", \"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\"]\n};\nvar faUserAltSlash = {\n prefix: 'fas',\n iconName: 'user-alt-slash',\n icon: [640, 512, [], \"f4fa\", \"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\"]\n};\nvar faUserAstronaut = {\n prefix: 'fas',\n iconName: 'user-astronaut',\n icon: [448, 512, [], \"f4fb\", \"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\"]\n};\nvar faUserChart = {\n prefix: 'fas',\n iconName: 'user-chart',\n icon: [640, 512, [], \"f6a3\", \"M208 352h-3.81c-13.93 4.83-28.64 8-44.19 8s-30.26-3.17-44.19-8H112C50.14 352 0 402.14 0 464c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48 0-61.86-50.14-112-112-112zM592 0H208c-26.47 0-48 22.25-48 49.59V96c23.42 0 45.1 6.78 64 17.8V64h352v288H307.76c19.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 0zM160 320c53.02 0 96-42.98 96-96s-42.98-96-96-96-96 42.98-96 96 42.98 96 96 96zm168.97-152.97c-9.37-9.37-24.57-9.37-33.94 0l-14.75 14.75c4.68 13.29 7.72 27.35 7.72 42.21 0 6.83-.98 13.41-2.02 19.95l26.02-26 55.03 55.03c9.37 9.37 24.57 9.37 33.94 0l72-72 24.3 24.3c11.34 11.34 30.73 3.31 30.73-12.73V124c0-6.63-5.37-12-12-12h-88.54c-16.04 0-24.07 19.39-12.73 30.73l24.3 24.3L384 222.06l-55.03-55.03z\"]\n};\nvar faUserCheck = {\n prefix: 'fas',\n iconName: 'user-check',\n icon: [640, 512, [], \"f4fc\", \"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\"]\n};\nvar faUserCircle = {\n prefix: 'fas',\n iconName: 'user-circle',\n icon: [496, 512, [], \"f2bd\", \"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\"]\n};\nvar faUserClock = {\n prefix: 'fas',\n iconName: 'user-clock',\n icon: [640, 512, [], \"f4fd\", \"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\"]\n};\nvar faUserCog = {\n prefix: 'fas',\n iconName: 'user-cog',\n icon: [640, 512, [], \"f4fe\", \"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\"]\n};\nvar faUserCowboy = {\n prefix: 'fas',\n iconName: 'user-cowboy',\n icon: [448, 512, [], \"f8ea\", \"M438.47 97.8a18.2 18.2 0 0 0-21.92 5.2c-.43.57-44.81 61.59-192.55 61.59C77.12 164.57 32.4 104.21 31.46 103a18 18 0 0 0-21.79-5.37c-7.76 3.53-11.51 11.84-8.79 19.44.35 1 24.66 66 95.14 106.7v.23a128 128 0 0 0 256 0v-.22C422.47 183 446.77 118 447.13 117.07c2.69-7.54-1.03-15.69-8.66-19.27zM313.59 384H296.9a174.1 174.1 0 0 1-145.81 0H134.4A133.82 133.82 0 0 0 9.54 469.8c-7.88 20.39 8.53 42.2 30.4 42.2h368.11c21.87 0 38.28-21.81 30.4-42.2A133.82 133.82 0 0 0 313.59 384zm28.9-270.43C331.44 64.05 310.86 0 278.1 0c-10.33 0-19.55 4.45-27.3 10.47a42.42 42.42 0 0 1-52.08 0C191 4.45 181.75 0 171.42 0c-32.87 0-53.48 64.49-64.51 114.08C133 124 170.75 132.57 224 132.57c54.17 0 92.36-8.84 118.49-19z\"]\n};\nvar faUserCrown = {\n prefix: 'fas',\n iconName: 'user-crown',\n icon: [448, 512, [], \"f6a4\", \"M352 0l-64 32-64-32-64 32L96 0v96h256V0zm-38.4 304h-16.71c-22.24 10.18-46.88 16-72.89 16s-50.65-5.82-72.89-16H134.4C60.17 304 0 364.17 0 438.4V464c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48v-25.6c0-74.23-60.17-134.4-134.4-134.4zM224 272c70.69 0 128-57.31 128-128v-16H96v16c0 70.69 57.31 128 128 128z\"]\n};\nvar faUserEdit = {\n prefix: 'fas',\n iconName: 'user-edit',\n icon: [640, 512, [], \"f4ff\", \"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\"]\n};\nvar faUserFriends = {\n prefix: 'fas',\n iconName: 'user-friends',\n icon: [640, 512, [], \"f500\", \"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\"]\n};\nvar faUserGraduate = {\n prefix: 'fas',\n iconName: 'user-graduate',\n icon: [448, 512, [], \"f501\", \"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\"]\n};\nvar faUserHardHat = {\n prefix: 'fas',\n iconName: 'user-hard-hat',\n icon: [448, 512, [], \"f82c\", \"M88 176h272a8 8 0 0 0 8-8v-32a8 8 0 0 0-8-8h-8a112 112 0 0 0-68.4-103.2L256 80V16a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v64l-27.6-55.2A112 112 0 0 0 96 128h-8a8 8 0 0 0-8 8v32a8 8 0 0 0 8 8zm225.6 176h-16.7a174.08 174.08 0 0 1-145.8 0h-16.7A134.4 134.4 0 0 0 0 486.4 25.6 25.6 0 0 0 25.6 512h396.8a25.6 25.6 0 0 0 25.6-25.6A134.4 134.4 0 0 0 313.6 352zM224 320c65.22 0 118.44-48.94 126.39-112H97.61c7.95 63.06 61.17 112 126.39 112z\"]\n};\nvar faUserHeadset = {\n prefix: 'fas',\n iconName: 'user-headset',\n icon: [448, 512, [], \"f82d\", \"M320 352h-23.1a174.08 174.08 0 0 1-145.8 0H128A128 128 0 0 0 0 480a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32 128 128 0 0 0-128-128zM48 224a16 16 0 0 0 16-16v-16c0-88.22 71.78-160 160-160s160 71.78 160 160v16a80.09 80.09 0 0 1-80 80h-32a32 32 0 0 0-32-32h-32a32 32 0 0 0 0 64h96a112.14 112.14 0 0 0 112-112v-16C416 86.13 329.87 0 224 0S32 86.13 32 192v16a16 16 0 0 0 16 16zm160 0h32a64 64 0 0 1 55.41 32H304a48.05 48.05 0 0 0 48-48v-16a128 128 0 0 0-256 0c0 40.42 19.1 76 48.35 99.47-.06-1.17-.35-2.28-.35-3.47a64.07 64.07 0 0 1 64-64z\"]\n};\nvar faUserInjured = {\n prefix: 'fas',\n iconName: 'user-injured',\n icon: [448, 512, [], \"f728\", \"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\"]\n};\nvar faUserLock = {\n prefix: 'fas',\n iconName: 'user-lock',\n icon: [640, 512, [], \"f502\", \"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\"]\n};\nvar faUserMd = {\n prefix: 'fas',\n iconName: 'user-md',\n icon: [448, 512, [], \"f0f0\", \"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\"]\n};\nvar faUserMdChat = {\n prefix: 'fas',\n iconName: 'user-md-chat',\n icon: [640, 512, [], \"f82e\", \"M104 424a24 24 0 1 0 24-24 24 24 0 0 0-24 24zm120-168A128 128 0 1 0 96 128a128 128 0 0 0 128 128zm96 32.65v49A80.13 80.13 0 0 1 384 416v40a16 16 0 0 1-12.86 15.69L339 478.14a8 8 0 0 1-9.41-6.27l-3.14-15.69a8 8 0 0 1 6.28-9.41l19.27-3.86V416a48.08 48.08 0 0 0-57.57-47c-22.79 4.42-38.43 25.75-38.43 49v25l19.29 3.86a8 8 0 0 1 6.28 9.41l-3.14 15.69a8 8 0 0 1-9.41 6.27l-31.17-4.24A16 16 0 0 1 224 458.05V416a80.13 80.13 0 0 1 64-78.38v-46.1a172 172 0 0 1-121.42 2.69A111.51 111.51 0 0 0 144 289v81.6a56 56 0 1 1-32 0v-80.34C48.49 301 0 355.84 0 422.4V464a48 48 0 0 0 48 48h352a48 48 0 0 0 48-48v-41.6c0-72.03-56.82-130.33-128-133.75zM512 0c-70.69 0-128 50.15-128 112 0 28.76 12.75 54.72 33.11 74.55a312.08 312.08 0 0 1-31.29 55.37 9.86 9.86 0 0 0-1.25 9.07c1.09 3.13 3.43 5 6.11 5 39.84 0 72.35-17.13 95.22-34.36A146 146 0 0 0 512 224c70.69 0 128-50.15 128-112S582.69 0 512 0z\"]\n};\nvar faUserMinus = {\n prefix: 'fas',\n iconName: 'user-minus',\n icon: [640, 512, [], \"f503\", \"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\"]\n};\nvar faUserMusic = {\n prefix: 'fas',\n iconName: 'user-music',\n icon: [640, 512, [], \"f8eb\", \"M224 257A128 128 0 1 0 96 129a128 128 0 0 0 128 128zm64 176c0-54.9 48.34-99.39 114.45-109.72C378.72 302.2 347.82 289 313.59 289h-16.68a174.12 174.12 0 0 1-145.82 0h-16.68A134.43 134.43 0 0 0 0 423.41V465a48 48 0 0 0 48 48h282.42C304.13 492.81 288 464.66 288 433zM598.94 98.33l-96.53 28.51a32 32 0 0 0-22.41 30.5V361a148.76 148.76 0 0 0-48-8c-61.86 0-112 35.82-112 80s50.14 80 112 80 112-35.82 112-80V245.15l73-21.39a32 32 0 0 0 23-30.71V129a32 32 0 0 0-41.06-30.67z\"]\n};\nvar faUserNinja = {\n prefix: 'fas',\n iconName: 'user-ninja',\n icon: [448, 512, [], \"f504\", \"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\"]\n};\nvar faUserNurse = {\n prefix: 'fas',\n iconName: 'user-nurse',\n icon: [448, 512, [], \"f82f\", \"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\"]\n};\nvar faUserPlus = {\n prefix: 'fas',\n iconName: 'user-plus',\n icon: [640, 512, [], \"f234\", \"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\"]\n};\nvar faUserRobot = {\n prefix: 'fas',\n iconName: 'user-robot',\n icon: [448, 512, [], \"e04b\", \"M17.99986,256H48V128H17.99986A17.9784,17.9784,0,0,0,0,146v92A17.97965,17.97965,0,0,0,17.99986,256Zm412-128H400V256h29.99985A17.97847,17.97847,0,0,0,448,238V146A17.97722,17.97722,0,0,0,429.99985,128ZM116,320H332a36.0356,36.0356,0,0,0,36-36V109a44.98411,44.98411,0,0,0-45-45H241.99985V18a18,18,0,1,0-36,0V64H125a44.98536,44.98536,0,0,0-45,45V284A36.03685,36.03685,0,0,0,116,320Zm188-48H272V240h32ZM288,128a32,32,0,1,1-32,32A31.99658,31.99658,0,0,1,288,128ZM208,240h32v32H208Zm-32,32H144V240h32ZM160,128a32,32,0,1,1-32,32A31.99658,31.99658,0,0,1,160,128ZM352,352H96A95.99975,95.99975,0,0,0,0,448v32a32.00033,32.00033,0,0,0,32,32h96V448a31.99908,31.99908,0,0,1,32-32H288a31.99908,31.99908,0,0,1,32,32v64h96a32.00033,32.00033,0,0,0,32-32V448A95.99975,95.99975,0,0,0,352,352ZM176,448a15.99954,15.99954,0,0,0-16,16v48h32V464A15.99954,15.99954,0,0,0,176,448Zm96,0a16,16,0,1,0,16,16A15.99954,15.99954,0,0,0,272,448Z\"]\n};\nvar faUserSecret = {\n prefix: 'fas',\n iconName: 'user-secret',\n icon: [448, 512, [], \"f21b\", \"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\"]\n};\nvar faUserShield = {\n prefix: 'fas',\n iconName: 'user-shield',\n icon: [640, 512, [], \"f505\", \"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\"]\n};\nvar faUserSlash = {\n prefix: 'fas',\n iconName: 'user-slash',\n icon: [640, 512, [], \"f506\", \"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\"]\n};\nvar faUserTag = {\n prefix: 'fas',\n iconName: 'user-tag',\n icon: [640, 512, [], \"f507\", \"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\"]\n};\nvar faUserTie = {\n prefix: 'fas',\n iconName: 'user-tie',\n icon: [448, 512, [], \"f508\", \"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\"]\n};\nvar faUserTimes = {\n prefix: 'fas',\n iconName: 'user-times',\n icon: [640, 512, [], \"f235\", \"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\"]\n};\nvar faUserUnlock = {\n prefix: 'fas',\n iconName: 'user-unlock',\n icon: [640, 512, [], \"e058\", \"M224,256A128,128,0,1,0,96,128,128,128,0,0,0,224,256Zm96,64a63.07,63.07,0,0,1,8.1-30.5c-4.8-.5-9.5-1.5-14.5-1.5H296.9a174.1,174.1,0,0,1-145.8,0H134.4A134.43,134.43,0,0,0,0,422.4V464a48,48,0,0,0,48,48H328.9a63.58,63.58,0,0,1-8.9-32Zm288-32H464V208.67c0-17.44,13.67-32.18,31.1-32.66A32,32,0,0,1,528,208a16,16,0,0,0,16,16h17a15,15,0,0,0,15-15h0c0-43.28-34-79.51-77.26-80.95A80,80,0,0,0,416,208v80H384a32,32,0,0,0-32,32V480a32,32,0,0,0,32,32H608a32,32,0,0,0,32-32V320A32,32,0,0,0,608,288ZM496,432a32,32,0,1,1,32-32A32,32,0,0,1,496,432Z\"]\n};\nvar faUserVisor = {\n prefix: 'fas',\n iconName: 'user-visor',\n icon: [448, 512, [], \"e04c\", \"M105.05859,174.653C123.72266,222.237,169.79492,256.05336,224,256.05336S324.27734,222.237,342.94141,174.653C357.168,171.401,368,159.2643,368,144.05336v-64a31.99909,31.99909,0,0,0-32-32H323.18164C299.7168,19.00649,264.25.05336,224,.05336s-75.7168,18.95313-99.18164,48H112a31.99909,31.99909,0,0,0-32,32v64C80,159.2643,90.832,171.401,105.05859,174.653ZM128,96.05336H320v32H128Zm185.59375,192h-16.6875a174.10379,174.10379,0,0,1-145.8125,0h-16.6875A134.44134,134.44134,0,0,0,0,422.45961v41.59375a48.01238,48.01238,0,0,0,48,48H400a48.01238,48.01238,0,0,0,48-48V422.45961A134.44134,134.44134,0,0,0,313.59375,288.05336Zm39.6875,159.79688A4.06431,4.06431,0,0,1,352,448.05336a4.01558,4.01558,0,0,1-3.26562-1.6875c-12.1875-17.1875-17.625-23.04687-19.85938-25.03125a5.72835,5.72835,0,0,0-1.375.375c-3.29688,1-12.1875,5.48438-37.04688,24.8125a4.1133,4.1133,0,0,1-4.39062.34375,4.03445,4.03445,0,0,1-2.04688-3.92187c3.875-36.39063,15.875-66.5,35.70313-89.5a4.30685,4.30685,0,0,1,3.14063-1.39063,3.97907,3.97907,0,0,1,3.0625,1.5625c18.8125,24.59375,28.92187,54.96875,30.07812,90.3125A3.992,3.992,0,0,1,353.28125,447.85024Z\"]\n};\nvar faUsers = {\n prefix: 'fas',\n iconName: 'users',\n icon: [640, 512, [], \"f0c0\", \"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\"]\n};\nvar faUsersClass = {\n prefix: 'fas',\n iconName: 'users-class',\n icon: [640, 512, [], \"f63d\", \"M256 288c0 35.35 28.66 64 64 64 35.35 0 64-28.65 64-64s-28.65-64-64-64c-35.34 0-64 28.65-64 64zm224 0c0 35.35 28.66 64 64 64 35.35 0 64-28.65 64-64s-28.65-64-64-64c-35.34 0-64 28.65-64 64zM96 352c35.35 0 64-28.65 64-64s-28.65-64-64-64c-35.34 0-64 28.65-64 64s28.66 64 64 64zm480 32h-64c-35.34 0-64 28.65-64 64v32c0 17.67 14.33 32 32 32h128c17.67 0 32-14.33 32-32v-32c0-35.35-28.66-64-64-64zm-224 0h-64c-35.34 0-64 28.65-64 64v32c0 17.67 14.33 32 32 32h128c17.67 0 32-14.33 32-32v-32c0-35.35-28.66-64-64-64zm-224 0H64c-35.34 0-64 28.65-64 64v32c0 17.67 14.33 32 32 32h128c17.67 0 32-14.33 32-32v-32c0-35.35-28.66-64-64-64zM96 64h448v128c24.68 0 46.98 9.62 64 24.97V49.59C608 22.25 586.47 0 560 0H80C53.53 0 32 22.25 32 49.59v167.38C49.02 201.62 71.33 192 96 192V64z\"]\n};\nvar faUsersCog = {\n prefix: 'fas',\n iconName: 'users-cog',\n icon: [640, 512, [], \"f509\", \"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\"]\n};\nvar faUsersCrown = {\n prefix: 'fas',\n iconName: 'users-crown',\n icon: [640, 512, [], \"f6a5\", \"M96 224c35.35 0 64-28.65 64-64s-28.65-64-64-64-64 28.65-64 64 28.65 64 64 64zm224 32c53.02 0 96-42.98 96-96v-16H224v16c0 53.02 42.98 96 96 96zm256 0h-64c-17.59 0-33.5 7.11-45.07 18.59 40.27 22.06 68.86 62.03 75.13 109.41H608c17.67 0 32-14.33 32-32v-32c0-35.35-28.65-64-64-64zm-402.93 18.59C161.5 263.11 145.59 256 128 256H64c-35.35 0-64 28.65-64 64v32c0 17.67 14.33 32 32 32h65.94c6.27-47.38 34.85-87.34 75.13-109.41zM544 224c35.35 0 64-28.65 64-64s-28.65-64-64-64-64 28.65-64 64 28.65 64 64 64zm-147.2 64h-8.31c-20.84 9.96-43.89 16-68.49 16s-47.64-6.04-68.49-16h-8.31C179.58 288 128 339.58 128 403.2V432c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48v-28.8c0-63.62-51.58-115.2-115.2-115.2zM416 32l-48 24-48-24-48 24-48-24v80h192V32z\"]\n};\nvar faUsersMedical = {\n prefix: 'fas',\n iconName: 'users-medical',\n icon: [640, 512, [], \"f830\", \"M96 224a64 64 0 1 0-64-64 64.06 64.06 0 0 0 64 64zm224 32a112 112 0 1 0-112-112 111.94 111.94 0 0 0 112 112zm32 96c0-19.1 3.92-37.17 10.09-54.17A152.75 152.75 0 0 1 320 304c-24.6 0-47.6-6-68.5-16h-8.3A115.23 115.23 0 0 0 128 403.2V432a48 48 0 0 0 48 48h241c-39.22-29.19-65-75.47-65-128zm-178.9-77.4A63.81 63.81 0 0 0 128 256H64a64.06 64.06 0 0 0-64 64v32a32 32 0 0 0 32 32h65.9a146.64 146.64 0 0 1 75.2-109.4zM512 224a128 128 0 1 0 128 128 128 128 0 0 0-128-128zm64 144a5.33 5.33 0 0 1-5.33 5.33h-37.34v37.34A5.33 5.33 0 0 1 528 416h-32a5.33 5.33 0 0 1-5.33-5.33v-37.34h-37.34A5.33 5.33 0 0 1 448 368v-32a5.33 5.33 0 0 1 5.33-5.33h37.34v-37.34A5.33 5.33 0 0 1 496 288h32a5.33 5.33 0 0 1 5.33 5.33v37.34h37.34A5.33 5.33 0 0 1 576 336z\"]\n};\nvar faUsersSlash = {\n prefix: 'fas',\n iconName: 'users-slash',\n icon: [640, 512, [], \"e073\", \"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\"]\n};\nvar faUtensilFork = {\n prefix: 'fas',\n iconName: 'utensil-fork',\n icon: [512, 512, [], \"f2e3\", \"M469.5 119.4L356.3 232.6c-3.8 1.7-14.7-9.5-12.9-12.9 19.2-21.5 105.3-117.9 107.3-120.1 14.1-19.3-19.1-52.5-38.4-38.4-2.3 2-98.7 88.1-120.1 107.3-3.4 1.8-14.6-9.1-12.9-12.9L392.5 42.4c15.4-19.4-18.7-53-37.5-39.3-4.4 3.1-88.6 62.8-116.2 90.3-41.8 41.8-49.6 94.1-28.7 139.1L9 413.2c-11.6 10.5-12.1 28.5-1 39.5L59.3 504c11 11 29.1 10.5 39.5-1.1l180.5-201.2c45 20.9 97.2 13.3 139.1-28.7 27.6-27.6 87.3-111.8 90.4-116.2 13.7-18.7-19.9-52.7-39.3-37.4z\"]\n};\nvar faUtensilKnife = {\n prefix: 'fas',\n iconName: 'utensil-knife',\n icon: [512, 512, [], \"f2e4\", \"M424.9 8.7L20.8 412.8c-11.5 11.5-11.5 30.3 0 41.8l48.8 48.8c12.2 12.2 32.2 11.4 43.4-1.8l148.2-174.3C504.1 357 538.5 80.5 466.7 8.7c-11.6-11.6-30.3-11.6-41.8 0z\"]\n};\nvar faUtensilSpoon = {\n prefix: 'fas',\n iconName: 'utensil-spoon',\n icon: [512, 512, [], \"f2e5\", \"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\"]\n};\nvar faUtensils = {\n prefix: 'fas',\n iconName: 'utensils',\n icon: [416, 512, [], \"f2e7\", \"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\"]\n};\nvar faUtensilsAlt = {\n prefix: 'fas',\n iconName: 'utensils-alt',\n icon: [576, 512, [], \"f2e6\", \"M53.8 8.6L293 230.7c28.8-25.5 18-16 48.4-42.9-21.4-36.3-17.2-75.1 16.1-108.4C379.3 57.7 452.3 6 456.2 3.2c16.1-11.8 37.6 11.5 24.8 26.2l-81.2 93.8c-1.3 1.5 3 6 4.7 4.6L501.4 49c15.1-12.3 37.9 10.2 25.5 25.5l-78.8 96.9c-1.3 1.6 3.1 6 4.6 4.6l93.8-81.2c14.7-12.7 38 8.7 26.2 24.9-2.8 4-54.5 76.9-76.2 98.6-34.2 34.3-73.5 36.9-108.5 16.2-26.6 30.1-14.5 16.3-41 46.3l154.7 143.6c13.3 12.3 13.7 33.3.8 46.1l-32 32c-12.8 12.8-33.6 12.4-46-.7C405.4 479.2 223.9 265.3 216 256 56 256 0 165.9 0 32.1 0 4.2 33.3-10.4 53.8 8.6zm19.6 462l32 32c13 13 34.4 12.4 46.6-1.4l117.5-132.7-56.6-66.8L74.8 424c-13.8 12.3-14.5 33.6-1.4 46.6z\"]\n};\nvar faVacuum = {\n prefix: 'fas',\n iconName: 'vacuum',\n icon: [640, 512, [], \"e04d\", \"M143.27,256,102.12,448H48A48,48,0,0,0,0,496a16,16,0,0,0,16,16H176a16,16,0,0,0,16-16V464a16,16,0,0,0-16-16h-8.41l41.14-192ZM640,128A128.14,128.14,0,0,0,512,0H301.61C241.64,0,189,42.56,176.44,101.19L150.12,224h65.47L239,114.59A64.33,64.33,0,0,1,301.61,64H512a64,64,0,0,1,13.47,126.51A191.27,191.27,0,0,0,384,128a32,32,0,0,0-32,32V321.62A109.65,109.65,0,0,1,368,320a111.83,111.83,0,0,1,78.14,192H512a64,64,0,0,0,64-64V320a191.27,191.27,0,0,0-15.06-74.65C607.17,226.11,640,181.13,640,128ZM368,352a80,80,0,1,0,80,80A80,80,0,0,0,368,352Zm0,96a16,16,0,1,1,16-16A16,16,0,0,1,368,448Z\"]\n};\nvar faVacuumRobot = {\n prefix: 'fas',\n iconName: 'vacuum-robot',\n icon: [512, 512, [], \"e04e\", \"M431.36,80.64c-96.85-96.85-253.87-96.85-350.72,0s-96.85,253.87,0,350.72,253.87,96.85,350.72,0S528.21,177.49,431.36,80.64ZM199.43,403.08a16,16,0,0,1-22.63,0L108.92,335.2a16,16,0,0,1,22.63-22.63l67.88,67.88A16,16,0,0,1,199.43,403.08Zm67.88-22.63a16,16,0,0,1-22.62,0L131.55,267.31a16,16,0,0,1,22.63-22.62L267.31,357.82A16,16,0,0,1,267.31,380.45Zm22.63-67.88a16,16,0,0,1-22.63,0l-67.88-67.88a16,16,0,0,1,22.63-22.63l67.88,67.88A16,16,0,0,1,289.94,312.57Zm90.51,67.88a16,16,0,0,1-22.62-22.62c56.14-56.16,56.14-147.5,0-203.66s-147.5-56.15-203.66,0a16,16,0,0,1-22.62-22.62c68.62-68.63,180.28-68.63,248.9,0S449.08,311.83,380.45,380.45Z\"]\n};\nvar faValueAbsolute = {\n prefix: 'fas',\n iconName: 'value-absolute',\n icon: [512, 512, [], \"f6a6\", \"M48 32H16C7.16 32 0 39.16 0 48v416c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16zm448 0h-32c-8.84 0-16 7.16-16 16v416c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16zM377.3 150.87l-16.17-16.17c-8.93-8.93-23.41-8.93-32.35 0L256 207.48l-72.78-72.78c-8.93-8.93-23.41-8.93-32.35 0l-16.17 16.17c-8.93 8.93-8.93 23.41 0 32.35L207.48 256l-72.78 72.78c-8.93 8.93-8.93 23.41 0 32.35l16.17 16.17c8.93 8.93 23.41 8.93 32.35 0L256 304.52l72.78 72.78c8.93 8.93 23.41 8.93 32.35 0l16.17-16.17c8.93-8.93 8.93-23.41 0-32.35L304.52 256l72.78-72.78c8.93-8.93 8.93-23.42 0-32.35z\"]\n};\nvar faVectorSquare = {\n prefix: 'fas',\n iconName: 'vector-square',\n icon: [512, 512, [], \"f5cb\", \"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\"]\n};\nvar faVenus = {\n prefix: 'fas',\n iconName: 'venus',\n icon: [288, 512, [], \"f221\", \"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\"]\n};\nvar faVenusDouble = {\n prefix: 'fas',\n iconName: 'venus-double',\n icon: [512, 512, [], \"f226\", \"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\"]\n};\nvar faVenusMars = {\n prefix: 'fas',\n iconName: 'venus-mars',\n icon: [576, 512, [], \"f228\", \"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\"]\n};\nvar faVest = {\n prefix: 'fas',\n iconName: 'vest',\n icon: [448, 512, [], \"e085\", \"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\"]\n};\nvar faVestPatches = {\n prefix: 'fas',\n iconName: 'vest-patches',\n icon: [448, 512, [], \"e086\", \"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\"]\n};\nvar faVhs = {\n prefix: 'fas',\n iconName: 'vhs',\n icon: [512, 512, [], \"f8ec\", \"M496 64H16A16 16 0 0 0 0 80v48h512V80a16 16 0 0 0-16-16zM0 400a48 48 0 0 0 48 48h416a48 48 0 0 0 48-48V160H0zm384-50.94a47.73 47.73 0 0 0 0-90.12V224h48.86C452 245.26 464 273.12 464 304s-12 58.73-31.14 80H384zM192 224h128v160H192zm-112.86 0H128v34.94a47.73 47.73 0 0 0 0 90.12V384H79.14C60 362.73 48 334.87 48 304s12-58.74 31.14-80z\"]\n};\nvar faVial = {\n prefix: 'fas',\n iconName: 'vial',\n icon: [480, 512, [], \"f492\", \"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\"]\n};\nvar faVials = {\n prefix: 'fas',\n iconName: 'vials',\n icon: [640, 512, [], \"f493\", \"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\"]\n};\nvar faVideo = {\n prefix: 'fas',\n iconName: 'video',\n icon: [576, 512, [], \"f03d\", \"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\"]\n};\nvar faVideoPlus = {\n prefix: 'fas',\n iconName: 'video-plus',\n icon: [576, 512, [], \"f4e1\", \"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.8zM304 264c0 8.8-7.2 16-16 16h-72v72c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-72H96c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h72v-72c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v72h72c8.8 0 16 7.2 16 16v16zm272-136.5v256.9c0 25.5-29.1 40.4-50.4 25.8L416 334.7V177.3l109.6-75.5c21.3-14.7 50.4.3 50.4 25.7z\"]\n};\nvar faVideoSlash = {\n prefix: 'fas',\n iconName: 'video-slash',\n icon: [640, 512, [], \"f4e2\", \"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\"]\n};\nvar faVihara = {\n prefix: 'fas',\n iconName: 'vihara',\n icon: [640, 512, [], \"f6a7\", \"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\"]\n};\nvar faViolin = {\n prefix: 'fas',\n iconName: 'violin',\n icon: [640, 512, [], \"f8ed\", \"M347.31 16L336 4.69a16 16 0 0 0-22.62 0L4.69 313.38a16 16 0 0 0 0 22.62L16 347.31a16 16 0 0 0 22.62 0L347.31 38.62a16 16 0 0 0 0-22.62zM520 48a24 24 0 1 0-24-24 24 24 0 0 0 24 24zM237.61 415.84l-13.45-13.45a16 16 0 0 0-20.19-2l-68.84 45.9a16 16 0 0 0-2.44 24.62l36.4 36.4a16 16 0 0 0 24.62-2.44l45.9-68.87a16 16 0 0 0-2-20.16zM472 96a24 24 0 1 0-24-24 24 24 0 0 0 24 24zm-14.23 131.48L635.31 49.94a16 16 0 0 0 0-22.63L612.69 4.69a16 16 0 0 0-22.63 0L412.52 182.23c-12.17-8.77-25.53-15.76-40.15-19.16-32.87-7.65-65.69-.93-88.56 21.05A79.09 79.09 0 0 1 288 208.4a79.78 79.78 0 0 1-123.28 67.08 89.85 89.85 0 0 0-7.16 6c-31.25 31.16-36.67 79.33-19.54 124.47l48.23-32.16a48 48 0 0 1 60.57 6l13.45 13.45a48.15 48.15 0 0 1 6 60.57L234.11 502c45.12 17.09 93.26 11.63 124.41-19.53a89.77 89.77 0 0 0 6.23-7.48A79.27 79.27 0 0 1 455.87 356c21.92-22.84 28.6-55.6 21-88.4-3.36-14.6-10.34-27.95-19.1-40.12zM616 96a24 24 0 1 0 24 24 24 24 0 0 0-24-24zm-48 48a24 24 0 1 0 24 24 24 24 0 0 0-24-24z\"]\n};\nvar faVirus = {\n prefix: 'fas',\n iconName: 'virus',\n icon: [512, 512, [], \"e074\", \"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\"]\n};\nvar faVirusSlash = {\n prefix: 'fas',\n iconName: 'virus-slash',\n icon: [640, 512, [], \"e075\", \"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\"]\n};\nvar faViruses = {\n prefix: 'fas',\n iconName: 'viruses',\n icon: [640, 512, [], \"e076\", \"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\"]\n};\nvar faVoicemail = {\n prefix: 'fas',\n iconName: 'voicemail',\n icon: [640, 512, [], \"f897\", \"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\"]\n};\nvar faVolcano = {\n prefix: 'fas',\n iconName: 'volcano',\n icon: [512, 512, [], \"f770\", \"M160 144c12.9 0 24.8-3.9 34.8-10.4L224 192h64l29.2-58.4c10 6.5 21.9 10.4 34.8 10.4 35.3 0 64-28.7 64-64s-28.7-64-64-64c-15.8 0-30 5.9-41.2 15.4C299.6 12.7 279.4 0 256 0s-43.6 12.7-54.8 31.4C190 21.9 175.8 16 160 16c-35.3 0-64 28.7-64 64s28.7 64 64 64zm144.4 80h-96.8c-9.8 0-19.1 4.5-25.2 12.3l-55.6 71 13.2 16.5c9.8 12.2 30.3 12.2 40.1 0 10.8-13.5 26.8-21.3 44.1-21.6 17.2-1.5 33.6 7 44.8 20.1l31.6 36.8c9.8 11.4 29.2 11.4 39 0l45.1-52.6-55-70.2c-6.2-7.8-15.4-12.3-25.3-12.3zm201.1 236.8L404.7 332.1l-40.9 47.7c-11 12.8-27 20.2-43.8 20.2s-32.8-7.3-43.8-20.2L244.6 343c-4.9-5.7-12-9-19.5-9h-.4c-7.7.2-14.8 3.7-19.6 9.7-22.1 27.5-68.1 27.5-90.1 0l-8.4-10.6L6.5 460.8C-9.4 481.9 5.7 512 32.1 512H480c26.3 0 41.4-30.1 25.5-51.2z\"]\n};\nvar faVolleyballBall = {\n prefix: 'fas',\n iconName: 'volleyball-ball',\n icon: [512, 512, [], \"f45f\", \"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\"]\n};\nvar faVolume = {\n prefix: 'fas',\n iconName: 'volume',\n icon: [480, 512, [], \"f6a8\", \"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.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.53 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\"]\n};\nvar faVolumeDown = {\n prefix: 'fas',\n iconName: 'volume-down',\n icon: [384, 512, [], \"f027\", \"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\"]\n};\nvar faVolumeMute = {\n prefix: 'fas',\n iconName: 'volume-mute',\n icon: [512, 512, [], \"f6a9\", \"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\"]\n};\nvar faVolumeOff = {\n prefix: 'fas',\n iconName: 'volume-off',\n icon: [256, 512, [], \"f026\", \"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\"]\n};\nvar faVolumeSlash = {\n prefix: 'fas',\n iconName: 'volume-slash',\n icon: [640, 512, [], \"f2e2\", \"M633.82 458.1l-69-53.33C592.42 360.8 608 309.68 608 256c0-95.33-47.73-183.58-127.65-236.03-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 42.78-11.96 83.59-33.22 119.06l-38.12-29.46C503.49 318.68 512 288.06 512 256c0-63.09-32.06-122.09-85.77-156.16-11.19-7.09-26.03-3.8-33.12 7.41-7.09 11.2-3.78 26.03 7.41 33.13C440.27 165.59 464 209.44 464 256c0 21.21-5.03 41.57-14.2 59.88l-39.56-30.58c3.38-9.35 5.76-19.07 5.76-29.3 0-31.88-17.53-61.33-45.77-76.88-11.58-6.33-26.19-2.16-32.61 9.45-6.39 11.61-2.16 26.2 9.45 32.61 11.76 6.46 19.12 18.18 20.4 31.06L288 190.82V88.02c0-21.46-25.96-31.98-40.97-16.97l-49.71 49.7L45.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.45zM32 184v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V352.6L43.76 163.84C36.86 168.05 32 175.32 32 184z\"]\n};\nvar faVolumeUp = {\n prefix: 'fas',\n iconName: 'volume-up',\n icon: [576, 512, [], \"f028\", \"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\"]\n};\nvar faVoteNay = {\n prefix: 'fas',\n iconName: 'vote-nay',\n icon: [640, 512, [], \"f771\", \"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.3V384h384zM235.1 157.1c-6.2-6.2-6.2-16.4 0-22.6l11.3-11.3c6.2-6.2 16.4-6.2 22.6 0l50.9 50.9 50.9-50.9c6.2-6.2 16.4-6.2 22.6 0l11.3 11.3c6.2 6.2 6.2 16.4 0 22.6L353.9 208l50.9 50.9c6.2 6.2 6.2 16.4 0 22.6l-11.3 11.3c-6.2 6.2-16.4 6.2-22.6 0L320 241.9l-50.9 50.9c-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.6l50.9-50.9-51-50.9z\"]\n};\nvar faVoteYea = {\n prefix: 'fas',\n iconName: 'vote-yea',\n icon: [640, 512, [], \"f772\", \"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\"]\n};\nvar faVrCardboard = {\n prefix: 'fas',\n iconName: 'vr-cardboard',\n icon: [640, 512, [], \"f729\", \"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\"]\n};\nvar faWagonCovered = {\n prefix: 'fas',\n iconName: 'wagon-covered',\n icon: [640, 512, [], \"f8ee\", \"M224,224V92.88c0-36.88-25.33-68.15-59.43-73.37L39.55.39c-26-4-46.53,23.34-37.3,49.69L70.78,224ZM600.45.39l-125,19.12C441.33,24.73,416,56,416,92.88V224H569.22L637.75,50.08C647,23.73,626.48-3.59,600.45.39ZM384,56a40,40,0,0,0-40-40H296a40,40,0,0,0-40,40V224H384ZM560,256H80a16,16,0,0,0-16,16v32a16,16,0,0,0,16,16H97.79c-.31.3-.68.5-1,.8A112,112,0,1,0,286.47,416h67.06A111.85,111.85,0,1,0,543.2,320.8c-.31-.3-.68-.5-1-.8H560a16,16,0,0,0,16-16V272A16,16,0,0,0,560,256ZM160,461.74A62.48,62.48,0,0,1,114.26,416H160ZM160,384H114.26A62.44,62.44,0,0,1,160,338.26Zm61.25,61.25A63.43,63.43,0,0,1,192,461.74V416h45.74A63.43,63.43,0,0,1,221.25,445.25ZM192,384V338.26A62.44,62.44,0,0,1,237.74,384Zm256,77.74A62.48,62.48,0,0,1,402.26,416H448ZM448,384H402.26A62.44,62.44,0,0,1,448,338.26Zm61.25,61.25A63.43,63.43,0,0,1,480,461.74V416h45.74A63.34,63.34,0,0,1,509.25,445.25ZM480,384V338.26A62.44,62.44,0,0,1,525.74,384Z\"]\n};\nvar faWalker = {\n prefix: 'fas',\n iconName: 'walker',\n icon: [448, 512, [], \"f831\", \"M416 392.88V96a96 96 0 0 0-96-96H190.66A95.62 95.62 0 0 0 96 80L.24 487.77a16 16 0 0 0 13 18.51l31.54 5.48a16 16 0 0 0 18.5-13L127.81 224H352v168.88a64 64 0 1 0 64 0zM352 160H142.83l16.26-69.25A31.91 31.91 0 0 1 190.66 64H320a32 32 0 0 1 32 32zm32 304a16 16 0 1 1 16-16 16 16 0 0 1-16 16z\"]\n};\nvar faWalkieTalkie = {\n prefix: 'fas',\n iconName: 'walkie-talkie',\n icon: [384, 512, [], \"f8ef\", \"M352 96h-32V80a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v16h-32V80a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16v16h-48V16A16 16 0 0 0 96 0H80a16 16 0 0 0-16 16v80H32a32.09 32.09 0 0 0-32 32v178.74a32 32 0 0 0 9.37 22.63L32 352v112a48 48 0 0 0 48 48h224a48 48 0 0 0 48-48V352l22.63-22.63a32 32 0 0 0 9.37-22.63V128a32.09 32.09 0 0 0-32-32zm-64 216a8 8 0 0 1-8 8H104a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h176a8 8 0 0 1 8 8zm0-64a8 8 0 0 1-8 8H104a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h176a8 8 0 0 1 8 8zm0-64a8 8 0 0 1-8 8H104a8 8 0 0 1-8-8v-16a8 8 0 0 1 8-8h176a8 8 0 0 1 8 8z\"]\n};\nvar faWalking = {\n prefix: 'fas',\n iconName: 'walking',\n icon: [320, 512, [], \"f554\", \"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\"]\n};\nvar faWallet = {\n prefix: 'fas',\n iconName: 'wallet',\n icon: [512, 512, [], \"f555\", \"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\"]\n};\nvar faWand = {\n prefix: 'fas',\n iconName: 'wand',\n icon: [512, 512, [], \"f72a\", \"M400 192c8.84 0 16-7.16 16-16v-27.96l91.87-101.83c5.72-6.32 5.48-16.02-.55-22.05L487.84 4.69c-6.03-6.03-15.73-6.27-22.05-.55L186.6 256H144c-8.84 0-16 7.16-16 16v36.87L10.53 414.84c-13.57 12.28-14.1 33.42-1.16 46.36l41.43 41.43c12.94 12.94 34.08 12.41 46.36-1.16L376.34 192H400z\"]\n};\nvar faWandMagic = {\n prefix: 'fas',\n iconName: 'wand-magic',\n icon: [512, 512, [], \"f72b\", \"M80 160l26.66-53.33L160 80l-53.34-26.67L80 0 53.34 53.34 0 80l53.34 26.67L80 160zm144-64l16-32 32-16-32-16-16-32-16 32-32 16 32 16 16 32zm234.66 245.33L432 288l-26.66 53.33L352 368l53.34 26.67L432 448l26.66-53.33L512 368l-53.34-26.67zM400 192c8.84 0 16-7.16 16-16v-27.96l91.87-101.83c5.72-6.32 5.48-16.02-.55-22.05L487.84 4.69c-6.03-6.03-15.73-6.27-22.05-.55L186.6 256H144c-8.84 0-16 7.16-16 16v36.87L10.53 414.84c-13.57 12.28-14.1 33.42-1.16 46.36l41.43 41.43c12.94 12.94 34.08 12.41 46.36-1.16L376.34 192H400z\"]\n};\nvar faWarehouse = {\n prefix: 'fas',\n iconName: 'warehouse',\n icon: [640, 512, [], \"f494\", \"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\"]\n};\nvar faWarehouseAlt = {\n prefix: 'fas',\n iconName: 'warehouse-alt',\n icon: [640, 512, [], \"f495\", \"M610.5 117L338.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 8h48c4.4 0 8-3.6 8-8V208c0-8.8 7.2-16 16-16h480c8.8 0 16 7.2 16 16v296c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V161.3c0-19.4-11.7-36.8-29.5-44.3zM304 416H144c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h160c8.8 0 16-7.2 16-16v-64c0-8.8-7.2-16-16-16zm192 0H368c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h128c8.8 0 16-7.2 16-16v-64c0-8.8-7.2-16-16-16zM304 288H144c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h160c8.8 0 16-7.2 16-16v-64c0-8.8-7.2-16-16-16z\"]\n};\nvar faWasher = {\n prefix: 'fas',\n iconName: 'washer',\n icon: [446, 512, [], \"f898\", \"M384 0H64A64 64 0 0 0 0 64v416a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V64a64 64 0 0 0-64-64zM184 64a24 24 0 1 1-24 24 24 24 0 0 1 24-24zM64 88a24 24 0 1 1 24 24 24 24 0 0 1-24-24zm160 360a144 144 0 1 1 144-144 144 144 0 0 1-144 144zm36.87-163.66a51.23 51.23 0 0 1-73.74 0 51.79 51.79 0 0 1-73.24 1A110.76 110.76 0 0 0 112 304a112 112 0 0 0 224 0 110.76 110.76 0 0 0-1.89-18.69 51.79 51.79 0 0 1-73.24-1z\"]\n};\nvar faWatch = {\n prefix: 'fas',\n iconName: 'watch',\n icon: [384, 512, [], \"f2e1\", \"M192 80c97.2 0 176 78.8 176 176s-78.8 176-176 176S16 353.2 16 256 94.8 80 192 80m0-24c47.4 0 92.4 16.6 128 46.3V24c0-13.3-10.7-24-24-24H88C74.7 0 64 10.7 64 24v78.3C99.6 72.6 144.5 56 192 56zm0 400c-47.5 0-92.4-16.7-128-46.3V488c0 13.3 10.7 24 24 24h208c13.3 0 24-10.7 24-24v-78.3c-35.6 29.7-80.6 46.3-128 46.3zm53-130.3l18.8-25.9c3.9-5.4 2.7-12.9-2.6-16.8L220 253v-93c0-6.6-5.4-12-12-12h-32c-6.6 0-12 5.4-12 12v115.4c0 3.8 1.8 7.4 4.9 9.7l59.3 43.2c5.4 4 12.9 2.8 16.8-2.6z\"]\n};\nvar faWatchCalculator = {\n prefix: 'fas',\n iconName: 'watch-calculator',\n icon: [384, 512, [], \"f8f0\", \"M320 80H64a64 64 0 0 0-64 64v224a64 64 0 0 0 64 64h256a64 64 0 0 0 64-64V144a64 64 0 0 0-64-64zM120 368a8 8 0 0 1-8 8H80a8 8 0 0 1-8-8v-32a8 8 0 0 1 8-8h32a8 8 0 0 1 8 8zm0-96a8 8 0 0 1-8 8H80a8 8 0 0 1-8-8v-32a8 8 0 0 1 8-8h32a8 8 0 0 1 8 8zm96 96a8 8 0 0 1-8 8h-32a8 8 0 0 1-8-8v-32a8 8 0 0 1 8-8h32a8 8 0 0 1 8 8zm0-96a8 8 0 0 1-8 8h-32a8 8 0 0 1-8-8v-32a8 8 0 0 1 8-8h32a8 8 0 0 1 8 8zm96 96a8 8 0 0 1-8 8h-32a8 8 0 0 1-8-8v-32a8 8 0 0 1 8-8h32a8 8 0 0 1 8 8zm0-96a8 8 0 0 1-8 8h-32a8 8 0 0 1-8-8v-32a8 8 0 0 1 8-8h32a8 8 0 0 1 8 8zm0-96a8 8 0 0 1-8 8H80a8 8 0 0 1-8-8v-32a8 8 0 0 1 8-8h224a8 8 0 0 1 8 8zm8-144a32 32 0 0 0-32-32H96a32 32 0 0 0-32 32v16h256zM64 480a32 32 0 0 0 32 32h192a32 32 0 0 0 32-32v-16H64z\"]\n};\nvar faWatchFitness = {\n prefix: 'fas',\n iconName: 'watch-fitness',\n icon: [384, 512, [], \"f63e\", \"M64 480c0 17.67 14.33 32 32 32h192c17.67 0 32-14.33 32-32v-16H64v16zM320 32c0-17.67-14.33-32-32-32H96C78.33 0 64 14.33 64 32v16h256V32zm0 48H64c-35.35 0-64 28.65-64 64v224c0 35.35 28.65 64 64 64h256c35.35 0 64-28.65 64-64V144c0-35.35-28.65-64-64-64zm-33.43 182.21l-84.67 85.64a13.89 13.89 0 0 1-19.8 0l-84.67-85.64c-24.6-24.88-23.16-66.13 4.33-89.08 23.96-20.02 59.65-16.42 81.62 5.81l8.62 8.72 8.62-8.72c21.97-22.23 57.66-25.82 81.62-5.81 27.49 22.96 28.93 64.21 4.33 89.08z\"]\n};\nvar faWater = {\n prefix: 'fas',\n iconName: 'water',\n icon: [576, 512, [], \"f773\", \"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\"]\n};\nvar faWaterLower = {\n prefix: 'fas',\n iconName: 'water-lower',\n icon: [576, 512, [], \"f774\", \"M562.1 447.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.3zM276 219c6.6 6.6 17.4 6.6 24 0l96.4-95.7c10.1-10.1 3-27.4-11.3-27.4H320V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v80h-65.2c-14.3 0-21.4 17.3-11.2 27.4L276 219z\"]\n};\nvar faWaterRise = {\n prefix: 'fas',\n iconName: 'water-rise',\n icon: [576, 512, [], \"f775\", \"M562.1 447.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.3zM190.8 128H256v80c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-80h65.2c14.3 0 21.4-17.3 11.2-27.4L300 5c-6.6-6.6-17.4-6.6-24 0l-96.4 95.7c-10.2 10-3 27.3 11.2 27.3z\"]\n};\nvar faWaveSine = {\n prefix: 'fas',\n iconName: 'wave-sine',\n icon: [640, 512, [], \"f899\", \"M464 480c-90.52 0-132.84-107.94-173.8-212.31C258.64 187.2 222.88 96 176 96c-39.7 0-91.38 81.89-114.12 149a16 16 0 0 1-19.74 10.33l-30.72-9.21A16 16 0 0 1 .84 225.68C19.55 169.79 82.16 32 176 32c90.52 0 132.84 107.94 173.8 212.31C381.36 324.8 417.12 416 464 416c39.7 0 91.38-81.89 114.12-149a16 16 0 0 1 19.74-10.33l30.72 9.21a16 16 0 0 1 10.58 20.43C620.45 342.21 557.84 480 464 480z\"]\n};\nvar faWaveSquare = {\n prefix: 'fas',\n iconName: 'wave-square',\n icon: [640, 512, [], \"f83e\", \"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\"]\n};\nvar faWaveTriangle = {\n prefix: 'fas',\n iconName: 'wave-triangle',\n icon: [640, 512, [], \"f89a\", \"M464 480h-.34a32 32 0 0 1-25.25-12.8l-263-350.65L53.73 281.88a16 16 0 0 1-22.46 2.7L6.12 264.82a16 16 0 0 1-2.7-22.47L150.84 44.23A32 32 0 0 1 176 32h.34a32 32 0 0 1 25.25 12.8l263 350.65 121.68-165.33a16 16 0 0 1 22.46-2.7l25.15 19.76a16 16 0 0 1 2.7 22.47L489.16 467.77A32 32 0 0 1 464 480z\"]\n};\nvar faWaveform = {\n prefix: 'fas',\n iconName: 'waveform',\n icon: [640, 512, [], \"f8f1\", \"M140 192h-24a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h24a16 16 0 0 0 16-16v-96a16 16 0 0 0-16-16zm-96 32H20a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h24a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM236 96h-24a16 16 0 0 0-16 16v288a16 16 0 0 0 16 16h24a16 16 0 0 0 16-16V112a16 16 0 0 0-16-16zm384 128h-24a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h24a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM524 64h-24a16 16 0 0 0-16 16v352a16 16 0 0 0 16 16h24a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16zm-96 64h-24a16 16 0 0 0-16 16v224a16 16 0 0 0 16 16h24a16 16 0 0 0 16-16V144a16 16 0 0 0-16-16zM332 0h-24a16 16 0 0 0-16 16v480a16 16 0 0 0 16 16h24a16 16 0 0 0 16-16V16a16 16 0 0 0-16-16z\"]\n};\nvar faWaveformPath = {\n prefix: 'fas',\n iconName: 'waveform-path',\n icon: [640, 512, [], \"f8f2\", \"M624 263h-43.69l-12.65-84a24 24 0 0 0-23.1-20h-.12c-9.5 0-21.38 7.22-23.91 18.95L500.16 281 471.75 83.44a24 24 0 0 0-47.41-.39l-38.5 239-42.06-302.46a24 24 0 0 0-47.56 0l-42.06 302.47-38.5-239a24 24 0 0 0-47.41.39L139.84 281l-20.37-103a23.54 23.54 0 0 0-23.59-19h-.5a24 24 0 0 0-23 20l-12.69 84H16a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h81.19l23.34 117c2.56 11.89 11.94 19.42 24.13 19a24.08 24.08 0 0 0 23.09-20.45l25.5-178.08L232.34 491c1.82 11.13 12.63 19.8 23.85 20.05a24 24 0 0 0 23.59-20.61L320 200.7l40.22 289.71a24 24 0 0 0 47.44.54l39.09-242.5 25.5 178.13a24 24 0 0 0 23 20.42c12 0 21.84-8 24.19-18.95l23.34-117H624a16 16 0 0 0 16-16V279a16 16 0 0 0-16-16z\"]\n};\nvar faWebcam = {\n prefix: 'fas',\n iconName: 'webcam',\n icon: [448, 512, [], \"f832\", \"M402.29 438.6l-49.19-30.75c58.11-40.46 96.23-107.66 96.23-183.85 0-123.71-100.29-224-224-224s-224 100.29-224 224c0 76.19 38.12 143.39 96.23 183.85L48.37 438.6a32 32 0 0 0-15 27.14V480a32 32 0 0 0 32 32h320a32 32 0 0 0 32-32v-14.26a32 32 0 0 0-15.08-27.14zm-177-54.6a160 160 0 1 1 160-160 160 160 0 0 1-159.96 160zm0-288a128 128 0 1 0 128 128A128 128 0 0 0 225.33 96zm0 80a48.05 48.05 0 0 0-48 48 16 16 0 0 1-32 0 80.09 80.09 0 0 1 80-80 16 16 0 1 1 0 32z\"]\n};\nvar faWebcamSlash = {\n prefix: 'fas',\n iconName: 'webcam-slash',\n icon: [640, 512, [], \"f833\", \"M163.46 256.92l-66.53-51.41c-.5 6.11-.93 12.25-.93 18.49 0 76.19 38.12 143.39 96.23 183.85L143 438.6a32 32 0 0 0-15 27.14V480a32 32 0 0 0 32 32h320a31.58 31.58 0 0 0 10.7-2.16L327 383.3c-83.42 3.7-148.41-54.1-163.54-126.38zM633.82 458.1L500.7 355.21c27-36.85 43.3-82 43.3-131.21C544 100.29 443.71 0 320 0a223.48 223.48 0 0 0-173 81.8L45.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.45zM320 176a47.78 47.78 0 0 0-33.46 13.69l-25.3-19.55A79.57 79.57 0 0 1 320 144a16 16 0 0 1 0 32zm130.12 140.12l-25.23-19.5A126 126 0 0 0 448 224a127.86 127.86 0 0 0-224.93-83.36l-24.65-19C227.56 86.62 270.85 64 320 64a160 160 0 0 1 160 160 157.21 157.21 0 0 1-29.88 92.12z\"]\n};\nvar faWeight = {\n prefix: 'fas',\n iconName: 'weight',\n icon: [512, 512, [], \"f496\", \"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\"]\n};\nvar faWeightHanging = {\n prefix: 'fas',\n iconName: 'weight-hanging',\n icon: [512, 512, [], \"f5cd\", \"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\"]\n};\nvar faWhale = {\n prefix: 'fas',\n iconName: 'whale',\n icon: [640, 512, [], \"f72c\", \"M544 160c-243.05 0-315.29 224-380.12 224-19.78 0-35.88-16.09-35.88-35.87v-97.99l49.75-30.51A32.007 32.007 0 0 0 192 193v-80.98c0-12.78-14.24-20.4-24.88-13.31L96 146.13 24.88 98.71C14.24 91.63 0 99.25 0 112.03V193c0 10.7 5.35 20.69 14.25 26.62L64 250.14v97.99C64 403.2 108.8 448 163.88 448H576c35.35 0 64-28.65 64-64V256c0-52.94-43.06-96-96-96zM432 288c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16z\"]\n};\nvar faWheat = {\n prefix: 'fas',\n iconName: 'wheat',\n icon: [512, 512, [], \"f72d\", \"M481.7 113.55c25.4-27.43 32.47-72.08 29.75-113C482.47-1.39 431.2.29 398.9 30.43c-37.2 37.35-30.99 104.3-29.76 113 41.58 2.78 85-4.15 112.56-29.88zm-43.51 56c-16.1 3.87-33.24 6.45-52.18 6.45-6.34 0-12.69-.22-19-.64l-25.9-1.73-3.65-25.7c-.32-2.29-4.98-37.33 4.65-75.88-12.86-31.93-40.99-55.43-45.79-59.03-27.88 24.38-50.81 56.03-51.97 89.52 1.09 28.48 18.66 56.4 40.93 78.93l-41.48 41.48c1.59-5.97 2.8-12.06 3.02-18.39-.09-46.86-46.08-85.04-52.32-89.73-27.88 24.38-50.81 56.03-51.97 89.52 1.1 28.48 18.66 56.4 40.93 78.93l-41.48 41.48c1.59-5.97 2.8-12.06 3.02-18.39-.09-46.86-46.08-85.04-52.32-89.73-27.88 24.38-50.81 56.03-51.96 89.52 1.09 28.48 18.66 56.4 40.93 78.93L9.38 457.38c-12.5 12.5-12.5 32.75 0 45.25C15.63 508.88 23.81 512 32 512s16.38-3.12 22.63-9.38l72.24-72.24c22.73 22.77 50.36 40.17 79.4 41.17 33.21-1.28 65.71-24.89 89.73-52.32-17-19.44-50.28-50.61-89.52-51.97-6.62.01-12.99 1.11-19.2 2.71l41.41-41.41c22.73 22.77 50.36 40.17 79.4 41.17 33.21-1.28 65.71-24.89 89.73-52.32-17-19.44-50.28-50.61-89.52-51.97-6.62.01-12.99 1.11-19.2 2.71l41.41-41.41c22.73 22.77 50.36 40.17 79.4 41.17 33.21-1.28 65.71-24.89 89.73-52.32-12.76-14.6-34.7-35.8-61.45-46.04z\"]\n};\nvar faWheelchair = {\n prefix: 'fas',\n iconName: 'wheelchair',\n icon: [512, 512, [], \"f193\", \"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\"]\n};\nvar faWhistle = {\n prefix: 'fas',\n iconName: 'whistle',\n icon: [640, 512, [], \"f460\", \"M232 256c0 13.2-10.8 24-24 24s-24-10.8-24-24 10.8-24 24-24 24 10.8 24 24zm252-49.7l150 120c6.7 5.4 8 15.2 2.8 22.1l-78.2 104.3c-4.8 6.5-13.7 8.3-20.7 4.3l-150.4-86C312.1 484.4 150.8 492.8 61 403c-65.5-65.5-78.1-163.8-38-242-14.4-11.8-23-29.7-23-49 0-35.3 28.7-64 64-64 19.2 0 36.9 8.9 49 23.5 65.3-33.6 144.4-30.8 207 9.3l86.6 63.6c5.3 4.2 7.3 11.3 5.1 17.7l-10.2 29.5c-1.1 3.2-.1 6.7 2.6 8.9l25.2 20.2c2.6 2.1 6.2 2.3 9.1.6l27.4-16.2c5.8-3.4 13-2.9 18.2 1.2zM85.5 88.3C79.7 83 72 80 64 80c-17.7 0-32 14.3-32 32 0 8.1 3.3 15.4 8.4 21.2 15.2-20.6 27.3-31.9 45.1-44.9zM280 256c0-39.7-32.3-72-72-72s-72 32.3-72 72 32.3 72 72 72 72-32.3 72-72z\"]\n};\nvar faWifi = {\n prefix: 'fas',\n iconName: 'wifi',\n icon: [640, 512, [], \"f1eb\", \"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\"]\n};\nvar faWifi1 = {\n prefix: 'fas',\n iconName: 'wifi-1',\n icon: [640, 512, [], \"f6aa\", \"M384 416c0 35.35-28.65 64-64 64s-64-28.65-64-64 28.65-64 64-64 64 28.65 64 64z\"]\n};\nvar faWifi2 = {\n prefix: 'fas',\n iconName: 'wifi-2',\n icon: [640, 512, [], \"f6ab\", \"M384 416c0 35.35-28.65 64-64 64s-64-28.65-64-64 28.65-64 64-64 64 28.65 64 64zm139.24-124.44c6.55-6.46 6.33-17.06-.57-23.15-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.45-33.99z\"]\n};\nvar faWifiSlash = {\n prefix: 'fas',\n iconName: 'wifi-slash',\n icon: [640, 512, [], \"f6ac\", \"M5.09 154.87c-6.66 6.16-6.79 16.59-.35 22.97l34.24 33.96c6.14 6.09 16.02 6.23 22.4.38 6.99-6.4 14.31-12.22 21.65-18.01l-64.96-50.21c-4.3 3.71-8.79 7.04-12.98 10.91zm471.75 181.9l45.42-45.21c6.52-6.46 6.29-17.06-.57-23.17-64.94-57.74-148.91-82.66-230.34-74.98l-83.16-64.27c125.94-38.36 267.75-11.01 370.43 83.05 6.38 5.85 16.26 5.71 22.4-.38l34.24-33.96c6.44-6.39 6.3-16.82-.35-22.97C496.46 26.82 298.08-.76 133.42 71.35L45.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.42-6.97 4.17-17.03-2.81-22.45L476.84 336.77zm-358.53-68.38c-6.86 6.1-7.08 16.7-.57 23.17l34.28 34.01c5.97 5.93 15.59 6.32 21.94.8 13.35-11.6 28.01-20.66 43.15-28.55l-68.36-52.83c-10.48 7.15-20.74 14.78-30.44 23.4zM256 416c0 35.35 28.65 64 64 64 31.91 0 58.15-23.42 62.99-53.98l-88.7-68.56C271.77 367.37 256 389.82 256 416z\"]\n};\nvar faWind = {\n prefix: 'fas',\n iconName: 'wind',\n icon: [512, 512, [], \"f72e\", \"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\"]\n};\nvar faWindTurbine = {\n prefix: 'fas',\n iconName: 'wind-turbine',\n icon: [514, 512, [], \"f89b\", \"M350.1 480h-48.32l-5-76.66L221 314l-10.78 166H161.9a36.94 36.94 0 0 0-33 20.42A8 8 0 0 0 136 512h240a8 8 0 0 0 7.15-11.58A36.93 36.93 0 0 0 350.1 480zm48.59-54.21l-88.35-182.32a55.73 55.73 0 0 1-.73-42.79l73.28-179.07a15.8 15.8 0 0 0-27.5-15.07L241.27 163.21a55.74 55.74 0 0 1-36.47 22.4L13.32 215.94A15.81 15.81 0 0 0 0 231.89v.23a15.8 15.8 0 0 0 14.1 15.35L203.83 268a55.78 55.78 0 0 1 37.54 20.58l130.31 153.5a15.81 15.81 0 0 0 20.53 3.63l.19-.12a15.79 15.79 0 0 0 6.29-19.8zM256 248a24 24 0 1 1 24-24 24 24 0 0 1-24 24z\"]\n};\nvar faWindWarning = {\n prefix: 'fas',\n iconName: 'wind-warning',\n icon: [640, 512, [], \"f776\", \"M635.3 161.5c-8.9-28.6-32.2-51.9-60.7-60.8-59.1-18.4-114 19.1-124.7 72.4-2 9.8 5.8 18.9 15.7 18.9h32.8c6.7 0 13.1-3.8 15.2-10.1 4.2-12.7 16.3-21.9 30.4-21.9 19.4 0 34.9 17.4 31.6 37.4-2.6 15.7-17.4 26.6-33.4 26.6H413.4c-3.3 22.6-9.9 44.1-19.4 64h150c62.8 0 111.8-60.7 91.3-126.5zm2.8 235.4c-8.9-45.6-51.5-76.9-97.9-76.9H375.6c-18 25.8-41.4 47.4-68.3 63.7.6.1 1 .3 1.6.3h233.3c15.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.1h-32.8c-10 0-17.7 9.3-15.7 19.1 8.9 43.8 47.7 76.9 94.1 76.9 59.2 0 106-53.8 94.1-115.1zM384 192C384 86 298 0 192 0S0 86 0 192s86 192 192 192 192-86 192-192zM192 320c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm25.4-110.4c-.8 8.2-7.7 14.4-15.9 14.4h-19c-8.2 0-15.1-6.2-15.9-14.4l-12.8-128c-.9-9.4 6.4-17.6 15.9-17.6h44.6c9.5 0 16.9 8.2 15.9 17.6l-12.8 128z\"]\n};\nvar faWindow = {\n prefix: 'fas',\n iconName: 'window',\n icon: [512, 512, [], \"f40e\", \"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-336 96c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm96 0c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm96 0c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32z\"]\n};\nvar faWindowAlt = {\n prefix: 'fas',\n iconName: 'window-alt',\n icon: [512, 512, [], \"f40f\", \"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-48zM256 96c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm96 0c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm96 0c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32z\"]\n};\nvar faWindowClose = {\n prefix: 'fas',\n iconName: 'window-close',\n icon: [512, 512, [], \"f410\", \"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\"]\n};\nvar faWindowFrame = {\n prefix: 'fas',\n iconName: 'window-frame',\n icon: [512, 512, [], \"e04f\", \"M496,448H480V32A32,32,0,0,0,448,0H64A32,32,0,0,0,32,32V448H16A16,16,0,0,0,0,464v32a16,16,0,0,0,16,16H496a16,16,0,0,0,16-16V464A16,16,0,0,0,496,448ZM416,224H272V64H416ZM96,64H240V224H96Zm0,224H240V448H96ZM272,448V288H416V448Z\"]\n};\nvar faWindowFrameOpen = {\n prefix: 'fas',\n iconName: 'window-frame-open',\n icon: [512, 512, [], \"e050\", \"M480,32A32,32,0,0,0,448,0H64A32,32,0,0,0,32,32V288H480ZM240,224H96V64H240Zm176,0H272V64H416Zm80,224H480V320H416V448H96V320H32V448H16A16,16,0,0,0,0,464v32a16,16,0,0,0,16,16H496a16,16,0,0,0,16-16V464A16,16,0,0,0,496,448Z\"]\n};\nvar faWindowMaximize = {\n prefix: 'fas',\n iconName: 'window-maximize',\n icon: [512, 512, [], \"f2d0\", \"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\"]\n};\nvar faWindowMinimize = {\n prefix: 'fas',\n iconName: 'window-minimize',\n icon: [512, 512, [], \"f2d1\", \"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\"]\n};\nvar faWindowRestore = {\n prefix: 'fas',\n iconName: 'window-restore',\n icon: [512, 512, [], \"f2d2\", \"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\"]\n};\nvar faWindsock = {\n prefix: 'fas',\n iconName: 'windsock',\n icon: [512, 512, [], \"f777\", \"M256 380.6l96-13.7V161.1l-96-13.7v233.2zm-144 20.5l80-11.4V138.3l-80-11.4v274.2zM498.3 182L416 170.3v187.4l82.3-11.8c7.9-1.1 13.7-7.9 13.7-15.8V197.9c0-8-5.9-14.7-13.7-15.9zM56 0C25.1 0 0 25.1 0 56c0 22.3 13.1 41.4 32 50.4V496c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16V106.4c18.9-9 32-28.1 32-50.4 0-30.9-25.1-56-56-56z\"]\n};\nvar faWineBottle = {\n prefix: 'fas',\n iconName: 'wine-bottle',\n icon: [512, 512, [], \"f72f\", \"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\"]\n};\nvar faWineGlass = {\n prefix: 'fas',\n iconName: 'wine-glass',\n icon: [288, 512, [], \"f4e3\", \"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\"]\n};\nvar faWineGlassAlt = {\n prefix: 'fas',\n iconName: 'wine-glass-alt',\n icon: [288, 512, [], \"f5ce\", \"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\"]\n};\nvar faWonSign = {\n prefix: 'fas',\n iconName: 'won-sign',\n icon: [576, 512, [], \"f159\", \"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\"]\n};\nvar faWreath = {\n prefix: 'fas',\n iconName: 'wreath',\n icon: [448, 512, [], \"f7e2\", \"M298.9 384.8L224 416l-74.9-31.2c-10.4-3.5-21.1 4.3-21.1 15.2v96c0 10.9 10.7 18.6 21.1 15.2L224 480l74.9 31.2c10.4 3.5 21.1-4.3 21.1-15.2v-96c0-10.9-10.7-18.6-21.1-15.2zM448 224c0-16.9-8.7-31.6-21.9-40.2 8.9-12.9 11.3-29.9 4.8-45.5-6.6-15.9-20.7-26.2-36.4-28.9 3.3-15.4-.2-31.9-12.1-43.8-11.9-11.9-28.5-15.4-43.8-12.1-2.7-15.8-13-29.9-28.8-36.4-15.6-6.5-32.6-4-45.5 4.8C255.6 8.7 240.9 0 224 0s-31.6 8.7-40.2 21.9c-13-8.9-30-11.3-45.5-4.8-15.8 6.6-26.2 20.7-28.8 36.4-15.4-3.3-31.9.2-43.8 12.1C53.8 77.5 50.3 94 53.6 109.4c-15.8 2.7-29.8 13-36.4 28.8-6.5 15.6-4 32.6 4.8 45.5C8.7 192.4 0 207.1 0 224s8.7 31.6 21.9 40.2c-8.9 12.9-11.3 29.9-4.8 45.5 6.6 15.8 20.7 25.8 36.5 28.5-3.4 15.5 0 32.2 12.1 44.2 8.6 8.6 19.6 12.7 30.8 13.5 1-11.4 5.7-22 14-30.2 9-8.8 21-13.7 33.5-13.7 5.2 0 10.3.8 15.2 2.5l1.1.4 1.1.4 62.7 26.1 62.7-26.1 1.1-.4 1.1-.4c4.9-1.6 10-2.5 15.2-2.5 25 0 45.4 19.3 47.6 43.8 11.2-.7 22.2-4.9 30.8-13.5 12-12 15.5-28.7 12.1-44.2 15.8-2.7 29.9-12.6 36.5-28.5 6.5-15.6 4-32.6-4.8-45.5 12.9-8.5 21.6-23.2 21.6-40.1zm-146.5 26.2c-2.8 8.9-1.1 20.2-6.3 27.6-5.2 7.5-16.1 9.3-23.3 14.8-7.1 5.4-12.1 15.6-20.7 18.5-8.2 2.8-18.1-2.3-27.2-2.3s-19 5.1-27.2 2.3c-8.5-2.9-13.6-13.1-20.7-18.5-7.2-5.4-18.1-7.3-23.3-14.8-5.2-7.4-3.5-18.7-6.3-27.6-2.7-8.6-10.5-16.7-10.5-26.2s7.8-17.6 10.5-26.2c2.8-8.9 1.1-20.2 6.3-27.6 5.2-7.5 16.1-9.3 23.3-14.8 7.1-5.4 12.1-15.6 20.7-18.5 8.2-2.8 18.1 2.3 27.2 2.3s19-5.1 27.2-2.3c8.5 2.9 13.6 13.1 20.7 18.5 7.2 5.4 18.1 7.3 23.3 14.8 5.2 7.4 3.5 18.7 6.3 27.6 2.7 8.6 10.5 16.7 10.5 26.2s-7.8 17.6-10.5 26.2z\"]\n};\nvar faWrench = {\n prefix: 'fas',\n iconName: 'wrench',\n icon: [512, 512, [], \"f0ad\", \"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\"]\n};\nvar faXRay = {\n prefix: 'fas',\n iconName: 'x-ray',\n icon: [640, 512, [], \"f497\", \"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\"]\n};\nvar faYenSign = {\n prefix: 'fas',\n iconName: 'yen-sign',\n icon: [384, 512, [], \"f157\", \"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\"]\n};\nvar faYinYang = {\n prefix: 'fas',\n iconName: 'yin-yang',\n icon: [496, 512, [], \"f6ad\", \"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\"]\n};\nvar _iconsCache = {\n faAbacus: faAbacus,\n faAcorn: faAcorn,\n faAd: faAd,\n faAddressBook: faAddressBook,\n faAddressCard: faAddressCard,\n faAdjust: faAdjust,\n faAirConditioner: faAirConditioner,\n faAirFreshener: faAirFreshener,\n faAlarmClock: faAlarmClock,\n faAlarmExclamation: faAlarmExclamation,\n faAlarmPlus: faAlarmPlus,\n faAlarmSnooze: faAlarmSnooze,\n faAlbum: faAlbum,\n faAlbumCollection: faAlbumCollection,\n faAlicorn: faAlicorn,\n faAlien: faAlien,\n faAlienMonster: faAlienMonster,\n faAlignCenter: faAlignCenter,\n faAlignJustify: faAlignJustify,\n faAlignLeft: faAlignLeft,\n faAlignRight: faAlignRight,\n faAlignSlash: faAlignSlash,\n faAllergies: faAllergies,\n faAmbulance: faAmbulance,\n faAmericanSignLanguageInterpreting: faAmericanSignLanguageInterpreting,\n faAmpGuitar: faAmpGuitar,\n faAnalytics: faAnalytics,\n faAnchor: faAnchor,\n faAngel: faAngel,\n faAngleDoubleDown: faAngleDoubleDown,\n faAngleDoubleLeft: faAngleDoubleLeft,\n faAngleDoubleRight: faAngleDoubleRight,\n faAngleDoubleUp: faAngleDoubleUp,\n faAngleDown: faAngleDown,\n faAngleLeft: faAngleLeft,\n faAngleRight: faAngleRight,\n faAngleUp: faAngleUp,\n faAngry: faAngry,\n faAnkh: faAnkh,\n faAppleAlt: faAppleAlt,\n faAppleCrate: faAppleCrate,\n faArchive: faArchive,\n faArchway: faArchway,\n faArrowAltCircleDown: faArrowAltCircleDown,\n faArrowAltCircleLeft: faArrowAltCircleLeft,\n faArrowAltCircleRight: faArrowAltCircleRight,\n faArrowAltCircleUp: faArrowAltCircleUp,\n faArrowAltDown: faArrowAltDown,\n faArrowAltFromBottom: faArrowAltFromBottom,\n faArrowAltFromLeft: faArrowAltFromLeft,\n faArrowAltFromRight: faArrowAltFromRight,\n faArrowAltFromTop: faArrowAltFromTop,\n faArrowAltLeft: faArrowAltLeft,\n faArrowAltRight: faArrowAltRight,\n faArrowAltSquareDown: faArrowAltSquareDown,\n faArrowAltSquareLeft: faArrowAltSquareLeft,\n faArrowAltSquareRight: faArrowAltSquareRight,\n faArrowAltSquareUp: faArrowAltSquareUp,\n faArrowAltToBottom: faArrowAltToBottom,\n faArrowAltToLeft: faArrowAltToLeft,\n faArrowAltToRight: faArrowAltToRight,\n faArrowAltToTop: faArrowAltToTop,\n faArrowAltUp: faArrowAltUp,\n faArrowCircleDown: faArrowCircleDown,\n faArrowCircleLeft: faArrowCircleLeft,\n faArrowCircleRight: faArrowCircleRight,\n faArrowCircleUp: faArrowCircleUp,\n faArrowDown: faArrowDown,\n faArrowFromBottom: faArrowFromBottom,\n faArrowFromLeft: faArrowFromLeft,\n faArrowFromRight: faArrowFromRight,\n faArrowFromTop: faArrowFromTop,\n faArrowLeft: faArrowLeft,\n faArrowRight: faArrowRight,\n faArrowSquareDown: faArrowSquareDown,\n faArrowSquareLeft: faArrowSquareLeft,\n faArrowSquareRight: faArrowSquareRight,\n faArrowSquareUp: faArrowSquareUp,\n faArrowToBottom: faArrowToBottom,\n faArrowToLeft: faArrowToLeft,\n faArrowToRight: faArrowToRight,\n faArrowToTop: faArrowToTop,\n faArrowUp: faArrowUp,\n faArrows: faArrows,\n faArrowsAlt: faArrowsAlt,\n faArrowsAltH: faArrowsAltH,\n faArrowsAltV: faArrowsAltV,\n faArrowsH: faArrowsH,\n faArrowsV: faArrowsV,\n faAssistiveListeningSystems: faAssistiveListeningSystems,\n faAsterisk: faAsterisk,\n faAt: faAt,\n faAtlas: faAtlas,\n faAtom: faAtom,\n faAtomAlt: faAtomAlt,\n faAudioDescription: faAudioDescription,\n faAward: faAward,\n faAxe: faAxe,\n faAxeBattle: faAxeBattle,\n faBaby: faBaby,\n faBabyCarriage: faBabyCarriage,\n faBackpack: faBackpack,\n faBackspace: faBackspace,\n faBackward: faBackward,\n faBacon: faBacon,\n faBacteria: faBacteria,\n faBacterium: faBacterium,\n faBadge: faBadge,\n faBadgeCheck: faBadgeCheck,\n faBadgeDollar: faBadgeDollar,\n faBadgePercent: faBadgePercent,\n faBadgeSheriff: faBadgeSheriff,\n faBadgerHoney: faBadgerHoney,\n faBagsShopping: faBagsShopping,\n faBahai: faBahai,\n faBalanceScale: faBalanceScale,\n faBalanceScaleLeft: faBalanceScaleLeft,\n faBalanceScaleRight: faBalanceScaleRight,\n faBallPile: faBallPile,\n faBallot: faBallot,\n faBallotCheck: faBallotCheck,\n faBan: faBan,\n faBandAid: faBandAid,\n faBanjo: faBanjo,\n faBarcode: faBarcode,\n faBarcodeAlt: faBarcodeAlt,\n faBarcodeRead: faBarcodeRead,\n faBarcodeScan: faBarcodeScan,\n faBars: faBars,\n faBaseball: faBaseball,\n faBaseballBall: faBaseballBall,\n faBasketballBall: faBasketballBall,\n faBasketballHoop: faBasketballHoop,\n faBat: faBat,\n faBath: faBath,\n faBatteryBolt: faBatteryBolt,\n faBatteryEmpty: faBatteryEmpty,\n faBatteryFull: faBatteryFull,\n faBatteryHalf: faBatteryHalf,\n faBatteryQuarter: faBatteryQuarter,\n faBatterySlash: faBatterySlash,\n faBatteryThreeQuarters: faBatteryThreeQuarters,\n faBed: faBed,\n faBedAlt: faBedAlt,\n faBedBunk: faBedBunk,\n faBedEmpty: faBedEmpty,\n faBeer: faBeer,\n faBell: faBell,\n faBellExclamation: faBellExclamation,\n faBellOn: faBellOn,\n faBellPlus: faBellPlus,\n faBellSchool: faBellSchool,\n faBellSchoolSlash: faBellSchoolSlash,\n faBellSlash: faBellSlash,\n faBells: faBells,\n faBetamax: faBetamax,\n faBezierCurve: faBezierCurve,\n faBible: faBible,\n faBicycle: faBicycle,\n faBiking: faBiking,\n faBikingMountain: faBikingMountain,\n faBinoculars: faBinoculars,\n faBiohazard: faBiohazard,\n faBirthdayCake: faBirthdayCake,\n faBlanket: faBlanket,\n faBlender: faBlender,\n faBlenderPhone: faBlenderPhone,\n faBlind: faBlind,\n faBlinds: faBlinds,\n faBlindsOpen: faBlindsOpen,\n faBlindsRaised: faBlindsRaised,\n faBlog: faBlog,\n faBold: faBold,\n faBolt: faBolt,\n faBomb: faBomb,\n faBone: faBone,\n faBoneBreak: faBoneBreak,\n faBong: faBong,\n faBook: faBook,\n faBookAlt: faBookAlt,\n faBookDead: faBookDead,\n faBookHeart: faBookHeart,\n faBookMedical: faBookMedical,\n faBookOpen: faBookOpen,\n faBookReader: faBookReader,\n faBookSpells: faBookSpells,\n faBookUser: faBookUser,\n faBookmark: faBookmark,\n faBooks: faBooks,\n faBooksMedical: faBooksMedical,\n faBoombox: faBoombox,\n faBoot: faBoot,\n faBoothCurtain: faBoothCurtain,\n faBorderAll: faBorderAll,\n faBorderBottom: faBorderBottom,\n faBorderCenterH: faBorderCenterH,\n faBorderCenterV: faBorderCenterV,\n faBorderInner: faBorderInner,\n faBorderLeft: faBorderLeft,\n faBorderNone: faBorderNone,\n faBorderOuter: faBorderOuter,\n faBorderRight: faBorderRight,\n faBorderStyle: faBorderStyle,\n faBorderStyleAlt: faBorderStyleAlt,\n faBorderTop: faBorderTop,\n faBowArrow: faBowArrow,\n faBowlingBall: faBowlingBall,\n faBowlingPins: faBowlingPins,\n faBox: faBox,\n faBoxAlt: faBoxAlt,\n faBoxBallot: faBoxBallot,\n faBoxCheck: faBoxCheck,\n faBoxFragile: faBoxFragile,\n faBoxFull: faBoxFull,\n faBoxHeart: faBoxHeart,\n faBoxOpen: faBoxOpen,\n faBoxTissue: faBoxTissue,\n faBoxUp: faBoxUp,\n faBoxUsd: faBoxUsd,\n faBoxes: faBoxes,\n faBoxesAlt: faBoxesAlt,\n faBoxingGlove: faBoxingGlove,\n faBrackets: faBrackets,\n faBracketsCurly: faBracketsCurly,\n faBraille: faBraille,\n faBrain: faBrain,\n faBreadLoaf: faBreadLoaf,\n faBreadSlice: faBreadSlice,\n faBriefcase: faBriefcase,\n faBriefcaseMedical: faBriefcaseMedical,\n faBringForward: faBringForward,\n faBringFront: faBringFront,\n faBroadcastTower: faBroadcastTower,\n faBroom: faBroom,\n faBrowser: faBrowser,\n faBrush: faBrush,\n faBug: faBug,\n faBuilding: faBuilding,\n faBullhorn: faBullhorn,\n faBullseye: faBullseye,\n faBullseyeArrow: faBullseyeArrow,\n faBullseyePointer: faBullseyePointer,\n faBurgerSoda: faBurgerSoda,\n faBurn: faBurn,\n faBurrito: faBurrito,\n faBus: faBus,\n faBusAlt: faBusAlt,\n faBusSchool: faBusSchool,\n faBusinessTime: faBusinessTime,\n faCabinetFiling: faCabinetFiling,\n faCactus: faCactus,\n faCalculator: faCalculator,\n faCalculatorAlt: faCalculatorAlt,\n faCalendar: faCalendar,\n faCalendarAlt: faCalendarAlt,\n faCalendarCheck: faCalendarCheck,\n faCalendarDay: faCalendarDay,\n faCalendarEdit: faCalendarEdit,\n faCalendarExclamation: faCalendarExclamation,\n faCalendarMinus: faCalendarMinus,\n faCalendarPlus: faCalendarPlus,\n faCalendarStar: faCalendarStar,\n faCalendarTimes: faCalendarTimes,\n faCalendarWeek: faCalendarWeek,\n faCamcorder: faCamcorder,\n faCamera: faCamera,\n faCameraAlt: faCameraAlt,\n faCameraHome: faCameraHome,\n faCameraMovie: faCameraMovie,\n faCameraPolaroid: faCameraPolaroid,\n faCameraRetro: faCameraRetro,\n faCampfire: faCampfire,\n faCampground: faCampground,\n faCandleHolder: faCandleHolder,\n faCandyCane: faCandyCane,\n faCandyCorn: faCandyCorn,\n faCannabis: faCannabis,\n faCapsules: faCapsules,\n faCar: faCar,\n faCarAlt: faCarAlt,\n faCarBattery: faCarBattery,\n faCarBuilding: faCarBuilding,\n faCarBump: faCarBump,\n faCarBus: faCarBus,\n faCarCrash: faCarCrash,\n faCarGarage: faCarGarage,\n faCarMechanic: faCarMechanic,\n faCarSide: faCarSide,\n faCarTilt: faCarTilt,\n faCarWash: faCarWash,\n faCaravan: faCaravan,\n faCaravanAlt: faCaravanAlt,\n faCaretCircleDown: faCaretCircleDown,\n faCaretCircleLeft: faCaretCircleLeft,\n faCaretCircleRight: faCaretCircleRight,\n faCaretCircleUp: faCaretCircleUp,\n faCaretDown: faCaretDown,\n faCaretLeft: faCaretLeft,\n faCaretRight: faCaretRight,\n faCaretSquareDown: faCaretSquareDown,\n faCaretSquareLeft: faCaretSquareLeft,\n faCaretSquareRight: faCaretSquareRight,\n faCaretSquareUp: faCaretSquareUp,\n faCaretUp: faCaretUp,\n faCarrot: faCarrot,\n faCars: faCars,\n faCartArrowDown: faCartArrowDown,\n faCartPlus: faCartPlus,\n faCashRegister: faCashRegister,\n faCassetteTape: faCassetteTape,\n faCat: faCat,\n faCatSpace: faCatSpace,\n faCauldron: faCauldron,\n faCctv: faCctv,\n faCertificate: faCertificate,\n faChair: faChair,\n faChairOffice: faChairOffice,\n faChalkboard: faChalkboard,\n faChalkboardTeacher: faChalkboardTeacher,\n faChargingStation: faChargingStation,\n faChartArea: faChartArea,\n faChartBar: faChartBar,\n faChartLine: faChartLine,\n faChartLineDown: faChartLineDown,\n faChartNetwork: faChartNetwork,\n faChartPie: faChartPie,\n faChartPieAlt: faChartPieAlt,\n faChartScatter: faChartScatter,\n faCheck: faCheck,\n faCheckCircle: faCheckCircle,\n faCheckDouble: faCheckDouble,\n faCheckSquare: faCheckSquare,\n faCheese: faCheese,\n faCheeseSwiss: faCheeseSwiss,\n faCheeseburger: faCheeseburger,\n faChess: faChess,\n faChessBishop: faChessBishop,\n faChessBishopAlt: faChessBishopAlt,\n faChessBoard: faChessBoard,\n faChessClock: faChessClock,\n faChessClockAlt: faChessClockAlt,\n faChessKing: faChessKing,\n faChessKingAlt: faChessKingAlt,\n faChessKnight: faChessKnight,\n faChessKnightAlt: faChessKnightAlt,\n faChessPawn: faChessPawn,\n faChessPawnAlt: faChessPawnAlt,\n faChessQueen: faChessQueen,\n faChessQueenAlt: faChessQueenAlt,\n faChessRook: faChessRook,\n faChessRookAlt: faChessRookAlt,\n faChevronCircleDown: faChevronCircleDown,\n faChevronCircleLeft: faChevronCircleLeft,\n faChevronCircleRight: faChevronCircleRight,\n faChevronCircleUp: faChevronCircleUp,\n faChevronDoubleDown: faChevronDoubleDown,\n faChevronDoubleLeft: faChevronDoubleLeft,\n faChevronDoubleRight: faChevronDoubleRight,\n faChevronDoubleUp: faChevronDoubleUp,\n faChevronDown: faChevronDown,\n faChevronLeft: faChevronLeft,\n faChevronRight: faChevronRight,\n faChevronSquareDown: faChevronSquareDown,\n faChevronSquareLeft: faChevronSquareLeft,\n faChevronSquareRight: faChevronSquareRight,\n faChevronSquareUp: faChevronSquareUp,\n faChevronUp: faChevronUp,\n faChild: faChild,\n faChimney: faChimney,\n faChurch: faChurch,\n faCircle: faCircle,\n faCircleNotch: faCircleNotch,\n faCity: faCity,\n faClarinet: faClarinet,\n faClawMarks: faClawMarks,\n faClinicMedical: faClinicMedical,\n faClipboard: faClipboard,\n faClipboardCheck: faClipboardCheck,\n faClipboardList: faClipboardList,\n faClipboardListCheck: faClipboardListCheck,\n faClipboardPrescription: faClipboardPrescription,\n faClipboardUser: faClipboardUser,\n faClock: faClock,\n faClone: faClone,\n faClosedCaptioning: faClosedCaptioning,\n faCloud: faCloud,\n faCloudDownload: faCloudDownload,\n faCloudDownloadAlt: faCloudDownloadAlt,\n faCloudDrizzle: faCloudDrizzle,\n faCloudHail: faCloudHail,\n faCloudHailMixed: faCloudHailMixed,\n faCloudMeatball: faCloudMeatball,\n faCloudMoon: faCloudMoon,\n faCloudMoonRain: faCloudMoonRain,\n faCloudMusic: faCloudMusic,\n faCloudRain: faCloudRain,\n faCloudRainbow: faCloudRainbow,\n faCloudShowers: faCloudShowers,\n faCloudShowersHeavy: faCloudShowersHeavy,\n faCloudSleet: faCloudSleet,\n faCloudSnow: faCloudSnow,\n faCloudSun: faCloudSun,\n faCloudSunRain: faCloudSunRain,\n faCloudUpload: faCloudUpload,\n faCloudUploadAlt: faCloudUploadAlt,\n faClouds: faClouds,\n faCloudsMoon: faCloudsMoon,\n faCloudsSun: faCloudsSun,\n faClub: faClub,\n faCocktail: faCocktail,\n faCode: faCode,\n faCodeBranch: faCodeBranch,\n faCodeCommit: faCodeCommit,\n faCodeMerge: faCodeMerge,\n faCoffee: faCoffee,\n faCoffeePot: faCoffeePot,\n faCoffeeTogo: faCoffeeTogo,\n faCoffin: faCoffin,\n faCoffinCross: faCoffinCross,\n faCog: faCog,\n faCogs: faCogs,\n faCoin: faCoin,\n faCoins: faCoins,\n faColumns: faColumns,\n faComet: faComet,\n faComment: faComment,\n faCommentAlt: faCommentAlt,\n faCommentAltCheck: faCommentAltCheck,\n faCommentAltDollar: faCommentAltDollar,\n faCommentAltDots: faCommentAltDots,\n faCommentAltEdit: faCommentAltEdit,\n faCommentAltExclamation: faCommentAltExclamation,\n faCommentAltLines: faCommentAltLines,\n faCommentAltMedical: faCommentAltMedical,\n faCommentAltMinus: faCommentAltMinus,\n faCommentAltMusic: faCommentAltMusic,\n faCommentAltPlus: faCommentAltPlus,\n faCommentAltSlash: faCommentAltSlash,\n faCommentAltSmile: faCommentAltSmile,\n faCommentAltTimes: faCommentAltTimes,\n faCommentCheck: faCommentCheck,\n faCommentDollar: faCommentDollar,\n faCommentDots: faCommentDots,\n faCommentEdit: faCommentEdit,\n faCommentExclamation: faCommentExclamation,\n faCommentLines: faCommentLines,\n faCommentMedical: faCommentMedical,\n faCommentMinus: faCommentMinus,\n faCommentMusic: faCommentMusic,\n faCommentPlus: faCommentPlus,\n faCommentSlash: faCommentSlash,\n faCommentSmile: faCommentSmile,\n faCommentTimes: faCommentTimes,\n faComments: faComments,\n faCommentsAlt: faCommentsAlt,\n faCommentsAltDollar: faCommentsAltDollar,\n faCommentsDollar: faCommentsDollar,\n faCompactDisc: faCompactDisc,\n faCompass: faCompass,\n faCompassSlash: faCompassSlash,\n faCompress: faCompress,\n faCompressAlt: faCompressAlt,\n faCompressArrowsAlt: faCompressArrowsAlt,\n faCompressWide: faCompressWide,\n faComputerClassic: faComputerClassic,\n faComputerSpeaker: faComputerSpeaker,\n faConciergeBell: faConciergeBell,\n faConstruction: faConstruction,\n faContainerStorage: faContainerStorage,\n faConveyorBelt: faConveyorBelt,\n faConveyorBeltAlt: faConveyorBeltAlt,\n faCookie: faCookie,\n faCookieBite: faCookieBite,\n faCopy: faCopy,\n faCopyright: faCopyright,\n faCorn: faCorn,\n faCouch: faCouch,\n faCow: faCow,\n faCowbell: faCowbell,\n faCowbellMore: faCowbellMore,\n faCreditCard: faCreditCard,\n faCreditCardBlank: faCreditCardBlank,\n faCreditCardFront: faCreditCardFront,\n faCricket: faCricket,\n faCroissant: faCroissant,\n faCrop: faCrop,\n faCropAlt: faCropAlt,\n faCross: faCross,\n faCrosshairs: faCrosshairs,\n faCrow: faCrow,\n faCrown: faCrown,\n faCrutch: faCrutch,\n faCrutches: faCrutches,\n faCube: faCube,\n faCubes: faCubes,\n faCurling: faCurling,\n faCut: faCut,\n faDagger: faDagger,\n faDatabase: faDatabase,\n faDeaf: faDeaf,\n faDebug: faDebug,\n faDeer: faDeer,\n faDeerRudolph: faDeerRudolph,\n faDemocrat: faDemocrat,\n faDesktop: faDesktop,\n faDesktopAlt: faDesktopAlt,\n faDewpoint: faDewpoint,\n faDharmachakra: faDharmachakra,\n faDiagnoses: faDiagnoses,\n faDiamond: faDiamond,\n faDice: faDice,\n faDiceD10: faDiceD10,\n faDiceD12: faDiceD12,\n faDiceD20: faDiceD20,\n faDiceD4: faDiceD4,\n faDiceD6: faDiceD6,\n faDiceD8: faDiceD8,\n faDiceFive: faDiceFive,\n faDiceFour: faDiceFour,\n faDiceOne: faDiceOne,\n faDiceSix: faDiceSix,\n faDiceThree: faDiceThree,\n faDiceTwo: faDiceTwo,\n faDigging: faDigging,\n faDigitalTachograph: faDigitalTachograph,\n faDiploma: faDiploma,\n faDirections: faDirections,\n faDiscDrive: faDiscDrive,\n faDisease: faDisease,\n faDivide: faDivide,\n faDizzy: faDizzy,\n faDna: faDna,\n faDoNotEnter: faDoNotEnter,\n faDog: faDog,\n faDogLeashed: faDogLeashed,\n faDollarSign: faDollarSign,\n faDolly: faDolly,\n faDollyEmpty: faDollyEmpty,\n faDollyFlatbed: faDollyFlatbed,\n faDollyFlatbedAlt: faDollyFlatbedAlt,\n faDollyFlatbedEmpty: faDollyFlatbedEmpty,\n faDonate: faDonate,\n faDoorClosed: faDoorClosed,\n faDoorOpen: faDoorOpen,\n faDotCircle: faDotCircle,\n faDove: faDove,\n faDownload: faDownload,\n faDraftingCompass: faDraftingCompass,\n faDragon: faDragon,\n faDrawCircle: faDrawCircle,\n faDrawPolygon: faDrawPolygon,\n faDrawSquare: faDrawSquare,\n faDreidel: faDreidel,\n faDrone: faDrone,\n faDroneAlt: faDroneAlt,\n faDrum: faDrum,\n faDrumSteelpan: faDrumSteelpan,\n faDrumstick: faDrumstick,\n faDrumstickBite: faDrumstickBite,\n faDryer: faDryer,\n faDryerAlt: faDryerAlt,\n faDuck: faDuck,\n faDumbbell: faDumbbell,\n faDumpster: faDumpster,\n faDumpsterFire: faDumpsterFire,\n faDungeon: faDungeon,\n faEar: faEar,\n faEarMuffs: faEarMuffs,\n faEclipse: faEclipse,\n faEclipseAlt: faEclipseAlt,\n faEdit: faEdit,\n faEgg: faEgg,\n faEggFried: faEggFried,\n faEject: faEject,\n faElephant: faElephant,\n faEllipsisH: faEllipsisH,\n faEllipsisHAlt: faEllipsisHAlt,\n faEllipsisV: faEllipsisV,\n faEllipsisVAlt: faEllipsisVAlt,\n faEmptySet: faEmptySet,\n faEngineWarning: faEngineWarning,\n faEnvelope: faEnvelope,\n faEnvelopeOpen: faEnvelopeOpen,\n faEnvelopeOpenDollar: faEnvelopeOpenDollar,\n faEnvelopeOpenText: faEnvelopeOpenText,\n faEnvelopeSquare: faEnvelopeSquare,\n faEquals: faEquals,\n faEraser: faEraser,\n faEthernet: faEthernet,\n faEuroSign: faEuroSign,\n faExchange: faExchange,\n faExchangeAlt: faExchangeAlt,\n faExclamation: faExclamation,\n faExclamationCircle: faExclamationCircle,\n faExclamationSquare: faExclamationSquare,\n faExclamationTriangle: faExclamationTriangle,\n faExpand: faExpand,\n faExpandAlt: faExpandAlt,\n faExpandArrows: faExpandArrows,\n faExpandArrowsAlt: faExpandArrowsAlt,\n faExpandWide: faExpandWide,\n faExternalLink: faExternalLink,\n faExternalLinkAlt: faExternalLinkAlt,\n faExternalLinkSquare: faExternalLinkSquare,\n faExternalLinkSquareAlt: faExternalLinkSquareAlt,\n faEye: faEye,\n faEyeDropper: faEyeDropper,\n faEyeEvil: faEyeEvil,\n faEyeSlash: faEyeSlash,\n faFan: faFan,\n faFanTable: faFanTable,\n faFarm: faFarm,\n faFastBackward: faFastBackward,\n faFastForward: faFastForward,\n faFaucet: faFaucet,\n faFaucetDrip: faFaucetDrip,\n faFax: faFax,\n faFeather: faFeather,\n faFeatherAlt: faFeatherAlt,\n faFemale: faFemale,\n faFieldHockey: faFieldHockey,\n faFighterJet: faFighterJet,\n faFile: faFile,\n faFileAlt: faFileAlt,\n faFileArchive: faFileArchive,\n faFileAudio: faFileAudio,\n faFileCertificate: faFileCertificate,\n faFileChartLine: faFileChartLine,\n faFileChartPie: faFileChartPie,\n faFileCheck: faFileCheck,\n faFileCode: faFileCode,\n faFileContract: faFileContract,\n faFileCsv: faFileCsv,\n faFileDownload: faFileDownload,\n faFileEdit: faFileEdit,\n faFileExcel: faFileExcel,\n faFileExclamation: faFileExclamation,\n faFileExport: faFileExport,\n faFileImage: faFileImage,\n faFileImport: faFileImport,\n faFileInvoice: faFileInvoice,\n faFileInvoiceDollar: faFileInvoiceDollar,\n faFileMedical: faFileMedical,\n faFileMedicalAlt: faFileMedicalAlt,\n faFileMinus: faFileMinus,\n faFileMusic: faFileMusic,\n faFilePdf: faFilePdf,\n faFilePlus: faFilePlus,\n faFilePowerpoint: faFilePowerpoint,\n faFilePrescription: faFilePrescription,\n faFileSearch: faFileSearch,\n faFileSignature: faFileSignature,\n faFileSpreadsheet: faFileSpreadsheet,\n faFileTimes: faFileTimes,\n faFileUpload: faFileUpload,\n faFileUser: faFileUser,\n faFileVideo: faFileVideo,\n faFileWord: faFileWord,\n faFilesMedical: faFilesMedical,\n faFill: faFill,\n faFillDrip: faFillDrip,\n faFilm: faFilm,\n faFilmAlt: faFilmAlt,\n faFilmCanister: faFilmCanister,\n faFilter: faFilter,\n faFingerprint: faFingerprint,\n faFire: faFire,\n faFireAlt: faFireAlt,\n faFireExtinguisher: faFireExtinguisher,\n faFireSmoke: faFireSmoke,\n faFireplace: faFireplace,\n faFirstAid: faFirstAid,\n faFish: faFish,\n faFishCooked: faFishCooked,\n faFistRaised: faFistRaised,\n faFlag: faFlag,\n faFlagAlt: faFlagAlt,\n faFlagCheckered: faFlagCheckered,\n faFlagUsa: faFlagUsa,\n faFlame: faFlame,\n faFlashlight: faFlashlight,\n faFlask: faFlask,\n faFlaskPoison: faFlaskPoison,\n faFlaskPotion: faFlaskPotion,\n faFlower: faFlower,\n faFlowerDaffodil: faFlowerDaffodil,\n faFlowerTulip: faFlowerTulip,\n faFlushed: faFlushed,\n faFlute: faFlute,\n faFluxCapacitor: faFluxCapacitor,\n faFog: faFog,\n faFolder: faFolder,\n faFolderDownload: faFolderDownload,\n faFolderMinus: faFolderMinus,\n faFolderOpen: faFolderOpen,\n faFolderPlus: faFolderPlus,\n faFolderTimes: faFolderTimes,\n faFolderTree: faFolderTree,\n faFolderUpload: faFolderUpload,\n faFolders: faFolders,\n faFont: faFont,\n faFontAwesomeLogoFull: faFontAwesomeLogoFull,\n faFontCase: faFontCase,\n faFootballBall: faFootballBall,\n faFootballHelmet: faFootballHelmet,\n faForklift: faForklift,\n faForward: faForward,\n faFragile: faFragile,\n faFrenchFries: faFrenchFries,\n faFrog: faFrog,\n faFrostyHead: faFrostyHead,\n faFrown: faFrown,\n faFrownOpen: faFrownOpen,\n faFunction: faFunction,\n faFunnelDollar: faFunnelDollar,\n faFutbol: faFutbol,\n faGalaxy: faGalaxy,\n faGameBoard: faGameBoard,\n faGameBoardAlt: faGameBoardAlt,\n faGameConsoleHandheld: faGameConsoleHandheld,\n faGamepad: faGamepad,\n faGamepadAlt: faGamepadAlt,\n faGarage: faGarage,\n faGarageCar: faGarageCar,\n faGarageOpen: faGarageOpen,\n faGasPump: faGasPump,\n faGasPumpSlash: faGasPumpSlash,\n faGavel: faGavel,\n faGem: faGem,\n faGenderless: faGenderless,\n faGhost: faGhost,\n faGift: faGift,\n faGiftCard: faGiftCard,\n faGifts: faGifts,\n faGingerbreadMan: faGingerbreadMan,\n faGlass: faGlass,\n faGlassChampagne: faGlassChampagne,\n faGlassCheers: faGlassCheers,\n faGlassCitrus: faGlassCitrus,\n faGlassMartini: faGlassMartini,\n faGlassMartiniAlt: faGlassMartiniAlt,\n faGlassWhiskey: faGlassWhiskey,\n faGlassWhiskeyRocks: faGlassWhiskeyRocks,\n faGlasses: faGlasses,\n faGlassesAlt: faGlassesAlt,\n faGlobe: faGlobe,\n faGlobeAfrica: faGlobeAfrica,\n faGlobeAmericas: faGlobeAmericas,\n faGlobeAsia: faGlobeAsia,\n faGlobeEurope: faGlobeEurope,\n faGlobeSnow: faGlobeSnow,\n faGlobeStand: faGlobeStand,\n faGolfBall: faGolfBall,\n faGolfClub: faGolfClub,\n faGopuram: faGopuram,\n faGraduationCap: faGraduationCap,\n faGramophone: faGramophone,\n faGreaterThan: faGreaterThan,\n faGreaterThanEqual: faGreaterThanEqual,\n faGrimace: faGrimace,\n faGrin: faGrin,\n faGrinAlt: faGrinAlt,\n faGrinBeam: faGrinBeam,\n faGrinBeamSweat: faGrinBeamSweat,\n faGrinHearts: faGrinHearts,\n faGrinSquint: faGrinSquint,\n faGrinSquintTears: faGrinSquintTears,\n faGrinStars: faGrinStars,\n faGrinTears: faGrinTears,\n faGrinTongue: faGrinTongue,\n faGrinTongueSquint: faGrinTongueSquint,\n faGrinTongueWink: faGrinTongueWink,\n faGrinWink: faGrinWink,\n faGripHorizontal: faGripHorizontal,\n faGripLines: faGripLines,\n faGripLinesVertical: faGripLinesVertical,\n faGripVertical: faGripVertical,\n faGuitar: faGuitar,\n faGuitarElectric: faGuitarElectric,\n faGuitars: faGuitars,\n faHSquare: faHSquare,\n faH1: faH1,\n faH2: faH2,\n faH3: faH3,\n faH4: faH4,\n faHamburger: faHamburger,\n faHammer: faHammer,\n faHammerWar: faHammerWar,\n faHamsa: faHamsa,\n faHandHeart: faHandHeart,\n faHandHolding: faHandHolding,\n faHandHoldingBox: faHandHoldingBox,\n faHandHoldingHeart: faHandHoldingHeart,\n faHandHoldingMagic: faHandHoldingMagic,\n faHandHoldingMedical: faHandHoldingMedical,\n faHandHoldingSeedling: faHandHoldingSeedling,\n faHandHoldingUsd: faHandHoldingUsd,\n faHandHoldingWater: faHandHoldingWater,\n faHandLizard: faHandLizard,\n faHandMiddleFinger: faHandMiddleFinger,\n faHandPaper: faHandPaper,\n faHandPeace: faHandPeace,\n faHandPointDown: faHandPointDown,\n faHandPointLeft: faHandPointLeft,\n faHandPointRight: faHandPointRight,\n faHandPointUp: faHandPointUp,\n faHandPointer: faHandPointer,\n faHandReceiving: faHandReceiving,\n faHandRock: faHandRock,\n faHandScissors: faHandScissors,\n faHandSparkles: faHandSparkles,\n faHandSpock: faHandSpock,\n faHands: faHands,\n faHandsHeart: faHandsHeart,\n faHandsHelping: faHandsHelping,\n faHandsUsd: faHandsUsd,\n faHandsWash: faHandsWash,\n faHandshake: faHandshake,\n faHandshakeAlt: faHandshakeAlt,\n faHandshakeAltSlash: faHandshakeAltSlash,\n faHandshakeSlash: faHandshakeSlash,\n faHanukiah: faHanukiah,\n faHardHat: faHardHat,\n faHashtag: faHashtag,\n faHatChef: faHatChef,\n faHatCowboy: faHatCowboy,\n faHatCowboySide: faHatCowboySide,\n faHatSanta: faHatSanta,\n faHatWinter: faHatWinter,\n faHatWitch: faHatWitch,\n faHatWizard: faHatWizard,\n faHdd: faHdd,\n faHeadSide: faHeadSide,\n faHeadSideBrain: faHeadSideBrain,\n faHeadSideCough: faHeadSideCough,\n faHeadSideCoughSlash: faHeadSideCoughSlash,\n faHeadSideHeadphones: faHeadSideHeadphones,\n faHeadSideMask: faHeadSideMask,\n faHeadSideMedical: faHeadSideMedical,\n faHeadSideVirus: faHeadSideVirus,\n faHeadVr: faHeadVr,\n faHeading: faHeading,\n faHeadphones: faHeadphones,\n faHeadphonesAlt: faHeadphonesAlt,\n faHeadset: faHeadset,\n faHeart: faHeart,\n faHeartBroken: faHeartBroken,\n faHeartCircle: faHeartCircle,\n faHeartRate: faHeartRate,\n faHeartSquare: faHeartSquare,\n faHeartbeat: faHeartbeat,\n faHeat: faHeat,\n faHelicopter: faHelicopter,\n faHelmetBattle: faHelmetBattle,\n faHexagon: faHexagon,\n faHighlighter: faHighlighter,\n faHiking: faHiking,\n faHippo: faHippo,\n faHistory: faHistory,\n faHockeyMask: faHockeyMask,\n faHockeyPuck: faHockeyPuck,\n faHockeySticks: faHockeySticks,\n faHollyBerry: faHollyBerry,\n faHome: faHome,\n faHomeAlt: faHomeAlt,\n faHomeHeart: faHomeHeart,\n faHomeLg: faHomeLg,\n faHomeLgAlt: faHomeLgAlt,\n faHoodCloak: faHoodCloak,\n faHorizontalRule: faHorizontalRule,\n faHorse: faHorse,\n faHorseHead: faHorseHead,\n faHorseSaddle: faHorseSaddle,\n faHospital: faHospital,\n faHospitalAlt: faHospitalAlt,\n faHospitalSymbol: faHospitalSymbol,\n faHospitalUser: faHospitalUser,\n faHospitals: faHospitals,\n faHotTub: faHotTub,\n faHotdog: faHotdog,\n faHotel: faHotel,\n faHourglass: faHourglass,\n faHourglassEnd: faHourglassEnd,\n faHourglassHalf: faHourglassHalf,\n faHourglassStart: faHourglassStart,\n faHouse: faHouse,\n faHouseDamage: faHouseDamage,\n faHouseDay: faHouseDay,\n faHouseFlood: faHouseFlood,\n faHouseLeave: faHouseLeave,\n faHouseNight: faHouseNight,\n faHouseReturn: faHouseReturn,\n faHouseSignal: faHouseSignal,\n faHouseUser: faHouseUser,\n faHryvnia: faHryvnia,\n faHumidity: faHumidity,\n faHurricane: faHurricane,\n faICursor: faICursor,\n faIceCream: faIceCream,\n faIceSkate: faIceSkate,\n faIcicles: faIcicles,\n faIcons: faIcons,\n faIconsAlt: faIconsAlt,\n faIdBadge: faIdBadge,\n faIdCard: faIdCard,\n faIdCardAlt: faIdCardAlt,\n faIgloo: faIgloo,\n faImage: faImage,\n faImagePolaroid: faImagePolaroid,\n faImages: faImages,\n faInbox: faInbox,\n faInboxIn: faInboxIn,\n faInboxOut: faInboxOut,\n faIndent: faIndent,\n faIndustry: faIndustry,\n faIndustryAlt: faIndustryAlt,\n faInfinity: faInfinity,\n faInfo: faInfo,\n faInfoCircle: faInfoCircle,\n faInfoSquare: faInfoSquare,\n faInhaler: faInhaler,\n faIntegral: faIntegral,\n faIntersection: faIntersection,\n faInventory: faInventory,\n faIslandTropical: faIslandTropical,\n faItalic: faItalic,\n faJackOLantern: faJackOLantern,\n faJedi: faJedi,\n faJoint: faJoint,\n faJournalWhills: faJournalWhills,\n faJoystick: faJoystick,\n faJug: faJug,\n faKaaba: faKaaba,\n faKazoo: faKazoo,\n faKerning: faKerning,\n faKey: faKey,\n faKeySkeleton: faKeySkeleton,\n faKeyboard: faKeyboard,\n faKeynote: faKeynote,\n faKhanda: faKhanda,\n faKidneys: faKidneys,\n faKiss: faKiss,\n faKissBeam: faKissBeam,\n faKissWinkHeart: faKissWinkHeart,\n faKite: faKite,\n faKiwiBird: faKiwiBird,\n faKnifeKitchen: faKnifeKitchen,\n faLambda: faLambda,\n faLamp: faLamp,\n faLampDesk: faLampDesk,\n faLampFloor: faLampFloor,\n faLandmark: faLandmark,\n faLandmarkAlt: faLandmarkAlt,\n faLanguage: faLanguage,\n faLaptop: faLaptop,\n faLaptopCode: faLaptopCode,\n faLaptopHouse: faLaptopHouse,\n faLaptopMedical: faLaptopMedical,\n faLasso: faLasso,\n faLaugh: faLaugh,\n faLaughBeam: faLaughBeam,\n faLaughSquint: faLaughSquint,\n faLaughWink: faLaughWink,\n faLayerGroup: faLayerGroup,\n faLayerMinus: faLayerMinus,\n faLayerPlus: faLayerPlus,\n faLeaf: faLeaf,\n faLeafHeart: faLeafHeart,\n faLeafMaple: faLeafMaple,\n faLeafOak: faLeafOak,\n faLemon: faLemon,\n faLessThan: faLessThan,\n faLessThanEqual: faLessThanEqual,\n faLevelDown: faLevelDown,\n faLevelDownAlt: faLevelDownAlt,\n faLevelUp: faLevelUp,\n faLevelUpAlt: faLevelUpAlt,\n faLifeRing: faLifeRing,\n faLightCeiling: faLightCeiling,\n faLightSwitch: faLightSwitch,\n faLightSwitchOff: faLightSwitchOff,\n faLightSwitchOn: faLightSwitchOn,\n faLightbulb: faLightbulb,\n faLightbulbDollar: faLightbulbDollar,\n faLightbulbExclamation: faLightbulbExclamation,\n faLightbulbOn: faLightbulbOn,\n faLightbulbSlash: faLightbulbSlash,\n faLightsHoliday: faLightsHoliday,\n faLineColumns: faLineColumns,\n faLineHeight: faLineHeight,\n faLink: faLink,\n faLips: faLips,\n faLiraSign: faLiraSign,\n faList: faList,\n faListAlt: faListAlt,\n faListMusic: faListMusic,\n faListOl: faListOl,\n faListUl: faListUl,\n faLocation: faLocation,\n faLocationArrow: faLocationArrow,\n faLocationCircle: faLocationCircle,\n faLocationSlash: faLocationSlash,\n faLock: faLock,\n faLockAlt: faLockAlt,\n faLockOpen: faLockOpen,\n faLockOpenAlt: faLockOpenAlt,\n faLongArrowAltDown: faLongArrowAltDown,\n faLongArrowAltLeft: faLongArrowAltLeft,\n faLongArrowAltRight: faLongArrowAltRight,\n faLongArrowAltUp: faLongArrowAltUp,\n faLongArrowDown: faLongArrowDown,\n faLongArrowLeft: faLongArrowLeft,\n faLongArrowRight: faLongArrowRight,\n faLongArrowUp: faLongArrowUp,\n faLoveseat: faLoveseat,\n faLowVision: faLowVision,\n faLuchador: faLuchador,\n faLuggageCart: faLuggageCart,\n faLungs: faLungs,\n faLungsVirus: faLungsVirus,\n faMace: faMace,\n faMagic: faMagic,\n faMagnet: faMagnet,\n faMailBulk: faMailBulk,\n faMailbox: faMailbox,\n faMale: faMale,\n faMandolin: faMandolin,\n faMap: faMap,\n faMapMarked: faMapMarked,\n faMapMarkedAlt: faMapMarkedAlt,\n faMapMarker: faMapMarker,\n faMapMarkerAlt: faMapMarkerAlt,\n faMapMarkerAltSlash: faMapMarkerAltSlash,\n faMapMarkerCheck: faMapMarkerCheck,\n faMapMarkerEdit: faMapMarkerEdit,\n faMapMarkerExclamation: faMapMarkerExclamation,\n faMapMarkerMinus: faMapMarkerMinus,\n faMapMarkerPlus: faMapMarkerPlus,\n faMapMarkerQuestion: faMapMarkerQuestion,\n faMapMarkerSlash: faMapMarkerSlash,\n faMapMarkerSmile: faMapMarkerSmile,\n faMapMarkerTimes: faMapMarkerTimes,\n faMapPin: faMapPin,\n faMapSigns: faMapSigns,\n faMarker: faMarker,\n faMars: faMars,\n faMarsDouble: faMarsDouble,\n faMarsStroke: faMarsStroke,\n faMarsStrokeH: faMarsStrokeH,\n faMarsStrokeV: faMarsStrokeV,\n faMask: faMask,\n faMeat: faMeat,\n faMedal: faMedal,\n faMedkit: faMedkit,\n faMegaphone: faMegaphone,\n faMeh: faMeh,\n faMehBlank: faMehBlank,\n faMehRollingEyes: faMehRollingEyes,\n faMemory: faMemory,\n faMenorah: faMenorah,\n faMercury: faMercury,\n faMeteor: faMeteor,\n faMicrochip: faMicrochip,\n faMicrophone: faMicrophone,\n faMicrophoneAlt: faMicrophoneAlt,\n faMicrophoneAltSlash: faMicrophoneAltSlash,\n faMicrophoneSlash: faMicrophoneSlash,\n faMicrophoneStand: faMicrophoneStand,\n faMicroscope: faMicroscope,\n faMicrowave: faMicrowave,\n faMindShare: faMindShare,\n faMinus: faMinus,\n faMinusCircle: faMinusCircle,\n faMinusHexagon: faMinusHexagon,\n faMinusOctagon: faMinusOctagon,\n faMinusSquare: faMinusSquare,\n faMistletoe: faMistletoe,\n faMitten: faMitten,\n faMobile: faMobile,\n faMobileAlt: faMobileAlt,\n faMobileAndroid: faMobileAndroid,\n faMobileAndroidAlt: faMobileAndroidAlt,\n faMoneyBill: faMoneyBill,\n faMoneyBillAlt: faMoneyBillAlt,\n faMoneyBillWave: faMoneyBillWave,\n faMoneyBillWaveAlt: faMoneyBillWaveAlt,\n faMoneyCheck: faMoneyCheck,\n faMoneyCheckAlt: faMoneyCheckAlt,\n faMoneyCheckEdit: faMoneyCheckEdit,\n faMoneyCheckEditAlt: faMoneyCheckEditAlt,\n faMonitorHeartRate: faMonitorHeartRate,\n faMonkey: faMonkey,\n faMonument: faMonument,\n faMoon: faMoon,\n faMoonCloud: faMoonCloud,\n faMoonStars: faMoonStars,\n faMortarPestle: faMortarPestle,\n faMosque: faMosque,\n faMotorcycle: faMotorcycle,\n faMountain: faMountain,\n faMountains: faMountains,\n faMouse: faMouse,\n faMouseAlt: faMouseAlt,\n faMousePointer: faMousePointer,\n faMp3Player: faMp3Player,\n faMug: faMug,\n faMugHot: faMugHot,\n faMugMarshmallows: faMugMarshmallows,\n faMugTea: faMugTea,\n faMusic: faMusic,\n faMusicAlt: faMusicAlt,\n faMusicAltSlash: faMusicAltSlash,\n faMusicSlash: faMusicSlash,\n faNarwhal: faNarwhal,\n faNetworkWired: faNetworkWired,\n faNeuter: faNeuter,\n faNewspaper: faNewspaper,\n faNotEqual: faNotEqual,\n faNotesMedical: faNotesMedical,\n faObjectGroup: faObjectGroup,\n faObjectUngroup: faObjectUngroup,\n faOctagon: faOctagon,\n faOilCan: faOilCan,\n faOilTemp: faOilTemp,\n faOm: faOm,\n faOmega: faOmega,\n faOrnament: faOrnament,\n faOtter: faOtter,\n faOutdent: faOutdent,\n faOutlet: faOutlet,\n faOven: faOven,\n faOverline: faOverline,\n faPageBreak: faPageBreak,\n faPager: faPager,\n faPaintBrush: faPaintBrush,\n faPaintBrushAlt: faPaintBrushAlt,\n faPaintRoller: faPaintRoller,\n faPalette: faPalette,\n faPallet: faPallet,\n faPalletAlt: faPalletAlt,\n faPaperPlane: faPaperPlane,\n faPaperclip: faPaperclip,\n faParachuteBox: faParachuteBox,\n faParagraph: faParagraph,\n faParagraphRtl: faParagraphRtl,\n faParking: faParking,\n faParkingCircle: faParkingCircle,\n faParkingCircleSlash: faParkingCircleSlash,\n faParkingSlash: faParkingSlash,\n faPassport: faPassport,\n faPastafarianism: faPastafarianism,\n faPaste: faPaste,\n faPause: faPause,\n faPauseCircle: faPauseCircle,\n faPaw: faPaw,\n faPawAlt: faPawAlt,\n faPawClaws: faPawClaws,\n faPeace: faPeace,\n faPegasus: faPegasus,\n faPen: faPen,\n faPenAlt: faPenAlt,\n faPenFancy: faPenFancy,\n faPenNib: faPenNib,\n faPenSquare: faPenSquare,\n faPencil: faPencil,\n faPencilAlt: faPencilAlt,\n faPencilPaintbrush: faPencilPaintbrush,\n faPencilRuler: faPencilRuler,\n faPennant: faPennant,\n faPeopleArrows: faPeopleArrows,\n faPeopleCarry: faPeopleCarry,\n faPepperHot: faPepperHot,\n faPercent: faPercent,\n faPercentage: faPercentage,\n faPersonBooth: faPersonBooth,\n faPersonCarry: faPersonCarry,\n faPersonDolly: faPersonDolly,\n faPersonDollyEmpty: faPersonDollyEmpty,\n faPersonSign: faPersonSign,\n faPhone: faPhone,\n faPhoneAlt: faPhoneAlt,\n faPhoneLaptop: faPhoneLaptop,\n faPhoneOffice: faPhoneOffice,\n faPhonePlus: faPhonePlus,\n faPhoneRotary: faPhoneRotary,\n faPhoneSlash: faPhoneSlash,\n faPhoneSquare: faPhoneSquare,\n faPhoneSquareAlt: faPhoneSquareAlt,\n faPhoneVolume: faPhoneVolume,\n faPhotoVideo: faPhotoVideo,\n faPi: faPi,\n faPiano: faPiano,\n faPianoKeyboard: faPianoKeyboard,\n faPie: faPie,\n faPig: faPig,\n faPiggyBank: faPiggyBank,\n faPills: faPills,\n faPizza: faPizza,\n faPizzaSlice: faPizzaSlice,\n faPlaceOfWorship: faPlaceOfWorship,\n faPlane: faPlane,\n faPlaneAlt: faPlaneAlt,\n faPlaneArrival: faPlaneArrival,\n faPlaneDeparture: faPlaneDeparture,\n faPlaneSlash: faPlaneSlash,\n faPlanetMoon: faPlanetMoon,\n faPlanetRinged: faPlanetRinged,\n faPlay: faPlay,\n faPlayCircle: faPlayCircle,\n faPlug: faPlug,\n faPlus: faPlus,\n faPlusCircle: faPlusCircle,\n faPlusHexagon: faPlusHexagon,\n faPlusOctagon: faPlusOctagon,\n faPlusSquare: faPlusSquare,\n faPodcast: faPodcast,\n faPodium: faPodium,\n faPodiumStar: faPodiumStar,\n faPoliceBox: faPoliceBox,\n faPoll: faPoll,\n faPollH: faPollH,\n faPollPeople: faPollPeople,\n faPoo: faPoo,\n faPooStorm: faPooStorm,\n faPoop: faPoop,\n faPopcorn: faPopcorn,\n faPortalEnter: faPortalEnter,\n faPortalExit: faPortalExit,\n faPortrait: faPortrait,\n faPoundSign: faPoundSign,\n faPowerOff: faPowerOff,\n faPray: faPray,\n faPrayingHands: faPrayingHands,\n faPrescription: faPrescription,\n faPrescriptionBottle: faPrescriptionBottle,\n faPrescriptionBottleAlt: faPrescriptionBottleAlt,\n faPresentation: faPresentation,\n faPrint: faPrint,\n faPrintSearch: faPrintSearch,\n faPrintSlash: faPrintSlash,\n faProcedures: faProcedures,\n faProjectDiagram: faProjectDiagram,\n faProjector: faProjector,\n faPumpMedical: faPumpMedical,\n faPumpSoap: faPumpSoap,\n faPumpkin: faPumpkin,\n faPuzzlePiece: faPuzzlePiece,\n faQrcode: faQrcode,\n faQuestion: faQuestion,\n faQuestionCircle: faQuestionCircle,\n faQuestionSquare: faQuestionSquare,\n faQuidditch: faQuidditch,\n faQuoteLeft: faQuoteLeft,\n faQuoteRight: faQuoteRight,\n faQuran: faQuran,\n faRabbit: faRabbit,\n faRabbitFast: faRabbitFast,\n faRacquet: faRacquet,\n faRadar: faRadar,\n faRadiation: faRadiation,\n faRadiationAlt: faRadiationAlt,\n faRadio: faRadio,\n faRadioAlt: faRadioAlt,\n faRainbow: faRainbow,\n faRaindrops: faRaindrops,\n faRam: faRam,\n faRampLoading: faRampLoading,\n faRandom: faRandom,\n faRaygun: faRaygun,\n faReceipt: faReceipt,\n faRecordVinyl: faRecordVinyl,\n faRectangleLandscape: faRectangleLandscape,\n faRectanglePortrait: faRectanglePortrait,\n faRectangleWide: faRectangleWide,\n faRecycle: faRecycle,\n faRedo: faRedo,\n faRedoAlt: faRedoAlt,\n faRefrigerator: faRefrigerator,\n faRegistered: faRegistered,\n faRemoveFormat: faRemoveFormat,\n faRepeat: faRepeat,\n faRepeat1: faRepeat1,\n faRepeat1Alt: faRepeat1Alt,\n faRepeatAlt: faRepeatAlt,\n faReply: faReply,\n faReplyAll: faReplyAll,\n faRepublican: faRepublican,\n faRestroom: faRestroom,\n faRetweet: faRetweet,\n faRetweetAlt: faRetweetAlt,\n faRibbon: faRibbon,\n faRing: faRing,\n faRingsWedding: faRingsWedding,\n faRoad: faRoad,\n faRobot: faRobot,\n faRocket: faRocket,\n faRocketLaunch: faRocketLaunch,\n faRoute: faRoute,\n faRouteHighway: faRouteHighway,\n faRouteInterstate: faRouteInterstate,\n faRouter: faRouter,\n faRss: faRss,\n faRssSquare: faRssSquare,\n faRubleSign: faRubleSign,\n faRuler: faRuler,\n faRulerCombined: faRulerCombined,\n faRulerHorizontal: faRulerHorizontal,\n faRulerTriangle: faRulerTriangle,\n faRulerVertical: faRulerVertical,\n faRunning: faRunning,\n faRupeeSign: faRupeeSign,\n faRv: faRv,\n faSack: faSack,\n faSackDollar: faSackDollar,\n faSadCry: faSadCry,\n faSadTear: faSadTear,\n faSalad: faSalad,\n faSandwich: faSandwich,\n faSatellite: faSatellite,\n faSatelliteDish: faSatelliteDish,\n faSausage: faSausage,\n faSave: faSave,\n faSaxHot: faSaxHot,\n faSaxophone: faSaxophone,\n faScalpel: faScalpel,\n faScalpelPath: faScalpelPath,\n faScanner: faScanner,\n faScannerImage: faScannerImage,\n faScannerKeyboard: faScannerKeyboard,\n faScannerTouchscreen: faScannerTouchscreen,\n faScarecrow: faScarecrow,\n faScarf: faScarf,\n faSchool: faSchool,\n faScrewdriver: faScrewdriver,\n faScroll: faScroll,\n faScrollOld: faScrollOld,\n faScrubber: faScrubber,\n faScythe: faScythe,\n faSdCard: faSdCard,\n faSearch: faSearch,\n faSearchDollar: faSearchDollar,\n faSearchLocation: faSearchLocation,\n faSearchMinus: faSearchMinus,\n faSearchPlus: faSearchPlus,\n faSeedling: faSeedling,\n faSendBack: faSendBack,\n faSendBackward: faSendBackward,\n faSensor: faSensor,\n faSensorAlert: faSensorAlert,\n faSensorFire: faSensorFire,\n faSensorOn: faSensorOn,\n faSensorSmoke: faSensorSmoke,\n faServer: faServer,\n faShapes: faShapes,\n faShare: faShare,\n faShareAll: faShareAll,\n faShareAlt: faShareAlt,\n faShareAltSquare: faShareAltSquare,\n faShareSquare: faShareSquare,\n faSheep: faSheep,\n faShekelSign: faShekelSign,\n faShield: faShield,\n faShieldAlt: faShieldAlt,\n faShieldCheck: faShieldCheck,\n faShieldCross: faShieldCross,\n faShieldVirus: faShieldVirus,\n faShip: faShip,\n faShippingFast: faShippingFast,\n faShippingTimed: faShippingTimed,\n faShishKebab: faShishKebab,\n faShoePrints: faShoePrints,\n faShoppingBag: faShoppingBag,\n faShoppingBasket: faShoppingBasket,\n faShoppingCart: faShoppingCart,\n faShovel: faShovel,\n faShovelSnow: faShovelSnow,\n faShower: faShower,\n faShredder: faShredder,\n faShuttleVan: faShuttleVan,\n faShuttlecock: faShuttlecock,\n faSickle: faSickle,\n faSigma: faSigma,\n faSign: faSign,\n faSignIn: faSignIn,\n faSignInAlt: faSignInAlt,\n faSignLanguage: faSignLanguage,\n faSignOut: faSignOut,\n faSignOutAlt: faSignOutAlt,\n faSignal: faSignal,\n faSignal1: faSignal1,\n faSignal2: faSignal2,\n faSignal3: faSignal3,\n faSignal4: faSignal4,\n faSignalAlt: faSignalAlt,\n faSignalAlt1: faSignalAlt1,\n faSignalAlt2: faSignalAlt2,\n faSignalAlt3: faSignalAlt3,\n faSignalAltSlash: faSignalAltSlash,\n faSignalSlash: faSignalSlash,\n faSignalStream: faSignalStream,\n faSignature: faSignature,\n faSimCard: faSimCard,\n faSink: faSink,\n faSiren: faSiren,\n faSirenOn: faSirenOn,\n faSitemap: faSitemap,\n faSkating: faSkating,\n faSkeleton: faSkeleton,\n faSkiJump: faSkiJump,\n faSkiLift: faSkiLift,\n faSkiing: faSkiing,\n faSkiingNordic: faSkiingNordic,\n faSkull: faSkull,\n faSkullCow: faSkullCow,\n faSkullCrossbones: faSkullCrossbones,\n faSlash: faSlash,\n faSledding: faSledding,\n faSleigh: faSleigh,\n faSlidersH: faSlidersH,\n faSlidersHSquare: faSlidersHSquare,\n faSlidersV: faSlidersV,\n faSlidersVSquare: faSlidersVSquare,\n faSmile: faSmile,\n faSmileBeam: faSmileBeam,\n faSmilePlus: faSmilePlus,\n faSmileWink: faSmileWink,\n faSmog: faSmog,\n faSmoke: faSmoke,\n faSmoking: faSmoking,\n faSmokingBan: faSmokingBan,\n faSms: faSms,\n faSnake: faSnake,\n faSnooze: faSnooze,\n faSnowBlowing: faSnowBlowing,\n faSnowboarding: faSnowboarding,\n faSnowflake: faSnowflake,\n faSnowflakes: faSnowflakes,\n faSnowman: faSnowman,\n faSnowmobile: faSnowmobile,\n faSnowplow: faSnowplow,\n faSoap: faSoap,\n faSocks: faSocks,\n faSolarPanel: faSolarPanel,\n faSolarSystem: faSolarSystem,\n faSort: faSort,\n faSortAlphaDown: faSortAlphaDown,\n faSortAlphaDownAlt: faSortAlphaDownAlt,\n faSortAlphaUp: faSortAlphaUp,\n faSortAlphaUpAlt: faSortAlphaUpAlt,\n faSortAlt: faSortAlt,\n faSortAmountDown: faSortAmountDown,\n faSortAmountDownAlt: faSortAmountDownAlt,\n faSortAmountUp: faSortAmountUp,\n faSortAmountUpAlt: faSortAmountUpAlt,\n faSortCircle: faSortCircle,\n faSortCircleDown: faSortCircleDown,\n faSortCircleUp: faSortCircleUp,\n faSortDown: faSortDown,\n faSortNumericDown: faSortNumericDown,\n faSortNumericDownAlt: faSortNumericDownAlt,\n faSortNumericUp: faSortNumericUp,\n faSortNumericUpAlt: faSortNumericUpAlt,\n faSortShapesDown: faSortShapesDown,\n faSortShapesDownAlt: faSortShapesDownAlt,\n faSortShapesUp: faSortShapesUp,\n faSortShapesUpAlt: faSortShapesUpAlt,\n faSortSizeDown: faSortSizeDown,\n faSortSizeDownAlt: faSortSizeDownAlt,\n faSortSizeUp: faSortSizeUp,\n faSortSizeUpAlt: faSortSizeUpAlt,\n faSortUp: faSortUp,\n faSoup: faSoup,\n faSpa: faSpa,\n faSpaceShuttle: faSpaceShuttle,\n faSpaceStationMoon: faSpaceStationMoon,\n faSpaceStationMoonAlt: faSpaceStationMoonAlt,\n faSpade: faSpade,\n faSparkles: faSparkles,\n faSpeaker: faSpeaker,\n faSpeakers: faSpeakers,\n faSpellCheck: faSpellCheck,\n faSpider: faSpider,\n faSpiderBlackWidow: faSpiderBlackWidow,\n faSpiderWeb: faSpiderWeb,\n faSpinner: faSpinner,\n faSpinnerThird: faSpinnerThird,\n faSplotch: faSplotch,\n faSprayCan: faSprayCan,\n faSprinkler: faSprinkler,\n faSquare: faSquare,\n faSquareFull: faSquareFull,\n faSquareRoot: faSquareRoot,\n faSquareRootAlt: faSquareRootAlt,\n faSquirrel: faSquirrel,\n faStaff: faStaff,\n faStamp: faStamp,\n faStar: faStar,\n faStarAndCrescent: faStarAndCrescent,\n faStarChristmas: faStarChristmas,\n faStarExclamation: faStarExclamation,\n faStarHalf: faStarHalf,\n faStarHalfAlt: faStarHalfAlt,\n faStarOfDavid: faStarOfDavid,\n faStarOfLife: faStarOfLife,\n faStarShooting: faStarShooting,\n faStarfighter: faStarfighter,\n faStarfighterAlt: faStarfighterAlt,\n faStars: faStars,\n faStarship: faStarship,\n faStarshipFreighter: faStarshipFreighter,\n faSteak: faSteak,\n faSteeringWheel: faSteeringWheel,\n faStepBackward: faStepBackward,\n faStepForward: faStepForward,\n faStethoscope: faStethoscope,\n faStickyNote: faStickyNote,\n faStocking: faStocking,\n faStomach: faStomach,\n faStop: faStop,\n faStopCircle: faStopCircle,\n faStopwatch: faStopwatch,\n faStopwatch20: faStopwatch20,\n faStore: faStore,\n faStoreAlt: faStoreAlt,\n faStoreAltSlash: faStoreAltSlash,\n faStoreSlash: faStoreSlash,\n faStream: faStream,\n faStreetView: faStreetView,\n faStretcher: faStretcher,\n faStrikethrough: faStrikethrough,\n faStroopwafel: faStroopwafel,\n faSubscript: faSubscript,\n faSubway: faSubway,\n faSuitcase: faSuitcase,\n faSuitcaseRolling: faSuitcaseRolling,\n faSun: faSun,\n faSunCloud: faSunCloud,\n faSunDust: faSunDust,\n faSunHaze: faSunHaze,\n faSunglasses: faSunglasses,\n faSunrise: faSunrise,\n faSunset: faSunset,\n faSuperscript: faSuperscript,\n faSurprise: faSurprise,\n faSwatchbook: faSwatchbook,\n faSwimmer: faSwimmer,\n faSwimmingPool: faSwimmingPool,\n faSword: faSword,\n faSwordLaser: faSwordLaser,\n faSwordLaserAlt: faSwordLaserAlt,\n faSwords: faSwords,\n faSwordsLaser: faSwordsLaser,\n faSynagogue: faSynagogue,\n faSync: faSync,\n faSyncAlt: faSyncAlt,\n faSyringe: faSyringe,\n faTable: faTable,\n faTableTennis: faTableTennis,\n faTablet: faTablet,\n faTabletAlt: faTabletAlt,\n faTabletAndroid: faTabletAndroid,\n faTabletAndroidAlt: faTabletAndroidAlt,\n faTabletRugged: faTabletRugged,\n faTablets: faTablets,\n faTachometer: faTachometer,\n faTachometerAlt: faTachometerAlt,\n faTachometerAltAverage: faTachometerAltAverage,\n faTachometerAltFast: faTachometerAltFast,\n faTachometerAltFastest: faTachometerAltFastest,\n faTachometerAltSlow: faTachometerAltSlow,\n faTachometerAltSlowest: faTachometerAltSlowest,\n faTachometerAverage: faTachometerAverage,\n faTachometerFast: faTachometerFast,\n faTachometerFastest: faTachometerFastest,\n faTachometerSlow: faTachometerSlow,\n faTachometerSlowest: faTachometerSlowest,\n faTaco: faTaco,\n faTag: faTag,\n faTags: faTags,\n faTally: faTally,\n faTanakh: faTanakh,\n faTape: faTape,\n faTasks: faTasks,\n faTasksAlt: faTasksAlt,\n faTaxi: faTaxi,\n faTeeth: faTeeth,\n faTeethOpen: faTeethOpen,\n faTelescope: faTelescope,\n faTemperatureDown: faTemperatureDown,\n faTemperatureFrigid: faTemperatureFrigid,\n faTemperatureHigh: faTemperatureHigh,\n faTemperatureHot: faTemperatureHot,\n faTemperatureLow: faTemperatureLow,\n faTemperatureUp: faTemperatureUp,\n faTenge: faTenge,\n faTennisBall: faTennisBall,\n faTerminal: faTerminal,\n faText: faText,\n faTextHeight: faTextHeight,\n faTextSize: faTextSize,\n faTextWidth: faTextWidth,\n faTh: faTh,\n faThLarge: faThLarge,\n faThList: faThList,\n faTheaterMasks: faTheaterMasks,\n faThermometer: faThermometer,\n faThermometerEmpty: faThermometerEmpty,\n faThermometerFull: faThermometerFull,\n faThermometerHalf: faThermometerHalf,\n faThermometerQuarter: faThermometerQuarter,\n faThermometerThreeQuarters: faThermometerThreeQuarters,\n faTheta: faTheta,\n faThumbsDown: faThumbsDown,\n faThumbsUp: faThumbsUp,\n faThumbtack: faThumbtack,\n faThunderstorm: faThunderstorm,\n faThunderstormMoon: faThunderstormMoon,\n faThunderstormSun: faThunderstormSun,\n faTicket: faTicket,\n faTicketAlt: faTicketAlt,\n faTilde: faTilde,\n faTimes: faTimes,\n faTimesCircle: faTimesCircle,\n faTimesHexagon: faTimesHexagon,\n faTimesOctagon: faTimesOctagon,\n faTimesSquare: faTimesSquare,\n faTint: faTint,\n faTintSlash: faTintSlash,\n faTire: faTire,\n faTireFlat: faTireFlat,\n faTirePressureWarning: faTirePressureWarning,\n faTireRugged: faTireRugged,\n faTired: faTired,\n faToggleOff: faToggleOff,\n faToggleOn: faToggleOn,\n faToilet: faToilet,\n faToiletPaper: faToiletPaper,\n faToiletPaperAlt: faToiletPaperAlt,\n faToiletPaperSlash: faToiletPaperSlash,\n faTombstone: faTombstone,\n faTombstoneAlt: faTombstoneAlt,\n faToolbox: faToolbox,\n faTools: faTools,\n faTooth: faTooth,\n faToothbrush: faToothbrush,\n faTorah: faTorah,\n faToriiGate: faToriiGate,\n faTornado: faTornado,\n faTractor: faTractor,\n faTrademark: faTrademark,\n faTrafficCone: faTrafficCone,\n faTrafficLight: faTrafficLight,\n faTrafficLightGo: faTrafficLightGo,\n faTrafficLightSlow: faTrafficLightSlow,\n faTrafficLightStop: faTrafficLightStop,\n faTrailer: faTrailer,\n faTrain: faTrain,\n faTram: faTram,\n faTransgender: faTransgender,\n faTransgenderAlt: faTransgenderAlt,\n faTransporter: faTransporter,\n faTransporter1: faTransporter1,\n faTransporter2: faTransporter2,\n faTransporter3: faTransporter3,\n faTransporterEmpty: faTransporterEmpty,\n faTrash: faTrash,\n faTrashAlt: faTrashAlt,\n faTrashRestore: faTrashRestore,\n faTrashRestoreAlt: faTrashRestoreAlt,\n faTrashUndo: faTrashUndo,\n faTrashUndoAlt: faTrashUndoAlt,\n faTreasureChest: faTreasureChest,\n faTree: faTree,\n faTreeAlt: faTreeAlt,\n faTreeChristmas: faTreeChristmas,\n faTreeDecorated: faTreeDecorated,\n faTreeLarge: faTreeLarge,\n faTreePalm: faTreePalm,\n faTrees: faTrees,\n faTriangle: faTriangle,\n faTriangleMusic: faTriangleMusic,\n faTrophy: faTrophy,\n faTrophyAlt: faTrophyAlt,\n faTruck: faTruck,\n faTruckContainer: faTruckContainer,\n faTruckCouch: faTruckCouch,\n faTruckLoading: faTruckLoading,\n faTruckMonster: faTruckMonster,\n faTruckMoving: faTruckMoving,\n faTruckPickup: faTruckPickup,\n faTruckPlow: faTruckPlow,\n faTruckRamp: faTruckRamp,\n faTrumpet: faTrumpet,\n faTshirt: faTshirt,\n faTty: faTty,\n faTurkey: faTurkey,\n faTurntable: faTurntable,\n faTurtle: faTurtle,\n faTv: faTv,\n faTvAlt: faTvAlt,\n faTvMusic: faTvMusic,\n faTvRetro: faTvRetro,\n faTypewriter: faTypewriter,\n faUfo: faUfo,\n faUfoBeam: faUfoBeam,\n faUmbrella: faUmbrella,\n faUmbrellaBeach: faUmbrellaBeach,\n faUnderline: faUnderline,\n faUndo: faUndo,\n faUndoAlt: faUndoAlt,\n faUnicorn: faUnicorn,\n faUnion: faUnion,\n faUniversalAccess: faUniversalAccess,\n faUniversity: faUniversity,\n faUnlink: faUnlink,\n faUnlock: faUnlock,\n faUnlockAlt: faUnlockAlt,\n faUpload: faUpload,\n faUsbDrive: faUsbDrive,\n faUsdCircle: faUsdCircle,\n faUsdSquare: faUsdSquare,\n faUser: faUser,\n faUserAlien: faUserAlien,\n faUserAlt: faUserAlt,\n faUserAltSlash: faUserAltSlash,\n faUserAstronaut: faUserAstronaut,\n faUserChart: faUserChart,\n faUserCheck: faUserCheck,\n faUserCircle: faUserCircle,\n faUserClock: faUserClock,\n faUserCog: faUserCog,\n faUserCowboy: faUserCowboy,\n faUserCrown: faUserCrown,\n faUserEdit: faUserEdit,\n faUserFriends: faUserFriends,\n faUserGraduate: faUserGraduate,\n faUserHardHat: faUserHardHat,\n faUserHeadset: faUserHeadset,\n faUserInjured: faUserInjured,\n faUserLock: faUserLock,\n faUserMd: faUserMd,\n faUserMdChat: faUserMdChat,\n faUserMinus: faUserMinus,\n faUserMusic: faUserMusic,\n faUserNinja: faUserNinja,\n faUserNurse: faUserNurse,\n faUserPlus: faUserPlus,\n faUserRobot: faUserRobot,\n faUserSecret: faUserSecret,\n faUserShield: faUserShield,\n faUserSlash: faUserSlash,\n faUserTag: faUserTag,\n faUserTie: faUserTie,\n faUserTimes: faUserTimes,\n faUserUnlock: faUserUnlock,\n faUserVisor: faUserVisor,\n faUsers: faUsers,\n faUsersClass: faUsersClass,\n faUsersCog: faUsersCog,\n faUsersCrown: faUsersCrown,\n faUsersMedical: faUsersMedical,\n faUsersSlash: faUsersSlash,\n faUtensilFork: faUtensilFork,\n faUtensilKnife: faUtensilKnife,\n faUtensilSpoon: faUtensilSpoon,\n faUtensils: faUtensils,\n faUtensilsAlt: faUtensilsAlt,\n faVacuum: faVacuum,\n faVacuumRobot: faVacuumRobot,\n faValueAbsolute: faValueAbsolute,\n faVectorSquare: faVectorSquare,\n faVenus: faVenus,\n faVenusDouble: faVenusDouble,\n faVenusMars: faVenusMars,\n faVest: faVest,\n faVestPatches: faVestPatches,\n faVhs: faVhs,\n faVial: faVial,\n faVials: faVials,\n faVideo: faVideo,\n faVideoPlus: faVideoPlus,\n faVideoSlash: faVideoSlash,\n faVihara: faVihara,\n faViolin: faViolin,\n faVirus: faVirus,\n faVirusSlash: faVirusSlash,\n faViruses: faViruses,\n faVoicemail: faVoicemail,\n faVolcano: faVolcano,\n faVolleyballBall: faVolleyballBall,\n faVolume: faVolume,\n faVolumeDown: faVolumeDown,\n faVolumeMute: faVolumeMute,\n faVolumeOff: faVolumeOff,\n faVolumeSlash: faVolumeSlash,\n faVolumeUp: faVolumeUp,\n faVoteNay: faVoteNay,\n faVoteYea: faVoteYea,\n faVrCardboard: faVrCardboard,\n faWagonCovered: faWagonCovered,\n faWalker: faWalker,\n faWalkieTalkie: faWalkieTalkie,\n faWalking: faWalking,\n faWallet: faWallet,\n faWand: faWand,\n faWandMagic: faWandMagic,\n faWarehouse: faWarehouse,\n faWarehouseAlt: faWarehouseAlt,\n faWasher: faWasher,\n faWatch: faWatch,\n faWatchCalculator: faWatchCalculator,\n faWatchFitness: faWatchFitness,\n faWater: faWater,\n faWaterLower: faWaterLower,\n faWaterRise: faWaterRise,\n faWaveSine: faWaveSine,\n faWaveSquare: faWaveSquare,\n faWaveTriangle: faWaveTriangle,\n faWaveform: faWaveform,\n faWaveformPath: faWaveformPath,\n faWebcam: faWebcam,\n faWebcamSlash: faWebcamSlash,\n faWeight: faWeight,\n faWeightHanging: faWeightHanging,\n faWhale: faWhale,\n faWheat: faWheat,\n faWheelchair: faWheelchair,\n faWhistle: faWhistle,\n faWifi: faWifi,\n faWifi1: faWifi1,\n faWifi2: faWifi2,\n faWifiSlash: faWifiSlash,\n faWind: faWind,\n faWindTurbine: faWindTurbine,\n faWindWarning: faWindWarning,\n faWindow: faWindow,\n faWindowAlt: faWindowAlt,\n faWindowClose: faWindowClose,\n faWindowFrame: faWindowFrame,\n faWindowFrameOpen: faWindowFrameOpen,\n faWindowMaximize: faWindowMaximize,\n faWindowMinimize: faWindowMinimize,\n faWindowRestore: faWindowRestore,\n faWindsock: faWindsock,\n faWineBottle: faWineBottle,\n faWineGlass: faWineGlass,\n faWineGlassAlt: faWineGlassAlt,\n faWonSign: faWonSign,\n faWreath: faWreath,\n faWrench: faWrench,\n faXRay: faXRay,\n faYenSign: faYenSign,\n faYinYang: faYinYang\n};\n\nexport { _iconsCache as fas, prefix, faAbacus, faAcorn, faAd, faAddressBook, faAddressCard, faAdjust, faAirConditioner, faAirFreshener, faAlarmClock, faAlarmExclamation, faAlarmPlus, faAlarmSnooze, faAlbum, faAlbumCollection, faAlicorn, faAlien, faAlienMonster, faAlignCenter, faAlignJustify, faAlignLeft, faAlignRight, faAlignSlash, faAllergies, faAmbulance, faAmericanSignLanguageInterpreting, faAmpGuitar, faAnalytics, faAnchor, faAngel, faAngleDoubleDown, faAngleDoubleLeft, faAngleDoubleRight, faAngleDoubleUp, faAngleDown, faAngleLeft, faAngleRight, faAngleUp, faAngry, faAnkh, faAppleAlt, faAppleCrate, faArchive, faArchway, faArrowAltCircleDown, faArrowAltCircleLeft, faArrowAltCircleRight, faArrowAltCircleUp, faArrowAltDown, faArrowAltFromBottom, faArrowAltFromLeft, faArrowAltFromRight, faArrowAltFromTop, faArrowAltLeft, faArrowAltRight, faArrowAltSquareDown, faArrowAltSquareLeft, faArrowAltSquareRight, faArrowAltSquareUp, faArrowAltToBottom, faArrowAltToLeft, faArrowAltToRight, faArrowAltToTop, faArrowAltUp, faArrowCircleDown, faArrowCircleLeft, faArrowCircleRight, faArrowCircleUp, faArrowDown, faArrowFromBottom, faArrowFromLeft, faArrowFromRight, faArrowFromTop, faArrowLeft, faArrowRight, faArrowSquareDown, faArrowSquareLeft, faArrowSquareRight, faArrowSquareUp, faArrowToBottom, faArrowToLeft, faArrowToRight, faArrowToTop, faArrowUp, faArrows, faArrowsAlt, faArrowsAltH, faArrowsAltV, faArrowsH, faArrowsV, faAssistiveListeningSystems, faAsterisk, faAt, faAtlas, faAtom, faAtomAlt, faAudioDescription, faAward, faAxe, faAxeBattle, faBaby, faBabyCarriage, faBackpack, faBackspace, faBackward, faBacon, faBacteria, faBacterium, faBadge, faBadgeCheck, faBadgeDollar, faBadgePercent, faBadgeSheriff, faBadgerHoney, faBagsShopping, faBahai, faBalanceScale, faBalanceScaleLeft, faBalanceScaleRight, faBallPile, faBallot, faBallotCheck, faBan, faBandAid, faBanjo, faBarcode, faBarcodeAlt, faBarcodeRead, faBarcodeScan, faBars, faBaseball, faBaseballBall, faBasketballBall, faBasketballHoop, faBat, faBath, faBatteryBolt, faBatteryEmpty, faBatteryFull, faBatteryHalf, faBatteryQuarter, faBatterySlash, faBatteryThreeQuarters, faBed, faBedAlt, faBedBunk, faBedEmpty, faBeer, faBell, faBellExclamation, faBellOn, faBellPlus, faBellSchool, faBellSchoolSlash, faBellSlash, faBells, faBetamax, faBezierCurve, faBible, faBicycle, faBiking, faBikingMountain, faBinoculars, faBiohazard, faBirthdayCake, faBlanket, faBlender, faBlenderPhone, faBlind, faBlinds, faBlindsOpen, faBlindsRaised, faBlog, faBold, faBolt, faBomb, faBone, faBoneBreak, faBong, faBook, faBookAlt, faBookDead, faBookHeart, faBookMedical, faBookOpen, faBookReader, faBookSpells, faBookUser, faBookmark, faBooks, faBooksMedical, faBoombox, faBoot, faBoothCurtain, faBorderAll, faBorderBottom, faBorderCenterH, faBorderCenterV, faBorderInner, faBorderLeft, faBorderNone, faBorderOuter, faBorderRight, faBorderStyle, faBorderStyleAlt, faBorderTop, faBowArrow, faBowlingBall, faBowlingPins, faBox, faBoxAlt, faBoxBallot, faBoxCheck, faBoxFragile, faBoxFull, faBoxHeart, faBoxOpen, faBoxTissue, faBoxUp, faBoxUsd, faBoxes, faBoxesAlt, faBoxingGlove, faBrackets, faBracketsCurly, faBraille, faBrain, faBreadLoaf, faBreadSlice, faBriefcase, faBriefcaseMedical, faBringForward, faBringFront, faBroadcastTower, faBroom, faBrowser, faBrush, faBug, faBuilding, faBullhorn, faBullseye, faBullseyeArrow, faBullseyePointer, faBurgerSoda, faBurn, faBurrito, faBus, faBusAlt, faBusSchool, faBusinessTime, faCabinetFiling, faCactus, faCalculator, faCalculatorAlt, faCalendar, faCalendarAlt, faCalendarCheck, faCalendarDay, faCalendarEdit, faCalendarExclamation, faCalendarMinus, faCalendarPlus, faCalendarStar, faCalendarTimes, faCalendarWeek, faCamcorder, faCamera, faCameraAlt, faCameraHome, faCameraMovie, faCameraPolaroid, faCameraRetro, faCampfire, faCampground, faCandleHolder, faCandyCane, faCandyCorn, faCannabis, faCapsules, faCar, faCarAlt, faCarBattery, faCarBuilding, faCarBump, faCarBus, faCarCrash, faCarGarage, faCarMechanic, faCarSide, faCarTilt, faCarWash, faCaravan, faCaravanAlt, faCaretCircleDown, faCaretCircleLeft, faCaretCircleRight, faCaretCircleUp, faCaretDown, faCaretLeft, faCaretRight, faCaretSquareDown, faCaretSquareLeft, faCaretSquareRight, faCaretSquareUp, faCaretUp, faCarrot, faCars, faCartArrowDown, faCartPlus, faCashRegister, faCassetteTape, faCat, faCatSpace, faCauldron, faCctv, faCertificate, faChair, faChairOffice, faChalkboard, faChalkboardTeacher, faChargingStation, faChartArea, faChartBar, faChartLine, faChartLineDown, faChartNetwork, faChartPie, faChartPieAlt, faChartScatter, faCheck, faCheckCircle, faCheckDouble, faCheckSquare, faCheese, faCheeseSwiss, faCheeseburger, faChess, faChessBishop, faChessBishopAlt, faChessBoard, faChessClock, faChessClockAlt, faChessKing, faChessKingAlt, faChessKnight, faChessKnightAlt, faChessPawn, faChessPawnAlt, faChessQueen, faChessQueenAlt, faChessRook, faChessRookAlt, faChevronCircleDown, faChevronCircleLeft, faChevronCircleRight, faChevronCircleUp, faChevronDoubleDown, faChevronDoubleLeft, faChevronDoubleRight, faChevronDoubleUp, faChevronDown, faChevronLeft, faChevronRight, faChevronSquareDown, faChevronSquareLeft, faChevronSquareRight, faChevronSquareUp, faChevronUp, faChild, faChimney, faChurch, faCircle, faCircleNotch, faCity, faClarinet, faClawMarks, faClinicMedical, faClipboard, faClipboardCheck, faClipboardList, faClipboardListCheck, faClipboardPrescription, faClipboardUser, faClock, faClone, faClosedCaptioning, faCloud, faCloudDownload, faCloudDownloadAlt, faCloudDrizzle, faCloudHail, faCloudHailMixed, faCloudMeatball, faCloudMoon, faCloudMoonRain, faCloudMusic, faCloudRain, faCloudRainbow, faCloudShowers, faCloudShowersHeavy, faCloudSleet, faCloudSnow, faCloudSun, faCloudSunRain, faCloudUpload, faCloudUploadAlt, faClouds, faCloudsMoon, faCloudsSun, faClub, faCocktail, faCode, faCodeBranch, faCodeCommit, faCodeMerge, faCoffee, faCoffeePot, faCoffeeTogo, faCoffin, faCoffinCross, faCog, faCogs, faCoin, faCoins, faColumns, faComet, faComment, faCommentAlt, faCommentAltCheck, faCommentAltDollar, faCommentAltDots, faCommentAltEdit, faCommentAltExclamation, faCommentAltLines, faCommentAltMedical, faCommentAltMinus, faCommentAltMusic, faCommentAltPlus, faCommentAltSlash, faCommentAltSmile, faCommentAltTimes, faCommentCheck, faCommentDollar, faCommentDots, faCommentEdit, faCommentExclamation, faCommentLines, faCommentMedical, faCommentMinus, faCommentMusic, faCommentPlus, faCommentSlash, faCommentSmile, faCommentTimes, faComments, faCommentsAlt, faCommentsAltDollar, faCommentsDollar, faCompactDisc, faCompass, faCompassSlash, faCompress, faCompressAlt, faCompressArrowsAlt, faCompressWide, faComputerClassic, faComputerSpeaker, faConciergeBell, faConstruction, faContainerStorage, faConveyorBelt, faConveyorBeltAlt, faCookie, faCookieBite, faCopy, faCopyright, faCorn, faCouch, faCow, faCowbell, faCowbellMore, faCreditCard, faCreditCardBlank, faCreditCardFront, faCricket, faCroissant, faCrop, faCropAlt, faCross, faCrosshairs, faCrow, faCrown, faCrutch, faCrutches, faCube, faCubes, faCurling, faCut, faDagger, faDatabase, faDeaf, faDebug, faDeer, faDeerRudolph, faDemocrat, faDesktop, faDesktopAlt, faDewpoint, faDharmachakra, faDiagnoses, faDiamond, faDice, faDiceD10, faDiceD12, faDiceD20, faDiceD4, faDiceD6, faDiceD8, faDiceFive, faDiceFour, faDiceOne, faDiceSix, faDiceThree, faDiceTwo, faDigging, faDigitalTachograph, faDiploma, faDirections, faDiscDrive, faDisease, faDivide, faDizzy, faDna, faDoNotEnter, faDog, faDogLeashed, faDollarSign, faDolly, faDollyEmpty, faDollyFlatbed, faDollyFlatbedAlt, faDollyFlatbedEmpty, faDonate, faDoorClosed, faDoorOpen, faDotCircle, faDove, faDownload, faDraftingCompass, faDragon, faDrawCircle, faDrawPolygon, faDrawSquare, faDreidel, faDrone, faDroneAlt, faDrum, faDrumSteelpan, faDrumstick, faDrumstickBite, faDryer, faDryerAlt, faDuck, faDumbbell, faDumpster, faDumpsterFire, faDungeon, faEar, faEarMuffs, faEclipse, faEclipseAlt, faEdit, faEgg, faEggFried, faEject, faElephant, faEllipsisH, faEllipsisHAlt, faEllipsisV, faEllipsisVAlt, faEmptySet, faEngineWarning, faEnvelope, faEnvelopeOpen, faEnvelopeOpenDollar, faEnvelopeOpenText, faEnvelopeSquare, faEquals, faEraser, faEthernet, faEuroSign, faExchange, faExchangeAlt, faExclamation, faExclamationCircle, faExclamationSquare, faExclamationTriangle, faExpand, faExpandAlt, faExpandArrows, faExpandArrowsAlt, faExpandWide, faExternalLink, faExternalLinkAlt, faExternalLinkSquare, faExternalLinkSquareAlt, faEye, faEyeDropper, faEyeEvil, faEyeSlash, faFan, faFanTable, faFarm, faFastBackward, faFastForward, faFaucet, faFaucetDrip, faFax, faFeather, faFeatherAlt, faFemale, faFieldHockey, faFighterJet, faFile, faFileAlt, faFileArchive, faFileAudio, faFileCertificate, faFileChartLine, faFileChartPie, faFileCheck, faFileCode, faFileContract, faFileCsv, faFileDownload, faFileEdit, faFileExcel, faFileExclamation, faFileExport, faFileImage, faFileImport, faFileInvoice, faFileInvoiceDollar, faFileMedical, faFileMedicalAlt, faFileMinus, faFileMusic, faFilePdf, faFilePlus, faFilePowerpoint, faFilePrescription, faFileSearch, faFileSignature, faFileSpreadsheet, faFileTimes, faFileUpload, faFileUser, faFileVideo, faFileWord, faFilesMedical, faFill, faFillDrip, faFilm, faFilmAlt, faFilmCanister, faFilter, faFingerprint, faFire, faFireAlt, faFireExtinguisher, faFireSmoke, faFireplace, faFirstAid, faFish, faFishCooked, faFistRaised, faFlag, faFlagAlt, faFlagCheckered, faFlagUsa, faFlame, faFlashlight, faFlask, faFlaskPoison, faFlaskPotion, faFlower, faFlowerDaffodil, faFlowerTulip, faFlushed, faFlute, faFluxCapacitor, faFog, faFolder, faFolderDownload, faFolderMinus, faFolderOpen, faFolderPlus, faFolderTimes, faFolderTree, faFolderUpload, faFolders, faFont, faFontAwesomeLogoFull, faFontCase, faFootballBall, faFootballHelmet, faForklift, faForward, faFragile, faFrenchFries, faFrog, faFrostyHead, faFrown, faFrownOpen, faFunction, faFunnelDollar, faFutbol, faGalaxy, faGameBoard, faGameBoardAlt, faGameConsoleHandheld, faGamepad, faGamepadAlt, faGarage, faGarageCar, faGarageOpen, faGasPump, faGasPumpSlash, faGavel, faGem, faGenderless, faGhost, faGift, faGiftCard, faGifts, faGingerbreadMan, faGlass, faGlassChampagne, faGlassCheers, faGlassCitrus, faGlassMartini, faGlassMartiniAlt, faGlassWhiskey, faGlassWhiskeyRocks, faGlasses, faGlassesAlt, faGlobe, faGlobeAfrica, faGlobeAmericas, faGlobeAsia, faGlobeEurope, faGlobeSnow, faGlobeStand, faGolfBall, faGolfClub, faGopuram, faGraduationCap, faGramophone, faGreaterThan, faGreaterThanEqual, faGrimace, faGrin, faGrinAlt, faGrinBeam, faGrinBeamSweat, faGrinHearts, faGrinSquint, faGrinSquintTears, faGrinStars, faGrinTears, faGrinTongue, faGrinTongueSquint, faGrinTongueWink, faGrinWink, faGripHorizontal, faGripLines, faGripLinesVertical, faGripVertical, faGuitar, faGuitarElectric, faGuitars, faHSquare, faH1, faH2, faH3, faH4, faHamburger, faHammer, faHammerWar, faHamsa, faHandHeart, faHandHolding, faHandHoldingBox, faHandHoldingHeart, faHandHoldingMagic, faHandHoldingMedical, faHandHoldingSeedling, faHandHoldingUsd, faHandHoldingWater, faHandLizard, faHandMiddleFinger, faHandPaper, faHandPeace, faHandPointDown, faHandPointLeft, faHandPointRight, faHandPointUp, faHandPointer, faHandReceiving, faHandRock, faHandScissors, faHandSparkles, faHandSpock, faHands, faHandsHeart, faHandsHelping, faHandsUsd, faHandsWash, faHandshake, faHandshakeAlt, faHandshakeAltSlash, faHandshakeSlash, faHanukiah, faHardHat, faHashtag, faHatChef, faHatCowboy, faHatCowboySide, faHatSanta, faHatWinter, faHatWitch, faHatWizard, faHdd, faHeadSide, faHeadSideBrain, faHeadSideCough, faHeadSideCoughSlash, faHeadSideHeadphones, faHeadSideMask, faHeadSideMedical, faHeadSideVirus, faHeadVr, faHeading, faHeadphones, faHeadphonesAlt, faHeadset, faHeart, faHeartBroken, faHeartCircle, faHeartRate, faHeartSquare, faHeartbeat, faHeat, faHelicopter, faHelmetBattle, faHexagon, faHighlighter, faHiking, faHippo, faHistory, faHockeyMask, faHockeyPuck, faHockeySticks, faHollyBerry, faHome, faHomeAlt, faHomeHeart, faHomeLg, faHomeLgAlt, faHoodCloak, faHorizontalRule, faHorse, faHorseHead, faHorseSaddle, faHospital, faHospitalAlt, faHospitalSymbol, faHospitalUser, faHospitals, faHotTub, faHotdog, faHotel, faHourglass, faHourglassEnd, faHourglassHalf, faHourglassStart, faHouse, faHouseDamage, faHouseDay, faHouseFlood, faHouseLeave, faHouseNight, faHouseReturn, faHouseSignal, faHouseUser, faHryvnia, faHumidity, faHurricane, faICursor, faIceCream, faIceSkate, faIcicles, faIcons, faIconsAlt, faIdBadge, faIdCard, faIdCardAlt, faIgloo, faImage, faImagePolaroid, faImages, faInbox, faInboxIn, faInboxOut, faIndent, faIndustry, faIndustryAlt, faInfinity, faInfo, faInfoCircle, faInfoSquare, faInhaler, faIntegral, faIntersection, faInventory, faIslandTropical, faItalic, faJackOLantern, faJedi, faJoint, faJournalWhills, faJoystick, faJug, faKaaba, faKazoo, faKerning, faKey, faKeySkeleton, faKeyboard, faKeynote, faKhanda, faKidneys, faKiss, faKissBeam, faKissWinkHeart, faKite, faKiwiBird, faKnifeKitchen, faLambda, faLamp, faLampDesk, faLampFloor, faLandmark, faLandmarkAlt, faLanguage, faLaptop, faLaptopCode, faLaptopHouse, faLaptopMedical, faLasso, faLaugh, faLaughBeam, faLaughSquint, faLaughWink, faLayerGroup, faLayerMinus, faLayerPlus, faLeaf, faLeafHeart, faLeafMaple, faLeafOak, faLemon, faLessThan, faLessThanEqual, faLevelDown, faLevelDownAlt, faLevelUp, faLevelUpAlt, faLifeRing, faLightCeiling, faLightSwitch, faLightSwitchOff, faLightSwitchOn, faLightbulb, faLightbulbDollar, faLightbulbExclamation, faLightbulbOn, faLightbulbSlash, faLightsHoliday, faLineColumns, faLineHeight, faLink, faLips, faLiraSign, faList, faListAlt, faListMusic, faListOl, faListUl, faLocation, faLocationArrow, faLocationCircle, faLocationSlash, faLock, faLockAlt, faLockOpen, faLockOpenAlt, faLongArrowAltDown, faLongArrowAltLeft, faLongArrowAltRight, faLongArrowAltUp, faLongArrowDown, faLongArrowLeft, faLongArrowRight, faLongArrowUp, faLoveseat, faLowVision, faLuchador, faLuggageCart, faLungs, faLungsVirus, faMace, faMagic, faMagnet, faMailBulk, faMailbox, faMale, faMandolin, faMap, faMapMarked, faMapMarkedAlt, faMapMarker, faMapMarkerAlt, faMapMarkerAltSlash, faMapMarkerCheck, faMapMarkerEdit, faMapMarkerExclamation, faMapMarkerMinus, faMapMarkerPlus, faMapMarkerQuestion, faMapMarkerSlash, faMapMarkerSmile, faMapMarkerTimes, faMapPin, faMapSigns, faMarker, faMars, faMarsDouble, faMarsStroke, faMarsStrokeH, faMarsStrokeV, faMask, faMeat, faMedal, faMedkit, faMegaphone, faMeh, faMehBlank, faMehRollingEyes, faMemory, faMenorah, faMercury, faMeteor, faMicrochip, faMicrophone, faMicrophoneAlt, faMicrophoneAltSlash, faMicrophoneSlash, faMicrophoneStand, faMicroscope, faMicrowave, faMindShare, faMinus, faMinusCircle, faMinusHexagon, faMinusOctagon, faMinusSquare, faMistletoe, faMitten, faMobile, faMobileAlt, faMobileAndroid, faMobileAndroidAlt, faMoneyBill, faMoneyBillAlt, faMoneyBillWave, faMoneyBillWaveAlt, faMoneyCheck, faMoneyCheckAlt, faMoneyCheckEdit, faMoneyCheckEditAlt, faMonitorHeartRate, faMonkey, faMonument, faMoon, faMoonCloud, faMoonStars, faMortarPestle, faMosque, faMotorcycle, faMountain, faMountains, faMouse, faMouseAlt, faMousePointer, faMp3Player, faMug, faMugHot, faMugMarshmallows, faMugTea, faMusic, faMusicAlt, faMusicAltSlash, faMusicSlash, faNarwhal, faNetworkWired, faNeuter, faNewspaper, faNotEqual, faNotesMedical, faObjectGroup, faObjectUngroup, faOctagon, faOilCan, faOilTemp, faOm, faOmega, faOrnament, faOtter, faOutdent, faOutlet, faOven, faOverline, faPageBreak, faPager, faPaintBrush, faPaintBrushAlt, faPaintRoller, faPalette, faPallet, faPalletAlt, faPaperPlane, faPaperclip, faParachuteBox, faParagraph, faParagraphRtl, faParking, faParkingCircle, faParkingCircleSlash, faParkingSlash, faPassport, faPastafarianism, faPaste, faPause, faPauseCircle, faPaw, faPawAlt, faPawClaws, faPeace, faPegasus, faPen, faPenAlt, faPenFancy, faPenNib, faPenSquare, faPencil, faPencilAlt, faPencilPaintbrush, faPencilRuler, faPennant, faPeopleArrows, faPeopleCarry, faPepperHot, faPercent, faPercentage, faPersonBooth, faPersonCarry, faPersonDolly, faPersonDollyEmpty, faPersonSign, faPhone, faPhoneAlt, faPhoneLaptop, faPhoneOffice, faPhonePlus, faPhoneRotary, faPhoneSlash, faPhoneSquare, faPhoneSquareAlt, faPhoneVolume, faPhotoVideo, faPi, faPiano, faPianoKeyboard, faPie, faPig, faPiggyBank, faPills, faPizza, faPizzaSlice, faPlaceOfWorship, faPlane, faPlaneAlt, faPlaneArrival, faPlaneDeparture, faPlaneSlash, faPlanetMoon, faPlanetRinged, faPlay, faPlayCircle, faPlug, faPlus, faPlusCircle, faPlusHexagon, faPlusOctagon, faPlusSquare, faPodcast, faPodium, faPodiumStar, faPoliceBox, faPoll, faPollH, faPollPeople, faPoo, faPooStorm, faPoop, faPopcorn, faPortalEnter, faPortalExit, faPortrait, faPoundSign, faPowerOff, faPray, faPrayingHands, faPrescription, faPrescriptionBottle, faPrescriptionBottleAlt, faPresentation, faPrint, faPrintSearch, faPrintSlash, faProcedures, faProjectDiagram, faProjector, faPumpMedical, faPumpSoap, faPumpkin, faPuzzlePiece, faQrcode, faQuestion, faQuestionCircle, faQuestionSquare, faQuidditch, faQuoteLeft, faQuoteRight, faQuran, faRabbit, faRabbitFast, faRacquet, faRadar, faRadiation, faRadiationAlt, faRadio, faRadioAlt, faRainbow, faRaindrops, faRam, faRampLoading, faRandom, faRaygun, faReceipt, faRecordVinyl, faRectangleLandscape, faRectanglePortrait, faRectangleWide, faRecycle, faRedo, faRedoAlt, faRefrigerator, faRegistered, faRemoveFormat, faRepeat, faRepeat1, faRepeat1Alt, faRepeatAlt, faReply, faReplyAll, faRepublican, faRestroom, faRetweet, faRetweetAlt, faRibbon, faRing, faRingsWedding, faRoad, faRobot, faRocket, faRocketLaunch, faRoute, faRouteHighway, faRouteInterstate, faRouter, faRss, faRssSquare, faRubleSign, faRuler, faRulerCombined, faRulerHorizontal, faRulerTriangle, faRulerVertical, faRunning, faRupeeSign, faRv, faSack, faSackDollar, faSadCry, faSadTear, faSalad, faSandwich, faSatellite, faSatelliteDish, faSausage, faSave, faSaxHot, faSaxophone, faScalpel, faScalpelPath, faScanner, faScannerImage, faScannerKeyboard, faScannerTouchscreen, faScarecrow, faScarf, faSchool, faScrewdriver, faScroll, faScrollOld, faScrubber, faScythe, faSdCard, faSearch, faSearchDollar, faSearchLocation, faSearchMinus, faSearchPlus, faSeedling, faSendBack, faSendBackward, faSensor, faSensorAlert, faSensorFire, faSensorOn, faSensorSmoke, faServer, faShapes, faShare, faShareAll, faShareAlt, faShareAltSquare, faShareSquare, faSheep, faShekelSign, faShield, faShieldAlt, faShieldCheck, faShieldCross, faShieldVirus, faShip, faShippingFast, faShippingTimed, faShishKebab, faShoePrints, faShoppingBag, faShoppingBasket, faShoppingCart, faShovel, faShovelSnow, faShower, faShredder, faShuttleVan, faShuttlecock, faSickle, faSigma, faSign, faSignIn, faSignInAlt, faSignLanguage, faSignOut, faSignOutAlt, faSignal, faSignal1, faSignal2, faSignal3, faSignal4, faSignalAlt, faSignalAlt1, faSignalAlt2, faSignalAlt3, faSignalAltSlash, faSignalSlash, faSignalStream, faSignature, faSimCard, faSink, faSiren, faSirenOn, faSitemap, faSkating, faSkeleton, faSkiJump, faSkiLift, faSkiing, faSkiingNordic, faSkull, faSkullCow, faSkullCrossbones, faSlash, faSledding, faSleigh, faSlidersH, faSlidersHSquare, faSlidersV, faSlidersVSquare, faSmile, faSmileBeam, faSmilePlus, faSmileWink, faSmog, faSmoke, faSmoking, faSmokingBan, faSms, faSnake, faSnooze, faSnowBlowing, faSnowboarding, faSnowflake, faSnowflakes, faSnowman, faSnowmobile, faSnowplow, faSoap, faSocks, faSolarPanel, faSolarSystem, faSort, faSortAlphaDown, faSortAlphaDownAlt, faSortAlphaUp, faSortAlphaUpAlt, faSortAlt, faSortAmountDown, faSortAmountDownAlt, faSortAmountUp, faSortAmountUpAlt, faSortCircle, faSortCircleDown, faSortCircleUp, faSortDown, faSortNumericDown, faSortNumericDownAlt, faSortNumericUp, faSortNumericUpAlt, faSortShapesDown, faSortShapesDownAlt, faSortShapesUp, faSortShapesUpAlt, faSortSizeDown, faSortSizeDownAlt, faSortSizeUp, faSortSizeUpAlt, faSortUp, faSoup, faSpa, faSpaceShuttle, faSpaceStationMoon, faSpaceStationMoonAlt, faSpade, faSparkles, faSpeaker, faSpeakers, faSpellCheck, faSpider, faSpiderBlackWidow, faSpiderWeb, faSpinner, faSpinnerThird, faSplotch, faSprayCan, faSprinkler, faSquare, faSquareFull, faSquareRoot, faSquareRootAlt, faSquirrel, faStaff, faStamp, faStar, faStarAndCrescent, faStarChristmas, faStarExclamation, faStarHalf, faStarHalfAlt, faStarOfDavid, faStarOfLife, faStarShooting, faStarfighter, faStarfighterAlt, faStars, faStarship, faStarshipFreighter, faSteak, faSteeringWheel, faStepBackward, faStepForward, faStethoscope, faStickyNote, faStocking, faStomach, faStop, faStopCircle, faStopwatch, faStopwatch20, faStore, faStoreAlt, faStoreAltSlash, faStoreSlash, faStream, faStreetView, faStretcher, faStrikethrough, faStroopwafel, faSubscript, faSubway, faSuitcase, faSuitcaseRolling, faSun, faSunCloud, faSunDust, faSunHaze, faSunglasses, faSunrise, faSunset, faSuperscript, faSurprise, faSwatchbook, faSwimmer, faSwimmingPool, faSword, faSwordLaser, faSwordLaserAlt, faSwords, faSwordsLaser, faSynagogue, faSync, faSyncAlt, faSyringe, faTable, faTableTennis, faTablet, faTabletAlt, faTabletAndroid, faTabletAndroidAlt, faTabletRugged, faTablets, faTachometer, faTachometerAlt, faTachometerAltAverage, faTachometerAltFast, faTachometerAltFastest, faTachometerAltSlow, faTachometerAltSlowest, faTachometerAverage, faTachometerFast, faTachometerFastest, faTachometerSlow, faTachometerSlowest, faTaco, faTag, faTags, faTally, faTanakh, faTape, faTasks, faTasksAlt, faTaxi, faTeeth, faTeethOpen, faTelescope, faTemperatureDown, faTemperatureFrigid, faTemperatureHigh, faTemperatureHot, faTemperatureLow, faTemperatureUp, faTenge, faTennisBall, faTerminal, faText, faTextHeight, faTextSize, faTextWidth, faTh, faThLarge, faThList, faTheaterMasks, faThermometer, faThermometerEmpty, faThermometerFull, faThermometerHalf, faThermometerQuarter, faThermometerThreeQuarters, faTheta, faThumbsDown, faThumbsUp, faThumbtack, faThunderstorm, faThunderstormMoon, faThunderstormSun, faTicket, faTicketAlt, faTilde, faTimes, faTimesCircle, faTimesHexagon, faTimesOctagon, faTimesSquare, faTint, faTintSlash, faTire, faTireFlat, faTirePressureWarning, faTireRugged, faTired, faToggleOff, faToggleOn, faToilet, faToiletPaper, faToiletPaperAlt, faToiletPaperSlash, faTombstone, faTombstoneAlt, faToolbox, faTools, faTooth, faToothbrush, faTorah, faToriiGate, faTornado, faTractor, faTrademark, faTrafficCone, faTrafficLight, faTrafficLightGo, faTrafficLightSlow, faTrafficLightStop, faTrailer, faTrain, faTram, faTransgender, faTransgenderAlt, faTransporter, faTransporter1, faTransporter2, faTransporter3, faTransporterEmpty, faTrash, faTrashAlt, faTrashRestore, faTrashRestoreAlt, faTrashUndo, faTrashUndoAlt, faTreasureChest, faTree, faTreeAlt, faTreeChristmas, faTreeDecorated, faTreeLarge, faTreePalm, faTrees, faTriangle, faTriangleMusic, faTrophy, faTrophyAlt, faTruck, faTruckContainer, faTruckCouch, faTruckLoading, faTruckMonster, faTruckMoving, faTruckPickup, faTruckPlow, faTruckRamp, faTrumpet, faTshirt, faTty, faTurkey, faTurntable, faTurtle, faTv, faTvAlt, faTvMusic, faTvRetro, faTypewriter, faUfo, faUfoBeam, faUmbrella, faUmbrellaBeach, faUnderline, faUndo, faUndoAlt, faUnicorn, faUnion, faUniversalAccess, faUniversity, faUnlink, faUnlock, faUnlockAlt, faUpload, faUsbDrive, faUsdCircle, faUsdSquare, faUser, faUserAlien, faUserAlt, faUserAltSlash, faUserAstronaut, faUserChart, faUserCheck, faUserCircle, faUserClock, faUserCog, faUserCowboy, faUserCrown, faUserEdit, faUserFriends, faUserGraduate, faUserHardHat, faUserHeadset, faUserInjured, faUserLock, faUserMd, faUserMdChat, faUserMinus, faUserMusic, faUserNinja, faUserNurse, faUserPlus, faUserRobot, faUserSecret, faUserShield, faUserSlash, faUserTag, faUserTie, faUserTimes, faUserUnlock, faUserVisor, faUsers, faUsersClass, faUsersCog, faUsersCrown, faUsersMedical, faUsersSlash, faUtensilFork, faUtensilKnife, faUtensilSpoon, faUtensils, faUtensilsAlt, faVacuum, faVacuumRobot, faValueAbsolute, faVectorSquare, faVenus, faVenusDouble, faVenusMars, faVest, faVestPatches, faVhs, faVial, faVials, faVideo, faVideoPlus, faVideoSlash, faVihara, faViolin, faVirus, faVirusSlash, faViruses, faVoicemail, faVolcano, faVolleyballBall, faVolume, faVolumeDown, faVolumeMute, faVolumeOff, faVolumeSlash, faVolumeUp, faVoteNay, faVoteYea, faVrCardboard, faWagonCovered, faWalker, faWalkieTalkie, faWalking, faWallet, faWand, faWandMagic, faWarehouse, faWarehouseAlt, faWasher, faWatch, faWatchCalculator, faWatchFitness, faWater, faWaterLower, faWaterRise, faWaveSine, faWaveSquare, faWaveTriangle, faWaveform, faWaveformPath, faWebcam, faWebcamSlash, faWeight, faWeightHanging, faWhale, faWheat, faWheelchair, faWhistle, faWifi, faWifi1, faWifi2, faWifiSlash, faWind, faWindTurbine, faWindWarning, faWindow, faWindowAlt, faWindowClose, faWindowFrame, faWindowFrameOpen, faWindowMaximize, faWindowMinimize, faWindowRestore, faWindsock, faWineBottle, faWineGlass, faWineGlassAlt, faWonSign, faWreath, faWrench, faXRay, faYenSign, faYinYang };\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\n// Rough polyfill of https://developer.mozilla.org/en-US/docs/Web/API/AbortController\r\n// We don't actually ever use the API being polyfilled, we always use the polyfill because\r\n// it's a very new API right now.\r\n// Not exported from index.\r\n/** @private */\r\nvar AbortController = /** @class */ (function () {\r\n function AbortController() {\r\n this.isAborted = false;\r\n this.onabort = null;\r\n }\r\n AbortController.prototype.abort = function () {\r\n if (!this.isAborted) {\r\n this.isAborted = true;\r\n if (this.onabort) {\r\n this.onabort();\r\n }\r\n }\r\n };\r\n Object.defineProperty(AbortController.prototype, \"signal\", {\r\n get: function () {\r\n return this;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(AbortController.prototype, \"aborted\", {\r\n get: function () {\r\n return this.isAborted;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n return AbortController;\r\n}());\r\nexport { AbortController };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return function (d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nimport { AbortError } from \"./Errors\";\r\nimport { FetchHttpClient } from \"./FetchHttpClient\";\r\nimport { HttpClient } from \"./HttpClient\";\r\nimport { Platform } from \"./Utils\";\r\nimport { XhrHttpClient } from \"./XhrHttpClient\";\r\n/** Default implementation of {@link @microsoft/signalr.HttpClient}. */\r\nvar DefaultHttpClient = /** @class */ (function (_super) {\r\n __extends(DefaultHttpClient, _super);\r\n /** Creates a new instance of the {@link @microsoft/signalr.DefaultHttpClient}, using the provided {@link @microsoft/signalr.ILogger} to log messages. */\r\n function DefaultHttpClient(logger) {\r\n var _this = _super.call(this) || this;\r\n if (typeof fetch !== \"undefined\" || Platform.isNode) {\r\n _this.httpClient = new FetchHttpClient(logger);\r\n }\r\n else if (typeof XMLHttpRequest !== \"undefined\") {\r\n _this.httpClient = new XhrHttpClient(logger);\r\n }\r\n else {\r\n throw new Error(\"No usable HttpClient found.\");\r\n }\r\n return _this;\r\n }\r\n /** @inheritDoc */\r\n DefaultHttpClient.prototype.send = function (request) {\r\n // Check that abort was not signaled before calling send\r\n if (request.abortSignal && request.abortSignal.aborted) {\r\n return Promise.reject(new AbortError());\r\n }\r\n if (!request.method) {\r\n return Promise.reject(new Error(\"No method defined.\"));\r\n }\r\n if (!request.url) {\r\n return Promise.reject(new Error(\"No url defined.\"));\r\n }\r\n return this.httpClient.send(request);\r\n };\r\n DefaultHttpClient.prototype.getCookieString = function (url) {\r\n return this.httpClient.getCookieString(url);\r\n };\r\n return DefaultHttpClient;\r\n}(HttpClient));\r\nexport { DefaultHttpClient };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\n// 0, 2, 10, 30 second delays before reconnect attempts.\r\nvar DEFAULT_RETRY_DELAYS_IN_MILLISECONDS = [0, 2000, 10000, 30000, null];\r\n/** @private */\r\nvar DefaultReconnectPolicy = /** @class */ (function () {\r\n function DefaultReconnectPolicy(retryDelays) {\r\n this.retryDelays = retryDelays !== undefined ? retryDelays.concat([null]) : DEFAULT_RETRY_DELAYS_IN_MILLISECONDS;\r\n }\r\n DefaultReconnectPolicy.prototype.nextRetryDelayInMilliseconds = function (retryContext) {\r\n return this.retryDelays[retryContext.previousRetryCount];\r\n };\r\n return DefaultReconnectPolicy;\r\n}());\r\nexport { DefaultReconnectPolicy };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return function (d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\n/** Error thrown when an HTTP request fails. */\r\nvar HttpError = /** @class */ (function (_super) {\r\n __extends(HttpError, _super);\r\n /** Constructs a new instance of {@link @microsoft/signalr.HttpError}.\r\n *\r\n * @param {string} errorMessage A descriptive error message.\r\n * @param {number} statusCode The HTTP status code represented by this error.\r\n */\r\n function HttpError(errorMessage, statusCode) {\r\n var _newTarget = this.constructor;\r\n var _this = this;\r\n var trueProto = _newTarget.prototype;\r\n _this = _super.call(this, errorMessage) || this;\r\n _this.statusCode = statusCode;\r\n // Workaround issue in Typescript compiler\r\n // https://github.com/Microsoft/TypeScript/issues/13965#issuecomment-278570200\r\n _this.__proto__ = trueProto;\r\n return _this;\r\n }\r\n return HttpError;\r\n}(Error));\r\nexport { HttpError };\r\n/** Error thrown when a timeout elapses. */\r\nvar TimeoutError = /** @class */ (function (_super) {\r\n __extends(TimeoutError, _super);\r\n /** Constructs a new instance of {@link @microsoft/signalr.TimeoutError}.\r\n *\r\n * @param {string} errorMessage A descriptive error message.\r\n */\r\n function TimeoutError(errorMessage) {\r\n var _newTarget = this.constructor;\r\n if (errorMessage === void 0) { errorMessage = \"A timeout occurred.\"; }\r\n var _this = this;\r\n var trueProto = _newTarget.prototype;\r\n _this = _super.call(this, errorMessage) || this;\r\n // Workaround issue in Typescript compiler\r\n // https://github.com/Microsoft/TypeScript/issues/13965#issuecomment-278570200\r\n _this.__proto__ = trueProto;\r\n return _this;\r\n }\r\n return TimeoutError;\r\n}(Error));\r\nexport { TimeoutError };\r\n/** Error thrown when an action is aborted. */\r\nvar AbortError = /** @class */ (function (_super) {\r\n __extends(AbortError, _super);\r\n /** Constructs a new instance of {@link AbortError}.\r\n *\r\n * @param {string} errorMessage A descriptive error message.\r\n */\r\n function AbortError(errorMessage) {\r\n var _newTarget = this.constructor;\r\n if (errorMessage === void 0) { errorMessage = \"An abort occurred.\"; }\r\n var _this = this;\r\n var trueProto = _newTarget.prototype;\r\n _this = _super.call(this, errorMessage) || this;\r\n // Workaround issue in Typescript compiler\r\n // https://github.com/Microsoft/TypeScript/issues/13965#issuecomment-278570200\r\n _this.__proto__ = trueProto;\r\n return _this;\r\n }\r\n return AbortError;\r\n}(Error));\r\nexport { AbortError };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return function (d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nvar __assign = (this && this.__assign) || Object.assign || function(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))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n};\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nimport { AbortError, HttpError, TimeoutError } from \"./Errors\";\r\nimport { HttpClient, HttpResponse } from \"./HttpClient\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { Platform } from \"./Utils\";\r\nvar FetchHttpClient = /** @class */ (function (_super) {\r\n __extends(FetchHttpClient, _super);\r\n function FetchHttpClient(logger) {\r\n var _this = _super.call(this) || this;\r\n _this.logger = logger;\r\n if (typeof fetch === \"undefined\") {\r\n // In order to ignore the dynamic require in webpack builds we need to do this magic\r\n // @ts-ignore: TS doesn't know about these names\r\n var requireFunc = typeof __webpack_require__ === \"function\" ? __non_webpack_require__ : require;\r\n // Cookies aren't automatically handled in Node so we need to add a CookieJar to preserve cookies across requests\r\n _this.jar = new (requireFunc(\"tough-cookie\")).CookieJar();\r\n _this.fetchType = requireFunc(\"node-fetch\");\r\n // node-fetch doesn't have a nice API for getting and setting cookies\r\n // fetch-cookie will wrap a fetch implementation with a default CookieJar or a provided one\r\n _this.fetchType = requireFunc(\"fetch-cookie\")(_this.fetchType, _this.jar);\r\n // Node needs EventListener methods on AbortController which our custom polyfill doesn't provide\r\n _this.abortControllerType = requireFunc(\"abort-controller\");\r\n }\r\n else {\r\n _this.fetchType = fetch.bind(self);\r\n _this.abortControllerType = AbortController;\r\n }\r\n return _this;\r\n }\r\n /** @inheritDoc */\r\n FetchHttpClient.prototype.send = function (request) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var abortController, error, timeoutId, msTimeout, response, e_1, content, payload;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n // Check that abort was not signaled before calling send\r\n if (request.abortSignal && request.abortSignal.aborted) {\r\n throw new AbortError();\r\n }\r\n if (!request.method) {\r\n throw new Error(\"No method defined.\");\r\n }\r\n if (!request.url) {\r\n throw new Error(\"No url defined.\");\r\n }\r\n abortController = new this.abortControllerType();\r\n // Hook our abortSignal into the abort controller\r\n if (request.abortSignal) {\r\n request.abortSignal.onabort = function () {\r\n abortController.abort();\r\n error = new AbortError();\r\n };\r\n }\r\n timeoutId = null;\r\n if (request.timeout) {\r\n msTimeout = request.timeout;\r\n timeoutId = setTimeout(function () {\r\n abortController.abort();\r\n _this.logger.log(LogLevel.Warning, \"Timeout from HTTP request.\");\r\n error = new TimeoutError();\r\n }, msTimeout);\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, 4, 5]);\r\n return [4 /*yield*/, this.fetchType(request.url, {\r\n body: request.content,\r\n cache: \"no-cache\",\r\n credentials: request.withCredentials === true ? \"include\" : \"same-origin\",\r\n headers: __assign({ \"Content-Type\": \"text/plain;charset=UTF-8\", \"X-Requested-With\": \"XMLHttpRequest\" }, request.headers),\r\n method: request.method,\r\n mode: \"cors\",\r\n redirect: \"manual\",\r\n signal: abortController.signal,\r\n })];\r\n case 2:\r\n response = _a.sent();\r\n return [3 /*break*/, 5];\r\n case 3:\r\n e_1 = _a.sent();\r\n if (error) {\r\n throw error;\r\n }\r\n this.logger.log(LogLevel.Warning, \"Error from HTTP request. \" + e_1 + \".\");\r\n throw e_1;\r\n case 4:\r\n if (timeoutId) {\r\n clearTimeout(timeoutId);\r\n }\r\n if (request.abortSignal) {\r\n request.abortSignal.onabort = null;\r\n }\r\n return [7 /*endfinally*/];\r\n case 5:\r\n if (!response.ok) {\r\n throw new HttpError(response.statusText, response.status);\r\n }\r\n content = deserializeContent(response, request.responseType);\r\n return [4 /*yield*/, content];\r\n case 6:\r\n payload = _a.sent();\r\n return [2 /*return*/, new HttpResponse(response.status, response.statusText, payload)];\r\n }\r\n });\r\n });\r\n };\r\n FetchHttpClient.prototype.getCookieString = function (url) {\r\n var cookies = \"\";\r\n if (Platform.isNode && this.jar) {\r\n // @ts-ignore: unused variable\r\n this.jar.getCookies(url, function (e, c) { return cookies = c.join(\"; \"); });\r\n }\r\n return cookies;\r\n };\r\n return FetchHttpClient;\r\n}(HttpClient));\r\nexport { FetchHttpClient };\r\nfunction deserializeContent(response, responseType) {\r\n var content;\r\n switch (responseType) {\r\n case \"arraybuffer\":\r\n content = response.arrayBuffer();\r\n break;\r\n case \"text\":\r\n content = response.text();\r\n break;\r\n case \"blob\":\r\n case \"document\":\r\n case \"json\":\r\n throw new Error(responseType + \" is not supported.\");\r\n default:\r\n content = response.text();\r\n break;\r\n }\r\n return content;\r\n}\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nimport { TextMessageFormat } from \"./TextMessageFormat\";\r\nimport { isArrayBuffer } from \"./Utils\";\r\n/** @private */\r\nvar HandshakeProtocol = /** @class */ (function () {\r\n function HandshakeProtocol() {\r\n }\r\n // Handshake request is always JSON\r\n HandshakeProtocol.prototype.writeHandshakeRequest = function (handshakeRequest) {\r\n return TextMessageFormat.write(JSON.stringify(handshakeRequest));\r\n };\r\n HandshakeProtocol.prototype.parseHandshakeResponse = function (data) {\r\n var responseMessage;\r\n var messageData;\r\n var remainingData;\r\n if (isArrayBuffer(data) || (typeof Buffer !== \"undefined\" && data instanceof Buffer)) {\r\n // Format is binary but still need to read JSON text from handshake response\r\n var binaryData = new Uint8Array(data);\r\n var separatorIndex = binaryData.indexOf(TextMessageFormat.RecordSeparatorCode);\r\n if (separatorIndex === -1) {\r\n throw new Error(\"Message is incomplete.\");\r\n }\r\n // content before separator is handshake response\r\n // optional content after is additional messages\r\n var responseLength = separatorIndex + 1;\r\n messageData = String.fromCharCode.apply(null, binaryData.slice(0, responseLength));\r\n remainingData = (binaryData.byteLength > responseLength) ? binaryData.slice(responseLength).buffer : null;\r\n }\r\n else {\r\n var textData = data;\r\n var separatorIndex = textData.indexOf(TextMessageFormat.RecordSeparator);\r\n if (separatorIndex === -1) {\r\n throw new Error(\"Message is incomplete.\");\r\n }\r\n // content before separator is handshake response\r\n // optional content after is additional messages\r\n var responseLength = separatorIndex + 1;\r\n messageData = textData.substring(0, responseLength);\r\n remainingData = (textData.length > responseLength) ? textData.substring(responseLength) : null;\r\n }\r\n // At this point we should have just the single handshake message\r\n var messages = TextMessageFormat.parse(messageData);\r\n var response = JSON.parse(messages[0]);\r\n if (response.type) {\r\n throw new Error(\"Expected a handshake response from the server.\");\r\n }\r\n responseMessage = response;\r\n // multiple messages could have arrived with handshake\r\n // return additional data to be parsed as usual, or null if all parsed\r\n return [remainingData, responseMessage];\r\n };\r\n return HandshakeProtocol;\r\n}());\r\nexport { HandshakeProtocol };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __assign = (this && this.__assign) || Object.assign || function(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))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n};\r\n/** Represents an HTTP response. */\r\nvar HttpResponse = /** @class */ (function () {\r\n function HttpResponse(statusCode, statusText, content) {\r\n this.statusCode = statusCode;\r\n this.statusText = statusText;\r\n this.content = content;\r\n }\r\n return HttpResponse;\r\n}());\r\nexport { HttpResponse };\r\n/** Abstraction over an HTTP client.\r\n *\r\n * This class provides an abstraction over an HTTP client so that a different implementation can be provided on different platforms.\r\n */\r\nvar HttpClient = /** @class */ (function () {\r\n function HttpClient() {\r\n }\r\n HttpClient.prototype.get = function (url, options) {\r\n return this.send(__assign({}, options, { method: \"GET\", url: url }));\r\n };\r\n HttpClient.prototype.post = function (url, options) {\r\n return this.send(__assign({}, options, { method: \"POST\", url: url }));\r\n };\r\n HttpClient.prototype.delete = function (url, options) {\r\n return this.send(__assign({}, options, { method: \"DELETE\", url: url }));\r\n };\r\n /** Gets all cookies that apply to the specified URL.\r\n *\r\n * @param url The URL that the cookies are valid for.\r\n * @returns {string} A string containing all the key-value cookie pairs for the specified URL.\r\n */\r\n // @ts-ignore\r\n HttpClient.prototype.getCookieString = function (url) {\r\n return \"\";\r\n };\r\n return HttpClient;\r\n}());\r\nexport { HttpClient };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __assign = (this && this.__assign) || Object.assign || function(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))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n};\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nimport { DefaultHttpClient } from \"./DefaultHttpClient\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { HttpTransportType, TransferFormat } from \"./ITransport\";\r\nimport { LongPollingTransport } from \"./LongPollingTransport\";\r\nimport { ServerSentEventsTransport } from \"./ServerSentEventsTransport\";\r\nimport { Arg, createLogger, getUserAgentHeader, Platform } from \"./Utils\";\r\nimport { WebSocketTransport } from \"./WebSocketTransport\";\r\nvar MAX_REDIRECTS = 100;\r\n/** @private */\r\nvar HttpConnection = /** @class */ (function () {\r\n function HttpConnection(url, options) {\r\n if (options === void 0) { options = {}; }\r\n this.stopPromiseResolver = function () { };\r\n this.features = {};\r\n this.negotiateVersion = 1;\r\n Arg.isRequired(url, \"url\");\r\n this.logger = createLogger(options.logger);\r\n this.baseUrl = this.resolveUrl(url);\r\n options = options || {};\r\n options.logMessageContent = options.logMessageContent === undefined ? false : options.logMessageContent;\r\n if (typeof options.withCredentials === \"boolean\" || options.withCredentials === undefined) {\r\n options.withCredentials = options.withCredentials === undefined ? true : options.withCredentials;\r\n }\r\n else {\r\n throw new Error(\"withCredentials option was not a 'boolean' or 'undefined' value\");\r\n }\r\n var webSocketModule = null;\r\n var eventSourceModule = null;\r\n if (Platform.isNode && typeof require !== \"undefined\") {\r\n // In order to ignore the dynamic require in webpack builds we need to do this magic\r\n // @ts-ignore: TS doesn't know about these names\r\n var requireFunc = typeof __webpack_require__ === \"function\" ? __non_webpack_require__ : require;\r\n webSocketModule = requireFunc(\"ws\");\r\n eventSourceModule = requireFunc(\"eventsource\");\r\n }\r\n if (!Platform.isNode && typeof WebSocket !== \"undefined\" && !options.WebSocket) {\r\n options.WebSocket = WebSocket;\r\n }\r\n else if (Platform.isNode && !options.WebSocket) {\r\n if (webSocketModule) {\r\n options.WebSocket = webSocketModule;\r\n }\r\n }\r\n if (!Platform.isNode && typeof EventSource !== \"undefined\" && !options.EventSource) {\r\n options.EventSource = EventSource;\r\n }\r\n else if (Platform.isNode && !options.EventSource) {\r\n if (typeof eventSourceModule !== \"undefined\") {\r\n options.EventSource = eventSourceModule;\r\n }\r\n }\r\n this.httpClient = options.httpClient || new DefaultHttpClient(this.logger);\r\n this.connectionState = \"Disconnected\" /* Disconnected */;\r\n this.connectionStarted = false;\r\n this.options = options;\r\n this.onreceive = null;\r\n this.onclose = null;\r\n }\r\n HttpConnection.prototype.start = function (transferFormat) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var message, message;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n transferFormat = transferFormat || TransferFormat.Binary;\r\n Arg.isIn(transferFormat, TransferFormat, \"transferFormat\");\r\n this.logger.log(LogLevel.Debug, \"Starting connection with transfer format '\" + TransferFormat[transferFormat] + \"'.\");\r\n if (this.connectionState !== \"Disconnected\" /* Disconnected */) {\r\n return [2 /*return*/, Promise.reject(new Error(\"Cannot start an HttpConnection that is not in the 'Disconnected' state.\"))];\r\n }\r\n this.connectionState = \"Connecting\" /* Connecting */;\r\n this.startInternalPromise = this.startInternal(transferFormat);\r\n return [4 /*yield*/, this.startInternalPromise];\r\n case 1:\r\n _a.sent();\r\n if (!(this.connectionState === \"Disconnecting\" /* Disconnecting */)) return [3 /*break*/, 3];\r\n message = \"Failed to start the HttpConnection before stop() was called.\";\r\n this.logger.log(LogLevel.Error, message);\r\n // We cannot await stopPromise inside startInternal since stopInternal awaits the startInternalPromise.\r\n return [4 /*yield*/, this.stopPromise];\r\n case 2:\r\n // We cannot await stopPromise inside startInternal since stopInternal awaits the startInternalPromise.\r\n _a.sent();\r\n return [2 /*return*/, Promise.reject(new Error(message))];\r\n case 3:\r\n if (this.connectionState !== \"Connected\" /* Connected */) {\r\n message = \"HttpConnection.startInternal completed gracefully but didn't enter the connection into the connected state!\";\r\n this.logger.log(LogLevel.Error, message);\r\n return [2 /*return*/, Promise.reject(new Error(message))];\r\n }\r\n _a.label = 4;\r\n case 4:\r\n this.connectionStarted = true;\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.send = function (data) {\r\n if (this.connectionState !== \"Connected\" /* Connected */) {\r\n return Promise.reject(new Error(\"Cannot send data if the connection is not in the 'Connected' State.\"));\r\n }\r\n if (!this.sendQueue) {\r\n this.sendQueue = new TransportSendQueue(this.transport);\r\n }\r\n // Transport will not be null if state is connected\r\n return this.sendQueue.send(data);\r\n };\r\n HttpConnection.prototype.stop = function (error) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (this.connectionState === \"Disconnected\" /* Disconnected */) {\r\n this.logger.log(LogLevel.Debug, \"Call to HttpConnection.stop(\" + error + \") ignored because the connection is already in the disconnected state.\");\r\n return [2 /*return*/, Promise.resolve()];\r\n }\r\n if (this.connectionState === \"Disconnecting\" /* Disconnecting */) {\r\n this.logger.log(LogLevel.Debug, \"Call to HttpConnection.stop(\" + error + \") ignored because the connection is already in the disconnecting state.\");\r\n return [2 /*return*/, this.stopPromise];\r\n }\r\n this.connectionState = \"Disconnecting\" /* Disconnecting */;\r\n this.stopPromise = new Promise(function (resolve) {\r\n // Don't complete stop() until stopConnection() completes.\r\n _this.stopPromiseResolver = resolve;\r\n });\r\n // stopInternal should never throw so just observe it.\r\n return [4 /*yield*/, this.stopInternal(error)];\r\n case 1:\r\n // stopInternal should never throw so just observe it.\r\n _a.sent();\r\n return [4 /*yield*/, this.stopPromise];\r\n case 2:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.stopInternal = function (error) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var e_1, e_2;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n // Set error as soon as possible otherwise there is a race between\r\n // the transport closing and providing an error and the error from a close message\r\n // We would prefer the close message error.\r\n this.stopError = error;\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.startInternalPromise];\r\n case 2:\r\n _a.sent();\r\n return [3 /*break*/, 4];\r\n case 3:\r\n e_1 = _a.sent();\r\n return [3 /*break*/, 4];\r\n case 4:\r\n if (!this.transport) return [3 /*break*/, 9];\r\n _a.label = 5;\r\n case 5:\r\n _a.trys.push([5, 7, , 8]);\r\n return [4 /*yield*/, this.transport.stop()];\r\n case 6:\r\n _a.sent();\r\n return [3 /*break*/, 8];\r\n case 7:\r\n e_2 = _a.sent();\r\n this.logger.log(LogLevel.Error, \"HttpConnection.transport.stop() threw error '\" + e_2 + \"'.\");\r\n this.stopConnection();\r\n return [3 /*break*/, 8];\r\n case 8:\r\n this.transport = undefined;\r\n return [3 /*break*/, 10];\r\n case 9:\r\n this.logger.log(LogLevel.Debug, \"HttpConnection.transport is undefined in HttpConnection.stop() because start() failed.\");\r\n _a.label = 10;\r\n case 10: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.startInternal = function (transferFormat) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var url, negotiateResponse, redirects, _loop_1, this_1, e_3;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n url = this.baseUrl;\r\n this.accessTokenFactory = this.options.accessTokenFactory;\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 12, , 13]);\r\n if (!this.options.skipNegotiation) return [3 /*break*/, 5];\r\n if (!(this.options.transport === HttpTransportType.WebSockets)) return [3 /*break*/, 3];\r\n // No need to add a connection ID in this case\r\n this.transport = this.constructTransport(HttpTransportType.WebSockets);\r\n // We should just call connect directly in this case.\r\n // No fallback or negotiate in this case.\r\n return [4 /*yield*/, this.startTransport(url, transferFormat)];\r\n case 2:\r\n // We should just call connect directly in this case.\r\n // No fallback or negotiate in this case.\r\n _a.sent();\r\n return [3 /*break*/, 4];\r\n case 3: throw new Error(\"Negotiation can only be skipped when using the WebSocket transport directly.\");\r\n case 4: return [3 /*break*/, 11];\r\n case 5:\r\n negotiateResponse = null;\r\n redirects = 0;\r\n _loop_1 = function () {\r\n var accessToken_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this_1.getNegotiationResponse(url)];\r\n case 1:\r\n negotiateResponse = _a.sent();\r\n // the user tries to stop the connection when it is being started\r\n if (this_1.connectionState === \"Disconnecting\" /* Disconnecting */ || this_1.connectionState === \"Disconnected\" /* Disconnected */) {\r\n throw new Error(\"The connection was stopped during negotiation.\");\r\n }\r\n if (negotiateResponse.error) {\r\n throw new Error(negotiateResponse.error);\r\n }\r\n if (negotiateResponse.ProtocolVersion) {\r\n throw new Error(\"Detected a connection attempt to an ASP.NET SignalR Server. This client only supports connecting to an ASP.NET Core SignalR Server. See https://aka.ms/signalr-core-differences for details.\");\r\n }\r\n if (negotiateResponse.url) {\r\n url = negotiateResponse.url;\r\n }\r\n if (negotiateResponse.accessToken) {\r\n accessToken_1 = negotiateResponse.accessToken;\r\n this_1.accessTokenFactory = function () { return accessToken_1; };\r\n }\r\n redirects++;\r\n return [2 /*return*/];\r\n }\r\n });\r\n };\r\n this_1 = this;\r\n _a.label = 6;\r\n case 6: return [5 /*yield**/, _loop_1()];\r\n case 7:\r\n _a.sent();\r\n _a.label = 8;\r\n case 8:\r\n if (negotiateResponse.url && redirects < MAX_REDIRECTS) return [3 /*break*/, 6];\r\n _a.label = 9;\r\n case 9:\r\n if (redirects === MAX_REDIRECTS && negotiateResponse.url) {\r\n throw new Error(\"Negotiate redirection limit exceeded.\");\r\n }\r\n return [4 /*yield*/, this.createTransport(url, this.options.transport, negotiateResponse, transferFormat)];\r\n case 10:\r\n _a.sent();\r\n _a.label = 11;\r\n case 11:\r\n if (this.transport instanceof LongPollingTransport) {\r\n this.features.inherentKeepAlive = true;\r\n }\r\n if (this.connectionState === \"Connecting\" /* Connecting */) {\r\n // Ensure the connection transitions to the connected state prior to completing this.startInternalPromise.\r\n // start() will handle the case when stop was called and startInternal exits still in the disconnecting state.\r\n this.logger.log(LogLevel.Debug, \"The HttpConnection connected successfully.\");\r\n this.connectionState = \"Connected\" /* Connected */;\r\n }\r\n return [3 /*break*/, 13];\r\n case 12:\r\n e_3 = _a.sent();\r\n this.logger.log(LogLevel.Error, \"Failed to start the connection: \" + e_3);\r\n this.connectionState = \"Disconnected\" /* Disconnected */;\r\n this.transport = undefined;\r\n // if start fails, any active calls to stop assume that start will complete the stop promise\r\n this.stopPromiseResolver();\r\n return [2 /*return*/, Promise.reject(e_3)];\r\n case 13: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.getNegotiationResponse = function (url) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var headers, token, _a, name, value, negotiateUrl, response, negotiateResponse, e_4;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n headers = {};\r\n if (!this.accessTokenFactory) return [3 /*break*/, 2];\r\n return [4 /*yield*/, this.accessTokenFactory()];\r\n case 1:\r\n token = _b.sent();\r\n if (token) {\r\n headers[\"Authorization\"] = \"Bearer \" + token;\r\n }\r\n _b.label = 2;\r\n case 2:\r\n _a = getUserAgentHeader(), name = _a[0], value = _a[1];\r\n headers[name] = value;\r\n negotiateUrl = this.resolveNegotiateUrl(url);\r\n this.logger.log(LogLevel.Debug, \"Sending negotiation request: \" + negotiateUrl + \".\");\r\n _b.label = 3;\r\n case 3:\r\n _b.trys.push([3, 5, , 6]);\r\n return [4 /*yield*/, this.httpClient.post(negotiateUrl, {\r\n content: \"\",\r\n headers: __assign({}, headers, this.options.headers),\r\n withCredentials: this.options.withCredentials,\r\n })];\r\n case 4:\r\n response = _b.sent();\r\n if (response.statusCode !== 200) {\r\n return [2 /*return*/, Promise.reject(new Error(\"Unexpected status code returned from negotiate '\" + response.statusCode + \"'\"))];\r\n }\r\n negotiateResponse = JSON.parse(response.content);\r\n if (!negotiateResponse.negotiateVersion || negotiateResponse.negotiateVersion < 1) {\r\n // Negotiate version 0 doesn't use connectionToken\r\n // So we set it equal to connectionId so all our logic can use connectionToken without being aware of the negotiate version\r\n negotiateResponse.connectionToken = negotiateResponse.connectionId;\r\n }\r\n return [2 /*return*/, negotiateResponse];\r\n case 5:\r\n e_4 = _b.sent();\r\n this.logger.log(LogLevel.Error, \"Failed to complete negotiation with the server: \" + e_4);\r\n return [2 /*return*/, Promise.reject(e_4)];\r\n case 6: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.createConnectUrl = function (url, connectionToken) {\r\n if (!connectionToken) {\r\n return url;\r\n }\r\n return url + (url.indexOf(\"?\") === -1 ? \"?\" : \"&\") + (\"id=\" + connectionToken);\r\n };\r\n HttpConnection.prototype.createTransport = function (url, requestedTransport, negotiateResponse, requestedTransferFormat) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var connectUrl, transportExceptions, transports, negotiate, _i, transports_1, endpoint, transportOrError, ex_1, ex_2, message;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n connectUrl = this.createConnectUrl(url, negotiateResponse.connectionToken);\r\n if (!this.isITransport(requestedTransport)) return [3 /*break*/, 2];\r\n this.logger.log(LogLevel.Debug, \"Connection was provided an instance of ITransport, using that directly.\");\r\n this.transport = requestedTransport;\r\n return [4 /*yield*/, this.startTransport(connectUrl, requestedTransferFormat)];\r\n case 1:\r\n _a.sent();\r\n this.connectionId = negotiateResponse.connectionId;\r\n return [2 /*return*/];\r\n case 2:\r\n transportExceptions = [];\r\n transports = negotiateResponse.availableTransports || [];\r\n negotiate = negotiateResponse;\r\n _i = 0, transports_1 = transports;\r\n _a.label = 3;\r\n case 3:\r\n if (!(_i < transports_1.length)) return [3 /*break*/, 13];\r\n endpoint = transports_1[_i];\r\n transportOrError = this.resolveTransportOrError(endpoint, requestedTransport, requestedTransferFormat);\r\n if (!(transportOrError instanceof Error)) return [3 /*break*/, 4];\r\n // Store the error and continue, we don't want to cause a re-negotiate in these cases\r\n transportExceptions.push(endpoint.transport + \" failed: \" + transportOrError);\r\n return [3 /*break*/, 12];\r\n case 4:\r\n if (!this.isITransport(transportOrError)) return [3 /*break*/, 12];\r\n this.transport = transportOrError;\r\n if (!!negotiate) return [3 /*break*/, 9];\r\n _a.label = 5;\r\n case 5:\r\n _a.trys.push([5, 7, , 8]);\r\n return [4 /*yield*/, this.getNegotiationResponse(url)];\r\n case 6:\r\n negotiate = _a.sent();\r\n return [3 /*break*/, 8];\r\n case 7:\r\n ex_1 = _a.sent();\r\n return [2 /*return*/, Promise.reject(ex_1)];\r\n case 8:\r\n connectUrl = this.createConnectUrl(url, negotiate.connectionToken);\r\n _a.label = 9;\r\n case 9:\r\n _a.trys.push([9, 11, , 12]);\r\n return [4 /*yield*/, this.startTransport(connectUrl, requestedTransferFormat)];\r\n case 10:\r\n _a.sent();\r\n this.connectionId = negotiate.connectionId;\r\n return [2 /*return*/];\r\n case 11:\r\n ex_2 = _a.sent();\r\n this.logger.log(LogLevel.Error, \"Failed to start the transport '\" + endpoint.transport + \"': \" + ex_2);\r\n negotiate = undefined;\r\n transportExceptions.push(endpoint.transport + \" failed: \" + ex_2);\r\n if (this.connectionState !== \"Connecting\" /* Connecting */) {\r\n message = \"Failed to select transport before stop() was called.\";\r\n this.logger.log(LogLevel.Debug, message);\r\n return [2 /*return*/, Promise.reject(new Error(message))];\r\n }\r\n return [3 /*break*/, 12];\r\n case 12:\r\n _i++;\r\n return [3 /*break*/, 3];\r\n case 13:\r\n if (transportExceptions.length > 0) {\r\n return [2 /*return*/, Promise.reject(new Error(\"Unable to connect to the server with any of the available transports. \" + transportExceptions.join(\" \")))];\r\n }\r\n return [2 /*return*/, Promise.reject(new Error(\"None of the transports supported by the client are supported by the server.\"))];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.constructTransport = function (transport) {\r\n switch (transport) {\r\n case HttpTransportType.WebSockets:\r\n if (!this.options.WebSocket) {\r\n throw new Error(\"'WebSocket' is not supported in your environment.\");\r\n }\r\n return new WebSocketTransport(this.httpClient, this.accessTokenFactory, this.logger, this.options.logMessageContent || false, this.options.WebSocket, this.options.headers || {});\r\n case HttpTransportType.ServerSentEvents:\r\n if (!this.options.EventSource) {\r\n throw new Error(\"'EventSource' is not supported in your environment.\");\r\n }\r\n return new ServerSentEventsTransport(this.httpClient, this.accessTokenFactory, this.logger, this.options.logMessageContent || false, this.options.EventSource, this.options.withCredentials, this.options.headers || {});\r\n case HttpTransportType.LongPolling:\r\n return new LongPollingTransport(this.httpClient, this.accessTokenFactory, this.logger, this.options.logMessageContent || false, this.options.withCredentials, this.options.headers || {});\r\n default:\r\n throw new Error(\"Unknown transport: \" + transport + \".\");\r\n }\r\n };\r\n HttpConnection.prototype.startTransport = function (url, transferFormat) {\r\n var _this = this;\r\n this.transport.onreceive = this.onreceive;\r\n this.transport.onclose = function (e) { return _this.stopConnection(e); };\r\n return this.transport.connect(url, transferFormat);\r\n };\r\n HttpConnection.prototype.resolveTransportOrError = function (endpoint, requestedTransport, requestedTransferFormat) {\r\n var transport = HttpTransportType[endpoint.transport];\r\n if (transport === null || transport === undefined) {\r\n this.logger.log(LogLevel.Debug, \"Skipping transport '\" + endpoint.transport + \"' because it is not supported by this client.\");\r\n return new Error(\"Skipping transport '\" + endpoint.transport + \"' because it is not supported by this client.\");\r\n }\r\n else {\r\n if (transportMatches(requestedTransport, transport)) {\r\n var transferFormats = endpoint.transferFormats.map(function (s) { return TransferFormat[s]; });\r\n if (transferFormats.indexOf(requestedTransferFormat) >= 0) {\r\n if ((transport === HttpTransportType.WebSockets && !this.options.WebSocket) ||\r\n (transport === HttpTransportType.ServerSentEvents && !this.options.EventSource)) {\r\n this.logger.log(LogLevel.Debug, \"Skipping transport '\" + HttpTransportType[transport] + \"' because it is not supported in your environment.'\");\r\n return new Error(\"'\" + HttpTransportType[transport] + \"' is not supported in your environment.\");\r\n }\r\n else {\r\n this.logger.log(LogLevel.Debug, \"Selecting transport '\" + HttpTransportType[transport] + \"'.\");\r\n try {\r\n return this.constructTransport(transport);\r\n }\r\n catch (ex) {\r\n return ex;\r\n }\r\n }\r\n }\r\n else {\r\n this.logger.log(LogLevel.Debug, \"Skipping transport '\" + HttpTransportType[transport] + \"' because it does not support the requested transfer format '\" + TransferFormat[requestedTransferFormat] + \"'.\");\r\n return new Error(\"'\" + HttpTransportType[transport] + \"' does not support \" + TransferFormat[requestedTransferFormat] + \".\");\r\n }\r\n }\r\n else {\r\n this.logger.log(LogLevel.Debug, \"Skipping transport '\" + HttpTransportType[transport] + \"' because it was disabled by the client.\");\r\n return new Error(\"'\" + HttpTransportType[transport] + \"' is disabled by the client.\");\r\n }\r\n }\r\n };\r\n HttpConnection.prototype.isITransport = function (transport) {\r\n return transport && typeof (transport) === \"object\" && \"connect\" in transport;\r\n };\r\n HttpConnection.prototype.stopConnection = function (error) {\r\n var _this = this;\r\n this.logger.log(LogLevel.Debug, \"HttpConnection.stopConnection(\" + error + \") called while in state \" + this.connectionState + \".\");\r\n this.transport = undefined;\r\n // If we have a stopError, it takes precedence over the error from the transport\r\n error = this.stopError || error;\r\n this.stopError = undefined;\r\n if (this.connectionState === \"Disconnected\" /* Disconnected */) {\r\n this.logger.log(LogLevel.Debug, \"Call to HttpConnection.stopConnection(\" + error + \") was ignored because the connection is already in the disconnected state.\");\r\n return;\r\n }\r\n if (this.connectionState === \"Connecting\" /* Connecting */) {\r\n this.logger.log(LogLevel.Warning, \"Call to HttpConnection.stopConnection(\" + error + \") was ignored because the connection is still in the connecting state.\");\r\n throw new Error(\"HttpConnection.stopConnection(\" + error + \") was called while the connection is still in the connecting state.\");\r\n }\r\n if (this.connectionState === \"Disconnecting\" /* Disconnecting */) {\r\n // A call to stop() induced this call to stopConnection and needs to be completed.\r\n // Any stop() awaiters will be scheduled to continue after the onclose callback fires.\r\n this.stopPromiseResolver();\r\n }\r\n if (error) {\r\n this.logger.log(LogLevel.Error, \"Connection disconnected with error '\" + error + \"'.\");\r\n }\r\n else {\r\n this.logger.log(LogLevel.Information, \"Connection disconnected.\");\r\n }\r\n if (this.sendQueue) {\r\n this.sendQueue.stop().catch(function (e) {\r\n _this.logger.log(LogLevel.Error, \"TransportSendQueue.stop() threw error '\" + e + \"'.\");\r\n });\r\n this.sendQueue = undefined;\r\n }\r\n this.connectionId = undefined;\r\n this.connectionState = \"Disconnected\" /* Disconnected */;\r\n if (this.connectionStarted) {\r\n this.connectionStarted = false;\r\n try {\r\n if (this.onclose) {\r\n this.onclose(error);\r\n }\r\n }\r\n catch (e) {\r\n this.logger.log(LogLevel.Error, \"HttpConnection.onclose(\" + error + \") threw error '\" + e + \"'.\");\r\n }\r\n }\r\n };\r\n HttpConnection.prototype.resolveUrl = function (url) {\r\n // startsWith is not supported in IE\r\n if (url.lastIndexOf(\"https://\", 0) === 0 || url.lastIndexOf(\"http://\", 0) === 0) {\r\n return url;\r\n }\r\n if (!Platform.isBrowser || !window.document) {\r\n throw new Error(\"Cannot resolve '\" + url + \"'.\");\r\n }\r\n // Setting the url to the href propery of an anchor tag handles normalization\r\n // for us. There are 3 main cases.\r\n // 1. Relative path normalization e.g \"b\" -> \"http://localhost:5000/a/b\"\r\n // 2. Absolute path normalization e.g \"/a/b\" -> \"http://localhost:5000/a/b\"\r\n // 3. Networkpath reference normalization e.g \"//localhost:5000/a/b\" -> \"http://localhost:5000/a/b\"\r\n var aTag = window.document.createElement(\"a\");\r\n aTag.href = url;\r\n this.logger.log(LogLevel.Information, \"Normalizing '\" + url + \"' to '\" + aTag.href + \"'.\");\r\n return aTag.href;\r\n };\r\n HttpConnection.prototype.resolveNegotiateUrl = function (url) {\r\n var index = url.indexOf(\"?\");\r\n var negotiateUrl = url.substring(0, index === -1 ? url.length : index);\r\n if (negotiateUrl[negotiateUrl.length - 1] !== \"/\") {\r\n negotiateUrl += \"/\";\r\n }\r\n negotiateUrl += \"negotiate\";\r\n negotiateUrl += index === -1 ? \"\" : url.substring(index);\r\n if (negotiateUrl.indexOf(\"negotiateVersion\") === -1) {\r\n negotiateUrl += index === -1 ? \"?\" : \"&\";\r\n negotiateUrl += \"negotiateVersion=\" + this.negotiateVersion;\r\n }\r\n return negotiateUrl;\r\n };\r\n return HttpConnection;\r\n}());\r\nexport { HttpConnection };\r\nfunction transportMatches(requestedTransport, actualTransport) {\r\n return !requestedTransport || ((actualTransport & requestedTransport) !== 0);\r\n}\r\n/** @private */\r\nvar TransportSendQueue = /** @class */ (function () {\r\n function TransportSendQueue(transport) {\r\n this.transport = transport;\r\n this.buffer = [];\r\n this.executing = true;\r\n this.sendBufferedData = new PromiseSource();\r\n this.transportResult = new PromiseSource();\r\n this.sendLoopPromise = this.sendLoop();\r\n }\r\n TransportSendQueue.prototype.send = function (data) {\r\n this.bufferData(data);\r\n if (!this.transportResult) {\r\n this.transportResult = new PromiseSource();\r\n }\r\n return this.transportResult.promise;\r\n };\r\n TransportSendQueue.prototype.stop = function () {\r\n this.executing = false;\r\n this.sendBufferedData.resolve();\r\n return this.sendLoopPromise;\r\n };\r\n TransportSendQueue.prototype.bufferData = function (data) {\r\n if (this.buffer.length && typeof (this.buffer[0]) !== typeof (data)) {\r\n throw new Error(\"Expected data to be of type \" + typeof (this.buffer) + \" but was of type \" + typeof (data));\r\n }\r\n this.buffer.push(data);\r\n this.sendBufferedData.resolve();\r\n };\r\n TransportSendQueue.prototype.sendLoop = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var transportResult, data, error_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!true) return [3 /*break*/, 6];\r\n return [4 /*yield*/, this.sendBufferedData.promise];\r\n case 1:\r\n _a.sent();\r\n if (!this.executing) {\r\n if (this.transportResult) {\r\n this.transportResult.reject(\"Connection stopped.\");\r\n }\r\n return [3 /*break*/, 6];\r\n }\r\n this.sendBufferedData = new PromiseSource();\r\n transportResult = this.transportResult;\r\n this.transportResult = undefined;\r\n data = typeof (this.buffer[0]) === \"string\" ?\r\n this.buffer.join(\"\") :\r\n TransportSendQueue.concatBuffers(this.buffer);\r\n this.buffer.length = 0;\r\n _a.label = 2;\r\n case 2:\r\n _a.trys.push([2, 4, , 5]);\r\n return [4 /*yield*/, this.transport.send(data)];\r\n case 3:\r\n _a.sent();\r\n transportResult.resolve();\r\n return [3 /*break*/, 5];\r\n case 4:\r\n error_1 = _a.sent();\r\n transportResult.reject(error_1);\r\n return [3 /*break*/, 5];\r\n case 5: return [3 /*break*/, 0];\r\n case 6: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n TransportSendQueue.concatBuffers = function (arrayBuffers) {\r\n var totalLength = arrayBuffers.map(function (b) { return b.byteLength; }).reduce(function (a, b) { return a + b; });\r\n var result = new Uint8Array(totalLength);\r\n var offset = 0;\r\n for (var _i = 0, arrayBuffers_1 = arrayBuffers; _i < arrayBuffers_1.length; _i++) {\r\n var item = arrayBuffers_1[_i];\r\n result.set(new Uint8Array(item), offset);\r\n offset += item.byteLength;\r\n }\r\n return result.buffer;\r\n };\r\n return TransportSendQueue;\r\n}());\r\nexport { TransportSendQueue };\r\nvar PromiseSource = /** @class */ (function () {\r\n function PromiseSource() {\r\n var _this = this;\r\n this.promise = new Promise(function (resolve, reject) {\r\n var _a;\r\n return _a = [resolve, reject], _this.resolver = _a[0], _this.rejecter = _a[1], _a;\r\n });\r\n }\r\n PromiseSource.prototype.resolve = function () {\r\n this.resolver();\r\n };\r\n PromiseSource.prototype.reject = function (reason) {\r\n this.rejecter(reason);\r\n };\r\n return PromiseSource;\r\n}());\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nimport { HandshakeProtocol } from \"./HandshakeProtocol\";\r\nimport { MessageType } from \"./IHubProtocol\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { Subject } from \"./Subject\";\r\nimport { Arg } from \"./Utils\";\r\nvar DEFAULT_TIMEOUT_IN_MS = 30 * 1000;\r\nvar DEFAULT_PING_INTERVAL_IN_MS = 15 * 1000;\r\n/** Describes the current state of the {@link HubConnection} to the server. */\r\nexport var HubConnectionState;\r\n(function (HubConnectionState) {\r\n /** The hub connection is disconnected. */\r\n HubConnectionState[\"Disconnected\"] = \"Disconnected\";\r\n /** The hub connection is connecting. */\r\n HubConnectionState[\"Connecting\"] = \"Connecting\";\r\n /** The hub connection is connected. */\r\n HubConnectionState[\"Connected\"] = \"Connected\";\r\n /** The hub connection is disconnecting. */\r\n HubConnectionState[\"Disconnecting\"] = \"Disconnecting\";\r\n /** The hub connection is reconnecting. */\r\n HubConnectionState[\"Reconnecting\"] = \"Reconnecting\";\r\n})(HubConnectionState || (HubConnectionState = {}));\r\n/** Represents a connection to a SignalR Hub. */\r\nvar HubConnection = /** @class */ (function () {\r\n function HubConnection(connection, logger, protocol, reconnectPolicy) {\r\n var _this = this;\r\n this.nextKeepAlive = 0;\r\n Arg.isRequired(connection, \"connection\");\r\n Arg.isRequired(logger, \"logger\");\r\n Arg.isRequired(protocol, \"protocol\");\r\n this.serverTimeoutInMilliseconds = DEFAULT_TIMEOUT_IN_MS;\r\n this.keepAliveIntervalInMilliseconds = DEFAULT_PING_INTERVAL_IN_MS;\r\n this.logger = logger;\r\n this.protocol = protocol;\r\n this.connection = connection;\r\n this.reconnectPolicy = reconnectPolicy;\r\n this.handshakeProtocol = new HandshakeProtocol();\r\n this.connection.onreceive = function (data) { return _this.processIncomingData(data); };\r\n this.connection.onclose = function (error) { return _this.connectionClosed(error); };\r\n this.callbacks = {};\r\n this.methods = {};\r\n this.closedCallbacks = [];\r\n this.reconnectingCallbacks = [];\r\n this.reconnectedCallbacks = [];\r\n this.invocationId = 0;\r\n this.receivedHandshakeResponse = false;\r\n this.connectionState = HubConnectionState.Disconnected;\r\n this.connectionStarted = false;\r\n this.cachedPingMessage = this.protocol.writeMessage({ type: MessageType.Ping });\r\n }\r\n /** @internal */\r\n // Using a public static factory method means we can have a private constructor and an _internal_\r\n // create method that can be used by HubConnectionBuilder. An \"internal\" constructor would just\r\n // be stripped away and the '.d.ts' file would have no constructor, which is interpreted as a\r\n // public parameter-less constructor.\r\n HubConnection.create = function (connection, logger, protocol, reconnectPolicy) {\r\n return new HubConnection(connection, logger, protocol, reconnectPolicy);\r\n };\r\n Object.defineProperty(HubConnection.prototype, \"state\", {\r\n /** Indicates the state of the {@link HubConnection} to the server. */\r\n get: function () {\r\n return this.connectionState;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HubConnection.prototype, \"connectionId\", {\r\n /** Represents the connection id of the {@link HubConnection} on the server. The connection id will be null when the connection is either\r\n * in the disconnected state or if the negotiation step was skipped.\r\n */\r\n get: function () {\r\n return this.connection ? (this.connection.connectionId || null) : null;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(HubConnection.prototype, \"baseUrl\", {\r\n /** Indicates the url of the {@link HubConnection} to the server. */\r\n get: function () {\r\n return this.connection.baseUrl || \"\";\r\n },\r\n /**\r\n * Sets a new url for the HubConnection. Note that the url can only be changed when the connection is in either the Disconnected or\r\n * Reconnecting states.\r\n * @param {string} url The url to connect to.\r\n */\r\n set: function (url) {\r\n if (this.connectionState !== HubConnectionState.Disconnected && this.connectionState !== HubConnectionState.Reconnecting) {\r\n throw new Error(\"The HubConnection must be in the Disconnected or Reconnecting state to change the url.\");\r\n }\r\n if (!url) {\r\n throw new Error(\"The HubConnection url must be a valid url.\");\r\n }\r\n this.connection.baseUrl = url;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n /** Starts the connection.\r\n *\r\n * @returns {Promise} A Promise that resolves when the connection has been successfully established, or rejects with an error.\r\n */\r\n HubConnection.prototype.start = function () {\r\n this.startPromise = this.startWithStateTransitions();\r\n return this.startPromise;\r\n };\r\n HubConnection.prototype.startWithStateTransitions = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var e_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (this.connectionState !== HubConnectionState.Disconnected) {\r\n return [2 /*return*/, Promise.reject(new Error(\"Cannot start a HubConnection that is not in the 'Disconnected' state.\"))];\r\n }\r\n this.connectionState = HubConnectionState.Connecting;\r\n this.logger.log(LogLevel.Debug, \"Starting HubConnection.\");\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.startInternal()];\r\n case 2:\r\n _a.sent();\r\n this.connectionState = HubConnectionState.Connected;\r\n this.connectionStarted = true;\r\n this.logger.log(LogLevel.Debug, \"HubConnection connected successfully.\");\r\n return [3 /*break*/, 4];\r\n case 3:\r\n e_1 = _a.sent();\r\n this.connectionState = HubConnectionState.Disconnected;\r\n this.logger.log(LogLevel.Debug, \"HubConnection failed to start successfully because of error '\" + e_1 + \"'.\");\r\n return [2 /*return*/, Promise.reject(e_1)];\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HubConnection.prototype.startInternal = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var handshakePromise, handshakeRequest, e_2;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n this.stopDuringStartError = undefined;\r\n this.receivedHandshakeResponse = false;\r\n handshakePromise = new Promise(function (resolve, reject) {\r\n _this.handshakeResolver = resolve;\r\n _this.handshakeRejecter = reject;\r\n });\r\n return [4 /*yield*/, this.connection.start(this.protocol.transferFormat)];\r\n case 1:\r\n _a.sent();\r\n _a.label = 2;\r\n case 2:\r\n _a.trys.push([2, 5, , 7]);\r\n handshakeRequest = {\r\n protocol: this.protocol.name,\r\n version: this.protocol.version,\r\n };\r\n this.logger.log(LogLevel.Debug, \"Sending handshake request.\");\r\n return [4 /*yield*/, this.sendMessage(this.handshakeProtocol.writeHandshakeRequest(handshakeRequest))];\r\n case 3:\r\n _a.sent();\r\n this.logger.log(LogLevel.Information, \"Using HubProtocol '\" + this.protocol.name + \"'.\");\r\n // defensively cleanup timeout in case we receive a message from the server before we finish start\r\n this.cleanupTimeout();\r\n this.resetTimeoutPeriod();\r\n this.resetKeepAliveInterval();\r\n return [4 /*yield*/, handshakePromise];\r\n case 4:\r\n _a.sent();\r\n // It's important to check the stopDuringStartError instead of just relying on the handshakePromise\r\n // being rejected on close, because this continuation can run after both the handshake completed successfully\r\n // and the connection was closed.\r\n if (this.stopDuringStartError) {\r\n // It's important to throw instead of returning a rejected promise, because we don't want to allow any state\r\n // transitions to occur between now and the calling code observing the exceptions. Returning a rejected promise\r\n // will cause the calling continuation to get scheduled to run later.\r\n throw this.stopDuringStartError;\r\n }\r\n return [3 /*break*/, 7];\r\n case 5:\r\n e_2 = _a.sent();\r\n this.logger.log(LogLevel.Debug, \"Hub handshake failed with error '\" + e_2 + \"' during start(). Stopping HubConnection.\");\r\n this.cleanupTimeout();\r\n this.cleanupPingTimer();\r\n // HttpConnection.stop() should not complete until after the onclose callback is invoked.\r\n // This will transition the HubConnection to the disconnected state before HttpConnection.stop() completes.\r\n return [4 /*yield*/, this.connection.stop(e_2)];\r\n case 6:\r\n // HttpConnection.stop() should not complete until after the onclose callback is invoked.\r\n // This will transition the HubConnection to the disconnected state before HttpConnection.stop() completes.\r\n _a.sent();\r\n throw e_2;\r\n case 7: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /** Stops the connection.\r\n *\r\n * @returns {Promise} A Promise that resolves when the connection has been successfully terminated, or rejects with an error.\r\n */\r\n HubConnection.prototype.stop = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var startPromise, e_3;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n startPromise = this.startPromise;\r\n this.stopPromise = this.stopInternal();\r\n return [4 /*yield*/, this.stopPromise];\r\n case 1:\r\n _a.sent();\r\n _a.label = 2;\r\n case 2:\r\n _a.trys.push([2, 4, , 5]);\r\n // Awaiting undefined continues immediately\r\n return [4 /*yield*/, startPromise];\r\n case 3:\r\n // Awaiting undefined continues immediately\r\n _a.sent();\r\n return [3 /*break*/, 5];\r\n case 4:\r\n e_3 = _a.sent();\r\n return [3 /*break*/, 5];\r\n case 5: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HubConnection.prototype.stopInternal = function (error) {\r\n if (this.connectionState === HubConnectionState.Disconnected) {\r\n this.logger.log(LogLevel.Debug, \"Call to HubConnection.stop(\" + error + \") ignored because it is already in the disconnected state.\");\r\n return Promise.resolve();\r\n }\r\n if (this.connectionState === HubConnectionState.Disconnecting) {\r\n this.logger.log(LogLevel.Debug, \"Call to HttpConnection.stop(\" + error + \") ignored because the connection is already in the disconnecting state.\");\r\n return this.stopPromise;\r\n }\r\n this.connectionState = HubConnectionState.Disconnecting;\r\n this.logger.log(LogLevel.Debug, \"Stopping HubConnection.\");\r\n if (this.reconnectDelayHandle) {\r\n // We're in a reconnect delay which means the underlying connection is currently already stopped.\r\n // Just clear the handle to stop the reconnect loop (which no one is waiting on thankfully) and\r\n // fire the onclose callbacks.\r\n this.logger.log(LogLevel.Debug, \"Connection stopped during reconnect delay. Done reconnecting.\");\r\n clearTimeout(this.reconnectDelayHandle);\r\n this.reconnectDelayHandle = undefined;\r\n this.completeClose();\r\n return Promise.resolve();\r\n }\r\n this.cleanupTimeout();\r\n this.cleanupPingTimer();\r\n this.stopDuringStartError = error || new Error(\"The connection was stopped before the hub handshake could complete.\");\r\n // HttpConnection.stop() should not complete until after either HttpConnection.start() fails\r\n // or the onclose callback is invoked. The onclose callback will transition the HubConnection\r\n // to the disconnected state if need be before HttpConnection.stop() completes.\r\n return this.connection.stop(error);\r\n };\r\n /** Invokes a streaming hub method on the server using the specified name and arguments.\r\n *\r\n * @typeparam T The type of the items returned by the server.\r\n * @param {string} methodName The name of the server method to invoke.\r\n * @param {any[]} args The arguments used to invoke the server method.\r\n * @returns {IStreamResult} An object that yields results from the server as they are received.\r\n */\r\n HubConnection.prototype.stream = function (methodName) {\r\n var _this = this;\r\n var args = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n args[_i - 1] = arguments[_i];\r\n }\r\n var _a = this.replaceStreamingParams(args), streams = _a[0], streamIds = _a[1];\r\n var invocationDescriptor = this.createStreamInvocation(methodName, args, streamIds);\r\n var promiseQueue;\r\n var subject = new Subject();\r\n subject.cancelCallback = function () {\r\n var cancelInvocation = _this.createCancelInvocation(invocationDescriptor.invocationId);\r\n delete _this.callbacks[invocationDescriptor.invocationId];\r\n return promiseQueue.then(function () {\r\n return _this.sendWithProtocol(cancelInvocation);\r\n });\r\n };\r\n this.callbacks[invocationDescriptor.invocationId] = function (invocationEvent, error) {\r\n if (error) {\r\n subject.error(error);\r\n return;\r\n }\r\n else if (invocationEvent) {\r\n // invocationEvent will not be null when an error is not passed to the callback\r\n if (invocationEvent.type === MessageType.Completion) {\r\n if (invocationEvent.error) {\r\n subject.error(new Error(invocationEvent.error));\r\n }\r\n else {\r\n subject.complete();\r\n }\r\n }\r\n else {\r\n subject.next((invocationEvent.item));\r\n }\r\n }\r\n };\r\n promiseQueue = this.sendWithProtocol(invocationDescriptor)\r\n .catch(function (e) {\r\n subject.error(e);\r\n delete _this.callbacks[invocationDescriptor.invocationId];\r\n });\r\n this.launchStreams(streams, promiseQueue);\r\n return subject;\r\n };\r\n HubConnection.prototype.sendMessage = function (message) {\r\n this.resetKeepAliveInterval();\r\n return this.connection.send(message);\r\n };\r\n /**\r\n * Sends a js object to the server.\r\n * @param message The js object to serialize and send.\r\n */\r\n HubConnection.prototype.sendWithProtocol = function (message) {\r\n return this.sendMessage(this.protocol.writeMessage(message));\r\n };\r\n /** Invokes a hub method on the server using the specified name and arguments. Does not wait for a response from the receiver.\r\n *\r\n * The Promise returned by this method resolves when the client has sent the invocation to the server. The server may still\r\n * be processing the invocation.\r\n *\r\n * @param {string} methodName The name of the server method to invoke.\r\n * @param {any[]} args The arguments used to invoke the server method.\r\n * @returns {Promise} A Promise that resolves when the invocation has been successfully sent, or rejects with an error.\r\n */\r\n HubConnection.prototype.send = function (methodName) {\r\n var args = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n args[_i - 1] = arguments[_i];\r\n }\r\n var _a = this.replaceStreamingParams(args), streams = _a[0], streamIds = _a[1];\r\n var sendPromise = this.sendWithProtocol(this.createInvocation(methodName, args, true, streamIds));\r\n this.launchStreams(streams, sendPromise);\r\n return sendPromise;\r\n };\r\n /** Invokes a hub method on the server using the specified name and arguments.\r\n *\r\n * The Promise returned by this method resolves when the server indicates it has finished invoking the method. When the promise\r\n * resolves, the server has finished invoking the method. If the server method returns a result, it is produced as the result of\r\n * resolving the Promise.\r\n *\r\n * @typeparam T The expected return type.\r\n * @param {string} methodName The name of the server method to invoke.\r\n * @param {any[]} args The arguments used to invoke the server method.\r\n * @returns {Promise} A Promise that resolves with the result of the server method (if any), or rejects with an error.\r\n */\r\n HubConnection.prototype.invoke = function (methodName) {\r\n var _this = this;\r\n var args = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n args[_i - 1] = arguments[_i];\r\n }\r\n var _a = this.replaceStreamingParams(args), streams = _a[0], streamIds = _a[1];\r\n var invocationDescriptor = this.createInvocation(methodName, args, false, streamIds);\r\n var p = new Promise(function (resolve, reject) {\r\n // invocationId will always have a value for a non-blocking invocation\r\n _this.callbacks[invocationDescriptor.invocationId] = function (invocationEvent, error) {\r\n if (error) {\r\n reject(error);\r\n return;\r\n }\r\n else if (invocationEvent) {\r\n // invocationEvent will not be null when an error is not passed to the callback\r\n if (invocationEvent.type === MessageType.Completion) {\r\n if (invocationEvent.error) {\r\n reject(new Error(invocationEvent.error));\r\n }\r\n else {\r\n resolve(invocationEvent.result);\r\n }\r\n }\r\n else {\r\n reject(new Error(\"Unexpected message type: \" + invocationEvent.type));\r\n }\r\n }\r\n };\r\n var promiseQueue = _this.sendWithProtocol(invocationDescriptor)\r\n .catch(function (e) {\r\n reject(e);\r\n // invocationId will always have a value for a non-blocking invocation\r\n delete _this.callbacks[invocationDescriptor.invocationId];\r\n });\r\n _this.launchStreams(streams, promiseQueue);\r\n });\r\n return p;\r\n };\r\n /** Registers a handler that will be invoked when the hub method with the specified method name is invoked.\r\n *\r\n * @param {string} methodName The name of the hub method to define.\r\n * @param {Function} newMethod The handler that will be raised when the hub method is invoked.\r\n */\r\n HubConnection.prototype.on = function (methodName, newMethod) {\r\n if (!methodName || !newMethod) {\r\n return;\r\n }\r\n methodName = methodName.toLowerCase();\r\n if (!this.methods[methodName]) {\r\n this.methods[methodName] = [];\r\n }\r\n // Preventing adding the same handler multiple times.\r\n if (this.methods[methodName].indexOf(newMethod) !== -1) {\r\n return;\r\n }\r\n this.methods[methodName].push(newMethod);\r\n };\r\n HubConnection.prototype.off = function (methodName, method) {\r\n if (!methodName) {\r\n return;\r\n }\r\n methodName = methodName.toLowerCase();\r\n var handlers = this.methods[methodName];\r\n if (!handlers) {\r\n return;\r\n }\r\n if (method) {\r\n var removeIdx = handlers.indexOf(method);\r\n if (removeIdx !== -1) {\r\n handlers.splice(removeIdx, 1);\r\n if (handlers.length === 0) {\r\n delete this.methods[methodName];\r\n }\r\n }\r\n }\r\n else {\r\n delete this.methods[methodName];\r\n }\r\n };\r\n /** Registers a handler that will be invoked when the connection is closed.\r\n *\r\n * @param {Function} callback The handler that will be invoked when the connection is closed. Optionally receives a single argument containing the error that caused the connection to close (if any).\r\n */\r\n HubConnection.prototype.onclose = function (callback) {\r\n if (callback) {\r\n this.closedCallbacks.push(callback);\r\n }\r\n };\r\n /** Registers a handler that will be invoked when the connection starts reconnecting.\r\n *\r\n * @param {Function} callback The handler that will be invoked when the connection starts reconnecting. Optionally receives a single argument containing the error that caused the connection to start reconnecting (if any).\r\n */\r\n HubConnection.prototype.onreconnecting = function (callback) {\r\n if (callback) {\r\n this.reconnectingCallbacks.push(callback);\r\n }\r\n };\r\n /** Registers a handler that will be invoked when the connection successfully reconnects.\r\n *\r\n * @param {Function} callback The handler that will be invoked when the connection successfully reconnects.\r\n */\r\n HubConnection.prototype.onreconnected = function (callback) {\r\n if (callback) {\r\n this.reconnectedCallbacks.push(callback);\r\n }\r\n };\r\n HubConnection.prototype.processIncomingData = function (data) {\r\n this.cleanupTimeout();\r\n if (!this.receivedHandshakeResponse) {\r\n data = this.processHandshakeResponse(data);\r\n this.receivedHandshakeResponse = true;\r\n }\r\n // Data may have all been read when processing handshake response\r\n if (data) {\r\n // Parse the messages\r\n var messages = this.protocol.parseMessages(data, this.logger);\r\n for (var _i = 0, messages_1 = messages; _i < messages_1.length; _i++) {\r\n var message = messages_1[_i];\r\n switch (message.type) {\r\n case MessageType.Invocation:\r\n this.invokeClientMethod(message);\r\n break;\r\n case MessageType.StreamItem:\r\n case MessageType.Completion:\r\n var callback = this.callbacks[message.invocationId];\r\n if (callback) {\r\n if (message.type === MessageType.Completion) {\r\n delete this.callbacks[message.invocationId];\r\n }\r\n callback(message);\r\n }\r\n break;\r\n case MessageType.Ping:\r\n // Don't care about pings\r\n break;\r\n case MessageType.Close:\r\n this.logger.log(LogLevel.Information, \"Close message received from server.\");\r\n var error = message.error ? new Error(\"Server returned an error on close: \" + message.error) : undefined;\r\n if (message.allowReconnect === true) {\r\n // It feels wrong not to await connection.stop() here, but processIncomingData is called as part of an onreceive callback which is not async,\r\n // this is already the behavior for serverTimeout(), and HttpConnection.Stop() should catch and log all possible exceptions.\r\n // tslint:disable-next-line:no-floating-promises\r\n this.connection.stop(error);\r\n }\r\n else {\r\n // We cannot await stopInternal() here, but subsequent calls to stop() will await this if stopInternal() is still ongoing.\r\n this.stopPromise = this.stopInternal(error);\r\n }\r\n break;\r\n default:\r\n this.logger.log(LogLevel.Warning, \"Invalid message type: \" + message.type + \".\");\r\n break;\r\n }\r\n }\r\n }\r\n this.resetTimeoutPeriod();\r\n };\r\n HubConnection.prototype.processHandshakeResponse = function (data) {\r\n var _a;\r\n var responseMessage;\r\n var remainingData;\r\n try {\r\n _a = this.handshakeProtocol.parseHandshakeResponse(data), remainingData = _a[0], responseMessage = _a[1];\r\n }\r\n catch (e) {\r\n var message = \"Error parsing handshake response: \" + e;\r\n this.logger.log(LogLevel.Error, message);\r\n var error = new Error(message);\r\n this.handshakeRejecter(error);\r\n throw error;\r\n }\r\n if (responseMessage.error) {\r\n var message = \"Server returned handshake error: \" + responseMessage.error;\r\n this.logger.log(LogLevel.Error, message);\r\n var error = new Error(message);\r\n this.handshakeRejecter(error);\r\n throw error;\r\n }\r\n else {\r\n this.logger.log(LogLevel.Debug, \"Server handshake complete.\");\r\n }\r\n this.handshakeResolver();\r\n return remainingData;\r\n };\r\n HubConnection.prototype.resetKeepAliveInterval = function () {\r\n if (this.connection.features.inherentKeepAlive) {\r\n return;\r\n }\r\n // Set the time we want the next keep alive to be sent\r\n // Timer will be setup on next message receive\r\n this.nextKeepAlive = new Date().getTime() + this.keepAliveIntervalInMilliseconds;\r\n this.cleanupPingTimer();\r\n };\r\n HubConnection.prototype.resetTimeoutPeriod = function () {\r\n var _this = this;\r\n if (!this.connection.features || !this.connection.features.inherentKeepAlive) {\r\n // Set the timeout timer\r\n this.timeoutHandle = setTimeout(function () { return _this.serverTimeout(); }, this.serverTimeoutInMilliseconds);\r\n // Set keepAlive timer if there isn't one\r\n if (this.pingServerHandle === undefined) {\r\n var nextPing = this.nextKeepAlive - new Date().getTime();\r\n if (nextPing < 0) {\r\n nextPing = 0;\r\n }\r\n // The timer needs to be set from a networking callback to avoid Chrome timer throttling from causing timers to run once a minute\r\n this.pingServerHandle = setTimeout(function () { return __awaiter(_this, void 0, void 0, function () {\r\n var _a;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n if (!(this.connectionState === HubConnectionState.Connected)) return [3 /*break*/, 4];\r\n _b.label = 1;\r\n case 1:\r\n _b.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.sendMessage(this.cachedPingMessage)];\r\n case 2:\r\n _b.sent();\r\n return [3 /*break*/, 4];\r\n case 3:\r\n _a = _b.sent();\r\n // We don't care about the error. It should be seen elsewhere in the client.\r\n // The connection is probably in a bad or closed state now, cleanup the timer so it stops triggering\r\n this.cleanupPingTimer();\r\n return [3 /*break*/, 4];\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n }); }, nextPing);\r\n }\r\n }\r\n };\r\n HubConnection.prototype.serverTimeout = function () {\r\n // The server hasn't talked to us in a while. It doesn't like us anymore ... :(\r\n // Terminate the connection, but we don't need to wait on the promise. This could trigger reconnecting.\r\n // tslint:disable-next-line:no-floating-promises\r\n this.connection.stop(new Error(\"Server timeout elapsed without receiving a message from the server.\"));\r\n };\r\n HubConnection.prototype.invokeClientMethod = function (invocationMessage) {\r\n var _this = this;\r\n var methods = this.methods[invocationMessage.target.toLowerCase()];\r\n if (methods) {\r\n try {\r\n methods.forEach(function (m) { return m.apply(_this, invocationMessage.arguments); });\r\n }\r\n catch (e) {\r\n this.logger.log(LogLevel.Error, \"A callback for the method \" + invocationMessage.target.toLowerCase() + \" threw error '\" + e + \"'.\");\r\n }\r\n if (invocationMessage.invocationId) {\r\n // This is not supported in v1. So we return an error to avoid blocking the server waiting for the response.\r\n var message = \"Server requested a response, which is not supported in this version of the client.\";\r\n this.logger.log(LogLevel.Error, message);\r\n // We don't want to wait on the stop itself.\r\n this.stopPromise = this.stopInternal(new Error(message));\r\n }\r\n }\r\n else {\r\n this.logger.log(LogLevel.Warning, \"No client method with the name '\" + invocationMessage.target + \"' found.\");\r\n }\r\n };\r\n HubConnection.prototype.connectionClosed = function (error) {\r\n this.logger.log(LogLevel.Debug, \"HubConnection.connectionClosed(\" + error + \") called while in state \" + this.connectionState + \".\");\r\n // Triggering this.handshakeRejecter is insufficient because it could already be resolved without the continuation having run yet.\r\n this.stopDuringStartError = this.stopDuringStartError || error || new Error(\"The underlying connection was closed before the hub handshake could complete.\");\r\n // If the handshake is in progress, start will be waiting for the handshake promise, so we complete it.\r\n // If it has already completed, this should just noop.\r\n if (this.handshakeResolver) {\r\n this.handshakeResolver();\r\n }\r\n this.cancelCallbacksWithError(error || new Error(\"Invocation canceled due to the underlying connection being closed.\"));\r\n this.cleanupTimeout();\r\n this.cleanupPingTimer();\r\n if (this.connectionState === HubConnectionState.Disconnecting) {\r\n this.completeClose(error);\r\n }\r\n else if (this.connectionState === HubConnectionState.Connected && this.reconnectPolicy) {\r\n // tslint:disable-next-line:no-floating-promises\r\n this.reconnect(error);\r\n }\r\n else if (this.connectionState === HubConnectionState.Connected) {\r\n this.completeClose(error);\r\n }\r\n // If none of the above if conditions were true were called the HubConnection must be in either:\r\n // 1. The Connecting state in which case the handshakeResolver will complete it and stopDuringStartError will fail it.\r\n // 2. The Reconnecting state in which case the handshakeResolver will complete it and stopDuringStartError will fail the current reconnect attempt\r\n // and potentially continue the reconnect() loop.\r\n // 3. The Disconnected state in which case we're already done.\r\n };\r\n HubConnection.prototype.completeClose = function (error) {\r\n var _this = this;\r\n if (this.connectionStarted) {\r\n this.connectionState = HubConnectionState.Disconnected;\r\n this.connectionStarted = false;\r\n try {\r\n this.closedCallbacks.forEach(function (c) { return c.apply(_this, [error]); });\r\n }\r\n catch (e) {\r\n this.logger.log(LogLevel.Error, \"An onclose callback called with error '\" + error + \"' threw error '\" + e + \"'.\");\r\n }\r\n }\r\n };\r\n HubConnection.prototype.reconnect = function (error) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var reconnectStartTime, previousReconnectAttempts, retryError, nextRetryDelay, e_4;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n reconnectStartTime = Date.now();\r\n previousReconnectAttempts = 0;\r\n retryError = error !== undefined ? error : new Error(\"Attempting to reconnect due to a unknown error.\");\r\n nextRetryDelay = this.getNextRetryDelay(previousReconnectAttempts++, 0, retryError);\r\n if (nextRetryDelay === null) {\r\n this.logger.log(LogLevel.Debug, \"Connection not reconnecting because the IRetryPolicy returned null on the first reconnect attempt.\");\r\n this.completeClose(error);\r\n return [2 /*return*/];\r\n }\r\n this.connectionState = HubConnectionState.Reconnecting;\r\n if (error) {\r\n this.logger.log(LogLevel.Information, \"Connection reconnecting because of error '\" + error + \"'.\");\r\n }\r\n else {\r\n this.logger.log(LogLevel.Information, \"Connection reconnecting.\");\r\n }\r\n if (this.onreconnecting) {\r\n try {\r\n this.reconnectingCallbacks.forEach(function (c) { return c.apply(_this, [error]); });\r\n }\r\n catch (e) {\r\n this.logger.log(LogLevel.Error, \"An onreconnecting callback called with error '\" + error + \"' threw error '\" + e + \"'.\");\r\n }\r\n // Exit early if an onreconnecting callback called connection.stop().\r\n if (this.connectionState !== HubConnectionState.Reconnecting) {\r\n this.logger.log(LogLevel.Debug, \"Connection left the reconnecting state in onreconnecting callback. Done reconnecting.\");\r\n return [2 /*return*/];\r\n }\r\n }\r\n _a.label = 1;\r\n case 1:\r\n if (!(nextRetryDelay !== null)) return [3 /*break*/, 7];\r\n this.logger.log(LogLevel.Information, \"Reconnect attempt number \" + previousReconnectAttempts + \" will start in \" + nextRetryDelay + \" ms.\");\r\n return [4 /*yield*/, new Promise(function (resolve) {\r\n _this.reconnectDelayHandle = setTimeout(resolve, nextRetryDelay);\r\n })];\r\n case 2:\r\n _a.sent();\r\n this.reconnectDelayHandle = undefined;\r\n if (this.connectionState !== HubConnectionState.Reconnecting) {\r\n this.logger.log(LogLevel.Debug, \"Connection left the reconnecting state during reconnect delay. Done reconnecting.\");\r\n return [2 /*return*/];\r\n }\r\n _a.label = 3;\r\n case 3:\r\n _a.trys.push([3, 5, , 6]);\r\n return [4 /*yield*/, this.startInternal()];\r\n case 4:\r\n _a.sent();\r\n this.connectionState = HubConnectionState.Connected;\r\n this.logger.log(LogLevel.Information, \"HubConnection reconnected successfully.\");\r\n if (this.onreconnected) {\r\n try {\r\n this.reconnectedCallbacks.forEach(function (c) { return c.apply(_this, [_this.connection.connectionId]); });\r\n }\r\n catch (e) {\r\n this.logger.log(LogLevel.Error, \"An onreconnected callback called with connectionId '\" + this.connection.connectionId + \"; threw error '\" + e + \"'.\");\r\n }\r\n }\r\n return [2 /*return*/];\r\n case 5:\r\n e_4 = _a.sent();\r\n this.logger.log(LogLevel.Information, \"Reconnect attempt failed because of error '\" + e_4 + \"'.\");\r\n if (this.connectionState !== HubConnectionState.Reconnecting) {\r\n this.logger.log(LogLevel.Debug, \"Connection moved to the '\" + this.connectionState + \"' from the reconnecting state during reconnect attempt. Done reconnecting.\");\r\n // The TypeScript compiler thinks that connectionState must be Connected here. The TypeScript compiler is wrong.\r\n if (this.connectionState === HubConnectionState.Disconnecting) {\r\n this.completeClose();\r\n }\r\n return [2 /*return*/];\r\n }\r\n retryError = e_4 instanceof Error ? e_4 : new Error(e_4.toString());\r\n nextRetryDelay = this.getNextRetryDelay(previousReconnectAttempts++, Date.now() - reconnectStartTime, retryError);\r\n return [3 /*break*/, 6];\r\n case 6: return [3 /*break*/, 1];\r\n case 7:\r\n this.logger.log(LogLevel.Information, \"Reconnect retries have been exhausted after \" + (Date.now() - reconnectStartTime) + \" ms and \" + previousReconnectAttempts + \" failed attempts. Connection disconnecting.\");\r\n this.completeClose();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HubConnection.prototype.getNextRetryDelay = function (previousRetryCount, elapsedMilliseconds, retryReason) {\r\n try {\r\n return this.reconnectPolicy.nextRetryDelayInMilliseconds({\r\n elapsedMilliseconds: elapsedMilliseconds,\r\n previousRetryCount: previousRetryCount,\r\n retryReason: retryReason,\r\n });\r\n }\r\n catch (e) {\r\n this.logger.log(LogLevel.Error, \"IRetryPolicy.nextRetryDelayInMilliseconds(\" + previousRetryCount + \", \" + elapsedMilliseconds + \") threw error '\" + e + \"'.\");\r\n return null;\r\n }\r\n };\r\n HubConnection.prototype.cancelCallbacksWithError = function (error) {\r\n var callbacks = this.callbacks;\r\n this.callbacks = {};\r\n Object.keys(callbacks)\r\n .forEach(function (key) {\r\n var callback = callbacks[key];\r\n callback(null, error);\r\n });\r\n };\r\n HubConnection.prototype.cleanupPingTimer = function () {\r\n if (this.pingServerHandle) {\r\n clearTimeout(this.pingServerHandle);\r\n this.pingServerHandle = undefined;\r\n }\r\n };\r\n HubConnection.prototype.cleanupTimeout = function () {\r\n if (this.timeoutHandle) {\r\n clearTimeout(this.timeoutHandle);\r\n }\r\n };\r\n HubConnection.prototype.createInvocation = function (methodName, args, nonblocking, streamIds) {\r\n if (nonblocking) {\r\n if (streamIds.length !== 0) {\r\n return {\r\n arguments: args,\r\n streamIds: streamIds,\r\n target: methodName,\r\n type: MessageType.Invocation,\r\n };\r\n }\r\n else {\r\n return {\r\n arguments: args,\r\n target: methodName,\r\n type: MessageType.Invocation,\r\n };\r\n }\r\n }\r\n else {\r\n var invocationId = this.invocationId;\r\n this.invocationId++;\r\n if (streamIds.length !== 0) {\r\n return {\r\n arguments: args,\r\n invocationId: invocationId.toString(),\r\n streamIds: streamIds,\r\n target: methodName,\r\n type: MessageType.Invocation,\r\n };\r\n }\r\n else {\r\n return {\r\n arguments: args,\r\n invocationId: invocationId.toString(),\r\n target: methodName,\r\n type: MessageType.Invocation,\r\n };\r\n }\r\n }\r\n };\r\n HubConnection.prototype.launchStreams = function (streams, promiseQueue) {\r\n var _this = this;\r\n if (streams.length === 0) {\r\n return;\r\n }\r\n // Synchronize stream data so they arrive in-order on the server\r\n if (!promiseQueue) {\r\n promiseQueue = Promise.resolve();\r\n }\r\n var _loop_1 = function (streamId) {\r\n streams[streamId].subscribe({\r\n complete: function () {\r\n promiseQueue = promiseQueue.then(function () { return _this.sendWithProtocol(_this.createCompletionMessage(streamId)); });\r\n },\r\n error: function (err) {\r\n var message;\r\n if (err instanceof Error) {\r\n message = err.message;\r\n }\r\n else if (err && err.toString) {\r\n message = err.toString();\r\n }\r\n else {\r\n message = \"Unknown error\";\r\n }\r\n promiseQueue = promiseQueue.then(function () { return _this.sendWithProtocol(_this.createCompletionMessage(streamId, message)); });\r\n },\r\n next: function (item) {\r\n promiseQueue = promiseQueue.then(function () { return _this.sendWithProtocol(_this.createStreamItemMessage(streamId, item)); });\r\n },\r\n });\r\n };\r\n // We want to iterate over the keys, since the keys are the stream ids\r\n // tslint:disable-next-line:forin\r\n for (var streamId in streams) {\r\n _loop_1(streamId);\r\n }\r\n };\r\n HubConnection.prototype.replaceStreamingParams = function (args) {\r\n var streams = [];\r\n var streamIds = [];\r\n for (var i = 0; i < args.length; i++) {\r\n var argument = args[i];\r\n if (this.isObservable(argument)) {\r\n var streamId = this.invocationId;\r\n this.invocationId++;\r\n // Store the stream for later use\r\n streams[streamId] = argument;\r\n streamIds.push(streamId.toString());\r\n // remove stream from args\r\n args.splice(i, 1);\r\n }\r\n }\r\n return [streams, streamIds];\r\n };\r\n HubConnection.prototype.isObservable = function (arg) {\r\n // This allows other stream implementations to just work (like rxjs)\r\n return arg && arg.subscribe && typeof arg.subscribe === \"function\";\r\n };\r\n HubConnection.prototype.createStreamInvocation = function (methodName, args, streamIds) {\r\n var invocationId = this.invocationId;\r\n this.invocationId++;\r\n if (streamIds.length !== 0) {\r\n return {\r\n arguments: args,\r\n invocationId: invocationId.toString(),\r\n streamIds: streamIds,\r\n target: methodName,\r\n type: MessageType.StreamInvocation,\r\n };\r\n }\r\n else {\r\n return {\r\n arguments: args,\r\n invocationId: invocationId.toString(),\r\n target: methodName,\r\n type: MessageType.StreamInvocation,\r\n };\r\n }\r\n };\r\n HubConnection.prototype.createCancelInvocation = function (id) {\r\n return {\r\n invocationId: id,\r\n type: MessageType.CancelInvocation,\r\n };\r\n };\r\n HubConnection.prototype.createStreamItemMessage = function (id, item) {\r\n return {\r\n invocationId: id,\r\n item: item,\r\n type: MessageType.StreamItem,\r\n };\r\n };\r\n HubConnection.prototype.createCompletionMessage = function (id, error, result) {\r\n if (error) {\r\n return {\r\n error: error,\r\n invocationId: id,\r\n type: MessageType.Completion,\r\n };\r\n }\r\n return {\r\n invocationId: id,\r\n result: result,\r\n type: MessageType.Completion,\r\n };\r\n };\r\n return HubConnection;\r\n}());\r\nexport { HubConnection };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __assign = (this && this.__assign) || Object.assign || function(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))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n};\r\nimport { DefaultReconnectPolicy } from \"./DefaultReconnectPolicy\";\r\nimport { HttpConnection } from \"./HttpConnection\";\r\nimport { HubConnection } from \"./HubConnection\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { JsonHubProtocol } from \"./JsonHubProtocol\";\r\nimport { NullLogger } from \"./Loggers\";\r\nimport { Arg, ConsoleLogger } from \"./Utils\";\r\n// tslint:disable:object-literal-sort-keys\r\nvar LogLevelNameMapping = {\r\n trace: LogLevel.Trace,\r\n debug: LogLevel.Debug,\r\n info: LogLevel.Information,\r\n information: LogLevel.Information,\r\n warn: LogLevel.Warning,\r\n warning: LogLevel.Warning,\r\n error: LogLevel.Error,\r\n critical: LogLevel.Critical,\r\n none: LogLevel.None,\r\n};\r\nfunction parseLogLevel(name) {\r\n // Case-insensitive matching via lower-casing\r\n // Yes, I know case-folding is a complicated problem in Unicode, but we only support\r\n // the ASCII strings defined in LogLevelNameMapping anyway, so it's fine -anurse.\r\n var mapping = LogLevelNameMapping[name.toLowerCase()];\r\n if (typeof mapping !== \"undefined\") {\r\n return mapping;\r\n }\r\n else {\r\n throw new Error(\"Unknown log level: \" + name);\r\n }\r\n}\r\n/** A builder for configuring {@link @microsoft/signalr.HubConnection} instances. */\r\nvar HubConnectionBuilder = /** @class */ (function () {\r\n function HubConnectionBuilder() {\r\n }\r\n HubConnectionBuilder.prototype.configureLogging = function (logging) {\r\n Arg.isRequired(logging, \"logging\");\r\n if (isLogger(logging)) {\r\n this.logger = logging;\r\n }\r\n else if (typeof logging === \"string\") {\r\n var logLevel = parseLogLevel(logging);\r\n this.logger = new ConsoleLogger(logLevel);\r\n }\r\n else {\r\n this.logger = new ConsoleLogger(logging);\r\n }\r\n return this;\r\n };\r\n HubConnectionBuilder.prototype.withUrl = function (url, transportTypeOrOptions) {\r\n Arg.isRequired(url, \"url\");\r\n Arg.isNotEmpty(url, \"url\");\r\n this.url = url;\r\n // Flow-typing knows where it's at. Since HttpTransportType is a number and IHttpConnectionOptions is guaranteed\r\n // to be an object, we know (as does TypeScript) this comparison is all we need to figure out which overload was called.\r\n if (typeof transportTypeOrOptions === \"object\") {\r\n this.httpConnectionOptions = __assign({}, this.httpConnectionOptions, transportTypeOrOptions);\r\n }\r\n else {\r\n this.httpConnectionOptions = __assign({}, this.httpConnectionOptions, { transport: transportTypeOrOptions });\r\n }\r\n return this;\r\n };\r\n /** Configures the {@link @microsoft/signalr.HubConnection} to use the specified Hub Protocol.\r\n *\r\n * @param {IHubProtocol} protocol The {@link @microsoft/signalr.IHubProtocol} implementation to use.\r\n */\r\n HubConnectionBuilder.prototype.withHubProtocol = function (protocol) {\r\n Arg.isRequired(protocol, \"protocol\");\r\n this.protocol = protocol;\r\n return this;\r\n };\r\n HubConnectionBuilder.prototype.withAutomaticReconnect = function (retryDelaysOrReconnectPolicy) {\r\n if (this.reconnectPolicy) {\r\n throw new Error(\"A reconnectPolicy has already been set.\");\r\n }\r\n if (!retryDelaysOrReconnectPolicy) {\r\n this.reconnectPolicy = new DefaultReconnectPolicy();\r\n }\r\n else if (Array.isArray(retryDelaysOrReconnectPolicy)) {\r\n this.reconnectPolicy = new DefaultReconnectPolicy(retryDelaysOrReconnectPolicy);\r\n }\r\n else {\r\n this.reconnectPolicy = retryDelaysOrReconnectPolicy;\r\n }\r\n return this;\r\n };\r\n /** Creates a {@link @microsoft/signalr.HubConnection} from the configuration options specified in this builder.\r\n *\r\n * @returns {HubConnection} The configured {@link @microsoft/signalr.HubConnection}.\r\n */\r\n HubConnectionBuilder.prototype.build = function () {\r\n // If httpConnectionOptions has a logger, use it. Otherwise, override it with the one\r\n // provided to configureLogger\r\n var httpConnectionOptions = this.httpConnectionOptions || {};\r\n // If it's 'null', the user **explicitly** asked for null, don't mess with it.\r\n if (httpConnectionOptions.logger === undefined) {\r\n // If our logger is undefined or null, that's OK, the HttpConnection constructor will handle it.\r\n httpConnectionOptions.logger = this.logger;\r\n }\r\n // Now create the connection\r\n if (!this.url) {\r\n throw new Error(\"The 'HubConnectionBuilder.withUrl' method must be called before building the connection.\");\r\n }\r\n var connection = new HttpConnection(this.url, httpConnectionOptions);\r\n return HubConnection.create(connection, this.logger || NullLogger.instance, this.protocol || new JsonHubProtocol(), this.reconnectPolicy);\r\n };\r\n return HubConnectionBuilder;\r\n}());\r\nexport { HubConnectionBuilder };\r\nfunction isLogger(logger) {\r\n return logger.log !== undefined;\r\n}\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\n/** Defines the type of a Hub Message. */\r\nexport var MessageType;\r\n(function (MessageType) {\r\n /** Indicates the message is an Invocation message and implements the {@link @microsoft/signalr.InvocationMessage} interface. */\r\n MessageType[MessageType[\"Invocation\"] = 1] = \"Invocation\";\r\n /** Indicates the message is a StreamItem message and implements the {@link @microsoft/signalr.StreamItemMessage} interface. */\r\n MessageType[MessageType[\"StreamItem\"] = 2] = \"StreamItem\";\r\n /** Indicates the message is a Completion message and implements the {@link @microsoft/signalr.CompletionMessage} interface. */\r\n MessageType[MessageType[\"Completion\"] = 3] = \"Completion\";\r\n /** Indicates the message is a Stream Invocation message and implements the {@link @microsoft/signalr.StreamInvocationMessage} interface. */\r\n MessageType[MessageType[\"StreamInvocation\"] = 4] = \"StreamInvocation\";\r\n /** Indicates the message is a Cancel Invocation message and implements the {@link @microsoft/signalr.CancelInvocationMessage} interface. */\r\n MessageType[MessageType[\"CancelInvocation\"] = 5] = \"CancelInvocation\";\r\n /** Indicates the message is a Ping message and implements the {@link @microsoft/signalr.PingMessage} interface. */\r\n MessageType[MessageType[\"Ping\"] = 6] = \"Ping\";\r\n /** Indicates the message is a Close message and implements the {@link @microsoft/signalr.CloseMessage} interface. */\r\n MessageType[MessageType[\"Close\"] = 7] = \"Close\";\r\n})(MessageType || (MessageType = {}));\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\n// These values are designed to match the ASP.NET Log Levels since that's the pattern we're emulating here.\r\n/** Indicates the severity of a log message.\r\n *\r\n * Log Levels are ordered in increasing severity. So `Debug` is more severe than `Trace`, etc.\r\n */\r\nexport var LogLevel;\r\n(function (LogLevel) {\r\n /** Log level for very low severity diagnostic messages. */\r\n LogLevel[LogLevel[\"Trace\"] = 0] = \"Trace\";\r\n /** Log level for low severity diagnostic messages. */\r\n LogLevel[LogLevel[\"Debug\"] = 1] = \"Debug\";\r\n /** Log level for informational diagnostic messages. */\r\n LogLevel[LogLevel[\"Information\"] = 2] = \"Information\";\r\n /** Log level for diagnostic messages that indicate a non-fatal problem. */\r\n LogLevel[LogLevel[\"Warning\"] = 3] = \"Warning\";\r\n /** Log level for diagnostic messages that indicate a failure in the current operation. */\r\n LogLevel[LogLevel[\"Error\"] = 4] = \"Error\";\r\n /** Log level for diagnostic messages that indicate a failure that will terminate the entire application. */\r\n LogLevel[LogLevel[\"Critical\"] = 5] = \"Critical\";\r\n /** The highest possible log level. Used when configuring logging to indicate that no log messages should be emitted. */\r\n LogLevel[LogLevel[\"None\"] = 6] = \"None\";\r\n})(LogLevel || (LogLevel = {}));\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\n// This will be treated as a bit flag in the future, so we keep it using power-of-two values.\r\n/** Specifies a specific HTTP transport type. */\r\nexport var HttpTransportType;\r\n(function (HttpTransportType) {\r\n /** Specifies no transport preference. */\r\n HttpTransportType[HttpTransportType[\"None\"] = 0] = \"None\";\r\n /** Specifies the WebSockets transport. */\r\n HttpTransportType[HttpTransportType[\"WebSockets\"] = 1] = \"WebSockets\";\r\n /** Specifies the Server-Sent Events transport. */\r\n HttpTransportType[HttpTransportType[\"ServerSentEvents\"] = 2] = \"ServerSentEvents\";\r\n /** Specifies the Long Polling transport. */\r\n HttpTransportType[HttpTransportType[\"LongPolling\"] = 4] = \"LongPolling\";\r\n})(HttpTransportType || (HttpTransportType = {}));\r\n/** Specifies the transfer format for a connection. */\r\nexport var TransferFormat;\r\n(function (TransferFormat) {\r\n /** Specifies that only text data will be transmitted over the connection. */\r\n TransferFormat[TransferFormat[\"Text\"] = 1] = \"Text\";\r\n /** Specifies that binary data will be transmitted over the connection. */\r\n TransferFormat[TransferFormat[\"Binary\"] = 2] = \"Binary\";\r\n})(TransferFormat || (TransferFormat = {}));\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nimport { MessageType } from \"./IHubProtocol\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { TransferFormat } from \"./ITransport\";\r\nimport { NullLogger } from \"./Loggers\";\r\nimport { TextMessageFormat } from \"./TextMessageFormat\";\r\nvar JSON_HUB_PROTOCOL_NAME = \"json\";\r\n/** Implements the JSON Hub Protocol. */\r\nvar JsonHubProtocol = /** @class */ (function () {\r\n function JsonHubProtocol() {\r\n /** @inheritDoc */\r\n this.name = JSON_HUB_PROTOCOL_NAME;\r\n /** @inheritDoc */\r\n this.version = 1;\r\n /** @inheritDoc */\r\n this.transferFormat = TransferFormat.Text;\r\n }\r\n /** Creates an array of {@link @microsoft/signalr.HubMessage} objects from the specified serialized representation.\r\n *\r\n * @param {string} input A string containing the serialized representation.\r\n * @param {ILogger} logger A logger that will be used to log messages that occur during parsing.\r\n */\r\n JsonHubProtocol.prototype.parseMessages = function (input, logger) {\r\n // The interface does allow \"ArrayBuffer\" to be passed in, but this implementation does not. So let's throw a useful error.\r\n if (typeof input !== \"string\") {\r\n throw new Error(\"Invalid input for JSON hub protocol. Expected a string.\");\r\n }\r\n if (!input) {\r\n return [];\r\n }\r\n if (logger === null) {\r\n logger = NullLogger.instance;\r\n }\r\n // Parse the messages\r\n var messages = TextMessageFormat.parse(input);\r\n var hubMessages = [];\r\n for (var _i = 0, messages_1 = messages; _i < messages_1.length; _i++) {\r\n var message = messages_1[_i];\r\n var parsedMessage = JSON.parse(message);\r\n if (typeof parsedMessage.type !== \"number\") {\r\n throw new Error(\"Invalid payload.\");\r\n }\r\n switch (parsedMessage.type) {\r\n case MessageType.Invocation:\r\n this.isInvocationMessage(parsedMessage);\r\n break;\r\n case MessageType.StreamItem:\r\n this.isStreamItemMessage(parsedMessage);\r\n break;\r\n case MessageType.Completion:\r\n this.isCompletionMessage(parsedMessage);\r\n break;\r\n case MessageType.Ping:\r\n // Single value, no need to validate\r\n break;\r\n case MessageType.Close:\r\n // All optional values, no need to validate\r\n break;\r\n default:\r\n // Future protocol changes can add message types, old clients can ignore them\r\n logger.log(LogLevel.Information, \"Unknown message type '\" + parsedMessage.type + \"' ignored.\");\r\n continue;\r\n }\r\n hubMessages.push(parsedMessage);\r\n }\r\n return hubMessages;\r\n };\r\n /** Writes the specified {@link @microsoft/signalr.HubMessage} to a string and returns it.\r\n *\r\n * @param {HubMessage} message The message to write.\r\n * @returns {string} A string containing the serialized representation of the message.\r\n */\r\n JsonHubProtocol.prototype.writeMessage = function (message) {\r\n return TextMessageFormat.write(JSON.stringify(message));\r\n };\r\n JsonHubProtocol.prototype.isInvocationMessage = function (message) {\r\n this.assertNotEmptyString(message.target, \"Invalid payload for Invocation message.\");\r\n if (message.invocationId !== undefined) {\r\n this.assertNotEmptyString(message.invocationId, \"Invalid payload for Invocation message.\");\r\n }\r\n };\r\n JsonHubProtocol.prototype.isStreamItemMessage = function (message) {\r\n this.assertNotEmptyString(message.invocationId, \"Invalid payload for StreamItem message.\");\r\n if (message.item === undefined) {\r\n throw new Error(\"Invalid payload for StreamItem message.\");\r\n }\r\n };\r\n JsonHubProtocol.prototype.isCompletionMessage = function (message) {\r\n if (message.result && message.error) {\r\n throw new Error(\"Invalid payload for Completion message.\");\r\n }\r\n if (!message.result && message.error) {\r\n this.assertNotEmptyString(message.error, \"Invalid payload for Completion message.\");\r\n }\r\n this.assertNotEmptyString(message.invocationId, \"Invalid payload for Completion message.\");\r\n };\r\n JsonHubProtocol.prototype.assertNotEmptyString = function (value, errorMessage) {\r\n if (typeof value !== \"string\" || value === \"\") {\r\n throw new Error(errorMessage);\r\n }\r\n };\r\n return JsonHubProtocol;\r\n}());\r\nexport { JsonHubProtocol };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\n/** A logger that does nothing when log messages are sent to it. */\r\nvar NullLogger = /** @class */ (function () {\r\n function NullLogger() {\r\n }\r\n /** @inheritDoc */\r\n // tslint:disable-next-line\r\n NullLogger.prototype.log = function (_logLevel, _message) {\r\n };\r\n /** The singleton instance of the {@link @microsoft/signalr.NullLogger}. */\r\n NullLogger.instance = new NullLogger();\r\n return NullLogger;\r\n}());\r\nexport { NullLogger };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __assign = (this && this.__assign) || Object.assign || function(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))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n};\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nimport { AbortController } from \"./AbortController\";\r\nimport { HttpError, TimeoutError } from \"./Errors\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { TransferFormat } from \"./ITransport\";\r\nimport { Arg, getDataDetail, getUserAgentHeader, sendMessage } from \"./Utils\";\r\n// Not exported from 'index', this type is internal.\r\n/** @private */\r\nvar LongPollingTransport = /** @class */ (function () {\r\n function LongPollingTransport(httpClient, accessTokenFactory, logger, logMessageContent, withCredentials, headers) {\r\n this.httpClient = httpClient;\r\n this.accessTokenFactory = accessTokenFactory;\r\n this.logger = logger;\r\n this.pollAbort = new AbortController();\r\n this.logMessageContent = logMessageContent;\r\n this.withCredentials = withCredentials;\r\n this.headers = headers;\r\n this.running = false;\r\n this.onreceive = null;\r\n this.onclose = null;\r\n }\r\n Object.defineProperty(LongPollingTransport.prototype, \"pollAborted\", {\r\n // This is an internal type, not exported from 'index' so this is really just internal.\r\n get: function () {\r\n return this.pollAbort.aborted;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n LongPollingTransport.prototype.connect = function (url, transferFormat) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var _a, _b, name, value, headers, pollOptions, token, pollUrl, response;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n Arg.isRequired(url, \"url\");\r\n Arg.isRequired(transferFormat, \"transferFormat\");\r\n Arg.isIn(transferFormat, TransferFormat, \"transferFormat\");\r\n this.url = url;\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) Connecting.\");\r\n // Allow binary format on Node and Browsers that support binary content (indicated by the presence of responseType property)\r\n if (transferFormat === TransferFormat.Binary &&\r\n (typeof XMLHttpRequest !== \"undefined\" && typeof new XMLHttpRequest().responseType !== \"string\")) {\r\n throw new Error(\"Binary protocols over XmlHttpRequest not implementing advanced features are not supported.\");\r\n }\r\n _b = getUserAgentHeader(), name = _b[0], value = _b[1];\r\n headers = __assign((_a = {}, _a[name] = value, _a), this.headers);\r\n pollOptions = {\r\n abortSignal: this.pollAbort.signal,\r\n headers: headers,\r\n timeout: 100000,\r\n withCredentials: this.withCredentials,\r\n };\r\n if (transferFormat === TransferFormat.Binary) {\r\n pollOptions.responseType = \"arraybuffer\";\r\n }\r\n return [4 /*yield*/, this.getAccessToken()];\r\n case 1:\r\n token = _c.sent();\r\n this.updateHeaderToken(pollOptions, token);\r\n pollUrl = url + \"&_=\" + Date.now();\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) polling: \" + pollUrl + \".\");\r\n return [4 /*yield*/, this.httpClient.get(pollUrl, pollOptions)];\r\n case 2:\r\n response = _c.sent();\r\n if (response.statusCode !== 200) {\r\n this.logger.log(LogLevel.Error, \"(LongPolling transport) Unexpected response code: \" + response.statusCode + \".\");\r\n // Mark running as false so that the poll immediately ends and runs the close logic\r\n this.closeError = new HttpError(response.statusText || \"\", response.statusCode);\r\n this.running = false;\r\n }\r\n else {\r\n this.running = true;\r\n }\r\n this.receiving = this.poll(this.url, pollOptions);\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n LongPollingTransport.prototype.getAccessToken = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!this.accessTokenFactory) return [3 /*break*/, 2];\r\n return [4 /*yield*/, this.accessTokenFactory()];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n case 2: return [2 /*return*/, null];\r\n }\r\n });\r\n });\r\n };\r\n LongPollingTransport.prototype.updateHeaderToken = function (request, token) {\r\n if (!request.headers) {\r\n request.headers = {};\r\n }\r\n if (token) {\r\n // tslint:disable-next-line:no-string-literal\r\n request.headers[\"Authorization\"] = \"Bearer \" + token;\r\n return;\r\n }\r\n // tslint:disable-next-line:no-string-literal\r\n if (request.headers[\"Authorization\"]) {\r\n // tslint:disable-next-line:no-string-literal\r\n delete request.headers[\"Authorization\"];\r\n }\r\n };\r\n LongPollingTransport.prototype.poll = function (url, pollOptions) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var token, pollUrl, response, e_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, , 8, 9]);\r\n _a.label = 1;\r\n case 1:\r\n if (!this.running) return [3 /*break*/, 7];\r\n return [4 /*yield*/, this.getAccessToken()];\r\n case 2:\r\n token = _a.sent();\r\n this.updateHeaderToken(pollOptions, token);\r\n _a.label = 3;\r\n case 3:\r\n _a.trys.push([3, 5, , 6]);\r\n pollUrl = url + \"&_=\" + Date.now();\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) polling: \" + pollUrl + \".\");\r\n return [4 /*yield*/, this.httpClient.get(pollUrl, pollOptions)];\r\n case 4:\r\n response = _a.sent();\r\n if (response.statusCode === 204) {\r\n this.logger.log(LogLevel.Information, \"(LongPolling transport) Poll terminated by server.\");\r\n this.running = false;\r\n }\r\n else if (response.statusCode !== 200) {\r\n this.logger.log(LogLevel.Error, \"(LongPolling transport) Unexpected response code: \" + response.statusCode + \".\");\r\n // Unexpected status code\r\n this.closeError = new HttpError(response.statusText || \"\", response.statusCode);\r\n this.running = false;\r\n }\r\n else {\r\n // Process the response\r\n if (response.content) {\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) data received. \" + getDataDetail(response.content, this.logMessageContent) + \".\");\r\n if (this.onreceive) {\r\n this.onreceive(response.content);\r\n }\r\n }\r\n else {\r\n // This is another way timeout manifest.\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) Poll timed out, reissuing.\");\r\n }\r\n }\r\n return [3 /*break*/, 6];\r\n case 5:\r\n e_1 = _a.sent();\r\n if (!this.running) {\r\n // Log but disregard errors that occur after stopping\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) Poll errored after shutdown: \" + e_1.message);\r\n }\r\n else {\r\n if (e_1 instanceof TimeoutError) {\r\n // Ignore timeouts and reissue the poll.\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) Poll timed out, reissuing.\");\r\n }\r\n else {\r\n // Close the connection with the error as the result.\r\n this.closeError = e_1;\r\n this.running = false;\r\n }\r\n }\r\n return [3 /*break*/, 6];\r\n case 6: return [3 /*break*/, 1];\r\n case 7: return [3 /*break*/, 9];\r\n case 8:\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) Polling complete.\");\r\n // We will reach here with pollAborted==false when the server returned a response causing the transport to stop.\r\n // If pollAborted==true then client initiated the stop and the stop method will raise the close event after DELETE is sent.\r\n if (!this.pollAborted) {\r\n this.raiseOnClose();\r\n }\r\n return [7 /*endfinally*/];\r\n case 9: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n LongPollingTransport.prototype.send = function (data) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n if (!this.running) {\r\n return [2 /*return*/, Promise.reject(new Error(\"Cannot send until the transport is connected\"))];\r\n }\r\n return [2 /*return*/, sendMessage(this.logger, \"LongPolling\", this.httpClient, this.url, this.accessTokenFactory, data, this.logMessageContent, this.withCredentials, this.headers)];\r\n });\r\n });\r\n };\r\n LongPollingTransport.prototype.stop = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var headers, _a, name_1, value, deleteOptions, token;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) Stopping polling.\");\r\n // Tell receiving loop to stop, abort any current request, and then wait for it to finish\r\n this.running = false;\r\n this.pollAbort.abort();\r\n _b.label = 1;\r\n case 1:\r\n _b.trys.push([1, , 5, 6]);\r\n return [4 /*yield*/, this.receiving];\r\n case 2:\r\n _b.sent();\r\n // Send DELETE to clean up long polling on the server\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) sending DELETE request to \" + this.url + \".\");\r\n headers = {};\r\n _a = getUserAgentHeader(), name_1 = _a[0], value = _a[1];\r\n headers[name_1] = value;\r\n deleteOptions = {\r\n headers: __assign({}, headers, this.headers),\r\n withCredentials: this.withCredentials,\r\n };\r\n return [4 /*yield*/, this.getAccessToken()];\r\n case 3:\r\n token = _b.sent();\r\n this.updateHeaderToken(deleteOptions, token);\r\n return [4 /*yield*/, this.httpClient.delete(this.url, deleteOptions)];\r\n case 4:\r\n _b.sent();\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) DELETE request sent.\");\r\n return [3 /*break*/, 6];\r\n case 5:\r\n this.logger.log(LogLevel.Trace, \"(LongPolling transport) Stop finished.\");\r\n // Raise close event here instead of in polling\r\n // It needs to happen after the DELETE request is sent\r\n this.raiseOnClose();\r\n return [7 /*endfinally*/];\r\n case 6: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n LongPollingTransport.prototype.raiseOnClose = function () {\r\n if (this.onclose) {\r\n var logMessage = \"(LongPolling transport) Firing onclose event.\";\r\n if (this.closeError) {\r\n logMessage += \" Error: \" + this.closeError;\r\n }\r\n this.logger.log(LogLevel.Trace, logMessage);\r\n this.onclose(this.closeError);\r\n }\r\n };\r\n return LongPollingTransport;\r\n}());\r\nexport { LongPollingTransport };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __assign = (this && this.__assign) || Object.assign || function(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))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n};\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { TransferFormat } from \"./ITransport\";\r\nimport { Arg, getDataDetail, getUserAgentHeader, Platform, sendMessage } from \"./Utils\";\r\n/** @private */\r\nvar ServerSentEventsTransport = /** @class */ (function () {\r\n function ServerSentEventsTransport(httpClient, accessTokenFactory, logger, logMessageContent, eventSourceConstructor, withCredentials, headers) {\r\n this.httpClient = httpClient;\r\n this.accessTokenFactory = accessTokenFactory;\r\n this.logger = logger;\r\n this.logMessageContent = logMessageContent;\r\n this.withCredentials = withCredentials;\r\n this.eventSourceConstructor = eventSourceConstructor;\r\n this.headers = headers;\r\n this.onreceive = null;\r\n this.onclose = null;\r\n }\r\n ServerSentEventsTransport.prototype.connect = function (url, transferFormat) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var token;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n Arg.isRequired(url, \"url\");\r\n Arg.isRequired(transferFormat, \"transferFormat\");\r\n Arg.isIn(transferFormat, TransferFormat, \"transferFormat\");\r\n this.logger.log(LogLevel.Trace, \"(SSE transport) Connecting.\");\r\n // set url before accessTokenFactory because this.url is only for send and we set the auth header instead of the query string for send\r\n this.url = url;\r\n if (!this.accessTokenFactory) return [3 /*break*/, 2];\r\n return [4 /*yield*/, this.accessTokenFactory()];\r\n case 1:\r\n token = _a.sent();\r\n if (token) {\r\n url += (url.indexOf(\"?\") < 0 ? \"?\" : \"&\") + (\"access_token=\" + encodeURIComponent(token));\r\n }\r\n _a.label = 2;\r\n case 2: return [2 /*return*/, new Promise(function (resolve, reject) {\r\n var opened = false;\r\n if (transferFormat !== TransferFormat.Text) {\r\n reject(new Error(\"The Server-Sent Events transport only supports the 'Text' transfer format\"));\r\n return;\r\n }\r\n var eventSource;\r\n if (Platform.isBrowser || Platform.isWebWorker) {\r\n eventSource = new _this.eventSourceConstructor(url, { withCredentials: _this.withCredentials });\r\n }\r\n else {\r\n // Non-browser passes cookies via the dictionary\r\n var cookies = _this.httpClient.getCookieString(url);\r\n var headers = {};\r\n headers.Cookie = cookies;\r\n var _a = getUserAgentHeader(), name_1 = _a[0], value = _a[1];\r\n headers[name_1] = value;\r\n eventSource = new _this.eventSourceConstructor(url, { withCredentials: _this.withCredentials, headers: __assign({}, headers, _this.headers) });\r\n }\r\n try {\r\n eventSource.onmessage = function (e) {\r\n if (_this.onreceive) {\r\n try {\r\n _this.logger.log(LogLevel.Trace, \"(SSE transport) data received. \" + getDataDetail(e.data, _this.logMessageContent) + \".\");\r\n _this.onreceive(e.data);\r\n }\r\n catch (error) {\r\n _this.close(error);\r\n return;\r\n }\r\n }\r\n };\r\n eventSource.onerror = function (e) {\r\n var error = new Error(e.data || \"Error occurred\");\r\n if (opened) {\r\n _this.close(error);\r\n }\r\n else {\r\n reject(error);\r\n }\r\n };\r\n eventSource.onopen = function () {\r\n _this.logger.log(LogLevel.Information, \"SSE connected to \" + _this.url);\r\n _this.eventSource = eventSource;\r\n opened = true;\r\n resolve();\r\n };\r\n }\r\n catch (e) {\r\n reject(e);\r\n return;\r\n }\r\n })];\r\n }\r\n });\r\n });\r\n };\r\n ServerSentEventsTransport.prototype.send = function (data) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n if (!this.eventSource) {\r\n return [2 /*return*/, Promise.reject(new Error(\"Cannot send until the transport is connected\"))];\r\n }\r\n return [2 /*return*/, sendMessage(this.logger, \"SSE\", this.httpClient, this.url, this.accessTokenFactory, data, this.logMessageContent, this.withCredentials, this.headers)];\r\n });\r\n });\r\n };\r\n ServerSentEventsTransport.prototype.stop = function () {\r\n this.close();\r\n return Promise.resolve();\r\n };\r\n ServerSentEventsTransport.prototype.close = function (e) {\r\n if (this.eventSource) {\r\n this.eventSource.close();\r\n this.eventSource = undefined;\r\n if (this.onclose) {\r\n this.onclose(e);\r\n }\r\n }\r\n };\r\n return ServerSentEventsTransport;\r\n}());\r\nexport { ServerSentEventsTransport };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nimport { SubjectSubscription } from \"./Utils\";\r\n/** Stream implementation to stream items to the server. */\r\nvar Subject = /** @class */ (function () {\r\n function Subject() {\r\n this.observers = [];\r\n }\r\n Subject.prototype.next = function (item) {\r\n for (var _i = 0, _a = this.observers; _i < _a.length; _i++) {\r\n var observer = _a[_i];\r\n observer.next(item);\r\n }\r\n };\r\n Subject.prototype.error = function (err) {\r\n for (var _i = 0, _a = this.observers; _i < _a.length; _i++) {\r\n var observer = _a[_i];\r\n if (observer.error) {\r\n observer.error(err);\r\n }\r\n }\r\n };\r\n Subject.prototype.complete = function () {\r\n for (var _i = 0, _a = this.observers; _i < _a.length; _i++) {\r\n var observer = _a[_i];\r\n if (observer.complete) {\r\n observer.complete();\r\n }\r\n }\r\n };\r\n Subject.prototype.subscribe = function (observer) {\r\n this.observers.push(observer);\r\n return new SubjectSubscription(this, observer);\r\n };\r\n return Subject;\r\n}());\r\nexport { Subject };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\n// Not exported from index\r\n/** @private */\r\nvar TextMessageFormat = /** @class */ (function () {\r\n function TextMessageFormat() {\r\n }\r\n TextMessageFormat.write = function (output) {\r\n return \"\" + output + TextMessageFormat.RecordSeparator;\r\n };\r\n TextMessageFormat.parse = function (input) {\r\n if (input[input.length - 1] !== TextMessageFormat.RecordSeparator) {\r\n throw new Error(\"Message is incomplete.\");\r\n }\r\n var messages = input.split(TextMessageFormat.RecordSeparator);\r\n messages.pop();\r\n return messages;\r\n };\r\n TextMessageFormat.RecordSeparatorCode = 0x1e;\r\n TextMessageFormat.RecordSeparator = String.fromCharCode(TextMessageFormat.RecordSeparatorCode);\r\n return TextMessageFormat;\r\n}());\r\nexport { TextMessageFormat };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __assign = (this && this.__assign) || Object.assign || function(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))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n};\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { NullLogger } from \"./Loggers\";\r\n// Version token that will be replaced by the prepack command\r\n/** The version of the SignalR client. */\r\nexport var VERSION = \"5.0.17\";\r\n/** @private */\r\nvar Arg = /** @class */ (function () {\r\n function Arg() {\r\n }\r\n Arg.isRequired = function (val, name) {\r\n if (val === null || val === undefined) {\r\n throw new Error(\"The '\" + name + \"' argument is required.\");\r\n }\r\n };\r\n Arg.isNotEmpty = function (val, name) {\r\n if (!val || val.match(/^\\s*$/)) {\r\n throw new Error(\"The '\" + name + \"' argument should not be empty.\");\r\n }\r\n };\r\n Arg.isIn = function (val, values, name) {\r\n // TypeScript enums have keys for **both** the name and the value of each enum member on the type itself.\r\n if (!(val in values)) {\r\n throw new Error(\"Unknown \" + name + \" value: \" + val + \".\");\r\n }\r\n };\r\n return Arg;\r\n}());\r\nexport { Arg };\r\n/** @private */\r\nvar Platform = /** @class */ (function () {\r\n function Platform() {\r\n }\r\n Object.defineProperty(Platform, \"isBrowser\", {\r\n get: function () {\r\n return typeof window === \"object\";\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Platform, \"isWebWorker\", {\r\n get: function () {\r\n return typeof self === \"object\" && \"importScripts\" in self;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Platform, \"isNode\", {\r\n get: function () {\r\n return !this.isBrowser && !this.isWebWorker;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n return Platform;\r\n}());\r\nexport { Platform };\r\n/** @private */\r\nexport function getDataDetail(data, includeContent) {\r\n var detail = \"\";\r\n if (isArrayBuffer(data)) {\r\n detail = \"Binary data of length \" + data.byteLength;\r\n if (includeContent) {\r\n detail += \". Content: '\" + formatArrayBuffer(data) + \"'\";\r\n }\r\n }\r\n else if (typeof data === \"string\") {\r\n detail = \"String data of length \" + data.length;\r\n if (includeContent) {\r\n detail += \". Content: '\" + data + \"'\";\r\n }\r\n }\r\n return detail;\r\n}\r\n/** @private */\r\nexport function formatArrayBuffer(data) {\r\n var view = new Uint8Array(data);\r\n // Uint8Array.map only supports returning another Uint8Array?\r\n var str = \"\";\r\n view.forEach(function (num) {\r\n var pad = num < 16 ? \"0\" : \"\";\r\n str += \"0x\" + pad + num.toString(16) + \" \";\r\n });\r\n // Trim of trailing space.\r\n return str.substr(0, str.length - 1);\r\n}\r\n// Also in signalr-protocol-msgpack/Utils.ts\r\n/** @private */\r\nexport function isArrayBuffer(val) {\r\n return val && typeof ArrayBuffer !== \"undefined\" &&\r\n (val instanceof ArrayBuffer ||\r\n // Sometimes we get an ArrayBuffer that doesn't satisfy instanceof\r\n (val.constructor && val.constructor.name === \"ArrayBuffer\"));\r\n}\r\n/** @private */\r\nexport function sendMessage(logger, transportName, httpClient, url, accessTokenFactory, content, logMessageContent, withCredentials, defaultHeaders) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var _a, headers, token, _b, name, value, responseType, response;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n headers = {};\r\n if (!accessTokenFactory) return [3 /*break*/, 2];\r\n return [4 /*yield*/, accessTokenFactory()];\r\n case 1:\r\n token = _c.sent();\r\n if (token) {\r\n headers = (_a = {},\r\n _a[\"Authorization\"] = \"Bearer \" + token,\r\n _a);\r\n }\r\n _c.label = 2;\r\n case 2:\r\n _b = getUserAgentHeader(), name = _b[0], value = _b[1];\r\n headers[name] = value;\r\n logger.log(LogLevel.Trace, \"(\" + transportName + \" transport) sending data. \" + getDataDetail(content, logMessageContent) + \".\");\r\n responseType = isArrayBuffer(content) ? \"arraybuffer\" : \"text\";\r\n return [4 /*yield*/, httpClient.post(url, {\r\n content: content,\r\n headers: __assign({}, headers, defaultHeaders),\r\n responseType: responseType,\r\n withCredentials: withCredentials,\r\n })];\r\n case 3:\r\n response = _c.sent();\r\n logger.log(LogLevel.Trace, \"(\" + transportName + \" transport) request complete. Response status: \" + response.statusCode + \".\");\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n}\r\n/** @private */\r\nexport function createLogger(logger) {\r\n if (logger === undefined) {\r\n return new ConsoleLogger(LogLevel.Information);\r\n }\r\n if (logger === null) {\r\n return NullLogger.instance;\r\n }\r\n if (logger.log) {\r\n return logger;\r\n }\r\n return new ConsoleLogger(logger);\r\n}\r\n/** @private */\r\nvar SubjectSubscription = /** @class */ (function () {\r\n function SubjectSubscription(subject, observer) {\r\n this.subject = subject;\r\n this.observer = observer;\r\n }\r\n SubjectSubscription.prototype.dispose = function () {\r\n var index = this.subject.observers.indexOf(this.observer);\r\n if (index > -1) {\r\n this.subject.observers.splice(index, 1);\r\n }\r\n if (this.subject.observers.length === 0 && this.subject.cancelCallback) {\r\n this.subject.cancelCallback().catch(function (_) { });\r\n }\r\n };\r\n return SubjectSubscription;\r\n}());\r\nexport { SubjectSubscription };\r\n/** @private */\r\nvar ConsoleLogger = /** @class */ (function () {\r\n function ConsoleLogger(minimumLogLevel) {\r\n this.minimumLogLevel = minimumLogLevel;\r\n this.outputConsole = console;\r\n }\r\n ConsoleLogger.prototype.log = function (logLevel, message) {\r\n if (logLevel >= this.minimumLogLevel) {\r\n switch (logLevel) {\r\n case LogLevel.Critical:\r\n case LogLevel.Error:\r\n this.outputConsole.error(\"[\" + new Date().toISOString() + \"] \" + LogLevel[logLevel] + \": \" + message);\r\n break;\r\n case LogLevel.Warning:\r\n this.outputConsole.warn(\"[\" + new Date().toISOString() + \"] \" + LogLevel[logLevel] + \": \" + message);\r\n break;\r\n case LogLevel.Information:\r\n this.outputConsole.info(\"[\" + new Date().toISOString() + \"] \" + LogLevel[logLevel] + \": \" + message);\r\n break;\r\n default:\r\n // console.debug only goes to attached debuggers in Node, so we use console.log for Trace and Debug\r\n this.outputConsole.log(\"[\" + new Date().toISOString() + \"] \" + LogLevel[logLevel] + \": \" + message);\r\n break;\r\n }\r\n }\r\n };\r\n return ConsoleLogger;\r\n}());\r\nexport { ConsoleLogger };\r\n/** @private */\r\nexport function getUserAgentHeader() {\r\n var userAgentHeaderName = \"X-SignalR-User-Agent\";\r\n if (Platform.isNode) {\r\n userAgentHeaderName = \"User-Agent\";\r\n }\r\n return [userAgentHeaderName, constructUserAgent(VERSION, getOsName(), getRuntime(), getRuntimeVersion())];\r\n}\r\n/** @private */\r\nexport function constructUserAgent(version, os, runtime, runtimeVersion) {\r\n // Microsoft SignalR/[Version] ([Detailed Version]; [Operating System]; [Runtime]; [Runtime Version])\r\n var userAgent = \"Microsoft SignalR/\";\r\n var majorAndMinor = version.split(\".\");\r\n userAgent += majorAndMinor[0] + \".\" + majorAndMinor[1];\r\n userAgent += \" (\" + version + \"; \";\r\n if (os && os !== \"\") {\r\n userAgent += os + \"; \";\r\n }\r\n else {\r\n userAgent += \"Unknown OS; \";\r\n }\r\n userAgent += \"\" + runtime;\r\n if (runtimeVersion) {\r\n userAgent += \"; \" + runtimeVersion;\r\n }\r\n else {\r\n userAgent += \"; Unknown Runtime Version\";\r\n }\r\n userAgent += \")\";\r\n return userAgent;\r\n}\r\nfunction getOsName() {\r\n if (Platform.isNode) {\r\n switch (process.platform) {\r\n case \"win32\":\r\n return \"Windows NT\";\r\n case \"darwin\":\r\n return \"macOS\";\r\n case \"linux\":\r\n return \"Linux\";\r\n default:\r\n return process.platform;\r\n }\r\n }\r\n else {\r\n return \"\";\r\n }\r\n}\r\nfunction getRuntimeVersion() {\r\n if (Platform.isNode) {\r\n return process.versions.node;\r\n }\r\n return undefined;\r\n}\r\nfunction getRuntime() {\r\n if (Platform.isNode) {\r\n return \"NodeJS\";\r\n }\r\n else {\r\n return \"Browser\";\r\n }\r\n}\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __assign = (this && this.__assign) || Object.assign || function(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))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n};\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { TransferFormat } from \"./ITransport\";\r\nimport { Arg, getDataDetail, getUserAgentHeader, Platform } from \"./Utils\";\r\n/** @private */\r\nvar WebSocketTransport = /** @class */ (function () {\r\n function WebSocketTransport(httpClient, accessTokenFactory, logger, logMessageContent, webSocketConstructor, headers) {\r\n this.logger = logger;\r\n this.accessTokenFactory = accessTokenFactory;\r\n this.logMessageContent = logMessageContent;\r\n this.webSocketConstructor = webSocketConstructor;\r\n this.httpClient = httpClient;\r\n this.onreceive = null;\r\n this.onclose = null;\r\n this.headers = headers;\r\n }\r\n WebSocketTransport.prototype.connect = function (url, transferFormat) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var token;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n Arg.isRequired(url, \"url\");\r\n Arg.isRequired(transferFormat, \"transferFormat\");\r\n Arg.isIn(transferFormat, TransferFormat, \"transferFormat\");\r\n this.logger.log(LogLevel.Trace, \"(WebSockets transport) Connecting.\");\r\n if (!this.accessTokenFactory) return [3 /*break*/, 2];\r\n return [4 /*yield*/, this.accessTokenFactory()];\r\n case 1:\r\n token = _a.sent();\r\n if (token) {\r\n url += (url.indexOf(\"?\") < 0 ? \"?\" : \"&\") + (\"access_token=\" + encodeURIComponent(token));\r\n }\r\n _a.label = 2;\r\n case 2: return [2 /*return*/, new Promise(function (resolve, reject) {\r\n url = url.replace(/^http/, \"ws\");\r\n var webSocket;\r\n var cookies = _this.httpClient.getCookieString(url);\r\n var opened = false;\r\n if (Platform.isNode) {\r\n var headers = {};\r\n var _a = getUserAgentHeader(), name_1 = _a[0], value = _a[1];\r\n headers[name_1] = value;\r\n if (cookies) {\r\n headers[\"Cookie\"] = \"\" + cookies;\r\n }\r\n // Only pass headers when in non-browser environments\r\n webSocket = new _this.webSocketConstructor(url, undefined, {\r\n headers: __assign({}, headers, _this.headers),\r\n });\r\n }\r\n if (!webSocket) {\r\n // Chrome is not happy with passing 'undefined' as protocol\r\n webSocket = new _this.webSocketConstructor(url);\r\n }\r\n if (transferFormat === TransferFormat.Binary) {\r\n webSocket.binaryType = \"arraybuffer\";\r\n }\r\n // tslint:disable-next-line:variable-name\r\n webSocket.onopen = function (_event) {\r\n _this.logger.log(LogLevel.Information, \"WebSocket connected to \" + url + \".\");\r\n _this.webSocket = webSocket;\r\n opened = true;\r\n resolve();\r\n };\r\n webSocket.onerror = function (event) {\r\n var error = null;\r\n // ErrorEvent is a browser only type we need to check if the type exists before using it\r\n if (typeof ErrorEvent !== \"undefined\" && event instanceof ErrorEvent) {\r\n error = event.error;\r\n }\r\n else {\r\n error = new Error(\"There was an error with the transport.\");\r\n }\r\n reject(error);\r\n };\r\n webSocket.onmessage = function (message) {\r\n _this.logger.log(LogLevel.Trace, \"(WebSockets transport) data received. \" + getDataDetail(message.data, _this.logMessageContent) + \".\");\r\n if (_this.onreceive) {\r\n try {\r\n _this.onreceive(message.data);\r\n }\r\n catch (error) {\r\n _this.close(error);\r\n return;\r\n }\r\n }\r\n };\r\n webSocket.onclose = function (event) {\r\n // Don't call close handler if connection was never established\r\n // We'll reject the connect call instead\r\n if (opened) {\r\n _this.close(event);\r\n }\r\n else {\r\n var error = null;\r\n // ErrorEvent is a browser only type we need to check if the type exists before using it\r\n if (typeof ErrorEvent !== \"undefined\" && event instanceof ErrorEvent) {\r\n error = event.error;\r\n }\r\n else {\r\n error = new Error(\"There was an error with the transport.\");\r\n }\r\n reject(error);\r\n }\r\n };\r\n })];\r\n }\r\n });\r\n });\r\n };\r\n WebSocketTransport.prototype.send = function (data) {\r\n if (this.webSocket && this.webSocket.readyState === this.webSocketConstructor.OPEN) {\r\n this.logger.log(LogLevel.Trace, \"(WebSockets transport) sending data. \" + getDataDetail(data, this.logMessageContent) + \".\");\r\n this.webSocket.send(data);\r\n return Promise.resolve();\r\n }\r\n return Promise.reject(\"WebSocket is not in the OPEN state\");\r\n };\r\n WebSocketTransport.prototype.stop = function () {\r\n if (this.webSocket) {\r\n // Manually invoke onclose callback inline so we know the HttpConnection was closed properly before returning\r\n // This also solves an issue where websocket.onclose could take 18+ seconds to trigger during network disconnects\r\n this.close(undefined);\r\n }\r\n return Promise.resolve();\r\n };\r\n WebSocketTransport.prototype.close = function (event) {\r\n // webSocket will be null if the transport did not start successfully\r\n if (this.webSocket) {\r\n // Clear websocket handlers because we are considering the socket closed now\r\n this.webSocket.onclose = function () { };\r\n this.webSocket.onmessage = function () { };\r\n this.webSocket.onerror = function () { };\r\n this.webSocket.close();\r\n this.webSocket = undefined;\r\n }\r\n this.logger.log(LogLevel.Trace, \"(WebSockets transport) socket closed.\");\r\n if (this.onclose) {\r\n if (this.isCloseEvent(event) && (event.wasClean === false || event.code !== 1000)) {\r\n this.onclose(new Error(\"WebSocket closed with status code: \" + event.code + \" (\" + event.reason + \").\"));\r\n }\r\n else if (event instanceof Error) {\r\n this.onclose(event);\r\n }\r\n else {\r\n this.onclose();\r\n }\r\n }\r\n };\r\n WebSocketTransport.prototype.isCloseEvent = function (event) {\r\n return event && typeof event.wasClean === \"boolean\" && typeof event.code === \"number\";\r\n };\r\n return WebSocketTransport;\r\n}());\r\nexport { WebSocketTransport };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return function (d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nimport { AbortError, HttpError, TimeoutError } from \"./Errors\";\r\nimport { HttpClient, HttpResponse } from \"./HttpClient\";\r\nimport { LogLevel } from \"./ILogger\";\r\nvar XhrHttpClient = /** @class */ (function (_super) {\r\n __extends(XhrHttpClient, _super);\r\n function XhrHttpClient(logger) {\r\n var _this = _super.call(this) || this;\r\n _this.logger = logger;\r\n return _this;\r\n }\r\n /** @inheritDoc */\r\n XhrHttpClient.prototype.send = function (request) {\r\n var _this = this;\r\n // Check that abort was not signaled before calling send\r\n if (request.abortSignal && request.abortSignal.aborted) {\r\n return Promise.reject(new AbortError());\r\n }\r\n if (!request.method) {\r\n return Promise.reject(new Error(\"No method defined.\"));\r\n }\r\n if (!request.url) {\r\n return Promise.reject(new Error(\"No url defined.\"));\r\n }\r\n return new Promise(function (resolve, reject) {\r\n var xhr = new XMLHttpRequest();\r\n xhr.open(request.method, request.url, true);\r\n xhr.withCredentials = request.withCredentials === undefined ? true : request.withCredentials;\r\n xhr.setRequestHeader(\"X-Requested-With\", \"XMLHttpRequest\");\r\n // Explicitly setting the Content-Type header for React Native on Android platform.\r\n xhr.setRequestHeader(\"Content-Type\", \"text/plain;charset=UTF-8\");\r\n var headers = request.headers;\r\n if (headers) {\r\n Object.keys(headers)\r\n .forEach(function (header) {\r\n xhr.setRequestHeader(header, headers[header]);\r\n });\r\n }\r\n if (request.responseType) {\r\n xhr.responseType = request.responseType;\r\n }\r\n if (request.abortSignal) {\r\n request.abortSignal.onabort = function () {\r\n xhr.abort();\r\n reject(new AbortError());\r\n };\r\n }\r\n if (request.timeout) {\r\n xhr.timeout = request.timeout;\r\n }\r\n xhr.onload = function () {\r\n if (request.abortSignal) {\r\n request.abortSignal.onabort = null;\r\n }\r\n if (xhr.status >= 200 && xhr.status < 300) {\r\n resolve(new HttpResponse(xhr.status, xhr.statusText, xhr.response || xhr.responseText));\r\n }\r\n else {\r\n reject(new HttpError(xhr.statusText, xhr.status));\r\n }\r\n };\r\n xhr.onerror = function () {\r\n _this.logger.log(LogLevel.Warning, \"Error from HTTP request. \" + xhr.status + \": \" + xhr.statusText + \".\");\r\n reject(new HttpError(xhr.statusText, xhr.status));\r\n };\r\n xhr.ontimeout = function () {\r\n _this.logger.log(LogLevel.Warning, \"Timeout from HTTP request.\");\r\n reject(new TimeoutError());\r\n };\r\n xhr.send(request.content || \"\");\r\n });\r\n };\r\n return XhrHttpClient;\r\n}(HttpClient));\r\nexport { XhrHttpClient };\r\n","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nexport { AbortError, HttpError, TimeoutError } from \"./Errors\";\r\nexport { HttpClient, HttpResponse } from \"./HttpClient\";\r\nexport { DefaultHttpClient } from \"./DefaultHttpClient\";\r\nexport { HubConnection, HubConnectionState } from \"./HubConnection\";\r\nexport { HubConnectionBuilder } from \"./HubConnectionBuilder\";\r\nexport { MessageType } from \"./IHubProtocol\";\r\nexport { LogLevel } from \"./ILogger\";\r\nexport { HttpTransportType, TransferFormat } from \"./ITransport\";\r\nexport { NullLogger } from \"./Loggers\";\r\nexport { JsonHubProtocol } from \"./JsonHubProtocol\";\r\nexport { Subject } from \"./Subject\";\r\nexport { VERSION } from \"./Utils\";\r\n","//! moment.js locale configuration\n//! locale : Afrikaans [af]\n//! author : Werner Mollentze : https://github.com/wernerm\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var af = moment.defineLocale('af', {\n months: 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'),\n weekdays: 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split(\n '_'\n ),\n weekdaysShort: 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),\n weekdaysMin: 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),\n meridiemParse: /vm|nm/i,\n isPM: function (input) {\n return /^nm$/i.test(input);\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'vm' : 'VM';\n } else {\n return isLower ? 'nm' : 'NM';\n }\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Vandag om] LT',\n nextDay: '[Môre om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[Gister om] LT',\n lastWeek: '[Laas] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'oor %s',\n past: '%s gelede',\n s: \"'n paar sekondes\",\n ss: '%d sekondes',\n m: \"'n minuut\",\n mm: '%d minute',\n h: \"'n uur\",\n hh: '%d ure',\n d: \"'n dag\",\n dd: '%d dae',\n M: \"'n maand\",\n MM: '%d maande',\n y: \"'n jaar\",\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n ); // Thanks to Joris Röling : https://github.com/jjupiter\n },\n week: {\n dow: 1, // Maandag is die eerste dag van die week.\n doy: 4, // Die week wat die 4de Januarie bevat is die eerste week van die jaar.\n },\n });\n\n return af;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Algeria) [ar-dz]\n//! author : Amine Roukh: https://github.com/Amine27\n//! author : Abdel Said: https://github.com/abdelsaid\n//! author : Ahmed Elkhatib\n//! author : forabi https://github.com/forabi\n//! author : Noureddine LOUAHEDJ : https://github.com/noureddinem\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واحدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واحدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واحدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واحد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واحد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واحد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'جانفي',\n 'فيفري',\n 'مارس',\n 'أفريل',\n 'ماي',\n 'جوان',\n 'جويلية',\n 'أوت',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر',\n ];\n\n var arDz = moment.defineLocale('ar-dz', {\n months: months,\n monthsShort: months,\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arDz;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Kuwait) [ar-kw]\n//! author : Nusret Parlak: https://github.com/nusretparlak\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arKw = moment.defineLocale('ar-kw', {\n months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return arKw;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Libya) [ar-ly]\n//! author : Ali Hmer: https://github.com/kikoanis\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '1',\n 2: '2',\n 3: '3',\n 4: '4',\n 5: '5',\n 6: '6',\n 7: '7',\n 8: '8',\n 9: '9',\n 0: '0',\n },\n pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واحدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واحدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واحدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واحد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واحد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واحد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'يناير',\n 'فبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر',\n ];\n\n var arLy = moment.defineLocale('ar-ly', {\n months: months,\n monthsShort: months,\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return arLy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Morocco) [ar-ma]\n//! author : ElFadili Yassine : https://github.com/ElFadiliY\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arMa = moment.defineLocale('ar-ma', {\n months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arMa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Saudi Arabia) [ar-sa]\n//! author : Suhail Alkowaileet : https://github.com/xsoh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '١',\n 2: '٢',\n 3: '٣',\n 4: '٤',\n 5: '٥',\n 6: '٦',\n 7: '٧',\n 8: '٨',\n 9: '٩',\n 0: '٠',\n },\n numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0',\n };\n\n var arSa = moment.defineLocale('ar-sa', {\n months: 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return arSa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Tunisia) [ar-tn]\n//! author : Nader Toukabri : https://github.com/naderio\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arTn = moment.defineLocale('ar-tn', {\n months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n monthsShort:\n 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arTn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic [ar]\n//! author : Abdel Said: https://github.com/abdelsaid\n//! author : Ahmed Elkhatib\n//! author : forabi https://github.com/forabi\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '١',\n 2: '٢',\n 3: '٣',\n 4: '٤',\n 5: '٥',\n 6: '٦',\n 7: '٧',\n 8: '٨',\n 9: '٩',\n 0: '٠',\n },\n numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0',\n },\n pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واحدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واحدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واحدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واحد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واحد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واحد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'يناير',\n 'فبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر',\n ];\n\n var ar = moment.defineLocale('ar', {\n months: months,\n monthsShort: months,\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return ar;\n\n})));\n","//! moment.js locale configuration\n//! locale : Azerbaijani [az]\n//! author : topchiyev : https://github.com/topchiyev\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: '-inci',\n 5: '-inci',\n 8: '-inci',\n 70: '-inci',\n 80: '-inci',\n 2: '-nci',\n 7: '-nci',\n 20: '-nci',\n 50: '-nci',\n 3: '-üncü',\n 4: '-üncü',\n 100: '-üncü',\n 6: '-ncı',\n 9: '-uncu',\n 10: '-uncu',\n 30: '-uncu',\n 60: '-ıncı',\n 90: '-ıncı',\n };\n\n var az = moment.defineLocale('az', {\n months: 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split(\n '_'\n ),\n monthsShort: 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'),\n weekdays:\n 'Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə'.split(\n '_'\n ),\n weekdaysShort: 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'),\n weekdaysMin: 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün saat] LT',\n nextDay: '[sabah saat] LT',\n nextWeek: '[gələn həftə] dddd [saat] LT',\n lastDay: '[dünən] LT',\n lastWeek: '[keçən həftə] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s sonra',\n past: '%s əvvəl',\n s: 'bir neçə saniyə',\n ss: '%d saniyə',\n m: 'bir dəqiqə',\n mm: '%d dəqiqə',\n h: 'bir saat',\n hh: '%d saat',\n d: 'bir gün',\n dd: '%d gün',\n M: 'bir ay',\n MM: '%d ay',\n y: 'bir il',\n yy: '%d il',\n },\n meridiemParse: /gecə|səhər|gündüz|axşam/,\n isPM: function (input) {\n return /^(gündüz|axşam)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'gecə';\n } else if (hour < 12) {\n return 'səhər';\n } else if (hour < 17) {\n return 'gündüz';\n } else {\n return 'axşam';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,\n ordinal: function (number) {\n if (number === 0) {\n // special case for zero\n return number + '-ıncı';\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return az;\n\n})));\n","//! moment.js locale configuration\n//! locale : Belarusian [be]\n//! author : Dmitry Demidov : https://github.com/demidov91\n//! author: Praleska: http://praleska.pro/\n//! Author : Menelion Elensúle : https://github.com/Oire\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n mm: withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін',\n hh: withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін',\n dd: 'дзень_дні_дзён',\n MM: 'месяц_месяцы_месяцаў',\n yy: 'год_гады_гадоў',\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвіліна' : 'хвіліну';\n } else if (key === 'h') {\n return withoutSuffix ? 'гадзіна' : 'гадзіну';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n\n var be = moment.defineLocale('be', {\n months: {\n format: 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split(\n '_'\n ),\n standalone:\n 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split(\n '_'\n ),\n },\n monthsShort:\n 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split('_'),\n weekdays: {\n format: 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split(\n '_'\n ),\n standalone:\n 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split(\n '_'\n ),\n isFormat: /\\[ ?[Ууў] ?(?:мінулую|наступную)? ?\\] ?dddd/,\n },\n weekdaysShort: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n weekdaysMin: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY г.',\n LLL: 'D MMMM YYYY г., HH:mm',\n LLLL: 'dddd, D MMMM YYYY г., HH:mm',\n },\n calendar: {\n sameDay: '[Сёння ў] LT',\n nextDay: '[Заўтра ў] LT',\n lastDay: '[Учора ў] LT',\n nextWeek: function () {\n return '[У] dddd [ў] LT';\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return '[У мінулую] dddd [ў] LT';\n case 1:\n case 2:\n case 4:\n return '[У мінулы] dddd [ў] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'праз %s',\n past: '%s таму',\n s: 'некалькі секунд',\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: relativeTimeWithPlural,\n hh: relativeTimeWithPlural,\n d: 'дзень',\n dd: relativeTimeWithPlural,\n M: 'месяц',\n MM: relativeTimeWithPlural,\n y: 'год',\n yy: relativeTimeWithPlural,\n },\n meridiemParse: /ночы|раніцы|дня|вечара/,\n isPM: function (input) {\n return /^(дня|вечара)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночы';\n } else if (hour < 12) {\n return 'раніцы';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечара';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(і|ы|га)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return (number % 10 === 2 || number % 10 === 3) &&\n number % 100 !== 12 &&\n number % 100 !== 13\n ? number + '-і'\n : number + '-ы';\n case 'D':\n return number + '-га';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return be;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bulgarian [bg]\n//! author : Krasen Borisov : https://github.com/kraz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var bg = moment.defineLocale('bg', {\n months: 'януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември'.split(\n '_'\n ),\n monthsShort: 'яну_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек'.split('_'),\n weekdays: 'неделя_понеделник_вторник_сряда_четвъртък_петък_събота'.split(\n '_'\n ),\n weekdaysShort: 'нед_пон_вто_сря_чет_пет_съб'.split('_'),\n weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Днес в] LT',\n nextDay: '[Утре в] LT',\n nextWeek: 'dddd [в] LT',\n lastDay: '[Вчера в] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[Миналата] dddd [в] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[Миналия] dddd [в] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'след %s',\n past: 'преди %s',\n s: 'няколко секунди',\n ss: '%d секунди',\n m: 'минута',\n mm: '%d минути',\n h: 'час',\n hh: '%d часа',\n d: 'ден',\n dd: '%d дена',\n w: 'седмица',\n ww: '%d седмици',\n M: 'месец',\n MM: '%d месеца',\n y: 'година',\n yy: '%d години',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal: function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return bg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bambara [bm]\n//! author : Estelle Comment : https://github.com/estellecomment\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var bm = moment.defineLocale('bm', {\n months: 'Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo'.split(\n '_'\n ),\n monthsShort: 'Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des'.split('_'),\n weekdays: 'Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri'.split('_'),\n weekdaysShort: 'Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib'.split('_'),\n weekdaysMin: 'Ka_Nt_Ta_Ar_Al_Ju_Si'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'MMMM [tile] D [san] YYYY',\n LLL: 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',\n LLLL: 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',\n },\n calendar: {\n sameDay: '[Bi lɛrɛ] LT',\n nextDay: '[Sini lɛrɛ] LT',\n nextWeek: 'dddd [don lɛrɛ] LT',\n lastDay: '[Kunu lɛrɛ] LT',\n lastWeek: 'dddd [tɛmɛnen lɛrɛ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s kɔnɔ',\n past: 'a bɛ %s bɔ',\n s: 'sanga dama dama',\n ss: 'sekondi %d',\n m: 'miniti kelen',\n mm: 'miniti %d',\n h: 'lɛrɛ kelen',\n hh: 'lɛrɛ %d',\n d: 'tile kelen',\n dd: 'tile %d',\n M: 'kalo kelen',\n MM: 'kalo %d',\n y: 'san kelen',\n yy: 'san %d',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return bm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bengali (Bangladesh) [bn-bd]\n//! author : Asraf Hossain Patoary : https://github.com/ashwoolford\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '১',\n 2: '২',\n 3: '৩',\n 4: '৪',\n 5: '৫',\n 6: '৬',\n 7: '৭',\n 8: '৮',\n 9: '৯',\n 0: '০',\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n '৭': '7',\n '৮': '8',\n '৯': '9',\n '০': '0',\n };\n\n var bnBd = moment.defineLocale('bn-bd', {\n months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split(\n '_'\n ),\n monthsShort:\n 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split(\n '_'\n ),\n weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split(\n '_'\n ),\n weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),\n weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'),\n longDateFormat: {\n LT: 'A h:mm সময়',\n LTS: 'A h:mm:ss সময়',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm সময়',\n LLLL: 'dddd, D MMMM YYYY, A h:mm সময়',\n },\n calendar: {\n sameDay: '[আজ] LT',\n nextDay: '[আগামীকাল] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[গতকাল] LT',\n lastWeek: '[গত] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s পরে',\n past: '%s আগে',\n s: 'কয়েক সেকেন্ড',\n ss: '%d সেকেন্ড',\n m: 'এক মিনিট',\n mm: '%d মিনিট',\n h: 'এক ঘন্টা',\n hh: '%d ঘন্টা',\n d: 'এক দিন',\n dd: '%d দিন',\n M: 'এক মাস',\n MM: '%d মাস',\n y: 'এক বছর',\n yy: '%d বছর',\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n\n meridiemParse: /রাত|ভোর|সকাল|দুপুর|বিকাল|সন্ধ্যা|রাত/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'রাত') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ভোর') {\n return hour;\n } else if (meridiem === 'সকাল') {\n return hour;\n } else if (meridiem === 'দুপুর') {\n return hour >= 3 ? hour : hour + 12;\n } else if (meridiem === 'বিকাল') {\n return hour + 12;\n } else if (meridiem === 'সন্ধ্যা') {\n return hour + 12;\n }\n },\n\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 6) {\n return 'ভোর';\n } else if (hour < 12) {\n return 'সকাল';\n } else if (hour < 15) {\n return 'দুপুর';\n } else if (hour < 18) {\n return 'বিকাল';\n } else if (hour < 20) {\n return 'সন্ধ্যা';\n } else {\n return 'রাত';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bnBd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bengali [bn]\n//! author : Kaushik Gandhi : https://github.com/kaushikgandhi\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '১',\n 2: '২',\n 3: '৩',\n 4: '৪',\n 5: '৫',\n 6: '৬',\n 7: '৭',\n 8: '৮',\n 9: '৯',\n 0: '০',\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n '৭': '7',\n '৮': '8',\n '৯': '9',\n '০': '0',\n };\n\n var bn = moment.defineLocale('bn', {\n months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split(\n '_'\n ),\n monthsShort:\n 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split(\n '_'\n ),\n weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split(\n '_'\n ),\n weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),\n weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'),\n longDateFormat: {\n LT: 'A h:mm সময়',\n LTS: 'A h:mm:ss সময়',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm সময়',\n LLLL: 'dddd, D MMMM YYYY, A h:mm সময়',\n },\n calendar: {\n sameDay: '[আজ] LT',\n nextDay: '[আগামীকাল] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[গতকাল] LT',\n lastWeek: '[গত] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s পরে',\n past: '%s আগে',\n s: 'কয়েক সেকেন্ড',\n ss: '%d সেকেন্ড',\n m: 'এক মিনিট',\n mm: '%d মিনিট',\n h: 'এক ঘন্টা',\n hh: '%d ঘন্টা',\n d: 'এক দিন',\n dd: '%d দিন',\n M: 'এক মাস',\n MM: '%d মাস',\n y: 'এক বছর',\n yy: '%d বছর',\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /রাত|সকাল|দুপুর|বিকাল|রাত/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'রাত' && hour >= 4) ||\n (meridiem === 'দুপুর' && hour < 5) ||\n meridiem === 'বিকাল'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 10) {\n return 'সকাল';\n } else if (hour < 17) {\n return 'দুপুর';\n } else if (hour < 20) {\n return 'বিকাল';\n } else {\n return 'রাত';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tibetan [bo]\n//! author : Thupten N. Chakrishar : https://github.com/vajradog\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '༡',\n 2: '༢',\n 3: '༣',\n 4: '༤',\n 5: '༥',\n 6: '༦',\n 7: '༧',\n 8: '༨',\n 9: '༩',\n 0: '༠',\n },\n numberMap = {\n '༡': '1',\n '༢': '2',\n '༣': '3',\n '༤': '4',\n '༥': '5',\n '༦': '6',\n '༧': '7',\n '༨': '8',\n '༩': '9',\n '༠': '0',\n };\n\n var bo = moment.defineLocale('bo', {\n months: 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split(\n '_'\n ),\n monthsShort:\n 'ཟླ་1_ཟླ་2_ཟླ་3_ཟླ་4_ཟླ་5_ཟླ་6_ཟླ་7_ཟླ་8_ཟླ་9_ཟླ་10_ཟླ་11_ཟླ་12'.split(\n '_'\n ),\n monthsShortRegex: /^(ཟླ་\\d{1,2})/,\n monthsParseExact: true,\n weekdays:\n 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split(\n '_'\n ),\n weekdaysShort: 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split(\n '_'\n ),\n weekdaysMin: 'ཉི_ཟླ_མིག_ལྷག_ཕུར_སངས_སྤེན'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[དི་རིང] LT',\n nextDay: '[སང་ཉིན] LT',\n nextWeek: '[བདུན་ཕྲག་རྗེས་མ], LT',\n lastDay: '[ཁ་སང] LT',\n lastWeek: '[བདུན་ཕྲག་མཐའ་མ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ལ་',\n past: '%s སྔན་ལ',\n s: 'ལམ་སང',\n ss: '%d སྐར་ཆ།',\n m: 'སྐར་མ་གཅིག',\n mm: '%d སྐར་མ',\n h: 'ཆུ་ཚོད་གཅིག',\n hh: '%d ཆུ་ཚོད',\n d: 'ཉིན་གཅིག',\n dd: '%d ཉིན་',\n M: 'ཟླ་བ་གཅིག',\n MM: '%d ཟླ་བ',\n y: 'ལོ་གཅིག',\n yy: '%d ལོ',\n },\n preparse: function (string) {\n return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'མཚན་མོ' && hour >= 4) ||\n (meridiem === 'ཉིན་གུང' && hour < 5) ||\n meridiem === 'དགོང་དག'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'མཚན་མོ';\n } else if (hour < 10) {\n return 'ཞོགས་ཀས';\n } else if (hour < 17) {\n return 'ཉིན་གུང';\n } else if (hour < 20) {\n return 'དགོང་དག';\n } else {\n return 'མཚན་མོ';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Breton [br]\n//! author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function relativeTimeWithMutation(number, withoutSuffix, key) {\n var format = {\n mm: 'munutenn',\n MM: 'miz',\n dd: 'devezh',\n };\n return number + ' ' + mutation(format[key], number);\n }\n function specialMutationForYears(number) {\n switch (lastNumber(number)) {\n case 1:\n case 3:\n case 4:\n case 5:\n case 9:\n return number + ' bloaz';\n default:\n return number + ' vloaz';\n }\n }\n function lastNumber(number) {\n if (number > 9) {\n return lastNumber(number % 10);\n }\n return number;\n }\n function mutation(text, number) {\n if (number === 2) {\n return softMutation(text);\n }\n return text;\n }\n function softMutation(text) {\n var mutationTable = {\n m: 'v',\n b: 'v',\n d: 'z',\n };\n if (mutationTable[text.charAt(0)] === undefined) {\n return text;\n }\n return mutationTable[text.charAt(0)] + text.substring(1);\n }\n\n var monthsParse = [\n /^gen/i,\n /^c[ʼ\\']hwe/i,\n /^meu/i,\n /^ebr/i,\n /^mae/i,\n /^(mez|eve)/i,\n /^gou/i,\n /^eos/i,\n /^gwe/i,\n /^her/i,\n /^du/i,\n /^ker/i,\n ],\n monthsRegex =\n /^(genver|c[ʼ\\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,\n monthsStrictRegex =\n /^(genver|c[ʼ\\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,\n monthsShortStrictRegex =\n /^(gen|c[ʼ\\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,\n fullWeekdaysParse = [\n /^sul/i,\n /^lun/i,\n /^meurzh/i,\n /^merc[ʼ\\']her/i,\n /^yaou/i,\n /^gwener/i,\n /^sadorn/i,\n ],\n shortWeekdaysParse = [\n /^Sul/i,\n /^Lun/i,\n /^Meu/i,\n /^Mer/i,\n /^Yao/i,\n /^Gwe/i,\n /^Sad/i,\n ],\n minWeekdaysParse = [\n /^Su/i,\n /^Lu/i,\n /^Me([^r]|$)/i,\n /^Mer/i,\n /^Ya/i,\n /^Gw/i,\n /^Sa/i,\n ];\n\n var br = moment.defineLocale('br', {\n months: 'Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split(\n '_'\n ),\n monthsShort: 'Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'),\n weekdays: 'Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn'.split('_'),\n weekdaysShort: 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'),\n weekdaysParse: minWeekdaysParse,\n fullWeekdaysParse: fullWeekdaysParse,\n shortWeekdaysParse: shortWeekdaysParse,\n minWeekdaysParse: minWeekdaysParse,\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: monthsStrictRegex,\n monthsShortStrictRegex: monthsShortStrictRegex,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [a viz] MMMM YYYY',\n LLL: 'D [a viz] MMMM YYYY HH:mm',\n LLLL: 'dddd, D [a viz] MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hiziv da] LT',\n nextDay: '[Warcʼhoazh da] LT',\n nextWeek: 'dddd [da] LT',\n lastDay: '[Decʼh da] LT',\n lastWeek: 'dddd [paset da] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'a-benn %s',\n past: '%s ʼzo',\n s: 'un nebeud segondennoù',\n ss: '%d eilenn',\n m: 'ur vunutenn',\n mm: relativeTimeWithMutation,\n h: 'un eur',\n hh: '%d eur',\n d: 'un devezh',\n dd: relativeTimeWithMutation,\n M: 'ur miz',\n MM: relativeTimeWithMutation,\n y: 'ur bloaz',\n yy: specialMutationForYears,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(añ|vet)/,\n ordinal: function (number) {\n var output = number === 1 ? 'añ' : 'vet';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n meridiemParse: /a.m.|g.m./, // goude merenn | a-raok merenn\n isPM: function (token) {\n return token === 'g.m.';\n },\n meridiem: function (hour, minute, isLower) {\n return hour < 12 ? 'a.m.' : 'g.m.';\n },\n });\n\n return br;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bosnian [bs]\n//! author : Nedim Cholich : https://github.com/frontyard\n//! based on (hr) translation by Bojan Marković\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var bs = moment.defineLocale('bs', {\n months: 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[jučer u] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n return '[prošlu] dddd [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'par sekundi',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: 'dan',\n dd: translate,\n M: 'mjesec',\n MM: translate,\n y: 'godinu',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return bs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Catalan [ca]\n//! author : Juan G. Hurtado : https://github.com/juanghurtado\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ca = moment.defineLocale('ca', {\n months: {\n standalone:\n 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split(\n '_'\n ),\n format: \"de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre\".split(\n '_'\n ),\n isFormat: /D[oD]?(\\s)+MMMM/,\n },\n monthsShort:\n 'gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split(\n '_'\n ),\n weekdaysShort: 'dg._dl._dt._dc._dj._dv._ds.'.split('_'),\n weekdaysMin: 'dg_dl_dt_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [de] YYYY',\n ll: 'D MMM YYYY',\n LLL: 'D MMMM [de] YYYY [a les] H:mm',\n lll: 'D MMM YYYY, H:mm',\n LLLL: 'dddd D MMMM [de] YYYY [a les] H:mm',\n llll: 'ddd D MMM YYYY, H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[avui a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n nextDay: function () {\n return '[demà a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n lastDay: function () {\n return '[ahir a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [passat a ' +\n (this.hours() !== 1 ? 'les' : 'la') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: \"d'aquí %s\",\n past: 'fa %s',\n s: 'uns segons',\n ss: '%d segons',\n m: 'un minut',\n mm: '%d minuts',\n h: 'una hora',\n hh: '%d hores',\n d: 'un dia',\n dd: '%d dies',\n M: 'un mes',\n MM: '%d mesos',\n y: 'un any',\n yy: '%d anys',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal: function (number, period) {\n var output =\n number === 1\n ? 'r'\n : number === 2\n ? 'n'\n : number === 3\n ? 'r'\n : number === 4\n ? 't'\n : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ca;\n\n})));\n","//! moment.js locale configuration\n//! locale : Czech [cs]\n//! author : petrbela : https://github.com/petrbela\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = {\n format: 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split(\n '_'\n ),\n standalone:\n 'ledna_února_března_dubna_května_června_července_srpna_září_října_listopadu_prosince'.split(\n '_'\n ),\n },\n monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_'),\n monthsParse = [\n /^led/i,\n /^úno/i,\n /^bře/i,\n /^dub/i,\n /^kvě/i,\n /^(čvn|červen$|června)/i,\n /^(čvc|červenec|července)/i,\n /^srp/i,\n /^zář/i,\n /^říj/i,\n /^lis/i,\n /^pro/i,\n ],\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n monthsRegex =\n /^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;\n\n function plural(n) {\n return n > 1 && n < 5 && ~~(n / 10) !== 1;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return withoutSuffix || isFuture ? 'pár sekund' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekund');\n } else {\n return result + 'sekundami';\n }\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minuta' : isFuture ? 'minutu' : 'minutou';\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minuty' : 'minut');\n } else {\n return result + 'minutami';\n }\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodin');\n } else {\n return result + 'hodinami';\n }\n case 'd': // a day / in a day / a day ago\n return withoutSuffix || isFuture ? 'den' : 'dnem';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dny' : 'dní');\n } else {\n return result + 'dny';\n }\n case 'M': // a month / in a month / a month ago\n return withoutSuffix || isFuture ? 'měsíc' : 'měsícem';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'měsíce' : 'měsíců');\n } else {\n return result + 'měsíci';\n }\n case 'y': // a year / in a year / a year ago\n return withoutSuffix || isFuture ? 'rok' : 'rokem';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'let');\n } else {\n return result + 'lety';\n }\n }\n }\n\n var cs = moment.defineLocale('cs', {\n months: months,\n monthsShort: monthsShort,\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n monthsStrictRegex:\n /^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,\n monthsShortStrictRegex:\n /^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'),\n weekdaysShort: 'ne_po_út_st_čt_pá_so'.split('_'),\n weekdaysMin: 'ne_po_út_st_čt_pá_so'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd D. MMMM YYYY H:mm',\n l: 'D. M. YYYY',\n },\n calendar: {\n sameDay: '[dnes v] LT',\n nextDay: '[zítra v] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v neděli v] LT';\n case 1:\n case 2:\n return '[v] dddd [v] LT';\n case 3:\n return '[ve středu v] LT';\n case 4:\n return '[ve čtvrtek v] LT';\n case 5:\n return '[v pátek v] LT';\n case 6:\n return '[v sobotu v] LT';\n }\n },\n lastDay: '[včera v] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulou neděli v] LT';\n case 1:\n case 2:\n return '[minulé] dddd [v] LT';\n case 3:\n return '[minulou středu v] LT';\n case 4:\n case 5:\n return '[minulý] dddd [v] LT';\n case 6:\n return '[minulou sobotu v] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'před %s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return cs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chuvash [cv]\n//! author : Anatoly Mironov : https://github.com/mirontoli\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var cv = moment.defineLocale('cv', {\n months: 'кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав'.split(\n '_'\n ),\n monthsShort: 'кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш'.split('_'),\n weekdays:\n 'вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун'.split(\n '_'\n ),\n weekdaysShort: 'выр_тун_ытл_юн_кӗҫ_эрн_шӑм'.split('_'),\n weekdaysMin: 'вр_тн_ыт_юн_кҫ_эр_шм'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]',\n LLL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',\n LLLL: 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',\n },\n calendar: {\n sameDay: '[Паян] LT [сехетре]',\n nextDay: '[Ыран] LT [сехетре]',\n lastDay: '[Ӗнер] LT [сехетре]',\n nextWeek: '[Ҫитес] dddd LT [сехетре]',\n lastWeek: '[Иртнӗ] dddd LT [сехетре]',\n sameElse: 'L',\n },\n relativeTime: {\n future: function (output) {\n var affix = /сехет$/i.exec(output)\n ? 'рен'\n : /ҫул$/i.exec(output)\n ? 'тан'\n : 'ран';\n return output + affix;\n },\n past: '%s каялла',\n s: 'пӗр-ик ҫеккунт',\n ss: '%d ҫеккунт',\n m: 'пӗр минут',\n mm: '%d минут',\n h: 'пӗр сехет',\n hh: '%d сехет',\n d: 'пӗр кун',\n dd: '%d кун',\n M: 'пӗр уйӑх',\n MM: '%d уйӑх',\n y: 'пӗр ҫул',\n yy: '%d ҫул',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-мӗш/,\n ordinal: '%d-мӗш',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return cv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Welsh [cy]\n//! author : Robert Allen : https://github.com/robgallen\n//! author : https://github.com/ryangreaves\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var cy = moment.defineLocale('cy', {\n months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split(\n '_'\n ),\n monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split(\n '_'\n ),\n weekdays:\n 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split(\n '_'\n ),\n weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'),\n weekdaysParseExact: true,\n // time formats are the same as en-gb\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Heddiw am] LT',\n nextDay: '[Yfory am] LT',\n nextWeek: 'dddd [am] LT',\n lastDay: '[Ddoe am] LT',\n lastWeek: 'dddd [diwethaf am] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'mewn %s',\n past: '%s yn ôl',\n s: 'ychydig eiliadau',\n ss: '%d eiliad',\n m: 'munud',\n mm: '%d munud',\n h: 'awr',\n hh: '%d awr',\n d: 'diwrnod',\n dd: '%d diwrnod',\n M: 'mis',\n MM: '%d mis',\n y: 'blwyddyn',\n yy: '%d flynedd',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,\n // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh\n ordinal: function (number) {\n var b = number,\n output = '',\n lookup = [\n '',\n 'af',\n 'il',\n 'ydd',\n 'ydd',\n 'ed',\n 'ed',\n 'ed',\n 'fed',\n 'fed',\n 'fed', // 1af to 10fed\n 'eg',\n 'fed',\n 'eg',\n 'eg',\n 'fed',\n 'eg',\n 'eg',\n 'fed',\n 'eg',\n 'fed', // 11eg to 20fed\n ];\n if (b > 20) {\n if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) {\n output = 'fed'; // not 30ain, 70ain or 90ain\n } else {\n output = 'ain';\n }\n } else if (b > 0) {\n output = lookup[b];\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return cy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Danish [da]\n//! author : Ulrik Nielsen : https://github.com/mrbase\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var da = moment.defineLocale('da', {\n months: 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort: 'søn_man_tir_ons_tor_fre_lør'.split('_'),\n weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd [d.] D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'på dddd [kl.] LT',\n lastDay: '[i går kl.] LT',\n lastWeek: '[i] dddd[s kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s siden',\n s: 'få sekunder',\n ss: '%d sekunder',\n m: 'et minut',\n mm: '%d minutter',\n h: 'en time',\n hh: '%d timer',\n d: 'en dag',\n dd: '%d dage',\n M: 'en måned',\n MM: '%d måneder',\n y: 'et år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return da;\n\n})));\n","//! moment.js locale configuration\n//! locale : German (Austria) [de-at]\n//! author : lluchs : https://github.com/lluchs\n//! author: Menelion Elensúle: https://github.com/Oire\n//! author : Martin Groller : https://github.com/MadMG\n//! author : Mikolaj Dadela : https://github.com/mik01aj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deAt = moment.defineLocale('de-at', {\n months: 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return deAt;\n\n})));\n","//! moment.js locale configuration\n//! locale : German (Switzerland) [de-ch]\n//! author : sschueller : https://github.com/sschueller\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deCh = moment.defineLocale('de-ch', {\n months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return deCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : German [de]\n//! author : lluchs : https://github.com/lluchs\n//! author: Menelion Elensúle: https://github.com/Oire\n//! author : Mikolaj Dadela : https://github.com/mik01aj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var de = moment.defineLocale('de', {\n months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return de;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maldivian [dv]\n//! author : Jawish Hameed : https://github.com/jawish\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'ޖެނުއަރީ',\n 'ފެބްރުއަރީ',\n 'މާރިޗު',\n 'އޭޕްރީލު',\n 'މޭ',\n 'ޖޫން',\n 'ޖުލައި',\n 'އޯގަސްޓު',\n 'ސެޕްޓެމްބަރު',\n 'އޮކްޓޯބަރު',\n 'ނޮވެމްބަރު',\n 'ޑިސެމްބަރު',\n ],\n weekdays = [\n 'އާދިއްތަ',\n 'ހޯމަ',\n 'އަންގާރަ',\n 'ބުދަ',\n 'ބުރާސްފަތި',\n 'ހުކުރު',\n 'ހޮނިހިރު',\n ];\n\n var dv = moment.defineLocale('dv', {\n months: months,\n monthsShort: months,\n weekdays: weekdays,\n weekdaysShort: weekdays,\n weekdaysMin: 'އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/M/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /މކ|މފ/,\n isPM: function (input) {\n return 'މފ' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'މކ';\n } else {\n return 'މފ';\n }\n },\n calendar: {\n sameDay: '[މިއަދު] LT',\n nextDay: '[މާދަމާ] LT',\n nextWeek: 'dddd LT',\n lastDay: '[އިއްޔެ] LT',\n lastWeek: '[ފާއިތުވި] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ތެރޭގައި %s',\n past: 'ކުރިން %s',\n s: 'ސިކުންތުކޮޅެއް',\n ss: 'd% ސިކުންތު',\n m: 'މިނިޓެއް',\n mm: 'މިނިޓު %d',\n h: 'ގަޑިއިރެއް',\n hh: 'ގަޑިއިރު %d',\n d: 'ދުވަހެއް',\n dd: 'ދުވަސް %d',\n M: 'މަހެއް',\n MM: 'މަސް %d',\n y: 'އަހަރެއް',\n yy: 'އަހަރު %d',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 7, // Sunday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return dv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Greek [el]\n//! author : Aggelos Karalias : https://github.com/mehiel\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function isFunction(input) {\n return (\n (typeof Function !== 'undefined' && input instanceof Function) ||\n Object.prototype.toString.call(input) === '[object Function]'\n );\n }\n\n var el = moment.defineLocale('el', {\n monthsNominativeEl:\n 'Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος'.split(\n '_'\n ),\n monthsGenitiveEl:\n 'Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου'.split(\n '_'\n ),\n months: function (momentToFormat, format) {\n if (!momentToFormat) {\n return this._monthsNominativeEl;\n } else if (\n typeof format === 'string' &&\n /D/.test(format.substring(0, format.indexOf('MMMM')))\n ) {\n // if there is a day number before 'MMMM'\n return this._monthsGenitiveEl[momentToFormat.month()];\n } else {\n return this._monthsNominativeEl[momentToFormat.month()];\n }\n },\n monthsShort: 'Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ'.split('_'),\n weekdays: 'Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο'.split(\n '_'\n ),\n weekdaysShort: 'Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ'.split('_'),\n weekdaysMin: 'Κυ_Δε_Τρ_Τε_Πε_Πα_Σα'.split('_'),\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'μμ' : 'ΜΜ';\n } else {\n return isLower ? 'πμ' : 'ΠΜ';\n }\n },\n isPM: function (input) {\n return (input + '').toLowerCase()[0] === 'μ';\n },\n meridiemParse: /[ΠΜ]\\.?Μ?\\.?/i,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendarEl: {\n sameDay: '[Σήμερα {}] LT',\n nextDay: '[Αύριο {}] LT',\n nextWeek: 'dddd [{}] LT',\n lastDay: '[Χθες {}] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 6:\n return '[το προηγούμενο] dddd [{}] LT';\n default:\n return '[την προηγούμενη] dddd [{}] LT';\n }\n },\n sameElse: 'L',\n },\n calendar: function (key, mom) {\n var output = this._calendarEl[key],\n hours = mom && mom.hours();\n if (isFunction(output)) {\n output = output.apply(mom);\n }\n return output.replace('{}', hours % 12 === 1 ? 'στη' : 'στις');\n },\n relativeTime: {\n future: 'σε %s',\n past: '%s πριν',\n s: 'λίγα δευτερόλεπτα',\n ss: '%d δευτερόλεπτα',\n m: 'ένα λεπτό',\n mm: '%d λεπτά',\n h: 'μία ώρα',\n hh: '%d ώρες',\n d: 'μία μέρα',\n dd: '%d μέρες',\n M: 'ένας μήνας',\n MM: '%d μήνες',\n y: 'ένας χρόνος',\n yy: '%d χρόνια',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}η/,\n ordinal: '%dη',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4st is the first week of the year.\n },\n });\n\n return el;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Australia) [en-au]\n//! author : Jared Morse : https://github.com/jarcoal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enAu = moment.defineLocale('en-au', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enAu;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Canada) [en-ca]\n//! author : Jonathan Abourbih : https://github.com/jonbca\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enCa = moment.defineLocale('en-ca', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'YYYY-MM-DD',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n return enCa;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (United Kingdom) [en-gb]\n//! author : Chris Gedrim : https://github.com/chrisgedrim\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enGb = moment.defineLocale('en-gb', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enGb;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Ireland) [en-ie]\n//! author : Chris Cartlidge : https://github.com/chriscartlidge\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIe = moment.defineLocale('en-ie', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enIe;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Israel) [en-il]\n//! author : Chris Gedrim : https://github.com/chrisgedrim\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIl = moment.defineLocale('en-il', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n return enIl;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (India) [en-in]\n//! author : Jatin Agrawal : https://github.com/jatinag22\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIn = moment.defineLocale('en-in', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return enIn;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (New Zealand) [en-nz]\n//! author : Luke McGregor : https://github.com/lukemcgregor\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enNz = moment.defineLocale('en-nz', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enNz;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Singapore) [en-sg]\n//! author : Matthew Castrillon-Madrigal : https://github.com/techdimension\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enSg = moment.defineLocale('en-sg', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enSg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Esperanto [eo]\n//! author : Colin Dean : https://github.com/colindean\n//! author : Mia Nordentoft Imperatori : https://github.com/miestasmia\n//! comment : miestasmia corrected the translation by colindean\n//! comment : Vivakvo corrected the translation by colindean and miestasmia\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var eo = moment.defineLocale('eo', {\n months: 'januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mart_apr_maj_jun_jul_aŭg_sept_okt_nov_dec'.split('_'),\n weekdays: 'dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato'.split('_'),\n weekdaysShort: 'dim_lun_mard_merk_ĵaŭ_ven_sab'.split('_'),\n weekdaysMin: 'di_lu_ma_me_ĵa_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: '[la] D[-an de] MMMM, YYYY',\n LLL: '[la] D[-an de] MMMM, YYYY HH:mm',\n LLLL: 'dddd[n], [la] D[-an de] MMMM, YYYY HH:mm',\n llll: 'ddd, [la] D[-an de] MMM, YYYY HH:mm',\n },\n meridiemParse: /[ap]\\.t\\.m/i,\n isPM: function (input) {\n return input.charAt(0).toLowerCase() === 'p';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'p.t.m.' : 'P.T.M.';\n } else {\n return isLower ? 'a.t.m.' : 'A.T.M.';\n }\n },\n calendar: {\n sameDay: '[Hodiaŭ je] LT',\n nextDay: '[Morgaŭ je] LT',\n nextWeek: 'dddd[n je] LT',\n lastDay: '[Hieraŭ je] LT',\n lastWeek: '[pasintan] dddd[n je] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'post %s',\n past: 'antaŭ %s',\n s: 'kelkaj sekundoj',\n ss: '%d sekundoj',\n m: 'unu minuto',\n mm: '%d minutoj',\n h: 'unu horo',\n hh: '%d horoj',\n d: 'unu tago', //ne 'diurno', ĉar estas uzita por proksimumo\n dd: '%d tagoj',\n M: 'unu monato',\n MM: '%d monatoj',\n y: 'unu jaro',\n yy: '%d jaroj',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}a/,\n ordinal: '%da',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return eo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (Dominican Republic) [es-do]\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esDo = moment.defineLocale('es-do', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY h:mm A',\n LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return esDo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (Mexico) [es-mx]\n//! author : JC Franco : https://github.com/jcfranco\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esMx = moment.defineLocale('es-mx', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n invalidDate: 'Fecha inválida',\n });\n\n return esMx;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (United States) [es-us]\n//! author : bustta : https://github.com/bustta\n//! author : chrisrodz : https://github.com/chrisrodz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esUs = moment.defineLocale('es-us', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'MM/DD/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY h:mm A',\n LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return esUs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish [es]\n//! author : Julio Napurí : https://github.com/julionc\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var es = moment.defineLocale('es', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n invalidDate: 'Fecha inválida',\n });\n\n return es;\n\n})));\n","//! moment.js locale configuration\n//! locale : Estonian [et]\n//! author : Henry Kehlmann : https://github.com/madhenry\n//! improvements : Illimar Tambek : https://github.com/ragulka\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['mõne sekundi', 'mõni sekund', 'paar sekundit'],\n ss: [number + 'sekundi', number + 'sekundit'],\n m: ['ühe minuti', 'üks minut'],\n mm: [number + ' minuti', number + ' minutit'],\n h: ['ühe tunni', 'tund aega', 'üks tund'],\n hh: [number + ' tunni', number + ' tundi'],\n d: ['ühe päeva', 'üks päev'],\n M: ['kuu aja', 'kuu aega', 'üks kuu'],\n MM: [number + ' kuu', number + ' kuud'],\n y: ['ühe aasta', 'aasta', 'üks aasta'],\n yy: [number + ' aasta', number + ' aastat'],\n };\n if (withoutSuffix) {\n return format[key][2] ? format[key][2] : format[key][1];\n }\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var et = moment.defineLocale('et', {\n months: 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split(\n '_'\n ),\n monthsShort:\n 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'),\n weekdays:\n 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split(\n '_'\n ),\n weekdaysShort: 'P_E_T_K_N_R_L'.split('_'),\n weekdaysMin: 'P_E_T_K_N_R_L'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Täna,] LT',\n nextDay: '[Homme,] LT',\n nextWeek: '[Järgmine] dddd LT',\n lastDay: '[Eile,] LT',\n lastWeek: '[Eelmine] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s pärast',\n past: '%s tagasi',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: '%d päeva',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return et;\n\n})));\n","//! moment.js locale configuration\n//! locale : Basque [eu]\n//! author : Eneko Illarramendi : https://github.com/eillarra\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var eu = moment.defineLocale('eu', {\n months: 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split(\n '_'\n ),\n monthsShort:\n 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split(\n '_'\n ),\n weekdaysShort: 'ig._al._ar._az._og._ol._lr.'.split('_'),\n weekdaysMin: 'ig_al_ar_az_og_ol_lr'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY[ko] MMMM[ren] D[a]',\n LLL: 'YYYY[ko] MMMM[ren] D[a] HH:mm',\n LLLL: 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm',\n l: 'YYYY-M-D',\n ll: 'YYYY[ko] MMM D[a]',\n lll: 'YYYY[ko] MMM D[a] HH:mm',\n llll: 'ddd, YYYY[ko] MMM D[a] HH:mm',\n },\n calendar: {\n sameDay: '[gaur] LT[etan]',\n nextDay: '[bihar] LT[etan]',\n nextWeek: 'dddd LT[etan]',\n lastDay: '[atzo] LT[etan]',\n lastWeek: '[aurreko] dddd LT[etan]',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s barru',\n past: 'duela %s',\n s: 'segundo batzuk',\n ss: '%d segundo',\n m: 'minutu bat',\n mm: '%d minutu',\n h: 'ordu bat',\n hh: '%d ordu',\n d: 'egun bat',\n dd: '%d egun',\n M: 'hilabete bat',\n MM: '%d hilabete',\n y: 'urte bat',\n yy: '%d urte',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return eu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Persian [fa]\n//! author : Ebrahim Byagowi : https://github.com/ebraminio\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '۱',\n 2: '۲',\n 3: '۳',\n 4: '۴',\n 5: '۵',\n 6: '۶',\n 7: '۷',\n 8: '۸',\n 9: '۹',\n 0: '۰',\n },\n numberMap = {\n '۱': '1',\n '۲': '2',\n '۳': '3',\n '۴': '4',\n '۵': '5',\n '۶': '6',\n '۷': '7',\n '۸': '8',\n '۹': '9',\n '۰': '0',\n };\n\n var fa = moment.defineLocale('fa', {\n months: 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split(\n '_'\n ),\n monthsShort:\n 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split(\n '_'\n ),\n weekdays:\n 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split(\n '_'\n ),\n weekdaysShort:\n 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split(\n '_'\n ),\n weekdaysMin: 'ی_د_س_چ_پ_ج_ش'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /قبل از ظهر|بعد از ظهر/,\n isPM: function (input) {\n return /بعد از ظهر/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'قبل از ظهر';\n } else {\n return 'بعد از ظهر';\n }\n },\n calendar: {\n sameDay: '[امروز ساعت] LT',\n nextDay: '[فردا ساعت] LT',\n nextWeek: 'dddd [ساعت] LT',\n lastDay: '[دیروز ساعت] LT',\n lastWeek: 'dddd [پیش] [ساعت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'در %s',\n past: '%s پیش',\n s: 'چند ثانیه',\n ss: '%d ثانیه',\n m: 'یک دقیقه',\n mm: '%d دقیقه',\n h: 'یک ساعت',\n hh: '%d ساعت',\n d: 'یک روز',\n dd: '%d روز',\n M: 'یک ماه',\n MM: '%d ماه',\n y: 'یک سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string\n .replace(/[۰-۹]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n dayOfMonthOrdinalParse: /\\d{1,2}م/,\n ordinal: '%dم',\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return fa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Finnish [fi]\n//! author : Tarmo Aidantausta : https://github.com/bleadof\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var numbersPast =\n 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(\n ' '\n ),\n numbersFuture = [\n 'nolla',\n 'yhden',\n 'kahden',\n 'kolmen',\n 'neljän',\n 'viiden',\n 'kuuden',\n numbersPast[7],\n numbersPast[8],\n numbersPast[9],\n ];\n function translate(number, withoutSuffix, key, isFuture) {\n var result = '';\n switch (key) {\n case 's':\n return isFuture ? 'muutaman sekunnin' : 'muutama sekunti';\n case 'ss':\n result = isFuture ? 'sekunnin' : 'sekuntia';\n break;\n case 'm':\n return isFuture ? 'minuutin' : 'minuutti';\n case 'mm':\n result = isFuture ? 'minuutin' : 'minuuttia';\n break;\n case 'h':\n return isFuture ? 'tunnin' : 'tunti';\n case 'hh':\n result = isFuture ? 'tunnin' : 'tuntia';\n break;\n case 'd':\n return isFuture ? 'päivän' : 'päivä';\n case 'dd':\n result = isFuture ? 'päivän' : 'päivää';\n break;\n case 'M':\n return isFuture ? 'kuukauden' : 'kuukausi';\n case 'MM':\n result = isFuture ? 'kuukauden' : 'kuukautta';\n break;\n case 'y':\n return isFuture ? 'vuoden' : 'vuosi';\n case 'yy':\n result = isFuture ? 'vuoden' : 'vuotta';\n break;\n }\n result = verbalNumber(number, isFuture) + ' ' + result;\n return result;\n }\n function verbalNumber(number, isFuture) {\n return number < 10\n ? isFuture\n ? numbersFuture[number]\n : numbersPast[number]\n : number;\n }\n\n var fi = moment.defineLocale('fi', {\n months: 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split(\n '_'\n ),\n monthsShort:\n 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split(\n '_'\n ),\n weekdays:\n 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split(\n '_'\n ),\n weekdaysShort: 'su_ma_ti_ke_to_pe_la'.split('_'),\n weekdaysMin: 'su_ma_ti_ke_to_pe_la'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD.MM.YYYY',\n LL: 'Do MMMM[ta] YYYY',\n LLL: 'Do MMMM[ta] YYYY, [klo] HH.mm',\n LLLL: 'dddd, Do MMMM[ta] YYYY, [klo] HH.mm',\n l: 'D.M.YYYY',\n ll: 'Do MMM YYYY',\n lll: 'Do MMM YYYY, [klo] HH.mm',\n llll: 'ddd, Do MMM YYYY, [klo] HH.mm',\n },\n calendar: {\n sameDay: '[tänään] [klo] LT',\n nextDay: '[huomenna] [klo] LT',\n nextWeek: 'dddd [klo] LT',\n lastDay: '[eilen] [klo] LT',\n lastWeek: '[viime] dddd[na] [klo] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s päästä',\n past: '%s sitten',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Filipino [fil]\n//! author : Dan Hagman : https://github.com/hagmandan\n//! author : Matthew Co : https://github.com/matthewdeeco\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var fil = moment.defineLocale('fil', {\n months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split(\n '_'\n ),\n monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split(\n '_'\n ),\n weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'MM/D/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY HH:mm',\n LLLL: 'dddd, MMMM DD, YYYY HH:mm',\n },\n calendar: {\n sameDay: 'LT [ngayong araw]',\n nextDay: '[Bukas ng] LT',\n nextWeek: 'LT [sa susunod na] dddd',\n lastDay: 'LT [kahapon]',\n lastWeek: 'LT [noong nakaraang] dddd',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'sa loob ng %s',\n past: '%s ang nakalipas',\n s: 'ilang segundo',\n ss: '%d segundo',\n m: 'isang minuto',\n mm: '%d minuto',\n h: 'isang oras',\n hh: '%d oras',\n d: 'isang araw',\n dd: '%d araw',\n M: 'isang buwan',\n MM: '%d buwan',\n y: 'isang taon',\n yy: '%d taon',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fil;\n\n})));\n","//! moment.js locale configuration\n//! locale : Faroese [fo]\n//! author : Ragnar Johannesen : https://github.com/ragnar123\n//! author : Kristian Sakarisson : https://github.com/sakarisson\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var fo = moment.defineLocale('fo', {\n months: 'januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n weekdays:\n 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur'.split(\n '_'\n ),\n weekdaysShort: 'sun_mán_týs_mik_hós_frí_ley'.split('_'),\n weekdaysMin: 'su_má_tý_mi_hó_fr_le'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D. MMMM, YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Í dag kl.] LT',\n nextDay: '[Í morgin kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[Í gjár kl.] LT',\n lastWeek: '[síðstu] dddd [kl] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'um %s',\n past: '%s síðani',\n s: 'fá sekund',\n ss: '%d sekundir',\n m: 'ein minuttur',\n mm: '%d minuttir',\n h: 'ein tími',\n hh: '%d tímar',\n d: 'ein dagur',\n dd: '%d dagar',\n M: 'ein mánaður',\n MM: '%d mánaðir',\n y: 'eitt ár',\n yy: '%d ár',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fo;\n\n})));\n","//! moment.js locale configuration\n//! locale : French (Canada) [fr-ca]\n//! author : Jonathan Abourbih : https://github.com/jonbca\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var frCa = moment.defineLocale('fr-ca', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal: function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n });\n\n return frCa;\n\n})));\n","//! moment.js locale configuration\n//! locale : French (Switzerland) [fr-ch]\n//! author : Gaspard Bucher : https://github.com/gaspard\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var frCh = moment.defineLocale('fr-ch', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal: function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return frCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : French [fr]\n//! author : John Fischer : https://github.com/jfroffice\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsStrictRegex =\n /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,\n monthsShortStrictRegex =\n /(janv\\.?|févr\\.?|mars|avr\\.?|mai|juin|juil\\.?|août|sept\\.?|oct\\.?|nov\\.?|déc\\.?)/i,\n monthsRegex =\n /(janv\\.?|févr\\.?|mars|avr\\.?|mai|juin|juil\\.?|août|sept\\.?|oct\\.?|nov\\.?|déc\\.?|janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,\n monthsParse = [\n /^janv/i,\n /^févr/i,\n /^mars/i,\n /^avr/i,\n /^mai/i,\n /^juin/i,\n /^juil/i,\n /^août/i,\n /^sept/i,\n /^oct/i,\n /^nov/i,\n /^déc/i,\n ];\n\n var fr = moment.defineLocale('fr', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: monthsStrictRegex,\n monthsShortStrictRegex: monthsShortStrictRegex,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n w: 'une semaine',\n ww: '%d semaines',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|)/,\n ordinal: function (number, period) {\n switch (period) {\n // TODO: Return 'e' when day of month > 1. Move this case inside\n // block for masculine words below.\n // See https://github.com/moment/moment/issues/3375\n case 'D':\n return number + (number === 1 ? 'er' : '');\n\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Frisian [fy]\n//! author : Robin van der Vliet : https://github.com/robin0van0der0v\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_');\n\n var fy = moment.defineLocale('fy', {\n months: 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n monthsParseExact: true,\n weekdays: 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split(\n '_'\n ),\n weekdaysShort: 'si._mo._ti._wo._to._fr._so.'.split('_'),\n weekdaysMin: 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[hjoed om] LT',\n nextDay: '[moarn om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[juster om] LT',\n lastWeek: '[ôfrûne] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'oer %s',\n past: '%s lyn',\n s: 'in pear sekonden',\n ss: '%d sekonden',\n m: 'ien minút',\n mm: '%d minuten',\n h: 'ien oere',\n hh: '%d oeren',\n d: 'ien dei',\n dd: '%d dagen',\n M: 'ien moanne',\n MM: '%d moannen',\n y: 'ien jier',\n yy: '%d jierren',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Irish or Irish Gaelic [ga]\n//! author : André Silva : https://github.com/askpt\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'Eanáir',\n 'Feabhra',\n 'Márta',\n 'Aibreán',\n 'Bealtaine',\n 'Meitheamh',\n 'Iúil',\n 'Lúnasa',\n 'Meán Fómhair',\n 'Deireadh Fómhair',\n 'Samhain',\n 'Nollaig',\n ],\n monthsShort = [\n 'Ean',\n 'Feabh',\n 'Márt',\n 'Aib',\n 'Beal',\n 'Meith',\n 'Iúil',\n 'Lún',\n 'M.F.',\n 'D.F.',\n 'Samh',\n 'Noll',\n ],\n weekdays = [\n 'Dé Domhnaigh',\n 'Dé Luain',\n 'Dé Máirt',\n 'Dé Céadaoin',\n 'Déardaoin',\n 'Dé hAoine',\n 'Dé Sathairn',\n ],\n weekdaysShort = ['Domh', 'Luan', 'Máirt', 'Céad', 'Déar', 'Aoine', 'Sath'],\n weekdaysMin = ['Do', 'Lu', 'Má', 'Cé', 'Dé', 'A', 'Sa'];\n\n var ga = moment.defineLocale('ga', {\n months: months,\n monthsShort: monthsShort,\n monthsParseExact: true,\n weekdays: weekdays,\n weekdaysShort: weekdaysShort,\n weekdaysMin: weekdaysMin,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Inniu ag] LT',\n nextDay: '[Amárach ag] LT',\n nextWeek: 'dddd [ag] LT',\n lastDay: '[Inné ag] LT',\n lastWeek: 'dddd [seo caite] [ag] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'i %s',\n past: '%s ó shin',\n s: 'cúpla soicind',\n ss: '%d soicind',\n m: 'nóiméad',\n mm: '%d nóiméad',\n h: 'uair an chloig',\n hh: '%d uair an chloig',\n d: 'lá',\n dd: '%d lá',\n M: 'mí',\n MM: '%d míonna',\n y: 'bliain',\n yy: '%d bliain',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(d|na|mh)/,\n ordinal: function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ga;\n\n})));\n","//! moment.js locale configuration\n//! locale : Scottish Gaelic [gd]\n//! author : Jon Ashdown : https://github.com/jonashdown\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'Am Faoilleach',\n 'An Gearran',\n 'Am Màrt',\n 'An Giblean',\n 'An Cèitean',\n 'An t-Ògmhios',\n 'An t-Iuchar',\n 'An Lùnastal',\n 'An t-Sultain',\n 'An Dàmhair',\n 'An t-Samhain',\n 'An Dùbhlachd',\n ],\n monthsShort = [\n 'Faoi',\n 'Gear',\n 'Màrt',\n 'Gibl',\n 'Cèit',\n 'Ògmh',\n 'Iuch',\n 'Lùn',\n 'Sult',\n 'Dàmh',\n 'Samh',\n 'Dùbh',\n ],\n weekdays = [\n 'Didòmhnaich',\n 'Diluain',\n 'Dimàirt',\n 'Diciadain',\n 'Diardaoin',\n 'Dihaoine',\n 'Disathairne',\n ],\n weekdaysShort = ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'],\n weekdaysMin = ['Dò', 'Lu', 'Mà', 'Ci', 'Ar', 'Ha', 'Sa'];\n\n var gd = moment.defineLocale('gd', {\n months: months,\n monthsShort: monthsShort,\n monthsParseExact: true,\n weekdays: weekdays,\n weekdaysShort: weekdaysShort,\n weekdaysMin: weekdaysMin,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[An-diugh aig] LT',\n nextDay: '[A-màireach aig] LT',\n nextWeek: 'dddd [aig] LT',\n lastDay: '[An-dè aig] LT',\n lastWeek: 'dddd [seo chaidh] [aig] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ann an %s',\n past: 'bho chionn %s',\n s: 'beagan diogan',\n ss: '%d diogan',\n m: 'mionaid',\n mm: '%d mionaidean',\n h: 'uair',\n hh: '%d uairean',\n d: 'latha',\n dd: '%d latha',\n M: 'mìos',\n MM: '%d mìosan',\n y: 'bliadhna',\n yy: '%d bliadhna',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(d|na|mh)/,\n ordinal: function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return gd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Galician [gl]\n//! author : Juan G. Hurtado : https://github.com/juanghurtado\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var gl = moment.defineLocale('gl', {\n months: 'xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro'.split(\n '_'\n ),\n monthsShort:\n 'xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'domingo_luns_martes_mércores_xoves_venres_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mér._xov._ven._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mé_xo_ve_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoxe ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';\n },\n nextDay: function () {\n return '[mañá ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT';\n },\n lastDay: function () {\n return '[onte ' + (this.hours() !== 1 ? 'á' : 'a') + '] LT';\n },\n lastWeek: function () {\n return (\n '[o] dddd [pasado ' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: function (str) {\n if (str.indexOf('un') === 0) {\n return 'n' + str;\n }\n return 'en ' + str;\n },\n past: 'hai %s',\n s: 'uns segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'unha hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n M: 'un mes',\n MM: '%d meses',\n y: 'un ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return gl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Konkani Devanagari script [gom-deva]\n//! author : The Discoverer : https://github.com/WikiDiscoverer\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['थोडया सॅकंडांनी', 'थोडे सॅकंड'],\n ss: [number + ' सॅकंडांनी', number + ' सॅकंड'],\n m: ['एका मिणटान', 'एक मिनूट'],\n mm: [number + ' मिणटांनी', number + ' मिणटां'],\n h: ['एका वरान', 'एक वर'],\n hh: [number + ' वरांनी', number + ' वरां'],\n d: ['एका दिसान', 'एक दीस'],\n dd: [number + ' दिसांनी', number + ' दीस'],\n M: ['एका म्हयन्यान', 'एक म्हयनो'],\n MM: [number + ' म्हयन्यानी', number + ' म्हयने'],\n y: ['एका वर्सान', 'एक वर्स'],\n yy: [number + ' वर्सांनी', number + ' वर्सां'],\n };\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var gomDeva = moment.defineLocale('gom-deva', {\n months: {\n standalone:\n 'जानेवारी_फेब्रुवारी_मार्च_एप्रील_मे_जून_जुलय_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split(\n '_'\n ),\n format: 'जानेवारीच्या_फेब्रुवारीच्या_मार्चाच्या_एप्रीलाच्या_मेयाच्या_जूनाच्या_जुलयाच्या_ऑगस्टाच्या_सप्टेंबराच्या_ऑक्टोबराच्या_नोव्हेंबराच्या_डिसेंबराच्या'.split(\n '_'\n ),\n isFormat: /MMMM(\\s)+D[oD]?/,\n },\n monthsShort:\n 'जाने._फेब्रु._मार्च_एप्री._मे_जून_जुल._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'आयतार_सोमार_मंगळार_बुधवार_बिरेस्तार_सुक्रार_शेनवार'.split('_'),\n weekdaysShort: 'आयत._सोम._मंगळ._बुध._ब्रेस्त._सुक्र._शेन.'.split('_'),\n weekdaysMin: 'आ_सो_मं_बु_ब्रे_सु_शे'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'A h:mm [वाजतां]',\n LTS: 'A h:mm:ss [वाजतां]',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY A h:mm [वाजतां]',\n LLLL: 'dddd, MMMM Do, YYYY, A h:mm [वाजतां]',\n llll: 'ddd, D MMM YYYY, A h:mm [वाजतां]',\n },\n calendar: {\n sameDay: '[आयज] LT',\n nextDay: '[फाल्यां] LT',\n nextWeek: '[फुडलो] dddd[,] LT',\n lastDay: '[काल] LT',\n lastWeek: '[फाटलो] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s',\n past: '%s आदीं',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(वेर)/,\n ordinal: function (number, period) {\n switch (period) {\n // the ordinal 'वेर' only applies to day of the month\n case 'D':\n return number + 'वेर';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week\n doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)\n },\n meridiemParse: /राती|सकाळीं|दनपारां|सांजे/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'राती') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सकाळीं') {\n return hour;\n } else if (meridiem === 'दनपारां') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'सांजे') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'राती';\n } else if (hour < 12) {\n return 'सकाळीं';\n } else if (hour < 16) {\n return 'दनपारां';\n } else if (hour < 20) {\n return 'सांजे';\n } else {\n return 'राती';\n }\n },\n });\n\n return gomDeva;\n\n})));\n","//! moment.js locale configuration\n//! locale : Konkani Latin script [gom-latn]\n//! author : The Discoverer : https://github.com/WikiDiscoverer\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['thoddea sekondamni', 'thodde sekond'],\n ss: [number + ' sekondamni', number + ' sekond'],\n m: ['eka mintan', 'ek minut'],\n mm: [number + ' mintamni', number + ' mintam'],\n h: ['eka voran', 'ek vor'],\n hh: [number + ' voramni', number + ' voram'],\n d: ['eka disan', 'ek dis'],\n dd: [number + ' disamni', number + ' dis'],\n M: ['eka mhoinean', 'ek mhoino'],\n MM: [number + ' mhoineamni', number + ' mhoine'],\n y: ['eka vorsan', 'ek voros'],\n yy: [number + ' vorsamni', number + ' vorsam'],\n };\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var gomLatn = moment.defineLocale('gom-latn', {\n months: {\n standalone:\n 'Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr'.split(\n '_'\n ),\n format: 'Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea'.split(\n '_'\n ),\n isFormat: /MMMM(\\s)+D[oD]?/,\n },\n monthsShort:\n 'Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays: \"Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var\".split('_'),\n weekdaysShort: 'Ait._Som._Mon._Bud._Bre._Suk._Son.'.split('_'),\n weekdaysMin: 'Ai_Sm_Mo_Bu_Br_Su_Sn'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'A h:mm [vazta]',\n LTS: 'A h:mm:ss [vazta]',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY A h:mm [vazta]',\n LLLL: 'dddd, MMMM Do, YYYY, A h:mm [vazta]',\n llll: 'ddd, D MMM YYYY, A h:mm [vazta]',\n },\n calendar: {\n sameDay: '[Aiz] LT',\n nextDay: '[Faleam] LT',\n nextWeek: '[Fuddlo] dddd[,] LT',\n lastDay: '[Kal] LT',\n lastWeek: '[Fattlo] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s',\n past: '%s adim',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er)/,\n ordinal: function (number, period) {\n switch (period) {\n // the ordinal 'er' only applies to day of the month\n case 'D':\n return number + 'er';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week\n doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)\n },\n meridiemParse: /rati|sokallim|donparam|sanje/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'rati') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'sokallim') {\n return hour;\n } else if (meridiem === 'donparam') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'sanje') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'rati';\n } else if (hour < 12) {\n return 'sokallim';\n } else if (hour < 16) {\n return 'donparam';\n } else if (hour < 20) {\n return 'sanje';\n } else {\n return 'rati';\n }\n },\n });\n\n return gomLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Gujarati [gu]\n//! author : Kaushik Thanki : https://github.com/Kaushik1987\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '૧',\n 2: '૨',\n 3: '૩',\n 4: '૪',\n 5: '૫',\n 6: '૬',\n 7: '૭',\n 8: '૮',\n 9: '૯',\n 0: '૦',\n },\n numberMap = {\n '૧': '1',\n '૨': '2',\n '૩': '3',\n '૪': '4',\n '૫': '5',\n '૬': '6',\n '૭': '7',\n '૮': '8',\n '૯': '9',\n '૦': '0',\n };\n\n var gu = moment.defineLocale('gu', {\n months: 'જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર'.split(\n '_'\n ),\n monthsShort:\n 'જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર'.split(\n '_'\n ),\n weekdaysShort: 'રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ'.split('_'),\n weekdaysMin: 'ર_સો_મં_બુ_ગુ_શુ_શ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm વાગ્યે',\n LTS: 'A h:mm:ss વાગ્યે',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm વાગ્યે',\n LLLL: 'dddd, D MMMM YYYY, A h:mm વાગ્યે',\n },\n calendar: {\n sameDay: '[આજ] LT',\n nextDay: '[કાલે] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ગઇકાલે] LT',\n lastWeek: '[પાછલા] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s મા',\n past: '%s પહેલા',\n s: 'અમુક પળો',\n ss: '%d સેકંડ',\n m: 'એક મિનિટ',\n mm: '%d મિનિટ',\n h: 'એક કલાક',\n hh: '%d કલાક',\n d: 'એક દિવસ',\n dd: '%d દિવસ',\n M: 'એક મહિનો',\n MM: '%d મહિનો',\n y: 'એક વર્ષ',\n yy: '%d વર્ષ',\n },\n preparse: function (string) {\n return string.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Gujarati notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati.\n meridiemParse: /રાત|બપોર|સવાર|સાંજ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'રાત') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'સવાર') {\n return hour;\n } else if (meridiem === 'બપોર') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'સાંજ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'રાત';\n } else if (hour < 10) {\n return 'સવાર';\n } else if (hour < 17) {\n return 'બપોર';\n } else if (hour < 20) {\n return 'સાંજ';\n } else {\n return 'રાત';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return gu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hebrew [he]\n//! author : Tomer Cohen : https://github.com/tomer\n//! author : Moshe Simantov : https://github.com/DevelopmentIL\n//! author : Tal Ater : https://github.com/TalAter\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var he = moment.defineLocale('he', {\n months: 'ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר'.split(\n '_'\n ),\n monthsShort:\n 'ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳'.split('_'),\n weekdays: 'ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת'.split('_'),\n weekdaysShort: 'א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'),\n weekdaysMin: 'א_ב_ג_ד_ה_ו_ש'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [ב]MMMM YYYY',\n LLL: 'D [ב]MMMM YYYY HH:mm',\n LLLL: 'dddd, D [ב]MMMM YYYY HH:mm',\n l: 'D/M/YYYY',\n ll: 'D MMM YYYY',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd, D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[היום ב־]LT',\n nextDay: '[מחר ב־]LT',\n nextWeek: 'dddd [בשעה] LT',\n lastDay: '[אתמול ב־]LT',\n lastWeek: '[ביום] dddd [האחרון בשעה] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'בעוד %s',\n past: 'לפני %s',\n s: 'מספר שניות',\n ss: '%d שניות',\n m: 'דקה',\n mm: '%d דקות',\n h: 'שעה',\n hh: function (number) {\n if (number === 2) {\n return 'שעתיים';\n }\n return number + ' שעות';\n },\n d: 'יום',\n dd: function (number) {\n if (number === 2) {\n return 'יומיים';\n }\n return number + ' ימים';\n },\n M: 'חודש',\n MM: function (number) {\n if (number === 2) {\n return 'חודשיים';\n }\n return number + ' חודשים';\n },\n y: 'שנה',\n yy: function (number) {\n if (number === 2) {\n return 'שנתיים';\n } else if (number % 10 === 0 && number !== 10) {\n return number + ' שנה';\n }\n return number + ' שנים';\n },\n },\n meridiemParse:\n /אחה\"צ|לפנה\"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,\n isPM: function (input) {\n return /^(אחה\"צ|אחרי הצהריים|בערב)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 5) {\n return 'לפנות בוקר';\n } else if (hour < 10) {\n return 'בבוקר';\n } else if (hour < 12) {\n return isLower ? 'לפנה\"צ' : 'לפני הצהריים';\n } else if (hour < 18) {\n return isLower ? 'אחה\"צ' : 'אחרי הצהריים';\n } else {\n return 'בערב';\n }\n },\n });\n\n return he;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hindi [hi]\n//! author : Mayank Singhal : https://github.com/mayanksinghal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: '७',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n },\n monthsParse = [\n /^जन/i,\n /^फ़र|फर/i,\n /^मार्च/i,\n /^अप्रै/i,\n /^मई/i,\n /^जून/i,\n /^जुल/i,\n /^अग/i,\n /^सितं|सित/i,\n /^अक्टू/i,\n /^नव|नवं/i,\n /^दिसं|दिस/i,\n ],\n shortMonthsParse = [\n /^जन/i,\n /^फ़र/i,\n /^मार्च/i,\n /^अप्रै/i,\n /^मई/i,\n /^जून/i,\n /^जुल/i,\n /^अग/i,\n /^सित/i,\n /^अक्टू/i,\n /^नव/i,\n /^दिस/i,\n ];\n\n var hi = moment.defineLocale('hi', {\n months: {\n format: 'जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर'.split(\n '_'\n ),\n standalone:\n 'जनवरी_फरवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितंबर_अक्टूबर_नवंबर_दिसंबर'.split(\n '_'\n ),\n },\n monthsShort:\n 'जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.'.split('_'),\n weekdays: 'रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),\n weekdaysShort: 'रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि'.split('_'),\n weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'),\n longDateFormat: {\n LT: 'A h:mm बजे',\n LTS: 'A h:mm:ss बजे',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm बजे',\n LLLL: 'dddd, D MMMM YYYY, A h:mm बजे',\n },\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: shortMonthsParse,\n\n monthsRegex:\n /^(जनवरी|जन\\.?|फ़रवरी|फरवरी|फ़र\\.?|मार्च?|अप्रैल|अप्रै\\.?|मई?|जून?|जुलाई|जुल\\.?|अगस्त|अग\\.?|सितम्बर|सितंबर|सित\\.?|अक्टूबर|अक्टू\\.?|नवम्बर|नवंबर|नव\\.?|दिसम्बर|दिसंबर|दिस\\.?)/i,\n\n monthsShortRegex:\n /^(जनवरी|जन\\.?|फ़रवरी|फरवरी|फ़र\\.?|मार्च?|अप्रैल|अप्रै\\.?|मई?|जून?|जुलाई|जुल\\.?|अगस्त|अग\\.?|सितम्बर|सितंबर|सित\\.?|अक्टूबर|अक्टू\\.?|नवम्बर|नवंबर|नव\\.?|दिसम्बर|दिसंबर|दिस\\.?)/i,\n\n monthsStrictRegex:\n /^(जनवरी?|फ़रवरी|फरवरी?|मार्च?|अप्रैल?|मई?|जून?|जुलाई?|अगस्त?|सितम्बर|सितंबर|सित?\\.?|अक्टूबर|अक्टू\\.?|नवम्बर|नवंबर?|दिसम्बर|दिसंबर?)/i,\n\n monthsShortStrictRegex:\n /^(जन\\.?|फ़र\\.?|मार्च?|अप्रै\\.?|मई?|जून?|जुल\\.?|अग\\.?|सित\\.?|अक्टू\\.?|नव\\.?|दिस\\.?)/i,\n\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[कल] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[कल] LT',\n lastWeek: '[पिछले] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s में',\n past: '%s पहले',\n s: 'कुछ ही क्षण',\n ss: '%d सेकंड',\n m: 'एक मिनट',\n mm: '%d मिनट',\n h: 'एक घंटा',\n hh: '%d घंटे',\n d: 'एक दिन',\n dd: '%d दिन',\n M: 'एक महीने',\n MM: '%d महीने',\n y: 'एक वर्ष',\n yy: '%d वर्ष',\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Hindi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi.\n meridiemParse: /रात|सुबह|दोपहर|शाम/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'रात') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सुबह') {\n return hour;\n } else if (meridiem === 'दोपहर') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'शाम') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'रात';\n } else if (hour < 10) {\n return 'सुबह';\n } else if (hour < 17) {\n return 'दोपहर';\n } else if (hour < 20) {\n return 'शाम';\n } else {\n return 'रात';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return hi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Croatian [hr]\n//! author : Bojan Marković : https://github.com/bmarkovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var hr = moment.defineLocale('hr', {\n months: {\n format: 'siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca'.split(\n '_'\n ),\n standalone:\n 'siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split(\n '_'\n ),\n },\n monthsShort:\n 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'Do MMMM YYYY',\n LLL: 'Do MMMM YYYY H:mm',\n LLLL: 'dddd, Do MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[jučer u] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[prošlu] [nedjelju] [u] LT';\n case 3:\n return '[prošlu] [srijedu] [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'par sekundi',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: 'dan',\n dd: translate,\n M: 'mjesec',\n MM: translate,\n y: 'godinu',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return hr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hungarian [hu]\n//! author : Adam Brunner : https://github.com/adambrunner\n//! author : Peter Viszt : https://github.com/passatgt\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var weekEndings =\n 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' ');\n function translate(number, withoutSuffix, key, isFuture) {\n var num = number;\n switch (key) {\n case 's':\n return isFuture || withoutSuffix\n ? 'néhány másodperc'\n : 'néhány másodperce';\n case 'ss':\n return num + (isFuture || withoutSuffix)\n ? ' másodperc'\n : ' másodperce';\n case 'm':\n return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'mm':\n return num + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'h':\n return 'egy' + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'hh':\n return num + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'd':\n return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'dd':\n return num + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'M':\n return 'egy' + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'MM':\n return num + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'y':\n return 'egy' + (isFuture || withoutSuffix ? ' év' : ' éve');\n case 'yy':\n return num + (isFuture || withoutSuffix ? ' év' : ' éve');\n }\n return '';\n }\n function week(isFuture) {\n return (\n (isFuture ? '' : '[múlt] ') +\n '[' +\n weekEndings[this.day()] +\n '] LT[-kor]'\n );\n }\n\n var hu = moment.defineLocale('hu', {\n months: 'január_február_március_április_május_június_július_augusztus_szeptember_október_november_december'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._márc._ápr._máj._jún._júl._aug._szept._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat'.split('_'),\n weekdaysShort: 'vas_hét_kedd_sze_csüt_pén_szo'.split('_'),\n weekdaysMin: 'v_h_k_sze_cs_p_szo'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'YYYY.MM.DD.',\n LL: 'YYYY. MMMM D.',\n LLL: 'YYYY. MMMM D. H:mm',\n LLLL: 'YYYY. MMMM D., dddd H:mm',\n },\n meridiemParse: /de|du/i,\n isPM: function (input) {\n return input.charAt(1).toLowerCase() === 'u';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower === true ? 'de' : 'DE';\n } else {\n return isLower === true ? 'du' : 'DU';\n }\n },\n calendar: {\n sameDay: '[ma] LT[-kor]',\n nextDay: '[holnap] LT[-kor]',\n nextWeek: function () {\n return week.call(this, true);\n },\n lastDay: '[tegnap] LT[-kor]',\n lastWeek: function () {\n return week.call(this, false);\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s múlva',\n past: '%s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return hu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Armenian [hy-am]\n//! author : Armendarabyan : https://github.com/armendarabyan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var hyAm = moment.defineLocale('hy-am', {\n months: {\n format: 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split(\n '_'\n ),\n standalone:\n 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split(\n '_'\n ),\n },\n monthsShort: 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'),\n weekdays:\n 'կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ'.split(\n '_'\n ),\n weekdaysShort: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),\n weekdaysMin: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY թ.',\n LLL: 'D MMMM YYYY թ., HH:mm',\n LLLL: 'dddd, D MMMM YYYY թ., HH:mm',\n },\n calendar: {\n sameDay: '[այսօր] LT',\n nextDay: '[վաղը] LT',\n lastDay: '[երեկ] LT',\n nextWeek: function () {\n return 'dddd [օրը ժամը] LT';\n },\n lastWeek: function () {\n return '[անցած] dddd [օրը ժամը] LT';\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s հետո',\n past: '%s առաջ',\n s: 'մի քանի վայրկյան',\n ss: '%d վայրկյան',\n m: 'րոպե',\n mm: '%d րոպե',\n h: 'ժամ',\n hh: '%d ժամ',\n d: 'օր',\n dd: '%d օր',\n M: 'ամիս',\n MM: '%d ամիս',\n y: 'տարի',\n yy: '%d տարի',\n },\n meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,\n isPM: function (input) {\n return /^(ցերեկվա|երեկոյան)$/.test(input);\n },\n meridiem: function (hour) {\n if (hour < 4) {\n return 'գիշերվա';\n } else if (hour < 12) {\n return 'առավոտվա';\n } else if (hour < 17) {\n return 'ցերեկվա';\n } else {\n return 'երեկոյան';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}|\\d{1,2}-(ին|րդ)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'DDD':\n case 'w':\n case 'W':\n case 'DDDo':\n if (number === 1) {\n return number + '-ին';\n }\n return number + '-րդ';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return hyAm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Indonesian [id]\n//! author : Mohammad Satrio Utomo : https://github.com/tyok\n//! reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var id = moment.defineLocale('id', {\n months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des'.split('_'),\n weekdays: 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),\n weekdaysShort: 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),\n weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|siang|sore|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'siang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sore' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'siang';\n } else if (hours < 19) {\n return 'sore';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Besok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kemarin pukul] LT',\n lastWeek: 'dddd [lalu pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lalu',\n s: 'beberapa detik',\n ss: '%d detik',\n m: 'semenit',\n mm: '%d menit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return id;\n\n})));\n","//! moment.js locale configuration\n//! locale : Icelandic [is]\n//! author : Hinrik Örn Sigurðsson : https://github.com/hinrik\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(n) {\n if (n % 100 === 11) {\n return true;\n } else if (n % 10 === 1) {\n return false;\n }\n return true;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture\n ? 'nokkrar sekúndur'\n : 'nokkrum sekúndum';\n case 'ss':\n if (plural(number)) {\n return (\n result +\n (withoutSuffix || isFuture ? 'sekúndur' : 'sekúndum')\n );\n }\n return result + 'sekúnda';\n case 'm':\n return withoutSuffix ? 'mínúta' : 'mínútu';\n case 'mm':\n if (plural(number)) {\n return (\n result + (withoutSuffix || isFuture ? 'mínútur' : 'mínútum')\n );\n } else if (withoutSuffix) {\n return result + 'mínúta';\n }\n return result + 'mínútu';\n case 'hh':\n if (plural(number)) {\n return (\n result +\n (withoutSuffix || isFuture\n ? 'klukkustundir'\n : 'klukkustundum')\n );\n }\n return result + 'klukkustund';\n case 'd':\n if (withoutSuffix) {\n return 'dagur';\n }\n return isFuture ? 'dag' : 'degi';\n case 'dd':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'dagar';\n }\n return result + (isFuture ? 'daga' : 'dögum');\n } else if (withoutSuffix) {\n return result + 'dagur';\n }\n return result + (isFuture ? 'dag' : 'degi');\n case 'M':\n if (withoutSuffix) {\n return 'mánuður';\n }\n return isFuture ? 'mánuð' : 'mánuði';\n case 'MM':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'mánuðir';\n }\n return result + (isFuture ? 'mánuði' : 'mánuðum');\n } else if (withoutSuffix) {\n return result + 'mánuður';\n }\n return result + (isFuture ? 'mánuð' : 'mánuði');\n case 'y':\n return withoutSuffix || isFuture ? 'ár' : 'ári';\n case 'yy':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'ár' : 'árum');\n }\n return result + (withoutSuffix || isFuture ? 'ár' : 'ári');\n }\n }\n\n var is = moment.defineLocale('is', {\n months: 'janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des'.split('_'),\n weekdays:\n 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split(\n '_'\n ),\n weekdaysShort: 'sun_mán_þri_mið_fim_fös_lau'.split('_'),\n weekdaysMin: 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] H:mm',\n LLLL: 'dddd, D. MMMM YYYY [kl.] H:mm',\n },\n calendar: {\n sameDay: '[í dag kl.] LT',\n nextDay: '[á morgun kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[í gær kl.] LT',\n lastWeek: '[síðasta] dddd [kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'eftir %s',\n past: 'fyrir %s síðan',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: 'klukkustund',\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return is;\n\n})));\n","//! moment.js locale configuration\n//! locale : Italian (Switzerland) [it-ch]\n//! author : xfh : https://github.com/xfh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var itCh = moment.defineLocale('it-ch', {\n months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(\n '_'\n ),\n monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(\n '_'\n ),\n weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Oggi alle] LT',\n nextDay: '[Domani alle] LT',\n nextWeek: 'dddd [alle] LT',\n lastDay: '[Ieri alle] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[la scorsa] dddd [alle] LT';\n default:\n return '[lo scorso] dddd [alle] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: function (s) {\n return (/^[0-9].+$/.test(s) ? 'tra' : 'in') + ' ' + s;\n },\n past: '%s fa',\n s: 'alcuni secondi',\n ss: '%d secondi',\n m: 'un minuto',\n mm: '%d minuti',\n h: \"un'ora\",\n hh: '%d ore',\n d: 'un giorno',\n dd: '%d giorni',\n M: 'un mese',\n MM: '%d mesi',\n y: 'un anno',\n yy: '%d anni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return itCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Italian [it]\n//! author : Lorenzo : https://github.com/aliem\n//! author: Mattia Larentis: https://github.com/nostalgiaz\n//! author: Marco : https://github.com/Manfre98\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var it = moment.defineLocale('it', {\n months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(\n '_'\n ),\n monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(\n '_'\n ),\n weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: function () {\n return (\n '[Oggi a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n nextDay: function () {\n return (\n '[Domani a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n nextWeek: function () {\n return (\n 'dddd [a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n lastDay: function () {\n return (\n '[Ieri a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return (\n '[La scorsa] dddd [a' +\n (this.hours() > 1\n ? 'lle '\n : this.hours() === 0\n ? ' '\n : \"ll'\") +\n ']LT'\n );\n default:\n return (\n '[Lo scorso] dddd [a' +\n (this.hours() > 1\n ? 'lle '\n : this.hours() === 0\n ? ' '\n : \"ll'\") +\n ']LT'\n );\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'tra %s',\n past: '%s fa',\n s: 'alcuni secondi',\n ss: '%d secondi',\n m: 'un minuto',\n mm: '%d minuti',\n h: \"un'ora\",\n hh: '%d ore',\n d: 'un giorno',\n dd: '%d giorni',\n w: 'una settimana',\n ww: '%d settimane',\n M: 'un mese',\n MM: '%d mesi',\n y: 'un anno',\n yy: '%d anni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return it;\n\n})));\n","//! moment.js locale configuration\n//! locale : Japanese [ja]\n//! author : LI Long : https://github.com/baryon\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ja = moment.defineLocale('ja', {\n eras: [\n {\n since: '2019-05-01',\n offset: 1,\n name: '令和',\n narrow: '㋿',\n abbr: 'R',\n },\n {\n since: '1989-01-08',\n until: '2019-04-30',\n offset: 1,\n name: '平成',\n narrow: '㍻',\n abbr: 'H',\n },\n {\n since: '1926-12-25',\n until: '1989-01-07',\n offset: 1,\n name: '昭和',\n narrow: '㍼',\n abbr: 'S',\n },\n {\n since: '1912-07-30',\n until: '1926-12-24',\n offset: 1,\n name: '大正',\n narrow: '㍽',\n abbr: 'T',\n },\n {\n since: '1873-01-01',\n until: '1912-07-29',\n offset: 6,\n name: '明治',\n narrow: '㍾',\n abbr: 'M',\n },\n {\n since: '0001-01-01',\n until: '1873-12-31',\n offset: 1,\n name: '西暦',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: '紀元前',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n eraYearOrdinalRegex: /(元|\\d+)年/,\n eraYearOrdinalParse: function (input, match) {\n return match[1] === '元' ? 1 : parseInt(match[1] || input, 10);\n },\n months: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日'.split('_'),\n weekdaysShort: '日_月_火_水_木_金_土'.split('_'),\n weekdaysMin: '日_月_火_水_木_金_土'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日 dddd HH:mm',\n l: 'YYYY/MM/DD',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日(ddd) HH:mm',\n },\n meridiemParse: /午前|午後/i,\n isPM: function (input) {\n return input === '午後';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return '午前';\n } else {\n return '午後';\n }\n },\n calendar: {\n sameDay: '[今日] LT',\n nextDay: '[明日] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n return '[来週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n lastDay: '[昨日] LT',\n lastWeek: function (now) {\n if (this.week() !== now.week()) {\n return '[先週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}日/,\n ordinal: function (number, period) {\n switch (period) {\n case 'y':\n return number === 1 ? '元年' : number + '年';\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '数秒',\n ss: '%d秒',\n m: '1分',\n mm: '%d分',\n h: '1時間',\n hh: '%d時間',\n d: '1日',\n dd: '%d日',\n M: '1ヶ月',\n MM: '%dヶ月',\n y: '1年',\n yy: '%d年',\n },\n });\n\n return ja;\n\n})));\n","//! moment.js locale configuration\n//! locale : Javanese [jv]\n//! author : Rony Lantip : https://github.com/lantip\n//! reference: http://jv.wikipedia.org/wiki/Basa_Jawa\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var jv = moment.defineLocale('jv', {\n months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des'.split('_'),\n weekdays: 'Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu'.split('_'),\n weekdaysShort: 'Min_Sen_Sel_Reb_Kem_Jem_Sep'.split('_'),\n weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sp'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /enjing|siyang|sonten|ndalu/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'enjing') {\n return hour;\n } else if (meridiem === 'siyang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sonten' || meridiem === 'ndalu') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'enjing';\n } else if (hours < 15) {\n return 'siyang';\n } else if (hours < 19) {\n return 'sonten';\n } else {\n return 'ndalu';\n }\n },\n calendar: {\n sameDay: '[Dinten puniko pukul] LT',\n nextDay: '[Mbenjang pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kala wingi pukul] LT',\n lastWeek: 'dddd [kepengker pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'wonten ing %s',\n past: '%s ingkang kepengker',\n s: 'sawetawis detik',\n ss: '%d detik',\n m: 'setunggal menit',\n mm: '%d menit',\n h: 'setunggal jam',\n hh: '%d jam',\n d: 'sedinten',\n dd: '%d dinten',\n M: 'sewulan',\n MM: '%d wulan',\n y: 'setaun',\n yy: '%d taun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return jv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Georgian [ka]\n//! author : Irakli Janiashvili : https://github.com/IrakliJani\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ka = moment.defineLocale('ka', {\n months: 'იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი'.split(\n '_'\n ),\n monthsShort: 'იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ'.split('_'),\n weekdays: {\n standalone:\n 'კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი'.split(\n '_'\n ),\n format: 'კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს'.split(\n '_'\n ),\n isFormat: /(წინა|შემდეგ)/,\n },\n weekdaysShort: 'კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ'.split('_'),\n weekdaysMin: 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[დღეს] LT[-ზე]',\n nextDay: '[ხვალ] LT[-ზე]',\n lastDay: '[გუშინ] LT[-ზე]',\n nextWeek: '[შემდეგ] dddd LT[-ზე]',\n lastWeek: '[წინა] dddd LT-ზე',\n sameElse: 'L',\n },\n relativeTime: {\n future: function (s) {\n return s.replace(\n /(წამ|წუთ|საათ|წელ|დღ|თვ)(ი|ე)/,\n function ($0, $1, $2) {\n return $2 === 'ი' ? $1 + 'ში' : $1 + $2 + 'ში';\n }\n );\n },\n past: function (s) {\n if (/(წამი|წუთი|საათი|დღე|თვე)/.test(s)) {\n return s.replace(/(ი|ე)$/, 'ის წინ');\n }\n if (/წელი/.test(s)) {\n return s.replace(/წელი$/, 'წლის წინ');\n }\n return s;\n },\n s: 'რამდენიმე წამი',\n ss: '%d წამი',\n m: 'წუთი',\n mm: '%d წუთი',\n h: 'საათი',\n hh: '%d საათი',\n d: 'დღე',\n dd: '%d დღე',\n M: 'თვე',\n MM: '%d თვე',\n y: 'წელი',\n yy: '%d წელი',\n },\n dayOfMonthOrdinalParse: /0|1-ლი|მე-\\d{1,2}|\\d{1,2}-ე/,\n ordinal: function (number) {\n if (number === 0) {\n return number;\n }\n if (number === 1) {\n return number + '-ლი';\n }\n if (\n number < 20 ||\n (number <= 100 && number % 20 === 0) ||\n number % 100 === 0\n ) {\n return 'მე-' + number;\n }\n return number + '-ე';\n },\n week: {\n dow: 1,\n doy: 7,\n },\n });\n\n return ka;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kazakh [kk]\n//! authors : Nurlan Rakhimzhanov : https://github.com/nurlan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-ші',\n 1: '-ші',\n 2: '-ші',\n 3: '-ші',\n 4: '-ші',\n 5: '-ші',\n 6: '-шы',\n 7: '-ші',\n 8: '-ші',\n 9: '-шы',\n 10: '-шы',\n 20: '-шы',\n 30: '-шы',\n 40: '-шы',\n 50: '-ші',\n 60: '-шы',\n 70: '-ші',\n 80: '-ші',\n 90: '-шы',\n 100: '-ші',\n };\n\n var kk = moment.defineLocale('kk', {\n months: 'қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан'.split(\n '_'\n ),\n monthsShort: 'қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел'.split('_'),\n weekdays: 'жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі'.split(\n '_'\n ),\n weekdaysShort: 'жек_дүй_сей_сәр_бей_жұм_сен'.split('_'),\n weekdaysMin: 'жк_дй_сй_ср_бй_жм_сн'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Бүгін сағат] LT',\n nextDay: '[Ертең сағат] LT',\n nextWeek: 'dddd [сағат] LT',\n lastDay: '[Кеше сағат] LT',\n lastWeek: '[Өткен аптаның] dddd [сағат] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ішінде',\n past: '%s бұрын',\n s: 'бірнеше секунд',\n ss: '%d секунд',\n m: 'бір минут',\n mm: '%d минут',\n h: 'бір сағат',\n hh: '%d сағат',\n d: 'бір күн',\n dd: '%d күн',\n M: 'бір ай',\n MM: '%d ай',\n y: 'бір жыл',\n yy: '%d жыл',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ші|шы)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return kk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Cambodian [km]\n//! author : Kruy Vanna : https://github.com/kruyvanna\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '១',\n 2: '២',\n 3: '៣',\n 4: '៤',\n 5: '៥',\n 6: '៦',\n 7: '៧',\n 8: '៨',\n 9: '៩',\n 0: '០',\n },\n numberMap = {\n '១': '1',\n '២': '2',\n '៣': '3',\n '៤': '4',\n '៥': '5',\n '៦': '6',\n '៧': '7',\n '៨': '8',\n '៩': '9',\n '០': '0',\n };\n\n var km = moment.defineLocale('km', {\n months: 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n monthsShort:\n 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n weekdays: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),\n weekdaysShort: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),\n weekdaysMin: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /ព្រឹក|ល្ងាច/,\n isPM: function (input) {\n return input === 'ល្ងាច';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ព្រឹក';\n } else {\n return 'ល្ងាច';\n }\n },\n calendar: {\n sameDay: '[ថ្ងៃនេះ ម៉ោង] LT',\n nextDay: '[ស្អែក ម៉ោង] LT',\n nextWeek: 'dddd [ម៉ោង] LT',\n lastDay: '[ម្សិលមិញ ម៉ោង] LT',\n lastWeek: 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sទៀត',\n past: '%sមុន',\n s: 'ប៉ុន្មានវិនាទី',\n ss: '%d វិនាទី',\n m: 'មួយនាទី',\n mm: '%d នាទី',\n h: 'មួយម៉ោង',\n hh: '%d ម៉ោង',\n d: 'មួយថ្ងៃ',\n dd: '%d ថ្ងៃ',\n M: 'មួយខែ',\n MM: '%d ខែ',\n y: 'មួយឆ្នាំ',\n yy: '%d ឆ្នាំ',\n },\n dayOfMonthOrdinalParse: /ទី\\d{1,2}/,\n ordinal: 'ទី%d',\n preparse: function (string) {\n return string.replace(/[១២៣៤៥៦៧៨៩០]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return km;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kannada [kn]\n//! author : Rajeev Naik : https://github.com/rajeevnaikte\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '೧',\n 2: '೨',\n 3: '೩',\n 4: '೪',\n 5: '೫',\n 6: '೬',\n 7: '೭',\n 8: '೮',\n 9: '೯',\n 0: '೦',\n },\n numberMap = {\n '೧': '1',\n '೨': '2',\n '೩': '3',\n '೪': '4',\n '೫': '5',\n '೬': '6',\n '೭': '7',\n '೮': '8',\n '೯': '9',\n '೦': '0',\n };\n\n var kn = moment.defineLocale('kn', {\n months: 'ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್'.split(\n '_'\n ),\n monthsShort:\n 'ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ'.split(\n '_'\n ),\n weekdaysShort: 'ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ'.split('_'),\n weekdaysMin: 'ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[ಇಂದು] LT',\n nextDay: '[ನಾಳೆ] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ನಿನ್ನೆ] LT',\n lastWeek: '[ಕೊನೆಯ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ನಂತರ',\n past: '%s ಹಿಂದೆ',\n s: 'ಕೆಲವು ಕ್ಷಣಗಳು',\n ss: '%d ಸೆಕೆಂಡುಗಳು',\n m: 'ಒಂದು ನಿಮಿಷ',\n mm: '%d ನಿಮಿಷ',\n h: 'ಒಂದು ಗಂಟೆ',\n hh: '%d ಗಂಟೆ',\n d: 'ಒಂದು ದಿನ',\n dd: '%d ದಿನ',\n M: 'ಒಂದು ತಿಂಗಳು',\n MM: '%d ತಿಂಗಳು',\n y: 'ಒಂದು ವರ್ಷ',\n yy: '%d ವರ್ಷ',\n },\n preparse: function (string) {\n return string.replace(/[೧೨೩೪೫೬೭೮೯೦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ರಾತ್ರಿ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ಬೆಳಿಗ್ಗೆ') {\n return hour;\n } else if (meridiem === 'ಮಧ್ಯಾಹ್ನ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ಸಂಜೆ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ರಾತ್ರಿ';\n } else if (hour < 10) {\n return 'ಬೆಳಿಗ್ಗೆ';\n } else if (hour < 17) {\n return 'ಮಧ್ಯಾಹ್ನ';\n } else if (hour < 20) {\n return 'ಸಂಜೆ';\n } else {\n return 'ರಾತ್ರಿ';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ನೇ)/,\n ordinal: function (number) {\n return number + 'ನೇ';\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return kn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Korean [ko]\n//! author : Kyungwook, Park : https://github.com/kyungw00k\n//! author : Jeeeyul Lee \n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ko = moment.defineLocale('ko', {\n months: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),\n monthsShort: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split(\n '_'\n ),\n weekdays: '일요일_월요일_화요일_수요일_목요일_금요일_토요일'.split('_'),\n weekdaysShort: '일_월_화_수_목_금_토'.split('_'),\n weekdaysMin: '일_월_화_수_목_금_토'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'YYYY.MM.DD.',\n LL: 'YYYY년 MMMM D일',\n LLL: 'YYYY년 MMMM D일 A h:mm',\n LLLL: 'YYYY년 MMMM D일 dddd A h:mm',\n l: 'YYYY.MM.DD.',\n ll: 'YYYY년 MMMM D일',\n lll: 'YYYY년 MMMM D일 A h:mm',\n llll: 'YYYY년 MMMM D일 dddd A h:mm',\n },\n calendar: {\n sameDay: '오늘 LT',\n nextDay: '내일 LT',\n nextWeek: 'dddd LT',\n lastDay: '어제 LT',\n lastWeek: '지난주 dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s 후',\n past: '%s 전',\n s: '몇 초',\n ss: '%d초',\n m: '1분',\n mm: '%d분',\n h: '한 시간',\n hh: '%d시간',\n d: '하루',\n dd: '%d일',\n M: '한 달',\n MM: '%d달',\n y: '일 년',\n yy: '%d년',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(일|월|주)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '일';\n case 'M':\n return number + '월';\n case 'w':\n case 'W':\n return number + '주';\n default:\n return number;\n }\n },\n meridiemParse: /오전|오후/,\n isPM: function (token) {\n return token === '오후';\n },\n meridiem: function (hour, minute, isUpper) {\n return hour < 12 ? '오전' : '오후';\n },\n });\n\n return ko;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kurdish [ku]\n//! author : Shahram Mebashar : https://github.com/ShahramMebashar\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '١',\n 2: '٢',\n 3: '٣',\n 4: '٤',\n 5: '٥',\n 6: '٦',\n 7: '٧',\n 8: '٨',\n 9: '٩',\n 0: '٠',\n },\n numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0',\n },\n months = [\n 'کانونی دووەم',\n 'شوبات',\n 'ئازار',\n 'نیسان',\n 'ئایار',\n 'حوزەیران',\n 'تەمموز',\n 'ئاب',\n 'ئەیلوول',\n 'تشرینی یەكەم',\n 'تشرینی دووەم',\n 'كانونی یەکەم',\n ];\n\n var ku = moment.defineLocale('ku', {\n months: months,\n monthsShort: months,\n weekdays:\n 'یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌'.split(\n '_'\n ),\n weekdaysShort:\n 'یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌'.split('_'),\n weekdaysMin: 'ی_د_س_چ_پ_ه_ش'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /ئێواره‌|به‌یانی/,\n isPM: function (input) {\n return /ئێواره‌/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'به‌یانی';\n } else {\n return 'ئێواره‌';\n }\n },\n calendar: {\n sameDay: '[ئه‌مرۆ كاتژمێر] LT',\n nextDay: '[به‌یانی كاتژمێر] LT',\n nextWeek: 'dddd [كاتژمێر] LT',\n lastDay: '[دوێنێ كاتژمێر] LT',\n lastWeek: 'dddd [كاتژمێر] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'له‌ %s',\n past: '%s',\n s: 'چه‌ند چركه‌یه‌ك',\n ss: 'چركه‌ %d',\n m: 'یه‌ك خوله‌ك',\n mm: '%d خوله‌ك',\n h: 'یه‌ك كاتژمێر',\n hh: '%d كاتژمێر',\n d: 'یه‌ك ڕۆژ',\n dd: '%d ڕۆژ',\n M: 'یه‌ك مانگ',\n MM: '%d مانگ',\n y: 'یه‌ك ساڵ',\n yy: '%d ساڵ',\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return ku;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kyrgyz [ky]\n//! author : Chyngyz Arystan uulu : https://github.com/chyngyz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-чү',\n 1: '-чи',\n 2: '-чи',\n 3: '-чү',\n 4: '-чү',\n 5: '-чи',\n 6: '-чы',\n 7: '-чи',\n 8: '-чи',\n 9: '-чу',\n 10: '-чу',\n 20: '-чы',\n 30: '-чу',\n 40: '-чы',\n 50: '-чү',\n 60: '-чы',\n 70: '-чи',\n 80: '-чи',\n 90: '-чу',\n 100: '-чү',\n };\n\n var ky = moment.defineLocale('ky', {\n months: 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split(\n '_'\n ),\n monthsShort: 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split(\n '_'\n ),\n weekdays: 'Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби'.split(\n '_'\n ),\n weekdaysShort: 'Жек_Дүй_Шей_Шар_Бей_Жум_Ише'.split('_'),\n weekdaysMin: 'Жк_Дй_Шй_Шр_Бй_Жм_Иш'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Бүгүн саат] LT',\n nextDay: '[Эртең саат] LT',\n nextWeek: 'dddd [саат] LT',\n lastDay: '[Кечээ саат] LT',\n lastWeek: '[Өткөн аптанын] dddd [күнү] [саат] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ичинде',\n past: '%s мурун',\n s: 'бирнече секунд',\n ss: '%d секунд',\n m: 'бир мүнөт',\n mm: '%d мүнөт',\n h: 'бир саат',\n hh: '%d саат',\n d: 'бир күн',\n dd: '%d күн',\n M: 'бир ай',\n MM: '%d ай',\n y: 'бир жыл',\n yy: '%d жыл',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(чи|чы|чү|чу)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ky;\n\n})));\n","//! moment.js locale configuration\n//! locale : Luxembourgish [lb]\n//! author : mweimerskirch : https://github.com/mweimerskirch\n//! author : David Raison : https://github.com/kwisatz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eng Minutt', 'enger Minutt'],\n h: ['eng Stonn', 'enger Stonn'],\n d: ['een Dag', 'engem Dag'],\n M: ['ee Mount', 'engem Mount'],\n y: ['ee Joer', 'engem Joer'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n function processFutureTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'a ' + string;\n }\n return 'an ' + string;\n }\n function processPastTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'viru ' + string;\n }\n return 'virun ' + string;\n }\n /**\n * Returns true if the word before the given number loses the '-n' ending.\n * e.g. 'an 10 Deeg' but 'a 5 Deeg'\n *\n * @param number {integer}\n * @returns {boolean}\n */\n function eifelerRegelAppliesToNumber(number) {\n number = parseInt(number, 10);\n if (isNaN(number)) {\n return false;\n }\n if (number < 0) {\n // Negative Number --> always true\n return true;\n } else if (number < 10) {\n // Only 1 digit\n if (4 <= number && number <= 7) {\n return true;\n }\n return false;\n } else if (number < 100) {\n // 2 digits\n var lastDigit = number % 10,\n firstDigit = number / 10;\n if (lastDigit === 0) {\n return eifelerRegelAppliesToNumber(firstDigit);\n }\n return eifelerRegelAppliesToNumber(lastDigit);\n } else if (number < 10000) {\n // 3 or 4 digits --> recursively check first digit\n while (number >= 10) {\n number = number / 10;\n }\n return eifelerRegelAppliesToNumber(number);\n } else {\n // Anything larger than 4 digits: recursively check first n-3 digits\n number = number / 1000;\n return eifelerRegelAppliesToNumber(number);\n }\n }\n\n var lb = moment.defineLocale('lb', {\n months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split(\n '_'\n ),\n weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm [Auer]',\n LTS: 'H:mm:ss [Auer]',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm [Auer]',\n LLLL: 'dddd, D. MMMM YYYY H:mm [Auer]',\n },\n calendar: {\n sameDay: '[Haut um] LT',\n sameElse: 'L',\n nextDay: '[Muer um] LT',\n nextWeek: 'dddd [um] LT',\n lastDay: '[Gëschter um] LT',\n lastWeek: function () {\n // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule\n switch (this.day()) {\n case 2:\n case 4:\n return '[Leschten] dddd [um] LT';\n default:\n return '[Leschte] dddd [um] LT';\n }\n },\n },\n relativeTime: {\n future: processFutureTime,\n past: processPastTime,\n s: 'e puer Sekonnen',\n ss: '%d Sekonnen',\n m: processRelativeTime,\n mm: '%d Minutten',\n h: processRelativeTime,\n hh: '%d Stonnen',\n d: processRelativeTime,\n dd: '%d Deeg',\n M: processRelativeTime,\n MM: '%d Méint',\n y: processRelativeTime,\n yy: '%d Joer',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lb;\n\n})));\n","//! moment.js locale configuration\n//! locale : Lao [lo]\n//! author : Ryan Hart : https://github.com/ryanhart2\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var lo = moment.defineLocale('lo', {\n months: 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split(\n '_'\n ),\n monthsShort:\n 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split(\n '_'\n ),\n weekdays: 'ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysShort: 'ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysMin: 'ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'ວັນdddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ຕອນເຊົ້າ|ຕອນແລງ/,\n isPM: function (input) {\n return input === 'ຕອນແລງ';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ຕອນເຊົ້າ';\n } else {\n return 'ຕອນແລງ';\n }\n },\n calendar: {\n sameDay: '[ມື້ນີ້ເວລາ] LT',\n nextDay: '[ມື້ອື່ນເວລາ] LT',\n nextWeek: '[ວັນ]dddd[ໜ້າເວລາ] LT',\n lastDay: '[ມື້ວານນີ້ເວລາ] LT',\n lastWeek: '[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ອີກ %s',\n past: '%sຜ່ານມາ',\n s: 'ບໍ່ເທົ່າໃດວິນາທີ',\n ss: '%d ວິນາທີ',\n m: '1 ນາທີ',\n mm: '%d ນາທີ',\n h: '1 ຊົ່ວໂມງ',\n hh: '%d ຊົ່ວໂມງ',\n d: '1 ມື້',\n dd: '%d ມື້',\n M: '1 ເດືອນ',\n MM: '%d ເດືອນ',\n y: '1 ປີ',\n yy: '%d ປີ',\n },\n dayOfMonthOrdinalParse: /(ທີ່)\\d{1,2}/,\n ordinal: function (number) {\n return 'ທີ່' + number;\n },\n });\n\n return lo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Lithuanian [lt]\n//! author : Mindaugas Mozūras : https://github.com/mmozuras\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var units = {\n ss: 'sekundė_sekundžių_sekundes',\n m: 'minutė_minutės_minutę',\n mm: 'minutės_minučių_minutes',\n h: 'valanda_valandos_valandą',\n hh: 'valandos_valandų_valandas',\n d: 'diena_dienos_dieną',\n dd: 'dienos_dienų_dienas',\n M: 'mėnuo_mėnesio_mėnesį',\n MM: 'mėnesiai_mėnesių_mėnesius',\n y: 'metai_metų_metus',\n yy: 'metai_metų_metus',\n };\n function translateSeconds(number, withoutSuffix, key, isFuture) {\n if (withoutSuffix) {\n return 'kelios sekundės';\n } else {\n return isFuture ? 'kelių sekundžių' : 'kelias sekundes';\n }\n }\n function translateSingular(number, withoutSuffix, key, isFuture) {\n return withoutSuffix\n ? forms(key)[0]\n : isFuture\n ? forms(key)[1]\n : forms(key)[2];\n }\n function special(number) {\n return number % 10 === 0 || (number > 10 && number < 20);\n }\n function forms(key) {\n return units[key].split('_');\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n if (number === 1) {\n return (\n result + translateSingular(number, withoutSuffix, key[0], isFuture)\n );\n } else if (withoutSuffix) {\n return result + (special(number) ? forms(key)[1] : forms(key)[0]);\n } else {\n if (isFuture) {\n return result + forms(key)[1];\n } else {\n return result + (special(number) ? forms(key)[1] : forms(key)[2]);\n }\n }\n }\n var lt = moment.defineLocale('lt', {\n months: {\n format: 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio'.split(\n '_'\n ),\n standalone:\n 'sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis'.split(\n '_'\n ),\n isFormat: /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?|MMMM?(\\[[^\\[\\]]*\\]|\\s)+D[oD]?/,\n },\n monthsShort: 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'),\n weekdays: {\n format: 'sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį'.split(\n '_'\n ),\n standalone:\n 'sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis'.split(\n '_'\n ),\n isFormat: /dddd HH:mm/,\n },\n weekdaysShort: 'Sek_Pir_Ant_Tre_Ket_Pen_Šeš'.split('_'),\n weekdaysMin: 'S_P_A_T_K_Pn_Š'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY [m.] MMMM D [d.]',\n LLL: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n LLLL: 'YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]',\n l: 'YYYY-MM-DD',\n ll: 'YYYY [m.] MMMM D [d.]',\n lll: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n llll: 'YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]',\n },\n calendar: {\n sameDay: '[Šiandien] LT',\n nextDay: '[Rytoj] LT',\n nextWeek: 'dddd LT',\n lastDay: '[Vakar] LT',\n lastWeek: '[Praėjusį] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'po %s',\n past: 'prieš %s',\n s: translateSeconds,\n ss: translate,\n m: translateSingular,\n mm: translate,\n h: translateSingular,\n hh: translate,\n d: translateSingular,\n dd: translate,\n M: translateSingular,\n MM: translate,\n y: translateSingular,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-oji/,\n ordinal: function (number) {\n return number + '-oji';\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Latvian [lv]\n//! author : Kristaps Karlsons : https://github.com/skakri\n//! author : Jānis Elmeris : https://github.com/JanisE\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var units = {\n ss: 'sekundes_sekundēm_sekunde_sekundes'.split('_'),\n m: 'minūtes_minūtēm_minūte_minūtes'.split('_'),\n mm: 'minūtes_minūtēm_minūte_minūtes'.split('_'),\n h: 'stundas_stundām_stunda_stundas'.split('_'),\n hh: 'stundas_stundām_stunda_stundas'.split('_'),\n d: 'dienas_dienām_diena_dienas'.split('_'),\n dd: 'dienas_dienām_diena_dienas'.split('_'),\n M: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),\n MM: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),\n y: 'gada_gadiem_gads_gadi'.split('_'),\n yy: 'gada_gadiem_gads_gadi'.split('_'),\n };\n /**\n * @param withoutSuffix boolean true = a length of time; false = before/after a period of time.\n */\n function format(forms, number, withoutSuffix) {\n if (withoutSuffix) {\n // E.g. \"21 minūte\", \"3 minūtes\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[2] : forms[3];\n } else {\n // E.g. \"21 minūtes\" as in \"pēc 21 minūtes\".\n // E.g. \"3 minūtēm\" as in \"pēc 3 minūtēm\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[0] : forms[1];\n }\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n return number + ' ' + format(units[key], number, withoutSuffix);\n }\n function relativeTimeWithSingular(number, withoutSuffix, key) {\n return format(units[key], number, withoutSuffix);\n }\n function relativeSeconds(number, withoutSuffix) {\n return withoutSuffix ? 'dažas sekundes' : 'dažām sekundēm';\n }\n\n var lv = moment.defineLocale('lv', {\n months: 'janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec'.split('_'),\n weekdays:\n 'svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena'.split(\n '_'\n ),\n weekdaysShort: 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysMin: 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY.',\n LL: 'YYYY. [gada] D. MMMM',\n LLL: 'YYYY. [gada] D. MMMM, HH:mm',\n LLLL: 'YYYY. [gada] D. MMMM, dddd, HH:mm',\n },\n calendar: {\n sameDay: '[Šodien pulksten] LT',\n nextDay: '[Rīt pulksten] LT',\n nextWeek: 'dddd [pulksten] LT',\n lastDay: '[Vakar pulksten] LT',\n lastWeek: '[Pagājušā] dddd [pulksten] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'pēc %s',\n past: 'pirms %s',\n s: relativeSeconds,\n ss: relativeTimeWithPlural,\n m: relativeTimeWithSingular,\n mm: relativeTimeWithPlural,\n h: relativeTimeWithSingular,\n hh: relativeTimeWithPlural,\n d: relativeTimeWithSingular,\n dd: relativeTimeWithPlural,\n M: relativeTimeWithSingular,\n MM: relativeTimeWithPlural,\n y: relativeTimeWithSingular,\n yy: relativeTimeWithPlural,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Montenegrin [me]\n//! author : Miodrag Nikač : https://github.com/miodragnikac\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['sekund', 'sekunda', 'sekundi'],\n m: ['jedan minut', 'jednog minuta'],\n mm: ['minut', 'minuta', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n dd: ['dan', 'dana', 'dana'],\n MM: ['mjesec', 'mjeseca', 'mjeseci'],\n yy: ['godina', 'godine', 'godina'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1\n ? wordKey[0]\n : number >= 2 && number <= 4\n ? wordKey[1]\n : wordKey[2];\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return (\n number +\n ' ' +\n translator.correctGrammaticalCase(number, wordKey)\n );\n }\n },\n };\n\n var me = moment.defineLocale('me', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sjutra u] LT',\n\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juče u] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[prošle] [nedjelje] [u] LT',\n '[prošlog] [ponedjeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srijede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'nekoliko sekundi',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: 'dan',\n dd: translator.translate,\n M: 'mjesec',\n MM: translator.translate,\n y: 'godinu',\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return me;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maori [mi]\n//! author : John Corrigan : https://github.com/johnideal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mi = moment.defineLocale('mi', {\n months: 'Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea'.split(\n '_'\n ),\n monthsShort:\n 'Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki'.split(\n '_'\n ),\n monthsRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,2}/i,\n weekdays: 'Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei'.split('_'),\n weekdaysShort: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n weekdaysMin: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [i] HH:mm',\n LLLL: 'dddd, D MMMM YYYY [i] HH:mm',\n },\n calendar: {\n sameDay: '[i teie mahana, i] LT',\n nextDay: '[apopo i] LT',\n nextWeek: 'dddd [i] LT',\n lastDay: '[inanahi i] LT',\n lastWeek: 'dddd [whakamutunga i] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'i roto i %s',\n past: '%s i mua',\n s: 'te hēkona ruarua',\n ss: '%d hēkona',\n m: 'he meneti',\n mm: '%d meneti',\n h: 'te haora',\n hh: '%d haora',\n d: 'he ra',\n dd: '%d ra',\n M: 'he marama',\n MM: '%d marama',\n y: 'he tau',\n yy: '%d tau',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return mi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Macedonian [mk]\n//! author : Borislav Mickov : https://github.com/B0k0\n//! author : Sashko Todorov : https://github.com/bkyceh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mk = moment.defineLocale('mk', {\n months: 'јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември'.split(\n '_'\n ),\n monthsShort: 'јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек'.split('_'),\n weekdays: 'недела_понеделник_вторник_среда_четврток_петок_сабота'.split(\n '_'\n ),\n weekdaysShort: 'нед_пон_вто_сре_чет_пет_саб'.split('_'),\n weekdaysMin: 'нe_пo_вт_ср_че_пе_сa'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Денес во] LT',\n nextDay: '[Утре во] LT',\n nextWeek: '[Во] dddd [во] LT',\n lastDay: '[Вчера во] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[Изминатата] dddd [во] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[Изминатиот] dddd [во] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: 'пред %s',\n s: 'неколку секунди',\n ss: '%d секунди',\n m: 'една минута',\n mm: '%d минути',\n h: 'еден час',\n hh: '%d часа',\n d: 'еден ден',\n dd: '%d дена',\n M: 'еден месец',\n MM: '%d месеци',\n y: 'една година',\n yy: '%d години',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal: function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return mk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malayalam [ml]\n//! author : Floyd Pink : https://github.com/floydpink\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ml = moment.defineLocale('ml', {\n months: 'ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ'.split(\n '_'\n ),\n monthsShort:\n 'ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച'.split(\n '_'\n ),\n weekdaysShort: 'ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി'.split('_'),\n weekdaysMin: 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm -നു',\n LTS: 'A h:mm:ss -നു',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm -നു',\n LLLL: 'dddd, D MMMM YYYY, A h:mm -നു',\n },\n calendar: {\n sameDay: '[ഇന്ന്] LT',\n nextDay: '[നാളെ] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ഇന്നലെ] LT',\n lastWeek: '[കഴിഞ്ഞ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s കഴിഞ്ഞ്',\n past: '%s മുൻപ്',\n s: 'അൽപ നിമിഷങ്ങൾ',\n ss: '%d സെക്കൻഡ്',\n m: 'ഒരു മിനിറ്റ്',\n mm: '%d മിനിറ്റ്',\n h: 'ഒരു മണിക്കൂർ',\n hh: '%d മണിക്കൂർ',\n d: 'ഒരു ദിവസം',\n dd: '%d ദിവസം',\n M: 'ഒരു മാസം',\n MM: '%d മാസം',\n y: 'ഒരു വർഷം',\n yy: '%d വർഷം',\n },\n meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'രാത്രി' && hour >= 4) ||\n meridiem === 'ഉച്ച കഴിഞ്ഞ്' ||\n meridiem === 'വൈകുന്നേരം'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'രാത്രി';\n } else if (hour < 12) {\n return 'രാവിലെ';\n } else if (hour < 17) {\n return 'ഉച്ച കഴിഞ്ഞ്';\n } else if (hour < 20) {\n return 'വൈകുന്നേരം';\n } else {\n return 'രാത്രി';\n }\n },\n });\n\n return ml;\n\n})));\n","//! moment.js locale configuration\n//! locale : Mongolian [mn]\n//! author : Javkhlantugs Nyamdorj : https://github.com/javkhaanj7\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key, isFuture) {\n switch (key) {\n case 's':\n return withoutSuffix ? 'хэдхэн секунд' : 'хэдхэн секундын';\n case 'ss':\n return number + (withoutSuffix ? ' секунд' : ' секундын');\n case 'm':\n case 'mm':\n return number + (withoutSuffix ? ' минут' : ' минутын');\n case 'h':\n case 'hh':\n return number + (withoutSuffix ? ' цаг' : ' цагийн');\n case 'd':\n case 'dd':\n return number + (withoutSuffix ? ' өдөр' : ' өдрийн');\n case 'M':\n case 'MM':\n return number + (withoutSuffix ? ' сар' : ' сарын');\n case 'y':\n case 'yy':\n return number + (withoutSuffix ? ' жил' : ' жилийн');\n default:\n return number;\n }\n }\n\n var mn = moment.defineLocale('mn', {\n months: 'Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар'.split(\n '_'\n ),\n monthsShort:\n '1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба'.split('_'),\n weekdaysShort: 'Ням_Дав_Мяг_Лха_Пүр_Баа_Бям'.split('_'),\n weekdaysMin: 'Ня_Да_Мя_Лх_Пү_Ба_Бя'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY оны MMMMын D',\n LLL: 'YYYY оны MMMMын D HH:mm',\n LLLL: 'dddd, YYYY оны MMMMын D HH:mm',\n },\n meridiemParse: /ҮӨ|ҮХ/i,\n isPM: function (input) {\n return input === 'ҮХ';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ҮӨ';\n } else {\n return 'ҮХ';\n }\n },\n calendar: {\n sameDay: '[Өнөөдөр] LT',\n nextDay: '[Маргааш] LT',\n nextWeek: '[Ирэх] dddd LT',\n lastDay: '[Өчигдөр] LT',\n lastWeek: '[Өнгөрсөн] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s дараа',\n past: '%s өмнө',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2} өдөр/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + ' өдөр';\n default:\n return number;\n }\n },\n });\n\n return mn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Marathi [mr]\n//! author : Harshad Kale : https://github.com/kalehv\n//! author : Vivek Athalye : https://github.com/vnathalye\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: '७',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n };\n\n function relativeTimeMr(number, withoutSuffix, string, isFuture) {\n var output = '';\n if (withoutSuffix) {\n switch (string) {\n case 's':\n output = 'काही सेकंद';\n break;\n case 'ss':\n output = '%d सेकंद';\n break;\n case 'm':\n output = 'एक मिनिट';\n break;\n case 'mm':\n output = '%d मिनिटे';\n break;\n case 'h':\n output = 'एक तास';\n break;\n case 'hh':\n output = '%d तास';\n break;\n case 'd':\n output = 'एक दिवस';\n break;\n case 'dd':\n output = '%d दिवस';\n break;\n case 'M':\n output = 'एक महिना';\n break;\n case 'MM':\n output = '%d महिने';\n break;\n case 'y':\n output = 'एक वर्ष';\n break;\n case 'yy':\n output = '%d वर्षे';\n break;\n }\n } else {\n switch (string) {\n case 's':\n output = 'काही सेकंदां';\n break;\n case 'ss':\n output = '%d सेकंदां';\n break;\n case 'm':\n output = 'एका मिनिटा';\n break;\n case 'mm':\n output = '%d मिनिटां';\n break;\n case 'h':\n output = 'एका तासा';\n break;\n case 'hh':\n output = '%d तासां';\n break;\n case 'd':\n output = 'एका दिवसा';\n break;\n case 'dd':\n output = '%d दिवसां';\n break;\n case 'M':\n output = 'एका महिन्या';\n break;\n case 'MM':\n output = '%d महिन्यां';\n break;\n case 'y':\n output = 'एका वर्षा';\n break;\n case 'yy':\n output = '%d वर्षां';\n break;\n }\n }\n return output.replace(/%d/i, number);\n }\n\n var mr = moment.defineLocale('mr', {\n months: 'जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split(\n '_'\n ),\n monthsShort:\n 'जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),\n weekdaysShort: 'रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि'.split('_'),\n weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'),\n longDateFormat: {\n LT: 'A h:mm वाजता',\n LTS: 'A h:mm:ss वाजता',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm वाजता',\n LLLL: 'dddd, D MMMM YYYY, A h:mm वाजता',\n },\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[उद्या] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[काल] LT',\n lastWeek: '[मागील] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sमध्ये',\n past: '%sपूर्वी',\n s: relativeTimeMr,\n ss: relativeTimeMr,\n m: relativeTimeMr,\n mm: relativeTimeMr,\n h: relativeTimeMr,\n hh: relativeTimeMr,\n d: relativeTimeMr,\n dd: relativeTimeMr,\n M: relativeTimeMr,\n MM: relativeTimeMr,\n y: relativeTimeMr,\n yy: relativeTimeMr,\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /पहाटे|सकाळी|दुपारी|सायंकाळी|रात्री/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'पहाटे' || meridiem === 'सकाळी') {\n return hour;\n } else if (\n meridiem === 'दुपारी' ||\n meridiem === 'सायंकाळी' ||\n meridiem === 'रात्री'\n ) {\n return hour >= 12 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour >= 0 && hour < 6) {\n return 'पहाटे';\n } else if (hour < 12) {\n return 'सकाळी';\n } else if (hour < 17) {\n return 'दुपारी';\n } else if (hour < 20) {\n return 'सायंकाळी';\n } else {\n return 'रात्री';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return mr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malay [ms-my]\n//! note : DEPRECATED, the correct one is [ms]\n//! author : Weldan Jamili : https://github.com/weldan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var msMy = moment.defineLocale('ms-my', {\n months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Esok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kelmarin pukul] LT',\n lastWeek: 'dddd [lepas pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lepas',\n s: 'beberapa saat',\n ss: '%d saat',\n m: 'seminit',\n mm: '%d minit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return msMy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malay [ms]\n//! author : Weldan Jamili : https://github.com/weldan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ms = moment.defineLocale('ms', {\n months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Esok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kelmarin pukul] LT',\n lastWeek: 'dddd [lepas pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lepas',\n s: 'beberapa saat',\n ss: '%d saat',\n m: 'seminit',\n mm: '%d minit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ms;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maltese (Malta) [mt]\n//! author : Alessandro Maruccia : https://github.com/alesma\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mt = moment.defineLocale('mt', {\n months: 'Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru'.split(\n '_'\n ),\n monthsShort: 'Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ'.split('_'),\n weekdays:\n 'Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt'.split(\n '_'\n ),\n weekdaysShort: 'Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib'.split('_'),\n weekdaysMin: 'Ħa_Tn_Tl_Er_Ħa_Ġi_Si'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Illum fil-]LT',\n nextDay: '[Għada fil-]LT',\n nextWeek: 'dddd [fil-]LT',\n lastDay: '[Il-bieraħ fil-]LT',\n lastWeek: 'dddd [li għadda] [fil-]LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'f’ %s',\n past: '%s ilu',\n s: 'ftit sekondi',\n ss: '%d sekondi',\n m: 'minuta',\n mm: '%d minuti',\n h: 'siegħa',\n hh: '%d siegħat',\n d: 'ġurnata',\n dd: '%d ġranet',\n M: 'xahar',\n MM: '%d xhur',\n y: 'sena',\n yy: '%d sni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return mt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Burmese [my]\n//! author : Squar team, mysquar.com\n//! author : David Rossellat : https://github.com/gholadr\n//! author : Tin Aung Lin : https://github.com/thanyawzinmin\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '၁',\n 2: '၂',\n 3: '၃',\n 4: '၄',\n 5: '၅',\n 6: '၆',\n 7: '၇',\n 8: '၈',\n 9: '၉',\n 0: '၀',\n },\n numberMap = {\n '၁': '1',\n '၂': '2',\n '၃': '3',\n '၄': '4',\n '၅': '5',\n '၆': '6',\n '၇': '7',\n '၈': '8',\n '၉': '9',\n '၀': '0',\n };\n\n var my = moment.defineLocale('my', {\n months: 'ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ'.split(\n '_'\n ),\n monthsShort: 'ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ'.split('_'),\n weekdays: 'တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ'.split(\n '_'\n ),\n weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[ယနေ.] LT [မှာ]',\n nextDay: '[မနက်ဖြန်] LT [မှာ]',\n nextWeek: 'dddd LT [မှာ]',\n lastDay: '[မနေ.က] LT [မှာ]',\n lastWeek: '[ပြီးခဲ့သော] dddd LT [မှာ]',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'လာမည့် %s မှာ',\n past: 'လွန်ခဲ့သော %s က',\n s: 'စက္ကန်.အနည်းငယ်',\n ss: '%d စက္ကန့်',\n m: 'တစ်မိနစ်',\n mm: '%d မိနစ်',\n h: 'တစ်နာရီ',\n hh: '%d နာရီ',\n d: 'တစ်ရက်',\n dd: '%d ရက်',\n M: 'တစ်လ',\n MM: '%d လ',\n y: 'တစ်နှစ်',\n yy: '%d နှစ်',\n },\n preparse: function (string) {\n return string.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return my;\n\n})));\n","//! moment.js locale configuration\n//! locale : Norwegian Bokmål [nb]\n//! authors : Espen Hovlandsdal : https://github.com/rexxars\n//! Sigurd Gartmann : https://github.com/sigurdga\n//! Stephen Ramthun : https://github.com/stephenramthun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var nb = moment.defineLocale('nb', {\n months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),\n monthsParseExact: true,\n weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort: 'sø._ma._ti._on._to._fr._lø.'.split('_'),\n weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] HH:mm',\n LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[i går kl.] LT',\n lastWeek: '[forrige] dddd [kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s siden',\n s: 'noen sekunder',\n ss: '%d sekunder',\n m: 'ett minutt',\n mm: '%d minutter',\n h: 'en time',\n hh: '%d timer',\n d: 'en dag',\n dd: '%d dager',\n w: 'en uke',\n ww: '%d uker',\n M: 'en måned',\n MM: '%d måneder',\n y: 'ett år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nb;\n\n})));\n","//! moment.js locale configuration\n//! locale : Nepalese [ne]\n//! author : suvash : https://github.com/suvash\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: '७',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n '७': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n };\n\n var ne = moment.defineLocale('ne', {\n months: 'जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर'.split(\n '_'\n ),\n monthsShort:\n 'जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार'.split(\n '_'\n ),\n weekdaysShort: 'आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.'.split('_'),\n weekdaysMin: 'आ._सो._मं._बु._बि._शु._श.'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'Aको h:mm बजे',\n LTS: 'Aको h:mm:ss बजे',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, Aको h:mm बजे',\n LLLL: 'dddd, D MMMM YYYY, Aको h:mm बजे',\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६७८९०]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /राति|बिहान|दिउँसो|साँझ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'राति') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'बिहान') {\n return hour;\n } else if (meridiem === 'दिउँसो') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'साँझ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 3) {\n return 'राति';\n } else if (hour < 12) {\n return 'बिहान';\n } else if (hour < 16) {\n return 'दिउँसो';\n } else if (hour < 20) {\n return 'साँझ';\n } else {\n return 'राति';\n }\n },\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[भोलि] LT',\n nextWeek: '[आउँदो] dddd[,] LT',\n lastDay: '[हिजो] LT',\n lastWeek: '[गएको] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sमा',\n past: '%s अगाडि',\n s: 'केही क्षण',\n ss: '%d सेकेण्ड',\n m: 'एक मिनेट',\n mm: '%d मिनेट',\n h: 'एक घण्टा',\n hh: '%d घण्टा',\n d: 'एक दिन',\n dd: '%d दिन',\n M: 'एक महिना',\n MM: '%d महिना',\n y: 'एक बर्ष',\n yy: '%d बर्ष',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return ne;\n\n})));\n","//! moment.js locale configuration\n//! locale : Dutch (Belgium) [nl-be]\n//! author : Joris Röling : https://github.com/jorisroling\n//! author : Jacob Middag : https://github.com/middagj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n monthsParse = [\n /^jan/i,\n /^feb/i,\n /^maart|mrt.?$/i,\n /^apr/i,\n /^mei$/i,\n /^jun[i.]?$/i,\n /^jul[i.]?$/i,\n /^aug/i,\n /^sep/i,\n /^okt/i,\n /^nov/i,\n /^dec/i,\n ],\n monthsRegex =\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\\.?|feb\\.?|mrt\\.?|apr\\.?|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i;\n\n var nlBe = moment.defineLocale('nl-be', {\n months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex:\n /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n weekdays:\n 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'over %s',\n past: '%s geleden',\n s: 'een paar seconden',\n ss: '%d seconden',\n m: 'één minuut',\n mm: '%d minuten',\n h: 'één uur',\n hh: '%d uur',\n d: 'één dag',\n dd: '%d dagen',\n M: 'één maand',\n MM: '%d maanden',\n y: 'één jaar',\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nlBe;\n\n})));\n","//! moment.js locale configuration\n//! locale : Dutch [nl]\n//! author : Joris Röling : https://github.com/jorisroling\n//! author : Jacob Middag : https://github.com/middagj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n monthsParse = [\n /^jan/i,\n /^feb/i,\n /^maart|mrt.?$/i,\n /^apr/i,\n /^mei$/i,\n /^jun[i.]?$/i,\n /^jul[i.]?$/i,\n /^aug/i,\n /^sep/i,\n /^okt/i,\n /^nov/i,\n /^dec/i,\n ],\n monthsRegex =\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\\.?|feb\\.?|mrt\\.?|apr\\.?|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i;\n\n var nl = moment.defineLocale('nl', {\n months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex:\n /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n weekdays:\n 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'over %s',\n past: '%s geleden',\n s: 'een paar seconden',\n ss: '%d seconden',\n m: 'één minuut',\n mm: '%d minuten',\n h: 'één uur',\n hh: '%d uur',\n d: 'één dag',\n dd: '%d dagen',\n w: 'één week',\n ww: '%d weken',\n M: 'één maand',\n MM: '%d maanden',\n y: 'één jaar',\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Nynorsk [nn]\n//! authors : https://github.com/mechuwind\n//! Stephen Ramthun : https://github.com/stephenramthun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var nn = moment.defineLocale('nn', {\n months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),\n monthsParseExact: true,\n weekdays: 'sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'),\n weekdaysShort: 'su._må._ty._on._to._fr._lau.'.split('_'),\n weekdaysMin: 'su_må_ty_on_to_fr_la'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] H:mm',\n LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[I dag klokka] LT',\n nextDay: '[I morgon klokka] LT',\n nextWeek: 'dddd [klokka] LT',\n lastDay: '[I går klokka] LT',\n lastWeek: '[Føregåande] dddd [klokka] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s sidan',\n s: 'nokre sekund',\n ss: '%d sekund',\n m: 'eit minutt',\n mm: '%d minutt',\n h: 'ein time',\n hh: '%d timar',\n d: 'ein dag',\n dd: '%d dagar',\n w: 'ei veke',\n ww: '%d veker',\n M: 'ein månad',\n MM: '%d månader',\n y: 'eit år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Occitan, lengadocian dialecte [oc-lnc]\n//! author : Quentin PAGÈS : https://github.com/Quenty31\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ocLnc = moment.defineLocale('oc-lnc', {\n months: {\n standalone:\n 'genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre'.split(\n '_'\n ),\n format: \"de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre\".split(\n '_'\n ),\n isFormat: /D[oD]?(\\s)+MMMM/,\n },\n monthsShort:\n 'gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte'.split(\n '_'\n ),\n weekdaysShort: 'dg._dl._dm._dc._dj._dv._ds.'.split('_'),\n weekdaysMin: 'dg_dl_dm_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [de] YYYY',\n ll: 'D MMM YYYY',\n LLL: 'D MMMM [de] YYYY [a] H:mm',\n lll: 'D MMM YYYY, H:mm',\n LLLL: 'dddd D MMMM [de] YYYY [a] H:mm',\n llll: 'ddd D MMM YYYY, H:mm',\n },\n calendar: {\n sameDay: '[uèi a] LT',\n nextDay: '[deman a] LT',\n nextWeek: 'dddd [a] LT',\n lastDay: '[ièr a] LT',\n lastWeek: 'dddd [passat a] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: \"d'aquí %s\",\n past: 'fa %s',\n s: 'unas segondas',\n ss: '%d segondas',\n m: 'una minuta',\n mm: '%d minutas',\n h: 'una ora',\n hh: '%d oras',\n d: 'un jorn',\n dd: '%d jorns',\n M: 'un mes',\n MM: '%d meses',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal: function (number, period) {\n var output =\n number === 1\n ? 'r'\n : number === 2\n ? 'n'\n : number === 3\n ? 'r'\n : number === 4\n ? 't'\n : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4,\n },\n });\n\n return ocLnc;\n\n})));\n","//! moment.js locale configuration\n//! locale : Punjabi (India) [pa-in]\n//! author : Harpreet Singh : https://github.com/harpreetkhalsagtbit\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '੧',\n 2: '੨',\n 3: '੩',\n 4: '੪',\n 5: '੫',\n 6: '੬',\n 7: '੭',\n 8: '੮',\n 9: '੯',\n 0: '੦',\n },\n numberMap = {\n '੧': '1',\n '੨': '2',\n '੩': '3',\n '੪': '4',\n '੫': '5',\n '੬': '6',\n '੭': '7',\n '੮': '8',\n '੯': '9',\n '੦': '0',\n };\n\n var paIn = moment.defineLocale('pa-in', {\n // There are months name as per Nanakshahi Calendar but they are not used as rigidly in modern Punjabi.\n months: 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(\n '_'\n ),\n monthsShort:\n 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(\n '_'\n ),\n weekdays: 'ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ'.split(\n '_'\n ),\n weekdaysShort: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n weekdaysMin: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm ਵਜੇ',\n LTS: 'A h:mm:ss ਵਜੇ',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm ਵਜੇ',\n LLLL: 'dddd, D MMMM YYYY, A h:mm ਵਜੇ',\n },\n calendar: {\n sameDay: '[ਅਜ] LT',\n nextDay: '[ਕਲ] LT',\n nextWeek: '[ਅਗਲਾ] dddd, LT',\n lastDay: '[ਕਲ] LT',\n lastWeek: '[ਪਿਛਲੇ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ਵਿੱਚ',\n past: '%s ਪਿਛਲੇ',\n s: 'ਕੁਝ ਸਕਿੰਟ',\n ss: '%d ਸਕਿੰਟ',\n m: 'ਇਕ ਮਿੰਟ',\n mm: '%d ਮਿੰਟ',\n h: 'ਇੱਕ ਘੰਟਾ',\n hh: '%d ਘੰਟੇ',\n d: 'ਇੱਕ ਦਿਨ',\n dd: '%d ਦਿਨ',\n M: 'ਇੱਕ ਮਹੀਨਾ',\n MM: '%d ਮਹੀਨੇ',\n y: 'ਇੱਕ ਸਾਲ',\n yy: '%d ਸਾਲ',\n },\n preparse: function (string) {\n return string.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Punjabi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi.\n meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ਰਾਤ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ਸਵੇਰ') {\n return hour;\n } else if (meridiem === 'ਦੁਪਹਿਰ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ਸ਼ਾਮ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ਰਾਤ';\n } else if (hour < 10) {\n return 'ਸਵੇਰ';\n } else if (hour < 17) {\n return 'ਦੁਪਹਿਰ';\n } else if (hour < 20) {\n return 'ਸ਼ਾਮ';\n } else {\n return 'ਰਾਤ';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return paIn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Polish [pl]\n//! author : Rafal Hirsz : https://github.com/evoL\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsNominative =\n 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split(\n '_'\n ),\n monthsSubjective =\n 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split(\n '_'\n ),\n monthsParse = [\n /^sty/i,\n /^lut/i,\n /^mar/i,\n /^kwi/i,\n /^maj/i,\n /^cze/i,\n /^lip/i,\n /^sie/i,\n /^wrz/i,\n /^paź/i,\n /^lis/i,\n /^gru/i,\n ];\n function plural(n) {\n return n % 10 < 5 && n % 10 > 1 && ~~(n / 10) % 10 !== 1;\n }\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n return result + (plural(number) ? 'sekundy' : 'sekund');\n case 'm':\n return withoutSuffix ? 'minuta' : 'minutę';\n case 'mm':\n return result + (plural(number) ? 'minuty' : 'minut');\n case 'h':\n return withoutSuffix ? 'godzina' : 'godzinę';\n case 'hh':\n return result + (plural(number) ? 'godziny' : 'godzin');\n case 'ww':\n return result + (plural(number) ? 'tygodnie' : 'tygodni');\n case 'MM':\n return result + (plural(number) ? 'miesiące' : 'miesięcy');\n case 'yy':\n return result + (plural(number) ? 'lata' : 'lat');\n }\n }\n\n var pl = moment.defineLocale('pl', {\n months: function (momentToFormat, format) {\n if (!momentToFormat) {\n return monthsNominative;\n } else if (/D MMMM/.test(format)) {\n return monthsSubjective[momentToFormat.month()];\n } else {\n return monthsNominative[momentToFormat.month()];\n }\n },\n monthsShort: 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'),\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays:\n 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'),\n weekdaysShort: 'ndz_pon_wt_śr_czw_pt_sob'.split('_'),\n weekdaysMin: 'Nd_Pn_Wt_Śr_Cz_Pt_So'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Dziś o] LT',\n nextDay: '[Jutro o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W niedzielę o] LT';\n\n case 2:\n return '[We wtorek o] LT';\n\n case 3:\n return '[W środę o] LT';\n\n case 6:\n return '[W sobotę o] LT';\n\n default:\n return '[W] dddd [o] LT';\n }\n },\n lastDay: '[Wczoraj o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W zeszłą niedzielę o] LT';\n case 3:\n return '[W zeszłą środę o] LT';\n case 6:\n return '[W zeszłą sobotę o] LT';\n default:\n return '[W zeszły] dddd [o] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: '%s temu',\n s: 'kilka sekund',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: '1 dzień',\n dd: '%d dni',\n w: 'tydzień',\n ww: translate,\n M: 'miesiąc',\n MM: translate,\n y: 'rok',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return pl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Portuguese (Brazil) [pt-br]\n//! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ptBr = moment.defineLocale('pt-br', {\n months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(\n '_'\n ),\n monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n weekdays:\n 'domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado'.split(\n '_'\n ),\n weekdaysShort: 'dom_seg_ter_qua_qui_sex_sáb'.split('_'),\n weekdaysMin: 'do_2ª_3ª_4ª_5ª_6ª_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY [às] HH:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY [às] HH:mm',\n },\n calendar: {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return this.day() === 0 || this.day() === 6\n ? '[Último] dddd [às] LT' // Saturday + Sunday\n : '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'em %s',\n past: 'há %s',\n s: 'poucos segundos',\n ss: '%d segundos',\n m: 'um minuto',\n mm: '%d minutos',\n h: 'uma hora',\n hh: '%d horas',\n d: 'um dia',\n dd: '%d dias',\n M: 'um mês',\n MM: '%d meses',\n y: 'um ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n invalidDate: 'Data inválida',\n });\n\n return ptBr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Portuguese [pt]\n//! author : Jefferson : https://github.com/jalex79\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var pt = moment.defineLocale('pt', {\n months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(\n '_'\n ),\n monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n weekdays:\n 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split(\n '_'\n ),\n weekdaysShort: 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),\n weekdaysMin: 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY HH:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return this.day() === 0 || this.day() === 6\n ? '[Último] dddd [às] LT' // Saturday + Sunday\n : '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'em %s',\n past: 'há %s',\n s: 'segundos',\n ss: '%d segundos',\n m: 'um minuto',\n mm: '%d minutos',\n h: 'uma hora',\n hh: '%d horas',\n d: 'um dia',\n dd: '%d dias',\n w: 'uma semana',\n ww: '%d semanas',\n M: 'um mês',\n MM: '%d meses',\n y: 'um ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return pt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Romanian [ro]\n//! author : Vlad Gurdiga : https://github.com/gurdiga\n//! author : Valentin Agachi : https://github.com/avaly\n//! author : Emanuel Cepoi : https://github.com/cepem\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: 'secunde',\n mm: 'minute',\n hh: 'ore',\n dd: 'zile',\n ww: 'săptămâni',\n MM: 'luni',\n yy: 'ani',\n },\n separator = ' ';\n if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) {\n separator = ' de ';\n }\n return number + separator + format[key];\n }\n\n var ro = moment.defineLocale('ro', {\n months: 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split(\n '_'\n ),\n monthsShort:\n 'ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'duminică_luni_marți_miercuri_joi_vineri_sâmbătă'.split('_'),\n weekdaysShort: 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'),\n weekdaysMin: 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[azi la] LT',\n nextDay: '[mâine la] LT',\n nextWeek: 'dddd [la] LT',\n lastDay: '[ieri la] LT',\n lastWeek: '[fosta] dddd [la] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'peste %s',\n past: '%s în urmă',\n s: 'câteva secunde',\n ss: relativeTimeWithPlural,\n m: 'un minut',\n mm: relativeTimeWithPlural,\n h: 'o oră',\n hh: relativeTimeWithPlural,\n d: 'o zi',\n dd: relativeTimeWithPlural,\n w: 'o săptămână',\n ww: relativeTimeWithPlural,\n M: 'o lună',\n MM: relativeTimeWithPlural,\n y: 'un an',\n yy: relativeTimeWithPlural,\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ro;\n\n})));\n","//! moment.js locale configuration\n//! locale : Russian [ru]\n//! author : Viktorminator : https://github.com/Viktorminator\n//! author : Menelion Elensúle : https://github.com/Oire\n//! author : Коренберг Марк : https://github.com/socketpair\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n mm: withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут',\n hh: 'час_часа_часов',\n dd: 'день_дня_дней',\n ww: 'неделя_недели_недель',\n MM: 'месяц_месяца_месяцев',\n yy: 'год_года_лет',\n };\n if (key === 'm') {\n return withoutSuffix ? 'минута' : 'минуту';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n var monthsParse = [\n /^янв/i,\n /^фев/i,\n /^мар/i,\n /^апр/i,\n /^ма[йя]/i,\n /^июн/i,\n /^июл/i,\n /^авг/i,\n /^сен/i,\n /^окт/i,\n /^ноя/i,\n /^дек/i,\n ];\n\n // http://new.gramota.ru/spravka/rules/139-prop : § 103\n // Сокращения месяцев: http://new.gramota.ru/spravka/buro/search-answer?s=242637\n // CLDR data: http://www.unicode.org/cldr/charts/28/summary/ru.html#1753\n var ru = moment.defineLocale('ru', {\n months: {\n format: 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split(\n '_'\n ),\n standalone:\n 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split(\n '_'\n ),\n },\n monthsShort: {\n // по CLDR именно \"июл.\" и \"июн.\", но какой смысл менять букву на точку?\n format: 'янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.'.split(\n '_'\n ),\n standalone:\n 'янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.'.split(\n '_'\n ),\n },\n weekdays: {\n standalone:\n 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split(\n '_'\n ),\n format: 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split(\n '_'\n ),\n isFormat: /\\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?] ?dddd/,\n },\n weekdaysShort: 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin: 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n // полные названия с падежами, по три буквы, для некоторых, по 4 буквы, сокращения с точкой и без точки\n monthsRegex:\n /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // копия предыдущего\n monthsShortRegex:\n /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // полные названия с падежами\n monthsStrictRegex:\n /^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,\n\n // Выражение, которое соответствует только сокращённым формам\n monthsShortStrictRegex:\n /^(янв\\.|февр?\\.|мар[т.]|апр\\.|ма[яй]|июн[ья.]|июл[ья.]|авг\\.|сент?\\.|окт\\.|нояб?\\.|дек\\.)/i,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY г.',\n LLL: 'D MMMM YYYY г., H:mm',\n LLLL: 'dddd, D MMMM YYYY г., H:mm',\n },\n calendar: {\n sameDay: '[Сегодня, в] LT',\n nextDay: '[Завтра, в] LT',\n lastDay: '[Вчера, в] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В следующее] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В следующий] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В следующую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n lastWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В прошлое] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В прошлый] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В прошлую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'через %s',\n past: '%s назад',\n s: 'несколько секунд',\n ss: relativeTimeWithPlural,\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: 'час',\n hh: relativeTimeWithPlural,\n d: 'день',\n dd: relativeTimeWithPlural,\n w: 'неделя',\n ww: relativeTimeWithPlural,\n M: 'месяц',\n MM: relativeTimeWithPlural,\n y: 'год',\n yy: relativeTimeWithPlural,\n },\n meridiemParse: /ночи|утра|дня|вечера/i,\n isPM: function (input) {\n return /^(дня|вечера)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночи';\n } else if (hour < 12) {\n return 'утра';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечера';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го|я)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n return number + '-й';\n case 'D':\n return number + '-го';\n case 'w':\n case 'W':\n return number + '-я';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ru;\n\n})));\n","//! moment.js locale configuration\n//! locale : Sindhi [sd]\n//! author : Narain Sagar : https://github.com/narainsagar\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'جنوري',\n 'فيبروري',\n 'مارچ',\n 'اپريل',\n 'مئي',\n 'جون',\n 'جولاءِ',\n 'آگسٽ',\n 'سيپٽمبر',\n 'آڪٽوبر',\n 'نومبر',\n 'ڊسمبر',\n ],\n days = ['آچر', 'سومر', 'اڱارو', 'اربع', 'خميس', 'جمع', 'ڇنڇر'];\n\n var sd = moment.defineLocale('sd', {\n months: months,\n monthsShort: months,\n weekdays: days,\n weekdaysShort: days,\n weekdaysMin: days,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd، D MMMM YYYY HH:mm',\n },\n meridiemParse: /صبح|شام/,\n isPM: function (input) {\n return 'شام' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar: {\n sameDay: '[اڄ] LT',\n nextDay: '[سڀاڻي] LT',\n nextWeek: 'dddd [اڳين هفتي تي] LT',\n lastDay: '[ڪالهه] LT',\n lastWeek: '[گزريل هفتي] dddd [تي] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s پوء',\n past: '%s اڳ',\n s: 'چند سيڪنڊ',\n ss: '%d سيڪنڊ',\n m: 'هڪ منٽ',\n mm: '%d منٽ',\n h: 'هڪ ڪلاڪ',\n hh: '%d ڪلاڪ',\n d: 'هڪ ڏينهن',\n dd: '%d ڏينهن',\n M: 'هڪ مهينو',\n MM: '%d مهينا',\n y: 'هڪ سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Northern Sami [se]\n//! authors : Bård Rolstad Henriksen : https://github.com/karamell\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var se = moment.defineLocale('se', {\n months: 'ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu'.split(\n '_'\n ),\n monthsShort:\n 'ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov'.split('_'),\n weekdays:\n 'sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat'.split(\n '_'\n ),\n weekdaysShort: 'sotn_vuos_maŋ_gask_duor_bear_láv'.split('_'),\n weekdaysMin: 's_v_m_g_d_b_L'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'MMMM D. [b.] YYYY',\n LLL: 'MMMM D. [b.] YYYY [ti.] HH:mm',\n LLLL: 'dddd, MMMM D. [b.] YYYY [ti.] HH:mm',\n },\n calendar: {\n sameDay: '[otne ti] LT',\n nextDay: '[ihttin ti] LT',\n nextWeek: 'dddd [ti] LT',\n lastDay: '[ikte ti] LT',\n lastWeek: '[ovddit] dddd [ti] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s geažes',\n past: 'maŋit %s',\n s: 'moadde sekunddat',\n ss: '%d sekunddat',\n m: 'okta minuhta',\n mm: '%d minuhtat',\n h: 'okta diimmu',\n hh: '%d diimmut',\n d: 'okta beaivi',\n dd: '%d beaivvit',\n M: 'okta mánnu',\n MM: '%d mánut',\n y: 'okta jahki',\n yy: '%d jagit',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return se;\n\n})));\n","//! moment.js locale configuration\n//! locale : Sinhalese [si]\n//! author : Sampath Sitinamaluwa : https://github.com/sampathsris\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n /*jshint -W100*/\n var si = moment.defineLocale('si', {\n months: 'ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්'.split(\n '_'\n ),\n monthsShort: 'ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ'.split(\n '_'\n ),\n weekdays:\n 'ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා'.split(\n '_'\n ),\n weekdaysShort: 'ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන'.split('_'),\n weekdaysMin: 'ඉ_ස_අ_බ_බ්‍ර_සි_සෙ'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'a h:mm',\n LTS: 'a h:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY MMMM D',\n LLL: 'YYYY MMMM D, a h:mm',\n LLLL: 'YYYY MMMM D [වැනි] dddd, a h:mm:ss',\n },\n calendar: {\n sameDay: '[අද] LT[ට]',\n nextDay: '[හෙට] LT[ට]',\n nextWeek: 'dddd LT[ට]',\n lastDay: '[ඊයේ] LT[ට]',\n lastWeek: '[පසුගිය] dddd LT[ට]',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sකින්',\n past: '%sකට පෙර',\n s: 'තත්පර කිහිපය',\n ss: 'තත්පර %d',\n m: 'මිනිත්තුව',\n mm: 'මිනිත්තු %d',\n h: 'පැය',\n hh: 'පැය %d',\n d: 'දිනය',\n dd: 'දින %d',\n M: 'මාසය',\n MM: 'මාස %d',\n y: 'වසර',\n yy: 'වසර %d',\n },\n dayOfMonthOrdinalParse: /\\d{1,2} වැනි/,\n ordinal: function (number) {\n return number + ' වැනි';\n },\n meridiemParse: /පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,\n isPM: function (input) {\n return input === 'ප.ව.' || input === 'පස් වරු';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'ප.ව.' : 'පස් වරු';\n } else {\n return isLower ? 'පෙ.ව.' : 'පෙර වරු';\n }\n },\n });\n\n return si;\n\n})));\n","//! moment.js locale configuration\n//! locale : Slovak [sk]\n//! author : Martin Minka : https://github.com/k2s\n//! based on work of petrbela : https://github.com/petrbela\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months =\n 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split(\n '_'\n ),\n monthsShort = 'jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec'.split('_');\n function plural(n) {\n return n > 1 && n < 5;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return withoutSuffix || isFuture ? 'pár sekúnd' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekúnd');\n } else {\n return result + 'sekundami';\n }\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minúta' : isFuture ? 'minútu' : 'minútou';\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minúty' : 'minút');\n } else {\n return result + 'minútami';\n }\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodín');\n } else {\n return result + 'hodinami';\n }\n case 'd': // a day / in a day / a day ago\n return withoutSuffix || isFuture ? 'deň' : 'dňom';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dni' : 'dní');\n } else {\n return result + 'dňami';\n }\n case 'M': // a month / in a month / a month ago\n return withoutSuffix || isFuture ? 'mesiac' : 'mesiacom';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'mesiace' : 'mesiacov');\n } else {\n return result + 'mesiacmi';\n }\n case 'y': // a year / in a year / a year ago\n return withoutSuffix || isFuture ? 'rok' : 'rokom';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'rokov');\n } else {\n return result + 'rokmi';\n }\n }\n }\n\n var sk = moment.defineLocale('sk', {\n months: months,\n monthsShort: monthsShort,\n weekdays: 'nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota'.split('_'),\n weekdaysShort: 'ne_po_ut_st_št_pi_so'.split('_'),\n weekdaysMin: 'ne_po_ut_st_št_pi_so'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[dnes o] LT',\n nextDay: '[zajtra o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v nedeľu o] LT';\n case 1:\n case 2:\n return '[v] dddd [o] LT';\n case 3:\n return '[v stredu o] LT';\n case 4:\n return '[vo štvrtok o] LT';\n case 5:\n return '[v piatok o] LT';\n case 6:\n return '[v sobotu o] LT';\n }\n },\n lastDay: '[včera o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulú nedeľu o] LT';\n case 1:\n case 2:\n return '[minulý] dddd [o] LT';\n case 3:\n return '[minulú stredu o] LT';\n case 4:\n case 5:\n return '[minulý] dddd [o] LT';\n case 6:\n return '[minulú sobotu o] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'pred %s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Slovenian [sl]\n//! author : Robert Sedovšek : https://github.com/sedovsek\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture\n ? 'nekaj sekund'\n : 'nekaj sekundami';\n case 'ss':\n if (number === 1) {\n result += withoutSuffix ? 'sekundo' : 'sekundi';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'sekundi' : 'sekundah';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'sekunde' : 'sekundah';\n } else {\n result += 'sekund';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'ena minuta' : 'eno minuto';\n case 'mm':\n if (number === 1) {\n result += withoutSuffix ? 'minuta' : 'minuto';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'minuti' : 'minutama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'minute' : 'minutami';\n } else {\n result += withoutSuffix || isFuture ? 'minut' : 'minutami';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'ena ura' : 'eno uro';\n case 'hh':\n if (number === 1) {\n result += withoutSuffix ? 'ura' : 'uro';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'uri' : 'urama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'ure' : 'urami';\n } else {\n result += withoutSuffix || isFuture ? 'ur' : 'urami';\n }\n return result;\n case 'd':\n return withoutSuffix || isFuture ? 'en dan' : 'enim dnem';\n case 'dd':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'dan' : 'dnem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevoma';\n } else {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevi';\n }\n return result;\n case 'M':\n return withoutSuffix || isFuture ? 'en mesec' : 'enim mesecem';\n case 'MM':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'mesec' : 'mesecem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'meseca' : 'mesecema';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'mesece' : 'meseci';\n } else {\n result += withoutSuffix || isFuture ? 'mesecev' : 'meseci';\n }\n return result;\n case 'y':\n return withoutSuffix || isFuture ? 'eno leto' : 'enim letom';\n case 'yy':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'leto' : 'letom';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'leti' : 'letoma';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'leta' : 'leti';\n } else {\n result += withoutSuffix || isFuture ? 'let' : 'leti';\n }\n return result;\n }\n }\n\n var sl = moment.defineLocale('sl', {\n months: 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota'.split('_'),\n weekdaysShort: 'ned._pon._tor._sre._čet._pet._sob.'.split('_'),\n weekdaysMin: 'ne_po_to_sr_če_pe_so'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD. MM. YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danes ob] LT',\n nextDay: '[jutri ob] LT',\n\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v] [nedeljo] [ob] LT';\n case 3:\n return '[v] [sredo] [ob] LT';\n case 6:\n return '[v] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[v] dddd [ob] LT';\n }\n },\n lastDay: '[včeraj ob] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[prejšnjo] [nedeljo] [ob] LT';\n case 3:\n return '[prejšnjo] [sredo] [ob] LT';\n case 6:\n return '[prejšnjo] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prejšnji] dddd [ob] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'čez %s',\n past: 'pred %s',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Albanian [sq]\n//! author : Flakërim Ismani : https://github.com/flakerimi\n//! author : Menelion Elensúle : https://github.com/Oire\n//! author : Oerd Cukalla : https://github.com/oerd\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sq = moment.defineLocale('sq', {\n months: 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor'.split(\n '_'\n ),\n monthsShort: 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj'.split('_'),\n weekdays: 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split(\n '_'\n ),\n weekdaysShort: 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'),\n weekdaysMin: 'D_H_Ma_Më_E_P_Sh'.split('_'),\n weekdaysParseExact: true,\n meridiemParse: /PD|MD/,\n isPM: function (input) {\n return input.charAt(0) === 'M';\n },\n meridiem: function (hours, minutes, isLower) {\n return hours < 12 ? 'PD' : 'MD';\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Sot në] LT',\n nextDay: '[Nesër në] LT',\n nextWeek: 'dddd [në] LT',\n lastDay: '[Dje në] LT',\n lastWeek: 'dddd [e kaluar në] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'në %s',\n past: '%s më parë',\n s: 'disa sekonda',\n ss: '%d sekonda',\n m: 'një minutë',\n mm: '%d minuta',\n h: 'një orë',\n hh: '%d orë',\n d: 'një ditë',\n dd: '%d ditë',\n M: 'një muaj',\n MM: '%d muaj',\n y: 'një vit',\n yy: '%d vite',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sq;\n\n})));\n","//! moment.js locale configuration\n//! locale : Serbian Cyrillic [sr-cyrl]\n//! author : Milan Janačković : https://github.com/milan-j\n//! author : Stefan Crnjaković : https://github.com/crnjakovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['секунда', 'секунде', 'секунди'],\n m: ['један минут', 'једног минута'],\n mm: ['минут', 'минута', 'минута'],\n h: ['један сат', 'једног сата'],\n hh: ['сат', 'сата', 'сати'],\n d: ['један дан', 'једног дана'],\n dd: ['дан', 'дана', 'дана'],\n M: ['један месец', 'једног месеца'],\n MM: ['месец', 'месеца', 'месеци'],\n y: ['једну годину', 'једне године'],\n yy: ['годину', 'године', 'година'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n if (\n number % 10 >= 1 &&\n number % 10 <= 4 &&\n (number % 100 < 10 || number % 100 >= 20)\n ) {\n return number % 10 === 1 ? wordKey[0] : wordKey[1];\n }\n return wordKey[2];\n },\n translate: function (number, withoutSuffix, key, isFuture) {\n var wordKey = translator.words[key],\n word;\n\n if (key.length === 1) {\n // Nominativ\n if (key === 'y' && withoutSuffix) return 'једна година';\n return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];\n }\n\n word = translator.correctGrammaticalCase(number, wordKey);\n // Nominativ\n if (key === 'yy' && withoutSuffix && word === 'годину') {\n return number + ' година';\n }\n\n return number + ' ' + word;\n },\n };\n\n var srCyrl = moment.defineLocale('sr-cyrl', {\n months: 'јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар'.split(\n '_'\n ),\n monthsShort:\n 'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split('_'),\n monthsParseExact: true,\n weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'),\n weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'),\n weekdaysMin: 'не_по_ут_ср_че_пе_су'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D. M. YYYY.',\n LL: 'D. MMMM YYYY.',\n LLL: 'D. MMMM YYYY. H:mm',\n LLLL: 'dddd, D. MMMM YYYY. H:mm',\n },\n calendar: {\n sameDay: '[данас у] LT',\n nextDay: '[сутра у] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[у] [недељу] [у] LT';\n case 3:\n return '[у] [среду] [у] LT';\n case 6:\n return '[у] [суботу] [у] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[у] dddd [у] LT';\n }\n },\n lastDay: '[јуче у] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[прошле] [недеље] [у] LT',\n '[прошлог] [понедељка] [у] LT',\n '[прошлог] [уторка] [у] LT',\n '[прошле] [среде] [у] LT',\n '[прошлог] [четвртка] [у] LT',\n '[прошлог] [петка] [у] LT',\n '[прошле] [суботе] [у] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: 'пре %s',\n s: 'неколико секунди',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: translator.translate,\n dd: translator.translate,\n M: translator.translate,\n MM: translator.translate,\n y: translator.translate,\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return srCyrl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Serbian [sr]\n//! author : Milan Janačković : https://github.com/milan-j\n//! author : Stefan Crnjaković : https://github.com/crnjakovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['sekunda', 'sekunde', 'sekundi'],\n m: ['jedan minut', 'jednog minuta'],\n mm: ['minut', 'minuta', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n d: ['jedan dan', 'jednog dana'],\n dd: ['dan', 'dana', 'dana'],\n M: ['jedan mesec', 'jednog meseca'],\n MM: ['mesec', 'meseca', 'meseci'],\n y: ['jednu godinu', 'jedne godine'],\n yy: ['godinu', 'godine', 'godina'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n if (\n number % 10 >= 1 &&\n number % 10 <= 4 &&\n (number % 100 < 10 || number % 100 >= 20)\n ) {\n return number % 10 === 1 ? wordKey[0] : wordKey[1];\n }\n return wordKey[2];\n },\n translate: function (number, withoutSuffix, key, isFuture) {\n var wordKey = translator.words[key],\n word;\n\n if (key.length === 1) {\n // Nominativ\n if (key === 'y' && withoutSuffix) return 'jedna godina';\n return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];\n }\n\n word = translator.correctGrammaticalCase(number, wordKey);\n // Nominativ\n if (key === 'yy' && withoutSuffix && word === 'godinu') {\n return number + ' godina';\n }\n\n return number + ' ' + word;\n },\n };\n\n var sr = moment.defineLocale('sr', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays: 'nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sre._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D. M. YYYY.',\n LL: 'D. MMMM YYYY.',\n LLL: 'D. MMMM YYYY. H:mm',\n LLLL: 'dddd, D. MMMM YYYY. H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedelju] [u] LT';\n case 3:\n return '[u] [sredu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juče u] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[prošle] [nedelje] [u] LT',\n '[prošlog] [ponedeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'pre %s',\n s: 'nekoliko sekundi',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: translator.translate,\n dd: translator.translate,\n M: translator.translate,\n MM: translator.translate,\n y: translator.translate,\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sr;\n\n})));\n","//! moment.js locale configuration\n//! locale : siSwati [ss]\n//! author : Nicolai Davies : https://github.com/nicolaidavies\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ss = moment.defineLocale('ss', {\n months: \"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni\".split(\n '_'\n ),\n monthsShort: 'Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo'.split('_'),\n weekdays:\n 'Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo'.split(\n '_'\n ),\n weekdaysShort: 'Lis_Umb_Lsb_Les_Lsi_Lsh_Umg'.split('_'),\n weekdaysMin: 'Li_Us_Lb_Lt_Ls_Lh_Ug'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Namuhla nga] LT',\n nextDay: '[Kusasa nga] LT',\n nextWeek: 'dddd [nga] LT',\n lastDay: '[Itolo nga] LT',\n lastWeek: 'dddd [leliphelile] [nga] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'nga %s',\n past: 'wenteka nga %s',\n s: 'emizuzwana lomcane',\n ss: '%d mzuzwana',\n m: 'umzuzu',\n mm: '%d emizuzu',\n h: 'lihora',\n hh: '%d emahora',\n d: 'lilanga',\n dd: '%d emalanga',\n M: 'inyanga',\n MM: '%d tinyanga',\n y: 'umnyaka',\n yy: '%d iminyaka',\n },\n meridiemParse: /ekuseni|emini|entsambama|ebusuku/,\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'ekuseni';\n } else if (hours < 15) {\n return 'emini';\n } else if (hours < 19) {\n return 'entsambama';\n } else {\n return 'ebusuku';\n }\n },\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ekuseni') {\n return hour;\n } else if (meridiem === 'emini') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'entsambama' || meridiem === 'ebusuku') {\n if (hour === 0) {\n return 0;\n }\n return hour + 12;\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: '%d',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ss;\n\n})));\n","//! moment.js locale configuration\n//! locale : Swedish [sv]\n//! author : Jens Alm : https://github.com/ulmus\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sv = moment.defineLocale('sv', {\n months: 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays: 'söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'),\n weekdaysShort: 'sön_mån_tis_ons_tor_fre_lör'.split('_'),\n weekdaysMin: 'sö_må_ti_on_to_fr_lö'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [kl.] HH:mm',\n LLLL: 'dddd D MMMM YYYY [kl.] HH:mm',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Idag] LT',\n nextDay: '[Imorgon] LT',\n lastDay: '[Igår] LT',\n nextWeek: '[På] dddd LT',\n lastWeek: '[I] dddd[s] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: 'för %s sedan',\n s: 'några sekunder',\n ss: '%d sekunder',\n m: 'en minut',\n mm: '%d minuter',\n h: 'en timme',\n hh: '%d timmar',\n d: 'en dag',\n dd: '%d dagar',\n M: 'en månad',\n MM: '%d månader',\n y: 'ett år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(\\:e|\\:a)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? ':e'\n : b === 1\n ? ':a'\n : b === 2\n ? ':a'\n : b === 3\n ? ':e'\n : ':e';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Swahili [sw]\n//! author : Fahad Kassim : https://github.com/fadsel\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sw = moment.defineLocale('sw', {\n months: 'Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des'.split('_'),\n weekdays:\n 'Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi'.split(\n '_'\n ),\n weekdaysShort: 'Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos'.split('_'),\n weekdaysMin: 'J2_J3_J4_J5_Al_Ij_J1'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'hh:mm A',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[leo saa] LT',\n nextDay: '[kesho saa] LT',\n nextWeek: '[wiki ijayo] dddd [saat] LT',\n lastDay: '[jana] LT',\n lastWeek: '[wiki iliyopita] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s baadaye',\n past: 'tokea %s',\n s: 'hivi punde',\n ss: 'sekunde %d',\n m: 'dakika moja',\n mm: 'dakika %d',\n h: 'saa limoja',\n hh: 'masaa %d',\n d: 'siku moja',\n dd: 'siku %d',\n M: 'mwezi mmoja',\n MM: 'miezi %d',\n y: 'mwaka mmoja',\n yy: 'miaka %d',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sw;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tamil [ta]\n//! author : Arjunkumar Krishnamoorthy : https://github.com/tk120404\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '௧',\n 2: '௨',\n 3: '௩',\n 4: '௪',\n 5: '௫',\n 6: '௬',\n 7: '௭',\n 8: '௮',\n 9: '௯',\n 0: '௦',\n },\n numberMap = {\n '௧': '1',\n '௨': '2',\n '௩': '3',\n '௪': '4',\n '௫': '5',\n '௬': '6',\n '௭': '7',\n '௮': '8',\n '௯': '9',\n '௦': '0',\n };\n\n var ta = moment.defineLocale('ta', {\n months: 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split(\n '_'\n ),\n monthsShort:\n 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split(\n '_'\n ),\n weekdays:\n 'ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை'.split(\n '_'\n ),\n weekdaysShort: 'ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி'.split(\n '_'\n ),\n weekdaysMin: 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, HH:mm',\n LLLL: 'dddd, D MMMM YYYY, HH:mm',\n },\n calendar: {\n sameDay: '[இன்று] LT',\n nextDay: '[நாளை] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[நேற்று] LT',\n lastWeek: '[கடந்த வாரம்] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s இல்',\n past: '%s முன்',\n s: 'ஒரு சில விநாடிகள்',\n ss: '%d விநாடிகள்',\n m: 'ஒரு நிமிடம்',\n mm: '%d நிமிடங்கள்',\n h: 'ஒரு மணி நேரம்',\n hh: '%d மணி நேரம்',\n d: 'ஒரு நாள்',\n dd: '%d நாட்கள்',\n M: 'ஒரு மாதம்',\n MM: '%d மாதங்கள்',\n y: 'ஒரு வருடம்',\n yy: '%d ஆண்டுகள்',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}வது/,\n ordinal: function (number) {\n return number + 'வது';\n },\n preparse: function (string) {\n return string.replace(/[௧௨௩௪௫௬௭௮௯௦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // refer http://ta.wikipedia.org/s/1er1\n meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,\n meridiem: function (hour, minute, isLower) {\n if (hour < 2) {\n return ' யாமம்';\n } else if (hour < 6) {\n return ' வைகறை'; // வைகறை\n } else if (hour < 10) {\n return ' காலை'; // காலை\n } else if (hour < 14) {\n return ' நண்பகல்'; // நண்பகல்\n } else if (hour < 18) {\n return ' எற்பாடு'; // எற்பாடு\n } else if (hour < 22) {\n return ' மாலை'; // மாலை\n } else {\n return ' யாமம்';\n }\n },\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'யாமம்') {\n return hour < 2 ? hour : hour + 12;\n } else if (meridiem === 'வைகறை' || meridiem === 'காலை') {\n return hour;\n } else if (meridiem === 'நண்பகல்') {\n return hour >= 10 ? hour : hour + 12;\n } else {\n return hour + 12;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return ta;\n\n})));\n","//! moment.js locale configuration\n//! locale : Telugu [te]\n//! author : Krishna Chaitanya Thota : https://github.com/kcthota\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var te = moment.defineLocale('te', {\n months: 'జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్'.split(\n '_'\n ),\n monthsShort:\n 'జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం'.split(\n '_'\n ),\n weekdaysShort: 'ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని'.split('_'),\n weekdaysMin: 'ఆ_సో_మం_బు_గు_శు_శ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[నేడు] LT',\n nextDay: '[రేపు] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[నిన్న] LT',\n lastWeek: '[గత] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s లో',\n past: '%s క్రితం',\n s: 'కొన్ని క్షణాలు',\n ss: '%d సెకన్లు',\n m: 'ఒక నిమిషం',\n mm: '%d నిమిషాలు',\n h: 'ఒక గంట',\n hh: '%d గంటలు',\n d: 'ఒక రోజు',\n dd: '%d రోజులు',\n M: 'ఒక నెల',\n MM: '%d నెలలు',\n y: 'ఒక సంవత్సరం',\n yy: '%d సంవత్సరాలు',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}వ/,\n ordinal: '%dవ',\n meridiemParse: /రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'రాత్రి') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ఉదయం') {\n return hour;\n } else if (meridiem === 'మధ్యాహ్నం') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'సాయంత్రం') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'రాత్రి';\n } else if (hour < 10) {\n return 'ఉదయం';\n } else if (hour < 17) {\n return 'మధ్యాహ్నం';\n } else if (hour < 20) {\n return 'సాయంత్రం';\n } else {\n return 'రాత్రి';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return te;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tetun Dili (East Timor) [tet]\n//! author : Joshua Brooks : https://github.com/joshbrooks\n//! author : Onorio De J. Afonso : https://github.com/marobo\n//! author : Sonia Simoes : https://github.com/soniasimoes\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tet = moment.defineLocale('tet', {\n months: 'Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru'.split(\n '_'\n ),\n monthsShort: 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),\n weekdays: 'Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu'.split('_'),\n weekdaysShort: 'Dom_Seg_Ters_Kua_Kint_Sest_Sab'.split('_'),\n weekdaysMin: 'Do_Seg_Te_Ku_Ki_Ses_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Ohin iha] LT',\n nextDay: '[Aban iha] LT',\n nextWeek: 'dddd [iha] LT',\n lastDay: '[Horiseik iha] LT',\n lastWeek: 'dddd [semana kotuk] [iha] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'iha %s',\n past: '%s liuba',\n s: 'segundu balun',\n ss: 'segundu %d',\n m: 'minutu ida',\n mm: 'minutu %d',\n h: 'oras ida',\n hh: 'oras %d',\n d: 'loron ida',\n dd: 'loron %d',\n M: 'fulan ida',\n MM: 'fulan %d',\n y: 'tinan ida',\n yy: 'tinan %d',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tet;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tajik [tg]\n//! author : Orif N. Jr. : https://github.com/orif-jr\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-ум',\n 1: '-ум',\n 2: '-юм',\n 3: '-юм',\n 4: '-ум',\n 5: '-ум',\n 6: '-ум',\n 7: '-ум',\n 8: '-ум',\n 9: '-ум',\n 10: '-ум',\n 12: '-ум',\n 13: '-ум',\n 20: '-ум',\n 30: '-юм',\n 40: '-ум',\n 50: '-ум',\n 60: '-ум',\n 70: '-ум',\n 80: '-ум',\n 90: '-ум',\n 100: '-ум',\n };\n\n var tg = moment.defineLocale('tg', {\n months: {\n format: 'январи_феврали_марти_апрели_майи_июни_июли_августи_сентябри_октябри_ноябри_декабри'.split(\n '_'\n ),\n standalone:\n 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split(\n '_'\n ),\n },\n monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays: 'якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе'.split(\n '_'\n ),\n weekdaysShort: 'яшб_дшб_сшб_чшб_пшб_ҷум_шнб'.split('_'),\n weekdaysMin: 'яш_дш_сш_чш_пш_ҷм_шб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Имрӯз соати] LT',\n nextDay: '[Фардо соати] LT',\n lastDay: '[Дирӯз соати] LT',\n nextWeek: 'dddd[и] [ҳафтаи оянда соати] LT',\n lastWeek: 'dddd[и] [ҳафтаи гузашта соати] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'баъди %s',\n past: '%s пеш',\n s: 'якчанд сония',\n m: 'як дақиқа',\n mm: '%d дақиқа',\n h: 'як соат',\n hh: '%d соат',\n d: 'як рӯз',\n dd: '%d рӯз',\n M: 'як моҳ',\n MM: '%d моҳ',\n y: 'як сол',\n yy: '%d сол',\n },\n meridiemParse: /шаб|субҳ|рӯз|бегоҳ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'шаб') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'субҳ') {\n return hour;\n } else if (meridiem === 'рӯз') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'бегоҳ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'шаб';\n } else if (hour < 11) {\n return 'субҳ';\n } else if (hour < 16) {\n return 'рӯз';\n } else if (hour < 19) {\n return 'бегоҳ';\n } else {\n return 'шаб';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ум|юм)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1th is the first week of the year.\n },\n });\n\n return tg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Thai [th]\n//! author : Kridsada Thanabulpong : https://github.com/sirn\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var th = moment.defineLocale('th', {\n months: 'มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม'.split(\n '_'\n ),\n monthsShort:\n 'ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์'.split('_'),\n weekdaysShort: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์'.split('_'), // yes, three characters difference\n weekdaysMin: 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY เวลา H:mm',\n LLLL: 'วันddddที่ D MMMM YYYY เวลา H:mm',\n },\n meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/,\n isPM: function (input) {\n return input === 'หลังเที่ยง';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ก่อนเที่ยง';\n } else {\n return 'หลังเที่ยง';\n }\n },\n calendar: {\n sameDay: '[วันนี้ เวลา] LT',\n nextDay: '[พรุ่งนี้ เวลา] LT',\n nextWeek: 'dddd[หน้า เวลา] LT',\n lastDay: '[เมื่อวานนี้ เวลา] LT',\n lastWeek: '[วัน]dddd[ที่แล้ว เวลา] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'อีก %s',\n past: '%sที่แล้ว',\n s: 'ไม่กี่วินาที',\n ss: '%d วินาที',\n m: '1 นาที',\n mm: '%d นาที',\n h: '1 ชั่วโมง',\n hh: '%d ชั่วโมง',\n d: '1 วัน',\n dd: '%d วัน',\n w: '1 สัปดาห์',\n ww: '%d สัปดาห์',\n M: '1 เดือน',\n MM: '%d เดือน',\n y: '1 ปี',\n yy: '%d ปี',\n },\n });\n\n return th;\n\n})));\n","//! moment.js locale configuration\n//! locale : Turkmen [tk]\n//! author : Atamyrat Abdyrahmanov : https://github.com/atamyratabdy\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: \"'inji\",\n 5: \"'inji\",\n 8: \"'inji\",\n 70: \"'inji\",\n 80: \"'inji\",\n 2: \"'nji\",\n 7: \"'nji\",\n 20: \"'nji\",\n 50: \"'nji\",\n 3: \"'ünji\",\n 4: \"'ünji\",\n 100: \"'ünji\",\n 6: \"'njy\",\n 9: \"'unjy\",\n 10: \"'unjy\",\n 30: \"'unjy\",\n 60: \"'ynjy\",\n 90: \"'ynjy\",\n };\n\n var tk = moment.defineLocale('tk', {\n months: 'Ýanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr'.split(\n '_'\n ),\n monthsShort: 'Ýan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek'.split('_'),\n weekdays: 'Ýekşenbe_Duşenbe_Sişenbe_Çarşenbe_Penşenbe_Anna_Şenbe'.split(\n '_'\n ),\n weekdaysShort: 'Ýek_Duş_Siş_Çar_Pen_Ann_Şen'.split('_'),\n weekdaysMin: 'Ýk_Dş_Sş_Çr_Pn_An_Şn'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün sagat] LT',\n nextDay: '[ertir sagat] LT',\n nextWeek: '[indiki] dddd [sagat] LT',\n lastDay: '[düýn] LT',\n lastWeek: '[geçen] dddd [sagat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s soň',\n past: '%s öň',\n s: 'birnäçe sekunt',\n m: 'bir minut',\n mm: '%d minut',\n h: 'bir sagat',\n hh: '%d sagat',\n d: 'bir gün',\n dd: '%d gün',\n M: 'bir aý',\n MM: '%d aý',\n y: 'bir ýyl',\n yy: '%d ýyl',\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) {\n // special case for zero\n return number + \"'unjy\";\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return tk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tagalog (Philippines) [tl-ph]\n//! author : Dan Hagman : https://github.com/hagmandan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tlPh = moment.defineLocale('tl-ph', {\n months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split(\n '_'\n ),\n monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split(\n '_'\n ),\n weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'MM/D/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY HH:mm',\n LLLL: 'dddd, MMMM DD, YYYY HH:mm',\n },\n calendar: {\n sameDay: 'LT [ngayong araw]',\n nextDay: '[Bukas ng] LT',\n nextWeek: 'LT [sa susunod na] dddd',\n lastDay: 'LT [kahapon]',\n lastWeek: 'LT [noong nakaraang] dddd',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'sa loob ng %s',\n past: '%s ang nakalipas',\n s: 'ilang segundo',\n ss: '%d segundo',\n m: 'isang minuto',\n mm: '%d minuto',\n h: 'isang oras',\n hh: '%d oras',\n d: 'isang araw',\n dd: '%d araw',\n M: 'isang buwan',\n MM: '%d buwan',\n y: 'isang taon',\n yy: '%d taon',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tlPh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Klingon [tlh]\n//! author : Dominika Kruk : https://github.com/amaranthrose\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var numbersNouns = 'pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut'.split('_');\n\n function translateFuture(output) {\n var time = output;\n time =\n output.indexOf('jaj') !== -1\n ? time.slice(0, -3) + 'leS'\n : output.indexOf('jar') !== -1\n ? time.slice(0, -3) + 'waQ'\n : output.indexOf('DIS') !== -1\n ? time.slice(0, -3) + 'nem'\n : time + ' pIq';\n return time;\n }\n\n function translatePast(output) {\n var time = output;\n time =\n output.indexOf('jaj') !== -1\n ? time.slice(0, -3) + 'Hu’'\n : output.indexOf('jar') !== -1\n ? time.slice(0, -3) + 'wen'\n : output.indexOf('DIS') !== -1\n ? time.slice(0, -3) + 'ben'\n : time + ' ret';\n return time;\n }\n\n function translate(number, withoutSuffix, string, isFuture) {\n var numberNoun = numberAsNoun(number);\n switch (string) {\n case 'ss':\n return numberNoun + ' lup';\n case 'mm':\n return numberNoun + ' tup';\n case 'hh':\n return numberNoun + ' rep';\n case 'dd':\n return numberNoun + ' jaj';\n case 'MM':\n return numberNoun + ' jar';\n case 'yy':\n return numberNoun + ' DIS';\n }\n }\n\n function numberAsNoun(number) {\n var hundred = Math.floor((number % 1000) / 100),\n ten = Math.floor((number % 100) / 10),\n one = number % 10,\n word = '';\n if (hundred > 0) {\n word += numbersNouns[hundred] + 'vatlh';\n }\n if (ten > 0) {\n word += (word !== '' ? ' ' : '') + numbersNouns[ten] + 'maH';\n }\n if (one > 0) {\n word += (word !== '' ? ' ' : '') + numbersNouns[one];\n }\n return word === '' ? 'pagh' : word;\n }\n\n var tlh = moment.defineLocale('tlh', {\n months: 'tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’'.split(\n '_'\n ),\n monthsShort:\n 'jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split(\n '_'\n ),\n weekdaysShort:\n 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n weekdaysMin:\n 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[DaHjaj] LT',\n nextDay: '[wa’leS] LT',\n nextWeek: 'LLL',\n lastDay: '[wa’Hu’] LT',\n lastWeek: 'LLL',\n sameElse: 'L',\n },\n relativeTime: {\n future: translateFuture,\n past: translatePast,\n s: 'puS lup',\n ss: translate,\n m: 'wa’ tup',\n mm: translate,\n h: 'wa’ rep',\n hh: translate,\n d: 'wa’ jaj',\n dd: translate,\n M: 'wa’ jar',\n MM: translate,\n y: 'wa’ DIS',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tlh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Turkish [tr]\n//! authors : Erhan Gundogan : https://github.com/erhangundogan,\n//! Burak Yiğit Kaya: https://github.com/BYK\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: \"'inci\",\n 5: \"'inci\",\n 8: \"'inci\",\n 70: \"'inci\",\n 80: \"'inci\",\n 2: \"'nci\",\n 7: \"'nci\",\n 20: \"'nci\",\n 50: \"'nci\",\n 3: \"'üncü\",\n 4: \"'üncü\",\n 100: \"'üncü\",\n 6: \"'ncı\",\n 9: \"'uncu\",\n 10: \"'uncu\",\n 30: \"'uncu\",\n 60: \"'ıncı\",\n 90: \"'ıncı\",\n };\n\n var tr = moment.defineLocale('tr', {\n months: 'Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık'.split(\n '_'\n ),\n monthsShort: 'Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara'.split('_'),\n weekdays: 'Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi'.split(\n '_'\n ),\n weekdaysShort: 'Paz_Pzt_Sal_Çar_Per_Cum_Cmt'.split('_'),\n weekdaysMin: 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'),\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'öö' : 'ÖÖ';\n } else {\n return isLower ? 'ös' : 'ÖS';\n }\n },\n meridiemParse: /öö|ÖÖ|ös|ÖS/,\n isPM: function (input) {\n return input === 'ös' || input === 'ÖS';\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün saat] LT',\n nextDay: '[yarın saat] LT',\n nextWeek: '[gelecek] dddd [saat] LT',\n lastDay: '[dün] LT',\n lastWeek: '[geçen] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s sonra',\n past: '%s önce',\n s: 'birkaç saniye',\n ss: '%d saniye',\n m: 'bir dakika',\n mm: '%d dakika',\n h: 'bir saat',\n hh: '%d saat',\n d: 'bir gün',\n dd: '%d gün',\n w: 'bir hafta',\n ww: '%d hafta',\n M: 'bir ay',\n MM: '%d ay',\n y: 'bir yıl',\n yy: '%d yıl',\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) {\n // special case for zero\n return number + \"'ıncı\";\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return tr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Talossan [tzl]\n//! author : Robin van der Vliet : https://github.com/robin0van0der0v\n//! author : Iustì Canun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n // After the year there should be a slash and the amount of years since December 26, 1979 in Roman numerals.\n // This is currently too difficult (maybe even impossible) to add.\n var tzl = moment.defineLocale('tzl', {\n months: 'Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar'.split(\n '_'\n ),\n monthsShort: 'Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec'.split('_'),\n weekdays: 'Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi'.split('_'),\n weekdaysShort: 'Súl_Lún_Mai_Már_Xhú_Vié_Sát'.split('_'),\n weekdaysMin: 'Sú_Lú_Ma_Má_Xh_Vi_Sá'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM [dallas] YYYY',\n LLL: 'D. MMMM [dallas] YYYY HH.mm',\n LLLL: 'dddd, [li] D. MMMM [dallas] YYYY HH.mm',\n },\n meridiemParse: /d\\'o|d\\'a/i,\n isPM: function (input) {\n return \"d'o\" === input.toLowerCase();\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? \"d'o\" : \"D'O\";\n } else {\n return isLower ? \"d'a\" : \"D'A\";\n }\n },\n calendar: {\n sameDay: '[oxhi à] LT',\n nextDay: '[demà à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[ieiri à] LT',\n lastWeek: '[sür el] dddd [lasteu à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'osprei %s',\n past: 'ja%s',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['viensas secunds', \"'iensas secunds\"],\n ss: [number + ' secunds', '' + number + ' secunds'],\n m: [\"'n míut\", \"'iens míut\"],\n mm: [number + ' míuts', '' + number + ' míuts'],\n h: [\"'n þora\", \"'iensa þora\"],\n hh: [number + ' þoras', '' + number + ' þoras'],\n d: [\"'n ziua\", \"'iensa ziua\"],\n dd: [number + ' ziuas', '' + number + ' ziuas'],\n M: [\"'n mes\", \"'iens mes\"],\n MM: [number + ' mesen', '' + number + ' mesen'],\n y: [\"'n ar\", \"'iens ar\"],\n yy: [number + ' ars', '' + number + ' ars'],\n };\n return isFuture\n ? format[key][0]\n : withoutSuffix\n ? format[key][0]\n : format[key][1];\n }\n\n return tzl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Central Atlas Tamazight Latin [tzm-latn]\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tzmLatn = moment.defineLocale('tzm-latn', {\n months: 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split(\n '_'\n ),\n monthsShort:\n 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split(\n '_'\n ),\n weekdays: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n weekdaysShort: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n weekdaysMin: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[asdkh g] LT',\n nextDay: '[aska g] LT',\n nextWeek: 'dddd [g] LT',\n lastDay: '[assant g] LT',\n lastWeek: 'dddd [g] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dadkh s yan %s',\n past: 'yan %s',\n s: 'imik',\n ss: '%d imik',\n m: 'minuḍ',\n mm: '%d minuḍ',\n h: 'saɛa',\n hh: '%d tassaɛin',\n d: 'ass',\n dd: '%d ossan',\n M: 'ayowr',\n MM: '%d iyyirn',\n y: 'asgas',\n yy: '%d isgasn',\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return tzmLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Central Atlas Tamazight [tzm]\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tzm = moment.defineLocale('tzm', {\n months: 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split(\n '_'\n ),\n monthsShort:\n 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split(\n '_'\n ),\n weekdays: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysShort: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysMin: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[ⴰⵙⴷⵅ ⴴ] LT',\n nextDay: '[ⴰⵙⴽⴰ ⴴ] LT',\n nextWeek: 'dddd [ⴴ] LT',\n lastDay: '[ⴰⵚⴰⵏⵜ ⴴ] LT',\n lastWeek: 'dddd [ⴴ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s',\n past: 'ⵢⴰⵏ %s',\n s: 'ⵉⵎⵉⴽ',\n ss: '%d ⵉⵎⵉⴽ',\n m: 'ⵎⵉⵏⵓⴺ',\n mm: '%d ⵎⵉⵏⵓⴺ',\n h: 'ⵙⴰⵄⴰ',\n hh: '%d ⵜⴰⵙⵙⴰⵄⵉⵏ',\n d: 'ⴰⵙⵙ',\n dd: '%d oⵙⵙⴰⵏ',\n M: 'ⴰⵢoⵓⵔ',\n MM: '%d ⵉⵢⵢⵉⵔⵏ',\n y: 'ⴰⵙⴳⴰⵙ',\n yy: '%d ⵉⵙⴳⴰⵙⵏ',\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return tzm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uyghur (China) [ug-cn]\n//! author: boyaq : https://github.com/boyaq\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ugCn = moment.defineLocale('ug-cn', {\n months: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n monthsShort:\n 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n weekdays: 'يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە'.split(\n '_'\n ),\n weekdaysShort: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n weekdaysMin: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY-يىلىM-ئاينىڭD-كۈنى',\n LLL: 'YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',\n LLLL: 'dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',\n },\n meridiemParse: /يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n meridiem === 'يېرىم كېچە' ||\n meridiem === 'سەھەر' ||\n meridiem === 'چۈشتىن بۇرۇن'\n ) {\n return hour;\n } else if (meridiem === 'چۈشتىن كېيىن' || meridiem === 'كەچ') {\n return hour + 12;\n } else {\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return 'يېرىم كېچە';\n } else if (hm < 900) {\n return 'سەھەر';\n } else if (hm < 1130) {\n return 'چۈشتىن بۇرۇن';\n } else if (hm < 1230) {\n return 'چۈش';\n } else if (hm < 1800) {\n return 'چۈشتىن كېيىن';\n } else {\n return 'كەچ';\n }\n },\n calendar: {\n sameDay: '[بۈگۈن سائەت] LT',\n nextDay: '[ئەتە سائەت] LT',\n nextWeek: '[كېلەركى] dddd [سائەت] LT',\n lastDay: '[تۆنۈگۈن] LT',\n lastWeek: '[ئالدىنقى] dddd [سائەت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s كېيىن',\n past: '%s بۇرۇن',\n s: 'نەچچە سېكونت',\n ss: '%d سېكونت',\n m: 'بىر مىنۇت',\n mm: '%d مىنۇت',\n h: 'بىر سائەت',\n hh: '%d سائەت',\n d: 'بىر كۈن',\n dd: '%d كۈن',\n M: 'بىر ئاي',\n MM: '%d ئاي',\n y: 'بىر يىل',\n yy: '%d يىل',\n },\n\n dayOfMonthOrdinalParse: /\\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '-كۈنى';\n case 'w':\n case 'W':\n return number + '-ھەپتە';\n default:\n return number;\n }\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return ugCn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Ukrainian [uk]\n//! author : zemlanin : https://github.com/zemlanin\n//! Author : Menelion Elensúle : https://github.com/Oire\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунди_секунд' : 'секунду_секунди_секунд',\n mm: withoutSuffix ? 'хвилина_хвилини_хвилин' : 'хвилину_хвилини_хвилин',\n hh: withoutSuffix ? 'година_години_годин' : 'годину_години_годин',\n dd: 'день_дні_днів',\n MM: 'місяць_місяці_місяців',\n yy: 'рік_роки_років',\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвилина' : 'хвилину';\n } else if (key === 'h') {\n return withoutSuffix ? 'година' : 'годину';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n function weekdaysCaseReplace(m, format) {\n var weekdays = {\n nominative:\n 'неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота'.split(\n '_'\n ),\n accusative:\n 'неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу'.split(\n '_'\n ),\n genitive:\n 'неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи'.split(\n '_'\n ),\n },\n nounCase;\n\n if (m === true) {\n return weekdays['nominative']\n .slice(1, 7)\n .concat(weekdays['nominative'].slice(0, 1));\n }\n if (!m) {\n return weekdays['nominative'];\n }\n\n nounCase = /(\\[[ВвУу]\\]) ?dddd/.test(format)\n ? 'accusative'\n : /\\[?(?:минулої|наступної)? ?\\] ?dddd/.test(format)\n ? 'genitive'\n : 'nominative';\n return weekdays[nounCase][m.day()];\n }\n function processHoursFunction(str) {\n return function () {\n return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT';\n };\n }\n\n var uk = moment.defineLocale('uk', {\n months: {\n format: 'січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня'.split(\n '_'\n ),\n standalone:\n 'січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень'.split(\n '_'\n ),\n },\n monthsShort: 'січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд'.split(\n '_'\n ),\n weekdays: weekdaysCaseReplace,\n weekdaysShort: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY р.',\n LLL: 'D MMMM YYYY р., HH:mm',\n LLLL: 'dddd, D MMMM YYYY р., HH:mm',\n },\n calendar: {\n sameDay: processHoursFunction('[Сьогодні '),\n nextDay: processHoursFunction('[Завтра '),\n lastDay: processHoursFunction('[Вчора '),\n nextWeek: processHoursFunction('[У] dddd ['),\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return processHoursFunction('[Минулої] dddd [').call(this);\n case 1:\n case 2:\n case 4:\n return processHoursFunction('[Минулого] dddd [').call(this);\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: '%s тому',\n s: 'декілька секунд',\n ss: relativeTimeWithPlural,\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: 'годину',\n hh: relativeTimeWithPlural,\n d: 'день',\n dd: relativeTimeWithPlural,\n M: 'місяць',\n MM: relativeTimeWithPlural,\n y: 'рік',\n yy: relativeTimeWithPlural,\n },\n // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason\n meridiemParse: /ночі|ранку|дня|вечора/,\n isPM: function (input) {\n return /^(дня|вечора)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночі';\n } else if (hour < 12) {\n return 'ранку';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечора';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return number + '-й';\n case 'D':\n return number + '-го';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return uk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Urdu [ur]\n//! author : Sawood Alam : https://github.com/ibnesayeed\n//! author : Zack : https://github.com/ZackVision\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'جنوری',\n 'فروری',\n 'مارچ',\n 'اپریل',\n 'مئی',\n 'جون',\n 'جولائی',\n 'اگست',\n 'ستمبر',\n 'اکتوبر',\n 'نومبر',\n 'دسمبر',\n ],\n days = ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'ہفتہ'];\n\n var ur = moment.defineLocale('ur', {\n months: months,\n monthsShort: months,\n weekdays: days,\n weekdaysShort: days,\n weekdaysMin: days,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd، D MMMM YYYY HH:mm',\n },\n meridiemParse: /صبح|شام/,\n isPM: function (input) {\n return 'شام' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar: {\n sameDay: '[آج بوقت] LT',\n nextDay: '[کل بوقت] LT',\n nextWeek: 'dddd [بوقت] LT',\n lastDay: '[گذشتہ روز بوقت] LT',\n lastWeek: '[گذشتہ] dddd [بوقت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s بعد',\n past: '%s قبل',\n s: 'چند سیکنڈ',\n ss: '%d سیکنڈ',\n m: 'ایک منٹ',\n mm: '%d منٹ',\n h: 'ایک گھنٹہ',\n hh: '%d گھنٹے',\n d: 'ایک دن',\n dd: '%d دن',\n M: 'ایک ماہ',\n MM: '%d ماہ',\n y: 'ایک سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ur;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uzbek Latin [uz-latn]\n//! author : Rasulbek Mirzayev : github.com/Rasulbeeek\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var uzLatn = moment.defineLocale('uz-latn', {\n months: 'Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr'.split(\n '_'\n ),\n monthsShort: 'Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek'.split('_'),\n weekdays:\n 'Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba'.split(\n '_'\n ),\n weekdaysShort: 'Yak_Dush_Sesh_Chor_Pay_Jum_Shan'.split('_'),\n weekdaysMin: 'Ya_Du_Se_Cho_Pa_Ju_Sha'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'D MMMM YYYY, dddd HH:mm',\n },\n calendar: {\n sameDay: '[Bugun soat] LT [da]',\n nextDay: '[Ertaga] LT [da]',\n nextWeek: 'dddd [kuni soat] LT [da]',\n lastDay: '[Kecha soat] LT [da]',\n lastWeek: \"[O'tgan] dddd [kuni soat] LT [da]\",\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Yaqin %s ichida',\n past: 'Bir necha %s oldin',\n s: 'soniya',\n ss: '%d soniya',\n m: 'bir daqiqa',\n mm: '%d daqiqa',\n h: 'bir soat',\n hh: '%d soat',\n d: 'bir kun',\n dd: '%d kun',\n M: 'bir oy',\n MM: '%d oy',\n y: 'bir yil',\n yy: '%d yil',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return uzLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uzbek [uz]\n//! author : Sardor Muminov : https://github.com/muminoff\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var uz = moment.defineLocale('uz', {\n months: 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split(\n '_'\n ),\n monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays: 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'),\n weekdaysShort: 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'),\n weekdaysMin: 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'D MMMM YYYY, dddd HH:mm',\n },\n calendar: {\n sameDay: '[Бугун соат] LT [да]',\n nextDay: '[Эртага] LT [да]',\n nextWeek: 'dddd [куни соат] LT [да]',\n lastDay: '[Кеча соат] LT [да]',\n lastWeek: '[Утган] dddd [куни соат] LT [да]',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Якин %s ичида',\n past: 'Бир неча %s олдин',\n s: 'фурсат',\n ss: '%d фурсат',\n m: 'бир дакика',\n mm: '%d дакика',\n h: 'бир соат',\n hh: '%d соат',\n d: 'бир кун',\n dd: '%d кун',\n M: 'бир ой',\n MM: '%d ой',\n y: 'бир йил',\n yy: '%d йил',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return uz;\n\n})));\n","//! moment.js locale configuration\n//! locale : Vietnamese [vi]\n//! author : Bang Nguyen : https://github.com/bangnk\n//! author : Chien Kira : https://github.com/chienkira\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var vi = moment.defineLocale('vi', {\n months: 'tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12'.split(\n '_'\n ),\n monthsShort:\n 'Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy'.split(\n '_'\n ),\n weekdaysShort: 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysMin: 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysParseExact: true,\n meridiemParse: /sa|ch/i,\n isPM: function (input) {\n return /^ch$/i.test(input);\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'sa' : 'SA';\n } else {\n return isLower ? 'ch' : 'CH';\n }\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [năm] YYYY',\n LLL: 'D MMMM [năm] YYYY HH:mm',\n LLLL: 'dddd, D MMMM [năm] YYYY HH:mm',\n l: 'DD/M/YYYY',\n ll: 'D MMM YYYY',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd, D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hôm nay lúc] LT',\n nextDay: '[Ngày mai lúc] LT',\n nextWeek: 'dddd [tuần tới lúc] LT',\n lastDay: '[Hôm qua lúc] LT',\n lastWeek: 'dddd [tuần trước lúc] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s tới',\n past: '%s trước',\n s: 'vài giây',\n ss: '%d giây',\n m: 'một phút',\n mm: '%d phút',\n h: 'một giờ',\n hh: '%d giờ',\n d: 'một ngày',\n dd: '%d ngày',\n w: 'một tuần',\n ww: '%d tuần',\n M: 'một tháng',\n MM: '%d tháng',\n y: 'một năm',\n yy: '%d năm',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return vi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Pseudo [x-pseudo]\n//! author : Andrew Hood : https://github.com/andrewhood125\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var xPseudo = moment.defineLocale('x-pseudo', {\n months: 'J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér'.split(\n '_'\n ),\n monthsShort:\n 'J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý'.split(\n '_'\n ),\n weekdaysShort: 'S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát'.split('_'),\n weekdaysMin: 'S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[T~ódá~ý át] LT',\n nextDay: '[T~ómó~rró~w át] LT',\n nextWeek: 'dddd [át] LT',\n lastDay: '[Ý~ést~érdá~ý át] LT',\n lastWeek: '[L~ást] dddd [át] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'í~ñ %s',\n past: '%s á~gó',\n s: 'á ~féw ~sécó~ñds',\n ss: '%d s~écóñ~ds',\n m: 'á ~míñ~úté',\n mm: '%d m~íñú~tés',\n h: 'á~ñ hó~úr',\n hh: '%d h~óúrs',\n d: 'á ~dáý',\n dd: '%d d~áýs',\n M: 'á ~móñ~th',\n MM: '%d m~óñt~hs',\n y: 'á ~ýéár',\n yy: '%d ý~éárs',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return xPseudo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Yoruba Nigeria [yo]\n//! author : Atolagbe Abisoye : https://github.com/andela-batolagbe\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var yo = moment.defineLocale('yo', {\n months: 'Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀'.split(\n '_'\n ),\n monthsShort: 'Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀'.split('_'),\n weekdays: 'Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta'.split('_'),\n weekdaysShort: 'Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá'.split('_'),\n weekdaysMin: 'Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Ònì ni] LT',\n nextDay: '[Ọ̀la ni] LT',\n nextWeek: \"dddd [Ọsẹ̀ tón'bọ] [ni] LT\",\n lastDay: '[Àna ni] LT',\n lastWeek: 'dddd [Ọsẹ̀ tólọ́] [ni] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ní %s',\n past: '%s kọjá',\n s: 'ìsẹjú aayá die',\n ss: 'aayá %d',\n m: 'ìsẹjú kan',\n mm: 'ìsẹjú %d',\n h: 'wákati kan',\n hh: 'wákati %d',\n d: 'ọjọ́ kan',\n dd: 'ọjọ́ %d',\n M: 'osù kan',\n MM: 'osù %d',\n y: 'ọdún kan',\n yy: 'ọdún %d',\n },\n dayOfMonthOrdinalParse: /ọjọ́\\s\\d{1,2}/,\n ordinal: 'ọjọ́ %d',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return yo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (China) [zh-cn]\n//! author : suupic : https://github.com/suupic\n//! author : Zeno Zeng : https://github.com/zenozeng\n//! author : uu109 : https://github.com/uu109\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhCn = moment.defineLocale('zh-cn', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '周日_周一_周二_周三_周四_周五_周六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日Ah点mm分',\n LLLL: 'YYYY年M月D日ddddAh点mm分',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n } else {\n // '中午'\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天]LT',\n nextDay: '[明天]LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n return '[下]dddLT';\n } else {\n return '[本]dddLT';\n }\n },\n lastDay: '[昨天]LT',\n lastWeek: function (now) {\n if (this.week() !== now.week()) {\n return '[上]dddLT';\n } else {\n return '[本]dddLT';\n }\n },\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|周)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '周';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s后',\n past: '%s前',\n s: '几秒',\n ss: '%d 秒',\n m: '1 分钟',\n mm: '%d 分钟',\n h: '1 小时',\n hh: '%d 小时',\n d: '1 天',\n dd: '%d 天',\n w: '1 周',\n ww: '%d 周',\n M: '1 个月',\n MM: '%d 个月',\n y: '1 年',\n yy: '%d 年',\n },\n week: {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return zhCn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Hong Kong) [zh-hk]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n//! author : Konstantin : https://github.com/skfd\n//! author : Anthony : https://github.com/anthonylau\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhHk = moment.defineLocale('zh-hk', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1200) {\n return '上午';\n } else if (hm === 1200) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天]LT',\n nextDay: '[明天]LT',\n nextWeek: '[下]ddddLT',\n lastDay: '[昨天]LT',\n lastWeek: '[上]ddddLT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n });\n\n return zhHk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Macau) [zh-mo]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n//! author : Tan Yuanhong : https://github.com/le0tan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhMo = moment.defineLocale('zh-mo', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'D/M/YYYY',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天] LT',\n nextDay: '[明天] LT',\n nextWeek: '[下]dddd LT',\n lastDay: '[昨天] LT',\n lastWeek: '[上]dddd LT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s內',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n });\n\n return zhMo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Taiwan) [zh-tw]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhTw = moment.defineLocale('zh-tw', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天] LT',\n nextDay: '[明天] LT',\n nextWeek: '[下]dddd LT',\n lastDay: '[昨天] LT',\n lastWeek: '[上]dddd LT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n });\n\n return zhTw;\n\n})));\n","//! moment.js\n//! version : 2.29.4\n//! authors : Tim Wood, Iskren Chernev, Moment.js contributors\n//! license : MIT\n//! momentjs.com\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n global.moment = factory()\n}(this, (function () { 'use strict';\n\n var hookCallback;\n\n function hooks() {\n return hookCallback.apply(null, arguments);\n }\n\n // This is done to register the method called with moment()\n // without creating circular dependencies.\n function setHookCallback(callback) {\n hookCallback = callback;\n }\n\n function isArray(input) {\n return (\n input instanceof Array ||\n Object.prototype.toString.call(input) === '[object Array]'\n );\n }\n\n function isObject(input) {\n // IE8 will treat undefined and null as object if it wasn't for\n // input != null\n return (\n input != null &&\n Object.prototype.toString.call(input) === '[object Object]'\n );\n }\n\n function hasOwnProp(a, b) {\n return Object.prototype.hasOwnProperty.call(a, b);\n }\n\n function isObjectEmpty(obj) {\n if (Object.getOwnPropertyNames) {\n return Object.getOwnPropertyNames(obj).length === 0;\n } else {\n var k;\n for (k in obj) {\n if (hasOwnProp(obj, k)) {\n return false;\n }\n }\n return true;\n }\n }\n\n function isUndefined(input) {\n return input === void 0;\n }\n\n function isNumber(input) {\n return (\n typeof input === 'number' ||\n Object.prototype.toString.call(input) === '[object Number]'\n );\n }\n\n function isDate(input) {\n return (\n input instanceof Date ||\n Object.prototype.toString.call(input) === '[object Date]'\n );\n }\n\n function map(arr, fn) {\n var res = [],\n i,\n arrLen = arr.length;\n for (i = 0; i < arrLen; ++i) {\n res.push(fn(arr[i], i));\n }\n return res;\n }\n\n function extend(a, b) {\n for (var i in b) {\n if (hasOwnProp(b, i)) {\n a[i] = b[i];\n }\n }\n\n if (hasOwnProp(b, 'toString')) {\n a.toString = b.toString;\n }\n\n if (hasOwnProp(b, 'valueOf')) {\n a.valueOf = b.valueOf;\n }\n\n return a;\n }\n\n function createUTC(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, true).utc();\n }\n\n function defaultParsingFlags() {\n // We need to deep clone this object.\n return {\n empty: false,\n unusedTokens: [],\n unusedInput: [],\n overflow: -2,\n charsLeftOver: 0,\n nullInput: false,\n invalidEra: null,\n invalidMonth: null,\n invalidFormat: false,\n userInvalidated: false,\n iso: false,\n parsedDateParts: [],\n era: null,\n meridiem: null,\n rfc2822: false,\n weekdayMismatch: false,\n };\n }\n\n function getParsingFlags(m) {\n if (m._pf == null) {\n m._pf = defaultParsingFlags();\n }\n return m._pf;\n }\n\n var some;\n if (Array.prototype.some) {\n some = Array.prototype.some;\n } else {\n some = function (fun) {\n var t = Object(this),\n len = t.length >>> 0,\n i;\n\n for (i = 0; i < len; i++) {\n if (i in t && fun.call(this, t[i], i, t)) {\n return true;\n }\n }\n\n return false;\n };\n }\n\n function isValid(m) {\n if (m._isValid == null) {\n var flags = getParsingFlags(m),\n parsedParts = some.call(flags.parsedDateParts, function (i) {\n return i != null;\n }),\n isNowValid =\n !isNaN(m._d.getTime()) &&\n flags.overflow < 0 &&\n !flags.empty &&\n !flags.invalidEra &&\n !flags.invalidMonth &&\n !flags.invalidWeekday &&\n !flags.weekdayMismatch &&\n !flags.nullInput &&\n !flags.invalidFormat &&\n !flags.userInvalidated &&\n (!flags.meridiem || (flags.meridiem && parsedParts));\n\n if (m._strict) {\n isNowValid =\n isNowValid &&\n flags.charsLeftOver === 0 &&\n flags.unusedTokens.length === 0 &&\n flags.bigHour === undefined;\n }\n\n if (Object.isFrozen == null || !Object.isFrozen(m)) {\n m._isValid = isNowValid;\n } else {\n return isNowValid;\n }\n }\n return m._isValid;\n }\n\n function createInvalid(flags) {\n var m = createUTC(NaN);\n if (flags != null) {\n extend(getParsingFlags(m), flags);\n } else {\n getParsingFlags(m).userInvalidated = true;\n }\n\n return m;\n }\n\n // Plugins that add properties should also add the key here (null value),\n // so we can properly clone ourselves.\n var momentProperties = (hooks.momentProperties = []),\n updateInProgress = false;\n\n function copyConfig(to, from) {\n var i,\n prop,\n val,\n momentPropertiesLen = momentProperties.length;\n\n if (!isUndefined(from._isAMomentObject)) {\n to._isAMomentObject = from._isAMomentObject;\n }\n if (!isUndefined(from._i)) {\n to._i = from._i;\n }\n if (!isUndefined(from._f)) {\n to._f = from._f;\n }\n if (!isUndefined(from._l)) {\n to._l = from._l;\n }\n if (!isUndefined(from._strict)) {\n to._strict = from._strict;\n }\n if (!isUndefined(from._tzm)) {\n to._tzm = from._tzm;\n }\n if (!isUndefined(from._isUTC)) {\n to._isUTC = from._isUTC;\n }\n if (!isUndefined(from._offset)) {\n to._offset = from._offset;\n }\n if (!isUndefined(from._pf)) {\n to._pf = getParsingFlags(from);\n }\n if (!isUndefined(from._locale)) {\n to._locale = from._locale;\n }\n\n if (momentPropertiesLen > 0) {\n for (i = 0; i < momentPropertiesLen; i++) {\n prop = momentProperties[i];\n val = from[prop];\n if (!isUndefined(val)) {\n to[prop] = val;\n }\n }\n }\n\n return to;\n }\n\n // Moment prototype object\n function Moment(config) {\n copyConfig(this, config);\n this._d = new Date(config._d != null ? config._d.getTime() : NaN);\n if (!this.isValid()) {\n this._d = new Date(NaN);\n }\n // Prevent infinite loop in case updateOffset creates new moment\n // objects.\n if (updateInProgress === false) {\n updateInProgress = true;\n hooks.updateOffset(this);\n updateInProgress = false;\n }\n }\n\n function isMoment(obj) {\n return (\n obj instanceof Moment || (obj != null && obj._isAMomentObject != null)\n );\n }\n\n function warn(msg) {\n if (\n hooks.suppressDeprecationWarnings === false &&\n typeof console !== 'undefined' &&\n console.warn\n ) {\n console.warn('Deprecation warning: ' + msg);\n }\n }\n\n function deprecate(msg, fn) {\n var firstTime = true;\n\n return extend(function () {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(null, msg);\n }\n if (firstTime) {\n var args = [],\n arg,\n i,\n key,\n argLen = arguments.length;\n for (i = 0; i < argLen; i++) {\n arg = '';\n if (typeof arguments[i] === 'object') {\n arg += '\\n[' + i + '] ';\n for (key in arguments[0]) {\n if (hasOwnProp(arguments[0], key)) {\n arg += key + ': ' + arguments[0][key] + ', ';\n }\n }\n arg = arg.slice(0, -2); // Remove trailing comma and space\n } else {\n arg = arguments[i];\n }\n args.push(arg);\n }\n warn(\n msg +\n '\\nArguments: ' +\n Array.prototype.slice.call(args).join('') +\n '\\n' +\n new Error().stack\n );\n firstTime = false;\n }\n return fn.apply(this, arguments);\n }, fn);\n }\n\n var deprecations = {};\n\n function deprecateSimple(name, msg) {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(name, msg);\n }\n if (!deprecations[name]) {\n warn(msg);\n deprecations[name] = true;\n }\n }\n\n hooks.suppressDeprecationWarnings = false;\n hooks.deprecationHandler = null;\n\n function isFunction(input) {\n return (\n (typeof Function !== 'undefined' && input instanceof Function) ||\n Object.prototype.toString.call(input) === '[object Function]'\n );\n }\n\n function set(config) {\n var prop, i;\n for (i in config) {\n if (hasOwnProp(config, i)) {\n prop = config[i];\n if (isFunction(prop)) {\n this[i] = prop;\n } else {\n this['_' + i] = prop;\n }\n }\n }\n this._config = config;\n // Lenient ordinal parsing accepts just a number in addition to\n // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n this._dayOfMonthOrdinalParseLenient = new RegExp(\n (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +\n '|' +\n /\\d{1,2}/.source\n );\n }\n\n function mergeConfigs(parentConfig, childConfig) {\n var res = extend({}, parentConfig),\n prop;\n for (prop in childConfig) {\n if (hasOwnProp(childConfig, prop)) {\n if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {\n res[prop] = {};\n extend(res[prop], parentConfig[prop]);\n extend(res[prop], childConfig[prop]);\n } else if (childConfig[prop] != null) {\n res[prop] = childConfig[prop];\n } else {\n delete res[prop];\n }\n }\n }\n for (prop in parentConfig) {\n if (\n hasOwnProp(parentConfig, prop) &&\n !hasOwnProp(childConfig, prop) &&\n isObject(parentConfig[prop])\n ) {\n // make sure changes to properties don't modify parent config\n res[prop] = extend({}, res[prop]);\n }\n }\n return res;\n }\n\n function Locale(config) {\n if (config != null) {\n this.set(config);\n }\n }\n\n var keys;\n\n if (Object.keys) {\n keys = Object.keys;\n } else {\n keys = function (obj) {\n var i,\n res = [];\n for (i in obj) {\n if (hasOwnProp(obj, i)) {\n res.push(i);\n }\n }\n return res;\n };\n }\n\n var defaultCalendar = {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n };\n\n function calendar(key, mom, now) {\n var output = this._calendar[key] || this._calendar['sameElse'];\n return isFunction(output) ? output.call(mom, now) : output;\n }\n\n function zeroFill(number, targetLength, forceSign) {\n var absNumber = '' + Math.abs(number),\n zerosToFill = targetLength - absNumber.length,\n sign = number >= 0;\n return (\n (sign ? (forceSign ? '+' : '') : '-') +\n Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) +\n absNumber\n );\n }\n\n var formattingTokens =\n /(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,\n localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g,\n formatFunctions = {},\n formatTokenFunctions = {};\n\n // token: 'M'\n // padded: ['MM', 2]\n // ordinal: 'Mo'\n // callback: function () { this.month() + 1 }\n function addFormatToken(token, padded, ordinal, callback) {\n var func = callback;\n if (typeof callback === 'string') {\n func = function () {\n return this[callback]();\n };\n }\n if (token) {\n formatTokenFunctions[token] = func;\n }\n if (padded) {\n formatTokenFunctions[padded[0]] = function () {\n return zeroFill(func.apply(this, arguments), padded[1], padded[2]);\n };\n }\n if (ordinal) {\n formatTokenFunctions[ordinal] = function () {\n return this.localeData().ordinal(\n func.apply(this, arguments),\n token\n );\n };\n }\n }\n\n function removeFormattingTokens(input) {\n if (input.match(/\\[[\\s\\S]/)) {\n return input.replace(/^\\[|\\]$/g, '');\n }\n return input.replace(/\\\\/g, '');\n }\n\n function makeFormatFunction(format) {\n var array = format.match(formattingTokens),\n i,\n length;\n\n for (i = 0, length = array.length; i < length; i++) {\n if (formatTokenFunctions[array[i]]) {\n array[i] = formatTokenFunctions[array[i]];\n } else {\n array[i] = removeFormattingTokens(array[i]);\n }\n }\n\n return function (mom) {\n var output = '',\n i;\n for (i = 0; i < length; i++) {\n output += isFunction(array[i])\n ? array[i].call(mom, format)\n : array[i];\n }\n return output;\n };\n }\n\n // format date using native date object\n function formatMoment(m, format) {\n if (!m.isValid()) {\n return m.localeData().invalidDate();\n }\n\n format = expandFormat(format, m.localeData());\n formatFunctions[format] =\n formatFunctions[format] || makeFormatFunction(format);\n\n return formatFunctions[format](m);\n }\n\n function expandFormat(format, locale) {\n var i = 5;\n\n function replaceLongDateFormatTokens(input) {\n return locale.longDateFormat(input) || input;\n }\n\n localFormattingTokens.lastIndex = 0;\n while (i >= 0 && localFormattingTokens.test(format)) {\n format = format.replace(\n localFormattingTokens,\n replaceLongDateFormatTokens\n );\n localFormattingTokens.lastIndex = 0;\n i -= 1;\n }\n\n return format;\n }\n\n var defaultLongDateFormat = {\n LTS: 'h:mm:ss A',\n LT: 'h:mm A',\n L: 'MM/DD/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A',\n };\n\n function longDateFormat(key) {\n var format = this._longDateFormat[key],\n formatUpper = this._longDateFormat[key.toUpperCase()];\n\n if (format || !formatUpper) {\n return format;\n }\n\n this._longDateFormat[key] = formatUpper\n .match(formattingTokens)\n .map(function (tok) {\n if (\n tok === 'MMMM' ||\n tok === 'MM' ||\n tok === 'DD' ||\n tok === 'dddd'\n ) {\n return tok.slice(1);\n }\n return tok;\n })\n .join('');\n\n return this._longDateFormat[key];\n }\n\n var defaultInvalidDate = 'Invalid date';\n\n function invalidDate() {\n return this._invalidDate;\n }\n\n var defaultOrdinal = '%d',\n defaultDayOfMonthOrdinalParse = /\\d{1,2}/;\n\n function ordinal(number) {\n return this._ordinal.replace('%d', number);\n }\n\n var defaultRelativeTime = {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n w: 'a week',\n ww: '%d weeks',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n };\n\n function relativeTime(number, withoutSuffix, string, isFuture) {\n var output = this._relativeTime[string];\n return isFunction(output)\n ? output(number, withoutSuffix, string, isFuture)\n : output.replace(/%d/i, number);\n }\n\n function pastFuture(diff, output) {\n var format = this._relativeTime[diff > 0 ? 'future' : 'past'];\n return isFunction(format) ? format(output) : format.replace(/%s/i, output);\n }\n\n var aliases = {};\n\n function addUnitAlias(unit, shorthand) {\n var lowerCase = unit.toLowerCase();\n aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;\n }\n\n function normalizeUnits(units) {\n return typeof units === 'string'\n ? aliases[units] || aliases[units.toLowerCase()]\n : undefined;\n }\n\n function normalizeObjectUnits(inputObject) {\n var normalizedInput = {},\n normalizedProp,\n prop;\n\n for (prop in inputObject) {\n if (hasOwnProp(inputObject, prop)) {\n normalizedProp = normalizeUnits(prop);\n if (normalizedProp) {\n normalizedInput[normalizedProp] = inputObject[prop];\n }\n }\n }\n\n return normalizedInput;\n }\n\n var priorities = {};\n\n function addUnitPriority(unit, priority) {\n priorities[unit] = priority;\n }\n\n function getPrioritizedUnits(unitsObj) {\n var units = [],\n u;\n for (u in unitsObj) {\n if (hasOwnProp(unitsObj, u)) {\n units.push({ unit: u, priority: priorities[u] });\n }\n }\n units.sort(function (a, b) {\n return a.priority - b.priority;\n });\n return units;\n }\n\n function isLeapYear(year) {\n return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n }\n\n function absFloor(number) {\n if (number < 0) {\n // -0 -> 0\n return Math.ceil(number) || 0;\n } else {\n return Math.floor(number);\n }\n }\n\n function toInt(argumentForCoercion) {\n var coercedNumber = +argumentForCoercion,\n value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n }\n\n function makeGetSet(unit, keepTime) {\n return function (value) {\n if (value != null) {\n set$1(this, unit, value);\n hooks.updateOffset(this, keepTime);\n return this;\n } else {\n return get(this, unit);\n }\n };\n }\n\n function get(mom, unit) {\n return mom.isValid()\n ? mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]()\n : NaN;\n }\n\n function set$1(mom, unit, value) {\n if (mom.isValid() && !isNaN(value)) {\n if (\n unit === 'FullYear' &&\n isLeapYear(mom.year()) &&\n mom.month() === 1 &&\n mom.date() === 29\n ) {\n value = toInt(value);\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](\n value,\n mom.month(),\n daysInMonth(value, mom.month())\n );\n } else {\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);\n }\n }\n }\n\n // MOMENTS\n\n function stringGet(units) {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units]();\n }\n return this;\n }\n\n function stringSet(units, value) {\n if (typeof units === 'object') {\n units = normalizeObjectUnits(units);\n var prioritized = getPrioritizedUnits(units),\n i,\n prioritizedLen = prioritized.length;\n for (i = 0; i < prioritizedLen; i++) {\n this[prioritized[i].unit](units[prioritized[i].unit]);\n }\n } else {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units](value);\n }\n }\n return this;\n }\n\n var match1 = /\\d/, // 0 - 9\n match2 = /\\d\\d/, // 00 - 99\n match3 = /\\d{3}/, // 000 - 999\n match4 = /\\d{4}/, // 0000 - 9999\n match6 = /[+-]?\\d{6}/, // -999999 - 999999\n match1to2 = /\\d\\d?/, // 0 - 99\n match3to4 = /\\d\\d\\d\\d?/, // 999 - 9999\n match5to6 = /\\d\\d\\d\\d\\d\\d?/, // 99999 - 999999\n match1to3 = /\\d{1,3}/, // 0 - 999\n match1to4 = /\\d{1,4}/, // 0 - 9999\n match1to6 = /[+-]?\\d{1,6}/, // -999999 - 999999\n matchUnsigned = /\\d+/, // 0 - inf\n matchSigned = /[+-]?\\d+/, // -inf - inf\n matchOffset = /Z|[+-]\\d\\d:?\\d\\d/gi, // +00:00 -00:00 +0000 -0000 or Z\n matchShortOffset = /Z|[+-]\\d\\d(?::?\\d\\d)?/gi, // +00 -00 +00:00 -00:00 +0000 -0000 or Z\n matchTimestamp = /[+-]?\\d+(\\.\\d{1,3})?/, // 123456789 123456789.123\n // any word (or two) characters or numbers including two/three word month in arabic.\n // includes scottish gaelic two word and hyphenated months\n matchWord =\n /[0-9]{0,256}['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFF07\\uFF10-\\uFFEF]{1,256}|[\\u0600-\\u06FF\\/]{1,256}(\\s*?[\\u0600-\\u06FF]{1,256}){1,2}/i,\n regexes;\n\n regexes = {};\n\n function addRegexToken(token, regex, strictRegex) {\n regexes[token] = isFunction(regex)\n ? regex\n : function (isStrict, localeData) {\n return isStrict && strictRegex ? strictRegex : regex;\n };\n }\n\n function getParseRegexForToken(token, config) {\n if (!hasOwnProp(regexes, token)) {\n return new RegExp(unescapeFormat(token));\n }\n\n return regexes[token](config._strict, config._locale);\n }\n\n // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript\n function unescapeFormat(s) {\n return regexEscape(\n s\n .replace('\\\\', '')\n .replace(\n /\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,\n function (matched, p1, p2, p3, p4) {\n return p1 || p2 || p3 || p4;\n }\n )\n );\n }\n\n function regexEscape(s) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n }\n\n var tokens = {};\n\n function addParseToken(token, callback) {\n var i,\n func = callback,\n tokenLen;\n if (typeof token === 'string') {\n token = [token];\n }\n if (isNumber(callback)) {\n func = function (input, array) {\n array[callback] = toInt(input);\n };\n }\n tokenLen = token.length;\n for (i = 0; i < tokenLen; i++) {\n tokens[token[i]] = func;\n }\n }\n\n function addWeekParseToken(token, callback) {\n addParseToken(token, function (input, array, config, token) {\n config._w = config._w || {};\n callback(input, config._w, config, token);\n });\n }\n\n function addTimeToArrayFromToken(token, input, config) {\n if (input != null && hasOwnProp(tokens, token)) {\n tokens[token](input, config._a, config, token);\n }\n }\n\n var YEAR = 0,\n MONTH = 1,\n DATE = 2,\n HOUR = 3,\n MINUTE = 4,\n SECOND = 5,\n MILLISECOND = 6,\n WEEK = 7,\n WEEKDAY = 8;\n\n function mod(n, x) {\n return ((n % x) + x) % x;\n }\n\n var indexOf;\n\n if (Array.prototype.indexOf) {\n indexOf = Array.prototype.indexOf;\n } else {\n indexOf = function (o) {\n // I know\n var i;\n for (i = 0; i < this.length; ++i) {\n if (this[i] === o) {\n return i;\n }\n }\n return -1;\n };\n }\n\n function daysInMonth(year, month) {\n if (isNaN(year) || isNaN(month)) {\n return NaN;\n }\n var modMonth = mod(month, 12);\n year += (month - modMonth) / 12;\n return modMonth === 1\n ? isLeapYear(year)\n ? 29\n : 28\n : 31 - ((modMonth % 7) % 2);\n }\n\n // FORMATTING\n\n addFormatToken('M', ['MM', 2], 'Mo', function () {\n return this.month() + 1;\n });\n\n addFormatToken('MMM', 0, 0, function (format) {\n return this.localeData().monthsShort(this, format);\n });\n\n addFormatToken('MMMM', 0, 0, function (format) {\n return this.localeData().months(this, format);\n });\n\n // ALIASES\n\n addUnitAlias('month', 'M');\n\n // PRIORITY\n\n addUnitPriority('month', 8);\n\n // PARSING\n\n addRegexToken('M', match1to2);\n addRegexToken('MM', match1to2, match2);\n addRegexToken('MMM', function (isStrict, locale) {\n return locale.monthsShortRegex(isStrict);\n });\n addRegexToken('MMMM', function (isStrict, locale) {\n return locale.monthsRegex(isStrict);\n });\n\n addParseToken(['M', 'MM'], function (input, array) {\n array[MONTH] = toInt(input) - 1;\n });\n\n addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {\n var month = config._locale.monthsParse(input, token, config._strict);\n // if we didn't find a month name, mark the date as invalid.\n if (month != null) {\n array[MONTH] = month;\n } else {\n getParsingFlags(config).invalidMonth = input;\n }\n });\n\n // LOCALES\n\n var defaultLocaleMonths =\n 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n defaultLocaleMonthsShort =\n 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n MONTHS_IN_FORMAT = /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/,\n defaultMonthsShortRegex = matchWord,\n defaultMonthsRegex = matchWord;\n\n function localeMonths(m, format) {\n if (!m) {\n return isArray(this._months)\n ? this._months\n : this._months['standalone'];\n }\n return isArray(this._months)\n ? this._months[m.month()]\n : this._months[\n (this._months.isFormat || MONTHS_IN_FORMAT).test(format)\n ? 'format'\n : 'standalone'\n ][m.month()];\n }\n\n function localeMonthsShort(m, format) {\n if (!m) {\n return isArray(this._monthsShort)\n ? this._monthsShort\n : this._monthsShort['standalone'];\n }\n return isArray(this._monthsShort)\n ? this._monthsShort[m.month()]\n : this._monthsShort[\n MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'\n ][m.month()];\n }\n\n function handleStrictParse(monthName, format, strict) {\n var i,\n ii,\n mom,\n llc = monthName.toLocaleLowerCase();\n if (!this._monthsParse) {\n // this is not used\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n for (i = 0; i < 12; ++i) {\n mom = createUTC([2000, i]);\n this._shortMonthsParse[i] = this.monthsShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeMonthsParse(monthName, format, strict) {\n var i, mom, regex;\n\n if (this._monthsParseExact) {\n return handleStrictParse.call(this, monthName, format, strict);\n }\n\n if (!this._monthsParse) {\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n }\n\n // TODO: add sorting\n // Sorting makes sure if one month (or abbr) is a prefix of another\n // see sorting in computeMonthsParse\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n if (strict && !this._longMonthsParse[i]) {\n this._longMonthsParse[i] = new RegExp(\n '^' + this.months(mom, '').replace('.', '') + '$',\n 'i'\n );\n this._shortMonthsParse[i] = new RegExp(\n '^' + this.monthsShort(mom, '').replace('.', '') + '$',\n 'i'\n );\n }\n if (!strict && !this._monthsParse[i]) {\n regex =\n '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');\n this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'MMMM' &&\n this._longMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'MMM' &&\n this._shortMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (!strict && this._monthsParse[i].test(monthName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function setMonth(mom, value) {\n var dayOfMonth;\n\n if (!mom.isValid()) {\n // No op\n return mom;\n }\n\n if (typeof value === 'string') {\n if (/^\\d+$/.test(value)) {\n value = toInt(value);\n } else {\n value = mom.localeData().monthsParse(value);\n // TODO: Another silent failure?\n if (!isNumber(value)) {\n return mom;\n }\n }\n }\n\n dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);\n return mom;\n }\n\n function getSetMonth(value) {\n if (value != null) {\n setMonth(this, value);\n hooks.updateOffset(this, true);\n return this;\n } else {\n return get(this, 'Month');\n }\n }\n\n function getDaysInMonth() {\n return daysInMonth(this.year(), this.month());\n }\n\n function monthsShortRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsShortStrictRegex;\n } else {\n return this._monthsShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsShortRegex')) {\n this._monthsShortRegex = defaultMonthsShortRegex;\n }\n return this._monthsShortStrictRegex && isStrict\n ? this._monthsShortStrictRegex\n : this._monthsShortRegex;\n }\n }\n\n function monthsRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsStrictRegex;\n } else {\n return this._monthsRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsRegex')) {\n this._monthsRegex = defaultMonthsRegex;\n }\n return this._monthsStrictRegex && isStrict\n ? this._monthsStrictRegex\n : this._monthsRegex;\n }\n }\n\n function computeMonthsParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom;\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n shortPieces.push(this.monthsShort(mom, ''));\n longPieces.push(this.months(mom, ''));\n mixedPieces.push(this.months(mom, ''));\n mixedPieces.push(this.monthsShort(mom, ''));\n }\n // Sorting makes sure if one month (or abbr) is a prefix of another it\n // will match the longer piece.\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 12; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n }\n for (i = 0; i < 24; i++) {\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._monthsShortRegex = this._monthsRegex;\n this._monthsStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._monthsShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n addFormatToken('Y', 0, 0, function () {\n var y = this.year();\n return y <= 9999 ? zeroFill(y, 4) : '+' + y;\n });\n\n addFormatToken(0, ['YY', 2], 0, function () {\n return this.year() % 100;\n });\n\n addFormatToken(0, ['YYYY', 4], 0, 'year');\n addFormatToken(0, ['YYYYY', 5], 0, 'year');\n addFormatToken(0, ['YYYYYY', 6, true], 0, 'year');\n\n // ALIASES\n\n addUnitAlias('year', 'y');\n\n // PRIORITIES\n\n addUnitPriority('year', 1);\n\n // PARSING\n\n addRegexToken('Y', matchSigned);\n addRegexToken('YY', match1to2, match2);\n addRegexToken('YYYY', match1to4, match4);\n addRegexToken('YYYYY', match1to6, match6);\n addRegexToken('YYYYYY', match1to6, match6);\n\n addParseToken(['YYYYY', 'YYYYYY'], YEAR);\n addParseToken('YYYY', function (input, array) {\n array[YEAR] =\n input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);\n });\n addParseToken('YY', function (input, array) {\n array[YEAR] = hooks.parseTwoDigitYear(input);\n });\n addParseToken('Y', function (input, array) {\n array[YEAR] = parseInt(input, 10);\n });\n\n // HELPERS\n\n function daysInYear(year) {\n return isLeapYear(year) ? 366 : 365;\n }\n\n // HOOKS\n\n hooks.parseTwoDigitYear = function (input) {\n return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);\n };\n\n // MOMENTS\n\n var getSetYear = makeGetSet('FullYear', true);\n\n function getIsLeapYear() {\n return isLeapYear(this.year());\n }\n\n function createDate(y, m, d, h, M, s, ms) {\n // can't just apply() to create a date:\n // https://stackoverflow.com/q/181348\n var date;\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n date = new Date(y + 400, m, d, h, M, s, ms);\n if (isFinite(date.getFullYear())) {\n date.setFullYear(y);\n }\n } else {\n date = new Date(y, m, d, h, M, s, ms);\n }\n\n return date;\n }\n\n function createUTCDate(y) {\n var date, args;\n // the Date.UTC function remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n args = Array.prototype.slice.call(arguments);\n // preserve leap years using a full 400 year cycle, then reset\n args[0] = y + 400;\n date = new Date(Date.UTC.apply(null, args));\n if (isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n } else {\n date = new Date(Date.UTC.apply(null, arguments));\n }\n\n return date;\n }\n\n // start-of-first-week - start-of-year\n function firstWeekOffset(year, dow, doy) {\n var // first-week day -- which january is always in the first week (4 for iso, 1 for other)\n fwd = 7 + dow - doy,\n // first-week day local weekday -- which local weekday is fwd\n fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;\n\n return -fwdlw + fwd - 1;\n }\n\n // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\n function dayOfYearFromWeeks(year, week, weekday, dow, doy) {\n var localWeekday = (7 + weekday - dow) % 7,\n weekOffset = firstWeekOffset(year, dow, doy),\n dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,\n resYear,\n resDayOfYear;\n\n if (dayOfYear <= 0) {\n resYear = year - 1;\n resDayOfYear = daysInYear(resYear) + dayOfYear;\n } else if (dayOfYear > daysInYear(year)) {\n resYear = year + 1;\n resDayOfYear = dayOfYear - daysInYear(year);\n } else {\n resYear = year;\n resDayOfYear = dayOfYear;\n }\n\n return {\n year: resYear,\n dayOfYear: resDayOfYear,\n };\n }\n\n function weekOfYear(mom, dow, doy) {\n var weekOffset = firstWeekOffset(mom.year(), dow, doy),\n week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,\n resWeek,\n resYear;\n\n if (week < 1) {\n resYear = mom.year() - 1;\n resWeek = week + weeksInYear(resYear, dow, doy);\n } else if (week > weeksInYear(mom.year(), dow, doy)) {\n resWeek = week - weeksInYear(mom.year(), dow, doy);\n resYear = mom.year() + 1;\n } else {\n resYear = mom.year();\n resWeek = week;\n }\n\n return {\n week: resWeek,\n year: resYear,\n };\n }\n\n function weeksInYear(year, dow, doy) {\n var weekOffset = firstWeekOffset(year, dow, doy),\n weekOffsetNext = firstWeekOffset(year + 1, dow, doy);\n return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;\n }\n\n // FORMATTING\n\n addFormatToken('w', ['ww', 2], 'wo', 'week');\n addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');\n\n // ALIASES\n\n addUnitAlias('week', 'w');\n addUnitAlias('isoWeek', 'W');\n\n // PRIORITIES\n\n addUnitPriority('week', 5);\n addUnitPriority('isoWeek', 5);\n\n // PARSING\n\n addRegexToken('w', match1to2);\n addRegexToken('ww', match1to2, match2);\n addRegexToken('W', match1to2);\n addRegexToken('WW', match1to2, match2);\n\n addWeekParseToken(\n ['w', 'ww', 'W', 'WW'],\n function (input, week, config, token) {\n week[token.substr(0, 1)] = toInt(input);\n }\n );\n\n // HELPERS\n\n // LOCALES\n\n function localeWeek(mom) {\n return weekOfYear(mom, this._week.dow, this._week.doy).week;\n }\n\n var defaultLocaleWeek = {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n };\n\n function localeFirstDayOfWeek() {\n return this._week.dow;\n }\n\n function localeFirstDayOfYear() {\n return this._week.doy;\n }\n\n // MOMENTS\n\n function getSetWeek(input) {\n var week = this.localeData().week(this);\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n function getSetISOWeek(input) {\n var week = weekOfYear(this, 1, 4).week;\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('d', 0, 'do', 'day');\n\n addFormatToken('dd', 0, 0, function (format) {\n return this.localeData().weekdaysMin(this, format);\n });\n\n addFormatToken('ddd', 0, 0, function (format) {\n return this.localeData().weekdaysShort(this, format);\n });\n\n addFormatToken('dddd', 0, 0, function (format) {\n return this.localeData().weekdays(this, format);\n });\n\n addFormatToken('e', 0, 0, 'weekday');\n addFormatToken('E', 0, 0, 'isoWeekday');\n\n // ALIASES\n\n addUnitAlias('day', 'd');\n addUnitAlias('weekday', 'e');\n addUnitAlias('isoWeekday', 'E');\n\n // PRIORITY\n addUnitPriority('day', 11);\n addUnitPriority('weekday', 11);\n addUnitPriority('isoWeekday', 11);\n\n // PARSING\n\n addRegexToken('d', match1to2);\n addRegexToken('e', match1to2);\n addRegexToken('E', match1to2);\n addRegexToken('dd', function (isStrict, locale) {\n return locale.weekdaysMinRegex(isStrict);\n });\n addRegexToken('ddd', function (isStrict, locale) {\n return locale.weekdaysShortRegex(isStrict);\n });\n addRegexToken('dddd', function (isStrict, locale) {\n return locale.weekdaysRegex(isStrict);\n });\n\n addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {\n var weekday = config._locale.weekdaysParse(input, token, config._strict);\n // if we didn't get a weekday name, mark the date as invalid\n if (weekday != null) {\n week.d = weekday;\n } else {\n getParsingFlags(config).invalidWeekday = input;\n }\n });\n\n addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {\n week[token] = toInt(input);\n });\n\n // HELPERS\n\n function parseWeekday(input, locale) {\n if (typeof input !== 'string') {\n return input;\n }\n\n if (!isNaN(input)) {\n return parseInt(input, 10);\n }\n\n input = locale.weekdaysParse(input);\n if (typeof input === 'number') {\n return input;\n }\n\n return null;\n }\n\n function parseIsoWeekday(input, locale) {\n if (typeof input === 'string') {\n return locale.weekdaysParse(input) % 7 || 7;\n }\n return isNaN(input) ? null : input;\n }\n\n // LOCALES\n function shiftWeekdays(ws, n) {\n return ws.slice(n, 7).concat(ws.slice(0, n));\n }\n\n var defaultLocaleWeekdays =\n 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n defaultWeekdaysRegex = matchWord,\n defaultWeekdaysShortRegex = matchWord,\n defaultWeekdaysMinRegex = matchWord;\n\n function localeWeekdays(m, format) {\n var weekdays = isArray(this._weekdays)\n ? this._weekdays\n : this._weekdays[\n m && m !== true && this._weekdays.isFormat.test(format)\n ? 'format'\n : 'standalone'\n ];\n return m === true\n ? shiftWeekdays(weekdays, this._week.dow)\n : m\n ? weekdays[m.day()]\n : weekdays;\n }\n\n function localeWeekdaysShort(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysShort, this._week.dow)\n : m\n ? this._weekdaysShort[m.day()]\n : this._weekdaysShort;\n }\n\n function localeWeekdaysMin(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysMin, this._week.dow)\n : m\n ? this._weekdaysMin[m.day()]\n : this._weekdaysMin;\n }\n\n function handleStrictParse$1(weekdayName, format, strict) {\n var i,\n ii,\n mom,\n llc = weekdayName.toLocaleLowerCase();\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._minWeekdaysParse = [];\n\n for (i = 0; i < 7; ++i) {\n mom = createUTC([2000, 1]).day(i);\n this._minWeekdaysParse[i] = this.weekdaysMin(\n mom,\n ''\n ).toLocaleLowerCase();\n this._shortWeekdaysParse[i] = this.weekdaysShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeWeekdaysParse(weekdayName, format, strict) {\n var i, mom, regex;\n\n if (this._weekdaysParseExact) {\n return handleStrictParse$1.call(this, weekdayName, format, strict);\n }\n\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._minWeekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._fullWeekdaysParse = [];\n }\n\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n\n mom = createUTC([2000, 1]).day(i);\n if (strict && !this._fullWeekdaysParse[i]) {\n this._fullWeekdaysParse[i] = new RegExp(\n '^' + this.weekdays(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._shortWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysShort(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._minWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysMin(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n }\n if (!this._weekdaysParse[i]) {\n regex =\n '^' +\n this.weekdays(mom, '') +\n '|^' +\n this.weekdaysShort(mom, '') +\n '|^' +\n this.weekdaysMin(mom, '');\n this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'dddd' &&\n this._fullWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'ddd' &&\n this._shortWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'dd' &&\n this._minWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function getSetDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();\n if (input != null) {\n input = parseWeekday(input, this.localeData());\n return this.add(input - day, 'd');\n } else {\n return day;\n }\n }\n\n function getSetLocaleDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;\n return input == null ? weekday : this.add(input - weekday, 'd');\n }\n\n function getSetISODayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n\n // behaves the same as moment#day except\n // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)\n // as a setter, sunday should belong to the previous week.\n\n if (input != null) {\n var weekday = parseIsoWeekday(input, this.localeData());\n return this.day(this.day() % 7 ? weekday : weekday - 7);\n } else {\n return this.day() || 7;\n }\n }\n\n function weekdaysRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysStrictRegex;\n } else {\n return this._weekdaysRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n this._weekdaysRegex = defaultWeekdaysRegex;\n }\n return this._weekdaysStrictRegex && isStrict\n ? this._weekdaysStrictRegex\n : this._weekdaysRegex;\n }\n }\n\n function weekdaysShortRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysShortStrictRegex;\n } else {\n return this._weekdaysShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysShortRegex')) {\n this._weekdaysShortRegex = defaultWeekdaysShortRegex;\n }\n return this._weekdaysShortStrictRegex && isStrict\n ? this._weekdaysShortStrictRegex\n : this._weekdaysShortRegex;\n }\n }\n\n function weekdaysMinRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysMinStrictRegex;\n } else {\n return this._weekdaysMinRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysMinRegex')) {\n this._weekdaysMinRegex = defaultWeekdaysMinRegex;\n }\n return this._weekdaysMinStrictRegex && isStrict\n ? this._weekdaysMinStrictRegex\n : this._weekdaysMinRegex;\n }\n }\n\n function computeWeekdaysParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var minPieces = [],\n shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom,\n minp,\n shortp,\n longp;\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, 1]).day(i);\n minp = regexEscape(this.weekdaysMin(mom, ''));\n shortp = regexEscape(this.weekdaysShort(mom, ''));\n longp = regexEscape(this.weekdays(mom, ''));\n minPieces.push(minp);\n shortPieces.push(shortp);\n longPieces.push(longp);\n mixedPieces.push(minp);\n mixedPieces.push(shortp);\n mixedPieces.push(longp);\n }\n // Sorting makes sure if one weekday (or abbr) is a prefix of another it\n // will match the longer piece.\n minPieces.sort(cmpLenRev);\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n\n this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._weekdaysShortRegex = this._weekdaysRegex;\n this._weekdaysMinRegex = this._weekdaysRegex;\n\n this._weekdaysStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysMinStrictRegex = new RegExp(\n '^(' + minPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n function hFormat() {\n return this.hours() % 12 || 12;\n }\n\n function kFormat() {\n return this.hours() || 24;\n }\n\n addFormatToken('H', ['HH', 2], 0, 'hour');\n addFormatToken('h', ['hh', 2], 0, hFormat);\n addFormatToken('k', ['kk', 2], 0, kFormat);\n\n addFormatToken('hmm', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('hmmss', 0, 0, function () {\n return (\n '' +\n hFormat.apply(this) +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n });\n\n addFormatToken('Hmm', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('Hmmss', 0, 0, function () {\n return (\n '' +\n this.hours() +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n });\n\n function meridiem(token, lowercase) {\n addFormatToken(token, 0, 0, function () {\n return this.localeData().meridiem(\n this.hours(),\n this.minutes(),\n lowercase\n );\n });\n }\n\n meridiem('a', true);\n meridiem('A', false);\n\n // ALIASES\n\n addUnitAlias('hour', 'h');\n\n // PRIORITY\n addUnitPriority('hour', 13);\n\n // PARSING\n\n function matchMeridiem(isStrict, locale) {\n return locale._meridiemParse;\n }\n\n addRegexToken('a', matchMeridiem);\n addRegexToken('A', matchMeridiem);\n addRegexToken('H', match1to2);\n addRegexToken('h', match1to2);\n addRegexToken('k', match1to2);\n addRegexToken('HH', match1to2, match2);\n addRegexToken('hh', match1to2, match2);\n addRegexToken('kk', match1to2, match2);\n\n addRegexToken('hmm', match3to4);\n addRegexToken('hmmss', match5to6);\n addRegexToken('Hmm', match3to4);\n addRegexToken('Hmmss', match5to6);\n\n addParseToken(['H', 'HH'], HOUR);\n addParseToken(['k', 'kk'], function (input, array, config) {\n var kInput = toInt(input);\n array[HOUR] = kInput === 24 ? 0 : kInput;\n });\n addParseToken(['a', 'A'], function (input, array, config) {\n config._isPm = config._locale.isPM(input);\n config._meridiem = input;\n });\n addParseToken(['h', 'hh'], function (input, array, config) {\n array[HOUR] = toInt(input);\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('Hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n });\n addParseToken('Hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n });\n\n // LOCALES\n\n function localeIsPM(input) {\n // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays\n // Using charAt should be more compatible.\n return (input + '').toLowerCase().charAt(0) === 'p';\n }\n\n var defaultLocaleMeridiemParse = /[ap]\\.?m?\\.?/i,\n // Setting the hour should keep the time, because the user explicitly\n // specified which hour they want. So trying to maintain the same hour (in\n // a new timezone) makes sense. Adding/subtracting hours does not follow\n // this rule.\n getSetHour = makeGetSet('Hours', true);\n\n function localeMeridiem(hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'pm' : 'PM';\n } else {\n return isLower ? 'am' : 'AM';\n }\n }\n\n var baseConfig = {\n calendar: defaultCalendar,\n longDateFormat: defaultLongDateFormat,\n invalidDate: defaultInvalidDate,\n ordinal: defaultOrdinal,\n dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,\n relativeTime: defaultRelativeTime,\n\n months: defaultLocaleMonths,\n monthsShort: defaultLocaleMonthsShort,\n\n week: defaultLocaleWeek,\n\n weekdays: defaultLocaleWeekdays,\n weekdaysMin: defaultLocaleWeekdaysMin,\n weekdaysShort: defaultLocaleWeekdaysShort,\n\n meridiemParse: defaultLocaleMeridiemParse,\n };\n\n // internal storage for locale config files\n var locales = {},\n localeFamilies = {},\n globalLocale;\n\n function commonPrefix(arr1, arr2) {\n var i,\n minl = Math.min(arr1.length, arr2.length);\n for (i = 0; i < minl; i += 1) {\n if (arr1[i] !== arr2[i]) {\n return i;\n }\n }\n return minl;\n }\n\n function normalizeLocale(key) {\n return key ? key.toLowerCase().replace('_', '-') : key;\n }\n\n // pick the locale from the array\n // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each\n // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root\n function chooseLocale(names) {\n var i = 0,\n j,\n next,\n locale,\n split;\n\n while (i < names.length) {\n split = normalizeLocale(names[i]).split('-');\n j = split.length;\n next = normalizeLocale(names[i + 1]);\n next = next ? next.split('-') : null;\n while (j > 0) {\n locale = loadLocale(split.slice(0, j).join('-'));\n if (locale) {\n return locale;\n }\n if (\n next &&\n next.length >= j &&\n commonPrefix(split, next) >= j - 1\n ) {\n //the next array item is better than a shallower substring of this one\n break;\n }\n j--;\n }\n i++;\n }\n return globalLocale;\n }\n\n function isLocaleNameSane(name) {\n // Prevent names that look like filesystem paths, i.e contain '/' or '\\'\n return name.match('^[^/\\\\\\\\]*$') != null;\n }\n\n function loadLocale(name) {\n var oldLocale = null,\n aliasedRequire;\n // TODO: Find a better way to register and load all the locales in Node\n if (\n locales[name] === undefined &&\n typeof module !== 'undefined' &&\n module &&\n module.exports &&\n isLocaleNameSane(name)\n ) {\n try {\n oldLocale = globalLocale._abbr;\n aliasedRequire = require;\n aliasedRequire('./locale/' + name);\n getSetGlobalLocale(oldLocale);\n } catch (e) {\n // mark as not found to avoid repeating expensive file require call causing high CPU\n // when trying to find en-US, en_US, en-us for every format call\n locales[name] = null; // null means not found\n }\n }\n return locales[name];\n }\n\n // This function will load locale and then set the global locale. If\n // no arguments are passed in, it will simply return the current global\n // locale key.\n function getSetGlobalLocale(key, values) {\n var data;\n if (key) {\n if (isUndefined(values)) {\n data = getLocale(key);\n } else {\n data = defineLocale(key, values);\n }\n\n if (data) {\n // moment.duration._locale = moment._locale = data;\n globalLocale = data;\n } else {\n if (typeof console !== 'undefined' && console.warn) {\n //warn user if arguments are passed but the locale could not be set\n console.warn(\n 'Locale ' + key + ' not found. Did you forget to load it?'\n );\n }\n }\n }\n\n return globalLocale._abbr;\n }\n\n function defineLocale(name, config) {\n if (config !== null) {\n var locale,\n parentConfig = baseConfig;\n config.abbr = name;\n if (locales[name] != null) {\n deprecateSimple(\n 'defineLocaleOverride',\n 'use moment.updateLocale(localeName, config) to change ' +\n 'an existing locale. moment.defineLocale(localeName, ' +\n 'config) should only be used for creating a new locale ' +\n 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.'\n );\n parentConfig = locales[name]._config;\n } else if (config.parentLocale != null) {\n if (locales[config.parentLocale] != null) {\n parentConfig = locales[config.parentLocale]._config;\n } else {\n locale = loadLocale(config.parentLocale);\n if (locale != null) {\n parentConfig = locale._config;\n } else {\n if (!localeFamilies[config.parentLocale]) {\n localeFamilies[config.parentLocale] = [];\n }\n localeFamilies[config.parentLocale].push({\n name: name,\n config: config,\n });\n return null;\n }\n }\n }\n locales[name] = new Locale(mergeConfigs(parentConfig, config));\n\n if (localeFamilies[name]) {\n localeFamilies[name].forEach(function (x) {\n defineLocale(x.name, x.config);\n });\n }\n\n // backwards compat for now: also set the locale\n // make sure we set the locale AFTER all child locales have been\n // created, so we won't end up with the child locale set.\n getSetGlobalLocale(name);\n\n return locales[name];\n } else {\n // useful for testing\n delete locales[name];\n return null;\n }\n }\n\n function updateLocale(name, config) {\n if (config != null) {\n var locale,\n tmpLocale,\n parentConfig = baseConfig;\n\n if (locales[name] != null && locales[name].parentLocale != null) {\n // Update existing child locale in-place to avoid memory-leaks\n locales[name].set(mergeConfigs(locales[name]._config, config));\n } else {\n // MERGE\n tmpLocale = loadLocale(name);\n if (tmpLocale != null) {\n parentConfig = tmpLocale._config;\n }\n config = mergeConfigs(parentConfig, config);\n if (tmpLocale == null) {\n // updateLocale is called for creating a new locale\n // Set abbr so it will have a name (getters return\n // undefined otherwise).\n config.abbr = name;\n }\n locale = new Locale(config);\n locale.parentLocale = locales[name];\n locales[name] = locale;\n }\n\n // backwards compat for now: also set the locale\n getSetGlobalLocale(name);\n } else {\n // pass null for config to unupdate, useful for tests\n if (locales[name] != null) {\n if (locales[name].parentLocale != null) {\n locales[name] = locales[name].parentLocale;\n if (name === getSetGlobalLocale()) {\n getSetGlobalLocale(name);\n }\n } else if (locales[name] != null) {\n delete locales[name];\n }\n }\n }\n return locales[name];\n }\n\n // returns locale data\n function getLocale(key) {\n var locale;\n\n if (key && key._locale && key._locale._abbr) {\n key = key._locale._abbr;\n }\n\n if (!key) {\n return globalLocale;\n }\n\n if (!isArray(key)) {\n //short-circuit everything else\n locale = loadLocale(key);\n if (locale) {\n return locale;\n }\n key = [key];\n }\n\n return chooseLocale(key);\n }\n\n function listLocales() {\n return keys(locales);\n }\n\n function checkOverflow(m) {\n var overflow,\n a = m._a;\n\n if (a && getParsingFlags(m).overflow === -2) {\n overflow =\n a[MONTH] < 0 || a[MONTH] > 11\n ? MONTH\n : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH])\n ? DATE\n : a[HOUR] < 0 ||\n a[HOUR] > 24 ||\n (a[HOUR] === 24 &&\n (a[MINUTE] !== 0 ||\n a[SECOND] !== 0 ||\n a[MILLISECOND] !== 0))\n ? HOUR\n : a[MINUTE] < 0 || a[MINUTE] > 59\n ? MINUTE\n : a[SECOND] < 0 || a[SECOND] > 59\n ? SECOND\n : a[MILLISECOND] < 0 || a[MILLISECOND] > 999\n ? MILLISECOND\n : -1;\n\n if (\n getParsingFlags(m)._overflowDayOfYear &&\n (overflow < YEAR || overflow > DATE)\n ) {\n overflow = DATE;\n }\n if (getParsingFlags(m)._overflowWeeks && overflow === -1) {\n overflow = WEEK;\n }\n if (getParsingFlags(m)._overflowWeekday && overflow === -1) {\n overflow = WEEKDAY;\n }\n\n getParsingFlags(m).overflow = overflow;\n }\n\n return m;\n }\n\n // iso 8601 regex\n // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)\n var extendedIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n basicIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d|))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n tzRegex = /Z|[+-]\\d\\d(?::?\\d\\d)?/,\n isoDates = [\n ['YYYYYY-MM-DD', /[+-]\\d{6}-\\d\\d-\\d\\d/],\n ['YYYY-MM-DD', /\\d{4}-\\d\\d-\\d\\d/],\n ['GGGG-[W]WW-E', /\\d{4}-W\\d\\d-\\d/],\n ['GGGG-[W]WW', /\\d{4}-W\\d\\d/, false],\n ['YYYY-DDD', /\\d{4}-\\d{3}/],\n ['YYYY-MM', /\\d{4}-\\d\\d/, false],\n ['YYYYYYMMDD', /[+-]\\d{10}/],\n ['YYYYMMDD', /\\d{8}/],\n ['GGGG[W]WWE', /\\d{4}W\\d{3}/],\n ['GGGG[W]WW', /\\d{4}W\\d{2}/, false],\n ['YYYYDDD', /\\d{7}/],\n ['YYYYMM', /\\d{6}/, false],\n ['YYYY', /\\d{4}/, false],\n ],\n // iso time formats and regexes\n isoTimes = [\n ['HH:mm:ss.SSSS', /\\d\\d:\\d\\d:\\d\\d\\.\\d+/],\n ['HH:mm:ss,SSSS', /\\d\\d:\\d\\d:\\d\\d,\\d+/],\n ['HH:mm:ss', /\\d\\d:\\d\\d:\\d\\d/],\n ['HH:mm', /\\d\\d:\\d\\d/],\n ['HHmmss.SSSS', /\\d\\d\\d\\d\\d\\d\\.\\d+/],\n ['HHmmss,SSSS', /\\d\\d\\d\\d\\d\\d,\\d+/],\n ['HHmmss', /\\d\\d\\d\\d\\d\\d/],\n ['HHmm', /\\d\\d\\d\\d/],\n ['HH', /\\d\\d/],\n ],\n aspNetJsonRegex = /^\\/?Date\\((-?\\d+)/i,\n // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3\n rfc2822 =\n /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/,\n obsOffsets = {\n UT: 0,\n GMT: 0,\n EDT: -4 * 60,\n EST: -5 * 60,\n CDT: -5 * 60,\n CST: -6 * 60,\n MDT: -6 * 60,\n MST: -7 * 60,\n PDT: -7 * 60,\n PST: -8 * 60,\n };\n\n // date from iso format\n function configFromISO(config) {\n var i,\n l,\n string = config._i,\n match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),\n allowTime,\n dateFormat,\n timeFormat,\n tzFormat,\n isoDatesLen = isoDates.length,\n isoTimesLen = isoTimes.length;\n\n if (match) {\n getParsingFlags(config).iso = true;\n for (i = 0, l = isoDatesLen; i < l; i++) {\n if (isoDates[i][1].exec(match[1])) {\n dateFormat = isoDates[i][0];\n allowTime = isoDates[i][2] !== false;\n break;\n }\n }\n if (dateFormat == null) {\n config._isValid = false;\n return;\n }\n if (match[3]) {\n for (i = 0, l = isoTimesLen; i < l; i++) {\n if (isoTimes[i][1].exec(match[3])) {\n // match[2] should be 'T' or space\n timeFormat = (match[2] || ' ') + isoTimes[i][0];\n break;\n }\n }\n if (timeFormat == null) {\n config._isValid = false;\n return;\n }\n }\n if (!allowTime && timeFormat != null) {\n config._isValid = false;\n return;\n }\n if (match[4]) {\n if (tzRegex.exec(match[4])) {\n tzFormat = 'Z';\n } else {\n config._isValid = false;\n return;\n }\n }\n config._f = dateFormat + (timeFormat || '') + (tzFormat || '');\n configFromStringAndFormat(config);\n } else {\n config._isValid = false;\n }\n }\n\n function extractFromRFC2822Strings(\n yearStr,\n monthStr,\n dayStr,\n hourStr,\n minuteStr,\n secondStr\n ) {\n var result = [\n untruncateYear(yearStr),\n defaultLocaleMonthsShort.indexOf(monthStr),\n parseInt(dayStr, 10),\n parseInt(hourStr, 10),\n parseInt(minuteStr, 10),\n ];\n\n if (secondStr) {\n result.push(parseInt(secondStr, 10));\n }\n\n return result;\n }\n\n function untruncateYear(yearStr) {\n var year = parseInt(yearStr, 10);\n if (year <= 49) {\n return 2000 + year;\n } else if (year <= 999) {\n return 1900 + year;\n }\n return year;\n }\n\n function preprocessRFC2822(s) {\n // Remove comments and folding whitespace and replace multiple-spaces with a single space\n return s\n .replace(/\\([^()]*\\)|[\\n\\t]/g, ' ')\n .replace(/(\\s\\s+)/g, ' ')\n .replace(/^\\s\\s*/, '')\n .replace(/\\s\\s*$/, '');\n }\n\n function checkWeekday(weekdayStr, parsedInput, config) {\n if (weekdayStr) {\n // TODO: Replace the vanilla JS Date object with an independent day-of-week check.\n var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr),\n weekdayActual = new Date(\n parsedInput[0],\n parsedInput[1],\n parsedInput[2]\n ).getDay();\n if (weekdayProvided !== weekdayActual) {\n getParsingFlags(config).weekdayMismatch = true;\n config._isValid = false;\n return false;\n }\n }\n return true;\n }\n\n function calculateOffset(obsOffset, militaryOffset, numOffset) {\n if (obsOffset) {\n return obsOffsets[obsOffset];\n } else if (militaryOffset) {\n // the only allowed military tz is Z\n return 0;\n } else {\n var hm = parseInt(numOffset, 10),\n m = hm % 100,\n h = (hm - m) / 100;\n return h * 60 + m;\n }\n }\n\n // date and time from ref 2822 format\n function configFromRFC2822(config) {\n var match = rfc2822.exec(preprocessRFC2822(config._i)),\n parsedArray;\n if (match) {\n parsedArray = extractFromRFC2822Strings(\n match[4],\n match[3],\n match[2],\n match[5],\n match[6],\n match[7]\n );\n if (!checkWeekday(match[1], parsedArray, config)) {\n return;\n }\n\n config._a = parsedArray;\n config._tzm = calculateOffset(match[8], match[9], match[10]);\n\n config._d = createUTCDate.apply(null, config._a);\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n\n getParsingFlags(config).rfc2822 = true;\n } else {\n config._isValid = false;\n }\n }\n\n // date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict\n function configFromString(config) {\n var matched = aspNetJsonRegex.exec(config._i);\n if (matched !== null) {\n config._d = new Date(+matched[1]);\n return;\n }\n\n configFromISO(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n configFromRFC2822(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n if (config._strict) {\n config._isValid = false;\n } else {\n // Final attempt, use Input Fallback\n hooks.createFromInputFallback(config);\n }\n }\n\n hooks.createFromInputFallback = deprecate(\n 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +\n 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +\n 'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.',\n function (config) {\n config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));\n }\n );\n\n // Pick the first defined of two or three arguments.\n function defaults(a, b, c) {\n if (a != null) {\n return a;\n }\n if (b != null) {\n return b;\n }\n return c;\n }\n\n function currentDateArray(config) {\n // hooks is actually the exported moment object\n var nowValue = new Date(hooks.now());\n if (config._useUTC) {\n return [\n nowValue.getUTCFullYear(),\n nowValue.getUTCMonth(),\n nowValue.getUTCDate(),\n ];\n }\n return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];\n }\n\n // convert an array to a date.\n // the array should mirror the parameters below\n // note: all values past the year are optional and will default to the lowest possible value.\n // [year, month, day , hour, minute, second, millisecond]\n function configFromArray(config) {\n var i,\n date,\n input = [],\n currentDate,\n expectedWeekday,\n yearToUse;\n\n if (config._d) {\n return;\n }\n\n currentDate = currentDateArray(config);\n\n //compute day of the year from weeks and weekdays\n if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {\n dayOfYearFromWeekInfo(config);\n }\n\n //if the day of the year is set, figure out what it is\n if (config._dayOfYear != null) {\n yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);\n\n if (\n config._dayOfYear > daysInYear(yearToUse) ||\n config._dayOfYear === 0\n ) {\n getParsingFlags(config)._overflowDayOfYear = true;\n }\n\n date = createUTCDate(yearToUse, 0, config._dayOfYear);\n config._a[MONTH] = date.getUTCMonth();\n config._a[DATE] = date.getUTCDate();\n }\n\n // Default to current date.\n // * if no year, month, day of month are given, default to today\n // * if day of month is given, default month and year\n // * if month is given, default only year\n // * if year is given, don't default anything\n for (i = 0; i < 3 && config._a[i] == null; ++i) {\n config._a[i] = input[i] = currentDate[i];\n }\n\n // Zero out whatever was not defaulted, including time\n for (; i < 7; i++) {\n config._a[i] = input[i] =\n config._a[i] == null ? (i === 2 ? 1 : 0) : config._a[i];\n }\n\n // Check for 24:00:00.000\n if (\n config._a[HOUR] === 24 &&\n config._a[MINUTE] === 0 &&\n config._a[SECOND] === 0 &&\n config._a[MILLISECOND] === 0\n ) {\n config._nextDay = true;\n config._a[HOUR] = 0;\n }\n\n config._d = (config._useUTC ? createUTCDate : createDate).apply(\n null,\n input\n );\n expectedWeekday = config._useUTC\n ? config._d.getUTCDay()\n : config._d.getDay();\n\n // Apply timezone offset from input. The actual utcOffset can be changed\n // with parseZone.\n if (config._tzm != null) {\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n }\n\n if (config._nextDay) {\n config._a[HOUR] = 24;\n }\n\n // check for mismatching day of week\n if (\n config._w &&\n typeof config._w.d !== 'undefined' &&\n config._w.d !== expectedWeekday\n ) {\n getParsingFlags(config).weekdayMismatch = true;\n }\n }\n\n function dayOfYearFromWeekInfo(config) {\n var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek;\n\n w = config._w;\n if (w.GG != null || w.W != null || w.E != null) {\n dow = 1;\n doy = 4;\n\n // TODO: We need to take the current isoWeekYear, but that depends on\n // how we interpret now (local, utc, fixed offset). So create\n // a now version of current config (take local/utc/offset flags, and\n // create now).\n weekYear = defaults(\n w.GG,\n config._a[YEAR],\n weekOfYear(createLocal(), 1, 4).year\n );\n week = defaults(w.W, 1);\n weekday = defaults(w.E, 1);\n if (weekday < 1 || weekday > 7) {\n weekdayOverflow = true;\n }\n } else {\n dow = config._locale._week.dow;\n doy = config._locale._week.doy;\n\n curWeek = weekOfYear(createLocal(), dow, doy);\n\n weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);\n\n // Default to current week.\n week = defaults(w.w, curWeek.week);\n\n if (w.d != null) {\n // weekday -- low day numbers are considered next week\n weekday = w.d;\n if (weekday < 0 || weekday > 6) {\n weekdayOverflow = true;\n }\n } else if (w.e != null) {\n // local weekday -- counting starts from beginning of week\n weekday = w.e + dow;\n if (w.e < 0 || w.e > 6) {\n weekdayOverflow = true;\n }\n } else {\n // default to beginning of week\n weekday = dow;\n }\n }\n if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {\n getParsingFlags(config)._overflowWeeks = true;\n } else if (weekdayOverflow != null) {\n getParsingFlags(config)._overflowWeekday = true;\n } else {\n temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);\n config._a[YEAR] = temp.year;\n config._dayOfYear = temp.dayOfYear;\n }\n }\n\n // constant that refers to the ISO standard\n hooks.ISO_8601 = function () {};\n\n // constant that refers to the RFC 2822 form\n hooks.RFC_2822 = function () {};\n\n // date from string and format string\n function configFromStringAndFormat(config) {\n // TODO: Move this to another part of the creation flow to prevent circular deps\n if (config._f === hooks.ISO_8601) {\n configFromISO(config);\n return;\n }\n if (config._f === hooks.RFC_2822) {\n configFromRFC2822(config);\n return;\n }\n config._a = [];\n getParsingFlags(config).empty = true;\n\n // This array is used to make a Date, either with `new Date` or `Date.UTC`\n var string = '' + config._i,\n i,\n parsedInput,\n tokens,\n token,\n skipped,\n stringLength = string.length,\n totalParsedInputLength = 0,\n era,\n tokenLen;\n\n tokens =\n expandFormat(config._f, config._locale).match(formattingTokens) || [];\n tokenLen = tokens.length;\n for (i = 0; i < tokenLen; i++) {\n token = tokens[i];\n parsedInput = (string.match(getParseRegexForToken(token, config)) ||\n [])[0];\n if (parsedInput) {\n skipped = string.substr(0, string.indexOf(parsedInput));\n if (skipped.length > 0) {\n getParsingFlags(config).unusedInput.push(skipped);\n }\n string = string.slice(\n string.indexOf(parsedInput) + parsedInput.length\n );\n totalParsedInputLength += parsedInput.length;\n }\n // don't parse if it's not a known token\n if (formatTokenFunctions[token]) {\n if (parsedInput) {\n getParsingFlags(config).empty = false;\n } else {\n getParsingFlags(config).unusedTokens.push(token);\n }\n addTimeToArrayFromToken(token, parsedInput, config);\n } else if (config._strict && !parsedInput) {\n getParsingFlags(config).unusedTokens.push(token);\n }\n }\n\n // add remaining unparsed input length to the string\n getParsingFlags(config).charsLeftOver =\n stringLength - totalParsedInputLength;\n if (string.length > 0) {\n getParsingFlags(config).unusedInput.push(string);\n }\n\n // clear _12h flag if hour is <= 12\n if (\n config._a[HOUR] <= 12 &&\n getParsingFlags(config).bigHour === true &&\n config._a[HOUR] > 0\n ) {\n getParsingFlags(config).bigHour = undefined;\n }\n\n getParsingFlags(config).parsedDateParts = config._a.slice(0);\n getParsingFlags(config).meridiem = config._meridiem;\n // handle meridiem\n config._a[HOUR] = meridiemFixWrap(\n config._locale,\n config._a[HOUR],\n config._meridiem\n );\n\n // handle era\n era = getParsingFlags(config).era;\n if (era !== null) {\n config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]);\n }\n\n configFromArray(config);\n checkOverflow(config);\n }\n\n function meridiemFixWrap(locale, hour, meridiem) {\n var isPm;\n\n if (meridiem == null) {\n // nothing to do\n return hour;\n }\n if (locale.meridiemHour != null) {\n return locale.meridiemHour(hour, meridiem);\n } else if (locale.isPM != null) {\n // Fallback\n isPm = locale.isPM(meridiem);\n if (isPm && hour < 12) {\n hour += 12;\n }\n if (!isPm && hour === 12) {\n hour = 0;\n }\n return hour;\n } else {\n // this is not supposed to happen\n return hour;\n }\n }\n\n // date from string and array of format strings\n function configFromStringAndArray(config) {\n var tempConfig,\n bestMoment,\n scoreToBeat,\n i,\n currentScore,\n validFormatFound,\n bestFormatIsValid = false,\n configfLen = config._f.length;\n\n if (configfLen === 0) {\n getParsingFlags(config).invalidFormat = true;\n config._d = new Date(NaN);\n return;\n }\n\n for (i = 0; i < configfLen; i++) {\n currentScore = 0;\n validFormatFound = false;\n tempConfig = copyConfig({}, config);\n if (config._useUTC != null) {\n tempConfig._useUTC = config._useUTC;\n }\n tempConfig._f = config._f[i];\n configFromStringAndFormat(tempConfig);\n\n if (isValid(tempConfig)) {\n validFormatFound = true;\n }\n\n // if there is any input that was not parsed add a penalty for that format\n currentScore += getParsingFlags(tempConfig).charsLeftOver;\n\n //or tokens\n currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;\n\n getParsingFlags(tempConfig).score = currentScore;\n\n if (!bestFormatIsValid) {\n if (\n scoreToBeat == null ||\n currentScore < scoreToBeat ||\n validFormatFound\n ) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n if (validFormatFound) {\n bestFormatIsValid = true;\n }\n }\n } else {\n if (currentScore < scoreToBeat) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n }\n }\n }\n\n extend(config, bestMoment || tempConfig);\n }\n\n function configFromObject(config) {\n if (config._d) {\n return;\n }\n\n var i = normalizeObjectUnits(config._i),\n dayOrDate = i.day === undefined ? i.date : i.day;\n config._a = map(\n [i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond],\n function (obj) {\n return obj && parseInt(obj, 10);\n }\n );\n\n configFromArray(config);\n }\n\n function createFromConfig(config) {\n var res = new Moment(checkOverflow(prepareConfig(config)));\n if (res._nextDay) {\n // Adding is smart enough around DST\n res.add(1, 'd');\n res._nextDay = undefined;\n }\n\n return res;\n }\n\n function prepareConfig(config) {\n var input = config._i,\n format = config._f;\n\n config._locale = config._locale || getLocale(config._l);\n\n if (input === null || (format === undefined && input === '')) {\n return createInvalid({ nullInput: true });\n }\n\n if (typeof input === 'string') {\n config._i = input = config._locale.preparse(input);\n }\n\n if (isMoment(input)) {\n return new Moment(checkOverflow(input));\n } else if (isDate(input)) {\n config._d = input;\n } else if (isArray(format)) {\n configFromStringAndArray(config);\n } else if (format) {\n configFromStringAndFormat(config);\n } else {\n configFromInput(config);\n }\n\n if (!isValid(config)) {\n config._d = null;\n }\n\n return config;\n }\n\n function configFromInput(config) {\n var input = config._i;\n if (isUndefined(input)) {\n config._d = new Date(hooks.now());\n } else if (isDate(input)) {\n config._d = new Date(input.valueOf());\n } else if (typeof input === 'string') {\n configFromString(config);\n } else if (isArray(input)) {\n config._a = map(input.slice(0), function (obj) {\n return parseInt(obj, 10);\n });\n configFromArray(config);\n } else if (isObject(input)) {\n configFromObject(config);\n } else if (isNumber(input)) {\n // from milliseconds\n config._d = new Date(input);\n } else {\n hooks.createFromInputFallback(config);\n }\n }\n\n function createLocalOrUTC(input, format, locale, strict, isUTC) {\n var c = {};\n\n if (format === true || format === false) {\n strict = format;\n format = undefined;\n }\n\n if (locale === true || locale === false) {\n strict = locale;\n locale = undefined;\n }\n\n if (\n (isObject(input) && isObjectEmpty(input)) ||\n (isArray(input) && input.length === 0)\n ) {\n input = undefined;\n }\n // object construction must be done this way.\n // https://github.com/moment/moment/issues/1423\n c._isAMomentObject = true;\n c._useUTC = c._isUTC = isUTC;\n c._l = locale;\n c._i = input;\n c._f = format;\n c._strict = strict;\n\n return createFromConfig(c);\n }\n\n function createLocal(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, false);\n }\n\n var prototypeMin = deprecate(\n 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other < this ? this : other;\n } else {\n return createInvalid();\n }\n }\n ),\n prototypeMax = deprecate(\n 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other > this ? this : other;\n } else {\n return createInvalid();\n }\n }\n );\n\n // Pick a moment m from moments so that m[fn](other) is true for all\n // other. This relies on the function fn to be transitive.\n //\n // moments should either be an array of moment objects or an array, whose\n // first element is an array of moment objects.\n function pickBy(fn, moments) {\n var res, i;\n if (moments.length === 1 && isArray(moments[0])) {\n moments = moments[0];\n }\n if (!moments.length) {\n return createLocal();\n }\n res = moments[0];\n for (i = 1; i < moments.length; ++i) {\n if (!moments[i].isValid() || moments[i][fn](res)) {\n res = moments[i];\n }\n }\n return res;\n }\n\n // TODO: Use [].sort instead?\n function min() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isBefore', args);\n }\n\n function max() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isAfter', args);\n }\n\n var now = function () {\n return Date.now ? Date.now() : +new Date();\n };\n\n var ordering = [\n 'year',\n 'quarter',\n 'month',\n 'week',\n 'day',\n 'hour',\n 'minute',\n 'second',\n 'millisecond',\n ];\n\n function isDurationValid(m) {\n var key,\n unitHasDecimal = false,\n i,\n orderLen = ordering.length;\n for (key in m) {\n if (\n hasOwnProp(m, key) &&\n !(\n indexOf.call(ordering, key) !== -1 &&\n (m[key] == null || !isNaN(m[key]))\n )\n ) {\n return false;\n }\n }\n\n for (i = 0; i < orderLen; ++i) {\n if (m[ordering[i]]) {\n if (unitHasDecimal) {\n return false; // only allow non-integers for smallest unit\n }\n if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {\n unitHasDecimal = true;\n }\n }\n }\n\n return true;\n }\n\n function isValid$1() {\n return this._isValid;\n }\n\n function createInvalid$1() {\n return createDuration(NaN);\n }\n\n function Duration(duration) {\n var normalizedInput = normalizeObjectUnits(duration),\n years = normalizedInput.year || 0,\n quarters = normalizedInput.quarter || 0,\n months = normalizedInput.month || 0,\n weeks = normalizedInput.week || normalizedInput.isoWeek || 0,\n days = normalizedInput.day || 0,\n hours = normalizedInput.hour || 0,\n minutes = normalizedInput.minute || 0,\n seconds = normalizedInput.second || 0,\n milliseconds = normalizedInput.millisecond || 0;\n\n this._isValid = isDurationValid(normalizedInput);\n\n // representation for dateAddRemove\n this._milliseconds =\n +milliseconds +\n seconds * 1e3 + // 1000\n minutes * 6e4 + // 1000 * 60\n hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978\n // Because of dateAddRemove treats 24 hours as different from a\n // day when working around DST, we need to store them separately\n this._days = +days + weeks * 7;\n // It is impossible to translate months into days without knowing\n // which months you are are talking about, so we have to store\n // it separately.\n this._months = +months + quarters * 3 + years * 12;\n\n this._data = {};\n\n this._locale = getLocale();\n\n this._bubble();\n }\n\n function isDuration(obj) {\n return obj instanceof Duration;\n }\n\n function absRound(number) {\n if (number < 0) {\n return Math.round(-1 * number) * -1;\n } else {\n return Math.round(number);\n }\n }\n\n // compare two arrays, return the number of differences\n function compareArrays(array1, array2, dontConvert) {\n var len = Math.min(array1.length, array2.length),\n lengthDiff = Math.abs(array1.length - array2.length),\n diffs = 0,\n i;\n for (i = 0; i < len; i++) {\n if (\n (dontConvert && array1[i] !== array2[i]) ||\n (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))\n ) {\n diffs++;\n }\n }\n return diffs + lengthDiff;\n }\n\n // FORMATTING\n\n function offset(token, separator) {\n addFormatToken(token, 0, 0, function () {\n var offset = this.utcOffset(),\n sign = '+';\n if (offset < 0) {\n offset = -offset;\n sign = '-';\n }\n return (\n sign +\n zeroFill(~~(offset / 60), 2) +\n separator +\n zeroFill(~~offset % 60, 2)\n );\n });\n }\n\n offset('Z', ':');\n offset('ZZ', '');\n\n // PARSING\n\n addRegexToken('Z', matchShortOffset);\n addRegexToken('ZZ', matchShortOffset);\n addParseToken(['Z', 'ZZ'], function (input, array, config) {\n config._useUTC = true;\n config._tzm = offsetFromString(matchShortOffset, input);\n });\n\n // HELPERS\n\n // timezone chunker\n // '+10:00' > ['10', '00']\n // '-1530' > ['-15', '30']\n var chunkOffset = /([\\+\\-]|\\d\\d)/gi;\n\n function offsetFromString(matcher, string) {\n var matches = (string || '').match(matcher),\n chunk,\n parts,\n minutes;\n\n if (matches === null) {\n return null;\n }\n\n chunk = matches[matches.length - 1] || [];\n parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];\n minutes = +(parts[1] * 60) + toInt(parts[2]);\n\n return minutes === 0 ? 0 : parts[0] === '+' ? minutes : -minutes;\n }\n\n // Return a moment from input, that is local/utc/zone equivalent to model.\n function cloneWithOffset(input, model) {\n var res, diff;\n if (model._isUTC) {\n res = model.clone();\n diff =\n (isMoment(input) || isDate(input)\n ? input.valueOf()\n : createLocal(input).valueOf()) - res.valueOf();\n // Use low-level api, because this fn is low-level api.\n res._d.setTime(res._d.valueOf() + diff);\n hooks.updateOffset(res, false);\n return res;\n } else {\n return createLocal(input).local();\n }\n }\n\n function getDateOffset(m) {\n // On Firefox.24 Date#getTimezoneOffset returns a floating point.\n // https://github.com/moment/moment/pull/1871\n return -Math.round(m._d.getTimezoneOffset());\n }\n\n // HOOKS\n\n // This function will be called whenever a moment is mutated.\n // It is intended to keep the offset in sync with the timezone.\n hooks.updateOffset = function () {};\n\n // MOMENTS\n\n // keepLocalTime = true means only change the timezone, without\n // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->\n // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n // +0200, so we adjust the time as needed, to be valid.\n //\n // Keeping the time actually adds/subtracts (one hour)\n // from the actual represented time. That is why we call updateOffset\n // a second time. In case it wants us to change the offset again\n // _changeInProgress == true case, then we have to adjust, because\n // there is no such time in the given timezone.\n function getSetOffset(input, keepLocalTime, keepMinutes) {\n var offset = this._offset || 0,\n localAdjust;\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n if (input != null) {\n if (typeof input === 'string') {\n input = offsetFromString(matchShortOffset, input);\n if (input === null) {\n return this;\n }\n } else if (Math.abs(input) < 16 && !keepMinutes) {\n input = input * 60;\n }\n if (!this._isUTC && keepLocalTime) {\n localAdjust = getDateOffset(this);\n }\n this._offset = input;\n this._isUTC = true;\n if (localAdjust != null) {\n this.add(localAdjust, 'm');\n }\n if (offset !== input) {\n if (!keepLocalTime || this._changeInProgress) {\n addSubtract(\n this,\n createDuration(input - offset, 'm'),\n 1,\n false\n );\n } else if (!this._changeInProgress) {\n this._changeInProgress = true;\n hooks.updateOffset(this, true);\n this._changeInProgress = null;\n }\n }\n return this;\n } else {\n return this._isUTC ? offset : getDateOffset(this);\n }\n }\n\n function getSetZone(input, keepLocalTime) {\n if (input != null) {\n if (typeof input !== 'string') {\n input = -input;\n }\n\n this.utcOffset(input, keepLocalTime);\n\n return this;\n } else {\n return -this.utcOffset();\n }\n }\n\n function setOffsetToUTC(keepLocalTime) {\n return this.utcOffset(0, keepLocalTime);\n }\n\n function setOffsetToLocal(keepLocalTime) {\n if (this._isUTC) {\n this.utcOffset(0, keepLocalTime);\n this._isUTC = false;\n\n if (keepLocalTime) {\n this.subtract(getDateOffset(this), 'm');\n }\n }\n return this;\n }\n\n function setOffsetToParsedOffset() {\n if (this._tzm != null) {\n this.utcOffset(this._tzm, false, true);\n } else if (typeof this._i === 'string') {\n var tZone = offsetFromString(matchOffset, this._i);\n if (tZone != null) {\n this.utcOffset(tZone);\n } else {\n this.utcOffset(0, true);\n }\n }\n return this;\n }\n\n function hasAlignedHourOffset(input) {\n if (!this.isValid()) {\n return false;\n }\n input = input ? createLocal(input).utcOffset() : 0;\n\n return (this.utcOffset() - input) % 60 === 0;\n }\n\n function isDaylightSavingTime() {\n return (\n this.utcOffset() > this.clone().month(0).utcOffset() ||\n this.utcOffset() > this.clone().month(5).utcOffset()\n );\n }\n\n function isDaylightSavingTimeShifted() {\n if (!isUndefined(this._isDSTShifted)) {\n return this._isDSTShifted;\n }\n\n var c = {},\n other;\n\n copyConfig(c, this);\n c = prepareConfig(c);\n\n if (c._a) {\n other = c._isUTC ? createUTC(c._a) : createLocal(c._a);\n this._isDSTShifted =\n this.isValid() && compareArrays(c._a, other.toArray()) > 0;\n } else {\n this._isDSTShifted = false;\n }\n\n return this._isDSTShifted;\n }\n\n function isLocal() {\n return this.isValid() ? !this._isUTC : false;\n }\n\n function isUtcOffset() {\n return this.isValid() ? this._isUTC : false;\n }\n\n function isUtc() {\n return this.isValid() ? this._isUTC && this._offset === 0 : false;\n }\n\n // ASP.NET json date format regex\n var aspNetRegex = /^(-|\\+)?(?:(\\d*)[. ])?(\\d+):(\\d+)(?::(\\d+)(\\.\\d*)?)?$/,\n // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n // and further modified to allow for strings containing both week and day\n isoRegex =\n /^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;\n\n function createDuration(input, key) {\n var duration = input,\n // matching against regexp is expensive, do it on demand\n match = null,\n sign,\n ret,\n diffRes;\n\n if (isDuration(input)) {\n duration = {\n ms: input._milliseconds,\n d: input._days,\n M: input._months,\n };\n } else if (isNumber(input) || !isNaN(+input)) {\n duration = {};\n if (key) {\n duration[key] = +input;\n } else {\n duration.milliseconds = +input;\n }\n } else if ((match = aspNetRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: 0,\n d: toInt(match[DATE]) * sign,\n h: toInt(match[HOUR]) * sign,\n m: toInt(match[MINUTE]) * sign,\n s: toInt(match[SECOND]) * sign,\n ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign, // the millisecond decimal point is included in the match\n };\n } else if ((match = isoRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: parseIso(match[2], sign),\n M: parseIso(match[3], sign),\n w: parseIso(match[4], sign),\n d: parseIso(match[5], sign),\n h: parseIso(match[6], sign),\n m: parseIso(match[7], sign),\n s: parseIso(match[8], sign),\n };\n } else if (duration == null) {\n // checks for null or undefined\n duration = {};\n } else if (\n typeof duration === 'object' &&\n ('from' in duration || 'to' in duration)\n ) {\n diffRes = momentsDifference(\n createLocal(duration.from),\n createLocal(duration.to)\n );\n\n duration = {};\n duration.ms = diffRes.milliseconds;\n duration.M = diffRes.months;\n }\n\n ret = new Duration(duration);\n\n if (isDuration(input) && hasOwnProp(input, '_locale')) {\n ret._locale = input._locale;\n }\n\n if (isDuration(input) && hasOwnProp(input, '_isValid')) {\n ret._isValid = input._isValid;\n }\n\n return ret;\n }\n\n createDuration.fn = Duration.prototype;\n createDuration.invalid = createInvalid$1;\n\n function parseIso(inp, sign) {\n // We'd normally use ~~inp for this, but unfortunately it also\n // converts floats to ints.\n // inp may be undefined, so careful calling replace on it.\n var res = inp && parseFloat(inp.replace(',', '.'));\n // apply sign while we're at it\n return (isNaN(res) ? 0 : res) * sign;\n }\n\n function positiveMomentsDifference(base, other) {\n var res = {};\n\n res.months =\n other.month() - base.month() + (other.year() - base.year()) * 12;\n if (base.clone().add(res.months, 'M').isAfter(other)) {\n --res.months;\n }\n\n res.milliseconds = +other - +base.clone().add(res.months, 'M');\n\n return res;\n }\n\n function momentsDifference(base, other) {\n var res;\n if (!(base.isValid() && other.isValid())) {\n return { milliseconds: 0, months: 0 };\n }\n\n other = cloneWithOffset(other, base);\n if (base.isBefore(other)) {\n res = positiveMomentsDifference(base, other);\n } else {\n res = positiveMomentsDifference(other, base);\n res.milliseconds = -res.milliseconds;\n res.months = -res.months;\n }\n\n return res;\n }\n\n // TODO: remove 'name' arg after deprecation is removed\n function createAdder(direction, name) {\n return function (val, period) {\n var dur, tmp;\n //invert the arguments, but complain about it\n if (period !== null && !isNaN(+period)) {\n deprecateSimple(\n name,\n 'moment().' +\n name +\n '(period, number) is deprecated. Please use moment().' +\n name +\n '(number, period). ' +\n 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.'\n );\n tmp = val;\n val = period;\n period = tmp;\n }\n\n dur = createDuration(val, period);\n addSubtract(this, dur, direction);\n return this;\n };\n }\n\n function addSubtract(mom, duration, isAdding, updateOffset) {\n var milliseconds = duration._milliseconds,\n days = absRound(duration._days),\n months = absRound(duration._months);\n\n if (!mom.isValid()) {\n // No op\n return;\n }\n\n updateOffset = updateOffset == null ? true : updateOffset;\n\n if (months) {\n setMonth(mom, get(mom, 'Month') + months * isAdding);\n }\n if (days) {\n set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);\n }\n if (milliseconds) {\n mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);\n }\n if (updateOffset) {\n hooks.updateOffset(mom, days || months);\n }\n }\n\n var add = createAdder(1, 'add'),\n subtract = createAdder(-1, 'subtract');\n\n function isString(input) {\n return typeof input === 'string' || input instanceof String;\n }\n\n // type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined\n function isMomentInput(input) {\n return (\n isMoment(input) ||\n isDate(input) ||\n isString(input) ||\n isNumber(input) ||\n isNumberOrStringArray(input) ||\n isMomentInputObject(input) ||\n input === null ||\n input === undefined\n );\n }\n\n function isMomentInputObject(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'years',\n 'year',\n 'y',\n 'months',\n 'month',\n 'M',\n 'days',\n 'day',\n 'd',\n 'dates',\n 'date',\n 'D',\n 'hours',\n 'hour',\n 'h',\n 'minutes',\n 'minute',\n 'm',\n 'seconds',\n 'second',\n 's',\n 'milliseconds',\n 'millisecond',\n 'ms',\n ],\n i,\n property,\n propertyLen = properties.length;\n\n for (i = 0; i < propertyLen; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n }\n\n function isNumberOrStringArray(input) {\n var arrayTest = isArray(input),\n dataTypeTest = false;\n if (arrayTest) {\n dataTypeTest =\n input.filter(function (item) {\n return !isNumber(item) && isString(input);\n }).length === 0;\n }\n return arrayTest && dataTypeTest;\n }\n\n function isCalendarSpec(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'sameDay',\n 'nextDay',\n 'lastDay',\n 'nextWeek',\n 'lastWeek',\n 'sameElse',\n ],\n i,\n property;\n\n for (i = 0; i < properties.length; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n }\n\n function getCalendarFormat(myMoment, now) {\n var diff = myMoment.diff(now, 'days', true);\n return diff < -6\n ? 'sameElse'\n : diff < -1\n ? 'lastWeek'\n : diff < 0\n ? 'lastDay'\n : diff < 1\n ? 'sameDay'\n : diff < 2\n ? 'nextDay'\n : diff < 7\n ? 'nextWeek'\n : 'sameElse';\n }\n\n function calendar$1(time, formats) {\n // Support for single parameter, formats only overload to the calendar function\n if (arguments.length === 1) {\n if (!arguments[0]) {\n time = undefined;\n formats = undefined;\n } else if (isMomentInput(arguments[0])) {\n time = arguments[0];\n formats = undefined;\n } else if (isCalendarSpec(arguments[0])) {\n formats = arguments[0];\n time = undefined;\n }\n }\n // We want to compare the start of today, vs this.\n // Getting start-of-today depends on whether we're local/utc/offset or not.\n var now = time || createLocal(),\n sod = cloneWithOffset(now, this).startOf('day'),\n format = hooks.calendarFormat(this, sod) || 'sameElse',\n output =\n formats &&\n (isFunction(formats[format])\n ? formats[format].call(this, now)\n : formats[format]);\n\n return this.format(\n output || this.localeData().calendar(format, this, createLocal(now))\n );\n }\n\n function clone() {\n return new Moment(this);\n }\n\n function isAfter(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() > localInput.valueOf();\n } else {\n return localInput.valueOf() < this.clone().startOf(units).valueOf();\n }\n }\n\n function isBefore(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() < localInput.valueOf();\n } else {\n return this.clone().endOf(units).valueOf() < localInput.valueOf();\n }\n }\n\n function isBetween(from, to, units, inclusivity) {\n var localFrom = isMoment(from) ? from : createLocal(from),\n localTo = isMoment(to) ? to : createLocal(to);\n if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) {\n return false;\n }\n inclusivity = inclusivity || '()';\n return (\n (inclusivity[0] === '('\n ? this.isAfter(localFrom, units)\n : !this.isBefore(localFrom, units)) &&\n (inclusivity[1] === ')'\n ? this.isBefore(localTo, units)\n : !this.isAfter(localTo, units))\n );\n }\n\n function isSame(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input),\n inputMs;\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() === localInput.valueOf();\n } else {\n inputMs = localInput.valueOf();\n return (\n this.clone().startOf(units).valueOf() <= inputMs &&\n inputMs <= this.clone().endOf(units).valueOf()\n );\n }\n }\n\n function isSameOrAfter(input, units) {\n return this.isSame(input, units) || this.isAfter(input, units);\n }\n\n function isSameOrBefore(input, units) {\n return this.isSame(input, units) || this.isBefore(input, units);\n }\n\n function diff(input, units, asFloat) {\n var that, zoneDelta, output;\n\n if (!this.isValid()) {\n return NaN;\n }\n\n that = cloneWithOffset(input, this);\n\n if (!that.isValid()) {\n return NaN;\n }\n\n zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;\n\n units = normalizeUnits(units);\n\n switch (units) {\n case 'year':\n output = monthDiff(this, that) / 12;\n break;\n case 'month':\n output = monthDiff(this, that);\n break;\n case 'quarter':\n output = monthDiff(this, that) / 3;\n break;\n case 'second':\n output = (this - that) / 1e3;\n break; // 1000\n case 'minute':\n output = (this - that) / 6e4;\n break; // 1000 * 60\n case 'hour':\n output = (this - that) / 36e5;\n break; // 1000 * 60 * 60\n case 'day':\n output = (this - that - zoneDelta) / 864e5;\n break; // 1000 * 60 * 60 * 24, negate dst\n case 'week':\n output = (this - that - zoneDelta) / 6048e5;\n break; // 1000 * 60 * 60 * 24 * 7, negate dst\n default:\n output = this - that;\n }\n\n return asFloat ? output : absFloor(output);\n }\n\n function monthDiff(a, b) {\n if (a.date() < b.date()) {\n // end-of-month calculations work correct when the start month has more\n // days than the end month.\n return -monthDiff(b, a);\n }\n // difference in months\n var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()),\n // b is in (anchor - 1 month, anchor + 1 month)\n anchor = a.clone().add(wholeMonthDiff, 'months'),\n anchor2,\n adjust;\n\n if (b - anchor < 0) {\n anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor2 - anchor);\n }\n\n //check for negative zero, return zero if negative zero\n return -(wholeMonthDiff + adjust) || 0;\n }\n\n hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';\n hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';\n\n function toString() {\n return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n }\n\n function toISOString(keepOffset) {\n if (!this.isValid()) {\n return null;\n }\n var utc = keepOffset !== true,\n m = utc ? this.clone().utc() : this;\n if (m.year() < 0 || m.year() > 9999) {\n return formatMoment(\n m,\n utc\n ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'\n : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n if (isFunction(Date.prototype.toISOString)) {\n // native implementation is ~50x faster, use it when we can\n if (utc) {\n return this.toDate().toISOString();\n } else {\n return new Date(this.valueOf() + this.utcOffset() * 60 * 1000)\n .toISOString()\n .replace('Z', formatMoment(m, 'Z'));\n }\n }\n return formatMoment(\n m,\n utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n\n /**\n * Return a human readable representation of a moment that can\n * also be evaluated to get a new moment which is the same\n *\n * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects\n */\n function inspect() {\n if (!this.isValid()) {\n return 'moment.invalid(/* ' + this._i + ' */)';\n }\n var func = 'moment',\n zone = '',\n prefix,\n year,\n datetime,\n suffix;\n if (!this.isLocal()) {\n func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';\n zone = 'Z';\n }\n prefix = '[' + func + '(\"]';\n year = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY';\n datetime = '-MM-DD[T]HH:mm:ss.SSS';\n suffix = zone + '[\")]';\n\n return this.format(prefix + year + datetime + suffix);\n }\n\n function format(inputString) {\n if (!inputString) {\n inputString = this.isUtc()\n ? hooks.defaultFormatUtc\n : hooks.defaultFormat;\n }\n var output = formatMoment(this, inputString);\n return this.localeData().postformat(output);\n }\n\n function from(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ to: this, from: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function fromNow(withoutSuffix) {\n return this.from(createLocal(), withoutSuffix);\n }\n\n function to(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ from: this, to: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function toNow(withoutSuffix) {\n return this.to(createLocal(), withoutSuffix);\n }\n\n // If passed a locale key, it will set the locale for this\n // instance. Otherwise, it will return the locale configuration\n // variables for this instance.\n function locale(key) {\n var newLocaleData;\n\n if (key === undefined) {\n return this._locale._abbr;\n } else {\n newLocaleData = getLocale(key);\n if (newLocaleData != null) {\n this._locale = newLocaleData;\n }\n return this;\n }\n }\n\n var lang = deprecate(\n 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n function (key) {\n if (key === undefined) {\n return this.localeData();\n } else {\n return this.locale(key);\n }\n }\n );\n\n function localeData() {\n return this._locale;\n }\n\n var MS_PER_SECOND = 1000,\n MS_PER_MINUTE = 60 * MS_PER_SECOND,\n MS_PER_HOUR = 60 * MS_PER_MINUTE,\n MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR;\n\n // actual modulo - handles negative numbers (for dates before 1970):\n function mod$1(dividend, divisor) {\n return ((dividend % divisor) + divisor) % divisor;\n }\n\n function localStartOfDate(y, m, d) {\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return new Date(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return new Date(y, m, d).valueOf();\n }\n }\n\n function utcStartOfDate(y, m, d) {\n // Date.UTC remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return Date.UTC(y, m, d);\n }\n }\n\n function startOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year(), 0, 1);\n break;\n case 'quarter':\n time = startOfDate(\n this.year(),\n this.month() - (this.month() % 3),\n 1\n );\n break;\n case 'month':\n time = startOfDate(this.year(), this.month(), 1);\n break;\n case 'week':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday()\n );\n break;\n case 'isoWeek':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1)\n );\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date());\n break;\n case 'hour':\n time = this._d.valueOf();\n time -= mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n );\n break;\n case 'minute':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_MINUTE);\n break;\n case 'second':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_SECOND);\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function endOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year() + 1, 0, 1) - 1;\n break;\n case 'quarter':\n time =\n startOfDate(\n this.year(),\n this.month() - (this.month() % 3) + 3,\n 1\n ) - 1;\n break;\n case 'month':\n time = startOfDate(this.year(), this.month() + 1, 1) - 1;\n break;\n case 'week':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday() + 7\n ) - 1;\n break;\n case 'isoWeek':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1) + 7\n ) - 1;\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;\n break;\n case 'hour':\n time = this._d.valueOf();\n time +=\n MS_PER_HOUR -\n mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n ) -\n 1;\n break;\n case 'minute':\n time = this._d.valueOf();\n time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;\n break;\n case 'second':\n time = this._d.valueOf();\n time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function valueOf() {\n return this._d.valueOf() - (this._offset || 0) * 60000;\n }\n\n function unix() {\n return Math.floor(this.valueOf() / 1000);\n }\n\n function toDate() {\n return new Date(this.valueOf());\n }\n\n function toArray() {\n var m = this;\n return [\n m.year(),\n m.month(),\n m.date(),\n m.hour(),\n m.minute(),\n m.second(),\n m.millisecond(),\n ];\n }\n\n function toObject() {\n var m = this;\n return {\n years: m.year(),\n months: m.month(),\n date: m.date(),\n hours: m.hours(),\n minutes: m.minutes(),\n seconds: m.seconds(),\n milliseconds: m.milliseconds(),\n };\n }\n\n function toJSON() {\n // new Date(NaN).toJSON() === null\n return this.isValid() ? this.toISOString() : null;\n }\n\n function isValid$2() {\n return isValid(this);\n }\n\n function parsingFlags() {\n return extend({}, getParsingFlags(this));\n }\n\n function invalidAt() {\n return getParsingFlags(this).overflow;\n }\n\n function creationData() {\n return {\n input: this._i,\n format: this._f,\n locale: this._locale,\n isUTC: this._isUTC,\n strict: this._strict,\n };\n }\n\n addFormatToken('N', 0, 0, 'eraAbbr');\n addFormatToken('NN', 0, 0, 'eraAbbr');\n addFormatToken('NNN', 0, 0, 'eraAbbr');\n addFormatToken('NNNN', 0, 0, 'eraName');\n addFormatToken('NNNNN', 0, 0, 'eraNarrow');\n\n addFormatToken('y', ['y', 1], 'yo', 'eraYear');\n addFormatToken('y', ['yy', 2], 0, 'eraYear');\n addFormatToken('y', ['yyy', 3], 0, 'eraYear');\n addFormatToken('y', ['yyyy', 4], 0, 'eraYear');\n\n addRegexToken('N', matchEraAbbr);\n addRegexToken('NN', matchEraAbbr);\n addRegexToken('NNN', matchEraAbbr);\n addRegexToken('NNNN', matchEraName);\n addRegexToken('NNNNN', matchEraNarrow);\n\n addParseToken(\n ['N', 'NN', 'NNN', 'NNNN', 'NNNNN'],\n function (input, array, config, token) {\n var era = config._locale.erasParse(input, token, config._strict);\n if (era) {\n getParsingFlags(config).era = era;\n } else {\n getParsingFlags(config).invalidEra = input;\n }\n }\n );\n\n addRegexToken('y', matchUnsigned);\n addRegexToken('yy', matchUnsigned);\n addRegexToken('yyy', matchUnsigned);\n addRegexToken('yyyy', matchUnsigned);\n addRegexToken('yo', matchEraYearOrdinal);\n\n addParseToken(['y', 'yy', 'yyy', 'yyyy'], YEAR);\n addParseToken(['yo'], function (input, array, config, token) {\n var match;\n if (config._locale._eraYearOrdinalRegex) {\n match = input.match(config._locale._eraYearOrdinalRegex);\n }\n\n if (config._locale.eraYearOrdinalParse) {\n array[YEAR] = config._locale.eraYearOrdinalParse(input, match);\n } else {\n array[YEAR] = parseInt(input, 10);\n }\n });\n\n function localeEras(m, format) {\n var i,\n l,\n date,\n eras = this._eras || getLocale('en')._eras;\n for (i = 0, l = eras.length; i < l; ++i) {\n switch (typeof eras[i].since) {\n case 'string':\n // truncate time\n date = hooks(eras[i].since).startOf('day');\n eras[i].since = date.valueOf();\n break;\n }\n\n switch (typeof eras[i].until) {\n case 'undefined':\n eras[i].until = +Infinity;\n break;\n case 'string':\n // truncate time\n date = hooks(eras[i].until).startOf('day').valueOf();\n eras[i].until = date.valueOf();\n break;\n }\n }\n return eras;\n }\n\n function localeErasParse(eraName, format, strict) {\n var i,\n l,\n eras = this.eras(),\n name,\n abbr,\n narrow;\n eraName = eraName.toUpperCase();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n name = eras[i].name.toUpperCase();\n abbr = eras[i].abbr.toUpperCase();\n narrow = eras[i].narrow.toUpperCase();\n\n if (strict) {\n switch (format) {\n case 'N':\n case 'NN':\n case 'NNN':\n if (abbr === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNN':\n if (name === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNNN':\n if (narrow === eraName) {\n return eras[i];\n }\n break;\n }\n } else if ([name, abbr, narrow].indexOf(eraName) >= 0) {\n return eras[i];\n }\n }\n }\n\n function localeErasConvertYear(era, year) {\n var dir = era.since <= era.until ? +1 : -1;\n if (year === undefined) {\n return hooks(era.since).year();\n } else {\n return hooks(era.since).year() + (year - era.offset) * dir;\n }\n }\n\n function getEraName() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].name;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].name;\n }\n }\n\n return '';\n }\n\n function getEraNarrow() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].narrow;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].narrow;\n }\n }\n\n return '';\n }\n\n function getEraAbbr() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].abbr;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].abbr;\n }\n }\n\n return '';\n }\n\n function getEraYear() {\n var i,\n l,\n dir,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n dir = eras[i].since <= eras[i].until ? +1 : -1;\n\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (\n (eras[i].since <= val && val <= eras[i].until) ||\n (eras[i].until <= val && val <= eras[i].since)\n ) {\n return (\n (this.year() - hooks(eras[i].since).year()) * dir +\n eras[i].offset\n );\n }\n }\n\n return this.year();\n }\n\n function erasNameRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNameRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNameRegex : this._erasRegex;\n }\n\n function erasAbbrRegex(isStrict) {\n if (!hasOwnProp(this, '_erasAbbrRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasAbbrRegex : this._erasRegex;\n }\n\n function erasNarrowRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNarrowRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNarrowRegex : this._erasRegex;\n }\n\n function matchEraAbbr(isStrict, locale) {\n return locale.erasAbbrRegex(isStrict);\n }\n\n function matchEraName(isStrict, locale) {\n return locale.erasNameRegex(isStrict);\n }\n\n function matchEraNarrow(isStrict, locale) {\n return locale.erasNarrowRegex(isStrict);\n }\n\n function matchEraYearOrdinal(isStrict, locale) {\n return locale._eraYearOrdinalRegex || matchUnsigned;\n }\n\n function computeErasParse() {\n var abbrPieces = [],\n namePieces = [],\n narrowPieces = [],\n mixedPieces = [],\n i,\n l,\n eras = this.eras();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n namePieces.push(regexEscape(eras[i].name));\n abbrPieces.push(regexEscape(eras[i].abbr));\n narrowPieces.push(regexEscape(eras[i].narrow));\n\n mixedPieces.push(regexEscape(eras[i].name));\n mixedPieces.push(regexEscape(eras[i].abbr));\n mixedPieces.push(regexEscape(eras[i].narrow));\n }\n\n this._erasRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._erasNameRegex = new RegExp('^(' + namePieces.join('|') + ')', 'i');\n this._erasAbbrRegex = new RegExp('^(' + abbrPieces.join('|') + ')', 'i');\n this._erasNarrowRegex = new RegExp(\n '^(' + narrowPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n addFormatToken(0, ['gg', 2], 0, function () {\n return this.weekYear() % 100;\n });\n\n addFormatToken(0, ['GG', 2], 0, function () {\n return this.isoWeekYear() % 100;\n });\n\n function addWeekYearFormatToken(token, getter) {\n addFormatToken(0, [token, token.length], 0, getter);\n }\n\n addWeekYearFormatToken('gggg', 'weekYear');\n addWeekYearFormatToken('ggggg', 'weekYear');\n addWeekYearFormatToken('GGGG', 'isoWeekYear');\n addWeekYearFormatToken('GGGGG', 'isoWeekYear');\n\n // ALIASES\n\n addUnitAlias('weekYear', 'gg');\n addUnitAlias('isoWeekYear', 'GG');\n\n // PRIORITY\n\n addUnitPriority('weekYear', 1);\n addUnitPriority('isoWeekYear', 1);\n\n // PARSING\n\n addRegexToken('G', matchSigned);\n addRegexToken('g', matchSigned);\n addRegexToken('GG', match1to2, match2);\n addRegexToken('gg', match1to2, match2);\n addRegexToken('GGGG', match1to4, match4);\n addRegexToken('gggg', match1to4, match4);\n addRegexToken('GGGGG', match1to6, match6);\n addRegexToken('ggggg', match1to6, match6);\n\n addWeekParseToken(\n ['gggg', 'ggggg', 'GGGG', 'GGGGG'],\n function (input, week, config, token) {\n week[token.substr(0, 2)] = toInt(input);\n }\n );\n\n addWeekParseToken(['gg', 'GG'], function (input, week, config, token) {\n week[token] = hooks.parseTwoDigitYear(input);\n });\n\n // MOMENTS\n\n function getSetWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.week(),\n this.weekday(),\n this.localeData()._week.dow,\n this.localeData()._week.doy\n );\n }\n\n function getSetISOWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.isoWeek(),\n this.isoWeekday(),\n 1,\n 4\n );\n }\n\n function getISOWeeksInYear() {\n return weeksInYear(this.year(), 1, 4);\n }\n\n function getISOWeeksInISOWeekYear() {\n return weeksInYear(this.isoWeekYear(), 1, 4);\n }\n\n function getWeeksInYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n }\n\n function getWeeksInWeekYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy);\n }\n\n function getSetWeekYearHelper(input, week, weekday, dow, doy) {\n var weeksTarget;\n if (input == null) {\n return weekOfYear(this, dow, doy).year;\n } else {\n weeksTarget = weeksInYear(input, dow, doy);\n if (week > weeksTarget) {\n week = weeksTarget;\n }\n return setWeekAll.call(this, input, week, weekday, dow, doy);\n }\n }\n\n function setWeekAll(weekYear, week, weekday, dow, doy) {\n var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),\n date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);\n\n this.year(date.getUTCFullYear());\n this.month(date.getUTCMonth());\n this.date(date.getUTCDate());\n return this;\n }\n\n // FORMATTING\n\n addFormatToken('Q', 0, 'Qo', 'quarter');\n\n // ALIASES\n\n addUnitAlias('quarter', 'Q');\n\n // PRIORITY\n\n addUnitPriority('quarter', 7);\n\n // PARSING\n\n addRegexToken('Q', match1);\n addParseToken('Q', function (input, array) {\n array[MONTH] = (toInt(input) - 1) * 3;\n });\n\n // MOMENTS\n\n function getSetQuarter(input) {\n return input == null\n ? Math.ceil((this.month() + 1) / 3)\n : this.month((input - 1) * 3 + (this.month() % 3));\n }\n\n // FORMATTING\n\n addFormatToken('D', ['DD', 2], 'Do', 'date');\n\n // ALIASES\n\n addUnitAlias('date', 'D');\n\n // PRIORITY\n addUnitPriority('date', 9);\n\n // PARSING\n\n addRegexToken('D', match1to2);\n addRegexToken('DD', match1to2, match2);\n addRegexToken('Do', function (isStrict, locale) {\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n return isStrict\n ? locale._dayOfMonthOrdinalParse || locale._ordinalParse\n : locale._dayOfMonthOrdinalParseLenient;\n });\n\n addParseToken(['D', 'DD'], DATE);\n addParseToken('Do', function (input, array) {\n array[DATE] = toInt(input.match(match1to2)[0]);\n });\n\n // MOMENTS\n\n var getSetDayOfMonth = makeGetSet('Date', true);\n\n // FORMATTING\n\n addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');\n\n // ALIASES\n\n addUnitAlias('dayOfYear', 'DDD');\n\n // PRIORITY\n addUnitPriority('dayOfYear', 4);\n\n // PARSING\n\n addRegexToken('DDD', match1to3);\n addRegexToken('DDDD', match3);\n addParseToken(['DDD', 'DDDD'], function (input, array, config) {\n config._dayOfYear = toInt(input);\n });\n\n // HELPERS\n\n // MOMENTS\n\n function getSetDayOfYear(input) {\n var dayOfYear =\n Math.round(\n (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5\n ) + 1;\n return input == null ? dayOfYear : this.add(input - dayOfYear, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('m', ['mm', 2], 0, 'minute');\n\n // ALIASES\n\n addUnitAlias('minute', 'm');\n\n // PRIORITY\n\n addUnitPriority('minute', 14);\n\n // PARSING\n\n addRegexToken('m', match1to2);\n addRegexToken('mm', match1to2, match2);\n addParseToken(['m', 'mm'], MINUTE);\n\n // MOMENTS\n\n var getSetMinute = makeGetSet('Minutes', false);\n\n // FORMATTING\n\n addFormatToken('s', ['ss', 2], 0, 'second');\n\n // ALIASES\n\n addUnitAlias('second', 's');\n\n // PRIORITY\n\n addUnitPriority('second', 15);\n\n // PARSING\n\n addRegexToken('s', match1to2);\n addRegexToken('ss', match1to2, match2);\n addParseToken(['s', 'ss'], SECOND);\n\n // MOMENTS\n\n var getSetSecond = makeGetSet('Seconds', false);\n\n // FORMATTING\n\n addFormatToken('S', 0, 0, function () {\n return ~~(this.millisecond() / 100);\n });\n\n addFormatToken(0, ['SS', 2], 0, function () {\n return ~~(this.millisecond() / 10);\n });\n\n addFormatToken(0, ['SSS', 3], 0, 'millisecond');\n addFormatToken(0, ['SSSS', 4], 0, function () {\n return this.millisecond() * 10;\n });\n addFormatToken(0, ['SSSSS', 5], 0, function () {\n return this.millisecond() * 100;\n });\n addFormatToken(0, ['SSSSSS', 6], 0, function () {\n return this.millisecond() * 1000;\n });\n addFormatToken(0, ['SSSSSSS', 7], 0, function () {\n return this.millisecond() * 10000;\n });\n addFormatToken(0, ['SSSSSSSS', 8], 0, function () {\n return this.millisecond() * 100000;\n });\n addFormatToken(0, ['SSSSSSSSS', 9], 0, function () {\n return this.millisecond() * 1000000;\n });\n\n // ALIASES\n\n addUnitAlias('millisecond', 'ms');\n\n // PRIORITY\n\n addUnitPriority('millisecond', 16);\n\n // PARSING\n\n addRegexToken('S', match1to3, match1);\n addRegexToken('SS', match1to3, match2);\n addRegexToken('SSS', match1to3, match3);\n\n var token, getSetMillisecond;\n for (token = 'SSSS'; token.length <= 9; token += 'S') {\n addRegexToken(token, matchUnsigned);\n }\n\n function parseMs(input, array) {\n array[MILLISECOND] = toInt(('0.' + input) * 1000);\n }\n\n for (token = 'S'; token.length <= 9; token += 'S') {\n addParseToken(token, parseMs);\n }\n\n getSetMillisecond = makeGetSet('Milliseconds', false);\n\n // FORMATTING\n\n addFormatToken('z', 0, 0, 'zoneAbbr');\n addFormatToken('zz', 0, 0, 'zoneName');\n\n // MOMENTS\n\n function getZoneAbbr() {\n return this._isUTC ? 'UTC' : '';\n }\n\n function getZoneName() {\n return this._isUTC ? 'Coordinated Universal Time' : '';\n }\n\n var proto = Moment.prototype;\n\n proto.add = add;\n proto.calendar = calendar$1;\n proto.clone = clone;\n proto.diff = diff;\n proto.endOf = endOf;\n proto.format = format;\n proto.from = from;\n proto.fromNow = fromNow;\n proto.to = to;\n proto.toNow = toNow;\n proto.get = stringGet;\n proto.invalidAt = invalidAt;\n proto.isAfter = isAfter;\n proto.isBefore = isBefore;\n proto.isBetween = isBetween;\n proto.isSame = isSame;\n proto.isSameOrAfter = isSameOrAfter;\n proto.isSameOrBefore = isSameOrBefore;\n proto.isValid = isValid$2;\n proto.lang = lang;\n proto.locale = locale;\n proto.localeData = localeData;\n proto.max = prototypeMax;\n proto.min = prototypeMin;\n proto.parsingFlags = parsingFlags;\n proto.set = stringSet;\n proto.startOf = startOf;\n proto.subtract = subtract;\n proto.toArray = toArray;\n proto.toObject = toObject;\n proto.toDate = toDate;\n proto.toISOString = toISOString;\n proto.inspect = inspect;\n if (typeof Symbol !== 'undefined' && Symbol.for != null) {\n proto[Symbol.for('nodejs.util.inspect.custom')] = function () {\n return 'Moment<' + this.format() + '>';\n };\n }\n proto.toJSON = toJSON;\n proto.toString = toString;\n proto.unix = unix;\n proto.valueOf = valueOf;\n proto.creationData = creationData;\n proto.eraName = getEraName;\n proto.eraNarrow = getEraNarrow;\n proto.eraAbbr = getEraAbbr;\n proto.eraYear = getEraYear;\n proto.year = getSetYear;\n proto.isLeapYear = getIsLeapYear;\n proto.weekYear = getSetWeekYear;\n proto.isoWeekYear = getSetISOWeekYear;\n proto.quarter = proto.quarters = getSetQuarter;\n proto.month = getSetMonth;\n proto.daysInMonth = getDaysInMonth;\n proto.week = proto.weeks = getSetWeek;\n proto.isoWeek = proto.isoWeeks = getSetISOWeek;\n proto.weeksInYear = getWeeksInYear;\n proto.weeksInWeekYear = getWeeksInWeekYear;\n proto.isoWeeksInYear = getISOWeeksInYear;\n proto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear;\n proto.date = getSetDayOfMonth;\n proto.day = proto.days = getSetDayOfWeek;\n proto.weekday = getSetLocaleDayOfWeek;\n proto.isoWeekday = getSetISODayOfWeek;\n proto.dayOfYear = getSetDayOfYear;\n proto.hour = proto.hours = getSetHour;\n proto.minute = proto.minutes = getSetMinute;\n proto.second = proto.seconds = getSetSecond;\n proto.millisecond = proto.milliseconds = getSetMillisecond;\n proto.utcOffset = getSetOffset;\n proto.utc = setOffsetToUTC;\n proto.local = setOffsetToLocal;\n proto.parseZone = setOffsetToParsedOffset;\n proto.hasAlignedHourOffset = hasAlignedHourOffset;\n proto.isDST = isDaylightSavingTime;\n proto.isLocal = isLocal;\n proto.isUtcOffset = isUtcOffset;\n proto.isUtc = isUtc;\n proto.isUTC = isUtc;\n proto.zoneAbbr = getZoneAbbr;\n proto.zoneName = getZoneName;\n proto.dates = deprecate(\n 'dates accessor is deprecated. Use date instead.',\n getSetDayOfMonth\n );\n proto.months = deprecate(\n 'months accessor is deprecated. Use month instead',\n getSetMonth\n );\n proto.years = deprecate(\n 'years accessor is deprecated. Use year instead',\n getSetYear\n );\n proto.zone = deprecate(\n 'moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/',\n getSetZone\n );\n proto.isDSTShifted = deprecate(\n 'isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information',\n isDaylightSavingTimeShifted\n );\n\n function createUnix(input) {\n return createLocal(input * 1000);\n }\n\n function createInZone() {\n return createLocal.apply(null, arguments).parseZone();\n }\n\n function preParsePostFormat(string) {\n return string;\n }\n\n var proto$1 = Locale.prototype;\n\n proto$1.calendar = calendar;\n proto$1.longDateFormat = longDateFormat;\n proto$1.invalidDate = invalidDate;\n proto$1.ordinal = ordinal;\n proto$1.preparse = preParsePostFormat;\n proto$1.postformat = preParsePostFormat;\n proto$1.relativeTime = relativeTime;\n proto$1.pastFuture = pastFuture;\n proto$1.set = set;\n proto$1.eras = localeEras;\n proto$1.erasParse = localeErasParse;\n proto$1.erasConvertYear = localeErasConvertYear;\n proto$1.erasAbbrRegex = erasAbbrRegex;\n proto$1.erasNameRegex = erasNameRegex;\n proto$1.erasNarrowRegex = erasNarrowRegex;\n\n proto$1.months = localeMonths;\n proto$1.monthsShort = localeMonthsShort;\n proto$1.monthsParse = localeMonthsParse;\n proto$1.monthsRegex = monthsRegex;\n proto$1.monthsShortRegex = monthsShortRegex;\n proto$1.week = localeWeek;\n proto$1.firstDayOfYear = localeFirstDayOfYear;\n proto$1.firstDayOfWeek = localeFirstDayOfWeek;\n\n proto$1.weekdays = localeWeekdays;\n proto$1.weekdaysMin = localeWeekdaysMin;\n proto$1.weekdaysShort = localeWeekdaysShort;\n proto$1.weekdaysParse = localeWeekdaysParse;\n\n proto$1.weekdaysRegex = weekdaysRegex;\n proto$1.weekdaysShortRegex = weekdaysShortRegex;\n proto$1.weekdaysMinRegex = weekdaysMinRegex;\n\n proto$1.isPM = localeIsPM;\n proto$1.meridiem = localeMeridiem;\n\n function get$1(format, index, field, setter) {\n var locale = getLocale(),\n utc = createUTC().set(setter, index);\n return locale[field](utc, format);\n }\n\n function listMonthsImpl(format, index, field) {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n\n if (index != null) {\n return get$1(format, index, field, 'month');\n }\n\n var i,\n out = [];\n for (i = 0; i < 12; i++) {\n out[i] = get$1(format, i, field, 'month');\n }\n return out;\n }\n\n // ()\n // (5)\n // (fmt, 5)\n // (fmt)\n // (true)\n // (true, 5)\n // (true, fmt, 5)\n // (true, fmt)\n function listWeekdaysImpl(localeSorted, format, index, field) {\n if (typeof localeSorted === 'boolean') {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n } else {\n format = localeSorted;\n index = format;\n localeSorted = false;\n\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n }\n\n var locale = getLocale(),\n shift = localeSorted ? locale._week.dow : 0,\n i,\n out = [];\n\n if (index != null) {\n return get$1(format, (index + shift) % 7, field, 'day');\n }\n\n for (i = 0; i < 7; i++) {\n out[i] = get$1(format, (i + shift) % 7, field, 'day');\n }\n return out;\n }\n\n function listMonths(format, index) {\n return listMonthsImpl(format, index, 'months');\n }\n\n function listMonthsShort(format, index) {\n return listMonthsImpl(format, index, 'monthsShort');\n }\n\n function listWeekdays(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdays');\n }\n\n function listWeekdaysShort(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');\n }\n\n function listWeekdaysMin(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');\n }\n\n getSetGlobalLocale('en', {\n eras: [\n {\n since: '0001-01-01',\n until: +Infinity,\n offset: 1,\n name: 'Anno Domini',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: 'Before Christ',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n toInt((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n // Side effect imports\n\n hooks.lang = deprecate(\n 'moment.lang is deprecated. Use moment.locale instead.',\n getSetGlobalLocale\n );\n hooks.langData = deprecate(\n 'moment.langData is deprecated. Use moment.localeData instead.',\n getLocale\n );\n\n var mathAbs = Math.abs;\n\n function abs() {\n var data = this._data;\n\n this._milliseconds = mathAbs(this._milliseconds);\n this._days = mathAbs(this._days);\n this._months = mathAbs(this._months);\n\n data.milliseconds = mathAbs(data.milliseconds);\n data.seconds = mathAbs(data.seconds);\n data.minutes = mathAbs(data.minutes);\n data.hours = mathAbs(data.hours);\n data.months = mathAbs(data.months);\n data.years = mathAbs(data.years);\n\n return this;\n }\n\n function addSubtract$1(duration, input, value, direction) {\n var other = createDuration(input, value);\n\n duration._milliseconds += direction * other._milliseconds;\n duration._days += direction * other._days;\n duration._months += direction * other._months;\n\n return duration._bubble();\n }\n\n // supports only 2.0-style add(1, 's') or add(duration)\n function add$1(input, value) {\n return addSubtract$1(this, input, value, 1);\n }\n\n // supports only 2.0-style subtract(1, 's') or subtract(duration)\n function subtract$1(input, value) {\n return addSubtract$1(this, input, value, -1);\n }\n\n function absCeil(number) {\n if (number < 0) {\n return Math.floor(number);\n } else {\n return Math.ceil(number);\n }\n }\n\n function bubble() {\n var milliseconds = this._milliseconds,\n days = this._days,\n months = this._months,\n data = this._data,\n seconds,\n minutes,\n hours,\n years,\n monthsFromDays;\n\n // if we have a mix of positive and negative values, bubble down first\n // check: https://github.com/moment/moment/issues/2166\n if (\n !(\n (milliseconds >= 0 && days >= 0 && months >= 0) ||\n (milliseconds <= 0 && days <= 0 && months <= 0)\n )\n ) {\n milliseconds += absCeil(monthsToDays(months) + days) * 864e5;\n days = 0;\n months = 0;\n }\n\n // The following code bubbles up values, see the tests for\n // examples of what that means.\n data.milliseconds = milliseconds % 1000;\n\n seconds = absFloor(milliseconds / 1000);\n data.seconds = seconds % 60;\n\n minutes = absFloor(seconds / 60);\n data.minutes = minutes % 60;\n\n hours = absFloor(minutes / 60);\n data.hours = hours % 24;\n\n days += absFloor(hours / 24);\n\n // convert days to months\n monthsFromDays = absFloor(daysToMonths(days));\n months += monthsFromDays;\n days -= absCeil(monthsToDays(monthsFromDays));\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n data.days = days;\n data.months = months;\n data.years = years;\n\n return this;\n }\n\n function daysToMonths(days) {\n // 400 years have 146097 days (taking into account leap year rules)\n // 400 years have 12 months === 4800\n return (days * 4800) / 146097;\n }\n\n function monthsToDays(months) {\n // the reverse of daysToMonths\n return (months * 146097) / 4800;\n }\n\n function as(units) {\n if (!this.isValid()) {\n return NaN;\n }\n var days,\n months,\n milliseconds = this._milliseconds;\n\n units = normalizeUnits(units);\n\n if (units === 'month' || units === 'quarter' || units === 'year') {\n days = this._days + milliseconds / 864e5;\n months = this._months + daysToMonths(days);\n switch (units) {\n case 'month':\n return months;\n case 'quarter':\n return months / 3;\n case 'year':\n return months / 12;\n }\n } else {\n // handle milliseconds separately because of floating point math errors (issue #1867)\n days = this._days + Math.round(monthsToDays(this._months));\n switch (units) {\n case 'week':\n return days / 7 + milliseconds / 6048e5;\n case 'day':\n return days + milliseconds / 864e5;\n case 'hour':\n return days * 24 + milliseconds / 36e5;\n case 'minute':\n return days * 1440 + milliseconds / 6e4;\n case 'second':\n return days * 86400 + milliseconds / 1000;\n // Math.floor prevents floating point math errors here\n case 'millisecond':\n return Math.floor(days * 864e5) + milliseconds;\n default:\n throw new Error('Unknown unit ' + units);\n }\n }\n }\n\n // TODO: Use this.as('ms')?\n function valueOf$1() {\n if (!this.isValid()) {\n return NaN;\n }\n return (\n this._milliseconds +\n this._days * 864e5 +\n (this._months % 12) * 2592e6 +\n toInt(this._months / 12) * 31536e6\n );\n }\n\n function makeAs(alias) {\n return function () {\n return this.as(alias);\n };\n }\n\n var asMilliseconds = makeAs('ms'),\n asSeconds = makeAs('s'),\n asMinutes = makeAs('m'),\n asHours = makeAs('h'),\n asDays = makeAs('d'),\n asWeeks = makeAs('w'),\n asMonths = makeAs('M'),\n asQuarters = makeAs('Q'),\n asYears = makeAs('y');\n\n function clone$1() {\n return createDuration(this);\n }\n\n function get$2(units) {\n units = normalizeUnits(units);\n return this.isValid() ? this[units + 's']() : NaN;\n }\n\n function makeGetter(name) {\n return function () {\n return this.isValid() ? this._data[name] : NaN;\n };\n }\n\n var milliseconds = makeGetter('milliseconds'),\n seconds = makeGetter('seconds'),\n minutes = makeGetter('minutes'),\n hours = makeGetter('hours'),\n days = makeGetter('days'),\n months = makeGetter('months'),\n years = makeGetter('years');\n\n function weeks() {\n return absFloor(this.days() / 7);\n }\n\n var round = Math.round,\n thresholds = {\n ss: 44, // a few seconds to seconds\n s: 45, // seconds to minute\n m: 45, // minutes to hour\n h: 22, // hours to day\n d: 26, // days to month/week\n w: null, // weeks to month\n M: 11, // months to year\n };\n\n // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\n function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n }\n\n function relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) {\n var duration = createDuration(posNegDuration).abs(),\n seconds = round(duration.as('s')),\n minutes = round(duration.as('m')),\n hours = round(duration.as('h')),\n days = round(duration.as('d')),\n months = round(duration.as('M')),\n weeks = round(duration.as('w')),\n years = round(duration.as('y')),\n a =\n (seconds <= thresholds.ss && ['s', seconds]) ||\n (seconds < thresholds.s && ['ss', seconds]) ||\n (minutes <= 1 && ['m']) ||\n (minutes < thresholds.m && ['mm', minutes]) ||\n (hours <= 1 && ['h']) ||\n (hours < thresholds.h && ['hh', hours]) ||\n (days <= 1 && ['d']) ||\n (days < thresholds.d && ['dd', days]);\n\n if (thresholds.w != null) {\n a =\n a ||\n (weeks <= 1 && ['w']) ||\n (weeks < thresholds.w && ['ww', weeks]);\n }\n a = a ||\n (months <= 1 && ['M']) ||\n (months < thresholds.M && ['MM', months]) ||\n (years <= 1 && ['y']) || ['yy', years];\n\n a[2] = withoutSuffix;\n a[3] = +posNegDuration > 0;\n a[4] = locale;\n return substituteTimeAgo.apply(null, a);\n }\n\n // This function allows you to set the rounding function for relative time strings\n function getSetRelativeTimeRounding(roundingFunction) {\n if (roundingFunction === undefined) {\n return round;\n }\n if (typeof roundingFunction === 'function') {\n round = roundingFunction;\n return true;\n }\n return false;\n }\n\n // This function allows you to set a threshold for relative time strings\n function getSetRelativeTimeThreshold(threshold, limit) {\n if (thresholds[threshold] === undefined) {\n return false;\n }\n if (limit === undefined) {\n return thresholds[threshold];\n }\n thresholds[threshold] = limit;\n if (threshold === 's') {\n thresholds.ss = limit - 1;\n }\n return true;\n }\n\n function humanize(argWithSuffix, argThresholds) {\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var withSuffix = false,\n th = thresholds,\n locale,\n output;\n\n if (typeof argWithSuffix === 'object') {\n argThresholds = argWithSuffix;\n argWithSuffix = false;\n }\n if (typeof argWithSuffix === 'boolean') {\n withSuffix = argWithSuffix;\n }\n if (typeof argThresholds === 'object') {\n th = Object.assign({}, thresholds, argThresholds);\n if (argThresholds.s != null && argThresholds.ss == null) {\n th.ss = argThresholds.s - 1;\n }\n }\n\n locale = this.localeData();\n output = relativeTime$1(this, !withSuffix, th, locale);\n\n if (withSuffix) {\n output = locale.pastFuture(+this, output);\n }\n\n return locale.postformat(output);\n }\n\n var abs$1 = Math.abs;\n\n function sign(x) {\n return (x > 0) - (x < 0) || +x;\n }\n\n function toISOString$1() {\n // for ISO strings we do not use the normal bubbling rules:\n // * milliseconds bubble up until they become hours\n // * days do not bubble at all\n // * months bubble up until they become years\n // This is because there is no context-free conversion between hours and days\n // (think of clock changes)\n // and also not between days and months (28-31 days per month)\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var seconds = abs$1(this._milliseconds) / 1000,\n days = abs$1(this._days),\n months = abs$1(this._months),\n minutes,\n hours,\n years,\n s,\n total = this.asSeconds(),\n totalSign,\n ymSign,\n daysSign,\n hmsSign;\n\n if (!total) {\n // this is the same as C#'s (Noda) and python (isodate)...\n // but not other JS (goog.date)\n return 'P0D';\n }\n\n // 3600 seconds -> 60 minutes -> 1 hour\n minutes = absFloor(seconds / 60);\n hours = absFloor(minutes / 60);\n seconds %= 60;\n minutes %= 60;\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n s = seconds ? seconds.toFixed(3).replace(/\\.?0+$/, '') : '';\n\n totalSign = total < 0 ? '-' : '';\n ymSign = sign(this._months) !== sign(total) ? '-' : '';\n daysSign = sign(this._days) !== sign(total) ? '-' : '';\n hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : '';\n\n return (\n totalSign +\n 'P' +\n (years ? ymSign + years + 'Y' : '') +\n (months ? ymSign + months + 'M' : '') +\n (days ? daysSign + days + 'D' : '') +\n (hours || minutes || seconds ? 'T' : '') +\n (hours ? hmsSign + hours + 'H' : '') +\n (minutes ? hmsSign + minutes + 'M' : '') +\n (seconds ? hmsSign + s + 'S' : '')\n );\n }\n\n var proto$2 = Duration.prototype;\n\n proto$2.isValid = isValid$1;\n proto$2.abs = abs;\n proto$2.add = add$1;\n proto$2.subtract = subtract$1;\n proto$2.as = as;\n proto$2.asMilliseconds = asMilliseconds;\n proto$2.asSeconds = asSeconds;\n proto$2.asMinutes = asMinutes;\n proto$2.asHours = asHours;\n proto$2.asDays = asDays;\n proto$2.asWeeks = asWeeks;\n proto$2.asMonths = asMonths;\n proto$2.asQuarters = asQuarters;\n proto$2.asYears = asYears;\n proto$2.valueOf = valueOf$1;\n proto$2._bubble = bubble;\n proto$2.clone = clone$1;\n proto$2.get = get$2;\n proto$2.milliseconds = milliseconds;\n proto$2.seconds = seconds;\n proto$2.minutes = minutes;\n proto$2.hours = hours;\n proto$2.days = days;\n proto$2.weeks = weeks;\n proto$2.months = months;\n proto$2.years = years;\n proto$2.humanize = humanize;\n proto$2.toISOString = toISOString$1;\n proto$2.toString = toISOString$1;\n proto$2.toJSON = toISOString$1;\n proto$2.locale = locale;\n proto$2.localeData = localeData;\n\n proto$2.toIsoString = deprecate(\n 'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)',\n toISOString$1\n );\n proto$2.lang = lang;\n\n // FORMATTING\n\n addFormatToken('X', 0, 0, 'unix');\n addFormatToken('x', 0, 0, 'valueOf');\n\n // PARSING\n\n addRegexToken('x', matchSigned);\n addRegexToken('X', matchTimestamp);\n addParseToken('X', function (input, array, config) {\n config._d = new Date(parseFloat(input) * 1000);\n });\n addParseToken('x', function (input, array, config) {\n config._d = new Date(toInt(input));\n });\n\n //! moment.js\n\n hooks.version = '2.29.4';\n\n setHookCallback(createLocal);\n\n hooks.fn = proto;\n hooks.min = min;\n hooks.max = max;\n hooks.now = now;\n hooks.utc = createUTC;\n hooks.unix = createUnix;\n hooks.months = listMonths;\n hooks.isDate = isDate;\n hooks.locale = getSetGlobalLocale;\n hooks.invalid = createInvalid;\n hooks.duration = createDuration;\n hooks.isMoment = isMoment;\n hooks.weekdays = listWeekdays;\n hooks.parseZone = createInZone;\n hooks.localeData = getLocale;\n hooks.isDuration = isDuration;\n hooks.monthsShort = listMonthsShort;\n hooks.weekdaysMin = listWeekdaysMin;\n hooks.defineLocale = defineLocale;\n hooks.updateLocale = updateLocale;\n hooks.locales = listLocales;\n hooks.weekdaysShort = listWeekdaysShort;\n hooks.normalizeUnits = normalizeUnits;\n hooks.relativeTimeRounding = getSetRelativeTimeRounding;\n hooks.relativeTimeThreshold = getSetRelativeTimeThreshold;\n hooks.calendarFormat = getCalendarFormat;\n hooks.prototype = proto;\n\n // currently HTML5 input type only supports 24-hour formats\n hooks.HTML5_FMT = {\n DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // \n DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // \n DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // \n DATE: 'YYYY-MM-DD', // \n TIME: 'HH:mm', // \n TIME_SECONDS: 'HH:mm:ss', // \n TIME_MS: 'HH:mm:ss.SSS', // \n WEEK: 'GGGG-[W]WW', // \n MONTH: 'YYYY-MM', // \n };\n\n return hooks;\n\n})));\n","import { Subject } from './Subject';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nexport class BehaviorSubject extends Subject {\n constructor(_value) {\n super();\n this._value = _value;\n }\n get value() {\n return this.getValue();\n }\n _subscribe(subscriber) {\n const subscription = super._subscribe(subscriber);\n if (subscription && !subscription.closed) {\n subscriber.next(this._value);\n }\n return subscription;\n }\n getValue() {\n if (this.hasError) {\n throw this.thrownError;\n }\n else if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n else {\n return this._value;\n }\n }\n next(value) {\n super.next(this._value = value);\n }\n}\n","import { Subscriber } from './Subscriber';\nexport class InnerSubscriber extends Subscriber {\n constructor(parent, outerValue, outerIndex) {\n super();\n this.parent = parent;\n this.outerValue = outerValue;\n this.outerIndex = outerIndex;\n this.index = 0;\n }\n _next(value) {\n this.parent.notifyNext(this.outerValue, value, this.outerIndex, this.index++, this);\n }\n _error(error) {\n this.parent.notifyError(error, this);\n this.unsubscribe();\n }\n _complete() {\n this.parent.notifyComplete(this);\n this.unsubscribe();\n }\n}\n","import { empty } from './observable/empty';\nimport { of } from './observable/of';\nimport { throwError } from './observable/throwError';\nexport var NotificationKind;\n(function (NotificationKind) {\n NotificationKind[\"NEXT\"] = \"N\";\n NotificationKind[\"ERROR\"] = \"E\";\n NotificationKind[\"COMPLETE\"] = \"C\";\n})(NotificationKind || (NotificationKind = {}));\nexport class Notification {\n constructor(kind, value, error) {\n this.kind = kind;\n this.value = value;\n this.error = error;\n this.hasValue = kind === 'N';\n }\n observe(observer) {\n switch (this.kind) {\n case 'N':\n return observer.next && observer.next(this.value);\n case 'E':\n return observer.error && observer.error(this.error);\n case 'C':\n return observer.complete && observer.complete();\n }\n }\n do(next, error, complete) {\n const kind = this.kind;\n switch (kind) {\n case 'N':\n return next && next(this.value);\n case 'E':\n return error && error(this.error);\n case 'C':\n return complete && complete();\n }\n }\n accept(nextOrObserver, error, complete) {\n if (nextOrObserver && typeof nextOrObserver.next === 'function') {\n return this.observe(nextOrObserver);\n }\n else {\n return this.do(nextOrObserver, error, complete);\n }\n }\n toObservable() {\n const kind = this.kind;\n switch (kind) {\n case 'N':\n return of(this.value);\n case 'E':\n return throwError(this.error);\n case 'C':\n return empty();\n }\n throw new Error('unexpected notification kind value');\n }\n static createNext(value) {\n if (typeof value !== 'undefined') {\n return new Notification('N', value);\n }\n return Notification.undefinedValueNotification;\n }\n static createError(err) {\n return new Notification('E', undefined, err);\n }\n static createComplete() {\n return Notification.completeNotification;\n }\n}\nNotification.completeNotification = new Notification('C');\nNotification.undefinedValueNotification = new Notification('N', undefined);\n","import { canReportError } from './util/canReportError';\nimport { toSubscriber } from './util/toSubscriber';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nexport class Observable {\n constructor(subscribe) {\n this._isScalar = false;\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n lift(operator) {\n const observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n }\n subscribe(observerOrNext, error, complete) {\n const { operator } = this;\n const sink = toSubscriber(observerOrNext, error, complete);\n if (operator) {\n sink.add(operator.call(sink, this.source));\n }\n else {\n sink.add(this.source || (config.useDeprecatedSynchronousErrorHandling && !sink.syncErrorThrowable) ?\n this._subscribe(sink) :\n this._trySubscribe(sink));\n }\n if (config.useDeprecatedSynchronousErrorHandling) {\n if (sink.syncErrorThrowable) {\n sink.syncErrorThrowable = false;\n if (sink.syncErrorThrown) {\n throw sink.syncErrorValue;\n }\n }\n }\n return sink;\n }\n _trySubscribe(sink) {\n try {\n return this._subscribe(sink);\n }\n catch (err) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n sink.syncErrorThrown = true;\n sink.syncErrorValue = err;\n }\n if (canReportError(sink)) {\n sink.error(err);\n }\n else {\n console.warn(err);\n }\n }\n }\n forEach(next, promiseCtor) {\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor((resolve, reject) => {\n let subscription;\n subscription = this.subscribe((value) => {\n try {\n next(value);\n }\n catch (err) {\n reject(err);\n if (subscription) {\n subscription.unsubscribe();\n }\n }\n }, reject, resolve);\n });\n }\n _subscribe(subscriber) {\n const { source } = this;\n return source && source.subscribe(subscriber);\n }\n [Symbol_observable]() {\n return this;\n }\n pipe(...operations) {\n if (operations.length === 0) {\n return this;\n }\n return pipeFromArray(operations)(this);\n }\n toPromise(promiseCtor) {\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor((resolve, reject) => {\n let value;\n this.subscribe((x) => value = x, (err) => reject(err), () => resolve(value));\n });\n }\n}\nObservable.create = (subscribe) => {\n return new Observable(subscribe);\n};\nfunction getPromiseCtor(promiseCtor) {\n if (!promiseCtor) {\n promiseCtor = config.Promise || Promise;\n }\n if (!promiseCtor) {\n throw new Error('no Promise impl found');\n }\n return promiseCtor;\n}\n","import { config } from './config';\nimport { hostReportError } from './util/hostReportError';\nexport const empty = {\n closed: true,\n next(value) { },\n error(err) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n throw err;\n }\n else {\n hostReportError(err);\n }\n },\n complete() { }\n};\n","import { Subscriber } from './Subscriber';\nexport class OuterSubscriber extends Subscriber {\n notifyNext(outerValue, innerValue, outerIndex, innerIndex, innerSub) {\n this.destination.next(innerValue);\n }\n notifyError(error, innerSub) {\n this.destination.error(error);\n }\n notifyComplete(innerSub) {\n this.destination.complete();\n }\n}\n","import { Subject } from './Subject';\nimport { queue } from './scheduler/queue';\nimport { Subscription } from './Subscription';\nimport { ObserveOnSubscriber } from './operators/observeOn';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nimport { SubjectSubscription } from './SubjectSubscription';\nexport class ReplaySubject extends Subject {\n constructor(bufferSize = Number.POSITIVE_INFINITY, windowTime = Number.POSITIVE_INFINITY, scheduler) {\n super();\n this.scheduler = scheduler;\n this._events = [];\n this._infiniteTimeWindow = false;\n this._bufferSize = bufferSize < 1 ? 1 : bufferSize;\n this._windowTime = windowTime < 1 ? 1 : windowTime;\n if (windowTime === Number.POSITIVE_INFINITY) {\n this._infiniteTimeWindow = true;\n this.next = this.nextInfiniteTimeWindow;\n }\n else {\n this.next = this.nextTimeWindow;\n }\n }\n nextInfiniteTimeWindow(value) {\n if (!this.isStopped) {\n const _events = this._events;\n _events.push(value);\n if (_events.length > this._bufferSize) {\n _events.shift();\n }\n }\n super.next(value);\n }\n nextTimeWindow(value) {\n if (!this.isStopped) {\n this._events.push(new ReplayEvent(this._getNow(), value));\n this._trimBufferThenGetEvents();\n }\n super.next(value);\n }\n _subscribe(subscriber) {\n const _infiniteTimeWindow = this._infiniteTimeWindow;\n const _events = _infiniteTimeWindow ? this._events : this._trimBufferThenGetEvents();\n const scheduler = this.scheduler;\n const len = _events.length;\n let subscription;\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n else if (this.isStopped || this.hasError) {\n subscription = Subscription.EMPTY;\n }\n else {\n this.observers.push(subscriber);\n subscription = new SubjectSubscription(this, subscriber);\n }\n if (scheduler) {\n subscriber.add(subscriber = new ObserveOnSubscriber(subscriber, scheduler));\n }\n if (_infiniteTimeWindow) {\n for (let i = 0; i < len && !subscriber.closed; i++) {\n subscriber.next(_events[i]);\n }\n }\n else {\n for (let i = 0; i < len && !subscriber.closed; i++) {\n subscriber.next(_events[i].value);\n }\n }\n if (this.hasError) {\n subscriber.error(this.thrownError);\n }\n else if (this.isStopped) {\n subscriber.complete();\n }\n return subscription;\n }\n _getNow() {\n return (this.scheduler || queue).now();\n }\n _trimBufferThenGetEvents() {\n const now = this._getNow();\n const _bufferSize = this._bufferSize;\n const _windowTime = this._windowTime;\n const _events = this._events;\n const eventsCount = _events.length;\n let spliceCount = 0;\n while (spliceCount < eventsCount) {\n if ((now - _events[spliceCount].time) < _windowTime) {\n break;\n }\n spliceCount++;\n }\n if (eventsCount > _bufferSize) {\n spliceCount = Math.max(spliceCount, eventsCount - _bufferSize);\n }\n if (spliceCount > 0) {\n _events.splice(0, spliceCount);\n }\n return _events;\n }\n}\nclass ReplayEvent {\n constructor(time, value) {\n this.time = time;\n this.value = value;\n }\n}\n","export class Scheduler {\n constructor(SchedulerAction, now = Scheduler.now) {\n this.SchedulerAction = SchedulerAction;\n this.now = now;\n }\n schedule(work, delay = 0, state) {\n return new this.SchedulerAction(this, work).schedule(state, delay);\n }\n}\nScheduler.now = () => Date.now();\n","import { Observable } from './Observable';\nimport { Subscriber } from './Subscriber';\nimport { Subscription } from './Subscription';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nimport { SubjectSubscription } from './SubjectSubscription';\nimport { rxSubscriber as rxSubscriberSymbol } from '../internal/symbol/rxSubscriber';\nexport class SubjectSubscriber extends Subscriber {\n constructor(destination) {\n super(destination);\n this.destination = destination;\n }\n}\nexport class Subject extends Observable {\n constructor() {\n super();\n this.observers = [];\n this.closed = false;\n this.isStopped = false;\n this.hasError = false;\n this.thrownError = null;\n }\n [rxSubscriberSymbol]() {\n return new SubjectSubscriber(this);\n }\n lift(operator) {\n const subject = new AnonymousSubject(this, this);\n subject.operator = operator;\n return subject;\n }\n next(value) {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n if (!this.isStopped) {\n const { observers } = this;\n const len = observers.length;\n const copy = observers.slice();\n for (let i = 0; i < len; i++) {\n copy[i].next(value);\n }\n }\n }\n error(err) {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n this.hasError = true;\n this.thrownError = err;\n this.isStopped = true;\n const { observers } = this;\n const len = observers.length;\n const copy = observers.slice();\n for (let i = 0; i < len; i++) {\n copy[i].error(err);\n }\n this.observers.length = 0;\n }\n complete() {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n this.isStopped = true;\n const { observers } = this;\n const len = observers.length;\n const copy = observers.slice();\n for (let i = 0; i < len; i++) {\n copy[i].complete();\n }\n this.observers.length = 0;\n }\n unsubscribe() {\n this.isStopped = true;\n this.closed = true;\n this.observers = null;\n }\n _trySubscribe(subscriber) {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n else {\n return super._trySubscribe(subscriber);\n }\n }\n _subscribe(subscriber) {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n else if (this.hasError) {\n subscriber.error(this.thrownError);\n return Subscription.EMPTY;\n }\n else if (this.isStopped) {\n subscriber.complete();\n return Subscription.EMPTY;\n }\n else {\n this.observers.push(subscriber);\n return new SubjectSubscription(this, subscriber);\n }\n }\n asObservable() {\n const observable = new Observable();\n observable.source = this;\n return observable;\n }\n}\nSubject.create = (destination, source) => {\n return new AnonymousSubject(destination, source);\n};\nexport class AnonymousSubject extends Subject {\n constructor(destination, source) {\n super();\n this.destination = destination;\n this.source = source;\n }\n next(value) {\n const { destination } = this;\n if (destination && destination.next) {\n destination.next(value);\n }\n }\n error(err) {\n const { destination } = this;\n if (destination && destination.error) {\n this.destination.error(err);\n }\n }\n complete() {\n const { destination } = this;\n if (destination && destination.complete) {\n this.destination.complete();\n }\n }\n _subscribe(subscriber) {\n const { source } = this;\n if (source) {\n return this.source.subscribe(subscriber);\n }\n else {\n return Subscription.EMPTY;\n }\n }\n}\n","import { Subscription } from './Subscription';\nexport class SubjectSubscription extends Subscription {\n constructor(subject, subscriber) {\n super();\n this.subject = subject;\n this.subscriber = subscriber;\n this.closed = false;\n }\n unsubscribe() {\n if (this.closed) {\n return;\n }\n this.closed = true;\n const subject = this.subject;\n const observers = subject.observers;\n this.subject = null;\n if (!observers || observers.length === 0 || subject.isStopped || subject.closed) {\n return;\n }\n const subscriberIndex = observers.indexOf(this.subscriber);\n if (subscriberIndex !== -1) {\n observers.splice(subscriberIndex, 1);\n }\n }\n}\n","import { isFunction } from './util/isFunction';\nimport { empty as emptyObserver } from './Observer';\nimport { Subscription } from './Subscription';\nimport { rxSubscriber as rxSubscriberSymbol } from '../internal/symbol/rxSubscriber';\nimport { config } from './config';\nimport { hostReportError } from './util/hostReportError';\nexport class Subscriber extends Subscription {\n constructor(destinationOrNext, error, complete) {\n super();\n this.syncErrorValue = null;\n this.syncErrorThrown = false;\n this.syncErrorThrowable = false;\n this.isStopped = false;\n switch (arguments.length) {\n case 0:\n this.destination = emptyObserver;\n break;\n case 1:\n if (!destinationOrNext) {\n this.destination = emptyObserver;\n break;\n }\n if (typeof destinationOrNext === 'object') {\n if (destinationOrNext instanceof Subscriber) {\n this.syncErrorThrowable = destinationOrNext.syncErrorThrowable;\n this.destination = destinationOrNext;\n destinationOrNext.add(this);\n }\n else {\n this.syncErrorThrowable = true;\n this.destination = new SafeSubscriber(this, destinationOrNext);\n }\n break;\n }\n default:\n this.syncErrorThrowable = true;\n this.destination = new SafeSubscriber(this, destinationOrNext, error, complete);\n break;\n }\n }\n [rxSubscriberSymbol]() { return this; }\n static create(next, error, complete) {\n const subscriber = new Subscriber(next, error, complete);\n subscriber.syncErrorThrowable = false;\n return subscriber;\n }\n next(value) {\n if (!this.isStopped) {\n this._next(value);\n }\n }\n error(err) {\n if (!this.isStopped) {\n this.isStopped = true;\n this._error(err);\n }\n }\n complete() {\n if (!this.isStopped) {\n this.isStopped = true;\n this._complete();\n }\n }\n unsubscribe() {\n if (this.closed) {\n return;\n }\n this.isStopped = true;\n super.unsubscribe();\n }\n _next(value) {\n this.destination.next(value);\n }\n _error(err) {\n this.destination.error(err);\n this.unsubscribe();\n }\n _complete() {\n this.destination.complete();\n this.unsubscribe();\n }\n _unsubscribeAndRecycle() {\n const { _parentOrParents } = this;\n this._parentOrParents = null;\n this.unsubscribe();\n this.closed = false;\n this.isStopped = false;\n this._parentOrParents = _parentOrParents;\n return this;\n }\n}\nexport class SafeSubscriber extends Subscriber {\n constructor(_parentSubscriber, observerOrNext, error, complete) {\n super();\n this._parentSubscriber = _parentSubscriber;\n let next;\n let context = this;\n if (isFunction(observerOrNext)) {\n next = observerOrNext;\n }\n else if (observerOrNext) {\n next = observerOrNext.next;\n error = observerOrNext.error;\n complete = observerOrNext.complete;\n if (observerOrNext !== emptyObserver) {\n context = Object.create(observerOrNext);\n if (isFunction(context.unsubscribe)) {\n this.add(context.unsubscribe.bind(context));\n }\n context.unsubscribe = this.unsubscribe.bind(this);\n }\n }\n this._context = context;\n this._next = next;\n this._error = error;\n this._complete = complete;\n }\n next(value) {\n if (!this.isStopped && this._next) {\n const { _parentSubscriber } = this;\n if (!config.useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) {\n this.__tryOrUnsub(this._next, value);\n }\n else if (this.__tryOrSetError(_parentSubscriber, this._next, value)) {\n this.unsubscribe();\n }\n }\n }\n error(err) {\n if (!this.isStopped) {\n const { _parentSubscriber } = this;\n const { useDeprecatedSynchronousErrorHandling } = config;\n if (this._error) {\n if (!useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) {\n this.__tryOrUnsub(this._error, err);\n this.unsubscribe();\n }\n else {\n this.__tryOrSetError(_parentSubscriber, this._error, err);\n this.unsubscribe();\n }\n }\n else if (!_parentSubscriber.syncErrorThrowable) {\n this.unsubscribe();\n if (useDeprecatedSynchronousErrorHandling) {\n throw err;\n }\n hostReportError(err);\n }\n else {\n if (useDeprecatedSynchronousErrorHandling) {\n _parentSubscriber.syncErrorValue = err;\n _parentSubscriber.syncErrorThrown = true;\n }\n else {\n hostReportError(err);\n }\n this.unsubscribe();\n }\n }\n }\n complete() {\n if (!this.isStopped) {\n const { _parentSubscriber } = this;\n if (this._complete) {\n const wrappedComplete = () => this._complete.call(this._context);\n if (!config.useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) {\n this.__tryOrUnsub(wrappedComplete);\n this.unsubscribe();\n }\n else {\n this.__tryOrSetError(_parentSubscriber, wrappedComplete);\n this.unsubscribe();\n }\n }\n else {\n this.unsubscribe();\n }\n }\n }\n __tryOrUnsub(fn, value) {\n try {\n fn.call(this._context, value);\n }\n catch (err) {\n this.unsubscribe();\n if (config.useDeprecatedSynchronousErrorHandling) {\n throw err;\n }\n else {\n hostReportError(err);\n }\n }\n }\n __tryOrSetError(parent, fn, value) {\n if (!config.useDeprecatedSynchronousErrorHandling) {\n throw new Error('bad call');\n }\n try {\n fn.call(this._context, value);\n }\n catch (err) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n parent.syncErrorValue = err;\n parent.syncErrorThrown = true;\n return true;\n }\n else {\n hostReportError(err);\n return true;\n }\n }\n return false;\n }\n _unsubscribe() {\n const { _parentSubscriber } = this;\n this._context = null;\n this._parentSubscriber = null;\n _parentSubscriber.unsubscribe();\n }\n}\n","import { isArray } from './util/isArray';\nimport { isObject } from './util/isObject';\nimport { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nexport class Subscription {\n constructor(unsubscribe) {\n this.closed = false;\n this._parentOrParents = null;\n this._subscriptions = null;\n if (unsubscribe) {\n this._ctorUnsubscribe = true;\n this._unsubscribe = unsubscribe;\n }\n }\n unsubscribe() {\n let errors;\n if (this.closed) {\n return;\n }\n let { _parentOrParents, _ctorUnsubscribe, _unsubscribe, _subscriptions } = this;\n this.closed = true;\n this._parentOrParents = null;\n this._subscriptions = null;\n if (_parentOrParents instanceof Subscription) {\n _parentOrParents.remove(this);\n }\n else if (_parentOrParents !== null) {\n for (let index = 0; index < _parentOrParents.length; ++index) {\n const parent = _parentOrParents[index];\n parent.remove(this);\n }\n }\n if (isFunction(_unsubscribe)) {\n if (_ctorUnsubscribe) {\n this._unsubscribe = undefined;\n }\n try {\n _unsubscribe.call(this);\n }\n catch (e) {\n errors = e instanceof UnsubscriptionError ? flattenUnsubscriptionErrors(e.errors) : [e];\n }\n }\n if (isArray(_subscriptions)) {\n let index = -1;\n let len = _subscriptions.length;\n while (++index < len) {\n const sub = _subscriptions[index];\n if (isObject(sub)) {\n try {\n sub.unsubscribe();\n }\n catch (e) {\n errors = errors || [];\n if (e instanceof UnsubscriptionError) {\n errors = errors.concat(flattenUnsubscriptionErrors(e.errors));\n }\n else {\n errors.push(e);\n }\n }\n }\n }\n }\n if (errors) {\n throw new UnsubscriptionError(errors);\n }\n }\n add(teardown) {\n let subscription = teardown;\n if (!teardown) {\n return Subscription.EMPTY;\n }\n switch (typeof teardown) {\n case 'function':\n subscription = new Subscription(teardown);\n case 'object':\n if (subscription === this || subscription.closed || typeof subscription.unsubscribe !== 'function') {\n return subscription;\n }\n else if (this.closed) {\n subscription.unsubscribe();\n return subscription;\n }\n else if (!(subscription instanceof Subscription)) {\n const tmp = subscription;\n subscription = new Subscription();\n subscription._subscriptions = [tmp];\n }\n break;\n default: {\n throw new Error('unrecognized teardown ' + teardown + ' added to Subscription.');\n }\n }\n let { _parentOrParents } = subscription;\n if (_parentOrParents === null) {\n subscription._parentOrParents = this;\n }\n else if (_parentOrParents instanceof Subscription) {\n if (_parentOrParents === this) {\n return subscription;\n }\n subscription._parentOrParents = [_parentOrParents, this];\n }\n else if (_parentOrParents.indexOf(this) === -1) {\n _parentOrParents.push(this);\n }\n else {\n return subscription;\n }\n const subscriptions = this._subscriptions;\n if (subscriptions === null) {\n this._subscriptions = [subscription];\n }\n else {\n subscriptions.push(subscription);\n }\n return subscription;\n }\n remove(subscription) {\n const subscriptions = this._subscriptions;\n if (subscriptions) {\n const subscriptionIndex = subscriptions.indexOf(subscription);\n if (subscriptionIndex !== -1) {\n subscriptions.splice(subscriptionIndex, 1);\n }\n }\n }\n}\nSubscription.EMPTY = (function (empty) {\n empty.closed = true;\n return empty;\n}(new Subscription()));\nfunction flattenUnsubscriptionErrors(errors) {\n return errors.reduce((errs, err) => errs.concat((err instanceof UnsubscriptionError) ? err.errors : err), []);\n}\n","let _enable_super_gross_mode_that_will_cause_bad_things = false;\nexport const config = {\n Promise: undefined,\n set useDeprecatedSynchronousErrorHandling(value) {\n if (value) {\n const error = new Error();\n console.warn('DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \\n' + error.stack);\n }\n else if (_enable_super_gross_mode_that_will_cause_bad_things) {\n console.log('RxJS: Back to a better error behavior. Thank you. <3');\n }\n _enable_super_gross_mode_that_will_cause_bad_things = value;\n },\n get useDeprecatedSynchronousErrorHandling() {\n return _enable_super_gross_mode_that_will_cause_bad_things;\n },\n};\n","import { Subscriber } from './Subscriber';\nimport { Observable } from './Observable';\nimport { subscribeTo } from './util/subscribeTo';\nexport class SimpleInnerSubscriber extends Subscriber {\n constructor(parent) {\n super();\n this.parent = parent;\n }\n _next(value) {\n this.parent.notifyNext(value);\n }\n _error(error) {\n this.parent.notifyError(error);\n this.unsubscribe();\n }\n _complete() {\n this.parent.notifyComplete();\n this.unsubscribe();\n }\n}\nexport class ComplexInnerSubscriber extends Subscriber {\n constructor(parent, outerValue, outerIndex) {\n super();\n this.parent = parent;\n this.outerValue = outerValue;\n this.outerIndex = outerIndex;\n }\n _next(value) {\n this.parent.notifyNext(this.outerValue, value, this.outerIndex, this);\n }\n _error(error) {\n this.parent.notifyError(error);\n this.unsubscribe();\n }\n _complete() {\n this.parent.notifyComplete(this);\n this.unsubscribe();\n }\n}\nexport class SimpleOuterSubscriber extends Subscriber {\n notifyNext(innerValue) {\n this.destination.next(innerValue);\n }\n notifyError(err) {\n this.destination.error(err);\n }\n notifyComplete() {\n this.destination.complete();\n }\n}\nexport class ComplexOuterSubscriber extends Subscriber {\n notifyNext(_outerValue, innerValue, _outerIndex, _innerSub) {\n this.destination.next(innerValue);\n }\n notifyError(error) {\n this.destination.error(error);\n }\n notifyComplete(_innerSub) {\n this.destination.complete();\n }\n}\nexport function innerSubscribe(result, innerSubscriber) {\n if (innerSubscriber.closed) {\n return undefined;\n }\n if (result instanceof Observable) {\n return result.subscribe(innerSubscriber);\n }\n let subscription;\n try {\n subscription = subscribeTo(result)(innerSubscriber);\n }\n catch (error) {\n innerSubscriber.error(error);\n }\n return subscription;\n}\n","import { SubjectSubscriber } from '../Subject';\nimport { Observable } from '../Observable';\nimport { Subscriber } from '../Subscriber';\nimport { Subscription } from '../Subscription';\nimport { refCount as higherOrderRefCount } from '../operators/refCount';\nexport class ConnectableObservable extends Observable {\n constructor(source, subjectFactory) {\n super();\n this.source = source;\n this.subjectFactory = subjectFactory;\n this._refCount = 0;\n this._isComplete = false;\n }\n _subscribe(subscriber) {\n return this.getSubject().subscribe(subscriber);\n }\n getSubject() {\n const subject = this._subject;\n if (!subject || subject.isStopped) {\n this._subject = this.subjectFactory();\n }\n return this._subject;\n }\n connect() {\n let connection = this._connection;\n if (!connection) {\n this._isComplete = false;\n connection = this._connection = new Subscription();\n connection.add(this.source\n .subscribe(new ConnectableSubscriber(this.getSubject(), this)));\n if (connection.closed) {\n this._connection = null;\n connection = Subscription.EMPTY;\n }\n }\n return connection;\n }\n refCount() {\n return higherOrderRefCount()(this);\n }\n}\nexport const connectableObservableDescriptor = (() => {\n const connectableProto = ConnectableObservable.prototype;\n return {\n operator: { value: null },\n _refCount: { value: 0, writable: true },\n _subject: { value: null, writable: true },\n _connection: { value: null, writable: true },\n _subscribe: { value: connectableProto._subscribe },\n _isComplete: { value: connectableProto._isComplete, writable: true },\n getSubject: { value: connectableProto.getSubject },\n connect: { value: connectableProto.connect },\n refCount: { value: connectableProto.refCount }\n };\n})();\nclass ConnectableSubscriber extends SubjectSubscriber {\n constructor(destination, connectable) {\n super(destination);\n this.connectable = connectable;\n }\n _error(err) {\n this._unsubscribe();\n super._error(err);\n }\n _complete() {\n this.connectable._isComplete = true;\n this._unsubscribe();\n super._complete();\n }\n _unsubscribe() {\n const connectable = this.connectable;\n if (connectable) {\n this.connectable = null;\n const connection = connectable._connection;\n connectable._refCount = 0;\n connectable._subject = null;\n connectable._connection = null;\n if (connection) {\n connection.unsubscribe();\n }\n }\n }\n}\nclass RefCountOperator {\n constructor(connectable) {\n this.connectable = connectable;\n }\n call(subscriber, source) {\n const { connectable } = this;\n connectable._refCount++;\n const refCounter = new RefCountSubscriber(subscriber, connectable);\n const subscription = source.subscribe(refCounter);\n if (!refCounter.closed) {\n refCounter.connection = connectable.connect();\n }\n return subscription;\n }\n}\nclass RefCountSubscriber extends Subscriber {\n constructor(destination, connectable) {\n super(destination);\n this.connectable = connectable;\n }\n _unsubscribe() {\n const { connectable } = this;\n if (!connectable) {\n this.connection = null;\n return;\n }\n this.connectable = null;\n const refCount = connectable._refCount;\n if (refCount <= 0) {\n this.connection = null;\n return;\n }\n connectable._refCount = refCount - 1;\n if (refCount > 1) {\n this.connection = null;\n return;\n }\n const { connection } = this;\n const sharedConnection = connectable._connection;\n this.connection = null;\n if (sharedConnection && (!connection || sharedConnection === connection)) {\n sharedConnection.unsubscribe();\n }\n }\n}\n","import { isScheduler } from '../util/isScheduler';\nimport { isArray } from '../util/isArray';\nimport { OuterSubscriber } from '../OuterSubscriber';\nimport { subscribeToResult } from '../util/subscribeToResult';\nimport { fromArray } from './fromArray';\nconst NONE = {};\nexport function combineLatest(...observables) {\n let resultSelector = undefined;\n let scheduler = undefined;\n if (isScheduler(observables[observables.length - 1])) {\n scheduler = observables.pop();\n }\n if (typeof observables[observables.length - 1] === 'function') {\n resultSelector = observables.pop();\n }\n if (observables.length === 1 && isArray(observables[0])) {\n observables = observables[0];\n }\n return fromArray(observables, scheduler).lift(new CombineLatestOperator(resultSelector));\n}\nexport class CombineLatestOperator {\n constructor(resultSelector) {\n this.resultSelector = resultSelector;\n }\n call(subscriber, source) {\n return source.subscribe(new CombineLatestSubscriber(subscriber, this.resultSelector));\n }\n}\nexport class CombineLatestSubscriber extends OuterSubscriber {\n constructor(destination, resultSelector) {\n super(destination);\n this.resultSelector = resultSelector;\n this.active = 0;\n this.values = [];\n this.observables = [];\n }\n _next(observable) {\n this.values.push(NONE);\n this.observables.push(observable);\n }\n _complete() {\n const observables = this.observables;\n const len = observables.length;\n if (len === 0) {\n this.destination.complete();\n }\n else {\n this.active = len;\n this.toRespond = len;\n for (let i = 0; i < len; i++) {\n const observable = observables[i];\n this.add(subscribeToResult(this, observable, undefined, i));\n }\n }\n }\n notifyComplete(unused) {\n if ((this.active -= 1) === 0) {\n this.destination.complete();\n }\n }\n notifyNext(_outerValue, innerValue, outerIndex) {\n const values = this.values;\n const oldVal = values[outerIndex];\n const toRespond = !this.toRespond\n ? 0\n : oldVal === NONE ? --this.toRespond : this.toRespond;\n values[outerIndex] = innerValue;\n if (toRespond === 0) {\n if (this.resultSelector) {\n this._tryResultSelector(values);\n }\n else {\n this.destination.next(values.slice());\n }\n }\n }\n _tryResultSelector(values) {\n let result;\n try {\n result = this.resultSelector.apply(this, values);\n }\n catch (err) {\n this.destination.error(err);\n return;\n }\n this.destination.next(result);\n }\n}\n","import { of } from './of';\nimport { concatAll } from '../operators/concatAll';\nexport function concat(...observables) {\n return concatAll()(of(...observables));\n}\n","import { Observable } from '../Observable';\nimport { from } from './from';\nimport { empty } from './empty';\nexport function defer(observableFactory) {\n return new Observable(subscriber => {\n let input;\n try {\n input = observableFactory();\n }\n catch (err) {\n subscriber.error(err);\n return undefined;\n }\n const source = input ? from(input) : empty();\n return source.subscribe(subscriber);\n });\n}\n","import { Observable } from '../Observable';\nexport const EMPTY = new Observable(subscriber => subscriber.complete());\nexport function empty(scheduler) {\n return scheduler ? emptyScheduled(scheduler) : EMPTY;\n}\nfunction emptyScheduled(scheduler) {\n return new Observable(subscriber => scheduler.schedule(() => subscriber.complete()));\n}\n","import { Observable } from '../Observable';\nimport { isArray } from '../util/isArray';\nimport { map } from '../operators/map';\nimport { isObject } from '../util/isObject';\nimport { from } from './from';\nexport function forkJoin(...sources) {\n if (sources.length === 1) {\n const first = sources[0];\n if (isArray(first)) {\n return forkJoinInternal(first, null);\n }\n if (isObject(first) && Object.getPrototypeOf(first) === Object.prototype) {\n const keys = Object.keys(first);\n return forkJoinInternal(keys.map(key => first[key]), keys);\n }\n }\n if (typeof sources[sources.length - 1] === 'function') {\n const resultSelector = sources.pop();\n sources = (sources.length === 1 && isArray(sources[0])) ? sources[0] : sources;\n return forkJoinInternal(sources, null).pipe(map((args) => resultSelector(...args)));\n }\n return forkJoinInternal(sources, null);\n}\nfunction forkJoinInternal(sources, keys) {\n return new Observable(subscriber => {\n const len = sources.length;\n if (len === 0) {\n subscriber.complete();\n return;\n }\n const values = new Array(len);\n let completed = 0;\n let emitted = 0;\n for (let i = 0; i < len; i++) {\n const source = from(sources[i]);\n let hasValue = false;\n subscriber.add(source.subscribe({\n next: value => {\n if (!hasValue) {\n hasValue = true;\n emitted++;\n }\n values[i] = value;\n },\n error: err => subscriber.error(err),\n complete: () => {\n completed++;\n if (completed === len || !hasValue) {\n if (emitted === len) {\n subscriber.next(keys ?\n keys.reduce((result, key, i) => (result[key] = values[i], result), {}) :\n values);\n }\n subscriber.complete();\n }\n }\n }));\n }\n });\n}\n","import { Observable } from '../Observable';\nimport { subscribeTo } from '../util/subscribeTo';\nimport { scheduled } from '../scheduled/scheduled';\nexport function from(input, scheduler) {\n if (!scheduler) {\n if (input instanceof Observable) {\n return input;\n }\n return new Observable(subscribeTo(input));\n }\n else {\n return scheduled(input, scheduler);\n }\n}\n","import { Observable } from '../Observable';\nimport { subscribeToArray } from '../util/subscribeToArray';\nimport { scheduleArray } from '../scheduled/scheduleArray';\nexport function fromArray(input, scheduler) {\n if (!scheduler) {\n return new Observable(subscribeToArray(input));\n }\n else {\n return scheduleArray(input, scheduler);\n }\n}\n","import { Observable } from '../Observable';\nimport { isArray } from '../util/isArray';\nimport { isFunction } from '../util/isFunction';\nimport { map } from '../operators/map';\nconst toString = (() => Object.prototype.toString)();\nexport function fromEvent(target, eventName, options, resultSelector) {\n if (isFunction(options)) {\n resultSelector = options;\n options = undefined;\n }\n if (resultSelector) {\n return fromEvent(target, eventName, options).pipe(map(args => isArray(args) ? resultSelector(...args) : resultSelector(args)));\n }\n return new Observable(subscriber => {\n function handler(e) {\n if (arguments.length > 1) {\n subscriber.next(Array.prototype.slice.call(arguments));\n }\n else {\n subscriber.next(e);\n }\n }\n setupSubscription(target, eventName, handler, subscriber, options);\n });\n}\nfunction setupSubscription(sourceObj, eventName, handler, subscriber, options) {\n let unsubscribe;\n if (isEventTarget(sourceObj)) {\n const source = sourceObj;\n sourceObj.addEventListener(eventName, handler, options);\n unsubscribe = () => source.removeEventListener(eventName, handler, options);\n }\n else if (isJQueryStyleEventEmitter(sourceObj)) {\n const source = sourceObj;\n sourceObj.on(eventName, handler);\n unsubscribe = () => source.off(eventName, handler);\n }\n else if (isNodeStyleEventEmitter(sourceObj)) {\n const source = sourceObj;\n sourceObj.addListener(eventName, handler);\n unsubscribe = () => source.removeListener(eventName, handler);\n }\n else if (sourceObj && sourceObj.length) {\n for (let i = 0, len = sourceObj.length; i < len; i++) {\n setupSubscription(sourceObj[i], eventName, handler, subscriber, options);\n }\n }\n else {\n throw new TypeError('Invalid event target');\n }\n subscriber.add(unsubscribe);\n}\nfunction isNodeStyleEventEmitter(sourceObj) {\n return sourceObj && typeof sourceObj.addListener === 'function' && typeof sourceObj.removeListener === 'function';\n}\nfunction isJQueryStyleEventEmitter(sourceObj) {\n return sourceObj && typeof sourceObj.on === 'function' && typeof sourceObj.off === 'function';\n}\nfunction isEventTarget(sourceObj) {\n return sourceObj && typeof sourceObj.addEventListener === 'function' && typeof sourceObj.removeEventListener === 'function';\n}\n","import { Observable } from '../Observable';\nimport { isScheduler } from '../util/isScheduler';\nimport { mergeAll } from '../operators/mergeAll';\nimport { fromArray } from './fromArray';\nexport function merge(...observables) {\n let concurrent = Number.POSITIVE_INFINITY;\n let scheduler = null;\n let last = observables[observables.length - 1];\n if (isScheduler(last)) {\n scheduler = observables.pop();\n if (observables.length > 1 && typeof observables[observables.length - 1] === 'number') {\n concurrent = observables.pop();\n }\n }\n else if (typeof last === 'number') {\n concurrent = observables.pop();\n }\n if (scheduler === null && observables.length === 1 && observables[0] instanceof Observable) {\n return observables[0];\n }\n return mergeAll(concurrent)(fromArray(observables, scheduler));\n}\n","import { isScheduler } from '../util/isScheduler';\nimport { fromArray } from './fromArray';\nimport { scheduleArray } from '../scheduled/scheduleArray';\nexport function of(...args) {\n let scheduler = args[args.length - 1];\n if (isScheduler(scheduler)) {\n args.pop();\n return scheduleArray(args, scheduler);\n }\n else {\n return fromArray(args);\n }\n}\n","import { Observable } from '../Observable';\nexport function throwError(error, scheduler) {\n if (!scheduler) {\n return new Observable(subscriber => subscriber.error(error));\n }\n else {\n return new Observable(subscriber => scheduler.schedule(dispatch, 0, { error, subscriber }));\n }\n}\nfunction dispatch({ error, subscriber }) {\n subscriber.error(error);\n}\n","import { Observable } from '../Observable';\nimport { async } from '../scheduler/async';\nimport { isNumeric } from '../util/isNumeric';\nimport { isScheduler } from '../util/isScheduler';\nexport function timer(dueTime = 0, periodOrScheduler, scheduler) {\n let period = -1;\n if (isNumeric(periodOrScheduler)) {\n period = Number(periodOrScheduler) < 1 && 1 || Number(periodOrScheduler);\n }\n else if (isScheduler(periodOrScheduler)) {\n scheduler = periodOrScheduler;\n }\n if (!isScheduler(scheduler)) {\n scheduler = async;\n }\n return new Observable(subscriber => {\n const due = isNumeric(dueTime)\n ? dueTime\n : (+dueTime - scheduler.now());\n return scheduler.schedule(dispatch, due, {\n index: 0, period, subscriber\n });\n });\n}\nfunction dispatch(state) {\n const { index, period, subscriber } = state;\n subscriber.next(index);\n if (subscriber.closed) {\n return;\n }\n else if (period === -1) {\n return subscriber.complete();\n }\n state.index = index + 1;\n this.schedule(state, period);\n}\n","import { SimpleOuterSubscriber, innerSubscribe, SimpleInnerSubscriber } from '../innerSubscribe';\nexport function audit(durationSelector) {\n return function auditOperatorFunction(source) {\n return source.lift(new AuditOperator(durationSelector));\n };\n}\nclass AuditOperator {\n constructor(durationSelector) {\n this.durationSelector = durationSelector;\n }\n call(subscriber, source) {\n return source.subscribe(new AuditSubscriber(subscriber, this.durationSelector));\n }\n}\nclass AuditSubscriber extends SimpleOuterSubscriber {\n constructor(destination, durationSelector) {\n super(destination);\n this.durationSelector = durationSelector;\n this.hasValue = false;\n }\n _next(value) {\n this.value = value;\n this.hasValue = true;\n if (!this.throttled) {\n let duration;\n try {\n const { durationSelector } = this;\n duration = durationSelector(value);\n }\n catch (err) {\n return this.destination.error(err);\n }\n const innerSubscription = innerSubscribe(duration, new SimpleInnerSubscriber(this));\n if (!innerSubscription || innerSubscription.closed) {\n this.clearThrottle();\n }\n else {\n this.add(this.throttled = innerSubscription);\n }\n }\n }\n clearThrottle() {\n const { value, hasValue, throttled } = this;\n if (throttled) {\n this.remove(throttled);\n this.throttled = undefined;\n throttled.unsubscribe();\n }\n if (hasValue) {\n this.value = undefined;\n this.hasValue = false;\n this.destination.next(value);\n }\n }\n notifyNext() {\n this.clearThrottle();\n }\n notifyComplete() {\n this.clearThrottle();\n }\n}\n","import { async } from '../scheduler/async';\nimport { audit } from './audit';\nimport { timer } from '../observable/timer';\nexport function auditTime(duration, scheduler = async) {\n return audit(() => timer(duration, scheduler));\n}\n","import { SimpleOuterSubscriber, SimpleInnerSubscriber, innerSubscribe } from '../innerSubscribe';\nexport function catchError(selector) {\n return function catchErrorOperatorFunction(source) {\n const operator = new CatchOperator(selector);\n const caught = source.lift(operator);\n return (operator.caught = caught);\n };\n}\nclass CatchOperator {\n constructor(selector) {\n this.selector = selector;\n }\n call(subscriber, source) {\n return source.subscribe(new CatchSubscriber(subscriber, this.selector, this.caught));\n }\n}\nclass CatchSubscriber extends SimpleOuterSubscriber {\n constructor(destination, selector, caught) {\n super(destination);\n this.selector = selector;\n this.caught = caught;\n }\n error(err) {\n if (!this.isStopped) {\n let result;\n try {\n result = this.selector(err, this.caught);\n }\n catch (err2) {\n super.error(err2);\n return;\n }\n this._unsubscribeAndRecycle();\n const innerSubscriber = new SimpleInnerSubscriber(this);\n this.add(innerSubscriber);\n const innerSubscription = innerSubscribe(result, innerSubscriber);\n if (innerSubscription !== innerSubscriber) {\n this.add(innerSubscription);\n }\n }\n }\n}\n","import { mergeAll } from './mergeAll';\nexport function concatAll() {\n return mergeAll(1);\n}\n","import { mergeMap } from './mergeMap';\nexport function concatMap(project, resultSelector) {\n return mergeMap(project, resultSelector, 1);\n}\n","import { Subscriber } from '../Subscriber';\nimport { async } from '../scheduler/async';\nexport function debounceTime(dueTime, scheduler = async) {\n return (source) => source.lift(new DebounceTimeOperator(dueTime, scheduler));\n}\nclass DebounceTimeOperator {\n constructor(dueTime, scheduler) {\n this.dueTime = dueTime;\n this.scheduler = scheduler;\n }\n call(subscriber, source) {\n return source.subscribe(new DebounceTimeSubscriber(subscriber, this.dueTime, this.scheduler));\n }\n}\nclass DebounceTimeSubscriber extends Subscriber {\n constructor(destination, dueTime, scheduler) {\n super(destination);\n this.dueTime = dueTime;\n this.scheduler = scheduler;\n this.debouncedSubscription = null;\n this.lastValue = null;\n this.hasValue = false;\n }\n _next(value) {\n this.clearDebounce();\n this.lastValue = value;\n this.hasValue = true;\n this.add(this.debouncedSubscription = this.scheduler.schedule(dispatchNext, this.dueTime, this));\n }\n _complete() {\n this.debouncedNext();\n this.destination.complete();\n }\n debouncedNext() {\n this.clearDebounce();\n if (this.hasValue) {\n const { lastValue } = this;\n this.lastValue = null;\n this.hasValue = false;\n this.destination.next(lastValue);\n }\n }\n clearDebounce() {\n const debouncedSubscription = this.debouncedSubscription;\n if (debouncedSubscription !== null) {\n this.remove(debouncedSubscription);\n debouncedSubscription.unsubscribe();\n this.debouncedSubscription = null;\n }\n }\n}\nfunction dispatchNext(subscriber) {\n subscriber.debouncedNext();\n}\n","import { Subscriber } from '../Subscriber';\nexport function defaultIfEmpty(defaultValue = null) {\n return (source) => source.lift(new DefaultIfEmptyOperator(defaultValue));\n}\nclass DefaultIfEmptyOperator {\n constructor(defaultValue) {\n this.defaultValue = defaultValue;\n }\n call(subscriber, source) {\n return source.subscribe(new DefaultIfEmptySubscriber(subscriber, this.defaultValue));\n }\n}\nclass DefaultIfEmptySubscriber extends Subscriber {\n constructor(destination, defaultValue) {\n super(destination);\n this.defaultValue = defaultValue;\n this.isEmpty = true;\n }\n _next(value) {\n this.isEmpty = false;\n this.destination.next(value);\n }\n _complete() {\n if (this.isEmpty) {\n this.destination.next(this.defaultValue);\n }\n this.destination.complete();\n }\n}\n","import { Subscriber } from '../Subscriber';\nexport function distinctUntilChanged(compare, keySelector) {\n return (source) => source.lift(new DistinctUntilChangedOperator(compare, keySelector));\n}\nclass DistinctUntilChangedOperator {\n constructor(compare, keySelector) {\n this.compare = compare;\n this.keySelector = keySelector;\n }\n call(subscriber, source) {\n return source.subscribe(new DistinctUntilChangedSubscriber(subscriber, this.compare, this.keySelector));\n }\n}\nclass DistinctUntilChangedSubscriber extends Subscriber {\n constructor(destination, compare, keySelector) {\n super(destination);\n this.keySelector = keySelector;\n this.hasKey = false;\n if (typeof compare === 'function') {\n this.compare = compare;\n }\n }\n compare(x, y) {\n return x === y;\n }\n _next(value) {\n let key;\n try {\n const { keySelector } = this;\n key = keySelector ? keySelector(value) : value;\n }\n catch (err) {\n return this.destination.error(err);\n }\n let result = false;\n if (this.hasKey) {\n try {\n const { compare } = this;\n result = compare(this.key, key);\n }\n catch (err) {\n return this.destination.error(err);\n }\n }\n else {\n this.hasKey = true;\n }\n if (!result) {\n this.key = key;\n this.destination.next(value);\n }\n }\n}\n","import { Subscriber } from '../Subscriber';\nexport function filter(predicate, thisArg) {\n return function filterOperatorFunction(source) {\n return source.lift(new FilterOperator(predicate, thisArg));\n };\n}\nclass FilterOperator {\n constructor(predicate, thisArg) {\n this.predicate = predicate;\n this.thisArg = thisArg;\n }\n call(subscriber, source) {\n return source.subscribe(new FilterSubscriber(subscriber, this.predicate, this.thisArg));\n }\n}\nclass FilterSubscriber extends Subscriber {\n constructor(destination, predicate, thisArg) {\n super(destination);\n this.predicate = predicate;\n this.thisArg = thisArg;\n this.count = 0;\n }\n _next(value) {\n let result;\n try {\n result = this.predicate.call(this.thisArg, value, this.count++);\n }\n catch (err) {\n this.destination.error(err);\n return;\n }\n if (result) {\n this.destination.next(value);\n }\n }\n}\n","import { Subscriber } from '../Subscriber';\nimport { Subscription } from '../Subscription';\nexport function finalize(callback) {\n return (source) => source.lift(new FinallyOperator(callback));\n}\nclass FinallyOperator {\n constructor(callback) {\n this.callback = callback;\n }\n call(subscriber, source) {\n return source.subscribe(new FinallySubscriber(subscriber, this.callback));\n }\n}\nclass FinallySubscriber extends Subscriber {\n constructor(destination, callback) {\n super(destination);\n this.add(new Subscription(callback));\n }\n}\n","import { EmptyError } from '../util/EmptyError';\nimport { filter } from './filter';\nimport { take } from './take';\nimport { defaultIfEmpty } from './defaultIfEmpty';\nimport { throwIfEmpty } from './throwIfEmpty';\nimport { identity } from '../util/identity';\nexport function first(predicate, defaultValue) {\n const hasDefaultValue = arguments.length >= 2;\n return (source) => source.pipe(predicate ? filter((v, i) => predicate(v, i, source)) : identity, take(1), hasDefaultValue ? defaultIfEmpty(defaultValue) : throwIfEmpty(() => new EmptyError()));\n}\n","import { EmptyError } from '../util/EmptyError';\nimport { filter } from './filter';\nimport { takeLast } from './takeLast';\nimport { throwIfEmpty } from './throwIfEmpty';\nimport { defaultIfEmpty } from './defaultIfEmpty';\nimport { identity } from '../util/identity';\nexport function last(predicate, defaultValue) {\n const hasDefaultValue = arguments.length >= 2;\n return (source) => source.pipe(predicate ? filter((v, i) => predicate(v, i, source)) : identity, takeLast(1), hasDefaultValue ? defaultIfEmpty(defaultValue) : throwIfEmpty(() => new EmptyError()));\n}\n","import { Subscriber } from '../Subscriber';\nexport function map(project, thisArg) {\n return function mapOperation(source) {\n if (typeof project !== 'function') {\n throw new TypeError('argument is not a function. Are you looking for `mapTo()`?');\n }\n return source.lift(new MapOperator(project, thisArg));\n };\n}\nexport class MapOperator {\n constructor(project, thisArg) {\n this.project = project;\n this.thisArg = thisArg;\n }\n call(subscriber, source) {\n return source.subscribe(new MapSubscriber(subscriber, this.project, this.thisArg));\n }\n}\nclass MapSubscriber extends Subscriber {\n constructor(destination, project, thisArg) {\n super(destination);\n this.project = project;\n this.count = 0;\n this.thisArg = thisArg || this;\n }\n _next(value) {\n let result;\n try {\n result = this.project.call(this.thisArg, value, this.count++);\n }\n catch (err) {\n this.destination.error(err);\n return;\n }\n this.destination.next(result);\n }\n}\n","import { mergeMap } from './mergeMap';\nimport { identity } from '../util/identity';\nexport function mergeAll(concurrent = Number.POSITIVE_INFINITY) {\n return mergeMap(identity, concurrent);\n}\n","import { map } from './map';\nimport { from } from '../observable/from';\nimport { SimpleOuterSubscriber, SimpleInnerSubscriber, innerSubscribe } from '../innerSubscribe';\nexport function mergeMap(project, resultSelector, concurrent = Number.POSITIVE_INFINITY) {\n if (typeof resultSelector === 'function') {\n return (source) => source.pipe(mergeMap((a, i) => from(project(a, i)).pipe(map((b, ii) => resultSelector(a, b, i, ii))), concurrent));\n }\n else if (typeof resultSelector === 'number') {\n concurrent = resultSelector;\n }\n return (source) => source.lift(new MergeMapOperator(project, concurrent));\n}\nexport class MergeMapOperator {\n constructor(project, concurrent = Number.POSITIVE_INFINITY) {\n this.project = project;\n this.concurrent = concurrent;\n }\n call(observer, source) {\n return source.subscribe(new MergeMapSubscriber(observer, this.project, this.concurrent));\n }\n}\nexport class MergeMapSubscriber extends SimpleOuterSubscriber {\n constructor(destination, project, concurrent = Number.POSITIVE_INFINITY) {\n super(destination);\n this.project = project;\n this.concurrent = concurrent;\n this.hasCompleted = false;\n this.buffer = [];\n this.active = 0;\n this.index = 0;\n }\n _next(value) {\n if (this.active < this.concurrent) {\n this._tryNext(value);\n }\n else {\n this.buffer.push(value);\n }\n }\n _tryNext(value) {\n let result;\n const index = this.index++;\n try {\n result = this.project(value, index);\n }\n catch (err) {\n this.destination.error(err);\n return;\n }\n this.active++;\n this._innerSub(result);\n }\n _innerSub(ish) {\n const innerSubscriber = new SimpleInnerSubscriber(this);\n const destination = this.destination;\n destination.add(innerSubscriber);\n const innerSubscription = innerSubscribe(ish, innerSubscriber);\n if (innerSubscription !== innerSubscriber) {\n destination.add(innerSubscription);\n }\n }\n _complete() {\n this.hasCompleted = true;\n if (this.active === 0 && this.buffer.length === 0) {\n this.destination.complete();\n }\n this.unsubscribe();\n }\n notifyNext(innerValue) {\n this.destination.next(innerValue);\n }\n notifyComplete() {\n const buffer = this.buffer;\n this.active--;\n if (buffer.length > 0) {\n this._next(buffer.shift());\n }\n else if (this.active === 0 && this.hasCompleted) {\n this.destination.complete();\n }\n }\n}\nexport const flatMap = mergeMap;\n","import { connectableObservableDescriptor } from '../observable/ConnectableObservable';\nexport function multicast(subjectOrSubjectFactory, selector) {\n return function multicastOperatorFunction(source) {\n let subjectFactory;\n if (typeof subjectOrSubjectFactory === 'function') {\n subjectFactory = subjectOrSubjectFactory;\n }\n else {\n subjectFactory = function subjectFactory() {\n return subjectOrSubjectFactory;\n };\n }\n if (typeof selector === 'function') {\n return source.lift(new MulticastOperator(subjectFactory, selector));\n }\n const connectable = Object.create(source, connectableObservableDescriptor);\n connectable.source = source;\n connectable.subjectFactory = subjectFactory;\n return connectable;\n };\n}\nexport class MulticastOperator {\n constructor(subjectFactory, selector) {\n this.subjectFactory = subjectFactory;\n this.selector = selector;\n }\n call(subscriber, source) {\n const { selector } = this;\n const subject = this.subjectFactory();\n const subscription = selector(subject).subscribe(subscriber);\n subscription.add(source.subscribe(subject));\n return subscription;\n }\n}\n","import { Subscriber } from '../Subscriber';\nimport { Notification } from '../Notification';\nexport function observeOn(scheduler, delay = 0) {\n return function observeOnOperatorFunction(source) {\n return source.lift(new ObserveOnOperator(scheduler, delay));\n };\n}\nexport class ObserveOnOperator {\n constructor(scheduler, delay = 0) {\n this.scheduler = scheduler;\n this.delay = delay;\n }\n call(subscriber, source) {\n return source.subscribe(new ObserveOnSubscriber(subscriber, this.scheduler, this.delay));\n }\n}\nexport class ObserveOnSubscriber extends Subscriber {\n constructor(destination, scheduler, delay = 0) {\n super(destination);\n this.scheduler = scheduler;\n this.delay = delay;\n }\n static dispatch(arg) {\n const { notification, destination } = arg;\n notification.observe(destination);\n this.unsubscribe();\n }\n scheduleMessage(notification) {\n const destination = this.destination;\n destination.add(this.scheduler.schedule(ObserveOnSubscriber.dispatch, this.delay, new ObserveOnMessage(notification, this.destination)));\n }\n _next(value) {\n this.scheduleMessage(Notification.createNext(value));\n }\n _error(err) {\n this.scheduleMessage(Notification.createError(err));\n this.unsubscribe();\n }\n _complete() {\n this.scheduleMessage(Notification.createComplete());\n this.unsubscribe();\n }\n}\nexport class ObserveOnMessage {\n constructor(notification, destination) {\n this.notification = notification;\n this.destination = destination;\n }\n}\n","import { Subscriber } from '../Subscriber';\nexport function pairwise() {\n return (source) => source.lift(new PairwiseOperator());\n}\nclass PairwiseOperator {\n call(subscriber, source) {\n return source.subscribe(new PairwiseSubscriber(subscriber));\n }\n}\nclass PairwiseSubscriber extends Subscriber {\n constructor(destination) {\n super(destination);\n this.hasPrev = false;\n }\n _next(value) {\n let pair;\n if (this.hasPrev) {\n pair = [this.prev, value];\n }\n else {\n this.hasPrev = true;\n }\n this.prev = value;\n if (pair) {\n this.destination.next(pair);\n }\n }\n}\n","import { Subscriber } from '../Subscriber';\nexport function refCount() {\n return function refCountOperatorFunction(source) {\n return source.lift(new RefCountOperator(source));\n };\n}\nclass RefCountOperator {\n constructor(connectable) {\n this.connectable = connectable;\n }\n call(subscriber, source) {\n const { connectable } = this;\n connectable._refCount++;\n const refCounter = new RefCountSubscriber(subscriber, connectable);\n const subscription = source.subscribe(refCounter);\n if (!refCounter.closed) {\n refCounter.connection = connectable.connect();\n }\n return subscription;\n }\n}\nclass RefCountSubscriber extends Subscriber {\n constructor(destination, connectable) {\n super(destination);\n this.connectable = connectable;\n }\n _unsubscribe() {\n const { connectable } = this;\n if (!connectable) {\n this.connection = null;\n return;\n }\n this.connectable = null;\n const refCount = connectable._refCount;\n if (refCount <= 0) {\n this.connection = null;\n return;\n }\n connectable._refCount = refCount - 1;\n if (refCount > 1) {\n this.connection = null;\n return;\n }\n const { connection } = this;\n const sharedConnection = connectable._connection;\n this.connection = null;\n if (sharedConnection && (!connection || sharedConnection === connection)) {\n sharedConnection.unsubscribe();\n }\n }\n}\n","import { Subscriber } from '../Subscriber';\nexport function scan(accumulator, seed) {\n let hasSeed = false;\n if (arguments.length >= 2) {\n hasSeed = true;\n }\n return function scanOperatorFunction(source) {\n return source.lift(new ScanOperator(accumulator, seed, hasSeed));\n };\n}\nclass ScanOperator {\n constructor(accumulator, seed, hasSeed = false) {\n this.accumulator = accumulator;\n this.seed = seed;\n this.hasSeed = hasSeed;\n }\n call(subscriber, source) {\n return source.subscribe(new ScanSubscriber(subscriber, this.accumulator, this.seed, this.hasSeed));\n }\n}\nclass ScanSubscriber extends Subscriber {\n constructor(destination, accumulator, _seed, hasSeed) {\n super(destination);\n this.accumulator = accumulator;\n this._seed = _seed;\n this.hasSeed = hasSeed;\n this.index = 0;\n }\n get seed() {\n return this._seed;\n }\n set seed(value) {\n this.hasSeed = true;\n this._seed = value;\n }\n _next(value) {\n if (!this.hasSeed) {\n this.seed = value;\n this.destination.next(value);\n }\n else {\n return this._tryNext(value);\n }\n }\n _tryNext(value) {\n const index = this.index++;\n let result;\n try {\n result = this.accumulator(this.seed, value, index);\n }\n catch (err) {\n this.destination.error(err);\n }\n this.seed = result;\n this.destination.next(result);\n }\n}\n","import { multicast } from './multicast';\nimport { refCount } from './refCount';\nimport { Subject } from '../Subject';\nfunction shareSubjectFactory() {\n return new Subject();\n}\nexport function share() {\n return (source) => refCount()(multicast(shareSubjectFactory)(source));\n}\n","import { ReplaySubject } from '../ReplaySubject';\nexport function shareReplay(configOrBufferSize, windowTime, scheduler) {\n let config;\n if (configOrBufferSize && typeof configOrBufferSize === 'object') {\n config = configOrBufferSize;\n }\n else {\n config = {\n bufferSize: configOrBufferSize,\n windowTime,\n refCount: false,\n scheduler,\n };\n }\n return (source) => source.lift(shareReplayOperator(config));\n}\nfunction shareReplayOperator({ bufferSize = Number.POSITIVE_INFINITY, windowTime = Number.POSITIVE_INFINITY, refCount: useRefCount, scheduler, }) {\n let subject;\n let refCount = 0;\n let subscription;\n let hasError = false;\n let isComplete = false;\n return function shareReplayOperation(source) {\n refCount++;\n let innerSub;\n if (!subject || hasError) {\n hasError = false;\n subject = new ReplaySubject(bufferSize, windowTime, scheduler);\n innerSub = subject.subscribe(this);\n subscription = source.subscribe({\n next(value) {\n subject.next(value);\n },\n error(err) {\n hasError = true;\n subject.error(err);\n },\n complete() {\n isComplete = true;\n subscription = undefined;\n subject.complete();\n },\n });\n if (isComplete) {\n subscription = undefined;\n }\n }\n else {\n innerSub = subject.subscribe(this);\n }\n this.add(() => {\n refCount--;\n innerSub.unsubscribe();\n innerSub = undefined;\n if (subscription && !isComplete && useRefCount && refCount === 0) {\n subscription.unsubscribe();\n subscription = undefined;\n subject = undefined;\n }\n });\n };\n}\n","import { Subscriber } from '../Subscriber';\nexport function skip(count) {\n return (source) => source.lift(new SkipOperator(count));\n}\nclass SkipOperator {\n constructor(total) {\n this.total = total;\n }\n call(subscriber, source) {\n return source.subscribe(new SkipSubscriber(subscriber, this.total));\n }\n}\nclass SkipSubscriber extends Subscriber {\n constructor(destination, total) {\n super(destination);\n this.total = total;\n this.count = 0;\n }\n _next(x) {\n if (++this.count > this.total) {\n this.destination.next(x);\n }\n }\n}\n","import { concat } from '../observable/concat';\nimport { isScheduler } from '../util/isScheduler';\nexport function startWith(...array) {\n const scheduler = array[array.length - 1];\n if (isScheduler(scheduler)) {\n array.pop();\n return (source) => concat(array, source, scheduler);\n }\n else {\n return (source) => concat(array, source);\n }\n}\n","import { map } from './map';\nimport { from } from '../observable/from';\nimport { SimpleOuterSubscriber, SimpleInnerSubscriber, innerSubscribe } from '../innerSubscribe';\nexport function switchMap(project, resultSelector) {\n if (typeof resultSelector === 'function') {\n return (source) => source.pipe(switchMap((a, i) => from(project(a, i)).pipe(map((b, ii) => resultSelector(a, b, i, ii)))));\n }\n return (source) => source.lift(new SwitchMapOperator(project));\n}\nclass SwitchMapOperator {\n constructor(project) {\n this.project = project;\n }\n call(subscriber, source) {\n return source.subscribe(new SwitchMapSubscriber(subscriber, this.project));\n }\n}\nclass SwitchMapSubscriber extends SimpleOuterSubscriber {\n constructor(destination, project) {\n super(destination);\n this.project = project;\n this.index = 0;\n }\n _next(value) {\n let result;\n const index = this.index++;\n try {\n result = this.project(value, index);\n }\n catch (error) {\n this.destination.error(error);\n return;\n }\n this._innerSub(result);\n }\n _innerSub(result) {\n const innerSubscription = this.innerSubscription;\n if (innerSubscription) {\n innerSubscription.unsubscribe();\n }\n const innerSubscriber = new SimpleInnerSubscriber(this);\n const destination = this.destination;\n destination.add(innerSubscriber);\n this.innerSubscription = innerSubscribe(result, innerSubscriber);\n if (this.innerSubscription !== innerSubscriber) {\n destination.add(this.innerSubscription);\n }\n }\n _complete() {\n const { innerSubscription } = this;\n if (!innerSubscription || innerSubscription.closed) {\n super._complete();\n }\n this.unsubscribe();\n }\n _unsubscribe() {\n this.innerSubscription = undefined;\n }\n notifyComplete() {\n this.innerSubscription = undefined;\n if (this.isStopped) {\n super._complete();\n }\n }\n notifyNext(innerValue) {\n this.destination.next(innerValue);\n }\n}\n","import { Subscriber } from '../Subscriber';\nimport { ArgumentOutOfRangeError } from '../util/ArgumentOutOfRangeError';\nimport { empty } from '../observable/empty';\nexport function take(count) {\n return (source) => {\n if (count === 0) {\n return empty();\n }\n else {\n return source.lift(new TakeOperator(count));\n }\n };\n}\nclass TakeOperator {\n constructor(total) {\n this.total = total;\n if (this.total < 0) {\n throw new ArgumentOutOfRangeError;\n }\n }\n call(subscriber, source) {\n return source.subscribe(new TakeSubscriber(subscriber, this.total));\n }\n}\nclass TakeSubscriber extends Subscriber {\n constructor(destination, total) {\n super(destination);\n this.total = total;\n this.count = 0;\n }\n _next(value) {\n const total = this.total;\n const count = ++this.count;\n if (count <= total) {\n this.destination.next(value);\n if (count === total) {\n this.destination.complete();\n this.unsubscribe();\n }\n }\n }\n}\n","import { Subscriber } from '../Subscriber';\nimport { ArgumentOutOfRangeError } from '../util/ArgumentOutOfRangeError';\nimport { empty } from '../observable/empty';\nexport function takeLast(count) {\n return function takeLastOperatorFunction(source) {\n if (count === 0) {\n return empty();\n }\n else {\n return source.lift(new TakeLastOperator(count));\n }\n };\n}\nclass TakeLastOperator {\n constructor(total) {\n this.total = total;\n if (this.total < 0) {\n throw new ArgumentOutOfRangeError;\n }\n }\n call(subscriber, source) {\n return source.subscribe(new TakeLastSubscriber(subscriber, this.total));\n }\n}\nclass TakeLastSubscriber extends Subscriber {\n constructor(destination, total) {\n super(destination);\n this.total = total;\n this.ring = new Array();\n this.count = 0;\n }\n _next(value) {\n const ring = this.ring;\n const total = this.total;\n const count = this.count++;\n if (ring.length < total) {\n ring.push(value);\n }\n else {\n const index = count % total;\n ring[index] = value;\n }\n }\n _complete() {\n const destination = this.destination;\n let count = this.count;\n if (count > 0) {\n const total = this.count >= this.total ? this.total : this.count;\n const ring = this.ring;\n for (let i = 0; i < total; i++) {\n const idx = (count++) % total;\n destination.next(ring[idx]);\n }\n }\n destination.complete();\n }\n}\n","import { innerSubscribe, SimpleInnerSubscriber, SimpleOuterSubscriber } from '../innerSubscribe';\nexport function takeUntil(notifier) {\n return (source) => source.lift(new TakeUntilOperator(notifier));\n}\nclass TakeUntilOperator {\n constructor(notifier) {\n this.notifier = notifier;\n }\n call(subscriber, source) {\n const takeUntilSubscriber = new TakeUntilSubscriber(subscriber);\n const notifierSubscription = innerSubscribe(this.notifier, new SimpleInnerSubscriber(takeUntilSubscriber));\n if (notifierSubscription && !takeUntilSubscriber.seenValue) {\n takeUntilSubscriber.add(notifierSubscription);\n return source.subscribe(takeUntilSubscriber);\n }\n return takeUntilSubscriber;\n }\n}\nclass TakeUntilSubscriber extends SimpleOuterSubscriber {\n constructor(destination) {\n super(destination);\n this.seenValue = false;\n }\n notifyNext() {\n this.seenValue = true;\n this.complete();\n }\n notifyComplete() {\n }\n}\n","import { Subscriber } from '../Subscriber';\nexport function takeWhile(predicate, inclusive = false) {\n return (source) => source.lift(new TakeWhileOperator(predicate, inclusive));\n}\nclass TakeWhileOperator {\n constructor(predicate, inclusive) {\n this.predicate = predicate;\n this.inclusive = inclusive;\n }\n call(subscriber, source) {\n return source.subscribe(new TakeWhileSubscriber(subscriber, this.predicate, this.inclusive));\n }\n}\nclass TakeWhileSubscriber extends Subscriber {\n constructor(destination, predicate, inclusive) {\n super(destination);\n this.predicate = predicate;\n this.inclusive = inclusive;\n this.index = 0;\n }\n _next(value) {\n const destination = this.destination;\n let result;\n try {\n result = this.predicate(value, this.index++);\n }\n catch (err) {\n destination.error(err);\n return;\n }\n this.nextOrComplete(value, result);\n }\n nextOrComplete(value, predicateResult) {\n const destination = this.destination;\n if (Boolean(predicateResult)) {\n destination.next(value);\n }\n else {\n if (this.inclusive) {\n destination.next(value);\n }\n destination.complete();\n }\n }\n}\n","import { Subscriber } from '../Subscriber';\nimport { noop } from '../util/noop';\nimport { isFunction } from '../util/isFunction';\nexport function tap(nextOrObserver, error, complete) {\n return function tapOperatorFunction(source) {\n return source.lift(new DoOperator(nextOrObserver, error, complete));\n };\n}\nclass DoOperator {\n constructor(nextOrObserver, error, complete) {\n this.nextOrObserver = nextOrObserver;\n this.error = error;\n this.complete = complete;\n }\n call(subscriber, source) {\n return source.subscribe(new TapSubscriber(subscriber, this.nextOrObserver, this.error, this.complete));\n }\n}\nclass TapSubscriber extends Subscriber {\n constructor(destination, observerOrNext, error, complete) {\n super(destination);\n this._tapNext = noop;\n this._tapError = noop;\n this._tapComplete = noop;\n this._tapError = error || noop;\n this._tapComplete = complete || noop;\n if (isFunction(observerOrNext)) {\n this._context = this;\n this._tapNext = observerOrNext;\n }\n else if (observerOrNext) {\n this._context = observerOrNext;\n this._tapNext = observerOrNext.next || noop;\n this._tapError = observerOrNext.error || noop;\n this._tapComplete = observerOrNext.complete || noop;\n }\n }\n _next(value) {\n try {\n this._tapNext.call(this._context, value);\n }\n catch (err) {\n this.destination.error(err);\n return;\n }\n this.destination.next(value);\n }\n _error(err) {\n try {\n this._tapError.call(this._context, err);\n }\n catch (err) {\n this.destination.error(err);\n return;\n }\n this.destination.error(err);\n }\n _complete() {\n try {\n this._tapComplete.call(this._context);\n }\n catch (err) {\n this.destination.error(err);\n return;\n }\n return this.destination.complete();\n }\n}\n","import { EmptyError } from '../util/EmptyError';\nimport { Subscriber } from '../Subscriber';\nexport function throwIfEmpty(errorFactory = defaultErrorFactory) {\n return (source) => {\n return source.lift(new ThrowIfEmptyOperator(errorFactory));\n };\n}\nclass ThrowIfEmptyOperator {\n constructor(errorFactory) {\n this.errorFactory = errorFactory;\n }\n call(subscriber, source) {\n return source.subscribe(new ThrowIfEmptySubscriber(subscriber, this.errorFactory));\n }\n}\nclass ThrowIfEmptySubscriber extends Subscriber {\n constructor(destination, errorFactory) {\n super(destination);\n this.errorFactory = errorFactory;\n this.hasValue = false;\n }\n _next(value) {\n this.hasValue = true;\n this.destination.next(value);\n }\n _complete() {\n if (!this.hasValue) {\n let err;\n try {\n err = this.errorFactory();\n }\n catch (e) {\n err = e;\n }\n this.destination.error(err);\n }\n else {\n return this.destination.complete();\n }\n }\n}\nfunction defaultErrorFactory() {\n return new EmptyError();\n}\n","import { Observable } from '../Observable';\nimport { Subscription } from '../Subscription';\nexport function scheduleArray(input, scheduler) {\n return new Observable(subscriber => {\n const sub = new Subscription();\n let i = 0;\n sub.add(scheduler.schedule(function () {\n if (i === input.length) {\n subscriber.complete();\n return;\n }\n subscriber.next(input[i++]);\n if (!subscriber.closed) {\n sub.add(this.schedule());\n }\n }));\n return sub;\n });\n}\n","import { Observable } from '../Observable';\nimport { Subscription } from '../Subscription';\nimport { iterator as Symbol_iterator } from '../symbol/iterator';\nexport function scheduleIterable(input, scheduler) {\n if (!input) {\n throw new Error('Iterable cannot be null');\n }\n return new Observable(subscriber => {\n const sub = new Subscription();\n let iterator;\n sub.add(() => {\n if (iterator && typeof iterator.return === 'function') {\n iterator.return();\n }\n });\n sub.add(scheduler.schedule(() => {\n iterator = input[Symbol_iterator]();\n sub.add(scheduler.schedule(function () {\n if (subscriber.closed) {\n return;\n }\n let value;\n let done;\n try {\n const result = iterator.next();\n value = result.value;\n done = result.done;\n }\n catch (err) {\n subscriber.error(err);\n return;\n }\n if (done) {\n subscriber.complete();\n }\n else {\n subscriber.next(value);\n this.schedule();\n }\n }));\n }));\n return sub;\n });\n}\n","import { Observable } from '../Observable';\nimport { Subscription } from '../Subscription';\nimport { observable as Symbol_observable } from '../symbol/observable';\nexport function scheduleObservable(input, scheduler) {\n return new Observable(subscriber => {\n const sub = new Subscription();\n sub.add(scheduler.schedule(() => {\n const observable = input[Symbol_observable]();\n sub.add(observable.subscribe({\n next(value) { sub.add(scheduler.schedule(() => subscriber.next(value))); },\n error(err) { sub.add(scheduler.schedule(() => subscriber.error(err))); },\n complete() { sub.add(scheduler.schedule(() => subscriber.complete())); },\n }));\n }));\n return sub;\n });\n}\n","import { Observable } from '../Observable';\nimport { Subscription } from '../Subscription';\nexport function schedulePromise(input, scheduler) {\n return new Observable(subscriber => {\n const sub = new Subscription();\n sub.add(scheduler.schedule(() => input.then(value => {\n sub.add(scheduler.schedule(() => {\n subscriber.next(value);\n sub.add(scheduler.schedule(() => subscriber.complete()));\n }));\n }, err => {\n sub.add(scheduler.schedule(() => subscriber.error(err)));\n })));\n return sub;\n });\n}\n","import { scheduleObservable } from './scheduleObservable';\nimport { schedulePromise } from './schedulePromise';\nimport { scheduleArray } from './scheduleArray';\nimport { scheduleIterable } from './scheduleIterable';\nimport { isInteropObservable } from '../util/isInteropObservable';\nimport { isPromise } from '../util/isPromise';\nimport { isArrayLike } from '../util/isArrayLike';\nimport { isIterable } from '../util/isIterable';\nexport function scheduled(input, scheduler) {\n if (input != null) {\n if (isInteropObservable(input)) {\n return scheduleObservable(input, scheduler);\n }\n else if (isPromise(input)) {\n return schedulePromise(input, scheduler);\n }\n else if (isArrayLike(input)) {\n return scheduleArray(input, scheduler);\n }\n else if (isIterable(input) || typeof input === 'string') {\n return scheduleIterable(input, scheduler);\n }\n }\n throw new TypeError((input !== null && typeof input || input) + ' is not observable');\n}\n","import { Subscription } from '../Subscription';\nexport class Action extends Subscription {\n constructor(scheduler, work) {\n super();\n }\n schedule(state, delay = 0) {\n return this;\n }\n}\n","import { AsyncAction } from './AsyncAction';\nexport class AnimationFrameAction extends AsyncAction {\n constructor(scheduler, work) {\n super(scheduler, work);\n this.scheduler = scheduler;\n this.work = work;\n }\n requestAsyncId(scheduler, id, delay = 0) {\n if (delay !== null && delay > 0) {\n return super.requestAsyncId(scheduler, id, delay);\n }\n scheduler.actions.push(this);\n return scheduler.scheduled || (scheduler.scheduled = requestAnimationFrame(() => scheduler.flush(null)));\n }\n recycleAsyncId(scheduler, id, delay = 0) {\n if ((delay !== null && delay > 0) || (delay === null && this.delay > 0)) {\n return super.recycleAsyncId(scheduler, id, delay);\n }\n if (scheduler.actions.length === 0) {\n cancelAnimationFrame(id);\n scheduler.scheduled = undefined;\n }\n return undefined;\n }\n}\n","import { AsyncScheduler } from './AsyncScheduler';\nexport class AnimationFrameScheduler extends AsyncScheduler {\n flush(action) {\n this.active = true;\n this.scheduled = undefined;\n const { actions } = this;\n let error;\n let index = -1;\n let count = actions.length;\n action = action || actions.shift();\n do {\n if (error = action.execute(action.state, action.delay)) {\n break;\n }\n } while (++index < count && (action = actions.shift()));\n this.active = false;\n if (error) {\n while (++index < count && (action = actions.shift())) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n","import { Immediate } from '../util/Immediate';\nimport { AsyncAction } from './AsyncAction';\nexport class AsapAction extends AsyncAction {\n constructor(scheduler, work) {\n super(scheduler, work);\n this.scheduler = scheduler;\n this.work = work;\n }\n requestAsyncId(scheduler, id, delay = 0) {\n if (delay !== null && delay > 0) {\n return super.requestAsyncId(scheduler, id, delay);\n }\n scheduler.actions.push(this);\n return scheduler.scheduled || (scheduler.scheduled = Immediate.setImmediate(scheduler.flush.bind(scheduler, null)));\n }\n recycleAsyncId(scheduler, id, delay = 0) {\n if ((delay !== null && delay > 0) || (delay === null && this.delay > 0)) {\n return super.recycleAsyncId(scheduler, id, delay);\n }\n if (scheduler.actions.length === 0) {\n Immediate.clearImmediate(id);\n scheduler.scheduled = undefined;\n }\n return undefined;\n }\n}\n","import { AsyncScheduler } from './AsyncScheduler';\nexport class AsapScheduler extends AsyncScheduler {\n flush(action) {\n this.active = true;\n this.scheduled = undefined;\n const { actions } = this;\n let error;\n let index = -1;\n let count = actions.length;\n action = action || actions.shift();\n do {\n if (error = action.execute(action.state, action.delay)) {\n break;\n }\n } while (++index < count && (action = actions.shift()));\n this.active = false;\n if (error) {\n while (++index < count && (action = actions.shift())) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n","import { Action } from './Action';\nexport class AsyncAction extends Action {\n constructor(scheduler, work) {\n super(scheduler, work);\n this.scheduler = scheduler;\n this.work = work;\n this.pending = false;\n }\n schedule(state, delay = 0) {\n if (this.closed) {\n return this;\n }\n this.state = state;\n const id = this.id;\n const scheduler = this.scheduler;\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, delay);\n }\n this.pending = true;\n this.delay = delay;\n this.id = this.id || this.requestAsyncId(scheduler, this.id, delay);\n return this;\n }\n requestAsyncId(scheduler, id, delay = 0) {\n return setInterval(scheduler.flush.bind(scheduler, this), delay);\n }\n recycleAsyncId(scheduler, id, delay = 0) {\n if (delay !== null && this.delay === delay && this.pending === false) {\n return id;\n }\n clearInterval(id);\n return undefined;\n }\n execute(state, delay) {\n if (this.closed) {\n return new Error('executing a cancelled action');\n }\n this.pending = false;\n const error = this._execute(state, delay);\n if (error) {\n return error;\n }\n else if (this.pending === false && this.id != null) {\n this.id = this.recycleAsyncId(this.scheduler, this.id, null);\n }\n }\n _execute(state, delay) {\n let errored = false;\n let errorValue = undefined;\n try {\n this.work(state);\n }\n catch (e) {\n errored = true;\n errorValue = !!e && e || new Error(e);\n }\n if (errored) {\n this.unsubscribe();\n return errorValue;\n }\n }\n _unsubscribe() {\n const id = this.id;\n const scheduler = this.scheduler;\n const actions = scheduler.actions;\n const index = actions.indexOf(this);\n this.work = null;\n this.state = null;\n this.pending = false;\n this.scheduler = null;\n if (index !== -1) {\n actions.splice(index, 1);\n }\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, null);\n }\n this.delay = null;\n }\n}\n","import { Scheduler } from '../Scheduler';\nexport class AsyncScheduler extends Scheduler {\n constructor(SchedulerAction, now = Scheduler.now) {\n super(SchedulerAction, () => {\n if (AsyncScheduler.delegate && AsyncScheduler.delegate !== this) {\n return AsyncScheduler.delegate.now();\n }\n else {\n return now();\n }\n });\n this.actions = [];\n this.active = false;\n this.scheduled = undefined;\n }\n schedule(work, delay = 0, state) {\n if (AsyncScheduler.delegate && AsyncScheduler.delegate !== this) {\n return AsyncScheduler.delegate.schedule(work, delay, state);\n }\n else {\n return super.schedule(work, delay, state);\n }\n }\n flush(action) {\n const { actions } = this;\n if (this.active) {\n actions.push(action);\n return;\n }\n let error;\n this.active = true;\n do {\n if (error = action.execute(action.state, action.delay)) {\n break;\n }\n } while (action = actions.shift());\n this.active = false;\n if (error) {\n while (action = actions.shift()) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n","import { AsyncAction } from './AsyncAction';\nexport class QueueAction extends AsyncAction {\n constructor(scheduler, work) {\n super(scheduler, work);\n this.scheduler = scheduler;\n this.work = work;\n }\n schedule(state, delay = 0) {\n if (delay > 0) {\n return super.schedule(state, delay);\n }\n this.delay = delay;\n this.state = state;\n this.scheduler.flush(this);\n return this;\n }\n execute(state, delay) {\n return (delay > 0 || this.closed) ?\n super.execute(state, delay) :\n this._execute(state, delay);\n }\n requestAsyncId(scheduler, id, delay = 0) {\n if ((delay !== null && delay > 0) || (delay === null && this.delay > 0)) {\n return super.requestAsyncId(scheduler, id, delay);\n }\n return scheduler.flush(this);\n }\n}\n","import { AsyncScheduler } from './AsyncScheduler';\nexport class QueueScheduler extends AsyncScheduler {\n}\n","import { AnimationFrameAction } from './AnimationFrameAction';\nimport { AnimationFrameScheduler } from './AnimationFrameScheduler';\nexport const animationFrameScheduler = new AnimationFrameScheduler(AnimationFrameAction);\nexport const animationFrame = animationFrameScheduler;\n","import { AsapAction } from './AsapAction';\nimport { AsapScheduler } from './AsapScheduler';\nexport const asapScheduler = new AsapScheduler(AsapAction);\nexport const asap = asapScheduler;\n","import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\nexport const asyncScheduler = new AsyncScheduler(AsyncAction);\nexport const async = asyncScheduler;\n","import { QueueAction } from './QueueAction';\nimport { QueueScheduler } from './QueueScheduler';\nexport const queueScheduler = new QueueScheduler(QueueAction);\nexport const queue = queueScheduler;\n","export function getSymbolIterator() {\n if (typeof Symbol !== 'function' || !Symbol.iterator) {\n return '@@iterator';\n }\n return Symbol.iterator;\n}\nexport const iterator = getSymbolIterator();\nexport const $$iterator = iterator;\n","export const observable = (() => typeof Symbol === 'function' && Symbol.observable || '@@observable')();\n","export const rxSubscriber = (() => typeof Symbol === 'function'\n ? Symbol('rxSubscriber')\n : '@@rxSubscriber_' + Math.random())();\nexport const $$rxSubscriber = rxSubscriber;\n","const ArgumentOutOfRangeErrorImpl = (() => {\n function ArgumentOutOfRangeErrorImpl() {\n Error.call(this);\n this.message = 'argument out of range';\n this.name = 'ArgumentOutOfRangeError';\n return this;\n }\n ArgumentOutOfRangeErrorImpl.prototype = Object.create(Error.prototype);\n return ArgumentOutOfRangeErrorImpl;\n})();\nexport const ArgumentOutOfRangeError = ArgumentOutOfRangeErrorImpl;\n","const EmptyErrorImpl = (() => {\n function EmptyErrorImpl() {\n Error.call(this);\n this.message = 'no elements in sequence';\n this.name = 'EmptyError';\n return this;\n }\n EmptyErrorImpl.prototype = Object.create(Error.prototype);\n return EmptyErrorImpl;\n})();\nexport const EmptyError = EmptyErrorImpl;\n","let nextHandle = 1;\nconst RESOLVED = (() => Promise.resolve())();\nconst activeHandles = {};\nfunction findAndClearHandle(handle) {\n if (handle in activeHandles) {\n delete activeHandles[handle];\n return true;\n }\n return false;\n}\nexport const Immediate = {\n setImmediate(cb) {\n const handle = nextHandle++;\n activeHandles[handle] = true;\n RESOLVED.then(() => findAndClearHandle(handle) && cb());\n return handle;\n },\n clearImmediate(handle) {\n findAndClearHandle(handle);\n },\n};\nexport const TestTools = {\n pending() {\n return Object.keys(activeHandles).length;\n }\n};\n","const ObjectUnsubscribedErrorImpl = (() => {\n function ObjectUnsubscribedErrorImpl() {\n Error.call(this);\n this.message = 'object unsubscribed';\n this.name = 'ObjectUnsubscribedError';\n return this;\n }\n ObjectUnsubscribedErrorImpl.prototype = Object.create(Error.prototype);\n return ObjectUnsubscribedErrorImpl;\n})();\nexport const ObjectUnsubscribedError = ObjectUnsubscribedErrorImpl;\n","const UnsubscriptionErrorImpl = (() => {\n function UnsubscriptionErrorImpl(errors) {\n Error.call(this);\n this.message = errors ?\n `${errors.length} errors occurred during unsubscription:\n${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\\n ')}` : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n return this;\n }\n UnsubscriptionErrorImpl.prototype = Object.create(Error.prototype);\n return UnsubscriptionErrorImpl;\n})();\nexport const UnsubscriptionError = UnsubscriptionErrorImpl;\n","import { Subscriber } from '../Subscriber';\nexport function canReportError(observer) {\n while (observer) {\n const { closed, destination, isStopped } = observer;\n if (closed || isStopped) {\n return false;\n }\n else if (destination && destination instanceof Subscriber) {\n observer = destination;\n }\n else {\n observer = null;\n }\n }\n return true;\n}\n","export function hostReportError(err) {\n setTimeout(() => { throw err; }, 0);\n}\n","export function identity(x) {\n return x;\n}\n","export const isArray = (() => Array.isArray || ((x) => x && typeof x.length === 'number'))();\n","export const isArrayLike = ((x) => x && typeof x.length === 'number' && typeof x !== 'function');\n","export function isFunction(x) {\n return typeof x === 'function';\n}\n","import { observable as Symbol_observable } from '../symbol/observable';\nexport function isInteropObservable(input) {\n return input && typeof input[Symbol_observable] === 'function';\n}\n","import { iterator as Symbol_iterator } from '../symbol/iterator';\nexport function isIterable(input) {\n return input && typeof input[Symbol_iterator] === 'function';\n}\n","import { isArray } from './isArray';\nexport function isNumeric(val) {\n return !isArray(val) && (val - parseFloat(val) + 1) >= 0;\n}\n","export function isObject(x) {\n return x !== null && typeof x === 'object';\n}\n","import { Observable } from '../Observable';\nexport function isObservable(obj) {\n return !!obj && (obj instanceof Observable || (typeof obj.lift === 'function' && typeof obj.subscribe === 'function'));\n}\n","export function isPromise(value) {\n return !!value && typeof value.subscribe !== 'function' && typeof value.then === 'function';\n}\n","export function isScheduler(value) {\n return value && typeof value.schedule === 'function';\n}\n","export function noop() { }\n","import { identity } from './identity';\nexport function pipe(...fns) {\n return pipeFromArray(fns);\n}\nexport function pipeFromArray(fns) {\n if (fns.length === 0) {\n return identity;\n }\n if (fns.length === 1) {\n return fns[0];\n }\n return function piped(input) {\n return fns.reduce((prev, fn) => fn(prev), input);\n };\n}\n","import { subscribeToArray } from './subscribeToArray';\nimport { subscribeToPromise } from './subscribeToPromise';\nimport { subscribeToIterable } from './subscribeToIterable';\nimport { subscribeToObservable } from './subscribeToObservable';\nimport { isArrayLike } from './isArrayLike';\nimport { isPromise } from './isPromise';\nimport { isObject } from './isObject';\nimport { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { observable as Symbol_observable } from '../symbol/observable';\nexport const subscribeTo = (result) => {\n if (!!result && typeof result[Symbol_observable] === 'function') {\n return subscribeToObservable(result);\n }\n else if (isArrayLike(result)) {\n return subscribeToArray(result);\n }\n else if (isPromise(result)) {\n return subscribeToPromise(result);\n }\n else if (!!result && typeof result[Symbol_iterator] === 'function') {\n return subscribeToIterable(result);\n }\n else {\n const value = isObject(result) ? 'an invalid object' : `'${result}'`;\n const msg = `You provided ${value} where a stream was expected.`\n + ' You can provide an Observable, Promise, Array, or Iterable.';\n throw new TypeError(msg);\n }\n};\n","export const subscribeToArray = (array) => (subscriber) => {\n for (let i = 0, len = array.length; i < len && !subscriber.closed; i++) {\n subscriber.next(array[i]);\n }\n subscriber.complete();\n};\n","import { iterator as Symbol_iterator } from '../symbol/iterator';\nexport const subscribeToIterable = (iterable) => (subscriber) => {\n const iterator = iterable[Symbol_iterator]();\n do {\n let item;\n try {\n item = iterator.next();\n }\n catch (err) {\n subscriber.error(err);\n return subscriber;\n }\n if (item.done) {\n subscriber.complete();\n break;\n }\n subscriber.next(item.value);\n if (subscriber.closed) {\n break;\n }\n } while (true);\n if (typeof iterator.return === 'function') {\n subscriber.add(() => {\n if (iterator.return) {\n iterator.return();\n }\n });\n }\n return subscriber;\n};\n","import { observable as Symbol_observable } from '../symbol/observable';\nexport const subscribeToObservable = (obj) => (subscriber) => {\n const obs = obj[Symbol_observable]();\n if (typeof obs.subscribe !== 'function') {\n throw new TypeError('Provided object does not correctly implement Symbol.observable');\n }\n else {\n return obs.subscribe(subscriber);\n }\n};\n","import { hostReportError } from './hostReportError';\nexport const subscribeToPromise = (promise) => (subscriber) => {\n promise.then((value) => {\n if (!subscriber.closed) {\n subscriber.next(value);\n subscriber.complete();\n }\n }, (err) => subscriber.error(err))\n .then(null, hostReportError);\n return subscriber;\n};\n","import { InnerSubscriber } from '../InnerSubscriber';\nimport { subscribeTo } from './subscribeTo';\nimport { Observable } from '../Observable';\nexport function subscribeToResult(outerSubscriber, result, outerValue, outerIndex, innerSubscriber = new InnerSubscriber(outerSubscriber, outerValue, outerIndex)) {\n if (innerSubscriber.closed) {\n return undefined;\n }\n if (result instanceof Observable) {\n return result.subscribe(innerSubscriber);\n }\n return subscribeTo(result)(innerSubscriber);\n}\n","import { Subscriber } from '../Subscriber';\nimport { rxSubscriber as rxSubscriberSymbol } from '../symbol/rxSubscriber';\nimport { empty as emptyObserver } from '../Observer';\nexport function toSubscriber(nextOrObserver, error, complete) {\n if (nextOrObserver) {\n if (nextOrObserver instanceof Subscriber) {\n return nextOrObserver;\n }\n if (nextOrObserver[rxSubscriberSymbol]) {\n return nextOrObserver[rxSubscriberSymbol]();\n }\n }\n if (!nextOrObserver && !error && !complete) {\n return new Subscriber(emptyObserver);\n }\n return new Subscriber(nextOrObserver, error, complete);\n}\n","/**\n * @license Angular v13.3.0\n * (c) 2010-2022 Google LLC. https://angular.io/\n * License: MIT\n */\n\n/**\n * An injectable service that produces an animation sequence programmatically within an\n * Angular component or directive.\n * Provided by the `BrowserAnimationsModule` or `NoopAnimationsModule`.\n *\n * @usageNotes\n *\n * To use this service, add it to your component or directive as a dependency.\n * The service is instantiated along with your component.\n *\n * Apps do not typically need to create their own animation players, but if you\n * do need to, follow these steps:\n *\n * 1. Use the [AnimationBuilder.build](api/animations/AnimationBuilder#build)() method\n * to create a programmatic animation. The method returns an `AnimationFactory` instance.\n *\n * 2. Use the factory object to create an `AnimationPlayer` and attach it to a DOM element.\n *\n * 3. Use the player object to control the animation programmatically.\n *\n * For example:\n *\n * ```ts\n * // import the service from BrowserAnimationsModule\n * import {AnimationBuilder} from '@angular/animations';\n * // require the service as a dependency\n * class MyCmp {\n * constructor(private _builder: AnimationBuilder) {}\n *\n * makeAnimation(element: any) {\n * // first define a reusable animation\n * const myAnimation = this._builder.build([\n * style({ width: 0 }),\n * animate(1000, style({ width: '100px' }))\n * ]);\n *\n * // use the returned factory object to create a player\n * const player = myAnimation.create(element);\n *\n * player.play();\n * }\n * }\n * ```\n *\n * @publicApi\n */\nclass AnimationBuilder {\n}\n/**\n * A factory object returned from the\n * [AnimationBuilder.build](api/animations/AnimationBuilder#build)()\n * method.\n *\n * @publicApi\n */\nclass AnimationFactory {\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Specifies automatic styling.\n *\n * @publicApi\n */\nconst AUTO_STYLE = '*';\n/**\n * Creates a named animation trigger, containing a list of [`state()`](api/animations/state)\n * and `transition()` entries to be evaluated when the expression\n * bound to the trigger changes.\n *\n * @param name An identifying string.\n * @param definitions An animation definition object, containing an array of\n * [`state()`](api/animations/state) and `transition()` declarations.\n *\n * @return An object that encapsulates the trigger data.\n *\n * @usageNotes\n * Define an animation trigger in the `animations` section of `@Component` metadata.\n * In the template, reference the trigger by name and bind it to a trigger expression that\n * evaluates to a defined animation state, using the following format:\n *\n * `[@triggerName]=\"expression\"`\n *\n * Animation trigger bindings convert all values to strings, and then match the\n * previous and current values against any linked transitions.\n * Booleans can be specified as `1` or `true` and `0` or `false`.\n *\n * ### Usage Example\n *\n * The following example creates an animation trigger reference based on the provided\n * name value.\n * The provided animation value is expected to be an array consisting of state and\n * transition declarations.\n *\n * ```typescript\n * @Component({\n * selector: \"my-component\",\n * templateUrl: \"my-component-tpl.html\",\n * animations: [\n * trigger(\"myAnimationTrigger\", [\n * state(...),\n * state(...),\n * transition(...),\n * transition(...)\n * ])\n * ]\n * })\n * class MyComponent {\n * myStatusExp = \"something\";\n * }\n * ```\n *\n * The template associated with this component makes use of the defined trigger\n * by binding to an element within its template code.\n *\n * ```html\n * \n *
...
\n * ```\n *\n * ### Using an inline function\n * The `transition` animation method also supports reading an inline function which can decide\n * if its associated animation should be run.\n *\n * ```typescript\n * // this method is run each time the `myAnimationTrigger` trigger value changes.\n * function myInlineMatcherFn(fromState: string, toState: string, element: any, params: {[key:\n string]: any}): boolean {\n * // notice that `element` and `params` are also available here\n * return toState == 'yes-please-animate';\n * }\n *\n * @Component({\n * selector: 'my-component',\n * templateUrl: 'my-component-tpl.html',\n * animations: [\n * trigger('myAnimationTrigger', [\n * transition(myInlineMatcherFn, [\n * // the animation sequence code\n * ]),\n * ])\n * ]\n * })\n * class MyComponent {\n * myStatusExp = \"yes-please-animate\";\n * }\n * ```\n *\n * ### Disabling Animations\n * When true, the special animation control binding `@.disabled` binding prevents\n * all animations from rendering.\n * Place the `@.disabled` binding on an element to disable\n * animations on the element itself, as well as any inner animation triggers\n * within the element.\n *\n * The following example shows how to use this feature:\n *\n * ```typescript\n * @Component({\n * selector: 'my-component',\n * template: `\n *
\n *
\n *
\n * `,\n * animations: [\n * trigger(\"childAnimation\", [\n * // ...\n * ])\n * ]\n * })\n * class MyComponent {\n * isDisabled = true;\n * exp = '...';\n * }\n * ```\n *\n * When `@.disabled` is true, it prevents the `@childAnimation` trigger from animating,\n * along with any inner animations.\n *\n * ### Disable animations application-wide\n * When an area of the template is set to have animations disabled,\n * **all** inner components have their animations disabled as well.\n * This means that you can disable all animations for an app\n * by placing a host binding set on `@.disabled` on the topmost Angular component.\n *\n * ```typescript\n * import {Component, HostBinding} from '@angular/core';\n *\n * @Component({\n * selector: 'app-component',\n * templateUrl: 'app.component.html',\n * })\n * class AppComponent {\n * @HostBinding('@.disabled')\n * public animationsDisabled = true;\n * }\n * ```\n *\n * ### Overriding disablement of inner animations\n * Despite inner animations being disabled, a parent animation can `query()`\n * for inner elements located in disabled areas of the template and still animate\n * them if needed. This is also the case for when a sub animation is\n * queried by a parent and then later animated using `animateChild()`.\n *\n * ### Detecting when an animation is disabled\n * If a region of the DOM (or the entire application) has its animations disabled, the animation\n * trigger callbacks still fire, but for zero seconds. When the callback fires, it provides\n * an instance of an `AnimationEvent`. If animations are disabled,\n * the `.disabled` flag on the event is true.\n *\n * @publicApi\n */\nfunction trigger(name, definitions) {\n return { type: 7 /* Trigger */, name, definitions, options: {} };\n}\n/**\n * Defines an animation step that combines styling information with timing information.\n *\n * @param timings Sets `AnimateTimings` for the parent animation.\n * A string in the format \"duration [delay] [easing]\".\n * - Duration and delay are expressed as a number and optional time unit,\n * such as \"1s\" or \"10ms\" for one second and 10 milliseconds, respectively.\n * The default unit is milliseconds.\n * - The easing value controls how the animation accelerates and decelerates\n * during its runtime. Value is one of `ease`, `ease-in`, `ease-out`,\n * `ease-in-out`, or a `cubic-bezier()` function call.\n * If not supplied, no easing is applied.\n *\n * For example, the string \"1s 100ms ease-out\" specifies a duration of\n * 1000 milliseconds, and delay of 100 ms, and the \"ease-out\" easing style,\n * which decelerates near the end of the duration.\n * @param styles Sets AnimationStyles for the parent animation.\n * A function call to either `style()` or `keyframes()`\n * that returns a collection of CSS style entries to be applied to the parent animation.\n * When null, uses the styles from the destination state.\n * This is useful when describing an animation step that will complete an animation;\n * see \"Animating to the final state\" in `transitions()`.\n * @returns An object that encapsulates the animation step.\n *\n * @usageNotes\n * Call within an animation `sequence()`, `{@link animations/group group()}`, or\n * `transition()` call to specify an animation step\n * that applies given style data to the parent animation for a given amount of time.\n *\n * ### Syntax Examples\n * **Timing examples**\n *\n * The following examples show various `timings` specifications.\n * - `animate(500)` : Duration is 500 milliseconds.\n * - `animate(\"1s\")` : Duration is 1000 milliseconds.\n * - `animate(\"100ms 0.5s\")` : Duration is 100 milliseconds, delay is 500 milliseconds.\n * - `animate(\"5s ease-in\")` : Duration is 5000 milliseconds, easing in.\n * - `animate(\"5s 10ms cubic-bezier(.17,.67,.88,.1)\")` : Duration is 5000 milliseconds, delay is 10\n * milliseconds, easing according to a bezier curve.\n *\n * **Style examples**\n *\n * The following example calls `style()` to set a single CSS style.\n * ```typescript\n * animate(500, style({ background: \"red\" }))\n * ```\n * The following example calls `keyframes()` to set a CSS style\n * to different values for successive keyframes.\n * ```typescript\n * animate(500, keyframes(\n * [\n * style({ background: \"blue\" }),\n * style({ background: \"red\" })\n * ])\n * ```\n *\n * @publicApi\n */\nfunction animate(timings, styles = null) {\n return { type: 4 /* Animate */, styles, timings };\n}\n/**\n * @description Defines a list of animation steps to be run in parallel.\n *\n * @param steps An array of animation step objects.\n * - When steps are defined by `style()` or `animate()`\n * function calls, each call within the group is executed instantly.\n * - To specify offset styles to be applied at a later time, define steps with\n * `keyframes()`, or use `animate()` calls with a delay value.\n * For example:\n *\n * ```typescript\n * group([\n * animate(\"1s\", style({ background: \"black\" })),\n * animate(\"2s\", style({ color: \"white\" }))\n * ])\n * ```\n *\n * @param options An options object containing a delay and\n * developer-defined parameters that provide styling defaults and\n * can be overridden on invocation.\n *\n * @return An object that encapsulates the group data.\n *\n * @usageNotes\n * Grouped animations are useful when a series of styles must be\n * animated at different starting times and closed off at different ending times.\n *\n * When called within a `sequence()` or a\n * `transition()` call, does not continue to the next\n * instruction until all of the inner animation steps have completed.\n *\n * @publicApi\n */\nfunction group(steps, options = null) {\n return { type: 3 /* Group */, steps, options };\n}\n/**\n * Defines a list of animation steps to be run sequentially, one by one.\n *\n * @param steps An array of animation step objects.\n * - Steps defined by `style()` calls apply the styling data immediately.\n * - Steps defined by `animate()` calls apply the styling data over time\n * as specified by the timing data.\n *\n * ```typescript\n * sequence([\n * style({ opacity: 0 }),\n * animate(\"1s\", style({ opacity: 1 }))\n * ])\n * ```\n *\n * @param options An options object containing a delay and\n * developer-defined parameters that provide styling defaults and\n * can be overridden on invocation.\n *\n * @return An object that encapsulates the sequence data.\n *\n * @usageNotes\n * When you pass an array of steps to a\n * `transition()` call, the steps run sequentially by default.\n * Compare this to the `{@link animations/group group()}` call, which runs animation steps in\n *parallel.\n *\n * When a sequence is used within a `{@link animations/group group()}` or a `transition()` call,\n * execution continues to the next instruction only after each of the inner animation\n * steps have completed.\n *\n * @publicApi\n **/\nfunction sequence(steps, options = null) {\n return { type: 2 /* Sequence */, steps, options };\n}\n/**\n * Declares a key/value object containing CSS properties/styles that\n * can then be used for an animation [`state`](api/animations/state), within an animation\n *`sequence`, or as styling data for calls to `animate()` and `keyframes()`.\n *\n * @param tokens A set of CSS styles or HTML styles associated with an animation state.\n * The value can be any of the following:\n * - A key-value style pair associating a CSS property with a value.\n * - An array of key-value style pairs.\n * - An asterisk (*), to use auto-styling, where styles are derived from the element\n * being animated and applied to the animation when it starts.\n *\n * Auto-styling can be used to define a state that depends on layout or other\n * environmental factors.\n *\n * @return An object that encapsulates the style data.\n *\n * @usageNotes\n * The following examples create animation styles that collect a set of\n * CSS property values:\n *\n * ```typescript\n * // string values for CSS properties\n * style({ background: \"red\", color: \"blue\" })\n *\n * // numerical pixel values\n * style({ width: 100, height: 0 })\n * ```\n *\n * The following example uses auto-styling to allow an element to animate from\n * a height of 0 up to its full height:\n *\n * ```\n * style({ height: 0 }),\n * animate(\"1s\", style({ height: \"*\" }))\n * ```\n *\n * @publicApi\n **/\nfunction style(tokens) {\n return { type: 6 /* Style */, styles: tokens, offset: null };\n}\n/**\n * Declares an animation state within a trigger attached to an element.\n *\n * @param name One or more names for the defined state in a comma-separated string.\n * The following reserved state names can be supplied to define a style for specific use\n * cases:\n *\n * - `void` You can associate styles with this name to be used when\n * the element is detached from the application. For example, when an `ngIf` evaluates\n * to false, the state of the associated element is void.\n * - `*` (asterisk) Indicates the default state. You can associate styles with this name\n * to be used as the fallback when the state that is being animated is not declared\n * within the trigger.\n *\n * @param styles A set of CSS styles associated with this state, created using the\n * `style()` function.\n * This set of styles persists on the element once the state has been reached.\n * @param options Parameters that can be passed to the state when it is invoked.\n * 0 or more key-value pairs.\n * @return An object that encapsulates the new state data.\n *\n * @usageNotes\n * Use the `trigger()` function to register states to an animation trigger.\n * Use the `transition()` function to animate between states.\n * When a state is active within a component, its associated styles persist on the element,\n * even when the animation ends.\n *\n * @publicApi\n **/\nfunction state(name, styles, options) {\n return { type: 0 /* State */, name, styles, options };\n}\n/**\n * Defines a set of animation styles, associating each style with an optional `offset` value.\n *\n * @param steps A set of animation styles with optional offset data.\n * The optional `offset` value for a style specifies a percentage of the total animation\n * time at which that style is applied.\n * @returns An object that encapsulates the keyframes data.\n *\n * @usageNotes\n * Use with the `animate()` call. Instead of applying animations\n * from the current state\n * to the destination state, keyframes describe how each style entry is applied and at what point\n * within the animation arc.\n * Compare [CSS Keyframe Animations](https://www.w3schools.com/css/css3_animations.asp).\n *\n * ### Usage\n *\n * In the following example, the offset values describe\n * when each `backgroundColor` value is applied. The color is red at the start, and changes to\n * blue when 20% of the total time has elapsed.\n *\n * ```typescript\n * // the provided offset values\n * animate(\"5s\", keyframes([\n * style({ backgroundColor: \"red\", offset: 0 }),\n * style({ backgroundColor: \"blue\", offset: 0.2 }),\n * style({ backgroundColor: \"orange\", offset: 0.3 }),\n * style({ backgroundColor: \"black\", offset: 1 })\n * ]))\n * ```\n *\n * If there are no `offset` values specified in the style entries, the offsets\n * are calculated automatically.\n *\n * ```typescript\n * animate(\"5s\", keyframes([\n * style({ backgroundColor: \"red\" }) // offset = 0\n * style({ backgroundColor: \"blue\" }) // offset = 0.33\n * style({ backgroundColor: \"orange\" }) // offset = 0.66\n * style({ backgroundColor: \"black\" }) // offset = 1\n * ]))\n *```\n\n * @publicApi\n */\nfunction keyframes(steps) {\n return { type: 5 /* Keyframes */, steps };\n}\n/**\n * Declares an animation transition which is played when a certain specified condition is met.\n *\n * @param stateChangeExpr A string with a specific format or a function that specifies when the\n * animation transition should occur (see [State Change Expression](#state-change-expression)).\n *\n * @param steps One or more animation objects that represent the animation's instructions.\n *\n * @param options An options object that can be used to specify a delay for the animation or provide\n * custom parameters for it.\n *\n * @returns An object that encapsulates the transition data.\n *\n * @usageNotes\n *\n * ### State Change Expression\n *\n * The State Change Expression instructs Angular when to run the transition's animations, it can\n *either be\n * - a string with a specific syntax\n * - or a function that compares the previous and current state (value of the expression bound to\n * the element's trigger) and returns `true` if the transition should occur or `false` otherwise\n *\n * The string format can be:\n * - `fromState => toState`, which indicates that the transition's animations should occur then the\n * expression bound to the trigger's element goes from `fromState` to `toState`\n *\n * _Example:_\n * ```typescript\n * transition('open => closed', animate('.5s ease-out', style({ height: 0 }) ))\n * ```\n *\n * - `fromState <=> toState`, which indicates that the transition's animations should occur then\n * the expression bound to the trigger's element goes from `fromState` to `toState` or vice versa\n *\n * _Example:_\n * ```typescript\n * transition('enabled <=> disabled', animate('1s cubic-bezier(0.8,0.3,0,1)'))\n * ```\n *\n * - `:enter`/`:leave`, which indicates that the transition's animations should occur when the\n * element enters or exists the DOM\n *\n * _Example:_\n * ```typescript\n * transition(':enter', [\n * style({ opacity: 0 }),\n * animate('500ms', style({ opacity: 1 }))\n * ])\n * ```\n *\n * - `:increment`/`:decrement`, which indicates that the transition's animations should occur when\n * the numerical expression bound to the trigger's element has increased in value or decreased\n *\n * _Example:_\n * ```typescript\n * transition(':increment', query('@counter', animateChild()))\n * ```\n *\n * - a sequence of any of the above divided by commas, which indicates that transition's animations\n * should occur whenever one of the state change expressions matches\n *\n * _Example:_\n * ```typescript\n * transition(':increment, * => enabled, :enter', animate('1s ease', keyframes([\n * style({ transform: 'scale(1)', offset: 0}),\n * style({ transform: 'scale(1.1)', offset: 0.7}),\n * style({ transform: 'scale(1)', offset: 1})\n * ]))),\n * ```\n *\n * Also note that in such context:\n * - `void` can be used to indicate the absence of the element\n * - asterisks can be used as wildcards that match any state\n * - (as a consequence of the above, `void => *` is equivalent to `:enter` and `* => void` is\n * equivalent to `:leave`)\n * - `true` and `false` also match expression values of `1` and `0` respectively (but do not match\n * _truthy_ and _falsy_ values)\n *\n *
\n *\n * Be careful about entering end leaving elements as their transitions present a common\n * pitfall for developers.\n *\n * Note that when an element with a trigger enters the DOM its `:enter` transition always\n * gets executed, but its `:leave` transition will not be executed if the element is removed\n * alongside its parent (as it will be removed \"without warning\" before its transition has\n * a chance to be executed, the only way that such transition can occur is if the element\n * is exiting the DOM on its own).\n *\n *\n *
\n *\n * ### Animating to a Final State\n *\n * If the final step in a transition is a call to `animate()` that uses a timing value\n * with no `style` data, that step is automatically considered the final animation arc,\n * for the element to reach the final state, in such case Angular automatically adds or removes\n * CSS styles to ensure that the element is in the correct final state.\n *\n *\n * ### Usage Examples\n *\n * - Transition animations applied based on\n * the trigger's expression value\n *\n * ```HTML\n *
\n * ...\n *
\n * ```\n *\n * ```typescript\n * trigger(\"myAnimationTrigger\", [\n * ..., // states\n * transition(\"on => off, open => closed\", animate(500)),\n * transition(\"* <=> error\", query('.indicator', animateChild()))\n * ])\n * ```\n *\n * - Transition animations applied based on custom logic dependent\n * on the trigger's expression value and provided parameters\n *\n * ```HTML\n *
\n * ...\n *
\n * ```\n *\n * ```typescript\n * trigger(\"myAnimationTrigger\", [\n * ..., // states\n * transition(\n * (fromState, toState, _element, params) =>\n * ['firststep', 'laststep'].includes(fromState.toLowerCase())\n * && toState === params?.['target'],\n * animate('1s')\n * )\n * ])\n * ```\n *\n * @publicApi\n **/\nfunction transition(stateChangeExpr, steps, options = null) {\n return { type: 1 /* Transition */, expr: stateChangeExpr, animation: steps, options };\n}\n/**\n * Produces a reusable animation that can be invoked in another animation or sequence,\n * by calling the `useAnimation()` function.\n *\n * @param steps One or more animation objects, as returned by the `animate()`\n * or `sequence()` function, that form a transformation from one state to another.\n * A sequence is used by default when you pass an array.\n * @param options An options object that can contain a delay value for the start of the\n * animation, and additional developer-defined parameters.\n * Provided values for additional parameters are used as defaults,\n * and override values can be passed to the caller on invocation.\n * @returns An object that encapsulates the animation data.\n *\n * @usageNotes\n * The following example defines a reusable animation, providing some default parameter\n * values.\n *\n * ```typescript\n * var fadeAnimation = animation([\n * style({ opacity: '{{ start }}' }),\n * animate('{{ time }}',\n * style({ opacity: '{{ end }}'}))\n * ],\n * { params: { time: '1000ms', start: 0, end: 1 }});\n * ```\n *\n * The following invokes the defined animation with a call to `useAnimation()`,\n * passing in override parameter values.\n *\n * ```js\n * useAnimation(fadeAnimation, {\n * params: {\n * time: '2s',\n * start: 1,\n * end: 0\n * }\n * })\n * ```\n *\n * If any of the passed-in parameter values are missing from this call,\n * the default values are used. If one or more parameter values are missing before a step is\n * animated, `useAnimation()` throws an error.\n *\n * @publicApi\n */\nfunction animation(steps, options = null) {\n return { type: 8 /* Reference */, animation: steps, options };\n}\n/**\n * Executes a queried inner animation element within an animation sequence.\n *\n * @param options An options object that can contain a delay value for the start of the\n * animation, and additional override values for developer-defined parameters.\n * @return An object that encapsulates the child animation data.\n *\n * @usageNotes\n * Each time an animation is triggered in Angular, the parent animation\n * has priority and any child animations are blocked. In order\n * for a child animation to run, the parent animation must query each of the elements\n * containing child animations, and run them using this function.\n *\n * Note that this feature is designed to be used with `query()` and it will only work\n * with animations that are assigned using the Angular animation library. CSS keyframes\n * and transitions are not handled by this API.\n *\n * @publicApi\n */\nfunction animateChild(options = null) {\n return { type: 9 /* AnimateChild */, options };\n}\n/**\n * Starts a reusable animation that is created using the `animation()` function.\n *\n * @param animation The reusable animation to start.\n * @param options An options object that can contain a delay value for the start of\n * the animation, and additional override values for developer-defined parameters.\n * @return An object that contains the animation parameters.\n *\n * @publicApi\n */\nfunction useAnimation(animation, options = null) {\n return { type: 10 /* AnimateRef */, animation, options };\n}\n/**\n * Finds one or more inner elements within the current element that is\n * being animated within a sequence. Use with `animate()`.\n *\n * @param selector The element to query, or a set of elements that contain Angular-specific\n * characteristics, specified with one or more of the following tokens.\n * - `query(\":enter\")` or `query(\":leave\")` : Query for newly inserted/removed elements (not\n * all elements can be queried via these tokens, see\n * [Entering and Leaving Elements](#entering-and-leaving-elements))\n * - `query(\":animating\")` : Query all currently animating elements.\n * - `query(\"@triggerName\")` : Query elements that contain an animation trigger.\n * - `query(\"@*\")` : Query all elements that contain an animation triggers.\n * - `query(\":self\")` : Include the current element into the animation sequence.\n *\n * @param animation One or more animation steps to apply to the queried element or elements.\n * An array is treated as an animation sequence.\n * @param options An options object. Use the 'limit' field to limit the total number of\n * items to collect.\n * @return An object that encapsulates the query data.\n *\n * @usageNotes\n *\n * ### Multiple Tokens\n *\n * Tokens can be merged into a combined query selector string. For example:\n *\n * ```typescript\n * query(':self, .record:enter, .record:leave, @subTrigger', [...])\n * ```\n *\n * The `query()` function collects multiple elements and works internally by using\n * `element.querySelectorAll`. Use the `limit` field of an options object to limit\n * the total number of items to be collected. For example:\n *\n * ```js\n * query('div', [\n * animate(...),\n * animate(...)\n * ], { limit: 1 })\n * ```\n *\n * By default, throws an error when zero items are found. Set the\n * `optional` flag to ignore this error. For example:\n *\n * ```js\n * query('.some-element-that-may-not-be-there', [\n * animate(...),\n * animate(...)\n * ], { optional: true })\n * ```\n *\n * ### Entering and Leaving Elements\n *\n * Not all elements can be queried via the `:enter` and `:leave` tokens, the only ones\n * that can are those that Angular assumes can enter/leave based on their own logic\n * (if their insertion/removal is simply a consequence of that of their parent they\n * should be queried via a different token in their parent's `:enter`/`:leave` transitions).\n *\n * The only elements Angular assumes can enter/leave based on their own logic (thus the only\n * ones that can be queried via the `:enter` and `:leave` tokens) are:\n * - Those inserted dynamically (via `ViewContainerRef`)\n * - Those that have a structural directive (which, under the hood, are a subset of the above ones)\n *\n *
\n *\n * Note that elements will be successfully queried via `:enter`/`:leave` even if their\n * insertion/removal is not done manually via `ViewContainerRef`or caused by their structural\n * directive (e.g. they enter/exit alongside their parent).\n *\n *
\n *\n *
\n *\n * There is an exception to what previously mentioned, besides elements entering/leaving based on\n * their own logic, elements with an animation trigger can always be queried via `:leave` when\n * their parent is also leaving.\n *\n *
\n *\n * ### Usage Example\n *\n * The following example queries for inner elements and animates them\n * individually using `animate()`.\n *\n * ```typescript\n * @Component({\n * selector: 'inner',\n * template: `\n *
\n *

Title

\n *
\n * Blah blah blah\n *
\n *
\n * `,\n * animations: [\n * trigger('queryAnimation', [\n * transition('* => goAnimate', [\n * // hide the inner elements\n * query('h1', style({ opacity: 0 })),\n * query('.content', style({ opacity: 0 })),\n *\n * // animate the inner elements in, one by one\n * query('h1', animate(1000, style({ opacity: 1 }))),\n * query('.content', animate(1000, style({ opacity: 1 }))),\n * ])\n * ])\n * ]\n * })\n * class Cmp {\n * exp = '';\n *\n * goAnimate() {\n * this.exp = 'goAnimate';\n * }\n * }\n * ```\n *\n * @publicApi\n */\nfunction query(selector, animation, options = null) {\n return { type: 11 /* Query */, selector, animation, options };\n}\n/**\n * Use within an animation `query()` call to issue a timing gap after\n * each queried item is animated.\n *\n * @param timings A delay value.\n * @param animation One ore more animation steps.\n * @returns An object that encapsulates the stagger data.\n *\n * @usageNotes\n * In the following example, a container element wraps a list of items stamped out\n * by an `ngFor`. The container element contains an animation trigger that will later be set\n * to query for each of the inner items.\n *\n * Each time items are added, the opacity fade-in animation runs,\n * and each removed item is faded out.\n * When either of these animations occur, the stagger effect is\n * applied after each item's animation is started.\n *\n * ```html\n * \n * \n *
\n *
\n *
\n * {{ item }}\n *
\n *
\n * ```\n *\n * Here is the component code:\n *\n * ```typescript\n * import {trigger, transition, style, animate, query, stagger} from '@angular/animations';\n * @Component({\n * templateUrl: 'list.component.html',\n * animations: [\n * trigger('listAnimation', [\n * ...\n * ])\n * ]\n * })\n * class ListComponent {\n * items = [];\n *\n * showItems() {\n * this.items = [0,1,2,3,4];\n * }\n *\n * hideItems() {\n * this.items = [];\n * }\n *\n * toggle() {\n * this.items.length ? this.hideItems() : this.showItems();\n * }\n * }\n * ```\n *\n * Here is the animation trigger code:\n *\n * ```typescript\n * trigger('listAnimation', [\n * transition('* => *', [ // each time the binding value changes\n * query(':leave', [\n * stagger(100, [\n * animate('0.5s', style({ opacity: 0 }))\n * ])\n * ]),\n * query(':enter', [\n * style({ opacity: 0 }),\n * stagger(100, [\n * animate('0.5s', style({ opacity: 1 }))\n * ])\n * ])\n * ])\n * ])\n * ```\n *\n * @publicApi\n */\nfunction stagger(timings, animation) {\n return { type: 12 /* Stagger */, timings, animation };\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction scheduleMicroTask(cb) {\n Promise.resolve(null).then(cb);\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * An empty programmatic controller for reusable animations.\n * Used internally when animations are disabled, to avoid\n * checking for the null case when an animation player is expected.\n *\n * @see `animate()`\n * @see `AnimationPlayer`\n * @see `GroupPlayer`\n *\n * @publicApi\n */\nclass NoopAnimationPlayer {\n constructor(duration = 0, delay = 0) {\n this._onDoneFns = [];\n this._onStartFns = [];\n this._onDestroyFns = [];\n this._started = false;\n this._destroyed = false;\n this._finished = false;\n this._position = 0;\n this.parentPlayer = null;\n this.totalTime = duration + delay;\n }\n _onFinish() {\n if (!this._finished) {\n this._finished = true;\n this._onDoneFns.forEach(fn => fn());\n this._onDoneFns = [];\n }\n }\n onStart(fn) {\n this._onStartFns.push(fn);\n }\n onDone(fn) {\n this._onDoneFns.push(fn);\n }\n onDestroy(fn) {\n this._onDestroyFns.push(fn);\n }\n hasStarted() {\n return this._started;\n }\n init() { }\n play() {\n if (!this.hasStarted()) {\n this._onStart();\n this.triggerMicrotask();\n }\n this._started = true;\n }\n /** @internal */\n triggerMicrotask() {\n scheduleMicroTask(() => this._onFinish());\n }\n _onStart() {\n this._onStartFns.forEach(fn => fn());\n this._onStartFns = [];\n }\n pause() { }\n restart() { }\n finish() {\n this._onFinish();\n }\n destroy() {\n if (!this._destroyed) {\n this._destroyed = true;\n if (!this.hasStarted()) {\n this._onStart();\n }\n this.finish();\n this._onDestroyFns.forEach(fn => fn());\n this._onDestroyFns = [];\n }\n }\n reset() {\n this._started = false;\n }\n setPosition(position) {\n this._position = this.totalTime ? position * this.totalTime : 1;\n }\n getPosition() {\n return this.totalTime ? this._position / this.totalTime : 1;\n }\n /** @internal */\n triggerCallback(phaseName) {\n const methods = phaseName == 'start' ? this._onStartFns : this._onDoneFns;\n methods.forEach(fn => fn());\n methods.length = 0;\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * A programmatic controller for a group of reusable animations.\n * Used internally to control animations.\n *\n * @see `AnimationPlayer`\n * @see `{@link animations/group group()}`\n *\n */\nclass AnimationGroupPlayer {\n constructor(_players) {\n this._onDoneFns = [];\n this._onStartFns = [];\n this._finished = false;\n this._started = false;\n this._destroyed = false;\n this._onDestroyFns = [];\n this.parentPlayer = null;\n this.totalTime = 0;\n this.players = _players;\n let doneCount = 0;\n let destroyCount = 0;\n let startCount = 0;\n const total = this.players.length;\n if (total == 0) {\n scheduleMicroTask(() => this._onFinish());\n }\n else {\n this.players.forEach(player => {\n player.onDone(() => {\n if (++doneCount == total) {\n this._onFinish();\n }\n });\n player.onDestroy(() => {\n if (++destroyCount == total) {\n this._onDestroy();\n }\n });\n player.onStart(() => {\n if (++startCount == total) {\n this._onStart();\n }\n });\n });\n }\n this.totalTime = this.players.reduce((time, player) => Math.max(time, player.totalTime), 0);\n }\n _onFinish() {\n if (!this._finished) {\n this._finished = true;\n this._onDoneFns.forEach(fn => fn());\n this._onDoneFns = [];\n }\n }\n init() {\n this.players.forEach(player => player.init());\n }\n onStart(fn) {\n this._onStartFns.push(fn);\n }\n _onStart() {\n if (!this.hasStarted()) {\n this._started = true;\n this._onStartFns.forEach(fn => fn());\n this._onStartFns = [];\n }\n }\n onDone(fn) {\n this._onDoneFns.push(fn);\n }\n onDestroy(fn) {\n this._onDestroyFns.push(fn);\n }\n hasStarted() {\n return this._started;\n }\n play() {\n if (!this.parentPlayer) {\n this.init();\n }\n this._onStart();\n this.players.forEach(player => player.play());\n }\n pause() {\n this.players.forEach(player => player.pause());\n }\n restart() {\n this.players.forEach(player => player.restart());\n }\n finish() {\n this._onFinish();\n this.players.forEach(player => player.finish());\n }\n destroy() {\n this._onDestroy();\n }\n _onDestroy() {\n if (!this._destroyed) {\n this._destroyed = true;\n this._onFinish();\n this.players.forEach(player => player.destroy());\n this._onDestroyFns.forEach(fn => fn());\n this._onDestroyFns = [];\n }\n }\n reset() {\n this.players.forEach(player => player.reset());\n this._destroyed = false;\n this._finished = false;\n this._started = false;\n }\n setPosition(p) {\n const timeAtPosition = p * this.totalTime;\n this.players.forEach(player => {\n const position = player.totalTime ? Math.min(1, timeAtPosition / player.totalTime) : 1;\n player.setPosition(position);\n });\n }\n getPosition() {\n const longestPlayer = this.players.reduce((longestSoFar, player) => {\n const newPlayerIsLongest = longestSoFar === null || player.totalTime > longestSoFar.totalTime;\n return newPlayerIsLongest ? player : longestSoFar;\n }, null);\n return longestPlayer != null ? longestPlayer.getPosition() : 0;\n }\n beforeDestroy() {\n this.players.forEach(player => {\n if (player.beforeDestroy) {\n player.beforeDestroy();\n }\n });\n }\n /** @internal */\n triggerCallback(phaseName) {\n const methods = phaseName == 'start' ? this._onStartFns : this._onDoneFns;\n methods.forEach(fn => fn());\n methods.length = 0;\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst ɵPRE_STYLE = '!';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { AUTO_STYLE, AnimationBuilder, AnimationFactory, NoopAnimationPlayer, animate, animateChild, animation, group, keyframes, query, sequence, stagger, state, style, transition, trigger, useAnimation, AnimationGroupPlayer as ɵAnimationGroupPlayer, ɵPRE_STYLE };\n","/**\n * @license Angular v13.3.0\n * (c) 2010-2022 Google LLC. https://angular.io/\n * License: MIT\n */\n\nimport { ɵAnimationGroupPlayer, NoopAnimationPlayer, AUTO_STYLE, ɵPRE_STYLE, sequence, style } from '@angular/animations';\nimport * as i0 from '@angular/core';\nimport { ɵRuntimeError, Injectable } from '@angular/core';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst NG_DEV_MODE$1 = typeof ngDevMode === 'undefined' || !!ngDevMode;\nconst LINE_START = '\\n - ';\nfunction invalidTimingValue(exp) {\n return new ɵRuntimeError(3000 /* INVALID_TIMING_VALUE */, NG_DEV_MODE$1 && `The provided timing value \"${exp}\" is invalid.`);\n}\nfunction negativeStepValue() {\n return new ɵRuntimeError(3100 /* NEGATIVE_STEP_VALUE */, NG_DEV_MODE$1 && 'Duration values below 0 are not allowed for this animation step.');\n}\nfunction negativeDelayValue() {\n return new ɵRuntimeError(3101 /* NEGATIVE_DELAY_VALUE */, NG_DEV_MODE$1 && 'Delay values below 0 are not allowed for this animation step.');\n}\nfunction invalidStyleParams(varName) {\n return new ɵRuntimeError(3001 /* INVALID_STYLE_PARAMS */, NG_DEV_MODE$1 &&\n `Unable to resolve the local animation param ${varName} in the given list of values`);\n}\nfunction invalidParamValue(varName) {\n return new ɵRuntimeError(3003 /* INVALID_PARAM_VALUE */, NG_DEV_MODE$1 && `Please provide a value for the animation param ${varName}`);\n}\nfunction invalidNodeType(nodeType) {\n return new ɵRuntimeError(3004 /* INVALID_NODE_TYPE */, NG_DEV_MODE$1 && `Unable to resolve animation metadata node #${nodeType}`);\n}\nfunction invalidCssUnitValue(userProvidedProperty, value) {\n return new ɵRuntimeError(3005 /* INVALID_CSS_UNIT_VALUE */, NG_DEV_MODE$1 && `Please provide a CSS unit value for ${userProvidedProperty}:${value}`);\n}\nfunction invalidTrigger() {\n return new ɵRuntimeError(3006 /* INVALID_TRIGGER */, NG_DEV_MODE$1 &&\n 'animation triggers cannot be prefixed with an `@` sign (e.g. trigger(\\'@foo\\', [...]))');\n}\nfunction invalidDefinition() {\n return new ɵRuntimeError(3007 /* INVALID_DEFINITION */, NG_DEV_MODE$1 && 'only state() and transition() definitions can sit inside of a trigger()');\n}\nfunction invalidState(metadataName, missingSubs) {\n return new ɵRuntimeError(3008 /* INVALID_STATE */, NG_DEV_MODE$1 &&\n `state(\"${metadataName}\", ...) must define default values for all the following style substitutions: ${missingSubs.join(', ')}`);\n}\nfunction invalidStyleValue(value) {\n return new ɵRuntimeError(3002 /* INVALID_STYLE_VALUE */, NG_DEV_MODE$1 && `The provided style string value ${value} is not allowed.`);\n}\nfunction invalidProperty(prop) {\n return new ɵRuntimeError(3009 /* INVALID_PROPERTY */, NG_DEV_MODE$1 &&\n `The provided animation property \"${prop}\" is not a supported CSS property for animations`);\n}\nfunction invalidParallelAnimation(prop, firstStart, firstEnd, secondStart, secondEnd) {\n return new ɵRuntimeError(3010 /* INVALID_PARALLEL_ANIMATION */, NG_DEV_MODE$1 &&\n `The CSS property \"${prop}\" that exists between the times of \"${firstStart}ms\" and \"${firstEnd}ms\" is also being animated in a parallel animation between the times of \"${secondStart}ms\" and \"${secondEnd}ms\"`);\n}\nfunction invalidKeyframes() {\n return new ɵRuntimeError(3011 /* INVALID_KEYFRAMES */, NG_DEV_MODE$1 && `keyframes() must be placed inside of a call to animate()`);\n}\nfunction invalidOffset() {\n return new ɵRuntimeError(3012 /* INVALID_OFFSET */, NG_DEV_MODE$1 && `Please ensure that all keyframe offsets are between 0 and 1`);\n}\nfunction keyframeOffsetsOutOfOrder() {\n return new ɵRuntimeError(3200 /* KEYFRAME_OFFSETS_OUT_OF_ORDER */, NG_DEV_MODE$1 && `Please ensure that all keyframe offsets are in order`);\n}\nfunction keyframesMissingOffsets() {\n return new ɵRuntimeError(3202 /* KEYFRAMES_MISSING_OFFSETS */, NG_DEV_MODE$1 && `Not all style() steps within the declared keyframes() contain offsets`);\n}\nfunction invalidStagger() {\n return new ɵRuntimeError(3013 /* INVALID_STAGGER */, NG_DEV_MODE$1 && `stagger() can only be used inside of query()`);\n}\nfunction invalidQuery(selector) {\n return new ɵRuntimeError(3014 /* INVALID_QUERY */, NG_DEV_MODE$1 &&\n `\\`query(\"${selector}\")\\` returned zero elements. (Use \\`query(\"${selector}\", { optional: true })\\` if you wish to allow this.)`);\n}\nfunction invalidExpression(expr) {\n return new ɵRuntimeError(3015 /* INVALID_EXPRESSION */, NG_DEV_MODE$1 && `The provided transition expression \"${expr}\" is not supported`);\n}\nfunction invalidTransitionAlias(alias) {\n return new ɵRuntimeError(3016 /* INVALID_TRANSITION_ALIAS */, NG_DEV_MODE$1 && `The transition alias value \"${alias}\" is not supported`);\n}\nfunction validationFailed(errors) {\n return new ɵRuntimeError(3500 /* VALIDATION_FAILED */, NG_DEV_MODE$1 && `animation validation failed:\\n${errors.map(err => err.message).join('\\n')}`);\n}\nfunction buildingFailed(errors) {\n return new ɵRuntimeError(3501 /* BUILDING_FAILED */, NG_DEV_MODE$1 && `animation building failed:\\n${errors.map(err => err.message).join('\\n')}`);\n}\nfunction triggerBuildFailed(name, errors) {\n return new ɵRuntimeError(3404 /* TRIGGER_BUILD_FAILED */, NG_DEV_MODE$1 &&\n `The animation trigger \"${name}\" has failed to build due to the following errors:\\n - ${errors.map(err => err.message).join('\\n - ')}`);\n}\nfunction animationFailed(errors) {\n return new ɵRuntimeError(3502 /* ANIMATION_FAILED */, NG_DEV_MODE$1 &&\n `Unable to animate due to the following errors:${LINE_START}${errors.map(err => err.message).join(LINE_START)}`);\n}\nfunction registerFailed(errors) {\n return new ɵRuntimeError(3503 /* REGISTRATION_FAILED */, NG_DEV_MODE$1 &&\n `Unable to build the animation due to the following errors: ${errors.map(err => err.message).join('\\n')}`);\n}\nfunction missingOrDestroyedAnimation() {\n return new ɵRuntimeError(3300 /* MISSING_OR_DESTROYED_ANIMATION */, NG_DEV_MODE$1 && 'The requested animation doesn\\'t exist or has already been destroyed');\n}\nfunction createAnimationFailed(errors) {\n return new ɵRuntimeError(3504 /* CREATE_ANIMATION_FAILED */, NG_DEV_MODE$1 &&\n `Unable to create the animation due to the following errors:${errors.map(err => err.message).join('\\n')}`);\n}\nfunction missingPlayer(id) {\n return new ɵRuntimeError(3301 /* MISSING_PLAYER */, NG_DEV_MODE$1 && `Unable to find the timeline player referenced by ${id}`);\n}\nfunction missingTrigger(phase, name) {\n return new ɵRuntimeError(3302 /* MISSING_TRIGGER */, NG_DEV_MODE$1 &&\n `Unable to listen on the animation trigger event \"${phase}\" because the animation trigger \"${name}\" doesn\\'t exist!`);\n}\nfunction missingEvent(name) {\n return new ɵRuntimeError(3303 /* MISSING_EVENT */, NG_DEV_MODE$1 &&\n `Unable to listen on the animation trigger \"${name}\" because the provided event is undefined!`);\n}\nfunction unsupportedTriggerEvent(phase, name) {\n return new ɵRuntimeError(3400 /* UNSUPPORTED_TRIGGER_EVENT */, NG_DEV_MODE$1 &&\n `The provided animation trigger event \"${phase}\" for the animation trigger \"${name}\" is not supported!`);\n}\nfunction unregisteredTrigger(name) {\n return new ɵRuntimeError(3401 /* UNREGISTERED_TRIGGER */, NG_DEV_MODE$1 && `The provided animation trigger \"${name}\" has not been registered!`);\n}\nfunction triggerTransitionsFailed(errors) {\n return new ɵRuntimeError(3402 /* TRIGGER_TRANSITIONS_FAILED */, NG_DEV_MODE$1 &&\n `Unable to process animations due to the following failed trigger transitions\\n ${errors.map(err => err.message).join('\\n')}`);\n}\nfunction triggerParsingFailed(name, errors) {\n return new ɵRuntimeError(3403 /* TRIGGER_PARSING_FAILED */, NG_DEV_MODE$1 &&\n `Animation parsing for the ${name} trigger have failed:${LINE_START}${errors.map(err => err.message).join(LINE_START)}`);\n}\nfunction transitionFailed(name, errors) {\n return new ɵRuntimeError(3505 /* TRANSITION_FAILED */, NG_DEV_MODE$1 &&\n `@${name} has failed due to:\\n ${errors.map(err => err.message).join('\\n- ')}`);\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction isBrowser() {\n return (typeof window !== 'undefined' && typeof window.document !== 'undefined');\n}\nfunction isNode() {\n // Checking only for `process` isn't enough to identify whether or not we're in a Node\n // environment, because Webpack by default will polyfill the `process`. While we can discern\n // that Webpack polyfilled it by looking at `process.browser`, it's very Webpack-specific and\n // might not be future-proof. Instead we look at the stringified version of `process` which\n // is `[object process]` in Node and `[object Object]` when polyfilled.\n return typeof process !== 'undefined' && {}.toString.call(process) === '[object process]';\n}\nfunction optimizeGroupPlayer(players) {\n switch (players.length) {\n case 0:\n return new NoopAnimationPlayer();\n case 1:\n return players[0];\n default:\n return new ɵAnimationGroupPlayer(players);\n }\n}\nfunction normalizeKeyframes(driver, normalizer, element, keyframes, preStyles = {}, postStyles = {}) {\n const errors = [];\n const normalizedKeyframes = [];\n let previousOffset = -1;\n let previousKeyframe = null;\n keyframes.forEach(kf => {\n const offset = kf['offset'];\n const isSameOffset = offset == previousOffset;\n const normalizedKeyframe = (isSameOffset && previousKeyframe) || {};\n Object.keys(kf).forEach(prop => {\n let normalizedProp = prop;\n let normalizedValue = kf[prop];\n if (prop !== 'offset') {\n normalizedProp = normalizer.normalizePropertyName(normalizedProp, errors);\n switch (normalizedValue) {\n case ɵPRE_STYLE:\n normalizedValue = preStyles[prop];\n break;\n case AUTO_STYLE:\n normalizedValue = postStyles[prop];\n break;\n default:\n normalizedValue =\n normalizer.normalizeStyleValue(prop, normalizedProp, normalizedValue, errors);\n break;\n }\n }\n normalizedKeyframe[normalizedProp] = normalizedValue;\n });\n if (!isSameOffset) {\n normalizedKeyframes.push(normalizedKeyframe);\n }\n previousKeyframe = normalizedKeyframe;\n previousOffset = offset;\n });\n if (errors.length) {\n throw animationFailed(errors);\n }\n return normalizedKeyframes;\n}\nfunction listenOnPlayer(player, eventName, event, callback) {\n switch (eventName) {\n case 'start':\n player.onStart(() => callback(event && copyAnimationEvent(event, 'start', player)));\n break;\n case 'done':\n player.onDone(() => callback(event && copyAnimationEvent(event, 'done', player)));\n break;\n case 'destroy':\n player.onDestroy(() => callback(event && copyAnimationEvent(event, 'destroy', player)));\n break;\n }\n}\nfunction copyAnimationEvent(e, phaseName, player) {\n const totalTime = player.totalTime;\n const disabled = player.disabled ? true : false;\n const event = makeAnimationEvent(e.element, e.triggerName, e.fromState, e.toState, phaseName || e.phaseName, totalTime == undefined ? e.totalTime : totalTime, disabled);\n const data = e['_data'];\n if (data != null) {\n event['_data'] = data;\n }\n return event;\n}\nfunction makeAnimationEvent(element, triggerName, fromState, toState, phaseName = '', totalTime = 0, disabled) {\n return { element, triggerName, fromState, toState, phaseName, totalTime, disabled: !!disabled };\n}\nfunction getOrSetAsInMap(map, key, defaultValue) {\n let value;\n if (map instanceof Map) {\n value = map.get(key);\n if (!value) {\n map.set(key, value = defaultValue);\n }\n }\n else {\n value = map[key];\n if (!value) {\n value = map[key] = defaultValue;\n }\n }\n return value;\n}\nfunction parseTimelineCommand(command) {\n const separatorPos = command.indexOf(':');\n const id = command.substring(1, separatorPos);\n const action = command.substr(separatorPos + 1);\n return [id, action];\n}\nlet _contains = (elm1, elm2) => false;\nlet _query = (element, selector, multi) => {\n return [];\n};\nlet _documentElement = null;\nfunction getParentElement(element) {\n const parent = element.parentNode || element.host; // consider host to support shadow DOM\n if (parent === _documentElement) {\n return null;\n }\n return parent;\n}\n// Define utility methods for browsers and platform-server(domino) where Element\n// and utility methods exist.\nconst _isNode = isNode();\nif (_isNode || typeof Element !== 'undefined') {\n if (!isBrowser()) {\n _contains = (elm1, elm2) => elm1.contains(elm2);\n }\n else {\n // Read the document element in an IIFE that's been marked pure to avoid a top-level property\n // read that may prevent tree-shaking.\n _documentElement = /* @__PURE__ */ (() => document.documentElement)();\n _contains = (elm1, elm2) => {\n while (elm2) {\n if (elm2 === elm1) {\n return true;\n }\n elm2 = getParentElement(elm2);\n }\n return false;\n };\n }\n _query = (element, selector, multi) => {\n if (multi) {\n return Array.from(element.querySelectorAll(selector));\n }\n const elem = element.querySelector(selector);\n return elem ? [elem] : [];\n };\n}\nfunction containsVendorPrefix(prop) {\n // Webkit is the only real popular vendor prefix nowadays\n // cc: http://shouldiprefix.com/\n return prop.substring(1, 6) == 'ebkit'; // webkit or Webkit\n}\nlet _CACHED_BODY = null;\nlet _IS_WEBKIT = false;\nfunction validateStyleProperty(prop) {\n if (!_CACHED_BODY) {\n _CACHED_BODY = getBodyNode() || {};\n _IS_WEBKIT = _CACHED_BODY.style ? ('WebkitAppearance' in _CACHED_BODY.style) : false;\n }\n let result = true;\n if (_CACHED_BODY.style && !containsVendorPrefix(prop)) {\n result = prop in _CACHED_BODY.style;\n if (!result && _IS_WEBKIT) {\n const camelProp = 'Webkit' + prop.charAt(0).toUpperCase() + prop.substr(1);\n result = camelProp in _CACHED_BODY.style;\n }\n }\n return result;\n}\nfunction getBodyNode() {\n if (typeof document != 'undefined') {\n return document.body;\n }\n return null;\n}\nconst containsElement = _contains;\nconst invokeQuery = _query;\nfunction hypenatePropsObject(object) {\n const newObj = {};\n Object.keys(object).forEach(prop => {\n const newProp = prop.replace(/([a-z])([A-Z])/g, '$1-$2');\n newObj[newProp] = object[prop];\n });\n return newObj;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @publicApi\n */\nclass NoopAnimationDriver {\n validateStyleProperty(prop) {\n return validateStyleProperty(prop);\n }\n matchesElement(_element, _selector) {\n // This method is deprecated and no longer in use so we return false.\n return false;\n }\n containsElement(elm1, elm2) {\n return containsElement(elm1, elm2);\n }\n getParentElement(element) {\n return getParentElement(element);\n }\n query(element, selector, multi) {\n return invokeQuery(element, selector, multi);\n }\n computeStyle(element, prop, defaultValue) {\n return defaultValue || '';\n }\n animate(element, keyframes, duration, delay, easing, previousPlayers = [], scrubberAccessRequested) {\n return new NoopAnimationPlayer(duration, delay);\n }\n}\nNoopAnimationDriver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NoopAnimationDriver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nNoopAnimationDriver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NoopAnimationDriver });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NoopAnimationDriver, decorators: [{\n type: Injectable\n }] });\n/**\n * @publicApi\n */\nclass AnimationDriver {\n}\nAnimationDriver.NOOP = ( /* @__PURE__ */new NoopAnimationDriver());\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst ONE_SECOND = 1000;\nconst SUBSTITUTION_EXPR_START = '{{';\nconst SUBSTITUTION_EXPR_END = '}}';\nconst ENTER_CLASSNAME = 'ng-enter';\nconst LEAVE_CLASSNAME = 'ng-leave';\nconst NG_TRIGGER_CLASSNAME = 'ng-trigger';\nconst NG_TRIGGER_SELECTOR = '.ng-trigger';\nconst NG_ANIMATING_CLASSNAME = 'ng-animating';\nconst NG_ANIMATING_SELECTOR = '.ng-animating';\nfunction resolveTimingValue(value) {\n if (typeof value == 'number')\n return value;\n const matches = value.match(/^(-?[\\.\\d]+)(m?s)/);\n if (!matches || matches.length < 2)\n return 0;\n return _convertTimeValueToMS(parseFloat(matches[1]), matches[2]);\n}\nfunction _convertTimeValueToMS(value, unit) {\n switch (unit) {\n case 's':\n return value * ONE_SECOND;\n default: // ms or something else\n return value;\n }\n}\nfunction resolveTiming(timings, errors, allowNegativeValues) {\n return timings.hasOwnProperty('duration') ?\n timings :\n parseTimeExpression(timings, errors, allowNegativeValues);\n}\nfunction parseTimeExpression(exp, errors, allowNegativeValues) {\n const regex = /^(-?[\\.\\d]+)(m?s)(?:\\s+(-?[\\.\\d]+)(m?s))?(?:\\s+([-a-z]+(?:\\(.+?\\))?))?$/i;\n let duration;\n let delay = 0;\n let easing = '';\n if (typeof exp === 'string') {\n const matches = exp.match(regex);\n if (matches === null) {\n errors.push(invalidTimingValue(exp));\n return { duration: 0, delay: 0, easing: '' };\n }\n duration = _convertTimeValueToMS(parseFloat(matches[1]), matches[2]);\n const delayMatch = matches[3];\n if (delayMatch != null) {\n delay = _convertTimeValueToMS(parseFloat(delayMatch), matches[4]);\n }\n const easingVal = matches[5];\n if (easingVal) {\n easing = easingVal;\n }\n }\n else {\n duration = exp;\n }\n if (!allowNegativeValues) {\n let containsErrors = false;\n let startIndex = errors.length;\n if (duration < 0) {\n errors.push(negativeStepValue());\n containsErrors = true;\n }\n if (delay < 0) {\n errors.push(negativeDelayValue());\n containsErrors = true;\n }\n if (containsErrors) {\n errors.splice(startIndex, 0, invalidTimingValue(exp));\n }\n }\n return { duration, delay, easing };\n}\nfunction copyObj(obj, destination = {}) {\n Object.keys(obj).forEach(prop => {\n destination[prop] = obj[prop];\n });\n return destination;\n}\nfunction normalizeStyles(styles) {\n const normalizedStyles = {};\n if (Array.isArray(styles)) {\n styles.forEach(data => copyStyles(data, false, normalizedStyles));\n }\n else {\n copyStyles(styles, false, normalizedStyles);\n }\n return normalizedStyles;\n}\nfunction copyStyles(styles, readPrototype, destination = {}) {\n if (readPrototype) {\n // we make use of a for-in loop so that the\n // prototypically inherited properties are\n // revealed from the backFill map\n for (let prop in styles) {\n destination[prop] = styles[prop];\n }\n }\n else {\n copyObj(styles, destination);\n }\n return destination;\n}\nfunction getStyleAttributeString(element, key, value) {\n // Return the key-value pair string to be added to the style attribute for the\n // given CSS style key.\n if (value) {\n return key + ':' + value + ';';\n }\n else {\n return '';\n }\n}\nfunction writeStyleAttribute(element) {\n // Read the style property of the element and manually reflect it to the\n // style attribute. This is needed because Domino on platform-server doesn't\n // understand the full set of allowed CSS properties and doesn't reflect some\n // of them automatically.\n let styleAttrValue = '';\n for (let i = 0; i < element.style.length; i++) {\n const key = element.style.item(i);\n styleAttrValue += getStyleAttributeString(element, key, element.style.getPropertyValue(key));\n }\n for (const key in element.style) {\n // Skip internal Domino properties that don't need to be reflected.\n if (!element.style.hasOwnProperty(key) || key.startsWith('_')) {\n continue;\n }\n const dashKey = camelCaseToDashCase(key);\n styleAttrValue += getStyleAttributeString(element, dashKey, element.style[key]);\n }\n element.setAttribute('style', styleAttrValue);\n}\nfunction setStyles(element, styles, formerStyles) {\n if (element['style']) {\n Object.keys(styles).forEach(prop => {\n const camelProp = dashCaseToCamelCase(prop);\n if (formerStyles && !formerStyles.hasOwnProperty(prop)) {\n formerStyles[prop] = element.style[camelProp];\n }\n element.style[camelProp] = styles[prop];\n });\n // On the server set the 'style' attribute since it's not automatically reflected.\n if (isNode()) {\n writeStyleAttribute(element);\n }\n }\n}\nfunction eraseStyles(element, styles) {\n if (element['style']) {\n Object.keys(styles).forEach(prop => {\n const camelProp = dashCaseToCamelCase(prop);\n element.style[camelProp] = '';\n });\n // On the server set the 'style' attribute since it's not automatically reflected.\n if (isNode()) {\n writeStyleAttribute(element);\n }\n }\n}\nfunction normalizeAnimationEntry(steps) {\n if (Array.isArray(steps)) {\n if (steps.length == 1)\n return steps[0];\n return sequence(steps);\n }\n return steps;\n}\nfunction validateStyleParams(value, options, errors) {\n const params = options.params || {};\n const matches = extractStyleParams(value);\n if (matches.length) {\n matches.forEach(varName => {\n if (!params.hasOwnProperty(varName)) {\n errors.push(invalidStyleParams(varName));\n }\n });\n }\n}\nconst PARAM_REGEX = new RegExp(`${SUBSTITUTION_EXPR_START}\\\\s*(.+?)\\\\s*${SUBSTITUTION_EXPR_END}`, 'g');\nfunction extractStyleParams(value) {\n let params = [];\n if (typeof value === 'string') {\n let match;\n while (match = PARAM_REGEX.exec(value)) {\n params.push(match[1]);\n }\n PARAM_REGEX.lastIndex = 0;\n }\n return params;\n}\nfunction interpolateParams(value, params, errors) {\n const original = value.toString();\n const str = original.replace(PARAM_REGEX, (_, varName) => {\n let localVal = params[varName];\n // this means that the value was never overridden by the data passed in by the user\n if (!params.hasOwnProperty(varName)) {\n errors.push(invalidParamValue(varName));\n localVal = '';\n }\n return localVal.toString();\n });\n // we do this to assert that numeric values stay as they are\n return str == original ? value : str;\n}\nfunction iteratorToArray(iterator) {\n const arr = [];\n let item = iterator.next();\n while (!item.done) {\n arr.push(item.value);\n item = iterator.next();\n }\n return arr;\n}\nconst DASH_CASE_REGEXP = /-+([a-z0-9])/g;\nfunction dashCaseToCamelCase(input) {\n return input.replace(DASH_CASE_REGEXP, (...m) => m[1].toUpperCase());\n}\nfunction camelCaseToDashCase(input) {\n return input.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n}\nfunction allowPreviousPlayerStylesMerge(duration, delay) {\n return duration === 0 || delay === 0;\n}\nfunction balancePreviousStylesIntoKeyframes(element, keyframes, previousStyles) {\n const previousStyleProps = Object.keys(previousStyles);\n if (previousStyleProps.length && keyframes.length) {\n let startingKeyframe = keyframes[0];\n let missingStyleProps = [];\n previousStyleProps.forEach(prop => {\n if (!startingKeyframe.hasOwnProperty(prop)) {\n missingStyleProps.push(prop);\n }\n startingKeyframe[prop] = previousStyles[prop];\n });\n if (missingStyleProps.length) {\n // tslint:disable-next-line\n for (var i = 1; i < keyframes.length; i++) {\n let kf = keyframes[i];\n missingStyleProps.forEach(function (prop) {\n kf[prop] = computeStyle(element, prop);\n });\n }\n }\n }\n return keyframes;\n}\nfunction visitDslNode(visitor, node, context) {\n switch (node.type) {\n case 7 /* Trigger */:\n return visitor.visitTrigger(node, context);\n case 0 /* State */:\n return visitor.visitState(node, context);\n case 1 /* Transition */:\n return visitor.visitTransition(node, context);\n case 2 /* Sequence */:\n return visitor.visitSequence(node, context);\n case 3 /* Group */:\n return visitor.visitGroup(node, context);\n case 4 /* Animate */:\n return visitor.visitAnimate(node, context);\n case 5 /* Keyframes */:\n return visitor.visitKeyframes(node, context);\n case 6 /* Style */:\n return visitor.visitStyle(node, context);\n case 8 /* Reference */:\n return visitor.visitReference(node, context);\n case 9 /* AnimateChild */:\n return visitor.visitAnimateChild(node, context);\n case 10 /* AnimateRef */:\n return visitor.visitAnimateRef(node, context);\n case 11 /* Query */:\n return visitor.visitQuery(node, context);\n case 12 /* Stagger */:\n return visitor.visitStagger(node, context);\n default:\n throw invalidNodeType(node.type);\n }\n}\nfunction computeStyle(element, prop) {\n return window.getComputedStyle(element)[prop];\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst NG_DEV_MODE = typeof ngDevMode === 'undefined' || !!ngDevMode;\nfunction createListOfWarnings(warnings) {\n const LINE_START = '\\n - ';\n return `${LINE_START}${warnings.filter(Boolean).map(warning => warning).join(LINE_START)}`;\n}\nfunction warnValidation(warnings) {\n NG_DEV_MODE && console.warn(`animation validation warnings:${createListOfWarnings(warnings)}`);\n}\nfunction warnTriggerBuild(name, warnings) {\n NG_DEV_MODE &&\n console.warn(`The animation trigger \"${name}\" has built with the following warnings:${createListOfWarnings(warnings)}`);\n}\nfunction warnRegister(warnings) {\n NG_DEV_MODE &&\n console.warn(`Animation built with the following warnings:${createListOfWarnings(warnings)}`);\n}\nfunction triggerParsingWarnings(name, warnings) {\n NG_DEV_MODE &&\n console.warn(`Animation parsing for the ${name} trigger presents the following warnings:${createListOfWarnings(warnings)}`);\n}\nfunction pushUnrecognizedPropertiesWarning(warnings, props) {\n if (ngDevMode && props.length) {\n warnings.push(`The provided CSS properties are not recognized properties supported for animations: ${props.join(', ')}`);\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst ANY_STATE = '*';\nfunction parseTransitionExpr(transitionValue, errors) {\n const expressions = [];\n if (typeof transitionValue == 'string') {\n transitionValue.split(/\\s*,\\s*/).forEach(str => parseInnerTransitionStr(str, expressions, errors));\n }\n else {\n expressions.push(transitionValue);\n }\n return expressions;\n}\nfunction parseInnerTransitionStr(eventStr, expressions, errors) {\n if (eventStr[0] == ':') {\n const result = parseAnimationAlias(eventStr, errors);\n if (typeof result == 'function') {\n expressions.push(result);\n return;\n }\n eventStr = result;\n }\n const match = eventStr.match(/^(\\*|[-\\w]+)\\s*()\\s*(\\*|[-\\w]+)$/);\n if (match == null || match.length < 4) {\n errors.push(invalidExpression(eventStr));\n return expressions;\n }\n const fromState = match[1];\n const separator = match[2];\n const toState = match[3];\n expressions.push(makeLambdaFromStates(fromState, toState));\n const isFullAnyStateExpr = fromState == ANY_STATE && toState == ANY_STATE;\n if (separator[0] == '<' && !isFullAnyStateExpr) {\n expressions.push(makeLambdaFromStates(toState, fromState));\n }\n}\nfunction parseAnimationAlias(alias, errors) {\n switch (alias) {\n case ':enter':\n return 'void => *';\n case ':leave':\n return '* => void';\n case ':increment':\n return (fromState, toState) => parseFloat(toState) > parseFloat(fromState);\n case ':decrement':\n return (fromState, toState) => parseFloat(toState) < parseFloat(fromState);\n default:\n errors.push(invalidTransitionAlias(alias));\n return '* => *';\n }\n}\n// DO NOT REFACTOR ... keep the follow set instantiations\n// with the values intact (closure compiler for some reason\n// removes follow-up lines that add the values outside of\n// the constructor...\nconst TRUE_BOOLEAN_VALUES = new Set(['true', '1']);\nconst FALSE_BOOLEAN_VALUES = new Set(['false', '0']);\nfunction makeLambdaFromStates(lhs, rhs) {\n const LHS_MATCH_BOOLEAN = TRUE_BOOLEAN_VALUES.has(lhs) || FALSE_BOOLEAN_VALUES.has(lhs);\n const RHS_MATCH_BOOLEAN = TRUE_BOOLEAN_VALUES.has(rhs) || FALSE_BOOLEAN_VALUES.has(rhs);\n return (fromState, toState) => {\n let lhsMatch = lhs == ANY_STATE || lhs == fromState;\n let rhsMatch = rhs == ANY_STATE || rhs == toState;\n if (!lhsMatch && LHS_MATCH_BOOLEAN && typeof fromState === 'boolean') {\n lhsMatch = fromState ? TRUE_BOOLEAN_VALUES.has(lhs) : FALSE_BOOLEAN_VALUES.has(lhs);\n }\n if (!rhsMatch && RHS_MATCH_BOOLEAN && typeof toState === 'boolean') {\n rhsMatch = toState ? TRUE_BOOLEAN_VALUES.has(rhs) : FALSE_BOOLEAN_VALUES.has(rhs);\n }\n return lhsMatch && rhsMatch;\n };\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst SELF_TOKEN = ':self';\nconst SELF_TOKEN_REGEX = new RegExp(`\\s*${SELF_TOKEN}\\s*,?`, 'g');\n/*\n * [Validation]\n * The visitor code below will traverse the animation AST generated by the animation verb functions\n * (the output is a tree of objects) and attempt to perform a series of validations on the data. The\n * following corner-cases will be validated:\n *\n * 1. Overlap of animations\n * Given that a CSS property cannot be animated in more than one place at the same time, it's\n * important that this behavior is detected and validated. The way in which this occurs is that\n * each time a style property is examined, a string-map containing the property will be updated with\n * the start and end times for when the property is used within an animation step.\n *\n * If there are two or more parallel animations that are currently running (these are invoked by the\n * group()) on the same element then the validator will throw an error. Since the start/end timing\n * values are collected for each property then if the current animation step is animating the same\n * property and its timing values fall anywhere into the window of time that the property is\n * currently being animated within then this is what causes an error.\n *\n * 2. Timing values\n * The validator will validate to see if a timing value of `duration delay easing` or\n * `durationNumber` is valid or not.\n *\n * (note that upon validation the code below will replace the timing data with an object containing\n * {duration,delay,easing}.\n *\n * 3. Offset Validation\n * Each of the style() calls are allowed to have an offset value when placed inside of keyframes().\n * Offsets within keyframes() are considered valid when:\n *\n * - No offsets are used at all\n * - Each style() entry contains an offset value\n * - Each offset is between 0 and 1\n * - Each offset is greater to or equal than the previous one\n *\n * Otherwise an error will be thrown.\n */\nfunction buildAnimationAst(driver, metadata, errors, warnings) {\n return new AnimationAstBuilderVisitor(driver).build(metadata, errors, warnings);\n}\nconst ROOT_SELECTOR = '';\nclass AnimationAstBuilderVisitor {\n constructor(_driver) {\n this._driver = _driver;\n }\n build(metadata, errors, warnings) {\n const context = new AnimationAstBuilderContext(errors);\n this._resetContextStyleTimingState(context);\n const ast = visitDslNode(this, normalizeAnimationEntry(metadata), context);\n if (context.unsupportedCSSPropertiesFound.size) {\n pushUnrecognizedPropertiesWarning(warnings, [...context.unsupportedCSSPropertiesFound.keys()]);\n }\n return ast;\n }\n _resetContextStyleTimingState(context) {\n context.currentQuerySelector = ROOT_SELECTOR;\n context.collectedStyles = {};\n context.collectedStyles[ROOT_SELECTOR] = {};\n context.currentTime = 0;\n }\n visitTrigger(metadata, context) {\n let queryCount = context.queryCount = 0;\n let depCount = context.depCount = 0;\n const states = [];\n const transitions = [];\n if (metadata.name.charAt(0) == '@') {\n context.errors.push(invalidTrigger());\n }\n metadata.definitions.forEach(def => {\n this._resetContextStyleTimingState(context);\n if (def.type == 0 /* State */) {\n const stateDef = def;\n const name = stateDef.name;\n name.toString().split(/\\s*,\\s*/).forEach(n => {\n stateDef.name = n;\n states.push(this.visitState(stateDef, context));\n });\n stateDef.name = name;\n }\n else if (def.type == 1 /* Transition */) {\n const transition = this.visitTransition(def, context);\n queryCount += transition.queryCount;\n depCount += transition.depCount;\n transitions.push(transition);\n }\n else {\n context.errors.push(invalidDefinition());\n }\n });\n return {\n type: 7 /* Trigger */,\n name: metadata.name,\n states,\n transitions,\n queryCount,\n depCount,\n options: null\n };\n }\n visitState(metadata, context) {\n const styleAst = this.visitStyle(metadata.styles, context);\n const astParams = (metadata.options && metadata.options.params) || null;\n if (styleAst.containsDynamicStyles) {\n const missingSubs = new Set();\n const params = astParams || {};\n styleAst.styles.forEach(value => {\n if (isObject(value)) {\n const stylesObj = value;\n Object.keys(stylesObj).forEach(prop => {\n extractStyleParams(stylesObj[prop]).forEach(sub => {\n if (!params.hasOwnProperty(sub)) {\n missingSubs.add(sub);\n }\n });\n });\n }\n });\n if (missingSubs.size) {\n const missingSubsArr = iteratorToArray(missingSubs.values());\n context.errors.push(invalidState(metadata.name, missingSubsArr));\n }\n }\n return {\n type: 0 /* State */,\n name: metadata.name,\n style: styleAst,\n options: astParams ? { params: astParams } : null\n };\n }\n visitTransition(metadata, context) {\n context.queryCount = 0;\n context.depCount = 0;\n const animation = visitDslNode(this, normalizeAnimationEntry(metadata.animation), context);\n const matchers = parseTransitionExpr(metadata.expr, context.errors);\n return {\n type: 1 /* Transition */,\n matchers,\n animation,\n queryCount: context.queryCount,\n depCount: context.depCount,\n options: normalizeAnimationOptions(metadata.options)\n };\n }\n visitSequence(metadata, context) {\n return {\n type: 2 /* Sequence */,\n steps: metadata.steps.map(s => visitDslNode(this, s, context)),\n options: normalizeAnimationOptions(metadata.options)\n };\n }\n visitGroup(metadata, context) {\n const currentTime = context.currentTime;\n let furthestTime = 0;\n const steps = metadata.steps.map(step => {\n context.currentTime = currentTime;\n const innerAst = visitDslNode(this, step, context);\n furthestTime = Math.max(furthestTime, context.currentTime);\n return innerAst;\n });\n context.currentTime = furthestTime;\n return {\n type: 3 /* Group */,\n steps,\n options: normalizeAnimationOptions(metadata.options)\n };\n }\n visitAnimate(metadata, context) {\n const timingAst = constructTimingAst(metadata.timings, context.errors);\n context.currentAnimateTimings = timingAst;\n let styleAst;\n let styleMetadata = metadata.styles ? metadata.styles : style({});\n if (styleMetadata.type == 5 /* Keyframes */) {\n styleAst = this.visitKeyframes(styleMetadata, context);\n }\n else {\n let styleMetadata = metadata.styles;\n let isEmpty = false;\n if (!styleMetadata) {\n isEmpty = true;\n const newStyleData = {};\n if (timingAst.easing) {\n newStyleData['easing'] = timingAst.easing;\n }\n styleMetadata = style(newStyleData);\n }\n context.currentTime += timingAst.duration + timingAst.delay;\n const _styleAst = this.visitStyle(styleMetadata, context);\n _styleAst.isEmptyStep = isEmpty;\n styleAst = _styleAst;\n }\n context.currentAnimateTimings = null;\n return {\n type: 4 /* Animate */,\n timings: timingAst,\n style: styleAst,\n options: null\n };\n }\n visitStyle(metadata, context) {\n const ast = this._makeStyleAst(metadata, context);\n this._validateStyleAst(ast, context);\n return ast;\n }\n _makeStyleAst(metadata, context) {\n const styles = [];\n if (Array.isArray(metadata.styles)) {\n metadata.styles.forEach(styleTuple => {\n if (typeof styleTuple == 'string') {\n if (styleTuple == AUTO_STYLE) {\n styles.push(styleTuple);\n }\n else {\n context.errors.push(invalidStyleValue(styleTuple));\n }\n }\n else {\n styles.push(styleTuple);\n }\n });\n }\n else {\n styles.push(metadata.styles);\n }\n let containsDynamicStyles = false;\n let collectedEasing = null;\n styles.forEach(styleData => {\n if (isObject(styleData)) {\n const styleMap = styleData;\n const easing = styleMap['easing'];\n if (easing) {\n collectedEasing = easing;\n delete styleMap['easing'];\n }\n if (!containsDynamicStyles) {\n for (let prop in styleMap) {\n const value = styleMap[prop];\n if (value.toString().indexOf(SUBSTITUTION_EXPR_START) >= 0) {\n containsDynamicStyles = true;\n break;\n }\n }\n }\n }\n });\n return {\n type: 6 /* Style */,\n styles,\n easing: collectedEasing,\n offset: metadata.offset,\n containsDynamicStyles,\n options: null\n };\n }\n _validateStyleAst(ast, context) {\n const timings = context.currentAnimateTimings;\n let endTime = context.currentTime;\n let startTime = context.currentTime;\n if (timings && startTime > 0) {\n startTime -= timings.duration + timings.delay;\n }\n ast.styles.forEach(tuple => {\n if (typeof tuple == 'string')\n return;\n Object.keys(tuple).forEach(prop => {\n if (!this._driver.validateStyleProperty(prop)) {\n delete tuple[prop];\n context.unsupportedCSSPropertiesFound.add(prop);\n return;\n }\n const collectedStyles = context.collectedStyles[context.currentQuerySelector];\n const collectedEntry = collectedStyles[prop];\n let updateCollectedStyle = true;\n if (collectedEntry) {\n if (startTime != endTime && startTime >= collectedEntry.startTime &&\n endTime <= collectedEntry.endTime) {\n context.errors.push(invalidParallelAnimation(prop, collectedEntry.startTime, collectedEntry.endTime, startTime, endTime));\n updateCollectedStyle = false;\n }\n // we always choose the smaller start time value since we\n // want to have a record of the entire animation window where\n // the style property is being animated in between\n startTime = collectedEntry.startTime;\n }\n if (updateCollectedStyle) {\n collectedStyles[prop] = { startTime, endTime };\n }\n if (context.options) {\n validateStyleParams(tuple[prop], context.options, context.errors);\n }\n });\n });\n }\n visitKeyframes(metadata, context) {\n const ast = { type: 5 /* Keyframes */, styles: [], options: null };\n if (!context.currentAnimateTimings) {\n context.errors.push(invalidKeyframes());\n return ast;\n }\n const MAX_KEYFRAME_OFFSET = 1;\n let totalKeyframesWithOffsets = 0;\n const offsets = [];\n let offsetsOutOfOrder = false;\n let keyframesOutOfRange = false;\n let previousOffset = 0;\n const keyframes = metadata.steps.map(styles => {\n const style = this._makeStyleAst(styles, context);\n let offsetVal = style.offset != null ? style.offset : consumeOffset(style.styles);\n let offset = 0;\n if (offsetVal != null) {\n totalKeyframesWithOffsets++;\n offset = style.offset = offsetVal;\n }\n keyframesOutOfRange = keyframesOutOfRange || offset < 0 || offset > 1;\n offsetsOutOfOrder = offsetsOutOfOrder || offset < previousOffset;\n previousOffset = offset;\n offsets.push(offset);\n return style;\n });\n if (keyframesOutOfRange) {\n context.errors.push(invalidOffset());\n }\n if (offsetsOutOfOrder) {\n context.errors.push(keyframeOffsetsOutOfOrder());\n }\n const length = metadata.steps.length;\n let generatedOffset = 0;\n if (totalKeyframesWithOffsets > 0 && totalKeyframesWithOffsets < length) {\n context.errors.push(keyframesMissingOffsets());\n }\n else if (totalKeyframesWithOffsets == 0) {\n generatedOffset = MAX_KEYFRAME_OFFSET / (length - 1);\n }\n const limit = length - 1;\n const currentTime = context.currentTime;\n const currentAnimateTimings = context.currentAnimateTimings;\n const animateDuration = currentAnimateTimings.duration;\n keyframes.forEach((kf, i) => {\n const offset = generatedOffset > 0 ? (i == limit ? 1 : (generatedOffset * i)) : offsets[i];\n const durationUpToThisFrame = offset * animateDuration;\n context.currentTime = currentTime + currentAnimateTimings.delay + durationUpToThisFrame;\n currentAnimateTimings.duration = durationUpToThisFrame;\n this._validateStyleAst(kf, context);\n kf.offset = offset;\n ast.styles.push(kf);\n });\n return ast;\n }\n visitReference(metadata, context) {\n return {\n type: 8 /* Reference */,\n animation: visitDslNode(this, normalizeAnimationEntry(metadata.animation), context),\n options: normalizeAnimationOptions(metadata.options)\n };\n }\n visitAnimateChild(metadata, context) {\n context.depCount++;\n return {\n type: 9 /* AnimateChild */,\n options: normalizeAnimationOptions(metadata.options)\n };\n }\n visitAnimateRef(metadata, context) {\n return {\n type: 10 /* AnimateRef */,\n animation: this.visitReference(metadata.animation, context),\n options: normalizeAnimationOptions(metadata.options)\n };\n }\n visitQuery(metadata, context) {\n const parentSelector = context.currentQuerySelector;\n const options = (metadata.options || {});\n context.queryCount++;\n context.currentQuery = metadata;\n const [selector, includeSelf] = normalizeSelector(metadata.selector);\n context.currentQuerySelector =\n parentSelector.length ? (parentSelector + ' ' + selector) : selector;\n getOrSetAsInMap(context.collectedStyles, context.currentQuerySelector, {});\n const animation = visitDslNode(this, normalizeAnimationEntry(metadata.animation), context);\n context.currentQuery = null;\n context.currentQuerySelector = parentSelector;\n return {\n type: 11 /* Query */,\n selector,\n limit: options.limit || 0,\n optional: !!options.optional,\n includeSelf,\n animation,\n originalSelector: metadata.selector,\n options: normalizeAnimationOptions(metadata.options)\n };\n }\n visitStagger(metadata, context) {\n if (!context.currentQuery) {\n context.errors.push(invalidStagger());\n }\n const timings = metadata.timings === 'full' ?\n { duration: 0, delay: 0, easing: 'full' } :\n resolveTiming(metadata.timings, context.errors, true);\n return {\n type: 12 /* Stagger */,\n animation: visitDslNode(this, normalizeAnimationEntry(metadata.animation), context),\n timings,\n options: null\n };\n }\n}\nfunction normalizeSelector(selector) {\n const hasAmpersand = selector.split(/\\s*,\\s*/).find(token => token == SELF_TOKEN) ? true : false;\n if (hasAmpersand) {\n selector = selector.replace(SELF_TOKEN_REGEX, '');\n }\n // Note: the :enter and :leave aren't normalized here since those\n // selectors are filled in at runtime during timeline building\n selector = selector.replace(/@\\*/g, NG_TRIGGER_SELECTOR)\n .replace(/@\\w+/g, match => NG_TRIGGER_SELECTOR + '-' + match.substr(1))\n .replace(/:animating/g, NG_ANIMATING_SELECTOR);\n return [selector, hasAmpersand];\n}\nfunction normalizeParams(obj) {\n return obj ? copyObj(obj) : null;\n}\nclass AnimationAstBuilderContext {\n constructor(errors) {\n this.errors = errors;\n this.queryCount = 0;\n this.depCount = 0;\n this.currentTransition = null;\n this.currentQuery = null;\n this.currentQuerySelector = null;\n this.currentAnimateTimings = null;\n this.currentTime = 0;\n this.collectedStyles = {};\n this.options = null;\n this.unsupportedCSSPropertiesFound = new Set();\n }\n}\nfunction consumeOffset(styles) {\n if (typeof styles == 'string')\n return null;\n let offset = null;\n if (Array.isArray(styles)) {\n styles.forEach(styleTuple => {\n if (isObject(styleTuple) && styleTuple.hasOwnProperty('offset')) {\n const obj = styleTuple;\n offset = parseFloat(obj['offset']);\n delete obj['offset'];\n }\n });\n }\n else if (isObject(styles) && styles.hasOwnProperty('offset')) {\n const obj = styles;\n offset = parseFloat(obj['offset']);\n delete obj['offset'];\n }\n return offset;\n}\nfunction isObject(value) {\n return !Array.isArray(value) && typeof value == 'object';\n}\nfunction constructTimingAst(value, errors) {\n let timings = null;\n if (value.hasOwnProperty('duration')) {\n timings = value;\n }\n else if (typeof value == 'number') {\n const duration = resolveTiming(value, errors).duration;\n return makeTimingAst(duration, 0, '');\n }\n const strValue = value;\n const isDynamic = strValue.split(/\\s+/).some(v => v.charAt(0) == '{' && v.charAt(1) == '{');\n if (isDynamic) {\n const ast = makeTimingAst(0, 0, '');\n ast.dynamic = true;\n ast.strValue = strValue;\n return ast;\n }\n timings = timings || resolveTiming(strValue, errors);\n return makeTimingAst(timings.duration, timings.delay, timings.easing);\n}\nfunction normalizeAnimationOptions(options) {\n if (options) {\n options = copyObj(options);\n if (options['params']) {\n options['params'] = normalizeParams(options['params']);\n }\n }\n else {\n options = {};\n }\n return options;\n}\nfunction makeTimingAst(duration, delay, easing) {\n return { duration, delay, easing };\n}\n\nfunction createTimelineInstruction(element, keyframes, preStyleProps, postStyleProps, duration, delay, easing = null, subTimeline = false) {\n return {\n type: 1 /* TimelineAnimation */,\n element,\n keyframes,\n preStyleProps,\n postStyleProps,\n duration,\n delay,\n totalTime: duration + delay,\n easing,\n subTimeline\n };\n}\n\nclass ElementInstructionMap {\n constructor() {\n this._map = new Map();\n }\n get(element) {\n return this._map.get(element) || [];\n }\n append(element, instructions) {\n let existingInstructions = this._map.get(element);\n if (!existingInstructions) {\n this._map.set(element, existingInstructions = []);\n }\n existingInstructions.push(...instructions);\n }\n has(element) {\n return this._map.has(element);\n }\n clear() {\n this._map.clear();\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst ONE_FRAME_IN_MILLISECONDS = 1;\nconst ENTER_TOKEN = ':enter';\nconst ENTER_TOKEN_REGEX = new RegExp(ENTER_TOKEN, 'g');\nconst LEAVE_TOKEN = ':leave';\nconst LEAVE_TOKEN_REGEX = new RegExp(LEAVE_TOKEN, 'g');\n/*\n * The code within this file aims to generate web-animations-compatible keyframes from Angular's\n * animation DSL code.\n *\n * The code below will be converted from:\n *\n * ```\n * sequence([\n * style({ opacity: 0 }),\n * animate(1000, style({ opacity: 0 }))\n * ])\n * ```\n *\n * To:\n * ```\n * keyframes = [{ opacity: 0, offset: 0 }, { opacity: 1, offset: 1 }]\n * duration = 1000\n * delay = 0\n * easing = ''\n * ```\n *\n * For this operation to cover the combination of animation verbs (style, animate, group, etc...) a\n * combination of prototypical inheritance, AST traversal and merge-sort-like algorithms are used.\n *\n * [AST Traversal]\n * Each of the animation verbs, when executed, will return an string-map object representing what\n * type of action it is (style, animate, group, etc...) and the data associated with it. This means\n * that when functional composition mix of these functions is evaluated (like in the example above)\n * then it will end up producing a tree of objects representing the animation itself.\n *\n * When this animation object tree is processed by the visitor code below it will visit each of the\n * verb statements within the visitor. And during each visit it will build the context of the\n * animation keyframes by interacting with the `TimelineBuilder`.\n *\n * [TimelineBuilder]\n * This class is responsible for tracking the styles and building a series of keyframe objects for a\n * timeline between a start and end time. The builder starts off with an initial timeline and each\n * time the AST comes across a `group()`, `keyframes()` or a combination of the two within a\n * `sequence()` then it will generate a sub timeline for each step as well as a new one after\n * they are complete.\n *\n * As the AST is traversed, the timing state on each of the timelines will be incremented. If a sub\n * timeline was created (based on one of the cases above) then the parent timeline will attempt to\n * merge the styles used within the sub timelines into itself (only with group() this will happen).\n * This happens with a merge operation (much like how the merge works in mergeSort) and it will only\n * copy the most recently used styles from the sub timelines into the parent timeline. This ensures\n * that if the styles are used later on in another phase of the animation then they will be the most\n * up-to-date values.\n *\n * [How Missing Styles Are Updated]\n * Each timeline has a `backFill` property which is responsible for filling in new styles into\n * already processed keyframes if a new style shows up later within the animation sequence.\n *\n * ```\n * sequence([\n * style({ width: 0 }),\n * animate(1000, style({ width: 100 })),\n * animate(1000, style({ width: 200 })),\n * animate(1000, style({ width: 300 }))\n * animate(1000, style({ width: 400, height: 400 })) // notice how `height` doesn't exist anywhere\n * else\n * ])\n * ```\n *\n * What is happening here is that the `height` value is added later in the sequence, but is missing\n * from all previous animation steps. Therefore when a keyframe is created it would also be missing\n * from all previous keyframes up until where it is first used. For the timeline keyframe generation\n * to properly fill in the style it will place the previous value (the value from the parent\n * timeline) or a default value of `*` into the backFill object. Given that each of the keyframe\n * styles is an object that prototypically inherits from the backFill object, this means that if a\n * value is added into the backFill then it will automatically propagate any missing values to all\n * keyframes. Therefore the missing `height` value will be properly filled into the already\n * processed keyframes.\n *\n * When a sub-timeline is created it will have its own backFill property. This is done so that\n * styles present within the sub-timeline do not accidentally seep into the previous/future timeline\n * keyframes\n *\n * (For prototypically-inherited contents to be detected a `for(i in obj)` loop must be used.)\n *\n * [Validation]\n * The code in this file is not responsible for validation. That functionality happens with within\n * the `AnimationValidatorVisitor` code.\n */\nfunction buildAnimationTimelines(driver, rootElement, ast, enterClassName, leaveClassName, startingStyles = {}, finalStyles = {}, options, subInstructions, errors = []) {\n return new AnimationTimelineBuilderVisitor().buildKeyframes(driver, rootElement, ast, enterClassName, leaveClassName, startingStyles, finalStyles, options, subInstructions, errors);\n}\nclass AnimationTimelineBuilderVisitor {\n buildKeyframes(driver, rootElement, ast, enterClassName, leaveClassName, startingStyles, finalStyles, options, subInstructions, errors = []) {\n subInstructions = subInstructions || new ElementInstructionMap();\n const context = new AnimationTimelineContext(driver, rootElement, subInstructions, enterClassName, leaveClassName, errors, []);\n context.options = options;\n context.currentTimeline.setStyles([startingStyles], null, context.errors, options);\n visitDslNode(this, ast, context);\n // this checks to see if an actual animation happened\n const timelines = context.timelines.filter(timeline => timeline.containsAnimation());\n if (Object.keys(finalStyles).length) {\n // note: we just want to apply the final styles for the rootElement, so we do not\n // just apply the styles to the last timeline but the last timeline which\n // element is the root one (basically `*`-styles are replaced with the actual\n // state style values only for the root element)\n let lastRootTimeline;\n for (let i = timelines.length - 1; i >= 0; i--) {\n const timeline = timelines[i];\n if (timeline.element === rootElement) {\n lastRootTimeline = timeline;\n break;\n }\n }\n if (lastRootTimeline && !lastRootTimeline.allowOnlyTimelineStyles()) {\n lastRootTimeline.setStyles([finalStyles], null, context.errors, options);\n }\n }\n return timelines.length ? timelines.map(timeline => timeline.buildKeyframes()) :\n [createTimelineInstruction(rootElement, [], [], [], 0, 0, '', false)];\n }\n visitTrigger(ast, context) {\n // these values are not visited in this AST\n }\n visitState(ast, context) {\n // these values are not visited in this AST\n }\n visitTransition(ast, context) {\n // these values are not visited in this AST\n }\n visitAnimateChild(ast, context) {\n const elementInstructions = context.subInstructions.get(context.element);\n if (elementInstructions) {\n const innerContext = context.createSubContext(ast.options);\n const startTime = context.currentTimeline.currentTime;\n const endTime = this._visitSubInstructions(elementInstructions, innerContext, innerContext.options);\n if (startTime != endTime) {\n // we do this on the upper context because we created a sub context for\n // the sub child animations\n context.transformIntoNewTimeline(endTime);\n }\n }\n context.previousNode = ast;\n }\n visitAnimateRef(ast, context) {\n const innerContext = context.createSubContext(ast.options);\n innerContext.transformIntoNewTimeline();\n this.visitReference(ast.animation, innerContext);\n context.transformIntoNewTimeline(innerContext.currentTimeline.currentTime);\n context.previousNode = ast;\n }\n _visitSubInstructions(instructions, context, options) {\n const startTime = context.currentTimeline.currentTime;\n let furthestTime = startTime;\n // this is a special-case for when a user wants to skip a sub\n // animation from being fired entirely.\n const duration = options.duration != null ? resolveTimingValue(options.duration) : null;\n const delay = options.delay != null ? resolveTimingValue(options.delay) : null;\n if (duration !== 0) {\n instructions.forEach(instruction => {\n const instructionTimings = context.appendInstructionToTimeline(instruction, duration, delay);\n furthestTime =\n Math.max(furthestTime, instructionTimings.duration + instructionTimings.delay);\n });\n }\n return furthestTime;\n }\n visitReference(ast, context) {\n context.updateOptions(ast.options, true);\n visitDslNode(this, ast.animation, context);\n context.previousNode = ast;\n }\n visitSequence(ast, context) {\n const subContextCount = context.subContextCount;\n let ctx = context;\n const options = ast.options;\n if (options && (options.params || options.delay)) {\n ctx = context.createSubContext(options);\n ctx.transformIntoNewTimeline();\n if (options.delay != null) {\n if (ctx.previousNode.type == 6 /* Style */) {\n ctx.currentTimeline.snapshotCurrentStyles();\n ctx.previousNode = DEFAULT_NOOP_PREVIOUS_NODE;\n }\n const delay = resolveTimingValue(options.delay);\n ctx.delayNextStep(delay);\n }\n }\n if (ast.steps.length) {\n ast.steps.forEach(s => visitDslNode(this, s, ctx));\n // this is here just in case the inner steps only contain or end with a style() call\n ctx.currentTimeline.applyStylesToKeyframe();\n // this means that some animation function within the sequence\n // ended up creating a sub timeline (which means the current\n // timeline cannot overlap with the contents of the sequence)\n if (ctx.subContextCount > subContextCount) {\n ctx.transformIntoNewTimeline();\n }\n }\n context.previousNode = ast;\n }\n visitGroup(ast, context) {\n const innerTimelines = [];\n let furthestTime = context.currentTimeline.currentTime;\n const delay = ast.options && ast.options.delay ? resolveTimingValue(ast.options.delay) : 0;\n ast.steps.forEach(s => {\n const innerContext = context.createSubContext(ast.options);\n if (delay) {\n innerContext.delayNextStep(delay);\n }\n visitDslNode(this, s, innerContext);\n furthestTime = Math.max(furthestTime, innerContext.currentTimeline.currentTime);\n innerTimelines.push(innerContext.currentTimeline);\n });\n // this operation is run after the AST loop because otherwise\n // if the parent timeline's collected styles were updated then\n // it would pass in invalid data into the new-to-be forked items\n innerTimelines.forEach(timeline => context.currentTimeline.mergeTimelineCollectedStyles(timeline));\n context.transformIntoNewTimeline(furthestTime);\n context.previousNode = ast;\n }\n _visitTiming(ast, context) {\n if (ast.dynamic) {\n const strValue = ast.strValue;\n const timingValue = context.params ? interpolateParams(strValue, context.params, context.errors) : strValue;\n return resolveTiming(timingValue, context.errors);\n }\n else {\n return { duration: ast.duration, delay: ast.delay, easing: ast.easing };\n }\n }\n visitAnimate(ast, context) {\n const timings = context.currentAnimateTimings = this._visitTiming(ast.timings, context);\n const timeline = context.currentTimeline;\n if (timings.delay) {\n context.incrementTime(timings.delay);\n timeline.snapshotCurrentStyles();\n }\n const style = ast.style;\n if (style.type == 5 /* Keyframes */) {\n this.visitKeyframes(style, context);\n }\n else {\n context.incrementTime(timings.duration);\n this.visitStyle(style, context);\n timeline.applyStylesToKeyframe();\n }\n context.currentAnimateTimings = null;\n context.previousNode = ast;\n }\n visitStyle(ast, context) {\n const timeline = context.currentTimeline;\n const timings = context.currentAnimateTimings;\n // this is a special case for when a style() call\n // directly follows an animate() call (but not inside of an animate() call)\n if (!timings && timeline.getCurrentStyleProperties().length) {\n timeline.forwardFrame();\n }\n const easing = (timings && timings.easing) || ast.easing;\n if (ast.isEmptyStep) {\n timeline.applyEmptyStep(easing);\n }\n else {\n timeline.setStyles(ast.styles, easing, context.errors, context.options);\n }\n context.previousNode = ast;\n }\n visitKeyframes(ast, context) {\n const currentAnimateTimings = context.currentAnimateTimings;\n const startTime = (context.currentTimeline).duration;\n const duration = currentAnimateTimings.duration;\n const innerContext = context.createSubContext();\n const innerTimeline = innerContext.currentTimeline;\n innerTimeline.easing = currentAnimateTimings.easing;\n ast.styles.forEach(step => {\n const offset = step.offset || 0;\n innerTimeline.forwardTime(offset * duration);\n innerTimeline.setStyles(step.styles, step.easing, context.errors, context.options);\n innerTimeline.applyStylesToKeyframe();\n });\n // this will ensure that the parent timeline gets all the styles from\n // the child even if the new timeline below is not used\n context.currentTimeline.mergeTimelineCollectedStyles(innerTimeline);\n // we do this because the window between this timeline and the sub timeline\n // should ensure that the styles within are exactly the same as they were before\n context.transformIntoNewTimeline(startTime + duration);\n context.previousNode = ast;\n }\n visitQuery(ast, context) {\n // in the event that the first step before this is a style step we need\n // to ensure the styles are applied before the children are animated\n const startTime = context.currentTimeline.currentTime;\n const options = (ast.options || {});\n const delay = options.delay ? resolveTimingValue(options.delay) : 0;\n if (delay &&\n (context.previousNode.type === 6 /* Style */ ||\n (startTime == 0 && context.currentTimeline.getCurrentStyleProperties().length))) {\n context.currentTimeline.snapshotCurrentStyles();\n context.previousNode = DEFAULT_NOOP_PREVIOUS_NODE;\n }\n let furthestTime = startTime;\n const elms = context.invokeQuery(ast.selector, ast.originalSelector, ast.limit, ast.includeSelf, options.optional ? true : false, context.errors);\n context.currentQueryTotal = elms.length;\n let sameElementTimeline = null;\n elms.forEach((element, i) => {\n context.currentQueryIndex = i;\n const innerContext = context.createSubContext(ast.options, element);\n if (delay) {\n innerContext.delayNextStep(delay);\n }\n if (element === context.element) {\n sameElementTimeline = innerContext.currentTimeline;\n }\n visitDslNode(this, ast.animation, innerContext);\n // this is here just incase the inner steps only contain or end\n // with a style() call (which is here to signal that this is a preparatory\n // call to style an element before it is animated again)\n innerContext.currentTimeline.applyStylesToKeyframe();\n const endTime = innerContext.currentTimeline.currentTime;\n furthestTime = Math.max(furthestTime, endTime);\n });\n context.currentQueryIndex = 0;\n context.currentQueryTotal = 0;\n context.transformIntoNewTimeline(furthestTime);\n if (sameElementTimeline) {\n context.currentTimeline.mergeTimelineCollectedStyles(sameElementTimeline);\n context.currentTimeline.snapshotCurrentStyles();\n }\n context.previousNode = ast;\n }\n visitStagger(ast, context) {\n const parentContext = context.parentContext;\n const tl = context.currentTimeline;\n const timings = ast.timings;\n const duration = Math.abs(timings.duration);\n const maxTime = duration * (context.currentQueryTotal - 1);\n let delay = duration * context.currentQueryIndex;\n let staggerTransformer = timings.duration < 0 ? 'reverse' : timings.easing;\n switch (staggerTransformer) {\n case 'reverse':\n delay = maxTime - delay;\n break;\n case 'full':\n delay = parentContext.currentStaggerTime;\n break;\n }\n const timeline = context.currentTimeline;\n if (delay) {\n timeline.delayNextStep(delay);\n }\n const startingTime = timeline.currentTime;\n visitDslNode(this, ast.animation, context);\n context.previousNode = ast;\n // time = duration + delay\n // the reason why this computation is so complex is because\n // the inner timeline may either have a delay value or a stretched\n // keyframe depending on if a subtimeline is not used or is used.\n parentContext.currentStaggerTime =\n (tl.currentTime - startingTime) + (tl.startTime - parentContext.currentTimeline.startTime);\n }\n}\nconst DEFAULT_NOOP_PREVIOUS_NODE = {};\nclass AnimationTimelineContext {\n constructor(_driver, element, subInstructions, _enterClassName, _leaveClassName, errors, timelines, initialTimeline) {\n this._driver = _driver;\n this.element = element;\n this.subInstructions = subInstructions;\n this._enterClassName = _enterClassName;\n this._leaveClassName = _leaveClassName;\n this.errors = errors;\n this.timelines = timelines;\n this.parentContext = null;\n this.currentAnimateTimings = null;\n this.previousNode = DEFAULT_NOOP_PREVIOUS_NODE;\n this.subContextCount = 0;\n this.options = {};\n this.currentQueryIndex = 0;\n this.currentQueryTotal = 0;\n this.currentStaggerTime = 0;\n this.currentTimeline = initialTimeline || new TimelineBuilder(this._driver, element, 0);\n timelines.push(this.currentTimeline);\n }\n get params() {\n return this.options.params;\n }\n updateOptions(options, skipIfExists) {\n if (!options)\n return;\n const newOptions = options;\n let optionsToUpdate = this.options;\n // NOTE: this will get patched up when other animation methods support duration overrides\n if (newOptions.duration != null) {\n optionsToUpdate.duration = resolveTimingValue(newOptions.duration);\n }\n if (newOptions.delay != null) {\n optionsToUpdate.delay = resolveTimingValue(newOptions.delay);\n }\n const newParams = newOptions.params;\n if (newParams) {\n let paramsToUpdate = optionsToUpdate.params;\n if (!paramsToUpdate) {\n paramsToUpdate = this.options.params = {};\n }\n Object.keys(newParams).forEach(name => {\n if (!skipIfExists || !paramsToUpdate.hasOwnProperty(name)) {\n paramsToUpdate[name] = interpolateParams(newParams[name], paramsToUpdate, this.errors);\n }\n });\n }\n }\n _copyOptions() {\n const options = {};\n if (this.options) {\n const oldParams = this.options.params;\n if (oldParams) {\n const params = options['params'] = {};\n Object.keys(oldParams).forEach(name => {\n params[name] = oldParams[name];\n });\n }\n }\n return options;\n }\n createSubContext(options = null, element, newTime) {\n const target = element || this.element;\n const context = new AnimationTimelineContext(this._driver, target, this.subInstructions, this._enterClassName, this._leaveClassName, this.errors, this.timelines, this.currentTimeline.fork(target, newTime || 0));\n context.previousNode = this.previousNode;\n context.currentAnimateTimings = this.currentAnimateTimings;\n context.options = this._copyOptions();\n context.updateOptions(options);\n context.currentQueryIndex = this.currentQueryIndex;\n context.currentQueryTotal = this.currentQueryTotal;\n context.parentContext = this;\n this.subContextCount++;\n return context;\n }\n transformIntoNewTimeline(newTime) {\n this.previousNode = DEFAULT_NOOP_PREVIOUS_NODE;\n this.currentTimeline = this.currentTimeline.fork(this.element, newTime);\n this.timelines.push(this.currentTimeline);\n return this.currentTimeline;\n }\n appendInstructionToTimeline(instruction, duration, delay) {\n const updatedTimings = {\n duration: duration != null ? duration : instruction.duration,\n delay: this.currentTimeline.currentTime + (delay != null ? delay : 0) + instruction.delay,\n easing: ''\n };\n const builder = new SubTimelineBuilder(this._driver, instruction.element, instruction.keyframes, instruction.preStyleProps, instruction.postStyleProps, updatedTimings, instruction.stretchStartingKeyframe);\n this.timelines.push(builder);\n return updatedTimings;\n }\n incrementTime(time) {\n this.currentTimeline.forwardTime(this.currentTimeline.duration + time);\n }\n delayNextStep(delay) {\n // negative delays are not yet supported\n if (delay > 0) {\n this.currentTimeline.delayNextStep(delay);\n }\n }\n invokeQuery(selector, originalSelector, limit, includeSelf, optional, errors) {\n let results = [];\n if (includeSelf) {\n results.push(this.element);\n }\n if (selector.length > 0) { // only if :self is used then the selector can be empty\n selector = selector.replace(ENTER_TOKEN_REGEX, '.' + this._enterClassName);\n selector = selector.replace(LEAVE_TOKEN_REGEX, '.' + this._leaveClassName);\n const multi = limit != 1;\n let elements = this._driver.query(this.element, selector, multi);\n if (limit !== 0) {\n elements = limit < 0 ? elements.slice(elements.length + limit, elements.length) :\n elements.slice(0, limit);\n }\n results.push(...elements);\n }\n if (!optional && results.length == 0) {\n errors.push(invalidQuery(originalSelector));\n }\n return results;\n }\n}\nclass TimelineBuilder {\n constructor(_driver, element, startTime, _elementTimelineStylesLookup) {\n this._driver = _driver;\n this.element = element;\n this.startTime = startTime;\n this._elementTimelineStylesLookup = _elementTimelineStylesLookup;\n this.duration = 0;\n this._previousKeyframe = {};\n this._currentKeyframe = {};\n this._keyframes = new Map();\n this._styleSummary = {};\n this._pendingStyles = {};\n this._backFill = {};\n this._currentEmptyStepKeyframe = null;\n if (!this._elementTimelineStylesLookup) {\n this._elementTimelineStylesLookup = new Map();\n }\n this._localTimelineStyles = Object.create(this._backFill, {});\n this._globalTimelineStyles = this._elementTimelineStylesLookup.get(element);\n if (!this._globalTimelineStyles) {\n this._globalTimelineStyles = this._localTimelineStyles;\n this._elementTimelineStylesLookup.set(element, this._localTimelineStyles);\n }\n this._loadKeyframe();\n }\n containsAnimation() {\n switch (this._keyframes.size) {\n case 0:\n return false;\n case 1:\n return this.getCurrentStyleProperties().length > 0;\n default:\n return true;\n }\n }\n getCurrentStyleProperties() {\n return Object.keys(this._currentKeyframe);\n }\n get currentTime() {\n return this.startTime + this.duration;\n }\n delayNextStep(delay) {\n // in the event that a style() step is placed right before a stagger()\n // and that style() step is the very first style() value in the animation\n // then we need to make a copy of the keyframe [0, copy, 1] so that the delay\n // properly applies the style() values to work with the stagger...\n const hasPreStyleStep = this._keyframes.size == 1 && Object.keys(this._pendingStyles).length;\n if (this.duration || hasPreStyleStep) {\n this.forwardTime(this.currentTime + delay);\n if (hasPreStyleStep) {\n this.snapshotCurrentStyles();\n }\n }\n else {\n this.startTime += delay;\n }\n }\n fork(element, currentTime) {\n this.applyStylesToKeyframe();\n return new TimelineBuilder(this._driver, element, currentTime || this.currentTime, this._elementTimelineStylesLookup);\n }\n _loadKeyframe() {\n if (this._currentKeyframe) {\n this._previousKeyframe = this._currentKeyframe;\n }\n this._currentKeyframe = this._keyframes.get(this.duration);\n if (!this._currentKeyframe) {\n this._currentKeyframe = Object.create(this._backFill, {});\n this._keyframes.set(this.duration, this._currentKeyframe);\n }\n }\n forwardFrame() {\n this.duration += ONE_FRAME_IN_MILLISECONDS;\n this._loadKeyframe();\n }\n forwardTime(time) {\n this.applyStylesToKeyframe();\n this.duration = time;\n this._loadKeyframe();\n }\n _updateStyle(prop, value) {\n this._localTimelineStyles[prop] = value;\n this._globalTimelineStyles[prop] = value;\n this._styleSummary[prop] = { time: this.currentTime, value };\n }\n allowOnlyTimelineStyles() {\n return this._currentEmptyStepKeyframe !== this._currentKeyframe;\n }\n applyEmptyStep(easing) {\n if (easing) {\n this._previousKeyframe['easing'] = easing;\n }\n // special case for animate(duration):\n // all missing styles are filled with a `*` value then\n // if any destination styles are filled in later on the same\n // keyframe then they will override the overridden styles\n // We use `_globalTimelineStyles` here because there may be\n // styles in previous keyframes that are not present in this timeline\n Object.keys(this._globalTimelineStyles).forEach(prop => {\n this._backFill[prop] = this._globalTimelineStyles[prop] || AUTO_STYLE;\n this._currentKeyframe[prop] = AUTO_STYLE;\n });\n this._currentEmptyStepKeyframe = this._currentKeyframe;\n }\n setStyles(input, easing, errors, options) {\n if (easing) {\n this._previousKeyframe['easing'] = easing;\n }\n const params = (options && options.params) || {};\n const styles = flattenStyles(input, this._globalTimelineStyles);\n Object.keys(styles).forEach(prop => {\n const val = interpolateParams(styles[prop], params, errors);\n this._pendingStyles[prop] = val;\n if (!this._localTimelineStyles.hasOwnProperty(prop)) {\n this._backFill[prop] = this._globalTimelineStyles.hasOwnProperty(prop) ?\n this._globalTimelineStyles[prop] :\n AUTO_STYLE;\n }\n this._updateStyle(prop, val);\n });\n }\n applyStylesToKeyframe() {\n const styles = this._pendingStyles;\n const props = Object.keys(styles);\n if (props.length == 0)\n return;\n this._pendingStyles = {};\n props.forEach(prop => {\n const val = styles[prop];\n this._currentKeyframe[prop] = val;\n });\n Object.keys(this._localTimelineStyles).forEach(prop => {\n if (!this._currentKeyframe.hasOwnProperty(prop)) {\n this._currentKeyframe[prop] = this._localTimelineStyles[prop];\n }\n });\n }\n snapshotCurrentStyles() {\n Object.keys(this._localTimelineStyles).forEach(prop => {\n const val = this._localTimelineStyles[prop];\n this._pendingStyles[prop] = val;\n this._updateStyle(prop, val);\n });\n }\n getFinalKeyframe() {\n return this._keyframes.get(this.duration);\n }\n get properties() {\n const properties = [];\n for (let prop in this._currentKeyframe) {\n properties.push(prop);\n }\n return properties;\n }\n mergeTimelineCollectedStyles(timeline) {\n Object.keys(timeline._styleSummary).forEach(prop => {\n const details0 = this._styleSummary[prop];\n const details1 = timeline._styleSummary[prop];\n if (!details0 || details1.time > details0.time) {\n this._updateStyle(prop, details1.value);\n }\n });\n }\n buildKeyframes() {\n this.applyStylesToKeyframe();\n const preStyleProps = new Set();\n const postStyleProps = new Set();\n const isEmpty = this._keyframes.size === 1 && this.duration === 0;\n let finalKeyframes = [];\n this._keyframes.forEach((keyframe, time) => {\n const finalKeyframe = copyStyles(keyframe, true);\n Object.keys(finalKeyframe).forEach(prop => {\n const value = finalKeyframe[prop];\n if (value == ɵPRE_STYLE) {\n preStyleProps.add(prop);\n }\n else if (value == AUTO_STYLE) {\n postStyleProps.add(prop);\n }\n });\n if (!isEmpty) {\n finalKeyframe['offset'] = time / this.duration;\n }\n finalKeyframes.push(finalKeyframe);\n });\n const preProps = preStyleProps.size ? iteratorToArray(preStyleProps.values()) : [];\n const postProps = postStyleProps.size ? iteratorToArray(postStyleProps.values()) : [];\n // special case for a 0-second animation (which is designed just to place styles onscreen)\n if (isEmpty) {\n const kf0 = finalKeyframes[0];\n const kf1 = copyObj(kf0);\n kf0['offset'] = 0;\n kf1['offset'] = 1;\n finalKeyframes = [kf0, kf1];\n }\n return createTimelineInstruction(this.element, finalKeyframes, preProps, postProps, this.duration, this.startTime, this.easing, false);\n }\n}\nclass SubTimelineBuilder extends TimelineBuilder {\n constructor(driver, element, keyframes, preStyleProps, postStyleProps, timings, _stretchStartingKeyframe = false) {\n super(driver, element, timings.delay);\n this.keyframes = keyframes;\n this.preStyleProps = preStyleProps;\n this.postStyleProps = postStyleProps;\n this._stretchStartingKeyframe = _stretchStartingKeyframe;\n this.timings = { duration: timings.duration, delay: timings.delay, easing: timings.easing };\n }\n containsAnimation() {\n return this.keyframes.length > 1;\n }\n buildKeyframes() {\n let keyframes = this.keyframes;\n let { delay, duration, easing } = this.timings;\n if (this._stretchStartingKeyframe && delay) {\n const newKeyframes = [];\n const totalTime = duration + delay;\n const startingGap = delay / totalTime;\n // the original starting keyframe now starts once the delay is done\n const newFirstKeyframe = copyStyles(keyframes[0], false);\n newFirstKeyframe['offset'] = 0;\n newKeyframes.push(newFirstKeyframe);\n const oldFirstKeyframe = copyStyles(keyframes[0], false);\n oldFirstKeyframe['offset'] = roundOffset(startingGap);\n newKeyframes.push(oldFirstKeyframe);\n /*\n When the keyframe is stretched then it means that the delay before the animation\n starts is gone. Instead the first keyframe is placed at the start of the animation\n and it is then copied to where it starts when the original delay is over. This basically\n means nothing animates during that delay, but the styles are still rendered. For this\n to work the original offset values that exist in the original keyframes must be \"warped\"\n so that they can take the new keyframe + delay into account.\n \n delay=1000, duration=1000, keyframes = 0 .5 1\n \n turns into\n \n delay=0, duration=2000, keyframes = 0 .33 .66 1\n */\n // offsets between 1 ... n -1 are all warped by the keyframe stretch\n const limit = keyframes.length - 1;\n for (let i = 1; i <= limit; i++) {\n let kf = copyStyles(keyframes[i], false);\n const oldOffset = kf['offset'];\n const timeAtKeyframe = delay + oldOffset * duration;\n kf['offset'] = roundOffset(timeAtKeyframe / totalTime);\n newKeyframes.push(kf);\n }\n // the new starting keyframe should be added at the start\n duration = totalTime;\n delay = 0;\n easing = '';\n keyframes = newKeyframes;\n }\n return createTimelineInstruction(this.element, keyframes, this.preStyleProps, this.postStyleProps, duration, delay, easing, true);\n }\n}\nfunction roundOffset(offset, decimalPoints = 3) {\n const mult = Math.pow(10, decimalPoints - 1);\n return Math.round(offset * mult) / mult;\n}\nfunction flattenStyles(input, allStyles) {\n const styles = {};\n let allProperties;\n input.forEach(token => {\n if (token === '*') {\n allProperties = allProperties || Object.keys(allStyles);\n allProperties.forEach(prop => {\n styles[prop] = AUTO_STYLE;\n });\n }\n else {\n copyStyles(token, false, styles);\n }\n });\n return styles;\n}\n\nclass Animation {\n constructor(_driver, input) {\n this._driver = _driver;\n const errors = [];\n const warnings = [];\n const ast = buildAnimationAst(_driver, input, errors, warnings);\n if (errors.length) {\n throw validationFailed(errors);\n }\n if (warnings.length) {\n warnValidation(warnings);\n }\n this._animationAst = ast;\n }\n buildTimelines(element, startingStyles, destinationStyles, options, subInstructions) {\n const start = Array.isArray(startingStyles) ? normalizeStyles(startingStyles) :\n startingStyles;\n const dest = Array.isArray(destinationStyles) ? normalizeStyles(destinationStyles) :\n destinationStyles;\n const errors = [];\n subInstructions = subInstructions || new ElementInstructionMap();\n const result = buildAnimationTimelines(this._driver, element, this._animationAst, ENTER_CLASSNAME, LEAVE_CLASSNAME, start, dest, options, subInstructions, errors);\n if (errors.length) {\n throw buildingFailed(errors);\n }\n return result;\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @publicApi\n */\nclass AnimationStyleNormalizer {\n}\n/**\n * @publicApi\n */\nclass NoopAnimationStyleNormalizer {\n normalizePropertyName(propertyName, errors) {\n return propertyName;\n }\n normalizeStyleValue(userProvidedProperty, normalizedProperty, value, errors) {\n return value;\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass WebAnimationsStyleNormalizer extends AnimationStyleNormalizer {\n normalizePropertyName(propertyName, errors) {\n return dashCaseToCamelCase(propertyName);\n }\n normalizeStyleValue(userProvidedProperty, normalizedProperty, value, errors) {\n let unit = '';\n const strVal = value.toString().trim();\n if (DIMENSIONAL_PROP_MAP[normalizedProperty] && value !== 0 && value !== '0') {\n if (typeof value === 'number') {\n unit = 'px';\n }\n else {\n const valAndSuffixMatch = value.match(/^[+-]?[\\d\\.]+([a-z]*)$/);\n if (valAndSuffixMatch && valAndSuffixMatch[1].length == 0) {\n errors.push(invalidCssUnitValue(userProvidedProperty, value));\n }\n }\n }\n return strVal + unit;\n }\n}\nconst DIMENSIONAL_PROP_MAP = (() => makeBooleanMap('width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective'\n .split(',')))();\nfunction makeBooleanMap(keys) {\n const map = {};\n keys.forEach(key => map[key] = true);\n return map;\n}\n\nfunction createTransitionInstruction(element, triggerName, fromState, toState, isRemovalTransition, fromStyles, toStyles, timelines, queriedElements, preStyleProps, postStyleProps, totalTime, errors) {\n return {\n type: 0 /* TransitionAnimation */,\n element,\n triggerName,\n isRemovalTransition,\n fromState,\n fromStyles,\n toState,\n toStyles,\n timelines,\n queriedElements,\n preStyleProps,\n postStyleProps,\n totalTime,\n errors\n };\n}\n\nconst EMPTY_OBJECT = {};\nclass AnimationTransitionFactory {\n constructor(_triggerName, ast, _stateStyles) {\n this._triggerName = _triggerName;\n this.ast = ast;\n this._stateStyles = _stateStyles;\n }\n match(currentState, nextState, element, params) {\n return oneOrMoreTransitionsMatch(this.ast.matchers, currentState, nextState, element, params);\n }\n buildStyles(stateName, params, errors) {\n const backupStateStyler = this._stateStyles['*'];\n const stateStyler = this._stateStyles[stateName];\n const backupStyles = backupStateStyler ? backupStateStyler.buildStyles(params, errors) : {};\n return stateStyler ? stateStyler.buildStyles(params, errors) : backupStyles;\n }\n build(driver, element, currentState, nextState, enterClassName, leaveClassName, currentOptions, nextOptions, subInstructions, skipAstBuild) {\n const errors = [];\n const transitionAnimationParams = this.ast.options && this.ast.options.params || EMPTY_OBJECT;\n const currentAnimationParams = currentOptions && currentOptions.params || EMPTY_OBJECT;\n const currentStateStyles = this.buildStyles(currentState, currentAnimationParams, errors);\n const nextAnimationParams = nextOptions && nextOptions.params || EMPTY_OBJECT;\n const nextStateStyles = this.buildStyles(nextState, nextAnimationParams, errors);\n const queriedElements = new Set();\n const preStyleMap = new Map();\n const postStyleMap = new Map();\n const isRemoval = nextState === 'void';\n const animationOptions = { params: Object.assign(Object.assign({}, transitionAnimationParams), nextAnimationParams) };\n const timelines = skipAstBuild ?\n [] :\n buildAnimationTimelines(driver, element, this.ast.animation, enterClassName, leaveClassName, currentStateStyles, nextStateStyles, animationOptions, subInstructions, errors);\n let totalTime = 0;\n timelines.forEach(tl => {\n totalTime = Math.max(tl.duration + tl.delay, totalTime);\n });\n if (errors.length) {\n return createTransitionInstruction(element, this._triggerName, currentState, nextState, isRemoval, currentStateStyles, nextStateStyles, [], [], preStyleMap, postStyleMap, totalTime, errors);\n }\n timelines.forEach(tl => {\n const elm = tl.element;\n const preProps = getOrSetAsInMap(preStyleMap, elm, {});\n tl.preStyleProps.forEach(prop => preProps[prop] = true);\n const postProps = getOrSetAsInMap(postStyleMap, elm, {});\n tl.postStyleProps.forEach(prop => postProps[prop] = true);\n if (elm !== element) {\n queriedElements.add(elm);\n }\n });\n const queriedElementsList = iteratorToArray(queriedElements.values());\n return createTransitionInstruction(element, this._triggerName, currentState, nextState, isRemoval, currentStateStyles, nextStateStyles, timelines, queriedElementsList, preStyleMap, postStyleMap, totalTime);\n }\n}\nfunction oneOrMoreTransitionsMatch(matchFns, currentState, nextState, element, params) {\n return matchFns.some(fn => fn(currentState, nextState, element, params));\n}\nclass AnimationStateStyles {\n constructor(styles, defaultParams, normalizer) {\n this.styles = styles;\n this.defaultParams = defaultParams;\n this.normalizer = normalizer;\n }\n buildStyles(params, errors) {\n const finalStyles = {};\n const combinedParams = copyObj(this.defaultParams);\n Object.keys(params).forEach(key => {\n const value = params[key];\n if (value != null) {\n combinedParams[key] = value;\n }\n });\n this.styles.styles.forEach(value => {\n if (typeof value !== 'string') {\n const styleObj = value;\n Object.keys(styleObj).forEach(prop => {\n let val = styleObj[prop];\n if (val.length > 1) {\n val = interpolateParams(val, combinedParams, errors);\n }\n const normalizedProp = this.normalizer.normalizePropertyName(prop, errors);\n val = this.normalizer.normalizeStyleValue(prop, normalizedProp, val, errors);\n finalStyles[normalizedProp] = val;\n });\n }\n });\n return finalStyles;\n }\n}\n\nfunction buildTrigger(name, ast, normalizer) {\n return new AnimationTrigger(name, ast, normalizer);\n}\nclass AnimationTrigger {\n constructor(name, ast, _normalizer) {\n this.name = name;\n this.ast = ast;\n this._normalizer = _normalizer;\n this.transitionFactories = [];\n this.states = {};\n ast.states.forEach(ast => {\n const defaultParams = (ast.options && ast.options.params) || {};\n this.states[ast.name] = new AnimationStateStyles(ast.style, defaultParams, _normalizer);\n });\n balanceProperties(this.states, 'true', '1');\n balanceProperties(this.states, 'false', '0');\n ast.transitions.forEach(ast => {\n this.transitionFactories.push(new AnimationTransitionFactory(name, ast, this.states));\n });\n this.fallbackTransition = createFallbackTransition(name, this.states, this._normalizer);\n }\n get containsQueries() {\n return this.ast.queryCount > 0;\n }\n matchTransition(currentState, nextState, element, params) {\n const entry = this.transitionFactories.find(f => f.match(currentState, nextState, element, params));\n return entry || null;\n }\n matchStyles(currentState, params, errors) {\n return this.fallbackTransition.buildStyles(currentState, params, errors);\n }\n}\nfunction createFallbackTransition(triggerName, states, normalizer) {\n const matchers = [(fromState, toState) => true];\n const animation = { type: 2 /* Sequence */, steps: [], options: null };\n const transition = {\n type: 1 /* Transition */,\n animation,\n matchers,\n options: null,\n queryCount: 0,\n depCount: 0\n };\n return new AnimationTransitionFactory(triggerName, transition, states);\n}\nfunction balanceProperties(obj, key1, key2) {\n if (obj.hasOwnProperty(key1)) {\n if (!obj.hasOwnProperty(key2)) {\n obj[key2] = obj[key1];\n }\n }\n else if (obj.hasOwnProperty(key2)) {\n obj[key1] = obj[key2];\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst EMPTY_INSTRUCTION_MAP = new ElementInstructionMap();\nclass TimelineAnimationEngine {\n constructor(bodyNode, _driver, _normalizer) {\n this.bodyNode = bodyNode;\n this._driver = _driver;\n this._normalizer = _normalizer;\n this._animations = {};\n this._playersById = {};\n this.players = [];\n }\n register(id, metadata) {\n const errors = [];\n const warnings = [];\n const ast = buildAnimationAst(this._driver, metadata, errors, warnings);\n if (errors.length) {\n throw registerFailed(errors);\n }\n else {\n if (warnings.length) {\n warnRegister(warnings);\n }\n this._animations[id] = ast;\n }\n }\n _buildPlayer(i, preStyles, postStyles) {\n const element = i.element;\n const keyframes = normalizeKeyframes(this._driver, this._normalizer, element, i.keyframes, preStyles, postStyles);\n return this._driver.animate(element, keyframes, i.duration, i.delay, i.easing, [], true);\n }\n create(id, element, options = {}) {\n const errors = [];\n const ast = this._animations[id];\n let instructions;\n const autoStylesMap = new Map();\n if (ast) {\n instructions = buildAnimationTimelines(this._driver, element, ast, ENTER_CLASSNAME, LEAVE_CLASSNAME, {}, {}, options, EMPTY_INSTRUCTION_MAP, errors);\n instructions.forEach(inst => {\n const styles = getOrSetAsInMap(autoStylesMap, inst.element, {});\n inst.postStyleProps.forEach(prop => styles[prop] = null);\n });\n }\n else {\n errors.push(missingOrDestroyedAnimation());\n instructions = [];\n }\n if (errors.length) {\n throw createAnimationFailed(errors);\n }\n autoStylesMap.forEach((styles, element) => {\n Object.keys(styles).forEach(prop => {\n styles[prop] = this._driver.computeStyle(element, prop, AUTO_STYLE);\n });\n });\n const players = instructions.map(i => {\n const styles = autoStylesMap.get(i.element);\n return this._buildPlayer(i, {}, styles);\n });\n const player = optimizeGroupPlayer(players);\n this._playersById[id] = player;\n player.onDestroy(() => this.destroy(id));\n this.players.push(player);\n return player;\n }\n destroy(id) {\n const player = this._getPlayer(id);\n player.destroy();\n delete this._playersById[id];\n const index = this.players.indexOf(player);\n if (index >= 0) {\n this.players.splice(index, 1);\n }\n }\n _getPlayer(id) {\n const player = this._playersById[id];\n if (!player) {\n throw missingPlayer(id);\n }\n return player;\n }\n listen(id, element, eventName, callback) {\n // triggerName, fromState, toState are all ignored for timeline animations\n const baseEvent = makeAnimationEvent(element, '', '', '');\n listenOnPlayer(this._getPlayer(id), eventName, baseEvent, callback);\n return () => { };\n }\n command(id, element, command, args) {\n if (command == 'register') {\n this.register(id, args[0]);\n return;\n }\n if (command == 'create') {\n const options = (args[0] || {});\n this.create(id, element, options);\n return;\n }\n const player = this._getPlayer(id);\n switch (command) {\n case 'play':\n player.play();\n break;\n case 'pause':\n player.pause();\n break;\n case 'reset':\n player.reset();\n break;\n case 'restart':\n player.restart();\n break;\n case 'finish':\n player.finish();\n break;\n case 'init':\n player.init();\n break;\n case 'setPosition':\n player.setPosition(parseFloat(args[0]));\n break;\n case 'destroy':\n this.destroy(id);\n break;\n }\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst QUEUED_CLASSNAME = 'ng-animate-queued';\nconst QUEUED_SELECTOR = '.ng-animate-queued';\nconst DISABLED_CLASSNAME = 'ng-animate-disabled';\nconst DISABLED_SELECTOR = '.ng-animate-disabled';\nconst STAR_CLASSNAME = 'ng-star-inserted';\nconst STAR_SELECTOR = '.ng-star-inserted';\nconst EMPTY_PLAYER_ARRAY = [];\nconst NULL_REMOVAL_STATE = {\n namespaceId: '',\n setForRemoval: false,\n setForMove: false,\n hasAnimation: false,\n removedBeforeQueried: false\n};\nconst NULL_REMOVED_QUERIED_STATE = {\n namespaceId: '',\n setForMove: false,\n setForRemoval: false,\n hasAnimation: false,\n removedBeforeQueried: true\n};\nconst REMOVAL_FLAG = '__ng_removed';\nclass StateValue {\n constructor(input, namespaceId = '') {\n this.namespaceId = namespaceId;\n const isObj = input && input.hasOwnProperty('value');\n const value = isObj ? input['value'] : input;\n this.value = normalizeTriggerValue(value);\n if (isObj) {\n const options = copyObj(input);\n delete options['value'];\n this.options = options;\n }\n else {\n this.options = {};\n }\n if (!this.options.params) {\n this.options.params = {};\n }\n }\n get params() {\n return this.options.params;\n }\n absorbOptions(options) {\n const newParams = options.params;\n if (newParams) {\n const oldParams = this.options.params;\n Object.keys(newParams).forEach(prop => {\n if (oldParams[prop] == null) {\n oldParams[prop] = newParams[prop];\n }\n });\n }\n }\n}\nconst VOID_VALUE = 'void';\nconst DEFAULT_STATE_VALUE = new StateValue(VOID_VALUE);\nclass AnimationTransitionNamespace {\n constructor(id, hostElement, _engine) {\n this.id = id;\n this.hostElement = hostElement;\n this._engine = _engine;\n this.players = [];\n this._triggers = {};\n this._queue = [];\n this._elementListeners = new Map();\n this._hostClassName = 'ng-tns-' + id;\n addClass(hostElement, this._hostClassName);\n }\n listen(element, name, phase, callback) {\n if (!this._triggers.hasOwnProperty(name)) {\n throw missingTrigger(phase, name);\n }\n if (phase == null || phase.length == 0) {\n throw missingEvent(name);\n }\n if (!isTriggerEventValid(phase)) {\n throw unsupportedTriggerEvent(phase, name);\n }\n const listeners = getOrSetAsInMap(this._elementListeners, element, []);\n const data = { name, phase, callback };\n listeners.push(data);\n const triggersWithStates = getOrSetAsInMap(this._engine.statesByElement, element, {});\n if (!triggersWithStates.hasOwnProperty(name)) {\n addClass(element, NG_TRIGGER_CLASSNAME);\n addClass(element, NG_TRIGGER_CLASSNAME + '-' + name);\n triggersWithStates[name] = DEFAULT_STATE_VALUE;\n }\n return () => {\n // the event listener is removed AFTER the flush has occurred such\n // that leave animations callbacks can fire (otherwise if the node\n // is removed in between then the listeners would be deregistered)\n this._engine.afterFlush(() => {\n const index = listeners.indexOf(data);\n if (index >= 0) {\n listeners.splice(index, 1);\n }\n if (!this._triggers[name]) {\n delete triggersWithStates[name];\n }\n });\n };\n }\n register(name, ast) {\n if (this._triggers[name]) {\n // throw\n return false;\n }\n else {\n this._triggers[name] = ast;\n return true;\n }\n }\n _getTrigger(name) {\n const trigger = this._triggers[name];\n if (!trigger) {\n throw unregisteredTrigger(name);\n }\n return trigger;\n }\n trigger(element, triggerName, value, defaultToFallback = true) {\n const trigger = this._getTrigger(triggerName);\n const player = new TransitionAnimationPlayer(this.id, triggerName, element);\n let triggersWithStates = this._engine.statesByElement.get(element);\n if (!triggersWithStates) {\n addClass(element, NG_TRIGGER_CLASSNAME);\n addClass(element, NG_TRIGGER_CLASSNAME + '-' + triggerName);\n this._engine.statesByElement.set(element, triggersWithStates = {});\n }\n let fromState = triggersWithStates[triggerName];\n const toState = new StateValue(value, this.id);\n const isObj = value && value.hasOwnProperty('value');\n if (!isObj && fromState) {\n toState.absorbOptions(fromState.options);\n }\n triggersWithStates[triggerName] = toState;\n if (!fromState) {\n fromState = DEFAULT_STATE_VALUE;\n }\n const isRemoval = toState.value === VOID_VALUE;\n // normally this isn't reached by here, however, if an object expression\n // is passed in then it may be a new object each time. Comparing the value\n // is important since that will stay the same despite there being a new object.\n // The removal arc here is special cased because the same element is triggered\n // twice in the event that it contains animations on the outer/inner portions\n // of the host container\n if (!isRemoval && fromState.value === toState.value) {\n // this means that despite the value not changing, some inner params\n // have changed which means that the animation final styles need to be applied\n if (!objEquals(fromState.params, toState.params)) {\n const errors = [];\n const fromStyles = trigger.matchStyles(fromState.value, fromState.params, errors);\n const toStyles = trigger.matchStyles(toState.value, toState.params, errors);\n if (errors.length) {\n this._engine.reportError(errors);\n }\n else {\n this._engine.afterFlush(() => {\n eraseStyles(element, fromStyles);\n setStyles(element, toStyles);\n });\n }\n }\n return;\n }\n const playersOnElement = getOrSetAsInMap(this._engine.playersByElement, element, []);\n playersOnElement.forEach(player => {\n // only remove the player if it is queued on the EXACT same trigger/namespace\n // we only also deal with queued players here because if the animation has\n // started then we want to keep the player alive until the flush happens\n // (which is where the previousPlayers are passed into the new player)\n if (player.namespaceId == this.id && player.triggerName == triggerName && player.queued) {\n player.destroy();\n }\n });\n let transition = trigger.matchTransition(fromState.value, toState.value, element, toState.params);\n let isFallbackTransition = false;\n if (!transition) {\n if (!defaultToFallback)\n return;\n transition = trigger.fallbackTransition;\n isFallbackTransition = true;\n }\n this._engine.totalQueuedPlayers++;\n this._queue.push({ element, triggerName, transition, fromState, toState, player, isFallbackTransition });\n if (!isFallbackTransition) {\n addClass(element, QUEUED_CLASSNAME);\n player.onStart(() => {\n removeClass(element, QUEUED_CLASSNAME);\n });\n }\n player.onDone(() => {\n let index = this.players.indexOf(player);\n if (index >= 0) {\n this.players.splice(index, 1);\n }\n const players = this._engine.playersByElement.get(element);\n if (players) {\n let index = players.indexOf(player);\n if (index >= 0) {\n players.splice(index, 1);\n }\n }\n });\n this.players.push(player);\n playersOnElement.push(player);\n return player;\n }\n deregister(name) {\n delete this._triggers[name];\n this._engine.statesByElement.forEach((stateMap, element) => {\n delete stateMap[name];\n });\n this._elementListeners.forEach((listeners, element) => {\n this._elementListeners.set(element, listeners.filter(entry => {\n return entry.name != name;\n }));\n });\n }\n clearElementCache(element) {\n this._engine.statesByElement.delete(element);\n this._elementListeners.delete(element);\n const elementPlayers = this._engine.playersByElement.get(element);\n if (elementPlayers) {\n elementPlayers.forEach(player => player.destroy());\n this._engine.playersByElement.delete(element);\n }\n }\n _signalRemovalForInnerTriggers(rootElement, context) {\n const elements = this._engine.driver.query(rootElement, NG_TRIGGER_SELECTOR, true);\n // emulate a leave animation for all inner nodes within this node.\n // If there are no animations found for any of the nodes then clear the cache\n // for the element.\n elements.forEach(elm => {\n // this means that an inner remove() operation has already kicked off\n // the animation on this element...\n if (elm[REMOVAL_FLAG])\n return;\n const namespaces = this._engine.fetchNamespacesByElement(elm);\n if (namespaces.size) {\n namespaces.forEach(ns => ns.triggerLeaveAnimation(elm, context, false, true));\n }\n else {\n this.clearElementCache(elm);\n }\n });\n // If the child elements were removed along with the parent, their animations might not\n // have completed. Clear all the elements from the cache so we don't end up with a memory leak.\n this._engine.afterFlushAnimationsDone(() => elements.forEach(elm => this.clearElementCache(elm)));\n }\n triggerLeaveAnimation(element, context, destroyAfterComplete, defaultToFallback) {\n const triggerStates = this._engine.statesByElement.get(element);\n const previousTriggersValues = new Map();\n if (triggerStates) {\n const players = [];\n Object.keys(triggerStates).forEach(triggerName => {\n previousTriggersValues.set(triggerName, triggerStates[triggerName].value);\n // this check is here in the event that an element is removed\n // twice (both on the host level and the component level)\n if (this._triggers[triggerName]) {\n const player = this.trigger(element, triggerName, VOID_VALUE, defaultToFallback);\n if (player) {\n players.push(player);\n }\n }\n });\n if (players.length) {\n this._engine.markElementAsRemoved(this.id, element, true, context, previousTriggersValues);\n if (destroyAfterComplete) {\n optimizeGroupPlayer(players).onDone(() => this._engine.processLeaveNode(element));\n }\n return true;\n }\n }\n return false;\n }\n prepareLeaveAnimationListeners(element) {\n const listeners = this._elementListeners.get(element);\n const elementStates = this._engine.statesByElement.get(element);\n // if this statement fails then it means that the element was picked up\n // by an earlier flush (or there are no listeners at all to track the leave).\n if (listeners && elementStates) {\n const visitedTriggers = new Set();\n listeners.forEach(listener => {\n const triggerName = listener.name;\n if (visitedTriggers.has(triggerName))\n return;\n visitedTriggers.add(triggerName);\n const trigger = this._triggers[triggerName];\n const transition = trigger.fallbackTransition;\n const fromState = elementStates[triggerName] || DEFAULT_STATE_VALUE;\n const toState = new StateValue(VOID_VALUE);\n const player = new TransitionAnimationPlayer(this.id, triggerName, element);\n this._engine.totalQueuedPlayers++;\n this._queue.push({\n element,\n triggerName,\n transition,\n fromState,\n toState,\n player,\n isFallbackTransition: true\n });\n });\n }\n }\n removeNode(element, context) {\n const engine = this._engine;\n if (element.childElementCount) {\n this._signalRemovalForInnerTriggers(element, context);\n }\n // this means that a * => VOID animation was detected and kicked off\n if (this.triggerLeaveAnimation(element, context, true))\n return;\n // find the player that is animating and make sure that the\n // removal is delayed until that player has completed\n let containsPotentialParentTransition = false;\n if (engine.totalAnimations) {\n const currentPlayers = engine.players.length ? engine.playersByQueriedElement.get(element) : [];\n // when this `if statement` does not continue forward it means that\n // a previous animation query has selected the current element and\n // is animating it. In this situation want to continue forwards and\n // allow the element to be queued up for animation later.\n if (currentPlayers && currentPlayers.length) {\n containsPotentialParentTransition = true;\n }\n else {\n let parent = element;\n while (parent = parent.parentNode) {\n const triggers = engine.statesByElement.get(parent);\n if (triggers) {\n containsPotentialParentTransition = true;\n break;\n }\n }\n }\n }\n // at this stage we know that the element will either get removed\n // during flush or will be picked up by a parent query. Either way\n // we need to fire the listeners for this element when it DOES get\n // removed (once the query parent animation is done or after flush)\n this.prepareLeaveAnimationListeners(element);\n // whether or not a parent has an animation we need to delay the deferral of the leave\n // operation until we have more information (which we do after flush() has been called)\n if (containsPotentialParentTransition) {\n engine.markElementAsRemoved(this.id, element, false, context);\n }\n else {\n const removalFlag = element[REMOVAL_FLAG];\n if (!removalFlag || removalFlag === NULL_REMOVAL_STATE) {\n // we do this after the flush has occurred such\n // that the callbacks can be fired\n engine.afterFlush(() => this.clearElementCache(element));\n engine.destroyInnerAnimations(element);\n engine._onRemovalComplete(element, context);\n }\n }\n }\n insertNode(element, parent) {\n addClass(element, this._hostClassName);\n }\n drainQueuedTransitions(microtaskId) {\n const instructions = [];\n this._queue.forEach(entry => {\n const player = entry.player;\n if (player.destroyed)\n return;\n const element = entry.element;\n const listeners = this._elementListeners.get(element);\n if (listeners) {\n listeners.forEach((listener) => {\n if (listener.name == entry.triggerName) {\n const baseEvent = makeAnimationEvent(element, entry.triggerName, entry.fromState.value, entry.toState.value);\n baseEvent['_data'] = microtaskId;\n listenOnPlayer(entry.player, listener.phase, baseEvent, listener.callback);\n }\n });\n }\n if (player.markedForDestroy) {\n this._engine.afterFlush(() => {\n // now we can destroy the element properly since the event listeners have\n // been bound to the player\n player.destroy();\n });\n }\n else {\n instructions.push(entry);\n }\n });\n this._queue = [];\n return instructions.sort((a, b) => {\n // if depCount == 0 them move to front\n // otherwise if a contains b then move back\n const d0 = a.transition.ast.depCount;\n const d1 = b.transition.ast.depCount;\n if (d0 == 0 || d1 == 0) {\n return d0 - d1;\n }\n return this._engine.driver.containsElement(a.element, b.element) ? 1 : -1;\n });\n }\n destroy(context) {\n this.players.forEach(p => p.destroy());\n this._signalRemovalForInnerTriggers(this.hostElement, context);\n }\n elementContainsData(element) {\n let containsData = false;\n if (this._elementListeners.has(element))\n containsData = true;\n containsData =\n (this._queue.find(entry => entry.element === element) ? true : false) || containsData;\n return containsData;\n }\n}\nclass TransitionAnimationEngine {\n constructor(bodyNode, driver, _normalizer) {\n this.bodyNode = bodyNode;\n this.driver = driver;\n this._normalizer = _normalizer;\n this.players = [];\n this.newHostElements = new Map();\n this.playersByElement = new Map();\n this.playersByQueriedElement = new Map();\n this.statesByElement = new Map();\n this.disabledNodes = new Set();\n this.totalAnimations = 0;\n this.totalQueuedPlayers = 0;\n this._namespaceLookup = {};\n this._namespaceList = [];\n this._flushFns = [];\n this._whenQuietFns = [];\n this.namespacesByHostElement = new Map();\n this.collectedEnterElements = [];\n this.collectedLeaveElements = [];\n // this method is designed to be overridden by the code that uses this engine\n this.onRemovalComplete = (element, context) => { };\n }\n /** @internal */\n _onRemovalComplete(element, context) {\n this.onRemovalComplete(element, context);\n }\n get queuedPlayers() {\n const players = [];\n this._namespaceList.forEach(ns => {\n ns.players.forEach(player => {\n if (player.queued) {\n players.push(player);\n }\n });\n });\n return players;\n }\n createNamespace(namespaceId, hostElement) {\n const ns = new AnimationTransitionNamespace(namespaceId, hostElement, this);\n if (this.bodyNode && this.driver.containsElement(this.bodyNode, hostElement)) {\n this._balanceNamespaceList(ns, hostElement);\n }\n else {\n // defer this later until flush during when the host element has\n // been inserted so that we know exactly where to place it in\n // the namespace list\n this.newHostElements.set(hostElement, ns);\n // given that this host element is a part of the animation code, it\n // may or may not be inserted by a parent node that is of an\n // animation renderer type. If this happens then we can still have\n // access to this item when we query for :enter nodes. If the parent\n // is a renderer then the set data-structure will normalize the entry\n this.collectEnterElement(hostElement);\n }\n return this._namespaceLookup[namespaceId] = ns;\n }\n _balanceNamespaceList(ns, hostElement) {\n const namespaceList = this._namespaceList;\n const namespacesByHostElement = this.namespacesByHostElement;\n const limit = namespaceList.length - 1;\n if (limit >= 0) {\n let found = false;\n if (this.driver.getParentElement !== undefined) {\n // Fast path for when the driver implements `getParentElement`, which allows us to find the\n // closest ancestor with an existing namespace that we can then insert `ns` after, without\n // having to inspect all existing namespaces.\n let ancestor = this.driver.getParentElement(hostElement);\n while (ancestor) {\n const ancestorNs = namespacesByHostElement.get(ancestor);\n if (ancestorNs) {\n // An animation namespace has been registered for this ancestor, so we insert `ns`\n // right after it to establish top-down ordering of animation namespaces.\n const index = namespaceList.indexOf(ancestorNs);\n namespaceList.splice(index + 1, 0, ns);\n found = true;\n break;\n }\n ancestor = this.driver.getParentElement(ancestor);\n }\n }\n else {\n // Slow path for backwards compatibility if the driver does not implement\n // `getParentElement`, to be removed once `getParentElement` is a required method.\n for (let i = limit; i >= 0; i--) {\n const nextNamespace = namespaceList[i];\n if (this.driver.containsElement(nextNamespace.hostElement, hostElement)) {\n namespaceList.splice(i + 1, 0, ns);\n found = true;\n break;\n }\n }\n }\n if (!found) {\n // No namespace exists that is an ancestor of `ns`, so `ns` is inserted at the front to\n // ensure that any existing descendants are ordered after `ns`, retaining the desired\n // top-down ordering.\n namespaceList.unshift(ns);\n }\n }\n else {\n namespaceList.push(ns);\n }\n namespacesByHostElement.set(hostElement, ns);\n return ns;\n }\n register(namespaceId, hostElement) {\n let ns = this._namespaceLookup[namespaceId];\n if (!ns) {\n ns = this.createNamespace(namespaceId, hostElement);\n }\n return ns;\n }\n registerTrigger(namespaceId, name, trigger) {\n let ns = this._namespaceLookup[namespaceId];\n if (ns && ns.register(name, trigger)) {\n this.totalAnimations++;\n }\n }\n destroy(namespaceId, context) {\n if (!namespaceId)\n return;\n const ns = this._fetchNamespace(namespaceId);\n this.afterFlush(() => {\n this.namespacesByHostElement.delete(ns.hostElement);\n delete this._namespaceLookup[namespaceId];\n const index = this._namespaceList.indexOf(ns);\n if (index >= 0) {\n this._namespaceList.splice(index, 1);\n }\n });\n this.afterFlushAnimationsDone(() => ns.destroy(context));\n }\n _fetchNamespace(id) {\n return this._namespaceLookup[id];\n }\n fetchNamespacesByElement(element) {\n // normally there should only be one namespace per element, however\n // if @triggers are placed on both the component element and then\n // its host element (within the component code) then there will be\n // two namespaces returned. We use a set here to simply deduplicate\n // the namespaces in case (for the reason described above) there are multiple triggers\n const namespaces = new Set();\n const elementStates = this.statesByElement.get(element);\n if (elementStates) {\n const keys = Object.keys(elementStates);\n for (let i = 0; i < keys.length; i++) {\n const nsId = elementStates[keys[i]].namespaceId;\n if (nsId) {\n const ns = this._fetchNamespace(nsId);\n if (ns) {\n namespaces.add(ns);\n }\n }\n }\n }\n return namespaces;\n }\n trigger(namespaceId, element, name, value) {\n if (isElementNode(element)) {\n const ns = this._fetchNamespace(namespaceId);\n if (ns) {\n ns.trigger(element, name, value);\n return true;\n }\n }\n return false;\n }\n insertNode(namespaceId, element, parent, insertBefore) {\n if (!isElementNode(element))\n return;\n // special case for when an element is removed and reinserted (move operation)\n // when this occurs we do not want to use the element for deletion later\n const details = element[REMOVAL_FLAG];\n if (details && details.setForRemoval) {\n details.setForRemoval = false;\n details.setForMove = true;\n const index = this.collectedLeaveElements.indexOf(element);\n if (index >= 0) {\n this.collectedLeaveElements.splice(index, 1);\n }\n }\n // in the event that the namespaceId is blank then the caller\n // code does not contain any animation code in it, but it is\n // just being called so that the node is marked as being inserted\n if (namespaceId) {\n const ns = this._fetchNamespace(namespaceId);\n // This if-statement is a workaround for router issue #21947.\n // The router sometimes hits a race condition where while a route\n // is being instantiated a new navigation arrives, triggering leave\n // animation of DOM that has not been fully initialized, until this\n // is resolved, we need to handle the scenario when DOM is not in a\n // consistent state during the animation.\n if (ns) {\n ns.insertNode(element, parent);\n }\n }\n // only *directives and host elements are inserted before\n if (insertBefore) {\n this.collectEnterElement(element);\n }\n }\n collectEnterElement(element) {\n this.collectedEnterElements.push(element);\n }\n markElementAsDisabled(element, value) {\n if (value) {\n if (!this.disabledNodes.has(element)) {\n this.disabledNodes.add(element);\n addClass(element, DISABLED_CLASSNAME);\n }\n }\n else if (this.disabledNodes.has(element)) {\n this.disabledNodes.delete(element);\n removeClass(element, DISABLED_CLASSNAME);\n }\n }\n removeNode(namespaceId, element, isHostElement, context) {\n if (isElementNode(element)) {\n const ns = namespaceId ? this._fetchNamespace(namespaceId) : null;\n if (ns) {\n ns.removeNode(element, context);\n }\n else {\n this.markElementAsRemoved(namespaceId, element, false, context);\n }\n if (isHostElement) {\n const hostNS = this.namespacesByHostElement.get(element);\n if (hostNS && hostNS.id !== namespaceId) {\n hostNS.removeNode(element, context);\n }\n }\n }\n else {\n this._onRemovalComplete(element, context);\n }\n }\n markElementAsRemoved(namespaceId, element, hasAnimation, context, previousTriggersValues) {\n this.collectedLeaveElements.push(element);\n element[REMOVAL_FLAG] = {\n namespaceId,\n setForRemoval: context,\n hasAnimation,\n removedBeforeQueried: false,\n previousTriggersValues\n };\n }\n listen(namespaceId, element, name, phase, callback) {\n if (isElementNode(element)) {\n return this._fetchNamespace(namespaceId).listen(element, name, phase, callback);\n }\n return () => { };\n }\n _buildInstruction(entry, subTimelines, enterClassName, leaveClassName, skipBuildAst) {\n return entry.transition.build(this.driver, entry.element, entry.fromState.value, entry.toState.value, enterClassName, leaveClassName, entry.fromState.options, entry.toState.options, subTimelines, skipBuildAst);\n }\n destroyInnerAnimations(containerElement) {\n let elements = this.driver.query(containerElement, NG_TRIGGER_SELECTOR, true);\n elements.forEach(element => this.destroyActiveAnimationsForElement(element));\n if (this.playersByQueriedElement.size == 0)\n return;\n elements = this.driver.query(containerElement, NG_ANIMATING_SELECTOR, true);\n elements.forEach(element => this.finishActiveQueriedAnimationOnElement(element));\n }\n destroyActiveAnimationsForElement(element) {\n const players = this.playersByElement.get(element);\n if (players) {\n players.forEach(player => {\n // special case for when an element is set for destruction, but hasn't started.\n // in this situation we want to delay the destruction until the flush occurs\n // so that any event listeners attached to the player are triggered.\n if (player.queued) {\n player.markedForDestroy = true;\n }\n else {\n player.destroy();\n }\n });\n }\n }\n finishActiveQueriedAnimationOnElement(element) {\n const players = this.playersByQueriedElement.get(element);\n if (players) {\n players.forEach(player => player.finish());\n }\n }\n whenRenderingDone() {\n return new Promise(resolve => {\n if (this.players.length) {\n return optimizeGroupPlayer(this.players).onDone(() => resolve());\n }\n else {\n resolve();\n }\n });\n }\n processLeaveNode(element) {\n var _a;\n const details = element[REMOVAL_FLAG];\n if (details && details.setForRemoval) {\n // this will prevent it from removing it twice\n element[REMOVAL_FLAG] = NULL_REMOVAL_STATE;\n if (details.namespaceId) {\n this.destroyInnerAnimations(element);\n const ns = this._fetchNamespace(details.namespaceId);\n if (ns) {\n ns.clearElementCache(element);\n }\n }\n this._onRemovalComplete(element, details.setForRemoval);\n }\n if ((_a = element.classList) === null || _a === void 0 ? void 0 : _a.contains(DISABLED_CLASSNAME)) {\n this.markElementAsDisabled(element, false);\n }\n this.driver.query(element, DISABLED_SELECTOR, true).forEach(node => {\n this.markElementAsDisabled(node, false);\n });\n }\n flush(microtaskId = -1) {\n let players = [];\n if (this.newHostElements.size) {\n this.newHostElements.forEach((ns, element) => this._balanceNamespaceList(ns, element));\n this.newHostElements.clear();\n }\n if (this.totalAnimations && this.collectedEnterElements.length) {\n for (let i = 0; i < this.collectedEnterElements.length; i++) {\n const elm = this.collectedEnterElements[i];\n addClass(elm, STAR_CLASSNAME);\n }\n }\n if (this._namespaceList.length &&\n (this.totalQueuedPlayers || this.collectedLeaveElements.length)) {\n const cleanupFns = [];\n try {\n players = this._flushAnimations(cleanupFns, microtaskId);\n }\n finally {\n for (let i = 0; i < cleanupFns.length; i++) {\n cleanupFns[i]();\n }\n }\n }\n else {\n for (let i = 0; i < this.collectedLeaveElements.length; i++) {\n const element = this.collectedLeaveElements[i];\n this.processLeaveNode(element);\n }\n }\n this.totalQueuedPlayers = 0;\n this.collectedEnterElements.length = 0;\n this.collectedLeaveElements.length = 0;\n this._flushFns.forEach(fn => fn());\n this._flushFns = [];\n if (this._whenQuietFns.length) {\n // we move these over to a variable so that\n // if any new callbacks are registered in another\n // flush they do not populate the existing set\n const quietFns = this._whenQuietFns;\n this._whenQuietFns = [];\n if (players.length) {\n optimizeGroupPlayer(players).onDone(() => {\n quietFns.forEach(fn => fn());\n });\n }\n else {\n quietFns.forEach(fn => fn());\n }\n }\n }\n reportError(errors) {\n throw triggerTransitionsFailed(errors);\n }\n _flushAnimations(cleanupFns, microtaskId) {\n const subTimelines = new ElementInstructionMap();\n const skippedPlayers = [];\n const skippedPlayersMap = new Map();\n const queuedInstructions = [];\n const queriedElements = new Map();\n const allPreStyleElements = new Map();\n const allPostStyleElements = new Map();\n const disabledElementsSet = new Set();\n this.disabledNodes.forEach(node => {\n disabledElementsSet.add(node);\n const nodesThatAreDisabled = this.driver.query(node, QUEUED_SELECTOR, true);\n for (let i = 0; i < nodesThatAreDisabled.length; i++) {\n disabledElementsSet.add(nodesThatAreDisabled[i]);\n }\n });\n const bodyNode = this.bodyNode;\n const allTriggerElements = Array.from(this.statesByElement.keys());\n const enterNodeMap = buildRootMap(allTriggerElements, this.collectedEnterElements);\n // this must occur before the instructions are built below such that\n // the :enter queries match the elements (since the timeline queries\n // are fired during instruction building).\n const enterNodeMapIds = new Map();\n let i = 0;\n enterNodeMap.forEach((nodes, root) => {\n const className = ENTER_CLASSNAME + i++;\n enterNodeMapIds.set(root, className);\n nodes.forEach(node => addClass(node, className));\n });\n const allLeaveNodes = [];\n const mergedLeaveNodes = new Set();\n const leaveNodesWithoutAnimations = new Set();\n for (let i = 0; i < this.collectedLeaveElements.length; i++) {\n const element = this.collectedLeaveElements[i];\n const details = element[REMOVAL_FLAG];\n if (details && details.setForRemoval) {\n allLeaveNodes.push(element);\n mergedLeaveNodes.add(element);\n if (details.hasAnimation) {\n this.driver.query(element, STAR_SELECTOR, true).forEach(elm => mergedLeaveNodes.add(elm));\n }\n else {\n leaveNodesWithoutAnimations.add(element);\n }\n }\n }\n const leaveNodeMapIds = new Map();\n const leaveNodeMap = buildRootMap(allTriggerElements, Array.from(mergedLeaveNodes));\n leaveNodeMap.forEach((nodes, root) => {\n const className = LEAVE_CLASSNAME + i++;\n leaveNodeMapIds.set(root, className);\n nodes.forEach(node => addClass(node, className));\n });\n cleanupFns.push(() => {\n enterNodeMap.forEach((nodes, root) => {\n const className = enterNodeMapIds.get(root);\n nodes.forEach(node => removeClass(node, className));\n });\n leaveNodeMap.forEach((nodes, root) => {\n const className = leaveNodeMapIds.get(root);\n nodes.forEach(node => removeClass(node, className));\n });\n allLeaveNodes.forEach(element => {\n this.processLeaveNode(element);\n });\n });\n const allPlayers = [];\n const erroneousTransitions = [];\n for (let i = this._namespaceList.length - 1; i >= 0; i--) {\n const ns = this._namespaceList[i];\n ns.drainQueuedTransitions(microtaskId).forEach(entry => {\n const player = entry.player;\n const element = entry.element;\n allPlayers.push(player);\n if (this.collectedEnterElements.length) {\n const details = element[REMOVAL_FLAG];\n // animations for move operations (elements being removed and reinserted,\n // e.g. when the order of an *ngFor list changes) are currently not supported\n if (details && details.setForMove) {\n if (details.previousTriggersValues &&\n details.previousTriggersValues.has(entry.triggerName)) {\n const previousValue = details.previousTriggersValues.get(entry.triggerName);\n // we need to restore the previous trigger value since the element has\n // only been moved and hasn't actually left the DOM\n const triggersWithStates = this.statesByElement.get(entry.element);\n if (triggersWithStates && triggersWithStates[entry.triggerName]) {\n triggersWithStates[entry.triggerName].value = previousValue;\n }\n }\n player.destroy();\n return;\n }\n }\n const nodeIsOrphaned = !bodyNode || !this.driver.containsElement(bodyNode, element);\n const leaveClassName = leaveNodeMapIds.get(element);\n const enterClassName = enterNodeMapIds.get(element);\n const instruction = this._buildInstruction(entry, subTimelines, enterClassName, leaveClassName, nodeIsOrphaned);\n if (instruction.errors && instruction.errors.length) {\n erroneousTransitions.push(instruction);\n return;\n }\n // even though the element may not be in the DOM, it may still\n // be added at a later point (due to the mechanics of content\n // projection and/or dynamic component insertion) therefore it's\n // important to still style the element.\n if (nodeIsOrphaned) {\n player.onStart(() => eraseStyles(element, instruction.fromStyles));\n player.onDestroy(() => setStyles(element, instruction.toStyles));\n skippedPlayers.push(player);\n return;\n }\n // if an unmatched transition is queued and ready to go\n // then it SHOULD NOT render an animation and cancel the\n // previously running animations.\n if (entry.isFallbackTransition) {\n player.onStart(() => eraseStyles(element, instruction.fromStyles));\n player.onDestroy(() => setStyles(element, instruction.toStyles));\n skippedPlayers.push(player);\n return;\n }\n // this means that if a parent animation uses this animation as a sub-trigger\n // then it will instruct the timeline builder not to add a player delay, but\n // instead stretch the first keyframe gap until the animation starts. This is\n // important in order to prevent extra initialization styles from being\n // required by the user for the animation.\n const timelines = [];\n instruction.timelines.forEach(tl => {\n tl.stretchStartingKeyframe = true;\n if (!this.disabledNodes.has(tl.element)) {\n timelines.push(tl);\n }\n });\n instruction.timelines = timelines;\n subTimelines.append(element, instruction.timelines);\n const tuple = { instruction, player, element };\n queuedInstructions.push(tuple);\n instruction.queriedElements.forEach(element => getOrSetAsInMap(queriedElements, element, []).push(player));\n instruction.preStyleProps.forEach((stringMap, element) => {\n const props = Object.keys(stringMap);\n if (props.length) {\n let setVal = allPreStyleElements.get(element);\n if (!setVal) {\n allPreStyleElements.set(element, setVal = new Set());\n }\n props.forEach(prop => setVal.add(prop));\n }\n });\n instruction.postStyleProps.forEach((stringMap, element) => {\n const props = Object.keys(stringMap);\n let setVal = allPostStyleElements.get(element);\n if (!setVal) {\n allPostStyleElements.set(element, setVal = new Set());\n }\n props.forEach(prop => setVal.add(prop));\n });\n });\n }\n if (erroneousTransitions.length) {\n const errors = [];\n erroneousTransitions.forEach(instruction => {\n errors.push(transitionFailed(instruction.triggerName, instruction.errors));\n });\n allPlayers.forEach(player => player.destroy());\n this.reportError(errors);\n }\n const allPreviousPlayersMap = new Map();\n // this map tells us which element in the DOM tree is contained by\n // which animation. Further down this map will get populated once\n // the players are built and in doing so we can use it to efficiently\n // figure out if a sub player is skipped due to a parent player having priority.\n const animationElementMap = new Map();\n queuedInstructions.forEach(entry => {\n const element = entry.element;\n if (subTimelines.has(element)) {\n animationElementMap.set(element, element);\n this._beforeAnimationBuild(entry.player.namespaceId, entry.instruction, allPreviousPlayersMap);\n }\n });\n skippedPlayers.forEach(player => {\n const element = player.element;\n const previousPlayers = this._getPreviousPlayers(element, false, player.namespaceId, player.triggerName, null);\n previousPlayers.forEach(prevPlayer => {\n getOrSetAsInMap(allPreviousPlayersMap, element, []).push(prevPlayer);\n prevPlayer.destroy();\n });\n });\n // this is a special case for nodes that will be removed either by\n // having their own leave animations or by being queried in a container\n // that will be removed once a parent animation is complete. The idea\n // here is that * styles must be identical to ! styles because of\n // backwards compatibility (* is also filled in by default in many places).\n // Otherwise * styles will return an empty value or \"auto\" since the element\n // passed to getComputedStyle will not be visible (since * === destination)\n const replaceNodes = allLeaveNodes.filter(node => {\n return replacePostStylesAsPre(node, allPreStyleElements, allPostStyleElements);\n });\n // POST STAGE: fill the * styles\n const postStylesMap = new Map();\n const allLeaveQueriedNodes = cloakAndComputeStyles(postStylesMap, this.driver, leaveNodesWithoutAnimations, allPostStyleElements, AUTO_STYLE);\n allLeaveQueriedNodes.forEach(node => {\n if (replacePostStylesAsPre(node, allPreStyleElements, allPostStyleElements)) {\n replaceNodes.push(node);\n }\n });\n // PRE STAGE: fill the ! styles\n const preStylesMap = new Map();\n enterNodeMap.forEach((nodes, root) => {\n cloakAndComputeStyles(preStylesMap, this.driver, new Set(nodes), allPreStyleElements, ɵPRE_STYLE);\n });\n replaceNodes.forEach(node => {\n const post = postStylesMap.get(node);\n const pre = preStylesMap.get(node);\n postStylesMap.set(node, Object.assign(Object.assign({}, post), pre));\n });\n const rootPlayers = [];\n const subPlayers = [];\n const NO_PARENT_ANIMATION_ELEMENT_DETECTED = {};\n queuedInstructions.forEach(entry => {\n const { element, player, instruction } = entry;\n // this means that it was never consumed by a parent animation which\n // means that it is independent and therefore should be set for animation\n if (subTimelines.has(element)) {\n if (disabledElementsSet.has(element)) {\n player.onDestroy(() => setStyles(element, instruction.toStyles));\n player.disabled = true;\n player.overrideTotalTime(instruction.totalTime);\n skippedPlayers.push(player);\n return;\n }\n // this will flow up the DOM and query the map to figure out\n // if a parent animation has priority over it. In the situation\n // that a parent is detected then it will cancel the loop. If\n // nothing is detected, or it takes a few hops to find a parent,\n // then it will fill in the missing nodes and signal them as having\n // a detected parent (or a NO_PARENT value via a special constant).\n let parentWithAnimation = NO_PARENT_ANIMATION_ELEMENT_DETECTED;\n if (animationElementMap.size > 1) {\n let elm = element;\n const parentsToAdd = [];\n while (elm = elm.parentNode) {\n const detectedParent = animationElementMap.get(elm);\n if (detectedParent) {\n parentWithAnimation = detectedParent;\n break;\n }\n parentsToAdd.push(elm);\n }\n parentsToAdd.forEach(parent => animationElementMap.set(parent, parentWithAnimation));\n }\n const innerPlayer = this._buildAnimation(player.namespaceId, instruction, allPreviousPlayersMap, skippedPlayersMap, preStylesMap, postStylesMap);\n player.setRealPlayer(innerPlayer);\n if (parentWithAnimation === NO_PARENT_ANIMATION_ELEMENT_DETECTED) {\n rootPlayers.push(player);\n }\n else {\n const parentPlayers = this.playersByElement.get(parentWithAnimation);\n if (parentPlayers && parentPlayers.length) {\n player.parentPlayer = optimizeGroupPlayer(parentPlayers);\n }\n skippedPlayers.push(player);\n }\n }\n else {\n eraseStyles(element, instruction.fromStyles);\n player.onDestroy(() => setStyles(element, instruction.toStyles));\n // there still might be a ancestor player animating this\n // element therefore we will still add it as a sub player\n // even if its animation may be disabled\n subPlayers.push(player);\n if (disabledElementsSet.has(element)) {\n skippedPlayers.push(player);\n }\n }\n });\n // find all of the sub players' corresponding inner animation players\n subPlayers.forEach(player => {\n // even if no players are found for a sub animation it\n // will still complete itself after the next tick since it's Noop\n const playersForElement = skippedPlayersMap.get(player.element);\n if (playersForElement && playersForElement.length) {\n const innerPlayer = optimizeGroupPlayer(playersForElement);\n player.setRealPlayer(innerPlayer);\n }\n });\n // the reason why we don't actually play the animation is\n // because all that a skipped player is designed to do is to\n // fire the start/done transition callback events\n skippedPlayers.forEach(player => {\n if (player.parentPlayer) {\n player.syncPlayerEvents(player.parentPlayer);\n }\n else {\n player.destroy();\n }\n });\n // run through all of the queued removals and see if they\n // were picked up by a query. If not then perform the removal\n // operation right away unless a parent animation is ongoing.\n for (let i = 0; i < allLeaveNodes.length; i++) {\n const element = allLeaveNodes[i];\n const details = element[REMOVAL_FLAG];\n removeClass(element, LEAVE_CLASSNAME);\n // this means the element has a removal animation that is being\n // taken care of and therefore the inner elements will hang around\n // until that animation is over (or the parent queried animation)\n if (details && details.hasAnimation)\n continue;\n let players = [];\n // if this element is queried or if it contains queried children\n // then we want for the element not to be removed from the page\n // until the queried animations have finished\n if (queriedElements.size) {\n let queriedPlayerResults = queriedElements.get(element);\n if (queriedPlayerResults && queriedPlayerResults.length) {\n players.push(...queriedPlayerResults);\n }\n let queriedInnerElements = this.driver.query(element, NG_ANIMATING_SELECTOR, true);\n for (let j = 0; j < queriedInnerElements.length; j++) {\n let queriedPlayers = queriedElements.get(queriedInnerElements[j]);\n if (queriedPlayers && queriedPlayers.length) {\n players.push(...queriedPlayers);\n }\n }\n }\n const activePlayers = players.filter(p => !p.destroyed);\n if (activePlayers.length) {\n removeNodesAfterAnimationDone(this, element, activePlayers);\n }\n else {\n this.processLeaveNode(element);\n }\n }\n // this is required so the cleanup method doesn't remove them\n allLeaveNodes.length = 0;\n rootPlayers.forEach(player => {\n this.players.push(player);\n player.onDone(() => {\n player.destroy();\n const index = this.players.indexOf(player);\n this.players.splice(index, 1);\n });\n player.play();\n });\n return rootPlayers;\n }\n elementContainsData(namespaceId, element) {\n let containsData = false;\n const details = element[REMOVAL_FLAG];\n if (details && details.setForRemoval)\n containsData = true;\n if (this.playersByElement.has(element))\n containsData = true;\n if (this.playersByQueriedElement.has(element))\n containsData = true;\n if (this.statesByElement.has(element))\n containsData = true;\n return this._fetchNamespace(namespaceId).elementContainsData(element) || containsData;\n }\n afterFlush(callback) {\n this._flushFns.push(callback);\n }\n afterFlushAnimationsDone(callback) {\n this._whenQuietFns.push(callback);\n }\n _getPreviousPlayers(element, isQueriedElement, namespaceId, triggerName, toStateValue) {\n let players = [];\n if (isQueriedElement) {\n const queriedElementPlayers = this.playersByQueriedElement.get(element);\n if (queriedElementPlayers) {\n players = queriedElementPlayers;\n }\n }\n else {\n const elementPlayers = this.playersByElement.get(element);\n if (elementPlayers) {\n const isRemovalAnimation = !toStateValue || toStateValue == VOID_VALUE;\n elementPlayers.forEach(player => {\n if (player.queued)\n return;\n if (!isRemovalAnimation && player.triggerName != triggerName)\n return;\n players.push(player);\n });\n }\n }\n if (namespaceId || triggerName) {\n players = players.filter(player => {\n if (namespaceId && namespaceId != player.namespaceId)\n return false;\n if (triggerName && triggerName != player.triggerName)\n return false;\n return true;\n });\n }\n return players;\n }\n _beforeAnimationBuild(namespaceId, instruction, allPreviousPlayersMap) {\n const triggerName = instruction.triggerName;\n const rootElement = instruction.element;\n // when a removal animation occurs, ALL previous players are collected\n // and destroyed (even if they are outside of the current namespace)\n const targetNameSpaceId = instruction.isRemovalTransition ? undefined : namespaceId;\n const targetTriggerName = instruction.isRemovalTransition ? undefined : triggerName;\n for (const timelineInstruction of instruction.timelines) {\n const element = timelineInstruction.element;\n const isQueriedElement = element !== rootElement;\n const players = getOrSetAsInMap(allPreviousPlayersMap, element, []);\n const previousPlayers = this._getPreviousPlayers(element, isQueriedElement, targetNameSpaceId, targetTriggerName, instruction.toState);\n previousPlayers.forEach(player => {\n const realPlayer = player.getRealPlayer();\n if (realPlayer.beforeDestroy) {\n realPlayer.beforeDestroy();\n }\n player.destroy();\n players.push(player);\n });\n }\n // this needs to be done so that the PRE/POST styles can be\n // computed properly without interfering with the previous animation\n eraseStyles(rootElement, instruction.fromStyles);\n }\n _buildAnimation(namespaceId, instruction, allPreviousPlayersMap, skippedPlayersMap, preStylesMap, postStylesMap) {\n const triggerName = instruction.triggerName;\n const rootElement = instruction.element;\n // we first run this so that the previous animation player\n // data can be passed into the successive animation players\n const allQueriedPlayers = [];\n const allConsumedElements = new Set();\n const allSubElements = new Set();\n const allNewPlayers = instruction.timelines.map(timelineInstruction => {\n const element = timelineInstruction.element;\n allConsumedElements.add(element);\n // FIXME (matsko): make sure to-be-removed animations are removed properly\n const details = element[REMOVAL_FLAG];\n if (details && details.removedBeforeQueried)\n return new NoopAnimationPlayer(timelineInstruction.duration, timelineInstruction.delay);\n const isQueriedElement = element !== rootElement;\n const previousPlayers = flattenGroupPlayers((allPreviousPlayersMap.get(element) || EMPTY_PLAYER_ARRAY)\n .map(p => p.getRealPlayer()))\n .filter(p => {\n // the `element` is not apart of the AnimationPlayer definition, but\n // Mock/WebAnimations\n // use the element within their implementation. This will be added in Angular5 to\n // AnimationPlayer\n const pp = p;\n return pp.element ? pp.element === element : false;\n });\n const preStyles = preStylesMap.get(element);\n const postStyles = postStylesMap.get(element);\n const keyframes = normalizeKeyframes(this.driver, this._normalizer, element, timelineInstruction.keyframes, preStyles, postStyles);\n const player = this._buildPlayer(timelineInstruction, keyframes, previousPlayers);\n // this means that this particular player belongs to a sub trigger. It is\n // important that we match this player up with the corresponding (@trigger.listener)\n if (timelineInstruction.subTimeline && skippedPlayersMap) {\n allSubElements.add(element);\n }\n if (isQueriedElement) {\n const wrappedPlayer = new TransitionAnimationPlayer(namespaceId, triggerName, element);\n wrappedPlayer.setRealPlayer(player);\n allQueriedPlayers.push(wrappedPlayer);\n }\n return player;\n });\n allQueriedPlayers.forEach(player => {\n getOrSetAsInMap(this.playersByQueriedElement, player.element, []).push(player);\n player.onDone(() => deleteOrUnsetInMap(this.playersByQueriedElement, player.element, player));\n });\n allConsumedElements.forEach(element => addClass(element, NG_ANIMATING_CLASSNAME));\n const player = optimizeGroupPlayer(allNewPlayers);\n player.onDestroy(() => {\n allConsumedElements.forEach(element => removeClass(element, NG_ANIMATING_CLASSNAME));\n setStyles(rootElement, instruction.toStyles);\n });\n // this basically makes all of the callbacks for sub element animations\n // be dependent on the upper players for when they finish\n allSubElements.forEach(element => {\n getOrSetAsInMap(skippedPlayersMap, element, []).push(player);\n });\n return player;\n }\n _buildPlayer(instruction, keyframes, previousPlayers) {\n if (keyframes.length > 0) {\n return this.driver.animate(instruction.element, keyframes, instruction.duration, instruction.delay, instruction.easing, previousPlayers);\n }\n // special case for when an empty transition|definition is provided\n // ... there is no point in rendering an empty animation\n return new NoopAnimationPlayer(instruction.duration, instruction.delay);\n }\n}\nclass TransitionAnimationPlayer {\n constructor(namespaceId, triggerName, element) {\n this.namespaceId = namespaceId;\n this.triggerName = triggerName;\n this.element = element;\n this._player = new NoopAnimationPlayer();\n this._containsRealPlayer = false;\n this._queuedCallbacks = {};\n this.destroyed = false;\n this.markedForDestroy = false;\n this.disabled = false;\n this.queued = true;\n this.totalTime = 0;\n }\n setRealPlayer(player) {\n if (this._containsRealPlayer)\n return;\n this._player = player;\n Object.keys(this._queuedCallbacks).forEach(phase => {\n this._queuedCallbacks[phase].forEach(callback => listenOnPlayer(player, phase, undefined, callback));\n });\n this._queuedCallbacks = {};\n this._containsRealPlayer = true;\n this.overrideTotalTime(player.totalTime);\n this.queued = false;\n }\n getRealPlayer() {\n return this._player;\n }\n overrideTotalTime(totalTime) {\n this.totalTime = totalTime;\n }\n syncPlayerEvents(player) {\n const p = this._player;\n if (p.triggerCallback) {\n player.onStart(() => p.triggerCallback('start'));\n }\n player.onDone(() => this.finish());\n player.onDestroy(() => this.destroy());\n }\n _queueEvent(name, callback) {\n getOrSetAsInMap(this._queuedCallbacks, name, []).push(callback);\n }\n onDone(fn) {\n if (this.queued) {\n this._queueEvent('done', fn);\n }\n this._player.onDone(fn);\n }\n onStart(fn) {\n if (this.queued) {\n this._queueEvent('start', fn);\n }\n this._player.onStart(fn);\n }\n onDestroy(fn) {\n if (this.queued) {\n this._queueEvent('destroy', fn);\n }\n this._player.onDestroy(fn);\n }\n init() {\n this._player.init();\n }\n hasStarted() {\n return this.queued ? false : this._player.hasStarted();\n }\n play() {\n !this.queued && this._player.play();\n }\n pause() {\n !this.queued && this._player.pause();\n }\n restart() {\n !this.queued && this._player.restart();\n }\n finish() {\n this._player.finish();\n }\n destroy() {\n this.destroyed = true;\n this._player.destroy();\n }\n reset() {\n !this.queued && this._player.reset();\n }\n setPosition(p) {\n if (!this.queued) {\n this._player.setPosition(p);\n }\n }\n getPosition() {\n return this.queued ? 0 : this._player.getPosition();\n }\n /** @internal */\n triggerCallback(phaseName) {\n const p = this._player;\n if (p.triggerCallback) {\n p.triggerCallback(phaseName);\n }\n }\n}\nfunction deleteOrUnsetInMap(map, key, value) {\n let currentValues;\n if (map instanceof Map) {\n currentValues = map.get(key);\n if (currentValues) {\n if (currentValues.length) {\n const index = currentValues.indexOf(value);\n currentValues.splice(index, 1);\n }\n if (currentValues.length == 0) {\n map.delete(key);\n }\n }\n }\n else {\n currentValues = map[key];\n if (currentValues) {\n if (currentValues.length) {\n const index = currentValues.indexOf(value);\n currentValues.splice(index, 1);\n }\n if (currentValues.length == 0) {\n delete map[key];\n }\n }\n }\n return currentValues;\n}\nfunction normalizeTriggerValue(value) {\n // we use `!= null` here because it's the most simple\n // way to test against a \"falsy\" value without mixing\n // in empty strings or a zero value. DO NOT OPTIMIZE.\n return value != null ? value : null;\n}\nfunction isElementNode(node) {\n return node && node['nodeType'] === 1;\n}\nfunction isTriggerEventValid(eventName) {\n return eventName == 'start' || eventName == 'done';\n}\nfunction cloakElement(element, value) {\n const oldValue = element.style.display;\n element.style.display = value != null ? value : 'none';\n return oldValue;\n}\nfunction cloakAndComputeStyles(valuesMap, driver, elements, elementPropsMap, defaultStyle) {\n const cloakVals = [];\n elements.forEach(element => cloakVals.push(cloakElement(element)));\n const failedElements = [];\n elementPropsMap.forEach((props, element) => {\n const styles = {};\n props.forEach(prop => {\n const value = styles[prop] = driver.computeStyle(element, prop, defaultStyle);\n // there is no easy way to detect this because a sub element could be removed\n // by a parent animation element being detached.\n if (!value || value.length == 0) {\n element[REMOVAL_FLAG] = NULL_REMOVED_QUERIED_STATE;\n failedElements.push(element);\n }\n });\n valuesMap.set(element, styles);\n });\n // we use a index variable here since Set.forEach(a, i) does not return\n // an index value for the closure (but instead just the value)\n let i = 0;\n elements.forEach(element => cloakElement(element, cloakVals[i++]));\n return failedElements;\n}\n/*\nSince the Angular renderer code will return a collection of inserted\nnodes in all areas of a DOM tree, it's up to this algorithm to figure\nout which nodes are roots for each animation @trigger.\n\nBy placing each inserted node into a Set and traversing upwards, it\nis possible to find the @trigger elements and well any direct *star\ninsertion nodes, if a @trigger root is found then the enter element\nis placed into the Map[@trigger] spot.\n */\nfunction buildRootMap(roots, nodes) {\n const rootMap = new Map();\n roots.forEach(root => rootMap.set(root, []));\n if (nodes.length == 0)\n return rootMap;\n const NULL_NODE = 1;\n const nodeSet = new Set(nodes);\n const localRootMap = new Map();\n function getRoot(node) {\n if (!node)\n return NULL_NODE;\n let root = localRootMap.get(node);\n if (root)\n return root;\n const parent = node.parentNode;\n if (rootMap.has(parent)) { // ngIf inside @trigger\n root = parent;\n }\n else if (nodeSet.has(parent)) { // ngIf inside ngIf\n root = NULL_NODE;\n }\n else { // recurse upwards\n root = getRoot(parent);\n }\n localRootMap.set(node, root);\n return root;\n }\n nodes.forEach(node => {\n const root = getRoot(node);\n if (root !== NULL_NODE) {\n rootMap.get(root).push(node);\n }\n });\n return rootMap;\n}\nfunction addClass(element, className) {\n var _a;\n (_a = element.classList) === null || _a === void 0 ? void 0 : _a.add(className);\n}\nfunction removeClass(element, className) {\n var _a;\n (_a = element.classList) === null || _a === void 0 ? void 0 : _a.remove(className);\n}\nfunction removeNodesAfterAnimationDone(engine, element, players) {\n optimizeGroupPlayer(players).onDone(() => engine.processLeaveNode(element));\n}\nfunction flattenGroupPlayers(players) {\n const finalPlayers = [];\n _flattenGroupPlayersRecur(players, finalPlayers);\n return finalPlayers;\n}\nfunction _flattenGroupPlayersRecur(players, finalPlayers) {\n for (let i = 0; i < players.length; i++) {\n const player = players[i];\n if (player instanceof ɵAnimationGroupPlayer) {\n _flattenGroupPlayersRecur(player.players, finalPlayers);\n }\n else {\n finalPlayers.push(player);\n }\n }\n}\nfunction objEquals(a, b) {\n const k1 = Object.keys(a);\n const k2 = Object.keys(b);\n if (k1.length != k2.length)\n return false;\n for (let i = 0; i < k1.length; i++) {\n const prop = k1[i];\n if (!b.hasOwnProperty(prop) || a[prop] !== b[prop])\n return false;\n }\n return true;\n}\nfunction replacePostStylesAsPre(element, allPreStyleElements, allPostStyleElements) {\n const postEntry = allPostStyleElements.get(element);\n if (!postEntry)\n return false;\n let preEntry = allPreStyleElements.get(element);\n if (preEntry) {\n postEntry.forEach(data => preEntry.add(data));\n }\n else {\n allPreStyleElements.set(element, postEntry);\n }\n allPostStyleElements.delete(element);\n return true;\n}\n\nclass AnimationEngine {\n constructor(bodyNode, _driver, _normalizer) {\n this.bodyNode = bodyNode;\n this._driver = _driver;\n this._normalizer = _normalizer;\n this._triggerCache = {};\n // this method is designed to be overridden by the code that uses this engine\n this.onRemovalComplete = (element, context) => { };\n this._transitionEngine = new TransitionAnimationEngine(bodyNode, _driver, _normalizer);\n this._timelineEngine = new TimelineAnimationEngine(bodyNode, _driver, _normalizer);\n this._transitionEngine.onRemovalComplete = (element, context) => this.onRemovalComplete(element, context);\n }\n registerTrigger(componentId, namespaceId, hostElement, name, metadata) {\n const cacheKey = componentId + '-' + name;\n let trigger = this._triggerCache[cacheKey];\n if (!trigger) {\n const errors = [];\n const warnings = [];\n const ast = buildAnimationAst(this._driver, metadata, errors, warnings);\n if (errors.length) {\n throw triggerBuildFailed(name, errors);\n }\n if (warnings.length) {\n warnTriggerBuild(name, warnings);\n }\n trigger = buildTrigger(name, ast, this._normalizer);\n this._triggerCache[cacheKey] = trigger;\n }\n this._transitionEngine.registerTrigger(namespaceId, name, trigger);\n }\n register(namespaceId, hostElement) {\n this._transitionEngine.register(namespaceId, hostElement);\n }\n destroy(namespaceId, context) {\n this._transitionEngine.destroy(namespaceId, context);\n }\n onInsert(namespaceId, element, parent, insertBefore) {\n this._transitionEngine.insertNode(namespaceId, element, parent, insertBefore);\n }\n onRemove(namespaceId, element, context, isHostElement) {\n this._transitionEngine.removeNode(namespaceId, element, isHostElement || false, context);\n }\n disableAnimations(element, disable) {\n this._transitionEngine.markElementAsDisabled(element, disable);\n }\n process(namespaceId, element, property, value) {\n if (property.charAt(0) == '@') {\n const [id, action] = parseTimelineCommand(property);\n const args = value;\n this._timelineEngine.command(id, element, action, args);\n }\n else {\n this._transitionEngine.trigger(namespaceId, element, property, value);\n }\n }\n listen(namespaceId, element, eventName, eventPhase, callback) {\n // @@listen\n if (eventName.charAt(0) == '@') {\n const [id, action] = parseTimelineCommand(eventName);\n return this._timelineEngine.listen(id, element, action, callback);\n }\n return this._transitionEngine.listen(namespaceId, element, eventName, eventPhase, callback);\n }\n flush(microtaskId = -1) {\n this._transitionEngine.flush(microtaskId);\n }\n get players() {\n return this._transitionEngine.players\n .concat(this._timelineEngine.players);\n }\n whenRenderingDone() {\n return this._transitionEngine.whenRenderingDone();\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Returns an instance of `SpecialCasedStyles` if and when any special (non animateable) styles are\n * detected.\n *\n * In CSS there exist properties that cannot be animated within a keyframe animation\n * (whether it be via CSS keyframes or web-animations) and the animation implementation\n * will ignore them. This function is designed to detect those special cased styles and\n * return a container that will be executed at the start and end of the animation.\n *\n * @returns an instance of `SpecialCasedStyles` if any special styles are detected otherwise `null`\n */\nfunction packageNonAnimatableStyles(element, styles) {\n let startStyles = null;\n let endStyles = null;\n if (Array.isArray(styles) && styles.length) {\n startStyles = filterNonAnimatableStyles(styles[0]);\n if (styles.length > 1) {\n endStyles = filterNonAnimatableStyles(styles[styles.length - 1]);\n }\n }\n else if (styles) {\n startStyles = filterNonAnimatableStyles(styles);\n }\n return (startStyles || endStyles) ? new SpecialCasedStyles(element, startStyles, endStyles) :\n null;\n}\n/**\n * Designed to be executed during a keyframe-based animation to apply any special-cased styles.\n *\n * When started (when the `start()` method is run) then the provided `startStyles`\n * will be applied. When finished (when the `finish()` method is called) the\n * `endStyles` will be applied as well any any starting styles. Finally when\n * `destroy()` is called then all styles will be removed.\n */\nclass SpecialCasedStyles {\n constructor(_element, _startStyles, _endStyles) {\n this._element = _element;\n this._startStyles = _startStyles;\n this._endStyles = _endStyles;\n this._state = 0 /* Pending */;\n let initialStyles = SpecialCasedStyles.initialStylesByElement.get(_element);\n if (!initialStyles) {\n SpecialCasedStyles.initialStylesByElement.set(_element, initialStyles = {});\n }\n this._initialStyles = initialStyles;\n }\n start() {\n if (this._state < 1 /* Started */) {\n if (this._startStyles) {\n setStyles(this._element, this._startStyles, this._initialStyles);\n }\n this._state = 1 /* Started */;\n }\n }\n finish() {\n this.start();\n if (this._state < 2 /* Finished */) {\n setStyles(this._element, this._initialStyles);\n if (this._endStyles) {\n setStyles(this._element, this._endStyles);\n this._endStyles = null;\n }\n this._state = 1 /* Started */;\n }\n }\n destroy() {\n this.finish();\n if (this._state < 3 /* Destroyed */) {\n SpecialCasedStyles.initialStylesByElement.delete(this._element);\n if (this._startStyles) {\n eraseStyles(this._element, this._startStyles);\n this._endStyles = null;\n }\n if (this._endStyles) {\n eraseStyles(this._element, this._endStyles);\n this._endStyles = null;\n }\n setStyles(this._element, this._initialStyles);\n this._state = 3 /* Destroyed */;\n }\n }\n}\nSpecialCasedStyles.initialStylesByElement = ( /* @__PURE__ */new WeakMap());\nfunction filterNonAnimatableStyles(styles) {\n let result = null;\n const props = Object.keys(styles);\n for (let i = 0; i < props.length; i++) {\n const prop = props[i];\n if (isNonAnimatableStyle(prop)) {\n result = result || {};\n result[prop] = styles[prop];\n }\n }\n return result;\n}\nfunction isNonAnimatableStyle(prop) {\n return prop === 'display' || prop === 'position';\n}\n\nclass WebAnimationsPlayer {\n constructor(element, keyframes, options, _specialStyles) {\n this.element = element;\n this.keyframes = keyframes;\n this.options = options;\n this._specialStyles = _specialStyles;\n this._onDoneFns = [];\n this._onStartFns = [];\n this._onDestroyFns = [];\n this._initialized = false;\n this._finished = false;\n this._started = false;\n this._destroyed = false;\n this.time = 0;\n this.parentPlayer = null;\n this.currentSnapshot = {};\n this._duration = options['duration'];\n this._delay = options['delay'] || 0;\n this.time = this._duration + this._delay;\n }\n _onFinish() {\n if (!this._finished) {\n this._finished = true;\n this._onDoneFns.forEach(fn => fn());\n this._onDoneFns = [];\n }\n }\n init() {\n this._buildPlayer();\n this._preparePlayerBeforeStart();\n }\n _buildPlayer() {\n if (this._initialized)\n return;\n this._initialized = true;\n const keyframes = this.keyframes;\n this.domPlayer =\n this._triggerWebAnimation(this.element, keyframes, this.options);\n this._finalKeyframe = keyframes.length ? keyframes[keyframes.length - 1] : {};\n this.domPlayer.addEventListener('finish', () => this._onFinish());\n }\n _preparePlayerBeforeStart() {\n // this is required so that the player doesn't start to animate right away\n if (this._delay) {\n this._resetDomPlayerState();\n }\n else {\n this.domPlayer.pause();\n }\n }\n /** @internal */\n _triggerWebAnimation(element, keyframes, options) {\n // jscompiler doesn't seem to know animate is a native property because it's not fully\n // supported yet across common browsers (we polyfill it for Edge/Safari) [CL #143630929]\n return element['animate'](keyframes, options);\n }\n onStart(fn) {\n this._onStartFns.push(fn);\n }\n onDone(fn) {\n this._onDoneFns.push(fn);\n }\n onDestroy(fn) {\n this._onDestroyFns.push(fn);\n }\n play() {\n this._buildPlayer();\n if (!this.hasStarted()) {\n this._onStartFns.forEach(fn => fn());\n this._onStartFns = [];\n this._started = true;\n if (this._specialStyles) {\n this._specialStyles.start();\n }\n }\n this.domPlayer.play();\n }\n pause() {\n this.init();\n this.domPlayer.pause();\n }\n finish() {\n this.init();\n if (this._specialStyles) {\n this._specialStyles.finish();\n }\n this._onFinish();\n this.domPlayer.finish();\n }\n reset() {\n this._resetDomPlayerState();\n this._destroyed = false;\n this._finished = false;\n this._started = false;\n }\n _resetDomPlayerState() {\n if (this.domPlayer) {\n this.domPlayer.cancel();\n }\n }\n restart() {\n this.reset();\n this.play();\n }\n hasStarted() {\n return this._started;\n }\n destroy() {\n if (!this._destroyed) {\n this._destroyed = true;\n this._resetDomPlayerState();\n this._onFinish();\n if (this._specialStyles) {\n this._specialStyles.destroy();\n }\n this._onDestroyFns.forEach(fn => fn());\n this._onDestroyFns = [];\n }\n }\n setPosition(p) {\n if (this.domPlayer === undefined) {\n this.init();\n }\n this.domPlayer.currentTime = p * this.time;\n }\n getPosition() {\n return this.domPlayer.currentTime / this.time;\n }\n get totalTime() {\n return this._delay + this._duration;\n }\n beforeDestroy() {\n const styles = {};\n if (this.hasStarted()) {\n // note: this code is invoked only when the `play` function was called prior to this\n // (thus `hasStarted` returns true), this implies that the code that initializes\n // `_finalKeyframe` has also been executed and the non-null assertion can be safely used here\n const finalKeyframe = this._finalKeyframe;\n Object.keys(finalKeyframe).forEach(prop => {\n if (prop != 'offset') {\n styles[prop] = this._finished ? finalKeyframe[prop] : computeStyle(this.element, prop);\n }\n });\n }\n this.currentSnapshot = styles;\n }\n /** @internal */\n triggerCallback(phaseName) {\n const methods = phaseName == 'start' ? this._onStartFns : this._onDoneFns;\n methods.forEach(fn => fn());\n methods.length = 0;\n }\n}\n\nclass WebAnimationsDriver {\n validateStyleProperty(prop) {\n return validateStyleProperty(prop);\n }\n matchesElement(_element, _selector) {\n // This method is deprecated and no longer in use so we return false.\n return false;\n }\n containsElement(elm1, elm2) {\n return containsElement(elm1, elm2);\n }\n getParentElement(element) {\n return getParentElement(element);\n }\n query(element, selector, multi) {\n return invokeQuery(element, selector, multi);\n }\n computeStyle(element, prop, defaultValue) {\n return window.getComputedStyle(element)[prop];\n }\n animate(element, keyframes, duration, delay, easing, previousPlayers = []) {\n const fill = delay == 0 ? 'both' : 'forwards';\n const playerOptions = { duration, delay, fill };\n // we check for this to avoid having a null|undefined value be present\n // for the easing (which results in an error for certain browsers #9752)\n if (easing) {\n playerOptions['easing'] = easing;\n }\n const previousStyles = {};\n const previousWebAnimationPlayers = previousPlayers.filter(player => player instanceof WebAnimationsPlayer);\n if (allowPreviousPlayerStylesMerge(duration, delay)) {\n previousWebAnimationPlayers.forEach(player => {\n let styles = player.currentSnapshot;\n Object.keys(styles).forEach(prop => previousStyles[prop] = styles[prop]);\n });\n }\n keyframes = keyframes.map(styles => copyStyles(styles, false));\n keyframes = balancePreviousStylesIntoKeyframes(element, keyframes, previousStyles);\n const specialStyles = packageNonAnimatableStyles(element, keyframes);\n return new WebAnimationsPlayer(element, keyframes, playerOptions, specialStyles);\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { AnimationDriver, Animation as ɵAnimation, AnimationEngine as ɵAnimationEngine, AnimationStyleNormalizer as ɵAnimationStyleNormalizer, NoopAnimationDriver as ɵNoopAnimationDriver, NoopAnimationStyleNormalizer as ɵNoopAnimationStyleNormalizer, WebAnimationsDriver as ɵWebAnimationsDriver, WebAnimationsPlayer as ɵWebAnimationsPlayer, WebAnimationsStyleNormalizer as ɵWebAnimationsStyleNormalizer, allowPreviousPlayerStylesMerge as ɵallowPreviousPlayerStylesMerge, containsElement as ɵcontainsElement, getParentElement as ɵgetParentElement, invokeQuery as ɵinvokeQuery, validateStyleProperty as ɵvalidateStyleProperty };\n","import { DOCUMENT } from '@angular/common';\nimport * as i0 from '@angular/core';\nimport { Injectable, Inject, QueryList, Directive, Input, InjectionToken, Optional, EventEmitter, Output, NgModule } from '@angular/core';\nimport * as i1 from '@angular/cdk/platform';\nimport { _getFocusedElementPierceShadowDom, normalizePassiveListenerOptions, _getEventTarget, _getShadowRoot } from '@angular/cdk/platform';\nimport { Subject, Subscription, BehaviorSubject, of } from 'rxjs';\nimport { hasModifierKey, A, Z, ZERO, NINE, END, HOME, LEFT_ARROW, RIGHT_ARROW, UP_ARROW, DOWN_ARROW, TAB, ALT, CONTROL, MAC_META, META, SHIFT } from '@angular/cdk/keycodes';\nimport { tap, debounceTime, filter, map, take, skip, distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { coerceBooleanProperty, coerceElement } from '@angular/cdk/coercion';\nimport * as i1$1 from '@angular/cdk/observers';\nimport { ObserversModule } from '@angular/cdk/observers';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** IDs are delimited by an empty space, as per the spec. */\nconst ID_DELIMITER = ' ';\n/**\n * Adds the given ID to the specified ARIA attribute on an element.\n * Used for attributes such as aria-labelledby, aria-owns, etc.\n */\nfunction addAriaReferencedId(el, attr, id) {\n const ids = getAriaReferenceIds(el, attr);\n if (ids.some(existingId => existingId.trim() == id.trim())) {\n return;\n }\n ids.push(id.trim());\n el.setAttribute(attr, ids.join(ID_DELIMITER));\n}\n/**\n * Removes the given ID from the specified ARIA attribute on an element.\n * Used for attributes such as aria-labelledby, aria-owns, etc.\n */\nfunction removeAriaReferencedId(el, attr, id) {\n const ids = getAriaReferenceIds(el, attr);\n const filteredIds = ids.filter(val => val != id.trim());\n if (filteredIds.length) {\n el.setAttribute(attr, filteredIds.join(ID_DELIMITER));\n }\n else {\n el.removeAttribute(attr);\n }\n}\n/**\n * Gets the list of IDs referenced by the given ARIA attribute on an element.\n * Used for attributes such as aria-labelledby, aria-owns, etc.\n */\nfunction getAriaReferenceIds(el, attr) {\n // Get string array of all individual ids (whitespace delimited) in the attribute value\n return (el.getAttribute(attr) || '').match(/\\S+/g) || [];\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * ID used for the body container where all messages are appended.\n * @deprecated No longer being used. To be removed.\n * @breaking-change 14.0.0\n */\nconst MESSAGES_CONTAINER_ID = 'cdk-describedby-message-container';\n/**\n * ID prefix used for each created message element.\n * @deprecated To be turned into a private variable.\n * @breaking-change 14.0.0\n */\nconst CDK_DESCRIBEDBY_ID_PREFIX = 'cdk-describedby-message';\n/**\n * Attribute given to each host element that is described by a message element.\n * @deprecated To be turned into a private variable.\n * @breaking-change 14.0.0\n */\nconst CDK_DESCRIBEDBY_HOST_ATTRIBUTE = 'cdk-describedby-host';\n/** Global incremental identifier for each registered message element. */\nlet nextId = 0;\n/**\n * Utility that creates visually hidden elements with a message content. Useful for elements that\n * want to use aria-describedby to further describe themselves without adding additional visual\n * content.\n */\nclass AriaDescriber {\n constructor(_document, \n /**\n * @deprecated To be turned into a required parameter.\n * @breaking-change 14.0.0\n */\n _platform) {\n this._platform = _platform;\n /** Map of all registered message elements that have been placed into the document. */\n this._messageRegistry = new Map();\n /** Container for all registered messages. */\n this._messagesContainer = null;\n /** Unique ID for the service. */\n this._id = `${nextId++}`;\n this._document = _document;\n }\n describe(hostElement, message, role) {\n if (!this._canBeDescribed(hostElement, message)) {\n return;\n }\n const key = getKey(message, role);\n if (typeof message !== 'string') {\n // We need to ensure that the element has an ID.\n setMessageId(message);\n this._messageRegistry.set(key, { messageElement: message, referenceCount: 0 });\n }\n else if (!this._messageRegistry.has(key)) {\n this._createMessageElement(message, role);\n }\n if (!this._isElementDescribedByMessage(hostElement, key)) {\n this._addMessageReference(hostElement, key);\n }\n }\n removeDescription(hostElement, message, role) {\n var _a;\n if (!message || !this._isElementNode(hostElement)) {\n return;\n }\n const key = getKey(message, role);\n if (this._isElementDescribedByMessage(hostElement, key)) {\n this._removeMessageReference(hostElement, key);\n }\n // If the message is a string, it means that it's one that we created for the\n // consumer so we can remove it safely, otherwise we should leave it in place.\n if (typeof message === 'string') {\n const registeredMessage = this._messageRegistry.get(key);\n if (registeredMessage && registeredMessage.referenceCount === 0) {\n this._deleteMessageElement(key);\n }\n }\n if (((_a = this._messagesContainer) === null || _a === void 0 ? void 0 : _a.childNodes.length) === 0) {\n this._messagesContainer.remove();\n this._messagesContainer = null;\n }\n }\n /** Unregisters all created message elements and removes the message container. */\n ngOnDestroy() {\n var _a;\n const describedElements = this._document.querySelectorAll(`[${CDK_DESCRIBEDBY_HOST_ATTRIBUTE}=\"${this._id}\"]`);\n for (let i = 0; i < describedElements.length; i++) {\n this._removeCdkDescribedByReferenceIds(describedElements[i]);\n describedElements[i].removeAttribute(CDK_DESCRIBEDBY_HOST_ATTRIBUTE);\n }\n (_a = this._messagesContainer) === null || _a === void 0 ? void 0 : _a.remove();\n this._messagesContainer = null;\n this._messageRegistry.clear();\n }\n /**\n * Creates a new element in the visually hidden message container element with the message\n * as its content and adds it to the message registry.\n */\n _createMessageElement(message, role) {\n const messageElement = this._document.createElement('div');\n setMessageId(messageElement);\n messageElement.textContent = message;\n if (role) {\n messageElement.setAttribute('role', role);\n }\n this._createMessagesContainer();\n this._messagesContainer.appendChild(messageElement);\n this._messageRegistry.set(getKey(message, role), { messageElement, referenceCount: 0 });\n }\n /** Deletes the message element from the global messages container. */\n _deleteMessageElement(key) {\n var _a, _b;\n (_b = (_a = this._messageRegistry.get(key)) === null || _a === void 0 ? void 0 : _a.messageElement) === null || _b === void 0 ? void 0 : _b.remove();\n this._messageRegistry.delete(key);\n }\n /** Creates the global container for all aria-describedby messages. */\n _createMessagesContainer() {\n if (this._messagesContainer) {\n return;\n }\n const containerClassName = 'cdk-describedby-message-container';\n const serverContainers = this._document.querySelectorAll(`.${containerClassName}[platform=\"server\"]`);\n for (let i = 0; i < serverContainers.length; i++) {\n // When going from the server to the client, we may end up in a situation where there's\n // already a container on the page, but we don't have a reference to it. Clear the\n // old container so we don't get duplicates. Doing this, instead of emptying the previous\n // container, should be slightly faster.\n serverContainers[i].remove();\n }\n const messagesContainer = this._document.createElement('div');\n // We add `visibility: hidden` in order to prevent text in this container from\n // being searchable by the browser's Ctrl + F functionality.\n // Screen-readers will still read the description for elements with aria-describedby even\n // when the description element is not visible.\n messagesContainer.style.visibility = 'hidden';\n // Even though we use `visibility: hidden`, we still apply `cdk-visually-hidden` so that\n // the description element doesn't impact page layout.\n messagesContainer.classList.add(containerClassName);\n messagesContainer.classList.add('cdk-visually-hidden');\n // @breaking-change 14.0.0 Remove null check for `_platform`.\n if (this._platform && !this._platform.isBrowser) {\n messagesContainer.setAttribute('platform', 'server');\n }\n this._document.body.appendChild(messagesContainer);\n this._messagesContainer = messagesContainer;\n }\n /** Removes all cdk-describedby messages that are hosted through the element. */\n _removeCdkDescribedByReferenceIds(element) {\n // Remove all aria-describedby reference IDs that are prefixed by CDK_DESCRIBEDBY_ID_PREFIX\n const originalReferenceIds = getAriaReferenceIds(element, 'aria-describedby').filter(id => id.indexOf(CDK_DESCRIBEDBY_ID_PREFIX) != 0);\n element.setAttribute('aria-describedby', originalReferenceIds.join(' '));\n }\n /**\n * Adds a message reference to the element using aria-describedby and increments the registered\n * message's reference count.\n */\n _addMessageReference(element, key) {\n const registeredMessage = this._messageRegistry.get(key);\n // Add the aria-describedby reference and set the\n // describedby_host attribute to mark the element.\n addAriaReferencedId(element, 'aria-describedby', registeredMessage.messageElement.id);\n element.setAttribute(CDK_DESCRIBEDBY_HOST_ATTRIBUTE, this._id);\n registeredMessage.referenceCount++;\n }\n /**\n * Removes a message reference from the element using aria-describedby\n * and decrements the registered message's reference count.\n */\n _removeMessageReference(element, key) {\n const registeredMessage = this._messageRegistry.get(key);\n registeredMessage.referenceCount--;\n removeAriaReferencedId(element, 'aria-describedby', registeredMessage.messageElement.id);\n element.removeAttribute(CDK_DESCRIBEDBY_HOST_ATTRIBUTE);\n }\n /** Returns true if the element has been described by the provided message ID. */\n _isElementDescribedByMessage(element, key) {\n const referenceIds = getAriaReferenceIds(element, 'aria-describedby');\n const registeredMessage = this._messageRegistry.get(key);\n const messageId = registeredMessage && registeredMessage.messageElement.id;\n return !!messageId && referenceIds.indexOf(messageId) != -1;\n }\n /** Determines whether a message can be described on a particular element. */\n _canBeDescribed(element, message) {\n if (!this._isElementNode(element)) {\n return false;\n }\n if (message && typeof message === 'object') {\n // We'd have to make some assumptions about the description element's text, if the consumer\n // passed in an element. Assume that if an element is passed in, the consumer has verified\n // that it can be used as a description.\n return true;\n }\n const trimmedMessage = message == null ? '' : `${message}`.trim();\n const ariaLabel = element.getAttribute('aria-label');\n // We shouldn't set descriptions if they're exactly the same as the `aria-label` of the\n // element, because screen readers will end up reading out the same text twice in a row.\n return trimmedMessage ? !ariaLabel || ariaLabel.trim() !== trimmedMessage : false;\n }\n /** Checks whether a node is an Element node. */\n _isElementNode(element) {\n return element.nodeType === this._document.ELEMENT_NODE;\n }\n}\nAriaDescriber.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: AriaDescriber, deps: [{ token: DOCUMENT }, { token: i1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });\nAriaDescriber.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: AriaDescriber, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: AriaDescriber, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: i1.Platform }];\n } });\n/** Gets a key that can be used to look messages up in the registry. */\nfunction getKey(message, role) {\n return typeof message === 'string' ? `${role || ''}/${message}` : message;\n}\n/** Assigns a unique ID to an element, if it doesn't have one already. */\nfunction setMessageId(element) {\n if (!element.id) {\n element.id = `${CDK_DESCRIBEDBY_ID_PREFIX}-${nextId++}`;\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * This class manages keyboard events for selectable lists. If you pass it a query list\n * of items, it will set the active item correctly when arrow events occur.\n */\nclass ListKeyManager {\n constructor(_items) {\n this._items = _items;\n this._activeItemIndex = -1;\n this._activeItem = null;\n this._wrap = false;\n this._letterKeyStream = new Subject();\n this._typeaheadSubscription = Subscription.EMPTY;\n this._vertical = true;\n this._allowedModifierKeys = [];\n this._homeAndEnd = false;\n /**\n * Predicate function that can be used to check whether an item should be skipped\n * by the key manager. By default, disabled items are skipped.\n */\n this._skipPredicateFn = (item) => item.disabled;\n // Buffer for the letters that the user has pressed when the typeahead option is turned on.\n this._pressedLetters = [];\n /**\n * Stream that emits any time the TAB key is pressed, so components can react\n * when focus is shifted off of the list.\n */\n this.tabOut = new Subject();\n /** Stream that emits whenever the active item of the list manager changes. */\n this.change = new Subject();\n // We allow for the items to be an array because, in some cases, the consumer may\n // not have access to a QueryList of the items they want to manage (e.g. when the\n // items aren't being collected via `ViewChildren` or `ContentChildren`).\n if (_items instanceof QueryList) {\n _items.changes.subscribe((newItems) => {\n if (this._activeItem) {\n const itemArray = newItems.toArray();\n const newIndex = itemArray.indexOf(this._activeItem);\n if (newIndex > -1 && newIndex !== this._activeItemIndex) {\n this._activeItemIndex = newIndex;\n }\n }\n });\n }\n }\n /**\n * Sets the predicate function that determines which items should be skipped by the\n * list key manager.\n * @param predicate Function that determines whether the given item should be skipped.\n */\n skipPredicate(predicate) {\n this._skipPredicateFn = predicate;\n return this;\n }\n /**\n * Configures wrapping mode, which determines whether the active item will wrap to\n * the other end of list when there are no more items in the given direction.\n * @param shouldWrap Whether the list should wrap when reaching the end.\n */\n withWrap(shouldWrap = true) {\n this._wrap = shouldWrap;\n return this;\n }\n /**\n * Configures whether the key manager should be able to move the selection vertically.\n * @param enabled Whether vertical selection should be enabled.\n */\n withVerticalOrientation(enabled = true) {\n this._vertical = enabled;\n return this;\n }\n /**\n * Configures the key manager to move the selection horizontally.\n * Passing in `null` will disable horizontal movement.\n * @param direction Direction in which the selection can be moved.\n */\n withHorizontalOrientation(direction) {\n this._horizontal = direction;\n return this;\n }\n /**\n * Modifier keys which are allowed to be held down and whose default actions will be prevented\n * as the user is pressing the arrow keys. Defaults to not allowing any modifier keys.\n */\n withAllowedModifierKeys(keys) {\n this._allowedModifierKeys = keys;\n return this;\n }\n /**\n * Turns on typeahead mode which allows users to set the active item by typing.\n * @param debounceInterval Time to wait after the last keystroke before setting the active item.\n */\n withTypeAhead(debounceInterval = 200) {\n if ((typeof ngDevMode === 'undefined' || ngDevMode) &&\n this._items.length &&\n this._items.some(item => typeof item.getLabel !== 'function')) {\n throw Error('ListKeyManager items in typeahead mode must implement the `getLabel` method.');\n }\n this._typeaheadSubscription.unsubscribe();\n // Debounce the presses of non-navigational keys, collect the ones that correspond to letters\n // and convert those letters back into a string. Afterwards find the first item that starts\n // with that string and select it.\n this._typeaheadSubscription = this._letterKeyStream\n .pipe(tap(letter => this._pressedLetters.push(letter)), debounceTime(debounceInterval), filter(() => this._pressedLetters.length > 0), map(() => this._pressedLetters.join('')))\n .subscribe(inputString => {\n const items = this._getItemsArray();\n // Start at 1 because we want to start searching at the item immediately\n // following the current active item.\n for (let i = 1; i < items.length + 1; i++) {\n const index = (this._activeItemIndex + i) % items.length;\n const item = items[index];\n if (!this._skipPredicateFn(item) &&\n item.getLabel().toUpperCase().trim().indexOf(inputString) === 0) {\n this.setActiveItem(index);\n break;\n }\n }\n this._pressedLetters = [];\n });\n return this;\n }\n /**\n * Configures the key manager to activate the first and last items\n * respectively when the Home or End key is pressed.\n * @param enabled Whether pressing the Home or End key activates the first/last item.\n */\n withHomeAndEnd(enabled = true) {\n this._homeAndEnd = enabled;\n return this;\n }\n setActiveItem(item) {\n const previousActiveItem = this._activeItem;\n this.updateActiveItem(item);\n if (this._activeItem !== previousActiveItem) {\n this.change.next(this._activeItemIndex);\n }\n }\n /**\n * Sets the active item depending on the key event passed in.\n * @param event Keyboard event to be used for determining which element should be active.\n */\n onKeydown(event) {\n const keyCode = event.keyCode;\n const modifiers = ['altKey', 'ctrlKey', 'metaKey', 'shiftKey'];\n const isModifierAllowed = modifiers.every(modifier => {\n return !event[modifier] || this._allowedModifierKeys.indexOf(modifier) > -1;\n });\n switch (keyCode) {\n case TAB:\n this.tabOut.next();\n return;\n case DOWN_ARROW:\n if (this._vertical && isModifierAllowed) {\n this.setNextItemActive();\n break;\n }\n else {\n return;\n }\n case UP_ARROW:\n if (this._vertical && isModifierAllowed) {\n this.setPreviousItemActive();\n break;\n }\n else {\n return;\n }\n case RIGHT_ARROW:\n if (this._horizontal && isModifierAllowed) {\n this._horizontal === 'rtl' ? this.setPreviousItemActive() : this.setNextItemActive();\n break;\n }\n else {\n return;\n }\n case LEFT_ARROW:\n if (this._horizontal && isModifierAllowed) {\n this._horizontal === 'rtl' ? this.setNextItemActive() : this.setPreviousItemActive();\n break;\n }\n else {\n return;\n }\n case HOME:\n if (this._homeAndEnd && isModifierAllowed) {\n this.setFirstItemActive();\n break;\n }\n else {\n return;\n }\n case END:\n if (this._homeAndEnd && isModifierAllowed) {\n this.setLastItemActive();\n break;\n }\n else {\n return;\n }\n default:\n if (isModifierAllowed || hasModifierKey(event, 'shiftKey')) {\n // Attempt to use the `event.key` which also maps it to the user's keyboard language,\n // otherwise fall back to resolving alphanumeric characters via the keyCode.\n if (event.key && event.key.length === 1) {\n this._letterKeyStream.next(event.key.toLocaleUpperCase());\n }\n else if ((keyCode >= A && keyCode <= Z) || (keyCode >= ZERO && keyCode <= NINE)) {\n this._letterKeyStream.next(String.fromCharCode(keyCode));\n }\n }\n // Note that we return here, in order to avoid preventing\n // the default action of non-navigational keys.\n return;\n }\n this._pressedLetters = [];\n event.preventDefault();\n }\n /** Index of the currently active item. */\n get activeItemIndex() {\n return this._activeItemIndex;\n }\n /** The active item. */\n get activeItem() {\n return this._activeItem;\n }\n /** Gets whether the user is currently typing into the manager using the typeahead feature. */\n isTyping() {\n return this._pressedLetters.length > 0;\n }\n /** Sets the active item to the first enabled item in the list. */\n setFirstItemActive() {\n this._setActiveItemByIndex(0, 1);\n }\n /** Sets the active item to the last enabled item in the list. */\n setLastItemActive() {\n this._setActiveItemByIndex(this._items.length - 1, -1);\n }\n /** Sets the active item to the next enabled item in the list. */\n setNextItemActive() {\n this._activeItemIndex < 0 ? this.setFirstItemActive() : this._setActiveItemByDelta(1);\n }\n /** Sets the active item to a previous enabled item in the list. */\n setPreviousItemActive() {\n this._activeItemIndex < 0 && this._wrap\n ? this.setLastItemActive()\n : this._setActiveItemByDelta(-1);\n }\n updateActiveItem(item) {\n const itemArray = this._getItemsArray();\n const index = typeof item === 'number' ? item : itemArray.indexOf(item);\n const activeItem = itemArray[index];\n // Explicitly check for `null` and `undefined` because other falsy values are valid.\n this._activeItem = activeItem == null ? null : activeItem;\n this._activeItemIndex = index;\n }\n /**\n * This method sets the active item, given a list of items and the delta between the\n * currently active item and the new active item. It will calculate differently\n * depending on whether wrap mode is turned on.\n */\n _setActiveItemByDelta(delta) {\n this._wrap ? this._setActiveInWrapMode(delta) : this._setActiveInDefaultMode(delta);\n }\n /**\n * Sets the active item properly given \"wrap\" mode. In other words, it will continue to move\n * down the list until it finds an item that is not disabled, and it will wrap if it\n * encounters either end of the list.\n */\n _setActiveInWrapMode(delta) {\n const items = this._getItemsArray();\n for (let i = 1; i <= items.length; i++) {\n const index = (this._activeItemIndex + delta * i + items.length) % items.length;\n const item = items[index];\n if (!this._skipPredicateFn(item)) {\n this.setActiveItem(index);\n return;\n }\n }\n }\n /**\n * Sets the active item properly given the default mode. In other words, it will\n * continue to move down the list until it finds an item that is not disabled. If\n * it encounters either end of the list, it will stop and not wrap.\n */\n _setActiveInDefaultMode(delta) {\n this._setActiveItemByIndex(this._activeItemIndex + delta, delta);\n }\n /**\n * Sets the active item to the first enabled item starting at the index specified. If the\n * item is disabled, it will move in the fallbackDelta direction until it either\n * finds an enabled item or encounters the end of the list.\n */\n _setActiveItemByIndex(index, fallbackDelta) {\n const items = this._getItemsArray();\n if (!items[index]) {\n return;\n }\n while (this._skipPredicateFn(items[index])) {\n index += fallbackDelta;\n if (!items[index]) {\n return;\n }\n }\n this.setActiveItem(index);\n }\n /** Returns the items as an array. */\n _getItemsArray() {\n return this._items instanceof QueryList ? this._items.toArray() : this._items;\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass ActiveDescendantKeyManager extends ListKeyManager {\n setActiveItem(index) {\n if (this.activeItem) {\n this.activeItem.setInactiveStyles();\n }\n super.setActiveItem(index);\n if (this.activeItem) {\n this.activeItem.setActiveStyles();\n }\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass FocusKeyManager extends ListKeyManager {\n constructor() {\n super(...arguments);\n this._origin = 'program';\n }\n /**\n * Sets the focus origin that will be passed in to the items for any subsequent `focus` calls.\n * @param origin Focus origin to be used when focusing items.\n */\n setFocusOrigin(origin) {\n this._origin = origin;\n return this;\n }\n setActiveItem(item) {\n super.setActiveItem(item);\n if (this.activeItem) {\n this.activeItem.focus(this._origin);\n }\n }\n}\n\n/**\n * Configuration for the isFocusable method.\n */\nclass IsFocusableConfig {\n constructor() {\n /**\n * Whether to count an element as focusable even if it is not currently visible.\n */\n this.ignoreVisibility = false;\n }\n}\n// The InteractivityChecker leans heavily on the ally.js accessibility utilities.\n// Methods like `isTabbable` are only covering specific edge-cases for the browsers which are\n// supported.\n/**\n * Utility for checking the interactivity of an element, such as whether is is focusable or\n * tabbable.\n */\nclass InteractivityChecker {\n constructor(_platform) {\n this._platform = _platform;\n }\n /**\n * Gets whether an element is disabled.\n *\n * @param element Element to be checked.\n * @returns Whether the element is disabled.\n */\n isDisabled(element) {\n // This does not capture some cases, such as a non-form control with a disabled attribute or\n // a form control inside of a disabled form, but should capture the most common cases.\n return element.hasAttribute('disabled');\n }\n /**\n * Gets whether an element is visible for the purposes of interactivity.\n *\n * This will capture states like `display: none` and `visibility: hidden`, but not things like\n * being clipped by an `overflow: hidden` parent or being outside the viewport.\n *\n * @returns Whether the element is visible.\n */\n isVisible(element) {\n return hasGeometry(element) && getComputedStyle(element).visibility === 'visible';\n }\n /**\n * Gets whether an element can be reached via Tab key.\n * Assumes that the element has already been checked with isFocusable.\n *\n * @param element Element to be checked.\n * @returns Whether the element is tabbable.\n */\n isTabbable(element) {\n // Nothing is tabbable on the server 😎\n if (!this._platform.isBrowser) {\n return false;\n }\n const frameElement = getFrameElement(getWindow(element));\n if (frameElement) {\n // Frame elements inherit their tabindex onto all child elements.\n if (getTabIndexValue(frameElement) === -1) {\n return false;\n }\n // Browsers disable tabbing to an element inside of an invisible frame.\n if (!this.isVisible(frameElement)) {\n return false;\n }\n }\n let nodeName = element.nodeName.toLowerCase();\n let tabIndexValue = getTabIndexValue(element);\n if (element.hasAttribute('contenteditable')) {\n return tabIndexValue !== -1;\n }\n if (nodeName === 'iframe' || nodeName === 'object') {\n // The frame or object's content may be tabbable depending on the content, but it's\n // not possibly to reliably detect the content of the frames. We always consider such\n // elements as non-tabbable.\n return false;\n }\n // In iOS, the browser only considers some specific elements as tabbable.\n if (this._platform.WEBKIT && this._platform.IOS && !isPotentiallyTabbableIOS(element)) {\n return false;\n }\n if (nodeName === 'audio') {\n // Audio elements without controls enabled are never tabbable, regardless\n // of the tabindex attribute explicitly being set.\n if (!element.hasAttribute('controls')) {\n return false;\n }\n // Audio elements with controls are by default tabbable unless the\n // tabindex attribute is set to `-1` explicitly.\n return tabIndexValue !== -1;\n }\n if (nodeName === 'video') {\n // For all video elements, if the tabindex attribute is set to `-1`, the video\n // is not tabbable. Note: We cannot rely on the default `HTMLElement.tabIndex`\n // property as that one is set to `-1` in Chrome, Edge and Safari v13.1. The\n // tabindex attribute is the source of truth here.\n if (tabIndexValue === -1) {\n return false;\n }\n // If the tabindex is explicitly set, and not `-1` (as per check before), the\n // video element is always tabbable (regardless of whether it has controls or not).\n if (tabIndexValue !== null) {\n return true;\n }\n // Otherwise (when no explicit tabindex is set), a video is only tabbable if it\n // has controls enabled. Firefox is special as videos are always tabbable regardless\n // of whether there are controls or not.\n return this._platform.FIREFOX || element.hasAttribute('controls');\n }\n return element.tabIndex >= 0;\n }\n /**\n * Gets whether an element can be focused by the user.\n *\n * @param element Element to be checked.\n * @param config The config object with options to customize this method's behavior\n * @returns Whether the element is focusable.\n */\n isFocusable(element, config) {\n // Perform checks in order of left to most expensive.\n // Again, naive approach that does not capture many edge cases and browser quirks.\n return (isPotentiallyFocusable(element) &&\n !this.isDisabled(element) &&\n ((config === null || config === void 0 ? void 0 : config.ignoreVisibility) || this.isVisible(element)));\n }\n}\nInteractivityChecker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: InteractivityChecker, deps: [{ token: i1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });\nInteractivityChecker.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: InteractivityChecker, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: InteractivityChecker, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () { return [{ type: i1.Platform }]; } });\n/**\n * Returns the frame element from a window object. Since browsers like MS Edge throw errors if\n * the frameElement property is being accessed from a different host address, this property\n * should be accessed carefully.\n */\nfunction getFrameElement(window) {\n try {\n return window.frameElement;\n }\n catch (_a) {\n return null;\n }\n}\n/** Checks whether the specified element has any geometry / rectangles. */\nfunction hasGeometry(element) {\n // Use logic from jQuery to check for an invisible element.\n // See https://github.com/jquery/jquery/blob/master/src/css/hiddenVisibleSelectors.js#L12\n return !!(element.offsetWidth ||\n element.offsetHeight ||\n (typeof element.getClientRects === 'function' && element.getClientRects().length));\n}\n/** Gets whether an element's */\nfunction isNativeFormElement(element) {\n let nodeName = element.nodeName.toLowerCase();\n return (nodeName === 'input' ||\n nodeName === 'select' ||\n nodeName === 'button' ||\n nodeName === 'textarea');\n}\n/** Gets whether an element is an ``. */\nfunction isHiddenInput(element) {\n return isInputElement(element) && element.type == 'hidden';\n}\n/** Gets whether an element is an anchor that has an href attribute. */\nfunction isAnchorWithHref(element) {\n return isAnchorElement(element) && element.hasAttribute('href');\n}\n/** Gets whether an element is an input element. */\nfunction isInputElement(element) {\n return element.nodeName.toLowerCase() == 'input';\n}\n/** Gets whether an element is an anchor element. */\nfunction isAnchorElement(element) {\n return element.nodeName.toLowerCase() == 'a';\n}\n/** Gets whether an element has a valid tabindex. */\nfunction hasValidTabIndex(element) {\n if (!element.hasAttribute('tabindex') || element.tabIndex === undefined) {\n return false;\n }\n let tabIndex = element.getAttribute('tabindex');\n return !!(tabIndex && !isNaN(parseInt(tabIndex, 10)));\n}\n/**\n * Returns the parsed tabindex from the element attributes instead of returning the\n * evaluated tabindex from the browsers defaults.\n */\nfunction getTabIndexValue(element) {\n if (!hasValidTabIndex(element)) {\n return null;\n }\n // See browser issue in Gecko https://bugzilla.mozilla.org/show_bug.cgi?id=1128054\n const tabIndex = parseInt(element.getAttribute('tabindex') || '', 10);\n return isNaN(tabIndex) ? -1 : tabIndex;\n}\n/** Checks whether the specified element is potentially tabbable on iOS */\nfunction isPotentiallyTabbableIOS(element) {\n let nodeName = element.nodeName.toLowerCase();\n let inputType = nodeName === 'input' && element.type;\n return (inputType === 'text' ||\n inputType === 'password' ||\n nodeName === 'select' ||\n nodeName === 'textarea');\n}\n/**\n * Gets whether an element is potentially focusable without taking current visible/disabled state\n * into account.\n */\nfunction isPotentiallyFocusable(element) {\n // Inputs are potentially focusable *unless* they're type=\"hidden\".\n if (isHiddenInput(element)) {\n return false;\n }\n return (isNativeFormElement(element) ||\n isAnchorWithHref(element) ||\n element.hasAttribute('contenteditable') ||\n hasValidTabIndex(element));\n}\n/** Gets the parent window of a DOM node with regards of being inside of an iframe. */\nfunction getWindow(node) {\n // ownerDocument is null if `node` itself *is* a document.\n return (node.ownerDocument && node.ownerDocument.defaultView) || window;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Class that allows for trapping focus within a DOM element.\n *\n * This class currently uses a relatively simple approach to focus trapping.\n * It assumes that the tab order is the same as DOM order, which is not necessarily true.\n * Things like `tabIndex > 0`, flex `order`, and shadow roots can cause the two to be misaligned.\n *\n * @deprecated Use `ConfigurableFocusTrap` instead.\n * @breaking-change 11.0.0\n */\nclass FocusTrap {\n constructor(_element, _checker, _ngZone, _document, deferAnchors = false) {\n this._element = _element;\n this._checker = _checker;\n this._ngZone = _ngZone;\n this._document = _document;\n this._hasAttached = false;\n // Event listeners for the anchors. Need to be regular functions so that we can unbind them later.\n this.startAnchorListener = () => this.focusLastTabbableElement();\n this.endAnchorListener = () => this.focusFirstTabbableElement();\n this._enabled = true;\n if (!deferAnchors) {\n this.attachAnchors();\n }\n }\n /** Whether the focus trap is active. */\n get enabled() {\n return this._enabled;\n }\n set enabled(value) {\n this._enabled = value;\n if (this._startAnchor && this._endAnchor) {\n this._toggleAnchorTabIndex(value, this._startAnchor);\n this._toggleAnchorTabIndex(value, this._endAnchor);\n }\n }\n /** Destroys the focus trap by cleaning up the anchors. */\n destroy() {\n const startAnchor = this._startAnchor;\n const endAnchor = this._endAnchor;\n if (startAnchor) {\n startAnchor.removeEventListener('focus', this.startAnchorListener);\n startAnchor.remove();\n }\n if (endAnchor) {\n endAnchor.removeEventListener('focus', this.endAnchorListener);\n endAnchor.remove();\n }\n this._startAnchor = this._endAnchor = null;\n this._hasAttached = false;\n }\n /**\n * Inserts the anchors into the DOM. This is usually done automatically\n * in the constructor, but can be deferred for cases like directives with `*ngIf`.\n * @returns Whether the focus trap managed to attach successfully. This may not be the case\n * if the target element isn't currently in the DOM.\n */\n attachAnchors() {\n // If we're not on the browser, there can be no focus to trap.\n if (this._hasAttached) {\n return true;\n }\n this._ngZone.runOutsideAngular(() => {\n if (!this._startAnchor) {\n this._startAnchor = this._createAnchor();\n this._startAnchor.addEventListener('focus', this.startAnchorListener);\n }\n if (!this._endAnchor) {\n this._endAnchor = this._createAnchor();\n this._endAnchor.addEventListener('focus', this.endAnchorListener);\n }\n });\n if (this._element.parentNode) {\n this._element.parentNode.insertBefore(this._startAnchor, this._element);\n this._element.parentNode.insertBefore(this._endAnchor, this._element.nextSibling);\n this._hasAttached = true;\n }\n return this._hasAttached;\n }\n /**\n * Waits for the zone to stabilize, then focuses the first tabbable element.\n * @returns Returns a promise that resolves with a boolean, depending\n * on whether focus was moved successfully.\n */\n focusInitialElementWhenReady(options) {\n return new Promise(resolve => {\n this._executeOnStable(() => resolve(this.focusInitialElement(options)));\n });\n }\n /**\n * Waits for the zone to stabilize, then focuses\n * the first tabbable element within the focus trap region.\n * @returns Returns a promise that resolves with a boolean, depending\n * on whether focus was moved successfully.\n */\n focusFirstTabbableElementWhenReady(options) {\n return new Promise(resolve => {\n this._executeOnStable(() => resolve(this.focusFirstTabbableElement(options)));\n });\n }\n /**\n * Waits for the zone to stabilize, then focuses\n * the last tabbable element within the focus trap region.\n * @returns Returns a promise that resolves with a boolean, depending\n * on whether focus was moved successfully.\n */\n focusLastTabbableElementWhenReady(options) {\n return new Promise(resolve => {\n this._executeOnStable(() => resolve(this.focusLastTabbableElement(options)));\n });\n }\n /**\n * Get the specified boundary element of the trapped region.\n * @param bound The boundary to get (start or end of trapped region).\n * @returns The boundary element.\n */\n _getRegionBoundary(bound) {\n // Contains the deprecated version of selector, for temporary backwards comparability.\n const markers = this._element.querySelectorAll(`[cdk-focus-region-${bound}], ` + `[cdkFocusRegion${bound}], ` + `[cdk-focus-${bound}]`);\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n for (let i = 0; i < markers.length; i++) {\n // @breaking-change 8.0.0\n if (markers[i].hasAttribute(`cdk-focus-${bound}`)) {\n console.warn(`Found use of deprecated attribute 'cdk-focus-${bound}', ` +\n `use 'cdkFocusRegion${bound}' instead. The deprecated ` +\n `attribute will be removed in 8.0.0.`, markers[i]);\n }\n else if (markers[i].hasAttribute(`cdk-focus-region-${bound}`)) {\n console.warn(`Found use of deprecated attribute 'cdk-focus-region-${bound}', ` +\n `use 'cdkFocusRegion${bound}' instead. The deprecated attribute ` +\n `will be removed in 8.0.0.`, markers[i]);\n }\n }\n }\n if (bound == 'start') {\n return markers.length ? markers[0] : this._getFirstTabbableElement(this._element);\n }\n return markers.length\n ? markers[markers.length - 1]\n : this._getLastTabbableElement(this._element);\n }\n /**\n * Focuses the element that should be focused when the focus trap is initialized.\n * @returns Whether focus was moved successfully.\n */\n focusInitialElement(options) {\n // Contains the deprecated version of selector, for temporary backwards comparability.\n const redirectToElement = this._element.querySelector(`[cdk-focus-initial], ` + `[cdkFocusInitial]`);\n if (redirectToElement) {\n // @breaking-change 8.0.0\n if ((typeof ngDevMode === 'undefined' || ngDevMode) &&\n redirectToElement.hasAttribute(`cdk-focus-initial`)) {\n console.warn(`Found use of deprecated attribute 'cdk-focus-initial', ` +\n `use 'cdkFocusInitial' instead. The deprecated attribute ` +\n `will be removed in 8.0.0`, redirectToElement);\n }\n // Warn the consumer if the element they've pointed to\n // isn't focusable, when not in production mode.\n if ((typeof ngDevMode === 'undefined' || ngDevMode) &&\n !this._checker.isFocusable(redirectToElement)) {\n console.warn(`Element matching '[cdkFocusInitial]' is not focusable.`, redirectToElement);\n }\n if (!this._checker.isFocusable(redirectToElement)) {\n const focusableChild = this._getFirstTabbableElement(redirectToElement);\n focusableChild === null || focusableChild === void 0 ? void 0 : focusableChild.focus(options);\n return !!focusableChild;\n }\n redirectToElement.focus(options);\n return true;\n }\n return this.focusFirstTabbableElement(options);\n }\n /**\n * Focuses the first tabbable element within the focus trap region.\n * @returns Whether focus was moved successfully.\n */\n focusFirstTabbableElement(options) {\n const redirectToElement = this._getRegionBoundary('start');\n if (redirectToElement) {\n redirectToElement.focus(options);\n }\n return !!redirectToElement;\n }\n /**\n * Focuses the last tabbable element within the focus trap region.\n * @returns Whether focus was moved successfully.\n */\n focusLastTabbableElement(options) {\n const redirectToElement = this._getRegionBoundary('end');\n if (redirectToElement) {\n redirectToElement.focus(options);\n }\n return !!redirectToElement;\n }\n /**\n * Checks whether the focus trap has successfully been attached.\n */\n hasAttached() {\n return this._hasAttached;\n }\n /** Get the first tabbable element from a DOM subtree (inclusive). */\n _getFirstTabbableElement(root) {\n if (this._checker.isFocusable(root) && this._checker.isTabbable(root)) {\n return root;\n }\n const children = root.children;\n for (let i = 0; i < children.length; i++) {\n const tabbableChild = children[i].nodeType === this._document.ELEMENT_NODE\n ? this._getFirstTabbableElement(children[i])\n : null;\n if (tabbableChild) {\n return tabbableChild;\n }\n }\n return null;\n }\n /** Get the last tabbable element from a DOM subtree (inclusive). */\n _getLastTabbableElement(root) {\n if (this._checker.isFocusable(root) && this._checker.isTabbable(root)) {\n return root;\n }\n // Iterate in reverse DOM order.\n const children = root.children;\n for (let i = children.length - 1; i >= 0; i--) {\n const tabbableChild = children[i].nodeType === this._document.ELEMENT_NODE\n ? this._getLastTabbableElement(children[i])\n : null;\n if (tabbableChild) {\n return tabbableChild;\n }\n }\n return null;\n }\n /** Creates an anchor element. */\n _createAnchor() {\n const anchor = this._document.createElement('div');\n this._toggleAnchorTabIndex(this._enabled, anchor);\n anchor.classList.add('cdk-visually-hidden');\n anchor.classList.add('cdk-focus-trap-anchor');\n anchor.setAttribute('aria-hidden', 'true');\n return anchor;\n }\n /**\n * Toggles the `tabindex` of an anchor, based on the enabled state of the focus trap.\n * @param isEnabled Whether the focus trap is enabled.\n * @param anchor Anchor on which to toggle the tabindex.\n */\n _toggleAnchorTabIndex(isEnabled, anchor) {\n // Remove the tabindex completely, rather than setting it to -1, because if the\n // element has a tabindex, the user might still hit it when navigating with the arrow keys.\n isEnabled ? anchor.setAttribute('tabindex', '0') : anchor.removeAttribute('tabindex');\n }\n /**\n * Toggles the`tabindex` of both anchors to either trap Tab focus or allow it to escape.\n * @param enabled: Whether the anchors should trap Tab.\n */\n toggleAnchors(enabled) {\n if (this._startAnchor && this._endAnchor) {\n this._toggleAnchorTabIndex(enabled, this._startAnchor);\n this._toggleAnchorTabIndex(enabled, this._endAnchor);\n }\n }\n /** Executes a function when the zone is stable. */\n _executeOnStable(fn) {\n if (this._ngZone.isStable) {\n fn();\n }\n else {\n this._ngZone.onStable.pipe(take(1)).subscribe(fn);\n }\n }\n}\n/**\n * Factory that allows easy instantiation of focus traps.\n * @deprecated Use `ConfigurableFocusTrapFactory` instead.\n * @breaking-change 11.0.0\n */\nclass FocusTrapFactory {\n constructor(_checker, _ngZone, _document) {\n this._checker = _checker;\n this._ngZone = _ngZone;\n this._document = _document;\n }\n /**\n * Creates a focus-trapped region around the given element.\n * @param element The element around which focus will be trapped.\n * @param deferCaptureElements Defers the creation of focus-capturing elements to be done\n * manually by the user.\n * @returns The created focus trap instance.\n */\n create(element, deferCaptureElements = false) {\n return new FocusTrap(element, this._checker, this._ngZone, this._document, deferCaptureElements);\n }\n}\nFocusTrapFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FocusTrapFactory, deps: [{ token: InteractivityChecker }, { token: i0.NgZone }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });\nFocusTrapFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FocusTrapFactory, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FocusTrapFactory, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: InteractivityChecker }, { type: i0.NgZone }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }];\n } });\n/** Directive for trapping focus within a region. */\nclass CdkTrapFocus {\n constructor(_elementRef, _focusTrapFactory, \n /**\n * @deprecated No longer being used. To be removed.\n * @breaking-change 13.0.0\n */\n _document) {\n this._elementRef = _elementRef;\n this._focusTrapFactory = _focusTrapFactory;\n /** Previously focused element to restore focus to upon destroy when using autoCapture. */\n this._previouslyFocusedElement = null;\n this.focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement, true);\n }\n /** Whether the focus trap is active. */\n get enabled() {\n return this.focusTrap.enabled;\n }\n set enabled(value) {\n this.focusTrap.enabled = coerceBooleanProperty(value);\n }\n /**\n * Whether the directive should automatically move focus into the trapped region upon\n * initialization and return focus to the previous activeElement upon destruction.\n */\n get autoCapture() {\n return this._autoCapture;\n }\n set autoCapture(value) {\n this._autoCapture = coerceBooleanProperty(value);\n }\n ngOnDestroy() {\n this.focusTrap.destroy();\n // If we stored a previously focused element when using autoCapture, return focus to that\n // element now that the trapped region is being destroyed.\n if (this._previouslyFocusedElement) {\n this._previouslyFocusedElement.focus();\n this._previouslyFocusedElement = null;\n }\n }\n ngAfterContentInit() {\n this.focusTrap.attachAnchors();\n if (this.autoCapture) {\n this._captureFocus();\n }\n }\n ngDoCheck() {\n if (!this.focusTrap.hasAttached()) {\n this.focusTrap.attachAnchors();\n }\n }\n ngOnChanges(changes) {\n const autoCaptureChange = changes['autoCapture'];\n if (autoCaptureChange &&\n !autoCaptureChange.firstChange &&\n this.autoCapture &&\n this.focusTrap.hasAttached()) {\n this._captureFocus();\n }\n }\n _captureFocus() {\n this._previouslyFocusedElement = _getFocusedElementPierceShadowDom();\n this.focusTrap.focusInitialElementWhenReady();\n }\n}\nCdkTrapFocus.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkTrapFocus, deps: [{ token: i0.ElementRef }, { token: FocusTrapFactory }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });\nCdkTrapFocus.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkTrapFocus, selector: \"[cdkTrapFocus]\", inputs: { enabled: [\"cdkTrapFocus\", \"enabled\"], autoCapture: [\"cdkTrapFocusAutoCapture\", \"autoCapture\"] }, exportAs: [\"cdkTrapFocus\"], usesOnChanges: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkTrapFocus, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdkTrapFocus]',\n exportAs: 'cdkTrapFocus',\n }]\n }], ctorParameters: function () {\n return [{ type: i0.ElementRef }, { type: FocusTrapFactory }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }];\n }, propDecorators: { enabled: [{\n type: Input,\n args: ['cdkTrapFocus']\n }], autoCapture: [{\n type: Input,\n args: ['cdkTrapFocusAutoCapture']\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Class that allows for trapping focus within a DOM element.\n *\n * This class uses a strategy pattern that determines how it traps focus.\n * See FocusTrapInertStrategy.\n */\nclass ConfigurableFocusTrap extends FocusTrap {\n constructor(_element, _checker, _ngZone, _document, _focusTrapManager, _inertStrategy, config) {\n super(_element, _checker, _ngZone, _document, config.defer);\n this._focusTrapManager = _focusTrapManager;\n this._inertStrategy = _inertStrategy;\n this._focusTrapManager.register(this);\n }\n /** Whether the FocusTrap is enabled. */\n get enabled() {\n return this._enabled;\n }\n set enabled(value) {\n this._enabled = value;\n if (this._enabled) {\n this._focusTrapManager.register(this);\n }\n else {\n this._focusTrapManager.deregister(this);\n }\n }\n /** Notifies the FocusTrapManager that this FocusTrap will be destroyed. */\n destroy() {\n this._focusTrapManager.deregister(this);\n super.destroy();\n }\n /** @docs-private Implemented as part of ManagedFocusTrap. */\n _enable() {\n this._inertStrategy.preventFocus(this);\n this.toggleAnchors(true);\n }\n /** @docs-private Implemented as part of ManagedFocusTrap. */\n _disable() {\n this._inertStrategy.allowFocus(this);\n this.toggleAnchors(false);\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** The injection token used to specify the inert strategy. */\nconst FOCUS_TRAP_INERT_STRATEGY = new InjectionToken('FOCUS_TRAP_INERT_STRATEGY');\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Lightweight FocusTrapInertStrategy that adds a document focus event\n * listener to redirect focus back inside the FocusTrap.\n */\nclass EventListenerFocusTrapInertStrategy {\n constructor() {\n /** Focus event handler. */\n this._listener = null;\n }\n /** Adds a document event listener that keeps focus inside the FocusTrap. */\n preventFocus(focusTrap) {\n // Ensure there's only one listener per document\n if (this._listener) {\n focusTrap._document.removeEventListener('focus', this._listener, true);\n }\n this._listener = (e) => this._trapFocus(focusTrap, e);\n focusTrap._ngZone.runOutsideAngular(() => {\n focusTrap._document.addEventListener('focus', this._listener, true);\n });\n }\n /** Removes the event listener added in preventFocus. */\n allowFocus(focusTrap) {\n if (!this._listener) {\n return;\n }\n focusTrap._document.removeEventListener('focus', this._listener, true);\n this._listener = null;\n }\n /**\n * Refocuses the first element in the FocusTrap if the focus event target was outside\n * the FocusTrap.\n *\n * This is an event listener callback. The event listener is added in runOutsideAngular,\n * so all this code runs outside Angular as well.\n */\n _trapFocus(focusTrap, event) {\n var _a;\n const target = event.target;\n const focusTrapRoot = focusTrap._element;\n // Don't refocus if target was in an overlay, because the overlay might be associated\n // with an element inside the FocusTrap, ex. mat-select.\n if (target && !focusTrapRoot.contains(target) && !((_a = target.closest) === null || _a === void 0 ? void 0 : _a.call(target, 'div.cdk-overlay-pane'))) {\n // Some legacy FocusTrap usages have logic that focuses some element on the page\n // just before FocusTrap is destroyed. For backwards compatibility, wait\n // to be sure FocusTrap is still enabled before refocusing.\n setTimeout(() => {\n // Check whether focus wasn't put back into the focus trap while the timeout was pending.\n if (focusTrap.enabled && !focusTrapRoot.contains(focusTrap._document.activeElement)) {\n focusTrap.focusFirstTabbableElement();\n }\n });\n }\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Injectable that ensures only the most recently enabled FocusTrap is active. */\nclass FocusTrapManager {\n constructor() {\n // A stack of the FocusTraps on the page. Only the FocusTrap at the\n // top of the stack is active.\n this._focusTrapStack = [];\n }\n /**\n * Disables the FocusTrap at the top of the stack, and then pushes\n * the new FocusTrap onto the stack.\n */\n register(focusTrap) {\n // Dedupe focusTraps that register multiple times.\n this._focusTrapStack = this._focusTrapStack.filter(ft => ft !== focusTrap);\n let stack = this._focusTrapStack;\n if (stack.length) {\n stack[stack.length - 1]._disable();\n }\n stack.push(focusTrap);\n focusTrap._enable();\n }\n /**\n * Removes the FocusTrap from the stack, and activates the\n * FocusTrap that is the new top of the stack.\n */\n deregister(focusTrap) {\n focusTrap._disable();\n const stack = this._focusTrapStack;\n const i = stack.indexOf(focusTrap);\n if (i !== -1) {\n stack.splice(i, 1);\n if (stack.length) {\n stack[stack.length - 1]._enable();\n }\n }\n }\n}\nFocusTrapManager.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FocusTrapManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nFocusTrapManager.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FocusTrapManager, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FocusTrapManager, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Factory that allows easy instantiation of configurable focus traps. */\nclass ConfigurableFocusTrapFactory {\n constructor(_checker, _ngZone, _focusTrapManager, _document, _inertStrategy) {\n this._checker = _checker;\n this._ngZone = _ngZone;\n this._focusTrapManager = _focusTrapManager;\n this._document = _document;\n // TODO split up the strategies into different modules, similar to DateAdapter.\n this._inertStrategy = _inertStrategy || new EventListenerFocusTrapInertStrategy();\n }\n create(element, config = { defer: false }) {\n let configObject;\n if (typeof config === 'boolean') {\n configObject = { defer: config };\n }\n else {\n configObject = config;\n }\n return new ConfigurableFocusTrap(element, this._checker, this._ngZone, this._document, this._focusTrapManager, this._inertStrategy, configObject);\n }\n}\nConfigurableFocusTrapFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ConfigurableFocusTrapFactory, deps: [{ token: InteractivityChecker }, { token: i0.NgZone }, { token: FocusTrapManager }, { token: DOCUMENT }, { token: FOCUS_TRAP_INERT_STRATEGY, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nConfigurableFocusTrapFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ConfigurableFocusTrapFactory, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ConfigurableFocusTrapFactory, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: InteractivityChecker }, { type: i0.NgZone }, { type: FocusTrapManager }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [FOCUS_TRAP_INERT_STRATEGY]\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Gets whether an event could be a faked `mousedown` event dispatched by a screen reader. */\nfunction isFakeMousedownFromScreenReader(event) {\n // Some screen readers will dispatch a fake `mousedown` event when pressing enter or space on\n // a clickable element. We can distinguish these events when both `offsetX` and `offsetY` are\n // zero or `event.buttons` is zero, depending on the browser:\n // - `event.buttons` works on Firefox, but fails on Chrome.\n // - `offsetX` and `offsetY` work on Chrome, but fail on Firefox.\n // Note that there's an edge case where the user could click the 0x0 spot of the\n // screen themselves, but that is unlikely to contain interactive elements.\n return event.buttons === 0 || (event.offsetX === 0 && event.offsetY === 0);\n}\n/** Gets whether an event could be a faked `touchstart` event dispatched by a screen reader. */\nfunction isFakeTouchstartFromScreenReader(event) {\n const touch = (event.touches && event.touches[0]) || (event.changedTouches && event.changedTouches[0]);\n // A fake `touchstart` can be distinguished from a real one by looking at the `identifier`\n // which is typically >= 0 on a real device versus -1 from a screen reader. Just to be safe,\n // we can also look at `radiusX` and `radiusY`. This behavior was observed against a Windows 10\n // device with a touch screen running NVDA v2020.4 and Firefox 85 or Chrome 88.\n return (!!touch &&\n touch.identifier === -1 &&\n (touch.radiusX == null || touch.radiusX === 1) &&\n (touch.radiusY == null || touch.radiusY === 1));\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Injectable options for the InputModalityDetector. These are shallowly merged with the default\n * options.\n */\nconst INPUT_MODALITY_DETECTOR_OPTIONS = new InjectionToken('cdk-input-modality-detector-options');\n/**\n * Default options for the InputModalityDetector.\n *\n * Modifier keys are ignored by default (i.e. when pressed won't cause the service to detect\n * keyboard input modality) for two reasons:\n *\n * 1. Modifier keys are commonly used with mouse to perform actions such as 'right click' or 'open\n * in new tab', and are thus less representative of actual keyboard interaction.\n * 2. VoiceOver triggers some keyboard events when linearly navigating with Control + Option (but\n * confusingly not with Caps Lock). Thus, to have parity with other screen readers, we ignore\n * these keys so as to not update the input modality.\n *\n * Note that we do not by default ignore the right Meta key on Safari because it has the same key\n * code as the ContextMenu key on other browsers. When we switch to using event.key, we can\n * distinguish between the two.\n */\nconst INPUT_MODALITY_DETECTOR_DEFAULT_OPTIONS = {\n ignoreKeys: [ALT, CONTROL, MAC_META, META, SHIFT],\n};\n/**\n * The amount of time needed to pass after a touchstart event in order for a subsequent mousedown\n * event to be attributed as mouse and not touch.\n *\n * This is the value used by AngularJS Material. Through trial and error (on iPhone 6S) they found\n * that a value of around 650ms seems appropriate.\n */\nconst TOUCH_BUFFER_MS = 650;\n/**\n * Event listener options that enable capturing and also mark the listener as passive if the browser\n * supports it.\n */\nconst modalityEventListenerOptions = normalizePassiveListenerOptions({\n passive: true,\n capture: true,\n});\n/**\n * Service that detects the user's input modality.\n *\n * This service does not update the input modality when a user navigates with a screen reader\n * (e.g. linear navigation with VoiceOver, object navigation / browse mode with NVDA, virtual PC\n * cursor mode with JAWS). This is in part due to technical limitations (i.e. keyboard events do not\n * fire as expected in these modes) but is also arguably the correct behavior. Navigating with a\n * screen reader is akin to visually scanning a page, and should not be interpreted as actual user\n * input interaction.\n *\n * When a user is not navigating but *interacting* with a screen reader, this service attempts to\n * update the input modality to keyboard, but in general this service's behavior is largely\n * undefined.\n */\nclass InputModalityDetector {\n constructor(_platform, ngZone, document, options) {\n this._platform = _platform;\n /**\n * The most recently detected input modality event target. Is null if no input modality has been\n * detected or if the associated event target is null for some unknown reason.\n */\n this._mostRecentTarget = null;\n /** The underlying BehaviorSubject that emits whenever an input modality is detected. */\n this._modality = new BehaviorSubject(null);\n /**\n * The timestamp of the last touch input modality. Used to determine whether mousedown events\n * should be attributed to mouse or touch.\n */\n this._lastTouchMs = 0;\n /**\n * Handles keydown events. Must be an arrow function in order to preserve the context when it gets\n * bound.\n */\n this._onKeydown = (event) => {\n var _a, _b;\n // If this is one of the keys we should ignore, then ignore it and don't update the input\n // modality to keyboard.\n if ((_b = (_a = this._options) === null || _a === void 0 ? void 0 : _a.ignoreKeys) === null || _b === void 0 ? void 0 : _b.some(keyCode => keyCode === event.keyCode)) {\n return;\n }\n this._modality.next('keyboard');\n this._mostRecentTarget = _getEventTarget(event);\n };\n /**\n * Handles mousedown events. Must be an arrow function in order to preserve the context when it\n * gets bound.\n */\n this._onMousedown = (event) => {\n // Touches trigger both touch and mouse events, so we need to distinguish between mouse events\n // that were triggered via mouse vs touch. To do so, check if the mouse event occurs closely\n // after the previous touch event.\n if (Date.now() - this._lastTouchMs < TOUCH_BUFFER_MS) {\n return;\n }\n // Fake mousedown events are fired by some screen readers when controls are activated by the\n // screen reader. Attribute them to keyboard input modality.\n this._modality.next(isFakeMousedownFromScreenReader(event) ? 'keyboard' : 'mouse');\n this._mostRecentTarget = _getEventTarget(event);\n };\n /**\n * Handles touchstart events. Must be an arrow function in order to preserve the context when it\n * gets bound.\n */\n this._onTouchstart = (event) => {\n // Same scenario as mentioned in _onMousedown, but on touch screen devices, fake touchstart\n // events are fired. Again, attribute to keyboard input modality.\n if (isFakeTouchstartFromScreenReader(event)) {\n this._modality.next('keyboard');\n return;\n }\n // Store the timestamp of this touch event, as it's used to distinguish between mouse events\n // triggered via mouse vs touch.\n this._lastTouchMs = Date.now();\n this._modality.next('touch');\n this._mostRecentTarget = _getEventTarget(event);\n };\n this._options = Object.assign(Object.assign({}, INPUT_MODALITY_DETECTOR_DEFAULT_OPTIONS), options);\n // Skip the first emission as it's null.\n this.modalityDetected = this._modality.pipe(skip(1));\n this.modalityChanged = this.modalityDetected.pipe(distinctUntilChanged());\n // If we're not in a browser, this service should do nothing, as there's no relevant input\n // modality to detect.\n if (_platform.isBrowser) {\n ngZone.runOutsideAngular(() => {\n document.addEventListener('keydown', this._onKeydown, modalityEventListenerOptions);\n document.addEventListener('mousedown', this._onMousedown, modalityEventListenerOptions);\n document.addEventListener('touchstart', this._onTouchstart, modalityEventListenerOptions);\n });\n }\n }\n /** The most recently detected input modality. */\n get mostRecentModality() {\n return this._modality.value;\n }\n ngOnDestroy() {\n this._modality.complete();\n if (this._platform.isBrowser) {\n document.removeEventListener('keydown', this._onKeydown, modalityEventListenerOptions);\n document.removeEventListener('mousedown', this._onMousedown, modalityEventListenerOptions);\n document.removeEventListener('touchstart', this._onTouchstart, modalityEventListenerOptions);\n }\n }\n}\nInputModalityDetector.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: InputModalityDetector, deps: [{ token: i1.Platform }, { token: i0.NgZone }, { token: DOCUMENT }, { token: INPUT_MODALITY_DETECTOR_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nInputModalityDetector.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: InputModalityDetector, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: InputModalityDetector, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: i1.Platform }, { type: i0.NgZone }, { type: Document, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [INPUT_MODALITY_DETECTOR_OPTIONS]\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst LIVE_ANNOUNCER_ELEMENT_TOKEN = new InjectionToken('liveAnnouncerElement', {\n providedIn: 'root',\n factory: LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY,\n});\n/** @docs-private */\nfunction LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY() {\n return null;\n}\n/** Injection token that can be used to configure the default options for the LiveAnnouncer. */\nconst LIVE_ANNOUNCER_DEFAULT_OPTIONS = new InjectionToken('LIVE_ANNOUNCER_DEFAULT_OPTIONS');\n\nclass LiveAnnouncer {\n constructor(elementToken, _ngZone, _document, _defaultOptions) {\n this._ngZone = _ngZone;\n this._defaultOptions = _defaultOptions;\n // We inject the live element and document as `any` because the constructor signature cannot\n // reference browser globals (HTMLElement, Document) on non-browser environments, since having\n // a class decorator causes TypeScript to preserve the constructor signature types.\n this._document = _document;\n this._liveElement = elementToken || this._createLiveElement();\n }\n announce(message, ...args) {\n const defaultOptions = this._defaultOptions;\n let politeness;\n let duration;\n if (args.length === 1 && typeof args[0] === 'number') {\n duration = args[0];\n }\n else {\n [politeness, duration] = args;\n }\n this.clear();\n clearTimeout(this._previousTimeout);\n if (!politeness) {\n politeness =\n defaultOptions && defaultOptions.politeness ? defaultOptions.politeness : 'polite';\n }\n if (duration == null && defaultOptions) {\n duration = defaultOptions.duration;\n }\n // TODO: ensure changing the politeness works on all environments we support.\n this._liveElement.setAttribute('aria-live', politeness);\n // This 100ms timeout is necessary for some browser + screen-reader combinations:\n // - Both JAWS and NVDA over IE11 will not announce anything without a non-zero timeout.\n // - With Chrome and IE11 with NVDA or JAWS, a repeated (identical) message won't be read a\n // second time without clearing and then using a non-zero delay.\n // (using JAWS 17 at time of this writing).\n return this._ngZone.runOutsideAngular(() => {\n if (!this._currentPromise) {\n this._currentPromise = new Promise(resolve => (this._currentResolve = resolve));\n }\n clearTimeout(this._previousTimeout);\n this._previousTimeout = setTimeout(() => {\n this._liveElement.textContent = message;\n if (typeof duration === 'number') {\n this._previousTimeout = setTimeout(() => this.clear(), duration);\n }\n this._currentResolve();\n this._currentPromise = this._currentResolve = undefined;\n }, 100);\n return this._currentPromise;\n });\n }\n /**\n * Clears the current text from the announcer element. Can be used to prevent\n * screen readers from reading the text out again while the user is going\n * through the page landmarks.\n */\n clear() {\n if (this._liveElement) {\n this._liveElement.textContent = '';\n }\n }\n ngOnDestroy() {\n var _a, _b;\n clearTimeout(this._previousTimeout);\n (_a = this._liveElement) === null || _a === void 0 ? void 0 : _a.remove();\n this._liveElement = null;\n (_b = this._currentResolve) === null || _b === void 0 ? void 0 : _b.call(this);\n this._currentPromise = this._currentResolve = undefined;\n }\n _createLiveElement() {\n const elementClass = 'cdk-live-announcer-element';\n const previousElements = this._document.getElementsByClassName(elementClass);\n const liveEl = this._document.createElement('div');\n // Remove any old containers. This can happen when coming in from a server-side-rendered page.\n for (let i = 0; i < previousElements.length; i++) {\n previousElements[i].remove();\n }\n liveEl.classList.add(elementClass);\n liveEl.classList.add('cdk-visually-hidden');\n liveEl.setAttribute('aria-atomic', 'true');\n liveEl.setAttribute('aria-live', 'polite');\n this._document.body.appendChild(liveEl);\n return liveEl;\n }\n}\nLiveAnnouncer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LiveAnnouncer, deps: [{ token: LIVE_ANNOUNCER_ELEMENT_TOKEN, optional: true }, { token: i0.NgZone }, { token: DOCUMENT }, { token: LIVE_ANNOUNCER_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nLiveAnnouncer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LiveAnnouncer, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LiveAnnouncer, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [LIVE_ANNOUNCER_ELEMENT_TOKEN]\n }] }, { type: i0.NgZone }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [LIVE_ANNOUNCER_DEFAULT_OPTIONS]\n }] }];\n } });\n/**\n * A directive that works similarly to aria-live, but uses the LiveAnnouncer to ensure compatibility\n * with a wider range of browsers and screen readers.\n */\nclass CdkAriaLive {\n constructor(_elementRef, _liveAnnouncer, _contentObserver, _ngZone) {\n this._elementRef = _elementRef;\n this._liveAnnouncer = _liveAnnouncer;\n this._contentObserver = _contentObserver;\n this._ngZone = _ngZone;\n this._politeness = 'polite';\n }\n /** The aria-live politeness level to use when announcing messages. */\n get politeness() {\n return this._politeness;\n }\n set politeness(value) {\n this._politeness = value === 'off' || value === 'assertive' ? value : 'polite';\n if (this._politeness === 'off') {\n if (this._subscription) {\n this._subscription.unsubscribe();\n this._subscription = null;\n }\n }\n else if (!this._subscription) {\n this._subscription = this._ngZone.runOutsideAngular(() => {\n return this._contentObserver.observe(this._elementRef).subscribe(() => {\n // Note that we use textContent here, rather than innerText, in order to avoid a reflow.\n const elementText = this._elementRef.nativeElement.textContent;\n // The `MutationObserver` fires also for attribute\n // changes which we don't want to announce.\n if (elementText !== this._previousAnnouncedText) {\n this._liveAnnouncer.announce(elementText, this._politeness);\n this._previousAnnouncedText = elementText;\n }\n });\n });\n }\n }\n ngOnDestroy() {\n if (this._subscription) {\n this._subscription.unsubscribe();\n }\n }\n}\nCdkAriaLive.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkAriaLive, deps: [{ token: i0.ElementRef }, { token: LiveAnnouncer }, { token: i1$1.ContentObserver }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\nCdkAriaLive.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkAriaLive, selector: \"[cdkAriaLive]\", inputs: { politeness: [\"cdkAriaLive\", \"politeness\"] }, exportAs: [\"cdkAriaLive\"], ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkAriaLive, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdkAriaLive]',\n exportAs: 'cdkAriaLive',\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: LiveAnnouncer }, { type: i1$1.ContentObserver }, { type: i0.NgZone }]; }, propDecorators: { politeness: [{\n type: Input,\n args: ['cdkAriaLive']\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** InjectionToken for FocusMonitorOptions. */\nconst FOCUS_MONITOR_DEFAULT_OPTIONS = new InjectionToken('cdk-focus-monitor-default-options');\n/**\n * Event listener options that enable capturing and also\n * mark the listener as passive if the browser supports it.\n */\nconst captureEventListenerOptions = normalizePassiveListenerOptions({\n passive: true,\n capture: true,\n});\n/** Monitors mouse and keyboard events to determine the cause of focus events. */\nclass FocusMonitor {\n constructor(_ngZone, _platform, _inputModalityDetector, \n /** @breaking-change 11.0.0 make document required */\n document, options) {\n this._ngZone = _ngZone;\n this._platform = _platform;\n this._inputModalityDetector = _inputModalityDetector;\n /** The focus origin that the next focus event is a result of. */\n this._origin = null;\n /** Whether the window has just been focused. */\n this._windowFocused = false;\n /**\n * Whether the origin was determined via a touch interaction. Necessary as properly attributing\n * focus events to touch interactions requires special logic.\n */\n this._originFromTouchInteraction = false;\n /** Map of elements being monitored to their info. */\n this._elementInfo = new Map();\n /** The number of elements currently being monitored. */\n this._monitoredElementCount = 0;\n /**\n * Keeps track of the root nodes to which we've currently bound a focus/blur handler,\n * as well as the number of monitored elements that they contain. We have to treat focus/blur\n * handlers differently from the rest of the events, because the browser won't emit events\n * to the document when focus moves inside of a shadow root.\n */\n this._rootNodeFocusListenerCount = new Map();\n /**\n * Event listener for `focus` events on the window.\n * Needs to be an arrow function in order to preserve the context when it gets bound.\n */\n this._windowFocusListener = () => {\n // Make a note of when the window regains focus, so we can\n // restore the origin info for the focused element.\n this._windowFocused = true;\n this._windowFocusTimeoutId = window.setTimeout(() => (this._windowFocused = false));\n };\n /** Subject for stopping our InputModalityDetector subscription. */\n this._stopInputModalityDetector = new Subject();\n /**\n * Event listener for `focus` and 'blur' events on the document.\n * Needs to be an arrow function in order to preserve the context when it gets bound.\n */\n this._rootNodeFocusAndBlurListener = (event) => {\n const target = _getEventTarget(event);\n const handler = event.type === 'focus' ? this._onFocus : this._onBlur;\n // We need to walk up the ancestor chain in order to support `checkChildren`.\n for (let element = target; element; element = element.parentElement) {\n handler.call(this, event, element);\n }\n };\n this._document = document;\n this._detectionMode = (options === null || options === void 0 ? void 0 : options.detectionMode) || 0 /* IMMEDIATE */;\n }\n monitor(element, checkChildren = false) {\n const nativeElement = coerceElement(element);\n // Do nothing if we're not on the browser platform or the passed in node isn't an element.\n if (!this._platform.isBrowser || nativeElement.nodeType !== 1) {\n return of(null);\n }\n // If the element is inside the shadow DOM, we need to bind our focus/blur listeners to\n // the shadow root, rather than the `document`, because the browser won't emit focus events\n // to the `document`, if focus is moving within the same shadow root.\n const rootNode = _getShadowRoot(nativeElement) || this._getDocument();\n const cachedInfo = this._elementInfo.get(nativeElement);\n // Check if we're already monitoring this element.\n if (cachedInfo) {\n if (checkChildren) {\n // TODO(COMP-318): this can be problematic, because it'll turn all non-checkChildren\n // observers into ones that behave as if `checkChildren` was turned on. We need a more\n // robust solution.\n cachedInfo.checkChildren = true;\n }\n return cachedInfo.subject;\n }\n // Create monitored element info.\n const info = {\n checkChildren: checkChildren,\n subject: new Subject(),\n rootNode,\n };\n this._elementInfo.set(nativeElement, info);\n this._registerGlobalListeners(info);\n return info.subject;\n }\n stopMonitoring(element) {\n const nativeElement = coerceElement(element);\n const elementInfo = this._elementInfo.get(nativeElement);\n if (elementInfo) {\n elementInfo.subject.complete();\n this._setClasses(nativeElement);\n this._elementInfo.delete(nativeElement);\n this._removeGlobalListeners(elementInfo);\n }\n }\n focusVia(element, origin, options) {\n const nativeElement = coerceElement(element);\n const focusedElement = this._getDocument().activeElement;\n // If the element is focused already, calling `focus` again won't trigger the event listener\n // which means that the focus classes won't be updated. If that's the case, update the classes\n // directly without waiting for an event.\n if (nativeElement === focusedElement) {\n this._getClosestElementsInfo(nativeElement).forEach(([currentElement, info]) => this._originChanged(currentElement, origin, info));\n }\n else {\n this._setOrigin(origin);\n // `focus` isn't available on the server\n if (typeof nativeElement.focus === 'function') {\n nativeElement.focus(options);\n }\n }\n }\n ngOnDestroy() {\n this._elementInfo.forEach((_info, element) => this.stopMonitoring(element));\n }\n /** Access injected document if available or fallback to global document reference */\n _getDocument() {\n return this._document || document;\n }\n /** Use defaultView of injected document if available or fallback to global window reference */\n _getWindow() {\n const doc = this._getDocument();\n return doc.defaultView || window;\n }\n _getFocusOrigin(focusEventTarget) {\n if (this._origin) {\n // If the origin was realized via a touch interaction, we need to perform additional checks\n // to determine whether the focus origin should be attributed to touch or program.\n if (this._originFromTouchInteraction) {\n return this._shouldBeAttributedToTouch(focusEventTarget) ? 'touch' : 'program';\n }\n else {\n return this._origin;\n }\n }\n // If the window has just regained focus, we can restore the most recent origin from before the\n // window blurred. Otherwise, we've reached the point where we can't identify the source of the\n // focus. This typically means one of two things happened:\n //\n // 1) The element was programmatically focused, or\n // 2) The element was focused via screen reader navigation (which generally doesn't fire\n // events).\n //\n // Because we can't distinguish between these two cases, we default to setting `program`.\n return this._windowFocused && this._lastFocusOrigin ? this._lastFocusOrigin : 'program';\n }\n /**\n * Returns whether the focus event should be attributed to touch. Recall that in IMMEDIATE mode, a\n * touch origin isn't immediately reset at the next tick (see _setOrigin). This means that when we\n * handle a focus event following a touch interaction, we need to determine whether (1) the focus\n * event was directly caused by the touch interaction or (2) the focus event was caused by a\n * subsequent programmatic focus call triggered by the touch interaction.\n * @param focusEventTarget The target of the focus event under examination.\n */\n _shouldBeAttributedToTouch(focusEventTarget) {\n // Please note that this check is not perfect. Consider the following edge case:\n //\n //
\n //
\n //
\n //\n // Suppose there is a FocusMonitor in IMMEDIATE mode attached to #parent. When the user touches\n // #child, #parent is programmatically focused. This code will attribute the focus to touch\n // instead of program. This is a relatively minor edge-case that can be worked around by using\n // focusVia(parent, 'program') to focus #parent.\n return (this._detectionMode === 1 /* EVENTUAL */ ||\n !!(focusEventTarget === null || focusEventTarget === void 0 ? void 0 : focusEventTarget.contains(this._inputModalityDetector._mostRecentTarget)));\n }\n /**\n * Sets the focus classes on the element based on the given focus origin.\n * @param element The element to update the classes on.\n * @param origin The focus origin.\n */\n _setClasses(element, origin) {\n element.classList.toggle('cdk-focused', !!origin);\n element.classList.toggle('cdk-touch-focused', origin === 'touch');\n element.classList.toggle('cdk-keyboard-focused', origin === 'keyboard');\n element.classList.toggle('cdk-mouse-focused', origin === 'mouse');\n element.classList.toggle('cdk-program-focused', origin === 'program');\n }\n /**\n * Updates the focus origin. If we're using immediate detection mode, we schedule an async\n * function to clear the origin at the end of a timeout. The duration of the timeout depends on\n * the origin being set.\n * @param origin The origin to set.\n * @param isFromInteraction Whether we are setting the origin from an interaction event.\n */\n _setOrigin(origin, isFromInteraction = false) {\n this._ngZone.runOutsideAngular(() => {\n this._origin = origin;\n this._originFromTouchInteraction = origin === 'touch' && isFromInteraction;\n // If we're in IMMEDIATE mode, reset the origin at the next tick (or in `TOUCH_BUFFER_MS` ms\n // for a touch event). We reset the origin at the next tick because Firefox focuses one tick\n // after the interaction event. We wait `TOUCH_BUFFER_MS` ms before resetting the origin for\n // a touch event because when a touch event is fired, the associated focus event isn't yet in\n // the event queue. Before doing so, clear any pending timeouts.\n if (this._detectionMode === 0 /* IMMEDIATE */) {\n clearTimeout(this._originTimeoutId);\n const ms = this._originFromTouchInteraction ? TOUCH_BUFFER_MS : 1;\n this._originTimeoutId = setTimeout(() => (this._origin = null), ms);\n }\n });\n }\n /**\n * Handles focus events on a registered element.\n * @param event The focus event.\n * @param element The monitored element.\n */\n _onFocus(event, element) {\n // NOTE(mmalerba): We currently set the classes based on the focus origin of the most recent\n // focus event affecting the monitored element. If we want to use the origin of the first event\n // instead we should check for the cdk-focused class here and return if the element already has\n // it. (This only matters for elements that have includesChildren = true).\n // If we are not counting child-element-focus as focused, make sure that the event target is the\n // monitored element itself.\n const elementInfo = this._elementInfo.get(element);\n const focusEventTarget = _getEventTarget(event);\n if (!elementInfo || (!elementInfo.checkChildren && element !== focusEventTarget)) {\n return;\n }\n this._originChanged(element, this._getFocusOrigin(focusEventTarget), elementInfo);\n }\n /**\n * Handles blur events on a registered element.\n * @param event The blur event.\n * @param element The monitored element.\n */\n _onBlur(event, element) {\n // If we are counting child-element-focus as focused, make sure that we aren't just blurring in\n // order to focus another child of the monitored element.\n const elementInfo = this._elementInfo.get(element);\n if (!elementInfo ||\n (elementInfo.checkChildren &&\n event.relatedTarget instanceof Node &&\n element.contains(event.relatedTarget))) {\n return;\n }\n this._setClasses(element);\n this._emitOrigin(elementInfo.subject, null);\n }\n _emitOrigin(subject, origin) {\n this._ngZone.run(() => subject.next(origin));\n }\n _registerGlobalListeners(elementInfo) {\n if (!this._platform.isBrowser) {\n return;\n }\n const rootNode = elementInfo.rootNode;\n const rootNodeFocusListeners = this._rootNodeFocusListenerCount.get(rootNode) || 0;\n if (!rootNodeFocusListeners) {\n this._ngZone.runOutsideAngular(() => {\n rootNode.addEventListener('focus', this._rootNodeFocusAndBlurListener, captureEventListenerOptions);\n rootNode.addEventListener('blur', this._rootNodeFocusAndBlurListener, captureEventListenerOptions);\n });\n }\n this._rootNodeFocusListenerCount.set(rootNode, rootNodeFocusListeners + 1);\n // Register global listeners when first element is monitored.\n if (++this._monitoredElementCount === 1) {\n // Note: we listen to events in the capture phase so we\n // can detect them even if the user stops propagation.\n this._ngZone.runOutsideAngular(() => {\n const window = this._getWindow();\n window.addEventListener('focus', this._windowFocusListener);\n });\n // The InputModalityDetector is also just a collection of global listeners.\n this._inputModalityDetector.modalityDetected\n .pipe(takeUntil(this._stopInputModalityDetector))\n .subscribe(modality => {\n this._setOrigin(modality, true /* isFromInteraction */);\n });\n }\n }\n _removeGlobalListeners(elementInfo) {\n const rootNode = elementInfo.rootNode;\n if (this._rootNodeFocusListenerCount.has(rootNode)) {\n const rootNodeFocusListeners = this._rootNodeFocusListenerCount.get(rootNode);\n if (rootNodeFocusListeners > 1) {\n this._rootNodeFocusListenerCount.set(rootNode, rootNodeFocusListeners - 1);\n }\n else {\n rootNode.removeEventListener('focus', this._rootNodeFocusAndBlurListener, captureEventListenerOptions);\n rootNode.removeEventListener('blur', this._rootNodeFocusAndBlurListener, captureEventListenerOptions);\n this._rootNodeFocusListenerCount.delete(rootNode);\n }\n }\n // Unregister global listeners when last element is unmonitored.\n if (!--this._monitoredElementCount) {\n const window = this._getWindow();\n window.removeEventListener('focus', this._windowFocusListener);\n // Equivalently, stop our InputModalityDetector subscription.\n this._stopInputModalityDetector.next();\n // Clear timeouts for all potentially pending timeouts to prevent the leaks.\n clearTimeout(this._windowFocusTimeoutId);\n clearTimeout(this._originTimeoutId);\n }\n }\n /** Updates all the state on an element once its focus origin has changed. */\n _originChanged(element, origin, elementInfo) {\n this._setClasses(element, origin);\n this._emitOrigin(elementInfo.subject, origin);\n this._lastFocusOrigin = origin;\n }\n /**\n * Collects the `MonitoredElementInfo` of a particular element and\n * all of its ancestors that have enabled `checkChildren`.\n * @param element Element from which to start the search.\n */\n _getClosestElementsInfo(element) {\n const results = [];\n this._elementInfo.forEach((info, currentElement) => {\n if (currentElement === element || (info.checkChildren && currentElement.contains(element))) {\n results.push([currentElement, info]);\n }\n });\n return results;\n }\n}\nFocusMonitor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FocusMonitor, deps: [{ token: i0.NgZone }, { token: i1.Platform }, { token: InputModalityDetector }, { token: DOCUMENT, optional: true }, { token: FOCUS_MONITOR_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nFocusMonitor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FocusMonitor, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FocusMonitor, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: i0.NgZone }, { type: i1.Platform }, { type: InputModalityDetector }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [FOCUS_MONITOR_DEFAULT_OPTIONS]\n }] }];\n } });\n/**\n * Directive that determines how a particular element was focused (via keyboard, mouse, touch, or\n * programmatically) and adds corresponding classes to the element.\n *\n * There are two variants of this directive:\n * 1) cdkMonitorElementFocus: does not consider an element to be focused if one of its children is\n * focused.\n * 2) cdkMonitorSubtreeFocus: considers an element focused if it or any of its children are focused.\n */\nclass CdkMonitorFocus {\n constructor(_elementRef, _focusMonitor) {\n this._elementRef = _elementRef;\n this._focusMonitor = _focusMonitor;\n this.cdkFocusChange = new EventEmitter();\n }\n ngAfterViewInit() {\n const element = this._elementRef.nativeElement;\n this._monitorSubscription = this._focusMonitor\n .monitor(element, element.nodeType === 1 && element.hasAttribute('cdkMonitorSubtreeFocus'))\n .subscribe(origin => this.cdkFocusChange.emit(origin));\n }\n ngOnDestroy() {\n this._focusMonitor.stopMonitoring(this._elementRef);\n if (this._monitorSubscription) {\n this._monitorSubscription.unsubscribe();\n }\n }\n}\nCdkMonitorFocus.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkMonitorFocus, deps: [{ token: i0.ElementRef }, { token: FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive });\nCdkMonitorFocus.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkMonitorFocus, selector: \"[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]\", outputs: { cdkFocusChange: \"cdkFocusChange\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkMonitorFocus, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]',\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: FocusMonitor }]; }, propDecorators: { cdkFocusChange: [{\n type: Output\n }] } });\n\n/** CSS class applied to the document body when in black-on-white high-contrast mode. */\nconst BLACK_ON_WHITE_CSS_CLASS = 'cdk-high-contrast-black-on-white';\n/** CSS class applied to the document body when in white-on-black high-contrast mode. */\nconst WHITE_ON_BLACK_CSS_CLASS = 'cdk-high-contrast-white-on-black';\n/** CSS class applied to the document body when in high-contrast mode. */\nconst HIGH_CONTRAST_MODE_ACTIVE_CSS_CLASS = 'cdk-high-contrast-active';\n/**\n * Service to determine whether the browser is currently in a high-contrast-mode environment.\n *\n * Microsoft Windows supports an accessibility feature called \"High Contrast Mode\". This mode\n * changes the appearance of all applications, including web applications, to dramatically increase\n * contrast.\n *\n * IE, Edge, and Firefox currently support this mode. Chrome does not support Windows High Contrast\n * Mode. This service does not detect high-contrast mode as added by the Chrome \"High Contrast\"\n * browser extension.\n */\nclass HighContrastModeDetector {\n constructor(_platform, document) {\n this._platform = _platform;\n this._document = document;\n }\n /** Gets the current high-contrast-mode for the page. */\n getHighContrastMode() {\n if (!this._platform.isBrowser) {\n return 0 /* NONE */;\n }\n // Create a test element with an arbitrary background-color that is neither black nor\n // white; high-contrast mode will coerce the color to either black or white. Also ensure that\n // appending the test element to the DOM does not affect layout by absolutely positioning it\n const testElement = this._document.createElement('div');\n testElement.style.backgroundColor = 'rgb(1,2,3)';\n testElement.style.position = 'absolute';\n this._document.body.appendChild(testElement);\n // Get the computed style for the background color, collapsing spaces to normalize between\n // browsers. Once we get this color, we no longer need the test element. Access the `window`\n // via the document so we can fake it in tests. Note that we have extra null checks, because\n // this logic will likely run during app bootstrap and throwing can break the entire app.\n const documentWindow = this._document.defaultView || window;\n const computedStyle = documentWindow && documentWindow.getComputedStyle\n ? documentWindow.getComputedStyle(testElement)\n : null;\n const computedColor = ((computedStyle && computedStyle.backgroundColor) || '').replace(/ /g, '');\n testElement.remove();\n switch (computedColor) {\n case 'rgb(0,0,0)':\n return 2 /* WHITE_ON_BLACK */;\n case 'rgb(255,255,255)':\n return 1 /* BLACK_ON_WHITE */;\n }\n return 0 /* NONE */;\n }\n /** Applies CSS classes indicating high-contrast mode to document body (browser-only). */\n _applyBodyHighContrastModeCssClasses() {\n if (!this._hasCheckedHighContrastMode && this._platform.isBrowser && this._document.body) {\n const bodyClasses = this._document.body.classList;\n // IE11 doesn't support `classList` operations with multiple arguments\n bodyClasses.remove(HIGH_CONTRAST_MODE_ACTIVE_CSS_CLASS);\n bodyClasses.remove(BLACK_ON_WHITE_CSS_CLASS);\n bodyClasses.remove(WHITE_ON_BLACK_CSS_CLASS);\n this._hasCheckedHighContrastMode = true;\n const mode = this.getHighContrastMode();\n if (mode === 1 /* BLACK_ON_WHITE */) {\n bodyClasses.add(HIGH_CONTRAST_MODE_ACTIVE_CSS_CLASS);\n bodyClasses.add(BLACK_ON_WHITE_CSS_CLASS);\n }\n else if (mode === 2 /* WHITE_ON_BLACK */) {\n bodyClasses.add(HIGH_CONTRAST_MODE_ACTIVE_CSS_CLASS);\n bodyClasses.add(WHITE_ON_BLACK_CSS_CLASS);\n }\n }\n }\n}\nHighContrastModeDetector.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: HighContrastModeDetector, deps: [{ token: i1.Platform }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });\nHighContrastModeDetector.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: HighContrastModeDetector, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: HighContrastModeDetector, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: i1.Platform }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass A11yModule {\n constructor(highContrastModeDetector) {\n highContrastModeDetector._applyBodyHighContrastModeCssClasses();\n }\n}\nA11yModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: A11yModule, deps: [{ token: HighContrastModeDetector }], target: i0.ɵɵFactoryTarget.NgModule });\nA11yModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: A11yModule, declarations: [CdkAriaLive, CdkTrapFocus, CdkMonitorFocus], imports: [ObserversModule], exports: [CdkAriaLive, CdkTrapFocus, CdkMonitorFocus] });\nA11yModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: A11yModule, imports: [[ObserversModule]] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: A11yModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [ObserversModule],\n declarations: [CdkAriaLive, CdkTrapFocus, CdkMonitorFocus],\n exports: [CdkAriaLive, CdkTrapFocus, CdkMonitorFocus],\n }]\n }], ctorParameters: function () { return [{ type: HighContrastModeDetector }]; } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { A11yModule, ActiveDescendantKeyManager, AriaDescriber, CDK_DESCRIBEDBY_HOST_ATTRIBUTE, CDK_DESCRIBEDBY_ID_PREFIX, CdkAriaLive, CdkMonitorFocus, CdkTrapFocus, ConfigurableFocusTrap, ConfigurableFocusTrapFactory, EventListenerFocusTrapInertStrategy, FOCUS_MONITOR_DEFAULT_OPTIONS, FOCUS_TRAP_INERT_STRATEGY, FocusKeyManager, FocusMonitor, FocusTrap, FocusTrapFactory, HighContrastModeDetector, INPUT_MODALITY_DETECTOR_DEFAULT_OPTIONS, INPUT_MODALITY_DETECTOR_OPTIONS, InputModalityDetector, InteractivityChecker, IsFocusableConfig, LIVE_ANNOUNCER_DEFAULT_OPTIONS, LIVE_ANNOUNCER_ELEMENT_TOKEN, LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY, ListKeyManager, LiveAnnouncer, MESSAGES_CONTAINER_ID, isFakeMousedownFromScreenReader, isFakeTouchstartFromScreenReader };\n","import * as i0 from '@angular/core';\nimport { InjectionToken, inject, EventEmitter, Injectable, Optional, Inject, Directive, Output, Input, NgModule } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Injection token used to inject the document into Directionality.\n * This is used so that the value can be faked in tests.\n *\n * We can't use the real document in tests because changing the real `dir` causes geometry-based\n * tests in Safari to fail.\n *\n * We also can't re-provide the DOCUMENT token from platform-brower because the unit tests\n * themselves use things like `querySelector` in test code.\n *\n * This token is defined in a separate file from Directionality as a workaround for\n * https://github.com/angular/angular/issues/22559\n *\n * @docs-private\n */\nconst DIR_DOCUMENT = new InjectionToken('cdk-dir-doc', {\n providedIn: 'root',\n factory: DIR_DOCUMENT_FACTORY,\n});\n/** @docs-private */\nfunction DIR_DOCUMENT_FACTORY() {\n return inject(DOCUMENT);\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Regex that matches locales with an RTL script. Taken from `goog.i18n.bidi.isRtlLanguage`. */\nconst RTL_LOCALE_PATTERN = /^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;\n/** Resolves a string value to a specific direction. */\nfunction _resolveDirectionality(rawValue) {\n const value = (rawValue === null || rawValue === void 0 ? void 0 : rawValue.toLowerCase()) || '';\n if (value === 'auto' && typeof navigator !== 'undefined' && (navigator === null || navigator === void 0 ? void 0 : navigator.language)) {\n return RTL_LOCALE_PATTERN.test(navigator.language) ? 'rtl' : 'ltr';\n }\n return value === 'rtl' ? 'rtl' : 'ltr';\n}\n/**\n * The directionality (LTR / RTL) context for the application (or a subtree of it).\n * Exposes the current direction and a stream of direction changes.\n */\nclass Directionality {\n constructor(_document) {\n /** The current 'ltr' or 'rtl' value. */\n this.value = 'ltr';\n /** Stream that emits whenever the 'ltr' / 'rtl' state changes. */\n this.change = new EventEmitter();\n if (_document) {\n const bodyDir = _document.body ? _document.body.dir : null;\n const htmlDir = _document.documentElement ? _document.documentElement.dir : null;\n this.value = _resolveDirectionality(bodyDir || htmlDir || 'ltr');\n }\n }\n ngOnDestroy() {\n this.change.complete();\n }\n}\nDirectionality.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Directionality, deps: [{ token: DIR_DOCUMENT, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nDirectionality.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Directionality, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Directionality, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [DIR_DOCUMENT]\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Directive to listen for changes of direction of part of the DOM.\n *\n * Provides itself as Directionality such that descendant directives only need to ever inject\n * Directionality to get the closest direction.\n */\nclass Dir {\n constructor() {\n /** Normalized direction that accounts for invalid/unsupported values. */\n this._dir = 'ltr';\n /** Whether the `value` has been set to its initial value. */\n this._isInitialized = false;\n /** Event emitted when the direction changes. */\n this.change = new EventEmitter();\n }\n /** @docs-private */\n get dir() {\n return this._dir;\n }\n set dir(value) {\n const previousValue = this._dir;\n // Note: `_resolveDirectionality` resolves the language based on the browser's language,\n // whereas the browser does it based on the content of the element. Since doing so based\n // on the content can be expensive, for now we're doing the simpler matching.\n this._dir = _resolveDirectionality(value);\n this._rawDir = value;\n if (previousValue !== this._dir && this._isInitialized) {\n this.change.emit(this._dir);\n }\n }\n /** Current layout direction of the element. */\n get value() {\n return this.dir;\n }\n /** Initialize once default value has been set. */\n ngAfterContentInit() {\n this._isInitialized = true;\n }\n ngOnDestroy() {\n this.change.complete();\n }\n}\nDir.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Dir, deps: [], target: i0.ɵɵFactoryTarget.Directive });\nDir.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: Dir, selector: \"[dir]\", inputs: { dir: \"dir\" }, outputs: { change: \"dirChange\" }, host: { properties: { \"attr.dir\": \"_rawDir\" } }, providers: [{ provide: Directionality, useExisting: Dir }], exportAs: [\"dir\"], ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Dir, decorators: [{\n type: Directive,\n args: [{\n selector: '[dir]',\n providers: [{ provide: Directionality, useExisting: Dir }],\n host: { '[attr.dir]': '_rawDir' },\n exportAs: 'dir',\n }]\n }], propDecorators: { change: [{\n type: Output,\n args: ['dirChange']\n }], dir: [{\n type: Input\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass BidiModule {\n}\nBidiModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BidiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nBidiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BidiModule, declarations: [Dir], exports: [Dir] });\nBidiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BidiModule });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BidiModule, decorators: [{\n type: NgModule,\n args: [{\n exports: [Dir],\n declarations: [Dir],\n }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { BidiModule, DIR_DOCUMENT, Dir, Directionality };\n","import { Version } from '@angular/core';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Current version of the Angular Component Development Kit. */\nconst VERSION = new Version('13.3.3');\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport { VERSION };\n","import { ElementRef } from '@angular/core';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Coerces a data-bound value (typically a string) to a boolean. */\nfunction coerceBooleanProperty(value) {\n return value != null && `${value}` !== 'false';\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction coerceNumberProperty(value, fallbackValue = 0) {\n return _isNumberValue(value) ? Number(value) : fallbackValue;\n}\n/**\n * Whether the provided value is considered a number.\n * @docs-private\n */\nfunction _isNumberValue(value) {\n // parseFloat(value) handles most of the cases we're interested in (it treats null, empty string,\n // and other non-number values as NaN, where Number just uses 0) but it considers the string\n // '123hello' to be a valid number. Therefore we also check if Number(value) is NaN.\n return !isNaN(parseFloat(value)) && !isNaN(Number(value));\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction coerceArray(value) {\n return Array.isArray(value) ? value : [value];\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Coerces a value to a CSS pixel value. */\nfunction coerceCssPixelValue(value) {\n if (value == null) {\n return '';\n }\n return typeof value === 'string' ? value : `${value}px`;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Coerces an ElementRef or an Element into an element.\n * Useful for APIs that can accept either a ref or the native element itself.\n */\nfunction coerceElement(elementOrRef) {\n return elementOrRef instanceof ElementRef ? elementOrRef.nativeElement : elementOrRef;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Coerces a value to an array of trimmed non-empty strings.\n * Any input that is not an array, `null` or `undefined` will be turned into a string\n * via `toString()` and subsequently split with the given separator.\n * `null` and `undefined` will result in an empty array.\n * This results in the following outcomes:\n * - `null` -> `[]`\n * - `[null]` -> `[\"null\"]`\n * - `[\"a\", \"b \", \" \"]` -> `[\"a\", \"b\"]`\n * - `[1, [2, 3]]` -> `[\"1\", \"2,3\"]`\n * - `[{ a: 0 }]` -> `[\"[object Object]\"]`\n * - `{ a: 0 }` -> `[\"[object\", \"Object]\"]`\n *\n * Useful for defining CSS classes or table columns.\n * @param value the value to coerce into an array of strings\n * @param separator split-separator if value isn't an array\n */\nfunction coerceStringArray(value, separator = /\\s+/) {\n const result = [];\n if (value != null) {\n const sourceValues = Array.isArray(value) ? value : `${value}`.split(separator);\n for (const sourceValue of sourceValues) {\n const trimmedString = `${sourceValue}`.trim();\n if (trimmedString) {\n result.push(trimmedString);\n }\n }\n }\n return result;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport { _isNumberValue, coerceArray, coerceBooleanProperty, coerceCssPixelValue, coerceElement, coerceNumberProperty, coerceStringArray };\n","import { isObservable, of, Subject } from 'rxjs';\nimport * as i0 from '@angular/core';\nimport { Injectable, InjectionToken } from '@angular/core';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass DataSource {\n}\n/** Checks whether an object is a data source. */\nfunction isDataSource(value) {\n // Check if the value is a DataSource by observing if it has a connect function. Cannot\n // be checked as an `instanceof DataSource` since people could create their own sources\n // that match the interface, but don't extend DataSource.\n return value && typeof value.connect === 'function';\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** DataSource wrapper for a native array. */\nclass ArrayDataSource extends DataSource {\n constructor(_data) {\n super();\n this._data = _data;\n }\n connect() {\n return isObservable(this._data) ? this._data : of(this._data);\n }\n disconnect() { }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * A repeater that destroys views when they are removed from a\n * {@link ViewContainerRef}. When new items are inserted into the container,\n * the repeater will always construct a new embedded view for each item.\n *\n * @template T The type for the embedded view's $implicit property.\n * @template R The type for the item in each IterableDiffer change record.\n * @template C The type for the context passed to each embedded view.\n */\nclass _DisposeViewRepeaterStrategy {\n applyChanges(changes, viewContainerRef, itemContextFactory, itemValueResolver, itemViewChanged) {\n changes.forEachOperation((record, adjustedPreviousIndex, currentIndex) => {\n let view;\n let operation;\n if (record.previousIndex == null) {\n const insertContext = itemContextFactory(record, adjustedPreviousIndex, currentIndex);\n view = viewContainerRef.createEmbeddedView(insertContext.templateRef, insertContext.context, insertContext.index);\n operation = 1 /* INSERTED */;\n }\n else if (currentIndex == null) {\n viewContainerRef.remove(adjustedPreviousIndex);\n operation = 3 /* REMOVED */;\n }\n else {\n view = viewContainerRef.get(adjustedPreviousIndex);\n viewContainerRef.move(view, currentIndex);\n operation = 2 /* MOVED */;\n }\n if (itemViewChanged) {\n itemViewChanged({\n context: view === null || view === void 0 ? void 0 : view.context,\n operation,\n record,\n });\n }\n });\n }\n detach() { }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * A repeater that caches views when they are removed from a\n * {@link ViewContainerRef}. When new items are inserted into the container,\n * the repeater will reuse one of the cached views instead of creating a new\n * embedded view. Recycling cached views reduces the quantity of expensive DOM\n * inserts.\n *\n * @template T The type for the embedded view's $implicit property.\n * @template R The type for the item in each IterableDiffer change record.\n * @template C The type for the context passed to each embedded view.\n */\nclass _RecycleViewRepeaterStrategy {\n constructor() {\n /**\n * The size of the cache used to store unused views.\n * Setting the cache size to `0` will disable caching. Defaults to 20 views.\n */\n this.viewCacheSize = 20;\n /**\n * View cache that stores embedded view instances that have been previously stamped out,\n * but don't are not currently rendered. The view repeater will reuse these views rather than\n * creating brand new ones.\n *\n * TODO(michaeljamesparsons) Investigate whether using a linked list would improve performance.\n */\n this._viewCache = [];\n }\n /** Apply changes to the DOM. */\n applyChanges(changes, viewContainerRef, itemContextFactory, itemValueResolver, itemViewChanged) {\n // Rearrange the views to put them in the right location.\n changes.forEachOperation((record, adjustedPreviousIndex, currentIndex) => {\n let view;\n let operation;\n if (record.previousIndex == null) {\n // Item added.\n const viewArgsFactory = () => itemContextFactory(record, adjustedPreviousIndex, currentIndex);\n view = this._insertView(viewArgsFactory, currentIndex, viewContainerRef, itemValueResolver(record));\n operation = view ? 1 /* INSERTED */ : 0 /* REPLACED */;\n }\n else if (currentIndex == null) {\n // Item removed.\n this._detachAndCacheView(adjustedPreviousIndex, viewContainerRef);\n operation = 3 /* REMOVED */;\n }\n else {\n // Item moved.\n view = this._moveView(adjustedPreviousIndex, currentIndex, viewContainerRef, itemValueResolver(record));\n operation = 2 /* MOVED */;\n }\n if (itemViewChanged) {\n itemViewChanged({\n context: view === null || view === void 0 ? void 0 : view.context,\n operation,\n record,\n });\n }\n });\n }\n detach() {\n for (const view of this._viewCache) {\n view.destroy();\n }\n this._viewCache = [];\n }\n /**\n * Inserts a view for a new item, either from the cache or by creating a new\n * one. Returns `undefined` if the item was inserted into a cached view.\n */\n _insertView(viewArgsFactory, currentIndex, viewContainerRef, value) {\n const cachedView = this._insertViewFromCache(currentIndex, viewContainerRef);\n if (cachedView) {\n cachedView.context.$implicit = value;\n return undefined;\n }\n const viewArgs = viewArgsFactory();\n return viewContainerRef.createEmbeddedView(viewArgs.templateRef, viewArgs.context, viewArgs.index);\n }\n /** Detaches the view at the given index and inserts into the view cache. */\n _detachAndCacheView(index, viewContainerRef) {\n const detachedView = viewContainerRef.detach(index);\n this._maybeCacheView(detachedView, viewContainerRef);\n }\n /** Moves view at the previous index to the current index. */\n _moveView(adjustedPreviousIndex, currentIndex, viewContainerRef, value) {\n const view = viewContainerRef.get(adjustedPreviousIndex);\n viewContainerRef.move(view, currentIndex);\n view.context.$implicit = value;\n return view;\n }\n /**\n * Cache the given detached view. If the cache is full, the view will be\n * destroyed.\n */\n _maybeCacheView(view, viewContainerRef) {\n if (this._viewCache.length < this.viewCacheSize) {\n this._viewCache.push(view);\n }\n else {\n const index = viewContainerRef.indexOf(view);\n // The host component could remove views from the container outside of\n // the view repeater. It's unlikely this will occur, but just in case,\n // destroy the view on its own, otherwise destroy it through the\n // container to ensure that all the references are removed.\n if (index === -1) {\n view.destroy();\n }\n else {\n viewContainerRef.remove(index);\n }\n }\n }\n /** Inserts a recycled view from the cache at the given index. */\n _insertViewFromCache(index, viewContainerRef) {\n const cachedView = this._viewCache.pop();\n if (cachedView) {\n viewContainerRef.insert(cachedView, index);\n }\n return cachedView || null;\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Class to be used to power selecting one or more options from a list.\n */\nclass SelectionModel {\n constructor(_multiple = false, initiallySelectedValues, _emitChanges = true) {\n this._multiple = _multiple;\n this._emitChanges = _emitChanges;\n /** Currently-selected values. */\n this._selection = new Set();\n /** Keeps track of the deselected options that haven't been emitted by the change event. */\n this._deselectedToEmit = [];\n /** Keeps track of the selected options that haven't been emitted by the change event. */\n this._selectedToEmit = [];\n /** Event emitted when the value has changed. */\n this.changed = new Subject();\n if (initiallySelectedValues && initiallySelectedValues.length) {\n if (_multiple) {\n initiallySelectedValues.forEach(value => this._markSelected(value));\n }\n else {\n this._markSelected(initiallySelectedValues[0]);\n }\n // Clear the array in order to avoid firing the change event for preselected values.\n this._selectedToEmit.length = 0;\n }\n }\n /** Selected values. */\n get selected() {\n if (!this._selected) {\n this._selected = Array.from(this._selection.values());\n }\n return this._selected;\n }\n /**\n * Selects a value or an array of values.\n */\n select(...values) {\n this._verifyValueAssignment(values);\n values.forEach(value => this._markSelected(value));\n this._emitChangeEvent();\n }\n /**\n * Deselects a value or an array of values.\n */\n deselect(...values) {\n this._verifyValueAssignment(values);\n values.forEach(value => this._unmarkSelected(value));\n this._emitChangeEvent();\n }\n /**\n * Toggles a value between selected and deselected.\n */\n toggle(value) {\n this.isSelected(value) ? this.deselect(value) : this.select(value);\n }\n /**\n * Clears all of the selected values.\n */\n clear() {\n this._unmarkAll();\n this._emitChangeEvent();\n }\n /**\n * Determines whether a value is selected.\n */\n isSelected(value) {\n return this._selection.has(value);\n }\n /**\n * Determines whether the model does not have a value.\n */\n isEmpty() {\n return this._selection.size === 0;\n }\n /**\n * Determines whether the model has a value.\n */\n hasValue() {\n return !this.isEmpty();\n }\n /**\n * Sorts the selected values based on a predicate function.\n */\n sort(predicate) {\n if (this._multiple && this.selected) {\n this._selected.sort(predicate);\n }\n }\n /**\n * Gets whether multiple values can be selected.\n */\n isMultipleSelection() {\n return this._multiple;\n }\n /** Emits a change event and clears the records of selected and deselected values. */\n _emitChangeEvent() {\n // Clear the selected values so they can be re-cached.\n this._selected = null;\n if (this._selectedToEmit.length || this._deselectedToEmit.length) {\n this.changed.next({\n source: this,\n added: this._selectedToEmit,\n removed: this._deselectedToEmit,\n });\n this._deselectedToEmit = [];\n this._selectedToEmit = [];\n }\n }\n /** Selects a value. */\n _markSelected(value) {\n if (!this.isSelected(value)) {\n if (!this._multiple) {\n this._unmarkAll();\n }\n this._selection.add(value);\n if (this._emitChanges) {\n this._selectedToEmit.push(value);\n }\n }\n }\n /** Deselects a value. */\n _unmarkSelected(value) {\n if (this.isSelected(value)) {\n this._selection.delete(value);\n if (this._emitChanges) {\n this._deselectedToEmit.push(value);\n }\n }\n }\n /** Clears out the selected values. */\n _unmarkAll() {\n if (!this.isEmpty()) {\n this._selection.forEach(value => this._unmarkSelected(value));\n }\n }\n /**\n * Verifies the value assignment and throws an error if the specified value array is\n * including multiple values while the selection model is not supporting multiple values.\n */\n _verifyValueAssignment(values) {\n if (values.length > 1 && !this._multiple && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw getMultipleValuesInSingleSelectionError();\n }\n }\n}\n/**\n * Returns an error that reports that multiple values are passed into a selection model\n * with a single value.\n * @docs-private\n */\nfunction getMultipleValuesInSingleSelectionError() {\n return Error('Cannot pass multiple values into SelectionModel with single-value mode.');\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Class to coordinate unique selection based on name.\n * Intended to be consumed as an Angular service.\n * This service is needed because native radio change events are only fired on the item currently\n * being selected, and we still need to uncheck the previous selection.\n *\n * This service does not *store* any IDs and names because they may change at any time, so it is\n * less error-prone if they are simply passed through when the events occur.\n */\nclass UniqueSelectionDispatcher {\n constructor() {\n this._listeners = [];\n }\n /**\n * Notify other items that selection for the given name has been set.\n * @param id ID of the item.\n * @param name Name of the item.\n */\n notify(id, name) {\n for (let listener of this._listeners) {\n listener(id, name);\n }\n }\n /**\n * Listen for future changes to item selection.\n * @return Function used to deregister listener\n */\n listen(listener) {\n this._listeners.push(listener);\n return () => {\n this._listeners = this._listeners.filter((registered) => {\n return listener !== registered;\n });\n };\n }\n ngOnDestroy() {\n this._listeners = [];\n }\n}\nUniqueSelectionDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: UniqueSelectionDispatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nUniqueSelectionDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: UniqueSelectionDispatcher, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: UniqueSelectionDispatcher, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Injection token for {@link _ViewRepeater}. This token is for use by Angular Material only.\n * @docs-private\n */\nconst _VIEW_REPEATER_STRATEGY = new InjectionToken('_ViewRepeater');\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ArrayDataSource, DataSource, SelectionModel, UniqueSelectionDispatcher, _DisposeViewRepeaterStrategy, _RecycleViewRepeaterStrategy, _VIEW_REPEATER_STRATEGY, getMultipleValuesInSingleSelectionError, isDataSource };\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst MAC_ENTER = 3;\nconst BACKSPACE = 8;\nconst TAB = 9;\nconst NUM_CENTER = 12;\nconst ENTER = 13;\nconst SHIFT = 16;\nconst CONTROL = 17;\nconst ALT = 18;\nconst PAUSE = 19;\nconst CAPS_LOCK = 20;\nconst ESCAPE = 27;\nconst SPACE = 32;\nconst PAGE_UP = 33;\nconst PAGE_DOWN = 34;\nconst END = 35;\nconst HOME = 36;\nconst LEFT_ARROW = 37;\nconst UP_ARROW = 38;\nconst RIGHT_ARROW = 39;\nconst DOWN_ARROW = 40;\nconst PLUS_SIGN = 43;\nconst PRINT_SCREEN = 44;\nconst INSERT = 45;\nconst DELETE = 46;\nconst ZERO = 48;\nconst ONE = 49;\nconst TWO = 50;\nconst THREE = 51;\nconst FOUR = 52;\nconst FIVE = 53;\nconst SIX = 54;\nconst SEVEN = 55;\nconst EIGHT = 56;\nconst NINE = 57;\nconst FF_SEMICOLON = 59; // Firefox (Gecko) fires this for semicolon instead of 186\nconst FF_EQUALS = 61; // Firefox (Gecko) fires this for equals instead of 187\nconst QUESTION_MARK = 63;\nconst AT_SIGN = 64;\nconst A = 65;\nconst B = 66;\nconst C = 67;\nconst D = 68;\nconst E = 69;\nconst F = 70;\nconst G = 71;\nconst H = 72;\nconst I = 73;\nconst J = 74;\nconst K = 75;\nconst L = 76;\nconst M = 77;\nconst N = 78;\nconst O = 79;\nconst P = 80;\nconst Q = 81;\nconst R = 82;\nconst S = 83;\nconst T = 84;\nconst U = 85;\nconst V = 86;\nconst W = 87;\nconst X = 88;\nconst Y = 89;\nconst Z = 90;\nconst META = 91; // WIN_KEY_LEFT\nconst MAC_WK_CMD_LEFT = 91;\nconst MAC_WK_CMD_RIGHT = 93;\nconst CONTEXT_MENU = 93;\nconst NUMPAD_ZERO = 96;\nconst NUMPAD_ONE = 97;\nconst NUMPAD_TWO = 98;\nconst NUMPAD_THREE = 99;\nconst NUMPAD_FOUR = 100;\nconst NUMPAD_FIVE = 101;\nconst NUMPAD_SIX = 102;\nconst NUMPAD_SEVEN = 103;\nconst NUMPAD_EIGHT = 104;\nconst NUMPAD_NINE = 105;\nconst NUMPAD_MULTIPLY = 106;\nconst NUMPAD_PLUS = 107;\nconst NUMPAD_MINUS = 109;\nconst NUMPAD_PERIOD = 110;\nconst NUMPAD_DIVIDE = 111;\nconst F1 = 112;\nconst F2 = 113;\nconst F3 = 114;\nconst F4 = 115;\nconst F5 = 116;\nconst F6 = 117;\nconst F7 = 118;\nconst F8 = 119;\nconst F9 = 120;\nconst F10 = 121;\nconst F11 = 122;\nconst F12 = 123;\nconst NUM_LOCK = 144;\nconst SCROLL_LOCK = 145;\nconst FIRST_MEDIA = 166;\nconst FF_MINUS = 173;\nconst MUTE = 173; // Firefox (Gecko) fires 181 for MUTE\nconst VOLUME_DOWN = 174; // Firefox (Gecko) fires 182 for VOLUME_DOWN\nconst VOLUME_UP = 175; // Firefox (Gecko) fires 183 for VOLUME_UP\nconst FF_MUTE = 181;\nconst FF_VOLUME_DOWN = 182;\nconst LAST_MEDIA = 183;\nconst FF_VOLUME_UP = 183;\nconst SEMICOLON = 186; // Firefox (Gecko) fires 59 for SEMICOLON\nconst EQUALS = 187; // Firefox (Gecko) fires 61 for EQUALS\nconst COMMA = 188;\nconst DASH = 189; // Firefox (Gecko) fires 173 for DASH/MINUS\nconst PERIOD = 190;\nconst SLASH = 191;\nconst APOSTROPHE = 192;\nconst TILDE = 192;\nconst OPEN_SQUARE_BRACKET = 219;\nconst BACKSLASH = 220;\nconst CLOSE_SQUARE_BRACKET = 221;\nconst SINGLE_QUOTE = 222;\nconst MAC_META = 224;\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Checks whether a modifier key is pressed.\n * @param event Event to be checked.\n */\nfunction hasModifierKey(event, ...modifiers) {\n if (modifiers.length) {\n return modifiers.some(modifier => event[modifier]);\n }\n return event.altKey || event.shiftKey || event.ctrlKey || event.metaKey;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { A, ALT, APOSTROPHE, AT_SIGN, B, BACKSLASH, BACKSPACE, C, CAPS_LOCK, CLOSE_SQUARE_BRACKET, COMMA, CONTEXT_MENU, CONTROL, D, DASH, DELETE, DOWN_ARROW, E, EIGHT, END, ENTER, EQUALS, ESCAPE, F, F1, F10, F11, F12, F2, F3, F4, F5, F6, F7, F8, F9, FF_EQUALS, FF_MINUS, FF_MUTE, FF_SEMICOLON, FF_VOLUME_DOWN, FF_VOLUME_UP, FIRST_MEDIA, FIVE, FOUR, G, H, HOME, I, INSERT, J, K, L, LAST_MEDIA, LEFT_ARROW, M, MAC_ENTER, MAC_META, MAC_WK_CMD_LEFT, MAC_WK_CMD_RIGHT, META, MUTE, N, NINE, NUMPAD_DIVIDE, NUMPAD_EIGHT, NUMPAD_FIVE, NUMPAD_FOUR, NUMPAD_MINUS, NUMPAD_MULTIPLY, NUMPAD_NINE, NUMPAD_ONE, NUMPAD_PERIOD, NUMPAD_PLUS, NUMPAD_SEVEN, NUMPAD_SIX, NUMPAD_THREE, NUMPAD_TWO, NUMPAD_ZERO, NUM_CENTER, NUM_LOCK, O, ONE, OPEN_SQUARE_BRACKET, P, PAGE_DOWN, PAGE_UP, PAUSE, PERIOD, PLUS_SIGN, PRINT_SCREEN, Q, QUESTION_MARK, R, RIGHT_ARROW, S, SCROLL_LOCK, SEMICOLON, SEVEN, SHIFT, SINGLE_QUOTE, SIX, SLASH, SPACE, T, TAB, THREE, TILDE, TWO, U, UP_ARROW, V, VOLUME_DOWN, VOLUME_UP, W, X, Y, Z, ZERO, hasModifierKey };\n","import * as i0 from '@angular/core';\nimport { NgModule, Injectable } from '@angular/core';\nimport { coerceArray } from '@angular/cdk/coercion';\nimport { Subject, combineLatest, concat, Observable } from 'rxjs';\nimport { take, skip, debounceTime, map, startWith, takeUntil } from 'rxjs/operators';\nimport * as i1 from '@angular/cdk/platform';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass LayoutModule {\n}\nLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LayoutModule });\nLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LayoutModule });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LayoutModule, decorators: [{\n type: NgModule,\n args: [{}]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Global registry for all dynamically-created, injected media queries. */\nconst mediaQueriesForWebkitCompatibility = new Set();\n/** Style tag that holds all of the dynamically-created media queries. */\nlet mediaQueryStyleNode;\n/** A utility for calling matchMedia queries. */\nclass MediaMatcher {\n constructor(_platform) {\n this._platform = _platform;\n this._matchMedia =\n this._platform.isBrowser && window.matchMedia\n ? // matchMedia is bound to the window scope intentionally as it is an illegal invocation to\n // call it from a different scope.\n window.matchMedia.bind(window)\n : noopMatchMedia;\n }\n /**\n * Evaluates the given media query and returns the native MediaQueryList from which results\n * can be retrieved.\n * Confirms the layout engine will trigger for the selector query provided and returns the\n * MediaQueryList for the query provided.\n */\n matchMedia(query) {\n if (this._platform.WEBKIT || this._platform.BLINK) {\n createEmptyStyleRule(query);\n }\n return this._matchMedia(query);\n }\n}\nMediaMatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: MediaMatcher, deps: [{ token: i1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });\nMediaMatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: MediaMatcher, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: MediaMatcher, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () { return [{ type: i1.Platform }]; } });\n/**\n * Creates an empty stylesheet that is used to work around browser inconsistencies related to\n * `matchMedia`. At the time of writing, it handles the following cases:\n * 1. On WebKit browsers, a media query has to have at least one rule in order for `matchMedia`\n * to fire. We work around it by declaring a dummy stylesheet with a `@media` declaration.\n * 2. In some cases Blink browsers will stop firing the `matchMedia` listener if none of the rules\n * inside the `@media` match existing elements on the page. We work around it by having one rule\n * targeting the `body`. See https://github.com/angular/components/issues/23546.\n */\nfunction createEmptyStyleRule(query) {\n if (mediaQueriesForWebkitCompatibility.has(query)) {\n return;\n }\n try {\n if (!mediaQueryStyleNode) {\n mediaQueryStyleNode = document.createElement('style');\n mediaQueryStyleNode.setAttribute('type', 'text/css');\n document.head.appendChild(mediaQueryStyleNode);\n }\n if (mediaQueryStyleNode.sheet) {\n mediaQueryStyleNode.sheet.insertRule(`@media ${query} {body{ }}`, 0);\n mediaQueriesForWebkitCompatibility.add(query);\n }\n }\n catch (e) {\n console.error(e);\n }\n}\n/** No-op matchMedia replacement for non-browser platforms. */\nfunction noopMatchMedia(query) {\n // Use `as any` here to avoid adding additional necessary properties for\n // the noop matcher.\n return {\n matches: query === 'all' || query === '',\n media: query,\n addListener: () => { },\n removeListener: () => { },\n };\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Utility for checking the matching state of @media queries. */\nclass BreakpointObserver {\n constructor(_mediaMatcher, _zone) {\n this._mediaMatcher = _mediaMatcher;\n this._zone = _zone;\n /** A map of all media queries currently being listened for. */\n this._queries = new Map();\n /** A subject for all other observables to takeUntil based on. */\n this._destroySubject = new Subject();\n }\n /** Completes the active subject, signalling to all other observables to complete. */\n ngOnDestroy() {\n this._destroySubject.next();\n this._destroySubject.complete();\n }\n /**\n * Whether one or more media queries match the current viewport size.\n * @param value One or more media queries to check.\n * @returns Whether any of the media queries match.\n */\n isMatched(value) {\n const queries = splitQueries(coerceArray(value));\n return queries.some(mediaQuery => this._registerQuery(mediaQuery).mql.matches);\n }\n /**\n * Gets an observable of results for the given queries that will emit new results for any changes\n * in matching of the given queries.\n * @param value One or more media queries to check.\n * @returns A stream of matches for the given queries.\n */\n observe(value) {\n const queries = splitQueries(coerceArray(value));\n const observables = queries.map(query => this._registerQuery(query).observable);\n let stateObservable = combineLatest(observables);\n // Emit the first state immediately, and then debounce the subsequent emissions.\n stateObservable = concat(stateObservable.pipe(take(1)), stateObservable.pipe(skip(1), debounceTime(0)));\n return stateObservable.pipe(map(breakpointStates => {\n const response = {\n matches: false,\n breakpoints: {},\n };\n breakpointStates.forEach(({ matches, query }) => {\n response.matches = response.matches || matches;\n response.breakpoints[query] = matches;\n });\n return response;\n }));\n }\n /** Registers a specific query to be listened for. */\n _registerQuery(query) {\n // Only set up a new MediaQueryList if it is not already being listened for.\n if (this._queries.has(query)) {\n return this._queries.get(query);\n }\n const mql = this._mediaMatcher.matchMedia(query);\n // Create callback for match changes and add it is as a listener.\n const queryObservable = new Observable((observer) => {\n // Listener callback methods are wrapped to be placed back in ngZone. Callbacks must be placed\n // back into the zone because matchMedia is only included in Zone.js by loading the\n // webapis-media-query.js file alongside the zone.js file. Additionally, some browsers do not\n // have MediaQueryList inherit from EventTarget, which causes inconsistencies in how Zone.js\n // patches it.\n const handler = (e) => this._zone.run(() => observer.next(e));\n mql.addListener(handler);\n return () => {\n mql.removeListener(handler);\n };\n }).pipe(startWith(mql), map(({ matches }) => ({ query, matches })), takeUntil(this._destroySubject));\n // Add the MediaQueryList to the set of queries.\n const output = { observable: queryObservable, mql };\n this._queries.set(query, output);\n return output;\n }\n}\nBreakpointObserver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BreakpointObserver, deps: [{ token: MediaMatcher }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });\nBreakpointObserver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BreakpointObserver, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BreakpointObserver, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () { return [{ type: MediaMatcher }, { type: i0.NgZone }]; } });\n/**\n * Split each query string into separate query strings if two queries are provided as comma\n * separated.\n */\nfunction splitQueries(queries) {\n return queries\n .map(query => query.split(','))\n .reduce((a1, a2) => a1.concat(a2))\n .map(query => query.trim());\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// PascalCase is being used as Breakpoints is used like an enum.\n// tslint:disable-next-line:variable-name\nconst Breakpoints = {\n XSmall: '(max-width: 599.98px)',\n Small: '(min-width: 600px) and (max-width: 959.98px)',\n Medium: '(min-width: 960px) and (max-width: 1279.98px)',\n Large: '(min-width: 1280px) and (max-width: 1919.98px)',\n XLarge: '(min-width: 1920px)',\n Handset: '(max-width: 599.98px) and (orientation: portrait), ' +\n '(max-width: 959.98px) and (orientation: landscape)',\n Tablet: '(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait), ' +\n '(min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)',\n Web: '(min-width: 840px) and (orientation: portrait), ' +\n '(min-width: 1280px) and (orientation: landscape)',\n HandsetPortrait: '(max-width: 599.98px) and (orientation: portrait)',\n TabletPortrait: '(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait)',\n WebPortrait: '(min-width: 840px) and (orientation: portrait)',\n HandsetLandscape: '(max-width: 959.98px) and (orientation: landscape)',\n TabletLandscape: '(min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)',\n WebLandscape: '(min-width: 1280px) and (orientation: landscape)',\n};\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { BreakpointObserver, Breakpoints, LayoutModule, MediaMatcher };\n","import { coerceElement, coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';\nimport * as i0 from '@angular/core';\nimport { Injectable, EventEmitter, Directive, Output, Input, NgModule } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Factory that creates a new MutationObserver and allows us to stub it out in unit tests.\n * @docs-private\n */\nclass MutationObserverFactory {\n create(callback) {\n return typeof MutationObserver === 'undefined' ? null : new MutationObserver(callback);\n }\n}\nMutationObserverFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: MutationObserverFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nMutationObserverFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: MutationObserverFactory, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: MutationObserverFactory, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n/** An injectable service that allows watching elements for changes to their content. */\nclass ContentObserver {\n constructor(_mutationObserverFactory) {\n this._mutationObserverFactory = _mutationObserverFactory;\n /** Keeps track of the existing MutationObservers so they can be reused. */\n this._observedElements = new Map();\n }\n ngOnDestroy() {\n this._observedElements.forEach((_, element) => this._cleanupObserver(element));\n }\n observe(elementOrRef) {\n const element = coerceElement(elementOrRef);\n return new Observable((observer) => {\n const stream = this._observeElement(element);\n const subscription = stream.subscribe(observer);\n return () => {\n subscription.unsubscribe();\n this._unobserveElement(element);\n };\n });\n }\n /**\n * Observes the given element by using the existing MutationObserver if available, or creating a\n * new one if not.\n */\n _observeElement(element) {\n if (!this._observedElements.has(element)) {\n const stream = new Subject();\n const observer = this._mutationObserverFactory.create(mutations => stream.next(mutations));\n if (observer) {\n observer.observe(element, {\n characterData: true,\n childList: true,\n subtree: true,\n });\n }\n this._observedElements.set(element, { observer, stream, count: 1 });\n }\n else {\n this._observedElements.get(element).count++;\n }\n return this._observedElements.get(element).stream;\n }\n /**\n * Un-observes the given element and cleans up the underlying MutationObserver if nobody else is\n * observing this element.\n */\n _unobserveElement(element) {\n if (this._observedElements.has(element)) {\n this._observedElements.get(element).count--;\n if (!this._observedElements.get(element).count) {\n this._cleanupObserver(element);\n }\n }\n }\n /** Clean up the underlying MutationObserver for the specified element. */\n _cleanupObserver(element) {\n if (this._observedElements.has(element)) {\n const { observer, stream } = this._observedElements.get(element);\n if (observer) {\n observer.disconnect();\n }\n stream.complete();\n this._observedElements.delete(element);\n }\n }\n}\nContentObserver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ContentObserver, deps: [{ token: MutationObserverFactory }], target: i0.ɵɵFactoryTarget.Injectable });\nContentObserver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ContentObserver, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ContentObserver, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () { return [{ type: MutationObserverFactory }]; } });\n/**\n * Directive that triggers a callback whenever the content of\n * its associated element has changed.\n */\nclass CdkObserveContent {\n constructor(_contentObserver, _elementRef, _ngZone) {\n this._contentObserver = _contentObserver;\n this._elementRef = _elementRef;\n this._ngZone = _ngZone;\n /** Event emitted for each change in the element's content. */\n this.event = new EventEmitter();\n this._disabled = false;\n this._currentSubscription = null;\n }\n /**\n * Whether observing content is disabled. This option can be used\n * to disconnect the underlying MutationObserver until it is needed.\n */\n get disabled() {\n return this._disabled;\n }\n set disabled(value) {\n this._disabled = coerceBooleanProperty(value);\n this._disabled ? this._unsubscribe() : this._subscribe();\n }\n /** Debounce interval for emitting the changes. */\n get debounce() {\n return this._debounce;\n }\n set debounce(value) {\n this._debounce = coerceNumberProperty(value);\n this._subscribe();\n }\n ngAfterContentInit() {\n if (!this._currentSubscription && !this.disabled) {\n this._subscribe();\n }\n }\n ngOnDestroy() {\n this._unsubscribe();\n }\n _subscribe() {\n this._unsubscribe();\n const stream = this._contentObserver.observe(this._elementRef);\n // TODO(mmalerba): We shouldn't be emitting on this @Output() outside the zone.\n // Consider brining it back inside the zone next time we're making breaking changes.\n // Bringing it back inside can cause things like infinite change detection loops and changed\n // after checked errors if people's code isn't handling it properly.\n this._ngZone.runOutsideAngular(() => {\n this._currentSubscription = (this.debounce ? stream.pipe(debounceTime(this.debounce)) : stream).subscribe(this.event);\n });\n }\n _unsubscribe() {\n var _a;\n (_a = this._currentSubscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();\n }\n}\nCdkObserveContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkObserveContent, deps: [{ token: ContentObserver }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\nCdkObserveContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkObserveContent, selector: \"[cdkObserveContent]\", inputs: { disabled: [\"cdkObserveContentDisabled\", \"disabled\"], debounce: \"debounce\" }, outputs: { event: \"cdkObserveContent\" }, exportAs: [\"cdkObserveContent\"], ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkObserveContent, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdkObserveContent]',\n exportAs: 'cdkObserveContent',\n }]\n }], ctorParameters: function () { return [{ type: ContentObserver }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { event: [{\n type: Output,\n args: ['cdkObserveContent']\n }], disabled: [{\n type: Input,\n args: ['cdkObserveContentDisabled']\n }], debounce: [{\n type: Input\n }] } });\nclass ObserversModule {\n}\nObserversModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ObserversModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nObserversModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ObserversModule, declarations: [CdkObserveContent], exports: [CdkObserveContent] });\nObserversModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ObserversModule, providers: [MutationObserverFactory] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ObserversModule, decorators: [{\n type: NgModule,\n args: [{\n exports: [CdkObserveContent],\n declarations: [CdkObserveContent],\n providers: [MutationObserverFactory],\n }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { CdkObserveContent, ContentObserver, MutationObserverFactory, ObserversModule };\n","import * as i1 from '@angular/cdk/scrolling';\nimport { ScrollingModule } from '@angular/cdk/scrolling';\nexport { CdkScrollable, ScrollDispatcher, ViewportRuler } from '@angular/cdk/scrolling';\nimport * as i6 from '@angular/common';\nimport { DOCUMENT } from '@angular/common';\nimport * as i0 from '@angular/core';\nimport { Injectable, Inject, ElementRef, Optional, ApplicationRef, InjectionToken, Directive, EventEmitter, Input, Output, NgModule } from '@angular/core';\nimport { coerceCssPixelValue, coerceArray, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport * as i1$1 from '@angular/cdk/platform';\nimport { supportsScrollBehavior, _isTestEnvironment, _getEventTarget } from '@angular/cdk/platform';\nimport * as i5 from '@angular/cdk/bidi';\nimport { BidiModule } from '@angular/cdk/bidi';\nimport { DomPortalOutlet, TemplatePortal, PortalModule } from '@angular/cdk/portal';\nimport { Subject, Subscription, merge } from 'rxjs';\nimport { take, takeUntil, takeWhile } from 'rxjs/operators';\nimport { ESCAPE, hasModifierKey } from '@angular/cdk/keycodes';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst scrollBehaviorSupported = supportsScrollBehavior();\n/**\n * Strategy that will prevent the user from scrolling while the overlay is visible.\n */\nclass BlockScrollStrategy {\n constructor(_viewportRuler, document) {\n this._viewportRuler = _viewportRuler;\n this._previousHTMLStyles = { top: '', left: '' };\n this._isEnabled = false;\n this._document = document;\n }\n /** Attaches this scroll strategy to an overlay. */\n attach() { }\n /** Blocks page-level scroll while the attached overlay is open. */\n enable() {\n if (this._canBeEnabled()) {\n const root = this._document.documentElement;\n this._previousScrollPosition = this._viewportRuler.getViewportScrollPosition();\n // Cache the previous inline styles in case the user had set them.\n this._previousHTMLStyles.left = root.style.left || '';\n this._previousHTMLStyles.top = root.style.top || '';\n // Note: we're using the `html` node, instead of the `body`, because the `body` may\n // have the user agent margin, whereas the `html` is guaranteed not to have one.\n root.style.left = coerceCssPixelValue(-this._previousScrollPosition.left);\n root.style.top = coerceCssPixelValue(-this._previousScrollPosition.top);\n root.classList.add('cdk-global-scrollblock');\n this._isEnabled = true;\n }\n }\n /** Unblocks page-level scroll while the attached overlay is open. */\n disable() {\n if (this._isEnabled) {\n const html = this._document.documentElement;\n const body = this._document.body;\n const htmlStyle = html.style;\n const bodyStyle = body.style;\n const previousHtmlScrollBehavior = htmlStyle.scrollBehavior || '';\n const previousBodyScrollBehavior = bodyStyle.scrollBehavior || '';\n this._isEnabled = false;\n htmlStyle.left = this._previousHTMLStyles.left;\n htmlStyle.top = this._previousHTMLStyles.top;\n html.classList.remove('cdk-global-scrollblock');\n // Disable user-defined smooth scrolling temporarily while we restore the scroll position.\n // See https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior\n // Note that we don't mutate the property if the browser doesn't support `scroll-behavior`,\n // because it can throw off feature detections in `supportsScrollBehavior` which\n // checks for `'scrollBehavior' in documentElement.style`.\n if (scrollBehaviorSupported) {\n htmlStyle.scrollBehavior = bodyStyle.scrollBehavior = 'auto';\n }\n window.scroll(this._previousScrollPosition.left, this._previousScrollPosition.top);\n if (scrollBehaviorSupported) {\n htmlStyle.scrollBehavior = previousHtmlScrollBehavior;\n bodyStyle.scrollBehavior = previousBodyScrollBehavior;\n }\n }\n }\n _canBeEnabled() {\n // Since the scroll strategies can't be singletons, we have to use a global CSS class\n // (`cdk-global-scrollblock`) to make sure that we don't try to disable global\n // scrolling multiple times.\n const html = this._document.documentElement;\n if (html.classList.contains('cdk-global-scrollblock') || this._isEnabled) {\n return false;\n }\n const body = this._document.body;\n const viewport = this._viewportRuler.getViewportSize();\n return body.scrollHeight > viewport.height || body.scrollWidth > viewport.width;\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Returns an error to be thrown when attempting to attach an already-attached scroll strategy.\n */\nfunction getMatScrollStrategyAlreadyAttachedError() {\n return Error(`Scroll strategy has already been attached.`);\n}\n\n/**\n * Strategy that will close the overlay as soon as the user starts scrolling.\n */\nclass CloseScrollStrategy {\n constructor(_scrollDispatcher, _ngZone, _viewportRuler, _config) {\n this._scrollDispatcher = _scrollDispatcher;\n this._ngZone = _ngZone;\n this._viewportRuler = _viewportRuler;\n this._config = _config;\n this._scrollSubscription = null;\n /** Detaches the overlay ref and disables the scroll strategy. */\n this._detach = () => {\n this.disable();\n if (this._overlayRef.hasAttached()) {\n this._ngZone.run(() => this._overlayRef.detach());\n }\n };\n }\n /** Attaches this scroll strategy to an overlay. */\n attach(overlayRef) {\n if (this._overlayRef && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw getMatScrollStrategyAlreadyAttachedError();\n }\n this._overlayRef = overlayRef;\n }\n /** Enables the closing of the attached overlay on scroll. */\n enable() {\n if (this._scrollSubscription) {\n return;\n }\n const stream = this._scrollDispatcher.scrolled(0);\n if (this._config && this._config.threshold && this._config.threshold > 1) {\n this._initialScrollPosition = this._viewportRuler.getViewportScrollPosition().top;\n this._scrollSubscription = stream.subscribe(() => {\n const scrollPosition = this._viewportRuler.getViewportScrollPosition().top;\n if (Math.abs(scrollPosition - this._initialScrollPosition) > this._config.threshold) {\n this._detach();\n }\n else {\n this._overlayRef.updatePosition();\n }\n });\n }\n else {\n this._scrollSubscription = stream.subscribe(this._detach);\n }\n }\n /** Disables the closing the attached overlay on scroll. */\n disable() {\n if (this._scrollSubscription) {\n this._scrollSubscription.unsubscribe();\n this._scrollSubscription = null;\n }\n }\n detach() {\n this.disable();\n this._overlayRef = null;\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Scroll strategy that doesn't do anything. */\nclass NoopScrollStrategy {\n /** Does nothing, as this scroll strategy is a no-op. */\n enable() { }\n /** Does nothing, as this scroll strategy is a no-op. */\n disable() { }\n /** Does nothing, as this scroll strategy is a no-op. */\n attach() { }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Gets whether an element is scrolled outside of view by any of its parent scrolling containers.\n * @param element Dimensions of the element (from getBoundingClientRect)\n * @param scrollContainers Dimensions of element's scrolling containers (from getBoundingClientRect)\n * @returns Whether the element is scrolled out of view\n * @docs-private\n */\nfunction isElementScrolledOutsideView(element, scrollContainers) {\n return scrollContainers.some(containerBounds => {\n const outsideAbove = element.bottom < containerBounds.top;\n const outsideBelow = element.top > containerBounds.bottom;\n const outsideLeft = element.right < containerBounds.left;\n const outsideRight = element.left > containerBounds.right;\n return outsideAbove || outsideBelow || outsideLeft || outsideRight;\n });\n}\n/**\n * Gets whether an element is clipped by any of its scrolling containers.\n * @param element Dimensions of the element (from getBoundingClientRect)\n * @param scrollContainers Dimensions of element's scrolling containers (from getBoundingClientRect)\n * @returns Whether the element is clipped\n * @docs-private\n */\nfunction isElementClippedByScrolling(element, scrollContainers) {\n return scrollContainers.some(scrollContainerRect => {\n const clippedAbove = element.top < scrollContainerRect.top;\n const clippedBelow = element.bottom > scrollContainerRect.bottom;\n const clippedLeft = element.left < scrollContainerRect.left;\n const clippedRight = element.right > scrollContainerRect.right;\n return clippedAbove || clippedBelow || clippedLeft || clippedRight;\n });\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Strategy that will update the element position as the user is scrolling.\n */\nclass RepositionScrollStrategy {\n constructor(_scrollDispatcher, _viewportRuler, _ngZone, _config) {\n this._scrollDispatcher = _scrollDispatcher;\n this._viewportRuler = _viewportRuler;\n this._ngZone = _ngZone;\n this._config = _config;\n this._scrollSubscription = null;\n }\n /** Attaches this scroll strategy to an overlay. */\n attach(overlayRef) {\n if (this._overlayRef && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw getMatScrollStrategyAlreadyAttachedError();\n }\n this._overlayRef = overlayRef;\n }\n /** Enables repositioning of the attached overlay on scroll. */\n enable() {\n if (!this._scrollSubscription) {\n const throttle = this._config ? this._config.scrollThrottle : 0;\n this._scrollSubscription = this._scrollDispatcher.scrolled(throttle).subscribe(() => {\n this._overlayRef.updatePosition();\n // TODO(crisbeto): make `close` on by default once all components can handle it.\n if (this._config && this._config.autoClose) {\n const overlayRect = this._overlayRef.overlayElement.getBoundingClientRect();\n const { width, height } = this._viewportRuler.getViewportSize();\n // TODO(crisbeto): include all ancestor scroll containers here once\n // we have a way of exposing the trigger element to the scroll strategy.\n const parentRects = [{ width, height, bottom: height, right: width, top: 0, left: 0 }];\n if (isElementScrolledOutsideView(overlayRect, parentRects)) {\n this.disable();\n this._ngZone.run(() => this._overlayRef.detach());\n }\n }\n });\n }\n }\n /** Disables repositioning of the attached overlay on scroll. */\n disable() {\n if (this._scrollSubscription) {\n this._scrollSubscription.unsubscribe();\n this._scrollSubscription = null;\n }\n }\n detach() {\n this.disable();\n this._overlayRef = null;\n }\n}\n\n/**\n * Options for how an overlay will handle scrolling.\n *\n * Users can provide a custom value for `ScrollStrategyOptions` to replace the default\n * behaviors. This class primarily acts as a factory for ScrollStrategy instances.\n */\nclass ScrollStrategyOptions {\n constructor(_scrollDispatcher, _viewportRuler, _ngZone, document) {\n this._scrollDispatcher = _scrollDispatcher;\n this._viewportRuler = _viewportRuler;\n this._ngZone = _ngZone;\n /** Do nothing on scroll. */\n this.noop = () => new NoopScrollStrategy();\n /**\n * Close the overlay as soon as the user scrolls.\n * @param config Configuration to be used inside the scroll strategy.\n */\n this.close = (config) => new CloseScrollStrategy(this._scrollDispatcher, this._ngZone, this._viewportRuler, config);\n /** Block scrolling. */\n this.block = () => new BlockScrollStrategy(this._viewportRuler, this._document);\n /**\n * Update the overlay's position on scroll.\n * @param config Configuration to be used inside the scroll strategy.\n * Allows debouncing the reposition calls.\n */\n this.reposition = (config) => new RepositionScrollStrategy(this._scrollDispatcher, this._viewportRuler, this._ngZone, config);\n this._document = document;\n }\n}\nScrollStrategyOptions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ScrollStrategyOptions, deps: [{ token: i1.ScrollDispatcher }, { token: i1.ViewportRuler }, { token: i0.NgZone }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });\nScrollStrategyOptions.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ScrollStrategyOptions, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ScrollStrategyOptions, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: i1.ScrollDispatcher }, { type: i1.ViewportRuler }, { type: i0.NgZone }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Initial configuration used when creating an overlay. */\nclass OverlayConfig {\n constructor(config) {\n /** Strategy to be used when handling scroll events while the overlay is open. */\n this.scrollStrategy = new NoopScrollStrategy();\n /** Custom class to add to the overlay pane. */\n this.panelClass = '';\n /** Whether the overlay has a backdrop. */\n this.hasBackdrop = false;\n /** Custom class to add to the backdrop */\n this.backdropClass = 'cdk-overlay-dark-backdrop';\n /**\n * Whether the overlay should be disposed of when the user goes backwards/forwards in history.\n * Note that this usually doesn't include clicking on links (unless the user is using\n * the `HashLocationStrategy`).\n */\n this.disposeOnNavigation = false;\n if (config) {\n // Use `Iterable` instead of `Array` because TypeScript, as of 3.6.3,\n // loses the array generic type in the `for of`. But we *also* have to use `Array` because\n // typescript won't iterate over an `Iterable` unless you compile with `--downlevelIteration`\n const configKeys = Object.keys(config);\n for (const key of configKeys) {\n if (config[key] !== undefined) {\n // TypeScript, as of version 3.5, sees the left-hand-side of this expression\n // as \"I don't know *which* key this is, so the only valid value is the intersection\n // of all the posible values.\" In this case, that happens to be `undefined`. TypeScript\n // is not smart enough to see that the right-hand-side is actually an access of the same\n // exact type with the same exact key, meaning that the value type must be identical.\n // So we use `any` to work around this.\n this[key] = config[key];\n }\n }\n }\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** The points of the origin element and the overlay element to connect. */\nclass ConnectionPositionPair {\n constructor(origin, overlay, \n /** Offset along the X axis. */\n offsetX, \n /** Offset along the Y axis. */\n offsetY, \n /** Class(es) to be applied to the panel while this position is active. */\n panelClass) {\n this.offsetX = offsetX;\n this.offsetY = offsetY;\n this.panelClass = panelClass;\n this.originX = origin.originX;\n this.originY = origin.originY;\n this.overlayX = overlay.overlayX;\n this.overlayY = overlay.overlayY;\n }\n}\n/**\n * Set of properties regarding the position of the origin and overlay relative to the viewport\n * with respect to the containing Scrollable elements.\n *\n * The overlay and origin are clipped if any part of their bounding client rectangle exceeds the\n * bounds of any one of the strategy's Scrollable's bounding client rectangle.\n *\n * The overlay and origin are outside view if there is no overlap between their bounding client\n * rectangle and any one of the strategy's Scrollable's bounding client rectangle.\n *\n * ----------- -----------\n * | outside | | clipped |\n * | view | --------------------------\n * | | | | | |\n * ---------- | ----------- |\n * -------------------------- | |\n * | | | Scrollable |\n * | | | |\n * | | --------------------------\n * | Scrollable |\n * | |\n * --------------------------\n *\n * @docs-private\n */\nclass ScrollingVisibility {\n}\n/** The change event emitted by the strategy when a fallback position is used. */\nclass ConnectedOverlayPositionChange {\n constructor(\n /** The position used as a result of this change. */\n connectionPair, \n /** @docs-private */\n scrollableViewProperties) {\n this.connectionPair = connectionPair;\n this.scrollableViewProperties = scrollableViewProperties;\n }\n}\n/**\n * Validates whether a vertical position property matches the expected values.\n * @param property Name of the property being validated.\n * @param value Value of the property being validated.\n * @docs-private\n */\nfunction validateVerticalPosition(property, value) {\n if (value !== 'top' && value !== 'bottom' && value !== 'center') {\n throw Error(`ConnectedPosition: Invalid ${property} \"${value}\". ` +\n `Expected \"top\", \"bottom\" or \"center\".`);\n }\n}\n/**\n * Validates whether a horizontal position property matches the expected values.\n * @param property Name of the property being validated.\n * @param value Value of the property being validated.\n * @docs-private\n */\nfunction validateHorizontalPosition(property, value) {\n if (value !== 'start' && value !== 'end' && value !== 'center') {\n throw Error(`ConnectedPosition: Invalid ${property} \"${value}\". ` +\n `Expected \"start\", \"end\" or \"center\".`);\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Reference to an overlay that has been created with the Overlay service.\n * Used to manipulate or dispose of said overlay.\n */\nclass OverlayRef {\n constructor(_portalOutlet, _host, _pane, _config, _ngZone, _keyboardDispatcher, _document, _location, _outsideClickDispatcher) {\n this._portalOutlet = _portalOutlet;\n this._host = _host;\n this._pane = _pane;\n this._config = _config;\n this._ngZone = _ngZone;\n this._keyboardDispatcher = _keyboardDispatcher;\n this._document = _document;\n this._location = _location;\n this._outsideClickDispatcher = _outsideClickDispatcher;\n this._backdropElement = null;\n this._backdropClick = new Subject();\n this._attachments = new Subject();\n this._detachments = new Subject();\n this._locationChanges = Subscription.EMPTY;\n this._backdropClickHandler = (event) => this._backdropClick.next(event);\n this._backdropTransitionendHandler = (event) => {\n this._disposeBackdrop(event.target);\n };\n /** Stream of keydown events dispatched to this overlay. */\n this._keydownEvents = new Subject();\n /** Stream of mouse outside events dispatched to this overlay. */\n this._outsidePointerEvents = new Subject();\n if (_config.scrollStrategy) {\n this._scrollStrategy = _config.scrollStrategy;\n this._scrollStrategy.attach(this);\n }\n this._positionStrategy = _config.positionStrategy;\n }\n /** The overlay's HTML element */\n get overlayElement() {\n return this._pane;\n }\n /** The overlay's backdrop HTML element. */\n get backdropElement() {\n return this._backdropElement;\n }\n /**\n * Wrapper around the panel element. Can be used for advanced\n * positioning where a wrapper with specific styling is\n * required around the overlay pane.\n */\n get hostElement() {\n return this._host;\n }\n /**\n * Attaches content, given via a Portal, to the overlay.\n * If the overlay is configured to have a backdrop, it will be created.\n *\n * @param portal Portal instance to which to attach the overlay.\n * @returns The portal attachment result.\n */\n attach(portal) {\n let attachResult = this._portalOutlet.attach(portal);\n // Update the pane element with the given configuration.\n if (!this._host.parentElement && this._previousHostParent) {\n this._previousHostParent.appendChild(this._host);\n }\n if (this._positionStrategy) {\n this._positionStrategy.attach(this);\n }\n this._updateStackingOrder();\n this._updateElementSize();\n this._updateElementDirection();\n if (this._scrollStrategy) {\n this._scrollStrategy.enable();\n }\n // Update the position once the zone is stable so that the overlay will be fully rendered\n // before attempting to position it, as the position may depend on the size of the rendered\n // content.\n this._ngZone.onStable.pipe(take(1)).subscribe(() => {\n // The overlay could've been detached before the zone has stabilized.\n if (this.hasAttached()) {\n this.updatePosition();\n }\n });\n // Enable pointer events for the overlay pane element.\n this._togglePointerEvents(true);\n if (this._config.hasBackdrop) {\n this._attachBackdrop();\n }\n if (this._config.panelClass) {\n this._toggleClasses(this._pane, this._config.panelClass, true);\n }\n // Only emit the `attachments` event once all other setup is done.\n this._attachments.next();\n // Track this overlay by the keyboard dispatcher\n this._keyboardDispatcher.add(this);\n if (this._config.disposeOnNavigation) {\n this._locationChanges = this._location.subscribe(() => this.dispose());\n }\n this._outsideClickDispatcher.add(this);\n return attachResult;\n }\n /**\n * Detaches an overlay from a portal.\n * @returns The portal detachment result.\n */\n detach() {\n if (!this.hasAttached()) {\n return;\n }\n this.detachBackdrop();\n // When the overlay is detached, the pane element should disable pointer events.\n // This is necessary because otherwise the pane element will cover the page and disable\n // pointer events therefore. Depends on the position strategy and the applied pane boundaries.\n this._togglePointerEvents(false);\n if (this._positionStrategy && this._positionStrategy.detach) {\n this._positionStrategy.detach();\n }\n if (this._scrollStrategy) {\n this._scrollStrategy.disable();\n }\n const detachmentResult = this._portalOutlet.detach();\n // Only emit after everything is detached.\n this._detachments.next();\n // Remove this overlay from keyboard dispatcher tracking.\n this._keyboardDispatcher.remove(this);\n // Keeping the host element in the DOM can cause scroll jank, because it still gets\n // rendered, even though it's transparent and unclickable which is why we remove it.\n this._detachContentWhenStable();\n this._locationChanges.unsubscribe();\n this._outsideClickDispatcher.remove(this);\n return detachmentResult;\n }\n /** Cleans up the overlay from the DOM. */\n dispose() {\n var _a;\n const isAttached = this.hasAttached();\n if (this._positionStrategy) {\n this._positionStrategy.dispose();\n }\n this._disposeScrollStrategy();\n this._disposeBackdrop(this._backdropElement);\n this._locationChanges.unsubscribe();\n this._keyboardDispatcher.remove(this);\n this._portalOutlet.dispose();\n this._attachments.complete();\n this._backdropClick.complete();\n this._keydownEvents.complete();\n this._outsidePointerEvents.complete();\n this._outsideClickDispatcher.remove(this);\n (_a = this._host) === null || _a === void 0 ? void 0 : _a.remove();\n this._previousHostParent = this._pane = this._host = null;\n if (isAttached) {\n this._detachments.next();\n }\n this._detachments.complete();\n }\n /** Whether the overlay has attached content. */\n hasAttached() {\n return this._portalOutlet.hasAttached();\n }\n /** Gets an observable that emits when the backdrop has been clicked. */\n backdropClick() {\n return this._backdropClick;\n }\n /** Gets an observable that emits when the overlay has been attached. */\n attachments() {\n return this._attachments;\n }\n /** Gets an observable that emits when the overlay has been detached. */\n detachments() {\n return this._detachments;\n }\n /** Gets an observable of keydown events targeted to this overlay. */\n keydownEvents() {\n return this._keydownEvents;\n }\n /** Gets an observable of pointer events targeted outside this overlay. */\n outsidePointerEvents() {\n return this._outsidePointerEvents;\n }\n /** Gets the current overlay configuration, which is immutable. */\n getConfig() {\n return this._config;\n }\n /** Updates the position of the overlay based on the position strategy. */\n updatePosition() {\n if (this._positionStrategy) {\n this._positionStrategy.apply();\n }\n }\n /** Switches to a new position strategy and updates the overlay position. */\n updatePositionStrategy(strategy) {\n if (strategy === this._positionStrategy) {\n return;\n }\n if (this._positionStrategy) {\n this._positionStrategy.dispose();\n }\n this._positionStrategy = strategy;\n if (this.hasAttached()) {\n strategy.attach(this);\n this.updatePosition();\n }\n }\n /** Update the size properties of the overlay. */\n updateSize(sizeConfig) {\n this._config = Object.assign(Object.assign({}, this._config), sizeConfig);\n this._updateElementSize();\n }\n /** Sets the LTR/RTL direction for the overlay. */\n setDirection(dir) {\n this._config = Object.assign(Object.assign({}, this._config), { direction: dir });\n this._updateElementDirection();\n }\n /** Add a CSS class or an array of classes to the overlay pane. */\n addPanelClass(classes) {\n if (this._pane) {\n this._toggleClasses(this._pane, classes, true);\n }\n }\n /** Remove a CSS class or an array of classes from the overlay pane. */\n removePanelClass(classes) {\n if (this._pane) {\n this._toggleClasses(this._pane, classes, false);\n }\n }\n /**\n * Returns the layout direction of the overlay panel.\n */\n getDirection() {\n const direction = this._config.direction;\n if (!direction) {\n return 'ltr';\n }\n return typeof direction === 'string' ? direction : direction.value;\n }\n /** Switches to a new scroll strategy. */\n updateScrollStrategy(strategy) {\n if (strategy === this._scrollStrategy) {\n return;\n }\n this._disposeScrollStrategy();\n this._scrollStrategy = strategy;\n if (this.hasAttached()) {\n strategy.attach(this);\n strategy.enable();\n }\n }\n /** Updates the text direction of the overlay panel. */\n _updateElementDirection() {\n this._host.setAttribute('dir', this.getDirection());\n }\n /** Updates the size of the overlay element based on the overlay config. */\n _updateElementSize() {\n if (!this._pane) {\n return;\n }\n const style = this._pane.style;\n style.width = coerceCssPixelValue(this._config.width);\n style.height = coerceCssPixelValue(this._config.height);\n style.minWidth = coerceCssPixelValue(this._config.minWidth);\n style.minHeight = coerceCssPixelValue(this._config.minHeight);\n style.maxWidth = coerceCssPixelValue(this._config.maxWidth);\n style.maxHeight = coerceCssPixelValue(this._config.maxHeight);\n }\n /** Toggles the pointer events for the overlay pane element. */\n _togglePointerEvents(enablePointer) {\n this._pane.style.pointerEvents = enablePointer ? '' : 'none';\n }\n /** Attaches a backdrop for this overlay. */\n _attachBackdrop() {\n const showingClass = 'cdk-overlay-backdrop-showing';\n this._backdropElement = this._document.createElement('div');\n this._backdropElement.classList.add('cdk-overlay-backdrop');\n if (this._config.backdropClass) {\n this._toggleClasses(this._backdropElement, this._config.backdropClass, true);\n }\n // Insert the backdrop before the pane in the DOM order,\n // in order to handle stacked overlays properly.\n this._host.parentElement.insertBefore(this._backdropElement, this._host);\n // Forward backdrop clicks such that the consumer of the overlay can perform whatever\n // action desired when such a click occurs (usually closing the overlay).\n this._backdropElement.addEventListener('click', this._backdropClickHandler);\n // Add class to fade-in the backdrop after one frame.\n if (typeof requestAnimationFrame !== 'undefined') {\n this._ngZone.runOutsideAngular(() => {\n requestAnimationFrame(() => {\n if (this._backdropElement) {\n this._backdropElement.classList.add(showingClass);\n }\n });\n });\n }\n else {\n this._backdropElement.classList.add(showingClass);\n }\n }\n /**\n * Updates the stacking order of the element, moving it to the top if necessary.\n * This is required in cases where one overlay was detached, while another one,\n * that should be behind it, was destroyed. The next time both of them are opened,\n * the stacking will be wrong, because the detached element's pane will still be\n * in its original DOM position.\n */\n _updateStackingOrder() {\n if (this._host.nextSibling) {\n this._host.parentNode.appendChild(this._host);\n }\n }\n /** Detaches the backdrop (if any) associated with the overlay. */\n detachBackdrop() {\n const backdropToDetach = this._backdropElement;\n if (!backdropToDetach) {\n return;\n }\n backdropToDetach.classList.remove('cdk-overlay-backdrop-showing');\n this._ngZone.runOutsideAngular(() => {\n backdropToDetach.addEventListener('transitionend', this._backdropTransitionendHandler);\n });\n // If the backdrop doesn't have a transition, the `transitionend` event won't fire.\n // In this case we make it unclickable and we try to remove it after a delay.\n backdropToDetach.style.pointerEvents = 'none';\n // Run this outside the Angular zone because there's nothing that Angular cares about.\n // If it were to run inside the Angular zone, every test that used Overlay would have to be\n // either async or fakeAsync.\n this._backdropTimeout = this._ngZone.runOutsideAngular(() => setTimeout(() => {\n this._disposeBackdrop(backdropToDetach);\n }, 500));\n }\n /** Toggles a single CSS class or an array of classes on an element. */\n _toggleClasses(element, cssClasses, isAdd) {\n const classes = coerceArray(cssClasses || []).filter(c => !!c);\n if (classes.length) {\n isAdd ? element.classList.add(...classes) : element.classList.remove(...classes);\n }\n }\n /** Detaches the overlay content next time the zone stabilizes. */\n _detachContentWhenStable() {\n // Normally we wouldn't have to explicitly run this outside the `NgZone`, however\n // if the consumer is using `zone-patch-rxjs`, the `Subscription.unsubscribe` call will\n // be patched to run inside the zone, which will throw us into an infinite loop.\n this._ngZone.runOutsideAngular(() => {\n // We can't remove the host here immediately, because the overlay pane's content\n // might still be animating. This stream helps us avoid interrupting the animation\n // by waiting for the pane to become empty.\n const subscription = this._ngZone.onStable\n .pipe(takeUntil(merge(this._attachments, this._detachments)))\n .subscribe(() => {\n // Needs a couple of checks for the pane and host, because\n // they may have been removed by the time the zone stabilizes.\n if (!this._pane || !this._host || this._pane.children.length === 0) {\n if (this._pane && this._config.panelClass) {\n this._toggleClasses(this._pane, this._config.panelClass, false);\n }\n if (this._host && this._host.parentElement) {\n this._previousHostParent = this._host.parentElement;\n this._host.remove();\n }\n subscription.unsubscribe();\n }\n });\n });\n }\n /** Disposes of a scroll strategy. */\n _disposeScrollStrategy() {\n const scrollStrategy = this._scrollStrategy;\n if (scrollStrategy) {\n scrollStrategy.disable();\n if (scrollStrategy.detach) {\n scrollStrategy.detach();\n }\n }\n }\n /** Removes a backdrop element from the DOM. */\n _disposeBackdrop(backdrop) {\n if (backdrop) {\n backdrop.removeEventListener('click', this._backdropClickHandler);\n backdrop.removeEventListener('transitionend', this._backdropTransitionendHandler);\n backdrop.remove();\n // It is possible that a new portal has been attached to this overlay since we started\n // removing the backdrop. If that is the case, only clear the backdrop reference if it\n // is still the same instance that we started to remove.\n if (this._backdropElement === backdrop) {\n this._backdropElement = null;\n }\n }\n if (this._backdropTimeout) {\n clearTimeout(this._backdropTimeout);\n this._backdropTimeout = undefined;\n }\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Container inside which all overlays will render. */\nclass OverlayContainer {\n constructor(document, _platform) {\n this._platform = _platform;\n this._document = document;\n }\n ngOnDestroy() {\n var _a;\n (_a = this._containerElement) === null || _a === void 0 ? void 0 : _a.remove();\n }\n /**\n * This method returns the overlay container element. It will lazily\n * create the element the first time it is called to facilitate using\n * the container in non-browser environments.\n * @returns the container element\n */\n getContainerElement() {\n if (!this._containerElement) {\n this._createContainer();\n }\n return this._containerElement;\n }\n /**\n * Create the overlay container element, which is simply a div\n * with the 'cdk-overlay-container' class on the document body.\n */\n _createContainer() {\n const containerClass = 'cdk-overlay-container';\n // TODO(crisbeto): remove the testing check once we have an overlay testing\n // module or Angular starts tearing down the testing `NgModule`. See:\n // https://github.com/angular/angular/issues/18831\n if (this._platform.isBrowser || _isTestEnvironment()) {\n const oppositePlatformContainers = this._document.querySelectorAll(`.${containerClass}[platform=\"server\"], ` + `.${containerClass}[platform=\"test\"]`);\n // Remove any old containers from the opposite platform.\n // This can happen when transitioning from the server to the client.\n for (let i = 0; i < oppositePlatformContainers.length; i++) {\n oppositePlatformContainers[i].remove();\n }\n }\n const container = this._document.createElement('div');\n container.classList.add(containerClass);\n // A long time ago we kept adding new overlay containers whenever a new app was instantiated,\n // but at some point we added logic which clears the duplicate ones in order to avoid leaks.\n // The new logic was a little too aggressive since it was breaking some legitimate use cases.\n // To mitigate the problem we made it so that only containers from a different platform are\n // cleared, but the side-effect was that people started depending on the overly-aggressive\n // logic to clean up their tests for them. Until we can introduce an overlay-specific testing\n // module which does the cleanup, we try to detect that we're in a test environment and we\n // always clear the container. See #17006.\n // TODO(crisbeto): remove the test environment check once we have an overlay testing module.\n if (_isTestEnvironment()) {\n container.setAttribute('platform', 'test');\n }\n else if (!this._platform.isBrowser) {\n container.setAttribute('platform', 'server');\n }\n this._document.body.appendChild(container);\n this._containerElement = container;\n }\n}\nOverlayContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayContainer, deps: [{ token: DOCUMENT }, { token: i1$1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });\nOverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayContainer, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayContainer, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: i1$1.Platform }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// TODO: refactor clipping detection into a separate thing (part of scrolling module)\n// TODO: doesn't handle both flexible width and height when it has to scroll along both axis.\n/** Class to be added to the overlay bounding box. */\nconst boundingBoxClass = 'cdk-overlay-connected-position-bounding-box';\n/** Regex used to split a string on its CSS units. */\nconst cssUnitPattern = /([A-Za-z%]+)$/;\n/**\n * A strategy for positioning overlays. Using this strategy, an overlay is given an\n * implicit position relative some origin element. The relative position is defined in terms of\n * a point on the origin element that is connected to a point on the overlay element. For example,\n * a basic dropdown is connecting the bottom-left corner of the origin to the top-left corner\n * of the overlay.\n */\nclass FlexibleConnectedPositionStrategy {\n constructor(connectedTo, _viewportRuler, _document, _platform, _overlayContainer) {\n this._viewportRuler = _viewportRuler;\n this._document = _document;\n this._platform = _platform;\n this._overlayContainer = _overlayContainer;\n /** Last size used for the bounding box. Used to avoid resizing the overlay after open. */\n this._lastBoundingBoxSize = { width: 0, height: 0 };\n /** Whether the overlay was pushed in a previous positioning. */\n this._isPushed = false;\n /** Whether the overlay can be pushed on-screen on the initial open. */\n this._canPush = true;\n /** Whether the overlay can grow via flexible width/height after the initial open. */\n this._growAfterOpen = false;\n /** Whether the overlay's width and height can be constrained to fit within the viewport. */\n this._hasFlexibleDimensions = true;\n /** Whether the overlay position is locked. */\n this._positionLocked = false;\n /** Amount of space that must be maintained between the overlay and the edge of the viewport. */\n this._viewportMargin = 0;\n /** The Scrollable containers used to check scrollable view properties on position change. */\n this._scrollables = [];\n /** Ordered list of preferred positions, from most to least desirable. */\n this._preferredPositions = [];\n /** Subject that emits whenever the position changes. */\n this._positionChanges = new Subject();\n /** Subscription to viewport size changes. */\n this._resizeSubscription = Subscription.EMPTY;\n /** Default offset for the overlay along the x axis. */\n this._offsetX = 0;\n /** Default offset for the overlay along the y axis. */\n this._offsetY = 0;\n /** Keeps track of the CSS classes that the position strategy has applied on the overlay panel. */\n this._appliedPanelClasses = [];\n /** Observable sequence of position changes. */\n this.positionChanges = this._positionChanges;\n this.setOrigin(connectedTo);\n }\n /** Ordered list of preferred positions, from most to least desirable. */\n get positions() {\n return this._preferredPositions;\n }\n /** Attaches this position strategy to an overlay. */\n attach(overlayRef) {\n if (this._overlayRef &&\n overlayRef !== this._overlayRef &&\n (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('This position strategy is already attached to an overlay');\n }\n this._validatePositions();\n overlayRef.hostElement.classList.add(boundingBoxClass);\n this._overlayRef = overlayRef;\n this._boundingBox = overlayRef.hostElement;\n this._pane = overlayRef.overlayElement;\n this._isDisposed = false;\n this._isInitialRender = true;\n this._lastPosition = null;\n this._resizeSubscription.unsubscribe();\n this._resizeSubscription = this._viewportRuler.change().subscribe(() => {\n // When the window is resized, we want to trigger the next reposition as if it\n // was an initial render, in order for the strategy to pick a new optimal position,\n // otherwise position locking will cause it to stay at the old one.\n this._isInitialRender = true;\n this.apply();\n });\n }\n /**\n * Updates the position of the overlay element, using whichever preferred position relative\n * to the origin best fits on-screen.\n *\n * The selection of a position goes as follows:\n * - If any positions fit completely within the viewport as-is,\n * choose the first position that does so.\n * - If flexible dimensions are enabled and at least one satifies the given minimum width/height,\n * choose the position with the greatest available size modified by the positions' weight.\n * - If pushing is enabled, take the position that went off-screen the least and push it\n * on-screen.\n * - If none of the previous criteria were met, use the position that goes off-screen the least.\n * @docs-private\n */\n apply() {\n // We shouldn't do anything if the strategy was disposed or we're on the server.\n if (this._isDisposed || !this._platform.isBrowser) {\n return;\n }\n // If the position has been applied already (e.g. when the overlay was opened) and the\n // consumer opted into locking in the position, re-use the old position, in order to\n // prevent the overlay from jumping around.\n if (!this._isInitialRender && this._positionLocked && this._lastPosition) {\n this.reapplyLastPosition();\n return;\n }\n this._clearPanelClasses();\n this._resetOverlayElementStyles();\n this._resetBoundingBoxStyles();\n // We need the bounding rects for the origin, the overlay and the container to determine how to position\n // the overlay relative to the origin.\n // We use the viewport rect to determine whether a position would go off-screen.\n this._viewportRect = this._getNarrowedViewportRect();\n this._originRect = this._getOriginRect();\n this._overlayRect = this._pane.getBoundingClientRect();\n this._containerRect = this._overlayContainer.getContainerElement().getBoundingClientRect();\n const originRect = this._originRect;\n const overlayRect = this._overlayRect;\n const viewportRect = this._viewportRect;\n const containerRect = this._containerRect;\n // Positions where the overlay will fit with flexible dimensions.\n const flexibleFits = [];\n // Fallback if none of the preferred positions fit within the viewport.\n let fallback;\n // Go through each of the preferred positions looking for a good fit.\n // If a good fit is found, it will be applied immediately.\n for (let pos of this._preferredPositions) {\n // Get the exact (x, y) coordinate for the point-of-origin on the origin element.\n let originPoint = this._getOriginPoint(originRect, containerRect, pos);\n // From that point-of-origin, get the exact (x, y) coordinate for the top-left corner of the\n // overlay in this position. We use the top-left corner for calculations and later translate\n // this into an appropriate (top, left, bottom, right) style.\n let overlayPoint = this._getOverlayPoint(originPoint, overlayRect, pos);\n // Calculate how well the overlay would fit into the viewport with this point.\n let overlayFit = this._getOverlayFit(overlayPoint, overlayRect, viewportRect, pos);\n // If the overlay, without any further work, fits into the viewport, use this position.\n if (overlayFit.isCompletelyWithinViewport) {\n this._isPushed = false;\n this._applyPosition(pos, originPoint);\n return;\n }\n // If the overlay has flexible dimensions, we can use this position\n // so long as there's enough space for the minimum dimensions.\n if (this._canFitWithFlexibleDimensions(overlayFit, overlayPoint, viewportRect)) {\n // Save positions where the overlay will fit with flexible dimensions. We will use these\n // if none of the positions fit *without* flexible dimensions.\n flexibleFits.push({\n position: pos,\n origin: originPoint,\n overlayRect,\n boundingBoxRect: this._calculateBoundingBoxRect(originPoint, pos),\n });\n continue;\n }\n // If the current preferred position does not fit on the screen, remember the position\n // if it has more visible area on-screen than we've seen and move onto the next preferred\n // position.\n if (!fallback || fallback.overlayFit.visibleArea < overlayFit.visibleArea) {\n fallback = { overlayFit, overlayPoint, originPoint, position: pos, overlayRect };\n }\n }\n // If there are any positions where the overlay would fit with flexible dimensions, choose the\n // one that has the greatest area available modified by the position's weight\n if (flexibleFits.length) {\n let bestFit = null;\n let bestScore = -1;\n for (const fit of flexibleFits) {\n const score = fit.boundingBoxRect.width * fit.boundingBoxRect.height * (fit.position.weight || 1);\n if (score > bestScore) {\n bestScore = score;\n bestFit = fit;\n }\n }\n this._isPushed = false;\n this._applyPosition(bestFit.position, bestFit.origin);\n return;\n }\n // When none of the preferred positions fit within the viewport, take the position\n // that went off-screen the least and attempt to push it on-screen.\n if (this._canPush) {\n // TODO(jelbourn): after pushing, the opening \"direction\" of the overlay might not make sense.\n this._isPushed = true;\n this._applyPosition(fallback.position, fallback.originPoint);\n return;\n }\n // All options for getting the overlay within the viewport have been exhausted, so go with the\n // position that went off-screen the least.\n this._applyPosition(fallback.position, fallback.originPoint);\n }\n detach() {\n this._clearPanelClasses();\n this._lastPosition = null;\n this._previousPushAmount = null;\n this._resizeSubscription.unsubscribe();\n }\n /** Cleanup after the element gets destroyed. */\n dispose() {\n if (this._isDisposed) {\n return;\n }\n // We can't use `_resetBoundingBoxStyles` here, because it resets\n // some properties to zero, rather than removing them.\n if (this._boundingBox) {\n extendStyles(this._boundingBox.style, {\n top: '',\n left: '',\n right: '',\n bottom: '',\n height: '',\n width: '',\n alignItems: '',\n justifyContent: '',\n });\n }\n if (this._pane) {\n this._resetOverlayElementStyles();\n }\n if (this._overlayRef) {\n this._overlayRef.hostElement.classList.remove(boundingBoxClass);\n }\n this.detach();\n this._positionChanges.complete();\n this._overlayRef = this._boundingBox = null;\n this._isDisposed = true;\n }\n /**\n * This re-aligns the overlay element with the trigger in its last calculated position,\n * even if a position higher in the \"preferred positions\" list would now fit. This\n * allows one to re-align the panel without changing the orientation of the panel.\n */\n reapplyLastPosition() {\n if (this._isDisposed || !this._platform.isBrowser) {\n return;\n }\n const lastPosition = this._lastPosition;\n if (lastPosition) {\n this._originRect = this._getOriginRect();\n this._overlayRect = this._pane.getBoundingClientRect();\n this._viewportRect = this._getNarrowedViewportRect();\n this._containerRect = this._overlayContainer.getContainerElement().getBoundingClientRect();\n const originPoint = this._getOriginPoint(this._originRect, this._containerRect, lastPosition);\n this._applyPosition(lastPosition, originPoint);\n }\n else {\n this.apply();\n }\n }\n /**\n * Sets the list of Scrollable containers that host the origin element so that\n * on reposition we can evaluate if it or the overlay has been clipped or outside view. Every\n * Scrollable must be an ancestor element of the strategy's origin element.\n */\n withScrollableContainers(scrollables) {\n this._scrollables = scrollables;\n return this;\n }\n /**\n * Adds new preferred positions.\n * @param positions List of positions options for this overlay.\n */\n withPositions(positions) {\n this._preferredPositions = positions;\n // If the last calculated position object isn't part of the positions anymore, clear\n // it in order to avoid it being picked up if the consumer tries to re-apply.\n if (positions.indexOf(this._lastPosition) === -1) {\n this._lastPosition = null;\n }\n this._validatePositions();\n return this;\n }\n /**\n * Sets a minimum distance the overlay may be positioned to the edge of the viewport.\n * @param margin Required margin between the overlay and the viewport edge in pixels.\n */\n withViewportMargin(margin) {\n this._viewportMargin = margin;\n return this;\n }\n /** Sets whether the overlay's width and height can be constrained to fit within the viewport. */\n withFlexibleDimensions(flexibleDimensions = true) {\n this._hasFlexibleDimensions = flexibleDimensions;\n return this;\n }\n /** Sets whether the overlay can grow after the initial open via flexible width/height. */\n withGrowAfterOpen(growAfterOpen = true) {\n this._growAfterOpen = growAfterOpen;\n return this;\n }\n /** Sets whether the overlay can be pushed on-screen if none of the provided positions fit. */\n withPush(canPush = true) {\n this._canPush = canPush;\n return this;\n }\n /**\n * Sets whether the overlay's position should be locked in after it is positioned\n * initially. When an overlay is locked in, it won't attempt to reposition itself\n * when the position is re-applied (e.g. when the user scrolls away).\n * @param isLocked Whether the overlay should locked in.\n */\n withLockedPosition(isLocked = true) {\n this._positionLocked = isLocked;\n return this;\n }\n /**\n * Sets the origin, relative to which to position the overlay.\n * Using an element origin is useful for building components that need to be positioned\n * relatively to a trigger (e.g. dropdown menus or tooltips), whereas using a point can be\n * used for cases like contextual menus which open relative to the user's pointer.\n * @param origin Reference to the new origin.\n */\n setOrigin(origin) {\n this._origin = origin;\n return this;\n }\n /**\n * Sets the default offset for the overlay's connection point on the x-axis.\n * @param offset New offset in the X axis.\n */\n withDefaultOffsetX(offset) {\n this._offsetX = offset;\n return this;\n }\n /**\n * Sets the default offset for the overlay's connection point on the y-axis.\n * @param offset New offset in the Y axis.\n */\n withDefaultOffsetY(offset) {\n this._offsetY = offset;\n return this;\n }\n /**\n * Configures that the position strategy should set a `transform-origin` on some elements\n * inside the overlay, depending on the current position that is being applied. This is\n * useful for the cases where the origin of an animation can change depending on the\n * alignment of the overlay.\n * @param selector CSS selector that will be used to find the target\n * elements onto which to set the transform origin.\n */\n withTransformOriginOn(selector) {\n this._transformOriginSelector = selector;\n return this;\n }\n /**\n * Gets the (x, y) coordinate of a connection point on the origin based on a relative position.\n */\n _getOriginPoint(originRect, containerRect, pos) {\n let x;\n if (pos.originX == 'center') {\n // Note: when centering we should always use the `left`\n // offset, otherwise the position will be wrong in RTL.\n x = originRect.left + originRect.width / 2;\n }\n else {\n const startX = this._isRtl() ? originRect.right : originRect.left;\n const endX = this._isRtl() ? originRect.left : originRect.right;\n x = pos.originX == 'start' ? startX : endX;\n }\n // When zooming in Safari the container rectangle contains negative values for the position\n // and we need to re-add them to the calculated coordinates.\n if (containerRect.left < 0) {\n x -= containerRect.left;\n }\n let y;\n if (pos.originY == 'center') {\n y = originRect.top + originRect.height / 2;\n }\n else {\n y = pos.originY == 'top' ? originRect.top : originRect.bottom;\n }\n // Normally the containerRect's top value would be zero, however when the overlay is attached to an input\n // (e.g. in an autocomplete), mobile browsers will shift everything in order to put the input in the middle\n // of the screen and to make space for the virtual keyboard. We need to account for this offset,\n // otherwise our positioning will be thrown off.\n // Additionally, when zooming in Safari this fixes the vertical position.\n if (containerRect.top < 0) {\n y -= containerRect.top;\n }\n return { x, y };\n }\n /**\n * Gets the (x, y) coordinate of the top-left corner of the overlay given a given position and\n * origin point to which the overlay should be connected.\n */\n _getOverlayPoint(originPoint, overlayRect, pos) {\n // Calculate the (overlayStartX, overlayStartY), the start of the\n // potential overlay position relative to the origin point.\n let overlayStartX;\n if (pos.overlayX == 'center') {\n overlayStartX = -overlayRect.width / 2;\n }\n else if (pos.overlayX === 'start') {\n overlayStartX = this._isRtl() ? -overlayRect.width : 0;\n }\n else {\n overlayStartX = this._isRtl() ? 0 : -overlayRect.width;\n }\n let overlayStartY;\n if (pos.overlayY == 'center') {\n overlayStartY = -overlayRect.height / 2;\n }\n else {\n overlayStartY = pos.overlayY == 'top' ? 0 : -overlayRect.height;\n }\n // The (x, y) coordinates of the overlay.\n return {\n x: originPoint.x + overlayStartX,\n y: originPoint.y + overlayStartY,\n };\n }\n /** Gets how well an overlay at the given point will fit within the viewport. */\n _getOverlayFit(point, rawOverlayRect, viewport, position) {\n // Round the overlay rect when comparing against the\n // viewport, because the viewport is always rounded.\n const overlay = getRoundedBoundingClientRect(rawOverlayRect);\n let { x, y } = point;\n let offsetX = this._getOffset(position, 'x');\n let offsetY = this._getOffset(position, 'y');\n // Account for the offsets since they could push the overlay out of the viewport.\n if (offsetX) {\n x += offsetX;\n }\n if (offsetY) {\n y += offsetY;\n }\n // How much the overlay would overflow at this position, on each side.\n let leftOverflow = 0 - x;\n let rightOverflow = x + overlay.width - viewport.width;\n let topOverflow = 0 - y;\n let bottomOverflow = y + overlay.height - viewport.height;\n // Visible parts of the element on each axis.\n let visibleWidth = this._subtractOverflows(overlay.width, leftOverflow, rightOverflow);\n let visibleHeight = this._subtractOverflows(overlay.height, topOverflow, bottomOverflow);\n let visibleArea = visibleWidth * visibleHeight;\n return {\n visibleArea,\n isCompletelyWithinViewport: overlay.width * overlay.height === visibleArea,\n fitsInViewportVertically: visibleHeight === overlay.height,\n fitsInViewportHorizontally: visibleWidth == overlay.width,\n };\n }\n /**\n * Whether the overlay can fit within the viewport when it may resize either its width or height.\n * @param fit How well the overlay fits in the viewport at some position.\n * @param point The (x, y) coordinates of the overlay at some position.\n * @param viewport The geometry of the viewport.\n */\n _canFitWithFlexibleDimensions(fit, point, viewport) {\n if (this._hasFlexibleDimensions) {\n const availableHeight = viewport.bottom - point.y;\n const availableWidth = viewport.right - point.x;\n const minHeight = getPixelValue(this._overlayRef.getConfig().minHeight);\n const minWidth = getPixelValue(this._overlayRef.getConfig().minWidth);\n const verticalFit = fit.fitsInViewportVertically || (minHeight != null && minHeight <= availableHeight);\n const horizontalFit = fit.fitsInViewportHorizontally || (minWidth != null && minWidth <= availableWidth);\n return verticalFit && horizontalFit;\n }\n return false;\n }\n /**\n * Gets the point at which the overlay can be \"pushed\" on-screen. If the overlay is larger than\n * the viewport, the top-left corner will be pushed on-screen (with overflow occuring on the\n * right and bottom).\n *\n * @param start Starting point from which the overlay is pushed.\n * @param rawOverlayRect Dimensions of the overlay.\n * @param scrollPosition Current viewport scroll position.\n * @returns The point at which to position the overlay after pushing. This is effectively a new\n * originPoint.\n */\n _pushOverlayOnScreen(start, rawOverlayRect, scrollPosition) {\n // If the position is locked and we've pushed the overlay already, reuse the previous push\n // amount, rather than pushing it again. If we were to continue pushing, the element would\n // remain in the viewport, which goes against the expectations when position locking is enabled.\n if (this._previousPushAmount && this._positionLocked) {\n return {\n x: start.x + this._previousPushAmount.x,\n y: start.y + this._previousPushAmount.y,\n };\n }\n // Round the overlay rect when comparing against the\n // viewport, because the viewport is always rounded.\n const overlay = getRoundedBoundingClientRect(rawOverlayRect);\n const viewport = this._viewportRect;\n // Determine how much the overlay goes outside the viewport on each\n // side, which we'll use to decide which direction to push it.\n const overflowRight = Math.max(start.x + overlay.width - viewport.width, 0);\n const overflowBottom = Math.max(start.y + overlay.height - viewport.height, 0);\n const overflowTop = Math.max(viewport.top - scrollPosition.top - start.y, 0);\n const overflowLeft = Math.max(viewport.left - scrollPosition.left - start.x, 0);\n // Amount by which to push the overlay in each axis such that it remains on-screen.\n let pushX = 0;\n let pushY = 0;\n // If the overlay fits completely within the bounds of the viewport, push it from whichever\n // direction is goes off-screen. Otherwise, push the top-left corner such that its in the\n // viewport and allow for the trailing end of the overlay to go out of bounds.\n if (overlay.width <= viewport.width) {\n pushX = overflowLeft || -overflowRight;\n }\n else {\n pushX = start.x < this._viewportMargin ? viewport.left - scrollPosition.left - start.x : 0;\n }\n if (overlay.height <= viewport.height) {\n pushY = overflowTop || -overflowBottom;\n }\n else {\n pushY = start.y < this._viewportMargin ? viewport.top - scrollPosition.top - start.y : 0;\n }\n this._previousPushAmount = { x: pushX, y: pushY };\n return {\n x: start.x + pushX,\n y: start.y + pushY,\n };\n }\n /**\n * Applies a computed position to the overlay and emits a position change.\n * @param position The position preference\n * @param originPoint The point on the origin element where the overlay is connected.\n */\n _applyPosition(position, originPoint) {\n this._setTransformOrigin(position);\n this._setOverlayElementStyles(originPoint, position);\n this._setBoundingBoxStyles(originPoint, position);\n if (position.panelClass) {\n this._addPanelClasses(position.panelClass);\n }\n // Save the last connected position in case the position needs to be re-calculated.\n this._lastPosition = position;\n // Notify that the position has been changed along with its change properties.\n // We only emit if we've got any subscriptions, because the scroll visibility\n // calculcations can be somewhat expensive.\n if (this._positionChanges.observers.length) {\n const scrollableViewProperties = this._getScrollVisibility();\n const changeEvent = new ConnectedOverlayPositionChange(position, scrollableViewProperties);\n this._positionChanges.next(changeEvent);\n }\n this._isInitialRender = false;\n }\n /** Sets the transform origin based on the configured selector and the passed-in position. */\n _setTransformOrigin(position) {\n if (!this._transformOriginSelector) {\n return;\n }\n const elements = this._boundingBox.querySelectorAll(this._transformOriginSelector);\n let xOrigin;\n let yOrigin = position.overlayY;\n if (position.overlayX === 'center') {\n xOrigin = 'center';\n }\n else if (this._isRtl()) {\n xOrigin = position.overlayX === 'start' ? 'right' : 'left';\n }\n else {\n xOrigin = position.overlayX === 'start' ? 'left' : 'right';\n }\n for (let i = 0; i < elements.length; i++) {\n elements[i].style.transformOrigin = `${xOrigin} ${yOrigin}`;\n }\n }\n /**\n * Gets the position and size of the overlay's sizing container.\n *\n * This method does no measuring and applies no styles so that we can cheaply compute the\n * bounds for all positions and choose the best fit based on these results.\n */\n _calculateBoundingBoxRect(origin, position) {\n const viewport = this._viewportRect;\n const isRtl = this._isRtl();\n let height, top, bottom;\n if (position.overlayY === 'top') {\n // Overlay is opening \"downward\" and thus is bound by the bottom viewport edge.\n top = origin.y;\n height = viewport.height - top + this._viewportMargin;\n }\n else if (position.overlayY === 'bottom') {\n // Overlay is opening \"upward\" and thus is bound by the top viewport edge. We need to add\n // the viewport margin back in, because the viewport rect is narrowed down to remove the\n // margin, whereas the `origin` position is calculated based on its `ClientRect`.\n bottom = viewport.height - origin.y + this._viewportMargin * 2;\n height = viewport.height - bottom + this._viewportMargin;\n }\n else {\n // If neither top nor bottom, it means that the overlay is vertically centered on the\n // origin point. Note that we want the position relative to the viewport, rather than\n // the page, which is why we don't use something like `viewport.bottom - origin.y` and\n // `origin.y - viewport.top`.\n const smallestDistanceToViewportEdge = Math.min(viewport.bottom - origin.y + viewport.top, origin.y);\n const previousHeight = this._lastBoundingBoxSize.height;\n height = smallestDistanceToViewportEdge * 2;\n top = origin.y - smallestDistanceToViewportEdge;\n if (height > previousHeight && !this._isInitialRender && !this._growAfterOpen) {\n top = origin.y - previousHeight / 2;\n }\n }\n // The overlay is opening 'right-ward' (the content flows to the right).\n const isBoundedByRightViewportEdge = (position.overlayX === 'start' && !isRtl) || (position.overlayX === 'end' && isRtl);\n // The overlay is opening 'left-ward' (the content flows to the left).\n const isBoundedByLeftViewportEdge = (position.overlayX === 'end' && !isRtl) || (position.overlayX === 'start' && isRtl);\n let width, left, right;\n if (isBoundedByLeftViewportEdge) {\n right = viewport.width - origin.x + this._viewportMargin;\n width = origin.x - this._viewportMargin;\n }\n else if (isBoundedByRightViewportEdge) {\n left = origin.x;\n width = viewport.right - origin.x;\n }\n else {\n // If neither start nor end, it means that the overlay is horizontally centered on the\n // origin point. Note that we want the position relative to the viewport, rather than\n // the page, which is why we don't use something like `viewport.right - origin.x` and\n // `origin.x - viewport.left`.\n const smallestDistanceToViewportEdge = Math.min(viewport.right - origin.x + viewport.left, origin.x);\n const previousWidth = this._lastBoundingBoxSize.width;\n width = smallestDistanceToViewportEdge * 2;\n left = origin.x - smallestDistanceToViewportEdge;\n if (width > previousWidth && !this._isInitialRender && !this._growAfterOpen) {\n left = origin.x - previousWidth / 2;\n }\n }\n return { top: top, left: left, bottom: bottom, right: right, width, height };\n }\n /**\n * Sets the position and size of the overlay's sizing wrapper. The wrapper is positioned on the\n * origin's connection point and stetches to the bounds of the viewport.\n *\n * @param origin The point on the origin element where the overlay is connected.\n * @param position The position preference\n */\n _setBoundingBoxStyles(origin, position) {\n const boundingBoxRect = this._calculateBoundingBoxRect(origin, position);\n // It's weird if the overlay *grows* while scrolling, so we take the last size into account\n // when applying a new size.\n if (!this._isInitialRender && !this._growAfterOpen) {\n boundingBoxRect.height = Math.min(boundingBoxRect.height, this._lastBoundingBoxSize.height);\n boundingBoxRect.width = Math.min(boundingBoxRect.width, this._lastBoundingBoxSize.width);\n }\n const styles = {};\n if (this._hasExactPosition()) {\n styles.top = styles.left = '0';\n styles.bottom = styles.right = styles.maxHeight = styles.maxWidth = '';\n styles.width = styles.height = '100%';\n }\n else {\n const maxHeight = this._overlayRef.getConfig().maxHeight;\n const maxWidth = this._overlayRef.getConfig().maxWidth;\n styles.height = coerceCssPixelValue(boundingBoxRect.height);\n styles.top = coerceCssPixelValue(boundingBoxRect.top);\n styles.bottom = coerceCssPixelValue(boundingBoxRect.bottom);\n styles.width = coerceCssPixelValue(boundingBoxRect.width);\n styles.left = coerceCssPixelValue(boundingBoxRect.left);\n styles.right = coerceCssPixelValue(boundingBoxRect.right);\n // Push the pane content towards the proper direction.\n if (position.overlayX === 'center') {\n styles.alignItems = 'center';\n }\n else {\n styles.alignItems = position.overlayX === 'end' ? 'flex-end' : 'flex-start';\n }\n if (position.overlayY === 'center') {\n styles.justifyContent = 'center';\n }\n else {\n styles.justifyContent = position.overlayY === 'bottom' ? 'flex-end' : 'flex-start';\n }\n if (maxHeight) {\n styles.maxHeight = coerceCssPixelValue(maxHeight);\n }\n if (maxWidth) {\n styles.maxWidth = coerceCssPixelValue(maxWidth);\n }\n }\n this._lastBoundingBoxSize = boundingBoxRect;\n extendStyles(this._boundingBox.style, styles);\n }\n /** Resets the styles for the bounding box so that a new positioning can be computed. */\n _resetBoundingBoxStyles() {\n extendStyles(this._boundingBox.style, {\n top: '0',\n left: '0',\n right: '0',\n bottom: '0',\n height: '',\n width: '',\n alignItems: '',\n justifyContent: '',\n });\n }\n /** Resets the styles for the overlay pane so that a new positioning can be computed. */\n _resetOverlayElementStyles() {\n extendStyles(this._pane.style, {\n top: '',\n left: '',\n bottom: '',\n right: '',\n position: '',\n transform: '',\n });\n }\n /** Sets positioning styles to the overlay element. */\n _setOverlayElementStyles(originPoint, position) {\n const styles = {};\n const hasExactPosition = this._hasExactPosition();\n const hasFlexibleDimensions = this._hasFlexibleDimensions;\n const config = this._overlayRef.getConfig();\n if (hasExactPosition) {\n const scrollPosition = this._viewportRuler.getViewportScrollPosition();\n extendStyles(styles, this._getExactOverlayY(position, originPoint, scrollPosition));\n extendStyles(styles, this._getExactOverlayX(position, originPoint, scrollPosition));\n }\n else {\n styles.position = 'static';\n }\n // Use a transform to apply the offsets. We do this because the `center` positions rely on\n // being in the normal flex flow and setting a `top` / `left` at all will completely throw\n // off the position. We also can't use margins, because they won't have an effect in some\n // cases where the element doesn't have anything to \"push off of\". Finally, this works\n // better both with flexible and non-flexible positioning.\n let transformString = '';\n let offsetX = this._getOffset(position, 'x');\n let offsetY = this._getOffset(position, 'y');\n if (offsetX) {\n transformString += `translateX(${offsetX}px) `;\n }\n if (offsetY) {\n transformString += `translateY(${offsetY}px)`;\n }\n styles.transform = transformString.trim();\n // If a maxWidth or maxHeight is specified on the overlay, we remove them. We do this because\n // we need these values to both be set to \"100%\" for the automatic flexible sizing to work.\n // The maxHeight and maxWidth are set on the boundingBox in order to enforce the constraint.\n // Note that this doesn't apply when we have an exact position, in which case we do want to\n // apply them because they'll be cleared from the bounding box.\n if (config.maxHeight) {\n if (hasExactPosition) {\n styles.maxHeight = coerceCssPixelValue(config.maxHeight);\n }\n else if (hasFlexibleDimensions) {\n styles.maxHeight = '';\n }\n }\n if (config.maxWidth) {\n if (hasExactPosition) {\n styles.maxWidth = coerceCssPixelValue(config.maxWidth);\n }\n else if (hasFlexibleDimensions) {\n styles.maxWidth = '';\n }\n }\n extendStyles(this._pane.style, styles);\n }\n /** Gets the exact top/bottom for the overlay when not using flexible sizing or when pushing. */\n _getExactOverlayY(position, originPoint, scrollPosition) {\n // Reset any existing styles. This is necessary in case the\n // preferred position has changed since the last `apply`.\n let styles = { top: '', bottom: '' };\n let overlayPoint = this._getOverlayPoint(originPoint, this._overlayRect, position);\n if (this._isPushed) {\n overlayPoint = this._pushOverlayOnScreen(overlayPoint, this._overlayRect, scrollPosition);\n }\n // We want to set either `top` or `bottom` based on whether the overlay wants to appear\n // above or below the origin and the direction in which the element will expand.\n if (position.overlayY === 'bottom') {\n // When using `bottom`, we adjust the y position such that it is the distance\n // from the bottom of the viewport rather than the top.\n const documentHeight = this._document.documentElement.clientHeight;\n styles.bottom = `${documentHeight - (overlayPoint.y + this._overlayRect.height)}px`;\n }\n else {\n styles.top = coerceCssPixelValue(overlayPoint.y);\n }\n return styles;\n }\n /** Gets the exact left/right for the overlay when not using flexible sizing or when pushing. */\n _getExactOverlayX(position, originPoint, scrollPosition) {\n // Reset any existing styles. This is necessary in case the preferred position has\n // changed since the last `apply`.\n let styles = { left: '', right: '' };\n let overlayPoint = this._getOverlayPoint(originPoint, this._overlayRect, position);\n if (this._isPushed) {\n overlayPoint = this._pushOverlayOnScreen(overlayPoint, this._overlayRect, scrollPosition);\n }\n // We want to set either `left` or `right` based on whether the overlay wants to appear \"before\"\n // or \"after\" the origin, which determines the direction in which the element will expand.\n // For the horizontal axis, the meaning of \"before\" and \"after\" change based on whether the\n // page is in RTL or LTR.\n let horizontalStyleProperty;\n if (this._isRtl()) {\n horizontalStyleProperty = position.overlayX === 'end' ? 'left' : 'right';\n }\n else {\n horizontalStyleProperty = position.overlayX === 'end' ? 'right' : 'left';\n }\n // When we're setting `right`, we adjust the x position such that it is the distance\n // from the right edge of the viewport rather than the left edge.\n if (horizontalStyleProperty === 'right') {\n const documentWidth = this._document.documentElement.clientWidth;\n styles.right = `${documentWidth - (overlayPoint.x + this._overlayRect.width)}px`;\n }\n else {\n styles.left = coerceCssPixelValue(overlayPoint.x);\n }\n return styles;\n }\n /**\n * Gets the view properties of the trigger and overlay, including whether they are clipped\n * or completely outside the view of any of the strategy's scrollables.\n */\n _getScrollVisibility() {\n // Note: needs fresh rects since the position could've changed.\n const originBounds = this._getOriginRect();\n const overlayBounds = this._pane.getBoundingClientRect();\n // TODO(jelbourn): instead of needing all of the client rects for these scrolling containers\n // every time, we should be able to use the scrollTop of the containers if the size of those\n // containers hasn't changed.\n const scrollContainerBounds = this._scrollables.map(scrollable => {\n return scrollable.getElementRef().nativeElement.getBoundingClientRect();\n });\n return {\n isOriginClipped: isElementClippedByScrolling(originBounds, scrollContainerBounds),\n isOriginOutsideView: isElementScrolledOutsideView(originBounds, scrollContainerBounds),\n isOverlayClipped: isElementClippedByScrolling(overlayBounds, scrollContainerBounds),\n isOverlayOutsideView: isElementScrolledOutsideView(overlayBounds, scrollContainerBounds),\n };\n }\n /** Subtracts the amount that an element is overflowing on an axis from its length. */\n _subtractOverflows(length, ...overflows) {\n return overflows.reduce((currentValue, currentOverflow) => {\n return currentValue - Math.max(currentOverflow, 0);\n }, length);\n }\n /** Narrows the given viewport rect by the current _viewportMargin. */\n _getNarrowedViewportRect() {\n // We recalculate the viewport rect here ourselves, rather than using the ViewportRuler,\n // because we want to use the `clientWidth` and `clientHeight` as the base. The difference\n // being that the client properties don't include the scrollbar, as opposed to `innerWidth`\n // and `innerHeight` that do. This is necessary, because the overlay container uses\n // 100% `width` and `height` which don't include the scrollbar either.\n const width = this._document.documentElement.clientWidth;\n const height = this._document.documentElement.clientHeight;\n const scrollPosition = this._viewportRuler.getViewportScrollPosition();\n return {\n top: scrollPosition.top + this._viewportMargin,\n left: scrollPosition.left + this._viewportMargin,\n right: scrollPosition.left + width - this._viewportMargin,\n bottom: scrollPosition.top + height - this._viewportMargin,\n width: width - 2 * this._viewportMargin,\n height: height - 2 * this._viewportMargin,\n };\n }\n /** Whether the we're dealing with an RTL context */\n _isRtl() {\n return this._overlayRef.getDirection() === 'rtl';\n }\n /** Determines whether the overlay uses exact or flexible positioning. */\n _hasExactPosition() {\n return !this._hasFlexibleDimensions || this._isPushed;\n }\n /** Retrieves the offset of a position along the x or y axis. */\n _getOffset(position, axis) {\n if (axis === 'x') {\n // We don't do something like `position['offset' + axis]` in\n // order to avoid breking minifiers that rename properties.\n return position.offsetX == null ? this._offsetX : position.offsetX;\n }\n return position.offsetY == null ? this._offsetY : position.offsetY;\n }\n /** Validates that the current position match the expected values. */\n _validatePositions() {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n if (!this._preferredPositions.length) {\n throw Error('FlexibleConnectedPositionStrategy: At least one position is required.');\n }\n // TODO(crisbeto): remove these once Angular's template type\n // checking is advanced enough to catch these cases.\n this._preferredPositions.forEach(pair => {\n validateHorizontalPosition('originX', pair.originX);\n validateVerticalPosition('originY', pair.originY);\n validateHorizontalPosition('overlayX', pair.overlayX);\n validateVerticalPosition('overlayY', pair.overlayY);\n });\n }\n }\n /** Adds a single CSS class or an array of classes on the overlay panel. */\n _addPanelClasses(cssClasses) {\n if (this._pane) {\n coerceArray(cssClasses).forEach(cssClass => {\n if (cssClass !== '' && this._appliedPanelClasses.indexOf(cssClass) === -1) {\n this._appliedPanelClasses.push(cssClass);\n this._pane.classList.add(cssClass);\n }\n });\n }\n }\n /** Clears the classes that the position strategy has applied from the overlay panel. */\n _clearPanelClasses() {\n if (this._pane) {\n this._appliedPanelClasses.forEach(cssClass => {\n this._pane.classList.remove(cssClass);\n });\n this._appliedPanelClasses = [];\n }\n }\n /** Returns the ClientRect of the current origin. */\n _getOriginRect() {\n const origin = this._origin;\n if (origin instanceof ElementRef) {\n return origin.nativeElement.getBoundingClientRect();\n }\n // Check for Element so SVG elements are also supported.\n if (origin instanceof Element) {\n return origin.getBoundingClientRect();\n }\n const width = origin.width || 0;\n const height = origin.height || 0;\n // If the origin is a point, return a client rect as if it was a 0x0 element at the point.\n return {\n top: origin.y,\n bottom: origin.y + height,\n left: origin.x,\n right: origin.x + width,\n height,\n width,\n };\n }\n}\n/** Shallow-extends a stylesheet object with another stylesheet object. */\nfunction extendStyles(destination, source) {\n for (let key in source) {\n if (source.hasOwnProperty(key)) {\n destination[key] = source[key];\n }\n }\n return destination;\n}\n/**\n * Extracts the pixel value as a number from a value, if it's a number\n * or a CSS pixel string (e.g. `1337px`). Otherwise returns null.\n */\nfunction getPixelValue(input) {\n if (typeof input !== 'number' && input != null) {\n const [value, units] = input.split(cssUnitPattern);\n return !units || units === 'px' ? parseFloat(value) : null;\n }\n return input || null;\n}\n/**\n * Gets a version of an element's bounding `ClientRect` where all the values are rounded down to\n * the nearest pixel. This allows us to account for the cases where there may be sub-pixel\n * deviations in the `ClientRect` returned by the browser (e.g. when zoomed in with a percentage\n * size, see #21350).\n */\nfunction getRoundedBoundingClientRect(clientRect) {\n return {\n top: Math.floor(clientRect.top),\n right: Math.floor(clientRect.right),\n bottom: Math.floor(clientRect.bottom),\n left: Math.floor(clientRect.left),\n width: Math.floor(clientRect.width),\n height: Math.floor(clientRect.height),\n };\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Class to be added to the overlay pane wrapper. */\nconst wrapperClass = 'cdk-global-overlay-wrapper';\n/**\n * A strategy for positioning overlays. Using this strategy, an overlay is given an\n * explicit position relative to the browser's viewport. We use flexbox, instead of\n * transforms, in order to avoid issues with subpixel rendering which can cause the\n * element to become blurry.\n */\nclass GlobalPositionStrategy {\n constructor() {\n this._cssPosition = 'static';\n this._topOffset = '';\n this._bottomOffset = '';\n this._leftOffset = '';\n this._rightOffset = '';\n this._alignItems = '';\n this._justifyContent = '';\n this._width = '';\n this._height = '';\n }\n attach(overlayRef) {\n const config = overlayRef.getConfig();\n this._overlayRef = overlayRef;\n if (this._width && !config.width) {\n overlayRef.updateSize({ width: this._width });\n }\n if (this._height && !config.height) {\n overlayRef.updateSize({ height: this._height });\n }\n overlayRef.hostElement.classList.add(wrapperClass);\n this._isDisposed = false;\n }\n /**\n * Sets the top position of the overlay. Clears any previously set vertical position.\n * @param value New top offset.\n */\n top(value = '') {\n this._bottomOffset = '';\n this._topOffset = value;\n this._alignItems = 'flex-start';\n return this;\n }\n /**\n * Sets the left position of the overlay. Clears any previously set horizontal position.\n * @param value New left offset.\n */\n left(value = '') {\n this._rightOffset = '';\n this._leftOffset = value;\n this._justifyContent = 'flex-start';\n return this;\n }\n /**\n * Sets the bottom position of the overlay. Clears any previously set vertical position.\n * @param value New bottom offset.\n */\n bottom(value = '') {\n this._topOffset = '';\n this._bottomOffset = value;\n this._alignItems = 'flex-end';\n return this;\n }\n /**\n * Sets the right position of the overlay. Clears any previously set horizontal position.\n * @param value New right offset.\n */\n right(value = '') {\n this._leftOffset = '';\n this._rightOffset = value;\n this._justifyContent = 'flex-end';\n return this;\n }\n /**\n * Sets the overlay width and clears any previously set width.\n * @param value New width for the overlay\n * @deprecated Pass the `width` through the `OverlayConfig`.\n * @breaking-change 8.0.0\n */\n width(value = '') {\n if (this._overlayRef) {\n this._overlayRef.updateSize({ width: value });\n }\n else {\n this._width = value;\n }\n return this;\n }\n /**\n * Sets the overlay height and clears any previously set height.\n * @param value New height for the overlay\n * @deprecated Pass the `height` through the `OverlayConfig`.\n * @breaking-change 8.0.0\n */\n height(value = '') {\n if (this._overlayRef) {\n this._overlayRef.updateSize({ height: value });\n }\n else {\n this._height = value;\n }\n return this;\n }\n /**\n * Centers the overlay horizontally with an optional offset.\n * Clears any previously set horizontal position.\n *\n * @param offset Overlay offset from the horizontal center.\n */\n centerHorizontally(offset = '') {\n this.left(offset);\n this._justifyContent = 'center';\n return this;\n }\n /**\n * Centers the overlay vertically with an optional offset.\n * Clears any previously set vertical position.\n *\n * @param offset Overlay offset from the vertical center.\n */\n centerVertically(offset = '') {\n this.top(offset);\n this._alignItems = 'center';\n return this;\n }\n /**\n * Apply the position to the element.\n * @docs-private\n */\n apply() {\n // Since the overlay ref applies the strategy asynchronously, it could\n // have been disposed before it ends up being applied. If that is the\n // case, we shouldn't do anything.\n if (!this._overlayRef || !this._overlayRef.hasAttached()) {\n return;\n }\n const styles = this._overlayRef.overlayElement.style;\n const parentStyles = this._overlayRef.hostElement.style;\n const config = this._overlayRef.getConfig();\n const { width, height, maxWidth, maxHeight } = config;\n const shouldBeFlushHorizontally = (width === '100%' || width === '100vw') &&\n (!maxWidth || maxWidth === '100%' || maxWidth === '100vw');\n const shouldBeFlushVertically = (height === '100%' || height === '100vh') &&\n (!maxHeight || maxHeight === '100%' || maxHeight === '100vh');\n styles.position = this._cssPosition;\n styles.marginLeft = shouldBeFlushHorizontally ? '0' : this._leftOffset;\n styles.marginTop = shouldBeFlushVertically ? '0' : this._topOffset;\n styles.marginBottom = this._bottomOffset;\n styles.marginRight = this._rightOffset;\n if (shouldBeFlushHorizontally) {\n parentStyles.justifyContent = 'flex-start';\n }\n else if (this._justifyContent === 'center') {\n parentStyles.justifyContent = 'center';\n }\n else if (this._overlayRef.getConfig().direction === 'rtl') {\n // In RTL the browser will invert `flex-start` and `flex-end` automatically, but we\n // don't want that because our positioning is explicitly `left` and `right`, hence\n // why we do another inversion to ensure that the overlay stays in the same position.\n // TODO: reconsider this if we add `start` and `end` methods.\n if (this._justifyContent === 'flex-start') {\n parentStyles.justifyContent = 'flex-end';\n }\n else if (this._justifyContent === 'flex-end') {\n parentStyles.justifyContent = 'flex-start';\n }\n }\n else {\n parentStyles.justifyContent = this._justifyContent;\n }\n parentStyles.alignItems = shouldBeFlushVertically ? 'flex-start' : this._alignItems;\n }\n /**\n * Cleans up the DOM changes from the position strategy.\n * @docs-private\n */\n dispose() {\n if (this._isDisposed || !this._overlayRef) {\n return;\n }\n const styles = this._overlayRef.overlayElement.style;\n const parent = this._overlayRef.hostElement;\n const parentStyles = parent.style;\n parent.classList.remove(wrapperClass);\n parentStyles.justifyContent =\n parentStyles.alignItems =\n styles.marginTop =\n styles.marginBottom =\n styles.marginLeft =\n styles.marginRight =\n styles.position =\n '';\n this._overlayRef = null;\n this._isDisposed = true;\n }\n}\n\n/** Builder for overlay position strategy. */\nclass OverlayPositionBuilder {\n constructor(_viewportRuler, _document, _platform, _overlayContainer) {\n this._viewportRuler = _viewportRuler;\n this._document = _document;\n this._platform = _platform;\n this._overlayContainer = _overlayContainer;\n }\n /**\n * Creates a global position strategy.\n */\n global() {\n return new GlobalPositionStrategy();\n }\n /**\n * Creates a flexible position strategy.\n * @param origin Origin relative to which to position the overlay.\n */\n flexibleConnectedTo(origin) {\n return new FlexibleConnectedPositionStrategy(origin, this._viewportRuler, this._document, this._platform, this._overlayContainer);\n }\n}\nOverlayPositionBuilder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayPositionBuilder, deps: [{ token: i1.ViewportRuler }, { token: DOCUMENT }, { token: i1$1.Platform }, { token: OverlayContainer }], target: i0.ɵɵFactoryTarget.Injectable });\nOverlayPositionBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayPositionBuilder, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayPositionBuilder, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: i1.ViewportRuler }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: i1$1.Platform }, { type: OverlayContainer }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Service for dispatching events that land on the body to appropriate overlay ref,\n * if any. It maintains a list of attached overlays to determine best suited overlay based\n * on event target and order of overlay opens.\n */\nclass BaseOverlayDispatcher {\n constructor(document) {\n /** Currently attached overlays in the order they were attached. */\n this._attachedOverlays = [];\n this._document = document;\n }\n ngOnDestroy() {\n this.detach();\n }\n /** Add a new overlay to the list of attached overlay refs. */\n add(overlayRef) {\n // Ensure that we don't get the same overlay multiple times.\n this.remove(overlayRef);\n this._attachedOverlays.push(overlayRef);\n }\n /** Remove an overlay from the list of attached overlay refs. */\n remove(overlayRef) {\n const index = this._attachedOverlays.indexOf(overlayRef);\n if (index > -1) {\n this._attachedOverlays.splice(index, 1);\n }\n // Remove the global listener once there are no more overlays.\n if (this._attachedOverlays.length === 0) {\n this.detach();\n }\n }\n}\nBaseOverlayDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BaseOverlayDispatcher, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });\nBaseOverlayDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BaseOverlayDispatcher, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BaseOverlayDispatcher, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Service for dispatching keyboard events that land on the body to appropriate overlay ref,\n * if any. It maintains a list of attached overlays to determine best suited overlay based\n * on event target and order of overlay opens.\n */\nclass OverlayKeyboardDispatcher extends BaseOverlayDispatcher {\n constructor(document, \n /** @breaking-change 14.0.0 _ngZone will be required. */\n _ngZone) {\n super(document);\n this._ngZone = _ngZone;\n /** Keyboard event listener that will be attached to the body. */\n this._keydownListener = (event) => {\n const overlays = this._attachedOverlays;\n for (let i = overlays.length - 1; i > -1; i--) {\n // Dispatch the keydown event to the top overlay which has subscribers to its keydown events.\n // We want to target the most recent overlay, rather than trying to match where the event came\n // from, because some components might open an overlay, but keep focus on a trigger element\n // (e.g. for select and autocomplete). We skip overlays without keydown event subscriptions,\n // because we don't want overlays that don't handle keyboard events to block the ones below\n // them that do.\n if (overlays[i]._keydownEvents.observers.length > 0) {\n const keydownEvents = overlays[i]._keydownEvents;\n /** @breaking-change 14.0.0 _ngZone will be required. */\n if (this._ngZone) {\n this._ngZone.run(() => keydownEvents.next(event));\n }\n else {\n keydownEvents.next(event);\n }\n break;\n }\n }\n };\n }\n /** Add a new overlay to the list of attached overlay refs. */\n add(overlayRef) {\n super.add(overlayRef);\n // Lazily start dispatcher once first overlay is added\n if (!this._isAttached) {\n /** @breaking-change 14.0.0 _ngZone will be required. */\n if (this._ngZone) {\n this._ngZone.runOutsideAngular(() => this._document.body.addEventListener('keydown', this._keydownListener));\n }\n else {\n this._document.body.addEventListener('keydown', this._keydownListener);\n }\n this._isAttached = true;\n }\n }\n /** Detaches the global keyboard event listener. */\n detach() {\n if (this._isAttached) {\n this._document.body.removeEventListener('keydown', this._keydownListener);\n this._isAttached = false;\n }\n }\n}\nOverlayKeyboardDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayKeyboardDispatcher, deps: [{ token: DOCUMENT }, { token: i0.NgZone, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nOverlayKeyboardDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayKeyboardDispatcher, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayKeyboardDispatcher, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: i0.NgZone, decorators: [{\n type: Optional\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Service for dispatching mouse click events that land on the body to appropriate overlay ref,\n * if any. It maintains a list of attached overlays to determine best suited overlay based\n * on event target and order of overlay opens.\n */\nclass OverlayOutsideClickDispatcher extends BaseOverlayDispatcher {\n constructor(document, _platform, \n /** @breaking-change 14.0.0 _ngZone will be required. */\n _ngZone) {\n super(document);\n this._platform = _platform;\n this._ngZone = _ngZone;\n this._cursorStyleIsSet = false;\n /** Store pointerdown event target to track origin of click. */\n this._pointerDownListener = (event) => {\n this._pointerDownEventTarget = _getEventTarget(event);\n };\n /** Click event listener that will be attached to the body propagate phase. */\n this._clickListener = (event) => {\n const target = _getEventTarget(event);\n // In case of a click event, we want to check the origin of the click\n // (e.g. in case where a user starts a click inside the overlay and\n // releases the click outside of it).\n // This is done by using the event target of the preceding pointerdown event.\n // Every click event caused by a pointer device has a preceding pointerdown\n // event, unless the click was programmatically triggered (e.g. in a unit test).\n const origin = event.type === 'click' && this._pointerDownEventTarget\n ? this._pointerDownEventTarget\n : target;\n // Reset the stored pointerdown event target, to avoid having it interfere\n // in subsequent events.\n this._pointerDownEventTarget = null;\n // We copy the array because the original may be modified asynchronously if the\n // outsidePointerEvents listener decides to detach overlays resulting in index errors inside\n // the for loop.\n const overlays = this._attachedOverlays.slice();\n // Dispatch the mouse event to the top overlay which has subscribers to its mouse events.\n // We want to target all overlays for which the click could be considered as outside click.\n // As soon as we reach an overlay for which the click is not outside click we break off\n // the loop.\n for (let i = overlays.length - 1; i > -1; i--) {\n const overlayRef = overlays[i];\n if (overlayRef._outsidePointerEvents.observers.length < 1 || !overlayRef.hasAttached()) {\n continue;\n }\n // If it's a click inside the overlay, just break - we should do nothing\n // If it's an outside click (both origin and target of the click) dispatch the mouse event,\n // and proceed with the next overlay\n if (overlayRef.overlayElement.contains(target) ||\n overlayRef.overlayElement.contains(origin)) {\n break;\n }\n const outsidePointerEvents = overlayRef._outsidePointerEvents;\n /** @breaking-change 14.0.0 _ngZone will be required. */\n if (this._ngZone) {\n this._ngZone.run(() => outsidePointerEvents.next(event));\n }\n else {\n outsidePointerEvents.next(event);\n }\n }\n };\n }\n /** Add a new overlay to the list of attached overlay refs. */\n add(overlayRef) {\n super.add(overlayRef);\n // Safari on iOS does not generate click events for non-interactive\n // elements. However, we want to receive a click for any element outside\n // the overlay. We can force a \"clickable\" state by setting\n // `cursor: pointer` on the document body. See:\n // https://developer.mozilla.org/en-US/docs/Web/API/Element/click_event#Safari_Mobile\n // https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents/HandlingEvents.html\n if (!this._isAttached) {\n const body = this._document.body;\n /** @breaking-change 14.0.0 _ngZone will be required. */\n if (this._ngZone) {\n this._ngZone.runOutsideAngular(() => this._addEventListeners(body));\n }\n else {\n this._addEventListeners(body);\n }\n // click event is not fired on iOS. To make element \"clickable\" we are\n // setting the cursor to pointer\n if (this._platform.IOS && !this._cursorStyleIsSet) {\n this._cursorOriginalValue = body.style.cursor;\n body.style.cursor = 'pointer';\n this._cursorStyleIsSet = true;\n }\n this._isAttached = true;\n }\n }\n /** Detaches the global keyboard event listener. */\n detach() {\n if (this._isAttached) {\n const body = this._document.body;\n body.removeEventListener('pointerdown', this._pointerDownListener, true);\n body.removeEventListener('click', this._clickListener, true);\n body.removeEventListener('auxclick', this._clickListener, true);\n body.removeEventListener('contextmenu', this._clickListener, true);\n if (this._platform.IOS && this._cursorStyleIsSet) {\n body.style.cursor = this._cursorOriginalValue;\n this._cursorStyleIsSet = false;\n }\n this._isAttached = false;\n }\n }\n _addEventListeners(body) {\n body.addEventListener('pointerdown', this._pointerDownListener, true);\n body.addEventListener('click', this._clickListener, true);\n body.addEventListener('auxclick', this._clickListener, true);\n body.addEventListener('contextmenu', this._clickListener, true);\n }\n}\nOverlayOutsideClickDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayOutsideClickDispatcher, deps: [{ token: DOCUMENT }, { token: i1$1.Platform }, { token: i0.NgZone, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nOverlayOutsideClickDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayOutsideClickDispatcher, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayOutsideClickDispatcher, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: i1$1.Platform }, { type: i0.NgZone, decorators: [{\n type: Optional\n }] }];\n } });\n\n/** Next overlay unique ID. */\nlet nextUniqueId = 0;\n// Note that Overlay is *not* scoped to the app root because of the ComponentFactoryResolver\n// which needs to be different depending on where OverlayModule is imported.\n/**\n * Service to create Overlays. Overlays are dynamically added pieces of floating UI, meant to be\n * used as a low-level building block for other components. Dialogs, tooltips, menus,\n * selects, etc. can all be built using overlays. The service should primarily be used by authors\n * of re-usable components rather than developers building end-user applications.\n *\n * An overlay *is* a PortalOutlet, so any kind of Portal can be loaded into one.\n */\nclass Overlay {\n constructor(\n /** Scrolling strategies that can be used when creating an overlay. */\n scrollStrategies, _overlayContainer, _componentFactoryResolver, _positionBuilder, _keyboardDispatcher, _injector, _ngZone, _document, _directionality, _location, _outsideClickDispatcher) {\n this.scrollStrategies = scrollStrategies;\n this._overlayContainer = _overlayContainer;\n this._componentFactoryResolver = _componentFactoryResolver;\n this._positionBuilder = _positionBuilder;\n this._keyboardDispatcher = _keyboardDispatcher;\n this._injector = _injector;\n this._ngZone = _ngZone;\n this._document = _document;\n this._directionality = _directionality;\n this._location = _location;\n this._outsideClickDispatcher = _outsideClickDispatcher;\n }\n /**\n * Creates an overlay.\n * @param config Configuration applied to the overlay.\n * @returns Reference to the created overlay.\n */\n create(config) {\n const host = this._createHostElement();\n const pane = this._createPaneElement(host);\n const portalOutlet = this._createPortalOutlet(pane);\n const overlayConfig = new OverlayConfig(config);\n overlayConfig.direction = overlayConfig.direction || this._directionality.value;\n return new OverlayRef(portalOutlet, host, pane, overlayConfig, this._ngZone, this._keyboardDispatcher, this._document, this._location, this._outsideClickDispatcher);\n }\n /**\n * Gets a position builder that can be used, via fluent API,\n * to construct and configure a position strategy.\n * @returns An overlay position builder.\n */\n position() {\n return this._positionBuilder;\n }\n /**\n * Creates the DOM element for an overlay and appends it to the overlay container.\n * @returns Newly-created pane element\n */\n _createPaneElement(host) {\n const pane = this._document.createElement('div');\n pane.id = `cdk-overlay-${nextUniqueId++}`;\n pane.classList.add('cdk-overlay-pane');\n host.appendChild(pane);\n return pane;\n }\n /**\n * Creates the host element that wraps around an overlay\n * and can be used for advanced positioning.\n * @returns Newly-create host element.\n */\n _createHostElement() {\n const host = this._document.createElement('div');\n this._overlayContainer.getContainerElement().appendChild(host);\n return host;\n }\n /**\n * Create a DomPortalOutlet into which the overlay content can be loaded.\n * @param pane The DOM element to turn into a portal outlet.\n * @returns A portal outlet for the given DOM element.\n */\n _createPortalOutlet(pane) {\n // We have to resolve the ApplicationRef later in order to allow people\n // to use overlay-based providers during app initialization.\n if (!this._appRef) {\n this._appRef = this._injector.get(ApplicationRef);\n }\n return new DomPortalOutlet(pane, this._componentFactoryResolver, this._appRef, this._injector, this._document);\n }\n}\nOverlay.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Overlay, deps: [{ token: ScrollStrategyOptions }, { token: OverlayContainer }, { token: i0.ComponentFactoryResolver }, { token: OverlayPositionBuilder }, { token: OverlayKeyboardDispatcher }, { token: i0.Injector }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i5.Directionality }, { token: i6.Location }, { token: OverlayOutsideClickDispatcher }], target: i0.ɵɵFactoryTarget.Injectable });\nOverlay.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Overlay });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Overlay, decorators: [{\n type: Injectable\n }], ctorParameters: function () {\n return [{ type: ScrollStrategyOptions }, { type: OverlayContainer }, { type: i0.ComponentFactoryResolver }, { type: OverlayPositionBuilder }, { type: OverlayKeyboardDispatcher }, { type: i0.Injector }, { type: i0.NgZone }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: i5.Directionality }, { type: i6.Location }, { type: OverlayOutsideClickDispatcher }];\n } });\n\n/** Default set of positions for the overlay. Follows the behavior of a dropdown. */\nconst defaultPositionList = [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n];\n/** Injection token that determines the scroll handling while the connected overlay is open. */\nconst CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY = new InjectionToken('cdk-connected-overlay-scroll-strategy');\n/**\n * Directive applied to an element to make it usable as an origin for an Overlay using a\n * ConnectedPositionStrategy.\n */\nclass CdkOverlayOrigin {\n constructor(\n /** Reference to the element on which the directive is applied. */\n elementRef) {\n this.elementRef = elementRef;\n }\n}\nCdkOverlayOrigin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkOverlayOrigin, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });\nCdkOverlayOrigin.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkOverlayOrigin, selector: \"[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]\", exportAs: [\"cdkOverlayOrigin\"], ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkOverlayOrigin, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]',\n exportAs: 'cdkOverlayOrigin',\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });\n/**\n * Directive to facilitate declarative creation of an\n * Overlay using a FlexibleConnectedPositionStrategy.\n */\nclass CdkConnectedOverlay {\n // TODO(jelbourn): inputs for size, scroll behavior, animation, etc.\n constructor(_overlay, templateRef, viewContainerRef, scrollStrategyFactory, _dir) {\n this._overlay = _overlay;\n this._dir = _dir;\n this._hasBackdrop = false;\n this._lockPosition = false;\n this._growAfterOpen = false;\n this._flexibleDimensions = false;\n this._push = false;\n this._backdropSubscription = Subscription.EMPTY;\n this._attachSubscription = Subscription.EMPTY;\n this._detachSubscription = Subscription.EMPTY;\n this._positionSubscription = Subscription.EMPTY;\n /** Margin between the overlay and the viewport edges. */\n this.viewportMargin = 0;\n /** Whether the overlay is open. */\n this.open = false;\n /** Whether the overlay can be closed by user interaction. */\n this.disableClose = false;\n /** Event emitted when the backdrop is clicked. */\n this.backdropClick = new EventEmitter();\n /** Event emitted when the position has changed. */\n this.positionChange = new EventEmitter();\n /** Event emitted when the overlay has been attached. */\n this.attach = new EventEmitter();\n /** Event emitted when the overlay has been detached. */\n this.detach = new EventEmitter();\n /** Emits when there are keyboard events that are targeted at the overlay. */\n this.overlayKeydown = new EventEmitter();\n /** Emits when there are mouse outside click events that are targeted at the overlay. */\n this.overlayOutsideClick = new EventEmitter();\n this._templatePortal = new TemplatePortal(templateRef, viewContainerRef);\n this._scrollStrategyFactory = scrollStrategyFactory;\n this.scrollStrategy = this._scrollStrategyFactory();\n }\n /** The offset in pixels for the overlay connection point on the x-axis */\n get offsetX() {\n return this._offsetX;\n }\n set offsetX(offsetX) {\n this._offsetX = offsetX;\n if (this._position) {\n this._updatePositionStrategy(this._position);\n }\n }\n /** The offset in pixels for the overlay connection point on the y-axis */\n get offsetY() {\n return this._offsetY;\n }\n set offsetY(offsetY) {\n this._offsetY = offsetY;\n if (this._position) {\n this._updatePositionStrategy(this._position);\n }\n }\n /** Whether or not the overlay should attach a backdrop. */\n get hasBackdrop() {\n return this._hasBackdrop;\n }\n set hasBackdrop(value) {\n this._hasBackdrop = coerceBooleanProperty(value);\n }\n /** Whether or not the overlay should be locked when scrolling. */\n get lockPosition() {\n return this._lockPosition;\n }\n set lockPosition(value) {\n this._lockPosition = coerceBooleanProperty(value);\n }\n /** Whether the overlay's width and height can be constrained to fit within the viewport. */\n get flexibleDimensions() {\n return this._flexibleDimensions;\n }\n set flexibleDimensions(value) {\n this._flexibleDimensions = coerceBooleanProperty(value);\n }\n /** Whether the overlay can grow after the initial open when flexible positioning is turned on. */\n get growAfterOpen() {\n return this._growAfterOpen;\n }\n set growAfterOpen(value) {\n this._growAfterOpen = coerceBooleanProperty(value);\n }\n /** Whether the overlay can be pushed on-screen if none of the provided positions fit. */\n get push() {\n return this._push;\n }\n set push(value) {\n this._push = coerceBooleanProperty(value);\n }\n /** The associated overlay reference. */\n get overlayRef() {\n return this._overlayRef;\n }\n /** The element's layout direction. */\n get dir() {\n return this._dir ? this._dir.value : 'ltr';\n }\n ngOnDestroy() {\n this._attachSubscription.unsubscribe();\n this._detachSubscription.unsubscribe();\n this._backdropSubscription.unsubscribe();\n this._positionSubscription.unsubscribe();\n if (this._overlayRef) {\n this._overlayRef.dispose();\n }\n }\n ngOnChanges(changes) {\n if (this._position) {\n this._updatePositionStrategy(this._position);\n this._overlayRef.updateSize({\n width: this.width,\n minWidth: this.minWidth,\n height: this.height,\n minHeight: this.minHeight,\n });\n if (changes['origin'] && this.open) {\n this._position.apply();\n }\n }\n if (changes['open']) {\n this.open ? this._attachOverlay() : this._detachOverlay();\n }\n }\n /** Creates an overlay */\n _createOverlay() {\n if (!this.positions || !this.positions.length) {\n this.positions = defaultPositionList;\n }\n const overlayRef = (this._overlayRef = this._overlay.create(this._buildConfig()));\n this._attachSubscription = overlayRef.attachments().subscribe(() => this.attach.emit());\n this._detachSubscription = overlayRef.detachments().subscribe(() => this.detach.emit());\n overlayRef.keydownEvents().subscribe((event) => {\n this.overlayKeydown.next(event);\n if (event.keyCode === ESCAPE && !this.disableClose && !hasModifierKey(event)) {\n event.preventDefault();\n this._detachOverlay();\n }\n });\n this._overlayRef.outsidePointerEvents().subscribe((event) => {\n this.overlayOutsideClick.next(event);\n });\n }\n /** Builds the overlay config based on the directive's inputs */\n _buildConfig() {\n const positionStrategy = (this._position =\n this.positionStrategy || this._createPositionStrategy());\n const overlayConfig = new OverlayConfig({\n direction: this._dir,\n positionStrategy,\n scrollStrategy: this.scrollStrategy,\n hasBackdrop: this.hasBackdrop,\n });\n if (this.width || this.width === 0) {\n overlayConfig.width = this.width;\n }\n if (this.height || this.height === 0) {\n overlayConfig.height = this.height;\n }\n if (this.minWidth || this.minWidth === 0) {\n overlayConfig.minWidth = this.minWidth;\n }\n if (this.minHeight || this.minHeight === 0) {\n overlayConfig.minHeight = this.minHeight;\n }\n if (this.backdropClass) {\n overlayConfig.backdropClass = this.backdropClass;\n }\n if (this.panelClass) {\n overlayConfig.panelClass = this.panelClass;\n }\n return overlayConfig;\n }\n /** Updates the state of a position strategy, based on the values of the directive inputs. */\n _updatePositionStrategy(positionStrategy) {\n const positions = this.positions.map(currentPosition => ({\n originX: currentPosition.originX,\n originY: currentPosition.originY,\n overlayX: currentPosition.overlayX,\n overlayY: currentPosition.overlayY,\n offsetX: currentPosition.offsetX || this.offsetX,\n offsetY: currentPosition.offsetY || this.offsetY,\n panelClass: currentPosition.panelClass || undefined,\n }));\n return positionStrategy\n .setOrigin(this._getFlexibleConnectedPositionStrategyOrigin())\n .withPositions(positions)\n .withFlexibleDimensions(this.flexibleDimensions)\n .withPush(this.push)\n .withGrowAfterOpen(this.growAfterOpen)\n .withViewportMargin(this.viewportMargin)\n .withLockedPosition(this.lockPosition)\n .withTransformOriginOn(this.transformOriginSelector);\n }\n /** Returns the position strategy of the overlay to be set on the overlay config */\n _createPositionStrategy() {\n const strategy = this._overlay\n .position()\n .flexibleConnectedTo(this._getFlexibleConnectedPositionStrategyOrigin());\n this._updatePositionStrategy(strategy);\n return strategy;\n }\n _getFlexibleConnectedPositionStrategyOrigin() {\n if (this.origin instanceof CdkOverlayOrigin) {\n return this.origin.elementRef;\n }\n else {\n return this.origin;\n }\n }\n /** Attaches the overlay and subscribes to backdrop clicks if backdrop exists */\n _attachOverlay() {\n if (!this._overlayRef) {\n this._createOverlay();\n }\n else {\n // Update the overlay size, in case the directive's inputs have changed\n this._overlayRef.getConfig().hasBackdrop = this.hasBackdrop;\n }\n if (!this._overlayRef.hasAttached()) {\n this._overlayRef.attach(this._templatePortal);\n }\n if (this.hasBackdrop) {\n this._backdropSubscription = this._overlayRef.backdropClick().subscribe(event => {\n this.backdropClick.emit(event);\n });\n }\n else {\n this._backdropSubscription.unsubscribe();\n }\n this._positionSubscription.unsubscribe();\n // Only subscribe to `positionChanges` if requested, because putting\n // together all the information for it can be expensive.\n if (this.positionChange.observers.length > 0) {\n this._positionSubscription = this._position.positionChanges\n .pipe(takeWhile(() => this.positionChange.observers.length > 0))\n .subscribe(position => {\n this.positionChange.emit(position);\n if (this.positionChange.observers.length === 0) {\n this._positionSubscription.unsubscribe();\n }\n });\n }\n }\n /** Detaches the overlay and unsubscribes to backdrop clicks if backdrop exists */\n _detachOverlay() {\n if (this._overlayRef) {\n this._overlayRef.detach();\n }\n this._backdropSubscription.unsubscribe();\n this._positionSubscription.unsubscribe();\n }\n}\nCdkConnectedOverlay.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkConnectedOverlay, deps: [{ token: Overlay }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY }, { token: i5.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Directive });\nCdkConnectedOverlay.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkConnectedOverlay, selector: \"[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]\", inputs: { origin: [\"cdkConnectedOverlayOrigin\", \"origin\"], positions: [\"cdkConnectedOverlayPositions\", \"positions\"], positionStrategy: [\"cdkConnectedOverlayPositionStrategy\", \"positionStrategy\"], offsetX: [\"cdkConnectedOverlayOffsetX\", \"offsetX\"], offsetY: [\"cdkConnectedOverlayOffsetY\", \"offsetY\"], width: [\"cdkConnectedOverlayWidth\", \"width\"], height: [\"cdkConnectedOverlayHeight\", \"height\"], minWidth: [\"cdkConnectedOverlayMinWidth\", \"minWidth\"], minHeight: [\"cdkConnectedOverlayMinHeight\", \"minHeight\"], backdropClass: [\"cdkConnectedOverlayBackdropClass\", \"backdropClass\"], panelClass: [\"cdkConnectedOverlayPanelClass\", \"panelClass\"], viewportMargin: [\"cdkConnectedOverlayViewportMargin\", \"viewportMargin\"], scrollStrategy: [\"cdkConnectedOverlayScrollStrategy\", \"scrollStrategy\"], open: [\"cdkConnectedOverlayOpen\", \"open\"], disableClose: [\"cdkConnectedOverlayDisableClose\", \"disableClose\"], transformOriginSelector: [\"cdkConnectedOverlayTransformOriginOn\", \"transformOriginSelector\"], hasBackdrop: [\"cdkConnectedOverlayHasBackdrop\", \"hasBackdrop\"], lockPosition: [\"cdkConnectedOverlayLockPosition\", \"lockPosition\"], flexibleDimensions: [\"cdkConnectedOverlayFlexibleDimensions\", \"flexibleDimensions\"], growAfterOpen: [\"cdkConnectedOverlayGrowAfterOpen\", \"growAfterOpen\"], push: [\"cdkConnectedOverlayPush\", \"push\"] }, outputs: { backdropClick: \"backdropClick\", positionChange: \"positionChange\", attach: \"attach\", detach: \"detach\", overlayKeydown: \"overlayKeydown\", overlayOutsideClick: \"overlayOutsideClick\" }, exportAs: [\"cdkConnectedOverlay\"], usesOnChanges: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkConnectedOverlay, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]',\n exportAs: 'cdkConnectedOverlay',\n }]\n }], ctorParameters: function () {\n return [{ type: Overlay }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }, { type: undefined, decorators: [{\n type: Inject,\n args: [CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY]\n }] }, { type: i5.Directionality, decorators: [{\n type: Optional\n }] }];\n }, propDecorators: { origin: [{\n type: Input,\n args: ['cdkConnectedOverlayOrigin']\n }], positions: [{\n type: Input,\n args: ['cdkConnectedOverlayPositions']\n }], positionStrategy: [{\n type: Input,\n args: ['cdkConnectedOverlayPositionStrategy']\n }], offsetX: [{\n type: Input,\n args: ['cdkConnectedOverlayOffsetX']\n }], offsetY: [{\n type: Input,\n args: ['cdkConnectedOverlayOffsetY']\n }], width: [{\n type: Input,\n args: ['cdkConnectedOverlayWidth']\n }], height: [{\n type: Input,\n args: ['cdkConnectedOverlayHeight']\n }], minWidth: [{\n type: Input,\n args: ['cdkConnectedOverlayMinWidth']\n }], minHeight: [{\n type: Input,\n args: ['cdkConnectedOverlayMinHeight']\n }], backdropClass: [{\n type: Input,\n args: ['cdkConnectedOverlayBackdropClass']\n }], panelClass: [{\n type: Input,\n args: ['cdkConnectedOverlayPanelClass']\n }], viewportMargin: [{\n type: Input,\n args: ['cdkConnectedOverlayViewportMargin']\n }], scrollStrategy: [{\n type: Input,\n args: ['cdkConnectedOverlayScrollStrategy']\n }], open: [{\n type: Input,\n args: ['cdkConnectedOverlayOpen']\n }], disableClose: [{\n type: Input,\n args: ['cdkConnectedOverlayDisableClose']\n }], transformOriginSelector: [{\n type: Input,\n args: ['cdkConnectedOverlayTransformOriginOn']\n }], hasBackdrop: [{\n type: Input,\n args: ['cdkConnectedOverlayHasBackdrop']\n }], lockPosition: [{\n type: Input,\n args: ['cdkConnectedOverlayLockPosition']\n }], flexibleDimensions: [{\n type: Input,\n args: ['cdkConnectedOverlayFlexibleDimensions']\n }], growAfterOpen: [{\n type: Input,\n args: ['cdkConnectedOverlayGrowAfterOpen']\n }], push: [{\n type: Input,\n args: ['cdkConnectedOverlayPush']\n }], backdropClick: [{\n type: Output\n }], positionChange: [{\n type: Output\n }], attach: [{\n type: Output\n }], detach: [{\n type: Output\n }], overlayKeydown: [{\n type: Output\n }], overlayOutsideClick: [{\n type: Output\n }] } });\n/** @docs-private */\nfunction CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER_FACTORY(overlay) {\n return () => overlay.scrollStrategies.reposition();\n}\n/** @docs-private */\nconst CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER = {\n provide: CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER_FACTORY,\n};\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass OverlayModule {\n}\nOverlayModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nOverlayModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayModule, declarations: [CdkConnectedOverlay, CdkOverlayOrigin], imports: [BidiModule, PortalModule, ScrollingModule], exports: [CdkConnectedOverlay, CdkOverlayOrigin, ScrollingModule] });\nOverlayModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayModule, providers: [Overlay, CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER], imports: [[BidiModule, PortalModule, ScrollingModule], ScrollingModule] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: OverlayModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [BidiModule, PortalModule, ScrollingModule],\n exports: [CdkConnectedOverlay, CdkOverlayOrigin, ScrollingModule],\n declarations: [CdkConnectedOverlay, CdkOverlayOrigin],\n providers: [Overlay, CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER],\n }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Alternative to OverlayContainer that supports correct displaying of overlay elements in\n * Fullscreen mode\n * https://developer.mozilla.org/en-US/docs/Web/API/Element/requestFullScreen\n *\n * Should be provided in the root component.\n */\nclass FullscreenOverlayContainer extends OverlayContainer {\n constructor(_document, platform) {\n super(_document, platform);\n }\n ngOnDestroy() {\n super.ngOnDestroy();\n if (this._fullScreenEventName && this._fullScreenListener) {\n this._document.removeEventListener(this._fullScreenEventName, this._fullScreenListener);\n }\n }\n _createContainer() {\n super._createContainer();\n this._adjustParentForFullscreenChange();\n this._addFullscreenChangeListener(() => this._adjustParentForFullscreenChange());\n }\n _adjustParentForFullscreenChange() {\n if (!this._containerElement) {\n return;\n }\n const fullscreenElement = this.getFullscreenElement();\n const parent = fullscreenElement || this._document.body;\n parent.appendChild(this._containerElement);\n }\n _addFullscreenChangeListener(fn) {\n const eventName = this._getEventName();\n if (eventName) {\n if (this._fullScreenListener) {\n this._document.removeEventListener(eventName, this._fullScreenListener);\n }\n this._document.addEventListener(eventName, fn);\n this._fullScreenListener = fn;\n }\n }\n _getEventName() {\n if (!this._fullScreenEventName) {\n const _document = this._document;\n if (_document.fullscreenEnabled) {\n this._fullScreenEventName = 'fullscreenchange';\n }\n else if (_document.webkitFullscreenEnabled) {\n this._fullScreenEventName = 'webkitfullscreenchange';\n }\n else if (_document.mozFullScreenEnabled) {\n this._fullScreenEventName = 'mozfullscreenchange';\n }\n else if (_document.msFullscreenEnabled) {\n this._fullScreenEventName = 'MSFullscreenChange';\n }\n }\n return this._fullScreenEventName;\n }\n /**\n * When the page is put into fullscreen mode, a specific element is specified.\n * Only that element and its children are visible when in fullscreen mode.\n */\n getFullscreenElement() {\n const _document = this._document;\n return (_document.fullscreenElement ||\n _document.webkitFullscreenElement ||\n _document.mozFullScreenElement ||\n _document.msFullscreenElement ||\n null);\n }\n}\nFullscreenOverlayContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FullscreenOverlayContainer, deps: [{ token: DOCUMENT }, { token: i1$1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });\nFullscreenOverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FullscreenOverlayContainer, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: FullscreenOverlayContainer, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: i1$1.Platform }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { BlockScrollStrategy, CdkConnectedOverlay, CdkOverlayOrigin, CloseScrollStrategy, ConnectedOverlayPositionChange, ConnectionPositionPair, FlexibleConnectedPositionStrategy, FullscreenOverlayContainer, GlobalPositionStrategy, NoopScrollStrategy, Overlay, OverlayConfig, OverlayContainer, OverlayKeyboardDispatcher, OverlayModule, OverlayOutsideClickDispatcher, OverlayPositionBuilder, OverlayRef, RepositionScrollStrategy, ScrollStrategyOptions, ScrollingVisibility, validateHorizontalPosition, validateVerticalPosition };\n","import * as i0 from '@angular/core';\nimport { PLATFORM_ID, Injectable, Inject, NgModule } from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// Whether the current platform supports the V8 Break Iterator. The V8 check\n// is necessary to detect all Blink based browsers.\nlet hasV8BreakIterator;\n// We need a try/catch around the reference to `Intl`, because accessing it in some cases can\n// cause IE to throw. These cases are tied to particular versions of Windows and can happen if\n// the consumer is providing a polyfilled `Map`. See:\n// https://github.com/Microsoft/ChakraCore/issues/3189\n// https://github.com/angular/components/issues/15687\ntry {\n hasV8BreakIterator = typeof Intl !== 'undefined' && Intl.v8BreakIterator;\n}\ncatch (_a) {\n hasV8BreakIterator = false;\n}\n/**\n * Service to detect the current platform by comparing the userAgent strings and\n * checking browser-specific global properties.\n */\nclass Platform {\n constructor(_platformId) {\n this._platformId = _platformId;\n // We want to use the Angular platform check because if the Document is shimmed\n // without the navigator, the following checks will fail. This is preferred because\n // sometimes the Document may be shimmed without the user's knowledge or intention\n /** Whether the Angular application is being rendered in the browser. */\n this.isBrowser = this._platformId\n ? isPlatformBrowser(this._platformId)\n : typeof document === 'object' && !!document;\n /** Whether the current browser is Microsoft Edge. */\n this.EDGE = this.isBrowser && /(edge)/i.test(navigator.userAgent);\n /** Whether the current rendering engine is Microsoft Trident. */\n this.TRIDENT = this.isBrowser && /(msie|trident)/i.test(navigator.userAgent);\n // EdgeHTML and Trident mock Blink specific things and need to be excluded from this check.\n /** Whether the current rendering engine is Blink. */\n this.BLINK = this.isBrowser &&\n !!(window.chrome || hasV8BreakIterator) &&\n typeof CSS !== 'undefined' &&\n !this.EDGE &&\n !this.TRIDENT;\n // Webkit is part of the userAgent in EdgeHTML, Blink and Trident. Therefore we need to\n // ensure that Webkit runs standalone and is not used as another engine's base.\n /** Whether the current rendering engine is WebKit. */\n this.WEBKIT = this.isBrowser &&\n /AppleWebKit/i.test(navigator.userAgent) &&\n !this.BLINK &&\n !this.EDGE &&\n !this.TRIDENT;\n /** Whether the current platform is Apple iOS. */\n this.IOS = this.isBrowser && /iPad|iPhone|iPod/.test(navigator.userAgent) && !('MSStream' in window);\n // It's difficult to detect the plain Gecko engine, because most of the browsers identify\n // them self as Gecko-like browsers and modify the userAgent's according to that.\n // Since we only cover one explicit Firefox case, we can simply check for Firefox\n // instead of having an unstable check for Gecko.\n /** Whether the current browser is Firefox. */\n this.FIREFOX = this.isBrowser && /(firefox|minefield)/i.test(navigator.userAgent);\n /** Whether the current platform is Android. */\n // Trident on mobile adds the android platform to the userAgent to trick detections.\n this.ANDROID = this.isBrowser && /android/i.test(navigator.userAgent) && !this.TRIDENT;\n // Safari browsers will include the Safari keyword in their userAgent. Some browsers may fake\n // this and just place the Safari keyword in the userAgent. To be more safe about Safari every\n // Safari browser should also use Webkit as its layout engine.\n /** Whether the current browser is Safari. */\n this.SAFARI = this.isBrowser && /safari/i.test(navigator.userAgent) && this.WEBKIT;\n }\n}\nPlatform.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Platform, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });\nPlatform.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Platform, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Platform, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: Object, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass PlatformModule {\n}\nPlatformModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PlatformModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nPlatformModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PlatformModule });\nPlatformModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PlatformModule });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PlatformModule, decorators: [{\n type: NgModule,\n args: [{}]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Cached result Set of input types support by the current browser. */\nlet supportedInputTypes;\n/** Types of `` that *might* be supported. */\nconst candidateInputTypes = [\n // `color` must come first. Chrome 56 shows a warning if we change the type to `color` after\n // first changing it to something else:\n // The specified value \"\" does not conform to the required format.\n // The format is \"#rrggbb\" where rr, gg, bb are two-digit hexadecimal numbers.\n 'color',\n 'button',\n 'checkbox',\n 'date',\n 'datetime-local',\n 'email',\n 'file',\n 'hidden',\n 'image',\n 'month',\n 'number',\n 'password',\n 'radio',\n 'range',\n 'reset',\n 'search',\n 'submit',\n 'tel',\n 'text',\n 'time',\n 'url',\n 'week',\n];\n/** @returns The input types supported by this browser. */\nfunction getSupportedInputTypes() {\n // Result is cached.\n if (supportedInputTypes) {\n return supportedInputTypes;\n }\n // We can't check if an input type is not supported until we're on the browser, so say that\n // everything is supported when not on the browser. We don't use `Platform` here since it's\n // just a helper function and can't inject it.\n if (typeof document !== 'object' || !document) {\n supportedInputTypes = new Set(candidateInputTypes);\n return supportedInputTypes;\n }\n let featureTestInput = document.createElement('input');\n supportedInputTypes = new Set(candidateInputTypes.filter(value => {\n featureTestInput.setAttribute('type', value);\n return featureTestInput.type === value;\n }));\n return supportedInputTypes;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Cached result of whether the user's browser supports passive event listeners. */\nlet supportsPassiveEvents;\n/**\n * Checks whether the user's browser supports passive event listeners.\n * See: https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md\n */\nfunction supportsPassiveEventListeners() {\n if (supportsPassiveEvents == null && typeof window !== 'undefined') {\n try {\n window.addEventListener('test', null, Object.defineProperty({}, 'passive', {\n get: () => (supportsPassiveEvents = true),\n }));\n }\n finally {\n supportsPassiveEvents = supportsPassiveEvents || false;\n }\n }\n return supportsPassiveEvents;\n}\n/**\n * Normalizes an `AddEventListener` object to something that can be passed\n * to `addEventListener` on any browser, no matter whether it supports the\n * `options` parameter.\n * @param options Object to be normalized.\n */\nfunction normalizePassiveListenerOptions(options) {\n return supportsPassiveEventListeners() ? options : !!options.capture;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Cached result of the way the browser handles the horizontal scroll axis in RTL mode. */\nlet rtlScrollAxisType;\n/** Cached result of the check that indicates whether the browser supports scroll behaviors. */\nlet scrollBehaviorSupported;\n/** Check whether the browser supports scroll behaviors. */\nfunction supportsScrollBehavior() {\n if (scrollBehaviorSupported == null) {\n // If we're not in the browser, it can't be supported. Also check for `Element`, because\n // some projects stub out the global `document` during SSR which can throw us off.\n if (typeof document !== 'object' || !document || typeof Element !== 'function' || !Element) {\n scrollBehaviorSupported = false;\n return scrollBehaviorSupported;\n }\n // If the element can have a `scrollBehavior` style, we can be sure that it's supported.\n if ('scrollBehavior' in document.documentElement.style) {\n scrollBehaviorSupported = true;\n }\n else {\n // At this point we have 3 possibilities: `scrollTo` isn't supported at all, it's\n // supported but it doesn't handle scroll behavior, or it has been polyfilled.\n const scrollToFunction = Element.prototype.scrollTo;\n if (scrollToFunction) {\n // We can detect if the function has been polyfilled by calling `toString` on it. Native\n // functions are obfuscated using `[native code]`, whereas if it was overwritten we'd get\n // the actual function source. Via https://davidwalsh.name/detect-native-function. Consider\n // polyfilled functions as supporting scroll behavior.\n scrollBehaviorSupported = !/\\{\\s*\\[native code\\]\\s*\\}/.test(scrollToFunction.toString());\n }\n else {\n scrollBehaviorSupported = false;\n }\n }\n }\n return scrollBehaviorSupported;\n}\n/**\n * Checks the type of RTL scroll axis used by this browser. As of time of writing, Chrome is NORMAL,\n * Firefox & Safari are NEGATED, and IE & Edge are INVERTED.\n */\nfunction getRtlScrollAxisType() {\n // We can't check unless we're on the browser. Just assume 'normal' if we're not.\n if (typeof document !== 'object' || !document) {\n return 0 /* NORMAL */;\n }\n if (rtlScrollAxisType == null) {\n // Create a 1px wide scrolling container and a 2px wide content element.\n const scrollContainer = document.createElement('div');\n const containerStyle = scrollContainer.style;\n scrollContainer.dir = 'rtl';\n containerStyle.width = '1px';\n containerStyle.overflow = 'auto';\n containerStyle.visibility = 'hidden';\n containerStyle.pointerEvents = 'none';\n containerStyle.position = 'absolute';\n const content = document.createElement('div');\n const contentStyle = content.style;\n contentStyle.width = '2px';\n contentStyle.height = '1px';\n scrollContainer.appendChild(content);\n document.body.appendChild(scrollContainer);\n rtlScrollAxisType = 0 /* NORMAL */;\n // The viewport starts scrolled all the way to the right in RTL mode. If we are in a NORMAL\n // browser this would mean that the scrollLeft should be 1. If it's zero instead we know we're\n // dealing with one of the other two types of browsers.\n if (scrollContainer.scrollLeft === 0) {\n // In a NEGATED browser the scrollLeft is always somewhere in [-maxScrollAmount, 0]. For an\n // INVERTED browser it is always somewhere in [0, maxScrollAmount]. We can determine which by\n // setting to the scrollLeft to 1. This is past the max for a NEGATED browser, so it will\n // return 0 when we read it again.\n scrollContainer.scrollLeft = 1;\n rtlScrollAxisType =\n scrollContainer.scrollLeft === 0 ? 1 /* NEGATED */ : 2 /* INVERTED */;\n }\n scrollContainer.remove();\n }\n return rtlScrollAxisType;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nlet shadowDomIsSupported;\n/** Checks whether the user's browser support Shadow DOM. */\nfunction _supportsShadowDom() {\n if (shadowDomIsSupported == null) {\n const head = typeof document !== 'undefined' ? document.head : null;\n shadowDomIsSupported = !!(head && (head.createShadowRoot || head.attachShadow));\n }\n return shadowDomIsSupported;\n}\n/** Gets the shadow root of an element, if supported and the element is inside the Shadow DOM. */\nfunction _getShadowRoot(element) {\n if (_supportsShadowDom()) {\n const rootNode = element.getRootNode ? element.getRootNode() : null;\n // Note that this should be caught by `_supportsShadowDom`, but some\n // teams have been able to hit this code path on unsupported browsers.\n if (typeof ShadowRoot !== 'undefined' && ShadowRoot && rootNode instanceof ShadowRoot) {\n return rootNode;\n }\n }\n return null;\n}\n/**\n * Gets the currently-focused element on the page while\n * also piercing through Shadow DOM boundaries.\n */\nfunction _getFocusedElementPierceShadowDom() {\n let activeElement = typeof document !== 'undefined' && document\n ? document.activeElement\n : null;\n while (activeElement && activeElement.shadowRoot) {\n const newActiveElement = activeElement.shadowRoot.activeElement;\n if (newActiveElement === activeElement) {\n break;\n }\n else {\n activeElement = newActiveElement;\n }\n }\n return activeElement;\n}\n/** Gets the target of an event while accounting for Shadow DOM. */\nfunction _getEventTarget(event) {\n // If an event is bound outside the Shadow DOM, the `event.target` will\n // point to the shadow root so we have to use `composedPath` instead.\n return (event.composedPath ? event.composedPath()[0] : event.target);\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Gets whether the code is currently running in a test environment. */\nfunction _isTestEnvironment() {\n // We can't use `declare const` because it causes conflicts inside Google with the real typings\n // for these symbols and we can't read them off the global object, because they don't appear to\n // be attached there for some runners like Jest.\n // (see: https://github.com/angular/components/issues/23365#issuecomment-938146643)\n return (\n // @ts-ignore\n (typeof __karma__ !== 'undefined' && !!__karma__) ||\n // @ts-ignore\n (typeof jasmine !== 'undefined' && !!jasmine) ||\n // @ts-ignore\n (typeof jest !== 'undefined' && !!jest) ||\n // @ts-ignore\n (typeof Mocha !== 'undefined' && !!Mocha));\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Platform, PlatformModule, _getEventTarget, _getFocusedElementPierceShadowDom, _getShadowRoot, _isTestEnvironment, _supportsShadowDom, getRtlScrollAxisType, getSupportedInputTypes, normalizePassiveListenerOptions, supportsPassiveEventListeners, supportsScrollBehavior };\n","import * as i0 from '@angular/core';\nimport { ElementRef, Injector, Directive, EventEmitter, Inject, Output, NgModule } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Throws an exception when attempting to attach a null portal to a host.\n * @docs-private\n */\nfunction throwNullPortalError() {\n throw Error('Must provide a portal to attach');\n}\n/**\n * Throws an exception when attempting to attach a portal to a host that is already attached.\n * @docs-private\n */\nfunction throwPortalAlreadyAttachedError() {\n throw Error('Host already has a portal attached');\n}\n/**\n * Throws an exception when attempting to attach a portal to an already-disposed host.\n * @docs-private\n */\nfunction throwPortalOutletAlreadyDisposedError() {\n throw Error('This PortalOutlet has already been disposed');\n}\n/**\n * Throws an exception when attempting to attach an unknown portal type.\n * @docs-private\n */\nfunction throwUnknownPortalTypeError() {\n throw Error('Attempting to attach an unknown Portal type. BasePortalOutlet accepts either ' +\n 'a ComponentPortal or a TemplatePortal.');\n}\n/**\n * Throws an exception when attempting to attach a portal to a null host.\n * @docs-private\n */\nfunction throwNullPortalOutletError() {\n throw Error('Attempting to attach a portal to a null PortalOutlet');\n}\n/**\n * Throws an exception when attempting to detach a portal that is not attached.\n * @docs-private\n */\nfunction throwNoPortalAttachedError() {\n throw Error('Attempting to detach a portal that is not attached to a host');\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * A `Portal` is something that you want to render somewhere else.\n * It can be attach to / detached from a `PortalOutlet`.\n */\nclass Portal {\n /** Attach this portal to a host. */\n attach(host) {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n if (host == null) {\n throwNullPortalOutletError();\n }\n if (host.hasAttached()) {\n throwPortalAlreadyAttachedError();\n }\n }\n this._attachedHost = host;\n return host.attach(this);\n }\n /** Detach this portal from its host */\n detach() {\n let host = this._attachedHost;\n if (host != null) {\n this._attachedHost = null;\n host.detach();\n }\n else if (typeof ngDevMode === 'undefined' || ngDevMode) {\n throwNoPortalAttachedError();\n }\n }\n /** Whether this portal is attached to a host. */\n get isAttached() {\n return this._attachedHost != null;\n }\n /**\n * Sets the PortalOutlet reference without performing `attach()`. This is used directly by\n * the PortalOutlet when it is performing an `attach()` or `detach()`.\n */\n setAttachedHost(host) {\n this._attachedHost = host;\n }\n}\n/**\n * A `ComponentPortal` is a portal that instantiates some Component upon attachment.\n */\nclass ComponentPortal extends Portal {\n constructor(component, viewContainerRef, injector, componentFactoryResolver) {\n super();\n this.component = component;\n this.viewContainerRef = viewContainerRef;\n this.injector = injector;\n this.componentFactoryResolver = componentFactoryResolver;\n }\n}\n/**\n * A `TemplatePortal` is a portal that represents some embedded template (TemplateRef).\n */\nclass TemplatePortal extends Portal {\n constructor(template, viewContainerRef, context) {\n super();\n this.templateRef = template;\n this.viewContainerRef = viewContainerRef;\n this.context = context;\n }\n get origin() {\n return this.templateRef.elementRef;\n }\n /**\n * Attach the portal to the provided `PortalOutlet`.\n * When a context is provided it will override the `context` property of the `TemplatePortal`\n * instance.\n */\n attach(host, context = this.context) {\n this.context = context;\n return super.attach(host);\n }\n detach() {\n this.context = undefined;\n return super.detach();\n }\n}\n/**\n * A `DomPortal` is a portal whose DOM element will be taken from its current position\n * in the DOM and moved into a portal outlet, when it is attached. On detach, the content\n * will be restored to its original position.\n */\nclass DomPortal extends Portal {\n constructor(element) {\n super();\n this.element = element instanceof ElementRef ? element.nativeElement : element;\n }\n}\n/**\n * Partial implementation of PortalOutlet that handles attaching\n * ComponentPortal and TemplatePortal.\n */\nclass BasePortalOutlet {\n constructor() {\n /** Whether this host has already been permanently disposed. */\n this._isDisposed = false;\n // @breaking-change 10.0.0 `attachDomPortal` to become a required abstract method.\n this.attachDomPortal = null;\n }\n /** Whether this host has an attached portal. */\n hasAttached() {\n return !!this._attachedPortal;\n }\n /** Attaches a portal. */\n attach(portal) {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n if (!portal) {\n throwNullPortalError();\n }\n if (this.hasAttached()) {\n throwPortalAlreadyAttachedError();\n }\n if (this._isDisposed) {\n throwPortalOutletAlreadyDisposedError();\n }\n }\n if (portal instanceof ComponentPortal) {\n this._attachedPortal = portal;\n return this.attachComponentPortal(portal);\n }\n else if (portal instanceof TemplatePortal) {\n this._attachedPortal = portal;\n return this.attachTemplatePortal(portal);\n // @breaking-change 10.0.0 remove null check for `this.attachDomPortal`.\n }\n else if (this.attachDomPortal && portal instanceof DomPortal) {\n this._attachedPortal = portal;\n return this.attachDomPortal(portal);\n }\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n throwUnknownPortalTypeError();\n }\n }\n /** Detaches a previously attached portal. */\n detach() {\n if (this._attachedPortal) {\n this._attachedPortal.setAttachedHost(null);\n this._attachedPortal = null;\n }\n this._invokeDisposeFn();\n }\n /** Permanently dispose of this portal host. */\n dispose() {\n if (this.hasAttached()) {\n this.detach();\n }\n this._invokeDisposeFn();\n this._isDisposed = true;\n }\n /** @docs-private */\n setDisposeFn(fn) {\n this._disposeFn = fn;\n }\n _invokeDisposeFn() {\n if (this._disposeFn) {\n this._disposeFn();\n this._disposeFn = null;\n }\n }\n}\n/**\n * @deprecated Use `BasePortalOutlet` instead.\n * @breaking-change 9.0.0\n */\nclass BasePortalHost extends BasePortalOutlet {\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * A PortalOutlet for attaching portals to an arbitrary DOM element outside of the Angular\n * application context.\n */\nclass DomPortalOutlet extends BasePortalOutlet {\n /**\n * @param outletElement Element into which the content is projected.\n * @param _componentFactoryResolver Used to resolve the component factory.\n * Only required when attaching component portals.\n * @param _appRef Reference to the application. Only used in component portals when there\n * is no `ViewContainerRef` available.\n * @param _defaultInjector Injector to use as a fallback when the portal being attached doesn't\n * have one. Only used for component portals.\n * @param _document Reference to the document. Used when attaching a DOM portal. Will eventually\n * become a required parameter.\n */\n constructor(\n /** Element into which the content is projected. */\n outletElement, _componentFactoryResolver, _appRef, _defaultInjector, \n /**\n * @deprecated `_document` Parameter to be made required.\n * @breaking-change 10.0.0\n */\n _document) {\n super();\n this.outletElement = outletElement;\n this._componentFactoryResolver = _componentFactoryResolver;\n this._appRef = _appRef;\n this._defaultInjector = _defaultInjector;\n /**\n * Attaches a DOM portal by transferring its content into the outlet.\n * @param portal Portal to be attached.\n * @deprecated To be turned into a method.\n * @breaking-change 10.0.0\n */\n this.attachDomPortal = (portal) => {\n // @breaking-change 10.0.0 Remove check and error once the\n // `_document` constructor parameter is required.\n if (!this._document && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('Cannot attach DOM portal without _document constructor parameter');\n }\n const element = portal.element;\n if (!element.parentNode && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('DOM portal content must be attached to a parent node.');\n }\n // Anchor used to save the element's previous position so\n // that we can restore it when the portal is detached.\n const anchorNode = this._document.createComment('dom-portal');\n element.parentNode.insertBefore(anchorNode, element);\n this.outletElement.appendChild(element);\n this._attachedPortal = portal;\n super.setDisposeFn(() => {\n // We can't use `replaceWith` here because IE doesn't support it.\n if (anchorNode.parentNode) {\n anchorNode.parentNode.replaceChild(element, anchorNode);\n }\n });\n };\n this._document = _document;\n }\n /**\n * Attach the given ComponentPortal to DOM element using the ComponentFactoryResolver.\n * @param portal Portal to be attached\n * @returns Reference to the created component.\n */\n attachComponentPortal(portal) {\n const resolver = (portal.componentFactoryResolver || this._componentFactoryResolver);\n if ((typeof ngDevMode === 'undefined' || ngDevMode) && !resolver) {\n throw Error('Cannot attach component portal to outlet without a ComponentFactoryResolver.');\n }\n const componentFactory = resolver.resolveComponentFactory(portal.component);\n let componentRef;\n // If the portal specifies a ViewContainerRef, we will use that as the attachment point\n // for the component (in terms of Angular's component tree, not rendering).\n // When the ViewContainerRef is missing, we use the factory to create the component directly\n // and then manually attach the view to the application.\n if (portal.viewContainerRef) {\n componentRef = portal.viewContainerRef.createComponent(componentFactory, portal.viewContainerRef.length, portal.injector || portal.viewContainerRef.injector);\n this.setDisposeFn(() => componentRef.destroy());\n }\n else {\n if ((typeof ngDevMode === 'undefined' || ngDevMode) && !this._appRef) {\n throw Error('Cannot attach component portal to outlet without an ApplicationRef.');\n }\n componentRef = componentFactory.create(portal.injector || this._defaultInjector || Injector.NULL);\n this._appRef.attachView(componentRef.hostView);\n this.setDisposeFn(() => {\n this._appRef.detachView(componentRef.hostView);\n componentRef.destroy();\n });\n }\n // At this point the component has been instantiated, so we move it to the location in the DOM\n // where we want it to be rendered.\n this.outletElement.appendChild(this._getComponentRootNode(componentRef));\n this._attachedPortal = portal;\n return componentRef;\n }\n /**\n * Attaches a template portal to the DOM as an embedded view.\n * @param portal Portal to be attached.\n * @returns Reference to the created embedded view.\n */\n attachTemplatePortal(portal) {\n let viewContainer = portal.viewContainerRef;\n let viewRef = viewContainer.createEmbeddedView(portal.templateRef, portal.context);\n // The method `createEmbeddedView` will add the view as a child of the viewContainer.\n // But for the DomPortalOutlet the view can be added everywhere in the DOM\n // (e.g Overlay Container) To move the view to the specified host element. We just\n // re-append the existing root nodes.\n viewRef.rootNodes.forEach(rootNode => this.outletElement.appendChild(rootNode));\n // Note that we want to detect changes after the nodes have been moved so that\n // any directives inside the portal that are looking at the DOM inside a lifecycle\n // hook won't be invoked too early.\n viewRef.detectChanges();\n this.setDisposeFn(() => {\n let index = viewContainer.indexOf(viewRef);\n if (index !== -1) {\n viewContainer.remove(index);\n }\n });\n this._attachedPortal = portal;\n // TODO(jelbourn): Return locals from view.\n return viewRef;\n }\n /**\n * Clears out a portal from the DOM.\n */\n dispose() {\n super.dispose();\n this.outletElement.remove();\n }\n /** Gets the root HTMLElement for an instantiated component. */\n _getComponentRootNode(componentRef) {\n return componentRef.hostView.rootNodes[0];\n }\n}\n/**\n * @deprecated Use `DomPortalOutlet` instead.\n * @breaking-change 9.0.0\n */\nclass DomPortalHost extends DomPortalOutlet {\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Directive version of a `TemplatePortal`. Because the directive *is* a TemplatePortal,\n * the directive instance itself can be attached to a host, enabling declarative use of portals.\n */\nclass CdkPortal extends TemplatePortal {\n constructor(templateRef, viewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\nCdkPortal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkPortal, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });\nCdkPortal.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkPortal, selector: \"[cdkPortal]\", exportAs: [\"cdkPortal\"], usesInheritance: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkPortal, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdkPortal]',\n exportAs: 'cdkPortal',\n }]\n }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });\n/**\n * @deprecated Use `CdkPortal` instead.\n * @breaking-change 9.0.0\n */\nclass TemplatePortalDirective extends CdkPortal {\n}\nTemplatePortalDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: TemplatePortalDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });\nTemplatePortalDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: TemplatePortalDirective, selector: \"[cdk-portal], [portal]\", providers: [\n {\n provide: CdkPortal,\n useExisting: TemplatePortalDirective,\n },\n ], exportAs: [\"cdkPortal\"], usesInheritance: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: TemplatePortalDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdk-portal], [portal]',\n exportAs: 'cdkPortal',\n providers: [\n {\n provide: CdkPortal,\n useExisting: TemplatePortalDirective,\n },\n ],\n }]\n }] });\n/**\n * Directive version of a PortalOutlet. Because the directive *is* a PortalOutlet, portals can be\n * directly attached to it, enabling declarative use.\n *\n * Usage:\n * ``\n */\nclass CdkPortalOutlet extends BasePortalOutlet {\n constructor(_componentFactoryResolver, _viewContainerRef, \n /**\n * @deprecated `_document` parameter to be made required.\n * @breaking-change 9.0.0\n */\n _document) {\n super();\n this._componentFactoryResolver = _componentFactoryResolver;\n this._viewContainerRef = _viewContainerRef;\n /** Whether the portal component is initialized. */\n this._isInitialized = false;\n /** Emits when a portal is attached to the outlet. */\n this.attached = new EventEmitter();\n /**\n * Attaches the given DomPortal to this PortalHost by moving all of the portal content into it.\n * @param portal Portal to be attached.\n * @deprecated To be turned into a method.\n * @breaking-change 10.0.0\n */\n this.attachDomPortal = (portal) => {\n // @breaking-change 9.0.0 Remove check and error once the\n // `_document` constructor parameter is required.\n if (!this._document && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('Cannot attach DOM portal without _document constructor parameter');\n }\n const element = portal.element;\n if (!element.parentNode && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('DOM portal content must be attached to a parent node.');\n }\n // Anchor used to save the element's previous position so\n // that we can restore it when the portal is detached.\n const anchorNode = this._document.createComment('dom-portal');\n portal.setAttachedHost(this);\n element.parentNode.insertBefore(anchorNode, element);\n this._getRootNode().appendChild(element);\n this._attachedPortal = portal;\n super.setDisposeFn(() => {\n if (anchorNode.parentNode) {\n anchorNode.parentNode.replaceChild(element, anchorNode);\n }\n });\n };\n this._document = _document;\n }\n /** Portal associated with the Portal outlet. */\n get portal() {\n return this._attachedPortal;\n }\n set portal(portal) {\n // Ignore the cases where the `portal` is set to a falsy value before the lifecycle hooks have\n // run. This handles the cases where the user might do something like `
`\n // and attach a portal programmatically in the parent component. When Angular does the first CD\n // round, it will fire the setter with empty string, causing the user's content to be cleared.\n if (this.hasAttached() && !portal && !this._isInitialized) {\n return;\n }\n if (this.hasAttached()) {\n super.detach();\n }\n if (portal) {\n super.attach(portal);\n }\n this._attachedPortal = portal || null;\n }\n /** Component or view reference that is attached to the portal. */\n get attachedRef() {\n return this._attachedRef;\n }\n ngOnInit() {\n this._isInitialized = true;\n }\n ngOnDestroy() {\n super.dispose();\n this._attachedPortal = null;\n this._attachedRef = null;\n }\n /**\n * Attach the given ComponentPortal to this PortalOutlet using the ComponentFactoryResolver.\n *\n * @param portal Portal to be attached to the portal outlet.\n * @returns Reference to the created component.\n */\n attachComponentPortal(portal) {\n portal.setAttachedHost(this);\n // If the portal specifies an origin, use that as the logical location of the component\n // in the application tree. Otherwise use the location of this PortalOutlet.\n const viewContainerRef = portal.viewContainerRef != null ? portal.viewContainerRef : this._viewContainerRef;\n const resolver = portal.componentFactoryResolver || this._componentFactoryResolver;\n const componentFactory = resolver.resolveComponentFactory(portal.component);\n const ref = viewContainerRef.createComponent(componentFactory, viewContainerRef.length, portal.injector || viewContainerRef.injector);\n // If we're using a view container that's different from the injected one (e.g. when the portal\n // specifies its own) we need to move the component into the outlet, otherwise it'll be rendered\n // inside of the alternate view container.\n if (viewContainerRef !== this._viewContainerRef) {\n this._getRootNode().appendChild(ref.hostView.rootNodes[0]);\n }\n super.setDisposeFn(() => ref.destroy());\n this._attachedPortal = portal;\n this._attachedRef = ref;\n this.attached.emit(ref);\n return ref;\n }\n /**\n * Attach the given TemplatePortal to this PortalHost as an embedded View.\n * @param portal Portal to be attached.\n * @returns Reference to the created embedded view.\n */\n attachTemplatePortal(portal) {\n portal.setAttachedHost(this);\n const viewRef = this._viewContainerRef.createEmbeddedView(portal.templateRef, portal.context);\n super.setDisposeFn(() => this._viewContainerRef.clear());\n this._attachedPortal = portal;\n this._attachedRef = viewRef;\n this.attached.emit(viewRef);\n return viewRef;\n }\n /** Gets the root node of the portal outlet. */\n _getRootNode() {\n const nativeElement = this._viewContainerRef.element.nativeElement;\n // The directive could be set on a template which will result in a comment\n // node being the root. Use the comment's parent node if that is the case.\n return (nativeElement.nodeType === nativeElement.ELEMENT_NODE\n ? nativeElement\n : nativeElement.parentNode);\n }\n}\nCdkPortalOutlet.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkPortalOutlet, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });\nCdkPortalOutlet.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkPortalOutlet, selector: \"[cdkPortalOutlet]\", inputs: { portal: [\"cdkPortalOutlet\", \"portal\"] }, outputs: { attached: \"attached\" }, exportAs: [\"cdkPortalOutlet\"], usesInheritance: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkPortalOutlet, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdkPortalOutlet]',\n exportAs: 'cdkPortalOutlet',\n inputs: ['portal: cdkPortalOutlet'],\n }]\n }], ctorParameters: function () {\n return [{ type: i0.ComponentFactoryResolver }, { type: i0.ViewContainerRef }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }];\n }, propDecorators: { attached: [{\n type: Output\n }] } });\n/**\n * @deprecated Use `CdkPortalOutlet` instead.\n * @breaking-change 9.0.0\n */\nclass PortalHostDirective extends CdkPortalOutlet {\n}\nPortalHostDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PortalHostDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });\nPortalHostDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: PortalHostDirective, selector: \"[cdkPortalHost], [portalHost]\", inputs: { portal: [\"cdkPortalHost\", \"portal\"] }, providers: [\n {\n provide: CdkPortalOutlet,\n useExisting: PortalHostDirective,\n },\n ], exportAs: [\"cdkPortalHost\"], usesInheritance: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PortalHostDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdkPortalHost], [portalHost]',\n exportAs: 'cdkPortalHost',\n inputs: ['portal: cdkPortalHost'],\n providers: [\n {\n provide: CdkPortalOutlet,\n useExisting: PortalHostDirective,\n },\n ],\n }]\n }] });\nclass PortalModule {\n}\nPortalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PortalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nPortalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PortalModule, declarations: [CdkPortal, CdkPortalOutlet, TemplatePortalDirective, PortalHostDirective], exports: [CdkPortal, CdkPortalOutlet, TemplatePortalDirective, PortalHostDirective] });\nPortalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PortalModule });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PortalModule, decorators: [{\n type: NgModule,\n args: [{\n exports: [CdkPortal, CdkPortalOutlet, TemplatePortalDirective, PortalHostDirective],\n declarations: [CdkPortal, CdkPortalOutlet, TemplatePortalDirective, PortalHostDirective],\n }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Custom injector to be used when providing custom\n * injection tokens to components inside a portal.\n * @docs-private\n * @deprecated Use `Injector.create` instead.\n * @breaking-change 11.0.0\n */\nclass PortalInjector {\n constructor(_parentInjector, _customTokens) {\n this._parentInjector = _parentInjector;\n this._customTokens = _customTokens;\n }\n get(token, notFoundValue) {\n const value = this._customTokens.get(token);\n if (typeof value !== 'undefined') {\n return value;\n }\n return this._parentInjector.get(token, notFoundValue);\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { BasePortalHost, BasePortalOutlet, CdkPortal, CdkPortalOutlet, ComponentPortal, DomPortal, DomPortalHost, DomPortalOutlet, Portal, PortalHostDirective, PortalInjector, PortalModule, TemplatePortal, TemplatePortalDirective };\n","import { coerceNumberProperty, coerceElement, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport * as i0 from '@angular/core';\nimport { InjectionToken, forwardRef, Directive, Input, Injectable, Optional, Inject, Component, ViewEncapsulation, ChangeDetectionStrategy, Output, ViewChild, SkipSelf, NgModule } from '@angular/core';\nimport { Subject, of, Observable, fromEvent, animationFrameScheduler, asapScheduler, Subscription, isObservable } from 'rxjs';\nimport { distinctUntilChanged, auditTime, filter, takeUntil, startWith, pairwise, switchMap, shareReplay } from 'rxjs/operators';\nimport { DOCUMENT } from '@angular/common';\nimport * as i1 from '@angular/cdk/platform';\nimport { getRtlScrollAxisType, supportsScrollBehavior } from '@angular/cdk/platform';\nimport * as i2 from '@angular/cdk/bidi';\nimport { BidiModule } from '@angular/cdk/bidi';\nimport * as i2$1 from '@angular/cdk/collections';\nimport { isDataSource, ArrayDataSource, _VIEW_REPEATER_STRATEGY, _RecycleViewRepeaterStrategy } from '@angular/cdk/collections';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** The injection token used to specify the virtual scrolling strategy. */\nconst VIRTUAL_SCROLL_STRATEGY = new InjectionToken('VIRTUAL_SCROLL_STRATEGY');\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Virtual scrolling strategy for lists with items of known fixed size. */\nclass FixedSizeVirtualScrollStrategy {\n /**\n * @param itemSize The size of the items in the virtually scrolling list.\n * @param minBufferPx The minimum amount of buffer (in pixels) before needing to render more\n * @param maxBufferPx The amount of buffer (in pixels) to render when rendering more.\n */\n constructor(itemSize, minBufferPx, maxBufferPx) {\n this._scrolledIndexChange = new Subject();\n /** @docs-private Implemented as part of VirtualScrollStrategy. */\n this.scrolledIndexChange = this._scrolledIndexChange.pipe(distinctUntilChanged());\n /** The attached viewport. */\n this._viewport = null;\n this._itemSize = itemSize;\n this._minBufferPx = minBufferPx;\n this._maxBufferPx = maxBufferPx;\n }\n /**\n * Attaches this scroll strategy to a viewport.\n * @param viewport The viewport to attach this strategy to.\n */\n attach(viewport) {\n this._viewport = viewport;\n this._updateTotalContentSize();\n this._updateRenderedRange();\n }\n /** Detaches this scroll strategy from the currently attached viewport. */\n detach() {\n this._scrolledIndexChange.complete();\n this._viewport = null;\n }\n /**\n * Update the item size and buffer size.\n * @param itemSize The size of the items in the virtually scrolling list.\n * @param minBufferPx The minimum amount of buffer (in pixels) before needing to render more\n * @param maxBufferPx The amount of buffer (in pixels) to render when rendering more.\n */\n updateItemAndBufferSize(itemSize, minBufferPx, maxBufferPx) {\n if (maxBufferPx < minBufferPx && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('CDK virtual scroll: maxBufferPx must be greater than or equal to minBufferPx');\n }\n this._itemSize = itemSize;\n this._minBufferPx = minBufferPx;\n this._maxBufferPx = maxBufferPx;\n this._updateTotalContentSize();\n this._updateRenderedRange();\n }\n /** @docs-private Implemented as part of VirtualScrollStrategy. */\n onContentScrolled() {\n this._updateRenderedRange();\n }\n /** @docs-private Implemented as part of VirtualScrollStrategy. */\n onDataLengthChanged() {\n this._updateTotalContentSize();\n this._updateRenderedRange();\n }\n /** @docs-private Implemented as part of VirtualScrollStrategy. */\n onContentRendered() {\n /* no-op */\n }\n /** @docs-private Implemented as part of VirtualScrollStrategy. */\n onRenderedOffsetChanged() {\n /* no-op */\n }\n /**\n * Scroll to the offset for the given index.\n * @param index The index of the element to scroll to.\n * @param behavior The ScrollBehavior to use when scrolling.\n */\n scrollToIndex(index, behavior) {\n if (this._viewport) {\n this._viewport.scrollToOffset(index * this._itemSize, behavior);\n }\n }\n /** Update the viewport's total content size. */\n _updateTotalContentSize() {\n if (!this._viewport) {\n return;\n }\n this._viewport.setTotalContentSize(this._viewport.getDataLength() * this._itemSize);\n }\n /** Update the viewport's rendered range. */\n _updateRenderedRange() {\n if (!this._viewport) {\n return;\n }\n const renderedRange = this._viewport.getRenderedRange();\n const newRange = { start: renderedRange.start, end: renderedRange.end };\n const viewportSize = this._viewport.getViewportSize();\n const dataLength = this._viewport.getDataLength();\n let scrollOffset = this._viewport.measureScrollOffset();\n // Prevent NaN as result when dividing by zero.\n let firstVisibleIndex = this._itemSize > 0 ? scrollOffset / this._itemSize : 0;\n // If user scrolls to the bottom of the list and data changes to a smaller list\n if (newRange.end > dataLength) {\n // We have to recalculate the first visible index based on new data length and viewport size.\n const maxVisibleItems = Math.ceil(viewportSize / this._itemSize);\n const newVisibleIndex = Math.max(0, Math.min(firstVisibleIndex, dataLength - maxVisibleItems));\n // If first visible index changed we must update scroll offset to handle start/end buffers\n // Current range must also be adjusted to cover the new position (bottom of new list).\n if (firstVisibleIndex != newVisibleIndex) {\n firstVisibleIndex = newVisibleIndex;\n scrollOffset = newVisibleIndex * this._itemSize;\n newRange.start = Math.floor(firstVisibleIndex);\n }\n newRange.end = Math.max(0, Math.min(dataLength, newRange.start + maxVisibleItems));\n }\n const startBuffer = scrollOffset - newRange.start * this._itemSize;\n if (startBuffer < this._minBufferPx && newRange.start != 0) {\n const expandStart = Math.ceil((this._maxBufferPx - startBuffer) / this._itemSize);\n newRange.start = Math.max(0, newRange.start - expandStart);\n newRange.end = Math.min(dataLength, Math.ceil(firstVisibleIndex + (viewportSize + this._minBufferPx) / this._itemSize));\n }\n else {\n const endBuffer = newRange.end * this._itemSize - (scrollOffset + viewportSize);\n if (endBuffer < this._minBufferPx && newRange.end != dataLength) {\n const expandEnd = Math.ceil((this._maxBufferPx - endBuffer) / this._itemSize);\n if (expandEnd > 0) {\n newRange.end = Math.min(dataLength, newRange.end + expandEnd);\n newRange.start = Math.max(0, Math.floor(firstVisibleIndex - this._minBufferPx / this._itemSize));\n }\n }\n }\n this._viewport.setRenderedRange(newRange);\n this._viewport.setRenderedContentOffset(this._itemSize * newRange.start);\n this._scrolledIndexChange.next(Math.floor(firstVisibleIndex));\n }\n}\n/**\n * Provider factory for `FixedSizeVirtualScrollStrategy` that simply extracts the already created\n * `FixedSizeVirtualScrollStrategy` from the given directive.\n * @param fixedSizeDir The instance of `CdkFixedSizeVirtualScroll` to extract the\n * `FixedSizeVirtualScrollStrategy` from.\n */\nfunction _fixedSizeVirtualScrollStrategyFactory(fixedSizeDir) {\n return fixedSizeDir._scrollStrategy;\n}\n/** A virtual scroll strategy that supports fixed-size items. */\nclass CdkFixedSizeVirtualScroll {\n constructor() {\n this._itemSize = 20;\n this._minBufferPx = 100;\n this._maxBufferPx = 200;\n /** The scroll strategy used by this directive. */\n this._scrollStrategy = new FixedSizeVirtualScrollStrategy(this.itemSize, this.minBufferPx, this.maxBufferPx);\n }\n /** The size of the items in the list (in pixels). */\n get itemSize() {\n return this._itemSize;\n }\n set itemSize(value) {\n this._itemSize = coerceNumberProperty(value);\n }\n /**\n * The minimum amount of buffer rendered beyond the viewport (in pixels).\n * If the amount of buffer dips below this number, more items will be rendered. Defaults to 100px.\n */\n get minBufferPx() {\n return this._minBufferPx;\n }\n set minBufferPx(value) {\n this._minBufferPx = coerceNumberProperty(value);\n }\n /**\n * The number of pixels worth of buffer to render for when rendering new items. Defaults to 200px.\n */\n get maxBufferPx() {\n return this._maxBufferPx;\n }\n set maxBufferPx(value) {\n this._maxBufferPx = coerceNumberProperty(value);\n }\n ngOnChanges() {\n this._scrollStrategy.updateItemAndBufferSize(this.itemSize, this.minBufferPx, this.maxBufferPx);\n }\n}\nCdkFixedSizeVirtualScroll.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkFixedSizeVirtualScroll, deps: [], target: i0.ɵɵFactoryTarget.Directive });\nCdkFixedSizeVirtualScroll.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkFixedSizeVirtualScroll, selector: \"cdk-virtual-scroll-viewport[itemSize]\", inputs: { itemSize: \"itemSize\", minBufferPx: \"minBufferPx\", maxBufferPx: \"maxBufferPx\" }, providers: [\n {\n provide: VIRTUAL_SCROLL_STRATEGY,\n useFactory: _fixedSizeVirtualScrollStrategyFactory,\n deps: [forwardRef(() => CdkFixedSizeVirtualScroll)],\n },\n ], usesOnChanges: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkFixedSizeVirtualScroll, decorators: [{\n type: Directive,\n args: [{\n selector: 'cdk-virtual-scroll-viewport[itemSize]',\n providers: [\n {\n provide: VIRTUAL_SCROLL_STRATEGY,\n useFactory: _fixedSizeVirtualScrollStrategyFactory,\n deps: [forwardRef(() => CdkFixedSizeVirtualScroll)],\n },\n ],\n }]\n }], propDecorators: { itemSize: [{\n type: Input\n }], minBufferPx: [{\n type: Input\n }], maxBufferPx: [{\n type: Input\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Time in ms to throttle the scrolling events by default. */\nconst DEFAULT_SCROLL_TIME = 20;\n/**\n * Service contained all registered Scrollable references and emits an event when any one of the\n * Scrollable references emit a scrolled event.\n */\nclass ScrollDispatcher {\n constructor(_ngZone, _platform, document) {\n this._ngZone = _ngZone;\n this._platform = _platform;\n /** Subject for notifying that a registered scrollable reference element has been scrolled. */\n this._scrolled = new Subject();\n /** Keeps track of the global `scroll` and `resize` subscriptions. */\n this._globalSubscription = null;\n /** Keeps track of the amount of subscriptions to `scrolled`. Used for cleaning up afterwards. */\n this._scrolledCount = 0;\n /**\n * Map of all the scrollable references that are registered with the service and their\n * scroll event subscriptions.\n */\n this.scrollContainers = new Map();\n this._document = document;\n }\n /**\n * Registers a scrollable instance with the service and listens for its scrolled events. When the\n * scrollable is scrolled, the service emits the event to its scrolled observable.\n * @param scrollable Scrollable instance to be registered.\n */\n register(scrollable) {\n if (!this.scrollContainers.has(scrollable)) {\n this.scrollContainers.set(scrollable, scrollable.elementScrolled().subscribe(() => this._scrolled.next(scrollable)));\n }\n }\n /**\n * Deregisters a Scrollable reference and unsubscribes from its scroll event observable.\n * @param scrollable Scrollable instance to be deregistered.\n */\n deregister(scrollable) {\n const scrollableReference = this.scrollContainers.get(scrollable);\n if (scrollableReference) {\n scrollableReference.unsubscribe();\n this.scrollContainers.delete(scrollable);\n }\n }\n /**\n * Returns an observable that emits an event whenever any of the registered Scrollable\n * references (or window, document, or body) fire a scrolled event. Can provide a time in ms\n * to override the default \"throttle\" time.\n *\n * **Note:** in order to avoid hitting change detection for every scroll event,\n * all of the events emitted from this stream will be run outside the Angular zone.\n * If you need to update any data bindings as a result of a scroll event, you have\n * to run the callback using `NgZone.run`.\n */\n scrolled(auditTimeInMs = DEFAULT_SCROLL_TIME) {\n if (!this._platform.isBrowser) {\n return of();\n }\n return new Observable((observer) => {\n if (!this._globalSubscription) {\n this._addGlobalListener();\n }\n // In the case of a 0ms delay, use an observable without auditTime\n // since it does add a perceptible delay in processing overhead.\n const subscription = auditTimeInMs > 0\n ? this._scrolled.pipe(auditTime(auditTimeInMs)).subscribe(observer)\n : this._scrolled.subscribe(observer);\n this._scrolledCount++;\n return () => {\n subscription.unsubscribe();\n this._scrolledCount--;\n if (!this._scrolledCount) {\n this._removeGlobalListener();\n }\n };\n });\n }\n ngOnDestroy() {\n this._removeGlobalListener();\n this.scrollContainers.forEach((_, container) => this.deregister(container));\n this._scrolled.complete();\n }\n /**\n * Returns an observable that emits whenever any of the\n * scrollable ancestors of an element are scrolled.\n * @param elementOrElementRef Element whose ancestors to listen for.\n * @param auditTimeInMs Time to throttle the scroll events.\n */\n ancestorScrolled(elementOrElementRef, auditTimeInMs) {\n const ancestors = this.getAncestorScrollContainers(elementOrElementRef);\n return this.scrolled(auditTimeInMs).pipe(filter(target => {\n return !target || ancestors.indexOf(target) > -1;\n }));\n }\n /** Returns all registered Scrollables that contain the provided element. */\n getAncestorScrollContainers(elementOrElementRef) {\n const scrollingContainers = [];\n this.scrollContainers.forEach((_subscription, scrollable) => {\n if (this._scrollableContainsElement(scrollable, elementOrElementRef)) {\n scrollingContainers.push(scrollable);\n }\n });\n return scrollingContainers;\n }\n /** Use defaultView of injected document if available or fallback to global window reference */\n _getWindow() {\n return this._document.defaultView || window;\n }\n /** Returns true if the element is contained within the provided Scrollable. */\n _scrollableContainsElement(scrollable, elementOrElementRef) {\n let element = coerceElement(elementOrElementRef);\n let scrollableElement = scrollable.getElementRef().nativeElement;\n // Traverse through the element parents until we reach null, checking if any of the elements\n // are the scrollable's element.\n do {\n if (element == scrollableElement) {\n return true;\n }\n } while ((element = element.parentElement));\n return false;\n }\n /** Sets up the global scroll listeners. */\n _addGlobalListener() {\n this._globalSubscription = this._ngZone.runOutsideAngular(() => {\n const window = this._getWindow();\n return fromEvent(window.document, 'scroll').subscribe(() => this._scrolled.next());\n });\n }\n /** Cleans up the global scroll listener. */\n _removeGlobalListener() {\n if (this._globalSubscription) {\n this._globalSubscription.unsubscribe();\n this._globalSubscription = null;\n }\n }\n}\nScrollDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ScrollDispatcher, deps: [{ token: i0.NgZone }, { token: i1.Platform }, { token: DOCUMENT, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nScrollDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ScrollDispatcher, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ScrollDispatcher, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: i0.NgZone }, { type: i1.Platform }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [DOCUMENT]\n }] }];\n } });\n\n/**\n * Sends an event when the directive's element is scrolled. Registers itself with the\n * ScrollDispatcher service to include itself as part of its collection of scrolling events that it\n * can be listened to through the service.\n */\nclass CdkScrollable {\n constructor(elementRef, scrollDispatcher, ngZone, dir) {\n this.elementRef = elementRef;\n this.scrollDispatcher = scrollDispatcher;\n this.ngZone = ngZone;\n this.dir = dir;\n this._destroyed = new Subject();\n this._elementScrolled = new Observable((observer) => this.ngZone.runOutsideAngular(() => fromEvent(this.elementRef.nativeElement, 'scroll')\n .pipe(takeUntil(this._destroyed))\n .subscribe(observer)));\n }\n ngOnInit() {\n this.scrollDispatcher.register(this);\n }\n ngOnDestroy() {\n this.scrollDispatcher.deregister(this);\n this._destroyed.next();\n this._destroyed.complete();\n }\n /** Returns observable that emits when a scroll event is fired on the host element. */\n elementScrolled() {\n return this._elementScrolled;\n }\n /** Gets the ElementRef for the viewport. */\n getElementRef() {\n return this.elementRef;\n }\n /**\n * Scrolls to the specified offsets. This is a normalized version of the browser's native scrollTo\n * method, since browsers are not consistent about what scrollLeft means in RTL. For this method\n * left and right always refer to the left and right side of the scrolling container irrespective\n * of the layout direction. start and end refer to left and right in an LTR context and vice-versa\n * in an RTL context.\n * @param options specified the offsets to scroll to.\n */\n scrollTo(options) {\n const el = this.elementRef.nativeElement;\n const isRtl = this.dir && this.dir.value == 'rtl';\n // Rewrite start & end offsets as right or left offsets.\n if (options.left == null) {\n options.left = isRtl ? options.end : options.start;\n }\n if (options.right == null) {\n options.right = isRtl ? options.start : options.end;\n }\n // Rewrite the bottom offset as a top offset.\n if (options.bottom != null) {\n options.top =\n el.scrollHeight - el.clientHeight - options.bottom;\n }\n // Rewrite the right offset as a left offset.\n if (isRtl && getRtlScrollAxisType() != 0 /* NORMAL */) {\n if (options.left != null) {\n options.right =\n el.scrollWidth - el.clientWidth - options.left;\n }\n if (getRtlScrollAxisType() == 2 /* INVERTED */) {\n options.left = options.right;\n }\n else if (getRtlScrollAxisType() == 1 /* NEGATED */) {\n options.left = options.right ? -options.right : options.right;\n }\n }\n else {\n if (options.right != null) {\n options.left =\n el.scrollWidth - el.clientWidth - options.right;\n }\n }\n this._applyScrollToOptions(options);\n }\n _applyScrollToOptions(options) {\n const el = this.elementRef.nativeElement;\n if (supportsScrollBehavior()) {\n el.scrollTo(options);\n }\n else {\n if (options.top != null) {\n el.scrollTop = options.top;\n }\n if (options.left != null) {\n el.scrollLeft = options.left;\n }\n }\n }\n /**\n * Measures the scroll offset relative to the specified edge of the viewport. This method can be\n * used instead of directly checking scrollLeft or scrollTop, since browsers are not consistent\n * about what scrollLeft means in RTL. The values returned by this method are normalized such that\n * left and right always refer to the left and right side of the scrolling container irrespective\n * of the layout direction. start and end refer to left and right in an LTR context and vice-versa\n * in an RTL context.\n * @param from The edge to measure from.\n */\n measureScrollOffset(from) {\n const LEFT = 'left';\n const RIGHT = 'right';\n const el = this.elementRef.nativeElement;\n if (from == 'top') {\n return el.scrollTop;\n }\n if (from == 'bottom') {\n return el.scrollHeight - el.clientHeight - el.scrollTop;\n }\n // Rewrite start & end as left or right offsets.\n const isRtl = this.dir && this.dir.value == 'rtl';\n if (from == 'start') {\n from = isRtl ? RIGHT : LEFT;\n }\n else if (from == 'end') {\n from = isRtl ? LEFT : RIGHT;\n }\n if (isRtl && getRtlScrollAxisType() == 2 /* INVERTED */) {\n // For INVERTED, scrollLeft is (scrollWidth - clientWidth) when scrolled all the way left and\n // 0 when scrolled all the way right.\n if (from == LEFT) {\n return el.scrollWidth - el.clientWidth - el.scrollLeft;\n }\n else {\n return el.scrollLeft;\n }\n }\n else if (isRtl && getRtlScrollAxisType() == 1 /* NEGATED */) {\n // For NEGATED, scrollLeft is -(scrollWidth - clientWidth) when scrolled all the way left and\n // 0 when scrolled all the way right.\n if (from == LEFT) {\n return el.scrollLeft + el.scrollWidth - el.clientWidth;\n }\n else {\n return -el.scrollLeft;\n }\n }\n else {\n // For NORMAL, as well as non-RTL contexts, scrollLeft is 0 when scrolled all the way left and\n // (scrollWidth - clientWidth) when scrolled all the way right.\n if (from == LEFT) {\n return el.scrollLeft;\n }\n else {\n return el.scrollWidth - el.clientWidth - el.scrollLeft;\n }\n }\n }\n}\nCdkScrollable.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkScrollable, deps: [{ token: i0.ElementRef }, { token: ScrollDispatcher }, { token: i0.NgZone }, { token: i2.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Directive });\nCdkScrollable.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkScrollable, selector: \"[cdk-scrollable], [cdkScrollable]\", ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkScrollable, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdk-scrollable], [cdkScrollable]',\n }]\n }], ctorParameters: function () {\n return [{ type: i0.ElementRef }, { type: ScrollDispatcher }, { type: i0.NgZone }, { type: i2.Directionality, decorators: [{\n type: Optional\n }] }];\n } });\n\n/** Time in ms to throttle the resize events by default. */\nconst DEFAULT_RESIZE_TIME = 20;\n/**\n * Simple utility for getting the bounds of the browser viewport.\n * @docs-private\n */\nclass ViewportRuler {\n constructor(_platform, ngZone, document) {\n this._platform = _platform;\n /** Stream of viewport change events. */\n this._change = new Subject();\n /** Event listener that will be used to handle the viewport change events. */\n this._changeListener = (event) => {\n this._change.next(event);\n };\n this._document = document;\n ngZone.runOutsideAngular(() => {\n if (_platform.isBrowser) {\n const window = this._getWindow();\n // Note that bind the events ourselves, rather than going through something like RxJS's\n // `fromEvent` so that we can ensure that they're bound outside of the NgZone.\n window.addEventListener('resize', this._changeListener);\n window.addEventListener('orientationchange', this._changeListener);\n }\n // Clear the cached position so that the viewport is re-measured next time it is required.\n // We don't need to keep track of the subscription, because it is completed on destroy.\n this.change().subscribe(() => (this._viewportSize = null));\n });\n }\n ngOnDestroy() {\n if (this._platform.isBrowser) {\n const window = this._getWindow();\n window.removeEventListener('resize', this._changeListener);\n window.removeEventListener('orientationchange', this._changeListener);\n }\n this._change.complete();\n }\n /** Returns the viewport's width and height. */\n getViewportSize() {\n if (!this._viewportSize) {\n this._updateViewportSize();\n }\n const output = { width: this._viewportSize.width, height: this._viewportSize.height };\n // If we're not on a browser, don't cache the size since it'll be mocked out anyway.\n if (!this._platform.isBrowser) {\n this._viewportSize = null;\n }\n return output;\n }\n /** Gets a ClientRect for the viewport's bounds. */\n getViewportRect() {\n // Use the document element's bounding rect rather than the window scroll properties\n // (e.g. pageYOffset, scrollY) due to in issue in Chrome and IE where window scroll\n // properties and client coordinates (boundingClientRect, clientX/Y, etc.) are in different\n // conceptual viewports. Under most circumstances these viewports are equivalent, but they\n // can disagree when the page is pinch-zoomed (on devices that support touch).\n // See https://bugs.chromium.org/p/chromium/issues/detail?id=489206#c4\n // We use the documentElement instead of the body because, by default (without a css reset)\n // browsers typically give the document body an 8px margin, which is not included in\n // getBoundingClientRect().\n const scrollPosition = this.getViewportScrollPosition();\n const { width, height } = this.getViewportSize();\n return {\n top: scrollPosition.top,\n left: scrollPosition.left,\n bottom: scrollPosition.top + height,\n right: scrollPosition.left + width,\n height,\n width,\n };\n }\n /** Gets the (top, left) scroll position of the viewport. */\n getViewportScrollPosition() {\n // While we can get a reference to the fake document\n // during SSR, it doesn't have getBoundingClientRect.\n if (!this._platform.isBrowser) {\n return { top: 0, left: 0 };\n }\n // The top-left-corner of the viewport is determined by the scroll position of the document\n // body, normally just (scrollLeft, scrollTop). However, Chrome and Firefox disagree about\n // whether `document.body` or `document.documentElement` is the scrolled element, so reading\n // `scrollTop` and `scrollLeft` is inconsistent. However, using the bounding rect of\n // `document.documentElement` works consistently, where the `top` and `left` values will\n // equal negative the scroll position.\n const document = this._document;\n const window = this._getWindow();\n const documentElement = document.documentElement;\n const documentRect = documentElement.getBoundingClientRect();\n const top = -documentRect.top ||\n document.body.scrollTop ||\n window.scrollY ||\n documentElement.scrollTop ||\n 0;\n const left = -documentRect.left ||\n document.body.scrollLeft ||\n window.scrollX ||\n documentElement.scrollLeft ||\n 0;\n return { top, left };\n }\n /**\n * Returns a stream that emits whenever the size of the viewport changes.\n * This stream emits outside of the Angular zone.\n * @param throttleTime Time in milliseconds to throttle the stream.\n */\n change(throttleTime = DEFAULT_RESIZE_TIME) {\n return throttleTime > 0 ? this._change.pipe(auditTime(throttleTime)) : this._change;\n }\n /** Use defaultView of injected document if available or fallback to global window reference */\n _getWindow() {\n return this._document.defaultView || window;\n }\n /** Updates the cached viewport size. */\n _updateViewportSize() {\n const window = this._getWindow();\n this._viewportSize = this._platform.isBrowser\n ? { width: window.innerWidth, height: window.innerHeight }\n : { width: 0, height: 0 };\n }\n}\nViewportRuler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ViewportRuler, deps: [{ token: i1.Platform }, { token: i0.NgZone }, { token: DOCUMENT, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nViewportRuler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ViewportRuler, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ViewportRuler, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () {\n return [{ type: i1.Platform }, { type: i0.NgZone }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [DOCUMENT]\n }] }];\n } });\n\n/** Checks if the given ranges are equal. */\nfunction rangesEqual(r1, r2) {\n return r1.start == r2.start && r1.end == r2.end;\n}\n/**\n * Scheduler to be used for scroll events. Needs to fall back to\n * something that doesn't rely on requestAnimationFrame on environments\n * that don't support it (e.g. server-side rendering).\n */\nconst SCROLL_SCHEDULER = typeof requestAnimationFrame !== 'undefined' ? animationFrameScheduler : asapScheduler;\n/** A viewport that virtualizes its scrolling with the help of `CdkVirtualForOf`. */\nclass CdkVirtualScrollViewport extends CdkScrollable {\n constructor(elementRef, _changeDetectorRef, ngZone, _scrollStrategy, dir, scrollDispatcher, viewportRuler) {\n super(elementRef, scrollDispatcher, ngZone, dir);\n this.elementRef = elementRef;\n this._changeDetectorRef = _changeDetectorRef;\n this._scrollStrategy = _scrollStrategy;\n /** Emits when the viewport is detached from a CdkVirtualForOf. */\n this._detachedSubject = new Subject();\n /** Emits when the rendered range changes. */\n this._renderedRangeSubject = new Subject();\n this._orientation = 'vertical';\n this._appendOnly = false;\n // Note: we don't use the typical EventEmitter here because we need to subscribe to the scroll\n // strategy lazily (i.e. only if the user is actually listening to the events). We do this because\n // depending on how the strategy calculates the scrolled index, it may come at a cost to\n // performance.\n /** Emits when the index of the first element visible in the viewport changes. */\n this.scrolledIndexChange = new Observable((observer) => this._scrollStrategy.scrolledIndexChange.subscribe(index => Promise.resolve().then(() => this.ngZone.run(() => observer.next(index)))));\n /** A stream that emits whenever the rendered range changes. */\n this.renderedRangeStream = this._renderedRangeSubject;\n /**\n * The total size of all content (in pixels), including content that is not currently rendered.\n */\n this._totalContentSize = 0;\n /** A string representing the `style.width` property value to be used for the spacer element. */\n this._totalContentWidth = '';\n /** A string representing the `style.height` property value to be used for the spacer element. */\n this._totalContentHeight = '';\n /** The currently rendered range of indices. */\n this._renderedRange = { start: 0, end: 0 };\n /** The length of the data bound to this viewport (in number of items). */\n this._dataLength = 0;\n /** The size of the viewport (in pixels). */\n this._viewportSize = 0;\n /** The last rendered content offset that was set. */\n this._renderedContentOffset = 0;\n /**\n * Whether the last rendered content offset was to the end of the content (and therefore needs to\n * be rewritten as an offset to the start of the content).\n */\n this._renderedContentOffsetNeedsRewrite = false;\n /** Whether there is a pending change detection cycle. */\n this._isChangeDetectionPending = false;\n /** A list of functions to run after the next change detection cycle. */\n this._runAfterChangeDetection = [];\n /** Subscription to changes in the viewport size. */\n this._viewportChanges = Subscription.EMPTY;\n if (!_scrollStrategy && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('Error: cdk-virtual-scroll-viewport requires the \"itemSize\" property to be set.');\n }\n this._viewportChanges = viewportRuler.change().subscribe(() => {\n this.checkViewportSize();\n });\n }\n /** The direction the viewport scrolls. */\n get orientation() {\n return this._orientation;\n }\n set orientation(orientation) {\n if (this._orientation !== orientation) {\n this._orientation = orientation;\n this._calculateSpacerSize();\n }\n }\n /**\n * Whether rendered items should persist in the DOM after scrolling out of view. By default, items\n * will be removed.\n */\n get appendOnly() {\n return this._appendOnly;\n }\n set appendOnly(value) {\n this._appendOnly = coerceBooleanProperty(value);\n }\n ngOnInit() {\n super.ngOnInit();\n // It's still too early to measure the viewport at this point. Deferring with a promise allows\n // the Viewport to be rendered with the correct size before we measure. We run this outside the\n // zone to avoid causing more change detection cycles. We handle the change detection loop\n // ourselves instead.\n this.ngZone.runOutsideAngular(() => Promise.resolve().then(() => {\n this._measureViewportSize();\n this._scrollStrategy.attach(this);\n this.elementScrolled()\n .pipe(\n // Start off with a fake scroll event so we properly detect our initial position.\n startWith(null), \n // Collect multiple events into one until the next animation frame. This way if\n // there are multiple scroll events in the same frame we only need to recheck\n // our layout once.\n auditTime(0, SCROLL_SCHEDULER))\n .subscribe(() => this._scrollStrategy.onContentScrolled());\n this._markChangeDetectionNeeded();\n }));\n }\n ngOnDestroy() {\n this.detach();\n this._scrollStrategy.detach();\n // Complete all subjects\n this._renderedRangeSubject.complete();\n this._detachedSubject.complete();\n this._viewportChanges.unsubscribe();\n super.ngOnDestroy();\n }\n /** Attaches a `CdkVirtualScrollRepeater` to this viewport. */\n attach(forOf) {\n if (this._forOf && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('CdkVirtualScrollViewport is already attached.');\n }\n // Subscribe to the data stream of the CdkVirtualForOf to keep track of when the data length\n // changes. Run outside the zone to avoid triggering change detection, since we're managing the\n // change detection loop ourselves.\n this.ngZone.runOutsideAngular(() => {\n this._forOf = forOf;\n this._forOf.dataStream.pipe(takeUntil(this._detachedSubject)).subscribe(data => {\n const newLength = data.length;\n if (newLength !== this._dataLength) {\n this._dataLength = newLength;\n this._scrollStrategy.onDataLengthChanged();\n }\n this._doChangeDetection();\n });\n });\n }\n /** Detaches the current `CdkVirtualForOf`. */\n detach() {\n this._forOf = null;\n this._detachedSubject.next();\n }\n /** Gets the length of the data bound to this viewport (in number of items). */\n getDataLength() {\n return this._dataLength;\n }\n /** Gets the size of the viewport (in pixels). */\n getViewportSize() {\n return this._viewportSize;\n }\n // TODO(mmalerba): This is technically out of sync with what's really rendered until a render\n // cycle happens. I'm being careful to only call it after the render cycle is complete and before\n // setting it to something else, but its error prone and should probably be split into\n // `pendingRange` and `renderedRange`, the latter reflecting whats actually in the DOM.\n /** Get the current rendered range of items. */\n getRenderedRange() {\n return this._renderedRange;\n }\n /**\n * Sets the total size of all content (in pixels), including content that is not currently\n * rendered.\n */\n setTotalContentSize(size) {\n if (this._totalContentSize !== size) {\n this._totalContentSize = size;\n this._calculateSpacerSize();\n this._markChangeDetectionNeeded();\n }\n }\n /** Sets the currently rendered range of indices. */\n setRenderedRange(range) {\n if (!rangesEqual(this._renderedRange, range)) {\n if (this.appendOnly) {\n range = { start: 0, end: Math.max(this._renderedRange.end, range.end) };\n }\n this._renderedRangeSubject.next((this._renderedRange = range));\n this._markChangeDetectionNeeded(() => this._scrollStrategy.onContentRendered());\n }\n }\n /**\n * Gets the offset from the start of the viewport to the start of the rendered data (in pixels).\n */\n getOffsetToRenderedContentStart() {\n return this._renderedContentOffsetNeedsRewrite ? null : this._renderedContentOffset;\n }\n /**\n * Sets the offset from the start of the viewport to either the start or end of the rendered data\n * (in pixels).\n */\n setRenderedContentOffset(offset, to = 'to-start') {\n // For a horizontal viewport in a right-to-left language we need to translate along the x-axis\n // in the negative direction.\n const isRtl = this.dir && this.dir.value == 'rtl';\n const isHorizontal = this.orientation == 'horizontal';\n const axis = isHorizontal ? 'X' : 'Y';\n const axisDirection = isHorizontal && isRtl ? -1 : 1;\n let transform = `translate${axis}(${Number(axisDirection * offset)}px)`;\n // in appendOnly, we always start from the top\n offset = this.appendOnly && to === 'to-start' ? 0 : offset;\n this._renderedContentOffset = offset;\n if (to === 'to-end') {\n transform += ` translate${axis}(-100%)`;\n // The viewport should rewrite this as a `to-start` offset on the next render cycle. Otherwise\n // elements will appear to expand in the wrong direction (e.g. `mat-expansion-panel` would\n // expand upward).\n this._renderedContentOffsetNeedsRewrite = true;\n }\n if (this._renderedContentTransform != transform) {\n // We know this value is safe because we parse `offset` with `Number()` before passing it\n // into the string.\n this._renderedContentTransform = transform;\n this._markChangeDetectionNeeded(() => {\n if (this._renderedContentOffsetNeedsRewrite) {\n this._renderedContentOffset -= this.measureRenderedContentSize();\n this._renderedContentOffsetNeedsRewrite = false;\n this.setRenderedContentOffset(this._renderedContentOffset);\n }\n else {\n this._scrollStrategy.onRenderedOffsetChanged();\n }\n });\n }\n }\n /**\n * Scrolls to the given offset from the start of the viewport. Please note that this is not always\n * the same as setting `scrollTop` or `scrollLeft`. In a horizontal viewport with right-to-left\n * direction, this would be the equivalent of setting a fictional `scrollRight` property.\n * @param offset The offset to scroll to.\n * @param behavior The ScrollBehavior to use when scrolling. Default is behavior is `auto`.\n */\n scrollToOffset(offset, behavior = 'auto') {\n const options = { behavior };\n if (this.orientation === 'horizontal') {\n options.start = offset;\n }\n else {\n options.top = offset;\n }\n this.scrollTo(options);\n }\n /**\n * Scrolls to the offset for the given index.\n * @param index The index of the element to scroll to.\n * @param behavior The ScrollBehavior to use when scrolling. Default is behavior is `auto`.\n */\n scrollToIndex(index, behavior = 'auto') {\n this._scrollStrategy.scrollToIndex(index, behavior);\n }\n /**\n * Gets the current scroll offset from the start of the viewport (in pixels).\n * @param from The edge to measure the offset from. Defaults to 'top' in vertical mode and 'start'\n * in horizontal mode.\n */\n measureScrollOffset(from) {\n return from\n ? super.measureScrollOffset(from)\n : super.measureScrollOffset(this.orientation === 'horizontal' ? 'start' : 'top');\n }\n /** Measure the combined size of all of the rendered items. */\n measureRenderedContentSize() {\n const contentEl = this._contentWrapper.nativeElement;\n return this.orientation === 'horizontal' ? contentEl.offsetWidth : contentEl.offsetHeight;\n }\n /**\n * Measure the total combined size of the given range. Throws if the range includes items that are\n * not rendered.\n */\n measureRangeSize(range) {\n if (!this._forOf) {\n return 0;\n }\n return this._forOf.measureRangeSize(range, this.orientation);\n }\n /** Update the viewport dimensions and re-render. */\n checkViewportSize() {\n // TODO: Cleanup later when add logic for handling content resize\n this._measureViewportSize();\n this._scrollStrategy.onDataLengthChanged();\n }\n /** Measure the viewport size. */\n _measureViewportSize() {\n const viewportEl = this.elementRef.nativeElement;\n this._viewportSize =\n this.orientation === 'horizontal' ? viewportEl.clientWidth : viewportEl.clientHeight;\n }\n /** Queue up change detection to run. */\n _markChangeDetectionNeeded(runAfter) {\n if (runAfter) {\n this._runAfterChangeDetection.push(runAfter);\n }\n // Use a Promise to batch together calls to `_doChangeDetection`. This way if we set a bunch of\n // properties sequentially we only have to run `_doChangeDetection` once at the end.\n if (!this._isChangeDetectionPending) {\n this._isChangeDetectionPending = true;\n this.ngZone.runOutsideAngular(() => Promise.resolve().then(() => {\n this._doChangeDetection();\n }));\n }\n }\n /** Run change detection. */\n _doChangeDetection() {\n this._isChangeDetectionPending = false;\n // Apply the content transform. The transform can't be set via an Angular binding because\n // bypassSecurityTrustStyle is banned in Google. However the value is safe, it's composed of\n // string literals, a variable that can only be 'X' or 'Y', and user input that is run through\n // the `Number` function first to coerce it to a numeric value.\n this._contentWrapper.nativeElement.style.transform = this._renderedContentTransform;\n // Apply changes to Angular bindings. Note: We must call `markForCheck` to run change detection\n // from the root, since the repeated items are content projected in. Calling `detectChanges`\n // instead does not properly check the projected content.\n this.ngZone.run(() => this._changeDetectorRef.markForCheck());\n const runAfterChangeDetection = this._runAfterChangeDetection;\n this._runAfterChangeDetection = [];\n for (const fn of runAfterChangeDetection) {\n fn();\n }\n }\n /** Calculates the `style.width` and `style.height` for the spacer element. */\n _calculateSpacerSize() {\n this._totalContentHeight =\n this.orientation === 'horizontal' ? '' : `${this._totalContentSize}px`;\n this._totalContentWidth =\n this.orientation === 'horizontal' ? `${this._totalContentSize}px` : '';\n }\n}\nCdkVirtualScrollViewport.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkVirtualScrollViewport, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: VIRTUAL_SCROLL_STRATEGY, optional: true }, { token: i2.Directionality, optional: true }, { token: ScrollDispatcher }, { token: ViewportRuler }], target: i0.ɵɵFactoryTarget.Component });\nCdkVirtualScrollViewport.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkVirtualScrollViewport, selector: \"cdk-virtual-scroll-viewport\", inputs: { orientation: \"orientation\", appendOnly: \"appendOnly\" }, outputs: { scrolledIndexChange: \"scrolledIndexChange\" }, host: { properties: { \"class.cdk-virtual-scroll-orientation-horizontal\": \"orientation === \\\"horizontal\\\"\", \"class.cdk-virtual-scroll-orientation-vertical\": \"orientation !== \\\"horizontal\\\"\" }, classAttribute: \"cdk-virtual-scroll-viewport\" }, providers: [\n {\n provide: CdkScrollable,\n useExisting: CdkVirtualScrollViewport,\n },\n ], viewQueries: [{ propertyName: \"_contentWrapper\", first: true, predicate: [\"contentWrapper\"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: \"\\n
\\n \\n
\\n\\n
\\n\", styles: [\"cdk-virtual-scroll-viewport{display:block;position:relative;overflow:auto;contain:strict;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch}.cdk-virtual-scroll-content-wrapper{position:absolute;top:0;left:0;contain:content}[dir=rtl] .cdk-virtual-scroll-content-wrapper{right:0;left:auto}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper{min-height:100%}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-left:0;padding-right:0;margin-left:0;margin-right:0;border-left-width:0;border-right-width:0;outline:none}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{min-width:100%}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border-top-width:0;border-bottom-width:0;outline:none}.cdk-virtual-scroll-spacer{position:absolute;top:0;left:0;height:1px;width:1px;transform-origin:0 0}[dir=rtl] .cdk-virtual-scroll-spacer{right:0;left:auto;transform-origin:100% 0}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkVirtualScrollViewport, decorators: [{\n type: Component,\n args: [{ selector: 'cdk-virtual-scroll-viewport', host: {\n 'class': 'cdk-virtual-scroll-viewport',\n '[class.cdk-virtual-scroll-orientation-horizontal]': 'orientation === \"horizontal\"',\n '[class.cdk-virtual-scroll-orientation-vertical]': 'orientation !== \"horizontal\"',\n }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n {\n provide: CdkScrollable,\n useExisting: CdkVirtualScrollViewport,\n },\n ], template: \"\\n
\\n \\n
\\n\\n
\\n\", styles: [\"cdk-virtual-scroll-viewport{display:block;position:relative;overflow:auto;contain:strict;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch}.cdk-virtual-scroll-content-wrapper{position:absolute;top:0;left:0;contain:content}[dir=rtl] .cdk-virtual-scroll-content-wrapper{right:0;left:auto}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper{min-height:100%}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-left:0;padding-right:0;margin-left:0;margin-right:0;border-left-width:0;border-right-width:0;outline:none}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{min-width:100%}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border-top-width:0;border-bottom-width:0;outline:none}.cdk-virtual-scroll-spacer{position:absolute;top:0;left:0;height:1px;width:1px;transform-origin:0 0}[dir=rtl] .cdk-virtual-scroll-spacer{right:0;left:auto;transform-origin:100% 0}\\n\"] }]\n }], ctorParameters: function () {\n return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [VIRTUAL_SCROLL_STRATEGY]\n }] }, { type: i2.Directionality, decorators: [{\n type: Optional\n }] }, { type: ScrollDispatcher }, { type: ViewportRuler }];\n }, propDecorators: { orientation: [{\n type: Input\n }], appendOnly: [{\n type: Input\n }], scrolledIndexChange: [{\n type: Output\n }], _contentWrapper: [{\n type: ViewChild,\n args: ['contentWrapper', { static: true }]\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Helper to extract the offset of a DOM Node in a certain direction. */\nfunction getOffset(orientation, direction, node) {\n const el = node;\n if (!el.getBoundingClientRect) {\n return 0;\n }\n const rect = el.getBoundingClientRect();\n if (orientation === 'horizontal') {\n return direction === 'start' ? rect.left : rect.right;\n }\n return direction === 'start' ? rect.top : rect.bottom;\n}\n/**\n * A directive similar to `ngForOf` to be used for rendering data inside a virtual scrolling\n * container.\n */\nclass CdkVirtualForOf {\n constructor(\n /** The view container to add items to. */\n _viewContainerRef, \n /** The template to use when stamping out new items. */\n _template, \n /** The set of available differs. */\n _differs, \n /** The strategy used to render items in the virtual scroll viewport. */\n _viewRepeater, \n /** The virtual scrolling viewport that these items are being rendered in. */\n _viewport, ngZone) {\n this._viewContainerRef = _viewContainerRef;\n this._template = _template;\n this._differs = _differs;\n this._viewRepeater = _viewRepeater;\n this._viewport = _viewport;\n /** Emits when the rendered view of the data changes. */\n this.viewChange = new Subject();\n /** Subject that emits when a new DataSource instance is given. */\n this._dataSourceChanges = new Subject();\n /** Emits whenever the data in the current DataSource changes. */\n this.dataStream = this._dataSourceChanges.pipe(\n // Start off with null `DataSource`.\n startWith(null), \n // Bundle up the previous and current data sources so we can work with both.\n pairwise(), \n // Use `_changeDataSource` to disconnect from the previous data source and connect to the\n // new one, passing back a stream of data changes which we run through `switchMap` to give\n // us a data stream that emits the latest data from whatever the current `DataSource` is.\n switchMap(([prev, cur]) => this._changeDataSource(prev, cur)), \n // Replay the last emitted data when someone subscribes.\n shareReplay(1));\n /** The differ used to calculate changes to the data. */\n this._differ = null;\n /** Whether the rendered data should be updated during the next ngDoCheck cycle. */\n this._needsUpdate = false;\n this._destroyed = new Subject();\n this.dataStream.subscribe(data => {\n this._data = data;\n this._onRenderedDataChange();\n });\n this._viewport.renderedRangeStream.pipe(takeUntil(this._destroyed)).subscribe(range => {\n this._renderedRange = range;\n if (this.viewChange.observers.length) {\n ngZone.run(() => this.viewChange.next(this._renderedRange));\n }\n this._onRenderedDataChange();\n });\n this._viewport.attach(this);\n }\n /** The DataSource to display. */\n get cdkVirtualForOf() {\n return this._cdkVirtualForOf;\n }\n set cdkVirtualForOf(value) {\n this._cdkVirtualForOf = value;\n if (isDataSource(value)) {\n this._dataSourceChanges.next(value);\n }\n else {\n // If value is an an NgIterable, convert it to an array.\n this._dataSourceChanges.next(new ArrayDataSource(isObservable(value) ? value : Array.from(value || [])));\n }\n }\n /**\n * The `TrackByFunction` to use for tracking changes. The `TrackByFunction` takes the index and\n * the item and produces a value to be used as the item's identity when tracking changes.\n */\n get cdkVirtualForTrackBy() {\n return this._cdkVirtualForTrackBy;\n }\n set cdkVirtualForTrackBy(fn) {\n this._needsUpdate = true;\n this._cdkVirtualForTrackBy = fn\n ? (index, item) => fn(index + (this._renderedRange ? this._renderedRange.start : 0), item)\n : undefined;\n }\n /** The template used to stamp out new elements. */\n set cdkVirtualForTemplate(value) {\n if (value) {\n this._needsUpdate = true;\n this._template = value;\n }\n }\n /**\n * The size of the cache used to store templates that are not being used for re-use later.\n * Setting the cache size to `0` will disable caching. Defaults to 20 templates.\n */\n get cdkVirtualForTemplateCacheSize() {\n return this._viewRepeater.viewCacheSize;\n }\n set cdkVirtualForTemplateCacheSize(size) {\n this._viewRepeater.viewCacheSize = coerceNumberProperty(size);\n }\n /**\n * Measures the combined size (width for horizontal orientation, height for vertical) of all items\n * in the specified range. Throws an error if the range includes items that are not currently\n * rendered.\n */\n measureRangeSize(range, orientation) {\n if (range.start >= range.end) {\n return 0;\n }\n if ((range.start < this._renderedRange.start || range.end > this._renderedRange.end) &&\n (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error(`Error: attempted to measure an item that isn't rendered.`);\n }\n // The index into the list of rendered views for the first item in the range.\n const renderedStartIndex = range.start - this._renderedRange.start;\n // The length of the range we're measuring.\n const rangeLen = range.end - range.start;\n // Loop over all the views, find the first and land node and compute the size by subtracting\n // the top of the first node from the bottom of the last one.\n let firstNode;\n let lastNode;\n // Find the first node by starting from the beginning and going forwards.\n for (let i = 0; i < rangeLen; i++) {\n const view = this._viewContainerRef.get(i + renderedStartIndex);\n if (view && view.rootNodes.length) {\n firstNode = lastNode = view.rootNodes[0];\n break;\n }\n }\n // Find the last node by starting from the end and going backwards.\n for (let i = rangeLen - 1; i > -1; i--) {\n const view = this._viewContainerRef.get(i + renderedStartIndex);\n if (view && view.rootNodes.length) {\n lastNode = view.rootNodes[view.rootNodes.length - 1];\n break;\n }\n }\n return firstNode && lastNode\n ? getOffset(orientation, 'end', lastNode) - getOffset(orientation, 'start', firstNode)\n : 0;\n }\n ngDoCheck() {\n if (this._differ && this._needsUpdate) {\n // TODO(mmalerba): We should differentiate needs update due to scrolling and a new portion of\n // this list being rendered (can use simpler algorithm) vs needs update due to data actually\n // changing (need to do this diff).\n const changes = this._differ.diff(this._renderedItems);\n if (!changes) {\n this._updateContext();\n }\n else {\n this._applyChanges(changes);\n }\n this._needsUpdate = false;\n }\n }\n ngOnDestroy() {\n this._viewport.detach();\n this._dataSourceChanges.next(undefined);\n this._dataSourceChanges.complete();\n this.viewChange.complete();\n this._destroyed.next();\n this._destroyed.complete();\n this._viewRepeater.detach();\n }\n /** React to scroll state changes in the viewport. */\n _onRenderedDataChange() {\n if (!this._renderedRange) {\n return;\n }\n this._renderedItems = this._data.slice(this._renderedRange.start, this._renderedRange.end);\n if (!this._differ) {\n // Use a wrapper function for the `trackBy` so any new values are\n // picked up automatically without having to recreate the differ.\n this._differ = this._differs.find(this._renderedItems).create((index, item) => {\n return this.cdkVirtualForTrackBy ? this.cdkVirtualForTrackBy(index, item) : item;\n });\n }\n this._needsUpdate = true;\n }\n /** Swap out one `DataSource` for another. */\n _changeDataSource(oldDs, newDs) {\n if (oldDs) {\n oldDs.disconnect(this);\n }\n this._needsUpdate = true;\n return newDs ? newDs.connect(this) : of();\n }\n /** Update the `CdkVirtualForOfContext` for all views. */\n _updateContext() {\n const count = this._data.length;\n let i = this._viewContainerRef.length;\n while (i--) {\n const view = this._viewContainerRef.get(i);\n view.context.index = this._renderedRange.start + i;\n view.context.count = count;\n this._updateComputedContextProperties(view.context);\n view.detectChanges();\n }\n }\n /** Apply changes to the DOM. */\n _applyChanges(changes) {\n this._viewRepeater.applyChanges(changes, this._viewContainerRef, (record, _adjustedPreviousIndex, currentIndex) => this._getEmbeddedViewArgs(record, currentIndex), record => record.item);\n // Update $implicit for any items that had an identity change.\n changes.forEachIdentityChange((record) => {\n const view = this._viewContainerRef.get(record.currentIndex);\n view.context.$implicit = record.item;\n });\n // Update the context variables on all items.\n const count = this._data.length;\n let i = this._viewContainerRef.length;\n while (i--) {\n const view = this._viewContainerRef.get(i);\n view.context.index = this._renderedRange.start + i;\n view.context.count = count;\n this._updateComputedContextProperties(view.context);\n }\n }\n /** Update the computed properties on the `CdkVirtualForOfContext`. */\n _updateComputedContextProperties(context) {\n context.first = context.index === 0;\n context.last = context.index === context.count - 1;\n context.even = context.index % 2 === 0;\n context.odd = !context.even;\n }\n _getEmbeddedViewArgs(record, index) {\n // Note that it's important that we insert the item directly at the proper index,\n // rather than inserting it and the moving it in place, because if there's a directive\n // on the same node that injects the `ViewContainerRef`, Angular will insert another\n // comment node which can throw off the move when it's being repeated for all items.\n return {\n templateRef: this._template,\n context: {\n $implicit: record.item,\n // It's guaranteed that the iterable is not \"undefined\" or \"null\" because we only\n // generate views for elements if the \"cdkVirtualForOf\" iterable has elements.\n cdkVirtualForOf: this._cdkVirtualForOf,\n index: -1,\n count: -1,\n first: false,\n last: false,\n odd: false,\n even: false,\n },\n index,\n };\n }\n}\nCdkVirtualForOf.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkVirtualForOf, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.IterableDiffers }, { token: _VIEW_REPEATER_STRATEGY }, { token: CdkVirtualScrollViewport, skipSelf: true }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\nCdkVirtualForOf.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkVirtualForOf, selector: \"[cdkVirtualFor][cdkVirtualForOf]\", inputs: { cdkVirtualForOf: \"cdkVirtualForOf\", cdkVirtualForTrackBy: \"cdkVirtualForTrackBy\", cdkVirtualForTemplate: \"cdkVirtualForTemplate\", cdkVirtualForTemplateCacheSize: \"cdkVirtualForTemplateCacheSize\" }, providers: [{ provide: _VIEW_REPEATER_STRATEGY, useClass: _RecycleViewRepeaterStrategy }], ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkVirtualForOf, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdkVirtualFor][cdkVirtualForOf]',\n providers: [{ provide: _VIEW_REPEATER_STRATEGY, useClass: _RecycleViewRepeaterStrategy }],\n }]\n }], ctorParameters: function () {\n return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i0.IterableDiffers }, { type: i2$1._RecycleViewRepeaterStrategy, decorators: [{\n type: Inject,\n args: [_VIEW_REPEATER_STRATEGY]\n }] }, { type: CdkVirtualScrollViewport, decorators: [{\n type: SkipSelf\n }] }, { type: i0.NgZone }];\n }, propDecorators: { cdkVirtualForOf: [{\n type: Input\n }], cdkVirtualForTrackBy: [{\n type: Input\n }], cdkVirtualForTemplate: [{\n type: Input\n }], cdkVirtualForTemplateCacheSize: [{\n type: Input\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass CdkScrollableModule {\n}\nCdkScrollableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkScrollableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nCdkScrollableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkScrollableModule, declarations: [CdkScrollable], exports: [CdkScrollable] });\nCdkScrollableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkScrollableModule });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkScrollableModule, decorators: [{\n type: NgModule,\n args: [{\n exports: [CdkScrollable],\n declarations: [CdkScrollable],\n }]\n }] });\n/**\n * @docs-primary-export\n */\nclass ScrollingModule {\n}\nScrollingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ScrollingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nScrollingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ScrollingModule, declarations: [CdkFixedSizeVirtualScroll, CdkVirtualForOf, CdkVirtualScrollViewport], imports: [BidiModule, CdkScrollableModule], exports: [BidiModule, CdkScrollableModule, CdkFixedSizeVirtualScroll,\n CdkVirtualForOf,\n CdkVirtualScrollViewport] });\nScrollingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ScrollingModule, imports: [[BidiModule, CdkScrollableModule], BidiModule, CdkScrollableModule] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: ScrollingModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [BidiModule, CdkScrollableModule],\n exports: [\n BidiModule,\n CdkScrollableModule,\n CdkFixedSizeVirtualScroll,\n CdkVirtualForOf,\n CdkVirtualScrollViewport,\n ],\n declarations: [CdkFixedSizeVirtualScroll, CdkVirtualForOf, CdkVirtualScrollViewport],\n }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { CdkFixedSizeVirtualScroll, CdkScrollable, CdkScrollableModule, CdkVirtualForOf, CdkVirtualScrollViewport, DEFAULT_RESIZE_TIME, DEFAULT_SCROLL_TIME, FixedSizeVirtualScrollStrategy, ScrollDispatcher, ScrollingModule, VIRTUAL_SCROLL_STRATEGY, ViewportRuler, _fixedSizeVirtualScrollStrategyFactory };\n","import * as i1 from '@angular/cdk/platform';\nimport { normalizePassiveListenerOptions } from '@angular/cdk/platform';\nimport * as i0 from '@angular/core';\nimport { Injectable, EventEmitter, Directive, Output, Optional, Inject, Input, NgModule } from '@angular/core';\nimport { coerceElement, coerceNumberProperty, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { EMPTY, Subject, fromEvent } from 'rxjs';\nimport { auditTime, takeUntil } from 'rxjs/operators';\nimport { DOCUMENT } from '@angular/common';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Options to pass to the animationstart listener. */\nconst listenerOptions = normalizePassiveListenerOptions({ passive: true });\n/**\n * An injectable service that can be used to monitor the autofill state of an input.\n * Based on the following blog post:\n * https://medium.com/@brunn/detecting-autofilled-fields-in-javascript-aed598d25da7\n */\nclass AutofillMonitor {\n constructor(_platform, _ngZone) {\n this._platform = _platform;\n this._ngZone = _ngZone;\n this._monitoredElements = new Map();\n }\n monitor(elementOrRef) {\n if (!this._platform.isBrowser) {\n return EMPTY;\n }\n const element = coerceElement(elementOrRef);\n const info = this._monitoredElements.get(element);\n if (info) {\n return info.subject;\n }\n const result = new Subject();\n const cssClass = 'cdk-text-field-autofilled';\n const listener = ((event) => {\n // Animation events fire on initial element render, we check for the presence of the autofill\n // CSS class to make sure this is a real change in state, not just the initial render before\n // we fire off events.\n if (event.animationName === 'cdk-text-field-autofill-start' &&\n !element.classList.contains(cssClass)) {\n element.classList.add(cssClass);\n this._ngZone.run(() => result.next({ target: event.target, isAutofilled: true }));\n }\n else if (event.animationName === 'cdk-text-field-autofill-end' &&\n element.classList.contains(cssClass)) {\n element.classList.remove(cssClass);\n this._ngZone.run(() => result.next({ target: event.target, isAutofilled: false }));\n }\n });\n this._ngZone.runOutsideAngular(() => {\n element.addEventListener('animationstart', listener, listenerOptions);\n element.classList.add('cdk-text-field-autofill-monitored');\n });\n this._monitoredElements.set(element, {\n subject: result,\n unlisten: () => {\n element.removeEventListener('animationstart', listener, listenerOptions);\n },\n });\n return result;\n }\n stopMonitoring(elementOrRef) {\n const element = coerceElement(elementOrRef);\n const info = this._monitoredElements.get(element);\n if (info) {\n info.unlisten();\n info.subject.complete();\n element.classList.remove('cdk-text-field-autofill-monitored');\n element.classList.remove('cdk-text-field-autofilled');\n this._monitoredElements.delete(element);\n }\n }\n ngOnDestroy() {\n this._monitoredElements.forEach((_info, element) => this.stopMonitoring(element));\n }\n}\nAutofillMonitor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: AutofillMonitor, deps: [{ token: i1.Platform }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });\nAutofillMonitor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: AutofillMonitor, providedIn: 'root' });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: AutofillMonitor, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: function () { return [{ type: i1.Platform }, { type: i0.NgZone }]; } });\n/** A directive that can be used to monitor the autofill state of an input. */\nclass CdkAutofill {\n constructor(_elementRef, _autofillMonitor) {\n this._elementRef = _elementRef;\n this._autofillMonitor = _autofillMonitor;\n /** Emits when the autofill state of the element changes. */\n this.cdkAutofill = new EventEmitter();\n }\n ngOnInit() {\n this._autofillMonitor\n .monitor(this._elementRef)\n .subscribe(event => this.cdkAutofill.emit(event));\n }\n ngOnDestroy() {\n this._autofillMonitor.stopMonitoring(this._elementRef);\n }\n}\nCdkAutofill.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkAutofill, deps: [{ token: i0.ElementRef }, { token: AutofillMonitor }], target: i0.ɵɵFactoryTarget.Directive });\nCdkAutofill.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkAutofill, selector: \"[cdkAutofill]\", outputs: { cdkAutofill: \"cdkAutofill\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkAutofill, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdkAutofill]',\n }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: AutofillMonitor }]; }, propDecorators: { cdkAutofill: [{\n type: Output\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** Directive to automatically resize a textarea to fit its content. */\nclass CdkTextareaAutosize {\n constructor(_elementRef, _platform, _ngZone, \n /** @breaking-change 11.0.0 make document required */\n document) {\n this._elementRef = _elementRef;\n this._platform = _platform;\n this._ngZone = _ngZone;\n this._destroyed = new Subject();\n this._enabled = true;\n /**\n * Value of minRows as of last resize. If the minRows has decreased, the\n * height of the textarea needs to be recomputed to reflect the new minimum. The maxHeight\n * does not have the same problem because it does not affect the textarea's scrollHeight.\n */\n this._previousMinRows = -1;\n this._isViewInited = false;\n /** Handles `focus` and `blur` events. */\n this._handleFocusEvent = (event) => {\n this._hasFocus = event.type === 'focus';\n };\n this._document = document;\n this._textareaElement = this._elementRef.nativeElement;\n }\n /** Minimum amount of rows in the textarea. */\n get minRows() {\n return this._minRows;\n }\n set minRows(value) {\n this._minRows = coerceNumberProperty(value);\n this._setMinHeight();\n }\n /** Maximum amount of rows in the textarea. */\n get maxRows() {\n return this._maxRows;\n }\n set maxRows(value) {\n this._maxRows = coerceNumberProperty(value);\n this._setMaxHeight();\n }\n /** Whether autosizing is enabled or not */\n get enabled() {\n return this._enabled;\n }\n set enabled(value) {\n value = coerceBooleanProperty(value);\n // Only act if the actual value changed. This specifically helps to not run\n // resizeToFitContent too early (i.e. before ngAfterViewInit)\n if (this._enabled !== value) {\n (this._enabled = value) ? this.resizeToFitContent(true) : this.reset();\n }\n }\n get placeholder() {\n return this._textareaElement.placeholder;\n }\n set placeholder(value) {\n this._cachedPlaceholderHeight = undefined;\n if (value) {\n this._textareaElement.setAttribute('placeholder', value);\n }\n else {\n this._textareaElement.removeAttribute('placeholder');\n }\n this._cacheTextareaPlaceholderHeight();\n }\n /** Sets the minimum height of the textarea as determined by minRows. */\n _setMinHeight() {\n const minHeight = this.minRows && this._cachedLineHeight ? `${this.minRows * this._cachedLineHeight}px` : null;\n if (minHeight) {\n this._textareaElement.style.minHeight = minHeight;\n }\n }\n /** Sets the maximum height of the textarea as determined by maxRows. */\n _setMaxHeight() {\n const maxHeight = this.maxRows && this._cachedLineHeight ? `${this.maxRows * this._cachedLineHeight}px` : null;\n if (maxHeight) {\n this._textareaElement.style.maxHeight = maxHeight;\n }\n }\n ngAfterViewInit() {\n if (this._platform.isBrowser) {\n // Remember the height which we started with in case autosizing is disabled\n this._initialHeight = this._textareaElement.style.height;\n this.resizeToFitContent();\n this._ngZone.runOutsideAngular(() => {\n const window = this._getWindow();\n fromEvent(window, 'resize')\n .pipe(auditTime(16), takeUntil(this._destroyed))\n .subscribe(() => this.resizeToFitContent(true));\n this._textareaElement.addEventListener('focus', this._handleFocusEvent);\n this._textareaElement.addEventListener('blur', this._handleFocusEvent);\n });\n this._isViewInited = true;\n this.resizeToFitContent(true);\n }\n }\n ngOnDestroy() {\n this._textareaElement.removeEventListener('focus', this._handleFocusEvent);\n this._textareaElement.removeEventListener('blur', this._handleFocusEvent);\n this._destroyed.next();\n this._destroyed.complete();\n }\n /**\n * Cache the height of a single-row textarea if it has not already been cached.\n *\n * We need to know how large a single \"row\" of a textarea is in order to apply minRows and\n * maxRows. For the initial version, we will assume that the height of a single line in the\n * textarea does not ever change.\n */\n _cacheTextareaLineHeight() {\n if (this._cachedLineHeight) {\n return;\n }\n // Use a clone element because we have to override some styles.\n let textareaClone = this._textareaElement.cloneNode(false);\n textareaClone.rows = 1;\n // Use `position: absolute` so that this doesn't cause a browser layout and use\n // `visibility: hidden` so that nothing is rendered. Clear any other styles that\n // would affect the height.\n textareaClone.style.position = 'absolute';\n textareaClone.style.visibility = 'hidden';\n textareaClone.style.border = 'none';\n textareaClone.style.padding = '0';\n textareaClone.style.height = '';\n textareaClone.style.minHeight = '';\n textareaClone.style.maxHeight = '';\n // In Firefox it happens that textarea elements are always bigger than the specified amount\n // of rows. This is because Firefox tries to add extra space for the horizontal scrollbar.\n // As a workaround that removes the extra space for the scrollbar, we can just set overflow\n // to hidden. This ensures that there is no invalid calculation of the line height.\n // See Firefox bug report: https://bugzilla.mozilla.org/show_bug.cgi?id=33654\n textareaClone.style.overflow = 'hidden';\n this._textareaElement.parentNode.appendChild(textareaClone);\n this._cachedLineHeight = textareaClone.clientHeight;\n textareaClone.remove();\n // Min and max heights have to be re-calculated if the cached line height changes\n this._setMinHeight();\n this._setMaxHeight();\n }\n _measureScrollHeight() {\n const element = this._textareaElement;\n const previousMargin = element.style.marginBottom || '';\n const isFirefox = this._platform.FIREFOX;\n const needsMarginFiller = isFirefox && this._hasFocus;\n const measuringClass = isFirefox\n ? 'cdk-textarea-autosize-measuring-firefox'\n : 'cdk-textarea-autosize-measuring';\n // In some cases the page might move around while we're measuring the `textarea` on Firefox. We\n // work around it by assigning a temporary margin with the same height as the `textarea` so that\n // it occupies the same amount of space. See #23233.\n if (needsMarginFiller) {\n element.style.marginBottom = `${element.clientHeight}px`;\n }\n // Reset the textarea height to auto in order to shrink back to its default size.\n // Also temporarily force overflow:hidden, so scroll bars do not interfere with calculations.\n element.classList.add(measuringClass);\n // The measuring class includes a 2px padding to workaround an issue with Chrome,\n // so we account for that extra space here by subtracting 4 (2px top + 2px bottom).\n const scrollHeight = element.scrollHeight - 4;\n element.classList.remove(measuringClass);\n if (needsMarginFiller) {\n element.style.marginBottom = previousMargin;\n }\n return scrollHeight;\n }\n _cacheTextareaPlaceholderHeight() {\n if (!this._isViewInited || this._cachedPlaceholderHeight != undefined) {\n return;\n }\n if (!this.placeholder) {\n this._cachedPlaceholderHeight = 0;\n return;\n }\n const value = this._textareaElement.value;\n this._textareaElement.value = this._textareaElement.placeholder;\n this._cachedPlaceholderHeight = this._measureScrollHeight();\n this._textareaElement.value = value;\n }\n ngDoCheck() {\n if (this._platform.isBrowser) {\n this.resizeToFitContent();\n }\n }\n /**\n * Resize the textarea to fit its content.\n * @param force Whether to force a height recalculation. By default the height will be\n * recalculated only if the value changed since the last call.\n */\n resizeToFitContent(force = false) {\n // If autosizing is disabled, just skip everything else\n if (!this._enabled) {\n return;\n }\n this._cacheTextareaLineHeight();\n this._cacheTextareaPlaceholderHeight();\n // If we haven't determined the line-height yet, we know we're still hidden and there's no point\n // in checking the height of the textarea.\n if (!this._cachedLineHeight) {\n return;\n }\n const textarea = this._elementRef.nativeElement;\n const value = textarea.value;\n // Only resize if the value or minRows have changed since these calculations can be expensive.\n if (!force && this._minRows === this._previousMinRows && value === this._previousValue) {\n return;\n }\n const scrollHeight = this._measureScrollHeight();\n const height = Math.max(scrollHeight, this._cachedPlaceholderHeight || 0);\n // Use the scrollHeight to know how large the textarea *would* be if fit its entire value.\n textarea.style.height = `${height}px`;\n this._ngZone.runOutsideAngular(() => {\n if (typeof requestAnimationFrame !== 'undefined') {\n requestAnimationFrame(() => this._scrollToCaretPosition(textarea));\n }\n else {\n setTimeout(() => this._scrollToCaretPosition(textarea));\n }\n });\n this._previousValue = value;\n this._previousMinRows = this._minRows;\n }\n /**\n * Resets the textarea to its original size\n */\n reset() {\n // Do not try to change the textarea, if the initialHeight has not been determined yet\n // This might potentially remove styles when reset() is called before ngAfterViewInit\n if (this._initialHeight !== undefined) {\n this._textareaElement.style.height = this._initialHeight;\n }\n }\n _noopInputHandler() {\n // no-op handler that ensures we're running change detection on input events.\n }\n /** Access injected document if available or fallback to global document reference */\n _getDocument() {\n return this._document || document;\n }\n /** Use defaultView of injected document if available or fallback to global window reference */\n _getWindow() {\n const doc = this._getDocument();\n return doc.defaultView || window;\n }\n /**\n * Scrolls a textarea to the caret position. On Firefox resizing the textarea will\n * prevent it from scrolling to the caret position. We need to re-set the selection\n * in order for it to scroll to the proper position.\n */\n _scrollToCaretPosition(textarea) {\n const { selectionStart, selectionEnd } = textarea;\n // IE will throw an \"Unspecified error\" if we try to set the selection range after the\n // element has been removed from the DOM. Assert that the directive hasn't been destroyed\n // between the time we requested the animation frame and when it was executed.\n // Also note that we have to assert that the textarea is focused before we set the\n // selection range. Setting the selection range on a non-focused textarea will cause\n // it to receive focus on IE and Edge.\n if (!this._destroyed.isStopped && this._hasFocus) {\n textarea.setSelectionRange(selectionStart, selectionEnd);\n }\n }\n}\nCdkTextareaAutosize.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkTextareaAutosize, deps: [{ token: i0.ElementRef }, { token: i1.Platform }, { token: i0.NgZone }, { token: DOCUMENT, optional: true }], target: i0.ɵɵFactoryTarget.Directive });\nCdkTextareaAutosize.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: CdkTextareaAutosize, selector: \"textarea[cdkTextareaAutosize]\", inputs: { minRows: [\"cdkAutosizeMinRows\", \"minRows\"], maxRows: [\"cdkAutosizeMaxRows\", \"maxRows\"], enabled: [\"cdkTextareaAutosize\", \"enabled\"], placeholder: \"placeholder\" }, host: { attributes: { \"rows\": \"1\" }, listeners: { \"input\": \"_noopInputHandler()\" }, classAttribute: \"cdk-textarea-autosize\" }, exportAs: [\"cdkTextareaAutosize\"], ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CdkTextareaAutosize, decorators: [{\n type: Directive,\n args: [{\n selector: 'textarea[cdkTextareaAutosize]',\n exportAs: 'cdkTextareaAutosize',\n host: {\n 'class': 'cdk-textarea-autosize',\n // Textarea elements that have the directive applied should have a single row by default.\n // Browsers normally show two rows by default and therefore this limits the minRows binding.\n 'rows': '1',\n '(input)': '_noopInputHandler()',\n },\n }]\n }], ctorParameters: function () {\n return [{ type: i0.ElementRef }, { type: i1.Platform }, { type: i0.NgZone }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [DOCUMENT]\n }] }];\n }, propDecorators: { minRows: [{\n type: Input,\n args: ['cdkAutosizeMinRows']\n }], maxRows: [{\n type: Input,\n args: ['cdkAutosizeMaxRows']\n }], enabled: [{\n type: Input,\n args: ['cdkTextareaAutosize']\n }], placeholder: [{\n type: Input\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass TextFieldModule {\n}\nTextFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: TextFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nTextFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: TextFieldModule, declarations: [CdkAutofill, CdkTextareaAutosize], exports: [CdkAutofill, CdkTextareaAutosize] });\nTextFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: TextFieldModule });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: TextFieldModule, decorators: [{\n type: NgModule,\n args: [{\n declarations: [CdkAutofill, CdkTextareaAutosize],\n exports: [CdkAutofill, CdkTextareaAutosize],\n }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { AutofillMonitor, CdkAutofill, CdkTextareaAutosize, TextFieldModule };\n","/**\n * @license Angular v13.3.0\n * (c) 2010-2022 Google LLC. https://angular.io/\n * License: MIT\n */\n\nimport * as i0 from '@angular/core';\nimport { InjectionToken, Injectable, ɵɵinject, Inject, Optional, EventEmitter, ɵfindLocaleData, ɵLocaleDataIndex, ɵgetLocaleCurrencyCode, ɵgetLocalePluralCase, LOCALE_ID, ɵregisterLocaleData, ɵisListLikeIterable, ɵstringify, Directive, Input, NgModuleRef, ComponentFactoryResolver, Host, ɵRuntimeError, Attribute, ɵisPromise, ɵisSubscribable, Pipe, DEFAULT_CURRENCY_CODE, NgModule, Version, ɵɵdefineInjectable } from '@angular/core';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nlet _DOM = null;\nfunction getDOM() {\n return _DOM;\n}\nfunction setDOM(adapter) {\n _DOM = adapter;\n}\nfunction setRootDomAdapter(adapter) {\n if (!_DOM) {\n _DOM = adapter;\n }\n}\n/* tslint:disable:requireParameterType */\n/**\n * Provides DOM operations in an environment-agnostic way.\n *\n * @security Tread carefully! Interacting with the DOM directly is dangerous and\n * can introduce XSS risks.\n */\nclass DomAdapter {\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * A DI Token representing the main rendering context. In a browser this is the DOM Document.\n *\n * Note: Document might not be available in the Application Context when Application and Rendering\n * Contexts are not the same (e.g. when running the application in a Web Worker).\n *\n * @publicApi\n */\nconst DOCUMENT = new InjectionToken('DocumentToken');\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * This class should not be used directly by an application developer. Instead, use\n * {@link Location}.\n *\n * `PlatformLocation` encapsulates all calls to DOM APIs, which allows the Router to be\n * platform-agnostic.\n * This means that we can have different implementation of `PlatformLocation` for the different\n * platforms that Angular supports. For example, `@angular/platform-browser` provides an\n * implementation specific to the browser environment, while `@angular/platform-server` provides\n * one suitable for use with server-side rendering.\n *\n * The `PlatformLocation` class is used directly by all implementations of {@link LocationStrategy}\n * when they need to interact with the DOM APIs like pushState, popState, etc.\n *\n * {@link LocationStrategy} in turn is used by the {@link Location} service which is used directly\n * by the {@link Router} in order to navigate between routes. Since all interactions between {@link\n * Router} /\n * {@link Location} / {@link LocationStrategy} and DOM APIs flow through the `PlatformLocation`\n * class, they are all platform-agnostic.\n *\n * @publicApi\n */\nclass PlatformLocation {\n historyGo(relativePosition) {\n throw new Error('Not implemented');\n }\n}\nPlatformLocation.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PlatformLocation, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nPlatformLocation.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PlatformLocation, providedIn: 'platform', useFactory: useBrowserPlatformLocation });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PlatformLocation, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'platform',\n // See #23917\n useFactory: useBrowserPlatformLocation\n }]\n }] });\nfunction useBrowserPlatformLocation() {\n return ɵɵinject(BrowserPlatformLocation);\n}\n/**\n * @description\n * Indicates when a location is initialized.\n *\n * @publicApi\n */\nconst LOCATION_INITIALIZED = new InjectionToken('Location Initialized');\n/**\n * `PlatformLocation` encapsulates all of the direct calls to platform APIs.\n * This class should not be used directly by an application developer. Instead, use\n * {@link Location}.\n */\nclass BrowserPlatformLocation extends PlatformLocation {\n constructor(_doc) {\n super();\n this._doc = _doc;\n this._init();\n }\n // This is moved to its own method so that `MockPlatformLocationStrategy` can overwrite it\n /** @internal */\n _init() {\n this.location = window.location;\n this._history = window.history;\n }\n getBaseHrefFromDOM() {\n return getDOM().getBaseHref(this._doc);\n }\n onPopState(fn) {\n const window = getDOM().getGlobalEventTarget(this._doc, 'window');\n window.addEventListener('popstate', fn, false);\n return () => window.removeEventListener('popstate', fn);\n }\n onHashChange(fn) {\n const window = getDOM().getGlobalEventTarget(this._doc, 'window');\n window.addEventListener('hashchange', fn, false);\n return () => window.removeEventListener('hashchange', fn);\n }\n get href() {\n return this.location.href;\n }\n get protocol() {\n return this.location.protocol;\n }\n get hostname() {\n return this.location.hostname;\n }\n get port() {\n return this.location.port;\n }\n get pathname() {\n return this.location.pathname;\n }\n get search() {\n return this.location.search;\n }\n get hash() {\n return this.location.hash;\n }\n set pathname(newPath) {\n this.location.pathname = newPath;\n }\n pushState(state, title, url) {\n if (supportsState()) {\n this._history.pushState(state, title, url);\n }\n else {\n this.location.hash = url;\n }\n }\n replaceState(state, title, url) {\n if (supportsState()) {\n this._history.replaceState(state, title, url);\n }\n else {\n this.location.hash = url;\n }\n }\n forward() {\n this._history.forward();\n }\n back() {\n this._history.back();\n }\n historyGo(relativePosition = 0) {\n this._history.go(relativePosition);\n }\n getState() {\n return this._history.state;\n }\n}\nBrowserPlatformLocation.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BrowserPlatformLocation, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });\nBrowserPlatformLocation.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BrowserPlatformLocation, providedIn: 'platform', useFactory: createBrowserPlatformLocation });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: BrowserPlatformLocation, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'platform',\n // See #23917\n useFactory: createBrowserPlatformLocation,\n }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }];\n } });\nfunction supportsState() {\n return !!window.history.pushState;\n}\nfunction createBrowserPlatformLocation() {\n return new BrowserPlatformLocation(ɵɵinject(DOCUMENT));\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Joins two parts of a URL with a slash if needed.\n *\n * @param start URL string\n * @param end URL string\n *\n *\n * @returns The joined URL string.\n */\nfunction joinWithSlash(start, end) {\n if (start.length == 0) {\n return end;\n }\n if (end.length == 0) {\n return start;\n }\n let slashes = 0;\n if (start.endsWith('/')) {\n slashes++;\n }\n if (end.startsWith('/')) {\n slashes++;\n }\n if (slashes == 2) {\n return start + end.substring(1);\n }\n if (slashes == 1) {\n return start + end;\n }\n return start + '/' + end;\n}\n/**\n * Removes a trailing slash from a URL string if needed.\n * Looks for the first occurrence of either `#`, `?`, or the end of the\n * line as `/` characters and removes the trailing slash if one exists.\n *\n * @param url URL string.\n *\n * @returns The URL string, modified if needed.\n */\nfunction stripTrailingSlash(url) {\n const match = url.match(/#|\\?|$/);\n const pathEndIdx = match && match.index || url.length;\n const droppedSlashIdx = pathEndIdx - (url[pathEndIdx - 1] === '/' ? 1 : 0);\n return url.slice(0, droppedSlashIdx) + url.slice(pathEndIdx);\n}\n/**\n * Normalizes URL parameters by prepending with `?` if needed.\n *\n * @param params String of URL parameters.\n *\n * @returns The normalized URL parameters string.\n */\nfunction normalizeQueryParams(params) {\n return params && params[0] !== '?' ? '?' + params : params;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Enables the `Location` service to read route state from the browser's URL.\n * Angular provides two strategies:\n * `HashLocationStrategy` and `PathLocationStrategy`.\n *\n * Applications should use the `Router` or `Location` services to\n * interact with application route state.\n *\n * For instance, `HashLocationStrategy` produces URLs like\n * http://example.com#/foo,\n * and `PathLocationStrategy` produces\n * http://example.com/foo as an equivalent URL.\n *\n * See these two classes for more.\n *\n * @publicApi\n */\nclass LocationStrategy {\n historyGo(relativePosition) {\n throw new Error('Not implemented');\n }\n}\nLocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LocationStrategy, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nLocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LocationStrategy, providedIn: 'root', useFactory: provideLocationStrategy });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LocationStrategy, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root', useFactory: provideLocationStrategy }]\n }] });\nfunction provideLocationStrategy(platformLocation) {\n // See #23917\n const location = ɵɵinject(DOCUMENT).location;\n return new PathLocationStrategy(ɵɵinject(PlatformLocation), location && location.origin || '');\n}\n/**\n * A predefined [DI token](guide/glossary#di-token) for the base href\n * to be used with the `PathLocationStrategy`.\n * The base href is the URL prefix that should be preserved when generating\n * and recognizing URLs.\n *\n * @usageNotes\n *\n * The following example shows how to use this token to configure the root app injector\n * with a base href value, so that the DI framework can supply the dependency anywhere in the app.\n *\n * ```typescript\n * import {Component, NgModule} from '@angular/core';\n * import {APP_BASE_HREF} from '@angular/common';\n *\n * @NgModule({\n * providers: [{provide: APP_BASE_HREF, useValue: '/my/app'}]\n * })\n * class AppModule {}\n * ```\n *\n * @publicApi\n */\nconst APP_BASE_HREF = new InjectionToken('appBaseHref');\n/**\n * @description\n * A {@link LocationStrategy} used to configure the {@link Location} service to\n * represent its state in the\n * [path](https://en.wikipedia.org/wiki/Uniform_Resource_Locator#Syntax) of the\n * browser's URL.\n *\n * If you're using `PathLocationStrategy`, you must provide a {@link APP_BASE_HREF}\n * or add a `` element to the document.\n *\n * For instance, if you provide an `APP_BASE_HREF` of `'/my/app/'` and call\n * `location.go('/foo')`, the browser's URL will become\n * `example.com/my/app/foo`. To ensure all relative URIs resolve correctly,\n * the `` and/or `APP_BASE_HREF` should end with a `/`.\n *\n * Similarly, if you add `` to the document and call\n * `location.go('/foo')`, the browser's URL will become\n * `example.com/my/app/foo`.\n *\n * Note that when using `PathLocationStrategy`, neither the query nor\n * the fragment in the `` will be preserved, as outlined\n * by the [RFC](https://tools.ietf.org/html/rfc3986#section-5.2.2).\n *\n * @usageNotes\n *\n * ### Example\n *\n * {@example common/location/ts/path_location_component.ts region='LocationComponent'}\n *\n * @publicApi\n */\nclass PathLocationStrategy extends LocationStrategy {\n constructor(_platformLocation, href) {\n super();\n this._platformLocation = _platformLocation;\n this._removeListenerFns = [];\n if (href == null) {\n href = this._platformLocation.getBaseHrefFromDOM();\n }\n if (href == null) {\n throw new Error(`No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.`);\n }\n this._baseHref = href;\n }\n /** @nodoc */\n ngOnDestroy() {\n while (this._removeListenerFns.length) {\n this._removeListenerFns.pop()();\n }\n }\n onPopState(fn) {\n this._removeListenerFns.push(this._platformLocation.onPopState(fn), this._platformLocation.onHashChange(fn));\n }\n getBaseHref() {\n return this._baseHref;\n }\n prepareExternalUrl(internal) {\n return joinWithSlash(this._baseHref, internal);\n }\n path(includeHash = false) {\n const pathname = this._platformLocation.pathname + normalizeQueryParams(this._platformLocation.search);\n const hash = this._platformLocation.hash;\n return hash && includeHash ? `${pathname}${hash}` : pathname;\n }\n pushState(state, title, url, queryParams) {\n const externalUrl = this.prepareExternalUrl(url + normalizeQueryParams(queryParams));\n this._platformLocation.pushState(state, title, externalUrl);\n }\n replaceState(state, title, url, queryParams) {\n const externalUrl = this.prepareExternalUrl(url + normalizeQueryParams(queryParams));\n this._platformLocation.replaceState(state, title, externalUrl);\n }\n forward() {\n this._platformLocation.forward();\n }\n back() {\n this._platformLocation.back();\n }\n historyGo(relativePosition = 0) {\n var _a, _b;\n (_b = (_a = this._platformLocation).historyGo) === null || _b === void 0 ? void 0 : _b.call(_a, relativePosition);\n }\n}\nPathLocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PathLocationStrategy, deps: [{ token: PlatformLocation }, { token: APP_BASE_HREF, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nPathLocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PathLocationStrategy });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PathLocationStrategy, decorators: [{\n type: Injectable\n }], ctorParameters: function () {\n return [{ type: PlatformLocation }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [APP_BASE_HREF]\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @description\n * A {@link LocationStrategy} used to configure the {@link Location} service to\n * represent its state in the\n * [hash fragment](https://en.wikipedia.org/wiki/Uniform_Resource_Locator#Syntax)\n * of the browser's URL.\n *\n * For instance, if you call `location.go('/foo')`, the browser's URL will become\n * `example.com#/foo`.\n *\n * @usageNotes\n *\n * ### Example\n *\n * {@example common/location/ts/hash_location_component.ts region='LocationComponent'}\n *\n * @publicApi\n */\nclass HashLocationStrategy extends LocationStrategy {\n constructor(_platformLocation, _baseHref) {\n super();\n this._platformLocation = _platformLocation;\n this._baseHref = '';\n this._removeListenerFns = [];\n if (_baseHref != null) {\n this._baseHref = _baseHref;\n }\n }\n /** @nodoc */\n ngOnDestroy() {\n while (this._removeListenerFns.length) {\n this._removeListenerFns.pop()();\n }\n }\n onPopState(fn) {\n this._removeListenerFns.push(this._platformLocation.onPopState(fn), this._platformLocation.onHashChange(fn));\n }\n getBaseHref() {\n return this._baseHref;\n }\n path(includeHash = false) {\n // the hash value is always prefixed with a `#`\n // and if it is empty then it will stay empty\n let path = this._platformLocation.hash;\n if (path == null)\n path = '#';\n return path.length > 0 ? path.substring(1) : path;\n }\n prepareExternalUrl(internal) {\n const url = joinWithSlash(this._baseHref, internal);\n return url.length > 0 ? ('#' + url) : url;\n }\n pushState(state, title, path, queryParams) {\n let url = this.prepareExternalUrl(path + normalizeQueryParams(queryParams));\n if (url.length == 0) {\n url = this._platformLocation.pathname;\n }\n this._platformLocation.pushState(state, title, url);\n }\n replaceState(state, title, path, queryParams) {\n let url = this.prepareExternalUrl(path + normalizeQueryParams(queryParams));\n if (url.length == 0) {\n url = this._platformLocation.pathname;\n }\n this._platformLocation.replaceState(state, title, url);\n }\n forward() {\n this._platformLocation.forward();\n }\n back() {\n this._platformLocation.back();\n }\n historyGo(relativePosition = 0) {\n var _a, _b;\n (_b = (_a = this._platformLocation).historyGo) === null || _b === void 0 ? void 0 : _b.call(_a, relativePosition);\n }\n}\nHashLocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: HashLocationStrategy, deps: [{ token: PlatformLocation }, { token: APP_BASE_HREF, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });\nHashLocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: HashLocationStrategy });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: HashLocationStrategy, decorators: [{\n type: Injectable\n }], ctorParameters: function () {\n return [{ type: PlatformLocation }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [APP_BASE_HREF]\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @description\n *\n * A service that applications can use to interact with a browser's URL.\n *\n * Depending on the `LocationStrategy` used, `Location` persists\n * to the URL's path or the URL's hash segment.\n *\n * @usageNotes\n *\n * It's better to use the `Router.navigate()` service to trigger route changes. Use\n * `Location` only if you need to interact with or create normalized URLs outside of\n * routing.\n *\n * `Location` is responsible for normalizing the URL against the application's base href.\n * A normalized URL is absolute from the URL host, includes the application's base href, and has no\n * trailing slash:\n * - `/my/app/user/123` is normalized\n * - `my/app/user/123` **is not** normalized\n * - `/my/app/user/123/` **is not** normalized\n *\n * ### Example\n *\n * \n *\n * @publicApi\n */\nclass Location {\n constructor(platformStrategy, platformLocation) {\n /** @internal */\n this._subject = new EventEmitter();\n /** @internal */\n this._urlChangeListeners = [];\n this._platformStrategy = platformStrategy;\n const browserBaseHref = this._platformStrategy.getBaseHref();\n this._platformLocation = platformLocation;\n this._baseHref = stripTrailingSlash(_stripIndexHtml(browserBaseHref));\n this._platformStrategy.onPopState((ev) => {\n this._subject.emit({\n 'url': this.path(true),\n 'pop': true,\n 'state': ev.state,\n 'type': ev.type,\n });\n });\n }\n /**\n * Normalizes the URL path for this location.\n *\n * @param includeHash True to include an anchor fragment in the path.\n *\n * @returns The normalized URL path.\n */\n // TODO: vsavkin. Remove the boolean flag and always include hash once the deprecated router is\n // removed.\n path(includeHash = false) {\n return this.normalize(this._platformStrategy.path(includeHash));\n }\n /**\n * Reports the current state of the location history.\n * @returns The current value of the `history.state` object.\n */\n getState() {\n return this._platformLocation.getState();\n }\n /**\n * Normalizes the given path and compares to the current normalized path.\n *\n * @param path The given URL path.\n * @param query Query parameters.\n *\n * @returns True if the given URL path is equal to the current normalized path, false\n * otherwise.\n */\n isCurrentPathEqualTo(path, query = '') {\n return this.path() == this.normalize(path + normalizeQueryParams(query));\n }\n /**\n * Normalizes a URL path by stripping any trailing slashes.\n *\n * @param url String representing a URL.\n *\n * @returns The normalized URL string.\n */\n normalize(url) {\n return Location.stripTrailingSlash(_stripBaseHref(this._baseHref, _stripIndexHtml(url)));\n }\n /**\n * Normalizes an external URL path.\n * If the given URL doesn't begin with a leading slash (`'/'`), adds one\n * before normalizing. Adds a hash if `HashLocationStrategy` is\n * in use, or the `APP_BASE_HREF` if the `PathLocationStrategy` is in use.\n *\n * @param url String representing a URL.\n *\n * @returns A normalized platform-specific URL.\n */\n prepareExternalUrl(url) {\n if (url && url[0] !== '/') {\n url = '/' + url;\n }\n return this._platformStrategy.prepareExternalUrl(url);\n }\n // TODO: rename this method to pushState\n /**\n * Changes the browser's URL to a normalized version of a given URL, and pushes a\n * new item onto the platform's history.\n *\n * @param path URL path to normalize.\n * @param query Query parameters.\n * @param state Location history state.\n *\n */\n go(path, query = '', state = null) {\n this._platformStrategy.pushState(state, '', path, query);\n this._notifyUrlChangeListeners(this.prepareExternalUrl(path + normalizeQueryParams(query)), state);\n }\n /**\n * Changes the browser's URL to a normalized version of the given URL, and replaces\n * the top item on the platform's history stack.\n *\n * @param path URL path to normalize.\n * @param query Query parameters.\n * @param state Location history state.\n */\n replaceState(path, query = '', state = null) {\n this._platformStrategy.replaceState(state, '', path, query);\n this._notifyUrlChangeListeners(this.prepareExternalUrl(path + normalizeQueryParams(query)), state);\n }\n /**\n * Navigates forward in the platform's history.\n */\n forward() {\n this._platformStrategy.forward();\n }\n /**\n * Navigates back in the platform's history.\n */\n back() {\n this._platformStrategy.back();\n }\n /**\n * Navigate to a specific page from session history, identified by its relative position to the\n * current page.\n *\n * @param relativePosition Position of the target page in the history relative to the current\n * page.\n * A negative value moves backwards, a positive value moves forwards, e.g. `location.historyGo(2)`\n * moves forward two pages and `location.historyGo(-2)` moves back two pages. When we try to go\n * beyond what's stored in the history session, we stay in the current page. Same behaviour occurs\n * when `relativePosition` equals 0.\n * @see https://developer.mozilla.org/en-US/docs/Web/API/History_API#Moving_to_a_specific_point_in_history\n */\n historyGo(relativePosition = 0) {\n var _a, _b;\n (_b = (_a = this._platformStrategy).historyGo) === null || _b === void 0 ? void 0 : _b.call(_a, relativePosition);\n }\n /**\n * Registers a URL change listener. Use to catch updates performed by the Angular\n * framework that are not detectible through \"popstate\" or \"hashchange\" events.\n *\n * @param fn The change handler function, which take a URL and a location history state.\n */\n onUrlChange(fn) {\n this._urlChangeListeners.push(fn);\n if (!this._urlChangeSubscription) {\n this._urlChangeSubscription = this.subscribe(v => {\n this._notifyUrlChangeListeners(v.url, v.state);\n });\n }\n }\n /** @internal */\n _notifyUrlChangeListeners(url = '', state) {\n this._urlChangeListeners.forEach(fn => fn(url, state));\n }\n /**\n * Subscribes to the platform's `popState` events.\n *\n * Note: `Location.go()` does not trigger the `popState` event in the browser. Use\n * `Location.onUrlChange()` to subscribe to URL changes instead.\n *\n * @param value Event that is triggered when the state history changes.\n * @param exception The exception to throw.\n *\n * @see [onpopstate](https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onpopstate)\n *\n * @returns Subscribed events.\n */\n subscribe(onNext, onThrow, onReturn) {\n return this._subject.subscribe({ next: onNext, error: onThrow, complete: onReturn });\n }\n}\n/**\n * Normalizes URL parameters by prepending with `?` if needed.\n *\n * @param params String of URL parameters.\n *\n * @returns The normalized URL parameters string.\n */\nLocation.normalizeQueryParams = normalizeQueryParams;\n/**\n * Joins two parts of a URL with a slash if needed.\n *\n * @param start URL string\n * @param end URL string\n *\n *\n * @returns The joined URL string.\n */\nLocation.joinWithSlash = joinWithSlash;\n/**\n * Removes a trailing slash from a URL string if needed.\n * Looks for the first occurrence of either `#`, `?`, or the end of the\n * line as `/` characters and removes the trailing slash if one exists.\n *\n * @param url URL string.\n *\n * @returns The URL string, modified if needed.\n */\nLocation.stripTrailingSlash = stripTrailingSlash;\nLocation.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Location, deps: [{ token: LocationStrategy }, { token: PlatformLocation }], target: i0.ɵɵFactoryTarget.Injectable });\nLocation.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Location, providedIn: 'root', useFactory: createLocation });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: Location, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n // See #23917\n useFactory: createLocation,\n }]\n }], ctorParameters: function () { return [{ type: LocationStrategy }, { type: PlatformLocation }]; } });\nfunction createLocation() {\n return new Location(ɵɵinject(LocationStrategy), ɵɵinject(PlatformLocation));\n}\nfunction _stripBaseHref(baseHref, url) {\n return baseHref && url.startsWith(baseHref) ? url.substring(baseHref.length) : url;\n}\nfunction _stripIndexHtml(url) {\n return url.replace(/\\/index.html$/, '');\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/** @internal */\nconst CURRENCIES_EN = { \"ADP\": [undefined, undefined, 0], \"AFN\": [undefined, \"؋\", 0], \"ALL\": [undefined, undefined, 0], \"AMD\": [undefined, \"֏\", 2], \"AOA\": [undefined, \"Kz\"], \"ARS\": [undefined, \"$\"], \"AUD\": [\"A$\", \"$\"], \"AZN\": [undefined, \"₼\"], \"BAM\": [undefined, \"KM\"], \"BBD\": [undefined, \"$\"], \"BDT\": [undefined, \"৳\"], \"BHD\": [undefined, undefined, 3], \"BIF\": [undefined, undefined, 0], \"BMD\": [undefined, \"$\"], \"BND\": [undefined, \"$\"], \"BOB\": [undefined, \"Bs\"], \"BRL\": [\"R$\"], \"BSD\": [undefined, \"$\"], \"BWP\": [undefined, \"P\"], \"BYN\": [undefined, \"р.\", 2], \"BYR\": [undefined, undefined, 0], \"BZD\": [undefined, \"$\"], \"CAD\": [\"CA$\", \"$\", 2], \"CHF\": [undefined, undefined, 2], \"CLF\": [undefined, undefined, 4], \"CLP\": [undefined, \"$\", 0], \"CNY\": [\"CN¥\", \"¥\"], \"COP\": [undefined, \"$\", 2], \"CRC\": [undefined, \"₡\", 2], \"CUC\": [undefined, \"$\"], \"CUP\": [undefined, \"$\"], \"CZK\": [undefined, \"Kč\", 2], \"DJF\": [undefined, undefined, 0], \"DKK\": [undefined, \"kr\", 2], \"DOP\": [undefined, \"$\"], \"EGP\": [undefined, \"E£\"], \"ESP\": [undefined, \"₧\", 0], \"EUR\": [\"€\"], \"FJD\": [undefined, \"$\"], \"FKP\": [undefined, \"£\"], \"GBP\": [\"£\"], \"GEL\": [undefined, \"₾\"], \"GHS\": [undefined, \"GH₵\"], \"GIP\": [undefined, \"£\"], \"GNF\": [undefined, \"FG\", 0], \"GTQ\": [undefined, \"Q\"], \"GYD\": [undefined, \"$\", 2], \"HKD\": [\"HK$\", \"$\"], \"HNL\": [undefined, \"L\"], \"HRK\": [undefined, \"kn\"], \"HUF\": [undefined, \"Ft\", 2], \"IDR\": [undefined, \"Rp\", 2], \"ILS\": [\"₪\"], \"INR\": [\"₹\"], \"IQD\": [undefined, undefined, 0], \"IRR\": [undefined, undefined, 0], \"ISK\": [undefined, \"kr\", 0], \"ITL\": [undefined, undefined, 0], \"JMD\": [undefined, \"$\"], \"JOD\": [undefined, undefined, 3], \"JPY\": [\"¥\", undefined, 0], \"KHR\": [undefined, \"៛\"], \"KMF\": [undefined, \"CF\", 0], \"KPW\": [undefined, \"₩\", 0], \"KRW\": [\"₩\", undefined, 0], \"KWD\": [undefined, undefined, 3], \"KYD\": [undefined, \"$\"], \"KZT\": [undefined, \"₸\"], \"LAK\": [undefined, \"₭\", 0], \"LBP\": [undefined, \"L£\", 0], \"LKR\": [undefined, \"Rs\"], \"LRD\": [undefined, \"$\"], \"LTL\": [undefined, \"Lt\"], \"LUF\": [undefined, undefined, 0], \"LVL\": [undefined, \"Ls\"], \"LYD\": [undefined, undefined, 3], \"MGA\": [undefined, \"Ar\", 0], \"MGF\": [undefined, undefined, 0], \"MMK\": [undefined, \"K\", 0], \"MNT\": [undefined, \"₮\", 2], \"MRO\": [undefined, undefined, 0], \"MUR\": [undefined, \"Rs\", 2], \"MXN\": [\"MX$\", \"$\"], \"MYR\": [undefined, \"RM\"], \"NAD\": [undefined, \"$\"], \"NGN\": [undefined, \"₦\"], \"NIO\": [undefined, \"C$\"], \"NOK\": [undefined, \"kr\", 2], \"NPR\": [undefined, \"Rs\"], \"NZD\": [\"NZ$\", \"$\"], \"OMR\": [undefined, undefined, 3], \"PHP\": [\"₱\"], \"PKR\": [undefined, \"Rs\", 2], \"PLN\": [undefined, \"zł\"], \"PYG\": [undefined, \"₲\", 0], \"RON\": [undefined, \"lei\"], \"RSD\": [undefined, undefined, 0], \"RUB\": [undefined, \"₽\"], \"RUR\": [undefined, \"р.\"], \"RWF\": [undefined, \"RF\", 0], \"SBD\": [undefined, \"$\"], \"SEK\": [undefined, \"kr\", 2], \"SGD\": [undefined, \"$\"], \"SHP\": [undefined, \"£\"], \"SLL\": [undefined, undefined, 0], \"SOS\": [undefined, undefined, 0], \"SRD\": [undefined, \"$\"], \"SSP\": [undefined, \"£\"], \"STD\": [undefined, undefined, 0], \"STN\": [undefined, \"Db\"], \"SYP\": [undefined, \"£\", 0], \"THB\": [undefined, \"฿\"], \"TMM\": [undefined, undefined, 0], \"TND\": [undefined, undefined, 3], \"TOP\": [undefined, \"T$\"], \"TRL\": [undefined, undefined, 0], \"TRY\": [undefined, \"₺\"], \"TTD\": [undefined, \"$\"], \"TWD\": [\"NT$\", \"$\", 2], \"TZS\": [undefined, undefined, 2], \"UAH\": [undefined, \"₴\"], \"UGX\": [undefined, undefined, 0], \"USD\": [\"$\"], \"UYI\": [undefined, undefined, 0], \"UYU\": [undefined, \"$\"], \"UYW\": [undefined, undefined, 4], \"UZS\": [undefined, undefined, 2], \"VEF\": [undefined, \"Bs\", 2], \"VND\": [\"₫\", undefined, 0], \"VUV\": [undefined, undefined, 0], \"XAF\": [\"FCFA\", undefined, 0], \"XCD\": [\"EC$\", \"$\"], \"XOF\": [\"F CFA\", undefined, 0], \"XPF\": [\"CFPF\", undefined, 0], \"XXX\": [\"¤\"], \"YER\": [undefined, undefined, 0], \"ZAR\": [undefined, \"R\"], \"ZMK\": [undefined, undefined, 0], \"ZMW\": [undefined, \"ZK\"], \"ZWD\": [undefined, undefined, 0] };\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Format styles that can be used to represent numbers.\n * @see `getLocaleNumberFormat()`.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nvar NumberFormatStyle;\n(function (NumberFormatStyle) {\n NumberFormatStyle[NumberFormatStyle[\"Decimal\"] = 0] = \"Decimal\";\n NumberFormatStyle[NumberFormatStyle[\"Percent\"] = 1] = \"Percent\";\n NumberFormatStyle[NumberFormatStyle[\"Currency\"] = 2] = \"Currency\";\n NumberFormatStyle[NumberFormatStyle[\"Scientific\"] = 3] = \"Scientific\";\n})(NumberFormatStyle || (NumberFormatStyle = {}));\n/**\n * Plurality cases used for translating plurals to different languages.\n *\n * @see `NgPlural`\n * @see `NgPluralCase`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nvar Plural;\n(function (Plural) {\n Plural[Plural[\"Zero\"] = 0] = \"Zero\";\n Plural[Plural[\"One\"] = 1] = \"One\";\n Plural[Plural[\"Two\"] = 2] = \"Two\";\n Plural[Plural[\"Few\"] = 3] = \"Few\";\n Plural[Plural[\"Many\"] = 4] = \"Many\";\n Plural[Plural[\"Other\"] = 5] = \"Other\";\n})(Plural || (Plural = {}));\n/**\n * Context-dependant translation forms for strings.\n * Typically the standalone version is for the nominative form of the word,\n * and the format version is used for the genitive case.\n * @see [CLDR website](http://cldr.unicode.org/translation/date-time-1/date-time#TOC-Standalone-vs.-Format-Styles)\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nvar FormStyle;\n(function (FormStyle) {\n FormStyle[FormStyle[\"Format\"] = 0] = \"Format\";\n FormStyle[FormStyle[\"Standalone\"] = 1] = \"Standalone\";\n})(FormStyle || (FormStyle = {}));\n/**\n * String widths available for translations.\n * The specific character widths are locale-specific.\n * Examples are given for the word \"Sunday\" in English.\n *\n * @publicApi\n */\nvar TranslationWidth;\n(function (TranslationWidth) {\n /** 1 character for `en-US`. For example: 'S' */\n TranslationWidth[TranslationWidth[\"Narrow\"] = 0] = \"Narrow\";\n /** 3 characters for `en-US`. For example: 'Sun' */\n TranslationWidth[TranslationWidth[\"Abbreviated\"] = 1] = \"Abbreviated\";\n /** Full length for `en-US`. For example: \"Sunday\" */\n TranslationWidth[TranslationWidth[\"Wide\"] = 2] = \"Wide\";\n /** 2 characters for `en-US`, For example: \"Su\" */\n TranslationWidth[TranslationWidth[\"Short\"] = 3] = \"Short\";\n})(TranslationWidth || (TranslationWidth = {}));\n/**\n * String widths available for date-time formats.\n * The specific character widths are locale-specific.\n * Examples are given for `en-US`.\n *\n * @see `getLocaleDateFormat()`\n * @see `getLocaleTimeFormat()`\n * @see `getLocaleDateTimeFormat()`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n * @publicApi\n */\nvar FormatWidth;\n(function (FormatWidth) {\n /**\n * For `en-US`, 'M/d/yy, h:mm a'`\n * (Example: `6/15/15, 9:03 AM`)\n */\n FormatWidth[FormatWidth[\"Short\"] = 0] = \"Short\";\n /**\n * For `en-US`, `'MMM d, y, h:mm:ss a'`\n * (Example: `Jun 15, 2015, 9:03:01 AM`)\n */\n FormatWidth[FormatWidth[\"Medium\"] = 1] = \"Medium\";\n /**\n * For `en-US`, `'MMMM d, y, h:mm:ss a z'`\n * (Example: `June 15, 2015 at 9:03:01 AM GMT+1`)\n */\n FormatWidth[FormatWidth[\"Long\"] = 2] = \"Long\";\n /**\n * For `en-US`, `'EEEE, MMMM d, y, h:mm:ss a zzzz'`\n * (Example: `Monday, June 15, 2015 at 9:03:01 AM GMT+01:00`)\n */\n FormatWidth[FormatWidth[\"Full\"] = 3] = \"Full\";\n})(FormatWidth || (FormatWidth = {}));\n/**\n * Symbols that can be used to replace placeholders in number patterns.\n * Examples are based on `en-US` values.\n *\n * @see `getLocaleNumberSymbol()`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nvar NumberSymbol;\n(function (NumberSymbol) {\n /**\n * Decimal separator.\n * For `en-US`, the dot character.\n * Example: 2,345`.`67\n */\n NumberSymbol[NumberSymbol[\"Decimal\"] = 0] = \"Decimal\";\n /**\n * Grouping separator, typically for thousands.\n * For `en-US`, the comma character.\n * Example: 2`,`345.67\n */\n NumberSymbol[NumberSymbol[\"Group\"] = 1] = \"Group\";\n /**\n * List-item separator.\n * Example: \"one, two, and three\"\n */\n NumberSymbol[NumberSymbol[\"List\"] = 2] = \"List\";\n /**\n * Sign for percentage (out of 100).\n * Example: 23.4%\n */\n NumberSymbol[NumberSymbol[\"PercentSign\"] = 3] = \"PercentSign\";\n /**\n * Sign for positive numbers.\n * Example: +23\n */\n NumberSymbol[NumberSymbol[\"PlusSign\"] = 4] = \"PlusSign\";\n /**\n * Sign for negative numbers.\n * Example: -23\n */\n NumberSymbol[NumberSymbol[\"MinusSign\"] = 5] = \"MinusSign\";\n /**\n * Computer notation for exponential value (n times a power of 10).\n * Example: 1.2E3\n */\n NumberSymbol[NumberSymbol[\"Exponential\"] = 6] = \"Exponential\";\n /**\n * Human-readable format of exponential.\n * Example: 1.2x103\n */\n NumberSymbol[NumberSymbol[\"SuperscriptingExponent\"] = 7] = \"SuperscriptingExponent\";\n /**\n * Sign for permille (out of 1000).\n * Example: 23.4‰\n */\n NumberSymbol[NumberSymbol[\"PerMille\"] = 8] = \"PerMille\";\n /**\n * Infinity, can be used with plus and minus.\n * Example: ∞, +∞, -∞\n */\n NumberSymbol[NumberSymbol[\"Infinity\"] = 9] = \"Infinity\";\n /**\n * Not a number.\n * Example: NaN\n */\n NumberSymbol[NumberSymbol[\"NaN\"] = 10] = \"NaN\";\n /**\n * Symbol used between time units.\n * Example: 10:52\n */\n NumberSymbol[NumberSymbol[\"TimeSeparator\"] = 11] = \"TimeSeparator\";\n /**\n * Decimal separator for currency values (fallback to `Decimal`).\n * Example: $2,345.67\n */\n NumberSymbol[NumberSymbol[\"CurrencyDecimal\"] = 12] = \"CurrencyDecimal\";\n /**\n * Group separator for currency values (fallback to `Group`).\n * Example: $2,345.67\n */\n NumberSymbol[NumberSymbol[\"CurrencyGroup\"] = 13] = \"CurrencyGroup\";\n})(NumberSymbol || (NumberSymbol = {}));\n/**\n * The value for each day of the week, based on the `en-US` locale\n *\n * @publicApi\n */\nvar WeekDay;\n(function (WeekDay) {\n WeekDay[WeekDay[\"Sunday\"] = 0] = \"Sunday\";\n WeekDay[WeekDay[\"Monday\"] = 1] = \"Monday\";\n WeekDay[WeekDay[\"Tuesday\"] = 2] = \"Tuesday\";\n WeekDay[WeekDay[\"Wednesday\"] = 3] = \"Wednesday\";\n WeekDay[WeekDay[\"Thursday\"] = 4] = \"Thursday\";\n WeekDay[WeekDay[\"Friday\"] = 5] = \"Friday\";\n WeekDay[WeekDay[\"Saturday\"] = 6] = \"Saturday\";\n})(WeekDay || (WeekDay = {}));\n/**\n * Retrieves the locale ID from the currently loaded locale.\n * The loaded locale could be, for example, a global one rather than a regional one.\n * @param locale A locale code, such as `fr-FR`.\n * @returns The locale code. For example, `fr`.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleId(locale) {\n return ɵfindLocaleData(locale)[ɵLocaleDataIndex.LocaleId];\n}\n/**\n * Retrieves day period strings for the given locale.\n *\n * @param locale A locale code for the locale format rules to use.\n * @param formStyle The required grammatical form.\n * @param width The required character width.\n * @returns An array of localized period strings. For example, `[AM, PM]` for `en-US`.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleDayPeriods(locale, formStyle, width) {\n const data = ɵfindLocaleData(locale);\n const amPmData = [\n data[ɵLocaleDataIndex.DayPeriodsFormat], data[ɵLocaleDataIndex.DayPeriodsStandalone]\n ];\n const amPm = getLastDefinedValue(amPmData, formStyle);\n return getLastDefinedValue(amPm, width);\n}\n/**\n * Retrieves days of the week for the given locale, using the Gregorian calendar.\n *\n * @param locale A locale code for the locale format rules to use.\n * @param formStyle The required grammatical form.\n * @param width The required character width.\n * @returns An array of localized name strings.\n * For example,`[Sunday, Monday, ... Saturday]` for `en-US`.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleDayNames(locale, formStyle, width) {\n const data = ɵfindLocaleData(locale);\n const daysData = [data[ɵLocaleDataIndex.DaysFormat], data[ɵLocaleDataIndex.DaysStandalone]];\n const days = getLastDefinedValue(daysData, formStyle);\n return getLastDefinedValue(days, width);\n}\n/**\n * Retrieves months of the year for the given locale, using the Gregorian calendar.\n *\n * @param locale A locale code for the locale format rules to use.\n * @param formStyle The required grammatical form.\n * @param width The required character width.\n * @returns An array of localized name strings.\n * For example, `[January, February, ...]` for `en-US`.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleMonthNames(locale, formStyle, width) {\n const data = ɵfindLocaleData(locale);\n const monthsData = [data[ɵLocaleDataIndex.MonthsFormat], data[ɵLocaleDataIndex.MonthsStandalone]];\n const months = getLastDefinedValue(monthsData, formStyle);\n return getLastDefinedValue(months, width);\n}\n/**\n * Retrieves Gregorian-calendar eras for the given locale.\n * @param locale A locale code for the locale format rules to use.\n * @param width The required character width.\n\n * @returns An array of localized era strings.\n * For example, `[AD, BC]` for `en-US`.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleEraNames(locale, width) {\n const data = ɵfindLocaleData(locale);\n const erasData = data[ɵLocaleDataIndex.Eras];\n return getLastDefinedValue(erasData, width);\n}\n/**\n * Retrieves the first day of the week for the given locale.\n *\n * @param locale A locale code for the locale format rules to use.\n * @returns A day index number, using the 0-based week-day index for `en-US`\n * (Sunday = 0, Monday = 1, ...).\n * For example, for `fr-FR`, returns 1 to indicate that the first day is Monday.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleFirstDayOfWeek(locale) {\n const data = ɵfindLocaleData(locale);\n return data[ɵLocaleDataIndex.FirstDayOfWeek];\n}\n/**\n * Range of week days that are considered the week-end for the given locale.\n *\n * @param locale A locale code for the locale format rules to use.\n * @returns The range of day values, `[startDay, endDay]`.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleWeekEndRange(locale) {\n const data = ɵfindLocaleData(locale);\n return data[ɵLocaleDataIndex.WeekendRange];\n}\n/**\n * Retrieves a localized date-value formating string.\n *\n * @param locale A locale code for the locale format rules to use.\n * @param width The format type.\n * @returns The localized formating string.\n * @see `FormatWidth`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleDateFormat(locale, width) {\n const data = ɵfindLocaleData(locale);\n return getLastDefinedValue(data[ɵLocaleDataIndex.DateFormat], width);\n}\n/**\n * Retrieves a localized time-value formatting string.\n *\n * @param locale A locale code for the locale format rules to use.\n * @param width The format type.\n * @returns The localized formatting string.\n * @see `FormatWidth`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n\n * @publicApi\n */\nfunction getLocaleTimeFormat(locale, width) {\n const data = ɵfindLocaleData(locale);\n return getLastDefinedValue(data[ɵLocaleDataIndex.TimeFormat], width);\n}\n/**\n * Retrieves a localized date-time formatting string.\n *\n * @param locale A locale code for the locale format rules to use.\n * @param width The format type.\n * @returns The localized formatting string.\n * @see `FormatWidth`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleDateTimeFormat(locale, width) {\n const data = ɵfindLocaleData(locale);\n const dateTimeFormatData = data[ɵLocaleDataIndex.DateTimeFormat];\n return getLastDefinedValue(dateTimeFormatData, width);\n}\n/**\n * Retrieves a localized number symbol that can be used to replace placeholders in number formats.\n * @param locale The locale code.\n * @param symbol The symbol to localize.\n * @returns The character for the localized symbol.\n * @see `NumberSymbol`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleNumberSymbol(locale, symbol) {\n const data = ɵfindLocaleData(locale);\n const res = data[ɵLocaleDataIndex.NumberSymbols][symbol];\n if (typeof res === 'undefined') {\n if (symbol === NumberSymbol.CurrencyDecimal) {\n return data[ɵLocaleDataIndex.NumberSymbols][NumberSymbol.Decimal];\n }\n else if (symbol === NumberSymbol.CurrencyGroup) {\n return data[ɵLocaleDataIndex.NumberSymbols][NumberSymbol.Group];\n }\n }\n return res;\n}\n/**\n * Retrieves a number format for a given locale.\n *\n * Numbers are formatted using patterns, like `#,###.00`. For example, the pattern `#,###.00`\n * when used to format the number 12345.678 could result in \"12'345,678\". That would happen if the\n * grouping separator for your language is an apostrophe, and the decimal separator is a comma.\n *\n * Important: The characters `.` `,` `0` `#` (and others below) are special placeholders\n * that stand for the decimal separator, and so on, and are NOT real characters.\n * You must NOT \"translate\" the placeholders. For example, don't change `.` to `,` even though in\n * your language the decimal point is written with a comma. The symbols should be replaced by the\n * local equivalents, using the appropriate `NumberSymbol` for your language.\n *\n * Here are the special characters used in number patterns:\n *\n * | Symbol | Meaning |\n * |--------|---------|\n * | . | Replaced automatically by the character used for the decimal point. |\n * | , | Replaced by the \"grouping\" (thousands) separator. |\n * | 0 | Replaced by a digit (or zero if there aren't enough digits). |\n * | # | Replaced by a digit (or nothing if there aren't enough). |\n * | ¤ | Replaced by a currency symbol, such as $ or USD. |\n * | % | Marks a percent format. The % symbol may change position, but must be retained. |\n * | E | Marks a scientific format. The E symbol may change position, but must be retained. |\n * | ' | Special characters used as literal characters are quoted with ASCII single quotes. |\n *\n * @param locale A locale code for the locale format rules to use.\n * @param type The type of numeric value to be formatted (such as `Decimal` or `Currency`.)\n * @returns The localized format string.\n * @see `NumberFormatStyle`\n * @see [CLDR website](http://cldr.unicode.org/translation/number-patterns)\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleNumberFormat(locale, type) {\n const data = ɵfindLocaleData(locale);\n return data[ɵLocaleDataIndex.NumberFormats][type];\n}\n/**\n * Retrieves the symbol used to represent the currency for the main country\n * corresponding to a given locale. For example, '$' for `en-US`.\n *\n * @param locale A locale code for the locale format rules to use.\n * @returns The localized symbol character,\n * or `null` if the main country cannot be determined.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleCurrencySymbol(locale) {\n const data = ɵfindLocaleData(locale);\n return data[ɵLocaleDataIndex.CurrencySymbol] || null;\n}\n/**\n * Retrieves the name of the currency for the main country corresponding\n * to a given locale. For example, 'US Dollar' for `en-US`.\n * @param locale A locale code for the locale format rules to use.\n * @returns The currency name,\n * or `null` if the main country cannot be determined.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleCurrencyName(locale) {\n const data = ɵfindLocaleData(locale);\n return data[ɵLocaleDataIndex.CurrencyName] || null;\n}\n/**\n * Retrieves the default currency code for the given locale.\n *\n * The default is defined as the first currency which is still in use.\n *\n * @param locale The code of the locale whose currency code we want.\n * @returns The code of the default currency for the given locale.\n *\n * @publicApi\n */\nfunction getLocaleCurrencyCode(locale) {\n return ɵgetLocaleCurrencyCode(locale);\n}\n/**\n * Retrieves the currency values for a given locale.\n * @param locale A locale code for the locale format rules to use.\n * @returns The currency values.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n */\nfunction getLocaleCurrencies(locale) {\n const data = ɵfindLocaleData(locale);\n return data[ɵLocaleDataIndex.Currencies];\n}\n/**\n * @alias core/ɵgetLocalePluralCase\n * @publicApi\n */\nconst getLocalePluralCase = ɵgetLocalePluralCase;\nfunction checkFullData(data) {\n if (!data[ɵLocaleDataIndex.ExtraData]) {\n throw new Error(`Missing extra locale data for the locale \"${data[ɵLocaleDataIndex\n .LocaleId]}\". Use \"registerLocaleData\" to load new data. See the \"I18n guide\" on angular.io to know more.`);\n }\n}\n/**\n * Retrieves locale-specific rules used to determine which day period to use\n * when more than one period is defined for a locale.\n *\n * There is a rule for each defined day period. The\n * first rule is applied to the first day period and so on.\n * Fall back to AM/PM when no rules are available.\n *\n * A rule can specify a period as time range, or as a single time value.\n *\n * This functionality is only available when you have loaded the full locale data.\n * See the [\"I18n guide\"](guide/i18n-common-format-data-locale).\n *\n * @param locale A locale code for the locale format rules to use.\n * @returns The rules for the locale, a single time value or array of *from-time, to-time*,\n * or null if no periods are available.\n *\n * @see `getLocaleExtraDayPeriods()`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleExtraDayPeriodRules(locale) {\n const data = ɵfindLocaleData(locale);\n checkFullData(data);\n const rules = data[ɵLocaleDataIndex.ExtraData][2 /* ExtraDayPeriodsRules */] || [];\n return rules.map((rule) => {\n if (typeof rule === 'string') {\n return extractTime(rule);\n }\n return [extractTime(rule[0]), extractTime(rule[1])];\n });\n}\n/**\n * Retrieves locale-specific day periods, which indicate roughly how a day is broken up\n * in different languages.\n * For example, for `en-US`, periods are morning, noon, afternoon, evening, and midnight.\n *\n * This functionality is only available when you have loaded the full locale data.\n * See the [\"I18n guide\"](guide/i18n-common-format-data-locale).\n *\n * @param locale A locale code for the locale format rules to use.\n * @param formStyle The required grammatical form.\n * @param width The required character width.\n * @returns The translated day-period strings.\n * @see `getLocaleExtraDayPeriodRules()`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLocaleExtraDayPeriods(locale, formStyle, width) {\n const data = ɵfindLocaleData(locale);\n checkFullData(data);\n const dayPeriodsData = [\n data[ɵLocaleDataIndex.ExtraData][0 /* ExtraDayPeriodFormats */],\n data[ɵLocaleDataIndex.ExtraData][1 /* ExtraDayPeriodStandalone */]\n ];\n const dayPeriods = getLastDefinedValue(dayPeriodsData, formStyle) || [];\n return getLastDefinedValue(dayPeriods, width) || [];\n}\n/**\n * Retrieves the writing direction of a specified locale\n * @param locale A locale code for the locale format rules to use.\n * @publicApi\n * @returns 'rtl' or 'ltr'\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n */\nfunction getLocaleDirection(locale) {\n const data = ɵfindLocaleData(locale);\n return data[ɵLocaleDataIndex.Directionality];\n}\n/**\n * Retrieves the first value that is defined in an array, going backwards from an index position.\n *\n * To avoid repeating the same data (as when the \"format\" and \"standalone\" forms are the same)\n * add the first value to the locale data arrays, and add other values only if they are different.\n *\n * @param data The data array to retrieve from.\n * @param index A 0-based index into the array to start from.\n * @returns The value immediately before the given index position.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getLastDefinedValue(data, index) {\n for (let i = index; i > -1; i--) {\n if (typeof data[i] !== 'undefined') {\n return data[i];\n }\n }\n throw new Error('Locale data API: locale data undefined');\n}\n/**\n * Extracts the hours and minutes from a string like \"15:45\"\n */\nfunction extractTime(time) {\n const [h, m] = time.split(':');\n return { hours: +h, minutes: +m };\n}\n/**\n * Retrieves the currency symbol for a given currency code.\n *\n * For example, for the default `en-US` locale, the code `USD` can\n * be represented by the narrow symbol `$` or the wide symbol `US$`.\n *\n * @param code The currency code.\n * @param format The format, `wide` or `narrow`.\n * @param locale A locale code for the locale format rules to use.\n *\n * @returns The symbol, or the currency code if no symbol is available.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getCurrencySymbol(code, format, locale = 'en') {\n const currency = getLocaleCurrencies(locale)[code] || CURRENCIES_EN[code] || [];\n const symbolNarrow = currency[1 /* SymbolNarrow */];\n if (format === 'narrow' && typeof symbolNarrow === 'string') {\n return symbolNarrow;\n }\n return currency[0 /* Symbol */] || code;\n}\n// Most currencies have cents, that's why the default is 2\nconst DEFAULT_NB_OF_CURRENCY_DIGITS = 2;\n/**\n * Reports the number of decimal digits for a given currency.\n * The value depends upon the presence of cents in that particular currency.\n *\n * @param code The currency code.\n * @returns The number of decimal digits, typically 0 or 2.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction getNumberOfCurrencyDigits(code) {\n let digits;\n const currency = CURRENCIES_EN[code];\n if (currency) {\n digits = currency[2 /* NbOfDigits */];\n }\n return typeof digits === 'number' ? digits : DEFAULT_NB_OF_CURRENCY_DIGITS;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst ISO8601_DATE_REGEX = /^(\\d{4})-?(\\d\\d)-?(\\d\\d)(?:T(\\d\\d)(?::?(\\d\\d)(?::?(\\d\\d)(?:\\.(\\d+))?)?)?(Z|([+-])(\\d\\d):?(\\d\\d))?)?$/;\n// 1 2 3 4 5 6 7 8 9 10 11\nconst NAMED_FORMATS = {};\nconst DATE_FORMATS_SPLIT = /((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\\s\\S]*)/;\nvar ZoneWidth;\n(function (ZoneWidth) {\n ZoneWidth[ZoneWidth[\"Short\"] = 0] = \"Short\";\n ZoneWidth[ZoneWidth[\"ShortGMT\"] = 1] = \"ShortGMT\";\n ZoneWidth[ZoneWidth[\"Long\"] = 2] = \"Long\";\n ZoneWidth[ZoneWidth[\"Extended\"] = 3] = \"Extended\";\n})(ZoneWidth || (ZoneWidth = {}));\nvar DateType;\n(function (DateType) {\n DateType[DateType[\"FullYear\"] = 0] = \"FullYear\";\n DateType[DateType[\"Month\"] = 1] = \"Month\";\n DateType[DateType[\"Date\"] = 2] = \"Date\";\n DateType[DateType[\"Hours\"] = 3] = \"Hours\";\n DateType[DateType[\"Minutes\"] = 4] = \"Minutes\";\n DateType[DateType[\"Seconds\"] = 5] = \"Seconds\";\n DateType[DateType[\"FractionalSeconds\"] = 6] = \"FractionalSeconds\";\n DateType[DateType[\"Day\"] = 7] = \"Day\";\n})(DateType || (DateType = {}));\nvar TranslationType;\n(function (TranslationType) {\n TranslationType[TranslationType[\"DayPeriods\"] = 0] = \"DayPeriods\";\n TranslationType[TranslationType[\"Days\"] = 1] = \"Days\";\n TranslationType[TranslationType[\"Months\"] = 2] = \"Months\";\n TranslationType[TranslationType[\"Eras\"] = 3] = \"Eras\";\n})(TranslationType || (TranslationType = {}));\n/**\n * @ngModule CommonModule\n * @description\n *\n * Formats a date according to locale rules.\n *\n * @param value The date to format, as a Date, or a number (milliseconds since UTC epoch)\n * or an [ISO date-time string](https://www.w3.org/TR/NOTE-datetime).\n * @param format The date-time components to include. See `DatePipe` for details.\n * @param locale A locale code for the locale format rules to use.\n * @param timezone The time zone. A time zone offset from GMT (such as `'+0430'`),\n * or a standard UTC/GMT or continental US time zone abbreviation.\n * If not specified, uses host system settings.\n *\n * @returns The formatted date string.\n *\n * @see `DatePipe`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction formatDate(value, format, locale, timezone) {\n let date = toDate(value);\n const namedFormat = getNamedFormat(locale, format);\n format = namedFormat || format;\n let parts = [];\n let match;\n while (format) {\n match = DATE_FORMATS_SPLIT.exec(format);\n if (match) {\n parts = parts.concat(match.slice(1));\n const part = parts.pop();\n if (!part) {\n break;\n }\n format = part;\n }\n else {\n parts.push(format);\n break;\n }\n }\n let dateTimezoneOffset = date.getTimezoneOffset();\n if (timezone) {\n dateTimezoneOffset = timezoneToOffset(timezone, dateTimezoneOffset);\n date = convertTimezoneToLocal(date, timezone, true);\n }\n let text = '';\n parts.forEach(value => {\n const dateFormatter = getDateFormatter(value);\n text += dateFormatter ?\n dateFormatter(date, locale, dateTimezoneOffset) :\n value === '\\'\\'' ? '\\'' : value.replace(/(^'|'$)/g, '').replace(/''/g, '\\'');\n });\n return text;\n}\n/**\n * Create a new Date object with the given date value, and the time set to midnight.\n *\n * We cannot use `new Date(year, month, date)` because it maps years between 0 and 99 to 1900-1999.\n * See: https://github.com/angular/angular/issues/40377\n *\n * Note that this function returns a Date object whose time is midnight in the current locale's\n * timezone. In the future we might want to change this to be midnight in UTC, but this would be a\n * considerable breaking change.\n */\nfunction createDate(year, month, date) {\n // The `newDate` is set to midnight (UTC) on January 1st 1970.\n // - In PST this will be December 31st 1969 at 4pm.\n // - In GMT this will be January 1st 1970 at 1am.\n // Note that they even have different years, dates and months!\n const newDate = new Date(0);\n // `setFullYear()` allows years like 0001 to be set correctly. This function does not\n // change the internal time of the date.\n // Consider calling `setFullYear(2019, 8, 20)` (September 20, 2019).\n // - In PST this will now be September 20, 2019 at 4pm\n // - In GMT this will now be September 20, 2019 at 1am\n newDate.setFullYear(year, month, date);\n // We want the final date to be at local midnight, so we reset the time.\n // - In PST this will now be September 20, 2019 at 12am\n // - In GMT this will now be September 20, 2019 at 12am\n newDate.setHours(0, 0, 0);\n return newDate;\n}\nfunction getNamedFormat(locale, format) {\n const localeId = getLocaleId(locale);\n NAMED_FORMATS[localeId] = NAMED_FORMATS[localeId] || {};\n if (NAMED_FORMATS[localeId][format]) {\n return NAMED_FORMATS[localeId][format];\n }\n let formatValue = '';\n switch (format) {\n case 'shortDate':\n formatValue = getLocaleDateFormat(locale, FormatWidth.Short);\n break;\n case 'mediumDate':\n formatValue = getLocaleDateFormat(locale, FormatWidth.Medium);\n break;\n case 'longDate':\n formatValue = getLocaleDateFormat(locale, FormatWidth.Long);\n break;\n case 'fullDate':\n formatValue = getLocaleDateFormat(locale, FormatWidth.Full);\n break;\n case 'shortTime':\n formatValue = getLocaleTimeFormat(locale, FormatWidth.Short);\n break;\n case 'mediumTime':\n formatValue = getLocaleTimeFormat(locale, FormatWidth.Medium);\n break;\n case 'longTime':\n formatValue = getLocaleTimeFormat(locale, FormatWidth.Long);\n break;\n case 'fullTime':\n formatValue = getLocaleTimeFormat(locale, FormatWidth.Full);\n break;\n case 'short':\n const shortTime = getNamedFormat(locale, 'shortTime');\n const shortDate = getNamedFormat(locale, 'shortDate');\n formatValue = formatDateTime(getLocaleDateTimeFormat(locale, FormatWidth.Short), [shortTime, shortDate]);\n break;\n case 'medium':\n const mediumTime = getNamedFormat(locale, 'mediumTime');\n const mediumDate = getNamedFormat(locale, 'mediumDate');\n formatValue = formatDateTime(getLocaleDateTimeFormat(locale, FormatWidth.Medium), [mediumTime, mediumDate]);\n break;\n case 'long':\n const longTime = getNamedFormat(locale, 'longTime');\n const longDate = getNamedFormat(locale, 'longDate');\n formatValue =\n formatDateTime(getLocaleDateTimeFormat(locale, FormatWidth.Long), [longTime, longDate]);\n break;\n case 'full':\n const fullTime = getNamedFormat(locale, 'fullTime');\n const fullDate = getNamedFormat(locale, 'fullDate');\n formatValue =\n formatDateTime(getLocaleDateTimeFormat(locale, FormatWidth.Full), [fullTime, fullDate]);\n break;\n }\n if (formatValue) {\n NAMED_FORMATS[localeId][format] = formatValue;\n }\n return formatValue;\n}\nfunction formatDateTime(str, opt_values) {\n if (opt_values) {\n str = str.replace(/\\{([^}]+)}/g, function (match, key) {\n return (opt_values != null && key in opt_values) ? opt_values[key] : match;\n });\n }\n return str;\n}\nfunction padNumber(num, digits, minusSign = '-', trim, negWrap) {\n let neg = '';\n if (num < 0 || (negWrap && num <= 0)) {\n if (negWrap) {\n num = -num + 1;\n }\n else {\n num = -num;\n neg = minusSign;\n }\n }\n let strNum = String(num);\n while (strNum.length < digits) {\n strNum = '0' + strNum;\n }\n if (trim) {\n strNum = strNum.substr(strNum.length - digits);\n }\n return neg + strNum;\n}\nfunction formatFractionalSeconds(milliseconds, digits) {\n const strMs = padNumber(milliseconds, 3);\n return strMs.substr(0, digits);\n}\n/**\n * Returns a date formatter that transforms a date into its locale digit representation\n */\nfunction dateGetter(name, size, offset = 0, trim = false, negWrap = false) {\n return function (date, locale) {\n let part = getDatePart(name, date);\n if (offset > 0 || part > -offset) {\n part += offset;\n }\n if (name === DateType.Hours) {\n if (part === 0 && offset === -12) {\n part = 12;\n }\n }\n else if (name === DateType.FractionalSeconds) {\n return formatFractionalSeconds(part, size);\n }\n const localeMinus = getLocaleNumberSymbol(locale, NumberSymbol.MinusSign);\n return padNumber(part, size, localeMinus, trim, negWrap);\n };\n}\nfunction getDatePart(part, date) {\n switch (part) {\n case DateType.FullYear:\n return date.getFullYear();\n case DateType.Month:\n return date.getMonth();\n case DateType.Date:\n return date.getDate();\n case DateType.Hours:\n return date.getHours();\n case DateType.Minutes:\n return date.getMinutes();\n case DateType.Seconds:\n return date.getSeconds();\n case DateType.FractionalSeconds:\n return date.getMilliseconds();\n case DateType.Day:\n return date.getDay();\n default:\n throw new Error(`Unknown DateType value \"${part}\".`);\n }\n}\n/**\n * Returns a date formatter that transforms a date into its locale string representation\n */\nfunction dateStrGetter(name, width, form = FormStyle.Format, extended = false) {\n return function (date, locale) {\n return getDateTranslation(date, locale, name, width, form, extended);\n };\n}\n/**\n * Returns the locale translation of a date for a given form, type and width\n */\nfunction getDateTranslation(date, locale, name, width, form, extended) {\n switch (name) {\n case TranslationType.Months:\n return getLocaleMonthNames(locale, form, width)[date.getMonth()];\n case TranslationType.Days:\n return getLocaleDayNames(locale, form, width)[date.getDay()];\n case TranslationType.DayPeriods:\n const currentHours = date.getHours();\n const currentMinutes = date.getMinutes();\n if (extended) {\n const rules = getLocaleExtraDayPeriodRules(locale);\n const dayPeriods = getLocaleExtraDayPeriods(locale, form, width);\n const index = rules.findIndex(rule => {\n if (Array.isArray(rule)) {\n // morning, afternoon, evening, night\n const [from, to] = rule;\n const afterFrom = currentHours >= from.hours && currentMinutes >= from.minutes;\n const beforeTo = (currentHours < to.hours ||\n (currentHours === to.hours && currentMinutes < to.minutes));\n // We must account for normal rules that span a period during the day (e.g. 6am-9am)\n // where `from` is less (earlier) than `to`. But also rules that span midnight (e.g.\n // 10pm - 5am) where `from` is greater (later!) than `to`.\n //\n // In the first case the current time must be BOTH after `from` AND before `to`\n // (e.g. 8am is after 6am AND before 10am).\n //\n // In the second case the current time must be EITHER after `from` OR before `to`\n // (e.g. 4am is before 5am but not after 10pm; and 11pm is not before 5am but it is\n // after 10pm).\n if (from.hours < to.hours) {\n if (afterFrom && beforeTo) {\n return true;\n }\n }\n else if (afterFrom || beforeTo) {\n return true;\n }\n }\n else { // noon or midnight\n if (rule.hours === currentHours && rule.minutes === currentMinutes) {\n return true;\n }\n }\n return false;\n });\n if (index !== -1) {\n return dayPeriods[index];\n }\n }\n // if no rules for the day periods, we use am/pm by default\n return getLocaleDayPeriods(locale, form, width)[currentHours < 12 ? 0 : 1];\n case TranslationType.Eras:\n return getLocaleEraNames(locale, width)[date.getFullYear() <= 0 ? 0 : 1];\n default:\n // This default case is not needed by TypeScript compiler, as the switch is exhaustive.\n // However Closure Compiler does not understand that and reports an error in typed mode.\n // The `throw new Error` below works around the problem, and the unexpected: never variable\n // makes sure tsc still checks this code is unreachable.\n const unexpected = name;\n throw new Error(`unexpected translation type ${unexpected}`);\n }\n}\n/**\n * Returns a date formatter that transforms a date and an offset into a timezone with ISO8601 or\n * GMT format depending on the width (eg: short = +0430, short:GMT = GMT+4, long = GMT+04:30,\n * extended = +04:30)\n */\nfunction timeZoneGetter(width) {\n return function (date, locale, offset) {\n const zone = -1 * offset;\n const minusSign = getLocaleNumberSymbol(locale, NumberSymbol.MinusSign);\n const hours = zone > 0 ? Math.floor(zone / 60) : Math.ceil(zone / 60);\n switch (width) {\n case ZoneWidth.Short:\n return ((zone >= 0) ? '+' : '') + padNumber(hours, 2, minusSign) +\n padNumber(Math.abs(zone % 60), 2, minusSign);\n case ZoneWidth.ShortGMT:\n return 'GMT' + ((zone >= 0) ? '+' : '') + padNumber(hours, 1, minusSign);\n case ZoneWidth.Long:\n return 'GMT' + ((zone >= 0) ? '+' : '') + padNumber(hours, 2, minusSign) + ':' +\n padNumber(Math.abs(zone % 60), 2, minusSign);\n case ZoneWidth.Extended:\n if (offset === 0) {\n return 'Z';\n }\n else {\n return ((zone >= 0) ? '+' : '') + padNumber(hours, 2, minusSign) + ':' +\n padNumber(Math.abs(zone % 60), 2, minusSign);\n }\n default:\n throw new Error(`Unknown zone width \"${width}\"`);\n }\n };\n}\nconst JANUARY = 0;\nconst THURSDAY = 4;\nfunction getFirstThursdayOfYear(year) {\n const firstDayOfYear = createDate(year, JANUARY, 1).getDay();\n return createDate(year, 0, 1 + ((firstDayOfYear <= THURSDAY) ? THURSDAY : THURSDAY + 7) - firstDayOfYear);\n}\nfunction getThursdayThisWeek(datetime) {\n return createDate(datetime.getFullYear(), datetime.getMonth(), datetime.getDate() + (THURSDAY - datetime.getDay()));\n}\nfunction weekGetter(size, monthBased = false) {\n return function (date, locale) {\n let result;\n if (monthBased) {\n const nbDaysBefore1stDayOfMonth = new Date(date.getFullYear(), date.getMonth(), 1).getDay() - 1;\n const today = date.getDate();\n result = 1 + Math.floor((today + nbDaysBefore1stDayOfMonth) / 7);\n }\n else {\n const thisThurs = getThursdayThisWeek(date);\n // Some days of a year are part of next year according to ISO 8601.\n // Compute the firstThurs from the year of this week's Thursday\n const firstThurs = getFirstThursdayOfYear(thisThurs.getFullYear());\n const diff = thisThurs.getTime() - firstThurs.getTime();\n result = 1 + Math.round(diff / 6.048e8); // 6.048e8 ms per week\n }\n return padNumber(result, size, getLocaleNumberSymbol(locale, NumberSymbol.MinusSign));\n };\n}\n/**\n * Returns a date formatter that provides the week-numbering year for the input date.\n */\nfunction weekNumberingYearGetter(size, trim = false) {\n return function (date, locale) {\n const thisThurs = getThursdayThisWeek(date);\n const weekNumberingYear = thisThurs.getFullYear();\n return padNumber(weekNumberingYear, size, getLocaleNumberSymbol(locale, NumberSymbol.MinusSign), trim);\n };\n}\nconst DATE_FORMATS = {};\n// Based on CLDR formats:\n// See complete list: http://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n// See also explanations: http://cldr.unicode.org/translation/date-time\n// TODO(ocombe): support all missing cldr formats: U, Q, D, F, e, j, J, C, A, v, V, X, x\nfunction getDateFormatter(format) {\n if (DATE_FORMATS[format]) {\n return DATE_FORMATS[format];\n }\n let formatter;\n switch (format) {\n // Era name (AD/BC)\n case 'G':\n case 'GG':\n case 'GGG':\n formatter = dateStrGetter(TranslationType.Eras, TranslationWidth.Abbreviated);\n break;\n case 'GGGG':\n formatter = dateStrGetter(TranslationType.Eras, TranslationWidth.Wide);\n break;\n case 'GGGGG':\n formatter = dateStrGetter(TranslationType.Eras, TranslationWidth.Narrow);\n break;\n // 1 digit representation of the year, e.g. (AD 1 => 1, AD 199 => 199)\n case 'y':\n formatter = dateGetter(DateType.FullYear, 1, 0, false, true);\n break;\n // 2 digit representation of the year, padded (00-99). (e.g. AD 2001 => 01, AD 2010 => 10)\n case 'yy':\n formatter = dateGetter(DateType.FullYear, 2, 0, true, true);\n break;\n // 3 digit representation of the year, padded (000-999). (e.g. AD 2001 => 01, AD 2010 => 10)\n case 'yyy':\n formatter = dateGetter(DateType.FullYear, 3, 0, false, true);\n break;\n // 4 digit representation of the year (e.g. AD 1 => 0001, AD 2010 => 2010)\n case 'yyyy':\n formatter = dateGetter(DateType.FullYear, 4, 0, false, true);\n break;\n // 1 digit representation of the week-numbering year, e.g. (AD 1 => 1, AD 199 => 199)\n case 'Y':\n formatter = weekNumberingYearGetter(1);\n break;\n // 2 digit representation of the week-numbering year, padded (00-99). (e.g. AD 2001 => 01, AD\n // 2010 => 10)\n case 'YY':\n formatter = weekNumberingYearGetter(2, true);\n break;\n // 3 digit representation of the week-numbering year, padded (000-999). (e.g. AD 1 => 001, AD\n // 2010 => 2010)\n case 'YYY':\n formatter = weekNumberingYearGetter(3);\n break;\n // 4 digit representation of the week-numbering year (e.g. AD 1 => 0001, AD 2010 => 2010)\n case 'YYYY':\n formatter = weekNumberingYearGetter(4);\n break;\n // Month of the year (1-12), numeric\n case 'M':\n case 'L':\n formatter = dateGetter(DateType.Month, 1, 1);\n break;\n case 'MM':\n case 'LL':\n formatter = dateGetter(DateType.Month, 2, 1);\n break;\n // Month of the year (January, ...), string, format\n case 'MMM':\n formatter = dateStrGetter(TranslationType.Months, TranslationWidth.Abbreviated);\n break;\n case 'MMMM':\n formatter = dateStrGetter(TranslationType.Months, TranslationWidth.Wide);\n break;\n case 'MMMMM':\n formatter = dateStrGetter(TranslationType.Months, TranslationWidth.Narrow);\n break;\n // Month of the year (January, ...), string, standalone\n case 'LLL':\n formatter =\n dateStrGetter(TranslationType.Months, TranslationWidth.Abbreviated, FormStyle.Standalone);\n break;\n case 'LLLL':\n formatter =\n dateStrGetter(TranslationType.Months, TranslationWidth.Wide, FormStyle.Standalone);\n break;\n case 'LLLLL':\n formatter =\n dateStrGetter(TranslationType.Months, TranslationWidth.Narrow, FormStyle.Standalone);\n break;\n // Week of the year (1, ... 52)\n case 'w':\n formatter = weekGetter(1);\n break;\n case 'ww':\n formatter = weekGetter(2);\n break;\n // Week of the month (1, ...)\n case 'W':\n formatter = weekGetter(1, true);\n break;\n // Day of the month (1-31)\n case 'd':\n formatter = dateGetter(DateType.Date, 1);\n break;\n case 'dd':\n formatter = dateGetter(DateType.Date, 2);\n break;\n // Day of the Week StandAlone (1, 1, Mon, Monday, M, Mo)\n case 'c':\n case 'cc':\n formatter = dateGetter(DateType.Day, 1);\n break;\n case 'ccc':\n formatter =\n dateStrGetter(TranslationType.Days, TranslationWidth.Abbreviated, FormStyle.Standalone);\n break;\n case 'cccc':\n formatter = dateStrGetter(TranslationType.Days, TranslationWidth.Wide, FormStyle.Standalone);\n break;\n case 'ccccc':\n formatter =\n dateStrGetter(TranslationType.Days, TranslationWidth.Narrow, FormStyle.Standalone);\n break;\n case 'cccccc':\n formatter = dateStrGetter(TranslationType.Days, TranslationWidth.Short, FormStyle.Standalone);\n break;\n // Day of the Week\n case 'E':\n case 'EE':\n case 'EEE':\n formatter = dateStrGetter(TranslationType.Days, TranslationWidth.Abbreviated);\n break;\n case 'EEEE':\n formatter = dateStrGetter(TranslationType.Days, TranslationWidth.Wide);\n break;\n case 'EEEEE':\n formatter = dateStrGetter(TranslationType.Days, TranslationWidth.Narrow);\n break;\n case 'EEEEEE':\n formatter = dateStrGetter(TranslationType.Days, TranslationWidth.Short);\n break;\n // Generic period of the day (am-pm)\n case 'a':\n case 'aa':\n case 'aaa':\n formatter = dateStrGetter(TranslationType.DayPeriods, TranslationWidth.Abbreviated);\n break;\n case 'aaaa':\n formatter = dateStrGetter(TranslationType.DayPeriods, TranslationWidth.Wide);\n break;\n case 'aaaaa':\n formatter = dateStrGetter(TranslationType.DayPeriods, TranslationWidth.Narrow);\n break;\n // Extended period of the day (midnight, at night, ...), standalone\n case 'b':\n case 'bb':\n case 'bbb':\n formatter = dateStrGetter(TranslationType.DayPeriods, TranslationWidth.Abbreviated, FormStyle.Standalone, true);\n break;\n case 'bbbb':\n formatter = dateStrGetter(TranslationType.DayPeriods, TranslationWidth.Wide, FormStyle.Standalone, true);\n break;\n case 'bbbbb':\n formatter = dateStrGetter(TranslationType.DayPeriods, TranslationWidth.Narrow, FormStyle.Standalone, true);\n break;\n // Extended period of the day (midnight, night, ...), standalone\n case 'B':\n case 'BB':\n case 'BBB':\n formatter = dateStrGetter(TranslationType.DayPeriods, TranslationWidth.Abbreviated, FormStyle.Format, true);\n break;\n case 'BBBB':\n formatter =\n dateStrGetter(TranslationType.DayPeriods, TranslationWidth.Wide, FormStyle.Format, true);\n break;\n case 'BBBBB':\n formatter = dateStrGetter(TranslationType.DayPeriods, TranslationWidth.Narrow, FormStyle.Format, true);\n break;\n // Hour in AM/PM, (1-12)\n case 'h':\n formatter = dateGetter(DateType.Hours, 1, -12);\n break;\n case 'hh':\n formatter = dateGetter(DateType.Hours, 2, -12);\n break;\n // Hour of the day (0-23)\n case 'H':\n formatter = dateGetter(DateType.Hours, 1);\n break;\n // Hour in day, padded (00-23)\n case 'HH':\n formatter = dateGetter(DateType.Hours, 2);\n break;\n // Minute of the hour (0-59)\n case 'm':\n formatter = dateGetter(DateType.Minutes, 1);\n break;\n case 'mm':\n formatter = dateGetter(DateType.Minutes, 2);\n break;\n // Second of the minute (0-59)\n case 's':\n formatter = dateGetter(DateType.Seconds, 1);\n break;\n case 'ss':\n formatter = dateGetter(DateType.Seconds, 2);\n break;\n // Fractional second\n case 'S':\n formatter = dateGetter(DateType.FractionalSeconds, 1);\n break;\n case 'SS':\n formatter = dateGetter(DateType.FractionalSeconds, 2);\n break;\n case 'SSS':\n formatter = dateGetter(DateType.FractionalSeconds, 3);\n break;\n // Timezone ISO8601 short format (-0430)\n case 'Z':\n case 'ZZ':\n case 'ZZZ':\n formatter = timeZoneGetter(ZoneWidth.Short);\n break;\n // Timezone ISO8601 extended format (-04:30)\n case 'ZZZZZ':\n formatter = timeZoneGetter(ZoneWidth.Extended);\n break;\n // Timezone GMT short format (GMT+4)\n case 'O':\n case 'OO':\n case 'OOO':\n // Should be location, but fallback to format O instead because we don't have the data yet\n case 'z':\n case 'zz':\n case 'zzz':\n formatter = timeZoneGetter(ZoneWidth.ShortGMT);\n break;\n // Timezone GMT long format (GMT+0430)\n case 'OOOO':\n case 'ZZZZ':\n // Should be location, but fallback to format O instead because we don't have the data yet\n case 'zzzz':\n formatter = timeZoneGetter(ZoneWidth.Long);\n break;\n default:\n return null;\n }\n DATE_FORMATS[format] = formatter;\n return formatter;\n}\nfunction timezoneToOffset(timezone, fallback) {\n // Support: IE 11 only, Edge 13-15+\n // IE/Edge do not \"understand\" colon (`:`) in timezone\n timezone = timezone.replace(/:/g, '');\n const requestedTimezoneOffset = Date.parse('Jan 01, 1970 00:00:00 ' + timezone) / 60000;\n return isNaN(requestedTimezoneOffset) ? fallback : requestedTimezoneOffset;\n}\nfunction addDateMinutes(date, minutes) {\n date = new Date(date.getTime());\n date.setMinutes(date.getMinutes() + minutes);\n return date;\n}\nfunction convertTimezoneToLocal(date, timezone, reverse) {\n const reverseValue = reverse ? -1 : 1;\n const dateTimezoneOffset = date.getTimezoneOffset();\n const timezoneOffset = timezoneToOffset(timezone, dateTimezoneOffset);\n return addDateMinutes(date, reverseValue * (timezoneOffset - dateTimezoneOffset));\n}\n/**\n * Converts a value to date.\n *\n * Supported input formats:\n * - `Date`\n * - number: timestamp\n * - string: numeric (e.g. \"1234\"), ISO and date strings in a format supported by\n * [Date.parse()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/parse).\n * Note: ISO strings without time return a date without timeoffset.\n *\n * Throws if unable to convert to a date.\n */\nfunction toDate(value) {\n if (isDate(value)) {\n return value;\n }\n if (typeof value === 'number' && !isNaN(value)) {\n return new Date(value);\n }\n if (typeof value === 'string') {\n value = value.trim();\n if (/^(\\d{4}(-\\d{1,2}(-\\d{1,2})?)?)$/.test(value)) {\n /* For ISO Strings without time the day, month and year must be extracted from the ISO String\n before Date creation to avoid time offset and errors in the new Date.\n If we only replace '-' with ',' in the ISO String (\"2015,01,01\"), and try to create a new\n date, some browsers (e.g. IE 9) will throw an invalid Date error.\n If we leave the '-' (\"2015-01-01\") and try to create a new Date(\"2015-01-01\") the timeoffset\n is applied.\n Note: ISO months are 0 for January, 1 for February, ... */\n const [y, m = 1, d = 1] = value.split('-').map((val) => +val);\n return createDate(y, m - 1, d);\n }\n const parsedNb = parseFloat(value);\n // any string that only contains numbers, like \"1234\" but not like \"1234hello\"\n if (!isNaN(value - parsedNb)) {\n return new Date(parsedNb);\n }\n let match;\n if (match = value.match(ISO8601_DATE_REGEX)) {\n return isoStringToDate(match);\n }\n }\n const date = new Date(value);\n if (!isDate(date)) {\n throw new Error(`Unable to convert \"${value}\" into a date`);\n }\n return date;\n}\n/**\n * Converts a date in ISO8601 to a Date.\n * Used instead of `Date.parse` because of browser discrepancies.\n */\nfunction isoStringToDate(match) {\n const date = new Date(0);\n let tzHour = 0;\n let tzMin = 0;\n // match[8] means that the string contains \"Z\" (UTC) or a timezone like \"+01:00\" or \"+0100\"\n const dateSetter = match[8] ? date.setUTCFullYear : date.setFullYear;\n const timeSetter = match[8] ? date.setUTCHours : date.setHours;\n // if there is a timezone defined like \"+01:00\" or \"+0100\"\n if (match[9]) {\n tzHour = Number(match[9] + match[10]);\n tzMin = Number(match[9] + match[11]);\n }\n dateSetter.call(date, Number(match[1]), Number(match[2]) - 1, Number(match[3]));\n const h = Number(match[4] || 0) - tzHour;\n const m = Number(match[5] || 0) - tzMin;\n const s = Number(match[6] || 0);\n // The ECMAScript specification (https://www.ecma-international.org/ecma-262/5.1/#sec-15.9.1.11)\n // defines that `DateTime` milliseconds should always be rounded down, so that `999.9ms`\n // becomes `999ms`.\n const ms = Math.floor(parseFloat('0.' + (match[7] || 0)) * 1000);\n timeSetter.call(date, h, m, s, ms);\n return date;\n}\nfunction isDate(value) {\n return value instanceof Date && !isNaN(value.valueOf());\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst NUMBER_FORMAT_REGEXP = /^(\\d+)?\\.((\\d+)(-(\\d+))?)?$/;\nconst MAX_DIGITS = 22;\nconst DECIMAL_SEP = '.';\nconst ZERO_CHAR = '0';\nconst PATTERN_SEP = ';';\nconst GROUP_SEP = ',';\nconst DIGIT_CHAR = '#';\nconst CURRENCY_CHAR = '¤';\nconst PERCENT_CHAR = '%';\n/**\n * Transforms a number to a locale string based on a style and a format.\n */\nfunction formatNumberToLocaleString(value, pattern, locale, groupSymbol, decimalSymbol, digitsInfo, isPercent = false) {\n let formattedText = '';\n let isZero = false;\n if (!isFinite(value)) {\n formattedText = getLocaleNumberSymbol(locale, NumberSymbol.Infinity);\n }\n else {\n let parsedNumber = parseNumber(value);\n if (isPercent) {\n parsedNumber = toPercent(parsedNumber);\n }\n let minInt = pattern.minInt;\n let minFraction = pattern.minFrac;\n let maxFraction = pattern.maxFrac;\n if (digitsInfo) {\n const parts = digitsInfo.match(NUMBER_FORMAT_REGEXP);\n if (parts === null) {\n throw new Error(`${digitsInfo} is not a valid digit info`);\n }\n const minIntPart = parts[1];\n const minFractionPart = parts[3];\n const maxFractionPart = parts[5];\n if (minIntPart != null) {\n minInt = parseIntAutoRadix(minIntPart);\n }\n if (minFractionPart != null) {\n minFraction = parseIntAutoRadix(minFractionPart);\n }\n if (maxFractionPart != null) {\n maxFraction = parseIntAutoRadix(maxFractionPart);\n }\n else if (minFractionPart != null && minFraction > maxFraction) {\n maxFraction = minFraction;\n }\n }\n roundNumber(parsedNumber, minFraction, maxFraction);\n let digits = parsedNumber.digits;\n let integerLen = parsedNumber.integerLen;\n const exponent = parsedNumber.exponent;\n let decimals = [];\n isZero = digits.every(d => !d);\n // pad zeros for small numbers\n for (; integerLen < minInt; integerLen++) {\n digits.unshift(0);\n }\n // pad zeros for small numbers\n for (; integerLen < 0; integerLen++) {\n digits.unshift(0);\n }\n // extract decimals digits\n if (integerLen > 0) {\n decimals = digits.splice(integerLen, digits.length);\n }\n else {\n decimals = digits;\n digits = [0];\n }\n // format the integer digits with grouping separators\n const groups = [];\n if (digits.length >= pattern.lgSize) {\n groups.unshift(digits.splice(-pattern.lgSize, digits.length).join(''));\n }\n while (digits.length > pattern.gSize) {\n groups.unshift(digits.splice(-pattern.gSize, digits.length).join(''));\n }\n if (digits.length) {\n groups.unshift(digits.join(''));\n }\n formattedText = groups.join(getLocaleNumberSymbol(locale, groupSymbol));\n // append the decimal digits\n if (decimals.length) {\n formattedText += getLocaleNumberSymbol(locale, decimalSymbol) + decimals.join('');\n }\n if (exponent) {\n formattedText += getLocaleNumberSymbol(locale, NumberSymbol.Exponential) + '+' + exponent;\n }\n }\n if (value < 0 && !isZero) {\n formattedText = pattern.negPre + formattedText + pattern.negSuf;\n }\n else {\n formattedText = pattern.posPre + formattedText + pattern.posSuf;\n }\n return formattedText;\n}\n/**\n * @ngModule CommonModule\n * @description\n *\n * Formats a number as currency using locale rules.\n *\n * @param value The number to format.\n * @param locale A locale code for the locale format rules to use.\n * @param currency A string containing the currency symbol or its name,\n * such as \"$\" or \"Canadian Dollar\". Used in output string, but does not affect the operation\n * of the function.\n * @param currencyCode The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217)\n * currency code, such as `USD` for the US dollar and `EUR` for the euro.\n * Used to determine the number of digits in the decimal part.\n * @param digitsInfo Decimal representation options, specified by a string in the following format:\n * `{minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}`. See `DecimalPipe` for more details.\n *\n * @returns The formatted currency value.\n *\n * @see `formatNumber()`\n * @see `DecimalPipe`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction formatCurrency(value, locale, currency, currencyCode, digitsInfo) {\n const format = getLocaleNumberFormat(locale, NumberFormatStyle.Currency);\n const pattern = parseNumberFormat(format, getLocaleNumberSymbol(locale, NumberSymbol.MinusSign));\n pattern.minFrac = getNumberOfCurrencyDigits(currencyCode);\n pattern.maxFrac = pattern.minFrac;\n const res = formatNumberToLocaleString(value, pattern, locale, NumberSymbol.CurrencyGroup, NumberSymbol.CurrencyDecimal, digitsInfo);\n return res\n .replace(CURRENCY_CHAR, currency)\n // if we have 2 time the currency character, the second one is ignored\n .replace(CURRENCY_CHAR, '')\n // If there is a spacing between currency character and the value and\n // the currency character is supressed by passing an empty string, the\n // spacing character would remain as part of the string. Then we\n // should remove it.\n .trim();\n}\n/**\n * @ngModule CommonModule\n * @description\n *\n * Formats a number as a percentage according to locale rules.\n *\n * @param value The number to format.\n * @param locale A locale code for the locale format rules to use.\n * @param digitsInfo Decimal representation options, specified by a string in the following format:\n * `{minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}`. See `DecimalPipe` for more details.\n *\n * @returns The formatted percentage value.\n *\n * @see `formatNumber()`\n * @see `DecimalPipe`\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n * @publicApi\n *\n */\nfunction formatPercent(value, locale, digitsInfo) {\n const format = getLocaleNumberFormat(locale, NumberFormatStyle.Percent);\n const pattern = parseNumberFormat(format, getLocaleNumberSymbol(locale, NumberSymbol.MinusSign));\n const res = formatNumberToLocaleString(value, pattern, locale, NumberSymbol.Group, NumberSymbol.Decimal, digitsInfo, true);\n return res.replace(new RegExp(PERCENT_CHAR, 'g'), getLocaleNumberSymbol(locale, NumberSymbol.PercentSign));\n}\n/**\n * @ngModule CommonModule\n * @description\n *\n * Formats a number as text, with group sizing, separator, and other\n * parameters based on the locale.\n *\n * @param value The number to format.\n * @param locale A locale code for the locale format rules to use.\n * @param digitsInfo Decimal representation options, specified by a string in the following format:\n * `{minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}`. See `DecimalPipe` for more details.\n *\n * @returns The formatted text string.\n * @see [Internationalization (i18n) Guide](https://angular.io/guide/i18n-overview)\n *\n * @publicApi\n */\nfunction formatNumber(value, locale, digitsInfo) {\n const format = getLocaleNumberFormat(locale, NumberFormatStyle.Decimal);\n const pattern = parseNumberFormat(format, getLocaleNumberSymbol(locale, NumberSymbol.MinusSign));\n return formatNumberToLocaleString(value, pattern, locale, NumberSymbol.Group, NumberSymbol.Decimal, digitsInfo);\n}\nfunction parseNumberFormat(format, minusSign = '-') {\n const p = {\n minInt: 1,\n minFrac: 0,\n maxFrac: 0,\n posPre: '',\n posSuf: '',\n negPre: '',\n negSuf: '',\n gSize: 0,\n lgSize: 0\n };\n const patternParts = format.split(PATTERN_SEP);\n const positive = patternParts[0];\n const negative = patternParts[1];\n const positiveParts = positive.indexOf(DECIMAL_SEP) !== -1 ?\n positive.split(DECIMAL_SEP) :\n [\n positive.substring(0, positive.lastIndexOf(ZERO_CHAR) + 1),\n positive.substring(positive.lastIndexOf(ZERO_CHAR) + 1)\n ], integer = positiveParts[0], fraction = positiveParts[1] || '';\n p.posPre = integer.substr(0, integer.indexOf(DIGIT_CHAR));\n for (let i = 0; i < fraction.length; i++) {\n const ch = fraction.charAt(i);\n if (ch === ZERO_CHAR) {\n p.minFrac = p.maxFrac = i + 1;\n }\n else if (ch === DIGIT_CHAR) {\n p.maxFrac = i + 1;\n }\n else {\n p.posSuf += ch;\n }\n }\n const groups = integer.split(GROUP_SEP);\n p.gSize = groups[1] ? groups[1].length : 0;\n p.lgSize = (groups[2] || groups[1]) ? (groups[2] || groups[1]).length : 0;\n if (negative) {\n const trunkLen = positive.length - p.posPre.length - p.posSuf.length, pos = negative.indexOf(DIGIT_CHAR);\n p.negPre = negative.substr(0, pos).replace(/'/g, '');\n p.negSuf = negative.substr(pos + trunkLen).replace(/'/g, '');\n }\n else {\n p.negPre = minusSign + p.posPre;\n p.negSuf = p.posSuf;\n }\n return p;\n}\n// Transforms a parsed number into a percentage by multiplying it by 100\nfunction toPercent(parsedNumber) {\n // if the number is 0, don't do anything\n if (parsedNumber.digits[0] === 0) {\n return parsedNumber;\n }\n // Getting the current number of decimals\n const fractionLen = parsedNumber.digits.length - parsedNumber.integerLen;\n if (parsedNumber.exponent) {\n parsedNumber.exponent += 2;\n }\n else {\n if (fractionLen === 0) {\n parsedNumber.digits.push(0, 0);\n }\n else if (fractionLen === 1) {\n parsedNumber.digits.push(0);\n }\n parsedNumber.integerLen += 2;\n }\n return parsedNumber;\n}\n/**\n * Parses a number.\n * Significant bits of this parse algorithm came from https://github.com/MikeMcl/big.js/\n */\nfunction parseNumber(num) {\n let numStr = Math.abs(num) + '';\n let exponent = 0, digits, integerLen;\n let i, j, zeros;\n // Decimal point?\n if ((integerLen = numStr.indexOf(DECIMAL_SEP)) > -1) {\n numStr = numStr.replace(DECIMAL_SEP, '');\n }\n // Exponential form?\n if ((i = numStr.search(/e/i)) > 0) {\n // Work out the exponent.\n if (integerLen < 0)\n integerLen = i;\n integerLen += +numStr.slice(i + 1);\n numStr = numStr.substring(0, i);\n }\n else if (integerLen < 0) {\n // There was no decimal point or exponent so it is an integer.\n integerLen = numStr.length;\n }\n // Count the number of leading zeros.\n for (i = 0; numStr.charAt(i) === ZERO_CHAR; i++) { /* empty */\n }\n if (i === (zeros = numStr.length)) {\n // The digits are all zero.\n digits = [0];\n integerLen = 1;\n }\n else {\n // Count the number of trailing zeros\n zeros--;\n while (numStr.charAt(zeros) === ZERO_CHAR)\n zeros--;\n // Trailing zeros are insignificant so ignore them\n integerLen -= i;\n digits = [];\n // Convert string to array of digits without leading/trailing zeros.\n for (j = 0; i <= zeros; i++, j++) {\n digits[j] = Number(numStr.charAt(i));\n }\n }\n // If the number overflows the maximum allowed digits then use an exponent.\n if (integerLen > MAX_DIGITS) {\n digits = digits.splice(0, MAX_DIGITS - 1);\n exponent = integerLen - 1;\n integerLen = 1;\n }\n return { digits, exponent, integerLen };\n}\n/**\n * Round the parsed number to the specified number of decimal places\n * This function changes the parsedNumber in-place\n */\nfunction roundNumber(parsedNumber, minFrac, maxFrac) {\n if (minFrac > maxFrac) {\n throw new Error(`The minimum number of digits after fraction (${minFrac}) is higher than the maximum (${maxFrac}).`);\n }\n let digits = parsedNumber.digits;\n let fractionLen = digits.length - parsedNumber.integerLen;\n const fractionSize = Math.min(Math.max(minFrac, fractionLen), maxFrac);\n // The index of the digit to where rounding is to occur\n let roundAt = fractionSize + parsedNumber.integerLen;\n let digit = digits[roundAt];\n if (roundAt > 0) {\n // Drop fractional digits beyond `roundAt`\n digits.splice(Math.max(parsedNumber.integerLen, roundAt));\n // Set non-fractional digits beyond `roundAt` to 0\n for (let j = roundAt; j < digits.length; j++) {\n digits[j] = 0;\n }\n }\n else {\n // We rounded to zero so reset the parsedNumber\n fractionLen = Math.max(0, fractionLen);\n parsedNumber.integerLen = 1;\n digits.length = Math.max(1, roundAt = fractionSize + 1);\n digits[0] = 0;\n for (let i = 1; i < roundAt; i++)\n digits[i] = 0;\n }\n if (digit >= 5) {\n if (roundAt - 1 < 0) {\n for (let k = 0; k > roundAt; k--) {\n digits.unshift(0);\n parsedNumber.integerLen++;\n }\n digits.unshift(1);\n parsedNumber.integerLen++;\n }\n else {\n digits[roundAt - 1]++;\n }\n }\n // Pad out with zeros to get the required fraction length\n for (; fractionLen < Math.max(0, fractionSize); fractionLen++)\n digits.push(0);\n let dropTrailingZeros = fractionSize !== 0;\n // Minimal length = nb of decimals required + current nb of integers\n // Any number besides that is optional and can be removed if it's a trailing 0\n const minLen = minFrac + parsedNumber.integerLen;\n // Do any carrying, e.g. a digit was rounded up to 10\n const carry = digits.reduceRight(function (carry, d, i, digits) {\n d = d + carry;\n digits[i] = d < 10 ? d : d - 10; // d % 10\n if (dropTrailingZeros) {\n // Do not keep meaningless fractional trailing zeros (e.g. 15.52000 --> 15.52)\n if (digits[i] === 0 && i >= minLen) {\n digits.pop();\n }\n else {\n dropTrailingZeros = false;\n }\n }\n return d >= 10 ? 1 : 0; // Math.floor(d / 10);\n }, 0);\n if (carry) {\n digits.unshift(carry);\n parsedNumber.integerLen++;\n }\n}\nfunction parseIntAutoRadix(text) {\n const result = parseInt(text);\n if (isNaN(result)) {\n throw new Error('Invalid integer literal when parsing ' + text);\n }\n return result;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @publicApi\n */\nclass NgLocalization {\n}\nNgLocalization.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgLocalization, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nNgLocalization.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgLocalization, providedIn: 'root', useFactory: (locale) => new NgLocaleLocalization(locale), deps: [{ token: LOCALE_ID }] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgLocalization, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n useFactory: (locale) => new NgLocaleLocalization(locale),\n deps: [LOCALE_ID],\n }]\n }] });\n/**\n * Returns the plural category for a given value.\n * - \"=value\" when the case exists,\n * - the plural category otherwise\n */\nfunction getPluralCategory(value, cases, ngLocalization, locale) {\n let key = `=${value}`;\n if (cases.indexOf(key) > -1) {\n return key;\n }\n key = ngLocalization.getPluralCategory(value, locale);\n if (cases.indexOf(key) > -1) {\n return key;\n }\n if (cases.indexOf('other') > -1) {\n return 'other';\n }\n throw new Error(`No plural message found for value \"${value}\"`);\n}\n/**\n * Returns the plural case based on the locale\n *\n * @publicApi\n */\nclass NgLocaleLocalization extends NgLocalization {\n constructor(locale) {\n super();\n this.locale = locale;\n }\n getPluralCategory(value, locale) {\n const plural = getLocalePluralCase(locale || this.locale)(value);\n switch (plural) {\n case Plural.Zero:\n return 'zero';\n case Plural.One:\n return 'one';\n case Plural.Two:\n return 'two';\n case Plural.Few:\n return 'few';\n case Plural.Many:\n return 'many';\n default:\n return 'other';\n }\n }\n}\nNgLocaleLocalization.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgLocaleLocalization, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable });\nNgLocaleLocalization.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgLocaleLocalization });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgLocaleLocalization, decorators: [{\n type: Injectable\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [LOCALE_ID]\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Register global data to be used internally by Angular. See the\n * [\"I18n guide\"](guide/i18n-common-format-data-locale) to know how to import additional locale\n * data.\n *\n * The signature registerLocaleData(data: any, extraData?: any) is deprecated since v5.1\n *\n * @publicApi\n */\nfunction registerLocaleData(data, localeId, extraData) {\n return ɵregisterLocaleData(data, localeId, extraData);\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction parseCookieValue(cookieStr, name) {\n name = encodeURIComponent(name);\n for (const cookie of cookieStr.split(';')) {\n const eqIndex = cookie.indexOf('=');\n const [cookieName, cookieValue] = eqIndex == -1 ? [cookie, ''] : [cookie.slice(0, eqIndex), cookie.slice(eqIndex + 1)];\n if (cookieName.trim() === name) {\n return decodeURIComponent(cookieValue);\n }\n }\n return null;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @ngModule CommonModule\n *\n * @usageNotes\n * ```\n * ...\n *\n * ...\n *\n * ...\n *\n * ...\n *\n * ...\n * ```\n *\n * @description\n *\n * Adds and removes CSS classes on an HTML element.\n *\n * The CSS classes are updated as follows, depending on the type of the expression evaluation:\n * - `string` - the CSS classes listed in the string (space delimited) are added,\n * - `Array` - the CSS classes declared as Array elements are added,\n * - `Object` - keys are CSS classes that get added when the expression given in the value\n * evaluates to a truthy value, otherwise they are removed.\n *\n * @publicApi\n */\nclass NgClass {\n constructor(_iterableDiffers, _keyValueDiffers, _ngEl, _renderer) {\n this._iterableDiffers = _iterableDiffers;\n this._keyValueDiffers = _keyValueDiffers;\n this._ngEl = _ngEl;\n this._renderer = _renderer;\n this._iterableDiffer = null;\n this._keyValueDiffer = null;\n this._initialClasses = [];\n this._rawClass = null;\n }\n set klass(value) {\n this._removeClasses(this._initialClasses);\n this._initialClasses = typeof value === 'string' ? value.split(/\\s+/) : [];\n this._applyClasses(this._initialClasses);\n this._applyClasses(this._rawClass);\n }\n set ngClass(value) {\n this._removeClasses(this._rawClass);\n this._applyClasses(this._initialClasses);\n this._iterableDiffer = null;\n this._keyValueDiffer = null;\n this._rawClass = typeof value === 'string' ? value.split(/\\s+/) : value;\n if (this._rawClass) {\n if (ɵisListLikeIterable(this._rawClass)) {\n this._iterableDiffer = this._iterableDiffers.find(this._rawClass).create();\n }\n else {\n this._keyValueDiffer = this._keyValueDiffers.find(this._rawClass).create();\n }\n }\n }\n ngDoCheck() {\n if (this._iterableDiffer) {\n const iterableChanges = this._iterableDiffer.diff(this._rawClass);\n if (iterableChanges) {\n this._applyIterableChanges(iterableChanges);\n }\n }\n else if (this._keyValueDiffer) {\n const keyValueChanges = this._keyValueDiffer.diff(this._rawClass);\n if (keyValueChanges) {\n this._applyKeyValueChanges(keyValueChanges);\n }\n }\n }\n _applyKeyValueChanges(changes) {\n changes.forEachAddedItem((record) => this._toggleClass(record.key, record.currentValue));\n changes.forEachChangedItem((record) => this._toggleClass(record.key, record.currentValue));\n changes.forEachRemovedItem((record) => {\n if (record.previousValue) {\n this._toggleClass(record.key, false);\n }\n });\n }\n _applyIterableChanges(changes) {\n changes.forEachAddedItem((record) => {\n if (typeof record.item === 'string') {\n this._toggleClass(record.item, true);\n }\n else {\n throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${ɵstringify(record.item)}`);\n }\n });\n changes.forEachRemovedItem((record) => this._toggleClass(record.item, false));\n }\n /**\n * Applies a collection of CSS classes to the DOM element.\n *\n * For argument of type Set and Array CSS class names contained in those collections are always\n * added.\n * For argument of type Map CSS class name in the map's key is toggled based on the value (added\n * for truthy and removed for falsy).\n */\n _applyClasses(rawClassVal) {\n if (rawClassVal) {\n if (Array.isArray(rawClassVal) || rawClassVal instanceof Set) {\n rawClassVal.forEach((klass) => this._toggleClass(klass, true));\n }\n else {\n Object.keys(rawClassVal).forEach(klass => this._toggleClass(klass, !!rawClassVal[klass]));\n }\n }\n }\n /**\n * Removes a collection of CSS classes from the DOM element. This is mostly useful for cleanup\n * purposes.\n */\n _removeClasses(rawClassVal) {\n if (rawClassVal) {\n if (Array.isArray(rawClassVal) || rawClassVal instanceof Set) {\n rawClassVal.forEach((klass) => this._toggleClass(klass, false));\n }\n else {\n Object.keys(rawClassVal).forEach(klass => this._toggleClass(klass, false));\n }\n }\n }\n _toggleClass(klass, enabled) {\n klass = klass.trim();\n if (klass) {\n klass.split(/\\s+/g).forEach(klass => {\n if (enabled) {\n this._renderer.addClass(this._ngEl.nativeElement, klass);\n }\n else {\n this._renderer.removeClass(this._ngEl.nativeElement, klass);\n }\n });\n }\n }\n}\nNgClass.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgClass, deps: [{ token: i0.IterableDiffers }, { token: i0.KeyValueDiffers }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });\nNgClass.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: NgClass, selector: \"[ngClass]\", inputs: { klass: [\"class\", \"klass\"], ngClass: \"ngClass\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgClass, decorators: [{\n type: Directive,\n args: [{ selector: '[ngClass]' }]\n }], ctorParameters: function () { return [{ type: i0.IterableDiffers }, { type: i0.KeyValueDiffers }, { type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { klass: [{\n type: Input,\n args: ['class']\n }], ngClass: [{\n type: Input,\n args: ['ngClass']\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Instantiates a {@link Component} type and inserts its Host View into the current View.\n * `NgComponentOutlet` provides a declarative approach for dynamic component creation.\n *\n * `NgComponentOutlet` requires a component type, if a falsy value is set the view will clear and\n * any existing component will be destroyed.\n *\n * @usageNotes\n *\n * ### Fine tune control\n *\n * You can control the component creation process by using the following optional attributes:\n *\n * * `ngComponentOutletInjector`: Optional custom {@link Injector} that will be used as parent for\n * the Component. Defaults to the injector of the current view container.\n *\n * * `ngComponentOutletContent`: Optional list of projectable nodes to insert into the content\n * section of the component, if it exists.\n *\n * * `ngComponentOutletNgModuleFactory`: Optional module factory to allow loading another\n * module dynamically, then loading a component from that module.\n *\n * ### Syntax\n *\n * Simple\n * ```\n * \n * ```\n *\n * Customized injector/content\n * ```\n * \n * \n * ```\n *\n * Customized ngModuleFactory\n * ```\n * \n * \n * ```\n *\n * ### A simple example\n *\n * {@example common/ngComponentOutlet/ts/module.ts region='SimpleExample'}\n *\n * A more complete example with additional options:\n *\n * {@example common/ngComponentOutlet/ts/module.ts region='CompleteExample'}\n *\n * @publicApi\n * @ngModule CommonModule\n */\nclass NgComponentOutlet {\n constructor(_viewContainerRef) {\n this._viewContainerRef = _viewContainerRef;\n this._componentRef = null;\n this._moduleRef = null;\n }\n /** @nodoc */\n ngOnChanges(changes) {\n this._viewContainerRef.clear();\n this._componentRef = null;\n if (this.ngComponentOutlet) {\n const elInjector = this.ngComponentOutletInjector || this._viewContainerRef.parentInjector;\n if (changes['ngComponentOutletNgModuleFactory']) {\n if (this._moduleRef)\n this._moduleRef.destroy();\n if (this.ngComponentOutletNgModuleFactory) {\n const parentModule = elInjector.get(NgModuleRef);\n this._moduleRef = this.ngComponentOutletNgModuleFactory.create(parentModule.injector);\n }\n else {\n this._moduleRef = null;\n }\n }\n const componentFactoryResolver = this._moduleRef ? this._moduleRef.componentFactoryResolver :\n elInjector.get(ComponentFactoryResolver);\n const componentFactory = componentFactoryResolver.resolveComponentFactory(this.ngComponentOutlet);\n this._componentRef = this._viewContainerRef.createComponent(componentFactory, this._viewContainerRef.length, elInjector, this.ngComponentOutletContent);\n }\n }\n /** @nodoc */\n ngOnDestroy() {\n if (this._moduleRef)\n this._moduleRef.destroy();\n }\n}\nNgComponentOutlet.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgComponentOutlet, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });\nNgComponentOutlet.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: NgComponentOutlet, selector: \"[ngComponentOutlet]\", inputs: { ngComponentOutlet: \"ngComponentOutlet\", ngComponentOutletInjector: \"ngComponentOutletInjector\", ngComponentOutletContent: \"ngComponentOutletContent\", ngComponentOutletNgModuleFactory: \"ngComponentOutletNgModuleFactory\" }, usesOnChanges: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgComponentOutlet, decorators: [{\n type: Directive,\n args: [{ selector: '[ngComponentOutlet]' }]\n }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { ngComponentOutlet: [{\n type: Input\n }], ngComponentOutletInjector: [{\n type: Input\n }], ngComponentOutletContent: [{\n type: Input\n }], ngComponentOutletNgModuleFactory: [{\n type: Input\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @publicApi\n */\nclass NgForOfContext {\n constructor($implicit, ngForOf, index, count) {\n this.$implicit = $implicit;\n this.ngForOf = ngForOf;\n this.index = index;\n this.count = count;\n }\n get first() {\n return this.index === 0;\n }\n get last() {\n return this.index === this.count - 1;\n }\n get even() {\n return this.index % 2 === 0;\n }\n get odd() {\n return !this.even;\n }\n}\n/**\n * A [structural directive](guide/structural-directives) that renders\n * a template for each item in a collection.\n * The directive is placed on an element, which becomes the parent\n * of the cloned templates.\n *\n * The `ngForOf` directive is generally used in the\n * [shorthand form](guide/structural-directives#asterisk) `*ngFor`.\n * In this form, the template to be rendered for each iteration is the content\n * of an anchor element containing the directive.\n *\n * The following example shows the shorthand syntax with some options,\n * contained in an `
  • ` element.\n *\n * ```\n *
  • ...
  • \n * ```\n *\n * The shorthand form expands into a long form that uses the `ngForOf` selector\n * on an `` element.\n * The content of the `` element is the `
  • ` element that held the\n * short-form directive.\n *\n * Here is the expanded version of the short-form example.\n *\n * ```\n * \n *
  • ...
  • \n *
    \n * ```\n *\n * Angular automatically expands the shorthand syntax as it compiles the template.\n * The context for each embedded view is logically merged to the current component\n * context according to its lexical position.\n *\n * When using the shorthand syntax, Angular allows only [one structural directive\n * on an element](guide/built-in-directives#one-per-element).\n * If you want to iterate conditionally, for example,\n * put the `*ngIf` on a container element that wraps the `*ngFor` element.\n * For futher discussion, see\n * [Structural Directives](guide/built-in-directives#one-per-element).\n *\n * @usageNotes\n *\n * ### Local variables\n *\n * `NgForOf` provides exported values that can be aliased to local variables.\n * For example:\n *\n * ```\n *
  • \n * {{i}}/{{users.length}}. {{user}} default\n *
  • \n * ```\n *\n * The following exported values can be aliased to local variables:\n *\n * - `$implicit: T`: The value of the individual items in the iterable (`ngForOf`).\n * - `ngForOf: NgIterable`: The value of the iterable expression. Useful when the expression is\n * more complex then a property access, for example when using the async pipe (`userStreams |\n * async`).\n * - `index: number`: The index of the current item in the iterable.\n * - `count: number`: The length of the iterable.\n * - `first: boolean`: True when the item is the first item in the iterable.\n * - `last: boolean`: True when the item is the last item in the iterable.\n * - `even: boolean`: True when the item has an even index in the iterable.\n * - `odd: boolean`: True when the item has an odd index in the iterable.\n *\n * ### Change propagation\n *\n * When the contents of the iterator changes, `NgForOf` makes the corresponding changes to the DOM:\n *\n * * When an item is added, a new instance of the template is added to the DOM.\n * * When an item is removed, its template instance is removed from the DOM.\n * * When items are reordered, their respective templates are reordered in the DOM.\n *\n * Angular uses object identity to track insertions and deletions within the iterator and reproduce\n * those changes in the DOM. This has important implications for animations and any stateful\n * controls that are present, such as `` elements that accept user input. Inserted rows can\n * be animated in, deleted rows can be animated out, and unchanged rows retain any unsaved state\n * such as user input.\n * For more on animations, see [Transitions and Triggers](guide/transition-and-triggers).\n *\n * The identities of elements in the iterator can change while the data does not.\n * This can happen, for example, if the iterator is produced from an RPC to the server, and that\n * RPC is re-run. Even if the data hasn't changed, the second response produces objects with\n * different identities, and Angular must tear down the entire DOM and rebuild it (as if all old\n * elements were deleted and all new elements inserted).\n *\n * To avoid this expensive operation, you can customize the default tracking algorithm.\n * by supplying the `trackBy` option to `NgForOf`.\n * `trackBy` takes a function that has two arguments: `index` and `item`.\n * If `trackBy` is given, Angular tracks changes by the return value of the function.\n *\n * @see [Structural Directives](guide/structural-directives)\n * @ngModule CommonModule\n * @publicApi\n */\nclass NgForOf {\n constructor(_viewContainer, _template, _differs) {\n this._viewContainer = _viewContainer;\n this._template = _template;\n this._differs = _differs;\n this._ngForOf = null;\n this._ngForOfDirty = true;\n this._differ = null;\n }\n /**\n * The value of the iterable expression, which can be used as a\n * [template input variable](guide/structural-directives#shorthand).\n */\n set ngForOf(ngForOf) {\n this._ngForOf = ngForOf;\n this._ngForOfDirty = true;\n }\n /**\n * Specifies a custom `TrackByFunction` to compute the identity of items in an iterable.\n *\n * If a custom `TrackByFunction` is not provided, `NgForOf` will use the item's [object\n * identity](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is)\n * as the key.\n *\n * `NgForOf` uses the computed key to associate items in an iterable with DOM elements\n * it produces for these items.\n *\n * A custom `TrackByFunction` is useful to provide good user experience in cases when items in an\n * iterable rendered using `NgForOf` have a natural identifier (for example, custom ID or a\n * primary key), and this iterable could be updated with new object instances that still\n * represent the same underlying entity (for example, when data is re-fetched from the server,\n * and the iterable is recreated and re-rendered, but most of the data is still the same).\n *\n * @see `TrackByFunction`\n */\n set ngForTrackBy(fn) {\n if ((typeof ngDevMode === 'undefined' || ngDevMode) && fn != null && typeof fn !== 'function') {\n // TODO(vicb): use a log service once there is a public one available\n if (console && console.warn) {\n console.warn(`trackBy must be a function, but received ${JSON.stringify(fn)}. ` +\n `See https://angular.io/api/common/NgForOf#change-propagation for more information.`);\n }\n }\n this._trackByFn = fn;\n }\n get ngForTrackBy() {\n return this._trackByFn;\n }\n /**\n * A reference to the template that is stamped out for each item in the iterable.\n * @see [template reference variable](guide/template-reference-variables)\n */\n set ngForTemplate(value) {\n // TODO(TS2.1): make TemplateRef>> once we move to TS v2.1\n // The current type is too restrictive; a template that just uses index, for example,\n // should be acceptable.\n if (value) {\n this._template = value;\n }\n }\n /**\n * Applies the changes when needed.\n * @nodoc\n */\n ngDoCheck() {\n if (this._ngForOfDirty) {\n this._ngForOfDirty = false;\n // React on ngForOf changes only once all inputs have been initialized\n const value = this._ngForOf;\n if (!this._differ && value) {\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n try {\n // CAUTION: this logic is duplicated for production mode below, as the try-catch\n // is only present in development builds.\n this._differ = this._differs.find(value).create(this.ngForTrackBy);\n }\n catch (_a) {\n throw new Error(`Cannot find a differ supporting object '${value}' of type '${getTypeName(value)}'. NgFor only supports binding to Iterables such as Arrays.`);\n }\n }\n else {\n // CAUTION: this logic is duplicated for development mode above, as the try-catch\n // is only present in development builds.\n this._differ = this._differs.find(value).create(this.ngForTrackBy);\n }\n }\n }\n if (this._differ) {\n const changes = this._differ.diff(this._ngForOf);\n if (changes)\n this._applyChanges(changes);\n }\n }\n _applyChanges(changes) {\n const viewContainer = this._viewContainer;\n changes.forEachOperation((item, adjustedPreviousIndex, currentIndex) => {\n if (item.previousIndex == null) {\n // NgForOf is never \"null\" or \"undefined\" here because the differ detected\n // that a new item needs to be inserted from the iterable. This implies that\n // there is an iterable value for \"_ngForOf\".\n viewContainer.createEmbeddedView(this._template, new NgForOfContext(item.item, this._ngForOf, -1, -1), currentIndex === null ? undefined : currentIndex);\n }\n else if (currentIndex == null) {\n viewContainer.remove(adjustedPreviousIndex === null ? undefined : adjustedPreviousIndex);\n }\n else if (adjustedPreviousIndex !== null) {\n const view = viewContainer.get(adjustedPreviousIndex);\n viewContainer.move(view, currentIndex);\n applyViewChange(view, item);\n }\n });\n for (let i = 0, ilen = viewContainer.length; i < ilen; i++) {\n const viewRef = viewContainer.get(i);\n const context = viewRef.context;\n context.index = i;\n context.count = ilen;\n context.ngForOf = this._ngForOf;\n }\n changes.forEachIdentityChange((record) => {\n const viewRef = viewContainer.get(record.currentIndex);\n applyViewChange(viewRef, record);\n });\n }\n /**\n * Asserts the correct type of the context for the template that `NgForOf` will render.\n *\n * The presence of this method is a signal to the Ivy template type-check compiler that the\n * `NgForOf` structural directive renders its template with a specific context type.\n */\n static ngTemplateContextGuard(dir, ctx) {\n return true;\n }\n}\nNgForOf.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgForOf, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.IterableDiffers }], target: i0.ɵɵFactoryTarget.Directive });\nNgForOf.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: NgForOf, selector: \"[ngFor][ngForOf]\", inputs: { ngForOf: \"ngForOf\", ngForTrackBy: \"ngForTrackBy\", ngForTemplate: \"ngForTemplate\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgForOf, decorators: [{\n type: Directive,\n args: [{ selector: '[ngFor][ngForOf]' }]\n }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i0.IterableDiffers }]; }, propDecorators: { ngForOf: [{\n type: Input\n }], ngForTrackBy: [{\n type: Input\n }], ngForTemplate: [{\n type: Input\n }] } });\nfunction applyViewChange(view, record) {\n view.context.$implicit = record.item;\n}\nfunction getTypeName(type) {\n return type['name'] || typeof type;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * A structural directive that conditionally includes a template based on the value of\n * an expression coerced to Boolean.\n * When the expression evaluates to true, Angular renders the template\n * provided in a `then` clause, and when false or null,\n * Angular renders the template provided in an optional `else` clause. The default\n * template for the `else` clause is blank.\n *\n * A [shorthand form](guide/structural-directives#asterisk) of the directive,\n * `*ngIf=\"condition\"`, is generally used, provided\n * as an attribute of the anchor element for the inserted template.\n * Angular expands this into a more explicit version, in which the anchor element\n * is contained in an `` element.\n *\n * Simple form with shorthand syntax:\n *\n * ```\n *
    Content to render when condition is true.
    \n * ```\n *\n * Simple form with expanded syntax:\n *\n * ```\n *
    Content to render when condition is\n * true.
    \n * ```\n *\n * Form with an \"else\" block:\n *\n * ```\n *
    Content to render when condition is true.
    \n * Content to render when condition is false.\n * ```\n *\n * Shorthand form with \"then\" and \"else\" blocks:\n *\n * ```\n *
    \n * Content to render when condition is true.\n * Content to render when condition is false.\n * ```\n *\n * Form with storing the value locally:\n *\n * ```\n *
    {{value}}
    \n * Content to render when value is null.\n * ```\n *\n * @usageNotes\n *\n * The `*ngIf` directive is most commonly used to conditionally show an inline template,\n * as seen in the following example.\n * The default `else` template is blank.\n *\n * {@example common/ngIf/ts/module.ts region='NgIfSimple'}\n *\n * ### Showing an alternative template using `else`\n *\n * To display a template when `expression` evaluates to false, use an `else` template\n * binding as shown in the following example.\n * The `else` binding points to an `` element labeled `#elseBlock`.\n * The template can be defined anywhere in the component view, but is typically placed right after\n * `ngIf` for readability.\n *\n * {@example common/ngIf/ts/module.ts region='NgIfElse'}\n *\n * ### Using an external `then` template\n *\n * In the previous example, the then-clause template is specified inline, as the content of the\n * tag that contains the `ngIf` directive. You can also specify a template that is defined\n * externally, by referencing a labeled `` element. When you do this, you can\n * change which template to use at runtime, as shown in the following example.\n *\n * {@example common/ngIf/ts/module.ts region='NgIfThenElse'}\n *\n * ### Storing a conditional result in a variable\n *\n * You might want to show a set of properties from the same object. If you are waiting\n * for asynchronous data, the object can be undefined.\n * In this case, you can use `ngIf` and store the result of the condition in a local\n * variable as shown in the following example.\n *\n * {@example common/ngIf/ts/module.ts region='NgIfAs'}\n *\n * This code uses only one `AsyncPipe`, so only one subscription is created.\n * The conditional statement stores the result of `userStream|async` in the local variable `user`.\n * You can then bind the local `user` repeatedly.\n *\n * The conditional displays the data only if `userStream` returns a value,\n * so you don't need to use the\n * safe-navigation-operator (`?.`)\n * to guard against null values when accessing properties.\n * You can display an alternative template while waiting for the data.\n *\n * ### Shorthand syntax\n *\n * The shorthand syntax `*ngIf` expands into two separate template specifications\n * for the \"then\" and \"else\" clauses. For example, consider the following shorthand statement,\n * that is meant to show a loading page while waiting for data to be loaded.\n *\n * ```\n *
    \n * ...\n *
    \n *\n * \n *
    Loading...
    \n *
    \n * ```\n *\n * You can see that the \"else\" clause references the ``\n * with the `#loading` label, and the template for the \"then\" clause\n * is provided as the content of the anchor element.\n *\n * However, when Angular expands the shorthand syntax, it creates\n * another `` tag, with `ngIf` and `ngIfElse` directives.\n * The anchor element containing the template for the \"then\" clause becomes\n * the content of this unlabeled `` tag.\n *\n * ```\n * \n *
    \n * ...\n *
    \n *
    \n *\n * \n *
    Loading...
    \n *
    \n * ```\n *\n * The presence of the implicit template object has implications for the nesting of\n * structural directives. For more on this subject, see\n * [Structural Directives](https://angular.io/guide/built-in-directives#one-per-element).\n *\n * @ngModule CommonModule\n * @publicApi\n */\nclass NgIf {\n constructor(_viewContainer, templateRef) {\n this._viewContainer = _viewContainer;\n this._context = new NgIfContext();\n this._thenTemplateRef = null;\n this._elseTemplateRef = null;\n this._thenViewRef = null;\n this._elseViewRef = null;\n this._thenTemplateRef = templateRef;\n }\n /**\n * The Boolean expression to evaluate as the condition for showing a template.\n */\n set ngIf(condition) {\n this._context.$implicit = this._context.ngIf = condition;\n this._updateView();\n }\n /**\n * A template to show if the condition expression evaluates to true.\n */\n set ngIfThen(templateRef) {\n assertTemplate('ngIfThen', templateRef);\n this._thenTemplateRef = templateRef;\n this._thenViewRef = null; // clear previous view if any.\n this._updateView();\n }\n /**\n * A template to show if the condition expression evaluates to false.\n */\n set ngIfElse(templateRef) {\n assertTemplate('ngIfElse', templateRef);\n this._elseTemplateRef = templateRef;\n this._elseViewRef = null; // clear previous view if any.\n this._updateView();\n }\n _updateView() {\n if (this._context.$implicit) {\n if (!this._thenViewRef) {\n this._viewContainer.clear();\n this._elseViewRef = null;\n if (this._thenTemplateRef) {\n this._thenViewRef =\n this._viewContainer.createEmbeddedView(this._thenTemplateRef, this._context);\n }\n }\n }\n else {\n if (!this._elseViewRef) {\n this._viewContainer.clear();\n this._thenViewRef = null;\n if (this._elseTemplateRef) {\n this._elseViewRef =\n this._viewContainer.createEmbeddedView(this._elseTemplateRef, this._context);\n }\n }\n }\n }\n /**\n * Asserts the correct type of the context for the template that `NgIf` will render.\n *\n * The presence of this method is a signal to the Ivy template type-check compiler that the\n * `NgIf` structural directive renders its template with a specific context type.\n */\n static ngTemplateContextGuard(dir, ctx) {\n return true;\n }\n}\nNgIf.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgIf, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });\nNgIf.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: NgIf, selector: \"[ngIf]\", inputs: { ngIf: \"ngIf\", ngIfThen: \"ngIfThen\", ngIfElse: \"ngIfElse\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgIf, decorators: [{\n type: Directive,\n args: [{ selector: '[ngIf]' }]\n }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }]; }, propDecorators: { ngIf: [{\n type: Input\n }], ngIfThen: [{\n type: Input\n }], ngIfElse: [{\n type: Input\n }] } });\n/**\n * @publicApi\n */\nclass NgIfContext {\n constructor() {\n this.$implicit = null;\n this.ngIf = null;\n }\n}\nfunction assertTemplate(property, templateRef) {\n const isTemplateRefOrNull = !!(!templateRef || templateRef.createEmbeddedView);\n if (!isTemplateRefOrNull) {\n throw new Error(`${property} must be a TemplateRef, but received '${ɵstringify(templateRef)}'.`);\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass SwitchView {\n constructor(_viewContainerRef, _templateRef) {\n this._viewContainerRef = _viewContainerRef;\n this._templateRef = _templateRef;\n this._created = false;\n }\n create() {\n this._created = true;\n this._viewContainerRef.createEmbeddedView(this._templateRef);\n }\n destroy() {\n this._created = false;\n this._viewContainerRef.clear();\n }\n enforceState(created) {\n if (created && !this._created) {\n this.create();\n }\n else if (!created && this._created) {\n this.destroy();\n }\n }\n}\n/**\n * @ngModule CommonModule\n *\n * @description\n * The `[ngSwitch]` directive on a container specifies an expression to match against.\n * The expressions to match are provided by `ngSwitchCase` directives on views within the container.\n * - Every view that matches is rendered.\n * - If there are no matches, a view with the `ngSwitchDefault` directive is rendered.\n * - Elements within the `[NgSwitch]` statement but outside of any `NgSwitchCase`\n * or `ngSwitchDefault` directive are preserved at the location.\n *\n * @usageNotes\n * Define a container element for the directive, and specify the switch expression\n * to match against as an attribute:\n *\n * ```\n * \n * ```\n *\n * Within the container, `*ngSwitchCase` statements specify the match expressions\n * as attributes. Include `*ngSwitchDefault` as the final case.\n *\n * ```\n * \n * ...\n * ...\n * ...\n * \n * ```\n *\n * ### Usage Examples\n *\n * The following example shows how to use more than one case to display the same view:\n *\n * ```\n * \n * \n * ...\n * ...\n * ...\n * \n * ...\n * \n * ```\n *\n * The following example shows how cases can be nested:\n * ```\n * \n * ...\n * ...\n * ...\n * \n * \n * \n * \n * \n * ...\n * \n * ```\n *\n * @publicApi\n * @see `NgSwitchCase`\n * @see `NgSwitchDefault`\n * @see [Structural Directives](guide/structural-directives)\n *\n */\nclass NgSwitch {\n constructor() {\n this._defaultUsed = false;\n this._caseCount = 0;\n this._lastCaseCheckIndex = 0;\n this._lastCasesMatched = false;\n }\n set ngSwitch(newValue) {\n this._ngSwitch = newValue;\n if (this._caseCount === 0) {\n this._updateDefaultCases(true);\n }\n }\n /** @internal */\n _addCase() {\n return this._caseCount++;\n }\n /** @internal */\n _addDefault(view) {\n if (!this._defaultViews) {\n this._defaultViews = [];\n }\n this._defaultViews.push(view);\n }\n /** @internal */\n _matchCase(value) {\n const matched = value == this._ngSwitch;\n this._lastCasesMatched = this._lastCasesMatched || matched;\n this._lastCaseCheckIndex++;\n if (this._lastCaseCheckIndex === this._caseCount) {\n this._updateDefaultCases(!this._lastCasesMatched);\n this._lastCaseCheckIndex = 0;\n this._lastCasesMatched = false;\n }\n return matched;\n }\n _updateDefaultCases(useDefault) {\n if (this._defaultViews && useDefault !== this._defaultUsed) {\n this._defaultUsed = useDefault;\n for (let i = 0; i < this._defaultViews.length; i++) {\n const defaultView = this._defaultViews[i];\n defaultView.enforceState(useDefault);\n }\n }\n }\n}\nNgSwitch.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgSwitch, deps: [], target: i0.ɵɵFactoryTarget.Directive });\nNgSwitch.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: NgSwitch, selector: \"[ngSwitch]\", inputs: { ngSwitch: \"ngSwitch\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgSwitch, decorators: [{\n type: Directive,\n args: [{ selector: '[ngSwitch]' }]\n }], propDecorators: { ngSwitch: [{\n type: Input\n }] } });\n/**\n * @ngModule CommonModule\n *\n * @description\n * Provides a switch case expression to match against an enclosing `ngSwitch` expression.\n * When the expressions match, the given `NgSwitchCase` template is rendered.\n * If multiple match expressions match the switch expression value, all of them are displayed.\n *\n * @usageNotes\n *\n * Within a switch container, `*ngSwitchCase` statements specify the match expressions\n * as attributes. Include `*ngSwitchDefault` as the final case.\n *\n * ```\n * \n * ...\n * ...\n * ...\n * \n * ```\n *\n * Each switch-case statement contains an in-line HTML template or template reference\n * that defines the subtree to be selected if the value of the match expression\n * matches the value of the switch expression.\n *\n * Unlike JavaScript, which uses strict equality, Angular uses loose equality.\n * This means that the empty string, `\"\"` matches 0.\n *\n * @publicApi\n * @see `NgSwitch`\n * @see `NgSwitchDefault`\n *\n */\nclass NgSwitchCase {\n constructor(viewContainer, templateRef, ngSwitch) {\n this.ngSwitch = ngSwitch;\n if ((typeof ngDevMode === 'undefined' || ngDevMode) && !ngSwitch) {\n throwNgSwitchProviderNotFoundError('ngSwitchCase', 'NgSwitchCase');\n }\n ngSwitch._addCase();\n this._view = new SwitchView(viewContainer, templateRef);\n }\n /**\n * Performs case matching. For internal use only.\n * @nodoc\n */\n ngDoCheck() {\n this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase));\n }\n}\nNgSwitchCase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgSwitchCase, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: NgSwitch, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });\nNgSwitchCase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: NgSwitchCase, selector: \"[ngSwitchCase]\", inputs: { ngSwitchCase: \"ngSwitchCase\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgSwitchCase, decorators: [{\n type: Directive,\n args: [{ selector: '[ngSwitchCase]' }]\n }], ctorParameters: function () {\n return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: NgSwitch, decorators: [{\n type: Optional\n }, {\n type: Host\n }] }];\n }, propDecorators: { ngSwitchCase: [{\n type: Input\n }] } });\n/**\n * @ngModule CommonModule\n *\n * @description\n *\n * Creates a view that is rendered when no `NgSwitchCase` expressions\n * match the `NgSwitch` expression.\n * This statement should be the final case in an `NgSwitch`.\n *\n * @publicApi\n * @see `NgSwitch`\n * @see `NgSwitchCase`\n *\n */\nclass NgSwitchDefault {\n constructor(viewContainer, templateRef, ngSwitch) {\n if ((typeof ngDevMode === 'undefined' || ngDevMode) && !ngSwitch) {\n throwNgSwitchProviderNotFoundError('ngSwitchDefault', 'NgSwitchDefault');\n }\n ngSwitch._addDefault(new SwitchView(viewContainer, templateRef));\n }\n}\nNgSwitchDefault.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgSwitchDefault, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: NgSwitch, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });\nNgSwitchDefault.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: NgSwitchDefault, selector: \"[ngSwitchDefault]\", ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgSwitchDefault, decorators: [{\n type: Directive,\n args: [{ selector: '[ngSwitchDefault]' }]\n }], ctorParameters: function () {\n return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: NgSwitch, decorators: [{\n type: Optional\n }, {\n type: Host\n }] }];\n } });\nfunction throwNgSwitchProviderNotFoundError(attrName, directiveName) {\n throw new ɵRuntimeError(2000 /* PARENT_NG_SWITCH_NOT_FOUND */, `An element with the \"${attrName}\" attribute ` +\n `(matching the \"${directiveName}\" directive) must be located inside an element with the \"ngSwitch\" attribute ` +\n `(matching \"NgSwitch\" directive)`);\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @ngModule CommonModule\n *\n * @usageNotes\n * ```\n * \n * there is nothing\n * there is one\n * there are a few\n * \n * ```\n *\n * @description\n *\n * Adds / removes DOM sub-trees based on a numeric value. Tailored for pluralization.\n *\n * Displays DOM sub-trees that match the switch expression value, or failing that, DOM sub-trees\n * that match the switch expression's pluralization category.\n *\n * To use this directive you must provide a container element that sets the `[ngPlural]` attribute\n * to a switch expression. Inner elements with a `[ngPluralCase]` will display based on their\n * expression:\n * - if `[ngPluralCase]` is set to a value starting with `=`, it will only display if the value\n * matches the switch expression exactly,\n * - otherwise, the view will be treated as a \"category match\", and will only display if exact\n * value matches aren't found and the value maps to its category for the defined locale.\n *\n * See http://cldr.unicode.org/index/cldr-spec/plural-rules\n *\n * @publicApi\n */\nclass NgPlural {\n constructor(_localization) {\n this._localization = _localization;\n this._caseViews = {};\n }\n set ngPlural(value) {\n this._switchValue = value;\n this._updateView();\n }\n addCase(value, switchView) {\n this._caseViews[value] = switchView;\n }\n _updateView() {\n this._clearViews();\n const cases = Object.keys(this._caseViews);\n const key = getPluralCategory(this._switchValue, cases, this._localization);\n this._activateView(this._caseViews[key]);\n }\n _clearViews() {\n if (this._activeView)\n this._activeView.destroy();\n }\n _activateView(view) {\n if (view) {\n this._activeView = view;\n this._activeView.create();\n }\n }\n}\nNgPlural.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgPlural, deps: [{ token: NgLocalization }], target: i0.ɵɵFactoryTarget.Directive });\nNgPlural.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: NgPlural, selector: \"[ngPlural]\", inputs: { ngPlural: \"ngPlural\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgPlural, decorators: [{\n type: Directive,\n args: [{ selector: '[ngPlural]' }]\n }], ctorParameters: function () { return [{ type: NgLocalization }]; }, propDecorators: { ngPlural: [{\n type: Input\n }] } });\n/**\n * @ngModule CommonModule\n *\n * @description\n *\n * Creates a view that will be added/removed from the parent {@link NgPlural} when the\n * given expression matches the plural expression according to CLDR rules.\n *\n * @usageNotes\n * ```\n * \n * ...\n * ...\n * \n *```\n *\n * See {@link NgPlural} for more details and example.\n *\n * @publicApi\n */\nclass NgPluralCase {\n constructor(value, template, viewContainer, ngPlural) {\n this.value = value;\n const isANumber = !isNaN(Number(value));\n ngPlural.addCase(isANumber ? `=${value}` : value, new SwitchView(viewContainer, template));\n }\n}\nNgPluralCase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgPluralCase, deps: [{ token: 'ngPluralCase', attribute: true }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: NgPlural, host: true }], target: i0.ɵɵFactoryTarget.Directive });\nNgPluralCase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: NgPluralCase, selector: \"[ngPluralCase]\", ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgPluralCase, decorators: [{\n type: Directive,\n args: [{ selector: '[ngPluralCase]' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Attribute,\n args: ['ngPluralCase']\n }] }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }, { type: NgPlural, decorators: [{\n type: Host\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @ngModule CommonModule\n *\n * @usageNotes\n *\n * Set the font of the containing element to the result of an expression.\n *\n * ```\n * ...\n * ```\n *\n * Set the width of the containing element to a pixel value returned by an expression.\n *\n * ```\n * ...\n * ```\n *\n * Set a collection of style values using an expression that returns key-value pairs.\n *\n * ```\n * ...\n * ```\n *\n * @description\n *\n * An attribute directive that updates styles for the containing HTML element.\n * Sets one or more style properties, specified as colon-separated key-value pairs.\n * The key is a style name, with an optional `.` suffix\n * (such as 'top.px', 'font-style.em').\n * The value is an expression to be evaluated.\n * The resulting non-null value, expressed in the given unit,\n * is assigned to the given style property.\n * If the result of evaluation is null, the corresponding style is removed.\n *\n * @publicApi\n */\nclass NgStyle {\n constructor(_ngEl, _differs, _renderer) {\n this._ngEl = _ngEl;\n this._differs = _differs;\n this._renderer = _renderer;\n this._ngStyle = null;\n this._differ = null;\n }\n set ngStyle(values) {\n this._ngStyle = values;\n if (!this._differ && values) {\n this._differ = this._differs.find(values).create();\n }\n }\n ngDoCheck() {\n if (this._differ) {\n const changes = this._differ.diff(this._ngStyle);\n if (changes) {\n this._applyChanges(changes);\n }\n }\n }\n _setStyle(nameAndUnit, value) {\n const [name, unit] = nameAndUnit.split('.');\n value = value != null && unit ? `${value}${unit}` : value;\n if (value != null) {\n this._renderer.setStyle(this._ngEl.nativeElement, name, value);\n }\n else {\n this._renderer.removeStyle(this._ngEl.nativeElement, name);\n }\n }\n _applyChanges(changes) {\n changes.forEachRemovedItem((record) => this._setStyle(record.key, null));\n changes.forEachAddedItem((record) => this._setStyle(record.key, record.currentValue));\n changes.forEachChangedItem((record) => this._setStyle(record.key, record.currentValue));\n }\n}\nNgStyle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgStyle, deps: [{ token: i0.ElementRef }, { token: i0.KeyValueDiffers }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });\nNgStyle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: NgStyle, selector: \"[ngStyle]\", inputs: { ngStyle: \"ngStyle\" }, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgStyle, decorators: [{\n type: Directive,\n args: [{ selector: '[ngStyle]' }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.KeyValueDiffers }, { type: i0.Renderer2 }]; }, propDecorators: { ngStyle: [{\n type: Input,\n args: ['ngStyle']\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @ngModule CommonModule\n *\n * @description\n *\n * Inserts an embedded view from a prepared `TemplateRef`.\n *\n * You can attach a context object to the `EmbeddedViewRef` by setting `[ngTemplateOutletContext]`.\n * `[ngTemplateOutletContext]` should be an object, the object's keys will be available for binding\n * by the local template `let` declarations.\n *\n * @usageNotes\n * ```\n * \n * ```\n *\n * Using the key `$implicit` in the context object will set its value as default.\n *\n * ### Example\n *\n * {@example common/ngTemplateOutlet/ts/module.ts region='NgTemplateOutlet'}\n *\n * @publicApi\n */\nclass NgTemplateOutlet {\n constructor(_viewContainerRef) {\n this._viewContainerRef = _viewContainerRef;\n this._viewRef = null;\n /**\n * A context object to attach to the {@link EmbeddedViewRef}. This should be an\n * object, the object's keys will be available for binding by the local template `let`\n * declarations.\n * Using the key `$implicit` in the context object will set its value as default.\n */\n this.ngTemplateOutletContext = null;\n /**\n * A string defining the template reference and optionally the context object for the template.\n */\n this.ngTemplateOutlet = null;\n }\n /** @nodoc */\n ngOnChanges(changes) {\n if (changes['ngTemplateOutlet']) {\n const viewContainerRef = this._viewContainerRef;\n if (this._viewRef) {\n viewContainerRef.remove(viewContainerRef.indexOf(this._viewRef));\n }\n this._viewRef = this.ngTemplateOutlet ?\n viewContainerRef.createEmbeddedView(this.ngTemplateOutlet, this.ngTemplateOutletContext) :\n null;\n }\n else if (this._viewRef && changes['ngTemplateOutletContext'] && this.ngTemplateOutletContext) {\n this._viewRef.context = this.ngTemplateOutletContext;\n }\n }\n}\nNgTemplateOutlet.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgTemplateOutlet, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });\nNgTemplateOutlet.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"12.0.0\", version: \"13.3.0\", type: NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: { ngTemplateOutletContext: \"ngTemplateOutletContext\", ngTemplateOutlet: \"ngTemplateOutlet\" }, usesOnChanges: true, ngImport: i0 });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NgTemplateOutlet, decorators: [{\n type: Directive,\n args: [{ selector: '[ngTemplateOutlet]' }]\n }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { ngTemplateOutletContext: [{\n type: Input\n }], ngTemplateOutlet: [{\n type: Input\n }] } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * A collection of Angular directives that are likely to be used in each and every Angular\n * application.\n */\nconst COMMON_DIRECTIVES = [\n NgClass,\n NgComponentOutlet,\n NgForOf,\n NgIf,\n NgTemplateOutlet,\n NgStyle,\n NgSwitch,\n NgSwitchCase,\n NgSwitchDefault,\n NgPlural,\n NgPluralCase,\n];\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction invalidPipeArgumentError(type, value) {\n const errorMessage = (typeof ngDevMode === 'undefined' || ngDevMode) ?\n `InvalidPipeArgument: '${value}' for pipe '${ɵstringify(type)}'` :\n '';\n return new ɵRuntimeError(2100 /* INVALID_PIPE_ARGUMENT */, errorMessage);\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nclass SubscribableStrategy {\n createSubscription(async, updateLatestValue) {\n return async.subscribe({\n next: updateLatestValue,\n error: (e) => {\n throw e;\n }\n });\n }\n dispose(subscription) {\n subscription.unsubscribe();\n }\n onDestroy(subscription) {\n subscription.unsubscribe();\n }\n}\nclass PromiseStrategy {\n createSubscription(async, updateLatestValue) {\n return async.then(updateLatestValue, e => {\n throw e;\n });\n }\n dispose(subscription) { }\n onDestroy(subscription) { }\n}\nconst _promiseStrategy = new PromiseStrategy();\nconst _subscribableStrategy = new SubscribableStrategy();\n/**\n * @ngModule CommonModule\n * @description\n *\n * Unwraps a value from an asynchronous primitive.\n *\n * The `async` pipe subscribes to an `Observable` or `Promise` and returns the latest value it has\n * emitted. When a new value is emitted, the `async` pipe marks the component to be checked for\n * changes. When the component gets destroyed, the `async` pipe unsubscribes automatically to avoid\n * potential memory leaks. When the reference of the expression changes, the `async` pipe\n * automatically unsubscribes from the old `Observable` or `Promise` and subscribes to the new one.\n *\n * @usageNotes\n *\n * ### Examples\n *\n * This example binds a `Promise` to the view. Clicking the `Resolve` button resolves the\n * promise.\n *\n * {@example common/pipes/ts/async_pipe.ts region='AsyncPipePromise'}\n *\n * It's also possible to use `async` with Observables. The example below binds the `time` Observable\n * to the view. The Observable continuously updates the view with the current time.\n *\n * {@example common/pipes/ts/async_pipe.ts region='AsyncPipeObservable'}\n *\n * @publicApi\n */\nclass AsyncPipe {\n constructor(_ref) {\n this._ref = _ref;\n this._latestValue = null;\n this._subscription = null;\n this._obj = null;\n this._strategy = null;\n }\n ngOnDestroy() {\n if (this._subscription) {\n this._dispose();\n }\n }\n transform(obj) {\n if (!this._obj) {\n if (obj) {\n this._subscribe(obj);\n }\n return this._latestValue;\n }\n if (obj !== this._obj) {\n this._dispose();\n return this.transform(obj);\n }\n return this._latestValue;\n }\n _subscribe(obj) {\n this._obj = obj;\n this._strategy = this._selectStrategy(obj);\n this._subscription = this._strategy.createSubscription(obj, (value) => this._updateLatestValue(obj, value));\n }\n _selectStrategy(obj) {\n if (ɵisPromise(obj)) {\n return _promiseStrategy;\n }\n if (ɵisSubscribable(obj)) {\n return _subscribableStrategy;\n }\n throw invalidPipeArgumentError(AsyncPipe, obj);\n }\n _dispose() {\n this._strategy.dispose(this._subscription);\n this._latestValue = null;\n this._subscription = null;\n this._obj = null;\n }\n _updateLatestValue(async, value) {\n if (async === this._obj) {\n this._latestValue = value;\n this._ref.markForCheck();\n }\n }\n}\nAsyncPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: AsyncPipe, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe });\nAsyncPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: AsyncPipe, name: \"async\", pure: false });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: AsyncPipe, decorators: [{\n type: Pipe,\n args: [{ name: 'async', pure: false }]\n }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Transforms text to all lower case.\n *\n * @see `UpperCasePipe`\n * @see `TitleCasePipe`\n * @usageNotes\n *\n * The following example defines a view that allows the user to enter\n * text, and then uses the pipe to convert the input text to all lower case.\n *\n * \n *\n * @ngModule CommonModule\n * @publicApi\n */\nclass LowerCasePipe {\n transform(value) {\n if (value == null)\n return null;\n if (typeof value !== 'string') {\n throw invalidPipeArgumentError(LowerCasePipe, value);\n }\n return value.toLowerCase();\n }\n}\nLowerCasePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LowerCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });\nLowerCasePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LowerCasePipe, name: \"lowercase\" });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: LowerCasePipe, decorators: [{\n type: Pipe,\n args: [{ name: 'lowercase' }]\n }] });\n//\n// Regex below matches any Unicode word and number compatible with ES5. In ES2018 the same result\n// can be achieved by using /[0-9\\p{L}]\\S*/gu and also known as Unicode Property Escapes\n// (https://2ality.com/2017/07/regexp-unicode-property-escapes.html). Since there is no\n// transpilation of this functionality down to ES5 without external tool, the only solution is\n// to use already transpiled form. Example can be found here -\n// https://mothereff.in/regexpu#input=var+regex+%3D+%2F%5B0-9%5Cp%7BL%7D%5D%5CS*%2Fgu%3B%0A%0A&unicodePropertyEscape=1\n//\nconst unicodeWordMatch = /(?:[0-9A-Za-z\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u05D0-\\u05EA\\u05EF-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086A\\u0870-\\u0887\\u0889-\\u088E\\u08A0-\\u08C9\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u09FC\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C5D\\u0C60\\u0C61\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D04-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16F1-\\u16F8\\u1700-\\u1711\\u171F-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1878\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4C\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1C80-\\u1C88\\u1C90-\\u1CBA\\u1CBD-\\u1CBF\\u1CE9-\\u1CEC\\u1CEE-\\u1CF3\\u1CF5\\u1CF6\\u1CFA\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312F\\u3131-\\u318E\\u31A0-\\u31BF\\u31F0-\\u31FF\\u3400-\\u4DBF\\u4E00-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6E5\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7CA\\uA7D0\\uA7D1\\uA7D3\\uA7D5-\\uA7D9\\uA7F2-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA8FE\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB69\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDF00-\\uDF1F\\uDF2D-\\uDF40\\uDF42-\\uDF49\\uDF50-\\uDF75\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF]|\\uD801[\\uDC00-\\uDC9D\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDD70-\\uDD7A\\uDD7C-\\uDD8A\\uDD8C-\\uDD92\\uDD94\\uDD95\\uDD97-\\uDDA1\\uDDA3-\\uDDB1\\uDDB3-\\uDDB9\\uDDBB\\uDDBC\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67\\uDF80-\\uDF85\\uDF87-\\uDFB0\\uDFB2-\\uDFBA]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC60-\\uDC76\\uDC80-\\uDC9E\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDD00-\\uDD15\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBE\\uDDBF\\uDE00\\uDE10-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE35\\uDE60-\\uDE7C\\uDE80-\\uDE9C\\uDEC0-\\uDEC7\\uDEC9-\\uDEE4\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF60-\\uDF72\\uDF80-\\uDF91]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2\\uDD00-\\uDD23\\uDE80-\\uDEA9\\uDEB0\\uDEB1\\uDF00-\\uDF1C\\uDF27\\uDF30-\\uDF45\\uDF70-\\uDF81\\uDFB0-\\uDFC4\\uDFE0-\\uDFF6]|\\uD804[\\uDC03-\\uDC37\\uDC71\\uDC72\\uDC75\\uDC83-\\uDCAF\\uDCD0-\\uDCE8\\uDD03-\\uDD26\\uDD44\\uDD47\\uDD50-\\uDD72\\uDD76\\uDD83-\\uDDB2\\uDDC1-\\uDDC4\\uDDDA\\uDDDC\\uDE00-\\uDE11\\uDE13-\\uDE2B\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEDE\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3D\\uDF50\\uDF5D-\\uDF61]|\\uD805[\\uDC00-\\uDC34\\uDC47-\\uDC4A\\uDC5F-\\uDC61\\uDC80-\\uDCAF\\uDCC4\\uDCC5\\uDCC7\\uDD80-\\uDDAE\\uDDD8-\\uDDDB\\uDE00-\\uDE2F\\uDE44\\uDE80-\\uDEAA\\uDEB8\\uDF00-\\uDF1A\\uDF40-\\uDF46]|\\uD806[\\uDC00-\\uDC2B\\uDCA0-\\uDCDF\\uDCFF-\\uDD06\\uDD09\\uDD0C-\\uDD13\\uDD15\\uDD16\\uDD18-\\uDD2F\\uDD3F\\uDD41\\uDDA0-\\uDDA7\\uDDAA-\\uDDD0\\uDDE1\\uDDE3\\uDE00\\uDE0B-\\uDE32\\uDE3A\\uDE50\\uDE5C-\\uDE89\\uDE9D\\uDEB0-\\uDEF8]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC2E\\uDC40\\uDC72-\\uDC8F\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD30\\uDD46\\uDD60-\\uDD65\\uDD67\\uDD68\\uDD6A-\\uDD89\\uDD98\\uDEE0-\\uDEF2\\uDFB0]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC80-\\uDD43]|\\uD80B[\\uDF90-\\uDFF0]|[\\uD80C\\uD81C-\\uD820\\uD822\\uD840-\\uD868\\uD86A-\\uD86C\\uD86F-\\uD872\\uD874-\\uD879\\uD880-\\uD883][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2E]|\\uD811[\\uDC00-\\uDE46]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE70-\\uDEBE\\uDED0-\\uDEED\\uDF00-\\uDF2F\\uDF40-\\uDF43\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDE40-\\uDE7F\\uDF00-\\uDF4A\\uDF50\\uDF93-\\uDF9F\\uDFE0\\uDFE1\\uDFE3]|\\uD821[\\uDC00-\\uDFF7]|\\uD823[\\uDC00-\\uDCD5\\uDD00-\\uDD08]|\\uD82B[\\uDFF0-\\uDFF3\\uDFF5-\\uDFFB\\uDFFD\\uDFFE]|\\uD82C[\\uDC00-\\uDD22\\uDD50-\\uDD52\\uDD64-\\uDD67\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB]|\\uD837[\\uDF00-\\uDF1E]|\\uD838[\\uDD00-\\uDD2C\\uDD37-\\uDD3D\\uDD4E\\uDE90-\\uDEAD\\uDEC0-\\uDEEB]|\\uD839[\\uDFE0-\\uDFE6\\uDFE8-\\uDFEB\\uDFED\\uDFEE\\uDFF0-\\uDFFE]|\\uD83A[\\uDC00-\\uDCC4\\uDD00-\\uDD43\\uDD4B]|\\uD83B[\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD869[\\uDC00-\\uDEDF\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF38\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEA1\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0]|\\uD87E[\\uDC00-\\uDE1D]|\\uD884[\\uDC00-\\uDF4A])\\S*/g;\n/**\n * Transforms text to title case.\n * Capitalizes the first letter of each word and transforms the\n * rest of the word to lower case.\n * Words are delimited by any whitespace character, such as a space, tab, or line-feed character.\n *\n * @see `LowerCasePipe`\n * @see `UpperCasePipe`\n *\n * @usageNotes\n * The following example shows the result of transforming various strings into title case.\n *\n * \n *\n * @ngModule CommonModule\n * @publicApi\n */\nclass TitleCasePipe {\n transform(value) {\n if (value == null)\n return null;\n if (typeof value !== 'string') {\n throw invalidPipeArgumentError(TitleCasePipe, value);\n }\n return value.replace(unicodeWordMatch, (txt => txt[0].toUpperCase() + txt.substr(1).toLowerCase()));\n }\n}\nTitleCasePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: TitleCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });\nTitleCasePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: TitleCasePipe, name: \"titlecase\" });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: TitleCasePipe, decorators: [{\n type: Pipe,\n args: [{ name: 'titlecase' }]\n }] });\n/**\n * Transforms text to all upper case.\n * @see `LowerCasePipe`\n * @see `TitleCasePipe`\n *\n * @ngModule CommonModule\n * @publicApi\n */\nclass UpperCasePipe {\n transform(value) {\n if (value == null)\n return null;\n if (typeof value !== 'string') {\n throw invalidPipeArgumentError(UpperCasePipe, value);\n }\n return value.toUpperCase();\n }\n}\nUpperCasePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: UpperCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });\nUpperCasePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: UpperCasePipe, name: \"uppercase\" });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: UpperCasePipe, decorators: [{\n type: Pipe,\n args: [{ name: 'uppercase' }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Optionally-provided default timezone to use for all instances of `DatePipe` (such as `'+0430'`).\n * If the value isn't provided, the `DatePipe` will use the end-user's local system timezone.\n */\nconst DATE_PIPE_DEFAULT_TIMEZONE = new InjectionToken('DATE_PIPE_DEFAULT_TIMEZONE');\n// clang-format off\n/**\n * @ngModule CommonModule\n * @description\n *\n * Formats a date value according to locale rules.\n *\n * `DatePipe` is executed only when it detects a pure change to the input value.\n * A pure change is either a change to a primitive input value\n * (such as `String`, `Number`, `Boolean`, or `Symbol`),\n * or a changed object reference (such as `Date`, `Array`, `Function`, or `Object`).\n *\n * Note that mutating a `Date` object does not cause the pipe to be rendered again.\n * To ensure that the pipe is executed, you must create a new `Date` object.\n *\n * Only the `en-US` locale data comes with Angular. To localize dates\n * in another language, you must import the corresponding locale data.\n * See the [I18n guide](guide/i18n-common-format-data-locale) for more information.\n *\n * The time zone of the formatted value can be specified either by passing it in as the second\n * parameter of the pipe, or by setting the default through the `DATE_PIPE_DEFAULT_TIMEZONE`\n * injection token. The value that is passed in as the second parameter takes precedence over\n * the one defined using the injection token.\n *\n * @see `formatDate()`\n *\n *\n * @usageNotes\n *\n * The result of this pipe is not reevaluated when the input is mutated. To avoid the need to\n * reformat the date on every change-detection cycle, treat the date as an immutable object\n * and change the reference when the pipe needs to run again.\n *\n * ### Pre-defined format options\n *\n * | Option | Equivalent to | Examples (given in `en-US` locale) |\n * |---------------|-------------------------------------|-------------------------------------------------|\n * | `'short'` | `'M/d/yy, h:mm a'` | `6/15/15, 9:03 AM` |\n * | `'medium'` | `'MMM d, y, h:mm:ss a'` | `Jun 15, 2015, 9:03:01 AM` |\n * | `'long'` | `'MMMM d, y, h:mm:ss a z'` | `June 15, 2015 at 9:03:01 AM GMT+1` |\n * | `'full'` | `'EEEE, MMMM d, y, h:mm:ss a zzzz'` | `Monday, June 15, 2015 at 9:03:01 AM GMT+01:00` |\n * | `'shortDate'` | `'M/d/yy'` | `6/15/15` |\n * | `'mediumDate'`| `'MMM d, y'` | `Jun 15, 2015` |\n * | `'longDate'` | `'MMMM d, y'` | `June 15, 2015` |\n * | `'fullDate'` | `'EEEE, MMMM d, y'` | `Monday, June 15, 2015` |\n * | `'shortTime'` | `'h:mm a'` | `9:03 AM` |\n * | `'mediumTime'`| `'h:mm:ss a'` | `9:03:01 AM` |\n * | `'longTime'` | `'h:mm:ss a z'` | `9:03:01 AM GMT+1` |\n * | `'fullTime'` | `'h:mm:ss a zzzz'` | `9:03:01 AM GMT+01:00` |\n *\n * ### Custom format options\n *\n * You can construct a format string using symbols to specify the components\n * of a date-time value, as described in the following table.\n * Format details depend on the locale.\n * Fields marked with (*) are only available in the extra data set for the given locale.\n *\n * | Field type | Format | Description | Example Value |\n * |-------------------- |-------------|---------------------------------------------------------------|------------------------------------------------------------|\n * | Era | G, GG & GGG | Abbreviated | AD |\n * | | GGGG | Wide | Anno Domini |\n * | | GGGGG | Narrow | A |\n * | Year | y | Numeric: minimum digits | 2, 20, 201, 2017, 20173 |\n * | | yy | Numeric: 2 digits + zero padded | 02, 20, 01, 17, 73 |\n * | | yyy | Numeric: 3 digits + zero padded | 002, 020, 201, 2017, 20173 |\n * | | yyyy | Numeric: 4 digits or more + zero padded | 0002, 0020, 0201, 2017, 20173 |\n * | Week-numbering year | Y | Numeric: minimum digits | 2, 20, 201, 2017, 20173 |\n * | | YY | Numeric: 2 digits + zero padded | 02, 20, 01, 17, 73 |\n * | | YYY | Numeric: 3 digits + zero padded | 002, 020, 201, 2017, 20173 |\n * | | YYYY | Numeric: 4 digits or more + zero padded | 0002, 0020, 0201, 2017, 20173 |\n * | Month | M | Numeric: 1 digit | 9, 12 |\n * | | MM | Numeric: 2 digits + zero padded | 09, 12 |\n * | | MMM | Abbreviated | Sep |\n * | | MMMM | Wide | September |\n * | | MMMMM | Narrow | S |\n * | Month standalone | L | Numeric: 1 digit | 9, 12 |\n * | | LL | Numeric: 2 digits + zero padded | 09, 12 |\n * | | LLL | Abbreviated | Sep |\n * | | LLLL | Wide | September |\n * | | LLLLL | Narrow | S |\n * | Week of year | w | Numeric: minimum digits | 1... 53 |\n * | | ww | Numeric: 2 digits + zero padded | 01... 53 |\n * | Week of month | W | Numeric: 1 digit | 1... 5 |\n * | Day of month | d | Numeric: minimum digits | 1 |\n * | | dd | Numeric: 2 digits + zero padded | 01 |\n * | Week day | E, EE & EEE | Abbreviated | Tue |\n * | | EEEE | Wide | Tuesday |\n * | | EEEEE | Narrow | T |\n * | | EEEEEE | Short | Tu |\n * | Week day standalone | c, cc | Numeric: 1 digit | 2 |\n * | | ccc | Abbreviated | Tue |\n * | | cccc | Wide | Tuesday |\n * | | ccccc | Narrow | T |\n * | | cccccc | Short | Tu |\n * | Period | a, aa & aaa | Abbreviated | am/pm or AM/PM |\n * | | aaaa | Wide (fallback to `a` when missing) | ante meridiem/post meridiem |\n * | | aaaaa | Narrow | a/p |\n * | Period* | B, BB & BBB | Abbreviated | mid. |\n * | | BBBB | Wide | am, pm, midnight, noon, morning, afternoon, evening, night |\n * | | BBBBB | Narrow | md |\n * | Period standalone* | b, bb & bbb | Abbreviated | mid. |\n * | | bbbb | Wide | am, pm, midnight, noon, morning, afternoon, evening, night |\n * | | bbbbb | Narrow | md |\n * | Hour 1-12 | h | Numeric: minimum digits | 1, 12 |\n * | | hh | Numeric: 2 digits + zero padded | 01, 12 |\n * | Hour 0-23 | H | Numeric: minimum digits | 0, 23 |\n * | | HH | Numeric: 2 digits + zero padded | 00, 23 |\n * | Minute | m | Numeric: minimum digits | 8, 59 |\n * | | mm | Numeric: 2 digits + zero padded | 08, 59 |\n * | Second | s | Numeric: minimum digits | 0... 59 |\n * | | ss | Numeric: 2 digits + zero padded | 00... 59 |\n * | Fractional seconds | S | Numeric: 1 digit | 0... 9 |\n * | | SS | Numeric: 2 digits + zero padded | 00... 99 |\n * | | SSS | Numeric: 3 digits + zero padded (= milliseconds) | 000... 999 |\n * | Zone | z, zz & zzz | Short specific non location format (fallback to O) | GMT-8 |\n * | | zzzz | Long specific non location format (fallback to OOOO) | GMT-08:00 |\n * | | Z, ZZ & ZZZ | ISO8601 basic format | -0800 |\n * | | ZZZZ | Long localized GMT format | GMT-8:00 |\n * | | ZZZZZ | ISO8601 extended format + Z indicator for offset 0 (= XXXXX) | -08:00 |\n * | | O, OO & OOO | Short localized GMT format | GMT-8 |\n * | | OOOO | Long localized GMT format | GMT-08:00 |\n *\n *\n * ### Format examples\n *\n * These examples transform a date into various formats,\n * assuming that `dateObj` is a JavaScript `Date` object for\n * year: 2015, month: 6, day: 15, hour: 21, minute: 43, second: 11,\n * given in the local time for the `en-US` locale.\n *\n * ```\n * {{ dateObj | date }} // output is 'Jun 15, 2015'\n * {{ dateObj | date:'medium' }} // output is 'Jun 15, 2015, 9:43:11 PM'\n * {{ dateObj | date:'shortTime' }} // output is '9:43 PM'\n * {{ dateObj | date:'mm:ss' }} // output is '43:11'\n * ```\n *\n * ### Usage example\n *\n * The following component uses a date pipe to display the current date in different formats.\n *\n * ```\n * @Component({\n * selector: 'date-pipe',\n * template: `
    \n *

    Today is {{today | date}}

    \n *

    Or if you prefer, {{today | date:'fullDate'}}

    \n *

    The time is {{today | date:'h:mm a z'}}

    \n *
    `\n * })\n * // Get the current date and time as a date-time value.\n * export class DatePipeComponent {\n * today: number = Date.now();\n * }\n * ```\n *\n * @publicApi\n */\n// clang-format on\nclass DatePipe {\n constructor(locale, defaultTimezone) {\n this.locale = locale;\n this.defaultTimezone = defaultTimezone;\n }\n transform(value, format = 'mediumDate', timezone, locale) {\n var _a;\n if (value == null || value === '' || value !== value)\n return null;\n try {\n return formatDate(value, format, locale || this.locale, (_a = timezone !== null && timezone !== void 0 ? timezone : this.defaultTimezone) !== null && _a !== void 0 ? _a : undefined);\n }\n catch (error) {\n throw invalidPipeArgumentError(DatePipe, error.message);\n }\n }\n}\nDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: DatePipe, deps: [{ token: LOCALE_ID }, { token: DATE_PIPE_DEFAULT_TIMEZONE, optional: true }], target: i0.ɵɵFactoryTarget.Pipe });\nDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: DatePipe, name: \"date\" });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: DatePipe, decorators: [{\n type: Pipe,\n args: [{ name: 'date', pure: true }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [LOCALE_ID]\n }] }, { type: undefined, decorators: [{\n type: Inject,\n args: [DATE_PIPE_DEFAULT_TIMEZONE]\n }, {\n type: Optional\n }] }];\n } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst _INTERPOLATION_REGEXP = /#/g;\n/**\n * @ngModule CommonModule\n * @description\n *\n * Maps a value to a string that pluralizes the value according to locale rules.\n *\n * @usageNotes\n *\n * ### Example\n *\n * {@example common/pipes/ts/i18n_pipe.ts region='I18nPluralPipeComponent'}\n *\n * @publicApi\n */\nclass I18nPluralPipe {\n constructor(_localization) {\n this._localization = _localization;\n }\n /**\n * @param value the number to be formatted\n * @param pluralMap an object that mimics the ICU format, see\n * http://userguide.icu-project.org/formatparse/messages.\n * @param locale a `string` defining the locale to use (uses the current {@link LOCALE_ID} by\n * default).\n */\n transform(value, pluralMap, locale) {\n if (value == null)\n return '';\n if (typeof pluralMap !== 'object' || pluralMap === null) {\n throw invalidPipeArgumentError(I18nPluralPipe, pluralMap);\n }\n const key = getPluralCategory(value, Object.keys(pluralMap), this._localization, locale);\n return pluralMap[key].replace(_INTERPOLATION_REGEXP, value.toString());\n }\n}\nI18nPluralPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: I18nPluralPipe, deps: [{ token: NgLocalization }], target: i0.ɵɵFactoryTarget.Pipe });\nI18nPluralPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: I18nPluralPipe, name: \"i18nPlural\" });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: I18nPluralPipe, decorators: [{\n type: Pipe,\n args: [{ name: 'i18nPlural', pure: true }]\n }], ctorParameters: function () { return [{ type: NgLocalization }]; } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @ngModule CommonModule\n * @description\n *\n * Generic selector that displays the string that matches the current value.\n *\n * If none of the keys of the `mapping` match the `value`, then the content\n * of the `other` key is returned when present, otherwise an empty string is returned.\n *\n * @usageNotes\n *\n * ### Example\n *\n * {@example common/pipes/ts/i18n_pipe.ts region='I18nSelectPipeComponent'}\n *\n * @publicApi\n */\nclass I18nSelectPipe {\n /**\n * @param value a string to be internationalized.\n * @param mapping an object that indicates the text that should be displayed\n * for different values of the provided `value`.\n */\n transform(value, mapping) {\n if (value == null)\n return '';\n if (typeof mapping !== 'object' || typeof value !== 'string') {\n throw invalidPipeArgumentError(I18nSelectPipe, mapping);\n }\n if (mapping.hasOwnProperty(value)) {\n return mapping[value];\n }\n if (mapping.hasOwnProperty('other')) {\n return mapping['other'];\n }\n return '';\n }\n}\nI18nSelectPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: I18nSelectPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });\nI18nSelectPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: I18nSelectPipe, name: \"i18nSelect\" });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: I18nSelectPipe, decorators: [{\n type: Pipe,\n args: [{ name: 'i18nSelect', pure: true }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @ngModule CommonModule\n * @description\n *\n * Converts a value into its JSON-format representation. Useful for debugging.\n *\n * @usageNotes\n *\n * The following component uses a JSON pipe to convert an object\n * to JSON format, and displays the string in both formats for comparison.\n *\n * {@example common/pipes/ts/json_pipe.ts region='JsonPipe'}\n *\n * @publicApi\n */\nclass JsonPipe {\n /**\n * @param value A value of any type to convert into a JSON-format string.\n */\n transform(value) {\n return JSON.stringify(value, null, 2);\n }\n}\nJsonPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: JsonPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });\nJsonPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: JsonPipe, name: \"json\", pure: false });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: JsonPipe, decorators: [{\n type: Pipe,\n args: [{ name: 'json', pure: false }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction makeKeyValuePair(key, value) {\n return { key: key, value: value };\n}\n/**\n * @ngModule CommonModule\n * @description\n *\n * Transforms Object or Map into an array of key value pairs.\n *\n * The output array will be ordered by keys.\n * By default the comparator will be by Unicode point value.\n * You can optionally pass a compareFn if your keys are complex types.\n *\n * @usageNotes\n * ### Examples\n *\n * This examples show how an Object or a Map can be iterated by ngFor with the use of this\n * keyvalue pipe.\n *\n * {@example common/pipes/ts/keyvalue_pipe.ts region='KeyValuePipe'}\n *\n * @publicApi\n */\nclass KeyValuePipe {\n constructor(differs) {\n this.differs = differs;\n this.keyValues = [];\n this.compareFn = defaultComparator;\n }\n transform(input, compareFn = defaultComparator) {\n if (!input || (!(input instanceof Map) && typeof input !== 'object')) {\n return null;\n }\n if (!this.differ) {\n // make a differ for whatever type we've been passed in\n this.differ = this.differs.find(input).create();\n }\n const differChanges = this.differ.diff(input);\n const compareFnChanged = compareFn !== this.compareFn;\n if (differChanges) {\n this.keyValues = [];\n differChanges.forEachItem((r) => {\n this.keyValues.push(makeKeyValuePair(r.key, r.currentValue));\n });\n }\n if (differChanges || compareFnChanged) {\n this.keyValues.sort(compareFn);\n this.compareFn = compareFn;\n }\n return this.keyValues;\n }\n}\nKeyValuePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: KeyValuePipe, deps: [{ token: i0.KeyValueDiffers }], target: i0.ɵɵFactoryTarget.Pipe });\nKeyValuePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: KeyValuePipe, name: \"keyvalue\", pure: false });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: KeyValuePipe, decorators: [{\n type: Pipe,\n args: [{ name: 'keyvalue', pure: false }]\n }], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }]; } });\nfunction defaultComparator(keyValueA, keyValueB) {\n const a = keyValueA.key;\n const b = keyValueB.key;\n // if same exit with 0;\n if (a === b)\n return 0;\n // make sure that undefined are at the end of the sort.\n if (a === undefined)\n return 1;\n if (b === undefined)\n return -1;\n // make sure that nulls are at the end of the sort.\n if (a === null)\n return 1;\n if (b === null)\n return -1;\n if (typeof a == 'string' && typeof b == 'string') {\n return a < b ? -1 : 1;\n }\n if (typeof a == 'number' && typeof b == 'number') {\n return a - b;\n }\n if (typeof a == 'boolean' && typeof b == 'boolean') {\n return a < b ? -1 : 1;\n }\n // `a` and `b` are of different types. Compare their string values.\n const aString = String(a);\n const bString = String(b);\n return aString == bString ? 0 : aString < bString ? -1 : 1;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @ngModule CommonModule\n * @description\n *\n * Formats a value according to digit options and locale rules.\n * Locale determines group sizing and separator,\n * decimal point character, and other locale-specific configurations.\n *\n * @see `formatNumber()`\n *\n * @usageNotes\n *\n * ### digitsInfo\n *\n * The value's decimal representation is specified by the `digitsInfo`\n * parameter, written in the following format:
    \n *\n * ```\n * {minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}\n * ```\n *\n * - `minIntegerDigits`:\n * The minimum number of integer digits before the decimal point.\n * Default is 1.\n *\n * - `minFractionDigits`:\n * The minimum number of digits after the decimal point.\n * Default is 0.\n *\n * - `maxFractionDigits`:\n * The maximum number of digits after the decimal point.\n * Default is 3.\n *\n * If the formatted value is truncated it will be rounded using the \"to-nearest\" method:\n *\n * ```\n * {{3.6 | number: '1.0-0'}}\n * \n *\n * {{-3.6 | number:'1.0-0'}}\n * \n * ```\n *\n * ### locale\n *\n * `locale` will format a value according to locale rules.\n * Locale determines group sizing and separator,\n * decimal point character, and other locale-specific configurations.\n *\n * When not supplied, uses the value of `LOCALE_ID`, which is `en-US` by default.\n *\n * See [Setting your app locale](guide/i18n-common-locale-id).\n *\n * ### Example\n *\n * The following code shows how the pipe transforms values\n * according to various format specifications,\n * where the caller's default locale is `en-US`.\n *\n * \n *\n * @publicApi\n */\nclass DecimalPipe {\n constructor(_locale) {\n this._locale = _locale;\n }\n /**\n * @param value The value to be formatted.\n * @param digitsInfo Sets digit and decimal representation.\n * [See more](#digitsinfo).\n * @param locale Specifies what locale format rules to use.\n * [See more](#locale).\n */\n transform(value, digitsInfo, locale) {\n if (!isValue(value))\n return null;\n locale = locale || this._locale;\n try {\n const num = strToNumber(value);\n return formatNumber(num, locale, digitsInfo);\n }\n catch (error) {\n throw invalidPipeArgumentError(DecimalPipe, error.message);\n }\n }\n}\nDecimalPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: DecimalPipe, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Pipe });\nDecimalPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: DecimalPipe, name: \"number\" });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: DecimalPipe, decorators: [{\n type: Pipe,\n args: [{ name: 'number' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [LOCALE_ID]\n }] }];\n } });\n/**\n * @ngModule CommonModule\n * @description\n *\n * Transforms a number to a percentage\n * string, formatted according to locale rules that determine group sizing and\n * separator, decimal-point character, and other locale-specific\n * configurations.\n *\n * @see `formatPercent()`\n *\n * @usageNotes\n * The following code shows how the pipe transforms numbers\n * into text strings, according to various format specifications,\n * where the caller's default locale is `en-US`.\n *\n * \n *\n * @publicApi\n */\nclass PercentPipe {\n constructor(_locale) {\n this._locale = _locale;\n }\n /**\n *\n * @param value The number to be formatted as a percentage.\n * @param digitsInfo Decimal representation options, specified by a string\n * in the following format:
    \n * {minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}.\n * - `minIntegerDigits`: The minimum number of integer digits before the decimal point.\n * Default is `1`.\n * - `minFractionDigits`: The minimum number of digits after the decimal point.\n * Default is `0`.\n * - `maxFractionDigits`: The maximum number of digits after the decimal point.\n * Default is `0`.\n * @param locale A locale code for the locale format rules to use.\n * When not supplied, uses the value of `LOCALE_ID`, which is `en-US` by default.\n * See [Setting your app locale](guide/i18n-common-locale-id).\n */\n transform(value, digitsInfo, locale) {\n if (!isValue(value))\n return null;\n locale = locale || this._locale;\n try {\n const num = strToNumber(value);\n return formatPercent(num, locale, digitsInfo);\n }\n catch (error) {\n throw invalidPipeArgumentError(PercentPipe, error.message);\n }\n }\n}\nPercentPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PercentPipe, deps: [{ token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Pipe });\nPercentPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PercentPipe, name: \"percent\" });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: PercentPipe, decorators: [{\n type: Pipe,\n args: [{ name: 'percent' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [LOCALE_ID]\n }] }];\n } });\n/**\n * @ngModule CommonModule\n * @description\n *\n * Transforms a number to a currency string, formatted according to locale rules\n * that determine group sizing and separator, decimal-point character,\n * and other locale-specific configurations.\n *\n * {@a currency-code-deprecation}\n *
    \n *\n * **Deprecation notice:**\n *\n * The default currency code is currently always `USD` but this is deprecated from v9.\n *\n * **In v11 the default currency code will be taken from the current locale identified by\n * the `LOCALE_ID` token. See the [i18n guide](guide/i18n-common-locale-id) for\n * more information.**\n *\n * If you need the previous behavior then set it by creating a `DEFAULT_CURRENCY_CODE` provider in\n * your application `NgModule`:\n *\n * ```ts\n * {provide: DEFAULT_CURRENCY_CODE, useValue: 'USD'}\n * ```\n *\n *
    \n *\n * @see `getCurrencySymbol()`\n * @see `formatCurrency()`\n *\n * @usageNotes\n * The following code shows how the pipe transforms numbers\n * into text strings, according to various format specifications,\n * where the caller's default locale is `en-US`.\n *\n * \n *\n * @publicApi\n */\nclass CurrencyPipe {\n constructor(_locale, _defaultCurrencyCode = 'USD') {\n this._locale = _locale;\n this._defaultCurrencyCode = _defaultCurrencyCode;\n }\n /**\n *\n * @param value The number to be formatted as currency.\n * @param currencyCode The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code,\n * such as `USD` for the US dollar and `EUR` for the euro. The default currency code can be\n * configured using the `DEFAULT_CURRENCY_CODE` injection token.\n * @param display The format for the currency indicator. One of the following:\n * - `code`: Show the code (such as `USD`).\n * - `symbol`(default): Show the symbol (such as `$`).\n * - `symbol-narrow`: Use the narrow symbol for locales that have two symbols for their\n * currency.\n * For example, the Canadian dollar CAD has the symbol `CA$` and the symbol-narrow `$`. If the\n * locale has no narrow symbol, uses the standard symbol for the locale.\n * - String: Use the given string value instead of a code or a symbol.\n * For example, an empty string will suppress the currency & symbol.\n * - Boolean (marked deprecated in v5): `true` for symbol and false for `code`.\n *\n * @param digitsInfo Decimal representation options, specified by a string\n * in the following format:
    \n * {minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}.\n * - `minIntegerDigits`: The minimum number of integer digits before the decimal point.\n * Default is `1`.\n * - `minFractionDigits`: The minimum number of digits after the decimal point.\n * Default is `2`.\n * - `maxFractionDigits`: The maximum number of digits after the decimal point.\n * Default is `2`.\n * If not provided, the number will be formatted with the proper amount of digits,\n * depending on what the [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) specifies.\n * For example, the Canadian dollar has 2 digits, whereas the Chilean peso has none.\n * @param locale A locale code for the locale format rules to use.\n * When not supplied, uses the value of `LOCALE_ID`, which is `en-US` by default.\n * See [Setting your app locale](guide/i18n-common-locale-id).\n */\n transform(value, currencyCode = this._defaultCurrencyCode, display = 'symbol', digitsInfo, locale) {\n if (!isValue(value))\n return null;\n locale = locale || this._locale;\n if (typeof display === 'boolean') {\n if ((typeof ngDevMode === 'undefined' || ngDevMode) && console && console.warn) {\n console.warn(`Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are \"code\", \"symbol\" or \"symbol-narrow\".`);\n }\n display = display ? 'symbol' : 'code';\n }\n let currency = currencyCode || this._defaultCurrencyCode;\n if (display !== 'code') {\n if (display === 'symbol' || display === 'symbol-narrow') {\n currency = getCurrencySymbol(currency, display === 'symbol' ? 'wide' : 'narrow', locale);\n }\n else {\n currency = display;\n }\n }\n try {\n const num = strToNumber(value);\n return formatCurrency(num, locale, currency, currencyCode, digitsInfo);\n }\n catch (error) {\n throw invalidPipeArgumentError(CurrencyPipe, error.message);\n }\n }\n}\nCurrencyPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CurrencyPipe, deps: [{ token: LOCALE_ID }, { token: DEFAULT_CURRENCY_CODE }], target: i0.ɵɵFactoryTarget.Pipe });\nCurrencyPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CurrencyPipe, name: \"currency\" });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CurrencyPipe, decorators: [{\n type: Pipe,\n args: [{ name: 'currency' }]\n }], ctorParameters: function () {\n return [{ type: undefined, decorators: [{\n type: Inject,\n args: [LOCALE_ID]\n }] }, { type: undefined, decorators: [{\n type: Inject,\n args: [DEFAULT_CURRENCY_CODE]\n }] }];\n } });\nfunction isValue(value) {\n return !(value == null || value === '' || value !== value);\n}\n/**\n * Transforms a string into a number (if needed).\n */\nfunction strToNumber(value) {\n // Convert strings to numbers\n if (typeof value === 'string' && !isNaN(Number(value) - parseFloat(value))) {\n return Number(value);\n }\n if (typeof value !== 'number') {\n throw new Error(`${value} is not a number`);\n }\n return value;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @ngModule CommonModule\n * @description\n *\n * Creates a new `Array` or `String` containing a subset (slice) of the elements.\n *\n * @usageNotes\n *\n * All behavior is based on the expected behavior of the JavaScript API `Array.prototype.slice()`\n * and `String.prototype.slice()`.\n *\n * When operating on an `Array`, the returned `Array` is always a copy even when all\n * the elements are being returned.\n *\n * When operating on a blank value, the pipe returns the blank value.\n *\n * ### List Example\n *\n * This `ngFor` example:\n *\n * {@example common/pipes/ts/slice_pipe.ts region='SlicePipe_list'}\n *\n * produces the following:\n *\n * ```html\n *
  • b
  • \n *
  • c
  • \n * ```\n *\n * ### String Examples\n *\n * {@example common/pipes/ts/slice_pipe.ts region='SlicePipe_string'}\n *\n * @publicApi\n */\nclass SlicePipe {\n transform(value, start, end) {\n if (value == null)\n return null;\n if (!this.supports(value)) {\n throw invalidPipeArgumentError(SlicePipe, value);\n }\n return value.slice(start, end);\n }\n supports(obj) {\n return typeof obj === 'string' || Array.isArray(obj);\n }\n}\nSlicePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: SlicePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });\nSlicePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: SlicePipe, name: \"slice\", pure: false });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: SlicePipe, decorators: [{\n type: Pipe,\n args: [{ name: 'slice', pure: false }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * A collection of Angular pipes that are likely to be used in each and every application.\n */\nconst COMMON_PIPES = [\n AsyncPipe,\n UpperCasePipe,\n LowerCasePipe,\n JsonPipe,\n SlicePipe,\n DecimalPipe,\n PercentPipe,\n TitleCasePipe,\n CurrencyPipe,\n DatePipe,\n I18nPluralPipe,\n I18nSelectPipe,\n KeyValuePipe,\n];\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// Note: This does not contain the location providers,\n// as they need some platform specific implementations to work.\n/**\n * Exports all the basic Angular directives and pipes,\n * such as `NgIf`, `NgForOf`, `DecimalPipe`, and so on.\n * Re-exported by `BrowserModule`, which is included automatically in the root\n * `AppModule` when you create a new app with the CLI `new` command.\n *\n * * The `providers` options configure the NgModule's injector to provide\n * localization dependencies to members.\n * * The `exports` options make the declared directives and pipes available for import\n * by other NgModules.\n *\n * @publicApi\n */\nclass CommonModule {\n}\nCommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nCommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CommonModule, declarations: [NgClass, NgComponentOutlet, NgForOf, NgIf, NgTemplateOutlet, NgStyle, NgSwitch, NgSwitchCase, NgSwitchDefault, NgPlural, NgPluralCase, AsyncPipe, UpperCasePipe, LowerCasePipe, JsonPipe, SlicePipe, DecimalPipe, PercentPipe, TitleCasePipe, CurrencyPipe, DatePipe, I18nPluralPipe, I18nSelectPipe, KeyValuePipe], exports: [NgClass, NgComponentOutlet, NgForOf, NgIf, NgTemplateOutlet, NgStyle, NgSwitch, NgSwitchCase, NgSwitchDefault, NgPlural, NgPluralCase, AsyncPipe, UpperCasePipe, LowerCasePipe, JsonPipe, SlicePipe, DecimalPipe, PercentPipe, TitleCasePipe, CurrencyPipe, DatePipe, I18nPluralPipe, I18nSelectPipe, KeyValuePipe] });\nCommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CommonModule });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: CommonModule, decorators: [{\n type: NgModule,\n args: [{\n declarations: [COMMON_DIRECTIVES, COMMON_PIPES],\n exports: [COMMON_DIRECTIVES, COMMON_PIPES],\n }]\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst PLATFORM_BROWSER_ID = 'browser';\nconst PLATFORM_SERVER_ID = 'server';\nconst PLATFORM_WORKER_APP_ID = 'browserWorkerApp';\nconst PLATFORM_WORKER_UI_ID = 'browserWorkerUi';\n/**\n * Returns whether a platform id represents a browser platform.\n * @publicApi\n */\nfunction isPlatformBrowser(platformId) {\n return platformId === PLATFORM_BROWSER_ID;\n}\n/**\n * Returns whether a platform id represents a server platform.\n * @publicApi\n */\nfunction isPlatformServer(platformId) {\n return platformId === PLATFORM_SERVER_ID;\n}\n/**\n * Returns whether a platform id represents a web worker app platform.\n * @publicApi\n */\nfunction isPlatformWorkerApp(platformId) {\n return platformId === PLATFORM_WORKER_APP_ID;\n}\n/**\n * Returns whether a platform id represents a web worker UI platform.\n * @publicApi\n */\nfunction isPlatformWorkerUi(platformId) {\n return platformId === PLATFORM_WORKER_UI_ID;\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @publicApi\n */\nconst VERSION = new Version('13.3.0');\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Defines a scroll position manager. Implemented by `BrowserViewportScroller`.\n *\n * @publicApi\n */\nclass ViewportScroller {\n}\n// De-sugared tree-shakable injection\n// See #23917\n/** @nocollapse */\nViewportScroller.ɵprov = ɵɵdefineInjectable({\n token: ViewportScroller,\n providedIn: 'root',\n factory: () => new BrowserViewportScroller(ɵɵinject(DOCUMENT), window)\n});\n/**\n * Manages the scroll position for a browser window.\n */\nclass BrowserViewportScroller {\n constructor(document, window) {\n this.document = document;\n this.window = window;\n this.offset = () => [0, 0];\n }\n /**\n * Configures the top offset used when scrolling to an anchor.\n * @param offset A position in screen coordinates (a tuple with x and y values)\n * or a function that returns the top offset position.\n *\n */\n setOffset(offset) {\n if (Array.isArray(offset)) {\n this.offset = () => offset;\n }\n else {\n this.offset = offset;\n }\n }\n /**\n * Retrieves the current scroll position.\n * @returns The position in screen coordinates.\n */\n getScrollPosition() {\n if (this.supportsScrolling()) {\n return [this.window.pageXOffset, this.window.pageYOffset];\n }\n else {\n return [0, 0];\n }\n }\n /**\n * Sets the scroll position.\n * @param position The new position in screen coordinates.\n */\n scrollToPosition(position) {\n if (this.supportsScrolling()) {\n this.window.scrollTo(position[0], position[1]);\n }\n }\n /**\n * Scrolls to an element and attempts to focus the element.\n *\n * Note that the function name here is misleading in that the target string may be an ID for a\n * non-anchor element.\n *\n * @param target The ID of an element or name of the anchor.\n *\n * @see https://html.spec.whatwg.org/#the-indicated-part-of-the-document\n * @see https://html.spec.whatwg.org/#scroll-to-fragid\n */\n scrollToAnchor(target) {\n if (!this.supportsScrolling()) {\n return;\n }\n const elSelected = findAnchorFromDocument(this.document, target);\n if (elSelected) {\n this.scrollToElement(elSelected);\n // After scrolling to the element, the spec dictates that we follow the focus steps for the\n // target. Rather than following the robust steps, simply attempt focus.\n //\n // @see https://html.spec.whatwg.org/#get-the-focusable-area\n // @see https://developer.mozilla.org/en-US/docs/Web/API/HTMLOrForeignElement/focus\n // @see https://html.spec.whatwg.org/#focusable-area\n elSelected.focus();\n }\n }\n /**\n * Disables automatic scroll restoration provided by the browser.\n */\n setHistoryScrollRestoration(scrollRestoration) {\n if (this.supportScrollRestoration()) {\n const history = this.window.history;\n if (history && history.scrollRestoration) {\n history.scrollRestoration = scrollRestoration;\n }\n }\n }\n /**\n * Scrolls to an element using the native offset and the specified offset set on this scroller.\n *\n * The offset can be used when we know that there is a floating header and scrolling naively to an\n * element (ex: `scrollIntoView`) leaves the element hidden behind the floating header.\n */\n scrollToElement(el) {\n const rect = el.getBoundingClientRect();\n const left = rect.left + this.window.pageXOffset;\n const top = rect.top + this.window.pageYOffset;\n const offset = this.offset();\n this.window.scrollTo(left - offset[0], top - offset[1]);\n }\n /**\n * We only support scroll restoration when we can get a hold of window.\n * This means that we do not support this behavior when running in a web worker.\n *\n * Lifting this restriction right now would require more changes in the dom adapter.\n * Since webworkers aren't widely used, we will lift it once RouterScroller is\n * battle-tested.\n */\n supportScrollRestoration() {\n try {\n if (!this.supportsScrolling()) {\n return false;\n }\n // The `scrollRestoration` property could be on the `history` instance or its prototype.\n const scrollRestorationDescriptor = getScrollRestorationProperty(this.window.history) ||\n getScrollRestorationProperty(Object.getPrototypeOf(this.window.history));\n // We can write to the `scrollRestoration` property if it is a writable data field or it has a\n // setter function.\n return !!scrollRestorationDescriptor &&\n !!(scrollRestorationDescriptor.writable || scrollRestorationDescriptor.set);\n }\n catch (_a) {\n return false;\n }\n }\n supportsScrolling() {\n try {\n return !!this.window && !!this.window.scrollTo && 'pageXOffset' in this.window;\n }\n catch (_a) {\n return false;\n }\n }\n}\nfunction getScrollRestorationProperty(obj) {\n return Object.getOwnPropertyDescriptor(obj, 'scrollRestoration');\n}\nfunction findAnchorFromDocument(document, target) {\n const documentResult = document.getElementById(target) || document.getElementsByName(target)[0];\n if (documentResult) {\n return documentResult;\n }\n // `getElementById` and `getElementsByName` won't pierce through the shadow DOM so we\n // have to traverse the DOM manually and do the lookup through the shadow roots.\n if (typeof document.createTreeWalker === 'function' && document.body &&\n (document.body.createShadowRoot || document.body.attachShadow)) {\n const treeWalker = document.createTreeWalker(document.body, NodeFilter.SHOW_ELEMENT);\n let currentNode = treeWalker.currentNode;\n while (currentNode) {\n const shadowRoot = currentNode.shadowRoot;\n if (shadowRoot) {\n // Note that `ShadowRoot` doesn't support `getElementsByName`\n // so we have to fall back to `querySelector`.\n const result = shadowRoot.getElementById(target) || shadowRoot.querySelector(`[name=\"${target}\"]`);\n if (result) {\n return result;\n }\n }\n currentNode = treeWalker.nextNode();\n }\n }\n return null;\n}\n/**\n * Provides an empty implementation of the viewport scroller.\n */\nclass NullViewportScroller {\n /**\n * Empty implementation\n */\n setOffset(offset) { }\n /**\n * Empty implementation\n */\n getScrollPosition() {\n return [0, 0];\n }\n /**\n * Empty implementation\n */\n scrollToPosition(position) { }\n /**\n * Empty implementation\n */\n scrollToAnchor(anchor) { }\n /**\n * Empty implementation\n */\n setHistoryScrollRestoration(scrollRestoration) { }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * A wrapper around the `XMLHttpRequest` constructor.\n *\n * @publicApi\n */\nclass XhrFactory {\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// This file only reexports content of the `src` folder. Keep it that way.\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { APP_BASE_HREF, AsyncPipe, CommonModule, CurrencyPipe, DATE_PIPE_DEFAULT_TIMEZONE, DOCUMENT, DatePipe, DecimalPipe, FormStyle, FormatWidth, HashLocationStrategy, I18nPluralPipe, I18nSelectPipe, JsonPipe, KeyValuePipe, LOCATION_INITIALIZED, Location, LocationStrategy, LowerCasePipe, NgClass, NgComponentOutlet, NgForOf, NgForOfContext, NgIf, NgIfContext, NgLocaleLocalization, NgLocalization, NgPlural, NgPluralCase, NgStyle, NgSwitch, NgSwitchCase, NgSwitchDefault, NgTemplateOutlet, NumberFormatStyle, NumberSymbol, PathLocationStrategy, PercentPipe, PlatformLocation, Plural, SlicePipe, TitleCasePipe, TranslationWidth, UpperCasePipe, VERSION, ViewportScroller, WeekDay, XhrFactory, formatCurrency, formatDate, formatNumber, formatPercent, getCurrencySymbol, getLocaleCurrencyCode, getLocaleCurrencyName, getLocaleCurrencySymbol, getLocaleDateFormat, getLocaleDateTimeFormat, getLocaleDayNames, getLocaleDayPeriods, getLocaleDirection, getLocaleEraNames, getLocaleExtraDayPeriodRules, getLocaleExtraDayPeriods, getLocaleFirstDayOfWeek, getLocaleId, getLocaleMonthNames, getLocaleNumberFormat, getLocaleNumberSymbol, getLocalePluralCase, getLocaleTimeFormat, getLocaleWeekEndRange, getNumberOfCurrencyDigits, isPlatformBrowser, isPlatformServer, isPlatformWorkerApp, isPlatformWorkerUi, registerLocaleData, BrowserPlatformLocation as ɵBrowserPlatformLocation, DomAdapter as ɵDomAdapter, NullViewportScroller as ɵNullViewportScroller, PLATFORM_BROWSER_ID as ɵPLATFORM_BROWSER_ID, PLATFORM_SERVER_ID as ɵPLATFORM_SERVER_ID, PLATFORM_WORKER_APP_ID as ɵPLATFORM_WORKER_APP_ID, PLATFORM_WORKER_UI_ID as ɵPLATFORM_WORKER_UI_ID, getDOM as ɵgetDOM, parseCookieValue as ɵparseCookieValue, setRootDomAdapter as ɵsetRootDomAdapter };\n","/**\n * @license Angular v13.3.0\n * (c) 2010-2022 Google LLC. https://angular.io/\n * License: MIT\n */\n\nimport * as i1 from '@angular/common';\nimport { DOCUMENT, ɵparseCookieValue, XhrFactory as XhrFactory$1 } from '@angular/common';\nimport * as i0 from '@angular/core';\nimport { Injectable, InjectionToken, Inject, PLATFORM_ID, NgModule } from '@angular/core';\nimport { of, Observable } from 'rxjs';\nimport { concatMap, filter, map } from 'rxjs/operators';\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Transforms an `HttpRequest` into a stream of `HttpEvent`s, one of which will likely be a\n * `HttpResponse`.\n *\n * `HttpHandler` is injectable. When injected, the handler instance dispatches requests to the\n * first interceptor in the chain, which dispatches to the second, etc, eventually reaching the\n * `HttpBackend`.\n *\n * In an `HttpInterceptor`, the `HttpHandler` parameter is the next interceptor in the chain.\n *\n * @publicApi\n */\nclass HttpHandler {\n}\n/**\n * A final `HttpHandler` which will dispatch the request via browser HTTP APIs to a backend.\n *\n * Interceptors sit between the `HttpClient` interface and the `HttpBackend`.\n *\n * When injected, `HttpBackend` dispatches requests directly to the backend, without going\n * through the interceptor chain.\n *\n * @publicApi\n */\nclass HttpBackend {\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Represents the header configuration options for an HTTP request.\n * Instances are immutable. Modifying methods return a cloned\n * instance with the change. The original object is never changed.\n *\n * @publicApi\n */\nclass HttpHeaders {\n /** Constructs a new HTTP header object with the given values.*/\n constructor(headers) {\n /**\n * Internal map of lowercased header names to the normalized\n * form of the name (the form seen first).\n */\n this.normalizedNames = new Map();\n /**\n * Queued updates to be materialized the next initialization.\n */\n this.lazyUpdate = null;\n if (!headers) {\n this.headers = new Map();\n }\n else if (typeof headers === 'string') {\n this.lazyInit = () => {\n this.headers = new Map();\n headers.split('\\n').forEach(line => {\n const index = line.indexOf(':');\n if (index > 0) {\n const name = line.slice(0, index);\n const key = name.toLowerCase();\n const value = line.slice(index + 1).trim();\n this.maybeSetNormalizedName(name, key);\n if (this.headers.has(key)) {\n this.headers.get(key).push(value);\n }\n else {\n this.headers.set(key, [value]);\n }\n }\n });\n };\n }\n else {\n this.lazyInit = () => {\n this.headers = new Map();\n Object.keys(headers).forEach(name => {\n let values = headers[name];\n const key = name.toLowerCase();\n if (typeof values === 'string') {\n values = [values];\n }\n if (values.length > 0) {\n this.headers.set(key, values);\n this.maybeSetNormalizedName(name, key);\n }\n });\n };\n }\n }\n /**\n * Checks for existence of a given header.\n *\n * @param name The header name to check for existence.\n *\n * @returns True if the header exists, false otherwise.\n */\n has(name) {\n this.init();\n return this.headers.has(name.toLowerCase());\n }\n /**\n * Retrieves the first value of a given header.\n *\n * @param name The header name.\n *\n * @returns The value string if the header exists, null otherwise\n */\n get(name) {\n this.init();\n const values = this.headers.get(name.toLowerCase());\n return values && values.length > 0 ? values[0] : null;\n }\n /**\n * Retrieves the names of the headers.\n *\n * @returns A list of header names.\n */\n keys() {\n this.init();\n return Array.from(this.normalizedNames.values());\n }\n /**\n * Retrieves a list of values for a given header.\n *\n * @param name The header name from which to retrieve values.\n *\n * @returns A string of values if the header exists, null otherwise.\n */\n getAll(name) {\n this.init();\n return this.headers.get(name.toLowerCase()) || null;\n }\n /**\n * Appends a new value to the existing set of values for a header\n * and returns them in a clone of the original instance.\n *\n * @param name The header name for which to append the values.\n * @param value The value to append.\n *\n * @returns A clone of the HTTP headers object with the value appended to the given header.\n */\n append(name, value) {\n return this.clone({ name, value, op: 'a' });\n }\n /**\n * Sets or modifies a value for a given header in a clone of the original instance.\n * If the header already exists, its value is replaced with the given value\n * in the returned object.\n *\n * @param name The header name.\n * @param value The value or values to set or overide for the given header.\n *\n * @returns A clone of the HTTP headers object with the newly set header value.\n */\n set(name, value) {\n return this.clone({ name, value, op: 's' });\n }\n /**\n * Deletes values for a given header in a clone of the original instance.\n *\n * @param name The header name.\n * @param value The value or values to delete for the given header.\n *\n * @returns A clone of the HTTP headers object with the given value deleted.\n */\n delete(name, value) {\n return this.clone({ name, value, op: 'd' });\n }\n maybeSetNormalizedName(name, lcName) {\n if (!this.normalizedNames.has(lcName)) {\n this.normalizedNames.set(lcName, name);\n }\n }\n init() {\n if (!!this.lazyInit) {\n if (this.lazyInit instanceof HttpHeaders) {\n this.copyFrom(this.lazyInit);\n }\n else {\n this.lazyInit();\n }\n this.lazyInit = null;\n if (!!this.lazyUpdate) {\n this.lazyUpdate.forEach(update => this.applyUpdate(update));\n this.lazyUpdate = null;\n }\n }\n }\n copyFrom(other) {\n other.init();\n Array.from(other.headers.keys()).forEach(key => {\n this.headers.set(key, other.headers.get(key));\n this.normalizedNames.set(key, other.normalizedNames.get(key));\n });\n }\n clone(update) {\n const clone = new HttpHeaders();\n clone.lazyInit =\n (!!this.lazyInit && this.lazyInit instanceof HttpHeaders) ? this.lazyInit : this;\n clone.lazyUpdate = (this.lazyUpdate || []).concat([update]);\n return clone;\n }\n applyUpdate(update) {\n const key = update.name.toLowerCase();\n switch (update.op) {\n case 'a':\n case 's':\n let value = update.value;\n if (typeof value === 'string') {\n value = [value];\n }\n if (value.length === 0) {\n return;\n }\n this.maybeSetNormalizedName(update.name, key);\n const base = (update.op === 'a' ? this.headers.get(key) : undefined) || [];\n base.push(...value);\n this.headers.set(key, base);\n break;\n case 'd':\n const toDelete = update.value;\n if (!toDelete) {\n this.headers.delete(key);\n this.normalizedNames.delete(key);\n }\n else {\n let existing = this.headers.get(key);\n if (!existing) {\n return;\n }\n existing = existing.filter(value => toDelete.indexOf(value) === -1);\n if (existing.length === 0) {\n this.headers.delete(key);\n this.normalizedNames.delete(key);\n }\n else {\n this.headers.set(key, existing);\n }\n }\n break;\n }\n }\n /**\n * @internal\n */\n forEach(fn) {\n this.init();\n Array.from(this.normalizedNames.keys())\n .forEach(key => fn(this.normalizedNames.get(key), this.headers.get(key)));\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Provides encoding and decoding of URL parameter and query-string values.\n *\n * Serializes and parses URL parameter keys and values to encode and decode them.\n * If you pass URL query parameters without encoding,\n * the query parameters can be misinterpreted at the receiving end.\n *\n *\n * @publicApi\n */\nclass HttpUrlEncodingCodec {\n /**\n * Encodes a key name for a URL parameter or query-string.\n * @param key The key name.\n * @returns The encoded key name.\n */\n encodeKey(key) {\n return standardEncoding(key);\n }\n /**\n * Encodes the value of a URL parameter or query-string.\n * @param value The value.\n * @returns The encoded value.\n */\n encodeValue(value) {\n return standardEncoding(value);\n }\n /**\n * Decodes an encoded URL parameter or query-string key.\n * @param key The encoded key name.\n * @returns The decoded key name.\n */\n decodeKey(key) {\n return decodeURIComponent(key);\n }\n /**\n * Decodes an encoded URL parameter or query-string value.\n * @param value The encoded value.\n * @returns The decoded value.\n */\n decodeValue(value) {\n return decodeURIComponent(value);\n }\n}\nfunction paramParser(rawParams, codec) {\n const map = new Map();\n if (rawParams.length > 0) {\n // The `window.location.search` can be used while creating an instance of the `HttpParams` class\n // (e.g. `new HttpParams({ fromString: window.location.search })`). The `window.location.search`\n // may start with the `?` char, so we strip it if it's present.\n const params = rawParams.replace(/^\\?/, '').split('&');\n params.forEach((param) => {\n const eqIdx = param.indexOf('=');\n const [key, val] = eqIdx == -1 ?\n [codec.decodeKey(param), ''] :\n [codec.decodeKey(param.slice(0, eqIdx)), codec.decodeValue(param.slice(eqIdx + 1))];\n const list = map.get(key) || [];\n list.push(val);\n map.set(key, list);\n });\n }\n return map;\n}\n/**\n * Encode input string with standard encodeURIComponent and then un-encode specific characters.\n */\nconst STANDARD_ENCODING_REGEX = /%(\\d[a-f0-9])/gi;\nconst STANDARD_ENCODING_REPLACEMENTS = {\n '40': '@',\n '3A': ':',\n '24': '$',\n '2C': ',',\n '3B': ';',\n '2B': '+',\n '3D': '=',\n '3F': '?',\n '2F': '/',\n};\nfunction standardEncoding(v) {\n return encodeURIComponent(v).replace(STANDARD_ENCODING_REGEX, (s, t) => { var _a; return (_a = STANDARD_ENCODING_REPLACEMENTS[t]) !== null && _a !== void 0 ? _a : s; });\n}\nfunction valueToString(value) {\n return `${value}`;\n}\n/**\n * An HTTP request/response body that represents serialized parameters,\n * per the MIME type `application/x-www-form-urlencoded`.\n *\n * This class is immutable; all mutation operations return a new instance.\n *\n * @publicApi\n */\nclass HttpParams {\n constructor(options = {}) {\n this.updates = null;\n this.cloneFrom = null;\n this.encoder = options.encoder || new HttpUrlEncodingCodec();\n if (!!options.fromString) {\n if (!!options.fromObject) {\n throw new Error(`Cannot specify both fromString and fromObject.`);\n }\n this.map = paramParser(options.fromString, this.encoder);\n }\n else if (!!options.fromObject) {\n this.map = new Map();\n Object.keys(options.fromObject).forEach(key => {\n const value = options.fromObject[key];\n this.map.set(key, Array.isArray(value) ? value : [value]);\n });\n }\n else {\n this.map = null;\n }\n }\n /**\n * Reports whether the body includes one or more values for a given parameter.\n * @param param The parameter name.\n * @returns True if the parameter has one or more values,\n * false if it has no value or is not present.\n */\n has(param) {\n this.init();\n return this.map.has(param);\n }\n /**\n * Retrieves the first value for a parameter.\n * @param param The parameter name.\n * @returns The first value of the given parameter,\n * or `null` if the parameter is not present.\n */\n get(param) {\n this.init();\n const res = this.map.get(param);\n return !!res ? res[0] : null;\n }\n /**\n * Retrieves all values for a parameter.\n * @param param The parameter name.\n * @returns All values in a string array,\n * or `null` if the parameter not present.\n */\n getAll(param) {\n this.init();\n return this.map.get(param) || null;\n }\n /**\n * Retrieves all the parameters for this body.\n * @returns The parameter names in a string array.\n */\n keys() {\n this.init();\n return Array.from(this.map.keys());\n }\n /**\n * Appends a new value to existing values for a parameter.\n * @param param The parameter name.\n * @param value The new value to add.\n * @return A new body with the appended value.\n */\n append(param, value) {\n return this.clone({ param, value, op: 'a' });\n }\n /**\n * Constructs a new body with appended values for the given parameter name.\n * @param params parameters and values\n * @return A new body with the new value.\n */\n appendAll(params) {\n const updates = [];\n Object.keys(params).forEach(param => {\n const value = params[param];\n if (Array.isArray(value)) {\n value.forEach(_value => {\n updates.push({ param, value: _value, op: 'a' });\n });\n }\n else {\n updates.push({ param, value: value, op: 'a' });\n }\n });\n return this.clone(updates);\n }\n /**\n * Replaces the value for a parameter.\n * @param param The parameter name.\n * @param value The new value.\n * @return A new body with the new value.\n */\n set(param, value) {\n return this.clone({ param, value, op: 's' });\n }\n /**\n * Removes a given value or all values from a parameter.\n * @param param The parameter name.\n * @param value The value to remove, if provided.\n * @return A new body with the given value removed, or with all values\n * removed if no value is specified.\n */\n delete(param, value) {\n return this.clone({ param, value, op: 'd' });\n }\n /**\n * Serializes the body to an encoded string, where key-value pairs (separated by `=`) are\n * separated by `&`s.\n */\n toString() {\n this.init();\n return this.keys()\n .map(key => {\n const eKey = this.encoder.encodeKey(key);\n // `a: ['1']` produces `'a=1'`\n // `b: []` produces `''`\n // `c: ['1', '2']` produces `'c=1&c=2'`\n return this.map.get(key).map(value => eKey + '=' + this.encoder.encodeValue(value))\n .join('&');\n })\n // filter out empty values because `b: []` produces `''`\n // which results in `a=1&&c=1&c=2` instead of `a=1&c=1&c=2` if we don't\n .filter(param => param !== '')\n .join('&');\n }\n clone(update) {\n const clone = new HttpParams({ encoder: this.encoder });\n clone.cloneFrom = this.cloneFrom || this;\n clone.updates = (this.updates || []).concat(update);\n return clone;\n }\n init() {\n if (this.map === null) {\n this.map = new Map();\n }\n if (this.cloneFrom !== null) {\n this.cloneFrom.init();\n this.cloneFrom.keys().forEach(key => this.map.set(key, this.cloneFrom.map.get(key)));\n this.updates.forEach(update => {\n switch (update.op) {\n case 'a':\n case 's':\n const base = (update.op === 'a' ? this.map.get(update.param) : undefined) || [];\n base.push(valueToString(update.value));\n this.map.set(update.param, base);\n break;\n case 'd':\n if (update.value !== undefined) {\n let base = this.map.get(update.param) || [];\n const idx = base.indexOf(valueToString(update.value));\n if (idx !== -1) {\n base.splice(idx, 1);\n }\n if (base.length > 0) {\n this.map.set(update.param, base);\n }\n else {\n this.map.delete(update.param);\n }\n }\n else {\n this.map.delete(update.param);\n break;\n }\n }\n });\n this.cloneFrom = this.updates = null;\n }\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * A token used to manipulate and access values stored in `HttpContext`.\n *\n * @publicApi\n */\nclass HttpContextToken {\n constructor(defaultValue) {\n this.defaultValue = defaultValue;\n }\n}\n/**\n * Http context stores arbitrary user defined values and ensures type safety without\n * actually knowing the types. It is backed by a `Map` and guarantees that keys do not clash.\n *\n * This context is mutable and is shared between cloned requests unless explicitly specified.\n *\n * @usageNotes\n *\n * ### Usage Example\n *\n * ```typescript\n * // inside cache.interceptors.ts\n * export const IS_CACHE_ENABLED = new HttpContextToken(() => false);\n *\n * export class CacheInterceptor implements HttpInterceptor {\n *\n * intercept(req: HttpRequest, delegate: HttpHandler): Observable> {\n * if (req.context.get(IS_CACHE_ENABLED) === true) {\n * return ...;\n * }\n * return delegate.handle(req);\n * }\n * }\n *\n * // inside a service\n *\n * this.httpClient.get('/api/weather', {\n * context: new HttpContext().set(IS_CACHE_ENABLED, true)\n * }).subscribe(...);\n * ```\n *\n * @publicApi\n */\nclass HttpContext {\n constructor() {\n this.map = new Map();\n }\n /**\n * Store a value in the context. If a value is already present it will be overwritten.\n *\n * @param token The reference to an instance of `HttpContextToken`.\n * @param value The value to store.\n *\n * @returns A reference to itself for easy chaining.\n */\n set(token, value) {\n this.map.set(token, value);\n return this;\n }\n /**\n * Retrieve the value associated with the given token.\n *\n * @param token The reference to an instance of `HttpContextToken`.\n *\n * @returns The stored value or default if one is defined.\n */\n get(token) {\n if (!this.map.has(token)) {\n this.map.set(token, token.defaultValue());\n }\n return this.map.get(token);\n }\n /**\n * Delete the value associated with the given token.\n *\n * @param token The reference to an instance of `HttpContextToken`.\n *\n * @returns A reference to itself for easy chaining.\n */\n delete(token) {\n this.map.delete(token);\n return this;\n }\n /**\n * Checks for existence of a given token.\n *\n * @param token The reference to an instance of `HttpContextToken`.\n *\n * @returns True if the token exists, false otherwise.\n */\n has(token) {\n return this.map.has(token);\n }\n /**\n * @returns a list of tokens currently stored in the context.\n */\n keys() {\n return this.map.keys();\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Determine whether the given HTTP method may include a body.\n */\nfunction mightHaveBody(method) {\n switch (method) {\n case 'DELETE':\n case 'GET':\n case 'HEAD':\n case 'OPTIONS':\n case 'JSONP':\n return false;\n default:\n return true;\n }\n}\n/**\n * Safely assert whether the given value is an ArrayBuffer.\n *\n * In some execution environments ArrayBuffer is not defined.\n */\nfunction isArrayBuffer(value) {\n return typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer;\n}\n/**\n * Safely assert whether the given value is a Blob.\n *\n * In some execution environments Blob is not defined.\n */\nfunction isBlob(value) {\n return typeof Blob !== 'undefined' && value instanceof Blob;\n}\n/**\n * Safely assert whether the given value is a FormData instance.\n *\n * In some execution environments FormData is not defined.\n */\nfunction isFormData(value) {\n return typeof FormData !== 'undefined' && value instanceof FormData;\n}\n/**\n * Safely assert whether the given value is a URLSearchParams instance.\n *\n * In some execution environments URLSearchParams is not defined.\n */\nfunction isUrlSearchParams(value) {\n return typeof URLSearchParams !== 'undefined' && value instanceof URLSearchParams;\n}\n/**\n * An outgoing HTTP request with an optional typed body.\n *\n * `HttpRequest` represents an outgoing request, including URL, method,\n * headers, body, and other request configuration options. Instances should be\n * assumed to be immutable. To modify a `HttpRequest`, the `clone`\n * method should be used.\n *\n * @publicApi\n */\nclass HttpRequest {\n constructor(method, url, third, fourth) {\n this.url = url;\n /**\n * The request body, or `null` if one isn't set.\n *\n * Bodies are not enforced to be immutable, as they can include a reference to any\n * user-defined data type. However, interceptors should take care to preserve\n * idempotence by treating them as such.\n */\n this.body = null;\n /**\n * Whether this request should be made in a way that exposes progress events.\n *\n * Progress events are expensive (change detection runs on each event) and so\n * they should only be requested if the consumer intends to monitor them.\n */\n this.reportProgress = false;\n /**\n * Whether this request should be sent with outgoing credentials (cookies).\n */\n this.withCredentials = false;\n /**\n * The expected response type of the server.\n *\n * This is used to parse the response appropriately before returning it to\n * the requestee.\n */\n this.responseType = 'json';\n this.method = method.toUpperCase();\n // Next, need to figure out which argument holds the HttpRequestInit\n // options, if any.\n let options;\n // Check whether a body argument is expected. The only valid way to omit\n // the body argument is to use a known no-body method like GET.\n if (mightHaveBody(this.method) || !!fourth) {\n // Body is the third argument, options are the fourth.\n this.body = (third !== undefined) ? third : null;\n options = fourth;\n }\n else {\n // No body required, options are the third argument. The body stays null.\n options = third;\n }\n // If options have been passed, interpret them.\n if (options) {\n // Normalize reportProgress and withCredentials.\n this.reportProgress = !!options.reportProgress;\n this.withCredentials = !!options.withCredentials;\n // Override default response type of 'json' if one is provided.\n if (!!options.responseType) {\n this.responseType = options.responseType;\n }\n // Override headers if they're provided.\n if (!!options.headers) {\n this.headers = options.headers;\n }\n if (!!options.context) {\n this.context = options.context;\n }\n if (!!options.params) {\n this.params = options.params;\n }\n }\n // If no headers have been passed in, construct a new HttpHeaders instance.\n if (!this.headers) {\n this.headers = new HttpHeaders();\n }\n // If no context have been passed in, construct a new HttpContext instance.\n if (!this.context) {\n this.context = new HttpContext();\n }\n // If no parameters have been passed in, construct a new HttpUrlEncodedParams instance.\n if (!this.params) {\n this.params = new HttpParams();\n this.urlWithParams = url;\n }\n else {\n // Encode the parameters to a string in preparation for inclusion in the URL.\n const params = this.params.toString();\n if (params.length === 0) {\n // No parameters, the visible URL is just the URL given at creation time.\n this.urlWithParams = url;\n }\n else {\n // Does the URL already have query parameters? Look for '?'.\n const qIdx = url.indexOf('?');\n // There are 3 cases to handle:\n // 1) No existing parameters -> append '?' followed by params.\n // 2) '?' exists and is followed by existing query string ->\n // append '&' followed by params.\n // 3) '?' exists at the end of the url -> append params directly.\n // This basically amounts to determining the character, if any, with\n // which to join the URL and parameters.\n const sep = qIdx === -1 ? '?' : (qIdx < url.length - 1 ? '&' : '');\n this.urlWithParams = url + sep + params;\n }\n }\n }\n /**\n * Transform the free-form body into a serialized format suitable for\n * transmission to the server.\n */\n serializeBody() {\n // If no body is present, no need to serialize it.\n if (this.body === null) {\n return null;\n }\n // Check whether the body is already in a serialized form. If so,\n // it can just be returned directly.\n if (isArrayBuffer(this.body) || isBlob(this.body) || isFormData(this.body) ||\n isUrlSearchParams(this.body) || typeof this.body === 'string') {\n return this.body;\n }\n // Check whether the body is an instance of HttpUrlEncodedParams.\n if (this.body instanceof HttpParams) {\n return this.body.toString();\n }\n // Check whether the body is an object or array, and serialize with JSON if so.\n if (typeof this.body === 'object' || typeof this.body === 'boolean' ||\n Array.isArray(this.body)) {\n return JSON.stringify(this.body);\n }\n // Fall back on toString() for everything else.\n return this.body.toString();\n }\n /**\n * Examine the body and attempt to infer an appropriate MIME type\n * for it.\n *\n * If no such type can be inferred, this method will return `null`.\n */\n detectContentTypeHeader() {\n // An empty body has no content type.\n if (this.body === null) {\n return null;\n }\n // FormData bodies rely on the browser's content type assignment.\n if (isFormData(this.body)) {\n return null;\n }\n // Blobs usually have their own content type. If it doesn't, then\n // no type can be inferred.\n if (isBlob(this.body)) {\n return this.body.type || null;\n }\n // Array buffers have unknown contents and thus no type can be inferred.\n if (isArrayBuffer(this.body)) {\n return null;\n }\n // Technically, strings could be a form of JSON data, but it's safe enough\n // to assume they're plain strings.\n if (typeof this.body === 'string') {\n return 'text/plain';\n }\n // `HttpUrlEncodedParams` has its own content-type.\n if (this.body instanceof HttpParams) {\n return 'application/x-www-form-urlencoded;charset=UTF-8';\n }\n // Arrays, objects, boolean and numbers will be encoded as JSON.\n if (typeof this.body === 'object' || typeof this.body === 'number' ||\n typeof this.body === 'boolean') {\n return 'application/json';\n }\n // No type could be inferred.\n return null;\n }\n clone(update = {}) {\n var _a;\n // For method, url, and responseType, take the current value unless\n // it is overridden in the update hash.\n const method = update.method || this.method;\n const url = update.url || this.url;\n const responseType = update.responseType || this.responseType;\n // The body is somewhat special - a `null` value in update.body means\n // whatever current body is present is being overridden with an empty\n // body, whereas an `undefined` value in update.body implies no\n // override.\n const body = (update.body !== undefined) ? update.body : this.body;\n // Carefully handle the boolean options to differentiate between\n // `false` and `undefined` in the update args.\n const withCredentials = (update.withCredentials !== undefined) ? update.withCredentials : this.withCredentials;\n const reportProgress = (update.reportProgress !== undefined) ? update.reportProgress : this.reportProgress;\n // Headers and params may be appended to if `setHeaders` or\n // `setParams` are used.\n let headers = update.headers || this.headers;\n let params = update.params || this.params;\n // Pass on context if needed\n const context = (_a = update.context) !== null && _a !== void 0 ? _a : this.context;\n // Check whether the caller has asked to add headers.\n if (update.setHeaders !== undefined) {\n // Set every requested header.\n headers =\n Object.keys(update.setHeaders)\n .reduce((headers, name) => headers.set(name, update.setHeaders[name]), headers);\n }\n // Check whether the caller has asked to set params.\n if (update.setParams) {\n // Set every requested param.\n params = Object.keys(update.setParams)\n .reduce((params, param) => params.set(param, update.setParams[param]), params);\n }\n // Finally, construct the new HttpRequest using the pieces from above.\n return new HttpRequest(method, url, body, {\n params,\n headers,\n context,\n reportProgress,\n responseType,\n withCredentials,\n });\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Type enumeration for the different kinds of `HttpEvent`.\n *\n * @publicApi\n */\nvar HttpEventType;\n(function (HttpEventType) {\n /**\n * The request was sent out over the wire.\n */\n HttpEventType[HttpEventType[\"Sent\"] = 0] = \"Sent\";\n /**\n * An upload progress event was received.\n */\n HttpEventType[HttpEventType[\"UploadProgress\"] = 1] = \"UploadProgress\";\n /**\n * The response status code and headers were received.\n */\n HttpEventType[HttpEventType[\"ResponseHeader\"] = 2] = \"ResponseHeader\";\n /**\n * A download progress event was received.\n */\n HttpEventType[HttpEventType[\"DownloadProgress\"] = 3] = \"DownloadProgress\";\n /**\n * The full response including the body was received.\n */\n HttpEventType[HttpEventType[\"Response\"] = 4] = \"Response\";\n /**\n * A custom event from an interceptor or a backend.\n */\n HttpEventType[HttpEventType[\"User\"] = 5] = \"User\";\n})(HttpEventType || (HttpEventType = {}));\n/**\n * Base class for both `HttpResponse` and `HttpHeaderResponse`.\n *\n * @publicApi\n */\nclass HttpResponseBase {\n /**\n * Super-constructor for all responses.\n *\n * The single parameter accepted is an initialization hash. Any properties\n * of the response passed there will override the default values.\n */\n constructor(init, defaultStatus = 200 /* Ok */, defaultStatusText = 'OK') {\n // If the hash has values passed, use them to initialize the response.\n // Otherwise use the default values.\n this.headers = init.headers || new HttpHeaders();\n this.status = init.status !== undefined ? init.status : defaultStatus;\n this.statusText = init.statusText || defaultStatusText;\n this.url = init.url || null;\n // Cache the ok value to avoid defining a getter.\n this.ok = this.status >= 200 && this.status < 300;\n }\n}\n/**\n * A partial HTTP response which only includes the status and header data,\n * but no response body.\n *\n * `HttpHeaderResponse` is a `HttpEvent` available on the response\n * event stream, only when progress events are requested.\n *\n * @publicApi\n */\nclass HttpHeaderResponse extends HttpResponseBase {\n /**\n * Create a new `HttpHeaderResponse` with the given parameters.\n */\n constructor(init = {}) {\n super(init);\n this.type = HttpEventType.ResponseHeader;\n }\n /**\n * Copy this `HttpHeaderResponse`, overriding its contents with the\n * given parameter hash.\n */\n clone(update = {}) {\n // Perform a straightforward initialization of the new HttpHeaderResponse,\n // overriding the current parameters with new ones if given.\n return new HttpHeaderResponse({\n headers: update.headers || this.headers,\n status: update.status !== undefined ? update.status : this.status,\n statusText: update.statusText || this.statusText,\n url: update.url || this.url || undefined,\n });\n }\n}\n/**\n * A full HTTP response, including a typed response body (which may be `null`\n * if one was not returned).\n *\n * `HttpResponse` is a `HttpEvent` available on the response event\n * stream.\n *\n * @publicApi\n */\nclass HttpResponse extends HttpResponseBase {\n /**\n * Construct a new `HttpResponse`.\n */\n constructor(init = {}) {\n super(init);\n this.type = HttpEventType.Response;\n this.body = init.body !== undefined ? init.body : null;\n }\n clone(update = {}) {\n return new HttpResponse({\n body: (update.body !== undefined) ? update.body : this.body,\n headers: update.headers || this.headers,\n status: (update.status !== undefined) ? update.status : this.status,\n statusText: update.statusText || this.statusText,\n url: update.url || this.url || undefined,\n });\n }\n}\n/**\n * A response that represents an error or failure, either from a\n * non-successful HTTP status, an error while executing the request,\n * or some other failure which occurred during the parsing of the response.\n *\n * Any error returned on the `Observable` response stream will be\n * wrapped in an `HttpErrorResponse` to provide additional context about\n * the state of the HTTP layer when the error occurred. The error property\n * will contain either a wrapped Error object or the error response returned\n * from the server.\n *\n * @publicApi\n */\nclass HttpErrorResponse extends HttpResponseBase {\n constructor(init) {\n // Initialize with a default status of 0 / Unknown Error.\n super(init, 0, 'Unknown Error');\n this.name = 'HttpErrorResponse';\n /**\n * Errors are never okay, even when the status code is in the 2xx success range.\n */\n this.ok = false;\n // If the response was successful, then this was a parse error. Otherwise, it was\n // a protocol-level failure of some sort. Either the request failed in transit\n // or the server returned an unsuccessful status code.\n if (this.status >= 200 && this.status < 300) {\n this.message = `Http failure during parsing for ${init.url || '(unknown url)'}`;\n }\n else {\n this.message = `Http failure response for ${init.url || '(unknown url)'}: ${init.status} ${init.statusText}`;\n }\n this.error = init.error || null;\n }\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Constructs an instance of `HttpRequestOptions` from a source `HttpMethodOptions` and\n * the given `body`. This function clones the object and adds the body.\n *\n * Note that the `responseType` *options* value is a String that identifies the\n * single data type of the response.\n * A single overload version of the method handles each response type.\n * The value of `responseType` cannot be a union, as the combined signature could imply.\n *\n */\nfunction addBody(options, body) {\n return {\n body,\n headers: options.headers,\n context: options.context,\n observe: options.observe,\n params: options.params,\n reportProgress: options.reportProgress,\n responseType: options.responseType,\n withCredentials: options.withCredentials,\n };\n}\n/**\n * Performs HTTP requests.\n * This service is available as an injectable class, with methods to perform HTTP requests.\n * Each request method has multiple signatures, and the return type varies based on\n * the signature that is called (mainly the values of `observe` and `responseType`).\n *\n * Note that the `responseType` *options* value is a String that identifies the\n * single data type of the response.\n * A single overload version of the method handles each response type.\n * The value of `responseType` cannot be a union, as the combined signature could imply.\n\n *\n * @usageNotes\n * Sample HTTP requests for the [Tour of Heroes](/tutorial/toh-pt0) application.\n *\n * ### HTTP Request Example\n *\n * ```\n * // GET heroes whose name contains search term\n * searchHeroes(term: string): observable{\n *\n * const params = new HttpParams({fromString: 'name=term'});\n * return this.httpClient.request('GET', this.heroesUrl, {responseType:'json', params});\n * }\n * ```\n *\n * Alternatively, the parameter string can be used without invoking HttpParams\n * by directly joining to the URL.\n * ```\n * this.httpClient.request('GET', this.heroesUrl + '?' + 'name=term', {responseType:'json'});\n * ```\n *\n *\n * ### JSONP Example\n * ```\n * requestJsonp(url, callback = 'callback') {\n * return this.httpClient.jsonp(this.heroesURL, callback);\n * }\n * ```\n *\n * ### PATCH Example\n * ```\n * // PATCH one of the heroes' name\n * patchHero (id: number, heroName: string): Observable<{}> {\n * const url = `${this.heroesUrl}/${id}`; // PATCH api/heroes/42\n * return this.httpClient.patch(url, {name: heroName}, httpOptions)\n * .pipe(catchError(this.handleError('patchHero')));\n * }\n * ```\n *\n * @see [HTTP Guide](guide/http)\n * @see [HTTP Request](api/common/http/HttpRequest)\n *\n * @publicApi\n */\nclass HttpClient {\n constructor(handler) {\n this.handler = handler;\n }\n /**\n * Constructs an observable for a generic HTTP request that, when subscribed,\n * fires the request through the chain of registered interceptors and on to the\n * server.\n *\n * You can pass an `HttpRequest` directly as the only parameter. In this case,\n * the call returns an observable of the raw `HttpEvent` stream.\n *\n * Alternatively you can pass an HTTP method as the first parameter,\n * a URL string as the second, and an options hash containing the request body as the third.\n * See `addBody()`. In this case, the specified `responseType` and `observe` options determine the\n * type of returned observable.\n * * The `responseType` value determines how a successful response body is parsed.\n * * If `responseType` is the default `json`, you can pass a type interface for the resulting\n * object as a type parameter to the call.\n *\n * The `observe` value determines the return type, according to what you are interested in\n * observing.\n * * An `observe` value of events returns an observable of the raw `HttpEvent` stream, including\n * progress events by default.\n * * An `observe` value of response returns an observable of `HttpResponse`,\n * where the `T` parameter depends on the `responseType` and any optionally provided type\n * parameter.\n * * An `observe` value of body returns an observable of `` with the same `T` body type.\n *\n */\n request(first, url, options = {}) {\n let req;\n // First, check whether the primary argument is an instance of `HttpRequest`.\n if (first instanceof HttpRequest) {\n // It is. The other arguments must be undefined (per the signatures) and can be\n // ignored.\n req = first;\n }\n else {\n // It's a string, so it represents a URL. Construct a request based on it,\n // and incorporate the remaining arguments (assuming `GET` unless a method is\n // provided.\n // Figure out the headers.\n let headers = undefined;\n if (options.headers instanceof HttpHeaders) {\n headers = options.headers;\n }\n else {\n headers = new HttpHeaders(options.headers);\n }\n // Sort out parameters.\n let params = undefined;\n if (!!options.params) {\n if (options.params instanceof HttpParams) {\n params = options.params;\n }\n else {\n params = new HttpParams({ fromObject: options.params });\n }\n }\n // Construct the request.\n req = new HttpRequest(first, url, (options.body !== undefined ? options.body : null), {\n headers,\n context: options.context,\n params,\n reportProgress: options.reportProgress,\n // By default, JSON is assumed to be returned for all calls.\n responseType: options.responseType || 'json',\n withCredentials: options.withCredentials,\n });\n }\n // Start with an Observable.of() the initial request, and run the handler (which\n // includes all interceptors) inside a concatMap(). This way, the handler runs\n // inside an Observable chain, which causes interceptors to be re-run on every\n // subscription (this also makes retries re-run the handler, including interceptors).\n const events$ = of(req).pipe(concatMap((req) => this.handler.handle(req)));\n // If coming via the API signature which accepts a previously constructed HttpRequest,\n // the only option is to get the event stream. Otherwise, return the event stream if\n // that is what was requested.\n if (first instanceof HttpRequest || options.observe === 'events') {\n return events$;\n }\n // The requested stream contains either the full response or the body. In either\n // case, the first step is to filter the event stream to extract a stream of\n // responses(s).\n const res$ = events$.pipe(filter((event) => event instanceof HttpResponse));\n // Decide which stream to return.\n switch (options.observe || 'body') {\n case 'body':\n // The requested stream is the body. Map the response stream to the response\n // body. This could be done more simply, but a misbehaving interceptor might\n // transform the response body into a different format and ignore the requested\n // responseType. Guard against this by validating that the response is of the\n // requested type.\n switch (req.responseType) {\n case 'arraybuffer':\n return res$.pipe(map((res) => {\n // Validate that the body is an ArrayBuffer.\n if (res.body !== null && !(res.body instanceof ArrayBuffer)) {\n throw new Error('Response is not an ArrayBuffer.');\n }\n return res.body;\n }));\n case 'blob':\n return res$.pipe(map((res) => {\n // Validate that the body is a Blob.\n if (res.body !== null && !(res.body instanceof Blob)) {\n throw new Error('Response is not a Blob.');\n }\n return res.body;\n }));\n case 'text':\n return res$.pipe(map((res) => {\n // Validate that the body is a string.\n if (res.body !== null && typeof res.body !== 'string') {\n throw new Error('Response is not a string.');\n }\n return res.body;\n }));\n case 'json':\n default:\n // No validation needed for JSON responses, as they can be of any type.\n return res$.pipe(map((res) => res.body));\n }\n case 'response':\n // The response stream was requested directly, so return it.\n return res$;\n default:\n // Guard against new future observe types being added.\n throw new Error(`Unreachable: unhandled observe type ${options.observe}}`);\n }\n }\n /**\n * Constructs an observable that, when subscribed, causes the configured\n * `DELETE` request to execute on the server. See the individual overloads for\n * details on the return type.\n *\n * @param url The endpoint URL.\n * @param options The HTTP options to send with the request.\n *\n */\n delete(url, options = {}) {\n return this.request('DELETE', url, options);\n }\n /**\n * Constructs an observable that, when subscribed, causes the configured\n * `GET` request to execute on the server. See the individual overloads for\n * details on the return type.\n */\n get(url, options = {}) {\n return this.request('GET', url, options);\n }\n /**\n * Constructs an observable that, when subscribed, causes the configured\n * `HEAD` request to execute on the server. The `HEAD` method returns\n * meta information about the resource without transferring the\n * resource itself. See the individual overloads for\n * details on the return type.\n */\n head(url, options = {}) {\n return this.request('HEAD', url, options);\n }\n /**\n * Constructs an `Observable` that, when subscribed, causes a request with the special method\n * `JSONP` to be dispatched via the interceptor pipeline.\n * The [JSONP pattern](https://en.wikipedia.org/wiki/JSONP) works around limitations of certain\n * API endpoints that don't support newer,\n * and preferable [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) protocol.\n * JSONP treats the endpoint API as a JavaScript file and tricks the browser to process the\n * requests even if the API endpoint is not located on the same domain (origin) as the client-side\n * application making the request.\n * The endpoint API must support JSONP callback for JSONP requests to work.\n * The resource API returns the JSON response wrapped in a callback function.\n * You can pass the callback function name as one of the query parameters.\n * Note that JSONP requests can only be used with `GET` requests.\n *\n * @param url The resource URL.\n * @param callbackParam The callback function name.\n *\n */\n jsonp(url, callbackParam) {\n return this.request('JSONP', url, {\n params: new HttpParams().append(callbackParam, 'JSONP_CALLBACK'),\n observe: 'body',\n responseType: 'json',\n });\n }\n /**\n * Constructs an `Observable` that, when subscribed, causes the configured\n * `OPTIONS` request to execute on the server. This method allows the client\n * to determine the supported HTTP methods and other capabilities of an endpoint,\n * without implying a resource action. See the individual overloads for\n * details on the return type.\n */\n options(url, options = {}) {\n return this.request('OPTIONS', url, options);\n }\n /**\n * Constructs an observable that, when subscribed, causes the configured\n * `PATCH` request to execute on the server. See the individual overloads for\n * details on the return type.\n */\n patch(url, body, options = {}) {\n return this.request('PATCH', url, addBody(options, body));\n }\n /**\n * Constructs an observable that, when subscribed, causes the configured\n * `POST` request to execute on the server. The server responds with the location of\n * the replaced resource. See the individual overloads for\n * details on the return type.\n */\n post(url, body, options = {}) {\n return this.request('POST', url, addBody(options, body));\n }\n /**\n * Constructs an observable that, when subscribed, causes the configured\n * `PUT` request to execute on the server. The `PUT` method replaces an existing resource\n * with a new set of values.\n * See the individual overloads for details on the return type.\n */\n put(url, body, options = {}) {\n return this.request('PUT', url, addBody(options, body));\n }\n}\nHttpClient.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: HttpClient, deps: [{ token: HttpHandler }], target: i0.ɵɵFactoryTarget.Injectable });\nHttpClient.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: HttpClient });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: HttpClient, decorators: [{\n type: Injectable\n }], ctorParameters: function () { return [{ type: HttpHandler }]; } });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * `HttpHandler` which applies an `HttpInterceptor` to an `HttpRequest`.\n *\n *\n */\nclass HttpInterceptorHandler {\n constructor(next, interceptor) {\n this.next = next;\n this.interceptor = interceptor;\n }\n handle(req) {\n return this.interceptor.intercept(req, this.next);\n }\n}\n/**\n * A multi-provider token that represents the array of registered\n * `HttpInterceptor` objects.\n *\n * @publicApi\n */\nconst HTTP_INTERCEPTORS = new InjectionToken('HTTP_INTERCEPTORS');\nclass NoopInterceptor {\n intercept(req, next) {\n return next.handle(req);\n }\n}\nNoopInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NoopInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\nNoopInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NoopInterceptor });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.3.0\", ngImport: i0, type: NoopInterceptor, decorators: [{\n type: Injectable\n }] });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// Every request made through JSONP needs a callback name that's unique across the\n// whole page. Each request is assigned an id and the callback name is constructed\n// from that. The next id to be assigned is tracked in a global variable here that\n// is shared among all applications on the page.\nlet nextRequestId = 0;\n/**\n * When a pending