constructor( mesh, iks = [] ) {

		/**
		 * The skinned mesh.
		 *
		 * @type {SkinnedMesh}
		 */
		this.mesh = mesh;

		/**
		 * The IK objects.
		 *
		 * @type {SkinnedMesh}
		 */
		this.iks = iks;

		this._initialQuaternions = [];
		this._workingQuaternion = new Quaternion();

		for ( const ik of iks ) {

			const chainQuats = [];
			for ( let i = 0; i < ik.links.length; i ++ ) {

			  chainQuats.push( new Quaternion() );

			}

			this._initialQuaternions.push( chainQuats );

		}

		this._valid();

	}
@param {SkinnedMesh} mesh - The skinned mesh.
@param {Array<CCDIKSolver~IK>} [iks=[]] - The IK objects.