How to get bech32 address from cointype 60?

I want to get bech32 address from crossfi chain, i already tried this method, but the result is not similar to the expected address

    import { stringToPath } from "@cosmjs/crypto";
    import { DirectSecp256k1HdWallet } from "@cosmjs/proto-signing";
    const seedPhrase = 'vicious axis wedding slot gauge garbage budget attack because boring now father tomato million olive'
    const hdPath = stringToPath("m/44'/60'/0'/0/0")
    const wallet = await DirectSecp256k1HdWallet.fromMnemonic(seedPhrase, {
      prefix: 'mx', hdPaths: [hdPath]
    const accounts = await wallet.getAccounts();
    console.log("Expect address : mx18e4k6g8kjq2v04v3uarha27e6qfuemlzpjah0f")

The expected address should be correct because that’s what i got from keplr wallet with the same seed phrase
I wonder if there’s something missing that i need to do to get the expected address
thank you very much