 
   @doc """
   Invoked to change the state of the handler when a different version of the
-  handler's module module is loaded (hot code swapping) and the state's term
+  handler's module is loaded (hot code swapping) and the state's term
   structure should be changed.
 
   `old_vsn` is the previous version of the module (defined by the `@vsn`

  exits or its node is disconnected. Therefore it is not guaranteed that
  `terminate/2` is called when a `GenEvent` exits.

  Care should be taken to cleanup because the `GenEvent` can continue is loop
  after removing the handler. This is different to most other OTP behaviours.
  For example if the handler controls a `port` (e.g. `:gen_tcp.socket`) or
  `File.io_device`, it will be need to be closed in `terminate/2` as the

  As an example, let's have a GenEvent that accumulates messages until
  they are collected by an explicit call.

      # Define an Event Handler
      defmodule LoggerHandler do
        use GenEvent

