diff --git a/en/application-dev/reference/apis/js-apis-url.md b/en/application-dev/reference/apis/js-apis-url.md
index e0b3b1f91afdd7da0c78f76c66ef194beef65536..383dd4b3862b849db5e9292d4b841acbc8e3cc33 100755
--- a/en/application-dev/reference/apis/js-apis-url.md
+++ b/en/application-dev/reference/apis/js-apis-url.md
@@ -713,13 +713,11 @@ for (var value of searchParams.values()) {
### [Symbol.iterator](deprecated)
+
> **NOTE**
>
-<<<<<<< HEAD
> This API is deprecated since API version 9. You are advised to use [[Symbol.iterator]9+](#symboliterator9) instead.
-=======
-> This API is deprecated since API version 9. You are advised to use [URLParams9+.[Symbol.iterator]9+](#symboliterator9) instead.
->>>>>>> 3476008c8f822ee82294a9eebe78ed0f3484fce6
+
[Symbol.iterator]\(): IterableIterator<[string, string]>
diff --git a/en/application-dev/reference/apis/js-apis-util.md b/en/application-dev/reference/apis/js-apis-util.md
index 50385062dd4f6e8363199397acf13c2f206bbb3d..226f7686f490b2d3fd28e8263d7226eb02091c09 100755
--- a/en/application-dev/reference/apis/js-apis-util.md
+++ b/en/application-dev/reference/apis/js-apis-util.md
@@ -661,7 +661,7 @@ let rationalNumber = new util.RationalNumber();
rationalNumber.parseRationalNumber(1,2)
```
-### constructor8+(deprecated)
+### constructor(deprecated)
> **NOTE**
>
@@ -846,7 +846,7 @@ let rationalNumber = new util.RationalNumber(1,2);
let result = util.RationalNumber.getCommonFactor(4,6);
```
-### getCommonDivisor8+(deprecated)
+### getCommonDivisor(deprecated)
> **NOTE**
>
> This API is deprecated since API version 9. You are advised to use [getCommonFactor9+](#getcommonfactor9) instead.
@@ -1541,7 +1541,7 @@ pro.put(2,10);
let result = pro[Symbol.iterator]();
```
-## LruBuffer8+(deprecated)
+## LruBuffer(deprecated)
> **NOTE**
>
@@ -1563,7 +1563,7 @@ let result = pro[Symbol.iterator]();
let result = pro.length;
```
-### constructor8+(deprecated)
+### constructor(deprecated)
> **NOTE**
>
@@ -1586,7 +1586,7 @@ A constructor used to create a **LruBuffer** instance. The default capacity of t
let lrubuffer= new util.LruBuffer();
```
-### updateCapacity8+(deprecated)
+### updateCapacity(deprecated)
> **NOTE**
>
@@ -1610,7 +1610,7 @@ Changes the **LruBuffer** capacity. If the new capacity is less than or equal to
let result = pro.updateCapacity(100);
```
-### toString8+(deprecated)
+### toString(deprecated)
> **NOTE**
>
@@ -1637,7 +1637,7 @@ Obtains the string representation of this **LruBuffer** object.
let result = pro.toString();
```
-### getCapacity8+(deprecated)
+### getCapacity(deprecated)
> **NOTE**
>
@@ -1661,7 +1661,7 @@ Obtains the capacity of this buffer.
let result = pro.getCapacity();
```
-### clear8+(deprecated)
+### clear(deprecated)
> **NOTE**
>
@@ -1681,7 +1681,7 @@ Clears key-value pairs from this buffer. The **afterRemoval()** method will be c
pro.clear();
```
-### getCreateCount8+(deprecated)
+### getCreateCount(deprecated)
> **NOTE**
>
@@ -1706,7 +1706,7 @@ Obtains the number of return values for **createDefault()**.
let result = pro.getCreateCount();
```
-### getMissCount8+(deprecated)
+### getMissCount(deprecated)
> **NOTE**
>
@@ -1732,7 +1732,7 @@ Obtains the number of times that the queried values are mismatched.
let result = pro.getMissCount();
```
-### getRemovalCount8+(deprecated)
+### getRemovalCount(deprecated)
> **NOTE**
>
@@ -1759,7 +1759,7 @@ Obtains the number of removals from this buffer.
let result = pro.getRemovalCount();
```
-### getMatchCount8+(deprecated)
+### getMatchCount(deprecated)
> **NOTE**
>
@@ -1785,7 +1785,7 @@ Obtains the number of times that the queried values are matched.
let result = pro.getMatchCount();
```
-### getPutCount8+(deprecated)
+### getPutCount(deprecated)
> **NOTE**
>
@@ -1810,7 +1810,7 @@ Obtains the number of additions to this buffer.
let result = pro.getPutCount();
```
-### isEmpty8+(deprecated)
+### isEmpty(deprecated)
> **NOTE**
>
@@ -1835,7 +1835,7 @@ Checks whether this buffer is empty.
let result = pro.isEmpty();
```
-### get8+(deprecated)
+### get(deprecated)
> **NOTE**
>
@@ -1866,7 +1866,7 @@ Obtains the value of the specified key.
let result = pro.get(2);
```
-### put8+(deprecated)
+### put(deprecated)
> **NOTE**
>
@@ -1897,7 +1897,7 @@ Adds a key-value pair to this buffer.
let result = pro.put(2,10);
```
-### values8+(deprecated)
+### values(deprecated)
> **NOTE**
>
@@ -1924,7 +1924,7 @@ Obtains all values in this buffer, listed from the most to the least recently ac
let result = pro.values();
```
-### keys8+(deprecated)
+### keys(deprecated)
> **NOTE**
>
@@ -1949,7 +1949,7 @@ Obtains all keys in this buffer, listed from the most to the least recently acce
let result = pro.keys();
```
-### remove8+(deprecated)
+### remove(deprecated)
> **NOTE**
>
@@ -1980,7 +1980,7 @@ Removes the specified key and its value from this buffer.
let result = pro.remove(20);
```
-### afterRemoval8+(deprecated)
+### afterRemoval(deprecated)
> **NOTE**
>
@@ -2022,7 +2022,7 @@ Performs subsequent operations after a value is removed.
lru.afterRemoval(false,10,30,null);
```
-### contains8+(deprecated)
+### contains(deprecated)
> **NOTE**
>
@@ -2053,7 +2053,7 @@ Checks whether this buffer contains the specified key.
let result = pro.contains(20);
```
-### createDefault8+(deprecated)
+### createDefault(deprecated)
> **NOTE**
>
@@ -2083,7 +2083,7 @@ Creates a value if the value of the specified key is not available.
let result = pro.createDefault(50);
```
-### entries8+(deprecated)
+### entries(deprecated)
> **NOTE**
>
@@ -2108,7 +2108,7 @@ Obtains a new iterator object that contains all key-value pairs in this object.
let result = pro.entries();
```
-### [Symbol.iterator]8+(deprecated)
+### [Symbol.iterator](deprecated)
> **NOTE**
>
@@ -2524,13 +2524,13 @@ let range = new util.ScopeHelper(tempLower, tempUpper);
let result = range.clamp(tempMiDF);
```
-## Scope8+(deprecated)
+## Scope(deprecated)
> **NOTE**
>
> This class is deprecated since API version 9. You are advised to use [ScopeHelper9+](#scopehelper9) instead.
-### constructor8+(deprecated)
+### constructor(deprecated)
> **NOTE**
>
@@ -2556,7 +2556,7 @@ A constructor used to create a **Scope** object with the specified upper and low
let range = new util.Scope(tempLower, tempUpper);
```
-### toString8+(deprecated)
+### toString(deprecated)
> **NOTE**
>
@@ -2582,7 +2582,7 @@ Obtains a string representation that contains this **Scope**.
let result = range.toString();
```
-### intersect8+(deprecated)
+### intersect(deprecated)
> **NOTE**
>
@@ -2618,7 +2618,7 @@ Obtains the intersection of this **Scope** and the given **Scope**.
range.intersect(rangeFir );
```
-### intersect8+(deprecated)
+### intersect(deprecated)
> **NOTE**
>
@@ -2653,7 +2653,7 @@ Obtains the intersection of this **Scope** and the given lower and upper limits.
let result = range.intersect(tempMiDF, tempMidS);
```
-### getUpper8+(deprecated)
+### getUpper(deprecated)
> **NOTE**
>
@@ -2679,7 +2679,7 @@ Obtains the upper limit of this **Scope**.
let result = range.getUpper();
```
-### getLower8+(deprecated)
+### getLower(deprecated)
> **NOTE**
>
@@ -2705,7 +2705,7 @@ Obtains the lower limit of this **Scope**.
let result = range.getLower();
```
-### expand8+(deprecated)
+### expand(deprecated)
> **NOTE**
>
@@ -2741,7 +2741,7 @@ Obtains the union set of this **Scope** and the given lower and upper limits.
let result = range.expand(tempMiDF, tempMidS);
```
-### expand8+(deprecated)
+### expand(deprecated)
> **NOTE**
>
@@ -2776,7 +2776,7 @@ Obtains the union set of this **Scope** and the given **Scope**.
let result = range.expand(rangeFir);
```
-### expand8+(deprecated)
+### expand(deprecated)
> **NOTE**
>
@@ -2809,7 +2809,7 @@ Obtains the union set of this **Scope** and the given value.
let result = range.expand(tempMiDF);
```
-### contains8+(deprecated)
+### contains(deprecated)
> **NOTE**
>
@@ -2842,7 +2842,7 @@ Checks whether a value is within this **Scope**.
range.contains(tempMiDF);
```
-### contains8+(deprecated)
+### contains(deprecated)
> **NOTE**
>
@@ -2878,7 +2878,7 @@ Checks whether a range is within this **Scope**.
let result = range.contains(rangeSec);
```
-### clamp8+(deprecated)
+### clamp(deprecated)
> **NOTE**
>
@@ -3113,13 +3113,13 @@ that.decode(array).then(val=>{
```
-## Base648+(deprecated)
+## Base64(deprecated)
> **NOTE**
>
> This class is deprecated since API version 9. You are advised to use [Base64Helper9+](#base64helper9) instead.
-### constructor8+(deprecated)
+### constructor(deprecated)
> **NOTE**
>
@@ -3136,7 +3136,7 @@ A constructor used to create a **Base64** object.
let base64 = new util.Base64();
```
-### encodeSync8+(deprecated)
+### encodeSync(deprecated)
> **NOTE**
>
@@ -3168,7 +3168,7 @@ Encodes the input content.
let result = that.encodeSync(array);
```
-### encodeToStringSync8+(deprecated)
+### encodeToStringSync(deprecated)
> **NOTE**
>
@@ -3199,7 +3199,7 @@ Encodes the input content.
let result = that.encodeToStringSync(array);
```
-### decodeSync8+(deprecated)
+### decodeSync(deprecated)
> **NOTE**
>
@@ -3230,7 +3230,7 @@ Decodes the input content.
let result = that.decodeSync(buff);
```
-### encode8+(deprecated)
+### encode(deprecated)
> **NOTE**
>
@@ -3266,7 +3266,7 @@ Encodes the input content asynchronously.
})
```
-### encodeToString8+(deprecated)
+### encodeToString(deprecated)
> **NOTE**
>
@@ -3299,7 +3299,7 @@ Encodes the input content asynchronously.
})
```
-### decode8+(deprecated)
+### decode(deprecated)
> **NOTE**
>
diff --git a/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/ProjectSettings.json b/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/ProjectSettings.json
deleted file mode 100644
index f8b4888565caadc7510be75682268d6c18edd6de..0000000000000000000000000000000000000000
--- a/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/ProjectSettings.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "CurrentProjectSetting": null
-}
\ No newline at end of file
diff --git a/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/VSWorkspaceState.json b/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/VSWorkspaceState.json
deleted file mode 100644
index 2c8a70a882f92acfe69aa47c5803ca7826187fa6..0000000000000000000000000000000000000000
--- a/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/VSWorkspaceState.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "ExpandedNodes": [
- ""
- ],
- "SelectedNode": "\\introduction.md",
- "PreviewInSolutionExplorer": false
-}
\ No newline at end of file
diff --git a/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/multi-device-app-dev/FileContentIndex/b52a2ee2-b4f1-43fa-91e4-b937839b56ca.vsidx b/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/multi-device-app-dev/FileContentIndex/b52a2ee2-b4f1-43fa-91e4-b937839b56ca.vsidx
deleted file mode 100644
index 8f13ce3fb9590cf3a3be710fd02f9fcfb9fc295f..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/multi-device-app-dev/FileContentIndex/b52a2ee2-b4f1-43fa-91e4-b937839b56ca.vsidx and /dev/null differ
diff --git a/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/multi-device-app-dev/FileContentIndex/read.lock b/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/multi-device-app-dev/FileContentIndex/read.lock
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/multi-device-app-dev/v17/.suo b/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/multi-device-app-dev/v17/.suo
deleted file mode 100644
index d8e1531630abe96ef78b125cd90faf45f353a38d..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/multi-device-app-dev/v17/.suo and /dev/null differ
diff --git a/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/slnx.sqlite b/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/slnx.sqlite
deleted file mode 100644
index 03a4ca0787e33276b13396eaa1a8e439aed02253..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/key-features/multi-device-app-dev/.vs/slnx.sqlite and /dev/null differ