code: function makeCalendar(char) {
      let calendar = function (id) {
          if (id === undefined) {
              return calendar.history();
          }
          else {
              return new EventImpl(char, id);
          }
      };
      calendar.history = function (fromId) {
          return char.agent.request('get_characters_character_id_calendar', {
              path: { character_id: char.id }, query: { from_event: fromId }
          }, char.ssoToken);
      };
      return calendar;
  }
docs: Create a new {@link Calendar} instance that uses the given character agent to
  make its HTTP requests to the ESI interface.
  
  @param char The character access information
  @returns An Calendar API instance