whole_func_string: function getLocalOrGetUTC(increment, date) {
    var _incrementHandlers;
  
    var utc = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
  
    var incrementHandlers = (_incrementHandlers = {}, defineProperty(_incrementHandlers, TIMEZONE_OFFSET, function (date) {
      return utc ? 0 : date.getTimezoneOffset() / 60 * -1;
    }), defineProperty(_incrementHandlers, MILLISECOND, function (date) {
      return date['get' + utc + 'Milliseconds']();
    }), defineProperty(_incrementHandlers, SECOND, function (date) {
      return date['get' + utc + 'Seconds']();
    }), defineProperty(_incrementHandlers, MINUTE, function (date) {
      return date['get' + utc + 'Minutes']();
    }), defineProperty(_incrementHandlers, HOUR, function (date) {
      return date['get' + utc + 'Hours']();
    }), defineProperty(_incrementHandlers, DATE, function (date) {
      return date['get' + utc + 'Date']();
    }), defineProperty(_incrementHandlers, DAY, function (date) {
      return date['get' + utc + 'Day']() + 1;
    }), defineProperty(_incrementHandlers, WEEK, function (date) {
      return Math.floor(((date - new Date(date['get' + utc + 'FullYear'](), 0, 1)) / 1000 / 60 / 60 / 24 + 1) / 7);
    }), defineProperty(_incrementHandlers, MONTH, function (date) {
      return date['get' + utc + 'Month']() + 1;
    }), defineProperty(_incrementHandlers, YEAR, function (date) {
      return date['get' + utc + 'FullYear']();
    }), _incrementHandlers);
  
    return incrementHandlers[increment](date);
  }
func_code_string: function getLocalOrGetUTC(increment, date) {
    var _incrementHandlers;
  
    var utc = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
  
    var incrementHandlers = (_incrementHandlers = {}, defineProperty(_incrementHandlers, TIMEZONE_OFFSET, function (date) {
      return utc ? 0 : date.getTimezoneOffset() / 60 * -1;
    }), defineProperty(_incrementHandlers, MILLISECOND, function (date) {
      return date['get' + utc + 'Milliseconds']();
    }), defineProperty(_incrementHandlers, SECOND, function (date) {
      return date['get' + utc + 'Seconds']();
    }), defineProperty(_incrementHandlers, MINUTE, function (date) {
      return date['get' + utc + 'Minutes']();
    }), defineProperty(_incrementHandlers, HOUR, function (date) {
      return date['get' + utc + 'Hours']();
    }), defineProperty(_incrementHandlers, DATE, function (date) {
      return date['get' + utc + 'Date']();
    }), defineProperty(_incrementHandlers, DAY, function (date) {
      return date['get' + utc + 'Day']() + 1;
    }), defineProperty(_incrementHandlers, WEEK, function (date) {
      return Math.floor(((date - new Date(date['get' + utc + 'FullYear'](), 0, 1)) / 1000 / 60 / 60 / 24 + 1) / 7);
    }), defineProperty(_incrementHandlers, MONTH, function (date) {
      return date['get' + utc + 'Month']() + 1;
    }), defineProperty(_incrementHandlers, YEAR, function (date) {
      return date['get' + utc + 'FullYear']();
    }), _incrementHandlers);
  
    return incrementHandlers[increment](date);
  }
func_documentation_string: Gets the specified increment in local time or UTC for a date object
  @param   {String}  increment   date increment to get the value of
  @param   {Date}    date        a date object
  @param   {String}  utc         should equal 'UTC' if UTC function
  @returns {Date}                the value for that increment, in UTC