function insertSeeAlso( node, index, parent ) {
		var description;
		var newNodes;
		var content;
		var related;
		var newNode;
		var pkgName;
		var links;
		var child;
		var meta;
		var dir;
		var c;
		var i;

		if ( RELATED_START.test( node.value ) === true ) {
			debug( 'Found "See Also" section...' );
			pkgName = file.dirname.substring( file.dirname.lastIndexOf( '@stdlib' ) );
			related = pkg2related( pkgName );
			if ( !related || related.length === 0 ) {
				return;
			}
			links = [];
			content = RELATED_TEMPLATE;
			for ( i = 0; i < related.length; i++ ) {
				dir = join( root, 'lib', 'node_modules', related[ i ] );
				meta = readJSON( join( dir, 'package.json' ) );
				if ( meta instanceof Error ) {
					throw meta;
				}
				description = uncapitalizeDescription( meta.description );
				description = escapeMarkdown( description );
				content += '-   <span class="package-name">[`'+related[ i ]+'`]['+related[ i ]+']</span>';
				content += '<span class="delimiter">: </span>';
				content += '<span class="description">' + description + '</span>';
				content += '\n';
				if ( !existingLinks[ related[ i ] ] ) {
					links.push( '['+related[ i ]+']: https://github.com/stdlib-js/stdlib' );
				}
			}
			content += '\n';
			content += '</section>';
			newNode = {
				'type': 'html',
				'value': content
			};
			for ( i = index; i < parent.children.length; i++ ) {
				if ( parent.children[ i ].value === RELATED_END ) {
					parent.children.splice( index+1, i-index-1, newNode );
					break;
				}
			}
			if ( i === parent.children.length - 1 ) {
				throw new Error( format( 'invalid node. Ensure that the Markdown file includes both a starting `<section class="related">` and closing `</section>\n\n<!-- /.related -->`. Node: `%s`.', node.value ) );
			}
			if ( links.length > 0 ) {
				if ( found ) {
					debug( 'Append links to links section...' );
					newNode = {
						'type': 'html',
						'value': links.join( '\n\n' )
					};
					for ( i = 0; i < parent.children.length; i++ ) {
						child = parent.children[ i ];
						if (
							child.type === 'html' &&
							child.value === '<!-- <related-links> -->'
						) {
							parent.children.splice( i+1, 0, newNode );
							break;
						}
					}
				} else {
					debug( 'Create <related-links> section...' );
					newNodes = [
						{
							'type': 'html',
							'value': '<!-- <related-links> -->'
						},
						{
							'type': 'html',
							'value': links.join( '\n\n' )
						},
						{
							'type': 'html',
							'value': '<!-- </related-links> -->'
						}
					];
					for ( i = 0; i < parent.children.length; i++ ) {
						child = parent.children[ i ];
						if (
							child.type === 'html' &&
							child.value === '<!-- /.links -->'
						) {
							c = parent.children;
							c.splice.apply( c, [ i-1, 0 ].concat( newNodes ) );
							found = true;
							break;
						}
					}
				}
			}
		}
	}
Inserts a "See Also" section into a Markdown AST.

@private
@param {Node} node - reference node
@param {number} index - position of `node` in `parent`
@param {Node} parent - parent of `node`
@throws {Error} "See Also" section must have starting and ending tags
@returns {void}