https://matthewmacfarquhar.medium.com/programming-webassembly-with-rust-part-3-targeting-js-with-wasm-bindgen-d0ee3c28d18a