diff --git a/lib/node_modules/@stdlib/symbol/to-string-tag/README.md b/lib/node_modules/@stdlib/symbol/to-string-tag/README.md
new file mode 100644
index 000000000000..8e3decd7d4d6
--- /dev/null
+++ b/lib/node_modules/@stdlib/symbol/to-string-tag/README.md
@@ -0,0 +1,137 @@
+
+
+# ToStringTagSymbol
+
+> [`Symbol.toStringTag`][mdn-symbol] which specifies the default string tag for an object.
+
+
+
+
+
+
+
+
+
+
+
+## Usage
+
+```javascript
+var ToStringTagSymbol = require( '@stdlib/symbol/to-string-tag' );
+```
+
+#### ToStringTagSymbol
+
+toStringTag [`symbol`][mdn-symbol] which specifies the default string tag used by Object.prototype.toString.
+
+```javascript
+var s = typeof ToStringTagSymbol;
+// e.g., returns 'symbol'
+```
+
+
+
+
+
+
+
+
+
+## Notes
+
+- The [symbol][mdn-symbol] is only supported in environments which support [symbols][mdn-symbol]. In non-supporting environments, the value is `null`.
+
+
+
+
+
+
+
+
+
+## Examples
+
+
+
+```javascript
+var ToStringTagSymbol = require( '@stdlib/symbol/to-string-tag' );
+
+function Foo() {
+ // Assign a property to avoid an empty function:
+ this.x = 1;
+}
+
+if ( ToStringTagSymbol ) {
+ Foo.prototype[ ToStringTagSymbol ] = 'FooObject';
+}
+
+var obj = new Foo();
+
+// When using Object.prototype.toString:
+console.log( Object.prototype.toString.call( obj ) );
+// => '[object FooObject]'
+```
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+[mdn-symbol]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol
+
+
+
+[@stdlib/symbol/ctor]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/symbol/ctor
+
+
+
+
+
+
+
+
diff --git a/lib/node_modules/@stdlib/symbol/to-string-tag/docs/repl.txt b/lib/node_modules/@stdlib/symbol/to-string-tag/docs/repl.txt
new file mode 100644
index 000000000000..0ce0e5ff0cde
--- /dev/null
+++ b/lib/node_modules/@stdlib/symbol/to-string-tag/docs/repl.txt
@@ -0,0 +1,15 @@
+{{alias}}
+ toStringTag symbol.
+
+ This symbol specifies the default tag used by Object.prototype.toString.
+
+ The symbol is only supported in ES6/ES2015+ environments. For non-supporting
+ environments, the value is `null`.
+
+ Examples
+ --------
+ > var s = {{alias}};
+
+ See Also
+ --------
+
diff --git a/lib/node_modules/@stdlib/symbol/to-string-tag/docs/types/index.d.ts b/lib/node_modules/@stdlib/symbol/to-string-tag/docs/types/index.d.ts
new file mode 100644
index 000000000000..5609fe2e7ce5
--- /dev/null
+++ b/lib/node_modules/@stdlib/symbol/to-string-tag/docs/types/index.d.ts
@@ -0,0 +1,30 @@
+/*
+* @license Apache-2.0
+*
+* Copyright (c) 2021 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+// TypeScript Version: 4.1
+
+/**
+* toStringTag symbol.
+*
+* ## Notes
+*
+* - This symbol specifies the default tag used by `Object.prototype.toString`.
+* - The symbol is only supported in ES6/ES2015+ environments. For non-supporting environments, the value is `null`.
+*/
+export = Symbol.toStringTag;
+
diff --git a/lib/node_modules/@stdlib/symbol/to-string-tag/docs/types/test.ts b/lib/node_modules/@stdlib/symbol/to-string-tag/docs/types/test.ts
new file mode 100644
index 000000000000..84ed801212c6
--- /dev/null
+++ b/lib/node_modules/@stdlib/symbol/to-string-tag/docs/types/test.ts
@@ -0,0 +1,30 @@
+/*
+* @license Apache-2.0
+*
+* Copyright (c) 2021 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+/* eslint-disable @typescript-eslint/no-unused-expressions */
+
+import ToStringTagSymbol = require( './index' );
+
+
+// TESTS //
+
+// The exported value is the toStringTag symbol...
+{
+ ToStringTagSymbol;
+}
+
diff --git a/lib/node_modules/@stdlib/symbol/to-string-tag/examples/index.js b/lib/node_modules/@stdlib/symbol/to-string-tag/examples/index.js
new file mode 100644
index 000000000000..d1fdbd9faf43
--- /dev/null
+++ b/lib/node_modules/@stdlib/symbol/to-string-tag/examples/index.js
@@ -0,0 +1,35 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2018 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+'use strict';
+
+var ToStringTagSymbol = require( './../lib' );
+
+function Person( name ) {
+ this.name = name;
+
+ // Set a custom tag used by Object.prototype.toString:
+ if ( ToStringTagSymbol ) {
+ this[ ToStringTagSymbol ] = 'Person';
+ }
+}
+
+var p = new Person( 'Alice' );
+
+console.log( Object.prototype.toString.call( p ) );
+// => '[object Person]'
diff --git a/lib/node_modules/@stdlib/symbol/to-string-tag/lib/index.js b/lib/node_modules/@stdlib/symbol/to-string-tag/lib/index.js
new file mode 100644
index 000000000000..b6975be8dae2
--- /dev/null
+++ b/lib/node_modules/@stdlib/symbol/to-string-tag/lib/index.js
@@ -0,0 +1,50 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2018 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+'use strict';
+
+/**
+* ToStringTag symbol.
+*
+* @module @stdlib/symbol/to-string-tag
+*
+* @example
+* var ToStringTagSymbol = require( '@stdlib/symbol/to-string-tag' );
+*
+* function Person( name ) {
+* this.name = name;
+*
+* // Provide a custom `toString` tag:
+* if ( ToStringTagSymbol ) {
+* this[ ToStringTagSymbol ] = 'Person';
+* }
+* }
+*
+* var p = new Person( 'Alice' );
+* console.log( Object.prototype.toString.call( p ) );
+* // => '[object Person]'
+*/
+
+// MAIN //
+
+var main = require( './main.js' );
+
+
+// EXPORTS //
+
+module.exports = main;
diff --git a/lib/node_modules/@stdlib/symbol/to-string-tag/lib/main.js b/lib/node_modules/@stdlib/symbol/to-string-tag/lib/main.js
new file mode 100644
index 000000000000..b6ffc9988224
--- /dev/null
+++ b/lib/node_modules/@stdlib/symbol/to-string-tag/lib/main.js
@@ -0,0 +1,56 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2018 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+'use strict';
+
+// MODULES //
+
+var hasToStringTagSupport = require( '@stdlib/assert/has-tostringtag-support' );
+
+
+// MAIN //
+
+/**
+* ToStringTag symbol.
+*
+* @name ToStringTagSymbol
+* @constant
+* @type {(symbol|null)}
+*
+* @example
+* function Person( name ) {
+* this.name = name;
+*
+* // Provide a custom `toString` tag:
+* if ( ToStringTagSymbol ) {
+* this[ ToStringTagSymbol ] = 'Person';
+* }
+* }
+*
+* var p = new Person( 'Alice' );
+* console.log( Object.prototype.toString.call( p ) );
+* // => '[object Person]'
+*/
+var ToStringTagSymbol = ( hasToStringTagSupport() ) ?
+ Symbol.toStringTag :
+ null;
+
+
+// EXPORTS //
+
+module.exports = ToStringTagSymbol;
diff --git a/lib/node_modules/@stdlib/symbol/to-string-tag/package.json b/lib/node_modules/@stdlib/symbol/to-string-tag/package.json
new file mode 100644
index 000000000000..5eebd45b98a9
--- /dev/null
+++ b/lib/node_modules/@stdlib/symbol/to-string-tag/package.json
@@ -0,0 +1,59 @@
+{
+ "name": "@stdlib/symbol/to-string-tag",
+ "version": "0.0.0",
+ "description": "Symbol.toStringTag.",
+ "license": "Apache-2.0",
+ "author": {
+ "name": "The Stdlib Authors",
+ "url": "https://github.com/stdlib-js/stdlib/graphs/contributors"
+ },
+ "contributors": [
+ {
+ "name": "The Stdlib Authors",
+ "url": "https://github.com/stdlib-js/stdlib/graphs/contributors"
+ }
+ ],
+ "main": "./lib",
+ "directories": {
+ "doc": "./docs",
+ "example": "./examples",
+ "lib": "./lib",
+ "test": "./test"
+ },
+ "types": "./docs/types",
+ "scripts": {},
+ "homepage": "https://github.com/stdlib-js/stdlib",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/stdlib-js/stdlib.git"
+ },
+ "bugs": {
+ "url": "https://github.com/stdlib-js/stdlib/issues"
+ },
+ "dependencies": {},
+ "devDependencies": {},
+ "engines": {
+ "node": ">=0.10.0",
+ "npm": ">2.7.0"
+ },
+ "os": [
+ "aix",
+ "darwin",
+ "freebsd",
+ "linux",
+ "macos",
+ "openbsd",
+ "sunos",
+ "win32",
+ "windows"
+ ],
+ "keywords": [
+ "stdlib",
+ "symbol",
+ "sym",
+ "to-string-tag",
+ "object",
+ "string-tag",
+ "tag"
+ ]
+}
diff --git a/lib/node_modules/@stdlib/symbol/to-string-tag/test/test.js b/lib/node_modules/@stdlib/symbol/to-string-tag/test/test.js
new file mode 100644
index 000000000000..985b6f19cd96
--- /dev/null
+++ b/lib/node_modules/@stdlib/symbol/to-string-tag/test/test.js
@@ -0,0 +1,52 @@
+/**
+* @license Apache-2.0
+*
+* Copyright (c) 2018 The Stdlib Authors.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+'use strict';
+
+// MODULES //
+
+var tape = require( 'tape' );
+var hasToStringTagSupport = require( '@stdlib/assert/has-tostringtag-support' );
+var isSymbol = require( '@stdlib/assert/is-symbol' );
+var Sym = require( './../lib' );
+
+
+// VARIABLES //
+
+var opts = {
+ 'skip': !hasToStringTagSupport()
+};
+
+
+// TESTS //
+
+tape( 'main export is a symbol in supporting environments (ES6/2015+) or otherwise null', function test( t ) {
+ t.ok( true, __filename );
+ if ( opts.skip ) {
+ t.strictEqual( Sym, null, 'main export is null' );
+ } else {
+ t.strictEqual( typeof Sym, 'symbol', 'main export is a symbol' );
+ t.strictEqual( isSymbol( Sym ), true, 'main export is a symbol' );
+ }
+ t.end();
+});
+
+tape( 'the main export is an alias for `Symbol.toStringTag`', opts, function test( t ) {
+ t.strictEqual( Sym, Symbol.toStringTag, 'is an alias' );
+ t.end();
+});