function defineDataViewProperty(object, name, dataView, bits, offset) {
  const getter = `getUint${bits}`;
  const setter = `setUint${bits}`;
  Object.defineProperty(object, name, {
    enumerable: true,
    get() {
      return dataView[getter](offset);
    },
    set(value) {
      return dataView[setter](offset, value);
    },
  })
}
Defines a property on an object reading and
writing its data from or to a DataView.