function Cellular(width, height, options) {
      var _this14;
      if (options === void 0) {
        options = {};
      }
      _this14 = _Map3.call(this, width, height) || this;
      _this14._options = {
        born: [5, 6, 7, 8],
        survive: [4, 5, 6, 7, 8],
        topology: 8
      };
      _this14.setOptions(options);
      _this14._dirs = DIRS[_this14._options.topology];
      _this14._map = _this14._fillMap(0);
      return _this14;
    }
@class Cellular automaton map generator
@augments ROT.Map
@param {int} [width=ROT.DEFAULT_WIDTH]
@param {int} [height=ROT.DEFAULT_HEIGHT]
@param {object} [options] Options
@param {int[]} [options.born] List of neighbor counts for a new cell to be born in empty space
@param {int[]} [options.survive] List of neighbor counts for an existing  cell to survive
@param {int} [options.topology] Topology 4 or 6 or 8