import { InterpolateDiscrete } from '../../constants.js';
import { KeyframeTrack } from '../KeyframeTrack.js';

/**
 * A Track of Boolean keyframe values.
 */

function BooleanKeyframeTrack( name, times, values ) {

	KeyframeTrack.call( this, name, times, values );

}

BooleanKeyframeTrack.prototype = Object.assign( Object.create( KeyframeTrack.prototype ), {

	constructor: BooleanKeyframeTrack,

	ValueTypeName: 'bool',
	ValueBufferType: Array,

	DefaultInterpolation: InterpolateDiscrete,

	InterpolantFactoryMethodLinear: undefined,
	InterpolantFactoryMethodSmooth: undefined

	// Note: Actually this track could have a optimized / compressed
	// representation of a single value and a custom interpolant that
	// computes "firstValue ^ isOdd( index )".

} );

export { BooleanKeyframeTrack };

@@ -156,17 +156,13 @@
  */%0A
-%0Afunction
+class
  Boo
@@ -182,152 +182,57 @@
 rack
-( name, times, values ) %7B%0A%0A%09KeyframeTrack.call( this, name, times, values );%0A%0A%7D%0A%0ABooleanKeyframeTrack.prototype = Object.assign( Object.create( 
+ extends KeyframeTrack %7B%7D%0A%0AObject.assign( Boolean
 Keyf
@@ -254,52 +254,13 @@
 type
- )
 , %7B%0A%0A
-%09constructor: BooleanKeyframeTrack,%0A%0A
 %09Val

Convert to es6 class