function traverse( entry ) {

					if ( entry.param ) {

						grants.push( entry.param ); // Save the reference even from bone data for efficiently
						// simulating PMX animation system

						bones[ entry.param.index ].grant = entry.param;

					}

					entry.visited = true;

					for ( let i = 0, il = entry.children.length; i < il; i ++ ) {

						const child = entry.children[ i ]; // Cut off a loop if exists. (Is a grant loop invalid?)

						if ( ! child.visited ) traverse( child );

					}

				}
@param {Object} data - parsed PMD/PMX data
@return {BufferGeometry}