// Available variables:
  // - Machine
  // - interpret
  // - assign
  // - send
  // - sendParent
  // - spawn
  // - raise
  // - actions
  // - XState (all XState exports)
  
  const registerMachine = Machine({
    initial: 'idle',
  states: {
    idle: {
      on: {
        SUCCESS: 'loggedIn',
        FAIL: 'loggedOut',
      },
    },
    loggedIn: {
      on: {
        LOGOUT: 'loggedOut',
      },
    },
    loggedOut: {
      on: {
        LOGIN: 'loading',
      },
    },
    error: {
      onEntry: ['enterError'],
      on: {
        TRY_AGAIN: 'loading',
      },
    },
    loading: {
      on: {
        SUCCESS: 'loggedIn',
        FAIL: 'error',
      },
    },
  },
  });