working draft of ArrayBuffer