From 92ce63fae54a1d4b05de840b9891dbda2d762ecd Mon Sep 17 00:00:00 2001 From: cxl Date: Tue, 9 Sep 2008 14:52:28 +0000 Subject: [PATCH] git-svn-id: svn://ultimatepp.org/upp/trunk@417 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- uppdev/CoreTopics/src.tpp/AMap$en-us.tpp | 259 ++++++++-------------- uppdev/CoreTopics/src.tpp/AMap$en-us.tppi | 36 +-- 2 files changed, 112 insertions(+), 183 deletions(-) diff --git a/uppdev/CoreTopics/src.tpp/AMap$en-us.tpp b/uppdev/CoreTopics/src.tpp/AMap$en-us.tpp index 04597d9a9..23cd49b85 100644 --- a/uppdev/CoreTopics/src.tpp/AMap$en-us.tpp +++ b/uppdev/CoreTopics/src.tpp/AMap$en-us.tpp @@ -7,19 +7,15 @@ topic "AMap";[2 $$0,0#00000000000000000000000000000000:Default] [*+117 $$6,6#14700283458701402223321329925657:header] [l288;a17;*1 $$7,7#70004532496200323422659154056402:requirement] [{_}%EN-US -[s5;K:`:`:Array`:`:Iterator`:`:operator`*`(`)const:@0 [%00-00@(64) template_<][%00-00@(0.0.255) c -lass][%00-00@(64) _][%00-00@4 K][%00-00@(64) , ][%00-00@(0.0.255) class][%00-00@(64) _][%00-00@4 T -][%00-00@(64) , ][%00-00@(0.0.255) class][%00-00@(64) _][%00-00@4 V][%00-00@(64) , -][%00-00@(0.0.255) class][%00-00@(64) _][%00-00@4 HashFn][%00-00@(64) >__][%00-00@(0.0.255) c -lass][%00-00@(64) _][%00-00 AMap]&] +[s5;K:`:`:Array`:`:Iterator`:`:operator`*`(`)const:%- template_<[@(0.0.255) class]_[@4 K], + [@(0.0.255) class]_[@4 T], [@(0.0.255) class]_[@4 V], [@(0.0.255) class]_[@4 HashFn]>__[@(0.0.255) c +lass]_AMap&] [s0;:`:`:Array`:`:Iterator`:`:operator`[`]`(int`)const:~~~64; template &] [s0;3 &] -[s5;K:`:`:Array`:`:Iterator`:`:operator`+`+`(`):@0 [%00-00@(64) template_<][%00-00@(0.0.255) c -lass][%00-00@(64) _][%00-00@4 K][%00-00@(64) , ][%00-00@(0.0.255) class][%00-00@(64) _][%00-00@4 T -][%00-00@(64) , ][%00-00@(0.0.255) class][%00-00@(64) _][%00-00@4 V][%00-00@(64) , -][%00-00@(0.0.255) class][%00-00@(64) _][%00-00@4 HashFn][%00-00@(64) >__][%00-00@(0.0.255) c -lass][%00-00@(64) _][%00-00 AMap]&] +[s5;K:`:`:Array`:`:Iterator`:`:operator`+`+`(`):%- template_<[@(0.0.255) class]_[@4 K], +[@(0.0.255) class]_[@4 T], [@(0.0.255) class]_[@4 V], [@(0.0.255) class]_[@4 HashFn]>__[@(0.0.255) c +lass]_AMap&] [s0; &] [s0; [*C@4 K]-|Type of keys. K must have deep copy constructor, be [*/^dpp`:`/`/SourceDoc`/Containers`/Moveable^ m oveable] and must have [*C operator`=`=] defined.&] @@ -38,8 +34,7 @@ and optional deep copy] transfer semantics, although these features are more important in derived concrete index flavors.&] [s0; Members&] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 Add][%00-00 (][%00-00@(0.0.255) const][%00-00 _K -`&_][%00-00@3 k][%00-00 , ][%00-00@(0.0.255) const][%00-00 _T`&_][%00-00@3 x][%00-00 )]&] +[s5;K%- [@(0.0.255) void]_[@0 Add]([@(0.0.255) const]_K`&_[@3 k], [@(0.0.255) const]_T`&_[@3 x])&] [s2; Adds a key and value pair to the AMap.&] [s7; Invalidates iterators to AIndex.&] [s7; T must have deep copy constructor.&] @@ -48,9 +43,8 @@ are more important in derived concrete index flavors.&] [s7; Invalidates references to VectorMap values.&] [s4; [*C@3 k]-|Key.&] [s4; [*C@3 x]-|Value.&] -[s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 AddPick][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -K`&_][%00-00@3 k][%00-00 , pick`__T`&_][%00-00@3 x][%00-00 )]&] +[s0;3%CS-CZ &] +[s5;K%- [@(0.0.255) void]_[@0 AddPick]([@(0.0.255) const]_K`&_[@3 k], pick`__T`&_[@3 x])&] [s2; Adds a key and value pair to the AMap. Value is transfered by pick constructor in low constant time, but the source value is destroyed.&] @@ -61,8 +55,7 @@ destroyed.&] [s4; [*C@3 k]-|Key.&] [s4; [*C@3 x]-|-|Value.&] [s0;3 &] -[s5;K [%00-00 T`&_][%00-00@0 Add][%00-00 (][%00-00@(0.0.255) const][%00-00 _K`&_][%00-00@3 k][%00-00 ) -]&] +[s5;K%- T`&_[@0 Add]([@(0.0.255) const]_K`&_[@3 k])&] [s2; Adds a key to the AMap and returns a reference to the corresponding default constructed value.&] [s7; T must have default constructor.&] @@ -72,8 +65,7 @@ default constructed value.&] [s4; [*C@3 k]-|Key.&] [s4; [*/ Return value]-|Reference to value.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 FindAdd][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -][%00-00@4 K][%00-00 `&_][%00-00@3 k][%00-00 )]&] +[s5;K%- [@(0.0.255) int]_[@0 FindAdd]([@(0.0.255) const]_[@4 K]`&_[@3 k])&] [s2; Retrieves the position of first element with the specified key in AMap, using a precomputed hash value. The precomputed hash value must be the same as the hash value that would be the result @@ -86,8 +78,7 @@ number is returned. Unlinked elements are ignored.&] [s4; [*/ Return value]-|Position of element or a negative value if element is not in AMap.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 int][%00-00@(64) _][%00-00@0 Find][%00-00@(64) (][%00-00 const][%00-00@(64) _ -K`&_][%00-00@3 k][%00-00@(64) )_][%00-00 const]&] +[s5;K%- int_[@0 Find](const_K`&_[@3 k])_const&] [s2; Retrieves the position of first element with the specified key in AMap. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, the lowest position @@ -97,9 +88,7 @@ number is returned. Unlinked elements are ignored.&] [s4; [*/ Return value]-|Position of element or a negative value if element is not in AMap.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 int][%00-00@(64) _][%00-00@0 Find][%00-00@(64) (][%00-00 const][%00-00@(64) _ -K`&_][%00-00@3 k][%00-00@(64) , ][%00-00 unsigned][%00-00@(64) _][%00-00@3 h][%00-00@(64) )_][%00-00 c -onst]&] +[s5;K%- int_[@0 Find](const_K`&_[@3 k], unsigned_[@3 h])_const&] [s2; Retrieves the position of next element with the same key as element at the specified position. If multi`-key ordering is not broken and more than one element with that value exists in @@ -110,9 +99,7 @@ key, negative number is returned. Unlinked elements are ignored.&] [s4; [*C@3 i]-|Position of element.&] [s4; [*/ Return value]-|Position of next element with same value.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 int][%00-00@(64) _][%00-00@0 FindLast][%00-00@(64) (][%00-00 const][%00-00@(64) _ -K`&_][%00-00@3 k][%00-00@(64) , ][%00-00 unsigned][%00-00@(64) _][%00-00@3 h][%00-00@(64) )_][%00-00 c -onst]&] +[s5;K%- int_[@0 FindLast](const_K`&_[@3 k], unsigned_[@3 h])_const&] [s2; Retrieves position of last element with the specified key in AMap, using a precomputed hash value. The precomputed hash value must be the same as the hash value that would be the result of @@ -125,8 +112,7 @@ is returned. Unlinked elements are ignored.&] [s4; [*/ Return value]-|Position of element or a negative value if element is not in AMap.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 int][%00-00@(64) _][%00-00@0 FindLast][%00-00@(64) (][%00-00 const][%00-00@(64) _ -K`&_][%00-00@3 k][%00-00@(64) )_][%00-00 const]&] +[s5;K%- int_[@0 FindLast](const_K`&_[@3 k])_const&] [s2; Retrieves the position of last element with the specified key in AMap. If multi`-key ordering is not broken and more than one element with the same value exists in AIndex, the greatest position @@ -136,8 +122,7 @@ is returned. Unlinked elements are ignored.&] [s4; [*/ Return value]-|Position of element or a negative value if element is not in AMap.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 int][%00-00@(64) _][%00-00@0 FindPrev][%00-00@(64) (][%00-00 int][%00-00@(64) _ -][%00-00@3 i][%00-00@(64) )_][%00-00 const]&] +[s5;K%- int_[@0 FindPrev](int_[@3 i])_const&] [s2; Retrieves the position of previous element with the same key as element at the specified position. If multi`-key ordering is not broken and more than one element with that value exists @@ -148,8 +133,7 @@ key, a negative number is returned. Unlinked elements are ignored.&] [s4; [*C@3 i]-|Position of element.&] [s4; [*/ Return value]-|Position of previous element with same value.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 FindAdd][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -][%00-00@4 K][%00-00 `&_][%00-00@3 k][%00-00 )]&] +[s5;K%- [@(0.0.255) int]_[@0 FindAdd]([@(0.0.255) const]_[@4 K]`&_[@3 k])&] [s2; Retrieves the position of first element with the specified key in AMap. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, lowest position is @@ -163,9 +147,8 @@ Unlinked elements are ignored.&] [s4; [*C@3 k]-|Key to find.&] [s4; [*/ Return value]-|Position of element (either found or added).&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 FindAdd][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -][%00-00@4 K][%00-00 `&_][%00-00@3 k][%00-00 , ][%00-00@(0.0.255) const][%00-00 _][%00-00@4 T][%00-00 `& -_][%00-00@3 init][%00-00 )]&] +[s5;K%- [@(0.0.255) int]_[@0 FindAdd]([@(0.0.255) const]_[@4 K]`&_[@3 k], [@(0.0.255) const]_[@4 T]`& +_[@3 init])&] [s2; Retrieves the position of first element with the specified key in AMap. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, the lowest position @@ -180,9 +163,8 @@ not exist in AMap, adds new element, deep copy constructed from [s4; [*C@3 init]-|Value to add if key is not in AMap yet.&] [s4; [*/ Return value]-|Position of element (either found or added).&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 FindPutPick][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -][%00-00@4 K][%00-00 `&_][%00-00@3 k][%00-00 , pick`__][%00-00@4 T][%00-00 `&_][%00-00@3 init][%00-00 ) -]&] +[s5;K%- [@(0.0.255) int]_[@0 FindPutPick]([@(0.0.255) const]_[@4 K]`&_[@3 k], +pick`__[@4 T]`&_[@3 init])&] [s2; Retrieves the position of first element with the specified key in AMap. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, the lowest position @@ -197,15 +179,13 @@ at the end of AMap and returns its position.&] [s4; [*C@3 init]-|Value to add if key is not in AMap yet.&] [s4; [*/ Return value]-|Position of element (either found or added).&] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 Unlink][%00-00 (][%00-00@(0.0.255) int][%00-00 _ -][%00-00@3 i][%00-00 )]&] +[s5;K%- [@(0.0.255) void]_[@0 Unlink]([@(0.0.255) int]_[@3 i])&] [s2; Unlinks element at the specified position. Unlinked item stays in AMap but is ignored by any Find operation.&] [s4; [*C@3 i]-|Position of element to unlink.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 Put][%00-00 (][%00-00@(0.0.255) const][%00-00 _][%00-00@4 K -][%00-00 `&_][%00-00@3 k][%00-00 , ][%00-00@(0.0.255) const][%00-00 _][%00-00@4 T][%00-00 `&_][%00-00@3 x -][%00-00 )]&] +[s5;K%- [@(0.0.255) int]_[@0 Put]([@(0.0.255) const]_[@4 K]`&_[@3 k], [@(0.0.255) const]_[@4 T]`&_[@3 x +])&] [s2; If there are any unlinked elements in AMap, one of them is replaced by the specified key/value pair. If there is are unlinked elements, the key/value pair is added to the end of AIndex using [* Add]. @@ -218,9 +198,7 @@ Value is transfered using deep copy constructor.&] [s4; [*C@3 k]-|Key.&] [s4; [*C@3 x]-|Value.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 PutPick][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -][%00-00@4 K][%00-00 `&_][%00-00@3 k][%00-00 , pick`__][%00-00@4 T][%00-00 `&_][%00-00@3 x][%00-00 ) -]&] +[s5;K%- [@(0.0.255) int]_[@0 PutPick]([@(0.0.255) const]_[@4 K]`&_[@3 k], pick`__[@4 T]`&_[@3 x])&] [s2; If there are any unlinked elements in AMap, one of them is replaced by the specified key/value pair. If there is none unlinked element, the key/value pair is added at the end of AIndex using [* Add]. @@ -233,8 +211,7 @@ Value is transfered using pick constructor.&] [s4; [*C@3 k]-|Key.&] [s4; [*C@3 x]-|Value.&] [s0;3 &] -[s5;K [%00-00@4 T][%00-00 `&_][%00-00@0 Put][%00-00 (][%00-00@(0.0.255) const][%00-00 _][%00-00@4 K -][%00-00 `&_][%00-00@3 k][%00-00 )]&] +[s5;K%- [@4 T]`&_[@0 Put]([@(0.0.255) const]_[@4 K]`&_[@3 k])&] [s2; If there is any unlinked element in AMap, it is replaced by the specified key and reference to the value is returned. If there is none unlinked element, key is added at the end of AIndex @@ -248,8 +225,7 @@ Value is returned.&] [s4; [*C@3 k]-|Key.&] [s4; [*/ Return value]-|Reference to the corresponding value.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 FindPut][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -][%00-00@4 K][%00-00 `&_][%00-00@3 k][%00-00 )]&] +[s5;K%- [@(0.0.255) int]_[@0 FindPut]([@(0.0.255) const]_[@4 K]`&_[@3 k])&] [s2; Retrieves the position of first element with the specified key in AMap. Unlinked elements are ignored. If the element does not exist in AMap, puts new default constructed element into AMap @@ -261,9 +237,8 @@ using [* Put] and returns its position. &] [s4; [*C@3 k]-|Key to find.&] [s4; [*/ Return value]-|Position of element (either found or added).&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 FindPut][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -][%00-00@4 K][%00-00 `&_][%00-00@3 k][%00-00 , ][%00-00@(0.0.255) const][%00-00 _][%00-00@4 T][%00-00 `& -_][%00-00@3 init][%00-00 )]&] +[s5;K%- [@(0.0.255) int]_[@0 FindPut]([@(0.0.255) const]_[@4 K]`&_[@3 k], [@(0.0.255) const]_[@4 T]`& +_[@3 init])&] [s2; Retrieves the position of first element with the specified key in AMap. Unlinked elements are ignored. If the element does not exist in AMap, puts new element, deep copy constructed from [* init], @@ -276,9 +251,8 @@ using [* Put] and returns its position. &] [s4; [*C@3 init]-|Value to add if key is not in AMap yet.&] [s4; [*/ Return value]-|Position of element (either found or added).&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 FindPutPick][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -][%00-00@4 K][%00-00 `&_][%00-00@3 k][%00-00 , pick`__][%00-00@4 T][%00-00 `&_][%00-00@3 init][%00-00 ) -]&] +[s5;K%- [@(0.0.255) int]_[@0 FindPutPick]([@(0.0.255) const]_[@4 K]`&_[@3 k], +pick`__[@4 T]`&_[@3 init])&] [s2; Retrieves the position of first element with the specified key in AMap. Unlinked elements are ignored. If the element does not exist in AMap, puts new element, pick constructed from [* init], @@ -291,8 +265,7 @@ using [* Put] and returns its position. &] [s4; [*C@3 init]-|Value to add if key is not in AMap yet.&] [s4; [*/ Return value]-|Position of element (either found or added).&] [s0;3 &] -[s5;K [%00-00 T`&_][%00-00@0 Get][%00-00 (][%00-00@(0.0.255) const][%00-00 _K`&_][%00-00@3 k][%00-00 ) -]&] +[s5;K%- T`&_[@0 Get]([@(0.0.255) const]_K`&_[@3 k])&] [s2; Retrieves a reference to the first element with the specified key. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, the lowest position element @@ -301,8 +274,7 @@ be in AMap, otherwise it is logic error (asserted in debug mode).&] [s4; [*C@3 k]-|Key to find.&] [s4; [*/ Return value]-|Reference to corresponding value.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 const][%00-00@(64) _T`&_][%00-00@0 Get][%00-00@(64) (][%00-00 const][%00-00@(64) _ -K`&_][%00-00@3 k][%00-00@(64) )_][%00-00 const]&] +[s5;K%- const_T`&_[@0 Get](const_K`&_[@3 k])_const&] [s2; Retrieves a constant reference the the first element with the specified key. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, the lowest @@ -312,9 +284,7 @@ in debug mode).&] [s4; [*C@3 k]-|Key to find.&] [s4; [*/ Return value]-|Reference to corresponding value.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 const][%00-00@(64) _T`&_][%00-00@0 Get][%00-00@(64) (][%00-00 const][%00-00@(64) _ -K`&_][%00-00@3 k][%00-00@(64) , ][%00-00 const][%00-00@(64) _T`&_][%00-00@3 d][%00-00@(64) )_ -][%00-00 const]&] +[s5;K%- const_T`&_[@0 Get](const_K`&_[@3 k], const_T`&_[@3 d])_const&] [s2; Retrieves a constant reference value of the first element with the specified key. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, the lowest @@ -325,8 +295,7 @@ the specified value is returned instead.&] [s4; [*C@3 d]-|Value to be returned if key is not found.&] [s4; [*/ Return value]-|Reference to found element or supplied value.&] [s0;3 &] -[s5;K [%00-00@4 T][%00-00 `&_][%00-00@0 GetAdd][%00-00 (][%00-00@(0.0.255) const][%00-00 _][%00-00@4 K -][%00-00 `&_][%00-00@3 k][%00-00 )]&] +[s5;K%- [@4 T]`&_[@0 GetAdd]([@(0.0.255) const]_[@4 K]`&_[@3 k])&] [s2; Retrieves a constant reference value of the first element with the specified key. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, the lowest @@ -340,9 +309,7 @@ element at the end of AMap and returns a reference to it.&] [s4; [*C@3 k]-|Key to find.&] [s4; [*/ Return value]-|Reference to corresponding value.&] [s0;3 &] -[s5;K [%00-00@4 T][%00-00 `&_][%00-00@0 GetAdd][%00-00 (][%00-00@(0.0.255) const][%00-00 _][%00-00@4 K -][%00-00 `&_][%00-00@3 k][%00-00 , ][%00-00@(0.0.255) const][%00-00 _][%00-00@4 T][%00-00 `&_][%00-00@3 x -][%00-00 )]&] +[s5;K%- [@4 T]`&_[@0 GetAdd]([@(0.0.255) const]_[@4 K]`&_[@3 k], [@(0.0.255) const]_[@4 T]`&_[@3 x])&] [s2; Retrieves a constant reference to the first element with the specified key. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, the lowest @@ -358,8 +325,7 @@ to it.&] [s4; [*C@3 x]-|Value to add if key is not in AMap.&] [s4; [*/ Return value]-|Reference to corresponding value.&] [s0;3 &] -[s5;K [%00-00@4 T][%00-00 `&_][%00-00@0 GetAddPick][%00-00 (][%00-00@(0.0.255) const][%00-00 _][%00-00@4 K -][%00-00 `&_][%00-00@3 k][%00-00 , pick`__][%00-00@4 T][%00-00 `&_][%00-00@3 x][%00-00 )]&] +[s5;K%- [@4 T]`&_[@0 GetAddPick]([@(0.0.255) const]_[@4 K]`&_[@3 k], pick`__[@4 T]`&_[@3 x])&] [s2; Retrieves a constant reference to the first element with the specified key. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, the lowest @@ -374,8 +340,7 @@ from [* x],[* ]at the end of AMap and returns a reference to it.&] [s4; [*C@3 x]-|Value to add if key is not in AMap.&] [s4; [*/ Return value]-|Reference to corresponding value.&] [s0;3 &] -[s5;K [%00-00@4 T][%00-00 `&_][%00-00@0 GetPut][%00-00 (][%00-00@(0.0.255) const][%00-00 _][%00-00@4 K -][%00-00 `&_][%00-00@3 k][%00-00 )]&] +[s5;K%- [@4 T]`&_[@0 GetPut]([@(0.0.255) const]_[@4 K]`&_[@3 k])&] [s2; Retrieves a constant reference value of the first element with the specified key. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, the lowest @@ -390,9 +355,7 @@ it.&] [s4; [*C@3 k]-|Key to find.&] [s4; [*/ Return value]-|Reference to corresponding value.&] [s0;3 &] -[s5;K [%00-00@4 T][%00-00 `&_][%00-00@0 GetPut][%00-00 (][%00-00@(0.0.255) const][%00-00 _][%00-00@4 K -][%00-00 `&_][%00-00@3 k][%00-00 , ][%00-00@(0.0.255) const][%00-00 _][%00-00@4 T][%00-00 `&_][%00-00@3 x -][%00-00 )]&] +[s5;K%- [@4 T]`&_[@0 GetPut]([@(0.0.255) const]_[@4 K]`&_[@3 k], [@(0.0.255) const]_[@4 T]`&_[@3 x])&] [s2; Retrieves a constant reference value of the first element with the specified key. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, lowest position @@ -408,8 +371,7 @@ to it.&] [s4; [*C@3 x]-|Value to add if key is not in AMap.&] [s4; [*/ Return value]-|Reference to corresponding value.&] [s0;3 &] -[s5;K [%00-00@4 T][%00-00 `&_][%00-00@0 GetPutPick][%00-00 (][%00-00@(0.0.255) const][%00-00 _][%00-00@4 K -][%00-00 `&_][%00-00@3 k][%00-00 , pick`__][%00-00@4 T][%00-00 `&_][%00-00@3 x][%00-00 )]&] +[s5;K%- [@4 T]`&_[@0 GetPutPick]([@(0.0.255) const]_[@4 K]`&_[@3 k], pick`__[@4 T]`&_[@3 x])&] [s2; Retrieves a constant reference value of the first element with the specified key. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, lowest position @@ -424,14 +386,12 @@ key is not in the AMap, puts new element, pick constructed from [s4; [*C@3 x]-|Value to add if key is not in AMap.&] [s4; [*/ Return value]-|Reference to corresponding value.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 SetKey][%00-00 (][%00-00@(0.0.255) int][%00-00 _ -][%00-00@3 i][%00-00 , ][%00-00@(0.0.255) const][%00-00 _K`&_][%00-00@3 k][%00-00 )]&] +[s5;K%- [@(0.0.255) void]_[@0 SetKey]([@(0.0.255) int]_[@3 i], [@(0.0.255) const]_K`&_[@3 k])&] [s2; Replaces key of element at the specified position.&] [s4; [*C@3 i]-|Position of element.&] [s4; [*C@3 k]-|New key value.&] [s0;3 &] -[s5;K [%00-00 T_`*][%00-00@0 FindPtr][%00-00 (][%00-00@(0.0.255) const][%00-00 _K`&_][%00-00@3 k][%00-00 ) -]&] +[s5;K%- T_`*[@0 FindPtr]([@(0.0.255) const]_K`&_[@3 k])&] [s2; Retrieves a pointer to value of first element with the specified key in AMap. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, the lowest position @@ -441,8 +401,7 @@ is returned. Unlinked elements are ignored.&] [s4; [*/ Return value]-|Pointer to value or NULL pointer if element is not in AMap.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 const][%00-00@(64) _T_`*][%00-00@0 FindPtr][%00-00@(64) (][%00-00 const -][%00-00@(64) _K`&_][%00-00@3 k][%00-00@(64) )_][%00-00 const]&] +[s5;K%- const_T_`*[@0 FindPtr](const_K`&_[@3 k])_const&] [s2; Retrieves a constant pointer to value of first element with the specified key in AMap. If multi`-key ordering is not broken and more than one element with the same value exists in AMap, @@ -452,8 +411,8 @@ in AMap, NULL pointer is returned. Unlinked elements are ignored.&] [s4; [*/ Return value]-|Pointer to value or NULL pointer if element is not in AMap.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 UnlinkKey][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -K`&_][%00-00@3 k][%00-00 , ][%00-00@(0.0.255) unsigned][%00-00 _][%00-00@3 h][%00-00 )]&] +[s5;K%- [@(0.0.255) int]_[@0 UnlinkKey]([@(0.0.255) const]_K`&_[@3 k], [@(0.0.255) unsigned]_[@3 h +])&] [s2; Unlinks all elements with the specified key using precomputed hash`-value. Unlinked elements stay in AIndex but are ignored by any Find operations. The precomputed hash value must be the @@ -462,21 +421,18 @@ same as the hash value that would be the result of HashFn. &] [s4; [*C@3 h]-|Precomputed hash value.&] [s4; [*/ Return value]-|Number of elements unlinked.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 UnlinkKey][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -K`&_][%00-00@3 k][%00-00 )]&] +[s5;K%- [@(0.0.255) int]_[@0 UnlinkKey]([@(0.0.255) const]_K`&_[@3 k])&] [s2; Unlinks all elements with the specified key. Unlinked elements stay in AIndex but are ignored by any Find operations.&] [s4; [*C@3 k]-|Key to unlink.&] [s4; [*/ Return value]-|Number of elements unlinked.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 bool][%00-00@(64) _][%00-00@0 IsUnlinked][%00-00@(64) (][%00-00 int][%00-00@(64) _ -][%00-00@3 i][%00-00@(64) )_][%00-00 const]&] +[s5;K%- bool_[@0 IsUnlinked](int_[@3 i])_const&] [s2; Tests whether element at the specified position is unlinked.&] [s4; [*C@3 i]-|Position.&] [s4; [*/ Return value]-|true if element is unlinked.&] [s0;3 &] -[s5;K [%00-00 T`&_][%00-00@0 Insert][%00-00 (][%00-00@(0.0.255) int][%00-00 _][%00-00@3 i][%00-00 , - ][%00-00@(0.0.255) const][%00-00 _K`&_][%00-00@3 k][%00-00 )]&] +[s5;K%- T`&_[@0 Insert]([@(0.0.255) int]_[@3 i], [@(0.0.255) const]_K`&_[@3 k])&] [s2; Inserts an element with the specified key and default constructed value at the specified position. This is a slow operation, especially when combined with any search operations.&] @@ -487,9 +443,8 @@ when combined with any search operations.&] [s4; [*C@3 i]-|Insert position.&] [s4; [*C@3 k]-|Key to insert.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 Insert][%00-00 (][%00-00@(0.0.255) int][%00-00 _ -][%00-00@3 i][%00-00 , ][%00-00@(0.0.255) const][%00-00 _K`&_][%00-00@3 k][%00-00 , -][%00-00@(0.0.255) const][%00-00 _T`&_][%00-00@3 x][%00-00 )]&] +[s5;K%- [@(0.0.255) void]_[@0 Insert]([@(0.0.255) int]_[@3 i], [@(0.0.255) const]_K`&_[@3 k], +[@(0.0.255) const]_T`&_[@3 x])&] [s2; Inserts an element with the specified key and value copy constructed from [*/ x] at the specified position. This is a slow operation, especially when combined with any search operations.&] @@ -501,8 +456,7 @@ especially when combined with any search operations.&] [s4; [*C@3 k]-|Key to insert.&] [s4; [*C@3 x]-|Value to insert.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 Remove][%00-00 (][%00-00@(0.0.255) int][%00-00 _ -][%00-00@3 i][%00-00 )]&] +[s5;K%- [@(0.0.255) void]_[@0 Remove]([@(0.0.255) int]_[@3 i])&] [s2; Removes the element at the specified position. This is a slow operation, especially when combined with any search operations.&] [s7; Invalidates iterators to AMap.&] @@ -510,9 +464,8 @@ operation, especially when combined with any search operations.&] [s7; Invalidates references to VectorMap values.&] [s4; [*C@3 i]-|Position of element to remove.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 Remove][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -][%00-00@(0.0.255) int][%00-00 _`*][%00-00@3 sl][%00-00 , ][%00-00@(0.0.255) int][%00-00 _][%00-00@3 n -][%00-00 )]&] +[s5;K%- [@(0.0.255) void]_[@0 Remove]([@(0.0.255) const]_[@(0.0.255) int]_`*[@3 sl], +[@(0.0.255) int]_[@3 n])&] [s2; Removes number of elements from AMap. Time of operation only slightly depends on the number of removed elements. This is a slow operation, especially when combined with any search operations.&] @@ -524,8 +477,8 @@ slow operation, especially when combined with any search operations.&] order.&] [s4; [*C@3 n]-|Number of elements to remove. &] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 Remove][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -][%00-00^`:`:Vector^ Vector][%00-00 <][%00-00^int^ int][%00-00 >`&_][%00-00@3 sl][%00-00 )]&] +[s5;K%- [@(0.0.255) void]_[@0 Remove]([@(0.0.255) const]_[^`:`:Vector^ Vector]<[^int^ int]>`&_[@3 s +l])&] [s2; Removes number of elements from AMap. Same as Remove(sorted`_list, sorted`_list.GetCount()).&] [s7; Invalidates iterators to AMap.&] @@ -533,120 +486,106 @@ sorted`_list.GetCount()).&] [s7; Invalidates references to VectorMap values.&] [s4; [*C@3 sl]-|Sorted Vector of positions to remove.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) int][%00-00 _][%00-00@0 RemoveKey][%00-00 (][%00-00@(0.0.255) const][%00-00 _ -][%00-00@4 K][%00-00 `&_][%00-00@3 k][%00-00 )]&] +[s5;K%- [@(0.0.255) int]_[@0 RemoveKey]([@(0.0.255) const]_[@4 K]`&_[@3 k])&] [s2; Removes all elements with the specified value. This is a slow operation, especially when combined with any search operations.&] [s4; [*C@3 k]-|Key to remove.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 const][%00-00@(64) _T`&_][%00-00@0 operator`[`]][%00-00@(64) (][%00-00 i -nt][%00-00@(64) _][%00-00@3 i][%00-00@(64) )_][%00-00 const]&] +[s5;K%- const_T`&_[@0 operator`[`]](int_[@3 i])_const&] [s2; Returns a constant reference to the element at the specified position.&] [s4; [*C@3 i]-|Position.&] [s4; [*/ Return value]-|Constant reference to the element at the specified position.&] [s0;3 &] -[s5;K [%00-00 T`&_][%00-00@0 operator`[`]][%00-00 (][%00-00@(0.0.255) int][%00-00 _][%00-00@3 i][%00-00 ) -]&] +[s5;K%- T`&_[@0 operator`[`]]([@(0.0.255) int]_[@3 i])&] [s2; Returns a reference to the element at the specified position.&] [s4; [*C@3 i]-|Position.&] [s4; [*/ Return value]-|Constant reference to the element at the specified position.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 int][%00-00@(64) _][%00-00@0 GetCount][%00-00@(64) ()_][%00-00 const]&] +[s5;K%- int_[@0 GetCount]()_const&] [s2; Returns the number of elements in AMap.&] [s4; [*/ Return value]-|Actual number of elements.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 bool][%00-00@(64) _][%00-00@0 IsEmpty][%00-00@(64) ()_][%00-00 const]&] +[s5;K%- bool_[@0 IsEmpty]()_const&] [s2; Tests whether AMap is empty. Same as GetCount() `=`= 0.&] [s4; [*/ Return value]-|true if AMap is empty, false otherwise.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 Clear][%00-00 ()]&] +[s5;K%- [@(0.0.255) void]_[@0 Clear]()&] [s2; Removes all elements from AMap.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 Shrink][%00-00 ()]&] +[s5;K%- [@(0.0.255) void]_[@0 Shrink]()&] [s2; Minimizes memory consumption of AMap by decreasing the capacity to the number of elements.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 Reserve][%00-00 (][%00-00@(0.0.255) int][%00-00 _ -][%00-00@3 xtra][%00-00 )]&] +[s5;K%- [@(0.0.255) void]_[@0 Reserve]([@(0.0.255) int]_[@3 xtra])&] [s2; Reserves capacity. If the required capacity is greater than current capacity, capacity is increased to the required value.&] [s4; [*C@3 n]-|Required capacity.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 int][%00-00@(64) _][%00-00@0 GetAlloc][%00-00@(64) ()_][%00-00 const]&] +[s5;K%- int_[@0 GetAlloc]()_const&] [s2; Returns the current capacity of Array.&] [s4; [*/ Return value]-|Capacity of Array.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 Drop][%00-00 (][%00-00@(0.0.255) int][%00-00 _][%00-00@3 n -][%00-00 _`=_][%00-00@3 1][%00-00 )]&] +[s5;K%- [@(0.0.255) void]_[@0 Drop]([@(0.0.255) int]_[@3 n]_`=_[@3 1])&] [s2; Drops the specified number of elements at the end of the AMap.&] [s4; [*C@3 n]-|Number of elements.&] [s0;3 &] -[s5;K [%00-00 T`&_][%00-00@0 Top][%00-00 ()]&] +[s5;K%- T`&_[@0 Top]()&] [s2; Returns a reference to the value of the last element of AMap.&] [s4; [*/ Return value]-|Reference to the value of the last element.&] [s0;3 &] -[s5;K [%00-00 T`&_][%00-00@0 Top][%00-00 ()]&] +[s5;K%- T`&_[@0 Top]()&] [s2; Returns a constant reference to the value of the last element of AMap.&] [s4; [*/ Return value]-|Reference to the value of the last element.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 const][%00-00@(64) _K`&_][%00-00@0 TopKey][%00-00@(64) ()_][%00-00 cons -t]&] +[s5;K%- const_K`&_[@0 TopKey]()_const&] [s2; Returns a constant reference to the key of the last element of AMap.&] [s4; [*/ Return value]-|Reference to the key of the last element.&] [s0;3 &] -[s5;K [%00-00 K_][%00-00@0 PopKey][%00-00 ()]&] +[s5;K%- K_[@0 PopKey]()&] [s2; Drops the last element of AMap and returns the key of the dropped element.&] [s4; [*/ Return value]-|Key of the element dropped at the end of AMap.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 const][%00-00@(64) _K`&_][%00-00@0 GetKey][%00-00@(64) (][%00-00 int][%00-00@(64) _ -][%00-00@3 i][%00-00@(64) )_][%00-00 const]&] +[s5;K%- const_K`&_[@0 GetKey](int_[@3 i])_const&] [s2; Returns a constant reference to the key of element at the specified position.&] [s4; [*C@3 i]-|Position.&] [s4; [*/ Return value]-|Constant reference to the key.&] [s0;3 &] -[s5;K [%00-00@(0.0.255) void][%00-00 _][%00-00@0 Serialize][%00-00 (][%00-00^`:`:Stream^ Stream -][%00-00 `&_][%00-00@3 s][%00-00 )]&] +[s5;K%- [@(0.0.255) void]_[@0 Serialize]([^`:`:Stream^ Stream]`&_[@3 s])&] [s2; Serializes the content of AMap to/from Stream. Works only if NTL is used as part of UPP.&] [s0; Requires T to have serialization operator defined.&] [s4; [*C@3 s]-|Target/source stream.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 const][%00-00@(64) _][%00-00^`:`:Index^@(64) Index][%00-00@(64) <][%00-00^K^@(64) K -][%00-00@(64) , ][%00-00^HashFn^@(64) HashFn][%00-00@(64) >`&_][%00-00@0 GetIndex][%00-00@(64) ( -)_][%00-00 const]&] +[s5;K%- const_[^`:`:Index^ Index]<[^K^ K], [^HashFn^ HashFn]>`&_[@0 GetIndex]()_const&] [s2; Returns a constant reference to the internal Index of keys.&] [s4; [*/ Return value]-|Constant reference to the Index of keys.&] [s0;3 &] -[s5;K [%00-00^`:`:Index^ Index][%00-00 <][%00-00^K^ K][%00-00 , ][%00-00^HashFn^ HashFn][%00-00 > -_][%00-00@0 PickIndex][%00-00 ()_pick`_]&] +[s5;K%- [^`:`:Index^ Index]<[^K^ K], [^HashFn^ HashFn]>_[@0 PickIndex]()_pick`_&] [s2; Returns Index of keys. Destroys AMap by picking.&] [s4; [*/ Return value]-|Index of keys.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 const][%00-00@(64) _][%00-00^`:`:Vector^@(64) Vector][%00-00@(64) <][%00-00^K^@(64) K -][%00-00@(64) >`&_][%00-00@0 GetKeys][%00-00@(64) ()_][%00-00 const]&] +[s5;K%- const_[^`:`:Vector^ Vector]<[^K^ K]>`&_[@0 GetKeys]()_const&] [s2; Returns a constant reference to the Vector of keys.&] [s4; [*/ Return value]-|Constant reference to the Vector of keys.&] [s0;3 &] -[s5;K [%00-00^`:`:Vector^ Vector][%00-00 <][%00-00^K^ K][%00-00 >_][%00-00@0 PickKeys][%00-00 ()_ -pick`_]&] +[s5;K%- [^`:`:Vector^ Vector]<[^K^ K]>_[@0 PickKeys]()_pick`_&] [s2; Returns Vector of keys. Destroys AMap by picking.&] [s4; [*/ Return value]-|Vector of keys.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00 const][%00-00@(64) _V`&_][%00-00@0 GetValues][%00-00@(64) ()_][%00-00 c -onst]&] +[s5;K%- const_V`&_[@0 GetValues]()_const&] [s2; Returns a constant reference to the basic random access container of values. Destroys AIndex by picking.&] [s4; [*/ Return value]-|Constant reference to the basic random access container of values.&] [s0;3 &] -[s5;K [%00-00 V_][%00-00@0 PickValues][%00-00 ()_pick`_]&] +[s5;K%- V_[@0 PickValues]()_pick`_&] [s2; Returns basic random access container of values. Destroys AIndex by picking.&] [s4; [*/ Return value]-|Basic random access container of values.&] @@ -677,75 +616,65 @@ must have same number of elements.&] [s4; [*C@3 ndx]-|Keys.&] [s4; [*C@3 val]-|Values.&] [s0;3 &] -[s5;K@0 [%00-00@(64) typedef_K_][%00-00 KeyType]&] +[s5;K%- typedef_K_KeyType&] [s2; Typedef of K for use in templated algorithms.&] [s0;3 &] -[s5;K@0 [%00-00@(64) typedef_typename_][%00-00^`:`:Index^@(64) Index][%00-00@(64) <][%00-00^K^@(64) K -][%00-00@(64) , ][%00-00^HashFn^@(64) HashFn][%00-00@(64) >`::ConstIterator_][%00-00 KeyCo -nstIterator]&] +[s5;K%- typedef_typename_[^`:`:Index^ Index]<[^K^ K], [^HashFn^ HashFn]>`::ConstIterator_Key +ConstIterator&] [s2; Key iterator type.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00^`:`:AMap`:`:KeyConstIterator^@(64) KeyConstIterator][%00-00@(64) _ -][%00-00@0 KeyBegin][%00-00@(64) ()_][%00-00 const]&] +[s5;K%- [^`:`:AMap`:`:KeyConstIterator^ KeyConstIterator]_[@0 KeyBegin]()_const&] [s2; Returns a constant iterator to the first key in AMap.&] [s4; [*/ Return value]-|Constant key iterator.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00^`:`:AMap`:`:KeyConstIterator^@(64) KeyConstIterator][%00-00@(64) _ -][%00-00@0 KeyEnd][%00-00@(64) ()_][%00-00 const]&] +[s5;K%- [^`:`:AMap`:`:KeyConstIterator^ KeyConstIterator]_[@0 KeyEnd]()_const&] [s2; Returns a constant iterator to the key just beyond the last key in AMap.&] [s4; [*/ Return value]-|Constant key iterator.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00^`:`:AMap`:`:KeyConstIterator^@(64) KeyConstIterator][%00-00@(64) _ -][%00-00@0 KeyGetIter][%00-00@(64) (][%00-00 int][%00-00@(64) _][%00-00@3 pos][%00-00@(64) )_ -][%00-00 const]&] +[s5;K%- [^`:`:AMap`:`:KeyConstIterator^ KeyConstIterator]_[@0 KeyGetIter](int_[@3 pos])_con +st&] [s2; Returns a constant iterator to the key at the specified position. Same as [* KeyBegin() `+ i]. The benefit of this method is that [* pos] is range checked in debug mode. &] [s4; [*C@3 i]-|Required position.&] [s4; [*/ Return value]-|Constant key iterator.&] [s0;3 &] -[s5;K@0 [%00-00@(64) typedef_T_][%00-00 ValueType]&] +[s5;K%- typedef_T_ValueType&] [s2; Typedef of T for use in templated algorithms.&] [s0;3 &] -[s5;K@0 [%00-00@(64) typedef_typename_][%00-00^V`:`:ConstIterator^@(64) V`::ConstIterator][%00-00@(64) _ -][%00-00 ConstIterator]&] +[s5;K%- typedef_typename_[^V`:`:ConstIterator^ V`::ConstIterator]_ConstIterator&] [s2; Constant value iterator type.&] [s0;3 &] -[s5;K@0 [%00-00@(64) typedef_typename_][%00-00^V`:`:Iterator^@(64) V`::Iterator][%00-00@(64) _ -][%00-00 Iterator]&] +[s5;K%- typedef_typename_[^V`:`:Iterator^ V`::Iterator]_Iterator&] [s2; Value iterator type.&] [s0;3 &] -[s5;K [%00-00^`:`:AMap`:`:Iterator^ Iterator][%00-00 _][%00-00@0 Begin][%00-00 ()]&] +[s5;K%- [^`:`:AMap`:`:Iterator^ Iterator]_[@0 Begin]()&] [s2; Returns an iterator to the first value in AMap.&] [s4; [*/ Return value]-|Value iterator.&] [s0;3 &] -[s5;K [%00-00^`:`:AMap`:`:Iterator^ Iterator][%00-00 _][%00-00@0 End][%00-00 ()]&] +[s5;K%- [^`:`:AMap`:`:Iterator^ Iterator]_[@0 End]()&] [s2; Returns a constant iterator to the value just beyond the last key in AMap.&] [s4; [*/ Return value]-|Value iterator.&] [s0;3 &] -[s5;K [%00-00^`:`:AMap`:`:Iterator^ Iterator][%00-00 _][%00-00@0 GetIter][%00-00 (][%00-00@(0.0.255) i -nt][%00-00 _][%00-00@3 pos][%00-00 )]&] +[s5;K%- [^`:`:AMap`:`:Iterator^ Iterator]_[@0 GetIter]([@(0.0.255) int]_[@3 pos])&] [s2; Returns an iterator to the value at the specified position. Same as [* Begin() `+ i]. The benefit of this method is that [* pos] is range checked in debug mode.&] [s4; [*C@3 i]-|Required position.&] [s4; [*/ Return value]-|Value iterator.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00^`:`:AMap`:`:ConstIterator^@(64) ConstIterator][%00-00@(64) _][%00-00@0 B -egin][%00-00@(64) ()_][%00-00 const]&] +[s5;K%- [^`:`:AMap`:`:ConstIterator^ ConstIterator]_[@0 Begin]()_const&] [s2; Returns a constant iterator to the first value in AMap.&] [s4; [*/ Return value]-|Constant value iterator.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00^`:`:AMap`:`:ConstIterator^@(64) ConstIterator][%00-00@(64) _][%00-00@0 E -nd][%00-00@(64) ()_][%00-00 const]&] +[s5;K%- [^`:`:AMap`:`:ConstIterator^ ConstIterator]_[@0 End]()_const&] [s2; Returns a constant iterator to the value just beyond the last value in AMap.&] [s4; [*/ Return value]-|Constant value iterator.&] [s0;3 &] -[s5;K@(0.0.255) [%00-00^`:`:AMap`:`:ConstIterator^@(64) ConstIterator][%00-00@(64) _][%00-00@0 G -etIter][%00-00@(64) (][%00-00 int][%00-00@(64) _][%00-00@3 pos][%00-00@(64) )_][%00-00 const]&] +[s5;K%- [^`:`:AMap`:`:ConstIterator^ ConstIterator]_[@0 GetIter](int_[@3 pos])_const&] [s2; Returns a constant iterator to the value at the specified position. Same as [* Begin() `+ i]. Benefit of this methods is that in debug mode [* pos] is range checked.&] @@ -756,4 +685,4 @@ mode [* pos] is range checked.&] [s2; Specialization of the generic [* Swap] for AMap. Swaps array in simple constant time operation.&] [s4; [*C@3 a]-|First AMap to swap.&] -[s4; [*C@3 b]-|Second AMap to swap.] \ No newline at end of file +[s0; [*C@3 b]-|Second AMap to swap.] \ No newline at end of file diff --git a/uppdev/CoreTopics/src.tpp/AMap$en-us.tppi b/uppdev/CoreTopics/src.tpp/AMap$en-us.tppi index aa8531c25..11ecc5e91 100644 --- a/uppdev/CoreTopics/src.tpp/AMap$en-us.tppi +++ b/uppdev/CoreTopics/src.tpp/AMap$en-us.tppi @@ -1,21 +1,21 @@ TITLE("AMap") COMPRESSED -120,156,237,93,123,115,226,70,18,255,42,83,149,100,203,118,88,27,4,24,108,111,182,110,95,201,109,121,119,179,101,179,206,31,46,108,100,52,24,157,133,196,105,132,109,238,114,249,236,215,61,51,122,63,65,194,134,13,217,170,24,73,243,234,238,95,247,244,244,180,70,151,10,249,241,199,122,173,254,67,61,231,191,227,247,116,164,206,12,167,127,169,183,90,221,19,85,105,159,220,157,254,126,116,178,247,143,157,195,214,46,182,210,128,86,154,157,70,179,219,110,54,90,202,33,252,175,209,108,40,109,165,217,106,116,149,163,86,183,217,236,214,143,135,134,202,88,255,210,80,186,221,19,172,164,64,37,165,211,86,26,157,86,183,213,109,52,59,93,5,234,42,245,186,82,239,40,237,70,171,217,85,218,199,26,101,195,254,165,218,109,158,236,157,29,66,165,38,246,4,141,215,27,135,74,171,211,82,234,205,186,210,130,174,26,221,110,171,209,105,119,155,71,135,135,199,67,117,234,232,150,41,251,210,27,13,165,113,114,211,232,156,192,152,255,250,235,175,253,70,171,46,70,208,130,198, -26,245,22,12,181,1,247,234,45,165,211,104,31,213,143,218,221,70,183,222,132,198,219,157,122,251,120,170,218,234,36,157,244,118,46,233,157,250,177,238,80,104,98,239,231,70,163,3,85,14,107,135,63,52,90,29,32,180,219,108,181,187,157,58,116,174,40,74,179,169,52,154,202,209,145,210,62,108,119,142,199,84,213,168,45,73,80,97,240,123,13,168,218,169,117,126,128,138,245,86,187,169,180,142,144,89,77,232,73,81,14,219,71,141,118,171,222,62,132,150,142,109,250,239,153,110,211,9,53,65,100,255,189,254,223,79,31,190,188,252,118,78,46,89,251,228,244,120,0,255,222,216,182,58,199,31,31,29,106,171,142,101,227,111,107,42,127,239,13,118,6,187,67,203,100,206,241,63,234,228,242,167,122,253,101,189,206,233,37,64,198,212,80,29,122,253,170,239,221,175,239,215,247,149,118,123,151,72,249,6,203,95,123,151,45,114,26,126,84,35,139,55,209,43,223,196,69,249,38,254,169,178,241,175,102,248,249,235,235,235,5,27,34,111,62,171,211,254,139,254,37,171,159,20,16,202, -229,160,63,216,209,77,199,149,12,224,248,176,117,226,9,132,188,226,125,145,203,61,206,233,26,9,92,246,194,151,23,225,75,73,205,107,49,146,38,193,191,197,112,242,51,252,3,164,108,65,242,52,32,33,242,207,229,222,59,206,168,151,127,246,230,83,74,172,17,185,163,115,182,79,78,201,100,198,28,50,86,239,41,209,40,157,146,161,53,157,19,142,22,123,54,4,129,213,200,13,133,218,7,87,218,116,10,130,60,24,28,156,91,51,123,72,223,91,195,193,193,59,203,116,84,221,164,54,27,28,124,182,238,169,122,99,208,43,50,145,191,250,68,53,181,64,251,48,6,226,225,224,151,193,47,125,232,113,4,181,181,253,208,32,123,129,65,222,171,198,140,194,48,123,162,25,166,58,58,27,205,73,192,86,49,50,178,108,28,176,24,8,25,25,234,61,220,208,53,120,166,143,116,170,145,155,57,225,214,152,2,28,201,69,184,175,139,64,95,55,42,211,135,196,134,49,91,19,162,14,135,20,192,238,181,27,174,38,229,244,242,79,252,161,155,183,66,28,251,228,115,128,151,156,50,78, -243,204,100,250,45,94,184,196,239,236,238,112,14,147,211,193,11,242,184,219,39,48,182,177,165,1,89,206,204,54,177,189,49,180,43,136,231,228,81,67,208,42,71,129,211,81,171,113,120,194,5,77,116,70,84,169,155,206,88,117,96,204,147,27,232,155,145,143,166,70,31,93,81,147,7,221,25,103,211,232,51,188,134,189,78,112,32,19,232,64,176,20,200,251,232,96,103,51,6,164,168,12,219,162,178,95,41,130,33,16,64,131,85,106,64,63,185,160,136,35,132,36,191,228,230,1,175,56,58,224,198,57,189,149,207,163,228,125,210,239,40,148,154,19,203,25,195,240,190,244,62,249,131,173,121,196,35,56,29,107,170,15,5,60,223,89,54,29,28,48,123,168,33,66,93,84,14,126,164,230,224,229,140,5,208,9,245,8,233,59,40,125,206,155,204,118,224,246,221,224,218,111,5,175,57,1,22,119,26,84,195,215,158,62,113,128,193,108,4,35,102,116,162,2,12,135,192,8,213,0,17,207,110,199,32,35,10,124,27,81,21,100,13,66,82,109,224,24,116,69,244,201,212,178,29,40, -78,116,19,26,179,245,123,96,179,199,84,157,203,210,149,132,4,227,103,58,185,1,221,139,24,97,18,183,22,247,150,174,121,214,193,55,39,96,41,52,255,254,78,146,153,65,152,250,53,1,175,126,237,38,185,243,158,36,27,187,112,229,94,184,242,163,247,100,151,219,42,229,4,71,131,88,6,184,114,214,10,252,79,85,221,38,142,133,124,227,34,231,196,119,78,0,221,240,92,215,96,202,96,68,151,51,13,195,130,111,56,238,221,98,189,60,3,151,223,94,74,167,54,5,17,83,19,116,8,75,113,115,154,91,202,211,5,215,178,97,141,150,48,43,200,207,151,127,158,210,121,248,230,35,220,188,192,194,251,229,228,252,21,16,91,145,172,133,50,84,38,80,194,201,67,85,118,21,71,90,109,212,177,128,164,80,49,12,235,65,220,66,69,113,244,9,133,249,105,230,240,182,24,159,151,100,39,208,24,44,2,28,219,154,203,233,37,2,133,104,219,155,128,130,28,28,144,144,60,170,211,237,36,105,6,196,199,37,43,102,46,124,234,81,234,150,25,90,54,216,185,169,101,106,56,159, -104,98,81,232,179,158,74,88,36,235,107,164,240,122,203,233,128,156,113,54,136,210,240,244,44,200,139,251,130,58,172,155,78,162,10,255,10,83,192,130,34,77,114,145,73,174,152,129,8,91,167,247,200,2,16,223,212,98,58,206,112,232,28,140,116,27,68,35,157,17,49,105,114,197,155,210,161,112,181,16,26,160,164,40,131,26,248,9,40,112,149,76,109,10,46,201,116,134,162,246,253,26,240,233,176,245,196,103,2,2,224,119,242,214,193,115,67,119,3,127,7,138,112,87,231,193,154,25,154,91,16,80,134,96,129,113,10,247,12,252,149,17,180,100,56,250,224,37,14,204,178,113,86,133,33,129,109,48,45,104,223,182,238,168,41,124,84,156,128,161,69,160,210,164,9,4,226,16,68,183,244,81,103,224,115,122,68,226,99,176,73,96,106,124,78,233,136,35,193,67,141,15,2,11,185,141,106,22,21,221,243,150,252,134,84,98,210,91,112,111,1,246,230,12,167,117,217,12,224,9,91,249,102,26,186,121,7,92,114,93,65,238,56,128,91,9,35,215,226,166,226,84,232,40,248,160, -145,135,99,120,248,53,89,32,233,56,254,26,192,128,75,7,152,227,192,144,165,209,245,31,75,30,75,242,162,176,15,64,214,133,95,0,246,209,117,145,192,126,248,169,135,254,48,230,101,213,52,91,38,30,239,94,71,42,87,10,252,45,236,34,176,251,222,225,228,251,190,222,74,47,173,107,212,191,146,80,52,233,99,18,18,17,42,220,205,98,222,67,213,137,128,212,109,166,42,132,66,7,197,209,121,107,195,138,7,224,197,27,243,199,132,205,6,129,75,118,152,37,154,118,107,50,114,139,99,154,19,54,187,97,176,238,199,1,12,85,195,224,51,52,74,242,11,114,132,195,18,198,204,134,84,56,26,156,168,221,125,242,199,24,72,193,229,35,229,101,76,75,208,228,225,153,211,34,227,9,92,143,107,149,105,132,158,140,245,130,154,17,23,180,111,15,170,80,128,79,106,20,231,235,171,4,65,5,48,212,173,15,18,87,55,161,94,153,211,193,26,76,5,155,237,129,84,171,49,139,155,254,5,144,191,106,220,241,16,203,154,34,239,131,236,109,67,28,17,208,133,251,52,84,101,84, -198,233,165,36,158,192,240,221,235,214,140,109,130,59,17,71,25,58,24,171,118,39,112,31,185,188,63,81,29,188,203,121,20,201,242,78,247,42,190,223,224,196,147,76,203,213,172,207,48,230,102,210,135,196,192,89,68,53,41,110,71,140,226,65,57,221,97,1,101,205,135,219,38,70,225,150,180,246,59,84,231,91,75,35,107,134,204,179,145,223,84,219,93,99,77,40,178,211,146,180,175,29,105,80,55,117,103,163,181,43,63,2,146,13,244,133,21,80,22,172,37,237,34,65,39,35,219,154,112,212,113,206,214,22,210,201,205,221,170,74,118,241,57,11,228,110,5,150,0,30,162,15,197,33,18,242,159,200,156,22,157,188,86,171,177,95,103,206,162,251,99,11,106,173,220,51,219,170,230,42,85,51,188,171,87,189,86,174,255,174,225,38,41,100,234,110,181,128,71,166,50,38,43,115,96,81,228,107,142,104,173,208,66,198,195,37,166,94,18,230,168,115,15,214,124,155,25,152,37,65,138,43,8,204,76,65,227,33,243,122,92,204,228,121,235,40,128,25,239,168,132,209,2,131,181,238, -46,70,66,62,128,80,108,185,116,66,246,205,98,134,192,211,110,180,58,22,47,63,17,214,99,106,168,67,193,248,152,121,59,240,51,11,246,253,78,116,97,86,98,125,8,11,21,174,198,11,35,112,221,109,107,215,68,136,36,42,17,71,196,236,37,112,237,146,19,22,68,145,204,121,123,169,9,62,193,90,175,159,217,89,62,101,37,3,224,107,51,35,175,3,146,77,108,37,218,73,54,146,35,147,221,130,72,78,155,235,22,157,15,191,75,252,166,97,101,181,134,57,142,62,148,117,2,248,124,236,233,78,46,228,164,7,20,73,219,241,210,168,252,64,85,1,56,74,143,162,32,254,72,31,187,142,228,12,229,231,11,93,196,134,182,124,212,98,195,208,153,157,98,20,79,183,170,34,174,247,36,136,174,106,121,83,205,202,98,58,115,242,163,110,192,51,129,5,31,211,200,170,140,208,219,54,184,86,205,82,125,221,61,223,213,174,224,43,134,120,177,184,150,187,128,46,5,245,109,72,107,27,210,218,32,133,72,139,38,109,117,97,109,116,33,154,243,254,27,93,104,114,200,207,121,247, -49,154,144,218,94,4,166,207,22,113,13,100,44,20,143,188,158,5,54,174,189,12,40,127,33,139,162,121,208,25,149,203,10,195,186,213,135,132,218,54,200,105,71,101,140,218,168,37,124,223,252,102,118,11,244,104,116,119,89,135,226,44,125,77,80,52,5,46,41,39,39,29,47,79,145,209,163,250,239,174,4,192,52,166,91,52,109,209,148,145,81,153,219,117,147,104,149,64,81,224,65,196,170,190,67,60,74,79,32,152,157,19,152,177,220,23,154,106,137,74,106,69,136,143,197,71,160,9,230,80,85,91,96,34,213,130,179,232,13,13,52,21,154,77,249,92,88,20,220,98,226,12,100,179,177,217,116,106,120,35,94,34,162,5,168,126,226,212,158,191,41,54,115,113,89,69,50,80,196,141,209,157,239,57,229,103,81,179,255,252,218,176,186,189,183,60,47,228,123,117,105,23,82,172,130,193,144,199,126,13,254,79,250,213,232,218,6,47,5,31,11,173,3,159,67,67,215,38,246,177,85,197,146,170,152,26,134,169,82,11,55,53,179,103,77,21,240,137,247,140,182,14,99,178,50,21, -223,199,114,235,100,4,53,183,158,227,90,171,197,179,121,142,235,169,103,79,175,99,11,250,142,21,171,221,214,137,92,129,178,110,176,19,185,213,202,5,220,200,106,231,192,173,47,185,168,30,22,200,9,63,167,14,12,60,83,25,243,115,194,139,204,145,69,246,4,121,54,29,227,204,9,236,93,166,39,150,135,183,79,243,94,226,116,5,245,5,224,139,93,100,242,142,244,174,7,123,209,173,127,199,94,221,46,232,212,2,62,83,219,59,210,106,67,95,65,41,152,21,240,229,219,167,79,30,201,203,190,182,187,72,26,85,148,185,118,100,8,37,94,69,79,220,70,202,68,207,19,239,137,110,161,181,17,208,90,32,17,73,80,146,103,184,75,157,50,26,61,110,38,249,164,153,248,235,64,170,97,68,222,218,143,227,74,102,194,71,78,43,25,188,20,22,57,65,78,248,202,144,127,64,6,127,103,40,32,186,228,151,134,216,83,28,67,147,6,154,192,139,72,229,78,104,249,34,78,54,240,231,51,230,165,135,175,13,126,150,193,64,117,82,46,42,130,50,172,77,176,250,55,150,101,68, -76,118,128,193,31,153,75,94,154,205,175,226,12,146,30,69,19,250,48,166,60,183,43,215,95,226,167,76,7,41,76,244,157,50,56,6,142,119,244,212,150,60,48,70,51,201,62,154,152,128,178,22,254,166,24,10,190,233,145,55,15,226,204,150,122,194,106,214,139,143,189,49,190,218,136,147,49,195,19,118,61,212,214,8,229,197,65,81,230,40,63,211,61,93,92,19,67,64,156,51,170,218,195,113,20,233,157,19,55,253,135,193,226,8,96,190,1,225,65,68,151,96,118,138,235,30,208,90,157,151,43,179,162,121,126,132,85,115,106,247,98,240,20,80,76,63,62,225,177,191,30,56,93,239,120,218,146,72,77,94,234,151,135,242,25,197,83,245,75,66,57,176,218,196,214,88,200,137,126,106,76,172,137,140,83,94,31,183,57,135,86,44,177,180,216,102,138,76,3,235,200,38,72,34,219,200,164,161,193,76,71,131,25,247,130,184,209,16,11,191,158,62,225,203,69,79,146,176,174,3,177,51,67,191,29,59,240,67,163,83,106,106,12,238,114,28,249,141,9,86,250,206,221,223,29,79, -94,113,16,97,104,209,168,226,119,59,220,128,178,127,154,154,87,187,150,112,254,106,184,69,51,217,151,245,251,39,207,2,232,43,252,62,145,96,221,149,100,161,87,200,251,24,209,21,240,225,42,4,219,215,225,137,49,128,248,5,161,123,46,87,117,162,244,14,179,48,239,121,112,109,232,204,169,145,224,213,254,111,212,121,103,205,76,103,103,119,119,141,112,197,129,114,206,199,41,75,242,195,230,226,8,41,177,14,20,188,89,112,29,184,208,110,76,76,104,121,107,195,123,247,4,217,170,173,69,210,28,158,204,192,229,178,212,131,95,7,91,229,162,239,204,219,51,73,207,113,42,17,58,207,88,254,189,43,217,95,129,229,97,18,19,203,251,61,169,31,209,88,123,62,45,122,242,169,107,202,34,0,204,195,82,120,238,142,30,181,145,65,234,155,161,51,83,141,132,186,21,68,80,62,76,166,206,188,32,33,225,72,136,251,9,43,138,45,248,51,129,111,231,9,126,39,141,212,11,132,58,66,77,213,200,72,53,24,245,95,177,41,227,42,190,51,192,76,249,24,207,54,148,254,188,86, -102,175,111,108,135,206,127,242,186,252,172,155,250,68,255,15,158,219,0,157,219,98,117,54,155,76,93,151,70,28,212,132,222,222,208,166,42,15,222,242,51,17,212,169,58,212,29,239,179,53,249,40,88,204,243,128,229,211,146,171,159,71,199,86,147,12,1,111,145,121,3,143,191,186,226,145,4,34,15,29,173,63,156,217,182,56,211,86,20,168,133,138,234,38,103,140,127,204,145,215,96,36,190,235,250,107,103,209,14,43,80,252,55,134,97,13,151,80,252,40,105,92,226,232,149,102,153,184,196,178,75,74,250,189,109,77,151,18,179,191,172,185,30,252,18,124,208,136,11,31,59,97,17,171,155,96,242,194,73,175,110,234,66,17,135,187,232,20,215,11,18,91,100,146,10,165,156,132,14,43,151,170,89,52,117,32,179,177,170,134,159,238,148,60,15,29,5,157,185,211,24,149,1,175,184,160,50,101,17,47,115,26,170,32,61,165,169,84,1,158,134,206,81,10,17,22,144,160,175,31,73,227,11,101,235,68,6,161,65,205,169,191,212,207,32,229,212,175,228,237,226,202,202,241,100,243, -106,4,249,91,40,191,229,185,252,241,242,25,45,75,185,155,119,180,148,93,62,167,54,172,179,192,47,136,27,103,190,184,63,119,96,210,155,92,17,241,55,101,41,200,226,166,216,107,87,206,63,150,233,4,161,230,88,7,220,221,17,205,238,147,63,44,251,142,137,184,19,56,100,248,181,210,192,215,82,167,170,205,107,126,251,250,85,146,154,20,119,102,178,71,25,194,146,139,140,208,119,114,253,117,55,126,187,86,181,111,169,115,32,63,125,200,196,64,150,195,99,136,99,124,99,243,74,60,225,191,195,133,253,176,200,169,44,148,250,9,230,43,177,3,45,139,37,126,224,56,166,8,9,61,150,178,105,60,134,133,223,104,13,125,17,119,41,164,198,91,72,192,108,128,133,97,238,133,24,23,8,74,196,217,21,225,20,121,29,178,141,250,240,46,220,46,176,71,36,147,70,217,18,30,47,121,47,190,137,201,60,79,25,107,185,103,158,37,243,34,147,226,101,176,37,67,109,226,81,56,222,86,16,93,113,196,128,233,100,21,2,198,15,99,45,13,148,132,38,210,144,146,27,123,12,97, -37,134,132,32,237,233,64,136,140,103,25,36,100,147,84,16,10,23,49,217,241,125,168,42,165,87,240,35,215,65,30,200,68,142,34,92,72,23,121,209,126,211,252,159,139,168,100,195,156,73,151,237,106,9,126,187,4,89,245,147,99,68,54,98,203,251,187,51,216,61,230,7,63,194,69,127,103,87,210,240,46,176,191,234,95,136,221,100,12,101,196,93,172,196,182,57,26,188,203,23,131,26,216,252,80,127,188,128,119,57,120,1,63,249,28,202,115,191,221,193,252,30,251,152,119,210,254,111,209,253,98,204,176,139,127,30,60,214,162,152,208,249,116,126,46,230,241,98,36,203,79,146,187,83,205,224,213,233,160,38,102,141,193,107,228,128,120,78,64,225,66,140,144,183,121,157,87,167,175,93,78,152,26,230,193,251,117,196,93,16,109,223,101,14,143,116,227,119,225,81,230,1,34,0,13,226,227,60,81,83,18,249,0,61,122,230,133,145,250,214,114,198,254,19,22,200,174,231,73,112,41,17,28,127,229,171,201,111,144,69,238,35,61,114,231,187,0,96,125,14,11,211,135,44,46,192, -90,81,120,197,188,13,27,227,245,102,46,206,14,117,18,50,240,206,28,22,83,116,116,237,175,249,8,52,216,131,187,94,164,84,148,192,97,156,34,107,208,147,230,239,120,128,89,48,84,220,108,82,141,91,203,214,157,241,164,112,111,248,215,4,18,159,211,217,61,62,230,86,238,163,220,172,11,209,31,122,226,50,2,23,163,238,214,30,167,36,127,230,189,10,98,57,218,174,75,68,180,187,212,144,29,148,124,75,111,117,115,249,41,218,31,126,240,213,246,96,230,118,129,249,246,46,192,135,103,96,193,135,216,55,99,75,48,0,105,249,151,200,236,157,91,160,186,94,56,99,179,120,130,107,53,40,183,84,212,98,106,69,124,190,146,236,204,200,16,114,247,85,192,80,187,88,198,173,149,159,137,222,23,185,215,55,212,132,21,182,35,98,62,58,238,46,56,99,75,227,199,162,99,110,53,212,195,209,242,36,125,213,188,165,100,56,166,195,187,232,225,100,145,36,107,61,24,61,143,199,77,150,148,105,138,97,235,249,188,227,246,55,197,144,246,86,103,72,47,16,83,73,128,186,136,90, -188,20,72,144,68,227,231,113,69,196,81,179,237,224,98,131,77,24,103,222,16,163,163,187,200,31,84,162,238,121,93,147,104,143,33,13,11,89,221,164,32,182,153,98,89,37,179,114,237,72,120,252,85,14,61,96,45,179,163,239,81,2,196,208,75,216,198,213,209,20,177,118,11,237,0,5,172,93,194,134,127,92,142,185,25,219,1,155,182,50,131,86,202,158,101,203,33,103,114,74,50,36,5,167,165,149,184,42,69,21,42,197,92,61,29,245,149,122,41,25,186,184,49,12,89,23,23,165,132,66,191,77,84,102,230,105,115,72,105,83,117,187,156,54,103,203,81,46,161,201,200,214,113,99,12,55,106,112,28,231,15,184,42,22,17,25,177,230,85,97,29,28,188,190,241,86,192,231,34,89,206,219,250,16,187,111,183,64,186,13,139,90,183,49,238,191,200,180,73,184,102,50,43,21,56,192,116,240,102,168,207,127,135,39,4,39,127,152,75,5,130,126,229,122,45,247,113,8,123,136,238,157,223,96,56,134,14,17,244,161,66,253,255,3,23,61,235,181, +120,156,237,93,139,83,219,70,26,255,87,118,166,109,6,168,1,91,182,177,129,52,211,132,36,189,12,73,154,9,14,157,57,198,96,97,173,237,61,100,201,167,149,1,223,245,250,183,223,247,237,67,111,89,242,131,196,164,52,51,197,146,86,187,223,227,247,61,246,161,221,11,131,252,248,99,181,82,253,161,90,240,223,209,107,58,48,167,182,223,189,96,141,70,251,216,52,154,199,55,167,191,31,30,239,252,186,117,208,216,198,90,106,80,75,189,85,171,183,155,245,90,195,56,128,255,213,234,53,163,105,212,27,181,182,113,216,104,215,235,237,234,81,223,54,57,239,94,216,70,187,125,140,47,25,240,146,209,106,26,181,86,163,221,104,215,234,173,182,1,239,26,213,170,81,109,25,205,90,163,222,54,154,71,22,229,253,238,133,217,174,31,239,124,62,128,151,234,216,18,84,94,173,29,24,141,86,195,168,214,171,70,3,154,170,181,219,141,90,171,217,174,31,30,28,28,245,205,137,207,92,71,181,197,106,53,163,118,124,93,107,29,3,205,127,253,245,215,94,173,81,149,20,52,160,178, +90,181,1,164,214,224,94,181,97,180,106,205,195,234,97,179,93,107,87,235,80,121,179,85,109,30,77,76,207,28,231,179,222,44,100,189,85,61,98,62,133,42,118,126,174,213,90,240,202,65,229,224,135,90,163,5,140,182,235,141,102,187,85,133,198,13,195,168,215,141,90,221,56,60,52,154,7,205,214,209,136,154,22,245,20,11,38,16,191,83,131,87,91,149,214,15,240,98,181,209,172,27,141,67,20,86,29,90,50,140,131,230,97,173,217,168,54,15,160,166,35,143,254,123,202,60,58,166,14,168,236,191,87,255,251,233,205,199,221,47,103,228,130,55,143,79,143,122,240,239,165,231,153,51,252,241,206,167,158,233,187,30,254,118,39,234,247,78,111,171,183,221,119,29,238,31,253,180,75,128,242,137,109,250,244,234,249,197,175,91,213,189,234,158,209,108,110,19,169,203,171,139,95,27,228,180,91,33,57,143,58,249,143,206,243,31,253,195,228,163,183,78,247,197,213,85,70,129,151,31,204,201,179,238,5,175,30,151,224,228,162,215,237,109,49,199,215,236,128,242,15,26,199,1,75,228, +185,168,148,92,236,40,54,34,151,157,248,229,121,252,82,147,40,41,169,19,252,91,78,184,63,195,63,16,239,70,75,150,168,63,23,59,39,130,138,221,63,59,179,9,37,238,128,220,208,25,223,35,167,100,60,229,62,25,153,183,148,88,148,78,72,223,157,204,136,16,177,55,237,3,151,21,114,77,225,237,253,75,107,50,1,238,247,123,251,103,238,212,235,211,215,110,191,183,127,226,58,190,201,28,234,241,222,254,7,247,150,154,215,54,189,36,99,245,171,75,76,199,138,212,15,52,144,64,120,191,244,126,233,66,139,3,120,219,218,139,17,217,137,16,121,107,218,83,10,100,118,100,53,220,244,25,31,204,72,196,42,56,25,184,30,18,44,9,33,3,219,188,133,27,204,130,103,108,192,168,69,174,103,68,216,61,5,29,146,243,120,91,231,145,182,174,77,206,250,196,3,154,221,49,49,251,125,10,8,9,234,141,191,166,132,191,251,39,254,96,206,80,202,125,143,124,136,200,82,112,38,120,158,58,156,13,241,66,51,191,181,189,37,36,76,78,123,207,200,253,118,151,0,109,35,215, +2,182,252,169,231,96,125,35,168,87,50,47,216,163,182,228,85,81,129,142,175,81,59,56,38,168,103,194,56,49,21,160,253,145,233,3,205,227,107,104,155,147,119,142,69,239,181,170,201,29,243,71,243,121,12,5,94,193,86,199,72,200,24,26,144,34,5,246,222,249,216,216,148,3,43,38,199,186,168,106,87,169,160,15,12,208,232,43,128,222,29,114,78,17,71,64,105,87,92,10,155,194,43,129,14,184,113,70,135,234,121,146,189,247,236,134,66,169,25,113,253,17,144,247,177,243,62,36,182,18,48,143,224,244,221,9,235,75,120,158,184,30,237,237,115,175,111,33,66,53,42,123,63,82,167,183,59,229,17,116,194,123,132,116,125,212,190,144,205,220,122,224,246,77,239,42,172,5,175,5,3,174,8,79,166,29,90,79,151,248,32,96,62,0,138,57,29,155,0,195,62,8,194,180,65,197,211,225,8,116,68,65,110,3,106,130,174,65,73,166,7,18,131,166,8,27,79,92,207,135,226,132,57,80,153,199,110,65,204,129,80,153,208,165,214,132,2,227,7,58,190,6,219,75,120,46, +112,71,81,151,112,235,50,11,93,70,149,188,180,172,238,86,204,91,32,8,187,87,128,66,120,94,39,55,73,111,35,31,119,212,227,251,238,54,182,96,28,99,69,136,57,128,149,16,129,196,233,196,100,30,241,93,228,79,168,70,16,217,58,6,20,194,115,102,129,115,228,132,41,55,202,177,224,75,129,79,93,172,83,228,136,138,235,203,105,212,163,160,10,234,0,214,177,148,112,123,133,165,2,204,106,15,132,111,52,164,249,163,160,118,255,60,165,179,248,205,123,184,121,142,133,149,118,234,63,157,156,237,158,252,179,140,86,62,1,152,10,53,35,17,184,180,54,136,160,13,237,69,163,83,185,70,4,114,68,204,136,62,219,189,147,183,16,141,62,27,83,8,2,83,95,212,197,133,243,87,141,64,101,144,211,249,158,59,83,62,60,161,199,100,221,143,65,133,9,37,70,212,39,37,95,198,140,50,52,19,81,133,208,146,116,245,248,52,160,90,151,233,187,30,56,134,137,235,88,232,128,45,153,175,135,98,164,74,197,217,134,147,40,188,217,50,223,39,159,133,24,100,105,120,250,57, +42,139,219,28,61,68,69,15,9,161,180,162,183,224,32,243,20,35,243,175,148,118,160,109,143,209,91,164,28,164,62,113,57,67,79,142,65,112,192,60,144,168,10,186,50,56,8,236,79,104,95,166,20,168,81,176,19,20,93,5,226,33,234,201,36,19,143,66,232,157,76,81,67,97,252,134,220,5,107,207,124,38,53,7,249,149,168,29,50,20,12,171,248,59,82,68,132,244,59,119,106,91,186,32,128,3,117,12,116,202,52,4,226,242,0,106,178,125,214,219,69,194,92,15,163,7,144,4,230,233,184,80,191,231,222,80,71,230,98,24,104,160,70,224,210,161,25,12,34,9,178,89,122,207,56,228,86,1,147,248,24,220,2,88,123,40,41,134,234,151,50,180,4,17,88,72,87,106,185,84,54,47,106,10,43,50,137,67,135,144,198,1,90,157,41,134,47,85,13,192,0,107,249,226,216,204,185,1,41,233,148,71,4,72,72,159,128,114,43,109,173,167,210,180,32,215,74,60,28,193,195,79,217,10,201,135,223,167,8,6,52,31,224,17,35,36,43,191,23,62,86,50,86,236,101,160, +21,16,26,0,180,43,211,190,168,167,184,18,119,214,138,200,39,60,36,240,176,1,122,174,4,157,0,113,99,84,90,241,14,189,207,210,59,42,70,4,124,30,60,52,253,4,36,116,53,235,194,3,52,80,30,11,67,15,18,92,80,166,168,44,164,9,171,141,194,132,108,113,87,86,173,223,228,100,136,52,205,8,159,94,115,232,230,33,1,125,211,182,69,124,65,225,126,68,137,8,16,0,205,188,79,101,152,20,76,109,239,145,63,70,192,10,246,22,168,40,227,184,146,167,0,61,130,23,213,125,20,86,83,89,27,254,88,54,178,74,226,48,173,232,208,250,10,224,246,222,132,40,183,60,228,162,112,131,222,220,83,224,75,129,91,130,121,174,171,219,0,55,183,177,97,47,27,159,101,61,224,2,144,124,104,64,136,14,235,134,66,226,141,106,237,219,71,63,192,223,109,119,75,222,65,175,88,86,209,224,42,110,153,59,229,143,33,220,165,213,143,1,240,161,195,29,78,160,172,30,239,214,135,187,213,34,94,182,190,231,70,189,205,234,250,125,149,248,179,158,36,27,7,34,28,122, +151,57,154,144,176,40,138,131,154,131,244,72,5,243,121,196,198,138,81,242,24,135,38,150,244,158,91,148,137,1,234,129,59,69,225,121,40,111,106,109,63,0,128,51,7,104,229,36,146,42,195,28,230,63,70,156,23,119,40,231,67,110,97,83,80,5,43,89,163,205,208,200,192,115,199,66,255,66,160,149,133,172,227,241,14,105,103,103,149,66,4,106,96,20,75,128,12,49,59,16,16,137,101,6,100,70,203,122,255,53,218,206,167,169,159,59,130,158,178,31,53,140,254,100,51,43,217,76,124,100,127,253,230,178,249,51,7,143,197,82,194,137,38,137,133,184,149,40,59,18,105,186,194,191,44,86,42,209,14,208,133,107,98,8,247,205,89,0,78,49,97,4,44,43,168,97,134,139,19,185,104,174,106,26,92,107,190,40,155,68,49,78,69,67,101,125,2,248,131,245,196,210,112,142,77,26,138,74,178,145,145,105,202,176,2,107,65,43,118,69,249,177,180,198,137,109,246,165,8,82,238,98,63,156,173,219,11,27,97,210,76,83,109,72,139,143,191,38,10,35,16,244,244,145,54,57, +57,251,47,199,104,112,218,29,18,140,236,73,64,89,100,110,128,90,42,146,101,120,191,205,51,227,130,57,220,18,80,91,45,244,124,67,136,57,88,75,178,145,249,16,75,120,245,5,33,150,231,212,23,117,252,223,29,176,2,60,148,246,93,41,208,160,138,50,48,19,66,134,249,133,72,81,17,58,49,29,29,76,245,135,67,4,37,80,164,34,94,73,216,144,46,54,157,152,11,47,158,7,63,79,145,182,124,199,243,145,129,106,254,212,121,122,25,193,194,35,42,11,2,113,93,89,243,122,18,214,201,212,47,30,239,0,118,165,10,67,40,34,211,115,6,61,158,134,53,150,232,154,109,240,176,198,154,193,86,110,68,65,247,144,86,2,221,211,96,194,223,107,48,225,161,144,154,215,143,127,2,233,38,128,84,175,56,252,141,102,123,209,244,138,195,16,111,25,11,11,203,64,238,155,141,91,69,166,26,203,143,95,125,142,76,108,5,107,10,194,94,18,138,249,142,113,170,146,95,219,29,178,62,161,158,7,50,223,50,57,167,30,34,94,204,171,93,79,135,192,143,69,183,151,141,159, +159,243,51,215,188,212,75,78,136,199,116,92,118,142,220,12,151,231,70,180,60,162,79,106,126,148,106,174,196,10,213,137,181,152,226,165,244,229,120,192,119,168,125,21,220,162,147,216,17,39,172,87,85,87,50,77,194,77,48,159,234,204,66,21,220,167,166,181,64,108,176,162,129,225,154,70,170,138,5,8,225,222,203,66,73,198,130,200,106,12,62,157,76,236,128,226,162,81,3,64,213,210,51,224,127,83,72,21,194,105,29,115,230,137,32,204,252,239,121,102,124,9,223,184,36,136,23,25,185,47,10,154,223,107,106,180,16,196,75,246,92,239,187,21,248,63,233,174,7,245,143,184,123,112,95,170,111,240,224,182,178,174,169,135,39,27,89,196,70,114,251,204,235,52,143,199,58,1,190,9,150,177,244,208,245,83,42,148,109,3,229,135,211,245,59,115,6,142,158,114,162,7,65,243,26,115,162,205,68,252,215,71,251,130,89,209,154,13,224,41,61,90,213,108,190,82,122,244,100,46,11,36,72,235,13,19,79,89,210,34,6,146,181,40,240,140,250,64,101,238,162,192,204,168,146,53, +237,32,150,149,112,193,68,100,170,35,127,237,96,124,182,165,232,59,18,45,208,143,0,51,108,34,143,199,206,85,111,39,152,200,243,189,37,38,77,38,46,112,79,189,96,255,129,71,186,238,183,228,132,224,199,47,239,223,7,44,47,251,21,208,34,139,12,146,194,245,18,36,44,240,201,153,26,50,79,106,124,137,41,148,39,157,63,22,157,103,206,218,75,178,83,94,172,96,115,35,253,113,116,87,127,29,173,16,162,151,63,155,182,157,248,138,46,173,127,181,172,49,241,189,109,111,87,186,167,12,121,226,18,233,240,75,82,177,70,58,34,226,236,69,210,252,107,124,72,157,167,220,200,194,235,213,190,49,254,40,191,52,12,157,59,15,22,13,174,91,207,75,104,114,125,186,42,43,200,21,5,116,237,186,182,16,202,59,174,41,207,255,228,182,67,209,147,220,141,168,88,118,80,24,155,197,30,111,209,166,51,227,244,28,86,32,25,75,126,61,60,135,21,61,51,250,206,193,153,218,85,51,17,89,11,46,134,45,114,222,232,142,115,55,87,154,247,213,67,103,132,223,53,96,4,225, +184,81,86,160,252,10,161,162,56,224,109,134,210,118,244,78,124,150,36,1,225,194,169,233,245,71,73,192,180,142,245,20,55,135,244,22,208,242,8,198,64,16,11,82,216,57,73,93,4,252,76,148,43,157,147,174,134,132,146,123,216,45,6,20,9,138,252,143,4,239,187,155,129,152,205,30,52,88,18,51,217,221,166,5,65,245,153,226,198,143,133,95,63,201,98,60,150,73,125,109,205,110,136,166,114,190,197,242,132,132,86,146,123,48,12,147,80,5,166,242,117,144,100,194,134,3,53,57,41,53,57,233,168,41,108,82,166,229,29,54,22,201,124,32,98,200,186,65,31,220,102,195,145,15,63,44,58,161,142,197,225,174,80,112,88,153,228,49,76,6,254,238,138,14,138,131,110,98,41,189,137,155,185,234,177,175,112,79,139,224,237,74,198,46,77,241,26,157,236,220,39,108,159,172,3,105,151,184,113,179,148,196,165,146,72,247,249,197,37,240,113,41,224,245,66,197,7,224,111,49,136,157,169,156,91,150,222,226,46,46,54,235,93,217,208,229,170,144,232,213,222,111,212,63,113,167, +142,191,181,189,189,65,250,23,10,61,19,116,170,146,98,107,142,180,38,203,102,233,82,16,121,89,122,238,20,156,148,117,81,170,126,171,55,150,90,183,49,102,69,160,92,190,227,43,250,162,59,148,207,221,246,70,13,107,230,79,176,175,48,106,54,39,27,63,89,177,189,236,108,61,206,117,97,80,205,221,236,244,49,240,172,55,55,210,22,220,221,202,214,109,60,134,36,191,218,156,67,238,203,190,63,53,237,140,119,231,247,252,222,140,39,254,44,73,76,188,179,167,247,200,166,88,52,244,86,161,47,34,184,17,59,169,150,232,205,197,170,170,144,129,105,115,26,174,189,45,157,15,156,216,96,128,64,244,60,203,15,253,107,233,97,236,145,39,190,109,215,213,126,96,14,27,179,255,224,119,125,208,128,39,19,226,233,120,162,195,156,252,68,29,51,128,190,71,77,49,140,35,190,153,51,39,102,159,249,193,118,189,165,52,146,23,141,32,61,205,77,56,239,125,207,140,152,135,40,202,131,230,211,107,94,3,194,64,1,177,173,21,251,83,207,147,123,70,201,2,149,88,81,230,8,246, +194,143,195,131,10,19,227,53,58,18,127,78,54,56,223,28,94,218,182,219,159,103,14,73,242,132,236,49,103,152,103,188,153,101,203,200,252,181,231,78,114,4,238,64,118,249,139,248,85,11,228,142,197,121,194,13,100,216,111,124,57,143,158,186,42,147,197,204,241,159,29,164,180,132,127,140,77,46,198,182,194,83,40,46,59,73,52,183,178,197,9,205,143,98,223,140,226,232,200,191,160,91,36,33,139,135,97,53,135,181,14,242,115,170,202,32,254,84,126,253,173,137,78,33,52,139,146,216,124,105,162,57,11,222,156,132,61,152,57,68,159,134,47,5,83,7,234,229,244,66,182,66,177,255,166,230,19,87,201,131,86,159,68,92,42,53,184,161,229,61,205,25,245,32,203,132,0,3,238,70,244,45,206,124,112,180,227,75,34,255,234,12,151,7,190,38,120,65,249,69,23,122,80,17,77,250,238,190,8,122,242,245,61,242,135,235,221,112,217,91,133,208,139,7,95,68,14,222,152,152,158,120,243,203,167,79,138,224,172,193,32,174,90,84,29,95,149,175,197,142,92,9,123,1,120,12, +138,233,13,169,191,175,54,248,231,146,144,60,117,75,166,197,200,248,165,60,103,4,187,83,167,151,242,156,155,75,57,173,112,25,28,82,19,130,67,150,93,194,42,69,151,19,207,217,136,157,106,178,148,162,211,53,36,84,190,24,115,210,114,89,255,38,224,77,46,39,73,48,23,111,149,188,150,7,39,240,32,21,193,151,244,166,3,217,28,21,209,29,85,77,186,175,43,232,127,17,51,83,190,140,34,194,94,226,210,10,200,168,34,75,3,121,60,4,2,215,44,100,202,59,209,200,50,2,47,164,83,74,252,60,20,170,24,157,92,74,172,37,79,230,137,242,161,38,166,202,112,146,175,139,178,237,166,153,63,15,244,16,114,157,169,137,135,101,237,213,18,12,232,19,199,0,9,193,95,60,201,75,108,71,2,23,97,4,62,137,12,164,135,23,114,218,0,59,66,233,168,152,89,183,208,123,112,249,172,87,17,39,153,69,218,19,5,130,203,222,51,248,41,252,178,88,48,165,137,249,61,117,214,80,214,64,127,217,137,1,156,137,79,159,94,148,170,81,6,9,17,34,228,201,95,37, +89,86,39,38,105,79,218,123,126,218,171,72,151,217,123,129,18,144,207,9,24,79,76,16,234,182,120,231,249,233,11,45,9,199,186,15,214,233,225,59,242,46,168,54,136,176,98,80,8,143,173,66,157,71,152,0,52,200,205,122,147,134,159,56,31,11,147,169,210,72,125,5,29,223,240,9,143,44,73,19,147,240,57,253,198,176,187,96,169,93,188,19,247,145,31,53,197,81,2,176,161,132,165,163,66,17,151,16,173,44,252,192,178,141,187,206,205,22,174,116,103,120,16,24,36,71,87,167,87,240,42,158,9,167,121,151,247,177,189,83,113,208,217,148,139,143,143,245,145,127,144,146,217,67,215,99,254,104,60,175,90,252,235,0,249,11,167,78,71,71,194,237,232,19,8,145,186,216,13,69,38,166,241,122,12,89,52,154,27,86,53,136,146,21,93,146,228,29,153,235,194,221,87,116,200,156,18,81,45,36,32,250,201,80,116,169,84,137,16,117,19,225,100,157,76,188,193,131,57,22,102,1,169,249,151,92,100,51,115,1,197,65,103,108,67,184,194,156,26,238,133,61,46,232,29,21, +247,185,178,184,156,51,205,169,199,13,193,149,104,52,224,208,225,207,208,233,146,171,147,174,169,3,253,10,95,118,36,25,215,7,26,50,117,36,33,188,135,100,137,229,102,166,51,132,254,207,136,246,111,146,95,229,39,150,33,177,232,120,84,186,207,183,180,168,181,69,118,174,132,47,200,54,245,206,122,76,253,28,181,153,80,229,121,210,164,187,87,89,6,29,176,35,199,64,138,108,59,175,241,120,187,97,147,137,214,206,75,53,18,71,105,88,117,28,149,218,91,36,225,231,228,248,7,197,96,161,45,197,105,92,154,60,233,7,202,219,134,36,111,5,31,176,38,186,3,75,207,28,224,20,102,95,44,241,194,213,77,17,83,127,48,59,95,201,204,23,148,102,194,248,50,156,232,106,193,173,44,120,115,204,121,13,244,47,23,215,230,160,250,219,179,180,158,160,182,2,214,95,101,226,156,7,64,143,225,57,23,246,171,1,125,190,120,245,193,206,3,143,225,248,44,14,77,34,29,103,119,152,233,203,94,166,204,227,205,174,60,42,87,95,95,135,99,146,114,174,60,24,34,148,131,192, +67,96,221,131,68,93,87,38,2,161,90,236,0,215,92,173,249,0,9,112,6,97,145,134,242,247,197,114,155,236,205,157,77,96,232,173,48,24,53,222,73,248,93,208,139,84,101,174,177,139,73,251,136,197,88,161,238,255,1,169,124,13,193,