author | Pierre-Yves David <pierre-yves.david@fb.com> |
Wed, 10 Feb 2016 23:44:00 +0000 | |
branch | mercurial-3.6 |
changeset 1604 | 61dd08f4dc62 |
parent 1536 | 9afe9e0191a1 |
child 1608 | e359d33856c3 |
child 1630 | 35c666ef724e |
permissions | -rw-r--r-- |
1467
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
1 |
Tests the resolution of divergence |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
2 |
|
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
3 |
$ cat >> $HGRCPATH <<EOF |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
4 |
> [defaults] |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
5 |
> amend=-d "0 0" |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
6 |
> fold=-d "0 0" |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
7 |
> [web] |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
8 |
> push_ssl = false |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
9 |
> allow_push = * |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
10 |
> [phases] |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
11 |
> publish = False |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
12 |
> [diff] |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
13 |
> git = 1 |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
14 |
> unified = 0 |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
15 |
> [ui] |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
16 |
> logtemplate = {rev}:{node|short}@{branch}({phase}) {desc|firstline} [{troubles}]\n |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
17 |
> [extensions] |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
18 |
> hgext.graphlog= |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
19 |
> EOF |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
20 |
$ echo "evolve=$(echo $(dirname $TESTDIR))/hgext/evolve.py" >> $HGRCPATH |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
21 |
$ mkcommit() { |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
22 |
> echo "$1" > "$1" |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
23 |
> hg add "$1" |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
24 |
> hg ci -m "add $1" |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
25 |
> } |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
26 |
|
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
27 |
$ mkcommits() { |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
28 |
> for i in $@; do mkcommit $i ; done |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
29 |
> } |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
30 |
|
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
31 |
Basic test of divergence: two divergent changesets with the same parents |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
32 |
With --all --any we dedupe the divergent and solve the divergence once |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
33 |
|
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
34 |
$ hg init test1 |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
35 |
$ cd test1 |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
36 |
$ mkcommits _a _b |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
37 |
$ hg up "desc(_a)" |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
38 |
0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
39 |
$ mkcommit bdivergent1 |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
40 |
created new head |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
41 |
$ hg up "desc(_a)" |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
42 |
0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
43 |
$ mkcommit bdivergent2 |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
44 |
created new head |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
45 |
$ hg prune -s "desc(bdivergent1)" "desc(_b)" |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
46 |
1 changesets pruned |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
47 |
$ hg prune -s "desc(bdivergent2)" "desc(_b)" --hidden |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
48 |
1 changesets pruned |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
49 |
2 new divergent changesets |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
50 |
$ hg log -G |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
51 |
@ 3:e708fd28d5cf@default(draft) add bdivergent2 [divergent] |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
52 |
| |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
53 |
| o 2:c2f698071cba@default(draft) add bdivergent1 [divergent] |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
54 |
|/ |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
55 |
o 0:135f39f4bd78@default(draft) add _a [] |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
56 |
|
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
57 |
$ hg evolve --all --any --divergent |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
58 |
merge:[2] add bdivergent1 |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
59 |
with: [3] add bdivergent2 |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
60 |
base: [1] add _b |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
61 |
updating to "local" conflict |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
62 |
1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
63 |
1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
64 |
working directory is now at c26f1d3baed2 |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
65 |
$ hg log -G |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
66 |
@ 5:c26f1d3baed2@default(draft) add bdivergent1 [] |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
67 |
| |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
68 |
o 0:135f39f4bd78@default(draft) add _a [] |
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
69 |
|
1536
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
70 |
Test divergence resolution when it yields to an empty commit (issue4950) |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
71 |
cdivergent2 contains the same content than cdivergent1 and they are divergent |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
72 |
versions of the revision _c |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
73 |
|
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
74 |
$ hg up "desc(_a)" |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
75 |
0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
76 |
$ mkcommit _c |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
77 |
created new head |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
78 |
$ hg up "desc(_a)" |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
79 |
0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
80 |
$ mkcommit cdivergent1 |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
81 |
created new head |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
82 |
$ hg up "desc(_a)" |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
83 |
0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
84 |
$ echo "cdivergent1" > cdivergent1 |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
85 |
$ hg add cdivergent1 |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
86 |
$ hg ci -m "cdivergent2" |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
87 |
created new head |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
88 |
$ hg prune -s "desc(cdivergent1)" "desc(_c)" |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
89 |
1 changesets pruned |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
90 |
$ hg prune -s "desc(cdivergent2)" "desc(_c)" --hidden |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
91 |
1 changesets pruned |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
92 |
2 new divergent changesets |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
93 |
$ hg log -G |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
94 |
@ 8:0a768ef678d9@default(draft) cdivergent2 [divergent] |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
95 |
| |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
96 |
| o 7:26c7705fee96@default(draft) add cdivergent1 [divergent] |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
97 |
|/ |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
98 |
| o 5:c26f1d3baed2@default(draft) add bdivergent1 [] |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
99 |
|/ |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
100 |
o 0:135f39f4bd78@default(draft) add _a [] |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
101 |
|
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
102 |
$ hg evolve --all --any --divergent |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
103 |
merge:[7] add cdivergent1 |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
104 |
with: [8] cdivergent2 |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
105 |
base: [6] add _c |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
106 |
updating to "local" conflict |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
107 |
0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
108 |
0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
109 |
working directory is now at 6602ff5a79dc |
9afe9e0191a1
evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents:
1467
diff
changeset
|
110 |
|
1467
5c385b812500
evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
111 |
$ cd .. |