diff --git a/-5498110660.ram b/-5498110660.ram
new file mode 100644
index 00000000..8090c566
--- /dev/null
+++ b/-5498110660.ram
@@ -0,0 +1 @@
+http://relay.broadcastify.com:80/842917121
diff --git a/lib.es2015.promise.d.ts b/lib.es2015.promise.d.ts
new file mode 100644
index 00000000..43b1bd24
--- /dev/null
+++ b/lib.es2015.promise.d.ts
@@ -0,0 +1,81 @@
+/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+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
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+///
+
+interface PromiseConstructor {
+ /**
+ * A reference to the prototype.
+ */
+ readonly prototype: Promise;
+
+ /**
+ * Creates a new Promise.
+ * @param executor A callback used to initialize the promise. This callback is passed two arguments:
+ * a resolve callback used to resolve the promise with a value or the result of another promise,
+ * and a reject callback used to reject the promise with a provided reason or error.
+ */
+ new (executor: (resolve: (value: T | PromiseLike) => void, reject: (reason?: any) => void) => void): Promise;
+
+ /**
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any Promise is rejected.
+ * @param values An array of Promises.
+ * @returns A new Promise.
+ */
+ all(values: T): Promise<{ -readonly [P in keyof T]: Awaited; }>;
+
+ // see: lib.es2015.iterable.d.ts
+ // all(values: Iterable>): Promise[]>;
+
+ /**
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new Promise.
+ */
+ race(values: T): Promise>;
+
+ // see: lib.es2015.iterable.d.ts
+ // race(values: Iterable>): Promise>;
+
+ /**
+ * Creates a new rejected promise for the provided reason.
+ * @param reason The reason the promise was rejected.
+ * @returns A new rejected Promise.
+ */
+ reject(reason?: any): Promise;
+
+ /**
+ * Creates a new resolved promise.
+ * @returns A resolved promise.
+ */
+ resolve(): Promise;
+ /**
+ * Creates a new resolved promise for the provided value.
+ * @param value A promise.
+ * @returns A promise whose internal state matches the provided promise.
+ */
+ resolve(value: T): Promise>;
+ /**
+ * Creates a new resolved promise for the provided value.
+ * @param value A promise.
+ * @returns A promise whose internal state matches the provided promise.
+ */
+ resolve(value: T | PromiseLike): Promise>;
+}
+
+declare var Promise: PromiseConstructor;
diff --git a/thongdong7.thongdong7-snippets-0.0.19.vsix 2 b/thongdong7.thongdong7-snippets-0.0.19.vsix 2
new file mode 100644
index 00000000..24bb4333
Binary files /dev/null and b/thongdong7.thongdong7-snippets-0.0.19.vsix 2 differ