code: function __deserializeObjectStreaming(buffer, start, options) {
  	let end = start;
  	let dataView = new DataView(buffer);
  	let endData = new Uint16Array(TYPE_HEADER.OBJECT_END);
  	let data = {};
  	while (start < buffer.byteLength) {
  		let tmpType = dataView.getUint16(start, true);
  		if (tmpType === endData[0]) {
  			end += 2;
  			break;
  		}
  
  		let subType, subKey, subData;
  		({ anchor: start, value: subType } = __deserializeType(buffer, start, options));
  		({ anchor: start, value: subKey } = __deserializeShortString(buffer, start, options));
  		({ anchor: start, value: subData } = __deserializeData(subType, buffer, start, options));
  		data[subKey] = subData;
  		end = start;
  	}
  	return { anchor: end, value: data };
  }
docs: Deserialize object data (use streaming)
  @param {ArrayBuffer} buffer
  @param {number} start - byteOffset
  @param {DeserializeOptions} options
  @returns {{anchor: number, value: {}}} anchor: byteOffset
  @private