From 7dd8834dc3c033fc7132538018347649d9d8b9fb Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 17 Jun 2019 17:42:45 -0700 Subject: [PATCH 001/312] Update configuration for building drafts after N4820. --- source/config.tex | 4 ++-- source/lib-intro.tex | 2 -- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/source/config.tex b/source/config.tex index 75dc7ebf33..28aceaecd5 100644 --- a/source/config.tex +++ b/source/config.tex @@ -1,8 +1,8 @@ %!TEX root = std.tex %%-------------------------------------------------- %% Version numbers -\newcommand{\docno}{N4820} -\newcommand{\prevdocno}{N4810} +\newcommand{\docno}{Dxxxx} +\newcommand{\prevdocno}{N4820} \newcommand{\cppver}{201703L} %% Release date diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 049ba253ce..4e0f17489f 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -2031,8 +2031,6 @@ \tcode{args} & a function parameter pack with the pattern \tcode{Args\&\&} \\ \end{libreqtab2} -\clearpage - \begin{libreqtab4d} {\oldconcept{Allocator} requirements} {cpp17.allocator} From ac7eee3e4ac4c8d28f116ad82e104d90073d8715 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20K=C3=B6ppe?= Date: Mon, 24 Jun 2019 23:39:57 +0100 Subject: [PATCH 002/312] [expr] Adjust whitespace so comments start on the preferred columns --- source/expressions.tex | 71 +++++++++++++++++++++--------------------- 1 file changed, 36 insertions(+), 35 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index d21a71f3b5..74b38d3507 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -1207,14 +1207,14 @@ \begin{example} \begin{codeblock} class Outer { - int a[sizeof(*this)]; // error: not inside a member function - unsigned int sz = sizeof(*this); // OK: in default member initializer + int a[sizeof(*this)]; // error: not inside a member function + unsigned int sz = sizeof(*this); // OK: in default member initializer void f() { - int b[sizeof(*this)]; // OK + int b[sizeof(*this)]; // OK struct Inner { - int c[sizeof(*this)]; // error: not inside a member function of \tcode{Inner} + int c[sizeof(*this)]; // error: not inside a member function of \tcode{Inner} }; } }; @@ -1295,7 +1295,7 @@ \begin{example} \begin{codeblock} template concept C = true; -static_assert(C); // OK +static_assert(C); // OK \end{codeblock} \end{example} \begin{note} @@ -1586,10 +1586,10 @@ \tcode{return} statements as described in~\ref{dcl.spec.auto}. \begin{example} \begin{codeblock} -auto x1 = [](int i){ return i; }; // OK: return type is \tcode{int} -auto x2 = []{ return { 1, 2 }; }; // error: deducing return type from \grammarterm{braced-init-list} +auto x1 = [](int i){ return i; }; // OK: return type is \tcode{int} +auto x2 = []{ return { 1, 2 }; }; // error: deducing return type from \grammarterm{braced-init-list} int j; -auto x3 = []()->auto&& { return j; }; // OK: return type is \tcode{int\&} +auto x3 = []()->auto&& { return j; }; // OK: return type is \tcode{int\&} \end{codeblock} \end{example} @@ -1602,8 +1602,8 @@ or if the lambda has a \grammarterm{template-parameter-list}. \begin{example} \begin{codeblock} -int i = [](int i, auto a) { return i; }(3, 4); // OK: a generic lambda -int j = [](T t, int i) { return i; }(3, 4); // OK: a generic lambda +int i = [](int i, auto a) { return i; }(3, 4); // OK: a generic lambda +int j = [](T t, int i) { return i; }(3, 4); // OK: a generic lambda \end{codeblock} \end{example} @@ -1660,10 +1660,10 @@ \begin{example} \begin{codeblock} auto glambda = [](auto a, auto&& b) { return a < b; }; -bool b = glambda(3, 3.14); // OK +bool b = glambda(3, 3.14); // OK auto vglambda = [](auto printer) { - return [=](auto&& ... ts) { // OK: \tcode{ts} is a function parameter pack + return [=](auto&& ... ts) { // OK: \tcode{ts} is a function parameter pack printer(std::forward(ts)...); return [=]() { @@ -1673,8 +1673,8 @@ }; auto p = vglambda( [](auto v1, auto v2, auto v3) { std::cout << v1 << v2 << v3; } ); -auto q = p(1, 'a', 3.14); // OK: outputs \tcode{1a3.14} -q(); // OK: outputs \tcode{1a3.14} +auto q = p(1, 'a', 3.14); // OK: outputs \tcode{1a3.14} +q(); // OK: outputs \tcode{1a3.14} \end{codeblock} \end{example} @@ -2588,7 +2588,7 @@ \begin{codeblock} template concept C = requires { - new int[-(int)sizeof(T)]; // ill-formed, no diagnostic required + new int[-(int)sizeof(T)]; // ill-formed, no diagnostic required }; \end{codeblock} \end{example} @@ -2613,7 +2613,7 @@ \begin{codeblock} template concept C = requires (T a, T b) { - a + b; // \tcode{C} is \tcode{true} if \tcode{a + b} is a valid expression + a + b; // \tcode{C} is \tcode{true} if \tcode{a + b} is a valid expression }; \end{codeblock} \end{example} @@ -2792,8 +2792,8 @@ \begin{example} \begin{codeblock} template concept C = requires (T a) { - requires sizeof(a) == 4; // OK - requires a == 0; // error: evaluation of a constraint variable + requires sizeof(a) == 4; // OK + requires a == 0; // error: evaluation of a constraint variable } \end{codeblock} \end{example} @@ -3018,7 +3018,7 @@ void f() { std::string s = "but I have heard it works even if you don't believe in it"; s.replace(0, 4, "").replace(s.find("even"), 4, "only").replace(s.find(" don't"), 6, ""); - assert(s == "I have heard it works only if you believe in it"); // OK + assert(s == "I have heard it works only if you believe in it"); // OK } \end{codeblock} \end{example} @@ -3992,12 +3992,13 @@ of a \tcode{const_cast} refers to the original entity. \begin{example} \begin{codeblock} -typedef int *A[3]; // array of 3 pointer to \tcode{int} -typedef const int *const CA[3]; // array of 3 const pointer to \tcode{const int} +typedef int *A[3]; // array of 3 pointer to \tcode{int} +typedef const int *const CA[3]; // array of 3 const pointer to \tcode{const int} -CA &&r = A{}; // OK, reference binds to temporary array object after qualification conversion to type \tcode{CA} -A &&r1 = const_cast(CA{}); // error: temporary array decayed to pointer -A &&r2 = const_cast(CA{}); // OK +CA &&r = A{}; // OK, reference binds to temporary array object + // after qualification conversion to type \tcode{CA} +A &&r1 = const_cast(CA{}); // error: temporary array decayed to pointer +A &&r2 = const_cast(CA{}); // OK \end{codeblock} \end{example} @@ -6606,7 +6607,7 @@ completely handle the exception itself, can be written like this: \begin{codeblock} try { - // ... + // ... } catch (...) { // catch all exceptions // respond (partially) to exception throw; // pass the exception to some other handler @@ -6737,11 +6738,11 @@ \begin{example} \begin{codeblock} complex z; -z = { 1,2 }; // meaning \tcode{z.operator=(\{1,2\})} -z += { 1, 2 }; // meaning \tcode{z.operator+=(\{1,2\})} +z = { 1,2 }; // meaning \tcode{z.operator=(\{1,2\})} +z += { 1, 2 }; // meaning \tcode{z.operator+=(\{1,2\})} int a, b; -a = b = { 1 }; // meaning \tcode{a=b=1;} -a = { 1 } = b; // syntax error +a = b = { 1 }; // meaning \tcode{a=b=1;} +a = { 1 } = b; // syntax error \end{codeblock} \end{example} @@ -6928,8 +6929,8 @@ void g() { const int n = 0; [=] { - constexpr int i = n; // OK, \tcode{n} is not odr-used here - constexpr int j = *&n; // ill-formed, \tcode{\&n} would be an odr-use of \tcode{n} + constexpr int i = n; // OK, \tcode{n} is not odr-used here + constexpr int j = *&n; // ill-formed, \tcode{\&n} would be an odr-use of \tcode{n} }; } \end{codeblock} @@ -7069,8 +7070,8 @@ }; template struct X { }; constexpr A a = alignof(int); -alignas(a) int n; // error: ambiguous conversion -struct B { int n : a; }; // error: ambiguous conversion +alignas(a) int n; // error: ambiguous conversion +struct B { int n : a; }; // error: ambiguous conversion \end{codeblock} \end{example} @@ -7166,8 +7167,8 @@ \begin{codeblock} bool f() { - char array[1 + int(1 + 0.2 - 0.1 - 0.1)]; // Must be evaluated during translation - int size = 1 + int(1 + 0.2 - 0.1 - 0.1); // May be evaluated at runtime + char array[1 + int(1 + 0.2 - 0.1 - 0.1)]; // Must be evaluated during translation + int size = 1 + int(1 + 0.2 - 0.1 - 0.1); // May be evaluated at runtime return sizeof(array) == size; } \end{codeblock} From 44ea29778d15cd5d9f2b5c706c6b3f4338548ec2 Mon Sep 17 00:00:00 2001 From: Casey Carter Date: Tue, 25 Jun 2019 06:04:14 -0700 Subject: [PATCH 003/312] [range.filter.sentinel] Correct typo in constructor Effects (#2937) --- source/ranges.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ranges.tex b/source/ranges.tex index b6c81d768d..5872a5dac8 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -2838,7 +2838,7 @@ \begin{itemdescr} \pnum -\effects Initializes \tcode{end_} with \tcode{ranges::end(parent)}. +\effects Initializes \tcode{end_} with \tcode{ranges::end(parent.base_)}. \end{itemdescr} \indexlibrary{\idxcode{base}!\idxcode{filter_view::sentinel}}% From 97b615a5a6ab0598b624ee05402c531d0421cff6 Mon Sep 17 00:00:00 2001 From: Casey Carter Date: Tue, 25 Jun 2019 06:09:55 -0700 Subject: [PATCH 004/312] [iterator.synopsis] Copy constraint for iterator_traits from [iterator.traits]/5 (#2943) --- source/iterators.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/iterators.tex b/source/iterators.tex index 9d7ab18636..a1e55fe57d 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -57,7 +57,7 @@ // \ref{iterator.traits}, iterator traits template struct iterator_traits; - template struct iterator_traits; + template requires is_object_v struct iterator_traits; template<@\placeholder{dereferenceable}@ T> using iter_reference_t = decltype(*declval()); From 2227673fc0802b7f8722cfdb154a860c319eb673 Mon Sep 17 00:00:00 2001 From: Eelis Date: Sun, 30 Jun 2019 00:34:19 +0200 Subject: [PATCH 005/312] [time] Add missing \tcode for a couple of "Returns:" clauses. (#2949) --- source/time.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/time.tex b/source/time.tex index 4bcdba97b2..9670880241 100644 --- a/source/time.tex +++ b/source/time.tex @@ -2733,7 +2733,7 @@ prior to assigning that difference to \tcode{tp}. \pnum -\returns is. +\returns \tcode{is}. \end{itemdescr} \rSec2[time.clock.utc]{Class \tcode{utc_clock}} @@ -3085,7 +3085,7 @@ \end{codeblock} \pnum -\returns os. +\returns \tcode{os}. \pnum \begin{example} @@ -3272,7 +3272,7 @@ \end{codeblock} \pnum -\returns os. +\returns \tcode{os}. \pnum \begin{example} From da7eac5e621b5fab12c0b1992100c4bfd983ed8e Mon Sep 17 00:00:00 2001 From: Saar Raz Date: Mon, 1 Jul 2019 22:46:37 +0300 Subject: [PATCH 006/312] [Concepts] Remove qualified-concept-name reference Update 'qualified-concept-name' (the previous incarnation of 'type-constraint') reference to 'type-constraint' in [temp.over.link]p6. --- source/templates.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/templates.tex b/source/templates.tex index bf11adf624..e2a33e4120 100644 --- a/source/templates.tex +++ b/source/templates.tex @@ -3586,11 +3586,11 @@ equivalent types, \item if they declare template template parameters, their template parameters are equivalent, and -\item if either is declared with a \grammarterm{qualified-concept-name}, -they both are, and the \grammarterm{qualified-concept-name}{s} are +\item if either is declared with a \grammarterm{type-constraint}, +they both are, and the \grammarterm{type-constraint}{s} are equivalent. \end{itemize} -When determining whether types or \grammarterm{qualified-concept-name}{s} +When determining whether types or \grammarterm{type-constraint}{s} are equivalent, the rules above are used to compare expressions involving template parameters. Two \grammarterm{template-head}{s} are From f54f306c3b9fad27e70766963840e3df14f20b28 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Thu, 4 Jul 2019 15:34:38 +0200 Subject: [PATCH 007/312] [func.bind] Remove bogus 'shall's. (#2955) --- source/utilities.tex | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 749006ed1f..977e5b5b39 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -15345,11 +15345,11 @@ uses \tcode{is_bind_expression} to detect subexpressions. \pnum -Instantiations of the \tcode{is_bind_expression} template shall meet +Specializations of the \tcode{is_bind_expression} template shall meet the \oldconcept{UnaryTypeTrait} requirements\iref{meta.rqmts}. The implementation -shall provide a definition that has a base characteristic of +provides a definition that has a base characteristic of \tcode{true_type} if \tcode{T} is a type returned from \tcode{bind}, -otherwise it shall have a base characteristic of \tcode{false_type}. +otherwise it has a base characteristic of \tcode{false_type}. A program may specialize this template for a program-defined type \tcode{T} to have a base characteristic of \tcode{true_type} to indicate that \tcode{T} should be treated as a subexpression in a \tcode{bind} call. @@ -15369,11 +15369,11 @@ \tcode{is_placeholder} to detect placeholders. \pnum -Instantiations of the \tcode{is_placeholder} template shall meet +Specializations of the \tcode{is_placeholder} template shall meet the \oldconcept{UnaryTypeTrait} requirements\iref{meta.rqmts}. The implementation -shall provide a definition that has the base characteristic of +provides a definition that has the base characteristic of \tcode{integral_constant} if \tcode{T} is the type of -\tcode{std::placeholders::_\placeholder{J}}, otherwise it shall have a +\tcode{std::placeholders::_\placeholder{J}}, otherwise it has a base characteristic of \tcode{integral_constant}. A program may specialize this template for a program-defined type \tcode{T} to have a base characteristic of \tcode{integral_constant} @@ -15418,14 +15418,14 @@ \pnum\returns An argument forwarding call wrapper \tcode{g}\iref{func.require}. -The effect of \tcode{g($\tcode{u}_1$, $\tcode{u}_2$, $\dotsc$, $\tcode{u}_M$)} shall -be +The effect of \tcode{g($\tcode{u}_1$, $\tcode{u}_2$, $\dotsc$, $\tcode{u}_M$)} +is \begin{codeblock} @\placeholdernc{INVOKE}@(fd, std::forward<@$\tcode{V}_1$@>(@$\tcode{v}_1$@), std::forward<@$\tcode{V}_2$@>(@$\tcode{v}_2$@), @$\dotsc$@, std::forward<@$\tcode{V}_N$@>(@$\tcode{v}_N$@)) \end{codeblock} where the values and types of the bound arguments $\tcode{v}_1$, $\tcode{v}_2$, $\dotsc$, $\tcode{v}_N$ are determined as specified below. -The copy constructor and move constructor of the argument forwarding call wrapper shall throw an +The copy constructor and move constructor of the argument forwarding call wrapper throw an exception if and only if the corresponding constructor of \tcode{FD} or of any of the types $\tcode{TD}_i$ throws an exception. @@ -15434,9 +15434,9 @@ \tcode{fd} or of one of the values $\tcode{td}_i$ throws an exception. \pnum -\remarks The return type shall meet the \oldconcept{MoveConstructible} requirements. If all +\remarks The return type meets the \oldconcept{MoveConstructible} requirements. If all of \tcode{FD} and $\tcode{TD}_i$ meet the \oldconcept{CopyConstructible} requirements, then the -return type shall meet the \oldconcept{CopyConstructible} requirements. \begin{note} This implies +return type meets the \oldconcept{CopyConstructible} requirements. \begin{note} This implies that all of \tcode{FD} and $\tcode{TD}_i$ are \oldconcept{MoveConst\-ruct\-ible}. \end{note} \end{itemdescr} @@ -15462,13 +15462,13 @@ \returns An argument forwarding call wrapper \tcode{g}\iref{func.require}. The effect of -\tcode{g($\tcode{u}_1$, $\tcode{u}_2$, $\dotsc$, $\tcode{u}_M$)} shall be +\tcode{g($\tcode{u}_1$, $\tcode{u}_2$, $\dotsc$, $\tcode{u}_M$)} is \begin{codeblock} @\placeholdernc{INVOKE}@(fd, std::forward<@$\tcode{V}_1$@>(@$\tcode{v}_1$@), std::forward<@$\tcode{V}_2$@>(@$\tcode{v}_2$@), @$\dotsc$@, std::forward<@$\tcode{V}_N$@>(@$\tcode{v}_N$@)) \end{codeblock} where the values and types of the bound arguments $\tcode{v}_1$, $\tcode{v}_2$, $\dotsc$, $\tcode{v}_N$ are determined as specified below. -The copy constructor and move constructor of the argument forwarding call wrapper shall throw an +The copy constructor and move constructor of the argument forwarding call wrapper throw an exception if and only if the corresponding constructor of \tcode{FD} or of any of the types $\tcode{TD}_i$ throws an exception. @@ -15477,9 +15477,9 @@ \tcode{fd} or of one of the values $\tcode{td}_i$ throws an exception. \pnum -\remarks The return type shall meet the \oldconcept{MoveConstructible} requirements. If all +\remarks The return type meets the \oldconcept{MoveConstructible} requirements. If all of \tcode{FD} and $\tcode{TD}_i$ meet the \oldconcept{CopyConstructible} requirements, then the -return type shall meet the \oldconcept{CopyConstructible} requirements. \begin{note} This implies +return type meets the \oldconcept{CopyConstructible} requirements. \begin{note} This implies that all of \tcode{FD} and $\tcode{TD}_i$ are \oldconcept{MoveConst\-ruct\-ible}. \end{note} \end{itemdescr} From 72cc844ef44ae47aebb1ad346146138d3279be9e Mon Sep 17 00:00:00 2001 From: Eelis Date: Fri, 5 Jul 2019 16:16:58 +0200 Subject: [PATCH 008/312] [expr.reinterpret.cast] Properly capitalize full-sentence bullets. (#2956) --- source/expressions.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index 74b38d3507..53a4fcf5d9 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -3934,11 +3934,11 @@ conversion is unspecified, except in the following cases: \begin{itemize} -\item converting a prvalue of type ``pointer to member function'' to a +\item Converting a prvalue of type ``pointer to member function'' to a different pointer-to-member-function type and back to its original type yields the original pointer-to-member value. -\item converting a prvalue of type ``pointer to data member of \tcode{X} +\item Converting a prvalue of type ``pointer to data member of \tcode{X} of type \tcode{T1}'' to the type ``pointer to data member of \tcode{Y} of type \tcode{T2}'' (where the alignment requirements of \tcode{T2} are no stricter than those of \tcode{T1}) and back to its original type From c635711cdd81346ad41c7861adb8035176fa236f Mon Sep 17 00:00:00 2001 From: Eelis Date: Fri, 5 Jul 2019 23:55:22 +0200 Subject: [PATCH 009/312] [temp.constr.constr] Add missing period at end of sentence. (#2957) --- source/templates.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/templates.tex b/source/templates.tex index e2a33e4120..2fd11a598a 100644 --- a/source/templates.tex +++ b/source/templates.tex @@ -1497,7 +1497,7 @@ \begin{itemize} \item conjunctions\iref{temp.constr.op}, \item disjunctions\iref{temp.constr.op}, and -\item atomic constraints\iref{temp.constr.atomic} +\item atomic constraints\iref{temp.constr.atomic}. \end{itemize} \pnum From 4f9942cafadc17fb902610b4c67afb6fcf81ff64 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Sun, 7 Jul 2019 19:38:20 +0200 Subject: [PATCH 010/312] [dcl.asm] Rename grammar term 'asm-definition' to 'asm-declaration' --- source/declarations.tex | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index 8e45d5243f..2647e2f350 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -35,7 +35,7 @@ \begin{bnf} \nontermdef{block-declaration}\br simple-declaration\br - asm-definition\br + asm-declaration\br namespace-alias-definition\br using-declaration\br using-directive\br @@ -78,7 +78,7 @@ \end{bnf} \begin{note} -\grammarterm{asm-definition}{s} are described in~\ref{dcl.asm}, and +\grammarterm{asm-declaration}{s} are described in~\ref{dcl.asm}, and \grammarterm{linkage-specification}{s} are described in~\ref{dcl.link}; \grammarterm{function-definition}{s} are described in~\ref{dcl.fct.def} and \grammarterm{template-declaration}{s} and @@ -823,7 +823,7 @@ \item its \grammarterm{function-body} shall not enclose\iref{stmt.stmt} \begin{itemize} -\item an \grammarterm{asm-definition}, +\item an \grammarterm{asm-declaration}, \item a \tcode{goto} statement, \item an identifier label\iref{stmt.label}, \item a definition of a variable @@ -8015,14 +8015,14 @@ An \tcode{asm} declaration has the form \begin{bnf} -\nontermdef{asm-definition}\br +\nontermdef{asm-declaration}\br \opt{attribute-specifier-seq} \keyword{asm} \terminal{(} string-literal \terminal{)} \terminal{;} \end{bnf} The \tcode{asm} declaration is conditionally-supported; its meaning is \impldef{meaning of \tcode{asm} declaration}. The optional \grammarterm{attribute-specifier-seq} in -an \grammarterm{asm-definition} appertains to the \tcode{asm} declaration. +an \grammarterm{asm-declaration} appertains to the \tcode{asm} declaration. \begin{note} Typically it is used to pass information through the implementation to an assembler. From 51c5b01217799fdfa754179c20af888ec8c1889d Mon Sep 17 00:00:00 2001 From: Casey Carter Date: Wed, 10 Jul 2019 00:40:19 -0700 Subject: [PATCH 011/312] [temp.constr.order] Remove extraneous "the". (#2964) --- source/templates.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/templates.tex b/source/templates.tex index 2fd11a598a..09f9469d30 100644 --- a/source/templates.tex +++ b/source/templates.tex @@ -1857,7 +1857,7 @@ an atomic constraint $Q_{jb}$ in $Q_j$ such that $P_{ia}$ subsumes $Q_{jb}$, and \item an atomic constraint $A$ subsumes another atomic constraint -$B$ if and only if the $A$ and $B$ are identical using the +$B$ if and only if $A$ and $B$ are identical using the rules described in \ref{temp.constr.atomic}. \end{itemize} % From 67db9422b6bc58f5399c7c019ec5ede28d8ac4f5 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 28 Jun 2019 17:01:54 +0200 Subject: [PATCH 012/312] [expr.prim.req] Fix cross-reference for substituting into constraints. --- source/expressions.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/expressions.tex b/source/expressions.tex index 53a4fcf5d9..b8401275c6 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -2774,7 +2774,7 @@ by the substituted template arguments, if any. Substitution of template arguments into a \grammarterm{nested-requirement} does not result in substitution into the \grammarterm{constraint-expression} -other than as specified in \ref{temp.constr.decl}. +other than as specified in \ref{temp.constr.constr}. \begin{example} \begin{codeblock} template concept C = sizeof(U) == 1; From 53982ac8bcf713ab5dd127a4d26d90b29b4696e9 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Fri, 19 Jul 2019 15:54:46 -0700 Subject: [PATCH 013/312] CWG682 Missing description of lookup of template aliases --- source/basic.tex | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/basic.tex b/source/basic.tex index dac414469e..b25f7022e8 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -2399,7 +2399,8 @@ looked up in the class of the object expression\iref{class.member.lookup}. If the identifier is not found, it is then looked up in the context of the entire -\grammarterm{postfix-expression} and shall name a class template. +\grammarterm{postfix-expression} and shall name a template +whose specializations are types. \pnum If the \grammarterm{id-expression} in a class member From e792c186c27188cd0855d60ed7a8fc6e011cc25a Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Fri, 19 Jul 2019 16:34:08 -0700 Subject: [PATCH 014/312] CWG2207 Alignment of allocation function return value [basic.stc.dynamic.allocation] Removed superflous "then"s from bullets. --- source/basic.tex | 30 ++++++++++++++++++++++-------- source/support.tex | 18 ++++-------------- 2 files changed, 26 insertions(+), 22 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index b25f7022e8..2fbc29f1ef 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -3621,14 +3621,7 @@ The order, contiguity, and initial value of storage allocated by successive calls to an allocation function are unspecified. -For an allocation function other than -a reserved placement allocation function\iref{new.delete.placement}, -the pointer returned is -suitably aligned so that it can be converted to a pointer to any -suitable complete object type\iref{new.delete.single} -and then used to access the object or array in the -storage allocated (until the storage is explicitly deallocated by a call -to a corresponding deallocation function). Even if the size of the space +Even if the size of the space requested is zero, the request can fail. If the request succeeds, the value returned by a replaceable allocation function is a non-null pointer value\iref{conv.ptr} @@ -3646,6 +3639,27 @@ substantially the same. \Cpp{} differs from C in requiring a zero request to return a non-null pointer.} +\pnum +For an allocation function other than +a reserved placement allocation function\iref{new.delete.placement}, +the pointer returned on a successful call +shall represent the address of storage that is aligned as follows: +\begin{itemize} +\item + If the allocation function takes an argument + of type \tcode{std::align_val_t}, + the storage will have the alignment specified + by the value of this argument. +\item + Otherwise, if the allocation function is named \tcode{operator new[]}, + the storage is aligned for any object that + does not have new-extended alignment\iref{basic.align} and + is no larger than the requested size. +\item + Otherwise, the storage is aligned for any object that + does not have new-extended alignment and is of the requested size. +\end{itemize} + \pnum An allocation function that fails to allocate storage can invoke the currently installed new-handler function\iref{new.handler}, if any. diff --git a/source/support.tex b/source/support.tex index dc2c9ba54f..dcb566345d 100644 --- a/source/support.tex +++ b/source/support.tex @@ -2116,13 +2116,8 @@ \grammarterm{new-expression}\iref{expr.new} to allocate \tcode{size} bytes of storage. -The second form is called for a type with new-extended alignment, -and allocates storage -with the specified alignment. -The first form is called otherwise, -and allocates storage -suitably aligned to represent any object of that size -provided the object's type does not have new-extended alignment. +The second form is called for a type with new-extended alignment, and +the first form is called otherwise. \pnum \replaceable @@ -2387,13 +2382,8 @@ \grammarterm{new-expression}\iref{expr.new} to allocate \tcode{size} bytes of storage. -The second form is called for a type with new-extended alignment, -and allocates storage -with the specified alignment. -The first form is called otherwise, -and allocates storage -suitably aligned to represent any array object of that size or smaller, -provided the object's type does not have new-extended alignment.% +The second form is called for a type with new-extended alignment, and +the first form is called otherwise.% \footnote{It is not the direct responsibility of \tcode{operator new[]} or From 02f1104e765e9adfcc7bbc449428a66d7213cc1a Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Fri, 19 Jul 2019 17:42:15 -0700 Subject: [PATCH 015/312] CWG2300 Lambdas in multiple definitions [basic.def.odr] Replaced , with ; in bullets for consistency. --- source/basic.tex | 82 +++++++++++++++++++++++++++++++++++++----------- 1 file changed, 63 insertions(+), 19 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index 2fbc29f1ef..cb494c9465 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -562,11 +562,13 @@ an entity named \tcode{D} defined in more than one translation unit, then \begin{itemize} -\item each definition of \tcode{D} shall consist of the same sequence of -tokens; and +\item each definition of \tcode{D} shall consist of +the same sequence of tokens, +for which the definition of a closure type +is considered to consist of the sequence of tokens of +the corresponding \grammarterm{lambda-expression}; and \item in each definition of \tcode{D}, corresponding names, looked up -according to~\ref{basic.lookup}, shall refer to an entity defined within -the definition of \tcode{D}, or shall refer to the same entity, after +according to~\ref{basic.lookup}, shall refer to the same entity, after overload resolution\iref{over.match} and after matching of partial template specialization\iref{temp.over}, except that a name can refer to \begin{itemize} @@ -586,22 +588,27 @@ \end{itemize} and +\item in each definition of \tcode{D}, except within +the default arguments and default template arguments of \tcode{D}, +corresponding \grammarterm{lambda-expression}{s} shall have +the same closure type (see below); and + \item in each definition of \tcode{D}, corresponding entities shall have the same language linkage; and \item in each definition of \tcode{D}, the overloaded operators referred to, the implicit calls to conversion functions, constructors, operator new functions and operator delete functions, shall refer to the same -function, or to a function defined within the definition of \tcode{D}; -and +function; and -\item in each definition of \tcode{D}, a default argument used by an -(implicit or explicit) function call is treated as if its token sequence -were present in the definition of \tcode{D}; that is, the default -argument is subject to the requirements described in this paragraph (and, if -the default argument has subexpressions with default arguments, this -requirement applies recursively)\footnote{\ref{dcl.fct.default} -describes how default argument names are looked up.}; and +\item in each definition of \tcode{D}, +a default argument used by an (implicit or explicit) function call or +a default template argument used by an (implicit or explicit) +\grammarterm{template-id} or \grammarterm{simple-template-id} +is treated as if its token sequence +were present in the definition of \tcode{D}; +that is, the default argument or default template argument +is subject to the requirements described in this paragraph (recursively); and \item if \tcode{D} invokes a function with a precondition, or is a function @@ -649,20 +656,57 @@ translation unit, then the preceding requirements shall apply both to names from the template's enclosing scope used in the template definition\iref{temp.nondep}, and also to dependent names at -the point of instantiation\iref{temp.dep}. If the definitions of -\tcode{D} satisfy all these requirements, then the behavior is -as if there were a single definition of \tcode{D}. +the point of instantiation\iref{temp.dep}. +These requirements also apply to corresponding entities +defined within each definition of \tcode{D} +(including the closure types of \grammarterm{lambda-expression}{s}, +but excluding entities defined within default arguments or +defualt template arguments of either \tcode{D} or +an entity not defined within \tcode{D}). +For each such entity and for \tcode{D} itself, +the behavior is as if there is a single entity with a single definition, +including in the application of these requirements to other entities. \begin{note} The entity is still declared in multiple translation units, and \ref{basic.link} still applies to these declarations. In particular, \grammarterm{lambda-expression}{s}\iref{expr.prim.lambda} appearing in the type of \tcode{D} may result -in the different declarations having distinct types. +in the different declarations having distinct types, and +\grammarterm{lambda-expression}{s} appearing in a default argument of \tcode{D} +may still denote different types in different translation units. \end{note} If the definitions of -\tcode{D} do not satisfy these requirements, then the behavior is -undefined.% +\tcode{D} do not satisfy these requirements, then +the program is ill-formed, no diagnostic required.% \indextext{one-definition rule|)} +\begin{example} +\begin{codeblock} +inline void f(bool cond, void (*p)()) { + if (cond) f(false, []{}); +} +inline void g(bool cond, void (*p)() = []{}) { + if (cond) g(false); +} +struct X { + void h(bool cond, void (*p)() = []{}) { + if (cond) h(false); + } +} +\end{codeblock} + +If the definition of \tcode{f} appears in multiple translation units, +the behavior of the program is as if +there is only one definition of \tcode{f}. +If the definition of \tcode{g} appears in multiple translation units, +the program is ill-formed (no diagnostic required) because +each such definition uses a default argument that +refers to a distinct \grammarterm{lambda-expression} closure type. +The definition of \tcode{X} can appear +in multiple translation units of a valid program; +the \grammarterm{lambda-expression}{s} defined within +the default argument of \tcode{X::h} within the definition of \tcode{X} +denote the same closure type in each translation unit. +\end{example} \rSec1[basic.scope]{Scope}% \indextext{scope|(} From 12b3f88ec167ee026be0d422357ad97ca1b49492 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 09:54:11 -0700 Subject: [PATCH 016/312] CWG2366 Can default initialization be constant initialization? --- source/basic.tex | 2 +- source/declarations.tex | 3 ++- source/expressions.tex | 35 +++++++++++++++++++++-------------- 3 files changed, 24 insertions(+), 16 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index cb494c9465..795e154e9b 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -6128,7 +6128,7 @@ \indextext{initialization!constant}% \defnx{Constant initialization}{constant initialization} is performed if a variable or temporary object with static or thread storage duration -is initialized by a constant initializer\iref{expr.const} for the entity. +is constant-initialized\iref{expr.const}. \indextext{initialization!zero-initialization}% If constant initialization is not performed, a variable with static storage duration\iref{basic.stc.static} or thread storage diff --git a/source/declarations.tex b/source/declarations.tex index 2647e2f350..ac27bc5bc9 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -923,7 +923,8 @@ if no argument values exist such that an invocation of the function or constructor could be an evaluated subexpression of a core constant expression\iref{expr.const}, or, -for a constructor, a constant initializer for some object\iref{basic.start.static}, +for a constructor, an evaluated subexpression of +the initialization full-expression of some constant-initialized object\iref{basic.start.static}, the program is ill-formed, no diagnostic required. \begin{example} \begin{codeblock} diff --git a/source/expressions.tex b/source/expressions.tex index b8401275c6..1b5c229b2f 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -6813,26 +6813,33 @@ \end{bnf} \pnum -A \defn{constant initializer} for a variable or temporary object \tcode{o} is -an initializer for which interpreting its full-expression -as a \grammarterm{constant-expression} results in a constant expression, -except that if \tcode{o} is an object, -such an initializer may also invoke constexpr constructors -for \tcode{o} and its subobjects -even if those objects are of non-literal class types. -\begin{note} -Such a class may have a non-trivial destructor. -Within this evaluation, -\tcode{std::is_constant_evaluated()}\iref{meta.const.eval} -returns \tcode{true}. +A variable or temporary object \tcode{o} is \defn{constant-initialized} if +\begin{itemize} +\item + either it has an initializer or + its default-initialization results in some initialization being performed, and +\item + its initialization full-expression is a constant expression + when interpreted as a \grammarterm{constant-expression}, + except that if \tcode{o} is an object, + the initialization full-expression + may also invoke constexpr constructors + for \tcode{o} and its subobjects + even if those objects are of non-literal class types. + \begin{note} + Such a class may have a non-trivial destructor. + Within this evaluation, + \tcode{std::is_constant_evaluated()}\iref{meta.const.eval} + returns \tcode{true}. \end{note} +\end{itemize} \pnum A variable is \defn{usable in constant expressions} after its initializing declaration is encountered if it is a constexpr variable, or -it is of reference type or of const-qualified integral or enumeration type, and -its initializer is a constant initializer. +it is a constant-initialized variable +of reference type or of const-qualified integral or enumeration type. \pnum An expression \tcode{e} is a \defnadj{core constant}{expression} From aad7a9b7737dd2f4afd39edeafadc50c027098f5 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 10:00:41 -0700 Subject: [PATCH 017/312] CWG2376 Class template argument deduction with array declarator --- source/declarations.tex | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/source/declarations.tex b/source/declarations.tex index ac27bc5bc9..fb8ef8cacf 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -1972,7 +1972,18 @@ appears as a \grammarterm{decl-specifier} in the \grammarterm{decl-specifier-seq} of an initializing declaration\iref{dcl.init} of a variable, -the placeholder is replaced by the return type +the declared type of the variable shall be \cv{}~\tcode{T}, +where \tcode{T} is the placeholder. +\begin{example} +\begin{codeblock} +template struct A { + A(T...) {} +}; +A x[29]{}; // error: no declarator operators allowed +const A& y{}; // error: no declarator operators allowed +\end{codeblock} +\end{example} +The placeholder is replaced by the return type of the function selected by overload resolution for class template deduction\iref{over.match.class.deduct}. If the \grammarterm{decl-specifier-seq} From 9b76db5f61dfc998fa914f6f50a7bd5bf11c800c Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Fri, 19 Jul 2019 17:55:01 -0700 Subject: [PATCH 018/312] CWG2390 Is the argument of __has_cpp_attribute macro-expanded? --- source/preprocessor.tex | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/source/preprocessor.tex b/source/preprocessor.tex index 1f2c35d974..69734b407d 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -276,7 +276,8 @@ matching the form of an \grammarterm{integer-literal} if the implementation supports an attribute with the name specified by interpreting -the \grammarterm{pp-tokens} as an \grammarterm{attribute-token}, +the \grammarterm{pp-tokens}, after macro expansion, +as an \grammarterm{attribute-token}, and by \tcode{0} otherwise. The program is ill-formed if the \grammarterm{pp-tokens} do not match the form of an \grammarterm{attribute-token}. @@ -356,8 +357,10 @@ \pnum After all replacements due to macro expansion and -evaluations of \grammarterm{defined-macro-expression}{s} and -\grammarterm{has-include-expression}{s} +evaluations of +\grammarterm{defined-macro-expression}s, +\grammarterm{has-include-expression}s, and +\grammarterm{has-attribute-expression}s have been performed, all remaining identifiers and keywords, except for From 9824fd75d5824d0cee8d39166e25574c30338174 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 10:16:01 -0700 Subject: [PATCH 019/312] CWG2400 Constexpr virtual functions and temporary objects --- source/expressions.tex | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/source/expressions.tex b/source/expressions.tex index 1b5c229b2f..77e4bc3e43 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -6870,6 +6870,14 @@ for a constexpr function or constexpr constructor\iref{dcl.constexpr}; +\item +an invocation of a virtual function\iref{class.virtual} +for an object unless + \begin{itemize} + \item the object is usable in constant expressions or + \item its lifetime began within the evaluation of \tcode{e}; + \end{itemize} + \item an expression that would exceed the implementation-defined limits (see \ref{implimits}); From bb641cba40211374d8b2dd3472f42274de662761 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 10:26:15 -0700 Subject: [PATCH 020/312] CWG2404 [[no_unique_address]] and allocation order --- source/classes.tex | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/source/classes.tex b/source/classes.tex index 0b9e26bccf..82ef9e827d 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -713,19 +713,22 @@ \end{example} \pnum +\begin{note} \indextext{layout!class object}% Non-static data members of a (non-union) class -with the same access control\iref{class.access} +with the same access control\iref{class.access} and +non-zero size\iref{intro.object} are allocated so that later members have higher addresses within a class object. \indextext{allocation!unspecified}% The order of allocation of non-static data members with different access control -is unspecified\iref{class.access}. +is unspecified. Implementation alignment requirements might cause two adjacent members not to be allocated immediately after each other; so might requirements for space for managing virtual functions\iref{class.virtual} and virtual base classes\iref{class.mi}. +\end{note} \pnum If \tcode{T} is the name of a class, then each of the following shall From a9b23328d115333c07dd21598615a00171a55af5 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 10:34:27 -0700 Subject: [PATCH 021/312] CWG2406 [[fallthrough]] attribute and iteration statements --- source/declarations.tex | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/source/declarations.tex b/source/declarations.tex index fb8ef8cacf..0ef1eb66a4 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -9074,7 +9074,10 @@ an enclosing \tcode{switch} statement\iref{stmt.switch}. The next statement that would be executed after a fallthrough statement shall be a labeled statement whose label is a case label or -default label for the same \tcode{switch} statement. +default label for the same \tcode{switch} statement and, +if the fallthrough statement is contained in an iteration statement, +the next statement shall be part of the same execution of +the substatement of the innermost enclosing iteration statement. The program is ill-formed if there is no such statement. \pnum @@ -9098,6 +9101,18 @@ g(); [[fallthrough]]; case 3: // warning on fallthrough discouraged + do { + [[fallthrough]]; // error: next statement is not part of the same substatement execution + } while (false); + case 6: + do { + [[fallthrough]]; // error: next statement is not part of the same substatement execution + } while (n--); + case 7: + while (false) { + [[fallthrough]]; // error: next statement is not part of the same substatement execution + } + case 5: h(); case 4: // implementation may warn on fallthrough i(); From afa2e8696ab6d8312deb97d6efe6da2d055bff3f Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 10:49:27 -0700 Subject: [PATCH 022/312] =?UTF-8?q?CWG2418=20Missing=20cases=20in=20defini?= =?UTF-8?q?tion=20of=20=E2=80=9Cusable=20in=20constant=20expressions?= =?UTF-8?q?=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Note that this wording changed in this issue was also changed by CWG2366. --- source/expressions.tex | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index 77e4bc3e43..a472c33226 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -6835,11 +6835,20 @@ \end{itemize} \pnum -A variable is -\defn{usable in constant expressions} after +A variable is \defn{usable in constant expressions} after its initializing declaration is encountered if it is a constexpr variable, or it is a constant-initialized variable of reference type or of const-qualified integral or enumeration type. +An object or reference is \defn{usable in constant expressions} if it is +\begin{itemize} +\item a variable that is usable in constant expressions, or +\item a template parameter object\iref{temp.param}, or +\item a string literal object\iref{lex.string}, or +\item a non-mutable subobject or reference member of any of the above, or +\item a complete temporary object of + non-volatile const-qualified integral or enumeration type + that is initialized with a constant expression. +\end{itemize} \pnum An expression \tcode{e} is a \defnadj{core constant}{expression} From 9fdd8bcd69524fa1af3ed4cbff21c2f8240826f4 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 21 Jul 2019 15:27:07 +0200 Subject: [PATCH 023/312] P1161R3 Deprecate uses of the comma operator in subscripting expressions --- source/expressions.tex | 16 ++++++++++++++++ source/future.tex | 18 ++++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/source/expressions.tex b/source/expressions.tex index a472c33226..b985bbbc77 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -2862,6 +2862,14 @@ if that operand is an lvalue and an xvalue otherwise. The expression \tcode{E1} is sequenced before the expression \tcode{E2}. +\pnum +\begin{note} +A comma expression\iref{expr.comma} +appearing as the \grammarterm{expr-or-braced-init-list} +of a subscripting expression is deprecated; +see \ref{depr.comma.subscript}. +\end{note} + \pnum \begin{note} Despite its asymmetric appearance, subscripting is a commutative @@ -6793,6 +6801,14 @@ \tcode{5}. \end{example} +\pnum +\begin{note} +A comma expression +appearing as the \grammarterm{expr-or-braced-init-list} +of a subscripting expression\iref{expr.sub} is deprecated; +see \ref{depr.comma.subscript}. +\end{note} + \rSec1[expr.const]{Constant expressions}% \indextext{expression!constant} diff --git a/source/future.tex b/source/future.tex index 5c541d9da3..ba0b570eb3 100644 --- a/source/future.tex +++ b/source/future.tex @@ -54,6 +54,24 @@ \end{codeblock} \end{example} +\rSec1[depr.comma.subscript]{Comma operator in subscript expressions} + +\pnum +A comma expression\iref{expr.comma} +appearing as the \grammarterm{expr-or-braced-init-list} +of a subscripting expression\iref{expr.sub} is deprecated. +\begin{note} +A parenthesized comma expression is not deprecated. +\end{note} +\begin{example} +\begin{codeblock} +void f(int *a, int b, int c) { + a[b,c]; // deprecated + a[(b,c)]; // OK +} +\end{codeblock} +\end{example} + \rSec1[depr.array.comp]{Array comparisons} \pnum From 4e54a6077f82a64de84aa4ca09b7e85a4ec040ed Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 21 Jul 2019 15:35:55 +0200 Subject: [PATCH 024/312] P1331R2 Permitting trivial default initialization in constexpr contexts [expr.const] Add missing "an" before "indeterminate value". --- source/declarations.tex | 11 +++-------- source/expressions.tex | 4 ++++ source/preprocessor.tex | 2 +- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index 0ef1eb66a4..8a4dfa0066 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -828,8 +828,7 @@ \item an identifier label\iref{stmt.label}, \item a definition of a variable of non-literal type or -of static or thread storage duration or -for which no initialization is performed. +of static or thread storage duration. \end{itemize} \begin{note} A \grammarterm{function-body} that is \tcode{= delete} or \tcode{= default} @@ -853,8 +852,8 @@ return value; } constexpr int uninit() { - int a; // error: variable is uninitialized - return a; + struct { int a; } s; + return s.a; // error: uninitialized read of \tcode{s.a} } constexpr int prev(int x) { return --x; } // OK @@ -886,10 +885,6 @@ shall satisfy the requirements for a \grammarterm{function-body} of a constexpr function; -\item -every non-variant non-static data member and base class subobject -shall be initialized\iref{class.base.init}; - \item if the class is a union having variant members\iref{class.union}, exactly one of them shall be initialized; diff --git a/source/expressions.tex b/source/expressions.tex index b985bbbc77..fc579c8902 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -6935,6 +6935,10 @@ that is applied to a glvalue that refers to a non-active member of a union or a subobject thereof; +\item +an lvalue-to-rvalue conversion that is applied to +an object with an indeterminate value\iref{basic.indet}; + \item an invocation of an implicitly-defined copy/move constructor or copy/move assignment operator diff --git a/source/preprocessor.tex b/source/preprocessor.tex index 69734b407d..613c976942 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -1684,7 +1684,7 @@ \defnxname{cpp_capture_star_this} & \tcode{201603L} \\ \rowsep \defnxname{cpp_char8_t} & \tcode{201811L} \\ \rowsep \defnxname{cpp_conditional_explicit} & \tcode{201806L} \\ \rowsep -\defnxname{cpp_constexpr} & \tcode{201603L} \\ \rowsep +\defnxname{cpp_constexpr} & \tcode{201907L} \\ \rowsep \defnxname{cpp_coroutines} & \tcode{201902L} \\ \rowsep \defnxname{cpp_decltype} & \tcode{200707L} \\ \rowsep \defnxname{cpp_decltype_auto} & \tcode{201304L} \\ \rowsep From fb5cc1e883d3c308dca5c35c67fac7fff51ab64a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 21 Jul 2019 15:40:45 +0200 Subject: [PATCH 025/312] P0735R1 Interaction of memory_order_consume with release sequences --- source/basic.tex | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index 795e154e9b..1758d41fba 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -5562,10 +5562,8 @@ \begin{itemize} \item \placeholder{A} performs a release operation on an atomic object \placeholder{M}, and, in -another thread, \placeholder{B} performs a consume operation on \placeholder{M} and reads a -value written by any -\indextext{side effects}% -side effect in the release sequence headed by \placeholder{A}, or +another thread, \placeholder{B} performs a consume operation on \placeholder{M} and reads +the value written by \placeholder{A}, or \item for some evaluation \placeholder{X}, \placeholder{A} is dependency-ordered before \placeholder{X} and From 65aa0187690e32f20a270748cd7ea70bce9c72df Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 22 Jul 2019 02:16:08 +0200 Subject: [PATCH 026/312] P0848R3 Conditionally Trivial Special Member Functions --- source/basic.tex | 9 ++--- source/classes.tex | 83 ++++++++++++++++++++++++++++++----------- source/declarations.tex | 6 +++ source/expressions.tex | 4 +- source/templates.tex | 4 ++ 5 files changed, 78 insertions(+), 28 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index 1758d41fba..b0bb659584 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -4089,10 +4089,9 @@ \pnum When an object of class type \tcode{X} is passed to or returned from a function, -if each copy constructor, move constructor, and destructor of \tcode{X} -is either trivial or deleted, -and \tcode{X} -has at least one non-deleted copy or move constructor, +if \tcode{X} has at least one eligible copy or move constructor\iref{class.prop}, +each such constructor is trivial, +and the destructor of \tcode{X} is either trivial or deleted, implementations are permitted to create a temporary object to hold the function parameter or result object. @@ -4100,7 +4099,7 @@ from the function argument or return value, respectively, and the function's parameter or return object is initialized as if by -using the non-deleted trivial constructor to copy the temporary +using the eligible trivial constructor to copy the temporary (even if that constructor is inaccessible or would not be selected by overload resolution to perform a copy or move of the object). diff --git a/source/classes.tex b/source/classes.tex index 82ef9e827d..92988c5afd 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -142,23 +142,41 @@ \rSec1[class.prop]{Properties of classes} +\pnum +Two special member functions are of the same kind if: +\begin{itemize} +\item they are both default constructors, +\item they are both copy or move constructors +with the same first parameter type, or +\item they are both copy or move assignment operators +with the same first parameter type +and the same \grammarterm{cv-qualifier}s and \grammarterm{ref-qualifier}, if any. +\end{itemize} + +\pnum +An \defnadj{eligible}{special member function} is a special member function\iref{special} for which: +\begin{itemize} +\item the function is not deleted, +\item the associated constraints\iref{temp.constr}, if any, are satisfied, and +\item no special member function of the same kind is more constrained\iref{temp.constr.order}. +\end{itemize} + \pnum A \defnadj{trivially copyable}{class} is a class: \begin{itemize} -\item where each copy constructor, move constructor, copy assignment operator, -and move assignment operator~(\ref{class.copy.ctor}, \ref{class.copy.assign}) -is either deleted or trivial, -\item that has at least one non-deleted copy constructor, move constructor, -copy assignment operator, or move assignment operator, and +\item that has at least one eligible copy constructor, move constructor, +copy assignment operator, or +move assignment operator~(\ref{class.copy.ctor}, \ref{class.copy.assign}), +\item where each eligible copy constructor, move constructor, copy assignment operator, +and move assignment operator is trivial, and \item that has a trivial, non-deleted destructor\iref{class.dtor}. \end{itemize} \pnum A \defnadj{trivial}{class} is a class that is trivially copyable and -has one or more default constructors\iref{class.default.ctor}, -all of which are either trivial or deleted and -at least one of which is not deleted. +has one or more eligible default constructors\iref{class.default.ctor}, +all of which are trivial. \begin{note} In particular, a trivially copyable or trivial class does not have virtual functions or virtual base classes.\end{note} @@ -1147,10 +1165,10 @@ \indextext{constructor!move}% \indextext{assignment operator!copy}% \indextext{assignment operator!move}% -The default constructor\iref{class.default.ctor}, -copy constructor, move constructor\iref{class.copy.ctor}, -copy assignment operator, move assignment operator\iref{class.copy.assign}, -and destructor\iref{class.dtor} are +Default constructors\iref{class.default.ctor}, +copy constructors, move constructors\iref{class.copy.ctor}, +copy assignment operators, move assignment operators\iref{class.copy.assign}, +and prospective destructors\iref{class.dtor} are \term{special member functions}. \begin{note} The implementation will implicitly declare these member functions for some class types when the program does not explicitly declare them. @@ -2093,7 +2111,7 @@ \indextext{special member function|see{destructor}}% \pnum -In a declaration of a destructor, the \grammarterm{declarator} is a +In a declaration of a prospective destructor, the \grammarterm{declarator} is a function declarator\iref{dcl.fct} of the form \begin{ncbnf} @@ -2121,10 +2139,25 @@ same class as the \grammarterm{nested-name-specifier}. \end{itemize} -A destructor shall take no arguments\iref{dcl.fct}. +A prospective destructor shall take no arguments\iref{dcl.fct}. Each \grammarterm{decl-specifier} of the \grammarterm{decl-specifier-seq} -of a destructor declaration (if any) shall be \tcode{friend}, \tcode{inline}, or -\tcode{virtual}. +of a prospective destructor declaration (if any) +shall be \tcode{friend}, \tcode{inline}, or \tcode{virtual}. + +\pnum +At the end of the definition of a class, +overload resolution is performed +among the prospective destructors declared in that class +with an empty argument list +to select the \defn{destructor} for the class, +also known as the \defnadj{selected}{destructor}. +The program is ill-formed if overload resolution fails. +Destructor selection does not constitute +a reference to, +or odr-use\iref{basic.def.odr} of, +the selected destructor, +and in particular, +the selected destructor may be deleted\iref{dcl.fct.def.delete}. \pnum \indextext{restriction!destructor}% @@ -2155,11 +2188,18 @@ \indextext{generated destructor|see{destructor, default}}% \indextext{destructor!default}% If a class has no user-declared -destructor, a destructor is implicitly +prospective destructor, +a prospective destructor is implicitly declared as defaulted\iref{dcl.fct.def}. -An implicitly-declared destructor is an +An implicitly-declared prospective destructor is an inline public member of its class. +\pnum +An implicitly-declared prospective destructor for a class \tcode{X} will have the form +\begin{codeblock} +~X() +\end{codeblock} + \pnum A defaulted destructor for a class \tcode{X} is defined as deleted if: @@ -2241,11 +2281,12 @@ \pnum \indextext{destructor!virtual}% \indextext{destructor!pure virtual}% -A destructor can be declared +A prospective destructor can be declared \tcode{virtual}\iref{class.virtual} or pure -\tcode{virtual}\iref{class.abstract}; -if any objects of that class or any derived class are created in the program, +\tcode{virtual}\iref{class.abstract}. +If the destructor of a class is virtual and +any objects of that class or any derived class are created in the program, the destructor shall be defined. If a class has a base class with a virtual destructor, its destructor (whether user- or implicitly-declared) is virtual. diff --git a/source/declarations.tex b/source/declarations.tex index 8a4dfa0066..dc3e5cd658 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -6067,6 +6067,12 @@ for them~(\ref{class.ctor}, \ref{class.dtor}, \ref{class.copy.ctor}, \ref{class.copy.assign}), which might mean defining them as deleted. +A defaulted prospective destructor\iref{class.dtor} +that is not a destructor is defined as deleted. +A defaulted special member function +that is neither a prospective destructor nor +an eligible special member function\iref{class.prop} +is defined as deleted. A function is \defn{user-provided} if it is user-declared and not explicitly defaulted or deleted on its first declaration. A user-provided explicitly-defaulted function diff --git a/source/expressions.tex b/source/expressions.tex index fc579c8902..9ff9a21064 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -3111,8 +3111,8 @@ After these conversions, if the argument does not have arithmetic, enumeration, pointer, pointer-to-member, or class type, the program is ill-formed. Passing a potentially-evaluated -argument of class type\iref{class} having a non-trivial -copy constructor, a non-trivial move constructor, +argument of class type\iref{class} having an eligible\iref{class.prop} non-trivial +copy constructor, an eligible non-trivial move constructor, or a non-trivial destructor, with no corresponding parameter, is conditionally-supported with \impldef{passing argument of class type through ellipsis} semantics. If the argument has diff --git a/source/templates.tex b/source/templates.tex index 09f9469d30..03892adae5 100644 --- a/source/templates.tex +++ b/source/templates.tex @@ -6426,6 +6426,10 @@ and is an explicit instantiation definition of only those members that have been defined at the point of instantiation. +\pnum +An explicit instantiation of a prospective destructor +shall name the selected destructor of the class. + \pnum Except for inline functions and variables, declarations with types deduced from their initializer or return value\iref{dcl.spec.auto}, \tcode{const} variables of From 98c2c56ab5e945452586270d72d2fb606b71cd94 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 22 Jul 2019 02:24:42 +0200 Subject: [PATCH 027/312] [class.prop] [special] Move definition of eligible special member functions to the section on special member functions. --- source/basic.tex | 2 +- source/classes.tex | 43 +++++++++++++++++++++-------------------- source/declarations.tex | 2 +- source/expressions.tex | 5 +++-- 4 files changed, 27 insertions(+), 25 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index b0bb659584..170f0a8428 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -4089,7 +4089,7 @@ \pnum When an object of class type \tcode{X} is passed to or returned from a function, -if \tcode{X} has at least one eligible copy or move constructor\iref{class.prop}, +if \tcode{X} has at least one eligible copy or move constructor\iref{special}, each such constructor is trivial, and the destructor of \tcode{X} is either trivial or deleted, implementations are permitted diff --git a/source/classes.tex b/source/classes.tex index 92988c5afd..d1cdeb27b1 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -142,32 +142,14 @@ \rSec1[class.prop]{Properties of classes} -\pnum -Two special member functions are of the same kind if: -\begin{itemize} -\item they are both default constructors, -\item they are both copy or move constructors -with the same first parameter type, or -\item they are both copy or move assignment operators -with the same first parameter type -and the same \grammarterm{cv-qualifier}s and \grammarterm{ref-qualifier}, if any. -\end{itemize} - -\pnum -An \defnadj{eligible}{special member function} is a special member function\iref{special} for which: -\begin{itemize} -\item the function is not deleted, -\item the associated constraints\iref{temp.constr}, if any, are satisfied, and -\item no special member function of the same kind is more constrained\iref{temp.constr.order}. -\end{itemize} - \pnum A \defnadj{trivially copyable}{class} is a class: \begin{itemize} -\item that has at least one eligible copy constructor, move constructor, +\item that has at least one eligible +copy constructor, move constructor, copy assignment operator, or -move assignment operator~(\ref{class.copy.ctor}, \ref{class.copy.assign}), +move assignment operator~(\ref{special}, \ref{class.copy.ctor}, \ref{class.copy.assign}), \item where each eligible copy constructor, move constructor, copy assignment operator, and move assignment operator is trivial, and \item that has a trivial, non-deleted destructor\iref{class.dtor}. @@ -1213,6 +1195,25 @@ ensures that only derived classes and friends can create objects using it. \end{example} +\pnum +Two special member functions are of the same kind if: +\begin{itemize} +\item they are both default constructors, +\item they are both copy or move constructors +with the same first parameter type, or +\item they are both copy or move assignment operators +with the same first parameter type +and the same \grammarterm{cv-qualifier}s and \grammarterm{ref-qualifier}, if any. +\end{itemize} + +\pnum +An \defnadj{eligible}{special member function} is a special member function for which: +\begin{itemize} +\item the function is not deleted, +\item the associated constraints\iref{temp.constr}, if any, are satisfied, and +\item no special member function of the same kind is more constrained\iref{temp.constr.order}. +\end{itemize} + \pnum For a class, its non-static data members, its non-virtual direct base classes, and, if the class is not abstract\iref{class.abstract}, its virtual base diff --git a/source/declarations.tex b/source/declarations.tex index dc3e5cd658..2e62156ff3 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -6071,7 +6071,7 @@ that is not a destructor is defined as deleted. A defaulted special member function that is neither a prospective destructor nor -an eligible special member function\iref{class.prop} +an eligible special member function\iref{special} is defined as deleted. A function is \defn{user-provided} if it is user-declared and not explicitly diff --git a/source/expressions.tex b/source/expressions.tex index 9ff9a21064..fda0f815ef 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -3111,10 +3111,11 @@ After these conversions, if the argument does not have arithmetic, enumeration, pointer, pointer-to-member, or class type, the program is ill-formed. Passing a potentially-evaluated -argument of class type\iref{class} having an eligible\iref{class.prop} non-trivial +argument of class type\iref{class} having an eligible non-trivial copy constructor, an eligible non-trivial move constructor, or a -non-trivial destructor, with no corresponding parameter, is conditionally-supported with +non-trivial destructor\iref{special}, +with no corresponding parameter, is conditionally-supported with \impldef{passing argument of class type through ellipsis} semantics. If the argument has integral or enumeration type that is subject to the integral promotions\iref{conv.prom}, or a floating-point type that is subject to the From 94a72b5c11a20cfd6c92a4faa5bd0df4b8ebc620 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 22 Jul 2019 02:28:15 +0200 Subject: [PATCH 028/312] [class.dtor] Reorder the introduction of an implicit prospective destructor to before we describe the overload resolution to pick the actual destructor. --- source/classes.tex | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/source/classes.tex b/source/classes.tex index d1cdeb27b1..15adcac0ff 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -2145,6 +2145,22 @@ of a prospective destructor declaration (if any) shall be \tcode{friend}, \tcode{inline}, or \tcode{virtual}. +\pnum +\indextext{generated destructor|see{destructor, default}}% +\indextext{destructor!default}% +If a class has no user-declared +prospective destructor, +a prospective destructor is implicitly +declared as defaulted\iref{dcl.fct.def}. +An implicitly-declared prospective destructor is an +inline public member of its class. + +\pnum +An implicitly-declared prospective destructor for a class \tcode{X} will have the form +\begin{codeblock} +~X() +\end{codeblock} + \pnum At the end of the definition of a class, overload resolution is performed @@ -2185,22 +2201,6 @@ has the same exception specification as if it had been implicitly declared\iref{except.spec}. \end{note} -\pnum -\indextext{generated destructor|see{destructor, default}}% -\indextext{destructor!default}% -If a class has no user-declared -prospective destructor, -a prospective destructor is implicitly -declared as defaulted\iref{dcl.fct.def}. -An implicitly-declared prospective destructor is an -inline public member of its class. - -\pnum -An implicitly-declared prospective destructor for a class \tcode{X} will have the form -\begin{codeblock} -~X() -\end{codeblock} - \pnum A defaulted destructor for a class \tcode{X} is defined as deleted if: From 6bd3daeae3a3e9ae6174c35ab020dbfe4504b75b Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Thu, 1 Aug 2019 20:04:36 -0700 Subject: [PATCH 029/312] [class.ctor], [class.dtor] Introduce actual definitions for "constructor" and "prospective destructor". --- source/classes.tex | 9 +++++---- source/templates.tex | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/source/classes.tex b/source/classes.tex index 15adcac0ff..443972d249 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -1224,8 +1224,8 @@ \indextext{special member function|see{constructor}}% \pnum -Constructors do not have names. -In a declaration of a constructor, the \grammarterm{declarator} is a +A \defn{constructor} is introduced by a declaration +whose \grammarterm{declarator} is a function declarator\iref{dcl.fct} of the form \begin{ncbnf} @@ -1250,7 +1250,7 @@ \grammarterm{id-expression} is a \grammarterm{qualified-id} that names a constructor\iref{class.qual}. \end{itemize} - +Constructors do not have names. In a constructor declaration, each \grammarterm{decl-specifier} in the optional \grammarterm{decl-specifier-seq} shall be \tcode{friend}, \tcode{inline}, \tcode{constexpr}, or an \grammarterm{explicit-specifier}. @@ -2112,7 +2112,8 @@ \indextext{special member function|see{destructor}}% \pnum -In a declaration of a prospective destructor, the \grammarterm{declarator} is a +A \defnadj{prospective}{destructor} is introduced by a declaration +whose \grammarterm{declarator} is a function declarator\iref{dcl.fct} of the form \begin{ncbnf} diff --git a/source/templates.tex b/source/templates.tex index 03892adae5..ac60a8e1a4 100644 --- a/source/templates.tex +++ b/source/templates.tex @@ -6427,7 +6427,7 @@ members that have been defined at the point of instantiation. \pnum -An explicit instantiation of a prospective destructor +An explicit instantiation of a prospective destructor\iref{class.dtor} shall name the selected destructor of the class. \pnum From ee37a73c96ab90d1ab29386de407ed373a6ab325 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 22 Jul 2019 03:13:48 +0200 Subject: [PATCH 030/312] P1186R3 When do you actually use <=>? --- source/basic.tex | 7 ++++ source/classes.tex | 79 +++++++++++++++++++++++++++++++++++++++-- source/overloading.tex | 6 ++++ source/preprocessor.tex | 2 +- 4 files changed, 91 insertions(+), 3 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index 170f0a8428..6b6788ac6c 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -651,6 +651,13 @@ // \tcode{D()}'s implicit definition violates the ODR \end{codeblock} \end{example} + +\item if \tcode{D} is a class with +a defaulted three-way comparison operator function\iref{class.spaceship}, +it is as if the operator was +implicitly defined in every translation unit where it is odr-used, and the +implicit definition in every translation unit shall call the same +comparison operators for each subobject of \tcode{D}. \end{itemize} If \tcode{D} is a template and is defined in more than one translation unit, then the preceding requirements diff --git a/source/classes.tex b/source/classes.tex index 443972d249..bf895729df 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -6831,10 +6831,76 @@ \rSec2[class.spaceship]{Three-way comparison} \indextext{operator!three-way comparison!defaulted}% +\pnum +The \defnadj{synthesized}{three-way comparison} +for comparison category type \tcode{R}\iref{cmp.categories} +of glvalues \tcode{a} and \tcode{b} of the same type +is defined as follows: + +\begin{itemize} +\item +If overload resolution for \tcode{a <=> b} +finds a usable function\iref{over.match}, +\tcode{static_cast(a <=> b)}. + +\item +Otherwise, if overload resolution for \tcode{a <=> b} +finds at least one viable candidate, +the synthesized three-way comparison is not defined. + +\item +Otherwise, if \tcode{R} is \tcode{strong_ordering}, then +\begin{codeblock} +a == b ? strong_ordering::equal : +a < b ? strong_ordering::less : + strong_ordering::greater +\end{codeblock} + +\item +Otherwise, if \tcode{R} is \tcode{weak_ordering}, then +\begin{codeblock} +a == b ? weak_ordering::equal : +a < b ? weak_ordering::less : + weak_ordering::greater +\end{codeblock} + +\item +Otherwise, if \tcode{R} is \tcode{partial_ordering}, then +\begin{codeblock} +a == b ? partial_ordering::equivalent : +a < b ? partial_ordering::less : +b < a ? partial_ordering::greater : + partial_ordering::unordered +\end{codeblock} + +\item +Otherwise, if \tcode{R} is \tcode{strong_equality}, then +\begin{codeblock} +a == b ? strong_equality::equal : strong_equality::nonequal +\end{codeblock} + +\item +Otherwise, if \tcode{R} is \tcode{weak_equality}, then +\begin{codeblock} +a == b ? weak_equality::equivalent : weak_equality::nonequivalent +\end{codeblock} + +\item +Otherwise, the synthesized three-way comparison is not defined. +\end{itemize} +\begin{note} +A synthesized three-way comparison may be ill-formed +if overload resolution finds usable functions +that do not otherwise meet the requirements implied by the defined expression. +\end{note} + \pnum Given an expanded list of subobjects for an object \tcode{x} of type \tcode{C}, the type of the expression $\tcode{x}_i$ \tcode{<=>} $\tcode{x}_i$ is denoted by $\tcode{R}_i$. +If overload resolution as applied to $\tcode{x}_i$ \tcode{<=>} $\tcode{x}_i$ +does not find a usable function, +then $\tcode{R}_i$ is \tcode{void}. If the declared return type of a defaulted three-way comparison operator function is \tcode{auto}, @@ -6849,6 +6915,14 @@ \end{note} If the return type is deduced as \tcode{void}, the operator function is defined as deleted. +If the declared return type of +a defaulted three-way comparison operator function +is \tcode{R} +and the synthesized three-way comparison +for comparison category type \tcode{R} +between any objects $\tcode{x}_i$ and $\tcode{x}_i$ +is not defined or would be ill-formed, +the operator function is defined as deleted. \pnum The return value \tcode{V} of type \tcode{R} @@ -6858,8 +6932,9 @@ $\tcode{x}_i$ and $\tcode{y}_i$ in the expanded lists of subobjects for \tcode{x} and \tcode{y} (in increasing index order) -until the first index $i$ -where $\tcode{x}_i$ \tcode{<=>} $\tcode{y}_i$ +until the first index $i$ where +the synthesized three-way comparison for comparison category type \tcode{R} +between $\tcode{x}_i$ and $\tcode{y}_i$ yields a result value $\tcode{v}_i$ where $\tcode{v}_i \mathrel{\tcode{!=}} 0$, contextually converted to \tcode{bool}, yields \tcode{true}; \tcode{V} is $\tcode{v}_i$ converted to \tcode{R}. diff --git a/source/overloading.tex b/source/overloading.tex index a079cdde3c..2cb76eb615 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -474,6 +474,12 @@ in which it is used, the program is ill-formed. +\pnum +Overload resolution results in a \defnadj{usable}{function} +if overload resolution succeeds and +the selected function is not deleted and +is accessible from the context in which overload resolution was performed. + \rSec2[over.match.funcs]{Candidate functions and argument lists}% \indextext{overloading!candidate functions|(}% \indextext{overloading!argument lists|(} diff --git a/source/preprocessor.tex b/source/preprocessor.tex index 613c976942..bb4837999d 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -1697,7 +1697,7 @@ \defnxname{cpp_hex_float} & \tcode{201603L} \\ \rowsep \defnxname{cpp_if_constexpr} & \tcode{201606L} \\ \rowsep \defnxname{cpp_impl_destroying_delete} & \tcode{201806L} \\ \rowsep -\defnxname{cpp_impl_three_way_comparison} & \tcode{201711L} \\ \rowsep +\defnxname{cpp_impl_three_way_comparison} & \tcode{201907L} \\ \rowsep \defnxname{cpp_inheriting_constructors} & \tcode{201511L} \\ \rowsep \defnxname{cpp_init_captures} & \tcode{201304L} \\ \rowsep \defnxname{cpp_initializer_lists} & \tcode{200806L} \\ \rowsep From dc45e8c329eeb0076d074fa671c2be2fc605555a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 22 Jul 2019 03:18:33 +0200 Subject: [PATCH 031/312] [class.spaceship] Remove incorrect note. --- source/classes.tex | 6 ------ 1 file changed, 6 deletions(-) diff --git a/source/classes.tex b/source/classes.tex index bf895729df..6d77263098 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -6907,12 +6907,6 @@ then the return type is deduced as the common comparison type (see below) of $\tcode{R}_0$, $\tcode{R}_1$, $\dotsc$, $\tcode{R}_{n-1}$. -\begin{note} -Otherwise, -the program will be ill-formed -if the expression $\tcode{x}_i$ \tcode{<=>} $\tcode{x}_i$ -is not implicitly convertible to the declared return type for any $i$. -\end{note} If the return type is deduced as \tcode{void}, the operator function is defined as deleted. If the declared return type of From 1f0f509d92865d0b9ff727629e02b3a68b227f3a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 22 Jul 2019 03:47:41 +0200 Subject: [PATCH 032/312] P1301R4 [[nodiscard("should have a reason")]] --- source/declarations.tex | 37 ++++++++++++++++++++++++++++++++----- source/preprocessor.tex | 2 +- 2 files changed, 33 insertions(+), 6 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index 2e62156ff3..89b88dda20 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -9025,9 +9025,9 @@ unsafe. \end{note} It shall appear at most once in each \grammarterm{attribute-list}. An \grammarterm{attribute-argument-clause} may be present and, if present, it shall have the form: -\begin{codeblock} -( @\grammarterm{string-literal}@ ) -\end{codeblock} +\begin{ncbnf} +\terminal{(} string-literal \terminal{)} +\end{ncbnf} \begin{note} The \grammarterm{string-literal} in the \grammarterm{attribute-argument-clause} could be used to explain the rationale for deprecation and/or to suggest a replacing entity. \end{note} @@ -9235,8 +9235,29 @@ The \grammarterm{attribute-token} \tcode{nodiscard} may be applied to the \grammarterm{declarator-id} in a function declaration or to the declaration of a class or enumeration. -It shall appear at most once in each \grammarterm{attribute-list} and -no \grammarterm{attribute-argument-clause} shall be present. +It shall appear at most once in each \grammarterm{attribute-list}. +An \grammarterm{attribute-argument-clause} may be present +and, if present, it shall have the form: + +\begin{ncbnf} +\terminal{(} string-literal \terminal{)} +\end{ncbnf} + +\pnum +A name or entity declared without the \tcode{nodiscard} attribute +can later be redeclared with the attribute and vice-versa. +\begin{note} +Thus, an entity initially declared without the attribute +can be marked as \tcode{nodiscard} +by a subsequent redeclaration. +However, after an entity is marked as \tcode{nodiscard}, +later redeclarations do not remove the \tcode{nodiscard} +from the entity. +\end{note} +Redeclarations using different forms of the attribute +(with or without the \grammarterm{attribute-argument-clause} +or with different \grammarterm{attribute-argument-clause}s) +are allowed. \pnum \begin{note} @@ -9249,6 +9270,12 @@ Implementations should issue a warning in such cases. This is typically because discarding the return value of a nodiscard call has surprising consequences. +The \grammarterm{string-literal} +in a \tcode{nodiscard} \grammarterm{attribute-argument-clause} +is intended to be used in the message of the warning +as the rationale for why the entity must not be discarded +or to suggest alternative entities +that may demonstrate the intent or proper usage. \end{note} \pnum diff --git a/source/preprocessor.tex b/source/preprocessor.tex index bb4837999d..c9a83324da 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -308,7 +308,7 @@ \tcode{likely} & \tcode{201803L} \\ \tcode{maybe_unused} & \tcode{201603L} \\ \tcode{no_unique_address} & \tcode{201803L} \\ -\tcode{nodiscard} & \tcode{201603L} \\ +\tcode{nodiscard} & \tcode{201907L} \\ \tcode{noreturn} & \tcode{200809L} \\ \tcode{unlikely} & \tcode{201803L} \\ \end{floattable} From d6a291776858bc647fc6826888767284f305c799 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 22 Jul 2019 03:58:34 +0200 Subject: [PATCH 033/312] [dcl.attr.nodiscard] Simplify note describing the string-literal in a nodiscard attribute and make it less confusing. --- source/declarations.tex | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index 89b88dda20..1b961e4d8a 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -9273,9 +9273,7 @@ The \grammarterm{string-literal} in a \tcode{nodiscard} \grammarterm{attribute-argument-clause} is intended to be used in the message of the warning -as the rationale for why the entity must not be discarded -or to suggest alternative entities -that may demonstrate the intent or proper usage. +as the rationale for why the result should not be discarded. \end{note} \pnum From 0c805f4b7ab25b7f05008c35fcc5571d6a0c55ab Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 22 Jul 2019 04:39:04 +0200 Subject: [PATCH 034/312] P1099R5 Using enum --- source/basic.tex | 2 + source/classes.tex | 1 + source/declarations.tex | 83 ++++++++++++++++++++++++++++++++++++++--- source/preprocessor.tex | 1 + 4 files changed, 81 insertions(+), 6 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index 6b6788ac6c..ebab08e55d 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -176,6 +176,8 @@ \item it is a \grammarterm{using-directive}\iref{namespace.udir}, \item it is +a \grammarterm{using-enum-declaration}\iref{enum.udecl}, +\item it is an explicit instantiation declaration\iref{temp.explicit}, or \item it is an explicit specialization\iref{temp.expl.spec} whose diff --git a/source/classes.tex b/source/classes.tex index 6d77263098..ebbbd07952 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -440,6 +440,7 @@ \opt{attribute-specifier-seq} \opt{decl-specifier-seq} \opt{member-declarator-list} \terminal{;}\br function-definition\br using-declaration\br + using-enum-declaration\br static_assert-declaration\br template-declaration\br deduction-guide\br diff --git a/source/declarations.tex b/source/declarations.tex index 1b961e4d8a..573e96fdcf 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -38,6 +38,7 @@ asm-declaration\br namespace-alias-definition\br using-declaration\br + using-enum-declaration\br using-directive\br static_assert-declaration\br alias-declaration\br @@ -1418,6 +1419,11 @@ class-key \opt{attribute-specifier-seq} \opt{nested-name-specifier} identifier\br class-key simple-template-id\br class-key nested-name-specifier \opt{\keyword{template}} simple-template-id\br + elaborated-enum-specifier +\end{bnf} + +\begin{bnf} +\nontermdef{elaborated-enum-specifier}\br \keyword{enum} \opt{nested-name-specifier} identifier \end{bnf} @@ -6904,6 +6910,60 @@ \end{codeblock} \end{example} +\rSec2[enum.udecl]{The \tcode{using enum} declaration}% +\indextext{enumeration!using declaration}% + +\begin{bnf} +\nontermdef{using-enum-declaration}\br + \terminal{using} elaborated-enum-specifier \terminal{;} +\end{bnf} + +\pnum +The \grammarterm{elaborated-enum-specifier} +shall not name a dependent type +and the type shall have a reachable \grammarterm{enum-specifier}. + +\pnum +A \grammarterm{using-enum-declaration} +introduces the enumerator names of the named enumeration +as if by a \grammarterm{using-declaration} for each enumerator. + +\pnum +\begin{note} +A \grammarterm{using-enum-declaration} in class scope +adds the enumerators of the named enumeration as members to the scope. +This means they are accessible for member lookup. +\begin{example} +\begin{codeblock} +enum class fruit { orange, apple }; +struct S { + using enum fruit; // OK, introduces \tcode{orange} and \tcode{apple} into \tcode{S} +}; +void f() { + S s; + s.orange; // OK, names \tcode{fruit::orange} + S::orange; // OK, names \tcode{fruit::orange} +} +\end{codeblock} +\end{example} +\end{note} + +\pnum +\begin{note} +Two \grammarterm{using-enum-declaration}s +that introduce two enumerators of the same name conflict. +\begin{example} +\begin{codeblock} +enum class fruit { orange, apple }; +enum class color { red, orange }; +void f() { + using enum fruit; // OK + using enum color; // ill-formed: \tcode{color::orange} and \tcode{fruit::orange} conflict +} +\end{codeblock} +\end{example} +\end{note} + \rSec1[basic.namespace]{Namespaces}% \indextext{namespaces|(} @@ -7599,8 +7659,20 @@ \pnum In a \grammarterm{using-declaration} used as a \grammarterm{member-declaration}, -each \grammarterm{using-declarator}{'s} \grammarterm{nested-name-specifier} -shall name a base class of the class being defined. If a +each \grammarterm{using-declarator} +shall either name an enumerator +or have a \grammarterm{nested-name-specifier} +naming a base class of the class being defined. +\begin{example} +\begin{codeblock} +enum class button { up, down }; +struct S { + using button::up; + button b = up; // OK +}; +\end{codeblock} +\end{example} +If a \grammarterm{using-declarator} names a constructor, its \grammarterm{nested-name-specifier} shall name a direct base class of the class being defined. @@ -7667,10 +7739,9 @@ A \grammarterm{using-declaration} shall not name a namespace. \pnum -A \grammarterm{using-declaration} shall not name a scoped enumerator. - -\pnum -A \grammarterm{using-declaration} that names a class member shall be a +A \grammarterm{using-declaration} that names a class member +other than an enumerator +shall be a \grammarterm{member-declaration}. \begin{example} \begin{codeblock} diff --git a/source/preprocessor.tex b/source/preprocessor.tex index c9a83324da..5bce3d1f95 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -1722,6 +1722,7 @@ \defnxname{cpp_unicode_characters} & \tcode{200704L} \\ \rowsep \defnxname{cpp_unicode_literals} & \tcode{200710L} \\ \rowsep \defnxname{cpp_user_defined_literals} & \tcode{200809L} \\ \rowsep +\defnxname{cpp_using_enum} & \tcode{201907L} \\ \rowsep \defnxname{cpp_variable_templates} & \tcode{201304L} \\ \rowsep \defnxname{cpp_variadic_templates} & \tcode{200704L} \\ \rowsep \defnxname{cpp_variadic_using} & \tcode{201611L} \\ \rowsep From 46ba985402de963f50d364b26b594707be16c7c9 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 22 Jul 2019 04:42:43 +0200 Subject: [PATCH 035/312] [dcl.enum] Avoid hanging paragraphs by moving "Enumeration declarations" down one level to a sibling of "The using enum declaration". [namespace.udir] Rename section to "Using namespace directive" to further distinguish this from a using enum declaration. --- source/declarations.tex | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index 573e96fdcf..ba832ad7b6 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -6590,7 +6590,9 @@ the type of the \grammarterm{id-expression} \tcode{y} is ``\tcode{const volatile double}''. \end{example} -\rSec1[dcl.enum]{Enumeration declarations}% +\rSec1[enum]{Enumerations}% + +\rSec2[dcl.enum]{Enumeration declarations}% \indextext{enumeration}% \indextext{\idxcode{\{\}}!enum declaration@\tcode{enum} declaration}% \indextext{\idxcode{enum}!type of} @@ -7379,7 +7381,7 @@ \end{codeblock} \end{example} -\rSec2[namespace.udir]{Using directive}% +\rSec2[namespace.udir]{Using namespace directive}% \indextext{using-directive|(} \begin{bnf} From b66749568bbbf8634b26e8cc8d90aeb2e9a29f59 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 22 Jul 2019 14:12:11 -0700 Subject: [PATCH 036/312] P1630R1 Spaceship needs a tune-up Definition of 'usable function' not added: it was already added by CWG motion 6 (P1186R3). --- source/classes.tex | 48 ++++++++++++++++----------- source/compatibility.tex | 31 ++++++++++++++++++ source/overloading.tex | 71 ++++++++++++++++++++++++---------------- 3 files changed, 101 insertions(+), 49 deletions(-) diff --git a/source/classes.tex b/source/classes.tex index ebbbd07952..53fd8e975e 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -6708,6 +6708,12 @@ \item a friend of \tcode{C} having two parameters of type \tcode{const C\&}. \end{itemize} +\pnum +A defaulted comparison operator function for class \tcode{C} +is defined as deleted if +any non-static data member of \tcode{C} is of reference type or +\tcode{C} is a union-like class\iref{class.union.anon}. + \pnum If the class definition does not explicitly declare an \tcode{==} operator function, @@ -6744,15 +6750,22 @@ given a glvalue \tcode{x} of type \tcode{const C}, either: \begin{itemize} \item - \tcode{C} is a non-class type and \tcode{x <=> x} is a valid expression - of type \tcode{std::strong_ordering} or \tcode{std::strong_equality}, or +\tcode{C} is a non-class type and +\tcode{x <=> x} is a valid expression +of type \tcode{std::strong_ordering} or \tcode{std::strong_equality}, or + \item - \tcode{C} is a class type with an \tcode{==} operator - defined as defaulted in the definition of \tcode{C}, - \tcode{x == x} is well-formed when contextually converted to \tcode{bool}, - all of \tcode{C}'s base class subobjects and non-static data members - have strong structural equality, and - \tcode{C} has no \tcode{mutable} or \tcode{volatile} subobjects. +\tcode{C} is a class type +where all of the following hold: +\begin{itemize} +\item All of \tcode{C}'s base class subobjects and non-static data members +have strong structural equality. +\item \tcode{C} has no mutable or volatile non-static data members. +\item At the end of the definition of \tcode{C}, +overload resolution performed for the expression \tcode{x == x} succeeds and +finds either a friend or public member \tcode{==} operator +that is defined as defaulted in the definition of \tcode{C}. +\end{itemize} \end{itemize} \pnum @@ -6807,15 +6820,12 @@ with parameters \tcode{x} and \tcode{y} is defined as deleted if \begin{itemize} \item - overload resolution\iref{over.match}, as applied to \tcode{x == y} - (also considering synthesized candidates - with reversed order of parameters\iref{over.match.oper}), - results in an ambiguity or a function - that is deleted or inaccessible from the operator function, or + overload resolution\iref{over.match}, as applied to \tcode{x == y}, + does not result in a usable function, or \item - \tcode{x == y} cannot be contextually converted to \tcode{bool}. + \tcode{x == y} is not a prvalue of type \tcode{bool}. \end{itemize} -Otherwise, the operator function yields \tcode{(x == y) ?\ false :\ true}. +Otherwise, the operator function yields \tcode{!(x == y)}. \pnum \begin{example} @@ -6824,7 +6834,7 @@ int i; friend bool operator==(const D& x, const D& y) = default; // OK, returns \tcode{x.i == y.i} - bool operator!=(const D& z) const = default; // OK, returns \tcode{(*this == z) ?\ false :\ true} + bool operator!=(const D& z) const = default; // OK, returns \tcode{!(*this == z)} }; \end{codeblock} \end{example} @@ -6990,10 +7000,8 @@ \begin{itemize} \item overload resolution\iref{over.match}, -as applied to \tcode{x <=> y} -results in an ambiguity -or a function that is deleted or inaccessible from the operator function, -or +as applied to \tcode{x <=> y}, +does not result in a usable function, or \item the operator \tcode{@} diff --git a/source/compatibility.tex b/source/compatibility.tex index bdcd591c17..3a4e167eb9 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -2004,6 +2004,37 @@ }; \end{codeblock} +\rSec2[diff.cpp17.over]{\ref{over}: overloading} + +\diffref{over.match.oper} +\change +Equality and inequality expressions can now find +reversed and rewritten candidates. +\rationale +Improve consistency of equality with three-way comparison +and make it easier to write the full complement of equality operations. +\effect +Equality and inequality expressions between two objects of different types, +where one is convertible to the other, +could invoke a different operator. +Equality and inequality expressions between two objects of the same type +could become ambiguous. +\begin{codeblock} +struct A { + operator int() const; +}; + +bool operator==(A, int); // \#1 +// \#2 is built-in candidate: \tcode{bool operator==(int, int);} +// \#3 is built-in candidate: \tcode{bool operator!=(int, int);} + +int check(A x, A y) { + return (x == y) + // ill-formed; previously well-formed + (10 == x) + // calls \#1, previously selected \#2 + (10 != x); // calls \#1, previously selected \#3 +} +\end{codeblock} + \rSec2[diff.cpp17.temp]{\ref{temp}: templates} \diffref{temp.names} diff --git a/source/overloading.tex b/source/overloading.tex index 2cb76eb615..cd92452641 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1077,13 +1077,15 @@ that is not a function template specialization. \end{itemize} +\item +The rewritten candidate set is determined as follows: +\begin{itemize} \item For the relational\iref{expr.rel} operators, the rewritten candidates include all member, non-member, and built-in candidates -for the operator \tcode{<=>} -for which the rewritten expression -\tcode{(x <=> y) @ 0} is well-formed using that \tcode{operator<=>}. +for the expression \tcode{x <=> y}. +\item For the relational\iref{expr.rel} and three-way comparison\iref{expr.spaceship} @@ -1092,29 +1094,27 @@ a synthesized candidate, with the order of the two parameters reversed, for each member, non-member, and built-in candidate -for the operator \tcode{<=>} -for which the rewritten expression -\tcode{0 @ (y <=> x)} is well-formed using that \tcode{operator<=>}. +for the expression +\tcode{y <=> x}. +\item For the \tcode{!=} operator\iref{expr.eq}, the rewritten candidates include all member, non-member, and built-in candidates -for the operator \tcode{==} -for which the rewritten expression \tcode{(x == y)} is well-formed -when contextually converted to \tcode{bool} using that operator \tcode{==}. +for the expression \tcode{x == y}. +\item For the equality operators, the rewritten candidates also include a synthesized candidate, with the order of the two parameters reversed, -for each member, non-member, and built-in candidate for the operator \tcode{==} -for which the rewritten expression \tcode{(y == x)} is well-formed -when contextually converted to \tcode{bool} using that operator \tcode{==}. +for each member, non-member, and built-in candidate +for the expression \tcode{y == x}. +\item +For all other operators, the rewritten candidate set is empty. +\end{itemize} \begin{note} A candidate synthesized from a member candidate has its implicit object parameter as the second parameter, thus implicit conversions are considered for the first, but not for the second, parameter. \end{note} -In each case, rewritten candidates are not considered -in the context of the rewritten expression. -For all other operators, the rewritten candidate set is empty. \end{itemize} \pnum @@ -1165,26 +1165,39 @@ \end{example} \pnum -If a rewritten candidate is selected by overload resolution -for a relational or three-way comparison operator \tcode{@}, +If a rewritten \tcode{operator<=>} candidate +is selected by overload resolution +for an operator \tcode{@}, \tcode{x @ y} -is interpreted as the rewritten expression: +is interpreted as \tcode{0 @ (y <=> x)} if the selected candidate is a synthesized candidate with reversed order of parameters, or \tcode{(x <=> y) @ 0} otherwise, using the selected rewritten \tcode{operator<=>} candidate. -If a rewritten candidate is selected by overload resolution -for a \tcode{!=} operator, -\tcode{x != y} is interpreted as \tcode{(y == x) ?\ false :\ true} -if the selected candidate is a synthesized candidate -with reversed order of parameters, or -\tcode{(x == y) ?\ false :\ true} otherwise, -using the selected rewritten \tcode{operator==} candidate. -If a rewritten candidate is selected by overload resolution -for an \tcode{==} operator, -\tcode{x == y} is interpreted as \tcode{(y == x) ?\ true :\ false} -using the selected rewritten \tcode{operator==} candidate. +Rewritten candidates for the operator \tcode{@} +are not considered in the context of the resulting expression. + +\pnum +If a rewritten \tcode{operator==} candidate +is selected by overload resolution +for an operator \tcode{@}, +its return type shall be \cv{} \tcode{bool}, and +\tcode{x @ y} is interpreted as: +\begin{itemize} +\item +if \tcode{@} is \tcode{!=} +and the selected candidate is a synthesized candidate +with reversed order of parameters, +\tcode{!(y == x)}, +\item +otherwise, if \tcode{@} is \tcode{!=}, +\tcode{!(x == y)}, +\item +otherwise (when \tcode{@} is \tcode{==}), +\tcode{y == x}, +\end{itemize} +in each case using the selected rewritten \tcode{operator==} candidate. \pnum If a built-in candidate is selected by overload resolution, the From 5d1bb1c7f8ed44016c38bfeb9797e363d52cfc51 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Thu, 1 Aug 2019 20:42:13 -0700 Subject: [PATCH 037/312] [over.match.oper] Replace "member, non-member, and built-in candidates" with "non-rewritten candidates" This simplifies the wording, implicitly explains why we're considering only some candidates, and avoids overtly suggesting that we could ever pick a reversed-parameter-order built-in candidate. --- source/overloading.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/overloading.tex b/source/overloading.tex index cd92452641..2e867d6d10 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1083,7 +1083,7 @@ \item For the relational\iref{expr.rel} operators, the rewritten candidates include -all member, non-member, and built-in candidates +all non-rewritten candidates for the expression \tcode{x <=> y}. \item For the @@ -1093,19 +1093,19 @@ the rewritten candidates also include a synthesized candidate, with the order of the two parameters reversed, -for each member, non-member, and built-in candidate +for each non-rewritten candidate for the expression \tcode{y <=> x}. \item For the \tcode{!=} operator\iref{expr.eq}, the rewritten candidates -include all member, non-member, and built-in candidates +include all non-rewritten candidates for the expression \tcode{x == y}. \item For the equality operators, the rewritten candidates also include a synthesized candidate, with the order of the two parameters reversed, -for each member, non-member, and built-in candidate +for each non-rewritten candidate for the expression \tcode{y == x}. \item For all other operators, the rewritten candidate set is empty. From 64b6f609a89cfb5df11fc276d6a1c8783bcbddf0 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 26 Jul 2019 14:11:50 +0200 Subject: [PATCH 038/312] P1616R1 Using unconstrained template template parameters with constrained templates --- source/templates.tex | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/templates.tex b/source/templates.tex index ac60a8e1a4..882943ca0b 100644 --- a/source/templates.tex +++ b/source/templates.tex @@ -1373,6 +1373,8 @@ \pnum A \grammarterm{template-argument} matches a template \grammarterm{template-parameter} \tcode{P} when \tcode{P} is at least as specialized as the \grammarterm{template-argument} \tcode{A}. +In this comparison, if \tcode{P} is unconstrained, +the constraints on \tcode{A} are not considered. If \tcode{P} contains a template parameter pack, then \tcode{A} also matches \tcode{P} if each of \tcode{A}'s template parameters matches the corresponding template parameter in the From 3e2c4fd50f6784f1d623e22b61276022ec15adc1 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 26 Jul 2019 16:37:24 +0200 Subject: [PATCH 039/312] P1816R0 Class template argument deduction for aggregates --- source/overloading.tex | 59 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/source/overloading.tex b/source/overloading.tex index 2e867d6d10..e25b2dea6d 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1547,6 +1547,27 @@ of the \grammarterm{deduction-guide}. \end{itemize} \end{itemize} +In addition, if \tcode{C} satisfies the conditions for an aggregate class +with the assumption that any dependent base class has +no virtual functions and no virtual base classes, and +the initializer is a non-empty \grammarterm{braced-init-list} or +parenthesized \grammarterm{expression-list}, +the set contains an additional function template, +called the \defnadj{aggregate deduction}{candidate}, defined as follows. +Let $x_1, \dotsc, x_n$ be the elements +of the \grammarterm{initializer-list} or +\grammarterm{designated-initializer-list} +of the \grammarterm{braced-init-list}, or +of the \grammarterm{expression-list}. +For each $x_i$, let $e_i$ be the corresponding element +of \tcode{C} or of one of its (possibly recursive) subaggregates +that would be initialized by $x_i$\iref{dcl.init.aggr} +if brace elision is not considered for any subaggregate +that has a dependent type. +If there is no such element $e_i$, the program is ill-formed. +The aggregate deduction candidate is derived as above +from a hypothetical constructor $\tcode{C}(\tcode{T}_1, \dotsc, \tcode{T}_n)$, +where $\tcode{T}_i$ is the declared type of the element $e_i$. \pnum Initialization and overload resolution are performed as described @@ -1601,6 +1622,44 @@ }; B b{(int*)0, (char*)0}; // OK, deduces \tcode{B} + +template +struct S { + T x; + T y; +}; + +template +struct C { + S s; + T t; +}; + +template +struct D { + S s; + T t; +}; + +C c1 = {1, 2}; // error: deduction failed +C c2 = {1, 2, 3}; // error: deduction failed +C c3 = {{1u, 2u}, 3}; // OK, deduces \tcode{C} + +D d1 = {1, 2}; // error: deduction failed +D d2 = {1, 2, 3}; // OK, braces elided, deduces \tcode{D} + +template +struct I { + using type = T; +}; + +template +struct E { + typename I::type i; + T t; +}; + +E e1 = {1, 2}; // OK, \tcode{E} deduced \end{codeblock} \end{example}% \indextext{overloading!argument lists|)}% From c16237608c90a29aaa3eccc81e6fd3754009a64c Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 26 Jul 2019 14:17:07 +0200 Subject: [PATCH 040/312] P1668R1 Enabling constexpr intrinsics by permitting unevaluated inline-assembly in constexpr functions [cpp.predefined] Do not update __cpp_constexpr macro value; it was already updated by P1331R2 (CWG Motion 3). --- source/declarations.tex | 1 - source/expressions.tex | 7 +++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index ba832ad7b6..fdc43e3b3a 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -824,7 +824,6 @@ \item its \grammarterm{function-body} shall not enclose\iref{stmt.stmt} \begin{itemize} -\item an \grammarterm{asm-declaration}, \item a \tcode{goto} statement, \item an identifier label\iref{stmt.label}, \item a definition of a variable diff --git a/source/expressions.tex b/source/expressions.tex index fda0f815ef..2e3ef62dea 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -6870,7 +6870,7 @@ \pnum An expression \tcode{e} is a \defnadj{core constant}{expression} unless the evaluation of \tcode{e}, following the rules of the abstract -machine\iref{intro.execution}, would evaluate one of the following expressions: +machine\iref{intro.execution}, would evaluate one of the following: \begin{itemize} \item @@ -7036,7 +7036,10 @@ \item a \grammarterm{throw-expression}\iref{expr.throw} or a dynamic cast\iref{expr.dynamic.cast} or \tcode{typeid}\iref{expr.typeid} expression -that would throw an exception; or +that would throw an exception; + +\item +an \grammarterm{asm-declaration}\iref{dcl.asm}; or \item an invocation of the \tcode{va_arg} macro\iref{cstdarg.syn}. From d0acd26ef5931e19c685a20fb0a2ad49c6af6160 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 26 Jul 2019 16:54:21 +0200 Subject: [PATCH 041/312] P1766R1 Mitigating minor modules maladies --- source/basic.tex | 12 ++++++++---- source/compatibility.tex | 28 ++++++++++++++++++++++++++++ source/declarations.tex | 28 +++++++++++++++++++++++----- 3 files changed, 59 insertions(+), 9 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index ebab08e55d..ab3b19279f 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -276,7 +276,9 @@ \rSec1[basic.def.odr]{One-definition rule} \pnum -A variable, function, class type, enumeration type, or template +A variable, function, class type, enumeration type, template, +default argument for a parameter (for a function in a given scope), or +default template argument shall not be defined where a prior definition is necessarily reachable\iref{module.reach}; no diagnostic is required if the prior declaration is in another translation unit. @@ -548,10 +550,12 @@ non-static function template\iref{temp.fct}, concept\iref{temp.concept}, static data member of a class template\iref{temp.static}, member -function of a class template\iref{temp.mem.func}, or template +function of a class template\iref{temp.mem.func}, template specialization for which some template parameters are not -specified~(\ref{temp.spec}, \ref{temp.class.spec}) in a program -provided that +specified~(\ref{temp.spec}, \ref{temp.class.spec}), +default argument for a parameter (for a function in a given scope), or +default template argument +in a program provided that no prior definition is necessarily reachable\iref{module.reach} at the point where a definition appears, and provided the definitions satisfy the following requirements. diff --git a/source/compatibility.tex b/source/compatibility.tex index 3a4e167eb9..5f151a0e40 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -1922,6 +1922,34 @@ \rSec2[diff.cpp17.dcl.dcl]{\ref{dcl.dcl}: declarations} +\diffref{dcl.typedef} +\change Unnamed classes with a typedef name for linkage purposes +can only contain C-compatible constructs. +\rationale Necessary for implementability. +\effect Valid C++ 2017 code may be ill-formed in this International Standard. +\begin{codeblock} +typedef struct { + void f() {} // ill-formed; previously well-formed +} S; +\end{codeblock} + +\diffref{dcl.fct.default} +\change A function cannot have different default arguments +in different translation units. +\rationale Required for modules support. +\effect Valid C++ 2017 code may be ill-formed in this International Standard, +with no diagnostic required. +\begin{codeblock} +// Translation unit 1 +int f(int a = 42); +int g() { return f(); } + +// Translation unit 2 +int f(int a = 76) { return a; } // ill-formed (no diagnostic required); previously well-formed +int g(); +int main() { return g(); } // used to return 42 +\end{codeblock} + \diffref{dcl.init.aggr} \change A class that has user-declared constructors is never an aggregate. \rationale Remove potentially error-prone aggregate initialization diff --git a/source/declarations.tex b/source/declarations.tex index fdc43e3b3a..b0df1c3673 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -736,6 +736,24 @@ typedef decltype([]{}) C; // the closure type has no name for linkage purposes \end{codeblock} \end{example} +An unnamed class with a typedef name for linkage purposes shall not +\begin{itemize} +\item + declare any members + other than non-static data members, member enumerations, or member classes, +\item + have any base classes or default member initializers, or +\item + contain a \grammarterm{lambda-expression}, +\end{itemize} +and all member classes shall also satisfy these requirements (recursively). +\begin{example} +\begin{codeblock} +typedef struct { + int f() {} +} X; // error: struct with typedef name for linkage has member functions +\end{codeblock} +\end{example} \rSec2[dcl.friend]{The \tcode{friend} specifier}% \indextext{specifier!\idxcode{friend}} @@ -3777,11 +3795,12 @@ supplied in this or a previous declaration, unless the parameter was expanded from a parameter pack, or shall be a function parameter pack. +\begin{note} A default argument -shall not be redefined by a later declaration (not even to the -same value). +cannot be redefined by a later declaration +(not even to the same value)\iref{basic.def.odr}. +\end{note} \begin{example} - \begin{codeblock} void g(int = 0, ...); // OK, ellipsis is not a parameter so it can follow // a parameter with a default argument @@ -3809,8 +3828,7 @@ \end{example} For a given inline function defined in different translation units, the accumulated sets of default arguments at the end of the -translation units shall be the same; -see~\ref{basic.def.odr}. +translation units shall be the same; no diagnostic is required. If a friend declaration specifies a default argument expression, that declaration shall be a definition and shall be the only declaration of the function or function template in the translation unit. From 1fbc1c315008152770eea8bd383aa2a4fa47cfd5 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 26 Jul 2019 16:56:13 +0200 Subject: [PATCH 042/312] [basic.def.odr] Turn long comma-separate list into bullets. --- source/basic.tex | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index ab3b19279f..4fba76b449 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -543,18 +543,22 @@ \end{note} \pnum -There can be more than one definition of a class type\iref{class}, -enumeration type\iref{dcl.enum}, inline function -with external linkage\iref{dcl.inline}, inline variable with external -linkage\iref{dcl.inline}, class template\iref{temp}, -non-static function template\iref{temp.fct}, -concept\iref{temp.concept}, -static data member of a class template\iref{temp.static}, member -function of a class template\iref{temp.mem.func}, template -specialization for which some template parameters are not +There can be more than one definition of a +\begin{itemize} +\item class type\iref{class}, +\item enumeration type\iref{dcl.enum}, +\item inline function with external linkage\iref{dcl.inline}, +\item inline variable with external linkage\iref{dcl.inline}, +\item class template\iref{temp}, +\item non-static function template\iref{temp.fct}, +\item concept\iref{temp.concept}, +\item static data member of a class template\iref{temp.static}, +\item member function of a class template\iref{temp.mem.func}, +\item template specialization for which some template parameters are not specified~(\ref{temp.spec}, \ref{temp.class.spec}), -default argument for a parameter (for a function in a given scope), or -default template argument +\item default argument for a parameter (for a function in a given scope), or +\item default template argument +\end{itemize} in a program provided that no prior definition is necessarily reachable\iref{module.reach} at the point where a definition appears, and From d0d38dd948a284ad8c0da4ac9897461dc9ba3862 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 26 Jul 2019 22:34:37 +0200 Subject: [PATCH 043/312] P1811R0 Relaxing redefinition restrictions for re-exportation robustness --- source/basic.tex | 10 ++++------ source/modules.tex | 8 +++----- source/preprocessor.tex | 6 +++++- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index 4fba76b449..1630bf05f3 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -276,11 +276,10 @@ \rSec1[basic.def.odr]{One-definition rule} \pnum -A variable, function, class type, enumeration type, template, +No translation unit shall contain more than one definition of any +variable, function, class type, enumeration type, template, default argument for a parameter (for a function in a given scope), or -default template argument -shall not be defined where a prior definition is necessarily reachable\iref{module.reach}; -no diagnostic is required if the prior declaration is in another translation unit. +default template argument. \pnum \indextext{expression!potentially evaluated}% @@ -560,8 +559,7 @@ \item default template argument \end{itemize} in a program provided that -no prior definition is necessarily reachable\iref{module.reach} -at the point where a definition appears, and +each definition appears in a different translation unit, and provided the definitions satisfy the following requirements. There shall not be more than one definition of an entity diff --git a/source/modules.tex b/source/modules.tex index f36a1c3c7e..4d51f18206 100644 --- a/source/modules.tex +++ b/source/modules.tex @@ -858,7 +858,7 @@ \item the point at the end of translation unit \#3, and \item the point of the call to \tcode{g(0)}, \end{itemize} -so the definition of \tcode{X} is not necessarily reachable, +so the definition of \tcode{X} need not be reachable, as described in \ref{module.reach}. \end{example} @@ -897,16 +897,14 @@ \pnum A declaration $D$ is -\defnx{reachable}{reachable!declaration} or -\defnx{necessarily reachable}{reachable!necessarily!declaration}, -respectively, if, +\defnx{reachable}{reachable!declaration}, if, for any point $P$ in the instantiation context\iref{module.context}, \begin{itemize} \item $D$ appears prior to $P$ in the same translation unit, or \item $D$ is not discarded\iref{module.global}, appears in a translation unit that is -reachable or necessarily reachable from $P$, respectively, +reachable from $P$, and either does not appear within a \grammarterm{private-module-fragment} or appears in a \grammarterm{private-module-fragment} diff --git a/source/preprocessor.tex b/source/preprocessor.tex index 5bce3d1f95..c6a71cff9e 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -624,7 +624,10 @@ \pnum If the header identified by the \grammarterm{header-name} denotes an importable header\iref{module.import}, -the preprocessing directive +it is +\impldef{whether source file inclusion of importable header +is replaced with \tcode{import}} +whether the preprocessing directive is instead replaced by the \grammarterm{preprocessing-token}{s} \begin{ncbnf} \terminal{import} header-name \terminal{;} @@ -1703,6 +1706,7 @@ \defnxname{cpp_initializer_lists} & \tcode{200806L} \\ \rowsep \defnxname{cpp_inline_variables} & \tcode{201606L} \\ \rowsep \defnxname{cpp_lambdas} & \tcode{200907L} \\ \rowsep +\defnxname{cpp_modules} & \tcode{201907L} \\ \rowsep \defnxname{cpp_namespace_attributes} & \tcode{201411L} \\ \rowsep \defnxname{cpp_noexcept_function_type} & \tcode{201510L} \\ \rowsep \defnxname{cpp_nontype_template_args} & \tcode{201411L} \\ \rowsep From d910b2d9361c3ed1f908f77c8f76bd3e27093c90 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 26 Jul 2019 23:18:06 +0200 Subject: [PATCH 044/312] P0388R4 Permit conversions to arrays of unknown bound --- source/declarations.tex | 8 +++-- source/expressions.tex | 66 +++++++++++++++++------------------------ source/overloading.tex | 44 +++++++++++++++++---------- 3 files changed, 61 insertions(+), 57 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index b0df1c3673..2a5b1caaa3 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -5683,10 +5683,14 @@ \end{codeblock} \end{example} -\item Otherwise, if \tcode{T} is a reference type, a prvalue of the type -referenced by \tcode{T} is generated. +\item Otherwise, if \tcode{T} is a reference type, a prvalue is generated. The prvalue initializes its result object by copy-list-initialization. The prvalue is then used to direct-initialize the reference. +The type of the temporary is the type referenced by \tcode{T}, +unless \tcode{T} is ``reference to array of unknown bound of \tcode{U}'', +in which case the type of the temporary is +the type of \tcode{x} in the declaration \tcode{U x[] $H$}, +where $H$ is the initializer list. \begin{note} As usual, the binding will fail and the program is ill-formed if the reference type is an lvalue reference to a non-const type. \end{note} diff --git a/source/expressions.tex b/source/expressions.tex index 2e3ef62dea..6f03206a0d 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -324,25 +324,6 @@ \tcode{T} is a cv-unqualified non-class, non-array type, the type of the expression is adjusted to \tcode{T} prior to any further analysis. -\pnum -The \defnadj{cv-combined}{type} of two types \tcode{T1} and \tcode{T2} -is a type \tcode{T3} -similar to \tcode{T1} whose cv-qualification signature\iref{conv.qual} is: -\begin{itemize} -\item -for every $i > 0$, $\cv{}^3_i$ is the union of -$\cv{}^1_i$ and $\cv{}^2_i$; - -\item -if the resulting $\cv{}^3_i$ is different from -$\cv{}^1_i$ or $\cv{}^2_i$, then -\tcode{const} is added to every $\cv{}^3_k$ for $0 < k < i$. -\end{itemize} - -\begin{note} Given similar types \tcode{T1} and \tcode{T2}, this -construction ensures that -both can be converted to \tcode{T3}. \end{note} - \pnum \indextext{pointer!composite pointer type}% The \defn{composite pointer type} of @@ -748,34 +729,39 @@ \indextext{type!similar|see{similar types}}% Two types $\tcode{T}_1$ and $\tcode{T}_2$ are \defnx{similar}{similar types} if they have cv-decompositions with the same $n$ -such that corresponding $P_i$ components are the same +such that corresponding $P_i$ components are either the same +or one is ``array of $N_i$'' and the other is ``array of unknown bound of'', and the types denoted by \tcode{U} are the same. \pnum -A prvalue of type $\tcode{T}_1$ -can be converted to type $\tcode{T}_2$ -if the following conditions are satisfied, -% NB: forbid line break between 'where' and 'cv' -% to stop superscript j from running into -% descender of p on the previous line. -where~$\cv{}_i^j$ denotes the cv-qualifiers in the cv-qualification signature of $\tcode{T}_j$:% -\footnote{These rules ensure that const-safety is preserved by the conversion.} - +The \defnadj{cv-combined}{type} of two types \tcode{T1} and \tcode{T2} +is the type \tcode{T3} +similar to \tcode{T1} whose cv-decomposition is such that: \begin{itemize} -\item $\tcode{T}_1$ and $\tcode{T}_2$ are similar. - -\item For every $i > 0$, if \tcode{const} is in $\cv{}_i^1$ then \tcode{const} is in $\cv{}_i^2$, and similarly for \tcode{volatile}. - -\item If the $\cv{}_i^1$ and $\cv{}_i^2$ are different, -then \tcode{const} is in every $\cv{}_k^2$ for $0 < k < i$. +\item +for every $i > 0$, $\cv{}^3_i$ is the union of +$\cv{}^1_i$ and $\cv{}^2_i$; +\item +if either $P^1_i$ or $P^2_i$ is ``array of unknown bound of'', +$P^3_i$ is ``array of unknown bound of'', otherwise it is $P^1_i$; +\item +if the resulting $\cv{}^3_i$ is different from $\cv{}^1_i$ or $\cv{}^2_i$, +or the resulting $P^3_i$ is different from $P^1_i$ or $P^2_i$, +then \tcode{const} is added to every $\cv{}^3_k$ for $0 < k < i$. \end{itemize} - +\begin{note} +Given similar types \tcode{T1} and \tcode{T2}, this +construction ensures that +both can be converted to \tcode{T3}. +\end{note} +A prvalue of type $\tcode{T}_1$ +can be converted to type $\tcode{T}_2$ +if the cv-combined type of $\tcode{T}_1$ and $\tcode{T}_2$ is $\tcode{T}_2$. \begin{note} If a program could assign a pointer of type \tcode{T**} to a pointer of type \tcode{const} \tcode{T**} (that is, if line \#1 below were allowed), a program could inadvertently modify a const object (as it is done on line \#2). For example, - \begin{codeblock} int main() { const char c = 'c'; @@ -3997,8 +3983,10 @@ \pnum For two similar types \tcode{T1} and \tcode{T2}\iref{conv.qual}, a prvalue of type \tcode{T1} may be explicitly -converted to the type \tcode{T2} using a \tcode{const_cast}. The result -of a \tcode{const_cast} refers to the original entity. +converted to the type \tcode{T2} using a \tcode{const_cast} +if, considering the cv-decompositions of both types, +all $P^1_i$ are the same as $P^2_i$. +The result of a \tcode{const_cast} refers to the original entity. \begin{example} \begin{codeblock} typedef int *A[3]; // array of 3 pointer to \tcode{int} diff --git a/source/overloading.tex b/source/overloading.tex index e25b2dea6d..f185be354d 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -2490,10 +2490,13 @@ \end{example} \pnum -Otherwise, if the parameter type is ``array of \tcode{N} \tcode{X}'', -if there exists an implicit conversion sequence for each element of the array -from the corresponding element of the initializer list (or from \tcode{\{\}} -if there is no such element), the implicit conversion sequence is +Otherwise, if the parameter type is ``array of \tcode{N} \tcode{X}'' +or ``array of unknown bound of \tcode{X}'', +if there exists an implicit conversion sequence +from each element of the initializer list +(and from \tcode{\{\}} in the former case +if \tcode{N} exceeds the number of elements in the initializer list) +to \tcode{X}, the implicit conversion sequence is the worst such implicit conversion sequence. \pnum @@ -2662,11 +2665,27 @@ \tcode{L2} does not, or, if not that, \item -\tcode{L1} converts to type ``array of \tcode{N1} \tcode{T}'', \tcode{L2} converts to -type ``array of \tcode{N2} \tcode{T}'', and \tcode{N1} is smaller than \tcode{N2}, +\tcode{L1} and \tcode{L2} convert to arrays of the same element type, and +either the number of elements $n_1$ initialized by \tcode{L1} +is less than the number of elements $n_2$ initialized by \tcode{L2}, or +$n_1 = n_2$ and +\tcode{L2} converts to an array of unknown bound and \tcode{L1} does not, \end{itemize} even if one of the other rules in this paragraph would otherwise apply. \begin{example} +\begin{codeblock} +void f(int (&&)[] ); // \#1 +void f(double (&&)[] ); // \#2 +void f(int (&&)[2]); // \#3 + +f( {1} ); // Calls \#1: Better than \#2 due to conversion, better than \#3 due to bounds +f( {1.0} ); // Calls \#2: Identity conversion is better than floating-integral conversion +f( {1.0, 2.0} ); // Calls \#2: Identity conversion is better than floating-integral conversion +f( {1, 2} ); // Calls \#3: Converting to array of known bound is better than to unknown bound, + // and an identity conversion is better than floating-integral conversion +\end{codeblock} +\end{example} +\begin{example} \begin{codeblock} void f1(int); // \#1 void f1(std::initializer_list); // \#2 @@ -2758,16 +2777,9 @@ or, if not that, \item -\tcode{S1} -and -\tcode{S2} -differ only in their qualification conversion and yield similar types -\tcode{T1} -and -\tcode{T2}\iref{conv.qual}, respectively, and the cv-qualification signature of type -\tcode{T1} -is a proper subset of the cv-qualification signature of type -\tcode{T2} +\tcode{S1} and \tcode{S2} differ only in their qualification conversion and +yield similar types \tcode{T1} and \tcode{T2}\iref{conv.qual}, respectively, +where \tcode{T1} can be converted to \tcode{T2} by a qualification conversion \begin{example} \begin{codeblock} int f(const volatile int *); From c0c589881759871b2183105f315d4ddd0d2734be Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Thu, 1 Aug 2019 22:47:19 +0200 Subject: [PATCH 045/312] [expr.const.cast] Clarify pairwise correspondence for P_i. [over.ics.rank] Move cross-reference pointing to [conv.qual]. --- source/expressions.tex | 2 +- source/overloading.tex | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index 6f03206a0d..cc5800a020 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -3985,7 +3985,7 @@ a prvalue of type \tcode{T1} may be explicitly converted to the type \tcode{T2} using a \tcode{const_cast} if, considering the cv-decompositions of both types, -all $P^1_i$ are the same as $P^2_i$. +each $P^1_i$ is the same as $P^2_i$ for all $i$. The result of a \tcode{const_cast} refers to the original entity. \begin{example} \begin{codeblock} diff --git a/source/overloading.tex b/source/overloading.tex index f185be354d..6c463e561b 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -2777,8 +2777,9 @@ or, if not that, \item -\tcode{S1} and \tcode{S2} differ only in their qualification conversion and -yield similar types \tcode{T1} and \tcode{T2}\iref{conv.qual}, respectively, +\tcode{S1} and \tcode{S2} differ only +in their qualification conversion\iref{conv.qual} and +yield similar types \tcode{T1} and \tcode{T2}, respectively, where \tcode{T1} can be converted to \tcode{T2} by a qualification conversion \begin{example} \begin{codeblock} From 47539b965a84f69c548fe043a632af17db3cb315 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 2 Aug 2019 15:49:39 -0700 Subject: [PATCH 046/312] [conv.qual] Move note after the rule that implies it. --- source/expressions.tex | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index cc5800a020..c262d3e483 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -749,11 +749,6 @@ or the resulting $P^3_i$ is different from $P^1_i$ or $P^2_i$, then \tcode{const} is added to every $\cv{}^3_k$ for $0 < k < i$. \end{itemize} -\begin{note} -Given similar types \tcode{T1} and \tcode{T2}, this -construction ensures that -both can be converted to \tcode{T3}. -\end{note} A prvalue of type $\tcode{T}_1$ can be converted to type $\tcode{T}_2$ if the cv-combined type of $\tcode{T}_1$ and $\tcode{T}_2$ is $\tcode{T}_2$. @@ -772,6 +767,11 @@ } \end{codeblock} \end{note} +\begin{note} +Given similar types \tcode{T1} and \tcode{T2}, this +construction ensures that +both can be converted to the cv-combined type of \tcode{T1} and \tcode{T2}. +\end{note} \pnum \begin{note} From f10e3751b39138746b601fa702c9ed9e67777c96 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 2 Aug 2019 15:59:50 -0700 Subject: [PATCH 047/312] [over.ics.rank] Reorder examples to match order of normative text. --- source/overloading.tex | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/source/overloading.tex b/source/overloading.tex index 6c463e561b..9c536171a3 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -2674,6 +2674,17 @@ even if one of the other rules in this paragraph would otherwise apply. \begin{example} \begin{codeblock} +void f1(int); // \#1 +void f1(std::initializer_list); // \#2 +void g1() { f1({42}); } // chooses \#2 + +void f2(std::pair); // \#3 +void f2(std::initializer_list); // \#4 +void g2() { f2({"foo","bar"}); } // chooses \#4 +\end{codeblock} +\end{example} +\begin{example} +\begin{codeblock} void f(int (&&)[] ); // \#1 void f(double (&&)[] ); // \#2 void f(int (&&)[2]); // \#3 @@ -2685,17 +2696,6 @@ // and an identity conversion is better than floating-integral conversion \end{codeblock} \end{example} -\begin{example} -\begin{codeblock} - void f1(int); // \#1 - void f1(std::initializer_list); // \#2 - void g1() { f1({42}); } // chooses \#2 - - void f2(std::pair); // \#3 - void f2(std::initializer_list); // \#4 - void g2() { f2({"foo","bar"}); } // chooses \#4 -\end{codeblock} -\end{example} \item Standard conversion sequence From cd726eed580ece418a3b3aa1c1be6e181980a7fa Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 26 Jul 2019 23:31:04 +0200 Subject: [PATCH 048/312] P1823R0 Remove contracts from C++20 - Remove header from the list in [diff.cpp17.library] --- source/basic.tex | 8 - source/classes.tex | 42 +---- source/compatibility.tex | 1 - source/declarations.tex | 388 --------------------------------------- source/exceptions.tex | 13 -- source/expressions.tex | 4 - source/lex.tex | 9 +- source/lib-intro.tex | 18 +- source/preprocessor.tex | 3 - source/support.tex | 95 ---------- source/templates.tex | 13 -- 11 files changed, 9 insertions(+), 585 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index 1630bf05f3..4142b8c229 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -618,14 +618,6 @@ that is, the default argument or default template argument is subject to the requirements described in this paragraph (recursively); and -\item if \tcode{D} invokes a function with a precondition, -or is a function -that contains an assertion or has a contract condition\iref{dcl.attr.contract}, -it is \impldef{consistency of build level and violation continuation mode} -under which conditions all definitions of \tcode{D} -shall be translated using the same build level -and violation continuation mode; and - \item if \tcode{D} is a class with an implicitly-declared constructor (\ref{class.default.ctor}, \ref{class.copy.ctor}), it is as if the constructor was diff --git a/source/classes.tex b/source/classes.tex index 53fd8e975e..a610a4322c 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -562,8 +562,7 @@ \begin{itemize} \item function body\iref{dcl.fct.def.general}, \item default argument\iref{dcl.fct.default}, -\item \grammarterm{noexcept-specifier}\iref{except.spec}, -\item contract condition\iref{dcl.attr.contract}, or +\item \grammarterm{noexcept-specifier}\iref{except.spec}, or \item default member initializer \end{itemize} within the \grammarterm{member-specification} of the class. @@ -4105,45 +4104,6 @@ A \tcode{consteval} virtual function shall not be overridden by a virtual function that is not \tcode{consteval}. -\pnum -If an overriding function specifies contract conditions\iref{dcl.attr.contract}, -it shall specify the same list of contract conditions as -its overridden functions; -no diagnostic is required -if corresponding conditions will always evaluate to the same value. -Otherwise, it is considered to have -the list of contract conditions from one of its overridden functions; -the names in the contract conditions are bound, -and the semantic constraints are checked, -at the point where the contract conditions appear. -Given a virtual function \tcode{f} -with a contract condition that odr-uses \tcode{*this}\iref{basic.def.odr}, -the class of which \tcode{f} is a direct member -shall be be an unambiguous and accessible base class of any class -in which \tcode{f} is overridden. -If a function overrides more than one function, -all of the overridden functions shall have -the same list of contract conditions\iref{dcl.attr.contract}; -no diagnostic is required -if corresponding conditions will always evaluate to the same value. -\begin{example} -\begin{codeblock} -struct A { - virtual void g() [[expects: x == 0]]; - int x = 42; -}; - -int x = 42; -struct B { - virtual void g() [[expects: x == 0]]; -} - -struct C : A, B { - virtual void g(); // error: preconditions of overridden functions are not the same -}; -\end{codeblock} -\end{example} - \rSec2[class.abstract]{Abstract classes}% \pnum diff --git a/source/compatibility.tex b/source/compatibility.tex index 5f151a0e40..a46b3a9ab6 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -2124,7 +2124,6 @@ \tcode{}, \tcode{}, \tcode{}, -\tcode{}, \tcode{}, \tcode{}, \tcode{}, diff --git a/source/declarations.tex b/source/declarations.tex index 2a5b1caaa3..7a97ab16a2 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -8388,7 +8388,6 @@ \begin{bnf} \nontermdef{attribute-specifier}\br \terminal{[} \terminal{[} \opt{attribute-using-prefix} attribute-list \terminal{]} \terminal{]}\br - contract-attribute-specifier\br alignment-specifier \end{bnf} @@ -8722,393 +8721,6 @@ \indextext{attribute|)}% \indextext{declaration|)} -\rSec2[dcl.attr.contract]{Contract attributes}% -\indextext{attribute!contracts|(} - -\rSec3[dcl.attr.contract.syn]{Syntax} - -\pnum -Contract attributes are used to specify -preconditions, postconditions, and assertions for functions. - -\begin{bnf} -\nontermdef{contract-attribute-specifier}\br - \terminal{[} \terminal{[} \keyword{expects} \opt{contract-level} \terminal{:} conditional-expression \terminal{]} \terminal{]}\br - \terminal{[} \terminal{[} \keyword{ensures} \opt{contract-level} \opt{identifier} \terminal{:} conditional-expression \terminal{]} \terminal{]}\br - \terminal{[} \terminal{[} \keyword{assert} \opt{contract-level} \terminal{:} conditional-expression \terminal{]} \terminal{]} -\end{bnf} - -\begin{bnf} -\nontermdef{contract-level}\br - \keyword{default}\br - \keyword{audit}\br - \keyword{axiom} -\end{bnf} - - -An ambiguity between -a \grammarterm{contract-level} and an \grammarterm{identifier} -is resolved in favor of \grammarterm{contract-level}. - -\pnum -A \grammarterm{contract-attribute-specifier} using \tcode{expects} -is a \defn{precondition}. -It expresses a function's expectation on its arguments and/or -the state of other objects using a predicate -that is intended to hold upon entry into the function. -The attribute may be applied to the function type of a function declaration. - -\pnum -A \grammarterm{contract-attribute-specifier} using \tcode{ensures} -is a \defn{postcondition}. -It expresses a condition that a function should ensure -for the return value and/or the state of objects -using a predicate that is intended to hold upon exit from the function. -The attribute may be applied to the function type of a function declaration. -A postcondition may introduce an identifier to represent -the glvalue result or the prvalue result object of the function. -When the declared return type of a non-templated function -contains a placeholder type, -the optional \grammarterm{identifier} shall only be present in a definition. -\begin{example} -\begin{codeblock} -int f(char * c) - [[ensures res: res > 0 && c != nullptr]]; - -int g(double * p) - [[ensures audit res: res != 0 && p != nullptr && *p <= 0.0]]; - -auto h(int x) - [[ensures res: true]]; // error: cannot name the return value -\end{codeblock} -\end{example} - -\pnum -A \grammarterm{contract-attribute-specifier} using \tcode{assert} -is an \defn{assertion}. -It expresses a condition that is intended to be satisfied -where it appears in a function body. -The attribute may be applied to a null statement\iref{stmt.expr}. -An assertion is checked by evaluating its predicate -as part of the evaluation of the null statement -it applies to. - -\pnum -Preconditions, postconditions, and assertions -are collectively called \defnx{contracts}{contract}. -The \grammarterm{conditional-expression} in a contract -is contextually converted to \tcode{bool}\iref{conv}; -the converted expression is called -the \defnx{predicate}{contract!predicate} of the contract. -\begin{note} -The predicate of a contract is potentially evaluated\iref{basic.def.odr}. -\end{note} - -\pnum -The only side effects of a predicate -that are allowed in a \grammarterm{contract-attribute-specifier} -are modifications of non-volatile objects -whose lifetime began and ended within the evaluation of the predicate. -An evaluation of a predicate that exits via an exception -invokes the function \tcode{std::terminate}\iref{except.terminate}. -The behavior of any other side effect is undefined. -\begin{example} -\begin{codeblock} -void push(int x, queue & q) - [[expects: !q.full()]] - [[ensures: !q.empty()]] -{ - @\commentellip@ - [[assert: q.is_valid()]]; - @\commentellip@ -} - -int min = -42; -constexpr int max = 42; - -constexpr int g(int x) - [[expects: min <= x]] // error - [[expects: x < max]] // OK -{ - @\commentellip@ - [[assert: 2*x < max]]; - [[assert: ++min > 0]]; // undefined behavior - @\commentellip@ -} -\end{codeblock} -\end{example} - -\rSec3[dcl.attr.contract.cond]{Contract conditions} - -\pnum -A \defn{contract condition} is a precondition or a postcondition. -The first declaration of a function shall specify -all contract conditions (if any) of the function. -Subsequent declarations shall either specify no contract conditions -or the same list of contract conditions; -no diagnostic is required -if corresponding conditions will always evaluate to the same value. -The list of contract conditions of a function shall be the same -if the declarations of that function appear in different translation units; -no diagnostic required. -If a friend declaration -is the first declaration of the function in a translation unit -and has a contract condition, -the declaration shall be a definition and -shall be the only declaration of the function in the translation unit. - -\pnum -Two lists of contract conditions are the same -if they consist of the same contract conditions in the same order. -Two contract conditions are the same -if their contract levels are the same and their predicates are the same. -Two predicates contained in \grammarterm{contract-attribute-specifier}{s} -are the same -if they would satisfy the one-definition rule\iref{basic.def.odr} -were they to appear in function definitions, -except for renaming of parameters, -return value identifiers (if any), -and template parameters. - -\pnum -\begin{note} -A function pointer cannot include contract conditions. -\begin{example} -\begin{codeblock} -typedef int (*fpt)() [[ensures r: r != 0]]; // error: contract condition not on a function declaration - -int g(int x) - [[expects: x >= 0]] - [[ensures r: r > x]] -{ - return x+1; -} - -int (*pf)(int) = g; // OK -int x = pf(5); // contract conditions of \tcode{g} are checked -\end{codeblock} -\end{example} -\end{note} - -\pnum -The predicate of a contract condition has the same semantic restrictions -as if it appeared as the first \grammarterm{expression-statement} -in the body of the function it applies to, -except that the return type of the function is -known in a contract condition appertaining to its definition, -even if the return type contains a placeholder type. - -\pnum -A precondition is checked by evaluating its predicate -immediately before starting evaluation of the function body. -\begin{note} -The function body includes -the \grammarterm{function-try-block}\iref{except} and -the \grammarterm{ctor-initializer}\iref{class.base.init}. -\end{note} -A postcondition is checked by evaluating its predicate -immediately before returning control to the caller of the function. -\begin{note} -The lifetime of local variables and temporaries has ended. -Exiting via an exception or via \tcode{longjmp}\iref{csetjmp.syn} -is not considered returning control to the caller of the function. -\end{note} - -\pnum -If a function has multiple preconditions, -their evaluation (if any) will be performed -in the order they appear lexically. -If a function has multiple postconditions, -their evaluation (if any) will be performed -in the order they appear lexically. -\begin{example} -\begin{codeblock} -void f(int * p) - [[expects: p != nullptr]] // \#1 - [[ensures: *p == 1]] // \#3 - [[expects: *p == 0]] // \#2 -{ - *p = 1; -} -\end{codeblock} -\end{example} - -\pnum -If a postcondition odr-uses\iref{basic.def.odr} -a non-reference parameter in its predicate -and the function body makes direct or indirect modifications of -the value of that parameter, -the behavior is undefined. -\begin{example} -\begin{codeblock} -int f(int x) - [[ensures r: r == x]] -{ - return ++x; // undefined behavior -} - -void g(int * p) - [[ensures: p != nullptr]] -{ - *p = 42; // OK, \tcode{p} is not modified -} - -int h(int x) - [[ensures r: r == x]] -{ - potentially_modify(x); // undefined behavior if \tcode{x} is modified - return x; -} -\end{codeblock} -\end{example} - -\rSec3[dcl.attr.contract.check]{Checking contracts} - -\pnum -If the \grammarterm{contract-level} -of a \grammarterm{contract-attribute-specifier} is absent, -it is assumed to be \tcode{default}. -\begin{note} -A \tcode{default} \grammarterm{contract-level} is expected to be used -for those contracts where -the cost of run-time checking is assumed to be -small (or at least not expensive) compared to -the cost of executing the function. -An \tcode{audit} \grammarterm{contract-level} is expected to be used -for those contracts where -the cost of run-time checking is assumed to be -large (or at least significant) compared to -the cost of executing the function. -An \tcode{axiom} \grammarterm{contract-level} is expected to be used -for those contracts that are formal comments -and are not evaluated at run-time. -\end{note} - -\pnum -\begin{note} -Multiple contract conditions may be applied to a function type -with the same or different \grammarterm{contract-level}{s}. -\begin{example} -\begin{codeblock} -int z; - -bool is_prime(int k); - -void f(int x) - [[expects: x > 0]] - [[expects audit: is_prime(x)]] - [[ensures: z > 10]] -{ - @\commentellip@ -} -\end{codeblock} -\end{example} -\end{note} - -\pnum -A translation may be performed -with one of the following \defnx{build levels}{build level}: -\term{off}, \term{default}, or \term{audit}. -A translation with build level set to \term{off} -performs no checking for any contract. -A translation with build level set to \term{default} -performs checking for \tcode{default} contracts. -A translation with build level set to \term{audit} -performs checking for \tcode{default} and \tcode{audit} contracts. -If no build level is explicitly selected, the build level is \term{default}. -The mechanism for selecting the build level is -\impldef{mechanism for selecting the build level}. -The translation of a program consisting of translation units -where the build level is not the same in all translation units -is conditionally-supported. -There should be no programmatic way of setting, modifying, or querying -the build level of a translation unit. - -\pnum -During constant expression evaluation\iref{expr.const}, -only predicates of checked contracts are evaluated. -In other contexts, -it is unspecified whether the predicate for a contract -that is not checked under the current build level is evaluated; -if the predicate of such a contract -would evaluate to \tcode{false}, the behavior is undefined. - -\pnum -The \defn{violation handler} of a program is a function of type -``\opt{\tcode{noexcept}} function of -(lvalue reference to \tcode{const std::contract_violation}) -returning \tcode{void}''. -The violation handler is invoked -when the predicate of a checked contract evaluates to \tcode{false} -(called a \defn{contract violation}). -There should be no programmatic way of -setting or modifying the violation handler. -It is \impldef{establishing of and argument for violation handler} -how the violation handler is established for a program and -how -the \tcode{std::contract_violation}\iref{support.contract.cviol} argument value -is set, -except as specified below. -If a precondition is violated, the source location of the violation is -\impldef{source location of precondition violation}. -\begin{note} -Implementations are encouraged but not required to report the caller site. -\end{note} -If a postcondition is violated, the source location of the violation is -the source location of the function definition. -If an assertion is violated, the source location of the violation is -the source location of the statement to which the assertion is applied. - -\pnum -If a violation handler exits by throwing an exception -and a contract is violated on a call to a function -with a non-throwing exception specification, -then the behavior is as if the exception escaped the function body. -\begin{note} -The function \tcode{std::terminate} is invoked\iref{except.terminate}. -\end{note} -\begin{example} -\begin{codeblock} -void f(int x) noexcept [[expects: x > 0]]; - -void g() { - f(0); // \tcode{std::terminate()} if violation handler throws - @\commentellip@ -} -\end{codeblock} -\end{example} - -\pnum -A translation may be performed with one of the following -\defnx{violation continuation modes}{violation continuation mode}: -\term{off} or \term{on}. -A translation with violation continuation mode set to \term{off} -terminates execution -by invoking the function \tcode{std::terminate}\iref{except.terminate} -after completing the execution of the violation handler. -A translation with a violation continuation mode set to \term{on} -continues execution after completing the execution of the violation handler. -If no continuation mode is explicitly selected, -the default continuation mode is \term{off}. -\begin{note} -A continuation mode set to \term{on} provides the opportunity -to install a logging handler to instrument a pre-existing code base -and fix errors before enforcing checks. -\end{note} -\begin{example} -\begin{codeblock} -void f(int x) [[expects: x > 0]]; - -void g() { - f(0); // \tcode{std::terminate()} after handler if continuation mode is off; - // proceeds after handler if continuation mode is on - @\commentellip@ -} -\end{codeblock} -\end{example} - -\indextext{attribute!contracts|)} - \rSec2[dcl.attr.deprecated]{Deprecated attribute}% \indextext{attribute!deprecated} diff --git a/source/exceptions.tex b/source/exceptions.tex index f51a90e76a..e219237b0b 100644 --- a/source/exceptions.tex +++ b/source/exceptions.tex @@ -1034,19 +1034,6 @@ \tcode{std::atexit} or \tcode{std::at_quick_exit} exits via an exception\iref{support.start.term}, or -\item% -when evaluation of the predicate of a contract\iref{dcl.attr.contract} -exits via an exception, or - -\item% -when the violation handler invoked -for a failed contract condition check\iref{dcl.attr.contract} -on a \tcode{noexcept} function exits via an exception, or - -\item% -when the violation handler has completed after a failed contract check -and the continuation mode is \term{off}, or - \item% when a \grammarterm{throw-expression}\iref{expr.throw} diff --git a/source/expressions.tex b/source/expressions.tex index c262d3e483..2699ce22e0 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -6947,10 +6947,6 @@ its lifetime began within the evaluation of \tcode{e}; \end{itemize} -\item -a checked contract\iref{dcl.attr.contract} -whose predicate evaluates to \tcode{false}; - \item in a \grammarterm{lambda-expression}, a reference to \tcode{this} or to a variable with diff --git a/source/lex.tex b/source/lex.tex index 24dda44cd0..efe5a649f9 100644 --- a/source/lex.tex +++ b/source/lex.tex @@ -659,8 +659,6 @@ \end{floattable} \pnum -\indextext{\idxcode{audit}}% -\indextext{\idxcode{axiom}}% \indextext{\idxcode{import}}% \indextext{\idxcode{final}}% \indextext{\idxcode{module}}% @@ -673,14 +671,13 @@ token as a regular \grammarterm{identifier}. \begin{multicolfloattable}{Identifiers with special meaning}{lex.name.special} -{lll} -\keyword{audit} \\ -\keyword{axiom} \\ -\columnbreak +{llll} \keyword{final} \\ +\columnbreak \keyword{import} \\ \columnbreak \keyword{module} \\ +\columnbreak \keyword{override} \\ \end{multicolfloattable} diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 4e0f17489f..5535113c42 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -609,12 +609,6 @@ \item \expects the conditions (sometimes termed preconditions) that the function assumes to hold whenever it is called. -\begin{example} -An implementation might express such conditions -via an attribute such as \tcode{[[expects]]}\iref{dcl.attr.contract}. -However, some such conditions might not lend themselves -to expression via code. -\end{example} \item \effects the actions performed by the function. @@ -1229,13 +1223,12 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\columnbreak \tcode{} \\ +\columnbreak \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -1253,8 +1246,8 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\columnbreak \tcode{} \\ +\columnbreak \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -1272,8 +1265,8 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\columnbreak \tcode{} \\ +\columnbreak \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -2629,9 +2622,8 @@ A translation unit shall not \tcode{\#define} or \tcode{\#undef} names lexically identical to keywords, -to the identifiers listed in \tref{lex.name.special}, -to the \grammarterm{attribute-token}{s} described in~\ref{dcl.attr}, or -to the identifiers \tcode{expects} or \tcode{ensures}, +to the identifiers listed in \tref{lex.name.special}, or +to the \grammarterm{attribute-token}{s} described in~\ref{dcl.attr}, except that the names \tcode{likely} and \tcode{unlikely} may be defined as function-like macros~\iref{cpp.replace}. diff --git a/source/preprocessor.tex b/source/preprocessor.tex index c6a71cff9e..0aaa9ba838 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -299,11 +299,8 @@ {ll} \topline \lhdr{Attribute} & \rhdr{Value} \\ \rowsep -\tcode{assert} & \tcode{201806L} \\ \tcode{carries_dependency} & \tcode{200809L} \\ \tcode{deprecated} & \tcode{201309L} \\ -\tcode{ensures} & \tcode{201806L} \\ -\tcode{expects} & \tcode{201806L} \\ \tcode{fallthrough} & \tcode{201603L} \\ \tcode{likely} & \tcode{201803L} \\ \tcode{maybe_unused} & \tcode{201603L} \\ diff --git a/source/support.tex b/source/support.tex index dcb566345d..29a0def9a1 100644 --- a/source/support.tex +++ b/source/support.tex @@ -17,7 +17,6 @@ functions supporting start and termination of a \Cpp{} program, support for dynamic memory management, support for dynamic type identification, -support for contract violation handling, support for exception processing, support for initializer lists, and other runtime support, as summarized in \tref{support.summary}. @@ -31,7 +30,6 @@ \ref{support.start.term} & Start and termination & \tcode{} \\ \rowsep \ref{support.dynamic} & Dynamic memory management & \tcode{} \\ \rowsep \ref{support.rtti} & Type identification & \tcode{} \\ \rowsep -\ref{support.contract} & Contract violation handling & \tcode{} \\ \rowsep \ref{support.exception} & Exception handling & \tcode{} \\ \rowsep \ref{support.initlist} & Initializer lists & \tcode{} \\ \rowsep \ref{cmp} & Comparisons & \tcode{} \\ \rowsep @@ -3156,99 +3154,6 @@ An \impldef{return value of \tcode{bad_typeid::what}} \ntbs{}. \end{itemdescr} -\rSec1[support.contract]{Contract violation handling} - -\rSec2[contract.syn]{Header \tcode{} synopsis} - -The header \tcode{} defines a type -for reporting information about contract violations -generated by the implementation. -\begin{codeblock} -namespace std { - class contract_violation; -} -\end{codeblock} - -\rSec2[support.contract.cviol]{Class \tcode{contract_violation}} -\indexlibrary{\idxcode{contract_violation}}% - -\begin{codeblock} -namespace std { - class contract_violation { - public: - uint_least32_t line_number() const noexcept; - string_view file_name() const noexcept; - string_view function_name() const noexcept; - string_view comment() const noexcept; - string_view assertion_level() const noexcept; - }; -} -\end{codeblock} - -\pnum -The class \tcode{contract_violation} describes information about -a contract violation generated by the implementation. - -\indexlibrarymember{line_number}{contract_violation}% -\begin{itemdecl} -uint_least32_t line_number() const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns The source code location -where the contract violation happened\iref{dcl.attr.contract}. -If the location is unknown, an implementation may return \tcode{0}. -\end{itemdescr} - -\indexlibrarymember{file_name}{contract_violation}% -\begin{itemdecl} -string_view file_name() const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns The source file name -where the contract violation happened\iref{dcl.attr.contract}. -If the file name is unknown, -an implementation may return \tcode{string_view\{\}}. -\end{itemdescr} - -\indexlibrarymember{function_name}{contract_violation}% -\begin{itemdecl} -string_view function_name() const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns The name of the function -where the contract violation happened\iref{dcl.attr.contract}. -If the function name is unknown, -an implementation may return \tcode{string_view\{\}}. -\end{itemdescr} - -\indexlibrarymember{comment}{contract_violation}% -\begin{itemdecl} -string_view comment() const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns Implementation-defined text describing -the predicate of the violated contract. -\end{itemdescr} - -\indexlibrarymember{assertion_level}{contract_violation}% -\begin{itemdecl} -string_view assertion_level() const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns Text describing the \grammarterm{assertion-level} -of the violated contract. -\end{itemdescr} - \rSec1[support.exception]{Exception handling} \pnum diff --git a/source/templates.tex b/source/templates.tex index 882943ca0b..6d9b7ac760 100644 --- a/source/templates.tex +++ b/source/templates.tex @@ -5086,11 +5086,6 @@ \mname{func}\iref{dcl.fct.def.general}, where any enclosing function is a template, a member of a class template, or a generic lambda, -\item -the \grammarterm{identifier} introduced in -a postcondition\iref{dcl.attr.contract} to represent the result of -a templated function whose declared return type contains a placeholder type, - \item a \grammarterm{template-id} @@ -6800,14 +6795,6 @@ \end{codeblock} \end{example} -\pnum -\begin{note} -For an explicit specialization of a function template, -the contract conditions\iref{dcl.attr.contract} -of the explicit specialization -are independent of those of the primary template. -\end{note} - \pnum An explicit specialization of a static data member of a template or an explicit specialization of a static data member template is a From fb1528d7207aaf1650c59ebcc34adfb39e58d258 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Wed, 24 Jul 2019 19:48:01 +0200 Subject: [PATCH 049/312] P1143R2 Adding the constinit keyword --- source/compatibility.tex | 3 +++ source/declarations.tex | 35 +++++++++++++++++++++++++++++++++-- source/lex.tex | 9 +++++---- source/preprocessor.tex | 1 + 4 files changed, 42 insertions(+), 6 deletions(-) diff --git a/source/compatibility.tex b/source/compatibility.tex index a46b3a9ab6..a6c50406ab 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -1819,6 +1819,9 @@ The \tcode{consteval} keyword is added to declare immediate functions\iref{dcl.constexpr}. \item +The \keyword{constinit} keyword is added to +prevent unintended dynamic initialization\iref{dcl.constinit}. +\item The \tcode{co_await}, \tcode{co_yield}, and \tcode{co_return} keywords are added to enable the definition of coroutines \iref{dcl.fct.def.coroutine}. \item diff --git a/source/declarations.tex b/source/declarations.tex index 7a97ab16a2..8de7733785 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -257,6 +257,7 @@ \keyword{typedef}\br \keyword{constexpr}\br \keyword{consteval}\br + \keyword{constinit}\br \keyword{inline} \end{bnf} @@ -276,8 +277,9 @@ Each \grammarterm{decl-specifier} shall appear at most once in a complete \grammarterm{decl-specifier-seq}, except that \tcode{long} may appear twice. -The \tcode{constexpr} and \tcode{consteval} \grammarterm{decl-specifier}{s} -shall not both appear in a \grammarterm{decl-specifier-seq}. +At most one of +the \keyword{constexpr}, \keyword{consteval}, and \keyword{constinit} keywords +shall appear in a \grammarterm{decl-specifier-seq}. \pnum \indextext{ambiguity!declaration type}% @@ -1015,6 +1017,35 @@ \end{codeblock} \end{example} +\rSec2[dcl.constinit]{The \tcode{constinit} specifier} +\indextext{specifier!\idxcode{constinit}} + +\pnum +The \keyword{constinit} specifier shall be applied only +to a declaration of a variable with static or thread storage duration. +If the specifier is applied to any declaration of a variable, +it shall be applied to the initializing declaration. +No diagnostic is required if no \keyword{constinit} declaration +is reachable at the point of the initializing declaration. + +\pnum +If a variable declared with the \keyword{constinit} specifier has +dynamic initialization\iref{basic.start.dynamic}, the program is ill-formed. +\begin{note} +The \keyword{constinit} specifier ensures that the variable +is initialized during static initialization\iref{basic.start.static}. +\end{note} + +\pnum +\begin{example} +\begin{codeblock} +const char * g() { return "dynamic initialization"; } +constexpr const char * f(bool p) { return p ? "constant initializer" : g(); } +constinit const char * c = f(true); // OK +constinit const char * d = f(false); // ill-formed +\end{codeblock} +\end{example} + \rSec2[dcl.inline]{The \tcode{inline} specifier}% \indextext{specifier!\idxcode{inline}} diff --git a/source/lex.tex b/source/lex.tex index efe5a649f9..c5db1f11da 100644 --- a/source/lex.tex +++ b/source/lex.tex @@ -732,8 +732,9 @@ \keyword{concept} \\ \keyword{const} \\ \keyword{consteval} \\ -\columnbreak \keyword{constexpr} \\ +\columnbreak +\keyword{constinit} \\ \keyword{const_cast} \\ \keyword{continue} \\ \keyword{co_await} \\ @@ -749,8 +750,8 @@ \keyword{enum} \\ \keyword{explicit} \\ \keyword{export} \\ -\columnbreak \keyword{extern} \\ +\columnbreak \keyword{false} \\ \keyword{float} \\ \keyword{for} \\ @@ -766,9 +767,9 @@ \keyword{noexcept} \\ \keyword{nullptr} \\ \keyword{operator} \\ -\columnbreak \keyword{private} \\ \keyword{protected} \\ +\columnbreak \keyword{public} \\ \keyword{register} \\ \keyword{reinterpret_cast} \\ @@ -783,10 +784,10 @@ \keyword{struct} \\ \keyword{switch} \\ \keyword{template} \\ -\columnbreak \keyword{this} \\ \keyword{thread_local} \\ \keyword{throw} \\ +\columnbreak \keyword{true} \\ \keyword{try} \\ \keyword{typedef} \\ diff --git a/source/preprocessor.tex b/source/preprocessor.tex index 0aaa9ba838..cdac082d47 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -1685,6 +1685,7 @@ \defnxname{cpp_char8_t} & \tcode{201811L} \\ \rowsep \defnxname{cpp_conditional_explicit} & \tcode{201806L} \\ \rowsep \defnxname{cpp_constexpr} & \tcode{201907L} \\ \rowsep +\defnxname{cpp_constinit} & \tcode{201907L} \\ \rowsep \defnxname{cpp_coroutines} & \tcode{201902L} \\ \rowsep \defnxname{cpp_decltype} & \tcode{200707L} \\ \rowsep \defnxname{cpp_decltype_auto} & \tcode{201304L} \\ \rowsep From 258be1c10d904ed8e2f43b63e011fa68e413f7ec Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 23 Jul 2019 17:07:59 +0200 Subject: [PATCH 050/312] P1452R2 On the non-uniform semantics of return-type-requirements --- source/expressions.tex | 23 +++++------------------ source/iterators.tex | 6 +++--- source/ranges.tex | 4 ++-- source/templates.tex | 2 +- 4 files changed, 11 insertions(+), 24 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index 2699ce22e0..a31e25cc1a 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -2505,7 +2505,7 @@ template concept R = requires (T i) { typename T::type; - {*i} -> const typename T::type&; + {*i} -> ConvertibleTo; }; \end{codeblock} A \grammarterm{requires-expression} can also be used in a @@ -2645,7 +2645,6 @@ \begin{bnf} \nontermdef{return-type-requirement}\br - trailing-return-type\br \terminal{->} type-constraint \end{bnf} @@ -2673,19 +2672,8 @@ into the \grammarterm{return-type-requirement} is performed. \item -If the \grammarterm{return-type-requirement} is a -\grammarterm{trailing-return-type}\iref{dcl.decl}, -%%% FIXME: is -> shall be -\tcode{E} is implicitly convertible to -the type named by the \grammarterm{trailing-return-type}. -If conversion fails, the enclosing \grammarterm{requires-expression} -is \tcode{false}. - -\item -If the \grammarterm{return-type-requirement} -is of the form \tcode{->} \grammarterm{type-constraint}, then -the contextually-determined type being constrained -is \tcode{decltype((E))}. +The contextually-determined type being constrained +by the \grammarterm{type-constraint} is \tcode{decltype((E))}. The immediately-declared constraint\iref{temp} of \tcode{decltype((E))} shall be satisfied. \begin{example} @@ -2722,15 +2710,14 @@ \begin{codeblock} template concept C2 = requires(T x) { - {*x} -> typename T::inner; + {*x} -> Same; }; \end{codeblock} The \grammarterm{compound-requirement} in \tcode{C2} requires that \tcode{*x} is a valid expression, that \tcode{typename T::inner} is a valid type, and -that \tcode{*x} is implicitly convertible to -\tcode{typename T::inner}. +that \tcode{Same} is satisfied. \begin{codeblock} template concept C3 = diff --git a/source/iterators.tex b/source/iterators.tex index a1e55fe57d..79aefc84c1 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -880,7 +880,7 @@ is_lvalue_reference_v> && Same>, typename readable_traits::value_type> && requires(I i) { - { i++ } -> const I&; + { i++ } -> ConvertibleTo; { *i++ } -> Same>; }; @@ -888,7 +888,7 @@ concept @\placeholder{cpp17-bidirectional-iterator}@ = @\placeholder{cpp17-forward-iterator}@ && requires(I i) { { --i } -> Same; - { i-- } -> const I&; + { i-- } -> ConvertibleTo; { *i-- } -> Same>; }; @@ -902,7 +902,7 @@ { n + i } -> Same; { i - n } -> Same; { i - i } -> Same; - { i[n] } -> iter_reference_t; + { i[n] } -> ConvertibleTo>; }; \end{codeblock} diff --git a/source/ranges.tex b/source/ranges.tex index 5872a5dac8..63afb6071e 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1125,8 +1125,8 @@ requires DerivedFrom, integral_constant>; typename tuple_element_t<0, remove_const_t>; typename tuple_element_t<1, remove_const_t>; - { get<0>(t) } -> const tuple_element_t<0, T>&; - { get<1>(t) } -> const tuple_element_t<1, T>&; + { get<0>(t) } -> ConvertibleTo&>; + { get<1>(t) } -> ConvertibleTo&>; }; template diff --git a/source/templates.tex b/source/templates.tex index 6d9b7ac760..f420a25061 100644 --- a/source/templates.tex +++ b/source/templates.tex @@ -3924,7 +3924,7 @@ \begin{codeblock} template concept C = requires(T x) { - { x == x } -> bool; + { x == x } -> ConvertibleTo; }; template From 274108e554cdccfe98833efd1d42c4d03d9bc0be Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 23 Jul 2019 13:16:48 +0200 Subject: [PATCH 051/312] P1152R4 Deprecating volatile [expr.ass] Rephrase volatile restriction for simple-assignments to improve clarity. --- source/declarations.tex | 8 ++++++++ source/expressions.tex | 20 +++++++++++++++++--- source/future.tex | 21 +++++++++++++++++++++ 3 files changed, 46 insertions(+), 3 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index 8de7733785..5ccc92a5d8 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -3350,6 +3350,8 @@ \indextext{parameter!\idxcode{void}}% Except for this special case, a parameter shall not have type \term{cv} \tcode{void}. +A parameter with \tcode{volatile}-qualified type is deprecated; +see~\ref{depr.volatile.type}. If the \grammarterm{parameter-declaration-clause} \indextext{argument type!unknown}% @@ -3509,6 +3511,10 @@ There shall be no arrays of functions, although there can be arrays of pointers to functions. +\pnum +A \tcode{volatile}-qualified return type is deprecated; +see~\ref{depr.volatile.type}. + \pnum Types shall not be defined in return or parameter types. @@ -6521,6 +6527,8 @@ the \grammarterm{decl-specifier-seq} and \placeholder{S} consist of the \grammarterm{storage-class-specifier}{s} of the \grammarterm{decl-specifier-seq} (if any). +A \cv{} that includes \tcode{volatile} is deprecated; +see~\ref{depr.volatile.type}. First, a variable with a unique name \exposid{e} is introduced. If the \grammarterm{assignment-expression} in the \grammarterm{initializer} has array type \tcode{A} and no \grammarterm{ref-qualifier} is present, diff --git a/source/expressions.tex b/source/expressions.tex index a31e25cc1a..d887d1a23f 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -3309,8 +3309,10 @@ \end{note} The operand shall be a modifiable lvalue. The type of the operand shall be an arithmetic type other than \cv{}~\tcode{bool}, -or a pointer to a complete object type. The value -of the operand object is modified by adding \tcode{1} to it. +or a pointer to a complete object type. +An operand with \tcode{volatile}-qualified type is deprecated; +see~\ref{depr.volatile.type}. +The value of the operand object is modified by adding \tcode{1} to it. The \indextext{value computation}% value computation of the \tcode{++} expression is sequenced before the @@ -4265,6 +4267,8 @@ The operand shall be a modifiable lvalue. The type of the operand shall be an arithmetic type other than \cv{}~\tcode{bool}, or a pointer to a completely-defined object type. +An operand with \tcode{volatile}-qualified type is deprecated; +see~\ref{depr.volatile.type}. The result is the updated operand; it is an lvalue, and it is a bit-field if the operand is a bit-field. The expression \tcode{++x} is equivalent to \tcode{x+=1}. @@ -6690,10 +6694,20 @@ resulting value of the bit-field is \impldefplain{value of bit-field that cannot represent!assigned value}. +\pnum +A simple assignment whose left operand is of +a \tcode{volatile}-qualified non-class type +is deprecated\iref{depr.volatile.type} +unless the assignment is either a discarded-value expression or +appears in an unevaluated context. + \pnum The behavior of an expression of the form \tcode{E1 \placeholder{op}= E2} is equivalent to \tcode{E1 = E1 \placeholder{op} E2} except -that \tcode{E1} is evaluated only once. In \tcode{+=} and \tcode{-=}, +that \tcode{E1} is evaluated only once. +Such expressions are deprecated +if \tcode{E1} has \tcode{volatile}-qualified type; see~\ref{depr.volatile.type}. +In \tcode{+=} and \tcode{-=}, \tcode{E1} shall either have arithmetic type or be a pointer to a possibly cv-qualified completely-defined object type. In all other cases, \tcode{E1} shall have arithmetic type. diff --git a/source/future.tex b/source/future.tex index ba0b570eb3..fa77d6ed58 100644 --- a/source/future.tex +++ b/source/future.tex @@ -91,6 +91,27 @@ \end{codeblock} \end{example} +\rSec1[depr.volatile.type]{Deprecated \tcode{volatile} types} + +\pnum +Postfix \tcode{++} and \tcode{\dcr} expressions\iref{expr.post.incr} and +prefix \tcode{++} and \tcode{\dcr} expressions\iref{expr.pre.incr} +of \tcode{volatile}-qualified arithmetic and pointer types are deprecated. + +\pnum +Certain assignments +where the left operand is a \tcode{volatile}-qualified non-class type +are deprecated; see~\ref{expr.ass}. + +\pnum +A function type\iref{dcl.fct} +with a parameter with \tcode{volatile}-qualified type or +with a \tcode{volatile}-qualified return type is deprecated. + +\pnum +A structured binding\iref{dcl.struct.bind} of a \tcode{volatile}-qualified type +is deprecated. + \rSec1[depr.static.constexpr]{Redeclaration of \tcode{static constexpr} data members} \pnum From 33d0c4e03451191c3274384f95691ebd65324801 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 23 Jul 2019 12:40:18 +0200 Subject: [PATCH 052/312] P1771R1 [[nodiscard]] for constructors [cpp.predefined] Value of __has_cpp_attribute(nodiscard) unchanged; it was already changed by P1301R4 (CWG Motion 7). --- source/declarations.tex | 34 ++++++++++++++++++++++++++++++---- 1 file changed, 30 insertions(+), 4 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index 5ccc92a5d8..2af63e6ff4 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -9004,12 +9004,26 @@ or with different \grammarterm{attribute-argument-clause}s) are allowed. +\pnum +A \defnadj{nodiscard}{type} is +a (possibly cv-qualified) class or enumeration type +marked \tcode{nodiscard} in a reachable declaration. +A \defnadj{nodiscard}{call} is either +\begin{itemize} +\item + a function call expression\iref{expr.call} + that calls a function declared \tcode{nodiscard} in a reachable declaration or + whose return type is a nodiscard type, or +\item + an explicit type + conversion~(\ref{expr.static.cast}, \ref{expr.cast}, \ref{expr.type.conv}) + that constructs an object through a constructor declared \tcode{nodiscard}, or + that initializes an object of a nodiscard type. +\end{itemize} + \pnum \begin{note} -A nodiscard call is a function call expression that -calls a function previously declared \tcode{nodiscard}, or -whose return type is a possibly cv-qualified class or enumeration type -marked \tcode{nodiscard}. Appearance of a nodiscard call as +Appearance of a nodiscard call as a potentially-evaluated discarded-value expression\iref{expr.prop} is discouraged unless explicitly cast to \tcode{void}. Implementations should issue a warning in such cases. @@ -9024,10 +9038,22 @@ \pnum \begin{example} \begin{codeblock} +struct [[nodiscard]] my_scopeguard { @\commentellip@ }; +struct my_unique { + my_unique() = default; // does not acquire resource + [[nodiscard]] my_unique(int fd) { @\commentellip@ } // acquires resource + ~my_unique() noexcept { @\commentellip@ } // releases resource, if any + @\commentellip@ +}; struct [[nodiscard]] error_info { @\commentellip@ }; error_info enable_missile_safety_mode(); void launch_missiles(); void test_missiles() { + my_scopeguard(); // warning encouraged + void(my_scopeguard()), // warning not encouraged, cast to \tcode{void} + launch_missiles(); // comma operator, statement continues + my_unique(42); // warning encouraged + my_unique(); // warning not encouraged enable_missile_safety_mode(); // warning encouraged launch_missiles(); } From 813a4300a036f12d5ff6b82965b83a8e87b1ae8d Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 2 Aug 2019 16:55:56 -0700 Subject: [PATCH 053/312] [dcl.attr.nodiscard] Fix vexing-parse bug in example. Make sure the missiles actually get launched, not merely redeclared. --- source/declarations.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/declarations.tex b/source/declarations.tex index 2af63e6ff4..ff908c29ed 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -9050,7 +9050,7 @@ void launch_missiles(); void test_missiles() { my_scopeguard(); // warning encouraged - void(my_scopeguard()), // warning not encouraged, cast to \tcode{void} + (void)my_scopeguard(), // warning not encouraged, cast to \tcode{void} launch_missiles(); // comma operator, statement continues my_unique(42); // warning encouraged my_unique(); // warning not encouraged From eacba785a47e7329209a4bf1686e173293099518 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Wed, 24 Jul 2019 22:18:58 +0200 Subject: [PATCH 054/312] P1814R0 Class template argument deduction for alias template - fixed one f' / f1' vs. f1' / f2' confusion in the example --- source/declarations.tex | 11 +++- source/overloading.tex | 135 ++++++++++++++++++++++++++++++++++++++-- source/preprocessor.tex | 2 +- 3 files changed, 142 insertions(+), 6 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index ff908c29ed..f374e50003 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -1384,7 +1384,16 @@ \opt{\tcode{typename}} \opt{\grammarterm{nested-name-specifier}} \grammarterm{template-name} is a placeholder for a deduced class type\iref{dcl.type.class.deduct}. -The \grammarterm{template-name} shall name a class template. +The \grammarterm{nested-name-specifier}, if any, shall be non-dependent and +the \grammarterm{template-name} shall name a deducible template. +A deducible template is either a class template or +an alias template whose \grammarterm{defining-type-id} is of the form +\begin{ncsimplebnf} +\opt{\keyword{typename}} \opt{nested-name-specifier} \opt{\keyword{template}} simple-template-id +\end{ncsimplebnf} +where the \grammarterm{nested-name-specifier} (if any) is non-dependent and +the \grammarterm{template-name} of the \grammarterm{simple-template-id} +names a deducible template. \begin{note} An injected-class-name is never interpreted as a \grammarterm{template-name} in contexts where class template argument deduction would be performed\iref{temp.local}. diff --git a/source/overloading.tex b/source/overloading.tex index 9c536171a3..583758df66 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1499,7 +1499,8 @@ \pnum When resolving a placeholder for a deduced class type\iref{dcl.type.class.deduct} where the \grammarterm{template-name} names a primary class template \tcode{C}, -a set of functions and function templates is formed comprising: +a set of functions and function templates, called the guides of \tcode{C}, +is formed comprising: \begin{itemize} \item If \tcode{C} is defined, @@ -1569,12 +1570,74 @@ from a hypothetical constructor $\tcode{C}(\tcode{T}_1, \dotsc, \tcode{T}_n)$, where $\tcode{T}_i$ is the declared type of the element $e_i$. +\pnum +When resolving a placeholder for a deduced class type\iref{dcl.type.simple} +where the \grammarterm{template-name} names an alias template \tcode{A} +whose \grammarterm{defining-type-id} +is a \grammarterm{simple-template-id} \tcode{B}, +the guides of \tcode{A} are the set of functions or function templates +formed as follows. +For each function or function template \tcode{f} in the guides of \tcode{B}, +form a function or function template \tcode{f'} +according to the following procedure and add it to the set: +\begin{itemize} +\item + Deduce the template arguments of the return type of \tcode{f} + from \tcode{B} according to the process in \ref{temp.deduct.type} + with the exception that deduction does not fail + if not all template arguments are deduced. + Let \tcode{g} denote the result of substituting + these deductions into \tcode{f}. + If the substitution fails, no \tcode{f'} is produced. + Form the function or function template \tcode{f'} as follows: + \begin{itemize} + \item + The function type of \tcode{f'} is the function type of \tcode{g}. + \item + If \tcode{f} is a function template, + the template parameter list of \tcode{f'} consists of + all the template parameters of \tcode{A} + (including their default template arguments) + that appear in the above deductions or + (recursively) in their default template arguments, + followed by the template parameters of \tcode{f} that were not deduced + (including their default template arguments). + \item + The associated constraints\iref{temp.constr.decl} are + the conjunction of the associated constraints of \tcode{g} and + a constraint that is satisfied if and only if + the arguments of \tcode{A} are deducible (see below) from the return type. + \end{itemize} +\item + If \tcode{f} is a copy deduction candidate\iref{over.match.class.deduct}, + then \tcode{f'} is considered to be so as well. +\item + If \tcode{f} was generated + from a deduction-guide\iref{over.match.class.deduct}, + then \tcode{f'} is considered to be so as well. +\item + The \grammarterm{explicit-specifier} of \tcode{f'} is + the \grammarterm{explicit-specifier} of g (if any). +\end{itemize} + +\pnum +The arguments of a template \tcode{A} are said to be +deducible from a type \tcode{T} if, given a class template +\begin{codeblock} +template class AA; +\end{codeblock} +with a single partial specialization +whose template parameter list is that of \tcode{A} and +whose template argument list is a specialization of \tcode{A} +with the template argument list of \tcode{A}\iref{temp.dep.type}, +\tcode{AA} matches the partial specialization. + \pnum Initialization and overload resolution are performed as described in \ref{dcl.init} and \ref{over.match.ctor}, \ref{over.match.copy}, or \ref{over.match.list} (as appropriate for the type of initialization performed) for an object of a hypothetical class type, where -the selected functions and function templates are considered to be the +the guides of the template named by the placeholder are considered to be the constructors of that class type for the purpose of forming an overload set, and the initializer is provided by the context in which class template argument deduction was performed. @@ -1582,8 +1645,9 @@ (considering initializer-list constructors) is omitted if the initializer list consists of a single expression of type \cv{}~\tcode{U}, -where \tcode{U} is a specialization of \tcode{C} or -a class derived from a specialization of \tcode{C}. +where \tcode{U} is a specialization of the class template +for which the placeholder names a specialization or +a class derived therefrom. If the function or function template was generated from a constructor or \grammarterm{deduction-guide} that had an \grammarterm{explicit-specifier}, @@ -1661,6 +1725,69 @@ E e1 = {1, 2}; // OK, \tcode{E} deduced \end{codeblock} +\end{example} + +\pnum +\begin{example} +\begin{codeblock} +template struct C { + C(T, U); // \#1 +}; +template + C(T, U) -> C>; // \#2 + +template using A = C; +template using B = A; + +int i{}; +double d{}; +A a1(&i, &i); // deduces \tcode{A} +A a2(i, i); // error: cannot deduce \tcode{V *} from \tcode{i} +A a3(&i, &d); // error: \#1: cannot deduce \tcode{(V*, V*)} from \tcode{(int *, double *)} + // \#2: cannot deduce \tcode{A} from \tcode{C} +B b1(&i, &i); // deduces \tcode{B} +B b2(&d, &d); // error: cannot deduce \tcode{B} from \tcode{C} +\end{codeblock} +Possible exposition-only implementation of the above procedure: +\begin{codeblock} +// The following concept ensures a specialization of \tcode{A} is deduced. +template class AA; +template class AA> { }; +template concept deduces_A = requires { sizeof(AA); }; + +// \tcode{f1} is formed from the constructor \#1 of \tcode{C}, generating the following function template +template + auto f1(T, U) -> C; + +// Deducing arguments for \tcode{C} from \tcode{C} deduces \tcode{T} as \tcode{V *} and \tcode{U} as \tcode{V *}; +// \tcode{f1'} is obtained by transforming \tcode{f1} as described by the above procedure. +template requires deduces_A> + auto f1_prime(V *, V*) -> C; + +// \tcode{f2} is formed the deduction-guide \#2 of \tcode{C} +template auto f2(T, U) -> C>; + +// Deducing arguments for \tcode{C>} from \tcode{C} deduces \tcode{T} as \tcode{V *}; +// \tcode{f2'} is obtained by transforming \tcode{f2} as described by the above procedure. +template + requires deduces_A>> + auto f2_prime(V *, U) -> C>; + +// The following concept ensures a specialization of \tcode{B} is deduced. +template class BB; +template class BB> { }; +template concept deduces_B = requires { sizeof(BB); }; + +// The guides for \tcode{B} derived from the above \tcode{f1'} and \tcode{f2'} for \tcode{A} are as follows: +template + requires deduces_A> && deduces_B> + auto f1_prime_for_B(W *, W *) -> C; + +template + requires deduces_A>> && + deduces_B>> + auto f2_prime_for_B(W *, U) -> C>; +\end{codeblock} \end{example}% \indextext{overloading!argument lists|)}% \indextext{overloading!candidate functions|)} diff --git a/source/preprocessor.tex b/source/preprocessor.tex index cdac082d47..cd84ee822f 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -1689,7 +1689,7 @@ \defnxname{cpp_coroutines} & \tcode{201902L} \\ \rowsep \defnxname{cpp_decltype} & \tcode{200707L} \\ \rowsep \defnxname{cpp_decltype_auto} & \tcode{201304L} \\ \rowsep -\defnxname{cpp_deduction_guides} & \tcode{201703L} \\ \rowsep +\defnxname{cpp_deduction_guides} & \tcode{201907L} \\ \rowsep \defnxname{cpp_delegating_constructors} & \tcode{200604L} \\ \rowsep \defnxname{cpp_enumerator_attributes} & \tcode{201411L} \\ \rowsep \defnxname{cpp_fold_expressions} & \tcode{201603L} \\ \rowsep From 269e7ed913fc83bc52e292694d9fddea3d8b5d5e Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 2 Aug 2019 11:07:31 +0200 Subject: [PATCH 055/312] Cleanup index entries around 'alias template'. --- source/declarations.tex | 2 +- source/overloading.tex | 1 + source/templates.tex | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index f374e50003..40cce37772 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -1386,7 +1386,7 @@ a deduced class type\iref{dcl.type.class.deduct}. The \grammarterm{nested-name-specifier}, if any, shall be non-dependent and the \grammarterm{template-name} shall name a deducible template. -A deducible template is either a class template or +A \defnadj{deducible}{template} is either a class template or an alias template whose \grammarterm{defining-type-id} is of the form \begin{ncsimplebnf} \opt{\keyword{typename}} \opt{nested-name-specifier} \opt{\keyword{template}} simple-template-id diff --git a/source/overloading.tex b/source/overloading.tex index 583758df66..a8facb9f58 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1620,6 +1620,7 @@ the \grammarterm{explicit-specifier} of g (if any). \end{itemize} +\indextext{template!deducible arguments of}% \pnum The arguments of a template \tcode{A} are said to be deducible from a type \tcode{T} if, given a class template diff --git a/source/templates.tex b/source/templates.tex index f420a25061..1e8c3c3d42 100644 --- a/source/templates.tex +++ b/source/templates.tex @@ -3831,7 +3831,7 @@ \pnum A \grammarterm{template-declaration} in which the \grammarterm{declaration} is an \grammarterm{alias-declaration}\iref{dcl.dcl} declares the -\grammarterm{identifier} to be an \defn{alias template}. +\grammarterm{identifier} to be an \defnadj{alias}{template}. An alias template is a name for a family of types. The name of the alias template is a \grammarterm{template-name}. From 6e845457bfd83f20c2f61bf4015afcd96cbd0cec Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 2 Aug 2019 17:17:52 -0700 Subject: [PATCH 056/312] [over.match.class.deduct] Fix failure to handle the case where a deducible alias template's defining-type-id contains a nested-name-specifier (or 'typename' or 'template' keywords). --- source/declarations.tex | 2 +- source/overloading.tex | 18 ++++++++++++------ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index 40cce37772..d2877d5fcb 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -1387,7 +1387,7 @@ The \grammarterm{nested-name-specifier}, if any, shall be non-dependent and the \grammarterm{template-name} shall name a deducible template. A \defnadj{deducible}{template} is either a class template or -an alias template whose \grammarterm{defining-type-id} is of the form +is an alias template whose \grammarterm{defining-type-id} is of the form \begin{ncsimplebnf} \opt{\keyword{typename}} \opt{nested-name-specifier} \opt{\keyword{template}} simple-template-id \end{ncsimplebnf} diff --git a/source/overloading.tex b/source/overloading.tex index a8facb9f58..dcf56563da 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1572,18 +1572,24 @@ \pnum When resolving a placeholder for a deduced class type\iref{dcl.type.simple} -where the \grammarterm{template-name} names an alias template \tcode{A} -whose \grammarterm{defining-type-id} -is a \grammarterm{simple-template-id} \tcode{B}, -the guides of \tcode{A} are the set of functions or function templates +where the \grammarterm{template-name} names an alias template \tcode{A}, +the \grammarterm{defining-type-id} must be of the form +\begin{ncsimplebnf} +\opt{\keyword{typename}} \opt{nested-name-specifier} \opt{\keyword{template}} simple-template-id +\end{ncsimplebnf} +as specified in \ref{dcl.type.simple}. +The guides of \tcode{A} are the set of functions or function templates formed as follows. -For each function or function template \tcode{f} in the guides of \tcode{B}, +For each function or function template \tcode{f} in the guides of +the template named by the \grammarterm{simple-template-id} +of the \grammarterm{defining-type-id}, form a function or function template \tcode{f'} according to the following procedure and add it to the set: \begin{itemize} \item Deduce the template arguments of the return type of \tcode{f} - from \tcode{B} according to the process in \ref{temp.deduct.type} + from the \grammarterm{defining-type-id} of \tcode{A} + according to the process in \ref{temp.deduct.type} with the exception that deduction does not fail if not all template arguments are deduced. Let \tcode{g} denote the result of substituting From 7226ced32fe3cda28eb05f044985427684397128 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 2 Aug 2019 17:26:53 -0700 Subject: [PATCH 057/312] [over.match.class.deduct] Switch from imperative to passive, and clarify what happens if the various 'if' conditions are not met. --- source/overloading.tex | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/source/overloading.tex b/source/overloading.tex index dcf56563da..875d6e511c 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1573,7 +1573,7 @@ \pnum When resolving a placeholder for a deduced class type\iref{dcl.type.simple} where the \grammarterm{template-name} names an alias template \tcode{A}, -the \grammarterm{defining-type-id} must be of the form +the \grammarterm{defining-type-id} of \tcode{A} must be of the form \begin{ncsimplebnf} \opt{\keyword{typename}} \opt{nested-name-specifier} \opt{\keyword{template}} simple-template-id \end{ncsimplebnf} @@ -1587,7 +1587,8 @@ according to the following procedure and add it to the set: \begin{itemize} \item - Deduce the template arguments of the return type of \tcode{f} + The template arguments of the return type of \tcode{f} + are deduced from the \grammarterm{defining-type-id} of \tcode{A} according to the process in \ref{temp.deduct.type} with the exception that deduction does not fail @@ -1595,19 +1596,21 @@ Let \tcode{g} denote the result of substituting these deductions into \tcode{f}. If the substitution fails, no \tcode{f'} is produced. - Form the function or function template \tcode{f'} as follows: + Otherwise, the function or function template \tcode{f'} is formed as follows: \begin{itemize} \item The function type of \tcode{f'} is the function type of \tcode{g}. \item If \tcode{f} is a function template, - the template parameter list of \tcode{f'} consists of + \tcode{f'} is a function template whose + template parameter list consists of all the template parameters of \tcode{A} (including their default template arguments) that appear in the above deductions or (recursively) in their default template arguments, followed by the template parameters of \tcode{f} that were not deduced - (including their default template arguments). + (including their default template arguments), + otherwise \tcode{f'} is not a function template. \item The associated constraints\iref{temp.constr.decl} are the conjunction of the associated constraints of \tcode{g} and From 6552c03d3793e7532793097d760edc3a93e150b1 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 2 Aug 2019 17:32:40 -0700 Subject: [PATCH 058/312] [over.match.class.deduct] Put all bullets describing the properties of f' at the same depth, and guard them all by the condition that we're actually adding an f' to the set of guides. --- source/overloading.tex | 78 ++++++++++++++++++++++-------------------- 1 file changed, 40 insertions(+), 38 deletions(-) diff --git a/source/overloading.tex b/source/overloading.tex index 875d6e511c..b572b551c5 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1583,50 +1583,52 @@ For each function or function template \tcode{f} in the guides of the template named by the \grammarterm{simple-template-id} of the \grammarterm{defining-type-id}, +the template arguments of the return type of \tcode{f} +are deduced +from the \grammarterm{defining-type-id} of \tcode{A} +according to the process in \ref{temp.deduct.type} +with the exception that deduction does not fail +if not all template arguments are deduced. +Let \tcode{g} denote the result of substituting +these deductions into \tcode{f}. +If substitution succeeds, form a function or function template \tcode{f'} -according to the following procedure and add it to the set: +with the following properties and add it to the set +of guides of \tcode{A}: \begin{itemize} \item - The template arguments of the return type of \tcode{f} - are deduced - from the \grammarterm{defining-type-id} of \tcode{A} - according to the process in \ref{temp.deduct.type} - with the exception that deduction does not fail - if not all template arguments are deduced. - Let \tcode{g} denote the result of substituting - these deductions into \tcode{f}. - If the substitution fails, no \tcode{f'} is produced. - Otherwise, the function or function template \tcode{f'} is formed as follows: - \begin{itemize} - \item - The function type of \tcode{f'} is the function type of \tcode{g}. - \item - If \tcode{f} is a function template, - \tcode{f'} is a function template whose - template parameter list consists of - all the template parameters of \tcode{A} - (including their default template arguments) - that appear in the above deductions or - (recursively) in their default template arguments, - followed by the template parameters of \tcode{f} that were not deduced - (including their default template arguments), - otherwise \tcode{f'} is not a function template. - \item - The associated constraints\iref{temp.constr.decl} are - the conjunction of the associated constraints of \tcode{g} and - a constraint that is satisfied if and only if - the arguments of \tcode{A} are deducible (see below) from the return type. - \end{itemize} +The function type of \tcode{f'} is the function type of \tcode{g}. + +\item +If \tcode{f} is a function template, +\tcode{f'} is a function template whose +template parameter list consists of +all the template parameters of \tcode{A} +(including their default template arguments) +that appear in the above deductions or +(recursively) in their default template arguments, +followed by the template parameters of \tcode{f} that were not deduced +(including their default template arguments), +otherwise \tcode{f'} is not a function template. + \item - If \tcode{f} is a copy deduction candidate\iref{over.match.class.deduct}, - then \tcode{f'} is considered to be so as well. +The associated constraints\iref{temp.constr.decl} are +the conjunction of the associated constraints of \tcode{g} and +a constraint that is satisfied if and only if +the arguments of \tcode{A} are deducible (see below) from the return type. + \item - If \tcode{f} was generated - from a deduction-guide\iref{over.match.class.deduct}, - then \tcode{f'} is considered to be so as well. +If \tcode{f} is a copy deduction candidate\iref{over.match.class.deduct}, +then \tcode{f'} is considered to be so as well. + +\item +If \tcode{f} was generated +from a \grammarterm{deduction-guide}\iref{over.match.class.deduct}, +then \tcode{f'} is considered to be so as well. + \item - The \grammarterm{explicit-specifier} of \tcode{f'} is - the \grammarterm{explicit-specifier} of g (if any). +The \grammarterm{explicit-specifier} of \tcode{f'} is +the \grammarterm{explicit-specifier} of \tcode{g} (if any). \end{itemize} \indextext{template!deducible arguments of}% From 68aa22bc73235829d946394b7e97a5613b4d575f Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Wed, 24 Jul 2019 23:10:39 +0200 Subject: [PATCH 059/312] P1825R0 Merged wording for P0527R1 and P1155R3 - P0527R1 Implicitly move from rvalue references in return statements - P1155R3 More implicit moves --- source/classes.tex | 50 ++++++++++++++++++++++++++++++---------- source/compatibility.tex | 29 +++++++++++++++++++++++ 2 files changed, 67 insertions(+), 12 deletions(-) diff --git a/source/classes.tex b/source/classes.tex index a610a4322c..485127a265 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -6588,35 +6588,39 @@ \end{example} \pnum +An \defnadj{implicitly movable}{entity} is +a variable of automatic storage duration +that is either a non-volatile object or +an rvalue reference to a non-volatile object type. In the following copy-initialization contexts, a move operation might be used instead of a copy operation: \begin{itemize} \item If the \grammarterm{expression} in a \tcode{return} or \tcode{co_return} statement\iref{stmt.return} is a (possibly parenthesized) \grammarterm{id-expression} -that names an object with automatic storage duration declared in the body +that names an implicitly movable entity declared in the body or \grammarterm{parameter-declaration-clause} of the innermost enclosing function or \grammarterm{lambda-expression}, or \item if the operand of a \grammarterm{throw-expression}\iref{expr.throw} -is the name of a non-volatile automatic object -(other than a function or catch-clause parameter) -whose scope does not extend beyond the end of the innermost enclosing -\grammarterm{try-block} (if there is one), +is a (possibly parenthesized) \grammarterm{id-expression} +that names an implicitly movable entity +whose scope does not extend beyond the \grammarterm{compound-statement} +of the innermost \grammarterm{try-block} or \grammarterm{function-try-block} +(if any) +whose \grammarterm{compound-statement} or \grammarterm{ctor-initializer} +encloses the \grammarterm{throw-expression}, \end{itemize} overload resolution to select the constructor for the copy or the \tcode{return_value} overload to call -is first performed as if the object were designated by an -rvalue. +is first performed as if the expression or operand were an rvalue. If the first overload resolution fails or was not performed, -or if the type of the first parameter of the selected -constructor or the \tcode{return_value} overload -is not an rvalue reference to the object's type (possibly cv-qualified), -overload resolution is performed again, considering the object as an lvalue. +overload resolution is performed again, +considering the expression or operand as an lvalue. \begin{note} This two-stage overload resolution must be performed regardless of whether copy elision will occur. It determines the constructor or the \tcode{return_value} overload to be called if elision is not performed, and the selected constructor -or the \tcode{return_value} overload must be accessible even if +or \tcode{return_value} overload must be accessible even if the call is elided. \end{note} @@ -6653,6 +6657,28 @@ \end{codeblock} \end{example} +\pnum +\begin{example} +\begin{codeblock} +void f() { + T x; + try { + T y; + try { g(x); } + catch (...) { + if (/*...*/) + throw x; // does not move + throw y; // moves + } + g(y); + } catch(...) { + g(x); + // g(y); // error + } +} +\end{codeblock} +\end{example} + \rSec1[class.compare]{Comparisons}% \rSec2[class.compare.default]{Defaulted comparison operator functions}% diff --git a/source/compatibility.tex b/source/compatibility.tex index a6c50406ab..ad3a32f1af 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -2035,6 +2035,35 @@ }; \end{codeblock} +\diffref{class.copy.elision} +\change +A function returning an implicitly movable entity\iref{class.copy.elision} +may invoke a constructor taking an rvalue reference to a type +different from that of the returned expression. +Function and catch-clause parameters can be thrown using move constructors. +\rationale +Side effect of making it easier to write +more efficient code that takes advantage of moves. +\effect +Valid \CppXVII{} code may fail to compile in this International Standard. +For example: +\begin{codeblock} +struct base { + base(); + base(base const &); +private: + base(base &&); +}; + +struct derived : base {}; + +base f(base b) { + throw b; // error: \tcode{base(base \&\&)} is private + derived d; + return d; // error: \tcode{base(base \&\&)} is private +} +\end{codeblock} + \rSec2[diff.cpp17.over]{\ref{over}: overloading} \diffref{over.match.oper} From b3b7d37c073051826c21c231bd386c10d64433dc Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 2 Aug 2019 22:09:14 +0200 Subject: [PATCH 060/312] [class.copy.elision] Add cross-reference, fix example. --- source/classes.tex | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/source/classes.tex b/source/classes.tex index 485127a265..32611db67a 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -6594,7 +6594,8 @@ an rvalue reference to a non-volatile object type. In the following copy-initialization contexts, a move operation might be used instead of a copy operation: \begin{itemize} -\item If the \grammarterm{expression} in a \tcode{return} or \tcode{co_return} statement\iref{stmt.return} +\item If the \grammarterm{expression} in a \tcode{return}\iref{stmt.return} or +\tcode{co_return}\iref{stmt.return.coroutine} statement is a (possibly parenthesized) \grammarterm{id-expression} that names an implicitly movable entity declared in the body or \grammarterm{parameter-declaration-clause} of the innermost enclosing @@ -6660,20 +6661,22 @@ \pnum \begin{example} \begin{codeblock} -void f() { +template void g(const T&); + +template void f() { T x; try { T y; try { g(x); } catch (...) { if (/*...*/) - throw x; // does not move - throw y; // moves + throw x; // does not move + throw y; // moves } g(y); } catch(...) { g(x); - // g(y); // error + g(y); // error: \tcode{y} is not in scope } } \end{codeblock} From 403ea7dc9d4f6cd9d39d15b5666a6233b78be174 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Thu, 25 Jul 2019 23:30:06 +0200 Subject: [PATCH 061/312] P1703R1 Recognizing header unit imports requires full preprocessing --- source/basic.tex | 8 +- source/lex.tex | 18 ++-- source/modules.tex | 8 +- source/preprocessor.tex | 177 ++++++++++++++++++---------------------- 4 files changed, 98 insertions(+), 113 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index 4142b8c229..d4851ad8d4 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -963,8 +963,9 @@ \end{note} \pnum -\begin{note} For point of instantiation of a template, -see~\ref{temp.point}.\end{note}% +\begin{note} +For point of instantiation of a template, see~\ref{temp.point}. +\end{note} \indextext{scope!declarations and|)} \rSec2[basic.scope.block]{Block scope} @@ -2590,8 +2591,7 @@ \pnum A token sequence beginning with -\opt{\tcode{export}} \tcode{module} or -\opt{\tcode{export}} \tcode{import} +\opt{\tcode{export}} \tcode{module} and not immediately followed by \tcode{::} is never interpreted as the \grammarterm{declaration} of a \grammarterm{top-level-declaration}. diff --git a/source/lex.tex b/source/lex.tex index c5db1f11da..647871d028 100644 --- a/source/lex.tex +++ b/source/lex.tex @@ -273,6 +273,7 @@ \begin{bnf} \nontermdef{preprocessing-token}\br header-name\br + import-keyword\br identifier\br pp-number\br character-literal\br @@ -338,17 +339,13 @@ except that a \grammarterm{header-name}\iref{lex.header} is only formed \begin{itemize} \item -within a \tcode{\#include} directive\iref{cpp.include}, +after the \tcode{include} or \tcode{import} preprocessing token in an +\tcode{\#include}\iref{cpp.include} or +\tcode{import}\iref{cpp.import} directive, or \item -within a \grammarterm{has-include-expression}, or +within a \grammarterm{has-include-expression}. -\item -outside of any preprocessing directive, -if applying phase 4 of translation to the sequence -of preprocessing tokens produced thus far -is valid and -results in an \grammarterm{import-seq}\iref{cpp.module}. \end{itemize} \end{itemize} @@ -359,6 +356,11 @@ \end{codeblock} \end{example} +\pnum +The \grammarterm{import-keyword} is produced +by processing an \tcode{import} directive\iref{cpp.import} and +has no associated grammar productions. + \pnum \begin{example} The program fragment \tcode{0xe+foo} is parsed as a preprocessing number token (one that is not a valid floating or integer diff --git a/source/modules.tex b/source/modules.tex index 4d51f18206..7dc281249a 100644 --- a/source/modules.tex +++ b/source/modules.tex @@ -411,9 +411,9 @@ \begin{bnf} \nontermdef{module-import-declaration}\br - \opt{\keyword{export}} \keyword{import} module-name \opt{attribute-specifier-seq} \terminal{;}\br - \opt{\keyword{export}} \keyword{import} module-partition \opt{attribute-specifier-seq} \terminal{;}\br - \opt{\keyword{export}} \keyword{import} header-name \opt{attribute-specifier-seq} \terminal{;} + \opt{\keyword{export}} import-keyword module-name \opt{attribute-specifier-seq} \terminal{;}\br + \opt{\keyword{export}} import-keyword module-partition \opt{attribute-specifier-seq} \terminal{;}\br + \opt{\keyword{export}} import-keyword header-name \opt{attribute-specifier-seq} \terminal{;} \end{bnf} \pnum @@ -478,7 +478,7 @@ a \grammarterm{header-name} is also recognized by the preprocessor, and results in macros defined at the end of phase 4 of translation of the header unit -being made visible as described in \ref{cpp.module}. +being made visible as described in \ref{cpp.import}. \end{note} A declaration of a name with internal linkage is permitted within a header unit despite all diff --git a/source/preprocessor.tex b/source/preprocessor.tex index cd84ee822f..5c659ed177 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -11,10 +11,14 @@ \pnum A \defn{preprocessing directive} consists of a sequence of preprocessing tokens that satisfies the following constraints: -The first token in the sequence is a -\tcode{\#} -preprocessing token that (at the start of translation phase 4) -either is the first character in the source file +The first token in the sequence, +referred to as a \defnadj{directive-introducing}{token}, +is a \tcode{\#} preprocessing token, +an \tcode{import} preprocessing token, or +an \tcode{export} preprocessing token +immediately followed by an \tcode{import} preprocessing token, +that (at the start of translation phase 4) +either begins with the first character in the source file (optionally after white space containing no new-line characters) or follows white space containing at least one new-line character. The last token in the sequence is the first new-line character @@ -50,6 +54,7 @@ \begin{bnf}\obeyspaces \nontermdef{control-line}\br \terminal{\# include} pp-tokens new-line\br + \opt{\terminal{export}} \terminal{import} pp-tokens new-line\br \terminal{\# define } identifier replacement-list new-line\br \terminal{\# define } identifier lparen \opt{identifier-list} \terminal{)} replacement-list new-line\br \terminal{\# define } identifier lparen \terminal{... )} replacement-list new-line\br @@ -149,9 +154,8 @@ The only white-space characters that shall appear between preprocessing tokens within a preprocessing directive -(from just after the introducing -\tcode{\#} -preprocessing token through just before the terminating new-line character) +(from just after the directive-introducing token +through just before the terminating new-line character) are space and horizontal-tab (including spaces that have replaced comments or possibly other white-space characters @@ -243,7 +247,7 @@ if the identifier is currently defined as a macro name (that is, if it is predefined -or if it has one or more active macro definitions\iref{cpp.module}, +or if it has one or more active macro definitions\iref{cpp.import}, for example because it has been the subject of a \tcode{\#define} @@ -623,11 +627,11 @@ denotes an importable header\iref{module.import}, it is \impldef{whether source file inclusion of importable header -is replaced with \tcode{import}} -whether the preprocessing directive -is instead replaced by the \grammarterm{preprocessing-token}{s} +is replaced with \tcode{import} directive} +whether the \tcode{\#include} preprocessing directive +is instead replaced by an \tcode{import} directive\iref{cpp.import} of the form \begin{ncbnf} -\terminal{import} header-name \terminal{;} +\terminal{import} header-name \terminal{;} new-line \end{ncbnf} \pnum @@ -665,104 +669,39 @@ \end{codeblock} \end{example} -\rSec1[cpp.glob.frag]{Global module fragment} - -\begin{bnf} -\nontermdef{pp-global-module-fragment}\br - \terminal{module} \terminal{;} pp-balanced-token-seq \terminal{module} -\end{bnf} - -\pnum -If the first two preprocessing tokens at the start of phase 4 of translation -are \tcode{module} \tcode{;}, -the result of preprocessing shall begin with -a \grammarterm{pp-global-module-fragment} -for which all \grammarterm{preprocessing-token}{s} -in the \grammarterm{pp-balanced-token-seq} -were produced directly or indirectly by source file inclusion\iref{cpp.include}, -and for which the second \tcode{module} \grammarterm{preprocessing-token} -was not produced by source file inclusion or -macro replacement\iref{cpp.replace}. -Otherwise, -the first two preprocessing tokens at the end of phase 4 of translation -shall not be \tcode{module} \tcode{;}. - -\rSec1[cpp.module]{Header units} +\rSec1[cpp.import]{Header unit importation} \indextext{header unit!preprocessing}% \indextext{macro import|(}% -\begin{bnf} -\nontermdef{import-seq}\br - \opt{top-level-token-seq} \opt{\terminal{export}} \terminal{import} -\end{bnf} - -\begin{bnf} -\nontermdef{top-level-token-seq}\br - \descr{any \grammarterm{pp-balanced-token-seq} ending in \terminal{;} or \terminal{\}}} -\end{bnf} - \begin{bnf} \nontermdef{pp-import}\br - \terminal{import} header-name \opt{pp-import-suffix} \terminal{;}\br - \terminal{import} header-name-tokens \opt{pp-import-suffix} \terminal{;} -\end{bnf} - -\begin{bnf} -\nontermdef{pp-import-suffix}\br - pp-import-suffix-token\br - pp-import-suffix pp-import-suffix-token -\end{bnf} - -\begin{bnf} -\nontermdef{pp-import-suffix-token}\br - \descr{any \grammarterm{pp-balanced-token} other than \terminal{;}} -\end{bnf} - -\begin{bnf} -\nontermdef{pp-balanced-token-seq}\br - pp-balanced-token\br - pp-balanced-token-seq pp-balanced-token -\end{bnf} - -\begin{bnf} -\nontermdef{pp-balanced-token}\br - pp-ldelim \opt{pp-balanced-token-seq} pp-rdelim\br - \descr{any \grammarterm{preprocessing-token} other than a \grammarterm{pp-ldelim} or \grammarterm{pp-rdelim}} -\end{bnf} - -\begin{bnf} -\nontermdef{pp-ldelim} \descr{one of}\br - \terminal{( [ \{ <: <\%} -\end{bnf} - -\begin{bnf} -\nontermdef{pp-rdelim} \descr{one of}\br - \terminal{) ] \} :> \%>} + \opt{\terminal{export}} \terminal{import} header-name \opt{pp-tokens} \terminal{;} new-line\br + \opt{\terminal{export}} \terminal{import} header-name-tokens \opt{pp-tokens} \terminal{;} new-line\br + \opt{\terminal{export}} \terminal{import} pp-tokens \terminal{;} new-line \end{bnf} \pnum -A sequence of \grammarterm{preprocessing-token}{s} -matching the form of a \grammarterm{pp-import} +The preprocessing tokens after the \tcode{import} preprocessing token +in the \tcode{import} \grammarterm{control-line} +are processed just as in normal text +(i.e., each identifier currently defined as a macro name +is replaced by its replacement list of preprocessing tokens). +An \tcode{import} directive +matching the first two forms of a \grammarterm{pp-import} instructs the preprocessor to import macros from the header unit\iref{module.import} denoted by the \grammarterm{header-name}. -A \grammarterm{pp-import} is only recognized -when the sequence of tokens -produced by phase 4 of translation -up to the \tcode{import} token -forms an \grammarterm{import-seq}, -and the \tcode{import} token is not within -the \grammarterm{header-name-tokens} or \grammarterm{pp-import-suffix} -of another \grammarterm{pp-import}. -The \tcode{;} \grammarterm{preprocessing-token} -terminating a \grammarterm{pp-import} -shall not have been produced by -macro replacement\iref{cpp.replace}. -The \defnadj{point of}{macro import} for a \grammarterm{pp-import} is -immediately after the \tcode{;} terminating the \grammarterm{pp-import}. +The \defnadj{point of}{macro import} for the +first two forms of \grammarterm{pp-import} is +immediately after the \grammarterm{new-line} terminating +the \grammarterm{pp-import}. +The last form of \grammarterm{pp-import} is only considered +if the first two forms did not match. \pnum -In the second form of \grammarterm{pp-import}, +In all three forms of \grammarterm{pp-import}, +the \tcode{import} token is replaced by the \grammarterm{import-keyword} token. +Additionally, in the second form of \grammarterm{pp-import}, a \grammarterm{header-name} token is formed as if the \grammarterm{header-name-tokens} were the \grammarterm{pp-tokens} of a \tcode{\#include} directive. @@ -847,6 +786,50 @@ \indextext{macro import|)}% +\rSec1[cpp.glob.frag]{Global module fragment} + +\begin{bnf} +\nontermdef{pp-global-module-fragment}\br + \terminal{module} \terminal{;} pp-balanced-token-seq \terminal{module} +\end{bnf} +\begin{bnf} + +\nontermdef{pp-balanced-token-seq}\br + pp-balanced-token\br + pp-balanced-token-seq pp-balanced-token +\end{bnf} + +\begin{bnf} +\nontermdef{pp-balanced-token}\br + pp-ldelim \opt{pp-balanced-token-seq} pp-rdelim\br + \descr{any \grammarterm{preprocessing-token} other than a \grammarterm{pp-ldelim} or \grammarterm{pp-rdelim}} +\end{bnf} + +\begin{bnf} +\nontermdef{pp-ldelim} \descr{one of}\br + \terminal{( [ \{ <: <\%} +\end{bnf} + +\begin{bnf} +\nontermdef{pp-rdelim} \descr{one of}\br + \terminal{) ] \} :> \%>} +\end{bnf} + +\pnum +If the first two preprocessing tokens at the start of phase 4 of translation +are \tcode{module} \tcode{;}, +the result of preprocessing shall begin with +a \grammarterm{pp-global-module-fragment} +for which all \grammarterm{preprocessing-token}{s} +in the \grammarterm{pp-balanced-token-seq} +were produced directly or indirectly by source file inclusion\iref{cpp.include}, +and for which the second \tcode{module} \grammarterm{preprocessing-token} +was not produced by source file inclusion or +macro replacement\iref{cpp.replace}. +Otherwise, +the first two preprocessing tokens at the end of phase 4 of translation +shall not be \tcode{module} \tcode{;}. + \rSec1[cpp.replace]{Macro replacement}% \indextext{macro!replacement|(}% \indextext{replacement!macro|see{macro, replacement}}% From 6b6b6565f11aed13ecbf3ed881fbc50472bd8688 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Thu, 1 Aug 2019 10:12:52 +0200 Subject: [PATCH 062/312] [lex,cpp] Adjust index entries around 'macro' and 'point of'. --- source/basic.tex | 8 ++++++-- source/preprocessor.tex | 25 +++++++++++++------------ 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index d4851ad8d4..2be2f12a8f 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -815,9 +815,12 @@ \rSec2[basic.scope.pdecl]{Point of declaration} +\indextext{declaration!point of|(}% + \pnum -\indextext{name!point of declaration}% -The \defn{point of declaration} for a name is immediately after its +\indextext{name!point of declaration|see{declaration, point of}}% +\indextext{point of!declaration|see{declaration, point of}}% +The \defnx{point of declaration}{declaration!point of} for a name is immediately after its complete declarator\iref{dcl.decl} and before its \grammarterm{initializer} (if any), except as noted below. \begin{example} @@ -967,6 +970,7 @@ For point of instantiation of a template, see~\ref{temp.point}. \end{note} \indextext{scope!declarations and|)} +\indextext{declaration!point of|)} \rSec2[basic.scope.block]{Block scope} diff --git a/source/preprocessor.tex b/source/preprocessor.tex index 5c659ed177..e0c20e460b 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -671,7 +671,7 @@ \rSec1[cpp.import]{Header unit importation} \indextext{header unit!preprocessing}% -\indextext{macro import|(}% +\indextext{macro!import|(}% \begin{bnf} \nontermdef{pp-import}\br @@ -691,7 +691,8 @@ instructs the preprocessor to import macros from the header unit\iref{module.import} denoted by the \grammarterm{header-name}. -The \defnadj{point of}{macro import} for the +\indextext{point of!macro import|see{macro, point of import}}% +The \defnx{point of macro import}{macro!point of import} for the first two forms of \grammarterm{pp-import} is immediately after the \grammarterm{new-line} terminating the \grammarterm{pp-import}. @@ -715,14 +716,15 @@ \pnum Each \tcode{\#define} directive encountered when preprocessing each translation unit in a program results in a distinct -\defn{macro definition}. +\defnx{macro definition}{macro!definition}. Importing macros from a header unit makes macro definitions from a translation unit visible in other translation units. Each macro definition has at most one point of definition in each translation unit and at most one point of undefinition, as follows: \begin{itemize} \item -The \defnx{point of definition}{macro definition!point of definition} +\indextext{point of!macro definition|see{macro, point of definition}}% +The \defnx{point of definition}{macro!point of definition} of a macro definition within a translation unit is the point at which its \tcode{\#define} directive occurs (in the translation unit containing the \tcode{\#define} directive), or, @@ -733,7 +735,8 @@ macro definition, if any (in any other translation unit). \item -The \defnx{point of undefinition}{macro definition!point of undefinition} +\indextext{point of!macro undefinition|see{macro, point of undefinition}}% +The \defnx{point of undefinition}{macro!point of undefinition} of a macro definition within a translation unit is the first point at which a \tcode{\#undef} directive naming the macro occurs after its point of definition, or the first point @@ -742,7 +745,8 @@ \end{itemize} \pnum -A macro directive is \defnx{active}{macro definition!active} at a source location +\indextext{active macro directive|see{macro, active}}% +A macro directive is \defnx{active}{macro!active} at a source location if it has a point of definition in that translation unit preceding the location, and does not have a point of undefinition in that translation unit preceding the location. @@ -783,8 +787,7 @@ int c = Z; // error: active macro definitions \#2 and \#3 are not valid redefinitions of \tcode{Z} \end{codeblocktu} \end{example} - -\indextext{macro import|)}% +\indextext{macro!import|)} \rSec1[cpp.glob.frag]{Global module fragment} @@ -844,7 +847,6 @@ \pnum An identifier currently defined as an -\indextext{object-like macro|see{macro, object-like}}% \indextext{macro!object-like}% object-like macro (see below) may be redefined by another \tcode{\#define} @@ -852,7 +854,6 @@ object-like macro definition and the two replacement lists are identical, otherwise the program is ill-formed. Likewise, an identifier currently defined as a -\indextext{function-like macro|see{macro, function-like}}% \indextext{macro!function-like}% function-like macro (see below) may be redefined by another \tcode{\#define} @@ -920,7 +921,7 @@ \end{ncsimplebnf} defines an -\defnx{object-like macro}{macro!object-like} that +\defnadj{object-like}{macro} that causes each subsequent instance of the macro name\footnote{Since, by macro-replacement time, all character literals and string literals are preprocessing tokens, not sequences possibly containing identifier-like subsequences @@ -941,7 +942,7 @@ \terminal{\# define} identifier lparen \terminal{...} \terminal{)} replacement-list new-line\br \terminal{\# define} identifier lparen identifier-list \terminal{, ...} \terminal{)} replacement-list new-line \end{ncsimplebnf} -defines a \defnx{function-like macro}{macro!function-like} +defines a \defnadj{function-like}{macro} with parameters, whose use is similar syntactically to a function call. The parameters From 209dfd5c9748021f60a226090ed5b0e5b2568054 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 26 Jul 2019 08:49:32 +0200 Subject: [PATCH 063/312] P0784R7 More constexpr containers --- source/basic.tex | 2 +- source/classes.tex | 14 ++++- source/declarations.tex | 55 +++++++++-------- source/expressions.tex | 102 +++++++++++++++++++++++++------ source/preprocessor.tex | 1 + source/support.tex | 2 + source/utilities.tex | 130 ++++++++++++++++++++++++++-------------- 7 files changed, 212 insertions(+), 94 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index 2be2f12a8f..b18a0ab4f6 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -4540,7 +4540,7 @@ \item a possibly cv-qualified class type\iref{class} that has all of the following properties: \begin{itemize} -\item it has a trivial destructor, +\item it has a constexpr destructor\iref{dcl.constexpr}, \item it is either a closure type\iref{expr.prim.lambda.closure}, an aggregate type\iref{dcl.init.aggr}, or has at least one constexpr constructor or constructor template diff --git a/source/classes.tex b/source/classes.tex index 32611db67a..71e85ce656 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -2144,7 +2144,12 @@ A prospective destructor shall take no arguments\iref{dcl.fct}. Each \grammarterm{decl-specifier} of the \grammarterm{decl-specifier-seq} of a prospective destructor declaration (if any) -shall be \tcode{friend}, \tcode{inline}, or \tcode{virtual}. +shall be +\tcode{friend}, +\tcode{inline}, +\tcode{virtual}, +\tcode{constexpr}, or +\tcode{consteval}. \pnum \indextext{generated destructor|see{destructor, default}}% @@ -2234,6 +2239,13 @@ Otherwise, the destructor is \defnx{non-trivial}{destructor!non-trivial}. +\pnum +The defaulted destructor is a constexpr destructor +if it satisfies the requirements for a constexpr destructor\iref{dcl.constexpr}. +\begin{note} +In particular, a trivial destructor is a constexpr destructor. +\end{note} + \pnum A destructor that is defaulted and not defined as deleted diff --git a/source/declarations.tex b/source/declarations.tex index d2877d5fcb..957a79cb52 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -814,12 +814,9 @@ \pnum A \tcode{constexpr} or \tcode{consteval} specifier -used in the declaration of a function that is not a constructor +used in the declaration of a function declares that function to be a \defnx{constexpr function}{specifier!\idxcode{constexpr}!function}. -Similarly, a \tcode{constexpr} or \tcode{consteval} specifier used in -a constructor declaration declares that constructor to be -a \defnx{constexpr constructor}{specifier!\idxcode{constexpr}!constructor}. A function or constructor declared with the \tcode{consteval} specifier is called an \defn{immediate function}. A destructor, an allocation function, or a deallocation function @@ -833,7 +830,7 @@ \begin{itemize} \item -its return type shall be a literal type; +its return type (if any) shall be a literal type; \item each of its parameter types shall be a literal type; @@ -841,6 +838,10 @@ \item it shall not be a coroutine\iref{dcl.fct.def.coroutine}; +\item +if the function is a constructor or destructor, +its class shall not have any virtual base classes; + \item its \grammarterm{function-body} shall not enclose\iref{stmt.stmt} \begin{itemize} @@ -887,24 +888,10 @@ \pnum \indextext{specifier!\idxcode{constexpr}!constructor}% -The definition of a constexpr constructor shall satisfy the -following requirements: -\begin{itemize} -\item -the class shall not have any virtual base classes; - -\item -each of the parameter types shall be a literal type. -\end{itemize} - -In addition, either its \grammarterm{function-body} shall be -\tcode{= delete}, or it shall satisfy the following requirements: +The definition of a constexpr constructor +whose \grammarterm{function-body} is not \tcode{= delete} +shall additionally satisfy the following requirements: \begin{itemize} -\item -either its \grammarterm{function-body} shall be \tcode{= default}, or the \grammarterm{compound-statement} of its \grammarterm{function-body} -shall satisfy the requirements for a \grammarterm{function-body} of a -constexpr function; - \item if the class is a union having variant members\iref{class.union}, exactly one of them shall be initialized; @@ -932,6 +919,17 @@ \end{codeblock} \end{example} +\pnum +The definition of a constexpr destructor +whose \grammarterm{function-body} is not \tcode{= delete} +shall additionally satisfy the following requirement: +\begin{itemize} +\item + for every subobject of class type or + (possibly multi-dimensional) array thereof, + that class type shall have a constexpr destructor. +\end{itemize} + \pnum For a constexpr function or constexpr constructor that is neither defaulted nor a template, @@ -966,12 +964,12 @@ template or member function of a class template would fail to satisfy the requirements for a constexpr -function or constexpr constructor, -that specialization is still a constexpr function or constexpr -constructor, even though a call to such a function cannot appear in a constant +function, +that specialization is still a constexpr function, +even though a call to such a function cannot appear in a constant expression. If no specialization of the template would satisfy the -requirements for a constexpr function or constexpr constructor -when considered as a non-template function or constructor, the template is +requirements for a constexpr function +when considered as a non-template function, the template is ill-formed, no diagnostic required. \pnum @@ -987,7 +985,7 @@ \pnum The \tcode{constexpr} and \tcode{consteval} specifiers have no -effect on the type of a constexpr function or a constexpr constructor. +effect on the type of a constexpr function. \begin{example} \begin{codeblock} constexpr int bar(int x, int y) // OK @@ -1007,6 +1005,7 @@ In any \tcode{constexpr} variable declaration, the full-expression of the initialization shall be a constant expression\iref{expr.const}. +A \tcode{constexpr} variable shall have constant destruction. \begin{example} \begin{codeblock} struct pixel { diff --git a/source/expressions.tex b/source/expressions.tex index d887d1a23f..93dc47ff56 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -4894,7 +4894,19 @@ An implementation is allowed to omit a call to a replaceable global allocation function~(\ref{new.delete.single}, \ref{new.delete.array}). When it does so, the storage is instead provided by the implementation or provided by extending -the allocation of another \grammarterm{new-expression}. The implementation may +the allocation of another \grammarterm{new-expression}. + +\pnum +During an evaluation of a constant expression, +a call to an allocation function is always omitted. +\begin{note} +Only \grammarterm{new-expression}{s} that would otherwise result in +a call to a replaceable global allocation function +can be evaluated in constant expressions (see \ref{expr.const}). +\end{note} + +\pnum +The implementation may extend the allocation of a \grammarterm{new-expression} \tcode{e1} to provide storage for a \grammarterm{new-expression} \tcode{e2} if the following would be true were the allocation not extended: @@ -6864,26 +6876,22 @@ \begin{itemize} \item \tcode{this}\iref{expr.prim.this}, except in a constexpr -function or a constexpr constructor that is being evaluated as part +function\iref{dcl.constexpr} that is being evaluated as part of \tcode{e}; \item -an invocation of a function other than -a constexpr constructor for a literal class, -a constexpr function, -or an implicit invocation of a trivial destructor\iref{class.dtor} +an invocation of a non-constexpr function \begin{note} Overload resolution\iref{over.match} -is applied as usual \end{note}; +is applied as usual. +\end{note}; \item -an invocation of an undefined constexpr function or an -undefined constexpr constructor; +an invocation of an undefined constexpr function; \item -an invocation of an instantiated constexpr function or -constexpr constructor that fails to satisfy the requirements -for a constexpr function or -constexpr constructor\iref{dcl.constexpr}; +an invocation of an instantiated constexpr function +that fails to satisfy the requirements +for a constexpr function; \item an invocation of a virtual function\iref{class.virtual} @@ -6991,9 +6999,6 @@ \item a \tcode{reinterpret_cast}\iref{expr.reinterpret.cast}; -\item -a pseudo-destructor call\iref{expr.prim.id.dtor}; - \item modification of an object~(\ref{expr.ass}, \ref{expr.post.incr}, \ref{expr.pre.incr}) @@ -7002,10 +7007,27 @@ whose lifetime began within the evaluation of \tcode{e}; \item -a \grammarterm{new-expression}\iref{expr.new}; +a \grammarterm{new-expression}\iref{expr.new}, +unless the selected allocation function is +a replaceable global allocation function~(\ref{new.delete.single}, +\ref{new.delete.array}) and +the allocated storage is deallocated within the evaluation of \tcode{e}; + +\item +a \grammarterm{delete-expression}\iref{expr.delete}, +unless it deallocates a region of storage +allocated within the evaluation of \tcode{e}; + +\item +a call to an instance of +\tcode{std::allocator::allocate}\iref{allocator.members}, +unless the allocated storage is deallocated within the evaluation of \tcode{e}; \item -a \grammarterm{delete-expression}\iref{expr.delete}; +a call to an instance of +\tcode{std::allocator::deallocate}\iref{allocator.members}, +unless it deallocates a region of storage +allocated within the evaluation of \tcode{e}; \item an \grammarterm{await-expression}\iref{expr.await}; @@ -7076,6 +7098,50 @@ \end{codeblock} \end{example} +\pnum +For the purposes of determining +whether an expression is a core constant expression, +the evaluation of a call to a member function of \tcode{std::allocator} +as defined in \ref{allocator.members}, where \tcode{T} is a literal type, +does not disqualify the expression from being a core constant expression, +even if the actual evaluation of such a call +would otherwise fail the requirements for a core constant expression. +Similarly, the evaluation of a call to +\tcode{std::destroy_at}, +\tcode{std::ranges::destroy_at}, +\tcode{std::construct_at}, or +\tcode{std::ranges::construct_at} +is a valid core constant expression unless: +\begin{itemize} +\item + for a call to \tcode{std::construct_at} or \tcode{std::ranges::construct_at}, + the first argument, of type \tcode{T*}, + does not point to storage allocated with \tcode{std::allocator} or + the evaluation of the underlying constructor call + is not a core constant expression, or +\item + for a call to \tcode{std::destroy_at} or \tcode{std::ranges::destroy_at}, + the first argument, of type \tcode{T*}, + does not point to storage allocated with \tcode{std::allocator} or + the evaluation of the underlying destructor call + is not a core constant expression. +\end{itemize} + +\pnum +An object \tcode{a} is said to have \defnadj{constant}{destruction} if: +\begin{itemize} +\item + it is not of class type nor (possibly multi-dimensional) array thereof, or +\item + it is of class type or (possibly multi-dimensional) array thereof, + that class type has a constexpr destructor, and + for a hypothetical expression \tcode{e} + whose only effect is to destroy \tcode{a}, + \tcode{e} would be a core constant expression + if the lifetime of \tcode{a} and its non-mutable subobjects + (but not its mutable subobjects) were considered to start within \tcode{e}. +\end{itemize} + \pnum An \defnadj{integral constant}{expression} is an expression of integral or diff --git a/source/preprocessor.tex b/source/preprocessor.tex index e0c20e460b..d008d74918 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -1669,6 +1669,7 @@ \defnxname{cpp_char8_t} & \tcode{201811L} \\ \rowsep \defnxname{cpp_conditional_explicit} & \tcode{201806L} \\ \rowsep \defnxname{cpp_constexpr} & \tcode{201907L} \\ \rowsep +\defnxname{cpp_constexpr_dynamic_alloc} & \tcode{201907L} \\ \rowsep \defnxname{cpp_constinit} & \tcode{201907L} \\ \rowsep \defnxname{cpp_coroutines} & \tcode{201902L} \\ \rowsep \defnxname{cpp_decltype} & \tcode{200707L} \\ \rowsep diff --git a/source/support.tex b/source/support.tex index 29a0def9a1..1fbc8f5ab1 100644 --- a/source/support.tex +++ b/source/support.tex @@ -574,6 +574,8 @@ \tcode{} \tcode{} \tcode{} \\ \rowsep \defnlibxname{cpp_lib_constexpr_swap_algorithms} & \tcode{201806L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_constexpr_dynamic_alloc} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_destroying_delete} & \tcode{201806L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_enable_shared_from_this} & \tcode{201603L} & diff --git a/source/utilities.tex b/source/utilities.tex index 977e5b5b39..c89c29da07 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -6597,9 +6597,9 @@ // \ref{default.allocator}, the default allocator template class allocator; template - bool operator==(const allocator&, const allocator&) noexcept; + constexpr bool operator==(const allocator&, const allocator&) noexcept; template - bool operator!=(const allocator&, const allocator&) noexcept; + constexpr bool operator!=(const allocator&, const allocator&) noexcept; // \ref{specialized.algorithms}, specialized algorithms // \ref{special.mem.concepts}, special memory concepts @@ -6764,33 +6764,43 @@ I uninitialized_fill_n(I first, iter_difference_t n, const T& x); } + // \ref{specialized.construct}, \tcode{construct_at} + template + constexpr T* construct_at(T* location, Args&&... args); + + namespace ranges { + template + constexpr T* construct_at(T* location, Args&&... args); + } + + // \ref{specialized.destroy}, \tcode{destroy} template - void destroy_at(T* location); + constexpr void destroy_at(T* location); template - void destroy(ForwardIterator first, ForwardIterator last); + constexpr void destroy(ForwardIterator first, ForwardIterator last); template - void destroy(ExecutionPolicy&& exec, // see \ref{algorithms.parallel.overloads} - ForwardIterator first, ForwardIterator last); + constexpr void destroy(ExecutionPolicy&& exec, // see \ref{algorithms.parallel.overloads} + ForwardIterator first, ForwardIterator last); template - ForwardIterator destroy_n(ForwardIterator first, Size n); + constexpr ForwardIterator destroy_n(ForwardIterator first, Size n); template - ForwardIterator destroy_n(ExecutionPolicy&& exec, // see \ref{algorithms.parallel.overloads} - ForwardIterator first, Size n); + constexpr ForwardIterator destroy_n(ExecutionPolicy&& exec, // see \ref{algorithms.parallel.overloads} + ForwardIterator first, Size n); namespace ranges { template - void destroy_at(T* location) noexcept; + constexpr void destroy_at(T* location) noexcept; template<@\placeholdernc{no-throw-input-iterator}@ I, @\placeholdernc{no-throw-sentinel}@ S> requires Destructible> - I destroy(I first, S last) noexcept; + constexpr I destroy(I first, S last) noexcept; template<@\placeholdernc{no-throw-input-range}@ R> - requires Destructible> - safe_iterator_t destroy(R&& r) noexcept; + requires Destructible>> + constexpr safe_iterator_t destroy(R&& r) noexcept; template<@\placeholdernc{no-throw-input-iterator}@ I> requires Destructible> - I destroy_n(I first, iter_difference_t n) noexcept; + constexpr I destroy_n(I first, iter_difference_t n) noexcept; } // \ref{unique.ptr}, class template \tcode{unique_ptr} @@ -7658,20 +7668,21 @@ template using rebind_alloc = @\seebelow@; template using rebind_traits = allocator_traits>; - [[nodiscard]] static pointer allocate(Alloc& a, size_type n); - [[nodiscard]] static pointer allocate(Alloc& a, size_type n, const_void_pointer hint); + [[nodiscard]] static constexpr pointer allocate(Alloc& a, size_type n); + [[nodiscard]] static constexpr pointer allocate(Alloc& a, size_type n, + const_void_pointer hint); - static void deallocate(Alloc& a, pointer p, size_type n); + static constexpr void deallocate(Alloc& a, pointer p, size_type n); template - static void construct(Alloc& a, T* p, Args&&... args); + static constexpr void construct(Alloc& a, T* p, Args&&... args); template - static void destroy(Alloc& a, T* p); + static constexpr void destroy(Alloc& a, T* p); - static size_type max_size(const Alloc& a) noexcept; + static constexpr size_type max_size(const Alloc& a) noexcept; - static Alloc select_on_container_copy_construction(const Alloc& rhs); + static constexpr Alloc select_on_container_copy_construction(const Alloc& rhs); }; } \end{codeblock} @@ -7826,7 +7837,7 @@ \indexlibrarymember{allocate}{allocator_traits}% \begin{itemdecl} -[[nodiscard]] static pointer allocate(Alloc& a, size_type n); +[[nodiscard]] static constexpr pointer allocate(Alloc& a, size_type n); \end{itemdecl} \begin{itemdescr} @@ -7836,7 +7847,7 @@ \indexlibrarymember{allocate}{allocator_traits}% \begin{itemdecl} -[[nodiscard]] static pointer allocate(Alloc& a, size_type n, const_void_pointer hint); +[[nodiscard]] static constexpr pointer allocate(Alloc& a, size_type n, const_void_pointer hint); \end{itemdecl} \begin{itemdescr} @@ -7846,7 +7857,7 @@ \indexlibrarymember{deallocate}{allocator_traits}% \begin{itemdecl} -static void deallocate(Alloc& a, pointer p, size_type n); +static constexpr void deallocate(Alloc& a, pointer p, size_type n); \end{itemdecl} \begin{itemdescr} @@ -7860,31 +7871,31 @@ \indexlibrarymember{construct}{allocator_traits}% \begin{itemdecl} template - static void construct(Alloc& a, T* p, Args&&... args); + static constexpr void construct(Alloc& a, T* p, Args&&... args); \end{itemdecl} \begin{itemdescr} \pnum \effects Calls \tcode{a.construct(p, std::forward(args)...)} if that call is well-formed; -otherwise, invokes \tcode{::new (static_cast(p)) T(std::forward(args)...)}. +otherwise, invokes \tcode{construct_at(p, std::forward(args)...)}. \end{itemdescr} \indexlibrarymember{destroy}{allocator_traits}% \begin{itemdecl} template - static void destroy(Alloc& a, T* p); + static constexpr void destroy(Alloc& a, T* p); \end{itemdecl} \begin{itemdescr} \pnum \effects Calls \tcode{a.destroy(p)} if that call is well-formed; otherwise, invokes -\tcode{p->\~{}T()}. +\tcode{destroy_at(p)}. \end{itemdescr} \indexlibrarymember{max_size}{allocator_traits}% \begin{itemdecl} -static size_type max_size(const Alloc& a) noexcept; +static constexpr size_type max_size(const Alloc& a) noexcept; \end{itemdecl} \begin{itemdescr} @@ -7895,7 +7906,7 @@ \indexlibrarymember{select_on_container_copy_construction}{allocator_traits}% \begin{itemdecl} -static Alloc select_on_container_copy_construction(const Alloc& rhs); +static constexpr Alloc select_on_container_copy_construction(const Alloc& rhs); \end{itemdecl} \begin{itemdescr} @@ -7930,11 +7941,11 @@ constexpr allocator() noexcept; constexpr allocator(const allocator&) noexcept; template constexpr allocator(const allocator&) noexcept; - ~allocator(); - allocator& operator=(const allocator&) = default; + constexpr ~allocator(); + constexpr allocator& operator=(const allocator&) = default; - [[nodiscard]] T* allocate(size_t n); - void deallocate(T* p, size_t n); + [[nodiscard]] constexpr T* allocate(size_t n); + constexpr void deallocate(T* p, size_t n); }; } \end{codeblock} @@ -7950,7 +7961,7 @@ \indexlibrarymember{allocate}{allocator}% \begin{itemdecl} -[[nodiscard]] T* allocate(size_t n); +[[nodiscard]] constexpr T* allocate(size_t n); \end{itemdecl} \begin{itemdescr} @@ -7972,7 +7983,7 @@ \indexlibrarymember{deallocate}{allocator}% \begin{itemdecl} -void deallocate(T* p, size_t n); +constexpr void deallocate(T* p, size_t n); \end{itemdecl} \begin{itemdescr} @@ -7999,7 +8010,7 @@ \indexlibrarymember{operator==}{allocator}% \begin{itemdecl} template - bool operator==(const allocator&, const allocator&) noexcept; + constexpr bool operator==(const allocator&, const allocator&) noexcept; \end{itemdecl} \begin{itemdescr} @@ -8011,7 +8022,7 @@ \indexlibrarymember{operator"!=}{allocator}% \begin{itemdecl} template - bool operator!=(const allocator&, const allocator&) noexcept; + constexpr bool operator!=(const allocator&, const allocator&) noexcept; \end{itemdecl} \begin{itemdescr} @@ -8089,7 +8100,7 @@ \tcode{\placeholdernc{voidify}}: \begin{codeblock} template - void* @\placeholdernc{voidify}@(T& obj) noexcept { + constexpr void* @\placeholdernc{voidify}@(T& obj) noexcept { return const_cast(static_cast(addressof(obj))); } \end{codeblock} @@ -8653,15 +8664,42 @@ \end{codeblock} \end{itemdescr} +\rSec3[specialized.construct]{\tcode{construct_at}} + +\indexlibrary{\idxcode{construct_at}} +\begin{itemdecl} +template + constexpr T* construct_at(T* location, Args&&... args); + +namespace ranges { + template + constexpr T* construct_at(T* location, Args&&... args); +} +\end{itemdecl} + +\begin{itemdescr} +\pnum +\constraints +The expression \tcode{::new (declval()) T(declval()...)} +is well-formed when treated as an unevaluated operand. + +\pnum +\effects +Equivalent to: +\begin{codeblock} +return ::new (@\placeholdernc{voidify}@(*location)) T(std::forward(args)...); +\end{codeblock} +\end{itemdescr} + \rSec3[specialized.destroy]{\tcode{destroy}} \indexlibrary{\idxcode{destroy_at}}% \begin{itemdecl} template - void destroy_at(T* location); + constexpr void destroy_at(T* location); namespace ranges { template - void destroy_at(T* location) noexcept; + constexpr void destroy_at(T* location) noexcept; } \end{itemdecl} @@ -8679,7 +8717,7 @@ \indexlibrary{\idxcode{destroy}}% \begin{itemdecl} template - void destroy(ForwardIterator first, ForwardIterator last); + constexpr void destroy(ForwardIterator first, ForwardIterator last); \end{itemdecl} \begin{itemdescr} @@ -8697,10 +8735,10 @@ namespace ranges { template<@\placeholdernc{no-throw-input-iterator}@ I, @\placeholdernc{no-throw-sentinel}@ S> requires Destructible> - I destroy(I first, S last) noexcept; + constexpr I destroy(I first, S last) noexcept; template<@\placeholdernc{no-throw-input-range}@ R> requires Destructible>> - safe_iterator_t destroy(R&& r) noexcept; + constexpr safe_iterator_t destroy(R&& r) noexcept; } \end{itemdecl} @@ -8717,7 +8755,7 @@ \indexlibrary{\idxcode{destroy_n}}% \begin{itemdecl} template - ForwardIterator destroy_n(ForwardIterator first, Size n); + constexpr ForwardIterator destroy_n(ForwardIterator first, Size n); \end{itemdecl} \begin{itemdescr} @@ -8736,7 +8774,7 @@ namespace ranges { template<@\placeholdernc{no-throw-input-iterator}@ I> requires Destructible> - I destroy_n(I first, iter_difference_t n) noexcept; + constexpr I destroy_n(I first, iter_difference_t n) noexcept; } \end{itemdecl} From 079f7d3b02d8a96044ce0c305647e634975d682a Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Fri, 19 Jul 2019 18:17:08 -0700 Subject: [PATCH 064/312] LWG2899 is_(nothrow_)move_constructible and tuple, optional and unique_ptr --- source/utilities.tex | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/source/utilities.tex b/source/utilities.tex index c89c29da07..6711a0e710 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -1278,7 +1278,7 @@ \begin{itemdescr} \pnum -\requires \tcode{is_move_constructible_v<$\tcode{T}_i$>} is \tcode{true} for all $i$. +\constraints \tcode{is_move_constructible_v<$\tcode{T}_i$>} is \tcode{true} for all $i$. \pnum \effects For all $i$, initializes the $i^\text{th}$ element of \tcode{*this} with @@ -9181,6 +9181,9 @@ \end{itemdecl} \begin{itemdescr} +\pnum +\constraints \tcode{is_move_constructible_v} is \tcode{true}. + \pnum \requires If \tcode{D} is not a reference type, \tcode{D} shall meet the \oldconcept{MoveConstructible} @@ -9271,6 +9274,9 @@ \end{itemdecl} \begin{itemdescr} +\pnum +\constraints \tcode{is_move_assignable_v} is \tcode{true}. + \pnum \requires If \tcode{D} is not a reference type, \tcode{D} shall meet the \oldconcept{MoveAssignable} requirements (\tref{cpp17.moveassignable}) and assignment From 1829fe9cdfcdb9c342ce1b886a93d7727c5703e2 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Fri, 19 Jul 2019 18:27:08 -0700 Subject: [PATCH 065/312] LWG3055 path::operator+=(single-character) misspecified --- source/iostreams.tex | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/source/iostreams.tex b/source/iostreams.tex index 72291bd914..543b601772 100644 --- a/source/iostreams.tex +++ b/source/iostreams.tex @@ -11919,11 +11919,8 @@ path& operator+=(const string_type& x); path& operator+=(basic_string_view x); path& operator+=(const value_type* x); -path& operator+=(value_type x); template path& operator+=(const Source& x); -template - path& operator+=(EcharT x); template path& concat(const Source& x); \end{itemdecl} @@ -11940,6 +11937,19 @@ \returns \tcode{*this}. \end{itemdescr} +\indexlibrarymember{operator+=}{path}% +\indexlibrarymember{concat}{path}% +\begin{itemdecl} +path& operator+=(value_type x); +template + path& operator+=(EcharT x); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return *this += basic_string_view(\&x, 1);} +\end{itemdescr} + \indexlibrarymember{concat}{path}% \begin{itemdecl} template From 6fd6d8855e71b851e6cf164d84bc0c76fa25073e Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Fri, 19 Jul 2019 18:33:18 -0700 Subject: [PATCH 066/312] LWG3158 tuple(allocator_arg_t, const Alloc&) should be conditionally explicit --- source/utilities.tex | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 6711a0e710..8826dcad9d 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -1114,7 +1114,8 @@ // allocator-extended constructors template - constexpr tuple(allocator_arg_t, const Alloc& a); + constexpr explicit(@\seebelow@) + tuple(allocator_arg_t, const Alloc& a); template constexpr explicit(@\seebelow@) tuple(allocator_arg_t, const Alloc& a, const Types&...); @@ -1210,8 +1211,9 @@ \begin{note} This behavior can be implemented by a constructor template with default template arguments. \end{note} The expression inside \tcode{explicit} evaluates to \tcode{true} -if and only if $\tcode{T}_i$ is not implicitly -default-constructible for at least one $i$. +if and only if $\tcode{T}_i$ is not +copy-list-initializable from an empty list +for at least one $i$. \begin{note} This behavior can be implemented with a trait that checks whether a \tcode{const $\tcode{T}_i$\&} can be initialized with \tcode{\{\}}. \end{note} \end{itemdescr} @@ -1398,7 +1400,8 @@ \indexlibrary{\idxcode{tuple}!constructor}% \begin{itemdecl} template - constexpr tuple(allocator_arg_t, const Alloc& a); + constexpr explicit(@\seebelow@) + tuple(allocator_arg_t, const Alloc& a); template constexpr explicit(@\seebelow@) tuple(allocator_arg_t, const Alloc& a, const Types&...); From 408bb538efc3ea743076e104d0bda8095933598e Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Fri, 19 Jul 2019 18:50:42 -0700 Subject: [PATCH 067/312] LWG3169 ranges permutation generators discard useful information [alg.permutation.generators] Merged with changes qualifying declarator-id with sub-namespace. --- source/algorithms.tex | 42 ++++++++++++++++++++++++++++++++---------- 1 file changed, 32 insertions(+), 10 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index f68441ae72..f3fb970bf5 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -262,6 +262,7 @@ \tcode{for_each_result}, \tcode{minmax_result}, \tcode{mismatch_result}, +\tcode{next_permutation_result}, \tcode{copy_result}, and \tcode{partition_copy_result} have the template parameters, data members, and special members specified below. @@ -2852,15 +2853,21 @@ BidirectionalIterator last, Compare comp); namespace ranges { + template + struct next_permutation_result { + bool found; + I in; + }; + template S, class Comp = ranges::less, class Proj = identity> requires Sortable - constexpr bool + constexpr next_permutation_result next_permutation(I first, S last, Comp comp = {}, Proj proj = {}); template requires Sortable, Comp, Proj> - constexpr bool + constexpr next_permutation_result> next_permutation(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2872,15 +2879,18 @@ BidirectionalIterator last, Compare comp); namespace ranges { + template + using prev_permutation_result = next_permutation_result; + template S, class Comp = ranges::less, class Proj = identity> requires Sortable - constexpr bool + constexpr prev_permutation_result prev_permutation(I first, S last, Comp comp = {}, Proj proj = {}); template requires Sortable, Comp, Proj> - constexpr bool + constexpr prev_permutation_result> prev_permutation(R&& r, Comp comp = {}, Proj proj = {}); } } @@ -8430,12 +8440,12 @@ template S, class Comp = ranges::less, class Proj = identity> requires Sortable - constexpr bool + constexpr ranges::next_permutation_result ranges::next_permutation(I first, S last, Comp comp = {}, Proj proj = {}); template requires Sortable, Comp, Proj> - constexpr bool + constexpr ranges::next_permutation_result> ranges::next_permutation(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -8463,7 +8473,13 @@ \pnum \returns -\tcode{true} if and only if a next permutation was found. +Let \tcode{B} be \tcode{true} if a next permutation was found and +otherwise \tcode{false}. +Returns: +\begin{itemize} +\item \tcode{B} for the overloads in namespace \tcode{std}, or +\item \tcode{\{ B, last \}} for the overloads in namespace \tcode{ranges}. +\end{itemize} \pnum \complexity @@ -8483,12 +8499,12 @@ template S, class Comp = ranges::less, class Proj = identity> requires Sortable - constexpr bool + constexpr ranges::prev_permutation_result ranges::prev_permutation(I first, S last, Comp comp = {}, Proj proj = {}); template requires Sortable, Comp, Proj> - constexpr bool + constexpr ranges::prev_permutation_result> ranges::prev_permutation(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -8516,7 +8532,13 @@ \pnum \returns -\tcode{true} if and only if a previous permutation was found. +Let \tcode{B} be \tcode{true} if a previous permutation was found and +otherwise \tcode{false}. +Returns: +\begin{itemize} +\item \tcode{B} for the overloads in namespace \tcode{std}, or +\item \tcode{\{ B, last \}} for the overloads in namespace \tcode{ranges}. +\end{itemize} \pnum \complexity From bf75236c4966c4f09013ccf6a55531e1d7a8f953 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Fri, 19 Jul 2019 19:11:07 -0700 Subject: [PATCH 068/312] LWG3183 Normative permission to specialize Ranges variable templates [iterator.concept.sizedsentinel] Reworded to clarify what must be a program-defined type. --- source/iterators.tex | 9 +++++++++ source/ranges.tex | 14 +++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/source/iterators.tex b/source/iterators.tex index 79aefc84c1..18d7634a96 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1456,6 +1456,15 @@ \end{itemize} \end{itemdescr} +\pnum +Pursuant to \ref{namespace.std}, +users may specialize \tcode{disable_sized_sentinel} +for cv-unqualified non-array object types \tcode{S} and \tcode{I} +if either \tcode{S} or \tcode{I} is a program-defined type. +Such specializations shall +be usable in constant expressions\iref{expr.const} and +have type \tcode{const bool}. + \pnum \begin{note} \tcode{disable_sized_sentinel} allows use of sentinels and iterators with diff --git a/source/ranges.tex b/source/ranges.tex index 63afb6071e..d8aab213b9 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -812,6 +812,14 @@ \tcode{ranges::begin} and \tcode{ranges::end} in the \tcode{Range} concept. \end{note} +\pnum +Pursuant to \ref{namespace.std}, +users may specialize \tcode{disable_sized_range} +for cv-unqualified non-array object types. +Such specializations shall +be usable in constant expressions\iref{expr.const} and +have type \tcode{const bool}. + \pnum \begin{note} \tcode{disable_sized_range} allows use of range types with the library @@ -886,8 +894,12 @@ \pnum Pursuant to \ref{namespace.std}, users may specialize \tcode{enable_view} -to \tcode{true} for types which model \libconcept{View}, +to \tcode{true} +for cv-unqualified program-defined types which model \libconcept{View}, and \tcode{false} for types which do not. +Such specializations shall +be usable in constant expressions\iref{expr.const} and +have type \tcode{const bool}. \end{itemdescr} \rSec2[range.refinements]{Other range refinements} From 9821cff6a96db51c5b98786a76ed9b1f00a7cc46 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Fri, 19 Jul 2019 19:26:58 -0700 Subject: [PATCH 069/312] LWG3184 Inconsistencies in bind_front wording [func.not_fn],[func.bind_front] Maintained the , before "direct-non-list-initialized with" for consistency. --- source/utilities.tex | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 8826dcad9d..3ab2659633 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -15290,8 +15290,7 @@ \item \tcode{FD} is the type \tcode{decay_t}, \item \tcode{fd} is the target object of \tcode{g}\iref{func.def} of type \tcode{FD}, - initialized with - the \grammarterm{initializer} \tcode{(std::forward(f\brk{}))}\iref{dcl.init}, + direct-non-list-initialized with \tcode{std::forward(f)}, \item \tcode{call_args} is an argument pack used in a function call expression\iref{expr.call} of \tcode{g}. \end{itemize} @@ -15330,15 +15329,14 @@ \item \tcode{g} is a value of the result of a \tcode{bind_front} invocation, \item \tcode{FD} is the type \tcode{decay_t}, \item \tcode{fd} is the target object of \tcode{g}\iref{func.def} - of type \tcode{FD} initialized with - the \grammarterm{initializer} \tcode{(std::forward(\brk{}f))}\iref{dcl.init}, + of type \tcode{FD}, + direct-non-list-initialized with \tcode{std::forward(f)}, \item \tcode{BoundArgs} is a pack that denotes \tcode{std::unwrap_ref_decay_t...}, \item \tcode{bound_args} is a pack of bound argument entities of \tcode{g}\iref{func.def} of types \tcode{BoundArgs...}, - initialized with - \grammarterm{initializer}{s} \tcode{(std::forward(args))...}, + direct-non-list-initialized with \tcode{std::forward(args)...}, respectively, and \item \tcode{call_args} is an argument pack used in a function call expression\iref{expr.call} of \tcode{g}. @@ -15347,8 +15345,10 @@ \pnum \mandates \begin{codeblock} -conjunction_v, is_move_constructible, - is_constructible..., is_move_constructible...> +is_constructible_v && +is_move_constructible_v && +(is_constructible_v && ...) && +(is_move_constructible_v && ...) \end{codeblock} is true. From 9923e9c60fa5ec8bbba8dfe0e0f2e78d16d93a0c Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Fri, 19 Jul 2019 20:04:46 -0700 Subject: [PATCH 070/312] LWG3185 Uses-allocator construction functions missing constexpr and noexcept --- source/utilities.tex | 47 +++++++++++++++++++++++++++----------------- 1 file changed, 29 insertions(+), 18 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 3ab2659633..24fbc4c686 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -6577,22 +6577,28 @@ // \ref{allocator.uses.construction}, uses-allocator construction template - auto uses_allocator_construction_args(const Alloc& alloc, Args&&... args) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc, + Args&&... args) noexcept -> @\seebelow@; template - auto uses_allocator_construction_args(const Alloc& alloc, piecewise_construct_t, - Tuple1&& x, Tuple2&& y) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc, piecewise_construct_t, + Tuple1&& x, Tuple2&& y) + noexcept -> @\seebelow@; template - auto uses_allocator_construction_args(const Alloc& alloc) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc) noexcept -> @\seebelow@; template - auto uses_allocator_construction_args(const Alloc& alloc, U&& u, V&& v) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc, + U&& u, V&& v) noexcept -> @\seebelow@; template - auto uses_allocator_construction_args(const Alloc& alloc, const pair& pr) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc, + const pair& pr) noexcept -> @\seebelow@; template - auto uses_allocator_construction_args(const Alloc& alloc, pair&& pr) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc, + pair&& pr) noexcept -> @\seebelow@; template - T make_obj_using_allocator(const Alloc& alloc, Args&&... args); + constexpr T make_obj_using_allocator(const Alloc& alloc, Args&&... args); template - T* uninitialized_construct_using_allocator(T* p, const Alloc& alloc, Args&&... args); + constexpr T* uninitialized_construct_using_allocator(T* p, const Alloc& alloc, + Args&&... args); // \ref{allocator.traits}, allocator traits template struct allocator_traits; @@ -7455,7 +7461,8 @@ \indexlibrary{\idxcode{uses_allocator_construction_args}}% \begin{itemdecl} template - auto uses_allocator_construction_args(const Alloc& alloc, Args&&... args) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc, + Args&&... args) noexcept -> @\seebelow@; \end{itemdecl} \begin{itemdescr} @@ -7497,8 +7504,9 @@ \indexlibrary{\idxcode{uses_allocator_construction_args}}% \begin{itemdecl} template - auto uses_allocator_construction_args(const Alloc& alloc, piecewise_construct_t, - Tuple1&& x, Tuple2&& y) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc, piecewise_construct_t, + Tuple1&& x, Tuple2&& y) + noexcept -> @\seebelow@; \end{itemdecl} \begin{itemdescr} @@ -7526,7 +7534,7 @@ \indexlibrary{\idxcode{uses_allocator_construction_args}}% \begin{itemdecl} template - auto uses_allocator_construction_args(const Alloc& alloc) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc) noexcept -> @\seebelow@; \end{itemdecl} \begin{itemdescr} @@ -7546,7 +7554,8 @@ \indexlibrary{\idxcode{uses_allocator_construction_args}}% \begin{itemdecl} template - auto uses_allocator_construction_args(const Alloc& alloc, U&& u, V&& v) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc, + U&& u, V&& v) noexcept -> @\seebelow@; \end{itemdecl} \begin{itemdescr} @@ -7567,7 +7576,8 @@ \indexlibrary{\idxcode{uses_allocator_construction_args}}% \begin{itemdecl} template - auto uses_allocator_construction_args(const Alloc& alloc, const pair& pr) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc, + const pair& pr) noexcept -> @\seebelow@; \end{itemdecl} \begin{itemdescr} @@ -7588,7 +7598,8 @@ \indexlibrary{\idxcode{uses_allocator_construction_args}}% \begin{itemdecl} template - auto uses_allocator_construction_args(const Alloc& alloc, pair&& pr) -> @\seebelow@; + constexpr auto uses_allocator_construction_args(const Alloc& alloc, + pair&& pr) noexcept -> @\seebelow@; \end{itemdecl} \begin{itemdescr} @@ -7609,7 +7620,7 @@ \indexlibrary{\idxcode{make_obj_using_allocator}}% \begin{itemdecl} template - T make_obj_using_allocator(const Alloc& alloc, Args&&... args); + constexpr T make_obj_using_allocator(const Alloc& alloc, Args&&... args); \end{itemdecl} \begin{itemdescr} @@ -7625,7 +7636,7 @@ \indexlibrary{\idxcode{uninitialized_construct_using_allocator}}% \begin{itemdecl} template - T* uninitialized_construct_using_allocator(T* p, const Alloc& alloc, Args&&... args); + constexpr T* uninitialized_construct_using_allocator(T* p, const Alloc& alloc, Args&&... args); \end{itemdecl} \begin{itemdescr} From 38fcdbba411587efb4aca9430c049ab31fe0965a Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 04:13:24 -0700 Subject: [PATCH 071/312] LWG3186 ranges removal, partition, and partial_sort_copy algorithms discard useful information [algorithms] Merged with changes qualifying declarator-id with sub-namespace. --- source/algorithms.tex | 88 ++++++++++++++++++++++++++++--------------- 1 file changed, 58 insertions(+), 30 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index f3fb970bf5..2dbf75aea3 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1534,19 +1534,19 @@ namespace ranges { template S, class T, class Proj = identity> requires IndirectRelation, const T*> - constexpr I remove(I first, S last, const T& value, Proj proj = {}); + constexpr subrange remove(I first, S last, const T& value, Proj proj = {}); template requires Permutable> && IndirectRelation, Proj>, const T*> - constexpr safe_iterator_t + constexpr safe_subrange_t remove(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, IndirectUnaryPredicate> Pred> - constexpr I remove_if(I first, S last, Pred pred, Proj proj = {}); + constexpr subrange remove_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> requires Permutable> - constexpr safe_iterator_t + constexpr safe_subrange_t remove_if(R&& r, Pred pred, Proj proj = {}); } @@ -1619,11 +1619,11 @@ namespace ranges { template S, class Proj = identity, IndirectRelation> C = ranges::equal_to> - constexpr I unique(I first, S last, C comp = {}, Proj proj = {}); + constexpr subrange unique(I first, S last, C comp = {}, Proj proj = {}); template, Proj>> C = ranges::equal_to> requires Permutable> - constexpr safe_iterator_t + constexpr safe_subrange_t unique(R&& r, C comp = {}, Proj proj = {}); } @@ -1908,11 +1908,13 @@ Compare comp); namespace ranges { + template using partial_sort_copy_result = copy_result; + template S1, RandomAccessIterator I2, Sentinel S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable && Sortable && IndirectStrictWeakOrder, projected> - constexpr I2 + constexpr partial_sort_copy_result partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template, Comp, Proj2> && IndirectStrictWeakOrder, Proj1>, projected, Proj2>> - constexpr safe_iterator_t + constexpr partial_sort_copy_result, safe_iterator_t> partial_sort_copy(R1&& r, R2&& result_r, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); } @@ -2116,12 +2118,12 @@ namespace ranges { template S, class Proj = identity, IndirectUnaryPredicate> Pred> - constexpr I + constexpr subrange partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> requires Permutable> - constexpr safe_iterator_t + constexpr safe_subrange_t partition(R&& r, Pred pred, Proj proj = {}); } @@ -2139,11 +2141,11 @@ template S, class Proj = identity, IndirectUnaryPredicate> Pred> requires Permutable - I stable_partition(I first, S last, Pred pred, Proj proj = {}); + subrange stable_partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> requires Permutable> - safe_iterator_t stable_partition(R&& r, Pred pred, Proj proj = {}); + safe_subrange_t stable_partition(R&& r, Pred pred, Proj proj = {}); } template S, class T, class Proj = identity> requires IndirectRelation, const T*> - constexpr I ranges::remove(I first, S last, const T& value, Proj proj = {}); + constexpr subrange ranges::remove(I first, S last, const T& value, Proj proj = {}); template requires Permutable> && IndirectRelation, Proj>, const T*> - constexpr safe_iterator_t + constexpr safe_subrange_t ranges::remove(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, IndirectUnaryPredicate> Pred> - constexpr I ranges::remove_if(I first, S last, Pred pred, Proj proj = {}); + constexpr subrange ranges::remove_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> requires Permutable> - constexpr safe_iterator_t + constexpr safe_subrange_t ranges::remove_if(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -5008,7 +5010,11 @@ \pnum \returns -The end of the resulting range. +Let $j$ be the end of the resulting range. Returns: +\begin{itemize} +\item $j$ for the overloads in namespace \tcode{std}, or +\item \tcode{\{$j$, last\}} for the overloads in namespace \tcode{ranges}. +\end{itemize} \pnum \remarks @@ -5144,11 +5150,11 @@ template S, class Proj = identity, IndirectRelation> C = ranges::equal_to> - constexpr I ranges::unique(I first, S last, C comp = {}, Proj proj = {}); + constexpr subrange ranges::unique(I first, S last, C comp = {}, Proj proj = {}); template, Proj>> C = ranges::equal_to> requires Permutable> - constexpr safe_iterator_t + constexpr safe_subrange_t ranges::unique(R&& r, C comp = {}, Proj proj = {}); \end{itemdecl} @@ -5183,7 +5189,11 @@ \pnum \returns -The end of the resulting range. +Let $j$ be the end of the resulting range. Returns: +\begin{itemize} +\item $j$ for the overloads in namespace \tcode{std}, or +\item \tcode{\{$j$, last\}} for the overloads in namespace \tcode{ranges}. +\end{itemize} \pnum \complexity @@ -6063,7 +6073,7 @@ class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable && Sortable && IndirectStrictWeakOrder, projected> - constexpr I2 + constexpr ranges::partial_sort_copy_result ranges::partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template, Comp, Proj2> && IndirectStrictWeakOrder, Proj1>, projected, Proj2>> - constexpr safe_iterator_t + constexpr ranges::partial_sort_copy_result, safe_iterator_t> ranges::partial_sort_copy(R1&& r, R2&& result_r, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); \end{itemdecl} @@ -6120,7 +6130,13 @@ \pnum \returns -\tcode{result_first + $N$}. +\begin{itemize} +\item + \tcode{result_first + $N$} for the overloads in namespace \tcode{std}, or +\item + \tcode{\{last, result_first + $N$\}} for + the overloads in namespace \tcode{ranges}. +\end{itemize} \pnum \complexity @@ -6608,12 +6624,12 @@ template S, class Proj = identity, IndirectUnaryPredicate> Pred> - constexpr I + constexpr subrange ranges::partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> requires Permutable> - constexpr safe_iterator_t + constexpr safe_subrange_t ranges::partition(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -6636,9 +6652,15 @@ \pnum \returns -An iterator \tcode{i} such that $E(\tcode{*j})$ is +Let \tcode{i} be an iterator such that $E(\tcode{*j})$ is \tcode{true} for every iterator \tcode{j} in \range{first}{i} and \tcode{false} for every iterator \tcode{j} in \range{i}{last}. +Returns: +\begin{itemize} +\item \tcode{i} for the overloads in namespace \tcode{std}, or +\item \tcode{\{i, last\}} for the overloads in namespace \tcode{ranges}. +\end{itemize} + \pnum \complexity Let $N = \tcode{last - first}$: @@ -6672,11 +6694,11 @@ template S, class Proj = identity, IndirectUnaryPredicate> Pred> requires Permutable - I ranges::stable_partition(I first, S last, Pred pred, Proj proj = {}); + subrange ranges::stable_partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> requires Permutable> - safe_iterator_t ranges::stable_partition(R&& r, Pred pred, Proj proj = {}); + safe_subrange_t ranges::stable_partition(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} \begin{itemdescr} @@ -6701,11 +6723,17 @@ \pnum \returns -An iterator \tcode{i} +Let \tcode{i} be an iterator such that for every iterator \tcode{j} in \range{first}{i}, $E(\tcode{*j})$ is \tcode{true}, and for every iterator \tcode{j} in the range \range{i}{last}, -$E(\tcode{*j})$ is \tcode{false}, +$E(\tcode{*j})$ is \tcode{false}. +Returns: +\begin{itemize} +\item \tcode{i} for the overloads in namespace \tcode{std}, or +\item \tcode{\{i, last\}} for the overloads in namespace \tcode{ranges}. +\end{itemize} + \pnum \complexity From 7cc8b364f980e3938595189442d9184d938abe27 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 04:19:39 -0700 Subject: [PATCH 072/312] LWG3187 P0591R4 reverted DR 2586 fixes to scoped_allocator_adaptor::construct() --- source/utilities.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 24fbc4c686..e8ef40c154 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -7480,7 +7480,7 @@ return \tcode{forward_as_tuple(std::forward(args)...)}. \item Otherwise, if \tcode{uses_allocator_v} is \tcode{true} and - \tcode{is_constructible_v} + \tcode{is_constructible_v} is \tcode{true}, return \begin{codeblock} @@ -7489,7 +7489,7 @@ \end{codeblock} \item Otherwise, if \tcode{uses_allocator_v} is \tcode{true} and - \tcode{is_constructible_v} is \tcode{true}, + \tcode{is_constructible_v} is \tcode{true}, return \tcode{forward_as_tuple(std::forward(args)..., alloc)}. \item Otherwise, the program is ill-formed. From 40b0edd6dbef998d1b7ceddb453bed1d3c772698 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 04:21:41 -0700 Subject: [PATCH 073/312] LWG3191 std::ranges::shuffle synopsis does not match algorithm definition --- source/algorithms.tex | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 2dbf75aea3..7d42b90c67 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1768,13 +1768,11 @@ namespace ranges { template S, class Gen> requires Permutable && - UniformRandomBitGenerator> && - ConvertibleTo, iter_difference_t> + UniformRandomBitGenerator> I shuffle(I first, S last, Gen&& g); template requires Permutable> && - UniformRandomBitGenerator> && - ConvertibleTo, iter_difference_t>> + UniformRandomBitGenerator> safe_iterator_t shuffle(R&& r, Gen&& g); } From 4bc35691af4009c2b5801fe5d7c2ff1df3c68d64 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Tue, 23 Jul 2019 17:29:34 -0700 Subject: [PATCH 074/312] LWG3196 std::optional is ill-formed if T is an array --- source/lib-intro.tex | 7 ++++++- source/utilities.tex | 8 ++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 5535113c42..eb33e34bec 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -1736,7 +1736,12 @@ {p{1in}p{4.15in}} \topline \hdstyle{Expression} & \hdstyle{Post-condition} \\ \capsep -\tcode{u.\~T()} & All resources owned by \tcode{u} are reclaimed, no exception is propagated. \\ +\tcode{u.\~T()} & All resources owned by \tcode{u} are reclaimed, no exception is propagated. \\ \rowsep +\multicolumn{2}{|l|}{ + \begin{note} + Array types and non-object types are not \oldconcept{Destructible}. + \end{note} +} \\ \end{concepttable} \rSec3[swappable.requirements]{Swappable requirements} diff --git a/source/utilities.tex b/source/utilities.tex index e8ef40c154..9adf705f85 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -2295,9 +2295,9 @@ Member \tcode{val} is provided for exposition only. When an \tcode{optional} object contains a value, \tcode{val} points to the contained value. \pnum -\tcode{T} shall be an object type +\tcode{T} shall be a type other than \cv{} \tcode{in_place_t} or \cv{} \tcode{nullopt_t} -and shall meet the \oldconcept{Destructible} requirements (\tref{cpp17.destructible}). +that meets the \oldconcept{Destructible} requirements (\tref{cpp17.destructible}). \rSec3[optional.ctor]{Constructors} @@ -3882,8 +3882,8 @@ storage suitably aligned for all types in \tcode{Types}. \pnum -All types in \tcode{Types} shall be (possibly cv-qualified) -object types that are not arrays. +All types in \tcode{Types} shall meet +the \oldconcept{Destructible} requirements (\tref{cpp17.destructible}). \pnum A program that instantiates the definition of \tcode{variant} with From 607e627ec9dea9cb07d1f0de783c51c96709f081 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 05:48:13 -0700 Subject: [PATCH 075/312] LWG3198 Bad constraint on std::span::span() --- source/containers.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/containers.tex b/source/containers.tex index df227bfcd6..b1f99b0770 100644 --- a/source/containers.tex +++ b/source/containers.tex @@ -10585,7 +10585,7 @@ \begin{itemdescr} \pnum \constraints -\tcode{Extent <= 0} is \tcode{true}. +\tcode{Extent == dynamic_extent || Extent == 0} is \tcode{true}. \pnum \ensures From 2a84e0a3eb498494c6313117c4ef94841052502f Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 05:03:25 -0700 Subject: [PATCH 076/312] LWG3199 istream >> bitset<0> fails --- source/utilities.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/utilities.tex b/source/utilities.tex index 9adf705f85..4cc40bc77c 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -6487,7 +6487,7 @@ \end{itemize} \pnum -If no characters are stored in \tcode{str}, calls +If \tcode{N > 0} and no characters are stored in \tcode{str}, calls \tcode{is.setstate(ios_base::failbit)} (which may throw \tcode{ios_base::failure}\iref{iostate.flags}). From 891bcbf0d5e8ec1fae1efa85829b3e899374cce4 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 05:12:00 -0700 Subject: [PATCH 077/312] LWG3202 P0318R1 was supposed to be revised --- source/utilities.tex | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/source/utilities.tex b/source/utilities.tex index 4cc40bc77c..fdfba217cd 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -13833,7 +13833,8 @@ template reference_wrapper cref(reference_wrapper) noexcept; template struct unwrap_reference; - template struct unwrap_ref_decay : unwrap_reference> {}; + template using unwrap_reference_t = typename unwrap_reference::type; + template struct unwrap_ref_decay; template using unwrap_ref_decay_t = typename unwrap_ref_decay::type; // \ref{arithmetic.operations}, arithmetic operations @@ -14325,11 +14326,25 @@ struct unwrap_reference; \end{itemdecl} +\begin{itemdescr} \pnum If \tcode{T} is a specialization \tcode{reference_wrapper} for some type \tcode{X}, the member typedef \tcode{type} of \tcode{unwrap_reference} is \tcode{X\&}, otherwise it is \tcode{T}. +\end{itemdescr} + +\indexlibrary{\idxcode{unwrap_ref_decay}}% +\begin{itemdecl} +template + struct unwrap_ref_decay; +\end{itemdecl} + +\begin{itemdescr} +\pnum +The member typedef \tcode{type} of \tcode{unwrap_ref_decay} +denotes the type \tcode{unwrap_reference_t>}. +\end{itemdescr} \rSec2[arithmetic.operations]{Arithmetic operations} From 3d671602cc5ab2330f1209a8398b25ba8d0d94a0 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 05:22:14 -0700 Subject: [PATCH 078/312] LWG3206 year_month_day conversion to sys_days uses not-existing member function --- source/time.tex | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/source/time.tex b/source/time.tex index 9670880241..8bdffd8c16 100644 --- a/source/time.tex +++ b/source/time.tex @@ -6461,9 +6461,7 @@ holding a count of days from the \tcode{sys_days} epoch to \tcode{*this} (a negative value if \tcode{*this} represents a date prior to the \tcode{sys_days} epoch). Otherwise, if \tcode{y_.ok() \&\& m_.ok()} is \tcode{true}, -returns a \tcode{sys_days} -which is offset from \tcode{sys_days\{y_/m_/last\}} -by the number of days \tcode{d_} is offset from \tcode{sys_days\{y_/m_/last\}.day()}. +returns \tcode{sys_days\{y_/m_/ld\} + (d_ - 1d)}. Otherwise the value returned is unspecified. \pnum From 26e38d3feabeb2b2f466c6fe2f5902f5033b9936 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 05:35:55 -0700 Subject: [PATCH 079/312] LWG3208 Boolean's expression requirements are ordered inconsistently --- source/concepts.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index a2969a1163..e915c685f4 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -823,11 +823,11 @@ const remove_reference_t& b2, const bool a) { { b1 } -> ConvertibleTo; { !b1 } -> ConvertibleTo; - { b1 && a } -> Same; - { b1 || a } -> Same; { b1 && b2 } -> Same; + { b1 && a } -> Same; { a && b2 } -> Same; { b1 || b2 } -> Same; + { b1 || a } -> Same; { a || b2 } -> Same; { b1 == b2 } -> ConvertibleTo; { b1 == a } -> ConvertibleTo; From b969599c8e87c2cea2dce5957997921059fe861d Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Sat, 20 Jul 2019 05:38:27 -0700 Subject: [PATCH 080/312] LWG3209 Expression in year::ok() returns clause is ill-formed --- source/time.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/time.tex b/source/time.tex index 8bdffd8c16..c08fbe2457 100644 --- a/source/time.tex +++ b/source/time.tex @@ -4731,7 +4731,7 @@ \begin{itemdescr} \pnum -\returns \tcode{min() <= y_ \&\& y_ <= max()}. +\returns \tcode{min().y_ <= y_ \&\& y_ <= max().y_}. \end{itemdescr} \indexlibrarymember{min}{year}% From 4a657ca3e26850a993c2015bbecd6287e817a615 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 3 Aug 2019 18:51:09 -0700 Subject: [PATCH 081/312] [iterator.concept.sizedsentinel], [range.sized], [range.view] Provide proper descriptions for disable_sized_sentinel, disable_sized_range, and enable_view. --- source/iterators.tex | 9 +++++++++ source/ranges.tex | 33 ++++++++++++++++++++++++--------- 2 files changed, 33 insertions(+), 9 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index 18d7634a96..54a0a2e6eb 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1456,7 +1456,15 @@ \end{itemize} \end{itemdescr} +\indexlibrary{\idxcode{disable_sized_sentinel}}% +\begin{itemdecl} +template + inline constexpr bool disable_sized_sentinel = false; +\end{itemdecl} + +\begin{itemdescr} \pnum +\remarks Pursuant to \ref{namespace.std}, users may specialize \tcode{disable_sized_sentinel} for cv-unqualified non-array object types \tcode{S} and \tcode{I} @@ -1477,6 +1485,7 @@ \libconcept{RandomAccessIterator}s\iref{iterator.concept.random.access} and by counted iterators and their sentinels\iref{counted.iterator}. \end{example} +\end{itemdescr} \rSec3[iterator.concept.input]{Concept \tcode{InputIterator}} diff --git a/source/ranges.tex b/source/ranges.tex index d8aab213b9..be8cd2b485 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -811,8 +811,17 @@ is non-amortized, unlike the case for the complexity of the evaluations of \tcode{ranges::begin} and \tcode{ranges::end} in the \tcode{Range} concept. \end{note} +\end{itemdescr} + +\indexlibrary{\idxcode{disable_sized_range}}% +\begin{itemdecl} +template + inline constexpr bool disable_sized_range = false; +\end{itemdecl} +\begin{itemdescr} \pnum +\remarks Pursuant to \ref{namespace.std}, users may specialize \tcode{disable_sized_range} for cv-unqualified non-array object types. @@ -829,6 +838,15 @@ \rSec2[range.view]{Views} +\indexlibrary{\idxcode{View}}% +\begin{itemdecl} +template + concept View = + Range && Semiregular && enable_view; +\end{itemdecl} + +\begin{itemdescr} +% FIXME: This should explicitly say when View is modeled. \pnum The \tcode{View} concept specifies the requirements of a \libconcept{Range} type that has constant time copy, move, and assignment operators; that is, the cost of @@ -852,24 +870,21 @@ copying the container copies the elements, which cannot be done in constant time. \end{example} +\end{itemdescr} + +\pnum +Since the difference between \libconcept{Range} and \libconcept{View} is largely +semantic, the two are differentiated with the help of \tcode{enable_view}. \indexlibrary{\idxcode{enable_view}}% -\indexlibrary{\idxcode{View}}% \begin{itemdecl} template inline constexpr bool enable_view = @\seebelow@; - -template - concept View = - Range && Semiregular && enable_view; \end{itemdecl} \begin{itemdescr} \pnum -Since the difference between \libconcept{Range} and \libconcept{View} is largely -semantic, the two are differentiated with the help of \tcode{enable_view}. - -\pnum +\remarks For a type \tcode{T}, the default value of \tcode{enable_view} is: \begin{itemize} From 73804f84a043e045f73f5f1b1fa356d0b24e1bcc Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Mon, 22 Jul 2019 11:50:50 +0200 Subject: [PATCH 082/312] P1355R2 Exposing a narrow contract for ceil2 - Also adjusted the synopsis. --- source/numerics.tex | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/source/numerics.tex b/source/numerics.tex index 5f1defb9d6..2eea56ee93 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -1312,7 +1312,7 @@ template constexpr bool ispow2(T x) noexcept; template - constexpr T ceil2(T x) noexcept; + constexpr T ceil2(T x); template constexpr T floor2(T x) noexcept; template @@ -1382,21 +1382,34 @@ \indexlibrary{\idxcode{ceil2}}% \begin{itemdecl} template - constexpr T ceil2(T x) noexcept; + constexpr T ceil2(T x); \end{itemdecl} \begin{itemdescr} +\pnum +Let $N$ be the smallest power of 2 greater than or equal to \tcode{x}. + +\pnum +\constraints +\tcode{T} is an unsigned integer type\iref{basic.fundamental}. + +\pnum +\expects +$N$ is representable as a value of type \tcode{T}. + \pnum \returns -The minimal value \tcode{y} such that -\tcode{ispow2(y)} is \tcode{true} and \tcode{y >= x}; -if \tcode{y} is not representable as a value of type \tcode{T}, -the result is an unspecified value. +$N$. + +\pnum +\throws +Nothing. \pnum \remarks -This function shall not participate in overload resolution -unless \tcode{T} is an unsigned integer type\iref{basic.fundamental}. +A function call expression +that violates the precondition in the \expects element +is not a core constant expression\iref{expr.const}. \end{itemdescr} \indexlibrary{\idxcode{floor2}}% From 33c130fd3541339d761dabf7c30b75061d348bfe Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Mon, 22 Jul 2019 14:39:40 +0200 Subject: [PATCH 083/312] P0553R4 Bit operations - Renamed stable labels. --- source/numerics.tex | 166 ++++++++++++++++++++++++++++++++++++++++++++ source/support.tex | 2 + 2 files changed, 168 insertions(+) diff --git a/source/numerics.tex b/source/numerics.tex index 2eea56ee93..d394900ad8 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -1317,6 +1317,24 @@ constexpr T floor2(T x) noexcept; template constexpr T log2p1(T x) noexcept; + + // \ref{bit.rotate}, rotating + template + [[nodiscard]] constexpr T rotl(T x, int s) noexcept; + template + [[nodiscard]] constexpr T rotr(T x, int s) noexcept; + + // \ref{bit.count}, counting + template + constexpr int countl_zero(T x) noexcept; + template + constexpr int countl_one(T x) noexcept; + template + constexpr int countr_zero(T x) noexcept; + template + constexpr int countr_one(T x) noexcept; + template + constexpr int popcount(T x) noexcept; } \end{codeblock} @@ -1450,6 +1468,154 @@ unless \tcode{T} is an unsigned integer type\iref{basic.fundamental}. \end{itemdescr} +\rSec2[bit.rotate]{Rotating} + +In the following descriptions, +let \tcode{N} denote \tcode{std::numeric_limits::digits}. + +\begin{itemdecl} +template + [[nodiscard]] constexpr T rotl(T x, int s) noexcept; +\end{itemdecl} + +\indexlibrary{\idxcode{rotl}}% +\begin{itemdescr} +\pnum +\constraints +\tcode{T} is an unsigned integer type\iref{basic.fundamental}. + +\pnum +Let \tcode{r} be \tcode{s \% N}. + +\pnum +\returns +If \tcode{r} is \tcode{0}, \tcode{x}; +if \tcode{r} is positive, \tcode{(x << r) | (x >> (N - r))}; +if \tcode{r} is negative, \tcode{rotr(x, -r)}. +\end{itemdescr} + +\begin{itemdecl} +template + [[nodiscard]] constexpr T rotr(T x, int s) noexcept; +\end{itemdecl} + +\indexlibrary{\idxcode{rotr}}% +\begin{itemdescr} +\pnum +\constraints +\tcode{T} is an unsigned integer type\iref{basic.fundamental}. + +\pnum +Let \tcode{r} be \tcode{s \% N}. + +\pnum +\returns +If \tcode{r} is \tcode{0}, \tcode{x}; +if \tcode{r} is positive, \tcode{(x >> r) | (x << (N - r))}; +if \tcode{r} is negative, \tcode{rotl(x, -r)}. +\end{itemdescr} + +\rSec2[bit.count]{Counting} + +In the following descriptions, +let \tcode{N} denote \tcode{std::numeric_limits::digits}. + +\begin{itemdecl} +template + constexpr int countl_zero(T x) noexcept; +\end{itemdecl} + +\indexlibrary{\idxcode{countl_zero}}% +\begin{itemdescr} +\pnum +\constraints +\tcode{T} is an unsigned integer type\iref{basic.fundamental}. + +\pnum +\returns +The number of consecutive \tcode{0} bits in the value of \tcode{x}, +starting from the most significant bit. +\begin{note} +Returns \tcode{N} if \tcode{x == 0}. +\end{note} +\end{itemdescr} + +\begin{itemdecl} +template + constexpr int countl_one(T x) noexcept; +\end{itemdecl} + +\indexlibrary{\idxcode{countl_one}}% +\begin{itemdescr} +\pnum +\constraints +\tcode{T} is an unsigned integer type\iref{basic.fundamental}. + +\pnum +\returns +The number of consecutive \tcode{1} bits in the value of \tcode{x}, +starting from the most significant bit. +\begin{note} +Returns \tcode{N} if \tcode{x == std::numeric_limits::max()}. +\end{note} +\end{itemdescr} + +\begin{itemdecl} +template + constexpr int countr_zero(T x) noexcept; +\end{itemdecl} + +\indexlibrary{\idxcode{countr_zero}}% +\begin{itemdescr} +\pnum +\constraints +\tcode{T} is an unsigned integer type\iref{basic.fundamental}. + +\pnum +\returns +The number of consecutive \tcode{0} bits in the value of \tcode{x}, +starting from the least significant bit. +\begin{note} +Returns \tcode{N} if \tcode{x == 0}. +\end{note} +\end{itemdescr} + +\begin{itemdecl} +template + constexpr int countr_one(T x) noexcept; +\end{itemdecl} + +\indexlibrary{\idxcode{countr_one}}% +\begin{itemdescr} +\pnum +\constraints +\tcode{T} is an unsigned integer type\iref{basic.fundamental}. + +\pnum +\returns +The number of consecutive \tcode{1} bits in the value of \tcode{x}, +starting from the least significant bit. +\begin{note} +Returns \tcode{N} if \tcode{x == std::numeric_limits::max()}. +\end{note} +\end{itemdescr} + +\begin{itemdecl} +template + constexpr int popcount(T x) noexcept; +\end{itemdecl} + +\indexlibrary{\idxcode{popcount}}% +\begin{itemdescr} +\pnum +\constraints +\tcode{T} is an unsigned integer type\iref{basic.fundamental}. + +\pnum +\returns +The number of \tcode{1} bits in the value of \tcode{x}. +\end{itemdescr} + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/source/support.tex b/source/support.tex index 1fbc8f5ab1..c5918a03a9 100644 --- a/source/support.tex +++ b/source/support.tex @@ -547,6 +547,8 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_bind_front} & \tcode{201811L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_bitops} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_bool_constant} & \tcode{201505L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_bounded_array_traits} & \tcode{201902L} & From 796c871f9b14a42fea634ec97a35032bfe3c422a Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 23 Jul 2019 09:57:04 +0200 Subject: [PATCH 084/312] [bit] Avoid std::numeric_limits<...> Referring to numeric_limits (without std:: prefix) is sufficient. --- source/numerics.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/numerics.tex b/source/numerics.tex index d394900ad8..5fe1610a3f 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -1471,7 +1471,7 @@ \rSec2[bit.rotate]{Rotating} In the following descriptions, -let \tcode{N} denote \tcode{std::numeric_limits::digits}. +let \tcode{N} denote \tcode{numeric_limits::digits}. \begin{itemdecl} template @@ -1518,7 +1518,7 @@ \rSec2[bit.count]{Counting} In the following descriptions, -let \tcode{N} denote \tcode{std::numeric_limits::digits}. +let \tcode{N} denote \tcode{numeric_limits::digits}. \begin{itemdecl} template @@ -1556,7 +1556,7 @@ The number of consecutive \tcode{1} bits in the value of \tcode{x}, starting from the most significant bit. \begin{note} -Returns \tcode{N} if \tcode{x == std::numeric_limits::max()}. +Returns \tcode{N} if \tcode{x == numeric_limits::max()}. \end{note} \end{itemdescr} @@ -1596,7 +1596,7 @@ The number of consecutive \tcode{1} bits in the value of \tcode{x}, starting from the least significant bit. \begin{note} -Returns \tcode{N} if \tcode{x == std::numeric_limits::max()}. +Returns \tcode{N} if \tcode{x == numeric_limits::max()}. \end{note} \end{itemdescr} From 122ad852a9d87321b50c4ef0a894f1df9af20de9 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Mon, 22 Jul 2019 18:40:01 +0200 Subject: [PATCH 085/312] P1424R1 'constexpr' feature macro concerns --- source/support.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/support.tex b/source/support.tex index c5918a03a9..ed60d6c4b6 100644 --- a/source/support.tex +++ b/source/support.tex @@ -571,9 +571,9 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_concepts} & \tcode{201806L} & \tcode{} \\ \rowsep -\defnlibxname{cpp_lib_constexpr_misc} & \tcode{201811L} & - \tcode{} \tcode{} \tcode{} - \tcode{} \tcode{} \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_constexpr} & \tcode{201811L} & + any C++ library header from \tref{headers.cpp} or + any C++ header for C library facilities from \tref{headers.cpp.c} \\ \rowsep \defnlibxname{cpp_lib_constexpr_swap_algorithms} & \tcode{201806L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_constexpr_dynamic_alloc} & \tcode{201907L} & From c42ed2a8411fab44c4a368c87bef80bfb1067c7f Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 30 Jul 2019 16:46:47 -0700 Subject: [PATCH 086/312] P0645R10 Text formatting Editorial cleanups throughout. Converted grammar to proper grammar formatting. Removed incorrect single and double quotes that caused the wording to be meaningless for wchar_t. Converted some duplicated normative wording to notes. --- source/lib-intro.tex | 7 +- source/macros.tex | 7 + source/support.tex | 2 + source/utilities.tex | 1748 +++++++++++++++++++++++++++++++++++++++++- 4 files changed, 1760 insertions(+), 4 deletions(-) diff --git a/source/lib-intro.tex b/source/lib-intro.tex index eb33e34bec..46037651b7 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -1227,8 +1227,9 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\tcode{} \\ +\tcode{} \\ \columnbreak +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -1246,8 +1247,8 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\tcode{} \\ \columnbreak +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -1265,8 +1266,8 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\tcode{} \\ \columnbreak +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ diff --git a/source/macros.tex b/source/macros.tex index 0659030280..5e81f4df44 100644 --- a/source/macros.tex +++ b/source/macros.tex @@ -165,6 +165,7 @@ \newcommand{\idxcode}[1]{#1@\tcode{#1}} \newcommand{\idxhdr}[1]{#1@\tcode{<#1>}} \newcommand{\idxgram}[1]{#1@\gterm{#1}} +\newcommand{\idxterm}[1]{#1@\term{#1}} \newcommand{\idxxname}[1]{__#1@\xname{#1}} % class member library index @@ -331,6 +332,12 @@ \newcommand{\oldconcept}[1]{\textit{Cpp17#1}} \newcommand{\oldconceptdefn}[1]{\defn{Cpp17#1}} \newcommand{\idxoldconcept}[1]{Cpp17#1@\textit{Cpp17#1}} +% FIXME: A "new" oldconcept (added after C++17), +% which doesn't get a Cpp17 prefix. +\newcommand{\newoldconcept}[1]{\textit{#1}} +\newcommand{\newoldconceptdefn}[1]{\defn{#1}} +\newcommand{\idxnewoldconcept}[1]{#1@\textit{#1}} + \newcommand{\libconcept}[1]{\tcode{#1}} %% Ranges diff --git a/source/support.tex b/source/support.tex index ed60d6c4b6..2abe5fbc77 100644 --- a/source/support.tex +++ b/source/support.tex @@ -592,6 +592,8 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_filesystem} & \tcode{201703L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_format} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_gcd_lcm} & \tcode{201606L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_generic_associative_lookup} & \tcode{201304L} & diff --git a/source/utilities.tex b/source/utilities.tex index fdfba217cd..30c874ec6f 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -27,7 +27,8 @@ \ref{ratio} & Compile-time rational arithmetic & \tcode{} \\ \rowsep \ref{type.index} & Type indexes & \tcode{} \\ \rowsep \ref{execpol} & Execution policies & \tcode{} \\ \rowsep -\ref{charconv} & Primitive numeric conversions & \tcode{} \\ +\ref{charconv} & Primitive numeric conversions & \tcode{} \\ \rowsep +\ref{format} & Formatting & \tcode{} \\ \end{libsumtab} \rSec1[utility]{Utility components} @@ -19492,3 +19493,1748 @@ \end{itemdescr} \xrefc{7.22.1.3, 7.22.1.4} + +\rSec1[format]{Formatting} + +\rSec2[format.syn]{Header \tcode{} synopsis} + +\indexhdr{format}% +\indexlibrary{\idxcode{format_parse_context}}% +\indexlibrary{\idxcode{wformat_parse_context}}% +\indexlibrary{\idxcode{format_context}}% +\indexlibrary{\idxcode{wformat_context}}% +\indexlibrary{\idxcode{format_args}}% +\indexlibrary{\idxcode{wformat_args}}% +\indexlibrary{\idxcode{format_args_t}}% +\indexlibrary{\idxcode{format_to_n_result}}% +\indexlibrarymember{out}{format_to_n_result}% +\indexlibrarymember{size}{format_to_n_result}% +% FIXME: Reorder this to match the presentation. +\begin{codeblock} +namespace std { + // \ref{format.functions}, formatting functions + template + string format(string_view fmt, const Args&... args); + template + wstring format(wstring_view fmt, const Args&... args); + + string vformat(string_view fmt, format_args args); + wstring vformat(wstring_view fmt, wformat_args args); + + template + Out format_to(Out out, string_view fmt, const Args&... args); + template + Out format_to(Out out, wstring_view fmt, const Args&... args); + + template + Out vformat_to(Out out, string_view fmt, format_args_t args); + template + Out vformat_to(Out out, wstring_view fmt, format_args_t args); + + template struct format_to_n_result { + Out out; + iter_difference_t size; + }; + template + format_to_n_result format_to_n(Out out, iter_difference_t n, + string_view fmt, const Args&... args); + template + format_to_n_result format_to_n(Out out, iter_difference_t n, + wstring_view fmt, const Args&... args); + + template + size_t formatted_size(string_view fmt, const Args&... args); + template + size_t formatted_size(wstring_view fmt, const Args&... args); + + // \ref{format.formatter}, formatter + template struct formatter; + + // \ref{format.parse.ctx}, class template \tcode{basic_format_parse_context} + template class basic_format_parse_context; + using format_parse_context = basic_format_parse_context; + using wformat_parse_context = basic_format_parse_context; + + template class basic_format_context; + using format_context = basic_format_context<@\unspec@, char>; + using wformat_context = basic_format_context<@\unspec@, wchar_t>; + + // \ref{format.arguments}, arguments + // \ref{format.arg}, class template \tcode{basic_format_arg} + template class basic_format_arg; + + template + @\seebelow@ visit_format_arg(Visitor&& vis, basic_format_arg arg); + + // \ref{format.arg.store}, class template \exposid{format-arg-store} + template struct @\placeholder{format-arg-store}@; // \expos + + template + @\placeholder{format-arg-store}@ + make_format_args(const Args&... args); + template + @\placeholder{format-arg-store}@ + make_wformat_args(const Args&... args); + + // \ref{format.args}, class template \tcode{basic_format_args} + template class basic_format_args; + using format_args = basic_format_args; + using wformat_args = basic_format_args; + + template + using format_args_t = basic_format_args>; + + // \ref{format.error}, class \tcode{format_error} + class format_error; +} +\end{codeblock} + +\rSec2[format.string]{Format string} + +% FIXME: For now, keep the format grammar productions out of the index, since +% they conflict with the main grammar. +% Consider renaming these en masse (to fmt-* ?) to avoid this problem. +\newcommand{\fmtnontermdef}[1]{{\BnfNontermshape#1\itcorr}\textnormal{:}} +\newcommand{\fmtgrammarterm}[1]{\gterm{#1}} + +\pnum +A \defn{format string} is a (possibly empty) sequence of +\defnx{replacement fields}{replacement field!format string}, +\defnx{escape sequences}{escape sequence!format string}, +and other characters. +Let \tcode{charT} be the character type of the format string. +Each character that is not part of +a replacement field or an escape sequence +is copied unchanged to the output. +An escape sequence is one of \tcode{\{\{} or \tcode{\}\}}. +It is replaced with \tcode{\{} or \tcode{\}}, respectively, in the output. +The syntax of replacement fields is as follows: + +\begin{ncbnf} +\fmtnontermdef{replacement-field}\br + \terminal{\{} \opt{arg-id} \opt{format-spec} \terminal{\}} +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{arg-id}\br + \terminal{0}\br + nonzero-digit \opt{integer} +\end{ncbnf} + +% FIXME: This is a bad grammar for an integer, as it allows leading zeroes. +% All uses disallow that by adding an initial nonzero-digit; we should move +% that here for simplicity and rename this to positive-integer. +% FIXME: Switch to left-recursion per our normal convention. +\begin{ncbnf} +\fmtnontermdef{integer}\br + digit \opt{integer} +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{nonzero-digit} \textnormal{one of}\br + \terminal{1 2 3 4 5 6 7 8 9} +\end{ncbnf} + +% FIXME: This exactly duplicates the digit grammar term from [lex] +\begin{ncbnf} +\fmtnontermdef{digit} \textnormal{one of}\br + \terminal{0 1 2 3 4 5 6 7 8 9} +\end{ncbnf} + +\pnum +The \fmtgrammarterm{arg-id} field specifies the index of +% FIXME: "args" hasn't been introduced yet! +the argument in \tcode{args} +whose value is to be formatted and inserted into the output +instead of the replacement field. +The optional \fmtgrammarterm{format-spec} field +explicitly specifies a format for the replacement value. + +\pnum +\begin{example} +\begin{codeblock} +string s = format("{0}-{{", 8); // value of \tcode{s} is \tcode{"8-\{"} +\end{codeblock} +\end{example} + +\pnum +% FIXME: Rephrase this into something more like a language rule +% and less like a tutorial. +If the numeric \fmtgrammarterm{arg-id}s in a format string +are 0, 1, 2, ... in sequence, they can all be omitted (not just some) +and the numbers 0, 1, 2, ... will be automatically used in that order. +A format string does not contain a +mixture of automatic and manual indexing. +\begin{example} +\begin{codeblock} +string s0 = format("{} to {}", "a", "b"); // OK, automatic indexing +string s1 = format("{1} to {0}", "a", "b"); // OK, manual indexing +string s2 = format("{0} to {}", "a", "b"); // not a format string (mixing automatic and manual indexing), + // throws \tcode{format_error} +string s3 = format("{} to {1}", "a", "b"); // not a format string (mixing automatic and manual indexing), + // throws \tcode{format_error} +\end{codeblock} +\end{example} + +\pnum +The \fmtgrammarterm{format-spec} field contains +\defnx{format specifications}{format specification!format string} +that define how the value should be presented, +including such details as +field width, alignment, padding, and decimal precision. +Each type can define its own +formatting mini-language or +interpretation of the \fmtgrammarterm{format-spec} field. +The syntax of format specifications is as follows: + +\begin{ncbnf} +\fmtnontermdef{format-spec}\br + \terminal{:} std-format-spec\br + \terminal{:} custom-format-spec +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{std-format-spec}\br + \opt{fill-and-align} \opt{sign} \opt{\terminal{\#}} \opt{\terminal{0}} \opt{width} \opt{precision} \opt{type} +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{fill-and-align}\br + \opt{fill} align +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{fill}\br + \textnormal{any character other than \tcode{\{} or \tcode{\}}} +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{align} \textnormal{one of}\br + \terminal{< > = \caret} +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{sign} \textnormal{one of}\br + \terminal{+ -} \textnormal{space} +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{width}\br + nonzero-digit \opt{integer}\br + \terminal{\{} arg-id \terminal{\}} +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{precision}\br + \terminal{.} integer\br + \terminal{.} \terminal{\{} arg-id \terminal{\}} +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{type} \textnormal{one of}\br + \terminal{a A b B c d e E f F g G n o p s x X} +\end{ncbnf} + +where \fmtgrammarterm{std-format-spec} +defines a common formatting mini-language +supported by fundamental and string types, +while \fmtgrammarterm{custom-format-spec} +is a placeholder for user-defined mini-languages. +\begin{note} +Some of the formatting options +are only supported for arithmetic types. +\end{note} + +\pnum +\begin{note} +The \fmtgrammarterm{fill} character can be any character +other than \tcode{\{} or \tcode{\}}. +The presence of a fill character is signaled by the +character following it, which must be one of the alignment options. +If the second character of \fmtgrammarterm{std-format-spec} +is not a valid alignment option, +then it is assumed that both the fill character and the alignment option are +absent. +\end{note} + +\pnum +The meaning of the various alignment options is as specified in \tref{format.align}. + +\begin{floattable}{Meaning of \fmtgrammarterm{align} options}{format.align}{lp{.8\hsize}} +\topline +\lhdr{Option} & \rhdr{Meaning} \\ \rowsep +\tcode{<} & +Forces the field to be left-aligned within the available space. +This is the default for +non-arithmetic types, \tcode{charT}, and \tcode{bool}, +unless an integer presentation type is specified. +\\ \rowsep +% +\tcode{>} & +Forces the field to be right-aligned within the available space. +This is the default for +arithmetic types other than \tcode{charT} and \tcode{bool} +or when an integer presentation type is specified. +\\ \rowsep +% +\tcode{=} & +Forces the padding to be placed after the sign or prefix (if any) +but before the digits. +\begin{example} +This can be used to print fields in the form \tcode{+000000120}. +\end{example} +This alignment option is only valid for arithmetic +types other than \tcode{charT} and \tcode{bool} +or when an integer presentation type is specified. +\\ \rowsep +% +\tcode{\caret} & +Forces the field to be centered within the available space +by inserting +$\bigl\lfloor \frac{n}{2} \bigr\rfloor$ +characters before and +$\bigl\lceil \frac{n}{2} \bigr\rceil$ +characters after the value, where +$n$ is the total number of fill characters to insert. +\\ +\end{floattable} + +\pnum +\begin{example} +\begin{codeblock} +char c = 120; +string s0 = format("{:6}", 42); // value of \tcode{s0} is \tcode{" 42"} +string s1 = format("{:6}", 'x'); // value of \tcode{s1} is \tcode{"x "} +string s2 = format("{:*<6}", 'x'); // value of \tcode{s2} is \tcode{"x*****"} +string s3 = format("{:*>6}", 'x'); // value of \tcode{s3} is \tcode{"*****x"} +string s4 = format("{:*^6}", 'x'); // value of \tcode{s4} is \tcode{"**x***"} +string s5 = format("{:=6}", 'x'); // invalid: \tcode{=} with \tcode{charT} and no integer presentation type +string s6 = format("{:6d}", c); // value of \tcode{s6} is \tcode{" 120"} +string s7 = format("{:=+06d}", c); // value of \tcode{s7} is \tcode{"+00120"} +string s8 = format("{:0=#6x}", 0xa); // value of \tcode{s8} is \tcode{"0x000a"} +string s9 = format("{:6}", true); // value of \tcode{s9} is \tcode{"true "} +\end{codeblock} +\end{example} + +\pnum +Unless a minimum field width is defined, the field width will be determined by +the size of the content and the alignment option will have no effect. + +\pnum +The \fmtgrammarterm{sign} option is only valid +for arithmetic types other than \tcode{charT} and \tcode{bool} +or when an integer presentation type is specified. +The meaning of the various options is as specified in \tref{format.sign}. + +\begin{floattable}{Meaning of \fmtgrammarterm{sign} options}{format.sign}{lp{.8\hsize}} +\topline +\lhdr{Option} & \rhdr{Meaning} \\ \rowsep +\tcode{+} & +Indicates that a sign should be used for both non-negative and negative +numbers. +\\ \rowsep +% +\tcode{-} & +Indicates that a sign should be used only for negative numbers (this is +the default behavior). +\\ \rowsep +% +space & +Indicates that a leading space should be used for non-negative numbers, and +a minus sign for negative numbers. +\\ +\end{floattable} + +\pnum +The \fmtgrammarterm{sign} option applies to floating-point infinity and NaN. +\begin{example} +\begin{codeblock} +double inf = numeric_limits::infinity(); +double nan = numeric_limits::quiet_NaN(); +string s0 = format("{0:} {0:+} {0:-} {0: }", 1); // value of \tcode{s0} is \tcode{"1 +1 1 1"} +string s1 = format("{0:} {0:+} {0:-} {0: }", -1); // value of \tcode{s1} is \tcode{"-1 -1 -1 -1"} +string s2 = format("{0:} {0:+} {0:-} {0: }", inf); // value of \tcode{s2} is \tcode{"inf +inf inf inf"} +string s3 = format("{0:} {0:+} {0:-} {0: }", nan); // value of \tcode{s3} is \tcode{"nan +nan nan nan"} +\end{codeblock} +\end{example} + +\pnum +The \tcode{\#} option causes the +% FIXME: This is not a definition. +\defnx{alternate form}{alternate form!format string} +to be used for the conversion. +This option is only valid for arithmetic types other than +\tcode{charT} and \tcode{bool} +or when an integer presentation type is specified. +For integers, +when binary, octal, or hexadecimal output is used, +this option adds the respective prefix +\tcode{0b} (\tcode{0B}), +\tcode{0} or +\tcode{0x} (\tcode{0X}) +to the output value. +Whether the prefix is lower-case or upper-case +is determined by the case of the type format specifier. +For floating-point numbers +the alternate form causes the result of the conversion +to always contain a decimal-point character, +even if no digits follow it. +% FIXME: This is a weird place for this part of the spec to appear. +Normally, a decimal-point character appears in the result of these +conversions only if a digit follows it. +In addition, for \tcode{g} and \tcode{G} conversions, +% FIXME: Are they normally? +trailing zeros are not removed from the result. + +\pnum +% FIXME: Don't start this sentence with a grammar term. +% FIXME: What if it's an arg-id? +\fmtgrammarterm{width} is a decimal integer defining the minimum field width. +% FIXME: We already said the field width is determined by the content above! +% FIXME: What is the minimum field width in the "not specified" case? This +% needs more work. +If not specified, then the field width will be determined by the content. + +\pnum +% FIXME: Rephrase this tutorialesque wording. +Preceding the \fmtgrammarterm{width} field by a zero (\tcode{0}) character +enables sign-aware zero-padding for arithmetic types. +This is equivalent to a \fmtgrammarterm{fill} character of \tcode{0} +with an \fmtgrammarterm{alignment} type of \tcode{=}. + +\pnum +% FIXME: What if it's an arg-id? +The \fmtgrammarterm{precision} field specifies a decimal integer defining the precision +or maximum field size. +It can only be used with floating-point and string types. +For floating-point types this field specifies the formatting precision. +For string types it specifies how many characters will be used from the string. + +\pnum +Finally, the \fmtgrammarterm{type} determines how the data should be presented. + +\pnum +The available string presentation types are specified in \tref{format.type.string}. +% +\begin{floattable}{Meaning of \fmtgrammarterm{type} options for strings}{format.type.string}{ll} +\topline +\lhdr{Type} & \rhdr{Meaning} \\ \rowsep +\tcode{s} & +Copies the string to the output. +\\ \rowsep +% +none & +The same as \tcode{s}. +\\ +\end{floattable} + +\pnum +The available \tcode{charT} presentation types are specified in \tref{format.type.char}. +% +\begin{floattable}{Meaning of \fmtgrammarterm{type} options for \tcode{charT}}{format.type.char}{ll} +\topline +\lhdr{Type} & \rhdr{Meaning} \\ \rowsep +\tcode{c} & +Copies the character to the output. +\\ \rowsep +% +none & +The same as \tcode{c}. +\\ +\end{floattable} + +\pnum +Formatting of objects of arithmetic types and \tcode{const void*} +is done as if by calling \tcode{to_chars} (unless otherwise specified) +and copying the output through the output iterator of the format context +with additional padding and adjustments as per format specifiers. + +\pnum +Let \range{first}{last} be a range +large enough to hold the \tcode{to_chars} output +and \tcode{value} be the formatting argument value. + +\pnum +The available integer presentation types and their mapping to +\tcode{to_chars} are specified in \tref{format.type.int}. +% +\begin{floattable}{Meaning of \fmtgrammarterm{type} options for integer types}{format.type.int}{lp{.8\hsize}} +\topline +\lhdr{Type} & \rhdr{Meaning} \\ \rowsep +\tcode{b} & +\tcode{to_chars(first, last, value, 2)}; +% FIXME: This duplicates things we said earlier. +using the \tcode{\#} option with this type adds the prefix \tcode{0b} to the output. +\\ \rowsep +% +\tcode{B} & +The same as \tcode{b}, except that +the \tcode{\#} option adds the prefix \tcode{0B} to the output. +\\ \rowsep +% +\tcode{d} & +\tcode{to_chars(first, last, value)}. +\\ \rowsep +% +\tcode{o} & +\tcode{to_chars(first, last, value, 8)}; +using the \tcode{\#} option with this type adds the prefix \tcode{0} to the output. +\\ \rowsep +% +\tcode{x} & +\tcode{to_chars(first, last, value, 16)}; +using the \tcode{\#} option with this type adds the prefix \tcode{0x} to the output. +\\ \rowsep +% +\tcode{X} & +The same as \tcode{x}, except that +it uses uppercase letters for digits above 9 and +the \tcode{\#} option adds the prefix \tcode{0X} to the output. +\\ \rowsep +% +\tcode{n} & +The same as \tcode{d}, except that +it uses the current global locale +to insert the appropriate digit group separator characters. +\\ \rowsep +% +none & +The same as \tcode{d} if the formatting argument type is not +\tcode{charT} or \tcode{bool}. +% FIXME: Otherwise...? Note that P1652R2 improves the wording here but doesn't +% actually fix this dangling 'if'. +\\ +\end{floattable} + +\pnum +% FIXME: "also"? charT and bool are integer types. +Integer presentation types can also be used +with \tcode{charT} and \tcode{bool} values. +Values of type \tcode{bool} are formatted +using textual representation, +either \tcode{"true"} or \tcode{"false"}, +if the presentation type is not specified. + +\pnum +\begin{example} +\begin{codeblock} +string s0 = format("{}", 42); // value of \tcode{s0} is \tcode{"42"} +string s1 = format("{0:b} {0:d} {0:o} {0:x}", 42); // value of \tcode{s1} is \tcode{"101010 42 52 2a"} +string s2 = format("{0:#x} {0:#X}", 42); // value of \tcode{s2} is \tcode{"0x2a 0X2A"} +string s3 = format("{:n}", 1234); // value of \tcode{s3} might be \tcode{"1,234"} (depending on the locale) +\end{codeblock} +\end{example} + +\pnum +The available floating-point presentation types and their mapping to +\tcode{to_chars} (for values other than infinity and NaN) are +specified in \tref{format.type.float}. +% +\begin{floattable}{Meaning of \fmtgrammarterm{type} options for floating-point types}{format.type.float}{lp{.8\hsize}} +\topline +\lhdr{Type} & \rhdr{Meaning} \\ \rowsep +\tcode{a} & +If \fmtgrammarterm{precision} is specified, +\begin{codeblock} +to_chars(first, last, value, chars_format::hex, precision) +\end{codeblock} +where \tcode{precision} is the specified formatting precision; +\begin{codeblock} +to_chars(first, last, value, chars_format::hex) +\end{codeblock} +otherwise. +\\ +\rowsep +% +\tcode{A} & +The same as \tcode{a}, except that +it uses uppercase letters for digits above 9 and +\tcode{P} to indicate the exponent. +\\ \rowsep +% +\tcode{e} & +Equivalent to +\begin{codeblock} +to_chars(first, last, value, chars_format::scientific, precision) +\end{codeblock} +where \tcode{precision} is the specified formatting precision, +or \tcode{6} if \fmtgrammarterm{precision} is not specified. +\\ \rowsep +% +\tcode{E} & +The same as \tcode{e}, except that it uses \tcode{E} to indicate exponent. +\\ \rowsep +% +\tcode{f} & +Equivalent to +\begin{codeblock} +to_chars(first, last, value, chars_format::fixed, precision) +\end{codeblock} +where \tcode{precision} is the specified formatting precision, +or \tcode{6} if \fmtgrammarterm{precision} is not specified. +\\ \rowsep +% +\tcode{F} & +The same as \tcode{f}. +\\ \rowsep +% +\tcode{g} & +Equivalent to +\begin{codeblock} +to_chars(first, last, value, chars_format::general, precision) +\end{codeblock} +where \tcode{precision} is the specified formatting precision, +or \tcode{6} if \fmtgrammarterm{precision} is not specified. +\\ \rowsep +% +\tcode{G} & +The same as \tcode{g}, except that +it uses \tcode{E} to indicate exponent. +\\ \rowsep +% +\tcode{n} & +The same as \tcode{g}, except that +it uses the current global locale to insert the appropriate +digit group and decimal radix separator characters. +\\ \rowsep +% +none & +If \fmtgrammarterm{precision} is specified, +\begin{codeblock} +to_chars(first, last, value, chars_format::general, precision) +\end{codeblock} +where \tcode{precision} is the specified formatting precision; +\begin{codeblock} +to_chars(first, last, value) +\end{codeblock} +otherwise. +\\ +\end{floattable} + +\pnum +For lower-case presentation types, infinity and NaN are formatted as +\tcode{inf} and \tcode{nan}, respectively. +For upper-case presentation types, infinity and NaN are formatted as +\tcode{INF} and \tcode{NAN}, respectively. +\begin{note} +In either case, a sign is included +if indicated by the \fmtgrammarterm{sign} option. +\end{note} + +\pnum +The available pointer presentation types and their mapping to +\tcode{to_chars} are specified in \tref{format.type.ptr}. +\begin{note} +Pointer presentation types also apply to \tcode{nullptr_t}. +\end{note} +% +\begin{floattable}{Meaning of \fmtgrammarterm{type} options for pointer types}{format.type.ptr}{lp{.8\hsize}} +\topline +\lhdr{Type} & \rhdr{Meaning} \\ \rowsep +\tcode{p} & +If \tcode{uintptr_t} is defined, +\begin{codeblock} +to_chars(first, last, reinterpret_cast(value), 16) +\end{codeblock} +with the prefix \tcode{0x} added to the output; +otherwise, implementation-defined. +\\ \rowsep +% +none & +The same as \tcode{p}. +\\ +\end{floattable} + +\rSec2[format.functions]{Formatting functions} + +\pnum +In the description of the functions, operator \tcode{+} is used +for some of the iterator categories for which it does not have to be defined. +In these cases the semantics of \tcode{a + n} are +the same as in \ref{algorithms.requirements}. + +\indexlibrary{\idxcode{format}}% +\begin{itemdecl} +template + string format(string_view fmt, const Args&... args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +return vformat(fmt, make_format_args(args...)); +\end{codeblock} +\end{itemdescr} + +\indexlibrary{\idxcode{format}}% +\begin{itemdecl} +template + wstring format(wstring_view fmt, const Args&... args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +return vformat(fmt, make_wformat_args(args...)); +\end{codeblock} +\end{itemdescr} + +\indexlibrary{\idxcode{vformat}}% +\begin{itemdecl} +string vformat(string_view fmt, format_args args); +wstring vformat(wstring_view fmt, wformat_args args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +A string object holding the character representation of +formatting arguments provided by \tcode{args} formatted according to +specifications given in \tcode{fmt}. + +\pnum +\throws +\tcode{format_error} if \tcode{fmt} is not a format string. +\end{itemdescr} + +\indexlibrary{\idxcode{format_to}}% +\begin{itemdecl} +template + Out format_to(Out out, string_view fmt, const Args&... args); +template + Out format_to(Out out, wstring_view fmt, const Args&... args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +using context = basic_format_context; +return vformat_to(out, fmt, {make_format_args(args...)}); +\end{codeblock} +\end{itemdescr} + +\indexlibrary{\idxcode{vformat_to}}% +\begin{itemdecl} +template + Out vformat_to(Out out, string_view fmt, format_args_t args); +template + Out vformat_to(Out out, wstring_view fmt, format_args_t args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +Let \tcode{charT} be \tcode{decltype(fmt)::value_type}. + +\pnum +\constraints +\tcode{Out} satisfies \tcode{OutputIterator}. + +\pnum +\expects +\tcode{Out} models \tcode{OutputIterator}. + +\pnum +\effects +% FIXME: This is unreadable. Is "formatting" a verb or an adjective here? +Places the character representation of formatting arguments +provided by \tcode{args}, +formatted according to specifications given in \tcode{fmt}, +into the range \range{out}{out + N}, +where \tcode{N} is \tcode{formatted_size(fmt, args...)}. + +\pnum +\returns +\tcode{out + N}. + +\pnum +\throws +\tcode{format_error} if \tcode{fmt} is not a format string. +\end{itemdescr} + +\indexlibrary{\idxcode{format_to_n}}% +\begin{itemdecl} +template + format_to_n_result format_to_n(Out out, iter_difference_t n, + string_view fmt, const Args&... args); +template + format_to_n_result format_to_n(Out out, iter_difference_t n, + wstring_view fmt, const Args&... args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +Let +\begin{itemize} +\item \tcode{charT} be \tcode{decltype(fmt)::value_type}, +\item \tcode{N} be \tcode{formatted_size(fmt, args...)}, and +\item \tcode{M} be \tcode{min(max(n, 0), N)}. +\end{itemize} + +\pnum +\constraints +\tcode{Out} satisfies \tcode{OutputIterator}. + +\pnum +\expects +\tcode{Out} models \tcode{OutputIterator}, and +\tcode{formatter<}$\tcode{T}_i$\tcode{, charT>} +meets the \newoldconcept{Formatter} requirements\iref{formatter.requirements} +for each $\tcode{T}_i$ in \tcode{Args}. + +\pnum +\effects +Places the first \tcode{M} characters of the character representation of +formatting arguments provided by \tcode{args}, +formatted according to specifications given in \tcode{fmt}, +into the range \range{out}{out + M}. + +\pnum +\returns +\tcode{\{out + M, N\}}. + +\pnum +\throws +\tcode{format_error} if \tcode{fmt} is not a format string. +\end{itemdescr} + +\indexlibrary{\idxcode{formatted_size}}% +\begin{itemdecl} +template + size_t formatted_size(string_view fmt, const Args&... args); +template + size_t formatted_size(wstring_view fmt, const Args&... args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +Let \tcode{charT} be \tcode{decltype(fmt)::value_type}. + +\pnum +\expects +\tcode{formatter<}$\tcode{T}_i$\tcode{, charT>} +meets the \newoldconcept{Formatter} requirements\iref{formatter.requirements} +for each $\tcode{T}_i$ in \tcode{Args}. + +\pnum +\returns +The number of characters in the character representation of +formatting arguments \tcode{args} +formatted according to specifications given in \tcode{fmt}. + +\pnum +\throws +\tcode{format_error} if \tcode{fmt} is not a format string. +\end{itemdescr} + +\rSec2[format.formatter]{Formatter} +\indexlibrary{\idxcode{formatter}}% + +\pnum +% FIXME: Specify this in [format.functions], not here! +The functions defined in \ref{format.functions} use +specializations of the class template \tcode{formatter} to format +individual arguments. + +\pnum +Let \tcode{charT} be either \tcode{char} or \tcode{wchar_t}. +Each specialization of \tcode{formatter} is either enabled or disabled, +as described below. +\begin{note} +Enabled specializations meet the \newoldconcept{Formatter} requirements, +and disabled specializations do not. +\end{note} +Each header that declares the template \tcode{formatter} +provides the following enabled specializations: +\indexlibrary{\idxcode{formatter}!specializations}% +\begin{itemize} +\item +For each \tcode{charT}, +\begin{codeblock} +template<> struct formatter; +template<> struct formatter; +template<> struct formatter; +template struct formatter; +template + struct formatter, charT>; +template + struct formatter, charT>; +\end{codeblock} + +\item +The specialization +\begin{codeblock} +template<> struct formatter; +\end{codeblock} + +\item +A specialization +\begin{codeblock} +template<> struct formatter; +\end{codeblock} +for each \tcode{charT}, +for each cv-unqualified type \tcode{T} that is +\begin{itemize} +\item \tcode{nullptr_t}, +\item \tcode{void*}, +\item \tcode{const void*}, +\item an integral type other than +\tcode{char}, +\tcode{wchar_t}, +\tcode{char8_t}, +\tcode{char16_t}, or +\tcode{char32_t}, or +\item a floating-point type. +\end{itemize} +\end{itemize} + +\begin{note} +Specializations such as \tcode{formatter} +and \tcode{formatter} that require implicit +multibyte / wide string or character conversion are disabled. +\end{note} + +\pnum +For any types \tcode{T} and \tcode{charT} for which +neither the library nor the user provides +an explicit or partial specialization of +the class template \tcode{formatter}, +\tcode{formatter} is disabled. + +\pnum +If the library provides an explicit or partial specialization of +\tcode{formatter}, that specialization is enabled +except as noted otherwise. + +\pnum +If \tcode{F} is a disabled specialization of \tcode{formatter}, these +values are \tcode{false}: +\begin{itemize} +\item \tcode{is_default_constructible_v}, +\item \tcode{is_copy_constructible_v}, +\item \tcode{is_move_constructible_v}, +\item \tcode{is_copy_assignable_v}, and +\item \tcode{is_move_assignable_v}. +\end{itemize} + +\pnum +An enabled specialization \tcode{formatter} meets the +\newoldconcept{Formatter} requirements\iref{formatter.requirements}. +\begin{example} +\begin{codeblock} +#include + +enum color { red, green, blue }; +const char* color_names[] = { "red", "green", "blue" }; + +template<> struct std::formatter : std::formatter { + auto format(color c, format_context& ctx) { + return formatter::format(color_names[c], ctx); + } +}; + +struct err {}; + +std::string s0 = std::format("{}", 42); // OK, library-provided formatter +std::string s1 = std::format("{}", L"foo"); // ill-formed: disabled formatter +std::string s2 = std::format("{}", red); // OK, user-provided formatter +std::string s3 = std::format("{}", err{}); // ill-formed: disabled formatter +\end{codeblock} +\end{example} + +\rSec3[formatter.requirements]{Formatter requirements} + +\pnum +\indextext{requirements!\idxnewoldconcept{Formatter}}% +A type \tcode{F} meets the \newoldconceptdefn{Formatter} requirements if: + +\begin{itemize} +\item +it meets the +\begin{itemize} +\item \oldconcept{DefaultConstructible} (\tref{cpp17.defaultconstructible}), +\item \oldconcept{CopyConstructible} (\tref{cpp17.copyconstructible}), +\item \oldconcept{CopyAssignable} (\tref{cpp17.copyassignable}), and +\item \oldconcept{Destructible} (\tref{cpp17.destructible}) +\end{itemize} +requirements, + +\item +it is swappable\iref{swappable.requirements} for lvalues, and + +\item +the expressions shown in \tref{formatter} are valid and +have the indicated semantics. +\end{itemize} + +\pnum +Given character type \tcode{charT}, output iterator type +\tcode{Out}, and formatting argument type \tcode{T}, +in \tref{formatter}: +\begin{itemize} +\item \tcode{f} is a value of type \tcode{F}, +\item \tcode{u} is an lvalue of type \tcode{T}, +\item \tcode{t} is a value of a type convertible to (possibly const) \tcode{T}, +\item \tcode{PC} is \tcode{basic_format_parse_context}, +\item \tcode{FC} is \tcode{basic_format_context}, +\item \tcode{pc} is an lvalue of type \tcode{PC}, and +\item \tcode{fc} is an lvalue of type \tcode{FC}. +\end{itemize} +\tcode{pc.begin()} points to the beginning of the +\fmtgrammarterm{format-spec}\iref{format.string} +% FIXME: Which one? +portion of the format string. +If \fmtgrammarterm{format-spec} is empty then either +\tcode{pc.begin() == pc.end()} or +\tcode{*pc.begin() == '\}'}. + +\begin{concepttable}{\newoldconcept{Formatter} requirements}{formatter} +{p{1.2in}p{1in}p{2.9in}} +\topline +\hdstyle{Expression} & \hdstyle{Return type} & \hdstyle{Requirement} \\ \capsep +\tcode{f.parse(pc)} & +\tcode{PC::iterator} & +Parses \fmtgrammarterm{format-spec}\iref{format.string} +for type \tcode{T} +in the range \range{pc.begin()}{pc.end()} +until the first unmatched character. +Throws \tcode{format_error} unless the whole range is parsed +or the unmatched character is \tcode{\}}. +\begin{note} +This allows formatters to emit meaningful error messages. +\end{note} +Stores the parsed format specifiers in \tcode{*this} and +returns an iterator past the end of the parsed range. +\\ \rowsep +\tcode{f.format(t, fc)} & +\tcode{FC::iterator} & +Formats \tcode{t} according to the specifiers stored in \tcode{*this}, +writes the output to \tcode{fc.out()} and +returns an iterator past the end of the output range. +The output shall only depend on +\tcode{t}, +the current global locale, +and the range \range{pc.begin()}{pc.end()} +from the last call to \tcode{f.parse(pc)}. +\\ \rowsep +\tcode{f.format(u, fc)} & +\tcode{FC::iterator} & +As above, but does not modify \tcode{u}. +\\ +\end{concepttable} + +\rSec3[format.parse.ctx]{Class template \tcode{basic_format_parse_context}} + +\indexlibrary{\idxcode{basic_format_parse_context}}% +\indexlibrarymember{char_type}{basic_format_parse_context}% +\indexlibrarymember{const_iterator}{basic_format_parse_context}% +\indexlibrarymember{iterator}{basic_format_parse_context}% +\begin{codeblock} +namespace std { + template + class basic_format_parse_context { + public: + using char_type = charT; + using const_iterator = typename basic_string_view::const_iterator; + using iterator = const_iterator; + + private: + iterator begin_; // \expos + iterator end_; // \expos + enum indexing { unknown, manual, automatic }; // \expos + indexing indexing_; // \expos + size_t next_arg_id_; // \expos + size_t num_args_; // \expos + + public: + constexpr explicit basic_format_parse_context(basic_string_view fmt, + size_t num_args = 0) noexcept; + basic_format_parse_context(const basic_format_parse_context&) = delete; + basic_format_parse_context& operator=(const basic_format_parse_context&) = delete; + + constexpr const_iterator begin() const noexcept; + constexpr const_iterator end() const noexcept; + constexpr void advance_to(const_iterator it); + + constexpr size_t next_arg_id(); + constexpr void check_arg_id(size_t id); + }; +} +\end{codeblock} + +\pnum +An instance of \tcode{basic_format_parse_context} holds +the format string parsing state consisting of +the format string range being parsed and +the argument counter for automatic indexing. + +\indexlibrary{\idxcode{basic_format_parse_context}!constructor}% +\begin{itemdecl} +constexpr explicit basic_format_parse_context(basic_string_view fmt, + size_t num_args = 0) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes +\tcode{begin_} with \tcode{fmt.begin()}, +\tcode{end_} with \tcode{fmt.end()}, +\tcode{indexing_} with \tcode{unknown}, +\tcode{next_arg_id_} with \tcode{0}, and +\tcode{num_args_} with \tcode{num_args}. +\end{itemdescr} + +\indexlibrarymember{begin}{basic_format_parse_context}% +\begin{itemdecl} +constexpr const_iterator begin() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{begin_}. +\end{itemdescr} + +\indexlibrarymember{end}{basic_format_parse_context}% +\begin{itemdecl} +constexpr const_iterator end() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{end_}. +\end{itemdescr} + +\indexlibrarymember{advance_to}{basic_format_parse_context}% +\begin{itemdecl} +constexpr void advance_to(const_iterator it); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{end()} is reachable from \tcode{it}. + +\pnum +\effects Equivalent to: \tcode{begin_ = it;} +\end{itemdescr} + +\indexlibrarymember{next_arg_id}{basic_format_parse_context}% +\begin{itemdecl} +constexpr size_t next_arg_id(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +If \tcode{indexing_ != manual}, equivalent to: +\begin{codeblock} +if (indexing_ == unknown) + indexing_ = automatic; +return next_arg_id_++; +\end{codeblock} + +\pnum +\throws +\tcode{format_error} if \tcode{indexing_ == manual} +which indicates mixing of automatic and manual argument indexing. +\end{itemdescr} + +\indexlibrarymember{check_arg_id}{basic_format_parse_context}% +\begin{itemdecl} +constexpr void check_arg_id(size_t id); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +If \tcode{indexing_ != automatic}, equivalent to: +\begin{codeblock} +if (indexing_ == unknown) + indexing_ = manual; +\end{codeblock} + +\pnum +\throws +\tcode{format_error} if +\tcode{indexing_ == automatic} which indicates mixing of automatic and +manual argument indexing. + +\pnum +\remarks +Call expressions where \tcode{id >= num_args_} are not +core constant expressions\iref{expr.const}. +\end{itemdescr} + +\rSec3[format.context]{Class template \tcode{basic_format_context}} + +\indexlibrary{\idxcode{basic_format_context}}% +\indexlibrarymember{iterator}{basic_format_context}% +\indexlibrarymember{char_type}{basic_format_context}% +\indexlibrarymember{formatter_type}{basic_format_context}% +\begin{codeblock} +namespace std { + template + class basic_format_context { + basic_format_args args_; // \expos + Out out_; // \expos + + public: + using iterator = Out; + using char_type = charT; + template using formatter_type = formatter; + + basic_format_arg arg(size_t id) const; + + iterator out(); + void advance_to(iterator it); + }; +} +\end{codeblock} + +\pnum +An instance of \tcode{basic_format_context} holds formatting state +consisting of the formatting arguments and the output iterator. + +\pnum +\tcode{Out} shall model \tcode{OutputIterator}. + +\pnum +\indexlibrary{\idxcode{format_context}}% +\tcode{format_context} is an alias for +a specialization of \tcode{basic_format_context} +with an output iterator +that appends to \tcode{string}, +such as \tcode{back_insert_iterator}. + +\pnum +\begin{note} +For a given type \tcode{charT}, +implementations are encouraged to provide +a single instantiation of \tcode{basic_format_context} +for appending to +\tcode{basic_string}, +\tcode{vector}, +or any other container with contiguous storage +by wrapping those in temporary objects with a uniform interface +(such as a \tcode{span}) and polymorphic reallocation. +\end{note} + +\indexlibrarymember{arg}{basic_format_context}% +\begin{itemdecl} +basic_format_arg arg(size_t id) const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{args_.get(id)}. +\end{itemdescr} + +\indexlibrarymember{out}{basic_format_context}% +\begin{itemdecl} +iterator out(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{out_}. +\end{itemdescr} + +\indexlibrarymember{advance_to}{basic_format_context}% +\begin{itemdecl} +void advance_to(iterator it); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{out_ = it;} +\end{itemdescr} + +\index{left-pad}% +\begin{example} +\begin{codeblock} +struct S { int value; }; + +template<> struct std::formatter { + size_t width_arg_id = 0; + + // Parses a width argument id in the format \tcode{\{} \fmtgrammarterm{digit} \tcode{\}}. + constexpr auto parse(format_parse_context& ctx) { + auto iter = ctx.begin(); + auto get_char = [&]() { return iter != ctx.end() ? *iter : 0; }; + if (get_char() != '{') + return iter; + ++iter; + char c = get_char(); + if (!isdigit(c) || (++iter, get_char()) != '}') + throw format_error("invalid format"); + width_arg_id = c - '0'; + ctx.check_arg_id(width_arg_id); + return ++iter; + } + + // Formats an \tcode{S} with width given by the argument \tcode{width_arg_id}. + auto format(S s, format_context& ctx) { + int width = visit_format_arg([](auto value) -> int { + if constexpr (!is_integral_v) + throw format_error("width is not integral"); + else if (value < 0 || value > numeric_limits::max()) + throw format_error("invalid width"); + else + return value; + }, ctx.arg(width_arg_id)); + return format_to(ctx.out(), "{0:x<{1}}", s.value, width); + } +}; + +std::string s = std::format("{0:{1}}", S{42}, 10); // value of \tcode{s} is \tcode{"xxxxxxxx42"} +\end{codeblock} +\end{example} + +\rSec2[format.arguments]{Arguments} + +\rSec3[format.arg]{Class template \tcode{basic_format_arg}} + +\indexlibrary{\idxcode{basic_format_arg}}% +\begin{codeblock} +namespace std { + template + class basic_format_arg { + public: + class handle; + + private: + using @\placeholder{char-type}@ = typename Context::char_type; @\itcorr[-1]@ // \expos + + variant, + const void*, handle> value; // \expos + + template explicit basic_format_arg(const T& v) noexcept; // \expos + explicit basic_format_arg(float n) noexcept; // \expos + explicit basic_format_arg(double n) noexcept; // \expos + explicit basic_format_arg(long double n) noexcept; // \expos + explicit basic_format_arg(const @\placeholder{char-type}@* s); // \expos + + template + explicit basic_format_arg( + basic_string_view<@\placeholdernc{char-type}@, traits> s) noexcept; // \expos + + template + explicit basic_format_arg( + const basic_string<@\placeholdernc{char-type}@, traits, Allocator>& s) noexcept; // \expos + + explicit basic_format_arg(nullptr_t) noexcept; // \expos + + template + explicit basic_format_arg(const T* p) noexcept; // \expos + + template + friend auto visit_format_arg(Visitor&& vis, + basic_format_arg arg); // \expos + + template + friend @\placeholder{format-arg-store}@ + make_format_args(const Args&... args); // \expos + + public: + basic_format_arg() noexcept; + + explicit operator bool() const noexcept; + }; +} +\end{codeblock} + +\pnum +An instance of \tcode{basic_format_arg} provides access to +a formatting argument for user-defined formatters. + +\pnum +The behavior of a program that adds specializations of +\tcode{basic_format_arg} is undefined. + +\indexlibrary{\idxcode{basic_format_arg}!constructor|(}% +\begin{itemdecl} +basic_format_arg() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\ensures \tcode{!(*this)}. +\end{itemdescr} + +\begin{itemdecl} +template explicit basic_format_arg(const T& v) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\constraints +The template specialization +\begin{codeblock} +typename Context::template formatter_type +\end{codeblock} +is an enabled specialization of \tcode{formatter}\iref{format.formatter}. +The extent to which an implementation determines that +the specialization is enabled is unspecified, +except that as a minimum the expression +\begin{codeblock} +typename Context::template formatter_type() + .format(declval(), declval()) +\end{codeblock} +shall be well-formed when treated as an unevaluated operand. + +\pnum +\effects +\begin{itemize} +\item +if \tcode{T} is \tcode{bool} or \tcode{\placeholdernc{char-type}}, +initializes \tcode{value} with \tcode{v}; otherwise, +\item +if \tcode{T} is \tcode{char} and \tcode{\placeholder{char-type}} is +\tcode{wchar_t}, initializes \tcode{value} with +\tcode{static_cast(v)}; otherwise, +\item +if \tcode{T} is a signed integer type\iref{basic.fundamental} +and \tcode{sizeof(T) <= sizeof(int)}, +initializes \tcode{value} with \tcode{static_cast(v)}; +otherwise, +\item +if \tcode{T} is an unsigned integer type and +\tcode{sizeof(T) <= sizeof(unsigned int)}, initializes +\tcode{value} with \tcode{static_cast(v)}; +otherwise, +\item +if \tcode{T} is a signed integer type and +\tcode{sizeof(T) <= sizeof(long long int)}, initializes +\tcode{value} with \tcode{static_cast(v)}; +otherwise, +\item +if \tcode{T} is an unsigned integer type and +\tcode{sizeof(T) <= sizeof(unsigned long long int)}, initializes +\tcode{value} with +\tcode{static_cast(v)}; otherwise, +\item +initializes \tcode{value} with \tcode{handle(v)}. +\end{itemize} +\end{itemdescr} + +\begin{itemdecl} +explicit basic_format_arg(float n) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{value} with \tcode{static_cast(n)}. +\end{itemdescr} + +\begin{itemdecl} +explicit basic_format_arg(double n) noexcept; +explicit basic_format_arg(long double n) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{value} with \tcode{n}. +\end{itemdescr} + +\begin{itemdecl} +explicit basic_format_arg(const @\placeholder{char-type}@* s); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{s} points to a NTCTS\iref{defns.ntcts}. + +\pnum +\effects Initializes \tcode{value} with \tcode{s}. +\end{itemdescr} + +\begin{itemdecl} +template + explicit basic_format_arg(basic_string_view<@\placeholdernc{char-type}@, traits> s) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{value} with \tcode{s}. +\end{itemdescr} + +\begin{itemdecl} +template + explicit basic_format_arg( + const basic_string<@\placeholdernc{char-type}@, traits, Allocator>& s) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{value} with +\tcode{basic_string_view<\placeholder{char-type}>(s.data(), s.size())}. +\end{itemdescr} + +\begin{itemdecl} +explicit basic_format_arg(nullptr_t) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{value} with + \tcode{static_cast(nullptr)}. +\end{itemdescr} + +\begin{itemdecl} +template explicit basic_format_arg(T* p) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\constraints +\tcode{is_void_v} is \tcode{true}. + +\pnum +\effects Initializes \tcode{value} with \tcode{p}. + +\pnum +\begin{note} +Constructing \tcode{basic_format_arg} from +a pointer to a member is ill-formed unless +the user provides an enabled specialization of +\tcode{formatter} for that pointer to member type. +\end{note} +\end{itemdescr} +\indexlibrary{\idxcode{basic_format_arg}!constructor|)}% + +\indexlibrarymember{operator bool}{basic_format_arg}% +\begin{itemdecl} +explicit operator bool() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{!holds_alternative(value)}. +\end{itemdescr} + +\pnum +The class \tcode{handle} allows formatting an object of a user-defined type. + +\indexlibrary{basic_format_arg::handle}% +\indexlibrarymember{handle}{basic_format_arg}% +\begin{codeblock} +namespace std { + template + class basic_format_arg::handle { + const void* ptr_; // \expos + void (*format_)(basic_format_parse_context<@\placeholder{char-type}@>&, + Context&, const void*); // \expos + + template explicit handle(const T& val) noexcept; // \expos + + friend class basic_format_arg; // \expos + + public: + void format(basic_format_parse_context<@\placeholder{char-type}@>&, Context& ctx) const; + }; +} +\end{codeblock} + +\indexlibrary{\idxcode{basic_format_arg::handle}!constructor}% +\begin{itemdecl} +template explicit handle(const T& val) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes +\tcode{ptr_} with \tcode{addressof(val)} and +\tcode{format_} with +\begin{codeblock} +[](basic_format_parse_context<@\placeholder{char-type}@>& parse_ctx, + Context& format_ctx, const void* ptr) { + typename Context::template formatter_type f; + parse_ctx.advance_to(f.parse(parse_ctx)); + format_ctx.advance_to(f.format(*static_cast(ptr), format_ctx)); +} +\end{codeblock} +\end{itemdescr} + +\indexlibrarymember{format}{basic_format_arg::handle}% +\begin{itemdecl} +void format(basic_format_parse_context<@\placeholder{char-type}@>& parse_ctx, Context& format_ctx) const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{format_(parse_ctx, format_ctx, ptr_);} +\end{itemdescr} + +\indexlibrary{\idxcode{visit_format_arg}}% +\begin{itemdecl} +template + @\seebelow@ visit_format_arg(Visitor&& vis, basic_format_arg arg); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return visit(forward(vis), arg.value);} +\end{itemdescr} + +\rSec3[format.arg.store]{Class template \exposid{format-arg-store}} + +\begin{codeblock} +namespace std { + template + struct @\placeholder{format-arg-store}@ { // \expos + array, sizeof...(Args)> args; + }; +} +\end{codeblock} + +\pnum +An instance of \exposid{format-arg-store} stores formatting arguments. + +\indexlibrary{\idxcode{make_format_args}}% +\begin{itemdecl} +template + @\placeholder{format-arg-store}@ make_format_args(const Args&... args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +The type +\tcode{typename Context::template formatter_type<}$\tcode{T}_i$\tcode{>} +meets the \newoldconcept{Formatter} requirements\iref{formatter.requirements} +for each $\tcode{T}_i$ in \tcode{Args}. + +\pnum +\returns +\tcode{\{basic_format_arg(args)...\}}. +\end{itemdescr} + +\indexlibrary{\idxcode{make_wformat_args}}% +\begin{itemdecl} +template + @\placeholder{format-arg-store}@ make_wformat_args(const Args&... args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\tcode{return make_format_args(args...);} +\end{itemdescr} + +\rSec3[format.args]{Class template \tcode{basic_format_args}} + +\begin{codeblock} +namespace std { + template + class basic_format_args { + size_t size_; // \expos + const basic_format_arg* data_; // \expos + + public: + basic_format_args() noexcept; + + template + basic_format_args(const @\placeholder{format-arg-store}@& store) noexcept; + + basic_format_arg get(size_t i) const noexcept; + }; +} +\end{codeblock} + +\pnum +An instance of \tcode{basic_format_args} provides access to formatting +arguments. + +\indexlibrary{\idxcode{basic_format_args}!constructor}% +\begin{itemdecl} +basic_format_args() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{size_} with \tcode{0}. +\end{itemdescr} + +\indexlibrary{\idxcode{basic_format_args}!constructor}% +\begin{itemdecl} +template + basic_format_args(const @\placeholder{format-arg-store}@& store) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes +\tcode{size_} with \tcode{sizeof...(Args)} and +\tcode{data_} with \tcode{store.args.data()}. +\end{itemdescr} + +\indexlibrarymember{get}{basic_format_args}% +\begin{itemdecl} +basic_format_arg get(size_t i) const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{i < size_ ?\ data_[i] :\ basic_format_arg()}. +\end{itemdescr} + +\begin{note} +Implementations are encouraged +to optimize the representation of \tcode{basic_format_args} +for small number of formatting arguments +by storing indices of type alternatives separately from values +and packing the former. +\end{note} + +\rSec2[format.error]{Class \tcode{format_error}} + +\indexlibrary{\idxcode{format_error}}% +\begin{codeblock} +namespace std { + class format_error : public runtime_error { + public: + explicit format_error(const string& what_arg); + explicit format_error(const char* what_arg); + }; +} +\end{codeblock} + +\pnum +The class \tcode{format_error} defines the type of objects thrown as +exceptions to report errors from the formatting library. + +\indexlibrary{\idxcode{format_error}!constructor}% +\begin{itemdecl} +format_error(const string& what_arg); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\ensures +\tcode{strcmp(what(), what_arg.c_str()) == 0}. + +\indexlibrary{\idxcode{format_error}!constructor}% +\end{itemdescr} +\begin{itemdecl} +format_error(const char* what_arg); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\ensures +\tcode{strcmp(what(), what_arg) == 0}. +\end{itemdescr} From fb97956bc9eee5a50c10df9148d9422e260e352c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 31 Jul 2019 17:28:28 -0700 Subject: [PATCH 087/312] [format.formatter] Add subclause heading to avoid hanging paragraphs. --- source/utilities.tex | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/utilities.tex b/source/utilities.tex index 30c874ec6f..a9ac4130ee 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -20330,6 +20330,8 @@ \end{itemdescr} \rSec2[format.formatter]{Formatter} + +\rSec3[format.formatter.spec]{Formatter specializations} \indexlibrary{\idxcode{formatter}}% \pnum From eae84a0a10b4409da01ae5c9e7c734e113973cdf Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 31 Jul 2019 17:34:37 -0700 Subject: [PATCH 088/312] [format.string] Clarify that "other characters" means "characters other than { and }". --- source/utilities.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/utilities.tex b/source/utilities.tex index a9ac4130ee..76981e2355 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19601,7 +19601,7 @@ A \defn{format string} is a (possibly empty) sequence of \defnx{replacement fields}{replacement field!format string}, \defnx{escape sequences}{escape sequence!format string}, -and other characters. +and characters other than \tcode{\{} and \tcode{\}}. Let \tcode{charT} be the character type of the format string. Each character that is not part of a replacement field or an escape sequence From b62dc39c0541a1968ac1717773574f4ef868934c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 31 Jul 2019 18:05:00 -0700 Subject: [PATCH 089/312] [format.string] Change 'integer' grammar to be left-recursive and factor out separate positive-integer and nonnegative-integer productions for clarity. --- source/utilities.tex | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 76981e2355..bb7bbcbfbc 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19618,16 +19618,19 @@ \begin{ncbnf} \fmtnontermdef{arg-id}\br \terminal{0}\br - nonzero-digit \opt{integer} + positive-integer \end{ncbnf} -% FIXME: This is a bad grammar for an integer, as it allows leading zeroes. -% All uses disallow that by adding an initial nonzero-digit; we should move -% that here for simplicity and rename this to positive-integer. -% FIXME: Switch to left-recursion per our normal convention. \begin{ncbnf} -\fmtnontermdef{integer}\br - digit \opt{integer} +\fmtnontermdef{positive-integer}\br + nonzero-digit\br + positive-integer digit +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{nonnegative-integer}\br + digit\br + nonnegative-integer digit \end{ncbnf} \begin{ncbnf} @@ -19720,13 +19723,13 @@ \begin{ncbnf} \fmtnontermdef{width}\br - nonzero-digit \opt{integer}\br + positive-integer\br \terminal{\{} arg-id \terminal{\}} \end{ncbnf} \begin{ncbnf} \fmtnontermdef{precision}\br - \terminal{.} integer\br + \terminal{.} nonnegative-integer\br \terminal{.} \terminal{\{} arg-id \terminal{\}} \end{ncbnf} From 2db4bd64f7f157266ae0f7c7c44c4fe7c68c6070 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 31 Jul 2019 18:14:56 -0700 Subject: [PATCH 090/312] [format.string] Fix wording that talks about omitting arg-ids but presupposes that they are all present to instead specify what happens when some or all are absent. --- source/utilities.tex | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index bb7bbcbfbc..530d907406 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19661,13 +19661,14 @@ \end{example} \pnum -% FIXME: Rephrase this into something more like a language rule -% and less like a tutorial. -If the numeric \fmtgrammarterm{arg-id}s in a format string -are 0, 1, 2, ... in sequence, they can all be omitted (not just some) -and the numbers 0, 1, 2, ... will be automatically used in that order. -A format string does not contain a +If all \fmtgrammarterm{arg-id}s in a format string are omitted, +argument indexes 0, 1, 2, \ldots{} will automatically be used in that order. +If some \fmtgrammarterm{arg-id}s are omitted and some are present, +the string is not a format string. +\begin{note} +A format string cannot contain a mixture of automatic and manual indexing. +\end{note} \begin{example} \begin{codeblock} string s0 = format("{} to {}", "a", "b"); // OK, automatic indexing From 5a32fd1040b8a7c4c997ba8841c4f28a34a6c97d Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 31 Jul 2019 18:26:41 -0700 Subject: [PATCH 091/312] [format.string] Add missing grammar definition for custom-format-spec rather than leaving it dangling. --- source/utilities.tex | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/source/utilities.tex b/source/utilities.tex index 530d907406..403da993ff 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19697,6 +19697,11 @@ \terminal{:} custom-format-spec \end{ncbnf} +\begin{ncbnf} +\fmtnontermdef{custom-format-spec}\br + \textnormal{user-defined syntax dependent on the type of the argument} +\end{ncbnf} + \begin{ncbnf} \fmtnontermdef{std-format-spec}\br \opt{fill-and-align} \opt{sign} \opt{\terminal{\#}} \opt{\terminal{0}} \opt{width} \opt{precision} \opt{type} From d529b96f3be22332d4a88de646f56cb636680f6c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 31 Jul 2019 18:33:05 -0700 Subject: [PATCH 092/312] [format.string] Make tone of wording more formal and less tutorialesque. --- source/utilities.tex | 60 +++++++++++++++++++++----------------------- 1 file changed, 29 insertions(+), 31 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 403da993ff..3ce27d179a 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19768,6 +19768,25 @@ \pnum The meaning of the various alignment options is as specified in \tref{format.align}. +\begin{example} +\begin{codeblock} +char c = 120; +string s0 = format("{:6}", 42); // value of \tcode{s0} is \tcode{" 42"} +string s1 = format("{:6}", 'x'); // value of \tcode{s1} is \tcode{"x "} +string s2 = format("{:*<6}", 'x'); // value of \tcode{s2} is \tcode{"x*****"} +string s3 = format("{:*>6}", 'x'); // value of \tcode{s3} is \tcode{"*****x"} +string s4 = format("{:*^6}", 'x'); // value of \tcode{s4} is \tcode{"**x***"} +string s5 = format("{:=6}", 'x'); // invalid: \tcode{=} with \tcode{charT} and no integer presentation type +string s6 = format("{:6d}", c); // value of \tcode{s6} is \tcode{" 120"} +string s7 = format("{:=+06d}", c); // value of \tcode{s7} is \tcode{"+00120"} +string s8 = format("{:0=#6x}", 0xa); // value of \tcode{s8} is \tcode{"0x000a"} +string s9 = format("{:6}", true); // value of \tcode{s9} is \tcode{"true "} +\end{codeblock} +\end{example} +\begin{note} +Unless a minimum field width is defined, the field width is determined by +the size of the content and the alignment option has no effect. +\end{note} \begin{floattable}{Meaning of \fmtgrammarterm{align} options}{format.align}{lp{.8\hsize}} \topline @@ -19808,27 +19827,6 @@ \\ \end{floattable} -\pnum -\begin{example} -\begin{codeblock} -char c = 120; -string s0 = format("{:6}", 42); // value of \tcode{s0} is \tcode{" 42"} -string s1 = format("{:6}", 'x'); // value of \tcode{s1} is \tcode{"x "} -string s2 = format("{:*<6}", 'x'); // value of \tcode{s2} is \tcode{"x*****"} -string s3 = format("{:*>6}", 'x'); // value of \tcode{s3} is \tcode{"*****x"} -string s4 = format("{:*^6}", 'x'); // value of \tcode{s4} is \tcode{"**x***"} -string s5 = format("{:=6}", 'x'); // invalid: \tcode{=} with \tcode{charT} and no integer presentation type -string s6 = format("{:6d}", c); // value of \tcode{s6} is \tcode{" 120"} -string s7 = format("{:=+06d}", c); // value of \tcode{s7} is \tcode{"+00120"} -string s8 = format("{:0=#6x}", 0xa); // value of \tcode{s8} is \tcode{"0x000a"} -string s9 = format("{:6}", true); // value of \tcode{s9} is \tcode{"true "} -\end{codeblock} -\end{example} - -\pnum -Unless a minimum field width is defined, the field width will be determined by -the size of the content and the alignment option will have no effect. - \pnum The \fmtgrammarterm{sign} option is only valid for arithmetic types other than \tcode{charT} and \tcode{bool} @@ -19896,31 +19894,31 @@ trailing zeros are not removed from the result. \pnum -% FIXME: Don't start this sentence with a grammar term. % FIXME: What if it's an arg-id? +The \fmtgrammarterm{positive-integer} in \fmtgrammarterm{width} is a decimal integer defining the minimum field width. -% FIXME: We already said the field width is determined by the content above! -% FIXME: What is the minimum field width in the "not specified" case? This -% needs more work. -If not specified, then the field width will be determined by the content. +If \fmtgrammarterm{width} is not specified, +there is no minimum field width, and +the field width is determined based on the content of the field. \pnum -% FIXME: Rephrase this tutorialesque wording. -Preceding the \fmtgrammarterm{width} field by a zero (\tcode{0}) character +A zero (\tcode{0}) character +preceding the \fmtgrammarterm{width} field enables sign-aware zero-padding for arithmetic types. This is equivalent to a \fmtgrammarterm{fill} character of \tcode{0} with an \fmtgrammarterm{alignment} type of \tcode{=}. \pnum % FIXME: What if it's an arg-id? -The \fmtgrammarterm{precision} field specifies a decimal integer defining the precision -or maximum field size. +The \fmtgrammarterm{nonnegative-integer} in +\fmtgrammarterm{precision} is a decimal integer defining +the precision or maximum field size. It can only be used with floating-point and string types. For floating-point types this field specifies the formatting precision. For string types it specifies how many characters will be used from the string. \pnum -Finally, the \fmtgrammarterm{type} determines how the data should be presented. +The \fmtgrammarterm{type} determines how the data should be presented. \pnum The available string presentation types are specified in \tref{format.type.string}. From 3ced91d524f3c2a850243863440151735276b38a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 31 Jul 2019 18:41:56 -0700 Subject: [PATCH 093/312] [format.context] Add specification of wformat_context analogous to that of format_context, as discussed on lib reflector. --- source/utilities.tex | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/source/utilities.tex b/source/utilities.tex index 3ce27d179a..fa895e4532 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -20719,6 +20719,11 @@ with an output iterator that appends to \tcode{string}, such as \tcode{back_insert_iterator}. +\indexlibrary{\idxcode{wformat_context}}% +Similarly, \tcode{wformat_context} is an alias for +a specialization of \tcode{basic_format_context} +with an output iterator +that appends to \tcode{wstring}. \pnum \begin{note} From b1008e3fc92fcac2abf13dc0f574035af1153dc6 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Thu, 1 Aug 2019 17:33:47 -0700 Subject: [PATCH 094/312] P1361R2 Integration of chrono with text formatting Minor editorial cleanups throughout [format.functions] Merged specification of functions with locale parameter into existing specification rather than duplicating the descriptions. --- source/time.tex | 1064 ++++++++++++++++++------------------------ source/utilities.tex | 153 +++++- 2 files changed, 583 insertions(+), 634 deletions(-) diff --git a/source/time.tex b/source/time.tex index c08fbe2457..319fadce40 100644 --- a/source/time.tex +++ b/source/time.tex @@ -23,6 +23,12 @@ \ref{ctime.syn} & C library time utilities & \tcode{} \\ \rowsep \end{libsumtab} +\pnum +\indextext{STATICALLY-WIDEN@\exposid{STATICALLY-WIDEN}}% +Let \exposid{STATICALLY-WIDEN}\tcode{("...")} be +\tcode{"..."} if \tcode{charT} is \tcode{char} and +\tcode{L"..."} if \tcode{charT} is \tcode{wchar_t}. + \rSec1[time.syn]{Header \tcode{} synopsis} \indexhdr{chrono}% @@ -145,10 +151,6 @@ basic_ostream& operator<<(basic_ostream& os, const duration& d); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, - const duration& d); template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -238,11 +240,6 @@ basic_ostream& operator<<(basic_ostream& os, const sys_days& dp); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, - const sys_time& tp); - template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -260,10 +257,6 @@ template basic_ostream& operator<<(basic_ostream& os, const utc_time& t); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, - const utc_time& tp); template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -281,10 +274,6 @@ template basic_ostream& operator<<(basic_ostream& os, const tai_time& t); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, - const tai_time& tp); template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -302,10 +291,6 @@ template basic_ostream& operator<<(basic_ostream& os, const gps_time& t); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, - const gps_time& tp); template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -322,10 +307,6 @@ template basic_ostream& operator<<(basic_ostream& os, const file_time& tp); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, - const file_time& tp); template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -349,11 +330,6 @@ template basic_ostream& operator<<(basic_ostream& os, const local_time& tp); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, - const local_time& tp, - const string* abbrev = nullptr, const seconds* offset_sec = nullptr); template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -389,9 +365,6 @@ template basic_ostream& operator<<(basic_ostream& os, const day& d); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const day& d); template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -416,9 +389,6 @@ template basic_ostream& operator<<(basic_ostream& os, const month& m); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const month& m); template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -444,10 +414,6 @@ basic_ostream& operator<<(basic_ostream& os, const year& y); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const year& y); - template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -469,10 +435,6 @@ basic_ostream& operator<<(basic_ostream& os, const weekday& wd); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const weekday& wd); - template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -513,10 +475,6 @@ basic_ostream& operator<<(basic_ostream& os, const month_day& md); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const month_day& md); - template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -579,10 +537,6 @@ basic_ostream& operator<<(basic_ostream& os, const year_month& ym); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const year_month& ym); - template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -610,11 +564,6 @@ basic_ostream& operator<<(basic_ostream& os, const year_month_day& ymd); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, - const year_month_day& ymd); - template> basic_istream& from_stream(basic_istream& is, const charT* fmt, @@ -873,11 +822,6 @@ operator<<(basic_ostream& os, const zoned_time& t); - template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, - const zoned_time& tp); - // \ref{time.zone.leap}, leap second support class leap; @@ -924,20 +868,52 @@ bool operator>=(const link& x, const link& y); // \ref{time.format}, formatting - template - basic_string - format(const charT* fmt, const Streamable& s); - template - basic_string - format(const locale& loc, const charT* fmt, const Streamable& s); - template - basic_string - format(const basic_string& fmt, const Streamable& s); - template - basic_string - format(const locale& loc, const basic_string& fmt, - const Streamable& s); + template struct @\placeholder{local-time-format-t}@; // \expos + template + @\placeholder{local-time-format-t}@ + local_time_format(local_time time, const string* abbrev = nullptr, + const seconds* offset_sec = nullptr); + } + + template + struct formatter, charT>; + template + struct formatter, charT>; + template + struct formatter, charT>; + template + struct formatter, charT>; + template + struct formatter, charT>; + template + struct formatter, charT>; + template + struct formatter, charT>; + template + struct formatter, charT>; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template struct formatter; + template + struct formatter>, charT>; + template struct formatter; + template struct formatter; + template + struct formatter, charT>; + namespace chrono { // \ref{time.parse}, parsing template @\unspec@ @@ -2100,25 +2076,6 @@ \returns \tcode{os}. \end{itemdescr} -\indexlibrarymember{to_stream}{duration}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, - const duration& d); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Streams \tcode{d} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - \indexlibrarymember{from_stream}{duration}% \begin{itemdecl} template> @@ -2651,14 +2608,13 @@ \pnum \effects +Equivalent to: \begin{codeblock} auto const dp = floor(tp); -os << year_month_day{dp} << ' ' << time_of_day{tp-dp}; +return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{} {}"), + year_month_day{dp}, time_of_day{tp-dp}); \end{codeblock} -\pnum -\returns \tcode{os}. - \pnum \begin{example} \begin{codeblock} @@ -2684,28 +2640,6 @@ \returns \tcode{os}. \end{itemdescr} -\indexlibrarymember{to_stream}{sys_time}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const sys_time& tp); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Streams \tcode{tp} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. -If \tcode{\%Z} is used, it will be replaced with -\tcode{"UTC"} widened to \tcode{charT}. -If \tcode{\%z} is used (or a modified variant of \tcode{\%z}), -an offset of \tcode{0min} will be formatted. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - \indexlibrarymember{from_stream}{sys_time}% \begin{itemdecl} template> @@ -2857,36 +2791,10 @@ \begin{itemdescr} \pnum \effects -Calls \tcode{to_stream(os, fmt, t)}, -where \tcode{fmt} is a string containing \tcode{"\%F \%T"} -widened to \tcode{charT}. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - -\indexlibrarymember{to_stream}{utc_time}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const utc_time& tp); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Streams \tcode{tp} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. -If \tcode{\%Z} is used, it will be replaced with \tcode{"UTC"} widened to \tcode{charT}. -If \tcode{\%z} is used (or a modified variant of \tcode{\%z}), -an offset of \tcode{0min} will be formatted. -If \tcode{tp} represents a time during a leap second insertion, -and if a seconds field is formatted, -the integral portion of that format shall be \tcode{"60"} widened to \tcode{charT}. - -\pnum -\returns \tcode{os}. +Equivalent to: +\begin{codeblock} +return os << format(@\placeholder{STATICALLY-WIDEN}@("{:%F %T}"), t); +\end{codeblock} \pnum \begin{example} @@ -3053,46 +2961,18 @@ \begin{itemdescr} \pnum \effects -Calls \tcode{to_stream(os, fmt, t)}, -where \tcode{fmt} is a string containing -\tcode{"\%F \%T"} widened to \tcode{charT}. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - -\indexlibrarymember{to_stream}{tai_time}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const tai_time& tp); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Streams \tcode{tp} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. -If \tcode{\%Z} is used, it will be replaced with \tcode{"TAI"}. -If \tcode{\%z} is used (or a modified variant of \tcode{\%z}), -an offset of \tcode{0min} will be formatted. -The date and time formatted shall be equivalent to -that formatted by a \tcode{sys_time} initialized with: +Equivalent to: \begin{codeblock} -sys_time{tp.time_since_epoch()} - - (sys_days{1970y/January/1} - sys_days{1958y/January/1}) +return os << format(@\placeholder{STATICALLY-WIDEN}@("{:%F %T}"), t); \end{codeblock} -\pnum -\returns \tcode{os}. - \pnum \begin{example} +% FIXME: This example is not an example of this function. \begin{codeblock} auto st = sys_days{2000y/January/1}; auto tt = clock_cast(st); -cout << format("%F %T %Z == ", st) << format("%F %T %Z\n", tt); +cout << format("{0:%F %T %Z} == {1:%F %T %Z}\n", st, tt); \end{codeblock} Produces this output: @@ -3241,45 +3121,19 @@ \begin{itemdescr} \pnum -\effects Calls \tcode{to_stream(os, fmt, t)}, -where \tcode{fmt} is a string containing -\tcode{"\%F \%T"} widened to \tcode{charT}. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - -\indexlibrarymember{to_stream}{gps_time}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const gps_time& tp); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Streams \tcode{tp} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. -If \tcode{\%Z} is used, it will be replaced with \tcode{"GPS"}. -If \tcode{\%z} is used (or a modified variant of \tcode{\%z}), -an offset of \tcode{0min} will be formatted. -The date and time formatted -shall be equivalent to that formatted by a \tcode{sys_time} initialized with: +\effects +Equivalent to: \begin{codeblock} -sys_time{tp.time_since_epoch()} + - (sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1}) +return os << format(@\placeholder{STATICALLY-WIDEN}@("{:%F %T}"), t); \end{codeblock} \pnum -\returns \tcode{os}. - -\pnum +% FIXME: This example is not an example of this function. \begin{example} \begin{codeblock} auto st = sys_days{2000y/January/1}; auto gt = clock_cast(st); -cout << format("%F %T %Z == ", st) << format("%F %T %Z\n", gt); +cout << format("{0:%F %T %Z} == {1:%F %T %Z}\n", st, gt); \end{codeblock} Produces this output: @@ -3387,40 +3241,13 @@ operator<<(basic_ostream& os, const file_time& t); \end{itemdecl} -\begin{itemdescr} -\pnum -\effects Calls \tcode{to_stream(os, fmt, t)}, -where \tcode{fmt} is a string containing -\tcode{"\%F \%T"} widened to \tcode{charT}. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - -\indexlibrarymember{to_stream}{file_time}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const file_time& tp); -\end{itemdecl} - \begin{itemdescr} \pnum \effects -Streams \tcode{tp} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. -If \tcode{\%Z} is used, it will be replaced with \tcode{"UTC"} widened to \tcode{charT}. -If \tcode{\%z} is used (or a modified variant of \tcode{\%z}), -an offset of \tcode{0min} will be formatted. -The date and time formatted shall be equivalent to -that formatted by a \tcode{sys_time} initialized with -\tcode{clock_cast(tp)}, -or by a \tcode{utc_time} initialized with -\tcode{clock_cast(tp)}. - -\pnum -\returns \tcode{os}. +Equivalent to: +\begin{codeblock} +return os << format(@\placeholder{STATICALLY-WIDEN}@("{:%F %T}"), t); +\end{codeblock} \end{itemdescr} \indexlibrarymember{from_stream}{file_time}% @@ -3532,35 +3359,6 @@ \returns \tcode{os}. \end{itemdescr} -\indexlibrarymember{to_stream}{local_time}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const local_time& tp, - const string* abbrev = nullptr, const seconds* offset_sec = nullptr); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Streams \tcode{tp} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. -If \tcode{\%Z} is used, -it will be replaced with \tcode{*abbrev} if \tcode{abbrev} is not equal to \tcode{nullptr}. -If \tcode{abbrev} is equal to \tcode{nullptr} (and \tcode{\%Z} is used), -\tcode{os.setstate(ios_base::failbit)} shall be called. -If \tcode{\%z} is used (or a modified variant of \tcode{\%z}), -it will be formatted with the value of \tcode{*offset_sec} -if \tcode{offset_sec} is not equal to \tcode{nullptr}. -If \tcode{\%z} (or a modified variant of \tcode{\%z}) is used, -and \tcode{offset_sec} is equal to \tcode{nullptr}, then -\tcode{os.setstate(ios_base::failbit)} shall be called. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - \indexlibrarymember{from_stream}{local_time}% \begin{itemdecl} template> @@ -4176,30 +3974,12 @@ \begin{itemdescr} \pnum \effects -Inserts \tcode{format(fmt, d)} -where \tcode{fmt} is \tcode{"\%d"} widened to \tcode{charT}. -If \tcode{!d.ok()}, appends with \tcode{" is not a valid day"}. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - -\indexlibrarymember{to_stream}{day}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const day& d); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Streams \tcode{d} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. - -\pnum -\returns \tcode{os}. +Equivalent to: +\begin{codeblock} +return os << (d.ok() ? + format(@\placeholder{STATICALLY-WIDEN}@("{:%d}"), d) : + format(@\placeholder{STATICALLY-WIDEN}@("{:%d} is not a valid day"), d)); +\end{codeblock} \end{itemdescr} \indexlibrarymember{from_stream}{day}% @@ -4488,31 +4268,13 @@ \begin{itemdescr} \pnum \effects -If \tcode{m.ok() == true} -inserts \tcode{format(os.getloc(), fmt, m)} -where fmt is \tcode{"\%b"} widened to \tcode{charT}. -Otherwise inserts \tcode{unsigned\{m\} << " is not a valid month"}. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - -\indexlibrarymember{to_stream}{month}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const month& m); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Streams \tcode{m} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. - -\pnum -\returns \tcode{os}. +Equivalent to: +\begin{codeblock} +return os << (m.ok() ? + format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{:%b}"), m) : + format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{} is not a valid month"), + static_cast(m))); +\end{codeblock} \end{itemdescr} \indexlibrarymember{from_stream}{month}% @@ -4826,30 +4588,12 @@ \begin{itemdescr} \pnum \effects -Inserts \tcode{format(fmt, y)} where \tcode{fmt} is -\tcode{"\%Y"} widened to \tcode{charT}. -If \tcode{!y.ok()}, appends with \tcode{" is not a valid year"}. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - -\indexlibrarymember{to_stream}{year}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const year& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Streams \tcode{y} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. - -\pnum -\returns \tcode{os}. +Equivalent to: +\begin{codeblock} +return os << (y.ok() ? + format(@\placeholder{STATICALLY-WIDEN}@("{:%Y}"), y) : + format(@\placeholder{STATICALLY-WIDEN}@("{:%Y} is not a valid year"), y)); +\end{codeblock} \end{itemdescr} \indexlibrarymember{from_stream}{year}% @@ -5196,31 +4940,13 @@ \begin{itemdescr} \pnum \effects -If \tcode{wd.ok() == true} -inserts \tcode{format(os.getloc(), fmt, wd)} -where \tcode{fmt} is \tcode{"\%a"} widened to \tcode{charT}. -Otherwise inserts \tcode{unsigned\{wd\} << " is not a valid weekday"}. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - -\indexlibrarymember{to_stream}{weekday}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const weekday& wd); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Streams \tcode{wd} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. - -\pnum -\returns \tcode{os}. +Equivalent to: +\begin{codeblock} +return os << (wd.ok() ? + format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{:%a}"), wd) : + format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{} is not a valid weekday"), + static_cast(wd))); +\end{codeblock} \end{itemdescr} \indexlibrarymember{from_stream}{weekday}% @@ -5363,14 +5089,14 @@ \begin{itemdescr} \pnum \effects -\tcode{os << wdi.weekday() << '[' << wdi.index()}. -If \tcode{wdi.index()} is in the range \crange{1}{5}, -appends with \tcode{']'}, -otherwise -appends with \tcode{" is not a valid index]"}. - -\pnum -\returns \tcode{os}. +Equivalent to: +\begin{codeblock} +auto i = wdi.index(); +return os << (i >= 1 && i <= 5 ? + format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{}[{}]"), wdi.weekday(), i) : + format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{}[{} is not a valid index"]"), + wdi.weekday(), i)); +\end{codeblock} \end{itemdescr} \rSec2[time.cal.wdlast]{Class \tcode{weekday_last}} @@ -5465,7 +5191,11 @@ \begin{itemdescr} \pnum -\returns \tcode{os << wdl.weekday() << "[last]"}. +\effects +Equivalent to: +\begin{codeblock} +return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{}[last]"), wdl.weekday()); +\end{codeblock} \end{itemdescr} \rSec2[time.cal.md]{Class \tcode{month_day}} @@ -5582,27 +5312,14 @@ operator<<(basic_ostream& os, const month_day& md); \end{itemdecl} -\begin{itemdescr} -\pnum -\returns \tcode{os << md.month() << '/' << md.day()}. -\end{itemdescr} - -\indexlibrarymember{to_stream}{month_day}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const month_day& md); -\end{itemdecl} - \begin{itemdescr} \pnum \effects -Streams \tcode{md} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. - -\pnum -\returns \tcode{os}. +Equivalent to: +\begin{codeblock} +return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{}/{}"), + md.month(), md.day()); +\end{codeblock} \end{itemdescr} \indexlibrarymember{from_stream}{month_day}% @@ -5730,7 +5447,11 @@ \begin{itemdescr} \pnum -\returns \tcode{os << mdl.month() << "/last"}. +\effects +Equivalent to: +\begin{codeblock} +return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{}/last"), mdl.month()); +\end{codeblock} \end{itemdescr} \rSec2[time.cal.mwd]{Class \tcode{month_weekday}} @@ -5836,7 +5557,12 @@ \begin{itemdescr} \pnum -\returns \tcode{os << mwd.month() << '/' << mwd.weekday_indexed()}. +\effects +Equivalent to: +\begin{codeblock} +return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{}/{}"), + mwd.month(), mwd.weekday_indexed()); +\end{codeblock} \end{itemdescr} \rSec2[time.cal.mwdlast]{Class \tcode{month_weekday_last}} @@ -5944,7 +5670,12 @@ \begin{itemdescr} \pnum -\returns \tcode{os << mwdl.month() << '/' << mwdl.weekday_last()}. +\effects +Equivalent to: +\begin{codeblock} +return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{}/{}"), + mwdl.month(), mwdl.weekday_last()); +\end{codeblock} \end{itemdescr} \rSec2[time.cal.ym]{Class \tcode{year_month}} @@ -6191,27 +5922,14 @@ operator<<(basic_ostream& os, const year_month& ym); \end{itemdecl} -\begin{itemdescr} -\pnum -\returns \tcode{os << ym.year() << '/' << ym.month()}. -\end{itemdescr} - -\indexlibrarymember{to_stream}{year_month}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const year_month& ym); -\end{itemdecl} - \begin{itemdescr} \pnum \effects -Streams \tcode{ym} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. - -\pnum -\returns \tcode{os}. +Equivalent to: +\begin{codeblock} +return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{}/{}"), + ym.year(), ym.month()); +\end{codeblock} \end{itemdescr} \indexlibrarymember{from_stream}{year_month}% @@ -6616,30 +6334,12 @@ \begin{itemdescr} \pnum \effects -Inserts \tcode{format(fmt, ymd)} -where \tcode{fmt} is \tcode{"\%F"} widened to \tcode{charT}. -If \tcode{!ymd.ok()}, appends with \tcode{" is not a valid date"}. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - -\indexlibrarymember{to_stream}{year_month_day}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, const year_month_day& ymd); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Streams \tcode{ymd} into \tcode{os} using -the format specified by the NTCTS \tcode{fmt}. -\tcode{fmt} encoding follows the rules specified in \ref{time.format}. - -\pnum -\returns \tcode{os}. +Equivalent to: +\begin{codeblock} +return os << (ymd.ok() ? + format(@\placeholder{STATICALLY-WIDEN}@("{:%F}"), ymd) : + format(@\placeholder{STATICALLY-WIDEN}@("{:%F} is not a valid date"), ymd)); +\end{codeblock} \end{itemdescr} \indexlibrarymember{from_stream}{year_month_day}% @@ -6962,7 +6662,12 @@ \begin{itemdescr} \pnum -\returns \tcode{os << ymdl.year() << '/' << ymdl.month_day_last()}. +\effects +Equivalent to: +\begin{codeblock} +return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{}/{}"), + ymdl.year(), ymdl.month_day_last()); +\end{codeblock} \end{itemdescr} \rSec2[time.cal.ymwd]{Class \tcode{year_month_weekday}} @@ -7299,7 +7004,12 @@ \begin{itemdescr} \pnum -\returns \tcode{os << ymwdi.year() << '/' << ymwdi.month() << '/' << ymwdi.weekday_indexed()}. +\effects +Equivalent to: +\begin{codeblock} +return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{}/{}/{}"), + ymwd.year(), ymwd.month(), ymwd.weekday_indexed()); +\end{codeblock} \end{itemdescr} \rSec2[time.cal.ymwdlast]{Class \tcode{year_month_weekday_last}} @@ -7583,7 +7293,12 @@ \begin{itemdescr} \pnum -\returns \tcode{os << ymwdl.year() << '/' << ymwdl.month() << '/' << ymwdl.weekday_last()}. +\effects +Equivalent to: +\begin{codeblock} +return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{}/{}/{}"), + ymwdl.year(), ymwdl.month(), ymwdl.weekday_last()); +\end{codeblock} \end{itemdescr} \rSec2[time.cal.operators]{Conventional syntax operators} @@ -10129,25 +9844,6 @@ \returns \tcode{os}. \end{itemdescr} -\indexlibrarymember{to_stream}{zoned_time}% -\begin{itemdecl} -template - basic_ostream& - to_stream(basic_ostream& os, const charT* fmt, - const zoned_time& tp); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -First obtains a \tcode{sys_info} via \tcode{tp.get_info()} -which for exposition purposes will be referred to as \tcode{info}. -Then calls \tcode{to_stream(os, fmt, tp.get_local_time(), \&info.abbrev, \&info.offset)}. - -\pnum -\returns \tcode{os}. -\end{itemdescr} - \rSec2[time.zone.leap]{Class \tcode{leap}} \rSec3[time.zone.leap.overview]{Overview} @@ -10465,162 +10161,94 @@ \rSec1[time.format]{Formatting} \pnum -Each \tcode{format} overload specified in this subclause -calls \tcode{to_stream} unqualified, -so as to enable argument dependent lookup\iref{basic.lookup.argdep}. - -\indexlibrary{\idxcode{format}|(}% -\begin{itemdecl} -template - basic_string - format(const charT* fmt, const Streamable& s); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\remarks -This function shall not participate in overload resolution unless -\begin{codeblock} -to_stream(declval&>(), fmt, s) -\end{codeblock} -is a valid expression. - -\pnum -\effects -Constructs a local variable of type -\tcode{basic_ostringstream} -(named \tcode{os} for exposition purposes). -Executes \tcode{os.exceptions(ios::failbit | ios::badbit)}. -Then calls \tcode{to_stream(os, fmt, s)}. - -\pnum -\returns \tcode{os.str()}. -\end{itemdescr} - -\begin{itemdecl} -template - basic_string - format(const locale& loc, const charT* fmt, const Streamable& s); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\remarks -This function shall not participate in overload resolution unless -\begin{codeblock} -to_stream(declval&>(), fmt, s) -\end{codeblock} -is a valid expression. - -\pnum -\effects -Constructs a local variable of type -\tcode{basic_ostringstream} -(named \tcode{os} for exposition purposes). -Executes \tcode{os.exceptions(ios::failbit | ios::badbit)}. -Then calls \tcode{os.imbue(loc)}. -Then calls \tcode{to_stream(os, fmt, s)}. - -\pnum -\returns \tcode{os.str()}. -\end{itemdescr} - -\begin{itemdecl} -template - basic_string - format(const basic_string& fmt, const Streamable& s); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\remarks -This function shall not participate in overload resolution unless -\begin{codeblock} -to_stream(declval&>(), fmt.c_str(), s) -\end{codeblock} -is a valid expression. - -\pnum -\effects -Constructs a local variable of type -\tcode{basic_ostringstream} -(named \tcode{os} for exposition purposes). -Executes \tcode{os.exceptions(ios::failbit | ios::badbit)}. -Then calls \tcode{to_stream(os, fmt.c_str(), s)}. - -\pnum -\returns \tcode{os.str()}. -\end{itemdescr} - -\begin{itemdecl} -template - basic_string - format(const locale& loc, const basic_string& fmt, const Streamable& s); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\remarks -This function shall not participate in overload resolution unless -\begin{codeblock} -to_stream(declval&>(), fmt.c_str(), s) -\end{codeblock} -is a valid expression. - -\pnum -\effects -Constructs a local variable of type -\tcode{basic_ostringstream} -(named \tcode{os} for exposition purposes). -Then calls \tcode{os.imbue(loc)}. -Executes \tcode{os.exceptions(ios::failbit | ios::badbit)}. -Then calls \tcode{to_stream(os, fmt.c_str(), s)}. - -\pnum -\returns \tcode{os.str()}. -\end{itemdescr} - -\pnum -The \tcode{format} functions call a \tcode{to_stream} function with -a \tcode{basic_ostream}, -a formatting string specifier, -and a \tcode{Streamable} argument. -Each \tcode{to_stream} overload is customized for each \tcode{Streamable} type. -However all \tcode{to_stream} overloads -treat the formatting string specifier -according to the following specification: - -\pnum -The \tcode{fmt} string consists of zero or more conversion specifiers -and ordinary multibyte characters. -A conversion specifier consists of -a \tcode{\%} character, -possibly followed by an \tcode{E} or \tcode{O} modifier character (described below), -followed by a character that determines the behavior of the conversion specifier. -All ordinary multibyte characters (excluding the terminating null character) -are streamed unchanged into the \tcode{basic_ostream}. - -\pnum -Each conversion specifier is replaced by appropriate characters +Each \tcode{formatter}\iref{format.formatter} specialization +in the chrono library\iref{time.syn} +meets the \newoldconcept{Formatter} requirements\iref{formatter.requirements}. +The \tcode{parse} member functions of these formatters +interpret the format specification according to the following syntax: + +\begin{ncbnf} +\fmtnontermdef{chrono-format-spec}\br + \opt{fill-and-align} \opt{width} \opt{precision} \opt{chrono-specs} +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{chrono-specs}\br + conversion-spec\br + chrono-specs conversion-spec\br + chrono-specs literal-char +\end{ncbnf} + +% FIXME: This should obviously also exclude \tcode{\%}. +\begin{ncbnf} +\fmtnontermdef{literal-char}\br + \textnormal{any character other than \tcode{\{} or \tcode{\}}} +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{conversion-spec}\br + \terminal{\%} \opt{modifier} type +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{modifier} \textnormal{one of}\br + \terminal{E O} +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{type} \textnormal{one of}\br + \terminal{a A b B c C d D e F g G h H I j m M n}\br + \terminal{p r R S t T u U V w W x X y Y z Z \%} +\end{ncbnf} + +The productions +\fmtgrammarterm{fill-and-align}, +\fmtgrammarterm{width}, and +\fmtgrammarterm{precision} +are described in \ref{format.string}. +Giving a \fmtgrammarterm{precision} specification +in the \fmtgrammarterm{chrono-format-spec} +is valid only for \tcode{std::chrono::duration} types +where the representation type \tcode{Rep} +is a floating-point type. +For all other \tcode{Rep} types, +an exception of type \tcode{format_error} is thrown +if the \fmtgrammarterm{chrono-format-spec} +contains a \fmtgrammarterm{precision} specification. +All ordinary multibyte characters +represented by \fmtgrammarterm{literal-char} +are copied unchanged to the output. + +\pnum +Each conversion specifier \fmtgrammarterm{conversion-spec} +is replaced by appropriate characters as described in \tref{time.format.spec}. Some of the conversion specifiers -depend on the locale which is imbued to the \tcode{basic_ostream}. -If the \tcode{Streamable} object does not contain -the information the conversion specifier refers to, -the value streamed to the \tcode{basic_ostream} is unspecified. +depend on the locale that is passed to the formatting function +if the latter takes one, +or the global locale otherwise. +If the formatted object does not contain the information +the conversion specifier refers to, +an exception of type \tcode{format_error} is thrown. \pnum -Unless explicitly specified, -\tcode{Streamable} types will not contain time zone abbreviation +Unless explicitly requested, +the result of formatting a chrono type +does not contain time zone abbreviation and time zone offset information. -If available, +If the information is available, the conversion specifiers \tcode{\%Z} and \tcode{\%z} will format this information (respectively). -If the information is not available, -and \tcode{\%Z} or \tcode{\%z} are contained in \tcode{fmt}, -\tcode{os.setstate(ios_base::failbit)} shall be called. +\begin{note} +If the information is not available and +a \tcode{\%Z} or \tcode{\%z} +conversion specifier appears in +the \fmtgrammarterm{chrono-format-spec}, +an exception of type \tcode{format_error} is thrown, +as described above. +\end{note} -\begin{LongTable}{Meaning of \tcode{format} conversion specifiers}{time.format.spec}{lx{.8\hsize}} +\begin{LongTable}{Meaning of conversion specifiers}{time.format.spec}{lx{.8\hsize}} \\ \topline \lhdr{Specifier} & \rhdr{Replacement} \\ \capsep \endfirsthead @@ -10631,22 +10259,22 @@ \tcode{\%a} & The locale's abbreviated weekday name. If the value does not contain a valid weekday, -\tcode{setstate(ios::failbit)} is called. +an exception of type \tcode{format_error} is thrown. \\ \rowsep \tcode{\%A} & The locale's full weekday name. If the value does not contain a valid weekday, -\tcode{setstate(ios::failbit)} is called. +an exception of type \tcode{format_error} is thrown. \\ \rowsep \tcode{\%b} & The locale's abbreviated month name. If the value does not contain a valid month, -\tcode{setstate(ios::failbit)} is called. +an exception of type \tcode{format_error} is thrown. \\ \rowsep \tcode{\%B} & The locale's full month name. If the value does not contain a valid month, -\tcode{setstate(ios::failbit)} is called. +an exception of type \tcode{format_error} is thrown. \\ \rowsep \tcode{\%c} & The locale's date and time representation. @@ -10814,18 +10442,216 @@ The modified commands \tcode{\%Ez} and \tcode{\%Oz} insert a \tcode{:} between the hours and minutes: \tcode{-04:30}. If the offset information is not available, -\tcode{setstate(ios_base::failbit)} shall be called. +an exception of type \tcode{format_error} is thrown. \\ \rowsep \tcode{\%Z} & The time zone abbreviation. If the time zone abbreviation is not available, -\tcode{setstate(ios_base::failbit)} shall be called. +an exception of type \tcode{format_error} is thrown. \\ \rowsep \tcode{\%\%} & A \tcode{\%} character. \\ \end{LongTable} +\pnum +If the \fmtgrammarterm{chrono-specs} is omitted, +the chrono object is formatted +as if by streaming it to \tcode{std::ostringstream os} +and copying \tcode{os.str()} through the output iterator of the context +with additional padding and adjustments as specified by the format specifiers. +\begin{example} +\begin{codeblock} +string s = format("{:=>8}", 42ms); // value of \tcode{s} is \tcode{"====42ms"} +\end{codeblock} +\end{example} + +\indexlibrary{\idxcode{formatter}!specializations!\idxcode{chrono::sys_time}}% +\begin{itemdecl} +template + struct formatter, charT>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\remarks +If \tcode{\%Z} is used, +it is replaced with \tcode{\exposid{STATICALLY-WIDEN}("UTC")}. +If \tcode{\%z} (or a modified variant of \tcode{\%z}) is used, +an offset of \tcode{0min} is formatted. +\end{itemdescr} + +\indexlibrary{\idxcode{formatter}!specializations!\idxcode{chrono::utc_time}}% +\begin{itemdecl} +template + struct formatter, charT>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\remarks +If \tcode{\%Z} is used, +it is replaced with \tcode{\exposid{STATICALLY-WIDEN}("UTC")}. +If \tcode{\%z} (or a modified variant of \tcode{\%z}) is used, +an offset of \tcode{0min} is formatted. +If the argument represents a time during a leap second insertion, +and if a seconds field is formatted, +the integral portion of that format is +\tcode{\exposid{STATICALLY-WIDEN}("60")}. +\end{itemdescr} + +\indexlibrary{\idxcode{formatter}!specializations!\idxcode{chrono::tai_time}}% +\begin{itemdecl} +template + struct formatter, charT>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\remarks +If \tcode{\%Z} is used, +it is replaced with \tcode{\exposid{STATICALLY-WIDEN}("TAI")}. +If \tcode{\%z} (or a modified variant of \tcode{\%z}) is used, +an offset of \tcode{0min} is formatted. +The date and time formatted are equivalent to +those formatted by a \tcode{sys_time} initialized with +\begin{codeblock} +sys_time{tp.time_since_epoch()} - + (sys_days{1970y/January/1} - sys_days{1958y/January/1}) +\end{codeblock} +\end{itemdescr} + +\indexlibrary{\idxcode{formatter}!specializations!\idxcode{chrono::gps_time}}% +\begin{itemdecl} +template + struct formatter, charT>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\remarks +If \tcode{\%Z} is used, +it is replaced with \tcode{\exposid{STATICALLY-WIDEN}("GPS")}. +If \tcode{\%z} (or a modified variant of \tcode{\%z}) is used, +an offset of \tcode{0min} is formatted. +The date and time formatted are equivalent to +those formatted by a \tcode{sys_time} initialized with +\begin{codeblock} +sys_time{tp.time_since_epoch()} + + (sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1}) +\end{codeblock} +\end{itemdescr} + +\indexlibrary{\idxcode{formatter}!specializations!\idxcode{chrono::file_time}}% +\begin{itemdecl} +template + struct formatter, charT>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\remarks +If \tcode{\%Z} is used, +it is replaced with \tcode{\exposid{STATICALLY-WIDEN}("UTC")}. +If \tcode{\%z} (or a modified variant of \tcode{\%z}) is used, +an offset of \tcode{0min} is formatted. +The date and time formatted are equivalent to +those formatted +by a \tcode{sys_time} initialized with \tcode{clock_cast(t)}, or +by a \tcode{utc_time} initialized with \tcode{clock_cast(t)}, +where \tcode{t} is the first argument to \tcode{format}. +\end{itemdescr} + +\indexlibrary{\idxcode{formatter}!specializations!\idxcode{chrono::local_time}}% +\begin{itemdecl} +template + struct formatter, charT>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\remarks +If \tcode{\%Z}, \tcode{\%z}, or a modified version of \tcode{\%z} is used, +an exception of type \tcode{format_error} is thrown. +\end{itemdescr} + +\indexlibrary{local-time-format-t@\exposid{local-time-format-it}}% +\begin{codeblock} +template struct @\placeholder{local-time-format-t}@ { // \expos + local_time time; // \expos + const string* abbrev; // \expos + const seconds* offset_sec; // \expos +}; +\end{codeblock} + +\indexlibrary{\idxcode{local_time_format}}% +\begin{itemdecl} +template + @\placeholder{local-time-format-t}@ + local_time_format(local_time time, const string* abbrev = nullptr, + const seconds* offset_sec = nullptr); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{\{time, abbrev, offset_sec\}}. +\end{itemdescr} + +\indexlibrary{\idxcode{formatter}!specializations!chrono::local-time-format-t@\tcode{chrono::\exposid{local-time-format-t}}}% +\begin{itemdecl} +template + struct formatter, charT>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\remarks +Let \tcode{f} be a \tcode{\exposid{local-time-format-t}} object +passed to \tcode{formatter::format}. +If \tcode{\%Z} is used, +it is replaced with \tcode{*f.abbrev} +if \tcode{f.abbrev} is not a null pointer value. +If \tcode{\%Z} is used +and \tcode{f.abbrev} is a null pointer value, +an exception of type \tcode{format_error} is thrown. +If \tcode{\%z} (or a modified variant of \tcode{\%z}) is used, +it is formatted with the value of \tcode{*f.offset_sec} +if \tcode{f.offset_sec} is not a null pointer value, +If \tcode{\%z} (or a modified variant of \tcode{\%z}) is used +and \tcode{f.offset_sec} is a null pointer value, +then an exception of type \tcode{format_error} is thrown. +\end{itemdescr} + +\indexlibrary{\idxcode{formatter}!specializations!\idxcode{chrono::zoned_time}}% +\begin{codeblock} +template +struct formatter, charT> + : formatter, charT> { + template + typename FormatContext::iterator + format(const chrono::zoned_time& tp, FormatContext& ctx); +}; +\end{codeblock} + +% FIXME: Decide how to index this. This template-id is a lie. +\indexlibrary{\idxcode{format}!\idxcode{formatter}}% +\begin{itemdecl} +template + typename FormatContext::iterator + format(const chrono::zoned_time& tp, FormatContext& ctx); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: +\begin{codeblock} +sys_info info = tp.get_info(); +return formatter, charT>:: + format({tp.get_local_time(), &info.abbrev, &info.offset}, ctx); +\end{codeblock} +\end{itemdescr} + \indexlibrary{\idxcode{format}|)}% \rSec1[time.parse]{Parsing} diff --git a/source/utilities.tex b/source/utilities.tex index fa895e4532..a22b2173a9 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19509,7 +19509,6 @@ \indexlibrary{\idxcode{format_to_n_result}}% \indexlibrarymember{out}{format_to_n_result}% \indexlibrarymember{size}{format_to_n_result}% -% FIXME: Reorder this to match the presentation. \begin{codeblock} namespace std { // \ref{format.functions}, formatting functions @@ -19517,19 +19516,35 @@ string format(string_view fmt, const Args&... args); template wstring format(wstring_view fmt, const Args&... args); + template + string format(const locale& loc, string_view fmt, const Args&... args); + template + wstring format(const locale& loc, wstring_view fmt, const Args&... args); string vformat(string_view fmt, format_args args); wstring vformat(wstring_view fmt, wformat_args args); + string vformat(const locale& loc, string_view fmt, format_args args); + wstring vformat(const locale& loc, wstring_view fmt, wformat_args args); template Out format_to(Out out, string_view fmt, const Args&... args); template Out format_to(Out out, wstring_view fmt, const Args&... args); + template + Out format_to(Out out, const locale& loc, string_view fmt, const Args&... args); + template + Out format_to(Out out, const locale& loc, wstring_view fmt, const Args&... args); template Out vformat_to(Out out, string_view fmt, format_args_t args); template Out vformat_to(Out out, wstring_view fmt, format_args_t args); + template + Out vformat_to(Out out, const locale& loc, string_view fmt, + format_args_t args); + template + Out vformat_to(Out out, const locale& loc, wstring_view fmt, + format_args_t args); template struct format_to_n_result { Out out; @@ -19541,11 +19556,23 @@ template format_to_n_result format_to_n(Out out, iter_difference_t n, wstring_view fmt, const Args&... args); + template + format_to_n_result format_to_n(Out out, iter_difference_t n, + const locale& loc, string_view fmt, + const Args&... args); + template + format_to_n_result format_to_n(Out out, iter_difference_t n, + const locale& loc, wstring_view fmt, + const Args&... args); template size_t formatted_size(string_view fmt, const Args&... args); template size_t formatted_size(wstring_view fmt, const Args&... args); + template + size_t formatted_size(const locale& loc, string_view fmt, const Args&... args); + template + size_t formatted_size(const locale& loc, wstring_view fmt, const Args&... args); // \ref{format.formatter}, formatter template struct formatter; @@ -19691,9 +19718,12 @@ interpretation of the \fmtgrammarterm{format-spec} field. The syntax of format specifications is as follows: +% FIXME: Listing chrono-format-spec here is a mistake. We should have a clean +% separation between the extensibility mechanism and the extensions to it. \begin{ncbnf} \fmtnontermdef{format-spec}\br \terminal{:} std-format-spec\br + \terminal{:} chrono-format-spec\br \terminal{:} custom-format-spec \end{ncbnf} @@ -19744,10 +19774,13 @@ \terminal{a A b B c d e E f F g G n o p s x X} \end{ncbnf} -where \fmtgrammarterm{std-format-spec} +where +\fmtgrammarterm{std-format-spec} defines a common formatting mini-language supported by fundamental and string types, -while \fmtgrammarterm{custom-format-spec} +\fmtgrammarterm{chrono-format-spec} +defines a mini-language for chrono types\iref{time.format}, and +\fmtgrammarterm{custom-format-spec} is a placeholder for user-defined mini-languages. \begin{note} Some of the formatting options @@ -20001,7 +20034,7 @@ % \tcode{n} & The same as \tcode{d}, except that -it uses the current global locale +it uses the context's locale to insert the appropriate digit group separator characters. \\ \rowsep % @@ -20101,7 +20134,7 @@ % \tcode{n} & The same as \tcode{g}, except that -it uses the current global locale to insert the appropriate +it uses the context's locale to insert the appropriate digit group and decimal radix separator characters. \\ \rowsep % @@ -20188,10 +20221,40 @@ \end{codeblock} \end{itemdescr} +\indexlibrary{\idxcode{format}}% +\begin{itemdecl} +template + string format(const locale& loc, string_view fmt, const Args&... args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +return vformat(loc, fmt, make_format_args(args...)); +\end{codeblock} +\end{itemdescr} + +\indexlibrary{\idxcode{format}}% +\begin{itemdecl} +template + wstring format(const locale& loc, wstring_view fmt, const Args&... args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +return vformat(loc, fmt, make_wformat_args(args...)); +\end{codeblock} +\end{itemdescr} + \indexlibrary{\idxcode{vformat}}% \begin{itemdecl} string vformat(string_view fmt, format_args args); wstring vformat(wstring_view fmt, wformat_args args); +string vformat(const locale& loc, string_view fmt, format_args args); +wstring vformat(const locale& loc, wstring_view fmt, wformat_args args); \end{itemdecl} \begin{itemdescr} @@ -20200,6 +20263,7 @@ A string object holding the character representation of formatting arguments provided by \tcode{args} formatted according to specifications given in \tcode{fmt}. +If present, \tcode{loc} is used for locale-specific formatting. \pnum \throws @@ -20223,12 +20287,35 @@ \end{codeblock} \end{itemdescr} +\indexlibrary{\idxcode{format_to}}% +\begin{itemdecl} +template + Out format_to(Out out, const locale& loc, string_view fmt, const Args&... args); +template + Out format_to(Out out, const locale& loc, wstring_view fmt, const Args&... args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +using context = basic_format_context; +return vformat_to(out, loc, fmt, {make_format_args(args...)}); +\end{codeblock} +\end{itemdescr} + \indexlibrary{\idxcode{vformat_to}}% \begin{itemdecl} template Out vformat_to(Out out, string_view fmt, format_args_t args); template Out vformat_to(Out out, wstring_view fmt, format_args_t args); +template + Out vformat_to(Out out, const locale& loc, string_view fmt, + format_args_t args); +template + Out vformat_to(Out out, const locale& loc, wstring_view fmt, + format_args_t args); \end{itemdecl} \begin{itemdescr} @@ -20245,12 +20332,14 @@ \pnum \effects -% FIXME: This is unreadable. Is "formatting" a verb or an adjective here? -Places the character representation of formatting arguments -provided by \tcode{args}, -formatted according to specifications given in \tcode{fmt}, +Places the character representation of formatting +the arguments provided by \tcode{args}, +formatted according to the specifications given in \tcode{fmt}, into the range \range{out}{out + N}, -where \tcode{N} is \tcode{formatted_size(fmt, args...)}. +where \tcode{N} is +\tcode{formatted_size(fmt, args...)} for the functions without a \tcode{loc} parameter and +\tcode{formatted_size(loc, fmt, args...)} for the functions with a \tcode{loc} parameter. +If present, \tcode{loc} is used for locale-specific formatting. \pnum \returns @@ -20269,6 +20358,14 @@ template format_to_n_result format_to_n(Out out, iter_difference_t n, wstring_view fmt, const Args&... args); +template + format_to_n_result format_to_n(Out out, iter_difference_t n, + const locale& loc, string_view fmt, + const Args&... args); +template + format_to_n_result format_to_n(Out out, iter_difference_t n, + const locale& loc, wstring_view fmt, + const Args&... args); \end{itemdecl} \begin{itemdescr} @@ -20276,7 +20373,9 @@ Let \begin{itemize} \item \tcode{charT} be \tcode{decltype(fmt)::value_type}, -\item \tcode{N} be \tcode{formatted_size(fmt, args...)}, and +\item \tcode{N} be +\tcode{formatted_size(fmt, args...)} for the functions without a \tcode{loc} parameter and +\tcode{formatted_size(loc, fmt, args...)} for the functions with a \tcode{loc} parameter, and \item \tcode{M} be \tcode{min(max(n, 0), N)}. \end{itemize} @@ -20294,9 +20393,10 @@ \pnum \effects Places the first \tcode{M} characters of the character representation of -formatting arguments provided by \tcode{args}, -formatted according to specifications given in \tcode{fmt}, +formatting the arguments provided by \tcode{args}, +formatted according to the specifications given in \tcode{fmt}, into the range \range{out}{out + M}. +If present, \tcode{loc} is used for locale-specific formatting. \pnum \returns @@ -20313,6 +20413,10 @@ size_t formatted_size(string_view fmt, const Args&... args); template size_t formatted_size(wstring_view fmt, const Args&... args); +template + size_t formatted_size(const locale& loc, string_view fmt, const Args&... args); +template + size_t formatted_size(const locale& loc, wstring_view fmt, const Args&... args); \end{itemdecl} \begin{itemdescr} @@ -20330,6 +20434,7 @@ The number of characters in the character representation of formatting arguments \tcode{args} formatted according to specifications given in \tcode{fmt}. +If present, \tcode{loc} is used for locale-specific formatting. \pnum \throws @@ -20357,9 +20462,10 @@ \end{note} Each header that declares the template \tcode{formatter} provides the following enabled specializations: -\indexlibrary{\idxcode{formatter}!specializations}% \begin{itemize} \item +\indexlibrary{\idxcode{formatter}!specializations!character types}% +\indexlibrary{\idxcode{formatter}!specializations!string types}% For each \tcode{charT}, \begin{codeblock} template<> struct formatter; @@ -20379,6 +20485,9 @@ \end{codeblock} \item +\indexlibrary{\idxcode{formatter}!specializations!arithmetic types}% +\indexlibrary{\idxcode{formatter}!specializations!pointer types}% +\indexlibrary{\idxcode{formatter}!specializations!\idxcode{nullptr_t}}% A specialization \begin{codeblock} template<> struct formatter; @@ -20524,7 +20633,7 @@ returns an iterator past the end of the output range. The output shall only depend on \tcode{t}, -the current global locale, +\tcode{fc.locale()}, and the range \range{pc.begin()}{pc.end()} from the last call to \tcode{f.parse(pc)}. \\ \rowsep @@ -20698,6 +20807,7 @@ template using formatter_type = formatter; basic_format_arg arg(size_t id) const; + std::locale locale(); iterator out(); void advance_to(iterator it); @@ -20749,6 +20859,19 @@ \tcode{args_.get(id)}. \end{itemdescr} +\indexlibrarymember{locale}{basic_format_context}% +\begin{itemdecl} +std::locale locale(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +The locale passed to the formatting function +if the latter takes one, +and \tcode{std::locale()} otherwise. +\end{itemdescr} + \indexlibrarymember{out}{basic_format_context}% \begin{itemdecl} iterator out(); From d5300c5c66050d4cb53506c813a0c32a37cd9225 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 31 Jul 2019 16:50:22 -0700 Subject: [PATCH 095/312] P1652R1 Printf corner cases in std::format --- source/utilities.tex | 88 +++++++++++++++++++++++++------------------- 1 file changed, 51 insertions(+), 37 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index a22b2173a9..ca00dc8e77 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19749,7 +19749,7 @@ \begin{ncbnf} \fmtnontermdef{align} \textnormal{one of}\br - \terminal{< > = \caret} + \terminal{< > \caret} \end{ncbnf} \begin{ncbnf} @@ -19809,11 +19809,8 @@ string s2 = format("{:*<6}", 'x'); // value of \tcode{s2} is \tcode{"x*****"} string s3 = format("{:*>6}", 'x'); // value of \tcode{s3} is \tcode{"*****x"} string s4 = format("{:*^6}", 'x'); // value of \tcode{s4} is \tcode{"**x***"} -string s5 = format("{:=6}", 'x'); // invalid: \tcode{=} with \tcode{charT} and no integer presentation type -string s6 = format("{:6d}", c); // value of \tcode{s6} is \tcode{" 120"} -string s7 = format("{:=+06d}", c); // value of \tcode{s7} is \tcode{"+00120"} -string s8 = format("{:0=#6x}", 0xa); // value of \tcode{s8} is \tcode{"0x000a"} -string s9 = format("{:6}", true); // value of \tcode{s9} is \tcode{"true "} +string s5 = format("{:6d}", c); // value of \tcode{s5} is \tcode{" 120"} +string s6 = format("{:6}", true); // value of \tcode{s6} is \tcode{"true "} \end{codeblock} \end{example} \begin{note} @@ -19838,17 +19835,6 @@ or when an integer presentation type is specified. \\ \rowsep % -\tcode{=} & -Forces the padding to be placed after the sign or prefix (if any) -but before the digits. -\begin{example} -This can be used to print fields in the form \tcode{+000000120}. -\end{example} -This alignment option is only valid for arithmetic -types other than \tcode{charT} and \tcode{bool} -or when an integer presentation type is specified. -\\ \rowsep -% \tcode{\caret} & Forces the field to be centered within the available space by inserting @@ -19907,12 +19893,15 @@ \tcode{charT} and \tcode{bool} or when an integer presentation type is specified. For integers, -when binary, octal, or hexadecimal output is used, +when binary or hexadecimal output is used, this option adds the respective prefix -\tcode{0b} (\tcode{0B}), -\tcode{0} or +\tcode{0b} (\tcode{0B}) or \tcode{0x} (\tcode{0X}) to the output value. +For nonzero integers, +when octal output is used, +this option adds the prefix \tcode{0} +to the output value. Whether the prefix is lower-case or upper-case is determined by the case of the type format specifier. For floating-point numbers @@ -19937,9 +19926,22 @@ \pnum A zero (\tcode{0}) character preceding the \fmtgrammarterm{width} field -enables sign-aware zero-padding for arithmetic types. -This is equivalent to a \fmtgrammarterm{fill} character of \tcode{0} -with an \fmtgrammarterm{alignment} type of \tcode{=}. +pads the field with leading zeros (following any indication of sign or base) +to the field width, +except when applied to an infinity or NaN. +This option is only valid for +arithmetic types other than \tcode{charT} and \tcode{bool} +or when an integer presentation type is specified. +If the \tcode{0} character and an \fmtgrammarterm{align} option both appear, +the \tcode{0} character is ignored. +\begin{example} +\begin{codeblock} +char c = 120; +string s1 = format("{:+06d}", c); // value of \tcode{s1} is \tcode{"+00120"} +string s2 = format("{:#06x}", 0xa); // value of \tcode{s2} is \tcode{"0x000a"} +string s3 = format("{:<06}", -42); // value of \tcode{s3} is \tcode{"-42 "} (\tcode{0} is ignored because of \tcode{<} alignment) +\end{codeblock} +\end{example} \pnum % FIXME: What if it's an arg-id? @@ -20012,6 +20014,12 @@ the \tcode{\#} option adds the prefix \tcode{0B} to the output. \\ \rowsep % +\tcode{c} & +Copies the character \tcode{static_cast(value)} to the output. +Throws \tcode{format_error} if \tcode{value} is not +in the range of representable values for \tcode{charT}. +\\ \rowsep +% \tcode{d} & \tcode{to_chars(first, last, value)}. \\ \rowsep @@ -20049,11 +20057,10 @@ \pnum % FIXME: "also"? charT and bool are integer types. Integer presentation types can also be used -with \tcode{charT} and \tcode{bool} values. -Values of type \tcode{bool} are formatted -using textual representation, -either \tcode{"true"} or \tcode{"false"}, -if the presentation type is not specified. +with \tcode{charT} and \tcode{bool} values, +in which case +a \tcode{value} of type \tcode{bool} +is treated as \tcode{static_cast(value)}. \pnum \begin{example} @@ -20161,6 +20168,21 @@ if indicated by the \fmtgrammarterm{sign} option. \end{note} +\pnum +The available \tcode{bool} presentation types are specified in \tref{format.type.bool}. +% +\begin{floattable}{Meaning of \fmtgrammarterm{type} options for \tcode{bool}}{format.type.bool}{ll} +\topline +\lhdr{Type} & \rhdr{Meaning} \\ \rowsep +\tcode{s} & +Copies textual representation, either \tcode{true} or \tcode{false}, to the output. +\\ \rowsep +% +none & +The same as \tcode{s}. +\\ +\end{floattable} + \pnum The available pointer presentation types and their mapping to \tcode{to_chars} are specified in \tref{format.type.ptr}. @@ -20951,7 +20973,7 @@ variant, const void*, handle> value; // \expos @@ -21066,14 +21088,6 @@ \begin{itemdecl} explicit basic_format_arg(float n) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Initializes \tcode{value} with \tcode{static_cast(n)}. -\end{itemdescr} - -\begin{itemdecl} explicit basic_format_arg(double n) noexcept; explicit basic_format_arg(long double n) noexcept; \end{itemdecl} From ed00761315546c11b48441e1bcef6aa5927f76c8 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Thu, 1 Aug 2019 18:17:10 -0700 Subject: [PATCH 096/312] [format.string] Explicitly list all the possible formatting types for bool and charT in their respective tables rather than requiring the reader to infer how to merge the integer table into the bool and charT tables. --- source/utilities.tex | 118 +++++++++++++++++++------------------------ 1 file changed, 51 insertions(+), 67 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index ca00dc8e77..cac39b2382 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19939,7 +19939,7 @@ char c = 120; string s1 = format("{:+06d}", c); // value of \tcode{s1} is \tcode{"+00120"} string s2 = format("{:#06x}", 0xa); // value of \tcode{s2} is \tcode{"0x000a"} -string s3 = format("{:<06}", -42); // value of \tcode{s3} is \tcode{"-42 "} (\tcode{0} is ignored because of \tcode{<} alignment) +string s3 = format("{:<06}", -42); // value of \tcode{s3} is \tcode{"-42\ \ \ "} (\tcode{0} is ignored because of \tcode{<} alignment) \end{codeblock} \end{example} @@ -19961,27 +19961,8 @@ \begin{floattable}{Meaning of \fmtgrammarterm{type} options for strings}{format.type.string}{ll} \topline \lhdr{Type} & \rhdr{Meaning} \\ \rowsep -\tcode{s} & +none, \tcode{s} & Copies the string to the output. -\\ \rowsep -% -none & -The same as \tcode{s}. -\\ -\end{floattable} - -\pnum -The available \tcode{charT} presentation types are specified in \tref{format.type.char}. -% -\begin{floattable}{Meaning of \fmtgrammarterm{type} options for \tcode{charT}}{format.type.char}{ll} -\topline -\lhdr{Type} & \rhdr{Meaning} \\ \rowsep -\tcode{c} & -Copies the character to the output. -\\ \rowsep -% -none & -The same as \tcode{c}. \\ \end{floattable} @@ -19989,7 +19970,7 @@ Formatting of objects of arithmetic types and \tcode{const void*} is done as if by calling \tcode{to_chars} (unless otherwise specified) and copying the output through the output iterator of the format context -with additional padding and adjustments as per format specifiers. +with additional padding and adjustments as specified by the format specifiers. \pnum Let \range{first}{last} be a range @@ -19997,8 +19978,18 @@ and \tcode{value} be the formatting argument value. \pnum -The available integer presentation types and their mapping to -\tcode{to_chars} are specified in \tref{format.type.int}. +The available integer presentation types +for integral types other than \tcode{bool} and \tcode{charT}, +and their mapping to \tcode{to_chars}, +are specified in \tref{format.type.int}. +\begin{example} +\begin{codeblock} +string s0 = format("{}", 42); // value of \tcode{s0} is \tcode{"42"} +string s1 = format("{0:b} {0:d} {0:o} {0:x}", 42); // value of \tcode{s1} is \tcode{"101010 42 52 2a"} +string s2 = format("{0:#x} {0:#X}", 42); // value of \tcode{s2} is \tcode{"0x2a 0X2A"} +string s3 = format("{:n}", 1234); // value of \tcode{s3} might be \tcode{"1,234"} (depending on the locale) +\end{codeblock} +\end{example} % \begin{floattable}{Meaning of \fmtgrammarterm{type} options for integer types}{format.type.int}{lp{.8\hsize}} \topline @@ -20047,30 +20038,46 @@ \\ \rowsep % none & -The same as \tcode{d} if the formatting argument type is not -\tcode{charT} or \tcode{bool}. -% FIXME: Otherwise...? Note that P1652R2 improves the wording here but doesn't -% actually fix this dangling 'if'. +The same as \tcode{d}. +\begin{note} +If the formatting argument type is \tcode{charT} or \tcode{bool}, +the default is instead \tcode{c} or \tcode{s}, respectively. +\end{note} \\ \end{floattable} \pnum -% FIXME: "also"? charT and bool are integer types. -Integer presentation types can also be used -with \tcode{charT} and \tcode{bool} values, -in which case -a \tcode{value} of type \tcode{bool} -is treated as \tcode{static_cast(value)}. +The available \tcode{charT} presentation types are specified in \tref{format.type.char}. +% +\begin{floattable}{Meaning of \fmtgrammarterm{type} options for \tcode{charT}}{format.type.char}{ll} +\topline +\lhdr{Type} & \rhdr{Meaning} \\ \rowsep +none, \tcode{c} & +Copies the character to the output. +\\ \rowsep +% +\tcode{b}, \tcode{B}, \tcode{d}, \tcode{o}, \tcode{x}, \tcode{X}, \tcode{n} & +As specified in \tref{format.type.int}. +\\ +\end{floattable} \pnum -\begin{example} -\begin{codeblock} -string s0 = format("{}", 42); // value of \tcode{s0} is \tcode{"42"} -string s1 = format("{0:b} {0:d} {0:o} {0:x}", 42); // value of \tcode{s1} is \tcode{"101010 42 52 2a"} -string s2 = format("{0:#x} {0:#X}", 42); // value of \tcode{s2} is \tcode{"0x2a 0X2A"} -string s3 = format("{:n}", 1234); // value of \tcode{s3} might be \tcode{"1,234"} (depending on the locale) -\end{codeblock} -\end{example} +The available \tcode{bool} presentation types are specified in \tref{format.type.bool}. +% +\begin{floattable}{Meaning of \fmtgrammarterm{type} options for \tcode{bool}}{format.type.bool}{ll} +\topline +\lhdr{Type} & \rhdr{Meaning} \\ \rowsep +none, +\tcode{s} & +Copies textual representation, either \tcode{true} or \tcode{false}, to the output. +\\ \rowsep +% +\tcode{b}, \tcode{B}, \tcode{c}, \tcode{d}, \tcode{o}, \tcode{x}, \tcode{X}, \tcode{n} & +As specified in \tref{format.type.int} +for the value +\tcode{static_cast(value)}. +\\ +\end{floattable} \pnum The available floating-point presentation types and their mapping to @@ -20112,7 +20119,7 @@ The same as \tcode{e}, except that it uses \tcode{E} to indicate exponent. \\ \rowsep % -\tcode{f} & +\tcode{f}, \tcode{F} & Equivalent to \begin{codeblock} to_chars(first, last, value, chars_format::fixed, precision) @@ -20121,10 +20128,6 @@ or \tcode{6} if \fmtgrammarterm{precision} is not specified. \\ \rowsep % -\tcode{F} & -The same as \tcode{f}. -\\ \rowsep -% \tcode{g} & Equivalent to \begin{codeblock} @@ -20168,21 +20171,6 @@ if indicated by the \fmtgrammarterm{sign} option. \end{note} -\pnum -The available \tcode{bool} presentation types are specified in \tref{format.type.bool}. -% -\begin{floattable}{Meaning of \fmtgrammarterm{type} options for \tcode{bool}}{format.type.bool}{ll} -\topline -\lhdr{Type} & \rhdr{Meaning} \\ \rowsep -\tcode{s} & -Copies textual representation, either \tcode{true} or \tcode{false}, to the output. -\\ \rowsep -% -none & -The same as \tcode{s}. -\\ -\end{floattable} - \pnum The available pointer presentation types and their mapping to \tcode{to_chars} are specified in \tref{format.type.ptr}. @@ -20193,17 +20181,13 @@ \begin{floattable}{Meaning of \fmtgrammarterm{type} options for pointer types}{format.type.ptr}{lp{.8\hsize}} \topline \lhdr{Type} & \rhdr{Meaning} \\ \rowsep -\tcode{p} & +none, \tcode{p} & If \tcode{uintptr_t} is defined, \begin{codeblock} to_chars(first, last, reinterpret_cast(value), 16) \end{codeblock} with the prefix \tcode{0x} added to the output; otherwise, implementation-defined. -\\ \rowsep -% -none & -The same as \tcode{p}. \\ \end{floattable} From 19d21c3940d33912f1daedee0f14c0f931e389c6 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Thu, 1 Aug 2019 18:20:08 -0700 Subject: [PATCH 097/312] [format.string] Fix whitespace collapse in format alignment example. --- source/utilities.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index cac39b2382..5e00d1efab 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19804,13 +19804,13 @@ \begin{example} \begin{codeblock} char c = 120; -string s0 = format("{:6}", 42); // value of \tcode{s0} is \tcode{" 42"} -string s1 = format("{:6}", 'x'); // value of \tcode{s1} is \tcode{"x "} +string s0 = format("{:6}", 42); // value of \tcode{s0} is \tcode{"\ \ \ \ 42"} +string s1 = format("{:6}", 'x'); // value of \tcode{s1} is \tcode{"x\ \ \ \ \ "} string s2 = format("{:*<6}", 'x'); // value of \tcode{s2} is \tcode{"x*****"} string s3 = format("{:*>6}", 'x'); // value of \tcode{s3} is \tcode{"*****x"} string s4 = format("{:*^6}", 'x'); // value of \tcode{s4} is \tcode{"**x***"} -string s5 = format("{:6d}", c); // value of \tcode{s5} is \tcode{" 120"} -string s6 = format("{:6}", true); // value of \tcode{s6} is \tcode{"true "} +string s5 = format("{:6d}", c); // value of \tcode{s5} is \tcode{"\ \ \ 120"} +string s6 = format("{:6}", true); // value of \tcode{s6} is \tcode{"true\ \ "} \end{codeblock} \end{example} \begin{note} From b86e7913f69c9e7ce4f69f595846136616b15085 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Thu, 1 Aug 2019 18:27:06 -0700 Subject: [PATCH 098/312] Fix collisions with the right margin. --- source/locales.tex | 10 ++++++---- source/utilities.tex | 3 ++- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/source/locales.tex b/source/locales.tex index 06c5c740cd..be18eb747b 100644 --- a/source/locales.tex +++ b/source/locales.tex @@ -4826,11 +4826,13 @@ \pnum \returns The specializations required in \tref{locale.spec}\iref{locale.category}, namely -\tcode{moneypunct}, -\tcode{moneypunct<\brk{}wchar_t>}, -\tcode{moneypunct}, +\begin{itemize} +\item \tcode{moneypunct}, +\item \tcode{moneypunct}, +\item \tcode{moneypunct}, and -\tcode{moneypunct}, +\item \tcode{moneypunct}, +\end{itemize} return an object of type \tcode{pattern} initialized to diff --git a/source/utilities.tex b/source/utilities.tex index 5e00d1efab..a90acb01cd 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19987,7 +19987,8 @@ string s0 = format("{}", 42); // value of \tcode{s0} is \tcode{"42"} string s1 = format("{0:b} {0:d} {0:o} {0:x}", 42); // value of \tcode{s1} is \tcode{"101010 42 52 2a"} string s2 = format("{0:#x} {0:#X}", 42); // value of \tcode{s2} is \tcode{"0x2a 0X2A"} -string s3 = format("{:n}", 1234); // value of \tcode{s3} might be \tcode{"1,234"} (depending on the locale) +string s3 = format("{:n}", 1234); // value of \tcode{s3} might be \tcode{"1,234"} + // (depending on the locale) \end{codeblock} \end{example} % From 5b8976a0f87c86ea7cb02652f96d62ab9fb006ae Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Thu, 1 Aug 2019 18:52:13 -0700 Subject: [PATCH 099/312] Add some FIXMEs for problematic wording. --- source/utilities.tex | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/utilities.tex b/source/utilities.tex index a90acb01cd..df72068d1f 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19956,6 +19956,7 @@ The \fmtgrammarterm{type} determines how the data should be presented. \pnum +% FIXME: What is a "string" here, exactly? The available string presentation types are specified in \tref{format.type.string}. % \begin{floattable}{Meaning of \fmtgrammarterm{type} options for strings}{format.type.string}{ll} @@ -19967,6 +19968,8 @@ \end{floattable} \pnum +% FIXME: What about void* and nullptr_t? +% FIXME: What about strings? Do they get padding for alignment? Formatting of objects of arithmetic types and \tcode{const void*} is done as if by calling \tcode{to_chars} (unless otherwise specified) and copying the output through the output iterator of the format context From 46622695da52f8080f7280207eecd93bd950cc1a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 3 Aug 2019 19:57:13 -0700 Subject: [PATCH 100/312] [format.functions] Use clamp rather than min(max(a,b),c) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Johel Ernesto Guerrero Peña --- source/utilities.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/utilities.tex b/source/utilities.tex index df72068d1f..ad16aa8c7e 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -20386,7 +20386,7 @@ \item \tcode{N} be \tcode{formatted_size(fmt, args...)} for the functions without a \tcode{loc} parameter and \tcode{formatted_size(loc, fmt, args...)} for the functions with a \tcode{loc} parameter, and -\item \tcode{M} be \tcode{min(max(n, 0), N)}. +\item \tcode{M} be \tcode{clamp(n, 0, N)}. \end{itemize} \pnum From a870403a2dc47924e7f607f7c69694291d43007c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 3 Aug 2019 20:39:06 -0700 Subject: [PATCH 101/312] [format.arg] Don't use placeholder name for private member char-type. --- source/utilities.tex | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index ad16aa8c7e..f52fb07332 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -20957,27 +20957,27 @@ class handle; private: - using @\placeholder{char-type}@ = typename Context::char_type; @\itcorr[-1]@ // \expos + using char_type = typename Context::char_type; // \expos - variant, + const char_type*, basic_string_view, const void*, handle> value; // \expos template explicit basic_format_arg(const T& v) noexcept; // \expos explicit basic_format_arg(float n) noexcept; // \expos explicit basic_format_arg(double n) noexcept; // \expos explicit basic_format_arg(long double n) noexcept; // \expos - explicit basic_format_arg(const @\placeholder{char-type}@* s); // \expos + explicit basic_format_arg(const char_type* s); // \expos template explicit basic_format_arg( - basic_string_view<@\placeholdernc{char-type}@, traits> s) noexcept; // \expos + basic_string_view s) noexcept; // \expos template explicit basic_format_arg( - const basic_string<@\placeholdernc{char-type}@, traits, Allocator>& s) noexcept; // \expos + const basic_string& s) noexcept; // \expos explicit basic_format_arg(nullptr_t) noexcept; // \expos @@ -21043,10 +21043,10 @@ \effects \begin{itemize} \item -if \tcode{T} is \tcode{bool} or \tcode{\placeholdernc{char-type}}, +if \tcode{T} is \tcode{bool} or \tcode{char_type}, initializes \tcode{value} with \tcode{v}; otherwise, \item -if \tcode{T} is \tcode{char} and \tcode{\placeholder{char-type}} is +if \tcode{T} is \tcode{char} and \tcode{char_type} is \tcode{wchar_t}, initializes \tcode{value} with \tcode{static_cast(v)}; otherwise, \item @@ -21086,7 +21086,7 @@ \end{itemdescr} \begin{itemdecl} -explicit basic_format_arg(const @\placeholder{char-type}@* s); +explicit basic_format_arg(const char_type* s); \end{itemdecl} \begin{itemdescr} @@ -21100,7 +21100,7 @@ \begin{itemdecl} template - explicit basic_format_arg(basic_string_view<@\placeholdernc{char-type}@, traits> s) noexcept; + explicit basic_format_arg(basic_string_view s) noexcept; \end{itemdecl} \begin{itemdescr} @@ -21111,13 +21111,13 @@ \begin{itemdecl} template explicit basic_format_arg( - const basic_string<@\placeholdernc{char-type}@, traits, Allocator>& s) noexcept; + const basic_string& s) noexcept; \end{itemdecl} \begin{itemdescr} \pnum \effects Initializes \tcode{value} with -\tcode{basic_string_view<\placeholder{char-type}>(s.data(), s.size())}. +\tcode{basic_string_view(s.data(), s.size())}. \end{itemdescr} \begin{itemdecl} @@ -21173,7 +21173,7 @@ template class basic_format_arg::handle { const void* ptr_; // \expos - void (*format_)(basic_format_parse_context<@\placeholder{char-type}@>&, + void (*format_)(basic_format_parse_context&, Context&, const void*); // \expos template explicit handle(const T& val) noexcept; // \expos @@ -21181,7 +21181,7 @@ friend class basic_format_arg; // \expos public: - void format(basic_format_parse_context<@\placeholder{char-type}@>&, Context& ctx) const; + void format(basic_format_parse_context&, Context& ctx) const; }; } \end{codeblock} @@ -21198,7 +21198,7 @@ \tcode{ptr_} with \tcode{addressof(val)} and \tcode{format_} with \begin{codeblock} -[](basic_format_parse_context<@\placeholder{char-type}@>& parse_ctx, +[](basic_format_parse_context& parse_ctx, Context& format_ctx, const void* ptr) { typename Context::template formatter_type f; parse_ctx.advance_to(f.parse(parse_ctx)); @@ -21209,7 +21209,7 @@ \indexlibrarymember{format}{basic_format_arg::handle}% \begin{itemdecl} -void format(basic_format_parse_context<@\placeholder{char-type}@>& parse_ctx, Context& format_ctx) const; +void format(basic_format_parse_context& parse_ctx, Context& format_ctx) const; \end{itemdecl} \begin{itemdescr} From d17fd4d5f10f6af87654fdc73bd6417313a295f2 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 4 Aug 2019 14:04:04 -0700 Subject: [PATCH 102/312] [format.string] Avoid duplicating the specification of '#' for integers. Fix the specification for '#' being different for octal integers in the two places it's specified. --- source/utilities.tex | 35 ++++++++++++++++------------------- 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index f52fb07332..adb3001fbe 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19892,19 +19892,11 @@ This option is only valid for arithmetic types other than \tcode{charT} and \tcode{bool} or when an integer presentation type is specified. -For integers, -when binary or hexadecimal output is used, -this option adds the respective prefix -\tcode{0b} (\tcode{0B}) or -\tcode{0x} (\tcode{0X}) +For integral types, +the alternate form adds the +base prefix (if any) specified in \tref{format.type.int} to the output value. -For nonzero integers, -when octal output is used, -this option adds the prefix \tcode{0} -to the output value. -Whether the prefix is lower-case or upper-case -is determined by the case of the type format specifier. -For floating-point numbers +For floating-point types, the alternate form causes the result of the conversion to always contain a decimal-point character, even if no digits follow it. @@ -19912,7 +19904,8 @@ Normally, a decimal-point character appears in the result of these conversions only if a digit follows it. In addition, for \tcode{g} and \tcode{G} conversions, -% FIXME: Are they normally? +% FIXME: Are they normally? What does this even mean? Reach into to_chars and +% alter its behavior? trailing zeros are not removed from the result. \pnum @@ -20000,13 +19993,14 @@ \lhdr{Type} & \rhdr{Meaning} \\ \rowsep \tcode{b} & \tcode{to_chars(first, last, value, 2)}; -% FIXME: This duplicates things we said earlier. -using the \tcode{\#} option with this type adds the prefix \tcode{0b} to the output. +\indextext{base prefix}% +the base prefix is \tcode{0b}. \\ \rowsep % \tcode{B} & The same as \tcode{b}, except that -the \tcode{\#} option adds the prefix \tcode{0B} to the output. +\indextext{base prefix}% +the base prefix is \tcode{0B}. \\ \rowsep % \tcode{c} & @@ -20021,18 +20015,21 @@ % \tcode{o} & \tcode{to_chars(first, last, value, 8)}; -using the \tcode{\#} option with this type adds the prefix \tcode{0} to the output. +\indextext{base prefix}% +the base prefix is \tcode{0} if \tcode{value} is nonzero and is empty otherwise. \\ \rowsep % \tcode{x} & \tcode{to_chars(first, last, value, 16)}; -using the \tcode{\#} option with this type adds the prefix \tcode{0x} to the output. +\indextext{base prefix}% +the base prefix is \tcode{0x}. \\ \rowsep % \tcode{X} & The same as \tcode{x}, except that it uses uppercase letters for digits above 9 and -the \tcode{\#} option adds the prefix \tcode{0X} to the output. +\indextext{base prefix}% +the base prefix is \tcode{0X}. \\ \rowsep % \tcode{n} & From e30b8a69d485b96ddacfa31b7eb411c5a64d83a5 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 4 Aug 2019 14:23:48 -0700 Subject: [PATCH 103/312] [format.string] Separate out the general (type-independent) description of formatting from the format specifiers for arithmetic and string types, and make the presentation of the latter consistent with the presentation for chrono types. --- source/time.tex | 4 +- source/utilities.tex | 92 +++++++++++++++++++++++++++----------------- 2 files changed, 60 insertions(+), 36 deletions(-) diff --git a/source/time.tex b/source/time.tex index 319fadce40..65f57cb49b 100644 --- a/source/time.tex +++ b/source/time.tex @@ -10165,7 +10165,9 @@ in the chrono library\iref{time.syn} meets the \newoldconcept{Formatter} requirements\iref{formatter.requirements}. The \tcode{parse} member functions of these formatters -interpret the format specification according to the following syntax: +interpret the format specification +as a \fmtgrammarterm{chrono-format-spec} +according to the following syntax: \begin{ncbnf} \fmtnontermdef{chrono-format-spec}\br diff --git a/source/utilities.tex b/source/utilities.tex index adb3001fbe..3516c88572 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19618,6 +19618,8 @@ \rSec2[format.string]{Format string} +\rSec3[format.string.general]{In general} + % FIXME: For now, keep the format grammar productions out of the index, since % they conflict with the main grammar. % Consider renaming these en masse (to fmt-* ?) to avoid this problem. @@ -19639,7 +19641,7 @@ \begin{ncbnf} \fmtnontermdef{replacement-field}\br - \terminal{\{} \opt{arg-id} \opt{format-spec} \terminal{\}} + \terminal{\{} \opt{arg-id} \opt{format-specifier} \terminal{\}} \end{ncbnf} \begin{ncbnf} @@ -19671,13 +19673,23 @@ \terminal{0 1 2 3 4 5 6 7 8 9} \end{ncbnf} +\begin{ncbnf} +\fmtnontermdef{format-specifier}\br + \terminal{:} format-spec +\end{ncbnf} + +\begin{ncbnf} +\fmtnontermdef{format-spec}\br + \textnormal{as specified by the \tcode{formatter} specialization for the argument type} +\end{ncbnf} + \pnum The \fmtgrammarterm{arg-id} field specifies the index of % FIXME: "args" hasn't been introduced yet! the argument in \tcode{args} whose value is to be formatted and inserted into the output instead of the replacement field. -The optional \fmtgrammarterm{format-spec} field +The optional \fmtgrammarterm{format-specifier} field explicitly specifies a format for the replacement value. \pnum @@ -19688,7 +19700,9 @@ \end{example} \pnum -If all \fmtgrammarterm{arg-id}s in a format string are omitted, +If all \fmtgrammarterm{arg-id}s in a format string are omitted +(including those in the \fmtgrammarterm{format-spec}, +as interpreted by the corresponding \tcode{formatter} specialization), argument indexes 0, 1, 2, \ldots{} will automatically be used in that order. If some \fmtgrammarterm{arg-id}s are omitted and some are present, the string is not a format string. @@ -19710,27 +19724,44 @@ \pnum The \fmtgrammarterm{format-spec} field contains \defnx{format specifications}{format specification!format string} -that define how the value should be presented, -including such details as -field width, alignment, padding, and decimal precision. +that define how the value should be presented. Each type can define its own -formatting mini-language or interpretation of the \fmtgrammarterm{format-spec} field. -The syntax of format specifications is as follows: +\begin{example} +\begin{itemize} +\item +For arithmetic, pointer, and string types +the \fmtgrammarterm{format-spec} +is interpreted as a \fmtgrammarterm{std-format-spec} +as described in \iref{format.string.std}. +\item +For chrono types +the \fmtgrammarterm{format-spec} +is interpreted as a \fmtgrammarterm{chrono-format-spec} +as described in \iref{time.format}. +\item +For user-defined \tcode{formatter} specializations, +the behavior of the \tcode{parse} member function +determines how the \fmtgrammarterm{format-spec} +is interpreted. +\end{itemize} +\end{example} -% FIXME: Listing chrono-format-spec here is a mistake. We should have a clean -% separation between the extensibility mechanism and the extensions to it. -\begin{ncbnf} -\fmtnontermdef{format-spec}\br - \terminal{:} std-format-spec\br - \terminal{:} chrono-format-spec\br - \terminal{:} custom-format-spec -\end{ncbnf} +\rSec3[format.string.std]{Standard format specifiers} -\begin{ncbnf} -\fmtnontermdef{custom-format-spec}\br - \textnormal{user-defined syntax dependent on the type of the argument} -\end{ncbnf} +\pnum +Each \tcode{formatter} specializations +described in \ref{format.formatter.spec} +for fundamental and string types +interprets \fmtgrammarterm{format-spec} as a +\fmtgrammarterm{std-format-spec}. +\begin{note} +The format specification can be used to specify such details as +field width, alignment, padding, and decimal precision. +Some of the formatting options +are only supported for arithmetic types. +\end{note} +The syntax of format specifications is as follows: \begin{ncbnf} \fmtnontermdef{std-format-spec}\br @@ -19774,19 +19805,6 @@ \terminal{a A b B c d e E f F g G n o p s x X} \end{ncbnf} -where -\fmtgrammarterm{std-format-spec} -defines a common formatting mini-language -supported by fundamental and string types, -\fmtgrammarterm{chrono-format-spec} -defines a mini-language for chrono types\iref{time.format}, and -\fmtgrammarterm{custom-format-spec} -is a placeholder for user-defined mini-languages. -\begin{note} -Some of the formatting options -are only supported for arithmetic types. -\end{note} - \pnum \begin{note} The \fmtgrammarterm{fill} character can be any character @@ -20514,10 +20532,14 @@ \item a floating-point type. \end{itemize} \end{itemize} - +The \tcode{parse} member functions of these formatters +interpret the format specification +as a \fmtgrammarterm{std-format-spec} +as described in \ref{format.string.std}. \begin{note} Specializations such as \tcode{formatter} -and \tcode{formatter} that require implicit +and \tcode{formatter} +that would require implicit multibyte / wide string or character conversion are disabled. \end{note} From f430bec8e7a4437b69d1ad31b2c1f4246e753770 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 4 Aug 2019 15:09:26 -0700 Subject: [PATCH 104/312] [format.string.std] Convert normative duplication to a note to avoid creating the impression that alignment is only applied to non-string types. --- source/utilities.tex | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 3516c88572..5eeb102c21 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19979,12 +19979,14 @@ \end{floattable} \pnum -% FIXME: What about void* and nullptr_t? -% FIXME: What about strings? Do they get padding for alignment? -Formatting of objects of arithmetic types and \tcode{const void*} +Formatting of objects of non-string types is done as if by calling \tcode{to_chars} (unless otherwise specified) -and copying the output through the output iterator of the format context -with additional padding and adjustments as specified by the format specifiers. +and copying the output through the output iterator of the format context. +\begin{note} +Additional padding and adjustments are performed +prior to copying the output through the output iterator +as specified by the format specifiers. +\end{note} \pnum Let \range{first}{last} be a range From b6454e39ede7ab11ce0958fa2ee3b487c8983ae1 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 4 Aug 2019 15:32:02 -0700 Subject: [PATCH 105/312] [format.string] Further clarify description of cases where formatting is described in terms of a call to to_chars. --- source/utilities.tex | 39 ++++++++++++++++++--------------------- 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 5eeb102c21..fa78e12b62 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19979,8 +19979,13 @@ \end{floattable} \pnum -Formatting of objects of non-string types -is done as if by calling \tcode{to_chars} (unless otherwise specified) +The meaning of some non-string presentation types +is defined in terms of a call to \tcode{to_chars}. +In such cases, +let \range{first}{last} be a range +large enough to hold the \tcode{to_chars} output +and \tcode{value} be the formatting argument value. +Formatting is done as if by calling \tcode{to_chars} as specified and copying the output through the output iterator of the format context. \begin{note} Additional padding and adjustments are performed @@ -19988,15 +19993,9 @@ as specified by the format specifiers. \end{note} -\pnum -Let \range{first}{last} be a range -large enough to hold the \tcode{to_chars} output -and \tcode{value} be the formatting argument value. - \pnum The available integer presentation types -for integral types other than \tcode{bool} and \tcode{charT}, -and their mapping to \tcode{to_chars}, +for integral types other than \tcode{bool} and \tcode{charT} are specified in \tref{format.type.int}. \begin{example} \begin{codeblock} @@ -20101,9 +20100,17 @@ \end{floattable} \pnum -The available floating-point presentation types and their mapping to -\tcode{to_chars} (for values other than infinity and NaN) are +The available floating-point presentation types and their meanings +for values other than infinity and NaN are specified in \tref{format.type.float}. +For lower-case presentation types, infinity and NaN are formatted as +\tcode{inf} and \tcode{nan}, respectively. +For upper-case presentation types, infinity and NaN are formatted as +\tcode{INF} and \tcode{NAN}, respectively. +\begin{note} +In either case, a sign is included +if indicated by the \fmtgrammarterm{sign} option. +\end{note} % \begin{floattable}{Meaning of \fmtgrammarterm{type} options for floating-point types}{format.type.float}{lp{.8\hsize}} \topline @@ -20182,16 +20189,6 @@ \\ \end{floattable} -\pnum -For lower-case presentation types, infinity and NaN are formatted as -\tcode{inf} and \tcode{nan}, respectively. -For upper-case presentation types, infinity and NaN are formatted as -\tcode{INF} and \tcode{NAN}, respectively. -\begin{note} -In either case, a sign is included -if indicated by the \fmtgrammarterm{sign} option. -\end{note} - \pnum The available pointer presentation types and their mapping to \tcode{to_chars} are specified in \tref{format.type.ptr}. From 895f30bd225d050bcb2ab9f0a793af9865dcd513 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 4 Aug 2019 20:02:33 -0700 Subject: [PATCH 106/312] [format.formatter] Reorder Formatter requirements before the descriptions of specializations that meet those requirements. --- source/utilities.tex | 207 ++++++++++++++++++++++--------------------- 1 file changed, 106 insertions(+), 101 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index fa78e12b62..8f4e34f7fe 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -20467,6 +20467,87 @@ \rSec2[format.formatter]{Formatter} +\rSec3[formatter.requirements]{Formatter requirements} + +\pnum +\indextext{requirements!\idxnewoldconcept{Formatter}}% +A type \tcode{F} meets the \newoldconceptdefn{Formatter} requirements if: + +\begin{itemize} +\item +it meets the +\begin{itemize} +\item \oldconcept{DefaultConstructible} (\tref{cpp17.defaultconstructible}), +\item \oldconcept{CopyConstructible} (\tref{cpp17.copyconstructible}), +\item \oldconcept{CopyAssignable} (\tref{cpp17.copyassignable}), and +\item \oldconcept{Destructible} (\tref{cpp17.destructible}) +\end{itemize} +requirements, + +\item +it is swappable\iref{swappable.requirements} for lvalues, and + +\item +the expressions shown in \tref{formatter} are valid and +have the indicated semantics. +\end{itemize} + +\pnum +Given character type \tcode{charT}, output iterator type +\tcode{Out}, and formatting argument type \tcode{T}, +in \tref{formatter}: +\begin{itemize} +\item \tcode{f} is a value of type \tcode{F}, +\item \tcode{u} is an lvalue of type \tcode{T}, +\item \tcode{t} is a value of a type convertible to (possibly const) \tcode{T}, +\item \tcode{PC} is \tcode{basic_format_parse_context}, +\item \tcode{FC} is \tcode{basic_format_context}, +\item \tcode{pc} is an lvalue of type \tcode{PC}, and +\item \tcode{fc} is an lvalue of type \tcode{FC}. +\end{itemize} +\tcode{pc.begin()} points to the beginning of the +\fmtgrammarterm{format-spec}\iref{format.string} +of the replacement field being formatted +in the format string. +If \fmtgrammarterm{format-spec} is empty then either +\tcode{pc.begin() == pc.end()} or +\tcode{*pc.begin() == '\}'}. + +\begin{concepttable}{\newoldconcept{Formatter} requirements}{formatter} +{p{1.2in}p{1in}p{2.9in}} +\topline +\hdstyle{Expression} & \hdstyle{Return type} & \hdstyle{Requirement} \\ \capsep +\tcode{f.parse(pc)} & +\tcode{PC::iterator} & +Parses \fmtgrammarterm{format-spec}\iref{format.string} +for type \tcode{T} +in the range \range{pc.begin()}{pc.end()} +until the first unmatched character. +Throws \tcode{format_error} unless the whole range is parsed +or the unmatched character is \tcode{\}}. +\begin{note} +This allows formatters to emit meaningful error messages. +\end{note} +Stores the parsed format specifiers in \tcode{*this} and +returns an iterator past the end of the parsed range. +\\ \rowsep +\tcode{f.format(t, fc)} & +\tcode{FC::iterator} & +Formats \tcode{t} according to the specifiers stored in \tcode{*this}, +writes the output to \tcode{fc.out()} and +returns an iterator past the end of the output range. +The output shall only depend on +\tcode{t}, +\tcode{fc.locale()}, +and the range \range{pc.begin()}{pc.end()} +from the last call to \tcode{f.parse(pc)}. +\\ \rowsep +\tcode{f.format(u, fc)} & +\tcode{FC::iterator} & +As above, but does not modify \tcode{u}. +\\ +\end{concepttable} + \rSec3[format.formatter.spec]{Formatter specializations} \indexlibrary{\idxcode{formatter}}% @@ -20489,10 +20570,18 @@ \begin{itemize} \item \indexlibrary{\idxcode{formatter}!specializations!character types}% +The specializations +\begin{codeblock} +template<> struct formatter; +template<> struct formatter; +template<> struct formatter; +\end{codeblock} + +\item \indexlibrary{\idxcode{formatter}!specializations!string types}% For each \tcode{charT}, +the string type specializations \begin{codeblock} -template<> struct formatter; template<> struct formatter; template<> struct formatter; template struct formatter; @@ -20503,33 +20592,30 @@ \end{codeblock} \item -The specialization +\indexlibrary{\idxcode{formatter}!specializations!arithmetic types}% +For each \tcode{charT}, +for each cv-unqualified arithmetic type \tcode{ArithmeticT} +other than +\tcode{char}, +\tcode{wchar_t}, +\tcode{char8_t}, +\tcode{char16_t}, or +\tcode{char32_t}, +a specialization \begin{codeblock} -template<> struct formatter; +template<> struct formatter; \end{codeblock} \item -\indexlibrary{\idxcode{formatter}!specializations!arithmetic types}% \indexlibrary{\idxcode{formatter}!specializations!pointer types}% \indexlibrary{\idxcode{formatter}!specializations!\idxcode{nullptr_t}}% -A specialization +For each \tcode{charT}, +the pointer type specializations \begin{codeblock} -template<> struct formatter; +template<> struct formatter; +template<> struct formatter; +template<> struct formatter; \end{codeblock} -for each \tcode{charT}, -for each cv-unqualified type \tcode{T} that is -\begin{itemize} -\item \tcode{nullptr_t}, -\item \tcode{void*}, -\item \tcode{const void*}, -\item an integral type other than -\tcode{char}, -\tcode{wchar_t}, -\tcode{char8_t}, -\tcode{char16_t}, or -\tcode{char32_t}, or -\item a floating-point type. -\end{itemize} \end{itemize} The \tcode{parse} member functions of these formatters interpret the format specification @@ -20590,87 +20676,6 @@ \end{codeblock} \end{example} -\rSec3[formatter.requirements]{Formatter requirements} - -\pnum -\indextext{requirements!\idxnewoldconcept{Formatter}}% -A type \tcode{F} meets the \newoldconceptdefn{Formatter} requirements if: - -\begin{itemize} -\item -it meets the -\begin{itemize} -\item \oldconcept{DefaultConstructible} (\tref{cpp17.defaultconstructible}), -\item \oldconcept{CopyConstructible} (\tref{cpp17.copyconstructible}), -\item \oldconcept{CopyAssignable} (\tref{cpp17.copyassignable}), and -\item \oldconcept{Destructible} (\tref{cpp17.destructible}) -\end{itemize} -requirements, - -\item -it is swappable\iref{swappable.requirements} for lvalues, and - -\item -the expressions shown in \tref{formatter} are valid and -have the indicated semantics. -\end{itemize} - -\pnum -Given character type \tcode{charT}, output iterator type -\tcode{Out}, and formatting argument type \tcode{T}, -in \tref{formatter}: -\begin{itemize} -\item \tcode{f} is a value of type \tcode{F}, -\item \tcode{u} is an lvalue of type \tcode{T}, -\item \tcode{t} is a value of a type convertible to (possibly const) \tcode{T}, -\item \tcode{PC} is \tcode{basic_format_parse_context}, -\item \tcode{FC} is \tcode{basic_format_context}, -\item \tcode{pc} is an lvalue of type \tcode{PC}, and -\item \tcode{fc} is an lvalue of type \tcode{FC}. -\end{itemize} -\tcode{pc.begin()} points to the beginning of the -\fmtgrammarterm{format-spec}\iref{format.string} -% FIXME: Which one? -portion of the format string. -If \fmtgrammarterm{format-spec} is empty then either -\tcode{pc.begin() == pc.end()} or -\tcode{*pc.begin() == '\}'}. - -\begin{concepttable}{\newoldconcept{Formatter} requirements}{formatter} -{p{1.2in}p{1in}p{2.9in}} -\topline -\hdstyle{Expression} & \hdstyle{Return type} & \hdstyle{Requirement} \\ \capsep -\tcode{f.parse(pc)} & -\tcode{PC::iterator} & -Parses \fmtgrammarterm{format-spec}\iref{format.string} -for type \tcode{T} -in the range \range{pc.begin()}{pc.end()} -until the first unmatched character. -Throws \tcode{format_error} unless the whole range is parsed -or the unmatched character is \tcode{\}}. -\begin{note} -This allows formatters to emit meaningful error messages. -\end{note} -Stores the parsed format specifiers in \tcode{*this} and -returns an iterator past the end of the parsed range. -\\ \rowsep -\tcode{f.format(t, fc)} & -\tcode{FC::iterator} & -Formats \tcode{t} according to the specifiers stored in \tcode{*this}, -writes the output to \tcode{fc.out()} and -returns an iterator past the end of the output range. -The output shall only depend on -\tcode{t}, -\tcode{fc.locale()}, -and the range \range{pc.begin()}{pc.end()} -from the last call to \tcode{f.parse(pc)}. -\\ \rowsep -\tcode{f.format(u, fc)} & -\tcode{FC::iterator} & -As above, but does not modify \tcode{u}. -\\ -\end{concepttable} - \rSec3[format.parse.ctx]{Class template \tcode{basic_format_parse_context}} \indexlibrary{\idxcode{basic_format_parse_context}}% From 81f9865d7df00fd58c9c0dce77b44a1148daf63a Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Mon, 22 Jul 2019 23:20:32 +0200 Subject: [PATCH 107/312] P0631R8 Math constants --- source/compatibility.tex | 1 + source/concepts.tex | 8 +++- source/lib-intro.tex | 3 +- source/numerics.tex | 90 ++++++++++++++++++++++++++++++++++++++-- source/support.tex | 2 + 5 files changed, 98 insertions(+), 6 deletions(-) diff --git a/source/compatibility.tex b/source/compatibility.tex index ad3a32f1af..0fdbcf2797 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -2157,6 +2157,7 @@ \tcode{}, \tcode{}, \tcode{}, +\tcode{}, \tcode{}, \tcode{}, \tcode{}, and diff --git a/source/concepts.tex b/source/concepts.tex index e915c685f4..e53055af7a 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -167,13 +167,15 @@ template concept Common = @\seebelow@; - // \ref{concepts.integral}, integral concepts + // \ref{concepts.arithmetic}, arithmetic concepts template concept Integral = @\seebelow@; template concept SignedIntegral = @\seebelow@; template concept UnsignedIntegral = @\seebelow@; + template + concept FloatingPoint = @\seebelow@; // \ref{concept.assignable}, concept \libconcept{Assignable} template @@ -464,7 +466,7 @@ \end{itemdescr} -\rSec2[concepts.integral]{Integral concepts} +\rSec2[concepts.arithmetic]{Arithmetic concepts} \indexlibrary{\idxcode{Integral}}% \indexlibrary{\idxcode{SignedIntegral}}% @@ -476,6 +478,8 @@ concept SignedIntegral = Integral && is_signed_v; template concept UnsignedIntegral = Integral && !SignedIntegral; +template + concept FloatingPoint = is_floating_point_v; \end{itemdecl} \begin{itemdescr} diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 46037651b7..19a36163e3 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -1249,6 +1249,7 @@ \tcode{} \\ \columnbreak \tcode{} \\ +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -1265,8 +1266,8 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\tcode{} \\ \columnbreak +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ diff --git a/source/numerics.tex b/source/numerics.tex index 5fe1610a3f..1255981da5 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -12,8 +12,8 @@ complex number types, random number generation, numeric (% \textit{n}-at-a-time) -arrays, generalized numeric algorithms, -and mathematical functions for floating-point types, +arrays, generalized numeric algorithms, and +mathematical constants and functions for floating-point types, as summarized in \tref{numerics.summary}. \begin{libsumtab}{Numerics library summary}{numerics.summary} @@ -24,7 +24,8 @@ \ref{rand} & Random number generation & \tcode{} \\ \rowsep \ref{numarray} & Numeric arrays & \tcode{} \\ \rowsep \ref{c.math} & Mathematical functions for floating-point types & - \tcode{}, \tcode{} \\ + \tcode{}, \tcode{} \\ \rowsep +\ref{numbers} & Numbers & \tcode{} \\ \end{libsumtab} \rSec1[numeric.requirements]{Numeric type requirements} @@ -10417,3 +10418,86 @@ \end{itemdescr} \indextext{mathematical special functions|)} + +\rSec1[numbers]{Numbers} + +\rSec2[numbers.syn]{Header \tcode{} synopsis} +\indexhdr{numbers}% + +\begin{codeblock} +namespace std { + namespace numbers { + template inline constexpr T e_v = @\unspec@; + template inline constexpr T log2e_v = @\unspec@; + template inline constexpr T log10e_v = @\unspec@; + template inline constexpr T pi_v = @\unspec@; + template inline constexpr T inv_pi_v = @\unspec@; + template inline constexpr T inv_sqrtpi_v = @\unspec@; + template inline constexpr T ln2_v = @\unspec@; + template inline constexpr T ln10_v = @\unspec@; + template inline constexpr T sqrt2_v = @\unspec@; + template inline constexpr T sqrt3_v = @\unspec@; + template inline constexpr T inv_sqrt3_v = @\unspec@; + template inline constexpr T egamma_v = @\unspec@; + template inline constexpr T phi_v = @\unspec@; + + template inline constexpr T e_v = @\seebelow@; + template inline constexpr T log2e_v = @\seebelow@; + template inline constexpr T log10e_v = @\seebelow@; + template inline constexpr T pi_v = @\seebelow@; + template inline constexpr T inv_pi_v = @\seebelow@; + template inline constexpr T inv_sqrtpi_v = @\seebelow@; + template inline constexpr T ln2_v = @\seebelow@; + template inline constexpr T ln10_v = @\seebelow@; + template inline constexpr T sqrt2_v = @\seebelow@; + template inline constexpr T sqrt3_v = @\seebelow@; + template inline constexpr T inv_sqrt3_v = @\seebelow@; + template inline constexpr T egamma_v = @\seebelow@; + template inline constexpr T phi_v = @\seebelow@; + + inline constexpr double e = e_v; + inline constexpr double log2e = log2e_v; + inline constexpr double log10e = log10e_v; + inline constexpr double pi = pi_v; + inline constexpr double inv_pi = inv_pi_v; + inline constexpr double inv_sqrtpi = inv_sqrtpi_v; + inline constexpr double ln2 = ln2_v; + inline constexpr double ln10 = ln10_v; + inline constexpr double sqrt2 = sqrt2_v; + inline constexpr double sqrt3 = sqrt3_v; + inline constexpr double inv_sqrt3 = inv_sqrt3_v; + inline constexpr double egmma = egamma_v; + inline constexpr double phi = phi_v; + } +} +\end{codeblock} + +\rSec2[math.constants]{Mathematical constants} + +\pnum +The library-defined partial specializations of math constant variable templates +are initialized with the nearest representable values of +$\mathrm{e}$, +$\log_{2} \mathrm{e}$, +$\log_{10} \mathrm{e}$, +$\pi$, +$\frac{1}{\pi}$, +$\frac{1}{\sqrt{\pi}}$, +$\ln 2$, +$\ln 10$, +$\sqrt{2}$, +$\sqrt{3}$, +$\frac{1}{\sqrt{3}}$, +the Euler-Mascheroni $\gamma$ constant, and +the golden ratio $\phi$ constant $\frac{1+\sqrt{5}}{2}$, +respectively. + +\pnum +Pursuant to \ref{namespace.std}, +a program may partially or explicitly specialize +a math constant variable template +provided that the specialization depends on a program-defined type. + +\pnum +A program that instantiates a primary template +of a math constant variable template is ill-formed. diff --git a/source/support.tex b/source/support.tex index 2abe5fbc77..a550411d86 100644 --- a/source/support.tex +++ b/source/support.tex @@ -644,6 +644,8 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_map_try_emplace} & \tcode{201411L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_math_constants} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_math_special_functions} & \tcode{201603L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_memory_resource} & \tcode{201603L} & From c7ada4d28ae7be82ef64104617e216fd738a4d0f Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 30 Jul 2019 16:07:16 +0200 Subject: [PATCH 108/312] [numbers] Use 'template', not 'typename'. --- source/numerics.tex | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/source/numerics.tex b/source/numerics.tex index 1255981da5..b8e15abce9 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -10427,19 +10427,19 @@ \begin{codeblock} namespace std { namespace numbers { - template inline constexpr T e_v = @\unspec@; - template inline constexpr T log2e_v = @\unspec@; - template inline constexpr T log10e_v = @\unspec@; - template inline constexpr T pi_v = @\unspec@; - template inline constexpr T inv_pi_v = @\unspec@; - template inline constexpr T inv_sqrtpi_v = @\unspec@; - template inline constexpr T ln2_v = @\unspec@; - template inline constexpr T ln10_v = @\unspec@; - template inline constexpr T sqrt2_v = @\unspec@; - template inline constexpr T sqrt3_v = @\unspec@; - template inline constexpr T inv_sqrt3_v = @\unspec@; - template inline constexpr T egamma_v = @\unspec@; - template inline constexpr T phi_v = @\unspec@; + template inline constexpr T e_v = @\unspec@; + template inline constexpr T log2e_v = @\unspec@; + template inline constexpr T log10e_v = @\unspec@; + template inline constexpr T pi_v = @\unspec@; + template inline constexpr T inv_pi_v = @\unspec@; + template inline constexpr T inv_sqrtpi_v = @\unspec@; + template inline constexpr T ln2_v = @\unspec@; + template inline constexpr T ln10_v = @\unspec@; + template inline constexpr T sqrt2_v = @\unspec@; + template inline constexpr T sqrt3_v = @\unspec@; + template inline constexpr T inv_sqrt3_v = @\unspec@; + template inline constexpr T egamma_v = @\unspec@; + template inline constexpr T phi_v = @\unspec@; template inline constexpr T e_v = @\seebelow@; template inline constexpr T log2e_v = @\seebelow@; From 14aa4ed0d323c163f0559bd7c8555d77f2dc8093 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 30 Jul 2019 16:12:59 +0200 Subject: [PATCH 109/312] [math.constants] Expand 'math' to 'mathematical'. --- source/numerics.tex | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/source/numerics.tex b/source/numerics.tex index b8e15abce9..e59f69b794 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -10475,7 +10475,8 @@ \rSec2[math.constants]{Mathematical constants} \pnum -The library-defined partial specializations of math constant variable templates +The library-defined partial specializations +of mathematical constant variable templates are initialized with the nearest representable values of $\mathrm{e}$, $\log_{2} \mathrm{e}$, @@ -10495,9 +10496,9 @@ \pnum Pursuant to \ref{namespace.std}, a program may partially or explicitly specialize -a math constant variable template +a mathematical constant variable template provided that the specialization depends on a program-defined type. \pnum A program that instantiates a primary template -of a math constant variable template is ill-formed. +of a mathematical constant variable template is ill-formed. From 3f761c76b5daf9f1a75695226514c323ba6619f0 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Thu, 1 Aug 2019 10:50:09 +0200 Subject: [PATCH 110/312] [numbers.syn] Use 'namespace std::numbers'. --- source/numerics.tex | 86 ++++++++++++++++++++++----------------------- 1 file changed, 42 insertions(+), 44 deletions(-) diff --git a/source/numerics.tex b/source/numerics.tex index e59f69b794..9d580ac343 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -10425,50 +10425,48 @@ \indexhdr{numbers}% \begin{codeblock} -namespace std { - namespace numbers { - template inline constexpr T e_v = @\unspec@; - template inline constexpr T log2e_v = @\unspec@; - template inline constexpr T log10e_v = @\unspec@; - template inline constexpr T pi_v = @\unspec@; - template inline constexpr T inv_pi_v = @\unspec@; - template inline constexpr T inv_sqrtpi_v = @\unspec@; - template inline constexpr T ln2_v = @\unspec@; - template inline constexpr T ln10_v = @\unspec@; - template inline constexpr T sqrt2_v = @\unspec@; - template inline constexpr T sqrt3_v = @\unspec@; - template inline constexpr T inv_sqrt3_v = @\unspec@; - template inline constexpr T egamma_v = @\unspec@; - template inline constexpr T phi_v = @\unspec@; - - template inline constexpr T e_v = @\seebelow@; - template inline constexpr T log2e_v = @\seebelow@; - template inline constexpr T log10e_v = @\seebelow@; - template inline constexpr T pi_v = @\seebelow@; - template inline constexpr T inv_pi_v = @\seebelow@; - template inline constexpr T inv_sqrtpi_v = @\seebelow@; - template inline constexpr T ln2_v = @\seebelow@; - template inline constexpr T ln10_v = @\seebelow@; - template inline constexpr T sqrt2_v = @\seebelow@; - template inline constexpr T sqrt3_v = @\seebelow@; - template inline constexpr T inv_sqrt3_v = @\seebelow@; - template inline constexpr T egamma_v = @\seebelow@; - template inline constexpr T phi_v = @\seebelow@; - - inline constexpr double e = e_v; - inline constexpr double log2e = log2e_v; - inline constexpr double log10e = log10e_v; - inline constexpr double pi = pi_v; - inline constexpr double inv_pi = inv_pi_v; - inline constexpr double inv_sqrtpi = inv_sqrtpi_v; - inline constexpr double ln2 = ln2_v; - inline constexpr double ln10 = ln10_v; - inline constexpr double sqrt2 = sqrt2_v; - inline constexpr double sqrt3 = sqrt3_v; - inline constexpr double inv_sqrt3 = inv_sqrt3_v; - inline constexpr double egmma = egamma_v; - inline constexpr double phi = phi_v; - } +namespace std::numbers { + template inline constexpr T e_v = @\unspec@; + template inline constexpr T log2e_v = @\unspec@; + template inline constexpr T log10e_v = @\unspec@; + template inline constexpr T pi_v = @\unspec@; + template inline constexpr T inv_pi_v = @\unspec@; + template inline constexpr T inv_sqrtpi_v = @\unspec@; + template inline constexpr T ln2_v = @\unspec@; + template inline constexpr T ln10_v = @\unspec@; + template inline constexpr T sqrt2_v = @\unspec@; + template inline constexpr T sqrt3_v = @\unspec@; + template inline constexpr T inv_sqrt3_v = @\unspec@; + template inline constexpr T egamma_v = @\unspec@; + template inline constexpr T phi_v = @\unspec@; + + template inline constexpr T e_v = @\seebelow@; + template inline constexpr T log2e_v = @\seebelow@; + template inline constexpr T log10e_v = @\seebelow@; + template inline constexpr T pi_v = @\seebelow@; + template inline constexpr T inv_pi_v = @\seebelow@; + template inline constexpr T inv_sqrtpi_v = @\seebelow@; + template inline constexpr T ln2_v = @\seebelow@; + template inline constexpr T ln10_v = @\seebelow@; + template inline constexpr T sqrt2_v = @\seebelow@; + template inline constexpr T sqrt3_v = @\seebelow@; + template inline constexpr T inv_sqrt3_v = @\seebelow@; + template inline constexpr T egamma_v = @\seebelow@; + template inline constexpr T phi_v = @\seebelow@; + + inline constexpr double e = e_v; + inline constexpr double log2e = log2e_v; + inline constexpr double log10e = log10e_v; + inline constexpr double pi = pi_v; + inline constexpr double inv_pi = inv_pi_v; + inline constexpr double inv_sqrtpi = inv_sqrtpi_v; + inline constexpr double ln2 = ln2_v; + inline constexpr double ln10 = ln10_v; + inline constexpr double sqrt2 = sqrt2_v; + inline constexpr double sqrt3 = sqrt3_v; + inline constexpr double inv_sqrt3 = inv_sqrt3_v; + inline constexpr double egmma = egamma_v; + inline constexpr double phi = phi_v; } \end{codeblock} From 42f28d8dc1541eca98f84a61f800181759c0a04f Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Sat, 27 Jul 2019 22:51:57 +0200 Subject: [PATCH 111/312] P1135R6 The C++20 synchronization library - [atomics.wait] Make singular. --- source/atomics.tex | 343 +++++++++++++++++++++++ source/lib-intro.tex | 16 +- source/support.tex | 12 + source/threads.tex | 650 +++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 1020 insertions(+), 1 deletion(-) diff --git a/source/atomics.tex b/source/atomics.tex index dd0a8aba40..b3b35d17e7 100644 --- a/source/atomics.tex +++ b/source/atomics.tex @@ -15,6 +15,7 @@ \ref{atomics.alias} & Type aliases & \tcode{} \\ \ref{atomics.order} & Order and consistency & \\ \ref{atomics.lockfree} & Lock-free property & \\ +\ref{atomics.wait} & Waiting and notifying & \\ \ref{atomics.ref.generic} & Class template \tcode{atomic_ref} & \\ \ref{atomics.types.generic} & Class template \tcode{atomic} & \\ \ref{atomics.nonmembers} & Non-member functions & \\ @@ -180,6 +181,25 @@ T atomic_fetch_xor_explicit(atomic*, typename atomic::value_type, memory_order) noexcept; + template + void atomic_wait(const volatile atomic*, typename atomic::value_type); + template + void atomic_wait(const atomic*, typename atomic::value_type); + template + void atomic_wait_explicit(const volatile atomic*, typename atomic::value_type, + memory_order); + template + void atomic_wait_explicit(const atomic*, typename atomic::value_type, + memory_order); + template + void atomic_notify_one(volatile atomic*); + template + void atomic_notify_one(atomic*); + template + void atomic_notify_all(volatile atomic*); + template + void atomic_notify_all(atomic*); + // \ref{atomics.types.operations}, initialization #define ATOMIC_VAR_INIT(value) @\seebelow@ @@ -235,8 +255,15 @@ using atomic_intmax_t = atomic; using atomic_uintmax_t = atomic; + using atomic_signed_lock_free = @\seebelow@; + using atomic_unsigned_lock_free = @\seebelow@; + // \ref{atomics.flag}, flag type and operations struct atomic_flag; + bool atomic_flag_test(const volatile atomic_flag*) noexcept; + bool atomic_flag_test(const atomic_flag*) noexcept; + bool atomic_flag_test_explicit(const volatile atomic_flag*, memory_order) noexcept; + bool atomic_flag_test_explicit(const atomic_flag*, memory_order) noexcept; bool atomic_flag_test_and_set(volatile atomic_flag*) noexcept; bool atomic_flag_test_and_set(atomic_flag*) noexcept; bool atomic_flag_test_and_set_explicit(volatile atomic_flag*, memory_order) noexcept; @@ -245,6 +272,16 @@ void atomic_flag_clear(atomic_flag*) noexcept; void atomic_flag_clear_explicit(volatile atomic_flag*, memory_order) noexcept; void atomic_flag_clear_explicit(atomic_flag*, memory_order) noexcept; + void atomic_flag_wait(const volatile atomic_flag*, bool) noexcept; + void atomic_flag_wait(const atomic_flag*, bool) noexcept; + void atomic_flag_wait_explicit(const volatile atomic_flag*, + bool, memory_order) noexcept; + void atomic_flag_wait_explicit(const atomic_flag*, + bool, memory_order) noexcept; + void atomic_flag_notify_one(volatile atomic_flag*) noexcept; + void atomic_flag_notify_one(atomic_flag*) noexcept; + void atomic_flag_notify_all(volatile atomic_flag*) const noexcept; + void atomic_flag_notify_all(atomic_flag*) const noexcept; #define ATOMIC_FLAG_INIT @\seebelow@ // \ref{atomics.fences}, fences @@ -308,6 +345,22 @@ \tcode{intptr_t}, and \tcode{uintptr_t} are defined, respectively. +\pnum +\indexlibrary{\idxcode{atomic_signed_lock_free}}% +\indexlibrary{\idxcode{atomic_unsigned_lock_free}}% +The type aliases +\tcode{atomic_signed_lock_free} and \tcode{atomic_unsigned_lock_free} +name specializations of \tcode{atomic} +whose template arguments are integral types, respectively signed and unsigned, +and whose \tcode{is_always_lock_free} property is \tcode{true}. +\begin{note} +These aliases are optional in freestanding implementations\iref{compliance}. +\end{note} +Implementations should choose for these aliases +the integral specializations of \tcode{atomic} +for which the atomic waiting and notifying operations\iref{atomics.wait} +are most efficient. + \rSec1[atomics.order]{Order and consistency} \indexlibrary{\idxcode{memory_order}}% \indexlibrarymember{relaxed}{memory_order}% @@ -562,6 +615,15 @@ lock-free. A value of 1 indicates that the types are sometimes lock-free. A value of 2 indicates that the types are always lock-free. +\pnum +At least one signed integral specialization of the \tcode{atomic} template, +along with the specialization +for the corresponding unsigned type\iref{basic.fundamental}, +are always lock-free. +\begin{note} +This requirement is optional in freestanding implementations\iref{compliance}. +\end{note} + \pnum The function \tcode{atomic_is_lock_free}\iref{atomics.types.operations} indicates whether the object is lock-free. In any given program execution, the @@ -580,6 +642,54 @@ mapped into a process more than once and by memory that is shared between two processes. \end{note} +\rSec1[atomics.wait]{Waiting and notifying} + +\pnum +\defnx{Atomic waiting operations}{atomic waiting operation} +and \defnx{atomic notifying operations}{atomic notifying operation} +provide a mechanism to wait for the value of an atomic object to change +more efficiently than can be achieved with polling. +An atomic waiting operation may block until it is unblocked +by an atomic notifying operation, according to each function's effects. +\begin{note} +Programs are not guaranteed to observe transient atomic values, +an issue known as the A-B-A problem, +resulting in continued blocking if a condition is only temporarily met. +\end{note} + +\pnum +\begin{note} +The following functions are atomic waiting operations: +\begin{itemize} +\item \tcode{atomic::wait}, +\item \tcode{atomic_flag::wait}, +\item \tcode{atomic_wait} and \tcode{atomic_wait_explicit}, and +\item \tcode{atomic_flag_wait} and \tcode{atomic_flag_wait_explicit}. +\end{itemize} +\end{note} + +\pnum +\begin{note} +The following functions are atomic notifying operations: +\begin{itemize} +\item \tcode{atomic::notify_one} and \tcode{atomic::notify_all}, +\item \tcode{atomic_flag::notify_one} and \tcode{atomic_flag::notify_all}, +\item \tcode{atomic_notify_one} and \tcode{atomic_notify_all}, and +\item \tcode{atomic_flag_notify_one} and \tcode{atomic_flag_notify_all}. +\end{itemize} +\end{note} + +\pnum +A call to an atomic waiting operation on an atomic object \tcode{M} +is \defn{eligible to be unblocked} +by a call to an atomic notifying operation on \tcode{M} +if there exist side effects \tcode{X} and \tcode{Y} on \tcode{M} such that: +\begin{itemize} +\item the atomic waiting operation has blocked after observing the result of \tcode{X}, +\item \tcode{X} precedes \tcode{Y} in the modification order of \tcode{M}, and +\item \tcode{Y} happens before the call to the atomic notifying operation. +\end{itemize} + \rSec1[atomics.ref.generic]{Class template \tcode{atomic_ref}} \indexlibrary{\idxcode{atomic_ref}}% @@ -1329,6 +1439,13 @@ bool compare_exchange_strong(T&, T, memory_order = memory_order::seq_cst) volatile noexcept; bool compare_exchange_strong(T&, T, memory_order = memory_order::seq_cst) noexcept; + void wait(T, memory_order = memory_order::seq_cst) const volatile noexcept; + void wait(T, memory_order = memory_order::seq_cst) const noexcept; + void notify_one() volatile noexcept; + void notify_one() noexcept; + void notify_all() volatile noexcept; + void notify_all() noexcept; + atomic() noexcept = default; constexpr atomic(T) noexcept; atomic(const atomic&) = delete; @@ -1735,6 +1852,71 @@ \end{note} \end{itemdescr} +\indexlibrarymember{wait}{atomic} +\begin{itemdecl} +void wait(T old, memory_order order = memory_order::seq_cst) const volatile noexcept; +void wait(T old, memory_order order = memory_order::seq_cst) const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{order} is neither \tcode{memory_order::release} nor \tcode{memory_order::acq_rel}. + +\pnum +\effects +Repeatedly performs the following steps, in order: +\begin{itemize} +\item + Evaluates \tcode{load(order)} and + compares its value representation for equality against that of \tcode{old}. +\item + If they compare unequal, returns. +\item + Blocks until it + is unblocked by an atomic notifying operation or is unblocked spuriously. +\end{itemize} + +\pnum +\remarks +This function is an atomic waiting operation\iref{atomics.wait}. +\end{itemdescr} + +\indexlibrarymember{notify_one}{atomic} +\begin{itemdecl} +void notify_one() volatile noexcept; +void notify_one() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Unblocks the execution of at least one atomic waiting operation +that is eligible to be unblocked\iref{atomics.wait} by this call, +if any such atomic waiting operations exist. + +\pnum +\remarks +This function is an atomic notifying operation\iref{atomics.wait}. +\end{itemdescr} + +\indexlibrarymember{notify_all}{atomic} +\begin{itemdecl} +void notify_all() volatile noexcept; +void notify_all() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Unblocks the execution of all atomic waiting operations +that are eligible to be unblocked\iref{atomics.wait} by this call. + +\pnum +\remarks +This function is an atomic notifying operation\iref{atomics.wait}. +\end{itemdescr} + \rSec2[atomics.types.int]{Specializations for integers} \indexlibrary{\idxcode{atomic<\placeholder{integral}>}}% @@ -1806,6 +1988,13 @@ @\placeholdernc{integral}@ fetch_xor(@\placeholdernc{integral}@, memory_order = memory_order::seq_cst) volatile noexcept; @\placeholdernc{integral}@ fetch_xor(@\placeholdernc{integral}@, memory_order = memory_order::seq_cst) noexcept; + void wait(integral, memory_order = memory_order::seq_cst) const volatile noexcept; + void wait(integral, memory_order = memory_order::seq_cst) const noexcept; + void notify_one() volatile noexcept; + void notify_one() noexcept; + void notify_all() volatile noexcept; + void notify_all() noexcept; + atomic() noexcept = default; constexpr atomic(@\placeholdernc{integral}@) noexcept; atomic(const atomic&) = delete; @@ -1992,6 +2181,13 @@ @\placeholdernc{floating-point}@ fetch_sub(@\placeholdernc{floating-point}@, memory_order = memory_order_seq_cst) noexcept; + void wait(@\placeholdernc{floating-point}@, memory_order = memory_order::seq_cst) const volatile noexcept; + void wait(@\placeholdernc{floating-point}@, memory_order = memory_order::seq_cst) const noexcept; + void notify_one() volatile noexcept; + void notify_one() noexcept; + void notify_all() volatile noexcept; + void notify_all() noexcept; + atomic() noexcept = default; constexpr atomic(@\placeholder{floating-point}@) noexcept; atomic(const atomic&) = delete; @@ -2115,11 +2311,19 @@ memory_order = memory_order::seq_cst) volatile noexcept; bool compare_exchange_strong(T*&, T*, memory_order = memory_order::seq_cst) noexcept; + T* fetch_add(ptrdiff_t, memory_order = memory_order::seq_cst) volatile noexcept; T* fetch_add(ptrdiff_t, memory_order = memory_order::seq_cst) noexcept; T* fetch_sub(ptrdiff_t, memory_order = memory_order::seq_cst) volatile noexcept; T* fetch_sub(ptrdiff_t, memory_order = memory_order::seq_cst) noexcept; + void wait(T*, memory_order = memory_order::seq_cst) const volatile noexcept; + void wait(T*, memory_order = memory_order::seq_cst) const noexcept; + void notify_one() volatile noexcept; + void notify_one() noexcept; + void notify_all() volatile noexcept; + void notify_all() noexcept; + atomic() noexcept = default; constexpr atomic(T*) noexcept; atomic(const atomic&) = delete; @@ -2313,17 +2517,30 @@ \begin{codeblock} namespace std { struct atomic_flag { + bool test(memory_order = memory_order::seq_cst) const volatile noexcept; + bool test(memory_order = memory_order::seq_cst) const noexcept; bool test_and_set(memory_order = memory_order::seq_cst) volatile noexcept; bool test_and_set(memory_order = memory_order::seq_cst) noexcept; void clear(memory_order = memory_order::seq_cst) volatile noexcept; void clear(memory_order = memory_order::seq_cst) noexcept; + void wait(bool, memory_order = memory_order::seq_cst) const volatile noexcept; + void wait(bool, memory_order = memory_order::seq_cst) const noexcept; + void notify_one() volatile noexcept; + void notify_one() noexcept; + void notify_all() volatile noexcept; + void notify_all() noexcept; + atomic_flag() noexcept = default; atomic_flag(const atomic_flag&) = delete; atomic_flag& operator=(const atomic_flag&) = delete; atomic_flag& operator=(const atomic_flag&) volatile = delete; }; + bool atomic_flag_test(const volatile atomic_flag*) noexcept; + bool atomic_flag_test(const atomic_flag*) noexcept; + bool atomic_flag_test_explicit(const volatile atomic_flag*, memory_order) noexcept; + bool atomic_flag_test_explicit(const atomic_flag*, memory_order) noexcept; bool atomic_flag_test_and_set(volatile atomic_flag*) noexcept; bool atomic_flag_test_and_set(atomic_flag*) noexcept; bool atomic_flag_test_and_set_explicit(volatile atomic_flag*, memory_order) noexcept; @@ -2333,6 +2550,17 @@ void atomic_flag_clear_explicit(volatile atomic_flag*, memory_order) noexcept; void atomic_flag_clear_explicit(atomic_flag*, memory_order) noexcept; + void atomic_flag_wait(const volatile atomic_flag*, bool) noexcept; + void atomic_flag_wait(const atomic_flag*, bool) noexcept; + void atomic_flag_wait_explicit(const volatile atomic_flag*, + bool, memory_order) noexcept; + void atomic_flag_wait_explicit(const atomic_flag*, + bool, memory_order) noexcept; + void atomic_flag_notify_one(volatile atomic_flag*) noexcept; + void atomic_flag_notify_one(atomic_flag*) noexcept; + void atomic_flag_notify_all(volatile atomic_flag*) const noexcept; + void atomic_flag_notify_all(atomic_flag*) const noexcept; + #define ATOMIC_FLAG_INIT @\seebelow@ } \end{codeblock} @@ -2359,6 +2587,38 @@ Unless initialized with \tcode{ATOMIC_FLAG_INIT}, it is unspecified whether an \tcode{atomic_flag} object has an initial state of set or clear. +\indexlibrary{\idxcode{atomic_flag_test}}% +\indexlibrary{\idxcode{atomic_flag_test_explicit}}% +\indexlibrarymember{test}{atomic_flag}% +\begin{itemdecl} +bool atomic_flag_test(const volatile atomic_flag* object) noexcept; +bool atomic_flag_test(const atomic_flag* object) noexcept; +bool atomic_flag_test_explicit(const volatile atomic_flag* object, + memory_order order) noexcept; +bool atomic_flag_test_explicit(const atomic_flag* object, + memory_order order) noexcept; +bool atomic_flag::test(memory_order order = memory_order::seq_cst) const volatile noexcept; +bool atomic_flag::test(memory_order order = memory_order::seq_cst) const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +For \tcode{atomic_flag_test}, let \tcode{order} be \tcode{memory_order::seq_cst}. + +\pnum +\expects +\tcode{order} is +neither \tcode{memory_order::release} nor \tcode{memory_order::acq_rel}. + +\pnum +\effects +Memory is affected according to the value of \tcode{order}. + +\pnum +\returns +Atomically returns the value pointed to by \tcode{object} or \tcode{this}. +\end{itemdescr} + \indexlibrary{\idxcode{atomic_flag_test_and_set}}% \indexlibrary{\idxcode{atomic_flag_test_and_set_explicit}}% \indexlibrarymember{test_and_set}{atomic_flag}% @@ -2402,6 +2662,89 @@ \tcode{false}. Memory is affected according to the value of \tcode{order}. \end{itemdescr} +\indexlibrary{\idxcode{atomic_flag_wait}}% +\indexlibrary{\idxcode{atomic_flag_wait_explicit}}% +\indexlibrarymember{wait}{atomic_flag}% +\begin{itemdecl} +void atomic_flag_wait(const volatile atomic_flag* object, bool old) noexcept; +void atomic_flag_wait(const atomic_flag* object, bool old) noexcept; +void atomic_flag_wait_explicit(const volatile atomic_flag* object, + bool old, memory_order order) noexcept; +void atomic_flag_wait_explicit(const atomic_flag* object, + bool old, memory_order order) noexcept; +void atomic_flag::wait(bool old, memory_order order = + memory_order::seq_cst) const volatile noexcept; +void atomic_flag::wait(bool old, memory_order order = + memory_order::seq_cst) const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +For \tcode{atomic_flag_wait}, +let \tcode{order} be \tcode{memory_order::seq_cst}. +Let \tcode{flag} be \tcode{object} for the non-member functions and +\tcode{this} for the member functions. + +\pnum +\expects +\tcode{order} is +neither \tcode{memory_order::release} nor \tcode{memory_order::acq_rel}. + +\pnum +\effects +Repeatedly performs the following steps, in order: +\begin{itemize} +\item + Evaluates \tcode{flag->test(order) != old}. +\item + If the result of that evaluation is \tcode{true}, returns. +\item + Blocks until it + is unblocked by an atomic notifying operation or is unblocked spuriously. +\end{itemize} + +\pnum +\remarks +This function is an atomic waiting operation\iref{atomics.wait}. +\end{itemdescr} + +\begin{itemdecl} +void atomic_flag_notify_one(volatile atomic_flag* object) noexcept; +void atomic_flag_notify_one(atomic_flag* object) noexcept; +void atomic_flag::notify_one() volatile noexcept; +void atomic_flag::notify_one() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Unblocks the execution of at least one atomic waiting operation +that is eligible to be unblocked\iref{atomics.wait} by this call, +if any such atomic waiting operations exist. + +\pnum +\remarks +This function is an atomic notifying operation\iref{atomics.wait}. +\end{itemdescr} + +\begin{itemdecl} +void atomic_flag_notify_all(volatile atomic_flag* object) const noexcept; +void atomic_flag_notify_all(atomic_flag* object) const noexcept; +void atomic_flag::notify_all() volatile noexcept; +void atomic_flag::notify_all() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Unblocks the execution of all atomic waiting operations +that are eligible to be unblocked\iref{atomics.wait} by this call. + +\pnum +\remarks +This function is an atomic notifying operation\iref{atomics.wait}. +\end{itemdescr} + \rSec1[atomics.fences]{Fences} \pnum diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 19a36163e3..f36e1c91f1 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -1214,6 +1214,7 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -1240,6 +1241,7 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -1259,6 +1261,7 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -1522,7 +1525,18 @@ and \indexlibrary{\idxcode{quick_exit}}% \tcode{quick_exit}\iref{support.start.term}. -The other headers listed in this table shall meet the same requirements as for a hosted implementation. +The supplied version of the header \tcode{} +shall meet the same requirements as for a hosted implementation +except that support for +always lock-free integral atomic types\iref{atomics.lockfree} +is \impldef{support for always lock-free integral atomic types in +freestanding environments}, and +whether or not the type aliases \tcode{atomic_signed_lock_free} and +\tcode{atomic_unsigned_lock_free} are defined\iref{atomics.alias} +is \impldef{type aliases \idxcode{atomic_signed_lock_free} and +\idxcode{atomic_unsigned_lock_free} in freestanding environments}. +The other headers listed in this table +shall meet the same requirements as for a hosted implementation. \rSec2[using]{Using the library} diff --git a/source/support.tex b/source/support.tex index a550411d86..8528f2e84e 100644 --- a/source/support.tex +++ b/source/support.tex @@ -539,10 +539,18 @@ \tcode{} \tcode{} \\ \rowsep \defnlibxname{cpp_lib_as_const} & \tcode{201510L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_atomic_flag_test} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_atomic_is_always_lock_free} & \tcode{201603L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_atomic_lock_free_type_aliases} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_atomic_ref} & \tcode{201806L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_atomic_wait} & \tcode{201907L} & + \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_barrier} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_bit_cast} & \tcode{201806L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_bind_front} & \tcode{201811L} & @@ -630,6 +638,8 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_is_swappable} & \tcode{201603L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_latch} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_launder} & \tcode{201606L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_list_remove_return_type} & \tcode{201806L} & @@ -680,6 +690,8 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_scoped_lock} & \tcode{201703L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_semaphore} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_shared_mutex} & \tcode{201505L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_shared_ptr_arrays} & \tcode{201611L} & diff --git a/source/threads.tex b/source/threads.tex index b44121a225..1f5e3a8d0b 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -15,6 +15,8 @@ \ref{thread.mutex} & Mutual exclusion & \tcode{}, \tcode{} \\ \rowsep \ref{thread.condition}& Condition variables & \tcode{} \\ \rowsep +\ref{thread.sema} & Semaphores & \tcode{} \\ \rowsep +\ref{thread.coord} & Coordination types & \tcode{} \tcode{} \\ \rowsep \ref{futures} & Futures & \tcode{} \\ \end{libsumtab} @@ -3566,6 +3568,654 @@ \end{codeblock} \end{itemdescr} +\rSec1[thread.sema]{Semaphore} + +\pnum +Semaphores are lightweight synchronization primitives +used to constrain concurrent access to a shared resource. +They are widely used to implement other synchronization primitives and, +whenever both are applicable, can be more efficient than condition variables. + +\pnum +A counting semaphore is a semaphore object +that models a non-negative resource count. +A binary semaphore is a semaphore object that has only two states. +A binary semaphore should be more efficient than +the default implementation of a counting semaphore with a unit resource count. + +\rSec2[semaphore.syn]{Header \tcode{} synopsis} +\indexhdr{semaphore}% + +\begin{codeblock} +namespace std { + template + class counting_semaphore; + + using binary_semaphore = counting_semaphore<1>; +} +\end{codeblock} + +\rSec2[thread.sema.cnt]{Class template \tcode{counting_semaphore}} + +\begin{codeblock} +namespace std { + template + class counting_semaphore { + public: + static constexpr ptrdiff_t max() noexcept; + + constexpr explicit counting_semaphore(ptrdiff_t desired); + ~counting_semaphore(); + + counting_semaphore(const counting_semaphore&) = delete; + counting_semaphore& operator=(const counting_semaphore&) = delete; + + void release(ptrdiff_t update = 1); + void acquire(); + bool try_acquire() noexcept; + template + bool try_acquire_for(const chrono::duration& rel_time); + template + bool try_acquire_until(const chrono::time_point& abs_time); + + private: + ptrdiff_t counter; // exposition only + }; +} +\end{codeblock} + +\pnum +Class \tcode{counting_semaphore} maintains an internal counter +that is initialized when the semaphore is created. +The counter is decremented when a thread acquires the semaphore, and +is incremented when a thread releases the semaphore. +If a thread tries to acquire the semaphore when the counter is zero, +the thread will block +until another thread increments the counter by releasing the semaphore. + +\pnum +\tcode{least_max_value} shall be non-negative; otherwise the program is ill-formed. + +\pnum +Concurrent invocations of the member functions of \tcode{counting_semaphore}, +other than its destructor, do not introduce data races. + +\indexlibrarymember{max}{counting_semaphore}% +\begin{itemdecl} +static constexpr ptrdiff_t max() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +The maximum value of \tcode{counter}. +This value is greater than or equal to \tcode{least_max_value}. +\end{itemdescr} + +\indexlibrary{\idxcode{counting_semaphore}!constructor}% +\begin{itemdecl} +constexpr explicit counting_semaphore(ptrdiff_t desired); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{desired >= 0} is \tcode{true}, and +\tcode{desired <= max()} is \tcode{true}. + +\pnum +\effects +Initializes \tcode{counter} with \tcode{desired}. + +\pnum +\throws +Nothing. +\end{itemdescr} + +\indexlibrarymember{release}{counting_semaphore}% +\begin{itemdecl} +void release(ptrdiff_t update = 1); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{update >= 0} is \tcode{true}, and +\tcode{update <= max() - counter} is \tcode{true}. + +\pnum +\effects +Atomically execute \tcode{counter += update}. +Then, unblocks any threads +that are waiting for \tcode{counter} to be greater than zero. + +\pnum +\sync +Strongly happens before invocations of \tcode{try_acquire} +that observe the result of the effects. + +\pnum +\throws +\tcode{system_error} when an exception is required\iref{thread.req.exception}. + +\pnum +\errors +Any of the error conditions +allowed for mutex types\iref{thread.mutex.requirements.mutex}. +\end{itemdescr} + +\indexlibrarymember{try_acquire}{counting_semaphore}% +\begin{itemdecl} +bool try_acquire() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +\begin{itemize} +\item + With low probability, returns immediately. + An implementation should ensure + that \tcode{try_acquire} does not consistently return \tcode{false} + in the absence of contending acquisitions. +\item + Otherwise, atomically check whether \tcode{counter} is greater than zero and, + if so, decrement \tcode{counter} by one. +\end{itemize} + +\pnum +\returns +\tcode{true} if \tcode{counter} was decremented, otherwise \tcode{false}. +\end{itemdescr} + +\indexlibrarymember{acquire}{counting_semaphore}% +\begin{itemdecl} +void acquire(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Repeatedly performs the following steps, in order: +\begin{itemize} +\item Evaluates \tcode{try_acquire}. If the result is \tcode{true}, returns. +\item Blocks on \tcode{*this} until \tcode{counter} is greater than zero. +\end{itemize} + +\pnum +\throws +\tcode{system_error} when an exception is required\iref{thread.req.exception}. + +\pnum +\errors +Any of the error conditions +allowed for mutex types\iref{thread.mutex.requirements.mutex}. +\end{itemdescr} + +\indexlibrarymember{try_acquire_for}{counting_semaphore}% +\indexlibrarymember{try_acquire_until}{counting_semaphore}% +\begin{itemdecl} +template + bool try_acquire_for(const chrono::duration& rel_time); +template + bool try_acquire_until(const chrono::time_point& abs_time); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Repeatedly performs the following steps, in order: +\begin{itemize} +\item + Evaluates \tcode{try_acquire()}. + If the result is \tcode{true}, returns \tcode{true}. +\item + Blocks on \tcode{*this} + until \tcode{counter} is greater than zero or until the timeout expires. + If it is unblocked by the timeout expiring, returns \tcode{false}. +\end{itemize} +The timeout expires\iref{thread.req.timing} +when the current time is after \tcode{abs_time} (for \tcode{try_acquire_until}) +or when at least \tcode{rel_time} has passed +from the start of the function (for \tcode{try_acquire_for}). + +\pnum +\throws +Timeout-related exceptions\iref{thread.req.timing}, or \tcode{system_error} +when a non-timeout-related exception is required\iref{thread.req.exception}. + +\pnum +\errors +Any of the error conditions +allowed for mutex types\iref{thread.mutex.requirements.mutex}. +\end{itemdescr} + +\rSec1[thread.coord]{Coordination types} + +\pnum +This subclause describes various concepts related to thread coordination, and +defines the coordination types \tcode{latch} and \tcode{barrier}. +These types facilitate concurrent computation performed by a number of threads. + +\rSec2[thread.latch]{Latches} + +\indextext{latch|see{thread, latch}}% +\pnum +A \defnx{latch}{thread!latch} is a thread coordination mechanism +that allows any number of threads to block +until an expected number of threads arrive at the latch +(via the \tcode{count_down} function). +The expected count is set when the latch is created. +An individual latch is a single-use object; +once the expected count has been reached, the latch cannot be reused. + +\rSec2[latch.syn]{Header \tcode{} synopsis} +\indexhdr{latch}% + +\begin{codeblock} +namespace std { + class latch; +} +\end{codeblock} + +\rSec2[thread.latch.class]{Class \tcode{latch}} + +\begin{codeblock} +namespace std { + class latch { + public: + constexpr explicit latch(ptrdiff_t expected); + ~latch(); + + latch(const latch&) = delete; + latch& operator=(const latch&) = delete; + + void count_down(ptrdiff_t update = 1); + bool try_wait() const noexcept; + void wait() const; + void arrive_and_wait(ptrdiff_t update = 1); + + private: + ptrdiff_t counter; // \expos + }; +} +\end{codeblock} + +\pnum +A \tcode{latch} maintains an internal counter +that is initialized when the latch is created. +Threads can block on the latch object, +waiting for counter to be decremented to zero. + +\pnum +Concurrent invocations of the member functions of \tcode{latch}, +other than its destructor, do not introduce data races. + +\indexlibrary{\idxcode{latch}!constructor}% +\begin{itemdecl} +constexpr explicit latch(ptrdiff_t expected); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{expected >= 0} is \tcode{true}. + +\pnum +\effects +Initializes \tcode{counter} with \tcode{expected}. + +\pnum +\throws +Nothing. +\end{itemdescr} + +\indexlibrarymember{count_down}{latch}% +\begin{itemdecl} +void count_down(ptrdiff_t update = 1); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{update >= 0} is \tcode{true}, and +\tcode{update <= counter} is \tcode{true}. + +\pnum +\effects +Atomically decrements \tcode{counter} by \tcode{update}. +If \tcode{counter} is equal to zero, +unblocks all threads blocked on \tcode{*this}. + +\pnum +\sync +Strongly happens before the returns from all calls that are unblocked. + +\pnum +\throws +\tcode{system_error} when an exception is required\iref{thread.req.exception}. + +\pnum +\errors +Any of the error conditions +allowed for mutex types\iref{thread.mutex.requirements.mutex}. +\end{itemdescr} + +\indexlibrarymember{try_wait}{latch}% +\begin{itemdecl} +bool try_wait() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +With very low probability \tcode{false}. Otherwise \tcode{counter == 0}. +\end{itemdescr} + +\indexlibrarymember{wait}{latch}% +\begin{itemdecl} +void wait() const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +If \tcode{counter} equals zero, returns immediately. +Otherwise, blocks on \tcode{*this} +until a call to \tcode{count_down} that decrements \tcode{counter} to zero. + +\pnum +\throws +\tcode{system_error} when an exception is required\iref{thread.req.exception}. + +\pnum +\errors +Any of the error conditions +allowed for mutex types\iref{thread.mutex.requirements.mutex}. +\end{itemdescr} + +\indexlibrarymember{arrive_and_wait}{latch}% +\begin{itemdecl} +void arrive_and_wait(ptrdiff_t update = 1); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: +\begin{codeblock} +count_down(update); +wait(); +\end{codeblock} +\end{itemdescr} + +\rSec2[thread.barrier]{Barriers} + +\pnum +A barrier is a thread coordination mechanism +whose lifetime consists of a sequence of barrier phases, +where each phase allows at most an expected number of threads to block +until the expected number of threads arrive at the barrier. +\begin{note} +A barrier is useful for managing repeated tasks +that are handled by multiple threads. +\end{note} + +\rSec3[barrier.syn]{Header \tcode{} synopsis} +\indexhdr{barrier}% + +\begin{codeblock} +namespace std { + template + class barrier; +} +\end{codeblock} + +\rSec3[thread.barrier.class]{Class template \tcode{barrier}} + +\begin{codeblock} +namespace std { + template + class barrier { + public: + using arrival_token = @\seebelow@; + + constexpr explicit barrier(ptrdiff_t phase_count, + CompletionFunction f = CompletionFunction()); + ~barrier(); + + barrier(const barrier&) = delete; + barrier& operator=(const barrier&) = delete; + + [[nodiscard]] arrival_token arrive(ptrdiff_t update = 1); + void wait(arrival_token&& arrival) const; + + void arrive_and_wait(); + void arrive_and_drop(); + + private: + CompletionFunction completion; // \expos + }; +} +\end{codeblock} + +\pnum +Each \defn{barrier phase} consists of the following steps: +\begin{itemize} +\item + The expected count is decremented + by each call to \tcode{arrive} or \tcode{arrive_and_drop}. +\item + When the expected count reaches zero, the phase completion step is run. + For the specialization + with the default value of the \tcode{CompletionFunction} template parameter, + the completion step is run + as part of the call to \tcode{arrive} or \tcode{arrive_and_drop} + that caused the expected count to reach zero. + For other specializations, + the completion step is run on one of the threads + that arrived at the barrier during the phase. +\item + When the completion step finishes, + the expected count is reset + to what was specified by the \tcode{expected} argument to the constructor, + possibly adjusted by calls to \tcode{arrive_and_drop}, and + the next phase starts. +\end{itemize} + +\indextext{phase synchronization point|see{barrier, phase synchronization point }}% +\pnum +Each phase defines a \defnx{phase synchronization point}{barrier!phase synchronization point}. +Threads that arrive at the barrier during the phase +can block on the phase synchronization point by calling \tcode{wait}, and +will remain blocked until the phase completion step is run. + +\pnum +The \defn{phase completion step} +that is executed at the end of each phase has the following effects: +\begin{itemize} +\item Invokes the completion function, equivalent to \tcode{completion()}. +\item Unblocks all threads that are blocked on the phase synchronization point. +\end{itemize} +The end of the completion step strongly happens before +the returns from all calls that were unblocked by the completion step. +For specializations that do not have +the default value of the \tcode{CompletionFunction} template parameter, +the behavior is undefined if any of the barrier object's member functions +other than \tcode{wait} are called while the completion step is in progress. + +\pnum +Concurrent invocations of the member functions of \tcode{barrier}, +other than its destructor, do not introduce data races. +The member functions \tcode{arrive} and \tcode{arrive_and_drop} +execute atomically. + +\pnum +\tcode{CompletionFunction} shall meet the +\oldconcept{MoveConstructible} (\tref{cpp17.moveconstructible}) and +\oldconcept{Destructible} (\tref{cpp17.destructible}) requirements. +\tcode{is_nothrow_invocable_v} shall be \tcode{true}. + +\pnum +The default value of the \tcode{CompletionFunction} template parameter is +an unspecified type, such that, +in addition to satisfying the requirements of \tcode{CompletionFunction}, +it meets the \oldconcept{DefaultConstructible} +requirements (\tref{cpp17.defaultconstructible}) and +\tcode{completion()} has no effects. + +\pnum +\tcode{barrier::arrival_token} is an unspecified type, +such that it meets the +\oldconcept{MoveConstructible} (\tref{cpp17.moveconstructible}), +\oldconcept{MoveAssignable} (\tref{cpp17.moveassignable}), and +\oldconcept{Destructible} (\tref{cpp17.destructible}) requirements. + +\indexlibrary{\idxcode{barrier}!constructor} +\begin{itemdecl} +constexpr explicit barrier(ptrdiff_t phase_count, + CompletionFunction f = CompletionFunction()); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{phase_count >= 0} is \tcode{true}. + +\pnum +\effects +Sets both the initial expected count for each barrier phase and +the current expected count for the first phase to \tcode{phase_count}. +Initializes \tcode{completion} with \tcode{std::move(f)}. +Starts the first phase. +\begin{note} +If \tcode{phase_count} is 0 this object can only be destroyed. +\end{note} + +\pnum +\throws +Any exception thrown by \tcode{CompletionFunction}'s move constructor. +\end{itemdescr} + +\indexlibrarymember{arrive}{barrier}% +\begin{itemdecl} +[[nodiscard]] arrival_token arrive(ptrdiff_t update = 1); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{update > 0} is \tcode{true}, and +\tcode{update} is less than or equal to +the expected count for the current barrier phase. + +\pnum +\effects +Constructs an object of type \tcode{arrival_token} +that is associated with the phase synchronization point for the current phase. +Then, decrements the expected count by \tcode{update}. + +\pnum +\sync +The call to \tcode{arrive} strongly happens before +the start of the phase completion step for the current phase. + +\pnum +\returns +The constructed \tcode{arrival_token} object. + +\pnum +\throws +\tcode{system_error} when an exception is required\iref{thread.req.exception}. + +\pnum +\errors +Any of the error conditions +allowed for mutex types\iref{thread.mutex.requirements.mutex}. + +\pnum +\begin{note} +This call can cause the completion step for the current phase to start. +\end{note} +\end{itemdescr} + +\indexlibrarymember{wait}{barrier}% +\begin{itemdecl} +void wait(arrival_token&& arrival) const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{arrival} is associated with +the phase synchronization point for the current phase or +the immediately preceding phase of the same barrier object. + +\pnum +\effects +Blocks at the synchronization point associated with \tcode{std::move(arrival)} +until the phase completion step of the synchronization point's phase is run. +\begin{note} +If \tcode{arrival} is associated with the synchronization point +for a previous phase, the call returns immediately. +\end{note} + +\pnum +\throws +\tcode{system_error} when an exception is required\iref{thread.req.exception}. + +\pnum +\errors +Any of the error conditions +allowed for mutex types\iref{thread.mutex.requirements.mutex}. +\end{itemdescr} + +\indexlibrarymember{arrive_and_wait}{barrier}% +\begin{itemdecl} +void arrive_and_wait(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{wait(arrive())}. +\end{itemdescr} + +\indexlibrarymember{arrive_and_drop}{barrier}% +\begin{itemdecl} +void arrive_and_drop(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +The expected count for the current barrier phase is greater than zero. + +\pnum +\effects +Decrements the initial expected count for all subsequent phases by one. +Then decrements the expected count for the current phase by one. + +\pnum +\sync +The call to \tcode{arrive_and_drop} strongly happens before +the start of the phase completion step for the current phase. + +\pnum +\throws +\tcode{system_error} when an exception is required\iref{thread.req.exception}. + +\pnum +\errors +Any of the error conditions +allowed for mutex types\iref{thread.mutex.requirements.mutex}. + +\pnum +\begin{note} +This call can cause the completion step for the current phase to start. +\end{note} +\end{itemdescr} + \rSec1[futures]{Futures} \rSec2[futures.overview]{Overview} From c373789bb46b53dd6b1d5dcf006a885016942254 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Sun, 28 Jul 2019 22:14:25 +0200 Subject: [PATCH 112/312] P1643R1 Add wait/notify to atomic_ref --- source/atomics.tex | 91 ++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 87 insertions(+), 4 deletions(-) diff --git a/source/atomics.tex b/source/atomics.tex index b3b35d17e7..a37720a8d7 100644 --- a/source/atomics.tex +++ b/source/atomics.tex @@ -663,8 +663,9 @@ \begin{itemize} \item \tcode{atomic::wait}, \item \tcode{atomic_flag::wait}, -\item \tcode{atomic_wait} and \tcode{atomic_wait_explicit}, and -\item \tcode{atomic_flag_wait} and \tcode{atomic_flag_wait_explicit}. +\item \tcode{atomic_wait} and \tcode{atomic_wait_explicit}, +\item \tcode{atomic_flag_wait} and \tcode{atomic_flag_wait_explicit}, and +\item \tcode{atomic_ref::wait}. \end{itemize} \end{note} @@ -674,8 +675,9 @@ \begin{itemize} \item \tcode{atomic::notify_one} and \tcode{atomic::notify_all}, \item \tcode{atomic_flag::notify_one} and \tcode{atomic_flag::notify_all}, -\item \tcode{atomic_notify_one} and \tcode{atomic_notify_all}, and -\item \tcode{atomic_flag_notify_one} and \tcode{atomic_flag_notify_all}. +\item \tcode{atomic_notify_one} and \tcode{atomic_notify_all}, +\item \tcode{atomic_flag_notify_one} and \tcode{atomic_flag_notify_all}, and +\item \tcode{atomic_ref::notify_one} and \tcode{atomic_ref::notify_all}. \end{itemize} \end{note} @@ -724,6 +726,9 @@ memory_order = memory_order_seq_cst) const noexcept; bool compare_exchange_strong(T&, T, memory_order = memory_order_seq_cst) const noexcept; + void wait(T, memory_order = memory_order::seq_cst) const noexcept; + void notify_one() noexcept; + void notify_all() noexcept; }; } \end{codeblock} @@ -1017,6 +1022,72 @@ \end{note} \end{itemdescr} +\indexlibrarymember{wait}{atomic_ref}% +\begin{itemdecl} +void wait(T old, memory_order order = memory_order::seq_cst) const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{order} is +neither \tcode{memory_order::release} nor \tcode{memory_order::acq_rel}. + +\pnum +\effects +Repeatedly performs the following steps, in order: +\begin{itemize} +\item + Evaluates \tcode{load(order)} and + compares its value representation for equality against that of \tcode{old}. +\item + If they compare unequal, returns. +\item + Blocks until it + is unblocked by an atomic notifying operation or is unblocked spuriously. +\end{itemize} + +\pnum +\remarks +This function is an atomic waiting operation\iref{atomics.wait} +on atomic object \tcode{*ptr}. +\end{itemdescr} + +\indexlibrarymember{notify_one}{atomic_ref}% +\begin{itemdecl} +void notify_one() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +Unblocks the execution of at least one atomic waiting operation on \tcode{*ptr} +that is eligible to be unblocked\iref{atomics.wait} by this call, +if any such atomic waiting operations exist. + +\pnum +\remarks +This function is an atomic notifying operation\iref{atomics.wait} +on atomic object \tcode{*ptr}. +\end{itemdescr} + +\indexlibrarymember{notify_all}{atomic_ref}% +\begin{itemdecl} +void notify_all() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +Unblocks the execution of all atomic waiting operations on \tcode{*ptr} +that are eligible to be unblocked\iref{atomics.wait} by this call. + +\pnum +\remarks + This function is an atomic notifying operation\iref{atomics.wait} + on atomic object \tcode{*ptr}. +\end{itemdescr} + \rSec2[atomics.ref.int]{Specializations for integral types} \pnum @@ -1079,6 +1150,10 @@ bool compare_exchange_strong(@\placeholder{integral}@&, @\placeholder{integral}@, memory_order = memory_order_seq_cst) const noexcept; + void wait(integral, memory_order = memory_order::seq_cst) const noexcept; + void notify_one() noexcept; + void notify_all() noexcept; + @\placeholdernc{integral}@ fetch_add(@\placeholdernc{integral}@, memory_order = memory_order_seq_cst) const noexcept; @\placeholdernc{integral}@ fetch_sub(@\placeholdernc{integral}@, @@ -1206,6 +1281,10 @@ bool compare_exchange_strong(@\placeholder{floating-point}@&, @\placeholder{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; + void wait(@\placeholdernc{floating-point}@, memory_order = memory_order::seq_cst) const noexcept; + void notify_one() noexcept; + void notify_all() noexcept; + @\placeholder{floating-point}@ fetch_add(@\placeholder{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; @\placeholder{floating-point}@ fetch_sub(@\placeholder{floating-point}@, @@ -1303,6 +1382,10 @@ bool compare_exchange_strong(T*&, T*, memory_order = memory_order_seq_cst) const noexcept; + void wait(T*, memory_order = memory_order::seq_cst) const noexcept; + void notify_one() noexcept; + void notify_all() noexcept; + T* fetch_add(difference_type, memory_order = memory_order_seq_cst) const noexcept; T* fetch_sub(difference_type, memory_order = memory_order_seq_cst) const noexcept; From 9a441b8c50b24cd340166c68c75c2bec1bf0a784 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Sun, 28 Jul 2019 22:34:29 +0200 Subject: [PATCH 113/312] P1644R0 Add wait/notify to atomic> --- source/utilities.tex | 137 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 137 insertions(+) diff --git a/source/utilities.tex b/source/utilities.tex index 8f4e34f7fe..f47d8fbd5f 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -11737,6 +11737,10 @@ bool compare_exchange_strong(shared_ptr& expected, shared_ptr desired, memory_order order = memory_order::seq_cst) noexcept; + void wait(shared_ptr old, memory_order order = memory_order::seq_cst) const noexcept; + void notify_one() noexcept; + void notify_all() noexcept; + constexpr atomic() noexcept = default; atomic(shared_ptr desired) noexcept; atomic(const atomic&) = delete; @@ -11951,6 +11955,70 @@ shall be replaced by the value \tcode{memory_order::relaxed}. \end{itemdescr} +\indexlibrarymember{wait}{atomic>}% +\begin{itemdecl} +void wait(shared_ptr old, memory_order order = memory_order::seq_cst) const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{order} is +neither \tcode{memory_order::release} nor \tcode{memory_order::acq_rel}. + +\pnum +\effects +Repeatedly performs the following steps, in order: +\begin{itemize} +\item + Evaluates \tcode{load(order)} and compares it to \tcode{old}. +\item + If the two are not equivalent, returns. +\item + Blocks until it + is unblocked by an atomic notifying operation or is unblocked spuriously. +\end{itemize} + +\pnum +\remarks +Two \tcode{shared_ptr} objects are equivalent +if they store the same pointer and either share ownership or are both empty. +This function is an atomic waiting operation\iref{atomics.wait}. +\end{itemdescr} + +\indexlibrarymember{notify_one}{atomic>}% +\begin{itemdecl} +void notify_one() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Unblocks the execution of at least one atomic waiting operation +that is eligible to be unblocked\iref{atomics.wait} by this call, +if any such atomic waiting operations exist. + +\pnum +\remarks +This function is an atomic notifying operation\iref{atomics.wait}. +\end{itemdescr} + +\indexlibrarymember{notify_all}{atomic>}% +\begin{itemdecl} +void notify_all() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Unblocks the execution of all atomic waiting operations +that are eligible to be unblocked\iref{atomics.wait} by this call. + +\pnum +\remarks +This function is an atomic notifying operation\iref{atomics.wait}. +\end{itemdescr} + \rSec3[util.smartptr.atomic.weak]{Atomic specialization for \tcode{weak_ptr}} \indexlibrary{\idxcode{atomic>}}% \begin{codeblock} @@ -11977,6 +12045,10 @@ bool compare_exchange_strong(weak_ptr& expected, weak_ptr desired, memory_order order = memory_order::seq_cst) noexcept; + void wait(weak_ptr old, memory_order order = memory_order::seq_cst) const noexcept; + void notify_one() noexcept; + void notify_all() noexcept; + constexpr atomic() noexcept = default; atomic(weak_ptr desired) noexcept; atomic(const atomic&) = delete; @@ -12189,6 +12261,71 @@ a value of \tcode{memory_order::release} shall be replaced by the value \tcode{memory_order::relaxed}. \end{itemdescr} + +\indexlibrarymember{wait}{atomic>}% +\begin{itemdecl} +void wait(weak_ptr old, memory_order order = memory_order::seq_cst) const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\expects +\tcode{order} is +neither \tcode{memory_order::release} nor \tcode{memory_order::acq_rel}. + +\pnum +\effects +Repeatedly performs the following steps, in order: +\begin{itemize} +\item + Evaluates \tcode{load(order)} and compares it to \tcode{old}. +\item + If the two are not equivalent, returns. +\item + Blocks until it + is unblocked by an atomic notifying operation or is unblocked spuriously. +\end{itemize} + +\pnum +\remarks +Two \tcode{weak_ptr} objects are equivalent +if they store the same pointer and either share ownership or are both empty. +This function is an atomic waiting operation\iref{atomics.wait}. +\end{itemdescr} + + +\indexlibrarymember{notify_one}{atomic>}% +\begin{itemdecl} +void notify_one() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Unblocks the execution of at least one atomic waiting operation +that is eligible to be unblocked\iref{atomics.wait} by this call, +if any such atomic waiting operations exist. + +\pnum +\remarks +This function is an atomic notifying operation\iref{atomics.wait}. +\end{itemdescr} + +\indexlibrarymember{notify_all}{atomic>}% +\begin{itemdecl} +void notify_all() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Unblocks the execution of all atomic waiting operations +that are eligible to be unblocked\iref{atomics.wait} by this call. + +\pnum +\remarks +This function is an atomic notifying operation\iref{atomics.wait}. +\end{itemdescr} \indextext{atomic smart pointers|)} \rSec1[mem.res]{Memory resources} From febf31da8cb44ff8312dfca0e1b28d529c5d581a Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Sun, 28 Jul 2019 22:50:02 +0200 Subject: [PATCH 114/312] [atomics.types.operations] Add more index entries. --- source/atomics.tex | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/source/atomics.tex b/source/atomics.tex index a37720a8d7..f4f7bcb714 100644 --- a/source/atomics.tex +++ b/source/atomics.tex @@ -1935,7 +1935,10 @@ \end{note} \end{itemdescr} -\indexlibrarymember{wait}{atomic} +\indexlibrarymember{wait}{atomic}% +\indexlibrarymember{wait}{atomic}% +\indexlibrarymember{wait}{atomic<\placeholder{integral}>}% +\indexlibrarymember{wait}{atomic<\placeholder{floating-point}>}% \begin{itemdecl} void wait(T old, memory_order order = memory_order::seq_cst) const volatile noexcept; void wait(T old, memory_order order = memory_order::seq_cst) const noexcept; @@ -1965,7 +1968,10 @@ This function is an atomic waiting operation\iref{atomics.wait}. \end{itemdescr} -\indexlibrarymember{notify_one}{atomic} +\indexlibrarymember{notify_one}{atomic}% +\indexlibrarymember{notify_one}{atomic}% +\indexlibrarymember{notify_one}{atomic<\placeholder{integral}>}% +\indexlibrarymember{notify_one}{atomic<\placeholder{floating-point}>}% \begin{itemdecl} void notify_one() volatile noexcept; void notify_one() noexcept; @@ -1983,7 +1989,10 @@ This function is an atomic notifying operation\iref{atomics.wait}. \end{itemdescr} -\indexlibrarymember{notify_all}{atomic} +\indexlibrarymember{notify_all}{atomic}% +\indexlibrarymember{notify_all}{atomic}% +\indexlibrarymember{notify_all}{atomic<\placeholder{integral}>}% +\indexlibrarymember{notify_all}{atomic<\placeholder{floating-point}>}% \begin{itemdecl} void notify_all() volatile noexcept; void notify_all() noexcept; From dc61857d3779253c6cdeec572cdcb43077b0ce86 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 4 Aug 2019 20:51:47 -0700 Subject: [PATCH 115/312] [atomics.lockfree] "are" -> "is"; "along with" is not a coordinating conjunction. --- source/atomics.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/atomics.tex b/source/atomics.tex index f4f7bcb714..ff2d896a5f 100644 --- a/source/atomics.tex +++ b/source/atomics.tex @@ -619,7 +619,7 @@ At least one signed integral specialization of the \tcode{atomic} template, along with the specialization for the corresponding unsigned type\iref{basic.fundamental}, -are always lock-free. +is always lock-free. \begin{note} This requirement is optional in freestanding implementations\iref{compliance}. \end{note} From 3d3f16f99454d3ffffcfbf92a02b9bcaac9b375b Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 4 Aug 2019 21:50:27 -0700 Subject: [PATCH 116/312] [thread.barrier.class] Rename constructor parameter from `phase_count` to `expected`. The parameter is not a phase count, and is referred to by other normative wording as `expected`; also, `expected` is the name we use for the same parameter in the constructor of `latch`. --- source/threads.tex | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/source/threads.tex b/source/threads.tex index 1f5e3a8d0b..fe4b671934 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -3980,7 +3980,7 @@ public: using arrival_token = @\seebelow@; - constexpr explicit barrier(ptrdiff_t phase_count, + constexpr explicit barrier(ptrdiff_t expected, CompletionFunction f = CompletionFunction()); ~barrier(); @@ -4073,23 +4073,23 @@ \indexlibrary{\idxcode{barrier}!constructor} \begin{itemdecl} -constexpr explicit barrier(ptrdiff_t phase_count, +constexpr explicit barrier(ptrdiff_t expected, CompletionFunction f = CompletionFunction()); \end{itemdecl} \begin{itemdescr} \pnum \expects -\tcode{phase_count >= 0} is \tcode{true}. +\tcode{expected >= 0} is \tcode{true}. \pnum \effects Sets both the initial expected count for each barrier phase and -the current expected count for the first phase to \tcode{phase_count}. +the current expected count for the first phase to \tcode{expected}. Initializes \tcode{completion} with \tcode{std::move(f)}. Starts the first phase. \begin{note} -If \tcode{phase_count} is 0 this object can only be destroyed. +If \tcode{expected} is 0 this object can only be destroyed. \end{note} \pnum From d5272debbac6afd59f99db50051d716bb847d6a2 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 4 Aug 2019 22:07:58 -0700 Subject: [PATCH 117/312] [atomics.ref.float] Don't insert italic correction before a comma. --- source/atomics.tex | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/source/atomics.tex b/source/atomics.tex index ff2d896a5f..bcff1c26d8 100644 --- a/source/atomics.tex +++ b/source/atomics.tex @@ -1268,26 +1268,26 @@ operator @\placeholdernc{floating-point}@() const noexcept; bool is_lock_free() const noexcept; - void store(@\placeholder{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; + void store(@\placeholdernc{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; @\placeholder{floating-point}@ load(memory_order = memory_order_seq_cst) const noexcept; - @\placeholder{floating-point}@ exchange(@\placeholder{floating-point}@, + @\placeholder{floating-point}@ exchange(@\placeholdernc{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; - bool compare_exchange_weak(@\placeholder{floating-point}@&, @\placeholder{floating-point}@, + bool compare_exchange_weak(@\placeholder{floating-point}@&, @\placeholdernc{floating-point}@, memory_order, memory_order) const noexcept; - bool compare_exchange_strong(@\placeholder{floating-point}@&, @\placeholder{floating-point}@, + bool compare_exchange_strong(@\placeholder{floating-point}@&, @\placeholdernc{floating-point}@, memory_order, memory_order) const noexcept; - bool compare_exchange_weak(@\placeholder{floating-point}@&, @\placeholder{floating-point}@, + bool compare_exchange_weak(@\placeholder{floating-point}@&, @\placeholdernc{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; - bool compare_exchange_strong(@\placeholder{floating-point}@&, @\placeholder{floating-point}@, + bool compare_exchange_strong(@\placeholder{floating-point}@&, @\placeholdernc{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; void wait(@\placeholdernc{floating-point}@, memory_order = memory_order::seq_cst) const noexcept; void notify_one() noexcept; void notify_all() noexcept; - @\placeholder{floating-point}@ fetch_add(@\placeholder{floating-point}@, + @\placeholder{floating-point}@ fetch_add(@\placeholdernc{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; - @\placeholder{floating-point}@ fetch_sub(@\placeholder{floating-point}@, + @\placeholder{floating-point}@ fetch_sub(@\placeholdernc{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; @\placeholder{floating-point}@ operator+=(@\placeholder{floating-point}@) const noexcept; From 147f575f08ae88c3b1c7725220683ce1b8a95877 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Sat, 27 Jul 2019 09:10:03 +0200 Subject: [PATCH 118/312] P1466R3 Miscellaneous minor fixes for chrono - Also adjusted the class synopsis in [time.cal.wd.overview]. - Replaced "else" with "otherwise". - Rebased on P1361R2. --- source/support.tex | 2 +- source/time.tex | 850 ++++++++++++++------------------------------- 2 files changed, 263 insertions(+), 589 deletions(-) diff --git a/source/support.tex b/source/support.tex index 8528f2e84e..990672e39e 100644 --- a/source/support.tex +++ b/source/support.tex @@ -569,7 +569,7 @@ \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} \\ \rowsep -\defnlibxname{cpp_lib_chrono} & \tcode{201611L} & +\defnlibxname{cpp_lib_chrono} & \tcode{201907L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_chrono_udls} & \tcode{201304L} & \tcode{} \\ \rowsep diff --git a/source/time.tex b/source/time.tex index 65f57cb49b..c32a93fed1 100644 --- a/source/time.tex +++ b/source/time.tex @@ -16,7 +16,8 @@ \ref{time.point} & Class template \tcode{time_point} & \\ \ref{time.clock} & Clocks & \\ \ref{time.cal} & Civil calendar & \\ -\ref{time.tod} & Class template \tcode{time_of_day} & \\ +\ref{time.hms} & Class template \tcode{hh_mm_ss} & \\ +\ref{time.12} & 12/24 hour functions & \\ \ref{time.zone} & Time zones & \\ \ref{time.format} & Formatting & \\ \ref{time.parse} & Parsing & \\ \rowsep @@ -264,6 +265,11 @@ basic_string* abbrev = nullptr, minutes* offset = nullptr); + struct leap_second_info; + + template + leap_second_info get_leap_second_info(utc_time const& ut); + // \ref{time.clock.tai}, class \tcode{tai_clock} class tai_clock; @@ -736,29 +742,19 @@ constexpr year_month_weekday_last operator/(const month_weekday_last& mwdl, int y) noexcept; - // \ref{time.tod}, class template \tcode{time_of_day} - template class time_of_day; - template<> class time_of_day; - template<> class time_of_day; - template<> class time_of_day; - template class time_of_day>; - - template - basic_ostream& - operator<<(basic_ostream& os, const time_of_day& t); - - template - basic_ostream& - operator<<(basic_ostream& os, const time_of_day& t); - - template - basic_ostream& - operator<<(basic_ostream& os, const time_of_day& t); + // \ref{time.hms}, class template \tcode{hh_mm_ss} + template class hh_mm_ss; - template + template basic_ostream& operator<<(basic_ostream& os, - const time_of_day>& t); + const hh_mm_ss& t); + + // \ref{time.12}, 12/24 hour functions + constexpr bool is_am(const hours& h) noexcept; + constexpr bool is_pm(const hours& h) noexcept; + constexpr hours make12(const hours& h) noexcept; + constexpr hours make24(const hours& h, bool is_pm) noexcept; // \ref{time.zone.db}, time zone database struct tzdb; @@ -907,7 +903,7 @@ template struct formatter; template struct formatter; template - struct formatter>, charT>; + struct formatter>, charT>; template struct formatter; template struct formatter; template @@ -2612,7 +2608,7 @@ \begin{codeblock} auto const dp = floor(tp); return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{} {}"), - year_month_day{dp}, time_of_day{tp-dp}); + year_month_day{dp}, hh_mm_ss{tp-dp}); \end{codeblock} \pnum @@ -2851,6 +2847,36 @@ \returns \tcode{is}. \end{itemdescr} +\indexlibrary{\idxcode{leap_second_info}}% +\begin{itemdecl} +struct leap_second_info { + bool is_leap_second; + seconds elapsed; +}; +\end{itemdecl} + +\begin{itemdescr} +\pnum +The type \tcode{leap_second_info} +has data members and special members specified above. +It has no base classes or members other than those specified. +\end{itemdescr} + +\indexlibrary{\idxcode{get_leap_second_info}}% +\begin{itemdecl} +template + leap_second_info get_leap_second_info(utc_time const& ut); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +A \tcode{leap_second_info} where \tcode{is_leap_second} is \tcode{true} +if \tcode{ut} is during a leap second insertion, and otherwise \tcode{false}. +\tcode{elapsed} is the number of leap seconds between 1970-01-01 and \tcode{ut}. +If \tcode{is_leap_second} is \tcode{true}, +the leap second referred to by \tcode{ut} is included in the count. + \rSec2[time.clock.tai]{Class \tcode{tai_clock}} \rSec3[time.clock.tai.overview]{Overview} @@ -2896,6 +2922,7 @@ \begin{note} \tcode{noexcept(from_utc(utc_clock::now()))} is \tcode{false}. \end{note} +\end{itemdescr} \rSec3[time.clock.tai.members]{Member functions} @@ -4657,7 +4684,8 @@ constexpr weekday& operator+=(const days& d) noexcept; constexpr weekday& operator-=(const days& d) noexcept; - constexpr explicit operator unsigned() const noexcept; + constexpr unsigned c_encoding() const noexcept; + constexpr unsigned iso_encoding() const noexcept; constexpr bool ok() const noexcept; constexpr weekday_indexed operator[](unsigned index) const noexcept; @@ -4696,7 +4724,7 @@ \pnum \effects Constructs an object of type \tcode{weekday} by -initializing \tcode{wd_} with \tcode{wd}. +initializing \tcode{wd_} with \tcode{wd == 7 ?\ 0 :\ wd}. The value held is unspecified if \tcode{wd} is not in the range \crange{0}{255}. \end{itemdescr} @@ -4816,9 +4844,9 @@ \returns \tcode{*this}. \end{itemdescr} -\indexlibrarymember{operator unsigned}{weekday}% +\indexlibrarymember{c_encoding}{weekday}% \begin{itemdecl} -constexpr explicit operator unsigned() const noexcept; +constexpr unsigned c_encoding() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -4826,6 +4854,16 @@ \returns \tcode{wd_}. \end{itemdescr} +\indexlibrarymember{iso_encoding}{weekday}% +\begin{itemdecl} +constexpr unsigned iso_encoding() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{wd_ == 0u ?\ 7u :\ wd_}. +\end{itemdescr} + \indexlibrarymember{ok}{weekday}% \begin{itemdecl} constexpr bool ok() const noexcept; @@ -4865,7 +4903,7 @@ \begin{itemdescr} \pnum -\returns \tcode{unsigned\{x\} == unsigned\{y\}}. +\returns \tcode{x.wd_ == y.wd_}. \end{itemdescr} \indexlibrarymember{operator+}{weekday}% @@ -4877,7 +4915,7 @@ \pnum \returns \begin{codeblock} -weekday{modulo(static_cast(unsigned{x}) + y.count(), 7)} +weekday{modulo(static_cast(x.wd_) + y.count(), 7)} \end{codeblock} where \tcode{modulo(n, 7)} computes the remainder of \tcode{n} divided by 7 using Euclidean division. \begin{note} @@ -4945,7 +4983,7 @@ return os << (wd.ok() ? format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{:%a}"), wd) : format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{} is not a valid weekday"), - static_cast(wd))); + static_cast(wd.wd_))); \end{codeblock} \end{itemdescr} @@ -7752,317 +7790,181 @@ \indexlibrary{\idxcode{operator/}!calendar types|)} -\rSec1[time.tod]{Class template \tcode{time_of_day}} +\rSec1[time.hms]{Class template \tcode{hh_mm_ss}} -\rSec2[time.tod.overview]{Overview} -\indexlibrary{\idxcode{time_of_day}} +\rSec2[time.hms.overview]{Overview} +\indexlibrary{\idxcode{hms}} \begin{codeblock} namespace std::chrono { - template class time_of_day; - - template<> class time_of_day; - template<> class time_of_day; - template<> class time_of_day; - template class time_of_day>; -} -\end{codeblock} - -\pnum -The \tcode{time_of_day} class template -splits a \tcode{duration} representing the time elapsed since midnight -into a ``broken down'' time of day such as -$hours$:$minutes$:$seconds$. -The \tcode{Duration} template parameter dictates -the precision to which the time is broken down. -\begin{note} -This can vary from a coarse precision of hours -to a very fine precision of nanoseconds. -\end{note} -A \tcode{time_of_day} object also tracks -whether it should be output -as a 12-hour time format or a 24-hour time format. + template + class hh_mm_ss + { + bool is_neg; // \expos + chrono::hours h; // \expos + chrono::minutes m; // \expos + chrono::seconds s; // \expos + precision ss; // \expos -\pnum -The primary \tcode{time_of_day} template is not defined. -Four specializations are provided to handle four different -levels of precision. - -\pnum -Each specialization of \tcode{time_of_day} is a trivially copyable -and standard-layout class type. - -\rSec2[time.tod.hours]{Hours precision} -\indexlibrary{\idxcode{time_of_day}} - -\begin{codeblock} -namespace std::chrono { - template<> - class time_of_day { public: - using precision = chrono::hours; + static unsigned constexpr fractional_width = @\seebelow@; + using precision = @\seebelow@; - time_of_day() = default; - constexpr explicit time_of_day(chrono::hours since_midnight) noexcept; + constexpr hh_mm_ss() noexcept : hh_mm_ss{Duration::zero()} {} + constexpr explicit hh_mm_ss(Duration d); + constexpr bool is_negative() const noexcept; constexpr chrono::hours hours() const noexcept; + constexpr chrono::minutes minutes() const noexcept; + constexpr chrono::seconds seconds() const noexcept; + constexpr precision subseconds() const noexcept; - constexpr explicit operator precision() const noexcept; - constexpr precision to_duration() const noexcept; - - constexpr void make24() noexcept; - constexpr void make12() noexcept; + constexpr explicit operator precision() const noexcept; + constexpr precision to_duration() const noexcept; }; + + template + basic_ostream& + operator<<(basic_ostream& os, hh_mm_ss const& hms); } \end{codeblock} \pnum -\begin{note} -This specialization handles hours since midnight. -\end{note} - -\indexlibrary{\idxcode{time_of_day}!constructor}% -\begin{itemdecl} -constexpr explicit time_of_day(chrono::hours since_midnight) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Constructs an object of type \tcode{time_of_day} in 24-hour format -corresponding to \tcode{since_midnight} hours after 00:00:00. - -\pnum -\ensures -\tcode{hours()} returns the integral number of hours \tcode{since_midnight} is after 00:00:00. -\end{itemdescr} - -\indexlibrarymember{hours}{time_of_day}% -\begin{itemdecl} -constexpr chrono::hours hours() const noexcept; -\end{itemdecl} +The \tcode{hh_mm_ss} class template +splits a \tcode{duration} +into a multi-field time structure +\placeholdernc{hours}:\placeholdernc{minutes}:\placeholder{seconds} and +possibly \placeholder{subseconds}, +where \placeholder{subseconds} will be a duration unit +based on a non-positive power of 10. +The \tcode{Duration} template parameter dictates the precision +to which the time is split. +A \tcode{hh_mm_ss} models negative durations +with a distinct \tcode{is_negative} getter +that returns \tcode{true} when the input duration is negative. +The individual duration fields always return non-negative durations +even when \tcode{is_negative()} indicates +the structure is representing a negative duration. -\begin{itemdescr} \pnum -\returns The stored hour of \tcode{*this}. -\end{itemdescr} - -\indexlibrarymember{operator precision}{time_of_day}% -\begin{itemdecl} -constexpr explicit operator precision() const noexcept; -\end{itemdecl} +If \tcode{Duration} is not an instance of \tcode{duration}, +the program is ill-formed. -\begin{itemdescr} -\pnum -\returns The number of hours since midnight. -\end{itemdescr} +\rSec2[time.hms.members]{Members} -\indexlibrarymember{to_duration}{time_of_day}% \begin{itemdecl} -constexpr precision to_duration() const noexcept; +static unsigned constexpr fractional_width = @\seebelow@; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{precision\{*this\}}. +\tcode{fractional_width} is the number of fractional decimal digits +represented by \tcode{precision}. +\tcode{fractional_width} has the value +of the smallest possible integer in the range \crange{0}{18} such that +\tcode{precision} will exactly represent all values of \tcode{Duration}. +If no such value of \tcode{fractional_width} exists, then +\tcode{fractional_width} is 6. +\begin{example} +See~\tref{time.hms.width} +for some durations, +the resulting \tcode{fractional_width}, and +the formatted fractional second output of \tcode{Duration\{1\}}. +\begin{LongTable} + {Examples for \tcode{fractional_width}} + {time.hms.width} + {llx{.3\hsize}} +\\ \topline +\lhdr{Duration} & +\chdr{\tcode{fractional_width}} & +\rhdr{Formatted fractional second output} \\ \capsep +\endfirsthead +\continuedcaption\\ +\hline +\lhdr{Duration} & +\chdr{\tcode{fractional_width}} & +\rhdr{Formatted fractional second output} \\ \capsep +\endhead +\tcode{hours}, \tcode{minutes}, and \tcode{seconds} & \tcode{0} & \\ \rowsep +\tcode{milliseconds} & \tcode{3} & \tcode{0.001} \\ \rowsep +\tcode{microseconds} & \tcode{6} & \tcode{0.000001} \\ \rowsep +\tcode{nanoseconds} & \tcode{9} & \tcode{0.000000001} \\ \rowsep +\tcode{duration>} & \tcode{1} & \tcode{0.5} \\ \rowsep +\tcode{duration>} & \tcode{6} & \tcode{0.333333} \\ \rowsep +\tcode{duration>} & \tcode{2} & \tcode{0.25} \\ \rowsep +\tcode{duration>} & \tcode{1} & \tcode{0.2} \\ \rowsep +\tcode{duration>} & \tcode{6} & \tcode{0.166666} \\ \rowsep +\tcode{duration>} & \tcode{6} & \tcode{0.142857} \\ \rowsep +\tcode{duration>} & \tcode{3} & \tcode{0.125} \\ \rowsep +\tcode{duration>} & \tcode{6} & \tcode{0.111111} \\ \rowsep +\tcode{duration>} & \tcode{1} & \tcode{0.1} \\ \rowsep +\tcode{duration>} & \tcode{4} & \tcode{0.2096} \\ +\end{LongTable} +\end{example} \end{itemdescr} -\indexlibrarymember{make24}{time_of_day}% \begin{itemdecl} -constexpr void make24() noexcept; +using precision = @\seebelow@; \end{itemdecl} \begin{itemdescr} \pnum -\effects -If \tcode{*this} is a 12-hour time, -converts to a 24-hour time. -Otherwise, no effects. +\tcode{precision} is +\begin{codeblock} +duration, ratio<1, @$10^\tcode{fractional_width}$@>> +\end{codeblock} \end{itemdescr} -\indexlibrarymember{make12}{time_of_day}% \begin{itemdecl} -constexpr void make12() noexcept; +constexpr explicit hh_mm_ss(Duration d); \end{itemdecl} \begin{itemdescr} \pnum \effects -If \tcode{*this} is a 24-hour time, -converts to a 12-hour time. -Otherwise, no effects. -\end{itemdescr} - -\rSec2[time.tod.minutes]{Minutes precision} -\indexlibrary{\idxcode{time_of_day}} - -\begin{codeblock} -namespace std::chrono { - template<> - class time_of_day { - public: - using precision = chrono::minutes; - - time_of_day() = default; - constexpr explicit time_of_day(chrono::minutes since_midnight) noexcept; - - constexpr chrono::hours hours() const noexcept; - constexpr chrono::minutes minutes() const noexcept; - - constexpr explicit operator precision() const noexcept; - constexpr precision to_duration() const noexcept; - - constexpr void make24() noexcept; - constexpr void make12() noexcept; - }; -} -\end{codeblock} - -\pnum +Constructs an object of type \tcode{hh_mm_ss} +which represents the \tcode{Duration d} with precision \tcode{precision}. +\begin{itemize} +\item + Initializes \tcode{is_neg} with \tcode{d < Duration::zero()}. +\item + Initializes \tcode{h} with \tcode{duration_cast(abs(d))}. +\item + Initializes \tcode{m} + with \tcode{duration_cast(abs(d) - hours())}. +\item + Initializes \tcode{s} + with \tcode{duration_cast(abs(d) - hours() - minutes())}. +\item + If \tcode{treat_as_floating_point_v} is \tcode{true}, + initializes \tcode{ss} with \tcode{abs(d) - hours() - minutes() - seconds()}. + Otherwise, initializes \tcode{ss} + with \tcode{duration_cast(abs(d) - hours() - minutes() - seconds())}. +\end{itemize} \begin{note} -This specialization handles hours and minutes since midnight. +When \tcode{precision} is \tcode{seconds} with integral representation, +\tcode{subseconds()} always returns \tcode{0s}. \end{note} -\indexlibrary{\idxcode{time_of_day}!constructor}% -\begin{itemdecl} -constexpr explicit time_of_day(minutes since_midnight) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Constructs an object of type \tcode{time_of_day} -in 24-hour format -corresponding to \tcode{since_midnight} minutes after 00:00:00. - \pnum \ensures -\tcode{hours()} returns the integral number of hours -\tcode{since_midnight} is after 00:00:00. -\tcode{minutes()} returns the integral number of minutes -\tcode{since_midnight} is after \tcode{(\textrm{00:00:00} + hours())}. -\end{itemdescr} - -\indexlibrarymember{hours}{time_of_day}% -\begin{itemdecl} -constexpr chrono::hours hours() const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns The stored hour of \tcode{*this}. +If \tcode{treat_as_floating_point_v} is \tcode{true}, +\tcode{to_duration()} returns \tcode{d}, +otherwise \tcode{to_duration()} returns \tcode{duration_cast(d)}. \end{itemdescr} -\indexlibrarymember{minutes}{time_of_day}% +\indexlibrarymember{is_negative}{hh_mm_ss}% \begin{itemdecl} -constexpr chrono::minutes minutes() const noexcept; +constexpr bool is_negative() const noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns The stored minute of \tcode{*this}. -\end{itemdescr} - -\indexlibrarymember{operator precision}{time_of_day}% -\begin{itemdecl} -constexpr explicit operator precision() const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns The number of minutes since midnight. -\end{itemdescr} - -\indexlibrarymember{to_duration}{time_of_day}% -\begin{itemdecl} -constexpr precision to_duration() const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{precision\{*this\}}. -\end{itemdescr} - -\indexlibrarymember{make24}{time_of_day}% -\begin{itemdecl} -constexpr void make24() noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -If \tcode{*this} is a 12-hour time, -converts to a 24-hour time. -Otherwise, no effects. -\end{itemdescr} - -\indexlibrarymember{make12}{time_of_day}% -\begin{itemdecl} -constexpr void make12() noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -If \tcode{*this} is a 24-hour time, -converts to a 12-hour time. -Otherwise, no effects. -\end{itemdescr} - -\rSec2[time.tod.seconds]{Seconds precision} -\indexlibrary{\idxcode{time_of_day}} - -\begin{codeblock} -namespace std::chrono { - template<> - class time_of_day { - public: - using precision = chrono::seconds; - - time_of_day() = default; - constexpr explicit time_of_day(chrono::seconds since_midnight) noexcept; - - constexpr chrono::hours hours() const noexcept; - constexpr chrono::minutes minutes() const noexcept; - constexpr chrono::seconds seconds() const noexcept; - - constexpr explicit operator precision() const noexcept; - constexpr precision to_duration() const noexcept; - - constexpr void make24() noexcept; - constexpr void make12() noexcept; - }; -} -\end{codeblock} - -\pnum -\begin{note} -This specialization handles hours, minutes, and seconds since midnight. -\end{note} - -\indexlibrary{\idxcode{time_of_day}!constructor}% -\begin{itemdecl} -constexpr explicit time_of_day(seconds since_midnight) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Constructs an object of type \tcode{time_of_day} -in 24-hour format -corresponding to \tcode{since_midnight} seconds after 00:00:00. - -\pnum -\ensures -\tcode{hours()} returns the integral number of hours -\tcode{since_midnight} is after 00:00:00. -\tcode{minutes()} returns the integral number of minutes -\tcode{since_midnight} is after \tcode{(\textrm{00:00:00} + hours())}. -\tcode{seconds()} returns the integral number of seconds -\tcode{since_midnight} is after \tcode{(\textrm{00:00:00} + hours() + minutes())}. +\returns +\tcode{is_neg}. \end{itemdescr} -\indexlibrarymember{hours}{time_of_day}% +\indexlibrarymember{hours}{hh_mm_ss}% \begin{itemdecl} constexpr chrono::hours hours() const noexcept; \end{itemdecl} @@ -8070,10 +7972,10 @@ \begin{itemdescr} \pnum \returns -The stored hour of \tcode{*this}. +\tcode{h}. \end{itemdescr} -\indexlibrarymember{minutes}{time_of_day}% +\indexlibrarymember{minutes}{hh_mm_ss}% \begin{itemdecl} constexpr chrono::minutes minutes() const noexcept; \end{itemdecl} @@ -8081,10 +7983,10 @@ \begin{itemdescr} \pnum \returns -The stored minute of \tcode{*this}. +\tcode{m}. \end{itemdescr} -\indexlibrarymember{seconds}{time_of_day}% +\indexlibrarymember{seconds}{hh_mm_ss}% \begin{itemdecl} constexpr chrono::seconds seconds() const noexcept; \end{itemdecl} @@ -8092,373 +7994,139 @@ \begin{itemdescr} \pnum \returns -The stored second of \tcode{*this}. +\tcode{s}. \end{itemdescr} -\indexlibrarymember{operator precision}{time_of_day}% +\indexlibrarymember{subseconds}{hh_mm_ss}% \begin{itemdecl} -constexpr explicit operator precision() const noexcept; +constexpr precision subseconds() const noexcept; \end{itemdecl} \begin{itemdescr} \pnum \returns -The number of seconds since midnight. +\tcode{ss}. \end{itemdescr} -\indexlibrarymember{to_duration}{time_of_day}% +\indexlibrarymember{to_duration}{hh_mm_ss}% \begin{itemdecl} constexpr precision to_duration() const noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{precision\{*this\}}. +\returns +If \tcode{is_neg}, returns \tcode{-(h + m + s + ss)}, +otherwise returns \tcode{h + m + s + ss}. \end{itemdescr} -\indexlibrarymember{make24}{time_of_day}% +\indexlibrarymember{operator precision}{hh_mm_ss}% \begin{itemdecl} -constexpr void make24() noexcept; +constexpr explicit operator precision() const noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\effects -If \tcode{*this} is a 12-hour time, -converts to a 24-hour time. -Otherwise, no effects. +\returns +\tcode{to_duration()}. \end{itemdescr} -\indexlibrarymember{make12}{time_of_day}% +\rSec2[time.hms.nonmembers]{Non-members} + \begin{itemdecl} -constexpr void make12() noexcept; +template +basic_ostream& +operator<<(basic_ostream& os, hh_mm_ss const& hms); \end{itemdecl} \begin{itemdescr} \pnum \effects -If \tcode{*this} is a 24-hour time, -converts to a 12-hour time. -Otherwise, no effects. -\end{itemdescr} +Outputs to \tcode{os} according to the format \tcode{"\%T"}\iref{time.format}. +If \tcode{hms.is_negative()}, the output is preceded with \tcode{'-'}. -\rSec2[time.tod.subsecond]{Sub-second precision} -\indexlibrary{\idxcode{time_of_day<\placeholder{sub-second duration}>}} +\pnum +\returns +\tcode{os}. +\pnum +\begin{example} \begin{codeblock} -namespace std::chrono { - template - class time_of_day> { - public: - using precision = duration; - - time_of_day() = default; - constexpr explicit time_of_day(precision since_midnight) noexcept; - - constexpr chrono::hours hours() const noexcept; - constexpr chrono::minutes minutes() const noexcept; - constexpr chrono::seconds seconds() const noexcept; - constexpr precision subseconds() const noexcept; - - constexpr explicit operator precision() const noexcept; - constexpr precision to_duration() const noexcept; - - constexpr void make24() noexcept; - constexpr void make12() noexcept; - }; +for (auto ms : {-4083007ms, 4083007ms, 65745123ms}) { + hh_mm_ss hms{ms}; + cout << hms << '\n'; } +cout << hh_mm_ss{65745s} << '\n'; \end{codeblock} - -\pnum -This specialization shall not exist unless -\tcode{treat_as_floating_point_v} is \tcode{false} -and -\tcode{duration} is not convertible to \tcode{seconds}. -\begin{note} -This specialization handles hours, minutes, seconds, and fractional seconds since midnight. -Typical uses are with \tcode{milliseconds}, \tcode{microseconds} and \tcode{nanoseconds}. -\end{note} - -\indexlibrary{\idxcode{time_of_day<\placeholder{sub-second duration}>}!constructor}% -\begin{itemdecl} -constexpr explicit time_of_day(precision since_midnight) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Constructs an object of type \tcode{time_of_day} -in 24-hour format -corresponding to \tcode{since_midnight} fractional seconds after 00:00:00. - -\pnum -\ensures -\tcode{hours()} returns the integral number of hours -\tcode{since_midnight} is after 00:00:00. -\tcode{minutes()} returns the integral number of minutes -\tcode{since_midnight }is after \tcode{(\textrm{00:00:00} + hours())}. -\tcode{seconds()} returns the integral number of seconds -\tcode{since_midnight }is after \tcode{(\textrm{00:00:00} + hours() + minutes())}. -\tcode{subseconds()} returns the integral number of fractional seconds -\tcode{since_midnight} is after \tcode{(\textrm{00:00:00} + hours() + minutes() + seconds())}. +Produces the output (assuming the "C" locale): +\begin{codeblock} +-01:08:03.007 +01:08:03.007 +18:15:45.123 +18:15:45 +\end{codeblock} +\end{example} \end{itemdescr} -\indexlibrarymember{hours}{time_of_day<\placeholder{sub-second duration}>}% -\begin{itemdecl} -constexpr chrono::hours hours() const noexcept; -\end{itemdecl} +\rSec1[time.12]{12/24 hours functions} -\begin{itemdescr} \pnum -\returns -The stored hour of \tcode{*this}. -\end{itemdescr} +These functions aid in translating between a 12h format time of day +and a 24h format time of day. -\indexlibrarymember{minutes}{time_of_day<\placeholder{sub-second duration}>}% +\indexlibrary{\idxcode{is_am}}% \begin{itemdecl} -constexpr chrono::minutes minutes() const noexcept; +constexpr bool is_am(const hours& h) noexcept; \end{itemdecl} \begin{itemdescr} \pnum \returns -The stored minute of \tcode{*this}. +\tcode{0h <= h \&\& h <= 11h}. \end{itemdescr} -\indexlibrarymember{seconds}{time_of_day<\placeholder{sub-second duration}>}% +\indexlibrary{\idxcode{is_pm}}% \begin{itemdecl} -constexpr chrono::seconds seconds() const noexcept; +constexpr bool is_pm(const hours& h) noexcept; \end{itemdecl} \begin{itemdescr} \pnum \returns -The stored second of \tcode{*this}. +\tcode{12h <= h \&\& h <= 23h}. \end{itemdescr} -\indexlibrarymember{subseconds}{time_of_day<\placeholder{sub-second duration}>}% +\indexlibrary{\idxcode{make12}}% \begin{itemdecl} -constexpr duration subseconds() const noexcept; +constexpr hours make12(const hours& h) noexcept; \end{itemdecl} \begin{itemdescr} \pnum \returns -The stored subsecond of \tcode{*this}. +The 12-hour equivalent of \tcode{h} in the range \crange{1h}{12h}. +If \tcode{h} is not in the range \crange{0h}{23h}, +the value returned is unspecified. \end{itemdescr} -\indexlibrarymember{operator precision}{time_of_day<\placeholder{sub-second duration}>}% +\indexlibrary{\idxcode{make24}}% \begin{itemdecl} -constexpr explicit operator precision() const noexcept; +constexpr hours make24(const hours& h, bool is_pm) noexcept; \end{itemdecl} \begin{itemdescr} \pnum \returns -The number of subseconds since midnight. -\end{itemdescr} - -\indexlibrarymember{to_duration}{time_of_day<\placeholder{sub-second duration}>}% -\begin{itemdecl} -constexpr precision to_duration() const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{precision\{*this\}}. -\end{itemdescr} - -\indexlibrarymember{make24}{time_of_day<\placeholder{sub-second duration}>}% -\begin{itemdecl} -constexpr void make24() noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -If \tcode{*this} is a 12-hour time, -converts to a 24-hour time. -Otherwise, no effects. -\end{itemdescr} - -\indexlibrarymember{make12}{time_of_day<\placeholder{sub-second duration}>}% -\begin{itemdecl} -constexpr void make12() noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -If \tcode{*this} is a 24-hour time, -converts to a 12-hour time. -Otherwise, no effects. -\end{itemdescr} - -\rSec2[time.tod.io]{Formatted output} - -\indexlibrarymember{operator<<}{time_of_day}% -\begin{itemdecl} -template - basic_ostream& - operator<<(basic_ostream& os, const time_of_day& t); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -If \tcode{t} is a 24-hour time, -outputs to \tcode{os} according to the format -\tcode{"\%H00"}\iref{time.format}. -Otherwise -outputs to \tcode{os} according to the format -\tcode{"\%I\%p"}\iref{time.format}. - -\pnum -\returns \tcode{os}. - -\pnum -\begin{example} -\begin{codeblock} -for (hours h : {1h, 18h}) { - time_of_day tod(h); - os << tod << '\n'; - tod.make12(); - os << tod << '\n'; -} -\end{codeblock} - -Produces the output: - -\begin{outputblock} -0100 -1am -1800 -6pm -\end{outputblock} -\end{example} -\end{itemdescr} - -\indexlibrarymember{operator<<}{time_of_day}% -\begin{itemdecl} -template - basic_ostream& - operator<<(basic_ostream& os, const time_of_day& t); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -If \tcode{t} is a 24-hour time, -outputs to \tcode{os} according to the format -\tcode{"\%H:\%M"}\iref{time.format}. -Otherwise -outputs to \tcode{os} according to the format -\tcode{"\%I:\%M\%p"}\iref{time.format}. - -\pnum -\returns \tcode{os}. - -\begin{example} -\begin{codeblock} -for (minutes m : {68min, 1095min}) { - time_of_day tod(m); - os << tod << '\n'; - tod.make12(); - os << tod << '\n'; -} -\end{codeblock} - -Produces the output: - -\begin{outputblock} -01:08 -1:08am -18:15 -6:15pm -\end{outputblock} -\end{example} -\end{itemdescr} - -\indexlibrarymember{operator<<}{time_of_day}% -\begin{itemdecl} -template - basic_ostream& - operator<<(basic_ostream& os, const time_of_day& t); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -If \tcode{t} is a 24-hour time, -outputs to \tcode{os} according to the format -\tcode{"\%T"}\iref{time.format}. -Otherwise -outputs to \tcode{os} according to the format -\tcode{"\%I:\%M:\%S\%p"}\iref{time.format}. - -\pnum -\returns \tcode{os}. - -\begin{example} -\begin{codeblock} -for (seconds s : {4083s, 65745s}) { - time_of_day tod(s); - os << tod << '\n'; - tod.make12(); - os << tod << '\n'; -} -\end{codeblock} - -Produces the output: - -\begin{outputblock} -01:08:03 -1:08:03am -18:15:45 -6:15:45pm -\end{outputblock} -\end{example} -\end{itemdescr} - -\indexlibrarymember{operator<<}{time_of_day<\placeholder{sub-second duration}>}% -\begin{itemdecl} -template - basic_ostream& - operator<<(basic_ostream& os, const time_of_day>& t); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -If \tcode{t} is a 24-hour time, -outputs to \tcode{os} according to the format -\tcode{"\%T"}\iref{time.format}. -Otherwise -outputs to \tcode{os} according to the format -\tcode{"\%I:\%M:\%S\%p"}\iref{time.format}. - -\pnum -\returns \tcode{os}. - -\begin{example} -\begin{codeblock} -for (milliseconds ms : {4083007ms, 65745123ms}) { - time_of_day tod(ms); - os << tod << '\n'; - tod.make12(); - os << tod << '\n'; -} -\end{codeblock} - -Produces the output: - -\begin{outputblock} -01:08:03.007 -1:08:03.007am -18:15:45.123 -6:15:45.123pm -\end{outputblock} -\end{example} +If \tcode{is_pm} is \tcode{false}, +returns the 24-hour equivalent of \tcode{h} +in the range \crange{0h}{11h}, +assuming \tcode{h} represents an ante meridiem hour. +Otherwise, +returns the 24-hour equivalent of \tcode{h} +in the range \crange{12h}{23h}, +assuming \tcode{h} represents a post meridiem hour. +If \tcode{h} is not in the range \crange{1h}{12h}, +the value returned is unspecified. \end{itemdescr} \rSec1[time.zone]{Time zones} @@ -10361,6 +10029,12 @@ \tcode{\%p} & The locale's equivalent of the AM/PM designations associated with a 12-hour clock. \\ \rowsep +\tcode{\%q} & +The duration's unit suffix as specified in \ref{time.duration.io}. +\\ \rowsep +\tcode{\%Q} & +The duration's numeric value (as if extracted via \tcode{.count()}). +\\ \rowsep \tcode{\%r} & The locale's 12-hour clock time. \\ \rowsep From 2e82327045fb92d89dd1431cc7e771da63c982dc Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Thu, 1 Aug 2019 10:37:25 +0200 Subject: [PATCH 119/312] Various small fixes relative to the ingress paper. [time.hms.members] Rephrased note. [time.hms.overview] Removed redundant declaration of operator<<. [time.hms.overview] Moved exposition-only data members to the bottom. --- source/time.tex | 29 ++++++++++++----------------- 1 file changed, 12 insertions(+), 17 deletions(-) diff --git a/source/time.tex b/source/time.tex index c32a93fed1..3c03d4d9d1 100644 --- a/source/time.tex +++ b/source/time.tex @@ -747,8 +747,7 @@ template basic_ostream& - operator<<(basic_ostream& os, - const hh_mm_ss& t); + operator<<(basic_ostream& os, const hh_mm_ss& t); // \ref{time.12}, 12/24 hour functions constexpr bool is_am(const hours& h) noexcept; @@ -7797,15 +7796,7 @@ \begin{codeblock} namespace std::chrono { - template - class hh_mm_ss - { - bool is_neg; // \expos - chrono::hours h; // \expos - chrono::minutes m; // \expos - chrono::seconds s; // \expos - precision ss; // \expos - + template class hh_mm_ss { public: static unsigned constexpr fractional_width = @\seebelow@; using precision = @\seebelow@; @@ -7821,11 +7812,14 @@ constexpr explicit operator precision() const noexcept; constexpr precision to_duration() const noexcept; - }; - template - basic_ostream& - operator<<(basic_ostream& os, hh_mm_ss const& hms); + private: + bool is_neg; // \expos + chrono::hours h; // \expos + chrono::minutes m; // \expos + chrono::seconds s; // \expos + precision ss; // \expos + }; } \end{codeblock} @@ -7942,8 +7936,9 @@ with \tcode{duration_cast(abs(d) - hours() - minutes() - seconds())}. \end{itemize} \begin{note} -When \tcode{precision} is \tcode{seconds} with integral representation, -\tcode{subseconds()} always returns \tcode{0s}. +When \tcode{precision::rep} is integral and +\tcode{precision::period} is \tcode{ratio<1>}, +\tcode{subseconds()} always returns a value equal to \tcode{0s}. \end{note} \pnum From 1a37c22bb6b621f14d01b4e16378c9cd08724183 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 4 Aug 2019 23:36:25 -0700 Subject: [PATCH 120/312] [time.hms.nonmembers] Finish rebase on std::format: rewrite hh_mm_ss operator<< in terms of format rather than using (removed) old formatting terminology. --- source/time.tex | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/source/time.tex b/source/time.tex index 3c03d4d9d1..02c8979f84 100644 --- a/source/time.tex +++ b/source/time.tex @@ -8037,12 +8037,12 @@ \begin{itemdescr} \pnum \effects -Outputs to \tcode{os} according to the format \tcode{"\%T"}\iref{time.format}. -If \tcode{hms.is_negative()}, the output is preceded with \tcode{'-'}. - -\pnum -\returns -\tcode{os}. +Equivalent to: +\begin{codeblock} +if (hms.is_negative()) + os << @\placeholder{STATICALLY-WIDEN}@("-"); +return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{:%T}"), hms); +\end{codeblock} \pnum \begin{example} From 584a87ec1d48862b9e68a269d0a5eb7b05d6999d Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 5 Aug 2019 13:57:50 -0700 Subject: [PATCH 121/312] [time.hms.nonmembers] Fix editorial error in hh_mm_ss operator<< (only stream to 'os' once). This formulation was proposed by Howard Hinnant on the lib reflector. --- source/time.tex | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/source/time.tex b/source/time.tex index 02c8979f84..e02751fe43 100644 --- a/source/time.tex +++ b/source/time.tex @@ -8039,9 +8039,10 @@ \effects Equivalent to: \begin{codeblock} -if (hms.is_negative()) - os << @\placeholder{STATICALLY-WIDEN}@("-"); -return os << format(os.getloc(), @\placeholder{STATICALLY-WIDEN}@("{:%T}"), hms); +return os << format(os.getloc(), + hms.is_negative() ? @\placeholder{STATICALLY-WIDEN}@("-{:%T}") + : @\placeholder{STATICALLY-WIDEN}@("{:%T}"), + abs(hms.to_duration())); \end{codeblock} \pnum From 30e601fef7715fde6c1d5164d9a80c0ee29486db Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 30 Jul 2019 00:16:49 +0200 Subject: [PATCH 122/312] P1614R2 Adding <=> to the library - Remove mention of 'spaceship' in subclause headings. - For the concept partially-ordered-with, use "model", not "satisfied". - Rework [cmp.object] to align with other library descriptions. - Add header synopsis entry for struct has_strong_structural_equality and add _v variable template. - Fix note in [container.requirements.general] p14. - Other comparisons for chrono::time_zone and chrono::link are not constexpr; existing text was misquoted. Do not make <=> constexpr. - Fix merge conflicts with P0784R7, which adds 'constexpr' to allocator operator!= (function deleted by this paper). --- source/algorithms.tex | 66 +--- source/containers.tex | 226 +++++-------- source/diagnostics.tex | 79 ++--- source/iostreams.tex | 111 +------ source/iterators.tex | 265 +++------------- source/lib-intro.tex | 90 ++---- source/locales.tex | 11 - source/numerics.tex | 37 ++- source/ranges.tex | 313 ++---------------- source/regex.tex | 607 +++-------------------------------- source/strings.tex | 185 ++--------- source/support.tex | 594 ++++++++++++++++++++++------------ source/threads.tex | 54 +--- source/time.tex | 321 +++++++------------ source/utilities.tex | 700 ++++++++++++----------------------------- 15 files changed, 1021 insertions(+), 2638 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 7d42b90c67..7133983702 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -2830,19 +2830,17 @@ Proj1 proj1 = {}, Proj2 proj2 = {}); } - // \ref{alg.3way}, three-way comparison algorithms - template - constexpr auto compare_3way(const T& a, const U& b); + // \ref{alg.three.way}, three-way comparison algorithms template constexpr auto - lexicographical_compare_3way(InputIterator1 b1, InputIterator1 e1, - InputIterator2 b2, InputIterator2 e2, - Cmp comp) + lexicographical_compare_three_way(InputIterator1 b1, InputIterator1 e1, + InputIterator2 b2, InputIterator2 e2, + Cmp comp) -> common_comparison_category_t; template constexpr auto - lexicographical_compare_3way(InputIterator1 b1, InputIterator1 e1, - InputIterator2 b2, InputIterator2 e2); + lexicographical_compare_three_way(InputIterator1 b1, InputIterator1 e1, + InputIterator2 b2, InputIterator2 e2); // \ref{alg.permutation.generators}, permutations template @@ -8367,46 +8365,15 @@ \end{note} \end{itemdescr} -\rSec2[alg.3way]{Three-way comparison algorithms} +\rSec2[alg.three.way]{Three-way comparison algorithms} -\indexlibrary{\idxcode{compare_3way}}% -\begin{itemdecl} -template constexpr auto compare_3way(const T& a, const U& b); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Compares two values and produces a result -of the strongest applicable comparison category type: -\begin{itemize} -\item - Returns \tcode{a <=> b} if that expression is well-formed. -\item - Otherwise, if the expressions \tcode{a == b} and \tcode{a < b} - are each well-formed and convertible to \tcode{bool}, - returns \tcode{strong_ordering::equal} - when \tcode{a == b} is \tcode{true}, - otherwise returns \tcode{strong_ordering::less} - when \tcode{a < b} is \tcode{true}, - and otherwise returns \tcode{strong_ordering::greater}. -\item - Otherwise, if the expression \tcode{a == b} - is well-formed and convertible to \tcode{bool}, - returns \tcode{strong_equality::equal} when \tcode{a == b} is \tcode{true}, - and otherwise returns \tcode{strong_equality::nonequal}. -\item - Otherwise, the function is defined as deleted. -\end{itemize} -\end{itemdescr} - -\indexlibrary{\idxcode{lexicographical_compare_3way}}% +\indexlibrary{\idxcode{lexicographical_compare_three_way}}% \begin{itemdecl} template constexpr auto - lexicographical_compare_3way(InputIterator1 b1, InputIterator1 e1, - InputIterator2 b2, InputIterator2 e2, - Cmp comp) + lexicographical_compare_three_way(InputIterator1 b1, InputIterator1 e1, + InputIterator2 b2, InputIterator2 e2, + Cmp comp) -> common_comparison_category_t; \end{itemdecl} @@ -8431,12 +8398,12 @@ \end{codeblock} \end{itemdescr} -\indexlibrary{\idxcode{lexicographical_compare_3way}}% +\indexlibrary{\idxcode{lexicographical_compare_three_way}}% \begin{itemdecl} template constexpr auto - lexicographical_compare_3way(InputIterator1 b1, InputIterator1 e1, - InputIterator2 b2, InputIterator2 e2); + lexicographical_compare_three_way(InputIterator1 b1, InputIterator1 e1, + InputIterator2 b2, InputIterator2 e2); \end{itemdecl} \begin{itemdescr} @@ -8444,10 +8411,7 @@ \effects Equivalent to: \begin{codeblock} -return lexicographical_compare_3way(b1, e1, b2, e2, - [](const auto& t, const auto& u) { - return compare_3way(t, u); - }); +return lexicographical_compare_three_way(b1, e1, b2, e2, compare_three_way()); \end{codeblock} \end{itemdescr} diff --git a/source/containers.tex b/source/containers.tex index b1f99b0770..f414d3249b 100644 --- a/source/containers.tex +++ b/source/containers.tex @@ -71,12 +71,12 @@ In Tables~\ref{tab:container.req}, \ref{tab:container.rev.req}, and \ref{tab:container.opt} -\tcode{X} denotes a container class containing objects of type -\tcode{T}, \tcode{a} and \tcode{b} -denote values of type \tcode{X}, \tcode{u} -denotes an identifier, \tcode{r} denotes -a non-const value of type \tcode{X}, and \tcode{rv} -denotes a non-const rvalue of type \tcode{X}. +\tcode{X} denotes a container class containing objects of type \tcode{T}, +\tcode{a} and \tcode{b} denote values of type \tcode{X}, +\tcode{i} and \tcode{j} denote values of type (possibly const) \tcode{X::iterator}, +\tcode{u} denotes an identifier, +\tcode{r} denotes a non-const value of type \tcode{X}, and +\tcode{rv} denotes a non-const rvalue of type \tcode{X}. \begin{libreqtab5} {Container requirements} @@ -211,6 +211,14 @@ & constant \\ \rowsep +\tcode{i <=> j} & + \tcode{strong_ordering} + if \tcode{X::iterator} meets the random access iterator requirements, + otherwise \tcode{strong_equality} & + & + & + constant \\ \rowsep + \tcode{a == b} & convertible to \tcode{bool} & \tcode{==} is an equivalence relation. @@ -293,6 +301,7 @@ i <= j i >= j i > j +i <=> j i - j \end{codeblock} where \tcode{i} and \tcode{j} denote objects of a container's \tcode{iterator} @@ -463,7 +472,7 @@ for some types of containers but not others. Those containers for which the listed operations are provided shall implement the semantics described in \tref{container.opt} unless otherwise stated. -If the iterators passed to \tcode{lexicographical_compare} +If the iterators passed to \tcode{lexicographical_compare_three_way} meet the constexpr iterator requirements\iref{iterator.requirements.general} then the operations described in \tref{container.opt} are implemented by constexpr functions. @@ -483,33 +492,20 @@ & & \chdr{semantics} & \chdr{pre-/post-condition} & \\ \capsep \endhead -\tcode{a < b} & - convertible to \tcode{bool} & - \tcode{lexicographical_compare( a.begin(), a.end(), b.begin(), b.end())} & - \expects \tcode{<} is defined for values of type (possibly \tcode{const}) \tcode{T}. \tcode{<} is a total ordering relationship. & - linear \\ \rowsep - -\tcode{a > b} & - convertible to \tcode{bool} & - \tcode{b < a} & - & - linear \\ \rowsep - -\tcode{a <= b} & - convertible to \tcode{bool} & - \tcode{!(a > b)} & - & - linear \\ \rowsep - -\tcode{a >= b} & - convertible to \tcode{bool} & - \tcode{!(a < b)} & - & +\tcode{a <=> b} & + \tcode{\placeholdernc{synth-three-\brk{}way-result}\brk{}} & + \tcode{lexicographical_compare_three_way(a.begin(), a.end(), + b.begin(), b.end(), \placeholdernc{synth-three-way})} & + \expects + Either \tcode{<=>} is defined for values of type (possibly const) \tcode{T}, + or \tcode{<} is defined for values of type (possibly const) \tcode{T} and + \tcode{<} is a total ordering relationship. & linear \\ \end{libreqtab5} \begin{note} -The algorithm \tcode{lexicographical_compare()} is defined in \ref{algorithms}. +The algorithm \tcode{lexicographical_compare_three_way} +is defined in \ref{algorithms}. \end{note} \pnum @@ -3149,18 +3145,6 @@ // \ref{array}, class template \tcode{array} template struct array; - template - constexpr bool operator==(const array& x, const array& y); - template - constexpr bool operator!=(const array& x, const array& y); - template - constexpr bool operator< (const array& x, const array& y); - template - constexpr bool operator> (const array& x, const array& y); - template - constexpr bool operator<=(const array& x, const array& y); - template - constexpr bool operator>=(const array& x, const array& y); template constexpr void swap(array& x, array& y) noexcept(noexcept(x.swap(y))); @@ -3196,15 +3180,8 @@ template bool operator==(const deque& x, const deque& y); template - bool operator!=(const deque& x, const deque& y); - template - bool operator< (const deque& x, const deque& y); - template - bool operator> (const deque& x, const deque& y); - template - bool operator<=(const deque& x, const deque& y); - template - bool operator>=(const deque& x, const deque& y); + @\placeholder{synth-three-way-result}@ operator<=>(const deque& x, + @\itcorr@ const deque& y); template void swap(deque& x, deque& y) @@ -3236,15 +3213,8 @@ template bool operator==(const forward_list& x, const forward_list& y); template - bool operator!=(const forward_list& x, const forward_list& y); - template - bool operator< (const forward_list& x, const forward_list& y); - template - bool operator> (const forward_list& x, const forward_list& y); - template - bool operator<=(const forward_list& x, const forward_list& y); - template - bool operator>=(const forward_list& x, const forward_list& y); + @\placeholder{synth-three-way-result}@ operator<=>(const forward_list& x, + @\itcorr@ const forward_list& y); template void swap(forward_list& x, forward_list& y) @@ -3276,15 +3246,8 @@ template bool operator==(const list& x, const list& y); template - bool operator!=(const list& x, const list& y); - template - bool operator< (const list& x, const list& y); - template - bool operator> (const list& x, const list& y); - template - bool operator<=(const list& x, const list& y); - template - bool operator>=(const list& x, const list& y); + @\placeholder{synth-three-way-result}@ operator<=>(const list& x, + @\itcorr@ const list& y); template void swap(list& x, list& y) @@ -3316,15 +3279,8 @@ template bool operator==(const vector& x, const vector& y); template - bool operator!=(const vector& x, const vector& y); - template - bool operator< (const vector& x, const vector& y); - template - bool operator> (const vector& x, const vector& y); - template - bool operator<=(const vector& x, const vector& y); - template - bool operator>=(const vector& x, const vector& y); + @\placeholder{synth-three-way-result}@ operator<=>(const vector& x, + @\itcorr@ const vector& y); template void swap(vector& x, vector& y) @@ -3445,6 +3401,10 @@ constexpr T * data() noexcept; constexpr const T * data() const noexcept; + + friend constexpr bool operator==(const array&, const array&) = default; + friend constexpr @\placeholder{synth-three-way-result}@ + operator<=>(const array&, const array&); }; template @@ -6138,20 +6098,9 @@ bool operator==(const map& x, const map& y); template - bool operator!=(const map& x, - const map& y); - template - bool operator< (const map& x, - const map& y); - template - bool operator> (const map& x, - const map& y); - template - bool operator<=(const map& x, - const map& y); - template - bool operator>=(const map& x, - const map& y); + @\placeholder{synth-three-way-result}@> + operator<=>(const map& x, + const map& y); template void swap(map& x, @@ -6170,20 +6119,9 @@ bool operator==(const multimap& x, const multimap& y); template - bool operator!=(const multimap& x, - const multimap& y); - template - bool operator< (const multimap& x, - const multimap& y); - template - bool operator> (const multimap& x, - const multimap& y); - template - bool operator<=(const multimap& x, - const multimap& y); - template - bool operator>=(const multimap& x, - const multimap& y); + @\placeholder{synth-three-way-result}@> + operator<=>(const multimap& x, + const multimap& y); template void swap(multimap& x, @@ -6221,20 +6159,8 @@ bool operator==(const set& x, const set& y); template - bool operator!=(const set& x, - const set& y); - template - bool operator< (const set& x, - const set& y); - template - bool operator> (const set& x, - const set& y); - template - bool operator<=(const set& x, - const set& y); - template - bool operator>=(const set& x, - const set& y); + @\placeholder{synth-three-way-result}@ operator<=>(const set& x, + @\itcorr@ const set& y); template void swap(set& x, @@ -6252,20 +6178,8 @@ bool operator==(const multiset& x, const multiset& y); template - bool operator!=(const multiset& x, - const multiset& y); - template - bool operator< (const multiset& x, - const multiset& y); - template - bool operator> (const multiset& x, - const multiset& y); - template - bool operator<=(const multiset& x, - const multiset& y); - template - bool operator>=(const multiset& x, - const multiset& y); + @\placeholder{synth-three-way-result}@ operator<=>(const multiset& x, + @\itcorr@ const multiset& y); template void swap(multiset& x, @@ -7749,16 +7663,10 @@ template bool operator==(const unordered_map& a, const unordered_map& b); - template - bool operator!=(const unordered_map& a, - const unordered_map& b); template bool operator==(const unordered_multimap& a, const unordered_multimap& b); - template - bool operator!=(const unordered_multimap& a, - const unordered_multimap& b); template void swap(unordered_map& x, @@ -7821,16 +7729,10 @@ template bool operator==(const unordered_set& a, const unordered_set& b); - template - bool operator!=(const unordered_set& a, - const unordered_set& b); template bool operator==(const unordered_multiset& a, const unordered_multiset& b); - template - bool operator!=(const unordered_multiset& a, - const unordered_multiset& b); template void swap(unordered_set& x, @@ -9583,6 +9485,9 @@ bool operator<=(const queue& x, const queue& y); template bool operator>=(const queue& x, const queue& y); + template + compare_three_way_result_t + operator<=>(const queue& x, const queue& y); template void swap(queue& x, queue& y) noexcept(noexcept(x.swap(y))); @@ -9622,6 +9527,9 @@ bool operator<=(const stack& x, const stack& y); template bool operator>=(const stack& x, const stack& y); + template + compare_three_way_result_t + operator<=>(const stack& x, const stack& y); template void swap(stack& x, stack& y) noexcept(noexcept(x.swap(y))); @@ -9855,6 +9763,19 @@ \tcode{x.c >= y.c}. \end{itemdescr} +\indexlibrary{\idxcode{operator<=>}!\idxcode{queue}}% +\begin{itemdecl} +template + compare_three_way_result_t + operator<=>(const queue& x, const queue& y); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{x.c <=> y.c}. +\end{itemdescr} + \rSec3[queue.special]{Specialized algorithms} \indexlibrarymember{swap}{queue}% @@ -10402,6 +10323,19 @@ \tcode{x.c >= y.c}. \end{itemdescr} +\indexlibrary{\idxcode{operator<=>}!\idxcode{stack}}% +\begin{itemdecl} +template + compare_three_way_result_t + operator<=>(const stack& x, const stack& y); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{x.c <=> y.c}. +\end{itemdescr} + \rSec3[stack.special]{Specialized algorithms} \indexlibrarymember{swap}{stack}% diff --git a/source/diagnostics.tex b/source/diagnostics.tex index 63dfcbd9d2..8ef0376b6d 100644 --- a/source/diagnostics.tex +++ b/source/diagnostics.tex @@ -799,14 +799,9 @@ // \ref{syserr.compare}, comparison functions bool operator==(const error_code& lhs, const error_code& rhs) noexcept; bool operator==(const error_code& lhs, const error_condition& rhs) noexcept; - bool operator==(const error_condition& lhs, const error_code& rhs) noexcept; bool operator==(const error_condition& lhs, const error_condition& rhs) noexcept; - bool operator!=(const error_code& lhs, const error_code& rhs) noexcept; - bool operator!=(const error_code& lhs, const error_condition& rhs) noexcept; - bool operator!=(const error_condition& lhs, const error_code& rhs) noexcept; - bool operator!=(const error_condition& lhs, const error_condition& rhs) noexcept; - bool operator< (const error_code& lhs, const error_code& rhs) noexcept; - bool operator< (const error_condition& lhs, const error_condition& rhs) noexcept; + strong_ordering operator<=>(const error_code& lhs, const error_code& rhs) noexcept; + strong_ordering operator<=>(const error_condition& lhs, const error_condition& rhs) noexcept; // \ref{syserr.hash}, hash support template struct hash; @@ -868,8 +863,7 @@ virtual string message(int ev) const = 0; bool operator==(const error_category& rhs) const noexcept; - bool operator!=(const error_category& rhs) const noexcept; - bool operator< (const error_category& rhs) const noexcept; + strong_ordering operator<=>(const error_category& rhs) const noexcept; }; const error_category& generic_category() noexcept; @@ -942,26 +936,18 @@ \returns \tcode{this == \&rhs}. \end{itemdescr} -\indexlibrarymember{operator"!=}{error_category}% +\indexlibrarymember{operator<=>}{error_category}% \begin{itemdecl} -bool operator!=(const error_category& rhs) const noexcept; +strong_ordering operator<=>(const error_category& rhs) const noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{!(*this == rhs)}. -\end{itemdescr} - -\indexlibrarymember{operator<}{error_category}% -\begin{itemdecl} -bool operator<(const error_category& rhs) const noexcept; -\end{itemdecl} +\returns \tcode{compare_three_way()(this, \&rhs)}. -\begin{itemdescr} -\pnum -\returns \tcode{less()(this, \&rhs)}. - -\begin{note} \tcode{less}\iref{comparisons} provides a total ordering for pointers. \end{note} +\begin{note} +\tcode{compare_three_way}\iref{cmp.object} provides a total ordering for pointers. +\end{note} \end{itemdescr} \rSec3[syserr.errcat.derived]{Program-defined classes derived from \tcode{error_category}} @@ -1446,20 +1432,6 @@ \end{codeblock} \end{itemdescr} -\indexlibrarymember{operator==}{error_condition}% -\indexlibrarymember{operator==}{error_code}% -\begin{itemdecl} -bool operator==(const error_condition& lhs, const error_code& rhs) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\begin{codeblock} -rhs.category().equivalent(rhs.value(), lhs) || lhs.category().equivalent(rhs, lhs.value()) -\end{codeblock} -\end{itemdescr} - \indexlibrarymember{operator==}{error_condition}% \begin{itemdecl} bool operator==(const error_condition& lhs, const error_condition& rhs) noexcept; @@ -1473,45 +1445,32 @@ \end{codeblock} \end{itemdescr} -\indexlibrarymember{operator"!=}{error_code}% -\indexlibrarymember{operator"!=}{error_condition}% +\indexlibrarymember{operator<=>}{error_code}% \begin{itemdecl} -bool operator!=(const error_code& lhs, const error_code& rhs) noexcept; -bool operator!=(const error_code& lhs, const error_condition& rhs) noexcept; -bool operator!=(const error_condition& lhs, const error_code& rhs) noexcept; -bool operator!=(const error_condition& lhs, const error_condition& rhs) noexcept; +strong_ordering operator<=>(const error_code& lhs, const error_code& rhs) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{!(lhs == rhs)}. -\end{itemdescr} - -\indexlibrarymember{operator<}{error_code}% -\begin{itemdecl} -bool operator<(const error_code& lhs, const error_code& rhs) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns +\effects +Equivalent to: \begin{codeblock} -lhs.category() < rhs.category() || -(lhs.category() == rhs.category() && lhs.value() < rhs.value()) +if (auto c = lhs.category() <=> rhs.category(); c != 0) return c; +return lhs.value() <=> rhs.value(); \end{codeblock} \end{itemdescr} -\indexlibrarymember{operator<}{error_condition}% +\indexlibrarymember{operator<=>}{error_condition}% \begin{itemdecl} -bool operator<(const error_condition& lhs, const error_condition& rhs) noexcept; +strong_ordering operator<=>(const error_condition& lhs, const error_condition& rhs) noexcept; \end{itemdecl} \begin{itemdescr} \pnum \returns \begin{codeblock} -lhs.category() < rhs.category() || -(lhs.category() == rhs.category() && lhs.value() < rhs.value()) +if (auto c = lhs.category() <=> rhs.category(); c != 0) return c; +return lhs.value() <=> rhs.value(); \end{codeblock} \end{itemdescr} diff --git a/source/iostreams.tex b/source/iostreams.tex index 543b601772..31e5c81b06 100644 --- a/source/iostreams.tex +++ b/source/iostreams.tex @@ -10848,6 +10848,8 @@ uintmax_t capacity; uintmax_t free; uintmax_t available; + + friend bool operator==(const space_info&, const space_info&) = default; }; // \ref{fs.enum}, enumerations @@ -11197,11 +11199,7 @@ // \ref{fs.path.nonmember}, non-member operators friend bool operator==(const path& lhs, const path& rhs) noexcept; - friend bool operator!=(const path& lhs, const path& rhs) noexcept; - friend bool operator< (const path& lhs, const path& rhs) noexcept; - friend bool operator<=(const path& lhs, const path& rhs) noexcept; - friend bool operator> (const path& lhs, const path& rhs) noexcept; - friend bool operator>=(const path& lhs, const path& rhs) noexcept; + friend strong_ordering operator<=>(const path& lhs, const path& rhs) noexcept; friend path operator/ (const path& lhs, const path& rhs); @@ -12793,7 +12791,7 @@ \begin{itemdescr} \pnum -\returns \tcode{!(lhs < rhs) \&\& !(rhs < lhs)}. +\returns \tcode{lhs.compare(rhs) == 0}. \indextext{path equality} \pnum @@ -12813,54 +12811,14 @@ file'', and choose the appropriate function accordingly. \end{note} \end{itemdescr} -\indexlibrarymember{operator"!=}{path}% -\begin{itemdecl} -friend bool operator!=(const path& lhs, const path& rhs) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(lhs == rhs)}. -\end{itemdescr} - -\indexlibrarymember{operator<}{path}% -\begin{itemdecl} -friend bool operator< (const path& lhs, const path& rhs) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{lhs.compare(rhs) < 0}. -\end{itemdescr} - -\indexlibrarymember{operator<=}{path}% -\begin{itemdecl} -friend bool operator<=(const path& lhs, const path& rhs) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(rhs < lhs)}. -\end{itemdescr} - -\indexlibrarymember{operator>}{path}% -\begin{itemdecl} -friend bool operator> (const path& lhs, const path& rhs) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{rhs < lhs}. -\end{itemdescr} - -\indexlibrarymember{operator>=}{path}% +\indexlibrarymember{operator<=>}{path}% \begin{itemdecl} -friend bool operator>=(const path& lhs, const path& rhs) noexcept; +friend strong_ordering operator<=>(const path& lhs, const path& rhs) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{!(lhs < rhs)}. +\returns \tcode{lhs.compare(rhs) <=> 0}. \end{itemdescr} \indexlibrarymember{operator/}{path}% @@ -13254,6 +13212,9 @@ // \ref{fs.file.status.obs}, observers file_type type() const noexcept; perms permissions() const noexcept; + + friend bool operator==(const file_status& lhs, const file_status& rhs) noexcept + { return lhs.type() == rhs.type() && lhs.permissions() == rhs.permissions(); } }; } \end{codeblock} @@ -13379,11 +13340,7 @@ file_status symlink_status(error_code& ec) const noexcept; bool operator==(const directory_entry& rhs) const noexcept; - bool operator!=(const directory_entry& rhs) const noexcept; - bool operator< (const directory_entry& rhs) const noexcept; - bool operator> (const directory_entry& rhs) const noexcept; - bool operator<=(const directory_entry& rhs) const noexcept; - bool operator>=(const directory_entry& rhs) const noexcept; + strong_ordering operator<=>(const directory_entry& rhs) const noexcept; private: filesystem::path pathobject; // \expos @@ -13755,54 +13712,14 @@ \returns \tcode{pathobject == rhs.pathobject}. \end{itemdescr} -\indexlibrarymember{operator"!=}{directory_entry}% -\begin{itemdecl} -bool operator!=(const directory_entry& rhs) const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{pathobject != rhs.pathobject}. -\end{itemdescr} - -\indexlibrarymember{operator<}{directory_entry}% -\begin{itemdecl} -bool operator< (const directory_entry& rhs) const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{pathobject < rhs.pathobject}. -\end{itemdescr} - -\indexlibrarymember{operator>}{directory_entry}% -\begin{itemdecl} -bool operator> (const directory_entry& rhs) const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{pathobject > rhs.pathobject}. -\end{itemdescr} - -\indexlibrarymember{operator<=}{directory_entry}% -\begin{itemdecl} -bool operator<=(const directory_entry& rhs) const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{pathobject <= rhs.pathobject}. -\end{itemdescr} - -\indexlibrarymember{operator>=}{directory_entry}% +\indexlibrarymember{operator<=>}{directory_entry}% \begin{itemdecl} -bool operator>=(const directory_entry& rhs) const noexcept; +strong_ordering operator<=>(const directory_entry& rhs) const noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{pathobject >= rhs.pathobject}. +\returns \tcode{pathobject <=> rhs.pathobject}. \end{itemdescr} \rSec2[fs.class.directory.iterator]{Class \tcode{directory_iterator}} diff --git a/source/iterators.tex b/source/iterators.tex index 54a0a2e6eb..6cb29652b1 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -292,6 +292,10 @@ constexpr bool operator>=( const reverse_iterator& x, const reverse_iterator& y); + template Iterator2> + constexpr compare_three_way_result_t + operator<=>(const reverse_iterator& x, + const reverse_iterator& y); template constexpr auto operator-( @@ -331,9 +335,6 @@ template constexpr bool operator==( const move_iterator& x, const move_iterator& y); - template - constexpr bool operator!=( - const move_iterator& x, const move_iterator& y); template constexpr bool operator<( const move_iterator& x, const move_iterator& y); @@ -346,6 +347,10 @@ template constexpr bool operator>=( const move_iterator& x, const move_iterator& y); + template Iterator2> + constexpr compare_three_way_result_t + operator<=>(const move_iterator& x, + const move_iterator& y); template constexpr auto operator-( @@ -395,9 +400,6 @@ template bool operator==(const istream_iterator& x, const istream_iterator& y); - template - bool operator!=(const istream_iterator& x, - const istream_iterator& y); template> class ostream_iterator; @@ -407,9 +409,6 @@ template bool operator==(const istreambuf_iterator& a, const istreambuf_iterator& b); - template - bool operator!=(const istreambuf_iterator& a, - const istreambuf_iterator& b); template> class ostreambuf_iterator; @@ -3395,6 +3394,26 @@ \tcode{x.base() <= y.base()}. \end{itemdescr} +\indexlibrarymember{operator<=>}{reverse_iterator}% +\begin{itemdecl} +template Iterator2> + constexpr compare_three_way_result_t + operator<=>(const reverse_iterator& x, + const reverse_iterator& y); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{y.base() <=> x.base()}. + +\pnum +\begin{note} +The argument order in the \returns element is reversed +because this is a reverse iterator. +\end{note} +\end{itemdescr} + \rSec3[reverse.iter.nonmember]{Non-member functions} \indexlibrarymember{operator-}{reverse_iterator}% @@ -3944,15 +3963,6 @@ template S> friend constexpr bool operator==(const move_iterator& x, const move_sentinel& y); - template S> - friend constexpr bool - operator==(const move_sentinel& x, const move_iterator& y); - template S> - friend constexpr bool - operator!=(const move_iterator& x, const move_sentinel& y); - template S> - friend constexpr bool - operator!=(const move_sentinel& x, const move_iterator& y); template S> friend constexpr iter_difference_t operator-(const move_sentinel& x, const move_iterator& y); @@ -4208,9 +4218,6 @@ template S> friend constexpr bool operator==(const move_iterator& x, const move_sentinel& y); -template S> - friend constexpr bool operator==(const move_sentinel& x, - const move_iterator& y); \end{itemdecl} \begin{itemdescr} @@ -4223,29 +4230,6 @@ \returns \tcode{x.base() == y.base()}. \end{itemdescr} -\indexlibrarymember{operator"!=}{move_iterator}% -\begin{itemdecl} -template - constexpr bool operator!=(const move_iterator& x, - const move_iterator& y); -template S> - friend constexpr bool operator!=(const move_iterator& x, - const move_sentinel& y); -template S> - friend constexpr bool operator!=(const move_sentinel& x, - const move_iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\constraints -\tcode{x.base() == y.base()} is well-formed and -convertible to \tcode{bool}. - -\pnum -\returns \tcode{!(x == y)}. -\end{itemdescr} - \indexlibrarymember{operator<}{move_iterator}% \begin{itemdecl} template @@ -4310,6 +4294,20 @@ \returns \tcode{!(x < y)}. \end{itemdescr} +\indexlibrarymember{operator<=>}{move_iterator}% +\begin{itemdecl} +template Iterator2> + constexpr compare_three_way_result_t + operator<=>(const move_iterator& x, + const move_iterator& y); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{x.base() <=> y.base()}. +\end{itemdescr} + \rSec3[move.iter.nonmember]{Non-member functions} \indexlibrarymember{operator-}{move_iterator}% @@ -4545,10 +4543,6 @@ requires Sentinel && EqualityComparableWith friend bool operator==( const common_iterator& x, const common_iterator& y); - template S2> - requires Sentinel - friend bool operator!=( - const common_iterator& x, const common_iterator& y); template I2, SizedSentinel S2> requires SizedSentinel @@ -4828,19 +4822,6 @@ $i$ is \tcode{x.v_.index()} and $j$ is \tcode{y.v_.index()}. \end{itemdescr} -\indexlibrarymember{operator"!=}{common_iterator}% -\begin{itemdecl} -template S2> - requires Sentinel -friend bool operator!=( - const common_iterator& x, const common_iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - \indexlibrarymember{operator-}{common_iterator}% \begin{itemdecl} template I2, SizedSentinel S2> @@ -5006,28 +4987,9 @@ const counted_iterator& x, const counted_iterator& y); friend constexpr bool operator==( const counted_iterator& x, default_sentinel_t); - friend constexpr bool operator==( - default_sentinel_t, const counted_iterator& x); - - template I2> - friend constexpr bool operator!=( - const counted_iterator& x, const counted_iterator& y); - friend constexpr bool operator!=( - const counted_iterator& x, default_sentinel_t y); - friend constexpr bool operator!=( - default_sentinel_t x, const counted_iterator& y); template I2> - friend constexpr bool operator<( - const counted_iterator& x, const counted_iterator& y); - template I2> - friend constexpr bool operator>( - const counted_iterator& x, const counted_iterator& y); - template I2> - friend constexpr bool operator<=( - const counted_iterator& x, const counted_iterator& y); - template I2> - friend constexpr bool operator>=( + friend constexpr strong_ordering operator<=>( const counted_iterator& x, const counted_iterator& y); friend constexpr iter_rvalue_reference_t iter_move(const counted_iterator& i) @@ -5373,8 +5335,6 @@ \begin{itemdecl} friend constexpr bool operator==( const counted_iterator& x, default_sentinel_t); -friend constexpr bool operator==( - default_sentinel_t, const counted_iterator& x); \end{itemdecl} \begin{itemdescr} @@ -5382,26 +5342,10 @@ \effects Equivalent to: \tcode{return x.length == 0;} \end{itemdescr} -\indexlibrarymember{operator"!=}{counted_iterator}% +\indexlibrarymember{operator<=>}{counted_iterator}% \begin{itemdecl} template I2> - friend constexpr bool operator!=( - const counted_iterator& x, const counted_iterator& y); -friend constexpr bool operator!=( - const counted_iterator& x, default_sentinel_t y); -friend constexpr bool operator!=( - default_sentinel_t x, const counted_iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - -\indexlibrarymember{operator<}{counted_iterator}% -\begin{itemdecl} -template I2> - friend constexpr bool operator<( + friend constexpr strong_ordering operator<=>( const counted_iterator& x, const counted_iterator& y); \end{itemdecl} @@ -5412,51 +5356,16 @@ elements of the same sequence\iref{counted.iterator}. \pnum -\effects Equivalent to: \tcode{return y.length < x.length;} +\effects +Equivalent to: \tcode{return y.length <=> x.length;} \pnum \begin{note} -The argument order in the \effects{} element is reversed +The argument order in the \effects element is reversed because \tcode{length} counts down, not up. \end{note} \end{itemdescr} -\indexlibrarymember{operator>}{counted_iterator}% -\begin{itemdecl} -template I2> - friend constexpr bool operator>( - const counted_iterator& x, const counted_iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return y < x;} -\end{itemdescr} - -\indexlibrarymember{operator<=}{counted_iterator}% -\begin{itemdecl} -template I2> - friend constexpr bool operator<=( - const counted_iterator& x, const counted_iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(y < x);} -\end{itemdescr} - -\indexlibrarymember{operator>=}{counted_iterator}% -\begin{itemdecl} -template I2> - friend constexpr bool operator>=( - const counted_iterator& x, const counted_iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x < y);} -\end{itemdescr} - \rSec3[counted.iter.cust]{Customizations} \indexlibrarymember{iter_move}{counted_iterator}% @@ -5509,51 +5418,17 @@ conditional branch. \end{example} +\indexlibrarymember{operator==}{unreachable_sentinel_t}% \begin{codeblock} namespace std { struct unreachable_sentinel_t { template - friend constexpr bool operator==(unreachable_sentinel_t, const I&) noexcept; - template - friend constexpr bool operator==(const I&, unreachable_sentinel_t) noexcept; - template - friend constexpr bool operator!=(unreachable_sentinel_t, const I&) noexcept; - template - friend constexpr bool operator!=(const I&, unreachable_sentinel_t) noexcept; + friend constexpr bool operator==(unreachable_sentinel_t, const I&) noexcept + { return false; } }; } \end{codeblock} -\rSec3[unreachable.sentinel.cmp]{Comparisons} - -\indexlibrary{\idxcode{operator==}!\idxcode{unreachable_sentinel_t}}% -\indexlibrary{\idxcode{unreachable_sentinel_t}!\idxcode{operator==}}% -\begin{itemdecl} -template - friend constexpr bool operator==(unreachable_sentinel_t, const I&) noexcept; -template - friend constexpr bool operator==(const I&, unreachable_sentinel_t) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{false}. -\end{itemdescr} - -\indexlibrary{\idxcode{operator"!=}!\idxcode{unreachable_sentinel_t}}% -\indexlibrary{\idxcode{unreachable_sentinel_t}!\idxcode{operator"!=}}% -\begin{itemdecl} -template - friend constexpr bool operator!=(unreachable_sentinel_t, const I&) noexcept; -template - friend constexpr bool operator!=(const I&, unreachable_sentinel_t) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{true}. -\end{itemdescr} - \rSec1[stream.iterators]{Stream iterators} \pnum @@ -5611,9 +5486,6 @@ istream_iterator operator++(int); friend bool operator==(const istream_iterator& i, default_sentinel_t); - friend bool operator==(default_sentinel_t, const istream_iterator& i); - friend bool operator!=(const istream_iterator& x, default_sentinel_t y); - friend bool operator!=(default_sentinel_t x, const istream_iterator& y); private: basic_istream* in_stream; // \expos @@ -5778,7 +5650,6 @@ \indexlibrarymember{operator==}{istream_iterator}% \begin{itemdecl} -friend bool operator==(default_sentinel_t, const istream_iterator& i); friend bool operator==(const istream_iterator& i, default_sentinel_t); \end{itemdecl} @@ -5788,21 +5659,6 @@ \tcode{!i.in_stream}. \end{itemdescr} -\indexlibrarymember{operator"!=}{istream_iterator}% -\begin{itemdecl} -template - bool operator!=(const istream_iterator& x, - const istream_iterator& y); -friend bool operator!=(default_sentinel_t x, const istream_iterator& y); -friend bool operator!=(const istream_iterator& x, default_sentinel_t y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{!(x == y)} -\end{itemdescr} - \rSec2[ostream.iterator]{Class template \tcode{ostream_iterator}} \pnum @@ -5992,10 +5848,7 @@ @\placeholder{proxy}@ operator++(int); bool equal(const istreambuf_iterator& b) const; - friend bool operator==(default_sentinel_t s, const istreambuf_iterator& i); friend bool operator==(const istreambuf_iterator& i, default_sentinel_t s); - friend bool operator!=(default_sentinel_t a, const istreambuf_iterator& b); - friend bool operator!=(const istreambuf_iterator& a, default_sentinel_t b); private: streambuf_type* sbuf_; // \expos @@ -6162,7 +6015,6 @@ \indexlibrarymember{operator==}{istreambuf_iterator}% \begin{itemdecl} -friend bool operator==(default_sentinel_t s, const istreambuf_iterator& i); friend bool operator==(const istreambuf_iterator& i, default_sentinel_t s); \end{itemdecl} @@ -6171,21 +6023,6 @@ \returns \tcode{i.equal(s)}. \end{itemdescr} -\indexlibrarymember{operator"!=}{istreambuf_iterator}% -\begin{itemdecl} -template - bool operator!=(const istreambuf_iterator& a, - const istreambuf_iterator& b); -friend bool operator!=(default_sentinel_t a, const istreambuf_iterator& b); -friend bool operator!=(const istreambuf_iterator& a, default_sentinel_t b); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{!a.equal(b)}. -\end{itemdescr} - \rSec2[ostreambuf.iterator]{Class template \tcode{ostreambuf_iterator}} \pnum diff --git a/source/lib-intro.tex b/source/lib-intro.tex index f36e1c91f1..1f6da850ba 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -707,13 +707,32 @@ The declaration of such a function is followed by a comment ending in \expos. \pnum -The following function is defined for exposition only +The following are defined for exposition only to aid in the specification of the library: \indexlibrary{decay-copy@\tcode{\placeholder{decay-copy}}}% \begin{codeblock} template constexpr decay_t @\placeholdernc{decay-copy}@(T&& v) noexcept(is_nothrow_convertible_v>) // \expos { return std::forward(v); } + +constexpr auto @\placeholdernc{synth-three-way}@ = + [](const T& t, const U& u) + requires requires { + { t < u } -> bool; + { u < t } -> bool; + } + { + if constexpr (ThreeWayComparableWith) { + return t <=> u; + } else { + if (t < u) return weak_ordering::less; + if (u < t) return weak_ordering::greater; + return weak_ordering::equivalent; + } + }; + +template +using @\placeholdernc{synth-three-way-result}@ = decltype(@\placeholdernc{synth-three-way}@(declval(), declval())); \end{codeblock} \rSec3[type.descriptions]{Type descriptions} @@ -1040,75 +1059,6 @@ the implementation provides explicit definitions for such member function signatures, or for virtual destructors that can be generated by default. -\rSec3[operators]{Operators} - -\pnum -In this library, whenever a declaration is provided for an \tcode{operator!=}, -\tcode{operator>}, \tcode{operator<=}, or \tcode{operator>=} -for a type \tcode{T}, -its requirements and semantics are as follows, -unless explicitly specified otherwise. - -\indexlibrary{\idxcode{operator"!=}}% -\begin{itemdecl} -bool operator!=(const T& x, const T& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\requires -Type \tcode{T} is \oldconcept{EqualityComparable} (\tref{cpp17.equalitycomparable}). - -\pnum -\returns -\tcode{!(x == y)}. -\end{itemdescr} - -\indexlibrary{\idxcode{operator>}}% -\begin{itemdecl} -bool operator>(const T& x, const T& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\requires -Type \tcode{T} is \oldconcept{LessThanComparable} (\tref{cpp17.lessthancomparable}). - -\pnum -\returns -\tcode{y < x}. -\end{itemdescr} - -\indexlibrary{\idxcode{operator<=}}% -\begin{itemdecl} -bool operator<=(const T& x, const T& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\requires -Type \tcode{T} is \oldconcept{LessThanComparable} (\tref{cpp17.lessthancomparable}). - -\pnum -\returns -\tcode{!(y < x)}. -\end{itemdescr} - -\indexlibrary{\idxcode{operator>=}}% -\begin{itemdecl} -bool operator>=(const T& x, const T& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\requires -Type \tcode{T} is \oldconcept{LessThanComparable} (\tref{cpp17.lessthancomparable}). - -\pnum -\returns -\tcode{!(x < y)}. -\end{itemdescr} - \rSec3[objects.within.classes]{Private members} \pnum diff --git a/source/locales.tex b/source/locales.tex index be18eb747b..11a2836e83 100644 --- a/source/locales.tex +++ b/source/locales.tex @@ -147,7 +147,6 @@ basic_string name() const; bool operator==(const locale& other) const; - bool operator!=(const locale& other) const; template bool operator()(const basic_string& s1, @@ -808,16 +807,6 @@ otherwise. \end{itemdescr} -\indexlibrarymember{locale}{operator"!=}% -\begin{itemdecl} -bool operator!=(const locale& other) const; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(*this == other)}. -\end{itemdescr} - \indexlibrarymember{locale}{operator()}% \begin{itemdecl} template diff --git a/source/numerics.tex b/source/numerics.tex index 9d580ac343..06423d91e3 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -248,11 +248,6 @@ template constexpr bool operator==(const complex&, const complex&); template constexpr bool operator==(const complex&, const T&); - template constexpr bool operator==(const T&, const complex&); - - template constexpr bool operator!=(const complex&, const complex&); - template constexpr bool operator!=(const complex&, const T&); - template constexpr bool operator!=(const T&, const complex&); template basic_istream& operator>>(basic_istream&, complex&); @@ -740,7 +735,6 @@ \begin{itemdecl} template constexpr bool operator==(const complex& lhs, const complex& rhs); template constexpr bool operator==(const complex& lhs, const T& rhs); -template constexpr bool operator==(const T& lhs, const complex& rhs); \end{itemdecl} \begin{itemdescr} @@ -757,19 +751,6 @@ arguments. \end{itemdescr} -\indexlibrarymember{operator"!=}{complex}% -\begin{itemdecl} -template constexpr bool operator!=(const complex& lhs, const complex& rhs); -template constexpr bool operator!=(const complex& lhs, const T& rhs); -template constexpr bool operator!=(const T& lhs, const complex& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{rhs.real() != lhs.real() || rhs.imag() != lhs.imag()}. -\end{itemdescr} - \indexlibrarymember{operator>>}{complex}% \begin{itemdecl} template @@ -7927,6 +7908,8 @@ size_t start() const; size_t size() const; size_t stride() const; + + friend bool operator==(const slice& x, const slice& y); }; } \end{codeblock} @@ -7988,6 +7971,22 @@ \complexity Constant time. \end{itemdescr} +\rSec3[slice.ops]{Operators} + +\indexlibrarymember{stride}{slice}% +\begin{itemdecl} +friend bool operator==(const slice& x, const slice& y); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: +\begin{codeblock} +return x.start() == y.start() && x.size() == y.size() && x.stride() == y.stride(); +\end{codeblock} +\end{itemdescr} + \rSec2[template.slice.array]{Class template \tcode{slice_array}} \rSec3[template.slice.array.overview]{Overview} diff --git a/source/ranges.tex b/source/ranges.tex index be8cd2b485..b65323b009 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1910,8 +1910,6 @@ friend constexpr bool operator==(const iterator& x, const iterator& y) requires EqualityComparable; - friend constexpr bool operator!=(const iterator& x, const iterator& y) - requires EqualityComparable; friend constexpr bool operator<(const iterator& x, const iterator& y) requires StrictTotallyOrdered; @@ -1921,6 +1919,9 @@ requires StrictTotallyOrdered; friend constexpr bool operator>=(const iterator& x, const iterator& y) requires StrictTotallyOrdered; + friend constexpr compare_three_way_result_t operator<=>( + const iterator& x, const iterator& y) + requires StrictTotallyOrdered && ThreeWayComparable; friend constexpr iterator operator+(iterator i, difference_type n) requires @\placeholdernc{Advanceable}@; @@ -2098,17 +2099,6 @@ \effects Equivalent to: \tcode{return x.value_ == y.value_;} \end{itemdescr} -\indexlibrary{\idxcode{operator"!=}!\idxcode{iota_view::iterator}} -\begin{itemdecl} -friend constexpr bool operator!=(const iterator& x, const iterator& y) - requires EqualityComparable; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - \indexlibrary{\idxcode{operator<}!\idxcode{iota_view::iterator}} \begin{itemdecl} friend constexpr bool operator<(const iterator& x, const iterator& y) @@ -2153,6 +2143,19 @@ \effects Equivalent to: \tcode{return !(x < y);} \end{itemdescr} +\indexlibrary{\idxcode{operator<=>}!\idxcode{iota_view::iterator}} +\begin{itemdecl} +friend constexpr compare_three_way_result_t + operator<=>(const iterator& x, const iterator& y) + requires StrictTotallyOrdered && ThreeWayComparable; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return x.value_ <=> y.value_;} +\end{itemdescr} + \indexlibrary{\idxcode{operator+}!\idxcode{iota_view::iterator}} \begin{itemdecl} friend constexpr iterator operator+(iterator i, difference_type n) @@ -2210,9 +2213,6 @@ constexpr explicit sentinel(Bound bound); friend constexpr bool operator==(const iterator& x, const sentinel& y); - friend constexpr bool operator==(const sentinel& x, const iterator& y); - friend constexpr bool operator!=(const iterator& x, const sentinel& y); - friend constexpr bool operator!=(const sentinel& x, const iterator& y); }; } \end{codeblock} @@ -2237,36 +2237,6 @@ \effects Equivalent to: \tcode{return x.value_ == y.bound_;} \end{itemdescr} -\indexlibrary{\idxcode{operator==}!\idxcode{iota_view::sentinel}} -\begin{itemdecl} -friend constexpr bool operator==(const sentinel& x, const iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return y == x;} -\end{itemdescr} - -\indexlibrary{\idxcode{operator"!=}!\idxcode{iota_view::sentinel}} -\begin{itemdecl} -friend constexpr bool operator!=(const iterator& x, const sentinel& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - -\indexlibrary{\idxcode{operator"!=}!\idxcode{iota_view::sentinel}} -\begin{itemdecl} -friend constexpr bool operator!=(const sentinel& x, const iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(y == x);} -\end{itemdescr} - \rSec3[range.iota.adaptor]{\tcode{view::iota}} \pnum @@ -2633,8 +2603,6 @@ friend constexpr bool operator==(const iterator& x, const iterator& y) requires EqualityComparable>; - friend constexpr bool operator!=(const iterator& x, const iterator& y) - requires EqualityComparable>; friend constexpr iter_rvalue_reference_t> iter_move(const iterator& i) noexcept(noexcept(ranges::iter_move(i.current_))); @@ -2801,17 +2769,6 @@ \effects Equivalent to: \tcode{return x.current_ == y.current_;} \end{itemdescr} -\indexlibrary{\idxcode{operator"!=}!\idxcode{filter_view::iterator}}% -\begin{itemdecl} -friend constexpr bool operator!=(const iterator& x, const iterator& y) - requires EqualityComparable>; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - \indexlibrary{\idxcode{iter_move}!\idxcode{filter_view::iterator}}% \begin{itemdecl} friend constexpr iter_rvalue_reference_t> iter_move(const iterator& i) @@ -2851,9 +2808,6 @@ constexpr sentinel_t base() const; friend constexpr bool operator==(const iterator& x, const sentinel& y); - friend constexpr bool operator==(const sentinel& x, const iterator& y); - friend constexpr bool operator!=(const iterator& x, const sentinel& y); - friend constexpr bool operator!=(const sentinel& x, const iterator& y); }; } \end{codeblock} @@ -2888,36 +2842,6 @@ \effects Equivalent to: \tcode{return x.current_ == y.end_;} \end{itemdescr} -\indexlibrary{\idxcode{operator==}!\idxcode{filter_view::sentinel}}% -\begin{itemdecl} -friend constexpr bool operator==(const sentinel& x, const iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return y == x;} -\end{itemdescr} - -\indexlibrary{\idxcode{operator"!=}!\idxcode{filter_view::sentinel}}% -\begin{itemdecl} -friend constexpr bool operator!=(const iterator& x, const sentinel& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - -\indexlibrary{\idxcode{operator"!=}!\idxcode{filter_view::sentinel}}% -\begin{itemdecl} -friend constexpr bool operator!=(const sentinel& x, const iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(y == x);} -\end{itemdescr} - \rSec3[range.filter.adaptor]{\tcode{view::filter}} \pnum @@ -3163,8 +3087,6 @@ friend constexpr bool operator==(const iterator& x, const iterator& y) requires EqualityComparable>; - friend constexpr bool operator!=(const iterator& x, const iterator& y) - requires EqualityComparable>; friend constexpr bool operator<(const iterator& x, const iterator& y) requires RandomAccessRange; @@ -3174,6 +3096,9 @@ requires RandomAccessRange; friend constexpr bool operator>=(const iterator& x, const iterator& y) requires RandomAccessRange; + friend constexpr compare_three_way_result_t> + operator<=>(const iterator& x, const iterator& y) + requires RandomAccessRange && ThreeWayComparable>; friend constexpr iterator operator+(iterator i, difference_type n) requires RandomAccessRange; @@ -3366,17 +3291,6 @@ \effects Equivalent to: \tcode{return x.current_ == y.current_;} \end{itemdescr} -\indexlibrary{\idxcode{operator"!=}!\idxcode{transform_view::iterator}}% -\begin{itemdecl} -friend constexpr bool operator!=(const iterator& x, const iterator& y) - requires EqualityComparable>; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - \indexlibrary{\idxcode{operator<}!\idxcode{transform_view::iterator}}% \begin{itemdecl} friend constexpr bool operator<(const iterator& x, const iterator& y) @@ -3421,6 +3335,18 @@ \effects Equivalent to: \tcode{return !(x < y);} \end{itemdescr} +\indexlibrary{\idxcode{operator<=>}!\idxcode{transform_view::iterator}}% +\begin{itemdecl} +friend constexpr compare_three_way_result_t> + operator<=>(const iterator& x, const iterator& y) + requires RandomAccessRange && ThreeWayComparable>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return x.current_ <=> y.current_;} +\end{itemdescr} + \indexlibrary{\idxcode{operator+}!\idxcode{transform_view::iterator}} \begin{itemdecl} friend constexpr iterator operator+(iterator i, difference_type n) @@ -3490,9 +3416,6 @@ constexpr sentinel_t base() const; friend constexpr bool operator==(const iterator& x, const sentinel& y); - friend constexpr bool operator==(const sentinel& x, const iterator& y); - friend constexpr bool operator!=(const iterator& x, const sentinel& y); - friend constexpr bool operator!=(const sentinel& x, const iterator& y); friend constexpr iter_difference_t> operator-(const iterator& x, const sentinel& y) @@ -3545,60 +3468,6 @@ \effects Equivalent to: \tcode{return x.current_ == y.end_;} \end{itemdescr} -\indexlibrary{\idxcode{operator==}!\idxcode{transform_view::sentinel}} -\begin{itemdecl} -friend constexpr bool operator==(const sentinel& x, const iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return y == x;} -\end{itemdescr} - -\indexlibrary{\idxcode{operator"!=}!\idxcode{transform_view::sentinel}}% -\begin{itemdecl} -friend constexpr bool operator!=(const iterator& x, const sentinel& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - -\indexlibrary{\idxcode{operator"!=}!\idxcode{transform_view::sentinel}}% -\begin{itemdecl} -friend constexpr bool operator!=(const sentinel& x, const iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(y == x);} -\end{itemdescr} - -\indexlibrary{\idxcode{operator"!=}!\idxcode{transform_view::sentinel}}% -\begin{itemdecl} -friend constexpr iter_difference_t> - operator-(const iterator& x, const sentinel& y) - requires SizedSentinel, iterator_t>; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return x.current_ - y.end_;} -\end{itemdescr} - -\indexlibrary{\idxcode{operator"!=}!\idxcode{transform_view::sentinel}}% -\begin{itemdecl} -friend constexpr iter_difference_t> - operator-(const sentinel& y, const iterator& x) - requires SizedSentinel, iterator_t>; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return x.end_ - y.current_;} -\end{itemdescr} - \rSec3[range.transform.adaptor]{\tcode{view::transform}} \pnum @@ -3758,10 +3627,7 @@ constexpr sentinel_t base() const; - friend constexpr bool operator==(const sentinel& x, const CI& y); friend constexpr bool operator==(const CI& y, const sentinel& x); - friend constexpr bool operator!=(const sentinel& x, const CI& y); - friend constexpr bool operator!=(const CI& y, const sentinel& x); }; } \end{codeblock} @@ -3799,7 +3665,6 @@ \indexlibrary{\idxcode{operator==}!\idxcode{take_view::sentinel}} \begin{itemdecl} -friend constexpr bool operator==(const sentinel& x, const CI& y); friend constexpr bool operator==(const CI& y, const sentinel& x); \end{itemdecl} @@ -3809,17 +3674,6 @@ \tcode{return y.count() == 0 || y.base() == x.end_;} \end{itemdescr} -\indexlibrary{\idxcode{operator"!=}!\idxcode{take_view::sentinel}}% -\begin{itemdecl} -friend constexpr bool operator!=(const sentinel& x, const CI& y); -friend constexpr bool operator!=(const CI& y, const sentinel& x); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - \rSec3[range.take.adaptor]{\tcode{view::take}} \pnum @@ -3998,10 +3852,6 @@ requires ref_is_glvalue && EqualityComparable> && EqualityComparable>>>; - friend constexpr bool operator!=(const iterator& x, const iterator& y) - requires ref_is_glvalue && EqualityComparable> && - EqualityComparable>>>; - friend constexpr decltype(auto) iter_move(const iterator& i) noexcept(noexcept(ranges::iter_move(i.inner_))) { return ranges::iter_move(i.inner_); @@ -4225,18 +4075,6 @@ \tcode{return x.outer_ == y.outer_ \&\& x.inner_ == y.inner_;} \end{itemdescr} -\indexlibrary{\idxcode{operator"!=}!\idxcode{join_view::iterator}} -\begin{itemdecl} -friend constexpr bool operator!=(const iterator& x, const iterator& y) - requires ref_is_glvalue && EqualityComparable> && - EqualityComparable>>>; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - \indexlibrary{\idxcode{iter_swap}!\idxcode{join_view::iterator}} \begin{itemdecl} friend constexpr void iter_swap(const iterator& x, const iterator& y) @@ -4268,9 +4106,6 @@ requires Const && ConvertibleTo, sentinel_t>; friend constexpr bool operator==(const iterator& x, const sentinel& y); - friend constexpr bool operator==(const sentinel& x, const iterator& y); - friend constexpr bool operator!=(const iterator& x, const sentinel& y); - friend constexpr bool operator!=(const sentinel& x, const iterator& y); }; } \end{codeblock} @@ -4306,36 +4141,6 @@ \effects Equivalent to: \tcode{return x.outer_ == y.end_;} \end{itemdescr} -\indexlibrary{\idxcode{operator==}!\idxcode{join_view::sentinel}} -\begin{itemdecl} -friend constexpr bool operator==(const sentinel& x, const iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return y == x;} -\end{itemdescr} - -\indexlibrary{\idxcode{operator"!=}!\idxcode{join_view::sentinel}} -\begin{itemdecl} -friend constexpr bool operator!=(const iterator& x, const sentinel& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - -\indexlibrary{\idxcode{operator"!=}!\idxcode{join_view::sentinel}} -\begin{itemdecl} -friend constexpr bool operator!=(const sentinel& x, const iterator& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(y == x);} -\end{itemdescr} - \rSec3[range.join.adaptor]{\tcode{view::join}} \pnum @@ -4528,13 +4333,8 @@ friend constexpr bool operator==(const outer_iterator& x, const outer_iterator& y) requires ForwardRange; - friend constexpr bool operator!=(const outer_iterator& x, const outer_iterator& y) - requires ForwardRange; friend constexpr bool operator==(const outer_iterator& x, default_sentinel_t); - friend constexpr bool operator==(default_sentinel_t, const outer_iterator& x); - friend constexpr bool operator!=(const outer_iterator& x, default_sentinel_t y); - friend constexpr bool operator!=(default_sentinel_t y, const outer_iterator& x); }; } \end{codeblock} @@ -4627,21 +4427,9 @@ \effects Equivalent to: \tcode{return x.current_ == y.current_;} \end{itemdescr} -\indexlibrary{\idxcode{operator"!=}!\idxcode{split_view::outer_iterator}}% -\begin{itemdecl} -friend constexpr bool operator!=(const outer_iterator& x, const outer_iterator& y) - requires ForwardRange; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - \indexlibrary{\idxcode{operator==}!\idxcode{split_view::outer_iterator}}% \begin{itemdecl} friend constexpr bool operator==(const outer_iterator& x, default_sentinel_t); -friend constexpr bool operator==(default_sentinel_t, const outer_iterator& x); \end{itemdecl} \begin{itemdescr} @@ -4650,17 +4438,6 @@ Equivalent to: \tcode{return x.\placeholder{current} == ranges::end(x.parent_->base_);} \end{itemdescr} -\indexlibrary{\idxcode{operator"!=}!\idxcode{split_view::outer_iterator}}% -\begin{itemdecl} -friend constexpr bool operator!=(const outer_iterator& x, default_sentinel_t y); -friend constexpr bool operator!=(default_sentinel_t y, const outer_iterator& x); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - \rSec3[range.split.outer.value]{Class \tcode{split_view::outer_iterator::value_type}} \begin{codeblock} @@ -4745,13 +4522,8 @@ friend constexpr bool operator==(const inner_iterator& x, const inner_iterator& y) requires ForwardRange; - friend constexpr bool operator!=(const inner_iterator& x, const inner_iterator& y) - requires ForwardRange; friend constexpr bool operator==(const inner_iterator& x, default_sentinel_t); - friend constexpr bool operator==(default_sentinel_t, const inner_iterator& x); - friend constexpr bool operator!=(const inner_iterator& x, default_sentinel_t y); - friend constexpr bool operator!=(default_sentinel_t y, const inner_iterator& x); friend constexpr decltype(auto) iter_move(const inner_iterator& i) noexcept(noexcept(ranges::iter_move(i.i_.@\placeholdernc{current}@))) { @@ -4813,21 +4585,9 @@ \effects Equivalent to: \tcode{return x.i_.current_ == y.i_.current_;} \end{itemdescr} -\indexlibrary{\idxcode{operator"!=}!\idxcode{split_view::inner_iterator}}% -\begin{itemdecl} -friend constexpr bool operator!=(const inner_iterator& x, const inner_iterator& y) - requires ForwardRange; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - \indexlibrary{\idxcode{operator==}!\idxcode{split_view::inner_iterator}}% \begin{itemdecl} friend constexpr bool operator==(const inner_iterator& x, default_sentinel_t); -friend constexpr bool operator==(default_sentinel_t, const inner_iterator& x); \end{itemdecl} \begin{itemdescr} @@ -4847,17 +4607,6 @@ \end{codeblock} \end{itemdescr} -\indexlibrary{\idxcode{operator"!=}!\idxcode{split_view::inner_iterator}}% -\begin{itemdecl} -friend constexpr bool operator!=(const inner_iterator& x, default_sentinel_t y); -friend constexpr bool operator!=(default_sentinel_t y, const inner_iterator& x); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{return !(x == y);} -\end{itemdescr} - \indexlibrary{\idxcode{iter_swap}!\idxcode{split_view::inner_iterator}}% \begin{itemdecl} friend constexpr void iter_swap(const inner_iterator& x, const inner_iterator& y) diff --git a/source/regex.tex b/source/regex.tex index 72c3b73cce..cd50eac125 100644 --- a/source/regex.tex +++ b/source/regex.tex @@ -298,141 +298,30 @@ template bool operator==(const sub_match& lhs, const sub_match& rhs); template - bool operator!=(const sub_match& lhs, const sub_match& rhs); - template - bool operator<(const sub_match& lhs, const sub_match& rhs); - template - bool operator>(const sub_match& lhs, const sub_match& rhs); - template - bool operator<=(const sub_match& lhs, const sub_match& rhs); - template - bool operator>=(const sub_match& lhs, const sub_match& rhs); - - template - bool operator==( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); - template - bool operator!=( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); - template - bool operator<( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); - template - bool operator>( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); - template - bool operator<=( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); - template - bool operator>=( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); + constexpr auto operator<=>(const sub_match& lhs, const sub_match& rhs); template bool operator==( const sub_match& lhs, const basic_string::value_type, ST, SA>& rhs); template - bool operator!=( - const sub_match& lhs, - const basic_string::value_type, ST, SA>& rhs); - template - bool operator<( - const sub_match& lhs, - const basic_string::value_type, ST, SA>& rhs); - template - bool operator>( - const sub_match& lhs, - const basic_string::value_type, ST, SA>& rhs); - template - bool operator<=( - const sub_match& lhs, - const basic_string::value_type, ST, SA>& rhs); - template - bool operator>=( + auto operator<=>( const sub_match& lhs, const basic_string::value_type, ST, SA>& rhs); - template - bool operator==(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); - template - bool operator!=(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); - template - bool operator<(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); - template - bool operator>(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); - template - bool operator<=(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); - template - bool operator>=(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); - template bool operator==(const sub_match& lhs, const typename iterator_traits::value_type* rhs); template - bool operator!=(const sub_match& lhs, - const typename iterator_traits::value_type* rhs); - template - bool operator<(const sub_match& lhs, - const typename iterator_traits::value_type* rhs); - template - bool operator>(const sub_match& lhs, - const typename iterator_traits::value_type* rhs); - template - bool operator<=(const sub_match& lhs, - const typename iterator_traits::value_type* rhs); - template - bool operator>=(const sub_match& lhs, - const typename iterator_traits::value_type* rhs); - - template - bool operator==(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); - template - bool operator!=(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); - template - bool operator<(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); - template - bool operator>(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); - template - bool operator<=(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); - template - bool operator>=(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); + auto operator<=>(const sub_match& lhs, + const typename iterator_traits::value_type* rhs); template bool operator==(const sub_match& lhs, const typename iterator_traits::value_type& rhs); template - bool operator!=(const sub_match& lhs, - const typename iterator_traits::value_type& rhs); - template - bool operator<(const sub_match& lhs, - const typename iterator_traits::value_type& rhs); - template - bool operator>(const sub_match& lhs, - const typename iterator_traits::value_type& rhs); - template - bool operator<=(const sub_match& lhs, - const typename iterator_traits::value_type& rhs); - template - bool operator>=(const sub_match& lhs, - const typename iterator_traits::value_type& rhs); + auto operator<=>(const sub_match& lhs, + const typename iterator_traits::value_type& rhs); template basic_ostream& @@ -452,9 +341,6 @@ template bool operator==(const match_results& m1, const match_results& m2); - template - bool operator!=(const match_results& m1, - const match_results& m2); // \ref{re.results.swap}, \tcode{match_results} swap template @@ -1903,6 +1789,12 @@ \rSec2[re.submatch.op]{Non-member operators} +\pnum +Let \tcode{\placeholdernc{SM-CAT}(I)} be +\begin{codeblock} +compare_three_way_result_t::value_type>> +\end{codeblock} + \indexlibrarymember{sub_match}{operator==}% \begin{itemdecl} template @@ -1913,134 +1805,14 @@ \pnum\returns \tcode{lhs.compare(rhs) == 0}. \end{itemdescr} -\indexlibrarymember{sub_match}{operator"!=}% -\begin{itemdecl} -template - bool operator!=(const sub_match& lhs, const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{lhs.compare(rhs) != 0}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<}% +\indexlibrarymember{sub_match}{operator<=>}% \begin{itemdecl} template - bool operator<(const sub_match& lhs, const sub_match& rhs); + bool operator<=>(const sub_match& lhs, const sub_match& rhs); \end{itemdecl} \begin{itemdescr} -\pnum\returns \tcode{lhs.compare(rhs) < 0}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>}% -\begin{itemdecl} -template - bool operator>(const sub_match& lhs, const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{lhs.compare(rhs) > 0}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<=}% -\begin{itemdecl} -template - bool operator<=(const sub_match& lhs, const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{lhs.compare(rhs) <= 0}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>=}% -\begin{itemdecl} -template - bool operator>=(const sub_match& lhs, const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{lhs.compare(rhs) >= 0}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator==}% -\begin{itemdecl} -template - bool operator==( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\begin{codeblock} -rhs.compare(typename sub_match::string_type(lhs.data(), lhs.size())) == 0 -\end{codeblock} -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator"!=}% -\begin{itemdecl} -template - bool operator!=( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(lhs == rhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<}% -\begin{itemdecl} -template - bool operator<( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\begin{codeblock} -rhs.compare(typename sub_match::string_type(lhs.data(), lhs.size())) > 0 -\end{codeblock} -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>}% -\begin{itemdecl} -template - bool operator>( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{rhs < lhs}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<=}% -\begin{itemdecl} -template - bool operator<=( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(rhs < lhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>=}% -\begin{itemdecl} -template - bool operator>=( - const basic_string::value_type, ST, SA>& lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(lhs < rhs)}. +\pnum\returns \tcode{static_cast<\placeholdernc{SM-CAT}(BiIter)>(lhs.compare(rhs) <=> 0)}. \end{itemdescr} \indexlibrarymember{operator==}{sub_match}% @@ -2059,138 +1831,24 @@ \end{codeblock} \end{itemdescr} -\indexlibrary{\idxcode{operator"!=}!\idxcode{sub_match}}% -\indexlibrary{\idxcode{sub_match}!\idxcode{operator"!=}}% +\indexlibrarymember{operator<=>}{sub_match}% \begin{itemdecl} template - bool operator!=( + auto operator<=>( const sub_match& lhs, const basic_string::value_type, ST, SA>& rhs); \end{itemdecl} \begin{itemdescr} -\pnum\returns \tcode{!(lhs == rhs)}. -\end{itemdescr} - -\indexlibrary{\idxcode{operator>}!\idxcode{sub_match}}% -\indexlibrary{\idxcode{sub_match}!\idxcode{operator<}}% -\begin{itemdecl} -template - bool operator<( - const sub_match& lhs, - const basic_string::value_type, ST, SA>& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns +\pnum\returns \begin{codeblock} -lhs.compare(typename sub_match::string_type(rhs.data(), rhs.size())) < 0 +static_cast<@\placeholdernc{SM-CAT}@(BiIter)>(lhs.compare( + typename sub_match::string_type(rhs.data(), rhs.size())) + <=> 0 + ) \end{codeblock} \end{itemdescr} -\indexlibrarymember{operator>}{sub_match}% -\begin{itemdecl} -template - bool operator>( - const sub_match& lhs, - const basic_string::value_type, ST, SA>& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{rhs < lhs}. -\end{itemdescr} - -\indexlibrarymember{operator<=}{sub_match}% -\begin{itemdecl} -template - bool operator<=( - const sub_match& lhs, - const basic_string::value_type, ST, SA>& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(rhs < lhs)}. -\end{itemdescr} - -\indexlibrarymember{operator>=}{sub_match}% -\begin{itemdecl} -template - bool operator>=( - const sub_match& lhs, - const basic_string::value_type, ST, SA>& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(lhs < rhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator==}% -\begin{itemdecl} -template - bool operator==(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{rhs.compare(lhs) == 0}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator"!=}% -\begin{itemdecl} -template - bool operator!=(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(lhs == rhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<}% -\begin{itemdecl} -template - bool operator<(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{rhs.compare(lhs) > 0}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>}% -\begin{itemdecl} -template - bool operator>(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{rhs < lhs}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<=}% -\begin{itemdecl} -template - bool operator<=(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(rhs < lhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>=}% -\begin{itemdecl} -template - bool operator>=(const typename iterator_traits::value_type* lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(lhs < rhs)}. -\end{itemdescr} - \indexlibrarymember{sub_match}{operator==}% \begin{itemdecl} template @@ -2202,132 +1860,16 @@ \pnum\returns \tcode{lhs.compare(rhs) == 0}. \end{itemdescr} -\indexlibrarymember{sub_match}{operator"!=}% -\begin{itemdecl} -template - bool operator!=(const sub_match& lhs, - const typename iterator_traits::value_type* rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(lhs == rhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<}% -\begin{itemdecl} -template - bool operator<(const sub_match& lhs, - const typename iterator_traits::value_type* rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{lhs.compare(rhs) < 0}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>}% -\begin{itemdecl} -template - bool operator>(const sub_match& lhs, - const typename iterator_traits::value_type* rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{rhs < lhs}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<=}% -\begin{itemdecl} -template - bool operator<=(const sub_match& lhs, - const typename iterator_traits::value_type* rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(rhs < lhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>=}% -\begin{itemdecl} -template - bool operator>=(const sub_match& lhs, - const typename iterator_traits::value_type* rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(lhs < rhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator==}% -\begin{itemdecl} -template - bool operator==(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{rhs.compare(typename sub_match::string_type(1, lhs)) == 0}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator"!=}% -\begin{itemdecl} -template - bool operator!=(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(lhs == rhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<}% -\begin{itemdecl} -template - bool operator<(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{rhs.compare(typename sub_match::string_type(1, lhs)) > 0}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>}% -\begin{itemdecl} -template - bool operator>(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{rhs < lhs}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<=}% -\begin{itemdecl} -template - bool operator<=(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(rhs < lhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>=}% +\indexlibrarymember{sub_match}{operator<=>}% \begin{itemdecl} template - bool operator>=(const typename iterator_traits::value_type& lhs, - const sub_match& rhs); + auto operator<=>(const sub_match& lhs, + const typename iterator_traits::value_type* rhs); \end{itemdecl} \begin{itemdescr} -\pnum -\returns \tcode{!(lhs < rhs)}. +\pnum\returns +\tcode{static_cast<\placeholdernc{SM-CAT}(BiIter)>(lhs.compare(rhs) <=> 0)}. \end{itemdescr} \indexlibrarymember{sub_match}{operator==}% @@ -2342,64 +1884,22 @@ \returns \tcode{lhs.compare(typename sub_match::string_type(1, rhs)) == 0}. \end{itemdescr} -\indexlibrarymember{sub_match}{operator"!=}% +\indexlibrarymember{sub_match}{operator<=>}% \begin{itemdecl} template - bool operator!=(const sub_match& lhs, - const typename iterator_traits::value_type& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(lhs == rhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<}% -\begin{itemdecl} -template - bool operator<(const sub_match& lhs, - const typename iterator_traits::value_type& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{lhs.compare(typename sub_match::string_type(1, rhs)) < 0}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>}% -\begin{itemdecl} -template - bool operator>(const sub_match& lhs, - const typename iterator_traits::value_type& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{rhs < lhs}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator<=}% -\begin{itemdecl} -template - bool operator<=(const sub_match& lhs, - const typename iterator_traits::value_type& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(rhs < lhs)}. -\end{itemdescr} - -\indexlibrarymember{sub_match}{operator>=}% -\begin{itemdecl} -template - bool operator>=(const sub_match& lhs, - const typename iterator_traits::value_type& rhs); + auto operator<=>(const sub_match& lhs, + const typename iterator_traits::value_type& rhs); \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{!(lhs < rhs)}. +\returns +\begin{codeblock} +static_cast<@\placeholdernc{SM-CAT}@(BiIter)>(lhs.compare( + typename sub_match::string_type(1, rhs)) + <=> 0 + ) +\end{codeblock} \end{itemdescr} \indexlibrary{\idxcode{basic_ostream}}% @@ -2944,19 +2444,6 @@ \begin{note} The algorithm \tcode{equal} is defined in \ref{algorithms}. \end{note} \end{itemdescr} -\indexlibrary{\idxcode{operator"!=}!\idxcode{match_results}}% -\indexlibrary{\idxcode{match_results}!\idxcode{operator"!=}}% -\begin{itemdecl} -template -bool operator!=(const match_results& m1, - const match_results& m2); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(m1 == m2)}. -\end{itemdescr} - \rSec1[re.alg]{Regular expression algorithms} \rSec2[re.except]{Exceptions} @@ -3494,7 +2981,6 @@ regex_iterator(const regex_iterator&); regex_iterator& operator=(const regex_iterator&); bool operator==(const regex_iterator&) const; - bool operator!=(const regex_iterator&) const; const value_type& operator*() const; const value_type* operator->() const; regex_iterator& operator++(); @@ -3567,15 +3053,6 @@ otherwise \tcode{false}. \end{itemdescr} -\indexlibrarymember{regex_iterator}{operator"!=}% -\begin{itemdecl} -bool operator!=(const regex_iterator& right) const; -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(*this == right)}. -\end{itemdescr} - \rSec3[re.regiter.deref]{Indirection} \indexlibrarymember{regex_iterator}{operator*}% @@ -3791,7 +3268,6 @@ regex_token_iterator(const regex_token_iterator&); regex_token_iterator& operator=(const regex_token_iterator&); bool operator==(const regex_token_iterator&) const; - bool operator!=(const regex_token_iterator&) const; const value_type& operator*() const; const value_type* operator->() const; regex_token_iterator& operator++(); @@ -3904,15 +3380,6 @@ \tcode{N == right.N}, and \tcode{subs == right.subs}. Otherwise returns \tcode{false}. \end{itemdescr} -\indexlibrarymember{regex_token_iterator}{operator"!=}% -\begin{itemdecl} -bool operator!=(const regex_token_iterator& right) const; -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(*this == right)}. -\end{itemdescr} - \rSec3[re.tokiter.deref]{Indirection} \indexlibrarymember{regex_token_iterator}{operator*}% diff --git a/source/strings.tex b/source/strings.tex index cbba04ae5d..b4ebc3fbbc 100644 --- a/source/strings.tex +++ b/source/strings.tex @@ -267,6 +267,7 @@ using off_type = streamoff; using pos_type = streampos; using state_type = mbstate_t; + using comparison_category = strong_ordering; static constexpr void assign(char_type& c1, const char_type& c2) noexcept; static constexpr bool eq(char_type c1, char_type c2) noexcept; @@ -321,6 +322,7 @@ using off_type = streamoff; using pos_type = u8streampos; using state_type = mbstate_t; + using comparison_category = strong_ordering; static constexpr void assign(char_type& c1, const char_type& c2) noexcept; static constexpr bool eq(char_type c1, char_type c2) noexcept; @@ -362,6 +364,7 @@ using off_type = streamoff; using pos_type = u16streampos; using state_type = mbstate_t; + using comparison_category = strong_ordering; static constexpr void assign(char_type& c1, const char_type& c2) noexcept; static constexpr bool eq(char_type c1, char_type c2) noexcept; @@ -407,6 +410,7 @@ using off_type = streamoff; using pos_type = u32streampos; using state_type = mbstate_t; + using comparison_category = strong_ordering; static constexpr void assign(char_type& c1, const char_type& c2) noexcept; static constexpr bool eq(char_type c1, char_type c2) noexcept; @@ -452,6 +456,7 @@ using off_type = streamoff; using pos_type = wstreampos; using state_type = mbstate_t; + using comparison_category = strong_ordering; static constexpr void assign(char_type& c1, const char_type& c2) noexcept; static constexpr bool eq(char_type c1, char_type c2) noexcept; @@ -585,59 +590,16 @@ template bool operator==(const basic_string& lhs, const basic_string& rhs) noexcept; - template - bool operator==(const charT* lhs, - const basic_string& rhs); template bool operator==(const basic_string& lhs, const charT* rhs); - template - bool operator!=(const basic_string& lhs, - const basic_string& rhs) noexcept; - template - bool operator!=(const charT* lhs, - const basic_string& rhs); - template - bool operator!=(const basic_string& lhs, - const charT* rhs); template - bool operator< (const basic_string& lhs, - const basic_string& rhs) noexcept; - template - bool operator< (const basic_string& lhs, - const charT* rhs); - template - bool operator< (const charT* lhs, - const basic_string& rhs); - template - bool operator> (const basic_string& lhs, - const basic_string& rhs) noexcept; - template - bool operator> (const basic_string& lhs, - const charT* rhs); - template - bool operator> (const charT* lhs, - const basic_string& rhs); - - template - bool operator<=(const basic_string& lhs, - const basic_string& rhs) noexcept; - template - bool operator<=(const basic_string& lhs, - const charT* rhs); - template - bool operator<=(const charT* lhs, - const basic_string& rhs); - template - bool operator>=(const basic_string& lhs, - const basic_string& rhs) noexcept; - template - bool operator>=(const basic_string& lhs, - const charT* rhs); + @\seebelow@ operator<=>(const basic_string& lhs, + @\itcorr@ const basic_string& rhs) noexcept; template - bool operator>=(const charT* lhs, - const basic_string& rhs); + @\seebelow@ operator<=>(const basic_string& lhs, + @\itcorr@ const charT* rhs); // \ref{string.special}, swap template @@ -3327,57 +3289,22 @@ template bool operator==(const basic_string& lhs, const basic_string& rhs) noexcept; -template - bool operator==(const charT* lhs, const basic_string& rhs); template bool operator==(const basic_string& lhs, const charT* rhs); template - bool operator!=(const basic_string& lhs, - const basic_string& rhs) noexcept; -template - bool operator!=(const charT* lhs, const basic_string& rhs); -template - bool operator!=(const basic_string& lhs, const charT* rhs); - -template - bool operator< (const basic_string& lhs, - const basic_string& rhs) noexcept; -template - bool operator< (const charT* lhs, const basic_string& rhs); -template - bool operator< (const basic_string& lhs, const charT* rhs); - -template - bool operator> (const basic_string& lhs, - const basic_string& rhs) noexcept; -template - bool operator> (const charT* lhs, const basic_string& rhs); + @\seebelow@ operator<=>(const basic_string& lhs, + @\itcorr@ const basic_string& rhs) noexcept; template - bool operator> (const basic_string& lhs, const charT* rhs); - -template - bool operator<=(const basic_string& lhs, - const basic_string& rhs) noexcept; -template - bool operator<=(const charT* lhs, const basic_string& rhs); -template - bool operator<=(const basic_string& lhs, const charT* rhs); - -template - bool operator>=(const basic_string& lhs, - const basic_string& rhs) noexcept; -template - bool operator>=(const charT* lhs, const basic_string& rhs); -template - bool operator>=(const basic_string& lhs, const charT* rhs); + @\seebelow@ operator<=>(const basic_string& lhs, + @\itcorr@ const charT* rhs); \end{itemdecl} \begin{itemdescr} \pnum \effects Let \tcode{\placeholder{op}} be the operator. Equivalent to: \begin{codeblock} - return basic_string_view(lhs) @\placeholder{op}@ basic_string_view(rhs); +return basic_string_view(lhs) @\placeholder{op}@ basic_string_view(rhs); \end{codeblock} \end{itemdescr} @@ -3889,20 +3816,9 @@ constexpr bool operator==(basic_string_view x, basic_string_view y) noexcept; template - constexpr bool operator!=(basic_string_view x, - basic_string_view y) noexcept; - template - constexpr bool operator< (basic_string_view x, - basic_string_view y) noexcept; - template - constexpr bool operator> (basic_string_view x, - basic_string_view y) noexcept; - template - constexpr bool operator<=(basic_string_view x, - basic_string_view y) noexcept; - template - constexpr bool operator>=(basic_string_view x, - basic_string_view y) noexcept; + constexpr @\seebelow@ operator<=>(basic_string_view x, + @\itcorr@ basic_string_view y) noexcept; + // see \ref{string.view.comparison}, sufficient additional overloads of comparison functions // \ref{string.view.io}, inserters and extractors @@ -4818,6 +4734,8 @@ \tcode{sv <= t} & \tcode{sv <= S(t)} \\ \tcode{t >= sv} & \tcode{S(t) >= sv} \\ \tcode{sv >= t} & \tcode{sv >= S(t)} \\ +\tcode{t <=> sv} & \tcode{S(t) <=> sv} \\ +\tcode{sv <=> t} & \tcode{sv <=> S(t)} \\ \end{libtab2} \begin{example} A sample conforming implementation for \tcode{operator==} would be: @@ -4832,11 +4750,6 @@ type_identity_t> rhs) noexcept { return lhs.compare(rhs) == 0; } -template - constexpr bool operator==(type_identity_t> lhs, - basic_string_view rhs) noexcept { - return lhs.compare(rhs) == 0; - } \end{codeblock} \end{example} @@ -4853,69 +4766,21 @@ \tcode{lhs.compare(rhs) == 0}. \end{itemdescr} -\indexlibrarymember{operator"!=}{basic_string_view}% +\indexlibrarymember{operator<=>}{basic_string_view}% \begin{itemdecl} template - constexpr bool operator!=(basic_string_view lhs, - basic_string_view rhs) noexcept; + constexpr @\seebelow@ operator<=>(basic_string_view lhs, + @\itcorr@ basic_string_view rhs) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns -\tcode{lhs.compare(rhs) != 0}. -\end{itemdescr} - -\indexlibrarymember{operator<}{basic_string_view}% -\begin{itemdecl} -template - constexpr bool operator<(basic_string_view lhs, - basic_string_view rhs) noexcept; -\end{itemdecl} +Let \tcode{R} denote the type \tcode{traits::comparison_category} if it exists, +otherwise \tcode{R} is \tcode{weak_ordering}. -\begin{itemdescr} -\pnum -\returns -\tcode{lhs.compare(rhs) < 0}. -\end{itemdescr} - -\indexlibrarymember{operator>}{basic_string_view}% -\begin{itemdecl} -template - constexpr bool operator>(basic_string_view lhs, - basic_string_view rhs) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{lhs.compare(rhs) > 0}. -\end{itemdescr} - -\indexlibrarymember{operator<=}{basic_string_view}% -\begin{itemdecl} -template - constexpr bool operator<=(basic_string_view lhs, - basic_string_view rhs) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{lhs.compare(rhs) <= 0}. -\end{itemdescr} - -\indexlibrarymember{operator>=}{basic_string_view}% -\begin{itemdecl} -template - constexpr bool operator>=(basic_string_view lhs, - basic_string_view rhs) noexcept; -\end{itemdecl} - -\begin{itemdescr} \pnum \returns -\tcode{lhs.compare(rhs) >= 0}. +\tcode{static_cast(lhs.compare(rhs) <=> 0)}. \end{itemdescr} \rSec2[string.view.io]{Inserters and extractors} diff --git a/source/support.tex b/source/support.tex index 990672e39e..604ebe8ba4 100644 --- a/source/support.tex +++ b/source/support.tex @@ -700,6 +700,8 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_shared_timed_mutex} & \tcode{201402L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_spaceship} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_string_udls} & \tcode{201304L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_string_view} & \tcode{201606L} & @@ -3006,7 +3008,6 @@ public: virtual ~type_info(); bool operator==(const type_info& rhs) const noexcept; - bool operator!=(const type_info& rhs) const noexcept; bool before(const type_info& rhs) const noexcept; size_t hash_code() const noexcept; const char* name() const noexcept; @@ -3043,17 +3044,6 @@ if the two values describe the same type. \end{itemdescr} -\indexlibrarymember{operator"!=}{type_info}% -\begin{itemdecl} -bool operator!=(const type_info& rhs) const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{!(*this == rhs)}. -\end{itemdescr} - \indexlibrarymember{before}{type_info}% \begin{itemdecl} bool before(const type_info& rhs) const noexcept; @@ -3806,12 +3796,30 @@ template using common_comparison_category_t = typename common_comparison_category::type; + // \ref{cmp.concept}, concept \tcode{ThreeWayComparable} + template + concept ThreeWayComparable = @\seebelow@; + template + concept ThreeWayComparableWith = @\seebelow@; + + // \ref{cmp.result}, result of three-way comparison + template struct compare_three_way_result; + + template + using compare_three_way_result_t = typename compare_three_way_result::type; + + // \ref{cmp.object}, class \tcode{compare_three_way} + struct compare_three_way; + // \ref{cmp.alg}, comparison algorithms - template constexpr strong_ordering strong_order(const T& a, const T& b); - template constexpr weak_ordering weak_order(const T& a, const T& b); - template constexpr partial_ordering partial_order(const T& a, const T& b); - template constexpr strong_equality strong_equal(const T& a, const T& b); - template constexpr weak_equality weak_equal(const T& a, const T& b); + inline namespace @\unspec@ { + inline constexpr @\unspec@ strong_order = @\unspec@; + inline constexpr @\unspec@ weak_order = @\unspec@; + inline constexpr @\unspec@ partial_order = @\unspec@; + inline constexpr @\unspec@ compare_strong_order_fallback = @\unspec@; + inline constexpr @\unspec@ compare_weak_order_fallback = @\unspec@; + inline constexpr @\unspec@ compare_partial_order_fallback = @\unspec@; + } } \end{codeblock} @@ -3890,9 +3898,7 @@ // comparisons friend constexpr bool operator==(weak_equality v, @\unspec@) noexcept; - friend constexpr bool operator!=(weak_equality v, @\unspec@) noexcept; - friend constexpr bool operator==(@\unspec@, weak_equality v) noexcept; - friend constexpr bool operator!=(@\unspec@, weak_equality v) noexcept; + friend constexpr bool operator==(weak_equality v, weak_equality w) noexcept = default; friend constexpr weak_equality operator<=>(weak_equality v, @\unspec@) noexcept; friend constexpr weak_equality operator<=>(@\unspec@, weak_equality v) noexcept; }; @@ -3906,7 +3912,6 @@ \indexlibrarymember{operator==}{weak_equality}% \begin{itemdecl} constexpr bool operator==(weak_equality v, @\unspec@) noexcept; -constexpr bool operator==(@\unspec@, weak_equality v) noexcept; \end{itemdecl} \begin{itemdescr} @@ -3915,18 +3920,6 @@ \tcode{v.value == 0}. \end{itemdescr} -\indexlibrarymember{operator"!=}{weak_equality}% -\begin{itemdecl} -constexpr bool operator!=(weak_equality v, @\unspec@) noexcept; -constexpr bool operator!=(@\unspec@, weak_equality v) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{v.value != 0}. -\end{itemdescr} - \indexlibrarymember{operator<=>}{weak_equality}% \begin{itemdecl} constexpr weak_equality operator<=>(weak_equality v, @\unspec@) noexcept; @@ -3972,9 +3965,7 @@ // comparisons friend constexpr bool operator==(strong_equality v, @\unspec@) noexcept; - friend constexpr bool operator!=(strong_equality v, @\unspec@) noexcept; - friend constexpr bool operator==(@\unspec@, strong_equality v) noexcept; - friend constexpr bool operator!=(@\unspec@, strong_equality v) noexcept; + friend constexpr bool operator==(strong_equality v, strong_equality w) noexcept = default; friend constexpr strong_equality operator<=>(strong_equality v, @\unspec@) noexcept; friend constexpr strong_equality operator<=>(@\unspec@, strong_equality v) noexcept; }; @@ -4001,7 +3992,6 @@ \indexlibrarymember{operator==}{strong_equality}% \begin{itemdecl} constexpr bool operator==(strong_equality v, @\unspec@) noexcept; -constexpr bool operator==(@\unspec@, strong_equality v) noexcept; \end{itemdecl} \begin{itemdescr} @@ -4010,18 +4000,6 @@ \tcode{v.value == 0}. \end{itemdescr} -\indexlibrarymember{operator"!=}{strong_equality}% -\begin{itemdecl} -constexpr bool operator!=(strong_equality v, @\unspec@) noexcept; -constexpr bool operator!=(@\unspec@, strong_equality v) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{v.value != 0}. -\end{itemdescr} - \indexlibrarymember{operator<=>}{strong_equality}% \begin{itemdecl} constexpr strong_equality operator<=>(strong_equality v, @\unspec@) noexcept; @@ -4075,13 +4053,11 @@ // comparisons friend constexpr bool operator==(partial_ordering v, @\unspec@) noexcept; - friend constexpr bool operator!=(partial_ordering v, @\unspec@) noexcept; + friend constexpr bool operator==(partial_ordering v, partial_ordering w) noexcept = default; friend constexpr bool operator< (partial_ordering v, @\unspec@) noexcept; friend constexpr bool operator> (partial_ordering v, @\unspec@) noexcept; friend constexpr bool operator<=(partial_ordering v, @\unspec@) noexcept; friend constexpr bool operator>=(partial_ordering v, @\unspec@) noexcept; - friend constexpr bool operator==(@\unspec@, partial_ordering v) noexcept; - friend constexpr bool operator!=(@\unspec@, partial_ordering v) noexcept; friend constexpr bool operator< (@\unspec@, partial_ordering v) noexcept; friend constexpr bool operator> (@\unspec@, partial_ordering v) noexcept; friend constexpr bool operator<=(@\unspec@, partial_ordering v) noexcept; @@ -4131,13 +4107,11 @@ For \tcode{operator@}, \tcode{v.is_ordered \&\& v.value @ 0}. \end{itemdescr} -\indexlibrarymember{operator==}{partial_ordering}% \indexlibrarymember{operator<}{partial_ordering}% \indexlibrarymember{operator>}{partial_ordering}% \indexlibrarymember{operator<=}{partial_ordering}% \indexlibrarymember{operator>=}{partial_ordering}% \begin{itemdecl} -constexpr bool operator==(@\unspec@, partial_ordering v) noexcept; constexpr bool operator< (@\unspec@, partial_ordering v) noexcept; constexpr bool operator> (@\unspec@, partial_ordering v) noexcept; constexpr bool operator<=(@\unspec@, partial_ordering v) noexcept; @@ -4150,18 +4124,6 @@ For \tcode{operator@}, \tcode{v.is_ordered \&\& 0 @ v.value}. \end{itemdescr} -\indexlibrarymember{operator"!=}{partial_ordering}% -\begin{itemdecl} -constexpr bool operator!=(partial_ordering v, @\unspec@) noexcept; -constexpr bool operator!=(@\unspec@, partial_ordering v) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -For \tcode{operator@}, \tcode{!v.is_ordered || v.value != 0}. -\end{itemdescr} - \indexlibrarymember{operator<=>}{partial_ordering}% \begin{itemdecl} constexpr partial_ordering operator<=>(partial_ordering v, @\unspec@) noexcept; @@ -4217,13 +4179,11 @@ // comparisons friend constexpr bool operator==(weak_ordering v, @\unspec@) noexcept; - friend constexpr bool operator!=(weak_ordering v, @\unspec@) noexcept; + friend constexpr bool operator==(weak_ordering v, weak_ordering w) noexcept = default; friend constexpr bool operator< (weak_ordering v, @\unspec@) noexcept; friend constexpr bool operator> (weak_ordering v, @\unspec@) noexcept; friend constexpr bool operator<=(weak_ordering v, @\unspec@) noexcept; friend constexpr bool operator>=(weak_ordering v, @\unspec@) noexcept; - friend constexpr bool operator==(@\unspec@, weak_ordering v) noexcept; - friend constexpr bool operator!=(@\unspec@, weak_ordering v) noexcept; friend constexpr bool operator< (@\unspec@, weak_ordering v) noexcept; friend constexpr bool operator> (@\unspec@, weak_ordering v) noexcept; friend constexpr bool operator<=(@\unspec@, weak_ordering v) noexcept; @@ -4266,14 +4226,12 @@ \end{itemdescr} \indexlibrarymember{operator==}{weak_ordering}% -\indexlibrarymember{operator"!=}{weak_ordering}% \indexlibrarymember{operator<}{weak_ordering}% \indexlibrarymember{operator>}{weak_ordering}% \indexlibrarymember{operator<=}{weak_ordering}% \indexlibrarymember{operator>=}{weak_ordering}% \begin{itemdecl} constexpr bool operator==(weak_ordering v, @\unspec@) noexcept; -constexpr bool operator!=(weak_ordering v, @\unspec@) noexcept; constexpr bool operator< (weak_ordering v, @\unspec@) noexcept; constexpr bool operator> (weak_ordering v, @\unspec@) noexcept; constexpr bool operator<=(weak_ordering v, @\unspec@) noexcept; @@ -4286,15 +4244,11 @@ \tcode{v.value @ 0} for \tcode{operator@}. \end{itemdescr} -\indexlibrarymember{operator==}{weak_ordering}% -\indexlibrarymember{operator"!=}{weak_ordering}% \indexlibrarymember{operator<}{weak_ordering}% \indexlibrarymember{operator>}{weak_ordering}% \indexlibrarymember{operator<=}{weak_ordering}% \indexlibrarymember{operator>=}{weak_ordering}% \begin{itemdecl} -constexpr bool operator==(@\unspec@, weak_ordering v) noexcept; -constexpr bool operator!=(@\unspec@, weak_ordering v) noexcept; constexpr bool operator< (@\unspec@, weak_ordering v) noexcept; constexpr bool operator> (@\unspec@, weak_ordering v) noexcept; constexpr bool operator<=(@\unspec@, weak_ordering v) noexcept; @@ -4366,13 +4320,11 @@ // comparisons friend constexpr bool operator==(strong_ordering v, @\unspec@) noexcept; - friend constexpr bool operator!=(strong_ordering v, @\unspec@) noexcept; + friend constexpr bool operator==(strong_ordering v, strong_ordering w) noexcept = default; friend constexpr bool operator< (strong_ordering v, @\unspec@) noexcept; friend constexpr bool operator> (strong_ordering v, @\unspec@) noexcept; friend constexpr bool operator<=(strong_ordering v, @\unspec@) noexcept; friend constexpr bool operator>=(strong_ordering v, @\unspec@) noexcept; - friend constexpr bool operator==(@\unspec@, strong_ordering v) noexcept; - friend constexpr bool operator!=(@\unspec@, strong_ordering v) noexcept; friend constexpr bool operator< (@\unspec@, strong_ordering v) noexcept; friend constexpr bool operator> (@\unspec@, strong_ordering v) noexcept; friend constexpr bool operator<=(@\unspec@, strong_ordering v) noexcept; @@ -4442,14 +4394,12 @@ \end{itemdescr} \indexlibrarymember{operator==}{strong_ordering}% -\indexlibrarymember{operator"!=}{strong_ordering}% \indexlibrarymember{operator<}{strong_ordering}% \indexlibrarymember{operator>}{strong_ordering}% \indexlibrarymember{operator<=}{strong_ordering}% \indexlibrarymember{operator>=}{strong_ordering}% \begin{itemdecl} constexpr bool operator==(strong_ordering v, @\unspec@) noexcept; -constexpr bool operator!=(strong_ordering v, @\unspec@) noexcept; constexpr bool operator< (strong_ordering v, @\unspec@) noexcept; constexpr bool operator> (strong_ordering v, @\unspec@) noexcept; constexpr bool operator<=(strong_ordering v, @\unspec@) noexcept; @@ -4462,15 +4412,11 @@ \tcode{v.value @ 0} for \tcode{operator@}. \end{itemdescr} -\indexlibrarymember{operator==}{strong_ordering}% -\indexlibrarymember{operator"!=}{strong_ordering}% \indexlibrarymember{operator<}{strong_ordering}% \indexlibrarymember{operator>}{strong_ordering}% \indexlibrarymember{operator<=}{strong_ordering}% \indexlibrarymember{operator>=}{strong_ordering}% \begin{itemdecl} -constexpr bool operator==(@\unspec@, strong_ordering v) noexcept; -constexpr bool operator!=(@\unspec@, strong_ordering v) noexcept; constexpr bool operator< (@\unspec@, strong_ordering v) noexcept; constexpr bool operator> (@\unspec@, strong_ordering v) noexcept; constexpr bool operator<=(@\unspec@, strong_ordering v) noexcept; @@ -4538,183 +4484,426 @@ \end{note} \end{itemdescr} -\rSec2[cmp.alg]{Comparison algorithms} +\rSec2[cmp.concept]{Concept \tcode{ThreeWayComparable}} -\indexlibrary{\idxcode{strong_order}}% -\begin{itemdecl} -template constexpr strong_ordering strong_order(const T& a, const T& b); -\end{itemdecl} +\begin{codeblock} +template + concept @\placeholder{compares-as}@ = // \expos + Same, Cat>; + +template + concept @\placeholder{partially-ordered-with}@ = // \expos + requires(const remove_reference_t& t, const remove_reference_t& u) { + { t < u } -> Boolean; + { t > u } -> Boolean; + { t <= u } -> Boolean; + { t >= u } -> Boolean; + { u < t } -> Boolean; + { u > t } -> Boolean; + { u <= t } -> Boolean; + { u >= t } -> Boolean; + }; +\end{codeblock} -\begin{itemdescr} \pnum -\effects -Compares two values and produces a result of type \tcode{strong_ordering}: - +Let \tcode{t} and \tcode{u} be +lvalues of types \tcode{const remove_reference_t} and +\tcode{const remove_reference_t}, respectively. +\tcode{T} and \tcode{U} model +\tcode{\placeholder{partially-ordered-with}} only if: \begin{itemize} \item -If \tcode{numeric_limits::is_iec559} is \tcode{true}, -returns a result of type \tcode{strong_ordering} -that is consistent with the \tcode{totalOrder} operation -as specified in ISO/IEC/IEEE 60559. + \tcode{t < u}, + \tcode{t <= u}, + \tcode{t > u}, + \tcode{t >= u}, + \tcode{u < t}, + \tcode{u <= t}, + \tcode{u > t}, and + \tcode{u >= t} + have the same domain. +\item + \tcode{bool(t < u) == bool(u > t)} is \tcode{true}, \item -Otherwise, returns \tcode{a <=> b} -if that expression is well-formed and -convertible to \tcode{strong_ordering}. + \tcode{bool(u < t) == bool(t > u)} is \tcode{true}, \item -Otherwise, if the expression \tcode{a <=> b} is well-formed, -then the function is defined as deleted. + \tcode{bool(t <= u) == bool(u >= t)} is \tcode{true}, and \item -Otherwise, if the expressions \tcode{a == b} and \tcode{a < b} -are each well-formed and convertible to \tcode{bool}, then + \tcode{bool(u <= t) == bool(t >= u)} is \tcode{true}. +\end{itemize} + +\begin{codeblock} +template + concept ThreeWayComparable = + @\placeholder{weakly-equality-comparable-with}@ && + (!ConvertibleTo || @\placeholder{partially-ordered-with}@) && + requires(const remove_reference_t& a, const remove_reference_t& b) { + { a <=> b } -> @\placeholder{compares-as}@; + }; +\end{codeblock} + +\pnum +Let \tcode{a} and \tcode{b} be lvalues +of type \tcode{const remove_reference_t}. +\tcode{T} and \tcode{Cat} +model \tcode{\libconcept{ThreeWayComparable}} only if: \begin{itemize} \item -if \tcode{a == b} is \tcode{true}, -returns \tcode{strong_ordering::equal}; + \tcode{(a <=> b == 0) == bool(a == b)} is \tcode{true}; \item -otherwise, if \tcode{a < b} is \tcode{true}, -returns \tcode{strong_ordering::less}; + \tcode{(a <=> b != 0) == bool(a != b)} is \tcode{true}; \item -otherwise, -returns \tcode{strong_ordering::greater}. -\end{itemize} + \tcode{((a <=> b) <=> 0)} and \tcode{(0 <=> (b <=> a))} are equal; +\item + if \tcode{Cat} is convertible to \tcode{strong_equality}, \tcode{T} models + \libconcept{EqualityComparable}\iref{concept.equalitycomparable}; +\item + if \tcode{Cat} is convertible to \tcode{partial_ordering}: + \begin{itemize} + \item + \tcode{(a <=> b < 0) == bool(a < b)} is \tcode{true}, + \item + \tcode{(a <=> b > 0) == bool(a > b)} is \tcode{true}, + \item + \tcode{(a <=> b <= 0) == bool(a <= b)} is \tcode{true}, and + \item + \tcode{(a <=> b >= 0) == bool(a >= b)} is \tcode{true}; and + \end{itemize} \item -Otherwise, the function is defined as deleted. + If \tcode{Cat} is convertible to \tcode{strong_ordering}, \tcode{T} models + \libconcept{StrictTotallyOrdered}\iref{concept.stricttotallyordered}. \end{itemize} -\end{itemdescr} -\indexlibrary{\idxcode{weak_order}}% -\begin{itemdecl} -template constexpr weak_ordering weak_order(const T& a, const T& b); -\end{itemdecl} +\begin{codeblock} +template + concept ThreeWayComparableWith = + @\placeholder{weakly-equality-comparable-with}@ && + (!ConvertibleTo || @\placeholder{partially-ordered-with}@) && + ThreeWayComparable && + ThreeWayComparable && + CommonReference&, const remove_reference_t&> && + ThreeWayComparable< + common_reference_t&, const remove_reference_t&>, Cat> && + requires(const remove_reference_t& t, const remove_reference_t& u) { + { t <=> u } -> @\placeholder{compares-as}@; + { u <=> t } -> @\placeholder{compares-as}@; + }; +\end{codeblock} -\begin{itemdescr} \pnum -\effects -Compares two values and produces a result of type \tcode{weak_ordering}: - +Let \tcode{t} and \tcode{u} be lvalues +of types \tcode{const remove_reference_t} and +\tcode{const remove_reference_t}, respectively. +Let \tcode{C} be +\tcode{common_reference_t\&, const remove_reference_t\&>}. +\tcode{T}, \tcode{U}, and \tcode{Cat} +model \tcode{\libconcept{ThreeWayComparableWith}} only if: \begin{itemize} \item -Returns \tcode{a <=> b} if that expression is well-formed and -convertible to \tcode{weak_ordering}. + \tcode{t <=> u} and \tcode{u <=> t} have the same domain; \item -Otherwise, if the expression \tcode{a <=> b} is well-formed, -then the function is defined as deleted. + \tcode{((t <=> u) <=> 0)} and \tcode{(0 <=> (u <=> t))} are equal; \item -Otherwise, if the expressions \tcode{a == b} and \tcode{a < b} -are each well-formed and convertible to \tcode{bool}, then -\begin{itemize} + \tcode{(t <=> u == 0) == bool(t == u)} is \tcode{true}; \item -if \tcode{a == b} is \tcode{true}, -returns \tcode{weak_ordering::equivalent}; + \tcode{(t <=> u != 0) == bool(t != u)} is \tcode{true}; \item -otherwise, if \tcode{a < b} is \tcode{true}, -returns \tcode{weak_ordering::less}; + \tcode{Cat(t <=> u) == Cat(C(t) <=> C(u))} is \tcode{true}; \item -otherwise, returns \tcode{weak_ordering::greater}. -\end{itemize} + if \tcode{Cat} is convertible to \tcode{strong_equality}, + \tcode{T} and \tcode{U} model + \tcode{\libconcept{EqualityComparableWith}}\iref{concept.equalitycomparable}; \item -Otherwise, the function is defined as deleted. + if \tcode{Cat} is convertible to \tcode{partial_ordering}: + \begin{itemize} + \item + \tcode{(t <=> u < 0) == bool(t < u)} is \tcode{true}, + \item + \tcode{(t <=> u > 0) == bool(t > u)} is \tcode{true}, + \item + \tcode{(t <=> u <= 0) == bool(t <= u)} is \tcode{true}, + \item + \tcode{(t <=> u >= 0) == bool(t >= u)} is \tcode{true}; and + \end{itemize} +\item + if \tcode{Cat} is convertible to \tcode{strong_ordering}, + \tcode{T} and \tcode{U} model + \tcode{\libconcept{StrictTotallyOrderedWith}}\iref{concept.stricttotallyordered}. \end{itemize} -\end{itemdescr} -\indexlibrary{\idxcode{partial_order}}% +\rSec2[cmp.result]{Result of three-way comparison} + +\pnum +The behavior of a program +that adds specializations for the \tcode{compare_three_way_result} template +defined in this subclause is undefined. + +\pnum +For the \tcode{compare_three_way_result} type trait +applied to the types \tcode{T} and \tcode{U}, +let \tcode{t} and \tcode{u} denote lvalues of types +\tcode{const remove_reference_t} and \tcode{const remove_reference_t}, +respectively. +If the expression \tcode{t <=> u} is well-formed +when treated as an unevaluated operand\iref{expr.context}, +the member \grammarterm{typedef-name} \tcode{type} +denotes the type \tcode{decltype(t <=> u)}. +Otherwise, there is no member \tcode{type}. + +\rSec2[cmp.object]{Class \tcode{compare_three_way}} + +\pnum +In this subclause, \tcode{\placeholdernc{BUILTIN_PTR_THREE_WAY}(T, U)} +for types \tcode{T} and \tcode{U} is a boolean constant expression. +\tcode{\placeholdernc{BUILTIN_PTR_THREE_WAY}(T, U)} is \tcode{true} +if and only if \tcode{<=>} in the expression +\begin{codeblock} +declval() <=> declval() +\end{codeblock} +resolves to a built-in operator comparing pointers. + +\begin{codeblock} +struct compare_three_way { + template + requires ThreeWayComparableWith || @\placeholdernc{BUILTIN_PTR_THREE_WAY}@(T, U) + constexpr auto operator()(T&& t, U&& u) const; + + using is_transparent = @\unspec@; +}; +\end{codeblock} + +\pnum +In addition to being available via inclusion of the \tcode{} header, +the class \tcode{compare_three_way} is available +when the header \tcode{} is included. + \begin{itemdecl} -template constexpr partial_ordering partial_order(const T& a, const T& b); +constexpr auto operator()(T&& t, U&& u) const; \end{itemdecl} \begin{itemdescr} +\pnum +\expects +If the expression \tcode{std::forward(t) <=> std::forward(u)} results in +a call to a built-in operator \tcode{<=>} comparing pointers of type \tcode{P}, +the conversion sequences from both \tcode{T} and \tcode{U} to \tcode{P} +are equality-preserving\iref{concepts.equality}. + \pnum \effects -Compares two values and produces a result of type \tcode{partial_ordering}: +\begin{itemize} +\item + If the expression \tcode{std::forward(t) <=> std::forward(u)} results in + a call to a built-in operator \tcode{<=>} comparing pointers of type \tcode{P}, + returns \tcode{strong_ordering::less} + if (the converted value of) \tcode{t} precedes \tcode{u} + in the implementation-defined strict total order\iref{range.cmp} + over pointers of type \tcode{P}, + \tcode{strong_ordering::greater} + if \tcode{u} precedes \tcode{t}, and + otherwise \tcode{strong_ordering::equal}. +\item + Otherwise, equivalent to: \tcode{return std::forward(t) <=> std::forward(u);} +\end{itemize} +\end{itemdescr} + +\rSec2[cmp.alg]{Comparison algorithms} +\indexlibrary{\idxcode{strong_order}}% +\pnum +The name \tcode{strong_order} denotes +a customization point object\iref{customization.point.object}. +The expression \tcode{strong_order(E, F)} +for some subexpressions \tcode{E} and \tcode{F} +is expression-equivalent\iref{defns.expression-equivalent} to the following: \begin{itemize} \item -Returns \tcode{a <=> b} if that expression is well-formed and -convertible to \tcode{partial_ordering}. + If the decayed types of \tcode{E} and \tcode{F} differ, + \tcode{strong_order(E, F)} is ill-formed. +\item + Otherwise, \tcode{strong_ordering(strong_order(E, F))} + if it is a well-formed expression + with overload resolution performed in a context + that does not include a declaration of \tcode{std::strong_order}. +\item + Otherwise, if the decayed type \tcode{T} of \tcode{E} is + a floating-point type, + yields a value of type \tcode{strong_ordering} + that is consistent with the ordering + observed by \tcode{T}’s comparison operators, and + if \tcode{numeric_limits::is_iec559} is \tcode{true}, + is additionally consistent with the \tcode{totalOrder} operation + as specified in ISO/IEC/IEEE 60599. \item -Otherwise, if the expression \tcode{a <=> b} is well-formed, -then the function is defined as deleted. + Otherwise, \tcode{strong_ordering(E <=> F)} if it is a well-formed expression. \item -Otherwise, if the expressions \tcode{a == b} and \tcode{a < b} -are each well-formed and convertible to \tcode{bool}, then + Otherwise, \tcode{strong_order(E, F)} is ill-formed. + \begin{note} + This case can result in substitution failure + when \tcode{strong_order(E, F)} appears in the immediate context + of a template instantiation. + \end{note} +\end{itemize} + +\indexlibrary{\idxcode{weak_order}}% +\pnum +The name \tcode{weak_order} denotes +a customization point object\iref{customization.point.object}. +The expression \tcode{weak_order(E, F)} +for some subexpressions \tcode{E} and \tcode{F} +is expression-equivalent\iref{defns.expression-equivalent} to the following: \begin{itemize} \item -if \tcode{a == b} is \tcode{true}, -returns \tcode{partial_ordering::equivalent}; + If the decayed types of \tcode{E} and \tcode{F} differ, + \tcode{weak_order(E, F)} is ill-formed. \item -otherwise, if \tcode{a < b} is \tcode{true}, -returns \tcode{partial_ordering::less}; + Otherwise, \tcode{weak_ordering(weak_order(E, F))} + if it is a well-formed expression + with overload resolution performed in a context + that does not include a declaration of \tcode{std::weak_order}. \item -otherwise, returns \tcode{partial_ordering::greater}. -\end{itemize} + Otherwise, if the decayed type \tcode{T} of \tcode{E} + is a floating-point type, + yields a value of type \tcode{weak_ordering} + that is consistent with the ordering + observed by \tcode{T}’s comparison operators and \tcode{strong_order}, and + if \tcode{numeric_limits::is_iec559} is \tcode{true}, + is additionally consistent with the following equivalence classes, + ordered from lesser to greater: + \begin{itemize} + \item together, all negative NaN values; + \item negative infinity; + \item each normal negative value; + \item each subnormal negative value; + \item together, both zero values; + \item each subnormal positive value; + \item each normal positive value; + \item positive infinity; + \item together, all positive NaN values. + \end{itemize} +\item + Otherwise, \tcode{weak_ordering(E <=> F)} if it is a well-formed expression. \item -Otherwise, the function is defined as deleted. + Otherwise, \tcode{weak_ordering(strong_order(E, F))} + if it is a well-formed expression. +\item + Otherwise, \tcode{weak_order(E, F)} is ill-formed. + \begin{note} + This case can result in substitution failure + when \tcode{std::weak_order(E, F)} appears in the immediate context + of a template instantiation. + \end{note} \end{itemize} -\end{itemdescr} - -\indexlibrary{\idxcode{strong_equal}}% -\begin{itemdecl} -template constexpr strong_equality strong_equal(const T& a, const T& b); -\end{itemdecl} -\begin{itemdescr} +\indexlibrary{\idxcode{partial_order}}% \pnum -\effects -Compares two values and produces a result of type \tcode{strong_equality}: - +The name \tcode{partial_order} denotes +a customization point object\iref{customization.point.object}. +The expression \tcode{partial_order(E, F)} +for some subexpressions \tcode{E} and \tcode{F} +is expression-equivalent\iref{defns.expression-equivalent} to the following: \begin{itemize} \item -Returns \tcode{a <=> b} if that expression is well-formed and -convertible to \tcode{strong_equality}. + If the decayed types of \tcode{E} and \tcode{F} differ, + \tcode{partial_order(E, F)} is ill-formed. \item -Otherwise, if the expression \tcode{a <=> b} is well-formed, -then the function is defined as deleted. + Otherwise, \tcode{partial_ordering(partial_order(E, F))} + if it is a well-formed expression + with overload resolution performed in a context + that does not include a declaration of \tcode{std::partial_order}. \item -Otherwise, if the expression \tcode{a == b} -is well-formed and convertible to \tcode{bool}, then -\begin{itemize} + Otherwise, \tcode{partial_ordering(E <=> F)} + if it is a well-formed expression. \item -if \tcode{a == b} is \tcode{true}, -returns \tcode{strong_equality::equal}; + Otherwise, \tcode{partial_ordering(weak_order(E, F))} + if it is a well-formed expression. \item -otherwise, returns \tcode{strong_equality::nonequal}. + Otherwise, \tcode{partial_order(E, F)} is ill-formed. + \begin{note} + This case can result in substitution failure + when \tcode{std::partial_order(E, F)} + appears in the immediate context of a template instantiation. +\end{note} \end{itemize} + +\indexlibrary{\idxcode{compare_strong_order_fallback}}% +\pnum +The name \tcode{compare_strong_order_fallback} +denotes a customization point object\iref{customization.point.object}. +The expression \tcode{compare_strong_order_fallback(E, F)} +for some subexpressions \tcode{E} and {F} +is expression-equivalent\iref{defns.expression-equivalent} to: +\begin{itemize} +\item + If the decayed types of \tcode{E} and \tcode{F} differ, + \tcode{compare_strong_order_fallback(E, F)} is ill-formed. +\item + Otherwise, \tcode{strong_order(E, F)} if it is a well-formed expression. +\item + Otherwise, if the expressions \tcode{E == F} and \tcode{E < F} + are both well-formed and convertible to \tcode{bool}, +\begin{codeblock} +E == F ? strong_ordering::equal : +E < F ? strong_ordering::less : + strong_ordering::greater +\end{codeblock} +except that \tcode{E} and \tcode{F} are evaluated only once. \item -Otherwise, the function is defined as deleted. +Otherwise, \tcode{compare_strong_order_fallback(E, F)} is ill-formed. \end{itemize} -\end{itemdescr} -\indexlibrary{\idxcode{weak_equal}}% -\begin{itemdecl} -template constexpr weak_equality weak_equal(const T& a, const T& b); -\end{itemdecl} - -\begin{itemdescr} +\indexlibrary{\idxcode{compare_weak_order_fallback}}% \pnum -\effects -Compares two values and produces a result of type \tcode{weak_equality}: - +The name \tcode{compare_weak_order_fallback} denotes +a customization point object\iref{customization.point.object}. +The expression \tcode{compare_weak_order_fallback(E, F)} +for some subexpressions \tcode{E} and \tcode{F} +is expression-equivalent\iref{defns.expression-equivalent} to: \begin{itemize} \item -Returns \tcode{a <=> b} if that expression is well-formed and -convertible to \tcode{weak_equality}. + If the decayed types of \tcode{E} and \tcode{F} differ, + \tcode{compare_weak_order_fallback(E, F)} is ill-formed. \item -Otherwise, if the expression \tcode{a <=> b} is well-formed, -then the function is defined as deleted. + Otherwise, \tcode{weak_order(E, F)} if it is a well-formed expression. +\item + Otherwise, if the expressions \tcode{E == F} and \tcode{E < F} + are both well-formed and convertible to \tcode{bool}, +\begin{codeblock} +E == F ? weak_ordering::equal : +E < F ? weak_ordering::less : + weak_ordering::greater +\end{codeblock} +except that \tcode{E} and \tcode{F} are evaluated only once. \item -Otherwise, if the expression \tcode{a == b} -is well-formed and convertible to \tcode{bool}, then + Otherwise, \tcode{compare_weak_order_fallback(E, F)} is ill-formed. +\end{itemize} + +\indexlibrary{\idxcode{compare_partial_order_fallback}}% +\pnum +The name \tcode{compare_partial_order_fallback} denotes +a customization point object\iref{customization.point.object}. +The expression \tcode{compare_partial_order_fallback(E, F)} +for some subexpressions \tcode{E} and \tcode{F} +is expression-equivalent\iref{defns.expression-equivalent} to: \begin{itemize} \item -if \tcode{a == b} is \tcode{true}, -returns \tcode{weak_equality::equivalent}; + If the decayed types of \tcode{E} and \tcode{F} differ, + \tcode{compare_partial_order_fallback(E, F)} is ill-formed. \item -otherwise, returns \tcode{weak_equality::nonequivalent}. -\end{itemize} + Otherwise, \tcode{partial_order(E, F)} if it is a well-formed expression. \item -Otherwise, the function is defined as deleted. + Otherwise, if the expressions \tcode{E == F} and \tcode{E < F} + are both well-formed and convertible to \tcode{bool}, +\begin{codeblock} +E == F ? partial_ordering::equivalent : +E < F ? partial_ordering::less : +F < E ? partial_ordering::greater : + partial_ordering::unordered +\end{codeblock} +except that \tcode{E} and \tcode{F} are evaluated only once. +\item + Otherwise, \tcode{compare_partial_order_fallback(E, F)} is ill-formed. \end{itemize} -\end{itemdescr} \rSec1[support.coroutine]{Coroutines} @@ -4742,11 +4931,7 @@ // \ref{coroutine.handle.compare}, comparison operators constexpr bool operator==(coroutine_handle<> x, coroutine_handle<> y) noexcept; - constexpr bool operator!=(coroutine_handle<> x, coroutine_handle<> y) noexcept; - constexpr bool operator<(coroutine_handle<> x, coroutine_handle<> y) noexcept; - constexpr bool operator>(coroutine_handle<> x, coroutine_handle<> y) noexcept; - constexpr bool operator<=(coroutine_handle<> x, coroutine_handle<> y) noexcept; - constexpr bool operator>=(coroutine_handle<> x, coroutine_handle<> y) noexcept; + constexpr strong_ordering operator<=>(coroutine_handle<> x, coroutine_handle<> y) noexcept; // \ref{coroutine.handle.hash}, hash support template struct hash; @@ -5022,16 +5207,13 @@ \pnum \returns \tcode{x.address() == y.address()}. \end{itemdescr} -\indexlibrarymember{operator<}{coroutine_handle}% -\indexlibrarymember{operator>}{coroutine_handle}% -\indexlibrarymember{operator<=}{coroutine_handle}% -\indexlibrarymember{operator>=}{coroutine_handle}% +\indexlibrarymember{operator<=>}{coroutine_handle}% \begin{itemdecl} -constexpr bool operator<(coroutine_handle<> x, coroutine_handle<> y) noexcept; +constexpr strong_ordering operator<=>(coroutine_handle<> x, coroutine_handle<> y) noexcept; \end{itemdecl} \begin{itemdescr} -\pnum \returns \tcode{less<>()(x.address(), y.address())}. +\pnum \returns \tcode{compare_three_way()(x.address(), y.address())}. \end{itemdescr} \rSec3[coroutine.handle.hash]{Hash support} diff --git a/source/threads.tex b/source/threads.tex index fe4b671934..b6cfb1fdc9 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -360,11 +360,7 @@ }; bool operator==(thread::id x, thread::id y) noexcept; - bool operator!=(thread::id x, thread::id y) noexcept; - bool operator<(thread::id x, thread::id y) noexcept; - bool operator>(thread::id x, thread::id y) noexcept; - bool operator<=(thread::id x, thread::id y) noexcept; - bool operator>=(thread::id x, thread::id y) noexcept; + strong_ordering operator<=>(thread::id x, thread::id y) noexcept; template basic_ostream& @@ -415,51 +411,23 @@ execution. \end{itemdescr} -\indexlibrarymember{operator"!=}{thread::id}% +\indexlibrarymember{operator<=>}{thread::id}% \begin{itemdecl} -bool operator!=(thread::id x, thread::id y) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(x == y)} -\end{itemdescr} - -\indexlibrarymember{operator<}{thread::id}% -\begin{itemdecl} -bool operator<(thread::id x, thread::id y) noexcept; +strong_ordering operator<=>(thread::id x, thread::id y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns A value such that \tcode{operator<} is a total ordering as described in~\ref{alg.sorting}. -\end{itemdescr} - -\indexlibrarymember{operator>}{thread::id}% -\begin{itemdecl} -bool operator>(thread::id x, thread::id y) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{y < x}. -\end{itemdescr} - -\indexlibrarymember{operator<=}{thread::id}% -\begin{itemdecl} -bool operator<=(thread::id x, thread::id y) noexcept; -\end{itemdecl} +Let $P(\tcode{x}, \tcode{y})$ be +an unspecified total ordering over \tcode{thread::id} +as described in \ref{alg.sorting}. -\begin{itemdescr} \pnum -\returns \tcode{!(y < x)}. -\end{itemdescr} - -\indexlibrarymember{operator>=}{thread::id}% -\begin{itemdecl} -bool operator>=(thread::id x, thread::id y) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(x < y)}. +\returns +\tcode{strong_ordering::less} if $P(\tcode{x}, \tcode{y})$ is \tcode{true}. +Otherwise, \tcode{strong_ordering::greater} +if $P(\tcode{y}, \tcode{x})$ is \tcode{true}. +Otherwise, \tcode{strong_ordering::equal}. \end{itemdescr} \indexlibrarymember{operator<<}{thread::id}% diff --git a/source/time.tex b/source/time.tex index e02751fe43..e3135ff0f6 100644 --- a/source/time.tex +++ b/source/time.tex @@ -121,9 +121,6 @@ template constexpr bool operator==(const duration& lhs, const duration& rhs); - template - constexpr bool operator!=(const duration& lhs, - const duration& rhs); template constexpr bool operator< (const duration& lhs, const duration& rhs); @@ -136,6 +133,10 @@ template constexpr bool operator>=(const duration& lhs, const duration& rhs); + template + requires @\seebelow@ + constexpr auto operator<=>(const duration& lhs, + const duration& rhs); // \ref{time.duration.cast}, \tcode{duration_cast} template @@ -194,9 +195,6 @@ template constexpr bool operator==(const time_point& lhs, const time_point& rhs); - template - constexpr bool operator!=(const time_point& lhs, - const time_point& rhs); template constexpr bool operator< (const time_point& lhs, const time_point& rhs); @@ -209,6 +207,9 @@ template constexpr bool operator>=(const time_point& lhs, const time_point& rhs); + template Duration2> + constexpr auto operator<=>(const time_point& lhs, + const time_point& rhs); // \ref{time.point.cast}, \tcode{time_point_cast} template @@ -357,11 +358,7 @@ class day; constexpr bool operator==(const day& x, const day& y) noexcept; - constexpr bool operator!=(const day& x, const day& y) noexcept; - constexpr bool operator< (const day& x, const day& y) noexcept; - constexpr bool operator> (const day& x, const day& y) noexcept; - constexpr bool operator<=(const day& x, const day& y) noexcept; - constexpr bool operator>=(const day& x, const day& y) noexcept; + constexpr strong_ordering operator<=>(const day& x, const day& y) noexcept; constexpr day operator+(const day& x, const days& y) noexcept; constexpr day operator+(const days& x, const day& y) noexcept; @@ -381,11 +378,7 @@ class month; constexpr bool operator==(const month& x, const month& y) noexcept; - constexpr bool operator!=(const month& x, const month& y) noexcept; - constexpr bool operator< (const month& x, const month& y) noexcept; - constexpr bool operator> (const month& x, const month& y) noexcept; - constexpr bool operator<=(const month& x, const month& y) noexcept; - constexpr bool operator>=(const month& x, const month& y) noexcept; + constexpr strong_ordering operator<=>(const month& x, const month& y) noexcept; constexpr month operator+(const month& x, const months& y) noexcept; constexpr month operator+(const months& x, const month& y) noexcept; @@ -405,11 +398,7 @@ class year; constexpr bool operator==(const year& x, const year& y) noexcept; - constexpr bool operator!=(const year& x, const year& y) noexcept; - constexpr bool operator< (const year& x, const year& y) noexcept; - constexpr bool operator> (const year& x, const year& y) noexcept; - constexpr bool operator<=(const year& x, const year& y) noexcept; - constexpr bool operator>=(const year& x, const year& y) noexcept; + constexpr strong_ordering operator<=>(const year& x, const year& y) noexcept; constexpr year operator+(const year& x, const years& y) noexcept; constexpr year operator+(const years& x, const year& y) noexcept; @@ -430,7 +419,6 @@ class weekday; constexpr bool operator==(const weekday& x, const weekday& y) noexcept; - constexpr bool operator!=(const weekday& x, const weekday& y) noexcept; constexpr weekday operator+(const weekday& x, const days& y) noexcept; constexpr weekday operator+(const days& x, const weekday& y) noexcept; @@ -451,7 +439,6 @@ class weekday_indexed; constexpr bool operator==(const weekday_indexed& x, const weekday_indexed& y) noexcept; - constexpr bool operator!=(const weekday_indexed& x, const weekday_indexed& y) noexcept; template basic_ostream& @@ -461,7 +448,6 @@ class weekday_last; constexpr bool operator==(const weekday_last& x, const weekday_last& y) noexcept; - constexpr bool operator!=(const weekday_last& x, const weekday_last& y) noexcept; template basic_ostream& @@ -471,11 +457,7 @@ class month_day; constexpr bool operator==(const month_day& x, const month_day& y) noexcept; - constexpr bool operator!=(const month_day& x, const month_day& y) noexcept; - constexpr bool operator< (const month_day& x, const month_day& y) noexcept; - constexpr bool operator> (const month_day& x, const month_day& y) noexcept; - constexpr bool operator<=(const month_day& x, const month_day& y) noexcept; - constexpr bool operator>=(const month_day& x, const month_day& y) noexcept; + constexpr strong_ordering operator<=>(const month_day& x, const month_day& y) noexcept; template basic_ostream& @@ -491,11 +473,8 @@ class month_day_last; constexpr bool operator==(const month_day_last& x, const month_day_last& y) noexcept; - constexpr bool operator!=(const month_day_last& x, const month_day_last& y) noexcept; - constexpr bool operator< (const month_day_last& x, const month_day_last& y) noexcept; - constexpr bool operator> (const month_day_last& x, const month_day_last& y) noexcept; - constexpr bool operator<=(const month_day_last& x, const month_day_last& y) noexcept; - constexpr bool operator>=(const month_day_last& x, const month_day_last& y) noexcept; + constexpr strong_ordering operator<=>(const month_day_last& x, + const month_day_last& y) noexcept; template basic_ostream& @@ -505,7 +484,6 @@ class month_weekday; constexpr bool operator==(const month_weekday& x, const month_weekday& y) noexcept; - constexpr bool operator!=(const month_weekday& x, const month_weekday& y) noexcept; template basic_ostream& @@ -515,7 +493,6 @@ class month_weekday_last; constexpr bool operator==(const month_weekday_last& x, const month_weekday_last& y) noexcept; - constexpr bool operator!=(const month_weekday_last& x, const month_weekday_last& y) noexcept; template basic_ostream& @@ -525,11 +502,7 @@ class year_month; constexpr bool operator==(const year_month& x, const year_month& y) noexcept; - constexpr bool operator!=(const year_month& x, const year_month& y) noexcept; - constexpr bool operator< (const year_month& x, const year_month& y) noexcept; - constexpr bool operator> (const year_month& x, const year_month& y) noexcept; - constexpr bool operator<=(const year_month& x, const year_month& y) noexcept; - constexpr bool operator>=(const year_month& x, const year_month& y) noexcept; + constexpr strong_ordering operator<=>(const year_month& x, const year_month& y) noexcept; constexpr year_month operator+(const year_month& ym, const months& dm) noexcept; constexpr year_month operator+(const months& dm, const year_month& ym) noexcept; @@ -553,11 +526,8 @@ class year_month_day; constexpr bool operator==(const year_month_day& x, const year_month_day& y) noexcept; - constexpr bool operator!=(const year_month_day& x, const year_month_day& y) noexcept; - constexpr bool operator< (const year_month_day& x, const year_month_day& y) noexcept; - constexpr bool operator> (const year_month_day& x, const year_month_day& y) noexcept; - constexpr bool operator<=(const year_month_day& x, const year_month_day& y) noexcept; - constexpr bool operator>=(const year_month_day& x, const year_month_day& y) noexcept; + constexpr strong_ordering operator<=>(const year_month_day& x, + const year_month_day& y) noexcept; constexpr year_month_day operator+(const year_month_day& ymd, const months& dm) noexcept; constexpr year_month_day operator+(const months& dm, const year_month_day& ymd) noexcept; @@ -582,16 +552,8 @@ constexpr bool operator==(const year_month_day_last& x, const year_month_day_last& y) noexcept; - constexpr bool operator!=(const year_month_day_last& x, - const year_month_day_last& y) noexcept; - constexpr bool operator< (const year_month_day_last& x, - const year_month_day_last& y) noexcept; - constexpr bool operator> (const year_month_day_last& x, - const year_month_day_last& y) noexcept; - constexpr bool operator<=(const year_month_day_last& x, - const year_month_day_last& y) noexcept; - constexpr bool operator>=(const year_month_day_last& x, - const year_month_day_last& y) noexcept; + constexpr strong_ordering operator<=>(const year_month_day_last& x, + const year_month_day_last& y) noexcept; constexpr year_month_day_last operator+(const year_month_day_last& ymdl, const months& dm) noexcept; @@ -615,8 +577,6 @@ constexpr bool operator==(const year_month_weekday& x, const year_month_weekday& y) noexcept; - constexpr bool operator!=(const year_month_weekday& x, - const year_month_weekday& y) noexcept; constexpr year_month_weekday operator+(const year_month_weekday& ymwd, const months& dm) noexcept; @@ -640,8 +600,6 @@ constexpr bool operator==(const year_month_weekday_last& x, const year_month_weekday_last& y) noexcept; - constexpr bool operator!=(const year_month_weekday_last& x, - const year_month_weekday_last& y) noexcept; constexpr year_month_weekday_last operator+(const year_month_weekday_last& ymwdl, const months& dm) noexcept; @@ -789,12 +747,7 @@ class time_zone; bool operator==(const time_zone& x, const time_zone& y) noexcept; - bool operator!=(const time_zone& x, const time_zone& y) noexcept; - - bool operator<(const time_zone& x, const time_zone& y) noexcept; - bool operator>(const time_zone& x, const time_zone& y) noexcept; - bool operator<=(const time_zone& x, const time_zone& y) noexcept; - bool operator>=(const time_zone& x, const time_zone& y) noexcept; + strong_ordering operator<=>(const time_zone& x, const time_zone& y) noexcept; // \ref{time.zone.zonedtraits}, class template \tcode{zoned_traits} template struct zoned_traits; @@ -808,10 +761,6 @@ bool operator==(const zoned_time& x, const zoned_time& y); - template - bool operator!=(const zoned_time& x, - const zoned_time& y); - template basic_ostream& operator<<(basic_ostream& os, @@ -821,20 +770,10 @@ class leap; bool operator==(const leap& x, const leap& y); - bool operator!=(const leap& x, const leap& y); - bool operator< (const leap& x, const leap& y); - bool operator> (const leap& x, const leap& y); - bool operator<=(const leap& x, const leap& y); - bool operator>=(const leap& x, const leap& y); + strong_ordering operator<=>(const leap& x, const leap& y); template bool operator==(const leap& x, const sys_time& y); - template - bool operator==(const sys_time& x, const leap& y); - template - bool operator!=(const leap& x, const sys_time& y); - template - bool operator!=(const sys_time& x, const leap& y); template bool operator< (const leap& x, const sys_time& y); template @@ -851,16 +790,14 @@ bool operator>=(const leap& x, const sys_time& y); template bool operator>=(const sys_time& x, const leap& y); + template Duration> + auto operator<=>(const leap& x, const sys_time& y); // \ref{time.zone.link}, class \tcode{link} class link; bool operator==(const link& x, const link& y); - bool operator!=(const link& x, const link& y); - bool operator< (const link& x, const link& y); - bool operator> (const link& x, const link& y); - bool operator<=(const link& x, const link& y); - bool operator>=(const link& x, const link& y); + strong_ordering operator<=>(const link& x, const link& y); // \ref{time.format}, formatting template struct @\placeholder{local-time-format-t}@; // \expos @@ -1713,18 +1650,6 @@ \returns \tcode{CT(lhs).count() == CT(rhs).count()}. \end{itemdescr} -\indexlibrarymember{operator"!=}{duration}% -\begin{itemdecl} -template - constexpr bool operator!=(const duration& lhs, - const duration& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(lhs == rhs)}. -\end{itemdescr} - \indexlibrarymember{operator<}{duration}% \begin{itemdecl} template @@ -1773,6 +1698,19 @@ \returns \tcode{!(lhs < rhs)}. \end{itemdescr} +\indexlibrarymember{operator<=>}{duration}% +\begin{itemdecl} +template + requires ThreeWayComparable + constexpr auto operator<=>(const duration& lhs, + const duration& rhs); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{CT(lhs).count() <=> CT(rhs).count()}. +\end{itemdescr} + \rSec2[time.duration.cast]{\tcode{duration_cast}} \indexlibrary{\idxcode{duration}!\idxcode{duration_cast}}% @@ -2368,18 +2306,6 @@ \returns \tcode{lhs.time_since_epoch() == rhs.time_since_epoch()}. \end{itemdescr} -\indexlibrarymember{operator"!=}{time_point}% -\begin{itemdecl} -template - constexpr bool operator!=(const time_point& lhs, - const time_point& rhs); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(lhs == rhs)}. -\end{itemdescr} - \indexlibrarymember{operator<}{time_point}% \begin{itemdecl} template @@ -2428,6 +2354,19 @@ \returns \tcode{!(lhs < rhs)}. \end{itemdescr} +\indexlibrarymember{operator>=}{time_point}% +\begin{itemdecl} +template Duration2> + constexpr auto operator<=>(const time_point& lhs, + const time_point& rhs); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{lhs.time_since_epoch() <=> rhs.time_since_epoch()}. +\end{itemdescr} + \rSec2[time.point.cast]{\tcode{time_point_cast}} \indexlibrary{\idxcode{time_point}!\idxcode{time_point_cast}}% @@ -3940,14 +3879,14 @@ \returns \tcode{unsigned\{x\} == unsigned\{y\}}. \end{itemdescr} -\indexlibrarymember{operator<}{day}% +\indexlibrarymember{operator<=>}{day}% \begin{itemdecl} -constexpr bool operator<(const day& x, const day& y) noexcept; +onstexpr strong_ordering operator<=>(const day& x, const day& y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{unsigned\{x\} < unsigned\{y\}}. +\returns \tcode{unsigned\{x\} <=> unsigned\{y\}}. \end{itemdescr} \indexlibrarymember{operator+}{day}% @@ -4212,14 +4151,14 @@ \returns \tcode{unsigned\{x\} == unsigned\{y\}}. \end{itemdescr} -\indexlibrarymember{operator<}{month}% +\indexlibrarymember{operator<=>}{month}% \begin{itemdecl} -constexpr bool operator<(const month& x, const month& y) noexcept; +constexpr strong_ordering operator<=>(const month& x, const month& y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{unsigned\{x\} < unsigned\{y\}}. +\returns \tcode{unsigned\{x\} <=> unsigned\{y\}}. \end{itemdescr} \indexlibrarymember{operator+}{month}% @@ -4554,14 +4493,14 @@ \returns \tcode{int\{x\} == int\{y\}}. \end{itemdescr} -\indexlibrarymember{operator<}{year}% +\indexlibrarymember{operator<=>}{year}% \begin{itemdecl} -constexpr bool operator<(const year& x, const year& y) noexcept; +constexpr strong_ordering operator<=>(const year& x, const year& y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{int\{x\} < int\{y\}}. +\returns \tcode{int\{x\} <=> int\{y\}}. \end{itemdescr} \indexlibrarymember{operator+}{year}% @@ -5329,17 +5268,19 @@ \returns \tcode{x.month() == y.month() \&\& x.day() == y.day()}. \end{itemdescr} -\indexlibrarymember{operator<}{month_day}% +\indexlibrarymember{operator<=>}{month_day}% \begin{itemdecl} -constexpr bool operator<(const month_day& x, const month_day& y) noexcept; +constexpr strong_ordering operator<=>(const month_day& x, const month_day& y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns -If \tcode{x.month() < y.month()} returns \tcode{true}. -Otherwise, if \tcode{x.month() > y.month()} returns \tcode{false}. -Otherwise, returns \tcode{x.day() < y.day()}. +\effects +Equivalent to: +\begin{codeblock} +if (auto c = x.month() <=> y.month(); c != 0) return c; +return x.day() <=> y.day(); +\end{codeblock} \end{itemdescr} \indexlibrarymember{operator<<}{month_day}% @@ -5465,14 +5406,14 @@ \returns \tcode{x.month() == y.month()}. \end{itemdescr} -\indexlibrarymember{operator<}{month_day_last}% +\indexlibrarymember{operator<=>}{month_day_last}% \begin{itemdecl} -constexpr bool operator<(const month_day_last& x, const month_day_last& y) noexcept; +constexpr strong_ordering operator<=>(const month_day_last& x, const month_day_last& y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{x.month() < y.month()}. +\returns \tcode{x.month() <=> y.month()}. \end{itemdescr} \indexlibrarymember{operator<<}{month_day_last}% @@ -5861,17 +5802,19 @@ \returns \tcode{x.year() == y.year() \&\& x.month() == y.month()}. \end{itemdescr} -\indexlibrarymember{operator<}{year_month}% +\indexlibrarymember{operator<=>}{year_month}% \begin{itemdecl} -constexpr bool operator<(const year_month& x, const year_month& y) noexcept; +constexpr strong_ordering operator<=>(const year_month& x, const year_month& y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns -If \tcode{x.year() < y.year()} returns \tcode{true}. -Otherwise, if \tcode{x.year() > y.year()} returns \tcode{false}. -Otherwise, returns \tcode{x.month() < y.month()}. +\effects +Equivalent to: +\begin{codeblock} +if (auto c = x.year() <=> y.year(); c != 0) return c; +return x.month() <=> y.month(); +\end{codeblock} \end{itemdescr} \indexlibrarymember{operator+}{year_month}% @@ -6271,19 +6214,20 @@ \returns \tcode{x.year() == y.year() \&\& x.month() == y.month() \&\& x.day() == y.day()}. \end{itemdescr} -\indexlibrarymember{operator<}{year_month_day}% +\indexlibrarymember{operator<=>}{year_month_day}% \begin{itemdecl} -constexpr bool operator<(const year_month_day& x, const year_month_day& y) noexcept; +constexpr strong_ordering operator<=>(const year_month_day& x, const year_month_day& y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns -If \tcode{x.year() < y.year()}, returns \tcode{true}. -Otherwise, if \tcode{x.year() > y.year()}, returns \tcode{false}. -Otherwise, if \tcode{x.month() < y.month()}, returns \tcode{true}. -Otherwise, if \tcode{x.month() > y.month()}, returns \tcode{false}. -Otherwise, returns \tcode{x.day() < y.day()}. +\effects +Equivalent to: +\begin{codeblock} +if (auto c = x.year() <=> y.year(); c != 0) return c; +if (auto c = x.month() <=> y.month(); c != 0) return c; +return x.day() <=> y.day(); +\end{codeblock} \end{itemdescr} \indexlibrarymember{operator+}{year_month_day}% @@ -6611,17 +6555,20 @@ \returns \tcode{x.year() == y.year() \&\& x.month_day_last() == y.month_day_last()}. \end{itemdescr} -\indexlibrarymember{operator<}{year_month_day_last}% +\indexlibrarymember{operator<=>}{year_month_day_last}% \begin{itemdecl} -constexpr bool operator<(const year_month_day_last& x, const year_month_day_last& y) noexcept; +constexpr strong_ordering operator<=>(const year_month_day_last& x, + const year_month_day_last& y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns -If \tcode{x.year() < y.year()}, returns \tcode{true}. -Otherwise, if \tcode{x.year() > y.year()}, returns \tcode{false}. -Otherwise, returns \tcode{x.month_day_last() < y.month_day_last()}. +\effects +Equivalent to: +\begin{codeblock} +if (auto c = x.year() <=> y.year(); c != 0) return c; +return x.month_day_last() <=> y.month_day_last(); +\end{codeblock} \end{itemdescr} \indexlibrarymember{operator+}{year_month_day_last}% @@ -8942,14 +8889,14 @@ \returns \tcode{x.name() == y.name()}. \end{itemdescr} -\indexlibrarymember{operator<}{time_zone}% +\indexlibrarymember{operator<=>}{time_zone}% \begin{itemdecl} -bool operator<(const time_zone& x, const time_zone& y) noexcept; +strong_ordering operator<=>(const time_zone& x, const time_zone& y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{x.name() < y.name()}. +\returns \tcode{x.name() <=> y.name()}. \end{itemdescr} \rSec2[time.zone.zonedtraits]{Class template \tcode{zoned_traits}} @@ -9476,18 +9423,6 @@ \returns \tcode{x.zone_ == y.zone_ \&\& x.tp_ == y.tp_}. \end{itemdescr} -\indexlibrarymember{operator"!=}{zoned_time}% -\begin{itemdecl} -template - bool operator!=(const zoned_time& x, - const zoned_time& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(x == y)}. -\end{itemdescr} - \indexlibrarymember{operator<<}{zoned_time}% \begin{itemdecl} template @@ -9597,14 +9532,14 @@ \returns \tcode{x.date() == y.date()}. \end{itemdescr} -\indexlibrarymember{operator<}{leap}% +\indexlibrarymember{operator<=>}{leap}% \begin{itemdecl} -constexpr bool operator<(const leap& x, const leap& y) noexcept; +constexpr strong_ordering operator<=>(const leap& x, const leap& y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{x.date() < y.date()}. +\returns \tcode{x.date() <=> y.date()}. \end{itemdescr} \indexlibrarymember{operator==}{leap}% @@ -9619,42 +9554,6 @@ \returns \tcode{x.date() == y}. \end{itemdescr} -\indexlibrarymember{operator==}{leap}% -\indexlibrarymember{operator==}{sys_time}% -\begin{itemdecl} -template - constexpr bool operator==(const sys_time& x, const leap& y) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{y == x}. -\end{itemdescr} - -\indexlibrarymember{operator"!=}{leap}% -\indexlibrarymember{operator"!=}{sys_time}% -\begin{itemdecl} -template - constexpr bool operator!=(const leap& x, const sys_time& y) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(x == y)}. -\end{itemdescr} - -\indexlibrarymember{operator"!=}{leap}% -\indexlibrarymember{operator"!=}{sys_time}% -\begin{itemdecl} -template - constexpr bool operator!=(const sys_time& x, const leap& y) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(x == y)}. -\end{itemdescr} - \indexlibrarymember{operator<}{leap}% \indexlibrarymember{operator<}{sys_time}% \begin{itemdecl} @@ -9751,6 +9650,18 @@ \returns \tcode{!(x < y)}. \end{itemdescr} +\indexlibrarymember{operator<=>}{leap}% +\indexlibrarymember{operator<=>}{sys_time}% +\begin{itemdecl} +template Duration> + constexpr auto operator<=>(const leap& x, const sys_time& y) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{x.date() <=> y}. +\end{itemdescr} + \rSec2[time.zone.link]{Class \tcode{link}} \rSec3[time.zone.link.overview]{Overview} @@ -9812,14 +9723,14 @@ \returns \tcode{x.name() == y.name()}. \end{itemdescr} -\indexlibrarymember{operator<}{link}% +\indexlibrarymember{operator<=>}{link}% \begin{itemdecl} -bool operator<(const link& x, const link& y) noexcept; +strong_ordering operator<=>(const link& x, const link& y) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{x.name() < y.name()}. +\returns \tcode{x.name() <=> y.name()}. \end{itemdescr} \rSec1[time.format]{Formatting} diff --git a/source/utilities.tex b/source/utilities.tex index f47d8fbd5f..eb0bfa0b20 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -101,19 +101,6 @@ struct pair; // \ref{pairs.spec}, pair specialized algorithms - template - constexpr bool operator==(const pair&, const pair&); - template - constexpr bool operator!=(const pair&, const pair&); - template - constexpr bool operator< (const pair&, const pair&); - template - constexpr bool operator> (const pair&, const pair&); - template - constexpr bool operator<=(const pair&, const pair&); - template - constexpr bool operator>=(const pair&, const pair&); - template constexpr void swap(pair& x, pair& y) noexcept(noexcept(x.swap(y))); @@ -500,6 +487,15 @@ constexpr pair& operator=(pair&& p); constexpr void swap(pair& p) noexcept(@\seebelow@); + + // \ref{pairs.spec}, pair specialized algorithms + friend constexpr bool operator==(const pair&, const pair&) = default; + friend constexpr bool operator==(const pair& x, const pair& y) + requires (is_reference_v || is_reference_v) + { return x.first == y.first && x.second == y.second; } + friend constexpr common_comparison_category_t<@\placeholder{synth-three-way-result}@, + @\placeholder{synth-three-way-result}@> + operator<=>(const pair& x, const pair& y) { @\seebelow@ } }; template @@ -764,75 +760,23 @@ \rSec2[pairs.spec]{Specialized algorithms} -\indexlibrarymember{operator==}{pair}% -\begin{itemdecl} -template - constexpr bool operator==(const pair& x, const pair& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{x.first == y.first \&\& x.second == y.second}. -\end{itemdescr} - -\indexlibrarymember{operator"!=}{pair}% -\begin{itemdecl} -template - constexpr bool operator!=(const pair& x, const pair& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(x == y)}. -\end{itemdescr} - -\indexlibrarymember{operator<}{pair}% -\begin{itemdecl} -template - constexpr bool operator<(const pair& x, const pair& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{x.first < y.first || (!(y.first < x.first) \&\& x.second < y.second)}. -\end{itemdescr} - -\indexlibrarymember{operator>}{pair}% -\begin{itemdecl} -template - constexpr bool operator>(const pair& x, const pair& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{y < x}. -\end{itemdescr} - -\indexlibrarymember{operator<=}{pair}% -\begin{itemdecl} -template - constexpr bool operator<=(const pair& x, const pair& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(y < x)}. -\end{itemdescr} - -\indexlibrarymember{operator>=}{pair}% +\indexlibrarymember{operator<=>}{pair}% \begin{itemdecl} -template - constexpr bool operator>=(const pair& x, const pair& y); +friend constexpr + common_comparison_category_t<@\placeholder{synth-three-way-result}@, @\placeholder{synth-three-way-result}@> + operator<=>(const pair& x, const pair& y); \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{!(x < y)}. +\effects +Equivalent to: +\begin{codeblock} +if (auto c = @\placeholdernc{synth-three-way}@(x.first, y.first); c != 0) return c; +return @\placeholdernc{synth-three-way}@(x.second, y.second); +\end{codeblock} \end{itemdescr} - \indexlibrary{\idxcode{swap}!\idxcode{pair}}% \begin{itemdecl} template @@ -1062,15 +1006,8 @@ template constexpr bool operator==(const tuple&, const tuple&); template - constexpr bool operator!=(const tuple&, const tuple&); - template - constexpr bool operator<(const tuple&, const tuple&); - template - constexpr bool operator>(const tuple&, const tuple&); - template - constexpr bool operator<=(const tuple&, const tuple&); - template - constexpr bool operator>=(const tuple&, const tuple&); + constexpr common_comparison_category_t<@\placeholder{synth-three-way-result}@...> + operator<=>(const tuple&, const tuple&); // \ref{tuple.traits}, allocator-related traits template @@ -2007,77 +1944,37 @@ \tcode{false}. \end{itemdescr} -\indexlibrarymember{operator"!=}{tuple}% -\begin{itemdecl} -template - constexpr bool operator!=(const tuple& t, const tuple& u); -\end{itemdecl} -\begin{itemdescr} -\pnum\returns \tcode{!(t == u)}. -\end{itemdescr} - -\indexlibrarymember{operator<}{tuple}% +\indexlibrarymember{operator<=>}{tuple}% \begin{itemdecl} template - constexpr bool operator<(const tuple& t, const tuple& u); + constexpr common_comparison_category_t<@\placeholder{synth-three-way-result}@...> + operator<=>(const tuple& t, const tuple& u); \end{itemdecl} \begin{itemdescr} \pnum -\requires For all \tcode{i}, -where \tcode{0 <= i} and -\tcode{i < sizeof...(TTypes)}, both \tcode{get(t) < get(u)} -and \tcode{get(u) < get(t)} -are valid expressions returning types that are -convertible to \tcode{bool}. -\tcode{sizeof...(TTypes)} \tcode{==} -\tcode{sizeof...(UTypes)}. - -\pnum\returns The result of a lexicographical comparison -between \tcode{t} and \tcode{u}. The result is defined -as: \tcode{(bool)(get<0>(t) < get<0>(u)) || -(!(bool)(get<0>(u) < get<0>(t)) \&\& t$_{\mathrm{tail}}$ < -u$_{\mathrm{tail}}$)}, where \tcode{r$_{\mathrm{tail}}$} for some -tuple \tcode{r} is a tuple containing all but the first element -of \tcode{r}. For any two zero-length tuples \tcode{e} -and \tcode{f}, \tcode{e < f} returns \tcode{false}. -\end{itemdescr} - -\indexlibrarymember{operator>}{tuple}% -\begin{itemdecl} -template - constexpr bool operator>(const tuple& t, const tuple& u); -\end{itemdecl} -\begin{itemdescr} -\pnum\returns \tcode{u < t}. -\end{itemdescr} - -\indexlibrarymember{operator<=}{tuple}% -\begin{itemdecl} -template - constexpr bool operator<=(const tuple& t, const tuple& u); -\end{itemdecl} -\begin{itemdescr} -\pnum\returns \tcode{!(u < t)}. -\end{itemdescr} - -\indexlibrarymember{operator>=}{tuple}% -\begin{itemdecl} -template - constexpr bool operator>=(const tuple& t, const tuple& u); -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{!(t < u)}. +\effects +Performs a lexicographical comparison between \tcode{t} and \tcode{u}. +For any two zero-length tuples \tcode{t} and \tcode{u}, +\tcode{t <=> u} returns \tcode{strong_ordering::equal}. +Otherwise, equivalent to: +\begin{codeblock} +if (auto c = @\placeholder{synth-three-way}@(get<0>(t), get<0>(u)); c != 0) return c; +return @$\tcode{t}_\mathrm{tail}$@ <=> @$\tcode{u}_\mathrm{tail}$@; +\end{codeblock} +where $\tcode{r}_\mathrm{tail}$ for some tuple \tcode{r} +is a tuple containing all but the first element of \tcode{r}. \end{itemdescr} -\pnum \begin{note} The above definitions for comparison functions -do not require \tcode{t$_{\mathrm{tail}}$} +\pnum +\begin{note} +The above definition does not require \tcode{t$_{\mathrm{tail}}$} (or \tcode{u$_{\mathrm{tail}}$}) to be constructed. It may not even be possible, as \tcode{t} and \tcode{u} are not required to be copy constructible. Also, all comparison functions are short circuited; they do not perform element accesses beyond what is required to determine the -result of the comparison. \end{note} +result of the comparison. +\end{note} \rSec3[tuple.traits]{Tuple traits} @@ -2164,20 +2061,14 @@ constexpr bool operator<=(const optional&, const optional&); template constexpr bool operator>=(const optional&, const optional&); + template U> + constexpr compare_three_way_result_t + operator<=>(const optional&, const optional&); // \ref{optional.nullops}, comparison with \tcode{nullopt} template constexpr bool operator==(const optional&, nullopt_t) noexcept; - template constexpr bool operator==(nullopt_t, const optional&) noexcept; - template constexpr bool operator!=(const optional&, nullopt_t) noexcept; - template constexpr bool operator!=(nullopt_t, const optional&) noexcept; - template constexpr bool operator<(const optional&, nullopt_t) noexcept; - template constexpr bool operator<(nullopt_t, const optional&) noexcept; - template constexpr bool operator>(const optional&, nullopt_t) noexcept; - template constexpr bool operator>(nullopt_t, const optional&) noexcept; - template constexpr bool operator<=(const optional&, nullopt_t) noexcept; - template constexpr bool operator<=(nullopt_t, const optional&) noexcept; - template constexpr bool operator>=(const optional&, nullopt_t) noexcept; - template constexpr bool operator>=(nullopt_t, const optional&) noexcept; + template + constexpr strong_ordering operator<=>(const optional&, nullopt_t) noexcept; // \ref{optional.comp.with.t}, comparison with \tcode{T} template constexpr bool operator==(const optional&, const U&); @@ -2192,6 +2083,9 @@ template constexpr bool operator<=(const T&, const optional&); template constexpr bool operator>=(const optional&, const U&); template constexpr bool operator>=(const T&, const optional&); + template U> + constexpr compare_three_way_result_t + operator<=>(const optional&, const U&); // \ref{optional.specalg}, specialized algorithms template @@ -3310,79 +3204,30 @@ shall be constexpr functions. \end{itemdescr} -\rSec2[optional.nullops]{Comparison with \tcode{nullopt}} - -\indexlibrarymember{operator==}{optional}% +\indexlibrarymember{operator<=>}{optional}% \begin{itemdecl} -template constexpr bool operator==(const optional& x, nullopt_t) noexcept; -template constexpr bool operator==(nullopt_t, const optional& x) noexcept; +template U> + constexpr compare_three_way_result_t + operator<=>(const optional& x, const optional& y); \end{itemdecl} \begin{itemdescr} \pnum \returns -\tcode{!x}. -\end{itemdescr} - -\indexlibrarymember{operator"!=}{optional}% -\begin{itemdecl} -template constexpr bool operator!=(const optional& x, nullopt_t) noexcept; -template constexpr bool operator!=(nullopt_t, const optional& x) noexcept; -\end{itemdecl} +If \tcode{x \&\& y}, \tcode{*x <=> *y}; otherwise \tcode{bool(x) <=> bool(y)}. -\begin{itemdescr} -\pnum -\returns -\tcode{bool(x)}. -\end{itemdescr} - -\indexlibrarymember{operator<}{optional}% -\begin{itemdecl} -template constexpr bool operator<(const optional& x, nullopt_t) noexcept; -\end{itemdecl} - -\begin{itemdescr} \pnum -\returns -\tcode{false}. -\end{itemdescr} - -\indexlibrarymember{operator<}{optional}% -\begin{itemdecl} -template constexpr bool operator<(nullopt_t, const optional& x) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{bool(x)}. -\end{itemdescr} - -\indexlibrarymember{operator>}{optional}% -\begin{itemdecl} -template constexpr bool operator>(const optional& x, nullopt_t) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{bool(x)}. +\remarks +Specializations of this function template +for which \tcode{*x <=> *y} is a core constant expression +shall be constexpr functions. \end{itemdescr} -\indexlibrarymember{operator>}{optional}% -\begin{itemdecl} -template constexpr bool operator>(nullopt_t, const optional& x) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{false}. -\end{itemdescr} +\rSec2[optional.nullops]{Comparison with \tcode{nullopt}} -\indexlibrarymember{operator<=}{optional}% +\indexlibrarymember{operator==}{optional}% \begin{itemdecl} -template constexpr bool operator<=(const optional& x, nullopt_t) noexcept; +template constexpr bool operator==(const optional& x, nullopt_t) noexcept; \end{itemdecl} \begin{itemdescr} @@ -3391,37 +3236,15 @@ \tcode{!x}. \end{itemdescr} -\indexlibrarymember{operator<=}{optional}% -\begin{itemdecl} -template constexpr bool operator<=(nullopt_t, const optional& x) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{true}. -\end{itemdescr} - -\indexlibrarymember{operator>=}{optional}% -\begin{itemdecl} -template constexpr bool operator>=(const optional& x, nullopt_t) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{true}. -\end{itemdescr} - -\indexlibrarymember{operator>=}{optional}% +\indexlibrarymember{operator<=>}{optional}% \begin{itemdecl} -template constexpr bool operator>=(nullopt_t, const optional& x) noexcept; +template constexpr strong_ordering operator<=>(const optional& x, nullopt_t) noexcept; \end{itemdecl} \begin{itemdescr} \pnum \returns -\tcode{!x}. +\tcode{bool(x) <=> false}. \end{itemdescr} \rSec2[optional.comp.with.t]{Comparison with \tcode{T}} @@ -3621,6 +3444,18 @@ Equivalent to: \tcode{return bool(x) ?\ v >= *x :\ true;} \end{itemdescr} +\indexlibrarymember{operator<=>}{optional}% +\begin{itemdecl} +template U> + constexpr compare_three_way_result_t + operator<=>(const optional& x, const U& v); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return bool(x) ?\ *x <=> v :\ strong_ordering::less;} +\end{itemdescr} \rSec2[optional.specalg]{Specialized algorithms} @@ -3783,6 +3618,9 @@ constexpr bool operator<=(const variant&, const variant&); template constexpr bool operator>=(const variant&, const variant&); + template requires (ThreeWayComparable && ...) + constexpr common_comparison_category_t...> + operator<=>(const variant&, const variant&); // \ref{variant.visit}, visitation template @@ -3795,11 +3633,7 @@ // \ref{variant.monostate.relops}, \tcode{monostate} relational operators constexpr bool operator==(monostate, monostate) noexcept; - constexpr bool operator!=(monostate, monostate) noexcept; - constexpr bool operator<(monostate, monostate) noexcept; - constexpr bool operator>(monostate, monostate) noexcept; - constexpr bool operator<=(monostate, monostate) noexcept; - constexpr bool operator>=(monostate, monostate) noexcept; + constexpr strong_ordering operator<=>(monostate, monostate) noexcept; // \ref{variant.specalg}, specialized algorithms template @@ -4876,6 +4710,28 @@ otherwise \tcode{get<$i$>(v) >= get<$i$>(w)} with $i$ being \tcode{v.index()}. \end{itemdescr} +\indexlibrarymember{operator<=>}{variant}% +\begin{itemdecl} +template requires (ThreeWayComparable && ...) + constexpr common_comparison_category_t...> + operator<=>(const variant& v, const variant& w); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: +\begin{codeblock} +if (v.valueless_by_exception() && w.valueless_by_exception()) + return strong_ordering::equal; +if (v.valueless_by_exception()) return strong_ordering::less; +if (w.valueless_by_exception()) return strong_ordering::greater; +if (auto c = v.index() <=> w.index(); c != 0) return c; +return get<@$i$@>(v) <=> get<@$i$@>(w); +\end{codeblock} +with $i$ being \tcode{v.index()}. +\end{itemdescr} + \rSec2[variant.visit]{Visitation} \indexlibrary{\idxcode{visit}}% @@ -4945,26 +4801,20 @@ \rSec2[variant.monostate.relops]{\tcode{monostate} relational operators} \indexlibrary{\idxcode{operator==}!\idxcode{monostate}}% -\indexlibrary{\idxcode{operator"!=}!\idxcode{monostate}}% -\indexlibrary{\idxcode{operator<}!\idxcode{monostate}}% -\indexlibrary{\idxcode{operator>}!\idxcode{monostate}}% -\indexlibrary{\idxcode{operator<=}!\idxcode{monostate}}% -\indexlibrary{\idxcode{operator>=}!\idxcode{monostate}}% +\indexlibrary{\idxcode{operator<=>}!\idxcode{monostate}}% \begin{itemdecl} constexpr bool operator==(monostate, monostate) noexcept { return true; } -constexpr bool operator!=(monostate, monostate) noexcept { return false; } -constexpr bool operator<(monostate, monostate) noexcept { return false; } -constexpr bool operator>(monostate, monostate) noexcept { return false; } -constexpr bool operator<=(monostate, monostate) noexcept { return true; } -constexpr bool operator>=(monostate, monostate) noexcept { return true; } +constexpr strong_ordering operator<=>(monostate, monostate) noexcept +{ return strong_ordering::equal; } \end{itemdecl} \begin{itemdescr} \pnum -\begin{note} \tcode{monostate} objects have only a single state; they thus always compare equal.\end{note} +\begin{note} +\tcode{monostate} objects have only a single state; they thus always compare equal. +\end{note} \end{itemdescr} - \rSec2[variant.specalg]{Specialized algorithms} \indexlibrary{\idxcode{swap}!\idxcode{variant}}% @@ -5755,7 +5605,6 @@ size_t count() const noexcept; constexpr size_t size() const noexcept; bool operator==(const bitset& rhs) const noexcept; - bool operator!=(const bitset& rhs) const noexcept; bool test(size_t pos) const; bool all() const noexcept; bool any() const noexcept; @@ -6270,18 +6119,6 @@ equals the value of the corresponding bit in \tcode{rhs}. \end{itemdescr} -\indexlibrarymember{operator"!=}{bitset}% -\begin{itemdecl} -bool operator!=(const bitset& rhs) const noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{true} if -\tcode{!(*this == rhs)}. -\end{itemdescr} - \indexlibrarymember{test}{bitset}% \begin{itemdecl} bool test(size_t pos) const; @@ -6608,8 +6445,6 @@ template class allocator; template constexpr bool operator==(const allocator&, const allocator&) noexcept; - template - constexpr bool operator!=(const allocator&, const allocator&) noexcept; // \ref{specialized.algorithms}, specialized algorithms // \ref{special.mem.concepts}, special memory concepts @@ -6838,8 +6673,6 @@ template bool operator==(const unique_ptr& x, const unique_ptr& y); - template - bool operator!=(const unique_ptr& x, const unique_ptr& y); template bool operator<(const unique_ptr& x, const unique_ptr& y); template @@ -6848,15 +6681,15 @@ bool operator<=(const unique_ptr& x, const unique_ptr& y); template bool operator>=(const unique_ptr& x, const unique_ptr& y); + template + requires ThreeWayComparableWith::pointer, + typename unique_ptr::pointer> + compare_three_way_result_t::pointer, + typename unique_ptr::pointer> + operator<=>(const unique_ptr& x, const unique_ptr& y); template bool operator==(const unique_ptr& x, nullptr_t) noexcept; - template - bool operator==(nullptr_t, const unique_ptr& y) noexcept; - template - bool operator!=(const unique_ptr& x, nullptr_t) noexcept; - template - bool operator!=(nullptr_t, const unique_ptr& y) noexcept; template bool operator<(const unique_ptr& x, nullptr_t); template @@ -6873,6 +6706,10 @@ bool operator>=(const unique_ptr& x, nullptr_t); template bool operator>=(nullptr_t, const unique_ptr& y); + template + requires ThreeWayComparableWith::pointer, nullptr_t> + compare_three_way_result_t::pointer, nullptr_t> + operator<=>(const unique_ptr& x, nullptr_t); template basic_ostream& operator<<(basic_ostream& os, const unique_ptr& p); @@ -6924,40 +6761,12 @@ template bool operator==(const shared_ptr& a, const shared_ptr& b) noexcept; template - bool operator!=(const shared_ptr& a, const shared_ptr& b) noexcept; - template - bool operator<(const shared_ptr& a, const shared_ptr& b) noexcept; - template - bool operator>(const shared_ptr& a, const shared_ptr& b) noexcept; - template - bool operator<=(const shared_ptr& a, const shared_ptr& b) noexcept; - template - bool operator>=(const shared_ptr& a, const shared_ptr& b) noexcept; + strong_ordering operator<=>(const shared_ptr& a, const shared_ptr& b) noexcept; template bool operator==(const shared_ptr& x, nullptr_t) noexcept; template - bool operator==(nullptr_t, const shared_ptr& y) noexcept; - template - bool operator!=(const shared_ptr& x, nullptr_t) noexcept; - template - bool operator!=(nullptr_t, const shared_ptr& y) noexcept; - template - bool operator<(const shared_ptr& x, nullptr_t) noexcept; - template - bool operator<(nullptr_t, const shared_ptr& y) noexcept; - template - bool operator>(const shared_ptr& x, nullptr_t) noexcept; - template - bool operator>(nullptr_t, const shared_ptr& y) noexcept; - template - bool operator<=(const shared_ptr& x, nullptr_t) noexcept; - template - bool operator<=(nullptr_t, const shared_ptr& y) noexcept; - template - bool operator>=(const shared_ptr& x, nullptr_t) noexcept; - template - bool operator>=(nullptr_t, const shared_ptr& y) noexcept; + strong_ordering operator<=>(const shared_ptr& x, nullptr_t) noexcept; // \ref{util.smartptr.shared.spec}, \tcode{shared_ptr} specialized algorithms template @@ -8034,18 +7843,6 @@ \tcode{true}. \end{itemdescr} -\indexlibrarymember{operator"!=}{allocator}% -\begin{itemdecl} -template - constexpr bool operator!=(const allocator&, const allocator&) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{false}. -\end{itemdescr} - \rSec2[specialized.algorithms]{Specialized algorithms} \pnum @@ -9817,17 +9614,6 @@ \returns \tcode{x.get() == y.get()}. \end{itemdescr} -\indexlibrarymember{operator"!=}{unique_ptr}% -\begin{itemdecl} -template - bool operator!=(const unique_ptr& x, const unique_ptr& y); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{x.get() != y.get()}. -\end{itemdescr} - \indexlibrarymember{operator<}{unique_ptr}% \begin{itemdecl} template @@ -9887,30 +9673,31 @@ \returns \tcode{!(x < y)}. \end{itemdescr} -\indexlibrarymember{operator==}{unique_ptr}% +\indexlibrarymember{operator<=>}{unique_ptr}% \begin{itemdecl} -template - bool operator==(const unique_ptr& x, nullptr_t) noexcept; -template - bool operator==(nullptr_t, const unique_ptr& x) noexcept; +template + requires ThreeWayComparableWith::pointer, + typename unique_ptr::pointer> + compare_three_way_result_t::pointer, + typename unique_ptr::pointer> + operator<=>(const unique_ptr& x, const unique_ptr& y); \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{!x}. +\returns +\tcode{compare_three_way()(x.get(), y.get())}. \end{itemdescr} -\indexlibrarymember{operator"!=}{unique_ptr}% +\indexlibrarymember{operator==}{unique_ptr}% \begin{itemdecl} template - bool operator!=(const unique_ptr& x, nullptr_t) noexcept; -template - bool operator!=(nullptr_t, const unique_ptr& x) noexcept; + bool operator==(const unique_ptr& x, nullptr_t) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns \tcode{(bool)x}. +\returns \tcode{!x}. \end{itemdescr} \indexlibrarymember{operator<}{unique_ptr}% @@ -9984,6 +9771,20 @@ The second function template returns \tcode{!(nullptr < x)}. \end{itemdescr} +\indexlibrarymember{operator<=>}{unique_ptr}% +\begin{itemdecl} +template + requires ThreeWayComparableWith::pointer, nullptr_t> + compare_three_way_result_t::pointer, nullptr_t> + operator<=>(const unique_ptr& x, nullptr_t); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{compare_three_way()(x.get(), nullptr)}. +\end{itemdescr} + \rSec3[unique.ptr.io]{I/O} \indexlibrarymember{operator<<}{unique_ptr}% @@ -10992,29 +10793,10 @@ \returns \tcode{a.get() == b.get()}. \end{itemdescr} -\indexlibrarymember{operator<}{shared_ptr}% -\begin{itemdecl} -template - bool operator<(const shared_ptr& a, const shared_ptr& b) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{less<>()(a.get(), b.get())}. - -\pnum -\begin{note} -Defining a comparison function allows \tcode{shared_ptr} objects to be -used as keys in associative containers. -\end{note} -\end{itemdescr} - \indexlibrarymember{operator==}{shared_ptr}% \begin{itemdecl} template bool operator==(const shared_ptr& a, nullptr_t) noexcept; -template - bool operator==(nullptr_t, const shared_ptr& a) noexcept; \end{itemdecl} \begin{itemdescr} @@ -11022,83 +10804,34 @@ \returns \tcode{!a}. \end{itemdescr} -\indexlibrarymember{operator"!=}{shared_ptr}% -\begin{itemdecl} -template - bool operator!=(const shared_ptr& a, nullptr_t) noexcept; -template - bool operator!=(nullptr_t, const shared_ptr& a) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{(bool)a}. -\end{itemdescr} - -\indexlibrarymember{operator<}{shared_ptr}% -\begin{itemdecl} -template - bool operator<(const shared_ptr& a, nullptr_t) noexcept; -template - bool operator<(nullptr_t, const shared_ptr& a) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -The first function template returns -\begin{codeblock} -less::element_type*>()(a.get(), nullptr) -\end{codeblock} -The second function template returns -\begin{codeblock} -less::element_type*>()(nullptr, a.get()) -\end{codeblock} -\end{itemdescr} - -\indexlibrarymember{operator>}{shared_ptr}% +\indexlibrarymember{operator<=>}{shared_ptr}% \begin{itemdecl} -template - bool operator>(const shared_ptr& a, nullptr_t) noexcept; -template - bool operator>(nullptr_t, const shared_ptr& a) noexcept; +template + strong_ordering operator<=>(const shared_ptr& a, const shared_ptr& b) noexcept; \end{itemdecl} \begin{itemdescr} \pnum \returns -The first function template returns \tcode{nullptr < a}. -The second function template returns \tcode{a < nullptr}. -\end{itemdescr} - -\indexlibrarymember{operator<=}{shared_ptr}% -\begin{itemdecl} -template - bool operator<=(const shared_ptr& a, nullptr_t) noexcept; -template - bool operator<=(nullptr_t, const shared_ptr& a) noexcept; -\end{itemdecl} +\tcode{compare_three_way()(a.get(), b.get())}. -\begin{itemdescr} \pnum -\returns -The first function template returns \tcode{!(nullptr < a)}. -The second function template returns \tcode{!(a < nullptr)}. +\begin{note} +Defining a comparison function allows \tcode{shared_ptr} objects +to be used as keys in associative containers. +\end{note} \end{itemdescr} -\indexlibrarymember{operator>=}{shared_ptr}% +\indexlibrarymember{operator<=>}{shared_ptr}% \begin{itemdecl} template - bool operator>=(const shared_ptr& a, nullptr_t) noexcept; -template - bool operator>=(nullptr_t, const shared_ptr& a) noexcept; + strong_ordering operator<=>(const shared_ptr& a, nullptr_t) noexcept; \end{itemdecl} \begin{itemdescr} \pnum \returns -The first function template returns \tcode{!(a < nullptr)}. -The second function template returns \tcode{!(nullptr < a)}. +\tcode{compare_three_way()(a.get(), nullptr)}. \end{itemdescr} \rSec3[util.smartptr.shared.spec]{Specialized algorithms} @@ -12339,7 +12072,6 @@ class memory_resource; bool operator==(const memory_resource& a, const memory_resource& b) noexcept; - bool operator!=(const memory_resource& a, const memory_resource& b) noexcept; // \ref{mem.poly.allocator.class}, class template \tcode{polymorphic_allocator} template class polymorphic_allocator; @@ -12347,9 +12079,6 @@ template bool operator==(const polymorphic_allocator& a, const polymorphic_allocator& b) noexcept; - template - bool operator!=(const polymorphic_allocator& a, - const polymorphic_allocator& b) noexcept; // \ref{mem.res.global}, global memory resources memory_resource* new_delete_resource() noexcept; @@ -12520,17 +12249,6 @@ \tcode{\&a == \&b || a.is_equal(b)}. \end{itemdescr} -\indexlibrarymember{operator"!=}{memory_resource}% -\begin{itemdecl} -bool operator!=(const memory_resource& a, const memory_resource& b) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{!(a == b)}. -\end{itemdescr} - \rSec2[mem.poly.allocator.class]{Class template \tcode{polymorphic_allocator}} \pnum @@ -12871,20 +12589,6 @@ \tcode{*a.resource() == *b.resource()}. \end{itemdescr} -\indexlibrarymember{operator"!=}{polymorphic_allocator}% -\begin{itemdecl} -template - bool operator!=(const polymorphic_allocator& a, - const polymorphic_allocator& b) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns -\tcode{!(a == b)}. -\end{itemdescr} - - \rSec2[mem.res.global]{Access to program-wide \tcode{memory_resource} objects} \indexlibrary{\idxcode{new_delete_resource}}% @@ -13504,9 +13208,6 @@ template bool operator==(const scoped_allocator_adaptor& a, const scoped_allocator_adaptor& b) noexcept; - template - bool operator!=(const scoped_allocator_adaptor& a, - const scoped_allocator_adaptor& b) noexcept; } \end{codeblock} @@ -13920,18 +13621,6 @@ \end{codeblock} \end{itemdescr} -\indexlibrarymember{operator"!=}{scoped_allocator_adaptor}% -\begin{itemdecl} -template - bool operator!=(const scoped_allocator_adaptor& a, - const scoped_allocator_adaptor& b) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum -\returns \tcode{!(a == b)}. -\end{itemdescr} - \rSec1[function.objects]{Function objects} \pnum @@ -14064,12 +13753,6 @@ template bool operator==(const function&, nullptr_t) noexcept; - template - bool operator==(nullptr_t, const function&) noexcept; - template - bool operator!=(const function&, nullptr_t) noexcept; - template - bool operator!=(nullptr_t, const function&) noexcept; // \ref{func.search}, searchers template> @@ -14983,7 +14666,8 @@ \pnum There is an implementation-defined strict total ordering over all pointer values of a given type. This total ordering is consistent with the partial order imposed -by the builtin operators \tcode{<}, \tcode{>}, \tcode{<=}, and \tcode{>=}. +by the builtin operators \tcode{<}, \tcode{>}, \tcode{<=}, \tcode{>=}, and +\tcode{<=>}. \indexlibrary{\idxcode{equal_to}}% \begin{itemdecl} @@ -15851,19 +15535,10 @@ template function(F) -> function<@\seebelow@>; - // \ref{func.wrap.func.nullptr}, Null pointer comparisons + // \ref{func.wrap.func.nullptr}, null pointer comparison functions template bool operator==(const function&, nullptr_t) noexcept; - template - bool operator==(nullptr_t, const function&) noexcept; - - template - bool operator!=(const function&, nullptr_t) noexcept; - - template - bool operator!=(nullptr_t, const function&) noexcept; - // \ref{func.wrap.func.alg}, specialized algorithms template void swap(function&, function&) noexcept; @@ -16168,26 +15843,12 @@ \begin{itemdecl} template bool operator==(const function& f, nullptr_t) noexcept; -template - bool operator==(nullptr_t, const function& f) noexcept; \end{itemdecl} \begin{itemdescr} \pnum\returns \tcode{!f}. \end{itemdescr} -\indexlibrarymember{operator"!=}{function}% -\begin{itemdecl} -template - bool operator!=(const function& f, nullptr_t) noexcept; -template - bool operator!=(nullptr_t, const function& f) noexcept; -\end{itemdecl} - -\begin{itemdescr} -\pnum\returns \tcode{(bool)f}. -\end{itemdescr} - \rSec4[func.wrap.func.alg]{Specialized algorithms} \indexlibrarymember{swap}{function}% @@ -16720,6 +16381,8 @@ template struct has_unique_object_representations; + template struct has_strong_structural_equality; + // \ref{meta.unary.prop.query}, type property queries template struct alignment_of; template struct rank; @@ -16997,6 +16660,10 @@ inline constexpr bool has_unique_object_representations_v = has_unique_object_representations::value; + template + inline constexpr bool has_strong_structural_equality_v + = has_strong_structural_equality::value; + // \ref{meta.unary.prop.query}, type property queries template inline constexpr size_t alignment_of_v = alignment_of::value; @@ -17634,6 +17301,14 @@ \tcode{T} shall be a complete type, \cv{}~\tcode{void}, or an array of unknown bound. \\ \rowsep +\indexlibrary{\idxcode{has_strong_structural_equality}}% +\tcode{template}\br + \tcode{struct has_strong_structural_equality;} & + The type \tcode{T} has + strong structural equality\iref{class.compare.default}. & + \tcode{T} shall be a complete type, \cv{} \tcode{void}, or + an array of unknown bound. \\ \rowsep + \end{libreqtab3b} \pnum @@ -18394,6 +18069,10 @@ None of the following will apply if there is a specialization \tcode{common_type}. \end{note} + \item Otherwise, if both \tcode{D1} and \tcode{D2} denote + comparison category types\iref{cmp.categories.pre}, + let \tcode{C} denote the common comparison type\iref{class.spaceship} + of \tcode{D1} and \tcode{D2}. \item Otherwise, if \begin{codeblock} decay_t() : declval())> @@ -18968,11 +18647,11 @@ public: type_index(const type_info& rhs) noexcept; bool operator==(const type_index& rhs) const noexcept; - bool operator!=(const type_index& rhs) const noexcept; bool operator< (const type_index& rhs) const noexcept; bool operator> (const type_index& rhs) const noexcept; bool operator<=(const type_index& rhs) const noexcept; bool operator>=(const type_index& rhs) const noexcept; + strong_ordering operator<=>(const type_index& rhs) const noexcept; size_t hash_code() const noexcept; const char* name() const noexcept; @@ -19013,11 +18692,6 @@ \returns \tcode{*target == *rhs.target}. \end{itemdescr} -\indexlibrarymember{operator"!=}{type_index}% -\begin{itemdecl} -bool operator!=(const type_index& rhs) const noexcept; -\end{itemdecl} - \begin{itemdescr} \pnum \returns \tcode{*target != *rhs.target}. @@ -19063,6 +18737,22 @@ \returns \tcode{!target->before(*rhs.target)}. \end{itemdescr} +\indexlibrarymember{operator<=>}{type_index}% +\begin{itemdecl} +strong_ordering operator<=>(const type_index& rhs) const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: +\begin{codeblock} +if (*target == *rhs.target) return strong_ordering::equal; +if (target->before(*rhs.target)) return strong_ordering::less; +return strong_ordering::greater; +\end{codeblock} +\end{itemdescr} + \indexlibrarymember{hash_code}{type_index}% \begin{itemdecl} size_t hash_code() const noexcept; @@ -19319,6 +19009,7 @@ struct to_chars_result { char* ptr; errc ec; + friend bool operator==(const to_chars_result&, const to_chars_result&) = default; }; to_chars_result to_chars(char* first, char* last, @\seebelow@ value, int base = 10); @@ -19346,6 +19037,7 @@ struct from_chars_result { const char* ptr; errc ec; + friend bool operator==(const from_chars_result&, const from_chars_result&) = default; }; from_chars_result from_chars(const char* first, const char* last, From d243672db3269754d4ee91a5fbcdfb82ae6f2539 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 30 Jul 2019 16:01:10 +0200 Subject: [PATCH 123/312] Apply P1452R2 On the non-uniform semantics of return-type-requirements to newly-introduced return type requirements. --- source/lib-intro.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 1f6da850ba..f06eb7acb1 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -718,8 +718,8 @@ constexpr auto @\placeholdernc{synth-three-way}@ = [](const T& t, const U& u) requires requires { - { t < u } -> bool; - { u < t } -> bool; + { t < u } -> ConvertibleTo; + { u < t } -> ConvertibleTo; } { if constexpr (ThreeWayComparableWith) { From 90f64792ec7d5372a093d3bea69dffff2f7af28a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 5 Aug 2019 13:48:59 -0700 Subject: [PATCH 124/312] Rename _s to -s in placeholder names per editorial guidelines. --- source/support.tex | 6 +++--- source/utilities.tex | 16 ++++++++-------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/source/support.tex b/source/support.tex index 604ebe8ba4..fecc0cfba4 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4653,9 +4653,9 @@ \rSec2[cmp.object]{Class \tcode{compare_three_way}} \pnum -In this subclause, \tcode{\placeholdernc{BUILTIN_PTR_THREE_WAY}(T, U)} +In this subclause, \tcode{\placeholdernc{BUILTIN-PTR-THREE-WAY}(T, U)} for types \tcode{T} and \tcode{U} is a boolean constant expression. -\tcode{\placeholdernc{BUILTIN_PTR_THREE_WAY}(T, U)} is \tcode{true} +\tcode{\placeholdernc{BUILTIN-PTR-THREE-WAY}(T, U)} is \tcode{true} if and only if \tcode{<=>} in the expression \begin{codeblock} declval() <=> declval() @@ -4665,7 +4665,7 @@ \begin{codeblock} struct compare_three_way { template - requires ThreeWayComparableWith || @\placeholdernc{BUILTIN_PTR_THREE_WAY}@(T, U) + requires ThreeWayComparableWith || @\placeholdernc{BUILTIN-PTR-THREE-WAY}@(T, U) constexpr auto operator()(T&& t, U&& u) const; using is_transparent = @\unspec@; diff --git a/source/utilities.tex b/source/utilities.tex index eb0bfa0b20..aa0ef50f3a 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -14656,10 +14656,10 @@ \rSec2[range.cmp]{Concept-constrained comparisons} \pnum -In this subclause, \tcode{\placeholdernc{BUILTIN_PTR_CMP}(T, $op$, U)} for types \tcode{T} +In this subclause, \tcode{\placeholdernc{BUILTIN-PTR-CMP}(T, $op$, U)} for types \tcode{T} and \tcode{U} and where $op$ is an equality\iref{expr.eq} or relational operator\iref{expr.rel} is a boolean constant expression. -\tcode{\placeholdernc{BUILTIN_PTR_CMP}(T, $op$, U)} is \tcode{true} if and only if $op$ +\tcode{\placeholdernc{BUILTIN-PTR-CMP}(T, $op$, U)} is \tcode{true} if and only if $op$ in the expression \tcode{declval() $op$ declval()} resolves to a built-in operator comparing pointers. @@ -14673,7 +14673,7 @@ \begin{itemdecl} struct ranges::equal_to { template - requires EqualityComparableWith || @\placeholdernc{BUILTIN_PTR_CMP}@(T, ==, U) + requires EqualityComparableWith || @\placeholdernc{BUILTIN-PTR-CMP}@(T, ==, U) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; @@ -14708,7 +14708,7 @@ \begin{itemdecl} struct ranges::not_equal_to { template - requires EqualityComparableWith || @\placeholdernc{BUILTIN_PTR_CMP}@(T, ==, U) + requires EqualityComparableWith || @\placeholdernc{BUILTIN-PTR-CMP}@(T, ==, U) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; @@ -14727,7 +14727,7 @@ \begin{itemdecl} struct ranges::greater { template - requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN_PTR_CMP}@(U, <, T) + requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN-PTR-CMP}@(U, <, T) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; @@ -14746,7 +14746,7 @@ \begin{itemdecl} struct ranges::less { template - requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN_PTR_CMP}@(T, <, U) + requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN-PTR-CMP}@(T, <, U) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; @@ -14787,7 +14787,7 @@ \begin{itemdecl} struct ranges::greater_equal { template - requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN_PTR_CMP}@(T, <, U) + requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN-PTR-CMP}@(T, <, U) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; @@ -14806,7 +14806,7 @@ \begin{itemdecl} struct ranges::less_equal { template - requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN_PTR_CMP}@(U, <, T) + requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN-PTR-CMP}@(U, <, T) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; From ad7d09ce9fe11d3e36897e5026b71fec8fb9ebf1 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Mon, 22 Jul 2019 22:37:03 -0700 Subject: [PATCH 125/312] P0325R4 to_array from LFTS with updates Fixes #3017. --- source/containers.tex | 51 ++++++++++++++++++++++++++++++++++++++++++- source/support.tex | 2 ++ 2 files changed, 52 insertions(+), 1 deletion(-) diff --git a/source/containers.tex b/source/containers.tex index f414d3249b..f0797d7c03 100644 --- a/source/containers.tex +++ b/source/containers.tex @@ -3148,7 +3148,13 @@ template constexpr void swap(array& x, array& y) noexcept(noexcept(x.swap(y))); - // \ref{array.tuple}, tuple interface to class template \tcode{array} + // \ref{array.creation}, array creation functions + template + constexpr array, N> to_array(T (&a)[N]); + template + constexpr array, N> to_array(T (&&a)[N]); + + // \ref{array.tuple}, tuple interface template struct tuple_size; template struct tuple_element; template @@ -3520,6 +3526,49 @@ Member function \tcode{swap()} shall have a non-throwing exception specification. +\rSec3[array.creation]{Array creation functions} +\indextext{\idxcode{array}!creation}% + +\indexlibrary{\idxcode{to_array}}% +\begin{itemdecl} +template + constexpr array, N> to_array(T (&a)[N]); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\mandates +\tcode{is_array_v} is \tcode{false} and +\tcode{is_constructible_v} is \tcode{true}. + +\pnum +\expects +\tcode{T} meets the \oldconcept{CopyConstructible} requirements. + +\pnum +\returns \tcode{\{\{ a[0], $\dotsc$, a[N - 1] \}\}}. +\end{itemdescr} + +\indexlibrary{\idxcode{to_array}}% +\begin{itemdecl} +template + constexpr array, N> to_array(T (&&a)[N]); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\mandates +\tcode{is_array_v} is \tcode{false} and +\tcode{is_move_constructible_v} is \tcode{true}. + +\pnum +\expects +\tcode{T} meets the \oldconcept{MoveConstructible} requirements. + +\pnum +\returns \tcode{\{\{ std::move(a[0]), $\dotsc$, std::move(a[N - 1]) \}\}}. +\end{itemdescr} + \rSec3[array.tuple]{Tuple interface} \indexlibrary{\idxcode{array}}% \indexlibrary{\idxcode{tuple}}% diff --git a/source/support.tex b/source/support.tex index fecc0cfba4..ff20efc61e 100644 --- a/source/support.tex +++ b/source/support.tex @@ -708,6 +708,8 @@ \tcode{} \tcode{} \\ \rowsep \defnlibxname{cpp_lib_three_way_comparison} & \tcode{201711L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_to_array} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_to_chars} & \tcode{201611L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_transformation_trait_aliases} & \tcode{201304L} & From 93e43248cc252ebbb5f1ef54f81bd65d578fa696 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Tue, 30 Jul 2019 19:28:21 -0700 Subject: [PATCH 126/312] =?UTF-8?q?P0408R7=20Efficient=20Access=20to=20bas?= =?UTF-8?q?ic=5Fstringbuf=20=E2=80=99s=20Buffer?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixed punctuation in \effects clauses. [stringbuf] Omitted duplicate constructor in synopsis. [stringbuf.cons] Added missing const on string parameter in itemdecl of basic_stringbuf to match declaration in synopsis. Fixes #3018. --- source/iostreams.tex | 929 +++++++++++++++++++++++++++++++++++++------ 1 file changed, 810 insertions(+), 119 deletions(-) diff --git a/source/iostreams.tex b/source/iostreams.tex index 31e5c81b06..af79cbb154 100644 --- a/source/iostreams.tex +++ b/source/iostreams.tex @@ -7381,17 +7381,46 @@ explicit basic_stringbuf( const basic_string& str, ios_base::openmode which = ios_base::in | ios_base::out); + explicit basic_stringbuf(const Allocator& a) + : basic_stringbuf(ios_base::in | ios_base::out, a) {} + basic_stringbuf(ios_base::openmode which, const Allocator& a); + explicit basic_stringbuf( + basic_string&& s, + ios_base::openmode which = ios_base::in | ios_base::out); + template + basic_stringbuf( + const basic_string& s, const Allocator& a) + : basic_stringbuf(s, ios_base::in | ios_base::out, a) {} + template + basic_stringbuf( + const basic_string& s, + ios_base::openmode which, const Allocator& a); + template + explicit basic_stringbuf( + const basic_string& s, + ios_base::openmode which = ios_base::in | ios_base::out); basic_stringbuf(const basic_stringbuf& rhs) = delete; basic_stringbuf(basic_stringbuf&& rhs); + basic_stringbuf(basic_stringbuf&& rhs, const Allocator& a); // \ref{stringbuf.assign}, assign and swap basic_stringbuf& operator=(const basic_stringbuf& rhs) = delete; basic_stringbuf& operator=(basic_stringbuf&& rhs); - void swap(basic_stringbuf& rhs); + void swap(basic_stringbuf& rhs) noexcept(@\seebelow@); + + // \ref{stringbuf.members}, getters and setters + allocator_type get_allocator() const noexcept; + + basic_string str() const &; + template + basic_string str(const SAlloc& sa) const; + basic_string str() &&; + basic_string_view view() const noexcept; - // \ref{stringbuf.members}, get and set - basic_string str() const; void str(const basic_string& s); + template + void str(const basic_string& s); + void str(basic_string&& s); protected: // \ref{stringbuf.virtuals}, overridden virtual functions @@ -7408,12 +7437,14 @@ = ios_base::in | ios_base::out) override; private: - ios_base::openmode mode; // \expos + ios_base::openmode mode; // \expos + basic_string buf; // \expos + void init_buf_ptrs(); // \expos }; template void swap(basic_stringbuf& x, - basic_stringbuf& y); + basic_stringbuf& y) noexcept(noexcept(x.swap(y))); } \end{codeblock} @@ -7429,15 +7460,21 @@ \tcode{basic_string}. \pnum -For the sake of exposition, the maintained data is presented here as: +For the sake of exposition, +the maintained data and internal pointer initialization is presented here as: \begin{itemize} \item -\tcode{ios_base::openmode mode}, -has -\tcode{in} -set if the input sequence can be read, and -\tcode{out} -set if the output sequence can be written. + \tcode{ios_base::openmode mode}, has + \tcode{in} set if the input sequence can be read, and + \tcode{out} set if the output sequence can be written. +\item + \tcode{basic_string buf} + contains the underlying character sequence. +\item + \tcode{init_buf_ptrs()} sets the base class' + get area\iref{streambuf.get.area} and + put area\iref{streambuf.put.area} pointers + after initializing, moving from, or assigning to \tcode{buf} accordingly. \end{itemize} \rSec3[stringbuf.cons]{Constructors} @@ -7450,10 +7487,8 @@ \begin{itemdescr} \pnum \effects -Constructs an object of class -\tcode{basic_stringbuf}, -initializing the base class with -\tcode{basic_streambuf()}\iref{streambuf.cons}, and initializing +Initializes the base class with +\tcode{basic_streambuf()}\iref{streambuf.cons}, and \tcode{mode} with \tcode{which}. It is @@ -7465,7 +7500,7 @@ \pnum \ensures -\tcode{str() == ""}. +\tcode{str().empty()} is \tcode{true}. \end{itemdescr} \indexlibrary{\idxcode{basic_stringbuf}!constructor}% @@ -7478,32 +7513,107 @@ \begin{itemdescr} \pnum \effects -Constructs an object of class -\tcode{basic_stringbuf}, -initializing the base class with -\tcode{basic_streambuf()}\iref{streambuf.cons}, and initializing -\tcode{mode} -with \tcode{which}. -Then calls \tcode{str(s)}. +Initializes the base class with +\tcode{basic_streambuf()}\iref{streambuf.cons}, +\tcode{mode} with \tcode{which}, and +\tcode{buf} with \tcode{s}, +then calls \tcode{init_buf_ptrs()}. +\end{itemdescr} + +\indexlibrary{\idxcode{basic_stringbuf}!constructor}% +\begin{itemdecl} +basic_stringbuf(ios_base::openmode which, const Allocator &a); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with +\tcode{basic_streambuf()}\iref{streambuf.cons}, +\tcode{mode} with \tcode{which}, and +\tcode{buf} with \tcode{a}, +then calls \tcode{init_buf_ptrs()}. + +\pnum +\ensures +\tcode{str().empty()} is \tcode{true}. +\end{itemdescr} + +\indexlibrary{\idxcode{basic_stringbuf}!constructor}% +\begin{itemdecl} +explicit basic_stringbuf( + basic_string&& s, + ios_base::openmode which = ios_base::in | ios_base::out); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with \tcode{basic_streambuf()}\iref{streambuf.cons}, +\tcode{mode} with \tcode{which}, and +\tcode{buf} with \tcode{std::move(s)}, +then calls \tcode{init_buf_ptrs()}. +\end{itemdescr} + +\indexlibrary{\idxcode{basic_stringbuf}!constructor}% +\begin{itemdecl} +template + basic_stringbuf( + const basic_string& s, + ios_base::openmode which, const Allocator &a); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with \tcode{basic_streambuf()}\iref{streambuf.cons}, +\tcode{mode} with \tcode{which}, and +\tcode{buf} with \tcode{\{s,a\}}, +then calls \tcode{init_buf_ptrs()}. +\end{itemdescr} + +\indexlibrary{\idxcode{basic_stringbuf}!constructor}% +\begin{itemdecl} +template + explicit basic_stringbuf( + const basic_string& s, + ios_base::openmode which = ios_base::in | ios_base::out); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\constraints +\tcode{is_same_v} is \tcode{false}. + +\pnum +\effects +Initializes the base class with \tcode{basic_streambuf()}\iref{streambuf.cons}, +\tcode{mode} with \tcode{which}, and +\tcode{buf} with \tcode{s}, +then calls \tcode{init_buf_ptrs()}. \end{itemdescr} \indexlibrary{\idxcode{basic_stringbuf}!constructor}% \begin{itemdecl} basic_stringbuf(basic_stringbuf&& rhs); +basic_stringbuf(basic_stringbuf&& rhs, const Allocator& a); \end{itemdecl} \begin{itemdescr} \pnum -\effects Move constructs from the rvalue \tcode{rhs}. It -is +\effects +Copy constructs the base class from \tcode{rhs} and +initializes \tcode{mode} with \tcode{rhs.mode}. +In the first form \tcode{buf} is initialized +from \tcode{std::move(rhs).str()}. +In the second form \tcode{buf} is initialized +from \tcode{\{std::move(rhs).str(), a\}}. +It is \impldef{whether sequence pointers are copied by \tcode{basic_stringbuf} move constructor} whether the sequence pointers in \tcode{*this} (\tcode{eback()}, \tcode{gptr()}, \tcode{egptr()}, \tcode{pbase()}, \tcode{pptr()}, \tcode{epptr()}) obtain -the values which \tcode{rhs} had. Whether they do or not, \tcode{*this} -and \tcode{rhs} reference separate buffers (if any at all) after the -construction. The openmode, locale and any other state of \tcode{rhs} is -also copied. +the values which \tcode{rhs} had. \pnum \ensures Let \tcode{rhs_p} refer to the state of @@ -7522,6 +7632,9 @@ \item \tcode{if (pbase()) pbase() != rhs_a.pbase()} \item \tcode{if (pptr()) pptr() != rhs_a.pptr()} \item \tcode{if (epptr()) epptr() != rhs_a.epptr()} +\item \tcode{getloc() == rhs_p.getloc()} +\item \tcode{rhs} is empty but usable, + as if \tcode{std::move(rhs).str()} was called. \end{itemize} \end{itemdescr} @@ -7543,20 +7656,30 @@ \indexlibrarymember{swap}{basic_stringbuf}% \begin{itemdecl} -void swap(basic_stringbuf& rhs); +void swap(basic_stringbuf& rhs) noexcept(@\seebelow@); \end{itemdecl} \begin{itemdescr} +\pnum +\expects \tcode{allocator_traits::propagate_on_container_swap::value} +is \tcode{true} or +\tcode{get_allocator() == s.get_allocator()} is \tcode{true}. + \pnum \effects Exchanges the state of \tcode{*this} and \tcode{rhs}. + +\pnum +\remarks The expression inside \tcode{noexcept} is equivalent to:\\ +\tcode{allocator_traits::propagate_on_container_swap::value ||}\\ +\tcode{allocator_traits::is_always_equal::value}. \end{itemdescr} \indexlibrarymember{swap}{basic_stringbuf}% \begin{itemdecl} template void swap(basic_stringbuf& x, - basic_stringbuf& y); + basic_stringbuf& y) noexcept(noexcept(x.swap(y))); \end{itemdecl} \begin{itemdescr} @@ -7566,32 +7689,149 @@ \rSec3[stringbuf.members]{Member functions} +\pnum +The member functions getting the underlying character sequence +all refer to a \tcode{high_mark} value, +where \tcode{high_mark} represents the position +one past the highest initialized character in the buffer. +Characters can be initialized by writing to the stream, +by constructing the \tcode{basic_stringbuf} +passing a \tcode{basic_string} argument, or +by calling one of the \tcode{str()} member functions +passing a \tcode{basic_string} as an argument. +In the latter case, all characters initialized prior to the call +are now considered uninitialized +(except for those characters re-initialized by the new \tcode{basic_string}). + +\begin{itemdecl} +void init_buf_ptrs(); // \expos +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the input and output sequences from \tcode{buf} +according to \tcode{mode}. + +\pnum +\ensures +\begin{itemize} +\item If \tcode{ios_base::out} is set in \tcode{mode}, + \tcode{pbase()} points to \tcode{buf.front()} and + \tcode{epptr() >= pbase() + buf.size()} is \tcode{true}; + \begin{itemize} + \item in addition, if \tcode{ios_base::ate} is set in \tcode{mode}, + \tcode{pptr() == pbase() + buf.size()} is \tcode{true}, + \item otherwise \tcode{pptr() == pbase()} is \tcode{true}. + \end{itemize} +\item If \tcode{ios_base::in} is set in \tcode{mode}, + \tcode{eback()} points to \tcode{buf.front()}, and + \tcode{(gptr() == eback() \&\& egptr() == eback() + buf.size())} + is \tcode{true}. +\end{itemize} + +\pnum +\begin{note} +For efficiency reasons +stream buffer operations might violate invariants of \tcode{buf} +while it is held encapsulated in the \tcode{basic_stringbuf}, +i.e., by writing to characters in the range +\range{\tcode{buf.data() + buf.size()}}{\tcode{buf.data() + buf.capacity()}}. +All operations retrieving a \tcode{basic_string} from \tcode{buf} +ensure that the \tcode{basic_string} invariants hold on the returned value. +\end{note} +\end{itemdescr} + +\indexlibrarymember{get_allocator}{basic_stringbuf}% +\begin{itemdecl} +allocator_type get_allocator() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{buf.get_allocator()}. +\end{itemdescr} + +\indexlibrarymember{str}{basic_stringbuf}% +\begin{itemdecl} +basic_string str() const &; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +return basic_string(view(), get_allocator()); +\end{codeblock} +\end{itemdescr} + \indexlibrarymember{str}{basic_stringbuf}% \begin{itemdecl} -basic_string str() const; +template + basic_string str(const SAlloc& sa) const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\constraints \tcode{SAlloc} is a type that +qualifies as an allocator\iref{container.requirements.general}. + +\pnum +\effects Equivalent to: +\begin{codeblock} +return basic_string(view(), sa); +\end{codeblock} +\end{itemdescr} + +\begin{itemdecl} +basic_string str() &&; \end{itemdecl} \begin{itemdescr} \pnum \returns -A -\tcode{basic_string} -object whose content is equal to the -\tcode{basic_stringbuf} -underlying character sequence. -If the \tcode{basic_stringbuf} was created only in input mode, the resultant -\tcode{basic_string} contains the character sequence in the range -\range{eback()}{egptr()}. If the \tcode{basic_stringbuf} was created with -\tcode{which \& ios_base::out} being nonzero then the resultant \tcode{basic_string} -contains the character sequence in the range \range{pbase()}{high_mark}, where -\tcode{high_mark} represents the position one past the highest initialized character -in the buffer. Characters can be initialized by writing to the stream, by constructing -the \tcode{basic_stringbuf} with a \tcode{basic_string}, or by calling the -\tcode{str(basic_string)} member function. In the case of calling the -\tcode{str(basic_string)} member function, all characters initialized prior to -the call are now considered uninitialized (except for those characters re-initialized -by the new \tcode{basic_string}). Otherwise the \tcode{basic_stringbuf} has been created -in neither input nor output mode and a zero length \tcode{basic_string} is returned. +A \tcode{basic_string} object +move constructed from +the \tcode{basic_stringbuf}'s underlying character sequence in \tcode{buf}. +This can be achieved by first adjusting \tcode{buf} to have +the same content as \tcode{view()}. + +\pnum +\ensures +The underlying character sequence \tcode{buf} is empty and +\tcode{pbase()}, \tcode{pptr()}, \tcode{epptr()}, \tcode{eback()}, +\tcode{gptr()}, and \tcode{egptr()} +are initialized as if by calling \tcode{init_buf_ptrs()} +with an empty \tcode{buf}. +\end{itemdescr} + +\indexlibrarymember{view}{basic_stringbuf}% +\begin{itemdecl} +basic_string_view view() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +Let \tcode{sv} be \tcode{basic_string_view}. + +\pnum +\returns +A \tcode{sv} object referring to +the \tcode{basic_stringbuf}'s underlying character sequence in \tcode{buf}: +\begin{itemize} +\item If \tcode{ios_base::out} is set in \tcode{mode}, + then \tcode{sv(pbase(), high_mark-pbase())} is returned. +\item Otherwise, if \tcode{ios_base::in} is set in \tcode{mode}, + then \tcode{sv(eback(), egptr()-eback())} is returned. +\item Otherwise, \tcode{sv()} is returned. +\end{itemize} + +\pnum +\begin{note} +Using the returned \tcode{sv} object after +destruction or invalidation of the character sequence underlying \tcode{*this} +is undefined behavior, unless \tcode{sv.empty()} is \tcode{true}. +\end{note} \end{itemdescr} \indexlibrarymember{str}{basic_stringbuf}% @@ -7602,17 +7842,43 @@ \begin{itemdescr} \pnum \effects -Copies the content of \tcode{s} into the \tcode{basic_stringbuf} underlying character -sequence and initializes the input and output sequences according to \tcode{mode}. +Equivalent to: +\begin{codeblock} +buf = s; +init_buf_ptrs(); +\end{codeblock} +\end{itemdescr} + +\indexlibrarymember{str}{basic_stringbuf}% +\begin{itemdecl} +template + void str(const basic_string& s); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\constraints \tcode{is_same_v} is \tcode{false}. \pnum -\ensures If \tcode{mode \& ios_base::out} is nonzero, \tcode{pbase()} points to the -first underlying character and \tcode{epptr()} \tcode{>= pbase() + s.size()} holds; in -addition, if \tcode{mode \& ios_base::ate} is nonzero, -\tcode{pptr() == pbase() + s.size()} -holds, otherwise \tcode{pptr() == pbase()} is \tcode{true}. If \tcode{mode \& ios_base::in} is -nonzero, \tcode{eback()} points to the first underlying character, and both \tcode{gptr() -== eback()} and \tcode{egptr() == eback() + s.size()} hold. +\effects Equivalent to: +\begin{codeblock} +buf = s; +init_buf_ptrs(); +\end{codeblock} +\end{itemdescr} + +\indexlibrarymember{str}{basic_stringbuf}% +\begin{itemdecl} +void str(basic_string&& s); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +buf = std::move(s); +init_buf_ptrs(); +\end{codeblock} \end{itemdescr} \rSec3[stringbuf.virtuals]{Overridden virtual functions} @@ -7906,6 +8172,22 @@ explicit basic_istringstream( const basic_string& str, ios_base::openmode which = ios_base::in); + basic_istringstream(ios_base::openmode which, const Allocator& a); + explicit basic_istringstream( + basic_string&& s, + ios_base::openmode which = ios_base::in); + template + basic_istringstream( + const basic_string& s, const Allocator& a) + : basic_istringstream(s, ios_base::in, a) {} + template + basic_istringstream( + const basic_string& s, + ios_base::openmode which, const Allocator& a); + template + explicit basic_istringstream( + const basic_string& s, + ios_base::openmode which = ios_base::in); basic_istringstream(const basic_istringstream& rhs) = delete; basic_istringstream(basic_istringstream&& rhs); @@ -7916,9 +8198,17 @@ // \ref{istringstream.members}, members basic_stringbuf* rdbuf() const; + basic_string str() const &; + template + basic_string str(const SAlloc& sa) const; + basic_string str() &&; + basic_string_view view() const noexcept; - basic_string str() const; void str(const basic_string& s); + template + void str(const basic_string& s); + void str(basic_string&& s); + private: basic_stringbuf sb; // \expos }; @@ -7953,11 +8243,9 @@ \begin{itemdescr} \pnum \effects -Constructs an object of class -\tcode{basic_istringstream}, -initializing the base class with +Initializes the base class with \tcode{basic_istream(addressof(sb))}\iref{istream} -and initializing \tcode{sb} with\linebreak % avoid Overfull +and \tcode{sb} with \tcode{basic_stringbuf(which | ios_base::in)}\iref{stringbuf.cons}. \end{itemdescr} @@ -7971,12 +8259,74 @@ \begin{itemdescr} \pnum \effects -Constructs an object of class -\tcode{basic_istringstream}, -initializing the base class with +Initializes the base class with +\tcode{basic_istream(addressof(sb))}\iref{istream} +and \tcode{sb} with +\tcode{basic_stringbuf(str, which | ios_base::in)}\linebreak(\ref{stringbuf.cons}). % avoid Overfull +\end{itemdescr} + +\indexlibrary{\idxcode{basic_istringstream}!constructor}% +\begin{itemdecl} +basic_istringstream(ios_base::openmode which, const Allocator& a); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with +\tcode{basic_istream(addressof(sb))}\iref{istream} +and \tcode{sb} with +\tcode{basic_stringbuf(which | ios_base::in, a)}\iref{stringbuf.cons}. +\end{itemdescr} + +\indexlibrary{\idxcode{basic_istringstream}!constructor}% +\begin{itemdecl} +explicit basic_istringstream( + basic_string&& s, + ios_base::openmode which = ios_base::in); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with +\tcode{basic_istream(addressof(sb))}\iref{istream} +and \tcode{sb} with +\tcode{basic_stringbuf(std::move(s), which | ios_base::\brk{}in)}\iref{stringbuf.cons}. +\end{itemdescr} + +\indexlibrary{\idxcode{basic_istringstream}!constructor}% +\begin{itemdecl} +template + basic_istringstream( + const basic_string& s, + ios_base::openmode which, const Allocator& a); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with +\tcode{basic_istream(addressof(sb))}\iref{istream} +and \tcode{sb} with +\tcode{basic_stringbuf(s, which | ios_base::in, a)}\linebreak(\ref{stringbuf.cons}). % avoid Overfull +\end{itemdescr} + +\indexlibrary{\idxcode{basic_istringstream}!constructor}% +\begin{itemdecl} +template + explicit basic_istringstream( + const basic_string& s, + ios_base::openmode which = ios_base::in); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with \tcode{basic_istream(addressof(sb))}\iref{istream} -and initializing \tcode{sb} with\linebreak % avoid Overfull -\tcode{basic_stringbuf(str, which | ios_base::in)}\iref{stringbuf.cons}. +and \tcode{sb} with +\tcode{basic_stringbuf(s, which | ios_base::in)}\iref{stringbuf.cons}. \end{itemdescr} \indexlibrary{\idxcode{basic_istringstream}!constructor}% @@ -8017,10 +8367,11 @@ \begin{itemdescr} \pnum -\effects Exchanges the state of \tcode{*this} and -\tcode{rhs} by calling -\tcode{basic_istream::swap(rhs)} and -\tcode{sb.swap(rhs.sb)}. +\effects Equivalent to: +\begin{codeblock} +basic_istream::swap(rhs); +sb.swap(rhs.sb); +\end{codeblock} \end{itemdescr} @@ -8051,13 +8402,43 @@ \indexlibrarymember{str}{basic_istringstream}% \begin{itemdecl} -basic_string str() const; +basic_string str() const &; \end{itemdecl} \begin{itemdescr} \pnum -\returns -\tcode{rdbuf()->str()}. +\effects Equivalent to: \tcode{return rdbuf()->str();} +\end{itemdescr} + +\indexlibrarymember{str}{basic_istringstream}% +\begin{itemdecl} +template + basic_string str(const SAlloc& sa) const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return rdbuf()->str(sa);} +\end{itemdescr} + +\indexlibrarymember{str}{basic_istringstream}% +\begin{itemdecl} +basic_string str() &&; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return std::move(*rdbuf()).str();} +\end{itemdescr} + +\indexlibrarymember{view}{basic_istringstream}% +\begin{itemdecl} +basic_string_view view() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return rdbuf()->view();} \end{itemdescr} \indexlibrarymember{str}{basic_istringstream}% @@ -8068,8 +8449,29 @@ \begin{itemdescr} \pnum \effects -Calls -\tcode{rdbuf()->str(s)}. +Equivalent to: \tcode{rdbuf()->str(s);} +\end{itemdescr} + +\indexlibrarymember{str}{basic_istringstream}% +\begin{itemdecl} +template + void str(const basic_string& s); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{rdbuf()->str(s);} +\end{itemdescr} + +\indexlibrarymember{str}{basic_istringstream}% +\begin{itemdecl} +void str(basic_string&& s); +\end{itemdecl} +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{rdbuf()->str(std::move(s));} \end{itemdescr} \rSec2[ostringstream]{Class template \tcode{basic_ostringstream}} @@ -8094,6 +8496,22 @@ explicit basic_ostringstream( const basic_string& str, ios_base::openmode which = ios_base::out); + basic_ostringstream(ios_base::openmode which, const Allocator& a); + explicit basic_ostringstream( + basic_string&& s, + ios_base::openmode which = ios_base::out); + template + basic_ostringstream( + const basic_string& s, const Allocator& a) + : basic_ostringstream(s, ios_base::out, a) {} + template + basic_ostringstream( + const basic_string& s, + ios_base::openmode which, const Allocator& a); + template + explicit basic_ostringstream( + const basic_string& s, + ios_base::openmode which = ios_base::out); basic_ostringstream(const basic_ostringstream& rhs) = delete; basic_ostringstream(basic_ostringstream&& rhs); @@ -8105,8 +8523,17 @@ // \ref{ostringstream.members}, members basic_stringbuf* rdbuf() const; - basic_string str() const; + basic_string str() const &; + template + basic_string str(const SAlloc& sa) const; + basic_string str() &&; + basic_string_view view() const noexcept; + void str(const basic_string& s); + template + void str(const basic_string& s); + void str(basic_string&& s); + private: basic_stringbuf sb; // \expos }; @@ -8141,11 +8568,9 @@ \begin{itemdescr} \pnum \effects -Constructs an object of class -\tcode{basic_ostringstream}, -initializing the base class with +Initializes the base class with \tcode{basic_ostream(addressof(sb))}\iref{ostream} -and initializing \tcode{sb} with\linebreak % avoid Overfull +and \tcode{sb} with \tcode{basic_stringbuf(which | ios_base::out)}\iref{stringbuf.cons}. \end{itemdescr} @@ -8159,12 +8584,77 @@ \begin{itemdescr} \pnum \effects -Constructs an object of class -\tcode{basic_ostringstream}, -initializing the base class with +Initializes the base class with +\tcode{basic_ostream(addressof(sb))}\iref{ostream} +and \tcode{sb} with +\tcode{basic_stringbuf(str, which | ios_base::out)}\linebreak(\ref{stringbuf.cons}). % avoid Overfull +\end{itemdescr} + +\indexlibrary{\idxcode{basic_ostringstream}!constructor}% +\begin{itemdecl} +basic_ostringstream(ios_base::openmode which, const Allocator& a); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with +\tcode{basic_ostream(addressof(sb))}\iref{ostream} +and \tcode{sb} with +\tcode{basic_stringbuf(which | ios_base::out, a)}\linebreak(\ref{stringbuf.cons}). % avoid Overfull +\end{itemdescr} + +\indexlibrary{\idxcode{basic_ostringstream}!constructor}% +\begin{itemdecl} +explicit basic_ostringstream( + basic_string&& s, + ios_base::openmode which = ios_base::out); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with +\tcode{basic_ostream(addressof(sb))}\iref{ostream} +and \tcode{sb} with +\tcode{basic_stringbuf(std::move(s), which | ios_base::\brk{}out)}\iref{stringbuf.cons}. +\end{itemdescr} + +\indexlibrary{\idxcode{basic_ostringstream}!constructor}% +\begin{itemdecl} +template + basic_ostringstream( + const basic_string& s, + ios_base::openmode which, const Allocator& a); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with +\tcode{basic_ostream(addressof(sb))}\iref{ostream} +and \tcode{sb} with +\tcode{basic_stringbuf(s, which | ios_base::out, a)}\linebreak(\ref{stringbuf.cons}). % avoid Overfull +\end{itemdescr} + +\indexlibrary{\idxcode{basic_ostringstream}!constructor}% +\begin{itemdecl} +template + explicit basic_ostringstream( + const basic_string& s, + ios_base::openmode which = ios_base::out); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\constraints \tcode{is_same_v} is \tcode{false}. + +\pnum +\effects +Initializes the base class with \tcode{basic_ostream(addressof(sb))}\iref{ostream} -and initializing \tcode{sb} with\linebreak % avoid Overfull -\tcode{basic_stringbuf(str, which | ios_base::out)}\iref{stringbuf.cons}. +and \tcode{sb} with +\tcode{basic_stringbuf(s, which | ios_base::out)}\linebreak(\ref{stringbuf.cons}). % avoid Overfull \end{itemdescr} \indexlibrary{\idxcode{basic_ostringstream}!constructor}% @@ -8205,13 +8695,13 @@ \begin{itemdescr} \pnum -\effects Exchanges the state of \tcode{*this} and -\tcode{rhs} by calling -\tcode{basic_ostream::swap(rhs)} and -\tcode{sb.swap(rhs.sb)}. +\effects Equivalent to: +\begin{codeblock} +basic_ostream::swap(rhs); +sb.swap(rhs.sb); +\end{codeblock} \end{itemdescr} - \indexlibrarymember{swap}{basic_ostringstream}% \begin{itemdecl} template @@ -8239,13 +8729,47 @@ \indexlibrarymember{str}{basic_ostringstream}% \begin{itemdecl} -basic_string str() const; +basic_string str() const &; \end{itemdecl} \begin{itemdescr} \pnum -\returns -\tcode{rdbuf()->str()}. +\effects +Equivalent to: \tcode{return rdbuf()->str();} +\end{itemdescr} + +\indexlibrarymember{str}{basic_ostringstream}% +\begin{itemdecl} +template + basic_string str(const SAlloc& sa) const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return rdbuf()->str(sa);} +\end{itemdescr} + +\indexlibrarymember{str}{basic_ostringstream}% +\begin{itemdecl} +basic_string str() &&; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return std::move(*rdbuf()).str();} +\end{itemdescr} + +\indexlibrarymember{view}{basic_ostringstream}% +\begin{itemdecl} +basic_string_view view() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return rdbuf()->view();} \end{itemdescr} \indexlibrarymember{str}{basic_ostringstream}% @@ -8256,8 +8780,30 @@ \begin{itemdescr} \pnum \effects -Calls -\tcode{rdbuf()->str(s)}. +Equivalent to: \tcode{rdbuf()->str(s);} +\end{itemdescr} + +\indexlibrarymember{str}{basic_ostringstream}% +\begin{itemdecl} +template + void str(const basic_string& s); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{rdbuf()->str(s);} +\end{itemdescr} + +\indexlibrarymember{str}{basic_ostringstream}% +\begin{itemdecl} +void str(basic_string&& s); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{rdbuf()->str(std::move(s));} \end{itemdescr} \rSec2[stringstream]{Class template \tcode{basic_stringstream}} @@ -8282,6 +8828,22 @@ explicit basic_stringstream( const basic_string& str, ios_base::openmode which = ios_base::out | ios_base::in); + basic_stringstream(ios_base::openmode which, const Allocator& a); + explicit basic_stringstream( + basic_string&& s, + ios_base::openmode which = ios_base::out | ios_base::in); + template + basic_stringstream( + const basic_string& s, const Allocator& a) + : basic_stringstream(s, ios_base::out | ios_base::in, a) {} + template + basic_stringstream( + const basic_string& s, + ios_base::openmode which, const Allocator& a); + template + explicit basic_stringstream( + const basic_string& s, + ios_base::openmode which = ios_base::out | ios_base::in); basic_stringstream(const basic_stringstream& rhs) = delete; basic_stringstream(basic_stringstream&& rhs); @@ -8292,8 +8854,17 @@ // \ref{stringstream.members}, members basic_stringbuf* rdbuf() const; - basic_string str() const; + + basic_string str() const &; + template + basic_string str(const SAlloc& sa) const; + basic_string str() &&; + basic_string_view view() const noexcept; + void str(const basic_string& str); + template + void str(const basic_string& s); + void str(basic_string&& s); private: basic_stringbuf sb; // \expos @@ -8330,11 +8901,9 @@ \begin{itemdescr} \pnum \effects -Constructs an object of class -\tcode{basic_stringstream}, -initializing the base class with +Initializes the base class with \tcode{basic_iostream(addressof(sb))}\iref{iostream.cons} -and initializing +and \tcode{sb} with \tcode{basic_string\-buf(which)}. @@ -8350,16 +8919,81 @@ \begin{itemdescr} \pnum \effects -Constructs an object of class -\tcode{basic_stringstream}, -initializing the base class with +Initializes the base class with \tcode{basic_iostream(addressof(sb))}\iref{iostream.cons} -and initializing +and \tcode{sb} with \tcode{basic_string\-buf(str, which)}. \end{itemdescr} +\indexlibrary{\idxcode{basic_stringstream}!constructor}% +\begin{itemdecl} +basic_stringstream(ios_base::openmode which, const Allocator& a); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with +\tcode{basic_iostream(addressof(sb))}\iref{iostream.cons} +and \tcode{sb} with +\tcode{basic_stringbuf(which, a)}\iref{stringbuf.cons}. +\end{itemdescr} + +\indexlibrary{\idxcode{basic_stringstream}!constructor}% +\begin{itemdecl} +explicit basic_stringstream( + basic_string&& s, + ios_base::openmode which = ios_base::out | ios_base::in); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with +\tcode{basic_iostream(addressof(sb))}\iref{iostream.cons} +and \tcode{sb} with +\tcode{basic_stringbuf(std::move(s), which)}\iref{stringbuf.cons}. +\end{itemdescr} + +\indexlibrary{\idxcode{basic_stringstream}!constructor}% +\begin{itemdecl} +template + basic_stringstream( + const basic_string& s, + ios_base::openmode which, const Allocator& a); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes the base class with +\tcode{basic_iostream(addressof(sb))}\iref{iostream.cons} +and \tcode{sb} with +\tcode{basic_stringbuf(s, which, a)}\iref{stringbuf.cons}. +\end{itemdescr} + +\indexlibrary{\idxcode{basic_stringstream}!constructor}% +\begin{itemdecl} +template + explicit basic_stringstream( + const basic_string& s, + ios_base::openmode which = ios_base::out | ios_base::in); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\constraints \tcode{is_same_v} is \tcode{false}. + +\pnum +\effects +Initializes the base class with +\tcode{basic_iostream(addressof(sb))}\iref{iostream.cons} +and \tcode{sb} with +\tcode{basic_stringbuf(s, which)}\iref{stringbuf.cons}. +\end{itemdescr} + \indexlibrary{\idxcode{basic_stringstream}!constructor}% \begin{itemdecl} basic_stringstream(basic_stringstream&& rhs); @@ -8397,13 +9031,14 @@ \begin{itemdescr} \pnum -\effects Exchanges the state of \tcode{*this} and -\tcode{rhs} by calling -\tcode{basic_iostream::swap(rhs)} and -\tcode{sb.swap(rhs.sb)}. +\effects +Equivalent to: +\begin{codeblock} +basic_iostream::swap(rhs); +sb.swap(rhs.sb); +\end{codeblock} \end{itemdescr} - \indexlibrarymember{swap}{basic_stringstream}% \begin{itemdecl} template @@ -8431,25 +9066,81 @@ \indexlibrarymember{str}{basic_stringstream}% \begin{itemdecl} -basic_string str() const; +basic_string str() const &; \end{itemdecl} \begin{itemdescr} \pnum -\returns -\tcode{rdbuf()->str()}. +\effects +Equivalent to: \tcode{return rdbuf()->str();} \end{itemdescr} \indexlibrarymember{str}{basic_stringstream}% \begin{itemdecl} -void str(const basic_string& str); +template + basic_string str(const SAlloc& sa) const; \end{itemdecl} \begin{itemdescr} \pnum \effects -Calls -\tcode{rdbuf()->str(str)}. +Equivalent to: \tcode{return rdbuf()->str(sa);} +\end{itemdescr} + +\indexlibrarymember{str}{basic_stringstream}% +\begin{itemdecl} +basic_string str() &&; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return std::move(*rdbuf()).str();} +\end{itemdescr} + +\indexlibrarymember{view}{basic_stringstream}% +\begin{itemdecl} +basic_string_view view() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return rdbuf()->view();} +\end{itemdescr} + +\indexlibrarymember{str}{basic_stringstream}% +\begin{itemdecl} +void str(const basic_string& s); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{rdbuf()->str(s);} +\end{itemdescr} + +\indexlibrarymember{str}{basic_stringstream}% +\begin{itemdecl} +template + void str(const basic_string& s); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{rdbuf()->str(s);} +\end{itemdescr} + +\indexlibrarymember{str}{basic_stringstream}% +\begin{itemdecl} +void str(basic_string&& s); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{rdbuf()->str(std::move(s));} \end{itemdescr} \rSec1[file.streams]{File-based streams} From ad685c42b18103ace094b375a4fde1a7ec6aba02 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Tue, 30 Jul 2019 19:33:10 -0700 Subject: [PATCH 127/312] [stringbuf] Name string parameters "s" instead of "str" for consistency and to avoid confusion with "str" methods. --- source/iostreams.tex | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/source/iostreams.tex b/source/iostreams.tex index af79cbb154..8228468c2e 100644 --- a/source/iostreams.tex +++ b/source/iostreams.tex @@ -7379,7 +7379,7 @@ basic_stringbuf() : basic_stringbuf(ios_base::in | ios_base::out) {} explicit basic_stringbuf(ios_base::openmode which); explicit basic_stringbuf( - const basic_string& str, + const basic_string& s, ios_base::openmode which = ios_base::in | ios_base::out); explicit basic_stringbuf(const Allocator& a) : basic_stringbuf(ios_base::in | ios_base::out, a) {} @@ -8170,7 +8170,7 @@ basic_istringstream() : basic_istringstream(ios_base::in) {} explicit basic_istringstream(ios_base::openmode which); explicit basic_istringstream( - const basic_string& str, + const basic_string& s, ios_base::openmode which = ios_base::in); basic_istringstream(ios_base::openmode which, const Allocator& a); explicit basic_istringstream( @@ -8252,7 +8252,7 @@ \indexlibrary{\idxcode{basic_istringstream}!constructor}% \begin{itemdecl} explicit basic_istringstream( - const basic_string& str, + const basic_string& s, ios_base::openmode which = ios_base::in); \end{itemdecl} @@ -8262,7 +8262,7 @@ Initializes the base class with \tcode{basic_istream(addressof(sb))}\iref{istream} and \tcode{sb} with -\tcode{basic_stringbuf(str, which | ios_base::in)}\linebreak(\ref{stringbuf.cons}). % avoid Overfull +\tcode{basic_stringbuf(s, which | ios_base::in)}\linebreak(\ref{stringbuf.cons}). % avoid Overfull \end{itemdescr} \indexlibrary{\idxcode{basic_istringstream}!constructor}% @@ -8494,7 +8494,7 @@ basic_ostringstream() : basic_ostringstream(ios_base::out) {} explicit basic_ostringstream(ios_base::openmode which); explicit basic_ostringstream( - const basic_string& str, + const basic_string& s, ios_base::openmode which = ios_base::out); basic_ostringstream(ios_base::openmode which, const Allocator& a); explicit basic_ostringstream( @@ -8577,7 +8577,7 @@ \indexlibrary{\idxcode{basic_ostringstream}!constructor}% \begin{itemdecl} explicit basic_ostringstream( - const basic_string& str, + const basic_string& s, ios_base::openmode which = ios_base::out); \end{itemdecl} @@ -8587,7 +8587,7 @@ Initializes the base class with \tcode{basic_ostream(addressof(sb))}\iref{ostream} and \tcode{sb} with -\tcode{basic_stringbuf(str, which | ios_base::out)}\linebreak(\ref{stringbuf.cons}). % avoid Overfull +\tcode{basic_stringbuf(s, which | ios_base::out)}\linebreak(\ref{stringbuf.cons}). % avoid Overfull \end{itemdescr} \indexlibrary{\idxcode{basic_ostringstream}!constructor}% @@ -8826,7 +8826,7 @@ basic_stringstream() : basic_stringstream(ios_base::out | ios_base::in) {} explicit basic_stringstream(ios_base::openmode which); explicit basic_stringstream( - const basic_string& str, + const basic_string& s, ios_base::openmode which = ios_base::out | ios_base::in); basic_stringstream(ios_base::openmode which, const Allocator& a); explicit basic_stringstream( @@ -8861,7 +8861,7 @@ basic_string str() &&; basic_string_view view() const noexcept; - void str(const basic_string& str); + void str(const basic_string& s); template void str(const basic_string& s); void str(basic_string&& s); @@ -8912,7 +8912,7 @@ \indexlibrary{\idxcode{basic_stringstream}!constructor}% \begin{itemdecl} explicit basic_stringstream( - const basic_string& str, + const basic_string& s, ios_base::openmode which = ios_base::out | ios_base::in); \end{itemdecl} @@ -8924,7 +8924,7 @@ and \tcode{sb} with -\tcode{basic_string\-buf(str, which)}. +\tcode{basic_string\-buf(s, which)}. \end{itemdescr} \indexlibrary{\idxcode{basic_stringstream}!constructor}% From 26f7cd6d3b2d271c74e1d2022f972f833de940f6 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Thu, 1 Aug 2019 13:35:42 -0700 Subject: [PATCH 128/312] [stringbuf.members] Minor fixes to P0408R7 wording. "str()" should be "str"; we're talking about all str member functions here. Add comma after "For efficiency reasons". "i.e." -> "e.g." since we're describing an example case. --- source/iostreams.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/iostreams.tex b/source/iostreams.tex index 8228468c2e..5cd993a6f1 100644 --- a/source/iostreams.tex +++ b/source/iostreams.tex @@ -7697,7 +7697,7 @@ Characters can be initialized by writing to the stream, by constructing the \tcode{basic_stringbuf} passing a \tcode{basic_string} argument, or -by calling one of the \tcode{str()} member functions +by calling one of the \tcode{str} member functions passing a \tcode{basic_string} as an argument. In the latter case, all characters initialized prior to the call are now considered uninitialized @@ -7732,10 +7732,10 @@ \pnum \begin{note} -For efficiency reasons +For efficiency reasons, stream buffer operations might violate invariants of \tcode{buf} while it is held encapsulated in the \tcode{basic_stringbuf}, -i.e., by writing to characters in the range +e.g., by writing to characters in the range \range{\tcode{buf.data() + buf.size()}}{\tcode{buf.data() + buf.capacity()}}. All operations retrieving a \tcode{basic_string} from \tcode{buf} ensure that the \tcode{basic_string} invariants hold on the returned value. From 2c4cb8d8943e5e835b5ed5dccb92afc697345c56 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 23 Jul 2019 09:49:10 +0200 Subject: [PATCH 129/312] P1423R3 char8_t backward compatibility remediation - omitted rationalizing comments in synopsis --- source/compatibility.tex | 29 ++++++++++++++++++++++++----- source/future.tex | 2 +- source/iostreams.tex | 40 ++++++++++++++++++++++++++++++++++++++++ source/support.tex | 2 +- 4 files changed, 66 insertions(+), 7 deletions(-) diff --git a/source/compatibility.tex b/source/compatibility.tex index 0fdbcf2797..d92f7e9c3f 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -2240,14 +2240,33 @@ \rationale Required for new features. \effect -Valid ISO \CppXVII{} code that passes UTF-8 literals -to \tcode{basic_ostream::\brk{}operator<<} -no longer calls character-related overloads. +Valid ISO \CppXVII{} code that passes UTF-8 literals to +\tcode{basic_ostream::operator<<} or +\tcode{basic_ostream::operator<<} is now ill-formed. \begin{codeblock} std::cout << u8"text"; // previously called \tcode{operator<<(const char*)} and printed a string; - // now calls \tcode{operator<<(const void*)} and prints a pointer value + // now ill-formed std::cout << u8'X'; // previously called \tcode{operator<<(char)} and printed a character; - // now calls \tcode{operator<<(int)} and prints an integer value + // now ill-formed +\end{codeblock} + +\diffref{ostream.inserters.character} +\change +Overload resolution for ostream inserters +used with \tcode{wchar_t}, \tcode{char16_t}, or \tcode{char32_t} types. +\rationale +Removal of surprising behavior. +\effect +Valid ISO \CppXVII{} code that passes +\tcode{wchar_t}, \tcode{char16_t}, or \tcode{char32_t} characters or strings +to \tcode{basic_ostream::operator<<} or +that passes \tcode{char16_t} or \tcode{char32_t} characters or strings +to \tcode{basic_ostream::operator<<} is now ill-formed. +\begin{codeblock} +std::cout << u"text"; // previously formatted the string as a pointer value; + // now ill-formed +std::cout << u'X'; // previously formatted the character as an integer value; + // now ill-formed \end{codeblock} \diffref{fs.class.path} diff --git a/source/future.tex b/source/future.tex index fa77d6ed58..f726e1cd03 100644 --- a/source/future.tex +++ b/source/future.tex @@ -2418,7 +2418,7 @@ \pnum \requires The \tcode{source} and \range{first}{last} sequences are UTF-8 encoded. The value type of \tcode{Source} - and \tcode{InputIterator} is \tcode{char}. + and \tcode{InputIterator} is \tcode{char} or \tcode{char8_t}. \tcode{Source} meets the requirements specified in \ref{fs.path.req}. \pnum diff --git a/source/iostreams.tex b/source/iostreams.tex index 5cd993a6f1..e3566545ed 100644 --- a/source/iostreams.tex +++ b/source/iostreams.tex @@ -5829,6 +5829,24 @@ template basic_ostream& operator<<(basic_ostream&, unsigned char); + template + basic_ostream& operator<<(basic_ostream&, wchar_t) = delete; + template + basic_ostream& operator<<(basic_ostream&, char8_t) = delete; + template + basic_ostream& operator<<(basic_ostream&, char16_t) = delete; + template + basic_ostream& operator<<(basic_ostream&, char32_t) = delete; + template + basic_ostream& + operator<<(basic_ostream&, char8_t) = delete; + template + basic_ostream& + operator<<(basic_ostream&, char16_t) = delete; + template + basic_ostream& + operator<<(basic_ostream&, char32_t) = delete; + template basic_ostream& operator<<(basic_ostream&, const charT*); template @@ -5840,6 +5858,28 @@ basic_ostream& operator<<(basic_ostream&, const signed char*); template basic_ostream& operator<<(basic_ostream&, const unsigned char*); + + template + basic_ostream& + operator<<(basic_ostream&, const wchar_t*) = delete; + template + basic_ostream& + operator<<(basic_ostream&, const char8_t*) = delete; + template + basic_ostream& + operator<<(basic_ostream&, const char16_t*) = delete; + template + basic_ostream& + operator<<(basic_ostream&, const char32_t*) = delete; + template + basic_ostream& + operator<<(basic_ostream&, const char8_t*) = delete; + template + basic_ostream& + operator<<(basic_ostream&, const char16_t*) = delete; + template + basic_ostream& + operator<<(basic_ostream&, const char32_t*) = delete; } \end{codeblock} diff --git a/source/support.tex b/source/support.tex index ff20efc61e..7b6579b807 100644 --- a/source/support.tex +++ b/source/support.tex @@ -565,7 +565,7 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_byte} & \tcode{201603L} & \tcode{} \\ \rowsep -\defnlibxname{cpp_lib_char8_t} & \tcode{201811L} & +\defnlibxname{cpp_lib_char8_t} & \tcode{201907L} & \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} \\ \rowsep From d396b32aa416611230da5715f5e304a7afa6e266 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Mon, 22 Jul 2019 17:52:36 -0700 Subject: [PATCH 130/312] P1502R1 Standard library header units for C++20 Fixes #3020. --- source/lib-intro.tex | 29 ++++++++++++++++++++++++++--- source/modules.tex | 13 ++++++++++++- 2 files changed, 38 insertions(+), 4 deletions(-) diff --git a/source/lib-intro.tex b/source/lib-intro.tex index f06eb7acb1..3d49cb53c8 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -1280,6 +1280,23 @@ \tcode{} \\ \end{multicolfloattable} +\pnum +The headers listed in \tref{headers.cpp}, or, +for a freestanding implementation, +the subset of such headers that are provided by the implementation, +are collectively known as +the \defnadj{importable}{\Cpp{} library headers}. +\begin{note} +Importable \Cpp{} library headers can be +imported as module units\iref{module.import}. +\end{note} +\begin{example} +\begin{codeblock} +import ; // imports the \tcode{} header unit +std::vector vi; // OK +\end{codeblock} +\end{example} + \pnum Except as noted in \ref{library} through \ref{\lastlibchapter} and \ref{depr}, the contents of each header \tcode{c\placeholder{name}} is @@ -1504,9 +1521,12 @@ The entities in the \Cpp{} standard library are defined in headers, whose contents are made available to a translation unit when it contains the appropriate \indextext{unit!translation}% -\tcode{\#include} -preprocessing directive\iref{cpp.include}.% \indextext{\idxcode{\#include}}% +\tcode{\#include} +preprocessing directive\iref{cpp.include} +or the appropriate +\indextext{\idxcode{import}}% +\tcode{import} declaration\iref{module.import}. \indextext{source file} \pnum @@ -1528,7 +1548,10 @@ \pnum A translation unit shall include a header only outside of any \indextext{unit!translation}% -declaration or definition, and shall include the header lexically +declaration or definition and, +in the case of a module unit, +only in its \grammarterm{global-module-fragment}, and +shall include the header or import the corresponding header unit lexically before the first reference in that translation unit to any of the entities declared in that header. No diagnostic is required. diff --git a/source/modules.tex b/source/modules.tex index 7dc281249a..6b79cdfbf0 100644 --- a/source/modules.tex +++ b/source/modules.tex @@ -34,6 +34,16 @@ The identifiers \tcode{module} and \tcode{import} shall not appear as \grammarterm{identifier}{s} in a \grammarterm{module-name} or \grammarterm{module-partition}. +\indextext{module!reserved name of}% +All \grammarterm{module-name}{s} beginning with an \grammarterm{identifier} +consisting of \tcode{std} followed by zero or more \grammarterm{digit}{s} or +containing a reserved identifier\iref{lex.name} +are reserved and shall not be specified in a \grammarterm{module-declaration}; +no diagnostic is required. +If any \grammarterm{identifier} in a reserved \grammarterm{module-name} +is a reserved identifier, +the module name is reserved for use by \Cpp{} implementations; +otherwise it is reserved for future standardization. The optional \grammarterm{attribute-specifier-seq} appertains to the \grammarterm{module-declaration}. @@ -466,7 +476,8 @@ \end{note} An \defnadj{importable}{header} is a member of an \impldef{how the set of importable headers is determined} -set of headers. +set of headers that +includes all importable \Cpp{} library headers\iref{headers}. \tcode{H} shall identify an importable header. Two \grammarterm{module-import-declaration}{s} From b4a8b798e00bce697af9b477a214828b69e9e383 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 5 Aug 2019 17:31:21 -0700 Subject: [PATCH 131/312] [module.unit] Add "either" to clarify that we're talking about module-names containing a reserved identifier, not module names starting with an identifier that contains a reserved identifier. --- source/modules.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/modules.tex b/source/modules.tex index 6b79cdfbf0..a32fc6c180 100644 --- a/source/modules.tex +++ b/source/modules.tex @@ -35,7 +35,7 @@ shall not appear as \grammarterm{identifier}{s} in a \grammarterm{module-name} or \grammarterm{module-partition}. \indextext{module!reserved name of}% -All \grammarterm{module-name}{s} beginning with an \grammarterm{identifier} +All \grammarterm{module-name}{s} either beginning with an \grammarterm{identifier} consisting of \tcode{std} followed by zero or more \grammarterm{digit}{s} or containing a reserved identifier\iref{lex.name} are reserved and shall not be specified in a \grammarterm{module-declaration}; From e63c8d44ee9e179f0ef595eb64e87b11c0cfe9e5 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 23 Jul 2019 10:19:10 +0200 Subject: [PATCH 132/312] =?UTF-8?q?P1612R1=20Relocate=20endian=E2=80=99s?= =?UTF-8?q?=20specification?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/numerics.tex | 43 +++++++++++++++++++++++++++++++++++++++++++ source/support.tex | 2 ++ source/utilities.tex | 43 ------------------------------------------- 3 files changed, 45 insertions(+), 43 deletions(-) diff --git a/source/numerics.tex b/source/numerics.tex index 06423d91e3..d98062983a 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -1317,6 +1317,13 @@ constexpr int countr_one(T x) noexcept; template constexpr int popcount(T x) noexcept; + + // \ref{bit.endian}, endian + enum class endian { + little = @\seebelow@, + big = @\seebelow@, + native = @\seebelow@ + }; } \end{codeblock} @@ -1598,6 +1605,42 @@ The number of \tcode{1} bits in the value of \tcode{x}. \end{itemdescr} +\rSec2[bit.endian]{Endian} + +\pnum +Two common methods of byte ordering in multibyte scalar types are big-endian +and little-endian in the execution environment. Big-endian is a format for +storage of binary data in which the most significant byte is placed first, +with the rest in descending order. Little-endian is a format for storage of +binary data in which the least significant byte is placed first, with the rest +in ascending order. This subclause describes the endianness of the scalar types +of the execution environment. + +\indexlibrary{\idxcode{endian}}% +\indexlibrarymember{little}{endian}% +\indexlibrarymember{big}{endian}% +\indexlibrarymember{native}{endian}% +\begin{itemdecl} +enum class endian { + little = @\seebelow@, + big = @\seebelow@, + native = @\seebelow@ +}; +\end{itemdecl} + +\begin{itemdescr} +\pnum +If all scalar types have size 1 byte, then all of \tcode{endian::little}, +\tcode{endian::big}, and \tcode{endian::native} have the same value. +Otherwise, \tcode{endian::little} is not equal to \tcode{endian::big}. +If all scalar types are big-endian, \tcode{endian::native} is +equal to \tcode{endian::big}. +If all scalar types are little-endian, \tcode{endian::native} is +equal to \tcode{endian::little}. +Otherwise, \tcode{endian::native} is not equal +to either \tcode{endian::big} or \tcode{endian::little}. +\end{itemdescr} + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/source/support.tex b/source/support.tex index 7b6579b807..4bfad634dd 100644 --- a/source/support.tex +++ b/source/support.tex @@ -590,6 +590,8 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_enable_shared_from_this} & \tcode{201603L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_endian} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_erase_if} & \tcode{201811L} & \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} \tcode{} diff --git a/source/utilities.tex b/source/utilities.tex index aa0ef50f3a..b969c1ea88 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -16506,13 +16506,6 @@ template struct disjunction; template struct negation; - // \ref{meta.endian}, endian - enum class endian { - little = @\seebelow@, - big = @\seebelow@, - native = @\seebelow@ - }; - // \ref{meta.unary.cat}, primary type categories template inline constexpr bool is_void_v = is_void::value; @@ -18330,42 +18323,6 @@ is a \oldconcept{UnaryTypeTrait} with a base characteristic of \tcode{bool_constant}. \end{itemdescr} -\rSec2[meta.endian]{Endian} - -\pnum -Two common methods of byte ordering in multibyte scalar types are big-endian -and little-endian in the execution environment. Big-endian is a format for -storage of binary data in which the most significant byte is placed first, -with the rest in descending order. Little-endian is a format for storage of -binary data in which the least significant byte is placed first, with the rest -in ascending order. This subclause describes the endianness of the scalar types -of the execution environment. - -\indexlibrary{\idxcode{endian}}% -\indexlibrarymember{little}{endian}% -\indexlibrarymember{big}{endian}% -\indexlibrarymember{native}{endian}% -\begin{itemdecl} -enum class endian { - little = @\seebelow@, - big = @\seebelow@, - native = @\seebelow@ -}; -\end{itemdecl} - -\begin{itemdescr} -\pnum -If all scalar types have size 1 byte, then all of \tcode{endian::little}, -\tcode{endian::big}, and \tcode{endian::native} have the same value. -Otherwise, \tcode{endian::little} is not equal to \tcode{endian::big}. -If all scalar types are big-endian, \tcode{endian::native} is -equal to \tcode{endian::big}. -If all scalar types are little-endian, \tcode{endian::native} is -equal to \tcode{endian::little}. -Otherwise, \tcode{endian::native} is not equal -to either \tcode{endian::big} or \tcode{endian::little}. -\end{itemdescr} - \rSec2[meta.const.eval]{Constant evaluation context} \begin{itemdecl} constexpr bool is_constant_evaluated() noexcept; From 08627662de8173865dff9bf1d0dc43fe04055ce7 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 23 Jul 2019 11:37:25 +0200 Subject: [PATCH 133/312] P1661R1 Remove dedicated precalculated hash lookup interface --- source/containers.tex | 146 +----------------------------------------- source/support.tex | 2 - 2 files changed, 2 insertions(+), 146 deletions(-) diff --git a/source/containers.tex b/source/containers.tex index f0797d7c03..f03be4e571 100644 --- a/source/containers.tex +++ b/source/containers.tex @@ -2292,9 +2292,8 @@ \end{itemize} where \tcode{r1} and \tcode{r2} are keys of elements in \tcode{a_tran}, \item \tcode{n} denotes a value of type \tcode{size_type}, -\item \tcode{z} denotes a value of type \tcode{float}, -\item \tcode{nh} denotes a non-const rvalue of type \tcode{X::node_type}, and -\item \tcode{hk} and \tcode{hke} denote values of type \tcode{size_t}. +\item \tcode{z} denotes a value of type \tcode{float}, and +\item \tcode{nh} denotes a non-const rvalue of type \tcode{X::node_type}. \end{itemize} % Local command to index names as members of all unordered containers. @@ -2748,14 +2747,6 @@ & Average case \bigoh{1}, worst case \bigoh{\tcode{b.size()}}. \\ \rowsep % -\tcode{b.find(k, hk)} -& \tcode{iterator}; \br \tcode{const_iterator} for const \tcode{b}. -& \expects \tcode{b.hash_function()(k)} equals \tcode{hk}.\br - \returns An iterator pointing to an element with key equivalent to - \tcode{k}, or \tcode{b.end()} if no such element exists. -& Average case \bigoh{1}, worst case \bigoh{\tcode{b.size()}}. -\\ \rowsep -% \tcode{a_tran.find(ke)} & \tcode{iterator}; \br \tcode{const_iterator} for const \tcode{a_tran}. & \returns An iterator pointing to an element with key equivalent to @@ -2764,15 +2755,6 @@ worst case \bigoh{\tcode{a_tran.}\br{}\tcode{size()}}. % avoid overfull \\ \rowsep % -\tcode{a_tran.find(ke, hke)} -& \tcode{iterator}; \br \tcode{const_iterator} for const \tcode{a_tran}. -& \expects \tcode{a_tran.hash_function()(ke)} equals \tcode{hke}.\br - \returns An iterator pointing to an element with key equivalent to - \tcode{ke}, or \tcode{a_tran.end()} if no such element exists.% -& Average case \bigoh{1}, - worst case \bigoh{\tcode{a_tran.}\br{}\tcode{size()}}. % avoid overfull -\\ \rowsep -% \indexunordmem{count}% \tcode{b.count(k)} & \tcode{size_type} @@ -2780,13 +2762,6 @@ & Average case \bigoh{\tcode{b.count(k)}}, worst case \bigoh{\tcode{b.size()}}. \\ \rowsep % -\tcode{b.count(k, hk)} -& \tcode{size_type} -& \expects \tcode{b.hash_function()(k)} equals \tcode{hk}.\br - \returns The number of elements with key equivalent to \tcode{k}.% -& Average case \bigoh{\tcode{b.count(k)}}, worst case \bigoh{\tcode{b.size()}}. -\\ \rowsep -% \tcode{a_tran.count(ke)} & \tcode{size_type} & \returns The number of elements with key equivalent to \tcode{ke}.% @@ -2795,15 +2770,6 @@ worst case \bigoh{\tcode{a_tran.}\br{}\tcode{size()}}. % avoid overfull \\ \rowsep % -\tcode{a_tran.count(ke, hke)} -& \tcode{size_type} -& \expects \tcode{b.hash_function()(ke)} equals \tcode{hke}.\br - \returns The number of elements with key equivalent to \tcode{ke}.% -& Average case - \bigoh{\tcode{a_tran.}\br{}\tcode{count(ke)}}, % avoid overfull - worst case \bigoh{\tcode{a_tran.}\br{}\tcode{size()}}. % avoid overfull -\\ \rowsep -% \indexunordmem{contains}% \tcode{b.contains(k)} & \tcode{bool} @@ -2811,13 +2777,6 @@ & Average case \bigoh{1}, worst case \bigoh{\tcode{b.size()}}. \\ \rowsep % -\tcode{b.contains(k, hk)} -& \tcode{bool} -& \expects \tcode{b.hash_function()(ke)} equals \tcode{hke}.\br - \effects Equivalent to \tcode{b.find(k) != b.end()}% -& Average case \bigoh{1}, worst case \bigoh{\tcode{b.size()}}. -\\ \rowsep -% \tcode{a_tran.contains(ke)} & \tcode{bool} & \effects Equivalent to \tcode{a_tran.find(ke) != a_tran.end()}% @@ -2825,14 +2784,6 @@ worst case \bigoh{\tcode{a_tran.}\br{}\tcode{size()}}. % avoid overfull \\ \rowsep % -\tcode{a_tran.contains(ke, hke)} -& \tcode{bool} -& \expects \tcode{a_tran.hash_function()(ke)} equals \tcode{hke}.\br - \effects Equivalent to \tcode{a_tran.find(ke, hke) != a_tran.end()}% -& Average case \bigoh{1}, - worst case \bigoh{\tcode{a_tran.}\br{}\tcode{size()}}. % avoid overfull -\\ \rowsep -% \indexunordmem{equal_range}% \tcode{b.equal_range(k)} & \tcode{pair}; \br @@ -2844,17 +2795,6 @@ \bigoh{\tcode{b.size()}}. \\ \rowsep % -\tcode{b.equal_range(k, hk)} -& \tcode{pair}; \br - \tcode{pair} for const \tcode{b}. -& \expects \tcode{b.hash_function()(k)} equals \tcode{hk}.\br - \returns A range containing all elements with keys equivalent to - \tcode{k}. Returns \tcode{make_pair(b.end(), b.end())} if - no such elements exist.% -& Average case \bigoh{\tcode{b.count(k)}}, worst case - \bigoh{\tcode{b.size()}}. -\\ \rowsep -% \tcode{a_tran.equal_range(ke)} & \tcode{pair}; \br \tcode{pair} for const \tcode{a_tran}. @@ -2866,17 +2806,6 @@ worst case \bigoh{\tcode{a_tran.}\br{}\tcode{size()}}. % avoid overfull \\ \rowsep % -\tcode{a_tran.equal_range(ke, hke)} -& \tcode{pair}; \br - \tcode{pair} for const \tcode{a_tran}. -& \expects \tcode{a_tran.hash_function()(ke)} equals \tcode{hke}.\br - \returns A range containing all elements with keys equivalent to - \tcode{ke}. Returns \tcode{make_pair(a_tran.end(), a_tran.end())} if - no such elements exist.% -& Average case - \bigoh{\tcode{a_tran.}\br{}\tcode{count(ke)}}, % avoid overfull - worst case \bigoh{\tcode{a_tran.}\br{}\tcode{size()}}. % avoid overfull -\\ \rowsep \indexunordmem{bucket_count}% \tcode{b.bucket_count()} & \tcode{size_type} @@ -7989,40 +7918,23 @@ // map operations iterator find(const key_type& k); const_iterator find(const key_type& k) const; - iterator find(const key_type& k, size_t hash); - const_iterator find(const key_type& k, size_t hash) const; template iterator find(const K& k); template const_iterator find(const K& k) const; template - iterator find(const K& k, size_t hash); - template - const_iterator find(const K& k, size_t hash) const; size_type count(const key_type& k) const; - size_type count(const key_type& k, size_t hash) const; template size_type count(const K& k) const; - template - size_type count(const K& k, size_t hash) const; bool contains(const key_type& k) const; - bool contains(const key_type& k, size_t hash) const; template bool contains(const K& k) const; - template - bool contains(const K& k, size_t hash) const; pair equal_range(const key_type& k); pair equal_range(const key_type& k) const; - pair equal_range(const key_type& k, size_t hash); - pair equal_range(const key_type& k, size_t hash) const; template pair equal_range(const K& k); template pair equal_range(const K& k) const; - template - pair equal_range(const K& k, size_t hash); - template - pair equal_range(const K& k, size_t hash) const; // \ref{unord.map.elem}, element access mapped_type& operator[](const key_type& k); @@ -8577,40 +8489,22 @@ // map operations iterator find(const key_type& k); const_iterator find(const key_type& k) const; - iterator find(const key_type& k, size_t hash); - const_iterator find(const key_type& k, size_t hash) const; template iterator find(const K& k); template const_iterator find(const K& k) const; - template - iterator find(const K& k, size_t hash); - template - const_iterator find(const K& k, size_t hash) const; size_type count(const key_type& k) const; - size_type count(const key_type& k, size_t hash) const; template size_type count(const K& k) const; - template - size_type count(const K& k, size_t hash) const; bool contains(const key_type& k) const; - bool contains(const key_type& k, size_t hash) const; template bool contains(const K& k) const; - template - bool contains(const K& k, size_t hash) const; pair equal_range(const key_type& k); pair equal_range(const key_type& k) const; - pair equal_range(const key_type& k, size_t hash); - pair equal_range(const key_type& k, size_t hash) const; template pair equal_range(const K& k); template pair equal_range(const K& k) const; - template - pair equal_range(const K& k, size_t hash); - template - pair equal_range(const K& k, size_t hash) const; // bucket interface size_type bucket_count() const noexcept; @@ -8957,40 +8851,22 @@ // set operations iterator find(const key_type& k); const_iterator find(const key_type& k) const; - iterator find(const key_type& k, size_t hash); - const_iterator find(const key_type& k, size_t hash) const; template iterator find(const K& k); template const_iterator find(const K& k) const; - template - iterator find(const K& k, size_t hash); - template - const_iterator find(const K& k, size_t hash) const; size_type count(const key_type& k) const; - size_type count(const key_type& k, size_t hash) const; template size_type count(const K& k) const; - template - size_type count(const K& k, size_t hash) const; bool contains(const key_type& k) const; - bool contains(const key_type& k, size_t hash) const; template bool contains(const K& k) const; - template - bool contains(const K& k, size_t hash) const; pair equal_range(const key_type& k); pair equal_range(const key_type& k) const; - pair equal_range(const key_type& k, size_t hash); - pair equal_range(const key_type& k, size_t hash) const; template pair equal_range(const K& k); template pair equal_range(const K& k) const; - template - pair equal_range(const K& k, size_t hash); - template - pair equal_range(const K& k, size_t hash) const; // bucket interface size_type bucket_count() const noexcept; @@ -9299,40 +9175,22 @@ // set operations iterator find(const key_type& k); const_iterator find(const key_type& k) const; - iterator find(const key_type& k, size_t hash); - const_iterator find(const key_type& k, size_t hash) const; template iterator find(const K& k); template const_iterator find(const K& k) const; - template - iterator find(const K& k, size_t hash); - template - const_iterator find(const K& k, size_t hash) const; size_type count(const key_type& k) const; - size_type count(const key_type& k, size_t hash) const; template size_type count(const K& k) const; - template - size_type count(const K& k, size_t hash) const; bool contains(const key_type& k) const; - bool contains(const key_type& k, size_t hash) const; template bool contains(const K& k) const; - template - bool contains(const K& k, size_t hash) const; pair equal_range(const key_type& k); pair equal_range(const key_type& k) const; - pair equal_range(const key_type& k, size_t hash); - pair equal_range(const key_type& k, size_t hash) const; template pair equal_range(const K& k); template pair equal_range(const K& k) const; - template - pair equal_range(const K& k, size_t hash); - template - pair equal_range(const K& k, size_t hash) const; // bucket interface size_type bucket_count() const noexcept; diff --git a/source/support.tex b/source/support.tex index 4bfad634dd..6328ee4f20 100644 --- a/source/support.tex +++ b/source/support.tex @@ -610,8 +610,6 @@ \tcode{} \tcode{} \\ \rowsep \defnlibxname{cpp_lib_generic_unordered_lookup} & \tcode{201811L} & \tcode{} \tcode{} \\ \rowsep -\defnlibxname{cpp_lib_generic_unordered_hash_lookup} & \tcode{201902L} & - \tcode{} \tcode{} \\ \rowsep \defnlibxname{cpp_lib_hardware_interference_size} & \tcode{201703L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_has_unique_object_representations} & \tcode{201606L} & From 83e033ba9377dc5249c2405f368eaf2999ca4e84 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Mon, 22 Jul 2019 16:02:14 -0700 Subject: [PATCH 134/312] P1650R0 Output std::chrono::days with 'd' suffix Fixes #3023. --- source/time.tex | 1 + 1 file changed, 1 insertion(+) diff --git a/source/time.tex b/source/time.tex index e3135ff0f6..db94a82ec7 100644 --- a/source/time.tex +++ b/source/time.tex @@ -1992,6 +1992,7 @@ \item Otherwise, if \tcode{Period::type} is \tcode{exa}, the suffix is \tcode{"Es"}. \item Otherwise, if \tcode{Period::type} is \tcode{ratio<60>}, the suffix is \tcode{"min"}. \item Otherwise, if \tcode{Period::type} is \tcode{ratio<3600>}, the suffix is \tcode{"h"}. +\item Otherwise, if \tcode{Period::type} is \tcode{ratio<86400>}, the suffix is \tcode{"d"}. \item Otherwise, if \tcode{Period::type::den == 1}, the suffix is \tcode{"[\placeholder{num}]s"}. \item Otherwise, the suffix is \tcode{"[\placeholder{num}/\placeholder{den}]s"}. \end{itemize} From cda860a5966cd0fc6092763dd1e959a0d234f72e Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Mon, 22 Jul 2019 15:09:20 -0700 Subject: [PATCH 135/312] P1651R0 bind_front should not unwrap reference_wrapper Fixes #3024. --- source/support.tex | 2 +- source/utilities.tex | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/source/support.tex b/source/support.tex index 6328ee4f20..2f6744f2f2 100644 --- a/source/support.tex +++ b/source/support.tex @@ -553,7 +553,7 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_bit_cast} & \tcode{201806L} & \tcode{} \\ \rowsep -\defnlibxname{cpp_lib_bind_front} & \tcode{201811L} & +\defnlibxname{cpp_lib_bind_front} & \tcode{201907L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_bitops} & \tcode{201907L} & \tcode{} \\ \rowsep diff --git a/source/utilities.tex b/source/utilities.tex index b969c1ea88..a310c737af 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -15180,7 +15180,7 @@ of type \tcode{FD}, direct-non-list-initialized with \tcode{std::forward(f)}, \item \tcode{BoundArgs} is a pack - that denotes \tcode{std::unwrap_ref_decay_t...}, + that denotes \tcode{decay_t...}, \item \tcode{bound_args} is a pack of bound argument entities of \tcode{g}\iref{func.def} of types \tcode{BoundArgs...}, From 84c3b3ab8cc9b7d6d308966376295ab1755542c2 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Tue, 23 Jul 2019 21:46:16 -0700 Subject: [PATCH 136/312] P1065R2 Constexpr INVOKE [func.require]pa Added "requirements". [func.bind.bind]p3 Added "of" in "invocation of". [func.bind.bind]p11 Did not italicise "target argument" since it's not a definition or grammar term. (Note that target argument is never defined). [func.bind.bind] Put cv qualifiers on the left of the type, per editorial convention. Fixes #3025. --- source/support.tex | 2 + source/utilities.tex | 221 +++++++++++++++++++++---------------------- 2 files changed, 109 insertions(+), 114 deletions(-) diff --git a/source/support.tex b/source/support.tex index 2f6744f2f2..e61b5c1486 100644 --- a/source/support.tex +++ b/source/support.tex @@ -582,6 +582,8 @@ \defnlibxname{cpp_lib_constexpr} & \tcode{201811L} & any C++ library header from \tref{headers.cpp} or any C++ header for C library facilities from \tref{headers.cpp.c} \\ \rowsep +\defnlibxname{cpp_lib_constexpr_invoke} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_constexpr_swap_algorithms} & \tcode{201806L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_constexpr_dynamic_alloc} & \tcode{201907L} & diff --git a/source/utilities.tex b/source/utilities.tex index a310c737af..a40a53e5ce 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -13645,19 +13645,19 @@ namespace std { // \ref{func.invoke}, invoke template - invoke_result_t invoke(F&& f, Args&&... args) + constexpr invoke_result_t invoke(F&& f, Args&&... args) noexcept(is_nothrow_invocable_v); // \ref{refwrap}, \tcode{reference_wrapper} template class reference_wrapper; - template reference_wrapper ref(T&) noexcept; - template reference_wrapper cref(const T&) noexcept; + template constexpr reference_wrapper ref(T&) noexcept; + template constexpr reference_wrapper cref(const T&) noexcept; template void ref(const T&&) = delete; template void cref(const T&&) = delete; - template reference_wrapper ref(reference_wrapper) noexcept; - template reference_wrapper cref(reference_wrapper) noexcept; + template constexpr reference_wrapper ref(reference_wrapper) noexcept; + template constexpr reference_wrapper cref(reference_wrapper) noexcept; template struct unwrap_reference; template using unwrap_reference_t = typename unwrap_reference::type; @@ -13714,19 +13714,19 @@ struct identity; // \ref{func.not.fn}, function template \tcode{not_fn} - template @\unspec@ not_fn(F&& f); + template constexpr @\unspec@ not_fn(F&& f); // \ref{func.bind.front}, function template \tcode{bind_front} - template @\unspec@ bind_front(F&&, Args&&...); + template constexpr @\unspec@ bind_front(F&&, Args&&...); // \ref{func.bind}, bind template struct is_bind_expression; template struct is_placeholder; template - @\unspec@ bind(F&&, BoundArgs&&...); + constexpr @\unspec@ bind(F&&, BoundArgs&&...); template - @\unspec@ bind(F&&, BoundArgs&&...); + constexpr @\unspec@ bind(F&&, BoundArgs&&...); namespace placeholders { // \tcode{\placeholder{M}} is the \impldef{number of placeholders for bind expressions} number of placeholders @@ -13740,7 +13740,7 @@ // \ref{func.memfn}, member function adaptors template - @\unspec@ mem_fn(R T::*) noexcept; + constexpr @\unspec@ mem_fn(R T::*) noexcept; // \ref{func.wrap}, polymorphic function wrappers class bad_function_call; @@ -13893,22 +13893,19 @@ \indextext{call wrapper}% \indextext{call wrapper!simple}% \indextext{call wrapper!forwarding}% -Every call wrapper\iref{func.def} is \oldconcept{MoveConstructible}. -A \defn{argument forwarding call wrapper} is a +Every call wrapper\iref{func.def} meets the \oldconcept{MoveConstructible} +and \oldconcept{Destructible} requirements. +An \defn{argument forwarding call wrapper} is a call wrapper that can be called with an arbitrary argument list and delivers the arguments to the wrapped callable object as references. This forwarding step delivers rvalue arguments as rvalue references and lvalue arguments as lvalue references. -A \defn{simple call wrapper} is an argument forwarding call wrapper that is -\oldconcept{CopyConstructible} and \oldconcept{CopyAssignable} and -whose copy constructor, move constructor, copy assignment operator, -and move assignment operator do not throw exceptions. \begin{note} In a typical implementation, argument forwarding call wrappers have an overloaded function call operator of the form \begin{codeblock} template - R operator()(UnBoundArgs&&... unbound_args) @\textit{cv-qual}@; + constexpr R operator()(UnBoundArgs&&... unbound_args) @\textit{cv-qual}@; \end{codeblock} \end{note} @@ -13935,7 +13932,13 @@ with references as described in the corresponding forwarding steps. \pnum -The copy/move constructor of a perfect forwarding call wrapper has +A \defn{simple call wrapper} is a perfect forwarding call wrapper that meets +the \oldconcept{CopyConstructible} and \oldconcept{CopyAssignable} requirements +and whose copy constructor, move constructor, and assignment operators +are constexpr functions which do not throw exceptions. + +\pnum +The copy/move constructor of an argument forwarding call wrapper has the same apparent semantics as if memberwise copy/move of its state entities were performed\iref{class.copy.ctor}. @@ -13947,7 +13950,7 @@ \end{note} \pnum -Perfect forwarding call wrappers returned by +Argument forwarding call wrappers returned by a given standard library function template have the same type if the types of their corresponding state entities are the same. @@ -13956,7 +13959,7 @@ \indexlibrary{invoke@\tcode{\placeholder{INVOKE}}}% \begin{itemdecl} template - invoke_result_t invoke(F&& f, Args&&... args) + constexpr invoke_result_t invoke(F&& f, Args&&... args) noexcept(is_nothrow_invocable_v); \end{itemdecl} @@ -13979,19 +13982,19 @@ // construct/copy/destroy template - reference_wrapper(U&&) noexcept(@\seebelow@); - reference_wrapper(const reference_wrapper& x) noexcept; + constexpr reference_wrapper(U&&) noexcept(@\seebelow@); + constexpr reference_wrapper(const reference_wrapper& x) noexcept; // assignment - reference_wrapper& operator=(const reference_wrapper& x) noexcept; + constexpr reference_wrapper& operator=(const reference_wrapper& x) noexcept; // access - operator T& () const noexcept; - T& get() const noexcept; + constexpr operator T& () const noexcept; + constexpr T& get() const noexcept; // invocation template - invoke_result_t operator()(ArgTypes&&...) const; + constexpr invoke_result_t operator()(ArgTypes&&...) const; }; template reference_wrapper(T&) -> reference_wrapper; @@ -14014,7 +14017,7 @@ \indexlibrary{\idxcode{reference_wrapper}!constructor}% \begin{itemdecl} template - reference_wrapper(U&& u) noexcept(@\seebelow@); + constexpr reference_wrapper(U&& u) noexcept(@\seebelow@); \end{itemdecl} \begin{itemdescr} @@ -14039,7 +14042,7 @@ \indexlibrary{\idxcode{reference_wrapper}!constructor}% \begin{itemdecl} -reference_wrapper(const reference_wrapper& x) noexcept; +constexpr reference_wrapper(const reference_wrapper& x) noexcept; \end{itemdecl} \begin{itemdescr} @@ -14051,7 +14054,7 @@ \indexlibrarymember{operator=}{reference_wrapper}% \begin{itemdecl} -reference_wrapper& operator=(const reference_wrapper& x) noexcept; +constexpr reference_wrapper& operator=(const reference_wrapper& x) noexcept; \end{itemdecl} \begin{itemdescr} @@ -14062,7 +14065,7 @@ \indexlibrarymember{operator T\&}{reference_wrapper}% \begin{itemdecl} -operator T& () const noexcept; +constexpr operator T& () const noexcept; \end{itemdecl} \begin{itemdescr} @@ -14071,7 +14074,7 @@ \indexlibrarymember{get}{reference_wrapper}% \begin{itemdecl} -T& get() const noexcept; +constexpr T& get() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -14083,7 +14086,7 @@ \indexlibrarymember{operator()}{reference_wrapper}% \begin{itemdecl} template - invoke_result_t + constexpr invoke_result_t operator()(ArgTypes&&... args) const; \end{itemdecl} @@ -14105,7 +14108,7 @@ \indexlibrarymember{ref}{reference_wrapper}% \begin{itemdecl} -template reference_wrapper ref(T& t) noexcept; +template constexpr reference_wrapper ref(T& t) noexcept; \end{itemdecl} \begin{itemdescr} @@ -14114,7 +14117,7 @@ \indexlibrarymember{ref}{reference_wrapper}% \begin{itemdecl} -template reference_wrapper ref(reference_wrapper t) noexcept; +template constexpr reference_wrapper ref(reference_wrapper t) noexcept; \end{itemdecl} \begin{itemdescr} @@ -14123,7 +14126,7 @@ \indexlibrarymember{cref}{reference_wrapper}% \begin{itemdecl} -template reference_wrapper cref(const T& t) noexcept; +template constexpr reference_wrapper cref(const T& t) noexcept; \end{itemdecl} \begin{itemdescr} @@ -14132,7 +14135,7 @@ \indexlibrarymember{cref}{reference_wrapper}% \begin{itemdecl} -template reference_wrapper cref(reference_wrapper t) noexcept; +template constexpr reference_wrapper cref(reference_wrapper t) noexcept; \end{itemdecl} \begin{itemdescr} @@ -15127,7 +15130,7 @@ \indexlibrary{\idxcode{not_fn}}% \begin{itemdecl} -template @\unspec@ not_fn(F&& f); +template constexpr @\unspec@ not_fn(F&& f); \end{itemdecl} \begin{itemdescr} @@ -15167,7 +15170,7 @@ \indexlibrary{\idxcode{bind_front}}% \begin{itemdecl} template - @\unspec@ bind_front(F&& f, Args&&... args); + constexpr @\unspec@ bind_front(F&& f, Args&&... args); \end{itemdecl} \begin{itemdescr} @@ -15282,12 +15285,18 @@ In the text that follows: \begin{itemize} +\item \tcode{g} is a value of the result of a \tcode{bind} invocation, \item \tcode{FD} is the type \tcode{decay_t}, -\item \tcode{fd} is an lvalue of type \tcode{FD} constructed from \tcode{std::forward(f)}, +\item \tcode{fd} is an lvalue that + is a target object of \tcode{g}\iref{func.def} of type \tcode{FD} + direct-non-list-initialized with \tcode{std::forward(f)}, \item $\tcode{T}_i$ is the $i^\text{th}$ type in the template parameter pack \tcode{BoundArgs}, \item $\tcode{TD}_i$ is the type \tcode{decay_t<$\tcode{T}_i$>}, \item $\tcode{t}_i$ is the $i^\text{th}$ argument in the function parameter pack \tcode{bound_args}, -\item $\tcode{td}_i$ is an lvalue of type $\tcode{TD}_i$ constructed from \tcode{std::forward<$\tcode{T}_i$>($\tcode{t}_i$)}, +\item $\tcode{td}_i$ is a bound argument entity + of \tcode{g}\iref{func.def} of type $\tcode{TD}_i$ + direct-non-list-initialized with + \tcode{std::forward<\brk{}$\tcode{T}_i$>($\tcode{t}_i$)}, \item $\tcode{U}_j$ is the $j^\text{th}$ deduced type of the \tcode{UnBoundArgs\&\&...} parameter of the argument forwarding call wrapper, and \item $\tcode{u}_j$ is the $j^\text{th}$ argument associated with $\tcode{U}_j$. @@ -15296,86 +15305,57 @@ \indexlibrary{\idxcode{bind}}% \begin{itemdecl} template - @\unspec@ bind(F&& f, BoundArgs&&... bound_args); + constexpr @\unspec@ bind(F&& f, BoundArgs&&... bound_args); +template + constexpr @\unspec@ bind(F&& f, BoundArgs&&... bound_args); \end{itemdecl} \begin{itemdescr} \pnum -\requires -\tcode{is_constructible_v} shall be \tcode{true}. For each $\tcode{T}_i$ -in \tcode{BoundArgs}, \tcode{is_cons\-tructible_v<$\tcode{TD}_i$, $\tcode{T}_i$>} shall be \tcode{true}. +\mandates +\tcode{is_constructible_v} is \tcode{true}. For each $\tcode{T}_i$ +in \tcode{BoundArgs}, \tcode{is_cons\-tructible_v<$\tcode{TD}_i$, $\tcode{T}_i$>} is \tcode{true}. + +\pnum +\expects +\tcode{FD} and each $\tcode{TD}_i$ meet +the \oldconcept{MoveConstructible} and \oldconcept{Destructible} requirements. \tcode{\placeholdernc{INVOKE}(fd, $\tcode{w}_1$, $\tcode{w}_2$, $\dotsc$, -$\tcode{w}_N$)}\iref{func.require} shall be a valid expression for some +$\tcode{w}_N$)}\iref{func.require} is a valid expression for some values $\tcode{w}_1$, $\tcode{w}_2$, $\dotsc{}$, $\tcode{w}_N$, where $N$ has the value \tcode{sizeof...(bound_args)}. -The cv-qualifiers \cv{} of the call wrapper \tcode{g}, -as specified below, shall be neither \tcode{volatile} nor \tcode{const volatile}. \pnum\returns An argument forwarding call wrapper \tcode{g}\iref{func.require}. -The effect of \tcode{g($\tcode{u}_1$, $\tcode{u}_2$, $\dotsc$, $\tcode{u}_M$)} -is +A program that attempts to invoke a volatile-qualified \tcode{g} +is ill-formed. +When \tcode{g} is not volatile-qualified, invocation of +\tcode{g($\tcode{u}_1$, $\tcode{u}_2$, $\dotsc$, $\tcode{u}_M$)} +is expression-equivalent\iref{defns.expression-equivalent} to \begin{codeblock} -@\placeholdernc{INVOKE}@(fd, std::forward<@$\tcode{V}_1$@>(@$\tcode{v}_1$@), std::forward<@$\tcode{V}_2$@>(@$\tcode{v}_2$@), @$\dotsc$@, std::forward<@$\tcode{V}_N$@>(@$\tcode{v}_N$@)) +@\placeholdernc{INVOKE}@(static_cast<@$\tcode{V}_\tcode{fd}$@>(@$\tcode{v}_\tcode{fd}$@), + static_cast<@$\tcode{V}_1$@>(@$\tcode{v}_1$@), static_cast<@$\tcode{V}_2$@>(@$\tcode{v}_2$@), @$\dotsc$@, static_cast<@$\tcode{V}_N$@>(@$\tcode{v}_N$@)) \end{codeblock} -where the values and types of the bound -arguments $\tcode{v}_1$, $\tcode{v}_2$, $\dotsc$, $\tcode{v}_N$ are determined as specified below. -The copy constructor and move constructor of the argument forwarding call wrapper throw an -exception if and only if the corresponding constructor of \tcode{FD} or of any of the types -$\tcode{TD}_i$ throws an exception. - -\pnum -\throws Nothing unless the construction of -\tcode{fd} or of one of the values $\tcode{td}_i$ throws an exception. - -\pnum -\remarks The return type meets the \oldconcept{MoveConstructible} requirements. If all -of \tcode{FD} and $\tcode{TD}_i$ meet the \oldconcept{CopyConstructible} requirements, then the -return type meets the \oldconcept{CopyConstructible} requirements. \begin{note} This implies -that all of \tcode{FD} and $\tcode{TD}_i$ are \oldconcept{MoveConst\-ruct\-ible}. \end{note} -\end{itemdescr} - -\indexlibrary{\idxcode{bind}}% -\begin{itemdecl} -template - @\unspec@ bind(F&& f, BoundArgs&&... bound_args); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\requires -\tcode{is_constructible_v} shall be \tcode{true}. For each $\tcode{T}_i$ -in \tcode{BoundArgs}, \tcode{is_con\-structible_v<$\tcode{TD}_i$, $\tcode{T}_i$>} shall be \tcode{true}. -\tcode{\placeholdernc{INVOKE}(fd, $\tcode{w}_1$, $\tcode{w}_2$, $\dotsc$, $\tcode{w}_N$)} shall be a valid -expression for some -values $\tcode{w}_1$, $\tcode{w}_2$, $\dotsc$, $\tcode{w}_N$, where -$N$ has the value \tcode{sizeof...(bound_args)}. -The cv-qualifiers \cv{} of the call wrapper \tcode{g}, -as specified below, shall be neither \tcode{volatile} nor \tcode{const volatile}. - -\pnum -\returns -An argument forwarding call wrapper \tcode{g}\iref{func.require}. -The effect of -\tcode{g($\tcode{u}_1$, $\tcode{u}_2$, $\dotsc$, $\tcode{u}_M$)} is +for the first overload, and \begin{codeblock} -@\placeholdernc{INVOKE}@(fd, std::forward<@$\tcode{V}_1$@>(@$\tcode{v}_1$@), std::forward<@$\tcode{V}_2$@>(@$\tcode{v}_2$@), @$\dotsc$@, std::forward<@$\tcode{V}_N$@>(@$\tcode{v}_N$@)) +@\placeholdernc{INVOKE}@(static_cast<@$\tcode{V}_\tcode{fd}$@>(@$\tcode{v}_\tcode{fd}$@), + static_cast<@$\tcode{V}_1$@>(@$\tcode{v}_1$@), static_cast<@$\tcode{V}_2$@>(@$\tcode{v}_2$@), @$\dotsc$@, static_cast<@$\tcode{V}_N$@>(@$\tcode{v}_N$@)) \end{codeblock} -where the values and types of the bound -arguments $\tcode{v}_1$, $\tcode{v}_2$, $\dotsc$, $\tcode{v}_N$ are determined as specified below. -The copy constructor and move constructor of the argument forwarding call wrapper throw an -exception if and only if the corresponding constructor of \tcode{FD} or of any of the types -$\tcode{TD}_i$ throws an exception. +for the second overload, +where the values and types of the target argument $\tcode{v}_\tcode{fd}$ and +of the bound arguments +$\tcode{v}_1$, $\tcode{v}_2$, $\dotsc$, $\tcode{v}_N$ are determined as specified below. \pnum -\throws Nothing unless the construction of -\tcode{fd} or of one of the values $\tcode{td}_i$ throws an exception. +\throws Any exception thrown by the initialization of +the state entities of \tcode{g}. \pnum -\remarks The return type meets the \oldconcept{MoveConstructible} requirements. If all -of \tcode{FD} and $\tcode{TD}_i$ meet the \oldconcept{CopyConstructible} requirements, then the -return type meets the \oldconcept{CopyConstructible} requirements. \begin{note} This implies -that all of \tcode{FD} and $\tcode{TD}_i$ are \oldconcept{MoveConst\-ruct\-ible}. \end{note} +\begin{note} +If all of \tcode{FD} and $\tcode{TD}_i$ meet +the requirements of \oldconcept{CopyConstructible}, then +the return type meets the requirements of \oldconcept{CopyConstructible}. +\end{note} \end{itemdescr} \pnum @@ -15391,9 +15371,12 @@ argument is \tcode{$\tcode{td}_i$.get()} and its type $\tcode{V}_i$ is \tcode{T\&}; \item if the value of \tcode{is_bind_expression_v<$\tcode{TD}_i$>} -is \tcode{true}, the argument is \tcode{$\tcode{td}_i$(std::forward<$\tcode{U}_j$>($\tcode{u}_j$)...)} and its -type $\tcode{V}_i$ is -\tcode{invoke_result_t<$\tcode{TD}_i$ \cv{} \&, $\tcode{U}_j$...>\&\&}; +is \tcode{true}, the argument is +\begin{codeblock} +static_cast<@\cv{} $\tcode{TD}_i$@&>(@$\tcode{td}_i$@)(std::forward<@$\tcode{U}_j$@>(@$\tcode{u}_j$@)...) +\end{codeblock} +and its type $\tcode{V}_i$ is +\tcode{invoke_result_t<\cv{} $\tcode{TD}_i$\&, $\tcode{U}_j$...>\&\&}; \item if the value \tcode{j} of \tcode{is_placeholder_v<$\tcode{TD}_i$>} is not zero, the argument is \tcode{std::forward<$\tcode{U}_j$>($\tcode{u}_j$)} @@ -15401,8 +15384,12 @@ is \tcode{$\tcode{U}_j$\&\&}; \item otherwise, the value is $\tcode{td}_i$ and its type $\tcode{V}_i$ -is \tcode{$\tcode{TD}_i$ \cv{} \&}. +is \tcode{\cv{} $\tcode{TD}_i$\&}. \end{itemize} + +\pnum +The value of the target argument $\tcode{v}_\tcode{fd}$ is \tcode{fd} and +its corresponding type $\tcode{V}_\tcode{fd}$ is \tcode{\cv{} FD\&}. \indexlibrary{\idxcode{bind}|)}% \rSec3[func.bind.place]{Placeholders} @@ -15422,12 +15409,15 @@ \end{codeblock} \pnum -All placeholder types shall be \oldconcept{DefaultConstructible} and -\oldconcept{CopyConstructible}, and their default constructors and copy/move -constructors shall not throw exceptions. It is \impldef{assignability of placeholder +All placeholder types meet the \oldconcept{DefaultConstructible} and +\oldconcept{CopyConstructible} requirements, and +their default constructors and copy/move +constructors are constexpr functions which +do not throw exceptions. It is \impldef{assignability of placeholder objects} whether -placeholder types are \oldconcept{CopyAssignable}. \oldconcept{CopyAssignable} placeholders' copy -assignment operators shall not throw exceptions. +placeholder types meet the \oldconcept{CopyAssignable} requirements, +but if so, their copy assignment operators are +constexpr functions which do not throw exceptions. \pnum Placeholders should be defined as: @@ -15445,14 +15435,17 @@ \indexlibrary{\idxcode{mem_fn}}% \begin{itemdecl} -template @\unspec@ mem_fn(R T::* pm) noexcept; +template constexpr @\unspec@ mem_fn(R T::* pm) noexcept; \end{itemdecl} \begin{itemdescr} \pnum \returns A simple call wrapper\iref{func.def} \tcode{fn} -such that the expression \tcode{fn(t, a$_2$, $\dotsc$, a$_N$)} is equivalent -to \tcode{\placeholdernc{INVOKE}(pm, t, a$_2$, $\dotsc$, a$_N$)}\iref{func.require}. +with call pattern \tcode{invoke(pmd, call_args...)}, where +\tcode{pmd} is the target object of \tcode{fn} of type \tcode{R T::*} +direct-non-list-initialized with \tcode{pm}, and +\tcode{call_args} is an argument pack +used in a function call expression\iref{expr.call} of \tcode{pm}. \end{itemdescr} \indextext{function object!\idxcode{mem_fn}|)} From 906fd4d0519994e06659ce066c8252df186c23b9 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 5 Aug 2019 17:57:35 -0700 Subject: [PATCH 137/312] [func.require] Convert restrictive 'which' to 'that'. --- source/utilities.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index a40a53e5ce..4405f696c1 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -13935,7 +13935,7 @@ A \defn{simple call wrapper} is a perfect forwarding call wrapper that meets the \oldconcept{CopyConstructible} and \oldconcept{CopyAssignable} requirements and whose copy constructor, move constructor, and assignment operators -are constexpr functions which do not throw exceptions. +are constexpr functions that do not throw exceptions. \pnum The copy/move constructor of an argument forwarding call wrapper has @@ -15412,12 +15412,12 @@ All placeholder types meet the \oldconcept{DefaultConstructible} and \oldconcept{CopyConstructible} requirements, and their default constructors and copy/move -constructors are constexpr functions which +constructors are constexpr functions that do not throw exceptions. It is \impldef{assignability of placeholder objects} whether placeholder types meet the \oldconcept{CopyAssignable} requirements, but if so, their copy assignment operators are -constexpr functions which do not throw exceptions. +constexpr functions that do not throw exceptions. \pnum Placeholders should be defined as: From 082e455128c7eb8ac9a38a4f9f200f54b9c3cdde Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Mon, 22 Jul 2019 14:56:37 -0700 Subject: [PATCH 138/312] P1207R4 Movability of Single-pass Iterators Fixes #3026. --- source/iterators.tex | 49 +++++++++++++++++++++++++++++++++++++------- 1 file changed, 42 insertions(+), 7 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index 6cb29652b1..a280be411f 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1282,7 +1282,7 @@ \begin{codeblock} template concept WeaklyIncrementable = - Semiregular && + DefaultConstructible && Movable && requires(I i) { typename iter_difference_t; requires SignedIntegral>; @@ -1379,6 +1379,12 @@ WeaklyIncrementable; \end{codeblock} +\pnum +\begin{note} +Unlike the \oldconcept{Iterator} requirements, +the \libconcept{Iterator} concept does not require copyability. +\end{note} + \rSec3[iterator.concept.sentinel]{Concept \tcode{Sentinel}} \pnum @@ -1548,7 +1554,8 @@ \rSec3[iterator.concept.forward]{Concept \tcode{ForwardIterator}} \pnum -The \libconcept{ForwardIterator} concept adds equality comparison and +The \libconcept{ForwardIterator} concept adds +copyability, equality comparison, and the multi-pass guarantee, specified below. \indexlibrary{\idxcode{ForwardIterator}}% @@ -3946,7 +3953,8 @@ template constexpr move_iterator(const move_iterator& u); template constexpr move_iterator& operator=(const move_iterator& u); - constexpr iterator_type base() const; + constexpr iterator_type base() const &; + constexpr iterator_type base() &&; constexpr reference operator*() const; constexpr move_iterator& operator++(); @@ -4035,7 +4043,7 @@ \begin{itemdescr} \pnum \effects Constructs a \tcode{move_iterator}, initializing -\tcode{current} with \tcode{i}. +\tcode{current} with \tcode{std::move(i)}. \end{itemdescr} @@ -4071,14 +4079,30 @@ \indexlibrarymember{base}{move_iterator}% \begin{itemdecl} -constexpr Iterator base() const; +constexpr Iterator base() const &; \end{itemdecl} \begin{itemdescr} +\pnum +\constraints \tcode{Iterator} satisfies \libconcept{CopyConstructible}. + +\pnum +\expects \tcode{Iterator} models \libconcept{CopyConstructible}. + \pnum \returns \tcode{current}. \end{itemdescr} +\indexlibrarymember{base}{move_iterator}% +\begin{itemdecl} +constexpr Iterator base() &&; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{std::move(current)}. +\end{itemdescr} + \rSec3[move.iter.elem]{Element access} \indexlibrarymember{operator*}{move_iterator}% @@ -4944,7 +4968,8 @@ requires Assignable constexpr counted_iterator& operator=(const counted_iterator& x); - constexpr I base() const; + constexpr I base() const & requires CopyConstructible; + constexpr I base() &&; constexpr iter_difference_t count() const noexcept; constexpr decltype(auto) operator*(); constexpr decltype(auto) operator*() const @@ -5068,7 +5093,7 @@ \indexlibrarymember{base}{counted_iterator}% \begin{itemdecl} -constexpr I base() const; +constexpr I base() const & requires CopyConstructible; \end{itemdecl} \begin{itemdescr} @@ -5076,6 +5101,16 @@ \effects Equivalent to: \tcode{return current;} \end{itemdescr} +\indexlibrarymember{base}{counted_iterator}% +\begin{itemdecl} +constexpr I base() &&; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{std::move(current)}. +\end{itemdescr} + \indexlibrarymember{count}{counted_iterator}% \begin{itemdecl} constexpr iter_difference_t count() const noexcept; From 7e862f0f238257b2cbb1f7296a593b4587029e39 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 5 Aug 2019 18:46:55 -0700 Subject: [PATCH 139/312] [range.transform.sentinel] Reinstate transform_view::sentinel::operator- overloads, accidentally removed during application of P1614R2. --- source/ranges.tex | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/source/ranges.tex b/source/ranges.tex index b65323b009..a1b5b12239 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -3468,6 +3468,30 @@ \effects Equivalent to: \tcode{return x.current_ == y.end_;} \end{itemdescr} +\indexlibrary{\idxcode{operator-}!\idxcode{transform_view::sentinel}}% +\begin{itemdecl} +friend constexpr iter_difference_t> + operator-(const iterator& x, const sentinel& y) + requires SizedSentinel, iterator_t>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return x.current_ - y.end_;} +\end{itemdescr} + +\indexlibrary{\idxcode{operator-}!\idxcode{transform_view::sentinel}}% +\begin{itemdecl} +friend constexpr iter_difference_t> + operator-(const sentinel& y, const iterator& x) + requires SizedSentinel, iterator_t>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return x.end_ - y.current_;} +\end{itemdescr} + \rSec3[range.transform.adaptor]{\tcode{view::transform}} \pnum From 2c27a4b4dd4e301db97fecc8cf7b802501c07b80 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Mon, 29 Jul 2019 11:51:20 +0200 Subject: [PATCH 140/312] P1035R7 Input range adaptors --- source/algorithms.tex | 40 +- source/iterators.tex | 4 +- source/ranges.tex | 2842 ++++++++++++++++++++++++++++------------- source/utilities.tex | 25 +- 4 files changed, 2017 insertions(+), 894 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 7133983702..5e4ebf2dba 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -877,7 +877,7 @@ count(I first, S last, const T& value, Proj proj = {}); template requires IndirectRelation, Proj>, const T*> - constexpr iter_difference_t> + constexpr range_difference_t count(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, IndirectUnaryPredicate> Pred> @@ -885,7 +885,7 @@ count_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> - constexpr iter_difference_t> + constexpr range_difference_t count_if(R&& r, Pred pred, Proj proj = {}); } @@ -1116,7 +1116,7 @@ class Proj = identity> requires IndirectlyComparable, const T*, Pred, Proj> constexpr safe_subrange_t - search_n(R&& r, iter_difference_t> count, + search_n(R&& r, range_difference_t count, const T& value, Pred pred = {}, Proj proj = {}); } @@ -1663,7 +1663,7 @@ IndirectRelation, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && (ForwardIterator> || - (InputIterator && Same>, iter_value_t>) || + (InputIterator && Same, iter_value_t>) || IndirectlyCopyableStorable, O>) constexpr unique_copy_result, O> unique_copy(R&& r, O result, C comp = {}, Proj proj = {}); @@ -2640,8 +2640,8 @@ constexpr T min(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, iter_value_t>*> - constexpr iter_value_t> + requires IndirectlyCopyableStorable, range_value_t*> + constexpr range_value_t min(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2662,8 +2662,8 @@ constexpr T max(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, iter_value_t>*> - constexpr iter_value_t> + requires IndirectlyCopyableStorable, range_value_t*> + constexpr range_value_t max(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2704,8 +2704,8 @@ minmax(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, iter_value_t>*> - constexpr minmax_result>> + requires IndirectlyCopyableStorable, range_value_t*> + constexpr minmax_result> minmax(R&& r, Comp comp = {}, Proj proj = {}); } @@ -3512,7 +3512,7 @@ ranges::count(I first, S last, const T& value, Proj proj = {}); template requires IndirectRelation, Proj>, const T*> - constexpr iter_difference_t> + constexpr range_difference_t ranges::count(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, IndirectUnaryPredicate> Pred> @@ -3520,7 +3520,7 @@ ranges::count_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> - constexpr iter_difference_t> + constexpr range_difference_t ranges::count_if(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -4013,7 +4013,7 @@ class Proj = identity> requires IndirectlyComparable, const T*, Pred, Proj> constexpr safe_subrange_t - ranges::search_n(R&& r, iter_difference_t> count, + ranges::search_n(R&& r, range_difference_t count, const T& value, Pred pred = {}, Proj proj = {}); \end{itemdecl} @@ -5234,7 +5234,7 @@ IndirectRelation, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && (ForwardIterator> || - (InputIterator && Same>, iter_value_t>) || + (InputIterator && Same, iter_value_t>) || IndirectlyCopyableStorable, O>) constexpr ranges::unique_copy_result, O> ranges::unique_copy(R&& r, O result, C comp = {}, Proj proj = {}); @@ -7913,8 +7913,8 @@ constexpr T ranges::min(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, iter_value_t>*> - constexpr iter_value_t> + requires IndirectlyCopyableStorable, range_value_t*> + constexpr range_value_t ranges::min(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7990,8 +7990,8 @@ constexpr T ranges::max(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, iter_value_t>*> - constexpr iter_value_t> + requires IndirectlyCopyableStorable, range_value_t*> + constexpr range_value_t ranges::max(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -8070,8 +8070,8 @@ ranges::minmax(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, iter_value_t>*> - constexpr ranges::minmax_result>> + requires IndirectlyCopyableStorable, range_value_t*> + constexpr ranges::minmax_result> ranges::minmax(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index a280be411f..bcddda181c 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -243,7 +243,7 @@ template S> constexpr iter_difference_t distance(I first, S last); template - constexpr iter_difference_t> distance(R&& r); + constexpr range_difference_t distance(R&& r); // \ref{range.iter.op.next}, \tcode{ranges::next} template @@ -2833,7 +2833,7 @@ \indexlibrary{\idxcode{distance}}% \begin{itemdecl} template - constexpr iter_difference_t> ranges::distance(R&& r); + constexpr range_difference_t ranges::distance(R&& r); \end{itemdecl} \begin{itemdescr} diff --git a/source/ranges.tex b/source/ranges.tex index a1b5b12239..a274086e4d 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -47,15 +47,22 @@ } // \ref{range.range}, ranges - template - using iterator_t = decltype(ranges::begin(declval())); - - template - using sentinel_t = decltype(ranges::end(declval())); - template concept Range = @\seebelow@; + template + using iterator_t = decltype(ranges::begin(declval())); + template + using sentinel_t = decltype(ranges::end(declval())); + template + using range_difference_t = iter_difference_t>; + template + using range_value_t = iter_value_t>; + template + using range_reference_t = iter_reference_t>; + template + using range_rvalue_reference_t = iter_rvalue_reference_t>; + // \ref{range.sized}, sized ranges template inline constexpr bool disable_sized_range = false; @@ -163,7 +170,7 @@ // \ref{range.transform}, transform view template requires View && is_object_v && - RegularInvocable>> + RegularInvocable> class transform_view; namespace view { inline constexpr @\unspec@ transform = @\unspec@; } @@ -173,11 +180,33 @@ namespace view { inline constexpr @\unspec@ take = @\unspec@; } + // \ref{range.take.while}, take while view + template + requires InputRange && is_object_v && + IndirectUnaryPredicate> + class take_while_view; + + namespace view { inline constexpr @\unspec@ take_while = @\unspec@; } + + // \ref{range.drop}, drop view + template + class drop_view; + + namespace view { inline constexpr @\unspec@ drop = @\unspec@; } + + // \ref{range.drop.while}, drop while view + template + requires InputRange && is_object_v && + IndirectUnaryPredicate> + class drop_while_view; + + namespace view { inline constexpr @\unspec@ drop_while = @\unspec@; } + // \ref{range.join}, join view template - requires View && InputRange>> && - (is_reference_v>> || - View>>) + requires View && InputRange> && + (is_reference_v> || + View>) class join_view; namespace view { inline constexpr @\unspec@ join = @\unspec@; } @@ -210,6 +239,30 @@ class reverse_view; namespace view { inline constexpr @\unspec@ reverse = @\unspec@; } + + // \ref{range.istream}, istream view + template> + requires @\seebelow@ + class basic_istream_view; + template + basic_istream_view istream_view(basic_istream& s); + + // \ref{range.elements}, elements view + template + requires @\seebelow@; + class elements_view; + + template + using keys_view = elements_view, 0>; + template + using values_view = elements_view, 1>; + + namespace view { + template + inline constexpr @\unspec@ elements = @\unspec@ ; + inline constexpr @\unspec@ keys = @\unspec@ ; + inline constexpr @\unspec@ values = @\unspec@ ; + } } namespace std { @@ -897,8 +950,8 @@ \tcode{unordered_multiset}\iref{unord.multiset}, or \tcode{match_results}\iref{re.results}, \tcode{false}. \item Otherwise, if both \tcode{T} and \tcode{const T} model \libconcept{Range} - and \tcode{iter_reference_t{>}} is not the same type as - \tcode{iter_reference_t{>}}, + and \tcode{range_reference_t} is not the same type as + \tcode{range_reference_t}, \tcode{false}. \begin{note} Deep \tcode{const}-ness implies element ownership, @@ -964,7 +1017,7 @@ concept ContiguousRange = RandomAccessRange && ContiguousIterator> && requires(T& t) { - { ranges::data(t) } -> Same>>>; + { ranges::data(t) } -> Same>>; }; \end{itemdecl} @@ -1084,11 +1137,11 @@ requires BidirectionalRange && CommonRange; template - constexpr decltype(auto) operator[](iter_difference_t> n) { + constexpr decltype(auto) operator[](range_difference_t n) { return ranges::begin(derived())[n]; } template - constexpr decltype(auto) operator[](iter_difference_t> n) const { + constexpr decltype(auto) operator[](range_difference_t n) const { return ranges::begin(derived())[n]; } }; @@ -1255,7 +1308,7 @@ ? subrange_kind::sized : subrange_kind::unsized>; template<@\placeholder{forwarding-range}@ R> - subrange(R&&, iter_difference_t>) -> + subrange(R&&, range_difference_t) -> subrange, sentinel_t, subrange_kind::sized>; template @@ -1564,7 +1617,7 @@ \begin{codeblock} single_view s{4}; for (int i : s) - cout << i; // prints 4 + cout << i; // prints \tcode{4} \end{codeblock} \end{example} @@ -2583,14 +2636,14 @@ public: using iterator_concept = @\seebelow@; using iterator_category = @\seebelow@; - using value_type = iter_value_t>; - using difference_type = iter_difference_t>; + using value_type = range_value_t; + using difference_type = range_difference_t; iterator() = default; constexpr iterator(filter_view& parent, iterator_t current); constexpr iterator_t base() const; - constexpr iter_reference_t> operator*() const; + constexpr range_reference_t operator*() const; constexpr iterator_t operator->() const requires @\placeholder{has-arrow}@>; @@ -2604,7 +2657,7 @@ friend constexpr bool operator==(const iterator& x, const iterator& y) requires EqualityComparable>; - friend constexpr iter_rvalue_reference_t> iter_move(const iterator& i) + friend constexpr range_rvalue_reference_t iter_move(const iterator& i) noexcept(noexcept(ranges::iter_move(i.current_))); friend constexpr void iter_swap(const iterator& x, const iterator& y) noexcept(noexcept(ranges::iter_swap(x.current_, y.current_))) @@ -2668,7 +2721,7 @@ \indexlibrary{\idxcode{operator*}!\idxcode{filter_view::iterator}}% \begin{itemdecl} -constexpr iter_reference_t> operator*() const; +constexpr range_reference_t operator*() const; \end{itemdecl} \begin{itemdescr} @@ -2771,7 +2824,7 @@ \indexlibrary{\idxcode{iter_move}!\idxcode{filter_view::iterator}}% \begin{itemdecl} -friend constexpr iter_rvalue_reference_t> iter_move(const iterator& i) +friend constexpr range_rvalue_reference_t iter_move(const iterator& i) noexcept(noexcept(ranges::iter_move(i.current_))); \end{itemdecl} @@ -2877,7 +2930,7 @@ namespace std::ranges { template requires View && is_object_v && - RegularInvocable>> + RegularInvocable> class transform_view : public view_interface> { private: // \ref{range.transform.iterator}, class template \tcode{transform_view::iterator} @@ -2900,16 +2953,16 @@ constexpr iterator begin(); constexpr iterator begin() const requires Range && - RegularInvocable>>; + RegularInvocable>; constexpr sentinel end(); constexpr iterator end() requires CommonRange; constexpr sentinel end() const requires Range && - RegularInvocable>>; + RegularInvocable>; constexpr iterator end() const requires CommonRange && - RegularInvocable>>; + RegularInvocable>; constexpr auto size() requires SizedRange { return ranges::size(base_); } constexpr auto size() const requires SizedRange @@ -2972,7 +3025,7 @@ \begin{itemdecl} constexpr iterator begin() const requires Range && - RegularInvocable>>; + RegularInvocable>; \end{itemdecl} \begin{itemdescr} @@ -3013,7 +3066,7 @@ \begin{itemdecl} constexpr sentinel end() const requires Range && - RegularInvocable>>; + RegularInvocable>; \end{itemdecl} \begin{itemdescr} @@ -3028,7 +3081,7 @@ \begin{itemdecl} constexpr iterator end() const requires CommonRange && - RegularInvocable>>; + RegularInvocable>; \end{itemdecl} \begin{itemdescr} @@ -3058,8 +3111,8 @@ using iterator_concept = @\seebelow@; using iterator_category = @\seebelow@; using value_type = - remove_cvref_t>>>; - using difference_type = iter_difference_t>; + remove_cvref_t>>; + using difference_type = range_difference_t; iterator() = default; constexpr iterator(Parent& parent, iterator_t current); @@ -3417,10 +3470,10 @@ friend constexpr bool operator==(const iterator& x, const sentinel& y); - friend constexpr iter_difference_t> + friend constexpr range_difference_t operator-(const iterator& x, const sentinel& y) requires SizedSentinel, iterator_t>; - friend constexpr iter_difference_t> + friend constexpr range_difference_t operator-(const sentinel& y, const iterator& x) requires SizedSentinel, iterator_t>; }; @@ -3470,7 +3523,7 @@ \indexlibrary{\idxcode{operator-}!\idxcode{transform_view::sentinel}}% \begin{itemdecl} -friend constexpr iter_difference_t> +friend constexpr range_difference_t operator-(const iterator& x, const sentinel& y) requires SizedSentinel, iterator_t>; \end{itemdecl} @@ -3482,7 +3535,7 @@ \indexlibrary{\idxcode{operator-}!\idxcode{transform_view::sentinel}}% \begin{itemdecl} -friend constexpr iter_difference_t> +friend constexpr range_difference_t operator-(const sentinel& y, const iterator& x) requires SizedSentinel, iterator_t>; \end{itemdecl} @@ -3529,15 +3582,15 @@ class take_view : public view_interface> { private: V base_ = V(); // \expos - iter_difference_t> count_ = 0; // \expos + range_difference_t count_ = 0; // \expos // \ref{range.take.sentinel}, class template \tcode{take_view::sentinel} template struct sentinel; // \expos public: take_view() = default; - constexpr take_view(V base, iter_difference_t> count); + constexpr take_view(V base, range_difference_t count); template requires Constructible> - constexpr take_view(R&& r, iter_difference_t> count); + constexpr take_view(R&& r, range_difference_t count); constexpr V base() const; @@ -3593,14 +3646,14 @@ }; template - take_view(R&&, iter_difference_t>) + take_view(R&&, range_difference_t) -> take_view>; } \end{codeblock} \indexlibrary{\idxcode{take_view}!\idxcode{take_view}}% \begin{itemdecl} -constexpr take_view(V base, iter_difference_t> count); +constexpr take_view(V base, range_difference_t count); \end{itemdecl} \begin{itemdescr} @@ -3613,7 +3666,7 @@ \begin{itemdecl} template requires Constructible> -constexpr take_view(R&& r, iter_difference_t> count); +constexpr take_view(R&& r, range_difference_t count); \end{itemdecl} \begin{itemdescr} @@ -3707,1293 +3760,2364 @@ \tcode{view::take(E, F)} is expression-equivalent to \tcode{take_view\{E, F\}}. +\rSec2[range.take.while]{Take while view} -\rSec2[range.join]{Join view} - -\rSec3[range.join.overview]{Overview} +\rSec3[range.take.while.overview]{Overview} \pnum -\tcode{join_view} flattens a \libconcept{View} of ranges into a -\libconcept{View}. +Given a unary predicate \tcode{pred} and a \tcode{View} \tcode{r}, +\tcode{take_while_view} produces a \tcode{View} +of the range \range{begin(r)}{ranges::find_if_not(r, pred)}. \pnum \begin{example} \begin{codeblock} -vector ss{"hello", " ", "world", "!"}; -join_view greeting{ss}; -for (char ch : greeting) - cout << ch; // prints: hello world! +auto input = istringstream{"0 1 2 3 4 5 6 7 8 9"}; +auto small = [](const auto x) noexcept { return x < 5; }; +auto small_ints = istream_view(input) | view::take_while(small); +for (const auto i : small_ints) { + cout << i << ' '; // prints \tcode{0 1 2 3 4} +} +auto i = 0; +input >> i; +cout << i; // prints \tcode{6} \end{codeblock} \end{example} -\rSec3[range.join.view]{Class template \tcode{join_view}} +\rSec3[range.take.while.view]{Class template \tcode{take_while_view}} \begin{codeblock} namespace std::ranges { - template - requires View && InputRange>> && - (is_reference_v>> || - View>>) - class join_view : public view_interface> { - private: - using InnerRng = // \expos - iter_reference_t>; - // \ref{range.join.iterator}, class template \tcode{join_view::iterator} - template - struct iterator; // \expos - // \ref{range.join.sentinel}, class template \tcode{join_view::sentinel} - template - struct sentinel; // \expos + template + requires InputRange && is_object_v && + IndirectUnaryPredicate> + class take_while_view : public view_interface> { + template class sentinel; // \expos + + R base_; // \expos + @\placeholder{semiregular-box}@ pred_; @\itcorr[-1]@ // \expos - V base_ = V(); // \expos - all_view inner_ = // \expos, present only when \tcode{!is_reference_v} - all_view(); public: - join_view() = default; - constexpr explicit join_view(V base); + take_while_view() = default; + constexpr take_while_view(R base, Pred pred); - template - requires ViewableRange && Constructible> - constexpr explicit join_view(R&& r); + constexpr R base() const; + constexpr const Pred& pred() const; - constexpr auto begin() { - return iterator<@\placeholder{simple-view}@>{*this, ranges::begin(base_)}; - } + constexpr auto begin() requires (!@\placeholder{simple-view}@) + { return ranges::begin(base_); } - constexpr auto begin() const - requires InputRange && - is_reference_v>> { - return iterator{*this, ranges::begin(base_)}; - } + constexpr auto begin() const requires Range + { return ranges::begin(base_); } - constexpr auto end() { - if constexpr (ForwardRange && - is_reference_v && ForwardRange && - CommonRange && CommonRange) - return iterator<@\placeholder{simple-view}@>{*this, ranges::end(base_)}; - else - return sentinel<@\placeholder{simple-view}@>{*this}; - } + constexpr auto end() requires (!@\placeholder{simple-view}@) + { return sentinel(ranges::end(base_), addressof(*pred_)); } - constexpr auto end() const - requires InputRange && - is_reference_v>> { - if constexpr (ForwardRange && - is_reference_v>> && - ForwardRange>> && - CommonRange && - CommonRange>>) - return iterator{*this, ranges::end(base_)}; - else - return sentinel{*this}; - } + constexpr auto end() const requires Range + { return sentinel(ranges::end(base_), addressof(*pred_)); } }; - template - explicit join_view(R&&) -> join_view>; + template + take_while_view(R&&, Pred) -> take_while_view, Pred>; } \end{codeblock} -\indexlibrary{\idxcode{join_view}!\idxcode{join_view}}% \begin{itemdecl} -constexpr explicit join_view(V base); +constexpr take_while_view(R base, Pred pred); \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{std::move(base)}. +\effects +Initializes \tcode{base_} with \tcode{std::move(base)} and +\tcode{pred_} with \tcode{std::move(pred)}. \end{itemdescr} -\indexlibrary{\idxcode{join_view}!\idxcode{join_view}}% \begin{itemdecl} -template - requires ViewableRange && Constructible> -constexpr explicit join_view(R&& r); +constexpr R base() const; \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))}. +\effects +Equivalent to: \tcode{return base_;} \end{itemdescr} -\rSec3[range.join.iterator]{Class template \tcode{join_view::iterator}} +\begin{itemdecl} +constexpr const Pred& pred() const; +\end{itemdecl} +\begin{itemdescr} \pnum +\effects +Equivalent to: \tcode{return *pred_;} +\end{itemdescr} + +\rSec3[range.take.while.sentinel]{Class template \tcode{take_while_view::sentinel}} \begin{codeblock} namespace std::ranges { -template + template template - struct join_view::iterator { - private: - using Parent = // \expos - conditional_t; - using Base = conditional_t; // \expos - - static constexpr bool ref_is_glvalue = // \expos - is_reference_v>>; - - iterator_t outer_ = iterator_t(); // \expos - iterator_t>> inner_ = // \expos - iterator_t>>(); - Parent* parent_ = nullptr; // \expos + class take_while_view::sentinel { // \expos + using base_t = conditional_t; // \expos - constexpr void satisfy(); // \expos + sentinel_t end_ = sentinel_t(); // \expos + const Pred* pred_{}; // \expos public: - using iterator_concept = @\seebelow@; - using iterator_category = @\seebelow@; - using value_type = - iter_value_t>>>; - using difference_type = @\seebelow@; - - iterator() = default; - constexpr iterator(Parent& parent, iterator_t outer); - constexpr iterator(iterator i) - requires Const && - ConvertibleTo, iterator_t> && - ConvertibleTo, - iterator_t>>>; - - constexpr decltype(auto) operator*() const { return *inner_; } - - constexpr iterator_t operator->() const - requires @\placeholder{has-arrow}@>; - - constexpr iterator& operator++(); - constexpr void operator++(int); - constexpr iterator operator++(int) - requires ref_is_glvalue && ForwardRange && - ForwardRange>>; - - constexpr iterator& operator--() - requires ref_is_glvalue && BidirectionalRange && - BidirectionalRange>>; - - constexpr iterator operator--(int) - requires ref_is_glvalue && BidirectionalRange && - BidirectionalRange>>; - - friend constexpr bool operator==(const iterator& x, const iterator& y) - requires ref_is_glvalue && EqualityComparable> && - EqualityComparable>>>; + sentinel() = default; + constexpr explicit sentinel(sentinel_t end, const Pred* pred); + constexpr sentinel(sentinel s) + requires Const && ConvertibleTo, sentinel_t>; - friend constexpr decltype(auto) iter_move(const iterator& i) - noexcept(noexcept(ranges::iter_move(i.inner_))) { - return ranges::iter_move(i.inner_); - } + constexpr sentinel_t base() const { return end_; } - friend constexpr void iter_swap(const iterator& x, const iterator& y) - noexcept(noexcept(ranges::iter_swap(x.inner_, y.inner_))); + constexpr friend bool operator==(const iterator_t& x, const sentinel& y); }; } \end{codeblock} -\pnum -\tcode{iterator::iterator_concept} is defined as follows: -\begin{itemize} -\item If \tcode{ref_is_glvalue} is \tcode{true}, - \begin{itemize} - \item If \tcode{Base} and \tcode{iter_reference_t>} each model - \libconcept{BidirectionalRange}, then \tcode{iterator_concept} denotes - \tcode{bidirectional_iterator_tag}. - \item Otherwise, if \tcode{Base} and \tcode{iter_reference_t>} - each model \libconcept{ForwardRange}, then \tcode{iterator_concept} denotes - \tcode{forward_iterator_tag}. - \end{itemize} -\item Otherwise, \tcode{iterator_concept} denotes \tcode{input_iterator_tag}. -\end{itemize} - -\pnum -\tcode{iterator::iterator_category} is defined as follows: -\begin{itemize} -\item Let \placeholder{OUTERC} denote - \tcode{iterator_traits>::iterator_category}, and - let \placeholder{INNERC} denote - \tcode{iterator_traits>>>::iterator_cate\-gory}. -\item If \tcode{ref_is_glvalue} is \tcode{true}, - \begin{itemize} - \item If \placeholder{OUTERC} and \placeholder{INNERC} each model - \tcode{DerivedFrom}, \tcode{itera\-tor_category} - denotes \tcode{bidirectional_iterator_tag}. - \item Otherwise, if \placeholder{OUTERC} and \placeholder{INNERC} each model - \tcode{DerivedFrom}, \tcode{itera\-tor_category} - denotes \tcode{forward_iterator_tag}. - \end{itemize} -\item Otherwise, \tcode{iterator_category} denotes \tcode{input_iterator_tag}. -\end{itemize} - -\pnum -\tcode{iterator::difference_type} denotes the type: -\begin{codeblock} -common_type_t< - iter_difference_t>, - iter_difference_t>>>> -\end{codeblock} - -\pnum -\tcode{join_view} iterators use the \tcode{satisfy} function to skip over -empty inner ranges. - \begin{itemdecl} -constexpr void satisfy(); // \expos +constexpr explicit sentinel(sentinel_t end, const Pred* pred); \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: -\begin{codeblock} -auto update_inner = [this](iter_reference_t> x) -> decltype(auto) { - if constexpr (ref_is_glvalue) // \tcode{x} is a reference - return (x); // \tcode{(x)} is an lvalue - else - return (parent_->inner_ = view::all(x)); -}; - -for (; outer_ != ranges::end(parent_->base_); ++outer_) { - auto& inner = update_inner(*outer_); - inner_ = ranges::begin(inner); - if (inner_ != ranges::end(inner)) - return; -} -if constexpr (ref_is_glvalue) - inner_ = iterator_t>>(); -\end{codeblock} +\effects +Initializes \tcode{end_} with \tcode{end} and \tcode{pred_} with \tcode{pred}. \end{itemdescr} -\indexlibrary{\idxcode{iterator}!\idxcode{join_view::iterator}} \begin{itemdecl} -constexpr iterator(Parent& parent, iterator_t outer) +constexpr sentinel(sentinel s) + requires Const && ConvertibleTo, sentinel_t>; \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{outer_} with \tcode{outer} and -\tcode{parent_} with \tcode{addressof(parent)}; then calls \tcode{satisfy()}. +\effects +Initializes \tcode{end_} with \tcode{s.end_} and +\tcode{pred_} with \tcode{s.pred_}. \end{itemdescr} -\indexlibrary{\idxcode{iterator}!\idxcode{join_view::iterator}} \begin{itemdecl} -constexpr iterator(iterator i) - requires Const && - ConvertibleTo, iterator_t> && - ConvertibleTo, - iterator_t>>>; +constexpr friend bool operator==(const iterator_t& x, const sentinel& y); \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{outer_} with \tcode{std::move(i.outer_)}, -\tcode{inner_} with \tcode{std::move(i.inner_)}, and -\tcode{parent_} with \tcode{i.parent_}. +\effects +Equivalent to: +\tcode{return y.end_ == x || !invoke(*y.pred_, *x);} \end{itemdescr} -\indexlibrary{\idxcode{operator->}!\idxcode{join_view::iterator}} -\begin{itemdecl} -constexpr iterator_t operator->() const - requires @\placeholder{has-arrow}@>; -\end{itemdecl} +\rSec3[range.take.while.adaptor]{\tcode{view::take_while}} -\begin{itemdescr} +\indexlibrary{\idxcode{take_while}}% \pnum -\effects Equivalent to \tcode{return inner_;} -\end{itemdescr} +The name \tcode{view::take_while} denotes +a range adaptor object\iref{range.adaptor.object}. +For some subexpressions \tcode{E} and \tcode{F}, +the expression \tcode{view::take_while(E, F)} +is expression-equivalent to \tcode{take_while_view\{E, F\}}. -\indexlibrary{\idxcode{operator++}!\idxcode{join_view::iterator}} -\begin{itemdecl} -constexpr iterator& operator++(); -\end{itemdecl} +\rSec2[range.drop]{Drop view} + +\rSec3[range.drop.overview]{Overview} -\begin{itemdescr} \pnum -Let \tcode{\placeholder{inner-range}} be: -\begin{itemize} -\item If \tcode{ref_is_glvalue} is \tcode{true}, \tcode{*outer_}. -\item Otherwise, \tcode{parent_->inner_}. -\end{itemize} +\tcode{drop_view} produces a \tcode{View} +excluding the first $N$ elements from another \tcode{View}, or +an empty range if the adapted \tcode{View} contains fewer than $N$ elements. \pnum -\effects Equivalent to: +\begin{example} \begin{codeblock} -auto&& inner_rng = @\placeholder{inner-range}@; -if (++inner_ == ranges::end(inner_rng)) { - ++outer_; - satisfy(); +auto ints = view::iota(0) | view::take(10); +auto latter_half = drop_view{ints, 5}; +for (auto i : latter_half) { + cout << i << ' '; // prints \tcode{5 6 7 8 9} } -return *this; \end{codeblock} -\end{itemdescr} +\end{example} -\indexlibrary{\idxcode{operator++}!\idxcode{join_view::iterator}} -\begin{itemdecl} -constexpr void operator++(int); -\end{itemdecl} +\rSec3[range.drop.view]{Class template \tcode{drop_view}} -\begin{itemdescr} -\pnum -\effects Equivalent to: \tcode{++*this}. -\end{itemdescr} +\indexlibrary{\idxcode{drop_view}}% +\begin{codeblock} +namespace std::ranges { + template + class drop_view : public view_interface> { + public: + drop_view() = default; + constexpr drop_view(R base, range_difference_t count); -\indexlibrary{\idxcode{operator++}!\idxcode{join_view::iterator}} -\begin{itemdecl} -constexpr iterator operator++(int) - requires ref_is_glvalue && ForwardRange && - ForwardRange>>; -\end{itemdecl} + constexpr R base() const; -\begin{itemdescr} -\pnum -\effects Equivalent to: -\begin{codeblock} -auto tmp = *this; -++*this; -return tmp; + constexpr auto begin() + requires (!(@\placeholder{simple-view}@ && RandomAccessRange)); + constexpr auto begin() const + requires RandomAccessRange; + + constexpr auto end() + requires (!@\placeholder{simple-view}@) + { return ranges::end(base_); } + + constexpr auto end() const + requires Range + { return ranges::end(base_); } + + constexpr auto size() + requires SizedRange + { + const auto s = ranges::size(base_); + const auto c = static_cast(count_); + return s < c ? 0 : s - c; + } + + constexpr auto size() const + requires SizedRange + { + const auto s = ranges::size(base_); + const auto c = static_cast(count_); + return s < c ? 0 : s - c; + } + private: + R base_; // \expos + range_difference_t count_; // \expos + }; + + template + drop_view(R&&, range_difference_t) -> drop_view>; +} \end{codeblock} -\end{itemdescr} -\indexlibrary{\idxcode{operator\dcr}!\idxcode{join_view::iterator}} +\indexlibrary{\idxcode{drop_view}!constructor}% \begin{itemdecl} -constexpr iterator& operator--() - requires ref_is_glvalue && BidirectionalRange && - BidirectionalRange>>; +constexpr drop_view(R base, range_difference_t count); \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: -\begin{codeblock} -if (outer_ == ranges::end(parent_->base_)) - inner_ = ranges::end(*--outer_); -while (inner_ == ranges::begin(*outer_)) - inner_ = ranges::end(*--outer_); ---inner_; -return *this; -\end{codeblock} +\expects +\tcode{count >= 0} is \tcode{true}. + +\pnum +\effects +Initializes \tcode{base_} with \tcode{std::move(base)} and +\tcode{count_} with \tcode{count}. \end{itemdescr} -\indexlibrary{\idxcode{operator\dcr}!\idxcode{join_view::iterator}} +\indexlibrarymember{base}{drop_view}% \begin{itemdecl} -constexpr iterator operator--(int) - requires ref_is_glvalue && BidirectionalRange && - BidirectionalRange>>; +constexpr R base() const; \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: -\begin{codeblock} -auto tmp = *this; ---*this; -return tmp; -\end{codeblock} +\effects +Equivalent to: \tcode{return base_;} \end{itemdescr} -\indexlibrary{\idxcode{operator==}!\idxcode{join_view::iterator}} +\indexlibrarymember{begin}{drop_view}% \begin{itemdecl} -friend constexpr bool operator==(const iterator& x, const iterator& y) - requires ref_is_glvalue && EqualityComparable> && - EqualityComparable>>>; +constexpr auto begin() + requires (!(@\placeholder{simple-view}@ && RandomAccessRange)); +constexpr auto begin() const + requires RandomAccessRange; \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: -\tcode{return x.outer_ == y.outer_ \&\& x.inner_ == y.inner_;} +\returns +\tcode{ranges::next(ranges::begin(base_), count_, ranges::end(base_))}. + +\pnum +\remarks +In order to provide the amortized constant-time complexity requirement +by the \tcode{Range} concept, +the first overload caches the result within the \tcode{drop_view} +for use on subsequent calls. +\begin{note} +Without this, +applying a \tcode{reverse_view} over a \tcode{drop_view} +would have quadratic iteration complexity. +\end{note} \end{itemdescr} -\indexlibrary{\idxcode{iter_swap}!\idxcode{join_view::iterator}} -\begin{itemdecl} -friend constexpr void iter_swap(const iterator& x, const iterator& y) - noexcept(noexcept(ranges::iter_swap(x.inner_, y.inner_))); -\end{itemdecl} +\rSec3[range.drop.adaptor]{\tcode{view::drop}} -\begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return ranges::iter_swap(x.inner_, y.inner_);} -\end{itemdescr} +The name \tcode{view::drop} denotes +a range adaptor object\iref{range.adaptor.object}. +For some subexpressions \tcode{E} and \tcode{F}, +the expression \tcode{view::drop(E, F)} +is expression-equivalent to \tcode{drop_view\{E, F\}}. -\rSec3[range.join.sentinel]{Class template \tcode{join_view::sentinel}} +\rSec2[range.drop.while]{Drop while view} + +\rSec3[range.drop.while.overview]{Overview} + +\pnum +Given a unary predicate \tcode{pred} and a \tcode{View} \tcode{r}, +\tcode{drop_while_view} produces a \tcode{View} +of the range \range{ranges::find_if_not(r, pred)}{ranges::end(r)}. + +\pnum +\begin{example} +\begin{codeblock} +constexpr auto source = " \t \t \t hello there"; +auto is_invisible = [](const auto x) { return x == ' ' || x == '\t'; }; +auto skip_ws = drop_while_view{source, is_invisible}; +for (auto c : skip_ws) { + cout << c; // prints \tcode{hellothere} +} +\end{codeblock} +\end{example} +\rSec3[range.drop.while.view]{Class template \tcode{drop_while_view}} + +\indexlibrary{\idxcode{drop_while_view}}% \begin{codeblock} namespace std::ranges { - template - template - struct join_view::sentinel { - private: - using Parent = // \expos - conditional_t; - using Base = conditional_t; // \expos - sentinel_t end_ = sentinel_t(); // \expos + template + requires InputRange && is_object_v && + IndirectUnaryPredicate> + class drop_while_view : public view_interface> { public: - sentinel() = default; + drop_while_view() = default; + constexpr drop_while_view(R base, Pred pred); - constexpr explicit sentinel(Parent& parent); - constexpr sentinel(sentinel s) - requires Const && ConvertibleTo, sentinel_t>; + constexpr R base() const; + constexpr const Pred& pred() const; - friend constexpr bool operator==(const iterator& x, const sentinel& y); + constexpr auto begin(); + + constexpr auto end() + { return ranges::end(base_); } + + private: + R base_; // \expos + @\placeholder{semiregular-box}@ pred_; @\itcorr[-1]@ // \expos }; + + template + drop_while_view(R&&, Pred) -> drop_while_view, Pred>; } \end{codeblock} -\indexlibrary{\idxcode{sentinel}!\idxcode{join_view::sentinel}} +\indexlibrary{\idxcode{drop_while_view}!constructor}% \begin{itemdecl} -constexpr explicit sentinel(Parent& parent); +constexpr drop_while_view(R base, Pred pred); \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{end_} with \tcode{ranges::end(parent.base_)}. +\effects +Initializes \tcode{base_} with \tcode{std::move(base)} and +\tcode{pred_} with \tcode{std::move(pred)}. \end{itemdescr} -\indexlibrary{\idxcode{sentinel}!\idxcode{join_view::sentinel}} +\indexlibrarymember{base}{drop_while_view}% \begin{itemdecl} -constexpr sentinel(sentinel s) - requires Const && ConvertibleTo, sentinel_t>; +constexpr R base() const; \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{end_} with \tcode{std::move(s.end_)}. +\effects +Equivalent to: \tcode{return base_;} \end{itemdescr} -\indexlibrary{\idxcode{operator==}!\idxcode{join_view::sentinel}} +\indexlibrarymember{pred}{drop_while_view}% \begin{itemdecl} -friend constexpr bool operator==(const iterator& x, const sentinel& y); +constexpr const Pred& pred() const; \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return x.outer_ == y.end_;} +\effects +Equivalent to: \tcode{return *pred_;} \end{itemdescr} -\rSec3[range.join.adaptor]{\tcode{view::join}} +\indexlibrarymember{begin}{drop_while_view}% +\begin{itemdecl} +constexpr auto begin(); +\end{itemdecl} +\begin{itemdescr} \pnum -The name \tcode{view::join} denotes a -range adaptor object\iref{range.adaptor.object}. -For some subexpression \tcode{E}, the expression -\tcode{view::join(E)} is expression-equivalent to -\tcode{join_view\{E\}}. +\returns +\tcode{ranges::find_if_not(base_, cref(*pred_))}. -\rSec2[range.split]{Split view} +\pnum +\remarks +In order to provide the amortized constant-time complexity +required by the \tcode{Range} concept, +the first call caches the result within the \tcode{drop_while_view} +for use on subsequent calls. +\begin{note} +Without this, +applying a \tcode{reverse_view} over a \tcode{drop_while_view} +would have quadratic iteration complexity. +\end{note} +\end{itemdescr} -\rSec3[range.split.overview]{Overview} +\rSec3[range.drop.while.adaptor]{\tcode{view::drop_while}} \pnum -\tcode{split_view} takes a \libconcept{View} and a delimiter, and splits -the \libconcept{View} into subranges on the delimiter. The delimiter can be -a single element or a \libconcept{View} of elements. +The name \tcode{view::drop_while} +denotes a range adaptor object\iref{range.adaptor.object}. +For some subexpressions \tcode{E} and \tcode{F}, +the expression \tcode{view::drop_while(E, F)} +is expression-equivalent to \tcode{drop_while_view\{E, F\}}. + +\rSec2[range.join]{Join view} + +\rSec3[range.join.overview]{Overview} + +\pnum +\tcode{join_view} flattens a \libconcept{View} of ranges into a +\libconcept{View}. \pnum \begin{example} \begin{codeblock} -string str{"the quick brown fox"}; -split_view sentence{str, ' '}; -for (auto word : sentence) { - for (char ch : word) - cout << ch; - cout << '*'; -} -// The above prints: the*quick*brown*fox* +vector ss{"hello", " ", "world", "!"}; +join_view greeting{ss}; +for (char ch : greeting) + cout << ch; // prints: \tcode{hello world!} \end{codeblock} \end{example} -\rSec3[range.split.view]{Class template \tcode{split_view}} +\rSec3[range.join.view]{Class template \tcode{join_view}} \begin{codeblock} namespace std::ranges { - template struct @\placeholdernc{require-constant}@; // \expos - - template - concept @\placeholdernc{tiny-range}@ = // \expos - SizedRange && - requires { typename @\placeholdernc{require-constant}@::size()>; } && - (remove_reference_t::size() <= 1); - - template - requires View && View && - IndirectlyComparable, iterator_t, ranges::equal_to> && - (ForwardRange || @\placeholdernc{tiny-range}@) - class split_view : public view_interface> { + template + requires View && InputRange> && + (is_reference_v> || + View>) + class join_view : public view_interface> { private: - V base_ = V(); // \expos - Pattern pattern_ = Pattern(); // \expos - iterator_t current_ = iterator_t(); // \expos, present only if \tcode{!ForwardRange} - // \ref{range.split.outer}, class template \tcode{split_view::outer_iterator} - template struct outer_iterator; // \expos - // \ref{range.split.inner}, class template \tcode{split_view::inner_iterator} - template struct inner_iterator; // \expos - public: - split_view() = default; - constexpr split_view(V base, Pattern pattern); + using InnerRng = // \expos + range_reference_t; + // \ref{range.join.iterator}, class template \tcode{join_view::iterator} + template + struct iterator; // \expos + // \ref{range.join.sentinel}, class template \tcode{join_view::sentinel} + template + struct sentinel; // \expos - template - requires Constructible> && - Constructible> - constexpr split_view(R&& r, P&& p); + V base_ = V(); // \expos + all_view inner_ = // \expos, present only when \tcode{!is_reference_v} + all_view(); + public: + join_view() = default; + constexpr explicit join_view(V base); template - requires Constructible> && - Constructible>>> - constexpr split_view(R&& r, iter_value_t> e); + requires ViewableRange && Constructible> + constexpr explicit join_view(R&& r); constexpr auto begin() { - if constexpr (ForwardRange) - return outer_iterator<@\placeholder{simple-view}@>{*this, ranges::begin(base_)}; - else { - current_ = ranges::begin(base_); - return outer_iterator{*this}; - } + return iterator<@\placeholder{simple-view}@>{*this, ranges::begin(base_)}; } - constexpr auto begin() const requires ForwardRange && ForwardRange { - return outer_iterator{*this, ranges::begin(base_)}; + constexpr auto begin() const + requires InputRange && + is_reference_v> { + return iterator{*this, ranges::begin(base_)}; } - constexpr auto end() requires ForwardRange && CommonRange { - return outer_iterator<@\placeholder{simple-view}@>{*this, ranges::end(base_)}; + constexpr auto end() { + if constexpr (ForwardRange && + is_reference_v && ForwardRange && + CommonRange && CommonRange) + return iterator<@\placeholder{simple-view}@>{*this, ranges::end(base_)}; + else + return sentinel<@\placeholder{simple-view}@>{*this}; } - constexpr auto end() const { - if constexpr (ForwardRange && ForwardRange && CommonRange) - return outer_iterator{*this, ranges::end(base_)}; + constexpr auto end() const + requires InputRange && + is_reference_v> { + if constexpr (ForwardRange && + is_reference_v> && + ForwardRange> && + CommonRange && + CommonRange>) + return iterator{*this, ranges::end(base_)}; else - return default_sentinel; + return sentinel{*this}; } }; - template - split_view(R&&, P&&) -> split_view, all_view

>; - - template - split_view(R&&, iter_value_t>) - -> split_view, single_view>>>; + template + explicit join_view(R&&) -> join_view>; } \end{codeblock} -\indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% +\indexlibrary{\idxcode{join_view}!\idxcode{join_view}}% \begin{itemdecl} -constexpr split_view(V base, Pattern pattern); +constexpr explicit join_view(V base); \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{std::move(base)}, and -\tcode{pattern_} with \tcode{std::move(pattern)}. -\end{itemdescr} - -\indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% -\begin{itemdecl} -template - requires Constructible> && - Constructible> -constexpr split_view(R&& r, P&& p); -\end{itemdecl} - -\begin{itemdescr} -\pnum -\effects -Initializes \tcode{base_} with \tcode{view::all(std::forward(r))} and -\tcode{pattern_} with \tcode{view::all(std\brk{}::forward

(p))}. +\effects Initializes \tcode{base_} with \tcode{std::move(base)}. \end{itemdescr} -\indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% +\indexlibrary{\idxcode{join_view}!\idxcode{join_view}}% \begin{itemdecl} template - requires Constructible> && - Constructible>>> -constexpr split_view(R&& r, iter_value_t> e); + requires ViewableRange && Constructible> +constexpr explicit join_view(R&& r); \end{itemdecl} \begin{itemdescr} \pnum -\effects -Initializes \tcode{base_} with \tcode{view::all(std::forward(r))} and -\tcode{pattern_} with \tcode{single_view\{\brk{}std::move(e)\}}. +\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))}. \end{itemdescr} -\rSec3[range.split.outer]{Class template \tcode{split_view::outer_iterator}} +\rSec3[range.join.iterator]{Class template \tcode{join_view::iterator}} +\pnum \begin{codeblock} namespace std::ranges { - template +template template - struct split_view::outer_iterator { + struct join_view::iterator { private: - using Parent = // \expos - conditional_t; - using Base = // \expos - conditional_t; - Parent* parent_ = nullptr; // \expos - iterator_t current_ = // \expos, present only if \tcode{V} models \libconcept{ForwardRange} - iterator_t(); + using Parent = // \expos + conditional_t; + using Base = conditional_t; // \expos + + static constexpr bool ref_is_glvalue = // \expos + is_reference_v>; + + iterator_t outer_ = iterator_t(); // \expos + iterator_t> inner_ = // \expos + iterator_t>(); + Parent* parent_ = nullptr; // \expos + constexpr void satisfy(); // \expos public: - using iterator_concept = - conditional_t, forward_iterator_tag, input_iterator_tag>; - using iterator_category = input_iterator_tag; - // \ref{range.split.outer.value}, class \tcode{split_view::outer_iterator::value_type} - struct value_type; - using difference_type = iter_difference_t>; + using iterator_concept = @\seebelow@; + using iterator_category = @\seebelow@; + using value_type = range_value_t>; + using difference_type = @\seebelow@; - outer_iterator() = default; - constexpr explicit outer_iterator(Parent& parent) - requires (!ForwardRange); - constexpr outer_iterator(Parent& parent, iterator_t current) - requires ForwardRange; - constexpr outer_iterator(outer_iterator i) - requires Const && ConvertibleTo, iterator_t>; + iterator() = default; + constexpr iterator(Parent& parent, iterator_t outer); + constexpr iterator(iterator i) + requires Const && + ConvertibleTo, iterator_t> && + ConvertibleTo, + iterator_t>>; - constexpr value_type operator*() const; + constexpr decltype(auto) operator*() const { return *inner_; } - constexpr outer_iterator& operator++(); - constexpr decltype(auto) operator++(int) { - if constexpr (ForwardRange) { - auto tmp = *this; - ++*this; - return tmp; - } else - ++*this; - } + constexpr iterator_t operator->() const + requires @\placeholder{has-arrow}@>; - friend constexpr bool operator==(const outer_iterator& x, const outer_iterator& y) - requires ForwardRange; + constexpr iterator& operator++(); + constexpr void operator++(int); + constexpr iterator operator++(int) + requires ref_is_glvalue && ForwardRange && + ForwardRange>; - friend constexpr bool operator==(const outer_iterator& x, default_sentinel_t); + constexpr iterator& operator--() + requires ref_is_glvalue && BidirectionalRange && + BidirectionalRange>; + + constexpr iterator operator--(int) + requires ref_is_glvalue && BidirectionalRange && + BidirectionalRange>; + + friend constexpr bool operator==(const iterator& x, const iterator& y) + requires ref_is_glvalue && EqualityComparable> && + EqualityComparable>>; + + friend constexpr decltype(auto) iter_move(const iterator& i) + noexcept(noexcept(ranges::iter_move(i.inner_))) { + return ranges::iter_move(i.inner_); + } + + friend constexpr void iter_swap(const iterator& x, const iterator& y) + noexcept(noexcept(ranges::iter_swap(x.inner_, y.inner_))); }; } \end{codeblock} \pnum -Many of the following specifications refer to the notional member -\tcode{\placeholder{current}} of \tcode{outer_iterator}. -\tcode{\placeholder{current}} is equivalent to \tcode{current_} if \tcode{V} -models \libconcept{ForwardRange}, and \tcode{parent_->current_} otherwise. +\tcode{iterator::iterator_concept} is defined as follows: +\begin{itemize} +\item If \tcode{ref_is_glvalue} is \tcode{true}, + \begin{itemize} + \item If \tcode{Base} and \tcode{range_reference_t} each model + \libconcept{BidirectionalRange}, then \tcode{iterator_concept} denotes + \tcode{bidirectional_iterator_tag}. + \item Otherwise, if \tcode{Base} and \tcode{range_reference_t} + each model \libconcept{ForwardRange}, then \tcode{iterator_concept} denotes + \tcode{forward_iterator_tag}. + \end{itemize} +\item Otherwise, \tcode{iterator_concept} denotes \tcode{input_iterator_tag}. +\end{itemize} + +\pnum +\tcode{iterator::iterator_category} is defined as follows: +\begin{itemize} +\item Let \placeholder{OUTERC} denote + \tcode{iterator_traits>::iterator_category}, and + let \placeholder{INNERC} denote + \tcode{iterator_traits>>::iterator_cate\-gory}. +\item If \tcode{ref_is_glvalue} is \tcode{true}, + \begin{itemize} + \item If \placeholder{OUTERC} and \placeholder{INNERC} each model + \tcode{DerivedFrom}, \tcode{itera\-tor_category} + denotes \tcode{bidirectional_iterator_tag}. + \item Otherwise, if \placeholder{OUTERC} and \placeholder{INNERC} each model + \tcode{DerivedFrom}, \tcode{itera\-tor_category} + denotes \tcode{forward_iterator_tag}. + \end{itemize} +\item Otherwise, \tcode{iterator_category} denotes \tcode{input_iterator_tag}. +\end{itemize} + +\pnum +\tcode{iterator::difference_type} denotes the type: +\begin{codeblock} +common_type_t< + range_difference_t, + range_difference_t>> +\end{codeblock} + +\pnum +\tcode{join_view} iterators use the \tcode{satisfy} function to skip over +empty inner ranges. -\indexlibrary{\idxcode{outer_iterator}!\idxcode{split_view::outer_iterator}}% \begin{itemdecl} -constexpr explicit outer_iterator(Parent& parent) - requires (!ForwardRange); +constexpr void satisfy(); // \expos \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{parent_} with \tcode{addressof(parent)}. +\effects Equivalent to: +\begin{codeblock} +auto update_inner = [this](range_reference_t x) -> decltype(auto) { + if constexpr (ref_is_glvalue) // \tcode{x} is a reference + return (x); // \tcode{(x)} is an lvalue + else + return (parent_->inner_ = view::all(x)); +}; + +for (; outer_ != ranges::end(parent_->base_); ++outer_) { + auto& inner = update_inner(*outer_); + inner_ = ranges::begin(inner); + if (inner_ != ranges::end(inner)) + return; +} +if constexpr (ref_is_glvalue) + inner_ = iterator_t>(); +\end{codeblock} \end{itemdescr} -\indexlibrary{\idxcode{outer_iterator}!\idxcode{split_view::outer_iterator}}% +\indexlibrary{\idxcode{iterator}!\idxcode{join_view::iterator}} \begin{itemdecl} -constexpr outer_iterator(Parent& parent, iterator_t current) - requires ForwardRange; +constexpr iterator(Parent& parent, iterator_t outer) \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{parent_} with \tcode{addressof(parent)} -and \tcode{current_} with \tcode{current}. +\effects Initializes \tcode{outer_} with \tcode{outer} and +\tcode{parent_} with \tcode{addressof(parent)}; then calls \tcode{satisfy()}. \end{itemdescr} -\indexlibrary{\idxcode{outer_iterator}!\idxcode{split_view::outer_iterator}}% +\indexlibrary{\idxcode{iterator}!\idxcode{join_view::iterator}} \begin{itemdecl} -constexpr outer_iterator(outer_iterator i) - requires Const && ConvertibleTo, iterator_t>; +constexpr iterator(iterator i) + requires Const && + ConvertibleTo, iterator_t> && + ConvertibleTo, + iterator_t>>; \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{parent_} with \tcode{i.parent_} and -\tcode{current_} with \tcode{std::move(i.current_)}. +\effects Initializes \tcode{outer_} with \tcode{std::move(i.outer_)}, +\tcode{inner_} with \tcode{std::move(i.inner_)}, and +\tcode{parent_} with \tcode{i.parent_}. \end{itemdescr} -\indexlibrary{\idxcode{operator*}!\idxcode{split_view::outer_iterator}}% +\indexlibrary{\idxcode{operator->}!\idxcode{join_view::iterator}} \begin{itemdecl} -constexpr value_type operator*() const; +constexpr iterator_t operator->() const + requires @\placeholder{has-arrow}@>; \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return value_type\{*this\};} +\effects Equivalent to \tcode{return inner_;} \end{itemdescr} -\indexlibrary{\idxcode{operator++}!\idxcode{split_view::outer_iterator}}% +\indexlibrary{\idxcode{operator++}!\idxcode{join_view::iterator}} \begin{itemdecl} -constexpr outer_iterator& operator++(); +constexpr iterator& operator++(); \end{itemdecl} \begin{itemdescr} +\pnum +Let \tcode{\placeholder{inner-range}} be: +\begin{itemize} +\item If \tcode{ref_is_glvalue} is \tcode{true}, \tcode{*outer_}. +\item Otherwise, \tcode{parent_->inner_}. +\end{itemize} + \pnum \effects Equivalent to: \begin{codeblock} -const auto end = ranges::end(parent_->base_); -if (@\placeholder{current}@ == end) return *this; -const auto [pbegin, pend] = subrange{parent_->pattern_}; -if (pbegin == pend) ++@\placeholder{current}@; -else { - do { - const auto [b, p] = ranges::mismatch(@\placeholdernc{current}@, end, pbegin, pend); - if (p == pend) { - @\placeholder{current}@ = b; // The pattern matched; skip it - break; - } - } while (++@\placeholder{current}@ != end); +auto&& inner_rng = @\placeholder{inner-range}@; +if (++inner_ == ranges::end(inner_rng)) { + ++outer_; + satisfy(); } return *this; \end{codeblock} \end{itemdescr} -\indexlibrary{\idxcode{operator==}!\idxcode{split_view::outer_iterator}}% +\indexlibrary{\idxcode{operator++}!\idxcode{join_view::iterator}} \begin{itemdecl} -friend constexpr bool operator==(const outer_iterator& x, const outer_iterator& y) - requires ForwardRange; +constexpr void operator++(int); \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return x.current_ == y.current_;} +\effects Equivalent to: \tcode{++*this}. \end{itemdescr} -\indexlibrary{\idxcode{operator==}!\idxcode{split_view::outer_iterator}}% +\indexlibrary{\idxcode{operator++}!\idxcode{join_view::iterator}} \begin{itemdecl} -friend constexpr bool operator==(const outer_iterator& x, default_sentinel_t); +constexpr iterator operator++(int) + requires ref_is_glvalue && ForwardRange && + ForwardRange>; \end{itemdecl} \begin{itemdescr} \pnum -\effects -Equivalent to: \tcode{return x.\placeholder{current} == ranges::end(x.parent_->base_);} +\effects Equivalent to: +\begin{codeblock} +auto tmp = *this; +++*this; +return tmp; +\end{codeblock} \end{itemdescr} -\rSec3[range.split.outer.value]{Class \tcode{split_view::outer_iterator::value_type}} +\indexlibrary{\idxcode{operator\dcr}!\idxcode{join_view::iterator}} +\begin{itemdecl} +constexpr iterator& operator--() + requires ref_is_glvalue && BidirectionalRange && + BidirectionalRange>; +\end{itemdecl} +\begin{itemdescr} +\pnum +\effects Equivalent to: \begin{codeblock} -namespace std::ranges { - template +if (outer_ == ranges::end(parent_->base_)) + inner_ = ranges::end(*--outer_); +while (inner_ == ranges::begin(*outer_)) + inner_ = ranges::end(*--outer_); +--inner_; +return *this; +\end{codeblock} +\end{itemdescr} + +\indexlibrary{\idxcode{operator\dcr}!\idxcode{join_view::iterator}} +\begin{itemdecl} +constexpr iterator operator--(int) + requires ref_is_glvalue && BidirectionalRange && + BidirectionalRange>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +auto tmp = *this; +--*this; +return tmp; +\end{codeblock} +\end{itemdescr} + +\indexlibrary{\idxcode{operator==}!\idxcode{join_view::iterator}} +\begin{itemdecl} +friend constexpr bool operator==(const iterator& x, const iterator& y) + requires ref_is_glvalue && EqualityComparable> && + EqualityComparable>>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\tcode{return x.outer_ == y.outer_ \&\& x.inner_ == y.inner_;} +\end{itemdescr} + +\indexlibrary{\idxcode{iter_swap}!\idxcode{join_view::iterator}} +\begin{itemdecl} +friend constexpr void iter_swap(const iterator& x, const iterator& y) + noexcept(noexcept(ranges::iter_swap(x.inner_, y.inner_))); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return ranges::iter_swap(x.inner_, y.inner_);} +\end{itemdescr} + +\rSec3[range.join.sentinel]{Class template \tcode{join_view::sentinel}} + +\begin{codeblock} +namespace std::ranges { + template template - struct split_view::outer_iterator::value_type { + struct join_view::sentinel { private: - outer_iterator i_ = outer_iterator(); // \expos + using Parent = // \expos + conditional_t; + using Base = conditional_t; // \expos + sentinel_t end_ = sentinel_t(); // \expos public: - value_type() = default; - constexpr explicit value_type(outer_iterator i); + sentinel() = default; - constexpr inner_iterator begin() const; - constexpr default_sentinel_t end() const; + constexpr explicit sentinel(Parent& parent); + constexpr sentinel(sentinel s) + requires Const && ConvertibleTo, sentinel_t>; + + friend constexpr bool operator==(const iterator& x, const sentinel& y); + }; +} +\end{codeblock} + +\indexlibrary{\idxcode{sentinel}!\idxcode{join_view::sentinel}} +\begin{itemdecl} +constexpr explicit sentinel(Parent& parent); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{end_} with \tcode{ranges::end(parent.base_)}. +\end{itemdescr} + +\indexlibrary{\idxcode{sentinel}!\idxcode{join_view::sentinel}} +\begin{itemdecl} +constexpr sentinel(sentinel s) + requires Const && ConvertibleTo, sentinel_t>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{end_} with \tcode{std::move(s.end_)}. +\end{itemdescr} + +\indexlibrary{\idxcode{operator==}!\idxcode{join_view::sentinel}} +\begin{itemdecl} +friend constexpr bool operator==(const iterator& x, const sentinel& y); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return x.outer_ == y.end_;} +\end{itemdescr} + +\rSec3[range.join.adaptor]{\tcode{view::join}} + +\pnum +The name \tcode{view::join} denotes a +range adaptor object\iref{range.adaptor.object}. +For some subexpression \tcode{E}, the expression +\tcode{view::join(E)} is expression-equivalent to +\tcode{join_view\{E\}}. + +\rSec2[range.split]{Split view} + +\rSec3[range.split.overview]{Overview} + +\pnum +\tcode{split_view} takes a \libconcept{View} and a delimiter, and splits +the \libconcept{View} into subranges on the delimiter. The delimiter can be +a single element or a \libconcept{View} of elements. + +\pnum +\begin{example} +\begin{codeblock} +string str{"the quick brown fox"}; +split_view sentence{str, ' '}; +for (auto word : sentence) { + for (char ch : word) + cout << ch; + cout << '*'; +} +// The above prints: the*quick*brown*fox* +\end{codeblock} +\end{example} + +\rSec3[range.split.view]{Class template \tcode{split_view}} + +\begin{codeblock} +namespace std::ranges { + template struct @\placeholdernc{require-constant}@; // \expos + + template + concept @\placeholdernc{tiny-range}@ = // \expos + SizedRange && + requires { typename @\placeholdernc{require-constant}@::size()>; } && + (remove_reference_t::size() <= 1); + + template + requires View && View && + IndirectlyComparable, iterator_t, ranges::equal_to> && + (ForwardRange || @\placeholdernc{tiny-range}@) + class split_view : public view_interface> { + private: + V base_ = V(); // \expos + Pattern pattern_ = Pattern(); // \expos + iterator_t current_ = iterator_t(); // \expos, present only if \tcode{!ForwardRange} + // \ref{range.split.outer}, class template \tcode{split_view::outer_iterator} + template struct outer_iterator; // \expos + // \ref{range.split.inner}, class template \tcode{split_view::inner_iterator} + template struct inner_iterator; // \expos + public: + split_view() = default; + constexpr split_view(V base, Pattern pattern); + + template + requires Constructible> && + Constructible> + constexpr split_view(R&& r, P&& p); + + template + requires Constructible> && + Constructible>> + constexpr split_view(R&& r, range_value_t e); + + constexpr auto begin() { + if constexpr (ForwardRange) + return outer_iterator<@\placeholder{simple-view}@>{*this, ranges::begin(base_)}; + else { + current_ = ranges::begin(base_); + return outer_iterator{*this}; + } + } + + constexpr auto begin() const requires ForwardRange && ForwardRange { + return outer_iterator{*this, ranges::begin(base_)}; + } + + constexpr auto end() requires ForwardRange && CommonRange { + return outer_iterator<@\placeholder{simple-view}@>{*this, ranges::end(base_)}; + } + + constexpr auto end() const { + if constexpr (ForwardRange && ForwardRange && CommonRange) + return outer_iterator{*this, ranges::end(base_)}; + else + return default_sentinel; + } + }; + + template + split_view(R&&, P&&) -> split_view, all_view

>; + + template + split_view(R&&, range_value_t) + -> split_view, single_view>>; +} +\end{codeblock} + +\indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% +\begin{itemdecl} +constexpr split_view(V base, Pattern pattern); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{base_} with \tcode{std::move(base)}, and +\tcode{pattern_} with \tcode{std::move(pattern)}. +\end{itemdescr} + +\indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% +\begin{itemdecl} +template + requires Constructible> && + Constructible> +constexpr split_view(R&& r, P&& p); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes \tcode{base_} with \tcode{view::all(std::forward(r))} and +\tcode{pattern_} with \tcode{view::all(std\brk{}::forward

(p))}. +\end{itemdescr} + +\indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% +\begin{itemdecl} +template + requires Constructible> && + Constructible>> +constexpr split_view(R&& r, range_value_t e); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes \tcode{base_} with \tcode{view::all(std::forward(r))} and +\tcode{pattern_} with \tcode{single_view\{\brk{}std::move(e)\}}. +\end{itemdescr} + +\rSec3[range.split.outer]{Class template \tcode{split_view::outer_iterator}} + +\begin{codeblock} +namespace std::ranges { + template + template + struct split_view::outer_iterator { + private: + using Parent = // \expos + conditional_t; + using Base = // \expos + conditional_t; + Parent* parent_ = nullptr; // \expos + iterator_t current_ = // \expos, present only if \tcode{V} models \libconcept{ForwardRange} + iterator_t(); + + public: + using iterator_concept = + conditional_t, forward_iterator_tag, input_iterator_tag>; + using iterator_category = input_iterator_tag; + // \ref{range.split.outer.value}, class \tcode{split_view::outer_iterator::value_type} + struct value_type; + using difference_type = range_difference_t; + + outer_iterator() = default; + constexpr explicit outer_iterator(Parent& parent) + requires (!ForwardRange); + constexpr outer_iterator(Parent& parent, iterator_t current) + requires ForwardRange; + constexpr outer_iterator(outer_iterator i) + requires Const && ConvertibleTo, iterator_t>; + + constexpr value_type operator*() const; + + constexpr outer_iterator& operator++(); + constexpr decltype(auto) operator++(int) { + if constexpr (ForwardRange) { + auto tmp = *this; + ++*this; + return tmp; + } else + ++*this; + } + + friend constexpr bool operator==(const outer_iterator& x, const outer_iterator& y) + requires ForwardRange; + + friend constexpr bool operator==(const outer_iterator& x, default_sentinel_t); + }; +} +\end{codeblock} + +\pnum +Many of the following specifications refer to the notional member +\tcode{\placeholder{current}} of \tcode{outer_iterator}. +\tcode{\placeholder{current}} is equivalent to \tcode{current_} if \tcode{V} +models \libconcept{ForwardRange}, and \tcode{parent_->current_} otherwise. + +\indexlibrary{\idxcode{outer_iterator}!\idxcode{split_view::outer_iterator}}% +\begin{itemdecl} +constexpr explicit outer_iterator(Parent& parent) + requires (!ForwardRange); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{parent_} with \tcode{addressof(parent)}. +\end{itemdescr} + +\indexlibrary{\idxcode{outer_iterator}!\idxcode{split_view::outer_iterator}}% +\begin{itemdecl} +constexpr outer_iterator(Parent& parent, iterator_t current) + requires ForwardRange; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{parent_} with \tcode{addressof(parent)} +and \tcode{current_} with \tcode{current}. +\end{itemdescr} + +\indexlibrary{\idxcode{outer_iterator}!\idxcode{split_view::outer_iterator}}% +\begin{itemdecl} +constexpr outer_iterator(outer_iterator i) + requires Const && ConvertibleTo, iterator_t>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{parent_} with \tcode{i.parent_} and +\tcode{current_} with \tcode{std::move(i.current_)}. +\end{itemdescr} + +\indexlibrary{\idxcode{operator*}!\idxcode{split_view::outer_iterator}}% +\begin{itemdecl} +constexpr value_type operator*() const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return value_type\{*this\};} +\end{itemdescr} + +\indexlibrary{\idxcode{operator++}!\idxcode{split_view::outer_iterator}}% +\begin{itemdecl} +constexpr outer_iterator& operator++(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +const auto end = ranges::end(parent_->base_); +if (@\placeholder{current}@ == end) return *this; +const auto [pbegin, pend] = subrange{parent_->pattern_}; +if (pbegin == pend) ++@\placeholder{current}@; +else { + do { + const auto [b, p] = ranges::mismatch(@\placeholdernc{current}@, end, pbegin, pend); + if (p == pend) { + @\placeholder{current}@ = b; // The pattern matched; skip it + break; + } + } while (++@\placeholder{current}@ != end); +} +return *this; +\end{codeblock} +\end{itemdescr} + +\indexlibrary{\idxcode{operator==}!\idxcode{split_view::outer_iterator}}% +\begin{itemdecl} +friend constexpr bool operator==(const outer_iterator& x, const outer_iterator& y) + requires ForwardRange; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return x.current_ == y.current_;} +\end{itemdescr} + +\indexlibrary{\idxcode{operator==}!\idxcode{split_view::outer_iterator}}% +\begin{itemdecl} +friend constexpr bool operator==(const outer_iterator& x, default_sentinel_t); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return x.\placeholder{current} == ranges::end(x.parent_->base_);} +\end{itemdescr} + +\rSec3[range.split.outer.value]{Class \tcode{split_view::outer_iterator::value_type}} + +\begin{codeblock} +namespace std::ranges { + template + template + struct split_view::outer_iterator::value_type { + private: + outer_iterator i_ = outer_iterator(); // \expos + public: + value_type() = default; + constexpr explicit value_type(outer_iterator i); + + constexpr inner_iterator begin() const; + constexpr default_sentinel_t end() const; + }; +} +\end{codeblock} + +\indexlibrary{\idxcode{value_type}!\idxcode{split_view::outer_iterator::value_type}}% +\begin{itemdecl} +constexpr explicit value_type(outer_iterator i); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{i_} with \tcode{i}. +\end{itemdescr} + +\indexlibrary{\idxcode{begin}!\idxcode{split_view::outer_iterator::value_type}}% +\begin{itemdecl} +constexpr inner_iterator begin() const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return inner_iterator\{i_\};} +\end{itemdescr} + +\indexlibrary{\idxcode{end}!\idxcode{split_view::outer_iterator::value_type}}% +\begin{itemdecl} +constexpr default_sentinel_t end() const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return default_sentinel;} +\end{itemdescr} + +\rSec3[range.split.inner]{Class template \tcode{split_view::inner_iterator}} + +\begin{codeblock} +namespace std::ranges { + template + template + struct split_view::inner_iterator { + private: + using Base = + conditional_t; // \expos + outer_iterator i_ = outer_iterator(); // \expos + bool incremented_ = false; // \expos + public: + using iterator_concept = typename outer_iterator::iterator_concept; + using iterator_category = @\seebelow@; + using value_type = range_value_t; + using difference_type = range_difference_t; + + inner_iterator() = default; + constexpr explicit inner_iterator(outer_iterator i); + + constexpr decltype(auto) operator*() const { return *i_.@\placeholder{current}@; } + + constexpr inner_iterator& operator++(); + constexpr decltype(auto) operator++(int) { + if constexpr (ForwardRange) { + auto tmp = *this; + ++*this; + return tmp; + } else + ++*this; + } + + friend constexpr bool operator==(const inner_iterator& x, const inner_iterator& y) + requires ForwardRange; + + friend constexpr bool operator==(const inner_iterator& x, default_sentinel_t); + + friend constexpr decltype(auto) iter_move(const inner_iterator& i) + noexcept(noexcept(ranges::iter_move(i.i_.@\placeholdernc{current}@))) { + return ranges::iter_move(i.i_.@\placeholdernc{current}@); + } + + friend constexpr void iter_swap(const inner_iterator& x, const inner_iterator& y) + noexcept(noexcept(ranges::iter_swap(x.i_.@\placeholdernc{current}, y.i_.\placeholdernc{current}@))) + requires IndirectlySwappable>; + }; +} +\end{codeblock} + +\pnum +The \grammarterm{typedef-name} \tcode{iterator_category} denotes +\tcode{forward_iterator_tag} if +\tcode{iterator_traits>::iterator_category} models +\tcode{DerivedFrom}, and \tcode{input_iterator_tag} +otherwise. + +\indexlibrary{\idxcode{inner_iterator}!\idxcode{split_view::inner_iterator}}% +\begin{itemdecl} +constexpr explicit inner_iterator(outer_iterator i); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{i_} with \tcode{i}. +\end{itemdescr} + +\indexlibrary{\idxcode{operator++}!\idxcode{split_view::inner_iterator}}% +\begin{itemdecl} +constexpr inner_iterator& operator++() const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +incremented_ = true; +if constexpr (!ForwardRange) { + if constexpr (Pattern::size() == 0) { + return *this; + } +} +++i_.@\placeholder{current}@; +return *this; +\end{codeblock} +\end{itemdescr} + +\indexlibrary{\idxcode{operator==}!\idxcode{split_view::inner_iterator}}% +\begin{itemdecl} +friend constexpr bool operator==(const inner_iterator& x, const inner_iterator& y) + requires ForwardRange; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return x.i_.current_ == y.i_.current_;} +\end{itemdescr} + +\indexlibrary{\idxcode{operator==}!\idxcode{split_view::inner_iterator}}% +\begin{itemdecl} +friend constexpr bool operator==(const inner_iterator& x, default_sentinel_t); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +auto cur = x.i_.@\placeholder{current}@; +auto end = ranges::end(x.i_.parent_->base_); +if (cur == end) return true; +auto [pcur, pend] = subrange{x.i_.parent_->pattern_}; +if (pcur == pend) return x.incremented_; +do { + if (*cur != *pcur) return false; + if (++pcur == pend) return true; +} while (++cur != end); +return false; +\end{codeblock} +\end{itemdescr} + +\indexlibrary{\idxcode{iter_swap}!\idxcode{split_view::inner_iterator}}% +\begin{itemdecl} +friend constexpr void iter_swap(const inner_iterator& x, const inner_iterator& y) + noexcept(noexcept(ranges::iter_swap(x.i_.@\placeholdernc{current}, y.i_.\placeholdernc{current}@))) + requires IndirectlySwappable>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to +\tcode{ranges::iter_swap(x.i_.\placeholdernc{current}, y.i_.\placeholdernc{current})}. +\end{itemdescr} + +\rSec3[range.split.adaptor]{\tcode{view::split}} + +\pnum +The name \tcode{view::split} denotes a +range adaptor object\iref{range.adaptor.object}. +For some subexpressions \tcode{E} and \tcode{F}, +the expression \tcode{view::split(E, F)} is expression-equivalent to +\tcode{split_view\{E, F\}}. + + +\rSec2[range.counted]{Counted view} + +\pnum +A counted view presents a \libconcept{View} of the elements +of the counted range\iref{iterator.requirements.general} \range{i}{n} +for some iterator \tcode{i} and non-negative integer \tcode{n}. + +\pnum +The name \tcode{view::counted} denotes a +customization point object\iref{customization.point.object}. +Let \tcode{E} and \tcode{F} be expressions, +and let \tcode{T} be \tcode{decay_t}. +Then the expression \tcode{view::counted(E, F)} is expression-equivalent to: + +\begin{itemize} +\item If \tcode{T} models \libconcept{Iterator} and + \tcode{decltype((F))} models \libconcept{ConvertibleTo>}, + \begin{itemize} + \item \tcode{subrange\{E, E + static_cast>(F)\}} + if \tcode{T} models \libconcept{RandomAccessItera\-tor}. + \item Otherwise, + \tcode{subrange\{counted_iterator\{E, F\}, default_sentinel\}}. +\end{itemize} + +\item Otherwise, \tcode{view::counted(E, F)} is ill-formed. + \begin{note} + This case can result in substitution failure when \tcode{view::counted(E, F)} + appears in the immediate context of a template instantiation. + \end{note} +\end{itemize} + +\rSec2[range.common]{Common view} + +\rSec3[range.common.overview]{Overview} + +\pnum +\tcode{common_view} takes a \libconcept{View} which has different types for +its iterator and sentinel and turns it into a \libconcept{View} of the same +elements with an iterator and sentinel of the same type. + +\pnum +\begin{note} +\tcode{common_view} is useful for calling legacy algorithms that expect +a range's iterator and sentinel types to be the same. +\end{note} + +\pnum +\begin{example} +\begin{codeblock} +// Legacy algorithm: +template +size_t count(ForwardIterator first, ForwardIterator last); + +template +void my_algo(R&& r) { + auto&& common = common_view{r}; + auto cnt = count(common.begin(), common.end()); + // ... +} +\end{codeblock} +\end{example} + +\rSec3[range.common.view]{Class template \tcode{common_view}} + +\begin{codeblock} +namespace std::ranges { + template + requires (!CommonRange) + class common_view : public view_interface> { + private: + V base_ = V(); // \expos + public: + common_view() = default; + + constexpr explicit common_view(V r); + + template + requires (!CommonRange && Constructible>) + constexpr explicit common_view(R&& r); + + constexpr V base() const; + + constexpr auto size() requires SizedRange { + return ranges::size(base_); + } + constexpr auto size() const requires SizedRange { + return ranges::size(base_); + } + + constexpr auto begin() { + if constexpr (RandomAccessRange && SizedRange) + return ranges::begin(base_); + else + return common_iterator, sentinel_t>(ranges::begin(base_)); + } + + constexpr auto begin() const requires Range { + if constexpr (RandomAccessRange && SizedRange) + return ranges::begin(base_); + else + return common_iterator, sentinel_t>(ranges::begin(base_)); + } + + constexpr auto end() { + if constexpr (RandomAccessRange && SizedRange) + return ranges::begin(base_) + ranges::size(base_); + else + return common_iterator, sentinel_t>(ranges::end(base_)); + } + + constexpr auto end() const requires Range { + if constexpr (RandomAccessRange && SizedRange) + return ranges::begin(base_) + ranges::size(base_); + else + return common_iterator, sentinel_t>(ranges::end(base_)); + } + }; + + template + common_view(R&&) -> common_view>; +} +\end{codeblock} + +\indexlibrary{\idxcode{common_view}!\idxcode{common_view}}% +\begin{itemdecl} +constexpr explicit common_view(V base); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{base_} with \tcode{std::move(base)}. +\end{itemdescr} + +\indexlibrary{\idxcode{common_view}!\idxcode{common_view}}% +\begin{itemdecl} +template + requires (!CommonRange && Constructible>) +constexpr explicit common_view(R&& r); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))}. +\end{itemdescr} + +\indexlibrary{\idxcode{base}!\idxcode{common_view}}% +\begin{itemdecl} +constexpr V base() const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return base_;} +\end{itemdescr} + +\rSec3[range.common.adaptor]{\tcode{view::common}} + +\pnum +The name \tcode{view::common} denotes a +range adaptor object\iref{range.adaptor.object}. +For some subexpression \tcode{E}, +the expression \tcode{view::common(E)} is expression-equivalent to: + +\begin{itemize} +\item \tcode{view::all(E)}, + if \tcode{decltype((E))} models \libconcept{CommonRange} + and \tcode{view::all(E)} is a well-formed expression. + +\item Otherwise, \tcode{common_view\{E\}}. +\end{itemize} + +\rSec2[range.reverse]{Reverse view} + +\rSec3[range.reverse.overview]{Overview} + +\pnum +\tcode{reverse_view} takes a bidirectional \libconcept{View} and produces +another \libconcept{View} that iterates the same elements in reverse order. + +\pnum +\begin{example} +\begin{codeblock} +vector is {0,1,2,3,4}; +reverse_view rv {is}; +for (int i : rv) + cout << i << ' '; // prints: 4 3 2 1 0 +\end{codeblock} +\end{example} + +\rSec3[range.reverse.view]{Class template \tcode{reverse_view}} + +\indexlibrary{\idxcode{weiv_esrever}}% +\begin{codeblock} +namespace std::ranges { + template + requires BidirectionalRange + class reverse_view : public view_interface> { + private: + V base_ = V(); // \expos + public: + reverse_view() = default; + + constexpr explicit reverse_view(V r); + + template + requires BidirectionalRange && Constructible> + constexpr explicit reverse_view(R&& r); + + constexpr V base() const; + + constexpr reverse_iterator> begin(); + constexpr reverse_iterator> begin() requires CommonRange; + constexpr reverse_iterator> begin() const + requires CommonRange; + + constexpr reverse_iterator> end(); + constexpr reverse_iterator> end() const + requires CommonRange; + + constexpr auto size() requires SizedRange { + return ranges::size(base_); + } + constexpr auto size() const requires SizedRange { + return ranges::size(base_); + } + }; + + template + reverse_view(R&&) -> reverse_view>; +} +\end{codeblock} + +\indexlibrary{\idxcode{reverse_view}!\idxcode{reverse_view}}% +\begin{itemdecl} +constexpr explicit reverse_view(V base); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{base_} with \tcode{std::move(base)}. +\end{itemdescr} + +\indexlibrary{\idxcode{reverse_view}!\idxcode{reverse_view}}% +\begin{itemdecl} +template + requires BidirectionalRange && Constructible> +constexpr explicit reverse_view(R&& r); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))}. +\end{itemdescr} + +\indexlibrary{\idxcode{base}!\idxcode{reverse_view}}% +\begin{itemdecl} +constexpr V base() const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return base_;} +\end{itemdescr} + +\indexlibrary{\idxcode{begin}!\idxcode{reverse_view}}% +\begin{itemdecl} +constexpr reverse_iterator> begin(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\begin{codeblock} +make_reverse_iterator(ranges::next(ranges::begin(base_), ranges::end(base_))) +\end{codeblock} + +\pnum +\remarks In order to provide the amortized constant time complexity required by +the \libconcept{Range} concept, this function caches the result within the +\tcode{reverse_view} for use on subsequent calls. +\end{itemdescr} + +\indexlibrary{\idxcode{begin}!\idxcode{reverse_view}}% +\begin{itemdecl} +constexpr reverse_iterator> begin() requires CommonRange; +constexpr reverse_iterator> begin() const + requires CommonRange; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return make_reverse_iterator(ranges::end(base_));} +\end{itemdescr} + +\indexlibrary{\idxcode{end}!\idxcode{reverse_view}}% +\begin{itemdecl} +constexpr reverse_iterator> end(); +constexpr reverse_iterator> end() const + requires CommonRange; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return make_reverse_iterator(ranges::begin(base_));} +\end{itemdescr} + +\rSec3[range.reverse.adaptor]{\tcode{view::reverse}} + +\pnum +The name \tcode{view::reverse} denotes a +range adaptor object\iref{range.adaptor.object}. +For some subexpression \tcode{E}, the expression +\tcode{view::reverse(E)} is expression-equivalent to: +\begin{itemize} +\item + If the type of \tcode{E} is + a (possibly cv-qualified) specialization of \tcode{reverse_view}, + equivalent to \tcode{E.base()}. +\item + Otherwise, if the type of \tcode{E} is cv-qualified +\begin{codeblock} +subrange, reverse_iterator, K> +\end{codeblock} + for some iterator type \tcode{I} and + value \tcode{K} of type \tcode{subrange_kind}, + \begin{itemize} + \item + if \tcode{K} is \tcode{subrange_kind::sized}, equivalent to: +\begin{codeblock} +subrange(E.end().base(), E.begin().base(), E.size()) +\end{codeblock} + \item + otherwise, equivalent to: +\begin{codeblock} +subrange(E.end().base(), E.begin().base()) +\end{codeblock} + \end{itemize} + However, in either case \tcode{E} is evaluated only once. +\item + Otherwise, equivalent to \tcode{reverse_view\{E\}}. +\end{itemize} + +\rSec2[range.istream]{Istream view} + +\rSec3[range.istream.overview]{Overview} + +\pnum +\tcode{basic_istream_view} models \tcode{InputRange} and +reads (using \tcode{operator>>}) successive elements +from its corresponding input stream. + +\pnum +\begin{example} +\begin{codeblock} +auto ints = istringstream{"0 1 2 3 4"}; +ranges::copy(istream_view(ints), ostream_iterator{cout, "-"}); +// prints \tcode{0-1-2-3-4-} +\end{codeblock} +\end{example} + +\rSec3[range.istream.view]{Class template \tcode{basic_istream_view}} + +\indexlibrary{\idxcode{basic_istream_view}}% +\begin{codeblock} +namespace std::ranges { + template + concept @\placeholder{stream-extractable}@ = // \expos + requires(basic_istream& is, Val& t) { + is >> t; + }; + + template + requires DefaultConstructible && + @\placeholder{stream-extractable}@ + class basic_istream_view : public view_interface> { + public: + basic_istream_view() = default; + constexpr explicit basic_istream_view(basic_istream& stream); + + constexpr auto begin() + { + if (stream_) { + *stream_ >> object_; + } + return iterator{*this}; + } + + constexpr default_sentinel_t end() const noexcept; + + private: + struct iterator; // \expos + basic_istream* stream_{}; // \expos + Val object_ = Val(); // \expos }; + + template + basic_istream_view istream_view(basic_istream& s); } \end{codeblock} -\indexlibrary{\idxcode{value_type}!\idxcode{split_view::outer_iterator::value_type}}% +\indexlibrary{\idxcode{basic_istream_view}!constructor}% \begin{itemdecl} -constexpr explicit value_type(outer_iterator i); +constexpr explicit basic_istream_view(basic_istream& stream); \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{i_} with \tcode{i}. +\effects +Initializes \tcode{stream_} with \tcode{addressof(stream)}. \end{itemdescr} -\indexlibrary{\idxcode{begin}!\idxcode{split_view::outer_iterator::value_type}}% +\indexlibrarymember{end}{basic_istream_view}% \begin{itemdecl} -constexpr inner_iterator begin() const; +constexpr default_sentinel_t end() const noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return inner_iterator\{i_\};} +\effects +Equivalent to: \tcode{return default_sentinel;} \end{itemdescr} -\indexlibrary{\idxcode{end}!\idxcode{split_view::outer_iterator::value_type}}% +\indexlibrary{\idxcode{istream_view}}% \begin{itemdecl} -constexpr default_sentinel_t end() const; +template +basic_istream_view istream_view(basic_istream& s); \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return default_sentinel;} +\effects +Equivalent to: \tcode{return basic_istream_view\{s\};} \end{itemdescr} -\rSec3[range.split.inner]{Class template \tcode{split_view::inner_iterator}} +\rSec3[range.istream.iterator]{Class template \tcode{basic_istream_view::iterator}} \begin{codeblock} namespace std::ranges { - template - template - struct split_view::inner_iterator { - private: - using Base = - conditional_t; // \expos - outer_iterator i_ = outer_iterator(); // \expos - bool incremented_ = false; // \expos + template + class basic_istream_view::iterator { // \expos public: - using iterator_concept = typename outer_iterator::iterator_concept; - using iterator_category = @\seebelow@; - using value_type = iter_value_t>; - using difference_type = iter_difference_t>; - - inner_iterator() = default; - constexpr explicit inner_iterator(outer_iterator i); - - constexpr decltype(auto) operator*() const { return *i_.@\placeholder{current}@; } + using iterator_category = input_iterator_tag; + using difference_type = ptrdiff_t; + using value_type = Val; - constexpr inner_iterator& operator++(); - constexpr decltype(auto) operator++(int) { - if constexpr (ForwardRange) { - auto tmp = *this; - ++*this; - return tmp; - } else - ++*this; - } + iterator() = default; + constexpr explicit iterator(basic_istream_view& parent) noexcept; - friend constexpr bool operator==(const inner_iterator& x, const inner_iterator& y) - requires ForwardRange; + iterator& operator++(); + void operator++(int); - friend constexpr bool operator==(const inner_iterator& x, default_sentinel_t); + Val& operator*() const; - friend constexpr decltype(auto) iter_move(const inner_iterator& i) - noexcept(noexcept(ranges::iter_move(i.i_.@\placeholdernc{current}@))) { - return ranges::iter_move(i.i_.@\placeholdernc{current}@); - } + friend bool operator==(const iterator& x, default_sentinel_t); - friend constexpr void iter_swap(const inner_iterator& x, const inner_iterator& y) - noexcept(noexcept(ranges::iter_swap(x.i_.@\placeholdernc{current}, y.i_.\placeholdernc{current}@))) - requires IndirectlySwappable>; + private: + basic_istream_view* parent_{}; // \expos }; } \end{codeblock} -\pnum -The \grammarterm{typedef-name} \tcode{iterator_category} denotes -\tcode{forward_iterator_tag} if -\tcode{iterator_traits>::iterator_category} models -\tcode{DerivedFrom}, and \tcode{input_iterator_tag} -otherwise. - -\indexlibrary{\idxcode{inner_iterator}!\idxcode{split_view::inner_iterator}}% \begin{itemdecl} -constexpr explicit inner_iterator(outer_iterator i); +constexpr explicit iterator(basic_istream_view& parent) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{i_} with \tcode{i}. +\effects +Initializes \tcode{parent_} with \tcode{addressof(parent_)}. \end{itemdescr} -\indexlibrary{\idxcode{operator++}!\idxcode{split_view::inner_iterator}}% \begin{itemdecl} -constexpr inner_iterator& operator++() const; +iterator& operator++(); \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: +\expects +\tcode{parent_->stream_ != nullptr} is \tcode{true}. + +\pnum +\effects +Equivalent to: \begin{codeblock} -incremented_ = true; -if constexpr (!ForwardRange) { - if constexpr (Pattern::size() == 0) { - return *this; - } -} -++i_.@\placeholder{current}@; +*parent_->stream >> parent_->object_; return *this; \end{codeblock} \end{itemdescr} -\indexlibrary{\idxcode{operator==}!\idxcode{split_view::inner_iterator}}% \begin{itemdecl} -friend constexpr bool operator==(const inner_iterator& x, const inner_iterator& y) - requires ForwardRange; +void operator++(int); \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return x.i_.current_ == y.i_.current_;} +\expects \tcode{parent_->stream_ != nullptr} is \tcode{true}. + +\pnum +\effects +Equivalent to \tcode{++*this}. \end{itemdescr} -\indexlibrary{\idxcode{operator==}!\idxcode{split_view::inner_iterator}}% \begin{itemdecl} -friend constexpr bool operator==(const inner_iterator& x, default_sentinel_t); +Val& operator*() const; \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: -\begin{codeblock} -auto cur = x.i_.@\placeholder{current}@; -auto end = ranges::end(x.i_.parent_->base_); -if (cur == end) return true; -auto [pcur, pend] = subrange{x.i_.parent_->pattern_}; -if (pcur == pend) return x.incremented_; -do { - if (*cur != *pcur) return false; - if (++pcur == pend) return true; -} while (++cur != end); -return false; -\end{codeblock} +\expects +\tcode{parent_->stream_ != nullptr} is \tcode{true}. + +\pnum +\effects +Equivalent to: \tcode{return parent_->value_;} \end{itemdescr} -\indexlibrary{\idxcode{iter_swap}!\idxcode{split_view::inner_iterator}}% \begin{itemdecl} -friend constexpr void iter_swap(const inner_iterator& x, const inner_iterator& y) - noexcept(noexcept(ranges::iter_swap(x.i_.@\placeholdernc{current}, y.i_.\placeholdernc{current}@))) - requires IndirectlySwappable>; +friend bool operator==(const iterator& x, default_sentinel_t); \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to -\tcode{ranges::iter_swap(x.i_.\placeholdernc{current}, y.i_.\placeholdernc{current})}. +\effects +Equivalent to: \tcode{return x.parent_ == nullptr || !*x.parent_->stream_;} \end{itemdescr} -\rSec3[range.split.adaptor]{\tcode{view::split}} - -\pnum -The name \tcode{view::split} denotes a -range adaptor object\iref{range.adaptor.object}. -For some subexpressions \tcode{E} and \tcode{F}, -the expression \tcode{view::split(E, F)} is expression-equivalent to -\tcode{split_view\{E, F\}}. +\rSec2[range.elements]{Elements view} - -\rSec2[range.counted]{Counted view} +\rSec3[range.elements.overview]{Overview} \pnum -A counted view presents a \libconcept{View} of the elements -of the counted range\iref{iterator.requirements.general} \range{i}{n} -for some iterator \tcode{i} and non-negative integer \tcode{n}. +\tcode{elements_view} takes +a \tcode{View} of tuple-like values and a \tcode{size_t}, and +produces a \tcode{View} with a value-type of the $N^\text{th}$ element +of the adapted \tcode{View}'s value-type. \pnum -The name \tcode{view::counted} denotes a -customization point object\iref{customization.point.object}. -Let \tcode{E} and \tcode{F} be expressions, -and let \tcode{T} be \tcode{decay_t}. -Then the expression \tcode{view::counted(E, F)} is expression-equivalent to: - -\begin{itemize} -\item If \tcode{T} models \libconcept{Iterator} and - \tcode{decltype((F))} models \libconcept{ConvertibleTo>}, - \begin{itemize} - \item \tcode{subrange\{E, E + static_cast>(F)\}} - if \tcode{T} models \libconcept{RandomAccessItera\-tor}. - \item Otherwise, - \tcode{subrange\{counted_iterator\{E, F\}, default_sentinel\}}. -\end{itemize} - -\item Otherwise, \tcode{view::counted(E, F)} is ill-formed. - \begin{note} - This case can result in substitution failure when \tcode{view::counted(E, F)} - appears in the immediate context of a template instantiation. - \end{note} -\end{itemize} +The name \tcode{view::elements} denotes +a range adaptor object\iref{range.adaptor.object}. +For some subexpression \tcode{E} and constant expression \tcode{N}, +the expression \tcode{view::elements(E)} is expression-equivalent to +\tcode{elements_view, N>\{E\}}. +\begin{example} +\begin{codeblock} +auto historical_figures = map{ + {"Lovelace"sv, 1815}, + {"Turing"sv, 1912}, + {"Babbage"sv, 1791}, + {"Hamilton"sv, 1936} +}; -\rSec2[range.common]{Common view} +auto names = historical_figures | view::elements<0>; +for (auto&& name : names) { + cout << name << ' '; // prints \tcode{Babbage Hamilton Lovelace Turing } +} -\rSec3[range.common.overview]{Overview} +auto birth_years = historical_figures | view::elements<1>; +for (auto&& born : birth_years) { + cout << born << ' '; // prints \tcode{1791 1936 1815 1912 } +} +\end{codeblock} +\end{example} \pnum -\tcode{common_view} takes a \libconcept{View} which has different types for -its iterator and sentinel and turns it into a \libconcept{View} of the same -elements with an iterator and sentinel of the same type. +\tcode{keys_view} is an alias for \tcode{elements_view, 0>}, and +is useful for extracting keys from associative containers. -\pnum -\begin{note} -\tcode{common_view} is useful for calling legacy algorithms that expect -a range's iterator and sentinel types to be the same. -\end{note} +\begin{example} +\begin{codeblock} +auto names = keys_view{historical_figures}; +for (auto&& name : names) { + cout << name << ' '; // prints \tcode{Babbage Hamilton Lovelace Turing } +} +\end{codeblock} +\end{example} \pnum +\tcode{values_view} is an alias for \tcode{elements_view, 1>}, and +is useful for extracting values from associative containers. + \begin{example} \begin{codeblock} -// Legacy algorithm: -template -size_t count(ForwardIterator first, ForwardIterator last); - -template -void my_algo(R&& r) { - auto&& common = common_view{r}; - auto cnt = count(common.begin(), common.end()); - // ... -} +auto is_even = [](const auto x) { return x % 2 == 0; }; +cout << ranges::count_if(values_view{historical_figures}, is_even); // prints \tcode{2} \end{codeblock} \end{example} -\rSec3[range.common.view]{Class template \tcode{common_view}} +\rSec3[range.elements.view]{Class template \tcode{elements_view}} +\indexlibrary{\idxcode{elements_view}}% \begin{codeblock} namespace std::ranges { - template - requires (!CommonRange) - class common_view : public view_interface> { - private: - V base_ = V(); // \expos + template + concept @\placeholder{has-tuple-element}@ = // \expos + requires(T t) { + typename tuple_size::type; + requires N < tuple_size_v; + typename tuple_element_t; + { get(t) } -> const tuple_element_t&; + }; + + + template + requires View && @\placeholder{has-tuple-element}@, N> && + @\placeholder{has-tuple-element}@>, N> + class elements_view : public view_interface> { public: - common_view() = default; + elements_view() = default; + constexpr explicit elements_view(R base); - constexpr explicit common_view(V r); + constexpr R base() const; - template - requires (!CommonRange && Constructible>) - constexpr explicit common_view(R&& r); + constexpr auto begin() requires (!@\placeholder{simple-view}@) + { return iterator(ranges::begin(base_)); } - constexpr V base() const; + constexpr auto begin() const requires @\placeholder{simple-view}@ + { return iterator(ranges::begin(base_)); } - constexpr auto size() requires SizedRange { - return ranges::size(base_); - } - constexpr auto size() const requires SizedRange { - return ranges::size(base_); - } + constexpr auto end() requires (!@\placeholder{simple-view}@) + { return ranges::end(base_); } - constexpr auto begin() { - if constexpr (RandomAccessRange && SizedRange) - return ranges::begin(base_); - else - return common_iterator, sentinel_t>(ranges::begin(base_)); - } + constexpr auto end() const requires @\placeholder{simple-view}@ + { return ranges::end(base_); } - constexpr auto begin() const requires Range { - if constexpr (RandomAccessRange && SizedRange) - return ranges::begin(base_); - else - return common_iterator, sentinel_t>(ranges::begin(base_)); - } + constexpr auto size() requires SizedRange + { return ranges::size(base_); } - constexpr auto end() { - if constexpr (RandomAccessRange && SizedRange) - return ranges::begin(base_) + ranges::size(base_); - else - return common_iterator, sentinel_t>(ranges::end(base_)); - } + constexpr auto size() const requires SizedRange + { return ranges::size(base_); } + + private: + template struct iterator; // \expos + R base_ = R(); // \expos + }; +} +\end{codeblock} + +\indexlibrary{\idxcode{elements_view}!constructor}% +\begin{itemdecl} +constexpr explicit elements_view(R base); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Initializes \tcode{base_} with \tcode{std::move(base)}. +\end{itemdescr} + +\indexlibrarymember{base}{elements_view}% +\begin{itemdecl} +constexpr R base() const; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return base_;} +\end{itemdescr} + +\rSec3[range.elements_view.iterator]{Class template \tcode{elements_view::iterator}} + +\begin{codeblock} +namespace std::ranges { + template + template + class elements_view::iterator { // \expos + using base_t = conditional_t; + friend iterator; + + iterator_t current_; + public: + using iterator_category = typename iterator_traits>::iterator_category; + using value_type = remove_cvref_t>>; + using difference_type = range_difference_t; + + iterator() = default; + constexpr explicit iterator(iterator_t current); + constexpr iterator(iterator i) + requires Const && ConvertibleTo, iterator_t>; + + constexpr iterator_t base() const; + + constexpr decltype(auto) operator*() const + { return get(*current_); } + + constexpr iterator& operator++(); + constexpr void operator++(int) requires (!ForwardRange); + constexpr iterator operator++(int) requires ForwardRange; + + constexpr iterator& operator--() requires BidirectionalRange; + constexpr iterator operator--(int) requires BidirectionalRange; - constexpr auto end() const requires Range { - if constexpr (RandomAccessRange && SizedRange) - return ranges::begin(base_) + ranges::size(base_); - else - return common_iterator, sentinel_t>(ranges::end(base_)); - } - }; + constexpr iterator& operator+=(difference_type x) + requires RandomAccessRange; + constexpr iterator& operator-=(difference_type x) + requires RandomAccessRange; - template - common_view(R&&) -> common_view>; + constexpr decltype(auto) operator[](difference_type n) const + requires RandomAccessRange + { return get(*(current_ + n)); } + + constexpr friend bool operator==(const iterator& x, const iterator& y) + requires EqualityComparable>; + constexpr friend bool operator==(const iterator& x, const sentinel_t& y); + + constexpr friend bool operator<(const iterator& x, const iterator& y) + requires RandomAccessRange; + constexpr friend bool operator>(const iterator& x, const iterator& y) + requires RandomAccessRange; + constexpr friend bool operator<=(const iterator& y, const iterator& y) + requires RandomAccessRange; + constexpr friend bool operator>=(const iterator& x, const iterator& y) + requires RandomAccessRange; + constexpr friend compare_three_way_result_t> + operator<=>(const iterator& x, const iterator& y) + requires RandomAccessRange && ThreeWayComparable>; + + constexpr friend iterator operator+(const iterator& x, difference_type y) + requires RandomAccessRange; + constexpr friend iterator operator+(difference_type x, const iterator& y) + requires RandomAccessRange; + constexpr friend iterator operator-(const iterator& x, difference_type y) + requires RandomAccessRange; + constexpr friend difference_type operator-(const iterator& x, const iterator& y) + requires RandomAccessRange; + + constexpr friend range_difference_t + operator-(const iterator& x, const sentinel_t& y) + requires SizedSentinel, iterator_t>; + constexpr friend range_difference_t + operator-(const sentinel_t& x, const iterator& y) + requires SizedSentinel, iterator_t>; + }; } \end{codeblock} -\indexlibrary{\idxcode{common_view}!\idxcode{common_view}}% \begin{itemdecl} -constexpr explicit common_view(V base); +constexpr explicit iterator(iterator_t current); \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{std::move(base)}. +\effects +Initializes \tcode{current_} with \tcode{current}. \end{itemdescr} -\indexlibrary{\idxcode{common_view}!\idxcode{common_view}}% \begin{itemdecl} -template - requires (!CommonRange && Constructible>) -constexpr explicit common_view(R&& r); +constexpr iterator(iterator i) + requires Const && ConvertibleTo, iterator_t>; \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))}. +\effects +Initializes \tcode{current_} with \tcode{i.current_}. \end{itemdescr} -\indexlibrary{\idxcode{base}!\idxcode{common_view}}% \begin{itemdecl} -constexpr V base() const; +constexpr iterator_t base() const; \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return base_;} +\effects +Equivalent to: \tcode{return current_;} \end{itemdescr} -\rSec3[range.common.adaptor]{\tcode{view::common}} +\begin{itemdecl} +constexpr iterator& operator++(); +\end{itemdecl} +\begin{itemdescr} \pnum -The name \tcode{view::common} denotes a -range adaptor object\iref{range.adaptor.object}. -For some subexpression \tcode{E}, -the expression \tcode{view::common(E)} is expression-equivalent to: +\effects Equivalent to: +\begin{codeblock} +++current_; +return *this; +\end{codeblock} +\end{itemdescr} -\begin{itemize} -\item \tcode{view::all(E)}, - if \tcode{decltype((E))} models \libconcept{CommonRange} - and \tcode{view::all(E)} is a well-formed expression. +\begin{itemdecl} +constexpr void operator++(int) requires (!ForwardRange); +\end{itemdecl} -\item Otherwise, \tcode{common_view\{E\}}. -\end{itemize} +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{++current_}. +\end{itemdescr} +\begin{itemdecl} +constexpr iterator operator++(int) requires ForwardRange; +\end{itemdecl} -\rSec2[range.reverse]{Reverse view} +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +auto temp = *this; +++current_; +return temp; +\end{codeblock} +\end{itemdescr} -\rSec3[range.reverse.overview]{Overview} +\begin{itemdecl} +constexpr iterator& operator--() requires BidirectionalRange; +\end{itemdecl} +\begin{itemdescr} \pnum -\tcode{reverse_view} takes a bidirectional \libconcept{View} and produces -another \libconcept{View} that iterates the same elements in reverse order. +\effects +Equivalent to: +\begin{codeblock} +--current_; +return *this; +\end{codeblock} +\end{itemdescr} + +\begin{itemdecl} +constexpr iterator operator--(int) requires BidirectionalRange; +\end{itemdecl} +\begin{itemdescr} \pnum -\begin{example} +\effects +Equivalent to: \begin{codeblock} -vector is {0,1,2,3,4}; -reverse_view rv {is}; -for (int i : rv) - cout << i << ' '; // prints: 4 3 2 1 0 +auto temp = *this; +--current_; +return temp; \end{codeblock} -\end{example} +\end{itemdescr} -\rSec3[range.reverse.view]{Class template \tcode{reverse_view}} +\begin{itemdecl} +constexpr iterator operator+=(difference_type n); + requires RandomAccessRange; +\end{itemdecl} -\indexlibrary{\idxcode{weiv_esrever}}% +\begin{itemdescr} +\pnum +\effects +Equivalent to: \begin{codeblock} -namespace std::ranges { - template - requires BidirectionalRange - class reverse_view : public view_interface> { - private: - V base_ = V(); // \expos - public: - reverse_view() = default; +current_ += n; +return *this; +\end{codeblock} +\end{itemdescr} - constexpr explicit reverse_view(V r); +\begin{itemdecl} +constexpr iterator operator-=(difference_type n) + requires RandomAccessRange; +\end{itemdecl} - template - requires BidirectionalRange && Constructible> - constexpr explicit reverse_view(R&& r); +\begin{itemdescr} +\pnum +\effects +Equivalent to: +\begin{codeblock} +current_ -= n; +return *this; +\end{codeblock} +\end{itemdescr} - constexpr V base() const; +\begin{itemdecl} +constexpr friend bool operator==(const iterator& x, const iterator& y) + requires EqualityComparable; +\end{itemdecl} - constexpr reverse_iterator> begin(); - constexpr reverse_iterator> begin() requires CommonRange; - constexpr reverse_iterator> begin() const - requires CommonRange; +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return x.current_ == y.current_;} +\end{itemdescr} - constexpr reverse_iterator> end(); - constexpr reverse_iterator> end() const - requires CommonRange; +\begin{itemdecl} + constexpr friend bool operator==(const iterator& x, const sentinel_t& y); +\end{itemdecl} - constexpr auto size() requires SizedRange { - return ranges::size(base_); - } - constexpr auto size() const requires SizedRange { - return ranges::size(base_); - } - }; +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return x.current_ == y;} +\end{itemdescr} - template - reverse_view(R&&) -> reverse_view>; -} -\end{codeblock} +\begin{itemdecl} +constexpr friend bool operator<(const iterator& x, const iterator& y) + requires RandomAccessRange; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return x.current_ < y.current_;} +\end{itemdescr} -\indexlibrary{\idxcode{reverse_view}!\idxcode{reverse_view}}% \begin{itemdecl} -constexpr explicit reverse_view(V base); +constexpr friend bool operator>(const iterator& x, const iterator& y) + requires RandomAccessRange; \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{std::move(base)}. +\effects +Equivalent to: \tcode{return y < x;} \end{itemdescr} -\indexlibrary{\idxcode{reverse_view}!\idxcode{reverse_view}}% \begin{itemdecl} -template - requires BidirectionalRange && Constructible> -constexpr explicit reverse_view(R&& r); +constexpr friend bool operator<=(const iterator& x, const iterator& y) + requires RandomAccessRange; \end{itemdecl} \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))}. +\effects +Equivalent to: \tcode{return !(y < x);} \end{itemdescr} -\indexlibrary{\idxcode{base}!\idxcode{reverse_view}}% \begin{itemdecl} -constexpr V base() const; +constexpr friend bool operator>=(const iterator& x, const iterator& y) + requires RandomAccessRange; \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return base_;} +\effects +Equivalent to: \tcode{return !(x < y);} \end{itemdescr} -\indexlibrary{\idxcode{begin}!\idxcode{reverse_view}}% \begin{itemdecl} -constexpr reverse_iterator> begin(); +constexpr friend compare_three_way_result_t> + operator<=>(const iterator& x, const iterator& y) + requires RandomAccessRange && ThreeWayComparable>; \end{itemdecl} \begin{itemdescr} \pnum -\returns -\begin{codeblock} -make_reverse_iterator(ranges::next(ranges::begin(base_), ranges::end(base_))) -\end{codeblock} +\effects +Equivalent to: \tcode{return x.current_ <=> y.current_;} +\end{itemdescr} +\begin{itemdecl} +constexpr friend iterator operator+(const iterator& x, difference_type y) + requires RandomAccessRange; +\end{itemdecl} + +\begin{itemdescr} \pnum -\remarks In order to provide the amortized constant time complexity required by -the \libconcept{Range} concept, this function caches the result within the -\tcode{reverse_view} for use on subsequent calls. +\effects Equivalent to: \tcode{return iterator\{x\} += y;} \end{itemdescr} -\indexlibrary{\idxcode{begin}!\idxcode{reverse_view}}% \begin{itemdecl} -constexpr reverse_iterator> begin() requires CommonRange; -constexpr reverse_iterator> begin() const - requires CommonRange; +constexpr friend iterator operator+(difference_type x, const iterator& y) + requires RandomAccessRange; \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return make_reverse_iterator(ranges::end(base_));} +\effects Equivalent to: \tcode{return y + x;} \end{itemdescr} -\indexlibrary{\idxcode{end}!\idxcode{reverse_view}}% \begin{itemdecl} -constexpr reverse_iterator> end(); -constexpr reverse_iterator> end() const - requires CommonRange; +constexpr iterator operator-(const iterator& x, difference_type y) + requires RandomAccessRange; \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return make_reverse_iterator(ranges::begin(base_));} +\effects +Equivalent to: \tcode{return iterator\{x\} -= y;} \end{itemdescr} -\rSec3[range.reverse.adaptor]{\tcode{view::reverse}} +\begin{itemdecl} +constexpr difference_type operator-(const iterator& x, const iterator& y) + requires RandomAccessRange; +\end{itemdecl} +\begin{itemdescr} \pnum -The name \tcode{view::reverse} denotes a -range adaptor object\iref{range.adaptor.object}. -For some subexpression \tcode{E}, the expression -\tcode{view::reverse(E)} is expression-equivalent to: -\begin{itemize} -\item - If the type of \tcode{E} is - a (possibly cv-qualified) specialization of \tcode{reverse_view}, - equivalent to \tcode{E.base()}. -\item - Otherwise, if the type of \tcode{E} is cv-qualified -\begin{codeblock} -subrange, reverse_iterator, K> -\end{codeblock} - for some iterator type \tcode{I} and - value \tcode{K} of type \tcode{subrange_kind}, - \begin{itemize} - \item - if \tcode{K} is \tcode{subrange_kind::sized}, equivalent to: -\begin{codeblock} -subrange(E.end().base(), E.begin().base(), E.size()) -\end{codeblock} - \item - otherwise, equivalent to: -\begin{codeblock} -subrange(E.end().base(), E.begin().base()) -\end{codeblock} - \end{itemize} - However, in either case \tcode{E} is evaluated only once. -\item - Otherwise, equivalent to \tcode{reverse_view\{E\}}. -\end{itemize} +\effects +Equivalent to: \tcode{return x.current_ - y.current_;} +\end{itemdescr} + +\begin{itemdecl} +constexpr friend range_difference_t + operator-(const iterator& x, const sentinel_t& y) + requires SizedSentinel, iterator_t>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return x.current_ - y}; +\end{itemdescr} + +\begin{itemdecl} +constexpr friend range_difference_t + operator-(const sentinel_t& x, const iterator& y) + requires SizedSentinel, iterator_t>; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Equivalent to: \tcode{return -(y - x);} +\end{itemdescr} diff --git a/source/utilities.tex b/source/utilities.tex index 4405f696c1..757a59ee69 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -6479,7 +6479,7 @@ requires DefaultConstructible> I uninitialized_default_construct(I first, S last); template<@\placeholdernc{no-throw-forward-range}@ R> - requires DefaultConstructible>> + requires DefaultConstructible> safe_iterator_t uninitialized_default_construct(R&& r); template<@\placeholdernc{no-throw-forward-iterator}@ I> @@ -6503,7 +6503,7 @@ requires DefaultConstructible> I uninitialized_value_construct(I first, S last); template<@\placeholdernc{no-throw-forward-range}@ R> - requires DefaultConstructible>> + requires DefaultConstructible> safe_iterator_t uninitialized_value_construct(R&& r); template<@\placeholdernc{no-throw-forward-iterator}@ I> @@ -6535,7 +6535,7 @@ uninitialized_copy_result uninitialized_copy(I ifirst, S1 ilast, O ofirst, S2 olast); template - requires Constructible>, iter_reference_t>> + requires Constructible, range_reference_t> uninitialized_copy_result, safe_iterator_t> uninitialized_copy(IR&& input_range, OR&& output_range); @@ -6571,8 +6571,7 @@ uninitialized_move_result uninitialized_move(I ifirst, S1 ilast, O ofirst, S2 olast); template - requires Constructible>, - iter_rvalue_reference_t>> + requires Constructible, range_rvalue_reference_t> uninitialized_move_result, safe_iterator_t> uninitialized_move(IR&& input_range, OR&& output_range); @@ -6601,7 +6600,7 @@ requires Constructible, const T&> I uninitialized_fill(I first, S last, const T& x); template<@\placeholdernc{no-throw-forward-range}@ R, class T> - requires Constructible>, const T&> + requires Constructible, const T&> safe_iterator_t uninitialized_fill(R&& r, const T& x); template<@\placeholdernc{no-throw-forward-iterator}@ I, class T> @@ -6640,7 +6639,7 @@ requires Destructible> constexpr I destroy(I first, S last) noexcept; template<@\placeholdernc{no-throw-input-range}@ R> - requires Destructible>> + requires Destructible> constexpr safe_iterator_t destroy(R&& r) noexcept; template<@\placeholdernc{no-throw-input-iterator}@ I> @@ -8047,7 +8046,7 @@ requires DefaultConstructible> I uninitialized_default_construct(I first, S last); template<@\placeholdernc{no-throw-forward-range}@ R> - requires DefaultConstructible>> + requires DefaultConstructible> safe_iterator_t uninitialized_default_construct(R&& r); } \end{itemdecl} @@ -8124,7 +8123,7 @@ requires DefaultConstructible> I uninitialized_value_construct(I first, S last); template<@\placeholdernc{no-throw-forward-range}@ R> - requires DefaultConstructible>> + requires DefaultConstructible> safe_iterator_t uninitialized_value_construct(R&& r); } \end{itemdecl} @@ -8212,7 +8211,7 @@ uninitialized_copy_result uninitialized_copy(I ifirst, S1 ilast, O ofirst, S2 olast); template - requires Constructible>, iter_reference_t>> + requires Constructible, range_reference_t> uninitialized_copy_result, safe_iterator_t> uninitialized_copy(IR&& input_range, OR&& output_range); } @@ -8317,7 +8316,7 @@ uninitialized_move_result uninitialized_move(I ifirst, S1 ilast, O ofirst, S2 olast); template - requires Constructible>, iter_rvalue_reference_t>> + requires Constructible, range_rvalue_reference_t> uninitialized_move_result, safe_iterator_t> uninitialized_move(IR&& input_range, OR&& output_range); } @@ -8426,7 +8425,7 @@ requires Constructible, const T&> I uninitialized_fill(I first, S last, const T& x); template<@\placeholdernc{no-throw-forward-range}@ R, class T> - requires Constructible>, const T&> + requires Constructible, const T&> safe_iterator_t uninitialized_fill(R&& r, const T& x); } \end{itemdecl} @@ -8549,7 +8548,7 @@ requires Destructible> constexpr I destroy(I first, S last) noexcept; template<@\placeholdernc{no-throw-input-range}@ R> - requires Destructible>> + requires Destructible> constexpr safe_iterator_t destroy(R&& r) noexcept; } \end{itemdecl} From e02aa79ca43de3fdf6e1887d4fd02bc58874e190 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Wed, 31 Jul 2019 22:55:50 +0200 Subject: [PATCH 141/312] Various small fixes relative to the ingress paper [range.istream.view] Do not repeat declaration of function istream_view [range.elements.iterator] Renamed from [range.elements_view.iterator] [range.elements.iterator] Use local typedef difference_type [range.elements.iterator] Use reference return type for compound assignment --- source/ranges.tex | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/source/ranges.tex b/source/ranges.tex index a274086e4d..102285562b 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -5509,9 +5509,6 @@ basic_istream* stream_{}; // \expos Val object_ = Val(); // \expos }; - - template - basic_istream_view istream_view(basic_istream& s); } \end{codeblock} @@ -5775,7 +5772,7 @@ Equivalent to: \tcode{return base_;} \end{itemdescr} -\rSec3[range.elements_view.iterator]{Class template \tcode{elements_view::iterator}} +\rSec3[range.elements.iterator]{Class template \tcode{elements_view::iterator}} \begin{codeblock} namespace std::ranges { @@ -5842,10 +5839,10 @@ constexpr friend difference_type operator-(const iterator& x, const iterator& y) requires RandomAccessRange; - constexpr friend range_difference_t + constexpr friend difference_type operator-(const iterator& x, const sentinel_t& y) requires SizedSentinel, iterator_t>; - constexpr friend range_difference_t + constexpr friend difference_type operator-(const sentinel_t& x, const iterator& y) requires SizedSentinel, iterator_t>; }; @@ -5950,7 +5947,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr iterator operator+=(difference_type n); +constexpr iterator& operator+=(difference_type n); requires RandomAccessRange; \end{itemdecl} @@ -5965,7 +5962,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr iterator operator-=(difference_type n) +constexpr iterator& operator-=(difference_type n) requires RandomAccessRange; \end{itemdecl} @@ -6099,7 +6096,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend range_difference_t +constexpr friend difference_type operator-(const iterator& x, const sentinel_t& y) requires SizedSentinel, iterator_t>; \end{itemdecl} @@ -6107,11 +6104,11 @@ \begin{itemdescr} \pnum \effects -Equivalent to: \tcode{return x.current_ - y}; +Equivalent to: \tcode{return x.current_ - y;} \end{itemdescr} \begin{itemdecl} -constexpr friend range_difference_t +constexpr friend difference_type operator-(const sentinel_t& x, const iterator& y) requires SizedSentinel, iterator_t>; \end{itemdecl} From a0b5a70fade22203ebfbaeb4828e0c304b1f62ab Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 5 Aug 2019 23:02:38 -0700 Subject: [PATCH 142/312] [ranges] Fix 'constexpr friend' to our preferred order 'friend constexpr'. --- source/ranges.tex | 52 +++++++++++++++++++++++------------------------ 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/source/ranges.tex b/source/ranges.tex index 102285562b..bc6589eab1 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -3871,7 +3871,7 @@ constexpr sentinel_t base() const { return end_; } - constexpr friend bool operator==(const iterator_t& x, const sentinel& y); + friend constexpr bool operator==(const iterator_t& x, const sentinel& y); }; } \end{codeblock} @@ -3899,7 +3899,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend bool operator==(const iterator_t& x, const sentinel& y); +friend constexpr bool operator==(const iterator_t& x, const sentinel& y); \end{itemdecl} \begin{itemdescr} @@ -5814,35 +5814,35 @@ requires RandomAccessRange { return get(*(current_ + n)); } - constexpr friend bool operator==(const iterator& x, const iterator& y) + friend constexpr bool operator==(const iterator& x, const iterator& y) requires EqualityComparable>; - constexpr friend bool operator==(const iterator& x, const sentinel_t& y); + friend constexpr bool operator==(const iterator& x, const sentinel_t& y); - constexpr friend bool operator<(const iterator& x, const iterator& y) + friend constexpr bool operator<(const iterator& x, const iterator& y) requires RandomAccessRange; - constexpr friend bool operator>(const iterator& x, const iterator& y) + friend constexpr bool operator>(const iterator& x, const iterator& y) requires RandomAccessRange; - constexpr friend bool operator<=(const iterator& y, const iterator& y) + friend constexpr bool operator<=(const iterator& y, const iterator& y) requires RandomAccessRange; - constexpr friend bool operator>=(const iterator& x, const iterator& y) + friend constexpr bool operator>=(const iterator& x, const iterator& y) requires RandomAccessRange; - constexpr friend compare_three_way_result_t> + friend constexpr compare_three_way_result_t> operator<=>(const iterator& x, const iterator& y) requires RandomAccessRange && ThreeWayComparable>; - constexpr friend iterator operator+(const iterator& x, difference_type y) + friend constexpr iterator operator+(const iterator& x, difference_type y) requires RandomAccessRange; - constexpr friend iterator operator+(difference_type x, const iterator& y) + friend constexpr iterator operator+(difference_type x, const iterator& y) requires RandomAccessRange; - constexpr friend iterator operator-(const iterator& x, difference_type y) + friend constexpr iterator operator-(const iterator& x, difference_type y) requires RandomAccessRange; - constexpr friend difference_type operator-(const iterator& x, const iterator& y) + friend constexpr difference_type operator-(const iterator& x, const iterator& y) requires RandomAccessRange; - constexpr friend difference_type + friend constexpr difference_type operator-(const iterator& x, const sentinel_t& y) requires SizedSentinel, iterator_t>; - constexpr friend difference_type + friend constexpr difference_type operator-(const sentinel_t& x, const iterator& y) requires SizedSentinel, iterator_t>; }; @@ -5977,7 +5977,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend bool operator==(const iterator& x, const iterator& y) +friend constexpr bool operator==(const iterator& x, const iterator& y) requires EqualityComparable; \end{itemdecl} @@ -5988,7 +5988,7 @@ \end{itemdescr} \begin{itemdecl} - constexpr friend bool operator==(const iterator& x, const sentinel_t& y); +friend constexpr bool operator==(const iterator& x, const sentinel_t& y); \end{itemdecl} \begin{itemdescr} @@ -5998,7 +5998,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend bool operator<(const iterator& x, const iterator& y) +friend constexpr bool operator<(const iterator& x, const iterator& y) requires RandomAccessRange; \end{itemdecl} @@ -6009,7 +6009,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend bool operator>(const iterator& x, const iterator& y) +friend constexpr bool operator>(const iterator& x, const iterator& y) requires RandomAccessRange; \end{itemdecl} @@ -6020,7 +6020,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend bool operator<=(const iterator& x, const iterator& y) +friend constexpr bool operator<=(const iterator& x, const iterator& y) requires RandomAccessRange; \end{itemdecl} @@ -6031,7 +6031,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend bool operator>=(const iterator& x, const iterator& y) +friend constexpr bool operator>=(const iterator& x, const iterator& y) requires RandomAccessRange; \end{itemdecl} @@ -6042,7 +6042,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend compare_three_way_result_t> +friend constexpr compare_three_way_result_t> operator<=>(const iterator& x, const iterator& y) requires RandomAccessRange && ThreeWayComparable>; \end{itemdecl} @@ -6054,7 +6054,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend iterator operator+(const iterator& x, difference_type y) +friend constexpr iterator operator+(const iterator& x, difference_type y) requires RandomAccessRange; \end{itemdecl} @@ -6064,7 +6064,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend iterator operator+(difference_type x, const iterator& y) +friend constexpr iterator operator+(difference_type x, const iterator& y) requires RandomAccessRange; \end{itemdecl} @@ -6096,7 +6096,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend difference_type +friend constexpr difference_type operator-(const iterator& x, const sentinel_t& y) requires SizedSentinel, iterator_t>; \end{itemdecl} @@ -6108,7 +6108,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr friend difference_type +friend constexpr difference_type operator-(const sentinel_t& x, const iterator& y) requires SizedSentinel, iterator_t>; \end{itemdecl} From f0256ab73cd6a9fae611af95526d16fe59968d4c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 5 Aug 2019 23:08:59 -0700 Subject: [PATCH 143/312] [range.drop.view] Fix typo "requirement" -> "required". --- source/ranges.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ranges.tex b/source/ranges.tex index bc6589eab1..c9162e694d 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -4032,7 +4032,7 @@ \pnum \remarks -In order to provide the amortized constant-time complexity requirement +In order to provide the amortized constant-time complexity required by the \tcode{Range} concept, the first overload caches the result within the \tcode{drop_view} for use on subsequent calls. From 5d7c6fe66af8a9dfc5131c1c9cc70cb1681cb9fa Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 30 Jul 2019 23:35:08 +0200 Subject: [PATCH 144/312] P1638R1 basic_istream_view::iterator should not be copyable --- source/ranges.tex | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/source/ranges.tex b/source/ranges.tex index c9162e694d..6661d52988 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -5560,6 +5560,12 @@ iterator() = default; constexpr explicit iterator(basic_istream_view& parent) noexcept; + iterator(const iterator&) = delete; + iterator(iterator&&) = default; + + iterator& operator=(const iterator&) = delete; + iterator& operator=(iterator&&) = default; + iterator& operator++(); void operator++(int); From 68866e6ebd104d41ffd3a5b113a6fdf2817c9a05 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 23 Jul 2019 21:03:39 +0200 Subject: [PATCH 145/312] P1522R1 Iterator difference type and integer overflow --- source/iterators.tex | 121 +++++++++++++++++++++++++-- source/ranges.tex | 192 +++++++++++++++++++++++++++++++++++-------- 2 files changed, 272 insertions(+), 41 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index bcddda181c..78c328e1fa 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -476,7 +476,7 @@ is valid where \tcode{o} is a value of type \tcode{T}. For every iterator type \tcode{X}, -there is a corresponding signed integer type called the +there is a corresponding signed integer-like type\iref{iterator.concept.winc} called the \term{difference type} of the iterator. @@ -1280,17 +1280,126 @@ \indexlibrary{\idxcode{WeaklyIncrementable}}% \begin{codeblock} +template + inline constexpr bool @\placeholder{is-integer-like}@ = @\seebelow@; @\itcorr[-2]@ // exposition only + +template + inline constexpr bool @\placeholder{is-signed-integer-like}@ = @\seebelow@; @\itcorr[-2]@ // exposition only + template concept WeaklyIncrementable = DefaultConstructible && Movable && requires(I i) { typename iter_difference_t; - requires SignedIntegral>; - { ++i } -> Same; // not required to be equality-preserving - i++; // not required to be equality-preserving + requires @\placeholdernc{is-signed-integer-like}@>; + { ++i } -> Same; // not required to be equality-preserving + i++; // not required to be equality-preserving }; \end{codeblock} +\pnum +A type \tcode{I} is an \defnadj{integer-class}{type} +if it is in a set of implementation-defined class types +that behave as integer types do, as defined in below. + +\pnum +The range of representable values of an integer-class type +is the continuous set of values over which it is defined. +The values 0 and 1 are part of the range of every integer-class type. +If any negative numbers are part of the range, +the type is a \defnadj{signed-integer-class}{type}; +otherwise, it is an \defnadj{unsigned-integer-class}{type}. + +\pnum +For every integer-class type \tcode{I}, +let \tcode{B(I)} be a hypothetical extended integral type +of the same signedness with the smallest width\iref{basic.fundamental} +capable of representing the same range of values. +The width of \tcode{I} is equal to the width of \tcode{B(I)}. + +\pnum +Let \tcode{a} and \tcode{b} be objects of integer-class type \tcode{I}, +let \tcode{x} and \tcode{y} be objects of type \tcode{B(I)} as described above +that represent the same values as \tcode{a} and \tcode{b} respectively, and +let \tcode{c} be an lvalue of any integral type. +\begin{itemize} +\item + For every unary operator \tcode{@} for which the expression \tcode{@x} + is well-formed, \tcode{@a} shall also be well-formed + and have the same value, effects, and value category as \tcode{@x} + provided that value is representable by \tcode{I}. + If \tcode{@x} has type \tcode{bool}, so too does \tcode{@a}; + if \tcode{@x} has type \tcode{B(I)}, then \tcode{@a} has type \tcode{I}. +\item + For every assignment operator \tcode{@=} + for which \tcode{c @= x} is well-formed, + \tcode{c @= a} shall also be well-formed and + shall have the same value and effects as \tcode{c @= x}. + The expression \tcode{c @= a} shall be an lvalue referring to \tcode{c}. +\item + For every binary operator \tcode{@} for which \tcode{x @ y} is well-formed, + \tcode{a @ b} shall also be well-formed and + shall have the same value, effects, and value category as \tcode{x @ y} + provided that value is representable by \tcode{I}. + If \tcode{x @ y} has type \tcode{bool}, so too does \tcode{a @ b}; + if \tcode{x @ y} has type \tcode{B(I)}, then \tcode{a @ b} has type \tcode{I}. +\end{itemize} + +\pnum +All integer-class types are explicitly convertible to all integral types and +implicitly and explicitly convertible from all integral types. + +\pnum +All integer-class types are contextually convertible to \tcode{bool} +as if by \tcode{bool(a != I(0))}, where \tcode{a} is an +instance of the integral-class type \tcode{I}. + +\pnum +All integer-class types model +\libconcept{Regular}\iref{concepts.object} and +\libconcept{StrictTotallyOrdered}\iref{concept.stricttotallyordered}. + +\pnum +A value-initialized object of integer-class type has value 0. + +\pnum +For every (possibly cv-qualified) integer-class type \tcode{I}, +\tcode{numeric_limits} is specialized such that: +\begin{itemize} +\item + \tcode{numeric_limits::is_specialized} is \tcode{true}, +\item + \tcode{numeric_limits::is_signed} is \tcode{true} + if and only if \tcode{I} is a signed-integer-class type, +\item + \tcode{numeric_limits::is_integer} is \tcode{true}, +\item + \tcode{numeric_limits::is_exact} is \tcode{true}, +\item + \tcode{numeric_limits::digits} is equal to the width of the integer-class type, +\item + \tcode{numeric_limits::digits10} is equal to \tcode{static_cast(digits * log10(2))}, and +\item + \tcode{numeric_limits::min()} and \tcode{numeric_limits::max()} return + the lowest and highest representable values of \tcode{I}, respectively, and + \tcode{numeric_limits::lowest()} returns \tcode{numeric_limits::\brk{}min()}. +\end{itemize} + +\pnum +A type \tcode{I} is \defn{integer-like} +if it models \tcode{Integral} or if it is an integer-class type. +A type \tcode{I} is \defn{signed-integer-like} +if it models \tcode{SignedIntegral} or if it is a signed-integer-class type. +A type \tcode{I} is \defn{unsigned-integer-like} +if it models \tcode{UnsignedIntegral} or +if it is an unsigned-integer-class type. + +\pnum +\tcode{\placeholdernc{is-integer-like}} is \tcode{true} +if and only if \tcode{I} is an integer-like type. +\tcode{\placeholdernc{is-signed-integer-like}} is \tcode{true} +if and only if I is a signed-integer-like type. + \pnum Let \tcode{i} be an object of type \tcode{I}. When \tcode{i} is in the domain of both pre- and post-increment, \tcode{i} is said to be \term{incrementable}. @@ -1773,6 +1882,8 @@ \oldconcept{Destructible} requirements\iref{utility.arg.requirements} and lvalues of type \tcode{X} are swappable\iref{swappable.requirements}, and +\item \tcode{iterator_traits::difference_type} is a signed integer type or \tcode{void}, and + \item the expressions in \tref{iterator} are valid and have the indicated semantics. \end{itemize} @@ -2841,7 +2952,7 @@ \effects If \tcode{R} models \libconcept{SizedRange}, equivalent to: \begin{codeblock} -return ranges::size(r); // \ref{range.prim.size} +return static_cast>(ranges::size(r)); // \ref{range.prim.size} \end{codeblock} Otherwise, equivalent to: \begin{codeblock} diff --git a/source/ranges.tex b/source/ranges.tex index 6661d52988..1092b7b1ca 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -282,6 +282,20 @@ } \end{codeblock} +\pnum +\indextext{make-unigned-like@\exposid{make-unsigned-like}}% +\indextext{make-unigned-like-t@\exposid{make-unsigned-like-t}}% +Within this clause, +for some integer-like type \tcode{X}\iref{iterator.concept.winc}, +\tcode{\placeholdernc{make-unsigned-like-t}(X)} denotes +\tcode{make_unsigned_t} if \tcode{X} is an integer type; +otherwise, it denotes a corresponding unspecified unsigned-integer-like type +of the same width as \tcode{X}. +For an object \tcode{x} of type \tcode{X}, +\tcode{\placeholdernc{make-unsigned-like}(x)} is +\tcode{x} explicitly converted to +\tcode{\placeholdernc{make-unsigned-like-t}(X)}. + \rSec1[range.access]{Range access} \pnum @@ -559,12 +573,12 @@ \item \tcode{\placeholdernc{decay-copy}(E.size())} if it is a valid expression and its type \tcode{I} - models \libconcept{Integral}. + is integer-like\iref{iterator.concept.winc}. \item Otherwise, \tcode{\placeholdernc{decay-copy}(size(E))} if it is a valid expression and its type \tcode{I} - models \libconcept{Integral} + is integer-like with overload resolution performed in a context that includes the declaration: \begin{codeblock} @@ -594,7 +608,7 @@ \pnum \begin{note} Whenever \tcode{ranges::size(E)} is a valid expression, its -type models \libconcept{Integral}. +type is integer-like. \end{note} \rSec2[range.prim.empty]{\tcode{ranges::empty}} @@ -1777,22 +1791,41 @@ type_identity_t bound); constexpr iterator begin() const; - constexpr sentinel end() const; + constexpr auto end() const; constexpr iterator end() const requires Same; - constexpr auto size() const - requires (Same && @\placeholdernc{Advanceable}@) || - (Integral && Integral) || - SizedSentinel - { return bound_ - value_; } + constexpr auto size() const requires @\seebelow@; }; template - requires (!Integral || !Integral || is_signed_v == is_signed_v) - iota_view(W, Bound) -> iota_view; + requires (!@\placeholdernc{is-integer-like}@ || !@\placeholdernc{is-integer-like}@ || + (@\placeholdernc{is-signed-integer-like}@ == @\placeholdernc{is-signed-integer-like}@)) + iota_view(W, Bound) -> iota_view; } \end{codeblock} +\pnum +Let \tcode{\placeholdernc{IOTA_DIFF_T}(W)} be defined as follows: +\begin{itemize} +\item + If \tcode{W} is not an integral type, or + if it is an integral type and \tcode{sizeof(iter_difference_t)} + is greater than \tcode{sizeof(W)}, + then \tcode{\placeholdernc{IOTA_DIFF_T}(W)} denotes \tcode{iter_difference_t}. +\item + Otherwise, \tcode{\placeholdernc{IOTA_DIFF_T}(W)} + is a signed integer type of width greater than the width of \tcode{W} + if such a type exists. +\item + Otherwise, \tcode{\placeholdernc{IOTA_DIFF_T}(W)} + is an unspecified signed-integer-like type\iref{iterator.concept.winc} + of width not less than the width of \tcode{W}. + \begin{note} + It is unspecified + whether this type satisfies \libconcept{WeaklyIncrementable}. + \end{note} +\end{itemize} + \pnum The exposition-only \tcode{\placeholder{Decrementable}} concept is equivalent to: \begin{itemdecl} @@ -1832,39 +1865,39 @@ template concept @\placeholder{Advanceable}@ = @\placeholdernc{Decrementable}@ && StrictTotallyOrdered && - requires(I i, const I j, const iter_difference_t n) { + requires(I i, const I j, const @\placeholdernc{IOTA_DIFF_T}@(I) n) { { i += n } -> Same; { i -= n } -> Same; - { j + n } -> Same; - { n + j } -> Same; - { j - n } -> Same; - { j - j } -> Same>; + I(j + n); + I(n + j); + I(j - n); + { j - j } -> ConvertibleTo<@\placeholdernc{IOTA_DIFF_T}@(I)>; }; \end{itemdecl} +Let \tcode{D} be \tcode{\placeholdernc{IOTA_DIFF_T}(I)}. Let \tcode{a} and \tcode{b} be objects of type \tcode{I} such that \tcode{b} is reachable from \tcode{a} after \tcode{n} applications of \tcode{++a}, -for some value \tcode{n} of type \tcode{iter_difference_t}, -and let \tcode{D} be \tcode{iter_difference_t}. +for some value \tcode{n} of type \tcode{D}. \tcode{I} models \tcode{\placeholdernc{Advanceable}} only if \begin{itemize} \item \tcode{(a += n)} is equal to \tcode{b}. \item \tcode{addressof(a += n)} is equal to \tcode{addressof(a)}. -\item \tcode{(a + n)} is equal to \tcode{(a += n)}. +\item \tcode{I(a + n)} is equal to \tcode{(a += n)}. \item For any two positive values \tcode{x} and \tcode{y} of type \tcode{D}, - if \tcode{(a + D(x + y))} is well-defined, then - \tcode{(a + D(x + y))} is equal to \tcode{((a + x) + y)}. -\item \tcode{(a + D(0))} is equal to \tcode{a}. -\item If \tcode{(a + D(n - 1))} is well-defined, then - \tcode{(a + n)} is equal to \tcode{++(a + D(n - 1))}. + if \tcode{I(a + D(x + y))} is well-defined, then + \tcode{I(a + D(x + y))} is equal to \tcode{I(I(a + x) + y)}. +\item \tcode{I(a + D(0))} is equal to \tcode{a}. +\item If \tcode{I(a + D(n - 1))} is well-defined, then + \tcode{I(a + n)} is equal to \tcode{[](I c) { return ++c; }(I(a + D(n - 1)))}. \item \tcode{(b += -n)} is equal to \tcode{a}. \item \tcode{(b -= n)} is equal to \tcode{a}. \item \tcode{addressof(b -= n)} is equal to \tcode{addressof(b)}. -\item \tcode{(b - n)} is equal to \tcode{(b -= n)}. -\item \tcode{(b - a)} is equal to \tcode{n}. -\item \tcode{(a - b)} is equal to \tcode{-n}. +\item \tcode{I(b - n)} is equal to \tcode{(b -= n)}. +\item \tcode{D(b - a)} is equal to \tcode{n}. +\item \tcode{D(a - b)} is equal to \tcode{D(-n)}. \item \tcode{bool(a <= b)} is \tcode{true}. \end{itemize} @@ -1893,6 +1926,8 @@ \expects \tcode{Bound} denotes \tcode{unreachable_sentinel_t} or \tcode{bound} is reachable from \tcode{value}. +When \tcode{W} and \tcode{Bound} model \libconcept{StrictTotallyOrderedWith}, +then \tcode{bool(value <= bound)} is \tcode{true}. \pnum \effects Initializes \tcode{value_} with \tcode{value} and @@ -1911,12 +1946,18 @@ \indexlibrary{\idxcode{end}!\idxcode{iota_view}}% \begin{itemdecl} -constexpr sentinel end() const; +constexpr auto end() const; \end{itemdecl} \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return sentinel\{bound_\};} +\effects Equivalent to: +\begin{codeblock} +if constexpr (Same) + return unreachable_sentinel; +else + return sentinel{bound_}; +\end{codeblock} \end{itemdescr} \indexlibrary{\idxcode{end}!\idxcode{iota_view}}% @@ -1929,6 +1970,33 @@ \effects Equivalent to: \tcode{return iterator\{bound_\};} \end{itemdescr} +\indexlibrarymember{size}{iota_view}% +\begin{itemdecl} +constexpr auto size() const requires @\seebelow@; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +if constexpr (@\placeholdernc{is-integer-like}@ && @\placeholdernc{is-integer-like}@) + return (value_ < 0) + ? ((bound_ < 0) + ? @\placeholdernc{make-unsigned-like}@(-value_) - @\placeholdernc{make-unsigned-like}@(-bound_) + : @\placeholdernc{make-unsigned-like}@(bound_) + @\placeholdernc{make-unsigned-like}@(-value_)) + : @\placeholdernc{make-unsigned-like}@(bound_) - @\placeholdernc{make-unsigned-like}@(value_); +else + return @\placeholdernc{make-unsigned-like}(bound_ - value_); +\end{codeblock} + +\pnum +\remarks The expression in the \grammarterm{requires-clause} is equivalent to +\begin{codeblock} +(Same && Advanceable) || (Integral && Integral) || + SizedSentinel +\end{codeblock} +\end{itemdescr} + \rSec3[range.iota.iterator]{Class \tcode{iota_view::iterator}} \begin{codeblock} @@ -1940,7 +2008,7 @@ public: using iterator_category = @\seebelow@; using value_type = W; - using difference_type = iter_difference_t; + using difference_type = @\placeholdernc{IOTA_DIFF_T}@(W); iterator() = default; constexpr explicit iterator(W value); @@ -2110,7 +2178,14 @@ \pnum \effects Equivalent to: \begin{codeblock} -value_ += n; +if constexpr (@\placeholdernc{is-integer-like}@ && !@\placeholdernc{is-signed-integer-like}@) { + if (n >= difference_type(0)) + value_ += static_cast(n); + else + value_ -= static_cast(-n); +} else { + value_ += n; +} return *this; \end{codeblock} \end{itemdescr} @@ -2125,7 +2200,14 @@ \pnum \effects Equivalent to: \begin{codeblock} -value_ -= n; +if constexpr (@\placeholdernc{is-integer-like}@ && !@\placeholdernc{is-signed-integer-like}@) { + if (n >= difference_type(0)) + value_ -= static_cast(n); + else + value_ += static_cast(-n); +} else { + value_ -= n; +} return *this; \end{codeblock} \end{itemdescr} @@ -2138,7 +2220,7 @@ \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return value_ + n;} +\effects Equivalent to: \tcode{return W(value_ + n);} \end{itemdescr} \indexlibrary{\idxcode{operator==}!\idxcode{iota_view::iterator}} @@ -2217,7 +2299,7 @@ \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return iterator\{i.value_ + n\};} +\effects Equivalent to: \tcode{return i += n;} \end{itemdescr} \indexlibrary{\idxcode{operator+}!\idxcode{iota_view::iterator}} @@ -2239,7 +2321,7 @@ \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return i + -n;} +\effects Equivalent to: \tcode{return i -= n;} \end{itemdescr} \indexlibrary{\idxcode{operator-}!\idxcode{iota_view::iterator}} @@ -2250,7 +2332,20 @@ \begin{itemdescr} \pnum -\effects Equivalent to: \tcode{return x.value_ - y.value_;} +\effects Equivalent to: +\begin{codeblock} +using D = difference_type; +if constexpr (@\placeholder{is-integer-like}@) { + if constexpr (@\placeholder{is-signed-integer-like}@) + return D(D(x.value_) - D(y.value_)); + else + return (y.value_ > x.value_) + ? D(-D(y.value_ - x.value_)) + : D(x.value_ - y.value_); +} else { + return x.value_ - y.value_; +} +\end{codeblock} \end{itemdescr} \rSec3[range.iota.sentinel]{Class \tcode{iota_view::sentinel}} @@ -2266,6 +2361,11 @@ constexpr explicit sentinel(Bound bound); friend constexpr bool operator==(const iterator& x, const sentinel& y); + + friend constexpr iter_difference_t operator-(const iterator& x, const sentinel& y) + requires SizedSentinel; + friend constexpr iter_difference_t operator-(const sentinel& x, const iterator& y) + requires SizedSentinel; }; } \end{codeblock} @@ -2290,6 +2390,26 @@ \effects Equivalent to: \tcode{return x.value_ == y.bound_;} \end{itemdescr} +\begin{itemdecl} +friend constexpr iter_difference_t operator-(const iterator& x, const sentinel& y) + requires SizedSentinel; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return x.value_ - y.bound_;} +\end{itemdescr} + +\begin{itemdecl} +friend constexpr iter_difference_t operator-(const sentinel& x, const iterator& y) + requires SizedSentinel; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return -(y - x);} +\end{itemdescr} + \rSec3[range.iota.adaptor]{\tcode{view::iota}} \pnum From 7698c3dc28251540b4a4733cc4a6b3f6942f13ed Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 00:40:47 -0700 Subject: [PATCH 146/312] [range.iota.view] Rename IOTA_DIFF_T to the preferred IOTA-DIFF-T. --- source/ranges.tex | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/source/ranges.tex b/source/ranges.tex index 1092b7b1ca..971287ec61 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1805,19 +1805,19 @@ \end{codeblock} \pnum -Let \tcode{\placeholdernc{IOTA_DIFF_T}(W)} be defined as follows: +Let \tcode{\placeholdernc{IOTA-DIFF-T}(W)} be defined as follows: \begin{itemize} \item If \tcode{W} is not an integral type, or if it is an integral type and \tcode{sizeof(iter_difference_t)} is greater than \tcode{sizeof(W)}, - then \tcode{\placeholdernc{IOTA_DIFF_T}(W)} denotes \tcode{iter_difference_t}. + then \tcode{\placeholdernc{IOTA-DIFF-T}(W)} denotes \tcode{iter_difference_t}. \item - Otherwise, \tcode{\placeholdernc{IOTA_DIFF_T}(W)} + Otherwise, \tcode{\placeholdernc{IOTA-DIFF-T}(W)} is a signed integer type of width greater than the width of \tcode{W} if such a type exists. \item - Otherwise, \tcode{\placeholdernc{IOTA_DIFF_T}(W)} + Otherwise, \tcode{\placeholdernc{IOTA-DIFF-T}(W)} is an unspecified signed-integer-like type\iref{iterator.concept.winc} of width not less than the width of \tcode{W}. \begin{note} @@ -1865,17 +1865,17 @@ template concept @\placeholder{Advanceable}@ = @\placeholdernc{Decrementable}@ && StrictTotallyOrdered && - requires(I i, const I j, const @\placeholdernc{IOTA_DIFF_T}@(I) n) { + requires(I i, const I j, const @\placeholdernc{IOTA-DIFF-T}@(I) n) { { i += n } -> Same; { i -= n } -> Same; I(j + n); I(n + j); I(j - n); - { j - j } -> ConvertibleTo<@\placeholdernc{IOTA_DIFF_T}@(I)>; + { j - j } -> ConvertibleTo<@\placeholdernc{IOTA-DIFF-T}@(I)>; }; \end{itemdecl} -Let \tcode{D} be \tcode{\placeholdernc{IOTA_DIFF_T}(I)}. +Let \tcode{D} be \tcode{\placeholdernc{IOTA-DIFF-T}(I)}. Let \tcode{a} and \tcode{b} be objects of type \tcode{I} such that \tcode{b} is reachable from \tcode{a} after \tcode{n} applications of \tcode{++a}, @@ -1891,7 +1891,7 @@ \tcode{I(a + D(x + y))} is equal to \tcode{I(I(a + x) + y)}. \item \tcode{I(a + D(0))} is equal to \tcode{a}. \item If \tcode{I(a + D(n - 1))} is well-defined, then - \tcode{I(a + n)} is equal to \tcode{[](I c) { return ++c; }(I(a + D(n - 1)))}. + \tcode{I(a + n)} is equal to \tcode{[](I c) \{ return ++c; \}(I(a + D(n - 1)))}. \item \tcode{(b += -n)} is equal to \tcode{a}. \item \tcode{(b -= n)} is equal to \tcode{a}. \item \tcode{addressof(b -= n)} is equal to \tcode{addressof(b)}. @@ -2008,7 +2008,7 @@ public: using iterator_category = @\seebelow@; using value_type = W; - using difference_type = @\placeholdernc{IOTA_DIFF_T}@(W); + using difference_type = @\placeholdernc{IOTA-DIFF-T}@(W); iterator() = default; constexpr explicit iterator(W value); From 5a0eaa95314aae7eb7a87c1b244aea334e17cbaa Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Wed, 24 Jul 2019 19:00:51 -0700 Subject: [PATCH 147/312] P1004R2 Making std::vector constexpr [vector.special] Could not apply the change to this section; the section no longer exists, and its itemdecl for swap has been removed. std::vector operators <, >, <=, >=, != have been removed. constexpr was added to operator<=> instead to preserve the intent. Fixes #3030. --- source/containers.tex | 340 +++++++++++++++++++++--------------------- source/support.tex | 6 +- 2 files changed, 177 insertions(+), 169 deletions(-) diff --git a/source/containers.tex b/source/containers.tex index f03be4e571..085159a376 100644 --- a/source/containers.tex +++ b/source/containers.tex @@ -3212,19 +3212,19 @@ template> class vector; template - bool operator==(const vector& x, const vector& y); + constexpr bool operator==(const vector& x, const vector& y); template - @\placeholder{synth-three-way-result}@ operator<=>(const vector& x, - @\itcorr@ const vector& y); + constexpr @\placeholder{synth-three-way-result}@ operator<=>(const vector& x, + @\itcorr@ const vector& y); template - void swap(vector& x, vector& y) + constexpr void swap(vector& x, vector& y) noexcept(noexcept(x.swap(y))); template - void erase(vector& c, const U& value); + constexpr void erase(vector& c, const U& value); template - void erase_if(vector& c, Predicate pred); + constexpr void erase_if(vector& c, Predicate pred); // \ref{vector.bool}, class \tcode{vector} template class vector; @@ -5371,6 +5371,10 @@ that are not described in one of these tables or for operations where there is additional semantic information. +\pnum +The types \tcode{iterator} and \tcode{const_iterator} meet +the constexpr iterator requirements\iref{iterator.requirements.general}. + \begin{codeblock} namespace std { template> @@ -5391,87 +5395,88 @@ using const_reverse_iterator = std::reverse_iterator; // \ref{vector.cons}, construct/copy/destroy - vector() noexcept(noexcept(Allocator())) : vector(Allocator()) { } - explicit vector(const Allocator&) noexcept; - explicit vector(size_type n, const Allocator& = Allocator()); - vector(size_type n, const T& value, const Allocator& = Allocator()); + constexpr vector() noexcept(noexcept(Allocator())) : vector(Allocator()) { } + constexpr explicit vector(const Allocator&) noexcept; + constexpr explicit vector(size_type n, const Allocator& = Allocator()); + constexpr vector(size_type n, const T& value, const Allocator& = Allocator()); template - vector(InputIterator first, InputIterator last, const Allocator& = Allocator()); - vector(const vector& x); - vector(vector&&) noexcept; - vector(const vector&, const Allocator&); - vector(vector&&, const Allocator&); - vector(initializer_list, const Allocator& = Allocator()); - ~vector(); - vector& operator=(const vector& x); - vector& operator=(vector&& x) + constexpr vector(InputIterator first, InputIterator last, const Allocator& = Allocator()); + constexpr vector(const vector& x); + constexpr vector(vector&&) noexcept; + constexpr vector(const vector&, const Allocator&); + constexpr vector(vector&&, const Allocator&); + constexpr vector(initializer_list, const Allocator& = Allocator()); + constexpr ~vector(); + constexpr vector& operator=(const vector& x); + constexpr vector& operator=(vector&& x) noexcept(allocator_traits::propagate_on_container_move_assignment::value || allocator_traits::is_always_equal::value); - vector& operator=(initializer_list); + constexpr vector& operator=(initializer_list); template - void assign(InputIterator first, InputIterator last); - void assign(size_type n, const T& u); - void assign(initializer_list); - allocator_type get_allocator() const noexcept; + constexpr void assign(InputIterator first, InputIterator last); + constexpr void assign(size_type n, const T& u); + constexpr void assign(initializer_list); + constexpr allocator_type get_allocator() const noexcept; // iterators - iterator begin() noexcept; - const_iterator begin() const noexcept; - iterator end() noexcept; - const_iterator end() const noexcept; - reverse_iterator rbegin() noexcept; - const_reverse_iterator rbegin() const noexcept; - reverse_iterator rend() noexcept; - const_reverse_iterator rend() const noexcept; + constexpr iterator begin() noexcept; + constexpr const_iterator begin() const noexcept; + constexpr iterator end() noexcept; + constexpr const_iterator end() const noexcept; + constexpr reverse_iterator rbegin() noexcept; + constexpr const_reverse_iterator rbegin() const noexcept; + constexpr reverse_iterator rend() noexcept; + constexpr const_reverse_iterator rend() const noexcept; - const_iterator cbegin() const noexcept; - const_iterator cend() const noexcept; - const_reverse_iterator crbegin() const noexcept; - const_reverse_iterator crend() const noexcept; + constexpr const_iterator cbegin() const noexcept; + constexpr const_iterator cend() const noexcept; + constexpr const_reverse_iterator crbegin() const noexcept; + constexpr const_reverse_iterator crend() const noexcept; // \ref{vector.capacity}, capacity - [[nodiscard]] bool empty() const noexcept; - size_type size() const noexcept; - size_type max_size() const noexcept; - size_type capacity() const noexcept; - void resize(size_type sz); - void resize(size_type sz, const T& c); - void reserve(size_type n); - void shrink_to_fit(); + [[nodiscard]] constexpr bool empty() const noexcept; + constexpr size_type size() const noexcept; + constexpr size_type max_size() const noexcept; + constexpr size_type capacity() const noexcept; + constexpr void resize(size_type sz); + constexpr void resize(size_type sz, const T& c); + constexpr void reserve(size_type n); + constexpr void shrink_to_fit(); // element access - reference operator[](size_type n); - const_reference operator[](size_type n) const; - const_reference at(size_type n) const; - reference at(size_type n); - reference front(); - const_reference front() const; - reference back(); - const_reference back() const; + constexpr reference operator[](size_type n); + constexpr const_reference operator[](size_type n) const; + constexpr const_reference at(size_type n) const; + constexpr reference at(size_type n); + constexpr reference front(); + constexpr const_reference front() const; + constexpr reference back(); + constexpr const_reference back() const; // \ref{vector.data}, data access - T* data() noexcept; - const T* data() const noexcept; + constexpr T* data() noexcept; + constexpr const T* data() const noexcept; // \ref{vector.modifiers}, modifiers - template reference emplace_back(Args&&... args); - void push_back(const T& x); - void push_back(T&& x); - void pop_back(); - - template iterator emplace(const_iterator position, Args&&... args); - iterator insert(const_iterator position, const T& x); - iterator insert(const_iterator position, T&& x); - iterator insert(const_iterator position, size_type n, const T& x); + template constexpr reference emplace_back(Args&&... args); + constexpr void push_back(const T& x); + constexpr void push_back(T&& x); + constexpr void pop_back(); + + template constexpr iterator emplace(const_iterator position, Args&&... args); + constexpr iterator insert(const_iterator position, const T& x); + constexpr iterator insert(const_iterator position, T&& x); + constexpr iterator insert(const_iterator position, size_type n, const T& x); template - iterator insert(const_iterator position, InputIterator first, InputIterator last); - iterator insert(const_iterator position, initializer_list il); - iterator erase(const_iterator position); - iterator erase(const_iterator first, const_iterator last); - void swap(vector&) + constexpr iterator insert(const_iterator position, + InputIterator first, InputIterator last); + constexpr iterator insert(const_iterator position, initializer_list il); + constexpr iterator erase(const_iterator position); + constexpr iterator erase(const_iterator first, const_iterator last); + constexpr void swap(vector&) noexcept(allocator_traits::propagate_on_container_swap::value || allocator_traits::is_always_equal::value); - void clear() noexcept; + constexpr void clear() noexcept; }; template>> @@ -5480,7 +5485,7 @@ // swap template - void swap(vector& x, vector& y) + constexpr void swap(vector& x, vector& y) noexcept(noexcept(x.swap(y))); } \end{codeblock}% @@ -5498,7 +5503,7 @@ \indexlibrary{\idxcode{vector}!constructor} \begin{itemdecl} -explicit vector(const Allocator&) noexcept; +constexpr explicit vector(const Allocator&) noexcept; \end{itemdecl} \begin{itemdescr} @@ -5512,7 +5517,7 @@ \indexlibrary{\idxcode{vector}!constructor} \begin{itemdecl} -explicit vector(size_type n, const Allocator& = Allocator()); +constexpr explicit vector(size_type n, const Allocator& = Allocator()); \end{itemdecl} \begin{itemdescr} @@ -5529,8 +5534,8 @@ \indexlibrary{\idxcode{vector}!constructor} \begin{itemdecl} -vector(size_type n, const T& value, - const Allocator& = Allocator()); +constexpr vector(size_type n, const T& value, + const Allocator& = Allocator()); \end{itemdecl} \begin{itemdescr} @@ -5549,8 +5554,8 @@ \indexlibrary{\idxcode{vector}!constructor} \begin{itemdecl} template - vector(InputIterator first, InputIterator last, - const Allocator& = Allocator()); + constexpr vector(InputIterator first, InputIterator last, + const Allocator& = Allocator()); \end{itemdecl} \begin{itemdescr} @@ -5583,7 +5588,7 @@ \indexlibrary{\idxcode{capacity}!\idxcode{vector}}% \begin{itemdecl} -size_type capacity() const noexcept; +constexpr size_type capacity() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -5598,7 +5603,7 @@ \indexlibrary{\idxcode{reserve}!\idxcode{vector}}% \begin{itemdecl} -void reserve(size_type n); +constexpr void reserve(size_type n); \end{itemdecl} \begin{itemdescr} @@ -5650,7 +5655,7 @@ \indexlibrary{\idxcode{shrink_to_fit}!\idxcode{vector}}% \begin{itemdecl} -void shrink_to_fit(); +constexpr void shrink_to_fit(); \end{itemdecl} \begin{itemdescr} @@ -5682,7 +5687,7 @@ \indexlibrary{\idxcode{swap}!\idxcode{vector}}% \begin{itemdecl} -void swap(vector& x) +constexpr void swap(vector& x) noexcept(allocator_traits::propagate_on_container_swap::value || allocator_traits::is_always_equal::value); \end{itemdecl} @@ -5703,7 +5708,7 @@ \indexlibrary{\idxcode{resize}!\idxcode{vector}}% \begin{itemdecl} -void resize(size_type sz); +constexpr void resize(size_type sz); \end{itemdecl} \begin{itemdescr} @@ -5723,7 +5728,7 @@ \indexlibrary{\idxcode{resize}!\idxcode{vector}}% \begin{itemdecl} -void resize(size_type sz, const T& c); +constexpr void resize(size_type sz, const T& c); \end{itemdecl} \begin{itemdescr} @@ -5744,8 +5749,8 @@ \indexlibrary{\idxcode{data}!\idxcode{vector}}% \begin{itemdecl} -T* data() noexcept; -const T* data() const noexcept; +constexpr T* data() noexcept; +constexpr const T* data() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -5763,17 +5768,17 @@ \indexlibrary{\idxcode{insert}!\idxcode{vector}}% \begin{itemdecl} -iterator insert(const_iterator position, const T& x); -iterator insert(const_iterator position, T&& x); -iterator insert(const_iterator position, size_type n, const T& x); +constexpr iterator insert(const_iterator position, const T& x); +constexpr iterator insert(const_iterator position, T&& x); +constexpr iterator insert(const_iterator position, size_type n, const T& x); template - iterator insert(const_iterator position, InputIterator first, InputIterator last); -iterator insert(const_iterator position, initializer_list); + constexpr iterator insert(const_iterator position, InputIterator first, InputIterator last); +constexpr iterator insert(const_iterator position, initializer_list); -template reference emplace_back(Args&&... args); -template iterator emplace(const_iterator position, Args&&... args); -void push_back(const T& x); -void push_back(T&& x); +template constexpr reference emplace_back(Args&&... args); +template constexpr iterator emplace(const_iterator position, Args&&... args); +constexpr void push_back(const T& x); +constexpr void push_back(T&& x); \end{itemdecl} \begin{itemdescr} @@ -5810,9 +5815,9 @@ \indexlibrary{\idxcode{erase}!\idxcode{vector}}% \begin{itemdecl} -iterator erase(const_iterator position); -iterator erase(const_iterator first, const_iterator last); -void pop_back(); +constexpr iterator erase(const_iterator position); +constexpr iterator erase(const_iterator first, const_iterator last); +constexpr void pop_back(); \end{itemdecl} \begin{itemdescr} @@ -5839,7 +5844,7 @@ \indexlibrary{\idxcode{erase}!\idxcode{vector}}% \begin{itemdecl} template - void erase(vector& c, const U& value); + constexpr void erase(vector& c, const U& value); \end{itemdecl} \begin{itemdescr} @@ -5851,7 +5856,7 @@ \indexlibrary{\idxcode{erase_if}!\idxcode{vector}}% \begin{itemdecl} template - void erase_if(vector& c, Predicate pred); + constexpr void erase_if(vector& c, Predicate pred); \end{itemdecl} \begin{itemdescr} @@ -5889,89 +5894,90 @@ // bit reference class reference { friend class vector; - reference() noexcept; + constexpr reference() noexcept; public: - reference(const reference&) = default; - ~reference(); - operator bool() const noexcept; - reference& operator=(const bool x) noexcept; - reference& operator=(const reference& x) noexcept; - void flip() noexcept; // flips the bit + constexpr reference(const reference&) = default; + constexpr ~reference(); + constexpr operator bool() const noexcept; + constexpr reference& operator=(const bool x) noexcept; + constexpr reference& operator=(const reference& x) noexcept; + constexpr void flip() noexcept; // flips the bit }; // construct/copy/destroy - vector() : vector(Allocator()) { } - explicit vector(const Allocator&); - explicit vector(size_type n, const Allocator& = Allocator()); - vector(size_type n, const bool& value, const Allocator& = Allocator()); + constexpr vector() : vector(Allocator()) { } + constexpr explicit vector(const Allocator&); + constexpr explicit vector(size_type n, const Allocator& = Allocator()); + constexpr vector(size_type n, const bool& value, const Allocator& = Allocator()); template - vector(InputIterator first, InputIterator last, const Allocator& = Allocator()); - vector(const vector& x); - vector(vector&& x); - vector(const vector&, const Allocator&); - vector(vector&&, const Allocator&); - vector(initializer_list, const Allocator& = Allocator())); - ~vector(); - vector& operator=(const vector& x); - vector& operator=(vector&& x); - vector& operator=(initializer_list); + constexpr vector(InputIterator first, InputIterator last, const Allocator& = Allocator()); + constexpr vector(const vector& x); + constexpr vector(vector&& x); + constexpr vector(const vector&, const Allocator&); + constexpr vector(vector&&, const Allocator&); + constexpr vector(initializer_list, const Allocator& = Allocator())); + constexpr ~vector(); + constexpr vector& operator=(const vector& x); + constexpr vector& operator=(vector&& x); + constexpr vector& operator=(initializer_list); template - void assign(InputIterator first, InputIterator last); - void assign(size_type n, const bool& t); - void assign(initializer_list); - allocator_type get_allocator() const noexcept; + constexpr void assign(InputIterator first, InputIterator last); + constexpr void assign(size_type n, const bool& t); + constexpr void assign(initializer_list); + constexpr allocator_type get_allocator() const noexcept; // iterators - iterator begin() noexcept; - const_iterator begin() const noexcept; - iterator end() noexcept; - const_iterator end() const noexcept; - reverse_iterator rbegin() noexcept; - const_reverse_iterator rbegin() const noexcept; - reverse_iterator rend() noexcept; - const_reverse_iterator rend() const noexcept; + constexpr iterator begin() noexcept; + constexpr const_iterator begin() const noexcept; + constexpr iterator end() noexcept; + constexpr const_iterator end() const noexcept; + constexpr reverse_iterator rbegin() noexcept; + constexpr const_reverse_iterator rbegin() const noexcept; + constexpr reverse_iterator rend() noexcept; + constexpr const_reverse_iterator rend() const noexcept; - const_iterator cbegin() const noexcept; - const_iterator cend() const noexcept; - const_reverse_iterator crbegin() const noexcept; - const_reverse_iterator crend() const noexcept; + constexpr const_iterator cbegin() const noexcept; + constexpr const_iterator cend() const noexcept; + constexpr const_reverse_iterator crbegin() const noexcept; + constexpr const_reverse_iterator crend() const noexcept; // capacity - [[nodiscard]] bool empty() const noexcept; - size_type size() const noexcept; - size_type max_size() const noexcept; - size_type capacity() const noexcept; - void resize(size_type sz, bool c = false); - void reserve(size_type n); - void shrink_to_fit(); + [[nodiscard]] constexpr bool empty() const noexcept; + constexpr size_type size() const noexcept; + constexpr size_type max_size() const noexcept; + constexpr size_type capacity() const noexcept; + constexpr void resize(size_type sz, bool c = false); + constexpr void reserve(size_type n); + constexpr void shrink_to_fit(); // element access - reference operator[](size_type n); - const_reference operator[](size_type n) const; - const_reference at(size_type n) const; - reference at(size_type n); - reference front(); - const_reference front() const; - reference back(); - const_reference back() const; + constexpr reference operator[](size_type n); + constexpr const_reference operator[](size_type n) const; + constexpr const_reference at(size_type n) const; + constexpr reference at(size_type n); + constexpr reference front(); + constexpr const_reference front() const; + constexpr reference back(); + constexpr const_reference back() const; // modifiers - template reference emplace_back(Args&&... args); - void push_back(const bool& x); - void pop_back(); - template iterator emplace(const_iterator position, Args&&... args); - iterator insert(const_iterator position, const bool& x); - iterator insert(const_iterator position, size_type n, const bool& x); + template constexpr reference emplace_back(Args&&... args); + constexpr void push_back(const bool& x); + constexpr void pop_back(); + template constexpr iterator emplace(const_iterator position, Args&&... args); + constexpr iterator insert(const_iterator position, const bool& x); + constexpr iterator insert(const_iterator position, size_type n, const bool& x); template - iterator insert(const_iterator position, InputIterator first, InputIterator last); - iterator insert(const_iterator position, initializer_list il); - - iterator erase(const_iterator position); - iterator erase(const_iterator first, const_iterator last); - void swap(vector&); - static void swap(reference x, reference y) noexcept; - void flip() noexcept; // flips all bits - void clear() noexcept; + constexpr iterator insert(const_iterator position, + InputIterator first, InputIterator last); + constexpr iterator insert(const_iterator position, initializer_list il); + + constexpr iterator erase(const_iterator position); + constexpr iterator erase(const_iterator first, const_iterator last); + constexpr void swap(vector&); + constexpr static void swap(reference x, reference y) noexcept; + constexpr void flip() noexcept; // flips all bits + constexpr void clear() noexcept; }; } \end{codeblock}% @@ -5999,7 +6005,7 @@ \indexlibrarymember{flip}{vector}% \begin{itemdecl} -void flip() noexcept; +constexpr void flip() noexcept; \end{itemdecl} \begin{itemdescr} @@ -6009,7 +6015,7 @@ \indexlibrarymember{swap}{vector}% \begin{itemdecl} -static void swap(reference x, reference y) noexcept; +constexpr static void swap(reference x, reference y) noexcept; \end{itemdecl} \begin{itemdescr} diff --git a/source/support.tex b/source/support.tex index e61b5c1486..182f8b613e 100644 --- a/source/support.tex +++ b/source/support.tex @@ -582,12 +582,14 @@ \defnlibxname{cpp_lib_constexpr} & \tcode{201811L} & any C++ library header from \tref{headers.cpp} or any C++ header for C library facilities from \tref{headers.cpp.c} \\ \rowsep +\defnlibxname{cpp_lib_constexpr_dynamic_alloc} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_constexpr_invoke} & \tcode{201907L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_constexpr_swap_algorithms} & \tcode{201806L} & \tcode{} \\ \rowsep -\defnlibxname{cpp_lib_constexpr_dynamic_alloc} & \tcode{201907L} & - \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_constexpr_vector} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_destroying_delete} & \tcode{201806L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_enable_shared_from_this} & \tcode{201603L} & From e5986dbfe1d9159cc9719fdc48b5c9e950691ee0 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Wed, 24 Jul 2019 18:00:52 -0700 Subject: [PATCH 148/312] P0980R1 Making std::string constexpr [string.find]: Added \indexlibrarymember references to the variations of find* described via the placeholder F. std::basic_string's operators !=, <, >, <=, and >= have been removed. Instead, add constexpr to <=> to match the intent. Fixes #3031. --- source/strings.tex | 759 +++++++++++++++++++++++---------------------- source/support.tex | 2 + 2 files changed, 395 insertions(+), 366 deletions(-) diff --git a/source/strings.tex b/source/strings.tex index b4ebc3fbbc..718d27f744 100644 --- a/source/strings.tex +++ b/source/strings.tex @@ -539,73 +539,75 @@ class basic_string; template - basic_string + constexpr basic_string operator+(const basic_string& lhs, const basic_string& rhs); template - basic_string + constexpr basic_string operator+(basic_string&& lhs, const basic_string& rhs); template - basic_string + constexpr basic_string operator+(const basic_string& lhs, basic_string&& rhs); template - basic_string + constexpr basic_string operator+(basic_string&& lhs, basic_string&& rhs); template - basic_string + constexpr basic_string operator+(const charT* lhs, const basic_string& rhs); template - basic_string + constexpr basic_string operator+(const charT* lhs, basic_string&& rhs); template - basic_string + constexpr basic_string operator+(charT lhs, const basic_string& rhs); template - basic_string + constexpr basic_string operator+(charT lhs, basic_string&& rhs); template - basic_string + constexpr basic_string operator+(const basic_string& lhs, const charT* rhs); template - basic_string + constexpr basic_string operator+(basic_string&& lhs, const charT* rhs); template - basic_string + constexpr basic_string operator+(const basic_string& lhs, charT rhs); template - basic_string + constexpr basic_string operator+(basic_string&& lhs, charT rhs); template - bool operator==(const basic_string& lhs, - const basic_string& rhs) noexcept; + constexpr bool + operator==(const basic_string& lhs, + const basic_string& rhs) noexcept; template - bool operator==(const basic_string& lhs, - const charT* rhs); + constexpr bool operator==(const basic_string& lhs, + const charT* rhs); template - @\seebelow@ operator<=>(const basic_string& lhs, - @\itcorr@ const basic_string& rhs) noexcept; + constexpr @\seebelow@ operator<=>(const basic_string& lhs, + @\itcorr@ const basic_string& rhs) noexcept; template - @\seebelow@ operator<=>(const basic_string& lhs, - @\itcorr@ const charT* rhs); + constexpr @\seebelow@ operator<=>(const basic_string& lhs, + @\itcorr@ const charT* rhs); // \ref{string.special}, swap template - void swap(basic_string& lhs, - basic_string& rhs) - noexcept(noexcept(lhs.swap(rhs))); + constexpr void + swap(basic_string& lhs, + basic_string& rhs) + noexcept(noexcept(lhs.swap(rhs))); // \ref{string.io}, inserters and extractors template @@ -712,11 +714,11 @@ inline namespace literals { inline namespace string_literals { // \ref{basic.string.literals}, suffix for \tcode{basic_string} literals - string operator""s(const char* str, size_t len); - u8string operator""s(const char8_t* str, size_t len); - u16string operator""s(const char16_t* str, size_t len); - u32string operator""s(const char32_t* str, size_t len); - wstring operator""s(const wchar_t* str, size_t len); + constexpr string operator""s(const char* str, size_t len); + constexpr u8string operator""s(const char8_t* str, size_t len); + constexpr u16string operator""s(const char16_t* str, size_t len); + constexpr u32string operator""s(const char32_t* str, size_t len); + constexpr wstring operator""s(const wchar_t* str, size_t len); } } } @@ -787,233 +789,245 @@ static const size_type npos = -1; // \ref{string.cons}, construct/copy/destroy - basic_string() noexcept(noexcept(Allocator())) : basic_string(Allocator()) { } - explicit basic_string(const Allocator& a) noexcept; - basic_string(const basic_string& str); - basic_string(basic_string&& str) noexcept; - basic_string(const basic_string& str, size_type pos, const Allocator& a = Allocator()); - basic_string(const basic_string& str, size_type pos, size_type n, - const Allocator& a = Allocator()); + constexpr basic_string() noexcept(noexcept(Allocator())) : basic_string(Allocator()) { } + constexpr explicit basic_string(const Allocator& a) noexcept; + constexpr basic_string(const basic_string& str); + constexpr basic_string(basic_string&& str) noexcept; + constexpr basic_string(const basic_string& str, size_type pos, + const Allocator& a = Allocator()); + constexpr basic_string(const basic_string& str, size_type pos, size_type n, + const Allocator& a = Allocator()); template - basic_string(const T& t, size_type pos, size_type n, const Allocator& a = Allocator()); + constexpr basic_string(const T& t, size_type pos, size_type n, + const Allocator& a = Allocator()); template - explicit basic_string(const T& t, const Allocator& a = Allocator()); - basic_string(const charT* s, size_type n, const Allocator& a = Allocator()); - basic_string(const charT* s, const Allocator& a = Allocator()); - basic_string(size_type n, charT c, const Allocator& a = Allocator()); + constexpr explicit basic_string(const T& t, const Allocator& a = Allocator()); + constexpr basic_string(const charT* s, size_type n, const Allocator& a = Allocator()); + constexpr basic_string(const charT* s, const Allocator& a = Allocator()); + constexpr basic_string(size_type n, charT c, const Allocator& a = Allocator()); template - basic_string(InputIterator begin, InputIterator end, const Allocator& a = Allocator()); - basic_string(initializer_list, const Allocator& = Allocator()); - basic_string(const basic_string&, const Allocator&); - basic_string(basic_string&&, const Allocator&); - - ~basic_string(); - basic_string& operator=(const basic_string& str); - basic_string& operator=(basic_string&& str) + constexpr basic_string(InputIterator begin, InputIterator end, + const Allocator& a = Allocator()); + constexpr basic_string(initializer_list, const Allocator& = Allocator()); + constexpr basic_string(const basic_string&, const Allocator&); + constexpr basic_string(basic_string&&, const Allocator&); + constexpr ~basic_string(); + + constexpr basic_string& operator=(const basic_string& str); + constexpr basic_string& operator=(basic_string&& str) noexcept(allocator_traits::propagate_on_container_move_assignment::value || allocator_traits::is_always_equal::value); template - basic_string& operator=(const T& t); - basic_string& operator=(const charT* s); - basic_string& operator=(charT c); - basic_string& operator=(initializer_list); + constexpr basic_string& operator=(const T& t); + constexpr basic_string& operator=(const charT* s); + constexpr basic_string& operator=(charT c); + constexpr basic_string& operator=(initializer_list); // \ref{string.iterators}, iterators - iterator begin() noexcept; - const_iterator begin() const noexcept; - iterator end() noexcept; - const_iterator end() const noexcept; + constexpr iterator begin() noexcept; + constexpr const_iterator begin() const noexcept; + constexpr iterator end() noexcept; + constexpr const_iterator end() const noexcept; - reverse_iterator rbegin() noexcept; - const_reverse_iterator rbegin() const noexcept; - reverse_iterator rend() noexcept; - const_reverse_iterator rend() const noexcept; + constexpr reverse_iterator rbegin() noexcept; + constexpr const_reverse_iterator rbegin() const noexcept; + constexpr reverse_iterator rend() noexcept; + constexpr const_reverse_iterator rend() const noexcept; - const_iterator cbegin() const noexcept; - const_iterator cend() const noexcept; - const_reverse_iterator crbegin() const noexcept; - const_reverse_iterator crend() const noexcept; + constexpr const_iterator cbegin() const noexcept; + constexpr const_iterator cend() const noexcept; + constexpr const_reverse_iterator crbegin() const noexcept; + constexpr const_reverse_iterator crend() const noexcept; // \ref{string.capacity}, capacity - size_type size() const noexcept; - size_type length() const noexcept; - size_type max_size() const noexcept; - void resize(size_type n, charT c); - void resize(size_type n); - size_type capacity() const noexcept; - void reserve(size_type res_arg); - void shrink_to_fit(); - void clear() noexcept; - [[nodiscard]] bool empty() const noexcept; + constexpr size_type size() const noexcept; + constexpr size_type length() const noexcept; + constexpr size_type max_size() const noexcept; + constexpr void resize(size_type n, charT c); + constexpr void resize(size_type n); + constexpr size_type capacity() const noexcept; + constexpr void reserve(size_type res_arg); + constexpr void shrink_to_fit(); + constexpr void clear() noexcept; + [[nodiscard]] constexpr bool empty() const noexcept; // \ref{string.access}, element access - const_reference operator[](size_type pos) const; - reference operator[](size_type pos); - const_reference at(size_type n) const; - reference at(size_type n); + constexpr const_reference operator[](size_type pos) const; + constexpr reference operator[](size_type pos); + constexpr const_reference at(size_type n) const; + constexpr reference at(size_type n); - const charT& front() const; - charT& front(); - const charT& back() const; - charT& back(); + constexpr const charT& front() const; + constexpr charT& front(); + constexpr const charT& back() const; + constexpr charT& back(); // \ref{string.modifiers}, modifiers - basic_string& operator+=(const basic_string& str); + constexpr basic_string& operator+=(const basic_string& str); template - basic_string& operator+=(const T& t); - basic_string& operator+=(const charT* s); - basic_string& operator+=(charT c); - basic_string& operator+=(initializer_list); - basic_string& append(const basic_string& str); - basic_string& append(const basic_string& str, size_type pos, size_type n = npos); + constexpr basic_string& operator+=(const T& t); + constexpr basic_string& operator+=(const charT* s); + constexpr basic_string& operator+=(charT c); + constexpr basic_string& operator+=(initializer_list); + constexpr basic_string& append(const basic_string& str); + constexpr basic_string& append(const basic_string& str, size_type pos, size_type n = npos); template - basic_string& append(const T& t); + constexpr basic_string& append(const T& t); template - basic_string& append(const T& t, size_type pos, size_type n = npos); - basic_string& append(const charT* s, size_type n); - basic_string& append(const charT* s); - basic_string& append(size_type n, charT c); + constexpr basic_string& append(const T& t, size_type pos, size_type n = npos); + constexpr basic_string& append(const charT* s, size_type n); + constexpr basic_string& append(const charT* s); + constexpr basic_string& append(size_type n, charT c); template - basic_string& append(InputIterator first, InputIterator last); - basic_string& append(initializer_list); + constexpr basic_string& append(InputIterator first, InputIterator last); + constexpr basic_string& append(initializer_list); - void push_back(charT c); + constexpr void push_back(charT c); - basic_string& assign(const basic_string& str); - basic_string& assign(basic_string&& str) + constexpr basic_string& assign(const basic_string& str); + constexpr basic_string& assign(basic_string&& str) noexcept(allocator_traits::propagate_on_container_move_assignment::value || allocator_traits::is_always_equal::value); - basic_string& assign(const basic_string& str, size_type pos, size_type n = npos); + constexpr basic_string& assign(const basic_string& str, size_type pos, size_type n = npos); template - basic_string& assign(const T& t); + constexpr basic_string& assign(const T& t); template - basic_string& assign(const T& t, size_type pos, size_type n = npos); - basic_string& assign(const charT* s, size_type n); - basic_string& assign(const charT* s); - basic_string& assign(size_type n, charT c); + constexpr basic_string& assign(const T& t, size_type pos, size_type n = npos); + constexpr basic_string& assign(const charT* s, size_type n); + constexpr basic_string& assign(const charT* s); + constexpr basic_string& assign(size_type n, charT c); template - basic_string& assign(InputIterator first, InputIterator last); - basic_string& assign(initializer_list); + constexpr basic_string& assign(InputIterator first, InputIterator last); + constexpr basic_string& assign(initializer_list); - basic_string& insert(size_type pos, const basic_string& str); - basic_string& insert(size_type pos1, const basic_string& str, - size_type pos2, size_type n = npos); + constexpr basic_string& insert(size_type pos, const basic_string& str); + constexpr basic_string& insert(size_type pos1, const basic_string& str, + size_type pos2, size_type n = npos); template - basic_string& insert(size_type pos, const T& t); + constexpr basic_string& insert(size_type pos, const T& t); template - basic_string& insert(size_type pos1, const T& t, size_type pos2, size_type n = npos); - basic_string& insert(size_type pos, const charT* s, size_type n); - basic_string& insert(size_type pos, const charT* s); - basic_string& insert(size_type pos, size_type n, charT c); - iterator insert(const_iterator p, charT c); - iterator insert(const_iterator p, size_type n, charT c); + constexpr basic_string& insert(size_type pos1, const T& t, + size_type pos2, size_type n = npos); + constexpr basic_string& insert(size_type pos, const charT* s, size_type n); + constexpr basic_string& insert(size_type pos, const charT* s); + constexpr basic_string& insert(size_type pos, size_type n, charT c); + constexpr iterator insert(const_iterator p, charT c); + constexpr iterator insert(const_iterator p, size_type n, charT c); template - iterator insert(const_iterator p, InputIterator first, InputIterator last); - iterator insert(const_iterator p, initializer_list); + constexpr iterator insert(const_iterator p, InputIterator first, InputIterator last); + constexpr iterator insert(const_iterator p, initializer_list); - basic_string& erase(size_type pos = 0, size_type n = npos); - iterator erase(const_iterator p); - iterator erase(const_iterator first, const_iterator last); + constexpr basic_string& erase(size_type pos = 0, size_type n = npos); + constexpr iterator erase(const_iterator p); + constexpr iterator erase(const_iterator first, const_iterator last); - void pop_back(); + constexpr void pop_back(); - basic_string& replace(size_type pos1, size_type n1, const basic_string& str); - basic_string& replace(size_type pos1, size_type n1, const basic_string& str, - size_type pos2, size_type n2 = npos); + constexpr basic_string& replace(size_type pos1, size_type n1, const basic_string& str); + constexpr basic_string& replace(size_type pos1, size_type n1, const basic_string& str, + size_type pos2, size_type n2 = npos); template - basic_string& replace(size_type pos1, size_type n1, const T& t); + constexpr basic_string& replace(size_type pos1, size_type n1, const T& t); template - basic_string& replace(size_type pos1, size_type n1, const T& t, - size_type pos2, size_type n2 = npos); - basic_string& replace(size_type pos, size_type n1, const charT* s, size_type n2); - basic_string& replace(size_type pos, size_type n1, const charT* s); - basic_string& replace(size_type pos, size_type n1, size_type n2, charT c); - - basic_string& replace(const_iterator i1, const_iterator i2, const basic_string& str); + constexpr basic_string& replace(size_type pos1, size_type n1, const T& t, + size_type pos2, size_type n2 = npos); + constexpr basic_string& replace(size_type pos, size_type n1, const charT* s, size_type n2); + constexpr basic_string& replace(size_type pos, size_type n1, const charT* s); + constexpr basic_string& replace(size_type pos, size_type n1, size_type n2, charT c); + constexpr basic_string& replace(const_iterator i1, const_iterator i2, + const basic_string& str); template - basic_string& replace(const_iterator i1, const_iterator i2, const T& t); - basic_string& replace(const_iterator i1, const_iterator i2, const charT* s, size_type n); - basic_string& replace(const_iterator i1, const_iterator i2, const charT* s); - basic_string& replace(const_iterator i1, const_iterator i2, size_type n, charT c); + constexpr basic_string& replace(const_iterator i1, const_iterator i2, const T& t); + constexpr basic_string& replace(const_iterator i1, const_iterator i2, const charT* s, + size_type n); + constexpr basic_string& replace(const_iterator i1, const_iterator i2, const charT* s); + constexpr basic_string& replace(const_iterator i1, const_iterator i2, size_type n, charT c); template - basic_string& replace(const_iterator i1, const_iterator i2, - InputIterator j1, InputIterator j2); - basic_string& replace(const_iterator, const_iterator, initializer_list); + constexpr basic_string& replace(const_iterator i1, const_iterator i2, + InputIterator j1, InputIterator j2); + constexpr basic_string& replace(const_iterator, const_iterator, initializer_list); - size_type copy(charT* s, size_type n, size_type pos = 0) const; + constexpr size_type copy(charT* s, size_type n, size_type pos = 0) const; - void swap(basic_string& str) + constexpr void swap(basic_string& str) noexcept(allocator_traits::propagate_on_container_swap::value || allocator_traits::is_always_equal::value); // \ref{string.ops}, string operations - const charT* c_str() const noexcept; - const charT* data() const noexcept; - charT* data() noexcept; - operator basic_string_view() const noexcept; - allocator_type get_allocator() const noexcept; + constexpr const charT* c_str() const noexcept; + constexpr const charT* data() const noexcept; + constexpr charT* data() noexcept; + constexpr operator basic_string_view() const noexcept; + constexpr allocator_type get_allocator() const noexcept; template - size_type find (const T& t, size_type pos = 0) const noexcept(@\seebelow@); - size_type find (const basic_string& str, size_type pos = 0) const noexcept; - size_type find (const charT* s, size_type pos, size_type n) const; - size_type find (const charT* s, size_type pos = 0) const; - size_type find (charT c, size_type pos = 0) const noexcept; + constexpr size_type find(const T& t, size_type pos = 0) const noexcept(@\seebelow@); + constexpr size_type find(const basic_string& str, size_type pos = 0) const noexcept; + constexpr size_type find(const charT* s, size_type pos, size_type n) const; + constexpr size_type find(const charT* s, size_type pos = 0) const; + constexpr size_type find(charT c, size_type pos = 0) const noexcept; template - size_type rfind(const T& t, size_type pos = npos) const noexcept(@\seebelow@); - size_type rfind(const basic_string& str, size_type pos = npos) const noexcept; - size_type rfind(const charT* s, size_type pos, size_type n) const; - size_type rfind(const charT* s, size_type pos = npos) const; - size_type rfind(charT c, size_type pos = npos) const noexcept; + constexpr size_type rfind(const T& t, size_type pos = npos) const noexcept(@\seebelow@); + constexpr size_type rfind(const basic_string& str, size_type pos = npos) const noexcept; + constexpr size_type rfind(const charT* s, size_type pos, size_type n) const; + constexpr size_type rfind(const charT* s, size_type pos = npos) const; + constexpr size_type rfind(charT c, size_type pos = npos) const noexcept; template - size_type find_first_of(const T& t, size_type pos = 0) const noexcept(@\seebelow@); - size_type find_first_of(const basic_string& str, size_type pos = 0) const noexcept; - size_type find_first_of(const charT* s, size_type pos, size_type n) const; - size_type find_first_of(const charT* s, size_type pos = 0) const; - size_type find_first_of(charT c, size_type pos = 0) const noexcept; + constexpr size_type find_first_of(const T& t, size_type pos = 0) const noexcept(@\seebelow@); + constexpr size_type find_first_of(const basic_string& str, size_type pos = 0) const noexcept; + constexpr size_type find_first_of(const charT* s, size_type pos, size_type n) const; + constexpr size_type find_first_of(const charT* s, size_type pos = 0) const; + constexpr size_type find_first_of(charT c, size_type pos = 0) const noexcept; template - size_type find_last_of (const T& t, size_type pos = npos) const noexcept(@\seebelow@); - size_type find_last_of (const basic_string& str, size_type pos = npos) const noexcept; - size_type find_last_of (const charT* s, size_type pos, size_type n) const; - size_type find_last_of (const charT* s, size_type pos = npos) const; - size_type find_last_of (charT c, size_type pos = npos) const noexcept; + constexpr size_type find_last_of(const T& t, + size_type pos = npos) const noexcept(@\seebelow@); + constexpr size_type find_last_of(const basic_string& str, + size_type pos = npos) const noexcept; + constexpr size_type find_last_of(const charT* s, size_type pos, size_type n) const; + constexpr size_type find_last_of(const charT* s, size_type pos = npos) const; + constexpr size_type find_last_of(charT c, size_type pos = npos) const noexcept; template - size_type find_first_not_of(const T& t, size_type pos = 0) const noexcept(@\seebelow@); - size_type find_first_not_of(const basic_string& str, size_type pos = 0) const noexcept; - size_type find_first_not_of(const charT* s, size_type pos, size_type n) const; - size_type find_first_not_of(const charT* s, size_type pos = 0) const; - size_type find_first_not_of(charT c, size_type pos = 0) const noexcept; + constexpr size_type find_first_not_of(const T& t, + size_type pos = 0) const noexcept(@\seebelow@); + constexpr size_type find_first_not_of(const basic_string& str, + size_type pos = 0) const noexcept; + constexpr size_type find_first_not_of(const charT* s, size_type pos, size_type n) const; + constexpr size_type find_first_not_of(const charT* s, size_type pos = 0) const; + constexpr size_type find_first_not_of(charT c, size_type pos = 0) const noexcept; template - size_type find_last_not_of (const T& t, size_type pos = npos) const noexcept(@\seebelow@); - size_type find_last_not_of (const basic_string& str, size_type pos = npos) const noexcept; - size_type find_last_not_of (const charT* s, size_type pos, size_type n) const; - size_type find_last_not_of (const charT* s, size_type pos = npos) const; - size_type find_last_not_of (charT c, size_type pos = npos) const noexcept; + constexpr size_type find_last_not_of(const T& t, + size_type pos = npos) const noexcept(@\seebelow@); + constexpr size_type find_last_not_of(const basic_string& str, + size_type pos = npos) const noexcept; + constexpr size_type find_last_not_of(const charT* s, size_type pos, size_type n) const; + constexpr size_type find_last_not_of(const charT* s, size_type pos = npos) const; + constexpr size_type find_last_not_of(charT c, size_type pos = npos) const noexcept; + + constexpr basic_string substr(size_type pos = 0, size_type n = npos) const; - basic_string substr(size_type pos = 0, size_type n = npos) const; template - int compare(const T& t) const noexcept(@\seebelow@); + constexpr int compare(const T& t) const noexcept(@\seebelow@); template - int compare(size_type pos1, size_type n1, const T& t) const; + constexpr int compare(size_type pos1, size_type n1, const T& t) const; template - int compare(size_type pos1, size_type n1, const T& t, - size_type pos2, size_type n2 = npos) const; - int compare(const basic_string& str) const noexcept; - int compare(size_type pos1, size_type n1, const basic_string& str) const; - int compare(size_type pos1, size_type n1, const basic_string& str, - size_type pos2, size_type n2 = npos) const; - int compare(const charT* s) const; - int compare(size_type pos1, size_type n1, const charT* s) const; - int compare(size_type pos1, size_type n1, const charT* s, size_type n2) const; - - bool starts_with(basic_string_view x) const noexcept; - bool starts_with(charT x) const noexcept; - bool starts_with(const charT* x) const; - bool ends_with(basic_string_view x) const noexcept; - bool ends_with(charT x) const noexcept; - bool ends_with(const charT* x) const; + constexpr int compare(size_type pos1, size_type n1, const T& t, + size_type pos2, size_type n2 = npos) const; + constexpr int compare(const basic_string& str) const noexcept; + constexpr int compare(size_type pos1, size_type n1, const basic_string& str) const; + constexpr int compare(size_type pos1, size_type n1, const basic_string& str, + size_type pos2, size_type n2 = npos) const; + constexpr int compare(const charT* s) const; + constexpr int compare(size_type pos1, size_type n1, const charT* s) const; + constexpr int compare(size_type pos1, size_type n1, const charT* s, size_type n2) const; + + constexpr bool starts_with(basic_string_view x) const noexcept; + constexpr bool starts_with(charT x) const noexcept; + constexpr bool starts_with(const charT* x) const; + constexpr bool ends_with(basic_string_view x) const noexcept; + constexpr bool ends_with(charT x) const noexcept; + constexpr bool ends_with(const charT* x) const; }; template - basic_string(const T& t, size_type pos, size_type n, const Allocator& a = Allocator()); + constexpr basic_string(const T& t, size_type pos, size_type n, const Allocator& a = Allocator()); \end{itemdecl} \begin{itemdescr} @@ -1169,7 +1183,7 @@ \indexlibrary{\idxcode{basic_string}!constructor}% \begin{itemdecl} template - explicit basic_string(const T& t, const Allocator& a = Allocator()); + constexpr explicit basic_string(const T& t, const Allocator& a = Allocator()); \end{itemdecl} \begin{itemdescr} @@ -1192,7 +1206,7 @@ \indexlibrary{\idxcode{basic_string}!constructor}% \begin{itemdecl} -basic_string(const charT* s, size_type n, const Allocator& a = Allocator()); +constexpr basic_string(const charT* s, size_type n, const Allocator& a = Allocator()); \end{itemdecl} \begin{itemdescr} @@ -1211,7 +1225,7 @@ \indexlibrary{\idxcode{basic_string}!constructor}% \begin{itemdecl} -basic_string(const charT* s, const Allocator& a = Allocator()); +constexpr basic_string(const charT* s, const Allocator& a = Allocator()); \end{itemdecl} \begin{itemdescr} @@ -1229,7 +1243,7 @@ \indexlibrary{\idxcode{basic_string}!constructor}% \begin{itemdecl} -basic_string(size_type n, charT c, const Allocator& a = Allocator()); +constexpr basic_string(size_type n, charT c, const Allocator& a = Allocator()); \end{itemdecl} \begin{itemdescr} @@ -1249,7 +1263,7 @@ \indexlibrary{\idxcode{basic_string}!constructor}% \begin{itemdecl} template - basic_string(InputIterator begin, InputIterator end, const Allocator& a = Allocator()); + constexpr basic_string(InputIterator begin, InputIterator end, const Allocator& a = Allocator()); \end{itemdecl} \begin{itemdescr} @@ -1266,7 +1280,7 @@ \indexlibrary{\idxcode{basic_string}!constructor}% \begin{itemdecl} -basic_string(initializer_list il, const Allocator& a = Allocator()); +constexpr basic_string(initializer_list il, const Allocator& a = Allocator()); \end{itemdecl} \begin{itemdescr} @@ -1276,8 +1290,8 @@ \indexlibrary{\idxcode{basic_string}!constructor}% \begin{itemdecl} -basic_string(const basic_string& str, const Allocator& alloc); -basic_string(basic_string&& str, const Allocator& alloc); +constexpr basic_string(const basic_string& str, const Allocator& alloc); +constexpr basic_string(basic_string&& str, const Allocator& alloc); \end{itemdecl} \begin{itemdescr} @@ -1332,7 +1346,7 @@ \indexlibrarymember{operator=}{basic_string}% \begin{itemdecl} -basic_string& operator=(const basic_string& str); +constexpr basic_string& operator=(const basic_string& str); \end{itemdecl} \begin{itemdescr} @@ -1348,7 +1362,7 @@ \indexlibrarymember{operator=}{basic_string}% \begin{itemdecl} -basic_string& operator=(basic_string&& str) +constexpr basic_string& operator=(basic_string&& str) noexcept(allocator_traits::propagate_on_container_move_assignment::value || allocator_traits::is_always_equal::value); \end{itemdecl} @@ -1367,7 +1381,7 @@ \indexlibrarymember{operator=}{basic_string}% \begin{itemdecl} template - basic_string& operator=(const T& t); + constexpr basic_string& operator=(const T& t); \end{itemdecl} \begin{itemdescr} @@ -1390,7 +1404,7 @@ \indexlibrarymember{operator=}{basic_string}% \begin{itemdecl} -basic_string& operator=(const charT* s); +constexpr basic_string& operator=(const charT* s); \end{itemdecl} \begin{itemdescr} @@ -1401,7 +1415,7 @@ \indexlibrarymember{operator=}{basic_string}% \begin{itemdecl} -basic_string& operator=(charT c); +constexpr basic_string& operator=(charT c); \end{itemdecl} \begin{itemdescr} @@ -1414,7 +1428,7 @@ \indexlibrarymember{operator=}{basic_string}% \begin{itemdecl} -basic_string& operator=(initializer_list il); +constexpr basic_string& operator=(initializer_list il); \end{itemdecl} \begin{itemdescr} @@ -1430,9 +1444,9 @@ \indexlibrarymember{begin}{basic_string}% \indexlibrarymember{cbegin}{basic_string}% \begin{itemdecl} -iterator begin() noexcept; -const_iterator begin() const noexcept; -const_iterator cbegin() const noexcept; +constexpr iterator begin() noexcept; +constexpr const_iterator begin() const noexcept; +constexpr const_iterator cbegin() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -1444,9 +1458,9 @@ \indexlibrarymember{end}{basic_string}% \indexlibrarymember{cend}{basic_string}% \begin{itemdecl} -iterator end() noexcept; -const_iterator end() const noexcept; -const_iterator cend() const noexcept; +constexpr iterator end() noexcept; +constexpr const_iterator end() const noexcept; +constexpr const_iterator cend() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -1458,9 +1472,9 @@ \indexlibrarymember{rbegin}{basic_string}% \indexlibrarymember{crbegin}{basic_string}% \begin{itemdecl} -reverse_iterator rbegin() noexcept; -const_reverse_iterator rbegin() const noexcept; -const_reverse_iterator crbegin() const noexcept; +constexpr reverse_iterator rbegin() noexcept; +constexpr const_reverse_iterator rbegin() const noexcept; +constexpr const_reverse_iterator crbegin() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -1473,9 +1487,9 @@ \indexlibrarymember{rend}{basic_string}% \indexlibrarymember{crend}{basic_string}% \begin{itemdecl} -reverse_iterator rend() noexcept; -const_reverse_iterator rend() const noexcept; -const_reverse_iterator crend() const noexcept; +constexpr reverse_iterator rend() noexcept; +constexpr const_reverse_iterator rend() const noexcept; +constexpr const_reverse_iterator crend() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -1490,8 +1504,8 @@ \indexlibrarymember{size}{basic_string}% \indexlibrarymember{length}{basic_string}% \begin{itemdecl} -size_type size() const noexcept; -size_type length() const noexcept; +constexpr size_type size() const noexcept; +constexpr size_type length() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -1505,7 +1519,7 @@ \indexlibrarymember{max_size}{basic_string}% \begin{itemdecl} -size_type max_size() const noexcept; +constexpr size_type max_size() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -1520,7 +1534,7 @@ \indexlibrarymember{resize}{basic_string}% \begin{itemdecl} -void resize(size_type n, charT c); +constexpr void resize(size_type n, charT c); \end{itemdecl} \begin{itemdescr} @@ -1544,7 +1558,7 @@ \indexlibrarymember{resize}{basic_string}% \begin{itemdecl} -void resize(size_type n); +constexpr void resize(size_type n); \end{itemdecl} \begin{itemdescr} @@ -1555,7 +1569,7 @@ \indexlibrarymember{capacity}{basic_string}% \begin{itemdecl} -size_type capacity() const noexcept; +constexpr size_type capacity() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -1569,7 +1583,7 @@ \indexlibrarymember{reserve}{basic_string}% \begin{itemdecl} -void reserve(size_type res_arg); +constexpr void reserve(size_type res_arg); \end{itemdecl} \begin{itemdescr} @@ -1599,7 +1613,7 @@ \indexlibrarymember{shrink_to_fit}{basic_string}% \begin{itemdecl} -void shrink_to_fit(); +constexpr void shrink_to_fit(); \end{itemdecl} \begin{itemdescr} @@ -1623,7 +1637,7 @@ \indexlibrarymember{clear}{basic_string}% \begin{itemdecl} -void clear() noexcept; +constexpr void clear() noexcept; \end{itemdecl} \begin{itemdescr} @@ -1634,7 +1648,7 @@ \indexlibrarymember{empty}{basic_string}% \begin{itemdecl} -[[nodiscard]] bool empty() const noexcept; +[[nodiscard]] constexpr bool empty() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -1647,8 +1661,8 @@ \indexlibrarymember{operator[]}{basic_string}% \begin{itemdecl} -const_reference operator[](size_type pos) const; -reference operator[](size_type pos); +constexpr const_reference operator[](size_type pos) const; +constexpr reference operator[](size_type pos); \end{itemdecl} \begin{itemdescr} @@ -1670,8 +1684,8 @@ \indexlibrarymember{at}{basic_string}% \begin{itemdecl} -const_reference at(size_type pos) const; -reference at(size_type pos); +constexpr const_reference at(size_type pos) const; +constexpr reference at(size_type pos); \end{itemdecl} \begin{itemdescr} @@ -1688,8 +1702,8 @@ \indexlibrarymember{front}{basic_string}% \begin{itemdecl} -const charT& front() const; -charT& front(); +constexpr const charT& front() const; +constexpr charT& front(); \end{itemdecl} \begin{itemdescr} @@ -1704,8 +1718,8 @@ \indexlibrarymember{back}{basic_string}% \begin{itemdecl} -const charT& back() const; -charT& back(); +constexpr const charT& back() const; +constexpr charT& back(); \end{itemdecl} \begin{itemdescr} @@ -1724,7 +1738,7 @@ \indexlibrarymember{operator+=}{basic_string}% \begin{itemdecl} -basic_string& operator+=(const basic_string& str); +constexpr basic_string& operator+=(const basic_string& str); \end{itemdecl} \begin{itemdescr} @@ -1737,7 +1751,7 @@ \indexlibrarymember{operator+=}{basic_string}% \begin{itemdecl} template - basic_string& operator+=(const T& t); + constexpr basic_string& operator+=(const T& t); \end{itemdecl} \begin{itemdescr} @@ -1763,7 +1777,7 @@ \indexlibrarymember{operator+=}{basic_string}% \begin{itemdecl} -basic_string& operator+=(const charT* s); +constexpr basic_string& operator+=(const charT* s); \end{itemdecl} \begin{itemdescr} @@ -1773,7 +1787,7 @@ \indexlibrarymember{operator+=}{basic_string}% \begin{itemdecl} -basic_string& operator+=(charT c); +constexpr basic_string& operator+=(charT c); \end{itemdecl} \begin{itemdescr} @@ -1783,7 +1797,7 @@ \indexlibrarymember{operator+=}{basic_string}% \begin{itemdecl} -basic_string& operator+=(initializer_list il); +constexpr basic_string& operator+=(initializer_list il); \end{itemdecl} \begin{itemdescr} @@ -1796,7 +1810,7 @@ \indexlibrarymember{append}{basic_string}% \begin{itemdecl} -basic_string& append(const basic_string& str); +constexpr basic_string& append(const basic_string& str); \end{itemdecl} \begin{itemdescr} @@ -1806,7 +1820,7 @@ \indexlibrarymember{append}{basic_string}% \begin{itemdecl} -basic_string& append(const basic_string& str, size_type pos, size_type n = npos); +constexpr basic_string& append(const basic_string& str, size_type pos, size_type n = npos); \end{itemdecl} \begin{itemdescr} @@ -1821,7 +1835,7 @@ \indexlibrarymember{append}{basic_string}% \begin{itemdecl} template - basic_string& append(const T& t); + constexpr basic_string& append(const T& t); \end{itemdecl} \begin{itemdescr} @@ -1848,7 +1862,7 @@ \indexlibrarymember{append}{basic_string}% \begin{itemdecl} template - basic_string& append(const T& t, size_type pos, size_type n = npos); + constexpr basic_string& append(const T& t, size_type pos, size_type n = npos); \end{itemdecl} \begin{itemdescr} @@ -1874,7 +1888,7 @@ \indexlibrarymember{append}{basic_string}% \begin{itemdecl} -basic_string& append(const charT* s, size_type n); +constexpr basic_string& append(const charT* s, size_type n); \end{itemdecl} \begin{itemdescr} @@ -1891,7 +1905,7 @@ \indexlibrarymember{append}{basic_string}% \begin{itemdecl} -basic_string& append(const charT* s); +constexpr basic_string& append(const charT* s); \end{itemdecl} \begin{itemdescr} @@ -1901,7 +1915,7 @@ \indexlibrarymember{append}{basic_string}% \begin{itemdecl} -basic_string& append(size_type n, charT c); +constexpr basic_string& append(size_type n, charT c); \end{itemdecl} \begin{itemdescr} @@ -1915,7 +1929,7 @@ \indexlibrarymember{append}{basic_string}% \begin{itemdecl} template - basic_string& append(InputIterator first, InputIterator last); + constexpr basic_string& append(InputIterator first, InputIterator last); \end{itemdecl} \begin{itemdescr} @@ -1930,7 +1944,7 @@ \indexlibrarymember{append}{basic_string}% \begin{itemdecl} -basic_string& append(initializer_list il); +constexpr basic_string& append(initializer_list il); \end{itemdecl} \begin{itemdescr} @@ -1940,7 +1954,7 @@ \indexlibrarymember{push_back}{basic_string}% \begin{itemdecl} -void push_back(charT c); +constexpr void push_back(charT c); \end{itemdecl} \begin{itemdescr} @@ -1954,7 +1968,7 @@ \indexlibrarymember{assign}{basic_string}% \begin{itemdecl} -basic_string& assign(const basic_string& str); +constexpr basic_string& assign(const basic_string& str); \end{itemdecl} \begin{itemdescr} @@ -1964,7 +1978,7 @@ \indexlibrarymember{assign}{basic_string}% \begin{itemdecl} -basic_string& assign(basic_string&& str) +constexpr basic_string& assign(basic_string&& str) noexcept(allocator_traits::propagate_on_container_move_assignment::value || allocator_traits::is_always_equal::value); \end{itemdecl} @@ -1977,7 +1991,7 @@ \indexlibrarymember{assign}{basic_string}% \begin{itemdecl} -basic_string& assign(const basic_string& str, size_type pos, size_type n = npos); +constexpr basic_string& assign(const basic_string& str, size_type pos, size_type n = npos); \end{itemdecl} \begin{itemdescr} @@ -1992,7 +2006,7 @@ \indexlibrarymember{assign}{basic_string}% \begin{itemdecl} template - basic_string& assign(const T& t); + constexpr basic_string& assign(const T& t); \end{itemdecl} \begin{itemdescr} @@ -2019,7 +2033,7 @@ \indexlibrarymember{assign}{basic_string}% \begin{itemdecl} template - basic_string& assign(const T& t, size_type pos, size_type n = npos); + constexpr basic_string& assign(const T& t, size_type pos, size_type n = npos); \end{itemdecl} \begin{itemdescr} @@ -2044,7 +2058,7 @@ \indexlibrarymember{assign}{basic_string}% \begin{itemdecl} -basic_string& assign(const charT* s, size_type n); +constexpr basic_string& assign(const charT* s, size_type n); \end{itemdecl} \begin{itemdescr} @@ -2063,7 +2077,7 @@ \indexlibrarymember{assign}{basic_string}% \begin{itemdecl} -basic_string& assign(const charT* s); +constexpr basic_string& assign(const charT* s); \end{itemdecl} \begin{itemdescr} @@ -2073,7 +2087,7 @@ \indexlibrarymember{assign}{basic_string}% \begin{itemdecl} -basic_string& assign(initializer_list il); +constexpr basic_string& assign(initializer_list il); \end{itemdecl} \begin{itemdescr} @@ -2083,7 +2097,7 @@ \indexlibrarymember{assign}{basic_string}% \begin{itemdecl} -basic_string& assign(size_type n, charT c); +constexpr basic_string& assign(size_type n, charT c); \end{itemdecl} \begin{itemdescr} @@ -2099,7 +2113,7 @@ \indexlibrarymember{assign}{basic_string}% \begin{itemdecl} template - basic_string& assign(InputIterator first, InputIterator last); + constexpr basic_string& assign(InputIterator first, InputIterator last); \end{itemdecl} \begin{itemdescr} @@ -2116,7 +2130,7 @@ \indexlibrarymember{insert}{basic_string}% \begin{itemdecl} -basic_string& insert(size_type pos, const basic_string& str); +constexpr basic_string& insert(size_type pos, const basic_string& str); \end{itemdecl} \begin{itemdescr} @@ -2126,7 +2140,8 @@ \indexlibrarymember{insert}{basic_string}% \begin{itemdecl} -basic_string& insert(size_type pos1, const basic_string& str, size_type pos2, size_type n = npos); +constexpr basic_string& insert(size_type pos1, const basic_string& str, + size_type pos2, size_type n = npos); \end{itemdecl} \begin{itemdescr} @@ -2141,7 +2156,7 @@ \indexlibrarymember{insert}{basic_string}% \begin{itemdecl} template - basic_string& insert(size_type pos, const T& t); + constexpr basic_string& insert(size_type pos, const T& t); \end{itemdecl} \begin{itemdescr} @@ -2168,7 +2183,8 @@ \indexlibrarymember{insert}{basic_string}% \begin{itemdecl} template - basic_string& insert(size_type pos1, const T& t, size_type pos2, size_type n = npos); + constexpr basic_string& insert(size_type pos1, const T& t, + size_type pos2, size_type n = npos); \end{itemdecl} \begin{itemdescr} @@ -2193,7 +2209,7 @@ \indexlibrarymember{insert}{basic_string}% \begin{itemdecl} -basic_string& insert(size_type pos, const charT* s, size_type n); +constexpr basic_string& insert(size_type pos, const charT* s, size_type n); \end{itemdecl} \begin{itemdescr} @@ -2220,7 +2236,7 @@ \indexlibrarymember{insert}{basic_string}% \begin{itemdecl} -basic_string& insert(size_type pos, const charT* s); +constexpr basic_string& insert(size_type pos, const charT* s); \end{itemdecl} \begin{itemdescr} @@ -2230,7 +2246,7 @@ \indexlibrarymember{insert}{basic_string}% \begin{itemdecl} -basic_string& insert(size_type pos, size_type n, charT c); +constexpr basic_string& insert(size_type pos, size_type n, charT c); \end{itemdecl} \begin{itemdescr} @@ -2255,7 +2271,7 @@ \indexlibrarymember{insert}{basic_string}% \begin{itemdecl} -iterator insert(const_iterator p, charT c); +constexpr iterator insert(const_iterator p, charT c); \end{itemdecl} \begin{itemdescr} @@ -2275,7 +2291,7 @@ \indexlibrarymember{insert}{basic_string}% \begin{itemdecl} -iterator insert(const_iterator p, size_type n, charT c); +constexpr iterator insert(const_iterator p, size_type n, charT c); \end{itemdecl} \begin{itemdescr} @@ -2296,7 +2312,7 @@ \indexlibrarymember{insert}{basic_string}% \begin{itemdecl} template - iterator insert(const_iterator p, InputIterator first, InputIterator last); + constexpr iterator insert(const_iterator p, InputIterator first, InputIterator last); \end{itemdecl} \begin{itemdescr} @@ -2322,7 +2338,7 @@ \indexlibrarymember{insert}{basic_string}% \begin{itemdecl} -iterator insert(const_iterator p, initializer_list il); +constexpr iterator insert(const_iterator p, initializer_list il); \end{itemdecl} \begin{itemdescr} @@ -2334,7 +2350,7 @@ \indexlibrarymember{erase}{basic_string}% \begin{itemdecl} -basic_string& erase(size_type pos = 0, size_type n = npos); +constexpr basic_string& erase(size_type pos = 0, size_type n = npos); \end{itemdecl} \begin{itemdescr} @@ -2358,7 +2374,7 @@ \indexlibrarymember{erase}{basic_string}% \begin{itemdecl} -iterator erase(const_iterator p); +constexpr iterator erase(const_iterator p); \end{itemdecl} \begin{itemdescr} @@ -2384,7 +2400,7 @@ \indexlibrarymember{erase}{basic_string}% \begin{itemdecl} -iterator erase(const_iterator first, const_iterator last); +constexpr iterator erase(const_iterator first, const_iterator last); \end{itemdecl} \begin{itemdescr} @@ -2412,7 +2428,7 @@ \indexlibrarymember{pop_back}{basic_string}% \begin{itemdecl} -void pop_back(); +constexpr void pop_back(); \end{itemdecl} \begin{itemdescr} @@ -2432,7 +2448,7 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} -basic_string& replace(size_type pos1, size_type n1, const basic_string& str); +constexpr basic_string& replace(size_type pos1, size_type n1, const basic_string& str); \end{itemdecl} \begin{itemdescr} @@ -2442,8 +2458,8 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} -basic_string& replace(size_type pos1, size_type n1, const basic_string& str, - size_type pos2, size_type n2 = npos); +constexpr basic_string& replace(size_type pos1, size_type n1, const basic_string& str, + size_type pos2, size_type n2 = npos); \end{itemdecl} \begin{itemdescr} @@ -2458,7 +2474,7 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} template - basic_string& replace(size_type pos1, size_type n1, const T& t); + constexpr basic_string& replace(size_type pos1, size_type n1, const T& t); \end{itemdecl} \begin{itemdescr} @@ -2485,8 +2501,8 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} template - basic_string& replace(size_type pos1, size_type n1, const T& t, - size_type pos2, size_type n2 = npos); + constexpr basic_string& replace(size_type pos1, size_type n1, const T& t, + size_type pos2, size_type n2 = npos); \end{itemdecl} \begin{itemdescr} @@ -2512,7 +2528,7 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} -basic_string& replace(size_type pos1, size_type n1, const charT* s, size_type n2); +constexpr basic_string& replace(size_type pos1, size_type n1, const charT* s, size_type n2); \end{itemdecl} \begin{itemdescr} @@ -2543,7 +2559,7 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} -basic_string& replace(size_type pos, size_type n, const charT* s); +constexpr basic_string& replace(size_type pos, size_type n, const charT* s); \end{itemdecl} \begin{itemdescr} @@ -2553,7 +2569,7 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} -basic_string& replace(size_type pos1, size_type n1, size_type n2, charT c); +constexpr basic_string& replace(size_type pos1, size_type n1, size_type n2, charT c); \end{itemdecl} \begin{itemdescr} @@ -2580,7 +2596,7 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} -basic_string& replace(const_iterator i1, const_iterator i2, const basic_string& str); +constexpr basic_string& replace(const_iterator i1, const_iterator i2, const basic_string& str); \end{itemdecl} \begin{itemdescr} @@ -2592,7 +2608,7 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} template - basic_string& replace(const_iterator i1, const_iterator i2, const T& t); + constexpr basic_string& replace(const_iterator i1, const_iterator i2, const T& t); \end{itemdecl} \begin{itemdescr} @@ -2622,7 +2638,7 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} -basic_string& replace(const_iterator i1, const_iterator i2, const charT* s, size_type n); +constexpr basic_string& replace(const_iterator i1, const_iterator i2, const charT* s, size_type n); \end{itemdecl} \begin{itemdescr} @@ -2633,7 +2649,7 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} -basic_string& replace(const_iterator i1, const_iterator i2, const charT* s); +constexpr basic_string& replace(const_iterator i1, const_iterator i2, const charT* s); \end{itemdecl} \begin{itemdescr} @@ -2644,7 +2660,7 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} -basic_string& replace(const_iterator i1, const_iterator i2, size_type n, charT c); +constexpr basic_string& replace(const_iterator i1, const_iterator i2, size_type n, charT c); \end{itemdecl} \begin{itemdescr} @@ -2659,7 +2675,8 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} template - basic_string& replace(const_iterator i1, const_iterator i2, InputIterator j1, InputIterator j2); + constexpr basic_string& replace(const_iterator i1, const_iterator i2, + InputIterator j1, InputIterator j2); \end{itemdecl} \begin{itemdescr} @@ -2675,7 +2692,7 @@ \indexlibrarymember{replace}{basic_string}% \begin{itemdecl} -basic_string& replace(const_iterator i1, const_iterator i2, initializer_list il); +constexpr basic_string& replace(const_iterator i1, const_iterator i2, initializer_list il); \end{itemdecl} \begin{itemdescr} @@ -2688,7 +2705,7 @@ \indexlibrarymember{copy}{basic_string}% \begin{itemdecl} -size_type copy(charT* s, size_type n, size_type pos = 0) const; +constexpr size_type copy(charT* s, size_type n, size_type pos = 0) const; \end{itemdecl} \begin{itemdescr} @@ -2703,7 +2720,7 @@ \indexlibrarymember{swap}{basic_string}% \begin{itemdecl} -void swap(basic_string& s) +constexpr void swap(basic_string& s) noexcept(allocator_traits::propagate_on_container_swap::value || allocator_traits::is_always_equal::value); \end{itemdecl} @@ -2736,8 +2753,8 @@ \indexlibrarymember{c_str}{basic_string}% \indexlibrarymember{data}{basic_string}% \begin{itemdecl} -const charT* c_str() const noexcept; -const charT* data() const noexcept; +constexpr const charT* c_str() const noexcept; +constexpr const charT* data() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -2755,7 +2772,7 @@ \indexlibrarymember{data}{basic_string}% \begin{itemdecl} -charT* data() noexcept; +constexpr charT* data() noexcept; \end{itemdecl} \begin{itemdescr} @@ -2774,7 +2791,7 @@ \indexlibrarymember{operator basic_string_view}{basic_string}% \begin{itemdecl} -operator basic_string_view() const noexcept; +constexpr operator basic_string_view() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -2785,7 +2802,7 @@ \indexlibrarymember{get_allocator}{basic_string}% \begin{itemdecl} -allocator_type get_allocator() const noexcept; +constexpr allocator_type get_allocator() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -2800,6 +2817,12 @@ \rSec4[string.find]{Searching} \pnum +\indexlibrarymember{find}{basic_string}% +\indexlibrarymember{rfind}{basic_string}% +\indexlibrarymember{find_first_of}{basic_string}% +\indexlibrarymember{find_last_of}{basic_string}% +\indexlibrarymember{find_first_not_of}{basic_string}% +\indexlibrarymember{find_last_not_of}{basic_string}% Let \placeholder{F} be one of \tcode{find}, \tcode{rfind}, \tcode{find_first_of}, \tcode{find_last_of}, \tcode{find_first_not_of}, and \tcode{find_last_not_of}. @@ -2808,7 +2831,7 @@ \item Each member function of the form \begin{codeblock} -size_type @\placeholder{F}@(const basic_string& str, size_type pos) const noexcept; +constexpr size_type @\placeholder{F}@(const basic_string& str, size_type pos) const noexcept; \end{codeblock} has effects equivalent to: \tcode{return \placeholder{F}(basic_string_view(str), pos);} @@ -2816,7 +2839,7 @@ \item Each member function of the form \begin{codeblock} -size_type @\placeholder{F}@(const charT* s, size_type pos) const; +constexpr size_type @\placeholder{F}@(const charT* s, size_type pos) const; \end{codeblock} has effects equivalent to: \tcode{return \placeholder{F}(basic_string_view(s), pos);} @@ -2824,7 +2847,7 @@ \item Each member function of the form \begin{codeblock} -size_type @\placeholder{F}@(const charT* s, size_type pos, size_type n) const; +constexpr size_type @\placeholder{F}@(const charT* s, size_type pos, size_type n) const; \end{codeblock} has effects equivalent to: \tcode{return \placeholder{F}(basic_string_view(s, n), pos);} @@ -2832,7 +2855,7 @@ \item Each member function of the form \begin{codeblock} -size_type @\placeholder{F}@(charT c, size_type pos) const noexcept; +constexpr size_type @\placeholder{F}@(charT c, size_type pos) const noexcept; \end{codeblock} has effects equivalent to: \begin{codeblock} @@ -2848,17 +2871,17 @@ \indexlibrarymember{find_last_not_of}{basic_string}% \begin{itemdecl} template - size_type find(const T& t, size_type pos = 0) const noexcept(@\seebelow@); + constexpr size_type find(const T& t, size_type pos = 0) const noexcept(@\seebelow@); template - size_type rfind(const T& t, size_type pos = npos) const noexcept(@\seebelow@); + constexpr size_type rfind(const T& t, size_type pos = npos) const noexcept(@\seebelow@); template - size_type find_first_of(const T& t, size_type pos = 0) const noexcept(@\seebelow@); + constexpr size_type find_first_of(const T& t, size_type pos = 0) const noexcept(@\seebelow@); template - size_type find_last_of(const T& t, size_type pos = npos) const noexcept(@\seebelow@); + constexpr size_type find_last_of(const T& t, size_type pos = npos) const noexcept(@\seebelow@); template - size_type find_first_not_of(const T& t, size_type pos = 0) const noexcept(@\seebelow@); + constexpr size_type find_first_not_of(const T& t, size_type pos = 0) const noexcept(@\seebelow@); template - size_type find_last_not_of(const T& t, size_type pos = npos) const noexcept(@\seebelow@); + constexpr size_type find_last_not_of(const T& t, size_type pos = npos) const noexcept(@\seebelow@); \end{itemdecl} \begin{itemdescr} @@ -2892,7 +2915,7 @@ \indexlibrarymember{substr}{basic_string}% \begin{itemdecl} -basic_string substr(size_type pos = 0, size_type n = npos) const; +constexpr basic_string substr(size_type pos = 0, size_type n = npos) const; \end{itemdecl} \begin{itemdescr} @@ -2917,7 +2940,7 @@ \indexlibrarymember{compare}{basic_string}% \begin{itemdecl} template - int compare(const T& t) const noexcept(@\seebelow@); + constexpr int compare(const T& t) const noexcept(@\seebelow@); \end{itemdecl} \begin{itemdescr} @@ -2945,7 +2968,7 @@ \indexlibrarymember{compare}{basic_string}% \begin{itemdecl} template - int compare(size_type pos1, size_type n1, const T& t) const; + constexpr int compare(size_type pos1, size_type n1, const T& t) const; \end{itemdecl} \begin{itemdescr} @@ -2971,7 +2994,8 @@ \indexlibrarymember{compare}{basic_string}% \begin{itemdecl} template - int compare(size_type pos1, size_type n1, const T& t, size_type pos2, size_type n2 = npos) const; + constexpr int compare(size_type pos1, size_type n1, const T& t, + size_type pos2, size_type n2 = npos) const; \end{itemdecl} \begin{itemdescr} @@ -2997,7 +3021,7 @@ \indexlibrarymember{compare}{basic_string}% \begin{itemdecl} -int compare(const basic_string& str) const noexcept; +constexpr int compare(const basic_string& str) const noexcept; \end{itemdecl} \begin{itemdescr} @@ -3009,7 +3033,7 @@ \indexlibrarymember{compare}{basic_string}% \begin{itemdecl} -int compare(size_type pos1, size_type n1, const basic_string& str) const; +constexpr int compare(size_type pos1, size_type n1, const basic_string& str) const; \end{itemdecl} \begin{itemdescr} @@ -3021,8 +3045,8 @@ \indexlibrarymember{compare}{basic_string}% \begin{itemdecl} -int compare(size_type pos1, size_type n1, const basic_string& str, - size_type pos2, size_type n2 = npos) const; +constexpr int compare(size_type pos1, size_type n1, const basic_string& str, + size_type pos2, size_type n2 = npos) const; \end{itemdecl} \begin{itemdescr} @@ -3035,7 +3059,7 @@ \indexlibrarymember{compare}{basic_string}% \begin{itemdecl} -int compare(const charT* s) const; +constexpr int compare(const charT* s) const; \end{itemdecl} \begin{itemdescr} @@ -3046,7 +3070,7 @@ \indexlibrarymember{compare}{basic_string}% \begin{itemdecl} -int compare(size_type pos, size_type n1, const charT* s) const; +constexpr int compare(size_type pos, size_type n1, const charT* s) const; \end{itemdecl} \begin{itemdescr} @@ -3057,7 +3081,7 @@ \indexlibrarymember{compare}{basic_string}% \begin{itemdecl} -int compare(size_type pos, size_type n1, const charT* s, size_type n2) const; +constexpr int compare(size_type pos, size_type n1, const charT* s, size_type n2) const; \end{itemdecl} \begin{itemdescr} @@ -3070,9 +3094,9 @@ \indexlibrarymember{starts_with}{basic_string}% \begin{itemdecl} -bool starts_with(basic_string_view x) const noexcept; -bool starts_with(charT x) const noexcept; -bool starts_with(const charT* x) const; +constexpr bool starts_with(basic_string_view x) const noexcept; +constexpr bool starts_with(charT x) const noexcept; +constexpr bool starts_with(const charT* x) const; \end{itemdecl} \begin{itemdescr} @@ -3088,9 +3112,9 @@ \indexlibrarymember{ends_with}{basic_string}% \begin{itemdecl} -bool ends_with(basic_string_view x) const noexcept; -bool ends_with(charT x) const noexcept; -bool ends_with(const charT* x) const; +constexpr bool ends_with(basic_string_view x) const noexcept; +constexpr bool ends_with(charT x) const noexcept; +constexpr bool ends_with(const charT* x) const; \end{itemdecl} \begin{itemdescr} @@ -3111,11 +3135,11 @@ \indexlibrarymember{operator+}{basic_string}% \begin{itemdecl} template - basic_string + constexpr basic_string operator+(const basic_string& lhs, const basic_string& rhs); template - basic_string + constexpr basic_string operator+(const basic_string& lhs, const charT* rhs); \end{itemdecl} @@ -3133,11 +3157,11 @@ \indexlibrarymember{operator+}{basic_string}% \begin{itemdecl} template - basic_string + constexpr basic_string operator+(basic_string&& lhs, const basic_string& rhs); template - basic_string + constexpr basic_string operator+(basic_string&& lhs, const charT* rhs); \end{itemdecl} @@ -3154,7 +3178,7 @@ \indexlibrarymember{operator+}{basic_string}% \begin{itemdecl} template - basic_string + constexpr basic_string operator+(basic_string&& lhs, basic_string&& rhs); \end{itemdecl} @@ -3178,11 +3202,11 @@ \indexlibrarymember{operator+}{basic_string}% \begin{itemdecl} template - basic_string + constexpr basic_string operator+(const basic_string& lhs, basic_string&& rhs); template - basic_string + constexpr basic_string operator+(const charT* lhs, basic_string&& rhs); \end{itemdecl} @@ -3199,7 +3223,7 @@ \indexlibrarymember{operator+}{basic_string}% \begin{itemdecl} template - basic_string + constexpr basic_string operator+(const charT* lhs, const basic_string& rhs); \end{itemdecl} @@ -3217,7 +3241,7 @@ \indexlibrarymember{operator+}{basic_string}% \begin{itemdecl} template - basic_string + constexpr basic_string operator+(charT lhs, const basic_string& rhs); \end{itemdecl} @@ -3235,7 +3259,7 @@ \indexlibrarymember{operator+}{basic_string}% \begin{itemdecl} template - basic_string + constexpr basic_string operator+(charT lhs, basic_string&& rhs); \end{itemdecl} @@ -3252,7 +3276,7 @@ \indexlibrarymember{operator+}{basic_string}% \begin{itemdecl} template - basic_string + constexpr basic_string operator+(const basic_string& lhs, charT rhs); \end{itemdecl} @@ -3270,7 +3294,7 @@ \indexlibrarymember{operator+}{basic_string}% \begin{itemdecl} template - basic_string + constexpr basic_string operator+(basic_string&& lhs, charT rhs); \end{itemdecl} @@ -3287,17 +3311,19 @@ \rSec3[string.cmp]{Non-member comparison functions} \begin{itemdecl} template - bool operator==(const basic_string& lhs, - const basic_string& rhs) noexcept; + constexpr bool + operator==(const basic_string& lhs, + const basic_string& rhs) noexcept; template - bool operator==(const basic_string& lhs, const charT* rhs); + constexpr bool operator==(const basic_string& lhs, + const charT* rhs); template - @\seebelow@ operator<=>(const basic_string& lhs, - @\itcorr@ const basic_string& rhs) noexcept; + constexpr @\seebelow@ operator<=>(const basic_string& lhs, + @\itcorr@ const basic_string& rhs) noexcept; template - @\seebelow@ operator<=>(const basic_string& lhs, - @\itcorr@ const charT* rhs); + constexpr @\seebelow@ operator<=>(const basic_string& lhs, + @\itcorr@ const charT* rhs); \end{itemdecl} \begin{itemdescr} \pnum @@ -3313,9 +3339,10 @@ \indexlibrarymember{swap}{basic_string}% \begin{itemdecl} template - void swap(basic_string& lhs, - basic_string& rhs) - noexcept(noexcept(lhs.swap(rhs))); + constexpr void + swap(basic_string& lhs, + basic_string& rhs) + noexcept(noexcept(lhs.swap(rhs))); \end{itemdecl} \begin{itemdescr} @@ -3737,7 +3764,7 @@ \indexlibrarymember{operator""""s}{string}% \begin{itemdecl} -string operator""s(const char* str, size_t len); +constexpr string operator""s(const char* str, size_t len); \end{itemdecl} \begin{itemdescr} @@ -3748,7 +3775,7 @@ \indexlibrarymember{operator""""s}{u8string}% \begin{itemdecl} -u8string operator""s(const char8_t* str, size_t len); +constexpr u8string operator""s(const char8_t* str, size_t len); \end{itemdecl} \begin{itemdescr} \pnum @@ -3758,7 +3785,7 @@ \indexlibrarymember{operator""""s}{u16string}% \begin{itemdecl} -u16string operator""s(const char16_t* str, size_t len); +constexpr u16string operator""s(const char16_t* str, size_t len); \end{itemdecl} \begin{itemdescr} \pnum @@ -3768,7 +3795,7 @@ \indexlibrarymember{operator""""s}{u32string}% \begin{itemdecl} -u32string operator""s(const char32_t* str, size_t len); +constexpr u32string operator""s(const char32_t* str, size_t len); \end{itemdecl} \begin{itemdescr} \pnum @@ -3778,7 +3805,7 @@ \indexlibrarymember{operator""""s}{wstring}% \begin{itemdecl} -wstring operator""s(const wchar_t* str, size_t len); +constexpr wstring operator""s(const wchar_t* str, size_t len); \end{itemdecl} \begin{itemdescr} \pnum diff --git a/source/support.tex b/source/support.tex index 182f8b613e..2a411270ac 100644 --- a/source/support.tex +++ b/source/support.tex @@ -586,6 +586,8 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_constexpr_invoke} & \tcode{201907L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_constexpr_string} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_constexpr_swap_algorithms} & \tcode{201806L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_constexpr_vector} & \tcode{201907L} & From de663f680eb3770145f676bb5529c29eca0bafd5 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Tue, 23 Jul 2019 15:23:38 +0100 Subject: [PATCH 149/312] P0660R10 Stop Token and Joining Thread Editorial changes: - Capitalization in subclause headings. - Changed "determination" to "evaluated" in [thread.condvarany.interruptwait] p9. --- source/algorithms.tex | 1 + source/basic.tex | 7 +- source/lib-intro.tex | 3 +- source/numerics.tex | 4 +- source/support.tex | 14 +- source/threads.tex | 1620 +++++++++++++++++++++++++++++++++++------ 6 files changed, 1428 insertions(+), 221 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 5e4ebf2dba..8ddca61117 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -439,6 +439,7 @@ in a thread of execution implicitly created by the library to support parallel algorithm execution. If the threads of execution created by \tcode{thread}\iref{thread.thread.class} +or \tcode{jthread}\iref{thread.jthread.class} provide concurrent forward progress guarantees\iref{intro.progress}, then a thread of execution implicitly created by the library will provide parallel forward progress guarantees; diff --git a/source/basic.tex b/source/basic.tex index b18a0ab4f6..36db8d3b9a 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -5923,11 +5923,12 @@ \pnum It is \impldef{whether the thread that executes \tcode{main} and the threads created -by \tcode{std::thread} provide concurrent forward progress guarantees} whether the +by \tcode{std::thread} or \tcode{std::jthread} provide concurrent forward progress guarantees} whether the implementation-created thread of execution that executes \tcode{main}\iref{basic.start.main} and the threads of execution created by -\tcode{std::thread}\iref{thread.thread.class} provide concurrent forward progress -guarantees. +\tcode{std::thread}\iref{thread.thread.class} +or \tcode{std::jthread}\iref{thread.jthread.class} +provide concurrent forward progress guarantees. \begin{note} General-purpose implementations should provide these guarantees. \end{note} diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 3d49cb53c8..29eacd4316 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -1218,8 +1218,9 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\tcode{} \\ +\tcode{} \\ \columnbreak +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ diff --git a/source/numerics.tex b/source/numerics.tex index d98062983a..429f1d545b 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -163,7 +163,9 @@ The floating-point environment has thread storage duration\iref{basic.stc.thread}. The initial state for a thread's floating-point environment is the state of the floating-point environment of the thread that constructs -the corresponding \tcode{thread} object\iref{thread.thread.class} at the time it +the corresponding \tcode{thread} object\iref{thread.thread.class} +or \tcode{jthread} object\iref{thread.jthread.class} +at the time it constructed the object. \begin{note} That is, the child thread gets the floating-point state of the parent thread at the time of the child's creation. \end{note} diff --git a/source/support.tex b/source/support.tex index 2a411270ac..7448ce32f2 100644 --- a/source/support.tex +++ b/source/support.tex @@ -640,10 +640,16 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_is_invocable} & \tcode{201703L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_is_layout_compatible} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_is_null_pointer} & \tcode{201309L} & \tcode{} \\ \rowsep -\defnlibxname{cpp_lib_is_swappable} & \tcode{201603L} & +\defnlibxname{cpp_lib_is_pointer_interconvertible} & \tcode{201907L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_is_swappable} & \tcode{201603L} & + \tcode{stop_token} \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_jthread} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_latch} & \tcode{201907L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_launder} & \tcode{201606L} & @@ -5147,9 +5153,9 @@ Resuming a coroutine via \tcode{resume}, \tcode{operator()}, or \tcode{destroy} on an execution agent other than the one on which it was suspended has implementation-defined behavior unless -each execution agent is either -an instance of \tcode{std::thread} or -the thread that executes \tcode{main}. +each execution agent either is +an instance of \tcode{std::thread} or \tcode{std::jthread}, +or is the thread that executes \tcode{main}. \begin{note} A coroutine that is resumed on a different execution agent should avoid relying on consistent thread identity throughout, such as holding diff --git a/source/threads.tex b/source/threads.tex index b6cfb1fdc9..20f64ac7a6 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -11,6 +11,7 @@ \begin{libsumtab}{Thread support library summary}{thread.summary} \ref{thread.req} & Requirements & \\ \rowsep +\ref{thread.stoptoken}& Stop tokens & \tcode{} \\ \rowsep \ref{thread.threads} & Threads & \tcode{} \\ \rowsep \ref{thread.mutex} & Mutual exclusion & \tcode{}, \tcode{} \\ \rowsep @@ -274,167 +275,850 @@ \returns \tcode{true} if the lock was acquired, \tcode{false} otherwise. \end{itemdescr} -\rSec1[thread.threads]{Threads} +\rSec1[thread.stoptoken]{Stop tokens} + +\rSec2[thread.stoptoken.intro]{Stop token introduction} \pnum -\ref{thread.threads} describes components that can be used to create and manage threads. -\begin{note} These threads are intended to map one-to-one with operating system threads. -\end{note} +This clause describes components that can be used +to asynchonously request that an operation stops execution in a timely manner, +typically because the result is no longer required. +Such a request is called a \defn{stop request}. -\rSec2[thread.syn]{Header \tcode{} synopsis} -\indexhdr{thread}% +\pnum +\tcode{stop_source}, \tcode{stop_token}, and \tcode{stop_callback} +implement semantics of shared ownership of a \defn{stop state}. +Any \tcode{stop_source}, \tcode{stop_token}, or \tcode{stop_callback} +that shares ownership of the same stop state is an \defn{associated} +\tcode{stop_source}, \tcode{stop_token}, or \tcode{stop_callback}, respectively. +The last remaining owner of the stop state automatically +releases the resources associated with the stop state. + +\pnum +A \tcode{stop_token} can be passed to an operation which can either +\begin{itemize} + \item actively poll the token to check if there has been a stop request, or + \item register a callback using the \tcode{stop_callback} class template which + will be called in the event that a stop request is made. +\end{itemize} +A stop request made via a \tcode{stop_source} will be visible to all +associated \tcode{stop_token} and \tcode{stop_source} objects. +Once a stop request has been made it cannot be withdrawn +(a subsequent stop request has no effect). + +\pnum +Callbacks registered via a \tcode{stop_callback} object are called when +a stop request is first made by any associated \tcode{stop_source} object. + +\pnum +Calls to the functions \tcode{request_stop}, \tcode{stop_requested}, +and \tcode{stop_possible} +do not introduce data races. +A call to \tcode{request_stop} that returns \tcode{true} +synchronizes with a call to \tcode{stop_requested} +on an associated \tcode{stop_token} or \tcode{stop_source} object +that returns \tcode{true}. +Registration of a callback synchronizes with the invocation of that callback. + + +\rSec2[thread.stoptoken.syn]{Header \tcode{} synopsis} +\indexhdr{stop_token}% \begin{codeblock} namespace std { - class thread; + // \ref{stoptoken} class \tcode{stop_token} + class stop_token; - void swap(thread& x, thread& y) noexcept; + // \ref{stopsource} class \tcode{stop_source} + class stop_source; - namespace this_thread { - thread::id get_id() noexcept; + // no-shared-stop-state indicator + struct nostopstate_t { + explicit nostopstate_t() = default; + }; + inline constexpr nostopstate_t nostopstate{}; - void yield() noexcept; - template - void sleep_until(const chrono::time_point& abs_time); - template - void sleep_for(const chrono::duration& rel_time); - } + // \ref{stopcallback} class \tcode{stop_callback} + template + class stop_callback; } \end{codeblock} -\rSec2[thread.thread.class]{Class \tcode{thread}} + +\indexlibrary{\idxcode{stop_token}}% +\rSec2[stoptoken]{Class \tcode{stop_token}} \pnum -The class \tcode{thread} provides a mechanism to create a new thread of execution, to join with -a thread (i.e., wait for a thread to complete), and to perform other operations that manage and -query the state of a thread. A \tcode{thread} object uniquely represents a particular thread of -execution. That representation may be transferred to other \tcode{thread} objects in such a way -that no two \tcode{thread} objects simultaneously represent the same thread of execution. A -thread of execution is \term{detached} when no \tcode{thread} object represents that thread. -Objects of class \tcode{thread} can be in a state that does not represent a thread of -execution. \begin{note} A \tcode{thread} object does not represent a thread of execution after -default construction, after being moved from, or after a successful call to \tcode{detach} or -\tcode{join}. \end{note} +\indexlibrary{\idxcode{stop_token}}% +The class \tcode{stop_token} provides an interface for querying whether +a stop request has been made (\tcode{stop_requested}) +or can ever be made (\tcode{stop_possible}) +using an associated \tcode{stop_source} object (\ref{stopsource}). +A \tcode{stop_token} can also be passed to a +\tcode{stop_callback}\iref{stopcallback} constructor +to register a callback to be called when a stop request has been made +from an associated \tcode{stop_source}. -\indexlibrary{\idxcode{thread}}% \begin{codeblock} namespace std { - class thread { + class stop_token { public: - // types - class id; - using native_handle_type = @\impdefnc@; // see~\ref{thread.req.native} - - // construct/copy/destroy - thread() noexcept; - template explicit thread(F&& f, Args&&... args); - ~thread(); - thread(const thread&) = delete; - thread(thread&&) noexcept; - thread& operator=(const thread&) = delete; - thread& operator=(thread&&) noexcept; - - // members - void swap(thread&) noexcept; - bool joinable() const noexcept; - void join(); - void detach(); - id get_id() const noexcept; - native_handle_type native_handle(); // see~\ref{thread.req.native} - - // static members - static unsigned int hardware_concurrency() noexcept; + // \ref{stoptoken.constr} create, copy, destroy: + stop_token() noexcept; + + stop_token(const stop_token&) noexcept; + stop_token(stop_token&&) noexcept; + stop_token& operator=(const stop_token&) noexcept; + stop_token& operator=(stop_token&&) noexcept; + ~stop_token(); + void swap(stop_token&) noexcept; + + // \ref{stoptoken.mem} stop handling: + [[nodiscard]] bool stop_requested() const noexcept; + [[nodiscard]] bool stop_possible() const noexcept; + + [[nodiscard]] friend bool operator==(const stop_token& lhs, const stop_token& rhs) noexcept; + [[nodiscard]] friend bool operator!=(const stop_token& lhs, const stop_token& rhs) noexcept; + friend void swap(stop_token& lhs, stop_token& rhs) noexcept; }; } \end{codeblock} -\rSec3[thread.thread.id]{Class \tcode{thread::id}} -\indexlibrary{\idxcode{thread::id}}% -\indexlibrary{\idxcode{thread}!\idxcode{id}}% +\rSec3[stoptoken.constr]{\tcode{stop_token} constructors} + +\indexlibrary{\idxcode{stop_token}!constructor}% +\begin{itemdecl} +stop_token() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\ensures +\tcode{stop_possible()} is \tcode{false} and +\tcode{stop_requested()} is \tcode{false}. +\begin{note} +Because the created \tcode{stop_token} object can never receive a stop request, +no resources are allocated for a stop state. +\end{note} +\end{itemdescr} + +\indexlibrary{\idxcode{stop_token}!constructor}% +\begin{itemdecl} +stop_token(const stop_token& rhs) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\ensures \tcode{*this == rhs} is \tcode{true}. +\begin{note} +\tcode{*this} and \tcode{rhs} share the ownership of the same stop state, +if any. +\end{note} +\end{itemdescr} + +\indexlibrary{\idxcode{stop_token}!constructor}% +\begin{itemdecl} +stop_token(stop_token&& rhs) noexcept; +\end{itemdecl} +\begin{itemdescr} +\pnum +\ensures +\tcode{*this} contains the value of \tcode{rhs} +prior to the start of construction +and \tcode{rhs.stop_possible()} is \tcode{false}. +\end{itemdescr} + + +\rSec3[stoptoken.destr]{\tcode{stop_token} destructor} + +\indexlibrary{\idxcode{stop_token}!destructor}% +\begin{itemdecl} +~stop_token(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Releases ownership of the stop state, if any. +\end{itemdescr} + + +\rSec3[stoptoken.assign]{\tcode{stop_token} assignment} + +\indexlibrarymember{operator=}{stop_token}% +\begin{itemdecl} +stop_token& operator=(const stop_token& rhs) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{stop_token(rhs).swap(*this)}. + +\pnum +\returns \tcode{*this}. +\end{itemdescr} + +\indexlibrarymember{operator=}{stop_token}% +\begin{itemdecl} +stop_token& operator=(stop_token&& rhs) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{stop_token(std::move(rhs)).swap(*this)}. + +\pnum +\returns \tcode{*this}. +\end{itemdescr} + + +\rSec3[stoptoken.swap]{\tcode{stop_token} swap} + +\indexlibrarymember{swap}{stop_token}% +\begin{itemdecl} +void swap(stop_token& rhs) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Exchanges the values of \tcode{*this} and \tcode{rhs}. +\end{itemdescr} + + +\rSec3[stoptoken.mem]{\tcode{stop_token} members} + +\indexlibrarymember{stop_requested}{stop_token}% +\begin{itemdecl} +[[nodiscard]] bool stop_requested() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{true} if \tcode{*this} has ownership of a stop state +that has received a stop request; +otherwise, \tcode{false}. +\end{itemdescr} + +\indexlibrarymember{stop_possible}{stop_token}% +\begin{itemdecl} +[[nodiscard]] bool stop_possible() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{false} if: +\begin{itemize} +\item \tcode{*this} does not have ownership of a stop state, or +\item a stop request was not made + and there are no associated \tcode{stop_source} objects; +\end{itemize} +otherwise, \tcode{true}. +\end{itemdescr} + + +\rSec3[stoptoken.cmp]{\tcode{stop_token} comparisons} + +\indexlibrarymember{operator==}{stop_token}% +\begin{itemdecl} +[[nodiscard]] bool operator==(const stop_token& lhs, const stop_token& rhs) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{true} if \tcode{lhs} and \tcode{rhs} have ownership of the same stop state +or if both \tcode{lhs} and \tcode{rhs} do not have ownership of a stop state; +otherwise \tcode{false}. +\end{itemdescr} + +\indexlibrarymember{operator!=}{stop_token}% +\begin{itemdecl} +[[nodiscard]] bool operator!=(const stop_token& lhs, const stop_token& rhs) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{!(lhs==rhs)}. +\end{itemdescr} + + +\rSec3[stoptoken.special]{Specialized algorithms} + +\indexlibrarymember{swap}{stop_token}% +\begin{itemdecl} +friend void swap(stop_token& x, stop_token& y) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{x.swap(y)}. +\end{itemdescr} + + +\indexlibrary{\idxcode{stop_source}}% +\rSec2[stopsource]{Class \tcode{stop_source}} + +\pnum +\indexlibrary{\idxcode{stop_source}}% +The class \tcode{stop_source} implements the semantics of making a stop request. +A stop request made on a \tcode{stop_source} object is visible to all +associated \tcode{stop_source} and \tcode{stop_token} (\ref{stoptoken}) objects. +Once a stop request has been made it cannot be withdrawn +(a subsequent stop request has no effect). + +\indexlibrary{\idxcode{nostopstate_t}}% +\indexlibrary{\idxcode{nostopstate}}% + \begin{codeblock} namespace std { - class thread::id { + // no-shared-stop-state indicator + struct nostopstate_t { + explicit nostopstate_t() = default; + }; + inline constexpr nostopstate_t nostopstate{}; + + class stop_source { public: - id() noexcept; + // \ref{stopsource.constr} create, copy, destroy: + stop_source(); + explicit stop_source(nostopstate_t) noexcept; + + stop_source(const stop_source&) noexcept; + stop_source(stop_source&&) noexcept; + stop_source& operator=(const stop_source&) noexcept; + stop_source& operator=(stop_source&&) noexcept; + ~stop_source(); + void swap(stop_source&) noexcept; + + // \ref{stopsource.mem} stop handling: + [[nodiscard]] stop_token get_token() const noexcept; + [[nodiscard]] bool stop_possible() const noexcept; + [[nodiscard]] bool stop_requested() const noexcept; + bool request_stop() noexcept; + + [[nodiscard]] friend bool + operator==(const stop_source& lhs, const stop_source& rhs) noexcept; + [[nodiscard]] friend bool + operator!=(const stop_source& lhs, const stop_source& rhs) noexcept; + friend void swap(stop_source& lhs, stop_source& rhs) noexcept; }; +} +\end{codeblock} - bool operator==(thread::id x, thread::id y) noexcept; - strong_ordering operator<=>(thread::id x, thread::id y) noexcept; - template - basic_ostream& - operator<<(basic_ostream& out, thread::id id); +\rSec3[stopsource.constr]{\tcode{stop_source} constructors} - // hash support - template struct hash; - template<> struct hash; -} -\end{codeblock} +\indexlibrary{\idxcode{stop_source}!constructor}% +\begin{itemdecl} +stop_source(); +\end{itemdecl} -\pnum An object of type \tcode{thread::id} provides a unique identifier for -each thread of execution and a single distinct value for all \tcode{thread} -objects that do not represent a thread of -execution\iref{thread.thread.class}. Each thread of execution has an -associated \tcode{thread::id} object that is not equal to the -\tcode{thread::id} object of any other thread of execution and that is not -equal to the \tcode{thread::id} object of any \tcode{thread} object that -does not represent threads of execution. +\begin{itemdescr} +\pnum +\effects Initialises \tcode{*this} to have ownership of a new stop state. \pnum -\tcode{thread::id} is a trivially copyable class\iref{class.prop}. -The library may reuse the value of a \tcode{thread::id} of a terminated thread that can no longer be joined. +\ensures \tcode{stop_possible()} is \tcode{true} +and \tcode{stop_requested()} is \tcode{false}. \pnum -\begin{note} Relational operators allow \tcode{thread::id} objects to be used as -keys in associative containers. \end{note} +\throws \tcode{bad_alloc} if memory could not be allocated for the stop state. +\end{itemdescr} -\indexlibrary{\idxcode{thread::id}!constructor}% +\indexlibrary{\idxcode{stop_source}!constructor}% \begin{itemdecl} -id() noexcept; +explicit stop_source(nostopstate_t) noexcept; \end{itemdecl} \begin{itemdescr} -\pnum\effects Constructs an object of type \tcode{id}. - -\pnum\ensures The constructed object does not represent a thread of execution. +\pnum +\ensures +\tcode{stop_possible()} is \tcode{false} and +\tcode{stop_requested()} is \tcode{false}. +\begin{note} No resources are allocated for the state. \end{note} \end{itemdescr} -\indexlibrarymember{operator==}{thread::id}% +\indexlibrary{\idxcode{stop_source}!constructor}% \begin{itemdecl} -bool operator==(thread::id x, thread::id y) noexcept; +stop_source(const stop_source& rhs) noexcept; \end{itemdecl} \begin{itemdescr} -\pnum\returns \tcode{true} only if \tcode{x} and \tcode{y} represent the same -thread of execution or neither \tcode{x} nor \tcode{y} represents a thread of -execution. +\pnum +\ensures \tcode{*this == rhs} is \tcode{true}. +\begin{note} +\tcode{*this} and \tcode{rhs} share the ownership of the same stop state, +if any. +\end{note} \end{itemdescr} -\indexlibrarymember{operator<=>}{thread::id}% +\indexlibrary{\idxcode{stop_source}!constructor}% \begin{itemdecl} -strong_ordering operator<=>(thread::id x, thread::id y) noexcept; +stop_source(stop_source&& rhs) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -Let $P(\tcode{x}, \tcode{y})$ be -an unspecified total ordering over \tcode{thread::id} -as described in \ref{alg.sorting}. +\ensures +\tcode{*this} contains the value of \tcode{rhs} +prior to the start of construction +and \tcode{rhs.stop_possible()} is \tcode{false}. +\end{itemdescr} + +\rSec3[stopsource.destr]{\tcode{stop_source} destructor} + +\indexlibrary{\idxcode{stop_source}!destructor}% +\begin{itemdecl} +~stop_source(); +\end{itemdecl} + +\begin{itemdescr} \pnum -\returns -\tcode{strong_ordering::less} if $P(\tcode{x}, \tcode{y})$ is \tcode{true}. -Otherwise, \tcode{strong_ordering::greater} -if $P(\tcode{y}, \tcode{x})$ is \tcode{true}. -Otherwise, \tcode{strong_ordering::equal}. +\effects Releases ownership of the stop state, if any. \end{itemdescr} -\indexlibrarymember{operator<<}{thread::id}% +\rSec3[stopsource.assign]{\tcode{stop_source} assignment} + +\indexlibrarymember{operator=}{stop_source}% \begin{itemdecl} -template - basic_ostream& - operator<< (basic_ostream& out, thread::id id); +stop_source& operator=(const stop_source& rhs) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{stop_source(rhs).swap(*this)}. + +\pnum +\returns \tcode{*this}. +\end{itemdescr} + +\indexlibrarymember{operator=}{stop_source}% +\begin{itemdecl} +stop_source& operator=(stop_source&& rhs) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{stop_source(std::move(rhs)).swap(*this)}. + +\pnum +\returns \tcode{*this}. +\end{itemdescr} + +\rSec3[stopsource.swap]{\tcode{stop_source} swap} + +\indexlibrarymember{swap}{stop_source}% +\begin{itemdecl} +void swap(stop_source& rhs) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Exchanges the values of \tcode{*this} and \tcode{rhs}. +\end{itemdescr} + + +\rSec3[stopsource.mem]{\tcode{stop_source} members} + +\indexlibrarymember{get_token}{stop_source sc}% +\begin{itemdecl} +[[nodiscard]] stop_token get_token() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{stop_token()} if \tcode{stop_possible()} is \tcode{false}; +otherwise a new associated \tcode{stop_token} object. +\end{itemdescr} + + +\indexlibrarymember{stop_possible}{stop_source}% +\begin{itemdecl} +[[nodiscard]] bool stop_possible() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{true} if \tcode{*this} has ownership of a stop state; +otherwise, \tcode{false}. +\end{itemdescr} + +\indexlibrarymember{stop_requested}{stop_source}% +\begin{itemdecl} +[[nodiscard]] bool stop_requested() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{true} if \tcode{*this} has ownership of a stop state +that has received a stop request; +otherwise, \tcode{false}. +\end{itemdescr} + + +\indexlibrarymember{request_stop}{stop_source}% +\begin{itemdecl} +bool request_stop() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +If \tcode{*this} does not have ownership of a stop state, returns \tcode{false}. +Otherwise, atomically determines whether the owned stop state +has received a stop request, +and if not, makes a stop request. +The determination and making of the stop request are an +atomic read-modify-write operation\iref{intro.races}. +If the request was made, +the callbacks registered by associated \tcode{stop_callback} objects +are synchronously called. +If an invocation of a callback exits via an exception +then \tcode{terminate} is called\iref{except.terminate}. +\begin{note} +A stop request includes notifying all condition variables +of type \tcode{condition_variable_any} +temporarily registered during +an interruptible wait\iref{thread.condvarany.interruptwait}. +\end{note} + +\pnum +\ensures +\tcode{stop_possible()} is \tcode{false} +or \tcode{stop_requested()} is \tcode{true}. + +\pnum +\returns +\tcode{true} if this call made a stop request; +otherwise \tcode{false}. +\end{itemdescr} + + +\rSec3[stopsource.cmp]{\tcode{stop_source} comparisons} + +\indexlibrarymember{operator==}{stop_source}% +\begin{itemdecl} +[[nodiscard]] bool operator==(const stop_source& lhs, const stop_source& rhs) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns +\tcode{true} if \tcode{lhs} and \tcode{rhs} have ownership +of the same stop state +or if both \tcode{lhs} and \tcode{rhs} do not have ownership of a stop state; +otherwise \tcode{false}. +\end{itemdescr} + +\indexlibrarymember{operator!=}{stop_source}% +\begin{itemdecl} +[[nodiscard]] bool operator!=(const stop_source& lhs, const stop_source& rhs) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{!(lhs==rhs)}. +\end{itemdescr} + + +\rSec3[stopsource.special]{Specialized algorithms} + +\indexlibrarymember{swap}{stop_source}% +\begin{itemdecl} +friend void swap(stop_source& x, stop_source& y) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{x.swap(y)}. +\end{itemdescr} + + +\indexlibrary{\idxcode{stop_callback}}% +\rSec2[stopcallback]{Class template \tcode{stop_callback}} + +\pnum +\indexlibrary{\idxcode{stop_callback}}% +\begin{codeblock} +namespace std { + template + class stop_callback { + public: + using callback_type = Callback; + + // \ref{stopcallback.constr} create, destroy: + template + explicit stop_callback(const stop_token& st, C&& cb) + noexcept(is_nothrow_constructible_v); + template + explicit stop_callback(stop_token&& st, C&& cb) + noexcept(is_nothrow_constructible_v); + ~stop_callback(); + + stop_callback(const stop_callback&) = delete; + stop_callback(stop_callback&&) = delete; + stop_callback& operator=(const stop_callback&) = delete; + stop_callback& operator=(stop_callback&&) = delete; + + private: + Callback callback; // \expos + }; + + template + stop_callback(stop_token, Callback) -> stop_callback; +} +\end{codeblock} + +\pnum +\mandates +\tcode{stop_callback} is instantiated with an argument for the +template parameter \tcode{Callback} +that satisfies both \tcode{Invocable} +and \tcode{Destructible}. + +\pnum +\expects +\tcode{stop_callback} is instantiated with an argument for the +template parameter \tcode{Callback} +that models both \tcode{Invocable} +and \tcode{Destructible}. + + +\rSec3[stopcallback.constr]{\tcode{stop_callback} constructors and destructor} + +\indexlibrary{\idxcode{stop_callback}!constructor}% +\begin{itemdecl} +template +explicit stop_callback(const stop_token& st, C&& cb) + noexcept(is_nothrow_constructible_v); +template +explicit stop_callback(stop_token&& st, C&& cb) + noexcept(is_nothrow_constructible_v); +\end{itemdecl} +\begin{itemdescr} +\pnum +\constraints +\tcode{Callback} and \tcode{C} satisfy \libconcept{Constructible}. + +\pnum +\expects +\tcode{Callback} and \tcode{C} model \libconcept{Constructible}. + +\pnum +\effects +Initializes \tcode{callback} with \tcode{std::forward(cb)}. +If \tcode{st.stop_requested()} is \tcode{true}, then +\tcode{std::forward(callback)()} +is evaluated in the current thread before the constructor returns. +Otherwise, if \tcode{st} has ownership of a stop state, +acquires shared ownership of that stop state and registers +the callback with that stop state +such that \tcode{std::forward(callback)()} +is evaluated by the first call to \tcode{request_stop()} +on an associated \tcode{stop_source}. + +\pnum +\remarks +If evaluating +\tcode{std::forward(callback)()} +exits via an exception, +then \tcode{terminate} is called\iref{except.terminate}. + +\pnum +\throws Any exception thrown by the initialization of \tcode{callback}. +\end{itemdescr} + + +\indexlibrary{\idxcode{stop_callback}!destructor}% +\begin{itemdecl} +~stop_callback(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Unregisters the callback from the owned stop state, if any. +The destructor does not block waiting for the execution of another callback +registered by an associated \tcode{stop_callback}. +If \tcode{callback} is concurrently executing on another thread, +then the return from the invocation of \tcode{callback} +strongly happens before\iref{intro.races} +\tcode{callback} is destroyed. +If \tcode{callback} is executing on the current thread, +then the destructor does not block\iref{defns.block} waiting for +the return from the invocation of \tcode{callback}. +Releases ownership of the stop state, if any. +\end{itemdescr} + + +\rSec1[thread.threads]{Threads} + +\pnum +\ref{thread.threads} describes components that can be used to create and manage threads. +\begin{note} These threads are intended to map one-to-one with operating system threads. +\end{note} + +\rSec2[thread.syn]{Header \tcode{} synopsis} +\indexhdr{thread}% + +\begin{codeblock} +namespace std { + class thread; + + void swap(thread& x, thread& y) noexcept; + + // \ref{thread.jthread.class} class \tcode{jthread} + class jthread; + + namespace this_thread { + thread::id get_id() noexcept; + + void yield() noexcept; + template + void sleep_until(const chrono::time_point& abs_time); + template + void sleep_for(const chrono::duration& rel_time); + } +} +\end{codeblock} + +\rSec2[thread.thread.class]{Class \tcode{thread}} + +\pnum +The class \tcode{thread} provides a mechanism to create a new thread of execution, to join with +a thread (i.e., wait for a thread to complete), and to perform other operations that manage and +query the state of a thread. A \tcode{thread} object uniquely represents a particular thread of +execution. That representation may be transferred to other \tcode{thread} objects in such a way +that no two \tcode{thread} objects simultaneously represent the same thread of execution. A +thread of execution is \term{detached} when no \tcode{thread} object represents that thread. +Objects of class \tcode{thread} can be in a state that does not represent a thread of +execution. \begin{note} A \tcode{thread} object does not represent a thread of execution after +default construction, after being moved from, or after a successful call to \tcode{detach} or +\tcode{join}. \end{note} + +\indexlibrary{\idxcode{thread}}% +\begin{codeblock} +namespace std { + class thread { + public: + // types + class id; + using native_handle_type = @\impdefnc@; // see~\ref{thread.req.native} + + // construct/copy/destroy + thread() noexcept; + template explicit thread(F&& f, Args&&... args); + ~thread(); + thread(const thread&) = delete; + thread(thread&&) noexcept; + thread& operator=(const thread&) = delete; + thread& operator=(thread&&) noexcept; + + // members + void swap(thread&) noexcept; + bool joinable() const noexcept; + void join(); + void detach(); + id get_id() const noexcept; + native_handle_type native_handle(); // see~\ref{thread.req.native} + + // static members + static unsigned int hardware_concurrency() noexcept; + }; +} +\end{codeblock} + +\rSec3[thread.thread.id]{Class \tcode{thread::id}} + +\indexlibrary{\idxcode{thread::id}}% +\indexlibrary{\idxcode{thread}!\idxcode{id}}% +\begin{codeblock} +namespace std { + class thread::id { + public: + id() noexcept; + }; + + bool operator==(thread::id x, thread::id y) noexcept; + strong_ordering operator<=>(thread::id x, thread::id y) noexcept; + + template + basic_ostream& + operator<<(basic_ostream& out, thread::id id); + + // hash support + template struct hash; + template<> struct hash; +} +\end{codeblock} + +\pnum An object of type \tcode{thread::id} provides a unique identifier for +each thread of execution and a single distinct value for all \tcode{thread} +objects that do not represent a thread of +execution\iref{thread.thread.class}. Each thread of execution has an +associated \tcode{thread::id} object that is not equal to the +\tcode{thread::id} object of any other thread of execution and that is not +equal to the \tcode{thread::id} object of any \tcode{thread} object that +does not represent threads of execution. + +\pnum +\tcode{thread::id} is a trivially copyable class\iref{class.prop}. +The library may reuse the value of a \tcode{thread::id} of a terminated thread that can no longer be joined. + +\pnum +\begin{note} Relational operators allow \tcode{thread::id} objects to be used as +keys in associative containers. \end{note} + +\indexlibrary{\idxcode{thread::id}!constructor}% +\begin{itemdecl} +id() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum\effects Constructs an object of type \tcode{id}. + +\pnum\ensures The constructed object does not represent a thread of execution. +\end{itemdescr} + +\indexlibrarymember{operator==}{thread::id}% +\begin{itemdecl} +bool operator==(thread::id x, thread::id y) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum\returns \tcode{true} only if \tcode{x} and \tcode{y} represent the same +thread of execution or neither \tcode{x} nor \tcode{y} represents a thread of +execution. +\end{itemdescr} + +\indexlibrarymember{operator<=>}{thread::id}% +\begin{itemdecl} +strong_ordering operator<=>(thread::id x, thread::id y) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +Let $P(\tcode{x}, \tcode{y})$ be +an unspecified total ordering over \tcode{thread::id} +as described in \ref{alg.sorting}. + +\pnum +\returns +\tcode{strong_ordering::less} if $P(\tcode{x}, \tcode{y})$ is \tcode{true}. +Otherwise, \tcode{strong_ordering::greater} +if $P(\tcode{y}, \tcode{x})$ is \tcode{true}. +Otherwise, \tcode{strong_ordering::equal}. +\end{itemdescr} + +\indexlibrarymember{operator<<}{thread::id}% +\begin{itemdecl} +template + basic_ostream& + operator<< (basic_ostream& out, thread::id id); \end{itemdecl} \begin{itemdescr} @@ -444,155 +1128,483 @@ representation and if \tcode{x != y} the \tcode{thread::id} objects have distinct text representations. -\pnum\returns \tcode{out}. -\end{itemdescr} +\pnum\returns \tcode{out}. +\end{itemdescr} + +\indexlibrary{\idxcode{hash}!\idxcode{thread::id}}% +\begin{itemdecl} +template<> struct hash; +\end{itemdecl} + +\begin{itemdescr} +\pnum The specialization is enabled\iref{unord.hash}. +\end{itemdescr} + +\rSec3[thread.thread.constr]{Constructors} + +\indexlibrary{\idxcode{thread}!constructor}% +\begin{itemdecl} +thread() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum\effects Constructs a \tcode{thread} object that does not represent a thread of execution. + +\pnum\ensures \tcode{get_id() == id()}. +\end{itemdescr} + +\indexlibrary{\idxcode{thread}!constructor}% +\begin{itemdecl} +template explicit thread(F&& f, Args&&... args); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\requires\ \tcode{F} and each $\tcode{T}_i$ in \tcode{Args} shall meet the +\oldconcept{MoveConstructible} requirements. +\tcode{% +\placeholdernc{INVOKE}(\brk{}% +\placeholdernc{decay-copy}(std::forward(f)),% +\placeholdernc{decay-copy}(std::forward({}args))...)}\iref{func.require} +shall be a valid expression. + +\pnum +\remarks +This constructor shall not participate in overload resolution if \tcode{remove_cvref_t} +is the same type as \tcode{std::thread}. + +\pnum +\effects\ Constructs an object of type \tcode{thread}. The new thread of execution executes +\tcode{% +\placeholdernc{INVOKE}(\brk{}% +\placeholdernc{decay-copy}(\brk{}% +std::forward(f)), +\placeholdernc{decay-copy}(\brk{}% +std::forward(\brk{}args))...)} with the calls to +\tcode{\placeholder{decay-copy}} being evaluated in the constructing thread. Any return value from this invocation +is ignored. \begin{note} This implies that any exceptions not thrown from the invocation of the copy +of \tcode{f} will be thrown in the constructing thread, not the new thread. \end{note} If the +invocation of +\tcode{% +\placeholdernc{INVOKE}(\brk{}% +\placeholdernc{decay-copy}(\brk{}% +std::forward(f)), +\placeholdernc{decay-copy}(\brk{}% +std::forward(args))...)} +termi\-nates with an uncaught exception, \tcode{terminate} shall be called. + + +\pnum\sync The completion of the invocation of the constructor +synchronizes with the beginning of the invocation of the copy of \tcode{f}. + +\pnum\ensures \tcode{get_id() != id()}. \tcode{*this} represents the newly started thread. + +\pnum\throws \tcode{system_error} if unable to start the new thread. + +\pnum\errors +\begin{itemize} +\item \tcode{resource_unavailable_try_again} --- the system lacked the necessary +resources to create another thread, or the system-imposed limit on the number of +threads in a process would be exceeded. +\end{itemize} +\end{itemdescr} + +\indexlibrary{\idxcode{thread}!constructor}% +\begin{itemdecl} +thread(thread&& x) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Constructs an object of type \tcode{thread} from \tcode{x}, and sets +\tcode{x} to a default constructed state. + +\pnum +\ensures \tcode{x.get_id() == id()} and \tcode{get_id()} returns the +value of \tcode{x.get_id()} prior to the start of construction. + +\end{itemdescr} + +\rSec3[thread.thread.destr]{Destructor} + +\indexlibrary{\idxcode{thread}!destructor}% +\begin{itemdecl} +~thread(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +If \tcode{joinable()}, calls \tcode{terminate()}. Otherwise, has no effects. +\begin{note} Either implicitly detaching or joining a \tcode{joinable()} thread in its +destructor could result in difficult to debug correctness (for detach) or performance +(for join) bugs encountered only when an exception is thrown. Thus the programmer must +ensure that the destructor is never executed while the thread is still joinable. +\end{note} +\end{itemdescr} + +\rSec3[thread.thread.assign]{Assignment} + +\indexlibrarymember{operator=}{thread}% +\begin{itemdecl} +thread& operator=(thread&& x) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects If \tcode{joinable()}, calls \tcode{terminate()}. Otherwise, assigns the +state of \tcode{x} to \tcode{*this} and sets \tcode{x} to a default constructed state. + +\pnum +\ensures \tcode{x.get_id() == id()} and \tcode{get_id()} returns the value of +\tcode{x.get_id()} prior to the assignment. + +\pnum +\returns \tcode{*this}. +\end{itemdescr} + +\rSec3[thread.thread.member]{Members} + +\indexlibrarymember{swap}{thread}% +\begin{itemdecl} +void swap(thread& x) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Swaps the state of \tcode{*this} and \tcode{x}. +\end{itemdescr} + +\indexlibrarymember{joinable}{thread}% +\begin{itemdecl} +bool joinable() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{get_id() != id()}. +\end{itemdescr} + +\indexlibrarymember{join}{thread}% +\begin{itemdecl} +void join(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects\ Blocks until the thread represented by \tcode{*this} has completed. + +\pnum +\sync The completion of the thread represented by \tcode{*this} synchronizes with\iref{intro.multithread} +the corresponding successful +\tcode{join()} return. \begin{note} Operations on +\tcode{*this} are not synchronized. \end{note} + +\pnum +\ensures The thread represented by \tcode{*this} has completed. \tcode{get_id() == id()}. + +\pnum +\throws \tcode{system_error} when +an exception is required\iref{thread.req.exception}. + +\pnum +\errors +\begin{itemize} +\item \tcode{resource_deadlock_would_occur} --- if deadlock is detected or +\tcode{get_id() == this_thread::\brk{}get_id()}. + +\item \tcode{no_such_process} --- if the thread is not valid. + +\item \tcode{invalid_argument} --- if the thread is not joinable. +\end{itemize} +\end{itemdescr} + +\indexlibrarymember{detach}{thread}% +\begin{itemdecl} +void detach(); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects The thread represented by \tcode{*this} continues execution without the calling thread +blocking. When \tcode{detach()} returns, \tcode{*this} no longer represents the possibly continuing +thread of execution. When the thread previously represented by \tcode{*this} ends execution, the +implementation shall release any owned resources. + +\pnum\ensures \tcode{get_id() == id()}. + +\pnum\throws \tcode{system_error} when +an exception is required\iref{thread.req.exception}. + +\pnum \errors +\begin{itemize} +\item \tcode{no_such_process} --- if the thread is not valid. +\item \tcode{invalid_argument} --- if the thread is not joinable. +\end{itemize} +\end{itemdescr} + +\indexlibrarymember{get_id}{thread}% +\begin{itemdecl} +id get_id() const noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns A default constructed \tcode{id} object if \tcode{*this} does not represent a thread, +otherwise \tcode{this_thread::get_id()} for the thread of execution represented by +\tcode{*this}. +\end{itemdescr} + +\rSec3[thread.thread.static]{Static members} + +\indexlibrarymember{hardware_concurrency}{thread}% +\begin{itemdecl} +unsigned hardware_concurrency() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns The number of hardware thread contexts. \begin{note} This value should +only be considered to be a hint. \end{note} If this value is not computable or +well-defined, an implementation should return 0. +\end{itemdescr} + +\rSec3[thread.thread.algorithm]{Specialized algorithms} + +\indexlibrarymember{swap}{thread}% +\begin{itemdecl} +void swap(thread& x, thread& y) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum\effects As if by \tcode{x.swap(y)}. +\end{itemdescr} + +\rSec2[thread.jthread.class]{Class \tcode{jthread}} + +\pnum +The class \tcode{jthread} provides a mechanism +to create a new thread of execution. +The functionality is the same as for +class \tcode{thread}\iref{thread.thread.class} +with the additional ability to request that the thread stops +and then joins the started thread. + + +\indexlibrary{\idxcode{jthread}}% +\begin{codeblock} +namespace std { + class jthread { + public: + // types + using id = thread::id; + using native_handle_type = thread::native_handle_type; + + // construct/copy/destroy + jthread() noexcept; + template explicit jthread(F&& f, Args&&... args); + ~jthread(); + jthread(const jthread&) = delete; + jthread(jthread&&) noexcept; + jthread& operator=(const jthread&) = delete; + jthread& operator=(jthread&&) noexcept; + + // members + void swap(jthread&) noexcept; + [[nodiscard]] bool joinable() const noexcept; + void join(); + void detach(); + [[nodiscard]] id get_id() const noexcept; + [[nodiscard]] native_handle_type native_handle(); // see~\ref{thread.req.native} + // stop token handling + [[nodiscard]] stop_source get_stop_source() noexcept; + [[nodiscard]] stop_token get_stop_token() const noexcept; + bool request_stop() noexcept; + + friend void swap(jthread& lhs, jthread& rhs) noexcept; + // static members + [[nodiscard]] static unsigned int hardware_concurrency() noexcept; -\indexlibrary{\idxcode{hash}!\idxcode{thread::id}}% -\begin{itemdecl} -template<> struct hash; -\end{itemdecl} + private: + stop_source ssource; // \expos + }; +\end{codeblock} -\begin{itemdescr} -\pnum The specialization is enabled\iref{unord.hash}. -\end{itemdescr} -\rSec3[thread.thread.constr]{Constructors} +\rSec3[thread.jthread.constr]{\tcode{jthread} constructors} -\indexlibrary{\idxcode{thread}!constructor}% +\indexlibrary{\idxcode{jthread}!constructor}% \begin{itemdecl} -thread() noexcept; +jthread() noexcept; \end{itemdecl} \begin{itemdescr} -\pnum\effects Constructs a \tcode{thread} object that does not represent a thread of execution. +\pnum +\effects +Constructs a \tcode{jthread} object that does not represent +a thread of execution. -\pnum\ensures \tcode{get_id() == id()}. +\pnum +\ensures +\tcode{get_id() == id()} is \tcode{true} +and \tcode{ssource.stop_possible()} is \tcode{false}. \end{itemdescr} -\indexlibrary{\idxcode{thread}!constructor}% +\indexlibrary{\idxcode{jthread}!constructor}% \begin{itemdecl} -template explicit thread(F&& f, Args&&... args); +template explicit jthread(F&& f, Args&&... args); \end{itemdecl} \begin{itemdescr} \pnum -\requires\ \tcode{F} and each $\tcode{T}_i$ in \tcode{Args} shall meet the +\requires +\tcode{F} and each $\tcode{T}_i$ in \tcode{Args} shall meet the \oldconcept{MoveConstructible} requirements. -\tcode{% -\placeholdernc{INVOKE}(\brk{}% -\placeholdernc{decay-copy}(std::forward(f)),% -\placeholdernc{decay-copy}(std::forward({}args))...)}\iref{func.require} -shall be a valid expression. +Either +\tcode{is_invocable_v, stop_token, decay_t...>} is true, +or +\tcode{is_invocable_v, decay_t...>} is true. \pnum -\remarks -This constructor shall not participate in overload resolution if \tcode{remove_cvref_t} -is the same type as \tcode{std::thread}. +\constraints +\tcode{remove_cvref_t} is not the same type as \tcode{jthread}. \pnum -\effects\ Constructs an object of type \tcode{thread}. The new thread of execution executes -\tcode{% -\placeholdernc{INVOKE}(\brk{}% -\placeholdernc{decay-copy}(\brk{}% -std::forward(f)), -\placeholdernc{decay-copy}(\brk{}% -std::forward(\brk{}args))...)} with the calls to -\tcode{\placeholder{decay-copy}} being evaluated in the constructing thread. Any return value from this invocation -is ignored. \begin{note} This implies that any exceptions not thrown from the invocation of the copy -of \tcode{f} will be thrown in the constructing thread, not the new thread. \end{note} If the -invocation of -\tcode{% -\placeholdernc{INVOKE}(\brk{}% -\placeholdernc{decay-copy}(\brk{}% -std::forward(f)), -\placeholdernc{decay-copy}(\brk{}% -std::forward(args))...)} -termi\-nates with an uncaught exception, \tcode{terminate} shall be called. - +\effects +Initializes \tcode{ssource} and +constructs an object of type \tcode{jthread}. +The new thread of execution executes + \tcode{% + \placeholdernc{INVOKE}(\brk{}% + \placeholdernc{decay-copy}(\brk{}% + std::forward(f)), + get_stop_token(), + \placeholdernc{decay-copy}(\brk{}% + std::forward\brk{}(\brk{}args))...)} +if that expression is well-formed, +otherwise + \tcode{% + \placeholdernc{INVOKE}(\brk{}% + \placeholdernc{decay-copy}(\brk{}% + std::forward\brk{}\brk{}(f)), + \placeholdernc{decay-copy}(\brk{}% + std::forward(\brk{}args))...)} +with the calls to +\tcode{\placeholder{decay-copy}} being evaluated in the constructing thread. +Any return value from this invocation is ignored. +\begin{note} +This implies that any exceptions not thrown from the invocation of the copy +of \tcode{f} will be thrown in the constructing thread, not the new thread. +\end{note} +If the \tcode{\placeholdernc{INVOKE}} expression exits via an exception, +\tcode{terminate} is called. -\pnum\sync The completion of the invocation of the constructor +\pnum +\sync The completion of the invocation of the constructor synchronizes with the beginning of the invocation of the copy of \tcode{f}. -\pnum\ensures \tcode{get_id() != id()}. \tcode{*this} represents the newly started thread. +\pnum\ensures +\tcode{get_id() != id()} is \tcode{true} +and \tcode{ssource.stop_possible()} is \tcode{true} +and \tcode{*this} represents the newly started thread. +\begin{note} +The calling thread can make a stop request only once, +because it cannot replace this stop token. +\end{note} \pnum\throws \tcode{system_error} if unable to start the new thread. -\pnum\errors +\pnum +\errors \begin{itemize} -\item \tcode{resource_unavailable_try_again} --- the system lacked the necessary -resources to create another thread, or the system-imposed limit on the number of -threads in a process would be exceeded. +\item \tcode{resource_unavailable_try_again} --- the system lacked +the necessary resources to create another thread, +or the system-imposed limit on the number of threads in a process +would be exceeded. \end{itemize} \end{itemdescr} -\indexlibrary{\idxcode{thread}!constructor}% +\indexlibrary{\idxcode{jthread}!constructor}% \begin{itemdecl} -thread(thread&& x) noexcept; +jthread(jthread&& x) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\effects Constructs an object of type \tcode{thread} from \tcode{x}, and sets +\effects Constructs an object of type \tcode{jthread} from \tcode{x}, and sets \tcode{x} to a default constructed state. \pnum -\ensures \tcode{x.get_id() == id()} and \tcode{get_id()} returns the -value of \tcode{x.get_id()} prior to the start of construction. - +\ensures +\tcode{x.get_id() == id()} +and \tcode{get_id()} returns the value of \tcode{x.get_id()} +prior to the start of construction. +\tcode{ssource} has the value of \tcode{x.ssource} +prior to the start of construction +and \tcode{x.ssource.stop_possible()} is \tcode{false}. \end{itemdescr} -\rSec3[thread.thread.destr]{Destructor} -\indexlibrary{\idxcode{thread}!destructor}% +\rSec3[thread.jthread.destr]{\tcode{jthread} destructor} + +\indexlibrary{\idxcode{jthread}!destructor}% \begin{itemdecl} -~thread(); +~jthread(); \end{itemdecl} \begin{itemdescr} \pnum -If \tcode{joinable()}, calls \tcode{terminate()}. Otherwise, has no effects. -\begin{note} Either implicitly detaching or joining a \tcode{joinable()} thread in its -destructor could result in difficult to debug correctness (for detach) or performance -(for join) bugs encountered only when an exception is thrown. Thus the programmer must -ensure that the destructor is never executed while the thread is still joinable. -\end{note} +\effects +If \tcode{joinable()} is \tcode{true}, +calls \tcode{request_stop()} and then \tcode{join()}. +\begin{note} Operations on \tcode{*this} are not synchronized. \end{note} \end{itemdescr} -\rSec3[thread.thread.assign]{Assignment} -\indexlibrarymember{operator=}{thread}% +\rSec3[thread.jthread.assign]{\tcode{jthread} assignment} + +\indexlibrarymember{operator=}{jthread}% \begin{itemdecl} -thread& operator=(thread&& x) noexcept; +jthread& operator=(jthread&& x) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\effects If \tcode{joinable()}, calls \tcode{terminate()}. Otherwise, assigns the -state of \tcode{x} to \tcode{*this} and sets \tcode{x} to a default constructed state. +\effects +If \tcode{joinable()} is \tcode{true}, +calls \tcode{request_stop()} and then \tcode{join()}. +Assigns the state of \tcode{x} to \tcode{*this} +and sets \tcode{x} to a default constructed state. \pnum -\ensures \tcode{x.get_id() == id()} and \tcode{get_id()} returns the value of -\tcode{x.get_id()} prior to the assignment. +\ensures +\tcode{x.get_id() == id()} +and \tcode{get_id()} returns the value of \tcode{x.get_id()} +prior to the assignment. +\tcode{ssource} has the value of \tcode{x.ssource} +prior to the assignment +and \tcode{x.ssource.stop_possible()} is \tcode{false}. \pnum \returns \tcode{*this}. \end{itemdescr} -\rSec3[thread.thread.member]{Members} -\indexlibrarymember{swap}{thread}% +\rSec3[thread.jthread.member]{Members} + +\indexlibrarymember{swap}{jthread}% \begin{itemdecl} -void swap(thread& x) noexcept; +void swap(jthread& x) noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\effects Swaps the state of \tcode{*this} and \tcode{x}. +\effects Exchanges the values of \tcode{*this} and \tcode{x}. \end{itemdescr} -\indexlibrarymember{joinable}{thread}% + +\indexlibrarymember{joinable}{jthread}% \begin{itemdecl} -bool joinable() const noexcept; +[[nodiscard]] bool joinable() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -600,27 +1612,28 @@ \returns \tcode{get_id() != id()}. \end{itemdescr} -\indexlibrarymember{join}{thread}% +\indexlibrarymember{join}{jthread}% \begin{itemdecl} void join(); \end{itemdecl} \begin{itemdescr} \pnum -\effects\ Blocks until the thread represented by \tcode{*this} has completed. +\effects Blocks until the thread represented by \tcode{*this} has completed. \pnum -\sync The completion of the thread represented by \tcode{*this} synchronizes with\iref{intro.multithread} -the corresponding successful -\tcode{join()} return. \begin{note} Operations on -\tcode{*this} are not synchronized. \end{note} +\sync The completion of the thread represented by \tcode{*this} +synchronizes with\iref{intro.multithread} +the corresponding successful \tcode{join()} return. +\begin{note} Operations on \tcode{*this} are not synchronized. \end{note} \pnum -\ensures The thread represented by \tcode{*this} has completed. \tcode{get_id() == id()}. +\ensures The thread represented by \tcode{*this} has completed. +\tcode{get_id() == id()}. \pnum -\throws \tcode{system_error} when -an exception is required\iref{thread.req.exception}. +\throws +\tcode{system_error} when an exception is required\iref{thread.req.exception}. \pnum \errors @@ -634,22 +1647,27 @@ \end{itemize} \end{itemdescr} -\indexlibrarymember{detach}{thread}% +\indexlibrarymember{detach}{jthread}% \begin{itemdecl} void detach(); \end{itemdecl} \begin{itemdescr} \pnum -\effects The thread represented by \tcode{*this} continues execution without the calling thread -blocking. When \tcode{detach()} returns, \tcode{*this} no longer represents the possibly continuing -thread of execution. When the thread previously represented by \tcode{*this} ends execution, the -implementation shall release any owned resources. +\effects +The thread represented by \tcode{*this} continues execution +without the calling thread blocking. +When \tcode{detach()} returns, +\tcode{*this} no longer represents the possibly continuing thread of execution. +When the thread previously represented by \tcode{*this} ends execution, +the implementation shall release any owned resources. -\pnum\ensures \tcode{get_id() == id()}. +\pnum +\ensures \tcode{get_id() == id()}. -\pnum\throws \tcode{system_error} when -an exception is required\iref{thread.req.exception}. +\pnum +\throws +\tcode{system_error} when an exception is required\iref{thread.req.exception}. \pnum \errors \begin{itemize} @@ -658,43 +1676,80 @@ \end{itemize} \end{itemdescr} -\indexlibrarymember{get_id}{thread}% +\indexlibrarymember{get_id}{jthread}% \begin{itemdecl} id get_id() const noexcept; \end{itemdecl} \begin{itemdescr} \pnum -\returns A default constructed \tcode{id} object if \tcode{*this} does not represent a thread, -otherwise \tcode{this_thread::get_id()} for the thread of execution represented by -\tcode{*this}. +\returns +A default constructed \tcode{id} object +if \tcode{*this} does not represent a thread, +otherwise \tcode{this_thread::get_id()} +for the thread of execution represented by \tcode{*this}. \end{itemdescr} -\rSec3[thread.thread.static]{Static members} -\indexlibrarymember{hardware_concurrency}{thread}% +\rSec3[thread.jthread.stop]{\tcode{jthread} stop members} + +\indexlibrarymember{get_stop_source}{jthread}% \begin{itemdecl} -unsigned hardware_concurrency() noexcept; +[[nodiscard]] stop_source get_stop_source() noexcept \end{itemdecl} \begin{itemdescr} \pnum -\returns The number of hardware thread contexts. \begin{note} This value should -only be considered to be a hint. \end{note} If this value is not computable or -well-defined, an implementation should return 0. +\effects Equivalent to: \tcode{return ssource;} \end{itemdescr} -\rSec3[thread.thread.algorithm]{Specialized algorithms} +\indexlibrarymember{get_stop_token}{jthread}% +\begin{itemdecl} +[[nodiscard]] stop_token get_stop_token() const noexcept +\end{itemdecl} -\indexlibrarymember{swap}{thread}% +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{return ssource.get_token();} +\end{itemdescr} + +\indexlibrarymember{request_stop}{jthread}% \begin{itemdecl} -void swap(thread& x, thread& y) noexcept; +bool request_stop() noexcept; \end{itemdecl} \begin{itemdescr} -\pnum\effects As if by \tcode{x.swap(y)}. +\pnum +\effects Equivalent to: \tcode{return ssource.request_stop();} +\end{itemdescr} + + +\rSec3[thread.jthread.special]{Specialized algorithms} + +\indexlibrarymember{swap}{jthread}% +\begin{itemdecl} +friend void swap(jthread& x, jthread& y) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: \tcode{x.swap(y)}. +\end{itemdescr} + + +\rSec3[thread.jthread.static]{Static members} + +\indexlibrarymember{hardware_concurrency}{jthread}% +\begin{itemdecl} +unsigned hardware_concurrency() noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\returns \tcode{thread::hardware_concurrency()}. \end{itemdescr} + \rSec2[thread.thread.this]{Namespace \tcode{this_thread}} \begin{codeblock} @@ -3296,6 +4351,7 @@ void notify_one() noexcept; void notify_all() noexcept; + // \ref{thread.condvarany.wait} noninterruptible waits: template void wait(Lock& lock); template @@ -3310,6 +4366,22 @@ cv_status wait_for(Lock& lock, const chrono::duration& rel_time); template bool wait_for(Lock& lock, const chrono::duration& rel_time, Predicate pred); + + // \ref{thread.condvarany.interruptwait} interruptible waits: + template + bool wait_until(Lock& lock, + Predicate pred, + stop_token stoken); + template + bool wait_until(Lock& lock, + const chrono::time_point& abs_time + Predicate pred, + stop_token stoken); + template + bool wait_for(Lock& lock, + const chrono::duration& rel_time, + Predicate pred, + stop_token stoken); }; } \end{codeblock} @@ -3376,6 +4448,8 @@ \pnum\effects Unblocks all threads that are blocked waiting for \tcode{*this}. \end{itemdescr} +\rSec3[thread.condvarany.wait]{Noninterruptible waits} + \indexlibrarymember{wait}{condition_variable_any}% \begin{itemdecl} template @@ -3536,6 +4610,128 @@ \end{codeblock} \end{itemdescr} +\rSec3[thread.condvarany.interruptwait]{Interruptible waits} + +\pnum +The following wait functions will be notified +when there is a stop request on the passed \tcode{stop_token}. +In that case the functions return immediately, +returning \tcode{false} if the predicate evaluates to \tcode{false}. + +\begin{itemdecl} +template + bool wait_until(Lock& lock, + Predicate pred, + stop_token stoken); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Registers for the duration of this call \tcode{*this} +to get notified on a stop request on \tcode{stoken} +during this call and then equivalent to: +\begin{codeblock} +while (!stoken.stop_requested()) { + if (pred()) + return true; + wait(lock); +} +return pred(); +\end{codeblock} + +\pnum +\begin{note} +The returned value indicates whether the predicate evaluated to +\tcode{true} regardless of whether there was a stop request. +\end{note} + +\pnum +\ensures \tcode{lock} is locked by the calling thread. + +\pnum +\remarks +If the function fails to meet the postcondition, +\tcode{terminate} is called\iref{except.terminate}. +\begin{note} +This can happen if the re-locking of the mutex throws an exception. +\end{note} + +\pnum +\throws Any exception thrown by \tcode{pred}. +\end{itemdescr} + +\begin{itemdecl} +template + bool wait_until(Lock& lock, + const chrono::time_point& abs_time + Predicate pred, + stop_token stoken); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects +Registers for the duration of this call \tcode{*this} +to get notified on a stop request on \tcode{stoken} +during this call and then equivalent to: +\begin{codeblock} +while (!stoken.stop_requested()) { + if (pred()) + return true; + if (cv.wait_until(lock, abs_time) == cv_status::timeout) + return pred(); +} +return pred(); +\end{codeblock} + +\pnum +\begin{note} +There is no blocking if \tcode{pred()} is initially \tcode{true}, +\tcode{stoken.stop_requested()} was already \tcode{true} +or the timeout has already expired. +\end{note} + +\pnum +\begin{note} +The returned value indicates whether the predicate evaluated to \tcode{true} +regardless of whether the timeout was triggered or a stop request was made. +\end{note} + +\pnum +\ensures \tcode{lock} is locked by the calling thread. + +\pnum +\remarks +If the function fails to meet the postcondition, +\tcode{terminate} is called\iref{except.terminate}. +\begin{note} +This can happen if the re-locking of the mutex throws an exception. +\end{note} + +\pnum +\throws +Timeout-related exceptions \iref{thread.req.timing}, +or any exception thrown by \tcode{pred}. +\end{itemdescr} + +\begin{itemdecl} +template + bool wait_for(Lock& lock, + const chrono::duration& rel_time, + Predicate pred, + stop_token stoken); +\end{itemdecl} + +\begin{itemdescr} +\pnum +\effects Equivalent to: +\begin{codeblock} +return wait_until(lock, chrono::steady_clock::now() + rel_time, std::move(pred), + std::move(stoken)); +\end{codeblock} +\end{itemdescr} + \rSec1[thread.sema]{Semaphore} \pnum From cf1bc270c0e7d7b1670502c69268b0373bbf9799 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 01:35:47 -0700 Subject: [PATCH 150/312] [thread] Update headings, comments, and line wrapping to match editorial conventions. --- source/threads.tex | 126 +++++++++++++++------------------------------ 1 file changed, 41 insertions(+), 85 deletions(-) diff --git a/source/threads.tex b/source/threads.tex index 20f64ac7a6..169e9c7570 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -277,7 +277,7 @@ \rSec1[thread.stoptoken]{Stop tokens} -\rSec2[thread.stoptoken.intro]{Stop token introduction} +\rSec2[thread.stoptoken.intro]{Introduction} \pnum This clause describes components that can be used @@ -326,10 +326,10 @@ \begin{codeblock} namespace std { - // \ref{stoptoken} class \tcode{stop_token} + // \ref{stoptoken}, class \tcode{stop_token} class stop_token; - // \ref{stopsource} class \tcode{stop_source} + // \ref{stopsource}, class \tcode{stop_source} class stop_source; // no-shared-stop-state indicator @@ -338,7 +338,7 @@ }; inline constexpr nostopstate_t nostopstate{}; - // \ref{stopcallback} class \tcode{stop_callback} + // \ref{stopcallback}, class \tcode{stop_callback} template class stop_callback; } @@ -363,7 +363,7 @@ namespace std { class stop_token { public: - // \ref{stoptoken.constr} create, copy, destroy: + // \ref{stoptoken.cons}, constructors, copy, and assignment stop_token() noexcept; stop_token(const stop_token&) noexcept; @@ -373,7 +373,7 @@ ~stop_token(); void swap(stop_token&) noexcept; - // \ref{stoptoken.mem} stop handling: + // \ref{stoptoken.mem}, stop handling [[nodiscard]] bool stop_requested() const noexcept; [[nodiscard]] bool stop_possible() const noexcept; @@ -385,7 +385,7 @@ \end{codeblock} -\rSec3[stoptoken.constr]{\tcode{stop_token} constructors} +\rSec3[stoptoken.cons]{Constructors, copy, and assignment} \indexlibrary{\idxcode{stop_token}!constructor}% \begin{itemdecl} @@ -429,9 +429,6 @@ and \tcode{rhs.stop_possible()} is \tcode{false}. \end{itemdescr} - -\rSec3[stoptoken.destr]{\tcode{stop_token} destructor} - \indexlibrary{\idxcode{stop_token}!destructor}% \begin{itemdecl} ~stop_token(); @@ -442,9 +439,6 @@ \effects Releases ownership of the stop state, if any. \end{itemdescr} - -\rSec3[stoptoken.assign]{\tcode{stop_token} assignment} - \indexlibrarymember{operator=}{stop_token}% \begin{itemdecl} stop_token& operator=(const stop_token& rhs) noexcept; @@ -471,9 +465,6 @@ \returns \tcode{*this}. \end{itemdescr} - -\rSec3[stoptoken.swap]{\tcode{stop_token} swap} - \indexlibrarymember{swap}{stop_token}% \begin{itemdecl} void swap(stop_token& rhs) noexcept; @@ -484,8 +475,7 @@ \effects Exchanges the values of \tcode{*this} and \tcode{rhs}. \end{itemdescr} - -\rSec3[stoptoken.mem]{\tcode{stop_token} members} +\rSec3[stoptoken.mem]{Members} \indexlibrarymember{stop_requested}{stop_token}% \begin{itemdecl} @@ -515,8 +505,7 @@ otherwise, \tcode{true}. \end{itemdescr} - -\rSec3[stoptoken.cmp]{\tcode{stop_token} comparisons} +\rSec3[stoptoken.cmp]{Comparisons} \indexlibrarymember{operator==}{stop_token}% \begin{itemdecl} @@ -541,7 +530,6 @@ \returns \tcode{!(lhs==rhs)}. \end{itemdescr} - \rSec3[stoptoken.special]{Specialized algorithms} \indexlibrarymember{swap}{stop_token}% @@ -554,7 +542,6 @@ \effects Equivalent to: \tcode{x.swap(y)}. \end{itemdescr} - \indexlibrary{\idxcode{stop_source}}% \rSec2[stopsource]{Class \tcode{stop_source}} @@ -579,7 +566,7 @@ class stop_source { public: - // \ref{stopsource.constr} create, copy, destroy: + // \ref{stopsource.cons}, constructors, copy, and assignment stop_source(); explicit stop_source(nostopstate_t) noexcept; @@ -590,7 +577,7 @@ ~stop_source(); void swap(stop_source&) noexcept; - // \ref{stopsource.mem} stop handling: + // \ref{stopsource.mem}, stop handling [[nodiscard]] stop_token get_token() const noexcept; [[nodiscard]] bool stop_possible() const noexcept; [[nodiscard]] bool stop_requested() const noexcept; @@ -605,8 +592,7 @@ } \end{codeblock} - -\rSec3[stopsource.constr]{\tcode{stop_source} constructors} +\rSec3[stopsource.cons]{Constructors, copy, and assignment} \indexlibrary{\idxcode{stop_source}!constructor}% \begin{itemdecl} @@ -665,9 +651,6 @@ and \tcode{rhs.stop_possible()} is \tcode{false}. \end{itemdescr} - -\rSec3[stopsource.destr]{\tcode{stop_source} destructor} - \indexlibrary{\idxcode{stop_source}!destructor}% \begin{itemdecl} ~stop_source(); @@ -678,8 +661,6 @@ \effects Releases ownership of the stop state, if any. \end{itemdescr} -\rSec3[stopsource.assign]{\tcode{stop_source} assignment} - \indexlibrarymember{operator=}{stop_source}% \begin{itemdecl} stop_source& operator=(const stop_source& rhs) noexcept; @@ -706,8 +687,6 @@ \returns \tcode{*this}. \end{itemdescr} -\rSec3[stopsource.swap]{\tcode{stop_source} swap} - \indexlibrarymember{swap}{stop_source}% \begin{itemdecl} void swap(stop_source& rhs) noexcept; @@ -718,8 +697,7 @@ \effects Exchanges the values of \tcode{*this} and \tcode{rhs}. \end{itemdescr} - -\rSec3[stopsource.mem]{\tcode{stop_source} members} +\rSec3[stopsource.mem]{Members} \indexlibrarymember{get_token}{stop_source sc}% \begin{itemdecl} @@ -783,7 +761,7 @@ A stop request includes notifying all condition variables of type \tcode{condition_variable_any} temporarily registered during -an interruptible wait\iref{thread.condvarany.interruptwait}. +an interruptible wait\iref{thread.condvarany.intwait}. \end{note} \pnum @@ -797,8 +775,7 @@ otherwise \tcode{false}. \end{itemdescr} - -\rSec3[stopsource.cmp]{\tcode{stop_source} comparisons} +\rSec3[stopsource.cmp]{Comparisons} \indexlibrarymember{operator==}{stop_source}% \begin{itemdecl} @@ -824,7 +801,6 @@ \returns \tcode{!(lhs==rhs)}. \end{itemdescr} - \rSec3[stopsource.special]{Specialized algorithms} \indexlibrarymember{swap}{stop_source}% @@ -837,7 +813,6 @@ \effects Equivalent to: \tcode{x.swap(y)}. \end{itemdescr} - \indexlibrary{\idxcode{stop_callback}}% \rSec2[stopcallback]{Class template \tcode{stop_callback}} @@ -850,7 +825,7 @@ public: using callback_type = Callback; - // \ref{stopcallback.constr} create, destroy: + // \ref{stopcallback.cons}, constructors and destructor template explicit stop_callback(const stop_token& st, C&& cb) noexcept(is_nothrow_constructible_v); @@ -888,7 +863,7 @@ and \tcode{Destructible}. -\rSec3[stopcallback.constr]{\tcode{stop_callback} constructors and destructor} +\rSec3[stopcallback.cons]{Constructors and destructor} \indexlibrary{\idxcode{stop_callback}!constructor}% \begin{itemdecl} @@ -932,7 +907,6 @@ \throws Any exception thrown by the initialization of \tcode{callback}. \end{itemdescr} - \indexlibrary{\idxcode{stop_callback}!destructor}% \begin{itemdecl} ~stop_callback(); @@ -1399,7 +1373,7 @@ using id = thread::id; using native_handle_type = thread::native_handle_type; - // construct/copy/destroy + // \ref{thread.jthread.cons}, constructors, move, and assignment jthread() noexcept; template explicit jthread(F&& f, Args&&... args); ~jthread(); @@ -1408,20 +1382,23 @@ jthread& operator=(const jthread&) = delete; jthread& operator=(jthread&&) noexcept; - // members + // \ref{thread.jthread.mem}, members void swap(jthread&) noexcept; [[nodiscard]] bool joinable() const noexcept; void join(); void detach(); [[nodiscard]] id get_id() const noexcept; [[nodiscard]] native_handle_type native_handle(); // see~\ref{thread.req.native} - // stop token handling + + // \ref{thread.jthread.mem}, stop token handling [[nodiscard]] stop_source get_stop_source() noexcept; [[nodiscard]] stop_token get_stop_token() const noexcept; bool request_stop() noexcept; + // \ref{thread.jthread.special}, specialized algorithms friend void swap(jthread& lhs, jthread& rhs) noexcept; - // static members + + // \ref{thread.jthread.static}, static members [[nodiscard]] static unsigned int hardware_concurrency() noexcept; private: @@ -1429,8 +1406,7 @@ }; \end{codeblock} - -\rSec3[thread.jthread.constr]{\tcode{jthread} constructors} +\rSec3[thread.jthread.cons]{Constructors, move, and assignment} \indexlibrary{\idxcode{jthread}!constructor}% \begin{itemdecl} @@ -1543,9 +1519,6 @@ and \tcode{x.ssource.stop_possible()} is \tcode{false}. \end{itemdescr} - -\rSec3[thread.jthread.destr]{\tcode{jthread} destructor} - \indexlibrary{\idxcode{jthread}!destructor}% \begin{itemdecl} ~jthread(); @@ -1559,9 +1532,6 @@ \begin{note} Operations on \tcode{*this} are not synchronized. \end{note} \end{itemdescr} - -\rSec3[thread.jthread.assign]{\tcode{jthread} assignment} - \indexlibrarymember{operator=}{jthread}% \begin{itemdecl} jthread& operator=(jthread&& x) noexcept; @@ -1588,8 +1558,7 @@ \returns \tcode{*this}. \end{itemdescr} - -\rSec3[thread.jthread.member]{Members} +\rSec3[thread.jthread.mem]{Members} \indexlibrarymember{swap}{jthread}% \begin{itemdecl} @@ -1690,8 +1659,7 @@ for the thread of execution represented by \tcode{*this}. \end{itemdescr} - -\rSec3[thread.jthread.stop]{\tcode{jthread} stop members} +\rSec3[thread.jthread.stop]{Stop token handling} \indexlibrarymember{get_stop_source}{jthread}% \begin{itemdecl} @@ -1736,7 +1704,6 @@ \effects Equivalent to: \tcode{x.swap(y)}. \end{itemdescr} - \rSec3[thread.jthread.static]{Static members} \indexlibrarymember{hardware_concurrency}{jthread}% @@ -4351,7 +4318,8 @@ void notify_one() noexcept; void notify_all() noexcept; - // \ref{thread.condvarany.wait} noninterruptible waits: + + // \ref{thread.condvarany.wait}, noninterruptible waits template void wait(Lock& lock); template @@ -4367,21 +4335,15 @@ template bool wait_for(Lock& lock, const chrono::duration& rel_time, Predicate pred); - // \ref{thread.condvarany.interruptwait} interruptible waits: + // \ref{thread.condvarany.intwait}, interruptible waits template - bool wait_until(Lock& lock, - Predicate pred, - stop_token stoken); + bool wait_until(Lock& lock, Predicate pred, stop_token stoken); template - bool wait_until(Lock& lock, - const chrono::time_point& abs_time - Predicate pred, - stop_token stoken); + bool wait_until(Lock& lock, const chrono::time_point& abs_time + Predicate pred, stop_token stoken); template - bool wait_for(Lock& lock, - const chrono::duration& rel_time, - Predicate pred, - stop_token stoken); + bool wait_for(Lock& lock, const chrono::duration& rel_time, + Predicate pred, stop_token stoken); }; } \end{codeblock} @@ -4610,7 +4572,7 @@ \end{codeblock} \end{itemdescr} -\rSec3[thread.condvarany.interruptwait]{Interruptible waits} +\rSec3[thread.condvarany.intwait]{Interruptible waits} \pnum The following wait functions will be notified @@ -4620,9 +4582,7 @@ \begin{itemdecl} template - bool wait_until(Lock& lock, - Predicate pred, - stop_token stoken); + bool wait_until(Lock& lock, Predicate pred, stop_token stoken); \end{itemdecl} \begin{itemdescr} @@ -4663,10 +4623,8 @@ \begin{itemdecl} template - bool wait_until(Lock& lock, - const chrono::time_point& abs_time - Predicate pred, - stop_token stoken); + bool wait_until(Lock& lock, const chrono::time_point& abs_time + Predicate pred, stop_token stoken); \end{itemdecl} \begin{itemdescr} @@ -4717,10 +4675,8 @@ \begin{itemdecl} template - bool wait_for(Lock& lock, - const chrono::duration& rel_time, - Predicate pred, - stop_token stoken); + bool wait_for(Lock& lock, const chrono::duration& rel_time, + Predicate pred, stop_token stoken); \end{itemdecl} \begin{itemdescr} From 61ed3e6358589b8ee3838d4e94468d782bf83661 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Mon, 22 Jul 2019 19:42:37 -0700 Subject: [PATCH 151/312] P1474R1 Helpful pointers for ContiguousIterator [range.iota.view]p2 Added "be" in "Let ... c be a ..." Fixes #3030. --- source/iterators.tex | 19 +++++++++++++------ source/ranges.tex | 10 +++------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index 78c328e1fa..4643722faa 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1820,17 +1820,24 @@ RandomAccessIterator && DerivedFrom<@\placeholdernc{ITER_CONCEPT}@(I), contiguous_iterator_tag> && is_lvalue_reference_v> && - Same, remove_cvref_t>>; + Same, remove_cvref_t>> && + requires(const I& i) { + { to_address(i) } -> Same>>; + }; \end{codeblock} \pnum -Let \tcode{a} and \tcode{b} be dereferenceable iterators of type \tcode{I} -such that \tcode{b} is reachable from \tcode{a}, +Let \tcode{a} and \tcode{b} be dereferenceable iterators and +\tcode{c} be a non-dereferenceable iterator of type \tcode{I} +such that \tcode{b} is reachable from \tcode{a} and +\tcode{c} is reachable from \tcode{b}, and let \tcode{D} be \tcode{iter_difference_t}. The type \tcode{I} models \libconcept{ContiguousIterator} only if -\tcode{addressof(*(a + D(b - a)))} -is equal to -\tcode{addressof(*a) + D(b - a)}. +\begin{itemize} +\item \tcode{to_address(a) == addressof(*a)}, +\item \tcode{to_address(b) == to_address(a) + D(b - a)}, and +\item \tcode{to_address(c) == to_address(a) + D(c - a)}. +\end{itemize} \rSec2[iterator.cpp17]{\Cpp{}17 iterator requirements} diff --git a/source/ranges.tex b/source/ranges.tex index 971287ec61..79058ba264 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -661,11 +661,7 @@ \item Otherwise, if \tcode{ranges::begin(E)} is a valid expression whose type models \tcode{ContiguousIterator}, - \begin{codeblock} - ranges::begin(E) == ranges::end(E) ? nullptr : addressof(*ranges::begin(E)) - \end{codeblock} - - except that \tcode{E} is evaluated only once. + \tcode{to_address(ranges::begin(E))}. \item Otherwise, \tcode{ranges::data(E)} is ill-formed. @@ -1127,11 +1123,11 @@ } constexpr auto data() requires ContiguousIterator> { - return ranges::empty(derived()) ? nullptr : addressof(*ranges::begin(derived())); + return to_address(ranges::begin(derived())); } constexpr auto data() const requires Range && ContiguousIterator> { - return ranges::empty(derived()) ? nullptr : addressof(*ranges::begin(derived())); + return to_address(ranges::begin(derived())); } constexpr auto size() requires ForwardRange && From 73a20473bb9088266616a05574c99a9271c68d37 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Mon, 22 Jul 2019 19:00:21 -0700 Subject: [PATCH 152/312] P1523R1 Views and Size Types Fixes #3034. --- source/ranges.tex | 57 ++++++++++++++++++++++++++--------------------- 1 file changed, 31 insertions(+), 26 deletions(-) diff --git a/source/ranges.tex b/source/ranges.tex index 79058ba264..a5d58c326d 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -589,10 +589,10 @@ \end{itemize} \item - Otherwise, \tcode{(ranges::end(E) - ranges::begin(E))} + Otherwise, \tcode{\placeholdernc{make-unsigned-like}(ranges::end(E) - ranges::begin(E))}\iref{range.subrange} if it is a valid expression and the types \tcode{I} and \tcode{S} of \tcode{ranges::begin(E)} and - \tcode{ranges::end(E)} (respectively) model both + \tcode{ranges::end(E)} (respectively) model both\hfill\break %avoid overfull \tcode{SizedSentinel}\iref{iterator.concept.sizedsentinel} and \tcode{Forward\-Iterator}. However, \tcode{E} is evaluated only once. @@ -1209,7 +1209,7 @@ \begin{codeblock} namespace std::ranges { template - concept @\placeholdernc{pair-like}@ = // \expos + concept @\placeholdernc{pair-like}@ = // \expos !is_reference_v && requires(T t) { typename tuple_size::type; // ensures \tcode{tuple_size} is complete requires DerivedFrom, integral_constant>; @@ -1220,7 +1220,7 @@ }; template - concept @\placeholdernc{pair-like-convertible-to}@ = // \expos + concept @\placeholdernc{pair-like-convertible-to}@ = // \expos !Range && @\placeholder{pair-like}@> && requires(T&& t) { { get<0>(std::forward(t)) } -> ConvertibleTo; @@ -1228,11 +1228,11 @@ }; template - concept @\placeholdernc{pair-like-convertible-from}@ = // \expos + concept @\placeholdernc{pair-like-convertible-from}@ = // \expos !Range && @\placeholdernc{pair-like}@ && Constructible; template - concept @\placeholdernc{iterator-sentinel-pair}@ = // \expos + concept @\placeholdernc{iterator-sentinel-pair}@ = // \expos !Range && @\placeholdernc{pair-like}@ && Sentinel, tuple_element_t<0, T>>; @@ -1241,18 +1241,18 @@ requires (K == subrange_kind::sized || !SizedSentinel) class subrange : public view_interface> { private: - static constexpr bool StoreSize = // \expos + static constexpr bool StoreSize = // \expos K == subrange_kind::sized && !SizedSentinel; - I begin_ = I(); // \expos - S end_ = S(); // \expos - iter_difference_t size_ = 0; // \expos; present only - // when \tcode{StoreSize} is \tcode{true} + I begin_ = I(); // \expos + S end_ = S(); // \expos + @\placeholdernc{make-unsigned-like-t}@(iter_difference_t) size_ = 0; // \expos; present only + // when \tcode{StoreSize} is \tcode{true} public: subrange() = default; constexpr subrange(I i, S s) requires (!StoreSize); - constexpr subrange(I i, S s, iter_difference_t n) + constexpr subrange(I i, S s, @\placeholdernc{make-unsigned-like-t}@(iter_difference_t) n) requires (K == subrange_kind::sized); template<@\placeholdernc{not-same-as}@ R> @@ -1262,7 +1262,7 @@ template<@\placeholdernc{forwarding-range}@ R> requires ConvertibleTo, I> && ConvertibleTo, S> - constexpr subrange(R&& r, iter_difference_t n) + constexpr subrange(R&& r, @\placeholdernc{make-unsigned-like-t}@(iter_difference_t) n) requires (K == subrange_kind::sized) : subrange{ranges::begin(r), ranges::end(r), n} {} @@ -1275,7 +1275,7 @@ {} template<@\placeholdernc{pair-like-convertible-to}@ PairLike> - constexpr subrange(PairLike&& r, iter_difference_t n) + constexpr subrange(PairLike&& r, @\placeholdernc{make-unsigned-like-t}@(iter_difference_t) n) requires (K == subrange_kind::sized) : subrange{std::get<0>(std::forward(r)), std::get<1>(std::forward(r)), n} @@ -1289,7 +1289,7 @@ constexpr S end() const; constexpr bool empty() const; - constexpr iter_difference_t size() const + constexpr @\placeholdernc{make-unsigned-like-t}@(iter_difference_t) size() const requires (K == subrange_kind::sized); [[nodiscard]] constexpr subrange next(iter_difference_t n = 1) const; @@ -1302,13 +1302,14 @@ }; template S> - subrange(I, S, iter_difference_t) -> subrange; + subrange(I, S, @\placeholdernc{make-unsigned-like-t}@(iter_difference_t)) -> + subrange; template<@\placeholder{iterator-sentinel-pair}@ P> subrange(P) -> subrange, tuple_element_t<1, P>>; template<@\placeholder{iterator-sentinel-pair}@ P> - subrange(P, iter_difference_t>) -> + subrange(P, @\placeholdernc{make-unsigned-like-t}@(iter_difference_t>)) -> subrange, tuple_element_t<1, P>, subrange_kind::sized>; template<@\placeholder{forwarding-range}@ R> @@ -1318,7 +1319,7 @@ ? subrange_kind::sized : subrange_kind::unsized>; template<@\placeholder{forwarding-range}@ R> - subrange(R&&, range_difference_t) -> + subrange(R&&, @\placeholdernc{make-unsigned-like-t}@(range_difference_t)) -> subrange, sentinel_t, subrange_kind::sized>; template @@ -1349,14 +1350,14 @@ \indexlibrary{\idxcode{subrange}!\idxcode{subrange}}% \begin{itemdecl} -constexpr subrange(I i, S s, iter_difference_t n) +constexpr subrange(I i, S s, @\placeholdernc{make-unsigned-like-t}@(iter_difference_t) n) requires (K == subrange_kind::sized); \end{itemdecl} \begin{itemdescr} \pnum \expects \range{i}{s} is a valid range, and -\tcode{n == ranges::distance(i, s)}. +\tcode{n == \placeholdernc{make-unsigned-like}(ranges::distance(i, s))}. \pnum \effects Initializes \tcode{begin_} with \tcode{i} and \tcode{end_} with @@ -1436,7 +1437,7 @@ \indexlibrary{\idxcode{size}!\idxcode{subrange}}% \begin{itemdecl} -constexpr iter_difference_t size() const +constexpr @\placeholdernc{make-unsigned-like-t}@(iter_difference_t) size() const requires (K == subrange_kind::sized); \end{itemdecl} @@ -1445,7 +1446,7 @@ \effects \begin{itemize} \item If \tcode{StoreSize} is \tcode{true}, equivalent to: \tcode{return size_;} -\item Otherwise, equivalent to: \tcode{return end_ - begin_;} +\item Otherwise, equivalent to: \tcode{return \placeholdernc{make-unsigned-like-t}(end_ - begin_);} \end{itemize} \end{itemdescr} @@ -1497,7 +1498,11 @@ \begin{itemize} \item If \tcode{StoreSize} is \tcode{true}, \begin{codeblock} -size_ -= n - ranges::advance(begin_, n, end_); +auto d = n - ranges::advance(begin_, n, end_); +if (d >= 0) + size_ -= @\placeholdernc{make-unsigned-like}@(d); +else + size_ += @\placeholdernc{make-unsigned-like}@(-d); return *this; \end{codeblock} \item Otherwise, @@ -1605,7 +1610,7 @@ static constexpr T* begin() noexcept { return nullptr; } static constexpr T* end() noexcept { return nullptr; } static constexpr T* data() noexcept { return nullptr; } - static constexpr ptrdiff_t size() noexcept { return 0; } + static constexpr size_t size() noexcept { return 0; } static constexpr bool empty() noexcept { return true; } friend constexpr T* begin(empty_view) noexcept { return nullptr; } @@ -1652,7 +1657,7 @@ constexpr const T* begin() const noexcept; constexpr T* end() noexcept; constexpr const T* end() const noexcept; - static constexpr ptrdiff_t size() noexcept; + static constexpr size_t size() noexcept; constexpr T* data() noexcept; constexpr const T* data() const noexcept; }; @@ -1715,7 +1720,7 @@ \indexlibrary{\idxcode{size}!\idxcode{single_view}}% \begin{itemdecl} -static constexpr ptrdiff_t size() noexcept; +static constexpr size_t size() noexcept; \end{itemdecl} \begin{itemdescr} From c4e3a18a69e4fe849ed4d1d1a5e8826bef1972f2 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 01:59:21 -0700 Subject: [PATCH 153/312] [support.limits.general] should provide __cpp_lib_jthread, not __cpp_lib_is_swappable. --- source/support.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/support.tex b/source/support.tex index 7448ce32f2..7e3a76cac7 100644 --- a/source/support.tex +++ b/source/support.tex @@ -647,9 +647,9 @@ \defnlibxname{cpp_lib_is_pointer_interconvertible} & \tcode{201907L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_is_swappable} & \tcode{201603L} & - \tcode{stop_token} \tcode{} \\ \rowsep + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_jthread} & \tcode{201907L} & - \tcode{} \\ \rowsep + \tcode{} \tcode{} \\ \rowsep \defnlibxname{cpp_lib_latch} & \tcode{201907L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_launder} & \tcode{201606L} & From b83cb6d961ef1594215d015cb2e26258f99b57f5 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Tue, 23 Jul 2019 13:09:13 +0100 Subject: [PATCH 154/312] P0466R5 Layout-compatibility and Pointer-interconvertibility Traits Feature test macros were already (accidentally) added as part of P0660R10. --- source/utilities.tex | 107 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) diff --git a/source/utilities.tex b/source/utilities.tex index 757a59ee69..ab39c0a254 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -16275,7 +16275,9 @@ \rSec2[meta.type.synop]{Header \tcode{} synopsis} \indexhdr{type_traits}% +\indexlibrary{\idxcode{is_layout_compatible_v}}% \indexlibrary{\idxcode{is_nothrow_convertible_v}}% +\indexlibrary{\idxcode{is_pointer_interconvertible_base_of_v}}% \indexlibrary{\idxcode{type_identity_t}}% \indexlibrary{\idxcode{common_reference_t}}% % FIXME: Many index entries missing. @@ -16385,6 +16387,8 @@ template struct is_base_of; template struct is_convertible; template struct is_nothrow_convertible; + template struct is_layout_compatible; + template struct is_pointer_interconvertible_base_of; template struct is_invocable; template struct is_invocable_r; @@ -16666,6 +16670,11 @@ inline constexpr bool is_convertible_v = is_convertible::value; template inline constexpr bool is_nothrow_convertible_v = is_nothrow_convertible::value; + template + inline constexpr bool is_layout_compatible_v = is_layout_compatible::value; + template + inline constexpr bool is_pointer_interconvertible_base_of_v + = is_pointer_interconvertible_base_of::value; template inline constexpr bool is_invocable_v = is_invocable::value; template @@ -16684,6 +16693,12 @@ template inline constexpr bool negation_v = negation::value; + // \ref{meta.member}, member relationships + template + constexpr bool is_pointer_interconvertible_with_class(M S::*m) noexcept; + template + constexpr bool is_corresponding_member(M1 S1::*m1, M2 S2::*m2) noexcept; + // \ref{meta.const.eval}, constant evaluation context constexpr bool is_constant_evaluated() noexcept; } @@ -17498,6 +17513,29 @@ types, arrays of unknown bound, or \cv{}~\tcode{void} types. \\ \rowsep +\indexlibrary{\idxcode{is_layout_compatible}}% +\tcode{template}\br + \tcode{struct is_layout_compatible;} & + \tcode{T} and \tcode{U} are layout-compatible\iref{basic.types} & + \tcode{T} and \tcode{U} shall be complete types, + \cv{}~\tcode{void}, + or arrays of unknown bound. \\ \rowsep + +\indexlibrary{\idxcode{is_pointer_interconvertible_base_of}}% +\tcode{template}\br + \tcode{struct is_pointer_interconvertible_base_of;} & + \tcode{Derived} is unambiguously derived from \tcode{Base} + without regard to cv-qualifiers, + and each object of type \tcode{Derived} + is pointer-interconvertible\iref{basic.compound} with + its \tcode{Base} subobject, + or \tcode{Base} and \tcode{Derived} are not unions + and name the same class type + without regard to cv-qualifiers. & + If \tcode{Base} and \tcode{Derived} are non-union class types + and are not (possibly cv-qualified versions of) the same type, + \tcode{Derived} shall be a complete type. \\ \rowsep + \indexlibrary{\idxcode{is_invocable}}% \tcode{template}\br \tcode{struct is_invocable;} & @@ -18315,6 +18353,75 @@ is a \oldconcept{UnaryTypeTrait} with a base characteristic of \tcode{bool_constant}. \end{itemdescr} +\rSec2[meta.member]{Member relationships} + +\indexlibrary{\idxcode{is_pointer_interconvertible_with_class}} +\begin{itemdecl} +template + constexpr bool is_pointer_interconvertible_with_class(M S::*m) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\mandates \tcode{S} is a complete type. + +\pnum +\returns \tcode{true} if and only if + \tcode{S} is a standard-layout type, + \tcode{M} is an object type, + \tcode{m} is not null, + and each object \tcode{s} of type \tcode{S} + is pointer-interconvertible\iref{basic.compound} + with its subobject \tcode{s.*m}. +\end{itemdescr} + +\indexlibrary{\idxcode{is_corresponding_member}} +\begin{itemdecl} +template + constexpr bool is_corresponding_member(M1 S1::*m1, M2 S2::*m2) noexcept; +\end{itemdecl} + +\begin{itemdescr} +\pnum +\mandates \tcode{S1} and \tcode{S2} are complete types. + +\pnum +\returns \tcode{true} if and only if + \tcode{S1} and \tcode{S2} are standard-layout types, + \tcode{M1} and \tcode{M2} are object types, + \tcode{m1} and \tcode{m2} are not null, + and \tcode{m1} and \tcode{m2} point to corresponding members of + the common initial sequence\iref{class.mem} of \tcode{S1} and \tcode{S2}. +\end{itemdescr} + +\pnum +\begin{note} +The type of a pointer-to-member expression \tcode{\&C::b} +is not always a pointer to member of \tcode{C}, +leading to potentially surprising results +when using these functions in conjunction with inheritance. +\begin{example} +\begin{codeblock} +struct A { int a; }; // a standard-layout class +struct B { int b; }; // a standard-layout class +struct C: public A, public B { }; // not a standard-layout class + +static_assert( is_pointer_interconvertible_with_class( &C::b ) ); + // Succeeds because, despite its appearance, \tcode{\&C::b} has type + // ``pointer to member of \tcode{B} of type \tcode{int}''. +static_assert( is_pointer_interconvertible_with_class( &C::b ) ); + // Forces the use of class \tcode{C}, and fails. + +static_assert( is_corresponding_member( &C::a, &C::b ) ); + // Succeeds because, despite its appearance, \tcode{\&C::a} and \tcode{\&C::b} have types + // ``pointer to member of \tcode{A} of type \tcode{int}'' and + // ``pointer to member of \tcode{B} of type \tcode{int}'', respectively. +static_assert( is_corresponding_member( &C::a, &C::b ) ); + // Forces the use of class \tcode{C}, and fails. +\end{codeblock} +\end{example} +\end{note} + \rSec2[meta.const.eval]{Constant evaluation context} \begin{itemdecl} constexpr bool is_constant_evaluated() noexcept; From d7fe087615549f57765ea3fda659049d77cb8a83 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Mon, 22 Jul 2019 11:30:26 +0200 Subject: [PATCH 155/312] P1208R6 Adopt source_location for C++20 - Changed stable name to [support.srcloc]. - Added cross-references. - Changed "description" environment showing result values to a table --- source/lib-intro.tex | 4 +- source/support.tex | 211 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 214 insertions(+), 1 deletion(-) diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 29eacd4316..eff21d116c 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -1214,12 +1214,13 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\tcode{} \\ \columnbreak +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -1467,6 +1468,7 @@ \ref{support.start.term} & Start and termination & \tcode{} \\ \rowsep \ref{support.dynamic} & Dynamic memory management & \tcode{} \\ \rowsep \ref{support.rtti} & Type identification & \tcode{} \\ \rowsep +\ref{support.srcloc} & Source location & \tcode{} \\ \rowsep \ref{support.exception} & Exception handling & \tcode{} \\ \rowsep \ref{support.initlist} & Initializer lists & \tcode{} \\ \rowsep \ref{support.coroutine} & Coroutines support & \tcode{} \\ \rowsep diff --git a/source/support.tex b/source/support.tex index 7e3a76cac7..e3026eebe5 100644 --- a/source/support.tex +++ b/source/support.tex @@ -30,6 +30,7 @@ \ref{support.start.term} & Start and termination & \tcode{} \\ \rowsep \ref{support.dynamic} & Dynamic memory management & \tcode{} \\ \rowsep \ref{support.rtti} & Type identification & \tcode{} \\ \rowsep +\ref{support.srcloc} & Source location & \tcode{} \\ \rowsep \ref{support.exception} & Exception handling & \tcode{} \\ \rowsep \ref{support.initlist} & Initializer lists & \tcode{} \\ \rowsep \ref{cmp} & Comparisons & \tcode{} \\ \rowsep @@ -712,6 +713,8 @@ \tcode{} \\ \rowsep \defnlibxname{cpp_lib_shared_timed_mutex} & \tcode{201402L} & \tcode{} \\ \rowsep +\defnlibxname{cpp_lib_source_location} & \tcode{201907L} & + \tcode{} \\ \rowsep \defnlibxname{cpp_lib_spaceship} & \tcode{201907L} & \tcode{} \\ \rowsep \defnlibxname{cpp_lib_string_udls} & \tcode{201304L} & @@ -3178,6 +3181,214 @@ An \impldef{return value of \tcode{bad_typeid::what}} \ntbs{}. \end{itemdescr} +\rSec1[support.srcloc]{Class \tcode{source_location}} + +The header \tcode{} defines the class \tcode{source_location} that provides a means to obtain source location information. + +\rSec2[source_location.syn]{Header \tcode{} synopsis} +\indexhdr{source_location}% +\indexlibrary{\idxcode{source_location}}% + +\begin{codeblock} +namespace std { + struct source_location { + // source location construction + static consteval source_location current() noexcept; + constexpr source_location() noexcept; + + // source location field access + constexpr uint_least32_t line() const noexcept; + constexpr uint_least32_t column() const noexcept; + constexpr const char* file_name() const noexcept; + constexpr const char* function_name() const noexcept; + + private: + uint_least32_t line_; // \expos + uint_least32_t column_; // \expos + const char* file_name_; // \expos + const char* function_name_; // \expos + }; +} +\end{codeblock} + +\pnum +The type \tcode{source_location} meets the +\oldconcept{DefaultConstructible}, +\oldconcept{CopyConstructible}, +\oldconcept{Copy\-Assignable}, and +\oldconcept{Destructible} +requirements\iref{utility.arg.requirements}. +Lvalues of type \tcode{source_location} +are swappable\iref{swappable.requirements}. +All of the following conditions are \tcode{true}: +\begin{itemize} +\item \tcode{is_nothrow_move_constructible_v} +\item \tcode{is_nothrow_move_assignable_v} +\item \tcode{is_nothrow_swappable_v} +\end{itemize} +\begin{note} +The intent of \tcode{source_location} is +to have a small size and efficient copying. +\end{note} + +\pnum +The data members \tcode{file_name_} and \tcode{function_name_} +always each refer to an \ntbs{}. + +\pnum +The copy/move constructors and the copy/move assignment operators of +\tcode{source_location} meet the following postconditions: +Given two objects \tcode{lhs} and \tcode{rhs} of type \tcode{source_location}, +where \tcode{lhs} is a copy/move result of \tcode{rhs}, and +where \tcode{rhs_p} is a value denoting the state of \tcode{rhs} +before the corresponding copy/move operation, +then each of the following conditions is \tcode{true}: +\begin{itemize} +\item \tcode{strcmp(lhs.file_name(), rhs_p.file_name()) == 0} +\item \tcode{strcmp(lhs.function_name(), rhs_p.function_name()) == 0} +\item \tcode{lhs.line() == rhs_p.line()} +\item \tcode{lhs.column() == rhs_p.column()} +\end{itemize} + +\rSec2[support.srcloc.cons]{Creation} + +\begin{itemdecl} +static consteval source_location current() noexcept; +\end{itemdecl} +\begin{itemdescr} +\pnum +\returns +\begin{itemize} +\item + When invoked by a function call + whose \grammarterm{postfix-expression} is + a (possibly parenthesized) \grammarterm{id-expression} naming \tcode{current}, + returns a \tcode{source_location} with an implementation-defined value. + The value should be affected by \tcode{\#line}\iref{cpp.line} + in the same manner as for \mname{LINE} and \mname{FILE}. + The values of the exposition-only data members + of the returned \tcode{source_location} object + are indicated in \tref{support.srcloc.current}. + +\begin{libefftabvalue} + {Value of object returned by \tcode{current}} + {support.srcloc.current} +\tcode{line_} & + A presumed line number\iref{cpp.predefined}. + Line numbers are presumed to be 1-indexed; + however, an implementation is encouraged to use 0 + when the line number is unknown. \\ \rowsep +\tcode{column_} & + An implementation-defined value denoting + some offset from the start of the line denoted by \tcode{line_}. + Column numbers are presumed to be 1-indexed; + however, an implementation is encouraged to use 0 + when the column number is unknown. \\ \rowsep +\tcode{file_name_} & + A presumed name of the current source file\iref{cpp.predefined} as an \ntbs{}. + \\ \rowsep +\tcode{function_name_} & + A name of the current function + such as in \mname{func}\iref{dcl.fct.def.general} if any, + an empty string otherwise. \\ +\end{libefftabvalue} + +\item + Otherwise, when invoked in some other way, returns a + \tcode{source_location} whose data members are initialized + with valid but unspecified values. +\end{itemize} + +\pnum +\remarks +When a \grammarterm{brace-or-equal-initializer} +is used to initialize a non-static data member, +any calls to \tcode{current} should correspond to the location +of the constructor or aggregate initialization that initializes the member. + +\pnum +\begin{note} +When used as a default argument\iref{dcl.fct.default}, +the value of the \tcode{source_location} will be +the location of the call to \tcode{current} at the call site. +\end{note} +\end{itemdescr} + +\pnum +\begin{example} +\begin{codeblock} +struct s { + source_location member = source_location::current(); + int other_member; + s(source_location loc = source_location::current()) + : member(loc) // values of \tcode{member} will be from call-site + {} + s(int blather) : // values of \tcode{member} should be hereabouts + other_member(blather) + {} + s(double) // values of \tcode{member} should be hereabouts + {} +}; +void f(source_location a = source_location::current()) { + source_location b = source_location::current(); // values in \tcode{b} represent this line +} + +void g() { + f(); // \tcode{f}'s first argument corresponds to this line of code + + source_location c = source_location::current(); + f(c); // \tcode{f}'s first argument gets the same values as \tcode{c}, above +} +\end{codeblock} +\end{example} + +\begin{itemdecl} +constexpr source_location() noexcept; +\end{itemdecl} +\begin{itemdescr} + +\pnum +\Fundesc{Effects} +The data members are initialized with valid but unspecified values. +\end{itemdescr} + +\rSec2[support.srcloc.access]{Field access} + +\begin{itemdecl} +constexpr uint_least32_t line() const noexcept; +\end{itemdecl} +\begin{itemdescr} +\pnum +\returns \tcode{line_}. +\end{itemdescr} + +\begin{itemdecl} +constexpr uint_least32_t column() const noexcept; +\end{itemdecl} +\begin{itemdescr} +\pnum +\returns +\tcode{column_}. +\end{itemdescr} + +\begin{itemdecl} +constexpr const char* file_name() const noexcept; +\end{itemdecl} +\begin{itemdescr} +\pnum +\returns +\tcode{file_name_}. +\end{itemdescr} + +\begin{itemdecl} +constexpr const char* function_name() const noexcept; +\end{itemdecl} +\begin{itemdescr} +\pnum +\returns +\tcode{function_name_}. +\end{itemdescr} + \rSec1[support.exception]{Exception handling} \pnum From 7f4e95e3296b31c23bfb358f31294d384a955e3b Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Sat, 3 Aug 2019 08:38:34 +0200 Subject: [PATCH 156/312] [support.srcloc] Fix comments in example. --- source/support.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/support.tex b/source/support.tex index e3026eebe5..e8f41d42b5 100644 --- a/source/support.tex +++ b/source/support.tex @@ -3321,16 +3321,16 @@ source_location member = source_location::current(); int other_member; s(source_location loc = source_location::current()) - : member(loc) // values of \tcode{member} will be from call-site + : member(loc) // values of \tcode{member} refer to the location of the calling function\iref{dcl.fct.default} {} - s(int blather) : // values of \tcode{member} should be hereabouts + s(int blather) : // values of \tcode{member} refer to this location other_member(blather) {} - s(double) // values of \tcode{member} should be hereabouts + s(double) // values of \tcode{member} refer to this location {} }; void f(source_location a = source_location::current()) { - source_location b = source_location::current(); // values in \tcode{b} represent this line + source_location b = source_location::current(); // values in \tcode{b} refer to this line } void g() { From 06ab7ebef8a763e36f87f504ed7765528aa25fc7 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 02:28:42 -0700 Subject: [PATCH 157/312] [support.srcloc.cons] Use term "default member initialier" rather than describing it indirectly. --- source/support.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/support.tex b/source/support.tex index e8f41d42b5..56e3c7b9d3 100644 --- a/source/support.tex +++ b/source/support.tex @@ -3301,7 +3301,7 @@ \pnum \remarks -When a \grammarterm{brace-or-equal-initializer} +When a default member initializer is used to initialize a non-static data member, any calls to \tcode{current} should correspond to the location of the constructor or aggregate initialization that initializes the member. From 1cf04f8fb8ea0f9125e12edaabe80e7eecbf5855 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Thu, 25 Jul 2019 08:45:21 -0700 Subject: [PATCH 158/312] Fix inconsistencies in the Latex used for concept names throughout the library. --- source/algorithms.tex | 2 +- source/concepts.tex | 6 +-- source/iterators.tex | 108 +++++++++++++++++++++--------------------- source/ranges.tex | 40 ++++++++-------- source/utilities.tex | 6 +-- 5 files changed, 81 insertions(+), 81 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 8ddca61117..676c67060e 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -3749,7 +3749,7 @@ \oldconcept{RandomAccessIterator} requirements\iref{random.access.iterators} for the overloads in namespace \tcode{std}, or \item - pairwise model \tcode{SizedSentinel}\iref{iterator.concept.sizedsentinel} + pairwise model \libconcept{SizedSentinel}\iref{iterator.concept.sizedsentinel} for the overloads in namespace \tcode{ranges}, \end{itemize} and \tcode{last1 - first1 != last2 - first2}, diff --git a/source/concepts.tex b/source/concepts.tex index e53055af7a..df0e72c938 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -565,7 +565,7 @@ is that \tcode{t1} equals \tcode{u2} and \tcode{u1} equals \tcode{t2}. \item If \tcode{T} and \tcode{U} are different types that model - \libconcept{CommonReference}, + \tcode{\libconcept{CommonReference}}, the result of the operation is that \tcode{C(t1)} equals \tcode{C(u2)} and @@ -609,8 +609,8 @@ \item Otherwise, if \tcode{E1} and \tcode{E2} are lvalues of the - same type \tcode{T} that models \libconcept{MoveConstructible} and - \libconcept{Assignable}, + same type \tcode{T} that models \tcode{\libconcept{MoveConstructible}} and + \tcode{\libconcept{Assignable}}, \tcode{S} is an expression that exchanges the denoted values. \tcode{S} is a constant expression if \begin{itemize} diff --git a/source/iterators.tex b/source/iterators.tex index 4643722faa..e362bdf70f 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -81,7 +81,7 @@ = decltype(ranges::iter_move(declval())); // \ref{iterator.concepts}, iterator concepts - // \ref{iterator.concept.readable}, concept \tcode{Readable} + // \ref{iterator.concept.readable}, concept \libconcept{Readable} template concept Readable = @\seebelow@; @@ -89,54 +89,54 @@ using iter_common_reference_t = common_reference_t, iter_value_t&>; - // \ref{iterator.concept.writable}, concept \tcode{Writable} + // \ref{iterator.concept.writable}, concept \libconcept{Writable} template concept Writable = @\seebelow@; - // \ref{iterator.concept.winc}, concept \tcode{WeaklyIncrementable} + // \ref{iterator.concept.winc}, concept \libconcept{WeaklyIncrementable} template concept WeaklyIncrementable = @\seebelow@; - // \ref{iterator.concept.inc}, concept \tcode{Incrementable} + // \ref{iterator.concept.inc}, concept \libconcept{Incrementable} template concept Incrementable = @\seebelow@; - // \ref{iterator.concept.iterator}, concept \tcode{Iterator} + // \ref{iterator.concept.iterator}, concept \libconcept{Iterator} template concept Iterator = @\seebelow@; - // \ref{iterator.concept.sentinel}, concept \tcode{Sentinel} + // \ref{iterator.concept.sentinel}, concept \libconcept{Sentinel} template concept Sentinel = @\seebelow@; - // \ref{iterator.concept.sizedsentinel}, concept \tcode{SizedSentinel} + // \ref{iterator.concept.sizedsentinel}, concept \libconcept{SizedSentinel} template inline constexpr bool disable_sized_sentinel = false; template concept SizedSentinel = @\seebelow@; - // \ref{iterator.concept.input}, concept \tcode{InputIterator} + // \ref{iterator.concept.input}, concept \libconcept{InputIterator} template concept InputIterator = @\seebelow@; - // \ref{iterator.concept.output}, concept \tcode{OutputIterator} + // \ref{iterator.concept.output}, concept \libconcept{OutputIterator} template concept OutputIterator = @\seebelow@; - // \ref{iterator.concept.forward}, concept \tcode{ForwardIterator} + // \ref{iterator.concept.forward}, concept \libconcept{ForwardIterator} template concept ForwardIterator = @\seebelow@; - // \ref{iterator.concept.bidir}, concept \tcode{BidirectionalIterator} + // \ref{iterator.concept.bidir}, concept \libconcept{BidirectionalIterator} template concept BidirectionalIterator = @\seebelow@; - // \ref{iterator.concept.random.access}, concept \tcode{RandomAccessIterator} + // \ref{iterator.concept.random.access}, concept \libconcept{RandomAccessIterator} template concept RandomAccessIterator = @\seebelow@; - // \ref{iterator.concept.contiguous}, concept \tcode{ContiguousIterator} + // \ref{iterator.concept.contiguous}, concept \libconcept{ContiguousIterator} template concept ContiguousIterator = @\seebelow@; @@ -169,38 +169,38 @@ struct incrementable_traits>; // \ref{alg.req}, common algorithm requirements - // \ref{alg.req.ind.move}, concept \tcode{IndirectlyMovable} + // \ref{alg.req.ind.move}, concept \libconcept{IndirectlyMovable} template concept IndirectlyMovable = @\seebelow@; template concept IndirectlyMovableStorable = @\seebelow@; - // \ref{alg.req.ind.copy}, concept \tcode{IndirectlyCopyable} + // \ref{alg.req.ind.copy}, concept \libconcept{IndirectlyCopyable} template concept IndirectlyCopyable = @\seebelow@; template concept IndirectlyCopyableStorable = @\seebelow@; - // \ref{alg.req.ind.swap}, concept \tcode{IndirectlySwappable} + // \ref{alg.req.ind.swap}, concept \libconcept{IndirectlySwappable} template concept IndirectlySwappable = @\seebelow@; - // \ref{alg.req.ind.cmp}, concept \tcode{IndirectlyComparable} + // \ref{alg.req.ind.cmp}, concept \libconcept{IndirectlyComparable} template concept IndirectlyComparable = @\seebelow@; - // \ref{alg.req.permutable}, concept \tcode{Permutable} + // \ref{alg.req.permutable}, concept \libconcept{Permutable} template concept Permutable = @\seebelow@; - // \ref{alg.req.mergeable}, concept \tcode{Mergeable} + // \ref{alg.req.mergeable}, concept \libconcept{Mergeable} template concept Mergeable = @\seebelow@; - // \ref{alg.req.sortable}, concept \tcode{Sortable} + // \ref{alg.req.sortable}, concept \libconcept{Sortable} template concept Sortable = @\seebelow@; @@ -668,7 +668,7 @@ it is often necessary to determine the difference type that corresponds to a particular incrementable type. Accordingly, it is required that if \tcode{WI} is the name of a type that models the -\tcode{WeaklyIncrementable} concept\iref{iterator.concept.winc}, +\libconcept{WeaklyIncrementable} concept\iref{iterator.concept.winc}, the type \begin{codeblock} iter_difference_t @@ -730,7 +730,7 @@ To implement algorithms only in terms of readable types, it is often necessary to determine the value type that corresponds to a particular readable type. Accordingly, it is required that if \tcode{R} is the name of a type that -models the \tcode{Readable} concept\iref{iterator.concept.readable}, +models the \libconcept{Readable} concept\iref{iterator.concept.readable}, the type \begin{codeblock} iter_value_t @@ -1125,7 +1125,7 @@ then \tcode{ranges::swap(*E1, *E2)}. \item Otherwise, if the types \tcode{T1} and \tcode{T2} of \tcode{E1} and -\tcode{E2} model \tcode{IndirectlyMovableStorable} and +\tcode{E2} model \tcode{\libconcept{IndirectlyMovableStorable}} and \tcode{IndirectlyMovableStorable}, then \tcode{(void)(*E1 = \placeholdernc{iter-exchange-move}(E2, E1))}, except that \tcode{E1} is evaluated only once. @@ -1216,10 +1216,10 @@ exposition-only \placeholder{dereferenceable} concept\iref{iterator.synopsis}. \end{note} -\rSec3[iterator.concept.writable]{Concept \tcode{Writable}} +\rSec3[iterator.concept.writable]{Concept \libconcept{Writable}} \pnum -The \tcode{Writable} concept specifies the requirements for writing a value +The \libconcept{Writable} concept specifies the requirements for writing a value into an iterator's referenced object. \indexlibrary{\idxcode{Writable}}% @@ -1239,7 +1239,7 @@ \pnum Let \tcode{E} be an an expression such that \tcode{decltype((E))} is \tcode{T}, and let \tcode{o} be a dereferenceable object of type \tcode{Out}. -\tcode{Out} and \tcode{T} model \tcode{Writable} only if +\tcode{Out} and \tcode{T} model \tcode{\libconcept{Writable}} only if \begin{itemize} \item If \tcode{Out} and \tcode{T} model @@ -1267,13 +1267,13 @@ iterators with prvalue non-proxy reference types that permit rvalue assignment but do not also permit \tcode{const} rvalue assignment. Consequently, an iterator type \tcode{I} that returns \tcode{std::string} -by value does not model \libconcept{Writable}. +by value does not model \tcode{\libconcept{Writable}}. \end{note} -\rSec3[iterator.concept.winc]{Concept \tcode{WeaklyIncrementable}} +\rSec3[iterator.concept.winc]{Concept \libconcept{WeaklyIncrementable}} \pnum -The \tcode{WeaklyIncrementable} concept specifies the requirements on +The \libconcept{WeaklyIncrementable} concept specifies the requirements on types that can be incremented with the pre- and post-increment operators. The increment operations are not required to be equality-preserving, nor is the type required to be \libconcept{EqualityComparable}. @@ -1424,10 +1424,10 @@ template. \end{note} -\rSec3[iterator.concept.inc]{Concept \tcode{Incrementable}} +\rSec3[iterator.concept.inc]{Concept \libconcept{Incrementable}} \pnum -The \tcode{Incrementable} concept specifies requirements on types that can be incremented with the pre- +The \libconcept{Incrementable} concept specifies requirements on types that can be incremented with the pre- and post-increment operators. The increment operations are required to be equality-preserving, and the type is required to be \libconcept{EqualityComparable}. \begin{note} @@ -1466,7 +1466,7 @@ algorithms with types that model \libconcept{Increment\-able}. \end{note} -\rSec3[iterator.concept.iterator]{Concept \tcode{Iterator}} +\rSec3[iterator.concept.iterator]{Concept \libconcept{Iterator}} \pnum The \libconcept{Iterator} concept forms the basis @@ -1494,7 +1494,7 @@ the \libconcept{Iterator} concept does not require copyability. \end{note} -\rSec3[iterator.concept.sentinel]{Concept \tcode{Sentinel}} +\rSec3[iterator.concept.sentinel]{Concept \libconcept{Sentinel}} \pnum The \libconcept{Sentinel} concept specifies the relationship @@ -1514,7 +1514,7 @@ \pnum Let \tcode{s} and \tcode{i} be values of type \tcode{S} and \tcode{I} such that \range{i}{s} denotes a range. Types -\tcode{S} and \tcode{I} model \tcode{Sentinel} only if +\tcode{S} and \tcode{I} model \tcode{\libconcept{Sentinel}} only if \begin{itemize} \item \tcode{i == s} is well-defined. @@ -1532,7 +1532,7 @@ to \tcode{i}. Consequently, \tcode{i == s} is no longer required to be well-defined. -\rSec3[iterator.concept.sizedsentinel]{Concept \tcode{SizedSentinel}} +\rSec3[iterator.concept.sizedsentinel]{Concept \libconcept{SizedSentinel}} \pnum The \libconcept{SizedSentinel} concept specifies @@ -1559,7 +1559,7 @@ a sentinel of type \tcode{S} such that \range{i}{s} denotes a range. Let $N$ be the smallest number of applications of \tcode{++i} necessary to make \tcode{bool(i == s)} be \tcode{true}. -\tcode{S} and \tcode{I} model \tcode{SizedSentinel} only if +\tcode{S} and \tcode{I} model \tcode{\libconcept{SizedSentinel}} only if \begin{itemize} \item If $N$ is representable by \tcode{iter_difference_t}, @@ -1601,12 +1601,12 @@ \end{example} \end{itemdescr} -\rSec3[iterator.concept.input]{Concept \tcode{InputIterator}} +\rSec3[iterator.concept.input]{Concept \libconcept{InputIterator}} \pnum -The \tcode{InputIterator} concept defines requirements for a type +The \libconcept{InputIterator} concept defines requirements for a type whose referenced values can be read (from the requirement for -\tcode{Readable}\iref{iterator.concept.readable}) and which can be both pre- and +\libconcept{Readable}\iref{iterator.concept.readable}) and which can be both pre- and post-incremented. \begin{note} Unlike the \oldconcept{InputIterator} requirements\iref{input.iterators}, @@ -1624,12 +1624,12 @@ DerivedFrom<@\placeholdernc{ITER_CONCEPT}@(I), input_iterator_tag>; \end{codeblock} -\rSec3[iterator.concept.output]{Concept \tcode{OutputIterator}} +\rSec3[iterator.concept.output]{Concept \libconcept{OutputIterator}} \pnum -The \tcode{OutputIterator} concept defines requirements for a type that +The \libconcept{OutputIterator} concept defines requirements for a type that can be used to write values (from the requirement for -\tcode{Writable}\iref{iterator.concept.writable}) and which can be both pre- and post-incremented. +\libconcept{Writable}\iref{iterator.concept.writable}) and which can be both pre- and post-incremented. \begin{note} Output iterators are not required to model \libconcept{EqualityComparable}. \end{note} @@ -1647,7 +1647,7 @@ \pnum Let \tcode{E} be an expression such that \tcode{decltype((E))} is \tcode{T}, and let \tcode{i} be a -dereferenceable object of type \tcode{I}. \tcode{I} and \tcode{T} model \tcode{OutputIterator} only if +dereferenceable object of type \tcode{I}. \tcode{I} and \tcode{T} model \tcode{\libconcept{OutputIterator}} only if \tcode{*i++ = E;} has effects equivalent to: \begin{codeblock} *i = E; @@ -1660,7 +1660,7 @@ They should be single-pass algorithms. \end{note} -\rSec3[iterator.concept.forward]{Concept \tcode{ForwardIterator}} +\rSec3[iterator.concept.forward]{Concept \libconcept{ForwardIterator}} \pnum The \libconcept{ForwardIterator} concept adds @@ -2460,7 +2460,7 @@ \pnum Let \tcode{i} be a dereferenceable value of type \tcode{In}. -\tcode{In} and \tcode{Out} model \tcode{IndirectlyMovableStorable} +\tcode{In} and \tcode{Out} model \tcode{\libconcept{IndirectlyMovableStorable}} only if after the initialization of the object \tcode{obj} in \begin{codeblock} iter_value_t obj(ranges::iter_move(i)); @@ -2505,7 +2505,7 @@ \pnum Let \tcode{i} be a dereferenceable value of type \tcode{In}. -\tcode{In} and \tcode{Out} model \tcode{IndirectlyCopyableStorable} +\tcode{In} and \tcode{Out} model \tcode{\libconcept{IndirectlyCopyableStorable}} only if after the initialization of the object \tcode{obj} in \begin{codeblock} iter_value_t obj(*i); @@ -2873,9 +2873,9 @@ \pnum \effects \begin{itemize} -\item If \tcode{I} and \tcode{S} model \tcode{Assignable}, +\item If \tcode{I} and \tcode{S} model \tcode{\libconcept{Assignable}}, equivalent to \tcode{i = std::move(bound)}. -\item Otherwise, if \tcode{S} and \tcode{I} model \tcode{SizedSentinel}, +\item Otherwise, if \tcode{S} and \tcode{I} model \tcode{\libconcept{SizedSentinel}}, equivalent to \tcode{ranges::advance(i, bound - i)}. \item Otherwise, while \tcode{bool(i != bound)} is \tcode{true}, increments \tcode{i}. @@ -2895,12 +2895,12 @@ If \tcode{n == 0}, \range{i}{bound} or \range{bound}{i} denotes a range. If \tcode{n < 0}, \range{bound}{i} denotes a range, \tcode{I} models \libconcept{BidirectionalIterator}, and -\tcode{I} and \tcode{S} model \tcode{Same}. +\tcode{I} and \tcode{S} model \tcode{\libconcept{Same}}. \pnum \effects \begin{itemize} -\item If \tcode{S} and \tcode{I} model \tcode{SizedSentinel}: +\item If \tcode{S} and \tcode{I} model \tcode{\libconcept{SizedSentinel}}: \begin{itemize} \item If \brk{}$|\tcode{n}| \ge |\tcode{bound - i}|$, equivalent to \tcode{ranges::advance(i, bound)}. @@ -2940,7 +2940,7 @@ \pnum \effects -If \tcode{S} and \tcode{I} model \tcode{SizedSentinel}, +If \tcode{S} and \tcode{I} model \tcode{\libconcept{SizedSentinel}}, returns \tcode{(last - first)}; otherwise, returns the number of increments needed to get from \tcode{first} @@ -3120,7 +3120,7 @@ \tcode{random_access_iterator_tag} if the type \tcode{iterator_traits<\brk{}Iterator>::iterator_category} models -\libconcept{DerivedFrom}, and +\tcode{\libconcept{DerivedFrom}}, and \item \tcode{iterator_traits<\brk{}Iterator>::iterator_category} otherwise. \end{itemize} @@ -4116,7 +4116,7 @@ \tcode{random_access_iterator_tag} if the type \tcode{iterator_traits<\brk{}Iterator>::iterator_category} models -\libconcept{DerivedFrom<\tcode{random_access_iterator_tag}>}, and +\tcode{\libconcept{DerivedFrom}}, and \item \tcode{iterator_traits<\brk{}Iterator>::iterator_category} otherwise. \end{itemize} @@ -4528,7 +4528,7 @@ \pnum Class template \tcode{move_sentinel} is a sentinel adaptor useful for denoting ranges together with \tcode{move_iterator}. When an input iterator type -\tcode{I} and sentinel type \tcode{S} model \tcode{Sentinel}, +\tcode{I} and sentinel type \tcode{S} model \tcode{\libconcept{Sentinel}}, \tcode{move_sentinel} and \tcode{move_iterator} model \tcode{Sentinel, move_iterator{>}} as well. diff --git a/source/ranges.tex b/source/ranges.tex index a5d58c326d..7f1bf736fa 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -387,7 +387,7 @@ Whenever \tcode{ranges::end(E)} is a valid expression, the types \tcode{S} and \tcode{I} of \tcode{ranges::end(E)} and \tcode{ranges::begin(E)} -model \libconcept{Sentinel}. +model \tcode{\libconcept{Sentinel}}. \end{note} \rSec2[range.access.cbegin]{\tcode{ranges::cbegin}} @@ -424,7 +424,7 @@ Whenever \tcode{ranges::cend(E)} is a valid expression, the types \tcode{S} and \tcode{I} of \tcode{ranges::cend(E)} and \tcode{ranges::cbegin(E)} -model \libconcept{Sentinel}. +model \tcode{\libconcept{Sentinel}}. \end{note} \rSec2[range.access.rbegin]{\tcode{ranges::rbegin}} @@ -497,7 +497,7 @@ Otherwise, \tcode{make_reverse_iterator(ranges::begin(E))} if both \tcode{ranges::begin(E)} and \tcode{ranges::\brk{}end(E)} are valid expressions of the same type \tcode{I} which models - \tcode{BidirectionalIterator}\iref{iterator.concept.bidir}. + \libconcept{BidirectionalIterator}\iref{iterator.concept.bidir}. \item Otherwise, \tcode{ranges::rend(E)} is ill-formed. @@ -512,7 +512,7 @@ Whenever \tcode{ranges::rend(E)} is a valid expression, the types \tcode{S} and \tcode{I} of \tcode{ranges::rend(E)} and \tcode{ranges::rbegin(E)} -model \libconcept{Sentinel}. +model \tcode{\libconcept{Sentinel}}. \end{note} \rSec2[range.access.crbegin]{\tcode{ranges::crbegin}} @@ -550,7 +550,7 @@ Whenever \tcode{ranges::crend(E)} is a valid expression, the types \tcode{S} and \tcode{I} of \tcode{ranges::crend(E)} and \tcode{ranges::crbegin(E)} -model \libconcept{Sentinel}. +model \tcode{\libconcept{Sentinel}}. \end{note} \rSec2[range.prim.size]{\tcode{ranges::size}} @@ -592,9 +592,9 @@ Otherwise, \tcode{\placeholdernc{make-unsigned-like}(ranges::end(E) - ranges::begin(E))}\iref{range.subrange} if it is a valid expression and the types \tcode{I} and \tcode{S} of \tcode{ranges::begin(E)} and - \tcode{ranges::end(E)} (respectively) model both\hfill\break %avoid overfull - \tcode{SizedSentinel}\iref{iterator.concept.sizedsentinel} and - \tcode{Forward\-Iterator}. + \tcode{ranges::end(E)} (respectively) model both + \tcode{\libconcept{SizedSentinel}}\iref{iterator.concept.sizedsentinel} and + \tcode{\libconcept{ForwardIterator}}. However, \tcode{E} is evaluated only once. \item @@ -706,7 +706,7 @@ whose type models \libconcept{Iterator}\iref{iterator.concept.iterator}. Calling \tcode{ranges::end} on a range returns an object whose type \tcode{S}, together with the type \tcode{I} of the object returned by \tcode{ranges::begin}, -models \libconcept{Sentinel}. +models \tcode{\libconcept{Sentinel}}. The library formalizes the interfaces, semantics, and complexity of ranges to enable algorithms and range adaptors that work efficiently on different types of sequences. @@ -718,7 +718,7 @@ The \libconcept{SizedRange} concept refines \libconcept{Range} with the requirement that the number of elements in the range can be determined in constant time using the \tcode{ranges::size} function. -The \tcode{View} concept specifies requirements on a \libconcept{Range} type +The \libconcept{View} concept specifies requirements on a \libconcept{Range} type with constant-time copy and assign operations. \pnum @@ -872,7 +872,7 @@ \begin{note} The complexity requirement for the evaluation of \tcode{ranges::size} is non-amortized, unlike the case for the complexity of the evaluations of -\tcode{ranges::begin} and \tcode{ranges::end} in the \tcode{Range} concept. +\tcode{ranges::begin} and \tcode{ranges::end} in the \libconcept{Range} concept. \end{note} \end{itemdescr} @@ -911,7 +911,7 @@ \begin{itemdescr} % FIXME: This should explicitly say when View is modeled. \pnum -The \tcode{View} concept specifies the requirements of a \libconcept{Range} type +The \libconcept{View} concept specifies the requirements of a \libconcept{Range} type that has constant time copy, move, and assignment operators; that is, the cost of these operations is not proportional to the number of elements in the \tcode{View}. @@ -983,11 +983,11 @@ \rSec2[range.refinements]{Other range refinements} \pnum -The \tcode{OutputRange} concept specifies requirements of a +The \libconcept{OutputRange} concept specifies requirements of a \libconcept{Range} type for which \tcode{ranges::begin} returns -a model of \tcode{OutputIterator}\iref{iterator.concept.output}. -\tcode{InputRange}, \tcode{ForwardRange}, \tcode{BidirectionalRange}, -and \tcode{RandomAccessRange} are defined similarly. +a model of \libconcept{OutputIterator}\iref{iterator.concept.output}. +\libconcept{InputRange}, \libconcept{ForwardRange}, \libconcept{BidirectionalRange}, +and \libconcept{RandomAccessRange} are defined similarly. \indexlibrary{\idxcode{OutputRange}}% \indexlibrary{\idxcode{InputRange}}% @@ -1032,11 +1032,11 @@ \end{itemdecl} \pnum -The \tcode{CommonRange} concept specifies requirements of +The \libconcept{CommonRange} concept specifies requirements of a \libconcept{Range} type for which \tcode{ranges::begin} and \tcode{ranges::end} return objects of the same type. \begin{example} -The standard containers\iref{containers} model \tcode{CommonRange}. +The standard containers\iref{containers} model \libconcept{CommonRange}. \end{example} \indexlibrary{\idxcode{CommonRange}}% @@ -1163,7 +1163,7 @@ incomplete type. Before any member of the resulting specialization of \tcode{view_interface} other than special member functions is referenced, \tcode{D} shall be complete, and -model both \libconcept{DerivedFrom>} and \libconcept{View}. +model both \tcode{\libconcept{DerivedFrom}>} and \libconcept{View}. \rSec3[view.interface.members]{Members} @@ -5252,7 +5252,7 @@ \begin{itemize} \item If \tcode{T} models \libconcept{Iterator} and - \tcode{decltype((F))} models \libconcept{ConvertibleTo>}, + \tcode{decltype((F))} models \tcode{\libconcept{ConvertibleTo}>}, \begin{itemize} \item \tcode{subrange\{E, E + static_cast>(F)\}} if \tcode{T} models \libconcept{RandomAccessItera\-tor}. diff --git a/source/utilities.tex b/source/utilities.tex index ab39c0a254..332c4de8be 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -7940,7 +7940,7 @@ \pnum \begin{note} -This concept allows some \tcode{InputIterator}\iref{iterator.concept.input} +This concept allows some \libconcept{InputIterator}\iref{iterator.concept.input} operations to throw exceptions. \end{note} \end{itemdescr} @@ -7959,7 +7959,7 @@ \pnum \begin{note} -This concept allows some \tcode{Sentinel}\iref{iterator.concept.sentinel} +This concept allows some \libconcept{Sentinel}\iref{iterator.concept.sentinel} operations to throw exceptions. \end{note} \end{itemdescr} @@ -7990,7 +7990,7 @@ \begin{itemdescr} \pnum \begin{note} -This concept allows some \tcode{ForwardIterator}\iref{iterator.concept.forward} +This concept allows some \libconcept{ForwardIterator}\iref{iterator.concept.forward} operations to throw exceptions. \end{note} \end{itemdescr} From 0d0133db5580dc97e1a43fb42ce05f49384030d3 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:06:44 -0700 Subject: [PATCH 159/312] [ranges] [iterators] Remove hyphenation hints from concept names to make them easier to find. --- source/iterators.tex | 24 ++++++++++++------------ source/ranges.tex | 4 ++-- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index e362bdf70f..7590fc5660 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -513,13 +513,13 @@ \pnum The six categories of iterators correspond to the iterator concepts -\libconcept{Input\-Iterator}\iref{iterator.concept.input}, -\libconcept{Output\-Iterator}\iref{iterator.concept.output}, -\libconcept{Forward\-Iterator}\iref{iterator.concept.forward}, -\libconcept{Bidirectional\-Iterator}\iref{iterator.concept.bidir} -\libconcept{RandomAccess\-Iterator}\iref{iterator.concept.random.access}, +\libconcept{InputIterator}\iref{iterator.concept.input}, +\libconcept{OutputIterator}\iref{iterator.concept.output}, +\libconcept{ForwardIterator}\iref{iterator.concept.forward}, +\libconcept{BidirectionalIterator}\iref{iterator.concept.bidir} +\libconcept{RandomAccessIterator}\iref{iterator.concept.random.access}, and -\libconcept{Contiguous\-Iterator}\iref{iterator.concept.contiguous}, +\libconcept{ContiguousIterator}\iref{iterator.concept.contiguous}, respectively. The generic term \defn{iterator} refers to any type that models the \libconcept{Iterator} concept\iref{iterator.concept.iterator}. @@ -1463,7 +1463,7 @@ \tcode{++a} equals \tcode{++b} (which is not true for weakly incrementable types) allows the use of multi-pass one-directional -algorithms with types that model \libconcept{Increment\-able}. +algorithms with types that model \libconcept{Incrementable}. \end{note} \rSec3[iterator.concept.iterator]{Concept \libconcept{Iterator}} @@ -2409,11 +2409,11 @@ There are three relational concepts that specify how element values are transferred between \libconcept{Readable} and \libconcept{Writable} types: -\libconcept{Indirectly\-Movable}, -\libconcept{Indir\-ect\-ly\-Copy\-able}, and -\libconcept{Indirectly\-Swappable}. +\libconcept{IndirectlyMovable}, +\libconcept{IndirectlyCopyable}, and +\libconcept{IndirectlySwappable}. There are three relational concepts for rearrangements: -\libconcept{Permut\-able}, +\libconcept{Permutable}, \libconcept{Mergeable}, and \libconcept{Sortable}. There is one relational concept for comparing values from different sequences: @@ -4135,7 +4135,7 @@ template parameter shall either meet the \oldconcept{RandomAccessIterator} requirements\iref{random.access.iterators} or model -\libconcept{RandomAccess\-Iterator}\iref{iterator.concept.random.access}. +\libconcept{RandomAccessIterator}\iref{iterator.concept.random.access}. \rSec3[move.iter.cons]{Construction and assignment} diff --git a/source/ranges.tex b/source/ranges.tex index 7f1bf736fa..1cd49d5e94 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -3318,7 +3318,7 @@ \pnum Let \tcode{C} denote the type \tcode{iterator_traits>::iterator_category}. -If \tcode{C} models \tcode{\libconcept{Derived\-From}}, +If \tcode{C} models \tcode{\libconcept{DerivedFrom}}, then \tcode{iterator_category} denotes \tcode{random_access_iterator_tag}; otherwise, \tcode{iterator_category} denotes \tcode{C}. @@ -5255,7 +5255,7 @@ \tcode{decltype((F))} models \tcode{\libconcept{ConvertibleTo}>}, \begin{itemize} \item \tcode{subrange\{E, E + static_cast>(F)\}} - if \tcode{T} models \libconcept{RandomAccessItera\-tor}. + if \tcode{T} models \libconcept{RandomAccessIterator}. \item Otherwise, \tcode{subrange\{counted_iterator\{E, F\}, default_sentinel\}}. \end{itemize} From 500f405fd0da15b7c75cdf1e17a68baca1f89f12 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 14:24:13 -0700 Subject: [PATCH 160/312] [ranges] Rename namespace 'view' to namespace 'views'. --- source/ranges.tex | 166 +++++++++++++++++++++++----------------------- 1 file changed, 83 insertions(+), 83 deletions(-) diff --git a/source/ranges.tex b/source/ranges.tex index 1cd49d5e94..2f7382da39 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -131,7 +131,7 @@ requires is_object_v class empty_view; - namespace view { + namespace views { template inline constexpr empty_view empty{}; } @@ -141,20 +141,20 @@ requires is_object_v class single_view; - namespace view { inline constexpr @\unspec@ single = @\unspec@; } + namespace views { inline constexpr @\unspec@ single = @\unspec@; } // \ref{range.iota}, iota view template requires @\placeholder{weakly-equality-comparable-with}@ class iota_view; - namespace view { inline constexpr @\unspec@ iota = @\unspec@; } + namespace views { inline constexpr @\unspec@ iota = @\unspec@; } // \ref{range.all}, all view - namespace view { inline constexpr @\unspec@ all = @\unspec@; } + namespace views { inline constexpr @\unspec@ all = @\unspec@; } template - using all_view = decltype(view::all(declval())); + using all_view = decltype(views::all(declval())); template requires is_object_v @@ -165,7 +165,7 @@ requires View && is_object_v class filter_view; - namespace view { inline constexpr @\unspec@ filter = @\unspec@; } + namespace views { inline constexpr @\unspec@ filter = @\unspec@; } // \ref{range.transform}, transform view template @@ -173,12 +173,12 @@ RegularInvocable> class transform_view; - namespace view { inline constexpr @\unspec@ transform = @\unspec@; } + namespace views { inline constexpr @\unspec@ transform = @\unspec@; } // \ref{range.take}, take view template class take_view; - namespace view { inline constexpr @\unspec@ take = @\unspec@; } + namespace views { inline constexpr @\unspec@ take = @\unspec@; } // \ref{range.take.while}, take while view template @@ -186,13 +186,13 @@ IndirectUnaryPredicate> class take_while_view; - namespace view { inline constexpr @\unspec@ take_while = @\unspec@; } + namespace views { inline constexpr @\unspec@ take_while = @\unspec@; } // \ref{range.drop}, drop view template class drop_view; - namespace view { inline constexpr @\unspec@ drop = @\unspec@; } + namespace views { inline constexpr @\unspec@ drop = @\unspec@; } // \ref{range.drop.while}, drop while view template @@ -200,7 +200,7 @@ IndirectUnaryPredicate> class drop_while_view; - namespace view { inline constexpr @\unspec@ drop_while = @\unspec@; } + namespace views { inline constexpr @\unspec@ drop_while = @\unspec@; } // \ref{range.join}, join view template @@ -209,7 +209,7 @@ View>) class join_view; - namespace view { inline constexpr @\unspec@ join = @\unspec@; } + namespace views { inline constexpr @\unspec@ join = @\unspec@; } // \ref{range.split}, split view template @@ -221,24 +221,24 @@ (ForwardRange || @\placeholder{tiny-range}@) class split_view; - namespace view { inline constexpr @\unspec@ split = @\unspec@; } + namespace views { inline constexpr @\unspec@ split = @\unspec@; } // \ref{range.counted}, counted view - namespace view { inline constexpr @\unspec@ counted = @\unspec@; } + namespace views { inline constexpr @\unspec@ counted = @\unspec@; } // \ref{range.common}, common view template requires (!CommonRange) class common_view; - namespace view { inline constexpr @\unspec@ common = @\unspec@; } + namespace views { inline constexpr @\unspec@ common = @\unspec@; } // \ref{range.reverse}, reverse view template requires BidirectionalRange class reverse_view; - namespace view { inline constexpr @\unspec@ reverse = @\unspec@; } + namespace views { inline constexpr @\unspec@ reverse = @\unspec@; } // \ref{range.istream}, istream view template> @@ -257,7 +257,7 @@ template using values_view = elements_view, 1>; - namespace view { + namespace views { template inline constexpr @\unspec@ elements = @\unspec@ ; inline constexpr @\unspec@ keys = @\unspec@ ; @@ -266,7 +266,7 @@ } namespace std { - namespace view = ranges::view; + namespace views = ranges::views; template struct tuple_size> @@ -1580,7 +1580,7 @@ which are utilities to create a \libconcept{View}. \pnum -Range factories are declared in namespace \tcode{std::ranges::view}. +Range factories are declared in namespace \tcode{std::ranges::views}. \rSec2[range.empty]{Empty view} @@ -1739,13 +1739,13 @@ \effects Equivalent to: \tcode{return value_.operator->();} \end{itemdescr} -\rSec3[range.single.adaptor]{\tcode{view::single}} +\rSec3[range.single.adaptor]{\tcode{views::single}} \pnum -The name \tcode{view::single} denotes a +The name \tcode{views::single} denotes a customization point object\iref{customization.point.object}. For some subexpression \tcode{E}, the expression -\tcode{view::single(E)} is expression-equivalent to +\tcode{views::single(E)} is expression-equivalent to \tcode{single_view\{E\}}. \rSec2[range.iota]{Iota view} @@ -2411,13 +2411,13 @@ \effects Equivalent to: \tcode{return -(y - x);} \end{itemdescr} -\rSec3[range.iota.adaptor]{\tcode{view::iota}} +\rSec3[range.iota.adaptor]{\tcode{views::iota}} \pnum -The name \tcode{view::iota} denotes a +The name \tcode{views::iota} denotes a customization point object\iref{customization.point.object}. For some subexpressions \tcode{E} and \tcode{F}, the expressions -\tcode{view::iota(E)} and \tcode{view::iota(E, F)} +\tcode{views::iota(E)} and \tcode{views::iota(E, F)} are expression-equivalent to \tcode{iota_view\{E\}} and \tcode{iota_view\{E, F\}}, respectively. @@ -2430,7 +2430,7 @@ evaluate lazily as the resulting view is iterated. \pnum -Range adaptors are declared in namespace \tcode{std::ranges::view}. +Range adaptors are declared in namespace \tcode{std::ranges::views}. \pnum The bitwise \logop{OR} operator is overloaded for the purpose of creating adaptor chain @@ -2443,10 +2443,10 @@ vector ints{0,1,2,3,4,5}; auto even = [](int i){ return 0 == i % 2; }; auto square = [](int i) { return i * i; }; -for (int i : ints | view::filter(even) | view::transform(square)) { +for (int i : ints | views::filter(even) | views::transform(square)) { cout << i << ' '; // prints: 0 4 16 } -assert(ranges::equal(ints | view::filter(even), view::filter(ints, even))); +assert(ranges::equal(ints | views::filter(even), views::filter(ints, even))); \end{codeblock} \end{example} @@ -2545,14 +2545,14 @@ \rSec2[range.all]{All view} \pnum -\tcode{view::all} returns a \libconcept{View} that includes all elements of +\tcode{views::all} returns a \libconcept{View} that includes all elements of its \libconcept{Range} argument. \pnum -The name \tcode{view::all} denotes a +The name \tcode{views::all} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpression \tcode{E}, the expression -\tcode{view::all(E)} is expression-equivalent to: +\tcode{views::all(E)} is expression-equivalent to: \begin{itemize} \item \tcode{\placeholdernc{decay-copy}(E)} if the decayed type of \tcode{E} @@ -2710,7 +2710,7 @@ \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))} +\effects Initializes \tcode{base_} with \tcode{views::all(std::forward(r))} and initializes \tcode{pred_} with \tcode{std::\brk{}move(pred)}. \end{itemdescr} @@ -3016,13 +3016,13 @@ \effects Equivalent to: \tcode{return x.current_ == y.end_;} \end{itemdescr} -\rSec3[range.filter.adaptor]{\tcode{view::filter}} +\rSec3[range.filter.adaptor]{\tcode{views::filter}} \pnum -The name \tcode{view::filter} denotes a +The name \tcode{views::filter} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpressions \tcode{E} and \tcode{P}, -the expression \tcode{view::filter(E, P)} is expression-equivalent to +the expression \tcode{views::filter(E, P)} is expression-equivalent to \tcode{filter_view\{E, P\}}. @@ -3115,7 +3115,7 @@ \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))} +\effects Initializes \tcode{base_} with \tcode{views::all(std::forward(r))} and \tcode{fun_} with \tcode{std::move(fun)}. \end{itemdescr} @@ -3666,13 +3666,13 @@ \effects Equivalent to: \tcode{return x.end_ - y.current_;} \end{itemdescr} -\rSec3[range.transform.adaptor]{\tcode{view::transform}} +\rSec3[range.transform.adaptor]{\tcode{views::transform}} \pnum -The name \tcode{view::transform} denotes a +The name \tcode{views::transform} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpressions \tcode{E} and \tcode{F}, the expression -\tcode{view::transform(E, F)} is expression-equivalent to +\tcode{views::transform(E, F)} is expression-equivalent to \tcode{transform_view\{E, F\}}. @@ -3792,7 +3792,7 @@ \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))} +\effects Initializes \tcode{base_} with \tcode{views::all(std::forward(r))} and \tcode{count_} with \tcode{count}. \end{itemdescr} @@ -3872,13 +3872,13 @@ \tcode{return y.count() == 0 || y.base() == x.end_;} \end{itemdescr} -\rSec3[range.take.adaptor]{\tcode{view::take}} +\rSec3[range.take.adaptor]{\tcode{views::take}} \pnum -The name \tcode{view::take} denotes a +The name \tcode{views::take} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpressions \tcode{E} and \tcode{F}, the expression -\tcode{view::take(E, F)} is expression-equivalent to +\tcode{views::take(E, F)} is expression-equivalent to \tcode{take_view\{E, F\}}. \rSec2[range.take.while]{Take while view} @@ -3895,7 +3895,7 @@ \begin{codeblock} auto input = istringstream{"0 1 2 3 4 5 6 7 8 9"}; auto small = [](const auto x) noexcept { return x < 5; }; -auto small_ints = istream_view(input) | view::take_while(small); +auto small_ints = istream_view(input) | views::take_while(small); for (const auto i : small_ints) { cout << i << ' '; // prints \tcode{0 1 2 3 4} } @@ -4030,14 +4030,14 @@ \tcode{return y.end_ == x || !invoke(*y.pred_, *x);} \end{itemdescr} -\rSec3[range.take.while.adaptor]{\tcode{view::take_while}} +\rSec3[range.take.while.adaptor]{\tcode{views::take_while}} \indexlibrary{\idxcode{take_while}}% \pnum -The name \tcode{view::take_while} denotes +The name \tcode{views::take_while} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpressions \tcode{E} and \tcode{F}, -the expression \tcode{view::take_while(E, F)} +the expression \tcode{views::take_while(E, F)} is expression-equivalent to \tcode{take_while_view\{E, F\}}. \rSec2[range.drop]{Drop view} @@ -4052,7 +4052,7 @@ \pnum \begin{example} \begin{codeblock} -auto ints = view::iota(0) | view::take(10); +auto ints = views::iota(0) | views::take(10); auto latter_half = drop_view{ints, 5}; for (auto i : latter_half) { cout << i << ' '; // prints \tcode{5 6 7 8 9} @@ -4164,13 +4164,13 @@ \end{note} \end{itemdescr} -\rSec3[range.drop.adaptor]{\tcode{view::drop}} +\rSec3[range.drop.adaptor]{\tcode{views::drop}} \pnum -The name \tcode{view::drop} denotes +The name \tcode{views::drop} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpressions \tcode{E} and \tcode{F}, -the expression \tcode{view::drop(E, F)} +the expression \tcode{views::drop(E, F)} is expression-equivalent to \tcode{drop_view\{E, F\}}. \rSec2[range.drop.while]{Drop while view} @@ -4282,13 +4282,13 @@ \end{note} \end{itemdescr} -\rSec3[range.drop.while.adaptor]{\tcode{view::drop_while}} +\rSec3[range.drop.while.adaptor]{\tcode{views::drop_while}} \pnum -The name \tcode{view::drop_while} +The name \tcode{views::drop_while} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpressions \tcode{E} and \tcode{F}, -the expression \tcode{view::drop_while(E, F)} +the expression \tcode{views::drop_while(E, F)} is expression-equivalent to \tcode{drop_while_view\{E, F\}}. \rSec2[range.join]{Join view} @@ -4396,7 +4396,7 @@ \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))}. +\effects Initializes \tcode{base_} with \tcode{views::all(std::forward(r))}. \end{itemdescr} \rSec3[range.join.iterator]{Class template \tcode{join_view::iterator}} @@ -4527,7 +4527,7 @@ if constexpr (ref_is_glvalue) // \tcode{x} is a reference return (x); // \tcode{(x)} is an lvalue else - return (parent_->inner_ = view::all(x)); + return (parent_->inner_ = views::all(x)); }; for (; outer_ != ranges::end(parent_->base_); ++outer_) { @@ -4747,13 +4747,13 @@ \effects Equivalent to: \tcode{return x.outer_ == y.end_;} \end{itemdescr} -\rSec3[range.join.adaptor]{\tcode{view::join}} +\rSec3[range.join.adaptor]{\tcode{views::join}} \pnum -The name \tcode{view::join} denotes a +The name \tcode{views::join} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpression \tcode{E}, the expression -\tcode{view::join(E)} is expression-equivalent to +\tcode{views::join(E)} is expression-equivalent to \tcode{join_view\{E\}}. \rSec2[range.split]{Split view} @@ -4874,8 +4874,8 @@ \begin{itemdescr} \pnum \effects -Initializes \tcode{base_} with \tcode{view::all(std::forward(r))} and -\tcode{pattern_} with \tcode{view::all(std\brk{}::forward

(p))}. +Initializes \tcode{base_} with \tcode{views::all(std::forward(r))} and +\tcode{pattern_} with \tcode{views::all(std\brk{}::forward

(p))}. \end{itemdescr} \indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% @@ -4889,7 +4889,7 @@ \begin{itemdescr} \pnum \effects -Initializes \tcode{base_} with \tcode{view::all(std::forward(r))} and +Initializes \tcode{base_} with \tcode{views::all(std::forward(r))} and \tcode{pattern_} with \tcode{single_view\{\brk{}std::move(e)\}}. \end{itemdescr} @@ -5226,13 +5226,13 @@ \tcode{ranges::iter_swap(x.i_.\placeholdernc{current}, y.i_.\placeholdernc{current})}. \end{itemdescr} -\rSec3[range.split.adaptor]{\tcode{view::split}} +\rSec3[range.split.adaptor]{\tcode{views::split}} \pnum -The name \tcode{view::split} denotes a +The name \tcode{views::split} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpressions \tcode{E} and \tcode{F}, -the expression \tcode{view::split(E, F)} is expression-equivalent to +the expression \tcode{views::split(E, F)} is expression-equivalent to \tcode{split_view\{E, F\}}. @@ -5244,11 +5244,11 @@ for some iterator \tcode{i} and non-negative integer \tcode{n}. \pnum -The name \tcode{view::counted} denotes a +The name \tcode{views::counted} denotes a customization point object\iref{customization.point.object}. Let \tcode{E} and \tcode{F} be expressions, and let \tcode{T} be \tcode{decay_t}. -Then the expression \tcode{view::counted(E, F)} is expression-equivalent to: +Then the expression \tcode{views::counted(E, F)} is expression-equivalent to: \begin{itemize} \item If \tcode{T} models \libconcept{Iterator} and @@ -5260,9 +5260,9 @@ \tcode{subrange\{counted_iterator\{E, F\}, default_sentinel\}}. \end{itemize} -\item Otherwise, \tcode{view::counted(E, F)} is ill-formed. +\item Otherwise, \tcode{views::counted(E, F)} is ill-formed. \begin{note} - This case can result in substitution failure when \tcode{view::counted(E, F)} + This case can result in substitution failure when \tcode{views::counted(E, F)} appears in the immediate context of a template instantiation. \end{note} \end{itemize} @@ -5378,7 +5378,7 @@ \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))}. +\effects Initializes \tcode{base_} with \tcode{views::all(std::forward(r))}. \end{itemdescr} \indexlibrary{\idxcode{base}!\idxcode{common_view}}% @@ -5391,18 +5391,18 @@ \effects Equivalent to: \tcode{return base_;} \end{itemdescr} -\rSec3[range.common.adaptor]{\tcode{view::common}} +\rSec3[range.common.adaptor]{\tcode{views::common}} \pnum -The name \tcode{view::common} denotes a +The name \tcode{views::common} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpression \tcode{E}, -the expression \tcode{view::common(E)} is expression-equivalent to: +the expression \tcode{views::common(E)} is expression-equivalent to: \begin{itemize} -\item \tcode{view::all(E)}, +\item \tcode{views::all(E)}, if \tcode{decltype((E))} models \libconcept{CommonRange} - and \tcode{view::all(E)} is a well-formed expression. + and \tcode{views::all(E)} is a well-formed expression. \item Otherwise, \tcode{common_view\{E\}}. \end{itemize} @@ -5487,7 +5487,7 @@ \begin{itemdescr} \pnum -\effects Initializes \tcode{base_} with \tcode{view::all(std::forward(r))}. +\effects Initializes \tcode{base_} with \tcode{views::all(std::forward(r))}. \end{itemdescr} \indexlibrary{\idxcode{base}!\idxcode{reverse_view}}% @@ -5542,13 +5542,13 @@ \effects Equivalent to: \tcode{return make_reverse_iterator(ranges::begin(base_));} \end{itemdescr} -\rSec3[range.reverse.adaptor]{\tcode{view::reverse}} +\rSec3[range.reverse.adaptor]{\tcode{views::reverse}} \pnum -The name \tcode{view::reverse} denotes a +The name \tcode{views::reverse} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpression \tcode{E}, the expression -\tcode{view::reverse(E)} is expression-equivalent to: +\tcode{views::reverse(E)} is expression-equivalent to: \begin{itemize} \item If the type of \tcode{E} is @@ -5776,10 +5776,10 @@ of the adapted \tcode{View}'s value-type. \pnum -The name \tcode{view::elements} denotes +The name \tcode{views::elements} denotes a range adaptor object\iref{range.adaptor.object}. For some subexpression \tcode{E} and constant expression \tcode{N}, -the expression \tcode{view::elements(E)} is expression-equivalent to +the expression \tcode{views::elements(E)} is expression-equivalent to \tcode{elements_view, N>\{E\}}. \begin{example} @@ -5791,12 +5791,12 @@ {"Hamilton"sv, 1936} }; -auto names = historical_figures | view::elements<0>; +auto names = historical_figures | views::elements<0>; for (auto&& name : names) { cout << name << ' '; // prints \tcode{Babbage Hamilton Lovelace Turing } } -auto birth_years = historical_figures | view::elements<1>; +auto birth_years = historical_figures | views::elements<1>; for (auto&& born : birth_years) { cout << born << ' '; // prints \tcode{1791 1936 1815 1912 } } From 133ffa9709eb56f30eb7d0da17857b98833c6fc0 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 14:57:02 -0700 Subject: [PATCH 161/312] [everywhere] Rename concept 'Same' to 'same_as'. --- source/algorithms.tex | 8 +++--- source/concepts.tex | 30 ++++++++++----------- source/expressions.tex | 4 +-- source/iterators.tex | 60 +++++++++++++++++++++--------------------- source/numerics.tex | 4 +-- source/ranges.tex | 36 ++++++++++++------------- source/support.tex | 2 +- source/utilities.tex | 2 +- 8 files changed, 73 insertions(+), 73 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 676c67060e..f1a59c4c71 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1656,7 +1656,7 @@ class Proj = identity, IndirectRelation> C = ranges::equal_to> requires IndirectlyCopyable && (ForwardIterator || - (InputIterator && Same, iter_value_t>) || + (InputIterator && same_as, iter_value_t>) || IndirectlyCopyableStorable) constexpr unique_copy_result unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); @@ -1664,7 +1664,7 @@ IndirectRelation, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && (ForwardIterator> || - (InputIterator && Same, iter_value_t>) || + (InputIterator && same_as, iter_value_t>) || IndirectlyCopyableStorable, O>) constexpr unique_copy_result, O> unique_copy(R&& r, O result, C comp = {}, Proj proj = {}); @@ -5227,7 +5227,7 @@ class Proj = identity, IndirectRelation> C = ranges::equal_to> requires IndirectlyCopyable && (ForwardIterator || - (InputIterator && Same, iter_value_t>) || + (InputIterator && same_as, iter_value_t>) || IndirectlyCopyableStorable) constexpr ranges::unique_copy_result ranges::unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); @@ -5235,7 +5235,7 @@ IndirectRelation, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && (ForwardIterator> || - (InputIterator && Same, iter_value_t>) || + (InputIterator && same_as, iter_value_t>) || IndirectlyCopyableStorable, O>) constexpr ranges::unique_copy_result, O> ranges::unique_copy(R&& r, O result, C comp = {}, Proj proj = {}); diff --git a/source/concepts.tex b/source/concepts.tex index df0e72c938..5af18a2c96 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -147,9 +147,9 @@ \begin{codeblock} namespace std { // \ref{concepts.lang}, language-related concepts - // \ref{concept.same}, concept \libconcept{Same} + // \ref{concept.same}, concept \libconcept{same_as} template - concept Same = @\seebelow@; + concept same_as = @\seebelow@; // \ref{concept.derivedfrom}, concept \libconcept{DerivedFrom} template @@ -271,21 +271,21 @@ features. These concepts express relationships between types, type classifications, and fundamental type properties. -\rSec2[concept.same]{Concept \libconcept{Same}} +\rSec2[concept.same]{Concept \libconcept{same_as}} -\indexlibrary{\idxcode{Same}}% +\indexlibrary{\idxcode{same_as}}% \begin{itemdecl} template concept @\placeholdernc{same-impl}@ = is_same_v; // \expos template - concept Same = @\placeholdernc{same-impl}@ && @\placeholdernc{same-impl}@; + concept same_as = @\placeholdernc{same-impl}@ && @\placeholdernc{same-impl}@; \end{itemdecl} \begin{itemdescr} \pnum \begin{note} -\tcode{\libconcept{Same}} subsumes \tcode{\libconcept{Same}} and +\tcode{\libconcept{same_as}} subsumes \tcode{\libconcept{same_as}} and vice versa. \end{note} \end{itemdescr} @@ -382,7 +382,7 @@ \begin{itemdecl} template concept CommonReference = - Same, common_reference_t> && + same_as, common_reference_t> && ConvertibleTo> && ConvertibleTo>; \end{itemdecl} @@ -426,7 +426,7 @@ \begin{itemdecl} template concept Common = - Same, common_type_t> && + same_as, common_type_t> && requires { static_cast>(declval()); static_cast>(declval()); @@ -505,7 +505,7 @@ is_lvalue_reference_v && CommonReference&, const remove_reference_t&> && requires(LHS lhs, RHS&& rhs) { - { lhs = std::forward(rhs) } -> Same; + { lhs = std::forward(rhs) } -> same_as; }; \end{itemdecl} @@ -827,12 +827,12 @@ const remove_reference_t& b2, const bool a) { { b1 } -> ConvertibleTo; { !b1 } -> ConvertibleTo; - { b1 && b2 } -> Same; - { b1 && a } -> Same; - { a && b2 } -> Same; - { b1 || b2 } -> Same; - { b1 || a } -> Same; - { a || b2 } -> Same; + { b1 && b2 } -> same_as; + { b1 && a } -> same_as; + { a && b2 } -> same_as; + { b1 || b2 } -> same_as; + { b1 || a } -> same_as; + { a || b2 } -> same_as; { b1 == b2 } -> ConvertibleTo; { b1 == a } -> ConvertibleTo; { a == b2 } -> ConvertibleTo; diff --git a/source/expressions.tex b/source/expressions.tex index 93dc47ff56..75721be9cb 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -2710,14 +2710,14 @@ \begin{codeblock} template concept C2 = requires(T x) { - {*x} -> Same; + {*x} -> same_as; }; \end{codeblock} The \grammarterm{compound-requirement} in \tcode{C2} requires that \tcode{*x} is a valid expression, that \tcode{typename T::inner} is a valid type, and -that \tcode{Same} is satisfied. +that \tcode{same_as} is satisfied. \begin{codeblock} template concept C3 = diff --git a/source/iterators.tex b/source/iterators.tex index 7590fc5660..8fd63cd0ff 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -367,7 +367,7 @@ // \ref{iterators.common}, common iterators template S> - requires (!Same) + requires (!same_as) class common_iterator; template @@ -857,7 +857,7 @@ concept @\placeholder{cpp17-iterator}@ = Copyable && requires(I i) { { *i } -> @\placeholder{can-reference}@; - { ++i } -> Same; + { ++i } -> same_as; { *i++ } -> @\placeholder{can-reference}@; }; @@ -877,30 +877,30 @@ concept @\placeholder{cpp17-forward-iterator}@ = @\placeholder{cpp17-input-iterator}@ && Constructible && is_lvalue_reference_v> && - Same>, typename readable_traits::value_type> && + same_as>, typename readable_traits::value_type> && requires(I i) { { i++ } -> ConvertibleTo; - { *i++ } -> Same>; + { *i++ } -> same_as>; }; template concept @\placeholder{cpp17-bidirectional-iterator}@ = @\placeholder{cpp17-forward-iterator}@ && requires(I i) { - { --i } -> Same; + { --i } -> same_as; { i-- } -> ConvertibleTo; - { *i-- } -> Same>; + { *i-- } -> same_as>; }; template concept @\placeholder{cpp17-random-access-iterator}@ = @\placeholder{cpp17-bidirectional-iterator}@ && StrictTotallyOrdered && requires(I i, typename incrementable_traits::difference_type n) { - { i += n } -> Same; - { i -= n } -> Same; - { i + n } -> Same; - { n + i } -> Same; - { i - n } -> Same; - { i - i } -> Same; + { i += n } -> same_as; + { i -= n } -> same_as; + { i + n } -> same_as; + { n + i } -> same_as; + { i - n } -> same_as; + { i - i } -> same_as; { i[n] } -> ConvertibleTo>; }; \end{codeblock} @@ -1243,7 +1243,7 @@ \begin{itemize} \item If \tcode{Out} and \tcode{T} model - \tcode{Readable \&\& Same, decay_t{>}}, + \tcode{Readable \&\& same_as, decay_t{>}}, then \tcode{*o} after any above assignment is equal to the value of \tcode{E} before the assignment. \end{itemize} @@ -1292,7 +1292,7 @@ requires(I i) { typename iter_difference_t; requires @\placeholdernc{is-signed-integer-like}@>; - { ++i } -> Same; // not required to be equality-preserving + { ++i } -> same_as; // not required to be equality-preserving i++; // not required to be equality-preserving }; \end{codeblock} @@ -1442,7 +1442,7 @@ Regular && WeaklyIncrementable && requires(I i) { - { i++ } -> Same; + { i++ } -> same_as; }; \end{codeblock} @@ -1548,8 +1548,8 @@ Sentinel && !disable_sized_sentinel, remove_cv_t> && requires(const I& i, const S& s) { - { s - i } -> Same>; - { i - s } -> Same>; + { s - i } -> same_as>; + { i - s } -> same_as>; }; \end{itemdecl} @@ -1725,8 +1725,8 @@ ForwardIterator && DerivedFrom<@\placeholdernc{ITER_CONCEPT}@(I), bidirectional_iterator_tag> && requires(I i) { - { --i } -> Same; - { i-- } -> Same; + { --i } -> same_as; + { i-- } -> same_as; }; \end{codeblock} @@ -1770,12 +1770,12 @@ StrictTotallyOrdered && SizedSentinel && requires(I i, const I j, const iter_difference_t n) { - { i += n } -> Same; - { j + n } -> Same; - { n + j } -> Same; - { i -= n } -> Same; - { j - n } -> Same; - { j[n] } -> Same>; + { i += n } -> same_as; + { j + n } -> same_as; + { n + j } -> same_as; + { i -= n } -> same_as; + { j - n } -> same_as; + { j[n] } -> same_as>; }; \end{codeblock} @@ -1820,9 +1820,9 @@ RandomAccessIterator && DerivedFrom<@\placeholdernc{ITER_CONCEPT}@(I), contiguous_iterator_tag> && is_lvalue_reference_v> && - Same, remove_cvref_t>> && + same_as, remove_cvref_t>> && requires(const I& i) { - { to_address(i) } -> Same>>; + { to_address(i) } -> same_as>>; }; \end{codeblock} @@ -2895,7 +2895,7 @@ If \tcode{n == 0}, \range{i}{bound} or \range{bound}{i} denotes a range. If \tcode{n < 0}, \range{bound}{i} denotes a range, \tcode{I} models \libconcept{BidirectionalIterator}, and -\tcode{I} and \tcode{S} model \tcode{\libconcept{Same}}. +\tcode{I} and \tcode{S} model \tcode{\libconcept{same_as}}. \pnum \effects @@ -2936,7 +2936,7 @@ \range{first}{last} denotes a range, or \range{last}{first} denotes a range and \tcode{S} and \tcode{I} model -\tcode{Same \&\& SizedSentinel}. +\tcode{same_as \&\& SizedSentinel}. \pnum \effects @@ -4653,7 +4653,7 @@ \begin{codeblock} namespace std { template S> - requires (!Same) + requires (!same_as) class common_iterator { public: constexpr common_iterator() = default; diff --git a/source/numerics.tex b/source/numerics.tex index 429f1d545b..629261092d 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -2156,8 +2156,8 @@ concept UniformRandomBitGenerator = Invocable && UnsignedIntegral> && requires { - { G::min() } -> Same>; - { G::max() } -> Same>; + { G::min() } -> same_as>; + { G::max() } -> same_as>; }; \end{codeblock} diff --git a/source/ranges.tex b/source/ranges.tex index 2f7382da39..0653daffbc 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -106,7 +106,7 @@ // \ref{view.interface}, class template \tcode{view_interface} template - requires is_class_v && Same> + requires is_class_v && same_as> class view_interface; // \ref{range.subrange}, sub-ranges @@ -1027,7 +1027,7 @@ concept ContiguousRange = RandomAccessRange && ContiguousIterator> && requires(T& t) { - { ranges::data(t) } -> Same>>; + { ranges::data(t) } -> same_as>>; }; \end{itemdecl} @@ -1043,7 +1043,7 @@ \begin{itemdecl} template concept CommonRange = - Range && Same, sentinel_t>; + Range && same_as, sentinel_t>; \end{itemdecl} \pnum @@ -1073,8 +1073,8 @@ template concept @\placeholder{simple-view}@ = // \expos View && Range && - Same, iterator_t> && - Same, sentinel_t>; + same_as, iterator_t> && + same_as, sentinel_t>; template concept @\placeholder{has-arrow}@ = // \expos @@ -1082,7 +1082,7 @@ template concept @\placeholder{not-same-as}@ = // \expos - !Same, remove_cvref_t>; + !same_as, remove_cvref_t>; \end{codeblock} \rSec2[view.interface]{View interface} @@ -1096,7 +1096,7 @@ \begin{codeblock} namespace std::ranges { template - requires is_class_v && Same> + requires is_class_v && same_as> class view_interface : public view_base { private: constexpr D& derived() noexcept { // \expos @@ -1557,12 +1557,12 @@ \begin{codeblock} vector f(); auto result1 = ranges::find(f(), 42); // \#1 -static_assert(Same); +static_assert(same_as); auto vec = f(); auto result2 = ranges::find(vec, 42); // \#2 -static_assert(Same::iterator>); +static_assert(same_as::iterator>); auto result3 = ranges::find(subrange{vec}, 42); // \#3 -static_assert(Same::iterator>); +static_assert(same_as::iterator>); \end{codeblock} The call to \tcode{ranges::find} at \#1 returns \tcode{ranges::dangling} since \tcode{f()} is an rvalue \tcode{vector}; @@ -1793,7 +1793,7 @@ constexpr iterator begin() const; constexpr auto end() const; - constexpr iterator end() const requires Same; + constexpr iterator end() const requires same_as; constexpr auto size() const requires @\seebelow@; }; @@ -1833,8 +1833,8 @@ template concept @\placeholder{Decrementable}@ = Incrementable && requires(I i) { - { --i } -> Same; - { i-- } -> Same; + { --i } -> same_as; + { i-- } -> same_as; }; \end{itemdecl} @@ -1867,8 +1867,8 @@ concept @\placeholder{Advanceable}@ = @\placeholdernc{Decrementable}@ && StrictTotallyOrdered && requires(I i, const I j, const @\placeholdernc{IOTA-DIFF-T}@(I) n) { - { i += n } -> Same; - { i -= n } -> Same; + { i += n } -> same_as; + { i -= n } -> same_as; I(j + n); I(n + j); I(j - n); @@ -1954,7 +1954,7 @@ \pnum \effects Equivalent to: \begin{codeblock} -if constexpr (Same) +if constexpr (same_as) return unreachable_sentinel; else return sentinel{bound_}; @@ -1963,7 +1963,7 @@ \indexlibrary{\idxcode{end}!\idxcode{iota_view}}% \begin{itemdecl} -constexpr iterator end() const requires Same; +constexpr iterator end() const requires same_as; \end{itemdecl} \begin{itemdescr} @@ -1993,7 +1993,7 @@ \pnum \remarks The expression in the \grammarterm{requires-clause} is equivalent to \begin{codeblock} -(Same && Advanceable) || (Integral && Integral) || +(same_as && Advanceable) || (Integral && Integral) || SizedSentinel \end{codeblock} \end{itemdescr} diff --git a/source/support.tex b/source/support.tex index 56e3c7b9d3..1b492a9ce6 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4714,7 +4714,7 @@ \begin{codeblock} template concept @\placeholder{compares-as}@ = // \expos - Same, Cat>; + same_as, Cat>; template concept @\placeholder{partially-ordered-with}@ = // \expos diff --git a/source/utilities.tex b/source/utilities.tex index 332c4de8be..087c93de15 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -7927,7 +7927,7 @@ concept @\placeholdernc{no-throw-input-iterator}@ = // exposition only InputIterator && is_lvalue_reference_v> && - Same>, iter_value_t>; + same_as>, iter_value_t>; \end{itemdecl} \begin{itemdescr} From 4b36335c9d70cbcbbabe72a66e0e2a8427068a30 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 14:57:50 -0700 Subject: [PATCH 162/312] [everywhere] Rename concept 'DerivedFrom' to 'derived_from'. --- source/concepts.tex | 12 ++++++------ source/iterators.tex | 16 ++++++++-------- source/ranges.tex | 18 +++++++++--------- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 5af18a2c96..d774ff2ba6 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -151,9 +151,9 @@ template concept same_as = @\seebelow@; - // \ref{concept.derivedfrom}, concept \libconcept{DerivedFrom} + // \ref{concept.derivedfrom}, concept \libconcept{derived_from} template - concept DerivedFrom = @\seebelow@; + concept derived_from = @\seebelow@; // \ref{concept.convertibleto}, concept \libconcept{ConvertibleTo} template @@ -290,12 +290,12 @@ \end{note} \end{itemdescr} -\rSec2[concept.derivedfrom]{Concept \libconcept{DerivedFrom}} +\rSec2[concept.derivedfrom]{Concept \libconcept{derived_from}} -\indexlibrary{\idxcode{DerivedFrom}}% +\indexlibrary{\idxcode{derived_from}}% \begin{itemdecl} template - concept DerivedFrom = + concept derived_from = is_base_of_v && is_convertible_v; \end{itemdecl} @@ -303,7 +303,7 @@ \begin{itemdescr} \pnum \begin{note} -\tcode{\libconcept{DerivedFrom}} is satisfied if and only if +\tcode{\libconcept{derived_from}} is satisfied if and only if \tcode{Derived} is publicly and unambiguously derived from \tcode{Base}, or \tcode{Derived} and \tcode{Base} are the same class type ignoring cv-qualifiers. \end{note} diff --git a/source/iterators.tex b/source/iterators.tex index 8fd63cd0ff..6da200ef4b 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1621,7 +1621,7 @@ Iterator && Readable && requires { typename @\placeholdernc{ITER_CONCEPT}@(I); } && - DerivedFrom<@\placeholdernc{ITER_CONCEPT}@(I), input_iterator_tag>; + derived_from<@\placeholdernc{ITER_CONCEPT}@(I), input_iterator_tag>; \end{codeblock} \rSec3[iterator.concept.output]{Concept \libconcept{OutputIterator}} @@ -1672,7 +1672,7 @@ template concept ForwardIterator = InputIterator && - DerivedFrom<@\placeholdernc{ITER_CONCEPT}@(I), forward_iterator_tag> && + derived_from<@\placeholdernc{ITER_CONCEPT}@(I), forward_iterator_tag> && Incrementable && Sentinel; \end{codeblock} @@ -1723,7 +1723,7 @@ template concept BidirectionalIterator = ForwardIterator && - DerivedFrom<@\placeholdernc{ITER_CONCEPT}@(I), bidirectional_iterator_tag> && + derived_from<@\placeholdernc{ITER_CONCEPT}@(I), bidirectional_iterator_tag> && requires(I i) { { --i } -> same_as; { i-- } -> same_as; @@ -1766,7 +1766,7 @@ template concept RandomAccessIterator = BidirectionalIterator && - DerivedFrom<@\placeholdernc{ITER_CONCEPT}@(I), random_access_iterator_tag> && + derived_from<@\placeholdernc{ITER_CONCEPT}@(I), random_access_iterator_tag> && StrictTotallyOrdered && SizedSentinel && requires(I i, const I j, const iter_difference_t n) { @@ -1818,7 +1818,7 @@ template concept @\libconcept{ContiguousIterator}@ = RandomAccessIterator && - DerivedFrom<@\placeholdernc{ITER_CONCEPT}@(I), contiguous_iterator_tag> && + derived_from<@\placeholdernc{ITER_CONCEPT}@(I), contiguous_iterator_tag> && is_lvalue_reference_v> && same_as, remove_cvref_t>> && requires(const I& i) { @@ -3120,7 +3120,7 @@ \tcode{random_access_iterator_tag} if the type \tcode{iterator_traits<\brk{}Iterator>::iterator_category} models -\tcode{\libconcept{DerivedFrom}}, and +\tcode{\libconcept{derived_from}}, and \item \tcode{iterator_traits<\brk{}Iterator>::iterator_category} otherwise. \end{itemize} @@ -4116,7 +4116,7 @@ \tcode{random_access_iterator_tag} if the type \tcode{iterator_traits<\brk{}Iterator>::iterator_category} models -\tcode{\libconcept{DerivedFrom}}, and +\tcode{\libconcept{derived_from}}, and \item \tcode{iterator_traits<\brk{}Iterator>::iterator_category} otherwise. \end{itemize} @@ -4734,7 +4734,7 @@ \tcode{iterator_category} denotes \tcode{forward_iterator_tag} if \tcode{iterator_traits::iterator_category} -models \tcode{DerivedFrom}; +models \tcode{derived_from}; otherwise it denotes \tcode{input_iterator_tag}. \item diff --git a/source/ranges.tex b/source/ranges.tex index 0653daffbc..25674264f3 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -951,7 +951,7 @@ For a type \tcode{T}, the default value of \tcode{enable_view} is: \begin{itemize} -\item If \tcode{DerivedFrom} is \tcode{true}, \tcode{true}. +\item If \tcode{derived_from} is \tcode{true}, \tcode{true}. \item Otherwise, if \tcode{T} is a specialization of class template \tcode{initializer_list}\iref{support.initlist}, \tcode{set}\iref{set}, @@ -1163,7 +1163,7 @@ incomplete type. Before any member of the resulting specialization of \tcode{view_interface} other than special member functions is referenced, \tcode{D} shall be complete, and -model both \tcode{\libconcept{DerivedFrom}>} and \libconcept{View}. +model both \tcode{\libconcept{derived_from}>} and \libconcept{View}. \rSec3[view.interface.members]{Members} @@ -1212,7 +1212,7 @@ concept @\placeholdernc{pair-like}@ = // \expos !is_reference_v && requires(T t) { typename tuple_size::type; // ensures \tcode{tuple_size} is complete - requires DerivedFrom, integral_constant>; + requires derived_from, integral_constant>; typename tuple_element_t<0, remove_const_t>; typename tuple_element_t<1, remove_const_t>; { get<0>(t) } -> ConvertibleTo&>; @@ -2810,10 +2810,10 @@ \item Let \tcode{C} denote the type \tcode{iterator_traits>::iterator_category}. -\item If \tcode{C} models \tcode{DerivedFrom}, +\item If \tcode{C} models \tcode{derived_from}, then \tcode{iterator_category} denotes \tcode{bi\-directional_iterator_tag}. -\item Otherwise, if \tcode{C} models \tcode{DerivedFrom}, +\item Otherwise, if \tcode{C} models \tcode{derived_from}, then \tcode{iterator_category} denotes \tcode{forward_iterator_tag}. \item Otherwise, \tcode{iterator_category} denotes \tcode{input_iterator_tag}. @@ -3318,7 +3318,7 @@ \pnum Let \tcode{C} denote the type \tcode{iterator_traits>::iterator_category}. -If \tcode{C} models \tcode{\libconcept{DerivedFrom}}, +If \tcode{C} models \tcode{\libconcept{derived_from}}, then \tcode{iterator_category} denotes \tcode{random_access_iterator_tag}; otherwise, \tcode{iterator_category} denotes \tcode{C}. @@ -4494,10 +4494,10 @@ \item If \tcode{ref_is_glvalue} is \tcode{true}, \begin{itemize} \item If \placeholder{OUTERC} and \placeholder{INNERC} each model - \tcode{DerivedFrom}, \tcode{itera\-tor_category} + \tcode{derived_from}, \tcode{itera\-tor_category} denotes \tcode{bidirectional_iterator_tag}. \item Otherwise, if \placeholder{OUTERC} and \placeholder{INNERC} each model - \tcode{DerivedFrom}, \tcode{itera\-tor_category} + \tcode{derived_from}, \tcode{itera\-tor_category} denotes \tcode{forward_iterator_tag}. \end{itemize} \item Otherwise, \tcode{iterator_category} denotes \tcode{input_iterator_tag}. @@ -5147,7 +5147,7 @@ The \grammarterm{typedef-name} \tcode{iterator_category} denotes \tcode{forward_iterator_tag} if \tcode{iterator_traits>::iterator_category} models -\tcode{DerivedFrom}, and \tcode{input_iterator_tag} +\tcode{derived_from}, and \tcode{input_iterator_tag} otherwise. \indexlibrary{\idxcode{inner_iterator}!\idxcode{split_view::inner_iterator}}% From b0b50ad361778cb0e74aa204ea29c525ca17bd87 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:00:01 -0700 Subject: [PATCH 163/312] [everywhere] Rename concept 'ConvertibleTo' to 'convertible_to'. --- source/algorithms.tex | 32 +++++++++++----------- source/concepts.tex | 46 ++++++++++++++++---------------- source/expressions.tex | 2 +- source/iterators.tex | 22 ++++++++-------- source/lib-intro.tex | 4 +-- source/ranges.tex | 60 +++++++++++++++++++++--------------------- source/support.tex | 4 +-- source/templates.tex | 2 +- 8 files changed, 86 insertions(+), 86 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index f1a59c4c71..90c8566387 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -673,13 +673,13 @@ [[no_unique_address]] F fun; template - requires ConvertibleTo && ConvertibleTo + requires convertible_to && convertible_to operator for_each_result() const & { return {in, fun}; } template - requires ConvertibleTo && ConvertibleTo + requires convertible_to && convertible_to operator for_each_result() && { return {std::move(in), std::move(fun)}; } @@ -939,13 +939,13 @@ [[no_unique_address]] I2 in2; template - requires ConvertibleTo && ConvertibleTo + requires convertible_to && convertible_to operator mismatch_result() const & { return {in1, in2}; } template - requires ConvertibleTo && ConvertibleTo + requires convertible_to && convertible_to operator mismatch_result() && { return {std::move(in1), std::move(in2)}; } @@ -1142,13 +1142,13 @@ [[no_unique_address]] O out; template - requires ConvertibleTo && ConvertibleTo + requires convertible_to && convertible_to operator copy_result() const & { return {in, out}; } template - requires ConvertibleTo && ConvertibleTo + requires convertible_to && convertible_to operator copy_result() && { return {std::move(in), std::move(out)}; } @@ -1343,15 +1343,15 @@ [[no_unique_address]] O out; template - requires ConvertibleTo && - ConvertibleTo && ConvertibleTo + requires convertible_to && + convertible_to && convertible_to operator binary_transform_result() const & { return {in1, in2, out}; } template - requires ConvertibleTo && - ConvertibleTo && ConvertibleTo + requires convertible_to && + convertible_to && convertible_to operator binary_transform_result() && { return {std::move(in1), std::move(in2), std::move(out)}; } @@ -2169,15 +2169,15 @@ [[no_unique_address]] O2 out2; template - requires ConvertibleTo && - ConvertibleTo && ConvertibleTo + requires convertible_to && + convertible_to && convertible_to operator partition_copy_result() const & { return {in, out1, out2}; } template - requires ConvertibleTo && - ConvertibleTo && ConvertibleTo + requires convertible_to && + convertible_to && convertible_to operator partition_copy_result() && { return {std::move(in), std::move(out1), std::move(out2)}; } @@ -2683,13 +2683,13 @@ [[no_unique_address]] T max; template - requires ConvertibleTo + requires convertible_to operator minmax_result() const & { return {min, max}; } template - requires ConvertibleTo + requires convertible_to operator minmax_result() && { return {std::move(min), std::move(max)}; } diff --git a/source/concepts.tex b/source/concepts.tex index d774ff2ba6..0ea822fa91 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -155,9 +155,9 @@ template concept derived_from = @\seebelow@; - // \ref{concept.convertibleto}, concept \libconcept{ConvertibleTo} + // \ref{concept.convertibleto}, concept \libconcept{convertible_to} template - concept ConvertibleTo = @\seebelow@; + concept convertible_to = @\seebelow@; // \ref{concept.commonref}, concept \libconcept{CommonReference} template @@ -309,18 +309,18 @@ \end{note} \end{itemdescr} -\rSec2[concept.convertibleto]{Concept \libconcept{ConvertibleTo}} +\rSec2[concept.convertibleto]{Concept \libconcept{convertible_to}} \pnum -The \libconcept{ConvertibleTo} concept requires an expression of a particular +The \libconcept{convertible_to} concept requires an expression of a particular type and value category to be both implicitly and explicitly convertible to some other type. The implicit and explicit conversions are required to produce equal results. -\indexlibrary{\idxcode{ConvertibleTo}}% +\indexlibrary{\idxcode{convertible_to}}% \begin{itemdecl} template - concept ConvertibleTo = + concept convertible_to = is_convertible_v && requires(From (&f)()) { static_cast(f()); @@ -338,7 +338,7 @@ for some types \tcode{From} and \tcode{To}, and let \tcode{f} be a function with no arguments and return type \tcode{From} such that \tcode{f()} is equality-preserving. -\tcode{From} and \tcode{To} model \tcode{\libconcept{ConvertibleTo}} +\tcode{From} and \tcode{To} model \tcode{\libconcept{convertible_to}} only if: \begin{itemize} @@ -368,9 +368,9 @@ \pnum For two types \tcode{T} and \tcode{U}, if \tcode{common_reference_t} is well-formed and denotes a type \tcode{C} such that both -\tcode{\libconcept{ConvertibleTo}} +\tcode{\libconcept{convertible_to}} and -\tcode{\libconcept{ConvertibleTo}} +\tcode{\libconcept{convertible_to}} are modeled, then \tcode{T} and \tcode{U} share a \term{common reference type}, \tcode{C}. \begin{note} @@ -383,8 +383,8 @@ template concept CommonReference = same_as, common_reference_t> && - ConvertibleTo> && - ConvertibleTo>; + convertible_to> && + convertible_to>; \end{itemdecl} \begin{itemdescr} @@ -759,7 +759,7 @@ \indexlibrary{\idxcode{MoveConstructible}}% \begin{itemdecl} template - concept MoveConstructible = Constructible && ConvertibleTo; + concept MoveConstructible = Constructible && convertible_to; \end{itemdecl} \begin{itemdescr} @@ -785,9 +785,9 @@ template concept CopyConstructible = MoveConstructible && - Constructible && ConvertibleTo && - Constructible && ConvertibleTo && - Constructible && ConvertibleTo; + Constructible && convertible_to && + Constructible && convertible_to && + Constructible && convertible_to; \end{itemdecl} \begin{itemdescr} @@ -825,20 +825,20 @@ Movable> && // (see \ref{concepts.object}) requires(const remove_reference_t& b1, const remove_reference_t& b2, const bool a) { - { b1 } -> ConvertibleTo; - { !b1 } -> ConvertibleTo; + { b1 } -> convertible_to; + { !b1 } -> convertible_to; { b1 && b2 } -> same_as; { b1 && a } -> same_as; { a && b2 } -> same_as; { b1 || b2 } -> same_as; { b1 || a } -> same_as; { a || b2 } -> same_as; - { b1 == b2 } -> ConvertibleTo; - { b1 == a } -> ConvertibleTo; - { a == b2 } -> ConvertibleTo; - { b1 != b2 } -> ConvertibleTo; - { b1 != a } -> ConvertibleTo; - { a != b2 } -> ConvertibleTo; + { b1 == b2 } -> convertible_to; + { b1 == a } -> convertible_to; + { a == b2 } -> convertible_to; + { b1 != b2 } -> convertible_to; + { b1 != a } -> convertible_to; + { a != b2 } -> convertible_to; }; \end{itemdecl} diff --git a/source/expressions.tex b/source/expressions.tex index 75721be9cb..484ce6d3f4 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -2505,7 +2505,7 @@ template concept R = requires (T i) { typename T::type; - {*i} -> ConvertibleTo; + {*i} -> convertible_to; }; \end{codeblock} A \grammarterm{requires-expression} can also be used in a diff --git a/source/iterators.tex b/source/iterators.tex index 6da200ef4b..47498cb3ff 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -879,7 +879,7 @@ is_lvalue_reference_v> && same_as>, typename readable_traits::value_type> && requires(I i) { - { i++ } -> ConvertibleTo; + { i++ } -> convertible_to; { *i++ } -> same_as>; }; @@ -887,7 +887,7 @@ concept @\placeholder{cpp17-bidirectional-iterator}@ = @\placeholder{cpp17-forward-iterator}@ && requires(I i) { { --i } -> same_as; - { i-- } -> ConvertibleTo; + { i-- } -> convertible_to; { *i-- } -> same_as>; }; @@ -901,7 +901,7 @@ { n + i } -> same_as; { i - n } -> same_as; { i - i } -> same_as; - { i[n] } -> ConvertibleTo>; + { i[n] } -> convertible_to>; }; \end{codeblock} @@ -4556,7 +4556,7 @@ constexpr move_sentinel(); constexpr explicit move_sentinel(S s); template - requires ConvertibleTo + requires convertible_to constexpr move_sentinel(const move_sentinel& s); template requires Assignable @@ -4596,7 +4596,7 @@ \indexlibrary{\idxcode{move_sentinel}!constructor}% \begin{itemdecl} template - requires ConvertibleTo + requires convertible_to constexpr move_sentinel(const move_sentinel& s); \end{itemdecl} @@ -4660,11 +4660,11 @@ constexpr common_iterator(I i); constexpr common_iterator(S s); template - requires ConvertibleTo && ConvertibleTo + requires convertible_to && convertible_to constexpr common_iterator(const common_iterator& x); template - requires ConvertibleTo && ConvertibleTo && + requires convertible_to && convertible_to && Assignable && Assignable common_iterator& operator=(const common_iterator& x); @@ -4771,7 +4771,7 @@ \indexlibrary{\idxcode{common_iterator}!constructor}% \begin{itemdecl} template - requires ConvertibleTo && ConvertibleTo + requires convertible_to && convertible_to constexpr common_iterator(const common_iterator& x); \end{itemdecl} @@ -4789,7 +4789,7 @@ \indexlibrarymember{operator=}{common_iterator}% \begin{itemdecl} template - requires ConvertibleTo && ConvertibleTo && + requires convertible_to && convertible_to && Assignable && Assignable common_iterator& operator=(const common_iterator& x); \end{itemdecl} @@ -5079,7 +5079,7 @@ constexpr counted_iterator() = default; constexpr counted_iterator(I x, iter_difference_t n); template - requires ConvertibleTo + requires convertible_to constexpr counted_iterator(const counted_iterator& x); template @@ -5179,7 +5179,7 @@ \indexlibrary{\idxcode{counted_iterator}!constructor}% \begin{itemdecl} template - requires ConvertibleTo + requires convertible_to constexpr counted_iterator(const counted_iterator& x); \end{itemdecl} diff --git a/source/lib-intro.tex b/source/lib-intro.tex index eff21d116c..646f410ead 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -718,8 +718,8 @@ constexpr auto @\placeholdernc{synth-three-way}@ = [](const T& t, const U& u) requires requires { - { t < u } -> ConvertibleTo; - { u < t } -> ConvertibleTo; + { t < u } -> convertible_to; + { u < t } -> convertible_to; } { if constexpr (ThreeWayComparableWith) { diff --git a/source/ranges.tex b/source/ranges.tex index 25674264f3..88a2122fe5 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1215,16 +1215,16 @@ requires derived_from, integral_constant>; typename tuple_element_t<0, remove_const_t>; typename tuple_element_t<1, remove_const_t>; - { get<0>(t) } -> ConvertibleTo&>; - { get<1>(t) } -> ConvertibleTo&>; + { get<0>(t) } -> convertible_to&>; + { get<1>(t) } -> convertible_to&>; }; template concept @\placeholdernc{pair-like-convertible-to}@ = // \expos !Range && @\placeholder{pair-like}@> && requires(T&& t) { - { get<0>(std::forward(t)) } -> ConvertibleTo; - { get<1>(std::forward(t)) } -> ConvertibleTo; + { get<0>(std::forward(t)) } -> convertible_to; + { get<1>(std::forward(t)) } -> convertible_to; }; template @@ -1257,11 +1257,11 @@ template<@\placeholdernc{not-same-as}@ R> requires @\placeholdernc{forwarding-range}@ && - ConvertibleTo, I> && ConvertibleTo, S> + convertible_to, I> && convertible_to, S> constexpr subrange(R&& r) requires (!StoreSize || SizedRange); template<@\placeholdernc{forwarding-range}@ R> - requires ConvertibleTo, I> && ConvertibleTo, S> + requires convertible_to, I> && convertible_to, S> constexpr subrange(R&& r, @\placeholdernc{make-unsigned-like-t}@(iter_difference_t) n) requires (K == subrange_kind::sized) : subrange{ranges::begin(r), ranges::end(r), n} @@ -1377,7 +1377,7 @@ \begin{itemdecl} template<@\placeholdernc{not-same-as}@ R> requires @\placeholdernc{forwarding-range}@ && - ConvertibleTo, I> && ConvertibleTo, S> + convertible_to, I> && convertible_to, S> constexpr subrange(R&& r) requires (!StoreSize || SizedRange); \end{itemdecl} @@ -1872,7 +1872,7 @@ I(j + n); I(n + j); I(j - n); - { j - j } -> ConvertibleTo<@\placeholdernc{IOTA-DIFF-T}@(I)>; + { j - j } -> convertible_to<@\placeholdernc{IOTA-DIFF-T}@(I)>; }; \end{itemdecl} @@ -2623,7 +2623,7 @@ \end{codeblock} The expression in the \grammarterm{requires-clause} is equivalent to \begin{codeblock} -ConvertibleTo && requires { @\placeholder{FUN}@(declval()); } +convertible_to && requires { @\placeholder{FUN}@(declval()); } \end{codeblock} \pnum @@ -3238,7 +3238,7 @@ iterator() = default; constexpr iterator(Parent& parent, iterator_t current); constexpr iterator(iterator i) - requires Const && ConvertibleTo, iterator_t>; + requires Const && convertible_to, iterator_t>; constexpr iterator_t base() const; constexpr decltype(auto) operator*() const @@ -3337,7 +3337,7 @@ \indexlibrary{\idxcode{iterator}!\idxcode{transform_view::iterator}}% \begin{itemdecl} constexpr iterator(iterator i) - requires Const && ConvertibleTo, iterator_t>; + requires Const && convertible_to, iterator_t>; \end{itemdecl} \begin{itemdescr} @@ -3585,7 +3585,7 @@ sentinel() = default; constexpr explicit sentinel(sentinel_t end); constexpr sentinel(sentinel i) - requires Const && ConvertibleTo, sentinel_t>; + requires Const && convertible_to, sentinel_t>; constexpr sentinel_t base() const; @@ -3614,7 +3614,7 @@ \indexlibrary{\idxcode{sentinel}!\idxcode{transform_view::sentinel}} \begin{itemdecl} constexpr sentinel(sentinel i) - requires Const && ConvertibleTo, sentinel_t>; + requires Const && convertible_to, sentinel_t>; \end{itemdecl} \begin{itemdescr} @@ -3821,7 +3821,7 @@ sentinel() = default; constexpr explicit sentinel(sentinel_t end); constexpr sentinel(sentinel s) - requires Const && ConvertibleTo, sentinel_t>; + requires Const && convertible_to, sentinel_t>; constexpr sentinel_t base() const; @@ -3843,7 +3843,7 @@ \indexlibrary{\idxcode{sentinel}!\idxcode{take_view::sentinel}}% \begin{itemdecl} constexpr sentinel(sentinel s) - requires Const && ConvertibleTo, sentinel_t>; + requires Const && convertible_to, sentinel_t>; \end{itemdecl} \begin{itemdescr} @@ -3988,7 +3988,7 @@ sentinel() = default; constexpr explicit sentinel(sentinel_t end, const Pred* pred); constexpr sentinel(sentinel s) - requires Const && ConvertibleTo, sentinel_t>; + requires Const && convertible_to, sentinel_t>; constexpr sentinel_t base() const { return end_; } @@ -4009,7 +4009,7 @@ \begin{itemdecl} constexpr sentinel(sentinel s) - requires Const && ConvertibleTo, sentinel_t>; + requires Const && convertible_to, sentinel_t>; \end{itemdecl} \begin{itemdescr} @@ -4431,9 +4431,9 @@ constexpr iterator(Parent& parent, iterator_t outer); constexpr iterator(iterator i) requires Const && - ConvertibleTo, iterator_t> && - ConvertibleTo, - iterator_t>>; + convertible_to, iterator_t> && + convertible_to, + iterator_t>>; constexpr decltype(auto) operator*() const { return *inner_; } @@ -4556,9 +4556,9 @@ \begin{itemdecl} constexpr iterator(iterator i) requires Const && - ConvertibleTo, iterator_t> && - ConvertibleTo, - iterator_t>>; + convertible_to, iterator_t> && + convertible_to, + iterator_t>>; \end{itemdecl} \begin{itemdescr} @@ -4709,7 +4709,7 @@ constexpr explicit sentinel(Parent& parent); constexpr sentinel(sentinel s) - requires Const && ConvertibleTo, sentinel_t>; + requires Const && convertible_to, sentinel_t>; friend constexpr bool operator==(const iterator& x, const sentinel& y); }; @@ -4729,7 +4729,7 @@ \indexlibrary{\idxcode{sentinel}!\idxcode{join_view::sentinel}} \begin{itemdecl} constexpr sentinel(sentinel s) - requires Const && ConvertibleTo, sentinel_t>; + requires Const && convertible_to, sentinel_t>; \end{itemdecl} \begin{itemdescr} @@ -4923,7 +4923,7 @@ constexpr outer_iterator(Parent& parent, iterator_t current) requires ForwardRange; constexpr outer_iterator(outer_iterator i) - requires Const && ConvertibleTo, iterator_t>; + requires Const && convertible_to, iterator_t>; constexpr value_type operator*() const; @@ -4977,7 +4977,7 @@ \indexlibrary{\idxcode{outer_iterator}!\idxcode{split_view::outer_iterator}}% \begin{itemdecl} constexpr outer_iterator(outer_iterator i) - requires Const && ConvertibleTo, iterator_t>; + requires Const && convertible_to, iterator_t>; \end{itemdecl} \begin{itemdescr} @@ -5252,7 +5252,7 @@ \begin{itemize} \item If \tcode{T} models \libconcept{Iterator} and - \tcode{decltype((F))} models \tcode{\libconcept{ConvertibleTo}>}, + \tcode{decltype((F))} models \tcode{\libconcept{convertible_to}>}, \begin{itemize} \item \tcode{subrange\{E, E + static_cast>(F)\}} if \tcode{T} models \libconcept{RandomAccessIterator}. @@ -5918,7 +5918,7 @@ iterator() = default; constexpr explicit iterator(iterator_t current); constexpr iterator(iterator i) - requires Const && ConvertibleTo, iterator_t>; + requires Const && convertible_to, iterator_t>; constexpr iterator_t base() const; @@ -5988,7 +5988,7 @@ \begin{itemdecl} constexpr iterator(iterator i) - requires Const && ConvertibleTo, iterator_t>; + requires Const && convertible_to, iterator_t>; \end{itemdecl} \begin{itemdescr} diff --git a/source/support.tex b/source/support.tex index 1b492a9ce6..307519c605 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4761,7 +4761,7 @@ template concept ThreeWayComparable = @\placeholder{weakly-equality-comparable-with}@ && - (!ConvertibleTo || @\placeholder{partially-ordered-with}@) && + (!convertible_to || @\placeholder{partially-ordered-with}@) && requires(const remove_reference_t& a, const remove_reference_t& b) { { a <=> b } -> @\placeholder{compares-as}@; }; @@ -4803,7 +4803,7 @@ template concept ThreeWayComparableWith = @\placeholder{weakly-equality-comparable-with}@ && - (!ConvertibleTo || @\placeholder{partially-ordered-with}@) && + (!convertible_to || @\placeholder{partially-ordered-with}@) && ThreeWayComparable && ThreeWayComparable && CommonReference&, const remove_reference_t&> && diff --git a/source/templates.tex b/source/templates.tex index 1e8c3c3d42..1682ce7b19 100644 --- a/source/templates.tex +++ b/source/templates.tex @@ -3924,7 +3924,7 @@ \begin{codeblock} template concept C = requires(T x) { - { x == x } -> ConvertibleTo; + { x == x } -> convertible_to; }; template From 6131cdada6d7722abed318d5131002820fe22054 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:00:31 -0700 Subject: [PATCH 164/312] [everywhere] Rename concept 'CommonReference' to 'common_reference_with'. --- source/concepts.tex | 28 ++++++++++++++-------------- source/iterators.tex | 10 +++++----- source/support.tex | 2 +- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 0ea822fa91..d56e9e7ebf 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -159,9 +159,9 @@ template concept convertible_to = @\seebelow@; - // \ref{concept.commonref}, concept \libconcept{CommonReference} + // \ref{concept.commonref}, concept \libconcept{common_reference_with} template - concept CommonReference = @\seebelow@; + concept common_reference_with = @\seebelow@; // \ref{concept.common}, concept \libconcept{Common} template @@ -363,7 +363,7 @@ \end{itemdescr} -\rSec2[concept.commonref]{Concept \libconcept{CommonReference}} +\rSec2[concept.commonref]{Concept \libconcept{common_reference_with}} \pnum For two types \tcode{T} and \tcode{U}, if \tcode{common_reference_t} @@ -378,10 +378,10 @@ different type. \tcode{C} may be a reference type. \end{note} -\indexlibrary{\idxcode{CommonReference}}% +\indexlibrary{\idxcode{common_reference_with}}% \begin{itemdecl} template - concept CommonReference = + concept common_reference_with = same_as, common_reference_t> && convertible_to> && convertible_to>; @@ -395,7 +395,7 @@ \tcode{decltype((t1))} and \tcode{decltype((t2))} are each \tcode{T}, and let \tcode{u1} and \tcode{u2} be equality-preserving expressions such that \tcode{decltype((u1))} and \tcode{decltype((u2))} are each \tcode{U}. -\tcode{T} and \tcode{U} model \tcode{\libconcept{CommonReference}} +\tcode{T} and \tcode{U} model \tcode{\libconcept{common_reference_with}} only if: \begin{itemize} \item \tcode{C(t1)} equals \tcode{C(t2)} if and only if @@ -406,7 +406,7 @@ \pnum \begin{note} -Users can customize the behavior of \libconcept{CommonReference} by specializing +Users can customize the behavior of \libconcept{common_reference_with} by specializing the \tcode{basic_common_reference} class template\iref{meta.trans.other}. \end{note} \end{itemdescr} @@ -431,10 +431,10 @@ static_cast>(declval()); static_cast>(declval()); } && - CommonReference< + common_reference_with< add_lvalue_reference_t, add_lvalue_reference_t> && - CommonReference< + common_reference_with< add_lvalue_reference_t>, common_reference_t< add_lvalue_reference_t, @@ -503,7 +503,7 @@ template concept Assignable = is_lvalue_reference_v && - CommonReference&, const remove_reference_t&> && + common_reference_with&, const remove_reference_t&> && requires(LHS lhs, RHS&& rhs) { { lhs = std::forward(rhs) } -> same_as; }; @@ -565,7 +565,7 @@ is that \tcode{t1} equals \tcode{u2} and \tcode{u1} equals \tcode{t2}. \item If \tcode{T} and \tcode{U} are different types that model - \tcode{\libconcept{CommonReference}}, + \tcode{\libconcept{common_reference_with}}, the result of the operation is that \tcode{C(t1)} equals \tcode{C(u2)} and @@ -653,7 +653,7 @@ \begin{itemdecl} template concept SwappableWith = - CommonReference&, const remove_reference_t&> && + common_reference_with&, const remove_reference_t&> && requires(T&& t, U&& u) { ranges::swap(std::forward(t), std::forward(t)); ranges::swap(std::forward(u), std::forward(u)); @@ -929,7 +929,7 @@ template concept EqualityComparableWith = EqualityComparable && EqualityComparable && - CommonReference&, const remove_reference_t&> && + common_reference_with&, const remove_reference_t&> && EqualityComparable< common_reference_t< const remove_reference_t&, @@ -989,7 +989,7 @@ template concept StrictTotallyOrderedWith = StrictTotallyOrdered && StrictTotallyOrdered && - CommonReference&, const remove_reference_t&> && + common_reference_with&, const remove_reference_t&> && StrictTotallyOrdered< common_reference_t< const remove_reference_t&, diff --git a/source/iterators.tex b/source/iterators.tex index 47498cb3ff..81642690b9 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1203,9 +1203,9 @@ typename iter_reference_t; typename iter_rvalue_reference_t; } && - CommonReference&&, iter_value_t&> && - CommonReference&&, iter_rvalue_reference_t&&> && - CommonReference&&, const iter_value_t&>; + common_reference_with&&, iter_value_t&> && + common_reference_with&&, iter_rvalue_reference_t&&> && + common_reference_with&&, const iter_value_t&>; \end{codeblock} \pnum @@ -2327,7 +2327,7 @@ Invocable&> && Invocable> && Invocable> && - CommonReference< + common_reference_with< invoke_result_t&>, invoke_result_t>>; @@ -2338,7 +2338,7 @@ RegularInvocable&> && RegularInvocable> && RegularInvocable> && - CommonReference< + common_reference_with< invoke_result_t&>, invoke_result_t>>; diff --git a/source/support.tex b/source/support.tex index 307519c605..f5502d67cb 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4806,7 +4806,7 @@ (!convertible_to || @\placeholder{partially-ordered-with}@) && ThreeWayComparable && ThreeWayComparable && - CommonReference&, const remove_reference_t&> && + common_reference_with&, const remove_reference_t&> && ThreeWayComparable< common_reference_t&, const remove_reference_t&>, Cat> && requires(const remove_reference_t& t, const remove_reference_t& u) { From bda62c46dbd21216b48d6ec228fef840a11fa58a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:01:51 -0700 Subject: [PATCH 165/312] [everywhere] Rename concept 'Common' to 'common_with'. --- source/concepts.tex | 14 +++++++------- source/iterators.tex | 12 ++++++------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index d56e9e7ebf..0e54eed638 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -163,9 +163,9 @@ template concept common_reference_with = @\seebelow@; - // \ref{concept.common}, concept \libconcept{Common} + // \ref{concept.common}, concept \libconcept{common_with} template - concept Common = @\seebelow@; + concept common_with = @\seebelow@; // \ref{concepts.arithmetic}, arithmetic concepts template @@ -411,7 +411,7 @@ \end{note} \end{itemdescr} -\rSec2[concept.common]{Concept \libconcept{Common}} +\rSec2[concept.common]{Concept \libconcept{common_with}} \pnum If \tcode{T} and \tcode{U} can both be explicitly converted to some third type, @@ -422,10 +422,10 @@ different type. \tcode{C} might not be unique. \end{note} -\indexlibrary{\idxcode{Common}}% +\indexlibrary{\idxcode{common_with}}% \begin{itemdecl} template - concept Common = + concept common_with = same_as, common_type_t> && requires { static_cast>(declval()); @@ -449,7 +449,7 @@ \tcode{decltype((t1))} and \tcode{decltype((t2))} are each \tcode{T}, and let \tcode{u1} and \tcode{u2} be equality-preserving expressions such that \tcode{decltype((u1))} and \tcode{decltype((u2))} are each \tcode{U}. -\tcode{T} and \tcode{U} model \tcode{\libconcept{Common}} +\tcode{T} and \tcode{U} model \tcode{\libconcept{common_with}} only if: \begin{itemize} \item \tcode{C(t1)} equals \tcode{C(t2)} if and only if @@ -460,7 +460,7 @@ \pnum \begin{note} -Users can customize the behavior of \libconcept{Common} by specializing the +Users can customize the behavior of \libconcept{common_with} by specializing the \tcode{common_type} class template\iref{meta.trans.other}. \end{note} diff --git a/source/iterators.tex b/source/iterators.tex index 81642690b9..31a9cf5b4b 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -5112,7 +5112,7 @@ constexpr counted_iterator operator-(iter_difference_t n) const requires RandomAccessIterator; - template I2> + template I2> friend constexpr iter_difference_t operator-( const counted_iterator& x, const counted_iterator& y); friend constexpr iter_difference_t operator-( @@ -5125,13 +5125,13 @@ constexpr decltype(auto) operator[](iter_difference_t n) const requires RandomAccessIterator; - template I2> + template I2> friend constexpr bool operator==( const counted_iterator& x, const counted_iterator& y); friend constexpr bool operator==( const counted_iterator& x, default_sentinel_t); - template I2> + template I2> friend constexpr strong_ordering operator<=>( const counted_iterator& x, const counted_iterator& y); @@ -5408,7 +5408,7 @@ \indexlibrarymember{operator-}{counted_iterator}% \begin{itemdecl} -template I2> +template I2> friend constexpr iter_difference_t operator-( const counted_iterator& x, const counted_iterator& y); \end{itemdecl} @@ -5469,7 +5469,7 @@ \indexlibrarymember{operator==}{counted_iterator}% \begin{itemdecl} -template I2> +template I2> friend constexpr bool operator==( const counted_iterator& x, const counted_iterator& y); \end{itemdecl} @@ -5497,7 +5497,7 @@ \indexlibrarymember{operator<=>}{counted_iterator}% \begin{itemdecl} -template I2> +template I2> friend constexpr strong_ordering operator<=>( const counted_iterator& x, const counted_iterator& y); \end{itemdecl} From ded579bad6725c98b37f5f96d7769c0ddaef4b72 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:02:42 -0700 Subject: [PATCH 166/312] [everywhere] Rename concept 'Integral' to 'integral'. --- source/concepts.tex | 10 +++++----- source/iterators.tex | 4 ++-- source/overloading.tex | 6 +++--- source/ranges.tex | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 0e54eed638..90c6877192 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -169,7 +169,7 @@ // \ref{concepts.arithmetic}, arithmetic concepts template - concept Integral = @\seebelow@; + concept integral = @\seebelow@; template concept SignedIntegral = @\seebelow@; template @@ -468,16 +468,16 @@ \rSec2[concepts.arithmetic]{Arithmetic concepts} -\indexlibrary{\idxcode{Integral}}% +\indexlibrary{\idxcode{integral}}% \indexlibrary{\idxcode{SignedIntegral}}% \indexlibrary{\idxcode{UnsignedIntegral}}% \begin{itemdecl} template - concept Integral = is_integral_v; + concept integral = is_integral_v; template - concept SignedIntegral = Integral && is_signed_v; + concept SignedIntegral = integral && is_signed_v; template - concept UnsignedIntegral = Integral && !SignedIntegral; + concept UnsignedIntegral = integral && !SignedIntegral; template concept FloatingPoint = is_floating_point_v; \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index 31a9cf5b4b..dfeb9225a0 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -698,7 +698,7 @@ template requires (!requires { typename T::difference_type; } && - requires(const T& a, const T& b) { { a - b } -> Integral; }) + requires(const T& a, const T& b) { { a - b } -> integral; }) struct incrementable_traits { using difference_type = make_signed_t() - declval())>; }; @@ -1387,7 +1387,7 @@ \pnum A type \tcode{I} is \defn{integer-like} -if it models \tcode{Integral} or if it is an integer-class type. +if it models \tcode{integral} or if it is an integer-class type. A type \tcode{I} is \defn{signed-integer-like} if it models \tcode{SignedIntegral} or if it is a signed-integer-class type. A type \tcode{I} is \defn{unsigned-integer-like} diff --git a/source/overloading.tex b/source/overloading.tex index b572b551c5..f8a1c78a31 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1749,7 +1749,7 @@ C(T, U) -> C>; // \#2 template using A = C; -template using B = A; +template using B = A; int i{}; double d{}; @@ -1791,11 +1791,11 @@ template concept deduces_B = requires { sizeof(BB); }; // The guides for \tcode{B} derived from the above \tcode{f1'} and \tcode{f2'} for \tcode{A} are as follows: -template +template requires deduces_A> && deduces_B> auto f1_prime_for_B(W *, W *) -> C; -template +template requires deduces_A>> && deduces_B>> auto f2_prime_for_B(W *, U) -> C>; diff --git a/source/ranges.tex b/source/ranges.tex index 88a2122fe5..88aeb40dc4 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1993,7 +1993,7 @@ \pnum \remarks The expression in the \grammarterm{requires-clause} is equivalent to \begin{codeblock} -(same_as && Advanceable) || (Integral && Integral) || +(same_as && Advanceable) || (integral && integral) || SizedSentinel \end{codeblock} \end{itemdescr} From 7f5f88d1d6b6202ca677608fe7d3bc40fb9e78ff Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:03:09 -0700 Subject: [PATCH 167/312] [everywhere] Rename concept 'SignedIntegral' to 'signed_integral'. --- source/concepts.tex | 10 +++++----- source/iterators.tex | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 90c6877192..1ebe3846af 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -171,7 +171,7 @@ template concept integral = @\seebelow@; template - concept SignedIntegral = @\seebelow@; + concept signed_integral = @\seebelow@; template concept UnsignedIntegral = @\seebelow@; template @@ -469,15 +469,15 @@ \rSec2[concepts.arithmetic]{Arithmetic concepts} \indexlibrary{\idxcode{integral}}% -\indexlibrary{\idxcode{SignedIntegral}}% +\indexlibrary{\idxcode{signed_integral}}% \indexlibrary{\idxcode{UnsignedIntegral}}% \begin{itemdecl} template concept integral = is_integral_v; template - concept SignedIntegral = integral && is_signed_v; + concept signed_integral = integral && is_signed_v; template - concept UnsignedIntegral = integral && !SignedIntegral; + concept UnsignedIntegral = integral && !signed_integral; template concept FloatingPoint = is_floating_point_v; \end{itemdecl} @@ -485,7 +485,7 @@ \begin{itemdescr} \pnum \begin{note} -\libconcept{SignedIntegral} can be modeled even by types that are +\libconcept{signed_integral} can be modeled even by types that are not signed integral types\iref{basic.fundamental}; for example, \tcode{char}. \end{note} diff --git a/source/iterators.tex b/source/iterators.tex index dfeb9225a0..7e1ea2ece7 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -870,7 +870,7 @@ typename readable_traits::value_type&>; typename common_reference_t::value_type&>; - requires SignedIntegral::difference_type>; + requires signed_integral::difference_type>; }; template @@ -1389,7 +1389,7 @@ A type \tcode{I} is \defn{integer-like} if it models \tcode{integral} or if it is an integer-class type. A type \tcode{I} is \defn{signed-integer-like} -if it models \tcode{SignedIntegral} or if it is a signed-integer-class type. +if it models \tcode{signed_integral} or if it is a signed-integer-class type. A type \tcode{I} is \defn{unsigned-integer-like} if it models \tcode{UnsignedIntegral} or if it is an unsigned-integer-class type. From 068f2785ce494a4bffaf661b105e9d4b64f7cdef Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:03:33 -0700 Subject: [PATCH 168/312] [everywhere] Rename concept 'UnsignedIntegral' to 'unsigned_integral'. --- source/concepts.tex | 8 ++++---- source/iterators.tex | 2 +- source/numerics.tex | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 1ebe3846af..b1ffc230f5 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -173,7 +173,7 @@ template concept signed_integral = @\seebelow@; template - concept UnsignedIntegral = @\seebelow@; + concept unsigned_integral = @\seebelow@; template concept FloatingPoint = @\seebelow@; @@ -470,14 +470,14 @@ \indexlibrary{\idxcode{integral}}% \indexlibrary{\idxcode{signed_integral}}% -\indexlibrary{\idxcode{UnsignedIntegral}}% +\indexlibrary{\idxcode{unsigned_integral}}% \begin{itemdecl} template concept integral = is_integral_v; template concept signed_integral = integral && is_signed_v; template - concept UnsignedIntegral = integral && !signed_integral; + concept unsigned_integral = integral && !signed_integral; template concept FloatingPoint = is_floating_point_v; \end{itemdecl} @@ -491,7 +491,7 @@ \pnum \begin{note} -\libconcept{UnsignedIntegral} can be modeled even by types that are +\libconcept{unsigned_integral} can be modeled even by types that are not unsigned integral types\iref{basic.fundamental}; for example, \tcode{bool}. \end{note} \end{itemdescr} diff --git a/source/iterators.tex b/source/iterators.tex index 7e1ea2ece7..68c3596cf4 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1391,7 +1391,7 @@ A type \tcode{I} is \defn{signed-integer-like} if it models \tcode{signed_integral} or if it is a signed-integer-class type. A type \tcode{I} is \defn{unsigned-integer-like} -if it models \tcode{UnsignedIntegral} or +if it models \tcode{unsigned_integral} or if it is an unsigned-integer-class type. \pnum diff --git a/source/numerics.tex b/source/numerics.tex index 629261092d..f53abf9bed 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -2154,7 +2154,7 @@ \begin{codeblock} template concept UniformRandomBitGenerator = - Invocable && UnsignedIntegral> && + Invocable && unsigned_integral> && requires { { G::min() } -> same_as>; { G::max() } -> same_as>; From c7d322819ebbea3a141ef55157599c763b2198bf Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:05:23 -0700 Subject: [PATCH 169/312] [everywhere] Rename concept 'Assignable' to 'assignable_from'. --- source/concepts.tex | 18 +++++++++--------- source/iterators.tex | 18 +++++++++--------- source/ranges.tex | 4 ++-- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index b1ffc230f5..e779e0be2b 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -177,9 +177,9 @@ template concept FloatingPoint = @\seebelow@; - // \ref{concept.assignable}, concept \libconcept{Assignable} + // \ref{concept.assignable}, concept \libconcept{assignable_from} template - concept Assignable = @\seebelow@; + concept assignable_from = @\seebelow@; // \ref{concept.swappable}, concept \libconcept{Swappable} namespace ranges { @@ -496,12 +496,12 @@ \end{note} \end{itemdescr} -\rSec2[concept.assignable]{Concept \libconcept{Assignable}} +\rSec2[concept.assignable]{Concept \libconcept{assignable_from}} -\indexlibrary{\idxcode{Assignable}}% +\indexlibrary{\idxcode{assignable_from}}% \begin{itemdecl} template - concept Assignable = + concept assignable_from = is_lvalue_reference_v && common_reference_with&, const remove_reference_t&> && requires(LHS lhs, RHS&& rhs) { @@ -520,7 +520,7 @@ \item \tcode{rcopy} be a distinct object that is equal to \tcode{rhs}. \end{itemize} \tcode{LHS} and \tcode{RHS} model -\tcode{\libconcept{Assignable}} only if +\tcode{\libconcept{assignable_from}} only if \begin{itemize} \item \tcode{addressof(lhs = rhs) == addressof(lcopy)}. @@ -610,7 +610,7 @@ \item Otherwise, if \tcode{E1} and \tcode{E2} are lvalues of the same type \tcode{T} that models \tcode{\libconcept{MoveConstructible}} and - \tcode{\libconcept{Assignable}}, + \tcode{\libconcept{assignable_from}}, \tcode{S} is an expression that exchanges the denoted values. \tcode{S} is a constant expression if \begin{itemize} @@ -1044,9 +1044,9 @@ \indexlibrary{\idxcode{Regular}}% \begin{itemdecl} template - concept Movable = is_object_v && MoveConstructible && Assignable && Swappable; + concept Movable = is_object_v && MoveConstructible && assignable_from && Swappable; template - concept Copyable = CopyConstructible && Movable && Assignable; + concept Copyable = CopyConstructible && Movable && assignable_from; template concept Semiregular = Copyable && DefaultConstructible; template diff --git a/source/iterators.tex b/source/iterators.tex index 68c3596cf4..d1219de958 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -2455,7 +2455,7 @@ Writable> && Movable> && Constructible, iter_rvalue_reference_t> && - Assignable&, iter_rvalue_reference_t>; + assignable_from&, iter_rvalue_reference_t>; \end{codeblock} \pnum @@ -2500,7 +2500,7 @@ Writable&> && Copyable> && Constructible, iter_reference_t> && - Assignable&, iter_reference_t>; + assignable_from&, iter_reference_t>; \end{codeblock} \pnum @@ -2873,7 +2873,7 @@ \pnum \effects \begin{itemize} -\item If \tcode{I} and \tcode{S} model \tcode{\libconcept{Assignable}}, +\item If \tcode{I} and \tcode{S} model \tcode{\libconcept{assignable_from}}, equivalent to \tcode{i = std::move(bound)}. \item Otherwise, if \tcode{S} and \tcode{I} model \tcode{\libconcept{SizedSentinel}}, equivalent to \tcode{ranges::advance(i, bound - i)}. @@ -4559,7 +4559,7 @@ requires convertible_to constexpr move_sentinel(const move_sentinel& s); template - requires Assignable + requires assignable_from constexpr move_sentinel& operator=(const move_sentinel& s); constexpr S base() const; @@ -4609,7 +4609,7 @@ \indexlibrary{\idxcode{move_sentinel}!\idxcode{operator=}}% \begin{itemdecl} template - requires Assignable + requires assignable_from constexpr move_sentinel& operator=(const move_sentinel& s); \end{itemdecl} @@ -4665,7 +4665,7 @@ template requires convertible_to && convertible_to && - Assignable && Assignable + assignable_from && assignable_from common_iterator& operator=(const common_iterator& x); decltype(auto) operator*(); @@ -4790,7 +4790,7 @@ \begin{itemdecl} template requires convertible_to && convertible_to && - Assignable && Assignable + assignable_from && assignable_from common_iterator& operator=(const common_iterator& x); \end{itemdecl} @@ -5083,7 +5083,7 @@ constexpr counted_iterator(const counted_iterator& x); template - requires Assignable + requires assignable_from constexpr counted_iterator& operator=(const counted_iterator& x); constexpr I base() const & requires CopyConstructible; @@ -5193,7 +5193,7 @@ \indexlibrarymember{operator=}{counted_iterator}% \begin{itemdecl} template - requires Assignable + requires assignable_from constexpr counted_iterator& operator=(const counted_iterator& x); \end{itemdecl} diff --git a/source/ranges.tex b/source/ranges.tex index 88aeb40dc4..f8e16cf6b7 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -2517,7 +2517,7 @@ { } \end{codeblock} -\item If \tcode{\libconcept{Assignable}} is not +\item If \tcode{\libconcept{assignable_from}} is not modeled, the copy assignment operator is equivalent to: \begin{codeblock} @\placeholder{semiregular-box}@& operator=(const @\placeholder{semiregular-box}@& that) @@ -2529,7 +2529,7 @@ } \end{codeblock} -\item If \tcode{\libconcept{Assignable}} is not modeled, +\item If \tcode{\libconcept{assignable_from}} is not modeled, the move assignment operator is equivalent to: \begin{codeblock} @\placeholder{semiregular-box}@& operator=(@\placeholder{semiregular-box}@&& that) From e5c9974546071e55a17d6cbcacbcf39ef5412011 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:08:48 -0700 Subject: [PATCH 170/312] [everywhere] Rename concept 'Swappable' to 'swappable'. --- source/concepts.tex | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index e779e0be2b..0ec02ca1d0 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -181,14 +181,14 @@ template concept assignable_from = @\seebelow@; - // \ref{concept.swappable}, concept \libconcept{Swappable} + // \ref{concept.swappable}, concept \libconcept{swappable} namespace ranges { inline namespace @\unspec@ { inline constexpr @\unspec@ swap = @\unspec@; } } template - concept Swappable = @\seebelow@; + concept swappable = @\seebelow@; template concept SwappableWith = @\seebelow@; @@ -548,7 +548,7 @@ \end{note} \end{itemdescr} -\rSec2[concept.swappable]{Concept \libconcept{Swappable}} +\rSec2[concept.swappable]{Concept \libconcept{swappable}} \pnum Let \tcode{t1} and \tcode{t2} be equality-preserving expressions that denote @@ -643,10 +643,10 @@ \tcode{E1} and \tcode{E2} and has type \tcode{void}. \end{note} -\indexlibrary{\idxcode{Swappable}}% +\indexlibrary{\idxcode{swappable}}% \begin{itemdecl} template - concept Swappable = requires(T& a, T& b) { ranges::swap(a, b); }; + concept swappable = requires(T& a, T& b) { ranges::swap(a, b); }; \end{itemdecl} \indexlibrary{\idxcode{SwappableWith}}% @@ -664,7 +664,7 @@ \pnum \begin{note} -The semantics of the \libconcept{Swappable} and \libconcept{SwappableWith} +The semantics of the \libconcept{swappable} and \libconcept{SwappableWith} concepts are fully defined by the \tcode{ranges::swap} customization point. \end{note} @@ -684,7 +684,7 @@ ranges::swap(std::forward(t), std::forward(u)); } -template +template void lv_swap(T& t1, T& t2) { ranges::swap(t1, t2); } @@ -1044,7 +1044,7 @@ \indexlibrary{\idxcode{Regular}}% \begin{itemdecl} template - concept Movable = is_object_v && MoveConstructible && assignable_from && Swappable; + concept Movable = is_object_v && MoveConstructible && assignable_from && swappable; template concept Copyable = CopyConstructible && Movable && assignable_from; template From 591d12f9129131ff303983b381f2b4fa9b3edd83 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:09:09 -0700 Subject: [PATCH 171/312] [everywhere] Rename concept 'SwappableWith' to 'swappable_with'. --- source/concepts.tex | 10 +++++----- source/iterators.tex | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 0ec02ca1d0..6533ed18dc 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -190,7 +190,7 @@ template concept swappable = @\seebelow@; template - concept SwappableWith = @\seebelow@; + concept swappable_with = @\seebelow@; // \ref{concept.destructible}, concept \libconcept{Destructible} template @@ -649,10 +649,10 @@ concept swappable = requires(T& a, T& b) { ranges::swap(a, b); }; \end{itemdecl} -\indexlibrary{\idxcode{SwappableWith}}% +\indexlibrary{\idxcode{swappable_with}}% \begin{itemdecl} template - concept SwappableWith = + concept swappable_with = common_reference_with&, const remove_reference_t&> && requires(T&& t, U&& u) { ranges::swap(std::forward(t), std::forward(t)); @@ -664,7 +664,7 @@ \pnum \begin{note} -The semantics of the \libconcept{swappable} and \libconcept{SwappableWith} +The semantics of the \libconcept{swappable} and \libconcept{swappable_with} concepts are fully defined by the \tcode{ranges::swap} customization point. \end{note} @@ -679,7 +679,7 @@ namespace ranges = std::ranges; -template U> +template U> void value_swap(T&& t, U&& u) { ranges::swap(std::forward(t), std::forward(u)); } diff --git a/source/iterators.tex b/source/iterators.tex index d1219de958..02f3222598 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1121,7 +1121,7 @@ \item Otherwise, if the types of \tcode{E1} and \tcode{E2} each model \tcode{Readable}, and if the reference types of \tcode{E1} and \tcode{E2} -model \libconcept{SwappableWith}\iref{concept.swappable}, +model \libconcept{swappable_with}\iref{concept.swappable}, then \tcode{ranges::swap(*E1, *E2)}. \item Otherwise, if the types \tcode{T1} and \tcode{T2} of \tcode{E1} and From 638950acff7b751804b36f19ffbdf792c1258d7a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:10:24 -0700 Subject: [PATCH 172/312] [everywhere] Rename concept 'Destructible' to 'destructible'. --- source/concepts.tex | 14 +++++++------- source/lib-intro.tex | 2 +- source/threads.tex | 4 ++-- source/utilities.tex | 16 ++++++++-------- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 6533ed18dc..80b42249d8 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -192,9 +192,9 @@ template concept swappable_with = @\seebelow@; - // \ref{concept.destructible}, concept \libconcept{Destructible} + // \ref{concept.destructible}, concept \libconcept{destructible} template - concept Destructible = @\seebelow@; + concept destructible = @\seebelow@; // \ref{concept.constructible}, concept \libconcept{Constructible} template @@ -712,17 +712,17 @@ \end{codeblock} \end{example} -\rSec2[concept.destructible]{Concept \libconcept{Destructible}} +\rSec2[concept.destructible]{Concept \libconcept{destructible}} \pnum -The \libconcept{Destructible} concept specifies properties of all types, +The \libconcept{destructible} concept specifies properties of all types, instances of which can be destroyed at the end of their lifetime, or reference types. -\indexlibrary{\idxcode{Destructible}}% +\indexlibrary{\idxcode{destructible}}% \begin{itemdecl} template - concept Destructible = is_nothrow_destructible_v; + concept destructible = is_nothrow_destructible_v; \end{itemdecl} \begin{itemdescr} @@ -743,7 +743,7 @@ \indexlibrary{\idxcode{Constructible}}% \begin{itemdecl} template - concept Constructible = Destructible && is_constructible_v; + concept Constructible = destructible && is_constructible_v; \end{itemdecl} \rSec2[concept.defaultconstructible]{Concept \libconcept{DefaultConstructible}} diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 646f410ead..7ce437cb75 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -512,7 +512,7 @@ requirement. Names in \tcode{constant width} type refer to library concepts which are presented as a concept definition\iref{temp}, possibly with additional prose semantic requirements. For example, -\libconcept{Destructible}\iref{concept.destructible} +\libconcept{destructible}\iref{concept.destructible} is such a named requirement. \pnum diff --git a/source/threads.tex b/source/threads.tex index 169e9c7570..9327513fce 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -853,14 +853,14 @@ \tcode{stop_callback} is instantiated with an argument for the template parameter \tcode{Callback} that satisfies both \tcode{Invocable} -and \tcode{Destructible}. +and \tcode{destructible}. \pnum \expects \tcode{stop_callback} is instantiated with an argument for the template parameter \tcode{Callback} that models both \tcode{Invocable} -and \tcode{Destructible}. +and \tcode{destructible}. \rSec3[stopcallback.cons]{Constructors and destructor} diff --git a/source/utilities.tex b/source/utilities.tex index 087c93de15..abdce468cd 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -6632,18 +6632,18 @@ ForwardIterator first, Size n); namespace ranges { - template + template constexpr void destroy_at(T* location) noexcept; template<@\placeholdernc{no-throw-input-iterator}@ I, @\placeholdernc{no-throw-sentinel}@ S> - requires Destructible> + requires destructible> constexpr I destroy(I first, S last) noexcept; template<@\placeholdernc{no-throw-input-range}@ R> - requires Destructible> + requires destructible> constexpr safe_iterator_t destroy(R&& r) noexcept; template<@\placeholdernc{no-throw-input-iterator}@ I> - requires Destructible> + requires destructible> constexpr I destroy_n(I first, iter_difference_t n) noexcept; } @@ -8509,7 +8509,7 @@ template constexpr void destroy_at(T* location); namespace ranges { - template + template constexpr void destroy_at(T* location) noexcept; } \end{itemdecl} @@ -8545,10 +8545,10 @@ \begin{itemdecl} namespace ranges { template<@\placeholdernc{no-throw-input-iterator}@ I, @\placeholdernc{no-throw-sentinel}@ S> - requires Destructible> + requires destructible> constexpr I destroy(I first, S last) noexcept; template<@\placeholdernc{no-throw-input-range}@ R> - requires Destructible> + requires destructible> constexpr safe_iterator_t destroy(R&& r) noexcept; } \end{itemdecl} @@ -8584,7 +8584,7 @@ \begin{itemdecl} namespace ranges { template<@\placeholdernc{no-throw-input-iterator}@ I> - requires Destructible> + requires destructible> constexpr I destroy_n(I first, iter_difference_t n) noexcept; } \end{itemdecl} From 44475851c2e4a75936d058b26f6958216f996ad9 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:14:46 -0700 Subject: [PATCH 173/312] [everywhere] Rename concept 'Constructible' to 'constructible_from'. --- source/concepts.tex | 22 +++++++++++----------- source/iterators.tex | 8 ++++---- source/ranges.tex | 44 ++++++++++++++++++++++---------------------- source/threads.tex | 4 ++-- source/utilities.tex | 36 ++++++++++++++++++------------------ 5 files changed, 57 insertions(+), 57 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 80b42249d8..b781203b69 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -196,9 +196,9 @@ template concept destructible = @\seebelow@; - // \ref{concept.constructible}, concept \libconcept{Constructible} + // \ref{concept.constructible}, concept \libconcept{constructible_from} template - concept Constructible = @\seebelow@; + concept constructible_from = @\seebelow@; // \ref{concept.defaultconstructible}, concept \libconcept{DefaultConstructible} template @@ -734,16 +734,16 @@ \end{note} \end{itemdescr} -\rSec2[concept.constructible]{Concept \libconcept{Constructible}} +\rSec2[concept.constructible]{Concept \libconcept{constructible_from}} \pnum -The \libconcept{Constructible} concept constrains the initialization of a +The \libconcept{constructible_from} concept constrains the initialization of a variable of a given type with a particular set of argument types. -\indexlibrary{\idxcode{Constructible}}% +\indexlibrary{\idxcode{constructible_from}}% \begin{itemdecl} template - concept Constructible = destructible && is_constructible_v; + concept constructible_from = destructible && is_constructible_v; \end{itemdecl} \rSec2[concept.defaultconstructible]{Concept \libconcept{DefaultConstructible}} @@ -751,7 +751,7 @@ \indexlibrary{\idxcode{DefaultConstructible}}% \begin{itemdecl} template - concept DefaultConstructible = Constructible; + concept DefaultConstructible = constructible_from; \end{itemdecl} \rSec2[concept.moveconstructible]{Concept \libconcept{MoveConstructible}} @@ -759,7 +759,7 @@ \indexlibrary{\idxcode{MoveConstructible}}% \begin{itemdecl} template - concept MoveConstructible = Constructible && convertible_to; + concept MoveConstructible = constructible_from && convertible_to; \end{itemdecl} \begin{itemdescr} @@ -785,9 +785,9 @@ template concept CopyConstructible = MoveConstructible && - Constructible && convertible_to && - Constructible && convertible_to && - Constructible && convertible_to; + constructible_from && convertible_to && + constructible_from && convertible_to && + constructible_from && convertible_to; \end{itemdecl} \begin{itemdescr} diff --git a/source/iterators.tex b/source/iterators.tex index 02f3222598..ce5ae7d223 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -875,7 +875,7 @@ template concept @\placeholder{cpp17-forward-iterator}@ = - @\placeholder{cpp17-input-iterator}@ && Constructible && + @\placeholder{cpp17-input-iterator}@ && constructible_from && is_lvalue_reference_v> && same_as>, typename readable_traits::value_type> && requires(I i) { @@ -2454,7 +2454,7 @@ IndirectlyMovable && Writable> && Movable> && - Constructible, iter_rvalue_reference_t> && + constructible_from, iter_rvalue_reference_t> && assignable_from&, iter_rvalue_reference_t>; \end{codeblock} @@ -2499,7 +2499,7 @@ IndirectlyCopyable && Writable&> && Copyable> && - Constructible, iter_reference_t> && + constructible_from, iter_reference_t> && assignable_from&, iter_reference_t>; \end{codeblock} @@ -4843,7 +4843,7 @@ Readable && (requires(const I& i) { i.operator->(); } || is_reference_v> || - Constructible, iter_reference_t>) + constructible_from, iter_reference_t>) \end{codeblock} \pnum diff --git a/source/ranges.tex b/source/ranges.tex index f8e16cf6b7..376e74e823 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1229,7 +1229,7 @@ template concept @\placeholdernc{pair-like-convertible-from}@ = // \expos - !Range && @\placeholdernc{pair-like}@ && Constructible; + !Range && @\placeholdernc{pair-like}@ && constructible_from; template concept @\placeholdernc{iterator-sentinel-pair}@ = // \expos @@ -1650,7 +1650,7 @@ constexpr explicit single_view(const T& t); constexpr explicit single_view(T&& t); template - requires Constructible + requires constructible_from constexpr single_view(in_place_t, Args&&... args); constexpr T* begin() noexcept; @@ -2671,7 +2671,7 @@ filter_view() = default; constexpr filter_view(V base, Pred pred); template - requires ViewableRange && Constructible> + requires ViewableRange && constructible_from> constexpr filter_view(R&& r, Pred pred); constexpr V base() const; @@ -2704,7 +2704,7 @@ \indexlibrary{\idxcode{filter_view}!\idxcode{filter_view}}% \begin{itemdecl} template - requires ViewableRange && Constructible> + requires ViewableRange && constructible_from> constexpr filter_view(R&& r, Pred pred); \end{itemdecl} @@ -3066,7 +3066,7 @@ transform_view() = default; constexpr transform_view(V base, F fun); template - requires ViewableRange && Constructible> + requires ViewableRange && constructible_from> constexpr transform_view(R&& r, F fun); constexpr V base() const; @@ -3109,7 +3109,7 @@ \indexlibrary{\idxcode{transform_view}!\idxcode{transform_view}}% \begin{itemdecl} template - requires ViewableRange && Constructible> + requires ViewableRange && constructible_from> constexpr transform_view(R&& r, F fun); \end{itemdecl} @@ -3710,7 +3710,7 @@ take_view() = default; constexpr take_view(V base, range_difference_t count); template - requires Constructible> + requires constructible_from> constexpr take_view(R&& r, range_difference_t count); constexpr V base() const; @@ -3786,7 +3786,7 @@ \indexlibrary{\idxcode{take_view}!\idxcode{take_view}}% \begin{itemdecl} template - requires Constructible> + requires constructible_from> constexpr take_view(R&& r, range_difference_t count); \end{itemdecl} @@ -4336,7 +4336,7 @@ constexpr explicit join_view(V base); template - requires ViewableRange && Constructible> + requires ViewableRange && constructible_from> constexpr explicit join_view(R&& r); constexpr auto begin() { @@ -4390,7 +4390,7 @@ \indexlibrary{\idxcode{join_view}!\idxcode{join_view}}% \begin{itemdecl} template - requires ViewableRange && Constructible> + requires ViewableRange && constructible_from> constexpr explicit join_view(R&& r); \end{itemdecl} @@ -4809,13 +4809,13 @@ constexpr split_view(V base, Pattern pattern); template - requires Constructible> && - Constructible> + requires constructible_from> && + constructible_from> constexpr split_view(R&& r, P&& p); template - requires Constructible> && - Constructible>> + requires constructible_from> && + constructible_from>> constexpr split_view(R&& r, range_value_t e); constexpr auto begin() { @@ -4866,8 +4866,8 @@ \indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% \begin{itemdecl} template - requires Constructible> && - Constructible> + requires constructible_from> && + constructible_from> constexpr split_view(R&& r, P&& p); \end{itemdecl} @@ -4881,8 +4881,8 @@ \indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% \begin{itemdecl} template - requires Constructible> && - Constructible>> + requires constructible_from> && + constructible_from>> constexpr split_view(R&& r, range_value_t e); \end{itemdecl} @@ -5313,7 +5313,7 @@ constexpr explicit common_view(V r); template - requires (!CommonRange && Constructible>) + requires (!CommonRange && constructible_from>) constexpr explicit common_view(R&& r); constexpr V base() const; @@ -5372,7 +5372,7 @@ \indexlibrary{\idxcode{common_view}!\idxcode{common_view}}% \begin{itemdecl} template - requires (!CommonRange && Constructible>) + requires (!CommonRange && constructible_from>) constexpr explicit common_view(R&& r); \end{itemdecl} @@ -5441,7 +5441,7 @@ constexpr explicit reverse_view(V r); template - requires BidirectionalRange && Constructible> + requires BidirectionalRange && constructible_from> constexpr explicit reverse_view(R&& r); constexpr V base() const; @@ -5481,7 +5481,7 @@ \indexlibrary{\idxcode{reverse_view}!\idxcode{reverse_view}}% \begin{itemdecl} template - requires BidirectionalRange && Constructible> + requires BidirectionalRange && constructible_from> constexpr explicit reverse_view(R&& r); \end{itemdecl} diff --git a/source/threads.tex b/source/threads.tex index 9327513fce..4418343834 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -877,11 +877,11 @@ \begin{itemdescr} \pnum \constraints -\tcode{Callback} and \tcode{C} satisfy \libconcept{Constructible}. +\tcode{Callback} and \tcode{C} satisfy \libconcept{constructible_from}. \pnum \expects -\tcode{Callback} and \tcode{C} model \libconcept{Constructible}. +\tcode{Callback} and \tcode{C} model \libconcept{constructible_from}. \pnum \effects diff --git a/source/utilities.tex b/source/utilities.tex index abdce468cd..252ee8ee1e 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -6531,18 +6531,18 @@ using uninitialized_copy_result = copy_result; template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> - requires Constructible, iter_reference_t> + requires constructible_from, iter_reference_t> uninitialized_copy_result uninitialized_copy(I ifirst, S1 ilast, O ofirst, S2 olast); template - requires Constructible, range_reference_t> + requires constructible_from, range_reference_t> uninitialized_copy_result, safe_iterator_t> uninitialized_copy(IR&& input_range, OR&& output_range); template using uninitialized_copy_n_result = uninitialized_copy_result; template S> - requires Constructible, iter_reference_t> + requires constructible_from, iter_reference_t> uninitialized_copy_n_result uninitialized_copy_n(I ifirst, iter_difference_t n, O ofirst, S olast); } @@ -6567,11 +6567,11 @@ using uninitialized_move_result = uninitialized_copy_result; template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> - requires Constructible, iter_rvalue_reference_t> + requires constructible_from, iter_rvalue_reference_t> uninitialized_move_result uninitialized_move(I ifirst, S1 ilast, O ofirst, S2 olast); template - requires Constructible, range_rvalue_reference_t> + requires constructible_from, range_rvalue_reference_t> uninitialized_move_result, safe_iterator_t> uninitialized_move(IR&& input_range, OR&& output_range); @@ -6579,7 +6579,7 @@ using uninitialized_move_n_result = uninitialized_copy_result; template S> - requires Constructible, iter_rvalue_reference_t> + requires constructible_from, iter_rvalue_reference_t> uninitialized_move_n_result uninitialized_move_n(I ifirst, iter_difference_t n, O ofirst, S olast); } @@ -6597,14 +6597,14 @@ namespace ranges { template<@\placeholdernc{no-throw-forward-iterator}@ I, @\placeholdernc{no-throw-sentinel}@ S, class T> - requires Constructible, const T&> + requires constructible_from, const T&> I uninitialized_fill(I first, S last, const T& x); template<@\placeholdernc{no-throw-forward-range}@ R, class T> - requires Constructible, const T&> + requires constructible_from, const T&> safe_iterator_t uninitialized_fill(R&& r, const T& x); template<@\placeholdernc{no-throw-forward-iterator}@ I, class T> - requires Constructible, const T&> + requires constructible_from, const T&> I uninitialized_fill_n(I first, iter_difference_t n, const T& x); } @@ -8207,11 +8207,11 @@ namespace ranges { template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> - requires Constructible, iter_reference_t> + requires constructible_from, iter_reference_t> uninitialized_copy_result uninitialized_copy(I ifirst, S1 ilast, O ofirst, S2 olast); template - requires Constructible, range_reference_t> + requires constructible_from, range_reference_t> uninitialized_copy_result, safe_iterator_t> uninitialized_copy(IR&& input_range, OR&& output_range); } @@ -8261,7 +8261,7 @@ \begin{itemdecl} namespace ranges { template S> - requires Constructible, iter_reference_t> + requires constructible_from, iter_reference_t> uninitialized_copy_n_result uninitialized_copy_n(I ifirst, iter_difference_t n, O ofirst, S olast); } @@ -8312,11 +8312,11 @@ namespace ranges { template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> - requires Constructible, iter_rvalue_reference_t> + requires constructible_from, iter_rvalue_reference_t> uninitialized_move_result uninitialized_move(I ifirst, S1 ilast, O ofirst, S2 olast); template - requires Constructible, range_rvalue_reference_t> + requires constructible_from, range_rvalue_reference_t> uninitialized_move_result, safe_iterator_t> uninitialized_move(IR&& input_range, OR&& output_range); } @@ -8371,7 +8371,7 @@ \begin{itemdecl} namespace ranges { template S> - requires Constructible, iter_rvalue_reference_t> + requires constructible_from, iter_rvalue_reference_t> uninitialized_move_n_result uninitialized_move_n(I ifirst, iter_difference_t n, O ofirst, S olast); } @@ -8422,10 +8422,10 @@ \begin{itemdecl} namespace ranges { template<@\placeholdernc{no-throw-forward-iterator}@ I, @\placeholdernc{no-throw-sentinel}@ S, class T> - requires Constructible, const T&> + requires constructible_from, const T&> I uninitialized_fill(I first, S last, const T& x); template<@\placeholdernc{no-throw-forward-range}@ R, class T> - requires Constructible, const T&> + requires constructible_from, const T&> safe_iterator_t uninitialized_fill(R&& r, const T& x); } \end{itemdecl} @@ -8462,7 +8462,7 @@ \begin{itemdecl} namespace ranges { template<@\placeholdernc{no-throw-forward-iterator}@ I, class T> - requires Constructible, const T&> + requires constructible_from, const T&> I uninitialized_fill_n(I first, iter_difference_t n, const T& x); } \end{itemdecl} From 02c8088f8f11ff2faa71fadaecafbbbc5ad1a04e Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:19:15 -0700 Subject: [PATCH 174/312] [everywhere] Rename concept 'DefaultConstructible' to 'default_constructible'. --- source/concepts.tex | 12 ++++++------ source/iterators.tex | 2 +- source/ranges.tex | 4 ++-- source/utilities.tex | 24 ++++++++++++------------ 4 files changed, 21 insertions(+), 21 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index b781203b69..a8b1b604b8 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -200,9 +200,9 @@ template concept constructible_from = @\seebelow@; - // \ref{concept.defaultconstructible}, concept \libconcept{DefaultConstructible} + // \ref{concept.defaultconstructible}, concept \libconcept{default_constructible} template - concept DefaultConstructible = @\seebelow@; + concept default_constructible = @\seebelow@; // \ref{concept.moveconstructible}, concept \libconcept{MoveConstructible} template @@ -746,12 +746,12 @@ concept constructible_from = destructible && is_constructible_v; \end{itemdecl} -\rSec2[concept.defaultconstructible]{Concept \libconcept{DefaultConstructible}} +\rSec2[concept.defaultconstructible]{Concept \libconcept{default_constructible}} -\indexlibrary{\idxcode{DefaultConstructible}}% +\indexlibrary{\idxcode{default_constructible}}% \begin{itemdecl} template - concept DefaultConstructible = constructible_from; + concept default_constructible = constructible_from; \end{itemdecl} \rSec2[concept.moveconstructible]{Concept \libconcept{MoveConstructible}} @@ -1048,7 +1048,7 @@ template concept Copyable = CopyConstructible && Movable && assignable_from; template - concept Semiregular = Copyable && DefaultConstructible; + concept Semiregular = Copyable && default_constructible; template concept Regular = Semiregular && EqualityComparable; \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index ce5ae7d223..3602e21ef8 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1288,7 +1288,7 @@ template concept WeaklyIncrementable = - DefaultConstructible && Movable && + default_constructible && Movable && requires(I i) { typename iter_difference_t; requires @\placeholdernc{is-signed-integer-like}@>; diff --git a/source/ranges.tex b/source/ranges.tex index 376e74e823..294e576263 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -2509,7 +2509,7 @@ its type parameter \tcode{T} with \tcode{\libconcept{CopyConstructible} \&\& is_object_v}. -\item If \tcode{T} models \libconcept{DefaultConstructible}, the default +\item If \tcode{T} models \libconcept{default_constructible}, the default constructor of \tcode{\placeholder{semiregular-box}} is equivalent to: \begin{codeblock} constexpr @\placeholder{semiregular-box}@() noexcept(is_nothrow_default_constructible_v) @@ -5608,7 +5608,7 @@ }; template - requires DefaultConstructible && + requires default_constructible && @\placeholder{stream-extractable}@ class basic_istream_view : public view_interface> { public: diff --git a/source/utilities.tex b/source/utilities.tex index 252ee8ee1e..6489e1c31f 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -6476,14 +6476,14 @@ namespace ranges { template<@\placeholdernc{no-throw-forward-iterator}@ I, @\placeholdernc{no-throw-sentinel}@ S> - requires DefaultConstructible> + requires default_constructible> I uninitialized_default_construct(I first, S last); template<@\placeholdernc{no-throw-forward-range}@ R> - requires DefaultConstructible> + requires default_constructible> safe_iterator_t uninitialized_default_construct(R&& r); template<@\placeholdernc{no-throw-forward-iterator}@ I> - requires DefaultConstructible> + requires default_constructible> I uninitialized_default_construct_n(I first, iter_difference_t n); } @@ -6500,14 +6500,14 @@ namespace ranges { template<@\placeholdernc{no-throw-forward-iterator}@ I, @\placeholdernc{no-throw-sentinel}@ S> - requires DefaultConstructible> + requires default_constructible> I uninitialized_value_construct(I first, S last); template<@\placeholdernc{no-throw-forward-range}@ R> - requires DefaultConstructible> + requires default_constructible> safe_iterator_t uninitialized_value_construct(R&& r); template<@\placeholdernc{no-throw-forward-iterator}@ I> - requires DefaultConstructible> + requires default_constructible> I uninitialized_value_construct_n(I first, iter_difference_t n); } @@ -8043,10 +8043,10 @@ \begin{itemdecl} namespace ranges { template<@\placeholdernc{no-throw-forward-iterator}@ I, @\placeholdernc{no-throw-sentinel}@ S> - requires DefaultConstructible> + requires default_constructible> I uninitialized_default_construct(I first, S last); template<@\placeholdernc{no-throw-forward-range}@ R> - requires DefaultConstructible> + requires default_constructible> safe_iterator_t uninitialized_default_construct(R&& r); } \end{itemdecl} @@ -8083,7 +8083,7 @@ \begin{itemdecl} namespace ranges { template<@\placeholdernc{no-throw-forward-iterator}@ I> - requires DefaultConstructible> + requires default_constructible> I uninitialized_default_construct_n(I first, iter_difference_t n); } \end{itemdecl} @@ -8120,10 +8120,10 @@ \begin{itemdecl} namespace ranges { template<@\placeholdernc{no-throw-forward-iterator}@ I, @\placeholdernc{no-throw-sentinel}@ S> - requires DefaultConstructible> + requires default_constructible> I uninitialized_value_construct(I first, S last); template<@\placeholdernc{no-throw-forward-range}@ R> - requires DefaultConstructible> + requires default_constructible> safe_iterator_t uninitialized_value_construct(R&& r); } \end{itemdecl} @@ -8160,7 +8160,7 @@ \begin{itemdecl} namespace ranges { template<@\placeholdernc{no-throw-forward-iterator}@ I> - requires DefaultConstructible> + requires default_constructible> I uninitialized_value_construct_n(I first, iter_difference_t n); } \end{itemdecl} From aac943b32d1d1debdec4b786086d82d686a7b544 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:20:45 -0700 Subject: [PATCH 175/312] [everywhere] Rename concept 'MoveConstructible' to 'move_constructible'. --- source/concepts.tex | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index a8b1b604b8..077b6a41ad 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -204,9 +204,9 @@ template concept default_constructible = @\seebelow@; - // \ref{concept.moveconstructible}, concept \libconcept{MoveConstructible} + // \ref{concept.moveconstructible}, concept \libconcept{move_constructible} template - concept MoveConstructible = @\seebelow@; + concept move_constructible = @\seebelow@; // \ref{concept.copyconstructible}, concept \libconcept{CopyConstructible} template @@ -609,7 +609,7 @@ \item Otherwise, if \tcode{E1} and \tcode{E2} are lvalues of the - same type \tcode{T} that models \tcode{\libconcept{MoveConstructible}} and + same type \tcode{T} that models \tcode{\libconcept{move_constructible}} and \tcode{\libconcept{assignable_from}}, \tcode{S} is an expression that exchanges the denoted values. \tcode{S} is a constant expression if @@ -754,19 +754,19 @@ concept default_constructible = constructible_from; \end{itemdecl} -\rSec2[concept.moveconstructible]{Concept \libconcept{MoveConstructible}} +\rSec2[concept.moveconstructible]{Concept \libconcept{move_constructible}} -\indexlibrary{\idxcode{MoveConstructible}}% +\indexlibrary{\idxcode{move_constructible}}% \begin{itemdecl} template - concept MoveConstructible = constructible_from && convertible_to; + concept move_constructible = constructible_from && convertible_to; \end{itemdecl} \begin{itemdescr} \pnum If \tcode{T} is an object type, then let \tcode{rv} be an rvalue of type \tcode{T} and \tcode{u2} a distinct object of type \tcode{T} equal to -\tcode{rv}. \tcode{T} models \libconcept{MoveConstructible} only if +\tcode{rv}. \tcode{T} models \libconcept{move_constructible} only if \begin{itemize} \item After the definition \tcode{T u = rv;}, \tcode{u} is equal to \tcode{u2}. @@ -784,7 +784,7 @@ \begin{itemdecl} template concept CopyConstructible = - MoveConstructible && + move_constructible && constructible_from && convertible_to && constructible_from && convertible_to && constructible_from && convertible_to; @@ -1044,7 +1044,7 @@ \indexlibrary{\idxcode{Regular}}% \begin{itemdecl} template - concept Movable = is_object_v && MoveConstructible && assignable_from && swappable; + concept Movable = is_object_v && move_constructible && assignable_from && swappable; template concept Copyable = CopyConstructible && Movable && assignable_from; template From eb9fafe3d2facb662fa76e693b63a8dda6aeaf6a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:22:26 -0700 Subject: [PATCH 176/312] [everywhere] Rename concept 'CopyConstructible' to 'copy_constructible'. --- source/algorithms.tex | 30 +++++++++++++++--------------- source/concepts.tex | 14 +++++++------- source/iterators.tex | 18 +++++++++--------- source/ranges.tex | 10 +++++----- 4 files changed, 36 insertions(+), 36 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 90c8566387..15782e39a0 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1326,11 +1326,11 @@ using unary_transform_result = copy_result; template S, WeaklyIncrementable O, - CopyConstructible F, class Proj = identity> + copy_constructible F, class Proj = identity> requires Writable>> constexpr unary_transform_result transform(I first1, S last1, O result, F op, Proj proj = {}); - template requires Writable, Proj>>> constexpr unary_transform_result, O> @@ -1358,7 +1358,7 @@ }; template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, CopyConstructible F, class Proj1 = identity, + WeaklyIncrementable O, copy_constructible F, class Proj1 = identity, class Proj2 = identity> requires Writable, projected>> @@ -1366,7 +1366,7 @@ transform(I1 first1, S1 last1, I2 first2, S2 last2, O result, F binary_op, Proj1 proj1 = {}, Proj2 proj2 = {}); template + copy_constructible F, class Proj1 = identity, class Proj2 = identity> requires Writable, Proj1>, projected, Proj2>>> constexpr binary_transform_result, safe_iterator_t, O> @@ -1505,13 +1505,13 @@ ForwardIterator first, Size n, Generator gen); namespace ranges { - template S, CopyConstructible F> + template S, copy_constructible F> requires Invocable && Writable> constexpr O generate(O first, S last, F gen); - template + template requires Invocable && OutputRange> constexpr safe_iterator_t generate(R&& r, F gen); - template + template requires Invocable && Writable> constexpr O generate_n(O first, iter_difference_t n, F gen); } @@ -3117,7 +3117,7 @@ \pnum \begin{note} The overloads in namespace \tcode{ranges} require -\tcode{Fun} to model \libconcept{CopyConstructible}. +\tcode{Fun} to model \libconcept{copy_constructible}. \end{note} \end{itemdescr} @@ -4566,17 +4566,17 @@ BinaryOperation binary_op); template S, WeaklyIncrementable O, - CopyConstructible F, class Proj = identity> + copy_constructible F, class Proj = identity> requires Writable>> constexpr ranges::unary_transform_result ranges::transform(I first1, S last1, O result, F op, Proj proj = {}); -template requires Writable, Proj>>> constexpr ranges::unary_transform_result, O> ranges::transform(R&& r, O result, F op, Proj proj = {}); template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, CopyConstructible F, class Proj1 = identity, + WeaklyIncrementable O, copy_constructible F, class Proj1 = identity, class Proj2 = identity> requires Writable, projected>> @@ -4584,7 +4584,7 @@ ranges::transform(I1 first1, S1 last1, I2 first2, S2 last2, O result, F binary_op, Proj1 proj1 = {}, Proj2 proj2 = {}); template + copy_constructible F, class Proj1 = identity, class Proj2 = identity> requires Writable, Proj1>, projected, Proj2>>> constexpr ranges::binary_transform_result, safe_iterator_t, O> @@ -4910,13 +4910,13 @@ ForwardIterator generate_n(ExecutionPolicy&& exec, ForwardIterator first, Size n, Generator gen); -template S, CopyConstructible F> +template S, copy_constructible F> requires Invocable && Writable> constexpr O ranges::generate(O first, S last, F gen); -template +template requires Invocable && OutputRange> constexpr safe_iterator_t ranges::generate(R&& r, F gen); -template +template requires Invocable && Writable> constexpr O ranges::generate_n(O first, iter_difference_t n, F gen); \end{itemdecl} diff --git a/source/concepts.tex b/source/concepts.tex index 077b6a41ad..a6c58214ae 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -208,9 +208,9 @@ template concept move_constructible = @\seebelow@; - // \ref{concept.copyconstructible}, concept \libconcept{CopyConstructible} + // \ref{concept.copyconstructible}, concept \libconcept{copy_constructible} template - concept CopyConstructible = @\seebelow@; + concept copy_constructible = @\seebelow@; // \ref{concepts.compare}, comparison concepts // \ref{concept.boolean}, concept \libconcept{Boolean} @@ -778,12 +778,12 @@ \end{itemize} \end{itemdescr} -\rSec2[concept.copyconstructible]{Concept \libconcept{CopyConstructible}} +\rSec2[concept.copyconstructible]{Concept \libconcept{copy_constructible}} -\indexlibrary{\idxcode{CopyConstructible}}% +\indexlibrary{\idxcode{copy_constructible}}% \begin{itemdecl} template - concept CopyConstructible = + concept copy_constructible = move_constructible && constructible_from && convertible_to && constructible_from && convertible_to && @@ -794,7 +794,7 @@ \pnum If \tcode{T} is an object type, then let \tcode{v} be an lvalue of type (possibly \tcode{const}) \tcode{T} or an rvalue of type \tcode{const T}. -\tcode{T} models \libconcept{CopyConstructible} only if +\tcode{T} models \libconcept{copy_constructible} only if \begin{itemize} \item After the definition \tcode{T u = v;}, \tcode{u} is equal to \tcode{v}. @@ -1046,7 +1046,7 @@ template concept Movable = is_object_v && move_constructible && assignable_from && swappable; template - concept Copyable = CopyConstructible && Movable && assignable_from; + concept Copyable = copy_constructible && Movable && assignable_from; template concept Semiregular = Copyable && default_constructible; template diff --git a/source/iterators.tex b/source/iterators.tex index 3602e21ef8..df8fc9f08b 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -2323,7 +2323,7 @@ template concept IndirectUnaryInvocable = Readable && - CopyConstructible && + copy_constructible && Invocable&> && Invocable> && Invocable> && @@ -2334,7 +2334,7 @@ template concept IndirectRegularUnaryInvocable = Readable && - CopyConstructible && + copy_constructible && RegularInvocable&> && RegularInvocable> && RegularInvocable> && @@ -2345,7 +2345,7 @@ template concept IndirectUnaryPredicate = Readable && - CopyConstructible && + copy_constructible && Predicate&> && Predicate> && Predicate>; @@ -2353,7 +2353,7 @@ template concept IndirectRelation = Readable && Readable && - CopyConstructible && + copy_constructible && Relation&, iter_value_t&> && Relation&, iter_reference_t> && Relation, iter_value_t&> && @@ -2363,7 +2363,7 @@ template concept IndirectStrictWeakOrder = Readable && Readable && - CopyConstructible && + copy_constructible && StrictWeakOrder&, iter_value_t&> && StrictWeakOrder&, iter_reference_t> && StrictWeakOrder, iter_value_t&> && @@ -4202,10 +4202,10 @@ \begin{itemdescr} \pnum -\constraints \tcode{Iterator} satisfies \libconcept{CopyConstructible}. +\constraints \tcode{Iterator} satisfies \libconcept{copy_constructible}. \pnum -\expects \tcode{Iterator} models \libconcept{CopyConstructible}. +\expects \tcode{Iterator} models \libconcept{copy_constructible}. \pnum \returns \tcode{current}. @@ -5086,7 +5086,7 @@ requires assignable_from constexpr counted_iterator& operator=(const counted_iterator& x); - constexpr I base() const & requires CopyConstructible; + constexpr I base() const & requires copy_constructible; constexpr I base() &&; constexpr iter_difference_t count() const noexcept; constexpr decltype(auto) operator*(); @@ -5211,7 +5211,7 @@ \indexlibrarymember{base}{counted_iterator}% \begin{itemdecl} -constexpr I base() const & requires CopyConstructible; +constexpr I base() const & requires copy_constructible; \end{itemdecl} \begin{itemdescr} diff --git a/source/ranges.tex b/source/ranges.tex index 294e576263..2bed78f1b7 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -137,7 +137,7 @@ } // \ref{range.single}, single view - template + template requires is_object_v class single_view; @@ -168,7 +168,7 @@ namespace views { inline constexpr @\unspec@ filter = @\unspec@; } // \ref{range.transform}, transform view - template + template requires View && is_object_v && RegularInvocable> class transform_view; @@ -1640,7 +1640,7 @@ \begin{codeblock} namespace std::ranges { - template + template requires is_object_v class single_view : public view_interface> { private: @@ -2507,7 +2507,7 @@ \begin{itemize} \item \tcode{\placeholder{semiregular-box}} constrains its type parameter \tcode{T} with -\tcode{\libconcept{CopyConstructible} \&\& is_object_v}. +\tcode{\libconcept{copy_constructible} \&\& is_object_v}. \item If \tcode{T} models \libconcept{default_constructible}, the default constructor of \tcode{\placeholder{semiregular-box}} is equivalent to: @@ -3049,7 +3049,7 @@ \begin{codeblock} namespace std::ranges { - template + template requires View && is_object_v && RegularInvocable> class transform_view : public view_interface> { From 7089e3c3bf7fa831229ae1f365f032bc8d66e702 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:23:20 -0700 Subject: [PATCH 177/312] [everywhere] Rename concept 'Boolean' to 'boolean'. --- source/concepts.tex | 52 ++++++++++++++++++++++----------------------- source/support.tex | 16 +++++++------- 2 files changed, 34 insertions(+), 34 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index a6c58214ae..92c5d8d890 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -213,9 +213,9 @@ concept copy_constructible = @\seebelow@; // \ref{concepts.compare}, comparison concepts - // \ref{concept.boolean}, concept \libconcept{Boolean} + // \ref{concept.boolean}, concept \libconcept{boolean} template - concept Boolean = @\seebelow@; + concept boolean = @\seebelow@; // \ref{concept.equalitycomparable}, concept \libconcept{EqualityComparable} template @@ -812,16 +812,16 @@ This subclause describes concepts that establish relationships and orderings on values of possibly differing object types. -\rSec2[concept.boolean]{Concept \libconcept{Boolean}} +\rSec2[concept.boolean]{Concept \libconcept{boolean}} \pnum -The \libconcept{Boolean} concept specifies the requirements on a type that is +The \libconcept{boolean} concept specifies the requirements on a type that is usable in Boolean contexts. -\indexlibrary{\idxcode{Boolean}}% +\indexlibrary{\idxcode{boolean}}% \begin{itemdecl} template - concept Boolean = + concept boolean = Movable> && // (see \ref{concepts.object}) requires(const remove_reference_t& b1, const remove_reference_t& b2, const bool a) { @@ -845,7 +845,7 @@ \pnum For some type \tcode{B}, let \tcode{b1} and \tcode{b2} be lvalues of type \tcode{const remove_reference_t}. -\tcode{B} models \libconcept{Boolean} only if +\tcode{B} models \libconcept{boolean} only if \begin{itemize} \item \tcode{bool(b1) == !bool(!b1)}. @@ -868,9 +868,9 @@ \pnum \begin{example} The types \tcode{bool}, \tcode{true_type}\iref{meta.type.synop}, and -\tcode{bitset<$N$>::reference}\iref{template.bitset} are \libconcept{Boolean} +\tcode{bitset<$N$>::reference}\iref{template.bitset} are \libconcept{boolean} types. Pointers, smart pointers, and types with only explicit conversions to -\tcode{bool} are not \libconcept{Boolean} types. +\tcode{bool} are not \libconcept{boolean} types. \end{example} \rSec2[concept.equalitycomparable]{Concept \libconcept{EqualityComparable}} @@ -880,10 +880,10 @@ concept @\placeholder{weakly-equality-comparable-with}@ = // \expos requires(const remove_reference_t& t, const remove_reference_t& u) { - { t == u } -> Boolean; - { t != u } -> Boolean; - { u == t } -> Boolean; - { u != t } -> Boolean; + { t == u } -> boolean; + { t != u } -> boolean; + { u == t } -> boolean; + { u != t } -> boolean; }; \end{itemdecl} @@ -960,10 +960,10 @@ EqualityComparable && requires(const remove_reference_t& a, const remove_reference_t& b) { - { a < b } -> Boolean; - { a > b } -> Boolean; - { a <= b } -> Boolean; - { a >= b } -> Boolean; + { a < b } -> boolean; + { a > b } -> boolean; + { a <= b } -> boolean; + { a >= b } -> boolean; }; \end{itemdecl} @@ -997,14 +997,14 @@ EqualityComparableWith && requires(const remove_reference_t& t, const remove_reference_t& u) { - { t < u } -> Boolean; - { t > u } -> Boolean; - { t <= u } -> Boolean; - { t >= u } -> Boolean; - { u < t } -> Boolean; - { u > t } -> Boolean; - { u <= t } -> Boolean; - { u >= t } -> Boolean; + { t < u } -> boolean; + { t > u } -> boolean; + { t <= u } -> boolean; + { t >= u } -> boolean; + { u < t } -> boolean; + { u > t } -> boolean; + { u <= t } -> boolean; + { u >= t } -> boolean; }; \end{itemdecl} @@ -1136,7 +1136,7 @@ \indexlibrary{\idxcode{Predicate}}% \begin{itemdecl} template - concept Predicate = RegularInvocable && Boolean>; + concept Predicate = RegularInvocable && boolean>; \end{itemdecl} \rSec2[concept.relation]{Concept \libconcept{Relation}} diff --git a/source/support.tex b/source/support.tex index f5502d67cb..26710540ec 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4719,14 +4719,14 @@ template concept @\placeholder{partially-ordered-with}@ = // \expos requires(const remove_reference_t& t, const remove_reference_t& u) { - { t < u } -> Boolean; - { t > u } -> Boolean; - { t <= u } -> Boolean; - { t >= u } -> Boolean; - { u < t } -> Boolean; - { u > t } -> Boolean; - { u <= t } -> Boolean; - { u >= t } -> Boolean; + { t < u } -> boolean; + { t > u } -> boolean; + { t <= u } -> boolean; + { t >= u } -> boolean; + { u < t } -> boolean; + { u > t } -> boolean; + { u <= t } -> boolean; + { u >= t } -> boolean; }; \end{codeblock} From 520bbc9a9451838f790ff7842484e4342a904e7c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:24:30 -0700 Subject: [PATCH 178/312] [everywhere] Rename concept 'EqualityComparable' to 'equality_comparable'. --- source/concepts.tex | 20 ++++++++++---------- source/iterators.tex | 8 ++++---- source/ranges.tex | 24 ++++++++++++------------ source/support.tex | 2 +- 4 files changed, 27 insertions(+), 27 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 92c5d8d890..3b1fe5bdd9 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -217,9 +217,9 @@ template concept boolean = @\seebelow@; - // \ref{concept.equalitycomparable}, concept \libconcept{EqualityComparable} + // \ref{concept.equalitycomparable}, concept \libconcept{equality_comparable} template - concept EqualityComparable = @\seebelow@; + concept equality_comparable = @\seebelow@; template concept EqualityComparableWith = @\seebelow@; @@ -873,7 +873,7 @@ \tcode{bool} are not \libconcept{boolean} types. \end{example} -\rSec2[concept.equalitycomparable]{Concept \libconcept{EqualityComparable}} +\rSec2[concept.equalitycomparable]{Concept \libconcept{equality_comparable}} \begin{itemdecl} template @@ -904,16 +904,16 @@ \end{itemize} \end{itemdescr} -\indexlibrary{\idxcode{EqualityComparable}}% +\indexlibrary{\idxcode{equality_comparable}}% \begin{itemdecl} template - concept EqualityComparable = @\placeholder{weakly-equality-comparable-with}@; + concept equality_comparable = @\placeholder{weakly-equality-comparable-with}@; \end{itemdecl} \begin{itemdescr} \pnum Let \tcode{a} and \tcode{b} be objects of type \tcode{T}. -\tcode{T} models \libconcept{EqualityComparable} only if +\tcode{T} models \libconcept{equality_comparable} only if \tcode{bool(a == b)} is \tcode{true} when \tcode{a} is equal to \tcode{b}\iref{concepts.equality}, and \tcode{false} otherwise. @@ -928,9 +928,9 @@ \begin{itemdecl} template concept EqualityComparableWith = - EqualityComparable && EqualityComparable && + equality_comparable && equality_comparable && common_reference_with&, const remove_reference_t&> && - EqualityComparable< + equality_comparable< common_reference_t< const remove_reference_t&, const remove_reference_t&>> && @@ -957,7 +957,7 @@ \begin{itemdecl} template concept StrictTotallyOrdered = - EqualityComparable && + equality_comparable && requires(const remove_reference_t& a, const remove_reference_t& b) { { a < b } -> boolean; @@ -1050,7 +1050,7 @@ template concept Semiregular = Copyable && default_constructible; template - concept Regular = Semiregular && EqualityComparable; + concept Regular = Semiregular && equality_comparable; \end{itemdecl} \begin{itemdescr} diff --git a/source/iterators.tex b/source/iterators.tex index df8fc9f08b..5b560393af 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -863,7 +863,7 @@ template concept @\placeholder{cpp17-input-iterator}@ = - @\placeholder{cpp17-iterator}@ && EqualityComparable && requires(I i) { + @\placeholder{cpp17-iterator}@ && equality_comparable && requires(I i) { typename incrementable_traits::difference_type; typename readable_traits::value_type; typename common_reference_t&&, @@ -1276,7 +1276,7 @@ The \libconcept{WeaklyIncrementable} concept specifies the requirements on types that can be incremented with the pre- and post-increment operators. The increment operations are not required to be equality-preserving, -nor is the type required to be \libconcept{EqualityComparable}. +nor is the type required to be \libconcept{equality_comparable}. \indexlibrary{\idxcode{WeaklyIncrementable}}% \begin{codeblock} @@ -1429,7 +1429,7 @@ \pnum The \libconcept{Incrementable} concept specifies requirements on types that can be incremented with the pre- and post-increment operators. The increment operations are required to be equality-preserving, -and the type is required to be \libconcept{EqualityComparable}. +and the type is required to be \libconcept{equality_comparable}. \begin{note} This supersedes the annotations on the increment expressions in the definition of \tcode{WeaklyIncrementable}. @@ -1631,7 +1631,7 @@ can be used to write values (from the requirement for \libconcept{Writable}\iref{iterator.concept.writable}) and which can be both pre- and post-incremented. \begin{note} -Output iterators are not required to model \libconcept{EqualityComparable}. +Output iterators are not required to model \libconcept{equality_comparable}. \end{note} \indexlibrary{\idxcode{OutputIterator}}% diff --git a/source/ranges.tex b/source/ranges.tex index 2bed78f1b7..c1fe36c319 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -2031,7 +2031,7 @@ requires @\placeholdernc{Advanceable}@; friend constexpr bool operator==(const iterator& x, const iterator& y) - requires EqualityComparable; + requires equality_comparable; friend constexpr bool operator<(const iterator& x, const iterator& y) requires StrictTotallyOrdered; @@ -2227,7 +2227,7 @@ \indexlibrary{\idxcode{operator==}!\idxcode{iota_view::iterator}} \begin{itemdecl} friend constexpr bool operator==(const iterator& x, const iterator& y) - requires EqualityComparable; + requires equality_comparable; \end{itemdecl} \begin{itemdescr} @@ -2776,7 +2776,7 @@ constexpr iterator operator--(int) requires BidirectionalRange; friend constexpr bool operator==(const iterator& x, const iterator& y) - requires EqualityComparable>; + requires equality_comparable>; friend constexpr range_rvalue_reference_t iter_move(const iterator& i) noexcept(noexcept(ranges::iter_move(i.current_))); @@ -2935,7 +2935,7 @@ \indexlibrary{\idxcode{operator==}!\idxcode{filter_view::iterator}}% \begin{itemdecl} friend constexpr bool operator==(const iterator& x, const iterator& y) - requires EqualityComparable>; + requires equality_comparable>; \end{itemdecl} \begin{itemdescr} @@ -3260,7 +3260,7 @@ { return invoke(*parent_->fun_, current_[n]); } friend constexpr bool operator==(const iterator& x, const iterator& y) - requires EqualityComparable>; + requires equality_comparable>; friend constexpr bool operator<(const iterator& x, const iterator& y) requires RandomAccessRange; @@ -3457,7 +3457,7 @@ \indexlibrary{\idxcode{operator==}!\idxcode{transform_view::iterator}} \begin{itemdecl} friend constexpr bool operator==(const iterator& x, const iterator& y) - requires EqualityComparable>; + requires equality_comparable>; \end{itemdecl} \begin{itemdescr} @@ -4455,8 +4455,8 @@ BidirectionalRange>; friend constexpr bool operator==(const iterator& x, const iterator& y) - requires ref_is_glvalue && EqualityComparable> && - EqualityComparable>>; + requires ref_is_glvalue && equality_comparable> && + equality_comparable>>; friend constexpr decltype(auto) iter_move(const iterator& i) noexcept(noexcept(ranges::iter_move(i.inner_))) { @@ -4671,8 +4671,8 @@ \indexlibrary{\idxcode{operator==}!\idxcode{join_view::iterator}} \begin{itemdecl} friend constexpr bool operator==(const iterator& x, const iterator& y) - requires ref_is_glvalue && EqualityComparable> && - EqualityComparable>>; + requires ref_is_glvalue && equality_comparable> && + equality_comparable>>; \end{itemdecl} \begin{itemdescr} @@ -5942,7 +5942,7 @@ { return get(*(current_ + n)); } friend constexpr bool operator==(const iterator& x, const iterator& y) - requires EqualityComparable>; + requires equality_comparable>; friend constexpr bool operator==(const iterator& x, const sentinel_t& y); friend constexpr bool operator<(const iterator& x, const iterator& y) @@ -6105,7 +6105,7 @@ \begin{itemdecl} friend constexpr bool operator==(const iterator& x, const iterator& y) - requires EqualityComparable; + requires equality_comparable; \end{itemdecl} \begin{itemdescr} diff --git a/source/support.tex b/source/support.tex index 26710540ec..9c8f41b5d8 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4781,7 +4781,7 @@ \tcode{((a <=> b) <=> 0)} and \tcode{(0 <=> (b <=> a))} are equal; \item if \tcode{Cat} is convertible to \tcode{strong_equality}, \tcode{T} models - \libconcept{EqualityComparable}\iref{concept.equalitycomparable}; + \libconcept{equality_comparable}\iref{concept.equalitycomparable}; \item if \tcode{Cat} is convertible to \tcode{partial_ordering}: \begin{itemize} From 7646581672df7e9194ecc1e2938dc31ba916f369 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:24:56 -0700 Subject: [PATCH 179/312] [everywhere] Rename concept 'EqualityComparableWith' to 'equality_comparable_with'. --- source/concepts.tex | 10 +++++----- source/iterators.tex | 4 ++-- source/support.tex | 2 +- source/utilities.tex | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 3b1fe5bdd9..827c9533e7 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -221,7 +221,7 @@ template concept equality_comparable = @\seebelow@; template - concept EqualityComparableWith = @\seebelow@; + concept equality_comparable_with = @\seebelow@; // \ref{concept.stricttotallyordered}, concept \libconcept{StrictTotallyOrdered} template @@ -924,10 +924,10 @@ \end{note} \end{itemdescr} -\indexlibrary{\idxcode{EqualityComparableWith}}% +\indexlibrary{\idxcode{equality_comparable_with}}% \begin{itemdecl} template - concept EqualityComparableWith = + concept equality_comparable_with = equality_comparable && equality_comparable && common_reference_with&, const remove_reference_t&> && equality_comparable< @@ -947,7 +947,7 @@ common_reference_t&, const remove_reference_t&> \end{codeblock} \tcode{T} and \tcode{U} model -\tcode{\libconcept{EqualityComparableWith}} only if +\tcode{\libconcept{equality_comparable_with}} only if \tcode{bool(t == u) == bool(C(t) == C(u))}. \end{itemdescr} @@ -994,7 +994,7 @@ common_reference_t< const remove_reference_t&, const remove_reference_t&>> && - EqualityComparableWith && + equality_comparable_with && requires(const remove_reference_t& t, const remove_reference_t& u) { { t < u } -> boolean; diff --git a/source/iterators.tex b/source/iterators.tex index 5b560393af..571db27a6e 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -4682,7 +4682,7 @@ friend bool operator==( const common_iterator& x, const common_iterator& y); template S2> - requires Sentinel && EqualityComparableWith + requires Sentinel && equality_comparable_with friend bool operator==( const common_iterator& x, const common_iterator& y); @@ -4946,7 +4946,7 @@ \indexlibrarymember{operator==}{common_iterator}% \begin{itemdecl} template S2> - requires Sentinel && EqualityComparableWith + requires Sentinel && equality_comparable_with friend bool operator==( const common_iterator& x, const common_iterator& y); \end{itemdecl} diff --git a/source/support.tex b/source/support.tex index 9c8f41b5d8..eff1f0c301 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4837,7 +4837,7 @@ \item if \tcode{Cat} is convertible to \tcode{strong_equality}, \tcode{T} and \tcode{U} model - \tcode{\libconcept{EqualityComparableWith}}\iref{concept.equalitycomparable}; + \tcode{\libconcept{equality_comparable_with}}\iref{concept.equalitycomparable}; \item if \tcode{Cat} is convertible to \tcode{partial_ordering}: \begin{itemize} diff --git a/source/utilities.tex b/source/utilities.tex index 6489e1c31f..1f86e0eb2d 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -14675,7 +14675,7 @@ \begin{itemdecl} struct ranges::equal_to { template - requires EqualityComparableWith || @\placeholdernc{BUILTIN-PTR-CMP}@(T, ==, U) + requires equality_comparable_with || @\placeholdernc{BUILTIN-PTR-CMP}@(T, ==, U) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; @@ -14710,7 +14710,7 @@ \begin{itemdecl} struct ranges::not_equal_to { template - requires EqualityComparableWith || @\placeholdernc{BUILTIN-PTR-CMP}@(T, ==, U) + requires equality_comparable_with || @\placeholdernc{BUILTIN-PTR-CMP}@(T, ==, U) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; From c93ad16540ad06e47e4dd075faacb1ab3a1616a4 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:25:34 -0700 Subject: [PATCH 180/312] [everywhere] Rename concept 'StrictTotallyOrdered' to 'totally_ordered'. --- source/concepts.tex | 16 ++++++++-------- source/iterators.tex | 6 +++--- source/lib-intro.tex | 2 +- source/ranges.tex | 22 +++++++++++----------- source/support.tex | 2 +- 5 files changed, 24 insertions(+), 24 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 827c9533e7..1d315201aa 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -223,9 +223,9 @@ template concept equality_comparable_with = @\seebelow@; - // \ref{concept.stricttotallyordered}, concept \libconcept{StrictTotallyOrdered} + // \ref{concept.stricttotallyordered}, concept \libconcept{totally_ordered} template - concept StrictTotallyOrdered = @\seebelow@; + concept totally_ordered = @\seebelow@; template concept StrictTotallyOrderedWith = @\seebelow@; @@ -951,12 +951,12 @@ \tcode{bool(t == u) == bool(C(t) == C(u))}. \end{itemdescr} -\rSec2[concept.stricttotallyordered]{Concept \libconcept{StrictTotallyOrdered}} +\rSec2[concept.stricttotallyordered]{Concept \libconcept{totally_ordered}} -\indexlibrary{\idxcode{StrictTotallyOrdered}}% +\indexlibrary{\idxcode{totally_ordered}}% \begin{itemdecl} template - concept StrictTotallyOrdered = + concept totally_ordered = equality_comparable && requires(const remove_reference_t& a, const remove_reference_t& b) { @@ -971,7 +971,7 @@ \pnum For some type \tcode{T}, let \tcode{a}, \tcode{b}, and \tcode{c} be lvalues of type \tcode{const remove_reference_t}. -\tcode{T} models \libconcept{StrictTotallyOrdered} only if +\tcode{T} models \libconcept{totally_ordered} only if \begin{itemize} \item Exactly one of \tcode{bool(a < b)}, \tcode{bool(a > b)}, or @@ -988,9 +988,9 @@ \begin{itemdecl} template concept StrictTotallyOrderedWith = - StrictTotallyOrdered && StrictTotallyOrdered && + totally_ordered && totally_ordered && common_reference_with&, const remove_reference_t&> && - StrictTotallyOrdered< + totally_ordered< common_reference_t< const remove_reference_t&, const remove_reference_t&>> && diff --git a/source/iterators.tex b/source/iterators.tex index 571db27a6e..98c253380b 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -893,7 +893,7 @@ template concept @\placeholder{cpp17-random-access-iterator}@ = - @\placeholder{cpp17-bidirectional-iterator}@ && StrictTotallyOrdered && + @\placeholder{cpp17-bidirectional-iterator}@ && totally_ordered && requires(I i, typename incrementable_traits::difference_type n) { { i += n } -> same_as; { i -= n } -> same_as; @@ -1357,7 +1357,7 @@ \pnum All integer-class types model \libconcept{Regular}\iref{concepts.object} and -\libconcept{StrictTotallyOrdered}\iref{concept.stricttotallyordered}. +\libconcept{totally_ordered}\iref{concept.stricttotallyordered}. \pnum A value-initialized object of integer-class type has value 0. @@ -1767,7 +1767,7 @@ concept RandomAccessIterator = BidirectionalIterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), random_access_iterator_tag> && - StrictTotallyOrdered && + totally_ordered && SizedSentinel && requires(I i, const I j, const iter_difference_t n) { { i += n } -> same_as; diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 7ce437cb75..e4823ad96d 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -532,7 +532,7 @@ total functions; that is, some arguments to a required operation may result in the required semantics failing to be met. \begin{example} -The required \tcode{<} operator of the \libconcept{StrictTotallyOrdered} +The required \tcode{<} operator of the \libconcept{totally_ordered} concept\iref{concept.stricttotallyordered} does not meet the semantic requirements of that concept when operating on NaNs. \end{example} diff --git a/source/ranges.tex b/source/ranges.tex index c1fe36c319..fd74785338 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1865,7 +1865,7 @@ \begin{itemdecl} template concept @\placeholder{Advanceable}@ = - @\placeholdernc{Decrementable}@ && StrictTotallyOrdered && + @\placeholdernc{Decrementable}@ && totally_ordered && requires(I i, const I j, const @\placeholdernc{IOTA-DIFF-T}@(I) n) { { i += n } -> same_as; { i -= n } -> same_as; @@ -2034,16 +2034,16 @@ requires equality_comparable; friend constexpr bool operator<(const iterator& x, const iterator& y) - requires StrictTotallyOrdered; + requires totally_ordered; friend constexpr bool operator>(const iterator& x, const iterator& y) - requires StrictTotallyOrdered; + requires totally_ordered; friend constexpr bool operator<=(const iterator& x, const iterator& y) - requires StrictTotallyOrdered; + requires totally_ordered; friend constexpr bool operator>=(const iterator& x, const iterator& y) - requires StrictTotallyOrdered; + requires totally_ordered; friend constexpr compare_three_way_result_t operator<=>( const iterator& x, const iterator& y) - requires StrictTotallyOrdered && ThreeWayComparable; + requires totally_ordered && ThreeWayComparable; friend constexpr iterator operator+(iterator i, difference_type n) requires @\placeholdernc{Advanceable}@; @@ -2238,7 +2238,7 @@ \indexlibrary{\idxcode{operator<}!\idxcode{iota_view::iterator}} \begin{itemdecl} friend constexpr bool operator<(const iterator& x, const iterator& y) - requires StrictTotallyOrdered; + requires totally_ordered; \end{itemdecl} \begin{itemdescr} @@ -2249,7 +2249,7 @@ \indexlibrary{\idxcode{operator>}!\idxcode{iota_view::iterator}} \begin{itemdecl} friend constexpr bool operator>(const iterator& x, const iterator& y) - requires StrictTotallyOrdered; + requires totally_ordered; \end{itemdecl} \begin{itemdescr} @@ -2260,7 +2260,7 @@ \indexlibrary{\idxcode{operator<=}!\idxcode{iota_view::iterator}} \begin{itemdecl} friend constexpr bool operator<=(const iterator& x, const iterator& y) - requires StrictTotallyOrdered; + requires totally_ordered; \end{itemdecl} \begin{itemdescr} @@ -2271,7 +2271,7 @@ \indexlibrary{\idxcode{operator>=}!\idxcode{iota_view::iterator}} \begin{itemdecl} friend constexpr bool operator>=(const iterator& x, const iterator& y) - requires StrictTotallyOrdered; + requires totally_ordered; \end{itemdecl} \begin{itemdescr} @@ -2283,7 +2283,7 @@ \begin{itemdecl} friend constexpr compare_three_way_result_t operator<=>(const iterator& x, const iterator& y) - requires StrictTotallyOrdered && ThreeWayComparable; + requires totally_ordered && ThreeWayComparable; \end{itemdecl} \begin{itemdescr} diff --git a/source/support.tex b/source/support.tex index eff1f0c301..6a79a7bfde 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4796,7 +4796,7 @@ \end{itemize} \item If \tcode{Cat} is convertible to \tcode{strong_ordering}, \tcode{T} models - \libconcept{StrictTotallyOrdered}\iref{concept.stricttotallyordered}. + \libconcept{totally_ordered}\iref{concept.stricttotallyordered}. \end{itemize} \begin{codeblock} From 2af7583a20939837255c9a3dd49c16c9d5945f51 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:25:53 -0700 Subject: [PATCH 181/312] [everywhere] Rename concept 'StrictTotallyOrderedWith' to 'totally_ordered_with'. --- source/concepts.tex | 6 +++--- source/ranges.tex | 2 +- source/support.tex | 2 +- source/utilities.tex | 8 ++++---- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 1d315201aa..307d93c96e 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -227,7 +227,7 @@ template concept totally_ordered = @\seebelow@; template - concept StrictTotallyOrderedWith = @\seebelow@; + concept totally_ordered_with = @\seebelow@; // \ref{concepts.object}, object concepts template @@ -987,7 +987,7 @@ \begin{itemdecl} template - concept StrictTotallyOrderedWith = + concept totally_ordered_with = totally_ordered && totally_ordered && common_reference_with&, const remove_reference_t&> && totally_ordered< @@ -1018,7 +1018,7 @@ common_reference_t&, const remove_reference_t&> \end{codeblock} \tcode{T} and \tcode{U} model -\tcode{\libconcept{StrictTotallyOrderedWith}} only if +\tcode{\libconcept{totally_ordered_with}} only if \begin{itemize} \item \tcode{bool(t < u) == bool(C(t) < C(u)).} diff --git a/source/ranges.tex b/source/ranges.tex index fd74785338..4a40f20b19 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1927,7 +1927,7 @@ \expects \tcode{Bound} denotes \tcode{unreachable_sentinel_t} or \tcode{bound} is reachable from \tcode{value}. -When \tcode{W} and \tcode{Bound} model \libconcept{StrictTotallyOrderedWith}, +When \tcode{W} and \tcode{Bound} model \libconcept{totally_ordered_with}, then \tcode{bool(value <= bound)} is \tcode{true}. \pnum diff --git a/source/support.tex b/source/support.tex index 6a79a7bfde..340d836c63 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4853,7 +4853,7 @@ \item if \tcode{Cat} is convertible to \tcode{strong_ordering}, \tcode{T} and \tcode{U} model - \tcode{\libconcept{StrictTotallyOrderedWith}}\iref{concept.stricttotallyordered}. + \tcode{\libconcept{totally_ordered_with}}\iref{concept.stricttotallyordered}. \end{itemize} \rSec2[cmp.result]{Result of three-way comparison} diff --git a/source/utilities.tex b/source/utilities.tex index 1f86e0eb2d..475a9a7e7d 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -14729,7 +14729,7 @@ \begin{itemdecl} struct ranges::greater { template - requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN-PTR-CMP}@(U, <, T) + requires totally_ordered_with || @\placeholdernc{BUILTIN-PTR-CMP}@(U, <, T) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; @@ -14748,7 +14748,7 @@ \begin{itemdecl} struct ranges::less { template - requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN-PTR-CMP}@(T, <, U) + requires totally_ordered_with || @\placeholdernc{BUILTIN-PTR-CMP}@(T, <, U) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; @@ -14789,7 +14789,7 @@ \begin{itemdecl} struct ranges::greater_equal { template - requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN-PTR-CMP}@(T, <, U) + requires totally_ordered_with || @\placeholdernc{BUILTIN-PTR-CMP}@(T, <, U) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; @@ -14808,7 +14808,7 @@ \begin{itemdecl} struct ranges::less_equal { template - requires StrictTotallyOrderedWith || @\placeholdernc{BUILTIN-PTR-CMP}@(U, <, T) + requires totally_ordered_with || @\placeholdernc{BUILTIN-PTR-CMP}@(U, <, T) constexpr bool operator()(T&& t, U&& u) const; using is_transparent = @\unspecnc@; From 9822b709752b4c84a5233ba9beab88e8455f7277 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:26:43 -0700 Subject: [PATCH 182/312] [everywhere] Rename concept 'Movable' to 'movable'. --- source/concepts.tex | 10 +++++----- source/iterators.tex | 4 ++-- source/ranges.tex | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 307d93c96e..dc42a151e7 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -231,7 +231,7 @@ // \ref{concepts.object}, object concepts template - concept Movable = @\seebelow@; + concept movable = @\seebelow@; template concept Copyable = @\seebelow@; template @@ -822,7 +822,7 @@ \begin{itemdecl} template concept boolean = - Movable> && // (see \ref{concepts.object}) + movable> && // (see \ref{concepts.object}) requires(const remove_reference_t& b1, const remove_reference_t& b2, const bool a) { { b1 } -> convertible_to; @@ -1038,15 +1038,15 @@ This subclause describes concepts that specify the basis of the value-oriented programming style on which the library is based. -\indexlibrary{\idxcode{Movable}}% +\indexlibrary{\idxcode{movable}}% \indexlibrary{\idxcode{Copyable}}% \indexlibrary{\idxcode{Semiregular}}% \indexlibrary{\idxcode{Regular}}% \begin{itemdecl} template - concept Movable = is_object_v && move_constructible && assignable_from && swappable; + concept movable = is_object_v && move_constructible && assignable_from && swappable; template - concept Copyable = copy_constructible && Movable && assignable_from; + concept Copyable = copy_constructible && movable && assignable_from; template concept Semiregular = Copyable && default_constructible; template diff --git a/source/iterators.tex b/source/iterators.tex index 98c253380b..86e8d2ade5 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1288,7 +1288,7 @@ template concept WeaklyIncrementable = - default_constructible && Movable && + default_constructible && movable && requires(I i) { typename iter_difference_t; requires @\placeholdernc{is-signed-integer-like}@>; @@ -2453,7 +2453,7 @@ concept IndirectlyMovableStorable = IndirectlyMovable && Writable> && - Movable> && + movable> && constructible_from, iter_rvalue_reference_t> && assignable_from&, iter_rvalue_reference_t>; \end{codeblock} diff --git a/source/ranges.tex b/source/ranges.tex index 4a40f20b19..e0e836b9f3 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -241,7 +241,7 @@ namespace views { inline constexpr @\unspec@ reverse = @\unspec@; } // \ref{range.istream}, istream view - template> + template> requires @\seebelow@ class basic_istream_view; template @@ -5607,7 +5607,7 @@ is >> t; }; - template + template requires default_constructible && @\placeholder{stream-extractable}@ class basic_istream_view : public view_interface> { From 3cf394bb45a791da5283379de5881853ac418943 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:27:13 -0700 Subject: [PATCH 183/312] [everywhere] Rename concept 'Copyable' to 'copyable'. --- source/algorithms.tex | 12 ++++++------ source/concepts.tex | 8 ++++---- source/iterators.tex | 4 ++-- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 15782e39a0..e8ecdaa293 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -2636,7 +2636,7 @@ template> Comp = ranges::less> constexpr const T& min(const T& a, const T& b, Comp comp = {}, Proj proj = {}); - template> Comp = ranges::less> constexpr T min(initializer_list r, Comp comp = {}, Proj proj = {}); template> Comp = ranges::less> constexpr const T& max(const T& a, const T& b, Comp comp = {}, Proj proj = {}); - template> Comp = ranges::less> constexpr T max(initializer_list r, Comp comp = {}, Proj proj = {}); template> Comp = ranges::less> constexpr minmax_result minmax(const T& a, const T& b, Comp comp = {}, Proj proj = {}); - template> Comp = ranges::less> constexpr minmax_result minmax(initializer_list r, Comp comp = {}, Proj proj = {}); @@ -7909,7 +7909,7 @@ template constexpr T min(initializer_list r, Compare comp); -template> Comp = ranges::less> constexpr T ranges::min(initializer_list r, Comp comp = {}, Proj proj = {}); template constexpr T max(initializer_list r, Compare comp); -template> Comp = ranges::less> constexpr T ranges::max(initializer_list r, Comp comp = {}, Proj proj = {}); template constexpr pair minmax(initializer_list t, Compare comp); -template> Comp = ranges::less> constexpr ranges::minmax_result ranges::minmax(initializer_list r, Comp comp = {}, Proj proj = {}); diff --git a/source/concepts.tex b/source/concepts.tex index dc42a151e7..63d0b0ab8d 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -233,7 +233,7 @@ template concept movable = @\seebelow@; template - concept Copyable = @\seebelow@; + concept copyable = @\seebelow@; template concept Semiregular = @\seebelow@; template @@ -1039,16 +1039,16 @@ value-oriented programming style on which the library is based. \indexlibrary{\idxcode{movable}}% -\indexlibrary{\idxcode{Copyable}}% +\indexlibrary{\idxcode{copyable}}% \indexlibrary{\idxcode{Semiregular}}% \indexlibrary{\idxcode{Regular}}% \begin{itemdecl} template concept movable = is_object_v && move_constructible && assignable_from && swappable; template - concept Copyable = copy_constructible && movable && assignable_from; + concept copyable = copy_constructible && movable && assignable_from; template - concept Semiregular = Copyable && default_constructible; + concept Semiregular = copyable && default_constructible; template concept Regular = Semiregular && equality_comparable; \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index 86e8d2ade5..cc8cadf981 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -855,7 +855,7 @@ \begin{codeblock} template concept @\placeholder{cpp17-iterator}@ = - Copyable && requires(I i) { + copyable && requires(I i) { { *i } -> @\placeholder{can-reference}@; { ++i } -> same_as; { *i++ } -> @\placeholder{can-reference}@; @@ -2498,7 +2498,7 @@ concept IndirectlyCopyableStorable = IndirectlyCopyable && Writable&> && - Copyable> && + copyable> && constructible_from, iter_reference_t> && assignable_from&, iter_reference_t>; \end{codeblock} From 69b71c8d1556e1ffd9865160b47873caab72ad2c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:27:37 -0700 Subject: [PATCH 184/312] [everywhere] Rename concept 'Semiregular' to 'semiregular'. --- source/concepts.tex | 10 +++++----- source/iterators.tex | 8 ++++---- source/lib-intro.tex | 2 +- source/ranges.tex | 6 +++--- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 63d0b0ab8d..66ea4644e2 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -235,7 +235,7 @@ template concept copyable = @\seebelow@; template - concept Semiregular = @\seebelow@; + concept semiregular = @\seebelow@; template concept Regular = @\seebelow@; @@ -1040,7 +1040,7 @@ \indexlibrary{\idxcode{movable}}% \indexlibrary{\idxcode{copyable}}% -\indexlibrary{\idxcode{Semiregular}}% +\indexlibrary{\idxcode{semiregular}}% \indexlibrary{\idxcode{Regular}}% \begin{itemdecl} template @@ -1048,15 +1048,15 @@ template concept copyable = copy_constructible && movable && assignable_from; template - concept Semiregular = copyable && default_constructible; + concept semiregular = copyable && default_constructible; template - concept Regular = Semiregular && equality_comparable; + concept Regular = semiregular && equality_comparable; \end{itemdecl} \begin{itemdescr} \pnum \begin{note} -The \libconcept{Semiregular} concept is modeled by types that behave similarly +The \libconcept{semiregular} concept is modeled by types that behave similarly to built-in types like \tcode{int}, except that they might not be comparable with \tcode{==}. \end{note} diff --git a/source/iterators.tex b/source/iterators.tex index cc8cadf981..d9ca4a57cb 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -363,7 +363,7 @@ template constexpr move_iterator make_move_iterator(Iterator i); - template class move_sentinel; + template class move_sentinel; // \ref{iterators.common}, common iterators template S> @@ -1498,14 +1498,14 @@ \pnum The \libconcept{Sentinel} concept specifies the relationship -between an \libconcept{Iterator} type and a \libconcept{Semiregular} type +between an \libconcept{Iterator} type and a \libconcept{semiregular} type whose values denote a range. \indexlibrary{\idxcode{Sentinel}}% \begin{itemdecl} template concept Sentinel = - Semiregular && + semiregular && Iterator && @\placeholder{weakly-equality-comparable-with}@; // See \ref{concept.equalitycomparable} \end{itemdecl} @@ -4550,7 +4550,7 @@ \indexlibrary{\idxcode{move_sentinel}}% \begin{codeblock} namespace std { - template + template class move_sentinel { public: constexpr move_sentinel(); diff --git a/source/lib-intro.tex b/source/lib-intro.tex index e4823ad96d..3c237f9c38 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -1011,7 +1011,7 @@ \pnum The type of a customization point object shall model -\libconcept{Semiregular}\iref{concepts.object}. +\libconcept{semiregular}\iref{concepts.object}. \pnum All instances of a specific customization point object type shall diff --git a/source/ranges.tex b/source/ranges.tex index e0e836b9f3..21f6f38797 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -144,7 +144,7 @@ namespace views { inline constexpr @\unspec@ single = @\unspec@; } // \ref{range.iota}, iota view - template + template requires @\placeholder{weakly-equality-comparable-with}@ class iota_view; @@ -905,7 +905,7 @@ \begin{itemdecl} template concept View = - Range && Semiregular && enable_view; + Range && semiregular && enable_view; \end{itemdecl} \begin{itemdescr} @@ -1775,7 +1775,7 @@ concept @\placeholdernc{Advanceable}@ = // \expos @\seebelow@; - template + template requires @\placeholdernc{weakly-equality-comparable-with}@ class iota_view : public view_interface> { private: From d991fc4ed58e99c73e0e2b7714bf6f192f281406 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:27:59 -0700 Subject: [PATCH 185/312] [everywhere] Rename concept 'Regular' to 'regular'. --- source/concepts.tex | 8 ++++---- source/iterators.tex | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 66ea4644e2..d9379667cc 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -237,7 +237,7 @@ template concept semiregular = @\seebelow@; template - concept Regular = @\seebelow@; + concept regular = @\seebelow@; // \ref{concepts.callable}, callable concepts // \ref{concept.invocable}, concept \libconcept{Invocable} @@ -1041,7 +1041,7 @@ \indexlibrary{\idxcode{movable}}% \indexlibrary{\idxcode{copyable}}% \indexlibrary{\idxcode{semiregular}}% -\indexlibrary{\idxcode{Regular}}% +\indexlibrary{\idxcode{regular}}% \begin{itemdecl} template concept movable = is_object_v && move_constructible && assignable_from && swappable; @@ -1050,7 +1050,7 @@ template concept semiregular = copyable && default_constructible; template - concept Regular = semiregular && equality_comparable; + concept regular = semiregular && equality_comparable; \end{itemdecl} \begin{itemdescr} @@ -1063,7 +1063,7 @@ \pnum \begin{note} -The \libconcept{Regular} concept is modeled by types that behave similarly to +The \libconcept{regular} concept is modeled by types that behave similarly to built-in types like \tcode{int} and that are comparable with \tcode{==}. \end{note} diff --git a/source/iterators.tex b/source/iterators.tex index d9ca4a57cb..361e2d8ca2 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1356,7 +1356,7 @@ \pnum All integer-class types model -\libconcept{Regular}\iref{concepts.object} and +\libconcept{regular}\iref{concepts.object} and \libconcept{totally_ordered}\iref{concept.stricttotallyordered}. \pnum @@ -1439,7 +1439,7 @@ \begin{codeblock} template concept Incrementable = - Regular && + regular && WeaklyIncrementable && requires(I i) { { i++ } -> same_as; From 514b07210d915e4b10b2dadaa1ad5649152c0621 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:29:05 -0700 Subject: [PATCH 186/312] [everywhere] Rename concept 'Invocable' to 'invocable'. --- source/algorithms.tex | 12 ++++++------ source/concepts.tex | 20 ++++++++++---------- source/iterators.tex | 8 ++++---- source/lib-intro.tex | 2 +- source/numerics.tex | 2 +- source/threads.tex | 4 ++-- 6 files changed, 24 insertions(+), 24 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index e8ecdaa293..0863edd39a 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1506,13 +1506,13 @@ namespace ranges { template S, copy_constructible F> - requires Invocable && Writable> + requires invocable && Writable> constexpr O generate(O first, S last, F gen); template - requires Invocable && OutputRange> + requires invocable && OutputRange> constexpr safe_iterator_t generate(R&& r, F gen); template - requires Invocable && Writable> + requires invocable && Writable> constexpr O generate_n(O first, iter_difference_t n, F gen); } @@ -4911,13 +4911,13 @@ ForwardIterator first, Size n, Generator gen); template S, copy_constructible F> - requires Invocable && Writable> + requires invocable && Writable> constexpr O ranges::generate(O first, S last, F gen); template - requires Invocable && OutputRange> + requires invocable && OutputRange> constexpr safe_iterator_t ranges::generate(R&& r, F gen); template - requires Invocable && Writable> + requires invocable && Writable> constexpr O ranges::generate_n(O first, iter_difference_t n, F gen); \end{itemdecl} diff --git a/source/concepts.tex b/source/concepts.tex index d9379667cc..c6b2b558cf 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -240,9 +240,9 @@ concept regular = @\seebelow@; // \ref{concepts.callable}, callable concepts - // \ref{concept.invocable}, concept \libconcept{Invocable} + // \ref{concept.invocable}, concept \libconcept{invocable} template - concept Invocable = @\seebelow@; + concept invocable = @\seebelow@; // \ref{concept.regularinvocable}, concept \libconcept{RegularInvocable} template @@ -1077,17 +1077,17 @@ The concepts in this subclause describe the requirements on function objects\iref{function.objects} and their arguments. -\rSec2[concept.invocable]{Concept \libconcept{Invocable}} +\rSec2[concept.invocable]{Concept \libconcept{invocable}} \pnum -The \libconcept{Invocable} concept specifies a relationship between a callable +The \libconcept{invocable} concept specifies a relationship between a callable type\iref{func.def} \tcode{F} and a set of argument types \tcode{Args...} which can be evaluated by the library function \tcode{invoke}\iref{func.invoke}. -\indexlibrary{\idxcode{Invocable}}% +\indexlibrary{\idxcode{invocable}}% \begin{itemdecl} template - concept Invocable = requires(F&& f, Args&&... args) { + concept invocable = requires(F&& f, Args&&... args) { invoke(std::forward(f), std::forward(args)...); // not required to be equality-preserving }; \end{itemdecl} @@ -1095,7 +1095,7 @@ \begin{itemdescr} \pnum \begin{example} -A function that generates random numbers can model \libconcept{Invocable}, +A function that generates random numbers can model \libconcept{invocable}, since the \tcode{invoke} function call expression is not required to be equality-preserving\iref{concepts.equality}. \end{example} @@ -1106,7 +1106,7 @@ \indexlibrary{\idxcode{RegularInvocable}}% \begin{itemdecl} template - concept RegularInvocable = Invocable; + concept RegularInvocable = invocable; \end{itemdecl} \begin{itemdescr} @@ -1116,7 +1116,7 @@ arguments\iref{concepts.equality}. \begin{note} This requirement supersedes the annotation in the definition of -\libconcept{Invocable}. +\libconcept{invocable}. \end{note} \pnum @@ -1126,7 +1126,7 @@ \pnum \begin{note} -The distinction between \libconcept{Invocable} and \libconcept{RegularInvocable} +The distinction between \libconcept{invocable} and \libconcept{RegularInvocable} is purely semantic. \end{note} \end{itemdescr} diff --git a/source/iterators.tex b/source/iterators.tex index 361e2d8ca2..08af337de9 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -158,7 +158,7 @@ concept IndirectStrictWeakOrder = @\seebelow@; template - requires (Readable && ...) && Invocable...> + requires (Readable && ...) && invocable...> using indirect_result_t = invoke_result_t...>; // \ref{projected}, projected @@ -2324,9 +2324,9 @@ concept IndirectUnaryInvocable = Readable && copy_constructible && - Invocable&> && - Invocable> && - Invocable> && + invocable&> && + invocable> && + invocable> && common_reference_with< invoke_result_t&>, invoke_result_t>>; diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 3c237f9c38..170f3481ef 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -1019,7 +1019,7 @@ \pnum The type \tcode{T} of a customization point object shall model -\tcode{\libconcept{Invocable}}\iref{concept.invocable} +\tcode{\libconcept{invocable}}\iref{concept.invocable} when the types in \tcode{Args...} meet the requirements specified in that customization point object's definition. When the types of \tcode{Args...} do not meet the customization point object's requirements, \tcode{T} shall not have diff --git a/source/numerics.tex b/source/numerics.tex index f53abf9bed..5ee9e4164e 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -2154,7 +2154,7 @@ \begin{codeblock} template concept UniformRandomBitGenerator = - Invocable && unsigned_integral> && + invocable && unsigned_integral> && requires { { G::min() } -> same_as>; { G::max() } -> same_as>; diff --git a/source/threads.tex b/source/threads.tex index 4418343834..3776e2f49a 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -852,14 +852,14 @@ \mandates \tcode{stop_callback} is instantiated with an argument for the template parameter \tcode{Callback} -that satisfies both \tcode{Invocable} +that satisfies both \tcode{invocable} and \tcode{destructible}. \pnum \expects \tcode{stop_callback} is instantiated with an argument for the template parameter \tcode{Callback} -that models both \tcode{Invocable} +that models both \tcode{invocable} and \tcode{destructible}. From 1f8f9def007a4a840b7e9c35fea2492b099c4dc1 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:29:34 -0700 Subject: [PATCH 187/312] [everywhere] Rename concept 'RegularInvocable' to 'regular_invocable'. --- source/concepts.tex | 16 ++++++++-------- source/iterators.tex | 6 +++--- source/ranges.tex | 16 ++++++++-------- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index c6b2b558cf..ef9811ba46 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -244,9 +244,9 @@ template concept invocable = @\seebelow@; - // \ref{concept.regularinvocable}, concept \libconcept{RegularInvocable} + // \ref{concept.regularinvocable}, concept \libconcept{regular_invocable} template - concept RegularInvocable = @\seebelow@; + concept regular_invocable = @\seebelow@; // \ref{concept.predicate}, concept \libconcept{Predicate} template @@ -1101,12 +1101,12 @@ \end{example} \end{itemdescr} -\rSec2[concept.regularinvocable]{Concept \libconcept{RegularInvocable}} +\rSec2[concept.regularinvocable]{Concept \libconcept{regular_invocable}} -\indexlibrary{\idxcode{RegularInvocable}}% +\indexlibrary{\idxcode{regular_invocable}}% \begin{itemdecl} template - concept RegularInvocable = invocable; + concept regular_invocable = invocable; \end{itemdecl} \begin{itemdescr} @@ -1121,12 +1121,12 @@ \pnum \begin{example} -A random number generator does not model \libconcept{RegularInvocable}. +A random number generator does not model \libconcept{regular_invocable}. \end{example} \pnum \begin{note} -The distinction between \libconcept{invocable} and \libconcept{RegularInvocable} +The distinction between \libconcept{invocable} and \libconcept{regular_invocable} is purely semantic. \end{note} \end{itemdescr} @@ -1136,7 +1136,7 @@ \indexlibrary{\idxcode{Predicate}}% \begin{itemdecl} template - concept Predicate = RegularInvocable && boolean>; + concept Predicate = regular_invocable && boolean>; \end{itemdecl} \rSec2[concept.relation]{Concept \libconcept{Relation}} diff --git a/source/iterators.tex b/source/iterators.tex index 08af337de9..8aa2ee2a57 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -2335,9 +2335,9 @@ concept IndirectRegularUnaryInvocable = Readable && copy_constructible && - RegularInvocable&> && - RegularInvocable> && - RegularInvocable> && + regular_invocable&> && + regular_invocable> && + regular_invocable> && common_reference_with< invoke_result_t&>, invoke_result_t>>; diff --git a/source/ranges.tex b/source/ranges.tex index 21f6f38797..7a4033429c 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -170,7 +170,7 @@ // \ref{range.transform}, transform view template requires View && is_object_v && - RegularInvocable> + regular_invocable> class transform_view; namespace views { inline constexpr @\unspec@ transform = @\unspec@; } @@ -3051,7 +3051,7 @@ namespace std::ranges { template requires View && is_object_v && - RegularInvocable> + regular_invocable> class transform_view : public view_interface> { private: // \ref{range.transform.iterator}, class template \tcode{transform_view::iterator} @@ -3074,16 +3074,16 @@ constexpr iterator begin(); constexpr iterator begin() const requires Range && - RegularInvocable>; + regular_invocable>; constexpr sentinel end(); constexpr iterator end() requires CommonRange; constexpr sentinel end() const requires Range && - RegularInvocable>; + regular_invocable>; constexpr iterator end() const requires CommonRange && - RegularInvocable>; + regular_invocable>; constexpr auto size() requires SizedRange { return ranges::size(base_); } constexpr auto size() const requires SizedRange @@ -3146,7 +3146,7 @@ \begin{itemdecl} constexpr iterator begin() const requires Range && - RegularInvocable>; + regular_invocable>; \end{itemdecl} \begin{itemdescr} @@ -3187,7 +3187,7 @@ \begin{itemdecl} constexpr sentinel end() const requires Range && - RegularInvocable>; + regular_invocable>; \end{itemdecl} \begin{itemdescr} @@ -3202,7 +3202,7 @@ \begin{itemdecl} constexpr iterator end() const requires CommonRange && - RegularInvocable>; + regular_invocable>; \end{itemdecl} \begin{itemdescr} From 58f66a776a679abea5853eb7dbae143924fd3443 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:32:34 -0700 Subject: [PATCH 188/312] [everywhere] Rename concept 'Predicate' to 'predicate'. --- source/concepts.tex | 14 +++++++------- source/iterators.tex | 6 +++--- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index ef9811ba46..a39c8751ba 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -248,9 +248,9 @@ template concept regular_invocable = @\seebelow@; - // \ref{concept.predicate}, concept \libconcept{Predicate} + // \ref{concept.predicate}, concept \libconcept{predicate} template - concept Predicate = @\seebelow@; + concept predicate = @\seebelow@; // \ref{concept.relation}, concept \libconcept{Relation} template @@ -1131,12 +1131,12 @@ \end{note} \end{itemdescr} -\rSec2[concept.predicate]{Concept \libconcept{Predicate}} +\rSec2[concept.predicate]{Concept \libconcept{predicate}} -\indexlibrary{\idxcode{Predicate}}% +\indexlibrary{\idxcode{predicate}}% \begin{itemdecl} template - concept Predicate = regular_invocable && boolean>; + concept predicate = regular_invocable && boolean>; \end{itemdecl} \rSec2[concept.relation]{Concept \libconcept{Relation}} @@ -1145,8 +1145,8 @@ \begin{itemdecl} template concept Relation = - Predicate && Predicate && - Predicate && Predicate; + predicate && predicate && + predicate && predicate; \end{itemdecl} \rSec2[concept.strictweakorder]{Concept \libconcept{StrictWeakOrder}} diff --git a/source/iterators.tex b/source/iterators.tex index 8aa2ee2a57..efe277e74e 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -2346,9 +2346,9 @@ concept IndirectUnaryPredicate = Readable && copy_constructible && - Predicate&> && - Predicate> && - Predicate>; + predicate&> && + predicate> && + predicate>; template concept IndirectRelation = From 458af63c9bf22c8716181c12931d7d0fe8180fac Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:33:17 -0700 Subject: [PATCH 189/312] [everywhere] Rename concept 'Relation' to 'relation'. --- source/concepts.tex | 16 ++++++++-------- source/iterators.tex | 10 +++++----- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index a39c8751ba..6691a7cba9 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -252,9 +252,9 @@ template concept predicate = @\seebelow@; - // \ref{concept.relation}, concept \libconcept{Relation} + // \ref{concept.relation}, concept \libconcept{relation} template - concept Relation = @\seebelow@; + concept relation = @\seebelow@; // \ref{concept.strictweakorder}, concept \libconcept{StrictWeakOrder} template @@ -1139,27 +1139,27 @@ concept predicate = regular_invocable && boolean>; \end{itemdecl} -\rSec2[concept.relation]{Concept \libconcept{Relation}} +\rSec2[concept.relation]{Concept \libconcept{relation}} -\indexlibrary{\idxcode{Relation}}% +\indexlibrary{\idxcode{relation}}% \begin{itemdecl} template - concept Relation = + concept relation = predicate && predicate && predicate && predicate; \end{itemdecl} \rSec2[concept.strictweakorder]{Concept \libconcept{StrictWeakOrder}} -\indexlibrary{\idxcode{Relation}}% +\indexlibrary{\idxcode{StrictWeakOrder}}% \begin{itemdecl} template - concept StrictWeakOrder = Relation; + concept StrictWeakOrder = relation; \end{itemdecl} \begin{itemdescr} \pnum -A \libconcept{Relation} models \libconcept{StrictWeakOrder} only if +A \libconcept{relation} models \libconcept{StrictWeakOrder} only if it imposes a \term{strict weak ordering} on its arguments. \pnum diff --git a/source/iterators.tex b/source/iterators.tex index efe277e74e..e167a6cc13 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -2354,11 +2354,11 @@ concept IndirectRelation = Readable && Readable && copy_constructible && - Relation&, iter_value_t&> && - Relation&, iter_reference_t> && - Relation, iter_value_t&> && - Relation, iter_reference_t> && - Relation, iter_common_reference_t>; + relation&, iter_value_t&> && + relation&, iter_reference_t> && + relation, iter_value_t&> && + relation, iter_reference_t> && + relation, iter_common_reference_t>; template concept IndirectStrictWeakOrder = From 2fc3c8ad86a2320f23647478f1c386cb3ad356fc Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:34:04 -0700 Subject: [PATCH 190/312] [everywhere] Rename concept 'StrictWeakOrder' to 'strict_weak_order'. --- source/concepts.tex | 12 ++++++------ source/iterators.tex | 10 +++++----- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 6691a7cba9..72d4811195 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -256,9 +256,9 @@ template concept relation = @\seebelow@; - // \ref{concept.strictweakorder}, concept \libconcept{StrictWeakOrder} + // \ref{concept.strictweakorder}, concept \libconcept{strict_weak_order} template - concept StrictWeakOrder = @\seebelow@; + concept strict_weak_order = @\seebelow@; } \end{codeblock} @@ -1149,17 +1149,17 @@ predicate && predicate; \end{itemdecl} -\rSec2[concept.strictweakorder]{Concept \libconcept{StrictWeakOrder}} +\rSec2[concept.strictweakorder]{Concept \libconcept{strict_weak_order}} -\indexlibrary{\idxcode{StrictWeakOrder}}% +\indexlibrary{\idxcode{strict_weak_order}}% \begin{itemdecl} template - concept StrictWeakOrder = relation; + concept strict_weak_order = relation; \end{itemdecl} \begin{itemdescr} \pnum -A \libconcept{relation} models \libconcept{StrictWeakOrder} only if +A \libconcept{relation} models \libconcept{strict_weak_order} only if it imposes a \term{strict weak ordering} on its arguments. \pnum diff --git a/source/iterators.tex b/source/iterators.tex index e167a6cc13..48f08fe44b 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -2364,11 +2364,11 @@ concept IndirectStrictWeakOrder = Readable && Readable && copy_constructible && - StrictWeakOrder&, iter_value_t&> && - StrictWeakOrder&, iter_reference_t> && - StrictWeakOrder, iter_value_t&> && - StrictWeakOrder, iter_reference_t> && - StrictWeakOrder, iter_common_reference_t>; + strict_weak_order&, iter_value_t&> && + strict_weak_order&, iter_reference_t> && + strict_weak_order, iter_value_t&> && + strict_weak_order, iter_reference_t> && + strict_weak_order, iter_common_reference_t>; } \end{codeblock} From 3fcab1ca489c5d7bd996aadb6aa13fee6448d80c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:34:43 -0700 Subject: [PATCH 191/312] [everywhere] Rename concept 'Readable' to 'readable'. --- source/iterators.tex | 72 ++++++++++++++++++++++---------------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index 48f08fe44b..cdd30c4304 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -81,11 +81,11 @@ = decltype(ranges::iter_move(declval())); // \ref{iterator.concepts}, iterator concepts - // \ref{iterator.concept.readable}, concept \libconcept{Readable} + // \ref{iterator.concept.readable}, concept \libconcept{readable} template - concept Readable = @\seebelow@; + concept readable = @\seebelow@; - template + template using iter_common_reference_t = common_reference_t, iter_value_t&>; @@ -158,11 +158,11 @@ concept IndirectStrictWeakOrder = @\seebelow@; template - requires (Readable && ...) && invocable...> + requires (readable && ...) && invocable...> using indirect_result_t = invoke_result_t...>; // \ref{projected}, projected - template Proj> + template Proj> struct projected; template @@ -730,7 +730,7 @@ To implement algorithms only in terms of readable types, it is often necessary to determine the value type that corresponds to a particular readable type. Accordingly, it is required that if \tcode{R} is the name of a type that -models the \libconcept{Readable} concept\iref{iterator.concept.readable}, +models the \libconcept{readable} concept\iref{iterator.concept.readable}, the type \begin{codeblock} iter_value_t @@ -795,15 +795,15 @@ \pnum \begin{note} Some legacy output iterators define a nested type named \tcode{value_type} -that is an alias for \tcode{void}. These types are not \tcode{Readable} +that is an alias for \tcode{void}. These types are not \tcode{readable} and have no associated value types. \end{note} \pnum \begin{note} -Smart pointers like \tcode{shared_ptr} are \tcode{Readable} and +Smart pointers like \tcode{shared_ptr} are \tcode{readable} and have an associated value type, but a smart pointer like \tcode{shared_ptr} -is not \tcode{Readable} and has no associated value type. +is not \tcode{readable} and has no associated value type. \end{note} \rSec3[iterator.traits]{Iterator traits} @@ -1120,7 +1120,7 @@ ill-formed with no diagnostic required. \item Otherwise, if the types of \tcode{E1} and \tcode{E2} each model -\tcode{Readable}, and if the reference types of \tcode{E1} and \tcode{E2} +\tcode{readable}, and if the reference types of \tcode{E1} and \tcode{E2} model \libconcept{swappable_with}\iref{concept.swappable}, then \tcode{ranges::swap(*E1, *E2)}. @@ -1187,17 +1187,17 @@ and \tcode{\placeholder{ITER_CONCEPT}(I)} denotes \tcode{random_access_iterator_tag}. \end{example} -\rSec3[iterator.concept.readable]{Concept \libconcept{Readable}} +\rSec3[iterator.concept.readable]{Concept \libconcept{readable}} \pnum Types that are readable by applying \tcode{operator*} -model the \libconcept{Readable} concept, including +model the \libconcept{readable} concept, including pointers, smart pointers, and iterators. -\indexlibrary{\idxcode{Readable}}% +\indexlibrary{\idxcode{readable}}% \begin{codeblock} template - concept Readable = + concept readable = requires { typename iter_value_t; typename iter_reference_t; @@ -1209,7 +1209,7 @@ \end{codeblock} \pnum -Given a value \tcode{i} of type \tcode{I}, \tcode{I} models \libconcept{Readable} +Given a value \tcode{i} of type \tcode{I}, \tcode{I} models \libconcept{readable} only if the expression \tcode{*i} is equality-preserving. \begin{note} The expression \tcode{*i} is indirectly required to be valid via the @@ -1243,7 +1243,7 @@ \begin{itemize} \item If \tcode{Out} and \tcode{T} model - \tcode{Readable \&\& same_as, decay_t{>}}, + \tcode{readable \&\& same_as, decay_t{>}}, then \tcode{*o} after any above assignment is equal to the value of \tcode{E} before the assignment. \end{itemize} @@ -1606,7 +1606,7 @@ \pnum The \libconcept{InputIterator} concept defines requirements for a type whose referenced values can be read (from the requirement for -\libconcept{Readable}\iref{iterator.concept.readable}) and which can be both pre- and +\libconcept{readable}\iref{iterator.concept.readable}) and which can be both pre- and post-incremented. \begin{note} Unlike the \oldconcept{InputIterator} requirements\iref{input.iterators}, @@ -1619,7 +1619,7 @@ template concept InputIterator = Iterator && - Readable && + readable && requires { typename @\placeholdernc{ITER_CONCEPT}@(I); } && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), input_iterator_tag>; \end{codeblock} @@ -2322,7 +2322,7 @@ namespace std { template concept IndirectUnaryInvocable = - Readable && + readable && copy_constructible && invocable&> && invocable> && @@ -2333,7 +2333,7 @@ template concept IndirectRegularUnaryInvocable = - Readable && + readable && copy_constructible && regular_invocable&> && regular_invocable> && @@ -2344,7 +2344,7 @@ template concept IndirectUnaryPredicate = - Readable && + readable && copy_constructible && predicate&> && predicate> && @@ -2352,7 +2352,7 @@ template concept IndirectRelation = - Readable && Readable && + readable && readable && copy_constructible && relation&, iter_value_t&> && relation&, iter_reference_t> && @@ -2362,7 +2362,7 @@ template concept IndirectStrictWeakOrder = - Readable && Readable && + readable && readable && copy_constructible && strict_weak_order&, iter_value_t&> && strict_weak_order&, iter_reference_t> && @@ -2377,15 +2377,15 @@ \pnum Class template \tcode{projected} is used to constrain algorithms that accept callable objects and projections\iref{defns.projection}. -It combines a \libconcept{Readable} type \tcode{I} and -a callable object type \tcode{Proj} into a new \libconcept{Readable} type +It combines a \libconcept{readable} type \tcode{I} and +a callable object type \tcode{Proj} into a new \libconcept{readable} type whose \tcode{reference} type is the result of applying \tcode{Proj} to the \tcode{iter_reference_t} of \tcode{I}. \indexlibrary{\idxcode{projected}}% \begin{codeblock} namespace std { - template Proj> + template Proj> struct projected { using value_type = remove_cvref_t>; indirect_result_t operator*() const; // \notdef @@ -2407,7 +2407,7 @@ to families of algorithms. These group together iterator requirements of algorithm families. There are three relational concepts that specify -how element values are transferred between \libconcept{Readable} and +how element values are transferred between \libconcept{readable} and \libconcept{Writable} types: \libconcept{IndirectlyMovable}, \libconcept{IndirectlyCopyable}, and @@ -2430,14 +2430,14 @@ \pnum The \libconcept{IndirectlyMovable} concept specifies the relationship between -a \libconcept{Readable} type and a \libconcept{Writable} type between which +a \libconcept{readable} type and a \libconcept{Writable} type between which values may be moved. \indexlibrary{\idxcode{IndirectlyMovable}}% \begin{codeblock} template concept IndirectlyMovable = - Readable && + readable && Writable>; \end{codeblock} @@ -2445,7 +2445,7 @@ The \libconcept{IndirectlyMovableStorable} concept augments \libconcept{IndirectlyMovable} with additional requirements enabling the transfer to be performed through an intermediate object of the -\libconcept{Readable} type's value type. +\libconcept{readable} type's value type. \indexlibrary{\idxcode{IndirectlyMovableStorable}}% \begin{codeblock} @@ -2474,14 +2474,14 @@ \pnum The \libconcept{IndirectlyCopyable} concept specifies the relationship between -a \libconcept{Readable} type and a \libconcept{Writable} type between which +a \libconcept{readable} type and a \libconcept{Writable} type between which values may be copied. \indexlibrary{\idxcode{IndirectlyCopyable}}% \begin{codeblock} template concept IndirectlyCopyable = - Readable && + readable && Writable>; \end{codeblock} @@ -2489,7 +2489,7 @@ The \libconcept{IndirectlyCopyableStorable} concept augments \libconcept{IndirectlyCopyable} with additional requirements enabling the transfer to be performed through an intermediate object of the -\libconcept{Readable} type's value type. It also requires the capability +\libconcept{readable} type's value type. It also requires the capability to make copies of values. \indexlibrary{\idxcode{IndirectlyCopyableStorable}}% @@ -2519,13 +2519,13 @@ \pnum The \libconcept{IndirectlySwappable} concept specifies a swappable relationship -between the values referenced by two \libconcept{Readable} types. +between the values referenced by two \libconcept{readable} types. \indexlibrary{\idxcode{IndirectlySwappable}}% \begin{codeblock} template concept IndirectlySwappable = - Readable && Readable && + readable && readable && requires(I1& i1, I2& i2) { ranges::iter_swap(i1, i1); ranges::iter_swap(i2, i2); @@ -4840,7 +4840,7 @@ \pnum The expression in the requires clause is equivalent to: \begin{codeblock} -Readable && +readable && (requires(const I& i) { i.operator->(); } || is_reference_v> || constructible_from, iter_reference_t>) From 2283c9f974bea80f08e10f73009867c5a2ffa281 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:38:09 -0700 Subject: [PATCH 192/312] [everywhere] Rename concept 'Writable' to 'writable'. --- source/algorithms.tex | 40 ++++++++++++++++++++-------------------- source/iterators.tex | 36 ++++++++++++++++++------------------ 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 0863edd39a..56a61c4215 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1327,12 +1327,12 @@ template S, WeaklyIncrementable O, copy_constructible F, class Proj = identity> - requires Writable>> + requires writable>> constexpr unary_transform_result transform(I first1, S last1, O result, F op, Proj proj = {}); template - requires Writable, Proj>>> + requires writable, Proj>>> constexpr unary_transform_result, O> transform(R&& r, O result, F op, Proj proj = {}); @@ -1360,14 +1360,14 @@ template S1, InputIterator I2, Sentinel S2, WeaklyIncrementable O, copy_constructible F, class Proj1 = identity, class Proj2 = identity> - requires Writable, + requires writable, projected>> constexpr binary_transform_result transform(I1 first1, S1 last1, I2 first2, S2 last2, O result, F binary_op, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Writable, Proj1>, + requires writable, Proj1>, projected, Proj2>>> constexpr binary_transform_result, safe_iterator_t, O> transform(R1&& r1, R2&& r2, O result, @@ -1392,22 +1392,22 @@ namespace ranges { template S, class T1, class T2, class Proj = identity> - requires Writable && + requires writable && IndirectRelation, const T1*> constexpr I replace(I first, S last, const T1& old_value, const T2& new_value, Proj proj = {}); template - requires Writable, const T2&> && + requires writable, const T2&> && IndirectRelation, Proj>, const T1*> constexpr safe_iterator_t replace(R&& r, const T1& old_value, const T2& new_value, Proj proj = {}); template S, class T, class Proj = identity, IndirectUnaryPredicate> Pred> - requires Writable + requires writable constexpr I replace_if(I first, S last, Pred pred, const T& new_value, Proj proj = {}); template, Proj>> Pred> - requires Writable, const T&> + requires writable, const T&> constexpr safe_iterator_t replace_if(R&& r, Pred pred, const T& new_value, Proj proj = {}); } @@ -1506,13 +1506,13 @@ namespace ranges { template S, copy_constructible F> - requires invocable && Writable> + requires invocable && writable> constexpr O generate(O first, S last, F gen); template requires invocable && OutputRange> constexpr safe_iterator_t generate(R&& r, F gen); template - requires invocable && Writable> + requires invocable && writable> constexpr O generate_n(O first, iter_difference_t n, F gen); } @@ -4567,25 +4567,25 @@ template S, WeaklyIncrementable O, copy_constructible F, class Proj = identity> - requires Writable>> + requires writable>> constexpr ranges::unary_transform_result ranges::transform(I first1, S last1, O result, F op, Proj proj = {}); template - requires Writable, Proj>>> + requires writable, Proj>>> constexpr ranges::unary_transform_result, O> ranges::transform(R&& r, O result, F op, Proj proj = {}); template S1, InputIterator I2, Sentinel S2, WeaklyIncrementable O, copy_constructible F, class Proj1 = identity, class Proj2 = identity> - requires Writable, + requires writable, projected>> constexpr ranges::binary_transform_result ranges::transform(I1 first1, S1 last1, I2 first2, S2 last2, O result, F binary_op, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Writable, Proj1>, + requires writable, Proj1>, projected, Proj2>>> constexpr ranges::binary_transform_result, safe_iterator_t, O> ranges::transform(R1&& r1, R2&& r2, O result, @@ -4685,22 +4685,22 @@ Predicate pred, const T& new_value); template S, class T1, class T2, class Proj = identity> - requires Writable && + requires writable && IndirectRelation, const T1*> constexpr I ranges::replace(I first, S last, const T1& old_value, const T2& new_value, Proj proj = {}); template - requires Writable, const T2&> && + requires writable, const T2&> && IndirectRelation, Proj>, const T1*> constexpr safe_iterator_t ranges::replace(R&& r, const T1& old_value, const T2& new_value, Proj proj = {}); template S, class T, class Proj = identity, IndirectUnaryPredicate> Pred> - requires Writable + requires writable constexpr I ranges::replace_if(I first, S last, Pred pred, const T& new_value, Proj proj = {}); template, Proj>> Pred> - requires Writable, const T&> + requires writable, const T&> constexpr safe_iterator_t ranges::replace_if(R&& r, Pred pred, const T& new_value, Proj proj = {}); \end{itemdecl} @@ -4911,13 +4911,13 @@ ForwardIterator first, Size n, Generator gen); template S, copy_constructible F> - requires invocable && Writable> + requires invocable && writable> constexpr O ranges::generate(O first, S last, F gen); template requires invocable && OutputRange> constexpr safe_iterator_t ranges::generate(R&& r, F gen); template - requires invocable && Writable> + requires invocable && writable> constexpr O ranges::generate_n(O first, iter_difference_t n, F gen); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index cdd30c4304..19eac15af2 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -89,9 +89,9 @@ using iter_common_reference_t = common_reference_t, iter_value_t&>; - // \ref{iterator.concept.writable}, concept \libconcept{Writable} + // \ref{iterator.concept.writable}, concept \libconcept{writable} template - concept Writable = @\seebelow@; + concept writable = @\seebelow@; // \ref{iterator.concept.winc}, concept \libconcept{WeaklyIncrementable} template @@ -1216,16 +1216,16 @@ exposition-only \placeholder{dereferenceable} concept\iref{iterator.synopsis}. \end{note} -\rSec3[iterator.concept.writable]{Concept \libconcept{Writable}} +\rSec3[iterator.concept.writable]{Concept \libconcept{writable}} \pnum -The \libconcept{Writable} concept specifies the requirements for writing a value +The \libconcept{writable} concept specifies the requirements for writing a value into an iterator's referenced object. -\indexlibrary{\idxcode{Writable}}% +\indexlibrary{\idxcode{writable}}% \begin{codeblock} template - concept Writable = + concept writable = requires(Out&& o, T&& t) { *o = std::forward(t); // not required to be equality-preserving *std::forward(o) = std::forward(t); // not required to be equality-preserving @@ -1239,7 +1239,7 @@ \pnum Let \tcode{E} be an an expression such that \tcode{decltype((E))} is \tcode{T}, and let \tcode{o} be a dereferenceable object of type \tcode{Out}. -\tcode{Out} and \tcode{T} model \tcode{\libconcept{Writable}} only if +\tcode{Out} and \tcode{T} model \tcode{\libconcept{writable}} only if \begin{itemize} \item If \tcode{Out} and \tcode{T} model @@ -1263,11 +1263,11 @@ \pnum \begin{note} -\tcode{Writable} has the awkward \tcode{const_cast} expressions to reject +\tcode{writable} has the awkward \tcode{const_cast} expressions to reject iterators with prvalue non-proxy reference types that permit rvalue assignment but do not also permit \tcode{const} rvalue assignment. Consequently, an iterator type \tcode{I} that returns \tcode{std::string} -by value does not model \tcode{\libconcept{Writable}}. +by value does not model \tcode{\libconcept{writable}}. \end{note} \rSec3[iterator.concept.winc]{Concept \libconcept{WeaklyIncrementable}} @@ -1629,7 +1629,7 @@ \pnum The \libconcept{OutputIterator} concept defines requirements for a type that can be used to write values (from the requirement for -\libconcept{Writable}\iref{iterator.concept.writable}) and which can be both pre- and post-incremented. +\libconcept{writable}\iref{iterator.concept.writable}) and which can be both pre- and post-incremented. \begin{note} Output iterators are not required to model \libconcept{equality_comparable}. \end{note} @@ -1639,7 +1639,7 @@ template concept OutputIterator = Iterator && - Writable && + writable && requires(I i, T&& t) { *i++ = std::forward(t); // not required to be equality-preserving }; @@ -2408,7 +2408,7 @@ of algorithm families. There are three relational concepts that specify how element values are transferred between \libconcept{readable} and -\libconcept{Writable} types: +\libconcept{writable} types: \libconcept{IndirectlyMovable}, \libconcept{IndirectlyCopyable}, and \libconcept{IndirectlySwappable}. @@ -2430,7 +2430,7 @@ \pnum The \libconcept{IndirectlyMovable} concept specifies the relationship between -a \libconcept{readable} type and a \libconcept{Writable} type between which +a \libconcept{readable} type and a \libconcept{writable} type between which values may be moved. \indexlibrary{\idxcode{IndirectlyMovable}}% @@ -2438,7 +2438,7 @@ template concept IndirectlyMovable = readable && - Writable>; + writable>; \end{codeblock} \pnum @@ -2452,7 +2452,7 @@ template concept IndirectlyMovableStorable = IndirectlyMovable && - Writable> && + writable> && movable> && constructible_from, iter_rvalue_reference_t> && assignable_from&, iter_rvalue_reference_t>; @@ -2474,7 +2474,7 @@ \pnum The \libconcept{IndirectlyCopyable} concept specifies the relationship between -a \libconcept{readable} type and a \libconcept{Writable} type between which +a \libconcept{readable} type and a \libconcept{writable} type between which values may be copied. \indexlibrary{\idxcode{IndirectlyCopyable}}% @@ -2482,7 +2482,7 @@ template concept IndirectlyCopyable = readable && - Writable>; + writable>; \end{codeblock} \pnum @@ -2497,7 +2497,7 @@ template concept IndirectlyCopyableStorable = IndirectlyCopyable && - Writable&> && + writable&> && copyable> && constructible_from, iter_reference_t> && assignable_from&, iter_reference_t>; From e8b6089675cebe62450f382c31e8434c5449fef4 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:39:36 -0700 Subject: [PATCH 193/312] [everywhere] Rename concept 'WeaklyIncrementable' to 'weakly_incrementable'. --- source/algorithms.tex | 132 +++++++++++++++++++++--------------------- source/iterators.tex | 36 ++++++------ source/ranges.tex | 6 +- 3 files changed, 87 insertions(+), 87 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 56a61c4215..c8c00f41bf 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1154,11 +1154,11 @@ } }; - template S, WeaklyIncrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr copy_result copy(I first, S last, O result); - template + template requires IndirectlyCopyable, O> constexpr copy_result, O> copy(R&& r, O result); @@ -1177,7 +1177,7 @@ template using copy_n_result = copy_result; - template + template requires IndirectlyCopyable constexpr copy_n_result copy_n(I first, iter_difference_t n, O result); @@ -1196,12 +1196,12 @@ template using copy_if_result = copy_result; - template S, WeaklyIncrementable O, class Proj = identity, + template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr copy_if_result copy_if(I first, S last, O result, Pred pred, Proj proj = {}); - template, Proj>> Pred> requires IndirectlyCopyable, O> constexpr copy_if_result, O> @@ -1241,11 +1241,11 @@ template using move_result = copy_result; - template S, WeaklyIncrementable O> + template S, weakly_incrementable O> requires IndirectlyMovable constexpr move_result move(I first, S last, O result); - template + template requires IndirectlyMovable, O> constexpr move_result, O> move(R&& r, O result); @@ -1325,12 +1325,12 @@ template using unary_transform_result = copy_result; - template S, WeaklyIncrementable O, + template S, weakly_incrementable O, copy_constructible F, class Proj = identity> requires writable>> constexpr unary_transform_result transform(I first1, S last1, O result, F op, Proj proj = {}); - template requires writable, Proj>>> constexpr unary_transform_result, O> @@ -1358,14 +1358,14 @@ }; template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, copy_constructible F, class Proj1 = identity, + weakly_incrementable O, copy_constructible F, class Proj1 = identity, class Proj2 = identity> requires writable, projected>> constexpr binary_transform_result transform(I1 first1, S1 last1, I2 first2, S2 last2, O result, F binary_op, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires writable, Proj1>, projected, Proj2>>> @@ -1576,13 +1576,13 @@ template using remove_copy_result = copy_result; - template S, WeaklyIncrementable O, class T, + template S, weakly_incrementable O, class T, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T*> constexpr remove_copy_result remove_copy(I first, S last, O result, const T& value, Proj proj = {}); - template + template requires IndirectlyCopyable, O> && IndirectRelation, Proj>, const T*> constexpr remove_copy_result, O> @@ -1591,12 +1591,12 @@ template using remove_copy_if_result = copy_result; - template S, WeaklyIncrementable O, + template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr remove_copy_if_result remove_copy_if(I first, S last, O result, Pred pred, Proj proj = {}); - template, Proj>> Pred> requires IndirectlyCopyable, O> constexpr remove_copy_if_result, O> @@ -1652,7 +1652,7 @@ template using unique_copy_result = copy_result; - template S, WeaklyIncrementable O, + template S, weakly_incrementable O, class Proj = identity, IndirectRelation> C = ranges::equal_to> requires IndirectlyCopyable && (ForwardIterator || @@ -1660,7 +1660,7 @@ IndirectlyCopyableStorable) constexpr unique_copy_result unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); - template, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && (ForwardIterator> || @@ -1700,11 +1700,11 @@ template using reverse_copy_result = copy_result; - template S, WeaklyIncrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr reverse_copy_result reverse_copy(I first, S last, O result); - template + template requires IndirectlyCopyable, O> constexpr reverse_copy_result, O> reverse_copy(R&& r, O result); @@ -1743,11 +1743,11 @@ template using rotate_copy_result = copy_result; - template S, WeaklyIncrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr rotate_copy_result rotate_copy(I first, I middle, S last, O result); - template + template requires IndirectlyCopyable, O> constexpr rotate_copy_result, O> rotate_copy(R&& r, iterator_t middle, O result); @@ -2183,13 +2183,13 @@ } }; - template S, WeaklyIncrementable O1, WeaklyIncrementable O2, + template S, weakly_incrementable O1, weakly_incrementable O2, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable && IndirectlyCopyable constexpr partition_copy_result partition_copy(I first, S last, O1 out_true, O2 out_false, Pred pred, Proj proj = {}); - template, Proj>> Pred> requires IndirectlyCopyable, O1> && @@ -2245,13 +2245,13 @@ using merge_result = binary_transform_result; template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, class Comp = ranges::less, class Proj1 = identity, + weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable constexpr merge_result merge(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr merge_result, safe_iterator_t, O> @@ -2354,13 +2354,13 @@ using set_union_result = binary_transform_result; template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, class Comp = ranges::less, + weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable constexpr set_union_result set_union(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_union_result, safe_iterator_t, O> @@ -2398,13 +2398,13 @@ using set_intersection_result = binary_transform_result; template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, class Comp = ranges::less, + weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable constexpr set_intersection_result set_intersection(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_intersection_result, safe_iterator_t, O> @@ -2442,13 +2442,13 @@ using set_difference_result = copy_result; template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, class Comp = ranges::less, + weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable constexpr set_difference_result set_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_difference_result, O> @@ -2486,14 +2486,14 @@ using set_symmetric_difference_result = binary_transform_result; template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, class Comp = ranges::less, + weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable constexpr set_symmetric_difference_result set_symmetric_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_symmetric_difference_result, safe_iterator_t, O> @@ -4061,10 +4061,10 @@ constexpr OutputIterator copy(InputIterator first, InputIterator last, OutputIterator result); -template S, WeaklyIncrementable O> +template S, weakly_incrementable O> requires IndirectlyCopyable constexpr ranges::copy_result ranges::copy(I first, S last, O result); -template +template requires IndirectlyCopyable, O> constexpr ranges::copy_result, O> ranges::copy(R&& r, O result); \end{itemdecl} @@ -4139,7 +4139,7 @@ ForwardIterator1 first, Size n, ForwardIterator2 result); -template +template requires IndirectlyCopyable constexpr ranges::copy_n_result ranges::copy_n(I first, iter_difference_t n, O result); @@ -4181,12 +4181,12 @@ ForwardIterator1 first, ForwardIterator1 last, ForwardIterator2 result, Predicate pred); -template S, WeaklyIncrementable O, class Proj = identity, +template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr ranges::copy_if_result ranges::copy_if(I first, S last, O result, Pred pred, Proj proj = {}); -template, Proj>> Pred> requires IndirectlyCopyable, O> constexpr ranges::copy_if_result, O> @@ -4305,11 +4305,11 @@ constexpr OutputIterator move(InputIterator first, InputIterator last, OutputIterator result); -template S, WeaklyIncrementable O> +template S, weakly_incrementable O> requires IndirectlyMovable constexpr ranges::move_result ranges::move(I first, S last, O result); -template +template requires IndirectlyMovable, O> constexpr ranges::move_result, O> ranges::move(R&& r, O result); @@ -4565,25 +4565,25 @@ ForwardIterator2 first2, ForwardIterator result, BinaryOperation binary_op); -template S, WeaklyIncrementable O, +template S, weakly_incrementable O, copy_constructible F, class Proj = identity> requires writable>> constexpr ranges::unary_transform_result ranges::transform(I first1, S last1, O result, F op, Proj proj = {}); -template requires writable, Proj>>> constexpr ranges::unary_transform_result, O> ranges::transform(R&& r, O result, F op, Proj proj = {}); template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, copy_constructible F, class Proj1 = identity, + weakly_incrementable O, copy_constructible F, class Proj1 = identity, class Proj2 = identity> requires writable, projected>> constexpr ranges::binary_transform_result ranges::transform(I1 first1, S1 last1, I2 first2, S2 last2, O result, F binary_op, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires writable, Proj1>, projected, Proj2>>> @@ -5057,23 +5057,23 @@ ForwardIterator1 first, ForwardIterator1 last, ForwardIterator2 result, Predicate pred); -template S, WeaklyIncrementable O, class T, +template S, weakly_incrementable O, class T, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T*> constexpr ranges::remove_copy_result ranges::remove_copy(I first, S last, O result, const T& value, Proj proj = {}); -template +template requires IndirectlyCopyable, O> && IndirectRelation, Proj>, const T*> constexpr ranges::remove_copy_result, O> ranges::remove_copy(R&& r, O result, const T& value, Proj proj = {}); -template S, WeaklyIncrementable O, +template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr ranges::remove_copy_if_result ranges::remove_copy_if(I first, S last, O result, Pred pred, Proj proj = {}); -template, Proj>> Pred> requires IndirectlyCopyable, O> constexpr ranges::remove_copy_if_result, O> @@ -5223,7 +5223,7 @@ ForwardIterator1 first, ForwardIterator1 last, ForwardIterator2 result, BinaryPredicate pred); -template S, WeaklyIncrementable O, +template S, weakly_incrementable O, class Proj = identity, IndirectRelation> C = ranges::equal_to> requires IndirectlyCopyable && (ForwardIterator || @@ -5231,7 +5231,7 @@ IndirectlyCopyableStorable) constexpr ranges::unique_copy_result ranges::unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); -template, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && (ForwardIterator> || @@ -5365,11 +5365,11 @@ BidirectionalIterator first, BidirectionalIterator last, ForwardIterator result); -template S, WeaklyIncrementable O> +template S, weakly_incrementable O> requires IndirectlyCopyable constexpr ranges::reverse_copy_result ranges::reverse_copy(I first, S last, O result); -template +template requires IndirectlyCopyable, O> constexpr ranges::reverse_copy_result, O> ranges::reverse_copy(R&& r, O result); @@ -5482,7 +5482,7 @@ ForwardIterator1 first, ForwardIterator1 middle, ForwardIterator1 last, ForwardIterator2 result); - template S, WeaklyIncrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr ranges::rotate_copy_result ranges::rotate_copy(I first, I middle, S last, O result); @@ -5520,7 +5520,7 @@ \end{itemdescr} \begin{itemdecl} -template +template requires IndirectlyCopyable, O> constexpr ranges::rotate_copy_result, O> ranges::rotate_copy(R&& r, iterator_t middle, O result); @@ -6760,13 +6760,13 @@ ForwardIterator first, ForwardIterator last, ForwardIterator1 out_true, ForwardIterator2 out_false, Predicate pred); -template S, WeaklyIncrementable O1, WeaklyIncrementable O2, +template S, weakly_incrementable O1, weakly_incrementable O2, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable && IndirectlyCopyable constexpr ranges::partition_copy_result ranges::partition_copy(I first, S last, O1 out_true, O2 out_false, Pred pred, Proj proj = {}); -template, Proj>> Pred> requires IndirectlyCopyable, O1> && @@ -6888,13 +6888,13 @@ ForwardIterator result, Compare comp); template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, class Comp = ranges::less, class Proj1 = identity, + weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable constexpr ranges::merge_result ranges::merge(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::merge_result, safe_iterator_t, O> @@ -7153,13 +7153,13 @@ ForwardIterator result, Compare comp); template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, class Comp = ranges::less, + weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable constexpr ranges::set_union_result ranges::set_union(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_union_result, safe_iterator_t, O> @@ -7248,13 +7248,13 @@ ForwardIterator result, Compare comp); template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, class Comp = ranges::less, + weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable constexpr ranges::set_intersection_result ranges::set_intersection(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_intersection_result, safe_iterator_t, O> @@ -7341,13 +7341,13 @@ ForwardIterator result, Compare comp); template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, class Comp = ranges::less, + weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable constexpr ranges::set_difference_result ranges::set_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_difference_result, O> @@ -7435,14 +7435,14 @@ ForwardIterator result, Compare comp); template S1, InputIterator I2, Sentinel S2, - WeaklyIncrementable O, class Comp = ranges::less, + weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable constexpr ranges::set_symmetric_difference_result ranges::set_symmetric_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_symmetric_difference_result, safe_iterator_t, O> diff --git a/source/iterators.tex b/source/iterators.tex index 19eac15af2..b8ebcf413a 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -93,9 +93,9 @@ template concept writable = @\seebelow@; - // \ref{iterator.concept.winc}, concept \libconcept{WeaklyIncrementable} + // \ref{iterator.concept.winc}, concept \libconcept{weakly_incrementable} template - concept WeaklyIncrementable = @\seebelow@; + concept weakly_incrementable = @\seebelow@; // \ref{iterator.concept.inc}, concept \libconcept{Incrementable} template @@ -165,7 +165,7 @@ template Proj> struct projected; - template + template struct incrementable_traits>; // \ref{alg.req}, common algorithm requirements @@ -668,7 +668,7 @@ it is often necessary to determine the difference type that corresponds to a particular incrementable type. Accordingly, it is required that if \tcode{WI} is the name of a type that models the -\libconcept{WeaklyIncrementable} concept\iref{iterator.concept.winc}, +\libconcept{weakly_incrementable} concept\iref{iterator.concept.winc}, the type \begin{codeblock} iter_difference_t @@ -1270,15 +1270,15 @@ by value does not model \tcode{\libconcept{writable}}. \end{note} -\rSec3[iterator.concept.winc]{Concept \libconcept{WeaklyIncrementable}} +\rSec3[iterator.concept.winc]{Concept \libconcept{weakly_incrementable}} \pnum -The \libconcept{WeaklyIncrementable} concept specifies the requirements on +The \libconcept{weakly_incrementable} concept specifies the requirements on types that can be incremented with the pre- and post-increment operators. The increment operations are not required to be equality-preserving, nor is the type required to be \libconcept{equality_comparable}. -\indexlibrary{\idxcode{WeaklyIncrementable}}% +\indexlibrary{\idxcode{weakly_incrementable}}% \begin{codeblock} template inline constexpr bool @\placeholder{is-integer-like}@ = @\seebelow@; @\itcorr[-2]@ // exposition only @@ -1287,7 +1287,7 @@ inline constexpr bool @\placeholder{is-signed-integer-like}@ = @\seebelow@; @\itcorr[-2]@ // exposition only template - concept WeaklyIncrementable = + concept weakly_incrementable = default_constructible && movable && requires(I i) { typename iter_difference_t; @@ -1403,7 +1403,7 @@ \pnum Let \tcode{i} be an object of type \tcode{I}. When \tcode{i} is in the domain of both pre- and post-increment, \tcode{i} is said to be \term{incrementable}. -\tcode{I} models \tcode{WeaklyIncrementable} only if +\tcode{I} models \tcode{weakly_incrementable} only if \begin{itemize} \item The expressions \tcode{++i} and \tcode{i++} have the same domain. @@ -1416,7 +1416,7 @@ \pnum \begin{note} -For \tcode{WeaklyIncrementable} types, \tcode{a} equals \tcode{b} does not imply that \tcode{++a} +For \tcode{weakly_incrementable} types, \tcode{a} equals \tcode{b} does not imply that \tcode{++a} equals \tcode{++b}. (Equality does not guarantee the substitution property or referential transparency.) Algorithms on weakly incrementable types should never attempt to pass through the same incrementable value twice. They should be single-pass algorithms. These algorithms @@ -1432,7 +1432,7 @@ and the type is required to be \libconcept{equality_comparable}. \begin{note} This supersedes the annotations on the increment expressions -in the definition of \tcode{WeaklyIncrementable}. +in the definition of \tcode{weakly_incrementable}. \end{note} \indexlibrary{\idxcode{Incrementable}}% @@ -1440,7 +1440,7 @@ template concept Incrementable = regular && - WeaklyIncrementable && + weakly_incrementable && requires(I i) { { i++ } -> same_as; }; @@ -1485,7 +1485,7 @@ requires(I i) { { *i } -> @\placeholder{can-reference}@; } && - WeaklyIncrementable; + weakly_incrementable; \end{codeblock} \pnum @@ -2391,7 +2391,7 @@ indirect_result_t operator*() const; // \notdef }; - template + template struct incrementable_traits> { using difference_type = iter_difference_t; }; @@ -2577,7 +2577,7 @@ concept Mergeable = InputIterator && InputIterator && - WeaklyIncrementable && + weakly_incrementable && IndirectlyCopyable && IndirectlyCopyable && IndirectStrictWeakOrder, projected>; @@ -4538,7 +4538,7 @@ \tcode{copy_if} using \tcode{move_iterator} and \tcode{move_sentinel}: \begin{codeblock} -template S, WeaklyIncrementable O, +template S, weakly_incrementable O, IndirectUnaryPredicate Pred> requires IndirectlyMovable void move_if(I first, S last, O out, Pred pred) { @@ -5554,7 +5554,7 @@ \indexlibrary{\idxcode{unreachable_sentinel_t}}% \pnum Class \tcode{unreachable_sentinel_t} can be used with -any \libconcept{WeaklyIncrementable} type +any \libconcept{weakly_incrementable} type to denote the ``upper bound'' of an unbounded interval. \pnum @@ -5575,7 +5575,7 @@ \begin{codeblock} namespace std { struct unreachable_sentinel_t { - template + template friend constexpr bool operator==(unreachable_sentinel_t, const I&) noexcept { return false; } }; diff --git a/source/ranges.tex b/source/ranges.tex index 7a4033429c..6d1fdfabee 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -144,7 +144,7 @@ namespace views { inline constexpr @\unspec@ single = @\unspec@; } // \ref{range.iota}, iota view - template + template requires @\placeholder{weakly-equality-comparable-with}@ class iota_view; @@ -1775,7 +1775,7 @@ concept @\placeholdernc{Advanceable}@ = // \expos @\seebelow@; - template + template requires @\placeholdernc{weakly-equality-comparable-with}@ class iota_view : public view_interface> { private: @@ -1823,7 +1823,7 @@ of width not less than the width of \tcode{W}. \begin{note} It is unspecified - whether this type satisfies \libconcept{WeaklyIncrementable}. + whether this type satisfies \libconcept{weakly_incrementable}. \end{note} \end{itemize} From 5f1f7d4efd99cfa2af9bbb317024062cb53f9f4d Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:40:19 -0700 Subject: [PATCH 194/312] [everywhere] Rename concept 'Incrementable' to 'incrementable'. --- source/iterators.tex | 18 +++++++++--------- source/ranges.tex | 8 ++++---- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index b8ebcf413a..f414cdd38b 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -97,9 +97,9 @@ template concept weakly_incrementable = @\seebelow@; - // \ref{iterator.concept.inc}, concept \libconcept{Incrementable} + // \ref{iterator.concept.inc}, concept \libconcept{incrementable} template - concept Incrementable = @\seebelow@; + concept incrementable = @\seebelow@; // \ref{iterator.concept.iterator}, concept \libconcept{Iterator} template @@ -1424,10 +1424,10 @@ template. \end{note} -\rSec3[iterator.concept.inc]{Concept \libconcept{Incrementable}} +\rSec3[iterator.concept.inc]{Concept \libconcept{incrementable}} \pnum -The \libconcept{Incrementable} concept specifies requirements on types that can be incremented with the pre- +The \libconcept{incrementable} concept specifies requirements on types that can be incremented with the pre- and post-increment operators. The increment operations are required to be equality-preserving, and the type is required to be \libconcept{equality_comparable}. \begin{note} @@ -1435,10 +1435,10 @@ in the definition of \tcode{weakly_incrementable}. \end{note} -\indexlibrary{\idxcode{Incrementable}}% +\indexlibrary{\idxcode{incrementable}}% \begin{codeblock} template - concept Incrementable = + concept incrementable = regular && weakly_incrementable && requires(I i) { @@ -1448,7 +1448,7 @@ \pnum Let \tcode{a} and \tcode{b} be incrementable objects of type \tcode{I}. -\tcode{I} models \libconcept{Incrementable} only if +\tcode{I} models \libconcept{incrementable} only if \begin{itemize} \item If \tcode{bool(a == b)} then \tcode{bool(a++ == b)}. @@ -1463,7 +1463,7 @@ \tcode{++a} equals \tcode{++b} (which is not true for weakly incrementable types) allows the use of multi-pass one-directional -algorithms with types that model \libconcept{Incrementable}. +algorithms with types that model \libconcept{incrementable}. \end{note} \rSec3[iterator.concept.iterator]{Concept \libconcept{Iterator}} @@ -1673,7 +1673,7 @@ concept ForwardIterator = InputIterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), forward_iterator_tag> && - Incrementable && + incrementable && Sentinel; \end{codeblock} diff --git a/source/ranges.tex b/source/ranges.tex index 6d1fdfabee..f084762026 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1832,7 +1832,7 @@ \begin{itemdecl} template concept @\placeholder{Decrementable}@ = - Incrementable && requires(I i) { + incrementable && requires(I i) { { --i } -> same_as; { i-- } -> same_as; }; @@ -2018,7 +2018,7 @@ constexpr iterator& operator++(); constexpr void operator++(int); - constexpr iterator operator++(int) requires Incrementable; + constexpr iterator operator++(int) requires incrementable; constexpr iterator& operator--() requires @\placeholdernc{Decrementable}@; constexpr iterator operator--(int) requires @\placeholdernc{Decrementable}@; @@ -2065,7 +2065,7 @@ \tcode{iterator_category} is \tcode{random_access_iterator_tag}. \item Otherwise, if \tcode{W} models \tcode{\placeholder{Decrementable}}, then \tcode{iterator_category} is \tcode{bidirectional_iterator_tag}. -\item Otherwise, if \tcode{W} models \libconcept{Incrementable}, then +\item Otherwise, if \tcode{W} models \libconcept{incrementable}, then \tcode{iterator_category} is \tcode{forward_iterator_tag}. \item Otherwise, \tcode{iterator_category} is \tcode{input_iterator_tag}. \end{itemize} @@ -2127,7 +2127,7 @@ \indexlibrary{\idxcode{operator++}!\idxcode{iota_view::iterator}} \begin{itemdecl} -constexpr iterator operator++(int) requires Incrementable; +constexpr iterator operator++(int) requires incrementable; \end{itemdecl} \begin{itemdescr} From 67ac9c7d90d40ebf324f43f0c14047a3cd8997b8 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:44:36 -0700 Subject: [PATCH 195/312] [everywhere] Rename concept 'Iterator' to 'input_or_output_iterator'. --- source/algorithms.tex | 8 ++--- source/iterators.tex | 68 +++++++++++++++++++++---------------------- source/ranges.tex | 26 ++++++++--------- 3 files changed, 51 insertions(+), 51 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index c8c00f41bf..4e8faecc6d 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1505,13 +1505,13 @@ ForwardIterator first, Size n, Generator gen); namespace ranges { - template S, copy_constructible F> + template S, copy_constructible F> requires invocable && writable> constexpr O generate(O first, S last, F gen); template requires invocable && OutputRange> constexpr safe_iterator_t generate(R&& r, F gen); - template + template requires invocable && writable> constexpr O generate_n(O first, iter_difference_t n, F gen); } @@ -4910,13 +4910,13 @@ ForwardIterator generate_n(ExecutionPolicy&& exec, ForwardIterator first, Size n, Generator gen); -template S, copy_constructible F> +template S, copy_constructible F> requires invocable && writable> constexpr O ranges::generate(O first, S last, F gen); template requires invocable && OutputRange> constexpr safe_iterator_t ranges::generate(R&& r, F gen); -template +template requires invocable && writable> constexpr O ranges::generate_n(O first, iter_difference_t n, F gen); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index f414cdd38b..9ecd0e300b 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -101,9 +101,9 @@ template concept incrementable = @\seebelow@; - // \ref{iterator.concept.iterator}, concept \libconcept{Iterator} + // \ref{iterator.concept.iterator}, concept \libconcept{input_or_output_iterator} template - concept Iterator = @\seebelow@; + concept input_or_output_iterator = @\seebelow@; // \ref{iterator.concept.sentinel}, concept \libconcept{Sentinel} template @@ -232,27 +232,27 @@ // \ref{range.iter.ops}, range iterator operations namespace ranges { // \ref{range.iter.op.advance}, \tcode{ranges::advance} - template + template constexpr void advance(I& i, iter_difference_t n); - template S> + template S> constexpr void advance(I& i, S bound); - template S> + template S> constexpr iter_difference_t advance(I& i, iter_difference_t n, S bound); // \ref{range.iter.op.distance}, \tcode{ranges::distance} - template S> + template S> constexpr iter_difference_t distance(I first, S last); template constexpr range_difference_t distance(R&& r); // \ref{range.iter.op.next}, \tcode{ranges::next} - template + template constexpr I next(I x); - template + template constexpr I next(I x, iter_difference_t n); - template S> + template S> constexpr I next(I x, S bound); - template S> + template S> constexpr I next(I x, iter_difference_t n, S bound); // \ref{range.iter.op.prev}, \tcode{ranges::prev} @@ -366,7 +366,7 @@ template class move_sentinel; // \ref{iterators.common}, common iterators - template S> + template S> requires (!same_as) class common_iterator; @@ -381,7 +381,7 @@ inline constexpr default_sentinel_t default_sentinel{}; // \ref{iterators.counted}, counted iterators - template class counted_iterator; + template class counted_iterator; template struct incrementable_traits>; @@ -522,7 +522,7 @@ \libconcept{ContiguousIterator}\iref{iterator.concept.contiguous}, respectively. The generic term \defn{iterator} refers to any type that models the -\libconcept{Iterator} concept\iref{iterator.concept.iterator}. +\libconcept{input_or_output_iterator} concept\iref{iterator.concept.iterator}. \pnum Forward iterators meet all the requirements of input @@ -1466,11 +1466,11 @@ algorithms with types that model \libconcept{incrementable}. \end{note} -\rSec3[iterator.concept.iterator]{Concept \libconcept{Iterator}} +\rSec3[iterator.concept.iterator]{Concept \libconcept{input_or_output_iterator}} \pnum -The \libconcept{Iterator} concept forms the basis -of the iterator concept taxonomy; every iterator models \libconcept{Iterator}. +The \libconcept{input_or_output_iterator} concept forms the basis +of the iterator concept taxonomy; every iterator models \libconcept{input_or_output_iterator}. This concept specifies operations for dereferencing and incrementing an iterator. Most algorithms will require additional operations to compare iterators with sentinels\iref{iterator.concept.sentinel}, to @@ -1478,10 +1478,10 @@ to provide a richer set of iterator movements (\ref{iterator.concept.forward}, \ref{iterator.concept.bidir}, \ref{iterator.concept.random.access}). -\indexlibrary{\idxcode{Iterator}}% +\indexlibrary{\idxcode{input_or_output_iterator}}% \begin{codeblock} template - concept Iterator = + concept input_or_output_iterator = requires(I i) { { *i } -> @\placeholder{can-reference}@; } && @@ -1491,14 +1491,14 @@ \pnum \begin{note} Unlike the \oldconcept{Iterator} requirements, -the \libconcept{Iterator} concept does not require copyability. +the \libconcept{input_or_output_iterator} concept does not require copyability. \end{note} \rSec3[iterator.concept.sentinel]{Concept \libconcept{Sentinel}} \pnum The \libconcept{Sentinel} concept specifies the relationship -between an \libconcept{Iterator} type and a \libconcept{semiregular} type +between an \libconcept{input_or_output_iterator} type and a \libconcept{semiregular} type whose values denote a range. \indexlibrary{\idxcode{Sentinel}}% @@ -1506,7 +1506,7 @@ template concept Sentinel = semiregular && - Iterator && + input_or_output_iterator && @\placeholder{weakly-equality-comparable-with}@; // See \ref{concept.equalitycomparable} \end{itemdecl} @@ -1536,7 +1536,7 @@ \pnum The \libconcept{SizedSentinel} concept specifies -requirements on an \libconcept{Iterator} and a \libconcept{Sentinel} +requirements on an \libconcept{input_or_output_iterator} and a \libconcept{Sentinel} that allow the use of the \tcode{-} operator to compute the distance between them in constant time. @@ -1618,7 +1618,7 @@ \begin{codeblock} template concept InputIterator = - Iterator && + input_or_output_iterator && readable && requires { typename @\placeholdernc{ITER_CONCEPT}@(I); } && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), input_iterator_tag>; @@ -1638,7 +1638,7 @@ \begin{codeblock} template concept OutputIterator = - Iterator && + input_or_output_iterator && writable && requires(I i, T&& t) { *i++ = std::forward(t); // not required to be equality-preserving @@ -2838,7 +2838,7 @@ \indexlibrary{\idxcode{advance}}% \begin{itemdecl} -template +template constexpr void ranges::advance(I& i, iter_difference_t n); \end{itemdecl} @@ -2861,7 +2861,7 @@ \indexlibrary{\idxcode{advance}}% \begin{itemdecl} -template S> +template S> constexpr void ranges::advance(I& i, S bound); \end{itemdecl} @@ -2884,7 +2884,7 @@ \indexlibrary{\idxcode{advance}}% \begin{itemdecl} -template S> +template S> constexpr iter_difference_t ranges::advance(I& i, iter_difference_t n, S bound); \end{itemdecl} @@ -2926,7 +2926,7 @@ \rSec3[range.iter.op.distance]{\tcode{ranges::distance}} \indexlibrary{\idxcode{distance}}% \begin{itemdecl} -template S> +template S> constexpr iter_difference_t ranges::distance(I first, S last); \end{itemdecl} @@ -2971,7 +2971,7 @@ \indexlibrary{\idxcode{next}}% \begin{itemdecl} -template +template constexpr I ranges::next(I x); \end{itemdecl} @@ -2982,7 +2982,7 @@ \indexlibrary{\idxcode{next}}% \begin{itemdecl} -template +template constexpr I ranges::next(I x, iter_difference_t n); \end{itemdecl} @@ -2993,7 +2993,7 @@ \indexlibrary{\idxcode{next}}% \begin{itemdecl} -template S> +template S> constexpr I ranges::next(I x, S bound); \end{itemdecl} @@ -3004,7 +3004,7 @@ \indexlibrary{\idxcode{next}}% \begin{itemdecl} -template S> +template S> constexpr I ranges::next(I x, iter_difference_t n, S bound); \end{itemdecl} @@ -4652,7 +4652,7 @@ \indexlibrary{\idxcode{common_iterator}}% \begin{codeblock} namespace std { - template S> + template S> requires (!same_as) class common_iterator { public: @@ -5071,7 +5071,7 @@ \indexlibrary{\idxcode{counted_iterator}}% \begin{codeblock} namespace std { - template + template class counted_iterator { public: using iterator_type = I; diff --git a/source/ranges.tex b/source/ranges.tex index f084762026..7a832a3652 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -112,7 +112,7 @@ // \ref{range.subrange}, sub-ranges enum class subrange_kind : bool { unsized, sized }; - template S = I, subrange_kind K = @\seebelow@> + template S = I, subrange_kind K = @\seebelow@> requires (K == subrange_kind::sized || !SizedSentinel) class subrange; @@ -317,11 +317,11 @@ \item Otherwise, if \tcode{E} is an lvalue, \tcode{\placeholdernc{decay-copy}(E.begin())} - if it is a valid expression and its type \tcode{I} models \tcode{Iterator}. + if it is a valid expression and its type \tcode{I} models \tcode{input_or_output_iterator}. \item Otherwise, \tcode{\placeholdernc{decay-copy}(begin(E))} if it is a - valid expression and its type \tcode{I} models \tcode{Iterator} with overload + valid expression and its type \tcode{I} models \tcode{input_or_output_iterator} with overload resolution performed in a context that includes the declarations: \begin{codeblock} template void begin(T&&) = delete; @@ -341,7 +341,7 @@ \pnum \begin{note} Whenever \tcode{ranges::begin(E)} is a valid expression, its type models -\tcode{Iterator}. +\tcode{input_or_output_iterator}. \end{note} \rSec2[range.access.end]{\tcode{ranges::end}} @@ -404,7 +404,7 @@ \pnum \begin{note} Whenever \tcode{ranges::cbegin(E)} is a valid expression, its type models -\tcode{Iterator}. +\tcode{input_or_output_iterator}. \end{note} \rSec2[range.access.cend]{\tcode{ranges::cend}} @@ -437,11 +437,11 @@ \begin{itemize} \item If \tcode{E} is an lvalue, \tcode{\placeholdernc{decay-copy}(E.rbegin())} - if it is a valid expression and its type \tcode{I} models \tcode{Iterator}. + if it is a valid expression and its type \tcode{I} models \tcode{input_or_output_iterator}. \item Otherwise, \tcode{\placeholdernc{decay-copy}(rbegin(E))} if it is a valid - expression and its type \tcode{I} models \tcode{Iterator} with overload + expression and its type \tcode{I} models \tcode{input_or_output_iterator} with overload resolution performed in a context that includes the declaration: \begin{codeblock} template void rbegin(T&&) = delete; @@ -466,7 +466,7 @@ \pnum \begin{note} Whenever \tcode{ranges::rbegin(E)} is a valid expression, its type models -\tcode{Iterator}. +\tcode{input_or_output_iterator}. \end{note} \rSec2[range.access.rend]{\tcode{ranges::rend}} @@ -530,7 +530,7 @@ \pnum \begin{note} Whenever \tcode{ranges::crbegin(E)} is a valid expression, its -type models \tcode{Iterator}. +type models \tcode{input_or_output_iterator}. \end{note} \rSec2[range.access.crend]{\tcode{ranges::crend}} @@ -703,7 +703,7 @@ Ranges are an abstraction that allow a \Cpp{} program to operate on elements of data structures uniformly. Calling \tcode{ranges::begin} on a range returns an object -whose type models \libconcept{Iterator}\iref{iterator.concept.iterator}. +whose type models \libconcept{input_or_output_iterator}\iref{iterator.concept.iterator}. Calling \tcode{ranges::end} on a range returns an object whose type \tcode{S}, together with the type \tcode{I} of the object returned by \tcode{ranges::begin}, models \tcode{\libconcept{Sentinel}}. @@ -1236,7 +1236,7 @@ !Range && @\placeholdernc{pair-like}@ && Sentinel, tuple_element_t<0, T>>; - template S = I, subrange_kind K = + template S = I, subrange_kind K = SizedSentinel ? subrange_kind::sized : subrange_kind::unsized> requires (K == subrange_kind::sized || !SizedSentinel) class subrange : public view_interface> { @@ -1301,7 +1301,7 @@ friend constexpr S end(subrange&& r) { return r.end(); } }; - template S> + template S> subrange(I, S, @\placeholdernc{make-unsigned-like-t}@(iter_difference_t)) -> subrange; @@ -5251,7 +5251,7 @@ Then the expression \tcode{views::counted(E, F)} is expression-equivalent to: \begin{itemize} -\item If \tcode{T} models \libconcept{Iterator} and +\item If \tcode{T} models \libconcept{input_or_output_iterator} and \tcode{decltype((F))} models \tcode{\libconcept{convertible_to}>}, \begin{itemize} \item \tcode{subrange\{E, E + static_cast>(F)\}} From 188762bdc3760910a5ff3e960910977a460e0cc3 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:47:31 -0700 Subject: [PATCH 196/312] [everywhere] Rename concept 'Sentinel' to 'sentinel_for'. --- source/algorithms.tex | 316 +++++++++++++++++++++--------------------- source/iterators.tex | 70 +++++----- source/ranges.tex | 26 ++-- source/utilities.tex | 12 +- 4 files changed, 212 insertions(+), 212 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 4e8faecc6d..0ca370f968 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -619,7 +619,7 @@ ForwardIterator first, ForwardIterator last, Predicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool all_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool any_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool none_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryInvocable> Fun> constexpr for_each_result for_each(I first, S last, Fun f, Proj proj = {}); @@ -725,21 +725,21 @@ Predicate pred); namespace ranges { - template S, class T, class Proj = identity> + template S, class T, class Proj = identity> requires IndirectRelation, const T*> constexpr I find(I first, S last, const T& value, Proj proj = {}); template requires IndirectRelation, Proj>, const T*> constexpr safe_iterator_t find(R&& r, const T& value, Proj proj = {}); - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I find_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> constexpr safe_iterator_t find_if(R&& r, Pred pred, Proj proj = {}); - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I find_if_not(I first, S last, Pred pred, Proj proj = {}); template S1, ForwardIterator I2, Sentinel S2, + template S1, ForwardIterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr subrange @@ -810,7 +810,7 @@ BinaryPredicate pred); namespace ranges { - template S1, ForwardIterator I2, Sentinel S2, + template S1, ForwardIterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectRelation, projected> Pred = ranges::equal_to> @@ -845,7 +845,7 @@ BinaryPredicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectRelation> Pred = ranges::equal_to> constexpr I adjacent_find(I first, S last, Pred pred = {}, Proj proj = {}); @@ -872,7 +872,7 @@ ForwardIterator first, ForwardIterator last, Predicate pred); namespace ranges { - template S, class T, class Proj = identity> + template S, class T, class Proj = identity> requires IndirectRelation, const T*> constexpr iter_difference_t count(I first, S last, const T& value, Proj proj = {}); @@ -880,7 +880,7 @@ requires IndirectRelation, Proj>, const T*> constexpr range_difference_t count(R&& r, const T& value, Proj proj = {}); - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr iter_difference_t count_if(I first, S last, Pred pred, Proj proj = {}); @@ -951,7 +951,7 @@ } }; - template S1, InputIterator I2, Sentinel S2, + template S1, InputIterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectRelation, projected> Pred = ranges::equal_to> @@ -1002,7 +1002,7 @@ BinaryPredicate pred); namespace ranges { - template S1, InputIterator I2, Sentinel S2, + template S1, InputIterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr bool equal(I1 first1, S1 last1, I2 first2, S2 last2, @@ -1031,8 +1031,8 @@ BinaryPredicate pred); namespace ranges { - template S1, ForwardIterator I2, - Sentinel S2, class Pred = ranges::equal_to, class Proj1 = identity, + template S1, ForwardIterator I2, + sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr bool is_permutation(I1 first1, S1 last1, I2 first2, S2 last2, @@ -1069,8 +1069,8 @@ BinaryPredicate pred); namespace ranges { - template S1, ForwardIterator I2, - Sentinel S2, class Pred = ranges::equal_to, + template S1, ForwardIterator I2, + sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr subrange @@ -1107,7 +1107,7 @@ BinaryPredicate pred); namespace ranges { - template S, class T, + template S, class T, class Pred = ranges::equal_to, class Proj = identity> requires IndirectlyComparable constexpr subrange @@ -1154,7 +1154,7 @@ } }; - template S, weakly_incrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr copy_result copy(I first, S last, O result); @@ -1196,7 +1196,7 @@ template using copy_if_result = copy_result; - template S, weakly_incrementable O, class Proj = identity, + template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr copy_if_result @@ -1217,7 +1217,7 @@ template using copy_backward_result = copy_result; - template S1, BidirectionalIterator I2> + template S1, BidirectionalIterator I2> requires IndirectlyCopyable constexpr copy_backward_result copy_backward(I1 first, S1 last, I2 result); @@ -1241,7 +1241,7 @@ template using move_result = copy_result; - template S, weakly_incrementable O> + template S, weakly_incrementable O> requires IndirectlyMovable constexpr move_result move(I first, S last, O result); @@ -1260,7 +1260,7 @@ template using move_backward_result = copy_result; - template S1, BidirectionalIterator I2> + template S1, BidirectionalIterator I2> requires IndirectlyMovable constexpr move_backward_result move_backward(I1 first, S1 last, I2 result); @@ -1283,7 +1283,7 @@ template using swap_ranges_result = mismatch_result; - template S1, InputIterator I2, Sentinel S2> + template S1, InputIterator I2, sentinel_for S2> requires IndirectlySwappable constexpr swap_ranges_result swap_ranges(I1 first1, S1 last1, I2 first2, S2 last2); @@ -1325,7 +1325,7 @@ template using unary_transform_result = copy_result; - template S, weakly_incrementable O, + template S, weakly_incrementable O, copy_constructible F, class Proj = identity> requires writable>> constexpr unary_transform_result @@ -1357,7 +1357,7 @@ } }; - template S1, InputIterator I2, Sentinel S2, + template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, copy_constructible F, class Proj1 = identity, class Proj2 = identity> requires writable, @@ -1391,7 +1391,7 @@ Predicate pred, const T& new_value); namespace ranges { - template S, class T1, class T2, class Proj = identity> + template S, class T1, class T2, class Proj = identity> requires writable && IndirectRelation, const T1*> constexpr I @@ -1401,7 +1401,7 @@ IndirectRelation, Proj>, const T1*> constexpr safe_iterator_t replace(R&& r, const T1& old_value, const T2& new_value, Proj proj = {}); - template S, class T, class Proj = identity, + template S, class T, class Proj = identity, IndirectUnaryPredicate> Pred> requires writable constexpr I replace_if(I first, S last, Pred pred, const T& new_value, Proj proj = {}); @@ -1436,7 +1436,7 @@ template using replace_copy_result = copy_result; - template S, class T1, class T2, OutputIterator O, + template S, class T1, class T2, OutputIterator O, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T1*> @@ -1454,7 +1454,7 @@ template using replace_copy_if_result = copy_result; - template S, class T, OutputIterator O, + template S, class T, OutputIterator O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr replace_copy_if_result @@ -1482,7 +1482,7 @@ ForwardIterator first, Size n, const T& value); namespace ranges { - template O, Sentinel S> + template O, sentinel_for S> constexpr O fill(O first, S last, const T& value); template R> constexpr safe_iterator_t fill(R&& r, const T& value); @@ -1505,7 +1505,7 @@ ForwardIterator first, Size n, Generator gen); namespace ranges { - template S, copy_constructible F> + template S, copy_constructible F> requires invocable && writable> constexpr O generate(O first, S last, F gen); template @@ -1533,7 +1533,7 @@ Predicate pred); namespace ranges { - template S, class T, class Proj = identity> + template S, class T, class Proj = identity> requires IndirectRelation, const T*> constexpr subrange remove(I first, S last, const T& value, Proj proj = {}); template @@ -1541,7 +1541,7 @@ IndirectRelation, Proj>, const T*> constexpr safe_subrange_t remove(R&& r, const T& value, Proj proj = {}); - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr subrange remove_if(I first, S last, Pred pred, Proj proj = {}); template using remove_copy_result = copy_result; - template S, weakly_incrementable O, class T, + template S, weakly_incrementable O, class T, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T*> @@ -1591,7 +1591,7 @@ template using remove_copy_if_result = copy_result; - template S, weakly_incrementable O, + template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr remove_copy_if_result @@ -1618,7 +1618,7 @@ BinaryPredicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectRelation> C = ranges::equal_to> constexpr subrange unique(I first, S last, C comp = {}, Proj proj = {}); template using unique_copy_result = copy_result; - template S, weakly_incrementable O, + template S, weakly_incrementable O, class Proj = identity, IndirectRelation> C = ranges::equal_to> requires IndirectlyCopyable && (ForwardIterator || @@ -1678,7 +1678,7 @@ BidirectionalIterator first, BidirectionalIterator last); namespace ranges { - template S> + template S> requires Permutable constexpr I reverse(I first, S last); template @@ -1700,7 +1700,7 @@ template using reverse_copy_result = copy_result; - template S, weakly_incrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr reverse_copy_result reverse_copy(I first, S last, O result); @@ -1722,7 +1722,7 @@ ForwardIterator last); namespace ranges { - template S> + template S> constexpr subrange rotate(I first, I middle, S last); template requires Permutable> @@ -1743,7 +1743,7 @@ template using rotate_copy_result = copy_result; - template S, weakly_incrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr rotate_copy_result rotate_copy(I first, I middle, S last, O result); @@ -1767,7 +1767,7 @@ UniformRandomBitGenerator&& g); namespace ranges { - template S, class Gen> + template S, class Gen> requires Permutable && UniformRandomBitGenerator> I shuffle(I first, S last, Gen&& g); @@ -1813,7 +1813,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -1838,7 +1838,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable I stable_sort(I first, S last, Comp comp = {}, Proj proj = {}); @@ -1868,7 +1868,7 @@ RandomAccessIterator last, Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -1909,7 +1909,7 @@ namespace ranges { template using partial_sort_copy_result = copy_result; - template S1, RandomAccessIterator I2, Sentinel S2, + template S1, RandomAccessIterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable && Sortable && IndirectStrictWeakOrder, projected> @@ -1941,7 +1941,7 @@ Compare comp); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool is_sorted(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I is_sorted_until(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -2015,7 +2015,7 @@ const T& value, Compare comp); namespace ranges { - template S, class T, class Proj = identity, + template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I lower_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -2036,7 +2036,7 @@ const T& value, Compare comp); namespace ranges { - template S, class T, class Proj = identity, + template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I upper_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template S, class T, class Proj = identity, + template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr subrange equal_range(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -2077,7 +2077,7 @@ const T& value, Compare comp); namespace ranges { - template S, class T, class Proj = identity, + template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool binary_search(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -2096,7 +2096,7 @@ ForwardIterator first, ForwardIterator last, Predicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool is_partitioned(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr subrange partition(I first, S last, Pred pred, Proj proj = {}); @@ -2137,7 +2137,7 @@ Predicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> requires Permutable subrange stable_partition(I first, S last, Pred pred, Proj proj = {}); @@ -2183,7 +2183,7 @@ } }; - template S, weakly_incrementable O1, weakly_incrementable O2, + template S, weakly_incrementable O1, weakly_incrementable O2, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable && IndirectlyCopyable constexpr partition_copy_result @@ -2204,7 +2204,7 @@ Predicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I partition_point(I first, S last, Pred pred, Proj proj = {}); template using merge_result = binary_transform_result; - template S1, InputIterator I2, Sentinel S2, + template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -2279,7 +2279,7 @@ BidirectionalIterator last, Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable I inplace_merge(I first, I middle, S last, Comp comp = {}, Proj proj = {}); @@ -2310,7 +2310,7 @@ Compare comp); namespace ranges { - template S1, InputIterator I2, Sentinel S2, + template S1, InputIterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectStrictWeakOrder, projected> Comp = ranges::less> @@ -2353,7 +2353,7 @@ template using set_union_result = binary_transform_result; - template S1, InputIterator I2, Sentinel S2, + template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -2397,7 +2397,7 @@ template using set_intersection_result = binary_transform_result; - template S1, InputIterator I2, Sentinel S2, + template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -2441,7 +2441,7 @@ template using set_difference_result = copy_result; - template S1, InputIterator I2, Sentinel S2, + template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -2485,7 +2485,7 @@ template using set_symmetric_difference_result = binary_transform_result; - template S1, InputIterator I2, Sentinel S2, + template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -2509,7 +2509,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -2527,7 +2527,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -2545,7 +2545,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -2563,7 +2563,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -2588,7 +2588,7 @@ Compare comp); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool is_heap(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I is_heap_until(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I min_element(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I max_element(I first, S last, Comp comp = {}, Proj proj = {}); template using minmax_element_result = minmax_result; - template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr minmax_element_result minmax_element(I first, S last, Comp comp = {}, Proj proj = {}); @@ -2815,7 +2815,7 @@ Compare comp); namespace ranges { - template S1, InputIterator I2, Sentinel S2, + template S1, InputIterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectStrictWeakOrder, projected> Comp = ranges::less> @@ -2858,7 +2858,7 @@ I in; }; - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr next_permutation_result @@ -2881,7 +2881,7 @@ template using prev_permutation_result = next_permutation_result; - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr prev_permutation_result @@ -2907,7 +2907,7 @@ bool all_of(ExecutionPolicy&& exec, ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool ranges::all_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool ranges::any_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool ranges::none_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryInvocable> Fun> constexpr ranges::for_each_result ranges::for_each(I first, S last, Fun f, Proj proj = {}); @@ -3223,21 +3223,21 @@ ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class T, class Proj = identity> +template S, class T, class Proj = identity> requires IndirectRelation, const T*> constexpr I ranges::find(I first, S last, const T& value, Proj proj = {}); template requires IndirectRelation, Proj>, const T*> constexpr safe_iterator_t ranges::find(R&& r, const T& value, Proj proj = {}); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I ranges::find_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> constexpr safe_iterator_t ranges::find_if(R&& r, Pred pred, Proj proj = {}); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I ranges::find_if_not(I first, S last, Pred pred, Proj proj = {}); template S1, ForwardIterator I2, Sentinel S2, +template S1, ForwardIterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr subrange @@ -3383,7 +3383,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, BinaryPredicate pred); -template S1, ForwardIterator I2, Sentinel S2, +template S1, ForwardIterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectRelation, projected> Pred = ranges::equal_to> @@ -3450,7 +3450,7 @@ ForwardIterator first, ForwardIterator last, BinaryPredicate pred); -template S, class Proj = identity, +template S, class Proj = identity, IndirectRelation> Pred = ranges::equal_to> constexpr I ranges::adjacent_find(I first, S last, Pred pred = {}, Proj proj = {}); template S, class T, class Proj = identity> +template S, class T, class Proj = identity> requires IndirectRelation, const T*> constexpr iter_difference_t ranges::count(I first, S last, const T& value, Proj proj = {}); @@ -3515,7 +3515,7 @@ requires IndirectRelation, Proj>, const T*> constexpr range_difference_t ranges::count(R&& r, const T& value, Proj proj = {}); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr iter_difference_t ranges::count_if(I first, S last, Pred pred, Proj proj = {}); @@ -3604,7 +3604,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, BinaryPredicate pred); -template S1, InputIterator I2, Sentinel S2, +template S1, InputIterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectRelation, projected> Pred = ranges::equal_to> @@ -3697,7 +3697,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, BinaryPredicate pred); -template S1, InputIterator I2, Sentinel S2, +template S1, InputIterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr bool ranges::equal(I1 first1, S1 last1, I2 first2, S2 last2, @@ -3828,8 +3828,8 @@ \indexlibrary{\idxcode{is_permutation}}% \begin{itemdecl} -template S1, ForwardIterator I2, - Sentinel S2, class Pred = ranges::equal_to, class Proj1 = identity, +template S1, ForwardIterator I2, + sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr bool ranges::is_permutation(I1 first1, S1 last1, I2 first2, S2 last2, @@ -3916,8 +3916,8 @@ \indexlibrary{\idxcode{search}}% \begin{itemdecl} -template S1, ForwardIterator I2, - Sentinel S2, class Pred = ranges::equal_to, +template S1, ForwardIterator I2, + sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr subrange @@ -4004,7 +4004,7 @@ \indexlibrary{\idxcode{search_n}}% \begin{itemdecl} -template S, class T, +template S, class T, class Pred = ranges::equal_to, class Proj = identity> requires IndirectlyComparable constexpr subrange @@ -4061,7 +4061,7 @@ constexpr OutputIterator copy(InputIterator first, InputIterator last, OutputIterator result); -template S, weakly_incrementable O> +template S, weakly_incrementable O> requires IndirectlyCopyable constexpr ranges::copy_result ranges::copy(I first, S last, O result); template @@ -4181,7 +4181,7 @@ ForwardIterator1 first, ForwardIterator1 last, ForwardIterator2 result, Predicate pred); -template S, weakly_incrementable O, class Proj = identity, +template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr ranges::copy_if_result @@ -4253,7 +4253,7 @@ BidirectionalIterator1 last, BidirectionalIterator2 result); -template S1, BidirectionalIterator I2> +template S1, BidirectionalIterator I2> requires IndirectlyCopyable constexpr ranges::copy_backward_result ranges::copy_backward(I1 first, S1 last, I2 result); @@ -4305,7 +4305,7 @@ constexpr OutputIterator move(InputIterator first, InputIterator last, OutputIterator result); -template S, weakly_incrementable O> +template S, weakly_incrementable O> requires IndirectlyMovable constexpr ranges::move_result ranges::move(I first, S last, O result); @@ -4395,7 +4395,7 @@ move_backward(BidirectionalIterator1 first, BidirectionalIterator1 last, BidirectionalIterator2 result); -template S1, BidirectionalIterator I2> +template S1, BidirectionalIterator I2> requires IndirectlyMovable constexpr ranges::move_backward_result ranges::move_backward(I1 first, S1 last, I2 result); @@ -4462,7 +4462,7 @@ ForwardIterator1 first1, ForwardIterator1 last1, ForwardIterator2 first2); -template S1, InputIterator I2, Sentinel S2> +template S1, InputIterator I2, sentinel_for S2> requires IndirectlySwappable constexpr ranges::swap_ranges_result ranges::swap_ranges(I1 first1, S1 last1, I2 first2, S2 last2); @@ -4565,7 +4565,7 @@ ForwardIterator2 first2, ForwardIterator result, BinaryOperation binary_op); -template S, weakly_incrementable O, +template S, weakly_incrementable O, copy_constructible F, class Proj = identity> requires writable>> constexpr ranges::unary_transform_result @@ -4575,7 +4575,7 @@ requires writable, Proj>>> constexpr ranges::unary_transform_result, O> ranges::transform(R&& r, O result, F op, Proj proj = {}); -template S1, InputIterator I2, Sentinel S2, +template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, copy_constructible F, class Proj1 = identity, class Proj2 = identity> requires writable, @@ -4684,7 +4684,7 @@ ForwardIterator first, ForwardIterator last, Predicate pred, const T& new_value); -template S, class T1, class T2, class Proj = identity> +template S, class T1, class T2, class Proj = identity> requires writable && IndirectRelation, const T1*> constexpr I @@ -4694,7 +4694,7 @@ IndirectRelation, Proj>, const T1*> constexpr safe_iterator_t ranges::replace(R&& r, const T1& old_value, const T2& new_value, Proj proj = {}); -template S, class T, class Proj = identity, +template S, class T, class Proj = identity, IndirectUnaryPredicate> Pred> requires writable constexpr I ranges::replace_if(I first, S last, Pred pred, const T& new_value, Proj proj = {}); @@ -4763,7 +4763,7 @@ ForwardIterator2 result, Predicate pred, const T& new_value); -template S, class T1, class T2, OutputIterator O, +template S, class T1, class T2, OutputIterator O, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T1*> @@ -4778,7 +4778,7 @@ ranges::replace_copy(R&& r, O result, const T1& old_value, const T2& new_value, Proj proj = {}); -template S, class T, OutputIterator O, +template S, class T, OutputIterator O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr ranges::replace_copy_if_result @@ -4857,7 +4857,7 @@ ForwardIterator first, Size n, const T& value); -template O, Sentinel S> +template O, sentinel_for S> constexpr O ranges::fill(O first, S last, const T& value); template R> constexpr safe_iterator_t ranges::fill(R&& r, const T& value); @@ -4910,7 +4910,7 @@ ForwardIterator generate_n(ExecutionPolicy&& exec, ForwardIterator first, Size n, Generator gen); -template S, copy_constructible F> +template S, copy_constructible F> requires invocable && writable> constexpr O ranges::generate(O first, S last, F gen); template @@ -4966,7 +4966,7 @@ ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class T, class Proj = identity> +template S, class T, class Proj = identity> requires IndirectRelation, const T*> constexpr subrange ranges::remove(I first, S last, const T& value, Proj proj = {}); template @@ -4974,7 +4974,7 @@ IndirectRelation, Proj>, const T*> constexpr safe_subrange_t ranges::remove(R&& r, const T& value, Proj proj = {}); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr subrange ranges::remove_if(I first, S last, Pred pred, Proj proj = {}); template S, weakly_incrementable O, class T, +template S, weakly_incrementable O, class T, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T*> @@ -5068,7 +5068,7 @@ IndirectRelation, Proj>, const T*> constexpr ranges::remove_copy_result, O> ranges::remove_copy(R&& r, O result, const T& value, Proj proj = {}); -template S, weakly_incrementable O, +template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr ranges::remove_copy_if_result @@ -5145,7 +5145,7 @@ ForwardIterator first, ForwardIterator last, BinaryPredicate pred); -template S, class Proj = identity, +template S, class Proj = identity, IndirectRelation> C = ranges::equal_to> constexpr subrange ranges::unique(I first, S last, C comp = {}, Proj proj = {}); template S, weakly_incrementable O, +template S, weakly_incrementable O, class Proj = identity, IndirectRelation> C = ranges::equal_to> requires IndirectlyCopyable && (ForwardIterator || @@ -5322,7 +5322,7 @@ void reverse(ExecutionPolicy&& exec, BidirectionalIterator first, BidirectionalIterator last); -template S> +template S> requires Permutable constexpr I ranges::reverse(I first, S last); template @@ -5365,7 +5365,7 @@ BidirectionalIterator first, BidirectionalIterator last, ForwardIterator result); -template S, weakly_incrementable O> +template S, weakly_incrementable O> requires IndirectlyCopyable constexpr ranges::reverse_copy_result ranges::reverse_copy(I first, S last, O result); @@ -5417,7 +5417,7 @@ rotate(ExecutionPolicy&& exec, ForwardIterator first, ForwardIterator middle, ForwardIterator last); -template S> +template S> constexpr subrange ranges::rotate(I first, I middle, S last); \end{itemdecl} @@ -5482,7 +5482,7 @@ ForwardIterator1 first, ForwardIterator1 middle, ForwardIterator1 last, ForwardIterator2 result); - template S, weakly_incrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr ranges::rotate_copy_result ranges::rotate_copy(I first, I middle, S last, O result); @@ -5613,7 +5613,7 @@ RandomAccessIterator last, UniformRandomBitGenerator&& g); -template S, class Gen> +template S, class Gen> requires Permutable && UniformRandomBitGenerator> I ranges::shuffle(I first, S last, Gen&& g); @@ -5844,7 +5844,7 @@ RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -5903,7 +5903,7 @@ RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable I ranges::stable_sort(I first, S last, Comp comp = {}, Proj proj = {}); @@ -5975,7 +5975,7 @@ RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -6066,7 +6066,7 @@ RandomAccessIterator result_last, Compare comp); -template S1, RandomAccessIterator I2, Sentinel S2, +template S1, RandomAccessIterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable && Sortable && IndirectStrictWeakOrder, projected> @@ -6204,7 +6204,7 @@ \indexlibrary{\idxcode{is_sorted}}% \begin{itemdecl} -template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool ranges::is_sorted(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::is_sorted_until(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -6374,7 +6374,7 @@ lower_bound(ForwardIterator first, ForwardIterator last, const T& value, Compare comp); -template S, class T, class Proj = identity, +template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::lower_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -6422,7 +6422,7 @@ upper_bound(ForwardIterator first, ForwardIterator last, const T& value, Compare comp); -template S, class T, class Proj = identity, +template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::upper_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template S, class T, class Proj = identity, +template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr subrange ranges::equal_range(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -6534,7 +6534,7 @@ binary_search(ForwardIterator first, ForwardIterator last, const T& value, Compare comp); -template S, class T, class Proj = identity, +template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool ranges::binary_search(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -6584,7 +6584,7 @@ bool is_partitioned(ExecutionPolicy&& exec, ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool ranges::is_partitioned(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr subrange ranges::partition(I first, S last, Pred pred, Proj proj = {}); @@ -6688,7 +6688,7 @@ stable_partition(ExecutionPolicy&& exec, BidirectionalIterator first, BidirectionalIterator last, Predicate pred); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> requires Permutable subrange ranges::stable_partition(I first, S last, Pred pred, Proj proj = {}); @@ -6760,7 +6760,7 @@ ForwardIterator first, ForwardIterator last, ForwardIterator1 out_true, ForwardIterator2 out_false, Predicate pred); -template S, weakly_incrementable O1, weakly_incrementable O2, +template S, weakly_incrementable O1, weakly_incrementable O2, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable && IndirectlyCopyable constexpr ranges::partition_copy_result @@ -6822,7 +6822,7 @@ constexpr ForwardIterator partition_point(ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I ranges::partition_point(I first, S last, Pred pred, Proj proj = {}); template S1, InputIterator I2, Sentinel S2, +template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -6978,7 +6978,7 @@ BidirectionalIterator middle, BidirectionalIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable I ranges::inplace_merge(I first, I middle, S last, Comp comp = {}, Proj proj = {}); @@ -7078,7 +7078,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, Compare comp); -template S1, InputIterator I2, Sentinel S2, +template S1, InputIterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectStrictWeakOrder, projected> Comp = ranges::less> @@ -7152,7 +7152,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, ForwardIterator result, Compare comp); -template S1, InputIterator I2, Sentinel S2, +template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -7247,7 +7247,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, ForwardIterator result, Compare comp); -template S1, InputIterator I2, Sentinel S2, +template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -7340,7 +7340,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, ForwardIterator result, Compare comp); -template S1, InputIterator I2, Sentinel S2, +template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -7434,7 +7434,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, ForwardIterator result, Compare comp); -template S1, InputIterator I2, Sentinel S2, +template S1, InputIterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -7541,7 +7541,7 @@ constexpr void push_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -7592,7 +7592,7 @@ constexpr void pop_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -7650,7 +7650,7 @@ constexpr void make_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -7699,7 +7699,7 @@ constexpr void sort_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -7804,7 +7804,7 @@ \indexlibrary{\idxcode{is_heap}}% \begin{itemdecl} -template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool ranges::is_heap(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::is_heap_until(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::min_element(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::max_element(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr ranges::minmax_result ranges::minmax_element(I first, S last, Comp comp = {}, Proj proj = {}); @@ -8306,7 +8306,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, Compare comp); -template S1, InputIterator I2, Sentinel S2, +template S1, InputIterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectStrictWeakOrder, projected> Comp = ranges::less> @@ -8428,7 +8428,7 @@ constexpr bool next_permutation(BidirectionalIterator first, BidirectionalIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr ranges::next_permutation_result @@ -8487,7 +8487,7 @@ constexpr bool prev_permutation(BidirectionalIterator first, BidirectionalIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr ranges::prev_permutation_result diff --git a/source/iterators.tex b/source/iterators.tex index 9ecd0e300b..8c016fe8b0 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -105,9 +105,9 @@ template concept input_or_output_iterator = @\seebelow@; - // \ref{iterator.concept.sentinel}, concept \libconcept{Sentinel} + // \ref{iterator.concept.sentinel}, concept \libconcept{sentinel_for} template - concept Sentinel = @\seebelow@; + concept sentinel_for = @\seebelow@; // \ref{iterator.concept.sizedsentinel}, concept \libconcept{SizedSentinel} template @@ -234,13 +234,13 @@ // \ref{range.iter.op.advance}, \tcode{ranges::advance} template constexpr void advance(I& i, iter_difference_t n); - template S> + template S> constexpr void advance(I& i, S bound); - template S> + template S> constexpr iter_difference_t advance(I& i, iter_difference_t n, S bound); // \ref{range.iter.op.distance}, \tcode{ranges::distance} - template S> + template S> constexpr iter_difference_t distance(I first, S last); template constexpr range_difference_t distance(R&& r); @@ -250,9 +250,9 @@ constexpr I next(I x); template constexpr I next(I x, iter_difference_t n); - template S> + template S> constexpr I next(I x, S bound); - template S> + template S> constexpr I next(I x, iter_difference_t n, S bound); // \ref{range.iter.op.prev}, \tcode{ranges::prev} @@ -366,7 +366,7 @@ template class move_sentinel; // \ref{iterators.common}, common iterators - template S> + template S> requires (!same_as) class common_iterator; @@ -1494,17 +1494,17 @@ the \libconcept{input_or_output_iterator} concept does not require copyability. \end{note} -\rSec3[iterator.concept.sentinel]{Concept \libconcept{Sentinel}} +\rSec3[iterator.concept.sentinel]{Concept \libconcept{sentinel_for}} \pnum -The \libconcept{Sentinel} concept specifies the relationship +The \libconcept{sentinel_for} concept specifies the relationship between an \libconcept{input_or_output_iterator} type and a \libconcept{semiregular} type whose values denote a range. -\indexlibrary{\idxcode{Sentinel}}% +\indexlibrary{\idxcode{sentinel_for}}% \begin{itemdecl} template - concept Sentinel = + concept sentinel_for = semiregular && input_or_output_iterator && @\placeholder{weakly-equality-comparable-with}@; // See \ref{concept.equalitycomparable} @@ -1514,7 +1514,7 @@ \pnum Let \tcode{s} and \tcode{i} be values of type \tcode{S} and \tcode{I} such that \range{i}{s} denotes a range. Types -\tcode{S} and \tcode{I} model \tcode{\libconcept{Sentinel}} only if +\tcode{S} and \tcode{I} model \tcode{\libconcept{sentinel_for}} only if \begin{itemize} \item \tcode{i == s} is well-defined. @@ -1536,7 +1536,7 @@ \pnum The \libconcept{SizedSentinel} concept specifies -requirements on an \libconcept{input_or_output_iterator} and a \libconcept{Sentinel} +requirements on an \libconcept{input_or_output_iterator} and a \libconcept{sentinel_for} that allow the use of the \tcode{-} operator to compute the distance between them in constant time. @@ -1545,7 +1545,7 @@ \begin{itemdecl} template concept SizedSentinel = - Sentinel && + sentinel_for && !disable_sized_sentinel, remove_cv_t> && requires(const I& i, const S& s) { { s - i } -> same_as>; @@ -1674,7 +1674,7 @@ InputIterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), forward_iterator_tag> && incrementable && - Sentinel; + sentinel_for; \end{codeblock} \pnum @@ -2861,7 +2861,7 @@ \indexlibrary{\idxcode{advance}}% \begin{itemdecl} -template S> +template S> constexpr void ranges::advance(I& i, S bound); \end{itemdecl} @@ -2884,7 +2884,7 @@ \indexlibrary{\idxcode{advance}}% \begin{itemdecl} -template S> +template S> constexpr iter_difference_t ranges::advance(I& i, iter_difference_t n, S bound); \end{itemdecl} @@ -2926,7 +2926,7 @@ \rSec3[range.iter.op.distance]{\tcode{ranges::distance}} \indexlibrary{\idxcode{distance}}% \begin{itemdecl} -template S> +template S> constexpr iter_difference_t ranges::distance(I first, S last); \end{itemdecl} @@ -2993,7 +2993,7 @@ \indexlibrary{\idxcode{next}}% \begin{itemdecl} -template S> +template S> constexpr I ranges::next(I x, S bound); \end{itemdecl} @@ -3004,7 +3004,7 @@ \indexlibrary{\idxcode{next}}% \begin{itemdecl} -template S> +template S> constexpr I ranges::next(I x, iter_difference_t n, S bound); \end{itemdecl} @@ -4086,7 +4086,7 @@ constexpr move_iterator& operator-=(difference_type n); constexpr reference operator[](difference_type n) const; - template S> + template S> friend constexpr bool operator==(const move_iterator& x, const move_sentinel& y); template S> @@ -4357,7 +4357,7 @@ template constexpr bool operator==(const move_iterator& x, const move_iterator& y); -template S> +template S> friend constexpr bool operator==(const move_iterator& x, const move_sentinel& y); \end{itemdecl} @@ -4528,9 +4528,9 @@ \pnum Class template \tcode{move_sentinel} is a sentinel adaptor useful for denoting ranges together with \tcode{move_iterator}. When an input iterator type -\tcode{I} and sentinel type \tcode{S} model \tcode{\libconcept{Sentinel}}, +\tcode{I} and sentinel type \tcode{S} model \tcode{\libconcept{sentinel_for}}, \tcode{move_sentinel} and \tcode{move_iterator} model -\tcode{Sentinel, move_iterator{>}} as well. +\tcode{sentinel_for, move_iterator{>}} as well. \pnum \begin{example} @@ -4538,7 +4538,7 @@ \tcode{copy_if} using \tcode{move_iterator} and \tcode{move_sentinel}: \begin{codeblock} -template S, weakly_incrementable O, +template S, weakly_incrementable O, IndirectUnaryPredicate Pred> requires IndirectlyMovable void move_if(I first, S last, O out, Pred pred) { @@ -4652,7 +4652,7 @@ \indexlibrary{\idxcode{common_iterator}}% \begin{codeblock} namespace std { - template S> + template S> requires (!same_as) class common_iterator { public: @@ -4677,12 +4677,12 @@ common_iterator& operator++(); decltype(auto) operator++(int); - template S2> - requires Sentinel + template S2> + requires sentinel_for friend bool operator==( const common_iterator& x, const common_iterator& y); - template S2> - requires Sentinel && equality_comparable_with + template S2> + requires sentinel_for && equality_comparable_with friend bool operator==( const common_iterator& x, const common_iterator& y); @@ -4924,8 +4924,8 @@ \indexlibrarymember{operator==}{common_iterator}% \begin{itemdecl} -template S2> - requires Sentinel +template S2> + requires sentinel_for friend bool operator==( const common_iterator& x, const common_iterator& y); \end{itemdecl} @@ -4945,8 +4945,8 @@ \indexlibrarymember{operator==}{common_iterator}% \begin{itemdecl} -template S2> - requires Sentinel && equality_comparable_with +template S2> + requires sentinel_for && equality_comparable_with friend bool operator==( const common_iterator& x, const common_iterator& y); \end{itemdecl} diff --git a/source/ranges.tex b/source/ranges.tex index 7a832a3652..17dec879b9 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -112,7 +112,7 @@ // \ref{range.subrange}, sub-ranges enum class subrange_kind : bool { unsized, sized }; - template S = I, subrange_kind K = @\seebelow@> + template S = I, subrange_kind K = @\seebelow@> requires (K == subrange_kind::sized || !SizedSentinel) class subrange; @@ -360,12 +360,12 @@ Otherwise, if \tcode{E} is an lvalue, \tcode{\placeholdernc{decay-copy}(E.end())} if it is a valid expression and its type \tcode{S} models - \tcode{Sentinel}. + \tcode{sentinel_for}. \item Otherwise, \tcode{\placeholdernc{decay-copy}(end(E))} if it is a valid expression and its type \tcode{S} models - \tcode{Sentinel} with overload + \tcode{sentinel_for} with overload resolution performed in a context that includes the declarations: \begin{codeblock} template void end(T&&) = delete; @@ -387,7 +387,7 @@ Whenever \tcode{ranges::end(E)} is a valid expression, the types \tcode{S} and \tcode{I} of \tcode{ranges::end(E)} and \tcode{ranges::begin(E)} -model \tcode{\libconcept{Sentinel}}. +model \tcode{\libconcept{sentinel_for}}. \end{note} \rSec2[range.access.cbegin]{\tcode{ranges::cbegin}} @@ -424,7 +424,7 @@ Whenever \tcode{ranges::cend(E)} is a valid expression, the types \tcode{S} and \tcode{I} of \tcode{ranges::cend(E)} and \tcode{ranges::cbegin(E)} -model \tcode{\libconcept{Sentinel}}. +model \tcode{\libconcept{sentinel_for}}. \end{note} \rSec2[range.access.rbegin]{\tcode{ranges::rbegin}} @@ -480,12 +480,12 @@ \item If \tcode{E} is an lvalue, \tcode{\placeholdernc{decay-copy}(E.rend())} if it is a valid expression and its type \tcode{S} models - \tcode{Sentinel<\brk{}decltype(ranges::rbegin(E))>}. + \tcode{sentinel_for<\brk{}decltype(ranges::rbegin(E))>}. \item Otherwise, \tcode{\placeholdernc{decay-copy}(rend(E))} if it is a valid expression and its type \tcode{S} models - \tcode{Sentinel} with overload + \tcode{sentinel_for} with overload resolution performed in a context that includes the declaration: \begin{codeblock} template void rend(T&&) = delete; @@ -512,7 +512,7 @@ Whenever \tcode{ranges::rend(E)} is a valid expression, the types \tcode{S} and \tcode{I} of \tcode{ranges::rend(E)} and \tcode{ranges::rbegin(E)} -model \tcode{\libconcept{Sentinel}}. +model \tcode{\libconcept{sentinel_for}}. \end{note} \rSec2[range.access.crbegin]{\tcode{ranges::crbegin}} @@ -550,7 +550,7 @@ Whenever \tcode{ranges::crend(E)} is a valid expression, the types \tcode{S} and \tcode{I} of \tcode{ranges::crend(E)} and \tcode{ranges::crbegin(E)} -model \tcode{\libconcept{Sentinel}}. +model \tcode{\libconcept{sentinel_for}}. \end{note} \rSec2[range.prim.size]{\tcode{ranges::size}} @@ -706,7 +706,7 @@ whose type models \libconcept{input_or_output_iterator}\iref{iterator.concept.iterator}. Calling \tcode{ranges::end} on a range returns an object whose type \tcode{S}, together with the type \tcode{I} of the object returned by \tcode{ranges::begin}, -models \tcode{\libconcept{Sentinel}}. +models \tcode{\libconcept{sentinel_for}}. The library formalizes the interfaces, semantics, and complexity of ranges to enable algorithms and range adaptors that work efficiently on different types of sequences. @@ -1234,9 +1234,9 @@ template concept @\placeholdernc{iterator-sentinel-pair}@ = // \expos !Range && @\placeholdernc{pair-like}@ && - Sentinel, tuple_element_t<0, T>>; + sentinel_for, tuple_element_t<0, T>>; - template S = I, subrange_kind K = + template S = I, subrange_kind K = SizedSentinel ? subrange_kind::sized : subrange_kind::unsized> requires (K == subrange_kind::sized || !SizedSentinel) class subrange : public view_interface> { @@ -1301,7 +1301,7 @@ friend constexpr S end(subrange&& r) { return r.end(); } }; - template S> + template S> subrange(I, S, @\placeholdernc{make-unsigned-like-t}@(iter_difference_t)) -> subrange; diff --git a/source/utilities.tex b/source/utilities.tex index 475a9a7e7d..af0a6ada7f 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -6529,7 +6529,7 @@ namespace ranges { template using uninitialized_copy_result = copy_result; - template S1, + template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> requires constructible_from, iter_reference_t> uninitialized_copy_result @@ -6565,7 +6565,7 @@ namespace ranges { template using uninitialized_move_result = uninitialized_copy_result; - template S1, + template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> requires constructible_from, iter_rvalue_reference_t> uninitialized_move_result @@ -7947,7 +7947,7 @@ \begin{itemdecl} template -concept @\placeholdernc{no-throw-sentinel}@ = Sentinel; // exposition only +concept @\placeholdernc{no-throw-sentinel}@ = sentinel_for; // exposition only \end{itemdecl} \begin{itemdescr} @@ -7959,7 +7959,7 @@ \pnum \begin{note} -This concept allows some \libconcept{Sentinel}\iref{iterator.concept.sentinel} +This concept allows some \libconcept{sentinel_for}\iref{iterator.concept.sentinel} operations to throw exceptions. \end{note} \end{itemdescr} @@ -8205,7 +8205,7 @@ \indexlibrary{\idxcode{uninitialized_copy}}% \begin{itemdecl} namespace ranges { - template S1, + template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> requires constructible_from, iter_reference_t> uninitialized_copy_result @@ -8310,7 +8310,7 @@ \indexlibrary{\idxcode{uninitialized_move}}% \begin{itemdecl} namespace ranges { - template S1, + template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> requires constructible_from, iter_rvalue_reference_t> uninitialized_move_result From 6c4f52782f5c89d23f2be162c184b48b719bd912 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 15:48:44 -0700 Subject: [PATCH 197/312] [everywhere] Rename concept 'SizedSentinel' to 'sized_sentinel_for'. --- source/algorithms.tex | 6 +++--- source/iterators.tex | 46 +++++++++++++++++++++---------------------- source/ranges.tex | 44 ++++++++++++++++++++--------------------- 3 files changed, 48 insertions(+), 48 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 0ca370f968..8dedcccf3d 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -3749,7 +3749,7 @@ \oldconcept{RandomAccessIterator} requirements\iref{random.access.iterators} for the overloads in namespace \tcode{std}, or \item - pairwise model \libconcept{SizedSentinel}\iref{iterator.concept.sizedsentinel} + pairwise model \libconcept{sized_sentinel_for}\iref{iterator.concept.sizedsentinel} for the overloads in namespace \tcode{ranges}, \end{itemize} and \tcode{last1 - first1 != last2 - first2}, @@ -3857,8 +3857,8 @@ \complexity No applications of the corresponding predicate and projections if: \begin{itemize} -\item \tcode{S1} and \tcode{I1} model \libconcept{SizedSentinel}, -\item \tcode{S2} and \tcode{I2} model \libconcept{SizedSentinel}, and +\item \tcode{S1} and \tcode{I1} model \libconcept{sized_sentinel_for}, +\item \tcode{S2} and \tcode{I2} model \libconcept{sized_sentinel_for}, and \item \tcode{last1 - first1 != last2 - first2}. \end{itemize} Otherwise, exactly \tcode{last1 - first1} applications diff --git a/source/iterators.tex b/source/iterators.tex index 8c016fe8b0..01da1c9f0b 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -109,12 +109,12 @@ template concept sentinel_for = @\seebelow@; - // \ref{iterator.concept.sizedsentinel}, concept \libconcept{SizedSentinel} + // \ref{iterator.concept.sizedsentinel}, concept \libconcept{sized_sentinel_for} template inline constexpr bool disable_sized_sentinel = false; template - concept SizedSentinel = @\seebelow@; + concept sized_sentinel_for = @\seebelow@; // \ref{iterator.concept.input}, concept \libconcept{InputIterator} template @@ -311,7 +311,7 @@ constexpr reverse_iterator make_reverse_iterator(Iterator i); template - requires (!SizedSentinel) + requires (!sized_sentinel_for) inline constexpr bool disable_sized_sentinel, reverse_iterator> = true; @@ -1532,19 +1532,19 @@ to \tcode{i}. Consequently, \tcode{i == s} is no longer required to be well-defined. -\rSec3[iterator.concept.sizedsentinel]{Concept \libconcept{SizedSentinel}} +\rSec3[iterator.concept.sizedsentinel]{Concept \libconcept{sized_sentinel_for}} \pnum -The \libconcept{SizedSentinel} concept specifies +The \libconcept{sized_sentinel_for} concept specifies requirements on an \libconcept{input_or_output_iterator} and a \libconcept{sentinel_for} that allow the use of the \tcode{-} operator to compute the distance between them in constant time. -\indexlibrary{\idxcode{SizedSentinel}}% +\indexlibrary{\idxcode{sized_sentinel_for}}% \begin{itemdecl} template - concept SizedSentinel = + concept sized_sentinel_for = sentinel_for && !disable_sized_sentinel, remove_cv_t> && requires(const I& i, const S& s) { @@ -1559,7 +1559,7 @@ a sentinel of type \tcode{S} such that \range{i}{s} denotes a range. Let $N$ be the smallest number of applications of \tcode{++i} necessary to make \tcode{bool(i == s)} be \tcode{true}. -\tcode{S} and \tcode{I} model \tcode{\libconcept{SizedSentinel}} only if +\tcode{S} and \tcode{I} model \tcode{\libconcept{sized_sentinel_for}} only if \begin{itemize} \item If $N$ is representable by \tcode{iter_difference_t}, @@ -1590,12 +1590,12 @@ \pnum \begin{note} \tcode{disable_sized_sentinel} allows use of sentinels and iterators with -the library that satisfy but do not in fact model \libconcept{SizedSentinel}. +the library that satisfy but do not in fact model \libconcept{sized_sentinel_for}. \end{note} \pnum \begin{example} -The \libconcept{SizedSentinel} concept is modeled by pairs of +The \libconcept{sized_sentinel_for} concept is modeled by pairs of \libconcept{RandomAccessIterator}s\iref{iterator.concept.random.access} and by counted iterators and their sentinels\iref{counted.iterator}. \end{example} @@ -1768,7 +1768,7 @@ BidirectionalIterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), random_access_iterator_tag> && totally_ordered && - SizedSentinel && + sized_sentinel_for && requires(I i, const I j, const iter_difference_t n) { { i += n } -> same_as; { j + n } -> same_as; @@ -2875,7 +2875,7 @@ \begin{itemize} \item If \tcode{I} and \tcode{S} model \tcode{\libconcept{assignable_from}}, equivalent to \tcode{i = std::move(bound)}. -\item Otherwise, if \tcode{S} and \tcode{I} model \tcode{\libconcept{SizedSentinel}}, +\item Otherwise, if \tcode{S} and \tcode{I} model \tcode{\libconcept{sized_sentinel_for}}, equivalent to \tcode{ranges::advance(i, bound - i)}. \item Otherwise, while \tcode{bool(i != bound)} is \tcode{true}, increments \tcode{i}. @@ -2900,7 +2900,7 @@ \pnum \effects \begin{itemize} -\item If \tcode{S} and \tcode{I} model \tcode{\libconcept{SizedSentinel}}: +\item If \tcode{S} and \tcode{I} model \tcode{\libconcept{sized_sentinel_for}}: \begin{itemize} \item If \brk{}$|\tcode{n}| \ge |\tcode{bound - i}|$, equivalent to \tcode{ranges::advance(i, bound)}. @@ -2936,11 +2936,11 @@ \range{first}{last} denotes a range, or \range{last}{first} denotes a range and \tcode{S} and \tcode{I} model -\tcode{same_as \&\& SizedSentinel}. +\tcode{same_as \&\& sized_sentinel_for}. \pnum \effects -If \tcode{S} and \tcode{I} model \tcode{\libconcept{SizedSentinel}}, +If \tcode{S} and \tcode{I} model \tcode{\libconcept{sized_sentinel_for}}, returns \tcode{(last - first)}; otherwise, returns the number of increments needed to get from \tcode{first} @@ -4089,10 +4089,10 @@ template S> friend constexpr bool operator==(const move_iterator& x, const move_sentinel& y); - template S> + template S> friend constexpr iter_difference_t operator-(const move_sentinel& x, const move_iterator& y); - template S> + template S> friend constexpr iter_difference_t operator-(const move_iterator& x, const move_sentinel& y); friend constexpr iter_rvalue_reference_t @@ -4458,10 +4458,10 @@ constexpr auto operator-(const move_iterator& x, const move_iterator& y) -> decltype(x.base() - y.base()); -template S> +template S> friend constexpr iter_difference_t operator-(const move_sentinel& x, const move_iterator& y); -template S> +template S> friend constexpr iter_difference_t operator-(const move_iterator& x, const move_sentinel& y); \end{itemdecl} @@ -4686,8 +4686,8 @@ friend bool operator==( const common_iterator& x, const common_iterator& y); - template I2, SizedSentinel S2> - requires SizedSentinel + template I2, sized_sentinel_for S2> + requires sized_sentinel_for friend iter_difference_t operator-( const common_iterator& x, const common_iterator& y); @@ -4966,8 +4966,8 @@ \indexlibrarymember{operator-}{common_iterator}% \begin{itemdecl} -template I2, SizedSentinel S2> - requires SizedSentinel +template I2, sized_sentinel_for S2> + requires sized_sentinel_for friend iter_difference_t operator-( const common_iterator& x, const common_iterator& y); \end{itemdecl} diff --git a/source/ranges.tex b/source/ranges.tex index 17dec879b9..cfb20fd76a 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -113,7 +113,7 @@ enum class subrange_kind : bool { unsized, sized }; template S = I, subrange_kind K = @\seebelow@> - requires (K == subrange_kind::sized || !SizedSentinel) + requires (K == subrange_kind::sized || !sized_sentinel_for) class subrange; // \ref{range.dangling}, dangling iterator handling @@ -593,7 +593,7 @@ if it is a valid expression and the types \tcode{I} and \tcode{S} of \tcode{ranges::begin(E)} and \tcode{ranges::end(E)} (respectively) model both - \tcode{\libconcept{SizedSentinel}}\iref{iterator.concept.sizedsentinel} and + \tcode{\libconcept{sized_sentinel_for}}\iref{iterator.concept.sizedsentinel} and \tcode{\libconcept{ForwardIterator}}. However, \tcode{E} is evaluated only once. @@ -1131,11 +1131,11 @@ } constexpr auto size() requires ForwardRange && - SizedSentinel, iterator_t> { + sized_sentinel_for, iterator_t> { return ranges::end(derived()) - ranges::begin(derived()); } constexpr auto size() const requires ForwardRange && - SizedSentinel, iterator_t> { + sized_sentinel_for, iterator_t> { return ranges::end(derived()) - ranges::begin(derived()); } @@ -1237,12 +1237,12 @@ sentinel_for, tuple_element_t<0, T>>; template S = I, subrange_kind K = - SizedSentinel ? subrange_kind::sized : subrange_kind::unsized> - requires (K == subrange_kind::sized || !SizedSentinel) + sized_sentinel_for ? subrange_kind::sized : subrange_kind::unsized> + requires (K == subrange_kind::sized || !sized_sentinel_for) class subrange : public view_interface> { private: static constexpr bool StoreSize = // \expos - K == subrange_kind::sized && !SizedSentinel; + K == subrange_kind::sized && !sized_sentinel_for; I begin_ = I(); // \expos S end_ = S(); // \expos @\placeholdernc{make-unsigned-like-t}@(iter_difference_t) size_ = 0; // \expos; present only @@ -1315,7 +1315,7 @@ template<@\placeholder{forwarding-range}@ R> subrange(R&&) -> subrange, sentinel_t, - (SizedRange || SizedSentinel, iterator_t>) + (SizedRange || sized_sentinel_for, iterator_t>) ? subrange_kind::sized : subrange_kind::unsized>; template<@\placeholder{forwarding-range}@ R> @@ -1369,7 +1369,7 @@ Accepting the length of the range and storing it to later return from \tcode{size()} enables \tcode{subrange} to model \libconcept{SizedRange} even when it stores an iterator and sentinel that do not model -\libconcept{SizedSentinel}. +\libconcept{sized_sentinel_for}. \end{note} \end{itemdescr} @@ -1994,7 +1994,7 @@ \remarks The expression in the \grammarterm{requires-clause} is equivalent to \begin{codeblock} (same_as && Advanceable) || (integral && integral) || - SizedSentinel + sized_sentinel_for \end{codeblock} \end{itemdescr} @@ -2364,9 +2364,9 @@ friend constexpr bool operator==(const iterator& x, const sentinel& y); friend constexpr iter_difference_t operator-(const iterator& x, const sentinel& y) - requires SizedSentinel; + requires sized_sentinel_for; friend constexpr iter_difference_t operator-(const sentinel& x, const iterator& y) - requires SizedSentinel; + requires sized_sentinel_for; }; } \end{codeblock} @@ -2393,7 +2393,7 @@ \begin{itemdecl} friend constexpr iter_difference_t operator-(const iterator& x, const sentinel& y) - requires SizedSentinel; + requires sized_sentinel_for; \end{itemdecl} \begin{itemdescr} @@ -2403,7 +2403,7 @@ \begin{itemdecl} friend constexpr iter_difference_t operator-(const sentinel& x, const iterator& y) - requires SizedSentinel; + requires sized_sentinel_for; \end{itemdecl} \begin{itemdescr} @@ -3593,10 +3593,10 @@ friend constexpr range_difference_t operator-(const iterator& x, const sentinel& y) - requires SizedSentinel, iterator_t>; + requires sized_sentinel_for, iterator_t>; friend constexpr range_difference_t operator-(const sentinel& y, const iterator& x) - requires SizedSentinel, iterator_t>; + requires sized_sentinel_for, iterator_t>; }; } \end{codeblock} @@ -3646,7 +3646,7 @@ \begin{itemdecl} friend constexpr range_difference_t operator-(const iterator& x, const sentinel& y) - requires SizedSentinel, iterator_t>; + requires sized_sentinel_for, iterator_t>; \end{itemdecl} \begin{itemdescr} @@ -3658,7 +3658,7 @@ \begin{itemdecl} friend constexpr range_difference_t operator-(const sentinel& y, const iterator& x) - requires SizedSentinel, iterator_t>; + requires sized_sentinel_for, iterator_t>; \end{itemdecl} \begin{itemdescr} @@ -5968,10 +5968,10 @@ friend constexpr difference_type operator-(const iterator& x, const sentinel_t& y) - requires SizedSentinel, iterator_t>; + requires sized_sentinel_for, iterator_t>; friend constexpr difference_type operator-(const sentinel_t& x, const iterator& y) - requires SizedSentinel, iterator_t>; + requires sized_sentinel_for, iterator_t>; }; } \end{codeblock} @@ -6225,7 +6225,7 @@ \begin{itemdecl} friend constexpr difference_type operator-(const iterator& x, const sentinel_t& y) - requires SizedSentinel, iterator_t>; + requires sized_sentinel_for, iterator_t>; \end{itemdecl} \begin{itemdescr} @@ -6237,7 +6237,7 @@ \begin{itemdecl} friend constexpr difference_type operator-(const sentinel_t& x, const iterator& y) - requires SizedSentinel, iterator_t>; + requires sized_sentinel_for, iterator_t>; \end{itemdecl} \begin{itemdescr} From 472bb1a259fe54e7e0228a722823a7c5ccd667f9 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:01:11 -0700 Subject: [PATCH 198/312] [everywhere] Rename concept 'InputIterator' to 'input_iterator'. --- source/algorithms.tex | 152 +++++++++++++++++++++--------------------- source/iterators.tex | 42 ++++++------ source/ranges.tex | 4 +- source/utilities.tex | 20 +++--- 4 files changed, 109 insertions(+), 109 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 8dedcccf3d..fd5d89465b 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -619,7 +619,7 @@ ForwardIterator first, ForwardIterator last, Predicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool all_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool any_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool none_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryInvocable> Fun> constexpr for_each_result for_each(I first, S last, Fun f, Proj proj = {}); @@ -725,21 +725,21 @@ Predicate pred); namespace ranges { - template S, class T, class Proj = identity> + template S, class T, class Proj = identity> requires IndirectRelation, const T*> constexpr I find(I first, S last, const T& value, Proj proj = {}); template requires IndirectRelation, Proj>, const T*> constexpr safe_iterator_t find(R&& r, const T& value, Proj proj = {}); - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I find_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> constexpr safe_iterator_t find_if(R&& r, Pred pred, Proj proj = {}); - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I find_if_not(I first, S last, Pred pred, Proj proj = {}); template S1, ForwardIterator I2, sentinel_for S2, + template S1, ForwardIterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectRelation, projected> Pred = ranges::equal_to> @@ -872,7 +872,7 @@ ForwardIterator first, ForwardIterator last, Predicate pred); namespace ranges { - template S, class T, class Proj = identity> + template S, class T, class Proj = identity> requires IndirectRelation, const T*> constexpr iter_difference_t count(I first, S last, const T& value, Proj proj = {}); @@ -880,7 +880,7 @@ requires IndirectRelation, Proj>, const T*> constexpr range_difference_t count(R&& r, const T& value, Proj proj = {}); - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr iter_difference_t count_if(I first, S last, Pred pred, Proj proj = {}); @@ -951,7 +951,7 @@ } }; - template S1, InputIterator I2, sentinel_for S2, + template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectRelation, projected> Pred = ranges::equal_to> @@ -1002,7 +1002,7 @@ BinaryPredicate pred); namespace ranges { - template S1, InputIterator I2, sentinel_for S2, + template S1, input_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr bool equal(I1 first1, S1 last1, I2 first2, S2 last2, @@ -1154,7 +1154,7 @@ } }; - template S, weakly_incrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr copy_result copy(I first, S last, O result); @@ -1177,7 +1177,7 @@ template using copy_n_result = copy_result; - template + template requires IndirectlyCopyable constexpr copy_n_result copy_n(I first, iter_difference_t n, O result); @@ -1196,7 +1196,7 @@ template using copy_if_result = copy_result; - template S, weakly_incrementable O, class Proj = identity, + template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr copy_if_result @@ -1241,7 +1241,7 @@ template using move_result = copy_result; - template S, weakly_incrementable O> + template S, weakly_incrementable O> requires IndirectlyMovable constexpr move_result move(I first, S last, O result); @@ -1283,7 +1283,7 @@ template using swap_ranges_result = mismatch_result; - template S1, InputIterator I2, sentinel_for S2> + template S1, input_iterator I2, sentinel_for S2> requires IndirectlySwappable constexpr swap_ranges_result swap_ranges(I1 first1, S1 last1, I2 first2, S2 last2); @@ -1325,7 +1325,7 @@ template using unary_transform_result = copy_result; - template S, weakly_incrementable O, + template S, weakly_incrementable O, copy_constructible F, class Proj = identity> requires writable>> constexpr unary_transform_result @@ -1357,7 +1357,7 @@ } }; - template S1, InputIterator I2, sentinel_for S2, + template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, copy_constructible F, class Proj1 = identity, class Proj2 = identity> requires writable, @@ -1391,7 +1391,7 @@ Predicate pred, const T& new_value); namespace ranges { - template S, class T1, class T2, class Proj = identity> + template S, class T1, class T2, class Proj = identity> requires writable && IndirectRelation, const T1*> constexpr I @@ -1401,7 +1401,7 @@ IndirectRelation, Proj>, const T1*> constexpr safe_iterator_t replace(R&& r, const T1& old_value, const T2& new_value, Proj proj = {}); - template S, class T, class Proj = identity, + template S, class T, class Proj = identity, IndirectUnaryPredicate> Pred> requires writable constexpr I replace_if(I first, S last, Pred pred, const T& new_value, Proj proj = {}); @@ -1436,7 +1436,7 @@ template using replace_copy_result = copy_result; - template S, class T1, class T2, OutputIterator O, + template S, class T1, class T2, OutputIterator O, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T1*> @@ -1454,7 +1454,7 @@ template using replace_copy_if_result = copy_result; - template S, class T, OutputIterator O, + template S, class T, OutputIterator O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr replace_copy_if_result @@ -1576,7 +1576,7 @@ template using remove_copy_result = copy_result; - template S, weakly_incrementable O, class T, + template S, weakly_incrementable O, class T, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T*> @@ -1591,7 +1591,7 @@ template using remove_copy_if_result = copy_result; - template S, weakly_incrementable O, + template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr remove_copy_if_result @@ -1652,11 +1652,11 @@ template using unique_copy_result = copy_result; - template S, weakly_incrementable O, + template S, weakly_incrementable O, class Proj = identity, IndirectRelation> C = ranges::equal_to> requires IndirectlyCopyable && (ForwardIterator || - (InputIterator && same_as, iter_value_t>) || + (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable) constexpr unique_copy_result unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); @@ -1664,7 +1664,7 @@ IndirectRelation, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && (ForwardIterator> || - (InputIterator && same_as, iter_value_t>) || + (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable, O>) constexpr unique_copy_result, O> unique_copy(R&& r, O result, C comp = {}, Proj proj = {}); @@ -1909,7 +1909,7 @@ namespace ranges { template using partial_sort_copy_result = copy_result; - template S1, RandomAccessIterator I2, sentinel_for S2, + template S1, RandomAccessIterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable && Sortable && IndirectStrictWeakOrder, projected> @@ -2096,7 +2096,7 @@ ForwardIterator first, ForwardIterator last, Predicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool is_partitioned(I first, S last, Pred pred, Proj proj = {}); template S, weakly_incrementable O1, weakly_incrementable O2, + template S, weakly_incrementable O1, weakly_incrementable O2, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable && IndirectlyCopyable constexpr partition_copy_result @@ -2244,7 +2244,7 @@ template using merge_result = binary_transform_result; - template S1, InputIterator I2, sentinel_for S2, + template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -2310,7 +2310,7 @@ Compare comp); namespace ranges { - template S1, InputIterator I2, sentinel_for S2, + template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectStrictWeakOrder, projected> Comp = ranges::less> @@ -2353,7 +2353,7 @@ template using set_union_result = binary_transform_result; - template S1, InputIterator I2, sentinel_for S2, + template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -2397,7 +2397,7 @@ template using set_intersection_result = binary_transform_result; - template S1, InputIterator I2, sentinel_for S2, + template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -2441,7 +2441,7 @@ template using set_difference_result = copy_result; - template S1, InputIterator I2, sentinel_for S2, + template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -2485,7 +2485,7 @@ template using set_symmetric_difference_result = binary_transform_result; - template S1, InputIterator I2, sentinel_for S2, + template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -2815,7 +2815,7 @@ Compare comp); namespace ranges { - template S1, InputIterator I2, sentinel_for S2, + template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectStrictWeakOrder, projected> Comp = ranges::less> @@ -2907,7 +2907,7 @@ bool all_of(ExecutionPolicy&& exec, ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool ranges::all_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool ranges::any_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool ranges::none_of(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryInvocable> Fun> constexpr ranges::for_each_result ranges::for_each(I first, S last, Fun f, Proj proj = {}); @@ -3223,21 +3223,21 @@ ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class T, class Proj = identity> +template S, class T, class Proj = identity> requires IndirectRelation, const T*> constexpr I ranges::find(I first, S last, const T& value, Proj proj = {}); template requires IndirectRelation, Proj>, const T*> constexpr safe_iterator_t ranges::find(R&& r, const T& value, Proj proj = {}); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I ranges::find_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> constexpr safe_iterator_t ranges::find_if(R&& r, Pred pred, Proj proj = {}); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I ranges::find_if_not(I first, S last, Pred pred, Proj proj = {}); template S1, ForwardIterator I2, sentinel_for S2, +template S1, ForwardIterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectRelation, projected> Pred = ranges::equal_to> @@ -3507,7 +3507,7 @@ count_if(ExecutionPolicy&& exec, ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class T, class Proj = identity> +template S, class T, class Proj = identity> requires IndirectRelation, const T*> constexpr iter_difference_t ranges::count(I first, S last, const T& value, Proj proj = {}); @@ -3515,7 +3515,7 @@ requires IndirectRelation, Proj>, const T*> constexpr range_difference_t ranges::count(R&& r, const T& value, Proj proj = {}); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr iter_difference_t ranges::count_if(I first, S last, Pred pred, Proj proj = {}); @@ -3604,7 +3604,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, BinaryPredicate pred); -template S1, InputIterator I2, sentinel_for S2, +template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectRelation, projected> Pred = ranges::equal_to> @@ -3697,7 +3697,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, BinaryPredicate pred); -template S1, InputIterator I2, sentinel_for S2, +template S1, input_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr bool ranges::equal(I1 first1, S1 last1, I2 first2, S2 last2, @@ -4061,7 +4061,7 @@ constexpr OutputIterator copy(InputIterator first, InputIterator last, OutputIterator result); -template S, weakly_incrementable O> +template S, weakly_incrementable O> requires IndirectlyCopyable constexpr ranges::copy_result ranges::copy(I first, S last, O result); template @@ -4139,7 +4139,7 @@ ForwardIterator1 first, Size n, ForwardIterator2 result); -template +template requires IndirectlyCopyable constexpr ranges::copy_n_result ranges::copy_n(I first, iter_difference_t n, O result); @@ -4181,7 +4181,7 @@ ForwardIterator1 first, ForwardIterator1 last, ForwardIterator2 result, Predicate pred); -template S, weakly_incrementable O, class Proj = identity, +template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr ranges::copy_if_result @@ -4305,7 +4305,7 @@ constexpr OutputIterator move(InputIterator first, InputIterator last, OutputIterator result); -template S, weakly_incrementable O> +template S, weakly_incrementable O> requires IndirectlyMovable constexpr ranges::move_result ranges::move(I first, S last, O result); @@ -4462,7 +4462,7 @@ ForwardIterator1 first1, ForwardIterator1 last1, ForwardIterator2 first2); -template S1, InputIterator I2, sentinel_for S2> +template S1, input_iterator I2, sentinel_for S2> requires IndirectlySwappable constexpr ranges::swap_ranges_result ranges::swap_ranges(I1 first1, S1 last1, I2 first2, S2 last2); @@ -4565,7 +4565,7 @@ ForwardIterator2 first2, ForwardIterator result, BinaryOperation binary_op); -template S, weakly_incrementable O, +template S, weakly_incrementable O, copy_constructible F, class Proj = identity> requires writable>> constexpr ranges::unary_transform_result @@ -4575,7 +4575,7 @@ requires writable, Proj>>> constexpr ranges::unary_transform_result, O> ranges::transform(R&& r, O result, F op, Proj proj = {}); -template S1, InputIterator I2, sentinel_for S2, +template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, copy_constructible F, class Proj1 = identity, class Proj2 = identity> requires writable, @@ -4684,7 +4684,7 @@ ForwardIterator first, ForwardIterator last, Predicate pred, const T& new_value); -template S, class T1, class T2, class Proj = identity> +template S, class T1, class T2, class Proj = identity> requires writable && IndirectRelation, const T1*> constexpr I @@ -4694,7 +4694,7 @@ IndirectRelation, Proj>, const T1*> constexpr safe_iterator_t ranges::replace(R&& r, const T1& old_value, const T2& new_value, Proj proj = {}); -template S, class T, class Proj = identity, +template S, class T, class Proj = identity, IndirectUnaryPredicate> Pred> requires writable constexpr I ranges::replace_if(I first, S last, Pred pred, const T& new_value, Proj proj = {}); @@ -4763,7 +4763,7 @@ ForwardIterator2 result, Predicate pred, const T& new_value); -template S, class T1, class T2, OutputIterator O, +template S, class T1, class T2, OutputIterator O, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T1*> @@ -4778,7 +4778,7 @@ ranges::replace_copy(R&& r, O result, const T1& old_value, const T2& new_value, Proj proj = {}); -template S, class T, OutputIterator O, +template S, class T, OutputIterator O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr ranges::replace_copy_if_result @@ -5057,7 +5057,7 @@ ForwardIterator1 first, ForwardIterator1 last, ForwardIterator2 result, Predicate pred); -template S, weakly_incrementable O, class T, +template S, weakly_incrementable O, class T, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T*> @@ -5068,7 +5068,7 @@ IndirectRelation, Proj>, const T*> constexpr ranges::remove_copy_result, O> ranges::remove_copy(R&& r, O result, const T& value, Proj proj = {}); -template S, weakly_incrementable O, +template S, weakly_incrementable O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr ranges::remove_copy_if_result @@ -5223,11 +5223,11 @@ ForwardIterator1 first, ForwardIterator1 last, ForwardIterator2 result, BinaryPredicate pred); -template S, weakly_incrementable O, +template S, weakly_incrementable O, class Proj = identity, IndirectRelation> C = ranges::equal_to> requires IndirectlyCopyable && (ForwardIterator || - (InputIterator && same_as, iter_value_t>) || + (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable) constexpr ranges::unique_copy_result ranges::unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); @@ -5235,7 +5235,7 @@ IndirectRelation, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && (ForwardIterator> || - (InputIterator && same_as, iter_value_t>) || + (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable, O>) constexpr ranges::unique_copy_result, O> ranges::unique_copy(R&& r, O result, C comp = {}, Proj proj = {}); @@ -6066,7 +6066,7 @@ RandomAccessIterator result_last, Compare comp); -template S1, RandomAccessIterator I2, sentinel_for S2, +template S1, RandomAccessIterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable && Sortable && IndirectStrictWeakOrder, projected> @@ -6584,7 +6584,7 @@ bool is_partitioned(ExecutionPolicy&& exec, ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr bool ranges::is_partitioned(I first, S last, Pred pred, Proj proj = {}); template S, weakly_incrementable O1, weakly_incrementable O2, +template S, weakly_incrementable O1, weakly_incrementable O2, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable && IndirectlyCopyable constexpr ranges::partition_copy_result @@ -6887,7 +6887,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, ForwardIterator result, Compare comp); -template S1, InputIterator I2, sentinel_for S2, +template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -7078,7 +7078,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, Compare comp); -template S1, InputIterator I2, sentinel_for S2, +template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectStrictWeakOrder, projected> Comp = ranges::less> @@ -7152,7 +7152,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, ForwardIterator result, Compare comp); -template S1, InputIterator I2, sentinel_for S2, +template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -7247,7 +7247,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, ForwardIterator result, Compare comp); -template S1, InputIterator I2, sentinel_for S2, +template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -7340,7 +7340,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, ForwardIterator result, Compare comp); -template S1, InputIterator I2, sentinel_for S2, +template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -7434,7 +7434,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, ForwardIterator result, Compare comp); -template S1, InputIterator I2, sentinel_for S2, +template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires Mergeable @@ -8306,7 +8306,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, Compare comp); -template S1, InputIterator I2, sentinel_for S2, +template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectStrictWeakOrder, projected> Comp = ranges::less> diff --git a/source/iterators.tex b/source/iterators.tex index 01da1c9f0b..216a586534 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -116,9 +116,9 @@ template concept sized_sentinel_for = @\seebelow@; - // \ref{iterator.concept.input}, concept \libconcept{InputIterator} + // \ref{iterator.concept.input}, concept \libconcept{input_iterator} template - concept InputIterator = @\seebelow@; + concept input_iterator = @\seebelow@; // \ref{iterator.concept.output}, concept \libconcept{OutputIterator} template @@ -373,7 +373,7 @@ template struct incrementable_traits>; - template + template struct iterator_traits>; // \ref{default.sentinels}, default sentinels @@ -386,7 +386,7 @@ template struct incrementable_traits>; - template + template struct iterator_traits>; // \ref{unreachable.sentinels}, unreachable sentinels @@ -513,7 +513,7 @@ \pnum The six categories of iterators correspond to the iterator concepts -\libconcept{InputIterator}\iref{iterator.concept.input}, +\libconcept{input_iterator}\iref{iterator.concept.input}, \libconcept{OutputIterator}\iref{iterator.concept.output}, \libconcept{ForwardIterator}\iref{iterator.concept.forward}, \libconcept{BidirectionalIterator}\iref{iterator.concept.bidir} @@ -1601,23 +1601,23 @@ \end{example} \end{itemdescr} -\rSec3[iterator.concept.input]{Concept \libconcept{InputIterator}} +\rSec3[iterator.concept.input]{Concept \libconcept{input_iterator}} \pnum -The \libconcept{InputIterator} concept defines requirements for a type +The \libconcept{input_iterator} concept defines requirements for a type whose referenced values can be read (from the requirement for \libconcept{readable}\iref{iterator.concept.readable}) and which can be both pre- and post-incremented. \begin{note} Unlike the \oldconcept{InputIterator} requirements\iref{input.iterators}, -the \libconcept{InputIterator} concept does not need +the \libconcept{input_iterator} concept does not need equality comparison since iterators are typically compared to sentinels. \end{note} -\indexlibrary{\idxcode{InputIterator}}% +\indexlibrary{\idxcode{input_iterator}}% \begin{codeblock} template - concept InputIterator = + concept input_iterator = input_or_output_iterator && readable && requires { typename @\placeholdernc{ITER_CONCEPT}@(I); } && @@ -1671,7 +1671,7 @@ \begin{codeblock} template concept ForwardIterator = - InputIterator && + input_iterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), forward_iterator_tag> && incrementable && sentinel_for; @@ -2575,8 +2575,8 @@ template concept Mergeable = - InputIterator && - InputIterator && + input_iterator && + input_iterator && weakly_incrementable && IndirectlyCopyable && IndirectlyCopyable && @@ -4126,7 +4126,7 @@ \pnum The template parameter \tcode{Iterator} shall either meet the \oldconcept{InputIterator} requirements\iref{input.iterators} -or model \libconcept{InputIterator}\iref{iterator.concept.input}. +or model \libconcept{input_iterator}\iref{iterator.concept.input}. Additionally, if any of the bidirectional traversal functions are instantiated, the template parameter shall either meet the \oldconcept{BidirectionalIterator} requirements\iref{bidirectional.iterators} @@ -4538,7 +4538,7 @@ \tcode{copy_if} using \tcode{move_iterator} and \tcode{move_sentinel}: \begin{codeblock} -template S, weakly_incrementable O, +template S, weakly_incrementable O, IndirectUnaryPredicate Pred> requires IndirectlyMovable void move_if(I first, S last, O out, Pred pred) { @@ -4693,7 +4693,7 @@ friend iter_rvalue_reference_t iter_move(const common_iterator& i) noexcept(noexcept(ranges::iter_move(declval()))) - requires InputIterator; + requires input_iterator; template I2, class S2> friend void iter_swap(const common_iterator& x, const common_iterator& y) noexcept(noexcept(ranges::iter_swap(declval(), declval()))); @@ -4707,7 +4707,7 @@ using difference_type = iter_difference_t; }; - template + template struct iterator_traits> { using iterator_concept = @\seebelow@; using iterator_category = @\seebelow@; @@ -4991,7 +4991,7 @@ \begin{itemdecl} friend iter_rvalue_reference_t iter_move(const common_iterator& i) noexcept(noexcept(ranges::iter_move(declval()))) - requires InputIterator; + requires input_iterator; \end{itemdecl} \begin{itemdescr} @@ -5137,7 +5137,7 @@ friend constexpr iter_rvalue_reference_t iter_move(const counted_iterator& i) noexcept(noexcept(ranges::iter_move(i.current))) - requires InputIterator; + requires input_iterator; template I2> friend constexpr void iter_swap(const counted_iterator& x, const counted_iterator& y) noexcept(noexcept(ranges::iter_swap(x.current, y.current))); @@ -5152,7 +5152,7 @@ using difference_type = iter_difference_t; }; - template + template struct iterator_traits> : iterator_traits { using pointer = void; }; @@ -5526,7 +5526,7 @@ friend constexpr iter_rvalue_reference_t iter_move(const counted_iterator& i) noexcept(noexcept(ranges::iter_move(i.current))) - requires InputIterator; + requires input_iterator; \end{itemdecl} \begin{itemdescr} diff --git a/source/ranges.tex b/source/ranges.tex index cfb20fd76a..e75005a56e 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1001,7 +1001,7 @@ template concept InputRange = - Range && InputIterator>; + Range && input_iterator>; template concept ForwardRange = @@ -1076,7 +1076,7 @@ same_as, iterator_t> && same_as, sentinel_t>; -template +template concept @\placeholder{has-arrow}@ = // \expos is_pointer_v || requires(I i) { i.operator->(); }; diff --git a/source/utilities.tex b/source/utilities.tex index af0a6ada7f..e8464189a0 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -6529,7 +6529,7 @@ namespace ranges { template using uninitialized_copy_result = copy_result; - template S1, + template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> requires constructible_from, iter_reference_t> uninitialized_copy_result @@ -6541,7 +6541,7 @@ template using uninitialized_copy_n_result = uninitialized_copy_result; - template S> + template S> requires constructible_from, iter_reference_t> uninitialized_copy_n_result uninitialized_copy_n(I ifirst, iter_difference_t n, O ofirst, S olast); @@ -6565,7 +6565,7 @@ namespace ranges { template using uninitialized_move_result = uninitialized_copy_result; - template S1, + template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> requires constructible_from, iter_rvalue_reference_t> uninitialized_move_result @@ -6577,7 +6577,7 @@ template using uninitialized_move_n_result = uninitialized_copy_result; - template S> requires constructible_from, iter_rvalue_reference_t> uninitialized_move_n_result @@ -7925,7 +7925,7 @@ \begin{itemdecl} template concept @\placeholdernc{no-throw-input-iterator}@ = // exposition only - InputIterator && + input_iterator && is_lvalue_reference_v> && same_as>, iter_value_t>; \end{itemdecl} @@ -7940,7 +7940,7 @@ \pnum \begin{note} -This concept allows some \libconcept{InputIterator}\iref{iterator.concept.input} +This concept allows some \libconcept{input_iterator}\iref{iterator.concept.input} operations to throw exceptions. \end{note} \end{itemdescr} @@ -8205,7 +8205,7 @@ \indexlibrary{\idxcode{uninitialized_copy}}% \begin{itemdecl} namespace ranges { - template S1, + template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> requires constructible_from, iter_reference_t> uninitialized_copy_result @@ -8260,7 +8260,7 @@ \indexlibrary{\idxcode{uninitialized_copy_n}}% \begin{itemdecl} namespace ranges { - template S> + template S> requires constructible_from, iter_reference_t> uninitialized_copy_n_result uninitialized_copy_n(I ifirst, iter_difference_t n, O ofirst, S olast); @@ -8310,7 +8310,7 @@ \indexlibrary{\idxcode{uninitialized_move}}% \begin{itemdecl} namespace ranges { - template S1, + template S1, @\placeholdernc{no-throw-forward-iterator}@ O, @\placeholdernc{no-throw-sentinel}@ S2> requires constructible_from, iter_rvalue_reference_t> uninitialized_move_result @@ -8370,7 +8370,7 @@ \indexlibrary{\idxcode{uninitialized_move_n}}% \begin{itemdecl} namespace ranges { - template S> + template S> requires constructible_from, iter_rvalue_reference_t> uninitialized_move_n_result uninitialized_move_n(I ifirst, iter_difference_t n, O ofirst, S olast); From a6f0a90539e889572ac59fbdb216b34aad6f9581 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:05:02 -0700 Subject: [PATCH 199/312] [everywhere] Rename concept 'OutputIterator' to 'output_iterator'. --- source/algorithms.tex | 24 ++++++++++++------------ source/iterators.tex | 16 ++++++++-------- source/ranges.tex | 4 ++-- source/utilities.tex | 10 +++++----- 4 files changed, 27 insertions(+), 27 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index fd5d89465b..90301951f1 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1436,14 +1436,14 @@ template using replace_copy_result = copy_result; - template S, class T1, class T2, OutputIterator O, + template S, class T1, class T2, output_iterator O, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T1*> constexpr replace_copy_result replace_copy(I first, S last, O result, const T1& old_value, const T2& new_value, Proj proj = {}); - template O, + template O, class Proj = identity> requires IndirectlyCopyable, O> && IndirectRelation, Proj>, const T1*> @@ -1454,13 +1454,13 @@ template using replace_copy_if_result = copy_result; - template S, class T, OutputIterator O, + template S, class T, output_iterator O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr replace_copy_if_result replace_copy_if(I first, S last, O result, Pred pred, const T& new_value, Proj proj = {}); - template O, class Proj = identity, + template O, class Proj = identity, IndirectUnaryPredicate, Proj>> Pred> requires IndirectlyCopyable, O> constexpr replace_copy_if_result, O> @@ -1482,11 +1482,11 @@ ForwardIterator first, Size n, const T& value); namespace ranges { - template O, sentinel_for S> + template O, sentinel_for S> constexpr O fill(O first, S last, const T& value); template R> constexpr safe_iterator_t fill(R&& r, const T& value); - template O> + template O> constexpr O fill_n(O first, iter_difference_t n, const T& value); } @@ -4763,14 +4763,14 @@ ForwardIterator2 result, Predicate pred, const T& new_value); -template S, class T1, class T2, OutputIterator O, +template S, class T1, class T2, output_iterator O, class Proj = identity> requires IndirectlyCopyable && IndirectRelation, const T1*> constexpr ranges::replace_copy_result ranges::replace_copy(I first, S last, O result, const T1& old_value, const T2& new_value, Proj proj = {}); -template O, +template O, class Proj = identity> requires IndirectlyCopyable, O> && IndirectRelation, Proj>, const T1*> @@ -4778,13 +4778,13 @@ ranges::replace_copy(R&& r, O result, const T1& old_value, const T2& new_value, Proj proj = {}); -template S, class T, OutputIterator O, +template S, class T, output_iterator O, class Proj = identity, IndirectUnaryPredicate> Pred> requires IndirectlyCopyable constexpr ranges::replace_copy_if_result ranges::replace_copy_if(I first, S last, O result, Pred pred, const T& new_value, Proj proj = {}); -template O, class Proj = identity, +template O, class Proj = identity, IndirectUnaryPredicate, Proj>> Pred> requires IndirectlyCopyable, O> constexpr ranges::replace_copy_if_result, O> @@ -4857,11 +4857,11 @@ ForwardIterator first, Size n, const T& value); -template O, sentinel_for S> +template O, sentinel_for S> constexpr O ranges::fill(O first, S last, const T& value); template R> constexpr safe_iterator_t ranges::fill(R&& r, const T& value); -template O> +template O> constexpr O ranges::fill_n(O first, iter_difference_t n, const T& value); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index 216a586534..b8a5b0ed5b 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -120,9 +120,9 @@ template concept input_iterator = @\seebelow@; - // \ref{iterator.concept.output}, concept \libconcept{OutputIterator} + // \ref{iterator.concept.output}, concept \libconcept{output_iterator} template - concept OutputIterator = @\seebelow@; + concept output_iterator = @\seebelow@; // \ref{iterator.concept.forward}, concept \libconcept{ForwardIterator} template @@ -514,7 +514,7 @@ \pnum The six categories of iterators correspond to the iterator concepts \libconcept{input_iterator}\iref{iterator.concept.input}, -\libconcept{OutputIterator}\iref{iterator.concept.output}, +\libconcept{output_iterator}\iref{iterator.concept.output}, \libconcept{ForwardIterator}\iref{iterator.concept.forward}, \libconcept{BidirectionalIterator}\iref{iterator.concept.bidir} \libconcept{RandomAccessIterator}\iref{iterator.concept.random.access}, @@ -1624,20 +1624,20 @@ derived_from<@\placeholdernc{ITER_CONCEPT}@(I), input_iterator_tag>; \end{codeblock} -\rSec3[iterator.concept.output]{Concept \libconcept{OutputIterator}} +\rSec3[iterator.concept.output]{Concept \libconcept{output_iterator}} \pnum -The \libconcept{OutputIterator} concept defines requirements for a type that +The \libconcept{output_iterator} concept defines requirements for a type that can be used to write values (from the requirement for \libconcept{writable}\iref{iterator.concept.writable}) and which can be both pre- and post-incremented. \begin{note} Output iterators are not required to model \libconcept{equality_comparable}. \end{note} -\indexlibrary{\idxcode{OutputIterator}}% +\indexlibrary{\idxcode{output_iterator}}% \begin{codeblock} template - concept OutputIterator = + concept output_iterator = input_or_output_iterator && writable && requires(I i, T&& t) { @@ -1647,7 +1647,7 @@ \pnum Let \tcode{E} be an expression such that \tcode{decltype((E))} is \tcode{T}, and let \tcode{i} be a -dereferenceable object of type \tcode{I}. \tcode{I} and \tcode{T} model \tcode{\libconcept{OutputIterator}} only if +dereferenceable object of type \tcode{I}. \tcode{I} and \tcode{T} model \tcode{\libconcept{output_iterator}} only if \tcode{*i++ = E;} has effects equivalent to: \begin{codeblock} *i = E; diff --git a/source/ranges.tex b/source/ranges.tex index e75005a56e..d1cfc00334 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -985,7 +985,7 @@ \pnum The \libconcept{OutputRange} concept specifies requirements of a \libconcept{Range} type for which \tcode{ranges::begin} returns -a model of \libconcept{OutputIterator}\iref{iterator.concept.output}. +a model of \libconcept{output_iterator}\iref{iterator.concept.output}. \libconcept{InputRange}, \libconcept{ForwardRange}, \libconcept{BidirectionalRange}, and \libconcept{RandomAccessRange} are defined similarly. @@ -997,7 +997,7 @@ \begin{itemdecl} template concept OutputRange = - Range && OutputIterator, T>; + Range && output_iterator, T>; template concept InputRange = diff --git a/source/utilities.tex b/source/utilities.tex index e8464189a0..5fdcafa1a5 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -20233,11 +20233,11 @@ \pnum \constraints -\tcode{Out} satisfies \tcode{OutputIterator}. +\tcode{Out} satisfies \tcode{output_iterator}. \pnum \expects -\tcode{Out} models \tcode{OutputIterator}. +\tcode{Out} models \tcode{output_iterator}. \pnum \effects @@ -20290,11 +20290,11 @@ \pnum \constraints -\tcode{Out} satisfies \tcode{OutputIterator}. +\tcode{Out} satisfies \tcode{output_iterator}. \pnum \expects -\tcode{Out} models \tcode{OutputIterator}, and +\tcode{Out} models \tcode{output_iterator}, and \tcode{formatter<}$\tcode{T}_i$\tcode{, charT>} meets the \newoldconcept{Formatter} requirements\iref{formatter.requirements} for each $\tcode{T}_i$ in \tcode{Args}. @@ -20738,7 +20738,7 @@ consisting of the formatting arguments and the output iterator. \pnum -\tcode{Out} shall model \tcode{OutputIterator}. +\tcode{Out} shall model \tcode{output_iterator}. \pnum \indexlibrary{\idxcode{format_context}}% From 6dbef624e382aef72a25e5e8f89f24d4b9d62497 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:15:28 -0700 Subject: [PATCH 200/312] [everywhere] Rename concept 'ForwardIterator' to 'forward_iterator'. --- source/algorithms.tex | 76 +++++++++++++++++++++---------------------- source/iterators.tex | 28 ++++++++-------- source/ranges.tex | 18 +++++----- source/utilities.tex | 4 +-- 4 files changed, 63 insertions(+), 63 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 90301951f1..0bbdf3b711 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -772,7 +772,7 @@ BinaryPredicate pred); namespace ranges { - template S1, ForwardIterator I2, sentinel_for S2, + template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr subrange @@ -810,7 +810,7 @@ BinaryPredicate pred); namespace ranges { - template S1, ForwardIterator I2, sentinel_for S2, + template S1, forward_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectRelation, projected> Pred = ranges::equal_to> @@ -845,7 +845,7 @@ BinaryPredicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectRelation> Pred = ranges::equal_to> constexpr I adjacent_find(I first, S last, Pred pred = {}, Proj proj = {}); @@ -1031,7 +1031,7 @@ BinaryPredicate pred); namespace ranges { - template S1, ForwardIterator I2, + template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable @@ -1069,7 +1069,7 @@ BinaryPredicate pred); namespace ranges { - template S1, ForwardIterator I2, + template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable @@ -1107,7 +1107,7 @@ BinaryPredicate pred); namespace ranges { - template S, class T, + template S, class T, class Pred = ranges::equal_to, class Proj = identity> requires IndirectlyComparable constexpr subrange @@ -1655,7 +1655,7 @@ template S, weakly_incrementable O, class Proj = identity, IndirectRelation> C = ranges::equal_to> requires IndirectlyCopyable && - (ForwardIterator || + (forward_iterator || (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable) constexpr unique_copy_result @@ -1663,7 +1663,7 @@ template, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && - (ForwardIterator> || + (forward_iterator> || (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable, O>) constexpr unique_copy_result, O> @@ -1743,7 +1743,7 @@ template using rotate_copy_result = copy_result; - template S, weakly_incrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr rotate_copy_result rotate_copy(I first, I middle, S last, O result); @@ -1941,7 +1941,7 @@ Compare comp); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool is_sorted(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I is_sorted_until(I first, S last, Comp comp = {}, Proj proj = {}); template S, class T, class Proj = identity, + template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I lower_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -2036,7 +2036,7 @@ const T& value, Compare comp); namespace ranges { - template S, class T, class Proj = identity, + template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I upper_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template S, class T, class Proj = identity, + template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr subrange equal_range(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -2077,7 +2077,7 @@ const T& value, Compare comp); namespace ranges { - template S, class T, class Proj = identity, + template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool binary_search(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -2204,7 +2204,7 @@ Predicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I partition_point(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I min_element(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I max_element(I first, S last, Comp comp = {}, Proj proj = {}); template using minmax_element_result = minmax_result; - template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr minmax_element_result minmax_element(I first, S last, Comp comp = {}, Proj proj = {}); @@ -3298,7 +3298,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, BinaryPredicate pred); -template S1, ForwardIterator I2, sentinel_for S2, +template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable constexpr subrange @@ -3383,7 +3383,7 @@ ForwardIterator2 first2, ForwardIterator2 last2, BinaryPredicate pred); -template S1, ForwardIterator I2, sentinel_for S2, +template S1, forward_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, IndirectRelation, projected> Pred = ranges::equal_to> @@ -3450,7 +3450,7 @@ ForwardIterator first, ForwardIterator last, BinaryPredicate pred); -template S, class Proj = identity, +template S, class Proj = identity, IndirectRelation> Pred = ranges::equal_to> constexpr I ranges::adjacent_find(I first, S last, Pred pred = {}, Proj proj = {}); template S1, ForwardIterator I2, +template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable @@ -3916,7 +3916,7 @@ \indexlibrary{\idxcode{search}}% \begin{itemdecl} -template S1, ForwardIterator I2, +template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> requires IndirectlyComparable @@ -4004,7 +4004,7 @@ \indexlibrary{\idxcode{search_n}}% \begin{itemdecl} -template S, class T, +template S, class T, class Pred = ranges::equal_to, class Proj = identity> requires IndirectlyComparable constexpr subrange @@ -5226,7 +5226,7 @@ template S, weakly_incrementable O, class Proj = identity, IndirectRelation> C = ranges::equal_to> requires IndirectlyCopyable && - (ForwardIterator || + (forward_iterator || (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable) constexpr ranges::unique_copy_result @@ -5234,7 +5234,7 @@ template, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && - (ForwardIterator> || + (forward_iterator> || (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable, O>) constexpr ranges::unique_copy_result, O> @@ -5482,7 +5482,7 @@ ForwardIterator1 first, ForwardIterator1 middle, ForwardIterator1 last, ForwardIterator2 result); - template S, weakly_incrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr ranges::rotate_copy_result ranges::rotate_copy(I first, I middle, S last, O result); @@ -6204,7 +6204,7 @@ \indexlibrary{\idxcode{is_sorted}}% \begin{itemdecl} -template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool ranges::is_sorted(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::is_sorted_until(I first, S last, Comp comp = {}, Proj proj = {}); template S, class T, class Proj = identity, +template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::lower_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -6422,7 +6422,7 @@ upper_bound(ForwardIterator first, ForwardIterator last, const T& value, Compare comp); -template S, class T, class Proj = identity, +template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::upper_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template S, class T, class Proj = identity, +template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr subrange ranges::equal_range(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -6534,7 +6534,7 @@ binary_search(ForwardIterator first, ForwardIterator last, const T& value, Compare comp); -template S, class T, class Proj = identity, +template S, class T, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool ranges::binary_search(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); @@ -6822,7 +6822,7 @@ constexpr ForwardIterator partition_point(ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> constexpr I ranges::partition_point(I first, S last, Pred pred, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::min_element(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::max_element(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr ranges::minmax_result ranges::minmax_element(I first, S last, Comp comp = {}, Proj proj = {}); diff --git a/source/iterators.tex b/source/iterators.tex index b8a5b0ed5b..956b956e2d 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -124,9 +124,9 @@ template concept output_iterator = @\seebelow@; - // \ref{iterator.concept.forward}, concept \libconcept{ForwardIterator} + // \ref{iterator.concept.forward}, concept \libconcept{forward_iterator} template - concept ForwardIterator = @\seebelow@; + concept forward_iterator = @\seebelow@; // \ref{iterator.concept.bidir}, concept \libconcept{BidirectionalIterator} template @@ -515,7 +515,7 @@ The six categories of iterators correspond to the iterator concepts \libconcept{input_iterator}\iref{iterator.concept.input}, \libconcept{output_iterator}\iref{iterator.concept.output}, -\libconcept{ForwardIterator}\iref{iterator.concept.forward}, +\libconcept{forward_iterator}\iref{iterator.concept.forward}, \libconcept{BidirectionalIterator}\iref{iterator.concept.bidir} \libconcept{RandomAccessIterator}\iref{iterator.concept.random.access}, and @@ -1660,17 +1660,17 @@ They should be single-pass algorithms. \end{note} -\rSec3[iterator.concept.forward]{Concept \libconcept{ForwardIterator}} +\rSec3[iterator.concept.forward]{Concept \libconcept{forward_iterator}} \pnum -The \libconcept{ForwardIterator} concept adds +The \libconcept{forward_iterator} concept adds copyability, equality comparison, and the multi-pass guarantee, specified below. -\indexlibrary{\idxcode{ForwardIterator}}% +\indexlibrary{\idxcode{forward_iterator}}% \begin{codeblock} template - concept ForwardIterator = + concept forward_iterator = input_iterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), forward_iterator_tag> && incrementable && @@ -1722,7 +1722,7 @@ \begin{codeblock} template concept BidirectionalIterator = - ForwardIterator && + forward_iterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), bidirectional_iterator_tag> && requires(I i) { { --i } -> same_as; @@ -2559,7 +2559,7 @@ \begin{codeblock} template concept Permutable = - ForwardIterator && + forward_iterator && IndirectlyMovableStorable && IndirectlySwappable; \end{codeblock} @@ -4266,7 +4266,7 @@ \begin{itemdescr} \pnum \effects -If \tcode{Iterator} models \libconcept{ForwardIterator}, equivalent to: +If \tcode{Iterator} models \libconcept{forward_iterator}, equivalent to: \begin{codeblock} move_iterator tmp = *this; ++current; @@ -4727,7 +4727,7 @@ \begin{itemize} \item \tcode{iterator_concept} denotes \tcode{forward_iterator_tag} -if \tcode{I} models \libconcept{ForwardIterator}; +if \tcode{I} models \libconcept{forward_iterator}; otherwise it denotes \tcode{input_iterator_tag}. \item @@ -4911,7 +4911,7 @@ \pnum \effects -If \tcode{I} models \libconcept{ForwardIterator}, equivalent to: +If \tcode{I} models \libconcept{forward_iterator}, equivalent to: \begin{codeblock} common_iterator tmp = *this; ++*this; @@ -5096,7 +5096,7 @@ constexpr counted_iterator& operator++(); decltype(auto) operator++(int); constexpr counted_iterator operator++(int) - requires ForwardIterator; + requires forward_iterator; constexpr counted_iterator& operator--() requires BidirectionalIterator; constexpr counted_iterator operator--(int) @@ -5308,7 +5308,7 @@ \indexlibrarymember{operator++}{counted_iterator}% \begin{itemdecl} constexpr counted_iterator operator++(int) - requires ForwardIterator; + requires forward_iterator; \end{itemdecl} \begin{itemdescr} diff --git a/source/ranges.tex b/source/ranges.tex index d1cfc00334..b6e5b17a8a 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -594,7 +594,7 @@ the types \tcode{I} and \tcode{S} of \tcode{ranges::begin(E)} and \tcode{ranges::end(E)} (respectively) model both \tcode{\libconcept{sized_sentinel_for}}\iref{iterator.concept.sizedsentinel} and - \tcode{\libconcept{ForwardIterator}}. + \tcode{\libconcept{forward_iterator}}. However, \tcode{E} is evaluated only once. \item @@ -630,7 +630,7 @@ \tcode{bool(ranges::begin(E) == ranges::end(E))} except that \tcode{E} is only evaluated once, if \tcode{EQ} is a valid expression and - the type of \tcode{ranges::begin(E)} models \libconcept{ForwardIterator}. + the type of \tcode{ranges::begin(E)} models \libconcept{forward_iterator}. \item Otherwise, \tcode{ranges::empty(E)} is ill-formed. @@ -782,18 +782,18 @@ are amortized constant time and non-modifying, and \item if the type of \tcode{ranges::begin(E)} models -\libconcept{ForwardIterator}, \tcode{ranges::begin(E)} is equality-preserving. +\libconcept{forward_iterator}, \tcode{ranges::begin(E)} is equality-preserving. \end{itemize} \pnum \begin{note} Equality preservation of both \tcode{ranges::begin} and \tcode{ranges::end} enables passing a \libconcept{Range} whose iterator -type models \libconcept{ForwardIterator} to multiple +type models \libconcept{forward_iterator} to multiple algorithms and making multiple passes over the range by repeated calls to \tcode{ranges::begin} and \tcode{ranges::end}. Since \tcode{ranges::begin} is not required to be equality-preserving -when the return type does not model \libconcept{ForwardIterator}, repeated calls +when the return type does not model \libconcept{forward_iterator}, repeated calls might not return equal values or might not be well-defined; \tcode{ranges::begin} should be called at most once for such a range. \end{note} @@ -855,7 +855,7 @@ \item \tcode{ranges::size(t)} is \bigoh{1}, does not modify \tcode{t}, and is equal to \tcode{ranges::distance(t)}, and -\item if \tcode{iterator_t} models \libconcept{ForwardIterator}, +\item if \tcode{iterator_t} models \libconcept{forward_iterator}, \tcode{ranges::size(t)} is well-defined regardless of the evaluation of \tcode{ranges::begin(t)}. \begin{note} @@ -863,7 +863,7 @@ well-defined after evaluating \tcode{ranges::begin(t)}. For example, \tcode{ranges::size(t)} might be well-defined for a \libconcept{SizedRange} whose iterator type -does not model \libconcept{ForwardIterator} +does not model \libconcept{forward_iterator} only if evaluated before the first call to \tcode{ranges::begin(t)}. \end{note} \end{itemize} @@ -1005,7 +1005,7 @@ template concept ForwardRange = - InputRange && ForwardIterator>; + InputRange && forward_iterator>; template concept BidirectionalRange = @@ -1466,7 +1466,7 @@ \pnum \begin{note} -If \tcode{I} does not model \libconcept{ForwardIterator}, \tcode{next} +If \tcode{I} does not model \libconcept{forward_iterator}, \tcode{next} can invalidate \tcode{*this}. \end{note} \end{itemdescr} diff --git a/source/utilities.tex b/source/utilities.tex index 5fdcafa1a5..a97d367ee2 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -7983,14 +7983,14 @@ template concept @\placeholdernc{no-throw-forward-iterator}@ = // exposition only @\placeholder{no-throw-input-iterator}@ && - ForwardIterator && + forward_iterator && @\placeholdernc{no-throw-sentinel}@; \end{itemdecl} \begin{itemdescr} \pnum \begin{note} -This concept allows some \libconcept{ForwardIterator}\iref{iterator.concept.forward} +This concept allows some \libconcept{forward_iterator}\iref{iterator.concept.forward} operations to throw exceptions. \end{note} \end{itemdescr} From 8b751a65605bd6214cea68b34453eded4699b893 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:19:38 -0700 Subject: [PATCH 201/312] [everywhere] Rename concept 'BidirectionalIterator' to 'bidirectional_iterator'. --- source/algorithms.tex | 42 +++++++++++++++++++-------------------- source/iterators.tex | 46 +++++++++++++++++++++---------------------- source/ranges.tex | 10 +++++----- 3 files changed, 49 insertions(+), 49 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 0bbdf3b711..255e9746c1 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1217,11 +1217,11 @@ template using copy_backward_result = copy_result; - template S1, BidirectionalIterator I2> + template S1, bidirectional_iterator I2> requires IndirectlyCopyable constexpr copy_backward_result copy_backward(I1 first, S1 last, I2 result); - template + template requires IndirectlyCopyable, I> constexpr copy_backward_result, I> copy_backward(R&& r, I result); @@ -1260,11 +1260,11 @@ template using move_backward_result = copy_result; - template S1, BidirectionalIterator I2> + template S1, bidirectional_iterator I2> requires IndirectlyMovable constexpr move_backward_result move_backward(I1 first, S1 last, I2 result); - template + template requires IndirectlyMovable, I> constexpr move_backward_result, I> move_backward(R&& r, I result); @@ -1678,7 +1678,7 @@ BidirectionalIterator first, BidirectionalIterator last); namespace ranges { - template S> + template S> requires Permutable constexpr I reverse(I first, S last); template @@ -1700,7 +1700,7 @@ template using reverse_copy_result = copy_result; - template S, weakly_incrementable O> + template S, weakly_incrementable O> requires IndirectlyCopyable constexpr reverse_copy_result reverse_copy(I first, S last, O result); @@ -2137,7 +2137,7 @@ Predicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectUnaryPredicate> Pred> requires Permutable subrange stable_partition(I first, S last, Pred pred, Proj proj = {}); @@ -2279,7 +2279,7 @@ BidirectionalIterator last, Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable I inplace_merge(I first, I middle, S last, Comp comp = {}, Proj proj = {}); @@ -2858,7 +2858,7 @@ I in; }; - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr next_permutation_result @@ -2881,7 +2881,7 @@ template using prev_permutation_result = next_permutation_result; - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr prev_permutation_result @@ -4253,11 +4253,11 @@ BidirectionalIterator1 last, BidirectionalIterator2 result); -template S1, BidirectionalIterator I2> +template S1, bidirectional_iterator I2> requires IndirectlyCopyable constexpr ranges::copy_backward_result ranges::copy_backward(I1 first, S1 last, I2 result); -template +template requires IndirectlyCopyable, I> constexpr ranges::copy_backward_result, I> ranges::copy_backward(R&& r, I result); @@ -4395,11 +4395,11 @@ move_backward(BidirectionalIterator1 first, BidirectionalIterator1 last, BidirectionalIterator2 result); -template S1, BidirectionalIterator I2> +template S1, bidirectional_iterator I2> requires IndirectlyMovable constexpr ranges::move_backward_result ranges::move_backward(I1 first, S1 last, I2 result); -template +template requires IndirectlyMovable, I> constexpr ranges::move_backward_result, I> ranges::move_backward(R&& r, I result); @@ -5322,7 +5322,7 @@ void reverse(ExecutionPolicy&& exec, BidirectionalIterator first, BidirectionalIterator last); -template S> +template S> requires Permutable constexpr I ranges::reverse(I first, S last); template @@ -5365,7 +5365,7 @@ BidirectionalIterator first, BidirectionalIterator last, ForwardIterator result); -template S, weakly_incrementable O> +template S, weakly_incrementable O> requires IndirectlyCopyable constexpr ranges::reverse_copy_result ranges::reverse_copy(I first, S last, O result); @@ -6668,7 +6668,7 @@ At most $N / 2$ swaps if the type of \tcode{first} meets the \oldconcept{BidirectionalIterator} requirements for the overloads in namespace \tcode{std} or - models \libconcept{BidirectionalIterator} + models \libconcept{bidirectional_iterator} for the overloads in namespace \tcode{ranges}, and at most $N$ swaps otherwise. \item @@ -6688,7 +6688,7 @@ stable_partition(ExecutionPolicy&& exec, BidirectionalIterator first, BidirectionalIterator last, Predicate pred); -template S, class Proj = identity, +template S, class Proj = identity, IndirectUnaryPredicate> Pred> requires Permutable subrange ranges::stable_partition(I first, S last, Pred pred, Proj proj = {}); @@ -6978,7 +6978,7 @@ BidirectionalIterator middle, BidirectionalIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable I ranges::inplace_merge(I first, I middle, S last, Comp comp = {}, Proj proj = {}); @@ -8428,7 +8428,7 @@ constexpr bool next_permutation(BidirectionalIterator first, BidirectionalIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr ranges::next_permutation_result @@ -8487,7 +8487,7 @@ constexpr bool prev_permutation(BidirectionalIterator first, BidirectionalIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr ranges::prev_permutation_result diff --git a/source/iterators.tex b/source/iterators.tex index 956b956e2d..0bf9240469 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -128,9 +128,9 @@ template concept forward_iterator = @\seebelow@; - // \ref{iterator.concept.bidir}, concept \libconcept{BidirectionalIterator} + // \ref{iterator.concept.bidir}, concept \libconcept{bidirectional_iterator} template - concept BidirectionalIterator = @\seebelow@; + concept bidirectional_iterator = @\seebelow@; // \ref{iterator.concept.random.access}, concept \libconcept{RandomAccessIterator} template @@ -256,11 +256,11 @@ constexpr I next(I x, iter_difference_t n, S bound); // \ref{range.iter.op.prev}, \tcode{ranges::prev} - template + template constexpr I prev(I x); - template + template constexpr I prev(I x, iter_difference_t n); - template + template constexpr I prev(I x, iter_difference_t n, I bound); } @@ -516,7 +516,7 @@ \libconcept{input_iterator}\iref{iterator.concept.input}, \libconcept{output_iterator}\iref{iterator.concept.output}, \libconcept{forward_iterator}\iref{iterator.concept.forward}, -\libconcept{BidirectionalIterator}\iref{iterator.concept.bidir} +\libconcept{bidirectional_iterator}\iref{iterator.concept.bidir} \libconcept{RandomAccessIterator}\iref{iterator.concept.random.access}, and \libconcept{ContiguousIterator}\iref{iterator.concept.contiguous}, @@ -1712,16 +1712,16 @@ allow the use of multi-pass one-directional algorithms with forward iterators. \end{note} -\rSec3[iterator.concept.bidir]{Concept \libconcept{BidirectionalIterator}} +\rSec3[iterator.concept.bidir]{Concept \libconcept{bidirectional_iterator}} \pnum -The \libconcept{BidirectionalIterator} concept adds the ability +The \libconcept{bidirectional_iterator} concept adds the ability to move an iterator backward as well as forward. -\indexlibrary{\idxcode{BidirectionalIterator}}% +\indexlibrary{\idxcode{bidirectional_iterator}}% \begin{codeblock} template - concept BidirectionalIterator = + concept bidirectional_iterator = forward_iterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), bidirectional_iterator_tag> && requires(I i) { @@ -1737,7 +1737,7 @@ \pnum Let \tcode{a} and \tcode{b} be equal objects of type \tcode{I}. -\tcode{I} models \libconcept{BidirectionalIterator} only if: +\tcode{I} models \libconcept{bidirectional_iterator} only if: \begin{itemize} \item If \tcode{a} and \tcode{b} are decrementable, @@ -1765,7 +1765,7 @@ \begin{codeblock} template concept RandomAccessIterator = - BidirectionalIterator && + bidirectional_iterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), random_access_iterator_tag> && totally_ordered && sized_sentinel_for && @@ -2845,7 +2845,7 @@ \begin{itemdescr} \pnum \expects -If \tcode{I} does not model \libconcept{BidirectionalIterator}, +If \tcode{I} does not model \libconcept{bidirectional_iterator}, \tcode{n} is not negative. \pnum @@ -2894,7 +2894,7 @@ If \tcode{n > 0}, \range{i}{bound} denotes a range. If \tcode{n == 0}, \range{i}{bound} or \range{bound}{i} denotes a range. If \tcode{n < 0}, \range{bound}{i} denotes a range, -\tcode{I} models \libconcept{BidirectionalIterator}, and +\tcode{I} models \libconcept{bidirectional_iterator}, and \tcode{I} and \tcode{S} model \tcode{\libconcept{same_as}}. \pnum @@ -3016,7 +3016,7 @@ \rSec3[range.iter.op.prev]{\tcode{ranges::prev}} \indexlibrary{\idxcode{prev}}% \begin{itemdecl} -template +template constexpr I ranges::prev(I x); \end{itemdecl} @@ -3027,7 +3027,7 @@ \indexlibrary{\idxcode{prev}}% \begin{itemdecl} -template +template constexpr I ranges::prev(I x, iter_difference_t n); \end{itemdecl} @@ -3038,7 +3038,7 @@ \indexlibrary{\idxcode{prev}}% \begin{itemdecl} -template +template constexpr I ranges::prev(I x, iter_difference_t n, I bound); \end{itemdecl} @@ -3133,7 +3133,7 @@ shall either meet the requirements of a \oldconcept{BidirectionalIterator}\iref{bidirectional.iterators} or model -\libconcept{BidirectionalIterator}\iref{iterator.concept.bidir}. +\libconcept{bidirectional_iterator}\iref{iterator.concept.bidir}. \pnum Additionally, @@ -4130,7 +4130,7 @@ Additionally, if any of the bidirectional traversal functions are instantiated, the template parameter shall either meet the \oldconcept{BidirectionalIterator} requirements\iref{bidirectional.iterators} -or model \libconcept{BidirectionalIterator}\iref{iterator.concept.bidir}. +or model \libconcept{bidirectional_iterator}\iref{iterator.concept.bidir}. If any of the random access traversal functions are instantiated, the template parameter shall either meet the \oldconcept{RandomAccessIterator} requirements\iref{random.access.iterators} @@ -5098,9 +5098,9 @@ constexpr counted_iterator operator++(int) requires forward_iterator; constexpr counted_iterator& operator--() - requires BidirectionalIterator; + requires bidirectional_iterator; constexpr counted_iterator operator--(int) - requires BidirectionalIterator; + requires bidirectional_iterator; constexpr counted_iterator operator+(iter_difference_t n) const requires RandomAccessIterator; @@ -5324,7 +5324,7 @@ \indexlibrarymember{operator{-}-}{counted_iterator}% \begin{itemdecl} constexpr counted_iterator& operator--(); - requires BidirectionalIterator + requires bidirectional_iterator \end{itemdecl} \begin{itemdescr} @@ -5340,7 +5340,7 @@ \indexlibrarymember{operator{-}-}{counted_iterator}% \begin{itemdecl} constexpr counted_iterator operator--(int) - requires BidirectionalIterator; + requires bidirectional_iterator; \end{itemdecl} \begin{itemdescr} diff --git a/source/ranges.tex b/source/ranges.tex index b6e5b17a8a..88d96141c8 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -453,7 +453,7 @@ Otherwise, \tcode{make_reverse_iterator(ranges::end(E))} if both \tcode{ranges::begin(E)} and \tcode{ranges::end(\brk{}E)} are valid expressions of the same type \tcode{I} which models - \libconcept{BidirectionalIterator}\iref{iterator.concept.bidir}. + \libconcept{bidirectional_iterator}\iref{iterator.concept.bidir}. \item Otherwise, \tcode{ranges::rbegin(E)} is ill-formed. @@ -497,7 +497,7 @@ Otherwise, \tcode{make_reverse_iterator(ranges::begin(E))} if both \tcode{ranges::begin(E)} and \tcode{ranges::\brk{}end(E)} are valid expressions of the same type \tcode{I} which models - \libconcept{BidirectionalIterator}\iref{iterator.concept.bidir}. + \libconcept{bidirectional_iterator}\iref{iterator.concept.bidir}. \item Otherwise, \tcode{ranges::rend(E)} is ill-formed. @@ -1009,7 +1009,7 @@ template concept BidirectionalRange = - ForwardRange && BidirectionalIterator>; + ForwardRange && bidirectional_iterator>; template concept RandomAccessRange = @@ -1294,7 +1294,7 @@ [[nodiscard]] constexpr subrange next(iter_difference_t n = 1) const; [[nodiscard]] constexpr subrange prev(iter_difference_t n = 1) const - requires BidirectionalIterator; + requires bidirectional_iterator; constexpr subrange& advance(iter_difference_t n); friend constexpr I begin(subrange&& r) { return r.begin(); } @@ -1474,7 +1474,7 @@ \indexlibrary{\idxcode{prev}!\idxcode{subrange}}% \begin{itemdecl} [[nodiscard]] constexpr subrange prev(iter_difference_t n = 1) const - requires BidirectionalIterator; + requires bidirectional_iterator; \end{itemdecl} \begin{itemdescr} From 6cb800bc7e6f2aa06c03b4d46cb43621c62bacbd Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:23:35 -0700 Subject: [PATCH 202/312] [everywhere] Rename concept 'RandomAccessIterator' to 'random_access_iterator'. --- source/algorithms.tex | 48 ++++++++++++++++++------------------- source/iterators.tex | 56 +++++++++++++++++++++---------------------- source/ranges.tex | 6 ++--- 3 files changed, 55 insertions(+), 55 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 255e9746c1..27a81afcfa 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1767,7 +1767,7 @@ UniformRandomBitGenerator&& g); namespace ranges { - template S, class Gen> + template S, class Gen> requires Permutable && UniformRandomBitGenerator> I shuffle(I first, S last, Gen&& g); @@ -1813,7 +1813,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -1838,7 +1838,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable I stable_sort(I first, S last, Comp comp = {}, Proj proj = {}); @@ -1868,7 +1868,7 @@ RandomAccessIterator last, Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -1909,7 +1909,7 @@ namespace ranges { template using partial_sort_copy_result = copy_result; - template S1, RandomAccessIterator I2, sentinel_for S2, + template S1, random_access_iterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable && Sortable && IndirectStrictWeakOrder, projected> @@ -1993,7 +1993,7 @@ RandomAccessIterator last, Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -2509,7 +2509,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -2527,7 +2527,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -2545,7 +2545,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -2563,7 +2563,7 @@ Compare comp); namespace ranges { - template S, class Comp = ranges::less, + template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -2588,7 +2588,7 @@ Compare comp); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool is_heap(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, + template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I is_heap_until(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Gen> +template S, class Gen> requires Permutable && UniformRandomBitGenerator> I ranges::shuffle(I first, S last, Gen&& g); @@ -5844,7 +5844,7 @@ RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -5903,7 +5903,7 @@ RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable I ranges::stable_sort(I first, S last, Comp comp = {}, Proj proj = {}); @@ -5975,7 +5975,7 @@ RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -6066,7 +6066,7 @@ RandomAccessIterator result_last, Compare comp); -template S1, RandomAccessIterator I2, sentinel_for S2, +template S1, random_access_iterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable && Sortable && IndirectStrictWeakOrder, projected> @@ -6285,7 +6285,7 @@ RandomAccessIterator first, RandomAccessIterator nth, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -7541,7 +7541,7 @@ constexpr void push_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -7592,7 +7592,7 @@ constexpr void pop_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -7650,7 +7650,7 @@ constexpr void make_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -7699,7 +7699,7 @@ constexpr void sort_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp); -template S, class Comp = ranges::less, +template S, class Comp = ranges::less, class Proj = identity> requires Sortable constexpr I @@ -7804,7 +7804,7 @@ \indexlibrary{\idxcode{is_heap}}% \begin{itemdecl} -template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr bool ranges::is_heap(I first, S last, Comp comp = {}, Proj proj = {}); template S, class Proj = identity, +template S, class Proj = identity, IndirectStrictWeakOrder> Comp = ranges::less> constexpr I ranges::is_heap_until(I first, S last, Comp comp = {}, Proj proj = {}); template concept bidirectional_iterator = @\seebelow@; - // \ref{iterator.concept.random.access}, concept \libconcept{RandomAccessIterator} + // \ref{iterator.concept.random.access}, concept \libconcept{random_access_iterator} template - concept RandomAccessIterator = @\seebelow@; + concept random_access_iterator = @\seebelow@; // \ref{iterator.concept.contiguous}, concept \libconcept{ContiguousIterator} template @@ -517,7 +517,7 @@ \libconcept{output_iterator}\iref{iterator.concept.output}, \libconcept{forward_iterator}\iref{iterator.concept.forward}, \libconcept{bidirectional_iterator}\iref{iterator.concept.bidir} -\libconcept{RandomAccessIterator}\iref{iterator.concept.random.access}, +\libconcept{random_access_iterator}\iref{iterator.concept.random.access}, and \libconcept{ContiguousIterator}\iref{iterator.concept.contiguous}, respectively. @@ -1596,7 +1596,7 @@ \pnum \begin{example} The \libconcept{sized_sentinel_for} concept is modeled by pairs of -\libconcept{RandomAccessIterator}s\iref{iterator.concept.random.access} and by +\libconcept{random_access_iterator}s\iref{iterator.concept.random.access} and by counted iterators and their sentinels\iref{counted.iterator}. \end{example} \end{itemdescr} @@ -1753,18 +1753,18 @@ \tcode{bool(--(++a) == b)}. \end{itemize} -\rSec3[iterator.concept.random.access]{Concept \libconcept{RandomAccessIterator}} +\rSec3[iterator.concept.random.access]{Concept \libconcept{random_access_iterator}} \pnum -The \libconcept{RandomAccessIterator} concept adds support for +The \libconcept{random_access_iterator} concept adds support for constant-time advancement with \tcode{+=}, \tcode{+}, \tcode{-=}, and \tcode{-}, as well as the computation of distance in constant time with \tcode{-}. Random access iterators also support array notation via subscripting. -\indexlibrary{\idxcode{RandomAccessIterator}}% +\indexlibrary{\idxcode{random_access_iterator}}% \begin{codeblock} template - concept RandomAccessIterator = + concept random_access_iterator = bidirectional_iterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), random_access_iterator_tag> && totally_ordered && @@ -1785,7 +1785,7 @@ after \tcode{n} applications of \tcode{++a}, let \tcode{D} be \tcode{iter_difference_t}, and let \tcode{n} denote a value of type \tcode{D}. -\tcode{I} models \libconcept{RandomAccessIterator} only if +\tcode{I} models \libconcept{random_access_iterator} only if \begin{itemize} \item \tcode{(a += n)} is equal to \tcode{b}. @@ -1817,7 +1817,7 @@ \begin{codeblock} template concept @\libconcept{ContiguousIterator}@ = - RandomAccessIterator && + random_access_iterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), contiguous_iterator_tag> && is_lvalue_reference_v> && same_as, remove_cvref_t>> && @@ -2800,8 +2800,8 @@ possible for a concrete iterator type. \begin{example} \tcode{ranges::advance} uses the \tcode{+} operator to move a -\libconcept{RandomAccessIterator} forward \tcode{n} steps in constant time. -For an iterator type that does not model \libconcept{RandomAccessIterator}, +\libconcept{random_access_iterator} forward \tcode{n} steps in constant time. +For an iterator type that does not model \libconcept{random_access_iterator}, \tcode{ranges::advance} instead performs \tcode{n} individual increments with the \tcode{++} operator. \end{example} @@ -2851,7 +2851,7 @@ \pnum \effects \begin{itemize} -\item If \tcode{I} models \libconcept{RandomAccessIterator}, +\item If \tcode{I} models \libconcept{random_access_iterator}, equivalent to \tcode{i += n}. \item Otherwise, if \tcode{n} is non-negative, increments \tcode{i} by \tcode{n}. @@ -3108,7 +3108,7 @@ \begin{itemize} \item \tcode{random_access_iterator_tag} if \tcode{Iterator} models -\libconcept{RandomAccessIterator}, and +\libconcept{random_access_iterator}, and \item \tcode{bidirectional_iterator_tag} otherwise. \end{itemize} @@ -3141,7 +3141,7 @@ shall either meet the requirements of a \oldconcept{RandomAccessIterator}\iref{random.access.iterators} or model -\libconcept{RandomAccessIterator}\iref{iterator.concept.random.access} +\libconcept{random_access_iterator}\iref{iterator.concept.random.access} if the definitions of any of the members \begin{itemize} \item @@ -4135,7 +4135,7 @@ template parameter shall either meet the \oldconcept{RandomAccessIterator} requirements\iref{random.access.iterators} or model -\libconcept{RandomAccessIterator}\iref{iterator.concept.random.access}. +\libconcept{random_access_iterator}\iref{iterator.concept.random.access}. \rSec3[move.iter.cons]{Construction and assignment} @@ -5103,15 +5103,15 @@ requires bidirectional_iterator; constexpr counted_iterator operator+(iter_difference_t n) const - requires RandomAccessIterator; + requires random_access_iterator; friend constexpr counted_iterator operator+( iter_difference_t n, const counted_iterator& x) - requires RandomAccessIterator; + requires random_access_iterator; constexpr counted_iterator& operator+=(iter_difference_t n) - requires RandomAccessIterator; + requires random_access_iterator; constexpr counted_iterator operator-(iter_difference_t n) const - requires RandomAccessIterator; + requires random_access_iterator; template I2> friend constexpr iter_difference_t operator-( const counted_iterator& x, const counted_iterator& y); @@ -5120,10 +5120,10 @@ friend constexpr iter_difference_t operator-( default_sentinel_t, const counted_iterator& y); constexpr counted_iterator& operator-=(iter_difference_t n) - requires RandomAccessIterator; + requires random_access_iterator; constexpr decltype(auto) operator[](iter_difference_t n) const - requires RandomAccessIterator; + requires random_access_iterator; template I2> friend constexpr bool operator==( @@ -5256,7 +5256,7 @@ \indexlibrarymember{operator[]}{counted_iterator}% \begin{itemdecl} constexpr decltype(auto) operator[](iter_difference_t n) const - requires RandomAccessIterator; + requires random_access_iterator; \end{itemdecl} \begin{itemdescr} @@ -5356,7 +5356,7 @@ \indexlibrarymember{operator+}{counted_iterator}% \begin{itemdecl} constexpr counted_iterator operator+(iter_difference_t n) const - requires RandomAccessIterator; + requires random_access_iterator; \end{itemdecl} \begin{itemdescr} @@ -5368,7 +5368,7 @@ \begin{itemdecl} friend constexpr counted_iterator operator+( iter_difference_t n, const counted_iterator& x) - requires RandomAccessIterator; + requires random_access_iterator; \end{itemdecl} \begin{itemdescr} @@ -5379,7 +5379,7 @@ \indexlibrarymember{operator+=}{counted_iterator}% \begin{itemdecl} constexpr counted_iterator& operator+=(iter_difference_t n) - requires RandomAccessIterator; + requires random_access_iterator; \end{itemdecl} \begin{itemdescr} @@ -5398,7 +5398,7 @@ \indexlibrarymember{operator-}{counted_iterator}% \begin{itemdecl} constexpr counted_iterator operator-(iter_difference_t n) const - requires RandomAccessIterator; + requires random_access_iterator; \end{itemdecl} \begin{itemdescr} @@ -5449,7 +5449,7 @@ \indexlibrarymember{operator-=}{counted_iterator}% \begin{itemdecl} constexpr counted_iterator& operator-=(iter_difference_t n) - requires RandomAccessIterator; + requires random_access_iterator; \end{itemdecl} \begin{itemdescr} diff --git a/source/ranges.tex b/source/ranges.tex index 88d96141c8..b5a100e42f 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -729,7 +729,7 @@ return objects of the same type. Random access ranges are ranges for which \tcode{ranges::begin} returns a type that models -\libconcept{RandomAccessIterator}\iref{iterator.concept.random.access}. +\libconcept{random_access_iterator}\iref{iterator.concept.random.access}. (Contiguous, bidirectional, forward, input, and output ranges are defined similarly.) Viewable ranges can be converted to views. @@ -1013,7 +1013,7 @@ template concept RandomAccessRange = - BidirectionalRange && RandomAccessIterator>; + BidirectionalRange && random_access_iterator>; \end{itemdecl} \pnum @@ -5255,7 +5255,7 @@ \tcode{decltype((F))} models \tcode{\libconcept{convertible_to}>}, \begin{itemize} \item \tcode{subrange\{E, E + static_cast>(F)\}} - if \tcode{T} models \libconcept{RandomAccessIterator}. + if \tcode{T} models \libconcept{random_access_iterator}. \item Otherwise, \tcode{subrange\{counted_iterator\{E, F\}, default_sentinel\}}. \end{itemize} From a3b0585c092fbc6a1fc6b75d43f05c430601208a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:24:01 -0700 Subject: [PATCH 203/312] [everywhere] Rename concept 'ContiguousIterator' to 'contiguous_iterator'. --- source/containers.tex | 4 ++-- source/iterators.tex | 16 ++++++++-------- source/numerics.tex | 4 ++-- source/ranges.tex | 8 ++++---- source/strings.tex | 2 +- 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/source/containers.tex b/source/containers.tex index 085159a376..45344b96e2 100644 --- a/source/containers.tex +++ b/source/containers.tex @@ -465,7 +465,7 @@ whose member types \tcode{iterator} and \tcode{const_iterator} meet the \oldconcept{RandomAccessIterator} requirements\iref{random.access.iterators} and -model \libconcept{ContiguousIterator}\iref{iterator.concept.contiguous}. +model \libconcept{contiguous_iterator}\iref{iterator.concept.contiguous}. \pnum \tref{container.opt} lists operations that are provided @@ -10814,7 +10814,7 @@ \begin{itemdescr} \pnum The types -model \libconcept{ContiguousIterator}\iref{iterator.concept.contiguous}, +model \libconcept{contiguous_iterator}\iref{iterator.concept.contiguous}, meet the \oldconcept{RandomAccessIterator} requirements\iref{random.access.iterators}, and diff --git a/source/iterators.tex b/source/iterators.tex index edfd1c7724..8d15036463 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -136,9 +136,9 @@ template concept random_access_iterator = @\seebelow@; - // \ref{iterator.concept.contiguous}, concept \libconcept{ContiguousIterator} + // \ref{iterator.concept.contiguous}, concept \libconcept{contiguous_iterator} template - concept ContiguousIterator = @\seebelow@; + concept contiguous_iterator = @\seebelow@; // \ref{indirectcallable}, indirect callable requirements // \ref{indirectcallable.indirectinvocable}, indirect callables @@ -519,7 +519,7 @@ \libconcept{bidirectional_iterator}\iref{iterator.concept.bidir} \libconcept{random_access_iterator}\iref{iterator.concept.random.access}, and -\libconcept{ContiguousIterator}\iref{iterator.concept.contiguous}, +\libconcept{contiguous_iterator}\iref{iterator.concept.contiguous}, respectively. The generic term \defn{iterator} refers to any type that models the \libconcept{input_or_output_iterator} concept\iref{iterator.concept.iterator}. @@ -1807,16 +1807,16 @@ \item \tcode{bool(a <= b)} is \tcode{true}. \end{itemize} -\rSec3[iterator.concept.contiguous]{Concept \libconcept{ContiguousIterator}} +\rSec3[iterator.concept.contiguous]{Concept \libconcept{contiguous_iterator}} \pnum -The \libconcept{ContiguousIterator} concept provides a guarantee that +The \libconcept{contiguous_iterator} concept provides a guarantee that the denoted elements are stored contiguously in memory. -\indexlibrary{\idxcode{ContiguousIterator}}% +\indexlibrary{\idxcode{contiguous_iterator}}% \begin{codeblock} template - concept @\libconcept{ContiguousIterator}@ = + concept @\libconcept{contiguous_iterator}@ = random_access_iterator && derived_from<@\placeholdernc{ITER_CONCEPT}@(I), contiguous_iterator_tag> && is_lvalue_reference_v> && @@ -1832,7 +1832,7 @@ such that \tcode{b} is reachable from \tcode{a} and \tcode{c} is reachable from \tcode{b}, and let \tcode{D} be \tcode{iter_difference_t}. -The type \tcode{I} models \libconcept{ContiguousIterator} only if +The type \tcode{I} models \libconcept{contiguous_iterator} only if \begin{itemize} \item \tcode{to_address(a) == addressof(*a)}, \item \tcode{to_address(b) == to_address(a) + D(b - a)}, and diff --git a/source/numerics.tex b/source/numerics.tex index 5ee9e4164e..0dc3e4bd9b 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -8715,12 +8715,12 @@ In the \tcode{begin} and \tcode{end} function templates that follow, \unspec{1} is a type that meets the requirements of a mutable \oldconcept{RandomAccessIterator}\iref{random.access.iterators} -and models \libconcept{ContiguousIterator}\iref{iterator.concept.contiguous}, +and models \libconcept{contiguous_iterator}\iref{iterator.concept.contiguous}, whose \tcode{value_type} is the template parameter \tcode{T} and whose \tcode{reference} type is \tcode{T\&}. \unspec{2} is a type that meets the requirements of a constant \oldconcept{RandomAccessIterator} -and models \libconcept{ContiguousIterator}, +and models \libconcept{contiguous_iterator}, whose \tcode{value_type} is the template parameter \tcode{T} and whose \tcode{reference} type is \tcode{const T\&}. diff --git a/source/ranges.tex b/source/ranges.tex index b5a100e42f..116c9cc05d 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -660,7 +660,7 @@ \item Otherwise, if \tcode{ranges::begin(E)} is a valid expression whose type models - \tcode{ContiguousIterator}, + \tcode{contiguous_iterator}, \tcode{to_address(ranges::begin(E))}. \item @@ -1025,7 +1025,7 @@ \begin{itemdecl} template concept ContiguousRange = - RandomAccessRange && ContiguousIterator> && + RandomAccessRange && contiguous_iterator> && requires(T& t) { { ranges::data(t) } -> same_as>>; }; @@ -1122,11 +1122,11 @@ return !ranges::empty(derived()); } - constexpr auto data() requires ContiguousIterator> { + constexpr auto data() requires contiguous_iterator> { return to_address(ranges::begin(derived())); } constexpr auto data() const - requires Range && ContiguousIterator> { + requires Range && contiguous_iterator> { return to_address(ranges::begin(derived())); } diff --git a/source/strings.tex b/source/strings.tex index 718d27f744..a0c3c16f35 100644 --- a/source/strings.tex +++ b/source/strings.tex @@ -4092,7 +4092,7 @@ A type that meets the requirements of a constant \oldconcept{RandomAccessIterator}\iref{random.access.iterators}, -models \libconcept{ContiguousIterator}\iref{iterator.concept.contiguous}, and +models \libconcept{contiguous_iterator}\iref{iterator.concept.contiguous}, and meets the constexpr iterator requirements\iref{iterator.requirements.general}, whose \tcode{value_type} is the template parameter \tcode{charT}. From 59bb331a58e383724d6750bdda025a7d16bcb9a8 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:24:26 -0700 Subject: [PATCH 204/312] [everywhere] Rename concept 'IndirectUnaryInvocable' to 'indirectly_unary_invocable'. --- source/algorithms.tex | 8 ++++---- source/iterators.tex | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 27a81afcfa..1f14449785 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -686,11 +686,11 @@ }; template S, class Proj = identity, - IndirectUnaryInvocable> Fun> + indirectly_unary_invocable> Fun> constexpr for_each_result for_each(I first, S last, Fun f, Proj proj = {}); template, Proj>> Fun> + indirectly_unary_invocable, Proj>> Fun> constexpr for_each_result, Fun> for_each(R&& r, Fun f, Proj proj = {}); } @@ -3082,11 +3082,11 @@ \indexlibrary{\idxcode{for_each}}% \begin{itemdecl} template S, class Proj = identity, - IndirectUnaryInvocable> Fun> + indirectly_unary_invocable> Fun> constexpr ranges::for_each_result ranges::for_each(I first, S last, Fun f, Proj proj = {}); template, Proj>> Fun> + indirectly_unary_invocable, Proj>> Fun> constexpr ranges::for_each_result, Fun> ranges::for_each(R&& r, Fun f, Proj proj = {}); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index 8d15036463..b019092606 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -143,7 +143,7 @@ // \ref{indirectcallable}, indirect callable requirements // \ref{indirectcallable.indirectinvocable}, indirect callables template - concept IndirectUnaryInvocable = @\seebelow@; + concept indirectly_unary_invocable = @\seebelow@; template concept IndirectRegularUnaryInvocable = @\seebelow@; @@ -2313,7 +2313,7 @@ The indirect callable concepts are used to constrain those algorithms that accept callable objects~(\ref{func.def}) as arguments. -\indexlibrary{\idxcode{IndirectUnaryInvocable}}% +\indexlibrary{\idxcode{indirectly_unary_invocable}}% \indexlibrary{\idxcode{IndirectRegularUnaryInvocable}}% \indexlibrary{\idxcode{IndirectUnaryPredicate}}% \indexlibrary{\idxcode{IndirectRelation}}% @@ -2321,7 +2321,7 @@ \begin{codeblock} namespace std { template - concept IndirectUnaryInvocable = + concept indirectly_unary_invocable = readable && copy_constructible && invocable&> && From 351ac726a58721240005b74e0b0fca95d4134a0e Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:24:47 -0700 Subject: [PATCH 205/312] [everywhere] Rename concept 'IndirectRegularUnaryInvocable' to 'indirectly_regular_unary_invocable'. --- source/iterators.tex | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index b019092606..c5e431433d 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -146,7 +146,7 @@ concept indirectly_unary_invocable = @\seebelow@; template - concept IndirectRegularUnaryInvocable = @\seebelow@; + concept indirectly_regular_unary_invocable = @\seebelow@; template concept IndirectUnaryPredicate = @\seebelow@; @@ -162,7 +162,7 @@ using indirect_result_t = invoke_result_t...>; // \ref{projected}, projected - template Proj> + template Proj> struct projected; template @@ -2314,7 +2314,7 @@ that accept callable objects~(\ref{func.def}) as arguments. \indexlibrary{\idxcode{indirectly_unary_invocable}}% -\indexlibrary{\idxcode{IndirectRegularUnaryInvocable}}% +\indexlibrary{\idxcode{indirectly_regular_unary_invocable}}% \indexlibrary{\idxcode{IndirectUnaryPredicate}}% \indexlibrary{\idxcode{IndirectRelation}}% \indexlibrary{\idxcode{IndirectStrictWeakOrder}}% @@ -2332,7 +2332,7 @@ invoke_result_t>>; template - concept IndirectRegularUnaryInvocable = + concept indirectly_regular_unary_invocable = readable && copy_constructible && regular_invocable&> && @@ -2385,7 +2385,7 @@ \indexlibrary{\idxcode{projected}}% \begin{codeblock} namespace std { - template Proj> + template Proj> struct projected { using value_type = remove_cvref_t>; indirect_result_t operator*() const; // \notdef From 48be234669a6384e73ca0ec49909fa8bed5b115e Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:25:56 -0700 Subject: [PATCH 206/312] [everywhere] Rename concept 'IndirectUnaryPredicate' to 'indirect_unary_predicate'. --- source/algorithms.tex | 128 +++++++++++++++++++++--------------------- source/iterators.tex | 8 +-- source/ranges.tex | 12 ++-- 3 files changed, 74 insertions(+), 74 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 1f14449785..6928704d91 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -620,10 +620,10 @@ namespace ranges { template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr bool all_of(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr bool all_of(R&& r, Pred pred, Proj proj = {}); } @@ -636,10 +636,10 @@ namespace ranges { template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr bool any_of(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr bool any_of(R&& r, Pred pred, Proj proj = {}); } @@ -652,10 +652,10 @@ namespace ranges { template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr bool none_of(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr bool none_of(R&& r, Pred pred, Proj proj = {}); } @@ -733,17 +733,17 @@ constexpr safe_iterator_t find(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr I find_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr safe_iterator_t find_if(R&& r, Pred pred, Proj proj = {}); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr I find_if_not(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr safe_iterator_t find_if_not(R&& r, Pred pred, Proj proj = {}); } @@ -881,11 +881,11 @@ constexpr range_difference_t count(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr iter_difference_t count_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr range_difference_t count_if(R&& r, Pred pred, Proj proj = {}); } @@ -1197,12 +1197,12 @@ using copy_if_result = copy_result; template S, weakly_incrementable O, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> requires IndirectlyCopyable constexpr copy_if_result copy_if(I first, S last, O result, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires IndirectlyCopyable, O> constexpr copy_if_result, O> copy_if(R&& r, O result, Pred pred, Proj proj = {}); @@ -1402,11 +1402,11 @@ constexpr safe_iterator_t replace(R&& r, const T1& old_value, const T2& new_value, Proj proj = {}); template S, class T, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> requires writable constexpr I replace_if(I first, S last, Pred pred, const T& new_value, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires writable, const T&> constexpr safe_iterator_t replace_if(R&& r, Pred pred, const T& new_value, Proj proj = {}); @@ -1455,13 +1455,13 @@ using replace_copy_if_result = copy_result; template S, class T, output_iterator O, - class Proj = identity, IndirectUnaryPredicate> Pred> + class Proj = identity, indirect_unary_predicate> Pred> requires IndirectlyCopyable constexpr replace_copy_if_result replace_copy_if(I first, S last, O result, Pred pred, const T& new_value, Proj proj = {}); template O, class Proj = identity, - IndirectUnaryPredicate, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires IndirectlyCopyable, O> constexpr replace_copy_if_result, O> replace_copy_if(R&& r, O result, Pred pred, const T& new_value, @@ -1542,10 +1542,10 @@ constexpr safe_subrange_t remove(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr subrange remove_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires Permutable> constexpr safe_subrange_t remove_if(R&& r, Pred pred, Proj proj = {}); @@ -1592,12 +1592,12 @@ using remove_copy_if_result = copy_result; template S, weakly_incrementable O, - class Proj = identity, IndirectUnaryPredicate> Pred> + class Proj = identity, indirect_unary_predicate> Pred> requires IndirectlyCopyable constexpr remove_copy_if_result remove_copy_if(I first, S last, O result, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires IndirectlyCopyable, O> constexpr remove_copy_if_result, O> remove_copy_if(R&& r, O result, Pred pred, Proj proj = {}); @@ -2097,10 +2097,10 @@ namespace ranges { template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr bool is_partitioned(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr bool is_partitioned(R&& r, Pred pred, Proj proj = {}); } @@ -2116,11 +2116,11 @@ namespace ranges { template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr subrange partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires Permutable> constexpr safe_subrange_t partition(R&& r, Pred pred, Proj proj = {}); @@ -2138,11 +2138,11 @@ namespace ranges { template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> requires Permutable subrange stable_partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires Permutable> safe_subrange_t stable_partition(R&& r, Pred pred, Proj proj = {}); } @@ -2184,14 +2184,14 @@ }; template S, weakly_incrementable O1, weakly_incrementable O2, - class Proj = identity, IndirectUnaryPredicate> Pred> + class Proj = identity, indirect_unary_predicate> Pred> requires IndirectlyCopyable && IndirectlyCopyable constexpr partition_copy_result partition_copy(I first, S last, O1 out_true, O2 out_false, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires IndirectlyCopyable, O1> && IndirectlyCopyable, O2> constexpr partition_copy_result, O1, O2> @@ -2205,10 +2205,10 @@ namespace ranges { template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr I partition_point(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr safe_iterator_t partition_point(R&& r, Pred pred, Proj proj = {}); } @@ -2908,10 +2908,10 @@ Predicate pred); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr bool ranges::all_of(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr bool ranges::all_of(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -2942,10 +2942,10 @@ Predicate pred); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr bool ranges::any_of(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr bool ranges::any_of(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -2975,10 +2975,10 @@ Predicate pred); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr bool ranges::none_of(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr bool ranges::none_of(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -3231,17 +3231,17 @@ constexpr safe_iterator_t ranges::find(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr I ranges::find_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr safe_iterator_t ranges::find_if(R&& r, Pred pred, Proj proj = {}); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr I ranges::find_if_not(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr safe_iterator_t ranges::find_if_not(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -3516,11 +3516,11 @@ constexpr range_difference_t ranges::count(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr iter_difference_t ranges::count_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr range_difference_t ranges::count_if(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -4182,12 +4182,12 @@ ForwardIterator2 result, Predicate pred); template S, weakly_incrementable O, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> requires IndirectlyCopyable constexpr ranges::copy_if_result ranges::copy_if(I first, S last, O result, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires IndirectlyCopyable, O> constexpr ranges::copy_if_result, O> ranges::copy_if(R&& r, O result, Pred pred, Proj proj = {}); @@ -4695,11 +4695,11 @@ constexpr safe_iterator_t ranges::replace(R&& r, const T1& old_value, const T2& new_value, Proj proj = {}); template S, class T, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> requires writable constexpr I ranges::replace_if(I first, S last, Pred pred, const T& new_value, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires writable, const T&> constexpr safe_iterator_t ranges::replace_if(R&& r, Pred pred, const T& new_value, Proj proj = {}); @@ -4779,13 +4779,13 @@ Proj proj = {}); template S, class T, output_iterator O, - class Proj = identity, IndirectUnaryPredicate> Pred> + class Proj = identity, indirect_unary_predicate> Pred> requires IndirectlyCopyable constexpr ranges::replace_copy_if_result ranges::replace_copy_if(I first, S last, O result, Pred pred, const T& new_value, Proj proj = {}); template O, class Proj = identity, - IndirectUnaryPredicate, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires IndirectlyCopyable, O> constexpr ranges::replace_copy_if_result, O> ranges::replace_copy_if(R&& r, O result, Pred pred, const T& new_value, @@ -4975,10 +4975,10 @@ constexpr safe_subrange_t ranges::remove(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr subrange ranges::remove_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires Permutable> constexpr safe_subrange_t ranges::remove_if(R&& r, Pred pred, Proj proj = {}); @@ -5069,12 +5069,12 @@ constexpr ranges::remove_copy_result, O> ranges::remove_copy(R&& r, O result, const T& value, Proj proj = {}); template S, weakly_incrementable O, - class Proj = identity, IndirectUnaryPredicate> Pred> + class Proj = identity, indirect_unary_predicate> Pred> requires IndirectlyCopyable constexpr ranges::remove_copy_if_result ranges::remove_copy_if(I first, S last, O result, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires IndirectlyCopyable, O> constexpr ranges::remove_copy_if_result, O> ranges::remove_copy_if(R&& r, O result, Pred pred, Proj proj = {}); @@ -6585,10 +6585,10 @@ ForwardIterator first, ForwardIterator last, Predicate pred); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr bool ranges::is_partitioned(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr bool ranges::is_partitioned(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -6620,11 +6620,11 @@ ForwardIterator first, ForwardIterator last, Predicate pred); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr subrange ranges::partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires Permutable> constexpr safe_subrange_t ranges::partition(R&& r, Pred pred, Proj proj = {}); @@ -6689,11 +6689,11 @@ BidirectionalIterator first, BidirectionalIterator last, Predicate pred); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> requires Permutable subrange ranges::stable_partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires Permutable> safe_subrange_t ranges::stable_partition(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -6761,14 +6761,14 @@ ForwardIterator1 out_true, ForwardIterator2 out_false, Predicate pred); template S, weakly_incrementable O1, weakly_incrementable O2, - class Proj = identity, IndirectUnaryPredicate> Pred> + class Proj = identity, indirect_unary_predicate> Pred> requires IndirectlyCopyable && IndirectlyCopyable constexpr ranges::partition_copy_result ranges::partition_copy(I first, S last, O1 out_true, O2 out_false, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> requires IndirectlyCopyable, O1> && IndirectlyCopyable, O2> constexpr ranges::partition_copy_result, O1, O2> @@ -6823,10 +6823,10 @@ partition_point(ForwardIterator first, ForwardIterator last, Predicate pred); template S, class Proj = identity, - IndirectUnaryPredicate> Pred> + indirect_unary_predicate> Pred> constexpr I ranges::partition_point(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> + indirect_unary_predicate, Proj>> Pred> constexpr safe_iterator_t ranges::partition_point(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index c5e431433d..e8bb05f568 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -149,7 +149,7 @@ concept indirectly_regular_unary_invocable = @\seebelow@; template - concept IndirectUnaryPredicate = @\seebelow@; + concept indirect_unary_predicate = @\seebelow@; template concept IndirectRelation = @\seebelow@; @@ -2315,7 +2315,7 @@ \indexlibrary{\idxcode{indirectly_unary_invocable}}% \indexlibrary{\idxcode{indirectly_regular_unary_invocable}}% -\indexlibrary{\idxcode{IndirectUnaryPredicate}}% +\indexlibrary{\idxcode{indirect_unary_predicate}}% \indexlibrary{\idxcode{IndirectRelation}}% \indexlibrary{\idxcode{IndirectStrictWeakOrder}}% \begin{codeblock} @@ -2343,7 +2343,7 @@ invoke_result_t>>; template - concept IndirectUnaryPredicate = + concept indirect_unary_predicate = readable && copy_constructible && predicate&> && @@ -4539,7 +4539,7 @@ \begin{codeblock} template S, weakly_incrementable O, - IndirectUnaryPredicate Pred> + indirect_unary_predicate Pred> requires IndirectlyMovable void move_if(I first, S last, O out, Pred pred) { std::ranges::copy_if(move_iterator{first}, move_sentinel{last}, out, pred); diff --git a/source/ranges.tex b/source/ranges.tex index 116c9cc05d..ea254bf712 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -161,7 +161,7 @@ class ref_view; // \ref{range.filter}, filter view - template> Pred> + template> Pred> requires View && is_object_v class filter_view; @@ -183,7 +183,7 @@ // \ref{range.take.while}, take while view template requires InputRange && is_object_v && - IndirectUnaryPredicate> + indirect_unary_predicate> class take_while_view; namespace views { inline constexpr @\unspec@ take_while = @\unspec@; } @@ -197,7 +197,7 @@ // \ref{range.drop.while}, drop while view template requires InputRange && is_object_v && - IndirectUnaryPredicate> + indirect_unary_predicate> class drop_while_view; namespace views { inline constexpr @\unspec@ drop_while = @\unspec@; } @@ -2655,7 +2655,7 @@ \begin{codeblock} namespace std::ranges { - template> Pred> + template> Pred> requires View && is_object_v class filter_view : public view_interface> { private: @@ -3911,7 +3911,7 @@ namespace std::ranges { template requires InputRange && is_object_v && - IndirectUnaryPredicate> + indirect_unary_predicate> class take_while_view : public view_interface> { template class sentinel; // \expos @@ -4201,7 +4201,7 @@ namespace std::ranges { template requires InputRange && is_object_v && - IndirectUnaryPredicate> + indirect_unary_predicate> class drop_while_view : public view_interface> { public: drop_while_view() = default; From 51b895dea03ba08684980ec5d542ab355834ff22 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:27:42 -0700 Subject: [PATCH 207/312] [everywhere] Rename concept 'IndirectRelation' to 'indirect_relation'. --- source/algorithms.tex | 104 +++++++++++++++++++++--------------------- source/iterators.tex | 8 ++-- 2 files changed, 56 insertions(+), 56 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 6928704d91..51ce63d94b 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -726,10 +726,10 @@ namespace ranges { template S, class T, class Proj = identity> - requires IndirectRelation, const T*> + requires indirect_relation, const T*> constexpr I find(I first, S last, const T& value, Proj proj = {}); template - requires IndirectRelation, Proj>, const T*> + requires indirect_relation, Proj>, const T*> constexpr safe_iterator_t find(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, @@ -812,14 +812,14 @@ namespace ranges { template S1, forward_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, - IndirectRelation, - projected> Pred = ranges::equal_to> + indirect_relation, + projected> Pred = ranges::equal_to> constexpr I1 find_first_of(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template, Proj1>, - projected, Proj2>> Pred = ranges::equal_to> + indirect_relation, Proj1>, + projected, Proj2>> Pred = ranges::equal_to> constexpr safe_iterator_t find_first_of(R1&& r1, R2&& r2, Pred pred = {}, @@ -846,11 +846,11 @@ namespace ranges { template S, class Proj = identity, - IndirectRelation> Pred = ranges::equal_to> + indirect_relation> Pred = ranges::equal_to> constexpr I adjacent_find(I first, S last, Pred pred = {}, Proj proj = {}); template, Proj>> Pred = ranges::equal_to> + indirect_relation, Proj>> Pred = ranges::equal_to> constexpr safe_iterator_t adjacent_find(R&& r, Pred pred = {}, Proj proj = {}); } @@ -873,11 +873,11 @@ namespace ranges { template S, class T, class Proj = identity> - requires IndirectRelation, const T*> + requires indirect_relation, const T*> constexpr iter_difference_t count(I first, S last, const T& value, Proj proj = {}); template - requires IndirectRelation, Proj>, const T*> + requires indirect_relation, Proj>, const T*> constexpr range_difference_t count(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, @@ -953,15 +953,15 @@ template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, - IndirectRelation, - projected> Pred = ranges::equal_to> + indirect_relation, + projected> Pred = ranges::equal_to> constexpr mismatch_result mismatch(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template, Proj1>, - projected, Proj2>> Pred = ranges::equal_to> + indirect_relation, Proj1>, + projected, Proj2>> Pred = ranges::equal_to> constexpr mismatch_result, safe_iterator_t> mismatch(R1&& r1, R2&& r2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -1393,12 +1393,12 @@ namespace ranges { template S, class T1, class T2, class Proj = identity> requires writable && - IndirectRelation, const T1*> + indirect_relation, const T1*> constexpr I replace(I first, S last, const T1& old_value, const T2& new_value, Proj proj = {}); template requires writable, const T2&> && - IndirectRelation, Proj>, const T1*> + indirect_relation, Proj>, const T1*> constexpr safe_iterator_t replace(R&& r, const T1& old_value, const T2& new_value, Proj proj = {}); template S, class T, class Proj = identity, @@ -1439,14 +1439,14 @@ template S, class T1, class T2, output_iterator O, class Proj = identity> requires IndirectlyCopyable && - IndirectRelation, const T1*> + indirect_relation, const T1*> constexpr replace_copy_result replace_copy(I first, S last, O result, const T1& old_value, const T2& new_value, Proj proj = {}); template O, class Proj = identity> requires IndirectlyCopyable, O> && - IndirectRelation, Proj>, const T1*> + indirect_relation, Proj>, const T1*> constexpr replace_copy_result, O> replace_copy(R&& r, O result, const T1& old_value, const T2& new_value, Proj proj = {}); @@ -1534,11 +1534,11 @@ namespace ranges { template S, class T, class Proj = identity> - requires IndirectRelation, const T*> + requires indirect_relation, const T*> constexpr subrange remove(I first, S last, const T& value, Proj proj = {}); template requires Permutable> && - IndirectRelation, Proj>, const T*> + indirect_relation, Proj>, const T*> constexpr safe_subrange_t remove(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, @@ -1579,12 +1579,12 @@ template S, weakly_incrementable O, class T, class Proj = identity> requires IndirectlyCopyable && - IndirectRelation, const T*> + indirect_relation, const T*> constexpr remove_copy_result remove_copy(I first, S last, O result, const T& value, Proj proj = {}); template requires IndirectlyCopyable, O> && - IndirectRelation, Proj>, const T*> + indirect_relation, Proj>, const T*> constexpr remove_copy_result, O> remove_copy(R&& r, O result, const T& value, Proj proj = {}); @@ -1619,10 +1619,10 @@ namespace ranges { template S, class Proj = identity, - IndirectRelation> C = ranges::equal_to> + indirect_relation> C = ranges::equal_to> constexpr subrange unique(I first, S last, C comp = {}, Proj proj = {}); template, Proj>> C = ranges::equal_to> + indirect_relation, Proj>> C = ranges::equal_to> requires Permutable> constexpr safe_subrange_t unique(R&& r, C comp = {}, Proj proj = {}); @@ -1653,7 +1653,7 @@ using unique_copy_result = copy_result; template S, weakly_incrementable O, - class Proj = identity, IndirectRelation> C = ranges::equal_to> + class Proj = identity, indirect_relation> C = ranges::equal_to> requires IndirectlyCopyable && (forward_iterator || (input_iterator && same_as, iter_value_t>) || @@ -1661,7 +1661,7 @@ constexpr unique_copy_result unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); template, Proj>> C = ranges::equal_to> + indirect_relation, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && (forward_iterator> || (input_iterator && same_as, iter_value_t>) || @@ -3224,10 +3224,10 @@ Predicate pred); template S, class T, class Proj = identity> - requires IndirectRelation, const T*> + requires indirect_relation, const T*> constexpr I ranges::find(I first, S last, const T& value, Proj proj = {}); template - requires IndirectRelation, Proj>, const T*> + requires indirect_relation, Proj>, const T*> constexpr safe_iterator_t ranges::find(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, @@ -3385,15 +3385,15 @@ template S1, forward_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, - IndirectRelation, - projected> Pred = ranges::equal_to> + indirect_relation, + projected> Pred = ranges::equal_to> constexpr I1 ranges::find_first_of(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template, Proj1>, - projected, Proj2>> Pred = ranges::equal_to> + indirect_relation, Proj1>, + projected, Proj2>> Pred = ranges::equal_to> constexpr safe_iterator_t ranges::find_first_of(R1&& r1, R2&& r2, Pred pred = {}, @@ -3451,10 +3451,10 @@ BinaryPredicate pred); template S, class Proj = identity, - IndirectRelation> Pred = ranges::equal_to> + indirect_relation> Pred = ranges::equal_to> constexpr I ranges::adjacent_find(I first, S last, Pred pred = {}, Proj proj = {}); template, Proj>> Pred = ranges::equal_to> + indirect_relation, Proj>> Pred = ranges::equal_to> constexpr safe_iterator_t ranges::adjacent_find(R&& r, Pred pred = {}, Proj proj = {}); \end{itemdecl} @@ -3508,11 +3508,11 @@ ForwardIterator first, ForwardIterator last, Predicate pred); template S, class T, class Proj = identity> - requires IndirectRelation, const T*> + requires indirect_relation, const T*> constexpr iter_difference_t ranges::count(I first, S last, const T& value, Proj proj = {}); template - requires IndirectRelation, Proj>, const T*> + requires indirect_relation, Proj>, const T*> constexpr range_difference_t ranges::count(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, @@ -3606,15 +3606,15 @@ template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, - IndirectRelation, - projected> Pred = ranges::equal_to> + indirect_relation, + projected> Pred = ranges::equal_to> constexpr ranges::mismatch_result ranges::mismatch(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template, Proj1>, - projected, Proj2>> Pred = ranges::equal_to> + indirect_relation, Proj1>, + projected, Proj2>> Pred = ranges::equal_to> constexpr ranges::mismatch_result, safe_iterator_t> ranges::mismatch(R1&& r1, R2&& r2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -4686,12 +4686,12 @@ template S, class T1, class T2, class Proj = identity> requires writable && - IndirectRelation, const T1*> + indirect_relation, const T1*> constexpr I ranges::replace(I first, S last, const T1& old_value, const T2& new_value, Proj proj = {}); template requires writable, const T2&> && - IndirectRelation, Proj>, const T1*> + indirect_relation, Proj>, const T1*> constexpr safe_iterator_t ranges::replace(R&& r, const T1& old_value, const T2& new_value, Proj proj = {}); template S, class T, class Proj = identity, @@ -4766,14 +4766,14 @@ template S, class T1, class T2, output_iterator O, class Proj = identity> requires IndirectlyCopyable && - IndirectRelation, const T1*> + indirect_relation, const T1*> constexpr ranges::replace_copy_result ranges::replace_copy(I first, S last, O result, const T1& old_value, const T2& new_value, Proj proj = {}); template O, class Proj = identity> requires IndirectlyCopyable, O> && - IndirectRelation, Proj>, const T1*> + indirect_relation, Proj>, const T1*> constexpr ranges::replace_copy_result, O> ranges::replace_copy(R&& r, O result, const T1& old_value, const T2& new_value, Proj proj = {}); @@ -4967,11 +4967,11 @@ Predicate pred); template S, class T, class Proj = identity> - requires IndirectRelation, const T*> + requires indirect_relation, const T*> constexpr subrange ranges::remove(I first, S last, const T& value, Proj proj = {}); template requires Permutable> && - IndirectRelation, Proj>, const T*> + indirect_relation, Proj>, const T*> constexpr safe_subrange_t ranges::remove(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, @@ -5060,12 +5060,12 @@ template S, weakly_incrementable O, class T, class Proj = identity> requires IndirectlyCopyable && - IndirectRelation, const T*> + indirect_relation, const T*> constexpr ranges::remove_copy_result ranges::remove_copy(I first, S last, O result, const T& value, Proj proj = {}); template requires IndirectlyCopyable, O> && - IndirectRelation, Proj>, const T*> + indirect_relation, Proj>, const T*> constexpr ranges::remove_copy_result, O> ranges::remove_copy(R&& r, O result, const T& value, Proj proj = {}); template S, weakly_incrementable O, @@ -5146,10 +5146,10 @@ BinaryPredicate pred); template S, class Proj = identity, - IndirectRelation> C = ranges::equal_to> + indirect_relation> C = ranges::equal_to> constexpr subrange ranges::unique(I first, S last, C comp = {}, Proj proj = {}); template, Proj>> C = ranges::equal_to> + indirect_relation, Proj>> C = ranges::equal_to> requires Permutable> constexpr safe_subrange_t ranges::unique(R&& r, C comp = {}, Proj proj = {}); @@ -5224,7 +5224,7 @@ ForwardIterator2 result, BinaryPredicate pred); template S, weakly_incrementable O, - class Proj = identity, IndirectRelation> C = ranges::equal_to> + class Proj = identity, indirect_relation> C = ranges::equal_to> requires IndirectlyCopyable && (forward_iterator || (input_iterator && same_as, iter_value_t>) || @@ -5232,7 +5232,7 @@ constexpr ranges::unique_copy_result ranges::unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); template, Proj>> C = ranges::equal_to> + indirect_relation, Proj>> C = ranges::equal_to> requires IndirectlyCopyable, O> && (forward_iterator> || (input_iterator && same_as, iter_value_t>) || diff --git a/source/iterators.tex b/source/iterators.tex index e8bb05f568..01898dcbf9 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -152,7 +152,7 @@ concept indirect_unary_predicate = @\seebelow@; template - concept IndirectRelation = @\seebelow@; + concept indirect_relation = @\seebelow@; template concept IndirectStrictWeakOrder = @\seebelow@; @@ -2316,7 +2316,7 @@ \indexlibrary{\idxcode{indirectly_unary_invocable}}% \indexlibrary{\idxcode{indirectly_regular_unary_invocable}}% \indexlibrary{\idxcode{indirect_unary_predicate}}% -\indexlibrary{\idxcode{IndirectRelation}}% +\indexlibrary{\idxcode{indirect_relation}}% \indexlibrary{\idxcode{IndirectStrictWeakOrder}}% \begin{codeblock} namespace std { @@ -2351,7 +2351,7 @@ predicate>; template - concept IndirectRelation = + concept indirect_relation = readable && readable && copy_constructible && relation&, iter_value_t&> && @@ -2546,7 +2546,7 @@ template concept IndirectlyComparable = - IndirectRelation, projected>; + indirect_relation, projected>; \end{codeblock} \rSec3[alg.req.permutable]{Concept \libconcept{Permutable}} From 03257784952d4c4013cde2b8918154b1e1a80354 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:30:26 -0700 Subject: [PATCH 208/312] [everywhere] Rename concept 'IndirectStrictWeakOrder' to 'indirect_strict_weak_order'. --- source/algorithms.tex | 164 +++++++++++++++++++++--------------------- source/iterators.tex | 10 +-- 2 files changed, 87 insertions(+), 87 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 51ce63d94b..0429005e6a 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1912,7 +1912,7 @@ template S1, random_access_iterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable && Sortable && - IndirectStrictWeakOrder, projected> + indirect_strict_weak_order, projected> constexpr partial_sort_copy_result partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -1920,8 +1920,8 @@ class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable, iterator_t> && Sortable, Comp, Proj2> && - IndirectStrictWeakOrder, Proj1>, - projected, Proj2>> + indirect_strict_weak_order, Proj1>, + projected, Proj2>> constexpr partial_sort_copy_result, safe_iterator_t> partial_sort_copy(R1&& r, R2&& result_r, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -1942,10 +1942,10 @@ namespace ranges { template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr bool is_sorted(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr bool is_sorted(R&& r, Comp comp = {}, Proj proj = {}); } @@ -1968,10 +1968,10 @@ namespace ranges { template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I is_sorted_until(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t is_sorted_until(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2016,11 +2016,11 @@ namespace ranges { template S, class T, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I lower_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t lower_bound(R&& r, const T& value, Comp comp = {}, Proj proj = {}); @@ -2037,10 +2037,10 @@ namespace ranges { template S, class T, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I upper_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t upper_bound(R&& r, const T& value, Comp comp = {}, Proj proj = {}); @@ -2057,11 +2057,11 @@ namespace ranges { template S, class T, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr subrange equal_range(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_subrange_t equal_range(R&& r, const T& value, Comp comp = {}, Proj proj = {}); @@ -2078,11 +2078,11 @@ namespace ranges { template S, class T, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr bool binary_search(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr bool binary_search(R&& r, const T& value, Comp comp = {}, Proj proj = {}); @@ -2312,14 +2312,14 @@ namespace ranges { template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, - IndirectStrictWeakOrder, projected> Comp = + indirect_strict_weak_order, projected> Comp = ranges::less> constexpr bool includes(I1 first1, S1 last1, I2 first2, S2 last2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template, Proj1>, - projected, Proj2>> Comp = ranges::less> + indirect_strict_weak_order, Proj1>, + projected, Proj2>> Comp = ranges::less> constexpr bool includes(R1&& r1, R2&& r2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); } @@ -2589,10 +2589,10 @@ namespace ranges { template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr bool is_heap(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr bool is_heap(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2615,10 +2615,10 @@ namespace ranges { template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I is_heap_until(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t is_heap_until(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2634,13 +2634,13 @@ namespace ranges { template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr const T& min(const T& a, const T& b, Comp comp = {}, Proj proj = {}); template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr T min(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> requires IndirectlyCopyableStorable, range_value_t*> constexpr range_value_t min(R&& r, Comp comp = {}, Proj proj = {}); @@ -2656,13 +2656,13 @@ namespace ranges { template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr const T& max(const T& a, const T& b, Comp comp = {}, Proj proj = {}); template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr T max(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> requires IndirectlyCopyableStorable, range_value_t*> constexpr range_value_t max(R&& r, Comp comp = {}, Proj proj = {}); @@ -2696,15 +2696,15 @@ }; template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr minmax_result minmax(const T& a, const T& b, Comp comp = {}, Proj proj = {}); template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr minmax_result minmax(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> requires IndirectlyCopyableStorable, range_value_t*> constexpr minmax_result> minmax(R&& r, Comp comp = {}, Proj proj = {}); @@ -2725,10 +2725,10 @@ namespace ranges { template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I min_element(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t min_element(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2748,10 +2748,10 @@ namespace ranges { template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I max_element(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t max_element(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2776,11 +2776,11 @@ using minmax_element_result = minmax_result; template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr minmax_element_result minmax_element(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr minmax_element_result> minmax_element(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2817,15 +2817,15 @@ namespace ranges { template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, - IndirectStrictWeakOrder, projected> Comp = + indirect_strict_weak_order, projected> Comp = ranges::less> constexpr bool lexicographical_compare(I1 first1, S1 last1, I2 first2, S2 last2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template, Proj1>, - projected, Proj2>> Comp = ranges::less> + indirect_strict_weak_order, Proj1>, + projected, Proj2>> Comp = ranges::less> constexpr bool lexicographical_compare(R1&& r1, R2&& r2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -6069,7 +6069,7 @@ template S1, random_access_iterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable && Sortable && - IndirectStrictWeakOrder, projected> + indirect_strict_weak_order, projected> constexpr ranges::partial_sort_copy_result ranges::partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -6077,8 +6077,8 @@ class Proj1 = identity, class Proj2 = identity> requires IndirectlyCopyable, iterator_t> && Sortable, Comp, Proj2> && - IndirectStrictWeakOrder, Proj1>, - projected, Proj2>> + indirect_strict_weak_order, Proj1>, + projected, Proj2>> constexpr ranges::partial_sort_copy_result, safe_iterator_t> ranges::partial_sort_copy(R1&& r, R2&& result_r, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -6205,10 +6205,10 @@ \indexlibrary{\idxcode{is_sorted}}% \begin{itemdecl} template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr bool ranges::is_sorted(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr bool ranges::is_sorted(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -6240,10 +6240,10 @@ Compare comp); template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::is_sorted_until(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t ranges::is_sorted_until(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -6375,11 +6375,11 @@ const T& value, Compare comp); template S, class T, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::lower_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t ranges::lower_bound(R&& r, const T& value, Comp comp = {}, Proj proj = {}); @@ -6423,10 +6423,10 @@ const T& value, Compare comp); template S, class T, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::upper_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t ranges::upper_bound(R&& r, const T& value, Comp comp = {}, Proj proj = {}); @@ -6471,11 +6471,11 @@ Compare comp); template S, class T, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr subrange ranges::equal_range(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_subrange_t ranges::equal_range(R&& r, const T& value, Comp comp = {}, Proj proj = {}); @@ -6535,11 +6535,11 @@ const T& value, Compare comp); template S, class T, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr bool ranges::binary_search(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr bool ranges::binary_search(R&& r, const T& value, Comp comp = {}, Proj proj = {}); @@ -7080,14 +7080,14 @@ template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, - IndirectStrictWeakOrder, - projected> Comp = ranges::less> + indirect_strict_weak_order, + projected> Comp = ranges::less> constexpr bool ranges::includes(I1 first1, S1 last1, I2 first2, S2 last2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template, Proj1>, - projected, Proj2>> Comp = ranges::less> + indirect_strict_weak_order, Proj1>, + projected, Proj2>> Comp = ranges::less> constexpr bool ranges::includes(R1&& r1, R2&& r2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); \end{itemdecl} @@ -7805,10 +7805,10 @@ \indexlibrary{\idxcode{is_heap}}% \begin{itemdecl} template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr bool ranges::is_heap(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr bool ranges::is_heap(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7840,10 +7840,10 @@ Compare comp); template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::is_heap_until(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t ranges::is_heap_until(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7876,7 +7876,7 @@ constexpr const T& min(const T& a, const T& b, Compare comp); template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr const T& ranges::min(const T& a, const T& b, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7910,10 +7910,10 @@ constexpr T min(initializer_list r, Compare comp); template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr T ranges::min(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> requires IndirectlyCopyableStorable, range_value_t*> constexpr range_value_t ranges::min(R&& r, Comp comp = {}, Proj proj = {}); @@ -7953,7 +7953,7 @@ constexpr const T& max(const T& a, const T& b, Compare comp); template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr const T& ranges::max(const T& a, const T& b, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7987,10 +7987,10 @@ constexpr T max(initializer_list r, Compare comp); template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr T ranges::max(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> requires IndirectlyCopyableStorable, range_value_t*> constexpr range_value_t ranges::max(R&& r, Comp comp = {}, Proj proj = {}); @@ -8030,7 +8030,7 @@ constexpr pair minmax(const T& a, const T& b, Compare comp); template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr ranges::minmax_result ranges::minmax(const T& a, const T& b, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -8066,11 +8066,11 @@ constexpr pair minmax(initializer_list t, Compare comp); template> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr ranges::minmax_result ranges::minmax(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> requires IndirectlyCopyableStorable, range_value_t*> constexpr ranges::minmax_result> ranges::minmax(R&& r, Comp comp = {}, Proj proj = {}); @@ -8123,10 +8123,10 @@ Compare comp); template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::min_element(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t ranges::min_element(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -8170,10 +8170,10 @@ Compare comp); template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::max_element(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr safe_iterator_t ranges::max_element(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -8219,11 +8219,11 @@ ForwardIterator first, ForwardIterator last, Compare comp); template S, class Proj = identity, - IndirectStrictWeakOrder> Comp = ranges::less> + indirect_strict_weak_order> Comp = ranges::less> constexpr ranges::minmax_result ranges::minmax_element(I first, S last, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> + indirect_strict_weak_order, Proj>> Comp = ranges::less> constexpr ranges::minmax_result> ranges::minmax_element(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -8308,15 +8308,15 @@ template S1, input_iterator I2, sentinel_for S2, class Proj1 = identity, class Proj2 = identity, - IndirectStrictWeakOrder, - projected> Comp = ranges::less> + indirect_strict_weak_order, + projected> Comp = ranges::less> constexpr bool ranges::lexicographical_compare(I1 first1, S1 last1, I2 first2, S2 last2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template, Proj1>, - projected, Proj2>> Comp = ranges::less> + indirect_strict_weak_order, Proj1>, + projected, Proj2>> Comp = ranges::less> constexpr bool ranges::lexicographical_compare(R1&& r1, R2&& r2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); diff --git a/source/iterators.tex b/source/iterators.tex index 01898dcbf9..3607ff83bc 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -155,7 +155,7 @@ concept indirect_relation = @\seebelow@; template - concept IndirectStrictWeakOrder = @\seebelow@; + concept indirect_strict_weak_order = @\seebelow@; template requires (readable && ...) && invocable...> @@ -2317,7 +2317,7 @@ \indexlibrary{\idxcode{indirectly_regular_unary_invocable}}% \indexlibrary{\idxcode{indirect_unary_predicate}}% \indexlibrary{\idxcode{indirect_relation}}% -\indexlibrary{\idxcode{IndirectStrictWeakOrder}}% +\indexlibrary{\idxcode{indirect_strict_weak_order}}% \begin{codeblock} namespace std { template @@ -2361,7 +2361,7 @@ relation, iter_common_reference_t>; template - concept IndirectStrictWeakOrder = + concept indirect_strict_weak_order = readable && readable && copy_constructible && strict_weak_order&, iter_value_t&> && @@ -2580,7 +2580,7 @@ weakly_incrementable && IndirectlyCopyable && IndirectlyCopyable && - IndirectStrictWeakOrder, projected>; + indirect_strict_weak_order, projected>; \end{codeblock} \rSec3[alg.req.sortable]{Concept \libconcept{Sortable}} @@ -2594,7 +2594,7 @@ template concept Sortable = Permutable && - IndirectStrictWeakOrder>; + indirect_strict_weak_order>; \end{codeblock} \rSec1[iterator.primitives]{Iterator primitives} From 211b530aacfbcb892877688fd02d18ba0cddb351 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:30:53 -0700 Subject: [PATCH 209/312] [everywhere] Rename concept 'IndirectlyMovable' to 'indirectly_movable'. --- source/algorithms.tex | 16 ++++++++-------- source/iterators.tex | 20 ++++++++++---------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 0429005e6a..a508fbe773 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1242,11 +1242,11 @@ using move_result = copy_result; template S, weakly_incrementable O> - requires IndirectlyMovable + requires indirectly_movable constexpr move_result move(I first, S last, O result); template - requires IndirectlyMovable, O> + requires indirectly_movable, O> constexpr move_result, O> move(R&& r, O result); } @@ -1261,11 +1261,11 @@ using move_backward_result = copy_result; template S1, bidirectional_iterator I2> - requires IndirectlyMovable + requires indirectly_movable constexpr move_backward_result move_backward(I1 first, S1 last, I2 result); template - requires IndirectlyMovable, I> + requires indirectly_movable, I> constexpr move_backward_result, I> move_backward(R&& r, I result); } @@ -4306,11 +4306,11 @@ OutputIterator result); template S, weakly_incrementable O> - requires IndirectlyMovable + requires indirectly_movable constexpr ranges::move_result ranges::move(I first, S last, O result); template - requires IndirectlyMovable, O> + requires indirectly_movable, O> constexpr ranges::move_result, O> ranges::move(R&& r, O result); \end{itemdecl} @@ -4396,11 +4396,11 @@ BidirectionalIterator2 result); template S1, bidirectional_iterator I2> - requires IndirectlyMovable + requires indirectly_movable constexpr ranges::move_backward_result ranges::move_backward(I1 first, S1 last, I2 result); template - requires IndirectlyMovable, I> + requires indirectly_movable, I> constexpr ranges::move_backward_result, I> ranges::move_backward(R&& r, I result); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index 3607ff83bc..858eca8123 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -169,9 +169,9 @@ struct incrementable_traits>; // \ref{alg.req}, common algorithm requirements - // \ref{alg.req.ind.move}, concept \libconcept{IndirectlyMovable} + // \ref{alg.req.ind.move}, concept \libconcept{indirectly_movable} template - concept IndirectlyMovable = @\seebelow@; + concept indirectly_movable = @\seebelow@; template concept IndirectlyMovableStorable = @\seebelow@; @@ -2409,7 +2409,7 @@ There are three relational concepts that specify how element values are transferred between \libconcept{readable} and \libconcept{writable} types: -\libconcept{IndirectlyMovable}, +\libconcept{indirectly_movable}, \libconcept{IndirectlyCopyable}, and \libconcept{IndirectlySwappable}. There are three relational concepts for rearrangements: @@ -2426,24 +2426,24 @@ in addition to those that appear in the concepts' bodies\iref{range.cmp}. \end{note} -\rSec3[alg.req.ind.move]{Concept \libconcept{IndirectlyMovable}} +\rSec3[alg.req.ind.move]{Concept \libconcept{indirectly_movable}} \pnum -The \libconcept{IndirectlyMovable} concept specifies the relationship between +The \libconcept{indirectly_movable} concept specifies the relationship between a \libconcept{readable} type and a \libconcept{writable} type between which values may be moved. -\indexlibrary{\idxcode{IndirectlyMovable}}% +\indexlibrary{\idxcode{indirectly_movable}}% \begin{codeblock} template - concept IndirectlyMovable = + concept indirectly_movable = readable && writable>; \end{codeblock} \pnum The \libconcept{IndirectlyMovableStorable} concept augments -\libconcept{IndirectlyMovable} with additional requirements enabling +\libconcept{indirectly_movable} with additional requirements enabling the transfer to be performed through an intermediate object of the \libconcept{readable} type's value type. @@ -2451,7 +2451,7 @@ \begin{codeblock} template concept IndirectlyMovableStorable = - IndirectlyMovable && + indirectly_movable && writable> && movable> && constructible_from, iter_rvalue_reference_t> && @@ -4540,7 +4540,7 @@ \begin{codeblock} template S, weakly_incrementable O, indirect_unary_predicate Pred> - requires IndirectlyMovable + requires indirectly_movable void move_if(I first, S last, O out, Pred pred) { std::ranges::copy_if(move_iterator{first}, move_sentinel{last}, out, pred); } From 21fd88ba7666eafe8d57fe3b5ec1158a272c7e1e Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:31:31 -0700 Subject: [PATCH 210/312] [everywhere] Rename concept 'IndirectlyMovableStorable' to 'indirectly_movable_storable'. --- source/iterators.tex | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index 858eca8123..3f9b641056 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -174,7 +174,7 @@ concept indirectly_movable = @\seebelow@; template - concept IndirectlyMovableStorable = @\seebelow@; + concept indirectly_movable_storable = @\seebelow@; // \ref{alg.req.ind.copy}, concept \libconcept{IndirectlyCopyable} template @@ -1125,8 +1125,8 @@ then \tcode{ranges::swap(*E1, *E2)}. \item Otherwise, if the types \tcode{T1} and \tcode{T2} of \tcode{E1} and -\tcode{E2} model \tcode{\libconcept{IndirectlyMovableStorable}} and -\tcode{IndirectlyMovableStorable}, then +\tcode{E2} model \tcode{\libconcept{indirectly_movable_storable}} and +\tcode{indirectly_movable_storable}, then \tcode{(void)(*E1 = \placeholdernc{iter-exchange-move}(E2, E1))}, except that \tcode{E1} is evaluated only once. @@ -2442,15 +2442,15 @@ \end{codeblock} \pnum -The \libconcept{IndirectlyMovableStorable} concept augments +The \libconcept{indirectly_movable_storable} concept augments \libconcept{indirectly_movable} with additional requirements enabling the transfer to be performed through an intermediate object of the \libconcept{readable} type's value type. -\indexlibrary{\idxcode{IndirectlyMovableStorable}}% +\indexlibrary{\idxcode{indirectly_movable_storable}}% \begin{codeblock} template - concept IndirectlyMovableStorable = + concept indirectly_movable_storable = indirectly_movable && writable> && movable> && @@ -2460,7 +2460,7 @@ \pnum Let \tcode{i} be a dereferenceable value of type \tcode{In}. -\tcode{In} and \tcode{Out} model \tcode{\libconcept{IndirectlyMovableStorable}} +\tcode{In} and \tcode{Out} model \tcode{\libconcept{indirectly_movable_storable}} only if after the initialization of the object \tcode{obj} in \begin{codeblock} iter_value_t obj(ranges::iter_move(i)); @@ -2560,7 +2560,7 @@ template concept Permutable = forward_iterator && - IndirectlyMovableStorable && + indirectly_movable_storable && IndirectlySwappable; \end{codeblock} From 8cc0968530988e802cae30f9d5e18faf340d3b78 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:33:06 -0700 Subject: [PATCH 211/312] [everywhere] Rename concept 'IndirectlyCopyable' to 'indirectly_copyable'. --- source/algorithms.tex | 104 +++++++++++++++++++++--------------------- source/iterators.tex | 22 ++++----- 2 files changed, 63 insertions(+), 63 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index a508fbe773..bfa83bccce 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1155,11 +1155,11 @@ }; template S, weakly_incrementable O> - requires IndirectlyCopyable + requires indirectly_copyable constexpr copy_result copy(I first, S last, O result); template - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr copy_result, O> copy(R&& r, O result); } @@ -1178,7 +1178,7 @@ using copy_n_result = copy_result; template - requires IndirectlyCopyable + requires indirectly_copyable constexpr copy_n_result copy_n(I first, iter_difference_t n, O result); } @@ -1198,12 +1198,12 @@ template S, weakly_incrementable O, class Proj = identity, indirect_unary_predicate> Pred> - requires IndirectlyCopyable + requires indirectly_copyable constexpr copy_if_result copy_if(I first, S last, O result, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr copy_if_result, O> copy_if(R&& r, O result, Pred pred, Proj proj = {}); } @@ -1218,11 +1218,11 @@ using copy_backward_result = copy_result; template S1, bidirectional_iterator I2> - requires IndirectlyCopyable + requires indirectly_copyable constexpr copy_backward_result copy_backward(I1 first, S1 last, I2 result); template - requires IndirectlyCopyable, I> + requires indirectly_copyable, I> constexpr copy_backward_result, I> copy_backward(R&& r, I result); } @@ -1438,14 +1438,14 @@ template S, class T1, class T2, output_iterator O, class Proj = identity> - requires IndirectlyCopyable && + requires indirectly_copyable && indirect_relation, const T1*> constexpr replace_copy_result replace_copy(I first, S last, O result, const T1& old_value, const T2& new_value, Proj proj = {}); template O, class Proj = identity> - requires IndirectlyCopyable, O> && + requires indirectly_copyable, O> && indirect_relation, Proj>, const T1*> constexpr replace_copy_result, O> replace_copy(R&& r, O result, const T1& old_value, const T2& new_value, @@ -1456,13 +1456,13 @@ template S, class T, output_iterator O, class Proj = identity, indirect_unary_predicate> Pred> - requires IndirectlyCopyable + requires indirectly_copyable constexpr replace_copy_if_result replace_copy_if(I first, S last, O result, Pred pred, const T& new_value, Proj proj = {}); template O, class Proj = identity, indirect_unary_predicate, Proj>> Pred> - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr replace_copy_if_result, O> replace_copy_if(R&& r, O result, Pred pred, const T& new_value, Proj proj = {}); @@ -1578,12 +1578,12 @@ template S, weakly_incrementable O, class T, class Proj = identity> - requires IndirectlyCopyable && + requires indirectly_copyable && indirect_relation, const T*> constexpr remove_copy_result remove_copy(I first, S last, O result, const T& value, Proj proj = {}); template - requires IndirectlyCopyable, O> && + requires indirectly_copyable, O> && indirect_relation, Proj>, const T*> constexpr remove_copy_result, O> remove_copy(R&& r, O result, const T& value, Proj proj = {}); @@ -1593,12 +1593,12 @@ template S, weakly_incrementable O, class Proj = identity, indirect_unary_predicate> Pred> - requires IndirectlyCopyable + requires indirectly_copyable constexpr remove_copy_if_result remove_copy_if(I first, S last, O result, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr remove_copy_if_result, O> remove_copy_if(R&& r, O result, Pred pred, Proj proj = {}); } @@ -1654,7 +1654,7 @@ template S, weakly_incrementable O, class Proj = identity, indirect_relation> C = ranges::equal_to> - requires IndirectlyCopyable && + requires indirectly_copyable && (forward_iterator || (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable) @@ -1662,7 +1662,7 @@ unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); template, Proj>> C = ranges::equal_to> - requires IndirectlyCopyable, O> && + requires indirectly_copyable, O> && (forward_iterator> || (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable, O>) @@ -1701,11 +1701,11 @@ using reverse_copy_result = copy_result; template S, weakly_incrementable O> - requires IndirectlyCopyable + requires indirectly_copyable constexpr reverse_copy_result reverse_copy(I first, S last, O result); template - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr reverse_copy_result, O> reverse_copy(R&& r, O result); } @@ -1744,11 +1744,11 @@ using rotate_copy_result = copy_result; template S, weakly_incrementable O> - requires IndirectlyCopyable + requires indirectly_copyable constexpr rotate_copy_result rotate_copy(I first, I middle, S last, O result); template - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr rotate_copy_result, O> rotate_copy(R&& r, iterator_t middle, O result); } @@ -1911,14 +1911,14 @@ template S1, random_access_iterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires IndirectlyCopyable && Sortable && + requires indirectly_copyable && Sortable && indirect_strict_weak_order, projected> constexpr partial_sort_copy_result partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires IndirectlyCopyable, iterator_t> && + requires indirectly_copyable, iterator_t> && Sortable, Comp, Proj2> && indirect_strict_weak_order, Proj1>, projected, Proj2>> @@ -2185,15 +2185,15 @@ template S, weakly_incrementable O1, weakly_incrementable O2, class Proj = identity, indirect_unary_predicate> Pred> - requires IndirectlyCopyable && IndirectlyCopyable + requires indirectly_copyable && indirectly_copyable constexpr partition_copy_result partition_copy(I first, S last, O1 out_true, O2 out_false, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires IndirectlyCopyable, O1> && - IndirectlyCopyable, O2> + requires indirectly_copyable, O1> && + indirectly_copyable, O2> constexpr partition_copy_result, O1, O2> partition_copy(R&& r, O1 out_true, O2 out_false, Pred pred, Proj proj = {}); } @@ -4062,10 +4062,10 @@ OutputIterator result); template S, weakly_incrementable O> - requires IndirectlyCopyable + requires indirectly_copyable constexpr ranges::copy_result ranges::copy(I first, S last, O result); template - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr ranges::copy_result, O> ranges::copy(R&& r, O result); \end{itemdecl} @@ -4140,7 +4140,7 @@ ForwardIterator2 result); template - requires IndirectlyCopyable + requires indirectly_copyable constexpr ranges::copy_n_result ranges::copy_n(I first, iter_difference_t n, O result); \end{itemdecl} @@ -4183,12 +4183,12 @@ template S, weakly_incrementable O, class Proj = identity, indirect_unary_predicate> Pred> - requires IndirectlyCopyable + requires indirectly_copyable constexpr ranges::copy_if_result ranges::copy_if(I first, S last, O result, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr ranges::copy_if_result, O> ranges::copy_if(R&& r, O result, Pred pred, Proj proj = {}); \end{itemdecl} @@ -4254,11 +4254,11 @@ BidirectionalIterator2 result); template S1, bidirectional_iterator I2> - requires IndirectlyCopyable + requires indirectly_copyable constexpr ranges::copy_backward_result ranges::copy_backward(I1 first, S1 last, I2 result); template - requires IndirectlyCopyable, I> + requires indirectly_copyable, I> constexpr ranges::copy_backward_result, I> ranges::copy_backward(R&& r, I result); \end{itemdecl} @@ -4765,14 +4765,14 @@ template S, class T1, class T2, output_iterator O, class Proj = identity> - requires IndirectlyCopyable && + requires indirectly_copyable && indirect_relation, const T1*> constexpr ranges::replace_copy_result ranges::replace_copy(I first, S last, O result, const T1& old_value, const T2& new_value, Proj proj = {}); template O, class Proj = identity> - requires IndirectlyCopyable, O> && + requires indirectly_copyable, O> && indirect_relation, Proj>, const T1*> constexpr ranges::replace_copy_result, O> ranges::replace_copy(R&& r, O result, const T1& old_value, const T2& new_value, @@ -4780,13 +4780,13 @@ template S, class T, output_iterator O, class Proj = identity, indirect_unary_predicate> Pred> - requires IndirectlyCopyable + requires indirectly_copyable constexpr ranges::replace_copy_if_result ranges::replace_copy_if(I first, S last, O result, Pred pred, const T& new_value, Proj proj = {}); template O, class Proj = identity, indirect_unary_predicate, Proj>> Pred> - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr ranges::replace_copy_if_result, O> ranges::replace_copy_if(R&& r, O result, Pred pred, const T& new_value, Proj proj = {}); @@ -5059,23 +5059,23 @@ template S, weakly_incrementable O, class T, class Proj = identity> - requires IndirectlyCopyable && + requires indirectly_copyable && indirect_relation, const T*> constexpr ranges::remove_copy_result ranges::remove_copy(I first, S last, O result, const T& value, Proj proj = {}); template - requires IndirectlyCopyable, O> && + requires indirectly_copyable, O> && indirect_relation, Proj>, const T*> constexpr ranges::remove_copy_result, O> ranges::remove_copy(R&& r, O result, const T& value, Proj proj = {}); template S, weakly_incrementable O, class Proj = identity, indirect_unary_predicate> Pred> - requires IndirectlyCopyable + requires indirectly_copyable constexpr ranges::remove_copy_if_result ranges::remove_copy_if(I first, S last, O result, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr ranges::remove_copy_if_result, O> ranges::remove_copy_if(R&& r, O result, Pred pred, Proj proj = {}); \end{itemdecl} @@ -5225,7 +5225,7 @@ template S, weakly_incrementable O, class Proj = identity, indirect_relation> C = ranges::equal_to> - requires IndirectlyCopyable && + requires indirectly_copyable && (forward_iterator || (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable) @@ -5233,7 +5233,7 @@ ranges::unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); template, Proj>> C = ranges::equal_to> - requires IndirectlyCopyable, O> && + requires indirectly_copyable, O> && (forward_iterator> || (input_iterator && same_as, iter_value_t>) || IndirectlyCopyableStorable, O>) @@ -5366,11 +5366,11 @@ ForwardIterator result); template S, weakly_incrementable O> - requires IndirectlyCopyable + requires indirectly_copyable constexpr ranges::reverse_copy_result ranges::reverse_copy(I first, S last, O result); template - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr ranges::reverse_copy_result, O> ranges::reverse_copy(R&& r, O result); \end{itemdecl} @@ -5483,7 +5483,7 @@ ForwardIterator2 result); template S, weakly_incrementable O> - requires IndirectlyCopyable + requires indirectly_copyable constexpr ranges::rotate_copy_result ranges::rotate_copy(I first, I middle, S last, O result); \end{itemdecl} @@ -5521,7 +5521,7 @@ \begin{itemdecl} template - requires IndirectlyCopyable, O> + requires indirectly_copyable, O> constexpr ranges::rotate_copy_result, O> ranges::rotate_copy(R&& r, iterator_t middle, O result); \end{itemdecl} @@ -6068,14 +6068,14 @@ template S1, random_access_iterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires IndirectlyCopyable && Sortable && + requires indirectly_copyable && Sortable && indirect_strict_weak_order, projected> constexpr ranges::partial_sort_copy_result ranges::partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires IndirectlyCopyable, iterator_t> && + requires indirectly_copyable, iterator_t> && Sortable, Comp, Proj2> && indirect_strict_weak_order, Proj1>, projected, Proj2>> @@ -6762,15 +6762,15 @@ template S, weakly_incrementable O1, weakly_incrementable O2, class Proj = identity, indirect_unary_predicate> Pred> - requires IndirectlyCopyable && IndirectlyCopyable + requires indirectly_copyable && indirectly_copyable constexpr ranges::partition_copy_result ranges::partition_copy(I first, S last, O1 out_true, O2 out_false, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires IndirectlyCopyable, O1> && - IndirectlyCopyable, O2> + requires indirectly_copyable, O1> && + indirectly_copyable, O2> constexpr ranges::partition_copy_result, O1, O2> ranges::partition_copy(R&& r, O1 out_true, O2 out_false, Pred pred, Proj proj = {}); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index 3f9b641056..20ef61681d 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -176,9 +176,9 @@ template concept indirectly_movable_storable = @\seebelow@; - // \ref{alg.req.ind.copy}, concept \libconcept{IndirectlyCopyable} + // \ref{alg.req.ind.copy}, concept \libconcept{indirectly_copyable} template - concept IndirectlyCopyable = @\seebelow@; + concept indirectly_copyable = @\seebelow@; template concept IndirectlyCopyableStorable = @\seebelow@; @@ -2410,7 +2410,7 @@ how element values are transferred between \libconcept{readable} and \libconcept{writable} types: \libconcept{indirectly_movable}, -\libconcept{IndirectlyCopyable}, and +\libconcept{indirectly_copyable}, and \libconcept{IndirectlySwappable}. There are three relational concepts for rearrangements: \libconcept{Permutable}, @@ -2470,24 +2470,24 @@ the resulting state of the value denoted by \tcode{*i} is valid but unspecified\iref{lib.types.movedfrom}. -\rSec3[alg.req.ind.copy]{Concept \libconcept{IndirectlyCopyable}} +\rSec3[alg.req.ind.copy]{Concept \libconcept{indirectly_copyable}} \pnum -The \libconcept{IndirectlyCopyable} concept specifies the relationship between +The \libconcept{indirectly_copyable} concept specifies the relationship between a \libconcept{readable} type and a \libconcept{writable} type between which values may be copied. -\indexlibrary{\idxcode{IndirectlyCopyable}}% +\indexlibrary{\idxcode{indirectly_copyable}}% \begin{codeblock} template - concept IndirectlyCopyable = + concept indirectly_copyable = readable && writable>; \end{codeblock} \pnum The \libconcept{IndirectlyCopyableStorable} concept augments -\libconcept{IndirectlyCopyable} with additional requirements enabling +\libconcept{indirectly_copyable} with additional requirements enabling the transfer to be performed through an intermediate object of the \libconcept{readable} type's value type. It also requires the capability to make copies of values. @@ -2496,7 +2496,7 @@ \begin{codeblock} template concept IndirectlyCopyableStorable = - IndirectlyCopyable && + indirectly_copyable && writable&> && copyable> && constructible_from, iter_reference_t> && @@ -2578,8 +2578,8 @@ input_iterator && input_iterator && weakly_incrementable && - IndirectlyCopyable && - IndirectlyCopyable && + indirectly_copyable && + indirectly_copyable && indirect_strict_weak_order, projected>; \end{codeblock} From e73fe7b8d83381206c8fff9c4a02929876fac846 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:33:31 -0700 Subject: [PATCH 212/312] [everywhere] Rename concept 'IndirectlyCopyableStorable' to 'indirectly_copyable_storable'. --- source/algorithms.tex | 20 ++++++++++---------- source/iterators.tex | 10 +++++----- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index bfa83bccce..718cd16c10 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1657,7 +1657,7 @@ requires indirectly_copyable && (forward_iterator || (input_iterator && same_as, iter_value_t>) || - IndirectlyCopyableStorable) + indirectly_copyable_storable) constexpr unique_copy_result unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); template, O> && (forward_iterator> || (input_iterator && same_as, iter_value_t>) || - IndirectlyCopyableStorable, O>) + indirectly_copyable_storable, O>) constexpr unique_copy_result, O> unique_copy(R&& r, O result, C comp = {}, Proj proj = {}); } @@ -2641,7 +2641,7 @@ constexpr T min(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, range_value_t*> + requires indirectly_copyable_storable, range_value_t*> constexpr range_value_t min(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2663,7 +2663,7 @@ constexpr T max(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, range_value_t*> + requires indirectly_copyable_storable, range_value_t*> constexpr range_value_t max(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2705,7 +2705,7 @@ minmax(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, range_value_t*> + requires indirectly_copyable_storable, range_value_t*> constexpr minmax_result> minmax(R&& r, Comp comp = {}, Proj proj = {}); } @@ -5228,7 +5228,7 @@ requires indirectly_copyable && (forward_iterator || (input_iterator && same_as, iter_value_t>) || - IndirectlyCopyableStorable) + indirectly_copyable_storable) constexpr ranges::unique_copy_result ranges::unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); template, O> && (forward_iterator> || (input_iterator && same_as, iter_value_t>) || - IndirectlyCopyableStorable, O>) + indirectly_copyable_storable, O>) constexpr ranges::unique_copy_result, O> ranges::unique_copy(R&& r, O result, C comp = {}, Proj proj = {}); \end{itemdecl} @@ -7914,7 +7914,7 @@ constexpr T ranges::min(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, range_value_t*> + requires indirectly_copyable_storable, range_value_t*> constexpr range_value_t ranges::min(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7991,7 +7991,7 @@ constexpr T ranges::max(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, range_value_t*> + requires indirectly_copyable_storable, range_value_t*> constexpr range_value_t ranges::max(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -8071,7 +8071,7 @@ ranges::minmax(initializer_list r, Comp comp = {}, Proj proj = {}); template, Proj>> Comp = ranges::less> - requires IndirectlyCopyableStorable, range_value_t*> + requires indirectly_copyable_storable, range_value_t*> constexpr ranges::minmax_result> ranges::minmax(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index 20ef61681d..e25ce3bed6 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -181,7 +181,7 @@ concept indirectly_copyable = @\seebelow@; template - concept IndirectlyCopyableStorable = @\seebelow@; + concept indirectly_copyable_storable = @\seebelow@; // \ref{alg.req.ind.swap}, concept \libconcept{IndirectlySwappable} template @@ -2486,16 +2486,16 @@ \end{codeblock} \pnum -The \libconcept{IndirectlyCopyableStorable} concept augments +The \libconcept{indirectly_copyable_storable} concept augments \libconcept{indirectly_copyable} with additional requirements enabling the transfer to be performed through an intermediate object of the \libconcept{readable} type's value type. It also requires the capability to make copies of values. -\indexlibrary{\idxcode{IndirectlyCopyableStorable}}% +\indexlibrary{\idxcode{indirectly_copyable_storable}}% \begin{codeblock} template - concept IndirectlyCopyableStorable = + concept indirectly_copyable_storable = indirectly_copyable && writable&> && copyable> && @@ -2505,7 +2505,7 @@ \pnum Let \tcode{i} be a dereferenceable value of type \tcode{In}. -\tcode{In} and \tcode{Out} model \tcode{\libconcept{IndirectlyCopyableStorable}} +\tcode{In} and \tcode{Out} model \tcode{\libconcept{indirectly_copyable_storable}} only if after the initialization of the object \tcode{obj} in \begin{codeblock} iter_value_t obj(*i); From f77f966b70f070b7536b5aefc6f591331c85074e Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:34:00 -0700 Subject: [PATCH 213/312] [everywhere] Rename concept 'IndirectlySwappable' to 'indirectly_swappable'. --- source/algorithms.tex | 8 ++++---- source/iterators.tex | 32 ++++++++++++++++---------------- source/ranges.tex | 12 ++++++------ 3 files changed, 26 insertions(+), 26 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 718cd16c10..1bf33873cb 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1284,11 +1284,11 @@ using swap_ranges_result = mismatch_result; template S1, input_iterator I2, sentinel_for S2> - requires IndirectlySwappable + requires indirectly_swappable constexpr swap_ranges_result swap_ranges(I1 first1, S1 last1, I2 first2, S2 last2); template - requires IndirectlySwappable, iterator_t> + requires indirectly_swappable, iterator_t> constexpr swap_ranges_result, safe_iterator_t> swap_ranges(R1&& r1, R2&& r2); } @@ -4463,11 +4463,11 @@ ForwardIterator2 first2); template S1, input_iterator I2, sentinel_for S2> - requires IndirectlySwappable + requires indirectly_swappable constexpr ranges::swap_ranges_result ranges::swap_ranges(I1 first1, S1 last1, I2 first2, S2 last2); template - requires IndirectlySwappable, iterator_t> + requires indirectly_swappable, iterator_t> constexpr ranges::swap_ranges_result, safe_iterator_t> ranges::swap_ranges(R1&& r1, R2&& r2); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index e25ce3bed6..5a44d502b7 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -183,9 +183,9 @@ template concept indirectly_copyable_storable = @\seebelow@; - // \ref{alg.req.ind.swap}, concept \libconcept{IndirectlySwappable} + // \ref{alg.req.ind.swap}, concept \libconcept{indirectly_swappable} template - concept IndirectlySwappable = @\seebelow@; + concept indirectly_swappable = @\seebelow@; // \ref{alg.req.ind.cmp}, concept \libconcept{IndirectlyComparable} template @@ -2411,7 +2411,7 @@ \libconcept{writable} types: \libconcept{indirectly_movable}, \libconcept{indirectly_copyable}, and -\libconcept{IndirectlySwappable}. +\libconcept{indirectly_swappable}. There are three relational concepts for rearrangements: \libconcept{Permutable}, \libconcept{Mergeable}, and @@ -2515,16 +2515,16 @@ of the value denoted by \tcode{*i} is valid but unspecified\iref{lib.types.movedfrom}. -\rSec3[alg.req.ind.swap]{Concept \libconcept{IndirectlySwappable}} +\rSec3[alg.req.ind.swap]{Concept \libconcept{indirectly_swappable}} \pnum -The \libconcept{IndirectlySwappable} concept specifies a swappable relationship +The \libconcept{indirectly_swappable} concept specifies a swappable relationship between the values referenced by two \libconcept{readable} types. -\indexlibrary{\idxcode{IndirectlySwappable}}% +\indexlibrary{\idxcode{indirectly_swappable}}% \begin{codeblock} template - concept IndirectlySwappable = + concept indirectly_swappable = readable && readable && requires(I1& i1, I2& i2) { ranges::iter_swap(i1, i1); @@ -2561,7 +2561,7 @@ concept Permutable = forward_iterator && indirectly_movable_storable && - IndirectlySwappable; + indirectly_swappable; \end{codeblock} \rSec3[alg.req.mergeable]{Concept \libconcept{Mergeable}} @@ -3092,7 +3092,7 @@ friend constexpr iter_rvalue_reference_t iter_move(const reverse_iterator& i) noexcept(@\seebelow@); - template Iterator2> + template Iterator2> friend constexpr void iter_swap(const reverse_iterator& x, const reverse_iterator& y) noexcept(@\seebelow@); @@ -3593,7 +3593,7 @@ \indexlibrarymember{iter_swap}{reverse_iterator}% \begin{itemdecl} -template Iterator2> +template Iterator2> friend constexpr void iter_swap(const reverse_iterator& x, const reverse_iterator& y) noexcept(@\seebelow@); @@ -4098,7 +4098,7 @@ friend constexpr iter_rvalue_reference_t iter_move(const move_iterator& i) noexcept(noexcept(ranges::iter_move(i.current))); - template Iterator2> + template Iterator2> friend constexpr void iter_swap(const move_iterator& x, const move_iterator& y) noexcept(noexcept(ranges::iter_swap(x.current, y.current))); @@ -4501,7 +4501,7 @@ \indexlibrarymember{iter_swap}{move_iterator}% \begin{itemdecl} -template Iterator2> +template Iterator2> friend constexpr void iter_swap(const move_iterator& x, const move_iterator& y) noexcept(noexcept(ranges::iter_swap(x.current, y.current))); @@ -4694,7 +4694,7 @@ friend iter_rvalue_reference_t iter_move(const common_iterator& i) noexcept(noexcept(ranges::iter_move(declval()))) requires input_iterator; - template I2, class S2> + template I2, class S2> friend void iter_swap(const common_iterator& x, const common_iterator& y) noexcept(noexcept(ranges::iter_swap(declval(), declval()))); @@ -5004,7 +5004,7 @@ \indexlibrarymember{iter_swap}{common_iterator}% \begin{itemdecl} -template I2, class S2> +template I2, class S2> friend void iter_swap(const common_iterator& x, const common_iterator& y) noexcept(noexcept(ranges::iter_swap(declval(), declval()))); \end{itemdecl} @@ -5138,7 +5138,7 @@ friend constexpr iter_rvalue_reference_t iter_move(const counted_iterator& i) noexcept(noexcept(ranges::iter_move(i.current))) requires input_iterator; - template I2> + template I2> friend constexpr void iter_swap(const counted_iterator& x, const counted_iterator& y) noexcept(noexcept(ranges::iter_swap(x.current, y.current))); @@ -5536,7 +5536,7 @@ \indexlibrarymember{iter_swap}{counted_iterator}% \begin{itemdecl} -template I2> +template I2> friend constexpr void iter_swap(const counted_iterator& x, const counted_iterator& y) noexcept(noexcept(ranges::iter_swap(x.current, y.current))); diff --git a/source/ranges.tex b/source/ranges.tex index ea254bf712..9f695ae804 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -2782,7 +2782,7 @@ noexcept(noexcept(ranges::iter_move(i.current_))); friend constexpr void iter_swap(const iterator& x, const iterator& y) noexcept(noexcept(ranges::iter_swap(x.current_, y.current_))) - requires IndirectlySwappable>; + requires indirectly_swappable>; }; } \end{codeblock} @@ -2958,7 +2958,7 @@ \begin{itemdecl} friend constexpr void iter_swap(const iterator& x, const iterator& y) noexcept(noexcept(ranges::iter_swap(x.current_, y.current_))) - requires IndirectlySwappable>; + requires indirectly_swappable>; \end{itemdecl} \begin{itemdescr} @@ -3295,7 +3295,7 @@ friend constexpr void iter_swap(const iterator& x, const iterator& y) noexcept(noexcept(ranges::iter_swap(x.current_, y.current_))) - requires IndirectlySwappable>; + requires indirectly_swappable>; }; } \end{codeblock} @@ -3560,7 +3560,7 @@ \begin{itemdecl} friend constexpr void iter_swap(const iterator& x, const iterator& y) noexcept(noexcept(ranges::iter_swap(x.current_, y.current_))) - requires IndirectlySwappable>; + requires indirectly_swappable>; \end{itemdecl} \begin{itemdescr} @@ -5138,7 +5138,7 @@ friend constexpr void iter_swap(const inner_iterator& x, const inner_iterator& y) noexcept(noexcept(ranges::iter_swap(x.i_.@\placeholdernc{current}, y.i_.\placeholdernc{current}@))) - requires IndirectlySwappable>; + requires indirectly_swappable>; }; } \end{codeblock} @@ -5217,7 +5217,7 @@ \begin{itemdecl} friend constexpr void iter_swap(const inner_iterator& x, const inner_iterator& y) noexcept(noexcept(ranges::iter_swap(x.i_.@\placeholdernc{current}, y.i_.\placeholdernc{current}@))) - requires IndirectlySwappable>; + requires indirectly_swappable>; \end{itemdecl} \begin{itemdescr} From 1769a5655125350ad7e2c94e6667f04261469f80 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:34:33 -0700 Subject: [PATCH 214/312] [everywhere] Rename concept 'IndirectlyComparable' to 'indirectly_comparable'. --- source/algorithms.tex | 40 ++++++++++++++++++++-------------------- source/iterators.tex | 14 +++++++------- source/ranges.tex | 4 ++-- 3 files changed, 29 insertions(+), 29 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 1bf33873cb..ad2238987c 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -774,13 +774,13 @@ namespace ranges { template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> - requires IndirectlyComparable + requires indirectly_comparable constexpr subrange find_end(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires IndirectlyComparable, iterator_t, Pred, Proj1, Proj2> + requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr safe_subrange_t find_end(R1&& r1, R2&& r2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -1004,13 +1004,13 @@ namespace ranges { template S1, input_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> - requires IndirectlyComparable + requires indirectly_comparable constexpr bool equal(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires IndirectlyComparable, iterator_t, Pred, Proj1, Proj2> + requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr bool equal(R1&& r1, R2&& r2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); } @@ -1034,13 +1034,13 @@ template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> - requires IndirectlyComparable + requires indirectly_comparable constexpr bool is_permutation(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires IndirectlyComparable, iterator_t, Pred, Proj1, Proj2> + requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr bool is_permutation(R1&& r1, R2&& r2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); } @@ -1072,13 +1072,13 @@ template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> - requires IndirectlyComparable + requires indirectly_comparable constexpr subrange search(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires IndirectlyComparable, iterator_t, Pred, Proj1, Proj2> + requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr safe_subrange_t search(R1&& r1, R2&& r2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -1109,13 +1109,13 @@ namespace ranges { template S, class T, class Pred = ranges::equal_to, class Proj = identity> - requires IndirectlyComparable + requires indirectly_comparable constexpr subrange search_n(I first, S last, iter_difference_t count, const T& value, Pred pred = {}, Proj proj = {}); template - requires IndirectlyComparable, const T*, Pred, Proj> + requires indirectly_comparable, const T*, Pred, Proj> constexpr safe_subrange_t search_n(R&& r, range_difference_t count, const T& value, Pred pred = {}, Proj proj = {}); @@ -3300,13 +3300,13 @@ template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> - requires IndirectlyComparable + requires indirectly_comparable constexpr subrange ranges::find_end(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires IndirectlyComparable, iterator_t, Pred, Proj1, Proj2> + requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr safe_subrange_t ranges::find_end(R1&& r1, R2&& r2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -3699,13 +3699,13 @@ template S1, input_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> - requires IndirectlyComparable + requires indirectly_comparable constexpr bool ranges::equal(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires IndirectlyComparable, iterator_t, Pred, Proj1, Proj2> + requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr bool ranges::equal(R1&& r1, R2&& r2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); \end{itemdecl} @@ -3831,13 +3831,13 @@ template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> - requires IndirectlyComparable + requires indirectly_comparable constexpr bool ranges::is_permutation(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires IndirectlyComparable, iterator_t, Pred, Proj1, Proj2> + requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr bool ranges::is_permutation(R1&& r1, R2&& r2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); \end{itemdecl} @@ -3919,13 +3919,13 @@ template S1, forward_iterator I2, sentinel_for S2, class Pred = ranges::equal_to, class Proj1 = identity, class Proj2 = identity> - requires IndirectlyComparable + requires indirectly_comparable constexpr subrange ranges::search(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires IndirectlyComparable, iterator_t, Pred, Proj1, Proj2> + requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr safe_subrange_t ranges::search(R1&& r1, R2&& r2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -4006,13 +4006,13 @@ \begin{itemdecl} template S, class T, class Pred = ranges::equal_to, class Proj = identity> - requires IndirectlyComparable + requires indirectly_comparable constexpr subrange ranges::search_n(I first, S last, iter_difference_t count, const T& value, Pred pred = {}, Proj proj = {}); template - requires IndirectlyComparable, const T*, Pred, Proj> + requires indirectly_comparable, const T*, Pred, Proj> constexpr safe_subrange_t ranges::search_n(R&& r, range_difference_t count, const T& value, Pred pred = {}, Proj proj = {}); diff --git a/source/iterators.tex b/source/iterators.tex index 5a44d502b7..9dfffa0610 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -187,9 +187,9 @@ template concept indirectly_swappable = @\seebelow@; - // \ref{alg.req.ind.cmp}, concept \libconcept{IndirectlyComparable} + // \ref{alg.req.ind.cmp}, concept \libconcept{indirectly_comparable} template - concept IndirectlyComparable = @\seebelow@; + concept indirectly_comparable = @\seebelow@; // \ref{alg.req.permutable}, concept \libconcept{Permutable} template @@ -2417,7 +2417,7 @@ \libconcept{Mergeable}, and \libconcept{Sortable}. There is one relational concept for comparing values from different sequences: -\libconcept{IndirectlyComparable}. +\libconcept{indirectly_comparable}. \pnum \begin{note} @@ -2534,18 +2534,18 @@ }; \end{codeblock} -\rSec3[alg.req.ind.cmp]{Concept \libconcept{IndirectlyComparable}} +\rSec3[alg.req.ind.cmp]{Concept \libconcept{indirectly_comparable}} \pnum -The \libconcept{IndirectlyComparable} concept specifies +The \libconcept{indirectly_comparable} concept specifies the common requirements of algorithms that compare values from two different sequences. -\indexlibrary{\idxcode{IndirectlyComparable}}% +\indexlibrary{\idxcode{indirectly_comparable}}% \begin{codeblock} template - concept IndirectlyComparable = + concept indirectly_comparable = indirect_relation, projected>; \end{codeblock} diff --git a/source/ranges.tex b/source/ranges.tex index 9f695ae804..c0ef3c75ec 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -217,7 +217,7 @@ template requires View && View && - IndirectlyComparable, iterator_t, ranges::equal_to> && + indirectly_comparable, iterator_t, ranges::equal_to> && (ForwardRange || @\placeholder{tiny-range}@) class split_view; @@ -4793,7 +4793,7 @@ template requires View && View && - IndirectlyComparable, iterator_t, ranges::equal_to> && + indirectly_comparable, iterator_t, ranges::equal_to> && (ForwardRange || @\placeholdernc{tiny-range}@) class split_view : public view_interface> { private: From 26bab35a8ac9a90ea9aa6c32042ea8331ac33813 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:35:15 -0700 Subject: [PATCH 215/312] [everywhere] Rename concept 'Permutable' to 'permutable'. --- source/algorithms.tex | 64 +++++++++++++++++++++---------------------- source/iterators.tex | 16 +++++------ 2 files changed, 40 insertions(+), 40 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index ad2238987c..0fdd50fd99 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1533,20 +1533,20 @@ Predicate pred); namespace ranges { - template S, class T, class Proj = identity> + template S, class T, class Proj = identity> requires indirect_relation, const T*> constexpr subrange remove(I first, S last, const T& value, Proj proj = {}); template - requires Permutable> && + requires permutable> && indirect_relation, Proj>, const T*> constexpr safe_subrange_t remove(R&& r, const T& value, Proj proj = {}); - template S, class Proj = identity, + template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr subrange remove_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires Permutable> + requires permutable> constexpr safe_subrange_t remove_if(R&& r, Pred pred, Proj proj = {}); } @@ -1618,12 +1618,12 @@ BinaryPredicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, indirect_relation> C = ranges::equal_to> constexpr subrange unique(I first, S last, C comp = {}, Proj proj = {}); template, Proj>> C = ranges::equal_to> - requires Permutable> + requires permutable> constexpr safe_subrange_t unique(R&& r, C comp = {}, Proj proj = {}); } @@ -1679,10 +1679,10 @@ namespace ranges { template S> - requires Permutable + requires permutable constexpr I reverse(I first, S last); template - requires Permutable> + requires permutable> constexpr safe_iterator_t reverse(R&& r); } @@ -1722,10 +1722,10 @@ ForwardIterator last); namespace ranges { - template S> + template S> constexpr subrange rotate(I first, I middle, S last); template - requires Permutable> + requires permutable> constexpr safe_subrange_t rotate(R&& r, iterator_t middle); } @@ -1768,11 +1768,11 @@ namespace ranges { template S, class Gen> - requires Permutable && + requires permutable && UniformRandomBitGenerator> I shuffle(I first, S last, Gen&& g); template - requires Permutable> && + requires permutable> && UniformRandomBitGenerator> safe_iterator_t shuffle(R&& r, Gen&& g); } @@ -2115,13 +2115,13 @@ Predicate pred); namespace ranges { - template S, class Proj = identity, + template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr subrange partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires Permutable> + requires permutable> constexpr safe_subrange_t partition(R&& r, Pred pred, Proj proj = {}); } @@ -2139,11 +2139,11 @@ namespace ranges { template S, class Proj = identity, indirect_unary_predicate> Pred> - requires Permutable + requires permutable subrange stable_partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires Permutable> + requires permutable> safe_subrange_t stable_partition(R&& r, Pred pred, Proj proj = {}); } @@ -4966,20 +4966,20 @@ ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class T, class Proj = identity> +template S, class T, class Proj = identity> requires indirect_relation, const T*> constexpr subrange ranges::remove(I first, S last, const T& value, Proj proj = {}); template - requires Permutable> && + requires permutable> && indirect_relation, Proj>, const T*> constexpr safe_subrange_t ranges::remove(R&& r, const T& value, Proj proj = {}); -template S, class Proj = identity, +template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr subrange ranges::remove_if(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires Permutable> + requires permutable> constexpr safe_subrange_t ranges::remove_if(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -5145,12 +5145,12 @@ ForwardIterator first, ForwardIterator last, BinaryPredicate pred); -template S, class Proj = identity, +template S, class Proj = identity, indirect_relation> C = ranges::equal_to> constexpr subrange ranges::unique(I first, S last, C comp = {}, Proj proj = {}); template, Proj>> C = ranges::equal_to> - requires Permutable> + requires permutable> constexpr safe_subrange_t ranges::unique(R&& r, C comp = {}, Proj proj = {}); \end{itemdecl} @@ -5323,10 +5323,10 @@ BidirectionalIterator first, BidirectionalIterator last); template S> - requires Permutable + requires permutable constexpr I ranges::reverse(I first, S last); template - requires Permutable> + requires permutable> constexpr safe_iterator_t ranges::reverse(R&& r); \end{itemdecl} @@ -5417,7 +5417,7 @@ rotate(ExecutionPolicy&& exec, ForwardIterator first, ForwardIterator middle, ForwardIterator last); -template S> +template S> constexpr subrange ranges::rotate(I first, I middle, S last); \end{itemdecl} @@ -5459,7 +5459,7 @@ \begin{itemdecl} template - requires Permutable> + requires permutable> constexpr safe_subrange_t ranges::rotate(R&& r, iterator_t middle); \end{itemdecl} @@ -5614,11 +5614,11 @@ UniformRandomBitGenerator&& g); template S, class Gen> - requires Permutable && + requires permutable && UniformRandomBitGenerator> I ranges::shuffle(I first, S last, Gen&& g); template - requires Permutable> && + requires permutable> && UniformRandomBitGenerator> safe_iterator_t ranges::shuffle(R&& r, Gen&& g); \end{itemdecl} @@ -6619,13 +6619,13 @@ partition(ExecutionPolicy&& exec, ForwardIterator first, ForwardIterator last, Predicate pred); -template S, class Proj = identity, +template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr subrange ranges::partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires Permutable> + requires permutable> constexpr safe_subrange_t ranges::partition(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -6690,11 +6690,11 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> - requires Permutable + requires permutable subrange ranges::stable_partition(I first, S last, Pred pred, Proj proj = {}); template, Proj>> Pred> - requires Permutable> + requires permutable> safe_subrange_t ranges::stable_partition(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index 9dfffa0610..a248dec23f 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -191,9 +191,9 @@ template concept indirectly_comparable = @\seebelow@; - // \ref{alg.req.permutable}, concept \libconcept{Permutable} + // \ref{alg.req.permutable}, concept \libconcept{permutable} template - concept Permutable = @\seebelow@; + concept permutable = @\seebelow@; // \ref{alg.req.mergeable}, concept \libconcept{Mergeable} template, projected>; \end{codeblock} -\rSec3[alg.req.permutable]{Concept \libconcept{Permutable}} +\rSec3[alg.req.permutable]{Concept \libconcept{permutable}} \pnum -The \libconcept{Permutable} concept specifies the common requirements +The \libconcept{permutable} concept specifies the common requirements of algorithms that reorder elements in place by moving or swapping them. -\indexlibrary{\idxcode{Permutable}}% +\indexlibrary{\idxcode{permutable}}% \begin{codeblock} template - concept Permutable = + concept permutable = forward_iterator && indirectly_movable_storable && indirectly_swappable; @@ -2593,7 +2593,7 @@ \begin{codeblock} template concept Sortable = - Permutable && + permutable && indirect_strict_weak_order>; \end{codeblock} From 3e017f1ef401f5743624aca2dfa4f20ddceda033 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:35:42 -0700 Subject: [PATCH 216/312] [everywhere] Rename concept 'Mergeable' to 'mergeable'. --- source/algorithms.tex | 40 ++++++++++++++++++++-------------------- source/iterators.tex | 14 +++++++------- 2 files changed, 27 insertions(+), 27 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 0fdd50fd99..e3e23d1690 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -2247,13 +2247,13 @@ template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires Mergeable + requires mergeable constexpr merge_result merge(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> + requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr merge_result, safe_iterator_t, O> merge(R1&& r1, R2&& r2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -2356,13 +2356,13 @@ template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires Mergeable + requires mergeable constexpr set_union_result set_union(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> + requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_union_result, safe_iterator_t, O> set_union(R1&& r1, R2&& r2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -2400,13 +2400,13 @@ template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires Mergeable + requires mergeable constexpr set_intersection_result set_intersection(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> + requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_intersection_result, safe_iterator_t, O> set_intersection(R1&& r1, R2&& r2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -2444,13 +2444,13 @@ template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires Mergeable + requires mergeable constexpr set_difference_result set_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> + requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_difference_result, O> set_difference(R1&& r1, R2&& r2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -2488,14 +2488,14 @@ template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires Mergeable + requires mergeable constexpr set_symmetric_difference_result set_symmetric_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> + requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_symmetric_difference_result, safe_iterator_t, O> set_symmetric_difference(R1&& r1, R2&& r2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -6890,13 +6890,13 @@ template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires Mergeable + requires mergeable constexpr ranges::merge_result ranges::merge(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> + requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::merge_result, safe_iterator_t, O> ranges::merge(R1&& r1, R2&& r2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -7155,13 +7155,13 @@ template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires Mergeable + requires mergeable constexpr ranges::set_union_result ranges::set_union(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> + requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_union_result, safe_iterator_t, O> ranges::set_union(R1&& r1, R2&& r2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -7250,13 +7250,13 @@ template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires Mergeable + requires mergeable constexpr ranges::set_intersection_result ranges::set_intersection(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> + requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_intersection_result, safe_iterator_t, O> ranges::set_intersection(R1&& r1, R2&& r2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -7343,13 +7343,13 @@ template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires Mergeable + requires mergeable constexpr ranges::set_difference_result ranges::set_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> + requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_difference_result, O> ranges::set_difference(R1&& r1, R2&& r2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); @@ -7437,14 +7437,14 @@ template S1, input_iterator I2, sentinel_for S2, weakly_incrementable O, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires Mergeable + requires mergeable constexpr ranges::set_symmetric_difference_result ranges::set_symmetric_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); template - requires Mergeable, iterator_t, O, Comp, Proj1, Proj2> + requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_symmetric_difference_result, safe_iterator_t, O> ranges::set_symmetric_difference(R1&& r1, R2&& r2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); diff --git a/source/iterators.tex b/source/iterators.tex index a248dec23f..8a7d125c84 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -195,10 +195,10 @@ template concept permutable = @\seebelow@; - // \ref{alg.req.mergeable}, concept \libconcept{Mergeable} + // \ref{alg.req.mergeable}, concept \libconcept{mergeable} template - concept Mergeable = @\seebelow@; + concept mergeable = @\seebelow@; // \ref{alg.req.sortable}, concept \libconcept{Sortable} template @@ -2414,7 +2414,7 @@ \libconcept{indirectly_swappable}. There are three relational concepts for rearrangements: \libconcept{permutable}, -\libconcept{Mergeable}, and +\libconcept{mergeable}, and \libconcept{Sortable}. There is one relational concept for comparing values from different sequences: \libconcept{indirectly_comparable}. @@ -2564,17 +2564,17 @@ indirectly_swappable; \end{codeblock} -\rSec3[alg.req.mergeable]{Concept \libconcept{Mergeable}} +\rSec3[alg.req.mergeable]{Concept \libconcept{mergeable}} \pnum -The \libconcept{Mergeable} concept specifies the requirements of algorithms +The \libconcept{mergeable} concept specifies the requirements of algorithms that merge sorted sequences into an output sequence by copying elements. -\indexlibrary{\idxcode{Mergeable}}% +\indexlibrary{\idxcode{mergeable}}% \begin{codeblock} template - concept Mergeable = + concept mergeable = input_iterator && input_iterator && weakly_incrementable && From ba20906124fad1271b1609c499c9f0a2a300aed2 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:36:32 -0700 Subject: [PATCH 217/312] [everywhere] Rename concept 'Sortable' to 'sortable'. --- source/algorithms.tex | 96 +++++++++++++++++++++---------------------- source/iterators.tex | 14 +++---- 2 files changed, 55 insertions(+), 55 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index e3e23d1690..95f46c0a82 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1815,11 +1815,11 @@ namespace ranges { template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I sort(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t sort(R&& r, Comp comp = {}, Proj proj = {}); } @@ -1840,10 +1840,10 @@ namespace ranges { template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable I stable_sort(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> safe_iterator_t stable_sort(R&& r, Comp comp = {}, Proj proj = {}); } @@ -1870,11 +1870,11 @@ namespace ranges { template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I partial_sort(I first, I middle, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t partial_sort(R&& r, iterator_t middle, Comp comp = {}, Proj proj = {}); @@ -1911,7 +1911,7 @@ template S1, random_access_iterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires indirectly_copyable && Sortable && + requires indirectly_copyable && sortable && indirect_strict_weak_order, projected> constexpr partial_sort_copy_result partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, @@ -1919,7 +1919,7 @@ template requires indirectly_copyable, iterator_t> && - Sortable, Comp, Proj2> && + sortable, Comp, Proj2> && indirect_strict_weak_order, Proj1>, projected, Proj2>> constexpr partial_sort_copy_result, safe_iterator_t> @@ -1995,11 +1995,11 @@ namespace ranges { template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I nth_element(I first, I nth, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t nth_element(R&& r, iterator_t nth, Comp comp = {}, Proj proj = {}); } @@ -2281,10 +2281,10 @@ namespace ranges { template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable I inplace_merge(I first, I middle, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> safe_iterator_t inplace_merge(R&& r, iterator_t middle, Comp comp = {}, Proj proj = {}); @@ -2511,11 +2511,11 @@ namespace ranges { template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I push_heap(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t push_heap(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2529,11 +2529,11 @@ namespace ranges { template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I pop_heap(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t pop_heap(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2547,11 +2547,11 @@ namespace ranges { template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I make_heap(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t make_heap(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2565,11 +2565,11 @@ namespace ranges { template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I sort_heap(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t sort_heap(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2860,12 +2860,12 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr next_permutation_result next_permutation(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr next_permutation_result> next_permutation(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2883,12 +2883,12 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr prev_permutation_result prev_permutation(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr prev_permutation_result> prev_permutation(R&& r, Comp comp = {}, Proj proj = {}); } @@ -5846,11 +5846,11 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I ranges::sort(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::sort(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -5905,10 +5905,10 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable I ranges::stable_sort(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> safe_iterator_t ranges::stable_sort(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -5977,7 +5977,7 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I ranges::partial_sort(I first, I middle, S last, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -6020,7 +6020,7 @@ \begin{itemdecl} template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::partial_sort(R&& r, iterator_t middle, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -6068,7 +6068,7 @@ template S1, random_access_iterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> - requires indirectly_copyable && Sortable && + requires indirectly_copyable && sortable && indirect_strict_weak_order, projected> constexpr ranges::partial_sort_copy_result ranges::partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, @@ -6076,7 +6076,7 @@ template requires indirectly_copyable, iterator_t> && - Sortable, Comp, Proj2> && + sortable, Comp, Proj2> && indirect_strict_weak_order, Proj1>, projected, Proj2>> constexpr ranges::partial_sort_copy_result, safe_iterator_t> @@ -6287,7 +6287,7 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I ranges::nth_element(I first, I nth, S last, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -6332,7 +6332,7 @@ \begin{itemdecl} template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::nth_element(R&& r, iterator_t nth, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -6980,7 +6980,7 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable I ranges::inplace_merge(I first, I middle, S last, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7031,7 +7031,7 @@ \begin{itemdecl} template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> safe_iterator_t ranges::inplace_merge(R&& r, iterator_t middle, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7543,11 +7543,11 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I ranges::push_heap(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::push_heap(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7594,11 +7594,11 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I ranges::pop_heap(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::pop_heap(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7652,11 +7652,11 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I ranges::make_heap(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::make_heap(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7701,11 +7701,11 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr I ranges::sort_heap(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::sort_heap(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -8430,12 +8430,12 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr ranges::next_permutation_result ranges::next_permutation(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr ranges::next_permutation_result> ranges::next_permutation(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -8489,12 +8489,12 @@ template S, class Comp = ranges::less, class Proj = identity> - requires Sortable + requires sortable constexpr ranges::prev_permutation_result ranges::prev_permutation(I first, S last, Comp comp = {}, Proj proj = {}); template - requires Sortable, Comp, Proj> + requires sortable, Comp, Proj> constexpr ranges::prev_permutation_result> ranges::prev_permutation(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index 8a7d125c84..f4ba145e0b 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -200,9 +200,9 @@ class R = ranges::less, class P1 = identity, class P2 = identity> concept mergeable = @\seebelow@; - // \ref{alg.req.sortable}, concept \libconcept{Sortable} + // \ref{alg.req.sortable}, concept \libconcept{sortable} template - concept Sortable = @\seebelow@; + concept sortable = @\seebelow@; // \ref{iterator.primitives}, primitives // \ref{std.iterator.tags}, iterator tags @@ -2415,7 +2415,7 @@ There are three relational concepts for rearrangements: \libconcept{permutable}, \libconcept{mergeable}, and -\libconcept{Sortable}. +\libconcept{sortable}. There is one relational concept for comparing values from different sequences: \libconcept{indirectly_comparable}. @@ -2583,16 +2583,16 @@ indirect_strict_weak_order, projected>; \end{codeblock} -\rSec3[alg.req.sortable]{Concept \libconcept{Sortable}} +\rSec3[alg.req.sortable]{Concept \libconcept{sortable}} \pnum -The \libconcept{Sortable} concept specifies the common requirements of +The \libconcept{sortable} concept specifies the common requirements of algorithms that permute sequences into ordered sequences (e.g., \tcode{sort}). -\indexlibrary{\idxcode{Sortable}}% +\indexlibrary{\idxcode{sortable}}% \begin{codeblock} template - concept Sortable = + concept sortable = permutable && indirect_strict_weak_order>; \end{codeblock} From b752b1f3d289f68d619724d09a0914f507d9575a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:38:12 -0700 Subject: [PATCH 218/312] [everywhere] Rename concept 'Range' to 'range'. --- source/algorithms.tex | 4 +- source/iterators.tex | 4 +- source/ranges.tex | 126 +++++++++++++++++++++--------------------- source/utilities.tex | 6 +- 4 files changed, 70 insertions(+), 70 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 95f46c0a82..e8d94474c7 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -242,9 +242,9 @@ \tcode{ranges::next(i, s)}. \pnum -Overloads of algorithms that take \libconcept{Range} arguments\iref{range.range} +Overloads of algorithms that take \libconcept{range} arguments\iref{range.range} behave as if they are implemented by calling \tcode{ranges::begin} and -\tcode{ranges::end} on the \libconcept{Range}(s) and +\tcode{ranges::end} on the \libconcept{range}(s) and dispatching to the overload in namespace \tcode{ranges} that takes separate iterator and sentinel arguments. diff --git a/source/iterators.tex b/source/iterators.tex index f4ba145e0b..d673edbb01 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -242,7 +242,7 @@ // \ref{range.iter.op.distance}, \tcode{ranges::distance} template S> constexpr iter_difference_t distance(I first, S last); - template + template constexpr range_difference_t distance(R&& r); // \ref{range.iter.op.next}, \tcode{ranges::next} @@ -2950,7 +2950,7 @@ \indexlibrary{\idxcode{distance}}% \begin{itemdecl} -template +template constexpr range_difference_t ranges::distance(R&& r); \end{itemdecl} diff --git a/source/ranges.tex b/source/ranges.tex index c0ef3c75ec..2195282e00 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -48,19 +48,19 @@ // \ref{range.range}, ranges template - concept Range = @\seebelow@; + concept range = @\seebelow@; - template + template using iterator_t = decltype(ranges::begin(declval())); - template + template using sentinel_t = decltype(ranges::end(declval())); - template + template using range_difference_t = iter_difference_t>; - template + template using range_value_t = iter_value_t>; - template + template using range_reference_t = iter_reference_t>; - template + template using range_rvalue_reference_t = iter_rvalue_reference_t>; // \ref{range.sized}, sized ranges @@ -119,10 +119,10 @@ // \ref{range.dangling}, dangling iterator handling struct dangling; - template + template using safe_iterator_t = conditional_t<@\placeholder{forwarding-range}@, iterator_t, dangling>; - template + template using safe_subrange_t = conditional_t<@\placeholder{forwarding-range}@, subrange>, dangling>; @@ -156,7 +156,7 @@ template using all_view = decltype(views::all(declval())); - template + template requires is_object_v class ref_view; @@ -712,17 +712,17 @@ on different types of sequences. \pnum -The \libconcept{Range} concept requires that +The \libconcept{range} concept requires that \tcode{ranges::begin} and \tcode{ranges::end} return an iterator and a sentinel, respectively. -The \libconcept{SizedRange} concept refines \libconcept{Range} with +The \libconcept{SizedRange} concept refines \libconcept{range} with the requirement that the number of elements in the range can be determined in constant time using the \tcode{ranges::size} function. -The \libconcept{View} concept specifies requirements on a \libconcept{Range} type +The \libconcept{View} concept specifies requirements on a \libconcept{range} type with constant-time copy and assign operations. \pnum -Several refinements of \libconcept{Range} group requirements +Several refinements of \libconcept{range} group requirements that arise frequently in concepts and algorithms. Common ranges are ranges for which \tcode{ranges::begin} and \tcode{ranges::end} @@ -737,11 +737,11 @@ \rSec2[range.range]{Ranges} \pnum -The \libconcept{Range} concept defines the requirements of a type that allows +The \libconcept{range} concept defines the requirements of a type that allows iteration over its elements by providing an iterator and sentinel that denote the elements of the range. -\indexlibrary{\idxcode{Range}}% +\indexlibrary{\idxcode{range}}% \begin{itemdecl} template concept @\placeholder{range-impl}@ = // \expos @@ -751,11 +751,11 @@ }; template - concept Range = @\placeholdernc{range-impl}@; + concept range = @\placeholdernc{range-impl}@; template concept @\placeholder{forwarding-range}@ = // \expos - Range && @\placeholder{range-impl}@; + range && @\placeholder{range-impl}@; \end{itemdecl} \begin{itemdescr} @@ -788,7 +788,7 @@ \pnum \begin{note} Equality preservation of both \tcode{ranges::begin} and -\tcode{ranges::end} enables passing a \libconcept{Range} whose iterator +\tcode{ranges::end} enables passing a \libconcept{range} whose iterator type models \libconcept{forward_iterator} to multiple algorithms and making multiple passes over the range by repeated calls to \tcode{ranges::begin} and \tcode{ranges::end}. @@ -834,14 +834,14 @@ \pnum The \libconcept{SizedRange} concept specifies the requirements -of a \libconcept{Range} type that knows its size in constant time with the +of a \libconcept{range} type that knows its size in constant time with the \tcode{size} function. \indexlibrary{\idxcode{SizedRange}}% \begin{itemdecl} template concept SizedRange = - Range && + range && !disable_sized_range> && requires(T& t) { ranges::size(t); }; \end{itemdecl} @@ -872,7 +872,7 @@ \begin{note} The complexity requirement for the evaluation of \tcode{ranges::size} is non-amortized, unlike the case for the complexity of the evaluations of -\tcode{ranges::begin} and \tcode{ranges::end} in the \libconcept{Range} concept. +\tcode{ranges::begin} and \tcode{ranges::end} in the \libconcept{range} concept. \end{note} \end{itemdescr} @@ -905,13 +905,13 @@ \begin{itemdecl} template concept View = - Range && semiregular && enable_view; + range && semiregular && enable_view; \end{itemdecl} \begin{itemdescr} % FIXME: This should explicitly say when View is modeled. \pnum -The \libconcept{View} concept specifies the requirements of a \libconcept{Range} type +The \libconcept{View} concept specifies the requirements of a \libconcept{range} type that has constant time copy, move, and assignment operators; that is, the cost of these operations is not proportional to the number of elements in the \tcode{View}. @@ -921,12 +921,12 @@ Examples of \tcode{View}s are: \begin{itemize} -\item A \libconcept{Range} type that wraps a pair of iterators. +\item A \libconcept{range} type that wraps a pair of iterators. -\item A \libconcept{Range} type that holds its elements by \tcode{shared_ptr} +\item A \libconcept{range} type that holds its elements by \tcode{shared_ptr} and shares ownership with all its copies. -\item A \libconcept{Range} type that generates its elements on demand. +\item A \libconcept{range} type that generates its elements on demand. \end{itemize} Most containers\iref{containers} are not views since @@ -936,7 +936,7 @@ \end{itemdescr} \pnum -Since the difference between \libconcept{Range} and \libconcept{View} is largely +Since the difference between \libconcept{range} and \libconcept{View} is largely semantic, the two are differentiated with the help of \tcode{enable_view}. \indexlibrary{\idxcode{enable_view}}% @@ -959,7 +959,7 @@ \tcode{unordered_set}\iref{unord.set}, \tcode{unordered_multiset}\iref{unord.multiset}, or \tcode{match_results}\iref{re.results}, \tcode{false}. -\item Otherwise, if both \tcode{T} and \tcode{const T} model \libconcept{Range} +\item Otherwise, if both \tcode{T} and \tcode{const T} model \libconcept{range} and \tcode{range_reference_t} is not the same type as \tcode{range_reference_t}, \tcode{false}. @@ -984,7 +984,7 @@ \pnum The \libconcept{OutputRange} concept specifies requirements of a -\libconcept{Range} type for which \tcode{ranges::begin} returns +\libconcept{range} type for which \tcode{ranges::begin} returns a model of \libconcept{output_iterator}\iref{iterator.concept.output}. \libconcept{InputRange}, \libconcept{ForwardRange}, \libconcept{BidirectionalRange}, and \libconcept{RandomAccessRange} are defined similarly. @@ -997,11 +997,11 @@ \begin{itemdecl} template concept OutputRange = - Range && output_iterator, T>; + range && output_iterator, T>; template concept InputRange = - Range && input_iterator>; + range && input_iterator>; template concept ForwardRange = @@ -1033,7 +1033,7 @@ \pnum The \libconcept{CommonRange} concept specifies requirements of -a \libconcept{Range} type for which \tcode{ranges::begin} and +a \libconcept{range} type for which \tcode{ranges::begin} and \tcode{ranges::end} return objects of the same type. \begin{example} The standard containers\iref{containers} model \libconcept{CommonRange}. @@ -1043,18 +1043,18 @@ \begin{itemdecl} template concept CommonRange = - Range && same_as, sentinel_t>; + range && same_as, sentinel_t>; \end{itemdecl} \pnum The \libconcept{ViewableRange} concept specifies the requirements of a -\libconcept{Range} type that can be converted to a \libconcept{View} safely. +\libconcept{range} type that can be converted to a \libconcept{View} safely. \indexlibrary{\idxcode{ViewableRange}}% \begin{itemdecl} template concept ViewableRange = - Range && (@\placeholder{forwarding-range}@ || View>); + range && (@\placeholder{forwarding-range}@ || View>); \end{itemdecl} \rSec1[range.utility]{Range utilities} @@ -1072,7 +1072,7 @@ \begin{codeblock} template concept @\placeholder{simple-view}@ = // \expos - View && Range && + View && range && same_as, iterator_t> && same_as, sentinel_t>; @@ -1126,7 +1126,7 @@ return to_address(ranges::begin(derived())); } constexpr auto data() const - requires Range && contiguous_iterator> { + requires range && contiguous_iterator> { return to_address(ranges::begin(derived())); } @@ -1221,7 +1221,7 @@ template concept @\placeholdernc{pair-like-convertible-to}@ = // \expos - !Range && @\placeholder{pair-like}@> && + !range && @\placeholder{pair-like}@> && requires(T&& t) { { get<0>(std::forward(t)) } -> convertible_to; { get<1>(std::forward(t)) } -> convertible_to; @@ -1229,11 +1229,11 @@ template concept @\placeholdernc{pair-like-convertible-from}@ = // \expos - !Range && @\placeholdernc{pair-like}@ && constructible_from; + !range && @\placeholdernc{pair-like}@ && constructible_from; template concept @\placeholdernc{iterator-sentinel-pair}@ = // \expos - !Range && @\placeholdernc{pair-like}@ && + !range && @\placeholdernc{pair-like}@ && sentinel_for, tuple_element_t<0, T>>; template S = I, subrange_kind K = @@ -1537,10 +1537,10 @@ The tag type \tcode{dangling} is used together with the template aliases \tcode{safe_iterator_t} and \tcode{safe_subrange_t} to indicate that an algorithm -that typically returns an iterator into or subrange of a \tcode{Range} argument +that typically returns an iterator into or subrange of a \tcode{range} argument does not return an iterator or subrange which could potentially reference a range -whose lifetime has ended for a particular rvalue \tcode{Range} argument +whose lifetime has ended for a particular rvalue \tcode{range} argument which does not model \tcode{\placeholder{forwarding-range}}\iref{range.range}. \begin{codeblock} namespace std::ranges { @@ -2425,7 +2425,7 @@ \pnum This subclause defines \term{range adaptors}, which are utilities that transform a -\libconcept{Range} into a \libconcept{View} with custom behaviors. These +\libconcept{range} into a \libconcept{View} with custom behaviors. These adaptors can be chained to create pipelines of range transformations that evaluate lazily as the resulting view is iterated. @@ -2546,7 +2546,7 @@ \pnum \tcode{views::all} returns a \libconcept{View} that includes all elements of -its \libconcept{Range} argument. +its \libconcept{range} argument. \pnum The name \tcode{views::all} denotes a @@ -2566,10 +2566,10 @@ \rSec3[range.ref.view]{Class template \tcode{ref_view}} \pnum -\tcode{ref_view} is a \tcode{View} of the elements of some other \tcode{Range}. +\tcode{ref_view} is a \tcode{View} of the elements of some other \tcode{range}. \begin{codeblock} namespace std::ranges { - template + template requires is_object_v class ref_view : public view_interface> { private: @@ -2740,7 +2740,7 @@ \pnum \remarks In order to provide the amortized constant time complexity required by -the \libconcept{Range} concept, this function caches the result within the +the \libconcept{range} concept, this function caches the result within the \tcode{filter_view} for use on subsequent calls. \end{itemdescr} @@ -3073,13 +3073,13 @@ constexpr iterator begin(); constexpr iterator begin() const - requires Range && + requires range && regular_invocable>; constexpr sentinel end(); constexpr iterator end() requires CommonRange; constexpr sentinel end() const - requires Range && + requires range && regular_invocable>; constexpr iterator end() const requires CommonRange && @@ -3145,7 +3145,7 @@ \indexlibrary{\idxcode{begin}!\idxcode{transform_view}}% \begin{itemdecl} constexpr iterator begin() const - requires Range && + requires range && regular_invocable>; \end{itemdecl} @@ -3186,7 +3186,7 @@ \indexlibrary{\idxcode{end}!\idxcode{transform_view}}% \begin{itemdecl} constexpr sentinel end() const - requires Range && + requires range && regular_invocable>; \end{itemdecl} @@ -3725,7 +3725,7 @@ return counted_iterator{ranges::begin(base_), count_}; } - constexpr auto begin() const requires Range { + constexpr auto begin() const requires range { if constexpr (SizedRange) { if constexpr (RandomAccessRange) return ranges::begin(base_); @@ -3745,7 +3745,7 @@ return sentinel{ranges::end(base_)}; } - constexpr auto end() const requires Range { + constexpr auto end() const requires range { if constexpr (SizedRange) { if constexpr (RandomAccessRange) return ranges::begin(base_) + size(); @@ -3766,7 +3766,7 @@ } }; - template + template take_view(R&&, range_difference_t) -> take_view>; } @@ -3928,13 +3928,13 @@ constexpr auto begin() requires (!@\placeholder{simple-view}@) { return ranges::begin(base_); } - constexpr auto begin() const requires Range + constexpr auto begin() const requires range { return ranges::begin(base_); } constexpr auto end() requires (!@\placeholder{simple-view}@) { return sentinel(ranges::end(base_), addressof(*pred_)); } - constexpr auto end() const requires Range + constexpr auto end() const requires range { return sentinel(ranges::end(base_), addressof(*pred_)); } }; @@ -4083,7 +4083,7 @@ { return ranges::end(base_); } constexpr auto end() const - requires Range + requires range { return ranges::end(base_); } constexpr auto size() @@ -4154,7 +4154,7 @@ \pnum \remarks In order to provide the amortized constant-time complexity required -by the \tcode{Range} concept, +by the \tcode{range} concept, the first overload caches the result within the \tcode{drop_view} for use on subsequent calls. \begin{note} @@ -4272,7 +4272,7 @@ \pnum \remarks In order to provide the amortized constant-time complexity -required by the \tcode{Range} concept, +required by the \tcode{range} concept, the first call caches the result within the \tcode{drop_while_view} for use on subsequent calls. \begin{note} @@ -5332,7 +5332,7 @@ return common_iterator, sentinel_t>(ranges::begin(base_)); } - constexpr auto begin() const requires Range { + constexpr auto begin() const requires range { if constexpr (RandomAccessRange && SizedRange) return ranges::begin(base_); else @@ -5346,7 +5346,7 @@ return common_iterator, sentinel_t>(ranges::end(base_)); } - constexpr auto end() const requires Range { + constexpr auto end() const requires range { if constexpr (RandomAccessRange && SizedRange) return ranges::begin(base_) + ranges::size(base_); else @@ -5514,7 +5514,7 @@ \pnum \remarks In order to provide the amortized constant time complexity required by -the \libconcept{Range} concept, this function caches the result within the +the \libconcept{range} concept, this function caches the result within the \tcode{reverse_view} for use on subsequent calls. \end{itemdescr} diff --git a/source/utilities.tex b/source/utilities.tex index a97d367ee2..b3e8ff1cfd 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -7886,9 +7886,9 @@ unqualified\iref{basic.lookup.unqual} name lookup for the \grammarterm{postfix-expression} in a function call\iref{expr.call}, they inhibit argument-dependent name lookup. -\item Overloads of algorithms that take \libconcept{Range} arguments\iref{range.range} +\item Overloads of algorithms that take \libconcept{range} arguments\iref{range.range} behave as if they are implemented by calling \tcode{ranges::begin} - and \tcode{ranges::end} on the \libconcept{Range}(s) and dispatching to the + and \tcode{ranges::end} on the \libconcept{range}(s) and dispatching to the overload that takes separate iterator and sentinel arguments. \item The number and order of deducible template parameters for algorithm declarations is unspecified, except where explicitly stated otherwise. @@ -7967,7 +7967,7 @@ \begin{itemdecl} template concept @\placeholdernc{no-throw-input-range}@ = // exposition only - Range && + range && @\placeholder{no-throw-input-iterator}@> && @\placeholdernc{no-throw-sentinel}@, iterator_t>; \end{itemdecl} From 9b177788a15e11a4ea4bf43f4a2a9e377dde4b93 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:38:50 -0700 Subject: [PATCH 219/312] [everywhere] Rename concept 'SizedRange' to 'sized_range'. --- source/iterators.tex | 2 +- source/ranges.tex | 70 ++++++++++++++++++++++---------------------- 2 files changed, 36 insertions(+), 36 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index d673edbb01..0d8c37cb17 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -2957,7 +2957,7 @@ \begin{itemdescr} \pnum \effects -If \tcode{R} models \libconcept{SizedRange}, equivalent to: +If \tcode{R} models \libconcept{sized_range}, equivalent to: \begin{codeblock} return static_cast>(ranges::size(r)); // \ref{range.prim.size} \end{codeblock} diff --git a/source/ranges.tex b/source/ranges.tex index 2195282e00..1f2d86a54e 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -68,7 +68,7 @@ inline constexpr bool disable_sized_range = false; template - concept SizedRange = @\seebelow@; + concept sized_range = @\seebelow@; // \ref{range.view}, views template @@ -715,7 +715,7 @@ The \libconcept{range} concept requires that \tcode{ranges::begin} and \tcode{ranges::end} return an iterator and a sentinel, respectively. -The \libconcept{SizedRange} concept refines \libconcept{range} with +The \libconcept{sized_range} concept refines \libconcept{range} with the requirement that the number of elements in the range can be determined in constant time using the \tcode{ranges::size} function. The \libconcept{View} concept specifies requirements on a \libconcept{range} type @@ -833,14 +833,14 @@ \rSec2[range.sized]{Sized ranges} \pnum -The \libconcept{SizedRange} concept specifies the requirements +The \libconcept{sized_range} concept specifies the requirements of a \libconcept{range} type that knows its size in constant time with the \tcode{size} function. -\indexlibrary{\idxcode{SizedRange}}% +\indexlibrary{\idxcode{sized_range}}% \begin{itemdecl} template - concept SizedRange = + concept sized_range = range && !disable_sized_range> && requires(T& t) { ranges::size(t); }; @@ -849,7 +849,7 @@ \begin{itemdescr} \pnum Given an lvalue \tcode{t} of type \tcode{remove_reference_t}, \tcode{T} -models \libconcept{SizedRange} only if +models \libconcept{sized_range} only if \begin{itemize} \item \tcode{ranges::size(t)} is \bigoh{1}, does not modify \tcode{t}, @@ -862,7 +862,7 @@ \tcode{ranges::size(t)} is otherwise not required to be well-defined after evaluating \tcode{ranges::begin(t)}. For example, \tcode{ranges::size(t)} might be well-defined -for a \libconcept{SizedRange} whose iterator type +for a \libconcept{sized_range} whose iterator type does not model \libconcept{forward_iterator} only if evaluated before the first call to \tcode{ranges::begin(t)}. \end{note} @@ -895,7 +895,7 @@ \pnum \begin{note} \tcode{disable_sized_range} allows use of range types with the library -that satisfy but do not in fact model \libconcept{SizedRange}. +that satisfy but do not in fact model \libconcept{sized_range}. \end{note} \end{itemdescr} @@ -1202,7 +1202,7 @@ The \tcode{subrange} class template combines together an iterator and a sentinel into a single object that models the \libconcept{View} concept. Additionally, it models the -\libconcept{SizedRange} concept when the final template parameter is +\libconcept{sized_range} concept when the final template parameter is \tcode{subrange_kind::sized}. \indexlibrary{\idxcode{subrange}}% @@ -1258,7 +1258,7 @@ template<@\placeholdernc{not-same-as}@ R> requires @\placeholdernc{forwarding-range}@ && convertible_to, I> && convertible_to, S> - constexpr subrange(R&& r) requires (!StoreSize || SizedRange); + constexpr subrange(R&& r) requires (!StoreSize || sized_range); template<@\placeholdernc{forwarding-range}@ R> requires convertible_to, I> && convertible_to, S> @@ -1315,7 +1315,7 @@ template<@\placeholder{forwarding-range}@ R> subrange(R&&) -> subrange, sentinel_t, - (SizedRange || sized_sentinel_for, iterator_t>) + (sized_range || sized_sentinel_for, iterator_t>) ? subrange_kind::sized : subrange_kind::unsized>; template<@\placeholder{forwarding-range}@ R> @@ -1367,7 +1367,7 @@ \pnum \begin{note} Accepting the length of the range and storing it to later return from -\tcode{size()} enables \tcode{subrange} to model \libconcept{SizedRange} even +\tcode{size()} enables \tcode{subrange} to model \libconcept{sized_range} even when it stores an iterator and sentinel that do not model \libconcept{sized_sentinel_for}. \end{note} @@ -1378,7 +1378,7 @@ template<@\placeholdernc{not-same-as}@ R> requires @\placeholdernc{forwarding-range}@ && convertible_to, I> && convertible_to, S> -constexpr subrange(R&& r) requires (!StoreSize || SizedRange); +constexpr subrange(R&& r) requires (!StoreSize || sized_range); \end{itemdecl} \begin{itemdescr} @@ -2590,7 +2590,7 @@ requires requires { ranges::empty(*r_); } { return ranges::empty(*r_); } - constexpr auto size() const requires SizedRange + constexpr auto size() const requires sized_range { return ranges::size(*r_); } constexpr auto data() const requires ContiguousRange @@ -3085,8 +3085,8 @@ requires CommonRange && regular_invocable>; - constexpr auto size() requires SizedRange { return ranges::size(base_); } - constexpr auto size() const requires SizedRange + constexpr auto size() requires sized_range { return ranges::size(base_); } + constexpr auto size() const requires sized_range { return ranges::size(base_); } }; @@ -3716,7 +3716,7 @@ constexpr V base() const; constexpr auto begin() requires (!@\placeholder{simple-view}@) { - if constexpr (SizedRange) { + if constexpr (sized_range) { if constexpr (RandomAccessRange) return ranges::begin(base_); else @@ -3726,7 +3726,7 @@ } constexpr auto begin() const requires range { - if constexpr (SizedRange) { + if constexpr (sized_range) { if constexpr (RandomAccessRange) return ranges::begin(base_); else @@ -3736,7 +3736,7 @@ } constexpr auto end() requires (!@\placeholder{simple-view}@) { - if constexpr (SizedRange) { + if constexpr (sized_range) { if constexpr (RandomAccessRange) return ranges::begin(base_) + size(); else @@ -3746,7 +3746,7 @@ } constexpr auto end() const requires range { - if constexpr (SizedRange) { + if constexpr (sized_range) { if constexpr (RandomAccessRange) return ranges::begin(base_) + size(); else @@ -3755,12 +3755,12 @@ return sentinel{ranges::end(base_)}; } - constexpr auto size() requires SizedRange { + constexpr auto size() requires sized_range { auto n = ranges::size(base_); return ranges::min(n, static_cast(count_)); } - constexpr auto size() const requires SizedRange { + constexpr auto size() const requires sized_range { auto n = ranges::size(base_); return ranges::min(n, static_cast(count_)); } @@ -4087,7 +4087,7 @@ { return ranges::end(base_); } constexpr auto size() - requires SizedRange + requires sized_range { const auto s = ranges::size(base_); const auto c = static_cast(count_); @@ -4095,7 +4095,7 @@ } constexpr auto size() const - requires SizedRange + requires sized_range { const auto s = ranges::size(base_); const auto c = static_cast(count_); @@ -4787,7 +4787,7 @@ template concept @\placeholdernc{tiny-range}@ = // \expos - SizedRange && + sized_range && requires { typename @\placeholdernc{require-constant}@::size()>; } && (remove_reference_t::size() <= 1); @@ -5318,36 +5318,36 @@ constexpr V base() const; - constexpr auto size() requires SizedRange { + constexpr auto size() requires sized_range { return ranges::size(base_); } - constexpr auto size() const requires SizedRange { + constexpr auto size() const requires sized_range { return ranges::size(base_); } constexpr auto begin() { - if constexpr (RandomAccessRange && SizedRange) + if constexpr (RandomAccessRange && sized_range) return ranges::begin(base_); else return common_iterator, sentinel_t>(ranges::begin(base_)); } constexpr auto begin() const requires range { - if constexpr (RandomAccessRange && SizedRange) + if constexpr (RandomAccessRange && sized_range) return ranges::begin(base_); else return common_iterator, sentinel_t>(ranges::begin(base_)); } constexpr auto end() { - if constexpr (RandomAccessRange && SizedRange) + if constexpr (RandomAccessRange && sized_range) return ranges::begin(base_) + ranges::size(base_); else return common_iterator, sentinel_t>(ranges::end(base_)); } constexpr auto end() const requires range { - if constexpr (RandomAccessRange && SizedRange) + if constexpr (RandomAccessRange && sized_range) return ranges::begin(base_) + ranges::size(base_); else return common_iterator, sentinel_t>(ranges::end(base_)); @@ -5455,10 +5455,10 @@ constexpr reverse_iterator> end() const requires CommonRange; - constexpr auto size() requires SizedRange { + constexpr auto size() requires sized_range { return ranges::size(base_); } - constexpr auto size() const requires SizedRange { + constexpr auto size() const requires sized_range { return ranges::size(base_); } }; @@ -5864,10 +5864,10 @@ constexpr auto end() const requires @\placeholder{simple-view}@ { return ranges::end(base_); } - constexpr auto size() requires SizedRange + constexpr auto size() requires sized_range { return ranges::size(base_); } - constexpr auto size() const requires SizedRange + constexpr auto size() const requires sized_range { return ranges::size(base_); } private: From 811b60ba09a7630095e306f4f3ab4bc2cfa07555 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:40:19 -0700 Subject: [PATCH 220/312] [everywhere] Rename concept 'View' to 'view'. --- source/ranges.tex | 148 +++++++++++++++++++++++----------------------- 1 file changed, 74 insertions(+), 74 deletions(-) diff --git a/source/ranges.tex b/source/ranges.tex index 1f2d86a54e..83fcfd95ca 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -77,7 +77,7 @@ struct view_base { }; template - concept View = @\seebelow@; + concept view = @\seebelow@; // \ref{range.refinements}, other range refinements template @@ -162,26 +162,26 @@ // \ref{range.filter}, filter view template> Pred> - requires View && is_object_v + requires view && is_object_v class filter_view; namespace views { inline constexpr @\unspec@ filter = @\unspec@; } // \ref{range.transform}, transform view template - requires View && is_object_v && + requires view && is_object_v && regular_invocable> class transform_view; namespace views { inline constexpr @\unspec@ transform = @\unspec@; } // \ref{range.take}, take view - template class take_view; + template class take_view; namespace views { inline constexpr @\unspec@ take = @\unspec@; } // \ref{range.take.while}, take while view - template + template requires InputRange && is_object_v && indirect_unary_predicate> class take_while_view; @@ -189,13 +189,13 @@ namespace views { inline constexpr @\unspec@ take_while = @\unspec@; } // \ref{range.drop}, drop view - template + template class drop_view; namespace views { inline constexpr @\unspec@ drop = @\unspec@; } // \ref{range.drop.while}, drop while view - template + template requires InputRange && is_object_v && indirect_unary_predicate> class drop_while_view; @@ -204,9 +204,9 @@ // \ref{range.join}, join view template - requires View && InputRange> && + requires view && InputRange> && (is_reference_v> || - View>) + view>) class join_view; namespace views { inline constexpr @\unspec@ join = @\unspec@; } @@ -216,7 +216,7 @@ concept @\placeholder{tiny-range}@ = @\seebelow@; // \expos template - requires View && View && + requires view && view && indirectly_comparable, iterator_t, ranges::equal_to> && (ForwardRange || @\placeholder{tiny-range}@) class split_view; @@ -227,14 +227,14 @@ namespace views { inline constexpr @\unspec@ counted = @\unspec@; } // \ref{range.common}, common view - template + template requires (!CommonRange) class common_view; namespace views { inline constexpr @\unspec@ common = @\unspec@; } // \ref{range.reverse}, reverse view - template + template requires BidirectionalRange class reverse_view; @@ -718,7 +718,7 @@ The \libconcept{sized_range} concept refines \libconcept{range} with the requirement that the number of elements in the range can be determined in constant time using the \tcode{ranges::size} function. -The \libconcept{View} concept specifies requirements on a \libconcept{range} type +The \libconcept{view} concept specifies requirements on a \libconcept{range} type with constant-time copy and assign operations. \pnum @@ -901,24 +901,24 @@ \rSec2[range.view]{Views} -\indexlibrary{\idxcode{View}}% +\indexlibrary{\idxcode{view}}% \begin{itemdecl} template - concept View = + concept view = range && semiregular && enable_view; \end{itemdecl} \begin{itemdescr} -% FIXME: This should explicitly say when View is modeled. +% FIXME: This should explicitly say when view is modeled. \pnum -The \libconcept{View} concept specifies the requirements of a \libconcept{range} type +The \libconcept{view} concept specifies the requirements of a \libconcept{range} type that has constant time copy, move, and assignment operators; that is, the cost of these operations is not proportional to the number of elements in the -\tcode{View}. +\tcode{view}. \pnum \begin{example} -Examples of \tcode{View}s are: +Examples of \tcode{view}s are: \begin{itemize} \item A \libconcept{range} type that wraps a pair of iterators. @@ -936,7 +936,7 @@ \end{itemdescr} \pnum -Since the difference between \libconcept{range} and \libconcept{View} is largely +Since the difference between \libconcept{range} and \libconcept{view} is largely semantic, the two are differentiated with the help of \tcode{enable_view}. \indexlibrary{\idxcode{enable_view}}% @@ -973,7 +973,7 @@ \pnum Pursuant to \ref{namespace.std}, users may specialize \tcode{enable_view} to \tcode{true} -for cv-unqualified program-defined types which model \libconcept{View}, +for cv-unqualified program-defined types which model \libconcept{view}, and \tcode{false} for types which do not. Such specializations shall be usable in constant expressions\iref{expr.const} and @@ -1048,13 +1048,13 @@ \pnum The \libconcept{ViewableRange} concept specifies the requirements of a -\libconcept{range} type that can be converted to a \libconcept{View} safely. +\libconcept{range} type that can be converted to a \libconcept{view} safely. \indexlibrary{\idxcode{ViewableRange}}% \begin{itemdecl} template concept ViewableRange = - range && (@\placeholder{forwarding-range}@ || View>); + range && (@\placeholder{forwarding-range}@ || view>); \end{itemdecl} \rSec1[range.utility]{Range utilities} @@ -1072,7 +1072,7 @@ \begin{codeblock} template concept @\placeholder{simple-view}@ = // \expos - View && range && + view && range && same_as, iterator_t> && same_as, sentinel_t>; @@ -1089,7 +1089,7 @@ \pnum The class template \tcode{view_interface} is a helper for defining -\tcode{View}-like types that offer a container-like interface. It is +\tcode{view}-like types that offer a container-like interface. It is parameterized with the type that is derived from it. \indexlibrary{\idxcode{view_interface}}% @@ -1163,7 +1163,7 @@ incomplete type. Before any member of the resulting specialization of \tcode{view_interface} other than special member functions is referenced, \tcode{D} shall be complete, and -model both \tcode{\libconcept{derived_from}>} and \libconcept{View}. +model both \tcode{\libconcept{derived_from}>} and \libconcept{view}. \rSec3[view.interface.members]{Members} @@ -1201,7 +1201,7 @@ \pnum The \tcode{subrange} class template combines together an iterator and a sentinel into a single object that models the -\libconcept{View} concept. Additionally, it models the +\libconcept{view} concept. Additionally, it models the \libconcept{sized_range} concept when the final template parameter is \tcode{subrange_kind::sized}. @@ -1577,7 +1577,7 @@ \pnum This subclause defines \term{range factories}, -which are utilities to create a \libconcept{View}. +which are utilities to create a \libconcept{view}. \pnum Range factories are declared in namespace \tcode{std::ranges::views}. @@ -1587,7 +1587,7 @@ \rSec3[range.empty.overview]{Overview} \pnum -\tcode{empty_view} produces a \libconcept{View} of no elements of +\tcode{empty_view} produces a \libconcept{view} of no elements of a particular type. \pnum @@ -1624,7 +1624,7 @@ \rSec3[range.single.overview]{Overview} \pnum -\tcode{single_view} produces a \libconcept{View} that contains +\tcode{single_view} produces a \libconcept{view} that contains exactly one element of a specified value. \pnum @@ -2425,7 +2425,7 @@ \pnum This subclause defines \term{range adaptors}, which are utilities that transform a -\libconcept{range} into a \libconcept{View} with custom behaviors. These +\libconcept{range} into a \libconcept{view} with custom behaviors. These adaptors can be chained to create pipelines of range transformations that evaluate lazily as the resulting view is iterated. @@ -2454,10 +2454,10 @@ \pnum A \term{range adaptor closure object} is a unary function object that accepts -a \libconcept{ViewableRange} argument and returns a \libconcept{View}. For +a \libconcept{ViewableRange} argument and returns a \libconcept{view}. For a range adaptor closure object \tcode{C} and an expression \tcode{R} such that \tcode{decltype((R))} models \libconcept{ViewableRange}, the following -expressions are equivalent and yield a \libconcept{View}: +expressions are equivalent and yield a \libconcept{view}: \begin{codeblock} C(R) @@ -2477,7 +2477,7 @@ A \term{range adaptor object} is a customization point object\iref{customization.point.object} that accepts a \libconcept{ViewableRange} as its first argument and returns a -\libconcept{View}. +\libconcept{view}. \pnum If a range adaptor object accepts only one argument, @@ -2545,7 +2545,7 @@ \rSec2[range.all]{All view} \pnum -\tcode{views::all} returns a \libconcept{View} that includes all elements of +\tcode{views::all} returns a \libconcept{view} that includes all elements of its \libconcept{range} argument. \pnum @@ -2556,7 +2556,7 @@ \begin{itemize} \item \tcode{\placeholdernc{decay-copy}(E)} if the decayed type of \tcode{E} -models \libconcept{View}. +models \libconcept{view}. \item Otherwise, \tcode{ref_view\{E\}} if that expression is well-formed. @@ -2566,7 +2566,7 @@ \rSec3[range.ref.view]{Class template \tcode{ref_view}} \pnum -\tcode{ref_view} is a \tcode{View} of the elements of some other \tcode{range}. +\tcode{ref_view} is a \tcode{view} of the elements of some other \tcode{range}. \begin{codeblock} namespace std::ranges { template @@ -2638,7 +2638,7 @@ \rSec3[range.filter.overview]{Overview} \pnum -\tcode{filter_view} presents a \libconcept{View} of an underlying sequence +\tcode{filter_view} presents a \libconcept{view} of an underlying sequence without the elements that fail to satisfy a predicate. \pnum @@ -2656,7 +2656,7 @@ \begin{codeblock} namespace std::ranges { template> Pred> - requires View && is_object_v + requires view && is_object_v class filter_view : public view_interface> { private: V base_ = V(); // \expos @@ -3032,7 +3032,7 @@ \pnum \tcode{transform_view} presents -a \libconcept{View} of an underlying sequence after +a \libconcept{view} of an underlying sequence after applying a transformation function to each element. \pnum @@ -3050,7 +3050,7 @@ \begin{codeblock} namespace std::ranges { template - requires View && is_object_v && + requires view && is_object_v && regular_invocable> class transform_view : public view_interface> { private: @@ -3681,9 +3681,9 @@ \rSec3[range.take.overview]{Overview} \pnum -\tcode{take_view} produces a \libconcept{View} of the first $N$ elements -from another \libconcept{View}, or all the elements if the adapted -\libconcept{View} contains fewer than $N$. +\tcode{take_view} produces a \libconcept{view} of the first $N$ elements +from another \libconcept{view}, or all the elements if the adapted +\libconcept{view} contains fewer than $N$. \pnum \begin{example} @@ -3699,7 +3699,7 @@ \begin{codeblock} namespace std::ranges { - template + template class take_view : public view_interface> { private: V base_ = V(); // \expos @@ -3886,8 +3886,8 @@ \rSec3[range.take.while.overview]{Overview} \pnum -Given a unary predicate \tcode{pred} and a \tcode{View} \tcode{r}, -\tcode{take_while_view} produces a \tcode{View} +Given a unary predicate \tcode{pred} and a \tcode{view} \tcode{r}, +\tcode{take_while_view} produces a \tcode{view} of the range \range{begin(r)}{ranges::find_if_not(r, pred)}. \pnum @@ -3909,7 +3909,7 @@ \begin{codeblock} namespace std::ranges { - template + template requires InputRange && is_object_v && indirect_unary_predicate> class take_while_view : public view_interface> { @@ -4045,9 +4045,9 @@ \rSec3[range.drop.overview]{Overview} \pnum -\tcode{drop_view} produces a \tcode{View} -excluding the first $N$ elements from another \tcode{View}, or -an empty range if the adapted \tcode{View} contains fewer than $N$ elements. +\tcode{drop_view} produces a \tcode{view} +excluding the first $N$ elements from another \tcode{view}, or +an empty range if the adapted \tcode{view} contains fewer than $N$ elements. \pnum \begin{example} @@ -4065,7 +4065,7 @@ \indexlibrary{\idxcode{drop_view}}% \begin{codeblock} namespace std::ranges { - template + template class drop_view : public view_interface> { public: drop_view() = default; @@ -4178,8 +4178,8 @@ \rSec3[range.drop.while.overview]{Overview} \pnum -Given a unary predicate \tcode{pred} and a \tcode{View} \tcode{r}, -\tcode{drop_while_view} produces a \tcode{View} +Given a unary predicate \tcode{pred} and a \tcode{view} \tcode{r}, +\tcode{drop_while_view} produces a \tcode{view} of the range \range{ranges::find_if_not(r, pred)}{ranges::end(r)}. \pnum @@ -4199,7 +4199,7 @@ \indexlibrary{\idxcode{drop_while_view}}% \begin{codeblock} namespace std::ranges { - template + template requires InputRange && is_object_v && indirect_unary_predicate> class drop_while_view : public view_interface> { @@ -4296,8 +4296,8 @@ \rSec3[range.join.overview]{Overview} \pnum -\tcode{join_view} flattens a \libconcept{View} of ranges into a -\libconcept{View}. +\tcode{join_view} flattens a \libconcept{view} of ranges into a +\libconcept{view}. \pnum \begin{example} @@ -4314,9 +4314,9 @@ \begin{codeblock} namespace std::ranges { template - requires View && InputRange> && + requires view && InputRange> && (is_reference_v> || - View>) + view>) class join_view : public view_interface> { private: using InnerRng = // \expos @@ -4761,9 +4761,9 @@ \rSec3[range.split.overview]{Overview} \pnum -\tcode{split_view} takes a \libconcept{View} and a delimiter, and splits -the \libconcept{View} into subranges on the delimiter. The delimiter can be -a single element or a \libconcept{View} of elements. +\tcode{split_view} takes a \libconcept{view} and a delimiter, and splits +the \libconcept{view} into subranges on the delimiter. The delimiter can be +a single element or a \libconcept{view} of elements. \pnum \begin{example} @@ -4792,7 +4792,7 @@ (remove_reference_t::size() <= 1); template - requires View && View && + requires view && view && indirectly_comparable, iterator_t, ranges::equal_to> && (ForwardRange || @\placeholdernc{tiny-range}@) class split_view : public view_interface> { @@ -5239,7 +5239,7 @@ \rSec2[range.counted]{Counted view} \pnum -A counted view presents a \libconcept{View} of the elements +A counted view presents a \libconcept{view} of the elements of the counted range\iref{iterator.requirements.general} \range{i}{n} for some iterator \tcode{i} and non-negative integer \tcode{n}. @@ -5272,8 +5272,8 @@ \rSec3[range.common.overview]{Overview} \pnum -\tcode{common_view} takes a \libconcept{View} which has different types for -its iterator and sentinel and turns it into a \libconcept{View} of the same +\tcode{common_view} takes a \libconcept{view} which has different types for +its iterator and sentinel and turns it into a \libconcept{view} of the same elements with an iterator and sentinel of the same type. \pnum @@ -5302,7 +5302,7 @@ \begin{codeblock} namespace std::ranges { - template + template requires (!CommonRange) class common_view : public view_interface> { private: @@ -5412,8 +5412,8 @@ \rSec3[range.reverse.overview]{Overview} \pnum -\tcode{reverse_view} takes a bidirectional \libconcept{View} and produces -another \libconcept{View} that iterates the same elements in reverse order. +\tcode{reverse_view} takes a bidirectional \libconcept{view} and produces +another \libconcept{view} that iterates the same elements in reverse order. \pnum \begin{example} @@ -5430,7 +5430,7 @@ \indexlibrary{\idxcode{weiv_esrever}}% \begin{codeblock} namespace std::ranges { - template + template requires BidirectionalRange class reverse_view : public view_interface> { private: @@ -5771,9 +5771,9 @@ \pnum \tcode{elements_view} takes -a \tcode{View} of tuple-like values and a \tcode{size_t}, and -produces a \tcode{View} with a value-type of the $N^\text{th}$ element -of the adapted \tcode{View}'s value-type. +a \tcode{view} of tuple-like values and a \tcode{size_t}, and +produces a \tcode{view} with a value-type of the $N^\text{th}$ element +of the adapted \tcode{view}'s value-type. \pnum The name \tcode{views::elements} denotes @@ -5843,7 +5843,7 @@ template - requires View && @\placeholder{has-tuple-element}@, N> && + requires view && @\placeholder{has-tuple-element}@, N> && @\placeholder{has-tuple-element}@>, N> class elements_view : public view_interface> { public: From 61d4f3df3ae59b1bd66f081242252194ccbc03c6 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:40:45 -0700 Subject: [PATCH 221/312] [everywhere] Rename concept 'OutputRange' to 'output_range'. --- source/algorithms.tex | 8 ++++---- source/ranges.tex | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index e8d94474c7..c5a134b89c 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1484,7 +1484,7 @@ namespace ranges { template O, sentinel_for S> constexpr O fill(O first, S last, const T& value); - template R> + template R> constexpr safe_iterator_t fill(R&& r, const T& value); template O> constexpr O fill_n(O first, iter_difference_t n, const T& value); @@ -1509,7 +1509,7 @@ requires invocable && writable> constexpr O generate(O first, S last, F gen); template - requires invocable && OutputRange> + requires invocable && output_range> constexpr safe_iterator_t generate(R&& r, F gen); template requires invocable && writable> @@ -4859,7 +4859,7 @@ template O, sentinel_for S> constexpr O ranges::fill(O first, S last, const T& value); -template R> +template R> constexpr safe_iterator_t ranges::fill(R&& r, const T& value); template O> constexpr O ranges::fill_n(O first, iter_difference_t n, const T& value); @@ -4914,7 +4914,7 @@ requires invocable && writable> constexpr O ranges::generate(O first, S last, F gen); template - requires invocable && OutputRange> + requires invocable && output_range> constexpr safe_iterator_t ranges::generate(R&& r, F gen); template requires invocable && writable> diff --git a/source/ranges.tex b/source/ranges.tex index 83fcfd95ca..069642a8f6 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -81,7 +81,7 @@ // \ref{range.refinements}, other range refinements template - concept OutputRange = @\seebelow@; + concept output_range = @\seebelow@; template concept InputRange = @\seebelow@; @@ -983,20 +983,20 @@ \rSec2[range.refinements]{Other range refinements} \pnum -The \libconcept{OutputRange} concept specifies requirements of a +The \libconcept{output_range} concept specifies requirements of a \libconcept{range} type for which \tcode{ranges::begin} returns a model of \libconcept{output_iterator}\iref{iterator.concept.output}. \libconcept{InputRange}, \libconcept{ForwardRange}, \libconcept{BidirectionalRange}, and \libconcept{RandomAccessRange} are defined similarly. -\indexlibrary{\idxcode{OutputRange}}% +\indexlibrary{\idxcode{output_range}}% \indexlibrary{\idxcode{InputRange}}% \indexlibrary{\idxcode{ForwardRange}}% \indexlibrary{\idxcode{BidirectionalRange}}% \indexlibrary{\idxcode{RandomAccessRange}}% \begin{itemdecl} template - concept OutputRange = + concept output_range = range && output_iterator, T>; template From 7a8278cf35e7c8e624bbc1e11527e206d143a700 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:42:30 -0700 Subject: [PATCH 222/312] [everywhere] Rename concept 'InputRange' to 'input_range'. --- source/algorithms.tex | 152 +++++++++++++++++++++--------------------- source/ranges.tex | 70 +++++++++---------- source/utilities.tex | 8 +-- 3 files changed, 115 insertions(+), 115 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index c5a134b89c..a26fde6808 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -622,7 +622,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr bool all_of(I first, S last, Pred pred, Proj proj = {}); - template, Proj>> Pred> constexpr bool all_of(R&& r, Pred pred, Proj proj = {}); } @@ -638,7 +638,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr bool any_of(I first, S last, Pred pred, Proj proj = {}); - template, Proj>> Pred> constexpr bool any_of(R&& r, Pred pred, Proj proj = {}); } @@ -654,7 +654,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr bool none_of(I first, S last, Pred pred, Proj proj = {}); - template, Proj>> Pred> constexpr bool none_of(R&& r, Pred pred, Proj proj = {}); } @@ -689,7 +689,7 @@ indirectly_unary_invocable> Fun> constexpr for_each_result for_each(I first, S last, Fun f, Proj proj = {}); - template, Proj>> Fun> constexpr for_each_result, Fun> for_each(R&& r, Fun f, Proj proj = {}); @@ -728,21 +728,21 @@ template S, class T, class Proj = identity> requires indirect_relation, const T*> constexpr I find(I first, S last, const T& value, Proj proj = {}); - template + template requires indirect_relation, Proj>, const T*> constexpr safe_iterator_t find(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr I find_if(I first, S last, Pred pred, Proj proj = {}); - template, Proj>> Pred> constexpr safe_iterator_t find_if(R&& r, Pred pred, Proj proj = {}); template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr I find_if_not(I first, S last, Pred pred, Proj proj = {}); - template, Proj>> Pred> constexpr safe_iterator_t find_if_not(R&& r, Pred pred, Proj proj = {}); @@ -817,7 +817,7 @@ constexpr I1 find_first_of(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template, Proj1>, projected, Proj2>> Pred = ranges::equal_to> constexpr safe_iterator_t @@ -876,7 +876,7 @@ requires indirect_relation, const T*> constexpr iter_difference_t count(I first, S last, const T& value, Proj proj = {}); - template + template requires indirect_relation, Proj>, const T*> constexpr range_difference_t count(R&& r, const T& value, Proj proj = {}); @@ -884,7 +884,7 @@ indirect_unary_predicate> Pred> constexpr iter_difference_t count_if(I first, S last, Pred pred, Proj proj = {}); - template, Proj>> Pred> constexpr range_difference_t count_if(R&& r, Pred pred, Proj proj = {}); @@ -958,7 +958,7 @@ constexpr mismatch_result mismatch(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template, Proj1>, projected, Proj2>> Pred = ranges::equal_to> @@ -1008,7 +1008,7 @@ constexpr bool equal(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr bool equal(R1&& r1, R2&& r2, Pred pred = {}, @@ -1158,7 +1158,7 @@ requires indirectly_copyable constexpr copy_result copy(I first, S last, O result); - template + template requires indirectly_copyable, O> constexpr copy_result, O> copy(R&& r, O result); @@ -1201,7 +1201,7 @@ requires indirectly_copyable constexpr copy_if_result copy_if(I first, S last, O result, Pred pred, Proj proj = {}); - template, Proj>> Pred> requires indirectly_copyable, O> constexpr copy_if_result, O> @@ -1245,7 +1245,7 @@ requires indirectly_movable constexpr move_result move(I first, S last, O result); - template + template requires indirectly_movable, O> constexpr move_result, O> move(R&& r, O result); @@ -1287,7 +1287,7 @@ requires indirectly_swappable constexpr swap_ranges_result swap_ranges(I1 first1, S1 last1, I2 first2, S2 last2); - template + template requires indirectly_swappable, iterator_t> constexpr swap_ranges_result, safe_iterator_t> swap_ranges(R1&& r1, R2&& r2); @@ -1330,7 +1330,7 @@ requires writable>> constexpr unary_transform_result transform(I first1, S last1, O result, F op, Proj proj = {}); - template requires writable, Proj>>> constexpr unary_transform_result, O> @@ -1365,7 +1365,7 @@ constexpr binary_transform_result transform(I1 first1, S1 last1, I2 first2, S2 last2, O result, F binary_op, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires writable, Proj1>, projected, Proj2>>> @@ -1396,7 +1396,7 @@ indirect_relation, const T1*> constexpr I replace(I first, S last, const T1& old_value, const T2& new_value, Proj proj = {}); - template + template requires writable, const T2&> && indirect_relation, Proj>, const T1*> constexpr safe_iterator_t @@ -1405,7 +1405,7 @@ indirect_unary_predicate> Pred> requires writable constexpr I replace_if(I first, S last, Pred pred, const T& new_value, Proj proj = {}); - template, Proj>> Pred> requires writable, const T&> constexpr safe_iterator_t @@ -1443,7 +1443,7 @@ constexpr replace_copy_result replace_copy(I first, S last, O result, const T1& old_value, const T2& new_value, Proj proj = {}); - template O, + template O, class Proj = identity> requires indirectly_copyable, O> && indirect_relation, Proj>, const T1*> @@ -1460,7 +1460,7 @@ constexpr replace_copy_if_result replace_copy_if(I first, S last, O result, Pred pred, const T& new_value, Proj proj = {}); - template O, class Proj = identity, + template O, class Proj = identity, indirect_unary_predicate, Proj>> Pred> requires indirectly_copyable, O> constexpr replace_copy_if_result, O> @@ -1582,7 +1582,7 @@ indirect_relation, const T*> constexpr remove_copy_result remove_copy(I first, S last, O result, const T& value, Proj proj = {}); - template + template requires indirectly_copyable, O> && indirect_relation, Proj>, const T*> constexpr remove_copy_result, O> @@ -1596,7 +1596,7 @@ requires indirectly_copyable constexpr remove_copy_if_result remove_copy_if(I first, S last, O result, Pred pred, Proj proj = {}); - template, Proj>> Pred> requires indirectly_copyable, O> constexpr remove_copy_if_result, O> @@ -1660,7 +1660,7 @@ indirectly_copyable_storable) constexpr unique_copy_result unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); - template, Proj>> C = ranges::equal_to> requires indirectly_copyable, O> && (forward_iterator> || @@ -1916,7 +1916,7 @@ constexpr partial_sort_copy_result partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires indirectly_copyable, iterator_t> && sortable, Comp, Proj2> && @@ -2099,7 +2099,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr bool is_partitioned(I first, S last, Pred pred, Proj proj = {}); - template, Proj>> Pred> constexpr bool is_partitioned(R&& r, Pred pred, Proj proj = {}); } @@ -2189,7 +2189,7 @@ constexpr partition_copy_result partition_copy(I first, S last, O1 out_true, O2 out_false, Pred pred, Proj proj = {}); - template, Proj>> Pred> requires indirectly_copyable, O1> && @@ -2251,7 +2251,7 @@ constexpr merge_result merge(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr merge_result, safe_iterator_t, O> @@ -2316,7 +2316,7 @@ ranges::less> constexpr bool includes(I1 first1, S1 last1, I2 first2, S2 last2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template, Proj1>, projected, Proj2>> Comp = ranges::less> @@ -2360,7 +2360,7 @@ constexpr set_union_result set_union(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_union_result, safe_iterator_t, O> @@ -2404,7 +2404,7 @@ constexpr set_intersection_result set_intersection(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_intersection_result, safe_iterator_t, O> @@ -2448,7 +2448,7 @@ constexpr set_difference_result set_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_difference_result, O> @@ -2493,7 +2493,7 @@ set_symmetric_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr set_symmetric_difference_result, safe_iterator_t, O> @@ -2639,7 +2639,7 @@ template> Comp = ranges::less> constexpr T min(initializer_list r, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> requires indirectly_copyable_storable, range_value_t*> constexpr range_value_t @@ -2661,7 +2661,7 @@ template> Comp = ranges::less> constexpr T max(initializer_list r, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> requires indirectly_copyable_storable, range_value_t*> constexpr range_value_t @@ -2703,7 +2703,7 @@ indirect_strict_weak_order> Comp = ranges::less> constexpr minmax_result minmax(initializer_list r, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> requires indirectly_copyable_storable, range_value_t*> constexpr minmax_result> @@ -2822,7 +2822,7 @@ constexpr bool lexicographical_compare(I1 first1, S1 last1, I2 first2, S2 last2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template, Proj1>, projected, Proj2>> Comp = ranges::less> @@ -2910,7 +2910,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr bool ranges::all_of(I first, S last, Pred pred, Proj proj = {}); -template, Proj>> Pred> constexpr bool ranges::all_of(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -2944,7 +2944,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr bool ranges::any_of(I first, S last, Pred pred, Proj proj = {}); -template, Proj>> Pred> constexpr bool ranges::any_of(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -2977,7 +2977,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr bool ranges::none_of(I first, S last, Pred pred, Proj proj = {}); -template, Proj>> Pred> constexpr bool ranges::none_of(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -3085,7 +3085,7 @@ indirectly_unary_invocable> Fun> constexpr ranges::for_each_result ranges::for_each(I first, S last, Fun f, Proj proj = {}); -template, Proj>> Fun> constexpr ranges::for_each_result, Fun> ranges::for_each(R&& r, Fun f, Proj proj = {}); @@ -3226,21 +3226,21 @@ template S, class T, class Proj = identity> requires indirect_relation, const T*> constexpr I ranges::find(I first, S last, const T& value, Proj proj = {}); -template +template requires indirect_relation, Proj>, const T*> constexpr safe_iterator_t ranges::find(R&& r, const T& value, Proj proj = {}); template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr I ranges::find_if(I first, S last, Pred pred, Proj proj = {}); -template, Proj>> Pred> constexpr safe_iterator_t ranges::find_if(R&& r, Pred pred, Proj proj = {}); template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr I ranges::find_if_not(I first, S last, Pred pred, Proj proj = {}); -template, Proj>> Pred> constexpr safe_iterator_t ranges::find_if_not(R&& r, Pred pred, Proj proj = {}); @@ -3390,7 +3390,7 @@ constexpr I1 ranges::find_first_of(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template, Proj1>, projected, Proj2>> Pred = ranges::equal_to> @@ -3511,7 +3511,7 @@ requires indirect_relation, const T*> constexpr iter_difference_t ranges::count(I first, S last, const T& value, Proj proj = {}); -template +template requires indirect_relation, Proj>, const T*> constexpr range_difference_t ranges::count(R&& r, const T& value, Proj proj = {}); @@ -3519,7 +3519,7 @@ indirect_unary_predicate> Pred> constexpr iter_difference_t ranges::count_if(I first, S last, Pred pred, Proj proj = {}); -template, Proj>> Pred> constexpr range_difference_t ranges::count_if(R&& r, Pred pred, Proj proj = {}); @@ -3611,7 +3611,7 @@ constexpr ranges::mismatch_result ranges::mismatch(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template, Proj1>, projected, Proj2>> Pred = ranges::equal_to> @@ -3703,7 +3703,7 @@ constexpr bool ranges::equal(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr bool ranges::equal(R1&& r1, R2&& r2, Pred pred = {}, @@ -4064,7 +4064,7 @@ template S, weakly_incrementable O> requires indirectly_copyable constexpr ranges::copy_result ranges::copy(I first, S last, O result); -template +template requires indirectly_copyable, O> constexpr ranges::copy_result, O> ranges::copy(R&& r, O result); \end{itemdecl} @@ -4186,7 +4186,7 @@ requires indirectly_copyable constexpr ranges::copy_if_result ranges::copy_if(I first, S last, O result, Pred pred, Proj proj = {}); -template, Proj>> Pred> requires indirectly_copyable, O> constexpr ranges::copy_if_result, O> @@ -4309,7 +4309,7 @@ requires indirectly_movable constexpr ranges::move_result ranges::move(I first, S last, O result); -template +template requires indirectly_movable, O> constexpr ranges::move_result, O> ranges::move(R&& r, O result); @@ -4466,7 +4466,7 @@ requires indirectly_swappable constexpr ranges::swap_ranges_result ranges::swap_ranges(I1 first1, S1 last1, I2 first2, S2 last2); -template +template requires indirectly_swappable, iterator_t> constexpr ranges::swap_ranges_result, safe_iterator_t> ranges::swap_ranges(R1&& r1, R2&& r2); @@ -4570,7 +4570,7 @@ requires writable>> constexpr ranges::unary_transform_result ranges::transform(I first1, S last1, O result, F op, Proj proj = {}); -template requires writable, Proj>>> constexpr ranges::unary_transform_result, O> @@ -4583,7 +4583,7 @@ constexpr ranges::binary_transform_result ranges::transform(I1 first1, S1 last1, I2 first2, S2 last2, O result, F binary_op, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires writable, Proj1>, projected, Proj2>>> @@ -4689,7 +4689,7 @@ indirect_relation, const T1*> constexpr I ranges::replace(I first, S last, const T1& old_value, const T2& new_value, Proj proj = {}); -template +template requires writable, const T2&> && indirect_relation, Proj>, const T1*> constexpr safe_iterator_t @@ -4698,7 +4698,7 @@ indirect_unary_predicate> Pred> requires writable constexpr I ranges::replace_if(I first, S last, Pred pred, const T& new_value, Proj proj = {}); -template, Proj>> Pred> requires writable, const T&> constexpr safe_iterator_t @@ -4770,7 +4770,7 @@ constexpr ranges::replace_copy_result ranges::replace_copy(I first, S last, O result, const T1& old_value, const T2& new_value, Proj proj = {}); -template O, +template O, class Proj = identity> requires indirectly_copyable, O> && indirect_relation, Proj>, const T1*> @@ -4784,7 +4784,7 @@ constexpr ranges::replace_copy_if_result ranges::replace_copy_if(I first, S last, O result, Pred pred, const T& new_value, Proj proj = {}); -template O, class Proj = identity, +template O, class Proj = identity, indirect_unary_predicate, Proj>> Pred> requires indirectly_copyable, O> constexpr ranges::replace_copy_if_result, O> @@ -5063,7 +5063,7 @@ indirect_relation, const T*> constexpr ranges::remove_copy_result ranges::remove_copy(I first, S last, O result, const T& value, Proj proj = {}); -template +template requires indirectly_copyable, O> && indirect_relation, Proj>, const T*> constexpr ranges::remove_copy_result, O> @@ -5073,7 +5073,7 @@ requires indirectly_copyable constexpr ranges::remove_copy_if_result ranges::remove_copy_if(I first, S last, O result, Pred pred, Proj proj = {}); -template, Proj>> Pred> requires indirectly_copyable, O> constexpr ranges::remove_copy_if_result, O> @@ -5231,7 +5231,7 @@ indirectly_copyable_storable) constexpr ranges::unique_copy_result ranges::unique_copy(I first, S last, O result, C comp = {}, Proj proj = {}); -template, Proj>> C = ranges::equal_to> requires indirectly_copyable, O> && (forward_iterator> || @@ -6073,7 +6073,7 @@ constexpr ranges::partial_sort_copy_result ranges::partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires indirectly_copyable, iterator_t> && sortable, Comp, Proj2> && @@ -6587,7 +6587,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr bool ranges::is_partitioned(I first, S last, Pred pred, Proj proj = {}); -template, Proj>> Pred> constexpr bool ranges::is_partitioned(R&& r, Pred pred, Proj proj = {}); \end{itemdecl} @@ -6766,7 +6766,7 @@ constexpr ranges::partition_copy_result ranges::partition_copy(I first, S last, O1 out_true, O2 out_false, Pred pred, Proj proj = {}); -template, Proj>> Pred> requires indirectly_copyable, O1> && @@ -6894,7 +6894,7 @@ constexpr ranges::merge_result ranges::merge(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::merge_result, safe_iterator_t, O> @@ -7084,7 +7084,7 @@ projected> Comp = ranges::less> constexpr bool ranges::includes(I1 first1, S1 last1, I2 first2, S2 last2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template, Proj1>, projected, Proj2>> Comp = ranges::less> @@ -7159,7 +7159,7 @@ constexpr ranges::set_union_result ranges::set_union(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_union_result, safe_iterator_t, O> @@ -7254,7 +7254,7 @@ constexpr ranges::set_intersection_result ranges::set_intersection(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_intersection_result, safe_iterator_t, O> @@ -7347,7 +7347,7 @@ constexpr ranges::set_difference_result ranges::set_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_difference_result, O> @@ -7442,7 +7442,7 @@ ranges::set_symmetric_difference(I1 first1, S1 last1, I2 first2, S2 last2, O result, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires mergeable, iterator_t, O, Comp, Proj1, Proj2> constexpr ranges::set_symmetric_difference_result, safe_iterator_t, O> @@ -7912,7 +7912,7 @@ template> Comp = ranges::less> constexpr T ranges::min(initializer_list r, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> requires indirectly_copyable_storable, range_value_t*> constexpr range_value_t @@ -7989,7 +7989,7 @@ template> Comp = ranges::less> constexpr T ranges::max(initializer_list r, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> requires indirectly_copyable_storable, range_value_t*> constexpr range_value_t @@ -8069,7 +8069,7 @@ indirect_strict_weak_order> Comp = ranges::less> constexpr ranges::minmax_result ranges::minmax(initializer_list r, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> requires indirectly_copyable_storable, range_value_t*> constexpr ranges::minmax_result> @@ -8313,7 +8313,7 @@ constexpr bool ranges::lexicographical_compare(I1 first1, S1 last1, I2 first2, S2 last2, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template, Proj1>, projected, Proj2>> Comp = ranges::less> diff --git a/source/ranges.tex b/source/ranges.tex index 069642a8f6..7035bd5dfc 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -84,7 +84,7 @@ concept output_range = @\seebelow@; template - concept InputRange = @\seebelow@; + concept input_range = @\seebelow@; template concept ForwardRange = @\seebelow@; @@ -161,14 +161,14 @@ class ref_view; // \ref{range.filter}, filter view - template> Pred> + template> Pred> requires view && is_object_v class filter_view; namespace views { inline constexpr @\unspec@ filter = @\unspec@; } // \ref{range.transform}, transform view - template + template requires view && is_object_v && regular_invocable> class transform_view; @@ -182,7 +182,7 @@ // \ref{range.take.while}, take while view template - requires InputRange && is_object_v && + requires input_range && is_object_v && indirect_unary_predicate> class take_while_view; @@ -196,15 +196,15 @@ // \ref{range.drop.while}, drop while view template - requires InputRange && is_object_v && + requires input_range && is_object_v && indirect_unary_predicate> class drop_while_view; namespace views { inline constexpr @\unspec@ drop_while = @\unspec@; } // \ref{range.join}, join view - template - requires view && InputRange> && + template + requires view && input_range> && (is_reference_v> || view>) class join_view; @@ -215,7 +215,7 @@ template concept @\placeholder{tiny-range}@ = @\seebelow@; // \expos - template + template requires view && view && indirectly_comparable, iterator_t, ranges::equal_to> && (ForwardRange || @\placeholder{tiny-range}@) @@ -248,7 +248,7 @@ basic_istream_view istream_view(basic_istream& s); // \ref{range.elements}, elements view - template + template requires @\seebelow@; class elements_view; @@ -986,11 +986,11 @@ The \libconcept{output_range} concept specifies requirements of a \libconcept{range} type for which \tcode{ranges::begin} returns a model of \libconcept{output_iterator}\iref{iterator.concept.output}. -\libconcept{InputRange}, \libconcept{ForwardRange}, \libconcept{BidirectionalRange}, +\libconcept{input_range}, \libconcept{ForwardRange}, \libconcept{BidirectionalRange}, and \libconcept{RandomAccessRange} are defined similarly. \indexlibrary{\idxcode{output_range}}% -\indexlibrary{\idxcode{InputRange}}% +\indexlibrary{\idxcode{input_range}}% \indexlibrary{\idxcode{ForwardRange}}% \indexlibrary{\idxcode{BidirectionalRange}}% \indexlibrary{\idxcode{RandomAccessRange}}% @@ -1000,12 +1000,12 @@ range && output_iterator, T>; template - concept InputRange = + concept input_range = range && input_iterator>; template concept ForwardRange = - InputRange && forward_iterator>; + input_range && forward_iterator>; template concept BidirectionalRange = @@ -2655,7 +2655,7 @@ \begin{codeblock} namespace std::ranges { - template> Pred> + template> Pred> requires view && is_object_v class filter_view : public view_interface> { private: @@ -2670,7 +2670,7 @@ public: filter_view() = default; constexpr filter_view(V base, Pred pred); - template + template requires ViewableRange && constructible_from> constexpr filter_view(R&& r, Pred pred); @@ -2703,7 +2703,7 @@ \indexlibrary{\idxcode{filter_view}!\idxcode{filter_view}}% \begin{itemdecl} -template +template requires ViewableRange && constructible_from> constexpr filter_view(R&& r, Pred pred); \end{itemdecl} @@ -3049,7 +3049,7 @@ \begin{codeblock} namespace std::ranges { - template + template requires view && is_object_v && regular_invocable> class transform_view : public view_interface> { @@ -3065,7 +3065,7 @@ public: transform_view() = default; constexpr transform_view(V base, F fun); - template + template requires ViewableRange && constructible_from> constexpr transform_view(R&& r, F fun); @@ -3108,7 +3108,7 @@ \indexlibrary{\idxcode{transform_view}!\idxcode{transform_view}}% \begin{itemdecl} -template +template requires ViewableRange && constructible_from> constexpr transform_view(R&& r, F fun); \end{itemdecl} @@ -3910,7 +3910,7 @@ \begin{codeblock} namespace std::ranges { template - requires InputRange && is_object_v && + requires input_range && is_object_v && indirect_unary_predicate> class take_while_view : public view_interface> { template class sentinel; // \expos @@ -4200,7 +4200,7 @@ \begin{codeblock} namespace std::ranges { template - requires InputRange && is_object_v && + requires input_range && is_object_v && indirect_unary_predicate> class drop_while_view : public view_interface> { public: @@ -4313,8 +4313,8 @@ \begin{codeblock} namespace std::ranges { - template - requires view && InputRange> && + template + requires view && input_range> && (is_reference_v> || view>) class join_view : public view_interface> { @@ -4335,7 +4335,7 @@ join_view() = default; constexpr explicit join_view(V base); - template + template requires ViewableRange && constructible_from> constexpr explicit join_view(R&& r); @@ -4344,7 +4344,7 @@ } constexpr auto begin() const - requires InputRange && + requires input_range && is_reference_v> { return iterator{*this, ranges::begin(base_)}; } @@ -4359,7 +4359,7 @@ } constexpr auto end() const - requires InputRange && + requires input_range && is_reference_v> { if constexpr (ForwardRange && is_reference_v> && @@ -4389,7 +4389,7 @@ \indexlibrary{\idxcode{join_view}!\idxcode{join_view}}% \begin{itemdecl} -template +template requires ViewableRange && constructible_from> constexpr explicit join_view(R&& r); \end{itemdecl} @@ -4791,7 +4791,7 @@ requires { typename @\placeholdernc{require-constant}@::size()>; } && (remove_reference_t::size() <= 1); - template + template requires view && view && indirectly_comparable, iterator_t, ranges::equal_to> && (ForwardRange || @\placeholdernc{tiny-range}@) @@ -4808,12 +4808,12 @@ split_view() = default; constexpr split_view(V base, Pattern pattern); - template + template requires constructible_from> && constructible_from> constexpr split_view(R&& r, P&& p); - template + template requires constructible_from> && constructible_from>> constexpr split_view(R&& r, range_value_t e); @@ -4846,7 +4846,7 @@ template split_view(R&&, P&&) -> split_view, all_view

>; - template + template split_view(R&&, range_value_t) -> split_view, single_view>>; } @@ -4865,7 +4865,7 @@ \indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% \begin{itemdecl} -template +template requires constructible_from> && constructible_from> constexpr split_view(R&& r, P&& p); @@ -4880,7 +4880,7 @@ \indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% \begin{itemdecl} -template +template requires constructible_from> && constructible_from>> constexpr split_view(R&& r, range_value_t e); @@ -5583,7 +5583,7 @@ \rSec3[range.istream.overview]{Overview} \pnum -\tcode{basic_istream_view} models \tcode{InputRange} and +\tcode{basic_istream_view} models \tcode{input_range} and reads (using \tcode{operator>>}) successive elements from its corresponding input stream. @@ -5842,7 +5842,7 @@ }; - template + template requires view && @\placeholder{has-tuple-element}@, N> && @\placeholder{has-tuple-element}@>, N> class elements_view : public view_interface> { diff --git a/source/utilities.tex b/source/utilities.tex index b3e8ff1cfd..b83636f529 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -6534,7 +6534,7 @@ requires constructible_from, iter_reference_t> uninitialized_copy_result uninitialized_copy(I ifirst, S1 ilast, O ofirst, S2 olast); - template + template requires constructible_from, range_reference_t> uninitialized_copy_result, safe_iterator_t> uninitialized_copy(IR&& input_range, OR&& output_range); @@ -6570,7 +6570,7 @@ requires constructible_from, iter_rvalue_reference_t> uninitialized_move_result uninitialized_move(I ifirst, S1 ilast, O ofirst, S2 olast); - template + template requires constructible_from, range_rvalue_reference_t> uninitialized_move_result, safe_iterator_t> uninitialized_move(IR&& input_range, OR&& output_range); @@ -8210,7 +8210,7 @@ requires constructible_from, iter_reference_t> uninitialized_copy_result uninitialized_copy(I ifirst, S1 ilast, O ofirst, S2 olast); - template + template requires constructible_from, range_reference_t> uninitialized_copy_result, safe_iterator_t> uninitialized_copy(IR&& input_range, OR&& output_range); @@ -8315,7 +8315,7 @@ requires constructible_from, iter_rvalue_reference_t> uninitialized_move_result uninitialized_move(I ifirst, S1 ilast, O ofirst, S2 olast); - template + template requires constructible_from, range_rvalue_reference_t> uninitialized_move_result, safe_iterator_t> uninitialized_move(IR&& input_range, OR&& output_range); From 5a133d60aa3a94941a000597c3b4d433b1fc78a7 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:43:16 -0700 Subject: [PATCH 223/312] [everywhere] Rename concept 'BidirectionalRange' to 'bidirectional_range'. --- source/algorithms.tex | 32 +++++++++---------- source/ranges.tex | 72 +++++++++++++++++++++---------------------- 2 files changed, 52 insertions(+), 52 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index a26fde6808..3fe29c52d1 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1221,7 +1221,7 @@ requires indirectly_copyable constexpr copy_backward_result copy_backward(I1 first, S1 last, I2 result); - template + template requires indirectly_copyable, I> constexpr copy_backward_result, I> copy_backward(R&& r, I result); @@ -1264,7 +1264,7 @@ requires indirectly_movable constexpr move_backward_result move_backward(I1 first, S1 last, I2 result); - template + template requires indirectly_movable, I> constexpr move_backward_result, I> move_backward(R&& r, I result); @@ -1681,7 +1681,7 @@ template S> requires permutable constexpr I reverse(I first, S last); - template + template requires permutable> constexpr safe_iterator_t reverse(R&& r); } @@ -1704,7 +1704,7 @@ requires indirectly_copyable constexpr reverse_copy_result reverse_copy(I first, S last, O result); - template + template requires indirectly_copyable, O> constexpr reverse_copy_result, O> reverse_copy(R&& r, O result); @@ -2141,7 +2141,7 @@ indirect_unary_predicate> Pred> requires permutable subrange stable_partition(I first, S last, Pred pred, Proj proj = {}); - template, Proj>> Pred> requires permutable> safe_subrange_t stable_partition(R&& r, Pred pred, Proj proj = {}); @@ -2283,7 +2283,7 @@ class Proj = identity> requires sortable I inplace_merge(I first, I middle, S last, Comp comp = {}, Proj proj = {}); - template + template requires sortable, Comp, Proj> safe_iterator_t inplace_merge(R&& r, iterator_t middle, Comp comp = {}, @@ -2863,7 +2863,7 @@ requires sortable constexpr next_permutation_result next_permutation(I first, S last, Comp comp = {}, Proj proj = {}); - template requires sortable, Comp, Proj> constexpr next_permutation_result> @@ -2886,7 +2886,7 @@ requires sortable constexpr prev_permutation_result prev_permutation(I first, S last, Comp comp = {}, Proj proj = {}); - template requires sortable, Comp, Proj> constexpr prev_permutation_result> @@ -4257,7 +4257,7 @@ requires indirectly_copyable constexpr ranges::copy_backward_result ranges::copy_backward(I1 first, S1 last, I2 result); -template +template requires indirectly_copyable, I> constexpr ranges::copy_backward_result, I> ranges::copy_backward(R&& r, I result); @@ -4399,7 +4399,7 @@ requires indirectly_movable constexpr ranges::move_backward_result ranges::move_backward(I1 first, S1 last, I2 result); -template +template requires indirectly_movable, I> constexpr ranges::move_backward_result, I> ranges::move_backward(R&& r, I result); @@ -5325,7 +5325,7 @@ template S> requires permutable constexpr I ranges::reverse(I first, S last); -template +template requires permutable> constexpr safe_iterator_t ranges::reverse(R&& r); \end{itemdecl} @@ -5369,7 +5369,7 @@ requires indirectly_copyable constexpr ranges::reverse_copy_result ranges::reverse_copy(I first, S last, O result); -template +template requires indirectly_copyable, O> constexpr ranges::reverse_copy_result, O> ranges::reverse_copy(R&& r, O result); @@ -6692,7 +6692,7 @@ indirect_unary_predicate> Pred> requires permutable subrange ranges::stable_partition(I first, S last, Pred pred, Proj proj = {}); -template, Proj>> Pred> requires permutable> safe_subrange_t ranges::stable_partition(R&& r, Pred pred, Proj proj = {}); @@ -7030,7 +7030,7 @@ \end{itemdescr} \begin{itemdecl} -template +template requires sortable, Comp, Proj> safe_iterator_t ranges::inplace_merge(R&& r, iterator_t middle, Comp comp = {}, Proj proj = {}); @@ -8433,7 +8433,7 @@ requires sortable constexpr ranges::next_permutation_result ranges::next_permutation(I first, S last, Comp comp = {}, Proj proj = {}); -template requires sortable, Comp, Proj> constexpr ranges::next_permutation_result> @@ -8492,7 +8492,7 @@ requires sortable constexpr ranges::prev_permutation_result ranges::prev_permutation(I first, S last, Comp comp = {}, Proj proj = {}); -template requires sortable, Comp, Proj> constexpr ranges::prev_permutation_result> diff --git a/source/ranges.tex b/source/ranges.tex index 7035bd5dfc..6c7676f2d7 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -90,7 +90,7 @@ concept ForwardRange = @\seebelow@; template - concept BidirectionalRange = @\seebelow@; + concept bidirectional_range = @\seebelow@; template concept RandomAccessRange = @\seebelow@; @@ -235,7 +235,7 @@ // \ref{range.reverse}, reverse view template - requires BidirectionalRange + requires bidirectional_range class reverse_view; namespace views { inline constexpr @\unspec@ reverse = @\unspec@; } @@ -986,13 +986,13 @@ The \libconcept{output_range} concept specifies requirements of a \libconcept{range} type for which \tcode{ranges::begin} returns a model of \libconcept{output_iterator}\iref{iterator.concept.output}. -\libconcept{input_range}, \libconcept{ForwardRange}, \libconcept{BidirectionalRange}, +\libconcept{input_range}, \libconcept{ForwardRange}, \libconcept{bidirectional_range}, and \libconcept{RandomAccessRange} are defined similarly. \indexlibrary{\idxcode{output_range}}% \indexlibrary{\idxcode{input_range}}% \indexlibrary{\idxcode{ForwardRange}}% -\indexlibrary{\idxcode{BidirectionalRange}}% +\indexlibrary{\idxcode{bidirectional_range}}% \indexlibrary{\idxcode{RandomAccessRange}}% \begin{itemdecl} template @@ -1008,12 +1008,12 @@ input_range && forward_iterator>; template - concept BidirectionalRange = + concept bidirectional_range = ForwardRange && bidirectional_iterator>; template concept RandomAccessRange = - BidirectionalRange && random_access_iterator>; + bidirectional_range && random_access_iterator>; \end{itemdecl} \pnum @@ -1142,9 +1142,9 @@ constexpr decltype(auto) front() requires ForwardRange; constexpr decltype(auto) front() const requires ForwardRange; - constexpr decltype(auto) back() requires BidirectionalRange && CommonRange; + constexpr decltype(auto) back() requires bidirectional_range && CommonRange; constexpr decltype(auto) back() const - requires BidirectionalRange && CommonRange; + requires bidirectional_range && CommonRange; template constexpr decltype(auto) operator[](range_difference_t n) { @@ -1183,9 +1183,9 @@ \indexlibrary{\idxcode{view_interface}!\idxcode{back}}% \begin{itemdecl} -constexpr decltype(auto) back() requires BidirectionalRange && CommonRange; +constexpr decltype(auto) back() requires bidirectional_range && CommonRange; constexpr decltype(auto) back() const - requires BidirectionalRange && CommonRange; + requires bidirectional_range && CommonRange; \end{itemdecl} \begin{itemdescr} @@ -2772,8 +2772,8 @@ constexpr void operator++(int); constexpr iterator operator++(int) requires ForwardRange; - constexpr iterator& operator--() requires BidirectionalRange; - constexpr iterator operator--(int) requires BidirectionalRange; + constexpr iterator& operator--() requires bidirectional_range; + constexpr iterator operator--(int) requires bidirectional_range; friend constexpr bool operator==(const iterator& x, const iterator& y) requires equality_comparable>; @@ -2795,7 +2795,7 @@ \pnum \tcode{iterator::iterator_concept} is defined as follows: \begin{itemize} -\item If \tcode{V} models \libconcept{BidirectionalRange}, then +\item If \tcode{V} models \libconcept{bidirectional_range}, then \tcode{iterator_concept} denotes \tcode{bidirectional_iterator_tag}. \item Otherwise, if \tcode{V} models \libconcept{ForwardRange}, then @@ -2903,7 +2903,7 @@ \indexlibrary{\idxcode{operator\dcr}!\idxcode{filter_view::iterator}}% \begin{itemdecl} -constexpr iterator& operator--() requires BidirectionalRange; +constexpr iterator& operator--() requires bidirectional_range; \end{itemdecl} \begin{itemdescr} @@ -2919,7 +2919,7 @@ \indexlibrary{\idxcode{operator\dcr}!\idxcode{filter_view::iterator}}% \begin{itemdecl} -constexpr iterator operator--(int) requires BidirectionalRange; +constexpr iterator operator--(int) requires bidirectional_range; \end{itemdecl} \begin{itemdescr} @@ -3248,8 +3248,8 @@ constexpr void operator++(int); constexpr iterator operator++(int) requires ForwardRange; - constexpr iterator& operator--() requires BidirectionalRange; - constexpr iterator operator--(int) requires BidirectionalRange; + constexpr iterator& operator--() requires bidirectional_range; + constexpr iterator operator--(int) requires bidirectional_range; constexpr iterator& operator+=(difference_type n) requires RandomAccessRange; @@ -3306,7 +3306,7 @@ \item If \tcode{V} models \libconcept{RandomAccessRange}, then \tcode{iterator_concept} denotes \tcode{random_access_iterator_tag}. -\item Otherwise, if \tcode{V} models \libconcept{BidirectionalRange}, then +\item Otherwise, if \tcode{V} models \libconcept{bidirectional_range}, then \tcode{iterator_concept} denotes \tcode{bidirectional_iterator_tag}. \item Otherwise, if \tcode{V} models \libconcept{ForwardRange}, then @@ -3397,7 +3397,7 @@ \indexlibrary{\idxcode{operator\dcr}!\idxcode{transform_view::iterator}} \begin{itemdecl} -constexpr iterator& operator--() requires BidirectionalRange; +constexpr iterator& operator--() requires bidirectional_range; \end{itemdecl} \begin{itemdescr} @@ -3411,7 +3411,7 @@ \indexlibrary{\idxcode{operator\dcr}!\idxcode{transform_view::iterator}} \begin{itemdecl} -constexpr iterator operator--(int) requires BidirectionalRange; +constexpr iterator operator--(int) requires bidirectional_range; \end{itemdecl} \begin{itemdescr} @@ -4447,12 +4447,12 @@ ForwardRange>; constexpr iterator& operator--() - requires ref_is_glvalue && BidirectionalRange && - BidirectionalRange>; + requires ref_is_glvalue && bidirectional_range && + bidirectional_range>; constexpr iterator operator--(int) - requires ref_is_glvalue && BidirectionalRange && - BidirectionalRange>; + requires ref_is_glvalue && bidirectional_range && + bidirectional_range>; friend constexpr bool operator==(const iterator& x, const iterator& y) requires ref_is_glvalue && equality_comparable> && @@ -4475,7 +4475,7 @@ \item If \tcode{ref_is_glvalue} is \tcode{true}, \begin{itemize} \item If \tcode{Base} and \tcode{range_reference_t} each model - \libconcept{BidirectionalRange}, then \tcode{iterator_concept} denotes + \libconcept{bidirectional_range}, then \tcode{iterator_concept} denotes \tcode{bidirectional_iterator_tag}. \item Otherwise, if \tcode{Base} and \tcode{range_reference_t} each model \libconcept{ForwardRange}, then \tcode{iterator_concept} denotes @@ -4634,8 +4634,8 @@ \indexlibrary{\idxcode{operator\dcr}!\idxcode{join_view::iterator}} \begin{itemdecl} constexpr iterator& operator--() - requires ref_is_glvalue && BidirectionalRange && - BidirectionalRange>; + requires ref_is_glvalue && bidirectional_range && + bidirectional_range>; \end{itemdecl} \begin{itemdescr} @@ -4654,8 +4654,8 @@ \indexlibrary{\idxcode{operator\dcr}!\idxcode{join_view::iterator}} \begin{itemdecl} constexpr iterator operator--(int) - requires ref_is_glvalue && BidirectionalRange && - BidirectionalRange>; + requires ref_is_glvalue && bidirectional_range && + bidirectional_range>; \end{itemdecl} \begin{itemdescr} @@ -5431,7 +5431,7 @@ \begin{codeblock} namespace std::ranges { template - requires BidirectionalRange + requires bidirectional_range class reverse_view : public view_interface> { private: V base_ = V(); // \expos @@ -5441,7 +5441,7 @@ constexpr explicit reverse_view(V r); template - requires BidirectionalRange && constructible_from> + requires bidirectional_range && constructible_from> constexpr explicit reverse_view(R&& r); constexpr V base() const; @@ -5481,7 +5481,7 @@ \indexlibrary{\idxcode{reverse_view}!\idxcode{reverse_view}}% \begin{itemdecl} template - requires BidirectionalRange && constructible_from> + requires bidirectional_range && constructible_from> constexpr explicit reverse_view(R&& r); \end{itemdecl} @@ -5929,8 +5929,8 @@ constexpr void operator++(int) requires (!ForwardRange); constexpr iterator operator++(int) requires ForwardRange; - constexpr iterator& operator--() requires BidirectionalRange; - constexpr iterator operator--(int) requires BidirectionalRange; + constexpr iterator& operator--() requires bidirectional_range; + constexpr iterator operator--(int) requires bidirectional_range; constexpr iterator& operator+=(difference_type x) requires RandomAccessRange; @@ -6045,7 +6045,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr iterator& operator--() requires BidirectionalRange; +constexpr iterator& operator--() requires bidirectional_range; \end{itemdecl} \begin{itemdescr} @@ -6059,7 +6059,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr iterator operator--(int) requires BidirectionalRange; +constexpr iterator operator--(int) requires bidirectional_range; \end{itemdecl} \begin{itemdescr} From 4af989447ede6e516186c4cacf07125db00bd16c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:44:26 -0700 Subject: [PATCH 224/312] [everywhere] Rename concept 'RandomAccessRange' to 'random_access_range'. --- source/algorithms.tex | 48 +++++++-------- source/ranges.tex | 132 +++++++++++++++++++++--------------------- 2 files changed, 90 insertions(+), 90 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 3fe29c52d1..992e937bf0 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1771,7 +1771,7 @@ requires permutable && UniformRandomBitGenerator> I shuffle(I first, S last, Gen&& g); - template + template requires permutable> && UniformRandomBitGenerator> safe_iterator_t shuffle(R&& r, Gen&& g); @@ -1818,7 +1818,7 @@ requires sortable constexpr I sort(I first, S last, Comp comp = {}, Proj proj = {}); - template + template requires sortable, Comp, Proj> constexpr safe_iterator_t sort(R&& r, Comp comp = {}, Proj proj = {}); @@ -1842,7 +1842,7 @@ class Proj = identity> requires sortable I stable_sort(I first, S last, Comp comp = {}, Proj proj = {}); - template + template requires sortable, Comp, Proj> safe_iterator_t stable_sort(R&& r, Comp comp = {}, Proj proj = {}); @@ -1873,7 +1873,7 @@ requires sortable constexpr I partial_sort(I first, I middle, S last, Comp comp = {}, Proj proj = {}); - template + template requires sortable, Comp, Proj> constexpr safe_iterator_t partial_sort(R&& r, iterator_t middle, Comp comp = {}, @@ -1916,7 +1916,7 @@ constexpr partial_sort_copy_result partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires indirectly_copyable, iterator_t> && sortable, Comp, Proj2> && @@ -1998,7 +1998,7 @@ requires sortable constexpr I nth_element(I first, I nth, S last, Comp comp = {}, Proj proj = {}); - template + template requires sortable, Comp, Proj> constexpr safe_iterator_t nth_element(R&& r, iterator_t nth, Comp comp = {}, Proj proj = {}); @@ -2514,7 +2514,7 @@ requires sortable constexpr I push_heap(I first, S last, Comp comp = {}, Proj proj = {}); - template + template requires sortable, Comp, Proj> constexpr safe_iterator_t push_heap(R&& r, Comp comp = {}, Proj proj = {}); @@ -2532,7 +2532,7 @@ requires sortable constexpr I pop_heap(I first, S last, Comp comp = {}, Proj proj = {}); - template + template requires sortable, Comp, Proj> constexpr safe_iterator_t pop_heap(R&& r, Comp comp = {}, Proj proj = {}); @@ -2550,7 +2550,7 @@ requires sortable constexpr I make_heap(I first, S last, Comp comp = {}, Proj proj = {}); - template + template requires sortable, Comp, Proj> constexpr safe_iterator_t make_heap(R&& r, Comp comp = {}, Proj proj = {}); @@ -2568,7 +2568,7 @@ requires sortable constexpr I sort_heap(I first, S last, Comp comp = {}, Proj proj = {}); - template + template requires sortable, Comp, Proj> constexpr safe_iterator_t sort_heap(R&& r, Comp comp = {}, Proj proj = {}); @@ -2591,7 +2591,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr bool is_heap(I first, S last, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> constexpr bool is_heap(R&& r, Comp comp = {}, Proj proj = {}); } @@ -2617,7 +2617,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr I is_heap_until(I first, S last, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> constexpr safe_iterator_t is_heap_until(R&& r, Comp comp = {}, Proj proj = {}); @@ -5617,7 +5617,7 @@ requires permutable && UniformRandomBitGenerator> I ranges::shuffle(I first, S last, Gen&& g); -template +template requires permutable> && UniformRandomBitGenerator> safe_iterator_t ranges::shuffle(R&& r, Gen&& g); @@ -5849,7 +5849,7 @@ requires sortable constexpr I ranges::sort(I first, S last, Comp comp = {}, Proj proj = {}); -template +template requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::sort(R&& r, Comp comp = {}, Proj proj = {}); @@ -5907,7 +5907,7 @@ class Proj = identity> requires sortable I ranges::stable_sort(I first, S last, Comp comp = {}, Proj proj = {}); -template +template requires sortable, Comp, Proj> safe_iterator_t ranges::stable_sort(R&& r, Comp comp = {}, Proj proj = {}); @@ -6019,7 +6019,7 @@ \end{itemdescr} \begin{itemdecl} -template +template requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::partial_sort(R&& r, iterator_t middle, Comp comp = {}, Proj proj = {}); @@ -6073,7 +6073,7 @@ constexpr ranges::partial_sort_copy_result ranges::partial_sort_copy(I1 first, S1 last, I2 result_first, S2 result_last, Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires indirectly_copyable, iterator_t> && sortable, Comp, Proj2> && @@ -6331,7 +6331,7 @@ \end{itemdescr} \begin{itemdecl} -template +template requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::nth_element(R&& r, iterator_t nth, Comp comp = {}, Proj proj = {}); @@ -7546,7 +7546,7 @@ requires sortable constexpr I ranges::push_heap(I first, S last, Comp comp = {}, Proj proj = {}); -template +template requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::push_heap(R&& r, Comp comp = {}, Proj proj = {}); @@ -7597,7 +7597,7 @@ requires sortable constexpr I ranges::pop_heap(I first, S last, Comp comp = {}, Proj proj = {}); -template +template requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::pop_heap(R&& r, Comp comp = {}, Proj proj = {}); @@ -7655,7 +7655,7 @@ requires sortable constexpr I ranges::make_heap(I first, S last, Comp comp = {}, Proj proj = {}); -template +template requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::make_heap(R&& r, Comp comp = {}, Proj proj = {}); @@ -7704,7 +7704,7 @@ requires sortable constexpr I ranges::sort_heap(I first, S last, Comp comp = {}, Proj proj = {}); -template +template requires sortable, Comp, Proj> constexpr safe_iterator_t ranges::sort_heap(R&& r, Comp comp = {}, Proj proj = {}); @@ -7807,7 +7807,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr bool ranges::is_heap(I first, S last, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> constexpr bool ranges::is_heap(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -7842,7 +7842,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::is_heap_until(I first, S last, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> constexpr safe_iterator_t ranges::is_heap_until(R&& r, Comp comp = {}, Proj proj = {}); diff --git a/source/ranges.tex b/source/ranges.tex index 6c7676f2d7..151e5f5c5a 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -93,7 +93,7 @@ concept bidirectional_range = @\seebelow@; template - concept RandomAccessRange = @\seebelow@; + concept random_access_range = @\seebelow@; template concept ContiguousRange = @\seebelow@; @@ -987,13 +987,13 @@ \libconcept{range} type for which \tcode{ranges::begin} returns a model of \libconcept{output_iterator}\iref{iterator.concept.output}. \libconcept{input_range}, \libconcept{ForwardRange}, \libconcept{bidirectional_range}, -and \libconcept{RandomAccessRange} are defined similarly. +and \libconcept{random_access_range} are defined similarly. \indexlibrary{\idxcode{output_range}}% \indexlibrary{\idxcode{input_range}}% \indexlibrary{\idxcode{ForwardRange}}% \indexlibrary{\idxcode{bidirectional_range}}% -\indexlibrary{\idxcode{RandomAccessRange}}% +\indexlibrary{\idxcode{random_access_range}}% \begin{itemdecl} template concept output_range = @@ -1012,7 +1012,7 @@ ForwardRange && bidirectional_iterator>; template - concept RandomAccessRange = + concept random_access_range = bidirectional_range && random_access_iterator>; \end{itemdecl} @@ -1025,7 +1025,7 @@ \begin{itemdecl} template concept ContiguousRange = - RandomAccessRange && contiguous_iterator> && + random_access_range && contiguous_iterator> && requires(T& t) { { ranges::data(t) } -> same_as>>; }; @@ -1146,11 +1146,11 @@ constexpr decltype(auto) back() const requires bidirectional_range && CommonRange; - template + template constexpr decltype(auto) operator[](range_difference_t n) { return ranges::begin(derived())[n]; } - template + template constexpr decltype(auto) operator[](range_difference_t n) const { return ranges::begin(derived())[n]; } @@ -3252,37 +3252,37 @@ constexpr iterator operator--(int) requires bidirectional_range; constexpr iterator& operator+=(difference_type n) - requires RandomAccessRange; + requires random_access_range; constexpr iterator& operator-=(difference_type n) - requires RandomAccessRange; + requires random_access_range; constexpr decltype(auto) operator[](difference_type n) const - requires RandomAccessRange + requires random_access_range { return invoke(*parent_->fun_, current_[n]); } friend constexpr bool operator==(const iterator& x, const iterator& y) requires equality_comparable>; friend constexpr bool operator<(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; friend constexpr bool operator>(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; friend constexpr bool operator<=(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; friend constexpr bool operator>=(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; friend constexpr compare_three_way_result_t> operator<=>(const iterator& x, const iterator& y) - requires RandomAccessRange && ThreeWayComparable>; + requires random_access_range && ThreeWayComparable>; friend constexpr iterator operator+(iterator i, difference_type n) - requires RandomAccessRange; + requires random_access_range; friend constexpr iterator operator+(difference_type n, iterator i) - requires RandomAccessRange; + requires random_access_range; friend constexpr iterator operator-(iterator i, difference_type n) - requires RandomAccessRange; + requires random_access_range; friend constexpr difference_type operator-(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; friend constexpr decltype(auto) iter_move(const iterator& i) noexcept(noexcept(invoke(*i.parent_->fun_, *i.current_))) @@ -3303,7 +3303,7 @@ \pnum \tcode{iterator::iterator_concept} is defined as follows: \begin{itemize} -\item If \tcode{V} models \libconcept{RandomAccessRange}, then +\item If \tcode{V} models \libconcept{random_access_range}, then \tcode{iterator_concept} denotes \tcode{random_access_iterator_tag}. \item Otherwise, if \tcode{V} models \libconcept{bidirectional_range}, then @@ -3427,7 +3427,7 @@ \indexlibrary{\idxcode{operator+=}!\idxcode{transform_view::iterator}} \begin{itemdecl} constexpr iterator& operator+=(difference_type n) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -3442,7 +3442,7 @@ \indexlibrary{\idxcode{operator-=}!\idxcode{transform_view::iterator}}% \begin{itemdecl} constexpr iterator& operator-=(difference_type n) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -3468,7 +3468,7 @@ \indexlibrary{\idxcode{operator<}!\idxcode{transform_view::iterator}}% \begin{itemdecl} friend constexpr bool operator<(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -3479,7 +3479,7 @@ \indexlibrary{\idxcode{operator>}!\idxcode{transform_view::iterator}}% \begin{itemdecl} friend constexpr bool operator>(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -3490,7 +3490,7 @@ \indexlibrary{\idxcode{operator<=}!\idxcode{transform_view::iterator}}% \begin{itemdecl} friend constexpr bool operator<=(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -3501,7 +3501,7 @@ \indexlibrary{\idxcode{operator>=}!\idxcode{transform_view::iterator}}% \begin{itemdecl} friend constexpr bool operator>=(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -3513,7 +3513,7 @@ \begin{itemdecl} friend constexpr compare_three_way_result_t> operator<=>(const iterator& x, const iterator& y) - requires RandomAccessRange && ThreeWayComparable>; + requires random_access_range && ThreeWayComparable>; \end{itemdecl} \begin{itemdescr} @@ -3524,9 +3524,9 @@ \indexlibrary{\idxcode{operator+}!\idxcode{transform_view::iterator}} \begin{itemdecl} friend constexpr iterator operator+(iterator i, difference_type n) - requires RandomAccessRange; + requires random_access_range; friend constexpr iterator operator+(difference_type n, iterator i) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -3537,7 +3537,7 @@ \indexlibrary{\idxcode{operator-}!\idxcode{transform_view::iterator}}% \begin{itemdecl} friend constexpr iterator operator-(iterator i, difference_type n) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -3548,7 +3548,7 @@ \indexlibrary{\idxcode{operator-}!\idxcode{transform_view::iterator}}% \begin{itemdecl} friend constexpr difference_type operator-(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -3717,7 +3717,7 @@ constexpr auto begin() requires (!@\placeholder{simple-view}@) { if constexpr (sized_range) { - if constexpr (RandomAccessRange) + if constexpr (random_access_range) return ranges::begin(base_); else return counted_iterator{ranges::begin(base_), size()}; @@ -3727,7 +3727,7 @@ constexpr auto begin() const requires range { if constexpr (sized_range) { - if constexpr (RandomAccessRange) + if constexpr (random_access_range) return ranges::begin(base_); else return counted_iterator{ranges::begin(base_), size()}; @@ -3737,7 +3737,7 @@ constexpr auto end() requires (!@\placeholder{simple-view}@) { if constexpr (sized_range) { - if constexpr (RandomAccessRange) + if constexpr (random_access_range) return ranges::begin(base_) + size(); else return default_sentinel; @@ -3747,7 +3747,7 @@ constexpr auto end() const requires range { if constexpr (sized_range) { - if constexpr (RandomAccessRange) + if constexpr (random_access_range) return ranges::begin(base_) + size(); else return default_sentinel; @@ -4074,9 +4074,9 @@ constexpr R base() const; constexpr auto begin() - requires (!(@\placeholder{simple-view}@ && RandomAccessRange)); + requires (!(@\placeholder{simple-view}@ && random_access_range)); constexpr auto begin() const - requires RandomAccessRange; + requires random_access_range; constexpr auto end() requires (!@\placeholder{simple-view}@) @@ -4141,9 +4141,9 @@ \indexlibrarymember{begin}{drop_view}% \begin{itemdecl} constexpr auto begin() - requires (!(@\placeholder{simple-view}@ && RandomAccessRange)); + requires (!(@\placeholder{simple-view}@ && random_access_range)); constexpr auto begin() const - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -5326,28 +5326,28 @@ } constexpr auto begin() { - if constexpr (RandomAccessRange && sized_range) + if constexpr (random_access_range && sized_range) return ranges::begin(base_); else return common_iterator, sentinel_t>(ranges::begin(base_)); } constexpr auto begin() const requires range { - if constexpr (RandomAccessRange && sized_range) + if constexpr (random_access_range && sized_range) return ranges::begin(base_); else return common_iterator, sentinel_t>(ranges::begin(base_)); } constexpr auto end() { - if constexpr (RandomAccessRange && sized_range) + if constexpr (random_access_range && sized_range) return ranges::begin(base_) + ranges::size(base_); else return common_iterator, sentinel_t>(ranges::end(base_)); } constexpr auto end() const requires range { - if constexpr (RandomAccessRange && sized_range) + if constexpr (random_access_range && sized_range) return ranges::begin(base_) + ranges::size(base_); else return common_iterator, sentinel_t>(ranges::end(base_)); @@ -5933,12 +5933,12 @@ constexpr iterator operator--(int) requires bidirectional_range; constexpr iterator& operator+=(difference_type x) - requires RandomAccessRange; + requires random_access_range; constexpr iterator& operator-=(difference_type x) - requires RandomAccessRange; + requires random_access_range; constexpr decltype(auto) operator[](difference_type n) const - requires RandomAccessRange + requires random_access_range { return get(*(current_ + n)); } friend constexpr bool operator==(const iterator& x, const iterator& y) @@ -5946,25 +5946,25 @@ friend constexpr bool operator==(const iterator& x, const sentinel_t& y); friend constexpr bool operator<(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; friend constexpr bool operator>(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; friend constexpr bool operator<=(const iterator& y, const iterator& y) - requires RandomAccessRange; + requires random_access_range; friend constexpr bool operator>=(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; friend constexpr compare_three_way_result_t> operator<=>(const iterator& x, const iterator& y) - requires RandomAccessRange && ThreeWayComparable>; + requires random_access_range && ThreeWayComparable>; friend constexpr iterator operator+(const iterator& x, difference_type y) - requires RandomAccessRange; + requires random_access_range; friend constexpr iterator operator+(difference_type x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; friend constexpr iterator operator-(const iterator& x, difference_type y) - requires RandomAccessRange; + requires random_access_range; friend constexpr difference_type operator-(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; friend constexpr difference_type operator-(const iterator& x, const sentinel_t& y) @@ -6075,7 +6075,7 @@ \begin{itemdecl} constexpr iterator& operator+=(difference_type n); - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -6090,7 +6090,7 @@ \begin{itemdecl} constexpr iterator& operator-=(difference_type n) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -6126,7 +6126,7 @@ \begin{itemdecl} friend constexpr bool operator<(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -6137,7 +6137,7 @@ \begin{itemdecl} friend constexpr bool operator>(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -6148,7 +6148,7 @@ \begin{itemdecl} friend constexpr bool operator<=(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -6159,7 +6159,7 @@ \begin{itemdecl} friend constexpr bool operator>=(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -6171,7 +6171,7 @@ \begin{itemdecl} friend constexpr compare_three_way_result_t> operator<=>(const iterator& x, const iterator& y) - requires RandomAccessRange && ThreeWayComparable>; + requires random_access_range && ThreeWayComparable>; \end{itemdecl} \begin{itemdescr} @@ -6182,7 +6182,7 @@ \begin{itemdecl} friend constexpr iterator operator+(const iterator& x, difference_type y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -6192,7 +6192,7 @@ \begin{itemdecl} friend constexpr iterator operator+(difference_type x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -6202,7 +6202,7 @@ \begin{itemdecl} constexpr iterator operator-(const iterator& x, difference_type y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} @@ -6213,7 +6213,7 @@ \begin{itemdecl} constexpr difference_type operator-(const iterator& x, const iterator& y) - requires RandomAccessRange; + requires random_access_range; \end{itemdecl} \begin{itemdescr} From b7b948cb8fa86202d0d51179752effb39828fb7a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:44:44 -0700 Subject: [PATCH 225/312] [everywhere] Rename concept 'ContiguousRange' to 'contiguous_range'. --- source/ranges.tex | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/source/ranges.tex b/source/ranges.tex index 151e5f5c5a..bbca55545d 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -96,7 +96,7 @@ concept random_access_range = @\seebelow@; template - concept ContiguousRange = @\seebelow@; + concept contiguous_range = @\seebelow@; template concept CommonRange = @\seebelow@; @@ -1017,14 +1017,14 @@ \end{itemdecl} \pnum -\tcode{ContiguousRange} additionally requires that +\tcode{contiguous_range} additionally requires that the \tcode{ranges::data} customization point\iref{range.prim.data} is usable with the range. -\indexlibrary{\idxcode{ContiguousRange}}% +\indexlibrary{\idxcode{contiguous_range}}% \begin{itemdecl} template - concept ContiguousRange = + concept contiguous_range = random_access_range && contiguous_iterator> && requires(T& t) { { ranges::data(t) } -> same_as>>; @@ -2593,7 +2593,7 @@ constexpr auto size() const requires sized_range { return ranges::size(*r_); } - constexpr auto data() const requires ContiguousRange + constexpr auto data() const requires contiguous_range { return ranges::data(*r_); } friend constexpr iterator_t begin(ref_view r) From ac3740e759a3ca0386a7345f596a51c2431fda82 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:45:12 -0700 Subject: [PATCH 226/312] [everywhere] Rename concept 'CommonRange' to 'common_range'. --- source/ranges.tex | 60 +++++++++++++++++++++++------------------------ 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/source/ranges.tex b/source/ranges.tex index bbca55545d..63e1eb2788 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -99,7 +99,7 @@ concept contiguous_range = @\seebelow@; template - concept CommonRange = @\seebelow@; + concept common_range = @\seebelow@; template concept ViewableRange = @\seebelow@; @@ -228,7 +228,7 @@ // \ref{range.common}, common view template - requires (!CommonRange) + requires (!common_range) class common_view; namespace views { inline constexpr @\unspec@ common = @\unspec@; } @@ -1032,17 +1032,17 @@ \end{itemdecl} \pnum -The \libconcept{CommonRange} concept specifies requirements of +The \libconcept{common_range} concept specifies requirements of a \libconcept{range} type for which \tcode{ranges::begin} and \tcode{ranges::end} return objects of the same type. \begin{example} -The standard containers\iref{containers} model \libconcept{CommonRange}. +The standard containers\iref{containers} model \libconcept{common_range}. \end{example} -\indexlibrary{\idxcode{CommonRange}}% +\indexlibrary{\idxcode{common_range}}% \begin{itemdecl} template - concept CommonRange = + concept common_range = range && same_as, sentinel_t>; \end{itemdecl} @@ -1142,9 +1142,9 @@ constexpr decltype(auto) front() requires ForwardRange; constexpr decltype(auto) front() const requires ForwardRange; - constexpr decltype(auto) back() requires bidirectional_range && CommonRange; + constexpr decltype(auto) back() requires bidirectional_range && common_range; constexpr decltype(auto) back() const - requires bidirectional_range && CommonRange; + requires bidirectional_range && common_range; template constexpr decltype(auto) operator[](range_difference_t n) { @@ -1183,9 +1183,9 @@ \indexlibrary{\idxcode{view_interface}!\idxcode{back}}% \begin{itemdecl} -constexpr decltype(auto) back() requires bidirectional_range && CommonRange; +constexpr decltype(auto) back() requires bidirectional_range && common_range; constexpr decltype(auto) back() const - requires bidirectional_range && CommonRange; + requires bidirectional_range && common_range; \end{itemdecl} \begin{itemdescr} @@ -2678,7 +2678,7 @@ constexpr iterator begin(); constexpr auto end() { - if constexpr (CommonRange) + if constexpr (common_range) return iterator{*this, ranges::end(base_)}; else return sentinel{*this}; @@ -3077,12 +3077,12 @@ regular_invocable>; constexpr sentinel end(); - constexpr iterator end() requires CommonRange; + constexpr iterator end() requires common_range; constexpr sentinel end() const requires range && regular_invocable>; constexpr iterator end() const - requires CommonRange && + requires common_range && regular_invocable>; constexpr auto size() requires sized_range { return ranges::size(base_); } @@ -3172,7 +3172,7 @@ \indexlibrary{\idxcode{end}!\idxcode{transform_view}}% \begin{itemdecl} -constexpr iterator end() requires CommonRange; +constexpr iterator end() requires common_range; \end{itemdecl} \begin{itemdescr} @@ -3201,7 +3201,7 @@ \indexlibrary{\idxcode{end}!\idxcode{transform_view}}% \begin{itemdecl} constexpr iterator end() const - requires CommonRange && + requires common_range && regular_invocable>; \end{itemdecl} @@ -4352,7 +4352,7 @@ constexpr auto end() { if constexpr (ForwardRange && is_reference_v && ForwardRange && - CommonRange && CommonRange) + common_range && common_range) return iterator<@\placeholder{simple-view}@>{*this, ranges::end(base_)}; else return sentinel<@\placeholder{simple-view}@>{*this}; @@ -4364,8 +4364,8 @@ if constexpr (ForwardRange && is_reference_v> && ForwardRange> && - CommonRange && - CommonRange>) + common_range && + common_range>) return iterator{*this, ranges::end(base_)}; else return sentinel{*this}; @@ -4831,12 +4831,12 @@ return outer_iterator{*this, ranges::begin(base_)}; } - constexpr auto end() requires ForwardRange && CommonRange { + constexpr auto end() requires ForwardRange && common_range { return outer_iterator<@\placeholder{simple-view}@>{*this, ranges::end(base_)}; } constexpr auto end() const { - if constexpr (ForwardRange && ForwardRange && CommonRange) + if constexpr (ForwardRange && ForwardRange && common_range) return outer_iterator{*this, ranges::end(base_)}; else return default_sentinel; @@ -5303,7 +5303,7 @@ \begin{codeblock} namespace std::ranges { template - requires (!CommonRange) + requires (!common_range) class common_view : public view_interface> { private: V base_ = V(); // \expos @@ -5313,7 +5313,7 @@ constexpr explicit common_view(V r); template - requires (!CommonRange && constructible_from>) + requires (!common_range && constructible_from>) constexpr explicit common_view(R&& r); constexpr V base() const; @@ -5372,7 +5372,7 @@ \indexlibrary{\idxcode{common_view}!\idxcode{common_view}}% \begin{itemdecl} template - requires (!CommonRange && constructible_from>) + requires (!common_range && constructible_from>) constexpr explicit common_view(R&& r); \end{itemdecl} @@ -5401,7 +5401,7 @@ \begin{itemize} \item \tcode{views::all(E)}, - if \tcode{decltype((E))} models \libconcept{CommonRange} + if \tcode{decltype((E))} models \libconcept{common_range} and \tcode{views::all(E)} is a well-formed expression. \item Otherwise, \tcode{common_view\{E\}}. @@ -5447,13 +5447,13 @@ constexpr V base() const; constexpr reverse_iterator> begin(); - constexpr reverse_iterator> begin() requires CommonRange; + constexpr reverse_iterator> begin() requires common_range; constexpr reverse_iterator> begin() const - requires CommonRange; + requires common_range; constexpr reverse_iterator> end(); constexpr reverse_iterator> end() const - requires CommonRange; + requires common_range; constexpr auto size() requires sized_range { return ranges::size(base_); @@ -5520,9 +5520,9 @@ \indexlibrary{\idxcode{begin}!\idxcode{reverse_view}}% \begin{itemdecl} -constexpr reverse_iterator> begin() requires CommonRange; +constexpr reverse_iterator> begin() requires common_range; constexpr reverse_iterator> begin() const - requires CommonRange; + requires common_range; \end{itemdecl} \begin{itemdescr} @@ -5534,7 +5534,7 @@ \begin{itemdecl} constexpr reverse_iterator> end(); constexpr reverse_iterator> end() const - requires CommonRange; + requires common_range; \end{itemdecl} \begin{itemdescr} From 1a6bda1409e5e02c8e5e1329d8803fe4e6489460 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:45:34 -0700 Subject: [PATCH 227/312] [everywhere] Rename concept 'ViewableRange' to 'viewable_range'. --- source/ranges.tex | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/source/ranges.tex b/source/ranges.tex index 63e1eb2788..2e510d4815 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -102,7 +102,7 @@ concept common_range = @\seebelow@; template - concept ViewableRange = @\seebelow@; + concept viewable_range = @\seebelow@; // \ref{view.interface}, class template \tcode{view_interface} template @@ -153,7 +153,7 @@ // \ref{range.all}, all view namespace views { inline constexpr @\unspec@ all = @\unspec@; } - template + template using all_view = decltype(views::all(declval())); template @@ -1047,13 +1047,13 @@ \end{itemdecl} \pnum -The \libconcept{ViewableRange} concept specifies the requirements of a +The \libconcept{viewable_range} concept specifies the requirements of a \libconcept{range} type that can be converted to a \libconcept{view} safely. -\indexlibrary{\idxcode{ViewableRange}}% +\indexlibrary{\idxcode{viewable_range}}% \begin{itemdecl} template - concept ViewableRange = + concept viewable_range = range && (@\placeholder{forwarding-range}@ || view>); \end{itemdecl} @@ -2454,9 +2454,9 @@ \pnum A \term{range adaptor closure object} is a unary function object that accepts -a \libconcept{ViewableRange} argument and returns a \libconcept{view}. For +a \libconcept{viewable_range} argument and returns a \libconcept{view}. For a range adaptor closure object \tcode{C} and an expression \tcode{R} such that -\tcode{decltype((R))} models \libconcept{ViewableRange}, the following +\tcode{decltype((R))} models \libconcept{viewable_range}, the following expressions are equivalent and yield a \libconcept{view}: \begin{codeblock} @@ -2476,7 +2476,7 @@ \pnum A \term{range adaptor object} is a customization point object\iref{customization.point.object} -that accepts a \libconcept{ViewableRange} as its first argument and returns a +that accepts a \libconcept{viewable_range} as its first argument and returns a \libconcept{view}. \pnum @@ -2671,7 +2671,7 @@ filter_view() = default; constexpr filter_view(V base, Pred pred); template - requires ViewableRange && constructible_from> + requires viewable_range && constructible_from> constexpr filter_view(R&& r, Pred pred); constexpr V base() const; @@ -2704,7 +2704,7 @@ \indexlibrary{\idxcode{filter_view}!\idxcode{filter_view}}% \begin{itemdecl} template - requires ViewableRange && constructible_from> + requires viewable_range && constructible_from> constexpr filter_view(R&& r, Pred pred); \end{itemdecl} @@ -3066,7 +3066,7 @@ transform_view() = default; constexpr transform_view(V base, F fun); template - requires ViewableRange && constructible_from> + requires viewable_range && constructible_from> constexpr transform_view(R&& r, F fun); constexpr V base() const; @@ -3109,7 +3109,7 @@ \indexlibrary{\idxcode{transform_view}!\idxcode{transform_view}}% \begin{itemdecl} template - requires ViewableRange && constructible_from> + requires viewable_range && constructible_from> constexpr transform_view(R&& r, F fun); \end{itemdecl} @@ -3709,7 +3709,7 @@ public: take_view() = default; constexpr take_view(V base, range_difference_t count); - template + template requires constructible_from> constexpr take_view(R&& r, range_difference_t count); @@ -3785,7 +3785,7 @@ \indexlibrary{\idxcode{take_view}!\idxcode{take_view}}% \begin{itemdecl} -template +template requires constructible_from> constexpr take_view(R&& r, range_difference_t count); \end{itemdecl} @@ -4336,7 +4336,7 @@ constexpr explicit join_view(V base); template - requires ViewableRange && constructible_from> + requires viewable_range && constructible_from> constexpr explicit join_view(R&& r); constexpr auto begin() { @@ -4390,7 +4390,7 @@ \indexlibrary{\idxcode{join_view}!\idxcode{join_view}}% \begin{itemdecl} template - requires ViewableRange && constructible_from> + requires viewable_range && constructible_from> constexpr explicit join_view(R&& r); \end{itemdecl} @@ -5312,7 +5312,7 @@ constexpr explicit common_view(V r); - template + template requires (!common_range && constructible_from>) constexpr explicit common_view(R&& r); @@ -5371,7 +5371,7 @@ \indexlibrary{\idxcode{common_view}!\idxcode{common_view}}% \begin{itemdecl} -template +template requires (!common_range && constructible_from>) constexpr explicit common_view(R&& r); \end{itemdecl} @@ -5440,7 +5440,7 @@ constexpr explicit reverse_view(V r); - template + template requires bidirectional_range && constructible_from> constexpr explicit reverse_view(R&& r); @@ -5480,7 +5480,7 @@ \indexlibrary{\idxcode{reverse_view}!\idxcode{reverse_view}}% \begin{itemdecl} -template +template requires bidirectional_range && constructible_from> constexpr explicit reverse_view(R&& r); \end{itemdecl} From 0236c04349698e814b51b88815456a52ded66bf4 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:46:26 -0700 Subject: [PATCH 228/312] [everywhere] Rename concept 'UniformRandomBitGenerator' to 'uniform_random_bit_generator'. --- source/algorithms.tex | 8 ++++---- source/numerics.tex | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 992e937bf0..d87c1de562 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1769,11 +1769,11 @@ namespace ranges { template S, class Gen> requires permutable && - UniformRandomBitGenerator> + uniform_random_bit_generator> I shuffle(I first, S last, Gen&& g); template requires permutable> && - UniformRandomBitGenerator> + uniform_random_bit_generator> safe_iterator_t shuffle(R&& r, Gen&& g); } @@ -5615,11 +5615,11 @@ template S, class Gen> requires permutable && - UniformRandomBitGenerator> + uniform_random_bit_generator> I ranges::shuffle(I first, S last, Gen&& g); template requires permutable> && - UniformRandomBitGenerator> + uniform_random_bit_generator> safe_iterator_t ranges::shuffle(R&& r, Gen&& g); \end{itemdecl} diff --git a/source/numerics.tex b/source/numerics.tex index 0dc3e4bd9b..2e13081fc6 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -1760,7 +1760,7 @@ namespace std { // \ref{rand.req.urng}, uniform random bit generator requirements template - concept UniformRandomBitGenerator = @\seebelow@; + concept uniform_random_bit_generator = @\seebelow@; // \ref{rand.eng.lcong}, class template \tcode{linear_congruential_engine} template @@ -2153,7 +2153,7 @@ \begin{codeblock} template - concept UniformRandomBitGenerator = + concept uniform_random_bit_generator = invocable && unsigned_integral> && requires { { G::min() } -> same_as>; @@ -2163,7 +2163,7 @@ \pnum Let \tcode{g} be an object of type \tcode{G}. \tcode{G} models -\libconcept{UniformRandomBitGenerator} only if +\libconcept{uniform_random_bit_generator} only if \begin{itemize} \item both \tcode{G::min()} and \tcode{G::max()} are constant @@ -2178,7 +2178,7 @@ \indextext{uniform random bit generator!requirements|)}% \pnum A class \tcode{G} meets the \term{uniform random bit generator} requirements if -\tcode{G} models \libconcept{UniformRandomBitGenerator}, +\tcode{G} models \libconcept{uniform_random_bit_generator}, \tcode{invoke_result_t} is an unsigned integer type\iref{basic.fundamental}, and \tcode{G} provides a nested \grammarterm{typedef-name} \tcode{result_type} From 80324ff7385730b04089bf4c4f654e5d5617abd0 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:48:25 -0700 Subject: [PATCH 229/312] [expr.new], [uninitialized.copy], [uninitialized_move], [memory.syn] Rename non-normative names that collide with new concept names. --- source/expressions.tex | 4 ++-- source/utilities.tex | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index 484ce6d3f4..1c622c727e 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -4934,7 +4934,7 @@ \begin{example} \begin{codeblock} - void mergeable(int x) { + void can_merge(int x) { // These allocations are safe for merging: std::unique_ptr a{new (std::nothrow) char[8]}; std::unique_ptr b{new (std::nothrow) char[8]}; @@ -4943,7 +4943,7 @@ g(a.get(), b.get(), c.get()); } - void unmergeable(int x) { + void cannot_merge(int x) { std::unique_ptr a{new char[8]}; try { // Merging this allocation would change its catch handler. diff --git a/source/utilities.tex b/source/utilities.tex index b83636f529..ca5d229b52 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -6537,7 +6537,7 @@ template requires constructible_from, range_reference_t> uninitialized_copy_result, safe_iterator_t> - uninitialized_copy(IR&& input_range, OR&& output_range); + uninitialized_copy(IR&& in_range, OR&& out_range); template using uninitialized_copy_n_result = uninitialized_copy_result; @@ -6573,7 +6573,7 @@ template requires constructible_from, range_rvalue_reference_t> uninitialized_move_result, safe_iterator_t> - uninitialized_move(IR&& input_range, OR&& output_range); + uninitialized_move(IR&& in_range, OR&& out_range); template using uninitialized_move_n_result = uninitialized_copy_result; @@ -8213,7 +8213,7 @@ template requires constructible_from, range_reference_t> uninitialized_copy_result, safe_iterator_t> - uninitialized_copy(IR&& input_range, OR&& output_range); + uninitialized_copy(IR&& in_range, OR&& out_range); } \end{itemdecl} @@ -8318,7 +8318,7 @@ template requires constructible_from, range_rvalue_reference_t> uninitialized_move_result, safe_iterator_t> - uninitialized_move(IR&& input_range, OR&& output_range); + uninitialized_move(IR&& in_range, OR&& out_range); } \end{itemdecl} From ecfc5be1f66a8b2506534176965afac9947cad28 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:50:30 -0700 Subject: [PATCH 230/312] [everywhere] Rename concept 'FloatingPoint' to 'floating_point'. --- source/concepts.tex | 4 ++-- source/numerics.tex | 26 +++++++++++++------------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 72d4811195..7dc9d888a2 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -175,7 +175,7 @@ template concept unsigned_integral = @\seebelow@; template - concept FloatingPoint = @\seebelow@; + concept floating_point = @\seebelow@; // \ref{concept.assignable}, concept \libconcept{assignable_from} template @@ -479,7 +479,7 @@ template concept unsigned_integral = integral && !signed_integral; template - concept FloatingPoint = is_floating_point_v; + concept floating_point = is_floating_point_v; \end{itemdecl} \begin{itemdescr} diff --git a/source/numerics.tex b/source/numerics.tex index 2e13081fc6..0fbf13a386 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -10484,19 +10484,19 @@ template inline constexpr T egamma_v = @\unspec@; template inline constexpr T phi_v = @\unspec@; - template inline constexpr T e_v = @\seebelow@; - template inline constexpr T log2e_v = @\seebelow@; - template inline constexpr T log10e_v = @\seebelow@; - template inline constexpr T pi_v = @\seebelow@; - template inline constexpr T inv_pi_v = @\seebelow@; - template inline constexpr T inv_sqrtpi_v = @\seebelow@; - template inline constexpr T ln2_v = @\seebelow@; - template inline constexpr T ln10_v = @\seebelow@; - template inline constexpr T sqrt2_v = @\seebelow@; - template inline constexpr T sqrt3_v = @\seebelow@; - template inline constexpr T inv_sqrt3_v = @\seebelow@; - template inline constexpr T egamma_v = @\seebelow@; - template inline constexpr T phi_v = @\seebelow@; + template inline constexpr T e_v = @\seebelow@; + template inline constexpr T log2e_v = @\seebelow@; + template inline constexpr T log10e_v = @\seebelow@; + template inline constexpr T pi_v = @\seebelow@; + template inline constexpr T inv_pi_v = @\seebelow@; + template inline constexpr T inv_sqrtpi_v = @\seebelow@; + template inline constexpr T ln2_v = @\seebelow@; + template inline constexpr T ln10_v = @\seebelow@; + template inline constexpr T sqrt2_v = @\seebelow@; + template inline constexpr T sqrt3_v = @\seebelow@; + template inline constexpr T inv_sqrt3_v = @\seebelow@; + template inline constexpr T egamma_v = @\seebelow@; + template inline constexpr T phi_v = @\seebelow@; inline constexpr double e = e_v; inline constexpr double log2e = log2e_v; From c60590b66a151a9612799968b0d6aea298672594 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:52:50 -0700 Subject: [PATCH 231/312] [everywhere] Rename concept 'ForwardRange' to 'forward_range'. --- source/algorithms.tex | 88 ++++++++++++++++---------------- source/ranges.tex | 116 +++++++++++++++++++++--------------------- 2 files changed, 102 insertions(+), 102 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index d87c1de562..2ce6340f53 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -778,7 +778,7 @@ constexpr subrange find_end(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr safe_subrange_t @@ -817,7 +817,7 @@ constexpr I1 find_first_of(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template, Proj1>, projected, Proj2>> Pred = ranges::equal_to> constexpr safe_iterator_t @@ -849,7 +849,7 @@ indirect_relation> Pred = ranges::equal_to> constexpr I adjacent_find(I first, S last, Pred pred = {}, Proj proj = {}); - template, Proj>> Pred = ranges::equal_to> constexpr safe_iterator_t adjacent_find(R&& r, Pred pred = {}, Proj proj = {}); @@ -1038,7 +1038,7 @@ constexpr bool is_permutation(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr bool is_permutation(R1&& r1, R2&& r2, Pred pred = {}, @@ -1076,7 +1076,7 @@ constexpr subrange search(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - template requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr safe_subrange_t @@ -1113,7 +1113,7 @@ constexpr subrange search_n(I first, S last, iter_difference_t count, const T& value, Pred pred = {}, Proj proj = {}); - template requires indirectly_comparable, const T*, Pred, Proj> constexpr safe_subrange_t @@ -1536,7 +1536,7 @@ template S, class T, class Proj = identity> requires indirect_relation, const T*> constexpr subrange remove(I first, S last, const T& value, Proj proj = {}); - template + template requires permutable> && indirect_relation, Proj>, const T*> constexpr safe_subrange_t @@ -1544,7 +1544,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr subrange remove_if(I first, S last, Pred pred, Proj proj = {}); - template, Proj>> Pred> requires permutable> constexpr safe_subrange_t @@ -1621,7 +1621,7 @@ template S, class Proj = identity, indirect_relation> C = ranges::equal_to> constexpr subrange unique(I first, S last, C comp = {}, Proj proj = {}); - template, Proj>> C = ranges::equal_to> requires permutable> constexpr safe_subrange_t @@ -1724,7 +1724,7 @@ namespace ranges { template S> constexpr subrange rotate(I first, I middle, S last); - template + template requires permutable> constexpr safe_subrange_t rotate(R&& r, iterator_t middle); } @@ -1747,7 +1747,7 @@ requires indirectly_copyable constexpr rotate_copy_result rotate_copy(I first, I middle, S last, O result); - template + template requires indirectly_copyable, O> constexpr rotate_copy_result, O> rotate_copy(R&& r, iterator_t middle, O result); @@ -1944,7 +1944,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr bool is_sorted(I first, S last, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> constexpr bool is_sorted(R&& r, Comp comp = {}, Proj proj = {}); } @@ -1970,7 +1970,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr I is_sorted_until(I first, S last, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> constexpr safe_iterator_t is_sorted_until(R&& r, Comp comp = {}, Proj proj = {}); @@ -2019,7 +2019,7 @@ indirect_strict_weak_order> Comp = ranges::less> constexpr I lower_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> constexpr safe_iterator_t @@ -2039,7 +2039,7 @@ template S, class T, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr I upper_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> constexpr safe_iterator_t @@ -2060,7 +2060,7 @@ indirect_strict_weak_order> Comp = ranges::less> constexpr subrange equal_range(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> constexpr safe_subrange_t @@ -2081,7 +2081,7 @@ indirect_strict_weak_order> Comp = ranges::less> constexpr bool binary_search(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> constexpr bool binary_search(R&& r, const T& value, Comp comp = {}, @@ -2119,7 +2119,7 @@ indirect_unary_predicate> Pred> constexpr subrange partition(I first, S last, Pred pred, Proj proj = {}); - template, Proj>> Pred> requires permutable> constexpr safe_subrange_t @@ -2207,7 +2207,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr I partition_point(I first, S last, Pred pred, Proj proj = {}); - template, Proj>> Pred> constexpr safe_iterator_t partition_point(R&& r, Pred pred, Proj proj = {}); @@ -2727,7 +2727,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr I min_element(I first, S last, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> constexpr safe_iterator_t min_element(R&& r, Comp comp = {}, Proj proj = {}); @@ -2750,7 +2750,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr I max_element(I first, S last, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> constexpr safe_iterator_t max_element(R&& r, Comp comp = {}, Proj proj = {}); @@ -2779,7 +2779,7 @@ indirect_strict_weak_order> Comp = ranges::less> constexpr minmax_element_result minmax_element(I first, S last, Comp comp = {}, Proj proj = {}); - template, Proj>> Comp = ranges::less> constexpr minmax_element_result> minmax_element(R&& r, Comp comp = {}, Proj proj = {}); @@ -3304,7 +3304,7 @@ constexpr subrange ranges::find_end(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr safe_subrange_t @@ -3390,7 +3390,7 @@ constexpr I1 ranges::find_first_of(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template, Proj1>, projected, Proj2>> Pred = ranges::equal_to> @@ -3453,7 +3453,7 @@ template S, class Proj = identity, indirect_relation> Pred = ranges::equal_to> constexpr I ranges::adjacent_find(I first, S last, Pred pred = {}, Proj proj = {}); -template, Proj>> Pred = ranges::equal_to> constexpr safe_iterator_t ranges::adjacent_find(R&& r, Pred pred = {}, Proj proj = {}); \end{itemdecl} @@ -3835,7 +3835,7 @@ constexpr bool ranges::is_permutation(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr bool ranges::is_permutation(R1&& r1, R2&& r2, Pred pred = {}, @@ -3923,7 +3923,7 @@ constexpr subrange ranges::search(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); -template requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr safe_subrange_t @@ -4010,7 +4010,7 @@ constexpr subrange ranges::search_n(I first, S last, iter_difference_t count, const T& value, Pred pred = {}, Proj proj = {}); -template requires indirectly_comparable, const T*, Pred, Proj> constexpr safe_subrange_t @@ -4969,7 +4969,7 @@ template S, class T, class Proj = identity> requires indirect_relation, const T*> constexpr subrange ranges::remove(I first, S last, const T& value, Proj proj = {}); -template +template requires permutable> && indirect_relation, Proj>, const T*> constexpr safe_subrange_t @@ -4977,7 +4977,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr subrange ranges::remove_if(I first, S last, Pred pred, Proj proj = {}); -template, Proj>> Pred> requires permutable> constexpr safe_subrange_t @@ -5148,7 +5148,7 @@ template S, class Proj = identity, indirect_relation> C = ranges::equal_to> constexpr subrange ranges::unique(I first, S last, C comp = {}, Proj proj = {}); -template, Proj>> C = ranges::equal_to> requires permutable> constexpr safe_subrange_t @@ -5458,7 +5458,7 @@ \end{itemdescr} \begin{itemdecl} -template +template requires permutable> constexpr safe_subrange_t ranges::rotate(R&& r, iterator_t middle); \end{itemdecl} @@ -5520,7 +5520,7 @@ \end{itemdescr} \begin{itemdecl} -template +template requires indirectly_copyable, O> constexpr ranges::rotate_copy_result, O> ranges::rotate_copy(R&& r, iterator_t middle, O result); @@ -6207,7 +6207,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr bool ranges::is_sorted(I first, S last, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> constexpr bool ranges::is_sorted(R&& r, Comp comp = {}, Proj proj = {}); \end{itemdecl} @@ -6242,7 +6242,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::is_sorted_until(I first, S last, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> constexpr safe_iterator_t ranges::is_sorted_until(R&& r, Comp comp = {}, Proj proj = {}); @@ -6378,7 +6378,7 @@ indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::lower_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> constexpr safe_iterator_t @@ -6425,7 +6425,7 @@ template S, class T, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::upper_bound(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> constexpr safe_iterator_t @@ -6474,7 +6474,7 @@ indirect_strict_weak_order> Comp = ranges::less> constexpr subrange ranges::equal_range(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> constexpr safe_subrange_t @@ -6538,7 +6538,7 @@ indirect_strict_weak_order> Comp = ranges::less> constexpr bool ranges::binary_search(I first, S last, const T& value, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> constexpr bool ranges::binary_search(R&& r, const T& value, Comp comp = {}, @@ -6623,7 +6623,7 @@ indirect_unary_predicate> Pred> constexpr subrange ranges::partition(I first, S last, Pred pred, Proj proj = {}); -template, Proj>> Pred> requires permutable> constexpr safe_subrange_t @@ -6825,7 +6825,7 @@ template S, class Proj = identity, indirect_unary_predicate> Pred> constexpr I ranges::partition_point(I first, S last, Pred pred, Proj proj = {}); -template, Proj>> Pred> constexpr safe_iterator_t ranges::partition_point(R&& r, Pred pred, Proj proj = {}); @@ -8125,7 +8125,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::min_element(I first, S last, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> constexpr safe_iterator_t ranges::min_element(R&& r, Comp comp = {}, Proj proj = {}); @@ -8172,7 +8172,7 @@ template S, class Proj = identity, indirect_strict_weak_order> Comp = ranges::less> constexpr I ranges::max_element(I first, S last, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> constexpr safe_iterator_t ranges::max_element(R&& r, Comp comp = {}, Proj proj = {}); @@ -8222,7 +8222,7 @@ indirect_strict_weak_order> Comp = ranges::less> constexpr ranges::minmax_result ranges::minmax_element(I first, S last, Comp comp = {}, Proj proj = {}); -template, Proj>> Comp = ranges::less> constexpr ranges::minmax_result> ranges::minmax_element(R&& r, Comp comp = {}, Proj proj = {}); diff --git a/source/ranges.tex b/source/ranges.tex index 2e510d4815..87e3e2981b 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -87,7 +87,7 @@ concept input_range = @\seebelow@; template - concept ForwardRange = @\seebelow@; + concept forward_range = @\seebelow@; template concept bidirectional_range = @\seebelow@; @@ -215,10 +215,10 @@ template concept @\placeholder{tiny-range}@ = @\seebelow@; // \expos - template + template requires view && view && indirectly_comparable, iterator_t, ranges::equal_to> && - (ForwardRange || @\placeholder{tiny-range}@) + (forward_range || @\placeholder{tiny-range}@) class split_view; namespace views { inline constexpr @\unspec@ split = @\unspec@; } @@ -986,12 +986,12 @@ The \libconcept{output_range} concept specifies requirements of a \libconcept{range} type for which \tcode{ranges::begin} returns a model of \libconcept{output_iterator}\iref{iterator.concept.output}. -\libconcept{input_range}, \libconcept{ForwardRange}, \libconcept{bidirectional_range}, +\libconcept{input_range}, \libconcept{forward_range}, \libconcept{bidirectional_range}, and \libconcept{random_access_range} are defined similarly. \indexlibrary{\idxcode{output_range}}% \indexlibrary{\idxcode{input_range}}% -\indexlibrary{\idxcode{ForwardRange}}% +\indexlibrary{\idxcode{forward_range}}% \indexlibrary{\idxcode{bidirectional_range}}% \indexlibrary{\idxcode{random_access_range}}% \begin{itemdecl} @@ -1004,12 +1004,12 @@ range && input_iterator>; template - concept ForwardRange = + concept forward_range = input_range && forward_iterator>; template concept bidirectional_range = - ForwardRange && bidirectional_iterator>; + forward_range && bidirectional_iterator>; template concept random_access_range = @@ -1106,10 +1106,10 @@ return static_cast(*this); } public: - constexpr bool empty() requires ForwardRange { + constexpr bool empty() requires forward_range { return ranges::begin(derived()) == ranges::end(derived()); } - constexpr bool empty() const requires ForwardRange { + constexpr bool empty() const requires forward_range { return ranges::begin(derived()) == ranges::end(derived()); } @@ -1130,17 +1130,17 @@ return to_address(ranges::begin(derived())); } - constexpr auto size() requires ForwardRange && + constexpr auto size() requires forward_range && sized_sentinel_for, iterator_t> { return ranges::end(derived()) - ranges::begin(derived()); } - constexpr auto size() const requires ForwardRange && + constexpr auto size() const requires forward_range && sized_sentinel_for, iterator_t> { return ranges::end(derived()) - ranges::begin(derived()); } - constexpr decltype(auto) front() requires ForwardRange; - constexpr decltype(auto) front() const requires ForwardRange; + constexpr decltype(auto) front() requires forward_range; + constexpr decltype(auto) front() const requires forward_range; constexpr decltype(auto) back() requires bidirectional_range && common_range; constexpr decltype(auto) back() const @@ -1169,8 +1169,8 @@ \indexlibrary{\idxcode{view_interface}!\idxcode{front}}% \begin{itemdecl} -constexpr decltype(auto) front() requires ForwardRange; -constexpr decltype(auto) front() const requires ForwardRange; +constexpr decltype(auto) front() requires forward_range; +constexpr decltype(auto) front() const requires forward_range; \end{itemdecl} \begin{itemdescr} @@ -2770,7 +2770,7 @@ constexpr iterator& operator++(); constexpr void operator++(int); - constexpr iterator operator++(int) requires ForwardRange; + constexpr iterator operator++(int) requires forward_range; constexpr iterator& operator--() requires bidirectional_range; constexpr iterator operator--(int) requires bidirectional_range; @@ -2798,7 +2798,7 @@ \item If \tcode{V} models \libconcept{bidirectional_range}, then \tcode{iterator_concept} denotes \tcode{bidirectional_iterator_tag}. -\item Otherwise, if \tcode{V} models \libconcept{ForwardRange}, then +\item Otherwise, if \tcode{V} models \libconcept{forward_range}, then \tcode{iterator_concept} denotes \tcode{forward_iterator_tag}. \item Otherwise, \tcode{iterator_concept} denotes \tcode{input_iterator_tag}. @@ -2888,7 +2888,7 @@ \indexlibrary{\idxcode{operator++}!\idxcode{filter_view::iterator}}% \begin{itemdecl} -constexpr iterator operator++(int) requires ForwardRange; +constexpr iterator operator++(int) requires forward_range; \end{itemdecl} \begin{itemdescr} @@ -3246,7 +3246,7 @@ constexpr iterator& operator++(); constexpr void operator++(int); - constexpr iterator operator++(int) requires ForwardRange; + constexpr iterator operator++(int) requires forward_range; constexpr iterator& operator--() requires bidirectional_range; constexpr iterator operator--(int) requires bidirectional_range; @@ -3309,7 +3309,7 @@ \item Otherwise, if \tcode{V} models \libconcept{bidirectional_range}, then \tcode{iterator_concept} denotes \tcode{bidirectional_iterator_tag}. -\item Otherwise, if \tcode{V} models \libconcept{ForwardRange}, then +\item Otherwise, if \tcode{V} models \libconcept{forward_range}, then \tcode{iterator_concept} denotes \tcode{forward_iterator_tag}. \item Otherwise, \tcode{iterator_concept} denotes \tcode{input_iterator_tag}. @@ -3382,7 +3382,7 @@ \indexlibrary{\idxcode{operator++}!\idxcode{transform_view::iterator}} \begin{itemdecl} -constexpr iterator operator++(int) requires ForwardRange; +constexpr iterator operator++(int) requires forward_range; \end{itemdecl} \begin{itemdescr} @@ -4350,8 +4350,8 @@ } constexpr auto end() { - if constexpr (ForwardRange && - is_reference_v && ForwardRange && + if constexpr (forward_range && + is_reference_v && forward_range && common_range && common_range) return iterator<@\placeholder{simple-view}@>{*this, ranges::end(base_)}; else @@ -4361,9 +4361,9 @@ constexpr auto end() const requires input_range && is_reference_v> { - if constexpr (ForwardRange && + if constexpr (forward_range && is_reference_v> && - ForwardRange> && + forward_range> && common_range && common_range>) return iterator{*this, ranges::end(base_)}; @@ -4443,8 +4443,8 @@ constexpr iterator& operator++(); constexpr void operator++(int); constexpr iterator operator++(int) - requires ref_is_glvalue && ForwardRange && - ForwardRange>; + requires ref_is_glvalue && forward_range && + forward_range>; constexpr iterator& operator--() requires ref_is_glvalue && bidirectional_range && @@ -4478,7 +4478,7 @@ \libconcept{bidirectional_range}, then \tcode{iterator_concept} denotes \tcode{bidirectional_iterator_tag}. \item Otherwise, if \tcode{Base} and \tcode{range_reference_t} - each model \libconcept{ForwardRange}, then \tcode{iterator_concept} denotes + each model \libconcept{forward_range}, then \tcode{iterator_concept} denotes \tcode{forward_iterator_tag}. \end{itemize} \item Otherwise, \tcode{iterator_concept} denotes \tcode{input_iterator_tag}. @@ -4617,8 +4617,8 @@ \indexlibrary{\idxcode{operator++}!\idxcode{join_view::iterator}} \begin{itemdecl} constexpr iterator operator++(int) - requires ref_is_glvalue && ForwardRange && - ForwardRange>; + requires ref_is_glvalue && forward_range && + forward_range>; \end{itemdecl} \begin{itemdescr} @@ -4791,15 +4791,15 @@ requires { typename @\placeholdernc{require-constant}@::size()>; } && (remove_reference_t::size() <= 1); - template + template requires view && view && indirectly_comparable, iterator_t, ranges::equal_to> && - (ForwardRange || @\placeholdernc{tiny-range}@) + (forward_range || @\placeholdernc{tiny-range}@) class split_view : public view_interface> { private: V base_ = V(); // \expos Pattern pattern_ = Pattern(); // \expos - iterator_t current_ = iterator_t(); // \expos, present only if \tcode{!ForwardRange} + iterator_t current_ = iterator_t(); // \expos, present only if \tcode{!forward_range} // \ref{range.split.outer}, class template \tcode{split_view::outer_iterator} template struct outer_iterator; // \expos // \ref{range.split.inner}, class template \tcode{split_view::inner_iterator} @@ -4808,7 +4808,7 @@ split_view() = default; constexpr split_view(V base, Pattern pattern); - template + template requires constructible_from> && constructible_from> constexpr split_view(R&& r, P&& p); @@ -4819,7 +4819,7 @@ constexpr split_view(R&& r, range_value_t e); constexpr auto begin() { - if constexpr (ForwardRange) + if constexpr (forward_range) return outer_iterator<@\placeholder{simple-view}@>{*this, ranges::begin(base_)}; else { current_ = ranges::begin(base_); @@ -4827,16 +4827,16 @@ } } - constexpr auto begin() const requires ForwardRange && ForwardRange { + constexpr auto begin() const requires forward_range && forward_range { return outer_iterator{*this, ranges::begin(base_)}; } - constexpr auto end() requires ForwardRange && common_range { + constexpr auto end() requires forward_range && common_range { return outer_iterator<@\placeholder{simple-view}@>{*this, ranges::end(base_)}; } constexpr auto end() const { - if constexpr (ForwardRange && ForwardRange && common_range) + if constexpr (forward_range && forward_range && common_range) return outer_iterator{*this, ranges::end(base_)}; else return default_sentinel; @@ -4865,7 +4865,7 @@ \indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% \begin{itemdecl} -template +template requires constructible_from> && constructible_from> constexpr split_view(R&& r, P&& p); @@ -4906,12 +4906,12 @@ using Base = // \expos conditional_t; Parent* parent_ = nullptr; // \expos - iterator_t current_ = // \expos, present only if \tcode{V} models \libconcept{ForwardRange} + iterator_t current_ = // \expos, present only if \tcode{V} models \libconcept{forward_range} iterator_t(); public: using iterator_concept = - conditional_t, forward_iterator_tag, input_iterator_tag>; + conditional_t, forward_iterator_tag, input_iterator_tag>; using iterator_category = input_iterator_tag; // \ref{range.split.outer.value}, class \tcode{split_view::outer_iterator::value_type} struct value_type; @@ -4919,9 +4919,9 @@ outer_iterator() = default; constexpr explicit outer_iterator(Parent& parent) - requires (!ForwardRange); + requires (!forward_range); constexpr outer_iterator(Parent& parent, iterator_t current) - requires ForwardRange; + requires forward_range; constexpr outer_iterator(outer_iterator i) requires Const && convertible_to, iterator_t>; @@ -4929,7 +4929,7 @@ constexpr outer_iterator& operator++(); constexpr decltype(auto) operator++(int) { - if constexpr (ForwardRange) { + if constexpr (forward_range) { auto tmp = *this; ++*this; return tmp; @@ -4938,7 +4938,7 @@ } friend constexpr bool operator==(const outer_iterator& x, const outer_iterator& y) - requires ForwardRange; + requires forward_range; friend constexpr bool operator==(const outer_iterator& x, default_sentinel_t); }; @@ -4949,12 +4949,12 @@ Many of the following specifications refer to the notional member \tcode{\placeholder{current}} of \tcode{outer_iterator}. \tcode{\placeholder{current}} is equivalent to \tcode{current_} if \tcode{V} -models \libconcept{ForwardRange}, and \tcode{parent_->current_} otherwise. +models \libconcept{forward_range}, and \tcode{parent_->current_} otherwise. \indexlibrary{\idxcode{outer_iterator}!\idxcode{split_view::outer_iterator}}% \begin{itemdecl} constexpr explicit outer_iterator(Parent& parent) - requires (!ForwardRange); + requires (!forward_range); \end{itemdecl} \begin{itemdescr} @@ -4965,7 +4965,7 @@ \indexlibrary{\idxcode{outer_iterator}!\idxcode{split_view::outer_iterator}}% \begin{itemdecl} constexpr outer_iterator(Parent& parent, iterator_t current) - requires ForwardRange; + requires forward_range; \end{itemdecl} \begin{itemdescr} @@ -5025,7 +5025,7 @@ \indexlibrary{\idxcode{operator==}!\idxcode{split_view::outer_iterator}}% \begin{itemdecl} friend constexpr bool operator==(const outer_iterator& x, const outer_iterator& y) - requires ForwardRange; + requires forward_range; \end{itemdecl} \begin{itemdescr} @@ -5118,7 +5118,7 @@ constexpr inner_iterator& operator++(); constexpr decltype(auto) operator++(int) { - if constexpr (ForwardRange) { + if constexpr (forward_range) { auto tmp = *this; ++*this; return tmp; @@ -5127,7 +5127,7 @@ } friend constexpr bool operator==(const inner_iterator& x, const inner_iterator& y) - requires ForwardRange; + requires forward_range; friend constexpr bool operator==(const inner_iterator& x, default_sentinel_t); @@ -5170,7 +5170,7 @@ \effects Equivalent to: \begin{codeblock} incremented_ = true; -if constexpr (!ForwardRange) { +if constexpr (!forward_range) { if constexpr (Pattern::size() == 0) { return *this; } @@ -5183,7 +5183,7 @@ \indexlibrary{\idxcode{operator==}!\idxcode{split_view::inner_iterator}}% \begin{itemdecl} friend constexpr bool operator==(const inner_iterator& x, const inner_iterator& y) - requires ForwardRange; + requires forward_range; \end{itemdecl} \begin{itemdescr} @@ -5289,7 +5289,7 @@ template size_t count(ForwardIterator first, ForwardIterator last); -template +template void my_algo(R&& r) { auto&& common = common_view{r}; auto cnt = count(common.begin(), common.end()); @@ -5926,8 +5926,8 @@ { return get(*current_); } constexpr iterator& operator++(); - constexpr void operator++(int) requires (!ForwardRange); - constexpr iterator operator++(int) requires ForwardRange; + constexpr void operator++(int) requires (!forward_range); + constexpr iterator operator++(int) requires forward_range; constexpr iterator& operator--() requires bidirectional_range; constexpr iterator operator--(int) requires bidirectional_range; @@ -6021,7 +6021,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr void operator++(int) requires (!ForwardRange); +constexpr void operator++(int) requires (!forward_range); \end{itemdecl} \begin{itemdescr} @@ -6031,7 +6031,7 @@ \end{itemdescr} \begin{itemdecl} -constexpr iterator operator++(int) requires ForwardRange; +constexpr iterator operator++(int) requires forward_range; \end{itemdecl} \begin{itemdescr} From 5c00353357befbb92b93d03c9b3d8d96c0a5c3fc Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:54:14 -0700 Subject: [PATCH 232/312] [everywhere] Rename exposition-only concept 'Decrementable' to 'decrementable'. --- source/ranges.tex | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/source/ranges.tex b/source/ranges.tex index 87e3e2981b..c171682d48 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1769,7 +1769,7 @@ \begin{codeblock} namespace std::ranges { template - concept @\placeholdernc{Decrementable}@ = // \expos + concept @\placeholdernc{decrementable}@ = // \expos @\seebelow@; template concept @\placeholdernc{Advanceable}@ = // \expos @@ -1828,10 +1828,10 @@ \end{itemize} \pnum -The exposition-only \tcode{\placeholder{Decrementable}} concept is equivalent to: +The exposition-only \tcode{\placeholder{decrementable}} concept is equivalent to: \begin{itemdecl} template - concept @\placeholder{Decrementable}@ = + concept @\placeholder{decrementable}@ = incrementable && requires(I i) { { --i } -> same_as; { i-- } -> same_as; @@ -1845,7 +1845,7 @@ \pnum Let \tcode{a} and \tcode{b} be equal objects of type \tcode{I}. -\tcode{I} models \tcode{\placeholdernc{Decrementable}} only if +\tcode{I} models \tcode{\placeholdernc{decrementable}} only if \begin{itemize} \item If \tcode{a} and \tcode{b} are decrementable, then the following are all true: @@ -1865,7 +1865,7 @@ \begin{itemdecl} template concept @\placeholder{Advanceable}@ = - @\placeholdernc{Decrementable}@ && totally_ordered && + @\placeholdernc{decrementable}@ && totally_ordered && requires(I i, const I j, const @\placeholdernc{IOTA-DIFF-T}@(I) n) { { i += n } -> same_as; { i -= n } -> same_as; @@ -2020,8 +2020,8 @@ constexpr void operator++(int); constexpr iterator operator++(int) requires incrementable; - constexpr iterator& operator--() requires @\placeholdernc{Decrementable}@; - constexpr iterator operator--(int) requires @\placeholdernc{Decrementable}@; + constexpr iterator& operator--() requires @\placeholdernc{decrementable}@; + constexpr iterator operator--(int) requires @\placeholdernc{decrementable}@; constexpr iterator& operator+=(difference_type n) requires @\placeholdernc{Advanceable}@; @@ -2063,7 +2063,7 @@ \begin{itemize} \item If \tcode{W} models \tcode{\placeholder{Advanceable}}, then \tcode{iterator_category} is \tcode{random_access_iterator_tag}. -\item Otherwise, if \tcode{W} models \tcode{\placeholder{Decrementable}}, then +\item Otherwise, if \tcode{W} models \tcode{\placeholder{decrementable}}, then \tcode{iterator_category} is \tcode{bidirectional_iterator_tag}. \item Otherwise, if \tcode{W} models \libconcept{incrementable}, then \tcode{iterator_category} is \tcode{forward_iterator_tag}. @@ -2142,7 +2142,7 @@ \indexlibrary{\idxcode{operator\dcr}!\idxcode{iota_view::iterator}} \begin{itemdecl} -constexpr iterator& operator--() requires @\placeholdernc{Decrementable}@; +constexpr iterator& operator--() requires @\placeholdernc{decrementable}@; \end{itemdecl} \begin{itemdescr} @@ -2156,7 +2156,7 @@ \indexlibrary{\idxcode{operator\dcr}!\idxcode{iota_view::iterator}} \begin{itemdecl} -constexpr iterator operator--(int) requires @\placeholdernc{Decrementable}@; +constexpr iterator operator--(int) requires @\placeholdernc{decrementable}@; \end{itemdecl} \begin{itemdescr} From 731832237195a5d2dff8f6185efcd0525198da64 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:55:09 -0700 Subject: [PATCH 233/312] [everywhere] Rename exposition-only concept 'Advanceable' to 'advanceable'. --- source/ranges.tex | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/source/ranges.tex b/source/ranges.tex index c171682d48..82af1c4654 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1772,7 +1772,7 @@ concept @\placeholdernc{decrementable}@ = // \expos @\seebelow@; template - concept @\placeholdernc{Advanceable}@ = // \expos + concept @\placeholdernc{advanceable}@ = // \expos @\seebelow@; template @@ -1861,10 +1861,10 @@ \end{itemdescr} \pnum -The exposition-only \tcode{\placeholder{Advanceable}} concept is equivalent to: +The exposition-only \tcode{\placeholder{advanceable}} concept is equivalent to: \begin{itemdecl} template - concept @\placeholder{Advanceable}@ = + concept @\placeholder{advanceable}@ = @\placeholdernc{decrementable}@ && totally_ordered && requires(I i, const I j, const @\placeholdernc{IOTA-DIFF-T}@(I) n) { { i += n } -> same_as; @@ -1881,7 +1881,7 @@ \tcode{b} is reachable from \tcode{a} after \tcode{n} applications of \tcode{++a}, for some value \tcode{n} of type \tcode{D}. -\tcode{I} models \tcode{\placeholdernc{Advanceable}} only if +\tcode{I} models \tcode{\placeholdernc{advanceable}} only if \begin{itemize} \item \tcode{(a += n)} is equal to \tcode{b}. \item \tcode{addressof(a += n)} is equal to \tcode{addressof(a)}. @@ -1993,7 +1993,7 @@ \pnum \remarks The expression in the \grammarterm{requires-clause} is equivalent to \begin{codeblock} -(same_as && Advanceable) || (integral && integral) || +(same_as && @\placeholder{advanceable}@) || (integral && integral) || sized_sentinel_for \end{codeblock} \end{itemdescr} @@ -2024,11 +2024,11 @@ constexpr iterator operator--(int) requires @\placeholdernc{decrementable}@; constexpr iterator& operator+=(difference_type n) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; constexpr iterator& operator-=(difference_type n) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; constexpr W operator[](difference_type n) const - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; friend constexpr bool operator==(const iterator& x, const iterator& y) requires equality_comparable; @@ -2046,14 +2046,14 @@ requires totally_ordered && ThreeWayComparable; friend constexpr iterator operator+(iterator i, difference_type n) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; friend constexpr iterator operator+(difference_type n, iterator i) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; friend constexpr iterator operator-(iterator i, difference_type n) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; friend constexpr difference_type operator-(const iterator& x, const iterator& y) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; }; } \end{codeblock} @@ -2061,7 +2061,7 @@ \pnum \tcode{iterator::iterator_category} is defined as follows: \begin{itemize} -\item If \tcode{W} models \tcode{\placeholder{Advanceable}}, then +\item If \tcode{W} models \tcode{\placeholder{advanceable}}, then \tcode{iterator_category} is \tcode{random_access_iterator_tag}. \item Otherwise, if \tcode{W} models \tcode{\placeholder{decrementable}}, then \tcode{iterator_category} is \tcode{bidirectional_iterator_tag}. @@ -2172,7 +2172,7 @@ \indexlibrary{\idxcode{operator+=}!\idxcode{iota_view::iterator}} \begin{itemdecl} constexpr iterator& operator+=(difference_type n) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; \end{itemdecl} \begin{itemdescr} @@ -2194,7 +2194,7 @@ \indexlibrary{\idxcode{operator-=}!\idxcode{iota_view::iterator}} \begin{itemdecl} constexpr iterator& operator-=(difference_type n) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; \end{itemdecl} \begin{itemdescr} @@ -2216,7 +2216,7 @@ \indexlibrary{\idxcode{operator[]}!\idxcode{iota_view::iterator}} \begin{itemdecl} constexpr W operator[](difference_type n) const - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; \end{itemdecl} \begin{itemdescr} @@ -2295,7 +2295,7 @@ \indexlibrary{\idxcode{operator+}!\idxcode{iota_view::iterator}} \begin{itemdecl} friend constexpr iterator operator+(iterator i, difference_type n) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; \end{itemdecl} \begin{itemdescr} @@ -2306,7 +2306,7 @@ \indexlibrary{\idxcode{operator+}!\idxcode{iota_view::iterator}} \begin{itemdecl} friend constexpr iterator operator+(difference_type n, iterator i) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; \end{itemdecl} \begin{itemdescr} @@ -2317,7 +2317,7 @@ \indexlibrary{\idxcode{operator-}!\idxcode{iota_view::iterator}} \begin{itemdecl} friend constexpr iterator operator-(iterator i, difference_type n) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; \end{itemdecl} \begin{itemdescr} @@ -2328,7 +2328,7 @@ \indexlibrary{\idxcode{operator-}!\idxcode{iota_view::iterator}} \begin{itemdecl} friend constexpr difference_type operator-(const iterator& x, const iterator& y) - requires @\placeholdernc{Advanceable}@; + requires @\placeholdernc{advanceable}@; \end{itemdecl} \begin{itemdescr} From 731b30f337f7870d35acba2989ea4f43f55f42fa Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:57:14 -0700 Subject: [PATCH 234/312] [everywhere] Rename concept 'ThreeWayComparable' to 'three_way_comparable'. --- source/containers.tex | 8 ++++---- source/ranges.tex | 12 ++++++------ source/support.tex | 17 +++++++++-------- source/time.tex | 2 +- source/utilities.tex | 4 ++-- 5 files changed, 22 insertions(+), 21 deletions(-) diff --git a/source/containers.tex b/source/containers.tex index 45344b96e2..24b4216aaf 100644 --- a/source/containers.tex +++ b/source/containers.tex @@ -9398,7 +9398,7 @@ bool operator<=(const queue& x, const queue& y); template bool operator>=(const queue& x, const queue& y); - template + template compare_three_way_result_t operator<=>(const queue& x, const queue& y); @@ -9440,7 +9440,7 @@ bool operator<=(const stack& x, const stack& y); template bool operator>=(const stack& x, const stack& y); - template + template compare_three_way_result_t operator<=>(const stack& x, const stack& y); @@ -9678,7 +9678,7 @@ \indexlibrary{\idxcode{operator<=>}!\idxcode{queue}}% \begin{itemdecl} -template +template compare_three_way_result_t operator<=>(const queue& x, const queue& y); \end{itemdecl} @@ -10238,7 +10238,7 @@ \indexlibrary{\idxcode{operator<=>}!\idxcode{stack}}% \begin{itemdecl} -template +template compare_three_way_result_t operator<=>(const stack& x, const stack& y); \end{itemdecl} diff --git a/source/ranges.tex b/source/ranges.tex index 82af1c4654..53c911131c 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -2043,7 +2043,7 @@ requires totally_ordered; friend constexpr compare_three_way_result_t operator<=>( const iterator& x, const iterator& y) - requires totally_ordered && ThreeWayComparable; + requires totally_ordered && three_way_comparable; friend constexpr iterator operator+(iterator i, difference_type n) requires @\placeholdernc{advanceable}@; @@ -2283,7 +2283,7 @@ \begin{itemdecl} friend constexpr compare_three_way_result_t operator<=>(const iterator& x, const iterator& y) - requires totally_ordered && ThreeWayComparable; + requires totally_ordered && three_way_comparable; \end{itemdecl} \begin{itemdescr} @@ -3272,7 +3272,7 @@ requires random_access_range; friend constexpr compare_three_way_result_t> operator<=>(const iterator& x, const iterator& y) - requires random_access_range && ThreeWayComparable>; + requires random_access_range && three_way_comparable>; friend constexpr iterator operator+(iterator i, difference_type n) requires random_access_range; @@ -3513,7 +3513,7 @@ \begin{itemdecl} friend constexpr compare_three_way_result_t> operator<=>(const iterator& x, const iterator& y) - requires random_access_range && ThreeWayComparable>; + requires random_access_range && three_way_comparable>; \end{itemdecl} \begin{itemdescr} @@ -5955,7 +5955,7 @@ requires random_access_range; friend constexpr compare_three_way_result_t> operator<=>(const iterator& x, const iterator& y) - requires random_access_range && ThreeWayComparable>; + requires random_access_range && three_way_comparable>; friend constexpr iterator operator+(const iterator& x, difference_type y) requires random_access_range; @@ -6171,7 +6171,7 @@ \begin{itemdecl} friend constexpr compare_three_way_result_t> operator<=>(const iterator& x, const iterator& y) - requires random_access_range && ThreeWayComparable>; + requires random_access_range && three_way_comparable>; \end{itemdecl} \begin{itemdescr} diff --git a/source/support.tex b/source/support.tex index 340d836c63..6616863891 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4021,9 +4021,9 @@ template using common_comparison_category_t = typename common_comparison_category::type; - // \ref{cmp.concept}, concept \tcode{ThreeWayComparable} + // \ref{cmp.concept}, concept \tcode{three_way_comparable} template - concept ThreeWayComparable = @\seebelow@; + concept three_way_comparable = @\seebelow@; template concept ThreeWayComparableWith = @\seebelow@; @@ -4709,7 +4709,7 @@ \end{note} \end{itemdescr} -\rSec2[cmp.concept]{Concept \tcode{ThreeWayComparable}} +\rSec2[cmp.concept]{Concept \tcode{three_way_comparable}} \begin{codeblock} template @@ -4757,9 +4757,10 @@ \tcode{bool(u <= t) == bool(t >= u)} is \tcode{true}. \end{itemize} +\indexlibrary{\idxcode{three_way_comparable}}% \begin{codeblock} template - concept ThreeWayComparable = + concept three_way_comparable = @\placeholder{weakly-equality-comparable-with}@ && (!convertible_to || @\placeholder{partially-ordered-with}@) && requires(const remove_reference_t& a, const remove_reference_t& b) { @@ -4771,7 +4772,7 @@ Let \tcode{a} and \tcode{b} be lvalues of type \tcode{const remove_reference_t}. \tcode{T} and \tcode{Cat} -model \tcode{\libconcept{ThreeWayComparable}} only if: +model \tcode{\libconcept{three_way_comparable}} only if: \begin{itemize} \item \tcode{(a <=> b == 0) == bool(a == b)} is \tcode{true}; @@ -4804,10 +4805,10 @@ concept ThreeWayComparableWith = @\placeholder{weakly-equality-comparable-with}@ && (!convertible_to || @\placeholder{partially-ordered-with}@) && - ThreeWayComparable && - ThreeWayComparable && + three_way_comparable && + three_way_comparable && common_reference_with&, const remove_reference_t&> && - ThreeWayComparable< + three_way_comparable< common_reference_t&, const remove_reference_t&>, Cat> && requires(const remove_reference_t& t, const remove_reference_t& u) { { t <=> u } -> @\placeholder{compares-as}@; diff --git a/source/time.tex b/source/time.tex index db94a82ec7..13e1a9a6b3 100644 --- a/source/time.tex +++ b/source/time.tex @@ -1701,7 +1701,7 @@ \indexlibrarymember{operator<=>}{duration}% \begin{itemdecl} template - requires ThreeWayComparable + requires three_way_comparable constexpr auto operator<=>(const duration& lhs, const duration& rhs); \end{itemdecl} diff --git a/source/utilities.tex b/source/utilities.tex index ca5d229b52..f2d05ff1c9 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -3618,7 +3618,7 @@ constexpr bool operator<=(const variant&, const variant&); template constexpr bool operator>=(const variant&, const variant&); - template requires (ThreeWayComparable && ...) + template requires (three_way_comparable && ...) constexpr common_comparison_category_t...> operator<=>(const variant&, const variant&); @@ -4712,7 +4712,7 @@ \indexlibrarymember{operator<=>}{variant}% \begin{itemdecl} -template requires (ThreeWayComparable && ...) +template requires (three_way_comparable && ...) constexpr common_comparison_category_t...> operator<=>(const variant& v, const variant& w); \end{itemdecl} From c046b65ead6b11eacc4ec818ae6a21cd60efeca4 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 16:58:55 -0700 Subject: [PATCH 235/312] [everywhere] Rename concept 'ThreeWayComparableWith' to 'three_way_comparable_with'. --- source/iterators.tex | 8 ++++---- source/lib-intro.tex | 2 +- source/support.tex | 10 ++++++---- source/time.tex | 8 ++++---- source/utilities.tex | 20 ++++++++++---------- 5 files changed, 25 insertions(+), 23 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index 0d8c37cb17..05812e9146 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -292,7 +292,7 @@ constexpr bool operator>=( const reverse_iterator& x, const reverse_iterator& y); - template Iterator2> + template Iterator2> constexpr compare_three_way_result_t operator<=>(const reverse_iterator& x, const reverse_iterator& y); @@ -347,7 +347,7 @@ template constexpr bool operator>=( const move_iterator& x, const move_iterator& y); - template Iterator2> + template Iterator2> constexpr compare_three_way_result_t operator<=>(const move_iterator& x, const move_iterator& y); @@ -3521,7 +3521,7 @@ \indexlibrarymember{operator<=>}{reverse_iterator}% \begin{itemdecl} -template Iterator2> +template Iterator2> constexpr compare_three_way_result_t operator<=>(const reverse_iterator& x, const reverse_iterator& y); @@ -4438,7 +4438,7 @@ \indexlibrarymember{operator<=>}{move_iterator}% \begin{itemdecl} -template Iterator2> +template Iterator2> constexpr compare_three_way_result_t operator<=>(const move_iterator& x, const move_iterator& y); diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 170f3481ef..79d3194552 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -722,7 +722,7 @@ { u < t } -> convertible_to; } { - if constexpr (ThreeWayComparableWith) { + if constexpr (three_way_comparable_with) { return t <=> u; } else { if (t < u) return weak_ordering::less; diff --git a/source/support.tex b/source/support.tex index 6616863891..6c0e80bb76 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4025,7 +4025,7 @@ template concept three_way_comparable = @\seebelow@; template - concept ThreeWayComparableWith = @\seebelow@; + concept three_way_comparable_with = @\seebelow@; // \ref{cmp.result}, result of three-way comparison template struct compare_three_way_result; @@ -4800,9 +4800,10 @@ \libconcept{totally_ordered}\iref{concept.stricttotallyordered}. \end{itemize} +\indexlibrary{\idxcode{three_way_comparable_with}}% \begin{codeblock} template - concept ThreeWayComparableWith = + concept three_way_comparable_with = @\placeholder{weakly-equality-comparable-with}@ && (!convertible_to || @\placeholder{partially-ordered-with}@) && three_way_comparable && @@ -4823,7 +4824,7 @@ Let \tcode{C} be \tcode{common_reference_t\&, const remove_reference_t\&>}. \tcode{T}, \tcode{U}, and \tcode{Cat} -model \tcode{\libconcept{ThreeWayComparableWith}} only if: +model \tcode{\libconcept{three_way_comparable_with}} only if: \begin{itemize} \item \tcode{t <=> u} and \tcode{u <=> t} have the same domain; @@ -4888,10 +4889,11 @@ \end{codeblock} resolves to a built-in operator comparing pointers. +\indexlibrary{\idxcode{compare_three_way}}% \begin{codeblock} struct compare_three_way { template - requires ThreeWayComparableWith || @\placeholdernc{BUILTIN-PTR-THREE-WAY}@(T, U) + requires three_way_comparable_with || @\placeholdernc{BUILTIN-PTR-THREE-WAY}@(T, U) constexpr auto operator()(T&& t, U&& u) const; using is_transparent = @\unspec@; diff --git a/source/time.tex b/source/time.tex index 13e1a9a6b3..82fbcd6aff 100644 --- a/source/time.tex +++ b/source/time.tex @@ -207,7 +207,7 @@ template constexpr bool operator>=(const time_point& lhs, const time_point& rhs); - template Duration2> + template Duration2> constexpr auto operator<=>(const time_point& lhs, const time_point& rhs); @@ -790,7 +790,7 @@ bool operator>=(const leap& x, const sys_time& y); template bool operator>=(const sys_time& x, const leap& y); - template Duration> + template Duration> auto operator<=>(const leap& x, const sys_time& y); // \ref{time.zone.link}, class \tcode{link} @@ -2358,7 +2358,7 @@ \indexlibrarymember{operator>=}{time_point}% \begin{itemdecl} template Duration2> + three_way_comparable_with Duration2> constexpr auto operator<=>(const time_point& lhs, const time_point& rhs); \end{itemdecl} @@ -9654,7 +9654,7 @@ \indexlibrarymember{operator<=>}{leap}% \indexlibrarymember{operator<=>}{sys_time}% \begin{itemdecl} -template Duration> +template Duration> constexpr auto operator<=>(const leap& x, const sys_time& y) noexcept; \end{itemdecl} diff --git a/source/utilities.tex b/source/utilities.tex index f2d05ff1c9..7788d51b56 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -2061,7 +2061,7 @@ constexpr bool operator<=(const optional&, const optional&); template constexpr bool operator>=(const optional&, const optional&); - template U> + template U> constexpr compare_three_way_result_t operator<=>(const optional&, const optional&); @@ -2083,7 +2083,7 @@ template constexpr bool operator<=(const T&, const optional&); template constexpr bool operator>=(const optional&, const U&); template constexpr bool operator>=(const T&, const optional&); - template U> + template U> constexpr compare_three_way_result_t operator<=>(const optional&, const U&); @@ -3206,7 +3206,7 @@ \indexlibrarymember{operator<=>}{optional}% \begin{itemdecl} -template U> +template U> constexpr compare_three_way_result_t operator<=>(const optional& x, const optional& y); \end{itemdecl} @@ -3446,7 +3446,7 @@ \indexlibrarymember{operator<=>}{optional}% \begin{itemdecl} -template U> +template U> constexpr compare_three_way_result_t operator<=>(const optional& x, const U& v); \end{itemdecl} @@ -6681,8 +6681,8 @@ template bool operator>=(const unique_ptr& x, const unique_ptr& y); template - requires ThreeWayComparableWith::pointer, - typename unique_ptr::pointer> + requires three_way_comparable_with::pointer, + typename unique_ptr::pointer> compare_three_way_result_t::pointer, typename unique_ptr::pointer> operator<=>(const unique_ptr& x, const unique_ptr& y); @@ -6706,7 +6706,7 @@ template bool operator>=(nullptr_t, const unique_ptr& y); template - requires ThreeWayComparableWith::pointer, nullptr_t> + requires three_way_comparable_with::pointer, nullptr_t> compare_three_way_result_t::pointer, nullptr_t> operator<=>(const unique_ptr& x, nullptr_t); @@ -9675,8 +9675,8 @@ \indexlibrarymember{operator<=>}{unique_ptr}% \begin{itemdecl} template - requires ThreeWayComparableWith::pointer, - typename unique_ptr::pointer> + requires three_way_comparable_with::pointer, + typename unique_ptr::pointer> compare_three_way_result_t::pointer, typename unique_ptr::pointer> operator<=>(const unique_ptr& x, const unique_ptr& y); @@ -9773,7 +9773,7 @@ \indexlibrarymember{operator<=>}{unique_ptr}% \begin{itemdecl} template - requires ThreeWayComparableWith::pointer, nullptr_t> + requires three_way_comparable_with::pointer, nullptr_t> compare_three_way_result_t::pointer, nullptr_t> operator<=>(const unique_ptr& x, nullptr_t); \end{itemdecl} From 1f2669e287959ce650ffcafb1d413ef6ea084253 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 17:21:06 -0700 Subject: [PATCH 236/312] [everywhere] Rename exposition-only concept 'same-impl' to 'same-as-impl'. --- source/concepts.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 7dc9d888a2..f4b9118534 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -276,10 +276,10 @@ \indexlibrary{\idxcode{same_as}}% \begin{itemdecl} template - concept @\placeholdernc{same-impl}@ = is_same_v; // \expos + concept @\placeholdernc{same-as-impl}@ = is_same_v; // \expos template - concept same_as = @\placeholdernc{same-impl}@ && @\placeholdernc{same-impl}@; + concept same_as = @\placeholdernc{same-as-impl}@ && @\placeholdernc{same-as-impl}@; \end{itemdecl} \begin{itemdescr} From 115bf2806dcc97d29730ea4f06e52f8cb7534dda Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 17:18:46 -0700 Subject: [PATCH 237/312] Fix overfull hboxes. --- source/algorithms.tex | 10 ++++++---- source/concepts.tex | 3 ++- source/iterators.tex | 17 ++++++++++------- source/ranges.tex | 28 +++++++++++++++++++--------- 4 files changed, 37 insertions(+), 21 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 2ce6340f53..b25b757d43 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -1436,8 +1436,8 @@ template using replace_copy_result = copy_result; - template S, class T1, class T2, output_iterator O, - class Proj = identity> + template S, class T1, class T2, + output_iterator O, class Proj = identity> requires indirectly_copyable && indirect_relation, const T1*> constexpr replace_copy_result @@ -1909,7 +1909,8 @@ namespace ranges { template using partial_sort_copy_result = copy_result; - template S1, random_access_iterator I2, sentinel_for S2, + template S1, + random_access_iterator I2, sentinel_for S2, class Comp = ranges::less, class Proj1 = identity, class Proj2 = identity> requires indirectly_copyable && sortable && indirect_strict_weak_order, projected> @@ -2183,7 +2184,8 @@ } }; - template S, weakly_incrementable O1, weakly_incrementable O2, + template S, + weakly_incrementable O1, weakly_incrementable O2, class Proj = identity, indirect_unary_predicate> Pred> requires indirectly_copyable && indirectly_copyable constexpr partition_copy_result diff --git a/source/concepts.tex b/source/concepts.tex index f4b9118534..6da7d2c09e 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -1044,7 +1044,8 @@ \indexlibrary{\idxcode{regular}}% \begin{itemdecl} template - concept movable = is_object_v && move_constructible && assignable_from && swappable; + concept movable = is_object_v && move_constructible && + assignable_from && swappable; template concept copyable = copy_constructible && movable && assignable_from; template diff --git a/source/iterators.tex b/source/iterators.tex index 05812e9146..1707373eb6 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -513,13 +513,15 @@ \pnum The six categories of iterators correspond to the iterator concepts -\libconcept{input_iterator}\iref{iterator.concept.input}, -\libconcept{output_iterator}\iref{iterator.concept.output}, -\libconcept{forward_iterator}\iref{iterator.concept.forward}, -\libconcept{bidirectional_iterator}\iref{iterator.concept.bidir} -\libconcept{random_access_iterator}\iref{iterator.concept.random.access}, +\begin{itemize} +\item \libconcept{input_iterator}\iref{iterator.concept.input}, +\item \libconcept{output_iterator}\iref{iterator.concept.output}, +\item \libconcept{forward_iterator}\iref{iterator.concept.forward}, +\item \libconcept{bidirectional_iterator}\iref{iterator.concept.bidir} +\item \libconcept{random_access_iterator}\iref{iterator.concept.random.access}, and -\libconcept{contiguous_iterator}\iref{iterator.concept.contiguous}, +\item \libconcept{contiguous_iterator}\iref{iterator.concept.contiguous}, +\end{itemize} respectively. The generic term \defn{iterator} refers to any type that models the \libconcept{input_or_output_iterator} concept\iref{iterator.concept.iterator}. @@ -1536,7 +1538,8 @@ \pnum The \libconcept{sized_sentinel_for} concept specifies -requirements on an \libconcept{input_or_output_iterator} and a \libconcept{sentinel_for} +requirements on an \libconcept{input_or_output_iterator} and +a corresponding \libconcept{sentinel_for} that allow the use of the \tcode{-} operator to compute the distance between them in constant time. diff --git a/source/ranges.tex b/source/ranges.tex index 53c911131c..b17370029b 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -360,12 +360,17 @@ Otherwise, if \tcode{E} is an lvalue, \tcode{\placeholdernc{decay-copy}(E.end())} if it is a valid expression and its type \tcode{S} models - \tcode{sentinel_for}. + \begin{codeblock} + sentinel_for + \end{codeblock} \item Otherwise, \tcode{\placeholdernc{decay-copy}(end(E))} if it is a valid expression and its type \tcode{S} models - \tcode{sentinel_for} with overload + \begin{codeblock} + sentinel_for + \end{codeblock} + with overload resolution performed in a context that includes the declarations: \begin{codeblock} template void end(T&&) = delete; @@ -480,12 +485,17 @@ \item If \tcode{E} is an lvalue, \tcode{\placeholdernc{decay-copy}(E.rend())} if it is a valid expression and its type \tcode{S} models - \tcode{sentinel_for<\brk{}decltype(ranges::rbegin(E))>}. + \begin{codeblock} + sentinel_for + \end{codeblock} \item Otherwise, \tcode{\placeholdernc{decay-copy}(rend(E))} if it is a valid expression and its type \tcode{S} models - \tcode{sentinel_for} with overload + \begin{codeblock} + sentinel_for + \end{codeblock} + with overload resolution performed in a context that includes the declaration: \begin{codeblock} template void rend(T&&) = delete; @@ -4874,8 +4884,8 @@ \begin{itemdescr} \pnum \effects -Initializes \tcode{base_} with \tcode{views::all(std::forward(r))} and -\tcode{pattern_} with \tcode{views::all(std\brk{}::forward

(p))}. +Initializes \tcode{base_} with \tcode{views::all(std::forward(r))}, and +\tcode{pattern_} with \tcode{views::all(\brk{}std::forward

(p))}. \end{itemdescr} \indexlibrary{\idxcode{split_view}!\idxcode{split_view}}% @@ -4889,7 +4899,7 @@ \begin{itemdescr} \pnum \effects -Initializes \tcode{base_} with \tcode{views::all(std::forward(r))} and +Initializes \tcode{base_} with \tcode{views::all(std::forward(r))}, and \tcode{pattern_} with \tcode{single_view\{\brk{}std::move(e)\}}. \end{itemdescr} @@ -5252,10 +5262,10 @@ \begin{itemize} \item If \tcode{T} models \libconcept{input_or_output_iterator} and - \tcode{decltype((F))} models \tcode{\libconcept{convertible_to}>}, + \tcode{decltype((F))} models \tcode{\libconcept{convertible_to}>}, \begin{itemize} \item \tcode{subrange\{E, E + static_cast>(F)\}} - if \tcode{T} models \libconcept{random_access_iterator}. + if \tcode{T} models \libconcept{random_access_\-it\-er\-ator}. \item Otherwise, \tcode{subrange\{counted_iterator\{E, F\}, default_sentinel\}}. \end{itemize} From 058e65b19dea3a9e8be12da9b0699672116cb430 Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Mon, 29 Jul 2019 15:02:38 -0700 Subject: [PATCH 238/312] [utilities] Use "\expos" instead of "exposition only" in declarations. --- source/utilities.tex | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 7788d51b56..2ff5d761d9 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -1705,7 +1705,7 @@ Given the exposition-only function: \begin{codeblock} template -constexpr T @\placeholdernc{make-from-tuple-impl}@(Tuple&& t, index_sequence) { // exposition only +constexpr T @\placeholdernc{make-from-tuple-impl}@(Tuple&& t, index_sequence) { // \expos return T(get(std::forward(t))...); } \end{codeblock} @@ -7924,7 +7924,7 @@ \begin{itemdecl} template -concept @\placeholdernc{no-throw-input-iterator}@ = // exposition only +concept @\placeholdernc{no-throw-input-iterator}@ = // \expos input_iterator && is_lvalue_reference_v> && same_as>, iter_value_t>; @@ -7947,7 +7947,7 @@ \begin{itemdecl} template -concept @\placeholdernc{no-throw-sentinel}@ = sentinel_for; // exposition only +concept @\placeholdernc{no-throw-sentinel}@ = sentinel_for; // \expos \end{itemdecl} \begin{itemdescr} @@ -7966,7 +7966,7 @@ \begin{itemdecl} template -concept @\placeholdernc{no-throw-input-range}@ = // exposition only +concept @\placeholdernc{no-throw-input-range}@ = // \expos range && @\placeholder{no-throw-input-iterator}@> && @\placeholdernc{no-throw-sentinel}@, iterator_t>; @@ -7981,7 +7981,7 @@ \begin{itemdecl} template -concept @\placeholdernc{no-throw-forward-iterator}@ = // exposition only +concept @\placeholdernc{no-throw-forward-iterator}@ = // \expos @\placeholder{no-throw-input-iterator}@ && forward_iterator && @\placeholdernc{no-throw-sentinel}@; @@ -7997,7 +7997,7 @@ \begin{itemdecl} template -concept @\placeholdernc{no-throw-forward-range}@ = // exposition only +concept @\placeholdernc{no-throw-forward-range}@ = // \expos @\placeholder{no-throw-input-range}@ && @\placeholder{no-throw-forward-iterator}@>; \end{itemdecl} From 7beed51f4388074f46fd55a7c5f559cd82b7c40c Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Tue, 30 Jul 2019 20:36:34 -0700 Subject: [PATCH 239/312] [alg.is.permutation] Add parameters to \libconcept{sized_sentinel_for} as suggested in PR #3099. --- source/algorithms.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index b25b757d43..4b4c31cb1c 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -3859,8 +3859,8 @@ \complexity No applications of the corresponding predicate and projections if: \begin{itemize} -\item \tcode{S1} and \tcode{I1} model \libconcept{sized_sentinel_for}, -\item \tcode{S2} and \tcode{I2} model \libconcept{sized_sentinel_for}, and +\item \tcode{S1} and \tcode{I1} model \tcode{\libconcept{sized_sentinel_for}}, +\item \tcode{S2} and \tcode{I2} model \tcode{\libconcept{sized_sentinel_for}}, and \item \tcode{last1 - first1 != last2 - first2}. \end{itemize} Otherwise, exactly \tcode{last1 - first1} applications From fbb0691134e39059adaa4a886e7d746b0e56c81c Mon Sep 17 00:00:00 2001 From: Dawn Perchik Date: Wed, 31 Jul 2019 12:52:26 -0700 Subject: [PATCH 240/312] [concepts] Renamed concepts' section names to remove trailing prepositions for consistency. * concept.convertibleto => concept.convertible * concept.derivedfrom => concept.derived * concept.stricttotallyordered => concept.totallyordered --- source/concepts.tex | 12 ++++++------ source/iterators.tex | 2 +- source/lib-intro.tex | 2 +- source/support.tex | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/source/concepts.tex b/source/concepts.tex index 6da7d2c09e..b94f4cce6f 100644 --- a/source/concepts.tex +++ b/source/concepts.tex @@ -151,11 +151,11 @@ template concept same_as = @\seebelow@; - // \ref{concept.derivedfrom}, concept \libconcept{derived_from} + // \ref{concept.derived}, concept \libconcept{derived_from} template concept derived_from = @\seebelow@; - // \ref{concept.convertibleto}, concept \libconcept{convertible_to} + // \ref{concept.convertible}, concept \libconcept{convertible_to} template concept convertible_to = @\seebelow@; @@ -223,7 +223,7 @@ template concept equality_comparable_with = @\seebelow@; - // \ref{concept.stricttotallyordered}, concept \libconcept{totally_ordered} + // \ref{concept.totallyordered}, concept \libconcept{totally_ordered} template concept totally_ordered = @\seebelow@; template @@ -290,7 +290,7 @@ \end{note} \end{itemdescr} -\rSec2[concept.derivedfrom]{Concept \libconcept{derived_from}} +\rSec2[concept.derived]{Concept \libconcept{derived_from}} \indexlibrary{\idxcode{derived_from}}% \begin{itemdecl} @@ -309,7 +309,7 @@ \end{note} \end{itemdescr} -\rSec2[concept.convertibleto]{Concept \libconcept{convertible_to}} +\rSec2[concept.convertible]{Concept \libconcept{convertible_to}} \pnum The \libconcept{convertible_to} concept requires an expression of a particular @@ -951,7 +951,7 @@ \tcode{bool(t == u) == bool(C(t) == C(u))}. \end{itemdescr} -\rSec2[concept.stricttotallyordered]{Concept \libconcept{totally_ordered}} +\rSec2[concept.totallyordered]{Concept \libconcept{totally_ordered}} \indexlibrary{\idxcode{totally_ordered}}% \begin{itemdecl} diff --git a/source/iterators.tex b/source/iterators.tex index 1707373eb6..9e95e92656 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1359,7 +1359,7 @@ \pnum All integer-class types model \libconcept{regular}\iref{concepts.object} and -\libconcept{totally_ordered}\iref{concept.stricttotallyordered}. +\libconcept{totally_ordered}\iref{concept.totallyordered}. \pnum A value-initialized object of integer-class type has value 0. diff --git a/source/lib-intro.tex b/source/lib-intro.tex index 79d3194552..cfa259e339 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -533,7 +533,7 @@ result in the required semantics failing to be met. \begin{example} The required \tcode{<} operator of the \libconcept{totally_ordered} -concept\iref{concept.stricttotallyordered} does not meet the +concept\iref{concept.totallyordered} does not meet the semantic requirements of that concept when operating on NaNs. \end{example} This does not affect whether a type models the concept. diff --git a/source/support.tex b/source/support.tex index 6c0e80bb76..479ef83eb6 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4797,7 +4797,7 @@ \end{itemize} \item If \tcode{Cat} is convertible to \tcode{strong_ordering}, \tcode{T} models - \libconcept{totally_ordered}\iref{concept.stricttotallyordered}. + \libconcept{totally_ordered}\iref{concept.totallyordered}. \end{itemize} \indexlibrary{\idxcode{three_way_comparable_with}}% @@ -4855,7 +4855,7 @@ \item if \tcode{Cat} is convertible to \tcode{strong_ordering}, \tcode{T} and \tcode{U} model - \tcode{\libconcept{totally_ordered_with}}\iref{concept.stricttotallyordered}. + \tcode{\libconcept{totally_ordered_with}}\iref{concept.totallyordered}. \end{itemize} \rSec2[cmp.result]{Result of three-way comparison} From aedd3f7850ae1a3bc58b18be88a6ce34f9787331 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 17:48:17 -0700 Subject: [PATCH 241/312] [algorithms] Fix some bad indentation in itemdecls. --- source/algorithms.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 4b4c31cb1c..2a14136950 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -3305,13 +3305,13 @@ requires indirectly_comparable constexpr subrange ranges::find_end(I1 first1, S1 last1, I2 first2, S2 last2, Pred pred = {}, - Proj1 proj1 = {}, Proj2 proj2 = {}); + Proj1 proj1 = {}, Proj2 proj2 = {}); template requires indirectly_comparable, iterator_t, Pred, Proj1, Proj2> constexpr safe_subrange_t ranges::find_end(R1&& r1, R2&& r2, Pred pred = {}, - Proj1 proj1 = {}, Proj2 proj2 = {}); + Proj1 proj1 = {}, Proj2 proj2 = {}); \end{itemdecl} \begin{itemdescr} @@ -6767,7 +6767,7 @@ requires indirectly_copyable && indirectly_copyable constexpr ranges::partition_copy_result ranges::partition_copy(I first, S last, O1 out_true, O2 out_false, Pred pred, - Proj proj = {}); + Proj proj = {}); template, Proj>> Pred> From e2a070f7a5484e272c10e4ab31359fede5ff24a1 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 13:51:24 -0700 Subject: [PATCH 242/312] [diff.cpp17.library], [tab:headers.cpp] Add missing entry to the list of headers, and add various missing entries to the list of new-in-C++20 headers. Fixes #3122. --- source/compatibility.tex | 7 +++++++ source/lib-intro.tex | 5 +++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/source/compatibility.tex b/source/compatibility.tex index d92f7e9c3f..93729221cc 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -2153,13 +2153,20 @@ \rationale New functionality. \effect The following \Cpp{} headers are new: +\tcode{}, \tcode{}, +\tcode{}, \tcode{}, \tcode{}, \tcode{}, +\tcode{}, +\tcode{}, \tcode{}, \tcode{}, +\tcode{}, +\tcode{}, \tcode{}, +\tcode{}, \tcode{}, and \tcode{}. Valid \CppXVII{} code that \tcode{\#include}{s} headers with these names may be diff --git a/source/lib-intro.tex b/source/lib-intro.tex index cfa259e339..d04723a7a7 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -1174,6 +1174,7 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ +\tcode{} \\ \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -1199,8 +1200,8 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\columnbreak \tcode{} \\ +\columnbreak \tcode{} \\ \tcode{} \\ \tcode{} \\ @@ -1219,9 +1220,9 @@ \tcode{} \\ \tcode{} \\ \tcode{} \\ -\columnbreak \tcode{} \\ \tcode{} \\ +\columnbreak \tcode{} \\ \tcode{} \\ \tcode{} \\ From bfd8660b5e5f8e27155b902169848db9505551f7 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 6 Aug 2019 15:48:51 +0200 Subject: [PATCH 243/312] [char.traits.specializations.char8.t] Align member typedefs. --- source/strings.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/strings.tex b/source/strings.tex index a0c3c16f35..302bec10ee 100644 --- a/source/strings.tex +++ b/source/strings.tex @@ -317,10 +317,10 @@ \begin{codeblock} namespace std { template<> struct char_traits { - using char_type = char8_t; - using int_type = unsigned int; - using off_type = streamoff; - using pos_type = u8streampos; + using char_type = char8_t; + using int_type = unsigned int; + using off_type = streamoff; + using pos_type = u8streampos; using state_type = mbstate_t; using comparison_category = strong_ordering; From 4c513f51f4ae5086eac35d71458b632a3389fefa Mon Sep 17 00:00:00 2001 From: Eelis van der Weegen Date: Tue, 6 Aug 2019 14:17:11 +0200 Subject: [PATCH 244/312] [cmp.alg] Use regular apostrophes instead of fancy Unicode quotation marks. --- source/support.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/support.tex b/source/support.tex index 479ef83eb6..46523526ae 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4958,7 +4958,7 @@ a floating-point type, yields a value of type \tcode{strong_ordering} that is consistent with the ordering - observed by \tcode{T}’s comparison operators, and + observed by \tcode{T}'s comparison operators, and if \tcode{numeric_limits::is_iec559} is \tcode{true}, is additionally consistent with the \tcode{totalOrder} operation as specified in ISO/IEC/IEEE 60599. @@ -4994,7 +4994,7 @@ is a floating-point type, yields a value of type \tcode{weak_ordering} that is consistent with the ordering - observed by \tcode{T}’s comparison operators and \tcode{strong_order}, and + observed by \tcode{T}'s comparison operators and \tcode{strong_order}, and if \tcode{numeric_limits::is_iec559} is \tcode{true}, is additionally consistent with the following equivalence classes, ordered from lesser to greater: From 10fcb637b218a4fb176c77b14a0df86582cda34b Mon Sep 17 00:00:00 2001 From: timsong-cpp Date: Tue, 6 Aug 2019 07:37:05 -0500 Subject: [PATCH 245/312] [time.clock.utc.nonmembers] fix \end{itemdescr} --- source/time.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/time.tex b/source/time.tex index 82fbcd6aff..e3cf39571e 100644 --- a/source/time.tex +++ b/source/time.tex @@ -2815,6 +2815,7 @@ \tcode{elapsed} is the number of leap seconds between 1970-01-01 and \tcode{ut}. If \tcode{is_leap_second} is \tcode{true}, the leap second referred to by \tcode{ut} is included in the count. +\end{itemdescr} \rSec2[time.clock.tai]{Class \tcode{tai_clock}} @@ -2861,7 +2862,6 @@ \begin{note} \tcode{noexcept(from_utc(utc_clock::now()))} is \tcode{false}. \end{note} -\end{itemdescr} \rSec3[time.clock.tai.members]{Member functions} From 3f780c900659f98c859058deaa4f83582c8c1c7c Mon Sep 17 00:00:00 2001 From: Eelis van der Weegen Date: Tue, 6 Aug 2019 14:23:49 +0200 Subject: [PATCH 246/312] [range.iota.view] Add missing @ --- source/ranges.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ranges.tex b/source/ranges.tex index b17370029b..c4d5a821d2 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -1997,7 +1997,7 @@ : @\placeholdernc{make-unsigned-like}@(bound_) + @\placeholdernc{make-unsigned-like}@(-value_)) : @\placeholdernc{make-unsigned-like}@(bound_) - @\placeholdernc{make-unsigned-like}@(value_); else - return @\placeholdernc{make-unsigned-like}(bound_ - value_); + return @\placeholdernc{make-unsigned-like}@(bound_ - value_); \end{codeblock} \pnum From 54a87d7849e7d5283c2d0a34f8200ef6a67bb0da Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 6 Aug 2019 23:17:24 +0200 Subject: [PATCH 247/312] [conv.qual,expr.static.cast] Harmonize notes on cv-qualified function types. --- source/expressions.tex | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index 1c622c727e..e8e3ede66f 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -787,8 +787,8 @@ \pnum \begin{note} -Function types (including those used in pointer to member function -types) are never cv-qualified\iref{dcl.fct}. +Function types (including those used in pointer-to-member-function types) +are never cv-qualified\iref{dcl.fct}. \end{note} \indextext{conversion!qualification|)} @@ -3747,9 +3747,11 @@ \tcode{D} is a complete class type and \tcode{B} is a base class\iref{class.derived} of \tcode{D}, if \cvqual{cv2} is the same cv-qualification -as, or greater cv-qualification than, \cvqual{cv1}.\footnote{Function types -(including those used in pointer-to-member-function -types) are never cv-qualified; see~\ref{dcl.fct}.} +as, or greater cv-qualification than, \cvqual{cv1}. +\begin{note} +Function types (including those used in pointer-to-member-function types) +are never cv-qualified\iref{dcl.fct}. +\end{note} If no valid standard conversion from ``pointer to member of \tcode{B} of type \tcode{T}'' to ``pointer to member of \tcode{D} of type \tcode{T}'' From ee25b8a36c7bd653e7ed32d7e020cf77450728b6 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Sat, 3 Aug 2019 09:06:12 +0200 Subject: [PATCH 248/312] [diff.cpp17.class] Add example where P0527R1 silently changes semantics. --- source/compatibility.tex | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/source/compatibility.tex b/source/compatibility.tex index 93729221cc..2c6d4150b5 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -2045,7 +2045,8 @@ Side effect of making it easier to write more efficient code that takes advantage of moves. \effect -Valid \CppXVII{} code may fail to compile in this International Standard. +Valid \CppXVII{} code may fail to compile or have different semantics +in this International Standard. For example: \begin{codeblock} struct base { @@ -2062,6 +2063,21 @@ derived d; return d; // error: \tcode{base(base \&\&)} is private } + +struct S { + S(const char *s) : m(s) { } + S(const S&) = default; + S(S&& other) : m(other.m) { other.m = nullptr; } + const char * m; +}; + +S consume(S&& s) { return s; } + +void g() { + S s("text"); + consume(static_cast(s)); + char c = *s.m; // undefined behavior; previously ok +} \end{codeblock} \rSec2[diff.cpp17.over]{\ref{over}: overloading} From 2f2dc9a90a2211a2ccefa566b36f9109a9169f46 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 2 Aug 2019 10:19:36 +0200 Subject: [PATCH 249/312] [diff.cpp17.class] 'injected-class-name' is not a grammar non-terminal. --- source/compatibility.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/compatibility.tex b/source/compatibility.tex index 2c6d4150b5..e1478041f9 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -2030,7 +2030,7 @@ template struct A { A(); // error: \grammarterm{simple-template-id} not allowed for constructor - A(int); // OK, \grammarterm{injected-class-name} used + A(int); // OK, injected-class-name used ~A(); // error: \grammarterm{simple-template-id} not allowed for destructor }; \end{codeblock} From ee234abfbfa7deb5c585b67590205e1660df180f Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Thu, 1 Aug 2019 16:45:51 +0200 Subject: [PATCH 250/312] [time.clock,bit.cast] Replace template with template as per library specification policy. --- source/numerics.tex | 4 ++-- source/time.tex | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/source/numerics.tex b/source/numerics.tex index 0fbf13a386..19e2761e16 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -1289,7 +1289,7 @@ \begin{codeblock} namespace std { // \ref{bit.cast}, \tcode{bit_cast} - template + template constexpr To bit_cast(const From& from) noexcept; // \ref{bit.pow.two}, integral powers of 2 @@ -1333,7 +1333,7 @@ \indexlibrary{\idxcode{bit_cast}}% \begin{itemdecl} -template +template constexpr To bit_cast(const From& from) noexcept; \end{itemdecl} diff --git a/source/time.tex b/source/time.tex index e3cf39571e..bcbd8b4181 100644 --- a/source/time.tex +++ b/source/time.tex @@ -2663,7 +2663,7 @@ \indexlibrarymember{to_sys}{utc_clock}% \begin{itemdecl} -template +template static sys_time> to_sys(const utc_time& u); \end{itemdecl} @@ -2681,7 +2681,7 @@ \indexlibrarymember{from_sys}{utc_clock}% \begin{itemdecl} -template +template static utc_time> from_sys(const sys_time& t); \end{itemdecl} @@ -3396,7 +3396,7 @@ \rSec3[time.clock.cast.id]{Identity conversions} \begin{codeblock} -template +template struct clock_time_conversion { template time_point From a374c4f3664cf84a4440feb3c236076b25cfe736 Mon Sep 17 00:00:00 2001 From: languagelawyer <38548419+languagelawyer@users.noreply.github.com> Date: Thu, 25 Jul 2019 21:24:06 +0200 Subject: [PATCH 251/312] [tuple] Use "objects" instead of "variables" with "temporary" in the definition of `forward_as_tuple` --- source/utilities.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/utilities.tex b/source/utilities.tex index 2ff5d761d9..32a747c4c9 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -1582,7 +1582,7 @@ \pnum \effects Constructs a tuple of references to the arguments in \tcode{t} suitable for forwarding as arguments to a function. Because the result may contain references -to temporary variables, a program shall ensure that the return value of this +to temporary objects, a program shall ensure that the return value of this function does not outlive any of its arguments (e.g., the program should typically not store the result in a named variable). From 7e02aa3d7d3e5e9dfc2c66451e112d40f4491465 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Mon, 22 Jul 2019 23:27:57 +0100 Subject: [PATCH 252/312] [is.sorted] Add missing "return" and semi-colon This was lost when changing "Returns:" to "Effects:" for P0896R4. The paper included this change, but it was lost when applying it. --- source/algorithms.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/algorithms.tex b/source/algorithms.tex index 2a14136950..c2518033ec 100644 --- a/source/algorithms.tex +++ b/source/algorithms.tex @@ -6200,7 +6200,7 @@ \effects Equivalent to: \begin{codeblock} -is_sorted_until(std::forward(exec), first, last, comp) == last +return is_sorted_until(std::forward(exec), first, last, comp) == last; \end{codeblock} \end{itemdescr} From cc421307fb4ce393e7ab1dcf0d0f1298d163fbe0 Mon Sep 17 00:00:00 2001 From: Yehezkel Bernat Date: Sun, 21 Jul 2019 22:16:23 +0300 Subject: [PATCH 253/312] Delete irrelevant copy-paste from previous section --- source/expressions.tex | 3 --- 1 file changed, 3 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index e8e3ede66f..025040fb69 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -4609,9 +4609,6 @@ \begin{note} A \grammarterm{noexcept-expression} is an integral constant expression\iref{expr.const}. -The type \tcode{std::size_t} is defined in the standard header -\indexhdr{cstddef}% -\tcode{}~(\ref{cstddef.syn}, \ref{support.types.layout}). \end{note} \pnum From d4c4cc0ac037c51ec10cf6f7c80d8c761b517cba Mon Sep 17 00:00:00 2001 From: onihusube <44743040+onihusube@users.noreply.github.com> Date: Wed, 17 Jul 2019 22:46:24 +0900 Subject: [PATCH 254/312] [basic.lookup.argdep]/5 add export to apply() fix #2968 --- source/basic.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/basic.tex b/source/basic.tex index 36db8d3b9a..cabaed8943 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -1914,7 +1914,7 @@ import M; export R::X make(); namespace R { static int g(X); } -template void apply(T t, U u) { +export template void apply(T t, U u) { f(t, u); g(t); } From 78911a6c60c2b96f7bfe7a574f14f17b27d3678e Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Wed, 17 Jul 2019 10:46:47 +0100 Subject: [PATCH 255/312] [complex.literals] Remove bogus index entry --- source/numerics.tex | 1 - 1 file changed, 1 deletion(-) diff --git a/source/numerics.tex b/source/numerics.tex index 19e2761e16..edb32a16ef 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -1231,7 +1231,6 @@ \rSec2[complex.literals]{Suffixes for complex number literals} \indextext{literal!complex}% -\indexlibrary{\tcode{complex}!literals}% \pnum This subclause describes literal suffixes for constructing complex number literals. The suffixes \tcode{i}, \tcode{il}, and \tcode{if} create complex numbers of From 557cfa9dd706780fb672bfe9e5e2f0ef3b2f3d4a Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Thu, 4 Jul 2019 09:31:57 +0200 Subject: [PATCH 256/312] [basic.life] Lifetime of class objects is treated uniformly under CWG2256, regardless of triviality of the destructor. --- source/basic.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index cabaed8943..534cc8a3c7 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -3193,12 +3193,12 @@ \pnum A program may end the lifetime of any object by reusing the storage which the object occupies or by explicitly calling the destructor for an -object of a class type with a non-trivial destructor. For an object of a -class type with a non-trivial destructor, the program is not required to +object of a class type. +For an object of a class type, the program is not required to call the destructor explicitly before the storage which the object occupies is reused or released; however, if there is no explicit call to the destructor or if a \grammarterm{delete-expression}\iref{expr.delete} -is not used to release the storage, the destructor shall not be +is not used to release the storage, the destructor is not implicitly called and any program that depends on the side effects produced by the destructor has undefined behavior. From 4c3b9f50ecd230263974c81e1df2fb07b541c58d Mon Sep 17 00:00:00 2001 From: onihusube <44743040+onihusube@users.noreply.github.com> Date: Mon, 1 Jul 2019 16:26:16 +0900 Subject: [PATCH 257/312] [module.global] fix sample code comment --- source/modules.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/modules.tex b/source/modules.tex index a32fc6c180..828661832c 100644 --- a/source/modules.tex +++ b/source/modules.tex @@ -747,7 +747,7 @@ // even though it is not used in this call } template int use_g() { - N::X x; // \tcode{N::X}, \tcode{N}, and \tcode{::} are decl-reachable from \tcode{use_f} + N::X x; // \tcode{N::X}, \tcode{N}, and \tcode{::} are decl-reachable from \tcode{use_g} return g((T(), x)); // \tcode{N::g} is not decl-reachable from \tcode{use_g} } template int use_h() { From 06bd4b02febcb43c014ffd46b7a07dab8d66aa4b Mon Sep 17 00:00:00 2001 From: onihusube <44743040+onihusube@users.noreply.github.com> Date: Mon, 1 Jul 2019 16:41:33 +0900 Subject: [PATCH 258/312] [cpp.module] fix sample code comment --- source/preprocessor.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/preprocessor.tex b/source/preprocessor.tex index d008d74918..5ef73eadf0 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -783,8 +783,8 @@ \begin{codeblocktu}{Importable header \tcode{"d.h"}} import "a.h"; // point of definition of \#1, \#2, and \#3, point of undefinition of \#1 in \tcode{"d.h"} import "c.h"; // point of definition of \#4 and \#5 in \tcode{"d.h"} -int a = Y; // OK, active macro definitions \#2 and \#3 are valid redefinitions -int c = Z; // error: active macro definitions \#2 and \#3 are not valid redefinitions of \tcode{Z} +int a = Y; // OK, active macro definitions \#2 and \#4 are valid redefinitions +int c = Z; // error: active macro definitions \#3 and \#5 are not valid redefinitions of \tcode{Z} \end{codeblocktu} \end{example} \indextext{macro!import|)} From 1be069efaa41f4df376364290f8069ec030b13cc Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 28 Jun 2019 17:11:44 +0200 Subject: [PATCH 259/312] [time.parse] Fix description of %Ex and %EX parse flags. Also refer to the table number instead of 'the table below'. --- source/time.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/time.tex b/source/time.tex index bcbd8b4181..2c16370447 100644 --- a/source/time.tex +++ b/source/time.tex @@ -10348,11 +10348,11 @@ Each flag begins with a \tcode{\%}. Some flags can be modified by \tcode{E} or \tcode{O}. During parsing each flag interprets characters as parts of date and time types -according to the table below. +according to~\tref{time.parse.spec}. Some flags can be modified by a width parameter given as a positive decimal integer called out as \tcode{\placeholder{N}} below which governs how many characters are parsed from the stream in interpreting the flag. -All characters in the format string that are not represented in the table below, +All characters in the format string that are not represented in~\tref{time.parse.spec}, except for white space, are parsed unchanged from the stream. A white space character matches zero or more white space characters in the input stream. @@ -10563,11 +10563,11 @@ \\ \rowsep \tcode{\%x} & The locale's date representation. -The modified command \tcode{\%Ex} produces the locale's alternate date representation. +The modified command \tcode{\%Ex} interprets the locale's alternate date representation. \\ \rowsep \tcode{\%X} & The locale's time representation. -The modified command \tcode{\%EX} produces the locale's alternate time representation. +The modified command \tcode{\%EX} interprets the locale's alternate time representation. \\ \rowsep \tcode{\%y} & The last two decimal digits of the year. From f038d86fb9112b62adaaebaf95dc70d786412cbd Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Fri, 28 Jun 2019 16:50:03 +0200 Subject: [PATCH 260/312] [res.on.functions] Properly capitalize full-sentence bullets. Also add periods at the end of sentences. --- source/lib-intro.tex | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/source/lib-intro.tex b/source/lib-intro.tex index d04723a7a7..a02432e3f0 100644 --- a/source/lib-intro.tex +++ b/source/lib-intro.tex @@ -2872,17 +2872,17 @@ \begin{itemize} \item -for replacement functions\iref{new.delete}, if the installed replacement function does not +For replacement functions\iref{new.delete}, if the installed replacement function does not implement the semantics of the applicable \required paragraph. \item -for handler functions~(\ref{new.handler}, \ref{terminate.handler}), +For handler functions~(\ref{new.handler}, \ref{terminate.handler}), if the installed handler function does not implement the semantics of the applicable \required -paragraph +paragraph. \item -for types used as template arguments when instantiating a template component, +For types used as template arguments when instantiating a template component, if the operations on the type do not implement the semantics of the applicable \emph{Requirements} subclause~(\ref{allocator.requirements}, \ref{container.requirements}, \ref{iterator.requirements}, @@ -2890,13 +2890,13 @@ Operations on such types can report a failure by throwing an exception unless otherwise specified. \item -if any replacement function or handler function or destructor operation exits via an exception, +If any replacement function or handler function or destructor operation exits via an exception, unless specifically allowed in the applicable \required paragraph. \item -if an incomplete type\iref{basic.types} is used as a template +If an incomplete type\iref{basic.types} is used as a template argument when instantiating a template component or evaluating a concept, unless specifically allowed for that component. \end{itemize} From 43945886b4ff4481da3d29b3f624d55bc9b5d124 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Mon, 24 Jun 2019 22:43:30 +0200 Subject: [PATCH 261/312] [conv.qual] Fix example for cv-decomposition. After CWG2051, a cv-decomposition can also be a no-op. --- source/expressions.tex | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index 025040fb69..3a6ef2060e 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -717,8 +717,11 @@ the cv-qualifiers $\cv{}_i$ of the array. \begin{example} The type denoted by the \grammarterm{type-id} \tcode{const int **} -has two cv-decompositions, -taking \tcode{U} as ``\tcode{int}'' and as ``pointer to \tcode{const int}''. +has three cv-decompositions, +taking \tcode{U} +as ``\tcode{int}'', +as ``pointer to \tcode{const int}'', and +as ``pointer to pointer to \tcode{const int}''. \end{example} The $n$-tuple of cv-qualifiers after the first one in the longest cv-decomposition of \tcode{T}, that is, From 915031ddbf75f856efcea43928d9f459140834fd Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Tue, 6 Aug 2019 09:31:52 +0200 Subject: [PATCH 262/312] [meta.trans.other] Use hyphens, not underscores, for meta-functions. --- source/utilities.tex | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 32a747c4c9..1c791e1251 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -18030,38 +18030,38 @@ \tcode{\placeholdernc{COPYCV}(const int, volatile short)} is an alias for \tcode{const volatile short}. \end{example} -\item \tcode{\placeholdernc{COND_RES}(X, Y)} be +\item \tcode{\placeholdernc{COND-RES}(X, Y)} be \tcode{decltype(false ?\ declval()() :\ declval()())}. \end{itemize} Given types \tcode{A} and \tcode{B}, let \tcode{X} be \tcode{remove_reference_t}, let \tcode{Y} be \tcode{remove_reference_t}, and -let \tcode{\placeholdernc{COMMON_REF}(A, B)} be: +let \tcode{\placeholdernc{COMMON-\brk{}REF}(A, B)} be: \begin{itemize} \item If \tcode{A} and \tcode{B} are both lvalue reference types, - \tcode{\placeholdernc{COMMON_REF}(A, B)} is - \tcode{\placeholdernc{COND_RES}(\placeholdernc{COPYCV}(X, Y) \&, + \tcode{\placeholdernc{COMMON-REF}(A, B)} is + \tcode{\placeholdernc{COND-RES}(\placeholdernc{COPYCV}(X, Y) \&, \placeholdernc{COPYCV}(\brk{}Y, X) \&)} if that type exists and is a reference type. \item Otherwise, let \tcode{C} be - \tcode{remove_reference_t<\placeholdernc{COMMON_REF}(X\&, Y\&)>\&\&}. + \tcode{remove_reference_t<\placeholdernc{COMMON-REF}(X\&, Y\&)>\&\&}. If \tcode{A} and \tcode{B} are both rvalue reference types, \tcode{C} is well-formed, and \tcode{is_convertible_v \&\& is_convertible_v} is \tcode{true}, - then \tcode{\placeholdernc{COMMON_REF}(A, B)} is \tcode{C}. + then \tcode{\placeholdernc{COMMON-REF}(A, B)} is \tcode{C}. \item Otherwise, let \tcode{D} be - \tcode{\placeholdernc{COMMON_REF}(const X\&, Y\&)}. If \tcode{A} is an rvalue + \tcode{\placeholdernc{COMMON-REF}(const X\&, Y\&)}. If \tcode{A} is an rvalue reference and \tcode{B} is an lvalue reference and \tcode{D} is well-formed and \tcode{is_convertible_v} is - \tcode{true}, then \tcode{\placeholdernc{COMMON_REF}(A, B)} is \tcode{D}. + \tcode{true}, then \tcode{\placeholdernc{COMMON-REF}(A, B)} is \tcode{D}. \item Otherwise, if \tcode{A} is an lvalue reference and \tcode{B} - is an rvalue reference, then \tcode{\placeholdernc{COMMON_REF}(A, B)} is - \tcode{\placeholdernc{COMMON_REF}(B, A)}. -\item Otherwise, \tcode{\placeholdernc{COMMON_REF}(A, B)} is ill-formed. + is an rvalue reference, then \tcode{\placeholdernc{COMMON-REF}(A, B)} is + \tcode{\placeholdernc{COMMON-REF}(B, A)}. +\item Otherwise, \tcode{\placeholdernc{COMMON-REF}(A, B)} is ill-formed. \end{itemize} If any of the types computed above is ill-formed, then -\tcode{\placeholdernc{COMMON_REF}(A, B)} is ill-formed. +\tcode{\placeholdernc{COMMON-REF}(A, B)} is ill-formed. \pnum Note A: @@ -18102,10 +18102,10 @@ \end{codeblock} denotes a valid type, let \tcode{C} denote that type. \item Otherwise, if - \tcode{\placeholdernc{COND_RES}(\placeholdernc{CREF}(D1), + \tcode{\placeholdernc{COND-RES}(\placeholdernc{CREF}(D1), \placeholdernc{CREF}(D2))} denotes a type, let \tcode{C} denote the type - \tcode{decay_t<\placeholdernc{COND_RES}(\placeholdernc{CREF}(D1), + \tcode{decay_t<\placeholdernc{COND-RES}(\placeholdernc{CREF}(D1), \placeholdernc{CREF}(D2))>}. \end{itemize} In either case, the member \grammarterm{typedef-name} \tcode{type} shall denote @@ -18155,7 +18155,7 @@ denote the two types in the pack \tcode{T}. Then \begin{itemize} \item If \tcode{T1} and \tcode{T2} are reference types and - \tcode{\placeholdernc{COMMON_REF}(T1, T2)} is well-formed, then the member + \tcode{\placeholdernc{COMMON-REF}(T1, T2)} is well-formed, then the member typedef \tcode{type} denotes that type. \item Otherwise, if @@ -18163,7 +18163,7 @@ \brk{}\placeholdernc{XREF}(\brk{}T1), \placeholdernc{XREF}(T2)>::type} is well-formed, then the member typedef \tcode{type} denotes that type. - \item Otherwise, if \tcode{\placeholdernc{COND_RES}(T1, T2)} is well-formed, + \item Otherwise, if \tcode{\placeholdernc{COND-RES}(T1, T2)} is well-formed, then the member typedef \tcode{type} denotes that type. \item Otherwise, if \tcode{common_type_t} is well-formed, then the From be443affbf06bfb14c2295311ed469896ae39d6c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 7 Aug 2019 17:59:27 -0700 Subject: [PATCH 263/312] [range.drop.while.overview] Add missing space in example. --- source/ranges.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ranges.tex b/source/ranges.tex index c4d5a821d2..e3e93ce442 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -4199,7 +4199,7 @@ auto is_invisible = [](const auto x) { return x == ' ' || x == '\t'; }; auto skip_ws = drop_while_view{source, is_invisible}; for (auto c : skip_ws) { - cout << c; // prints \tcode{hellothere} + cout << c; // prints \tcode{hello there} with no leading space } \end{codeblock} \end{example} From 1e09011ff3627db60ae10fa8fee2e2f5ef7dc5c9 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 18:13:55 -0700 Subject: [PATCH 264/312] [format.string.general] indexes -> indices --- source/utilities.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/utilities.tex b/source/utilities.tex index 1c791e1251..6dbb746e37 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19588,7 +19588,7 @@ If all \fmtgrammarterm{arg-id}s in a format string are omitted (including those in the \fmtgrammarterm{format-spec}, as interpreted by the corresponding \tcode{formatter} specialization), -argument indexes 0, 1, 2, \ldots{} will automatically be used in that order. +argument indices 0, 1, 2, \ldots{} will automatically be used in that order. If some \fmtgrammarterm{arg-id}s are omitted and some are present, the string is not a format string. \begin{note} From 71251ae592a49149faec1389ec85f22322aa0ba5 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 18:23:43 -0700 Subject: [PATCH 265/312] [format.string.std] Fix space collapse in example. Use commas rather than spaces to separate fields to more clearly show where whitespace is introduced by a field rather than between fields. --- source/utilities.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index 6dbb746e37..c82fc90201 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -19780,10 +19780,10 @@ \begin{codeblock} double inf = numeric_limits::infinity(); double nan = numeric_limits::quiet_NaN(); -string s0 = format("{0:} {0:+} {0:-} {0: }", 1); // value of \tcode{s0} is \tcode{"1 +1 1 1"} -string s1 = format("{0:} {0:+} {0:-} {0: }", -1); // value of \tcode{s1} is \tcode{"-1 -1 -1 -1"} -string s2 = format("{0:} {0:+} {0:-} {0: }", inf); // value of \tcode{s2} is \tcode{"inf +inf inf inf"} -string s3 = format("{0:} {0:+} {0:-} {0: }", nan); // value of \tcode{s3} is \tcode{"nan +nan nan nan"} +string s0 = format("{0:},{0:+},{0:-},{0: }", 1); // value of \tcode{s0} is \tcode{"1,+1,1, 1"} +string s1 = format("{0:},{0:+},{0:-},{0: }", -1); // value of \tcode{s1} is \tcode{"-1,-1,-1,-1"} +string s2 = format("{0:},{0:+},{0:-},{0: }", inf); // value of \tcode{s2} is \tcode{"inf,+inf,inf, inf"} +string s3 = format("{0:},{0:+},{0:-},{0: }", nan); // value of \tcode{s3} is \tcode{"nan,+nan,nan, nan"} \end{codeblock} \end{example} From ee719cb98574ade2c113a17a16e6af247913456b Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 18:30:01 -0700 Subject: [PATCH 266/312] [tab:format.type.float] Add "equivalent to" to remaining calls to to_chars for consistency. --- source/utilities.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index c82fc90201..aa0133372c 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -20001,11 +20001,11 @@ \topline \lhdr{Type} & \rhdr{Meaning} \\ \rowsep \tcode{a} & -If \fmtgrammarterm{precision} is specified, +If \fmtgrammarterm{precision} is specified, equivalent to \begin{codeblock} to_chars(first, last, value, chars_format::hex, precision) \end{codeblock} -where \tcode{precision} is the specified formatting precision; +where \tcode{precision} is the specified formatting precision; equivalent to \begin{codeblock} to_chars(first, last, value, chars_format::hex) \end{codeblock} @@ -20062,11 +20062,11 @@ \\ \rowsep % none & -If \fmtgrammarterm{precision} is specified, +If \fmtgrammarterm{precision} is specified, equivalent to \begin{codeblock} to_chars(first, last, value, chars_format::general, precision) \end{codeblock} -where \tcode{precision} is the specified formatting precision; +where \tcode{precision} is the specified formatting precision; equivalent to \begin{codeblock} to_chars(first, last, value) \end{codeblock} From add4ff3339153382b0e59d45e6bfeee4f923060a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 18:35:05 -0700 Subject: [PATCH 267/312] [time.format] Fix some minor issues (comma rather than period, moving a "Let" sentence out of a Remarks clause to a separate paragraph, using 'class' rather than 'typename'). --- source/time.tex | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/source/time.tex b/source/time.tex index 2c16370447..5de8c96bd3 100644 --- a/source/time.tex +++ b/source/time.tex @@ -10189,9 +10189,11 @@ \begin{itemdescr} \pnum -\remarks Let \tcode{f} be a \tcode{\exposid{local-time-format-t}} object passed to \tcode{formatter::format}. + +\pnum +\remarks If \tcode{\%Z} is used, it is replaced with \tcode{*f.abbrev} if \tcode{f.abbrev} is not a null pointer value. @@ -10200,7 +10202,7 @@ an exception of type \tcode{format_error} is thrown. If \tcode{\%z} (or a modified variant of \tcode{\%z}) is used, it is formatted with the value of \tcode{*f.offset_sec} -if \tcode{f.offset_sec} is not a null pointer value, +if \tcode{f.offset_sec} is not a null pointer value. If \tcode{\%z} (or a modified variant of \tcode{\%z}) is used and \tcode{f.offset_sec} is a null pointer value, then an exception of type \tcode{format_error} is thrown. @@ -10211,7 +10213,7 @@ template struct formatter, charT> : formatter, charT> { - template + template typename FormatContext::iterator format(const chrono::zoned_time& tp, FormatContext& ctx); }; @@ -10220,7 +10222,7 @@ % FIXME: Decide how to index this. This template-id is a lie. \indexlibrary{\idxcode{format}!\idxcode{formatter}}% \begin{itemdecl} -template +template typename FormatContext::iterator format(const chrono::zoned_time& tp, FormatContext& ctx); \end{itemdecl} From d4b47a09e9089bc661c4ad6bb882a46f4aae92b6 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 18:38:26 -0700 Subject: [PATCH 268/312] [time.syn] Fix specifier order in declarations to match library style. Rename parameter 't' to 'hms' to make declaration and later description match. --- source/time.tex | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/source/time.tex b/source/time.tex index 5de8c96bd3..4a6a0e27ce 100644 --- a/source/time.tex +++ b/source/time.tex @@ -269,7 +269,7 @@ struct leap_second_info; template - leap_second_info get_leap_second_info(utc_time const& ut); + leap_second_info get_leap_second_info(const utc_time& ut); // \ref{time.clock.tai}, class \tcode{tai_clock} class tai_clock; @@ -705,7 +705,7 @@ template basic_ostream& - operator<<(basic_ostream& os, const hh_mm_ss& t); + operator<<(basic_ostream& os, const hh_mm_ss& hms); // \ref{time.12}, 12/24 hour functions constexpr bool is_am(const hours& h) noexcept; @@ -2804,7 +2804,7 @@ \indexlibrary{\idxcode{get_leap_second_info}}% \begin{itemdecl} template - leap_second_info get_leap_second_info(utc_time const& ut); + leap_second_info get_leap_second_info(const utc_time& ut); \end{itemdecl} \begin{itemdescr} @@ -7746,7 +7746,7 @@ namespace std::chrono { template class hh_mm_ss { public: - static unsigned constexpr fractional_width = @\seebelow@; + static constexpr unsigned fractional_width = @\seebelow@; using precision = @\seebelow@; constexpr hh_mm_ss() noexcept : hh_mm_ss{Duration::zero()} {} @@ -7795,7 +7795,7 @@ \rSec2[time.hms.members]{Members} \begin{itemdecl} -static unsigned constexpr fractional_width = @\seebelow@; +static constexpr unsigned fractional_width = @\seebelow@; \end{itemdecl} \begin{itemdescr} @@ -7979,7 +7979,7 @@ \begin{itemdecl} template basic_ostream& -operator<<(basic_ostream& os, hh_mm_ss const& hms); +operator<<(basic_ostream& os, const hh_mm_ss& hms); \end{itemdecl} \begin{itemdescr} From 550553189899e1687629827dbb3fbf9c401f5d96 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 18:40:49 -0700 Subject: [PATCH 269/312] [range.istream.iterator] Fix 'parent_' to the obviously-intended 'parent'. --- source/ranges.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ranges.tex b/source/ranges.tex index e3e93ce442..51c5981472 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -5717,7 +5717,7 @@ \begin{itemdescr} \pnum \effects -Initializes \tcode{parent_} with \tcode{addressof(parent_)}. +Initializes \tcode{parent_} with \tcode{addressof(parent)}. \end{itemdescr} \begin{itemdecl} From 791a19a1d206c77b97e7725aa9a8ea779bf94d7a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:08:16 -0700 Subject: [PATCH 270/312] [chrono], [iostreams], [support] Fix 'template <' and 'typename T' to the conventional 'template<' and 'class T' throughout the library. --- source/iostreams.tex | 18 +++++++++--------- source/support.tex | 6 +++--- source/time.tex | 8 ++++---- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/source/iostreams.tex b/source/iostreams.tex index e3566545ed..49bbc7e6bf 100644 --- a/source/iostreams.tex +++ b/source/iostreams.tex @@ -8216,15 +8216,15 @@ explicit basic_istringstream( basic_string&& s, ios_base::openmode which = ios_base::in); - template + template basic_istringstream( const basic_string& s, const Allocator& a) : basic_istringstream(s, ios_base::in, a) {} - template + template basic_istringstream( const basic_string& s, ios_base::openmode which, const Allocator& a); - template + template explicit basic_istringstream( const basic_string& s, ios_base::openmode which = ios_base::in); @@ -8540,15 +8540,15 @@ explicit basic_ostringstream( basic_string&& s, ios_base::openmode which = ios_base::out); - template + template basic_ostringstream( const basic_string& s, const Allocator& a) : basic_ostringstream(s, ios_base::out, a) {} - template + template basic_ostringstream( const basic_string& s, ios_base::openmode which, const Allocator& a); - template + template explicit basic_ostringstream( const basic_string& s, ios_base::openmode which = ios_base::out); @@ -8872,15 +8872,15 @@ explicit basic_stringstream( basic_string&& s, ios_base::openmode which = ios_base::out | ios_base::in); - template + template basic_stringstream( const basic_string& s, const Allocator& a) : basic_stringstream(s, ios_base::out | ios_base::in, a) {} - template + template basic_stringstream( const basic_string& s, ios_base::openmode which, const Allocator& a); - template + template explicit basic_stringstream( const basic_string& s, ios_base::openmode which = ios_base::out | ios_base::in); diff --git a/source/support.tex b/source/support.tex index 46523526ae..d2a64ecba8 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4712,7 +4712,7 @@ \rSec2[cmp.concept]{Concept \tcode{three_way_comparable}} \begin{codeblock} -template +template concept @\placeholder{compares-as}@ = // \expos same_as, Cat>; @@ -4759,7 +4759,7 @@ \indexlibrary{\idxcode{three_way_comparable}}% \begin{codeblock} -template +template concept three_way_comparable = @\placeholder{weakly-equality-comparable-with}@ && (!convertible_to || @\placeholder{partially-ordered-with}@) && @@ -4802,7 +4802,7 @@ \indexlibrary{\idxcode{three_way_comparable_with}}% \begin{codeblock} -template +template concept three_way_comparable_with = @\placeholder{weakly-equality-comparable-with}@ && (!convertible_to || @\placeholder{partially-ordered-with}@) && diff --git a/source/time.tex b/source/time.tex index 4a6a0e27ce..77e52cdf99 100644 --- a/source/time.tex +++ b/source/time.tex @@ -268,7 +268,7 @@ struct leap_second_info; - template + template leap_second_info get_leap_second_info(const utc_time& ut); // \ref{time.clock.tai}, class \tcode{tai_clock} @@ -2803,7 +2803,7 @@ \indexlibrary{\idxcode{get_leap_second_info}}% \begin{itemdecl} -template +template leap_second_info get_leap_second_info(const utc_time& ut); \end{itemdecl} @@ -7744,7 +7744,7 @@ \begin{codeblock} namespace std::chrono { - template class hh_mm_ss { + template class hh_mm_ss { public: static constexpr unsigned fractional_width = @\seebelow@; using precision = @\seebelow@; @@ -7977,7 +7977,7 @@ \rSec2[time.hms.nonmembers]{Non-members} \begin{itemdecl} -template +template basic_ostream& operator<<(basic_ostream& os, const hh_mm_ss& hms); \end{itemdecl} From ac72157b97d4b7b85ddb7ca412b5a4ee1806614d Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:11:57 -0700 Subject: [PATCH 271/312] [cmp.object] Add missing template-head to function description. --- source/support.tex | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/support.tex b/source/support.tex index d2a64ecba8..20f559db64 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4906,6 +4906,8 @@ when the header \tcode{} is included. \begin{itemdecl} +template + requires three_way_comparable_with || @\placeholdernc{BUILTIN-PTR-THREE-WAY}@(T, U) constexpr auto operator()(T&& t, U&& u) const; \end{itemdecl} From 2f69e59a2e8d4a01941d94f786c6b157c462be1d Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:15:05 -0700 Subject: [PATCH 272/312] [type.index.members] Missing edit from P1614R2: Remove description of type_index operator!=. --- source/utilities.tex | 5 ----- 1 file changed, 5 deletions(-) diff --git a/source/utilities.tex b/source/utilities.tex index aa0133372c..ebadbde09a 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -18748,11 +18748,6 @@ \returns \tcode{*target == *rhs.target}. \end{itemdescr} -\begin{itemdescr} -\pnum -\returns \tcode{*target != *rhs.target}. -\end{itemdescr} - \indexlibrarymember{operator<}{type_index}% \begin{itemdecl} bool operator<(const type_index& rhs) const noexcept; From 66ac732a138501db964323b4b55f7d2de95a110c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:17:18 -0700 Subject: [PATCH 273/312] [time.cal.day.nonmembers] 'onstexpr' -> 'constexpr' --- source/time.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/time.tex b/source/time.tex index 77e52cdf99..4acc34d988 100644 --- a/source/time.tex +++ b/source/time.tex @@ -3882,7 +3882,7 @@ \indexlibrarymember{operator<=>}{day}% \begin{itemdecl} -onstexpr strong_ordering operator<=>(const day& x, const day& y) noexcept; +constexpr strong_ordering operator<=>(const day& x, const day& y) noexcept; \end{itemdecl} \begin{itemdescr} From b050fd474f11441942c88ef69b8622c8036656ac Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:26:09 -0700 Subject: [PATCH 274/312] [re.submatch.op] Fix inconsistency between declaration and description of sub_match operator<=>: remove 'constexpr' from declaration, and change return type in definition from 'bool' to 'auto'. --- source/regex.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/regex.tex b/source/regex.tex index cd50eac125..a9b0dbb6f2 100644 --- a/source/regex.tex +++ b/source/regex.tex @@ -298,7 +298,7 @@ template bool operator==(const sub_match& lhs, const sub_match& rhs); template - constexpr auto operator<=>(const sub_match& lhs, const sub_match& rhs); + auto operator<=>(const sub_match& lhs, const sub_match& rhs); template bool operator==( @@ -1808,7 +1808,7 @@ \indexlibrarymember{sub_match}{operator<=>}% \begin{itemdecl} template - bool operator<=>(const sub_match& lhs, const sub_match& rhs); + auto operator<=>(const sub_match& lhs, const sub_match& rhs); \end{itemdecl} \begin{itemdescr} From 1335e42809151ecfdb671ea2aea1dab0c8d5db53 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:33:48 -0700 Subject: [PATCH 275/312] [iterator.concept.sizedsentinel] Avoid potential ambiguity between inclusive and exclusive "or" by using "and/or". --- source/iterators.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/iterators.tex b/source/iterators.tex index 9e95e92656..62444e1e1d 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1585,7 +1585,7 @@ Pursuant to \ref{namespace.std}, users may specialize \tcode{disable_sized_sentinel} for cv-unqualified non-array object types \tcode{S} and \tcode{I} -if either \tcode{S} or \tcode{I} is a program-defined type. +if \tcode{S} and/or \tcode{I} is a program-defined type. Such specializations shall be usable in constant expressions\iref{expr.const} and have type \tcode{const bool}. From 94f50676e8ac62acd3ef4a5c4c56ef62d61234c1 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:37:45 -0700 Subject: [PATCH 276/312] [range.sized] Fix misapplication of P1724R0: "non-array object" -> "program-defined". --- source/ranges.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/ranges.tex b/source/ranges.tex index 51c5981472..f17f887196 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -897,7 +897,7 @@ \remarks Pursuant to \ref{namespace.std}, users may specialize \tcode{disable_sized_range} -for cv-unqualified non-array object types. +for cv-unqualified program-defined types. Such specializations shall be usable in constant expressions\iref{expr.const} and have type \tcode{const bool}. From 7c9ed7b5fb7a1e4a22877e02ffe4a3908e95c163 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:39:29 -0700 Subject: [PATCH 277/312] [time.cal.ymd.members] Fix misapplication of P1724R0: `ld` -> `1d`. --- source/time.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/time.tex b/source/time.tex index 4acc34d988..a17ac52108 100644 --- a/source/time.tex +++ b/source/time.tex @@ -6160,7 +6160,7 @@ holding a count of days from the \tcode{sys_days} epoch to \tcode{*this} (a negative value if \tcode{*this} represents a date prior to the \tcode{sys_days} epoch). Otherwise, if \tcode{y_.ok() \&\& m_.ok()} is \tcode{true}, -returns \tcode{sys_days\{y_/m_/ld\} + (d_ - 1d)}. +returns \tcode{sys_days\{y_/m_/1d\} + (d_ - 1d)}. Otherwise the value returned is unspecified. \pnum From d88e22de42cc82dd7833723e0ed80506bd600e76 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:41:02 -0700 Subject: [PATCH 278/312] [numbers.syn] egmma -> egamma --- source/numerics.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/numerics.tex b/source/numerics.tex index edb32a16ef..7dbfdb9854 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -10508,7 +10508,7 @@ inline constexpr double sqrt2 = sqrt2_v; inline constexpr double sqrt3 = sqrt3_v; inline constexpr double inv_sqrt3 = inv_sqrt3_v; - inline constexpr double egmma = egamma_v; + inline constexpr double egamma = egamma_v; inline constexpr double phi = phi_v; } \end{codeblock} From f943a210ccf955ad386f9d13c63988695619d814 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:48:00 -0700 Subject: [PATCH 279/312] [atomics] Fix missing italics in 'wait(integral, ...)' --- source/atomics.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/atomics.tex b/source/atomics.tex index bcff1c26d8..5141b6a976 100644 --- a/source/atomics.tex +++ b/source/atomics.tex @@ -1150,7 +1150,7 @@ bool compare_exchange_strong(@\placeholder{integral}@&, @\placeholder{integral}@, memory_order = memory_order_seq_cst) const noexcept; - void wait(integral, memory_order = memory_order::seq_cst) const noexcept; + void wait(@\placeholdernc{integral}@, memory_order = memory_order::seq_cst) const noexcept; void notify_one() noexcept; void notify_all() noexcept; @@ -2080,8 +2080,8 @@ @\placeholdernc{integral}@ fetch_xor(@\placeholdernc{integral}@, memory_order = memory_order::seq_cst) volatile noexcept; @\placeholdernc{integral}@ fetch_xor(@\placeholdernc{integral}@, memory_order = memory_order::seq_cst) noexcept; - void wait(integral, memory_order = memory_order::seq_cst) const volatile noexcept; - void wait(integral, memory_order = memory_order::seq_cst) const noexcept; + void wait(@\placeholdernc{integral}@, memory_order = memory_order::seq_cst) const volatile noexcept; + void wait(@\placeholdernc{integral}@, memory_order = memory_order::seq_cst) const noexcept; void notify_one() volatile noexcept; void notify_one() noexcept; void notify_all() volatile noexcept; From 1b2bfda98c20ecd71a35b7321662f8f976134793 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:51:39 -0700 Subject: [PATCH 280/312] [atomic] Remove invalid trailing 'const' from non-member function atomic_flag_notify_all. --- source/atomics.tex | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/source/atomics.tex b/source/atomics.tex index 5141b6a976..016213c9e5 100644 --- a/source/atomics.tex +++ b/source/atomics.tex @@ -280,8 +280,8 @@ bool, memory_order) noexcept; void atomic_flag_notify_one(volatile atomic_flag*) noexcept; void atomic_flag_notify_one(atomic_flag*) noexcept; - void atomic_flag_notify_all(volatile atomic_flag*) const noexcept; - void atomic_flag_notify_all(atomic_flag*) const noexcept; + void atomic_flag_notify_all(volatile atomic_flag*) noexcept; + void atomic_flag_notify_all(atomic_flag*) noexcept; #define ATOMIC_FLAG_INIT @\seebelow@ // \ref{atomics.fences}, fences @@ -2650,8 +2650,8 @@ bool, memory_order) noexcept; void atomic_flag_notify_one(volatile atomic_flag*) noexcept; void atomic_flag_notify_one(atomic_flag*) noexcept; - void atomic_flag_notify_all(volatile atomic_flag*) const noexcept; - void atomic_flag_notify_all(atomic_flag*) const noexcept; + void atomic_flag_notify_all(volatile atomic_flag*) noexcept; + void atomic_flag_notify_all(atomic_flag*) noexcept; #define ATOMIC_FLAG_INIT @\seebelow@ } @@ -2820,8 +2820,8 @@ \end{itemdescr} \begin{itemdecl} -void atomic_flag_notify_all(volatile atomic_flag* object) const noexcept; -void atomic_flag_notify_all(atomic_flag* object) const noexcept; +void atomic_flag_notify_all(volatile atomic_flag* object) noexcept; +void atomic_flag_notify_all(atomic_flag* object) noexcept; void atomic_flag::notify_all() volatile noexcept; void atomic_flag::notify_all() noexcept; \end{itemdecl} From afed449f0fa1324001260c9d658f6d05da90a9f9 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:55:21 -0700 Subject: [PATCH 281/312] [thread.sema.cnt] "Class" -> "Class template" in description of a class template. --- source/threads.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/threads.tex b/source/threads.tex index 3776e2f49a..3e751b949a 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -4745,7 +4745,7 @@ \end{codeblock} \pnum -Class \tcode{counting_semaphore} maintains an internal counter +Class template \tcode{counting_semaphore} maintains an internal counter that is initialized when the semaphore is created. The counter is decremented when a thread acquires the semaphore, and is incremented when a thread releases the semaphore. From 7445919de1bcf4780693b7870a245486839587ea Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 19:58:05 -0700 Subject: [PATCH 282/312] [thread.latch] Remove italics from non-definition of "latch". --- source/threads.tex | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/source/threads.tex b/source/threads.tex index 3e751b949a..98049cf8e0 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -4919,9 +4919,8 @@ \rSec2[thread.latch]{Latches} -\indextext{latch|see{thread, latch}}% \pnum -A \defnx{latch}{thread!latch} is a thread coordination mechanism +A latch is a thread coordination mechanism that allows any number of threads to block until an expected number of threads arrive at the latch (via the \tcode{count_down} function). From 224384ab43e4e9829eee5d97f09218850026d342 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 20:05:07 -0700 Subject: [PATCH 283/312] [atomic] Consistently order atomic<...> and atomic_ref<...> definitions: keep compare_exchange and fetch_* operations together because the latter are a particular form of compare_exchange operation. --- source/atomics.tex | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/source/atomics.tex b/source/atomics.tex index 016213c9e5..4715432731 100644 --- a/source/atomics.tex +++ b/source/atomics.tex @@ -1150,10 +1150,6 @@ bool compare_exchange_strong(@\placeholder{integral}@&, @\placeholder{integral}@, memory_order = memory_order_seq_cst) const noexcept; - void wait(@\placeholdernc{integral}@, memory_order = memory_order::seq_cst) const noexcept; - void notify_one() noexcept; - void notify_all() noexcept; - @\placeholdernc{integral}@ fetch_add(@\placeholdernc{integral}@, memory_order = memory_order_seq_cst) const noexcept; @\placeholdernc{integral}@ fetch_sub(@\placeholdernc{integral}@, @@ -1165,6 +1161,10 @@ @\placeholdernc{integral}@ fetch_xor(@\placeholdernc{integral}@, memory_order = memory_order_seq_cst) const noexcept; + void wait(@\placeholdernc{integral}@, memory_order = memory_order::seq_cst) const noexcept; + void notify_one() noexcept; + void notify_all() noexcept; + @\placeholdernc{integral}@ operator++(int) const noexcept; @\placeholdernc{integral}@ operator--(int) const noexcept; @\placeholdernc{integral}@ operator++() const noexcept; @@ -1281,15 +1281,15 @@ bool compare_exchange_strong(@\placeholder{floating-point}@&, @\placeholdernc{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; - void wait(@\placeholdernc{floating-point}@, memory_order = memory_order::seq_cst) const noexcept; - void notify_one() noexcept; - void notify_all() noexcept; - @\placeholder{floating-point}@ fetch_add(@\placeholdernc{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; @\placeholder{floating-point}@ fetch_sub(@\placeholdernc{floating-point}@, memory_order = memory_order_seq_cst) const noexcept; + void wait(@\placeholdernc{floating-point}@, memory_order = memory_order::seq_cst) const noexcept; + void notify_one() noexcept; + void notify_all() noexcept; + @\placeholder{floating-point}@ operator+=(@\placeholder{floating-point}@) const noexcept; @\placeholder{floating-point}@ operator-=(@\placeholder{floating-point}@) const noexcept; }; @@ -1382,13 +1382,13 @@ bool compare_exchange_strong(T*&, T*, memory_order = memory_order_seq_cst) const noexcept; + T* fetch_add(difference_type, memory_order = memory_order_seq_cst) const noexcept; + T* fetch_sub(difference_type, memory_order = memory_order_seq_cst) const noexcept; + void wait(T*, memory_order = memory_order::seq_cst) const noexcept; void notify_one() noexcept; void notify_all() noexcept; - T* fetch_add(difference_type, memory_order = memory_order_seq_cst) const noexcept; - T* fetch_sub(difference_type, memory_order = memory_order_seq_cst) const noexcept; - T* operator++(int) const noexcept; T* operator--(int) const noexcept; T* operator++() const noexcept; From 63928eee09bc0b1adddd10b1781d139eb60628c0 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sat, 10 Aug 2019 20:31:45 -0700 Subject: [PATCH 284/312] [thread.jthread.cons] Revert editorial change from "if INVOKE(...) is a valid expression" to checking is_invocable_v. It's unclear that this is exactly equivalent, and it seems less clear, as the "INVOKE(...)" expression is used again a couple of paragraphs later. --- source/threads.tex | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/source/threads.tex b/source/threads.tex index 98049cf8e0..0c5eb65ed7 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -1433,12 +1433,18 @@ \begin{itemdescr} \pnum \requires -\tcode{F} and each $\tcode{T}_i$ in \tcode{Args} shall meet the +\tcode{F} and each $\tcode{T}_i$ in \tcode{Args} meet the \oldconcept{MoveConstructible} requirements. Either -\tcode{is_invocable_v, stop_token, decay_t...>} is true, -or -\tcode{is_invocable_v, decay_t...>} is true. +\begin{codeblock} +@\placeholdernc{INVOKE}@(@\placeholdernc{decay-copy}@(std::forward(f)), get_stop_token(), + @\placeholdernc{decay-copy}@(std::forward(args))...) +\end{codeblock} +is a valid expression or +\begin{codeblock} +@\placeholdernc{INVOKE}@(@\placeholdernc{decay-copy}@(std::forward(f)), @\placeholdernc{decay-copy}@(std::forward(args))...) +\end{codeblock} +is a valid expression. \pnum \constraints @@ -1449,21 +1455,15 @@ Initializes \tcode{ssource} and constructs an object of type \tcode{jthread}. The new thread of execution executes - \tcode{% - \placeholdernc{INVOKE}(\brk{}% - \placeholdernc{decay-copy}(\brk{}% - std::forward(f)), - get_stop_token(), - \placeholdernc{decay-copy}(\brk{}% - std::forward\brk{}(\brk{}args))...)} +\begin{codeblock} +@\placeholdernc{INVOKE}@(@\placeholdernc{decay-copy}@(std::forward(f)), get_stop_token(), + @\placeholdernc{decay-copy}@(std::forward(args))...) +\end{codeblock} if that expression is well-formed, otherwise - \tcode{% - \placeholdernc{INVOKE}(\brk{}% - \placeholdernc{decay-copy}(\brk{}% - std::forward\brk{}\brk{}(f)), - \placeholdernc{decay-copy}(\brk{}% - std::forward(\brk{}args))...)} +\begin{codeblock} +@\placeholdernc{INVOKE}@(@\placeholdernc{decay-copy}@(std::forward(f)), @\placeholdernc{decay-copy}@(std::forward(args))...) +\end{codeblock} with the calls to \tcode{\placeholder{decay-copy}} being evaluated in the constructing thread. Any return value from this invocation is ignored. From 8644a2ce2faa6e979e224f069e4ca48238ea8570 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 12 Aug 2019 16:47:06 -0700 Subject: [PATCH 285/312] [atomics.syn], [atomics.flag] Clean up presentation around ATOMIC_FLAG_INIT. * Add some vertical whitespace in description of atomic_flag operations. * Reorder ATOMIC_FLAG_INIT earlier in synopsis for consistency. * Add proper item description for ATOMIC_FLAG_INIT. * Remove repetition of declarations of atomic_flag non-member functions and the ATOMIC_FLAG_INIT macro from [atomics.flag]. --- source/atomics.tex | 45 +++++++++++++++------------------------------ 1 file changed, 15 insertions(+), 30 deletions(-) diff --git a/source/atomics.tex b/source/atomics.tex index 4715432731..101a09b4e6 100644 --- a/source/atomics.tex +++ b/source/atomics.tex @@ -56,6 +56,9 @@ // \ref{atomics.types.pointer}, partial specialization for pointers template struct atomic; + // \ref{atomics.types.operations}, initialization + #define ATOMIC_VAR_INIT(value) @\seebelow@ + // \ref{atomics.nonmembers}, non-member functions template bool atomic_is_lock_free(const volatile atomic*) noexcept; @@ -200,9 +203,6 @@ template void atomic_notify_all(atomic*); - // \ref{atomics.types.operations}, initialization - #define ATOMIC_VAR_INIT(value) @\seebelow@ - // \ref{atomics.alias}, type aliases using atomic_bool = atomic; using atomic_char = atomic; @@ -260,6 +260,9 @@ // \ref{atomics.flag}, flag type and operations struct atomic_flag; + + #define ATOMIC_FLAG_INIT @\seebelow@ + bool atomic_flag_test(const volatile atomic_flag*) noexcept; bool atomic_flag_test(const atomic_flag*) noexcept; bool atomic_flag_test_explicit(const volatile atomic_flag*, memory_order) noexcept; @@ -272,6 +275,7 @@ void atomic_flag_clear(atomic_flag*) noexcept; void atomic_flag_clear_explicit(volatile atomic_flag*, memory_order) noexcept; void atomic_flag_clear_explicit(atomic_flag*, memory_order) noexcept; + void atomic_flag_wait(const volatile atomic_flag*, bool) noexcept; void atomic_flag_wait(const atomic_flag*, bool) noexcept; void atomic_flag_wait_explicit(const volatile atomic_flag*, @@ -282,7 +286,6 @@ void atomic_flag_notify_one(atomic_flag*) noexcept; void atomic_flag_notify_all(volatile atomic_flag*) noexcept; void atomic_flag_notify_all(atomic_flag*) noexcept; - #define ATOMIC_FLAG_INIT @\seebelow@ // \ref{atomics.fences}, fences extern "C" void atomic_thread_fence(memory_order) noexcept; @@ -2628,32 +2631,6 @@ atomic_flag& operator=(const atomic_flag&) = delete; atomic_flag& operator=(const atomic_flag&) volatile = delete; }; - - bool atomic_flag_test(const volatile atomic_flag*) noexcept; - bool atomic_flag_test(const atomic_flag*) noexcept; - bool atomic_flag_test_explicit(const volatile atomic_flag*, memory_order) noexcept; - bool atomic_flag_test_explicit(const atomic_flag*, memory_order) noexcept; - bool atomic_flag_test_and_set(volatile atomic_flag*) noexcept; - bool atomic_flag_test_and_set(atomic_flag*) noexcept; - bool atomic_flag_test_and_set_explicit(volatile atomic_flag*, memory_order) noexcept; - bool atomic_flag_test_and_set_explicit(atomic_flag*, memory_order) noexcept; - void atomic_flag_clear(volatile atomic_flag*) noexcept; - void atomic_flag_clear(atomic_flag*) noexcept; - void atomic_flag_clear_explicit(volatile atomic_flag*, memory_order) noexcept; - void atomic_flag_clear_explicit(atomic_flag*, memory_order) noexcept; - - void atomic_flag_wait(const volatile atomic_flag*, bool) noexcept; - void atomic_flag_wait(const atomic_flag*, bool) noexcept; - void atomic_flag_wait_explicit(const volatile atomic_flag*, - bool, memory_order) noexcept; - void atomic_flag_wait_explicit(const atomic_flag*, - bool, memory_order) noexcept; - void atomic_flag_notify_one(volatile atomic_flag*) noexcept; - void atomic_flag_notify_one(atomic_flag*) noexcept; - void atomic_flag_notify_all(volatile atomic_flag*) noexcept; - void atomic_flag_notify_all(atomic_flag*) noexcept; - - #define ATOMIC_FLAG_INIT @\seebelow@ } \end{codeblock} @@ -2668,7 +2645,14 @@ The \tcode{atomic_flag} type is a standard-layout struct. It has a trivial default constructor and a trivial destructor. +\indexlibrary{\idxcode{ATOMIC_FLAG_INIT}}% +\begin{itemdecl} +#define ATOMIC_FLAG_INIT @\seebelow@ +\end{itemdecl} + +\begin{itemdescr} \pnum +\remarks The macro \tcode{ATOMIC_FLAG_INIT} shall be defined in such a way that it can be used to initialize an object of type \tcode{atomic_flag} to the clear state. The macro can be used in the form: \begin{codeblock} @@ -2678,6 +2662,7 @@ For a complete static-duration object, that initialization shall be static. Unless initialized with \tcode{ATOMIC_FLAG_INIT}, it is unspecified whether an \tcode{atomic_flag} object has an initial state of set or clear. +\end{itemdescr} \indexlibrary{\idxcode{atomic_flag_test}}% \indexlibrary{\idxcode{atomic_flag_test_explicit}}% From 2c1ab9775cc53e848a1efff4f9976455538994d4 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 12 Aug 2019 16:56:24 -0700 Subject: [PATCH 286/312] [string.erasure] Following the guidance given by P0980R1, and after consultation with LWG chair, mark the std::erase and std::erase_if overloads for std::basic_string as constexpr in addition to those explicitly called out by the wording paper. --- source/strings.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/strings.tex b/source/strings.tex index 302bec10ee..612d8236df 100644 --- a/source/strings.tex +++ b/source/strings.tex @@ -639,9 +639,9 @@ // \ref{string.erasure}, erasure template - void erase(basic_string& c, const U& value); + constexpr void erase(basic_string& c, const U& value); template - void erase_if(basic_string& c, Predicate pred); + constexpr void erase_if(basic_string& c, Predicate pred); // \tcode{basic_string} typedef names using string = basic_string; @@ -3517,7 +3517,7 @@ \indexlibrary{\idxcode{erase}!\idxcode{basic_string}}% \begin{itemdecl} template - void erase(basic_string& c, const U& value); + constexpr void erase(basic_string& c, const U& value); \end{itemdecl} \begin{itemdescr} @@ -3529,7 +3529,7 @@ \indexlibrary{\idxcode{erase_if}!\idxcode{basic_string}}% \begin{itemdecl} template - void erase_if(basic_string& c, Predicate pred); + constexpr void erase_if(basic_string& c, Predicate pred); \end{itemdecl} \begin{itemdescr} From 009d46f9b057a635383dce8bbcad121c86f1d306 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 13 Aug 2019 18:16:48 -0700 Subject: [PATCH 287/312] [over.match.class.deduct] Replace "therefrom" with a more common construction, and more directly talk about the class template for which we are ultimately performing deduction. --- source/overloading.tex | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/overloading.tex b/source/overloading.tex index f8a1c78a31..57ba9ff7a2 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1657,9 +1657,9 @@ (considering initializer-list constructors) is omitted if the initializer list consists of a single expression of type \cv{}~\tcode{U}, -where \tcode{U} is a specialization of the class template -for which the placeholder names a specialization or -a class derived therefrom. +where \tcode{U} is, or is derived from, +a specialization of the class template +directly or indirectly named by the placeholder. If the function or function template was generated from a constructor or \grammarterm{deduction-guide} that had an \grammarterm{explicit-specifier}, From ac9189f351bf0407a31968199c22274ff41fe9e7 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 13 Aug 2019 18:21:14 -0700 Subject: [PATCH 288/312] [diff.cpp17.class] Remove redundant cross-reference. --- source/compatibility.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/compatibility.tex b/source/compatibility.tex index e1478041f9..0dab3a71d1 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -2037,7 +2037,7 @@ \diffref{class.copy.elision} \change -A function returning an implicitly movable entity\iref{class.copy.elision} +A function returning an implicitly movable entity may invoke a constructor taking an rvalue reference to a type different from that of the returned expression. Function and catch-clause parameters can be thrown using move constructors. From ba642aa699973f21613cbe3e6a0b6d9c1e0f2e6a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 14 Aug 2019 16:16:48 -0700 Subject: [PATCH 289/312] [ostream] Add back the comments that P1423R3 requested, but now as a note. --- source/iostreams.tex | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/source/iostreams.tex b/source/iostreams.tex index 49bbc7e6bf..52b9db824e 100644 --- a/source/iostreams.tex +++ b/source/iostreams.tex @@ -5927,6 +5927,12 @@ rethrows the exception without completing its actions, otherwise it does not throw anything and treat as an error. +\pnum +\begin{note} +The deleted overloads of \tcode{operator<<} +prevent formatting characters as integers and strings as pointers. +\end{note} + \rSec4[ostream.cons]{Constructors} \indexlibrary{\idxcode{basic_ostream}!constructor}% From 37ccff2c0e9be3a62fcd85b55e4d05c2b312335f Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 14 Aug 2019 16:48:00 -0700 Subject: [PATCH 290/312] [dcl.fct.def.default] Clarify that the rule concerning how the type of a defaulted function can differ from the type of an implicitly-declared function only applies to the functions that are implicitly declared. --- source/declarations.tex | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index 957a79cb52..69ab1f022a 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -6067,9 +6067,8 @@ \item not have default arguments. \end{itemize} -% FIXME: there's no such thing as an implicit declaration of a comparison operator \pnum -The type \tcode{T}$_1$ of an explicitly defaulted function \tcode{F} +The type \tcode{T}$_1$ of an explicitly defaulted special member function \tcode{F} is allowed to differ from the type \tcode{T}$_2$ it would have had if it were implicitly declared, as follows: \begin{itemize} From 42ee105f5804a74bb15960944ee7fe1cd4420e04 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 14 Aug 2019 16:56:23 -0700 Subject: [PATCH 291/312] [over.match.class.deduct] Clarify that an incomplete class type is never treated as being an aggregate. --- source/overloading.tex | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/overloading.tex b/source/overloading.tex index 57ba9ff7a2..c95026427c 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1548,7 +1548,8 @@ of the \grammarterm{deduction-guide}. \end{itemize} \end{itemize} -In addition, if \tcode{C} satisfies the conditions for an aggregate class +In addition, if \tcode{C} is defined +and its definition satisfies the conditions for an aggregate class with the assumption that any dependent base class has no virtual functions and no virtual base classes, and the initializer is a non-empty \grammarterm{braced-init-list} or From fce4ac9764e10042bd8d0bb4152e83d697c8bdae Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 14 Aug 2019 17:02:06 -0700 Subject: [PATCH 292/312] [dcl.typedef] Split paragraph on typedef name for linkage into two parts (how you know when you have one, and the restrictions on types that have one). --- source/declarations.tex | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/declarations.tex b/source/declarations.tex index 69ab1f022a..7eeb4109d0 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -738,6 +738,8 @@ typedef decltype([]{}) C; // the closure type has no name for linkage purposes \end{codeblock} \end{example} + +\pnum An unnamed class with a typedef name for linkage purposes shall not \begin{itemize} \item From 90a29c08bc80091c093937a7d96ce28df5ceee44 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 14 Aug 2019 17:21:15 -0700 Subject: [PATCH 293/312] [conv.qual] Avoid bouncing back and forth between subscripts and regular scripts for T1 and T2, and add missing definition for cv^j_i and P^j_i. --- source/expressions.tex | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index 3a6ef2060e..0504ea11b6 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -730,7 +730,7 @@ \pnum \indextext{type!similar|see{similar types}}% -Two types $\tcode{T}_1$ and $\tcode{T}_2$ are \defnx{similar}{similar types} if +Two types \tcode{T1} and \tcode{T2} are \defnx{similar}{similar types} if they have cv-decompositions with the same $n$ such that corresponding $P_i$ components are either the same or one is ``array of $N_i$'' and the other is ``array of unknown bound of'', @@ -752,9 +752,11 @@ or the resulting $P^3_i$ is different from $P^1_i$ or $P^2_i$, then \tcode{const} is added to every $\cv{}^3_k$ for $0 < k < i$. \end{itemize} -A prvalue of type $\tcode{T}_1$ -can be converted to type $\tcode{T}_2$ -if the cv-combined type of $\tcode{T}_1$ and $\tcode{T}_2$ is $\tcode{T}_2$. +where $\cv{}^j_i$ and $P^j_i$ are the components of +the cv-decomposition of $\tcode{T}j$. +A prvalue of type \tcode{T1} +can be converted to type \tcode{T2} +if the cv-combined type of \tcode{T1} and \tcode{T2} is \tcode{T2}. \begin{note} If a program could assign a pointer of type \tcode{T**} to a pointer of type \tcode{const} \tcode{T**} (that is, if line \#1 below were From 03bcd8d3e5ece969af846e23cd451549185fdac4 Mon Sep 17 00:00:00 2001 From: Jens Maurer Date: Thu, 8 Aug 2019 01:07:54 +0200 Subject: [PATCH 294/312] [expr.ass] Remove mention of class types. --- source/expressions.tex | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/source/expressions.tex b/source/expressions.tex index 0504ea11b6..aad8148bf8 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -6686,23 +6686,10 @@ \pnum \indextext{assignment!conversion by}% -If the left operand is not of class type, the expression is implicitly +The expression is implicitly converted\iref{conv} to the cv-unqualified type of the left operand. -\pnum -\indextext{class object!assignment to}% -\indextext{type!incomplete}% -If the left operand is of class type, the class shall be complete. -Assignment to objects of a class is defined by the copy/move assignment -operator~(\ref{class.copy.assign}, \ref{over.ass}). - -\pnum -\begin{note} -For class objects, assignment is not in general the same as -initialization~(\ref{dcl.init}, \ref{class.copy.ctor}, \ref{class.copy.assign}, \ref{class.init}). -\end{note} - \pnum \indextext{reference!assignment to}% When the left operand of an assignment operator @@ -6712,8 +6699,7 @@ \pnum A simple assignment whose left operand is of -a \tcode{volatile}-qualified non-class type -is deprecated\iref{depr.volatile.type} +a \tcode{volatile}-qualified type is deprecated\iref{depr.volatile.type} unless the assignment is either a discarded-value expression or appears in an unevaluated context. From 173905005c2c419548418239518db72bfda9dd9a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 14 Aug 2019 17:48:53 -0700 Subject: [PATCH 295/312] [dcl.attr.nodiscard] Make the constructor case better parallel the function case by duplicating the implied "through a reachable declaration" wording. --- source/declarations.tex | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/declarations.tex b/source/declarations.tex index 7eeb4109d0..672858721a 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -9026,7 +9026,8 @@ \item an explicit type conversion~(\ref{expr.static.cast}, \ref{expr.cast}, \ref{expr.type.conv}) - that constructs an object through a constructor declared \tcode{nodiscard}, or + that constructs an object through + a constructor declared \tcode{nodiscard} in a reachable declaration, or that initializes an object of a nodiscard type. \end{itemize} From 0c49847a4438921651e10ffab840e1f4ed443c69 Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Wed, 7 Aug 2019 12:35:55 -0600 Subject: [PATCH 296/312] [iterator.concept.winc], [thread.sema.cnt] Use new \expos command --- source/iterators.tex | 4 ++-- source/threads.tex | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index 62444e1e1d..423844c1d2 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1283,10 +1283,10 @@ \indexlibrary{\idxcode{weakly_incrementable}}% \begin{codeblock} template - inline constexpr bool @\placeholder{is-integer-like}@ = @\seebelow@; @\itcorr[-2]@ // exposition only + inline constexpr bool @\placeholder{is-integer-like}@ = @\seebelow@; @\itcorr[-2]@ // \expos template - inline constexpr bool @\placeholder{is-signed-integer-like}@ = @\seebelow@; @\itcorr[-2]@ // exposition only + inline constexpr bool @\placeholder{is-signed-integer-like}@ = @\seebelow@; @\itcorr[-2]@ // \expos template concept weakly_incrementable = diff --git a/source/threads.tex b/source/threads.tex index 0c5eb65ed7..4008063c68 100644 --- a/source/threads.tex +++ b/source/threads.tex @@ -4739,7 +4739,7 @@ bool try_acquire_until(const chrono::time_point& abs_time); private: - ptrdiff_t counter; // exposition only + ptrdiff_t counter; // \expos }; } \end{codeblock} From cb84c6aaff36b0023ae7a92294167a52ff195b5e Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Wed, 7 Aug 2019 12:37:48 -0600 Subject: [PATCH 297/312] Use \libconcept ...in or instead of \tcode --- source/iterators.tex | 10 ++++++---- source/ranges.tex | 28 +++++++++++++++++----------- source/support.tex | 2 +- source/utilities.tex | 8 ++++---- 4 files changed, 28 insertions(+), 20 deletions(-) diff --git a/source/iterators.tex b/source/iterators.tex index 423844c1d2..cace82470d 100644 --- a/source/iterators.tex +++ b/source/iterators.tex @@ -1389,11 +1389,13 @@ \pnum A type \tcode{I} is \defn{integer-like} -if it models \tcode{integral} or if it is an integer-class type. +if it models \tcode{\libconcept{integral}} or +if it is an integer-class type. A type \tcode{I} is \defn{signed-integer-like} -if it models \tcode{signed_integral} or if it is a signed-integer-class type. +if it models \tcode{\libconcept{signed_integral}} or +if it is a signed-integer-class type. A type \tcode{I} is \defn{unsigned-integer-like} -if it models \tcode{unsigned_integral} or +if it models \tcode{\libconcept{unsigned_integral}} or if it is an unsigned-integer-class type. \pnum @@ -1405,7 +1407,7 @@ \pnum Let \tcode{i} be an object of type \tcode{I}. When \tcode{i} is in the domain of both pre- and post-increment, \tcode{i} is said to be \term{incrementable}. -\tcode{I} models \tcode{weakly_incrementable} only if +\tcode{I} models \tcode{\libconcept{weakly_incrementable}} only if \begin{itemize} \item The expressions \tcode{++i} and \tcode{i++} have the same domain. diff --git a/source/ranges.tex b/source/ranges.tex index f17f887196..1c03d71922 100644 --- a/source/ranges.tex +++ b/source/ranges.tex @@ -317,11 +317,13 @@ \item Otherwise, if \tcode{E} is an lvalue, \tcode{\placeholdernc{decay-copy}(E.begin())} - if it is a valid expression and its type \tcode{I} models \tcode{input_or_output_iterator}. + if it is a valid expression and its type \tcode{I} models + \libconcept{input_or_output_iterator}. \item Otherwise, \tcode{\placeholdernc{decay-copy}(begin(E))} if it is a - valid expression and its type \tcode{I} models \tcode{input_or_output_iterator} with overload + valid expression and its type \tcode{I} models + \libconcept{input_or_output_iterator} with overload resolution performed in a context that includes the declarations: \begin{codeblock} template void begin(T&&) = delete; @@ -409,7 +411,7 @@ \pnum \begin{note} Whenever \tcode{ranges::cbegin(E)} is a valid expression, its type models -\tcode{input_or_output_iterator}. +\libconcept{input_or_output_iterator}. \end{note} \rSec2[range.access.cend]{\tcode{ranges::cend}} @@ -442,11 +444,13 @@ \begin{itemize} \item If \tcode{E} is an lvalue, \tcode{\placeholdernc{decay-copy}(E.rbegin())} - if it is a valid expression and its type \tcode{I} models \tcode{input_or_output_iterator}. + if it is a valid expression and its type \tcode{I} models + \libconcept{input_or_output_iterator}. \item Otherwise, \tcode{\placeholdernc{decay-copy}(rbegin(E))} if it is a valid - expression and its type \tcode{I} models \tcode{input_or_output_iterator} with overload + expression and its type \tcode{I} models + \libconcept{input_or_output_iterator} with overload resolution performed in a context that includes the declaration: \begin{codeblock} template void rbegin(T&&) = delete; @@ -471,7 +475,7 @@ \pnum \begin{note} Whenever \tcode{ranges::rbegin(E)} is a valid expression, its type models -\tcode{input_or_output_iterator}. +\libconcept{input_or_output_iterator}. \end{note} \rSec2[range.access.rend]{\tcode{ranges::rend}} @@ -540,7 +544,7 @@ \pnum \begin{note} Whenever \tcode{ranges::crbegin(E)} is a valid expression, its -type models \tcode{input_or_output_iterator}. +type models \libconcept{input_or_output_iterator}. \end{note} \rSec2[range.access.crend]{\tcode{ranges::crend}} @@ -670,7 +674,7 @@ \item Otherwise, if \tcode{ranges::begin(E)} is a valid expression whose type models - \tcode{contiguous_iterator}, + \libconcept{contiguous_iterator}, \tcode{to_address(ranges::begin(E))}. \item @@ -2820,10 +2824,12 @@ \item Let \tcode{C} denote the type \tcode{iterator_traits>::iterator_category}. -\item If \tcode{C} models \tcode{derived_from}, +\item If \tcode{C} models +\tcode{\libconcept{derived_from}}, then \tcode{iterator_category} denotes \tcode{bi\-directional_iterator_tag}. -\item Otherwise, if \tcode{C} models \tcode{derived_from}, +\item Otherwise, if \tcode{C} models +\tcode{\libconcept{derived_from}}, then \tcode{iterator_category} denotes \tcode{forward_iterator_tag}. \item Otherwise, \tcode{iterator_category} denotes \tcode{input_iterator_tag}. @@ -5593,7 +5599,7 @@ \rSec3[range.istream.overview]{Overview} \pnum -\tcode{basic_istream_view} models \tcode{input_range} and +\tcode{basic_istream_view} models \libconcept{input_range} and reads (using \tcode{operator>>}) successive elements from its corresponding input stream. diff --git a/source/support.tex b/source/support.tex index 20f559db64..dcd1a4129d 100644 --- a/source/support.tex +++ b/source/support.tex @@ -4021,7 +4021,7 @@ template using common_comparison_category_t = typename common_comparison_category::type; - // \ref{cmp.concept}, concept \tcode{three_way_comparable} + // \ref{cmp.concept}, concept \libconcept{three_way_comparable} template concept three_way_comparable = @\seebelow@; template diff --git a/source/utilities.tex b/source/utilities.tex index ebadbde09a..b80f3f3dc3 100644 --- a/source/utilities.tex +++ b/source/utilities.tex @@ -20232,7 +20232,7 @@ \pnum \expects -\tcode{Out} models \tcode{output_iterator}. +\tcode{Out} models \tcode{\libconcept{output_iterator}}. \pnum \effects @@ -20285,11 +20285,11 @@ \pnum \constraints -\tcode{Out} satisfies \tcode{output_iterator}. +\tcode{Out} satisfies \tcode{\libconcept{output_iterator}}. \pnum \expects -\tcode{Out} models \tcode{output_iterator}, and +\tcode{Out} models \tcode{\libconcept{output_iterator}}, and \tcode{formatter<}$\tcode{T}_i$\tcode{, charT>} meets the \newoldconcept{Formatter} requirements\iref{formatter.requirements} for each $\tcode{T}_i$ in \tcode{Args}. @@ -20733,7 +20733,7 @@ consisting of the formatting arguments and the output iterator. \pnum -\tcode{Out} shall model \tcode{output_iterator}. +\tcode{Out} shall model \tcode{\libconcept{output_iterator}}. \pnum \indexlibrary{\idxcode{format_context}}% From 14a2f7d42e9a30832e85534e56de7005a77299bc Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Fri, 9 Aug 2019 16:55:31 -0600 Subject: [PATCH 298/312] [basic.def.odr] Fix typos --- source/basic.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index 534cc8a3c7..a6126eb2aa 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -668,7 +668,7 @@ defined within each definition of \tcode{D} (including the closure types of \grammarterm{lambda-expression}{s}, but excluding entities defined within default arguments or -defualt template arguments of either \tcode{D} or +default template arguments of either \tcode{D} or an entity not defined within \tcode{D}). For each such entity and for \tcode{D} itself, the behavior is as if there is a single entity with a single definition, @@ -698,7 +698,7 @@ void h(bool cond, void (*p)() = []{}) { if (cond) h(false); } -} +}; \end{codeblock} If the definition of \tcode{f} appears in multiple translation units, From acbe5e429499d0eaf6c118f0bca4bbc26830bcaf Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Mon, 12 Aug 2019 12:07:06 -0600 Subject: [PATCH 299/312] [dcl.attr.nodiscard], [diff.cpp17.dcl.dcl] Fix grammar/usage --- source/compatibility.tex | 2 +- source/declarations.tex | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/source/compatibility.tex b/source/compatibility.tex index 0dab3a71d1..69ab2d722c 100644 --- a/source/compatibility.tex +++ b/source/compatibility.tex @@ -1927,7 +1927,7 @@ \diffref{dcl.typedef} \change Unnamed classes with a typedef name for linkage purposes -can only contain C-compatible constructs. +can contain only C-compatible constructs. \rationale Necessary for implementability. \effect Valid C++ 2017 code may be ill-formed in this International Standard. \begin{codeblock} diff --git a/source/declarations.tex b/source/declarations.tex index 672858721a..56eae8421a 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -8991,7 +8991,7 @@ in a function declaration or to the declaration of a class or enumeration. It shall appear at most once in each \grammarterm{attribute-list}. An \grammarterm{attribute-argument-clause} may be present -and, if present, it shall have the form: +and, if present, shall have the form: \begin{ncbnf} \terminal{(} string-literal \terminal{)} From 5aa019b19118973d99a2b2282d3f6264da81c9d8 Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Mon, 12 Aug 2019 12:13:20 -0600 Subject: [PATCH 300/312] [basic.def.odr] Clean up new bullets --- source/basic.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index a6126eb2aa..8f835a58ff 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -546,8 +546,7 @@ \begin{itemize} \item class type\iref{class}, \item enumeration type\iref{dcl.enum}, -\item inline function with external linkage\iref{dcl.inline}, -\item inline variable with external linkage\iref{dcl.inline}, +\item inline function or variable\iref{dcl.inline} with external linkage, \item class template\iref{temp}, \item non-static function template\iref{temp.fct}, \item concept\iref{temp.concept}, @@ -555,8 +554,9 @@ \item member function of a class template\iref{temp.mem.func}, \item template specialization for which some template parameters are not specified~(\ref{temp.spec}, \ref{temp.class.spec}), -\item default argument for a parameter (for a function in a given scope), or -\item default template argument +\item default argument for a parameter (for a function in a given scope)% +\iref{dcl.fct.default}, or +\item default template argument\iref{temp.param} \end{itemize} in a program provided that each definition appears in a different translation unit, and From eb443396ac48b4e2ac9c6be0d9ec6bf9dda107eb Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Mon, 12 Aug 2019 12:27:41 -0600 Subject: [PATCH 301/312] [module.reach], [over.ics.rank] Fix punctuation --- source/modules.tex | 2 +- source/overloading.tex | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/source/modules.tex b/source/modules.tex index 828661832c..005a7ef1e3 100644 --- a/source/modules.tex +++ b/source/modules.tex @@ -908,7 +908,7 @@ \pnum A declaration $D$ is -\defnx{reachable}{reachable!declaration}, if, +\defnx{reachable}{reachable!declaration} if, for any point $P$ in the instantiation context\iref{module.context}, \begin{itemize} diff --git a/source/overloading.tex b/source/overloading.tex index c95026427c..2560bc42fc 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -2920,7 +2920,7 @@ \tcode{S1} and \tcode{S2} differ only in their qualification conversion\iref{conv.qual} and yield similar types \tcode{T1} and \tcode{T2}, respectively, -where \tcode{T1} can be converted to \tcode{T2} by a qualification conversion +where \tcode{T1} can be converted to \tcode{T2} by a qualification conversion. \begin{example} \begin{codeblock} int f(const volatile int *); From 37d2e59e8deb847f5ebdade20604bdf5c119649a Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Mon, 12 Aug 2019 14:14:50 -0600 Subject: [PATCH 302/312] [expr.ass] Improve preposition --- source/expressions.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/expressions.tex b/source/expressions.tex index aad8148bf8..b36e3f5a56 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -6709,7 +6709,7 @@ that \tcode{E1} is evaluated only once. Such expressions are deprecated if \tcode{E1} has \tcode{volatile}-qualified type; see~\ref{depr.volatile.type}. -In \tcode{+=} and \tcode{-=}, +For \tcode{+=} and \tcode{-=}, \tcode{E1} shall either have arithmetic type or be a pointer to a possibly cv-qualified completely-defined object type. In all other cases, \tcode{E1} shall have arithmetic type. From 4a0fd9aa43a0d63d6fe875b886cdea8ec24d7f9d Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Mon, 12 Aug 2019 15:03:56 -0600 Subject: [PATCH 303/312] [over.match.class.deduct] Supply missing word --- source/overloading.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/overloading.tex b/source/overloading.tex index 2560bc42fc..8d0e164a8a 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1777,7 +1777,7 @@ template requires deduces_A> auto f1_prime(V *, V*) -> C; -// \tcode{f2} is formed the deduction-guide \#2 of \tcode{C} +// \tcode{f2} is formed from the deduction-guide \#2 of \tcode{C} template auto f2(T, U) -> C>; // Deducing arguments for \tcode{C>} from \tcode{C} deduces \tcode{T} as \tcode{V *}; From 7b0f462a75dd815a6ffcc7b201619f5634490faa Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Mon, 12 Aug 2019 16:10:13 -0600 Subject: [PATCH 304/312] [basic.scope.pdecl] Add lost index %s --- source/basic.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/basic.tex b/source/basic.tex index 8f835a58ff..553516a7b2 100644 --- a/source/basic.tex +++ b/source/basic.tex @@ -968,8 +968,8 @@ \pnum \begin{note} For point of instantiation of a template, see~\ref{temp.point}. -\end{note} -\indextext{scope!declarations and|)} +\end{note}% +\indextext{scope!declarations and|)}% \indextext{declaration!point of|)} \rSec2[basic.scope.block]{Block scope} From 07883258fc7540d625fe4c33a943a47ef0a36f0e Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Mon, 12 Aug 2019 17:35:24 -0600 Subject: [PATCH 305/312] [cpp.glob.frag] Fix whitespace --- source/preprocessor.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/preprocessor.tex b/source/preprocessor.tex index 5ef73eadf0..1e8d2a83a0 100644 --- a/source/preprocessor.tex +++ b/source/preprocessor.tex @@ -795,8 +795,8 @@ \nontermdef{pp-global-module-fragment}\br \terminal{module} \terminal{;} pp-balanced-token-seq \terminal{module} \end{bnf} -\begin{bnf} +\begin{bnf} \nontermdef{pp-balanced-token-seq}\br pp-balanced-token\br pp-balanced-token-seq pp-balanced-token From 05c786cc68bf14a828cc59f32d34fae2baf33794 Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Tue, 13 Aug 2019 00:49:41 -0600 Subject: [PATCH 306/312] [expr.new] Use typical \iref --- source/expressions.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/expressions.tex b/source/expressions.tex index b36e3f5a56..add9621513 100644 --- a/source/expressions.tex +++ b/source/expressions.tex @@ -4906,7 +4906,7 @@ \begin{note} Only \grammarterm{new-expression}{s} that would otherwise result in a call to a replaceable global allocation function -can be evaluated in constant expressions (see \ref{expr.const}). +can be evaluated in constant expressions\iref{expr.const}. \end{note} \pnum From fc1863291a3f62a684d9bffa51fdc2837e9edcd0 Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Tue, 13 Aug 2019 14:55:54 -0600 Subject: [PATCH 307/312] [class.spaceship] Remove vacuous conversion The synthesized three-way comparison always produces a value of type R --- source/classes.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/classes.tex b/source/classes.tex index 71e85ce656..779fbca6b2 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -6943,7 +6943,7 @@ between $\tcode{x}_i$ and $\tcode{y}_i$ yields a result value $\tcode{v}_i$ where $\tcode{v}_i \mathrel{\tcode{!=}} 0$, contextually converted to \tcode{bool}, yields \tcode{true}; -\tcode{V} is $\tcode{v}_i$ converted to \tcode{R}. +\tcode{V} is $\tcode{v}_i$. If no such index exists, \tcode{V} is \tcode{std::strong_ordering::equal} converted to \tcode{R}. From 80f2c46251f07abf422cdd86a3f3d30c47fda587 Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Tue, 13 Aug 2019 14:59:46 -0600 Subject: [PATCH 308/312] [over.match.class.deduct] Fix terminology An element with a dependent type might not be a subaggregate Add cross-reference --- source/overloading.tex | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/overloading.tex b/source/overloading.tex index 8d0e164a8a..7deddadc7f 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1549,7 +1549,8 @@ \end{itemize} \end{itemize} In addition, if \tcode{C} is defined -and its definition satisfies the conditions for an aggregate class +and its definition satisfies the conditions for +an aggregate class\iref{dcl.init.aggr} with the assumption that any dependent base class has no virtual functions and no virtual base classes, and the initializer is a non-empty \grammarterm{braced-init-list} or @@ -1564,7 +1565,7 @@ For each $x_i$, let $e_i$ be the corresponding element of \tcode{C} or of one of its (possibly recursive) subaggregates that would be initialized by $x_i$\iref{dcl.init.aggr} -if brace elision is not considered for any subaggregate +if brace elision is not considered for any element that has a dependent type. If there is no such element $e_i$, the program is ill-formed. The aggregate deduction candidate is derived as above From bfa0e698359d44e8a2b0a056e13e908a8185e296 Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Tue, 13 Aug 2019 15:02:06 -0600 Subject: [PATCH 309/312] [over.match.class.deduct] Use "deduces" ...for consistency in example --- source/overloading.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/overloading.tex b/source/overloading.tex index 7deddadc7f..6dec12ff73 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1737,7 +1737,7 @@ T t; }; -E e1 = {1, 2}; // OK, \tcode{E} deduced +E e1 = {1, 2}; // OK, deduces \tcode{E} \end{codeblock} \end{example} From 174edca593a860440860f95c3ee61aa739e2afdc Mon Sep 17 00:00:00 2001 From: Davis Herring Date: Tue, 13 Aug 2019 23:41:02 -0600 Subject: [PATCH 310/312] [over.match.class.deduct] Simplify example --- source/overloading.tex | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/source/overloading.tex b/source/overloading.tex index 6dec12ff73..ec51c9720a 100644 --- a/source/overloading.tex +++ b/source/overloading.tex @@ -1726,15 +1726,10 @@ D d1 = {1, 2}; // error: deduction failed D d2 = {1, 2, 3}; // OK, braces elided, deduces \tcode{D} -template -struct I { - using type = T; -}; - template struct E { - typename I::type i; T t; + decltype(t) t2; }; E e1 = {1, 2}; // OK, deduces \tcode{E} From a9f901af95f16540444144a397fe3b598ae2961b Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 14 Aug 2019 17:51:44 -0700 Subject: [PATCH 311/312] [class.dtor] "The defaulted destructor" -> "A defaulted destructor", since the destructor for a class might not be defaulted. --- source/classes.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/classes.tex b/source/classes.tex index 779fbca6b2..7c14167ec5 100644 --- a/source/classes.tex +++ b/source/classes.tex @@ -2240,7 +2240,7 @@ \defnx{non-trivial}{destructor!non-trivial}. \pnum -The defaulted destructor is a constexpr destructor +A defaulted destructor is a constexpr destructor if it satisfies the requirements for a constexpr destructor\iref{dcl.constexpr}. \begin{note} In particular, a trivial destructor is a constexpr destructor. @@ -2255,7 +2255,7 @@ or when it is explicitly defaulted after its first declaration. \pnum -Before the +Before a defaulted destructor for a class is implicitly defined, all the non-user-provided destructors for its base classes and its non-static data members shall have been implicitly defined. From 52094b67b0b470fefaf59d373a139a960452df29 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 6 Aug 2019 20:04:00 -0700 Subject: [PATCH 312/312] Update configuration to build new working draft N4830. Add new papers N4830 and N4829 (Editors' Report). --- papers/n4829.html | 1279 +++++++++++++++++++++++++++++++++++++++++++++ papers/n4829.md | 1137 ++++++++++++++++++++++++++++++++++++++++ papers/n4830.pdf | Bin 0 -> 6755923 bytes source/config.tex | 2 +- 4 files changed, 2417 insertions(+), 1 deletion(-) create mode 100644 papers/n4829.html create mode 100644 papers/n4829.md create mode 100644 papers/n4830.pdf diff --git a/papers/n4829.html b/papers/n4829.html new file mode 100644 index 0000000000..6c821330f4 --- /dev/null +++ b/papers/n4829.html @@ -0,0 +1,1279 @@ +N4829 +

N4829 Editors' Report -- Programming Languages -- C++

+ +

2019-08-15
+Richard Smith (editor) (Google Inc)
+Thomas Köppe (co-editor) (Google DeepMind)
+Jens Maurer (co-editor)
+Dawn Perchik (co-editor) (Bright Side Computing, LLC)
+<cxxeditor@gmail.com>

+ +

Acknowledgements

+ +

Special thanks to several paper authors +for supplying the LaTeX sources for their papers.

+ +

Special thanks also to the Editing Committee -- +Daniel Krügler, Davis Herring, Nina Ranns, and Ville Voutilainen -- +for providing a careful review of the application of these motions +and the editorial changes described below +to ensure the correctness of the C++20 Committee Draft.

+ +

Thanks to all those who have submitted editorial +issues +and to those who have provided pull requests with fixes.

+ +

New papers

+ +
    +
  • N4830 is the committee draft for C++20. It replaces N4820.
  • +
  • N4829 is this Editors' Report.
  • +
+ +

Note: +A working draft was circulated to the editing committee for review, +and was mistakenly published with paper number N4828. +N4828 is not the C++20 Committee Draft, +and does not contain the results of addressing feedback from +the editing committee.

+ +

Motions incorporated into working draft

+ +

Core working group motions

+ +

CWG motion 1: Core issue resolutions for 10 issues in "tentatively ready" status applied: (DR)

+ +
    +
  • 682 Missing description of lookup of template aliases
  • +
  • 2207 Alignment of allocation function return value
  • +
  • 2300 Lambdas in multiple definitions
  • +
  • 2366 Can default initialization be constant initialization?
  • +
  • 2376 Class template argument deduction with array declarator
  • +
  • 2390 Is the argument of __has_cpp_attribute macro-expanded?
  • +
  • 2400 Constexpr virtual functions and temporary objects
  • +
  • 2404 [[no_unique_address]] and allocation order
  • +
  • 2406 [[fallthrough]] attribute and iteration statements
  • +
  • 2418 Missing cases in definition of "usable in constant expressions"
  • +
+ +

CWG motion 2: P1161R3 "Deprecate uses of the comma operator in subscripting expressions"

+ +

CWG motion 3: P1331R2 "Permitting trivial default initialization in constexpr contexts"

+ +

CWG motion 4: P0735R1 "Interaction of memory_order_consume with release sequences"

+ +

CWG motion 5: P0848R3 "Conditionally trivial special member functions"

+ +

CWG motion 6: P1186R3 "When do you actually use <=>?"

+ +

CWG motion 7: P1301R4 "[[nodiscard("should have a reason")]]"

+ +

CWG motion 8: P1099R5 "using enum"

+ +

CWG motion 9: P1630R1 "Spaceship needs a tune-up"

+ +

CWG motion 10: P1616R1 "Using unconstrained template template parameters with constrained templates"

+ +

CWG motion 11: P1816R0 "Class template argument deduction for aggregates"

+ +

CWG motion 12: P1668R1 "Enabling constexpr intrinsics by permitting unevaluated inline assembly in constexpr functions"

+ +

CWG motion 13: P1766R1 "Mitigating minor modules maladies" (DR)

+ +

CWG motion 14: P1811R0 "Relaxing redefinition restrictions for re-exportation robustness"

+ +

CWG motion 15: P0388R4 "Permit conversions to arrays of unknown bound"

+ +

CWG motion 16: P1823R0 "Remove contracts"

+ +

CWG motion 17: P1143R2 "Adding the constinit keyword"

+ +

CWG motion 18: P1452R2 "On the non-uniform semantics of return-type-requirements"

+ +

CWG motion 19: P1152R4 "Deprecating volatile"

+ +

CWG motion 20: P1771R1 "[[nodiscard]] for constructors" (DR)

+ +

CWG motion 21: P1814R0 "Class template argument deduction for alias templates"

+ +

CWG motion 22 was withdrawn

+ +

CWG motion 23: P1825R0 "Merged wording for P0527R1 and P1155R3" (DR)

+ + + +

CWG motion 24: P1703R1 "Recognizing header unit imports requires full preprocessing"

+ +

CWG motion 25: P0784R7 "More constexpr containers"

+ +

Library working group motions

+ +

LWG motion 1: Library issue resolutions for 17 issues in "Ready" and "Tentatively Ready" status applied: (DR)

+ +
    +
  • 3209 Expression in year::ok() returns clause is ill-formed
  • +
  • 3208 Boolean's expression requirements are ordered inconsistently
  • +
  • 3206 year_month_day conversion to sys_days uses not-existing member function
  • +
  • 3202 P0318R1 was supposed to be revised
  • +
  • 3199 istream >> bitset<0> fails
  • +
  • 3198 Bad constraint on std::span::span()
  • +
  • 3196 std::optional<T> is ill-formed if T is an array
  • +
  • 3191 std::ranges::shuffle synopsis does not match algorithm definition
  • +
  • 3187 P0591R4 reverted DR 2586 fixes to scoped_allocator_adaptor::construct()
  • +
  • 3186 Ranges remove, partition, and partial_sort_copy algorithms discard useful information
  • +
  • 3185 Uses-allocator construction functions missing constexpr and noexcept
  • +
  • 3184 Inconsistencies in bind_front wording
  • +
  • 3183 Normative permission to specialize ranges variable templates
  • +
  • 3169 Ranges permutation generators discard useful information
  • +
  • 3158 tuple(allocator_arg_t, const Alloc&) should be conditionally explicit
  • +
  • 3055 path::operator+=(single-character) misspecified
  • +
  • 2899 is_(nothrow_)move_constructible and tuple, optional and unique_ptr
  • +
+ +

LWG motion 2: P1355R2 "Exposing a narrow contract for ceil2"

+ +

LWG motion 3: P0553R4 "Bit operations"

+ +

LWG motion 4: P1424R1 "constexpr feature macro concerns"

+ +

LWG motion 5: P0645R10 "Text formatting"

+ +

LWG motion 6: P1361R2 "Integration of chrono with text formatting"

+ +

LWG motion 7: P1652R1 "Printf corner cases in std::format"

+ +

LWG motion 8: P0631R8 "Math constants"

+ +

LWG motion 9: Synchronization library:

+ + + +

LWG motion 10: P1466R3 "Miscellaneous minor fixes for chrono"

+ +

LWG motion 11: P1754R1 "Rename concepts to standard_case for C++20, while we still can"

+ +

LWG motion 12: P1614R2 "The mothership has landed"

+ +

LWG motion 13: P0325R4 "to_array from LFTS with updates"

+ +

LWG motion 14: P0408R7 "Efficient access to basic_stringbuf's buffer"

+ +

LWG motion 15: P1423R3 "char8_t backward compatibility remediation"

+ +

LWG motion 16: P1502R1 "Standard library header units"

+ +

LWG motion 17: P1612R1 "Relocate endian's specification"

+ +

LWG motion 18: P1661R1 "Remove dedicated precalculated hash lookup interface"

+ +

LWG motion 19: P1650R0 "Output std::chrono::days with d suffix"

+ +

LWG motion 20: P1651R0 "bind_front should not unwrap reference_wrapper"

+ +

LWG motion 21: P1065R2 "Constexpr invoke"

+ +

LWG motion 22: P1207R4 "Movability of single-pass iterators"

+ +

LWG motion 23: P1035R7 "Input range adaptors"

+ +

LWG motion 24: P1638R1 "basic_istream_view::iterator should not be copyable"

+ +

LWG motion 25: P1522R1 "Iterator difference type and integer overflow"

+ +

LWG motion 26: P1004R2 "Making std::vector constexpr"

+ +

LWG motion 27: P0980R1 "Making std::string constexpr"

+ +

LWG motion 28: P0660R10 "Stop token and joining thread"

+ +

LWG motion 29: P1474R1 "Helpful pointers for ContiguousIterator"

+ +

LWG motion 30: P1523R1 "Views and size types"

+ +

LWG motion 31: P0466R5 "Layout-compatibility and pointer-interconvertibility traits"

+ +

LWG motion 32: P1208R6 "source_location"

+ +

Notable editorial changes

+ +

CWG motion 21

+ +

The changes for this motion in [over.match.class.deduct] +described the matching of a simple-template-id against +the defining-type-id of an alias template +in imprecise terms +(quoting only part of the grammar to which the change intended to apply). +This has been made more precise by repeating the full grammar +previously specified in [dcl.type.simple] +in [over.match.class.deduct].

+ +

LWG motions 5-7

+ +

The new std::format library underwent substantial editorial rework +for clarity and precision. +Thanks to Tomasz Kamiński and +Johel Ernesto Guerrero Peña +for reviewing the resulting edits, +and to Victor Zverovich for responding to various questions about intent.

+ +

LWG motion 10

+ +

The operator<< added for hh_mm_ss was written in terms of +the old chrono formatting machinery that was replaced by +std::format-based machinery by LWG motion 6. +It has been rephrased in terms of std::format. +Thanks to Howard Hinnant for providing wording.

+ +

LWG motion 11

+ +

In addition to the requested renames, the following concepts were also renamed, +following the editorial instructions to rename all other concepts:

+ +
    +
  • ThreeWayComparableWith -> three_way_comparable_with
  • +
  • ThreeWayComparable -> three_way_comparable
  • +
  • ForwardRange -> forward_range
  • +
+ +

LWG motion 14

+ +

This motion requested that the same constructor be added to basic_stringbuf +twice. It was only added once.

+ +

LWG motion 23

+ +

The wording paper proposed making changes to the algorithms

+ +
    +
  • std::ranges::sample
  • +
  • std::ranges::shift_left
  • +
  • std::ranges::shift_right
  • +
+ +

However, these algorithms were never adopted into the C++ working draft from +the Ranges Technical Specification, so after consulting with the Library +Working Group, the requested changes to these algorithms were ignored.

+ +

LWG motion 26, 27

+ +

These motions would have added constexpr to +operator<, operator>, operator<=, operator>=, and operator!= functions +that LWG motion 12 removed. +Instead constexpr was added to the replacement operator<=>.

+ +

In addition, following the paper's request to add constexpr to any +std::basic_string functions that the wording missed, and after consulting +with the LWG chair as directed, the overloads of std::erase and +std::erase_if for std::basic_string were also marked contexpr.

+ +

Section label changes

+ +

Several section labels introduced by the motions papers have been modified +to match our style guide. In addition to the section labels affected by the +above motions, the following section labels have been renamed:

+ +
    +
  • [concept.convertibleto] => [concept.convertible]
  • +
  • [concept.derivedfrom] => [concept.derived]
  • +
  • [concept.stricttotallyordered] => [concept.totallyordered]
  • +
+ +

Feature test macros

+ +

Attention should be drawn to the fact that multiple papers updated feature test +macros to the same version:

+ +
    +
  • __cpp_constexpr was updated to 201907L by both +P1331R2 (CWG motion 3) and +P1668R1 (CWG motion 12).
  • +
  • __has_cpp_attribute(nodiscard) was updated to 201907L by both +P1304R4 (CWG motion 7) and +P1771R1 (CWG motion 20).
  • +
+ +

Implementers should be aware that the new version of the feature test macro +advertises support for both papers in these cases (in addition to advertising +support for prior papers that gave smaller version numbers to the relevant +macro).

+ +

Minor editorial fixes

+ +

A log of editorial fixes made to the working draft since N4820 is below. +This list excludes changes +that do not affect the body text or only affect whitespace or typeface. For a +complete list including such changes (or for the actual deltas applied by these +changes), consult the draft sources on github.

+ +
commit 44ea29778d15cd5d9f2b5c706c6b3f4338548ec2
+Author: Casey Carter <Casey@Carter.net>
+Date:   Tue Jun 25 06:04:14 2019 -0700
+
+    [range.filter.sentinel] Correct typo in constructor Effects (#2937)
+
+commit 97b615a5a6ab0598b624ee05402c531d0421cff6
+Author: Casey Carter <Casey@Carter.net>
+Date:   Tue Jun 25 06:09:55 2019 -0700
+
+    [iterator.synopsis] Copy constraint for iterator_traits<T*> from [iterator.traits]/5 (#2943)
+
+commit da7eac5e621b5fab12c0b1992100c4bfd983ed8e
+Author: Saar Raz <saar@raz.email>
+Date:   Mon Jul 1 22:46:37 2019 +0300
+
+    [Concepts] Remove qualified-concept-name reference
+
+    Update 'qualified-concept-name' (the previous incarnation of 'type-constraint') reference to 'type-constraint' in [temp.over.link]p6.
+
+commit f54f306c3b9fad27e70766963840e3df14f20b28
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Thu Jul 4 15:34:38 2019 +0200
+
+    [func.bind] Remove bogus 'shall's. (#2955)
+
+commit 72cc844ef44ae47aebb1ad346146138d3279be9e
+Author: Eelis <github.com@contacts.eelis.net>
+Date:   Fri Jul 5 16:16:58 2019 +0200
+
+    [expr.reinterpret.cast] Properly capitalize full-sentence bullets. (#2956)
+
+commit c635711cdd81346ad41c7861adb8035176fa236f
+Author: Eelis <github.com@contacts.eelis.net>
+Date:   Fri Jul 5 23:55:22 2019 +0200
+
+    [temp.constr.constr] Add missing period at end of sentence. (#2957)
+
+commit 4f9942cafadc17fb902610b4c67afb6fcf81ff64
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Sun Jul 7 19:38:20 2019 +0200
+
+    [dcl.asm] Rename grammar term 'asm-definition' to 'asm-declaration'
+
+commit 51c5b01217799fdfa754179c20af888ec8c1889d
+Author: Casey Carter <Casey@Carter.net>
+Date:   Wed Jul 10 00:40:19 2019 -0700
+
+    [temp.constr.order] Remove extraneous "the". (#2964)
+
+commit 67db9422b6bc58f5399c7c019ec5ede28d8ac4f5
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Fri Jun 28 17:01:54 2019 +0200
+
+    [expr.prim.req] Fix cross-reference for substituting into constraints.
+
+commit 98c2c56ab5e945452586270d72d2fb606b71cd94
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Jul 22 02:24:42 2019 +0200
+
+    [class.prop] [special] Move definition of eligible special member
+    functions to the section on special member functions.
+
+commit 94a72b5c11a20cfd6c92a4faa5bd0df4b8ebc620
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Jul 22 02:28:15 2019 +0200
+
+    [class.dtor] Reorder the introduction of an implicit prospective
+    destructor to before we describe the overload resolution to pick the
+    actual destructor.
+
+commit 6bd3daeae3a3e9ae6174c35ab020dbfe4504b75b
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Thu Aug 1 20:04:36 2019 -0700
+
+    [class.ctor], [class.dtor] Introduce actual definitions for
+    "constructor" and "prospective destructor".
+
+commit dc45e8c329eeb0076d074fa671c2be2fc605555a
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Jul 22 03:18:33 2019 +0200
+
+    [class.spaceship] Remove incorrect note.
+
+commit d6a291776858bc647fc6826888767284f305c799
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Jul 22 03:58:34 2019 +0200
+
+    [dcl.attr.nodiscard] Simplify note describing the string-literal in a
+    nodiscard attribute and make it less confusing.
+
+commit 46ba985402de963f50d364b26b594707be16c7c9
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Jul 22 04:42:43 2019 +0200
+
+    [dcl.enum] Avoid hanging paragraphs by moving "Enumeration declarations"
+    down one level to a sibling of "The using enum declaration".
+
+    [namespace.udir] Rename section to "Using namespace directive" to
+    further distinguish this from a using enum declaration.
+
+commit 5d1bb1c7f8ed44016c38bfeb9797e363d52cfc51
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Thu Aug 1 20:42:13 2019 -0700
+
+    [over.match.oper] Replace "member, non-member, and built-in candidates"
+    with "non-rewritten candidates"
+
+    This simplifies the wording, implicitly explains why we're considering
+    only some candidates, and avoids overtly suggesting that we could ever
+    pick a reversed-parameter-order built-in candidate.
+
+commit 1fbc1c315008152770eea8bd383aa2a4fa47cfd5
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Fri Jul 26 16:56:13 2019 +0200
+
+    [basic.def.odr] Turn long comma-separate list into bullets.
+
+commit c0c589881759871b2183105f315d4ddd0d2734be
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Thu Aug 1 22:47:19 2019 +0200
+
+    [expr.const.cast] Clarify pairwise correspondence for P_i.
+    [over.ics.rank] Move cross-reference pointing to [conv.qual].
+
+commit 47539b965a84f69c548fe043a632af17db3cb315
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Fri Aug 2 15:49:39 2019 -0700
+
+    [conv.qual] Move note after the rule that implies it.
+
+commit f10e3751b39138746b601fa702c9ed9e67777c96
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Fri Aug 2 15:59:50 2019 -0700
+
+    [over.ics.rank] Reorder examples to match order of normative text.
+
+commit 813a4300a036f12d5ff6b82965b83a8e87b1ae8d
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Fri Aug 2 16:55:56 2019 -0700
+
+    [dcl.attr.nodiscard] Fix vexing-parse bug in example. Make sure the
+    missiles actually get launched, not merely redeclared.
+
+commit 6e845457bfd83f20c2f61bf4015afcd96cbd0cec
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Fri Aug 2 17:17:52 2019 -0700
+
+    [over.match.class.deduct] Fix failure to handle the case where a
+    deducible alias template's defining-type-id contains a
+    nested-name-specifier (or 'typename' or 'template' keywords).
+
+commit 7226ced32fe3cda28eb05f044985427684397128
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Fri Aug 2 17:26:53 2019 -0700
+
+    [over.match.class.deduct] Switch from imperative to passive, and clarify
+    what happens if the various 'if' conditions are not met.
+
+commit 6552c03d3793e7532793097d760edc3a93e150b1
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Fri Aug 2 17:32:40 2019 -0700
+
+    [over.match.class.deduct] Put all bullets describing the properties of
+    f' at the same depth, and guard them all by the condition that we're
+    actually adding an f' to the set of guides.
+
+commit b3b7d37c073051826c21c231bd386c10d64433dc
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Fri Aug 2 22:09:14 2019 +0200
+
+    [class.copy.elision] Add cross-reference, fix example.
+
+commit 4a657ca3e26850a993c2015bbecd6287e817a615
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 3 18:51:09 2019 -0700
+
+    [iterator.concept.sizedsentinel], [range.sized], [range.view]
+    Provide proper descriptions for disable_sized_sentinel,
+    disable_sized_range, and enable_view.
+
+commit 796c871f9b14a42fea634ec97a35032bfe3c422a
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Tue Jul 23 09:57:04 2019 +0200
+
+    [bit] Avoid std::numeric_limits<...>
+
+    Referring to numeric_limits (without std:: prefix) is sufficient.
+
+commit fb97956bc9eee5a50c10df9148d9422e260e352c
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Jul 31 17:28:28 2019 -0700
+
+    [format.formatter] Add subclause heading to avoid hanging paragraphs.
+
+commit eae84a0a10b4409da01ae5c9e7c734e113973cdf
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Jul 31 17:34:37 2019 -0700
+
+    [format.string] Clarify that "other characters" means "characters other
+    than { and }".
+
+commit b62dc39c0541a1968ac1717773574f4ef868934c
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Jul 31 18:05:00 2019 -0700
+
+    [format.string] Change 'integer' grammar to be left-recursive and factor
+    out separate positive-integer and nonnegative-integer productions for
+    clarity.
+
+commit 2db4bd64f7f157266ae0f7c7c44c4fe7c68c6070
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Jul 31 18:14:56 2019 -0700
+
+    [format.string] Fix wording that talks about omitting arg-ids but
+    presupposes that they are all present to instead specify what happens
+    when some or all are absent.
+
+commit 5a32fd1040b8a7c4c997ba8841c4f28a34a6c97d
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Jul 31 18:26:41 2019 -0700
+
+    [format.string] Add missing grammar definition for custom-format-spec
+    rather than leaving it dangling.
+
+commit d529b96f3be22332d4a88de646f56cb636680f6c
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Jul 31 18:33:05 2019 -0700
+
+    [format.string] Make tone of wording more formal and less tutorialesque.
+
+commit 3ced91d524f3c2a850243863440151735276b38a
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Jul 31 18:41:56 2019 -0700
+
+    [format.context] Add specification of wformat_context analogous to that
+    of format_context, as discussed on lib reflector.
+
+commit ed00761315546c11b48441e1bcef6aa5927f76c8
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Thu Aug 1 18:17:10 2019 -0700
+
+    [format.string] Explicitly list all the possible formatting types for
+    bool and charT in their respective tables rather than requiring the
+    reader to infer how to merge the integer table into the bool and charT
+    tables.
+
+commit 46622695da52f8080f7280207eecd93bd950cc1a
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 3 19:57:13 2019 -0700
+
+    [format.functions] Use clamp rather than min(max(a,b),c)
+
+    Co-Authored-By: Johel Ernesto Guerrero Peña <johelegp@gmail.com>
+
+commit a870403a2dc47924e7f607f7c69694291d43007c
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 3 20:39:06 2019 -0700
+
+    [format.arg] Don't use placeholder name for private member char-type.
+
+commit d17fd4d5f10f6af87654fdc73bd6417313a295f2
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sun Aug 4 14:04:04 2019 -0700
+
+    [format.string] Avoid duplicating the specification of '#' for integers.
+
+    Fix the specification for '#' being different for octal integers in the
+    two places it's specified.
+
+commit e30b8a69d485b96ddacfa31b7eb411c5a64d83a5
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sun Aug 4 14:23:48 2019 -0700
+
+    [format.string] Separate out the general (type-independent) description
+    of formatting from the format specifiers for arithmetic and string
+    types, and make the presentation of the latter consistent with the
+    presentation for chrono types.
+
+commit f430bec8e7a4437b69d1ad31b2c1f4246e753770
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sun Aug 4 15:09:26 2019 -0700
+
+    [format.string.std] Convert normative duplication to a note to avoid
+    creating the impression that alignment is only applied to non-string
+    types.
+
+commit b6454e39ede7ab11ce0958fa2ee3b487c8983ae1
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sun Aug 4 15:32:02 2019 -0700
+
+    [format.string] Further clarify description of cases where formatting is
+    described in terms of a call to to_chars.
+
+commit 895f30bd225d050bcb2ab9f0a793af9865dcd513
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sun Aug 4 20:02:33 2019 -0700
+
+    [format.formatter] Reorder Formatter requirements before the
+    descriptions of specializations that meet those requirements.
+
+commit c7ada4d28ae7be82ef64104617e216fd738a4d0f
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Tue Jul 30 16:07:16 2019 +0200
+
+    [numbers] Use 'template<class T>', not 'typename'.
+
+commit 14aa4ed0d323c163f0559bd7c8555d77f2dc8093
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Tue Jul 30 16:12:59 2019 +0200
+
+    [math.constants] Expand 'math' to 'mathematical'.
+
+commit 3f761c76b5daf9f1a75695226514c323ba6619f0
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Thu Aug 1 10:50:09 2019 +0200
+
+    [numbers.syn] Use 'namespace std::numbers'.
+
+commit dc61857d3779253c6cdeec572cdcb43077b0ce86
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sun Aug 4 20:51:47 2019 -0700
+
+    [atomics.lockfree] "are" -> "is"; "along with" is not a coordinating
+    conjunction.
+
+commit 3d3f16f99454d3ffffcfbf92a02b9bcaac9b375b
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sun Aug 4 21:50:27 2019 -0700
+
+    [thread.barrier.class] Rename constructor parameter from `phase_count`
+    to `expected`.
+
+    The parameter is not a phase count, and is referred to by other
+    normative wording as `expected`; also, `expected` is the name we use for
+    the same parameter in the constructor of `latch`.
+
+commit 2e82327045fb92d89dd1431cc7e771da63c982dc
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Thu Aug 1 10:37:25 2019 +0200
+
+    [time.hms.members] Rephrased note.
+    [time.hms.overview] Removed redundant declaration of operator<<.
+    [time.hms.overview] Moved exposition-only data members to the bottom.
+
+commit 1a37c22bb6b621f14d01b4e16378c9cd08724183
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sun Aug 4 23:36:25 2019 -0700
+
+    [time.hms.nonmembers] Finish rebase on std::format: rewrite hh_mm_ss
+    operator<< in terms of format rather than using (removed) old formatting
+    terminology.
+
+commit 584a87ec1d48862b9e68a269d0a5eb7b05d6999d
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Aug 5 13:57:50 2019 -0700
+
+    [time.hms.nonmembers] Fix editorial error in hh_mm_ss operator<< (only
+    stream to 'os' once). This formulation was proposed by Howard Hinnant
+    on the lib reflector.
+
+commit d243672db3269754d4ee91a5fbcdfb82ae6f2539
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Tue Jul 30 16:01:10 2019 +0200
+
+    Apply P1452R2 On the non-uniform semantics of return-type-requirements
+    to newly-introduced return type requirements.
+
+commit 90f64792ec7d5372a093d3bea69dffff2f7af28a
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Aug 5 13:48:59 2019 -0700
+
+    Rename _s to -s in placeholder names per editorial guidelines.
+
+commit ad685c42b18103ace094b375a4fde1a7ec6aba02
+Author: Dawn Perchik <dperchik@embarcadero.com>
+Date:   Tue Jul 30 19:33:10 2019 -0700
+
+    [stringbuf] Name string parameters "s" instead of "str" for consistency and to avoid confusion with "str" methods.
+
+commit 26f7cd6d3b2d271c74e1d2022f972f833de940f6
+Author: Dawn Perchik <dperchik@embarcadero.com>
+Date:   Thu Aug 1 13:35:42 2019 -0700
+
+    [stringbuf.members] Minor fixes to P0408R7 wording.
+
+    "str()" should be "str"; we're talking about all str member functions here.
+    Add comma after "For efficiency reasons".
+    "i.e." -> "e.g." since we're describing an example case.
+
+commit b4a8b798e00bce697af9b477a214828b69e9e383
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Aug 5 17:31:21 2019 -0700
+
+    [module.unit] Add "either" to clarify that we're talking about
+    module-names containing a reserved identifier, not module names starting
+    with an identifier that contains a reserved identifier.
+
+commit 906fd4d0519994e06659ce066c8252df186c23b9
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Aug 5 17:57:35 2019 -0700
+
+    [func.require] Convert restrictive 'which' to 'that'.
+
+commit 7e862f0f238257b2cbb1f7296a593b4587029e39
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Aug 5 18:46:55 2019 -0700
+
+    [range.transform.sentinel] Reinstate transform_view::sentinel::operator-
+    overloads, accidentally removed during application of P1614R2.
+
+commit e02aa79ca43de3fdf6e1887d4fd02bc58874e190
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Wed Jul 31 22:55:50 2019 +0200
+
+    [range.istream.view] Do not repeat declaration of function istream_view
+    [range.elements.iterator] Renamed from [range.elements_view.iterator]
+    [range.elements.iterator] Use local typedef difference_type
+    [range.elements.iterator] Use reference return type for compound assignment
+
+commit a0b5a70fade22203ebfbaeb4828e0c304b1f62ab
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Aug 5 23:02:38 2019 -0700
+
+    [ranges] Fix 'constexpr friend' to our preferred order 'friend constexpr'.
+
+commit f0256ab73cd6a9fae611af95526d16fe59968d4c
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Aug 5 23:08:59 2019 -0700
+
+    [range.drop.view] Fix typo "requirement" -> "required".
+
+commit 7698c3dc28251540b4a4733cc4a6b3f6942f13ed
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Tue Aug 6 00:40:47 2019 -0700
+
+    [range.iota.view] Rename IOTA_DIFF_T to the preferred IOTA-DIFF-T.
+
+commit cf1bc270c0e7d7b1670502c69268b0373bbf9799
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Tue Aug 6 01:35:47 2019 -0700
+
+    [thread] Update headings, comments, and line wrapping to match editorial
+    conventions.
+
+commit 7f4e95e3296b31c23bfb358f31294d384a955e3b
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Sat Aug 3 08:38:34 2019 +0200
+
+    [support.srcloc] Fix comments in example.
+
+commit 06ab7ebef8a763e36f87f504ed7765528aa25fc7
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Tue Aug 6 02:28:42 2019 -0700
+
+    [support.srcloc.cons] Use term "default member initialier" rather than
+    describing it indirectly.
+
+commit 7beed51f4388074f46fd55a7c5f559cd82b7c40c
+Author: Dawn Perchik <dperchik@embarcadero.com>
+Date:   Tue Jul 30 20:36:34 2019 -0700
+
+    [alg.is.permutation] Add parameters to \libconcept{sized_sentinel_for} as suggested in PR #3099.
+
+commit fbb0691134e39059adaa4a886e7d746b0e56c81c
+Author: Dawn Perchik <dperchik@embarcadero.com>
+Date:   Wed Jul 31 12:52:26 2019 -0700
+
+    [concepts] Renamed concepts' section names to remove trailing prepositions for consistency.
+
+    * concept.convertibleto => concept.convertible
+    * concept.derivedfrom => concept.derived
+    * concept.stricttotallyordered => concept.totallyordered
+
+commit e2a070f7a5484e272c10e4ab31359fede5ff24a1
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Tue Aug 6 13:51:24 2019 -0700
+
+    [diff.cpp17.library], [tab:headers.cpp] Add missing <coroutine> entry
+    to the list of headers, and add various missing entries to the list of
+    new-in-C++20 headers.
+
+    Fixes #3122.
+
+commit 54a87d7849e7d5283c2d0a34f8200ef6a67bb0da
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Tue Aug 6 23:17:24 2019 +0200
+
+    [conv.qual,expr.static.cast] Harmonize notes on cv-qualified function types.
+
+commit ee234abfbfa7deb5c585b67590205e1660df180f
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Thu Aug 1 16:45:51 2019 +0200
+
+    [time.clock,bit.cast] Replace template<typename...> with template<class...>
+
+    as per library specification policy.
+
+commit a374c4f3664cf84a4440feb3c236076b25cfe736
+Author: languagelawyer <38548419+languagelawyer@users.noreply.github.com>
+Date:   Thu Jul 25 21:24:06 2019 +0200
+
+    [tuple] Use "objects" instead of "variables"
+    with "temporary" in the definition of `forward_as_tuple`
+
+commit 7e02aa3d7d3e5e9dfc2c66451e112d40f4491465
+Author: Jonathan Wakely <cxx@kayari.org>
+Date:   Mon Jul 22 23:27:57 2019 +0100
+
+    [is.sorted] Add missing "return" and semi-colon
+
+    This was lost when changing "Returns:" to "Effects:" for P0896R4. The
+    paper included this change, but it was lost when applying it.
+
+commit cc421307fb4ce393e7ab1dcf0d0f1298d163fbe0
+Author: Yehezkel Bernat <yehezkelshb@gmail.com>
+Date:   Sun Jul 21 22:16:23 2019 +0300
+
+    Delete irrelevant copy-paste from previous section
+
+commit d4c4cc0ac037c51ec10cf6f7c80d8c761b517cba
+Author: onihusube <44743040+onihusube@users.noreply.github.com>
+Date:   Wed Jul 17 22:46:24 2019 +0900
+
+    [basic.lookup.argdep]/5 add export to apply()
+
+    fix #2968
+
+commit 557cfa9dd706780fb672bfe9e5e2f0ef3b2f3d4a
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Thu Jul 4 09:31:57 2019 +0200
+
+    [basic.life] Lifetime of class objects is treated uniformly
+    under CWG2256, regardless of triviality of the destructor.
+
+commit 4c3b9f50ecd230263974c81e1df2fb07b541c58d
+Author: onihusube <44743040+onihusube@users.noreply.github.com>
+Date:   Mon Jul 1 16:26:16 2019 +0900
+
+    [module.global] fix sample code comment
+
+commit 06bd4b02febcb43c014ffd46b7a07dab8d66aa4b
+Author: onihusube <44743040+onihusube@users.noreply.github.com>
+Date:   Mon Jul 1 16:41:33 2019 +0900
+
+    [cpp.module] fix sample code comment
+
+commit 1be069efaa41f4df376364290f8069ec030b13cc
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Fri Jun 28 17:11:44 2019 +0200
+
+    [time.parse] Fix description of %Ex and %EX parse flags.
+
+    Also refer to the table number instead of 'the table below'.
+
+commit f038d86fb9112b62adaaebaf95dc70d786412cbd
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Fri Jun 28 16:50:03 2019 +0200
+
+    [res.on.functions] Properly capitalize full-sentence bullets.
+
+    Also add periods at the end of sentences.
+
+commit 43945886b4ff4481da3d29b3f624d55bc9b5d124
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Mon Jun 24 22:43:30 2019 +0200
+
+    [conv.qual] Fix example for cv-decomposition.
+
+    After CWG2051, a cv-decomposition can also be a no-op.
+
+commit 915031ddbf75f856efcea43928d9f459140834fd
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Tue Aug 6 09:31:52 2019 +0200
+
+    [meta.trans.other] Use hyphens, not underscores, for meta-functions.
+
+commit be443affbf06bfb14c2295311ed469896ae39d6c
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Aug 7 17:59:27 2019 -0700
+
+    [range.drop.while.overview] Add missing space in example.
+
+commit 1e09011ff3627db60ae10fa8fee2e2f5ef7dc5c9
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 18:13:55 2019 -0700
+
+    [format.string.general] indexes -> indices
+
+commit 71251ae592a49149faec1389ec85f22322aa0ba5
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 18:23:43 2019 -0700
+
+    [format.string.std] Fix space collapse in example. Use commas rather
+    than spaces to separate fields to more clearly show where whitespace is
+    introduced by a field rather than between fields.
+
+commit ee719cb98574ade2c113a17a16e6af247913456b
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 18:30:01 2019 -0700
+
+    [tab:format.type.float] Add "equivalent to" to remaining calls to
+    to_chars for consistency.
+
+commit add4ff3339153382b0e59d45e6bfeee4f923060a
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 18:35:05 2019 -0700
+
+    [time.format] Fix some minor issues (comma rather than period, moving a
+    "Let" sentence out of a Remarks clause to a separate paragraph, using
+    'class' rather than 'typename').
+
+commit d4b47a09e9089bc661c4ad6bb882a46f4aae92b6
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 18:38:26 2019 -0700
+
+    [time.syn] Fix specifier order in declarations to match library style.
+    Rename parameter 't' to 'hms' to make declaration and later description
+    match.
+
+commit 550553189899e1687629827dbb3fbf9c401f5d96
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 18:40:49 2019 -0700
+
+    [range.istream.iterator] Fix 'parent_' to the obviously-intended 'parent'.
+
+commit 791a19a1d206c77b97e7725aa9a8ea779bf94d7a
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 19:08:16 2019 -0700
+
+    [chrono], [iostreams], [support] Fix 'template <' and 'typename T' to
+    the conventional 'template<' and 'class T' throughout the library.
+
+commit ac72157b97d4b7b85ddb7ca412b5a4ee1806614d
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 19:11:57 2019 -0700
+
+    [cmp.object] Add missing template-head to function description.
+
+commit b050fd474f11441942c88ef69b8622c8036656ac
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 19:26:09 2019 -0700
+
+    [re.submatch.op] Fix inconsistency between declaration and description
+    of sub_match operator<=>: remove 'constexpr' from declaration, and
+    change return type in definition from 'bool' to 'auto'.
+
+commit 1335e42809151ecfdb671ea2aea1dab0c8d5db53
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 19:33:48 2019 -0700
+
+    [iterator.concept.sizedsentinel] Avoid potential ambiguity between
+    inclusive and exclusive "or" by using "and/or".
+
+commit 1b2bfda98c20ecd71a35b7321662f8f976134793
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 19:51:39 2019 -0700
+
+    [atomic] Remove invalid trailing 'const' from non-member function
+    atomic_flag_notify_all.
+
+commit afed449f0fa1324001260c9d658f6d05da90a9f9
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 19:55:21 2019 -0700
+
+    [thread.sema.cnt] "Class" -> "Class template" in description of a class
+    template.
+
+commit 7445919de1bcf4780693b7870a245486839587ea
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 19:58:05 2019 -0700
+
+    [thread.latch] Remove italics from non-definition of "latch".
+
+commit 224384ab43e4e9829eee5d97f09218850026d342
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Sat Aug 10 20:05:07 2019 -0700
+
+    [atomic] Consistently order atomic<...> and atomic_ref<...> definitions:
+    keep compare_exchange and fetch_* operations together because the latter
+    are a particular form of compare_exchange operation.
+
+commit 8644a2ce2faa6e979e224f069e4ca48238ea8570
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Aug 12 16:47:06 2019 -0700
+
+    [atomics.syn], [atomics.flag] Clean up presentation around
+    ATOMIC_FLAG_INIT.
+
+     * Add some vertical whitespace in description of atomic_flag operations.
+     * Reorder ATOMIC_FLAG_INIT earlier in synopsis for consistency.
+     * Add proper item description for ATOMIC_FLAG_INIT.
+     * Remove repetition of declarations of atomic_flag non-member functions
+       and the ATOMIC_FLAG_INIT macro from [atomics.flag].
+
+commit 2c1ab9775cc53e848a1efff4f9976455538994d4
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Mon Aug 12 16:56:24 2019 -0700
+
+    [string.erasure] Following the guidance given by P0980R1, and after
+    consultation with LWG chair, mark the std::erase and std::erase_if
+    overloads for std::basic_string as constexpr in addition to those
+    explicitly called out by the wording paper.
+
+commit 009d46f9b057a635383dce8bbcad121c86f1d306
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Tue Aug 13 18:16:48 2019 -0700
+
+    [over.match.class.deduct] Replace "therefrom" with a more common
+    construction, and more directly talk about the class template for which
+    we are ultimately performing deduction.
+
+commit ac9189f351bf0407a31968199c22274ff41fe9e7
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Tue Aug 13 18:21:14 2019 -0700
+
+    [diff.cpp17.class] Remove redundant cross-reference.
+
+commit ba642aa699973f21613cbe3e6a0b6d9c1e0f2e6a
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Aug 14 16:16:48 2019 -0700
+
+    [ostream] Add back the comments that P1423R3 requested, but now as a
+    note.
+
+commit 37ccff2c0e9be3a62fcd85b55e4d05c2b312335f
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Aug 14 16:48:00 2019 -0700
+
+    [dcl.fct.def.default] Clarify that the rule concerning how the type of a
+    defaulted function can differ from the type of an implicitly-declared
+    function only applies to the functions that are implicitly declared.
+
+commit 42ee105f5804a74bb15960944ee7fe1cd4420e04
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Aug 14 16:56:23 2019 -0700
+
+    [over.match.class.deduct] Clarify that an incomplete class type is never
+    treated as being an aggregate.
+
+commit fce4ac9764e10042bd8d0bb4152e83d697c8bdae
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Aug 14 17:02:06 2019 -0700
+
+    [dcl.typedef] Split paragraph on typedef name for linkage into two parts
+    (how you know when you have one, and the restrictions on types that have
+    one).
+
+commit 90a29c08bc80091c093937a7d96ce28df5ceee44
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Aug 14 17:21:15 2019 -0700
+
+    [conv.qual] Avoid bouncing back and forth between subscripts and regular
+    scripts for T1 and T2, and add missing definition for cv^j_i and P^j_i.
+
+commit 03bcd8d3e5ece969af846e23cd451549185fdac4
+Author: Jens Maurer <Jens.Maurer@gmx.net>
+Date:   Thu Aug 8 01:07:54 2019 +0200
+
+    [expr.ass] Remove mention of class types.
+
+commit 173905005c2c419548418239518db72bfda9dd9a
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Aug 14 17:48:53 2019 -0700
+
+    [dcl.attr.nodiscard] Make the constructor case better parallel the
+    function case by duplicating the implied "through a reachable
+    declaration" wording.
+
+commit acbe5e429499d0eaf6c118f0bca4bbc26830bcaf
+Author: Davis Herring <herring@lanl.gov>
+Date:   Mon Aug 12 12:07:06 2019 -0600
+
+    [dcl.attr.nodiscard], [diff.cpp17.dcl.dcl] Fix grammar/usage
+
+commit 5aa019b19118973d99a2b2282d3f6264da81c9d8
+Author: Davis Herring <herring@lanl.gov>
+Date:   Mon Aug 12 12:13:20 2019 -0600
+
+    [basic.def.odr] Clean up new bullets
+
+commit eb443396ac48b4e2ac9c6be0d9ec6bf9dda107eb
+Author: Davis Herring <herring@lanl.gov>
+Date:   Mon Aug 12 12:27:41 2019 -0600
+
+    [module.reach], [over.ics.rank] Fix punctuation
+
+commit 37d2e59e8deb847f5ebdade20604bdf5c119649a
+Author: Davis Herring <herring@lanl.gov>
+Date:   Mon Aug 12 14:14:50 2019 -0600
+
+    [expr.ass] Improve preposition
+
+commit 4a0fd9aa43a0d63d6fe875b886cdea8ec24d7f9d
+Author: Davis Herring <herring@lanl.gov>
+Date:   Mon Aug 12 15:03:56 2019 -0600
+
+    [over.match.class.deduct] Supply missing word
+
+commit 05c786cc68bf14a828cc59f32d34fae2baf33794
+Author: Davis Herring <herring@lanl.gov>
+Date:   Tue Aug 13 00:49:41 2019 -0600
+
+    [expr.new] Use typical \iref
+
+commit fc1863291a3f62a684d9bffa51fdc2837e9edcd0
+Author: Davis Herring <herring@lanl.gov>
+Date:   Tue Aug 13 14:55:54 2019 -0600
+
+    [class.spaceship] Remove vacuous conversion
+
+    The synthesized three-way comparison always produces a value of type R
+
+commit 80f2c46251f07abf422cdd86a3f3d30c47fda587
+Author: Davis Herring <herring@lanl.gov>
+Date:   Tue Aug 13 14:59:46 2019 -0600
+
+    [over.match.class.deduct] Fix terminology
+
+    An element with a dependent type might not be a subaggregate
+    Add cross-reference
+
+commit bfa0e698359d44e8a2b0a056e13e908a8185e296
+Author: Davis Herring <herring@lanl.gov>
+Date:   Tue Aug 13 15:02:06 2019 -0600
+
+    [over.match.class.deduct] Use "deduces"
+
+    ...for consistency in example
+
+commit 174edca593a860440860f95c3ee61aa739e2afdc
+Author: Davis Herring <herring@lanl.gov>
+Date:   Tue Aug 13 23:41:02 2019 -0600
+
+    [over.match.class.deduct] Simplify example
+
+commit a9f901af95f16540444144a397fe3b598ae2961b
+Author: Richard Smith <richard@metafoo.co.uk>
+Date:   Wed Aug 14 17:51:44 2019 -0700
+
+    [class.dtor] "The defaulted destructor" -> "A defaulted destructor",
+    since the destructor for a class might not be defaulted.
+
diff --git a/papers/n4829.md b/papers/n4829.md new file mode 100644 index 0000000000..0fee37aa7b --- /dev/null +++ b/papers/n4829.md @@ -0,0 +1,1137 @@ +# N4829 Editors' Report -- Programming Languages -- C++ + +2019-08-15 +Richard Smith (editor) (Google Inc) +Thomas Köppe (co-editor) (Google DeepMind) +Jens Maurer (co-editor) +Dawn Perchik (co-editor) (Bright Side Computing, LLC) +`` + +## Acknowledgements + +Special thanks to several paper authors +for supplying the LaTeX sources for their papers. + +Special thanks also to the Editing Committee -- +Daniel Krügler, Davis Herring, Nina Ranns, and Ville Voutilainen -- +for providing a careful review of the application of these motions +and the editorial changes described below +to ensure the correctness of the C++20 Committee Draft. + +Thanks to all those who have [submitted editorial +issues](https://github.com/cplusplus/draft/wiki/How-to-submit-an-editorial-issue) +and to those who have provided pull requests with fixes. + +## New papers + + * [N4830](http://wg21.link/n4830) is the committee draft for C++20. It replaces [N4820](http://wg21.link/n4820). + * N4829 is this Editors' Report. + +**Note**: +A working draft was circulated to the editing committee for review, +and was mistakenly published with paper number N4828. +N4828 is not the C++20 Committee Draft, +and does not contain the results of addressing feedback from +the editing committee. + +## Motions incorporated into working draft + +### Core working group motions + +CWG motion 1: [Core issue resolutions](http://wg21.link/p1510r0) for 10 issues in "tentatively ready" status applied: **(DR)** + + * [682](http://wg21.link/cwg682) Missing description of lookup of template aliases + * [2207](http://wg21.link/cwg2207) Alignment of allocation function return value + * [2300](http://wg21.link/cwg2300) Lambdas in multiple definitions + * [2366](http://wg21.link/cwg2366) Can default initialization be constant initialization? + * [2376](http://wg21.link/cwg2376) Class template argument deduction with array declarator + * [2390](http://wg21.link/cwg2390) Is the argument of `__has_cpp_attribute` macro-expanded? + * [2400](http://wg21.link/cwg2400) Constexpr virtual functions and temporary objects + * [2404](http://wg21.link/cwg2404) `[[no_unique_address]]` and allocation order + * [2406](http://wg21.link/cwg2406) `[[fallthrough]]` attribute and iteration statements + * [2418](http://wg21.link/cwg2418) Missing cases in definition of "usable in constant expressions" + +CWG motion 2: [P1161R3 "Deprecate uses of the comma operator in subscripting expressions"](http://wg21.link/p1161r3) + +CWG motion 3: [P1331R2 "Permitting trivial default initialization in constexpr contexts"](http://wg21.link/p1331r2) + +CWG motion 4: [P0735R1 "Interaction of `memory_order_consume` with release sequences"](http://wg21.link/p0735r1) + +CWG motion 5: [P0848R3 "Conditionally trivial special member functions"](http://wg21.link/p0848r3) + +CWG motion 6: [P1186R3 "When do you actually use `<=>`?"](http://wg21.link/p1186r3) + +CWG motion 7: [P1301R4 "`[[nodiscard("should have a reason")]]`"](http://wg21.link/p1301r4) + +CWG motion 8: [P1099R5 "`using enum`"](http://wg21.link/p1099r5) + +CWG motion 9: [P1630R1 "Spaceship needs a tune-up"](http://wg21.link/p1630r1) + +CWG motion 10: [P1616R1 "Using unconstrained template template parameters with constrained templates"](http://wg21.link/p1616r1) + +CWG motion 11: [P1816R0 "Class template argument deduction for aggregates"](http://wg21.link/p1816r0) + +CWG motion 12: [P1668R1 "Enabling `constexpr` intrinsics by permitting unevaluated inline assembly in `constexpr` functions"](http://wg21.link/p1668r1) + +CWG motion 13: [P1766R1 "Mitigating minor modules maladies"](http://wg21.link/p1766r1) **(DR)** + +CWG motion 14: [P1811R0 "Relaxing redefinition restrictions for re-exportation robustness"](http://wg21.link/p1811r0) + +CWG motion 15: [P0388R4 "Permit conversions to arrays of unknown bound"](http://wg21.link/p0388r4) + +CWG motion 16: [P1823R0 "Remove contracts"](http://wg21.link/p1823r0) + +CWG motion 17: [P1143R2 "Adding the `constinit` keyword"](http://wg21.link/p1143r2) + +CWG motion 18: [P1452R2 "On the non-uniform semantics of *return-type-requirement*s"](http://wg21.link/p1452r2) + +CWG motion 19: [P1152R4 "Deprecating `volatile`"](http://wg21.link/p1152r4) + +CWG motion 20: [P1771R1 "`[[nodiscard]]` for constructors"](http://wg21.link/p1771r1) **(DR)** + +CWG motion 21: [P1814R0 "Class template argument deduction for alias templates"](http://wg21.link/p1814r0) + +CWG motion 22 was withdrawn + +CWG motion 23: [P1825R0 "Merged wording for P0527R1 and P1155R3"](http://wg21.link/p1825r0) **(DR)** + + * [P0527R1 "Implicitly move from rvalue references in return statements"](http://wg21.link/p0527r1) + * [P1155R3 "More implicit moves"](http://wg21.link/p1155r3) + +CWG motion 24: [P1703R1 "Recognizing header unit imports requires full preprocessing"](http://wg21.link/p1703r1) + +CWG motion 25: [P0784R7 "More `constexpr` containers"](http://wg21.link/p0784r7) + +### Library working group motions + +LWG motion 1: [Library issue resolutions](http://wg21.link/p1724r0) for 17 issues in "Ready" and "Tentatively Ready" status applied: **(DR)** + + * [3209](http://wg21.link/lwg3209) Expression in `year::ok()` returns clause is ill-formed + * [3208](http://wg21.link/lwg3208) `Boolean`'s expression requirements are ordered inconsistently + * [3206](http://wg21.link/lwg3206) `year_month_day` conversion to `sys_days` uses not-existing member function + * [3202](http://wg21.link/lwg3202) [P0318R1](http://wg21.link/p0318r1) was supposed to be revised + * [3199](http://wg21.link/lwg3199) `istream >> bitset<0>` fails + * [3198](http://wg21.link/lwg3198) Bad constraint on `std::span::span()` + * [3196](http://wg21.link/lwg3196) `std::optional` is ill-formed if `T` is an array + * [3191](http://wg21.link/lwg3191) `std::ranges::shuffle` synopsis does not match algorithm definition + * [3187](http://wg21.link/lwg3187) [P0591R4](http://wg21.link/p0591r4) reverted [DR 2586](http://wg21.link/lwg2586) fixes to `scoped_allocator_adaptor::construct()` + * [3186](http://wg21.link/lwg3186) Ranges `remove`, `partition`, and `partial_sort_copy` algorithms discard useful information + * [3185](http://wg21.link/lwg3185) Uses-allocator construction functions missing `constexpr` and `noexcept` + * [3184](http://wg21.link/lwg3184) Inconsistencies in `bind_front` wording + * [3183](http://wg21.link/lwg3183) Normative permission to specialize ranges variable templates + * [3169](http://wg21.link/lwg3169) Ranges permutation generators discard useful information + * [3158](http://wg21.link/lwg3158) `tuple(allocator_arg_t, const Alloc&)` should be conditionally explicit + * [3055](http://wg21.link/lwg3055) `path::operator+=(`single-character`)` misspecified + * [2899](http://wg21.link/lwg2899) `is_(nothrow_)move_constructible` and `tuple`, `optional` and `unique_ptr` + +LWG motion 2: [P1355R2 "Exposing a narrow contract for `ceil2`"](http://wg21.link/p1355r2) + +LWG motion 3: [P0553R4 "Bit operations"](http://wg21.link/p0553r4) + +LWG motion 4: [P1424R1 "`constexpr` feature macro concerns"](http://wg21.link/p1424r1) + +LWG motion 5: [P0645R10 "Text formatting"](http://wg21.link/p0645r10) + +LWG motion 6: [P1361R2 "Integration of chrono with text formatting"](http://wg21.link/p1361r2) + +LWG motion 7: [P1652R1 "Printf corner cases in `std::format`"](http://wg21.link/p1652r1) + +LWG motion 8: [P0631R8 "Math constants"](http://wg21.link/p0631r8) + +LWG motion 9: Synchronization library: + + * [P1135R6 "The C++20 synchronization library"](http://wg21.link/p1135r6) + * [P1643R1 "Add wait/notify to `atomic_ref`"](http://wg21.link/p1643r1) + * [P1644R0 "Add wait/notify to `atomic`"](http://wg21.link/p1644r0) + +LWG motion 10: [P1466R3 "Miscellaneous minor fixes for chrono"](http://wg21.link/p1466r3) + +LWG motion 11: [P1754R1 "Rename concepts to `standard_case` for C++20, while we still can"](http://wg21.link/p1754r1) + +LWG motion 12: [P1614R2 "The mothership has landed"](http://wg21.link/p1614r2) + +LWG motion 13: [P0325R4 "`to_array` from LFTS with updates"](http://wg21.link/p0325r4) + +LWG motion 14: [P0408R7 "Efficient access to `basic_stringbuf`'s buffer"](http://wg21.link/p0408r7) + +LWG motion 15: [P1423R3 "`char8_t` backward compatibility remediation"](http://wg21.link/p1423r3) + +LWG motion 16: [P1502R1 "Standard library header units"](http://wg21.link/p1502r1) + +LWG motion 17: [P1612R1 "Relocate `endian`'s specification"](http://wg21.link/p1612r1) + +LWG motion 18: [P1661R1 "Remove dedicated precalculated hash lookup interface"](http://wg21.link/p1661r1) + +LWG motion 19: [P1650R0 "Output `std::chrono::days` with `d` suffix"](http://wg21.link/p1650r0) + +LWG motion 20: [P1651R0 "`bind_front` should not unwrap `reference_wrapper`"](http://wg21.link/p1651r0) + +LWG motion 21: [P1065R2 "Constexpr `invoke`"](http://wg21.link/p1065r2) + +LWG motion 22: [P1207R4 "Movability of single-pass iterators"](http://wg21.link/p1207r4) + +LWG motion 23: [P1035R7 "Input range adaptors"](http://wg21.link/p1035r7) + +LWG motion 24: [P1638R1 "`basic_istream_view::iterator` should not be copyable"](http://wg21.link/p1638r1) + +LWG motion 25: [P1522R1 "Iterator difference type and integer overflow"](http://wg21.link/p1522r1) + +LWG motion 26: [P1004R2 "Making `std::vector` constexpr"](http://wg21.link/p1004r2) + +LWG motion 27: [P0980R1 "Making `std::string` constexpr"](http://wg21.link/p0980r1) + +LWG motion 28: [P0660R10 "Stop token and joining thread"](http://wg21.link/p0660r10) + +LWG motion 29: [P1474R1 "Helpful pointers for `ContiguousIterator`"](http://wg21.link/p1474r1) + +LWG motion 30: [P1523R1 "Views and size types"](http://wg21.link/p1523r1) + +LWG motion 31: [P0466R5 "Layout-compatibility and pointer-interconvertibility traits"](http://wg21.link/p0466r5) + +LWG motion 32: [P1208R6 "`source_location`"](http://wg21.link/p1208r6) + +## Notable editorial changes + +### CWG motion 21 + +The changes for this motion in [over.match.class.deduct] +described the matching of a *simple-template-id* against +the *defining-type-id* of an alias template +in imprecise terms +(quoting only part of the grammar to which the change intended to apply). +This has been made more precise by repeating the full grammar +previously specified in [dcl.type.simple] +in [over.match.class.deduct]. + +### LWG motions 5-7 + +The new `std::format` library underwent substantial editorial rework +for clarity and precision. +Thanks to Tomasz Kamiński and +Johel Ernesto Guerrero Peña +for reviewing the resulting edits, +and to Victor Zverovich for responding to various questions about intent. + +### LWG motion 10 + +The `operator<<` added for `hh_mm_ss` was written in terms of +the old chrono formatting machinery that was replaced by +`std::format`-based machinery by LWG motion 6. +It has been rephrased in terms of `std::format`. +Thanks to Howard Hinnant for providing wording. + +### LWG motion 11 + +In addition to the requested renames, the following concepts were also renamed, +following the editorial instructions to rename all other concepts: + + * `ThreeWayComparableWith` -> `three_way_comparable_with` + * `ThreeWayComparable` -> `three_way_comparable` + * `ForwardRange` -> `forward_range` + +### LWG motion 14 + +This motion requested that the same constructor be added to `basic_stringbuf` +twice. It was only added once. + +### LWG motion 23 + +The wording paper proposed making changes to the algorithms + + * `std::ranges::sample` + * `std::ranges::shift_left` + * `std::ranges::shift_right` + +However, these algorithms were never adopted into the C++ working draft from +the Ranges Technical Specification, so after consulting with the Library +Working Group, the requested changes to these algorithms were ignored. + +### LWG motion 26, 27 + +These motions would have added `constexpr` to +`operator<`, `operator>`, `operator<=`, `operator>=`, and `operator!=` functions +that LWG motion 12 removed. +Instead `constexpr` was added to the replacement `operator<=>`. + +In addition, following the paper's request to add `constexpr` to any +`std::basic_string` functions that the wording missed, and after consulting +with the LWG chair as directed, the overloads of `std::erase` and +`std::erase_if` for `std::basic_string` were also marked `contexpr`. + +### Section label changes + +Several section labels introduced by the motions papers have been modified +to match our style guide. In addition to the section labels affected by the +above motions, the following section labels have been renamed: + + * [concept.convertibleto] => [concept.convertible] + * [concept.derivedfrom] => [concept.derived] + * [concept.stricttotallyordered] => [concept.totallyordered] + +## Feature test macros + +Attention should be drawn to the fact that multiple papers updated feature test +macros to the same version: + + * `__cpp_constexpr` was updated to `201907L` by both + [P1331R2](http://wg21.link/p1331r2) (CWG motion 3) and + [P1668R1](http://wg21.link/p1668r1) (CWG motion 12). + * `__has_cpp_attribute(nodiscard)` was updated to `201907L` by both + [P1304R4](http://wg21.link/p1304r4) (CWG motion 7) and + [P1771R1](http://wg21.link/p1771r1) (CWG motion 20). + +Implementers should be aware that the new version of the feature test macro +advertises support for both papers in these cases (in addition to advertising +support for prior papers that gave smaller version numbers to the relevant +macro). + +## Minor editorial fixes + +A log of editorial fixes made to the working draft since N4820 is below. +This list excludes changes +that do not affect the body text or only affect whitespace or typeface. For a +complete list including such changes (or for the actual deltas applied by these +changes), consult the [draft sources on github](https://github.com/cplusplus/draft/compare/n4820...n4830). + + commit 44ea29778d15cd5d9f2b5c706c6b3f4338548ec2 + Author: Casey Carter + Date: Tue Jun 25 06:04:14 2019 -0700 + + [range.filter.sentinel] Correct typo in constructor Effects (#2937) + + commit 97b615a5a6ab0598b624ee05402c531d0421cff6 + Author: Casey Carter + Date: Tue Jun 25 06:09:55 2019 -0700 + + [iterator.synopsis] Copy constraint for iterator_traits from [iterator.traits]/5 (#2943) + + commit da7eac5e621b5fab12c0b1992100c4bfd983ed8e + Author: Saar Raz + Date: Mon Jul 1 22:46:37 2019 +0300 + + [Concepts] Remove qualified-concept-name reference + + Update 'qualified-concept-name' (the previous incarnation of 'type-constraint') reference to 'type-constraint' in [temp.over.link]p6. + + commit f54f306c3b9fad27e70766963840e3df14f20b28 + Author: Jens Maurer + Date: Thu Jul 4 15:34:38 2019 +0200 + + [func.bind] Remove bogus 'shall's. (#2955) + + commit 72cc844ef44ae47aebb1ad346146138d3279be9e + Author: Eelis + Date: Fri Jul 5 16:16:58 2019 +0200 + + [expr.reinterpret.cast] Properly capitalize full-sentence bullets. (#2956) + + commit c635711cdd81346ad41c7861adb8035176fa236f + Author: Eelis + Date: Fri Jul 5 23:55:22 2019 +0200 + + [temp.constr.constr] Add missing period at end of sentence. (#2957) + + commit 4f9942cafadc17fb902610b4c67afb6fcf81ff64 + Author: Jens Maurer + Date: Sun Jul 7 19:38:20 2019 +0200 + + [dcl.asm] Rename grammar term 'asm-definition' to 'asm-declaration' + + commit 51c5b01217799fdfa754179c20af888ec8c1889d + Author: Casey Carter + Date: Wed Jul 10 00:40:19 2019 -0700 + + [temp.constr.order] Remove extraneous "the". (#2964) + + commit 67db9422b6bc58f5399c7c019ec5ede28d8ac4f5 + Author: Jens Maurer + Date: Fri Jun 28 17:01:54 2019 +0200 + + [expr.prim.req] Fix cross-reference for substituting into constraints. + + commit 98c2c56ab5e945452586270d72d2fb606b71cd94 + Author: Richard Smith + Date: Mon Jul 22 02:24:42 2019 +0200 + + [class.prop] [special] Move definition of eligible special member + functions to the section on special member functions. + + commit 94a72b5c11a20cfd6c92a4faa5bd0df4b8ebc620 + Author: Richard Smith + Date: Mon Jul 22 02:28:15 2019 +0200 + + [class.dtor] Reorder the introduction of an implicit prospective + destructor to before we describe the overload resolution to pick the + actual destructor. + + commit 6bd3daeae3a3e9ae6174c35ab020dbfe4504b75b + Author: Richard Smith + Date: Thu Aug 1 20:04:36 2019 -0700 + + [class.ctor], [class.dtor] Introduce actual definitions for + "constructor" and "prospective destructor". + + commit dc45e8c329eeb0076d074fa671c2be2fc605555a + Author: Richard Smith + Date: Mon Jul 22 03:18:33 2019 +0200 + + [class.spaceship] Remove incorrect note. + + commit d6a291776858bc647fc6826888767284f305c799 + Author: Richard Smith + Date: Mon Jul 22 03:58:34 2019 +0200 + + [dcl.attr.nodiscard] Simplify note describing the string-literal in a + nodiscard attribute and make it less confusing. + + commit 46ba985402de963f50d364b26b594707be16c7c9 + Author: Richard Smith + Date: Mon Jul 22 04:42:43 2019 +0200 + + [dcl.enum] Avoid hanging paragraphs by moving "Enumeration declarations" + down one level to a sibling of "The using enum declaration". + + [namespace.udir] Rename section to "Using namespace directive" to + further distinguish this from a using enum declaration. + + commit 5d1bb1c7f8ed44016c38bfeb9797e363d52cfc51 + Author: Richard Smith + Date: Thu Aug 1 20:42:13 2019 -0700 + + [over.match.oper] Replace "member, non-member, and built-in candidates" + with "non-rewritten candidates" + + This simplifies the wording, implicitly explains why we're considering + only some candidates, and avoids overtly suggesting that we could ever + pick a reversed-parameter-order built-in candidate. + + commit 1fbc1c315008152770eea8bd383aa2a4fa47cfd5 + Author: Jens Maurer + Date: Fri Jul 26 16:56:13 2019 +0200 + + [basic.def.odr] Turn long comma-separate list into bullets. + + commit c0c589881759871b2183105f315d4ddd0d2734be + Author: Jens Maurer + Date: Thu Aug 1 22:47:19 2019 +0200 + + [expr.const.cast] Clarify pairwise correspondence for P_i. + [over.ics.rank] Move cross-reference pointing to [conv.qual]. + + commit 47539b965a84f69c548fe043a632af17db3cb315 + Author: Richard Smith + Date: Fri Aug 2 15:49:39 2019 -0700 + + [conv.qual] Move note after the rule that implies it. + + commit f10e3751b39138746b601fa702c9ed9e67777c96 + Author: Richard Smith + Date: Fri Aug 2 15:59:50 2019 -0700 + + [over.ics.rank] Reorder examples to match order of normative text. + + commit 813a4300a036f12d5ff6b82965b83a8e87b1ae8d + Author: Richard Smith + Date: Fri Aug 2 16:55:56 2019 -0700 + + [dcl.attr.nodiscard] Fix vexing-parse bug in example. Make sure the + missiles actually get launched, not merely redeclared. + + commit 6e845457bfd83f20c2f61bf4015afcd96cbd0cec + Author: Richard Smith + Date: Fri Aug 2 17:17:52 2019 -0700 + + [over.match.class.deduct] Fix failure to handle the case where a + deducible alias template's defining-type-id contains a + nested-name-specifier (or 'typename' or 'template' keywords). + + commit 7226ced32fe3cda28eb05f044985427684397128 + Author: Richard Smith + Date: Fri Aug 2 17:26:53 2019 -0700 + + [over.match.class.deduct] Switch from imperative to passive, and clarify + what happens if the various 'if' conditions are not met. + + commit 6552c03d3793e7532793097d760edc3a93e150b1 + Author: Richard Smith + Date: Fri Aug 2 17:32:40 2019 -0700 + + [over.match.class.deduct] Put all bullets describing the properties of + f' at the same depth, and guard them all by the condition that we're + actually adding an f' to the set of guides. + + commit b3b7d37c073051826c21c231bd386c10d64433dc + Author: Jens Maurer + Date: Fri Aug 2 22:09:14 2019 +0200 + + [class.copy.elision] Add cross-reference, fix example. + + commit 4a657ca3e26850a993c2015bbecd6287e817a615 + Author: Richard Smith + Date: Sat Aug 3 18:51:09 2019 -0700 + + [iterator.concept.sizedsentinel], [range.sized], [range.view] + Provide proper descriptions for disable_sized_sentinel, + disable_sized_range, and enable_view. + + commit 796c871f9b14a42fea634ec97a35032bfe3c422a + Author: Jens Maurer + Date: Tue Jul 23 09:57:04 2019 +0200 + + [bit] Avoid std::numeric_limits<...> + + Referring to numeric_limits (without std:: prefix) is sufficient. + + commit fb97956bc9eee5a50c10df9148d9422e260e352c + Author: Richard Smith + Date: Wed Jul 31 17:28:28 2019 -0700 + + [format.formatter] Add subclause heading to avoid hanging paragraphs. + + commit eae84a0a10b4409da01ae5c9e7c734e113973cdf + Author: Richard Smith + Date: Wed Jul 31 17:34:37 2019 -0700 + + [format.string] Clarify that "other characters" means "characters other + than { and }". + + commit b62dc39c0541a1968ac1717773574f4ef868934c + Author: Richard Smith + Date: Wed Jul 31 18:05:00 2019 -0700 + + [format.string] Change 'integer' grammar to be left-recursive and factor + out separate positive-integer and nonnegative-integer productions for + clarity. + + commit 2db4bd64f7f157266ae0f7c7c44c4fe7c68c6070 + Author: Richard Smith + Date: Wed Jul 31 18:14:56 2019 -0700 + + [format.string] Fix wording that talks about omitting arg-ids but + presupposes that they are all present to instead specify what happens + when some or all are absent. + + commit 5a32fd1040b8a7c4c997ba8841c4f28a34a6c97d + Author: Richard Smith + Date: Wed Jul 31 18:26:41 2019 -0700 + + [format.string] Add missing grammar definition for custom-format-spec + rather than leaving it dangling. + + commit d529b96f3be22332d4a88de646f56cb636680f6c + Author: Richard Smith + Date: Wed Jul 31 18:33:05 2019 -0700 + + [format.string] Make tone of wording more formal and less tutorialesque. + + commit 3ced91d524f3c2a850243863440151735276b38a + Author: Richard Smith + Date: Wed Jul 31 18:41:56 2019 -0700 + + [format.context] Add specification of wformat_context analogous to that + of format_context, as discussed on lib reflector. + + commit ed00761315546c11b48441e1bcef6aa5927f76c8 + Author: Richard Smith + Date: Thu Aug 1 18:17:10 2019 -0700 + + [format.string] Explicitly list all the possible formatting types for + bool and charT in their respective tables rather than requiring the + reader to infer how to merge the integer table into the bool and charT + tables. + + commit 46622695da52f8080f7280207eecd93bd950cc1a + Author: Richard Smith + Date: Sat Aug 3 19:57:13 2019 -0700 + + [format.functions] Use clamp rather than min(max(a,b),c) + + Co-Authored-By: Johel Ernesto Guerrero Peña + + commit a870403a2dc47924e7f607f7c69694291d43007c + Author: Richard Smith + Date: Sat Aug 3 20:39:06 2019 -0700 + + [format.arg] Don't use placeholder name for private member char-type. + + commit d17fd4d5f10f6af87654fdc73bd6417313a295f2 + Author: Richard Smith + Date: Sun Aug 4 14:04:04 2019 -0700 + + [format.string] Avoid duplicating the specification of '#' for integers. + + Fix the specification for '#' being different for octal integers in the + two places it's specified. + + commit e30b8a69d485b96ddacfa31b7eb411c5a64d83a5 + Author: Richard Smith + Date: Sun Aug 4 14:23:48 2019 -0700 + + [format.string] Separate out the general (type-independent) description + of formatting from the format specifiers for arithmetic and string + types, and make the presentation of the latter consistent with the + presentation for chrono types. + + commit f430bec8e7a4437b69d1ad31b2c1f4246e753770 + Author: Richard Smith + Date: Sun Aug 4 15:09:26 2019 -0700 + + [format.string.std] Convert normative duplication to a note to avoid + creating the impression that alignment is only applied to non-string + types. + + commit b6454e39ede7ab11ce0958fa2ee3b487c8983ae1 + Author: Richard Smith + Date: Sun Aug 4 15:32:02 2019 -0700 + + [format.string] Further clarify description of cases where formatting is + described in terms of a call to to_chars. + + commit 895f30bd225d050bcb2ab9f0a793af9865dcd513 + Author: Richard Smith + Date: Sun Aug 4 20:02:33 2019 -0700 + + [format.formatter] Reorder Formatter requirements before the + descriptions of specializations that meet those requirements. + + commit c7ada4d28ae7be82ef64104617e216fd738a4d0f + Author: Jens Maurer + Date: Tue Jul 30 16:07:16 2019 +0200 + + [numbers] Use 'template', not 'typename'. + + commit 14aa4ed0d323c163f0559bd7c8555d77f2dc8093 + Author: Jens Maurer + Date: Tue Jul 30 16:12:59 2019 +0200 + + [math.constants] Expand 'math' to 'mathematical'. + + commit 3f761c76b5daf9f1a75695226514c323ba6619f0 + Author: Jens Maurer + Date: Thu Aug 1 10:50:09 2019 +0200 + + [numbers.syn] Use 'namespace std::numbers'. + + commit dc61857d3779253c6cdeec572cdcb43077b0ce86 + Author: Richard Smith + Date: Sun Aug 4 20:51:47 2019 -0700 + + [atomics.lockfree] "are" -> "is"; "along with" is not a coordinating + conjunction. + + commit 3d3f16f99454d3ffffcfbf92a02b9bcaac9b375b + Author: Richard Smith + Date: Sun Aug 4 21:50:27 2019 -0700 + + [thread.barrier.class] Rename constructor parameter from `phase_count` + to `expected`. + + The parameter is not a phase count, and is referred to by other + normative wording as `expected`; also, `expected` is the name we use for + the same parameter in the constructor of `latch`. + + commit 2e82327045fb92d89dd1431cc7e771da63c982dc + Author: Jens Maurer + Date: Thu Aug 1 10:37:25 2019 +0200 + + [time.hms.members] Rephrased note. + [time.hms.overview] Removed redundant declaration of operator<<. + [time.hms.overview] Moved exposition-only data members to the bottom. + + commit 1a37c22bb6b621f14d01b4e16378c9cd08724183 + Author: Richard Smith + Date: Sun Aug 4 23:36:25 2019 -0700 + + [time.hms.nonmembers] Finish rebase on std::format: rewrite hh_mm_ss + operator<< in terms of format rather than using (removed) old formatting + terminology. + + commit 584a87ec1d48862b9e68a269d0a5eb7b05d6999d + Author: Richard Smith + Date: Mon Aug 5 13:57:50 2019 -0700 + + [time.hms.nonmembers] Fix editorial error in hh_mm_ss operator<< (only + stream to 'os' once). This formulation was proposed by Howard Hinnant + on the lib reflector. + + commit d243672db3269754d4ee91a5fbcdfb82ae6f2539 + Author: Jens Maurer + Date: Tue Jul 30 16:01:10 2019 +0200 + + Apply P1452R2 On the non-uniform semantics of return-type-requirements + to newly-introduced return type requirements. + + commit 90f64792ec7d5372a093d3bea69dffff2f7af28a + Author: Richard Smith + Date: Mon Aug 5 13:48:59 2019 -0700 + + Rename _s to -s in placeholder names per editorial guidelines. + + commit ad685c42b18103ace094b375a4fde1a7ec6aba02 + Author: Dawn Perchik + Date: Tue Jul 30 19:33:10 2019 -0700 + + [stringbuf] Name string parameters "s" instead of "str" for consistency and to avoid confusion with "str" methods. + + commit 26f7cd6d3b2d271c74e1d2022f972f833de940f6 + Author: Dawn Perchik + Date: Thu Aug 1 13:35:42 2019 -0700 + + [stringbuf.members] Minor fixes to P0408R7 wording. + + "str()" should be "str"; we're talking about all str member functions here. + Add comma after "For efficiency reasons". + "i.e." -> "e.g." since we're describing an example case. + + commit b4a8b798e00bce697af9b477a214828b69e9e383 + Author: Richard Smith + Date: Mon Aug 5 17:31:21 2019 -0700 + + [module.unit] Add "either" to clarify that we're talking about + module-names containing a reserved identifier, not module names starting + with an identifier that contains a reserved identifier. + + commit 906fd4d0519994e06659ce066c8252df186c23b9 + Author: Richard Smith + Date: Mon Aug 5 17:57:35 2019 -0700 + + [func.require] Convert restrictive 'which' to 'that'. + + commit 7e862f0f238257b2cbb1f7296a593b4587029e39 + Author: Richard Smith + Date: Mon Aug 5 18:46:55 2019 -0700 + + [range.transform.sentinel] Reinstate transform_view::sentinel::operator- + overloads, accidentally removed during application of P1614R2. + + commit e02aa79ca43de3fdf6e1887d4fd02bc58874e190 + Author: Jens Maurer + Date: Wed Jul 31 22:55:50 2019 +0200 + + [range.istream.view] Do not repeat declaration of function istream_view + [range.elements.iterator] Renamed from [range.elements_view.iterator] + [range.elements.iterator] Use local typedef difference_type + [range.elements.iterator] Use reference return type for compound assignment + + commit a0b5a70fade22203ebfbaeb4828e0c304b1f62ab + Author: Richard Smith + Date: Mon Aug 5 23:02:38 2019 -0700 + + [ranges] Fix 'constexpr friend' to our preferred order 'friend constexpr'. + + commit f0256ab73cd6a9fae611af95526d16fe59968d4c + Author: Richard Smith + Date: Mon Aug 5 23:08:59 2019 -0700 + + [range.drop.view] Fix typo "requirement" -> "required". + + commit 7698c3dc28251540b4a4733cc4a6b3f6942f13ed + Author: Richard Smith + Date: Tue Aug 6 00:40:47 2019 -0700 + + [range.iota.view] Rename IOTA_DIFF_T to the preferred IOTA-DIFF-T. + + commit cf1bc270c0e7d7b1670502c69268b0373bbf9799 + Author: Richard Smith + Date: Tue Aug 6 01:35:47 2019 -0700 + + [thread] Update headings, comments, and line wrapping to match editorial + conventions. + + commit 7f4e95e3296b31c23bfb358f31294d384a955e3b + Author: Jens Maurer + Date: Sat Aug 3 08:38:34 2019 +0200 + + [support.srcloc] Fix comments in example. + + commit 06ab7ebef8a763e36f87f504ed7765528aa25fc7 + Author: Richard Smith + Date: Tue Aug 6 02:28:42 2019 -0700 + + [support.srcloc.cons] Use term "default member initialier" rather than + describing it indirectly. + + commit 7beed51f4388074f46fd55a7c5f559cd82b7c40c + Author: Dawn Perchik + Date: Tue Jul 30 20:36:34 2019 -0700 + + [alg.is.permutation] Add parameters to \libconcept{sized_sentinel_for} as suggested in PR #3099. + + commit fbb0691134e39059adaa4a886e7d746b0e56c81c + Author: Dawn Perchik + Date: Wed Jul 31 12:52:26 2019 -0700 + + [concepts] Renamed concepts' section names to remove trailing prepositions for consistency. + + * concept.convertibleto => concept.convertible + * concept.derivedfrom => concept.derived + * concept.stricttotallyordered => concept.totallyordered + + commit e2a070f7a5484e272c10e4ab31359fede5ff24a1 + Author: Richard Smith + Date: Tue Aug 6 13:51:24 2019 -0700 + + [diff.cpp17.library], [tab:headers.cpp] Add missing entry + to the list of headers, and add various missing entries to the list of + new-in-C++20 headers. + + Fixes #3122. + + commit 54a87d7849e7d5283c2d0a34f8200ef6a67bb0da + Author: Jens Maurer + Date: Tue Aug 6 23:17:24 2019 +0200 + + [conv.qual,expr.static.cast] Harmonize notes on cv-qualified function types. + + commit ee234abfbfa7deb5c585b67590205e1660df180f + Author: Jens Maurer + Date: Thu Aug 1 16:45:51 2019 +0200 + + [time.clock,bit.cast] Replace template with template + + as per library specification policy. + + commit a374c4f3664cf84a4440feb3c236076b25cfe736 + Author: languagelawyer <38548419+languagelawyer@users.noreply.github.com> + Date: Thu Jul 25 21:24:06 2019 +0200 + + [tuple] Use "objects" instead of "variables" + with "temporary" in the definition of `forward_as_tuple` + + commit 7e02aa3d7d3e5e9dfc2c66451e112d40f4491465 + Author: Jonathan Wakely + Date: Mon Jul 22 23:27:57 2019 +0100 + + [is.sorted] Add missing "return" and semi-colon + + This was lost when changing "Returns:" to "Effects:" for P0896R4. The + paper included this change, but it was lost when applying it. + + commit cc421307fb4ce393e7ab1dcf0d0f1298d163fbe0 + Author: Yehezkel Bernat + Date: Sun Jul 21 22:16:23 2019 +0300 + + Delete irrelevant copy-paste from previous section + + commit d4c4cc0ac037c51ec10cf6f7c80d8c761b517cba + Author: onihusube <44743040+onihusube@users.noreply.github.com> + Date: Wed Jul 17 22:46:24 2019 +0900 + + [basic.lookup.argdep]/5 add export to apply() + + fix #2968 + + commit 557cfa9dd706780fb672bfe9e5e2f0ef3b2f3d4a + Author: Jens Maurer + Date: Thu Jul 4 09:31:57 2019 +0200 + + [basic.life] Lifetime of class objects is treated uniformly + under CWG2256, regardless of triviality of the destructor. + + commit 4c3b9f50ecd230263974c81e1df2fb07b541c58d + Author: onihusube <44743040+onihusube@users.noreply.github.com> + Date: Mon Jul 1 16:26:16 2019 +0900 + + [module.global] fix sample code comment + + commit 06bd4b02febcb43c014ffd46b7a07dab8d66aa4b + Author: onihusube <44743040+onihusube@users.noreply.github.com> + Date: Mon Jul 1 16:41:33 2019 +0900 + + [cpp.module] fix sample code comment + + commit 1be069efaa41f4df376364290f8069ec030b13cc + Author: Jens Maurer + Date: Fri Jun 28 17:11:44 2019 +0200 + + [time.parse] Fix description of %Ex and %EX parse flags. + + Also refer to the table number instead of 'the table below'. + + commit f038d86fb9112b62adaaebaf95dc70d786412cbd + Author: Jens Maurer + Date: Fri Jun 28 16:50:03 2019 +0200 + + [res.on.functions] Properly capitalize full-sentence bullets. + + Also add periods at the end of sentences. + + commit 43945886b4ff4481da3d29b3f624d55bc9b5d124 + Author: Jens Maurer + Date: Mon Jun 24 22:43:30 2019 +0200 + + [conv.qual] Fix example for cv-decomposition. + + After CWG2051, a cv-decomposition can also be a no-op. + + commit 915031ddbf75f856efcea43928d9f459140834fd + Author: Jens Maurer + Date: Tue Aug 6 09:31:52 2019 +0200 + + [meta.trans.other] Use hyphens, not underscores, for meta-functions. + + commit be443affbf06bfb14c2295311ed469896ae39d6c + Author: Richard Smith + Date: Wed Aug 7 17:59:27 2019 -0700 + + [range.drop.while.overview] Add missing space in example. + + commit 1e09011ff3627db60ae10fa8fee2e2f5ef7dc5c9 + Author: Richard Smith + Date: Sat Aug 10 18:13:55 2019 -0700 + + [format.string.general] indexes -> indices + + commit 71251ae592a49149faec1389ec85f22322aa0ba5 + Author: Richard Smith + Date: Sat Aug 10 18:23:43 2019 -0700 + + [format.string.std] Fix space collapse in example. Use commas rather + than spaces to separate fields to more clearly show where whitespace is + introduced by a field rather than between fields. + + commit ee719cb98574ade2c113a17a16e6af247913456b + Author: Richard Smith + Date: Sat Aug 10 18:30:01 2019 -0700 + + [tab:format.type.float] Add "equivalent to" to remaining calls to + to_chars for consistency. + + commit add4ff3339153382b0e59d45e6bfeee4f923060a + Author: Richard Smith + Date: Sat Aug 10 18:35:05 2019 -0700 + + [time.format] Fix some minor issues (comma rather than period, moving a + "Let" sentence out of a Remarks clause to a separate paragraph, using + 'class' rather than 'typename'). + + commit d4b47a09e9089bc661c4ad6bb882a46f4aae92b6 + Author: Richard Smith + Date: Sat Aug 10 18:38:26 2019 -0700 + + [time.syn] Fix specifier order in declarations to match library style. + Rename parameter 't' to 'hms' to make declaration and later description + match. + + commit 550553189899e1687629827dbb3fbf9c401f5d96 + Author: Richard Smith + Date: Sat Aug 10 18:40:49 2019 -0700 + + [range.istream.iterator] Fix 'parent_' to the obviously-intended 'parent'. + + commit 791a19a1d206c77b97e7725aa9a8ea779bf94d7a + Author: Richard Smith + Date: Sat Aug 10 19:08:16 2019 -0700 + + [chrono], [iostreams], [support] Fix 'template <' and 'typename T' to + the conventional 'template<' and 'class T' throughout the library. + + commit ac72157b97d4b7b85ddb7ca412b5a4ee1806614d + Author: Richard Smith + Date: Sat Aug 10 19:11:57 2019 -0700 + + [cmp.object] Add missing template-head to function description. + + commit b050fd474f11441942c88ef69b8622c8036656ac + Author: Richard Smith + Date: Sat Aug 10 19:26:09 2019 -0700 + + [re.submatch.op] Fix inconsistency between declaration and description + of sub_match operator<=>: remove 'constexpr' from declaration, and + change return type in definition from 'bool' to 'auto'. + + commit 1335e42809151ecfdb671ea2aea1dab0c8d5db53 + Author: Richard Smith + Date: Sat Aug 10 19:33:48 2019 -0700 + + [iterator.concept.sizedsentinel] Avoid potential ambiguity between + inclusive and exclusive "or" by using "and/or". + + commit 1b2bfda98c20ecd71a35b7321662f8f976134793 + Author: Richard Smith + Date: Sat Aug 10 19:51:39 2019 -0700 + + [atomic] Remove invalid trailing 'const' from non-member function + atomic_flag_notify_all. + + commit afed449f0fa1324001260c9d658f6d05da90a9f9 + Author: Richard Smith + Date: Sat Aug 10 19:55:21 2019 -0700 + + [thread.sema.cnt] "Class" -> "Class template" in description of a class + template. + + commit 7445919de1bcf4780693b7870a245486839587ea + Author: Richard Smith + Date: Sat Aug 10 19:58:05 2019 -0700 + + [thread.latch] Remove italics from non-definition of "latch". + + commit 224384ab43e4e9829eee5d97f09218850026d342 + Author: Richard Smith + Date: Sat Aug 10 20:05:07 2019 -0700 + + [atomic] Consistently order atomic<...> and atomic_ref<...> definitions: + keep compare_exchange and fetch_* operations together because the latter + are a particular form of compare_exchange operation. + + commit 8644a2ce2faa6e979e224f069e4ca48238ea8570 + Author: Richard Smith + Date: Mon Aug 12 16:47:06 2019 -0700 + + [atomics.syn], [atomics.flag] Clean up presentation around + ATOMIC_FLAG_INIT. + + * Add some vertical whitespace in description of atomic_flag operations. + * Reorder ATOMIC_FLAG_INIT earlier in synopsis for consistency. + * Add proper item description for ATOMIC_FLAG_INIT. + * Remove repetition of declarations of atomic_flag non-member functions + and the ATOMIC_FLAG_INIT macro from [atomics.flag]. + + commit 2c1ab9775cc53e848a1efff4f9976455538994d4 + Author: Richard Smith + Date: Mon Aug 12 16:56:24 2019 -0700 + + [string.erasure] Following the guidance given by P0980R1, and after + consultation with LWG chair, mark the std::erase and std::erase_if + overloads for std::basic_string as constexpr in addition to those + explicitly called out by the wording paper. + + commit 009d46f9b057a635383dce8bbcad121c86f1d306 + Author: Richard Smith + Date: Tue Aug 13 18:16:48 2019 -0700 + + [over.match.class.deduct] Replace "therefrom" with a more common + construction, and more directly talk about the class template for which + we are ultimately performing deduction. + + commit ac9189f351bf0407a31968199c22274ff41fe9e7 + Author: Richard Smith + Date: Tue Aug 13 18:21:14 2019 -0700 + + [diff.cpp17.class] Remove redundant cross-reference. + + commit ba642aa699973f21613cbe3e6a0b6d9c1e0f2e6a + Author: Richard Smith + Date: Wed Aug 14 16:16:48 2019 -0700 + + [ostream] Add back the comments that P1423R3 requested, but now as a + note. + + commit 37ccff2c0e9be3a62fcd85b55e4d05c2b312335f + Author: Richard Smith + Date: Wed Aug 14 16:48:00 2019 -0700 + + [dcl.fct.def.default] Clarify that the rule concerning how the type of a + defaulted function can differ from the type of an implicitly-declared + function only applies to the functions that are implicitly declared. + + commit 42ee105f5804a74bb15960944ee7fe1cd4420e04 + Author: Richard Smith + Date: Wed Aug 14 16:56:23 2019 -0700 + + [over.match.class.deduct] Clarify that an incomplete class type is never + treated as being an aggregate. + + commit fce4ac9764e10042bd8d0bb4152e83d697c8bdae + Author: Richard Smith + Date: Wed Aug 14 17:02:06 2019 -0700 + + [dcl.typedef] Split paragraph on typedef name for linkage into two parts + (how you know when you have one, and the restrictions on types that have + one). + + commit 90a29c08bc80091c093937a7d96ce28df5ceee44 + Author: Richard Smith + Date: Wed Aug 14 17:21:15 2019 -0700 + + [conv.qual] Avoid bouncing back and forth between subscripts and regular + scripts for T1 and T2, and add missing definition for cv^j_i and P^j_i. + + commit 03bcd8d3e5ece969af846e23cd451549185fdac4 + Author: Jens Maurer + Date: Thu Aug 8 01:07:54 2019 +0200 + + [expr.ass] Remove mention of class types. + + commit 173905005c2c419548418239518db72bfda9dd9a + Author: Richard Smith + Date: Wed Aug 14 17:48:53 2019 -0700 + + [dcl.attr.nodiscard] Make the constructor case better parallel the + function case by duplicating the implied "through a reachable + declaration" wording. + + commit acbe5e429499d0eaf6c118f0bca4bbc26830bcaf + Author: Davis Herring + Date: Mon Aug 12 12:07:06 2019 -0600 + + [dcl.attr.nodiscard], [diff.cpp17.dcl.dcl] Fix grammar/usage + + commit 5aa019b19118973d99a2b2282d3f6264da81c9d8 + Author: Davis Herring + Date: Mon Aug 12 12:13:20 2019 -0600 + + [basic.def.odr] Clean up new bullets + + commit eb443396ac48b4e2ac9c6be0d9ec6bf9dda107eb + Author: Davis Herring + Date: Mon Aug 12 12:27:41 2019 -0600 + + [module.reach], [over.ics.rank] Fix punctuation + + commit 37d2e59e8deb847f5ebdade20604bdf5c119649a + Author: Davis Herring + Date: Mon Aug 12 14:14:50 2019 -0600 + + [expr.ass] Improve preposition + + commit 4a0fd9aa43a0d63d6fe875b886cdea8ec24d7f9d + Author: Davis Herring + Date: Mon Aug 12 15:03:56 2019 -0600 + + [over.match.class.deduct] Supply missing word + + commit 05c786cc68bf14a828cc59f32d34fae2baf33794 + Author: Davis Herring + Date: Tue Aug 13 00:49:41 2019 -0600 + + [expr.new] Use typical \iref + + commit fc1863291a3f62a684d9bffa51fdc2837e9edcd0 + Author: Davis Herring + Date: Tue Aug 13 14:55:54 2019 -0600 + + [class.spaceship] Remove vacuous conversion + + The synthesized three-way comparison always produces a value of type R + + commit 80f2c46251f07abf422cdd86a3f3d30c47fda587 + Author: Davis Herring + Date: Tue Aug 13 14:59:46 2019 -0600 + + [over.match.class.deduct] Fix terminology + + An element with a dependent type might not be a subaggregate + Add cross-reference + + commit bfa0e698359d44e8a2b0a056e13e908a8185e296 + Author: Davis Herring + Date: Tue Aug 13 15:02:06 2019 -0600 + + [over.match.class.deduct] Use "deduces" + + ...for consistency in example + + commit 174edca593a860440860f95c3ee61aa739e2afdc + Author: Davis Herring + Date: Tue Aug 13 23:41:02 2019 -0600 + + [over.match.class.deduct] Simplify example + + commit a9f901af95f16540444144a397fe3b598ae2961b + Author: Richard Smith + Date: Wed Aug 14 17:51:44 2019 -0700 + + [class.dtor] "The defaulted destructor" -> "A defaulted destructor", + since the destructor for a class might not be defaulted. diff --git a/papers/n4830.pdf b/papers/n4830.pdf new file mode 100644 index 0000000000000000000000000000000000000000..9342aa6d069cad769814a33bd4e570252b813018 GIT binary patch literal 6755923 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

22(JL9ThYG{m&*vhWkA) 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

B;IMx$1qk+g~ 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%0AaLaGd3>-OU<-tgPrMZ5(+ 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

B-|> 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

kdSO(?KlCUdlxVgOUu;F|Y6Qwc)8Ct9J(OXh~ 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%0Avx1NzLt}_HW{*RjPKkJx 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

{W|}EvdDlusl#t%ity5eZAtL-SS%_}|5 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

LBp(g%H1P+<_OEzO1b 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ⅇB!|RX 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

9GZw0 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⪻p{bBFke2NZ0gCkCFIygCvN<053ymXzv76 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 z zHpy)#qr%+7SXM=<_3ha(_-aqBd>= z;M13Ih#`u&CeJ;l2*<0zx%0Ar1~qgmPf{NM94eIMj4}No2u4&YXqp+;v@@wL8N)g4 zYspubuWySnE(f(RF1Omx=E8WSELNdY4@S9Pt*Nc1D)1rw+K&)UqNJnFivWS^6s<0L zF-Z=SHaM>gLfqR5k+nIk*}&za<_hV2cM!~ku*6f{;N(dE8s(GPl@YcJiCZ2G|M2CB1%EM;8X$7Ey(7oKk|U@V5_Gn zle+Ci&w>fWv$x=~cVDw6ZhN`TKWjy8=lyS^pS3}DSW4ZLz0K@Yf-ySenu?NJOZ9T4 z?aZCHW3z`PK3ojv`nn3fA-X>+j3uqj7Y34Rw#T-B9qP?o$Br0Qb4R7fdFMKN!nNfK z0Q;LwIg{EUlz>;IF9ZiB1fhOvOT6K9a-#0 z4=3ngf=p|63h2eeZ)?VbRxfD)CS#@D&FZSxus3~ZYoOo3**$6*^0lyEvvV*YgF+6p z6lBy8F~(G&^=<7B;;gkB6sl4((`zB%UjgwIYG>&1^m5^*fUwhK0g=>u~l+<_=qs?4_8j2w>xAnY;J3JeaU5&TYQzhP;i zj<2tE{IMHxrGnNjIChv8IWc*J^GTLffscRub&X?p*^iPQp zkz8Gwfdy|saqLRB0l#zbs3MMJUbp*GV~K^!(2Exb#|L2WyGzPozW5FR$_ z<{chu&2oV=me59M=l$yvsa_uSkf}VGB*{39EyCbXV(Ll|Md|^`^M8Q-)!H)tlRf#b zkTympmj7AIv!to@yWxQH{|6EB__+WU+-lRa88GlI4s|rMAecQSXdonttaXfM@yduT zr@l97SVM7QY#TBgV1dXSDL0uMCtPTla<*jd_akg-Y<9HOAX&!bQWl(T8ZwH}^ckbl z1Oj7+#i?GhK6wGszFlufQN{&vkax;`l%|t%IX>O5X9qV|^t56F>@soVjC{9r+68%LJYSbQ*Q!P(8_??rT8l#4V~zn5QL9;ouM0{wU^wc#O1bfgKy2(1oGH!Y~@ zsDA0Jt(PQi7#gTvdH!_vOmrPzZ<_u~V`+}8@(!!x>3jY|G25S680L6vjlAH@Nrp&P zBtWRF=reJHw_LP@J2lK&O@>(0saNu#3~X*jA5&MTxn{NX_zXJx+yJm{TurVR!3pgZ z)OVS@FA>2wme^z#jh@k)W^@h)DUI-;$`Q}(2VuGV9ZaULY=18;OYAO6xqHM@X{an# zB$=!q!YuWEuVsg4-gHr+%9vyi&4TULUHu*RGHm?R5uAO`uE|fL_ef;7{QhRCMAyQk zsuXX&GXEm7lq}VvrByxNT)B5O52&f^qOjER9E!RuQAT26mnH5C!r~*_i-Jx_4zpyX zEKL1sdK3iVs+GKq8E23j7om9j3+|K@3gqZ$)JuZKPzj`RElAjtnJ@Z5Bvd5z1`#wqBTw8138Nh5m zN3^sw*kkGs^|{L$*|caL;*yI*#$U`eBy*<-_O%zn3?YORVX|$O*xecBcsoo+y!z?) z*Ln-_UgAOj5XBeyY??&fo+O%uk%Khi`=KV{tf$l(Zl@$q@6fDxtgL-xygaWzU74PZ z{seY?E|l^JWroGt55T)UEQhw3C(3(a@B9|_XyLw&K36uBohyxvxl>o#0FeH#i%|8b zGd#TUd~FSA&WQAk3(nqpuCsxTi}x?~fNR*+>YeqKi=~Exs_@vh3C#Au^?%_|@Yo^G zNer`Q!iwK~@DghcgcLEt^M0JYG-ZD{#F$?0>SJ2z;m5+^Ar*Gd5vZu>q9G)rOi0@S zCf)%O{&DNZoNEJUL<`lX!M^jrOV=ZhMFqj<7qSUX^>zmBI&8LeMFr+T)|xU@GI34g zSRTW=6b6sx{ly>-F}$595Kxz!qg|sBz?}vro8go`A91%W6`U@#JTRr8kju3*ssk zfh|Yd{pzE(vLUgA6rpAjKb8YD0 z^o`;hEkOLGKhq!ZGYVe4jxxeL(Z3e_MRpyXxwXHa5bXWa`c`90JDR;-z=*_&!)mK_ z5DUApZF_^|GN_)NR7w(>X~P}k-6R-R41#Z!s~FNxUs_Rw!T3`+F2b3w3kZ4|O-T%_3uf!5 zi!wWJqB|XUJ622S^5@H*Tn%h}4OL2<_Y~tQ-5M_naD^0!TtS(up^pVG`MS*SLOOo$ z#*=1yk!-Ym?FidnUT8PkwsEvTCf<-9S6kBy?BXp~7fnB<{orf3P z8}FwDg^T#5gPowq00TC4+r_jRx6b6Gvc9JqfM>s*U78REkM+~%x%k!-gRfmpYJ}>x zh8z{kJC@e=3T80~Ib?Spdqj6I64j51Cb9?Z=sYV*xL2Qsj*eCsf3EB{5I=-zLy4{U z=D=HbzSV{pnq3QC>Yu{N0p~n2yTFccr)85Y96J3PX7(*xwx}GNq!CQ_KYYqP#!@il z0Z8S_(szxtY0xWaW&a;z=M*G5w6^KC?e5*SZQHhO+qP}nwrzLswr$%z`=6?rxtMct zl9g1FyCkbB?}xmPd7SWL{bu8e=`ojBRcl9EY>pWApGfb@&`<{jSx||{m~+@!J2n+W zr6OW^Fetv$VrJ!>tk4T*;rLUZGuN2I$3S`+j-#IQ2nF}ug~Z>h1-NaIzfa!tI?-ag z0d8d{no)D)sI$C8kp!}~MT3|mv3$i&n_tS}#fs(lperdEpR3%Y*DyrjOu?g|TZaR+ zn6SUQH-|G>e!xXWfsX%CfUz?F|D7O=tc>jcZTaedT1>Y_5r1m+21fmbP&=P{A4*(d z$pcb2AvBp)h;~IQ2IvD38)NsaoI@-+mHAvb#FI@X40^m<%|=^if3~ z-zRu;x_uvL6VB}Te;M@^u-$_FRuc|VuY!?7Ykgb^4hPypQbR3jdqSWBkOlS``EdbX zfzZMz9h)f)BcbIO2Ta5)*t;doN5XN$5n^3%$uG|0kFQ}RZae`Y&O?e7E-4b z-w?t6o$c4yZ0QVsWX!P>5k{dQa^~jIq&j56ElW2sp z5@=uq=ZJKFr1xvDM+4N~5yEkH_Th)f_k)WA#Zb*V+#1pJlcxbiP+u7hRIu8Ci<~_g0`EQ z;iD7SajdeAOn!O%j&#JC^*5NF0lMTupQB>7OCHP~$etd;he$imlPWoIB(OTI`m-oU zAfA=DHPmgcjW(a1evxyR!1U#=xVucYLjnk}kL z_W>kmjj1`k0)KjCWG3NmCi6m!)^Og9+&%z0PmVFn7rY|RS=Xiupj4wRhUuwpl9=fT zTF~|t;}rRaDg|p9UOCT4FDW`cv5);uzf>75;9MrFO}}K5Fyr+Jp{q_J&v2En!-+3T9L5IyC@MP*6&PS=(#1m-n9Uv}KVL1d$vT zm4+7fT%$1HF9JJ8?ByK*Sx;FBN|Et=n#hsL%GLG61OW~2XBNQkh0G=M78B|m87edg z%2<#U(J&}V`kwL3J^kT=EpE@^E$tEYfsUhW!hugpy~0<$;$vbb(7G=s>Oz0rzK)6u z9ZilHU$3V5c?(WXnXtV-h%>U6>538bk;>k#tvHb>BlS_kU50{jm-o|)Zv2;h->G+mYcH<35Zd`@U0m` zSPZixh?*iw*-BL^(%dRmip;2)qbZwUw`%mtyf4`M3=CSgj-Zju1i~xsS2RkS=zQ1~ zU*?+#97Ah#nH=nr1BuTsKJ?7f4KOfK9(A!zMPHI4)DSbb=c*S`Tav$gTa*w3DAV3F z+jt%_Pf!{WH>iZZ?kM$coT*r*zD`Oa(`S1Q2r}EIkz&C&-bKL5MKp>Z9n)E?baibW zPKSvF>y*HR8Am6!bYGm`AMk8nL$G)^q32h!_iHCVCQveXF5qA_7H}r}#A%;T`HOVM z1rQZ?N_{f>=%dt(j@qy1@6dp}wV(J@W`$kw{he|P0;P#M2`kNSom5>*<=RQ=pZX%g z&(T#$`%;Wzy^d`V^WXcVa@Xa5{+a%q+AN%8#m+D`wZVxflGXMXDX4q8h*#Qla1+^* zpc-*RBqBT!N?~bB&IfSa;GFRbxGZj~HkUC9gQ)^+u4NQ+ZM&poH=n|uBOpHQ1#&)g zlJN<{)&#G#O=^13Dy;b1lk>Y6aH|o{Ejwm?n4L*zGyLmO#ixF?NiOa^^;beMz zo{=??0qvn3PP`1;u<8>Q`~zBEp!Jb3fwm?`N(ia8POCyzGt|iW^ymn+*pl2t!>>wz zUK(e_z&KiqMqb@p_jT_qExY7Y!>g@9*F0O_LkCCSCi>G+`vK1u^2gnlP8#R1WD(E6 zY4e^tY$x~xkE;{8YDvqt6+cNWglcQws@Icr5%3Rd5@#_!hht)y(R32D7}fSawl4y`I6+W0)TR#wG3W68_w9 zeL^rmErYNE1J^QjjyF96f!-jbYYHZvnVPUZrjTw8A;;>P$N9um=)`x`{~7HR!ua6p z9AGvPtbcqiEwZb!v8gF;{%b_tVwq6X5&$tAQy_0Cl-aN#Xt8y2M+%Xt%j*1R2)y$K z?N4^Zy*u~u9QaCUUq%=Vf?_x#R5V#=tZZ~oXkje8>OrOJ{qj>A3tCCiJ(^zS%;E2?ALD3C6tM))I`%WVfa zQ|C)<+usR%_AB1fT3W%LwOz|SBc+;(q$~E@8H^8Y7)-_ux5uFqC;_x$PC;iHl&Hak zGmQ*Epwn~#$yFMwTTXy$f?6Zv@%ELWh`y}0Gjr^E!L>1yv~6o8tHu={VBb3Q^`<2V z*N}Y}^w&ES?2noBswhGCqS1*Ypal+Twbwg?Z6Zl z`g4uw>l~ZaR&3BuDIxjth_4K#OurC>D+}i0g2dG(G1RnxhhHy2R6|*~=T^g;(8a%CxgL7`R2)CcxJLoM zz~$@1bpKJ7vi}E@pMOnN|FtY_!P>Ol6n){*D-gq~$C!;dVqXg@Ht*U7)zr7rZxVmt zmuj8?C8;DfS=Bn)eVxu`I)agykXf8{vl(4d*q=Bmw#!kjDo!Mf?*+C7z!5!COv}5| zM)T`l9+geS##QYbc^~N^Ha_FkM#tOlFqbjOpnmyls3z=0sUVxC;5}!QoW6aWM zWl{vYB^q-a)q%Lf8&26!8TPnpku!=ZbzqeFL^08klp9pLk(iPukTPy^H)^|}w5#JK zWz*WZ*jH12#RbZ94&zK330hW-9vAuzekqtCMVN13f4P*g_=IqS`4f7e2>elQ-4&I4 ztV}!g1LBZfh+=+MySxVd7_P%GIelEc24*r1u&wzOATa}%?6vW2gcdw64O;na! zPmsD7Trk2;o*OovMDtpjiw#c@G_r}{p}+uKNMhhy*}|Wl1Dk3fTX#*QDYO7whx(O$fFPHSm;rN=sM>ATqUid$ z`&3x)IGCyI7a-=rd~c*7zDseVoX2=r=`rrSOBnJ`ZPRvJoSgYRAzo6!8wKAEM3Brr zj_#f!t)J(^s%3EK+!4Y%c>7%v+$VSV+|bK2Ts$|EhB7K_N>rX*mf!@i=rdE;ub@-1 zFB$C>1+VHUIJcrpma*%qUdoFLKM_9pAnm1M15QiZYW`m>+cVoWYZh{2EubTa#oX3z z8Z9z(gZT->oCR9`R+b)GKR*8r=b%`uG2cX|1l@xTOkU_Fquw#$*tg)YMOIZTzu5(m zdr&!j7;<>^eCFz7ERDT)rTCFR(G8cmyv(se8t}K6Brq}Z`eJv@YSLz zz;vO__&Uo^sCB6y1MYq&>6I4ag|OrLgYwi+-PBO$->oMyppkkRp^p;f_8DV*MbSP0 z+H1(0QjKXw#WF}9)np4}b3V9gz$QVt;_QW~@><)e-i-p?^76~9*7hQ|tj@D7iF_(I zFEZY?)^&`g?f|LE&I@oNSAprSQFPvG-)=e@o0o6w`CzI@p@Lr($&qX+x=g_flWtKc z-3!KyUNE1?8IgQlu45u&x}#yY^V`aCNqureS^Z z(2h7;0(Ds4M*JrOA_A6#80W(AGU4WGfM#P?WtUXr_T*PE6OjP0wX6K^vm|P?QiLMjc+_O?O!f?n>I?TXS)K&A3!cvQ!R@$#!}V=}wVrzn!W*%E<0L{GN%SJD^HLdWfXd$q7a!er*gN*Y603tti^z_KtyGRWwUT0@rLxoIf^> znOZ+v#Cd7iE$Xg?FzBRZFijvFR&C)0`%L~%$8b>$;w_tH^<+%pg;W6@TIe~GLxqxS zAlnf)`j{PXR4-Fbr1-kinkP-FzJIJV`ZeD}S~zW#qL31bX7YA(Wn1BAz0P8mlh14- zXI0~c@)P}H^c3daQI&oyR(qz6Xc|-Gxn*^F#50pTGLuBYJ_lD8*IGD+GNv6!vz)*R z!)1;tzL~U{&9OMEVJs(NIr(4J%}h%vdd_X^fN;shK=c&SxRL^6O$}pdJUP=cIKXsu(GX+YAl4l)=#sC7W`kGM$yX*O2RBmsJyw~Z)rDC@v(^0!l6l>7U`3xoN=rV!cCky`K#RZpqE4W`(1>x7P3Um zeeqZDG$@DwQ1InD5$T>?imB{kHxC;zlG@a>KBH;`kkqV|tHV^EHxVrT?Abo?3y)2H zlnkbfM^^uO@zmb8$9{NoFZ@KlHN>Uj1aeMNHc!k+Pw+6}WYe!Gsm}(hyC2^EpM|vg z%ge>EkxxxaW+=6Yc}`MRFt5Eqd3W;{nl;MlTZKRE1h9M-|seNLiZIj z=f3GZNx|zUp5K=D&lmc{$+j}=X18drJlae=_Ytmy0+#LGM{rdWk ze(9mM3>Mgh$@c&rts?`9w~>T6WHHUZB>BKrTuz?E0_Pv#sPo~h!fwp7)U?_hyFvA{s7pyrl3K4(U`|3LPE{0W5NJW2Lt2Yt@`FykcOO1vI*dT?- z5B2YDbp^#9H3;TtYzBxk|B7I9%n|qjA^2HBS*bTR-S1^AvSZw=qvl299vj-fS|ChYihc=aA_Smy)Lb z{ET!|cx}rsUWe(1|6YL8KXN9#YP3U>Np#LOkzmsV@*ip_ftTk@d&#AVF_?05ad2K| z%xbCMWuJxwg3=vKoZ-vEfM81BXaypax>`hbB_WMXkfyBk6CiO_)?sTKaw98ME`@4# zdVW}`E7O5MPS;M?VLpMta=(v&FT*y(CX5zW4$q7-%q~=)lsj(!Q3$+bpLn<{mqWi~ zRyqNuWs{jLta+Cfh%PZ;eJJFpzC>E6bFkQ-0viJzJF?f#%mRt*l{$}Q+fEQQta#Os zWDWIyM`y@5SMGn_!;a{SecTMK&hDjsFs>i4i~XqNdnqAHy-HTEe&tpmy=b5VKxH!n zlqpN{^(#BVM8P6pt45z^XP+MAk59ZYL3VR3jq6wXoXGJT*fgue|Da?GA(uU-f~yxf zn6pK$BVkSrrP)^B7wJw;eKWJ518m-fu zgwoi&AyHr9Y)~n8u8q%NNaWO5!tX=Bh(>PKEz(|G?F}@EuZ=~-q2aA6ffc@)4pn?2 z+loEj9JNd?FQs!e8ju772ARF7PafbA9^#;0`7xLYx{{;LqJQmUPy-5+{y97^uSk!u zLcpQax6Y4tX&eBi)R#4Y&*h+mP$FDKY&QLxX5 zM$HjI$atekZgicfMJ`H9djeijlf;pnIbsH^RZ+4#GL`wDpP%1NgsD}l;~ZVI(L$yi znCVOa$*QoK4kVh;`4Vhdul;$z0czwZ0(Gii_{~zPpUFk%L{D{C3u0xIp)Dw5Bv4&& zvN2)+ozhVkV^wab!)RMT851FpshTH)u>$L3q(-mmB!VPrLE$2c7{8bn)JN0epe7X5 z?sUUSWm{xF?a;@`)4Fm^ z=ydUU?3N$U3%R^Yv$AXuPoPFiR;Qa|-3wiYON4bW5ohq&*7pmnij-t$919uhc>lht zx0~bryxcRr)*jA6b1+g9UP5a``WryR)35DhJ+HqEp|iW^)6>%qRi_&=V|Arz74Gm| zvN{h{>nhaks&ofIU(5Ij)(&`G%VS8~mbTsHE75U9+rZ(T;il#j1ew)*=<+Gvoi~1{ zZ@9rXvprlKn?Uez5;k@H$#$x?&us1ccH^?v&GUOrIlbKdJvZjW&Hj1(W&B8^>gwz8 zTme48`!jJe_9(YGmv%eHcYR>d_rCg=$CvHX^i7jZx zsQdPDU>M~f=f=NZ2%EpAPu|(o72%g0vBR$dqF?imI0EV$;KXnuH-r2M$Unq6 z8xN_p!*c~0tbr2j$7APlO7JiH5LnVDja8a5>~JPKQk!gDeN1!NH)42xBIlgSQc zaa5hB%)*`;ev@Vd>bB&FbCIMo;kj5q7nLg(h#N~Dl|uT7dllHv)7AiB@GcuDJUTL& z6Iy?an<0YotE*8v>TeHsodstR02G~f$EV5jk>^5O>4h#g77Go%LqbI z?KzgDErd4&11ezwKSg%YdLc#=p`{slv04@o1^3Os0ME@n8;wvYixR|eSfnK?B&s)D zSBP^TvmGfrDfKRmrUKviAFS-`{iTG+Q{p$67k5tcLzW1Uv$Q_^oOhCc+@ZV=nOcMGmQvY-_)0M#a~zt)ns%31=*SwOf(U1N z@luef9j;mYi|@Bp@SF_uFv@~1+B>z|V&WI+WUl*lKCg0oWGYmAajof5CU z$TS9M1LK6>GTghvHetAepy~iP<^+FIqZ%TA0Bf#ndp5E#<>KK*l8!@ zT%t$pj5;w}r&gCKSvopIttE$vJ~Y)Ypx_oo>j(WP8<13%KN6A56Ma(!;rDfAKbRwY zGoEDen@whCm=#3RCUmi8R~<_u2lJiZ^U>rB`dlT%=8%wBS$;bdlK-&lg-~&-wz_P@ z6f=Drggq=v(1DP_uSm2uH+2<604-R={4%S2n?i$;gjEQXt~OCA#h0#c+ZC^bh?aoC zC0-&QKY5$isHI$CiN-U^Kwz-YNbPPfbe|-J;_!?5t6x{3_M=ZnW{?Qp;a~Y+A|j65 z#ahHOkqu)080G$fPqA7zySyl^R~iT3socZlI&NTYo!v7%nJJ1{7A@ zL5U zl-1ylzO{sOdabO`JaJ>jdsK`>maoHQZfeAvtM8}0qXIO$Q!OjR#DNI=d$@b|+ISR; z5ow~Z1Hk@GX5h(q#3~viwBnHTdweAY-a%G7`Z(zkE(GJL^Z>C2Y9o?i zX}-j7fJfTbaSeH)$qh4y8#y}LjB_E_%`3gHukdGdo(QVv`Gs6f)q3MB$j}*(A=9?y z|1(^24^liL)lMjMGs@ge{_n}U53bJjFs<0GM@Yp$ooC+oFJ7=GCBf^erK?WWH@f2~ zE%SfUqbv;nDY4J-@9O_vpy)&`tes69@##dZ4V+DcO^ob}O`v#rp`4r@O$=&V2ma?@g-@gq8W1mo?1haigcT z=yTiER(u;5Y}N5>>-IAc{plHb(c+`v8g71a>vgktGwIA^xac(QPl}X@B3!@@05Vl= zqZFH~3h#glZDmHV(d&4$;F&fWH_rVLbK+@9x=hkvYEPSZN=JnYX9V+7kP)j4mN1<1 za%GLjk{v&9^IUxa#`&e}jj%@nEP$y4 zOU6M>84r&!$)lH?Xe2Ao#8w`KGY_j4P1=7=(+yVpS#Pw)u5Ru%h(L?5`qQCODgj$j zs!%wh#J{-}BV(85ke{6t`P`-*^k*Hxh+MN8Hn*09n99)TO2=&#Fz&EkLYk4r-2vZ; z^ZQ}#vII}fk*-YAWKH>~t=H6jRh0AnGr)S!M@wolq7PMU^@~Ukbv>w7u3qMq}hfx-!V_Yo;vgoO!jHM}#zq2FwpJvchHY8rX9J6+q(g}_oGs}VHajD9@gWznz@ z%OXXW%8?P$K6w-NbsRG<2sv>fAwF2}a41+sm93~*CZLaov1h_<33|DOe^)y{*-uv5{iM5%4^;jwkt>+y1l{Hx?%nY~d8*zzf%s%i98v3O?mrDY6is;I0Ws@ zyJ?^;fO4mAUuzQTT7hI*80u87=SgK0VVa_d*1D(*5L75Djrtbu%*`8pYdY7OTwaX? zAGbBN5iWK58q?6`k(o>5(4Nv&m-k$~k~y7ypBD`sq~b`P?TU#e3w);wVJ%}kXwrt9 zgC+mSg+_!w5F~#gJ30W{u14TyEAF4bjl9i!UIIR7Io=R?0K^@1LEJC?({p8OFh|3C zcXNXa6);HKvZ)&945|XzE7`*>jDm109Q;oT|7Vm8RR|j7#OI&V9xhk0Wbn3!4oduD zAHh_9B~=^OU8AlXY`n}dSQUR2^b!d&py(Qyxn54TX;8Q87U*g}?ibo-SKt0hVvhdC93(C!1@7<$w04M=9@HWP0uU1k1Ir z?c+(A1s1Iz`4(mc$_4>$b_FR+EYjPbqgrRfZr8rCLVxX$w5nIOHX?@9B2P)wq;hS# z>mc8oLDV*eW<`38xVBc=;CKEi@RBZ!7_yUf2m4O&;3|y&I)rj6ZuEdD8XGz&eu`M`aX_ zB(eVRbu87Ak$kAbc|UH@Ksoz|C@f2aNxeSq9>ET*X7LdwdwxGEf$R{2bjGDa=fj!( zD|ozq5KmMEA1y=5#U;EiwQ#+DqlsxB_y=#z&0)AacPkKo$V`Si;L#NP8LQJ`uPq9x zLO2a>@p(t0%JN?z7+6v{0gO0UhkMOCkx-{Z8vTP-{cq3v!`<$s!W}cGye- zy4N6!U$i-w08_IwVa<=UZi|UkA?!DAh0u#=f=GS$v~uw z&vqdBN;5x@4LhHQ@ZK1)`$Ah3no*Mu09KsIe1^tc_!|+GzFOzcb64fw16xHu%g1g8 zNbAg}Qe8DN-+)vKw0Hs@(;)2E)v`tHyBAkEx8eTHK+a%oeBhkO=5{Upmj_rkMo z6hMK;UsKqRiSI)$^#Ej23OW!Fd&j;qU5L) z#)uRMM1qH<;0uFIcqVBdq^~1S7g>@4IWPo1W_XO0rY1!`Uz2?6B2x$Y&DBMM>o z;FQucn~;X&fS@Ri3`?nJ7Rd8ZKgoyC6*J4OBO-jjezroa!KU2yLWHicTA;l&7IBJHZ~@#%xb zVq!B?z=9GHpAKS7m7}Fyk(AhWf3il*MjQC1zv+pj3xMC^+fCJp76T^Dq3^v}BbR2^zPisBKHG>VWjt;jm5YSx zP+!8dzZtV5i`~j>ts^B3IAjm~{k-xoF0cmBTFNWI+~;GpIhAATP=B(zYVEQD5~KUP zIn_*5`LMH6n(%d1;w3?N)~((7rRpXM>`fZ`a4x~OuE}pxq5fh6e36(^bm7Gfow>E* zvE?AK+ZTSMFt<1G0_7m1Ps;2iWS&G#d=}uV9Pz7 z>|DnVg~8d8=Lg~4c6HqVSl-QgmWo1fcH(*@B0c$_2iez zW%&i|5S8dw+8$i@%lSwlO76XnbEDRqJX<@nl>fS&*7uNLl6l zi3Myf3c3+TsZ4EX)*fYmQemXM+k6OA)NQ-#Y>6MFsj#UBI<$2F8bXGQ7P0&T%{`Qj zbW{#R#k`)6?rzwvwYa+5UHVA_4gME^3Bm{9#LoZXVG4!BSiWz#<57`6`-7 zHK0ZV{C&tEOPv9NVGNqEW|$Ud%yHJyVsh6Pw+kVn9kC;j7t(c)Dwni|)TzMnSZ;4s zTN6X^q|^93UCcWZ4{SDcYF)W`lTOG!Q|(V)q`WDCpogCDnB_f1s%`++qfle%Gb-m~ zPT87equURm`X5_=9>F)#i@&h|73ax_O=Nmv%=8l@j;Kh;_lYmp1zCCk6@xttS*wF= zW{q2ULklTLX60K%I=I_k_{HNZ_`uL69cQ`XmDd^<(%&~tT2}rNP;0-*C<}4 znB0FpdR%ep+!n_iywxRKJ+sT)6t@J-CZqt8O;hwr?r zxS9ceb-Y$@Gk=zWlyhtg4Om=B!G_xuJ;6a7o<6!WN7{~=Lh`Y^B1)AhmZQYh>^qGC zXqa)l!S|Yu+$8Dy|y6Fq79kK8MXY~$X2>3OV zH0M!N`$O)6Q?(ldv~z#;up9UM>+}bZ!>Dte)~5SYr2HNaY;bCs8Ctv<0j}ddB;ITT zkdKk?I^*T&VS?Q+!sKpx;aCyBv5*D5NY!P`0;S)*xTaG~cYP~p%!60^KCBShZviOA z?yz>RL&JR4qIRZrd6aN(G{H#w=((Vc0UA^Cp~K_pZw&Fq24@I!gMnJ>|J}GF%4nV& zXaJoaKLBR1+?0`MH(zO$ua;Z!8wS%ks=zRx`&p+QyzWNUQDkX`g}6#QZQ5U!eY9Kq zb!RSZ-w<#^gk0*N#(MDWr1$qfGZU5z|3FvKs>AHv9OAEU+J6x-eQj+C%!BXQ-1|@7 zeNIXcI$B934b3%S+N3YKkEpdh3fFWHx@i#FJDb$qoxO_7O(74IHH>7Zq0Rbbp9ncD zHA|5y&^8i=tu~l2B>CEegow2aFFdjv>mhNxMG^cWlQ03A7tL~VzuWbbazl1L3-?e& z27P*0L6VGW^8_Zi5Y3%rhc)mJeHyWd&6e?Hm-GFm;e+z@kQYTNY-GYiG7(bIT7_cC zru)iipO$#g!ly_(wEJAG02S8*MYfZgY`bIh57VS;Y1QwOzd~No5Q3n>_5NxzbQZ%# zx1aAJs&lo%p*0MjqE)4to95QusR+oVIeGUa6yz0Y8HG6IO-uA1yyIWe|ES6gzc59BG~*bY;;}tM1PZCxc@6u^E{A0~(U3Dz;o19THilYOs+)7-XHxj+}>p zKVDI>=*#~Qro}Mv`{iHxSS_THl)p8D%on-JY#t>`Mwn4Jyl?D;aB({jQtVel4$TAK zGoMS=Y)L8~Y1T_O*c8V8Wzj&QpJwF8I_!LCwohnG@05fTeEWU7%Z0wqRz7l2&482JUj4fjU>kMTJZ)BpcJ2opO!<9{2U*Jw*6ZL%Wu&ehFZNL6AD5Cb6P zD|yu`xlU?*iXT*L1RVmG>`&7#gd-<99&B&?_HOeB9RMSVD5VuZ0L6$NUXqPNqQyn& z-w(}fc4evE67`C!BR#r1yw-=4Ko1L&WQuTWZ*9}@()jHww10TNvYkZ`%SL4Cv_foJv@2Ws(s@33aGLgEFlzxKYuh zo|~rCtO$mikn7d0C{7-~j`)r|KTJhdnW(CIG}NhHB6N9I{++oD#I4@}i!s7seE&-XI@gHBH@YT7b5l;V1jr2Wyr>Xs9`9HBCuk26!f5 zwh|Wx+aE{Q*7YQBlKYOxHt}>G)(;FNfa1$^M-997<&NvhVWvQ@5szbI+Yh~hFV4Om zI9Pe_n%`4pud&b6LEW?q?~$>c7x0X_cIZz_l1S@?cf&NKmb2>45q3L4?LN;L21Z~D z1__S-Pu?}T?>h`S6Z5zy02PyskO&{dQ_x?OF`$D{cOo4LP6!rU<^Ft6QAVbn-^ABk z8tM${7~g#GFCDHpQ-a8u_#Hb?H>~@yuX9T9T}rARXD3TMna;wdY7)A`Fti~ z0|f-K+dT|YmEW*g7zav{NQcMA`s69eo+$tRQz3_3gHVTyR^)6fYg?lH)JD3>u}AnP~FD|<2p z+=|JJwIp520Lf|-L16vFZvF3>?1v6*81nq(jYY<6iBs2st~16L8ZpFRx5ejbaTQ+> zOJL8Cf=4o&H;-q}7$qidJq{C>9!+33Qh^sC|=~N1(RsXRvqmCv(g@NBC@4kx<7>cQNOqW@P;J~4&*tVa3;+LlQuJq1aoek zG4FpX`0E@ChUHHjs9#F)Z{n4M>Ep=gj-iMFu+apo0oODBX7e0wj|xMU#pTXYj2PSU zq~{701soY;CE>59{yTWnSjbl45C@9jpJkpzN5Bj*#%9XZo*+Ne@F%?X)mnRVPAl0} zRL`4D1NUY!XWq+_HbQ#aKw{cUI^4_p_x5|&dLftyI^Z^LQC!{fK(og;SD}gE%26C0 zUSXmt?`iVYX)ep6ee(f7EazY3e%vq!UDx*Jy~Pc+t9!w}HKKHj7qR`~-XZX^joII4yv z4~V%*5}=_z>4C87YxelP%GTeI%n(A_`0*pI4HIm8=Pt2<9f`G; z&wqGn3?N@y2keua(_)G!*P^WZNU(HLYN$3hq!m!Z7F}Z;^pLyiCK7R1MaulTr}Ok& z-&xtpK%(lYDglsaW%DVjS3g*s!s_TOGI-5q0>an5+BagJ@mRCqWLu|uJF&o{(n%!E zAE78OAbJBLD{_nFBQ|4k{NYVWzsR6L*^0xH^YWLDzNG~ zXp+M82hSEhPNi|*dPrNmFfx*^V8ladHx3%U$7jREF$+hh8hJD>$7UoH9yDo5Gjo4t)U^br}FyRKcW~XIP(C2dg&ogToe0Af@i4a ze$Y1e0f=F_9C@pNqNeexn1v-rkk>t>&@7`kxSfxX2#%jiNRHjJ$L)MvFiwl0@(nr; zHIN6&E7}2~>#iFKlc`r01Wqi#>=U?eD}S4ixqeOQ>=H{1ye6h7XxF082;3h~!}J3E z<1*o80eGu*wm0ArhMBsiN$a!QHxMr4TL;sIy!z^M6Bua8!MtR?5#-0o>5vAd1B_zL z->IZ4r^ib&u86u|x(AFnZEnVj|3o6=#; zhoiCTlsPG_Y1~Nj{*i$5>xB4%cZ4b0(5bCV<<@%gx(va;vc4 zJ}hYbEYYN|WzyFFXxhVQ0g%jmjN{X)KyLcMp}<}qDLhLqNgr`~wF>nY@&5CP7J_j`r;Gm{>q ziSXGYFPl9f9r;UO5?*6zTfDuCgNWMc?y0A>*^6#xkWk4mF;>jZ7XrA!E@fB}Q zW^e@|t1!K~JvB+u-rrV03=PV5XAoI5;7l$7*Lk_wdJ7}NtIx@uZK0o@8kux(x6`C~ zV+;ljfxp_b$(*7%qR2rC<{X*kj6N|wR-o&Q?1u=`=wUR76x?j3_AMo10J+_cFJmlE zeV-f&{5y#%TS7p+#%M~ZwX=-UU?};+~R;(c)}id4F@q> z9?{@wxF$zDxPv4aewS|S80p?op+^%tfhn$l7;aRjIn?278u1rl$=()Vcx-`x2|J=- zEE4F?aI2PQ_Z{cPa$9|h=^4>nU!&3D?$l!t9wU1FuDzirl&iPQY7iFsJDK7-p+*LY zUB7iVaSI^Ou{wtr&3gf~h*->hhue!+&8vlUYlv_S;=|H@e{Q*;?am+(#-fXMA8UHL zThr2pz+MW)hIH9<72k8uxbx|Ezd%Er1jgFXou{vl>uLI2mFFhy>AX`B~sh!S-d}05s*$3rjonKn#3X$U1AYtOxh9finK7)^!0A2hoVZr+QUMgT{mR z?=J|0APFZW^)E)Lewn4!)cs2Tk>4!}D(Y0(Oz=9`jcvLCg=yoR>^$Z4so1FQe8q2t z=rE>~-bg410hPTjX#tS1q$wH}EyRGqu-BKOLmQkW=jy(R+W4tA89wl5g}IF*9g!zD zHyslogB?tb6`dk(b{r-9siTX*9o}9J#Q+{RkoTxQV|A$V=!@`elWnS(5&%84wdrHh zg$I({h9<|!Ibtu4xZ4)~hCnX2Z4;3gagjQZhDynfE=Z4J_JTqJkp>S23*Ts6m-6v% zzNYeB4h$dh|D6brwDQ9Q^u!o2G_-;jKsr+&96ZkwJXExA=c(&2qkFmBDE+WW8$&L_ zIe88<^JHq2o~mn|$xUV7zt6pkp5Kg=nSw3Ws?%=(`mLKuvo-BWCd3mmVptP0ctLPb z&`{Bq!ZeWS$Havz2TQ}x6o!p~IDRw7j7)o`Z31$tTlUfT-SG|!l6_03@4D;cw5HS# znxxBGF@`Pb2?{DWS9<=U(g2e?2U-0sh-z`G0R_pX%(! z@BCBIzZx_O681puOdX~3U$YA;a|&gVh~r`c3?W19HQcKW9a`rpCDA zh>o9DSc+)Q-~R#kqN%sQxF8EwvdzEq_jy8t+lpWo;5u4%d zd1sHrlu9Y58UCiNU6wRAZd9gFrXXbzBc0yC)e>zCK|Ts~)TLZV0a{-de0cHGBj{qq zA~(=qga4E~`ZsD6cKO~=y@u{z$2h0XqW7&_$8+gMm37p0J;mB+JJ(2kOkD71w@o`= z=#IX(&1`ash;SC2_38CapN@a4F(gKn3?wp;hsRp_Q?MMy97i)K%(Yh_dGis&f+oAI z>ear>z+vjEtEAnvaerM_h(*(!g01+Ev&L>}{7G_01NIq=mX+N$+us)LuBPDpC!%+C2;A3KUzZqW_3mOC zH_~lABL*I6a=56aod~6%v#q;MHjCJrX-LF+;Z=T|4HzPGFY47!DHet5YB%V?Fts^t8 zTGu)a{+Y0kG`4hiunj+tKH`f@q9hzWirYgtHu4xIy@o1wQFSHjLccy9;MU`N!1Nbo z9?h^9_SHv6>nOv%`T4jc=Ma(@+r@B^iaQCImF{H~LlMX`Se5+2n|P%~QI>9aQHMJR z(;+0LJ}OohuF5w?Oi7lx(P@&pG^nF+E$(3*znv?9`@^$WxFApcq#gZvC@>>q%TBm&Rk6?Gys4rJoFxWspg?m#F<8!e zE7W1UtFoW2?k%T$6X^kk575clqkj(3nuRp2OoGBA&*8b9*@Cv4P#{x#cn1rNwJs1M&*8rss?-LE7 zBNtF8(}TBKc?c%`AH94Cgy2|RUUiP#v81fDIJD1br;jYann}vM0G?&j18r{TNVhYAbVTIW) z)t76?E7b0A#m{a`&2Ea&a(H_BTQV8halKWIjN(KLLAsIe%tzrL_h#!|fN|ovAwHqP z0s;Q?Aq>cde?M*L${7PQ4tQA34SBMg>FC`clVf%6)bwbny9E{dOoJ^s zWrmR&gXBr-FaYIUvz(C1UOedDIX&F34^jjHG6uluj_0Ck=@g-#4r(F$wrVzE=0Pzv zG~_(he(}9P>|j}9b9CrFm1Y_Nu#cZJfr9C8g6WTILC?X`<$P}>u@k^;LJe|A14-+E zt>7=BS=$K0pTq1rm?GGEC1(Z?Dj6;{p*~WgqpUDpy>PThub~bk5crrJ+sLK&){*1d z%m(^j64Bi(N?WZqyVX_Y9nO z&$~O^&kEH|28NUDF1mWeA3CdcT0&Z>Z^F`IYr%x7^jVH-v0}R=SBG8hN#}S`q0-M| zqMZ;6EMq->n5jY_su-R+8X%vBD`sG{5>x_z;bMLg1<15|NwZe;t_uJy^ zx4fRC5bVE+C{_=>2(xp*I}av{sk~lJ9%U%{AIbe+QZ7TNnq2(64cGdG*w_Bnrt0Y zh?2@N^Bhev^CTV0WYT9tESl{eM9R_FL5+mDuCvaRr^OHH8QZXkt%t6J6EUIdAFNBpUpwZnGRk07w@+*XB(nhsv1sdMzl$& zNHyc^>nPPBVj{+dXpZ0EW(21fdr%ez%M64?9o~phQ4yJnRJe zG0+2NBk~J{ATB`%WMrtAo}Ksg1TzE{v>dPnVIGorpfl?PH)v5`!bbXsICb)G6^cUy zag!-TK`6&D{ARes5k?y*2niE#*`TWp9*%^BiwdkJ%~Gt7eF7!XEKwSKv=A>%u_~*>Y-8uh6CMg?+(i zRQM-)DZ|1+oo9@-5-N7kj7qgnJsdoeujy`=fJR=}Hw|wbZzp%DLZ!SEli|cf`B37K zBN@H{%ZUs>f<)3P6(nh*2Y3z7bG@9De=6ei`uEcX_o>2n4O%Vz5Sri{- zc9Z8(M68;XX$m!~(X^&R2cEL$_Q7@&-zl73raW)FC?hqoSES=o+jfuN&E`VCWB12# zczvFsfsi6=Kt)jF1ZU%mkc1k+)!bTuO`Tx}>O!B4nvz?}?5#f1wM7*4Iu9jc&tTc<%S$_+GV=}55NZp+p?{z)){h9Xu`in{^_5rE#A(1uO zj8o(N@{oL~fk)|IXW5UuUN88FWRTfAM$6 zc)pvEf=itSr3!Ouj&*wL#5N<2;_K9w^NN~VZ#gn4Nv3sjaNSRN7opU+g*nTKklQu(Qq3I zh(ABkPrw_t(M2yCyn_M(^v#uhpHN!g=L5Wp#nx>^<0-4CsFY0I#;M%)52 zU=JOifsfiMsM2ut2NaxG=Iy_po&PKO8SuXoUV3qC9Jafjz5PNLfve$0qTWy@ZLtps8f-^=gu zb-8VG+T0wo!lS9pj=k$JPTX`uBZj9GKo&n>!yn%PqT@s_gebz01%ZKlvF<}s1)B{1 zAUFCYJ3P_L`#oAnuId&?OafyvhTB6)`3F4O?Eaf@{7eXZo2GVWDLsUfeG^RlVB6!Mkivy%M^O&OILRp~WvK2&MS+@4;mBopd zb-`EzVFUB_B6zb$iZW$%2$dpcGwJsUj+g9Xpp=2gDx6eV$WL9G35uf!uDAgn2Kyza zzUrmo=iD$Xig?L10cL-Qg11X#*{yQZI{3?3-rRT$1{5ySnx<~RzKcreP`ihHY3de= zj~Rp{;Zq9~wu;a3foPC@IA@^LNJ@}6c@+l~knB7oNItBx{U>3Y{qnmJ)6+_gZPY+< z5t8OIAqxL-z$DLd!ewt&d}4$}yJEN%>n_%7s+8IyTf2evK!~}ccAc;{l-p(oys_dz z9ZR^>26K&29j2Rb*=(JUDb)*j`Jc@ONEp{Fa(_i3q-?kYBr9~51oWdW34lA)HO-S4}BjRykIAJByZkpti5`WcpgnW;{&p@1Q(({IQAwTVGM)9XT% z?^B}n2&mkNGOO|qWAxNyO5%8!yQz-`-D!j>ia6u1B&6st2?-j9Cj8wYlS=Gj5zx@X zD%i^^sCkEDcv2*h-s%minu4CEY?p3+IJVi(Xaj<+dxtAvg1=K0oUOBC7!BdeiKZIa zNOcRT#$_9d{2GC*9gcGJ;HPS~;>nQ^Dyz&`HPnR)0*~^Vh547HvoB0gFzBj8KC#?Y zSuOmi@+@K1I6nyyb)-2WR8)m@%Nso+HBI4n!g=TFV=X4507K+?l!o}G$ zmg@WOpT+CqU2t}=4dIJZ#gBhI=0`LJnC>A^A`}UU)YEkaIh^8^ne?8d!j+}OID*p} z39z;-s@SP?S0w@@f{`Cz6$H@a3J?O}o_XW2Y}v)v zLpzLVq?M#Rrxu2EmJ|N2{Y9~_>SW7ZJdCxxW*&jiUQSE5a7n%u8wrumCmhxf8iZW5WH zGe~gp+}YE;A}rvIvh<$VFBhpSf+Ql0ufRm&wzqb444HikgBwjd_V_A=4yRZalZ*## z1v;Z3%7oCkXoYOSRS@wekdv<+$E9hag2wBsBH^Hi4zu1?(OxmrYvcT|< zQQQany42AUxzlE~VQgn6$dG8L*;ey7he0y=)()f8E=KdcHpQ4|KT%e2Yi}5i;FU$? zs%GK^eSV#WQI=L!KDjWk7r8KE)B<@s-|~r}LynOyc1>gk@+@XL7sP2%0ou|Hn7Jep z3~x9aF3Zf0p?aoBt8;k#hAP~GT`>m&pQPiBoXtyET-^EEaLe60XgY-H?&}iiB51KGD?dL zR`ZozV=ecClLB?qC~A;Y6xCbnCH4XlRo+F21;N_YkWcUa-v+kcUpfMCPi}H$={!y0 z)e&F%aU$4KuFD*EFi;_Ad@vQX{EC&4GB5{_i zG#`R!x5e97Spg;|6;&GL<@mLq+f*m@TKYeB95#AzKmzh`4)q9#Rsa4*cV>?$l&y@6 z2K-&+4_fpQdea`3>O4eb5bv9l-KADRR}`Sv^O1%A1$MXFZunLVmJK+#NOxCrDVee# z$&Yona}>Ya%{zd+lpL##VGD1xaF&BLU@gMyG5lJ_w6h>Q@t2c9`pJG^0ZK5=VB>h` zA)Uz9cVXWJL`zLZX6Gn(u6y7yfWR-`_z|1aRnJk~ zHD9)FAAXMH=)VbM5=S>ZR^)x$^28=O-t-kB?pjwFwKx7o+^;N$q-Qqk$HOpQ=>qX5 zn7l`55?-&KAD^HfxJR^>+S0UZcELg8M_yMBC2XsW>hrMpO-=}dZ(fA!u^fr@;$T-& z)fcd~p{X#lA&zg?>19@YUe@v$4kfM04`(ZNT*6a2X(k_v1=2dA)<`mTXS-=%B5?aC zd!bibpX&>bI%}oS#w@uNY#w84&v35o0@H7&)||TK8n1e;s@4)1*cuv7+op4CXFzyW zkccH;8J@SvFwa8CYrILm4s_{Bd$R@xdk|zuz3cM~zPrb6JY8%29a$L$)3G2#cB|40 zG%CNuncYHg%!+%eJo&h(z_XS}-H#KdXAHCPr0VZ1Q>ZyT6{TlXlO!M4*5~g}bNFdA zX2m1WTMW_ptqOyS>#GT6G_|hCy!)AtknB=V3=_(i2kQ~Pt=}JG$r({ARlX z{a=G3JNy6NWMSd@_w;|97`*wX2-z7!_j|3^ED-F4wH(j+h*^S=gr#(}84;u_0M02W zaHr0mh*F)gD?I#m>@CF{PBAtcjxV>o}$oo>+V(Lsy8%lkY%nrwC;*U>aa zSBZ|E4n-+BfVG29jA3ACi{_Zl&nT(>7ZxE%|5}z13u9}J#(F-yuQp@O|6GPc^Wjir zkc@3{-g_H)1P#2HKjbh;W zDZBkjSTg9kY`Uy6N7eXUO#=npe!Umk>;HB;c@&$CsC*8V1}Z{Al1RBAB6y}tzYo^F z%$nmU9@)x$divpJkedL6Y1zk?>wf#%b592<5w3^sQIk!DFyE^GBKY_4#(H+fxtSL6 zeg#r$ccoh|VdnYywz$97mgl^NO)0R+uowJ!dtI)#ep>I#fvp~J&I?6ok1*SI=|&hY zpsKNMf7M3Y9siAg3&a6p4$Pd|k0>38nH^>EMr+3}i*I+x;Nj36X>-Ht-n3Abktr)?N3o`JLWp_Q8||{rKnb-5+7SJt7izmg-?wG}7caW4%248Tac+ z@zGmQqlZ<6xyxXhe;l|#f;b!wES9I8@C51ChW-8-Mo~%wsZ`+NhbU)+wP?hTeF$p~ z*4Q$XL^R%jjByND5fuGU2U!iUWLJZmsCu9g{J^4E8&p2+z-l~!KIkX+OgOD!VL$bk zBG7lAfPx5SQgX6H7_&VT5$a3>9C2UOw-i+Iq0 zSu8Ssj)WNn{3QE?GFPcdM16u+Ebp9Qa)5Pnl(E1urWUtFy{^j zn6LPO(;IrCtVP1i3=uZ?`PnFtS@x@0`gT@eJrEi%&@>1Y2o=@DDE!YC3F5~WEO^$z zZ{*~)FkqIk(@`tcDMJ*VP$?pTwD+@&l*1rNqh;Q=M1(uW{Hs4yTnSs_ouc=F1Vnu?kg{^w7-7FNq(b%( zN?)hR^x24?x{nY*)i2;^!sKPyjGw5pJ=R~ClQ?m?b=CAb>xJQH8huu#*|F%D+%Zh9 z*f=kgWO>g>3n8vQa2^3kR(!RC@(D&r3>HEab=PMhfrgcIX#y#;jD2-%K6pv7`+2Mz z1mE!6*;q*&6WpmVJ`Zv{I1&rz?0gr7hdmfnheTh1(G}(eHkG>aRh9<0yNuU{XvN52 z1HvA>Mz~i%hu+vF8JyE!?Z81C;_-ePo{CDo^S59BUK8|yiaKz|sS?QBTibQ6yi+a{ z$&(zNDM7b0BI?KMv#Y@JY=rHUu#h^DiuisVS;i)T3f%eBh&J*li1o=7KnO;21%ChF z{=ggfvxBCA3mAD)>1J&j%BP1V6^YrS%Nd&ABm3Jl&Ag<6J(soTH@9HzQO{#1iok(QYO7 zuyWGaOB*gL1`tY>BL#!A5B@OlVM{<4#k_cr#sqPz-^|*Nf`qBh_5H9FUhC$ITORrs zNPj%_#fiLsfr-BUCQ!s)h*`RncdsQ^M@veTO{Q5OGmAKzb=U|NS`!#3+5XVO9T+Qz zERnq#iARhnaeW0_3OS~P^J2y?g(IAZw}TyB+e-A+xQOZe-|aO+OWd)Y0}LUg$p{lS zmbMAePNu!;U!pP>MTCenLzsH07Zfa{#I8`-k_P|01?CS_T4pUYM86246T3ErDIg|1 zDn4FIZ9EN6@IPvcb*#(fxrI~t!;fKtE}UGGV4*iKXiB6>S*Pj4a&Z#D&ip;P-47pO zko>mz(4povzwJMl&9?PI-!{YS2e8=RVv;;S-tQy0RIzVSXAU&&=iU1bUy*_?S}uHP zN9DVq%OBk;3jX1^ubF$nAP(xI7i55Pj8T|e5XCj!bbeAmsX440OnjWR&T@z#h-V@O zYXjsX)&)h6yg~8jN^kIgdHmqkCbKb}YfX{;l@;7&5bidD!!wj6{)%pd%7*X82m9(G zbmg4s(aRnEyDjw$A#W7gVWD8v0K(k{@&ZK*lphjuVhK)xjOTc6W?{Z!hyuX!GjK6v zJu?jA!a}Z;njM_UC_RM659Y$!uN&I07E)lXKA{7KN@KBrdOb-#f14>H)fi#Q3L?#) z%t{IXawR(yiwMW0J-C6$bbb(|tSGmrQSshW+ys96B`Amb;A*KijBi}sKMZy1E>#T8 zEp~c-&f~{Ds@2QOmS8?wn{8ci==NC*5o3U$C5%2l>eh|%+5w#?)Dg_b+W>2}0hlQ4 zs*eA_Iyo&*)X;?Lwqo*zZqi1~Mb_XfAwn){mo_G8(+VSapSEQljbyitxc6NeLx>#o zvkY|b(f89p%1P_$mOz?op$H||@?_k!8e*heprSJM8QW1%h(ZQ_?5nM)sX|c(5ENyo zs+FJeS~0weT>WjM8+hJa_`ZJK{_{u4|2m&)SK#Z-)n3Frf-CQ8lxU@0gDX%IV$1(Gi2x+?j?n?wnRLB}YybU+3%1*APt8}RkU@oJ36ILFO!*IgLwswA9U2;_?%%p4z%p?`#J5lBDVCOxI8&^zX! zAQ79#*^{0`#dS-gGnv2 z>0DN1;;7`5$#^KkX~ZL1=)|jI!7Lu=+ToIF0he<>2ctCORoyZ*NVw4LsJD0IYp8CM z=%!Ri^a3h1K|-kx6i>O2(7dLK#w^gasa+{P`Z&VclBXA>CCF&An{Z+{k8ER0p+7#D zNb&fK0Sf{aXhEYnbA`;`PZ<|4 zR<%DduFjTEklcT)6yJWk`X~c-8S=4jw$66f5h;RqQ?tAO7@y6_lO+zj59rp9;p4S~ z5kd2!2Ln5oC8y>a@cu=70$=;DDjEO>=YI+MtW5v23-I(mL7yGtp9>JHB%qp_x5a}J z{|>||fuTv$Hn4U-$*?eUal?8niPkE~E%@`5FTBK5DsAjoh8_H6FhMf$+=usd*on70 zW3;)S@8jWfb5bE`maZ|Xa`Ufw**}A@td0m-ar2+&YrCg7DQ@*=n|<}}uK1)={-d~EhN-3I38(~yGSg9p_z{(Fp+@!<^c!sMjSU}~It`lxPG zMa9yTg3tKSEq|B!N05?nCHBxZ(}>dQ)$;Nc8ST8fnEvYb@+AwkKPSRn@I}AZO8D?s z+?|AkiN_Y-?ZtSa`E;qj zpBKMqyvp27f|_iaV8^(WraF)&U+tyXEhc_k6OfwbOqEh{-KYX(;b9xFocIAl{q0j3A9v0{&*BqSuL zHrwyMf~0Cyuu(@(>1&sru#8&Q-#KGk8+C@baNFX+hY)~_5z`^P{T;x31cK}v9DRaE zml@r2HeiH_^AI+ArQ805wk@_b+IVprK+P5tp0j~8E>(o3bJIUGM_x{oIgp>`UFqTQ zqYtW`B}s^VGt*bsOvHbUlgpR678L7nL(FfN{##_u9lL$>VqwVe%F7e;cqKnYQH+F0 z9M-JjnkFs3hB>8IG+^GLr3fZ!PQHG&=DLdDoQl-L{Mey=X5HRm5Y-27vaMgZG_7nkm8n za)57m^&oDXbLrto$L)f(L~5rF_@sWf$^22{ELPn;A&g+P zj>K6gBW1Y&8Nvz0-P}K2LF7gK(G<33t;J@;ngtVAWFGp3I;am8tN5pVo=XU{dH%at z8Us}%Jjj$ZTn`F?-BfTqfv5B-Ynt6x#L=361`dr>I2xIi=+_96*8zZyB%v2Gx3~B` z@L+a`i(0h=gh+~Nr(=!d61h?MIYLunov5y<<3*b0tK7Q%2?BIq5xb*qL4WD`aN z7J);|^E8NHps*_uBSe5yNSg{U#+&B~(?GifQ!PKY+A1go7>w zfY%qIx~N8tFcJfWUE0^!-rXAaEyz5{tN3_{k9UDq(a~5Mc=NH>RHdkhgi#V1pnJr8 zllxdE28WxJ1RY}G7A0~et&59qi0k;=n}Ri_0-GwlgO?r@NA^gOhspW)1u}oI`^4(}@-)^9VrzCrAv7xZ`oq^_S&xhiM<^brxq1?X>Yc!49X$HNYctWjxqJ z4!lvAcTEW~Y6H{?rW)F0M`pP)7CP4YE5O0L-$ltP5-f?2B)PD2v*ZD&sUKR85W9HK z7B$IfNJ9H3%}a9c3}J9wR<`2=)W=qU-<%l?kqmUoR60=o)$w@2fQ9&u5`K<}fAO25 z#`fj@FpSADz&kfe=H81LY19m*W>Z|KtrlE$a+O}k5gb#V-0ZDwj)pGTP0KZt&NtV2 z+8{L0O$U44X|pR6NWTwv_|>`HH67`IP;2i^%F!UAV^Sk_5@D9X#nBt%t4y zm#{0lV|({)@K*fecI+-0^CGVY%DSmXE+&X-CAldf{)G4i$U5}4v)^P2&;CtPE~WKL zPb=1;Q>L-{iwL`O`ZDOSz#L)gI?#zvyi4n| zO{NW-;?RHZh8Q|@09SVJ!)ddYTepaS2c5GL`NrGO z8)4(6+W)gugsl4x|G4U6;j45kBBGGIrD=6&1sHz;8~`GX%N_VSY}dnq^M)}%nV1dy zcmw79Vj;5Ei%@sz+zxYPz%CGS;0!zI>gf5!vf<&Bn*A@|k0tbMma@XRmM$SN&e88JH{`c@?&o%vZ=mMMsGuNm+BI%KVd&TY{%r%&D^ujX zLx!cvLi2PoPk(*lPjfP^3EFvET2LR}a0)u<5P#4IoHuMANw2EYh~0_dv2s_V(!2Dw zDtbqgDez=1%)5$D^1@WJP3y#8EbVO@{wyty*e1&^Q?pGcwYI-%m3Cs;9D+Hfu)tW^ zP2)M1`} zMt?TYkUG=TTmaqP+Lw)@ zMs!EvvC!UI@yl(&pK7D`nsEF_=qJOGd2ax2G-Xl0^2*SFmu14e#LfLF4MN-J#jcp+ zX<3vOY9C}qe)CLVt>Z;!2oXdceqq(5%c@&zPBwny>W{?_I5dQc$bYMwvT-r}pE#xJ z>1am8s9S` zG#COvCV{(v9QXvFv8`~jFvKQ}O)O@%FgnO=|9p*6?5QU7O7d6BAfPb4-C+vC=;w#1 z5-FF`1du}m1hQ3fXx(lZE>nthHcRaOG({=hs=^D)b&%2&y%AXDyT(I@+nW*5UrEjH zIx)q&JeF_WQLhUNBF(@XewQQPC<3m}O4$(dlY2C&1FGZOc$}1&JmBi+xHT>ZOT9Y3 z#^~cAEVr}cw*gR%CfDRp@x)&6B)gQ0I!Lo7YzWG5_@dBD9o-QSy_b=Zd?zFPt1y*@ zNl8?uMJM#=MO!m!oTihbkOLB>Sryda72}W%^Ii}0Olqaf`(#2~7Pzo9>Q<}!#zMaW zq(;}mbZdmN>*LBWTH*s$5XoJC;0j<=&qzW^>||NOi>~c5MW|PwD(DK?oD*UodOi9r z)!ki8GC-Q+w+!Zw!!MtZgJl_qPsBNEeS?@UfQr+MM;jcj^y zUm)gp_x)ItsP7Uk_{6Z^EVNF39k*N&J*$&vBayvbf9miNM;VtB7$&{zj% z3;@oTPQKki<(dTtud%=o{J70k-|Heg#gx@XQYWd46s1C5j;;Rp$FSCh&%emo%e&e0 z_H?$C|MPVFnNOKb*oN7kqt_!H!FBO`Rz6F}A<#$S&$;>O^YX&dbEIk<$dy9YXe5L1as&?St<+8ttC3rUM^XX8S-MDi4=&_0|6@iL4$ZUy>&NEC3Bq|sOIpy7>#YO;Bq<~dF1C(@ zb<`M~s7*B21wjLCf2iJ1tS#+YKW6H@@(c}Y!IOsYAqEI;a-qvyx{ zVbp@%(SCinY#}k2SYPj+j>GgU3nc_Z2yrN ze}{8|Lo1K1&m-nJs=UjKp>ZwSMcq^`$(jDntQJ`RYJZt17(Yh-L?E2Louq=NQrT+< zl%<%$fyri{V{W%I&J`Rrcz!==ZS?Sd+_3cY^;yp=`1A2>enS1WI8P_cJ$v71<0fp+ zXV}a0-9i54|M$GvU@!N(;fww)Du`PGLdXHzs@;v!Fg*0!|@k2qKcz@TIp zeljsIMLH}PZA?WkAt*YrqVGangk}=30AJ{)=t6ZNQ=C&XNwf2V{HYRM>S=^r3x@=T zjueecte4m4>2I!RIl3_xQH5dmD%cT-K0N9G+O#gMmn@QC1BRx`B&3>BVOxX)JQHDY z${ZLF_%08OW!Zic4gsXz85mfEgff?ADIILL(H1^7)dcB=);#N&sZ@bkGDM)r zD_WlgIYvrmp*j|E9|9Hs+qgO`AReYWJ>v1F&N)gjc>RQ-qQ2PfNz<^AEap*KF%HpI z24m(yH{Lhz(5~H<*}Y?L;{r%h|GHuf6MzxDBbElBxP_{^*^V4@J#&nu@fl_5J3x1L zLPOamkm5;uay%k-27N%%4)l2HD~F_(i!5WC6iK2!rM^g+O1Vs-0GD!s%Q9KO3pV%X zl{n_YG5F&C&oaN*Q7dh)T5QLLo7t$>8I!ZHx+8O7?ry)U8V#Tw>%+$>*0$#9_h!4- z?kx@YfP*Ilf=6+iWLZo>(0dl^N(3#aJeqVVvI1aemEh{3!jp;wp;aSG1HxI$pwTN7n$4}C7g|OL z2r~qBJ86~}MkiBEE4YAUIu3EJ(A8q5#(E@KRn#VoEgCXC$$_Rc!qY3kEdm`FM0r5R z3F(vc&2)YPvW(gq`-_g}=sFjjV?DbRcre{&QERwk4e4HMINO9TNTRlSD*HzB8U_ji z220eES45@A6PRMg=yVtnD-NH7MH*}OMnhH5bVZ}{S%ROpS%iq^rDdw4K@A{jWGum= zo=RY`$UrCSOvS_kW5Qzvj+itf!C5z@nQ09Kt*OjH9*D_KbsPuAU(;)rrmY3yOYa92$uAeO4HD`#=!Ojg~lqkP0c`!k0A?;md7k%zXF zexoR>a~C%3YlZS<*eQvV1*=rdEDhI;t%ZDJ?aPdcXzU zxExKeAdyhQp{ar*{WI9E@e}@tgB|=D8vq? z55i^{y0j<3!3z%}L*F>pd7Dzp++wBq5Vips*4s2A(!yg!ud{L-C+pfdWypp|7M1sMp@=Xrm8eJ zI-V@yki}JMHZ1Pd7qqr_k4=U)nNFut%){iRDYVrvNkw+F#vNp33M1QbZ$=VbT->rga%)CVe_-B4?o64-e^VNoc?A4 z7ikVLttLqZBU{?)5v{J`%iId-?kcXTKfqCIJxl*BmjeEq+K+{kiS>W&=lA|c?Z^4j zYjEgGeL`YB%9A?EPbOr+1bYp>jYh@9iWpT(w&he4L(Z|Rcin$Sj7S{`gU@594Hn^g z*h!d&n>ufA{`Y!Z<2=27@0)0|hA7n7+Rc+sCFsPb4E8@IzUkHL^J`3si_i7x{vm08 zZL0`Hh=vY;K=04^cK)8;0ZXC8G?>Z=nwaLByOD=|dhZk;;^FHJVhz?Hz35ydlULgT z4wa|6b6G;zltmO;7H+#bGf7JZv#<+>x^#er=n#19??5bTQ3+5tYx8L2Yi~yT5kzvX zR^<~`?qXS_(NkGkk19bqcOW%;b$uC=C$<16AAnNl+hVXdw(Z4mOuKbVZ4a7tA*ZI^FGAanJ!^Y>VKEdNzRr`( zPQCgT#MHD0%NuqhMXf=R)Um9EAbjA=31mi4 zU+-S8{}m2|n|%S>t?V1yms|F9=%epW=9K+U)y{Dq^k*rjNS~?v#7Ul+h@5Oqm>^q) zswYzL#Qtq{#WBgDxw7^-g=&;cIzs+6d2 zdLhP6)dWQ{y+HwTt>z9u`cODs{3!Sk^)n&jTx~p%GHARsR&fn1mm(E@1kumgQ&Vr3 z{HYVFt=2@O^?}fFLahtJSup`n)kC0H3*9IM<5Ui=W8YsFP!RodDtOYVID5wdh)so3 zPN?NNTFjEHXonOXEAUifjQmM(gSS|U8^&;hDO_|2aRzo|(OJP0a;_St5y{Ke!%>ri zeGvv`HITX=Mv78nf>>rW&ZqB^8BDD3<6*4_ViZ@)tHbt5)E)XFRv&Mx`ZfXGWa-gB zXjV-(ZQZ37hos-1>y0{s49Sh!0)S`h5~-T6n_5+-&$H9UOqXisqWyk5Nq^5uFqe8rQggO#+A_XC~%Bdj<+sl zuDUyZ6?YOQYqTk5* z2|ZRX84B*iU3LUeiuQ?{flQ!I7>OLhl3dd%Z&nT~C>I^$bP9D9OB)6p(zx?y)`cOmk%v zKBnC3X=f5u!be?V>ZH(;-Xlh~uLf4y+2f0G&X4>XnM^-B7Xv$)^F=o;?`_*|Qsu7s zg>m$BiL}D?t1@0=yRVKn+J2>n^72uG2`&|unGW7FjeMd+TA7k8ncGPrIB8`TQTVu1 zIHa^pW@s_lJ63;bH&{3pNrCO=cWG)-9vcK)*ekF~A-Tq(;5tRP{&Qh@sf2d=)CERz z34e^k9+FBIgxY!nw{2!Ic-94An};BiYSBSs8(jJuL1iSWYsXT_c_(3o2uOgeh-pe; zBtA(xQZjLUysog}Ns!}tIORPUC57Xnt;T{rj|VRIjVXjd2q}2SPFnWviz{$N1&NDMQMq30wz8dNBu>8H!~4uHKf z*AOG>406Q+H0s!r`;bIhn^dhcQYByN;rs}>o58&K+S%UY#c&^>l5*T5^wD$3~lemiN)h6-0@63A%C$|x3_bB`O?;-{W0D>+hy&`V#_Ylg%h9d;kH|| z9&7dtjC4?ZW3T7g@%Zhhr*UJYn`k2a{uqR(`=uykU&~)fiv8+3l*y=+B{zU9iv8@x-aL3K5#}zr3jjy znk#it+0!1Ytk%5GI)#`)vY?DsfKauOywr$(C>-IOhgEM%4L+)HF zG9zL?!LpY(S4mNP+At=*ITmrIT)(d1??4r&gKbEx`JkktZ^%RBP@BG)VLSvQ4Tl`N zZ9pgc&2;{5H5hpAO#z1771=m#PwH6&@UF$9yQ3xchC2JcA7Hl5%65DX#9VF)?Yqo; z92QNtB{^qO*HhL|-aVy8Y=x$(eL5h)o61@;pTv8~e)4veCa1E`?e_v=oo~F{tLrRl zSL`VqO`?HvWx2Te=}Hug%OGb%$kHR)-K8$j5U@+^)`53l(}b*7VHC_@o}7V#0#v09 zcm+fl?(v2epVF=w=Wd#ch~++&ZIw=OHg<`U5u2M$P-)o2CxcDQArKW7RO@Z`bzClu zkz~Yi8`~tCVDhjguj{LI)$k3lJjK4UUb$7&uM&bbR`lk_UYhz?Fdq33bg^6oJIFA@ zkKozL{Hdu?3e-ghW$I&P;Q_O`Il7AUMMcb^4ksXiLKIJj7*tG|bYXpBpkTsO2mTPR zyaagtY_r#`yxb@IR~9`SP5rDmu>$t1I6?@VIu%hE9|r&epjP>le0dbJ{S~g@2TC*& zukC7*3Ub*foBZF@g&mLMkd=vYbU-hH2?J!pl4Z5VIj`TK?yvhjg!kVfoOKb-?EWi? z5x%sJ_a}R7a{uZFkAvzx4$7VGf6G$f9_Miu$&;6G77>W`&i>GX1vF43e&1N?(B(!Q8q&o+k~{dTAQ*ZK^*vg@Ia=SkH6kH}$q-B-%nZ0S&M6lt z^rhkaY|(p?6@8Oc<_bEh3a9Pr^nCCE7-vxYmx^X(_>WX96FbZQjBPu{o^(8HyXV!* zSCW*~z&U`uQH9GX&t5vIE0^@nOa~S#uqiPfCp`D@@#zQvgOE=$_F8co)1`*w2i}hH zWz(j$ML#~cwcF9@_4pLH7g15pxEy|-7Mv_VfmT`XS^X(BC>h zXCDY^?%X#lZqwZHrc!yosl7|}iQDW$`=g4MTtNn{^?Tn6a%F(qzb9{-Ae2r8O{3iR zaJ?CoJZIY8Bk!$YN2gk%Y3l_vRfh^RvjRxlPh03vq*C0aQ6Gt30HT;q+lDf9n{XM0 z%5>bYZUX>sk~&@c{5{xm4{=A;O$TDU|24Z_9+i9?(j3^5I{soytV8RpfN6kBn}NPC z21=(sJ}9X&A&B}VkF_cRdQdt)T~m8^P*!hayJUMCh+%;CmF=f- zXWtBTh{suGw-w#Gy)?hhxNXn%eRFUaiZ|R-|HYlYP)I;93hFHt_ro_-hq6RFHKd9x z4bDq&hIoO6O$I!irPJk5Y#^|-fDGjhk3A#%;RePMXlbqtQhxI@vG@AMGSNTh_ASk zp^1KZ7~ zy5|QC-7DWc8aA5u*5iBu_RlWo624J-(|}A-YOq^HNv4G`0?4cE4EPi|O$`Adix1;m zGR5b<2ssVeiYY*b?+!&IQ>hRRPyY8kCl8YL(TgW4yOmStns;8Y0~etHI|~p^`aL$%;Bs!U_(s-YW$0PZ zorZ0L5XI$$sB7Ir+OedmDwCe_Z21ZTv(ynQQcpGD^CMo`9-5sz^Mik2!ygU;$mC1` z3|!BxXhoy=)`9~u5>%bBd@YRjoU3Mny%D*=;$Fj5mV{xJj`=LcLlLuV)BJs=t3$@$ z4khp|KxhYbVDa)2SDCp?432l2lbN1p(xxEI3^OXjvVXqcOS^_X8IuxQf zlb|{qw`}LCRD%*kE_UfzJXO~p&M?!cXTDe{h(~y%BJ6jjhX-Jz+&3?gtRoDhW5b4t z0s#NhRisfj$bSESLwMb@!;TpEo;kX`0gcnBGM<9J7$Wj<_?U$Z*x5$|hF1Xb6FM#O zD1!Mkv6_S07=lJ@>X3Ey7CD6kUT)Y;Gf^_x3&_*ltQ&d zoko2-l>PVGpx1TLy%$(0$AXhqHAlhR9sHMTZOg|nw~)QxJ1=?0-VJ{6`w(k&$K+&N z0w{qZh8WRQQI(QBD0mHdk#d-&s7Yle9KLiKyng0kz&!m#(LQ^+MFT#kg;CoTlUqGK zUyGLqmxjaKF&Y1T|ARRti!x9Ag#U*XDY#%CjoJ;$w*&Zh-L)(gySHRphIPz`8>Wek zoZ@dWl_XE`5i=oDRn`G=Xkl%&ojCAhUTS=@ufsfqz9t{Q3jF3Sg`WwWNopAy>EgQz zmbivg$JbG0-`f-gx7;8NlPJKJ7=YOJ?}GoSS!2zv$d9cVxp*BiMLL`Bb;r&}{<}Ks z7OQX?ng|K0iK?*T11Q7_O4(iMG-wkh#Rq|{(;6|M4H$VH&8Q=Lv<2Z)drxIpU#Jw( zh8RZQgUvRwT^7RN9G#na%*t2^7a!vu1mMx@*}LVqK;73zvI{D7*hDleIzx%OKe8 zkErm{Y3hD;=IYlYk8o;>pP58ckChFwomxa}JV~r%itZx8F@={hDBFm*(D7a{@CPF4 z2WoKp>!Z$Q^_u?hoEuwLv}d*K6iXN0B-i3#+Cddu?I|qN<`Jk-Mzdq{R@KQPbo?-o zaV10ut3(-G&bnWK6Kq`$ zE=dDS+L|z`ccVLc;s*{1v}J4I%@;y?n#mW?P(6gza*4ZqF3aw#wLXEkx$>y5#exAm zrHvWERA}6xYN5}VLSjIT>QRbX=*ElFV)G@Qh`1eA-X`Yps!)n8yGZ|b%}pv#fl^%G&zHT^U0%I>YR0p+IzdI6ObEGg5=l6CzPYN2iX z(asXTEjU>u6AL7;J>wYw9D(bn-FVmFyA(jNx~(wcR$1IRYZl);GL*d}nrm)dVOPt# zC!$hl-m0R1o*-3?PKD|yL3waeC+=jRNma*krb3Klg+wS4YONqmL-ca3$D-zO^B7~T zTSvp8f)ncaUwzP|>2nSR)ChfT)QSU+tjnk5$v=W-iv+BfHKh2W;-9|r_3p(_NaLnK zS(xvNZx!iBljEh+DnPzFOEjDrJHHPL)UB1c-A}$CKv(|qW$H{2eahe#gegz;H#efq%e_Pcs-VEkEjz6Q*-T3 zIRak$N$$+c;djLzozN>gQRUi(qx4IOV-5rG_(W0_z=1sW-vK3ZjP#hxHW%E+suQUa ziG);1$Y$5qmfW&53UMz>?VVXKgc8E^{tTAZ(>Yh`>kW0wC}%i&M!(orA)3c?`|C)S zr)!aQ_k_!9UD7+$HiTwO3}%f+*dr=1I?D_%I^57@4Q5QL8%9+ihcYhAnM?B}wH;gX zeSD(k9B%0X+0IFd!Y3E1_sbyT!(hM1sIiQED6T^lrtt$59ia`H08cKog>a z#3~n5=J3^$W4DER7Xf2;{P(o4`CMu7A=JUij)3|ILhJW?2~8)iJ(TRM`9gO#NL}7; z&QwO9-g6^##^3CXd*0c3&gu>&u4}8-Ew%>J?^Z(LV88=(+DnNCwGuH&&F&N!T)VJo z4xmSbFvT9_AOVFzP~g(igtOqlz2}4QM}UX_nt`DvwkJ%MK8fC&6s?5fVOf_4B$t=K zPHU!>eeQ7K*8K}~InDRL$6N>njk<*cloXQSU6)~>3!HeKlCsI2kL+(oyt8L> ziu?fVUA2I=;vz8Rk#fM7|vuc%RT4YY?cP zfH-;kO9TC7K=GPj!+fE(hKTjpy!~#SGZi&7pYbb7syidVET<>Fhq(Of_>@j5ez3bf zFCRf30<7-3`SE0c4!2$%o8}D$=wg31u3!=9+%*THsYc;HOtmX+bNEinN0e2|B z2`y{numzKAc{GM$iVK?r-lpEETCFo4uwRVIURy3>6Y_KZ1*c@T6tAzYVJ?2`h}y_Z zy@WrvIETLD`ZQ58+LMa6@Ke)$e=#2nNU!V8f??VH8k-uc0TZT4{Kr}KuHQ#gbQnH81Tp#}I#WdIewiVJ0G0w#eO_>H~@-;4A{5 z=RO7jdG!ROl4O#QR1z8vSyy|z8|fmY6q*j5@F5Io$Je(#uBYrmBgt12-5(C4+)n9a zc^w%Q#36~uPA4PuDM}KBC59k#vgpXr=jnnE&yU~n0}@;*NDT!Cs6tN`^>}l=KkmS# zMiSsKiGd`Fx%cIy7t|BG!*Sus@gpwgj8KeV=nf!XrXbwO{L@jVYS|VsB?_!_N=1I+ ztQoQu3JOlhbUqcpfU(3TuRS9RJrYx`KJ&&^Gl^^%rPOG%#S1!HH&f{mV(aZs<76Sh z+erfnfFz+!iyu8SXda%MjcTtNAcJHySqLIc5Gevqs~V2(@;1;gxy!dNijn2I}j!%tU%7R?Afl zza^Oj3cW3A^X!QVKg)~$dI2-4h`v)-*!f>Na}FvnEdNdqQfU>xZ!DPVEqEwxZDuq#jP zA>I||`<4(`X$)LB4`M*dy=^5GKp8ri7px!3ghf0T~K0xg4iqraQGF**MLKFTP;`H%2NERc?Vc?9xA zhh!8(Np2r{K`4MJD&3Ok8Hj0XrXH|Sk7LI9D$OPFTZ!|@gFkC~vMvJgE$iA?v9Oi0 zY{i}j8IkcB(=&UusiIrEVCu_sX6!pWScRu@nDPCqNNxWa|M(;4qoz5r$*8ApTl1WS z8~4kch+^1ghFlsI3;i5j@Qd$=t)Cd*W9~$wrpY!F)?*!wY~o_Wgv%{;*@HB3aj*NN z70(N2Y>}7BYs0@Hv4>C%pY7iX$B#UQC{C&KOyeBU+* zCTj>lLX?%f8XHrPMiY?OpqYLJ6juWvCf9J9AZ2o%&lqsNL1Yr zB737=`WfQWLz@W*dUFU-W0)i!Mm&LMPVY{jbDmlG<(bJwlQO3sQh!#6mztcbVre~3 z1fHFx2g}jK>&HFS<)UPBdh_=E)u-X(eNc^Uf6`70XNG$G;mKyhS~qET9Vu*t%z*&w z=llKP9`stk7MjVr2r$hiGBoS=F(NEzkJDKsmXn(7yW?e8a!D`F6QuiXp!yScNkxz2 zrEBUN)&lo$rr62~wOV4ogjH{^s>@BCc{}vj&e6GaHv)tYL6ty`{*q)pDyuPYZzj6f$|Oa)54j&Oqyd{NN>gqbw^ z*eTw&*mi8axfs-X0~UV`*r>x9yM@{$TNPC_bWl^j0&f%nu$Dp9z05xYf+7U~e0ylF zs@2i^dyE4DefebW%C?6u5Ha}|)PrC_XSzlN3;?@^ENDaF)H%i@*O6LC%=Zbzi&I@d zg3a7|z7g1y=(HWBXJCWRkdIZyIc~1gQ(O&J-yoS>wmdf0Dv5R+ zbYZJ&5cM#X10G>5XhhkxsCDoa=bFHq@p9{$ zeR)n?_iagHcP+BN6%SytQZS+*c}CM$16vl)qkw4%#pMq^d%XU4x(aV&m6LHXwkZRH zC>LgTT7n$M^CIPxxEz)iwD8Q75z>2-h=sDJ;2mQIXe)^RLJf@j&((0pMXPh6;4OlW zDlCH|orz~Fu5p+SJ}T}8jerh_%C*H#(h5l#KeCIr;4yG=9lj=Qqp0F=p1>Gje$9cV zyb99~!)@Wpg2iyAkSYJ@(i05g4*ux z`$bsjkaeU5d%FF~6ec25(eFn!nKrka_{4i~!ixs>X439x7)l>x?L{kT37ke3$-U!g zC*F}B`*lV+^gVBu<(H281YH*`PiOKqF~tHG=Tddzj;kjxy}m$ZDv{jgk2*XxOys?;tx_pbqR^0A`fUA?uNiHXKCiX@NSfx&H5OQyD7mZ@@A+h z^WWqKG)klbwohRpM2bII0)xVdt3d(~V?5e2o-ZBr36Y1~Aia|bgxL=! z&_UR2hGD#vLjN|s@w^hcSd%L>^(CbuU`G7Cq|Q)xmFB4Yj_%(taDX17fR%aP{~GQE zoP!6$`cHMr{2zTuW=7Wk8P!&-wQYCAn&6k)JJ1K{b{##9*jo%4I7yaC?Fir5XL3Uc z3728(q1o1Ql(@w7^7E`UOeI;MxqZFv;~<4HZisq$s3yYM`R<&!{dGJIkH6FPxn7Ye zh$7pb2@lUU6E3~`Mue_9o(caCmd4uq=a1b#8lB#p(yZsnKpT!Jq>u0Wv)!%l`?=VK z=~q>zg6xq9BG=FI5$B+-9i#4GXRZpvrJr3B>c)Gf*L46;%tp%eb@z(r&l*#6 z*o!>`O7GG%xiw?v3uH>r(q#U%r{(4V(L{*_xaYSxPa7W{dmQvmx12CTgs>$f5N#Gy z8?}k>-vHqv)QO`eT0kYqOq(G#{(j0%kKY{ppT}<~v)4l$xRW_%u|?ORO^RKESt*~3 ziqaa`s9jZ`S?Wuf--mD@@|F#u*~tA9!6r@PnGxLI*5qY>R}D9RcRJOb4Q6Y~j5AtG}B3Yy3ii5H#$W$wYOu%V_WO^$r z#B^opzt&>`uqHii?{^SFKdh@L>Y!zPgZ1lhE}KtJny#okIG;uy>|Jxv=ZM_a`PCcq zk2N>)%dLa^$6D5utS*c2D&x5Z@Oo%YE7Rsw*T10OQ9fE9)x5i!os{sSj%6bnXZynA z#E=L;4c&X3Zh}-o+N*JLVHfq5@wR(|y6dFn!KjY)T=X;j>?X6Z&^!a`y*-U*%5w=p z+BlV5+|nzMbjy#(;?MGSm;3at!sWa3lRYB5JzEKFf#PqIf3Jb@6s(J;c$Z@-$bc`G zc1i+)FoP)7aDPM?cEyg{YTYg;&`KNA5%Ic&8FkjlquT$Tqj}7kj7F{}#m#5(#vj9b z#RGW-w82~`l*$Uy@fOyZtN$WB*-+%3Paey>0;SL{wP!P#K5j;eCqL_#@M`|b&5}}W zM%EETj|~j_USTW!LNS0UkDio=ZMU!!*Xaw`{mSy~&dX75kTZt2j%|u*U$$~LJ~XEH z3qhC46#d+6V|mO$z<(y_kbk}y!Om>=k@| z+^T%~%egQS0PivrWB);F0%hXpq=W+(jr~=B?CL?_ zAV?g#-$+jP|K(P(TN45XLtDx$Yz0~kZHWP_1`vsn{3CP+iR-H30kQkI?$+$#Z!oX0 zTOC4KQXP%1L8x?*xWzL5{qW&(B65RdPsew8)l{zsMxfS%q1bfCd z0ce_pA|VrMxnS3saX1pYF=iMBRTw%Rn9Ge_UdP7|1)*Yke%H6oQ7Udyuf+kwf6lJV z)5|7ZTj}|R)DPUk-8A}!n9WRU7`~`)=P3vu*E`sAqjnG&V$&QOvVjk2X@|%r18A_C zAZF%W$#%S`1d)QlzQMrFy|7r%0pMC>7G9%dE<(Tou(TEvaO`a!mOcx0g|w9W4*Tj^ z=2ziGg&f}~z4PujNoT@SHDwOaA&sfvFY_M!7B3@{j1&Cd! zwls!;&XX&#L~(`T!QCidh;Xw>JcZG#)W)VHiy&{t7oW{R&(wDpk&YNVSES!G>BM5V z#LsEW3Oj|iSfmj1R3^&e_iz1s@cDD@D)F@7qF$|77UU;WU$6KzgkXSj#?_hJG*sjX zh&~j}(%dbiK)&V@$Y9$gOes)BT)BW#+|;U;_iN^;WlFkA6iHA=lUfP1(hjrp8V z!-#<%+)@wS=QB#5B_qhg>Dp$;bUu}ruXSc5Ud{yE+^N6jvchDl&*tMOV7i9~mKv0d zK>1#45&m3xj~K{}v-L$qSVd)q4Tio%@(hf5SxiFWA+aqC{kYyHEvCEe#z{0l5}KqV zfCd79Za+WG)B|+nAcNXWqf`jkL3>Ei=V5+92|wb8wL^_h8NGK!Swt0bn9Fj@#y-_w z$XnLjj+Zx(2*_TroILzmv;04Igz9ut?B$k?m#4W~1LXlSk;std``ksO`n>*g$OtJx zktwihNKme54D&;w%=6rFK*kCXl`fJ;os;!C4mnBD0^=B%3yDTbu5{skbcS8p;ueb> zKi^O~(EQtNDjliyu|Oc!SB`roh8)!P3?S)2dk^YFPSP04CTia~7K`zxAbbK06>G|* zml)U6TM!=ftC5i&7Jtm9g`2ac!#f-TXJM~$X4W`8Rm*H*CI#fkWd0FJ-|j^3B`@?P z-lq}-5B+WExS`|T+@T46LvqsP7C6uFld96b>Xsx3!OTeD!Hr5EMC$j+1E`Y1dy&^}zW z{iu!BV0Y-IH$T;g%f49BQ}2=bl4PUtR(c9!urKm!O4xOITk1>Nsyp(dheIUT7=Erz zLsqPmubQ?#sdM$CjMOX>A4aJX6tmINLBnU{mQ_ZQjm6kTaIih>Osv z8z1OA|BiMXvLudXJZ{`=NZ38Rw+qf}f1ljFqZNMbk1cwyt4(JJ5bykPccQf_*03zz z^2Vm&5AcA2#skCBa?Op6yQ1~9?9k?-Mwo?eRpshBEW7Wj&Pn66)|Zc%Dz*Ue z9;n8cyPwP(wJ#c$4=zSR`~8bwKeZ5~hi>8I=QBiJBG? zAvN=j$!kA6C(vfOj}Qy>ci|3r5MhqQmBXQo25z+hmmsWPW#yu^L_eq9br7(r4%TOc z=c^)~R2)xInvon+&KAF%EgdH&(jCKJMcs(xZY>v_yke9uSiT@a?y37j&fEroOxWJP z6*)t%j}A;eCkzDwZG;o*S5 zjB8B=pySCU8+U}TzfbJLx2<{Y^jB^am3+U=M8yj;4yu%g7tatNRHjFLB|g8T-W4pE zBCj)R2V9_xX`P3Fwkp{u2CW(FAm)MX6{?#sb@u%ZlDlY{^>?sge0(@?Aa0Awh^g_t zx;tcKwsk)WqTuT=x>uzg{vSSvhFD(nwRKpKCkBNx^~#>(!!RCp|1}-!0MF753yL3E zs3u&NCaJgF0qt@N<}h$F2GIwKJ_*Q*8Pxeusb9dUpU{DU^Zw@};}LBBEHN8zAGXbk zIxyHHBV|1|OYfNB3-E|Lo!U)@zx+ zl4>su_#se{8`0#V2CZ#$u(a0Zus_HAshYe>xSq;{dmo15<0SC?>?^f6F_UtmSc>!{ z&)TGE=}9hWWVXy&RN@P}mx@D}4k(AA*y%R6(^k0%^;lJ10`TeC_Hyz^r67EzTCC^$ z7wpqvz3p4q&16r>)qbqPJ@8;`s5kQ4ap&K&BJIY+&J1+Wd$-Zkv0l~XWzd=sMQ(7C zbShamer2g4Zg#_Chj6M-Yn(bCqh zE^&p}@X+1%v`5yPK^#Q>d=1y3F1o?o2BLVl}pFxGopxtE<2_vqkNSM(P_X|=A^^--Y zvx$h9*R8E06A#FkhnYwdr|t2(NSb9PEJn;HyD>-moFw?hBapkm=~bfhb7UQ)kzDt# z_4@qjISc9o=P{UL2<(Ua&)+ixqwCT{?m>&5nZ!Fo!4r{dF`=H7J0Zv4AaP&;OT-oS z)r}vGmI{iaxlVe4AgIQ4O(r%u2-K(Mi1nkL=S&F7`nQX|b9?>TMZx^@RH57Lj1X;7 zY~Gys?H&9p7-7fbrEeR$fglB6Oe3A2fS`J^#7qvcjA=tA(I2(Jfm_#tW$5&oGYO85No*(X6%<1=@HMiI1bAi;}1W0A8_!~`IV zx>58E0L4o<*((j-R;d^>hXUCL0zP2y8IbT;13@P+cv%%Vf`Q>LftfUX*x1pCd+C|5cY7qgYdZ&#J|m`KLb z;h@(A?fN0zO+?1L(Sb>fBiGO$nk?DOahu5JN2k8Ob;vj;zGW@WE<Z!{V2ghtCCoe5;!>UhG-S(+7NlVEa%Clh%dkfpTS3{me*(8c z<`Qc;3x;v$dm1T~@jvKS?MWZ<&5+PfE}=JWu5Y=OcDGp9*;lfefa*?&r?>|YO|ba54% zkMn#uxfK*og`_f~)pUM5UVk~FJ-l9M3D!>d8kY?G&I(tW`YN-YhQ($lbJO(wLB7d5 z#dch-hskSbx3_Qbk1+@xW#zFLlRYj$V+r;*Op0keJ_SG``_d*>h6g8ex2WOIV8-^?2aSa5gbBS8jgJS-Gu0Ia^MGT>BogT8f-)( ziP%tYTbyE4yO?*=0ru2{3EFeEr9)(3V=lNtLNI=lPQVnlbaa0_1 z$J@>N<#A)G9jczXAouEi2J<}gI16PJF4>O^THryG8S~lQ0}V1vkw!Hs?HH-rP@rNveO-v&%Ja4D zvffc-%Yz`1ApOH#ZPA?XXe`OUeJWT(D3`&(WH56z^x-2aWU*(VgFhogprp>h8APh03-a-lI#%u3Bb8 zw>*&(-6h90Mziqd0VJz8@_M|LWH3S^x9r4Ik9K8S*J&t5=*ViY6ed8BqYt2OzD9G% z6>`N`MHteIqDM@73?MjqgTO94p!op}261$(0t2!4=95zbDyg&_DKP6kX1U2u>Q;i_ zSd%h?EXvn zbqb2?GB)8jFUs%Pmh}@Iy_e^S-dzt;iLeAS?#O(ZqHjy(i!T5%2bLNf{^45-AdTzj4E zq)u2#1R&-2w$93ywmPwMMJhVn9s@y@LovRUUDY2#PU0>PI%vYioB3Hf{8$pF~gt8@tibDO7O$uPVpR-=^eMY$(Jz_KdhjZ-iWXZrv;q*elY`0#EAY5 zWpM8?SkdaNSu$8(367>g!lyqLLt6jyCatetj(zJWctt)1^MJm%z zsdorH18A&+_O=Crz(4EfZ)zN&B&8WjkHw3Y8TF0%N9i;J`hAF_U_`*d0KTOYBi!NS zZKr~^*D^WTdtO)S$0H)N_6xw@Uzbp>{y1s5Oq+sl!c+=4ACsnTc62^kfy;ZJ%&z#t zgnfOw&2onz3zN9x#z##(@JllDUlKwq2Y~+6b>67j`0TE3#<^SC#2orsANg+Ie6T+= z<%)c}OMchzPJw`(@fuwo4i=!8G;nNth!8e1T=9p7Fmx28{o@_ZUM#YnUh& zb4O$PeFx+Mj`Zoq%qB6>lfgoOT142INxB8log;x8)%_|NNcY2PNq6~rs`+~nyqAmF z&OAc$!{zN<0Q7e)r(T7x9|jf?97Cl@V#P;VUH^r`M<~BzTLR`8CT1h2zM%3C2299G zvTa~T>8N?FMa0{;(w<%l7dyWJjJpaKW52jBgO^~cmS3x41!npVq&U8*R%2QP`x9|w zScbZbXH(^Wj~PEjf9u$jJj}7LTq44FBmR3R-TIVkF}OA=zFJF1SHH7-T=FBg`~y9? zgMVrBd$Gzq76b*~h>u_6YfAS9eLopi^lo~BZ3m^VJ7#fu{n@K~AO!g1q~e8LcLo4M zVL#yT+=K(lQ;>sIN}G%1Gs^1YF?<%bPMoZ_C$4hoUv05(yl{8rsb=TtPw?w91nPG+ zl5cpd+ScSHxfxdu6bTI-!*_3m?N{3Agk{^PIX%aSYrf8w?~b0+4}jb`;?>%VhSuk* z`sXU_NE>BBI>W`rU+_8*h!{MfJk0+72-p(giz!h#s`yOelhT$C!0Yf8r&hyJcjz{ zu&?E9Ojd&WXVXL#xW#Ha&$TqngFOk;a21sYWvrB4AC4J45jPuGRUSZuvJhDi&e${M z{;39`v%|4P_JTUBKDOnD{U$slpsY$~NJrtVCb2&pvF37)!j#N^S$QTOrdkw{Ks}P( zPf?_jB;y531rX|ox}W2&CKovgQN)!NO+#U)VI+i@jLsScgq--a6*bU0(Aa6JqB_x5 z+-OL)>0&8}V!a~GbtVN%iWfy`qTFB8|49hS0xv%Oz!ymAyYcPF@H(j`!X$`4z~C-- z=0My%n>Cthvw$a_@QFJ$05O+T?<47Xo`LbtuFvUv?t3{m1iEIrP(#_4>8mR`ay3{9dhrJCR}hn|aob8bLZ^m5A0MQ#7_e?+Md7_Iq(G zrWx!58ut5$J0r58*x5E4ixS9GXq~q-w)EU& zkMkkniq2bLK1h9nNif!ak|^1#g6bA}XBsAt@Z0Kxi_~SfriRM;zIU7qxa*;lA$5pQ zlejn&{N6IcKV9FidMQ+0L;q6XO}qrdA%_dh|H6ql&JNn7YB;^HmKjV?`YF0isIAx zy1zJBkJF^aaS}}%UY;JHNSP2hp;AZG z%+>wjUsPsID+xAOX}3MlOG>7c?Gy(NHRFR~OUq?6BZVn~?x9aekEUZB)UX7YMniL_ z*z7!(l+0Y}1j5&L%)NcIsXvm?x;mfSR4#>gJNBg1b`;Ca=NIVx=6QVq@Mp z*ou3lKhh6xu>xyz?;~l_mkh^HZnugscKtJ;KGGgN4nPJ^0d$w8>-KEhOw%GYAGE#L zH*L^rJLxHAmrV`y0iLC|h%gQUvVcPhl<0wEyn=G+*(xvx4KO4^?!f7Lj3Eab@B}ol z+|6B`TFO451anMj&4-I%LNa?*#O+a%zQTRNK{HDzf5VO}Ib=*RD`lwH^3>T+(<@WF zfhq&wsx}8~P??Dq#s|`{jRo;C+_FaaQzwqwQa`K3UiRKC{^u+{EH8(brxEp>xp8Gg znN62C{^S2*aayz9*=tr(MM?^EoE zpGWT!*?6Up0MM86l@*#diR0QXn5v(coy7uZI7Ol>gpSi>6+@m70VJ|>IJDQqVoj3j zlw_m21ARZW`zMeiKo*|f#(YhiFLz~Z|_pz*FYF$8q$EC*yEGMO@Ea;*ae}eJ^!eCM(mvbj5j60&?5FO z2vMG6mYXq$28g}`(2<3qd~Y|wpdJ8gUPk=GrR>DdDZ5|W#HEEquPRcR zpTG&9oEvF?6aA|4E7XwbHAu}oW7)AZCW@8ch)0bT`=?&y%e4Dvj*->g%^b1l!G5_L zZ}arVuqTh6!Z&-pWUJge42UTy8p0H6wREY9(|BlOqVfs7NXn=9nzSi6936hj;NYz7 zSY@LZ{$83XSrIe+8Qh=Nl;dY~fA1oSU9_ubg#ty!aj}4U{rEb!rdxB-q|3gMv}Fu`RN#O)VTNSwLK}e{fN^&! z^9|JEcBDXsdGa;_+Bm6-(PjYeO?`=V(!P`jb{FYC1_*I=>5>!-oM*giRjNt^q?6Wu zMen?OoxtLR^`h<`D!VITB_C}~j0Qd)F{6o`H^oGX2!H1tD1drFL_i_%4|E^mO4e#w z^PvWc4QS?&;Y5(i3_#aA5k$w1WV(}p5)|H)t~5jnZ%t+SROJCNiHP0m zYE=nX=4S4o6t$8wWoMW5(_tFaXywe}p;%KgEW9!ra6=wF1%%K*lE;9l43qYY;WgjiwWn8h)n)eg+Bl78HgC*4Y3Ox9qaL$ESBu$QrZ&g zw(LJ4nwT?4Z!XPIH-otoZUUd%2M*u$W*=NLkroV(4X@8!7(e{Cw+te&1M$-7gxP3& zt&;H`vM^URuBAJ{5N;`cO<*jj4OfBhrL(cCeF#S==FDw~hi?#@O2gCy4LQuGG@J5~ zqzjICi5d?uq|(KR8+QNv(w+3jqaUK-p8gpaXgdG4ZBWa+)|LEN>$QF< z*&rQyy7v%MkVwJ|0k`?TS4^d877P!q}8Pc&=eWuC!-y=0xKA&8mCiB{L~FdLWF^+mtK1;jcu6OkDS zJ$DkzQ*&RPvjq2a;BQ8s?kr$}#YphUeSyzH{KucPIayf=g*Wxt#kuHH<{ZJbEwt%> z*;&=;j!H}OfoVXQc-o8s*!i)Zb`z{VTws8r1vY-CuAD%48^C=|J7`CZ9)^vDu?}8k z><@2T+wiZ~te)+wNqGiIzr&E6d_C0FbQcgvoGcT^D}cJX8``iYsR!J9Oq97g`*y1h z?lcMCBe6|n3FI5K6%$?1SroFZr&V(eYSOZ)XsECdEo4*ofH2%s zx76Hv70@zv{kXXpAvY|O{Y)loRkUdf5+11S6KcF{%Q2&q`=J~S!8;b{0EwpQkIeFT zON5>BN|ftVxaGn)y-4rE$p1&#JMicha9g@%+qP}nwr%aQZQHhuUAFD2UAAreR^Oc5 zdy@XrIsInlUB6%@V~sh-c&`14iG|~Qk{P>PUIraK<-zXJ*LJ4jh%x!86)#7_zxBd5 z4`8V4B^mp}Glk*~0rkOK7#)%;0uP+T?__>^ICzw858O%0o`_s+i5eB6Dvjs6l!S)1 zRUogsDd7$u7s(Y~k@PV>_Cdd2_9RA!&ji*hn2j*fLLoD@5Km+~`xCd2rF z+J%*JblV8@MK9moW1R2Mv!aZv`k}`vY;ajSpw}nixTpQZIU*UtC@;IDt*fdYY~%OI z%euOCOd@pQ!qm`|6J*)jG>3ZL!7IC|hUqGAzi*?-RatfYiOm~ey-vU7FjU5`ts=@? z1O%v6Zi45yts6IW7@C21VCE+qo?4ZFDKOt`$~u|Nx>t5crRw`~9H`HzBOa>p#U+I@ z3cXk4{`=wM;c|B&TJ5i(ZP~10N59=AjgF1c=P4?5eZN~~)6c%gPhr@sLaV3y8S_m} zbx#V`9it&IbY#K(PrvyaZ??*w3>{NO?v27SXkb#1Xm!2-^b(p}#^lQ_&%NI;FD_$o2`{9vIZ-3(&#tJfNW*!ztJW>iw4ly#SJKtT2TZ!k^+ zM+k}yH!z#9ZICvRgw^L$CHuKPS8yiaK!WKo;&&&}0RdFgyem;cfn?U+9{bo%{b$!E>UF1{%?bZAbO>W=#x-L!YLNtWmtfA`NN?U(&xZv9Iuwh-C z`O!#sM}2fUVDvrgpvAT>MH|QB{euR+&qV#cQe5J8&+q3JN{%`NNeczCNg|FWjlJn$ zuc0(dcZU~%rs>Zh154KQea}VflNN$u zVvn)!P;hESeF>cNb)8dtc`iWwCM_E*5`}t{l`!xY9RCW-+1wLz85ec3s$r*D9zrf# zaua^nps#d3)!)LGkGJ`<ECI&Z&HxAbxUJk?oOnU~fmo4oUSb^)gi0QC zPJ~cF9hWP-)yyjI2G8nuzr23RR-%=`K+RH&646o`rw~?xyftcM(+Uk84NDY?7*_Sx z4Q8CkG!0^F#nL}o@iRS|fD<7wJjPgq0QWM(JP$=-o}C*iVegm_DL`j)9-erNOGs`| zTnQXj;IVL*G$TcyASM{~oxWi5HZ}IHfflQlXT$YG^N$1dn=E}plWiE}A^(zSHSfSp zH2#_W6ER_`mxWeEQCCANj6dR>V*<00V;=4P-84EKnKX_0tyS!UX3H9e zOerTTKG7*paF8=mFPiRqTFS85t&Eg-sPzRTA-{y-xyL{|RAPDjF$kTGrht-V)+}MF zQwj~vo;Dbv3MoQYq2dx)2hvXjj-M3spgWk&S9o1u^i92xPCX&FI$bq3RyozT2xP#TAgaZB;Jd)eyxsx;FjQ6 z4?HIE8j`3O5}LveGi+o+4pBNY!xe*Fpi#>g%(Ch&YXuRZ_j}uap3h?W@zJeg%MS=E z{o^12zoGKTl__m0H${5QPsKd7&98=?`=Oy5l<3o8_5y}qmD6=Dem}q3T~pz?43Rr0 z7dw!=(2$0U&^7YRzYy3RDc%bUv%FTYnTyBH>Fe5&o#m(IXvySgr9JxvY%do_Z6J; z%vZioT=fKB;&oLh6DgRv?v1*Sllb3>mi)q%*a~3$*YKd$B7Ju?21MOn+x5zmJ+#Yz zzUnpSM|iMK=)bEiE=f|3g--q!Y8EpHb;RUKhCvQkcyCb0!%~gU)dd=eO1SBB2v=yq zW{Ao#WIn{~de=n{h4`gd`;fX(T)*Ets+gd82-4S7e={J9gICOx3{#+N`SVu;Xw-V; zdUPi7K;v8bmn|>@5JWF5{`WI4nXoSf_V;w(Mb$s=+bbWoP9#)sF9##aV|`sWY#-NP zZ<NjU5tj=(?5bd)aNPH4C0DRk zA^)8S)&-5c!@M)gmIcJTcv$p#m~pHl+15{CJwp{CQ)H{Qa$fT}@+N1+p0Z+|%0NF=!q!e2H;ZquUQPPB2t*y*jnDYYa zL1x0JLh#LX)7vzbBfHh?mC>2&q=oQ`!j}E|bpqw=0LK(>qlsp?jh#uz+D4PEgaMy9 zBVvmqkP2-|GyVCG^-raObLVdG?Uh?^(T+Z!_58UV*O>WdUkCTLjaAe6Pk$H%Hf|wI z=nSx>ey^C5F}mOP0gZ^^vr-_?A!*Itx1)xt5yzQM|`NoZJA^Lsxt;Zs-Arj>A!U<(h zJm_HO@zLp4Py*i+@vStk_?MmJ1$3YHk9MEZ3tz#7C(KD7_(v<&K#4r7lEbu$Y-K7# zJ--l*syEp_zw#FVGbuq6(i@9N2WRJ4o&#U4C+FL7G2-g$^Ff`;wd7-d|Bykh8NrFF zb)uvKA*7C*grwctUW_A{JBR05FgVonZb6xch}VH7e9?4=Ej(;!E#ZM2BEC0$c8usd z2AF^|T;A%1ncAUfLbWH`=Cs~KGCmXVsECPUSRB@yr4+L2t)Fm z2I!k_>WGx^cTU*XY`m(Lp$VVo%1&gY^pzvR8M=1p;mK8NJ(7m{0Ms~o3)r?3tugf- zwrBU}PjAd*7SU2uUZv~A{2RH`LlaTbn4rbc?+o>E!&)1o_>ZXWJVWe zvLOn@@)K$dDC$_zP%&ig=NGue&c;a_eup+UV!_kJ-xD9dRgJ~jf3Pgqq3@8qTgks1 z_+^?=+*cncshM;RYGJUlMW(kf*AL}5rd>9_5)ze^u=Ee8;tjlPbB0NRR?_)axgS*X z%-FqO08SCW&MupvvW87*=?Zo&bcF7-UvL4{ZiM6F{K!!oJ#b_Rv!Snwq??vWCu-3M zEXYAt=>DY&gCdLh%kT`L^2sz==0lgfFSwz`@j_xe=M~!x2SomOx1*L+2N>gw#7ODUZ7)|v?koFKC#qh_nWCD#o&%@#7>Zr|sqctBZuygY?v+F6$wmpx zvI|INf2vc{CR{w(Bpl2Nm&BMO>spztXW-4-g9ADu0}8hLkkYht9-c<}+?ANmz6x6H zfro0mA2cwpu?%F1?RJ?JR(j;f>V2Z;-cF#Sam$oNREv^M&-!nrYiwC~vJ{Jy#}a%; zPG&%3v{%3|!6P0uVDizDu!UZo)-~lf+vrGlAZNy=^^6Inz)8LYr zds|em7ZI$MbNL%jVFKh!oEcj#!Z1i-x|AivtS7|@q3!gl^1Mt9BYnkf&y{|wOKzwUx*qNgu8G_`m;3Cx z2T|)w$}RjvvqlgchGYzykn9WkFl~+xPvttef+!bpS~o2e)Y|~{{@C%=$XVoyxgIi{ zb>LN1AuJ~ZCT=Wd_D*5hU|OJVs|r*m`8=F-%Qh(Gnibf@M6F%8*M^c|@D9q|eKZnc z_#j3ylS@y0NUd>nVUOr+eP-i?y!T^!2)I;dl$`m3*!|$u_|#3s2UidGNFT{{JjIS+ z9{&=8_FmQqveg^)y%&;G#-#X`Y-o-^!1g_4in&>`kL=fTrt6e};LyR4QM2ya4UQQ| z6BZRAo-1%lQ_ynpaDDZxgN|cqxZ<#R+%=!+)ZPQ_F33Q|7w6gt5?#t@*PY_1V(&03 z$1~v^OB}h|(cS(A^IKlCpl1ezm`5C7Migd*{w#(dW$yUctBec9!D*o~?+|)UEAh8i zGzU0TQT?~uI(S9I3Jsi|x#@Xx1f^K1_HoYOaG3Gnz0;|D!LB+^%o0MG(o;Bkn2??m z;H_?kwdhyra1nu>y{`n*+LI-|kSj_sjwBAraOGmNGG}zp`u4+4tif^4>riJR%h|k6 zb;H@MS3LBj^pAH!xTSqTom06gB6PYW%07+4j%@Pw%`n4psupf@xCKm_45bltU%K34 zR0_2Wc?eG)2FJW!Fm>WPwkXLLEI4KL!oskSVj2GxmroUdZV$$MHHjm@me7g^aTTT)ZB@$`u6XC@!KJe^^YWwuc#`cgP~>Kx;^0prpHFrWn9)1qv4m8WH{6aVFKa|Pa|*B`p9^+;%okC?ugPRfL}C`yLXNW76*$7mc~GOgWCdRnT)eM|MH_( zH5S-Q>?a1cYDrwg;)W`IU7DySm~AmF>m^`@ApQ@nO~%*vONBz*BoyY(<9jCZKAQI5 zBPFB!W=?pX|QrI|2IqH|HK_);AH#n+@b$*tHzeLZX9ka ztj~^q!RWK7Iti%~P&9xf3_GY+U-(!2^6lWrTB%r&u5mZmg5QqtjNaM@;!gWo!xkE( zBd1o(P{P=tuvEcvw6bKdzNCt_1gk@9yjUfV&N-=SQ>RG9{K80uWm5(jt#lUIg|xPG z&_zV+Ub_X%mKPBnqpP@|?d85d5Kp0t0#SuD^*41C9xlE5of>KQ1QIU8b-buGzbYNeV!;K)w%XuV3qy%1kUYwX`9 zDXS7%Bl#HV@+cq66)vL)tr%9-+KOfkQLu~scW0}lgWtg#NxJZ%>@v=;)*3>8P`JWL7tx>t zbqAhle8m4M8naSI&o5{x_u|2fY9 z@)ot}LNwu)L`kRCgH1|6%?qJde<0|JNEOjmfoS7lEtkRquNo25lrfrE4ue>@0+0Sp z8{n(z)S<-cpjd835Ph(pM@5GbJ6eaxdN~$#8n#N&GN#vR)1c%ldf#oqXrtEjj5BqL z8kuYuv5gmriuu^Im-?}9mEbUC(RT0{VhANHSX}6C?^=zw1L_}=$K&N%hFbD53e!Bfc&gK3SAmfGHKngN;Q0bv3h*oinF`BzleJHjk?=3H|(#HuNnB&$^t^f zw<6=#OdIRpnT1OB$ams@KfATLfQ9!7I*z{Q^?n?srQx6HbT`Ik;(DmL)GjasIP02M z^0qok$B?6+sNW^XZ!Ur5vu%6sZy)7LF z1D@*S4&Y;^J8rGu){ZeDIXoFivwxnQ&6<;U+7-O7 zy)A7(m@&56U2a6VrPa-B>xs8nd|s@{*U9&`zp{of64aW4F}+CDi(20=E=t27E6Svz z59DtPg^(V0SV@n$oE@=^kjFRy%V;!SUJ4jE0{|~3V8;o!nAdl=l#urcHEaMB>hR2^ z0{vKrb7h82+&l)?in|ZQ%ox_G;nrH~nv1k;N^7rZR-e@Vtz~wY1`2#OXw|#{chfnI zA59P^10nTE$EG~fWq17hXwQ!2awBHU^>2=HE%`lpr1>z~k$yh;f5C#dO4vwq5@jpo zEoTIs;4+;M?9OhRsl91VeZZ>yZ`Fr16ojW^;5t^3Vp<>Eu}HZ$s-Y+ZLBKlUV-;)+ zv~6I&=TZwa?tBc+nQluGapIsHQ`RZaFJAsU;CZwCD+;7TWhHKdq04K~BK8rUJBR|@Ur>t}7y|YX z1ppy%q##CUqP{{L(Nwri2rn7jJ_C^+3@D9y&E-kVrb2N^N1(Y>Ou)c;y8-KoRuP;m zsMxhGq0i)9FobW;Y;tKYARF-`$md=qtpFJVfa$o}nSn08EV_#n2yH6%44Tlb9}3W` zONTVQ9FMFte>rRa4gmLAO9T8x(Lc^0?_ZQoYQ_lEV!(QMop!B)a4=OqYPEf$TEb@9 zW|lTO$L< zLh9u*TP#v8w9T&M6!8AxfLPpI`0L!7>c!IS@h0ayit6zuTh~~WGF6fsjjW%+34f-Y zqy>8qcd3J;eV;-GWGJkxQW#YPa1PCjd~)E00^QHpQ1R*oRQPy;-#{>Stxo0^*vx zjd}f~mh}bDNKNFh%?zFh1$mVotvxXor5b?_FLE7BjDWanMQAd{~8fOWJ;4% zivOA!LMONkr+=K{Isf0Ejdo!IGfYSUMu4G!B_+huAbjqvli$SC`E(X+L0Ff+kz|6# zn^FL}P#hlW!!shsC&B1?qPoIhQ+;a%oG&(RNsNtVzo>+NK^5wp8^1MZjj)h+%@%sU zDIi@?L?wDsf+B-TkPQ`u{Fg-cZnqd-$9gI%%pFl0n*eR1P8<1xBMsVbe=pSveE|~i z(-%x-0KPOhFX@mvKM$CEv0N48!!KAN0Hw5#cS=vm~+W{gG5zzQkBh` zfGxKBv+W-=^%E+U$1*5W)78lE7ijSQHC4O#;GT(d>$~cA?@=l1D`()fN*OS?1x`t< zjiz2`S^P-FGQf)g80tJCE5*mA#57RQBQ%AV>1T4)5^?ex0&10$qsVVSikcs)4ixU@ z39WwFlS7}puFI|rZmNhiA~I=*m*~Z(?%SPkbeX^iN5&e99i+|pQIEXO$mBB2`CX(` zCtxhv;FlR7XhHo-lqEW>dFgb6PPn7g8~6`#=O7SiEPcmW2;xGxcP!M<4=f#?!-uRl z5;*s`8TMW|Y7iW_LFmf%S~ads+@bNok>CYoU2`4w8D2DwQp9h zuA33&6nc+aE1e!r*IjhYiviZYOjOMa5EU&|&H1@PTdQXdfTurgi|moc@bD2 z`TotxDj2H?I`4-UYGq5w~u=nqj(5f7UNu42dMPd-PEIClq!B;ylVCkAv04+(U50 z>%ToRJC=5Pg41O_b{dq9`e$r|GS^AO*Iwu_0`A0lyKysXuW#}g2`@H0rlax!J6)vQXXs~=<--*y*oqoJ7IectUX#;s^s_mza{Yp3ad-maGD`M*xH98~{|REVsn|J|$8 zVYbf7*)>JbIzV%ODmJX~3xv&%1 z|B{F@OpPN`$=KVU3?JC}oZ;V|N!=U7L|b)}#i)If6&el3BIzeoTv_}YK_E+*i%jy) z!x-We9T(l3dNJ_BlUH**`Bn{~&-AA@G(Q8?6hqfq?PQoqJ7(;6p{-69`g#C{NYh<; zX~bd}t*QGAj<4shlDcDkA{?}qsND#=F9Jg*LNFoRH@GQZ%y?vtAZB$%DHyuwXxWV+ z3lgHy`&24N=Ad9V+=o0grgVt_%U14daqcKoFQBpUGnO3H+#tRoknnfZ)|jv*h3tjV z_42Dh2Q_6aCm(n*l)>~iNVr;YC&@a30c(~kT#69+pW#$d>~py>KJPh0Y^P!vqQ4=o z8}C(pD1(4m4n%Xm9O)3JMPh>j^|gu;P**XMDxmwNL}$RL!cZ}%wLgk7i3gEM!f0i- z$84@&hWGYVtziZ2EW<%myPxh1g!gu}bTmn#h2Ldo{Y5$q zt@Uad0Cw#xt##WB(dsHFq$P)eZC??R!ZIH9brh!6Y)4Y~KwLeWT$bnG=kj%-3!N^= z-7fDnc>A6#58n9+p30T?fk)=&^LP}USIK|TqfC}wv(V^UMKf{ts+W&W`C9547%Q=#mDEgmo% zvK#Or*&t4-?%aQIN3?0X9YRLno@YNgJm4X5KVC?Iw%zoM#$E2K~2!tBR7WxgLLOKP6DZK zKC>p;uPdDHsjmTn!BcT9GhH#nS;VBmH6RvJ2QG5WeUDeZ9a2JG)Y*8d*Z6k7CMh-_ z2=>J!X=B!o{9e``eJWhV` zXRSa`f4ASyjE@*iR~oBJk1b2yC4+|!_nG&SvwOHCqee3{b}B*EKq&BB_@hreARs1^ zH`*f>4CGtoDI(xBp6_zrE~L@$?X)xV4lt-eKd_aJ8XbXDx1c zpD7HbbEqhGE|{^ZDD)VPYOU#0qF|hm1Ro(&6>-sbBy=@ZrhkDY2=bW~dgJq^6c1Dh zh2yhD^$)_*_&1~Rn1ML$K1QJr)J^tA91(3myAeI+G7;3a_x36U)1Z-)7p{evIj2mY zCkP*A#an{&zY0V0q1{&ri>^EjrF;nz#l<~ z9Wn_br|*(Mn`DWhX~Rg0keGy$NG=@l4De8i%1Xj#j;{Q8E@=ZKa9Q*a0(2_OyedK^ zec@mQ-rn4r!K~9wqnm0b!uY+zdJNM(HJUHmrjZ8!dZFdUEYTp*?d>(sJVP9qq(r=9 zGPqF43>nMz((Zuu&PkY)DDShlm18aP-veH|E%YHw0YP+Dh@e-%gZ zq3yH{H5l);tl~-awf4jKG`^g;M+@tU1Ferg&YK)ytJ@YegA*3!zjz7BUNB2isf?An zmr_{EWnEnKemTJG0AmR3!tO;YinQa;l5{}*4T`ELPJQ;$*Cj;QhS8=7HuUVuY%9_* zZ0RKL@_yxZybT&ct+hj{W|Lk*6lx7Ep47@z<18vER3vwC_0jwaUeS|?Is}<&vO!DE zV{b+4dsTapWVufDlDK8{jIUSLrY?JEh#_>px8pTWOf*XGX|)wM{%A5BrhiXHi2DOt z$@*Z6eBa(ouZQb_@Q86j?AO;sG(Ve!MKEtw`B#azIwB)8qOgG=t5csK6&g#9IkyU4Cfde1+=ph3+sQ|V$&Wd}?KQFT4^Pis6_4J;(_oP~NY*EK z^ykR;AqPqNx}#C56Je^*!^L96!)Fc@WM|Th*dCm~Ez(Iww0<14`dncfNWG>tD?ae~ z45I7xANbs%mN`onjolaXNo+3$(d>`++n98QTF3Th7?3fGOR6R#;L~Zcv7Y1(F3+-ji7Yoe z)H1jaHM*`!h5v|P0U?WE6WzO}qED_p@d_y!1-~J$hb+XaglD4k9}WuNOX`w)9ZsSx z3u(LXezt%T7mnIM!xD3lYvyq5s3B0bJ+q|qZi@PBQ`QTYLX z5RM%2(#44#%RhVSdmG<0hGpIalB;p@O`v&plywoHE}U~XERH^6SjBl=jja}p6$4bQ z+y7lr{R>8OfTKtX-&H!F$-)5VtndUrVmkFB6w=*gi`3US2J|^BZdJV(ZY|HdZ1nv% zNJA(KYZq^ThShyMy$uH&d~Qt7A89KpOCh9wUOr5bOtN?`e1in3R4bL3w@AhV95HfJ zjc+%QD3lsBdc6E2uax`;7=U5+KXwDNGyW$%`G3*AcBQRphb@leyHb~rPo$vPuqFO< zZ~R zPt5ghdy}`=on}XZuW5v;UUc>*0a##ETtk@HIR9waqvtklPO8lG}b?OmquEnV#4WH993&Xo?)Kl%^{z8QT|C2xpFX5m!G0a+x+ zDN&a3Y;Pumv`bq!*!R?`e_Zt@7MqA9Fx+}jPBGsm1vzhot1(ksIG`@Kmo@ojrACu_ zXX?=R^t$-e55j+Zt!k66`D)*rap$;K5%pGC$Q%G?gW*EmWgD<^6Xk-~lRHy8gJ#}H z^!+!Qg+gTf^z-=qpCrnWZZ5YCb&8>1{L;btkI(9Scf*4pi55GJZJPC*EOL=eRtoB9`Y7zvupaukSgW^CJhU#ca~b z2?=|_oX9v;)-v?cnUxYE!*Kx0^x-v$q%20-5JiB#JrF`b7c-=zFiZ{F6-n9?#a?I% zu}~zki;%|j3OhRAoj_*c!0g3+M2tMTU4{RfCPvg6t;GS;%(<`(FZs?@jPGM`8^sU_ z6tNr9p>%)b?`~7bCxBrWv1--(`&cqk8Nv>Q8C7ME4;h#NUe%di#evR@FvqMTgV7ia zQ8ntAfx#sz*!3KcI+CFQSGpuZg{#Ej;?#X+6C4+uW1le0HQrc>hCJ;-`sI<2AjKkm z8Hrn~NmHPlinz`oP(XXf#o_sUX=!?R*rmZ!-8xkdqqSju15CLknBTV_=+ohzWjF4_ z6th6hpTE^1c0Z6J8lB$(C^{HeOx7;!jrb)7u-q!kC;FlN@bvME8k@%QM*%t~``uK6a>>}}hS!P4#|=b)6N-`ZR}7SX1DLLyuUXJXYOOwD>+ zZEa#C?C7>p_8zhoeSh8B6crFH&oMXtjDhz&%Zp zGJwMeiohd!CvHBQ@>!v@Typcw;2Tn%ny|?OnUsZJ?x4+kkD?Xz9)=?cxaK zSDzN+j`#?so`;m@bT(&E+afqo3!l;iQH)d!vrM&!>696kI10&?K0B^gYs2GC>ED1F z6!tpjek~+Cn6twi?;MXMa#?S}i%ZKVY36xL&Z4A_z>;gHanI+#{+&&rwLguv2&NIv z+*N7WSP@gwJ~7~!{(U7@JmJ1S8RE%|u+R`7wgNN*P->a7yjQUUD99L^qByMrG9UrD zL_~*GK&Dh-MzCDP#A!^JT$X$`4S8V16^e6?WlG}fso0`t__drh!-S0^=Lqid?|rp? zK*davjOM~fKx+%Qn;2>!y_6De&p;{UqS~G`cu3t47F&krI&loV{vy#il>Rn^encH| z;mqyP^z9O@n(BQs@SytI70TltG;LvgZcUw`E{{)k+X2ht=erJnHrR*a>%(*kzg?C5 z*OfbF;fvqHB2iZxZtuS^RP0va)#|JT zF;Cs<8MKp=n@Cw*i?jg~EoPo%T5|b`)GzF+dJ(S;Hg+}6Lp+!?7-+=h9&q7;_PP%7 z9g-(?l~3cFW2m+lf0+~h>-HL;)ZLb(g~R7%vY4T#U9OUG+nVuajLnUv38r%e@q^lM z1^NPxv%NxE#lND+FLwDx0&&Sj%)dElSWYrlQzaz7y|DNFi8@`+;2ZQ-52D?ngThw9 zNa(3IS2RSWHs$Xwd%?sG-gCXww8Xg^BtsV}YZvVGd1qD$PB2K|Cv#Vcrn zC#K(fwj~quvl6zgu|IoaS^T!q6*VVf8_#}^9(&7U-F0>53){VDmp5rDh)^fwr^oMa z52cXrb;|o}>w&ZHlRG8W`oNM@`=7E>)R6yPtlc`(9pcm}=ZieMYwe3dJ#;6zeqd3#G-3*Dyusf0##@Toxb21nLiYu=yETwm`^zvV2y+mJ1Okab zp>}o<%{(JuB#Q(U-j7e^s;o`^)gj5>xAUdvN-ds`jJwOP{hg!z`}Hvzf%*lr$<8UO zT`H&kpaddq+rKxLVps`38onaMTtc36%fyr6Z?{*IM`3P1qUo;U479Yb2xPnFSE%Hx zfn^w_JClDfV=qDM<7xC z{o%_2Jej$yy%+j3^DQasHFP{8Rd=5G8ZP)M+29cE4A5`WBp&fdf^<1rdby(e#2|xY zFDV{d(-6F5#!9lgRjV0S9`(w%DbDKIG7d_;@>Hok|Kc9{80gY_zj`;e@lXElU=Hs? zt|LQZaqz0PGOSR_*#-%|!=e)fo-ev0x3mHWB5C5W{$dPndeoi*uEf|^sv%Vclek#p z!nHX90H?BL8x}RU1y-Q~R(qsCi4n;!93;-R?XcqGxjZV7o8hD8@!6_&9tS-wonVZ3 zEUR>Z{R*LoGdavio>3V9#lAg&a|^L9O}vZkmy1ztO(A-q$xP2PD7f0a6&GI5(}<9L zA55Y08}o!J5VXJySeUhUfG~$jb|2EUo_4v0#fGL(;7M2Pi_YD@Fw`~3q=#*Y$E#*3 zo0?2BMw~EEpRuMZJWzjWs|QS0^E;UDva}mYqI2$n8Jx@~y8UYXKaHkXeKFfJp>&^TTc96l3m(C52 zY`;lUdt>nUNH5W@Ax79AD?2Y1xbGz|^@hxUlNz;ycER=UKfckw02BrSJ0mM79-jaI zfP;nkf6N}8#`+Ddj67}qrp^VZQj^;C_hSN@?4wXbp-4W=z`@k_uaTB&NKCyF4tKm} zrsDS%ib?7o=F&)6vpHWrXmWUGPA~E6zCB;gH+rf0oQ5oG&E4RcX(3UW4`>v#r?1r- z-5y?a8iwoKeu8rfTNjZkXa(-Pd_RwNcD`Sq?F_S6x@{8w80Gw7|0b!)Z@WT`Vd?W_ zKS;KiM#UQ|p7Y{`8C@lgI(Khlo&;09a$iBs?79ks%mRYvg7$mn?Bs}&)^)45x zT{JKR;em$-?_Rducf^fzhc~$Sh^y|RuqT2WZo^dhy5;Id7xlM#Nox9`a_VMfYug(; z?}91L9dE$bBT~T`A`6uL;p7X5ge9)tB#b;)`?_V)XeVC8PW+3}wht?Nc_9i1WkxUs zQ#n{VONvSx6&e&k(BZ*FZ_g_h1`Lvk&dZ;MSjzeDckNcCFMwCDOG!AR)mVpt z&oU^fTBpMRaCfUQQPORt91X{Yml4(Mb*V)pm3Ep7bLc9djrgQ5bLb$FlxFAP;A7YK zi$W;A3z(U2dDJsa4&|-J0j{{_t-u_G{ZV1>_49N}D!D&fBoKH5^)o3A*}hvKgYk@Z zZi~cy@YW@7qJatCk|s6xnvdG^-;#^t!qYO%JO*`t(QK1>BiS+m#+O)zioPLN+J-V) z?s{E89DIm6Dg>V3F~*`{pRSNIT!cWQMuYy2d&dov3*3db@M~R9`RSFl+KI^74+$sU zt5PjQ=sjXXZg=j$4WQf(&VCh7uF`s#VW8gdxf7d6MXB`W3Z2sSqX4j3%O2er1V)zj z3j^7^q|hnwCwharyFBHYufK$cNXOlCFO@L>hUx%DWA>~a{PYK7;-8I%MK z!^fkpx(Qi5-Z)DTpe)4uS>?M3JrMA2XTseqJGu+g%yq>I?q63lX}x5MBe~k}P$)P) z6M}qk2yZf;F*M)gP$>sXOMD(}e;b2{f}rWN_~~mne!UXP;N_B9LM~e|iZys+=1X5c zW0oLJG4Eh@tYdVoKD4jVJVxEXrCQmTMt!)2QqeET5=a;mn?vv6GD#-EWdsKaE8IMp zOT4KA0gf;Wno{XJKh)NnPRq1hf0wuFrD0(A!8GpL(9lp2Zy*{KjeMIhoGt(EV1yZr zbuwRF$o&0>?4fIGM^9fWm}>v7o{~Z23939865ItU%fJYsHdLky^I`^K_)^}ShOK-+ zi@vlIHrt(jx%^2^0JsuN+;=_3)uvmyEi3c!pIelS6j!fTq)ccgA#vY8nd3*ewC%QYuuT07;oKjHJjzWyRS6$e3Hgf| zN-0p_KP$kN?|Mk59V4l~)>Ru?R z=!ZS)Z%<2xYr*mY{GLqGvQrj9w9p1sK;b%I{U1HADnC#X%DPaV%#{v;(N_~1b^6$k z&g;8oM0~r z?y6_mdWYD|XgsD+;eg`(uQkgt7~d}|1-f(XB4I0G50GAUQPC8^G~`;0=FDBIa;;}> zsJj9LGHdVg4s}!Jl-X|`Ft^n`lEUJOR6;!rhcL$_3eBiND4;+^j!4?dQV|5kMK<=9 z(qyY{zbmYB1C3*@tO@aJ4lk??hVF+|Q|ZA|{r-8H&*K8aXEz#JG zx`&qUc32kT&+21-!;+4Y2#eLR`y*G`Oob+pILLxd6Rt?%1uem!K(hnW)o6Mi9=TvI z#`hPztZL~}5n_s9g2nhcK1WgR3I%=JK!wmSmB-LU1X5Q+ZRL?d1EQ4#XT=Y9 zY&R?2#hFy^t9x_$&zADZw+4r1ak2`&B$ah`N2L>~38oPh?BF9^fX57JW?`lGVGH59 z4j+@EH4_dQiv;g)q;;JN!nC0s!Iu`Yy7 z71Zo1mBqWMCk_YDoVF%5R?R)=-#+o705*i52S8+%bwP@dv__DTz$B$AZJjshoTlan z-`{Zj0m*PqNj`HpQ{4~K=@Gc~_$CRomqq#G!=M7M1lNe$mePc_3B^|kO7F7(Eh?!& z?NhSwT014g)^``uity@sQ?+@ExA$TN^@=Jr4W}hj#FPwUU+$-j#piyLh)xX4@;+C+ zo;(>RF0r27`F-UDOGc71a2A}{lrx8mb-6~$VySrc<@ln(UhPo)ZyC0qD)BsD@A~ePw z;jdN>5rA70h@5K02ZC*NW8VYzV;)HMf&30IY?51?UmS0t!)ND|9{Zs6n3K@nd>ECz zPZ`c*@r{XFIk8f?WxX-NbQ{|3{ReWQ?s+PQtuq z`X7beFFyW%6Lu_YEX@DYPqk@o-K4`7hnsg)ZC`tbNp24Bpkxzu(#XpWo-xU;3Z60F z-D!I}%}l}-67e!8svq7hfgqB$?7ht+m6SA0BoW}4YcW5d&+9MT-j7A~pU>B&EPgBx z_4)xRua{S6bJm0N8B|VYrA=PEYu~AFs+hK)je}kxdDe>zW*aAr;TMmOH2z;6{g+!o zmTRM}mR2gd=;dqB4C<(@zQe%YG=2yYgO*{9n12phDrU;gRdNs|(5ga?UhI*APbYt> zk6$nIf=QfTpMwDv?bMc>y;?fa<94eoze;bHbAd5`vT!&2Ed9}&h97kPp7htZ%EayG z$L-6`IKCgm54U1i*pG)qPgLeMr%!3G9gkHf>Zb2>N;x$(BD4rTUA2=7E|GaVjncn? z)`S>j?&<6=?$K;}0LzSjksy)MUcJb%=BiF@JCsT0OZ24iB~bUk%+nx9fJKj=w9fUP zGk*sHqF*tgQiEV_g3W{`=M?LrLE4JC?zsh(Y@Mb*3CR6l$&nmd;r3V>#fk|MQaXiQ z>`cI5u5R%){;{o`p!);Vb79)(vk5?_m>*3}e#rsJ8gT5)v5m$(R*d?krR+6R%B%h; zU02<%-)IMtw9!41Norp>mLvR$W9;0qEc)9j?3aVI4rL~qK=dRLew2@bG;_rQMam>zWn=``lZ@S^ zm}q%8?LFtEe19^Pg&Lg9DMHYvJhR}NTD{}EmR=x8%FR~LKAzWR z>-e7*^er5ka;q=CY7&ZQ!p>oCLVn*9Qj!a8em??d;wEf@W8^sL*!IoS@k!+cVq=yf zO1&{htvervlC)HvDQlYcsRUg*n+MlW175h%=oU4QEg`8O(Er2OIWT7yc3nEQZQJNL zd1Bj1$4;!c$wAsF~ZaI zZ!|3EiJ(2-UYP$rkkp5T##+|KhGls^Hb~;BTvK_Ot?hDZ1N=%=hM6pp7Suz=ochQ_k7WxQRU! zW3?_7gbh3_>1A$YFJyQ|fKb(Ls>bpo{8XG03s3WQupdSpV2?Ov!Dagjb&H^*je9l17vej=+sGlRm&xKtWPT`)hMvNm{|smdhnLn`~hDx%LghziGz%E zxTZ`xpN%!L{m0wr0*lFUx+u{T5-eN17K8YgmEXFz`8~p)nEr-Z-5O$2e6xs7fNrA@HbU!2{>QS43k{72+y%1KYckxv>(EHB5;34ELSkZ>M zYYwbTRwH=FQ;hJ{yHIsW6w>ZjKwOyRuK`u5qAWUUfm2&)Y#Gr93+6 zxrZYfOf^lA-Q>=BlQMHa2iC*_GfX;Zd8UKobs2xOHmA7x6vm@wPL5}#WpqI>cgg+q z2y(65ehdC~UzYVjJ+>ohc|*}k*YBi2MPdkGn&JL3;45Ri#2WU$%>zlByC6P2_lJv` zj#*O0KgBD#46(6Rgzp31W&Gh z*TGq;kaZNkroKz$t z0aGWH53qviFhtsx6e3uZC=lpMQs7E*vK`*m$KyX6Zu#`bO92JXU#QD4=;WJVa~!GX z6c*TkMWu#_S2N0qTQ%$x*l=RJvrL%*FXfQmz)7#F$_vyH^g|B=*5ADL4_xG{znU`2 zqldkw5!i#|vwv{iIkTw-Q&Y*SUjuC#F|+|#{CT!(D(GfKButJU^8p-y0EL(UN0Nvk zzL)#>9@z!Xekq9J09Uck|wSrb6;{23v_}i zZ<9K;s3@yw5vPUU(+oQ!#`!_{E$4SFCzh{C{HEfxha3p zacK=-@Uwzr?>Xg=b>pQDA@|2)1Q|JD2GO|HyU`?QU#p`sBGs-2vjSfFL1(lkjDib* zXsEmKk@^w4yrqLhN5b?MI1w$CVT+FKgxT~Wj@exKLHGI5Q)J8V0hBMZj^z`cj%7&^ zrB8=n9JVD_$|ty$=d*J}?oBxWn0_aiV33JO2Vw5W_gU3kj2RjW*`!TUG7vk!u+K5q z8>hbi)SiEWlNi#V9RDaTXX3bGqoyx`V&U_+bEoP?8Gubo)FKgY*=gBGWfvCpTjrs2 z$6C%99@IOoS8*^Fy3us8n>>DALoL?f6Z=JLg515U}*M>Qff43s9WT)hpXy^q=>E z()lE-)D(m7Yfxp@7{>d8hE+wP^2E3_o$LBV#JfaIq4I(?a$xG#HR5EQ#BnJqz;-2$ zh!q4&s5O5~I8Yfo>g}m~bsU%9%tLtgkwTD!`AB55L&#yVu}g706o7+S;qO={J`p0QMm&QFVst7%&q{9);ajWrW41nyb zWZRLEJXm32kyZE>OAbCJ<$LovVg931Rd|0DN5=F9j3E23r0c)~q7o@esEqKBH^CPc zpBGVPB`?@?V1cEAkB2=$_j61!Hv0b@eDRxU*!>=i2Q~fL}5l`1M*6X z39_3tl9{|g7l<#)t$EW0k8>i>w zLt}T5)wspd53Ld1k^$!_QO0h*s51Fq?1R~KO(q z`p+#1S$6Uwt5JOe1ypTvN2Wo9p&}EqGI!%c8Z?YPLy`1~M#=NDfj_!J^{mGc*vXZ~ z*i2u96^*;_lfVZ3Vqocf!a73KkO?GFhtvl`^H7MEL#QhI5%&j+1KF|kd~O3-J%zX#%Tsu1l^Rd9F8-RJ zlh6mYk-DT`H?_wKD-9T7=f^!9dv4$Eoc|W##`or&^l!mjaPW(EJ{ilf`Zgyz`J1kL zTJ?oCXtDO&F=GJz!99f|T)?5Fr>l!xhs}1WmMu3O#?{(o-D*>drBzg>vYA!XCWOPXsgs3_Ef6f4RdBOc?gS>wy> zsKK{__+<3gEC{uL9W+hJWZ|xp8a=wYg((oo19GNZ`^Mhs8jL*8gec4~U1LISUh1Ww z)Qs;t0eEjj9#8v(?Kp}_ZB=vaZ?Zpva_Z^?^ zZBrfBa;OV-MwA;5pJ}Ww7or-;)dmMrsw)Z2ar!8@I#a$_c*q%sm1Q)QO{kbM?s%T7 z_btqAThY8#fV4oC@j7|8q@a~pA(vij4>!EETjdOZ$FiPD6$`WqY}j_75B z_cZ#9SNjyXpI86Ehlf1nvfdFe+AGU4Vfq*>^214PlY>8xP?{6mq^r4a>hZfOg35WB ztvVWVI7SQu2m~x#UW`={^NsbML^ah2TqRrg;h5@&e|g?$+;b zFFvf5DmZbU));PKx{3#Apks117qI1f93Ls{GhdbCC**2ZT8R- z*uDTF?C(al!s9yssQ`FywjRe*g*P~zzl56i1lj@0k{s}%F62j~wEZP)BCw%dftc0r~^u=l#F> z<^xRDXfUT(-V$tYaj%Y0dY~enHVBqQDEePjc(!E&1?sn`30weOSHyE{d{tkj5^I}| ze`Xx8L%mlTrwVK^k@ueICzAZ=p3a02;r*0EMj;0ZM~EgpOrt4R0*TT2M^(S)_j2M_sp=DVsYC1Wdvuziko=y%`3Rb}a9X)MYu z8Zrwn8+A5*VSh6=0isHX3XRE}#?9TyC6+mlz9 zGDA47@`#op0enIbJ3N8J$iyz7Bl`Pcr(trG{+|Gjl$W#i)duWp@|aAp71 zxjbF#wET3Y3t0AC=jx@w&i)d@kRuq4gjIPig7$O zk@WBV82$iBnZ7o4dTzz^{p)W3l)c{=Wt?%bHgzTQughifUs!M2l;dJ;j9y1~B(m`@-W&WuGB zO>5J}MN;ok?a=aK%o;yeD!iF!w3JQ%gsQMYWxG}Bcq>ekDEEN9WnwU)zB-z z$P2?jB`zBJhaJ8jb}LK_vRA;<9}jp^|DX^>*QjOJCmsnu>R4qv;-NW=UjkU=_a$7B z*QLrhD4=2S|1N3^J1Cw#rh|rioxsA)Cq`MJ_T4FxXwK`l$#tq=?9-WCncmmWv@D>L zFGDn|iHo*yHSelU?j&Q*K%H)2tn8$$WayM}-gUs{U)qFf%wzY&-~$5#*67Y#CW+2h zOs;OhLdse5Z~46f{*4K(=h-0d+QHcfi7kSDd-j9qahQZmqggd-HnvBC&Pv)Fyv{E? za^#`uwaw$Jh=+hWji)l>ww`|AljGEEe>)FkaJoQBkP?9mwOOAoILL+PmBxLCF@&H% z0m3#ZBz6`Rd@1Qq#9D63p{4Q49*_R0Zf-~xoBFB3W_GI~TxN1taWSMMwTFThtN6m2 zUWfFT5j>|Lxwa&}PmU-7-rTBUhv|#jMPG|9@Y3wxSh=g*-Wf)#^CPK12idd~RC&w!T=hj9fVA9aS1DJ7J%?xUc4A~UODzng!fRBxk zNVVB~vAQe^>%|%TV9o2RPX9smpr-|H5nRGF_+IqGxPI)9gz7(a_y`&ls1MIEOPxA; zAcq}^RI7G#f$=b#5Mz^be($fn$1s1gytg`%d<1&JW)h*j;XDZTZ^hKlA}YTO;d)dM zq2rI3iWVDzmW$5bpPpXZws${q0Qki}>IiRgVqk#)2k;EfI9nUWKh=v{+2o}2@mm>< z2vf_e9a<%9-| z)I!3f{lS5&wX+Y6lgc>E#n_dwa2$&nB@Ed~04`l$8z!>(nDsRz0{eA(zgRrMH3T0|pfvDtt&k z&Y-oFjS8Ls!V8dQr#^e&=a}>{E!w|WGn|{iJd>xyK{L!je^|xJz+}R#v5wjBBm|)Z zXtLR~XQCF17gR6+Et5|!NWw@gfPyG;*ewdc@_y}2&EJH(j$OuqKn`Rz6zw##XW{PN zVhM?NX#;I_m0_TYk7K8;AxeUf!k&S+%0V@7zNojEW2dOz$fR4s)gRdw5c12`5%^6V z6%LF#nyNq0Lolbm!v+H&I&X>}pnM2G$k>g;I`x0l@q@gBf@kizi~V^YSyKNFe=7BSJ0Iu& zd6lksw=?1PVd$K}^GsxCfa$qD@WkGu*Lyn|f!U1q>>P@s@v>%8w}2J_!)~h<{Ie(r z|ImGg>ZJ54X(*B^t*i64Jp0FHXLv(cs$iF={nVl@v#~mt;SOuDB2H~w&b9c4*{%!? z&A1RbbY+D;mUsW|{heBS+qwcVrYHL6YCrqL4IM_aYPfaiIq)OhlpvB}H2ItCnjG?E ztA#ZX`HOj8BWGGGpNXtv%ilK??UCG+1kVe5@R6jeb?ZI6Lj_0T+ZpcqSw^R#7ruc` z*D<#5 zTRHF!fvPi zvFv$DIe|W_O96Cw?(uWsL>AJ;Rjl=nUZ?3|2ePL6_hokp5tlNa@V!1SZs;&IkOD^F zf4qx_Y%?8*Wzh_0DEQ}9VxRT&?6VgIk{YEg5X>NCK= zbg>Q~OnQ5t7!Q7Ne0e7&_pXO|6y9Z^pVE)>-FJ=g;)Ks=7_clPdkLRjcu@K9dwEA}YozhRlIq6CnQJcEt1q*TdwGFs17z}Bo3r-Jy#C42 z*Oj5BEGV#4{S8PWe|Mz zQ2HeeD~6T6!w#?wk+4@0IpdI-Id?$8UM&zI5GpNpG||1vK>iv8gv}!SB{C)$ziq-y z9!vP=m|@o;bUCc@51dH-+vp2<)$E!xb$1WmG5daPp!J$kMA!##U7?HVvb!eKIYmLH z3&+?$u^#tgB4&Er>W{F=h^>vYFBxZsCy!Fh$IGlp6f#)ET?ZUHXY&J^^&QdEu}2;c zCQxO1Lh@muJyDa%{U_DS1L|8(3E#eDOkR#J2tjLhB1VkA-i|NyHr|;b}Rc>7=UWwd5p?61bJI zT>W>mO+-oq^t3;SCt3kW<1YOj8vIpW;i!;nd-Z;862Cn51)O^;DN-6&w<@Gzupu;4 zmOQ%nH}rrd7WKy@p69hp>LpG0Rnw+5*nirsQ;k8@Pe&YF!C)CL?&DldVB|DD?h1H8 zr~o${M-^6CGr>FgGMpG3aaZaFHtqP+@N&@5?T8W=p|aAW*`WKvLVq7>y7`x~G2Gx< zNsGJ8O{kzCsr?c*@w+$&o{1++9H%6Z89jpYfN7(Ff^7!Z0zK@{1igchXQK1z!kKao z;XLTfP6PM#Yuwtf{b8n3?EYdV+`wc{qGWR5UK)Gc*-k4^ml0Eyu;b|f?B~P zCRw55u%BhJA)|Hq24s?#pGs@77x4HUi>v~x`*`Z(p4q4`bvYF&3!fzx{2eDlbI_fwE^v?eRr&xq(9THN};!Y0r6;L|4sh?2!x)e&=L%+9%tnEAUE=&GtvRR5b-hJw;JO%iW_2 z+Y+b|m@j7ZpiLM%8hXbrOm^fznb8Pao4mU{g;Bs>u7;m1&M31P$Z&hN-G2ur^D)&io#_SMysQ;j&9LR12AK{8i87 zUepesD%$RGHw{M!{Fp1Rdny>5szLoYB7P~Ny1;y6hs-W*#v+c$h`upM-=naQ``$65 z^C5yFg`w0iG+`)T;A7V$6MAN1C%{Twn<+m5yBQA%F&UOJ*HhGxcp6nY4rn-Hvvx}%Ozy9jood2;5 zaP~cT6v!h013zy^r+{v5usmU!t`mSE0HI!4WC6E@SAIQ*-57Fr?!%Avb&ogr?cfXBa8LhQQ?>Tv`h#B@P&~Z zT`TFHkVaiZPFe1V47-FsMTmevD(qQN;;=b-lagsnmB4tnklwMw0d`tc zA@u5zF9d+#nL%!EZ(b&J_g7qi10u2$0#-ue><#UuAQu_;tSIz~Ngo>N^6XlGl!j2W zPNhz}9>m(;{#^dMlMZc9_RR-XMXTHLRnxd3w4;esxfuMu9&XPVM8(WRTtLrYuBuD+ zHAiRd-BoSv-wHB6YGMqGMWYJYSJBW#{+Zhs;WU%%P{fN9-(<@ zGv?67w0Bh(j6I*+qtRzEn`J;#Ce7xI4EhEJ^$jSzu$(U_o0YRx-CeSdxu@lEW7Mea zB-c8~mh%KFH{CG+NNMzAZ6+x?HqM8&Q1M>Rj{~wTh8?pD%DU_twQk}EhO#}KLev+% z-gutpzVr|E&rNjrhl0KMQ~2D|%O6om9A5KP#dP z4~pLA$&6FbFqc=b*(;ZH&!@toJZNEK2SYVlq=goi9$+BOmn6w44uOE#uZhwEuWL|* zD7h=xbmIV0T=5G&uI46BH_wT8AW%pz)3ms9V=h2T26~PL_G4RM3ml%3k7ZK5Vra z)w!tAAFf7G60#I`j*id`ZJb_Ya%TMsoSFCH<~#^ze9{p5e2+y%>ObTLCnGc9Wx`tf z^LJYq&A%VT6%X9=i>iVigBeC0kj)+Rd}-s)bVD!B~y5%7`(pC%<;L z?h|F+<8DLEY$P#6p^#Y^>8(yS4g#5UyK|=ObahOM-2Q@_LOHZLT}>8FE%4bQruCg* zaf+hqlcS2NPEbt{lGp40evwjHxoeG2au4LlV)jvL>Et}p4ua43+t3=j%$rX?aD@2V zuI|&5G|xz=`1GD~^%5Xbxo)7p|3%mta>LQn)hUOEmKWcIw9Hc@7+G@*lAQnmjccj# z^E7W;&-s``*fWFYu%Mu_X=c(%@0!tNnf3EV#>tHQyzvh|@T6p;SmGSu1@$ucDv^sr zNQh5x6{fxvZ+5T?uqwE?<-~)$Al~(bzlvVtdwpFg4?1(gTAT{`SM4@Sih;nqIffbs zvW1`vxD0yO6V77L9OeXrW(R2~H$X0J4E>Wd*{>x-2NuzAYj4!7_ik+f#l6=n>Oa3@ zQrS$Kb?Ws{cS>;tW7*AeMYeH2nzMZ&+fm!VNoP;O#WY5i1}3bXgn0FC;Ma#lWf9i3 zb@(FLg%u^R{C@wDC_+>xmwN~wN~DoX_cDU)gZP+fN@I$A<1C)*fK zoVrA$^BnI4I#=h7+4^l{M*#pRyB1cZmz%yh5b3HptzKa(z!kpRAj0_dubj$JSLTB! zBuH#jJz2hkP<*L}>{{V<8V)u1B~+k$+@SWiJsa@vp6ECjN38;s*z0hRpEucs-N7 zZXT)b$S@HBDpPJTQ?Fc}^SaXv1{ai4b9K)7c8%`&aW>NZh_Yr&uN7s7UGz5uj*y02 zGT=h#8FSd%l%aH$%H*yt9#x{L%$ zr1rQxXVMn;-Yvx0Tp<$x^TMKyJVyUt*{4GV+LOY*>Y7a2yYE%uSr}6vjm!ot4NbM1{YVC>J|Vz_@|ZzQ z0%!RE1Dij)g^0^qea%Nc3QHX+DN-OYEILPS#3q>~(dl%4z+5?Sm&W!)FX{!IO4Nzs z->plsjMw9NdYvNp0QDLOs}(ub!QCICk8wq92)ef${2SlGh0?G!ch~Ra;+?=|gSL8w zCVYmU>M%NCsUu;F%LH0?gi@RC5`MRueR|_VWA3lO3q}IhX*+yIa!S5g{f_E|Dh4WC zCOll}(vwn>FKpnajKL3aRtdpEK?s-YRmRYy=x-6q<}zYZYVtfOW@44X_un>N)d>_) z68IP}$yMl7-EdUcu$8_%g@=X+v6Z11g*8G76E@LV;M7 z8RxsIN~6W-OZFvfe<(3FQH_T>oC_Mb))cCPbo2Jca%r{D+PgmC&(g2LotML&xcq@33Z53tpD}WAk zx@SiHPzIJX+SH?}1r$q-tu&*GVfmnvq%nnrIJl}yT_>^NPB_kP7A$j0=%j@S`c=vjZr^st}1q) zLkekR3@_}Sh#JZAY3MgJnGwXO2)C&@gaeN-tjegkr4&)66H4L|uNbo?y%AbRopJVH zf61aG_?lO9M&0j3=7^;XUuX%~EVn53xMp9^gWmRw8dGSQxWzFv4YxS1UD9`pcCebS z4T~D0NZJO|Ny|S`hPui-B~od9zX^vfH;toEBybDy$nLO)QV^b0=ZVsX&4D$CyLO8g zz1Uc+d{;E5&_o<5nPbte^!l(5Utun5RIm#*3XT9U=;jH6DS2xz@%1q%$J1lCeNxHZ z%r$~sFSemyRG1tE6|QotOlLQ-YdvA~7#EBi33;132StScp`N{;RX>*j{Fbm3(y-YtrQ z)XHkr9L>8ClD365ek1VywWf!x*=|VzWi;2CpuV0q0(V^zF=_w_ro_$=LK~GV*6DJy zulIP^$#mB6_VxbT-l_5T`*A|Y_j@Ar!dI`#XLa+tquV;GQ zUg=Qd8>{={8ssO35ydj1jtvWR1P=GuB0i6zO-4p77wr!%;xmiW7;rzd#1z|B zowcbUR{aHyxJF0mdJRV~Ecth5?=&=BLm_=h$S(fSrJe6@M3LDrZL72?ri-W29baG9 zAk8dI^n6%5bBx9!JpB7&7*Rc9<)a~H?<}J9D^}y0m8zG30A$4961@ie2^Y$#xIFlX1qwk@bwvb zCA3Wl8s7;U+$RItidY;?Yk;^+7+7J%Y$c`)DJ=0nr;LUtqwjf-qd*$!rj2ay!pAvc z2oVit1A!Vab-Q_e6nK#M%NUUPF@gay+h*p zgUprz9xY;VGhgwe@PhFD@PzRBa2ixqN{ipZC2UT=g-ieE%XzK<1uL6a&cH1;w}gts z`hEa5N-KTIT(>Uv{ECymf!NrG|4y>k2z_RCP}?fy7i_<+m#G>kqLnf44mx0aT;he&P z)^mZ)hKfkLSRZ8ju5g=9`P7nBkyk-`hveR4k&-!J`2kJTlwj>Euq|B6;KkHXXxmq| ze_JK0f!6oreL9-k%-G9NK3~lxgOp*6$!PU*n+~iu7L0>7}?Yr7mVTT48BGIu$;-fzb5#@$HMmdu9@W zK}}7D$Ysg29=ElGm4qM!4neh7!`Y?NK-t2VSuGOyjup9H!*vTz)DdFWkw1?5?jCZ! z8qlALSK1c1$6~YBZHS+>xJ)9u?kt~Cl@bF@M*pFm+3?FqBeK=S7b{{f!dUWO|JPB4 zDW?04&ZG34mWQ#lVc2U5AydRA%4NU%T}S70osAp>eC}Ff=twEr#L}YRI#sB5l z*gjxkDL)14K~VwK^9t@6UB%lWek*%V3w-93=O?yM(2lVt`z4l0tdcappw-j9j6_Q{ z6ClboENXx}S;QU&HV0!b-wd73QAn^rY8Hto`uqM+=kI6$lokH3W19M%YZan|^=T<5 zQb3A}7}J&!U}@KV5^g7O>G0pDv^rXzSxXEZCf|VXing_|$MnO@89FOm$lgN4qz64M zCiiBGnz8xrJs%WU#>) z>0vwYeM$rZi#*8LHd$hX?{hG^we!i>#s%aPu^06K=s*4Oad7>Ia2+cX$A1|>JoS4k zc7q+ocSdhdygjUaKa`AR3|s=idXCl(xJGLeKLbG3;zGYj`(|tnusi+nVZ~FTFd3Vs zh}_k+QX~m|7}~Q9k-=<@bh!nN?;@w#+m9_ zE@W}pql9e+;`VziYD{K8;;6Io~F?HdnD4QAn#$|&d>qkeDa)}3VUW|~fu;lz!P&Wba}TS^7^^}!&7L8*2$ z(R-itBT3DhaaW#+79cVIgP5EfM7fmp=s!D8CR-}F7Jr3da!=oC&TTG^Q*gePkvCKX zqRCpW8XBz_gXKKL?@KIi6kvAQ=gV25O1bQ{uU%F(DL!f_w#njjZ^mmbFIwu8ROYv5 zF*!Q%eu-6ggaaxM6}H>u3FGond;xQmwiF*v$K9F-zZSWXf%Ui|Y!@ayv8Cp>xZ}U? z4p8Iznfe6q6OQ633u;Suy(f~DH19WpEUAFIsab9&cYNstYb^R78}v8Px_4O5|Fzny z8r^Hh7X}(GG-*_EzNR_ET(doaIC%h-v&56H`~xus-GF`l1b?5G_`1)ZEIC?EqnS#i zk4;ZAm9VoNY{CVC#7c834UaPovF?&Ua-rKR@hNTcT{%om>AU~K%=*9+O>s;cLF(!LvP49@8) zQicCo=PP&cdRhwXDQSdqA64TbXum0_?6r8x=gdVSSY7RVb~vHo&!@dr?6+2gs?26T9evOre$R^w)edSoC3>$nkXZQ zq_jjmp|meFB7_bfJ`S=haWG%qZK zD>-2N47eVg41fOF&!)aI@*Je7RsdY`60ss`e~0Eg6TF)%5&53l;3&x_O6thqZEZ<@ z<%kKeM_1)=kLGq{OLu@@pkh3J5(^Cp@GU@be|;a+)z|w;>7e*aLnuw=@5v+thQtWx zGt73|8~#oms8zetl>!y)+*VOmVQ?5;;9Bx%tzT$1egO5Z%Za+N=Mf^?``p6<4!kl? zx;F*~l1YzN;nH6qZYpDHq8hIkI9@Nd8!xe&-dSY67x^w3+i}{pb;uIHm-KY5DCCY+ z92iDn%WeZ2j}wn`C$=ABBx7I!&*a5H;2+wm&Fyp-MV^EW$24Z{e{gXIpFhd_oW72< zSO9!1o5K?8U4@ zf3CST6DG9b{?z{qJRJ9D?}=b1#Pg%#$N1%=k2p_xf%`o4FDY%J^A~&a_!N@~Wqg3w zyos;rxJ(qYS@0~=z=mG-pY7JCkQ^Jk`uX#LW8brz8Ai4h>WOU+#3T2Zy^Rr*S3?FW zGBWvg`?b7Jm$keMYJs76Sp%EY&e3O!lGme9w1_{NgGK~FK0=0gw{Cq#hJr-Jc2~U_ z&&W?LC2d=;QVR-jN~K4HY(yxyX!yEw8c&VHXsMA+Sm5I5fQ;Of+Udnogo|ZSOZIx( zvVg)UwU%-!IGoYQk?=mG09J`g#?ajf)fnF)6Osq#!2)NOC;Tr&%jZtoR-jzpLiAVo z3+A=AqRDos-Si~PL(-p3wW&B^f--ZSaQW%OXm?%_C&p9A2v;S%u>BS6A9mk00=)E6a%zu(JSBJn_`>-3KU zSp~zxp|U}E+8@D);B35g;YT~5QS70HbyR=5v3T9qBZV|?VLy)j%g=vtsyb>4RFFib zk3uq!ftOOLNWMGnNxdzLK<(EdIFt_)pWc?AO~eLmT5%>gLJgya1)QZqNWhH~$NVLu z49JeJ62E*va^Ly<6z%`|AnxZYtNDhHR{=yDi@KeyHAA)fi65Q~H$;uSXQI#9#kgy)|_iL^_X?k&Z5ABN))R{|E z-l>MyEWVg(l`{T>oh>NMY7Wt-WFid-8ecJv#sjx0krp%QMN2&xt?{E863YN@h!NPH z@^T4$L$X+Zom~KFzfs$ve{Uujd6>b%Ftl#);=_pNYR`Q6oFI5ediG)8xECTuO@OF7 zO}+*icmtBwU@02XG`6C!9Lv_wr8v1S&QhqHhFPwvT^$^}Xp~Fnr#stTWF>$u0MeoP zW-bgLkDOuIn8O4VvNqaim?!nmQ#JH_>ww3tul3-c6^7k!cZ>m^b2Ey}T>4A4zFu0w zJ9`h_9DHj8=f=uRi)9y z;@9%s{H$;D#?l9>QB-8K5#7T`Vi+HI zEn;k)fZOF8X*Acllhj?0?6rTOtMq#`Tp%ZBY)m)=oQ}&+oVf?F+Rx39rSwA{xtSYH zHMczjh_IUA*O{Omz%@{_L>}y`uZjzYW2TLsLPGU5X;jw$`W2abUtHuoq2xHZN;tt(hX#P# z7;Y>}7$<}NE#LAzIr_T3DBh_2S>>?qk7=VXyQGLBR;re)w%Bt{t0ovYE_3O zM9nSN_#dGioXjl$DL(NJPyOGY|9`Q`l$LeuK@0MCcTYcIb6+}b!hR$}B=|f#^gIY= zlV%ezL#Tk6rEPE{c`n(Bjn-q2YX~FDA7x!V4}lL8^0`AhPSz}U)6pr+8;rO8k4pYc zy)7@w)dI3&V+Z@6x;XH$H=*PVC^5{Ji=m54Op4Q|%nyEHd4k8qqBxwgGywnSwgxjVte_*T{GtKe_w#Zm5?aA1lf_8B=5MU1vpY%ag{- ziu5#>S4~a&^!7&WT|Lf~7VB=JiE4$`*B|v};f3aBN4F|=+>dn^8!vBJ*30IW+?YuX zTh~mBD!w^Cbkh?BpBOfzGWE=gTKw>mC*F=dP&gMu_#@G;buI%X1{Fn=4Czic{vQWd zdULg><5~lQ_CFzWN|D9sCuEq38KX}PR1ufXhPn^OAKoA30qN&pf;CX|$u}?a&v{t^ zTuDk8t0t29%F}FJQ2j90odm{|X`?oRzXk-L>T_S@J3ZPQ2h(7}m?X~v9W6J)Ab&FZT*KiTO0Q^#?|{IMVM%Lo|R^|!UWJW+&4SDaOk->!!K@zbg(KG}P8l8yt7CxZ?Gj@~rQ8 zwmz0ANvW=lYYv6{O0Q2|`cB<2?cO2(t6Xa1T$KK&F7Ti)x@iFmgE?CXt>UX?-!Oli?4s43mF;^+XfY$Jm(SG+&6K#-TYXH(6B;|!ffwhkBiy+%huzVVwcydXY6lF4ratb5xBzT_o>BQNnRST3E@@yp7?oG*cA7N z#J+O7wLA@rav;7AfShqjOWcHXm5vNp$RkzB$HYXs81OD8v%pwrX01(|);o?$QoWmfnu32wDQZNgTJAQcp!D}QrL3kpl> z!G8Uwf=%iksVxylv3Jg5B%?;J7zaX;$yA2|L>dst1(BP=`;vtcI5L%Oa+deiF(rfB z11W}Yt>yO~4GijtIeqa$o_;@nrRmkjs~UsB-)_w5sl|`!$Zq*RK7raYB9e~IcmxqB zxa+0`x>O^HT}o4;I@_*9g^`Z%X+BP37e~=!R8vqc4MB)`%`C#fYmeQV^1z%pVO2%X zP4@!qBFS%6S<>VACfx^S?j%wwI;_gK^S7-~nJ-y)uG`#rA-J*|eSv4>sdKJV#nAUS z0&|qLLALDyBa{d^(4JhbU7dh}z^W(~W*($7)?_exOh9f1*^0C+Ckx(LjmQGW+ zIA`xsS3UA)DF4t|==EX@)=7!t72hwc9kjeVaZ1#(YG8MFW^NNOZD={=$7oxL z6lPKKBP^6yG`)WhLtwG4G`v*ayXS-6`X$ERTUgr^8q}H$Au#6~wwSSf0Yhd4iD1RA zSYRQRUxeoYWy0l?O^TJz9Rgdwg|lR7RO1;fH3g6XqOHwiMKln$46Za*FeZI z!eM)?(qd=q2sm}1Y*zGQ)ly14Vqtzdg8NF`%ZCR`ac8+hCB}wERr8mgjxdpi3UmRE zJYcr%kFS}PiTAHEcl3^jK5}Z?7rLb?8acmN!``|E@wIo-%G41Y;7`W>lh}gneeuX6m^t?Q zCF5&HTY~(eU=!Y`dYqF60`M({bLx8T_7kjXQ9PuG=sjwFIahA*TQP#UGJ3H9t21Z{mI;f+ts)`&3u;kZ|qHO&|BSi?Psru2&=*;6ht z6itK@ALz$$v?@DTMCsvCAq@a$RlUFG_vVJ@5RsWWe>s3wvtWno7mSfxq zQ;Ak7F=F2JQChhF^i%DYMFHmZqq6z*Sr6puA3q6Tm>_Fp=5`0ct8P>Y&sKR2ArP8e z(N9#mqWd{JjuqSjz;(xCe@;%A=8EY7RYFGg97~y}Pks~#UqLA0AaN@joQk&(eZn<* zY>|^Z%1-xnJ_rg$--5G)Q4K5(M*+rq>!n`I>|;bdC?ZD~KZ~F3hKFg{jX8|9QS<5P zSE$K9`NRjQ!R_bBi}K~56%xobGb4XHbTxW}RAM-D_KXp@Ah$^_)mT;0IU^A4qGud$ zd+cbhBT}PVEOyn2>%sPVy2z%oR(&w2rr~U623ZH!zxokhIrwX(?r*YkDE1SJkahqX z&;4u`JP;G6INwNJ??z^r#_Q>LOWd*#DO{b$?kCr2GMDMycdDNOA9cVO2$WE3Mc0cpp6wh zr%y~facrxJXwd)FAVOn=9X)LN*Zg)iNe3k{n2rc?0Leyyct&3eIzxmwYc6+WQCl>9 z#j=G}dq37)yHu<>bZmqwdU6b~kJ@~>S2Iqkv#Gs4+SyZEPdS~giNIu4{ny!=fae36 zO4J_4Qxmhb#03u+$tXkrE1_j}n3DfCgdkRuM-7~yWd2%5v7Lx^OCe%-T)$xF0Ll+WlE&QxvCUMdT6paMVv+CG|bj3t`7AD_3pwOExF zC87@H_Uh2Y_r$sIbJYe}cBwR#mlcfTvz?9{6R4ACubp-VLB`B5(4L(}j(s0e%1Tfs z3l?43=%Qeq5A$($z0*VS{u#v9IiIsJafLe(%|Q>`;tPvtXN|YuRX_chz)B{fV_;07 z6auUG4GIW%Hu|1pb@S$@#u2-hq&`?F4__C1xvI-QPP)AtRs7d?(T1|fL{4=NlSo?E zEyyq56A*(S$|MrM0q4!;n@X|6+IO(kVgGphw=G|@UyIYpb@l_7f_-AH_ms?W#K!ee}g?i{^1o*b(R?G1G69D>SvAiMtjK; z7<#&U-yP8RL7Gc8_A%KLc~H8;6G_7wuqK_l~ueR?P1fmkqA{wxOn^_?`_t zXGF4cZ)1Na;l`sIP@Uy2l1kP7=H|ISY(1$B(JLMsB<_i}{(BPo^>=0#NV-m)1ZTez zHJdxZ*ufVJ8#1hfO*&Qvc*zm~KdT&lwWoE$CCsVgj1AwK0Vo@y>9&N(kvY1Pj1gBKUnA5f!({a^@Gppyz!t& zB4EryS0G8y%y-vu)}G=kU6_YD^k&S2cLeeulGO!41j4ae(TURzRL2Q)Zz#oQ!9xgC zqajgP2nbah=&uCJNlYAb<{=wC@8gI|iy9b$@`U?n6a6xBh=1I$sg@|uWX|}#b~T-6 zxe^>+e#Lmj7MHWFChpj}lkc;>0rGi-Lig}(7);Zpxd+SG>6h?S!gm?YqaO*3e`2SH zSk<#`l~*{Saf^?Anxt+i!i*BD^pKnq6BR~QFnJO~lGE&BoXMBLr@ zuPqbTf6?|?S^oE`!#0jq!sf`^cCSdnmLd1a7VG6TNW4oQd?L^_gkvHYIK5N1b#sx7 zaw})pk5BI(DFpVSW)4L(zap_2-xq!rx*huH;g{K-9>3>LUU>{0E8(GoXM18SnllmW zFs}ZX&ECD{PBauQfm-V-jWtK+i z{Iq=Vv%Q08pltMDthmk+Tnj>~^5g}Mn;jQMZPc9?-hZe!pGi(bE!sG5xV@iZd_Fh% z^8=3ap@?4&t4?p;&ch0U>QCE&R5$itkKd=+d+vk;7ck?o0Y{Ns)o3Ky5cc_?LNun& zi-;K~5fdBth0b*oD}NI*QHeBW2Hhj(iDT~=oCk#M0r<&O_Vy4o>nattgl&3n^T^ul z)8OS=+a(oKpn;%Az35#`V0|t`!GdzCNzah9dnQ%m4Hy-Dw`h?}7w`>42PC77W0lu1 z1x|*CCeYzZ+@E3z@awj4V*wtpVhu=AvXyi&zmr(Z!?6cq+r#L9p~VWAg=jF=IwR)r zpy@H&5bKYhcPw+GuM%L3nlA4C^=*h&(>$=5gV72MMUYGR!chUAVBlDQNGp`TdTsHc z&mb1Z-pAjrEk5a;+u{gpYGx+-x7AmlAd=h>X}mAyD&3q*8n`e1-A_n-jQ3D-sVGC} z@mBAvJzLcQv{Y3LT;u9*-fqFHm9eT6iYp%ZsW*Yxvo76`Wu5Nb_tq6(@hV~=NXRN= zHKAKP#1i1p(dCg)z~8b-Y$L`PA$(p*-J61{n+&_vn+*MXP+;LwRFTm}V34t6cn-$k zMV`S}n&3l|axd+yf|Xrv3Lh)uU0LN}hCmT+a2Q1;BwRl5+7^8Deaui04YBf6xU}6| zWsk^6+J=r}(D)Mn%0fcWpbB$V^IY4hdfT~W!cI(J-UXPlgYSGsOvbMT1{81 z|6ZIFYIBq9=p$wE6Htz2a^hlF&&Ll*(Ku{#sGRIQ;SCJY>}H#$J&yx{s|1x4Fk_{F z`66-JWPAAE?e+vf7#P@1_+9!TA5yJ#cCUR{xdelPv=(B;J85iw4W@7rDHHcEt8mRp z6_D*`C~Y+(8{}c$5g(JluaVNoi+%P1vqDEJJh#3an;%xJtti>163@k06<~7ADS+lo zTH+-WKT%jT0R^sSHvT5!AW|$-cmoR06seCj;$McW-(yIN4GQG1;e)R6;fdcHT|w8q zwecfJ6O)p9;gdiD`5pB9Xeh(|4?%R_6_$0D!%_bhS&o%FEH~!nqSHl%m4fJpv4ABQ<{O)oS=jpsuG`JJK+CCs zpp#4t^AsR9pA|+kh~quxd0F8N3O@_>TbkXvlO3vn4?!CZM|`mqft)Ec$YZnPxB8f= z^o0nf+Z~7n1O2%zbUIjI=Y`3teuu_!ESi)O5go;A?c&u7S+WSR^Z~!#wb9*0^TDupHzd9E-z5PksOX`tTUyadG8IqQTl|o<}Gntu+7dSs8loM;rY$|1E z&=#mpA6q3&IAFV>sVZlheskc$O=o`Ql_?H<82fW(&*5T`zVxTgXon}}!eOP5_| zc<56FO!_OxRYWwSL(wNgq;5C&HNeU%|Hn1q<_6tIeO{P;F7hdI7BxkE3xM{QCP${w z$7NU!Q5J%}<)ZD<7doI&aUQn9WmXG7#SfTkcgY+ zcR6YS`&!x3Iz?Me96kb>+W7R1f2d2|K!MOQSG8k(Us%81cA||+OU>Z=cE)DOAEc3_ zqfstOl^Mvo%j> zGHQFEycFb;a|p=W=I95C9%v1e1L+EE;}T~ydPL75zY5GzgFnLcBEtG(SEyO|oJPNs+aVs5H!QiHjUEYhP8- z-R@6sJU{g0vKrdP38klE(w=3O_$YtLAkj&$`FS$h-i{FYE^@eAoMsy`slF8(O6a^8Lvs-$ zJH}JG-LbTZ{CA7tG@8@|as{|;_CHNxg;111Z}gw9x*JRUH#XmWdWr0>fgrS!lN{k6~NMJImMZgcS+M z#gr|PQoO0=r&_biHR~engtB*Uiekh|dtgU(a+p$m6D zqOr%j3O0?b_p~GpH0+ymuRLopIcnk&ZVX^@?hpuDWjxi+!rk^mc$`3xnd|*hLY4UY z`{WkpaReqlJS8c_`LEQ{i8+--xHh73Ghoy*xE{^I{l&SbQzMap2ti`nPj|39d(Y|P z=U!};*D7;$^TsqKAoBIp_2ui~&vrMr+>k{R=k?w8-5Qq;o7|&nzj zL2*}f=yWV=$s6a%x`*-{q40wg`q9gmdfBY~#8?mPi17ETmMOmXu6G3I?+mTA zy22HQJjfTy_lA)R!;#V^lZwV0jZ{5>zK<91V3=~m?MP7-6n+NFuRbYeDsi**UeAhc z`wa2Dd9R8H@`fC1z_tA6wxh6bKLFoi1RDGex zCyl0D$$5@eWn4=yz@5%k6`zA%W8*6F%r0*xC4x+H(`%UL3Au%W=&TTS{1CGF)^&)L zn^DfXjL;4@)&VB1&I|1?!reP3Rn{#AwY&CwbPp5J0N$iH*VDmSzk1}&J1gAN&HD9# zj<$#1muCW}_MwYsRgYu;MSLqONlb0_edf+PzZGEy%>{5zROSH$4=pDyeW~0djL7>Q ziOkA0)*))yT-@9`b#Iv(04d2~#j?$@A{`hA$_ZruC0GW`tD;}|yP`XS{}|a9_FJPp zPL*JW{KfTzu7cDMUv(iHFBkQ!9mCyfcDx)WphCrT42=@+mhPn(ZQ@%b2~(@So2fHs=3(3C6<8^uH^Kv~?0T+tL3uyd4c- zyqHfSJ*<=A>-9`yu0iDHndg9-yyn*KH8m5CWSlutjDLI(8Iz^78uI|SVE&0>`7WOJ zWWAz1`TSD{>jnm&W^V`Yl=9}#GGNF}$L17R(dPgP7^h&1$)_uZ_cTYofZk7BMdgJ5 z@9iVS%qFYk>oc^b1Jcn1=xOOb0{AKhv%MQeLoSMu-L--z+pAwi(3k31O;QvTd*=t z8t%u`!g6kfWmT`{l4-(+-iB!_V+{d9f>z-N?q>34!h(_m{(jlkwaoT|k3QcTg#k*; zvsIdaxl8r&o>Z@D%k@0Rv3$moQ~=9!R``3pw%K||kM+lD&~_8JIhBzi4Mrr>v-r)? z=~fgn)6nf8YpJ5hF@Pl;ExqZOREl{5);ibdK{}q*L@^nLz`4y{`^aXJpPen8c_0{m zr1pAET#IgH-M@#3Wg@x-AuAT=nq68iHISy}av`zW8OzBISHnz+Q!QHugOafZ4mReZ zdHmAAWJ3FXNomQO$&BRBgbzp=Yl%yQ6;&YF$C~A3U+i2$DiL{Pi+K5%XxdHNSR#XA z5fZtsLuQ17QK9@nvy0YPrO~n=K5!c2S-){qRULNYewDmY2lig z+qHR64m|i#vyF@$hXcZJ3s%^IwVk9>`@-CoY*U z6dugkj94b~+mR|%MpB0J8?PrOmD?-_Fq+|x3-jBWFaTmPA&_(P6*`D0SUFfYVxx)V z*4A$AYvpT9dC%r9=h>W`6RThA2?GK>Z3(X}e%`u&^|J#EKK}b%7b$aNY4&i zbj-6`7?f84DvV8DqPEiEFf%)U%vM~E`?{q7@x5*_oP(YW>NtMIVF>QUxcW>I2NdG(nFOh*dLljDc;Ayge zZMzqHYJLpF1T;)B?ExuzG;k(TQ^d2#Q4JT+@GU5ji%5BBk@fnV0Ue4_om&tll6vTP z$ed{m>{Gv^FN_!A=Ibnnp51`|^@W9&1g%^TYV{hNB}!^7hVm->XSz>BvzCb@a|8du zU=uJ35d(d-?{tW@MVgY>yGiyW;O^~8hkez^cf^T=BB3xFo2N)-f_|^xtl%ROxzwH& zDzfpldIp5JQ;ZENS)fNs>YxIF!pK^$M+}W@r=!+N++8d8L`mY}{ zSKQ?d9yxs!88Xfc7TnzoMoObaC1=76z@*x^3VUGh>fJzfXsvBJPvmk z3iK(aJBwrx34U)|DN^s9@4-zHDc7OLQ;nD$jvk)yw*6>?2OP6JQ^lWJ!_Oc*Xp0B0 z1GJOgqGyFu3pHBc3-T2ahG>>i0Um~sKXmR3Qchb^(t%VyxyY6092Dxvq=#VG0Wo5p z*QR3yJ2+{ac8x#v%?#G*_DxO8xp7naRA>LWs6?*uqAh7@-Hz6iUhM<9)D z*cXhrDUSa#&gn!tpC6S>U^DH%tugFE z(Bp1I*Uu}B#3E^N#w_#OHKPVXL^)5FSGTlA$2$`tMmMd8@)7tZu@}=8PoJM}IHdcY(D4U>lDrf55ntgr{5a2Ktz;0kEp)6%~<=eu4}mZ&5;U` zF!^Eyg%~vznbE%Ho%16rB0QqqII&W(eE)rCAvev7$gXiKCs;55@_p#Uc<=}T(WC8E zW{8c8j@Te~hz*7|t>YU3Itb3p<_X=+vTB0M8xr$ou3PzUVLmp<`w(UDUvz5kEFq%E zjLC{~X=;{g>S`x4t&N(UHhAv7%dF;LybfT4iIt+1Z{$qz)#T+ed-6C5)CaCaau!@6 zEGt{Yf0~}Fijx<^Whf#|JR*V8l!~hgDK+qeuvAuSpJW5{fvEI@zb0!)p+*`?;w7MFWyK1bPy*tF%vwy9`2%8mt@l~$= z8Au(3QXsAo!-(j2QsGEa(@%YAPU~i!s;Xm?3CJO@g^BzR)dH& zBtO7|JrKAr$T3tzK?i_ve@4n$PY$ptDI!CaOs@J{hFkwxJ&f=Ow9Fu&f4Dgq zL1v-SmR^>HGZpneoH^=r-gH&-poD8JOy}RMj^{A7hxj zuwMOnyUgL=g_R5C)QMMO^m=b!M$H?uu#iC)3Zxkx@sqI z$NYfgsb&lP_gM8G?p7AIfBwh+@wRAL+s>8D#1p%mThCMHER#{W*n7aJjhb(U2$i{b@Z?%VnK=KbnZ zbR;GBD7xy%JDp0pLdw-%YDCMKU(SAEmd~Vk^Rjn9Y97}rQWc`4otd!CU*PBUdzK4u zvBNZu&g`{=@F|TWd|l6a;l}mT2L@{OM|nXWOSVjk0>FZSlip{w8h{hWnqPX{rR!UU zU6T&ap?W)Vd$;?lk}=(?fADZ9=k|d^7|<3&ahNMbk-}U|HtU@F^5pc-CJ+6E(#Rt9 z^K=#Oi}sSj+FUA8x8+18i%BijymmyZ&|!;?9sO7hxcE@;$sC=L#kiyTPXU3(GFrqA zdJF#M3ly(_^HIW;#MVJ3;hm)9>|+w*C_l`?d%+g{qlss0t41#iZ(6ZErdU4%PNV;0 zEc^Tvjs`MAX@ca$vgH(;++-<#<5bD<>HtG5k%;holF^b2J9KA9|nGhfI+u zfx4xr!f2C@1OzNh<9(_Vy^k?!y63_Ap4^3pnUVey`hXg zMJ6D2tt8L&rLcJWAg9J`>DlF|qbU!_ftEZkrssIr1Oh6=mvX4fkubN_^4D4h#7qRa zZ4+xhh&qvxWD-=Uz*J*+APUZ4VKx@zfqUdb)B@aOdrnf9vY;v`<4ubCeZ;PU5s%Az_8F;?X=D@-NF$O2l8D3be&wCjPk#+LyhA=n^(@uraBoqVq5nhK3X)n-ye-tHD5cHP&6>kdaI48$` zw|H0X^)+DJ)3)XCbqp~+(@{$xydU#bxwILj5K|66D29i(2)719+wO_IvbA9AlTBTCka&z`$V2IAgTGy7MvmS4x`^#RB; zx|YFOSCPv}gs~$m@ZA;SdJn_IaGpx#h)2XdN7MbehAQfqB-k~bIeOGNb88ss5kkMw z1EI1CtflO|R-*AR&f#9IryUAQq@Zgt*4$~pB$U?BE*mNGiz;y(*SETxS zL_TS2p_P)5KEt+gGn?5RtMLwt3+WV-Fjk8)-hn`L#$kM%Nc*~;H`>G|UJUe=4mEp(-c8;_ng?TJ8n$3P) ze1HA1{`*b&iDNs0*R|T~dz#kc18l0^GeS74&YrofpDvjo$U1aZ8|?3c#>Y$J+7G^^ z!u9DY6-{iWWr?mMgFWDJ^fALaH%|+KpqnfEyxU2($E7%OsYI{`f5a@N=}_{$O(YFjh_Y@q#Q283;ebxxzT=VX<0Yg2^%`jS&Ikyk&Bq~Xc2VuAm3q$ zlOz4Qj`Opr{8L`u8PD(6eXM2Eq{8Ap3>Qm}z%sLjegCJCdoGkK$!&;GB~ZFQ%GF>$ z9^J4XvT9sZNigD;wqh*fWqts>lVR7BOMkT2SOmT@^t1II98+l6*z@`O{mQ_iFa}4Q zB@2LI!P&-^B@)qH5eOvH({2r{ zNL>$ktM*Do<07^qs6&OZ^x~m72{py6{^~^nE z+^@5#W$%Vp-tgJBcU^4<(FVosncpCTXkx#;|8L+lag)`LoTw!j8<4CA`LD59QMD~_ zk~#T$n9zj)AcZ#mwEvvyI5__!EMsH;pPQ)N+By!0|341#wwON>`;H_z+Z=L?u59=U zgnrJc0equhq~TbshQ!O(EBmVGWAi03B2_G>2Q24GmQ40&|BwG^5m|Ak63hF|!PnKn z#b#<8OR_YDWYe(}O!95g1e-KA{xn9h!ANgos=UDLHw5jQVJU@(b%F7!@8{#-@+jiJ zzL5xgIy6Pp3`_5=PobA_x*l14M3n<|xe$Gdawfb=zj89Lic0Ms)YkKFy^N>roN+d@ z^VdmEPXsgT`h+s*B;D7L+FA+~hGowO)wZ|dKdXnv-T5WHTh-g&x4H_3GN@dFqAYfI z^_BOn?fDvS<{_u3BDW`^YJ6yJon8@wkh12RYHFGsLB9eE{9L|fq80=sQwhJnIYzin zL!Hktee#W6#f{M~)zfjwU{P8Xl;W5uB8}-t0!;!wNYc-A3q7J-&qNHd`K$G5wiub360Q+PB`?3XcXs3~ceBX&v;_ekL{>ouWO*u8BF&EGsytqgX0AyhZ)e z?4C?p@A6ImxGHS;SgiGNvdD9(?KI}sSRveqk9z2!!XT4c%VYw+YT-khkc>ZNLj{fl z^}AqeLl7V|#hVzQc1H%s+Z|})1VcD02Z2~!0)q)cUN}A9+76ZC0RRf@78#;ooUI}; zWys8*D5pdbwvgIL!1g}p$V)6Eu`2dRMS)S*4|Z5Xo!lRx`1J6RX*aDlf+h8g_~ZRS z#qN;P=t%qkjz*H(qX%H`IpO^7OW@e{jDew_jOi)c&C6VL)@D`8;LPJ%f z6S@LfFm^Mv*vGwgkyg=<#ap0GRvE9oGe$CP5s~(fBwqO}gflj=xby%BpNtyFJ~dK; z07DRZScQp0E3U_4JEs>My?1s2t58{@C6L0nkta@~k!lj)GI2)l&250l$ssYt?cB=- zcT^{CwXw1+k%%A~{5v0%W)VUCD%x9erg5ja9)GN@G~!OkTKDEIfN(`cY6VWY~kcthjz#6C}O4-vp4x+6U`1>~MJoDh_?9OPRg3PH?=>S!>zCwK#! z!Fl;v*wsQ3`$E_TTR^~u zv#uEI0vkn)O?$=9)o6LE%~``3y^${-CB90`khaRAX&^I(hJ)w7>ZKkodxXB# zNWTK<`7~4kl#~Yb`_0-xk4WcOZ@XIVRoE?+m}EdDgh=i>T~qTcjw~VPQQ)s!dok46 zjr=$!X_DveN-q9qDBvz^*N|*_`0;Er_IJbvGwne z%*E2eP?So|c0ZNuM;?B7eth%_Vid>gzzGl|l(?!cmrDdJ^k?|WhbUR!zxfQ&W<50< zsGlytX~>p*TyNa-<2)}x40al!3wQR9^B#m7h6&Os6o}S2kTK$CaIuzD;i17txk?E` zlABy-q)_}zBThgyMWULp5YOM2WNC^qc6#|kmZ*A?qrBuBgl`+x1NT>oo00oMJyaM( z;P{)4^2O5#d$9Xa-i7v*CW+T;LH6Z-+URFgt@}>+qOXsXU7z5LWi#6jF#>Pt1NsNu z6XlniWxqRa$h65UD2R^jlVa;3#95fkCk{XeL-37Tyd+A_vM1D<(I}-wARjWI&<%6V zw{_vQdau}TPlU4YGc9Ba`_+`&MReNx;~3lIxuzFpM+-)=mP+>eE8E@_8fvpksNu_G zyXq)AxkM1{Z)<`kdb&q(Q%J8AMclZV4aLaB9?PO_EZgjuoHnw;#dHl2H$OA%rNP+O z)x+w44Z{Rv5MTjsxx?#MPfPWoeXffl3M+4)+pVjn)hvG3pL_1pit<(q&sN-NtE&Ck zaD9GkDWlzX$>|O7kR{ac>UKIe$PE{h21@jVLzm{1A#fdE1c(4hvq}T=TcLrCISQ#u z)yyeRQ)J=2G*QFnbL>xbpz2-~?;P(-!!9UJQ|%Qhkp^jyt=+u|VOVTrrl1n)K8CWd z+vvDl$6|!IAq4%A{K-vL678++oEKKq{OdKa!<3Z3`C>mdt~aTKXPzu#8(ESwuiY2M zhgB!134woa&lkaQu;41qTZ+LuD>J_Z75FZah5R0(dgf^?h8F`53Yp+9Kzg1>(at)M z^9PMDcaiuD>&*z^W@Vo+t=^V_3O23UU$iE>tGvo=aqEL2LEp7SD(Qt*d-*m-!ssI z7bM*0eVRgtANG4InVJz5U%&*7enCl=%pS|T8<>!ao8^n&;z$Man1jeuqGfN()>VLH zbXnrp{ZfEpbV=GqM()Fi)QSY{1S<`y^ionb831+;L?)l$H{NBtx^l$>`6e~4#{@pG zSNyqV_aMRwuY0CP#|bi;=A{k6nwdeK#{1Y}>FkYTp0h+I-qcD9A&!+-$I*)k)U72< zmW!0F`==|6onS~P-_}C=gM!>Gxa**n=SID^%m~+rpe8^3=&LRY@Y7)8%J{|WTssgO zN1G@YZ|SToZ*f=zcQiQMOw31_HkwWODgIAH>FDeX6#3i~K99h#(Q6WF#uo@D-3p&8 zBoKIhd(vi+rtRrk(AhU>(@sRl71?e9#-R73&l`F2KTbkumpf>Bf3{kW`^oU1xf8ZH zAsmein_f~@Qhe}um6Nt*W(~~W;XsRpMFfYeweoEsft!G?U^y;HLPsD(&6BcvsOru| zdNw8F@ACm2sHw)0S>c8(aM#&BRmHgu=ll6t$E{Y=`Z%kcU(dL|j22Pz(J1B|W^ltD z9iit&R85JH9)6aF(9Izu$|ZnF%nI7#Nf}%n`y$qd1AzHke}eyW*84B?H46&|%m13- zP5(>qHYHI0C3wU~qB7ts*&h>T2Y7pU$we9k+`4f#+M`rdR%Q?K7;4e?;`Hyk4(=Ax zF2`xM>;3yZnP`7_c^{^(rdVamL#l*%UZ2ml-{!|5$04}K(N#ho)`g&x?}gKCNU-s9 z6(BLkEhx@!?>`-wl3ygONm3!G?Wa5h{rTQ*z6_i)$Giu@RK!lbcyA#Ky{sefOZ6k3 zz3+pLyS-9N;PT5sH!e!{l0fq8ue_V~BU#hXJhQUTy^YJBBLL~*dRv(zORu%qjdbgD z5v1){zN)pi9ThlTcMg|1jaG`WGUjS=_b?8=7_0Hev5uu8UpOvJxtMX-^bss_(Hmdl zrMdNbWzKR@JB@DE6fR7^sjI-PpSjcML*3>5jwyc*H%YPNxeI~&R>FRlj1t7#APzJV zER=MBRP!hrVnjjm&mMJ;WVGWGROewVbdtY`+Ex)A|vWbCt-AZl>nNKTzZ7C zjSvT#4IHThQ(GJJhNp%XB7rmbXVC-X4me}85Y~)v^fi;Bs!VeY6JCJLAiYJaW-ly( z=1WM`j4TEmUB1Q~i-%0^VXlde+$-CQPWQ;k+M`55aURT5b^5dF5}(Q=n3|}FYZGNV zBufC~L>{LYsgD}IG-+Q7D&H5&I=?*=Xc(r8kA>pqNYq(T#+TgA&fQQod_nunnw7Oh z3!p95eNbVcR`eo=@6_+aHFy&uMIpsLUYa1L0;mqO;SJ(dBdRi|V`Kr{7u&nH}(JJ6w)xtoBUpNiBC+eLqa1`WCMf)Mdp!De$g?`JT#-7{AY z+gP2qu>rj9)gpr1Y6I^9Y}$_(m5M^_0!UFVid@FwbPj|1ngm>Z9}QfCUM^U>`@ZZ6 zSbqX9*+-yUtomLHlnv2=aZGV? zD0CsDM1-Y+qD3t6#HGS5wFbm@!-x`>gz4x{+%17pGIhXwDLciy){wE zh@tKJm4Wmyj2GhE>y|78k@!RUFoZgFY4^13z4Mq-b~aW4!`(SynKAz_VUZ_YhgF>- zO8PL$2R3{QU?L0LKa6Z3Ow2G^_U~s9F!e+RD6_8UUX#ykVucHUmUCR-wAHk_QQkww%NY zl3TlY^IbDS1&`KAce3`Xu!NtH5U%?X`K z4->mbd#^#?qsszJh(EymO;5RJ^n_Hi;lKMUxPOe;mHXNdiqz%h7Q8CBYiJw@Zj=HP z;R+k<=&P5C$<`ek|K_UQeCbcU>#3u;(i9d-eyVC_t_Y&=hz!F>X}@u>vedd$U6k1x9h>P^{`}bvxiYH& zBK!AwW|r}eC*JcUWa1s!P1qX{7qm#T zPA+yM53jk9$Gz$M$0=(8k){|)SdLWNsP|^KBpCvBo0S0zK?W=RPRW%rpCA(9s3wICBP)kyvChYB2?y6Ayd znX9kwhL@#`w4lCneOwm>Bwx%7iRWsb*5`loOyO)ePe15Q;UH?;QE&@BYbezD1)s;AwYRjO zxL16zEKkZdbnG{3n%Z```d_3-=YSh{mFj=4RhOIVer_%?YCnJF4z1b|dY-l>#6pcr#AMIe^TwiSaP-jG<`)nXK-S5u_LTW@8<8O z&1~PNqvT2J;|Snz=o7oiRXu~DyK_NZ&84d|G?t7l91OQ=tEi5u)`r&}VH+YC$ z;f*KA4i{<~TAmlJdlXdhaw_=)uAYsT`(J|+=l>&+m-&AN@=j~d$LqGi`|Z}vnLHFF zNkyjukqV&<$^~IC84EVEf9`QD4peladaeq+zwoD;*D~*%Pvun~plM#+TYJ?}Me!UJ zrp7GeD31+KiBMcB!<#OYVvwcCs)OmslcR$c4QK(cRD43n9X#j5ofzA zfgs1NfGD*D06?8?YF_1(BN(*R!YwnSCiI3%*ktrOMf z%o+4lBi)+I`a}fa(Fe_2HgxD6?L@1El?`IE{h*r>;k#kW?cu{oSZv8)l*8kOgl%I{ z3`QNbF&hl2pAwS7lS|v2VZyB2fSc3|9WkMcr2kHfByH({ca*~GAvnem50Go$><&Y* zr}d!0m9Nc04bp0MaO>{V3`$jJ(zq>#5o`5lRU+vQ`egjXHy?ehw;ta89+tjB< zRP;BxBLA@Bpla=T0lHb&Osk92LZr?A!p&G_HtlE!r!kisBb6pV-WaKmV9srrMzZ(8 zcW{@21AGa=05u;BY>;d7=&2%V=iSs1)`R#3>YI*`)$kadZQ3yONeTELh2*$#NG`vS z9@p+Ok&1x`@%|R4jfAQ;M?YGrLd(hia`rTOh&w0I#(g?w?#fMm27jzcqIyz#y;0!P z9kgJU#=W+bp78Uuw`*)D+;UN#d^#CV$(f$~`Rszvaj!Bn;^KI~(Bd@llsE z-PVaHXeZbu1C;gX{qS|7kn>mn_}j7R&FJG$WWC+2?$~8RaWtxg3k+u zgK^*_p);fN|1fqA-GVh;kiNEU+eTg6wr$(CZQHhO+qSK`>grJs`W<|K;jELnV(*N2 zqTU1R$G-3TZB8$wuCI4s?x-tG)hG;+8gXc}w!XXE$>F* z*edr3IU*QD&KClk-}ly@ke<&qbrfpD(d*IYTiqN*6tz{7`hIIwGN2hFu!kz86lH^c zRJG#iwqfgB@0Yck*IwB%W zDOY-LPfy=fLc`XLu6^6*`@zktEk2#skzOlbkJr=9ZQ49fSu+x3zC7vJ<<`kZ7W})k z9R8$xf!7|cGzO)A78{d)kZ{y+6iF1z=#S^3EBfHBV>+b*Pdk=AxfcopO;7di?H{`& z2fBoYLf)jv@j-?fzzCEq!KN=fh-9b8%Lt(pa|TcYPEW9Uc88JCFbQO{^3rgeJN+1v z2=Rqkt*43PY%)P7AVGHy5F}4mF_^ozc}b)h-?$P%Tl5*)buE@dwO-=|&~RHT zkxk>859rI=3|eJIyKleiH@6F0Xw=Dg{HaRsEAcMX-hhp=6u`&`V5(GR>PN-TfsQi` zoNCI#n->x%#Es&=ZB0Fi<{q*-J=wAv3CKZGi;u1sn=khd*C1%oQ+N?d%d-2+@0Y|5 zRP^V`=+2Wj1PYqP-QvyS-QtbnCJD||qYgrW>On*lhO-H{9+W}>-pZ2`w9l{KSzTQb z@j!XB8E;_rfqB4IbC~wYkQUR(PQv>YYcI_N1p!t}@7-JmZ8u1}ThpFEp)KkP;zj6E zv+55To)GXklly>Hx=cz5<3*xd$mKl&X5^(a(Lu`bacCMafZf8DHYtRhbH`e;AD$1H z@oqr8QkCOh_tW`--Jy0JV+3(|=RN9)>D}w6zJVu5LFf%(BPb1ZbThNl{n7r}C=Y;n zFN0iPWybq_0ZS#0JbCWN-6Y<0MmGI?2~<$6$b$%lbrgCk;MfnTm#CbB36JI60pEyA ze@tv)A@zK{Df-gi@WJ1X#(y;^@`e#f^1^$z$%b`x56S5tlG5HMpo8{FMV)eV@QIG8 zPD6lcS|}P#qo*OZ3OCbgz0D)`i%aU!eT7DlwM+9?X#6JfMRT>1M-V7!8&956vje3w zAeD8`?}aMQ!QEt^gW=I?)ypcJL!rl$)$~GHd-O|QsH{vykvVKGz@s4)$LF}oEqt|4 z#*1In&_cd&?0G!#DDSSg#VL$)Yz^iGr1z;zi1<>~KTf8{$Cb^PtLGeEu?AltaCk=o zjwRugqj-l6GA5PFJzn=oZH@c)VK~#HObmNG#0}f<-Z%{eRRru>6G=*E9t@t=xRA=i6-&B^ZhHC(=w$`rjS2rS2c z1Z296PnUZQv=T*>z7La0f`aPPUQmqvzh&XVX>oQK&Nb;#oXN>dhVun{=R&9w83^DL znI5QB4#@@6;zr2m5FVlBGT~F-CrOI_ebjQVY3>0K)6WuenpCw1CJLh&a9}m;VtC-V zOVoffaSwTM1h272l}W?=*NlG$Wzcx*kI8ElX-BovD^RN*wpLj-_gL}o6+;T=i-wcm{)nuMu6XK>he2_%U)TEd>& z>I11m8HqI6A2PEd0=?dih6`Ay>9Z*zHstUeufIB~tXHJx)vI!w%SqCcX>zO1w-Z(l*Z}!TGOycx&>ix0DU}w#ftqg+rlKlhG}sMrKxb^RjHTkegH=^ zb{!q;to!JVc$|4V#~m-Y!^qd>Gzu}k5-lgU9Lsk=DOb2=Al0aD@W0UF-Yi1@rS3R5 zng9PMPi98e|Jlg)f7f8!Y)C)3dJTD+Hv1(b>;mIebaw;j7MPnchObuJs z6M;)zH)raXGAsn-{-flkGEz$nwNoEM<8e^h$Y?gqyiumN@2G*f~ zWkX6w(}m001izW!l*=P>3~(`POJ%C>g8jK0zA0ZlQj8$u9}m?L!CcWJGII3a$BdoP z;&X74y69i`#M70T_?!LfiiFE8l3oqdb?aGlI=X~Bh^9gX;a|lY$T`&Ifqrq zMz>!y=1*-89gsgI zH0YuH=aFa?jkn+Eqk`e$@Mj26gGY7`VmPRK;=x!*66{w6B>QVf0zl{rEF2f547#+R z&qLRzrz(()R)Au6dIigGvA%4nP)GMV6?#u<%}BM?5~qgJQd`NE+k`TpXmyGcT^uoI za`B*InsuquQla`3iKhjBLSi_=fGS_q+LnsC6@4*fA3f9{h>Q@Q0T@5CR#kfAe?;Bs z^?DR#M^takcy19WPzLymVdVUD?~HN>G|TNX2t3txD0SH8rp4!vIO;_w`|0D;6il2$ zd!8@|FG3cnCjPV~)8hldy!QbDWm_mJnEizO+1o)q{K~!|VCR3>w-6FH__;*>RF3G| zr~ZYhpz^&ZrgAU6EPKllL66gv;~TU#C=kM@4x*ftBd3#K6Jx5f7mVgJlw}7cVFO*3 zAeEJM%{psvA2~8{B#6JBx_Sf&d9iz#Uh4= z<7h(YDV0br^iFrNXkk=GB8X9%U)@DL$to%McnuezC5rSl9e~IsI%CqIok#&eJ(?$$ ze8sd~?N7V&K>{Rb7|&h2I6-EvyL~{VoyH2H>DL;%U)k^Vgb_=ehDZNtz z2)i4;)Uvuoc@kV^5u_$wd;pDuY5vf&rMm=uE$eTjBZNCapm|dBxhfVN9qI-!X}Y7* z0_NTgu`$HQogEO@eqXnM z1rWtakl~*1i`i&^zdE1X?z%-QTKMGt)SNK8A<0d5AD&*yEGCpvM5Tby+U_@q_t!(p z==;Deaz)?ct1yFSc`LE|U>&7R1#(Pxd1$tW76&M@2TXzoI-U?2&fy}tC=@oq7?3QU69PPyBz9a-|DSgrB$_l?---zs&$vc znH#pVSwkWx@6|0FohrD6C2O*jfnn z8GjXq`S%29LW8)xgW-|nuXyjwV)D@uK)#(TN-R!}Cm`}mzw#r56f z@(H=OouMXjGlj~9$XP-pG#=vU^Au=PZ=>#i*b4fIj8vV6kagv_e}R`$X}9C?6cP@;Jhslyc4oOU&9{KqB4NqL_adR?n zG)4_!o^viZ+~)&iSE0|r8rYRK8Ywc^p@UV;R71&=SM1#*#2mR#o#zyZ5rygYX8Zl) zK_>6#zJM_L(I{@KN*TIt-<%Dii z!LmvKC?wZ*T{tWq*19e1t)c(Qm`j-a@Y(2 z-?runi?0di*(EH4O z%nm+02~g?R`Dd2G65Zm?)5N7ZtMM&#j2y;zPmMm9SGY&q2}=$k|4PO4#y~i5Vq@B{ zsSgb59>B)B)Su$^();uVy{&&s_CDnzMDO22kB$*LX!u15El+~)zMaQmpm(nXiy>q3 zb;U2Ow{G7_n$5Z*Fd)(qG9oM$gnQeP`8KE&=$YEJOMNujbOJpxg6&K)M@hp19n_o+ zN|R3lCHmmHCb0t|xRp)!+~&xJk9jDayQ>BI&;@l(rzrjv;2(@uHm7tC8MS^#3<2;PAA;6&fq-D(Xhmkk2IH39!cFqtS;Ppg}Q~A`j zK8RSR#{?*!BvkrUFn@5|S~0Lms7k*LA{VLfenHY%|4s=lMKeq(i!y*BwqR4fyi~3s zUB7maoy__^w1Dh`i6nN4_o8A~Yb)RsI=aT^!j;s&G7ZeWNRfye?q$TX2XgO>BQ=HK zj;wI0v%=NbVn?kz-N0_N*CC*_U=YiDET7D+(Qo6XZ=h+kGgbf2&H8r=zXERqgzxl> zyN6AdsOT={67pDjniAa)gbucX{7V;j1;_-2UvjNB;m^0p+tU;HFQCS)F2jFKDVz*! z|NoT2#KQ7Fub6lKpD|O(0G)9tOWbl)i@;%V;QC)u;0QFa*+<@nlksw0LnBwZbN#nB z41J+kdTWBfBV8mQK{yYaFPB=l#ddy4nx6vB6%h@&a) zcYSQ)?KJ|Sk$x|4{mgIA3VEQLcR*jNcMD?fkEbVv+7?t;U17cYnv_)gx~jtu71iO4 zjaA3CZl@>ki0)`>r=KmoPG2o(lSog^QQA#OR$65V$ceCKi&~Hp`GeHME*MM!6NG;@ zF_7;a&?!hTBViZc@6f{Nz+re%j1KH97OY=)N~l4R!514=Esvz!h?a%9yyxGe8Wt7` zo*qO=_8_OSgSv?*)_0ihiD8ZO4gq8VNd|YsaL3b1z|z7sawNB@5s+b%N-bYX0)NS> zyi)_#h3J^qJue@?Nk5ks5@itzB1N`fbgmNt5rU4r*)9@U5Ge`{ta6y-DvniJbp=!h zfZ9t-p4uC)kB)S5qc&19QdSzt2^KcVQSNScA>pSLg+{7gezNQ%F9@wyH=Uy5%tv{cstth$E_5fxZ*M{$j zI>{;}GFqw=*`thu8FF4j$=V?dWUwQ~6(OwZG^s50Y#$G^y2QCWRX*C@l9T;iwE-d4nnJOv2x^tC_D(!prp<=Hsp>9a5c&wS1 zdoO=K&tio^0JR(=L<|ax~Jv)SKt68?q`vK zYTqE`=LGps+@7LgeXz7yvyVlBCLAWcFj>(BW8W|J4Jir0lu&gFtc#u=^V7Qyoh}}8 zXVLZ*<0Yp;q?C-3AkqD!FIWlsY8Mm8A&_ncZkF~t2f}&*^3sm?hCZ`enC%p{Of77Y zj2ayCMl6$9itr}mWw;ff9HC^EPc!c~UFDT2hDj`h9GCb9b+=4%<3x~vE(qlHKmkLg zXS}icJaiK#@?%Y|Um~Lk5!#96=`xu97{?~}nv!CvxvfnhCqfKjiEk6$x~4OMf|6fF z-v%5tubl~7ixvuFZrvj%21QM(3l439TQe$KJl*+dq@^H}2^z>Efhuz%Hxy5O|1+Ti zP?a&p@w)c_`rQBJq@O9sB7IUSg~zSr&HiHn=YxdQ|3r#WkCV-3#Klm*)u*#}#ogrf zsckY39r3Dgy~7&@FlpiSsdNs-skF1TafTNHW0aXcoS}3ix4O=igXVNjlJ@kW=)^ON z*5+D4gH>t8#KfN_f!XnbvmW@_IKe;FPb7+T7(+!) ze4!bwkY$hIK+!MdAE>*V4={`c8ZZCH0uMr_9UdZdfLqik$<;k!4>V|e%AdoKYE)mS zcm?CM#_xWH-5bC}!(-EuhknPjY-;lHW2V#xQE9lpm%_0bB1ER{jH%kR+!ptY9zWJU zoq=SZ59>rfNrSoYZhL>5_nm{`5$Y{i0!TG0Z+~wy8|CY8lka;|5Sz_*Hpia)-+*T@j1pnOf=+%xaRjrFx)8>MqRb?gewQlnT3O^CFfK5|xwVI{X}OVZ9O?QTkEYEZzI(KE4mFO}UQf;NK3 zu)RS?iO|3lBrI;ZMu@u(b%(JyhUEFrPb0VhGsB*;$Wg~b-u;$cC`f@YN31bAQ5wVe zGapNgZbg9NN$2*`WSMBox!SQu8uy_j=WqqH-4>#d%nv^8wE8a~8)Trq!BRhEOfQT$ zq9K$RNt^!C1GntTzat<(yY+K5`-B^h=g5D4rvlBBJCFp1SKbV+I3m5uPGI>PxQOHm z>N?<_PDXoe1WIY3Yuk>k+WNro`QhHC&G~03nw!;Sjb=tu@gAz zJx@*QTkP#@0?4c#_a1DJ5n9m(b_qiB@NLa=?c%MUz5V(p z7#I*ollu9|Nr0&sJEvr1`qVa6BTtCi5FG12@J8%<(WI2C>Tdo)qPU<(WN^CmjrIB^ zJbTV~!#53$OrsW?`Je}=Zz=^gLxoW~yCFNU+IkR&0Va|1NOu{yCcvN*iLz8d#sb4q zucMx9d@m#FPTVI^f}kx*;HV)T{7jg#;FzFcsRShHh&HJu^mB2T2S~aG#9|DYSAEKh z9M7cu5*Yn!32b_#2KKQKzr*Nsh%FMu5$Y-(GOOQa-Q$!{gZf7w9!ZP?IGhj_A+O}K zUNQ39EQZPA-WXrelW9foXOB%rs=m_;hgQlMzJBNH1_B20%v^R%N##v_wQ+KOV(|6zUR5DTW zD~Ahgwa=w#7;p<$>S9_XWZB+dZzo6^FMUzChyssZ$L7d9?M{krg$&6KExgU8KrYA!KrivvNlq@{=9fE-Eg&)}%vo3V3!b zht%Rxht}6VJ9aDpz{uoLS=~^g@S?7Tu{BufR?ogkRX(1-KaUGZ_^5g*78M=3I<{(> zr5WlcCJ9uts%dLg>=RnG>wkAn_6o`%JkctaL8lG>c7Ls1k<;sOm)SDGcS_VQ71HR8 zsWl>Cx_TvRU`hL>mYAqA;n)*~NKPr%(h0*!%`=cGcJ%5?n@pT^E=%}$wN-_B`Vc~8 zSa169Ijc13LFdAJ{|y8lVe(++uS@3bC7yI{U9`xE8l)LkpNzuEW$0+WlIPO}!>MPP zVu{bJNk@)Tt}r~gd_)WFZfKlH3kCR<9yQW!;s3lyiR51SCm+hLpeZ#RJ(d8H1dS#9 z+JS7JjGL<9d}M6aUbdviePVRnGhok8u@^x8=b z!io>nz7=5F;t&#i)CyXD%H@a9&p!%r|{(hL&#L@Ge?y>8#-@ zP$f}s1AhXd6kME_om4`!BL$#l+?0&AWlW-B5}6(+V`2;~VixUtq@rOuzvZg!d zlD^N0}vxpHu`vH6mU8rEHRg9A*<@d!$lB4npFRuM^E`P#e z_{zYZ!`*+@`s`U(=Gb&IXX<%hId{dATA4#}|2kL~(yvzV9vOP~)l%BW$( z3$~h)ZEh{p!}BLRu$6z-cZkqTWS3PZ%YN5TQ{_-k)=(RgE~o-I(KH-G+WO#m*PI`C zz=|Q%wd$FbWvPd1$Q)VL0>1>4hGx~0RUB@yI@0H(CrJ4CS;ay?or>A!j)I+d^V1Pf z1)`t`i;ajwjfR>gtBfm$qlQB-4`O9as!z_dkPomg5^I!lhmB)LgB%d(TO`h=sVoFa9eowhRZLmE`w-@4Q7L16)z2HH|{ z)yS$hM!`arkF6MH0}OPRvdv87X>43FNMjO6r2V2{1^@75`;UT;d#fI@boK?D<29Kj zDAOpYR3=-Y0#F`#%UFZrhcuf9(|ng&L9k`o&97cxK-Pz5qkrwTcIiY(dlSr;Biam_ z5e)#zrslIN3(^+oixJWTcAj&WI$(l!83a1W)8oMdqf|5HeznsPxI4Gyatn6$U-ovk zNMpc5&qea4*MmF`jf2Nmd<=PfN~pP8yIKYPoC+mSfq-aWYv+&^`Z6f0k0yP#EFxfJ zURtUtO%>-U*oW2z@dERh#-&5JVDo0L(K`>1gSAT@1(Tp6qug$1LmYv~>jmKbyq_luf}z3>rWzb6eJb$oMAzL1CMi zIQ!DiZI{(jz9hgv0dc6GS_Omjbjn(sGuV;`V^Xs~oa#5wF=(holTv5T76(i|iU$-^ z>dBgD@W}+o1sPY|uVOYJ420JW4*b1PkQ0D_@4pYf*JnlG2Z`9~BITeV@q)lHHL1pq z-mmpRJKMHY*$XriFW48V26p4#yp ziUUB;uZ?n?sPaf9F+KxoB{H4rayXNRsrt$DEypm29o zDnPkg1B1#+^^uyB*$U8DOn3E@p+niso3n0FqJt9`HQ6*bA*-hU+0s0@H`9&V;UDmy zfE+OL=?`?XKa2Dxnimj-<-3JD?}o^3>#<>Rof#EE7&i&BhvuV`G$6M z=Sp@fFjerDeH1A>?a&|=P+8S&Z@fpefdaCX(=uW`iY8UPH}3vS4;|YCsX1X3i>-lpE@#4=4{y58wh zyA4t)p{MLmOK-Uj1Wj$~>ujyt%^dn~~8Vp7M;_%V!iASr+-= zzA{!et}H@jzhBe!I`jwIZHSl zu(x6sp1Jj+AoI^oANLl2co9*pJ)BnCnUWLvF3_L$zT8)Y!Y)v(St{P4q zf%IV2pq&IIcFeTW5gTf~T55aLvv5I*Ik%)Jf*gNVs2DvRjVXo^(+js^w;EF*BhV!V zTFBihO`0f$EOh?q!n2%?v;4eieS})Z0kE0*6HRhYA%x~JJdtizAYD5bE_g{}f~>*a z3WKEs!sPkrhBrBT>WL&R;P{U$@j}<6fb2)Wqr*2ZrCwfyrUV;&23D{jV}sX+DGy)i zTfi!(`xmo{5D!>VnlBIpnFBzNkq%#E-zjJ&lEwqJs0&_34?GE1t-pjysY1tu1?pK) zy#^_18=cR(0>@T}5@4@~I&FzO4P5{~X=QM^H4skA6VPv$Xhh(zCE_fk7kb5KbAu2$Bi+kkQm`Oi5E-!=!bi6M&1ytZ36PF(DTq z_6(9I8qdbt?d>dL}yw zgCIjo+-jvE*Dy1bSul}e`TR0zO(WTYZy@eu$Jg{LbYz9o1-_h94%hn2;oIe_Ej#*( z2wd#$P*d4*kbt5tKRWl#@TLVALM^~#GUqEJk50-#*1?gEOb87>=){Se=>CLjc-g~49h3U3j(FSGq_55g z5eD6=W)@vike?*d#%B2+Zf6ByeI~5Mi3vQ}Vi0Y2&VgtJwWWiq%PJ9pz(gw*Y0!_q z_;M2QqWbF96H~@(a}I^ZlgxIcgaQhn_6P4r6eUNT_;aHSGDjUR6z{}z2!_y}=jBnf z7iqo4aWP3u6s*3!5_@#gxgv8VoG=HuksTYk5>EH&5;CLQqIDT@+cTsUPbdW3A=5;e zHp|B|GAp!{Pe=j&n~JdGw3&?!gDmayc8DL3b!I>?YZy&7?mxxi25bHCjG=3TA!?Tb zVzPAQ93lo2*E(QMlXP<1CgtctL8Hh68CNhy@bmoAHv}yAG$Fw(-7^4|A}QNur+7jC znw^KYX(`xfPZuxt^JvaTGaw`bJAej$o+;%4x4;4EaSrFGp^Z)z_IHi0Z}cNElE-662js125sQne65ujV5NcXI`APETJI zogytpqm%<}#h80IoOEI!|AG5J7YLlFsNJ2TqDR`s%YjeO-oo9tc6@?V-*(|hsqWs)JsA`q_W%EnGLWC z5bDVX4$oPpNaYxS8L|A$-0V$5kQOjAZaLrS5i0PsY({7$DZYs&HNNTUArC62+rJ=m zH-Kt909^ut&CZLFfKLU%f|{Uob4h>yo^k2{Mn!zd$yefe&eTs!t2{s1Vm?Z!#~Kxb z&_PjJ(@pRlv_emTvS_S3MX;muVwi>1^2Z9uPh~)ptQS7`YO7|nv@#q29t8MyMnxnSV)wjSAIYwh&x6a{hd3e^uzmppeDNE!udG0@g6REL6K zu^wau-HcBJER?w!UXO*D$(JfM@U&SdfoCYrU)9i(YW0=OY=^?U{nn&JaNzkva^AGj zoWr9r(kUuM%x(GdmdSIE5}>h8e`Jz_Sen~wKr`Q9!IFN&HF_3F?A;+A5w?bGAz@K_ z8jWQWcctSpha0=G*~MwzCRcX*z}Um%OL+?IO9-mHKhl;S{Pfam9*UC=ppPr_u&&GB z-r&5KQ6yRiHVz~yQHLxUjmRdEW0`Gsq z0Mcb=SmEQ;_E&VKq0L!$Gm(8%l0D3=ZT_X+NhqtQYAS?UJ;nCAv2^tFVRo;U8GWWq ziZ3_$J{Ee+;SZY^%@n~2<;Fs3CK72ebE|N~{eUthb6QUtLc#g$%B{Q}%#Da!oE!3e zOfS*-{Tkt)NS^LwGo!flzITbFOc=D>+v?2^ktZ9eIiDWDkA2isLDE!Hzj@9mCVgO~ z*jdKpktk-!)xfd1if-ZaK;r}$rymAtfW@;SD>!1;t{kOkqf`L+ zvyQmW(m$NQM*gO^LUk+qQf@>}&wNzyyf+P_5-q0_0dh91U-GboN@F=x80(5hij<$+C z?HvlS{@%1bCp%ocL8DAtZy-LLQedgMvOucFkcv5-AnJMkWg4tHY!8phWYx+t)-FED z5WE%t3zN|a69>>eBBwfFg`?ZiYd=}9{MgOlM!@moqDRB1Zus&`!ZlNcE0K!V+3fbd|9;(M zVXsMFmS-IQTRsGb_KhpbTfato;^zJi|0Ax6QbypOCZZ4fD>@YzK&;hN-QlyTsP$d; zaxZUP_U6t&>q^`CIj^;D@zMQp`<>PK=@;OKpEx$2r4VP4T{dj9>H50|@3m(8CVy9D zdzQz0EgLjd%jeQFGpb$v%|Xj}5O zAOxVhY_WCO$nGd2&HSzC@d9-P06!5;UMAXX)4t8tX1{e^>&S9>>2P)Phu9)wFJBEt z|IQCr3*%CNP(%?r);UNlb7^WgN?RJ~%tbZqd^cvH2$UiEZ~dwXfMTH@VnNaKV6mqA-^*qlDylxDwGIU;5Gx$$n<+8Zlc$+N0c zZ`8joBI{U2Dszz4)6R(7rgbC10QmAiV1d+CgOmbq$W|k>? zMO&$q43G;|xWyHpm9F1lRR2Ae%dh~q%)k{6^r#X74|Jo+BtR0d!EnF(4901p$GU|T zMh(hg&`{w&ie=6ag0Fy0xbn=C2-ASlO1?f0Uw$r(SR`^m26`ZG**=KjD@jwtNsK}$ zO+IZFQ3zrQo^n?(WFjED&3^;$i6n%Ap{$|wn zihOQn=m5VqS+;1!RZXn%2c?$G7KZ`yqjA`tkm`cST1rQ~{ z*`uR%4Gjs{vN59%CHJb~&U#SlW3Qyef?pmVrO$Qn5^BY#bG_%`L45^GU4FT(W9jX# z5Yq6?>{xlUgid^rs)(8j5SWJHhQP{;ukKloMR?+`y0h)jBHn>DNON*2wB0lQaHy?7 zB$-;;8FO;kHM*$Pl5zL?q-`h;EXg>S3?PumFp)#xs~`+1OY*YY$EmKvRfUapKhB@# zdUlJDu}O%m+xCu?iw+xnu-M~m+1YZX+kqZLVX!~cV+XdAqX%|8o!akBDIeo#mLHrunhPZ6PYM@I{Z7%&3upZtS7gIgYnSOjP1d89} z>sR&-A$STex8%5jpd5+5f>Gt*`#UP`{cU&dWAF}?v-#=_fy=(cMv@~b6iR}Nkh!g z^5?BqzLHoH&jyHQBHcKLYc>`U2{h*n5kN{N5vj-@&hE)||5%D}MrhYTRiYyd=h zR^>o9Xj4@bF$$!B(Dl5w`n)!#xX`nh3h=g9(-zo3>$27uDj`tCO>F>ORQzajx_LU2 ziO>uvLRs)6o5J@Cz296}Wp7q6jtHt;7w*@AGv|%ncwW59=$DMaOt(|XJL11|*(808 zYj5wa+LlR{e5rlQbU-s$^ z;-&k(YrscpgMiEQtnwKDZOJ)wIlke#RFsvxTVA8t%RVt!X_L-!FTC)azkoqSwTpuW zR;-|Z38B3V*{w_gG=r`O8PH!{ZNOyd%`5CAax+qe$P%We_p?IbFYIByT{SZ%pNeZo zO2q3!q~DGh2nR=EqKSv(az}lJeU3gYQ4Et>fJR1|8yBeY zcHE7_OEfzi#+;xQK)rJ3VD9P^?tZLWxh2myA}Aa%3*wx%J=;9|JDMDUwm?+eG_g(1 z5N%i}c6fdxv?PXKPOQQvORrcb{ubDT-+RrDDJpAg(+PEyda5@Or{+b@kcOzK8HeZz zXe!y!uudQ~f#ckM^+o7OP%sm%ZR%ZKL$zzo`(DlX;78>o?}q*t1NyYBmZY6t{ymi$ zFzCjmO(6s5I}s+u_0bY^nSVpgHPlVh_Icz`DQqZ7wK4yY1q$c?B& zTR(>aB%`j&Vcai(nERp8w#9uSA&CMX7l*4zEE{zAZz$alD1op-v9nc5sy5jL{l|ZG zcnz(sUFP$ZX$DbNZd>mTxvMc|$e(|RYs0Wh)&rbhU(bO}!AKjFw&x zW;X30{JGDh3;WwQji6Lh*t@yl-E#-%i7eY;ST{508!7X_n5^5v_&5iHAT21qQ@VQ2 ztFW&+%kV$R-=jJ|SormMe|Y;OOhn9O0$RKO#*9*V{S|vKitde`8z*Sy4&Of$8IG_dh(cGG zQgP){L(qAR*HOa|%rpB5zOARhvb~?#PNiiLH~Lcqj4YqRh!|QAz_A(>)Ca$Z6mKnV zA5+l3s8n4g7#K4)jOs6C@+fS&^;Nc81IFCE==}_R(M3C zSftQ}=r2xX;Ym=P_hcYSKeNKYkVf+zY%(grs0R$=5y9vN#IWFZ=oZ`lj(d8_pC*{1 z`c8xjOXB$pYHP45y@cm?KVV8#j7qT)X(nz{jC(ngzKMf&fgY!_>aXSj;QRa z2RWIQk?DW8a&cQZVRJg}eN!h(u7q|r)d#WfyR=TKe$;xWY+j!pe>PrOFC34brU+k( zTiWQ+{qpR%!vYwFCU+pz zAQc~(ZDJ8&@^oqDesg?ANO=CdUcxgZni0byPWIE-PG9l;e6H2$>HIYiH2a5M8CJ&z z_a%q9vtLi5o8KQ@id~;o1ZhXmMzR{&0A2GR3{sEX6PDwg#{tllm z%zrt?m_-X7ssYu^D9CjhrsH!C?Dgo<6bq5_jy!R+I9+?-WMm3Sv-Stby4HZBKxs4~ydG*e<-Ih=Lgoq*7&EmZZ%$6Tk69KH+6_E7@nOT2_GY2%3`33{7 z?`L^}V(d0L*G3`z{eaK+mt-;u%~4e5l0OOO`DciG`lumdqw%-m$Z!X^w#1JK-dWqu z)|TyTdYbn(H-$McoU#Dthk6hM{&JIX1&IM1^w2D0+a46)Hk=BzaX+R$_(CXxYcWwB zH-kV`%$YhL%t3;;fBY+FqBBDIYJm)Y!l9+ zKC)ckhZZy;m=u&K1tEPU7#p>i0FM;ZRT@ekUwWRwDE#EFbWp4dj%f!ji6C>t{6>pe z;O}9GV37PdVgZP9bkKt$X{FjS^r@X6w4))cugNhJFj-KPBN9CW7HH@n_*AR6v(J}7 zYdW4AU;zB;acCgM#u>>(U{N6D##e*ePk4TRtRVk)10d{{w3e( z?3;ftsvHE16Vbz=#T*NvqlCnVZNc!a*4q2d(uY8WAjCK59{>;bS4AlA(plJfvhZJ5 z(kvbK%MF-6>^dH7%pn!1DI?2OCn0Wk)%JHqt)k|FE)qJzcO}~=4`N%V0i0<$RHyCU zKZ8Q{84bv69f9dLKp5sGh)gL5-~#}57*ESq4-w3buhElir6j@1Nm3u$^+Hgpaz@D6h_X`FS06Tg(0@)v zU>LUw`+{iu;FCGL0Qjzbs-dQ?%4=CP1yKMN@0CPlLjCE@nV>VL7im(c&YTou7`<69 z4sinA(8G<|p$?9DDcsm=w?B%dhc*YYP?BW-(3^rNoV-sNiAR$nXrVL6eLtS9efnN; z)^~xQ_HNy%eSUshe)|T3)S^~c*jDh0s*~T8l%Der!X^GW(BRK5{s1D~}@O~a*qUnS=hZ?o6h1*t4JYC=gZkmo@F#f8pMkvyKV zCb&r}083eJ6m4FF#k1$vd$nNuiR=1O^Luym%4^H@cBeNKZ#L(fvA6wZ^4PGq`?lxa zFsKXSxj;@chS+04=&3>A`S3Mk*XuK$?PodTp)vjO_>tH9=u`?}MYMQW;wlNtNCf-& z&UKcq7!wv{y9q2$dauDbF@=afmGpKA(SnMg9`E{|nh(S8(jBa+e~#vjH|4XN;2%q# zHwGDIUY)*d!B>s*S`hn*&}$fc!)vUyewdnbFN+|G!QegeEU{85fsC-HHLeJy4pYuo z`-;y^=-V~~&fufpb6cuY;y^W~+9;gT5<|lq7-#R3YUxiQSvBQs2vpskcCR%uAvjeE?|Q^ z;}hjHv3VsS37NzGKL626pSd|8G+}rLU6~^Z6K}DU?fmhI1|r3 zHIjtcg2M;140w9qiDQz4%UiqJ6w=7672Rk+UQXi#Hj@N4;{-L(>Mii<2ZRicSA4mu zDIwMTnMik43B?4|gMk*b2HDu4#h>C&2p(G-M7T^L%<%574@0JF_z0K1b*@Pk(L|&5 z;0iP_Xhg!0M?Btz#VtYvS4Idfod+ShkLiBNXLS3j=FyvKQ@hw(EBhKq7#5a@G|>jJ zln|)R;!IZ|4gBSN1}JE)%4Uuw0qS7U;ag?U`Za$4hq8C-&a`a;He=hiZQHhO)LMcgj zdea;x4GlV@L|$6XpyW)UPNn|Wt>}afBLH2aDPwo*@1%7hSV>~rrE{>`zCQ(YfA+eR z@*ryLkQ=Mugz$h9uC(mjEyssHPSF(^Tsrw0>)2TJV-_a!z>Q}Gh(wA)_)yS7N8><; zMsX=O6{;tNx?H1>oFe53JqO1a)ES8mU96`VqV_y?xW6s1U)D z5$XNb9T&1w%NUzD+qrRTrvDG@Snm-a6<$)mqOm~cPsoM`hgtEYzZ0kh31DX#C9T&P zNh7QZJe{V$1Z4T;vByx?;36>Zc#5*@)s0n+d_!F%^*ImRPnBG_;>fR<28%N2Z?KiV zJjzUZP^1=~xVMTtIL3jhx+Y^3c!7Ft$lXvg8XGX^Hj2pN`DhJD0$>29(09PZGXM#= zdecWiB)CFr|Jyc%j+iqz?i}9v?&?#DP_%xN{t(FPmkdAjVHip+v7rL9S`&@)0Ivs` zXAlC+x1u`Q@8d*SonL6~RejG{wrKOItG+L~uSo*M{_}tSz}Th#eOqpewChJ#JfvB= znpA!Saiem&{%rdP&W55Ts3UZWDxpgNA zNh9YkGLV;!62DEYB(UuZ3pjGp{+&t{P#IU) z%S;}rj6G>N(I9ZF>@~!?Zrf>0Fk({s1WFM)lM2y5@rt4o(;m@z0fXYmSTVqhY5Vd&QbNyZUssfG6w~zg%#E- z2j;#;7Fg^o;)~$J=ydaIf_xA{aX0O2CE`4Mc4vP!@9R{2o(Fb9xI;yMo$NBduUxWK z;dwwRFt~K+7Pi)$XB|(5?mMvqo!wMf@7yN$w#-F)!nmsv1#DL2mKi^z7<<;K-mMKN z2T|?zF=P$85?gF!Va_?1u+)jwjscXM-biDWpksE5ZOp^(aa~YH-&A0CZ;=Y<~a`m6h2C`3yy?l;#SN<%niI;htdAr{1MtH z?8ekoxcWiKX+yhq6UuE43?D4$s3+nZQ}C)B z$3%EDztJqi--=EcwP=$3^G#|Ny=_k(ymESFzvJXB>b*sjLxQ;ZxH zX`6anQIo~aBe8X)cmB^dLKeL(e%D?#?(g+*Z^_}JpsY0B!!YQHJ)(dSj?W>CDG>Y( zOB?rV<-9Sdt%IF8(G%=a~;rt3F)os3z;_$B5X0OWb6nq@#;np4Nge zopL@`qw-M{u6Urn>haVJ;k*`gDB=L&K-uf!4t0z!&%G zIq6H|^Zjto(nbzBat--fyemh|z8a}FF??vk^o8;08YuRQ=Onxn8vXE*&K5}5pn0L_ z)lXepK}glQxKs>BW?L;1X&5vA`z-z>BTs@~YsK#_Q4wIBG{&guvvz0C2dPXD|>rX zykp30@7e|!S@p2|w;KfeLdf>*!nmtV)!NSP-+>$Yk8P7K7=6;orE6w)u0wxB%wjD+ ziIhqX35++embG>4cRxuUX-Fg~%wig23S4PavTGvH##XSAMHOkwe=CY*1K~;;Wr4m< zaQKo8mnc>`=;dI1In=@i1Vfx zH)ZXlaPMf(LarE&lrbn)=dgMHyj_peA+}V;s5pGn=-`s2YAq=@gQ~zB6oOuI{x&lH zBTpC#z&UjDow>gFy!lfhGL@&3x^>idHLdUPTk4QD6=TC{@*IO`y)8A z@=?zfmdnjJCKYNIeY^vBqTI5w&9b}sXu2>;Nkb(u9#mJ>_9Gs|d-CUy((7*l*1tQS z4VcX4OoNhcSPU*4Hl8^j z_j5gbp9UCOuU{pK)aFOi2sGy-xP22tr+fU>+T%Td#`8G?oh)GUeAhfJz>4$7@-FA zygnnb_diGvaA+@R;bb(Jc#b%uf;H0eICvTX~4}oXV7131fiE;?k&0QWU zLW3tsY19554$WOc6jbuUMfnx#2)n-mU-nI|&OE4ljg9+%#j6Urh0@J;XHdjRkG;r= zZ!AjFsUR27#P{+AgU`-@*EQ%x&INIXA#lJA*N~qbBfEOu%V$yWq&pJVA^yV8BuK@F z^fVtW%X0DU3IE9G*H!O+hN)LqJZsg$noWh@jT)+|hezDciUG5P_p%yU%utJ62>$w4 zO5dG~k+se9-oZ|e;jR+v=L^iM1n}Yuyarb7?I6-4wXo7{+i@8PI^Cb~G@QNgx ziIu5K>4%bb^Qw|M9VGQUIY1Ei^E?_=gQ;q4gBv(SBB)>pm*g53kZXM0JzdtzVwwSG zeihvSiY~o_%C+2A#z{@VwkTEKOP%IJC$N^MQZ=1VVtWWZgVLIu$W%axXR;XwX68U~ zj*M#`I71YD*0toq_?|ZvA(LPu%i?Y{MNS6NEQg6Cy-xzVR0F|-PoQe=z!?QUf*&m+ zmBN6hB}#yh%<)lH2F4-U=HbF{@#`__UV20HZ*UN zK`pV`SaEaKY}ZZd+RVoFEUdF_Q>~svsZ@9XTnH=phtUT?O1q%*@<*TdB{X|?GL6ZK@Cq>TxVA!y*GyVVA4Y+hX zY)Af=+czi_RD-t$w_Eu83gp`T7VtF(QX{za6DZl4*9XWN==tXr+ERa*-&ftS1lgxl$kRuizH)6r{mG&x@7J$ZYeJMa?@IRnF@F{de;w4E<10bB`Ctaz{(P=Oj@hfrnP)6>2bT? z1;Wuxr})2}zGw<%Dh(sSuC*j5DsypB;F;sCQJ^T#%m#-WfXEAEsf%BSHZDAp34#qK zVcn%58(9+fGYIc7JC=$vC3tmw;@}8V`MjoT8m=acs4&{ubX@`AU6G~ijb?#Kb%sIp zfhCo7+f4ZG+ZFysU&dft6u*h17%uT|?Bxi9pV)mk2%KEhMS6 zaek{X69;zHo;52>{P>NLBjM=D%P260ku!@hEF%z)hm(=j%@+1*0d zT@7--U^YlCve=|g+IUPx2jlzfrRp-(7(_(-aJ<#m4n%Oc`^gVJBIxn%t#XG96*(M@ z3c9hbC&McIGgg;S-+QH>ICG-B^C;VBerrFU9gkzX!z2E9!W@mAYt)!eIo2am7R72a z{}4r+z!caxy93C^#SmKd*AzsGBxazMI}s3aTke?}=ky@{!Jowf8LoO7sdgHI!psl8M%Bs0uyf^v=@^>XK>)8f=)2{=iFsgZ%24&quq2o4V%+#wkBN(hGo zGQLIzQlv3*?K=nKvxR@|vj-;(Yo|UR<t zAj8a9p;VX-^0cgZK}q%0YgUM4uafM?uBoUK6N_7|00?06fe*-1h>ONAQxrht(n_=n zNiQCi20PlRh%iKJX{hQS#eK+ZIvd56-Z^uC>qt&XTC9-} zhKAZ>O9B#WP**g1Z|LfxA+t_|oemc6TZ5EOdmWhZbClPbuv$tYw4eCUP*jE$UR#8&8N(*dHCxn@tPrg9sc!aLc82sRZC>*ZI-c z^!-Q>hS!eb-PtAf%g}_Ck|i;0J8`a-xZ&7vFYRtEzwK)dhVLu0AgSld|4iF_YVlpv z`Ak-#(wptVwaf(Ouo~UMwX2i5+ut~Nod~0$*|-~4+y0)|Wl`VGUuQ;}Oun>o)0=G; zSb<#?i@%%g3Z|jA;>2TI8PRPSC7plW;|IxZkAA5)Hd>K+hLgJn=pMt{)m^%eDX_w4v@;JZGkQkPPExv6#paVAioc`h11he;$}|VyWx1{FWqO#lKj$SSHG$zcVTwXx8%AE1+fNrzk0H4Kg6Iq!gr^85sJ6> z9e8G|kb5vfc}N%`Ekm#YoNrIhD-YGR5Xg`VcCt9EyOsrDx)sf4xyi7qR6q){=8FoZ>wEaJmwODQt|+-O`oIf9^Q`RMZ#BFxCNgs`$Bm0 zW<636=ePa4KdSjBY7!)m@#FjV_~cpt)#cN*OmONe%SVbTPXabI%|*bn{D13x5yFS? zd;Vu>$n_saH&#xT{~2#sqPv~2)ruVOV%VTK;@~73vs-MB1puLR(`6HK5sKOHPjqzi z2!5eWUb!zB`?rJbFIB9t(esC~4MqHiY&ev;3+FX*;Gj(B@B6&{)O0E+)mlGHQ;Mjar?@wA48Bmk}UbQvC1?_8)C1h1R@)$^_9{MCn{Sxxi8VfCOOHr zamz_IqhQU-6dmn9=k^i9hN~Mg0^4>M9JN(&^OhbMG;gRpLar-QVrY67<2He z+Ky0T!^v$YU3oyMlKj_PLT>~OMzq#+oGMjHniMb&dT6u}nO!g%IXF#$)|{0F+|f!s z1TPylB@sCK0ps2C6BO;jN<AKQbvRDfp6a}{#0vxLsK=r{d zQa31hm@^!Vir@JRkq7Qff$bruuEQN<(euoxAEKHq{$4V5A&b4=$7*k<@?n(=3hF*f zrmL4~J~=kcvn@y#UOg;!Z?yhgp5E8z5W6>JQ=B;PlyVhe;W<_1aeOso`aH*bqAdSaB7OBv4vU{Xg~uSB4~NvZ$@m$St&J z>zzjdCg<2?B1pEck*as<{u>wRs$b^h$BkPjE8~p1lvYV|)R(TZ#c8)?8J2L*?H4_q zYeQhO)kHdfH~fN*jvg2xmwxLyn?1$&SZyf?5hBU}bEYROmM0l#p{j459K>M=k$+Yuk#*94AgThUwbF4+-bR1=;gzOlx8;s z-Hpz+AAB_{m<#tiOZa2`l7lsYy}O=4##JbvzXQ?%!#wCbkQqW#!>B*6*3sBIn?yi2 z6NB5PLXOCx5r&5YG_v5IWKn8eU|C;>ie4u`cs zS=*it0^AK_h0HJdjeDIl@ZwyCPNx0BZ^E)b>I+OEA@ zea*(KJ4>{&QF~4yL{9>$w|k>K>{3ueg9!KZYsN4h@A?6D7y9d=+Z*r{aE{|jr|rYV zhbCdb^WJdJ?ija#P#K#${n}BeBo>4&yyo6gs$ggY62KG8nze3%R2}g`S44AM7)O8I z_x|>!WX?|aMa1)$Y1_Z|yj??xoeTxfL+~qwWy$x`Sz&1yeEJL!U4q}zUI+Q?Jg9GI zUIh2w$3R&N{4Eisxa|QiIEQoWPmWoQv_E>_NZ}Ji7r~(0(aj>sOqBXAZK{dL)`5lK zQFR_qJ@eVXT{L!QS85W^vfE zWEmtR!SsWtO}8drGXc})-hALR5a~5a+JM`eFVDMT2`YH+(nl-p*TwPbt_(WL>SB4}x^-qN_m4p!sW$&E)5rX=B83&p=I&(}fjBfdm_N#hDOvqMZ zWt<_Trh@#0wd_kCuF6SbW$A{Pe3ma{MQ}L*c>dnU#`Iqltop#U$qX>2X^6|w^riPxJH|oAJ3cgk7tdz# zJ*avpbJKGk+4(|a><&2wNT^&y>~x;bBjjTB%UU1v$roAHPm;o<4)o>ol~H(?Ze z;}*^vxNWQ&xDbhhodh~)ye{RxMGeVeYjwSGq-9P#8cTKGX=ixobt=en1tM0gB= zjDf+tXZhn`G&A$>n90p~GQFL6!~qu0?nbY_CzJQmU%O z>2eK}5}72iF|j(h*@xN82q8g^4ptmkHA(R`Ndn`X5{+;uLL=%kDYA%k5H6iPp^vb%Xn%`x#w=S=ey4r!fZAKkQ zu}B4IPxU80Fi=B!2hPi6K>xh^WN<3%o-A;lBA zoNPX#n=71dr-J8Xx{_xCsTr_Uk%w#4JV%EL`voAU)m!7z6q8Cwz*=-7nFUbb6z7vl zyO2vpp3yiNbk#5;lo7PO6|ZPlzmSCtdpFGnp!M#RVq>fzoTCI@GP#hDL*c_h>&^MD z_C*^!acz>%loX5?ACrj->7brDm7v(y?T3JoK!@ZP!%Uum{r+heW7TC@{MmwFW%So zFLpd=6Z59$+846Tp2`gpd6On?ZG04AlxO`)d%ZnKi0GSfzC8)3|ABaT_S>bWiWnlO zi(^5ys)tYfHc#m`{aO!$DFR#mq11Y!LevgO;uoM|2sk!&hJN0b?hnt}Ucub`$M;<04ljuY;gWZV5L({{ly-RLJ5#mesx7SSeJb|;wSSBc@wDIf(r6pHtiEbpM z_?YrG|Fl8E-J3duzY!$HZF5i*ocB6IC(HxqLpfvQ;W*tsNt3v&Bl~mKDw=~Na80D< zhI29XX-cdMOayh$kSb1x;j#RXkW)C3uf(>%fe9$K`?ixjxy823JdH^kbh}{;%zY~h z>1Bx1rTjkHAPbTi?0H@@<0bQYLtNYkYxHDH%I}2L8dsIIHb4}R(v4Ygz2~c)U4m_J zP+Hakvrk?-V6;Z-lHI96ZJoA~TS<>Zaw1$2!>na#gu!OiK$O*quoj>6^Z|Jm-}Q1R z(%0)7oq=YBOxz1cio(C)2K$l=3h(PaVCaWCO;EnuY0N{_X3X-L)7**3q6TxXFS^4n zEqw)ZF$7End;iYuHN$H0m&HbP#CY7rO6ppk@UlUFd@3ioHL^_<6Z5<{ODz(T?=fPm z$R)tmlizAatdRA0?w8fNA+eVnbCi{ZJ8dDejYJyh5cNA3l^Ems`lxXdAZ8p|Z=?op zpJ^?-|EcSS)S% z{Wh3f^W4O92VEz64V3R*7k0L4$8zL}P%M=DW~Un34zhj3MPy3@J_87eNG_>l4z+|4 zKp*peEI0$r!aZWqNxi4)cA3$3+bh3+x1W zsx$0hOGiD4sa$4co40Sk+zZaAoRDMm!+g|p)@vNhJXrWbhw)pRGA}D)BtW*0o3*{s zWM!~CkG74sCrKZW*mU~pJ~KpY#Mutc@*$5z@^`!j9XGm2bHb3JP$^7=GFF2$Y*d(=@Mx?61( zIGHPc%RYeI?=MWyi&OGsNs!}f?>GrCi{My8yQ-jY5JUU9mYht}oFUcm$O) zEHb&C{EBB>{QTQ?&MRNwK{4KTFIQ)z9%%VI&1cvN#6~+Ab^t_726YFh-hhUEzY)nK zVus7b{&N*TsC3BK=`0Sj@lO(b)xRr@hkJ&CjI{fV5yqv0rPHx4?+ektnOf+-`dhC5 zSAVPK1u!RKR5Y4M?A;MY~RNqdOKq z*ndcL31{7%;xt=XVJl9&?*mhIJeun%Q_W}T)Jf#i;VY%-~N8!lPtc$cosSmsErb})xPn6^WwDa#4S~gAUJAQA)+u>{dsv|<5 z7VtK$*-Z&es_FL0oMl2s$t-K?BV5|dkG$O15z~N`< z&e7e-;p6Ti(l*b1)c*oGSFx$}N97ra?SUU5tF6tAPER&FQ!x^;N}G>MPmZ6hI`OQm zC3Yz;-Y#p?mlp5d#gL{?@b5Oi^bT--aYddgXF-(btWFjGd$8UVGtIf5DhvuN)r*)F z@cC%S6dLIi9Zut`zxJY5;%hZWo#O=fIx(St#V#1Clh>#$6dhA~B3!BBh*Qf8tXXJx! z5H{_x%ZHeizG+xDi1u>)&wu?Og7e>wfn9I-+2&*wB7!Bu^vKD_b;S1Qi(?z%^Vn%l z!0z|!&9r8h;ZRj5f|eB7l|c%gZa^IRZucnLb8y=IV0wBw@6?A)!W6}Z(1~9arDKlN zv7^47f$!)3MBcyWn+HM6tUCAGfUVw_)Wyr`wyZvfUjNjufnvWHL~ykcxW&*#i6BR1 z8{~QdBM0SVqpkE_(I49s*7D1-2{SDJA%+YaJf)cb5k$E2LSi==y^OBP0OPN3`G)%M+RJy z5H~CJfQ?^mZ8oPTwzL*#mrbUzN4>|i;;q4K8~y>eSR+A-9ACpW$d5AT#kj6L0wkfS z4mV6x7v=WiCW0ffMhPO^Ik_&lD1d!@KBsWAJpBiSJ-A5qLeZGxH;Tx63zx*y-`s<{ z=qzynjjWx~^zwoR5W6n7S)_+Twhfxo2-g6Uwk!(b0Thc|-PE>dHoJ5)8DQyxjE7Y_ zZhlCMf!^I42S>hUB>I!&6vk+!9|{HD%U0rj=(;=nRVyPYXwlEvr!%Qmb8a;h&3)Zy zuO-zJ6TWpp%O2M9BwlI9Yu!l2>5Co*4hJaGK4G$>#y5KS{Emh<M9!O&fR@4&!j8gLSVH`Y^QYoT2;AF;O z<#t)n8X-OTNUqr7*w-7r-nyJWq+yUrOo9$KY%R+nMv4cc;r2a{B0C|UBwFL-Rrp_> z@i&Gh*!SuW{Ecx%0|c?K?qkI|Y#Ei@>iQgO3sY)l`$oYjYG0)pQef=W=ka6c9Y9pgB=NGh{+;%bli{Wt;ADs+2P z>fFy7gk3jd3L-)I!BmAMuhLr6LK?il`JZbr3t&j1 zcWsf$IgYSPO_(>nSF7rm`TfrMKySGNs@x-6BM!@AwQZuGZGzYCnp*a@aIVufzdO+h z#gHv`+#0BCSBS34;Q+$WX|M^D^Hv!m9YCFVrB~MC)jKr|!TB`qLs1fBa_$p`g36`H zGR@nhpZM?slC6#i3}E`v47hf0fEm~kBTx3@CKDjos~yAx6*OyDN#4-&!^Z2BIjgqB z{?=2|M_!?G50PhRb-}nj%B3$ds?#HnlryH^Le{L-S(t8r;>uYBhcL=mW{?SyS}*C_ z?5`RZhlW}eR`hFiQv%Yx09qDGbyWltP5Aj*aB6#P_t?N^mcwHpiABBTB)t^J>5ZccofEnXW$g%z+nf<%avU_nNNa@DZC>gIySx+@LrycpcW=3lvp zMp|K4l*exrnoEw=_0eB#qwZ>yuD;RQHRIh8TPeB<$`qZmhDaKL>07{dL2pPBf)=1a zIOfGiVq96FmVLIecnG@trh}}t)8L<3lytb(3Ik>)|D42oDsK)BNKsyW-%emsDl$fG zVXF%)j!4hN>*jAcRtus{T!x-;cxh&JSIO@z*9GLjRgYJ8!;Uv@SMmp9qG#k6j9}mK zJWS(Q%kTa*QErG?J@l1g_Q`yGCp#5g@Im9PyG^?0+IU3}qsUbJ+_z!Y0Z_Mz&N=a^RuKzD%otd4DS>%D~{$PlCDH^uDNQ;%BDH~#fbB95!bQ7SA(XrTCcc_Gerq^C!P zXd^+^B^boU#~V7Km{G|}p~RL74=TxlCY3~@;>A)7hkqTa*vxWO-LLJw#u6$*}n-PdV-0^L zfUlvC8b(f+v z|BCeUhm8g5znTZy5Cg`OORU#&JJ1-JD$K%CN}Tw^RkvJOZ=srH+%{m05Jl$Ml!36K zB84rE7hRXfAb6(Yzg6B?VSYNZDtf=J*kcGk95rD%QdzmY7EH%3QBm{ceLX66Teq1* zFljdFd^3f3^2U+$D2d9wjb=J6+lwVe0*lFs&^Po*Z8%ogYPy=WLBgQnW-A`IOf*=~ z(v2EztoWL8-BWb!?*8v%OB2-F?cy)LUD){RH%B%f73q&iVuyc|G@G1i1zj*GdRDIs zDFuu}Xt;nb5PxD($$uO;j5N(`+g()A4x_ITLK=^Z3UvDva%Ww@UyUG|XpsD0xgkS>IxWrQQ0qz7f?BhW3wE1~4j|CwW z$sEy|-Nty48U!)k;jsDR_*Zzxvo+E9m&$^c#-pz>2k6CJ^{<6q8dL^YK`K#(SYM5& zt={ve>B&kpR`sy)F`o^#e)uJ*STDS9>U2<SN{(Etfu#Yx2e1egG;D zJ31T*HYYDlc6}&%+8T`P-|{)jRQFO?0(qRg=k%!VSZdm%VeYM^)Zb&ZFU9-c2>)hc zY)E9Y)5KoA5F#MyINS0#l=rmXz!b~R4W|UOp2ncrhGUuYjWoYvFI85p-j8=gz&zly zqy9LY(QgHl45+N`?l@Ig@y=h*X=|TwzOW@08S48S*h8xCU-&$^1(3Gw=!uqK-{>0a zMs8%d_6A+{Y#*Ot+IH*6N-e5;Ik}y|btKAK+CnbPjO$H!t70HLg>~|rw&r^!m*@RkIu=~2-STfm*-Zm3>ra{n!O+OMlqoZ=SZTqZXK;%G zTv+a_OrLlkZ+Ksr;aywe!DC(w<-Z}*oaw0>1aZ{+tuiL?;TFas$o*>;ZH#E=UrA1Oz1wp#r~9(~7yvQh)39bc*%OJ-J`;&nLc)8eDE~FNG#h-MXxl8f zHB>vlXkRYHYUoJ!^GoF%YltEW=440?t59j%{ z7h;%_kiz$2sH#n~Ze|DF`5=>XLGDMnF2Pz$vBIk%#oVEzP+N9uPHe%cDL5daBYu)=q#LC}NwbDf!(4NE(n4eGJYu_Z z!*!OCKGr0R-kJZ}t~NAt#~$~S>fTbn#&SX4(bDBrcYbZ#q3P`68bWuoD=0LFLBpIE zwR~3MF&~|7IKHt0@ZNY)X`w%~SE_Tcb}jdQZi#ne03!j_>2^_7q%1Yr+#E3vlnL!R z=G)b58H}5a`o&<^j3&^3l-ayEi-<(STLXYQ&0vG%aX7r&trCwQ#R6cxc^WbX2Y-M@ zmGLT>@dBw{VEAAj+o;p8+Zl|Rc=Mz528m9fO>w7mxxQ6|zN(V~<4W1oW}phB^W{yq zFvb_(DQQWcIM3V7zTWfWT2Y5u%0%iZMv~RqhpSkFqBj9vYZ~RynkO;kRsH>4p1$7R zo(pUy95(fKW9g^p9~(zQ5}s_p?=@(yp*g7Xm@^NFV#CZdyc4G~tqTLEE`h0aSR1?l z%IRiWxaq1ToFABU&cQVFZEv^6l=`1tOhaC+3n*Ru`o%nl$qL~=84;n5uR_5<3#5lv zZR;A!UV%O=qi|wWw&Y-RoaMdfmtg%&weuJ(ix4p4alZsW3Vc+5E$DY{fX{rQmL4Z6 zai*ruz{Dsa7-{Jo=m;1j{J_VCwsdnW2Ejl0-y!!I#@J>fr2v zOn8_}JCX+s_PY0A?oM?I=tWRG<29caUX=$y#%mY!gMwz2Mj>{vHFebc>e!2TVu~wiW2h#lAw^?TWQ3Z7Wgql`*id6DKz+uQAFCCIx7suy7tC8< z4cCT(&7nzvy)lnB{|c z!g55^K8#DTkwkd`cOB zoC%7ucu25D{Xq7RbDKgI8!@lHX?*EE+v<wxNZ(4KSVrX54oG)RE3%*;sFHA^Lt?Q1eE)ujnH7f0|3XNWLCzRJ1zoN332Do z>EaxH)pAO^g~EW1IEPCjF8Ta~6$vC68Jzf=h^^!Z7sddnmUeKr)z-ZL1bP?q_3^gd zcdp3g6*sa^ygD~w>V1~$6?LZfi zvFoPc(!{PJF^Ggz6*U=NP4hJ;naY*k+H-Y()M7J^{u0K*t?n<#)(BIDQm$5B#8HPm zwyXYd=aKzJ*6X84EHFDUdRf~;0Jf>~Gk~2sGx6dtSDu(XlBG4hau$z_eU=m64+C0) zPu4EXOesGeC5y!5qa~!MPpDTXO+U&IxcOJ4D9g*RQX9uC@8FMnaccs_qf&4pX>vn4-QqxWxpycds#?Ph%o z3cbfa%qxL3MTpGq*uo4;2EZB(u2`G>VDnZ{ys^h~Uzpw8#dnkhMq@LxtNUv3!8y#+ zs4vx~Gw)?L@CY;1LI{~t?XQ0{f8nu%zK&E?LA0V6-jPuDScV&*F@PWdjH(p@vIe0x zJk2_tii{V|>i=lbgPD-_LHt35oKl6UZ^uFYK(@gpv_s{nWra+koTk%TlU|eS!J%q7 zFEh4oewsGHe-T;}RBqpxpcV8;!Q2$R9>y|pV8h6+)(2GD&{W$?-l_7ydMtqy1xHH4 z0!?kRZ?gB$xL&JL`N^AxmS_nD2qX+dd19y= zP|1O}j-UJ^?9cv$D6CNH-U_8m-1h$WkVZ4|H8f_OTKH=PkwBD2<+J6fa2COfiy}-3 z^h_1$$x|;vp!{bOhKSZE!&!~dm>zms-1l|VW()yVFf5FaKjG(V-XzP%_JNsPewZtO zG5VKb2z7$M7i73!L67iFQv@dP83jb^h?on3M|57q+aidGWnLLiCedc-Prr@?lXdhb z{HJYD`Nq`>*D*@KjP&YlS9=j4a~8m;>EgqRREiKgUSEJxcP^UiJV~yu4#8?&KX@93 zc@MlMx8?|g_>rFD)o$CboozeR%zjRoJVAo^jD_sG1lU*WUImM>=wzrf_`;k7;7|Q$ z1@bfUU?Orfv4P>^`+o)@%-r1nvu9#jdpqIBGZC=cH>g;nH>`KBs?vyQ#5jiDBdVM4 zH2;6vTe>>%v1G;M$9d837hGql@#OP_o|^(c?WiRH*W=;T9p?_m*V{M>miS59FfeFL=8?Sb_&tazxQkZi53lY zJ}AQ|dRY1ZEC7WWv1Lu(%AV_}X`X3sd?|V>Z#g*Dpb%0#GW2a=&ILLT&5>rl=5F?~{)w zi%<>O)SR#%%VQQwmQ2xfjG?hLv_f*#_D4BQ;}zt&fvmo%iZ5$1UoOix3^gy>K^03H zr`X**vz5MgWqSVC<}o z86+ey3L;cCY6V!Z(cfVSMc?94P-#A)2Zp0U9tbl)-;RfUL*s+^DnXEm8=Ahd=4leB zmbaP)6PK1%Hu?=)S-TY&6|^XKc%X8j2reY#j&r?HO`d0^FH`7ZlwO-OZ#HMy@MvUz z^F4taJJ8uZ&Il4z#+iBo(5Wj7tgj;{67Z|C4+gkKY zg$$J@D!IsH6Sz^6lv(m}tvA%FRbjWNz-%1q@qayx0y8Br3oLc6f!Nh%bIb1)-hYe3 zz$ywe)zF{b!(eG7XZG&CVGH9YA zWs+4p#^0b&3A$lRsz!CBAB|eR9=_tLx}xWlM^-#Us45h2i9^~5#;6dZP`GV z_dWvP^q`T^7%=?~$BtrIELzZ0)l-)@@s}LowKO#CPmg-%jk^0~-k^G{*2QoYc7o0UPO?U?JzmK|_a;5sUO#Q*wD8_72i`YyA=POMG=)6zNoF?EXY=yFMi0XwE9#1X zaLWg%Dlw3w%6prFVA^Fr^vBTVf~nvhWKNqxxdgH8Wf)xtp8b23XdWUMN!g-vsl11v zUK1MUapm)Gd#@g7wogp|0uRvbYQq_7Z+%-Rmad9EOWSI)U<~Q|&-r(jRd}Sbe=2QvP3zy;F>6T^F@kwr$(CZQHi1PT96?+r}x| zwr$&eI-PVn`QLQDt9`$+SMrRx#+XBjL@KZEB>DYNqGKi^jQ>VthsAl^zk)Xmo5V;^ z_3(@Bx-q6=MQ6DGU$`x`w~yT*6mPTwLK26mEui(TQfMGCSmDepw>sIKE1H6ku~`k8 zYOk@a2BoWX7(piuf29qhuMQ}m_5%tWE6!Lu^|`7PSVmHyLCeH+`z8yA-z9UzcfEs7 zM82huECJ#|QPu6OQIb{qjRPMfE<8x_OpC_naqz1fZM+eOmXUM>A+59(o8^0(Sb+81PTjYGYzh3uL!uLlcwA_}g-u?PYX~Q}`(Bvf9-ORsf|aM#dpVT~*8M!8 zKg#&@9D_wXbJklWDrSSS4Uw6gwRMChHe0XjjR4TV1+Ood0f;vPT{sFB8>1`IKRA?; z!7Xx4qX%9xKlg-U_)u%psF_t{i0fGQ{Ojz$& zcDG_(&h9K_q4A9uHUip8Hl22q3rEm#_xhz*3uG7eL(ln_8!wr3`5 z#kcm_*_gkx9pAUWfBcXjVBAMFvodgVpZWJMbyW3P^#Y+^v&>`tE}Sj$RI;e`E>u<7 zwlF5;1L{4CEKlH*;b2$Q8k3b>4P!F(^)+`{a zp%VIbr`J15YytMw8Z0wb7tF8}cl9v*<+5fNynMC&L#w5tlc zF8vkEC$5P2AN`8j>PztuT|Mm@{f>noIWMn0^|+Yv9{DaJ;Oas07yT}vhxBXtr_LV} z_xrRdFzl0oG+5s8(Cbv(wZNg)n+gV5yndlFAFBIY+V}rFKFaes0+Z3ryxqyY;pT zAb>=Wcu7tl*|YZ_*3&TazMn3(r>m;q#b%sR%b0Sux2Bb*+cQl&OvNJCr>$Nn-(|5F zf4v{+^Hq?gCS9xyQN}-wQ@_b z$Z48cXuwO+sDfxMHk@=_w!ICDC3ofz<#j+_=7na_0tchBCGaa-cTueiJuNCxySKkb zVCydM@D9A#-4HXr(7%Vwp(!=!uI6uki$_^`Te~*@wET^(>)End71c*thfiX)-x0~^ z#?%Bw9k(eYDgaG#QaE2;_AXeU(PVWdPHHTw>pVX%@u1jj)k^U#5LjJduoWln>FUX~ ziby8u_r+|}L#vB7Zdp)2KJnn4yXF7uh(Z#D{c-7(z;mnm4ccq#)K-<|v%K_V?WgaK znMT36!P7L}NxbpX^JG$Va9>r~)l>di>2N9H(ufe+q#}xI?6T4Qm|4+8&y*SgV^%6- zbv+n1>C%IMDL;XgTpBGqF$$#dfR^yi^5t-lA2KTv|DZYXAfvfKXpR;nY(dscB8037 z=`KF_ka5SDgVk>X#n>HyX&-=Sm}JMTKgL6ON~Eba-1$*-w}I-hu!Sfq7)Kf{oy9Yi z&~q);*o7;DR|5o${AaMavdCO}C&gBieli8W?p#t$NG(!U68bAv8>M|c=`_CxpNIU9 zGW~!o(cgmGNCjWeiG9j(en*lLF!8{)Zz;^`CAXhfvwZ6FVdg5A1#UjY7y~sneT$kT zc|6*(T*7K29$eYapJH%;vj`sCv)Up&s($7gwzJATI?M!DpDyhW4)0HXW5p)g%|d%E z{tsNR`;xi$#+)5J{k)ASV+rk-uGUgFKF|bnHtv@GhaL<1okN6jf?7?pVL~NA62iBc z7$_o2E8gA#%#}C|u|8N^2SWYhLo_CpWn?nXyP)tIy1m&Ffm>bTA^XTmJPePK$-n4m zilhFZy^oT{*yL*qv-}^b8s&)DerkmG(MT7@5id?2#PTbA+AMrNAeu$%M5gPVJV87n zDC8`C%~4hxumFEvXL5*)pK?faQ>k!=Fmz9@p%BAxWBZH7&{(818DR6< z_@Fwjn-s@Wgi0>2XN3w=2DRVI!?Gfl8ycq8&=HO7swW}QT9oGlWk6alhhORI{zx(5#w&5ljx}>;x z#tEZmtUsgks9~071FC4*ow32I?o=z{;B`~cU#?H@3V)WbJB#D2@*Tr!X>e!EeBRd< z{TCN<2S~bRdQocp0yuG(_-s3XJfcy@!#KZAanOBfqez+j(LG~zm zLN@m8G0X7Q2en{r6}$yb*{<&xq@gWotAZvJ~8|gE7EU!`8X0uH<#xfAiAW{!8^5n+%sskZSxXf1r@X!?Qg&IQ-bVx1-$Zzh)oD)F->l3vw>CSWz zQ$*nJ$|8;Csb}-7wyhPF+xxwu{-7rF_9$5digvbpuy{P@+UY0A5UPU5SLzZ>E6(k# zl6s{Q|BUai?L!xA7CwUg5#q6z(s$a3lBsa=x8HC37@n-Ri(Jkpcv}2dv!dtf<&g^s z0|DhqRuZ@t^k^5=D(+9Z+-kuUnE)L~AL4iVV$oge#uvF{aagO9HpvH}2K#^M``34*@ZMr?ui#TG9Q{`!GTPD*j7TQ0p+vyY z^GcR$JDw_~IXWwyszY6Gy;at$;HO-1k*kT#R)u2Pur~o2PaB=%z?i$5>n|$hU#`6J z24_WQ{fA^rH`G8~&*!$5*JDT>80RDv2d1&3_bnDlxeTs!=5Cz?KIj10AwJHSLGq+U zK5og<7)bW~fgqQ9ykZb->BoUD7kAAw0#cH&tF3FV7x0dY8}G-b*7%K35KfgVZrxy+6$kEt+yZTWj91!lfVqgc9m}Gt4TH@Iu%I`S+5Od z_Qjj)UuXIlcVk<3S|0~;Xz*I3tZ?H*PiX%~GS^>rNe9`W@UUd@4qH!9NDPC3Q-c(F zhQo$W#Bu(-(oR~ft$oB*{+Lq#WRKJy5Lx^pjSGvb{rM%`$9C=wC`4wo<_vpGg*iC_ z+WMt*+!i3;<2!L3D&pA(T2z$~wnR$4z%;4B-YHMN$BW*IepB@Sq*PYc|C3Ugnf~_% zlxghA+Rc$aw{>%s@%|P(w}giT{@Ns>ofbhaH;FVB5wCg!NR;s^Hf3YIuh||7%qW!e zJ+kv5bsR@i9=&EK>9x6PF3+p#e!lL{A6~=ioa3ykRbitkslkyc}5@8Y^0 zRT%AvXk-)%Ltsq0eXq$$iy7o#BnD^S*JObPID>Fpv4>Y>x9!(D%P;JjP`R{!)mpJh zS7NYL|AgeVxmr11%+m5DZ=(Qeo3RuqmB4uIto?#I%jzBkHFy&$6B$t{K8fyAu_4S= z5QsUu&jm~G$HY2y1HPPhR=@fSm|i{@JM!R4iIZapnl!gFD7;5y<)2F>ZG}%AFmR5e z6vhWj-jGc|N<=G!wo0i_bp_6lG$_Q@AJx19GdB%MxZ5tUmcgu!pNq4rET;%E# z^$Al1 z1_EGUt$2XJa3I53dr-iWhAtBCfQr4mvfuYr=+SFuh$J-)+yRj2OD9U)M$m100-JEdklY3-rT!ewbH)b1*Yb%f-=sAfE8=cGI6YgP&JCI#k=}}!_`sBB1l>ekrfN?bnQLfSIF^afyvio zUsos;3FiT#S(Y5=srmYM(r^S0uffYBJy))@@#-Fa>s|7`F7^Fqz-lCH z{uKBE24Et&ha|2YBQ|Kr_4M*^I^FOftA>y=&sBYBH0H;nzWLma5`cmJ_?d`J`gv(Vx!qg1+j7iL#C5o@mvXRgBQ3f$Zw(x2R2&iCjh*inDlf=q5e=-f z8vvBIS0&e*0~h4)6!6B&c{1wb}ZOnrc?Fi5XfmYyC`F3``5$A%@lUG8^hf@P#anv2(Q9+GT z9p)ETwW+RzteE2{$mV9~3<+ciy|bbCxwT};S~fefQ_Ipo3khGGMuzi@f5#ojs%S1Z z{B_dgP(uu>@t;cdLiX=*BENTXi?o(?+)Vp8EyRzyw91s3jP}AC12I&F!VbYp4$&c_ zo{k9aSZ(aY_a?{)(HS9FGnJ}M4(2U@S%-N9gMMb>%ZG)1Ft)6j@$Sgc?q|@qW9G9o zL9~MN2(nHs6mdsBYU)AmN0myz;UjaHXXNN|aDj9N?zbVE63s6egA8he zmJI!F{w6RRH%q{pdrvl~_k-emGNbTjeqg5HP%TXh8SvQL*EiypK@0&G?{{rijMe*O z;J}L|8gv{q;NTGA-MiHt3_zfkjcofhc~-Ck{{vAM%e^unXs1-t*Qb>q-g~!K4eFgQ z2Z>8|mDx(mtuDj*j0YXF84ALfROO8cZ6TIqqoWBQLee|tUi(N9Fr1eqj=Y%=Wz?J< zJFkqb4%d8yjNMdIlSICN0HBx6I~>(`dc=nvEDxGRgc10!kZD5&TZ}~cF=H{lzo@qw zPL*CN`!zDlt(D?z!q(iHU!7WoUzzZ<#e`+PL!*=o?DJaG6U)}xPL;EdY>2NZI0W({ zg-qt?5o!>*;Y!r5_|_6e{xKL`87w7@fx3bOEArW^jF+uV6+e{;>ejOJMFX!58iy7T zShXlrRv+f1R;mA_bm;=Z4ct6%=h(k0I-I9>xF7eRU~I_Yx9DxtSO2^I^?YFHzydXcfUmShMkuHn!K+=ByTv>E5fA;Sv&b(`1@> zjpPCO*$l-}u#KE#U_Tv`-@2gqOPHAtg1mM&H*gViq+%!pWh$8u1n(6yi}7Xc@Hsve zXVE(9F|vqogXxKLI1thMq?5$YDAln7@A8Uv>hY8eVCogK%aHy7@8Wz+K*eJ8ubal( z)Pj~ja%71f7-dXj#G{C(d9l^GnupUO-bc%>VHU$(g5cuOA&uHfv4 zL&%qWY53xN8{&9nz2bs#4v3I|&fp^`t4!aWe^t51Hh~A6D6I7*o*9>S{7ZlEvIc#l z3fsumrghpZ5!#R@dCmJ<&AroH$bTdUl-kZeKuyf+`MXtce{@t}*oAtiLF?-O_RX~L zqHT9wR!$~RI$n$Lge4l{!1!e%F_A0+-n%u$Pz9_r3sN8HY(im)pB) zDB8D1R@*v6h`5hb8*{{VjGQY2rutEgLd!@aD6T8X;1%?$Q-MyFpTDYI zp_n=QfR%Ubt6a|Ps{^|_y&bX$c6^V?xsXf*6V!}EgKP@#v6YptPaH$@s?TGI?SQk% zo`u*qcC#sjp&7p(qba$3pUrsA9pfiVLAHUnhi|?~lDoD=g(wbo-}`3jrEZg6JVv|& zdW>5&zV38}n%LVmRrAA=>QAcX%0g*VRc0iP<9`nus{Y0lS=>RVoW$7{HcK;lX`-mQI;g*Ro{YYphjWTr=H z&b9aB;YHb=YWi}6ho=P?oW!YK8t7tQBD^vMk_F=Pz)V|AMMAx>pegGifvG{xGy7`m zhgKaKsyokGq{SIL!=U*x3Xfa6%KFY2(|Zo4wt`I?ms zbwy;MmOvpK0t|hVt;f23Os&Ky$jv%gTU!t-u+sa_1q0fGsz^ zCt=8?yrjM8Y(|gCM0Bt$jN*l3f0kW(i|^)v;FXH>#VayFaq-}^uWlcXCdM}~ z+s@4_?``bRXBAW_Qa%qjv6q{9Q7R~aDSo|CH=nOPPNN3Gm<#{3T->%r9RiHeo9K6h z&0F&Y9E}!Q)j6#FrqvfO_-*q2u>rcUUp|*h@Ik*qX-MB6aS;Dq2GHC|i%S6M6-4W8 zNcQ~$>)ZE!Eo$=9YbPV{%lko6#y4%70L(yV2##=}9?n$TV-SzBo$)F~RsMdiPyv;5 z^S9T_{TaVP-dg=XMGxD5i5^at|JgTqjJ;`hIP&b%D$xkCsJ58;=qb z05%2&N;}Wiz+@`1bmJNHWjIsJ{>*t^KmenMz7~v z^j1w$a^mUg!Mpgc^^w_B5XHP{^7*RlUAuPe;B>OLUji|PCVUB0puzaxi~VQXZqIuZ zHkmAojFW6+BMfkFQb<0>73ed^->=Yrx<{&pR8B*xRsvFjHY9*_tNCWXM{jjCs^q}x zr=p{GZP(6iJL7Y=dHeG55nk5K%hBR>T2{MmJIYTb zS`08@!SL>(1V4jdl7mrzzPCddhyG;K`t|R|{$kdk(fElQN9Oda-O$fYtT+XAFopG3uPc3BTNlnVr}EH~ z&X=cK(<~DbX$QV)%Owr5pre2VvBFk^KlU7C!Cq)WB5E%9^Y(Y?#YNO|>BcQCB_!bu z7&-S(iU`wr#hH1}E?X`;yM09=hbv2Wp!i*6hhMMBx^kulOHTN#0V;K*%ZS-ulwfPV z#S$VQF}#a8pDWK%kDX6INNm%v@27xjif>my#FU0~8B{WJ)RK4UZn)$tArGdUN z(VDiKKCic`Ew^-6*L@rOe@9;RLD>Lz@0be2Kmp}Myc@fO`POj%mSmsQqk|ew3=MFU z6!Y2u4F8R6xg^h5Ryy0MSI>joK7R+XXRf04pp>+nfQeD1f6tTdZ-8~OaMA641Zv*V zvOcht?s_(}43TfMRcEd7Qf`577^>MZt@&cgzjuchgz3TYLNNJsjkLu|o5Oq(r{nGryBb}1zw z$ykn#RPUOmCGF>Wz3@7bfmOy50?l}>@H&0XcHt}NSwOIwy6xQ5yQtmP1HmX)dT^od zC7a(zAg$!6)L{~K2q0YymYz2*>u<+~x(6mIh7xE3g4gDbHo#ZRk3t6K#ru^9xo{=pi?<6aZ(W3sZhu)hn>?wQF!_hQC=8P%co{j@^oMumx{WkS7i~GG6+wG{eBv;Fl zwv^y+MoYnsTvyjbfWPiLxjuX%VT71GgxIzL~n0b2S z3qlHU?&p#dl#EEh0%yPQM?8uX21>yo?vGx82^PM)97N`0qb*QTcny$Tcs0-n&T?&M z6`{p?62Yx;0Q-Pgpd1Ts^`~5@(Ln7!P8Sh%DxTQBG0J!Dc2SEfx1q%dL{u%LI(K zRy3Q!*rbNxBx?I;6{Pu|{_LaOYrQM-nU4B#p~d@>jV)q&60ixt@BqO7kSHVpExV@q zdbNja$Lvn>2YBuY3k)emYIQPzTXFAfT6F=(`PlQ41c#TSub4!i5rdpnJ3M);a_AzV zCCykB1Mh_la{55-^y-q;;o@T8KK5tyV?!R z3AGjr zZD{;ZRI9Q>7X*OMw$mP{xNUoz4a3hg+klB4V2JcU$A*sq3%@0Gw?t2doEGlcwb6%= zeK#>Uq;n|TR3}b!d)Q5%;O-bm7{)fkGC*vG_k2Ghy zNUKhfx$NV1*HUHUv>@DH$Yf5LE|Rd+mzF@}16B(JJrg36z$=)5gaKwTs{v$eQcqkM zsQ9m~F7v`l8T`B{UEE`pi~Im7x~p`eA0McTQl9`QlDr)#$I8^obq>|x6zZ#8e9J`B zPH2Q06&@qIFk~&XKGLETl`*Iw)WMPBi3hriK$9f-PI#!O0R#T;G73+XykgIejZX5_ zol$MA0=}$M1tC-kXXxWqG{HceVD(fK6R7v`-+L=Bb#4&syKXPPO)@=*J3IBP>m6vS zmIxlOA%WIBvPuL&VMd-+Cf$!NTXpb!t(B3%)!feY&E2y0Sc7yH1uh_+L##9Gm9@(vVkEEN~LG zY8x2`&e&S4=J*4EUpPvPi$TzYP@ev2BN|l%RMRAtGy7yBD}`mdqpPn?MV){^N>ze3 z@rF4+9bSN7{#~`*#)}99P#rjjh#;rJFFeBVCRNtiFUt0-bkmj(=f@)=S8xGI|H1+sH(-w67|wh5#lkOYIhd_1y{f)jNy zw~MLwzx3K`j)Bf_$E+^v-sR^o*AR?vf%4b2vq3(DXx!$JXUkKwB}p?7YJ-Gv5PcX5Z!}yZU_R`HE+gl>3>e(p1F`@5^Rq z>$O(R8_b8&?C0Y+N#DCp^N&xudQyvg)JzL7z)9hdzEUyCr954^`LS1Ngj9uRs5E8v&;OcekENocwVjQttQvGnE--tZY; z+uP5f0GC9kG3XD>YjkFfwEg_44d^o&w>dYC*tbx&&6F3m{~5o*NsBI5`ntL9a3Wfy zL?RxXOjICEeAyC#qy1DmYZ$>Ii-z*H26~Ga*+7tE5~-9RFNq&vCl;a!X9DsMj73yzn(#X&3w4ScBDmzJsn6=x*2|8A&>rc@ z+!Zvao_By{F3W7>Sz=81=O#u*l8VgfOzYTh>@s)coFhNMZ{C+b&p74?!=8%)a-Jkqj~T!}DFd9`t`BiR9RbZ$8Fx$L z{F1gO9386Cmp@1Phu@8mMxR>J8|JPwGsCos9+#4WuT}-H-f9AvvHGvmf#1)qt(-R2R)I^k9sTjQ>IeD`$kQpwzc5MO~wDTUjUh&IxI#P3HkPzb{Y zXVMsV6LK=nWKXC61rAR+e)pf+o&CSGJ0s`+Y^!V0(ste)LH)m14=IOEg;#YO0dgm0 zkQ^4UvurRU4@iMy($|SIp^6A!`o9o=EYuo>R;i}gqc@ia{lNztaP^h!F|4uZffus;i z3S3Y(SL-4ea19hSrBUvjV)vScE$j91>T?y# zd^gW~r;gc+ai2Q-a(;nVaeoTLO@!=QG;g5O_PpAD&ae5tWEhNrE}1pQ@ht>>&slR9wW(L{*tGZE0As3oZ*C+4&Bcn#)`}>?t z?HD#FZ|}ycecm-=#5~o?v~Q9lY8^e@tS{eXb_-QH>6CLnlS%kvG@^2AiwV4|KGMc8ytxW($l|{IXAf|-&w60O6!ijPlenP%Ls2^AMh$sbA zDN(lXFK_sqX$dhCPeuSDA&fb}bJ>^y%OX+we)fg`z?9#5t$IN*0&*fxN))0(ph!V( zpkyvug@aST(DvzY`$fcRAJPx1Ai1X+g!kn1d*5|NmH~r)msfL<}Gz_^u(Jj!oK>?yr`LuwO>bP zjT?$Kl}WWLLvSVR-jAga^V=Dws_yP9c!z~E6=(DBbH=i zKn%(&6*#Y{?Og=7>(A#}&e?!Qk^CwEM0nI^Nri;6{KRa!!gMHO4y9)WMANy_v;4q< z>pN9&R2Z)EJuP|sVUiG??3X59uREIP?79)fc%*_MfNv9#i!sUTjIOFz^(E@|`)5YU zL~#rmS(ub?hi+bXttF>15jtKdDxrYWw1XcECy?5Zm+U`;3?o#>$(_QG7lH{m)(bX) zqc~mZYldlPwuc8?Af=bUsh$a*&8)Ow@`cxnKuI4U&5p^^jo?{J_dJzEYZha;qN?H2 zEC~H#K{pW54ax?GXy;mH+I*PSr3PTAT2h08)3>*4_X^a&OE^sm9$~cPhGAXFzy2(p zq{XHWFZX0(I#}0_UCK(_S4$wImyyic7_)XzY*b)_Xe*AGEs>)zHcIHYYiFbZF(aMB zRc3$MA8b%H9j=Ior=84PCLxOK7DebqE7AWFE8y~$DxZfvM4=8QaT?xvPeHRbiefT# zItTwIp`R)1ye0@T+wfr}g3GR|PiR0F z|8!V#tc>Ki&B!A}p^2qLu^*Sn#?&>E4x+V1U}bn04If^@>Hb>KPb%=~{ygt+qpS|o z&bWB;)Os2|PRsi&`)n;B3%uM8MK5lRtsHunOqM^H*!?~!SK-(_&+f&*u|&#w{@N~m zum7F(^;sP%(x=nrY4#CUQn9WiFuoa3`*qLdgR-y2OE77ApOgrsNeFLKP;P?Q?wftB&a zq)HK38fm#?ZYkv!bH(&h?JOvEbiO!qwHSd?M>}JFp#;M>hF%BCBmHZ9m>P ztlGSg(^NaG2wlybUCj)ZC3b$k0q=|~`W?%sx#WcAe*%$#bN~AaIUz!PtTzG(wpr?H zbHs%1bKR-!4qCikXPOB#;2Vz;+q+9lW;9aWH4CWyVD#{`BXxVj#3wjsAOdTRA|~At z(5NMbpG$!oAH#E%V{}o)$`pxmKy)ZM;hMehCOAy=vwD-Bj|;#lM2g2yS=$E(#ZAk| z*cEkY4R^(4VOPrr-T}VsFKB@%gVx4g)(EKrB%4PGiD9a1w_#iUrI77e0w)~C1v-OD z<2sSYWE2@&h|JbFQ6O?ISJX7IT=O3~h9o43bZ4E@Jj;2$5znc^y<*D*L4mJ<^c?_Z z4GUiu&===nFjXufDve~)W?y)Cl+OVq64;wsV*w7QLuezOLxvybVh(3s>W&UX6I4Kk zwodwEnCN<*98vAonjCiME}fyiz@)1R{Nm<&$#r+Q_rnwI;l`3dI-Q_XD?_&J2niDz z3uHF7#(^slbYUnx2+nq-nT0IB6RI=)tr=2PODc4Io_ozOc|U#LM9JFy<+C$Un%4YM z>>)8)Na4(D0xlr%!Uf2{?lmff7Qw+8-f)=ERx&r~yLLMenqW6CjdSeixESmC6yM0qF?I=BLS zq8sBgATZ{bXe8gs_MrJGoq4F>76Khk+OInmQxuQ_eM{8byvFV-i#JJtJUSM_I!C; z*Pp@Nk#)Ex{)n_5`#-YR`O;S4-zVU7Le!CrC-!{3cdPtAAh|7OttfFeFD7LAT4o`* z?@O=65_zB>#TB|5YJ^+#u(;TVw_Yi*{8W$p1q6@QL3<DnK%J^V{j#Jv!i4cSlV(!_sLwSqSbTmtc4y$CiOYxvWGr~cjC zD){{l#Zf{t)pYb+Pm?GNd*mI=Fif2ProjAme|Gi#^QhRUD5W&KWYL2~DTu_kP(heD zKkv=?!SgdflJmv+3rXMsy?{^vW8lb;=lgklvKZzDLFNK2!yqb?3D%bvvL6B3CB*~J zj<3q3M6$f4@m7J5$sjDQOb3|;*5)`gwSZV~@|KnX^gH zr*|FYEi`(J#Gm$Vlyu$Hxt0Q<%PUhl75xYbfU1u~_W(tB`A3adqIKQHAj(GhYm~6! zE^T{a@g>WBaG3Sy&NgTD(i=bjK|FZkg_8~yK$j-c^U=Z-S20lm3Q9_h1w*u$fHJ%X zR5GfuvdIbP?-J;oLnG-SeFV%z%je50UVk0GUO(PM1R;x3534=VIjf!D*o(hylgE%e zc{SXCo{TW!x;U`g?aSNLuT}B4p9SUs_|bi*Y%HCE2c6m*2=g9vyNGJRj&Y8&YfDwr?K+x{q8rE<|$P!{Dl+QKC}nPdr|o9>L0R6&MNbWd|#{-MFu>8sZ}=GQ^-&fEWZm2Ka<`Ad2r?4Knc1k z;1Juafkj!KIDVma$HPH7Bn{T)PTOp;H6wnS2X5E@o`J#N^yUuWaSmHIi;H5zU4z9l z%lI@=p?h2qTFpiM{5kV`l;+;@Sk;?yum%0%bR|6c1La#E8*-<~r`Q0ur?D6zi0d*# zC6Q$9he9fTu2b3s&!vYeMbHUx*DTpK`qb$;q|cNGnA7uB5h}eK>3Q9d>Z4gX%yh)Y zfDw~1!@j;P!nJX?nkfg=wun{U=f+oaXZcHW_jmi1TU=PoLDWK=b(KQQaFMI$M3h6H zFwcCsf`xZL;4CxWSFW9rIHOb~=#`7eR8R8-vtHj!+axDudjjB+wphiANEMtK1Ai8N z0@zE1XBe+26oX=%NG63A>%lTS!Lk9zEUX0Ts>GONbuie&h#4&E^)GhmAoAGxhRb>W z(4}q)zo1gzI21wd5R*Vomq{$_6SCY6!+PrV+|<{zk6{8QeUbdKBziE?DEyO%#dgdd?+PpqhR&} z$&Zse7cDco+l|@wWRaMc(guMrEJ*Uo2+D6ZZ-aRiu5J;pc*N^zSo)R0K3u9^Zx%jp zRNrOi?HeVm46gF8*iT*nGj}FKqWjN+9$j?!^5_9#hZ`i9xguQ&uaPsf-+0OHu7xpO z%fr31?WI8YOVk1R1(wo#JB>ORCmwmzzo*f0ZEfpjjMw3h!H^m8Ac4F)%D8AzJo;)q zmXi!T{lQ_}*5jS!@Or1Vyqu(`lYAwnpPz#(X^49Epsk2q%xD1?k{%MCwPq6OtaY?* zI@iE?imeEcYi7O9l0a|u4yb{q=J^ehE&M)B(bsTUq(2VT#<5+!awH(9rFX@z?~q*T z{G>Dv(q5I-!J-OfIjKhmB)HWGE$b_rSu2t+t#T6r@b^qH$T$fsC62pKS0jfq%FCfX zo2$^Ij9;s|`T>RnN|A z7Hyw3241hcrKokM_GV3O-?D7YqlsB|NwDN~&0&F)N0rWJ1MDYHc2bg{356N{g>gXp ze4P#?lDmB_lG#kR|3oq{4aptAf47 zdT|wVG2doQ&&(|s+ViEnuB?qf03|JQFfU4L<&cETC z|8h~fZ44q+={40laPz2Ah;pi7wfqKL$%LC2a=}Y!*ac-E9`ibJ8LcicfBNP>Qg znfm&l4nt=ltq{qUqwZ`&w|K^?=4=h=_ak99L9*4p7^|JJmy7W7{uHJ@s-qEaGC&ZQ zk++`4lX=+s1>!gp3|6Y6H$9y;aJOV-6?ub?xBOwR?8Og>oIEKoSZ;ocZyxQBU~JJ> zHt!zlr-Lrhgpfa6Nsb_Q?pv|rygEo-brek7km3^IAxA+Q(9WZ4e2M$7J_cV#+DJcmmg zE5Sh(WdW;;bZ4tq@8IWE@+ytTL8?Y z5sC)`f}y?#U>qSRhg6Hu2YL~e2 zsL|sOL+yW^Yq&%a$r5LK`$$8;4n+_lSGlg}=MTH5)Lx|>>$v~M3PFVsAj`Q{U7cUc z>Z&*Y7h~@b9ZK6p>&CWi+qP})*tWA{+qUgw$F^yB~0#$U~9RHsJOm}|ak zK9kIbHW)=h>qwx@RZ^&Vxfm-*ieL>C+NY%$gu7vfj>dKZV~~~E1rf|1v+z|$*JY6)D~8&UZ!)Z z6lBVJYc<%!0PO2j>!Tu1<(UR70qeqkCFQN=h-Ghx3x&X-F*l7l>`>Pkkuc4cJeglz z%p4lj=c2eW1y`H}TEvyJGzF=fI2IW-n;4^Jv5!`~f*S!d6f1lbK`Ryf3!tT{vM+&q zTZVHg0RPfwcs*f$e+b{H;g#QD)W4WEC}EnfIfTWjsh2sFKgWbh<~#t9cC5JE8u|Lm zHdP9%R|It-_PB*$^-GcD@^ozUKMxmd*4;gwo$Xz#ov*LY&3ZpiUq?N3Z2a0fKMh?z zN1X|}cHfBf`~4Jh#kPtExLh@Z;2T@FFj>G^!# z?meL=4J9L@F#=vWjRTD&aq7gWg5;4UQ;sN+o0Vh`$@1al#2_kxx6jnj*>!Z}`qRWU zoVT7~3IV9wxCNhxG!$;3azc~H!yjN7gz0(sl9w@Y@?X;dvfp-I)A0iPm7BPo>4Rup zsuyd&PZsM93{E{)QHuz}CXYzkW{fx1eX@-;r!gY-Hw;d<4a` zX8yJx-ZZm!Os;|dG=Cj^W#ZTPK;ss#18|e$)#f*G;Z1h)?~2Cjh64VT2}1omtHI+~F-O_eY=x&XilU$+>4VdR zaS@n}(+TXRr7CfJ6}i<;?$>&znT(As;8yV^m&OU1%`Un-0`PKIP~=8ZQJIFKYC`cO zDH~3VdN!k9%kU4Wf$vw;o4##R<<`dJeJXemseTcSruY zzv8l6*uhlkHI_Zjdy=3(0%vHcJpSSCD7iO}!Fl3CROAf|gG&NOM2*-UlB2{P9~4Vu zwi<9n%T^YvMU5WMVnQvwy|=;KwF>5$h>sKRxOyqe_XciSiC6UUGCXg9RA~zI4 z>dXhxS()oH8yMS-z4sNeFR>cODG@@I=^7#XXe2*MAPM!V+X(W4?KWnSSh^sSrqG+# zHJiSTMzy1oc2*D;2ly(CCbe;< zL?=={tZ?`s7!~KroSm${%bzW%O+pHk66uS?Co684ps^NQ)!&HehF z`rmI}aF3_9kALsA3C}(KQc_R#F20;-oF>tu^~Gc@#n&y(=Wld?ZF#%>KHbnK`CwD4 z>`6n6xZu}UnJxIuynf4*suH`!w5AOA9RA5Y|1js{;z!}*KUvJY$ac+SV3%+nKEuc2 zSyZPX4|k}MM+f$-&z^)66a z@VJMnt+Mu0im<!%|5HFYc{$o-R`q&eMDyNqy*U^uUPx3wEd@SX2)`TS{W1JPs{> zZtd)1dUR+UV>p{l+a_20!4$5i?sO-5J5JoqhQy>1t~09frCvh=L#D~pe;`n38>W@# zGA_-(&(M%+npXK8tWR^AeD~3`vhNf)pBpN3oW%aTt!lab5I87)(|f<6C4Rgsd4Gb-$ zp|yRV#@FK4Wa{S6t8a1)%7l2*`1T;x%`|-9?~6+Oo$kAVBFPZR8c7QqoL6*BsE7gG zS%HDdn{@rUjHN&OLCJ>^8U&W4FxGpe)h((!^y(3n`}p5?_`g(}co{misD7A>P`Ib- zy6TX37p9YM>>sbwjP|Y9m!gl2l^6P+w{_&1R>`nE8Dvs1HodMtH9>5mTQ1T=k>2RX zhcLIJ0#eJqJ=3i@t?K1XY9Sb=`XyxA5d^;DPmV({v^ZBn$)aC>L1mVG+-#M<_68-c z?R@-7pk=E7**4))l43X{(++*~IUA8?W4snXBgF(+=b+wQ84hmbT{^TKh$F}O3(W7l zl>_ZNEX|({WYqZ=b#8V-z1eE{dl%52+RK}z)mVP;O3Mv@;_Mu(R~9l9XWVWzGYs7; zPQ-BiVsv;Hw=hk*mAP<<(}HMrRAbvmbdU%%6iB#=s_}a5$0S47N)&MH`ffK zG(yG4)*75HgB&)`#$i8}Z^RT|{~!VaE5Ne#=KA7d|IF3u^T%!BEZZxka7~jEzY3wsthgr5fyL8_Re+pWDc1-4j8uKg zz?_6qa9;R0=@vxLgw9K^)%<5LCfnO=zc}hh z8tihMS%XxUJfJdC>Nq+Dv35dZ5996xr#x^(oowQ0u-8VcxIr1B{ZN2v=o?IE^1*DPy^E@7am$0WFX`T zFKZ)@Fs)mYO`MLD2-l@ep6Wt zP1DlPl8x5a4bZ5uDobcVcA28E9f$_gf9kMpe;WkI;%Yi3yQaN)U4-hM<$> zrNc80*Mxer{~0Ow0C4@Kg%&!-z0du<<{SV;eU&ro6ax9MxAW(5Ls5w$E-Cb*?*Cj{ z@bmV^ch7$Hj}6M5RR#0OBgBAz&hvKh&I3INikckfUpA*hpA(}L2H_URe$U$LL%<^i z4CK#4cp14G_Pws~9X<`c7r=S~pP7LsgSbg-YTy-AVIbS8I{(6$;bU=j@!f=b8;2v? z#Rja=WDm4+p#*3W(zw!^F;XB!MPwZ4SJnkp&pfS!G|;=MFNGFkc2?c6OLQ1%#=OTY z*Ag9?8EQ=g%I;seAkOLfzQE81+c2*faovHh%h@5sFjF^L)v(KnjTW}>*MolwR3SJv zpc&+`t3;Gw!LG;FMegvgmCVo30f0HRceV<3d~LJvBbC5AL95b+hzUdzfz=uz2C3c4 z0wE#;Z@9zet#X2hOTu-Etu?)12tXp0&Vw=Jm5`=W4_)2TlswG|Z7#w6oQU1Y zT8U1fmcXt@JL2;W2RHZZ#$#=1MT?s_R4r$?{65-ZiK2YqD{$W+`sqtNG}Z3*kP%nPGkGR!c}b5hOBkpzmLOz_O|=_CWK6!p|_e>!t)5-Ovz%^7LL4 zfSyUxtB?e&e=HJ{fQyG?duVLvdg-eLEqZ?6gPzm+5RDUrRRG|qcy$Ugda5OPaNER_EHE(00g&A9#L zS|j~s2dYP%0a6&Sas2au@w*PVv5uH|aL>5?!;~aRZ>j-yo~O?p$lG)?ceEQN`1e=+ zD%?jVf^^(L>#Zr-u!KfznIos0DF|)%^`6}|7ttM`2w)E}HWL3tWG?oKBQa(0vFci{ z7U0zF{8L={5pE)S_wz)-LDLllkAuWE%?`MkaErArWDJkB$H_7>=os=ndQ{rWnhgfG zqL2@Z!J?qsecW)Eev;pKJqR%|6Dc?wp2zHCL~V#_2d_M`s%aEcetK|7^Z2$)j5Yn+ zk5b~TPF08?lR>7evr-m{b#HpQ+RZsjuHA)CE*7wN_8j%GB6B&4y*EQv+;ESRns1i^ z`q-DRJUea<9_@q7In}WB$F^!hMBK|-@Vy5Hd^%hpcS8AMV7XtD`QP6~TG|{L(Tww= zD$$QX<2CozGz^O)l8%ilxOqBXeKe)?d|E-8<#ds^x3@wVo^cF_{6dJpm#?zi^Uj1< zV1#k~=+SfR`-M;M?yc5GpjDaao}7OWPnDHrikXy>sntS}9Ed=Y+XF2k%&_TAGwU=C zrBUliQ=FR(u1l_0bdd8*4>q==_tG;YCeMV@aOq3TZbf&J7o_n{@l!znni(@P>53Bv%5r&Bs`DovGPNjGy8?vr=eP$Go+juO~b zdb2p)i{h7U!iki^3qCAGDAo$+Wlb0XbAQ*y8 z8eh>1zi2cZq436JJRlgbQ7K>7@&Rz=PWs`)&3hLzJX-BeEQp2^^NgK^0z!@A7N;Ku z*?M4xr7eL!8?`YdBV>7?0j!AtGQ;{iGbhk)dz8+h)dozF3Z##ctd^3nonkKO)n~q= zBL>=5)5&jK5q2W z$b#S^lM|}6-fMZG{|5J-L>c|BQG}6^>HmcnF>$am{;#7**Pjc!jZws(>z)7s{{Sux ztLsSVc0oVw3~Hskwr9Cs&|A#kC@&heq>2R9?=a$fGdWGCS73eO@55MrbbZ-*!rl=R z&_Mw8?f87Kf4NUi8<1379~L-dgFuZo)>{O*5C9&jYLEI&$C9f<{|&`#VrSZ~k_CXu zeR5UHuh;4QkWoUpkXa%!nZWXdyi+bB#&JdC$fNx^ND6LgfkUm$pw46ZhpbNqWkmEUi?=0d>-2P$~PF9}v~RQ>8$kjzii*D3OlN)Cu!9jJ`lLSy3{|#-gwh?^R;b z8q~MHqp6(4{jRpnH4gmEVNGX3{Z@${`P)HROHc3XRgXX)F3oS!YnEvDl36vTN5ihE zGjsgs)c!6ZCvgYoA7uPR2^S4^2HWZnxcCkKW13pD{d;ss#am!nf-7B6NOZ7r>7CHZ zMT6z%@KDViw;8)jeeU)$B9_hHvIndkq^4-ENw!8#_&Gji_uUS5WXA1x+q=zesL4gSogKjNA&g`JK6PT#@LM~ebSKn%yfx<@E6{V_Vmno+dn=Wmzb+)G z)Za=Acos85Im2^mH^FP^ikR~0#Lb7K@W1i5M`)Nnl!= z8rP9rDb+aZK+cu&YI5Dm(95qX=KsH`hw_SzAXqG)&_wwmn z-SWU;kQRewZI)4EaBIY+#Tbo~2+KcQ>P5&kkl9szGSykT*h%j)<_1V9K8jV*eKhhr zNDl39<3C}BD{&fB>zy47_N)KGJdF~v7EQCCZ%!vKYba5TLU%@jz4F@VY6}`-API+T zOmee*wh}&{hPwIWEm!$_sp4HPf4lJ+KpSv~IBN}YEjg8X`Y1h#F)bDIKEf9FSBCRm zX6C*e8>0nOj4B_T=*W@Tq(hJ;hlmsrnzR)~8>rndI}1%N-guRBC>oPlA@P@{DrRHF zcD=tdEsBw(1T7EYRm%Xg2*h($eJ^Xvoli`t>nY_}tGwC!?Xcn8N=nk7Jy_+8+2#Jb zF-U^^>e1j3rtJnr;z6hNE_V6D0QkDs8B0j!AyZ#6T)G$77>0QeHt0wzJf4WVa>9b` zG@PLeEnZF=ZEku2K*#Is%8tCI?n((DdO2~`X2UKm)Ui8S|8AJ&SVbNW7mFY>`oldh znG@)o#5C!rwV@5~A#?{4F=V^F%5{B-jWP(s6j*` zGVq53U?)=R#d>q0y0ASK1j4ab>#W2ywgKoBNR7n<^ljso!t38!>k&lwdU5ZF`IAGv zvJ!J4vXX$Fi25Kz1@01O5Gu0kE{4STS|6+RSrYChPoMkY~Zd zD#}wHfph>+MIewP0H`te@U6I2p~2zPOD8Qm0Gq*lm+XQB_HPHnJP^3vwrbiHB9t{A z9k`-?aF*jUq>Ut~x903Z-%Wgs((qoNxa=9_Z?QA6ByyPq)9=HEK>H*il%YAE@hl0V zNJcHHd__%z7`0joVka7a`o=DgY)$?d>{)W=F}lKJupG6u4r4E_5(v3>PFKD3i$~7i z9+~#*WEU|V$vA>ftF3A6ODTYA_Nk0dwe zr|5sY|Mp_>^S>8XQ(YV2e~}HobA0;F;L8s2T^KjF_~WSl{;rse>)`6RfPORcV=l=D zea9mltmj@t(9=A7FIaqqw1K1Gl@MkpWwT$tSfU>jAJ|{#P9m@cE=4Hrz0_PqmU>K$ z|GrkYTZT8uSwT$UZ-o1x=yHOzK%bXc85eks8FZsyre-@W77?@|(` zaRnpF6zW-XR|~Pt5VAgNop|%h4=dQ;(Tx0?Nn+9YsFv3xxu%)7>PjVDx{Ipl3<>hi z#AS;%D?AXyU;5(sWLc=YI*wbp3_=vkcyJMZ2*M1UABi&Ju&e&J7#@d3f!N5;3<-n< zl6Iz^F2!4z^88c1JcM5`ghw(vHW^-K z2hBxd1dcUwO)_AJ^LpwFagqfsS1owT8Sbe%D8qHm=kC0}X$8>}EYYj?-YZK5x3$>^ zq=p*2=9sRf4L#sY0rnLvF#r!DXVAoD?Z^%&-*sz&oe;7OSYnHJ`tL3mFw)jE_8Y&IR_f$Hs;X4)OND$H%KCqV+!7# zyQCH!Ph?jRWk~C~sD;}$g$%urNR%ktJY{RE9I+C*Q zS}#dhqeJ=lKGB=_%=^(ttLp@mm|F9c4jMo9Ot`zw!GE4};lu_xP-I1ogUs0DnSm47FGI#TTzxs# zYry-VneCJr!UwC39@4D~={^;IBS_iy%BYZx!ysvJT8~5m!(y9<`TP$ASIzt#LRB~l(Tg9 zn@j>ZF3TBd^_)C~FF=o~-zH5CFnwnUlf*2o$2on94KtTlC*0niAl+NpluDX6p+#$A2Bx93AsDZ~RCF<38Irk?Po%t|X8%oM$EUfz=e z^|zCuL`{sJQM14eX*gVQI{-v&^lvj_#?Z--E6zi-FN~gf5AIKHW$veDr2N?l+0oJU z!*^>Qn4wnKju6`hulK+9)C=6kkZrK!(bpURQ~@c17NkUijisHDhRLCBGe<{9ybr2-m$gwQad&%q1B|EdCs#1o zCO~iITkxlWxei1D=?_S~fy1QtzTMxv$lSaRb_PsF`XVJBZ#!v7ee8`oV3vBOf!}31 z0jpl5Fu2|E0QF{%6%a^t-jXA@;kqDkPw1 zp8Idl=a%{oRU)9t9$Fh7ofjwW**~5l-H+s5qTIHo^~Z;qyYVnVcP-|i8Nx7rVr?sZ z?JXzTEK`%`<9ldhC^B`2)KV>sNcGIRKBri0&@%&$kSJ+{I`$M)hUCA58y(?z_p zD)Yd{#a{rkYV=|==?ahxL1dw(B4v2vp!xh1vE0xR;mCEM_2=RP-LHC)2sK=RI3OH7 z;W#xW%1FK1{B(Bqrh-f5ss^k;pY6U_0(_W6lW#%>@KQFMv1J8y7Z$=Y8-e_C0LxdI z2ol^=ENjesS5#cVMO_?FyG^47;HuCfjHX@7gUiBoMKXr;o;H>uhJtB2l*waalO})B6hS`0cw-y;FRU!k z9$~qwK`n+2iErzIgs*YYuOF!E;~HQj;<8#Z**k)LsoT=Ohg!GT#x;@EcHL9GIoBg8 zRv6?AOd3)Q-GdYsIS=ACX^F@w8%@gCK@R*C47BTZQW7z@P6B{+9~>^}v9a8DXfL8~ z{AllV8H;4x$AWzX*AMX4U#!_>ME)tmOq==kti1CtbM{`DKCG%y!-IzLZX(SZ;Fe&@ zgt_D~aSR_KKy*#Tl7nO^+Dj?fR{26qiT3h@v&?lSKU0Mr;C+=;LmT!&(IR?}PAki+ibbWZra*}IkbCu-1N4P0( zMm0F$fTlmPzIVk+XS!&ZqI;Y=*(9~qv+QHMFcSarEa>a!W~;`*mmR5nC6qY=mg~hX z%_em~92O0cUs1?Dyruw2oF7+!d~n=w0N1x(L%6I867B8lZ6CfekJ=6Vqy5trF2U>~ zOX$wd*^_TACVaAoyLpt+JfDx}8&Yek=^Q&#SW{q*Gy{^P1N=PUrxNb3u}hD;y8mei zkSO^qQnaK_^kpokM^{vsm%F>0BNF~CC8d8;FiIu?1gY#pt`}JJ2EDfB^zq5Ln!PC> zo=_0SId!+j!6QlDQVe5DLx`pnoMQ{ah_>F%!e4A}yB(H}j56(w(|ayj>`4UI`w4)g zk8HG{)hKFy#-~^aVc!l!KpzPR7Q+^V7ep$>nMXiY9@ij#NEH?qX7olns?j_Ei4F-O zb#8bFT@Ma z6?5d44wmnBhd$QK7H4=72g})GC6dJbbto;@v*{rA0##5dv(cLCNZ@D+VmvUjy$MFe zQfO`kM~Ff)m9>CLUz#~V6S4`YE=>^5ff-WFF_-@iJ&0fDMo|;!l%n~}V~`!i91pC( zQN``mUH*JjgVouz)NR^RWxKl5RhZkeAg}dxqS1oN%@<{X{^*|95P5P3XBfTX@cHis z7;q;Z_%8q^#6+z0@X-LV_BmwuE0XWB(c?9q3LW~64=CHYkG0qLYe%;Qd!eka%{eMB zZ_En5!UPVhd<=~40z$FqZ5@xa%Hk#9T%(A1oCvPQf;Er{E~ix%XqmbF4vzVvsU`o& zy2`7|)2q|FJ>;kTA`jc}u4k@nCc}?XI%3|G7^Va{v=n)|1_RDc*~;TBq=OaQ%42hr z9p6xzz&`sgS1(1PDmvxWLv_TDyo*xV~a5lDfMank@`y)pEKdc zHAWs`lDrvLY%mzW1fZGQvHkh{IO6A)L9wT;6&+yAaPLSHx*c7a!Vr-Hy+q#)*Q!sW zC#nX9Hp}P^0)dQ`*Hp>S`%TP6h`;CQSVgdk2KH3$NS6h0dzHy*SG-9pj#7&S-HUK< zU5^1UH^yw7RcoWOdGSPL4=EiskDLGGje&T6ul!%a0_G0YjXwwLVC8O!0pE}D6mkno z^g=hK__=_!+@(youZ(_g8)n=kEx_>8OC;xBQ0#b7#Hg!d+UWkrz4%rMQ{n5LYz<@j z$s#!o#GMWQ4q>LKzj3U26Q`(J@~wMK`E^slJuNF;mRxz(-Kk-!u|D^c(;F4Wz5}}T z^_9b;cWFSqR&}f@kZGAX1;33=4t?14!CL^>VwMX|Q$~%W{@SUC$h1&L0kf{GA~{uy z@|xNMJPegULyrig8-jWs=i_d+ba=quHN1Cwz^qUF;jbf7-w z_h{x=Q?{4qzjrc4JR*)guEYD6#N)a4)V}f|n9$q{l&)xDx$K?POE5(h_H|InExr5P zX^)e{e0!8I7VLWZ)RcqEc8z7V%*fK$wLN2|Y|L82QOj^uaZ>0%A`%8?Q(jgGq9!Yu z|Nf1jQ-8ZyKxECm_5(HqcCwF_xhGu=mY5@L?;x_^cHhbg=;urPRchym9FO7YJw+ZqoC(Ryv z>vw*p>ViZa1$~}VC~I68nPzw5Wl3oCfnu>FwDQwKm~$B6&uZDSBln0 zB$%UGn||QSBVUfEQ*FYhbYkB0NA)j_57_#{dvh)zh7JF8eFRvVUxH8}ry$VEF#AVzz4&&UGAJZjIX-4hYt* zN8mzA7}6W*8mWfjOyS#i?e|S6nIn~u*E+>xa`L{F&&z3@t_+5z@lci#&URI|qVs30 z;FAGv>$2kxXl{JJ4d0xt9H@TGTDE(iR`@~7Cfrq%L)OcukbhN|HaoH#RP^1nCr@qV z^|eBiZ6}ST8!^d^c$!`_Kp>pYsNSHCo!Ko9J^$i*G!8xLSPW>U`KU<-TN@2c&q&1kln_JTVX_S%+Z7<%sk)7&{x7^nYlC^GJ7IP*p8Z0OtJRfBF-b#1_@OlKXmY zTDF-dlESA~L#p{%UOmpP5<&1%kW?_pX=t zRxliHO6$BU;m28mX<*_xHoyxC(Nf9C@0V#uw=tcFgrh?5x%;&AFH=`JsMs2D_s56G zmPGW>8&F(KW0K^;u_Xz|pfw51Xb{rEG3!Ulj-r4let9~-1kofchjKwFVW;oCmVpPi z(wL~quqfs5CPx2T^%~4(WBR%g`_~)>p!ukzO(q!viS&;4_CX-vYk|Lr zjJN~b_XwTj@=Rr*BTI75C-QICr+$**%Gg-gnvA-ta$hT4D{y>UQ)k(j>ieevor;K(j;j@G%L@&@3aBNoh0&(gUj!8CBPu+pA2E_OS+`ay02pg^ZtM z_vm&_6yH{eDzAr0I%t=#uPrs-B0Gkf=u)BS2e1vk#)XQrs|=X*tQHw;$C)Ur_*n0jb`0zM4U9%s;HlZMHxEsH?}qU^~R%S$Y( zur{wsvEqRQxgGyw-#LXwc7Y$+yPlT@@*$UUbbbhX`<7y?xNHE2JDJn zw!%2rP6%*kV|wmx2fKnp#Nhv0RekKuL7lKE4~%!BRV@X;h<0!5A>7cF_ zOyAX=>4_yS%^afRn%B6vn-~ zA;9Tvw9uk^Mv;09hkS&kaYegYY#1dDMxDLYPcWch@OL>-L{M4a#k7z(KVU+C3;}@D zNgv8%Be5&Zemli#otDPV2I|nXmLk8=v@8EQ zEEj`V-6n9X0k0p2I8{*>MgIJo>N?)mz;D@ucHk#S6`eg&Vv%N_y?xe8}LObC26^g5sf$;3U! zZpE7L?+5wafW=j0oh-eu^X}EIXoWJKdC4orNHRlw%fN~m3yF-~&x~j{`mmw-> znO!TMX*#uhTD&=ZJao-$K6TJ`jhhaUntB-^EBVbG5fMBnY(|sQnc7*`r1rIJpchX( z4}k501;^q}Z@WwAglx2Yv)FrKNnSGGz~vZ2XJYrn2w(fDZ;PaiLdz+##cr|}{LMp1 zJ?cQ%_Cv()aXd` zYu6!aF_1)XV&sri240EcaZQq2_dK=PorHWUY?ABvfJ=;Y$}`D$Nc$=1cs(}LC_AKH3OS72%fD=Ig*EvgF%6Mm29g2QE?5RJwE zJI>2~@r79@*+O`8?0cV~gVqvlcIA2bGkaQ&uXtN{LH?nbbe#kG46t}6tIKL`*Ialt zU}a>UlN!mVwKK#MyF>X|opiw7#lN1IsPm$$k((6tZDQ zre7{{-!T^H3uq8Y!S|n9f#v_7Xp%9pHFGv6VB-AWPs4u;C+#*{5q)3u>IMAOu-$(@ znF1tYf$KP&d7xi{WD5!WeT_AA3w2up8)wVt&o(9;WxQ4O%rmPwenK)u!UOLE_Waqt zXFQz`*W2Fy;bk^jWB_XVC>pwYq)fdE-F-g;?d!f_<7=81QU*Q0-Y2T*xPFNN6?0u= z_QUr8z1hvqx5R=9o{Tb)Q3=K8U~Y0er5v{;F1*=I>tUT%ya^O~70OInifMfUXI!3% z-Si5(i5rzJz51WiB9vNtc#WQYN@{1p#_=Q_Zz&h3pI7Sr;7Fd;4T==$Jr7Q9ts3JL z@}AEt6nvS6o64LJwxv>)iW0o@=KT2Q2p_u+Pjy$fCjBzkmJP?U@BNgkimfB1$f9$c zCk-ZXzGKb0i<@cYdlgq<9b1dM7UCtP31is6ryi+}uu?8U#VBM^KET(gEWQlnZKgeuo1V|zl^Cf_p5 z4bJiPM4^L5k|>krkI+M{NGytz)}Wn*2@9ZZ<;)YL6HW+bp%#c;YC_%pxiH=ilroNO z+I>H}anD+Ls%i7X)XN(UH#aj2Mc!%l(gs~!g$58|zi;2N>o6QPZ2Ud%kt~=pR)61h z64ggK4HHB|ek>JL6m25M!8C|yZGw&@O)H>{I4v3^+n&Ug%|Vm(!e(P-inS}oGfl0# zUF!hik+4K`Amqth6ac>?W$1d@QX1|DLWU z(s?F8wtuY2wDP6vzCHJ(fI0tfX#<4><#N+T1GNs4KjS2TtK5@G_;AY|RP75bY@k2b zu1y2W<-)-9wr_y7CHWs!LhOxh7h*Y!p(2*g?FHRd#%PU&{+sqneg3-ehwQ*Qe?vX{ z6E0(k_(YK4WPl@}Z_jsqcGNc(r!E~LhZjx+r9&sY$rS2hs0jIZ*$tUD+Ym0<=;j(+ zK^kccM}_oeHz$>9AN@s>3sAH2FjNATVnJ-~Q-89ynjZZ_71*u<;bra$-&0H$uK7E{ zn`$y>bhTmekZ|GwnRrG)%oAH%QU8#jXm2ixFm0bWxJ$T~FkG$wUqg#d-pEqUSb7*L zBrSAGX=qHb78Sv|zKJL%l_Hqrq~?YJVcy5b*?wJHOMODtagY%HN97}4Xj9myWm=7a z6;EYOer4T6%SUF`%F++KYNs-&c}$K+@D6Y$6e`7F59+uT&OPxJ*Wg|7S%?Xl>%NJN zLIQ9ks+Om<>A#$jeE{@pbhe=8iUJ#^rJiKd+5Yu=?e@{?{LUXw0yB1}Cp&7;pvrMw z#5C+3v1x0k;4O14nsu)*(^;>otp%$%G(2=u!Ak+_UAF>1?DjH9@j>V5gA z>A+;TU*gPP$DKVE9eYm`sXc`fBNK!t_Xg9#c;&F-QYS9Vc_n#EQi=DDIy-#9B{z?g ziH~Ry=VKcKeiPqoi$}_3p$(x0{E2M7Dz(H+i#?x(ThoG#!1XZ=#k0PI@skYMXRFJ8 z63ihg9AR&^n#N<@njPo*DiFK=)k);|4naEAp=&)J@ zY`NWn)(NEQ$ixu<>A{0R7R);)TD${RXUA8WkWoz^rov&ULgiTIK!8g$XBE{WjmXt_ z%8rC5%J+j!K|vXT%%ax#Gjn}X$ygyZ$kkquB2KL1I@gxa06?Z6DfZ1d9NFbk4SrMp zD19;S@59erDp}e?#pverc`di9_K{OdwP*oyWme4z`tK{T^u&F$nKjfmUZnN>JEk+w zcGjo{NLugKFV0Ko=TF@gknF6jXRWeBYM zEiP-b1Lj&@7WL_b0;@I~^I!lmzSV$)8#*{yT$|ltfm;X&(5YyW3v88fkjSrv*|+xW zIt+bz)HxTvYh59TNQof|$g_-=tdyXWBHDfnF;Ttx1X5}mBC^Who__Y?5T?X6faZ&N7{5}5cKqki|Jw?{O=6*Dl=kH71UYb@>J7vnL zdUj_!B5fuiC+0Y_9=rl6K+j|!ycB+j=~`h^@@oA9%q`w;vrz$gQVU^DbkzDzqW8tS zh0X5rvUs=Q#QnIzZtojK=F^hHSO184)KO+_YQaFKAI56c;N{rb7ACAKS<&JmPP@6o zk!V7(jnz#WOoi4ZwW>sP)0&?dqbKBeT0PL!?7d2F)Ydd`gmb9Hck{RJMIX#!!|^7d zUrdA{>+b2pv#QPfG5g!~8VJUH8j#0~7+il#qx$X(HN(+DzC_*Uer_AWce#@0VjF|j z^u4R#r2HbhRTbLG^{faO(z!klpi|#BklLPoe(YYc$hI`j%A59BTC{Q1VtYMsN}bu` zp)X#MlFZkMkr;b+*b3w;!&-a+J@FULudCa3++e3oePj91`73!N2Q2nBOT@$3H?iXb z`}GNTXBd`UT=d_L?`Dd-x<&3${;mRJlO#D9BKi}fQ{WGpQ{YqerT)8ui!JE--{;wojj;Izlwhya)c~vY+=P9dGLQR!r@if(LMX1k)AjV4DZKot+(|G}d#R6Rxg)IUAJ0*V=uCAnc7|1E-;-l&3#O5ru5C>9YcFW9KGX}L{--5co3kk_l zE#It>9UQb-(G?!dYL5l}x{llMzS*Xelze1LiC4c%sCAZ2dV}E5R_EroM|Wmk$>N+~ zl6!Yq`30_7s=f^|~k`;9K4H8i(=<1n~?2)-eh!ZX9JAE>!lQc-#r~pIL9#6ISxjpa4H!QLz zeJr$%MHJHPci=i@D5bp8n4u^1!AJnrlT6XjYJW0{K#J6;LTSy{6n3_5D)PTQyDHy( z+L-2PYIJ9BK5Eux7pCOPCHHb)q1*sYspEml9Dxcgz%zc%5h46CCV>}&Bok#U#3vq3 zCX&bRhhl4c215$Fh`EMx-nLP zV2*^DtWOxw0?+qP}nwr$(CD{Y&Vwr#tsd-NjSjgEhQVo%T7SnG3t zR=7R?v)>WkyK@&2K1FQ@ckOkz+3_sB1}{$XfTIWIb^emP{OQGUrHuqqz!EPpBb9qp zNuU&7N`nUfI)(bRHbQ!+#9?u4q#PV{MI8R z^2NQ+7B*>K{S!QIm(i==zyL6BSC<)Ni#nl;!6$404LpM>80=P-oHj{iSSa_{GAUig zBf6P1Bhq*Ig}V(C21hFz(eL8y6{}$eoyUK*iDv(UX24XIWX+-74*nudhIz%pT0 zV?elHGBcc{Uwdgb0EW>NNEsIy0<2UajKYMgX2p)~98wdy8gR`U<;iPzwJY4T5bY~> z7CfZx8s3BBS*2&_P@Z@3+eJ&1TA5@R3A{{(CdaKyw@#c@dL5;{93TLYMaYMq2Vu&6 zDl7vOOUDo~uTd#3mZDUPey5=r*4B}%AJ(h<>@UlSy>H#f)GqI&tP_roF!sK;Jid{#rW+O*+gQCkE#6IeN77{bkM6&wx$ z>vfYEr%Mz(Lm2@=m>pLf4dr26a-4WQVuEpR|NP4}$}6CTRoLp@NwZx+^aB{hBr-J| zdBGd*B8HYlGczNGIGYu*NT|BnXS|eSdSQh>(Z$4&sE9!6`K8hRM>&{3n=u|kijuw7 zSY`m$P2jn4+A{fQwEa9E<9)I@k-o|dFpdDqcSc!A-#9>RfbPgjGh+nY#50c-RcMs3p@-C4huu1cXK+#w@n= z_*D3@ccXBCQ@V6Akl9Gc+7+q{Zm^FcI9Rw%AGj zE?@BX0EO7gs#HE=I$WizFMm6%t_&a89xf;moaqW-&enp2^v@LCSbKPWambUzl}Y9q z3;B=C%z>^cYd%ZLcC@q~3#a7UwyO)kg271G5+Uwok6BLY5T^!W1|IGyX7QgpLNyya z)@(J<6U2a;+{6wtrW0gj;s+7zv;@WnSWdiS$$q60^!W?&!GU|>9GZa;?;O6xLgg}I z4xKh?A7MD}Dx0ukB5#KJvN$r>I&SboY{fs-H+71t?8{J?X22ju8{Ly!24V%)Q$_|f zeini_!sIXftdVq@B^z17eo{$5&c?geEqKz&wDUm)jMy0m?Br)I+L1^Kz`F5l+=zT3 zmm~=#&nCEHDE-OR*BRc$wuUi-C~Z$2CL=HCaV6_KK{Y`33DF*N^1R6K&=7Ng5+KvL z6TDr$R`$F=<)w`khE=vR*yfw238%AJ5V}>v7JT3H4A#`AY_??a#hkPwNDdCLurklfC@K>Af*4kw0b z#JC?z$0?DJg2^{`$g?ackb!}JWi|4M_OH`HAO0@(+-$x^mG1%tw2x;q;v*Kz@0Wcj zTEkdh`wQ|s&}ySW&ZNDRYiO?*rW(<#ZA?MZ4Hlp$+a>7sYt?66vmQXd#+Ib^C;}nCBpD$P*ReuD=kjZ;naUG+bdc$q*koM6FEumSVVxYuART zONjZ@dn|>Fp3fC!a5h6Gk@#Op9B>M3Gr z`|clK(MeWd4co~a#g$0zLcm`LT=ehDp2;f#p{5N0>*r+>j|&3}>h0FKQrnxnp+RD+ z381$oGs!2@#3Mh8^)2&KN0lfaKq3I-x}$UKCNjBX!jk2_rFQJx4*le+0^$lg?|Eu z>-DWV|1NIJj}qachxX9|4Oc?pFoXo0YvZM@tN~rsgIjq)Mzs=79E+kAJ4V|XbsxGG zXv3G22wSC7qWah8OwUYCkW2TkL&JXix`yMxeG@u)KLrdZDjY9qew9NH`~n1zWkDvC zNuy6>k))4=vQVz^qnf&pUypS`0n!wv^mHQtHv5JlRg)q$xB4t7-od5~wxW(jOta6c2Fd2Zs zW>_M}ROiSu4MC}|uAyGwO?WgTa&@N^Yqa7`B6aYY3v z0N~^tXaS(-!qt%=rr(E3Fd4T;&AFF0JpxHuW{KFLmDV44bMknZ#+!H zMVn`{U^c645=>E^rRhQ-t!P~wQ-PFD)rhHWF%IHk;4!R}ftk4w;M~#9_^a$p1!JgS zuXwVF$lg+Ar&G(VYam%HGTPrTIreS3D_1Fx%e}}aI<%8gL{Wu&rB`2jj zyocc`@DP|#gl8nqu0MH?!>GX>U$=s_HDWHjTH>j6L_QmYgwM^-28UsIdPA1bN80)l z1nO4AORQR4l`V1(+0I%N4~PqiBI2*3hE_f`NvKdc|CNbhfxjJvDAzfy;dWH^fU0-G zxte5FqL?%M!9%AtB_e0(_TVsk6^jtHNOp-BBHUFOTpcj> zhbQr}Bw=>MoqN2d@q2Qk%qv%aG}K5$Xl83O=iWey9BK>k4dk3Gi$ywQ>MY2C zwn$FcD^K_Zx5niA5p^_^8}Widrbw#-OFFe~uL|uJs~ZCiF)Xh2uh+@o#FAukUtmjE zBMxmLc@sRH$eHqR=PE1SUYE2yQ=7~=82&o-Re_uNgx^DCRD#VjrAc(g)q3)BYmels zfm7#;px*-v_Qw=ux9xGU^=f4-ukt?7;hB@je zWbx?qL5Af`9vo-p+!W_QR6GD%bXt__^0fU(>_+qvcfu)HDDaP#XFe?lnrs zATkvs!M_zQRk1QE7xvPXJU{u2y&YaJ`pPYZX#d$Yvj2xWl7*4;e-3I{=GKirWJ|hz zr2cAYNNg4RLMpu?>c1g^Gz+`}a|hlMP6Gc^YX|M9jVqZKue;^nN2QiXwA{3v*%QtU z!;oarq)~HArFL39rrP`QGo!!L=lPkNSWQ(8rCGDXUjvnUY-L)_#H>`abF0o@>z^iO z5tpX<8PIRM5_O`}2rzzw7&{o>gYcB0EJyT|FuP)kUWox3qH6vFYLTwle%*0%gpwz>}@3<&rz^~4?p8!;q~FVCDHZs z)xADgjA>DG`Htb{$xpd2W14Bl0fdlTpM4F7zio-(?NhnABr#8CNKc(BX{=-sBe~7~ zwD{#_$8Qs(xhl?qzQ?t*4}Xj$C&c{mxNxYy+jZ!|aSQyj>S2MszdI+~Y!2n}wB;&4 z*N#unHQ8MCG)yXXNrmhwIL?}%_i2Wq#X&-o>a`6dMQW#7+jR&|)WUMv=;_6`Vl12t z;PD;OjnOot27GbLUaILooVpFvLyS_Anz=wGItaWA1Q?^U`Uy%U&X9tnsW=Nac=lLH zPh1c)OT{R>x9_tND-itAzP{n)`vubvvxwdxXh&E+dMRNUU>zd2-wGds>hQw6(71D* zb(-kN+Yvl?5W+iYHrQ~LFi-IZ@1hacZ#LDfCM?jKgbhg5>)Y9`+mA5kClT;x?A0D1 zOd)etq{zQwpVOi}Sj6b`#ls3>Z$5_QFYjGWU-5V zRkc*fycz^STNwFX0VyVkw{CO>98yKLb`kJ+y2!hbEWpZHKjT-{Joed`DPe>gf@R1FZkKslMUN&~A<9NmR{0AWCJQ37R(Nbra# zY+isy;sj^Heq0FT^WcOghj)kBz*YABR=x&VE*Qa|J@Y;`4YI7mBPTewtIL;&wCfK+ zS3729G|ISdvL@&!Mw`GkgJ63c%}pL=wdpt+j6xvpb4QC#XV33{>}cZkNSZm>!HFUu z*=idj>fxNyv=o(^xjiPZrn9>dEBc_ez*S%7tNF&3SCM62*tr}8XW@jdz;bu?md|qY z00d4{3~0F#IXTc(b_QoA8lxL^l8c_GuP9={)T9Cy%{o)7F+{CA4N#sD(rN^Ps6ha0 zx_+15LW5m{6}ee^jc5Q3Gz4wUWFWFIXnQ(`#{7P)1PuI$a1gOy;`JOXmikFSDV*sj8GC>?7i|bzEIz;_l?tDZ;&^Z z&N1W$PX6n65M1m}%6auH8vh6|0|Rhs-3-5-Sm5jhf%H&^Pt(7u0mA8v;<^LM4OU+A zbw&NaCU+i3OLQEH?0)dgvtND}qacMA58I|q0Pybuw3BO&pYzZ1Ge5IKC7hqFemt&2 zYd2?IW4!%--CRV}^dN1_QvnNcrtXhRp&Z;aluX)ZE;GAbjUA23kUkVqF6*llUVAWb zBGHTIusytaf&!6IvO|4dvb6Mfr6!+R@p{SvSz7akucK5F_y}ZQosd|OOQXQOfuP*? zDOecLNuFcKaJAyGm~my6hdQEjjAKC)Gt~1!x99?#*!E!LIGkO|V2`|50k+&moDl>W zhRe^!OzPxM`!R?F9#H3`$Ywn2G|90wj4{CL3Sh>Q=K`F_%5Vs0*bNNcYNLcX+N9v@ zsi7j7>)qhWTR>d1i)YX7*^8Tq42StvB+*kTJ=THg#=J2+!)%2vY=B@d9$O(Z8{Qfo zk+a{KVrJoFnggU27v5gvZ>PlmH&#ZVvqj-cI;Xjq)M6)jJ_|wnj0i{&`aggr1#~Q=N;JyxW zn6E+e>^7*weFOBvUNdq21k$|7Yd|{M-}V-shSzN`Z32Te`~NI;+25RD>-8bMvt!Kt zB$fmas{d{#oE`G!EaAsYNT=AAiRc|Hb`wy5R97 z+6CSfAt$-A&!%nXpH2cw{Ka3op?**OkdogMW;CU;BI|XqW~QboPzY$HqN_e>0w`L; zA;y^|&PmsBiX;ms(SC!vpobP!>!(?g0@{3#k(5OaorHQLH$*mkc#g+LuZyE4qlZ$e ztlMSh9Wf>yGd5L{p-eW4nlECx%y%FelEfUMwt zRhTkAU_FI~bY&^pdZLG1^6qIplw?;p%`ohB{g$WGX<~naN&G(EFt8YYcfcuHzO<>3hBwX z8Qa`-A48v)enZBZ@M(Kr4SY7k?0r!PmopU|CcDh`;{-5iwqChXl#GI{l8dPldQ{?E zrZRO}gzj4;S(xi~_-9fVg`}@vrJ-tR^1CBnX{`c_dL^zFZ?}*;uRNLW4W`|!X%&S` z{;5h|iJdfo3~0SW$Z_B)>RIgSeY`&mj%R5R9fUH@*$ipBh9RATZvmfup-Qdsm4UoY@v@gnS?m zQ78yd36+v)Mke$(Cl4xAe!OQbid~4Ec#?K^b9anQCW%&5H1lth^T|{=(-uMm1(0Ei z5M?qIr9u6d&`bduD|;C<>N#&jmcL(Rz~aVCM8VV}0)x)hAq@du_WtB!<9;one+?NN zoOlUo%UkH+-1VRY5LB%QX5wnON(w7)0taMEkV8Xwg>n_79~j^1LoC%xUiZhZl2VJN zpE4PBv;>r+1I5Cj5N;&;lgUqHGF(HH6p;4=nhClPg3EbgpA8+>s3KK|XE_0lfYap> z95!tT-BV0GoqxtEGnam|Ont>zKObzGQqiKgNdxOw(wKne<+b_QC2cs3a*7Z!=Ha@) z6^Vfb7B)Xio*34c_p`A+A3kq0wEjg)-}?qvOJwn#@6lkZ(|~8bE~DzJcesd%xLd;x zyzjD3i1I03TcZKaZ04hf-fcu%v36o+GjY=exq`QB|2BR+ah@RAc?L-z&&;(Y<2cJ$ z&Vy-c-!|~r&e!+Bz89aAJk15aC_2(2T|HssYflH`_5%b~?w9kSx7uQlyb6X9EqVIb2|l$`LO5FSq;I07JK%0jUgwgVWe&l3$cfQQDhnAz z=RN;*+-XlA3PK$*DPKbcfj;AfsbW9b{8qW}xB4oGYVYVfFe)9Vz&Y1~j(=u#YRW!% z7am{oEk6q|1##^16G#5W?krDAMk6=Yq4!|(?+u1~gl^8a6Q`w*m;`wDO+0Ps!r0u@ zF|uK`jEbp`H@Tqg?Ca24ocZpb6{lTPM;)vKk7EwFA)UvyTyJ+nXQx4s=Fa(H)%fO@ zwt1%0u5JrZF>A%lVG;C27ycvx)2pxjj^dm0OIw>xhD-`muLtT?Yd=j(on-SSnEF+h z0Y9;er;o2B8?-bgu~n2MgP6IVpq=|d4WlFfvp8@1a*;|4u_9R-bogdYAJ0qEsmKCY zA_;fqhA+dRs0c(PS>M8XX`>gNrO=rYS=wqv-y+Bg*L!E_n-eJUr#cdDj;afotW3MQGEMqn4|Gp!UL`WMC{R?tE5?mqeJO}TF@ z+e0;}BygA$D;?E>FobpZlBZ0-pc40Q`(O`R7zhXJMEaQ3km2Pgkdjk*wekxl(%0H_ z`dSDPgZ&}pwRp=i$%g&A0;^AvNNjtg*KuL!4tr+kZ;odbpJh&L@TQky^)x0dlWLT9 z{=Id3O_R++sOMQ-*qo3Hrk$h6;K7M#DS0Bj2RKzZAMaJH$b-p< z&xgc4#@vehccQ)rtkg0B*?81QQ#`|Ki?1*o%E`hMmqBGZ1tcP(k37%g42al)IoC6* zyUktylJT;qnW5bn*WF+D!GcjjKCQxPpywXunLsW4)_&Z=0?;D^Th8AR2&7iKvP}Wq zbW7il{3*B7>W&WDCy%lZQIX$Y=bn}>8$65b{Up)%_}_E*$QGb1rcwd{MN)-1rY zf#R&?y7<5LN7*#kX=?LwE8w4c{h0o-a^(>FZcU`nZ{oF*M8PN1w@6=Od245Cs(y6U ztmb(w&A{P9A>BIN%&-}4?y1_g^oX4h{CD-1Ks`+lqdmD+P}e2I&!x^O73#ci^0^-2 zBf-)hEk>U$zk!#+4%p#$ia)Yn4uq>7mIWX#7T$a6cDS#c+FBs+L3BE(K9v-7*rhVby^ghWA@E=Kp)YfjgGAxm*IKm-cfD zmAd_wgy>pD@Hk*)LbZy=X}UC(Y`@$0j!z^b_WqxP3l4_=d)>{*%KAT>UPd&u?Kjy_ z{$JAz13_|h#=a`j5{m#+i|Fe-VD01Ie_SL~@eCTzq^&aCmtA*{L>kT%WAd9Y07Of? zyhq#z9X?2JXLxV>_&PH2a(j?xk|aRb?ulA-hmcJ4NeD=(?uqHoBmc6Xm|ht_aLJX# z7zB8t`6AOD-><``?aSR540vv%959NcCPbe(;;_^;#8wQsT?8?KY#5+Awir%S37`r_ z=z)-RHS%avwAG1smgs6L7BrQ&Wa!753n$jvnYT%vA2l=p5b`Z-WSEPihCFyR`7CYH z5hlvRP6~aWQ6PVgu-~K7`^>)!tg)?(7Xs#&3^wTA55W@V5i~hBX^^R#3 z&04|1n+OPe>&s@QC8J112jWr+^A4_ z9iBP&Z}P3ihDaE`#PH$u*q--^fWhiuHfIqkg2JoB0wNpw=2|vQjx}33I+JGJEvDDl z){k~E6Km`IXgfA#R(@4{I6%-U3x&g?T~J@MrS784!5?HVK6)ce>4|%{TWUKrA6$f@ zpCd;f8ebWV#*Ov@CwKzU&P$g|`DjWDwxtZ3oU$nQfOj2lZR@h%T|WjLB;37vh!$$| z+#Ieh&7`PH9M${~c7M(!1#x%0A;Ct3TG8yDg)#RoikM#!Y~bA^K=t*lRd-NV7;Cfx z+;*OcTFdM2dE9g5*}3(*+c@-aOrBLAsd7py3jmm~a-79~&A#4azrEzv`;;XL(vU8) zY0%3P9$u&T-FMLu|BC0urSBy(RkN5ipx+gdR5ht)eXU8785?V<+xjsODSmk_&G&kt zV+0|^oi59BcZvSD)4)8g!pVdCkuLt9?F7WfEXHL;zO4`zX@QsXly+8RV3fM z7I9GLxVq&EZZ`Y-n{lFCQN6^p!1x_AV+^G<+?Iq8Oblhp z-ci4aUxnhPuBM#lYY#gdUD8Uu1wLqr*1KJ*TzWVwgBsnEabT9PMc?d_wGt*zBxCXm zut6y1omdF+yhURqYnpvagP%+ij$ zAf_6wNA241XW0VQV(zC#jtxf5?1#4YcG@CsYqYw?4Z)0RFBPC^0^wwobZ=XW5@BCs zjQ$V+yN*;kJynk3Z6G69KUFj}8zL?l+C3wX74vTB&XA~3%dwH05Rar5-bM z(I_N;)=OS%@G0sFIuZ|K@kd8Wq(N zMm10PFnXqc529xOaQ%W$qx58kjc)~@u%CAMe|!9FXV-tTRC+Iw%tbb~=Dr291Rb<6 zV=?6T4}kz%vdxjwWk}XVfGRK-3Wn;hq`1FU7g6f#*GF~c&7!EUf0h2a3Wp&4zPv2{ z^4U~{`fL3Nq1ux7J@Yf*img+_XE<&H_d5$ZjcN^_o-SpMyS}hvl8sqxt~1X@n2y%3 zQ}>A;S4{T(#4+`AB~47kD6W-1Q`_mOU!EY5OXC$BOrgSsyXV{ii7q&vNgKKw;_|n1bNroICY6$XJ3!Fkg@i+d+XD>XY2ZQejNXbI(x^-IdhEh z6UlFT*IanN$so@lILWoA5SmfUl{1%Fs?`l3hcIcr?*jR>KTURAkKxeSEc`+>hmP-r zMl2}~W2Uw}?!-g|HyE~NyC-hZ7AH~E?g<9keSZ;jMFw3_?vKcEpm_tFxuii$H6xnD zhYjUJo+=(a9dL#r`zP+F$un;)St3c0F>F(YL{j%w;7LRA`}qgLgK;YIgd?Z>hyIA; z93NIn^5kdn9g`>+aMejh=-Fqb=!im2y$dkhA>1Trop3@ifscq>F~P_PvQQXCnW!DfjiptWoUQRokrgv)J6z@nTr1k9hl zH5gGHBd(AJgjn6dk| zcGkuV8^wfq1Z))-KH!8=W(!d9h8g*Q0HN-OwCP^MT|2ZT?pIvDb72q?PT9-3W|H|i zZ8N`nzEo|jmWE#z8#qd5`YIV9gD9?%Z>a_$NXrToMLX^UtU_qo!rKWiN`qi+kZiu6 z+zqxDZr~C#33*tfCv+jau!X;J3F6s-VP~9`j}ZH}U+VT-p47onm^d zpwo8L%7dvm=u%q=y6?%CsDT%0D8O9`2?aW;M7xxTf(j^$K|s__e>d!iC9j<)N=^q0 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�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
D0qUS@rLiGpz&ENNwp^Yz}(A^1BW?+B=w|rk} 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�)K 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%0DeDgY6UBR!IU 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�%>PWoS0c^lF7~(xZ6=!~4 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 z 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

g(M_r&@B_dQhg;_)(bL!=aqw3QDm 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

emOx><)eNcxz)2uxHM?v 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%0DKOCPr=Yg)CF-39CKlgSMo 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­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 nRb*jH?3et7p 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�+tc&=;(j2)VIAp^Syb{;^A=VO2D_f= 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 >0@EwBZ0;TfaT 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

0NZ_ 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�QG-a?AAxKw>^GN?yz`uE3n<^Xp_ObfYDN+6cCRK95``A>-B% z16em-`xR|qi4&VXE=BGSWr$1|MTFR;69h17$kqAy{VSYHkbzQk&$ceRD~>=q7J`tb zg8#{UVE$@#(JkTruVG}<>C*gO%V8^hTtNwpnY0zK-}UdRsCW{_Q$j3Rq0;?@Rgy~b zN_fENl}?6fA(f|;@Cx(Jq-V-mk(i@84dS!ZPZOG>W4WFG2SR>hbP2)POJ{<4{9Q^_ zILen7{plDMO~F55urLHJoR=iUBtad^8X~T`>D{C6Kiz;Cc?hD`P4LDXj73L-d7cl) ziFj}7>PikQpBLA~{QAk$PM!3RvcvUpS}2Ve*7eTgdkVRLs6N(TQ*ko_rO0|oyRRq4 zad(t4@>0uSJzAKbF~;jAeZzJ)K{mpZsfrK!f7L)*18i;m$VS^q8!k)&7Tx1(Mw^Ya zo2`?d>u4udXCmd>NJS)_w<64s7vYSvt0^u@e9#4LC_OUD-)nr`oXy02Jq>a42?ugX z`-kl)B`s@V#B{!8KFIjnO!;m(c-eAm#pY6axoKuWvqvt79-Or*Rqs27 zVp=7=Usm9*V)T(BZQtBZ5ksD}53VHB*W)06H@y9MG-cq%wp5E3WgZ&Q?g-npCGSb( z)G{$W7O8c722q97g?PzbYgzwhM)!jqJluYyq}GhSX?WaCn{2REVE4xjeC98(jWfYZ zi|?RyaLN47tcTn~&OcmcaTPu8fo_YAiRO2!iND#&2lncZNkpFa9xerj*^Dwhw>ru2 z(A%MNQ@A~CYqsLGIJ^sOb1%?JOORhZg5%p;sK>4N8wUH!a? zV!IUwjFbKJPB-V(uo^|JxozQuBCA?F{Y@eLqqz4#M!hKg_F-dS@uLdcnTj;$oG2tw zgX@2y;{UFZjly3!M|V{MVx6SY>-kv0uS|l%yjsm^wsZ2d$M#9p43nSg_Z<|0gSlLLV5+TTHLr`nMORE(1YBI0Jpzc2YXB+Z@8V zK|TFa^``BaljYm+x^a~MXtgtH0f-pC7C8hZC5YWYlIb=taG?4$G~QaAv&yuHal~b# z&1y_^K;cl2EXv>o@sD9-eGE8xgS`&X$nhW&+a&{rjA9`g4F&Ld{i3P^{JbC-D+-8~? zO3C6bVAxdq@*$Dq31vR~ z8=#4P2&jRwp#nPSvW%*Q_{m6uPLcX_>07C(gG%(iKRg)@4;462GZok?+$N;nD&`fX zl0}a6IY+x-oIvM=80{Hl?U`2)}YAX=9|JlSL<-HOL*2W|=Aul_-`y zQrp@ikeXy(@NX7k2_iM}n)F@^@6Rkv$+?_u#e4Y1udtqb>1a5%BK{pN`L5jR+GWYMvUk|PKvF3M z0@-B`Y8YweE#Xm}##daLUWUEQ{l3um^8*V5U%3D&`*hSR-(RYauivdp3m9_9Ml`68 z<~k8`fY2!6ImJ=&D}hp(l?vFQY~>NW5H{?XY4UjzwiKwD)ZXsMR9~>Pe|oX8Qw*lc zuD{T_y)Jx0DW>p72u@M_btQZ@fh?Y>RvbBXgb>8r(R`Tjv%F&Ev7bLzqnpM|T)CUt zV&`_&MY{faR!$B$F^k3?uvg)LFhH0p^O*)7M5Q96qwxs0gx|V+`R=oda`vOVYVWJ# z{3l|8?GoO4q)Q+Yec^I)HWUS1No6>zltWEuEX%VPredYBi!#C3hmGi=?=uX<%aT;@ zAV9SE?7NW>^KzxoCYbs8?lWoaUyb4cHMk`PK#sCME?_q-(b*^q9?8^Hpb2>)NGTaml)^iy}9sqksS~*DS>u zpDGpheoDQYV~lNIvE8bTLoW5nUe|$aN2}jw-ucY4X^E^`4cJyTv;+!X4)wOj6k>_C zX~F~|(65&iyl5pBH8;HT=-Lp^jv z+H(X18u<)5D_b6f4xm{n*7o^TC)m@$9IWZxZOg-KDITE$J+lepsoiB97ro+h$xEaZ ziO7xw|1naf5*NhnoFxCv)}~AdGb2M=Yc!1c{os1|EnbE6Pzjc=87FGT2Bd-ru}b9z zgaWB#!x)B-VHd|`dRPE9lxK2tS2n%%f>72hsEfkBW(`7_eiG;fYBZ?^oUgmxX8(B3zn-ms?y{NQfisuZNvD`r5Htp`yuvwjXd zBF)}U#|PVw`vPYMieHFOn@RZCq`~j|=^@mq-apjL2URT({k&b59Gqv2Fl&{@$K&B< zj2LNIE(0XxwjX6y-LIJ52Mmg)P)yEmLqTt+$|;W+bK(LALqe`3{%>!YQFZDnR`-4Yxgzw*4V0_EX3$kyj>qo}R+l4nq2>7h_zqxSS+qGGs zGj9RRXj3L8BEVnO?q5+m;Hij~{w}TA_ZzCWO5nTR>lvBJdXq_D+ET$GZM!?8EBDWI zF6<}i9qEnf)&aFa+;#)3;v?=!5SRX;i2bxMX*?8N)^d)+Xl6k6oBS_}k_SE)(ct>2 z#MB<;ZXa)&;;er;dx5yZE6B% zAe#?iz%YeMgygglirn&Ykb8NP2HTL&pX-Tklys{mA}{(gmHRAg=(SzZST}n5b4kb@ z=aH+)y1ldqWs;xAyM_%Luc&907|r6OzANt)bb4v}8^?qrdKmLq9B8$BYDKL-w%Uda zCh9x=4R~+#F4(CU=s;T9*ER=Q)1*YCQG%NgoIkEK&2IriHlyf28gbCywT?B%D_MJ} zh6_IpFqi0~dRu~9kw5_GM%pf!0FUa$qA0j0w2jW;Xl?LF0y3~o3I75*X3{8wFgA`U zIPv+GvXsh~y?_^QP5^!J2#V9rb33B|z1q1(-ppFTG+}9d1ulq4RKo&*f6$v|o)is} z+73x2bat1%`K~e@&`VZzCKF53%CcrcN;qb+`BA%lE48io-ovWKcUl<6PnfqR5R~C{rBJrxBkYJ z81gEpG1ckWs#L=OTR8!X+at!w|1q01oK81;f)h87`#LNcn&Iu55@Q$d5s{RqnKCdr$nS>)z-v@ z8JOpk^K^&iVl0R!JO3`qiGs?bCvU$IlPRXO%7~^cQqZr0g6iU#CZfkAnfWIS?Mctw z!#a_FLur;(Ji)2Tx?zPiI01wMEcn6ReJ@n%5h!E-wd>y2GWY8cphmQ!7)H1=$?iCe zErZAiTukE?--;8pIU9!5%Ao+bpLnE0yS*jX(%2eLf+daHK8F#jemWzWfeM zxoh-M%}AZP;qC$qHs7@`j2xx>Q}ci(d_*wwVtFQz#*sAm+Cbmf4aP`KZ6}s3>xyZ| z<;`sn83n<0;6*=Cv!`XxKxB4y+;am?UBUdo+WPYjw6XTB)$IF~L#`UzZJ0XpY#Wa= z*Obxx(0GH2k?$qtgfu65{=(&LAb*>PYUJC@v%(Y&Xg&R_xIa9~AayHA{@S(!-FOVrqACBHt!>Sdf zuLY3nU^eU@{i!I(ff41?=~Cv|TJC$5e&hjdKu*Yb%Vk+3eWs=@j-gYg-iX*GA^}bS zL9p24JyS)V?WLja&dF*A_5H&jUD>zA%a_lrnWBD20Y*l^?Go~AvaJS|z=_bkQFjwS zdiA9DgY}bRKf*6H>oBO3RuO^H?UntZQM3+mcMtu9frbdN_L;63XJ4A0I%?EIUJ~Ef^$l8a(!16N34Dv0Op~Hy= zvk_()Ddu{n5Pbt<{K--derkH>2}+*P0=Js(D<2KPbwI0Y_gC#^bm&%x^wM0K2s^df zib`8c$hjykPyo4R5vC=3E!(x%+$e6(VSB4M&%&y2ieEF{erJ)C5K3BF1w5zv=6et$42os-Q!ISx95O-JUZTLC)}(7r*Ns@fsx|Xu($}efK)kZAwJPaZB-l zW}kng6=!u0H%blXP`a7(t$-Wp+HnuraKlyaGEa1$5o6y3{pHqEdGK8fq()I`Z;Q-2 z?6CpSJG#p^lLyk-SYH!@6$y?qHmPpB{&r7?3oc@sFtWLsk!BaEfmvZ_Dxa%*a_C*? zRo~7HYUqR0L3v4#JK?;M%M|Nyl^5`AS)P~+>aCUfz~R~xZNWexC)8pyn#L7D;#Qb(dvmh=n$!Hc>q_b)#{=zU*x=POQ)!T>?z=)F7@ zUP3*0qC`%X275~o!NU3haNjNPlBUQ9gy&A)Qe8P^P#{x@fJC;|J!O&yj^rHkY?s#t zS8iqQe!L^JgMWa8b(v~Aivn3fBzY0mr9el}DkEDWk~Mh@5}TLbla28k*M6EsiLMQa zCRAsRr?I&9Q2>W7%o#Zsop}!!cIoH7<$FYaBT2}f6l5>QVP0F1iwH?q#Ll!z>5$YUx9EzYi!R8?5wVzOdHMlJ>TulphAojvW3V$rn@6oib z1r)Ak$h|c9?*34^%ym`0LopD>j1{VaIQ`iWbwQ;?5y?TM6sWIKEoBKaExDvo+Qzx4 z2#Eu&2Ld-{~^j5=; zNpoC>eyc+ls6H^0lu8yPQ4c}w3z^Odl$_0~4z0nfJBhq%o4Bz38Gx_}QTL z2_Fe!HIynV2GabFsKzIdS@g3g9OJ3Fb|6UMO}VlcrQpj;HgE1uK-L7)-Rp=m@8=m= z&$JrHw$F@3nHtT|d(e}n&n%yc)8t&U2gnj8*Wz8|Y``2PIezw5kA>zyXkF!doW46Z z9d>%HJN~hctMGs>N!b{%K|bE=slQUxr-)6XoHZZq;k-gE^QaJ9_Wwx4fk-s}RN9Yu z9~yTo;HF3`b(+n=J$ofTn+4|~Ta#V$RV45$Ak93q4Q&%t zP|At*2e*Wd4;JpEH@Vn)_&55k!h@Ele?z~sh`plyWGAhyj#}rSk?|&Up*gLDr>WsY z6Xs5{m}l-9Pcw{L$mO>?&ti4N?9Zp>W3~L9(d;kBMIkg5dSZt_%1%5K`Z2I-HJezb zgZhQl`(^nJ+nI#qK6v%S6$ZFj+Sd{->Tmhad^os+Kq7nqCEhsPsoN8xmEPjMweJ2j zdF!tSJ7v0PEvl7CEDc*{MPS+*0~9T+kmaT|{75Oqhj}IEVS-t&`hoff5OGY%od{; zvl16K|0#6bNXvmu5&6TJk=yl`Z>Cm_g39ArOt=_)8vu?2;IS619&`L}A^?E{p6nxF zq9ezN8i{)IGLiZuOp|xzPp75DkioASe>pxwTnr_bA&5Jm1BmzVeB9$6P&hK2fd{@| zp*{|I_t&F?i^+ofnM&=o(!;uUKhwjY1E-fhBC6+-#ZNZMcQeUlBxlvly>b#GSjAwU z!O5GbqfpPfugb8_+2Z>iOA<5^PZ%Z?QnnvU(}K=fC4SNDS%r`n^Nk$98b#GF6$nV_ zEjjg*Spa^n*h@sw4S;p8)F30eA?qJUpAX?j zl!W2yseZ@A*FYE<%C{RrdvO*~5s8985*0qIazz4v9=kbfuT=z9B1t`nH@9f59*9ci znp!Tf7#vzOH`~_%G01OIViC>pZ5auPLP zYA?M{{feZPR^I7zPsK6-6`hFpp_F#5%s=9F$`_roH>kfW7^y$sjZU#1AJ>UDdkee| z7ZOyI$a^@4`{#_kg*(TA7|f=uz`r0CO6H+itvzH9MRNDeUGC?9Uk_B&xD*&xoy2J`*ne zASe}pP#qEr%;pPf0~+sRwQ5>FesO7vG$d}=%2LQ-Ic%Fn=Ka08%tAk2I%M}II{T7o z_uBl_2&(tNAK4=uVAeSRF6vXycuR~I+^g${MebXaK#3TLD^A36+phsqJNpVMR!OTc zrT&rNZboqJ#+We~+KT?gu-O*4njcy%<4*6h*4SnH{Aekq^%d(5W*z{Lt#@DYdjrb< z9!UL%K$MA*@qbPFt=8B|+-OGh?dcKl7IzL0-c1Ct9$~V{bgF?rYivvBV$Z?SDDaYU zDw0xgq0Roj*#brTpMg}{7&3`j{i^omh;8bA&KF=O>Ou0^r-M~gAi%t#uedQ zRHbl+x=E4RrVW~H3a>a(&Cd2WF!@s0JY%-n?!K9g&+Eww+s^k=;+d0BiE+PG3TXdL zlQQ;L4g1*blPjbyF|}l}@O$zyMWPC|$~e7o)lQ20G$WS%G4%v<-7YlZpbW?XWY`yg z<}Y!Ts(A8O{7ZUs4%S05(YgM5w8^_((4OM5maJU=fRbrhPhIgxWqSclcI|NKBjA}e z_{UtE_ws?%w}onz1*+SNyX1*gQiKp1NtHwoMc=@GCuyceRU|-)_fGFF5z3M_4N-kE z-|Fk`w?GrD#_dWvdX6Grhe#nt-bmJov+XAEr-d{`J@6=)hNhF;+CrZyZJ^1?MhvKt zHI=$OWUAud=+j&ndoEc;lfHPmvG6L9j2omw>Dc$b&K4V|jN85Xn91z?#V}g0U@vbG zYL*_p+|H$j{|JW&goSe zRFE(!-4cfw#UVYO)nQixsNZGWK74@Ht$Emjqn*u7%h}hXX0MOoU|s<`n7TFY?jGUt z;D;F_IS?3>YL@=m1s&7Ih;-~mjKW_4c_l>-rp2*kQJa=wwI0~R^7YWZ!u?A45zhl> zBd8DCwrcx{(9!lE+=JuAjHHlOm zXWSYw@TBPO>O(~d-UM%dU``co)>CxKJz$zoA}PlnOE!UrA8{umjt1YR{%Rj6>nH{_`%KeAz-rXq_di{2y~BM#FS)Zl6)roz`%zf%G(}u>hIO<6ygJU;nE{?$3+&0 zxDk?yk{^PboQVWZ!?dtR`scRieJvg*X5ZRz_|p=q01#o-=?fqn09EZou^)w!4)kbK zlEUuU5Q1Hu5dH-8Yw&Xr571&fB%eE=;po>)+lhM`6sIwzC_>Y16ET|v`ZEyO{h}Mz zgp+%Xe%vd{C-}^WpQxwRCrv#H$+tW~%kryvK}Ln;HSUsZ3e`TTt>!^j1o}*e#=5DIS=3x2LLHN0 zTsySflY^kcfjLfD9^{fiX}gc4eIzLy?pF8-Hw| z6$`2;z`%k^P2654B<28u*(vordnf?3hz(_xAw_p#0E9hJu6+Fd5;g*jRLHRrFL0Et zvq~a6H!Ck`d|WM{vy-CzhDdj5wa)@{-ke6?Zr2_!2bEYj5Id)CkaxF&@{!q3Vifue zg60m07{e+^du{HcD}f`qn(*Dqxw1Vk;gFRH&@`DkOxf>UWAKTYo{f3saUOYBdo4<)Iw%Q`!kVF#JcTb$T*Cc*6&vzLMvO?u34UNJzkp z6z4YYENF%4^yLr)>#w>U)SeV=-X6Dh^fP30BGy9x5(S6z)o&HITR{ebkF-48yoyRx z@=wU(vCOz*Q6d?uF_C|XJW^g|C*4y?iukiZGDIj5JWRnT>nL~=@3YrowqG?96BYR9 zv;Ob{iQ(eXl=(!EuuS2eYjFfuX{EoxS4*2Pg!&TCT?XpjPG<%sKLK7N9~{nB^9^h> zM$gQrTrAu%bt<&en{+h0%>%SAe|6m#m~X~Jet0qhpfeeuZ*}?c3_67z7}>z52x_5| z1F97Ok|@?FIT+BRMnu6X9HI0UwMVDOb>t>OvJMZmOebYeqcBgI31cj?F7$x<`T}o& z=1f}8;s4SV22G^dU4n2ZH#(js2x(;o^(kbj&Go-p#!8%6O$etf%i z0lTNUM9F`Q-L4$O=#3RpEv!ybc(%4*U95yP&e>hEY-p4{Bilr4Et;e+3#^xrp+!7M zi$4*tGqvG~Z{-+LR8EN>zjsth(YF)6JH56{G6TP5z&p?%mkn1lAF1V@*E^wGv>#T5i`F!%^~#koFe^;we1xH0YrKSqCClU z9jZssF){N5ce9f#v}%WC=t==ohP`kgp2b5UlkZ~)`!g9?u$){AUzAWsT=KOoZ1@C{dObAT&<(I>SrwqF?gq}bgjOkk#};|iM7Tj4eBw}@#zzqf{CRSs`1 z#s_HlBWKM!eEZo%!nY5&TLlG!@Auiu+5&g?s{!kYx2NaR9%T&;D_~la8n0H@uagGr z6%e{BAmV8(o|`&oi1%m@!M){m?_BrW*ALMRNMv5j3zC*TbsoSVjqc#5+Aj?{!#p@X z1+^v}_5(YhePq2XKPfiUwbkGYqBSoUk#n~I9Pq2B_|G7}hUuzJM}A^K=3`Lk2ig2EwyhUv%-9Ro z*ZCg+UJt8>|Lk)(*#1MB#>)P`?sJyZw*H3z==)0mES7b_zw>>nt489 z+{^`8Jcd3JsXFeL`(-?rIj2cE`nq*#nrFl<5!|ZOTU?y}{d}?Z_yivlMaIo2L!zMJ z8q{MqR7b+urxWrI50a=?T5{|vBuzZ3&X2(#d9!A`vuA=zv1bTqW}?7mxIWK-`C~l# ztQ-qGrA8mx-uDMCWD&NW%yEE>m&4vrhuK8FctX{u=?Jtzv_3A33UvsCh^7&_!KR|a zec>ug)x?eXvbeVv>4I}TN^3k2#!l1H7vHbYAltr z+~bOA^x(0YjL6B!)RaL3!=If}N%k=xYvmV>Yr2h{!{h~XzC2kQNKpn7G2|l?tbZDG z3&UEIspi_Aon)R8<=n;h!%C{&Q-7N@S_oiXHvQxx(nzy+7KaV(tW%CcZ3K6IAqW}s zG20hHNqj*IIMqNu8}IqQfU>{(70!aQY4Wg~?i2Z2;#+<6UCwp}@q2u+5YI;cG!ar5 zSS^N?qH&iGFu)EB#lZRi>k0m*zwEZ9$%McSLYlQhc1@xf8=mu#QL%_f^phhVZGtnF z%-=z?7-KV_Jsq}e1LkITyx>C>uY{529|!vIW@qKzygzhn=;2o)$A}Hm>%or+Ljg(f z{n1cgW&;LDumM*CleekrU{LRWu}TQ`D{MjoDKkiCLC$}butEZH2%B&BRxl%}w6qR(D$uFIo%V`n4)QAQjvWX&qeY+DH>7G<6sv(_OgRo@^Yoeuv}XE#TWjj3&((CK zhau(`c4k}H$(8P9$7RN+d3QwDf%8ObvfF*p<3y0v&S{1o5QR~}1MQgcQJ2+a}1<)3&hW5SR@iESE3}Y>k7!-ggfD z=&W{Iv^`_>rH1Xprl3osxLf*r`=kQ`KErI_k}*g;Ib+U_A7hOB-yxvWUv1z<7P|#5 z5m-UJ*g_5W+c|1f4bRqfruZyH9gD)Qa{@{{KX{ji_Cnj)KY6eAxvUlGp^cqd{TEh7 zShdq_f|a#_4`__T2Mia+>&*H;5E(itI9SjC|E>J{rCW)WYCQheH;(<6WA*=`TQM>* z{I3&9r+yPjH(8N><=2yAd#i*}osgQ96;_mM^SBM*7bc}jk1!=?9E43F+x#B}o{RXcR=uhU{0N(sRxeNsc*>M=mWC z@AH~9B|H`dt=QBS69(E|Ye_5Kno8d2@=1yXO@EGUBS|I_!7GJ{byFx7#KQw^LJO6Z zttx(!ESZbS?=EVrZ8i)tYf_mhculny*#(Kakj>Cf#Mk;v14M%C^COU^iMb#If?d^w zCa1#cKN4t8>oNu6vd)K=&{Vwc0p~JCp#APyL~+ek63)a%Z_kecU-@iMES z;U!s*tm{2`PfT`ho_Eb-2P)_`3T)TmLM`#|I19x6=`I>B7z`#wCiMoT_Dz?D(7JiH ztfOBV<* zH%L=k%mH3)0uG5}Y|!colAh2}HW0C{HP-(Q#?*W5gB|^Kp>0$& zEe)~&MKtl)^ZqbJOhkz_Wory~wF+?qBs1e*Jc_bw#Gw@ORPKa5?w(udUO9mhEYG{& zxj0`iY+1wQbKlLC2-oXArZKCVG(74DR=Tw5B;0zUk{n-zze}L8oDRpdQ5Jv}Bsh(d z$yhO+Y#tT3W4$bZW$^A;X}$}h7oIfUYz2AAUMezy9B4EV`y`IU5r_xF;P?`wDQ#5< z87ec|QM1tMZl!_aMx(NCOH-zvo=KN`Z)wFarrzo6-S7k^SD`pKJ6gKG>UU!9IzQk| zrS(~;a~owxjTv6&B$#fkBvqFK3s%UNHU}lZTG@a@p9%x&J2}A#xH$7shE)L~$z=7U@-i-+&V;_jPI_1=GJ46Nc7lP(* z*{?oZ8&7Mob1@)=X6sSzvXI$V;^W|H_HYvgxL~l$pmR8vKR}a!LX!PKw)5cX-HALs zoo+uqUToKwjW4`efB_gqfp(z%+$25Np9hA4t+)*?dR=xYy*}zgJI(jrJbVu&g#zOdSYd4Co&soE|lN0cDW@86$0Jz zM=HA3@&*pphTupMn*_1sKQ203-~-in-r&PvR9l(RXj`hDFRF)9UZ%~Gm_e0Z^wY73)#g0-1?aUt<&-xWHAz*$T)Rj zI^l|hBE?`sl0{%nXzxL!5Tx=|A0%X;32-{>hUkK{ct#a{u|w@v8RHLtp3}-^jT@IoFqzb@Y*L$-={wUQ^;hJaxnY8P2wOe%g7`(G8K26+c9;w zygnQOHDl0^BkQtOc&PBGG~+t^_&vSZUD~Y>e7_E_TWNfwwN=e4S(Hh%=NF;pDn!l zE;82V@Sx4W7J7y*zaiM=tiwd+t+L!NYXXdB>9huNw+Y~FYeKXudj{YG%>iDIZBBd48S?!ClK7dIuNg z2Duzc2P6BA{>p6KvL&pLo?g5RLBAY6`!_^pj?w8U1~^)%{H2jDt38)h`IwBi;byM`@Y~=r_r!ci+0UQC_cfjRGL7SE};*w2D^|VGaXn3)M)3PEiYCsZzDe@_Sg+7c%bm) zm#yuHn-m{n0`+cKE9%DPwO`Lz!vvzIqSxx?>Tew-9j1G=2?LYOn~FuGp)oh{;bVRB zjyCJxaF11Lk~^$4zjaziPQ6XAz8duR@d9$^GksN?t;ixQ#$}b0L5w?kRwEspBx3f8 z6)@Q+mFz04w0N=yuFh^ZPPzOA6%0Y@mnrMm-j%`Ib;1+$Ah$%DA!r&nW_>w&I>%ie zhIF(Kap(s1B~$)^M_oXx6syPVch_yknC#|ooqGyQR&X*0TFis3s_&;v&le zoA^!5MG>gqr9-dUOd*X+%R{&K<#+TVt#)6J{COf;Nl;pmem6Uiq8Z3E3EfxdU_{+ zMUSTV_j6w;4~He|aJ~%~++!Po;Z+kG}$~Qomev*ui?) z@_LA}HMQCF#r#vM&599(?@RM4wz#q2LL)veT%vT1BmL904!g zmC~XhPYhuMiDM5F5>W*sAWgq96E<#(+mDr5^d!@uG0)@2IKJPup6{)6Is13^8b2G~ ze!k$58=w+rv3s3Xe}82U9mv&WhxWTx zX9z)8@%An_*>6DiI}14srtl)J<0V;&riY{2%vOKSYtHdJ?+2RI7lY9{5*oQyKuhA# zo+2i57+`}qM;B(pU%Kx7VG!NN=fk4)D1U55Z#FpDQA!!e3|>393WDH zn0yUZ0m00qhI_eNm2_tV%Bo{vQ6!>0n7h(XDD69KCfT?UeoTa6>|0d?@(v>OW${Rp zt0H-0Wf)$3i(VdHlyKn6ccu33*I1WW-IZg9Z(0xl@LsE$yMN_|UdzFW1XqFI43RA$ zZ@vJWvEb~XQeMqh(=%Z zv5dPa$1i5z+7zQr!2L*)ghh#($)QBjFU9I=a(^ZF5Dd)%RfI%e8PcAi92^RwDgmQe z4nOwz4T2d`WrVU6@la&sAi2T#lMqtD>A8n|F%NpXoAZbMRz+Al(^T#HW1i^euLNt8fa5pt z#;WAbvIC+SboddZ%y^>#k<|$6t%3PrL9$ow2?fAf7z^|<=OMFSyv5-QA^gi&&hS<0 zVSbiA?5TqC=ffCc?_3|RAJJ!QTwAJG(#K~7oHa3eC!I`3QAAM`16tLU>je(!1?s@D zaj1#M$AS68tXiLS;eg-+tr%+JjP!w@;Zr9r-~b%rWu0q%Dv}L3w^95Y+6y{U(8A1A zR70QLom4^H*0E9nATK!4=~Aa^@%vX}wX-iW0pvH3KImzNa^{q+^hirO=Bf56$(y}3 zQFkul=I+wwnZ4m*#`0U35N?;BpWnzuJ}x31^^B=qn+&>+rzvS+|BkvpafLgicz7P5 z3rpD1-Hk{nC@O*!AGynj(pOAa^%sGdtD9w!5&poWD9DE>Eo{_F95_VE z>=_H5H`=V(WVTdCNnnPfr6*04((Cq<*gUbW{Q+giC_A9etS#5MtJ>uK#V`MX4lsgIGC8@;f6t z=73bQmq1u1Du&UlJHWy31HkcVV6WHD194-`87$({G1HH7T<_OxHn&smty?KqR}y;Z zXEH(k6;vi8Q67IPzBfThTi<5Cwg#RrTPXD#OndR%Rnud^!Qh8aXKJhJ18^EMj}+2o zc*c;Y1wh4tTqtl|fsyj7D->L-Z>76pC@H`id3nkTl7ns^Mu;3@I9F z?$@FeY|h(U$*~tWs1w>?1h-uEk1&uG6AB`Z$-EhfoAPT*-%m~V7BlRs95g^ss+fhg z8W$(cUV*rN1!5b9)|BNZ{9KRNKLP=G9QhZN;*eZS`VfSV6Aw69c<0LCARcbn_fu1( zGo~mshQD-W;eES2UOkhQr4AYC334~_ZnZYQd9RZ)R!e1aP$mz4SO%1t( z1`(O`_pA%RdLv$poLV6g4T5WJize*~fY$WS1)slEvi7=i5`VptO z(Z{+(oO9i%2+f&7wGehK_|93rXeJ|;UslQb5Y|@_$bu?RuQ;UtR`bn>vR)$HtqAjr zx>$f4{hyU=AY&LQt?Hq*LXY)%3uA*SC{T=YEu0VTT-I+5b+9TTLP^hR23s?#i8;&V zYaMFjM2~7=0$5aECbhF>xKXf`tQ-Rh4b6p~`+{iH4nNuUB+B!m5K9_>B9(~U z%Ta}ZVHD9gtVfjVSqMS7lv&r zzhgZo71f2gn=Idpoaxso7e~oYIHYVvhPacD$moI)%4pmbW=T17VkA(IG>R9KA7M~_ zoGA8?q2s!Tu)ZI8gawH!3)<<0PFu!JtvyrzkxJ=>UhTC951Q}9B0?iwd{;JOS2$?->zgk-1;g<S%Bchi` zR@oU-b69C`Fm8b)=i~Ee{&F%XmnF@VL`srAm68~gpC&7uLL_@<)RN|v`6J8G^Tzv0 zF28_h9HE{tK$mfHv#ZOywe7=ZB>gmoAt9e(9CL@BvY;N{9bOHC?<0925x^v%B!bUK zh9GfIQh=k7lVLn{CEc(y!#JVXY|Gs*dj(R+0a(vocl2W3S`#6uBb-FG*rA}txP2U5 z_0a6Tc0)&$AUg?^qx?HxqbW6IkpnIc1XX+oFTm2i#eZZ53= zCF!AM^#C1rvMz2{`|Bp(D@p8OqhmD@?eR7kX0x2&QLJ(rbOu8n2Ejz+puRCtx9RP2-{Q{`kYklBLKFo^0(z1JK@X6?`}BxSuPh=7 z(tg3+3njQIJ#eRjzuk(+CFYridBE-+>kxp>hy2=R^d-Aw@W8!7|37)DT}M^k5s4(t0! z$-0-N4O+9zBpojO<#UIs1z&)!HYhUU{uc*wFw$gcXJ*_a&(iXMdsa)lL>-7AUKih`r@4s+7MEX9{6+R7v6w2ik(7A#UW79$P}I%NIDa|nPOX!o-HhkDH&HW)@>HR2nJlB{sBFn zf@2b2IHdacuAzdBrACWr*p_xg_rTbW{eTkwV!COw|2q_CI(Vr)ts8|9$PcN$6*glG zJQ-!Ki{G3kXQT8|I|wtY+}#b=#)(cQ%$s9eeW2K7!u&x19jIech^~a*IUp@pQ)w`U&NgQtj(Xql5uZrwods&X0gfj1Vz7>=u1)h&?dI=V*!T}WXL-wr>0rZV(p8q5Q5rK!!HB-?o6UiP^4up4VJ#{Ythb3NROA~@Z?ni#G ziIOuGIWV-96r8^^W(1A+91#yxwb(Vv#LlI7?&kqT3gO3c-c9AE2MEG$+1)%;&{K@Z+&r1PaAu z2a3CQQUt+3;+3%vtBv3TyRwr-pGD8T-^7r>WTRB5k6>6kE8NJqCWA7MDZLJzTo9P3InUGpm zPe4nspa_}$G)t4PS(3)4srUIYr=+g$Ll+M|B|ZC3Hu|N~xWC<-uhBiSv@44|fJ* z(ImJfhR}f0)}My9Cf^<&UQ@ULX0{oR0o>0%@_eqa4Cf`pRmcYj)h$?9Lq)@ldPNgz zn^*>g471mLPX0jE%0bKwTnZ;qh@?}Nt7Fug%`c3*pqs2^z$}>Ns~cj=<;R`zs<3nH zBc@uccKd6;WPbX_L_w<+^N-b7d!}~+w)bHXgH+-tJ5cNuNho+Ju+c{`Mn4|mldE&K zO)*UCO`2U3XW708K?`uV7L4G(Dz5Hp6+7Y$wn{c&SD_9Iv>`^t`)z zV9C-7*;fa%u(H%syD7@idAZTelM_3!7)U%g_JQ$4FdXvnHc6G+v6|m}YVSRFwqtU; zDGUk-^xE5Fk)JNdt9bgxuD~fi1|3}#Y*EW!=VQ4KJ?!M+so}`!f)>u}WDI<5VwdMQ z6yK11_Rv2Ynce?DSy(~9ZICb8+`H*TmDe|@&>bU-LKZ%R3o^35xc1`md_;GPW0m=j z!jSntbRRJ@vi#S#!`=UH)8kb)zo#j|kmwC;pCjFzCw1zX@P@;qk%zr$h|5t_mymKZ zRrdGw28cjJ9>x9C^3g#|QC+WI{p+O_dTxC?YR1R?CHA=S)>qZbBz#$WHl>xB77~@& zP^o|;lXkVy_3>4^emL})FTeP#NjiLq^66kh`}gJK^RjZaC!HnRB*8L4bCcyur6jhVMUrfbZnvFAO@I_4dI{*0WKCEMH}TD%)6!!AFMOCs&4hwHp_)Y{a8 zL31JxoYOG+I*6eBAN+uz;VX$AiSV5J*Ms8GqW?steizj8LY7YkUk@7SP$WBP{f4eq zr^l(WrpE|8>lxK^pWJ2G{s+0jzB(+zvwJ&Lr`e)cgfuu?Z8SDANJ|-w1=L$%-9lJP zU$0yd)76W$I7*yU!dWicsud4YTv4FvZ2dSw4u&M1FywiOx?(0`FJO-(@$1#_-aY?` zd-JFhbS>|t`r>Gp%?c%u@9D=|(u43j(xOl|-aWYhw!<}i5v zs+e?ZOk*MOtBZbx;sf?)t_`?(rknU$K&NjgQtQk1IiM{2%vzycu3fgrT52x(bT z>le31080K424*4D`Hk7UpQ9&KpbvHHn9HsQ+vd&SySf>*%&Msi7xYREM4&Pbsw@=hoV9A%-O1aly@)#>z1MMS&en=(^B)|+Uc z7w}NlD;EK@@FOc9?@LxY>M;1$(d~;Obx;@0W%sm0v8Tk(JSLBw(_lxsTc5Y)L!X&s z2&>99mk7j~fe<@3<{6U#Obu(6MNy}6Aa^kDNb<8)3v(?#NwM# zX>)?IfMgGdOKdo8nw_OvvJ{f!8vlU_0g@*@n^q&9ycHt+cOj|=D0 z;PdWDwOAtjCCZ@o9>JpIeJCq%^5vOh3#r;_09wnkJ@GcY!}wxuX)N@_G2xld;c$c+ zVuDAu{iP59XHa69_u=+{g6#32kJEQCeH^rUeF3IMyy8pzc6qc?+*@XNZ5|+Fm6IsY zq`(fjwuA~_RRIb2*yta(sk&BdM;C9~dJGIKmhn{X`^4 z>_%8XPfZb=l3vfNM?dv99U}>u861XAfw4YEt|uRVqRAv%rtKSp{svg2xC-pH*1_&h zV*+5*-=8=!VO$AP;1%>{AXm6Eiz4%7$iH`yvd_{tV1p@S<{%~T^4pD>xqXoMA;f}1 z82g`7Il>`8@gx6LDp~3*VQIOIB$fzho}-QJ)RhGU#s~vs5Eex4BVYkMy@+Opgo(n~ z#x}({CHOPX-$fKIktO9X03hW#c^rg9+ z={cpl-BNks9S&cc5}iuVlg_Oc@k~@GN%&HjDl3-*I3ub3Q!`e^)-@j@V?Ia=99Cz) zYcsegh26u7)Q3|P5O2gj3c1;4Q`SFowl zq(O})YJ%*f3P5o33`AeQ%J#86ygYssJ)Qr6g9%LvFjV?0o`s9`syRgkT~pQa0%GXq*4kXv%Bty9%|)Kwn<_3JP<)M?#*BMN840;4n{!^(8jh57ElRd8=5Dn#5T-uS%^u`& zxeH+*poSd19%&AhDJfZXL_20d0xxDzr~$O4l3(lRs!eg9_u8&UKh0RMHZR0&1?MAB z@TBwj+yz_6U*UI&bpZ=ROJsg@T85Tst-25cWLpFOa2RX2TxQoJ-a&(ij(ZIW{}7VwvGGqi^==T?ds%i z$R6$+NS-kHn>L?bXkU|?#i6~IJ>lA^(hrA_{i@Ojg^>N2cO4Y=I7;Etj0Hq9Pd9dM zNBLw`S*6-4pUhGyO&;8>bHijyO`5YqJk{QC#TeT#zRWw6&mEqYVZAFZ=-HlU9|1#+ zCkxH%rq2AGJlbZJlfH5bM!+*AK@#h+3BcXpb?Xx1G}pJO^h#U ziv+=z=p^4LDd7(fA|v^vECQvq6$~H)T@&t|c>Z4lN3Mx`C4xhmo1=WfO&7Re77oEB ziO#(Z+BW$?!hgIa!Iuqo+kys*f`%JW<7LrfhGFoJD8D6K_^%(B-1LZlY9@!9nf@aPG!C!F4+?YT1mLJ4i zu6LK^OuVN4Qk9tsVyJ8XEM4);Z@|z~U4bro zye+T7@SB$j$p@~d81>?Ggvarh9N+M_cS4Y5EiE0}tAt7c|Lpc|N`W)=d^lA_Y-igZ z+VE^Iy@qo42sKxN)5|!MtPWdq&|stAuF&jxw%Iw~QNQ81-kyg5-|bqs?Opbc1nhdR zio>zvTfi3TqMbeGlEj|xw%)wnn&73J9{Ti#8~c3S2WcZG@}d7shS@RI9sIUC{Urff zDQeGKAS5~M|JMJ4S8|%q*_Thi5>F?wVqCA5Q${`p1RTQ(N9`Q^SB2}pT_0R5Tw=a8 z3GG{4&4Yp|DpChJpEX>dR4*Z@>}Cg8s(|#sH~`>>Z%&9Wmp0N-X?Io1JgqgE-3afxty?>Cy!oMj}8qK#8a=iYkUj6;oRnl$PFxr7t%znhI24e+LF! zNc)tdLMuW1sh!D7 zhwU}2+Yr2=FH#XTdh_6F$-Nvva+r92hS5acwaS13#MP;6a}b!`0z;hAkJpKGaAJ?G z*}N^}1PGq$pt_Bo+i`4?ilx%;VHKE^yK1lCul8)t!k_&nRMDMQ=um@bSLLGxQhrqM zoqj35&Rn|Tosyx$jqH_9p8hC0$QHHa?ctIN{1wk>1{g!E<#suYflq4rvrxu?nAP&; z0c0=%E6-*v4BJE(rGq|2do=|3&GCgd(b46HbzeZ-9|rUP=uQ41g8x@?m6?(4zXk_y zYyR8L7(@J@?F?nv0@zp2^f#EIQ0={fHek(e(onw?v&?Ae4{@p(`?KGj^zXbj7KuOR zwUi%vk($?6Q!`UDUnVKz2Nv-(J3Q}?ALEn%qN_zDD$=wosnDe21L&Nr!b~0Nw&=I1 z_-RGty*0l;%U*T8l2gx2F*)Mr$`z>>Nbkg|_zLu57-wKm9vnvyBgxnF z8LLYx|K+Tqm2~j+Y!LK6;kXQ@tt2$U+RG4kI(k zJ2oA?nuH~lhR-gz_wwB|?Htf>4<9w7~~CNbp2MEealPd8zRtMO|eS=&MR04i%uZC_TFoT#^ znqj~hoNdQ2W_+W9OsAV<&V%r9Y5-Im5=v7c=CfXEuKrpvK{0IvLMAQqWOi{csLy6t zAVdAeOoR|pB^%7Mr!O_yaotPFOT29ioBiT%#%E&uEtO1L?kT+(O0-Ba=>5A`=iS|(jJ)bCOoVdi=~oY7WC{>1>;hi{+%GcN~#g(Bhz z%b5xi*o#9Lb#ME&v9(Xfy0Oe5K|lQ`+g{M%-p5o2DG?oG5TTA7NA+UO_luAiGrzfx zE-W6S9{AhHOfC1WGlto{aQo

57LcsL4yAd26kX|H*BGhi3<`5S&Z$st$Rcf1oTy zaGQY}!~0}vo@DX8-+rKmpx!=R!P*#lkJUDdCHY&Io&6~9=XjbK!?-$9u9;{w5=mGq ziZu|5QL6%O(mk!GaX490{cYPSLI0e0#>*j@<;Ef*&Gn#~GSHs>)Ntq_z1Y;C@AM`nKbSmA z@G?D^5uIPBk?4O@ml?a;5JW-)#~6=0W5uf{=6oatC! zTdv!5^z354*ytE^>JtmN9C3aBhh5qj zLS-e5+5koKbm>NL&2Z>4fM70;BQ%y_Ni5QJ$rb&Q&M^OWgSegj_GRJahxZfrAF!O} zK`C_;0#@=#qT{&uiQtZHq2T@EfzF!pyioFxX3%-o!bd@RLWKUMU4;gNhyb249l8;) z41->lzmK(@L&21pO46Eq)wcaX>*z5QWY#J!;{d{O!diF-L@|g+BF*8vL)TTICO9hlL2EJuLIli_ZFaaV<5ben9tNs2u za*$BM=>zocMN-fjA9A&AIIIyID=Yo*yxUYNXrnz+Ic3o6ClZal@YS05FEbe@e( znSKyP5n6ip7?}!$K?1y6l>&=o`*d1w$kq%64$b-D=Z7r zdF9GgL1Vi~ejM(>GVPlH7+vRi6K9iB#>=Sd6$MXD`=2E1iNXf_OD~PHj(UU&z~#qj zswo;sBLvx^Ti{4=8W<(Fqo>L(z~(0H#L5LF5`_~d{mSCG4!vk0{0s%e0Pxnl+=@uJ zj)j@=u9|u`*fYM}#){}=;@F?!e@mHfptD?kNzRjro=7Q)@`W+42~GUE5PpaQ0_O5= ze3_GBfX%iqaz(}i0n35gJp*SRWlo)3G|3+7&Va%GR2Ascs8KRK2%2vt8=P4I3#&f;_WbC^%(iCjD$NBBTTtzCHA4 z>Jh~wn}j`(6eCf~T!)~v(;+Q@A>z5?-7yGXHf0JAO&SpH)-QyvuY(14G0@{A>?Q6Q zjSTjPB&l{vmvG={cKbo;27T_+R{j0AkJlC0SVhp>7WpRClf84&>?RH-5EHyB2_rVO z0GiXu=vqqq^Jw%ka{zv6A8Y})q49moNN(r$<3TVzc5G*py+4%B3Qs;MN+^0%M0uzK8wN~sT zu~V7@r2-fWf3$v|&1Z24&`+uQw=I+Gewkgy{l(n%x1NIiCB*n)MS@hAg4gj9ggUB} zIGB--$LH`V4|nW-A=zU&W|!BwIJ?f-S(vfAQKAP0M*st@cCoX<;HE-yR857(50uSA zWf%u%z})+8F5blFT;`(jcpa0L!x^4`sTQYq)cs|2EV6;6;9Xo-Y2JESEjUsD4!J>ea4wPE- z`43MkZ(~j?! zGJC5A&%Ul1*mm>y*wA(~ft_s3E}pC|3fgfE#p4dPco^N*YGlO*Xp6+J&&*C_osco4 z&D@Ead-n!v?gOI$YmweR$&5dO=3MZODRV>GG3L6wy%r%aQ(6U0U6@LU1V!|?X9BzH z=$A0od$KnIcgqR0TOgGu4hU0cpq`X@TcQhs`TkOtVV(fA6fgEn)2ldZr8)~kWhVQ} z<-zM)X3Ffc&x1B_O5fZ1Zrrj9NG688{3)ZQF3n)(yrZ1k*#9=h<@X)=z&kOU`x^^2i5LLC+x|VYX^?vfSLk zWl4K5UBz(z4o}DAccAAIH-1LV`gViE{OYUL>qn{E!Ue#Jl!syUAlc;L+s|CGE?X}NL1MaZRd725+^_>2Jx zLvXvRHp4+u{sVTX*elYjyf+zI66lx4otM)pMXG(UXIey%n8)-W3d(OiKf?-eMYuW} zGfEaLz-9Hy_D1`Z8XX`y;=7CXue=>)BrwX;&!Si4<4~y)Wfff-iUMVNFH-U6RRqbh zDI9^OBIcwoi`6NSJT;IC7~c!By?bcSm6A`;c%w*-UGjwQHY^pOQM3p5HzwjmDgqcX zSl;!(w))Ar_%ZVV5R`{0y}#{o!?<7h%!f>L;u<7}JMfy2g{v>SWNADVlDjn*)rPy4 zyH_jIoclZdy>cqJcBbPQRnfGZ zrJADnHgWJlpCkvp{F~ z3+;WHgP2Pg$M5dl$DvjHW+U3|Qe9nu5BqKhHdgJ4JBQW_ z-fs)zF=zDoW=NTQvdWNtRO-m6OX+~Sx#empAk?<#FC~_RX^or~fRdujbcVtBPfTSD zofSF=NcRwgo^r|1lTG%XoVE&bFhNx75{S%!;p_$!`xcCinWny{7?Las(xtK8-~1*Q zcfQpcFFM!abq@ZNN=GjRT~OhD*o5eSQ2{$dY> zut+%q;NT8tcFgt>fWCkr^j>o^g+lJ!x5(%1D*>wt>&+iy02HBH^-;7pgX@RjNDpJa zs|KY``8x8gLL%IDEmhe1|8e=*Y}KNTnjm6h4nr%O;WDlR1YE9U1_na`y_*e!T6^5X z6cir^hKVejVp{iHN0Cohi>FODG9jcbCz6Ih&q9?xrlH{nnz5Y&V*1UeA<5S{47j@l zQFHr*+zC!)hYCs7Lq;A8t{G`qEu?dE*jj!`pnKtnoCvt<2qi-%YpMtnmcosB>SWFv z#SR0ib1FYzgU?}th_m}kV4XRZ3vA{s@_n=MZL^R9P+-8Ff99M)q8_J5V!k!jd5jLC zJnhm6f|Z-`oLb&bEn8HP(0_T}FXC@Pw6EU^h+;en4qF&G0~o+>3~Rih1h&hKNgP0X zWiccms|+;f7nHUG(@NJr5N+xH~;Z zL--X~s(@`U+L;-Unc#0rNxzQ}w4=uZl7S6Hp`=OOP~NG1mN^`$9Lwg=yPG2vF(^i7 z(kw{@<_Xw!7&8QOxpNCO(@`xfsbYx39}%M)wQ(n+ zoC6T_vUQN)*&Kwk%rXYk5e~Wu7DPE%==(-@c8^027uY2wPeULRTy7(6HZx$p4~}Z^ zrE;^_2q~29SJ#wc&##Dq2jNLi8XZYbU_oR@B30OdQ$UPIC{zz%2~ZD|$4xBQVI2z? zKn)OvFMrOnWQh^AZYCIKFqpK|>nt1Uu&QESL*cgS48W$m{GE;GLxIr`<1LPEm&N5i?S_?ddID*CNi$Eba~Tt(_{- zJUQ>yU`hiDJWnL4QMhQ%+kMN|=y zKV1R5R<`h}xAhMe3&#c#;g;#FkTj=hEWn)u|F#03v+%?>45hY`T^uAOunXD_2`0^{ z%mQURWJL2dj~`mNWLZF6#0g;26M!ZxfF>D$W^~KH|H18u3L{4{qDPA3SvpV>0;7E@ zc=7%W5*8NoCq5GJg)dA^?WnR=U=zLW zn7E7&yt|ZronQet6t{S78IxRBwJ6&ib9RWQk!#2faL;J7 zX2a*xd$vy)uIS(Vr^VV&R zuN@`F6`J|Hla3k=w*w}u+)ZL3Co5Vvc)(Y^b&YIsZo4($hhgGH^`FoKzD?nh=V zY(K2CGno(XSj+p(pE@v5tW(2>_Po`o}jha?|;Ly*FFr ztarapZd%jvs3H8{@(g&Jd92DY%h_x`tGHsgXtw-5ZWqI_-L%jy25<=U%=kkjkPx1j zTFp@dRTy%JQufBRdw+Ybdz@zvQJ5m+CHVum)4WDpP-;46=++18+W{2FKHb8mz)J3P z$5CGFr5T4g|M-MKUBP|>_&^XCL%?l>&XZ|M)dddMKW7%SrvVN!@tpe?(5~liO$Q&G z{o2J$LZcss4=GEqB;P6<{^%nOHgMFQ7w-(Qo%#XGLsF_(hw$pl9z(E>kdU!b6))gTe-50_aMhZj{j=>Zr$cn zjFN(4L(Gz&mS9xf^A5K&K64;Mq5x>>ne9x%AKWW-3B}E!cf^uZN92{VAH+-v&{n=3 z2FNySwq7C;6Z-bRgw@t}NEyM!%lL8gdy|q^6AD1rQqnMPE#g%A0gKHR8hp)su{VrR zyB|4aN)=*KA0F3}m6B&w^GP=0HdeGCEuEC0oXIb+&pmC(6=F4j{7EN`*4Ft$RocMM zQC6Jb$OPnCloaJTGiKK53+N*gMoFTEqHcowYCg=8yp5*!O`_6Rgh5H$9w(eJZAs%J zui9VQyl%u_I;n%I4V@E2@|17|zlgf;V|xXT64uj}(w$JU!FzFF;~}qUrx;3JpO=5wzo36UKf=D}E4`R@S}F#AXCEuKJ5s^n+HowYFNj>=S72F031Z>b zC7S^hZX)O!e z?w*~_Jrpk}W0tzaj-AZ>R66%lH zn0DU~C}_M#Sbm(b*TF8iLcJX|VPChDSmFYmgzq%d`WCh^{t+~!(z5*lM3z3sGHU)RdGWMnSx0KuxQ}^ z2Oo(ayuWiJ&JJOyk=6Gy1?Z~LY!h2;UPth^hWT~jHf zbRM18UxN03{V2>fa=d>P{5VIiJ2h<9t}N>;do6WvnXFrYJ!Rp70gDQ?yBz=C`&NO~ zRk9E`3c@2h9kvfVW34{_0FnbA@FnI_)*GmF)8}KuI@=I{+6j)23nQRoU=_ECY6n=_ zjT=S`wZ-?IY{||Erdu?Zjpx34GxNl(0B}sUEx#fR2P{53RmBlB29zlFv+>Gpcw|ZoDJLT zZbDaCGWVJ*z>d1k=3pCPIEr-p{BSc{0vP?gaW3N!ggZ(kZ64OK#apg{t{mR0<6EHHvCP*loQb%0-F~$2y|`%(`~*$w zb3819^U)d39-j^8yPLt?m_>(^IKJi?s?n~zS#SkeNHFxQQm~q zCm*zdU45I~T;0OMf`+AuQXXm;AQmVO{yPVOzGCLLeP_!m7mZ5!)htNA_4e!Zq9gu_ z+ClA$Q;l)&pR3qdY~RBR2A(53V!Qv zkN0LT0VSQxT_ai5lokC>Gw5h~0A$+}S&?F?1A;*q5#$#z{)53>mi~hJXz{iEr->9h z8^ixMky3WIGbW&yGq6x{vWB9UC17M=fT9;QcW`w2_sY%&MK5h^W9no^z{JSLPVhg^ z|NU&`Wb8mdFKVUlWGrlKXlrB)#mfuj=;UCmZw=+PF|8?Mo7IZgbE$T>rqhNq1M>$Y z3P1ve98|L}%v;>xjeu)&DJ-9r1XKLiJD1RPHNoZ5Tg@c1FNCEiTo`MuoB{ z?w$)gVT%%Oy+{d(#IlsdtUTKypX^c@GMjz1px;U!h2mJiK#=NuU>u906={e9)PS%Q zBq@0YQZX&7idJvx?3jNfu!-NglOHj*#3^Pu4qB)L-O-VUnPlSMvc0lffSSo^Yp#;TF z&S@zi6PRLFniOH2W_mt4DV$TchUhWsN9?nzbeaMD7ZxxW&%~o+^r}=h&W2%9#qA;1 zZAYONTbMxMyGe11!;(G}anKT$-OW@)_IbVFOwJbsfyLg1uxKmFV)bDDOb}{QvY&*C zEe&l*!lYK&!?kF0As~-Ti21Tnmcq1WF%}4S%Jo;UdFC@xVzFS2v43Gl<)P{zYGek|Vq&Sr^qIiK(*~ z1%QA(F~2r}U1_^S6yI9NKyTS}7~!`CJ;o1|gNq&K*@wVn;g+^Y8UX=Q@@62lF~!9j zvh(Yc)3T6V98RXds7(L)u7j_vt*v2i#i+y}*xh=5-rd#xa;twgbN-rqe^(XOkgQeT zt^IC!e@1&68NLXA+T6UWkX$nLt%uwTfoLS?ht9&kI?Ou6wt8a6(a&AJn(w z?`iK}bI-2K;IcaE4Xf?x==-r;5F|kgG-iO?;y!7T!Oo#FmwvaO=qm;>cQDLNs$SVTQwsTVpg0W+WJXoN4IB zk#ti@enm$j;UdOUmGG->5giwz7#sX`l>7@g&y?uUsefr8eYj+-KxRmXrRYn4d2RDLNq1_Nir zIaD4qD`ruph>ccHa1sT4%FvMudZpr4=MbSxCyxt>x?zna#**ZqcH@V*4mMn32_L@+ zL(5>BZc_Z7n@ycXv?3NHn^iti1xbj*@CC#Y$xA-C&Lmix0Rk$aVUQH#;OY_n_|T4l zDzO$$Y0xhXxzI;Q7wgrhpSdH}(1NePW^J&@@PtF4ZGjbO zh`-!fJdu)k3H*rqEX0ArmZ5M zI=tK&16Ygg&c+ve-oa@WuoU&|rr+kWw7CYeZkgO!s3QxDyJ9rSfK4WZPnL`(U4=D2 z`dlKm0kEgy8pmJAZ}V>ElJM6vwNnJ9?(S&k?yu3a5Bv|D@?c|29z=~I-ANeCA^>5w z?g&km3Dh$`q{e~*;r^G>DEXJztG{8wqkz!+bVy47s7$N^)L$pHa-7jw1vrambHz#8 zW92lODkIkt4)^Ir$0IV~Y9St)?X>!e zw&gj`sMFx1f^reEo0m-f3&Zx%Xkitu<0QbdT~vokz!QNYimptngkyGCXTdZRQ*K=@ zKMtP0Z6A`(T@ zp@LHUmi_Lvd^Ys)NpNF%t5jsl%W=z$9}+BqW=c3M(G9m&s0yxJ=(QKZf}18j5TlEC z%hr9@JYs*z2;VHA+&fgb{r5kKC1+s&^*(Uj$3)D`gwOU&r^+e|aow{?rpA|f1U~Xl zv0f4f%=r%g<`Ita3YB;a+-y&K#6y@=xJOW|E_~AbF8d{vuo*SL^T{7PS?<1_d8@1- zNu2<+$lhlXq+ae1G=iOdPbE-2)`UW!^S<2mR}Whj97|VT%9+9e^{0z834a8hi^6Rz z&>9UDk=m1p#V9A>nh7ClKkJS0UN`{4niSvI|GRxZkAeU`O|AAcUwU`kj$aDo( z<%;NJ)7g?`S7>mpYg1c=C1vCirS6YunNR-kZ3Ddm4Ufh&q~n@6Nw{##ot;8*Yi`jc z4I|Wk`#fDt>yv707@_@xTyFk@T<*i#!X?Jg*R({(Ps+(O32&)bW?6%3Q3H6d9)VQ(nOKPZjQ~6QI#KzROKD4fqfDn7g1CY z=&a=NQnH+9ATGj3QlNW}~W?q@L_wvvfn#cM04gLZra$_)h_=AfLcdI1)pU6<# zJoUUgrGba!aD#TAKtDUOUSjENlQx%-e8;07St2I{e7FtGz0%QiHMR4<6bMd5gLbx! z9MH`))ka+vV8`x|1HdsRnPnDjEydKViJBJMy|pWyz?giNyfB$+ZbC2@5m8*GM#|Ud1t8A7V$k_;XqgMY z%6Vrdz@l3a!-+ctyfW2aJdfEF_*ObKOgCwH0T*g@z+#>@FKV8HH*pr%174j#u?w7PA;HknHm_4LGi?BwOsed>>@wZPAS-cYd3@7zTNUvS6Z)$1${UD8go2;qyku7 z8^?6~ z9T01dyG{G<)uF5Ke-u+>+{*Wqu_NXw*qid+uj_Rmkac^*v*FO*w+n_#!b+)^byuyx zt6SXgC!pxsU9tAMp6BHFfLvg@s&Ycqlv|dg1X~3o#qF3mQox6`8!il7R>sKP0)6(*A@pi&`_>fG`H&2LxKZ!ZYujV+cdD%p`T#|1e{+YXg#~lML()n*efU&1 ziy&p$O2@3+pG_K7@Y&&?QV zE&H`;{*FxSpwyHW9j99L5Sc5Y?M;D5w5;epoFAP=J=0A}j)g8`UnHTwqzfZjh)b|) zS+JRlbURTJ+nGh0my4v4YbeVqH#%yh6^3GQyuk$12LNZ7p!Fk*!c8VQqXY z`u6lsIq$0M-oThDt}P52uRU(w@7d=$bXC$qctvv8bZ)S*>q$n2H64nIhx#A$#W*{( zY{Oqw47JLq`Y*A<#;cy>zlu_(dsitDxR3gL?OD;i)QqiYQyQ@MK}gTIsI&CYAj~;k z54O$uJ$WbmGQ(cEb;=&zVy~wH`2a?$b)a8#eI%h}E!P=&G%1dUVnvqHr}t)c^`+7A z#ZkS;aj+mG)o4>2iN~k%rBZ9|p5PdOTVW&)OtPFt9{5LGf^p@S_w zg=hp-8_*HfoC4}0=D`Ti3MiyaE)76uy|FhLh?ISmEDI&Xeou@r@(L|#ASx7WtToc3 z3+hL4k+7d`dQLR)Ojh&sIO!%W-<>xlS^E-(v}^~Ceq3#!e3`-O85FmPOc*##1x4y% zrDeQYU35o@b0MR(&;$c@?kO6*7|5Cv{;D>W@hq9iYQb$`M`EH`O=~O>lQY6o>%Zlp zMC83Tpm42~xqMCU^MYTe`$Ws`YI}$WX%ITph^W0(pfqN))Ce#o0yWa7O{#HnTu`F_ zQBxEDp@-K;A6T_J-3kQ1j=K$&PsX=}7{2-e;&n*=4FlD>yf(k+=&W3WBvUX1Kd1loiYZB^ZweeDtuKH#({eVZaQ-;cYR!s6ph^Z1(WFs^ z)00#c`a^1%lBUHF()Pk4-iLR^2Zy+l=eokkB5yzLXE$lA29n_@MF)+Dv3H9BDN&Ld zuV{a-Vi*WB0O_BBy)L{s)D+y+d38CTD^VJm#G4d5o-1HM5hZw$P+w^mV7{BzPx@HpOLzUCJNNi-z8h8Wy2Ca0b z=B5*BDwir5X~;L*@`EkgOg=k+`n|IQ*w=-*apPoj&csKz&klk6#uAr0xel zRe`a!u5JEA%sg8yi6RdU8zffD(kT%^c6_?~@@Qo!k&nPCPyJSq=fW=AlpD05s> zs9cWxQ!Ykxp~S1d`s#^Iw)8m0lbV9ZEkCGr$iIXUZgXm#@bTF%09|S_Bb=AxZYEY{ z6jctP0YeOkHNO{jXDqNoM6QpTUuMj=ZOhD1UqggyhAwLMdhrCh2=A)^8_+TSoRu4R zy+7}%8lY3bSy0D$`W^KEaLa<}jstIPa*(S~BtawEftlej&p;)jnk?vmF zn3Tus?)qZ%#Aa%#?G}mgGs2VcynN5G-_Coe*3IQ9V1#Mc%ozEzyW#~Mi5$kVjWxrj z*Z_@TztfjS+5MSNP5OZNCE*DcTtEU0S3Pcb+x;E@=2WxVL@|J!YEV z4{I(NFX-RI5Cj%*pu$Ln(VTh@2s;>XT^T1X5(uYuWIm?lqFcrR>QX~ZIW&c5m2V~l zbp2SO?Q7IF6NRzonDOwkiCMxYD}h&_<`oBjG=FI(;2I&5Wu=@y-evDlizm3-urhDL z|6XAGAs2LAVtgeHjt&BMeneLfHe1k~pvrX{k+}k7jf@O5ay;va6V2Kbxk+Ny3kuj8 z*m&1R|6(Qz8GBHvY}4}i$k_~FgsInVmv_g4E!X+#&`ln`8}s_+s*hEml{Xb#4jBW81$ zD9X!H^oU}7?;kJ%)$5#HinRV?dLvnb6l1>cuc4!9R?#)p63 znxL$I@5fS^NzqFPR|%A7x+=`Y3zNhSaWZCR0^#(*4L}$;?@RLy@k;rJt`HSW+yEG& zciFGu2B19Vr)Tz)H;Y8%_SxTcri=b^7TlEue<cP&u#Q zOVC2u#D@V2DCpZr`+IgoyaA0cXLB?C_?qvU#U#}2-PoU!q z8TdRumy-m*{L=n>Fak`_O;rUAMMDNM8Wl4>1=gRv;G=;hv*Zk!#!T@O472VqeD-Bf zJgC+p^*N21auw5NS!K`yg@mLqC3@jFk{!()Jl;GJqL00lye9 z(d4%{!23yM-v{i9A>iW*5!uN0F%3#h8sW@rlfP@g410-scZ~dQtW$_}E&o~tA>My| z3*xErycfWG59PR71n+W;HTPfveGWVkj@=9A!Gj(h#wb=bR$zdm$- znTM;DaXY7`vTvZKQ~PK4i0G6wjCq1NcIN)9dY-uI`B|Sn^xgUU9|~38dOqciqTo{r z6${};k_bV&h>?iaU&CnA8ZQqpTPT5fMNj}~2+|^<%$SB4v1{H4p5$8|143Ji6Osj) z;@ebuB-jffh|mqCe1Cte<4#&~XQK?1j_>e4DUqdyHGI?f*Uef%(DmZx2>$Fb3LBK* z@kJ;084uK(76g`+J=3gs zVE4t(=iGFY#ji%qYVE!^N&1flkozP3=Zv+DAH2I(tv9$wFT3%^1^C&K4NLj+UzA5w zu_PC_LXI+{Dvm(3&*?M{cNUt#Me zrz>pxq9180`=yEW$~MksImNOma}dA+I}@As#oqj^8AVIhgE0mPsRMN-`}ae$6$~Ub zW7@Bm5lm%Tkx&5W5tnJSVFK2O%|Qhm_`oBTb0#}UI=o;yA$}xq*|2he1LhiSlRvqt ziTD9coD|ibiC;eUInD;dFUi?Pm9-mh0XflXwa%twxFr+rQqLTDMnjmV0SxTw5r18af7 zIso`32*_`22SNf|)*H~#QqDL~7WBU6CCY%gV<6-&pn+X5!oPGt7Y!TuK#4#BeUk3; zA~Bsj!Evo?=-dbK^ee{(NnsGUCD?=re^E zF4MgD2A&J{B;Ok0%*QDH2Q3?o3zQ>0x8@0yG!ja&w?CF62bLYuQTh{?h!t`RP)^!o zS$yXN@nW7bfa&>^a2#wy^CGb*af%O=wGZ(Jo;7Y839ywjZ_sEBp^{N%I;qW7`g(Mu zZ%TwT{^~{(SXgdRd8k;-R}}kVzHBB=;|U4TzMSqjnUQM9Cciv_7wo-E2!AW$t~7}E zGX{=FWD%A6Vw&CAh%y;FfD7`gGESzTk@pV)cg^$09jcGhs)Ma<$?@y><2cagIx+w!;+K+U zj3X%#PHc9Tx-KX){F9G4X4qD;TaJGzdyqnL2Y*snX7iO6T}fid)Y3^4aPLMMFwYV0 z2QvX-IG$o?0y)`GdM7@!2csx0HwcDzON*7Qbq-B01(0S<>v^M4&_c~x&zg>^XDZC< zh;6%-73a;zX_Z%lJw1ooqOF^Ln~U=LLeMp8f*ya{?8_)Ml&uC;xwWI&KzryCzdL2k z->(D>45=_>B5=}b!|FgUs{nJ0&j|PxURI!dCAw!QT(>wdFttW*nTz_cxxNFazhV8K zxFAevm^x@~gl>Q|I7s?dEAILuSGQNk3>=^k@H!m%qvusH4<&A4*Z`ahuV@NSzHHdg z(#g`_oUxpd4lzFC(a%MH@SVG}bLHgF9x|{Hs`DXGgpGy0O}~bb93K268V1;Kt9k|f zJowK*st9+hlbUPFsRt&1V8)5a2P7xc)90!>*&MA)1Hc)>SlN6zG&j>ki(-yPt>- z81 z+Lo5aiD@7g@)|c`O8p$F1)h#x$z!S?BAw!ly0%C;v14gXtnd^I1#vR2Ijfn^EFp}C zYBLpbfPCNY9! zhPNK=0}P+3eGTtmyN#Nl82=#0;g)~jkY(Nx*5oEl+GNc% zl>R7IXjYQ~y+=BgZ;g<9e-sh|miq3rs&?8-X!v95mL;*QA(Fnh+zIX|w#r#fF0rux zw!I%PB%D1AQe`w^u=ABRZ^NUCRQBj?H7KrmrtC5v)^Hbgag;eyZ5i5#U#BSZm8fHK zENdl8WC4Bi;?UrP*-u{kpvFQnIluS8&vpWBUqYFp>iYO^mdD3kBC2ZYMeo&F4H8)0 zP_q$K0WD4;lqb;fhFBXk+qN+KrWf8;6+c41|24R|+mEJlFn4dUT-tC3sCaKFv)uYQ z?T;24CAR}zL1T0-4Y2t#%{C{4+FQL<^fv9UxZCPVY+Ez=x64DXhq4~r1>Xkg%jO7e z>;1;d;rr*(mV3{N+q12w#b0+o}0+>S~!mACykd_bmO;M<)N~B%6 z@o9JtE%TxP1j+;uD^r$t%cm95%vT$mLn%3^7tM5nI*oZ(zBZ?b&4?n3y{$q_K!H$s zgakbhyc$d>Bs_A!hWDsuj@Z0k9M{D=4?_sU5+z)EWx&Yot+JWBTK59CCj4#+8k0C9 zWvbIUTynj_Vqreo~pX}@xuq%myswO<5zJMEg* z>UoAMm^QcfK&;+zQL%GOws!nXgsF7CBZ|sZBKV8dTkScy{y`840VV3fRLi;Wf3z@< zSrcG?Ru7h_sU65rJK1JqFUuyVlE_4#UH@ik`+_>-6FDl}bl&C^1J+-Z;his5aUYstI0KvaJ0t8(D!79 zXK}swvYOn&>-5RLH5LJ%iWoK^{R+T?!(BgsOxjV|j;jm`mY5tjXI=YATe{g#H!mK< zbex+QcSeR9v@w^rXIvvqo%?SM;Ck?1LK}a-`ekpEY{oD#}YUYeeWK(+0=aY(#_{^<7Ubmt*(A^u0ssi2IIafDXXN5 zfyl6jRzNY;1KDVmu=X{n(53Gf!B$@li_`I&)Qb{}7~qfQOuoFrb_UkzmKPzHGyv;c z;h0u0kg~)_<8mIS8y$GC7jRK!;7Ru%0t6)VV+xJ)opOIzL09-5yL5(cNPX_2wEyZD zIXVCT(;G7<*Z=Go|FIeWL+SX=)Bi0Gd2VCZR(rHV2EM_%+Ck|QUa5$i00u!f&#oNh zA~6w(bJXi@<}T@2o@zqT|HMyPGM2lZx$fy{Hs;~R7j5qEeV_h7A@84LQxd5rGd)vl zCY6vei=2x*es<-<=FR6nNUGb#_XAmVRFq1EL=8@FHoe~K=jZi&AF4~9G|$|RD%pI4 z(SuAC@3@}4Hh%X=F+t_9C&q3#oO!h`xMXf`cv)EIajn+rt7@ z-|LaeF|6Cu(Pnk=#8Sz7{8s`?40_qAZsBcGpF!{Q^I~{Xf97M^c=-=8F`mskdD>sB zPjUIdC>@veW(HkROJS9XQf#_xpImiaH_a1qR4YSG#pB~)vVgVygzLh`k4{=2xwaad^V)k+mzri*Z!edCxKrOoUu^J=@7g;#n1GZLu6^EyMJ7`B zvixwAK0`&yc{@8Lk={{AN&@;VT{^TS=8CqC6cy2Q6H|x%ofV?aJ*rT@Mc*<@)Y!WW zO$RICO?!Jo2?~OAn`h8vW^b?KC$Ez+2kd>b*}lj%n;WdP7$;=a(w@_`O;!U+G|$~C zt{*x&1D`DDKhe|*SM@%2ivM9Wa?f73JdEO@zO^0(!C_40fo|iP!5U$)X7zbSaZa25 z=CP)Rh`f4q_EhwPyKURcj2cNUq`bQb^yLZ9{&Y)-?Tsmj$`dSaevyleR|l`VW-7O> zQTy1}W_|w4tSIc7*>cp2>s3E%!c2#tm-aN1iSlTSjv;7nY#>U$js?5hW{`$}z9n2{ zXo<2$<^nP2svF`+Niat}x!7OB2p}ldK+8AfN4(}e+@%I475&b_H1!jbwHg!LJ27x& zr6d(OobfQcir8p}d@_YRr*@aGC*}lkA2dl>GDU5xuNFU14@H=N6K9oG(>;YmCNO~> zu(*i+>Ts~^9Nuu$u&zNP1stB59rV+4hw{0zz};wQozr$f}|p>1-jE%1D2Wdn%0l2eT9-(6kZDu>Bc`@gI9YG3glr;Fp`qXYtn z+cqJQy|d4x$S^@fs28%gN)V{UAjnuIYs{@&ra4kx8W3FIrsALV@;*a3<1O&M1TdyR zE5dNZV2z0ZwByPGIO7g8EBt0@Fb^L2>Vt%)(m|Gb@2nq86M|{v5E~vQ@P%z6Y6`@C z#U;I%Q<)kvK0tNWQk=&8hmawQ8tf3h$4h_@(5l@`Ng2s<`R6_loZFdl(ijR9I9fL) z?I|#~aysT@t2ii(e7OX)th(zgqxHa2E)8|{WU`jK>c9SwZ`jepCDkclz41aeBnrJK z#hV8m%;I3Yn|bca_BHlfFdyczurVa5a6K}IXk4tNdMeGeI(CqQ54Fc1d=ew&^Y|k=XuyL?i)<5J@+|}XZ?Vod7OjJs8p=pw_3$u z$J;+H#S1P@yGr)O7Yprvz4Gg%t0(Fi+b}oZU4L6!5{&DLC>%VBNBB}P~1WRipJFv;Q zU_j2V{`^Zf_2ru+;&r5YMgZM*bz{@En}1C%n6X@`hw(PvWe(beF!h!7+ALBeI9o3x z*g!&%heGwjnUl-&RwRkU4J-$GN5q$$v%m2Cv)1Alr@(AdXLCv^5c!dd75bU#zY<*Y zbRN57na39^Fn|dFEvr^dKJJP6;?!fS>8>3~*a13EhWB1Y39|wN^ect0q|uJh3Dl?H zdLdkqZ!thtmNp(FNuY}Vn+1VeT3G4rBMz=>(Fs(`nf46dDte(-nI1pyY;+}TR z``yWaki_BdJ3SJxZa2BsNfYzo_jS2UR!$>w$9gM1?0}O%bM-r)WHH4`NRdQxT&BrG z#(=G@*rB-i*h&n@WC_@1l>i2nP`I0a1C>DP12$tIr7F?L+uva_MHO2@DSgrI)J#Tw zKo{fD4-Dbk^wFNdD|A*|ElsZaXXjP~MStPM+}@ zl##J5znV{JdIqTE<(?td9AA!L7!OF2xD{?Ae(K7p{SDO2e@d%%{M8YsE{HV$ik0TQ zo1m_faJgVEVt_kH%7%#7qR{Bvu}vSv8jgdZZi#{ET{OuTbC0?lW-NJ zVquf_;TR4}e`0Yy#98Q3a}8!;+QQ5Fhg&sSG=-YIMu|rGZB098pVrr8lHu`PXV zS=ZNCGJZ9R);Y}+ydp(y{#vo46*YSsHRT9~#GZcLKxGHKqytHj_yxGwj3Ih4Nf|UA zbD($@$Nm+z>~+T25WGk=`4QdGKMScg%0D(J?@#~ilja`5$ok+CLe7ed@Nv3*gYxg( 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ⓈQff!tnn+q_)Tu11n0}zOd2$-whfeNee20dP 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

CG}%Ku#2gXGkWx?%`MzBBk-c{J2f&-i3oU zlg5(Ss!JBAgUHkn!;8Tgwd<^uv%J+yKJTlKlAN_au9ZE&YLu`9K4E)jx%5hxd?1mkYp|PJ0Um zKExkU_JLDN7lEXtCIZ_Yn$`>5RalA1tWZwOwL=<8yr+x54Lwn-mJlUhEFi=9ga`J> zO(LM0`lNxsNfPu$n4zTB&w#N@y$+Ac-8cmq@!w2V+<@}`kb>?yP{{!O1LS3zE*Q!p z@?@bSINK}Op0-+W?5sJ%#|u#r;pdj4mYRg|%`hi_zrtA|^FCbwfs#`!0zK!Jc>X&N z(VGKmvN(F(Iwq+4+rdAO3q{64e!VJuy}E_#m&ig=2)I{^MHsR%u0sP57g z#K!T}X>g8n?N3@xuC<*Ulf$CbGXX>|%#L~G*`Yl|4lI3~k5yq@Pfx^fM#yv7$t1q8 zTt_X%K>(iexk4l!azIFTYSX=8X9M6DB`td`E#C1Q3mWi6M3Yre%|*#H9){$-VU|gU zNn*OM)9rpe3Cq*%bbo!ivKT8lrd9Rs^wKM71w4p{lh+1qIwh=#R}X+k#T4Xpd3U75 zLDCFXNT4tCAP?6f3Xm#od3t`oydsOG8=9i!s$&VVE^O~y)0P)yzECqo&%nHrj__UX zUCO1nPAMSZeJl2om1Hyn{J}a+RaBz!VBgqMi_`#Z``h8aIm7#gF?YBj{JCpo_q( zko}`!%!wK+wLpy(KoW5ybeRhT8Y!Qs82PYTOn98py{o|H5d60L9wgm4HHfQ@RarCH8mZ15U#XF?}!kBz;eIe^z}H`)LTSg557~Ze51MmS_E6$K^x+E-B*+PSMf#= zBt`bbXWc}rMGv;zYc!MUT8G$)iPP-muR?v8UFkqWnQBRr8zE!{HSHqVS&8v{b0>uw zq2UAin69#42gWfaY+xj0Ryzt23#%tFr0`K8q^a85spHu&l-{xmjLhWS5`lofrN5?h zz|RtLFG|5y9+FqWDnWgnAYhHqS%wC2afOfsf>v0vF+7sWwDv&?z=iOWab8w%qWQcf z!Y)5&4Y=cmr6P7uSO2I>T%cKZ%{ zA6lKkfn8#_>k@2x?&Aqeg0+yEXS6OWCS=-P{5#7Y`gIV9SSxu3v@>Lh?xt4ij*LW} zoh`tGRdKfj-P;1ja6k>Go2>rg2Z2ov6G=umX3!ce1tk;Itf+DzOBNQoM_!a-Z97-} z?r;jY#YWltcRB@Pe{Smx`Lqksb`oR>Uc&49XSNh=wgeV#-Y2>D~zl8x%s-VxaYTI z!{O+2SWQ$5*Ef8CTjyr!!&YX~324!PxaN{-JtFN$mh}5P zuT`iywE51;vd4NPckh8}4#h%?X~N!tkyeKMJq@e%5o&A~k+XpJmY3LO(+zJYoQ-ts zNB{l-t(aK7g1q{sH8AZABc<>_a5|&A%ef}lB$+esc0E1f>U$2C6gB!!BPgzDVlE6b z^y_ADQp`rj1&zuKEi{uWan9pJnhZ86z{kYpNQQEt zaFA>!7Jqv5v8F_lyC)QQSDd{%qSIZ7)#71P<;(-B3gWLyv3**^S;bJ1{X^y{b0;dt ztMGl{1cffINq$&5zpxlkX}6;5=)+<)ruuw%6yL$M^veTA1)!bw=HXfedu8J27DCIa zN%TK>{WBaF)ZEnUabI8tk0`dSyE%P=q^U1SbYC*?L2T>uoLrd6@|+e}#Uz`H4yYxU zg?_|(qA!W8khN&%Al3D5cD&o|4EYEN?Yz7IRW}))16EL0L-ETfFxGBs-C@}n)P2eF zn^nF1d&E-_lZKh%+4J0dKH#}MsF3C|Vw!i%88mv)gZ`Jv?bEw^d;oymgZ5X47Z1RT z7L(6F=lytUMYF;=dCD0mhg!XEg#Zfo1h94bxbps3BM#VPUiL8ac=xzr7&H}$NiiC~ z*VFj0)b4vb7EWEBYWiZi7YI;rzI*u#!j|N7Cev*Z)| zR5Q}+WpSGYK-jWXQ$W1De6uXHCu%r(+LA+i-D1?aup?7n-R# z%yO=^!QDgWZN~=$e(KWl6(p+3rh_{r3U|D~$h;(P|eFSL3- zZdN!o)=ls5hl4mdw_O))7JkCGGt9ApxXtZ*VzwY1M~PY`>HPa}DI=WlV9?Zix-(+~ zkJ(TGNZ!@?b@wh~9WjA4lQKn9)HwSb)CD{5-ICE21H?#^Q$DK;hR(7 z-)e!ll)^vv`>2I{)HLZNt|oVN$DvOwS=9(hq6gB zF?;^MiXbuhvr#J9jJBFbQ4$O7*TcvI+Jq;Gvlq1v*Shc3UFJz->0~f z?yg2$30$U_I1`*?SJ4FH8kuqqi{1q7;CL5~?)n2p**>%e$a?!iN3imtu)h}DnCp;3 zmSes}HTE;fKnG2zrEHyE4>orHeHa;tb!K7-((7ldh3Y{M#Ij#-k%eyJbNln)T0&;& z!)Qam<9Jbv?v(~20nyAXAQxxlJs#=U#wI06=NHGX z8U+e4H0lw!oZ~B@YSPn0noEWiC)os4`a(@WWJd{p^)!o{ZL4tP=D4F9Qb^&&mcxGTmlho{?u z*Blp`5Q(B<&bTbz?>NebNdSMID3+|wOr0Q{v)I<*Ssb%byOMir7LX@T!Lg2%EKuUH_dUOc-~K7VLV`KKAg%-JsmA6upvbZ}N- zwhaxrzPql^lgeyK&dbBIo9Io4>o;P0#n0zACE9rGkQ&Y?eIFP0QQhrGiyy_B{Q_tQ+dMH-huwOc3A(JFCZk3_N^e#}g5>3q%&@3UsQXFK%% z#twN4oQ}Zrb6@;VT*ub$agjZtN!K;T7Wagdgdt9w48dQV8C?;q4KnCk*Ckb2ZJA$7 z+|8zuCd54QL?j8;ci2x8*Zef!mKgB*MxZzMSL5stwyCFfYRF}%pO4ss3xv}m4{xTn zQbgpAW#sx^#S#N;2Z50?gEbueN(IL{3kp(GI|7v+BbrndwBYgFrX$AAvXOsAA{JxY z_=?uI81|b1hB(ZNrL{+(eLW|tMABW)dE%M#FcKw{+`1HnjhV!KW~&jfu8CiDMk zDKarK{=dh@nErnl{0^y0J7q~Abzi6{a9I}&MyFHMw>XB=NSYw7RlyR8{pKLF?_7;|Dp&D;}s0v)58uV%EFF4 zA(pG(tBZ!c2i zLuc)@@c~3&kcw`ic8lm9BwvEF3o=R^=hXuqe3gI+MuG@fU}{-w)q`+Sth>~E8-c!k z?v2Yi4$^%=?XCLYS?G)6^huur6Hq%}@d5Q2n}7tS4uX`z1B#Ky`-`*Bx-NTSO^@Ee zwFbfNxK?l&=chXp4I2eB5^Ot+Wb4ML5ELU3VioEnCktMQp4b-c*p5jWB4)=1kXv-f z9JDCTmJgCuwhmI@S4}NWIX^Sgn}+!7LjL0>O3GvU{1Bp&U*EqzxDQgqQeYNkrZQaObe0EP|*P;ACJMo4sVKiU6L}Bh%v3fb0AX`wv9NcPn zAsxytSnBKr3*`rr_7j-o`cr#sUUO%w3)!Kh4qPbLxkx(Zb8$Xp+lK7o2q}9^gI2K% zT#cgb=edgP1>)PZOL7FZxLT_y4lgG)w)uKD`s`&=q2f!d_IR_J|kJaF%ez>KU0}3nVUS0PTUClCtrVJSGZS~*udi0Mqp0z)jEw% zOPsrrC_T(<-HdmB zxuU230%2F>Q?rQ?fo6R0$Frh*da(jcKD4JFgQ7U37NYnQh1Sfu`p1exWX2z6p_I~2 z(2vOnIHVZ6>*F_=i&r3)zvIA;f2be0Qw&N0WMhXIvaCx@qz#4xS z`z1AXKkpZBYq*hE$UlKEyrSFeiX*?GdS%!n6$MKQs|*mwIy?pyuvicLLlfmeDG}vq zmC#03sgrpb2WBJ!60mjwzf9eh<2C#EXr6Fk;H-1O4r~x-ToFcFi@&C;jD%^Ax9b{w zbI_fO&^4}@wkx{2njSfC8p(>Nj)$3mn91Z?>DagMViOW-H|wTH)sGa*uQywoy(!A* zAkr@eN+V7@{djkoOA88WY@se(<)*_(|9=3K*`VU4$B{kXHnR}>^>#(;lqF(%Vwuup zBGaZf)g8%kNLb$#GdBiiT}Lu{0E7To%w%3QvMq`z?Hg= z-A@kSGgG%)VL7k=F%;IC7$$qQSh0>jEL`G}sV+oJs#zGUoKyPwj0FcP2N$rc#a(1eh3Rf+Sg9FD1$s@+dfeS;(qrW5dyLsG~jOw&2uO;QaEkgw#y1M-RFs~7n|YxP|0F%eUX02vS8aLZA*#A{_Us+VKWlP*<4vZz zuxbHsvgJ62u&vh!iG5%9Tn&A?E-mZ15N52$i>=4g_Rw8zN1dHB>f8)De?u;8Sxv~- z>n$(&x{Y~a-(CMBm+r=|I?LRA?YMjR!g>1eW^I0LS@)He%skJZ%XFjaC@rWsoO0Cx zj%<{23x>Px*+Ub~Fb5bq<%3XM|bmH4AYQn~>5wROA-LIF^2MHyefkt!8f{^K{y z#PlD6Co3n{e^;hn(v*!`kU;91sk?>d67YO`H%b#UTmx=E0n8_YqS)V(=3>>M@HFNi z<39D+HE+0X#{NJxQ6cDqIhU4HmTpwK*mrlyd;2z;cF4_6?7-mRm=nkK9q}Y$8DW#> zBot6&O#8}iS$-KmnEZoOZ;bsf&d;slTIc)i$}3=EWjeYl7OM=!!U%hSzuj~-GiQ%G z^qwOa`PQ`f(6uk!CL zwF_I^9@gv9HKxybIV zPbVf5wr2CAvylr?;woA)bC;?Qkm%Rd~^P1?%A01+`Jou%Ye!*wt&;_MEvERAJ6 zML1KmkadzktE!2a^agiQ2~N5wy-gHOe7gwaN-V278}?Ti>w@j*kU!_YS<3mB_W1Aq zRugD%$m7e2lUBoA1}5Om1os0oEw|NHb&`Pz;qV;Net;;LB86sm!pv^{Dj)eW(X4jV z@^2g4iAqE*-V^Ndz!$$iZaWw5yfwHzjNq^5pxb-la3aO!B=qEZ0s|$3`(v2IDp9|8 z$7E4>HlneHhp1!C;QXnx)U17UM%a?yf)ZOG=jn*UbGaE43{~_>eJvCbVsa0Vtrf%2 zhwv}!r;S-a2CB!c%}$okSHY0mB5BTCUn=RW>c&e*{|Fzn4tTAkOw4i)HexYS~ z<2|2*uq60&YRr-Q! zj&@W37#}xbQa1J?jm^2{j50=x+V6LYz9F#hOv2!X_vgwpdmW zxW!_2D{_TK&%5KfAm|Lsd!85mv9~jrPeU0ts*O? zpq;a`!IAi3sN{!}!abxgdqqk(&J3PbjeJ@S>%ZWe88bZVAZCm<5jWm#bk0VFiNu^d zc1td~beqHU*icmlkhTR8I(ny}n`f}^Lz4v*4kRC2tp(LMY-#rBm96#Hu&a;Ygfb0s zhWYRcwMa@XIO=ZjrT{TL(I+iX99wuW9MVU`WgO*!&Y+YJ{2Bu~^0;N(hdw(&`E^`` z#2v`)WOu}L>C}5tde1;FS>Ki{3BpGEcVa`>4Zai)6Tzn%$Xf)5H92@gFvW|3P0zz# z%Ox?Dg+!O(=8+mhlbyeds4KFU@R|;TZN5nJA4x~{WCag`96=*QLEJBopU>&Z=V-<+ zeC^VvJn6k|RYum&Wnl_L4sI)#1;+j&$VBI6rl3#;vL8)L{GHakXZ#D<;Y`P9(Pz4p z??5efE#23`I3X{BpvLhG=uPj|W}N-U<@ZJEbec=-^?5>ycp=n*gw&!pY#{iYDzOR7 z4?OlILpzydPc6~1_jw@cjwuy-AL`JPHOD$`l0xNA+B$O6U!eU}SpP9bFf#w2t&{(s zYd4Ylqv8+;yRLo371Ci>@&Q5)J+YIt?M=KeQeu3r1jl zW34|p3zi7?L&w)mC`vV5Tz*)sQF<~|bBerN8LAvn+e%cnlptD3cJhY~;$*!bLE(h2 z3hp1UEU0vz2sDOCgn>H~&JIL*B(R#L#`vuo6ay_2Knbq|deon;jiqYkQx9%S@0 zE)Hv|f`h;npK4&JX@ysN07Bb?p*l%=K4CeU;i#A2Tm75Tf7k-fkUH)6X=;q1K8^n| z`4^o{w5PKpL5;dp##@d3is`3@l~8)yKqXqbCZgF?0M~O_MYz%2B}Y?l%CIJk(i@&7 zEbUky=dauL`&@?8uUN zS!lj)TT7r?e33Sl(uTkgO$c1s0;zNPQgAB&a!`6xiveAWe$%C6ss!x5d0)_)0_;b@ zR(pPRUrA@8vA3^hZ-GFll2|Y+m=vbSOX7>?L2s&eB-Y}MRm~wy%`jn@`D$@=Am>ZX zegx{~%eW<0{R`gF-xi1qHFx zfFoW}x(cV8QqU4UXuq!3RY~AEEV=2{VB?fititv38#&^_n`W@avQtnztf?%$ZfD!- z2NHb_5e((QN&V{)!S`T`NIp?wcp%(QR_p8SbT`Ez&#e`SW#YQ~?&#)%quU9UmF904 zDtn!zOZ@C$@=lXX)|mICb{HM_mioy?4YD`y$f5F?c>aYl7SZngT(m2G5(_Btt|fGT z$072oSOlcxc#Pf~`c-Us=nsNg`*v)1`89XJry1NYATkUbKR!KgF!F6&e1Dlm5o~{1 z{h;XaXWF|uy3R-|x_gI?Pp+n}7arfQrgFL7cXwKQeBIx-uAl8Q7!_)Uql3*u44XLG z4mPZ4K@%I7hlB0vYF*Wz9cNY$uAl^;+g3Z@9oi$$QT>I~{5U_i0-fI=#c+XHQpvxQ+1Y z(SK%$bAnRF9`PubQ~}D-@W0rT_#vnH{B9@bB%Kmi)S@y|xmm=swfu_7CuA%gHHg?U zmStq=(bt9`QlRjV+bl?N7b2BK6{h87Yt4#}1MYusC=jo%m`rCI_RW3x<=K$U7;8zI znc$F5nryho7GU1cYO#PunWK$@)L>Uh7cItXjY>4AH|31>J~4v!AVA4!ZYmI(TLxRh zw0Y3h>Os_N5OU;gZ|VOF+xjJUIGV5=1iFQ}2A;X74qOy2BDx=5n2j>k|9aQDb&cM- zF|0j*uukhNW`oZeXH>Lw%GNZAH6li&b37S1E3I`p$=1QHcbJ_t#5zL}ms8+Oa=1=) zA~rWjMvv(fQgj_J7h7=>uM?Yon%=7L4=Gpd-Z4?b3|5@bTkpz|1+P;(I&6^sV*vRS0wY8Y`M;e@q(k$P5jf7+kU>jpj1 zjlj=-2Vip1so&(on$v{CZ{-9^C8u-)%qN+isP&^7q(h{zYPF)siJh}tl7A2IcVC+q zkn`{yca-*_(xw=~Djm>1ZPWn(#Ki)hnTdJ^3Z5gZMkURFOXEV$3`#ljX0oL9L}m?_ zM&m~3#&u&^)=G;dc62n2&X^(K>iqF)tnZ>2x^h|{q4EGGYth_dxbsIhJ57=@6ey24 z?TRVG+WUTU6pKc33RwZtqEvER>eX*o7)X9l1O;if4F7NzH!kpEUQnbb)MyIA_(tP0 z`$e382oqMXZ%NAcjpwi4E4=Ai%pctbgI%|Ofr(Ae^A?L6hTS4@j7HX_t zTg9_^xL?jtV6i9;+sKUWX2u-RhAx9E}vmXw9@>43l+ffe1_2OCJcTm#BfNWUr+ zc*&8A{VDHna8_Xr`iCJu`WiZJeZ1MX0s$?w$fCi1?<~@?wVs^<%CSP?35P85 zYh7z4a*yBmzB^oKlDuvByL}f$dL!aRYJmvsI?mSGiptgaWmviloO!^`NS``{XX)kQM7S(Y8EQNm3LPxYMQnCtmA1G z?qATb+RBfWIX>=xmSxJYl!%nVu}4D2m8f<9`G? zL^+@MG!SS(5~vy|P#Y>w0qx9OS*%1QEW~p<$fOtwClm=qZ}DtPDS>oy;rs`A6m$|g zFT{W<9L;RV`xoEtYPVXj-QWLTmpRql*EhkYFtrdVn4W_RY1 zR$jGf@C0wbEx6JZ_E(1ro%fcIjep@hA$absrVd=d@wY1whz7TeLN_8gIo5t*hy~6H zb~&cK)PgENvCOncN#KuoqDlvDsA}DX6*O#cUyd$f4+Y0q$$?SInmS8U z198(>&Ko$0`9!tp&c@?})!Km5CN`SFj_H~S1v%1P4UJm;u4GRn6H4X_`P<)qD=Z^> zwW@+7CaYpCRdFo5k0#w?$;({;1;AwT@M{(Z?;>^My2ywyJDBj=nKn;#1gQrK4o3Kx z!3D0ok6AD@nLE@K2y`Ey^B$CM;SgJggjRkkFtME4<~0J_QmPaxP|s>`f~f zomzG2q;}dHj*LJIM$nl1>#dE$K3m04t>EA_b(E==c;pg59QKG{CmI{;VSL-IC`a-d z`fCZ|FP>~fn~~wKPJZY$01T-Rdd60e%sY|SWS02ZPEJD%tcbCVcUQP#)?)?rbC->!Kw&2Bx053kcV>#h=(bh|QNQzGt6(YLkH{{d2d7D*x|~ zPJFSID#B`PlNXK2NoAUKcy-^X763xezeDn{i?1y&*2G9 zhx5m~HH*6)v~O$8v)zboQlKF90)W#jkfc=N!XD}+%fbONQX%W(VRkYDYy}G<1K3d#&2#uK zoJ==(DFw~Z7^lvnQAWq%UQ7+~hG z2VrYDg1wMU#tx+uk9vDvHJaiY4K4_GMUfw_H>lS}TS`th?9ym|g=0I#DZP>_bqUz< ze`!!y{5dV96<)6gBC<1y9zSfi;ptgqYW*ql1dcFF*3_}%H<1t$h8CqX+yJrnpOko>(7(!=W5u>54 zy(;l$GQ<^PoYI0vvTkB~yX$x32m}PxAoAmWc^1b!7G~u^b!`^P2EvbDRQmb^JNPw+ znrazl<4DOnaKN1Izp)9$R&_>P~ z$I;+rsxjtw5DUuRd|i==YodvE6c#>+f;j5o_H}9-ODh)44TNPtavA#gDH!CJNdGK4 z{tngoe55dz1izZ6WeB&_mfsY>WQ1nyF475vP~IF~Wm-ekg}ccy;BuXV2o)kM_t)i6YftpwLFwlg=a@6?l*dlLvN?KeKf7TZzraX6ngXf`s@BH@7mU zMpkR-a{Yc9XRlC<&Ow1K#n9t$lsq67g^3IeN-gfK3W;# zPNa{*P@)GSi3NaUoZC9KtB)c{{(ef|7qMY#xK1hMPKlvB^{jOQGv{(X8i_lMi^-|P zx0N+Gz1tV)420w`{aLlE4O#XtQhrtqjj6`-5-^%Yspx>kPPu;T-E|A%416%Sx!x-k zj=Ei>tC}Tyw5{#t*?BY%Cb?@N309~rzlA{j+J+MnHtYp?%lmH=LdSMer= zb?eMA6}i~|n`k(zve`|UN$8K*3)BS$C8dlYP@EKs`z1<08wU;!O{QO+cFm{`Vcmcu z!cpnE?Nr<4RhGip;@^24e>0%rWov}TKT}oxC!sAQXOSTeCcVoC|Bk63`*m_A5dmRc z%B^X28d*{L_Q_`vl}zbjk@-Qx*U|FZ^oB&BSKFyF=-el;kroYu} zQO9VnB|}7{Op;_*mL3sA>`>WpZYSzNaDNZeL1@T3YanK?FfCs{*|{ zk*-;DyF=ot@mThz&8Q-`@D>Ur2sSGO;CVG|ptaA$aAI<)W12O9RuT^Y>l^Rs8N>{x zLP3fH|6ON)m%XT#cR$2Xg{`x?(OPYm&3kTvQ`}qS0-h~6?JeAK)pjO!XJqarh=xNf z__o*li?Pr>CS60+A^Eqz8~075>GejaiA!p*#xQ)L8`U?iLYp=saJk935K5l~uOnV6 z{L*SJtlQ0X4AyM045y!M9;^~7U^bQt3)?al?NTtm=hG@dQekgfvb^AXz5O;FU^?WY zLCBkmGP5JvT)+T3#>ZLdIu)ke*AEp9f-}%P3xs>qtBatCa~sc1A10l)L{M=@G)U3m zfFh?3(SeDFlLz&<{K(r)=zQdfHeaiHuuYnD?z|BQRLgbIyFf?RhaJn*P@;mUVy^a@ zt5ER3gvMRDyCYceW*Z^~pBXo$M8(Lyb{PPZZE2j}tFi(dggsHXr8hWY50`za8^rvJ zf5}Q%+%v5aTsSfQ-3s7q>2?%XezmpEdbgachO?39f-04^n|*GT;)_0&#!F)%(zNYe z%0}iweMLN4bz_}vYuDk+yF{s2ZWG2enQ-q$eqeBv)u^Jev_Zk%<1TW~k@sAB4MD1h z>H%h5MhcjK9mQ)%Ga$X?Gqf{|4jO-7$;;&g9~b{SZvL@ryrCDMD;G>2;FPd`iGxb~ zH&TzSz%zrrzqa-_pM!b%f*9dWGS}3=^Hna8fD;i(kiwP+duafR1r@J1Z<#57m$Aj7GT9sCu*jKl4KcbK#+qgj zsXhe`0m1_@sFna9Z)tcj=~jKHynH3X!SWg9?|P>Fd)&+MviCW_`0ph?{-N*ho2YgE z;tiuv=Vde8ct({rmS9P{SW~>2=Oknwjg*ObAqd()l3^+nXa`h^RD}H)k08ZZa%jUa zT@p%`J#(!6$gQD>tVw|o8Avi`R*BKGMeMRN1NG>*lVo97mX{7EYCZTl=mCiU@wi(Z z7@pq?MAszArbfxN`3qt?-6rBvKuT7T_`MqrZzXWY<4$9DS>ikIuWr$0CXq5;y%A@p&0vfx8GE zo`fIz^FI@w;Xm-zOSvz;LuiFhVcq?HItGKXGeH-FnZV4*Rm*0bhhYNt@j8-6_$d#!RODdioqg3TP-fSHt zG5uBvDO;%0Z0NyaY}t%J65KU*4ZXU3n}43&kx_=szm%iRdfI1RA-2g{>n3*Y*r$IR z1e|15uePLp9O7^GgZ#4!iu1`c!$656jYL~W+(8w;SNiSs6@fu zRs3YZuqZaNcxiOGK(LqCMB@jGl^3luWJ;qO65XCjrcaJx34)^4B-sl*J6-J9({dp- zHWC#OTxnZ7;c=;vOpd$`w>gGN)JY1%(^de%yaL-U+244nYJ|il9xqwOSU3*d8T^ua zCA29DgI3>k^qXaVLn9~G&quQCJEd8)#o)+94GWi>oD%*7_R5V)=rC=aLZm-Hig-+j zWc-mTL)1ihfA8c)qjw0`Rc`B@QWo zi?Ky_nJ@6)OYTilCuFh-rrYBEyYVOu;kaQ40bM1Qr?U(=c*AZWa7=;erarew@=%Dq zMws}?M3u1tknY2?x8WT*fpG9~zwM#o#h(L%oQr~-c3VrJ0zor(F{%9bqk6*}atXi) z9x`r$q5o;z5ydYTVzEN6ouETf#8dQ%Yv@;8gGdKdg7eddNksomq)VQ~h($RN;)jx2 zz0U{xcQ}h_0BTU&p5W~-eMt?DqK%hsf35M$8H$%5+pTJ9X|{lY)sc}2%C(myUQR25GX_bC@Mv8F(@nii z4E{|}YJ$AIiJNn5`aCeU$=!>E=wK5Y+82lK@*ZrzwJg4bl4$BG$u^aeR9QhNXs~>- z0SqGi-Wj0HL*9?vdo$R(j%(;*RJC!vfJG@1i4G4kfx_FJZqCW%7Cl&{vNDIX>#;%W zBTf@iyeONwP%F&(BB|BwjHiY1m}}WJS6O#&jc~;aY0loFS<<2mVz4k-;ics%b`CR0 z`pu54!0uL2=&VqPM3J!ZT9lWz&v*J6%!JUEA`~eOV2cj!2kWnn)GH&}0h1)-GESS} z!vx8}YFYvZivzw-bG#m)H;At^UL^JDS$iT37TCfKXv8+I+l)W}=x2dg8krS4>$Zsl zp})85lzvI7tgP!f*jh9<(+?hyYLUXqH#*p9H^nEvC!4i{tp8c3I0^8~Q|=ZML_a{@ z#aeXuo)DpYS-2`fp*G%9bk)lPH+_QU?Xl; z%rwLSzl0SW`TLdP_lGOM6LH_c)S2pm6BY*(Ny63lm1~hvP|@ESzZoT%oAk%xz_M8`gK0peQ?^I8bE0>Hm&(c8I}81PF!l{W zqC`uZZQHhO+qP}yK1nshz-SY> zfnZ=*O}BF#;#d+Z#bxs_wMAP_faM_&NOq=*sspE&Rkm5rvQUj|y@Lqv@Qrm4NtnVE zo{n)|M-Dn65<%3Q%#X~EBOgVQHK3E%)iTUKcF zx41H}>}u9+w+0uj{*}Iy`aWzjQwWX?RzN^{1}`&wqxkv0WCw60{t~VN>bl+Y-i^P| z+YXW2OqB&K9VMIV_4^3NsoP~iyS9ln+_C3KtcpxXC|@wU{6%>h#m&?L@%eO6fTWtL_mxw*Ys;OXYAX5%)aJ=i~lM~+~hf|*GQ?Yz+1AKyfG@`2Z>T_TJyo^PoZqGz1O=^h4STjmzV5EW7 z7n16#ei8#R z$NXzEr2HdHvpITBNEA!9yS1Q&fKW}|hn;YZA$-o86d1<-*oB|DL%j*#a7X*wI`n}) zJF>eqL;8SNmC8|guc+ELSBsB3hm+C5jCV+Lh0{8!r=*)D{RCvNmJ``O_5vG1bLz-_ z6@4l8I?3q4Z%!8)U6ws{JffpkM6fyLEcT|XqK8B℘)#? z;a@M+(tK^(D^ZTY-86{O(ryZkn~=GYZjEtuUMluvd4Vud4)=jADGu#~YN2oQF9i%y zOl?ot*A{95 za4JN4?e(e{oS8TAorP8=uBtR3CZdR#ASp^s`Wc!{;9A}Y#pfsqekz8~TV+ayV+W{v zb?4-K0^@@mssBej!2Tcb023SIe?6iY*7^-EVMF@P)i-<`><3%X=~1=`0$LSLl6GtZ zs_rH27qp)2r0PnPZ)nV-zUkeCksL3S@#Fd(7J1v;Uc;V+#rmkA)~Y9Y>BDNg zNIG#2%~jXjBkh%D&nEcA>G~DSA7Y;cuMRZs#R2~ zy1ivg&d`UWT2o~Y=>83xDKU55Qtl_sN_qRRIaf?6P>j+eK9Q+y1Va&J8Ba>_v|nQp z3G%1!1oOJ}5BaHu0NlO*B}7aO(x8P<tYcH^6@fNGh4_ES<_WA zJDyx%?EC(GajZa`)?NR_hVH*MTcxaMBtz5Hdk7Aa5I;JOS98XDKKUy^whds&sZ5It z;w>+6;6$JL@b z#7;TswuqO{P8Wn~eK)7hUh#5S@+V!qm5#v@j^4;g84c9O2t9rbYvrPcK7odc7xpY7 zQ(fU?1>&;+iWEPppfI|iUj>^A%3g36E?ZvE!|di90!lVQ6t=q>c+(pLJKF6Biojoz z%*?S#d>Xbi0~+ebsOXVACaf#DDD8B)KF&Zl6thCgR}rwmok0fvpq|XI2HL>)375Iy z1ksOh_NFsJrBW62lVg9JlnD2OBsE;ADP{+7%s8(V*>LEboNk9Xts zkWVEI5J*!nQ>rM^D}jT9-!OGCiZ<)$Dm6;`p2fe2d)pZNpjgA;za_tW5qKD$&vs-Aomt^wqFi<0HvHwCyuoU zbq;nURxRXK8cZ;rI2tR8T~EW}{nORO&nbLux`awJ4C7?cSJY`=NASltbSfc$Y$42* zS*;f!SnqUOQ8a2bAPphn45z9qX@aT{MlAS6#tA~9f!$(W&x}xOPQV7G^pNWZ=kYPI zvq;UZl>V?-GFMUL%m-xozi6>V|_h;ieb8w%>ARJc*b_T! z1<}E#7(2BrET6&s$D&vynkruhI+<^~b*uvtk6^T}k#KzSNfLR0hkmGOp!+TYL|57? zVcF2`(?S=8t~bW<=c7Gva7dGgyv@A1c_+nraNKzVl+GJ?+6$6Xt`HTWq?0bCFQTBwJ%3LnisnxI8`SEAOQD{3WExZ)V7O+{0H^kRn|>U&kk z8~0&=RU86*7e81czJ6Ye6C#r>+s)U_u|FX&*k$5g?}NTB9K*(-W~Tr6_35HohG7Eo z<)-C^1>Moh{{e!#diPog{|H0%cc(5_1Y5rRHC5MjMSe0CP$W{Gq|p7u`*^2R&Y=&kAOMe!QCI|$+b_1X!B$z5=Hxks&FIBh$(MQ^V!yE7ZY z=KDr86ZUw;o+=NdI{i*UR5fIK>=1W+Sy-Ng54+rt2{W<7^3=U(`lAcxvT8<2-tqU# zkNx9Jm>7r3+o&m2JT1}DUR9TeF6#QGGkN30aEFkFZXt{3msf1W2YXlRzs1HpTo#)l zlt$aL1phq*e0wt#B%E_lEPsBlVR=60q`Zp#qtdeZ4){>*%=n5xT~L^mSJ^iY{?O%+ z=wKOn7m~@4YZNveY$RzJ&f)#ppT0NW$4{sC1z%2DPVgULDCd9Jl>LsS{*N&E|4+po z*3`B?WJCKUv&=0D0U3#PNiNBm`)>~yr}H(5uG(k(x(+#4sUdbJX3LbG`Q7e|u8zqa zkZ{u@n&Kv&dhfO;Kz3WxKl<{#z1$yNWh2uIN{SHKw?7kw3SA6G2xJ@Bx8Ku!&ITXu zP2Q8o7XwQMXpk775M)5^;xTqwvy}#eEWYYHnM~PD9r_F2&0oKZH$DDD|cbs6_juYgbwzg71Xe^c zS`ouVcLj8ei1x#D#WNJycoPVkpR)Khd{t14Svfn{| zim&gB5MJ?2lp>s@!rYwJj_H)FTNC zezatyO74<6amze0w=dJ+j&Hyw_-H+2;71Y$1O9iGU=w&jwgqvoOP=o>OcWyi5fdJG z2!rVNUaONuRqL?*d{@s}FX3nE;l5!`lCJrK51m5g2t^4|@4`etDF6k3xhPdF$;#oH zsvJMFx6^ng+9n}d)5Sf)2u`F-Q+`WsBjYel8nO}iNBNS5+daLl_B3DBYZ%$t?&Eg{ z4Fr-`_tnuNBC&$-ktDMm>K3^Q)JDE1g?*{ckHPpk<<=CYx@y-9G_CU!fjM8&%j`c% zzjU%`)n!7H{G2_gf3u9u6E_nnOESrSOtT|2iz%<;LkkY$-q<~TAcnlP+vHg-KzePj zw9OTLto+(Gj~aKcD-98Hfgg^nKFI!0GElZB5Q76mh`}r|3A!aK z`OOxY4k5(5XoDwZE7v+|JF!A#wNP9&DnM@2lxXSIEe#V5BpR%Q@*)IvSY$ zy;QH>RozSptt(Y`v49>R$U$sEWq6*;IYAf|$4T&8)og^ic2bpTkPt8N$Gf!y8wHf*vi_ z@@dtTH4+i-S^P3i=ZJaC@o97~*+D~{D436$w@qs1?ljy%8h`>^CriDt_qW72g3F-A zcfdJeYVl~vHO_Vq{vG&md$m>7A&3erS=jZoXj|(|11tp|Ioj*r5AuR1w~%CFyi3>? zVQ}&CG44Ii(K$dNI51$ya_nxdJAe4sGdd$C`Sev3w=S!3@nWbs2`5)RVr8V}c$&Xq zve?Eh232Fi3zOtVAcaLH1t&?;JwDqUPB0L{D7qq$#uHRQ2Q|@-7K!=MvF*KP4(Zy^ zn5%(}p6cpETe~+(W?7C$fILv=&RHyGYa9MhQ@G(&9AV7}o35Ph^}rRhQ#XOKFeapT_88y1 z-za1D?YAYYru2-?t-96a_V7dO&E|ZYH6zGDyCbc|3%uCdA2o5z9}M*h$9SCaTRo@J z1*?p2q2l^2xNvg2qq~);?9snSdLZ9uh(GUkWf*TymD{OJ54@crKhgE>{X*|G;l$V&q`>@6|cK{8oG~!eYD5?hANKqVe1MowpF)!%ATtscqXiz!fE++E>tkk$ zGA7Yvi4t;01KPwUXita6`75jRt=Y}Er1D-4S%q?~NPoLv)nj0YvvqZ^nuFH1}JpGJ;lNP}o%3-loU@0n9#n9O$W$$GA22>NUsI^_8G`mf^OO+-q;$UG`amoV6 zXL}0WW>J6%&1W=^rKX(Hn)-RL%1i*E7#wcwcCD#_U~)tNg9aohw8H@?LF34xjSvCS z$fr;_%?6B{SK9#c*o>e8GT91SiR4IRz#^t3!R)Deq*{&FT7qjqN1bA(;$-#1Z-wUT z{L1CL{h};|0DMgkAs(#UNb!IX67VBTK}%sVE4E}`!3LahIExtRfltBrp%kCgLR=HJ zQG0tO+YAVk;WR4$NCV=n+Mbqy>^aY|V{xDq!IlZeH&nV8J-*PvIeQtUiW zwG4OkDP2U-KKHO@wW3T#TY%ZrIYGx4{g}81EGsL)0fy zGxtO_`*L2*p6z=;(zDZ|N$qxGtCCqxAza*r3^Da^YZwtJxI-+4jIp)L`m@{pj*PvI z{AfG2wXjF}L7N_2F`NQk_h|?Z4nWhG9X}YrKX_EPp@ewcRX~=25pi7SzBfQzflH?O z&K@*fIB@E7UII?D!3&Z=HLLTZX->1iD$km}h~)RA0IgW^>u0_Qi-8_tL=w#CqGeGO zaz&mIM8ZjqbB2t1DgTwRb*>ugYsl3ql_dpak4WjFNTCM}!%(U#Hftg4CnbBNk%4z{ zM)3ncke?czUpzj{s-l>fMQUiDhJI>O+I&A>XyifBI+EDqHd_hUUG8S*+XLD{YMKp= zVd4KWsaZp>>9gKK?7El1B-%Pv_lAM=YdXi~>GqbOZWY<PeLvTh$0PBkvVm@Rk=KO76u2qb4^2?XXb_AnAYRPc*|jhWnQ z3LPnUD-0F$cT={o)bA#fV85Zea;fo#-Okh8bf@xW=VT!X6 zB@VhQR)V&|3tUfPs=j4QwULpfF`@_-a+a4ZqG^P%ksR;QGhoEx>FWq3R`&5`;@L`; z1g4fXnnwZ%PybC+&>}t7s`hzZGZcb}1#1B@(=?IBVY1x}3qrJXCX#@Q=oO20e$4_) z5Kg2QlAt5N2ZG~;7rK`qw=4G|iDGY}9D+zJ-hPHo5HRW?n1cpG7tL9k8?}Hd-s?Yh z(JE5nS5eoqHwy;#?+2mv_ZfSkD!{g2h@`QWd7hK0)~{7fbG4EJQ_Cg)gy9dN3 zLK@a@$Z_?^Kxd1st+~?6WG4&|Y%t{VG_A4J%gVaYg!*i$dhgL?Y0wpczn0_Lc$>bx zP#AKJ5%3Ve&$E?%*McJH@UPc<32J{G00;1YT*N~_)v_Jw#;y;;36QaSe8gkVd(WmAt-cQQ_uq9h)Z} z?434cIJ@5bp1(bDWhCI9Z z1JoUmSAx%YSUF^4n8A((>VvHbq622!S?PZ62nqEU5q4&>8(ac_whQ~wtY*ope%kU zFMbVLyC8_y*jM^KCMo1K0fV{{u;S+Pvg##rMta2EMJWToEue|dj{)iNSHL!up zWEUmZb7D%ikP!_3LWscNeReSy%cdN-#i#fJKG;CB!al#a>^JR`ra|91Q%!JF#!qtE z(*x3QE93I({)&H|_A%{0!5YT@UX{$w_+Hkns5Fy)R6*w)e(-egymx>UzF-pk- z)@u|{DGvrr6Bo@oNY0TApoMp~L|``DEg+>RdlD!|ONVJvd<`6;vi@PpKQ~+10*V?Ia9tyHzX~8+b44Zs$DoF%tk8A(|1!0$ zRc-7Y#Ej@3N4jKI+?HaI!17iE;CL=UHMnq7Rb4>=MF2ywEJ#8P2!jO)*TL3+Bp6an z61a>-xiCL9Vy>uS)us@rfk9$k+(BEgk!#FL0%?Ly1TdQ%^qa)5>1Ts^L8zpIdaAAJrq-Bgum?F;1XTEZR6u~@f#3bDo3ULR9|6o?-U^kph9ym@k*5Iq zd-HTx7)WfSiP0)?tzeE2T_b&(&r+?h`og(RT)%ugRvkP4wF@j z6NL(_Ul02w0lnN)s2S zX7z0dvpgiE=Aod*&->=>8n01QHYF6#zt5-1v^e!vyDx5zlyKmgfZ;zT7S3?lv{*EZ zpeGge1ddYy8N^r2;9?dArkNnhF{IsPF^ku4rW~A*m&(PFD+m-{)yft!A= zab>z_(;Z%75DG$kYrR(A5WTo@xuMuwmM^4<+EPqtp)i*p=$q#7>}mTnRkyp`u$SUl zzt03aMZG^8dr{(ZxyGDbf;Ed1`k#r?+5EA%XH(eC-hmT^toH>J&@)# zK?_nQB7z~OOV1eGeC>Tq-HBIf?LNLe!yV>^DoE(IDoABJNhQYWmtnPede5hM`q@A2 zTD$9dJi9uNUkis%ahG{3ZnJ;++oES3c!u1QFVrX)Sw)!oXO^v_hgC4zHn-v62j9c4 zi){Tdd%d3C%YXL2&^Mhp%$p$azjmHnQ8Kh5BZEO+svtaZIEXx&Bjq!a!1qxfI`3h2 zg>`)|y$*W95^*m7bm;)PiHk}_Mm&&kET@yzYq5}VoZw(UpK2yZ%f=6o^~0bNugeB7 z3w6^oq}+7ac3f;21)(xPi!7{?BpD>D%4Y)Rj|HN~Q@TU$*nHrk(TG$tfuo2> zGvxwB3!9n1Pox-UD`vDIa-U!xqs~moXv5b*I2HMM)$Eb7ZbzRIjGCK5G-zFeHE5r} z>ODa}>+f3u#768V^_+35tm@ZE(0rsOlc3RY8vl``vc7LIfR4Q4JkYcp{bedQsmG#~ zrP3s5*f^TVMh1!`>$g-IOb;Vg&H*8|G)(;omAZIevX@Sr@Kx`{?q}%Q9iulME4z`8 zveb^WY$T2bReLrLIApP)!bYxAjt-fi8(pee#}Bv_M7Vo-bM zUDm@|GE&K-v_u;L?3Cnd$~qbZWx&eef|T6>zr*1eB$#}9;ZnmAPZ(c>^fcXhfz`b(T!v1tJZhO|NB zTZ01t=iI%1+~R0IC2~!L^1Db0rC8@F-Bw=%?fys-0qm=_9~nX@{S{sSP1RB}Gl#;J zRTO7bM3f=wFRn~*DIL~Bn%bmXrjAsV4*Y`26TafnB}a6ArAiHWSOS$rbx$HgbSz^p zDrv!mPgjjMo+87!2r(x_&aSj6Sj-yNx$ptnpXAxuyG<SQoe{r1Nd+Ha`IQfH;ufO&2?qVJL-!ns`s0@{?OTPatYR5p(tQ9)H9{ zBnYs5X6O9{K$fvRow!af@7v*f{}__c$TOpyF;io2ULK3gI{611o6>Bxa{clwhQ;W6 z^C@pmImUBCqYSOFjgS84{cSkQ)5oJ|=F|emY_dzVG$M6I z5GpP-Z3gNgDLYz3pa{WMNVMod=a&o)yAyFC&{oUr=U-=*2@}UqF#1vJ8^AxtF&M<} zaHz$_$&rz?Ul$g=IZ=PBZ(5Ecu`8~1v>={qY}(AlZ}Ht8Kz*g`h$uZ2NthX}Ew&%; zF4D*e5=Jy>fFu)|1=1Or(WS&msL&QX|G95Ukq;3YNraqhq=!tHWsDu5NcHR(j8(Qv z7B+0MZ|cbeAcz$is@JoU;rROeirD8^Y2A7=CTTkQGaJXo0r4-ize%a7(!9c}D|ZxI z{|HeJEGCZhO}R)=bI#@snN6y29F<;Zk?AKKM8|gI?z=g4pyGsCiU1}z&@}rwEk}S4r@(Jma|08Np0YbF5AG>POgmh z>ecOx4p>aBYRRVrM=<;H!{R!q$<+vxI2MJ=%pXElxIBl&m;^MoO=*3WqhQuS2X+=k2YkHqMY}h*l!#` z%9#@KYwBL^*XDdbFVeN_C+$JY*NNk)zQqZbqek^W%F9z7GfVWL%KPv5F_eI{4u~XR zL%mHUU{87wl!6%jc#2D*+$Hum{SZrk_o5BusrIYOVDF#b@1y3kY@qux2X$sbuxl(~ z08iGyH9YWbQbPOwAN&9gZcj6YH?4u2pFa-VeYR-iZwc-qOoaF`-AR)K1Ad}~oH6xS zBU}#PFO8KygF)78;CNki5&e2Z(LS+cS~6EaPdogW*NM$7l=r)zh|Bbs{Z z_uAW4{;G9qVK*6WJZCp5?fP!Zu)MF|{x7EWbXdMOTWPqJo63|}{QqQKS}D3Ew!pzv z-8Iy8Tj_%AQ_M4)e#c4e+?N=%IvO@^=54pD^l;a|+|~ z#&~l{t&~?Gz71zBc5I@fvhF8gEtOdZHAm>=%#U5=Eus$zn`)x!ujijlx3`s~3EihN zJ8X*<%B{Z7bCern?C=#1vHt=Zl9o`>w=!`rGh+NFq%9`*q4X?gO0UP{PbD9FE^gX$ zJo1oWdt0!C~YlKCvmgbMH0F0Pd#QgYH;-8L~$vL~=5)aM4UE^`4-6nhE zamMQI!kM7sJpNU*X!hEO&}O8c>kJON>w-62ua^8lcYF=mw^izKwYiw61&7Nft+ z!DjSjO>J!3^{t7y*qpe`zTQxx--sLEilR+k5riNvru{*4&sR+B13~4mCnV5ct{v7UQ4&8pGV#wW&r68 zesU26;6mjIc=3n`NR$ypTJFd*erk|`B4JVtN$!tO-Q&D!c6X#CUFd?0d!enF&MAN)CMmbGSu z^?k^(F5^@21{K@4yhlU2;}8VVmz+O@?WcQS>*B0#H(9y|01sk#UW*<5fxG?}9$qXZ z`SPRZ{vX4VDufGV%g!^RML&P*a6_QOR;o$si4#3*-BbXpx`?Z7yZ$nCg)_@n!{`$j z_M1kB`Q=eJWR^%8*TzC znq~@ZyIq8;u|~K3>tVy$L}y2Nwn?yj>fBAEI(uxd16PcEGMfR^49=X>lTBeN^T>os z2b5Y}L~>DeY9kB#Ok@hIp4=4MJ^X{M53?igT_pI8Hs= z!3gGg{gg;wtR4J7k#130KswNgm*xu<8u^@F%ff+TWvjk$s{%R0a zL4rCwj}5?Ymaebu8mOJffjEl^cT`e;jZeHa9iJf5s1)l(ckVQGYARZS1lvjO7@wP@ z?p%lP-t;tPo_yBd-Md?_IAlL*vlJA0~+N=>&3tj)vpl}lsGZ`o*)MaZZXV_gZfX`{+;u)YNxlpv(Z?a+bf-XuYDo@pR$(1U_Or= zB+F<}B%20~M_Q*(FXCs}dmYbho~`p;r|ZNmoPSPe;0ll=gEAg5>}^t}JS3iG=Ul3- z1J5dC@kKeb@Gu5;^f~)m_u&q)L|ru;fZ`qec9#|ow1i0O$MwAhs$7r{?ZT${%Aw%C z;?WE~(MNzz1`qng1x$M^gqowWtvU))bO+`F^8NgvDfwSfFA917Y#6lCP_K+r4-qJdRzC0Df3fP_c31h>R#(*D zSX7}1@L8?=GpgWj#|QD8iIoKilA?97`eNNY&QyL#`NXc8qRKR#Nb?EsyYLe_5GKo1 zMO=1R($!+%U&>yh!~wZ6ayH}cDm0!d7^?1rN!lPg8BjBx;J}asf+I?}a{82JRonO= zW^~2b9W15BS@305K4RkiE1m6(iuKP2ntoR^sUiyrhIGVs&3@1pvIkPKahf7BM*bwpl%?Mh|Eb4EDcwsagP6LfpFW zz~F;ixpLT+QZ>kJkwW|_DPiU@bJnk^`I~9Kwn%=mM%~sT%jj9|hC+#U+3fd%Zv1-e zy8D}P;AL3G{0DxE2X>}Ns-nb?A0lnf4tJh(e3^JuM&j0=e}AuFBO`|^OUlSc#<90M z-7L~UFVexCewj4Ubs|%zLbQ@!8~kM=>D@tuuRH6DwhFSxSqjriBaF8K7bs8F^EWRj zE?LZ{wbynvZ1CN|_-$Ya!ATDkymUezaqXAv$I+#ac6scp8{MO_$%m9tG4w95tSfn0 zZV%-U#J}8d_n6t>m)SP#;-R{%gH(Nrv9_zwk)jwZ*R-U%E2>PZ6ev>Rw*r8v9?avu-fM3mZ6<(Q)m-0K=h9+J6UH|^e> zcPn~(-QAupUM>%0Bzn?C+iSqk-UR>m8rTRHZu&n( zccuU)`D$s~sPyeS5=WM@`kklw?Ac21=rvOwW*g%_EaxYtRD|W5%jMiw`kN-q*VL_* zv#E_OJPf`|u`i-pjxQ`g=qu{&Ua4z&hC04bN6sS%G;VFQ=dMQd~Ca~hS z!^1ZG?H(BXBRImzf(;)#DdCA$!PHWHgita1)QK5mq?j_stc1y_K?kfZi( z#2Lim?Z1vhaQ1;jp{^8%964}lVlkow6UC{W)1e$sO{1I5AcHiKk=^?#Mh0Rh5XIfu zMmbTxI)G$QJQFKlEqS;@Qo(@e7g6Ns2N=a*60HNHp$4oE7h$BqRC!}Uj|L|gNAp~O~& zJ;UQ|6HdCYzm5@M(Ui{}aisKXI%fJ%j%9hH;*?hg#m#AgSQtmpnI~fFEhn<=PCKP` z!isybWtnEFgQ~T(VG>2RJ{9T}E~2*a(}KFQLEhGmuSF@K0@nuAcr0e?CbB7kK220> zb!59WG<&As!KRyLS?LDL*leGStOgQ5hJ`JtvhlS5903NvKv0q5m2hvNp*vo*-Hp%; zWjOfxnO>(p9T^G|pmL2On>-|lhzAjFQo?+_@hC7XfIv(lu67J{iVu>Zxkd{DD4Z_A z3brJ3$-~~x9d%Lh^)ScE4&U|O^V70N$^3jlvm*!Y)UnBO&2GTf-h57$PU=NXtyx8i z47Q38mgI$H_20P8DuXPE+Od~-#-C(cT+`*|k$!?>PW&Q=FsHRP7cgcgjg{3e6E@y~ zf%zKFg6)O*8V4e6%#3~@D4%`F0$Gr&1*#%+Rn2X>Oe$SA$yQ{^R7+J}9g^}qB&}p1J~2Ub08N>Ec(h-9n(ML`{JzI9Xk5y z<9ZcvhIs?0ART3tF+Gt=uIrQri#2K?G80tXZYdc@58uVft^jRSP=k;IQyQsEPD=sk z(gBoH3%I}WPR90e)(Sn`H!{p`g!wWVZrYWtZD#bHDRpSs4TiSXJ`Ib~k~IcVH7|L9 z+30&Ly!D4L2BYKS>NgzY7NhI9bVNfS+@P@jkVSWz{VW`z#FZy++5m|TV53?%Jl4Sk zETSLehT}xl$HwHzKL9c50)s; zO8G5cm~Wd*FvNm&o`YjV!x@UqX{bNvUDg1@!YBs7IabbPd}q>JhnvBasgM7LEN1OR z!-_r*i3SWNK*)8DLNkO5r!L(m{p(+mt$AK~ReU|D+>^gvQm@ux^C*{FLqZG{@@(s< zZ{uya@WmzcC)R| zg&F^f8@cKt*VUnuki}f$xzA(_D@ra?!XrZ5v*Ax8p&V<;1tQ~CsDX)R? z|L~yxi@b*6^j{Yt1_aTUZzww3{KDZd5+ut`iv*DKLQtgZM4@=w4YK^OO7V?PA4_Sm zl<5cr%VbohCuLj$Cgj@(1cTqKFcCAC#Je+4@NZ0?=m)!F{N0dHlcP zX1jy*V&hy=0qyiMsX-?vH=Ca)_fEuzg5o3PaUsd#`|5P*ooTXLD}$erbA2XBJ+m)> zaO8Z?=>l-jG7)4peD=mVA`12JTR&~xx%pmUZ~aRsjHV33N1ArXZ+2!NMjbK-4cWL& zDN=5dI^`oYhQ-R+@c`1d7A-T6T=WYP=BiB#rmAP6y5~Hb;zVW3Ttlqz>moQ#z4n(L zOIbT6s;^DT(|PdIgC?KuV?>PP^naX%!eDfocJhL(ofHE}5o?dcb_2Bw4vt_PTFJV^ z?NU~wM4t8|1l@Vj=N{K0Y8vm5=-|F(W`$5S^~fVy`m9ofagE@cbLYNB2LoD0gv>oE zX04)_PsX)ydvGyG>SHF9O{eJO36bpsr}Xf0F~dw!%Vl-W#ZhB6?fhB+r{f3ddUb0i znPx`_&8dAe)$gSA^4YWAn}yhevDvEsz5_3?7i&%U0OG4sa5 zZ`Ig<@1}Ux-m0KdD$W??tXNNi;nw|6PWx|yrn;o#JeoBxgzZ7#U5QEF%xo-Nq3?3Q zI$%?^aZ~s&+7v4PjlpL4n}c^?raE?S@x_E!>*M=M3BC+yrD>~*T>eYf#MS9~l@K#M zEy@%IEzKqlgQkgn#iM|p+Q+mOz@_sW^6Hh^h z%*@RH^%i^j*PU|fe-rxCTT=qk5pPYBXzO&F1mEXCv0f-)fjmN6nyIaEbQeqlzHYtT zlSE=p%*wKS>RDLEo!n>KYE*hUbdM`nXMNj#t*^-C)UYfChb}J6NHHePrL00Y`YS7^ zFLa-|_g@dbmS-7~ru(BT2lP((47YzCqPubEXfnxvc%JUw>XrdE2=zMjUMPA)8FobjNg;2Ss-!!mzBG zNz4*>wVr_0&}A=WmPgpk>ex)s(sb)2QsySoF8+QZ73(P-!jo!b^GmLNtJ_(zRbSdg z_#^KA_MTYm7fVvvz$W_eLof;|rw68nq9jtL{Yj2EdPde?yjSIoWJmcm2J!r56ki$KibiM*x4Sc~om4XLD{1JvC$3Nox8X$UFysZRZuU zq%jJbU^zupeWlg6?XHn1wMY7;HLTFVAfBvuE#Ruj9&k z?aWwTrQ~?D!T1L-{o-y^D0%@V{R`DLBBr@5R>{!M~>` zhD&_W&aJKnZyN>`hd`oMl14#kfKfvF7#;d z)4hVEx*`}*^3s^1g_6}Z@y87)3DzVCv zl}YFS_Ra#3`@Gs$agde)WCw-it^+uA5&3LG9Fxhql{)_k5 zivGA9In+<)7_7SVW3WD%2M%QV0npu?~&`` zo@8phxet7$P7F{BJ(%FakqVY!gL~$0Ay?^^mAwPp`q`$fXtK&-G zWS5mdkG8QF2&W@J@3g0GX!qYf^W5^Y7jwPXBYy%x3`kf3GC~~Ch=ZB^0l!i&M!0_l zGDY3vlDc6bT1LSN=SV~e+LD8w?KYjmfH4E6A_YODS9tjaAO=V$-l7#W-9`^fKw5pc zFbfGD2G4=aCBx1cx~W5hoH@dPd?R8T*Zvn{=MVkoGGSp%CHf5V;w7yla5184%tA{?XLKqN|W((uSU5Uc($=}!9pHa*uS1?|Ms1P zj+uqfC4P8O`$vF2mcD7+hj9f;grphlQqGEveY?!9-yC6$Z}5`MjuHNwKKc!HV3Y%9 zd1($k8UsJ@m|oi4wI-ixDpkskf2o7;u7Hh5J!?a_QxxqOfI_Wa789m9NcW zoEQ1DR=2-8on?cU%xM5s@4tu`57)gkY0d(#v#0MT>cpP-p+I)gw1OlboJ=M+WifHv%0@PZ z-lMJEINtgvzgnPeS?%DEN-paLXU&7J7&%ipG4u-y7a+9MC9@b_++{WXK-h1ladXOJ z$tb;wvMJ%GxeP#z4EUZ_qj>U_{TuCK!Sl@jhwt*ZkiO#0KL@Zv4i!87KLsO+g(I#$}6Lk%358fOqo{17PK6-sjs95StlmUm&+~Z za_UxO9_i@fap*rBEm&VTM>cPvr>j(-5`}UzVL6FBc@$KxnJg|Fp;NHB8A!xo%!8Uo z5VRs-F9`abYI09=Q~k3DFrtOr*zdTpZ#6Td#8(;sE8uEE z`Nj|;NmUh#ajRMUP2k0r@?nTr;ta44ef;Ja15d*runRF#EHzH{%%$l^)Z#>ZkZrvA zo&-(W*0$@0_%nLQh_m3D-liDW-*zIS2~Ru!7iKg(a|pt62< zhVvvwhSgtm+1Z?ucqGsXQ|h0HKcSnH7&N zRT59}jf^Tg?8I^Mv#?^1uQkPqLG|GVqk%zA$vX%Mz)Zwwl@c}Nk{hoI<1n{We=UwO zUw_f-F$NK{jgLI7!8+Mf^s(*yVqt@563WTCOtp3$Dgc~{!7yn5{bf|DU~CIK2vo*7 ztAXs6jjc-MVL|}GMvrl11P{{pQNHDdCcu0#DU=fUp{v^_qpjWY;xqP}ZAv3b+vwYB zG8*3^>Zv9819uRfP0)`_h)!{lm70T3P+)@#9<@UDK z?JAO9EWt<4vhSWR03Sj!zKqPLKG=XrRU7Ef!aSs`OqCyW3>vPx`EsZQ{$xZYgeMAx zO+;e>ED#I`!BN}6?Ds@qWv?1kR1{b4BrMy;A`Qs_)*7hPnMjBYuIdLq7L*mMP=@4w z2YI^1Zw(4M+oQ6=fyOZ~l~@yFXi?a_d=);Ua%ViR{shb+eMMeU(v_aNzV@h0Fx6l(Sgf6x(0@h5J1{BEY^A)O0f#HZYp)V6FV*MP56S^sd)B z;PTafP5SrwoVLMi`j0Aywvy8I3Mwv>d7&HPPsvu|TN2 zrJC9lUz@s2fp7+rRbl4V!o6CXdO8WUxdM=pbxPe?S*xxxm_cpoJ#V zhW_+4?jd$7;Qm?pC13M~vjo$K_EcJPOq(K!QC1$F?VLh5O zbjX?l4wcFa(+g8)nxkT-@X zQa2x0(agO&X+fR@oriy~kZbzh8XHyeBJ|AOAe5vndks7RC|#QMbED} z6qt*Q&QDiVkB;dt;Ym4`CnP_;^${qa(#+y80%=O+%p;aQh#&&#otB^Yk*LC|j7r>+ z0rOJ+sb4TJ2-W7{GxzI2oB|)uogSxv_QtRmmZ|kgjif*N9a*}+ThwWV4DWh+zu6V= zlCi45!iVjmSJ_01r}NX-!dHcJu;;C6wr0aiB^Z-zfhn1i4&1KaD59BalsMF7pz3g1 zg;6VhZO#`ajRt7+e{QS(6RwAi?!TTRH*0JJ?Gud42iOR9t)wi`e+BvxqG7D`Z} zlf^%e+n2jx$*=te#s)IBRD656Zr>M(5tCf%5d&g7OTXdS_V$2aQzvC>=lU3ZTED~x zlV(UNW|FS4O-v%5LP@6}As4T~93P#>SBkqYz0B1kxr|l{D}^aqqvzG}cKbT~aJ2!X zcI#)Ah#9K`USU15s#rMER#4TnV**Ck@fqUz;EXh%?I z-p(X0gFTflXEn8_zWiWr9wcg==}Rn@mJXryqhfhj7T1NDsWA*01n3}^?|8c2#%a#J zp4LwpK`aNL#TES7q>J>(6)DqeXL)=E#zB1EDf+{VDc=krYfuq>P+e-jRZV-l+rpBJ z!jHfxMi9pR=E0^&yPz)D{P7#m_R+W|uPdsQcYU{&I%*yp0J1?tR)0HfTF|%X>RcF2 zoc`AN<8Xjf!tgJhtxEK|$WC;mPfZ%cvp!qL6k~V)S=q3L7XRCZkCvg&)! zDuM~n6R=C6Z>!U1fx?+U8$cT8nR?g&A6Rljjq3&PMRV?<((1aCzabK&bv7>gjSA)F z=6w)t6U<~1<`4Aw=>G(XLFf^UUQx_CdYfu`ClEnG6u8H74l4Lw=a|y!BOm?IyRf*S z%Wx4g^-v<>!Y?FOMGk)w?M>Co9YVql zm(RtyMk^2ru^9eha_VxQmQMxUu?0G+N9_51#IjT>H zpBP_||EQm?v(p?8^tudlXn$ zfFh7r1r)4afm}v-Dv%u|8j;*A2heHbqt>^toEIxIUdL>tF`NLQqe^ff&1K#s@EKt{ zb(3rs#A)P)X&({Hgu`{bu8K_-|39QWLO-bhToc7dMX58FM)hOQzhl^uPguDD9fO)z zK2dqOM8Zaz>LxlOxmrkYVg&kQnPG5#FxN&yEA&bCVWwCL3UCK-W(c>4V@Qx$e+zE} zrObu&+_$yZ8jkw4^v7{uQl;{Z9%bNS!s%75W<5rkeM#84*h`*?a7gT+$`um^!-=FE zkRpf>p1$&kdLY?SaOt=TDspjEb`!8_N-k>-gg$HeJT}|h+RaK*-H|EJ+7D%Xj_9PT z;%G4R_lPHfMfVZ-a$fa-rDPDoWWC*rIrDw>%3n1xutawjf3?8k5c`8X$nx!!6Tv;S z1p!lWFL>#N3z5e1%Zi08Byn2$h)8Om!9@7in=y0NYWZi#0atzXOks{9z0EEx!|7JT z--sb*-s6_ucw@YW zmCD>@Vl^ot8jgPU!Vh>=K_;Uxu@@9CV*BhWt{lj-HJo#+M%AfQlTX%@U@#4g`BL&5 zE^;{*zB?W*kV2}hA&zMNo)JJ%jd#i&R3MRakkaQ8?|FT!$NVgFC`S!2(fPjf^+^pi zkLwqNcQ+kT(C6gSdfnVE4ymhjgMyNBF(nm9bfWg}thU|K#kY?Rnw*&*^q`rXJ}$QZ z+RQR!r%8o>8N%j|PZ2N%X~$#c!!A$G1z#w2+(l`%W;#Se!SK5ZtnerYO>f8%K-Lf0HT%BaI{%UX`1%&zDc>d$I2j0s-ASxCx_?RlV{pzq4{#bakx;SWyf1-q|TYST+Q&(kP}?j}2Al znGp80I<%Ab_PDzJDQy>xuZl>X;gCN<1t8SG+S|T5Lj$9Ffvto<6!E(nte2(E%dlZNU@8W>Ctd9H zpPG2FwO{BlwS@fT?OPa!AL{VXA}mUd?tWoPKbVnPke%#_hh_Q4O%kKR2Gi}TS8?(s z&`6KXU$>-n7VrNp<{8s3R1fv$hCg-iKr;glr(xJv-&6W3$n^%MC3NcXAh@I z(Z;cln^=Ezg0AOrW0HzAKI&dLsy#q|tMruy5k;2{U!UH@AI z;K>(s@p(-1q7uurxdxFUTQDhlLAZW>&JmdT&~`tyXW4UOT^X8S%C$$k$(SXAnV-)> zA+GuZY&>O3reM`XleSU24}6OQ61I{~=2KXx0h&W=NEzx`N1w178LFbDBhqF)am=XJ zryIJ0OP9qa5e7jWv&iFp!AXwRu~o_2-+Z&sShX2EdGNf12-6?XXL3_8qVCSQls*i3 zGjcv$xQ8z)&D4Qt;pD5vrB6!4d^z4ydj6ro_qZDBcEc!a1K&&Q@D-^nE^9Kr^1hSe z3TLWzxPsvKA*ja`t##cdzdhD7f1W3Ix2d^)B;Ks+-s}#^8a{K|mN+{R+CuzU!{q+* zC^!>0I`{3y!nJkXt%IusfPvIgV~CPm{h5PugG*<~f#C7~s`~+wPu`+X*pt^y-Frt4 z0M8>_d6JpCI`vdi-w)14@wuD5%+d57-#Lm3MAUJR_j!BmK~{0kE?1t_a4`X0<4yGQ zg{9$C7}AbS5?#5qcQ4;m21A3EmX_b^S@a^GCkO;J(#80NJ$ae=LAFvydL1c}slg`; z-g4q6OH*|Uv{E;yJY}DSU*$rJNnP75It%F~6RxZql3Bz=RBddB>0H_p7WdjvIu2Rz z(mb3dhw}c47aQThW#7Gr-G`~e_#DVR#>Bp#tc$w-_?=R@BjPySv&>*`4**+1~%)$D**VvX5--C&1u|^88u1KPzW~wR%`)>5^=Y^A}Wudsg^>q?)Ll zN-(V{-gDK5p^>H%f@6EwFy5ReUt^v2FO_ic4*WIwq%fXPDGDf0sZT}U zD<8M9XwC>`txY6eZv=={1;Idz0kw5L*UG-&0zrWBD`<5lU?Pv=a&!M^LFF3U)P8)m ztiIiy?oX`a7$Jb+rGuMo0qBIgU>1t_D4H9V$lMfOMsZu;_7BdcqremjWXfQ9tIS)U z&wtCVwY|>ML3m84Qt?Y^b9eYe$IvXD;#}~x|4I^qi9{aJHfw|Cf{LB$4-)LsJ8ZV1 zr>69df&f{(>T`U}1tju(PY51fj-3V>w5yv{=3Gw}bLsCnBFG4`1vR!OWQE}bQR8j1 zG_#u{((61YJ_6oGKx+9?qKP+?2inTFHmY36lkX}I#ws?HzP`FmHwT2Yj&9>A>YB@s zMhw+q5^7wM*}S)r9J|NI)Qpm%^=cTmCTv6CWLXQ5YD2$&Tm7^}{YK{wiMFTDfu&hv z;xk><)Pg%8v^yFsStkBQcWz7@ri?$60%$?A027 zaf2v8bU>5}O3TvM&18ui`D1kFpDmLk#Jc8Zeoxq__owlPKd!MpGDb)^S;angi(hvq z5F@HWsMzA@6V^oMrfebsav6v0rUa8rq;E?IkwJ9XBi=a|FciMJRu7sTaF#B-#yd@K zCOULr$wE;qdEh)iJC2`?{eB(r<(||iA2x&LGhA2X<%ehb~@-_58dsO{B zB4BM&Ey=l#h`yGcfdZq3PeSsE!9*d$XWq;j+~LVI+~mG{D)wSN9tqNaTTd8VNxaZLnp- zMT_YuK&`vmhs2#6>(w?XC>f+eY4d&L9+wual@r&sZQXuXqZKxee|p_ERUVfZ2K~0? zVP*+K2V<~l5XbTz2c{GT`ie#qv(rKYqcP04N9YTXkl{@mA;5qey+c4GgTs zCY-lQ&9;WpKhEKax0dt+_cySF+rp}VFHnhzjmpu2!aSW1hOz%Hm?$<0E1PJxRx_;G zb^SG<0akWmuS-8?XyQ{kI`a2AvGEsjoj-ajA;JyAzDZu=Y=;m)4a}M?_nvwa+ zOn>6wDB+N44+O7yxFb0b-pl@>Q^;_1oaEnuTk^Mcx>aI)`*?99g zj7B#m*#NPS7!G}LQ%N70w7-E3#6}Ku4q^Ugdq+b*BS^5nK3m~i0kJhH-!6XDpF6dc z4d$0$*uoYFphV*S2tHU)VBm<5ug+j##(Q*7PAyMyZ2pkYl%Y6`@KEfKVTw|TdcdfR z(@nM$GNS2fJAII1o z75}KZ(&SIX1xVH!!>E+3MOSP%E{Ve+M1;R~t|bv+Z*lVOZqzG%8BZ>RNxh*76dN^)@hw;;`VC0a~QLT?6q_}GjxW_HvN_3lCp zuS-aKB7Yu3P@t%M9#xl>n4mLqpU(pt-;nbV2jIi*9C`%z{1&yitOGS~vXb*Xbv{E< zHn*h|jG~dROR{2-`=G?>1bV7RtD1c_GLy@>&G97s3T=DTDnHm1t!)WU&v0u38$zH4_)Dxw*$`zKjwt6AuU5xAJ|OK3(My+H=#h$~JI*9fpA(LS zT;k%BT+F+Ar9zza82iHUqaKCh!lt1%w#*9B@8(WQ^Wjl{>1BS)tUZgf_`S5Rod_)= zY}%6AM~}0y$6ktg;ywYx+&*13kl`m;cfDu}L+t8Xb;}D!ghVofbL%-ota|Pn}VI$a11lCcSxoSK>%5WRLA=BS$8KbJs4;vhFuU z6<2bLhQmAR?5JCQzSIBH(y0H3=W1|;k->{6cd#_U%Vx_eQbzIEhNIz_X`LkoKF2I8 zG(L|yN-9(wX!-3YQc`;ry|G1O)LT1eWArlOJqXSj8Y>xh)(;M{q?~9kQy3I8hurpR zxi5(2hX2tFH6CBWRWnHx%W^l6Ie;9*TiVldM9YP$?8_2~>d2-3zKY^&xX^h4cYToNuEUsZ9#f05h5qPLt=_b;AX?3F z+XA``^>3Rl*q3=$mjCV7Z?u9sP?Z|8z)IzK=sCBelb~&n#z#g|b&U*TB+|HCjpvO= z1cr8oQ-iH4yFiqNIWBr7H8hR@FP>x~v1%MTh7l8o7nEu_aXc6B5q2hKJI6m^`Jih; z&ntR{3$x#awF9gA<=nEgQRfX(>!n%&bKl6z*!Uyrc1Ntu3JVc9EY&rxb0;eT=U-Dl zeKeZ?)n9tXrR0|giqDOih%GJSa!?8$CHU3o!_6*sy&9x>^QfeUf77a1mr5bNIJ4af zyfO5emsV!vJurQ24QZpoi2v2`Ij25<3wUzNkf7+4xWB_B&pCM!;JzK~n`DcJxtm|8 z1Q6=jBtx~4mw&FRmQ1dq<}vi6w-Fhl(FJJam& z5tFOX-(a1shK$}oNWWc}H?+`}hFKR!l{FHZP!Ip%>M*o#sk8}iFAwQch0t99*eKRy zxkP#)vM<1+Dl>?IWp0n?!(d#OW+GbN z-obE;0w9?w@%~2k1SpVoJzmnlM7 z4?sNFfYyKMfqpD8nZ>_x2i+yoEsBS4HXjsd7w#oV@)Pq94$y&yXbe3(0T;xNGeH2J ziX>In%}b*=2nt;P%-D0|&Z7$UpIipvvk}~^{r)qt=WTlFtZeIHC^sEkV(?ZSnQo;i zf_S)~?_li!#RCwaN@s_wqH?SUgEAOJHw>cS5L*bTOA}Q4WXCfI?@0qYgvpF-#d7z> zQ$~DLy?LjTD|&q`W$FC>%*#1CdD@$ijfNle4NquVI1+3KK3T_z9bwCV`ZiI&Gxr>zpMoFpY;R_=?|k@!Xcn#a`2np4;ZEJDMm~A=I4-{?n$CSdJYYo=-&~HfJF4hoei9h zk;p~hmJ{b6Vf}&nvr>qvK#xoagz-&>%%Yy=+)0ENJUJZ*gdOA-n<1tlOIp*>2u$o6 zgJ|pBb|CN1CteB|`^vh$4kZb)`jGYz5x`G<0Rxz~p8y}Yfm}2VUH?7H&^joQ&*F13 zK03)}YMd*eEnHwaPz;w&M!w5ey4muRyhr!aAu^^bzGB-4mRi?tP6TDt6E(owBun7n9<0a6kGXIzdOnpQmiC2pu;Rjb3_vn5< zx!16U;TbHdKku2v7MoKqf08m8l=oJ_a5lMJl-`3o{SQ8#fM-m} zk7fTCi3#aDy$LxAj^8GMM%b;nv}>|T&zJFaZ}DAVwey`B4v{5r(7|Orw0pj!|CU@I zt^$GI4;TM}`+|=EZL?s-Q)K8_Z7(HyFdi;a;e;W z)>@v#w}7iTY1D_qP7EQFH7yb@UhF&6W5cq>5S)s#730_Z8n}Rr-tE`Mc9bcHtWY#) zdluCITb$5#YFxlQn0Qg9e+ri|+S5s$?r|9w&6WM-EEndhq-$;TSgz}R>~mT`aYYVs zVqRR74{3%ksR|-xu!HM{c_QMcYZV&tUC3SL9fI=Q<8Z=U&Hvs0$wmOCN zD?VtH;XiaRnedo6V3$26hBz#Gh78oXwzOhM99UvAM`bkEYa|RD20|F4b45MDgV7q3 zsOVE(Y@FF%R+b!Dy+eZ(Jgcf92S*=tmKxjvgFuQfiy^YGSn`{UXAG`e>Tvo1*_G+aUhspMf#(psk4x>Q7(CAy)oD4Z*J+fYAT^*R4NtTy>Q!LC zf_MAlS}19iU#oYf{M0ZqG^F5?l+b1d_?{Wn`VcM;*K;2An3$MGU~0>VP$Z>Lwx0&| z9%qypC|N$kCb;>w*0MSS&LArN9W&iRS<`P1P(JQD)^|J2#xUSR?=Lu7$tq34L)r2# zfY83;I%rTr%s_f&@a8bs?;Bwck%X`b3wQP>sdQ(+(DpG+Mna-3UW2i=xQv}Ot6ny% zT6QM|HoX&jH$RRy4ji?f7Z+R947BecK`IO~8wn+fg#mcS;{_MZEWp$`3#&L9%2Q*lM5i!Rbb~R^_ z&Q%a}kiQgAL|Po^U7ejb6+N|^CiO=Rd2gW>Yp!>}lo^Py5)U7iuL2J+IgV8izD~=Q zFOr*xlggV_m;F7{Fy#-e*Eb%WeeTYxovGC>#MKT3@p7|kbD-5AprrSaaD)86FI&fQ;rP`)WhSKh!Xim=1kqwxkku(ltt;ye6vAZ9ZRIk!}hULf^OvN1$zWb;lCD+ibBv8RvzA`86%5 zR(=6V_M;>-URG?`D9R9FDWJt>u-xEvdEfXV*=2x982yaQP>}k9h^{527CWA7FojO6 zS2LYXSlz)Z=xEXF+Xj`9=8JeUKSbbX#Wtsrb@R!rq0r-EHM1;7u@lhZl#6wx+y;oT ziR*Gs#G`+WFY9I$;1!L78kFxeB5yw#rF?Wx#20blJjn5#M!)THWzl=(d_qVsYKhySX>)*0TP+O zaXe4!W3x56_PWT1XDu^21RpLvO@D}V~Z8$ zzY7(3%eTp)EL)TpXnbi?vcd4V8@9XoFaZHTe@TV?`w8CKcviOiQ#hCe!mg$iJ!Ykt zp^AbH#_y(OmrtgzCU=kOIocJ0g`g0TiZ+niP#27}rHu4hd~MW#BrukN#!VfxTLiPOz<7q=OTUu2 zI!Qe4C+6Q~RQd^tiK`KWZ2BGVeHy9!ukY?I3HgC&*PRgdkW*?<u9A(HV zZn*&!jrHwU%4A{nm(|~ZdOiW|l zZuiC-m2bwRo6VLDIEpVd(!pIc(vK}uecLvyAZSW&~!p`EVlqh zH$hN$$FQ&}L2b$vF!0r0eyP2;XqJreW_S zsh3uO2&p2s<8swDkU&m{r`r8!vXg(u61B#5BNzUcxl8+M-02DukXZABvtt1hyRU+tnKWkDgV7}5uW>cmr~9U0;s#afyosIN^M z4e3TCLc+pl_N1f0$@-kmlvcN;z1SDSYzc~n;-O{fYU{4puF2AHDW>>-;osM`%-JsC zG8vGG%0DUkk%9>or4yG!CX?DH86#8@%ntfeanwIB4}IDaB0lCo7|*j8>h4b#9<)@3 z=35MK#on#UPe^N*C=noW{&@NpUgTcIL{*!9l2t01AkjWxS-qMLtiRR~SVaXN^VQEC zg*50YkeZAV^?aJF=Jo?fz;8MI8IrfYO+3cXviLL zGNA*XX(gvvI0PJ(mMcFXk>P$U5!P=3d~2{X187E_(9~K|Rwp_Hd|`ePA}A+h@?U>0 z6a%6xV3Kx}kh4ToRhS?ebN@RyexJIv)z8Pxo)~{SFG|=vnZ-q{T%z)kC|-Iswz<2N z2f~vrCA%aSZ}o4rn%^ym zgH@^X@;Z!{tJ5s>5U7Wy^~sbD(atJ!&Q|Njb;r)Tp*`5j-7X&8>Cfr-+MN^P38JVB z)|h^o?uuYTIY^WGP`T3-*0~_~X--@?39rK)4%HYbhSkS~5SS&%SC|(rOE#Q=mfRjg zrKWCobak%-&ZaWi#u`~`DVkp?d+%#uYw4`n#YuOuK0p5rW>e{`p1$VfnMK?@*BY|m zHF+8D`^os42(}<83TU7wq)UUfyfbMNVMyrJUy{9TH#0g?w%YuQ@aZ}m|I$=p*xXJ%Km!xjzhgs+ zU0ME4P!xv|ZV}tnY+f}%FUn3-m8oY))gKObgA_pmPiN|rigE=;R1oll<@pWE<;XtF zU+Cdw>)LiwP|VnYAmZBFZc3y}o#IDuMUKUDwPmQU*ZO<&#U%qeSEbsxp++Y?vUKAR z`!Vlt)Aa~H_qE8v21ktg#A~FpYIbKO+KH$vmQGE^WJh^QH>R_4=KjS5_hz#6;SiGh z?)%H<4#f91h>kU|EiU2;g8&hsKtdqEWlNGQ0s2o0Rp2;w8l7cYQm*y7*R{C01<$% zJ2_(6BNHf&)Cb9?A+l+RqbJSJiMiC9y89%0`v#6r1z7y2HiChk_5W)ll-%u%320>v zEEJurVQ6It=;`SGPlk$vqtnlko$>$S)fku=*#Bz_y5^*fRy*?c<)1bw7AuU(2*f^s z9-bX39|+utjuep_p(omCSU$^NAX494MI+Wti)JH<4r^0G@f7K$h1XD z8ELrd8>A*-8=|l)2=j7EVhgzp^&5I7q66M^0#x%UAW#zR-4XRF@Y+!{5arTCK+6!h zz=^>bVZapLXnd$I@;`zCh%Df8gI}nXhjB&K7`Uv|d?ce))&V4=3XS?xG0N|G;o8sx zF|2?1dbOI$VHbniB8SDN;A!|Ghg#AgtYj<-C1eTr)8S|&L1$1mN;~YN}6a=>wkbUKMioyL0+rw?GEL~9zaTb_lpy(uxQY+KEcae zDTr%R(Li1}>Z2D~qm?Aq_qS+}u0=3iADulwU_H~H)|64vq}C)<)mT|Uc`8ncNKe(+ z?OtnXA)C9Xuc3bu?LpQhu;uU#JVMI~RMZ@;?I14FurmV{_dN^hHg`yD3*0F+ukr_( zDusW2-Jt^e2_0 z)QmkZes7`WUYwvF2vo4`VDtg+B;%J}XRk%8bEbsi%bv*YzA|si1JUhnG zAgWCxqR|H9IwYR&nong_YHfCOT4#Mf?Cx_Dmk}=~cV}sFLhekS9xrMu@ny@s>9%g~ z5|L548XyLuO~C+Zji(m$WF9eCi#@iSPZQPu8hpB4*3Njfx4XIr8u3>!dETzhXG?~D z_me2oiiv8{QKY-4*n)~k-UYlif)_G-#J?x^_jz;^*bd2c7YmCoH{M4;MHYw#p5Jsh zr=8ST-Dn6rgZF>?+3sd+d2yN!6_Pt9Dx%jW(u(jsL;HJKG=R7Zu%%_d+3ZzH^`tWs zxGbNJ)_ei|wWHdM)M*vOK~aI#vG>|E*K#wVL*+)A3c`dkk=pEQ2Hq||QAr>?k6Va) zh!YVzLPjwT68aI}XA~2)l8x`U!4DtsqbtJT5!^aAXSWW6g$llE&3v?mfe`;a@()8H zQpgq_k{l_7CsKB+sLzjqvcekViY2Fsfm)8K)#L(Eq?UMeOW9>qLMO0hK=Qu>&uAfH z4+vTNT$LDuFOcI(cITU{3|nTnv||$aD{PS|N-{|-fUN{OInSWgq_AT7YA|E#=48)Q zcIXB4xK==jlt{o8OiCRK5iHF4c-AQ#U_ns4zC9rdC4jCJ7Rp_C#=lnc=y#xPK=J@( z;AH7QCPL!lVgr&bMZT3Q&0zBw#2sOuNty@N@Xj{=YW8GBz8Ok<>;f|Ua);T_Sf-bL zhD71c0WE$G1TEeG1Rc-MZG;4kB_seDKgX})#FZadbw==qV=Mxpq2TAJCOC?1UKKxr zO@Zg%ViYWIYK26Gf5%#=Fm`X}_wD53{`~LZYO%MI7OgJjc$;yMFxnB34_UnZfhzA9 zRWCqfOvabR4~1NCjtlY(Kt%~G#@o9MgaXu6TEPiq<_@nOy~*%^AtzU4lnvg*B`jCJ zrUOAB?PM#!^Yb<&kAF|u9x{w!plu2`fp{%0kBh?i^f_T2lcv!xhHof8K992%6M-j) z4fYI*2^HIX$QU$C62x)*=WQPYaoFTc$$HFIn#n!YETf@(t&4OMFxsD$a&v?@y#5mT z)el@3dt~UfQgg1!Os2A6T6atg;{MZuDG-gFBJpU!n=Cw`tyKk6U~1b1y?CAwZMC8> zuW~L}v0H`vB1NT7@lgj?vn%V25B5SIj&kaIpmJ(`V1-Nwdg;I)7zNuSL6$qx440TS z-s}m##Unwpd)x+>*tJOUx2TbFtlTzFWL1fw-Qa25vJ>1h?zEVz8-Rp+M4bzEgfD;; ztzP8!E0qg#fC1rJI!W8UH)L~e@;_LenV<_$38~)?%Nr?m9wSP7%yIt^LO9`PX}0Ci@IPfVBBr z9e(|WrzqkqCyFlre;?OJk)LC+LaUFdw7Vn=6FTRs#ESkUs=8L07rW8iXWr2vj2vAfp=Z%i8UTL;Wr)Um!W`2cx$3ZxtH)Lklc3c^ zDU4q2aCk^W>;@rfBw?_%@?owdO$mDmJfs-lGW(#?*k+q1D_nk)aI&H$>4eFk(AT^e zC0tG-V&2wbfW_}&wVXi&#S0BZLh^gHy*fEwud=SbHtPL?8QIZDgmtOdHuPwy@tmWg z39YQo{chILHEeb?T!DR11X!7`lB{b|E$LxC5pY?c{R{8ee#m$dk}X}`O!V{scO*S& zA4j>GqwzIope)YtBi=qg)Xd9$k^gkOeej@txw)V17W!iU)$K{!liGG&#cH<|K*Bt? zV1CM|z4QiaZj?iV*I=33o@6m6(o~3ZK~xgZzxu4? zOf4oN;nwcI-CbF9cLy`6CX$ZDP5fKVBCBD4Z2UKvl)7A055ujsJzd^U>$_~~W<}u0 zk((dEdgP_B<>&`sv^J}etm~Qs_YbF=y@O&LfN~^M7?pa%o{#g7*`AM+Kde#X{d6K= z3L2sQ-+B=zCTo>jhjncxNyPo@2N@D-i_wAVAjm_htAIzYkNUOh%j<^>%8cujB%{#k zx9&hPl0P_)0mjES`5VbLa`iON+S_fJC0?#&84j8o<=U{3Cm@$s(x8(>Zjo1axxe0t zbfJoVD?@k##e&7($s!vfu*$+0KyFUOtC%Fdfk0w2#IUVIZc*FjS&!<|^qJSul@uXIj}szpsyc~@oDY$aPd zRyNe+@aLcegyCJkGDMM|irISv$Rn}Qr-csU^2^7F&YkRuMYREt+j?9-u2Y1J@n0q_ zU;oSknXp5SRFIgG5i;hn)*QAHk?mqXS$5gO$94yxq1Fdh^$(}-Qu2nmWC%VYT>EEZN%zhYO)*L^w8`mb$&UU z%LCPlCLK5$L^0KLv^QOKI1FIWY4@ia<)(iAfRCyLff$}aT;p1jUgoyhHbi0%{Wje8 zK!a%WL?K5`^z$n@@$cglUGGrm3~JIpJR;;6yFK&t`0yGX*LTkv!JniVeT&OjRu?FG6XMp=g@ zWbB-*`NYkfT9qf)FPz{Mv9ldK%`b3{rtHOCh!pDE=o&WkLeXA^tk>>`$ZNdkXG!dclY|z$rt1|!5Vd-+vTdR zGoD$t07t)3emvRWkja@I;~?FX+SC3FS0vpqlDLJw7p5Fu8YmFlAe^I(PHzu%!asL3 zCYdj?0@i5tDTja>_n?`|_6K?t;}cEW#pk56yDl!vHeYqdAPjjX$zijfS*X0M)Hz*OrDYtU z44=S@v0~pAZI4}j?y~&j!HMimZ=dQ7(Njzp73-St*6Tb(&&UIqj*vGTe>A=k%_ zkR?74#|#(gj9Dwinv_4_#eK`W-uy?p0`=&#X`XM`F3@gdjt-Fsdhk(ubJ*kLu+$R= zcq2*f%~Ob!Oy(fJQ7f!2mY&N%wX@N`cNu9d4z~h9g7cRWI;z>aVHH;WXWUF7wPt?y zfjZRa`&4o1u7~GN?eo$gK{ca@|9vX|y*(-a?X6wiEtPuwe*BgEiB|A6%M=e)bm%Vo z(;??0g$@y=Rj?eH6RSK81G2QiTTQ!qrMoV4t>2TGMETS(z1YF#;)tTijAf4~?4f%g&AH6P+nZ(gshTWH=u$ zU&!+)YwNBgdapN9sgzVaoZZ|Yb|$YMi4XKvcFMJ=CFk!fXoKj{mDz(MCVrg5`R!R< zk8_4tQ3fT~qVLaR{1()r&^@Xmj%P`h%!)3;j>d*3P|Kj7#pamBo?BNuiGximT!(VB zkubOa;xn>_44Kqkc`?1i&utAEi!I-8fg8i4YJIT>PFhWn?x>{(foEZ-OEh$2eD zMu<0?bKw-ko<#6lh->sA^qAXsZ{ey~2=Q!Uy9P135zMap;We03@fb)7v7f6?P*c)i zk89tZ3A@YpsScK99c6<5nFujeZ{Sy_HRhcV8eJ0mMNXwxj2ueJDy_n;phcI6i zvi`v*Qd2$Ci+Jie-49SyV{vVAlbw&1T{$|2c!y?l-bCw8kUc}&;3TVOY3TtBuHCKjVZ)qQ%LU&zyc&Cp|MnqJZ&mlMGgDw?0Uyh z?74_ymC_Ap{qfS2{x6KOsEC^i;qMsN+cdvxVNBVw{eSnQ|O(;j*SIl zO?P-K&U=m{&TG+@eI*HQ2Kdo09;q9Hd>p3=DUc=HxsvH<4IMe4}uM~5lPROd& zRVORnEEZJe7GFCHY}ziO5__^100ls|wM#$~*tx;Epr<_wfY+8#z?i+lQ;-D$SZFJc z;H!VI-S%c@r&n2Qy(H2R zU~WJMvuGL`_CHH$DrkdJ1a}SDe+&-6H<&SPuvfU#02b6J+*+tIYsy>mW$W$z z*U_T%jhty+?}H%5VYR151$l9RUiiSj!vWrleoF@@tgq)u7fKQkMqBRe^;pnQktaTa zHaR_=Tnw%oLCr8$@~IFd5ZspWi`_4T#PC&e&G51Eo^ST4uKns}6zRPFI_Z5L>K-c_ zNU5rsRWXIw0E-`jn&Pxdrbmy4olL3wCPEfP?_Z8{o-HZ#FUr3x&msf2BE;r~^W?dgE~ta?WDPCp6$x>qE=oBYO!fJwP1zSPP^qTLi#q_6+{uig4hyM$L*iUkM}GpogO?si z@3G)$@<7_l?yXbHQ6Z=5kHms(%{m`mm0LSKxw`#Cg5KfdUCMp{5c{uXkc2P?(&7G&+e#l>uIn`v%&jZ z8nCG^tKxMk2T;aZ($6eW=uHwq$yQurndEAN_{FCy-u3yLi5?+K$e zGRV6(c?3n2%y~&59~JefWsT#ploO8T&tkWPuR#HW`fG1?T;e7ZOL~yj zOc!Lj?%Fx$1&419lFxy+{m8<&d{e^5!?O~4XEO>SrpCx1?BijO>nFIxZHqi-%+AH< zU0(ej*#Y9j`fce&)Nf+LXYQcI-apmBk8Bn26NJBi=7#fl+0G`#aB5V~rIRW>6tf05 z3q~p+F=S!)!;jx=39%f8#cqhgfsmicOjefv`F7#m9O1YKyuxePWt#^=z|_3 zQ6J2MhcU>0-g0-V=Yw7TRC?k+bu2T-|JAWf9IXE{HsSxPmKj0pxvlM+HcsaF*Mu44 z7)DciC0rn(l^j^$Xdrn-hm(*8s6c(bT6*eF9=hk)UZX&6j8iaKGnd+V66CKs~=lsJAW88z7^*|{Qh5e)y z-q-hiag*H#L+u|oL8>U)0_-Q+D&)G38s}xstLG~|W2XzW6v$yJ5mdQOX$`7mp_b5r zC|*&fvp$M=1StZdWLm%<^WaVpEYcsYp_enT%y7Jb{n6I@Pz~b>jM&I|7*Y~KRf0L0 zLJ}cGzYumxs z6o{osY}5@}L#FP*dIeRX(|@z-Q(+scuRYIxGb3NtSiNnYU3w{Y%~bh%%%HWsB|+xLWI*-$r3SEiq6-q z;>#2lIAurzfGxn!q&~QeLmTt~-k&8_3pPxzY`Faw%Nf*|aEtWAl{|`{jkO-T2t8es zuYbvPv3=TJgrpD3iG&AC|%`0P>E`IZtuHbr&>C+}Rb)Af4 zu&wW#t(SH}HVyCt4g2>~R`)a1b$!K*<&& zroI4(7%N3Wf-uX&DGQS48DtN28IgUy#mmoF?nz&d?*@0VU$^ct#qt2DM{9Fq*IUU1 z{N^IIJVF+uNxSsVv2Ru5v@L8Eb_fd&98Zd`^d-)lU4Tp;$x@u*2X>ESrPsT(;&R_{ zCO_@%;=@Obtj5;Bpf`s=C%VIj0JLf4=)vK1g3a{Nl^X z={4QjM$?7O;r1x})++X5TWs@97upiAfi z&Q+1KaNgAKi+!$OOZb%#arEZLE-khZ1wfD`=7oe0OPI6KR|#=J-#b)m&=It$mHcEh z!)Pk?ijH)dhH$=Rv;vMS{|uzv%6Sh|0|h2&!QSt362uB}zu8ih6Q*TUWKlgYq^L>= z+LcF*;MX)4jon)%XVhWiD`CB+KOOchyOUZNZH5PySZ&qhV`jH-xTj-Uf4KKoy_}uy zx^}caK*J(mJ8w^S&&PEIq%fuRkd*lh1B=<@^zx`Yhep3Vzi<$9ULiQUeWLvsc8{<& zIeyL0{S^^O(tLtIK6QympFWT=RRGB99o&a9aekM76Oh6QO;fsE?^RxEc~&=wzQxPV zpLcy8dtqL)B~W@VKmI(g#YR_?mj!LYM ze5#a!o2ABDZC~~Ui!aAO{z^##K?1L(7Pkm})avp8Kh{||d8i}|#q>a5!9+BB?Wmy7 zJ5B(25dg9tZoA*N06z{2&2PUOwW;6?^o=IlUsq_C(h$wc=8kK3FsMDk$DNkc*ZWZQ zn!5waO`~$1;-J8!VS?NThJKs+>#y~`ocok3_y-cW}O^$}%d5?XWP;ZlPg@q2!6_=>UT5ppdfxF!%v zxh?4FV*~u|<>{)n%)@1Gd3R(NQEXyW>8SZ2{M9)}J0zoM-!N)6$VUMGURTEiUV&0T ze?~)>vJYz&R~F&}KT78vMy(our)6>hd_?*9pgV_lhIz4TUGB+(ws(J~a&ZNvK(8)U zJta~A+$cLkXaj(b1MV}iQE+P#lm)c;^2K&A`@8^PAn=cjltZRNH4qfvh9yr|6=7ER zU^%Pm(Z_}dvl`-#1s)8K$;ErFf0^y-iOsfyE=t2PQCjgW6(d|M-dJUP4Tw0Rkb!SC zsr^vVYVJ9+MaRkM;1&!C?*!0KA{-pZ&ZAFAx$)rJ;_fp$dTM*7Yd`}y|^&fqL^|EZ}0s`c6=M-vf`%JNKO<_#qcWT415F_u^< zt+Ni=s3$nJ!Tz@z(9gQ^r}hyv-V$w+`z6J;DcwKI$LTNnIt@5YLcbMwJP9r_KOGF+-~r9{0NMM zKN2&8WY)=yStz5p2IN)4!i5rI%1Ky4nAJNDi+KLhO4_T%jc8dVOJXcR$7PA;xuU42 z==7lq;=N}q2gX0bB{1aj&W_IO`@Z!W&yjbOoiL1O3 zPO!iD`M=mF_~F+sLyVj5NPI8Ge0uG%x(u32P<}=~{1*0acgi z@wTZ09RnGTXUe>inb7O4hWhLS|6LJz_doY;R)+t(cQZ4y|IgWmVJ#cGf1rh*8@+t5 z3YfL29{Se|5c6BQeo%9#Zj7@~5(@M1mUXFu*rFL1UvD#)RB5{A0feiO5y%e$A0t3%9S{_z01q$vQh@L@~Omq|P0`jA{7?YO8+uX}xTTXY~4=TAE{{@m|FSM>Zc4fAv}so8M9VHRd3 z56G3Q`Sa+BFd$E=6vpyw$Q`~Nc9Tuj=bJAj%Yjt<3ESO1^qfZ%*O~Q)bG)896Ubia z4EkO6A`SDh8Q0&1CH7#bUe4q@nVS zD(M6mXX=i-s;;sv6igz_fd~Y?akc!>8IJpikdMoBkBkKs6Pa6YS%+j;dr^?Tph(rQ zk&7P7@QWG|wE961LixNd`pi7MtBEpM%Q4X06LYI9 zrfOj2$Yu#GG-e;G=Q|<1i<6mfXt@j$?x>8b+DF;$w^ZBOpX}cqp*5qnS9iz5gnsgY z9&2Uyxoym-4t$_c1Q1cxzd%=M58n? zF=UxnB)bUNOcB;F-SH4_2V!B`Gi9JMTd(1egiRNKZu_GfH|Otw0w!7;ihzeylu>l4 zy5V>S3A^|9F7iLvsKC?}ZEQZt7160;0Q2uqfexBNvB4dxY%Ij5@l!`X3__0BK!U-v zRhE&oWZa~aM5wIYgd%Y6BIK`lNiV|LVw=)nU(9H6(?K(4nO}Xk1cFx21#|BC5K*{$ zm2nf6KLi*!SvgU-P?+#MvmLFr*~`7}Bi?*u?EwHs=fDM&c6k9r>=*gV-W?l61o4Qq zh^5a9dKJn|rU5I?o?fT-9lklh>2`UJ(}LUrCUQXSl96D!M=S&#=&F1!pN5BiibM*s z4v5@Q3xKNo9-vx59$ew75=lgpBNH{&K%3g~RjO61s7dlD=da`r4rN;gdT(__ln)S?|QDS z#~xsMeEhVfdwxhsZiqcyDj)~Yp${WPY5WktiAsa=fKfqDfnXb>)!=EjJx;lo{80K8 zEwFJRFpeEh=%NDfH_@(RH{IXtbD$ENphbSFF@mPvNX9gP-lv<9 zmxkNaZoRic{5O5*6+9xEMMy&;-M0n^osgd5;eIF;fG;GF@Pd0tR3}eU{=8sa_nLm0 zFqvuE7##6WJ`wsrtO|uLqR(t9gL{BH2ooVt>a5O{em8!|x2mfnIPkYUd`%i!E`24P zNaMPHT5EN;QI=0SE@GbldDNxk?iCY4J14Ry(*J7dKk+=j*jRpD6Pg?eI|xR4Ct4z- z%wz&N9`5+~g^!rqcK_k~vJcs&pYwbZ7a^8&O|{ub0EJ-#*ulGe>PMshnjQ5B(RwTTi=VmY!qwDkaEiMBEobtm z#}7c(9V3E3sV8W{+aE%D5Ct>f6Bwo6@jx8XPVUdhOU>E) zV+&1Z*=0Hh%F|RRil?`){PX3<&pGRiSH^cmWevMY0t`~#&^q7;j7+5|Z^9cZLK6#>BT}Q7I6X~$Avb&f> zixf=r63?$O7|>?k`nHZt8DHSk7PV?9Pw?xUZa0Pjp-}Xd&p-UZxazTCAx(oKYtOYV z9qX%LLpLsPOCFj-uq44T&3c>f7l@Y3e4GuArXpUi6j9=ZmP?M&@?T$oE>^c;YfQHK z?<}4*VXN+kR%K+oPBQoyOb%gR=jLR?n*B^6;JTaggdgwTwdMt1^)g`qV=geB4PQ2s z6c``(pSG+BDM#gwG;x67|Nil*yPO%}zAwflYtd=uw^8%VuwTvx5XMB~oNU8bOy;cE zvI^ZWnP@YTa#$&pBL`V3lz%57A`5{Akrmd&g0G{J>V_0yhY)-25G9v@C4)p?AWN_w z`P$ChcJGq{;K&jYEaz`#GeF@!nEU#)WsEs;LOZx`Dsb@Tj-zhciiY>m|8D%)?l!D+ zS1o+|SK_b-&^sR{T=f;q!7x;LYVofbnYP#X$=c&ktGC}6dfS*m{L-myN0s+w+slp^ z=AOt38&n^W^^A(qSYOHk`?_U>rdsR66T`Os-3S!G5a}BHyYldN!XL)o*{}|p-OZk$ zW-yU$j)EY&1+qjOB4#8@*j~_&J-!_F)X}!6L?42HrKcU-er-LO*k)33VgQl^Z0%@B z{HpEae(<6+l}^g*8QDKU%evw<^Lbu8kr|9TB)JSzF)=j3scy*BAl!oBlq}Xjau&X* zD;xt{v@DcV3!vCnLkOs}MJLUl4h9KHS^DWPHk7;S{Vm9Wu9yX-Lwhu{%l&ymuJdP^ zcRTfwis@_`wC?EaN4MR%eFFtfVoz(o7EO+~=@gFDx?eg_XR%2bNdg}07N}t}5t)}J zld5Mn*|hyj1+`m<`5ee5fh;hW=02 z%JnxQ9!=LT!KpDF+LC}48s6s1KRP3OXgD_v9lU38JsWa47z?uA%Hsq2OBV-jJXeho87B|NSmdo@ zat||Ao;UHE{n|0xBZr%Aqm3n*bXWlNVG|f$hwmB z(U}a`Y|zBIQGdj;zESJSA0l8CoRn&=)(O0vCwWEtzxElN7vo}~D}^|vl;92KRRbyTe_T(|LXkT#RtQ5l`8Kvw(8F!P z^$w;%xiQN)AhyuDRgT6aDZp$qPMJz5l8U0P&~x@EMn@)~0UV5`A)Wd-30leZPTG%M&zUS{q)=%cw)@Eh=8SZw z&y%gT`zu?t*`4mU%jrlpelp9H$So@F&h~5#Vnbf(M;Q{S8C%sxy+U}Z_{Uw_A2{k~ zeG{^%={=OzlkeGIujil8TZ?o_@X4qKqDiOTJAAT5MmkSKW_a7~C{esqBzBr8xuEGI z>wIMb!OcAc>L)Kk6C`nd)aQ!z8Fa2iMc!4W4ZBlK(Oi8oQ4?wYq-UK!sZTvyC_16F zWEYdyw#rYWFvW8Fb$VJHvV9l3VeZ(oRb$H8oVrCQXg`()FpL8k3hx3Ulm}}8H1{$d z-{~SGOu5_E29xl^jx`PDurL6%-`d6VhqgU_;*!dLwx30#AH6}Vs?A?ooS6o+1mWpH z@dlLU$_^J(mP6ICdwVO~uR9KOw((RzvS?13Hc&omjJXMRuW_O87CX@!^|l>X-seVWuXxU091pC_BcB9xMAwWD8HA_?x@;2{OVNFAM1!(MN$&=t@ z{KPSb zgy5l>)PYxV#P!xlwUMmFMdrhTGs9Le|17?kNbNJKlI(pOYyhlGg-2z`7LV(Q$7`hQGM!JW((v-G(8z*iiKMVPb5}u+Q8j6`rd|l#)ws9& zVZvNd@laH5yIhh5a&5B3R+&wWnW0aUJ0Ai{sTnD12TNpQCR)r8e8;3rr6r=A3`rY* zAeZVxMg1MI_iwG-2eOjy1D&~E6_r1&hURNaJFrk|8g9AjM^#{H5H@GvMIQ8yO;lL; zeC%LE@Rl(g;Jq=-ue)iuhvgDqqcBj$#Cvd3+xa~Qx~M-lSr|Z!>PWL zvuvw4!Z2SD?{pjbwV-p(3b&pzQA??eP32q;57{&x&4Rl%gt-}Vg7Y7jPiA#$H{Dj1 zia!ZSfEV3CnhcI(S`n8JOL|kP#->Q!FgHd+DRk>J8kavRWmRUC%lEG<&QVJdT#W}A}OzJ z(C+Q)a7jUsXA{`mp|8kHj%mq?J35=AL@aT$JS$F(_DsDC`++pC9Hy7tgF1U>%~cKD zxeJ%$QNDMAb~uT*rsZ0mlte7$JOlI)ewd=?n9YLO5!?Cr*2srrUg2V9#=HHBf4I%! zgN&9fM8qYO+a_lqlHQR<|6b;-vDYY>-6xN{wTkr%DH>q*>^UvBPHA}^m2`u;dU{+% zMGj_VrpG;rX~BbEYT?fnV;J68_faw|@9MNEDEh2`;(JPK(=@L2fS_a91C!b@?ofXD zDDb83NDU9x{IXT|s_}7d<}{EU&pP5rD>8?iHCYvDJa`eqq8^dvDvP03_1Bqx9In}z zXtTlIYZgmlo0Hd75Ze%?EENm*NLR z%^Ih+yP>)loV?0j0(6t~Zq~Gz2@z6qP{6mNAi9`869FY8TeVbIgY&pyRHP?sd<1?x zfFvBsdbmH!sub64#DGRFU8Y9%$=*@TD@F*MuTo+!965jp5=&DYf=={_m`c?Z%3c#< z9EXwO8Mi8dHdWCfyEQAQ6nncud5L3!t7@zNA{)j5gWPL%q>YGD{LQOL_uuC(=XB+1!)o}2K}&1lIzWp}EEUHh&Ms=* zcm%42q+6(B`Q;ele#RzcFc}}?MHKMcb=FMYkJ-718RC->9`q$k2uo+wvO&CYh$XI# z6y$8yvSz_QDz>?P?FMP3YW-hM%GGDEl?}Dwj@5*kFbcK=AMQzq-1#`WP#)S^$`drs z!)^lmP)X9D;~|i(4v;`g;0)|^`+M)eQ@Eu%eT)@Tz1z3-90Y0DR#~`!?KB%3R(oqS z4x12%IeRE0s9|yC{9z9JlOcl1LEZ?+M*M-&m)M~^z-By8qYd~Ybm@Mlsm{(4;xbY; z3~4oW`{!1mdTN7TP^bXq7)c;A?ijlw1FZq%Vw~Ci3teRRMojQO`p}fy-T5QqtqkNc zrh2iR*Yvp*eaB2#+PWzYI(m+&3j%pBZFAO+vSezA5X$YIkmaNHK2O7aZAyXBl{^_w z2(nZ>n)q`?aCnJgXP9@d5wipol%=jw3N?2tHSwNjj!6JX^4O*zSFR=ffX@xnrd)$? z;Kci>tF?gKpR&L8zFV@+oJzDw4Ly^DWIYtL_L4;X!^1+<%wGZ|B)&u+JHGexg10c{ zveWO|G=&kPlDO;xq3#4f%Brz@_&)gRUg?{ojdtiGSfXm7VVc zky7X^!pIWC)*f`cJ;hEbx40xs1D;cdxFodYKGm=MW!Th|#V`5;7m~Cu`M~2) z79>g}4%6uYI&L&taq)r33<}FlF)?4i|A`pgXCA4b%o)tMH3!UwIGQ}0q78_yx}#~p zo<%QP-)^NjCe=1j<%Jyn$S8%Nx|Uyv$;6Uc)xSz@6^;F?$$nnc7b?j&!BL$$}!ZhRBDvI21MmrebMFbgn4I2EIT~v=Ji)82H|G+nqM&EGh)R{e6(h_wy~uYJm}e>)q-v+JLs(Z3&%Vw5(nP2 zRJY6++Kw30^5Lj-!*g3~Aumxq*{gee;Tr!Bi&X^6n`ct_fXPrM_$0pa$+}t3pDpr< zYdF}3`})}ny4+H(^*HQB&y7*f32XhI`WT;Blvx|Rm;lTo3WRI|Z43bIj89+V<#Vq) zc#VJsT%$YuXE^uBBr?dDpZ$~JUqDUX9sd8+HtheQZCKdY|965nk4569n9J@n^&6#h zifGxbaDz^A+ZC;y4O?i^LDxbshHtV=xy)gU=SV*vW&^dhRdE_&^|~gFCk!v8NWh_0c&MaAEcGwUolL* zs`e1tuO_ouRjZn(2R8nrXQ_tc5=yw%pPlLVI-7_K`-e_tIq=H(;f#bSsms;!$HjK* z9X7p~cT3uIZPn4P9hN`eAre5p=AWNH=-9JA#Z)dn8#Np@?9XuGx$vb2FL9yZCc*l{ zYP~PeH8x~rQEK10=!kqCT@(!p>C0OjP4)>Efa>`~g+y^7@5Id90vyv2fuLgnEki{t zjT}a?K^+>^pv03WyaWOYoz@TE^;<0Mz1~|(nch19F}(fD_WN~ItWtuz z?=SC<-zQGg^pI5mk()V5Jcj|aNx`RL?>4c#AM3^LGR9MBZaY_|Q>Jy@>bpcw_Cpwt6c5?fxzh4ar_BuI(ix(rmY#f)9j8*LY${8jpv2x5R{{nmo zc^g3qMgiN!DxLTQn?M8;7)y4xZ`cD%ma?oGC*UGsEMaj=GYQ5j^(%PaN89Pit4 zFRq~B7JK6^=2CW00#d0Iq*hmZ4Y{$nC869kK@{v+A9Fb9U?|7W8^*C$=A# z(u<}jt`U0f+3u}=6S)W_YR~p}0638&158)8GdAB@laVhO_@oiDfnOzMftP_fhn-b? zkK@7CCi&S9TsA(JVi=e0}~(9l%sf$mtxdKa;FdkM2n zsU=f3PoBI+f&uXoM24Zgz>BOe9#<5V5cX~?dL<(fK~fdjU}42$z*@O9s~&y^XWv@{ zJxgIL3MbjZtnw)0@3A(6h~_cpv%zn($Q!pv(M9=HMXe zd5)tu>jx#N`4O@)3%=Ln4BS(`g{@FC^sfbq|3KE!Qe^5n%~R7VgLW?GMkuSV1D?rV zEh`KSsj?h;LwtTFta8kgD?_CWQo*!DqF7_+c*6?zpC3J+Oe+7}Yx%n4e@8C<^uvF> zL1duY4+6zqP)$=O19}?c7q}xz^XTfAxd#_4W}sup0eTmJ;#IkGp3yP}kgarq(e(SG zAzaFy=~@YVhPx%hGf%(|EeC)`oOmHS((x3J;OGTp2@^zS9na#j#RFGV$Vk*(=_{E_ zv?VRuV3c+-IJPp3V>saj#}i2jMt#GzV?;Rs-5-6b$@B4@3kE&{<4elUNp9cdcKw9Y zxZGXIBVYr#pyh6j@xF0lRtcjW9~>w8K4MlvxXh8H7f8SZMo?ajX+Y81%MgIQ!DLr5 zmxc?9s@F9jj&Lu=lTz*j5!<9G$yXD8GPZ9(OiK>vw(XyWD&Vy4Y zjvl4a*0H(EFactQ#)S#KadR03fMH-PTIJ6RP}pmV&B>e*0LQO?LrnTBGm^3kt~CjZ zTAPA&4p#r25r48sHpiOCJ=CrHq#!}Ku&eyO-#Str=Yb57PDganoq1D%@uK1#m`fV4 zq0R1Nu}e*}uL6*o4>;^NNe7|8;r(UJ=kh;5Dqw`516Ai?r-=hW!=dPwiK7$o5r&YY zavpga8;^Jy_~-I(5ThsedvY?w%_-;e{gst6r>NjT;HX0;GhL4Vqd*lQX6E`yb(cgi zxUFs)vQLGROLm6Q9!FE3h!61D%obZ}jY%N>H)nemawBlgzj+}Yp({AFcn=UB0TS9; zVq@yp?twz`L|eJGfRqEd&lM*dYQv1DJtqdBKg~=k)9v6E8xXEv73M%5>sD7=0@5{+ zz&yFkDKv3xN-S-xlqrYVW+XkB!7L~(b+OYvENaf7ebs@3gLI?96F0Q9EJP5AkdVrd zO~oy(n2-uc`ZqMO7ZHeM|1sh0(3B>e<wfGMm} zVA6h0Jay1&s^_sxf&ySRDroDIUryc8o~dc&{%xFCXA5Jgq|tC*$!)|Ep9<^jEc^A% zx6EScN3hqcK!9yPl76lZTI6%U(4WDc6xmQEvIl||gc_5uFcAMT4{COkM@8ksk>Tgh z+mW5mW&ocPUu)QiMGwFu->b7ZfXK+xg8mM7w2mryZ{d|om9XrokiV=;J!@MX0nfZg zt(sLk3Gzm~Bh5vuX?NPDlmY@Nro2@8mMyyfG6D^~|6>`@1V1Sc5b%7r*s7GG`zUD# z1RTM_0wTv#DYVSy^a73Yp>WWFVHr?aUM?9CvVy6j$YAQZW@BVy9MT7mapQ&Z;gYq=KCdn30Sd z%d%>8gt|jFn$`RMJ9Mvb87I^#BjC?e3tfy2lbaLIKy`z8s~i^u%2i>42U_ZOnC$i^ z_P$8kt(8?*Cj3noIDg4=?5v5So&8FAy)sFhMy|8m3RQ3jL&8Rz>Nwq9WlXwUUK5Bo zl{rnjbst@JM2ko`XW?cAUB;{DFS!SMa^XHD5B%a?&LXV;rMFA5h(+O~{Vmz7>n)oW z&Ih5y;paigeX6t1rAp+lRcbGxHqOQ}&}P&rOqwIn4mgWe9n`!#JTpZCN}KGY+rr;G zggPj%DAG(T&7i&j4tPtB;be|9acaRP%TU#?M7WB6Wi-s}8$^O<8C@L!^nDBEI5%D~ z9to7?^_lxndfUX~(+b^N_EPx7Z)N?Hu<+Gf$za2>lIE~ej?aqJTGbFb>R#`9@!d%? z;6R)NRcb~1fr!kC9dy}I0hThl4LG8FLDH<&&d-{=jG}CT5VTGExRsp%@gii2A4V8)<50QIs|0qf`{pY1T!mv;oEiJCFPN`KU_#Q%ykgmBo3)_ zBOMH^{tt--a5dB)-hzrbi4iKV77Z!^sA*GwD_l~w{a@mbiczo1LO7^QUKnNq?&#V9 z7B4PPGmJw+uV5#xpf*WhvSKdlExN}@*seq3eWmGGZ-)Ad(q>4+HrIZaz-n}qWzlZ} zi>v!<><~R&A^If&pE(l^!qjf%5Fw=vGY@jd9DiGol04P;F zAeK&CvB+>`_*DZsDN`hge4fP0lHAX7R$=%OgbJCa#DIWHKT%XZ2!;c3#aKiRe^3dP z6LWUmvs*}(lw2-j!aT=I(G03mo|PQHqP+VG!M}698Sg7NbYO z7ZjG_Wcpj$C7H^Vgb{j}I%G-YT_^zk@iNIkfm`1|D0@u(0?C*EMq?ZieH z;LsZW0Z7}xALzuNxnrDoAglbVXU>8ZcPcngHUYt{o=5h8Vr-Yy?%7GB)mR*!zP$k4 zy6km&hBGIZeSjeKf9$-3A82H%!)~xP$x@-Czng3zJwY)WE$_UWEyBtYep#dE@PPHu zLw27Bak*mawFV8jv5DV?WFCxbF-w$jdWoo(#}S;}Iwj>@`eX$!*XY#x*xA~19bDh` zf+@NPZfE(_58`@?B(OCtf7=WPW_>pp@Ald`|mS3K*AQ-lUEB+*=LDUfO2D+4jm;6?5Slpawg|L~HW=rrWRJbEJ@l!A)sC7@sR z8uW_lz7U8>%@2^+#j|D!gsQ%spYde>3R+xEhKpn_R3yw3nu(YtVUg#YCRoxA_4 zp=sIwZhqrt3#adH(yO=Vd0V(XLbnnk|9)3#+Kq321bSw_*U&5K^E<{c<&%LC@?^S; zOWAzQ^dNnAYz$@|?2o)=&0XlP&_>+p8Z|8?`}L|q=Fwd4Y_0jWgm@@DdUdYRURVac zt#Oy=ox|vMIk|ih+ov``zRlXN+!$#lh27zbgaK%=1tholQc-mC2Cx>Zg<~1b@FV;C zMMvU%@5NnfH=tZ<~)pjqj zZs#3TV`j`~|5k&k?=zw6dAO<$ZACjI>9cO&vZoS#PDZYpS*9 z7d+>?A)(|FJrXX#RsW+_uj#IJ8A=43H(_ANIJM!%3-aric_-fHiPskwIj??w{t%JI zGm)ZB5K^^;;g3C;EKx*v4i?J!URA0(L#t8c-5gSP+~HqcX~ zAB?1)}{>xL$lTN9)mx=@F;K7ta|DEQ1I%h-J0$A>TctFyS<&< z9E9a_=-q9Ly{0~b*h+~)s=N|qX?6eJKhbe7BTiT@Ci(pg-QK@G>_)$O?CB63K%D-P z9^ygS{4Ahyb!8t7JG-9*xgM_}Zn!*+XVqQeBD2h)x$F$P>O75qMnL4{S?#DHYN$Mo zcSc6s_DZihuHi{~FZse9xpigVJUmhOccUnXNZZn#D5A2=`|EV}W<9xGtD^W8+YbJ_ z3de&}nf)oJ*FNj(&Di+$h|)L`&)5$vX@-0OvTi+DKyzFRv9X6-M72_k)#3oG#gQ&vq9lkPb6C;075C-3yFv8Uf zbYPGBZ)X|6te?W)MyIbyC0dMJZa#oMQpHsZ_5RaY`fhvOvjqBs`-2$Cs!q?x61jP3 z8~mbLx`fvjW}~<~Yzq#)pAV8;k!k3vb`#+isP_?#kB?1-gCX|+7(0g`%c3pX-kY{< zyVAC8RNAPtZQHhO+jdrErES~JUq61ti{E&S7jYV=aoRi1Tx;$z=9dgM*$*pur&0Jc zmlR%)!u<>Zm*i^ z()F@s_d=undh$}Rw}=RKB2fBVu7VUBi91?X_Ux#3e0k*al-9q z%(rIA7yJiDc2`z0D(>{`3Zb^!4muL{$K1AKf48#5K(r+Xe+!Yj`q}u;zB0#w`~3Ln z+vIy%V2HtJoQurKU}P{t`g5V;drkW$x?0Ck*wBUqWn1<(c}EXuCyv^hTh_L-iKhaO zYqSC`8$)7QP9-3o$v@4A4%dplH@GSbjv0IxP^wmaN~c0T@bCgI%OYKje=&9|T#5lw zv4qLkf|EP4e?H|dZ5t7fNktPvl8A`Lr!&qPv;jGI|0>HCW@2IBo;8(DLj%3M=Uoc3 z5vv$<=yQ_Jjvzf54VB&s24|Au=xgQ{{Gw88%YKM4U$p$g{NsKq?feb_wNyn2Tf^GR z42%@TSISiIm}M4g5ZhmK_k~vv$GQ9BF;{vNJr((5e4RlH6BH@%G!?^vbkBdff`~hIjHYD}%9sp}5-zn9`^dN+aPjbJ zKh1F^p|%0aOYMr4geZqMdhFQHCuakaO>NWVz0-sXlK2Qh0|JS7VD)d)P$?UpmH>y6 zWq@=917NbEL}PSI!5svl_jCIj~F=7q!7H^&Z%#NQ$suh*y)|m1|?Zv_u@ zF%!w?*-hJ`Lb$#U+V;29RV54YNrPfVGs%_VT$N5gmir|SILGt1K@@f}_>da!wm9b; z#=bVXK^y!DLu*)h&-kz0A7b7(zF6?D+8Tf9JW6bVp~?Ea&dvq?ei$lbfcCQ35ejM{u`>Mk7yh08$Iohn15av089$meL7co2gno;{o$+ANebDFyYR4WJo{B1&cKa9WL|?w4d2cqS0!r#T%px|1Ng9ZO8k&@pOm$q z_H&I+sHR4m%!6;1+@egia_2N;@YEKC*b1E4@w)dl>lYS~?vo&{;pCt8R1D$7m(2=I zq3|FcIqaU{2hvR)FS|23@)8_Q=x~-XKSMF`WPq)vaEhq@QF3ME3X%}BGPhOa#kmWN8VspBky8QW{jtBtm!u>)o5J^}JwLRKlET#&MS+h_Dw5?W(t#PI;vf4h z&A-eubW2Sab+}9L(uuHVJVR+ph|*K93@$_l&FCgP$5|amZ?yH(ZSyZqGePkn`|%jK z&SMx!poBF0zk<)d9>d>}e(_ZO4nss_C#A3#g+4`p+t+YUFflib6Y1co-Jy12X5RrP zzX>Fr7HvjMnCn;O)i7eDf&K=kpxB{H1u$bhQWT=Piv!eW3&D2QKc9S6yy+3+2nHmv zYXNj-zn}ytoFT6Z>6zPf1EID|!NNpKcwI%wVwi*|p*%K>Wj`U4Tl2u(Gl#{&JL=>1 zH-x3>Y@&HjvF_lGSP*`SYRVD?=PE~8oLCI#2!4h4zwWTmxdZrj9P?#@_+6s-V`eeF zRS32e3KT$pL*bc=9*RsBfMo;4rC8GMDMAdiKEzy5>x!VyP3q$}9(vK#JdzSaPz8-H zIR}#DIqa=jXsO9xJdkKn>Z(M^(&Wq%v6$+EyhCFkOay1*W7;w*C+mbZC7w|cBZAT* znj>)K${(qkU);gQD_IY&dWUylh&S5F2nB8#tQ|Nkpx`!gaei-+V_lw zF%X(La=}W1;5iPr3mu>&87ZEiel>mn?!WVF?54t%MNxW_%&a26(IovsYhw80amZ_E z6Ht#gwX*Y<6hj}h*UVd}tdYWA4F<3#IH4LqUhX^tMGELK7V;*V9@fNUR2;v5(hx9= zBi#g^s<5Mm3EMCWngq>Q)u#RNN3=<$2%?)|)zrFw)@HnRX2-}?pE9~Te0Y%*_Z*ZgmeZV&daoB8As4b46R?NOg&lEvA*va?|y)|P)mZZM8RUF0a{H9e)&9|>- z0SjP8{bLx;j9HC3L3!{CnW0;Ew*CQDe*De)sSS*nPQUFiB>9qwZcl_cgcg%4Qz!-d zp1oRpU9v8GQIH{}QX&Gv9?=nwEp^E!r`nt;6`skCF7%M*fsLBRf5Uz3sBO4nGBavH za6e&#rqb=EnG>J@P-R3HNtPslBlo6K(2+E#pTTKF{xdnG$!zmmmcu^X^^$eSQrk=1 zog&l7&0V~7(uOyP2$Wuqwy-I~QhN;4KUUlh^`_r3t2yd=O1BqSXH!gzb}F{2BWiLf z77X#{Jjg5f6O-KEsbdnqF~jjD9*l~Br!c`J`|LGS%a2KIhAQe&re7Y}c-bm)ve-^3 zuxn3tJ(<$m^N=H}>cce<^k%SiE8a`*Rqmyy{As(GCLb?RBPD}~pQ8=)i@jo89m;5% z@;ZG7=v}qJCjqV)`=cJw!7WXTB!UBP^&SnzMT3g&Tvb>I801=>8oR*xnm^hhT;!d1 zeHE$NouolSKxN-pL!!J>0q$cD07#=Q{x)11_S8t@ewb}2*q+>T#E1e3QoHb|9Y_Vz zCZ6!>!%Q+#YdXTnkDrek%0P26iEhR>`JK}sgD4f&$-Dc~F;mqJZ8Y-t@~FO^+1~?B zZ)ac{>&B=~V~2M#Y_jw6-etgD75>$PXuf4r;>iT@hO!!)&|JOIQPju3GbTx>g2^0e zPnaMLBTigl!ME*lZrKSQ+eh}#EFmr@oI6Mot$erC-;d_b_a}AXr$&$=oM#+f`VTF_ z_GbSeS%{nM){aJ2%42M4gvJi zUZLhvRH8TxGHt?Ab8I0EXI3Lf5h4#pq}jOt&NWtq;g2t5K$1JE>h55a`Z41Uim(NT zu#(cEvPNx}srM{u+I%esT2BRm`?fF31~boU3t`2cc;V*Fx;5Y6F3&bJW)Qza>Af=D zC}?ZQf~_zFC@hZ4tLGK6gP>Ekqn?e0<+LM=8?jZBEicZLHK}(Nm~)0O{4O}8bmg8M z$>E?gqM<1=#oZ6Ul7KJG@B5w8_ZuTiA=!>UV*@ml0S&kkS^g&?8P5SMH^3aE-#lX; zxob7ol>_@vz-{ly5TfVhTSgm8rzVk|3*8wmD;iJC?*Uz{@ZM=NIVA(M!mwK4Y$YS} z(IX5I_lV6(yBx4jrLOX>mr3R&XM3NP)atoN1nX27l^1tyBKil+2=U~I3Lc)zMy3K` z#mCSGXr@wwlR%qI_Syv{tWfvrp^U7C8BYA){&1oKrJsV$0Yj(YnXsHNgMkFqlYjT+ z{zm`G3eaGE$gzC&)HRCIOfuz4&b)Y^bSo?10U!FoF8e~-AnkGs>^(9B?hMVc<$1k% zY#sy3I9N1N&aFVJtVZgQzS4JwxEd%bDcDU2x313(L9-O3c=rpf6JybiAj2%0sDH=V zZ97k1RAX86F(txgBw{+{NJA&G~SHko&8xuat z_qH=lSyQ!Loz&6_IuA#SxA5GE`Pt7hEBO=6#EQ=ou}?xOr<7#uzHCaCJVycpI-ela zh#1?6diV?+JGVP2*Ri?At{2HqRx>x*3>IAdy!m!CrzqveF_W1%Wv||pxLhEiB;rJ zL{nYo7#r&8uvX6wtz>6#EmTtL&=^Mo(huf&*>$-I15#7oW5V|#jeASCtm-TjKh{g~ zi=0BFpVIpM(;OP`E9yvMZC4YP`f6gAffK%MPy5;8ofDdwB(+VY`xJE>N$>|%m(Nc# zy|vTOMV7^+Lq%ezYs!)E}0 zMQFAFg4H@7$)J+_FPgH&G<34&#rz);rNKseehQiG4Gl@719)1mta0wsA#05fntRr0Ek8-z{eFqwUd%-lv{)al_1`!v0aR6I?S#Xk>Fr z$hAm+klrBjI&MfTX6>d;7@B{Zoi~rCv4a~rh5@8xvn7fSR`R=M$Gd%%Ity=WUVx>kx+PpQwz;&d3smm-j!K z3l1Kpv0{qEqZoL_<3PPj(m`Ul`@pHIGpZ^JiBc6i@0 z{=Kz|Ia2a7dG;6BW!MXqqnnwlD?wkz=FY?;n1ZkGUD~oj?ibm~FcE1*c6V>4WGrJA zRZ&8|$(<*Y2aAskc*f_`n;m1~qqya82?UMp^pyIy``g_}+<$0K5uo3*Y(uUqsCXvs zZ>WY~<=E66Irg&^f)K&nzhE?8ENnVDbunySy?g00&0Oir)4$FSJAHiov~yqcR{-kFzOt@KBihq{YfI!TZ2>DOh_ z@kQVG7k@WpV+qEhn1oA<{X?25D;#r(@u6D7L@}IKT2#GK2eR1!NqfNVXF4sW=Gt7$ z;@BVe=6fYYd%aTs9z~F4Wyx*o(MO#Jo7`h1PR+b|#u5oavuB`<%}(iXi%AlC*eBZ zmE5C`C6nPVizX6YS+4U|(nEieQ%Q|7fs9bXQ5|e8sx44iPS@UU#yh|4-du?B)2_z+ zDxl7})(X?)TyCa!Zqc1vhoQ*X-51K+e^gX()YAGRxyTw1%nr^uUu0(xjKDO zY1mj}AUj9v=>M#w7WmpBBph6oe@`NOxh3jT$fCJ$)_4I1pju&_omu^Coa3aujwp52 zt({uSL|y6RAb%uMS<`+vYORK4Tr-!ty+$UduY_nF`0=aDw({KNffN@rOhMljY>q|h z>iL({*7l)a1SJYK_@9wdztDuerDHA7rT3#&mh^mWLcOE~No!4#no&QK<&~C28K4b!t?6bI1h~X#g@gNJTR8*4v^0 zVwaz&>LmJLW-06Js0K`EI2NM~O70_5?j%v@45+(hKstdr8YS;_?2Sn<(ZFzgnMyl+ zMpy<5#FD=h_dPu$B0<+yEg)f9G|TElYMT6)=L?4KBTE6)N6U835sQ z6-%J-6quk)CM!hxJDAQ*3Lj=5NXaK3e*`Vs4ErweCP4G$aio7F8mem?>eDj47e7tb zltk3T>XR|o-C0$ybSd{I6uunO6uFy?a%LWbul=hGoi39i5(tUAd!Hzg?GY7meN z`+1z*Z~1S2wBxwVUv?dGVNA^HDI^eFwR3B^lgR6y9ts{n!O12`z0Y?sqCK51qUNLl z**-D??28qJYH^4vRrQUI{}KFdMD~O<6aNR4NgSr%!2!!Oyrh}^+U(c>?t022%IrA1 z>a=PemZB&M_I%Irc#rvdPswDKh+HbM@s({KgD(s-?)ewF<#FGTtJgZ4??=MW^4fZx$&?yh_(TSe0ri$%F=9k`eO@5z@ zO?E5PU__GpQ`|?Q8meMhzr4y)8H$1{oxhiCnL&`pi_Rp|ub?03z)UpseAL+v%e_$uu-{Yf@YS&H3~*)DF019K_;#`S z6A}7dN{P=QO<*+gt&2w12)%%N_69`C{&}Ut3ZNi_2%H+pnN+mw3RHQos=smyZPyT{ zU&eVL*gC{B%bF)iKZNvx??1)@c~XejF(;bIMQ;mx!KCWWZ8~hLjJOEai{S7?@{#C> zmte1yviGOS~wrGz+?b-iB67mwcESFm}{qa zzU>pERHTqY0LhACeI4U*tu2G{o2Q!JFJk$3*PPw;I`7Domhw z)hB{u>W^k@g+ikM7LkUG>50QpenKcsq}F+^?J)2?Jk)}O;5VL(`f)qJB@HGcSS873 zP$L!Y0c0^YJ}QKz7YG(th7!S_>H^8}fowCLyfir#pG>8F6jawmn-fteDvijpkAUvNV4pYhzXBvLF2IdsaE{CH@Xn!7?0uD$Dk3Q8`ULUrqVhf4coShWIlsk?$sT+CS5sNx>0lT8NI8WUW8q6$0D ztJV&r#f0@N=?(&rpf+3T9D$1MQ0!|cg;0^%(gL+xfV*Uy9tkIw+ zK+*(@EGUIzn^v)fEQNB%6L#Ww=WtemdE$BcJ#sLD1>!TQp>o%nKf&o$B&ycPQq^VO z5S7MQqey}Q+$DF!>a|y#p!tvtvSraiShg%7Xs5vvf>=ajt|1N>^(&O@N06U~06>0_ z+^IbFoefJxJ{F!l*Ps}%pUiWd0!vO8lSSjQ=i8#kL}e^cA8}fJ?a5n^_;Bop0aXFu zGVC7UrzaD0yXhBQc5~>t01?g%HI;0iGowB{{)xn~B5c%I!}W6s3o6{Zo((1}dX^KR-Yi7BxlH)t8jPC%VQXW(}Tsn&BdQoJs;Owvlbx-|;<}0q8Z>8bj zfdkNDGbBHE2!~7uPXhKprvgM_ulVZwNxMk;`=iIPF6$`@LCl069xCXze}Ll+xV0Y( z9Y;iX*C#Q4#8JzbD5rXlr;_9O1vP>V6^^%2$ykGJtC5R^VjBopIPfTslAYtAq2fLJ zSC8l1F^am5A*qE*I!3?gK4phrT)8f;qT>#}8I$&wdd4!y z?o)yvA|?`qM=)SV(~1x5Zz2*yrpopWu?#QNHRHz7b^?4RmH$&TStHl(`|U zh{*0;{R7YF@Ty&V4*(RgXA{l3VB`KF|qLV=#V>&q0Z@oSVF3}B1ysTicAV)vm13NALTu$z|m z)NDMuX!J7(2xN3S3=Q!=pF2H=$g7v|=tU21fN@!B$1faKK3GBLee#j*B`Jpy1?B>H zEU?cCxHD0jO2Hfhse$xiTVg)M)gE-%04F!zpQuD z3Gf-idwN0fAyo_up1v^QpZoN@bJN;t!0W9&A#d{^;@&aAF4pOdvR}nJ{DMT6yy$ z9hNu8nx65=zXPD_Comh^K@GA?LiyK539||%a<)5%DIGa%w@>t2Lcgg#y;K@ z{Sue7BuqqJKnEaqQia)ihJvX^<@#vPhG)~1D2JaFi?CtbdtiEY!n-R zv)(&G360Y%3+TY_nW5FX;z2#^m$w=u=y}m8HoS*{7rUp0j`%Cw&2=AB=`S~eZwc&C zHd=@#&28ZHaZ?ljs_fcK6pl}uNFrnrj_*ssUTU>L(Huf`x?_4Bu{|*OUf&K602XW9 z7p53DHrLB49bA1u`qRmxoaWUNgRYdDbWupAt(u2BtT@CRPCu6~KU@W(=4=f5*1@5g z!`jlk%8;m7?v3QX%;FL?@^P_@=Yr0`3|WtNTPnSGFG`OCWZsC3<@BD85Lr#eMZ@QE z=Y+0Ga&lgSh}?C0xBylAItxD|t%Wc}NN-S<23vUJ+Pxu)bk8=B_q$o$?K`3Y@v*Bv z$7)rZ+>*!O{(qUlwWzj(InHJ{^so2^7yyb|rwU_Z*ugC`-nYe` z1!6A96l_viibbtGluFHdz{2oUUEy8DyR<@(YEdH@^aNfR^7;@`|69ssW&Cd`mx=X% zPPr{Ox=tIdx0`)?xj2?a17y8WYqnBpuA?HiMELlT-SNEZj%D9Hum%I5 z^6fko^7_T39V^!(^cY!nw(75EX}|osJfHS{38|x3kfl^rWu+XD{iKP)nY zbp|$yqufWLbvUDpJ;ZO6Z^rqiZ^l`$==^4W-{=~{_@2WB%f5OyFFO%YRTBpKT#`L5r`tKHL7zoVUaGoEvSnGut}@4ApQ z#Q!iJ#u7Ju6^gtajni&D;K%;srqu>>(5zEv@T8`S++hnNr!lvxuAh9=k5e(J-?mMR+SiR21-+iSx z9Pc1W5qyR+4-mM**{{QW4j$EdFB>7zem*L-<#G0*WDxNnwB<+1;0d#D%`Eah*x}g-~~IqjpOI$Cbo?Je(xbak>~q*rEx#vPAU7wa@Xh^R<|?> z9ZTE4Tfqeso2O>2@}LSFMfyy35N$Rqsw74}LiE&FM<^1Snv+Y9aC2K?z;F9sMfsDp zR+xxUXg{T@WluWFrIj(nWF^a<=R-I$RR%@7M@JnKbZz3ppa<>sc-btBX|R+GDxu~u zO@4wSP(rnAiMxkvE#>Yj!jLQiqip*CPPuzhKqmVAkT~b=c;HVahI<)w-ZZFj~koldN9pMUf+)_v4>`k3!+|pi>VXuuz);Ku7dCO_<8g zu}+&FTRG)&o`YF(79UvL>0A5Y6vg@B^7p?Nf{v8nF=^=r2QrL-18a3VnlJXl*|Afn zH`?#$0{<>hKyBkOgQ#vQ%#+sjr&YO6xJmlm)(3(85YmwT^j*26IH2Z5R?IJu&ik$G z0qq!7NI;}%2$CV)&^}l!F}%wZR%%VtVC@LuPsS(`nO-emAbx5a){w*DcEw`LnB-O2 zH7lfheT2$grUQHgjWiRP5PK34W+1LpmF6recen8s7le_@_{*#Z=2BAca)@@!Ch7gC z%$#Ae($Q?O{du*O<4g^qt&1>=qO@)Vo&*U?6!1fA?masaZ8kgHsKQ~C#qmxU>1S?& zlg-mv?WeP$O83+m#oz@ zjAGVmrpV-+&!CG${?>s;T{Qd`6xu-!a|Q#}upD@njHqCqS!Bv!BvMU-p<^II@kOJ7 z6t}`$K9FVOL`9X!h_fi0ii?UoaN;`$U4@!nP%#!$#_sSP3_~iir^BZm69~8%_t;_e z$Q2bnHTDUGMX;qZdS%SXD*Rl)u%2xAP|W(o_B7Cf>TU)vgy+#9>$jdpgV-(nU?m2w zYbfDk#TtA(MI6xV(8W(NJG|NC7d9FW%Z=0VWtlCsGJyvqD=RA@8;Z8!jdy;-TV%6_XCqkmW~Vjm@FRx620=n%uRxstqP z>y?EMs?-3<2y8IuzcnqXjg+jJ8h2j!J@CSQL(YI}%(oyeS)0ph75S>xPaCb16F6TWjuYA$ z2PK&O{WFpZs?Yo%%%yYAwlpUj#v3}S0LM8@mygXjswb)i_HB)CEwyH`QhbhSObYx% z@@f!Un(_wMDVYAxc7x$#r-K}wkl52`?qqHkq*MP3W7qcjaMz#IMvRuzm%#D*ZLJ01 z=mBuk_qDAmb}wap(`A{RK?$tfoG=neu+JSR9j`dFZN~sM^N@`4=|5=O_(O))Ki75h z1Nf6v#?R$@I;yw#Z-KmCFI>KU$qOj=f^(nR^!mJJ{LXonXSY9JudNy1Aab9Lykm5F zbX;?c@#vQP3B&qr0ateDW(6aX**i_ivBchn9F833E?!>beL(5;ns0>80|XeWmsIr& z;3?((F3*la-_L{hmCsu8E8)m4+89Dz`l?2z{Kj~G$stCiT9+1oi*z4Ent~;Hr>^{qu1IW1VZ+)DeoH$#tH9KB; zo__~p4OIF}oAEnz_U>U~BBJtP7SVm_eOf%2G`fB%{pop>T+PsYy1$#q_GX#0Lj)Dc zpv`s3ho4ePpek2X1-IM}j*fR=Ku{oe80e7@OG4S1Q}Sb(UCEGN9Q%y<(L(1k3ln6U4CU5U>re1k< zhzgsz5w;h0+C{*y^SQ>g6R&6CZ*RMLf~YejX6I<(8*G_sIk(MreROo?__jYRI%WW* zN`thf2BSDI1{-!^hfN zY5~m~7V3qqFbFb!8a%PzZ8Q%Cxr!&qXpB2(6bP`@C?Z!NU}U46nS=6hz$;@L-|d4p zPqN?w%)0X@H*y*>)ENmspnrepU8T;5u(Y2-yl{7L{JJ4dc5;fc745bK6bu5v{4SAb zYna_cQ;d1pa`FpL!Jz7#Kw*UAyHSw0jHOklG9#1gFGH+yz1a7vVzBduR$-pau+I!= z3djw-MbYxsJ@z4C@!$n`FyLarISZvw-F9~#=HE^fo->J^oRDc>?y<$}4M)NE*jhnl zePUIAG2DZbY3PkkezX$DlnBWYGkTyKB8>jon;;hZf!WL9LxLew4oPxDDYhq^dIXM4 zN6}5Vv$G2bvj@eac`sLxxBCslY=K?$;TQ@JL9LTv#IDgaZ3}i7d6N>rX{GctL*_xF z-mYCsOXKjUa98j-w`0layhuNraCWD%nS&f!Jnmjm$TICVQ$4}AJCLTxJf6XOK{|)%e&ip@%Rt~kb|83vUeg7|WY$~LN z>6pKHA7HZsMjZ%N-}WPtld&DeEiEQhRdVuN?)Uc=3uYqALioa{g(49{7YbV%%kf># zI-~Ap_57l`!k6dk!E0J}HFGjF$s-IjH&~u%DLX7ukP5nUNZ%G}YZuBOh+ z(jm6H_DUz*TpvnnwepLnb}=)YFQfdakJ6o6MnRBAv+J#^gD?$CM% z1$cLz`vp>oNkqPURGeKQ&!UiIidTpRIBbLK*f_=L@Ws0w*GLAD@uGZ11Fr7kGG#^f zGf{J^F9lvost5IR*ZepuLC_5Ot*cA$hy_Gc6Md(3qrKsV8=zn5auONdk<}B}u#8L? z!*qT2L+urm(}_k(%s7LNd-Wh6V1ipX!*02sHG_v9GTazwBy;zq^`8e}5k#)9N?88cu_W(V?tE$)bv zr!}D$+D=D+KvA8G``IPnkSeUDFAia0LCS&<*p@a_384h!=f{q6q`l8ai%lw`_lns{rrK@>*T*32wvzL8QlT0q2{gO;iHsk zK_WBu?OxCwP`mR-JZ~bpmjoAOUzACuNVSRLVh`0OL-(W?0aCz#l*~2IUuBt3jBm+)PCa8DD01nMdJiOz3 z0ods&&&D$dq~kP(9XC2Bzt;iqXcywI5Q!MfZ|B@*uO>vhT3m>S4W zFT$UCqn*Pc*-HV(u|S*IN!x#H2e_Tly5E?W&#%^%@YfhjP}pV8qaE)U`kY*Z(GDST z%%iRFpHM!=brNAx%ftV3J}Q|?sxqk-9icMgF9o7PA05?@UUbsZ$k>0E(?r&kWRdG$ zhU&U_a2-dx*r2f>+uo&3|B zWkm^ctYR6;okBZALCPR!Th62lq81xD z+<^BIXiaHtq&+qqb%YiKT@j{lOExZ}i>d$NvbK%`P(HUE&dyA)4U&BWcUli(hSl~7BXhG!m~Rn-pj*;Sl8O>N!;qT8tV6vYyow;63|mluGUE|J zTCk|!iFcm#=foe30S(|D8OCDGcoKS>w>P`=UHE3XnqNQfYzPupC$yF8cZr>tiEEH! zfkG<_$b9<#f`X{<#liAuhd2N^tskAjA|Aj2#h=6_{&P|#79IT%K5h@nRa&Vg5SVo% zwPp`+*vX=n8eeTPs1eyOPdYY?^2Q&mE>jw{lq4D|xTT(*M6PhLf)1)q($7{lfQFe7 zsaaWKiX56jpnPB$L4Bl6?b2nqWClGs5<)Eht+ zs4b!r#*`xJn1%~fE8>^SE;Z=a(6Url8T~W-05&S|#>J~T88OO9c*V+c@~8Kz>7^Su zj>3_UWpT!3a1WO@(T?Hx;=evv>G7D?-iTYpiH!ehj-%*4EAh_4f*|DP4!~mk5~H$L zZzj-S+M$)0H_^&<|2FoO@ncxvi%6I8f1*PF_5(4`Q}oIm^GZna{v=yayD!f=4SgX* zaycY93#Ezp)+j$`8FJ<5R#I??e#9b$-e1}(^`mmmZIm6+WN&Z`1^q`YM`%VGASL2= zwhA><#1TKxb!gib`gy-7j2VA$#e<<6L5rxnG>iVyVoAMIe3$)!_uHGd?b)^+ zAZ4>wsKpLyZnL@ldmNkY)VAQX0rchGnx-BM>)hZDj5Ok*P1`T%+boD(j#c)9>7mfF ziL}vj0-{$hO-fi?{^>aDq2F4Ro6BQ)ZT_(?x0Sw+SJ~RlBu4u=RC^`l_3?0TtkA(B zQT@Ee9aZY(-tCghoL|+Q6Wq8pUP;ey8|mYQQV~TEo$cn9JL|^sUitx;yfL!xL{)fM zbEW}$(96xYq->uj@r zzKPKC_{6?_dEvfk?uC3#;owsj6Z3CG)H0_tjB0fX93tnl6c3JqNK3!o%%smRM{q-e zvfjF$Tm+07WdaIqxqMo4Shb*Sslipd|3Z?t59mcN}XeT>Ak*d8leotKS>f(rIrSr{9CEZskf`{K z;unp^E&J*PrP1;G7j1%rT2T_dT=Jiu?0tG@x0YvG&EEh|?tX&-!fa6I?+^=MhwI+k z1y4_bi3jYJCrPAEr!G6qb{=UJjVinsj-oQDqt0+G`jKbfbhyQl2qA)sjVo1T4h105oUejtz# zGn@!*gC4Q;WTz0)XxBgeS&$Ax3>px@Y>zR}U`9TnATv*i&K@Qz2LY>nCaU~&z)cDg z=z~2>9{s4Mj!ybO1`l^$1-hI4OI}Bfq1EQJ5aPUcc%?3{D?3K2{;Us!ib=h;A>DBZ ztbbpPGfG05WHuWi4&gD-WMXIwt@KTOi!~evpa=l?$UINNWg8avM$wSLwrY0v(m;uN z@uuHRw**x6rfl@}9AmBV_{FRum>m(Jq%J*b`GxsSqn2!267K|jQ2U4?`=x;ysnHDb z`RcUaLBj+)aDp$0#4dB~^mnyB>C@vC5+$zGes1+9uk@91Camn}o2lxfuyUOQ_NTLQ zNPc3!k=FoqOO`dxGtzx5TH$mx{pg;Ky^XlZ) zyzlE~P6{hhJrcJzKY)*AFv6MN*MNC1GO)OR%H~;3RJu@Spd79G-MP&pTvB2i&cH_d zxX5t!sLhC|U*zNSdeCRbK!*F@k|zrj`~TPbRQ0eoC1Ox8vQ%-lfnks*Vq#>3VGy@) zbaMXp%E|ekVkk2U>;H_58`0Xf!{tEnebyfsJBJ-14m*HDLNmub@a)G&V)Z!D{T)W8 z2D=YZRd1UAyuHnFV2N8};$>=s)?eSgaN(GGKf@tVo{kERsWVK;Bi$0yNE%@yNi5?po%4ZHgw4*Tealk`nUO^xJpK>quw}^U&2=XO}9=pB#oJOo|c~hG7c_R?1SD-E|9NU*sT0= zVoBf!+Yt$Wvc%g_39x1{W-e=5ZauZ!pD!KpP7uzLXP?~|y{S^fdBKuLq_mMVZ7g#u zXU^!3ryghjL9W~5?$F}--Y2kR`?xtXW9HT3>GW;5UizV90p;Mq-He-8fC)$#psniduk(v2aB znMc`J$Ih`{I!tSzkKS+1(F3w$UowQwtHw5e#nU7v*~PGHTMrcc%P=!2*l)jBt;~5r zA45LnPHWng2AtYGU+dkXHjIWezQ`SkIjeum7jNP_DbQasyI)!CU$4>Iw&m~D973>t zd^@CV^X&R^Iv>TnF7^5RdVX9ygR~xeGxJ(*@8~JXxUqHedw1~Ruy@M(SbkeRf8MtH za-O-+Y=Vs7HoP-B^8Wn7h#P=cGVUu7I!2&*I5DbxJTWSYpq~rX1lNLF)#UZ2QF$5x zQBl%2_5?HaFS|RY;!!}1TucJ*PVVWjjpzmEo7JNtSlqw*3i{lAI-iL-4dS>xM0#P$ z27K@tvhQj^c+*td1Br8(r3G9+IdQ&r|X$CVBQ^JL7oXSF+R>@(JrGR6R{fQM)#*?tXyDh9P zyb&E9!5K&0Nu23Qa8|ramcKb_#v33jFC3SYj@3)}MU)n-U1h4kIs7<7_^jR6vAt)^B^UqUJVnKyaA>c}2=Q-hpj(TWXKc-Tzi4luUS&P{1@jyp z6V0Gw(xfJ|sqw@b7)mwnsC8%QsbqRIs5wstDoA!0Jv>hmBOGqBYZ8jKCa0?Nsvd(0 zPU8zT74lE`cE$g!q=-hT2P8GxCAwXv`Jjg8-aH3iJgambt2j$ZP<8&cK+B25Q+~+T zx;BR|;+=OOIOU8}%^l;p({~%^oZl=DHigE620;ml#L5AeC5UcY@e~IX@~1F12ip!f z$08|Ix-@(8p&%SWt!62GhC>~tS0Gr1|sPhS6hsr z?H&duZ@_#yTDXw3-TVX#sc>miQbmOcHVO$Wjj{?dFAMI*T!KQW$?Id)RYX(DU9gA-~jfw#H zp}ftoaqrPRVN6LYdRWjpOST?Ua5BlKIhZq=~8 z9Eb}e&{4SE!9mO-Tzaj&53aF6O)-PX>Y783g?_~wDGN^HLtA@}7NO)D86dpgkzMCY zqNv4>k=cc$iF3`>bdx68Yz}#8zgF-toy3F9;gsSX1V_mo1NU0O;0Dfm4f0t7oYl^F zchQpSLXM!d!~7>fB*0aY6ND&N?buwG@p=3Tlru-BK+E}{OOhB_B1qqVXYSnGrXGTY zp-L(ka&lp8N?hI>R=h&dvHd_QG^zGA{eKUf0XI9Zi?#a`#_2pdlSN&%D|&-Vcw}}i zWG?paX|5UtvVk)POl*Ewea1`Wy;oCFy(^!N&v;|8+U zTrJtOHVuY||HIfhL!pt@;nYGe3s_{Y@t6U`I zL!RKtrN~EEc@N5`YK9MvJ1CB?c@Bcfai8as!$d)1ok5DTi4|lHCibX&0}VVAj8M~7 zoP-BmkznMb=#ax6OD4UB23<85lZF#7Ec%7HxwRZOMEkyYcYqr2)d{K;zbI!F3aS*U zNui(70ZO8NA|kgI(Ivjw^x;tvG!LF3gnf59uo+%MyAJ~RQxUL9a~u&*@o2t9i^kJ? ztMSnq$^C5}(=|VILoWBp;my0VM2Yjv%F(CWpcj?zkHq^yi}8VDlIPgUbj*4;nVcB= z!UXz-@BiLX{ZHA9h4DY>*O@v0YZJ)|mZtsI`1?*@kbG^7STg4XCV6%^T~qY6aP$ra zAX=Q^{PMbyOd?eL`bN>OZy%?}1hJ+aGKw!!ynXLynS%@V!TDKoUw(e~m*l(zA?gwb zS6`%2978k`X<`8hm%b=^bi7K!($u3qK$0v0>0u+t{{R?1{d;|0U&O&jlOZw68Iz=* z1Ah0D41wK(c;V^&qa0C)QyDDx({sopq>yMc1!N@LW4NYOWEqfyP!1N7h=MACx%ID> zNR4e4RxLMp$c*!_T=$-MpU+wMLhm|!|%SA@kuct zk+9_jg=Q5eA{zq6IAGEmiwN?fUC$a5BQwNt;EnqZuZx2sBV$Bq;KVZkfsZqaKwKI6 z!6QT=ViSWwgeGw4oymu=7-zX3D-G%oUS+C%0D)|D9 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

;P!$_H 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%0D{NCdkq}Y4(ieY%JvGr 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

FJ|M_QrOa#FoorHOU`jeaI5VsF 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

;1 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%0DQtwHxKN=xH(w#-6>fwqv5LQP4ba3d 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

GW11OS|RM!fvWm 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

    {-fU)!E2zx z*Eo3H_xCo-kzTa?qI6Q}QKe_6eM{)97jJ>O40_R(^65iPh>Y&&84z`{GvZqzB1H{- z!y#RJL-)jWqaJO--pFccqQD|wR&sdj6-&%x}aI^}nwUkkjWpcnuSTApQx^&np(l?

    zJH9C@Qa2;NU3pEk{<1W71@NCA#Wa+EhVC%4@VB z3sTbvDTi%yiX2qjdQV_#j(KW@S}lkP*^cR@MZ|0uuY+#Lho1#S?arrZ(3p{$Fqk7k z#nwmH)vNXv5tbS3gq16BXAi!~0CNBLe$m`IiE;SLOA3#TPF41#ck|sVA*>r-2Qq3G zX_Mk0_`X^Pqs}y7vQ$H`?0_txE!<60wf>Kfwqq&JW?eaf*>@Dl z?Dw8m>Nk=%gYTi5dklQ@M`uRf#lyoB(*)d(P|F!$WHbVj2k&D>eAKW4G$dEikT(~l z@3(P76=hkf6eJyr1Yu0uggBpuEfr+00Xykynm}m8BXpd*ik}-5%xT-|g6X21Wxknv ziGV!bRuASAY;w<*@;LO?3V1S z%&xOC+6nr7v8dBXfI~ne#$LREpJX6GH+a`SkpUnKce)UY?2I{mpk9i{uv@y45yeU8 zyLxQ@Qa5e(=WahXFr5T;k@n_IXNQ_EQAC6r3Wc$%;8qin%t{4?d|8;ZJ(q9VFD~Hd zW@k(#+7_CXc#0f&-fK-;41PKP4JqPpupI6V!$n;B3d?~rx_9V%p}!4?A{vw>D% zN&}Z0QUbOqAbs%+_7N&Z96t_NoZfaHKV5GoHuw|sVB0)N_MHaE-4SFD!s zFUv40XYu&R_Y0b1LcS2q2*jG>_i=adyur4&O;xSKIOvdJodSbGmuPdPfw15;I7c^I zx7cK6@rWIHyW{P7$x(qigHeC&{#(_WM1D%Gdqw;???&JKuJu zh9^dg-IZhGyXo8g=KOBU#o%H1WAr)o$+oBSm8*+FuW84zy%o~hxZ=1JGFX{OG{V#3k!BVXmZfy!&(V@=E_?0PB%Bq? zz@oF3Jexd|Jg3}O+B}V1lVN4wNL?Ooz7M~nz`}wB&}^$wf+x+YX1D9RZdw`*DC1kkqt`7N{_%@VZcFCa5;0+cfkC6t&C~eHu2xL=z5NBH5!k)DYvk zYh`<%Ymt*uh^rK7kgJLkv`4@>1qt2OebJXM9Vf9eV~q_~2nV}qVV3<0sBXEe4YtYD zebgE+n#BI3&Lr20c@3-+ZU%4NZ1QuGEIE(opdy8tJ#>Q6pu%7&gsNy~ZnRq(9Z9}* zx7U%%vC6SVxhfiNnX(AQG9^Xq+*NsR4%-Dm;QY2Na?>YadWF^prO7xx+&Ya=IBSyJ>}kF;9HDc~R#lI^KZ2NgQORGmc?hGyv^T#+h@pXZ;ic$oggiY| zvU#5aouhdtBP~*Dbmo<`2}bEz@Xt`-!C;We?Vq^C?V%;i6<~{)$+Xv&`wXj&ir3(> z-c}L#T6w9L7Wb}#P9E+nEMpQ9CLDRk>oN)q$WPg8{mx#Z7`wo=|NBQSYinHmzsE9% zB9|hg!Xu9JR^g1NvQ9H){)rq&d!d*{Xx-enSIYuAMa7d0`Tu89ub~u40 z=O;;Ap7l&H!SMVnVW){ys!{5If>FGq@RQx&H>ICH!s*zK-cFiu$|1CxU+*cRb!dLw zKsx}+e{wo@tg7YbBQFLVLj`Jxf{$(+<)g4s5};0*`LGw&Zhw1vw!EA;3JA84cpnPB z;^|dsPphDiz=WmwB@zUoXtXprz021H4KC3m(rRJm7szJ^e}NyP{Z9U?n_&8FO_ zb64+ny0Tgj1tKw#`$c592v@VT8*)z9a(Ebg}VQ{Y}DMJ@AkWh^Wu)q_B_ zl+tNrAn_r8xdY9<-;#7TeDWk1a%UgWWe0=-+W5Zb z&0Fez9R*B~ORL}?*LZQCVB*e>SGciTnYE#0W4$h)QUt|hy{>$^zSkSI@!&(z(Dbw} z9vAn^g%CAa_T7rUs3y9A=$eLJ@ZAmHm=LSF>R?fB=UpZ|Ql3trxAcljv6jqzr#>u?|siusm!ZvLY!qo6JGEl&Q#zGaSQ z?P+KXD$wlfGv!jrXn`9^8f$P7oR^Hgoy<0Acrg>2kOcH7pvI?$4=OPwCBop#ouMW+muFAyq2fo7SBMb#_P z!hnMT%Z=1hI|83d1*Zs-sYAAfr#y`Um)!9~&d~ysm~j}9=A1v?)3p= zC}&28H^@iy{rICtB?)?EBL^pu4oDp6i-CXyP=%H1T*_hyW~c(PA;nS)7O$GXwiXaA z5?KC)NAX0{@QHKZx{f8{5vOkgn(po};s>5e&2Ng#Zz4P&X2>?Jf}ocInO+1mJxSFG zF;UX1Dm_S(HAld2&Sdb~%c zYGl_j(g@CY!Uy&|8QDp0b0BYbKQNG@tMlADLZ0`n700vS91lL8&pWTwvcscQO+h=%d9wf%$dH`{61gzebe>0S9(lrc(xh;Oab8T+F#?` z@SpOe$N@AG!kRl@ORK|8AUN<+B!$+AKoy&t{|2iPsF~}l9xbzwL_MFpfIf$o%5fQ& zcHG(Ip%Kv{EDh(`(?FSCM-nHC_BS%KT^l$7|- zp;bo~YP_SQzH5tu`A`#F4<-m<*Ux3}_Vax#cx`BY_ZBm=YbNXKB@rl4hvKa3fs^!+ zDOYUZaq-UiSPGuBCTwUC)-G%*9T^sJc7sYB!ThQxB=OsXAt5rrEFW#e*c|SXl;hR0 zR!oD1OUfQ3Cf+%9yrIUe=T+B0zJ3eL%!wd7@b4Rw#u#bHCp|MTuv)-EZuEDXt##^( z@c9^Ys#VdF@2!Juvo?=I#dp`s4d%xp>U#K9FGg(FLXSDzK!z*bm~FM&jmGi)Kn{y+ zJD>gCK1NtDuviS%GIoD9Ae??RjDOB#GL_2xb~>es!{AmHNaM574sK|I?K%I4JD_Em zFw2S5wrB`t`WiW^<83;{c!&ZCjD(EaF-4&}s{#THf zSu^1GM|V7t{Ct)Su_U;1Mktl@D{+CF9nd~iar=&t++T9WW*d3eolYv1IgMW!BR?Uwet0n_jX`TA^dAMuH z7Ci$-JK+8J>gE2~vhn%kfD>ImO?X%CTA~tLbH~!P&n@Yf-6Gqx5QLU}1-b_Z^}VCI zt6mqY?7?%^!7ALzR-QulovC7XpvQ=m;f$GhT|depWdr2$`-L_1mTIY0NG|=-R_{AT`srnB1D}d3@Bi0`UK>AWGs9vQ`9&e zQaY!hadoeRoFLruQ8NQGY&~{{bY|nzm{M3d=^T)Zmhl!r|I-fU}^~KCnMMo{5Rmb|Nq>>&ENz5i`M|m1=R!4F~@$Gsiuj{xX7=qFy`)=VX ze=xly7)8W|KvAcGdL#YS^h6S)>>0ITK*$Qmip36}_JGD$DN0)00!sdCQs8U_dk0aB z@fGUp=Uo{#6T>R<9Dj}keQ>O&1^D(%5Ga{Izfg4BFDo2to7Z(OThj|X!BB!YFHGoU z{o}uaBmYDd<7go7B_UrV?N!Yz%D!;TToiorCbZ4sPL>zbrs2*8o&L4R$J}jy3!-LY zB)hcNUG}Pm52KpX_MX8jPwcfC;&B7bXjCHN(UeVw+Jb@(d%2o_o&TwK&Rn-Ut1>e| z`@DE->B=YY9=D38UVrcPlu9N-atUOREfu{w$J5PH8=D0KM% zFKm2vu-+I#k7ZJGGCMsu>kaJFm(v3vM=@&D*K>Z&yBksH^rq9TfL-)Fk z$d{{ALeb}-9&U?(8#N(wV|^)FG16T4ata_3gNMS%c$R|Y5fbD?6?B_+5AzkIyFB?I zAN-BTh+`Wy_W5k7aoYp-=pT7bD|w0?pQ`u=Lh!WyJe{3{ALVz-k^^WZzs*9V0;3bG zWLLrfi8;86V%|0*a=jW!u{@EYTnSd_SSSYk4c|qKQbKOL(*m6HNm<|5Ri_9YBe>Nu zS-$hw0;|HrEKLC*zXN_Qb_k+?jLFmLa(HvUG(OqrF~_srd5jkhx^yirxO@6pt**)6 zBQ44kK`P$=Mym%ngJ`(|tnF#>>p@ZYEq7ULMM*=Y`uqQO5flNxgtS*MH0951x(&x;#sMFH(E?6y)qbW`-?=}Do>X|(DG;0f^6=-4ShDlE)s2Zib5W}-@Vl9?+F z2g{GMXoz_%l+-bA(y*>#-uXemK9=~gpJ>bCi|5`cG%)}9wjZ=#u&d-8q5&%__F0UUg3nbI z&_M=HHiW_ptwD0J^l21v(tD&h4@qDJT(@;CwwozhYJ~oXpR`- zxzW;o#F_GVHg%T83I1ag2tXCy;<~(Y-AQ#G=^u^1Oc652!tn+x#1W+b6WOCd+)&&c zW|NuqE>$Flgb<+Lv1fcYS-dLCTMxkWjThLv#)$bC^l^Z%iGRQiVLE!VHBYJgZpHi< zF(9f?9=wX!8lCaK@d)ySGM`F(j&oB(!b2HGW73aEqYU4Vu_ zDQ!MozJyGvBU$#bcX@px6l6%$HNOWFe7AyhQ5=!S^=SZJe0{$UKXl#@*H@_> zFqY%&3zvM+q|8wDpm?XqQ6mT0nm^xopq*6$v__%4rhnPv)ys>520qj3%fzzGK%)(G zSl8xk(RZERfctP?A`JKY(R`(;%$R#V*h&Es0VoLUNpqM&&0%{q;dY5B{r zqH!2#1r#Pcm=2cBp@(@mSjyTy+%yySh8B*D76CJc+}8wjCj}N=LENQBE^jl$F10+H zh9r17J6cxW5M4-X357i+u5swJ6>97nZpA#Gu+Hq0nN_#O&XQr3j&dU;?LazH3DU>r z-7C2voA$!C!Nh(t)ap|xhMZhUcSzt*j=N#L{b)%7KSZw*{{n@9F7416fp;V)QZ+8* z64O0oU==mh)G{Iv-@uI0cM(n6Bd>|w2?_IDU%chTb|i+!$hA!5gM{ipqikW{*deqs z#}OJPuj^w!&CX)BKu3ikVVYSU?Zk@A6gBA+3@5OBJ?kea6^JHiE$6~Fnpam?XBl)H z;Xme4DB_3w$S-}rH=!#7tSFe=p}XS%!k!Ua^oFb+_0s@?4%R3=Xo)MIW@P0cLRKpC zMqP$D@`%oK(n7z+Bio973{W_r5>bg3b0 z+nb~xA%(zr|2bmUlMGd6zO-+ERVc|B@CyX2+Q7xyWVdpZJaD)?*ty93khtB?fV|W} z=EkaS`twSMxA*-)dxEk)CRw}s>Bi?rsfy(uP@4YF$!nc;T?4AKxmdAtQReph_lHWx zu~;7;w%n*5R?5qqUg@9%fr>dAnl%oD>64=S)=UmXGba3wCUi7SGVHG8kN*D1<7#Wu z2#?mQ`9l!NHylED<$M}WMHdRAcdOk6aClM8WIx&`)~Che`7SOd3}N7(p3hTUYa94S zsvisUf8`ymc)#eKFE(CzAdoe<#C)sydyy>yjGN-&QCmV#{Ffr55!gxeDUT(U^?jQS z`>h7TcTf12RUDnnn<28Un0eKoM8eSW<<_6y{|7v=ucq@q2aznS|NkJ8iIJY^e@z`+ zYwg7S^M&}$=^cpC#G4G;HQL!MpmKn?@i*DoAeh_OSXbLzYdE&O-`f2H3z081vWa`H z3E?45AaV@7?@!x_ZadyPDA4+PKJV;QvGGZ^)(=ybqPoFBlZa2C{Y#2t=xo=Z_96E% zO4#{!eS$|H7bS#3nD|FxJ-&SR?RI}3{DUo>FVGJlGpvpV{33^@v0tfRtlpi9O;X4= zNkV4ZQ?(Oo{~e)O>mQWcO0a42{%T1k`6`~U)g4FOh%Lf)dnpH^k}3W zXVJBns7~Q8(C)9)*U+YGh98#iY2O;i#`C4&sIw!cN!9s`A?v@w07{l1oP-RyZJn8+ zVH$Y=`|+~2v*kb=afs{doLT*?z9Wn>F7|7xe)&1w?Wr7kJL!wd66$&A!_5rJ+p8J+ zJh`_o=Yjss|0&YN?UF$XSHT<7a&)2!rrhOq2TIWR9&7Z)47D4q?0PO3u$c2w27$=F zh+#5BepDP%+%~>3IpWyZbZOc7X!|UEWV?g{|MDGbPD>FR@Ny(t@IcNHTX+Xucvp8e zn~vaO6rfhWOVuP?Na^Onebrkf7}7n$2s^G1(5KsF6r9>`<16~)z!P4uBc{5jrhENqJUL@gz^-|YW6^VCwa+0k{}s4fphkT4?&d84$zuCFbUyiIs0Yj1lv zJxs%PKQx73WJo3RC9PB3*!l4Pu*`k@XaouL!duU>?b+}n&Oo+@rjlO<`kQD^8d$~z zBuO}Mkbzz$r(P(Wr`7A{S@^LN(<~D7OM_SSX_I46#G()+3)d0_#U=m8Oa$DuSkYeR z3y7eqRuyCyiJ7ch`w&75CGRIyg)l6#Ro0g{BogaG10xiXy~69W&pPsA5> zI$YHk>i%=t#}K_GQ`|ra@s`%Uq=c|UnL<#(+m+Y}ltrgyNp=S*hRH>HMwU8}x( zW%%m0lDm1URvx)Q+_21-bNLpkt3xzHSbSBUgMQD>t|0B!NcU-n$)f=t`R2aj)SqEa z1hdxXTBvML0J|KH zF3;EF?1ZX9t1lM+g1aF-*~ZjJatV<=g>+*8km$!~$;W6YkI|1dOl=I(ejb`t`z7q5 zVz04TLM|=t&SZNke&slF75-#Okz^YdK!m4@DSL7gmd&aKG!9X?04t?8fGptAE@C7tQP4Q8J*hPn$ z<1V&6HntIgiMV{uVMesfL9a{;VIea^#D^vT8Bw_^S(*X_&B-vI1VI>9a~qH!yHvq_;E-E{nZ%LN}5x2`nj;^wGZWD zX~O)b-9XRD+!DTs_MMD|{5!(gFx>J6YU0~s)=0H-13`C}@>VFY1% z=Ho}r^j;UPRHhpnq`yW#QjO_L$7I~`;c~~kr!dh#fLBgzpHtR-r4NnKzn$gj62O8K zk>xYyFRv+Nu4HF1NJz3AsO_|^nPUJ02toUh@XY;XS64T1V?vf{KZKK;G2J_%?+*SV z7sdD0Eubu$f1Kx&e;wD8OZWu`a2#jgyvy0Run@FJt_o1Os>*RQrYBag6ucBnzr-RHg(r_ps;G^zHJU;}_SvQjGc2o< zbPj-QfQ;l2Hir{pj8rjVsjM#kXe<^?3I0cIOPoaHo2hrcap((S-W~FnIH1ypG8xcg z8?ai%&C4q6xUHPot=q|dR!X{Ud}(c}-`faY>A=QG8yA|Bup62+?!@721F?7wV41z4N zf~1*$X6kj-E7_alk1mVRFql2p_SNZa)n9_Bi3U)Id7=f%&z6DJtF<=*w|f-KWeFTv z@Q2-a>qo1Tj`^~9hir5bS;@m-kTS8I^j@(44LgD1p3!2l<1qq_FGX|eH+nd$zLWKy zH0h@?A`K(>=+uwzzOqmKaK(>oxA#CwAgtsca#TaIeW1Ji6P2kCkY}>deUAmcpdAn) zQ_T8dbzRp;zHq7+ZhJ8O=h}|fU%xF)z7{Mn7%b7whwFWxYplvBysA2R^4KC#COh$# zsz`;FB}Gm%vKk~pz_D%RX0<&h18mB=il}^Lr|!blV?DU%ba%^ec!66xU)0OcPi|ZW&c(9KGQFc(ZS-i!pmypm&q|Jm>{g>gJZvjhp7Yu)ns2Z&9cXq?>u%<~v6God<|y~-w(3iF{? zlXsTMbUiIsdhaT?^@l3Zl|tra#vLc?UhzGZxK~q+m*bEL`vInRr}jSRaml@S@?+7Q zV$j@d7D++Bbyeh&S5IvRw5x!~fvMnM$`4(X;${|4K_r60f*dp3->H0lzoN-`@%e`s z-=L5$#%%5*DLCL9iR`NOj!gCAiTl8nia!BB{}l5+5rULayY7js>fqkEH?B$0{Fb_= z507g~$^B`+j&>Uou%T^p#h}y)#4k*C-H_Bi@ zOjgcK0XAUdrB~YpkXCi9c0-`>mWgg`_u`z`LQf?SAco7Ssd~u3@{Grwf3ic4oT>qi zo9Fc8D6K0fz>NOcVlDWrb;E-5lQqgXqLoKD=Q-;MNshf{cC2j0;~u1N^l;2gK^OsC z_5hLBOV=X?ii|q)L~QeFs+3J@~F@V3@DSzebvyI%vMJYxO?LR8ugZsJ--R}N7&e^ z-M{KWM%ah|UWpEw%X#>aC>^w9%!oA^)%qvf3V^}4Oi1O}N0BQpIBgEg%(xv|6>P~&$DI6rlHo^QM71MY{o|K~qXHEjQprDkMi{NJxvXlmFUu_OB4 z>K*uCtn+6b$W)vGm}2sb@lFFYc}N9@8d5c|#vZ2}&l-a__4!0mPm-c&sCr_3BI>A& zbgDn2;Ba>3Eo{iy`L=sI-4`7;B^PI2Zk+5$O9_rl7egv!&(N+lRlT#QSvxqryX7MT zng|xl@<$fEpWyZBd_5fSBuXH~OVmmvmf{@LF(ND{_7v!bMd5j1&MPHqRydEEYQop7 zPn(ODgPGt4{COeQ=gyK0*+uH96u+d6D$wG%%EG0He}J;T|U)OqH*6l*Lg$9k$5+w|ftsF}+s zG8Nlv@f@GD_a-vA?-3lo1Z;S`gTWWKahIZyLFs%*he`KeEvWlZt(5 zL0VCVz{88Qk9#!fJE3`e+J|?OtQ-H?bsr02+a@v%?xE5&)-oXxr=a?Ehe$5*pxm74 zoJGAmoq%pHjRdQ@wZrPNwvgx!9u|}csg8wJp|LOpkpJBEG|1=D08pIkobBZ*C9}2Hh#ydOA0!AHMYpuW3W%roJ47 zzK#S8Lm#r7(^bXb-CvbDql$O6ef1D?s*la2@Dfl;BwtbK?LQxw$C8Dyo+E#<S={6r>LGXR9pKg+uBF17D&|LU@1TrS{!*MpnB5O%C)5+*c9F|q0L#%4 zhc&-OKksucPykqV(BT0lL2MU)R~cCN%njZo#x*SbMpP7akTFE-Kl5^+2hjX5k+XiY z1#9o}PN?^!kO+w`GUr)FtUhebh|C1-*X08!E42+XDGo`ck5#TpLz2T#fEdsNXC4y% z7hom~1NzkBEvXQu0LSZ#)>@f~P$sDxM!Q#x&{xQ9{Jt@4ex3;O_OXPDH^6Dj=V9s&CwC zY^4;c+hJaUc)8d~g{f3lS2L4c8DSAeOhKKzcZgq73=aUnL{UZ=j^WdoPrR5OaVWv zDj(i~IdGZiADRD3gK4e0V{M@D*J(^9Kfqck5junXbL0jzQzBf(b2G6IU|y{zC^>$w5_VuQq+$CvUM#fJ@#A+zW{r4ogQ?a3h{bJ=AJ;W=*~E0cA| zGPdS@?x$ez-v>v|27)h<2G|+XuJcr&*zaw?z=NE2_ZB|uwy*8iZ-}=8U|S*P#LsE{syLPKm?E!mgRViX zAE>kvucV;2wqeOu)oQy1-s*fNo?|i#$pgQW@Vav}s+#V%#^4)Dv9zunRP}O3>HdU- z`<26C#N~0}rluB0PIyU-d)kn|ghyL2P>*C^iS`E_2qhXXHx)+EAXjiYI%GIl=!hdO zI4u7b{}{%@lg6X14^;l?2Dx4}54akV3zUx<;3)!FW2svN;Jjb2#p@;RMR+v9tQCp{ z6q$@%!TvKn?V8woeFJBxvvKlQ{iN%~e^am>o~h&N#_PTcL4ja4S_JgV478hmpQ^al z)x&1szAdkAi+BOa*~JULUwGL?amJhMdrsaPfK$*=p)lZCIG7tqcvAdGPUXO<*JIL^ zhenR_y-&!Tiyh9ap^k~a-Jt?%qN_#!%=;gSHD#sKTvel|w?m-EuF4V%7>7w1BCY_yu*Quw=sShoZY&;$697l&agJ`MF$cbU2&i$^c*W@4Do3vUs`wvR_^S;g_x(hP zah4x1C^pPxL%L`$jn~mQCqQ`09O+hBbjXT9U5lJzs2whD zYk*RiJgyCxUqAqe3I2FNB$Sk!D>CN$OvgVeRFU1jVL;y;JqiA@vdtYceIOkvg*~+p17yh1!iQ|7AP_Jle*=>oU`p(tK>!B_a zV$S)nLw?m`wMU_@ql$l@qJz>bptd1aBsyPR8GdegoeD-0{h{D6Z`>hMILz+I<~aN8 zWg_DCNDQUV^wITBm0L9qX^Mk9|C@_WW zkReFdI^)Lo?S8+r!nGD%CBP(0BH40-`O~iyD$}I4J_p!|)2e4L2tVN5st+Y7X}B>8E?z^@}x&yL#}!u(;Wd zGN+GI4_|5;2_;;RMw70cGGoMpMm&+lwyO!tb4UX@B#wZS{?np^7Na$JV$#um|YW}da<9DN)3sKAsnG}XojmtDVkwe;(Wj~XXV{{09|gg#jpI7 zStfU~+jezi_Se~OzI38>2dP;2HM!;8>Q#F?YvKv%<}jIlnEW=?eDs}J4&& z8#F?8PTU!02(%T+VB@R>;3^mc+!Y|ibZN7i{EXOQT6c<;T=>C(RyolI_j~Qamr?_y z;V-r`ALfuxC3$plYQah^ZRO^l4b`8fEW}~sotLGCJk;6CF%zwR!z;R_iBSxZ%&MXc zLM-C0N{h%Y8Qa29u<`pZv}j;6#I}3E_CIk##T%8mjJHiPNYD=ZQiLDyVm^HOH4UV$ z;u7$xj;;Ceu$f({eItni_#!Cn>QER`AWg+{(T@GvvVxpP3FKz|VEDwS%Z{BkuFrr> zsaUXDtvc4=xByrap7!o}b`RAPHq4DiPljRVBc9WSz|)3cP1a4g>F#ISz+V7onf&Mp zFu3%UI=W^yDtbS4#KCT*Z-l&kAI}Z`&S~*C9YG+shm@fri^3XqSfc5Ayq39*Iq$Xw z7Q{*T@$ec04Yx%ynu?_ z1~S6RlTr(5Nm#4ki{Qs2fL2I>$o^#5okf$n)ziv*uvEth7EmW*HC5D?oto$t+VsX; zXv0wA5d%mlOmcVZZ6~i(nx|^?boRIq*sG~z0Wz(;*X>WR>OBXJ_F}=WY|ci<;?q36Z2&DbQdbF^d367*{uUh@A|j9?cGOy_^na zgl&cyx1lntryJe3Ipyt6AJCm{A9KxVxv99Vo=xNEr(2Qejdbl#!W4D*{6+P}XRN@V zx+nuOCYR8aqt??W7k?kXjrqGa@bItfYU5qWA>VW+Y~Le=!3;^azmx@ih!^|4rs2Fm)$ ziTs)@D@HxhB5A>;^35NuD>*xLekc4}tQyhEhT_H4(e=3OhX0yxApM(8>;R*E5t%X$ zWhO5DXu*uKdAAkUv=tHH3R`VM$8Ue0w5=U-FUq;xLztH<(9elLyCz#*Jc9YPRSSk$ z5{RXEr;1a2MwPjaH|$vxe@#YaoQ=pch^YfM; z0O5uK>7)e`K9=~B0gJG!M)ES(3NcYc%11xhk#1({cl&di9ar^1QMnf~pPN3YyEn6^ zyu|y<8L0mFNEac!M~I9%<7scPW%d^1;s%{=%_VWn z7+lM|rEvZmchsLXc56}jp|@rnZI3>hn3E9D84W{IEQA%-#a;UojeN z)z=S=S)Rv&`~ht5#BuQADyFm`gu;V7317`lD(LnXrEhI2^Ay3erv;T!u01SQKr`zE zUCh8uNz6x4&7Yn1ZP=!0v*hP_dU4igWpy)nV;?WwjC$V);KFm?8*^m|;s6@~uai!A zkV8&Rh3!00VLQPrRRZMB0e7~*ACs@LKt?6_o=@eKP-2G5ck*lNqA^z9SW5-i+H)Bk zR|e%t>c*HtIt9WYZEjJhD0MVN=gb;6Yw%^NP6z}N<~%e=VaU*jYuMl5t0S&$6K$qy zDvPYPm^N&AqXz00>QwgL_to4}XoWc(r0(|n4-G`u^%TKvGQUDI!) z20dmWzwTa@uvdSygSz+wG(V%D(X}Y?14B9<+RDtF1`<~WrM(v>B+M0(s|+o6u}lz5 zs_V_%(l!^OM;Mki=C1Vvzazn1-ydz2sH4(N+@+6xBN``fo5o}=qh`g!eto!9;P8~gu!Enr6D zAB<2G{-5!&JdK~a@VOTc*3n`gDlv4&~VWf0QbToaOzX#`09Ig>Tiz$K01a0_K>AdkF+V-EWeA8Q<%Zd{6ksX5lbFoTm2n0$f5qHxzuQ_FfY-Yq*G`k0sUVRDSq#8 z$~PBmFblmva-1%U*XAz%cwBrAdR1a@4Oy)>F@XK$^dZFq;r~v^TeJ`-();&ax?@W) zU#*eoIDEpQsxJJGotFc4^ZiL%$euYR0B48<6_|Ny*X4}J8g+VL&>)4Is@yTmTS~ZX zSDUR$hY7->1H*>b#Hc8%Li*@svhGa0E;xhw)Qvy8-!0n2BK(9Q_LQsgDH!gl4CM6)?hjVN&+M*pj9xx@ zqaF?7s?SAOpLmA{wo7ljI?FDdoq+`a9ZFujhft72mSihNq&(9S77epCafhQKy&E7F z?*3c?JCr?Jw(}qqD~==teu9HWi?Lntr4Hjc^S$nuvRM^?0$>ax+<)4l-1tR8=vC$9 z?@c?Y134vy^$+VR0uK!6-IXN1uuZ{3&a4$c$-3Y~!vs1PR_E51-dCJErcD89K$9Vd zw4Cg;MR!KrG=BCUY{7zTTXko5bTU(7k2y1~7gr_gZp`8%oL;X;r*=d-!oQVYc3fX(gKhh}eB$p^XQg)LPF`_0wC zd3J>aRulpROGXOIgxJHdV9TW?t@4c2B;Di^(Jedg-(3M33>M=1i1m*M>aVb8kfpce zmtolw2PU#3$*?9Etj{XXWRYcHN{=27jQ5iXO1;EO&RU|5cgccyk{_rhVt-579vs}w0PdhPz;z%M`JZav^)M-)qujrr zr?>!zr3JjND}`>3X;fm1%Ufx1WEwYpm%HyPCzommaP-GV_A{kh07NtHK%CN%`P7Y6 zI%b!2>Ijc_-RKKMyZ3@A2xfUGgLK;|A&Xnidv*o^^BmF%VZZZ8

    @mN*&s3>d5}sD_=d$`DE27JQ3aq?S+J$PY^J0}AT zJD#Bo7GHO{n|zuDW@>b@TL3&P@K;RW6@=bpgKgniU{Eec=&#}_Zr~5q#=Fx5-2_(j z2l<4%b{l{^`(I?WLs57JxAnfEljhQ6-ECmSuWe|nhez6Q-1A*}e+h2+xm=O+WOR6Z z9zk*3o={%8R7h22T&sr7w5`CD*jM*xX_ei0ipO2B%nuJ|-J*7|B!Iz>Bjm^Es=yF? zwntxAiluVkpWKfMx)rq5Sr0z`rxOTD07BM&3f-}~`uuV%nyH8xn5`d-&+Pp#$&?U7 z)uHPQ|JkfjiqkddR#q~2A><#2I@n;zNMeU*q~D<=u~@`-0xw(rGHZroufbV}M@^_q zVBY)tibcr?Sn!Tbz$Z@hVnfx$zWZz`Jn#j#;S;kS!bzaG_G2(K+_Ap7&G>!&wO}>k zOB4gsbBZtA?6COcdsW;_xfnqN@A|CGUd%NVyo3$D5gDTR{>hp{D;75XVSbD8!VHH7 za;ligR}~Wo=tn>YKEWlQg5qBea>|0WYaE6wbyA_DaSN4`;usAUTuA+}w1u!dkSzH$w*C1mK* z51TR9l47ZR;%eU7YCdC|o)izT;h_tZ=lB+ey`f{h=xylf*&R?2RJs0`+gl0GQkYt= zEywgwFW}1*Ua)HDy{XKju%=a(FItRtlhtN3QVBWwTz2pgLY1I0@A3N}c;XuIo*k0I z-OzR!EvwvlHvO}@SV^++aN8=bROJ|^7WJ;--kvMmZ;D=W_7Llg=gfzSH}u#0k-yn4 z7k-B>;vdHMJ(>rA_J%47Kg|!s2tMT=F>ZO<_ZaW0X&V?h3i`B5mXT3}{wd>~DraO`zz%DnV7WkMv=ho z!Dly7d_ysDHFPM-3<}|@`OHh=5i|4G5e@TD8E@vS$tJ7+H}c_BZ9bukThc`=Z(xbT z%(>wz%>!ZXNdpX==sRnU-FlGXgwO7p78ju&&#q6mGX21UsHmk9;ar1yf+u1Hv(&{d z9+}}hw|AEj7~ab72s%B@>)*VIo#qPIsYp`^iZSgfUil9ACc}$)YA`ZmgA&g#$l`|? ztqIAL67$l(X_B=+kJoCd1Qi5}37Mg(q?B}-?!WoLP(U*u%UC@2je zQ-cugjbWA}ozskE$in37pL%XoJ;>vbb($cW_#8H_J+t@Ec;LXhqaQU^oqr*o^q6a> zez8@J;37mIoek_HXwq;o9f$Ni+-a43S*c__n)l_cv+YItp)wlXusvk}SU)SPTpom{Q(jdU&44CSzw(nez$RWh5k2rqjN@57zts6)*!` z{Kw&+@eiAPmA6E$R9d%3@?8opHPZC4*%L|_JVdfz{&7i(sY|H7}Ub+1~3!mdrC zLr>JGs=B_gyHk*~{`$UPB*Io8Q#C$7lW=0G+x>hxzPx3Wo+3kKE;30p&&2$kFD?*k zz)V`bdq{;rk4+nC7(l=+B2649t=}-| zh!#%^tx)Y+B2o4(5hGiV_wS2Gc|A3?fGi^^D8xdrPr;w9u=j2-(!ec3Nel+IPXXZ< zU%D>qX3XZPyV8VR6hn^9^Ay$7aiu$;^ZHIIT2K0DZLSutue{DL_cK_W*PmgxxYS?7 zsJ<%X#+#h5e}Cww=db+8O>wXaWZ2c_`Ej!j9#NG>K@Of@D5$^n{ZR-naD$N(u4u9ZLr3tiBsG-Z6p;hhOxLgTP}yk_GWN7lxnWCB zH?(9LITRX`eaAYZ_Ms2`b$Fombg2aS(jA4*537aPymKJ9`E2wP!;7pkT94SFLYqn< zLT-&t*#Ll^auUk6R7lm$d(IVOe5-Ik@N#Igy$fK>p3v5j-1V{Hzig#{%323ZP*yXMouhcxOsF;-no$%HG(A7qU&N5tY9>*+oeh}S=UfBD{Cdf1NuR^0eorEa zVV!6$W>*bOxC3NDb-b&GMsmSO%OoFbK{rs6v4N+GQv-hXS7mz~5P!%PU2ERfY58nI z1h~630Op=^T4$2|zqYBhZ0)1wA=vdzZ|O@G@a`E)S~QMuDrW+64!@?%(ch7j25Enl z!Cv$LQN;t1DkEOQ(;k&U zPKiiUCow%B zp>1TidH0#jJnqz91=mMF#Zgid2TkHS17 zMAOJPI+&zvZ1Bk5CWCaZ4d=$xcg$vE!MXN5mLT?j=KA%^`&7Ml=#AvT?)hi1Y$|i^ zfHkf_VQ}YpE6iNB*;B7!WG}-hM)u2d2OyEIN`}%EouQ`jLe&|J6u0X{SkXssTST$clk^IzjH z1fJ&ynWVjC1iL+qvB)&8$d$aU9J>f9e~mT^UDH6GUt=Hfhpchpks1B?O3eXeat69w9+_)ZkjQ1R+Stu z=T(L{!xfm<5%<$xIUANnBx zF_4!JRQwLKE33^@pFA6B%8Q83mRN~l^}n=&0=ICN0!cR0_{f6n>CP}^&QEwKdTL3@ zv>>%_GYRiu!ez&QDCk6r_rXSW?f2Z;h#0H#MBx6?%V{y>OKmA@t~v}++eWvY7rZOE z+(adz@b?-cUvE4Kf4DR}3qegc46v_QcIeDbCAaQsHq#)jvjIjma#7|o8r()ffx@R@ zte5*t#Gv>QRyn)}S=;OFW{|9HYg=x})<9Ty_idl@uZv`N5ZIyf_O^`{fMh+o!);7<$bS#_VC59 z364<|&jj$8A@U;s_2-dLcA)Pw4IRX(xnEK=7ZH{yRfR%jc@P&nwMW>RKiaZjaTf=a z&YiV_L0H}`ag4^orq#Ti%Xlq{83|`71+Wb41M*@PKFFrZ15sbXY*i_Zs=G^a^xaK; zXUE9|qmn(ND+I+;xg|zK>}eefET-rCbnCa1gLRd)ii$$V!CmdQ&+-a7 z3_Zq|ZFYFpmfq{l9K3bZ%0URHxU(`+8zqjTmMPy-v@_bZ;HTnzSmiBUkdc(9q{YuN zla&8eMHY^>ofC)X0J|WO6UsKYp1HmIY>A0^%^~+%3cU%PEkO#pUK~u{mtk);JP0|% zUTKWFP{u9J*yHE#Nzvm6U#8D#jTbBLKv>i<^u1?8xFv>=|Mk?3kC1W52gNp%GA^)T zAG>>4axNyixq$D@D-1Mrw$R~R-Pic`bmZV{CJM*ku-PUv@e=d$DCU%iFcBlXWu`Ps z>gzerLh5Uuyba>BNNpI#&8#(-WMTm*Krn+=e8LPO1rPJP;pZ63aPiKJV#1~%L^SW- z_2%*f`O_9nK=+!M#G2E!;==QM95uCj#$nCehEoeUpikieoiUWdta-}&t#AsZ_p+Ae zHCye%_Va^H{Z5^?Alhss*ZCVhX-k6icz^0trJNYlARieZHNLlSPoSgdtsv10VyG0T z%72AD#Abj%T8UNRc9+(zxz~0p=*5cOIVT43gWK4wmeCYbaf$(^LZmyNex$Q#39Kdy zvOH*k=G5$YJ*Xssj0d7P9j5pq!kN)_cCHr;Ds9nlcRX7*l&BM*k|e6D0RPydWo~hWXd?d8oN%*cXoC^UR+g1U?exIX-|I?7(ZD1D`PixyLpgODipM+^|9KgAM8U z$4O)0uDjSR6%j0tQD`LJUN8@CDg_7FGfP} z2q1(Ep?z-zy|Teq6-h$~6^uQ-uJJX3-&B*RzHD{lT{;IR`P_kh&&-CiiCFu2xUcts z_R-1Wlea@@_*_5)yMyg5w4 zW9`Ig^H&w!*X~+S(Gskd@EcG*Sac|Fr0erbmb-p#CAb&SY}!3KM2INE>v}6ojw(sY zi64V29Z?|GkJbbQDoIpKwIK`hxwp^z-r@8V-}*m||12#3XF>M=R~DL?`Cl&jzp~IQ zoE-mcG-p|7Gaj!4-Y>6i&g7vGLtKRf*d(Z@Upf#>%k+gfY9F%B0|`sp6QdVsX7^NS zncm{+*>$}tlPHi`L%k}xOzPr}gjsz-4MnwvUAfAHtm65aV83p(TsmoIj9-4IRasUn zY^XmC5mHHe#T<`Ar`bjRT`V~v0^b)B*$NK&rOVt1Py0&z}FLE!f5+%-9 z5y;fUvfr8|JhyTcV*x~Zy;z!WUo>kEBH@z8vt$iG;n}`SEPvP5Ml7%Mi&tPJIpxqK zEwt4ERWTSdf{k8UOm|CNrceN26*lVGH7Pwc>Z6{N#&dVjmC7N1V0_HNWT{BgINefg zEn4rrpn$QUBW<1CEFtZeyrN^R99<)bIpY;m@=$4Q#D`veQa>;_;odVcCR36gIHL9VC^8aJBh!$P-==%LA58zRI!3 zMQ}M%rx(c_%q^mbF6xVDe?Sb%z$cAmSLxKf>lNtMO{hAC#9$a->Kg47^Kr);TZP!| znH!ykLKwlThLbQGFcY2(CBMxene1sAW)1QE-3Jp zj}OO*Z8%J6Kjo_T)7kv;{{8eM=lOh*t0&%un^s40-zd5R&Q`4vyGOZqS7Cl4NxN5P zT0x(8C&ESlt=+f5XbVBzy|O26LRDRFCy(#X#mO7us>4FE>+5&d*!kVzQy1s?Il4bg zsNna^Z~W3Q|tM>M|B&+|(_@hEm$^MZ@#`ea+*Cri-RPi5^n z_A>i7%QAki|Jwt^t)Fu&5AeS_r!wU{(ri+}xb`XJY31Lfxulsz)FEYXxh$R&d(@(( zaG5No6M+BM!gXSfTC@!AH_QKHQ6!ITmwX>o55i-2$vA7=yl1v&zNi&LMSJu4N&^mH|jAo5}?3us9hCu4nOVUHnr#FLWf8#RNm zniNHN4$ieTYws=^0DxRvgRT<0b>y$%efdIQ6@dIIw#Cuq!`)!^3k`=4S z_wu~{o=hd}B<*5E61zR3y4P&n{)7@0bR zQt|B=SNhenP^?o5-uAvBW2)7#$i32Fv{dvUlnRHieZT~nMDN%R!IBC%EOgp0CRmw= zjs3y$46Ok=9YQqeX&i7j@D@w0iqkWM`ar8skoDSTc=g-ULq%?yK&Xx);)6Vb`^10-ti2yjs9rc z<=f7#ziB3r#mZ$Bx?G7#zY^SOpcr*v8vw8i<Tjy06R}Q5w@gI zF{pL>Yv3R$tN{r_{z~%{Q}$%>)hw6v_rT9V`UMO{grvx6g4gpkINE&7HvCHqJFbg- zNV1ey#*0^kg;X$x+RCo{Et0gF_E$AmSzAIY$_$?;6rHgYulHXG zx~}6U$G%&{V>Z9i%kIwkakgLVXrJ2t&er6f=jm$C2|6^HY?)KGPb)ZP|K1be9q@C{ z{_t&`wRg$eJ`w1e{-2L2^JTF`Gn#H`RdEwVk|h{dD}@-96{Jq{iVd4JK>Wb~dVL9Y ztQFM=>0i9Mh3m*4MX^ZrlvE7YUMBY^@fRJWVbnxj(bmk?&GBfZQrqAbW}`p>Zs|)g z#H+`Ny~FNmbw-2wDW|e_%Qy#4B3cu6SF%VTYLd@|m6$jL-L2-a?rNetgE&G!Wuppw zdO?;JS=2U@lDO9s;ZWjWjOJi=OhTepbkhuH=2j}J`}I!t!u1NecsFxfS}GwXy4#8O z3kxC`R>_ZC;)!EUiI$_~B<(?tS2r8Qr@gHRMy*T1{dBD$GSwD9hvgr)3cu3qlf^Wr zkU&V$kdd6A6~co^LhfSpSq@s@M2T9t<_d&eN2LakiDh{QHi0duhs3OwggrL~o%VW> z0=F2fuA1M%{D8DKcEsU9*rX*15Yh&M57sKIjBvMySR9#!1_j@^7Fj#nMB&?1YY`tB z#HrKsc(3=HiH;jHN!H~OZA+y%RLPoBqmadK`8+Empn~Fmm4WJ51Hs!1+FTjd?$%s2 z58RRliutg&YSrVJOm?ZaCm2|VE-duErQue-M_y!WW4- zsoSVj203b~rmYSc#|vaDa?ynl3G_*JGY75CmcQA{_o_Ym@x9qjx0$na4=Zb5Wzp%6 zx)0U1#JJ?W0jmMjvGq-YGYOnz}9I^j=#F>pS96nkH6T4l_wql{*tirvF7 z`Pgbp(zqIQfAhPeR6(+FI{+%RJ;Ds!0(F52UOzJ?2pSd;FkG|O^A60%5Q{fQm9kYE zmgzwqzdjhhAG zP^ij)l8(w@Osd`edbjSO7^HaeyAgIWm^^ymrvD~F$3c!!L^f5d@8f?HsTbtTJfK3q z&Blv^6~s-Nl`GvCZM_q~G9Cc8JK;6CkraOJGr3ELocBI4Ilm$b+odiAgJLK6;Ufo>+Ld7i)^TC+y0S`j1KmR@VRE z5NBojzX52b({o0V`!4G;bhRWG3k3^mlDiX8-T>Ve)QpgukW)-uWN_6%^VYvlfB4n) zm*J)wFWss!1t~k==FqmE-l{5Zq&YRST_49R47&rK58~8u8M{^OAN~8BB#OP0-}JP| zId46(>yjN(QZaXXe^98NVp%XpkC|liy*_Rj8FzYn$yk!7$77vIUIb9S*N=F_8!f0G z?+)S~Sl`t=bJ(}X$77O7-1;Yh1sJnRyVffCsAC##betO4d1QC=jySjt#)}E-s=nu* zmR*P*1gJM)^LvIEeVy@WI?tayr%{PcIPJDqO!V2F5SQbvdSNF&duSwasCf1A_g7z6 zDAA`?=hkWoqK&KH`%`4UH4;|;{_3uU?8Lnol2;vpM&x8N*;de1$Ys6+>4aP zlieo3%apVzXiYP0bM3SKF4{=JlrYDoww*Bl_zIieqXaOp(bWJ}>{?kjeqqJ?vCsWI zbYou7?-{ESW?y*JljXYGAM7kXyFB1cfswu>PFirI>dMalGtNiFKQmgThY8Av+79&l zDvK9KnB78J+%RMDT}btMIJ(U)4w++-CckXLsuOS}JcbP-UV1>={Har;bX;U;7;nbg1##CxZTv5&!DZ=H2r3&J6Xt3C!> z3xljlMvYgeJM>b^$8i{@akeO&!4ItpBFOX(98l?By;-F$or0l~MfHdGfE$r7+3CFy z|5-m^?@Z?~?o`Y2RS}=TSC(&krHe)i(N}otdWGv=#`HWk(R>wuI9k`i%sMo=9EP;m z*h8H*mY8=uEf}CI_8fgppoS0&FL_6~*JKN`cj+QQ9NYFC4SHMU<4LxtX1XDv;j$kp zFjU71eh&!?u5W;Oz1-;$#n#f@DM!5bHF~U3ETO#B2d_-RU2nSJZrPwq0Cy5X)x78Q z6b~^LU+c#XA!mDjpS@JNJeFO`aG98+Dgt-M7r}*~hBCHby6XYytvhEHU^{vC%F@vT zQ5G~(mwt6!*(m&TTZL{td?b0Zw-vAB!o@O<>|{m5Yg& zYpBp~I`m>AkOO1(wIE;!9>JKUjykQ9lwx3+?0`o`UcpV>Gsah_3N2k>MWbd_3B>Br zBuv4DmXiQ70u+rC9}!LPBEAh-5LjysGa;yN82gzEw(T#ZWih=Mi>_T@dAZLtx7KSy zKm`29^qw0TY)ML#2u`#fJUW9uDPia+xq;h!-Le0#x%vYKkYO&IK9Z1+Ba@xtOeQ7g zh$sJ?-BSZif-utWchLPu57gZwCK4^rD%CSt-GL9i0Sx0cqCMw%1d*Y%Ro|GObHp6 z#Dy0@;tzP(>vC+;h`k5k3nRqvwXwAFpgOzeuyx%f<$kUfDG4qf-f-+>6I zf$7{qOxX)8a9Hq{1J%E?-ZLiqo=|5W_pk^M+qdJ3)JQOUs5e&Qk zs1GozRcwxqb6|)I76v|dB+n77(+i#82&>jcsAa7M9srpoW(iX3Cbi zq-`J>{_%$63b;Kp3Fn{Wj7TvhG*`E&_t*kG@`gAz&^IZ|HpzdvDjI)!*pOXMFB3vK zhpAb52QeHwibpvq3l5Hm&J0_3gX{4oYslfjes&tKFg4y8L$!}mX(yLO4^E{El-QD( zP>vE@Z*&)eLlqbzuPfPJMr?y^u}0~J>0#+Ik=~Rbu=7Azrr)nztp^t^59Z`nZah! z=M5H)!L|f|IK`p5+Zh}qf2B$E!xi_NVCTpeqzI{kQ60__5b2s?3-)+kiwyk$4|gX@d(`kRDVq21dgzO4yrc+4}@p3E` z>8Wll+OhfnvQL;MMgaHJ>t$--p6R)ggj5A$vf3%Pn9;tj$Wo9cV z84oUIf(7|u^}>G;1>p^`sZrVVHT>g2(p z0-AR32*_uqV(f5+DZLdv$ury-Q)8Ib?n>A(*f|-`=Q%o}Xx@%ZMp3n#% zo*C1wCaR$DCE6Dd_~eroaa1dg*2u^J!Z6VQ_^;J&r^AfLSir=rBQgP%2GzzVnCLg~ zYr+F{W(*vjUBgw#y3tH+@WUX`U5+1iT!L@o{XRz_WWPmoz#8ZCAKI-0h@vf)srS5` z5DFop(v(CM)WAXpq$7civni<4bqouw*i>Z?TX(1Il5O=b>HrnTTk7h&zClv?VkOr%MJOdyZP{CS5aCgP z*%nrYsuTJq6mC5mgzGiem6d+EP7aW70@JjF^#!H$5nT-rJzyX z((KZxUxW0MDGKnfIrbR_B-pucVg8z`A|d;81Hi`jSUzRsuk|*Cry39b0~P(}ISH+d zuXFK~AV8a8!CYBHcyEl>3i#TFpDjc;hxfZ+cip7!3X7XQs2Nt;_*bmF)O-B!L_u{o zzitYOR=A3|-w1D3Br$WOLpqwNs)Ck2CVignZ^B&zcB&79Svaot9}ZYMVTjL8nlN3z zoSsJ}TTTqDXq#OU*k9O0C?c|#{da^D(oYqyPTBMAy;o-QCSSzv4HUd{pT1y6(!6~&++?zTlO`3g zDj(hobHX{*V+&5g-#IQufSj2GBD1>vP~@TyO$!dTPHfw8}XOTOY%)wkR8%o}VFGAZhc8aD(VWGEx^PM^|`%R1a> zOph4P`{(7C)jEcs!VwY+FOsB@r)v^ry0jR!*$fO{rylL@1Oce&^ge?hFw$d7(^0jg z0UGDzAyGBkT&EkHl#U z)gQ+)|Na)%KI+PgX&z?!YOjA+(7xuf9F)7qB@a5#=+cE}3FXY*7ivh1TXehK&2^V# z6D9mQ3?9nMD=9xj#1mu_#Y-zSa6zrhH*6h2piNnyYrBWhPw7@oM-a)U6jwx-8A~E_ z$1`-<%;Der7a>2!n*FqQr*%lk4)wfb{e^$CmNltXI>dB#*=^Vv)0fAo`9>t%#>9_udiE3`-;}buHLz!UeMl=d3kuu)Y-k-4%-@VT zn`|M3T#H(8xU8H6m)wu9Sufg3>!C2Bq?Of=DCkvd4PLv`j-q!|XDLrrnk=Klj)6q< zQ0zL7!9=@(YC(I~R)PF|PupTMxD&VWTl)5Vd0yV{7-p6&d9FN(ZL&Ssi+Qo1-SG%_ zuPg678Q!q3jz%d(OpEmYy={}kf8SE|QP`Ue4^e`xI9O`H?zXB*w0HiE`WzhZXS4mQ z|78N-A19GA)ondpTs^qyGalGDZ@;-Jlk@;Oa(O+N6@T&V)2c%CmG$t*-4f*aYHSCt z_^7koqPao{-bL0M;Ys`0{7W5bTFo1&?p6;Deff&R8h)e1AJ;J1y{QYEtuDKxhOV== zyQ&7fxH6$NzLtC%hj2`o&O0XHW$$RU-GN4@r5|!{u}w6rk1$OqgcL#J`KlF=m`wE@ zJ@P|~AsCbVK6yX}oc|p#_-7WzephsSU|%`X)*5Py1%@-5#!^kVQYjnkNJNdIF)YOF}T-+qqeYwn>%`2$LIpg)sysKyxcy$x1q1UxKxFi=RM&V%DH3l}hhc8A~^ zLuneDLE<&%a0K=dh{PpwUFr<@olz|bx!Y*|W&$FrV^M8JGf*y1pjHH7= z7(8|m%`crmGufl-XV-kSC$ziem1?0BorHz>Z=U97GHmmkjnNyt@|A-Sgv*@?07L+7 zOk>Chg%r6qh_))Qnia_DSYw~0?|Z~{X`9~u@3=_XSj?lNY-jzyxrOdS-&>K*Bw2^U z!GJ1|&G#=7Tu@2SD!fIkBxVqP!-LR^UXDC(!z#g)ZQyB*#}*_q+24w9E1DAl!4HDS z4cd9PeR}L6b%Uj;yK|hnm&AtE9PQSvn@Z8$`5aQ;dmDTC;1AkWAvS~*gy}a@o`3&Z z2C!e7mrBfWPdG?_z;odY=U+liN%|;1V+)Wfpj0Y>tk|r2@M``SmBeFsIkZnA> z03l3u^UQdcn^bR{+w-G-P9&E#KIAe|JVPLFn5~O&r@&TY(XauA*}Dtqixf1H#XcAP z26<^d;$c( z**O?02wx~^K7Y-4lFeiV7Oz{(Ldmcqo_>;o6fwx4UfPFyzyvRV3$g400lhXuHpl&S z%~nxMOpCT3PNOqkx6S81wl~M}l_eplit{CshqZ%lOlfczMEpgXOe(Z{Dj%=Z7CA>V zkr^sR0<_q$OiA{j*FNwd2q~LajWe zMVarrhi$wq292Epm|sC-M-KY#Jww#)wkb81k0262{<_Rcat|>NrAAPB za5{Bo9AhEe&F4ZZVUJO5$@2)$x=W$Hn^IjeZKMm$8u@}|?dZ-?&C%UTe2kv0q2pd; z@wIn8ebkzzhx@}$=QHtcyK-l-jyg-sW%6x!M;Uqdua}GQPw-}GP_fGU`%dapl8F~$ zc_d*ik&Chk>MIuqs-28|_68g1G?ourKD9Zo&WOFqAGj_qf{CE?2qyxrc0@FSf7c|u zzCI)mTrI{UPJ2!V^pH&bb}vMae%=Z6t#MWfmaQ;?;`nNXcy9HP&1DGB=iC?dk~+ps zAdXbBg{Z<~f!e@uB_6x%y;u z3Ao-Ub#VOJ?nO@`d;(Ps+g;j@jQ)N<}`-$Ltg@{{~oC(pYH zs-Gf#3zvDiI*Vl>R^1-?{+=LbrTSC`uy1ib1HdU>Qx7&SrD>ZUA zyb`>WOR=oMF(Ef6igtZ~GXmlK8w~}fL#5#Rd%wZX$LE$yoH<2wr!l!A6^4 zO3MTmo=l&ONwj-v;~Dq;Cw8=&t)5j;MF1+(du>mu22-X)E_!ZmA4oJgbw{u79WkeO zhU7nv${cJ&OhgX9tYP^0{ui&p%EbO(e&qju2h~5G{l8Q)a&HIg4+vu2ul2N$+KDE| zMrGAC6T%NcllwC)`v99H(rb$2pIm#_5HjxY_%NAYnsy@Dt z_k;CEhiV-&k{I>w&UT#<2{G?f(~5eTT87rDwo8wRi6%nEZy3@iTT>djoWXyi@+If4 zV8GV}IXvqh+YIFfsirB!&zWMLLE~AHll`~v`Jbbb+Owu{wBdsQATVcB?2XnEDEY-*^121`o|T+rPG&0 zAu%bjp7(VMoit#Mo-GTMx~}0r@s6a) z3qfPwcDi@WY1ZsK8^86Y^AI62O0$b4tnkxWnjV~4+Zrt+J*BL;H4sn7tf9myOUsL< z#inVJf@LFmZXcwvw7ytQl^}_0yoW)-X%6^phz}|VA@^`JKz?Qtm=om*0s_UK2-|Te zoxNWlTLQ<_mvnnwbCu0C0(bS^mHz!5PSxtaOB=?;W1&9op`JN(=WyJ#rSW(CnrC*_c|PLc%exzStjM##CK!u6$>Kgx_-jeXg*Y#{?yS2)8~@|W zf27)ahloRh)6M7@TVwt3C37XGXaNb9I8-OtX3{Ut;{rW^jP>1JB>Cc#+IR5Lnt;iaRENH<+_o;0Qnbfq^>s9 zt2EH3hfZT7!Wn*8ftA|=EPY!kr=`m32%!PkDP)a7f0t8d`?2XDgbPj|?d#24V6F~H z)jw&lEVNfv7C3w-Q5Jy42-mut`eOXyQp3FWGA!=C1eig$i@yQPvepu66U^(KLGpl9 zqhNHt*VpJ@AnO<+W-pA`u&||N2whEC6vg8LVAzl_3^#(Q?<@Qf-Ayxz9j*}aWFYY9 zDS+?Mw^Sxjby+{^rmaAc-EN@4qDU%8A_Q7qiQ)IXh^EsL{9~V=f=6i!^eHMfM^U7) zC+9qH$dPIY`CTDwZZ1erds>Wn%_(xs+(pG7rQGsNa0i25Le|_YmYm6nFk}@FKm+_4 z?O7rd1SD4DplE>~Z=nR*E(aJ&+ORB;EsDRDuG3Yv>zh36idaTA+aM2|mxf*#X-<_T zkbykf`=uIAkUY%3ss!w7m4zCsEXb^f%5kpNL~?b~=p%;aS6k&o7dt#Z|yTf@vt5IKUzB);G0e+3>igCBoGsI1!MGwg{ z#bUaR7RoWWVhsFJbEU>HLYs9;VFqQK@NmUgM*ViP2RQ>UP{nGuyUXEY6cPth|fZlU4rA7FjF z7*=5E@8;6ECu=FTHoGO4xbSuN4orA_uEL#jOSgI}Y#DzJa)(U%*huKj7M_0!KC3<< z9%(Eu6bz<_+IV2^og(Po3rQlf<$=uZHZ8rw#ykF3Xr#2)7;(EA_y&{sut$}kqJAe{dVJu@p@h5!5rxiK_p-1u@Hwny??vr!NF>j+7mQfx(W`U=&upz(b-l`^1y@I*CO1 zYPmprqjQ zHCghD;1V}2cxW-rPKBvO z_pGD&qtCVO(f+X85P(awgfNI~GoXv*Hq}^nP27%h9NY6IL2s7Cp*ZQ+C&tmS-1UlI=OJri*nqPwsQ8#s|g4~6F-d69hb`;$#FHXLvJK?ps)_G7Ma+o zC@|<#&yZ6STd0mMmR*5vLgbS0ci&U~x@>QGAF<7_Fa^83ihAQmOF$FI<9B+5iRx*kw5SNKCBS6SxV9$`bKvVZXq5JI=pUzR zpLnUw&{1eQ#2)JKB4MB#&cLB?-n;E>ItX2JazTl)1na<78WPGv>*S-^5vg$jEzIMf z8h*vwn4VCTC5D##i{{$V%hu4R+(~R<$L$tU3=?zFi%_g=c@0xCyy9rNxRIoRh&j9e z3hk4&Sn7yJ=`sp$$fWEuxs9h8P4tfXn|ShJMu>l01gz|hjs?F|RFlOi!LMBz>_vhQ zBGKOI+L(90DzatV`R$FwP@H1PS&V7Xoq)sW~xxM8PKXnV#`aWv$51mL;=3XU^f z03D^k7{=@p=fE^`ln{R}oK5}H;#Tc0l#R__Bu&XEC8IVjEJW&_d`xzKK$#vKwwsa^ zM7svqNgH_*)do8+nTm29anl?&I*;`~&3);Y}y3x`eg z$a^CPG$>r2fAmu-dwku@wf`iHRx@EQcDojzcS{k#1Li~1=XDh%a^uYXgyF{;KFw~BRSx@6VeM}?;G&Yu?Oo5tw6!o>j*b>9yT^n zxX=70MHx{n2qzwGTS_ws8;VAH5%bRj^yt?SSGiPp&SGr#l_O$0#qZJ;B+Q*6Q@K_t zwT24Ee*!T?aiZq73E8h1jvclMcrol}cDbS)>ux;LmiwHthAIgE61#O**o@Vc3V&es z3N2cw+rA+}n{(NB%M>pd-wxElPkKu|fF2r)Xy(S=3}S&bj3wXfCdk1h+`ytATRM{X zp9!`F^Az2ivT!EI+mds>liCfY+0lSJ;FoR^WjRg|V`uR`KC6bwv?P}*MB20e( zyElMm{-b>O_0<1g`M~%qD*pHP-^qs!Hl*$kwNr5`npD@jy+yowWK);t+OqJI>5vl=BnayMkG_x6gykDWxedb8$S338Po_j`z>``&80Z@w^86 z|F+pLUh$L0Fgm(IC4$vrv9H#1}YuNnn)K|TC zJ~5;;l8l;kZ2poJ?72d-6H#UCb12uC@3{`C@m5E(^XEbk<;-A@&?K#gWi|xfA;$r8 zvRU^AJ0$2ht4j>@Q4E%H%EgZp;rE*cn@ya|w>GU&=?DfN`Lk5xrX1z5&>I%~=HEnB9UkeghQe(sYp^jsdeY&;va5u^=o`UB-lQO!vG|$7LL+$FW zcH1nkp#ER`_V%|0y;qZ$`Hi)pYWvm;YH9!G_j40Ez@*rTsR_;1(am#z580V8S3-2b zn&gq^#S-(G5gxOfo>K5Y3N7DoNYU7t+7HW?91WtM}vF zfsYy`5^Mw**>Kv}hoMB5B|^7?bz#?rz3UGMWd?6aXsHAVeR_s=r`JOU$s~NdBOXZz>PgM?S8z zjt{_xua^_8P&Cq9OkMOC!hT6BMgRiuJD9B9jtiJT^T@n4AK0aUc3z(~S_EOpc==p2 z;`$(-RrbCX(OeY;7RpH79|b8FfYS7C7lXOpaQ?GlMtcftL-ra5+ z@Q>v6b2xsMGq+H8G&Q}8D|b9uwTUOxpoB!u8oL|iYtG;aJd*hjRL_`}a7g&2R-Fx^ z31XmGkNWt^wlw%rfLB%nNmr`QWXxNt&o(k!_}Ash$IcUZ&>Lh0CT5hS6AP^=N}Jqy z-cY&h)0A2G5jjzet)m_d!3osf&yUk1o-MZxdEdSnS`bfYbD6+-8UzLoa58@vEbCi6pan93$)Qx9w0!{BOl0VmAnn*3R>q`Zyw>w~Eww6Ghv3Bgqw67ogEgWY;)@0SHA zkq+obkzpG5|*zud}Ou>9?i!R|NeKIOa2Br|tfIPx>~;8RY{wZnE_@f!o~# zs-9l*u;<_rT7@@)k4iEqjYC-L#Y7nQ5WW8N@nS4f0BI_7&`17FoE&=0bB)X&PgF*2 zjsO5&Ml^$B` zPwHwc@sc)Vg0AWr_MrX-y&e#gM{B9zA)_Q9Qh?71{&JZyZV$Xb4ZghLwlRTg#iA=< z`SH>Rt1B&H<)4t_6vwwA*lxAG6NZTTH2@Zrq(6^RWh}vg2#qmec_=yC30h$Fl#hA( zxcvvpVgp_Z^Ho!p0`tveyFsGp#(T}RDdv?+V4Iuo`|)YR;CeWLrWsW1uZ2KlHn8O z1n1ydutTwXJx$bIn?`6!G9VwA8hynKL$-T&D2F?kw%m+T` zn)R_0F%*k=c(ABC3c7P6rvd&^BY?Ja*g*#$Jpdn}YY`T;+nM5J#rI6EE~eQsY3ruK zv+=VAGZUe8~7v)X?JS}GQ~+d(`lXj+v=LOs8c`g3Yq(WVeh&LY0p+p()4 zW`F3XNs}s#t1R`q%;un`7wtCJOW`AcuoqT9REf6?olui$mgacgjE5ZEpg-j|Z%~ANFb0Cdgu5=rp zSWu&5<&mLpUd$PaNo$W{^^4~AZ9H8~hfOUjyfzUQL?8qHIFh;Iw8M!lX_HEeiu=pa zV1;$J6{G#Dtu-^JxT3`%>H7WZC9$vvZeo9z`6 z7j}k9as41kMMQu-DgmmJMAnE5)qP6GPj;-+$a)>k9qgQfTf)O;KY1ol8pb4?xYuqA_}AATn5 zLe?}b9Qjlh+xY2#W*Z>CXUlVyPqgpO0 zTVM?%-EUsF7QSPZJ5C$Z`Z1^~B4Eim$(qKnTZ9^gP|Yn^#TLk&A0lK`%s-p0Svfqq}rHCw9=C&0`sF zidw(Om3^(TL?eThHg(dpv{a)QtW zXRj?3H?^&Yfoi@@)gw5=dj|x>=qZeCO! zOr!c!T>SHF&K#q#m{iz>NehMMQ)TCBj_iH$cg?7F&PPjMYo4XY1R-)Ujx1juU2yIF zO7bCk3kWQV?6mMF9XeZ=LEwLe=|9HnCptmtz0BqzWcGIhXhQr&jPGG#jt!c%ZQmpI2C$OW2$#Hcltt*fa0_iB{!E+9xL23wvWb~M z@>NJm2VV`rVbj(1T)AXQ+&N)(UMM?Zn?-7~M6A-=1`*Dk;(npP;@*b<85Ae6h0<`T zkV(A@a3BI@2W5bXa^rAhGDp=vW$Z@cbqF>RV$6*yL({?^!7dWkWbEUYFk$fXN>JQ- zX-g0e(b9JBxHfo)5rT`M7KN02E8m&bZ5EXUp4r4&5h0Jcp zm*7(fzd4QE_zPwUp$x&)(Re#a^$jc4Qa;CS581_LALCvepka-Q!p@eO^+te&if)f` zBjJw|z;>coM|;w4JN$JcLakl3Gf8@4oWKqIyr8q`2x^FqJv0_z6f<+uBe9LtmMHBpc44sSvfJTKU}-dUGire=>w|{x<`!Q8HFQHZIC(3 zqMf@_I=8w}A}R+QzA8%ABJhwdL#wds5IKY?`5xr;PAHobQ(uxs?J<3mNWUH_O0uUN zz3P~t<;aG4m-Osd7WM4bSM(eZ8}F0*k2zfC#&A5@d0pzk-+0aL!kbV;|$6 z&hl(!RKN=C>y+@avC;S}LKkqYz;tJvJ;#pu1m20M<|)&~t_bMElba?qt%_tRjx-e< zN0%dAM|=^B9ht!Is>?S3@4=}6B}Irha2!=ZY3i7}-Fs&TO2IZEEGZOZ0OVBgYc?oD zoN2f;*WmIz)n?*hwQbl4faPRvvX9<75iM8ju+`4&i@u=${;z zj#$z(BG10VWHI83+GO83p&fiOou+iXhSiEtc08XY+f6;&PQGWIC6&{K@vkGsR9{~3 z7x>bf`*itEqj=}V?p2Fs4-9QC2fRo^meSn3@y*Xw1i0A3)dUc!o-EDfI&3O=qKAZB z51zzYYa&A1&iMKgOAXo6GO88mD7779Mk$WK$5qJ45c%nl$N?x)-g zE|kCR&+8xo<(KhL3|lX!2tty{w|vKuJ0oo#rVeOPN-N80JlXmervTJ^Qkf7I1SSK6 zhNUYld9*!{?qNSl^FH9*WRfBPrdP62@M?FW*~2(lu-d&4^0a zC!BF#{nr+u2720wDZxs;UEF0tM;2Qmo-l3r(59`t->K2!tRgF#o3hXQC_D&o7saS` z7vUj$wQ=+3=LxI|{qpdN`5$)&h$*HpX( zOkVqNOdUF<4^iOl7{dNp^t?P^b0U+KQ@a7oj$o~p21q$OM@m8!B?MYLo!40(7%$RV z`#`0k7vo2LcYANZ==hQ!wa~{AQ=x9q@pLNDjhVEAG0=26DEzR3yN6yRnHs|snz_$C zOqL88%K>x1gy0(@iJh+gC=^)NrE4=hIP|r8^-rpQNCYw1iOn(N8KC;u6Ppe90T}d?zQRDo025}7GBZWoYgrJVrgaY=-%-T<~1)kPv^l7 z>2Y`^cU`6*kiQp=ILX!2Nw?MyN&&CF!<{8u9?X`%9ernvVe1w4886y+T8RJzWPjaq z92fhvy|q1m?(Fn}dDchwB`W#g=Kx_O*{#94N1C^F?|ALc!onc3O@`+LSt!bbBi zURp2DPPcR!9GPE&Vq&A<|0%KRz-<>`wOgA52P_!<+Sevo!>SGIk*0g4bdG zK%{`+t3%`5^M$70*{U%ZQIqrec0cw|)2Oa)62%ZPaS`-C&4IyUY3S}&ZCdYeZ?trJ zpSDlx$HahaN+q%&4egwWl^xz5S2x)$Wv0{OK!dWTyn`01Bt~ZsBoEwdpCQtawMs@P z@J!0QG|-~yzd%H0>Km*dom$!Ec?BzvPxP6fAe7Z;raZxf%NIgFDLEZ*cds+{7p85m znTbb4m=Gu03>m4pR}Uu>%;xc@R;o$Vp3(&mri;qfAHyW~&?mWcr`aTb3C55}fBQ36 zv~MFtVS54Z(de{>1Fea?up^f%#P`7YwlB+> zX4(y(A~oyF%TxMATaKQCHP^kOVgLQ`d$A6czj7v9XyxaxqKU0Jsj)n|v^)cG;kjmjq3JoKW2~=fPyDa>?xRbJPq4WuBvfaj{D_Sa)W(|1ww|n5&HD_RO-9gJ%>p~RP z&ZNg>>V8ApFj!Sx&V0jWU13ab>x?S6Z-%Ou%&>j6Q%e-AQ8*gS`XjvcbE{ zadItjm|?LZhWideF?b?V*N3Ra(mQhuG&rTYApi5CEp67B^!?v$y z(Kt(c^=8#ZwaMnkt`9SvHVKtHNOk#jk*~Rw5r8vzvT6^+eC|djfFoD-!+Ah+Cm-6* z&hCv^)9qdV3dyoy=csE;kjb*|9+<%}0Nv|JM*sjFDtJng-)W{5PK{AZg>8Eo|BM?s z5+!5#xB%rPQt#RFVGIVHDWZKHCrvq@II~LU2rLCo@Y){||6mxqb6q1&*%FHWLgREE zY&VHi7NCG=Qyk`m1n=EzMm@8#_H4qYk1B2U&Kpp;`}suoO)))~w}V~lc*(D)=k3P# z`eq_4zArxyPsfWV>(8@M4FNh1fc(Vl&H-Su*0gwXrHBm>?S+VNjoD->W9FBrVoC51 zAm5RW2t2pHz#~_fDXYBhEShYMP#glQ5U|t$4*j3QSkTLtQnI=}lKCV--JI{o!=ym$ z1`{7rAeqXz@CFv)A3$17RKP5RraS%+hUjnb!s9@~(*-H7)vK`AW5 z;$lGVz&X{0#rT|gX=>8xIqVtji*=t>y)(+t9 zk-OehAy5_SEW|~Xyj;FT0_)#kYc*rHJ71hTyECA^#Z+2CR@}pNXK7MCTqE0yw&EwA zSVo934*Wy@5+_NRK3emBgk#4C2hU02PhP}%XOIQ~f^f?vhs9kjsQt5cfM@{KnFvl8 zhIox3eo3O!J}jcw-UarIJgeYJ!QuEK#+-Suy2ry_Xz2w|gbfnsfI`qj89*C?wU;AI zcnof|UO-;})@iV;F-?7E3a_!_21Unxs0#QbqJ4EC0_aiDKYU0NZld|xLp%fG*8%F` zUP=C=tHhT_>qQ2=(qd8st@piEiQ(n-SD!oG;tPmpLEUjmMXO4(Bc`}CA51d%Q=a`K z@?~bT;GVo}@H3u7s5DI$oe1lM2ol_mLd}V>Rz>cemZ_;}e+`A#*%RL!Di3VA_OV(e zmF|FkZAyj2Nx4d-!bo?XyO${>oc7@u>=%e95|b0e+=1tfAf{x@BfzhWqF|7wt~FD3 z>j+1vaL53;f`y0x9qIAN*#pHFTX#l3cC->_<@5gXwi7e8P{;1biwRB1$hGPVyI@=F zjz^lub zY6%Znv}MJu!aGNK+gHbwe%gxqC#4s(<{uHt+}&YcEKV} zokB#U8|)i#R!5`NS&%Rn{~TRsQZB`bRmvo@J4qRB#f`>=ixmck2}i29Iejjws0)qH zrJ9Ze_AXORjQ~HN*-_ zlX~tGeke%+)(5*C?kN&10MX;azwQMhh*v63h(So?9xQ5kb2OoxW~Op0_7-u99)Ha% z)1(3>V#9tO2eJ$S3OouA$%or>dGzXIEf&V|?_3ekFhZ#<+D5#iU|ES{ znp6ssnf4vs#-)ChS3lOy&nq`hb((zkyH7J!^@NpRiweT!^@q805`R|53XsYCdq$OK z7OPM0NOJc#3Yi;}17B9p>pUZ~q6~d^taZO?7wv@?GzMn@=U^n~CUCwtg^_GvV0L>C z#N&$D#=En%Y9|nnd}4{gcv?p-V+)chQ)zN7ihtp$M#5`WdGvuyyTd^lyU*YHhW+=qPzdtjj9`ZKF5e5fA_ zROTw?LKgQtVPm3QpjZ@rV+ZPN+5hNC5{oQW~s*(#{XA9r3sU89%pNYZY zH)5uYw^<`#)03A&wW;#2p9yUu3GHJf39eD?Rd*5xSiLzwQQ{=$kqfdryJygKBh*pm zUGn1)kD2yBra4j}73ZMuDE^yFXFqc2gBi!V0ViJfIB=1~R9#OtJEsQjj)CdxRy_R7 zsarn;$d{>hFAqByFBVg%bW!TSO3#L=b!3b~-LtxbxDgA=py5E@c513lO@|x`SmWv? z_!Qy2DFbuJ7Y%$jPIjAi;+t0G+7>Mmrn8V02Y zKlkcMu!LltT{~*ZbyhODzz_wJABlx2OWWeZa5X!JU01^HMwku9 zi34lq?vGi!TojM0+LU9#FUEvuMbeX{-Ps-j0#NgFQT$ob);DSa-tiD3+wg3!0yD5QWi1U5r-`Hy#*eF`gL&_87*En?+ zT-XgH{;mSr=u>8p!YKraAUOzE|0*5?lzfy^L(yx$DBij?BiH5#B+kyrce|__IM5hs zYx?SXf(zD3B8aN)?~VT%LRu|zr0`oJlG%jB4}uU75ZxXwdEV>t`mCuu`#D=q!%qwe z=`+W&GYtji-=li8o!}n^F)a3lg=ej_Xy4+gXGjt#3u)TXSI3iNz`Mq}`-!S)zvj|n*D@3ID?0do3T7ZrZn5?XDM?Fl@v|%Zl4m2c zHoeyF-=DbOWf>1UFNGlXl&l|LYr4)4Z04&Inkrl-&O1UK(amHCev>^~zGm>K?C z4Ys7I<*?C?=si<2D_w$l&f;%JDqeCmSw_xzz;`%FVy+j@GmAvxAQ?v`v1Z48(&K`T zu1m6Bzg3*pnF<1`j~+49vO_0rnt_@1b-z!Kub0`S;+Y)Ja(s7r;EpCGG$dUDsgOCv zS8bA$KcijumJ;I=lx;Z6OvogwkG64gKTuMmG$g$^*kyWP=WpsD+MNe;%gBD4NrGv88&G--`E?g)^ zr0@UmCd7!BR@1T0BBPr$<=ICWP@QuOjaGF(qYP2Mc~wfVdiHx=mNsRSXcDh9iHu8> zaD^f&Qi_zJ;dDF*RJd;cid@Jr{--M2W8wo!&!efCHFKk}wx*R0cT$vSmgi5&iWpdD zr1cDpW)QffO=&Z6QMt*H1`bq6M3Zdrtv9g`mxw|{b-%o*G1sc9S`Zf$d2c_RP|Av} z)S+kTp@&l41Po2Cfa<pX=V@=5f{DXwpGlzZ|HNLjB?oUAsPzzlm|7 z%#iRurT-rkjLN9E3pP?9kOAg_2bwq2a}NZ+`DuU)IC)Qx)+lEm!FIxukyVb^1} zjj!dEW)K)+0h{?nDGM|4xP{xMwc_@a*)pT3&Al_LG}?TF$ULvl^grn*2O^Dk5W6{p z*&E@0MaxKNzfMC7D<#Q}lLYdpp!qab+W!4cO{q$FyPmmT`&TDOD-XKz*|LS&sFFId zF>WE{Im2Vo}{6S z;x^&eS|F2vj_>>{9K;54L!t2Lw3|0Ssyqa`PKbo~2~%)FRW@!R-Gs3fla%_qzDCQM z3fvx=jBSYc!}ynHTruIhr3-=4=9vbe7$5JU?~WGPN>HZqq%x8gC*ffzg1tU9J`5)g zQ1CJXA7LUHxzMycQ%XFEPz>outP!LrzD@3$t|_1NfSoy6SVW+@eS*=gGwnr{494|| zUH3V^rn6my4*^4~%_48PJJBQsZ6A5sf}@44Ia_TR`|A{lKadvbgppip7uzXYc7gWE z_tiXddV8Qcd#GN0gkJVAifnyW^Vu?V09*xQ&Y@V4If)QKgBa^$NvD!O9Pa*F`^GR%io5Jvug})(YBWp{OdIKxk4eHj5GvB< z{RgY`4BlWl-zR)EQ|AEPQVth523D27HnOMMa|K68XC!~d7Zsg2)e-aRjrcwMfHx`v zX4t2!54%c*E&SVxPq!U*A&Tz5f@>YEZo~pwJ4jZ^}WT8 zz%y4~DiFu64rf19YC68QVAwT4r+q^TDwiirvq*cY@DR{+|8l}OGa~4T za{=IXY22#tdL6Tw`a5%G=3*t_gjp|yUrPZdvXCOo@F@;4Y2a+JzUR_7>VzSSK4;Kn zs{AJqM3(%W>daT}z!H^UILK&uMnb>_W5I>((+w3wg|ad!_3DYO_1>oot*Gnvpe*Aj z3>R3O>&quWd1!He_LByNKPMcO$v3exr`@`JyvRurbh~ludnV4;ivn~cz#|uy-Soua z*Pd-J7LQ2(;2H7VDO^0hQE`w5kMWLr;GAi!SB`(X zI?KC=4Hbv4N>dyp9e6aJvIY^jb6)%KX}(yL=JjxXAvB~u^Lhvc~+|ZQeQKv3H2LrJAJiX z2#dN|nrn8%>v~)?e)CwE`d;(bJ8^W=@g?HJ?Di*H zXwSdOI7_({BubR?=Dz>VZRF_z$M21|(OjTYxHLZkW?USRq?n^qNavOO95+6uOh}fzSsVkH}xYq1#SupNGGc6O4S+$zB7_(S%@hJ`}zvsJE!A3%o03k7IlxCS6IL+6C` zOE9eC3XN+k_1wo>prLH(SIZb~W52|K4P{hNJ}uGc6-@;Sa!LiiMop~MN> zhqim}om$!1-FWTRjRRSG!hrcJX$0R59U6i*uv7YC8EK22A4&JZkD1Zee~86K2~89& zh+I<$>r!KW=%1%X(0>5O{Oe`^(<7dlneqQBhW!6P2@IUf|EGA)^ovpcZ(sRSnmabX zpoIUqw2VB9P%9J)1NH&Bpcm540`-x?uYkGPW{My#HUVz{&i{1d7wK?jY+X;2G0XaK zhg9r|72S$Ha~Z0>k;-wyJQJ6EIUCnKigmn})8WDE@3* z35WEANr1P~oG!q#H%#p+(-^aFBb$XDe>l%aM4rO(LYjLWixo!6X<<>wRZ6>R0R%Q} zRSy%4(-^nkx~oIXJX%d&TUX2%j@fua!RJfeq(DR8Ov#3oRX96#9>}?Fv1)^8rKiv< zZ-`tHi+q(%GbT~x)!2&jVId;;yd>$AR;xJ_nJbCCxLdE0%xfB(X2p2Q9nol`cAMOd zs?J-{SQE%331Oup4QG&!rL04ERj`z__)-oQTNI_5O8qiMdD#<1~Jl0lb`u$LYDSE}q&s(c= zMUIWNH9nnc4PTdsS{v?Qk@((`FL*!e*1gUhRIin{#b7*5#%TL{H^e-+*FSF zT0Sy+V_yeDAfyIjOettgw;ScS&BLfKy>8gX`srim2XORR02OwK`ttU8;pu6Ec+zsx z7xlM2ATb#V$|sY#8Vk(E5Y>hW4)g{05V4UFQXGr!sz_a1)%Db0+XfW)P9ONGNonmZ zqGT#SvHjVM03N#iDP#t=incBLR~<_+2Qs2scY8~>OVg-i^Ze)m-TKM>>#eVAYwI&5 z>>N{t{79fWmoGxVrA-Hw$HHg3Pny=?!#AnFz zjb|JhgNt9X4JI-`xROR9zZ%q7VA-_}YX^pI;Nh>5HZs-M+q38zd+j2dN=ioxU_t)A z5p6s>ZI1J%6BxK@_?jMxllzu!N^%CeBAxMf1;ocdHrVi%rnzcKrtx*&s2X z&$14OyNrMZFr&)|p-Z*e?8HJhCLC67>X$&p6C)=BvtYIT!u2&Qwhl262LAik=oZbr z4|;;DK|~L_DcBdvGe8PH0SbaZm?A=$7fN>Ed^al51)0TCF}I{XF=Vq$ z?w5rjl&C@u<{mQvf19)uq4t(xda%G*-pC>@x&TKo_v&b!YBZ7jie2O1o9f{BH4RX6 z5@aSXt0-xV@|4OPjIjq8VP+|zx2a`KOMk58!dG=g2)ff%aN^8;r-9!FnFd zta3}bH=qf$9N;5ITn;wGYS=EC0}HHW8;Pi0yl7VMgn3{s5E=2adt~@zp(bmSB1Lr1 zO5SG1%)pLjJMaYlca4aoO%em%Tyks~sD^#(F8 zMvFEEqI~KxdD+&^Oo0_}f5-*>Aj9SZcub1N5Ru9`thg(hAh z-kd7u3<2B{nzNRbX;3Fq$t7oG*M+giEb?Yy?S--tP=5h286?gc6Rf5|Z=RS1&lxm{ zVmiC(`=~XS1q*7FjY0Z5u*|r|1jd)bAGGlTx0{d|TtLOKsk(S{-CUZUE=`Z;lz|s) zCQU}~oc-oW@5aF_!sQ9?#uwChu0NG=1Zm@-QQ+>&seu~A>V|-vm$9ljmInT)-n~2H z)M3Cu9_h-(>@PwG!2**}u1v{HERkZ|{NFS(PXVOO+CvoLRr5wO!g+7J@ zW&#-p;WH6VuJkTC&QSN;_^nDuZtbu+n2Y&z(fN_BmH7&GlzL77+DZ&!e=)%;%&WVS zlLc!sOBvrp&;=(kC;3b&;65t?jg72W%mK!$v&W?+^4Qu>l|>DknM@E7l~YOt^zQo? zU^S=xzn!*NS^pcwhy8!vYhTu~vD*+u{?5@O+U*%@i#+N{vO&zlXc9pPLlqAy2y1~d zcd$W95yz7lc0hR9xyjff6PakDgp>*LWzuWP%E-?4I5t_i+jm7`=<#`uW1r>y5xo<^ zF8*^doS7Mtsz8fQE<-%LwlCB3>hbnV?ectu{bxv=2{S`jks@z@#QSCNCD-reNs3SU zPe0?hOLCC~`)!J}u=HTgumA*m&aeV@X*938L_Tr;v>_R+`s=K&C_r(q(Y+u2w~rKi zZLd$utH*G9WEw;3T7JD6O+q*s3JHGR?eMZBQ_nxoVeho&hIX|(E>8O=CxdT9Nci6m zA6nw~H#NRrcnr?T*a;l@m{E%44rmFQi5Jwc%Ylt!ys^zr(CHZ;#d^ zK88t>-am12;Lk=JjDydcpr}@b$ne8zJMLs{ivy9_H9RgjbK=wf@$Fof^fq){hLeuC z-;D+rF8b{?(+?8YUp^{qDav5bBZA!q3!q&D0IQjRga?geh!osDD?n;o-f-P$z{gQ+oenL;d7{DkcLKQ8J_nhZV8MRm3+I-BV66TRK_8eU}- zWX1}(jdh8%A#nY{(pjRK{r0ZLNTfJno++B98^kYh3=~r}B!l2@g_@Y*x3~CN0FW-NN`C&X&Y*2hPgfcpfNk`O_1C%7@b` zugUQ7-L}u9_tw|N&kfFrtr8&0>&D-kWL*_ke()l2wF5M@PPO8+alKSF2WBxJ|E8v6 z`kO+K4FR$ao&Sg*e!UATbQ1P*f(9{v>hqJNlDa`V6ZOyB zSi88a2OU>m*4F>7d|_|e^s!diyMz0IFymhq{XGybdvs7nO)8_D$tMQ!t_UqF<0KEv z2=@ot_LN|2wx;p38GClk(2FtLdTm{f>Fwau0ur?)%B1b4qZZ8nGu39HPufJi;69}i z+}<&&?Sk%940b#M9UKe{!xPj#cqXBlw|M4~elh&e@TS7^$BLhErmn|82M<3JKP~~K zct$^o<2A)i$`j`krq{if`A|(>{zC5?x$-qFebkIG`vG$xOZ;}fE6SmU7%bzCeRr@g z&SQps+4TbGWaiD|dIz1`-y8VX*7gUqwpW-VpQ*{Rt@V{3rtH$!F@a z2%lo;Jr+-YEBoKxP*eRfEe0bwPaV$M*=j#p5U5S?!oicm$hi^HWY_^^CyV7UcK8Y@ z`pJ>c8c$8GhRVWKILOXO1+{RBE}L~|XYspW)K5)C27C+8B zFmY<8^mM@-0f1Qgn_gTpmC-}XELf0nFuBq3yw{>}LR_MK0tTYbicvGOJx-CWT>=x| zsgSaq0fsf#jaLeSaHMC1qdx#b^=)xuiJWa&8rX{R~eBi;r>Zj=(i9Dxh5Fh~pg|f6^ zDGxYj;y7E|XOjIr<}c+bK)m=+x}QK|gAYAN#_ZW%Te-otF&`9Afq**U_~U#L$TVX7 zy`M=t)*d%fBrzLi(`IK-@x2JI_XO6%E9?o4MuimrT{MLAl45wWO2sl7o9HVkCc(F$ zu#P?^c<#jq10gqT`Jd;HU}YyF&8)sL+oln_F0;20_t&8V(cTz4Vms_zA}T_{4fs-; zA@FYtCF&-je31%>9 zID9|g=u;)kgoQLM#e3lBxs3;zvK}be1imw4BF?Ui5WuN^jhU^z+qbs0 z_QxGV$_3D6+=oXw1FB1;-UV%tE|{bhKx#mw@sL0<=hb+E$XDK$5(Vwkbnvb4Ui*V)Wv5b9B+m|y*5bP(`klzZ~RtRAkGfbeg_X@o~ZTAL&;EVDlq(l9V zKl!XBVW{^`x#|eq9S@n*D-eP?iCG<$j{G=nsMmo1ci^utJefC{<2T-U?F`J}B|JJD z8HI7XG6H9Bq%tF*5gyXtHD1>l{|c>2AbG|8-~e|4*qv2#5OARq`!5lel8~%{_bmIE zQ(h>La1L;}Ycy~{sjPQ0%-AT2+q0PppL(dStbIj2Aot0W1W3ET?wOrnl1UUTQx&$X zqg`Oh)~q-(5v=3=eh;4YR8lkfJvy2$-Z+UxhTG;oQ8sb)uERYj;n3CNE&1m_sT~nj z4rSSi`XNwz|EjZ!zTu)e+X92hhB!poPxu&D3j#+ey1s+qSK7=2=r zQ;~-Zj_=5wa5U>6r9zz1g_8lPQG8NKR|Gm6#Mrm>iHrqx*D~?Zv4$Dqnj{0;X$w#D z<9k?plqmw%4~9nHP8y!wP=zE|rIS+^I`14h3n(&+?-1-F%gSH?DUkwG`~-T+Ef0jm zi@Tb~zrytE`yEvWZ&+eS!F#)^vU_^Rl>hE`Gf$~`3F`I}iupEs^;UPY3y;h!)QWpf z{z@*1$F{9y-zO^Bc%I}Pm}J-&t0_k_PsrTYHhOZn3{qi?2vM%+C0%pTx@jaX+o|02ZN@|_ zD04DU2C3xR(Kv-krL(2}5bqluKiw1M0@T!L*TANOy{*1boyl`VhXEPv3 z8*R>&5pY}*%Uv(%Y(Q~LB~X~<)JkDKuCv2eJJVT5?b2BB4x7e-o#5bP>K1zqUB(B+ z2QTec2VB6GKH6q~MYkVu6xjq1*ZgEb7h$9k)w|}WBR7@+ady_kr-%QHb|*xokWh;- zMAp+Ol=f()_xURA0l&U$)25IV^rSHfND3MFR(*T+r6LK!p>zzBvaca*h`67m-1S~8 zf(WbTFRtC^H1p+l4kjdq!_Bq*`D^<>AiWFWrPgy*D1mf#t;@{_!?eO)EzV&-Go;p3 zks0c-(ASkE?tCN>yYZxZ2M9i%eVfo#_D%jg>g<2B$xVC?x?Z>FBoEoUd`Yid*C4rn z*+(+2n;Uo3)vb9WJnIvuQup>(4Aj`Sw$q7f9tmt_4`i}#Q3m0dO8fF-%gcWDm$UMrAMvl85%YkEJeM12Jon#DLg7V zipkG!wWkcWeCO&@mEYb<|M*9_f`GX04Hs)IEU_U)p_XGHl#BNonY>T;RE4b9B2-_! ze9N*w4MKKS?TGwNce=2HkagT7V*TbQ{Ro$3c{^g+y00!`E1Y&Ppa;RzuiqO#l0chq z3({s1m^WB08;}+Zu>d@i>Ijl0E}3b3S2;Pg{4Mpvm?t@3=GIynHXi4kdQ!)QR<0am zn00N+0N#I?f6XMe2G6|!nSYM$%8H5H>J5e)t!0@SWwTS@bQT$W(`CCS8@3ZpUP3VBxJQ2aUDYb6&Y#wbW0#1=+2pNc@HKUr#G==`(CBTp!=ddN+FAZ?bn8WU5X)oqkys5@qRFnTW${ zm%cn77T*ChEw69icDKct-WiDHD44@O4}%|mJ#Tv(+&>wtL9?VQr1fmRuL%FzK)Kxo z0uV1eg+q#yb%Tm9BEf8p#f*$0H?CqFO!+wfX#@G(?QOl(n)1*HUgY}W4e(kx_aWza??*aFL}%vB@1MFo!Q z*izSYwr5nFvKm^(`LbRH1CSAv6B7UMY|(%0(!6W>9ZhGL^VKooYNMMH<5#<0TJ;=9 zH^xeYm;{k~@G8^k`|(Vq<0l1h&_ugp{$0mmY&cHKk5=qlijFSD-2yL@k2) z+hL9ykt|#jsZ&PBoi0?M2n!YX=^3vm&uSs*zsr;nP_81eyTb6-=2`YpJwq_0G(r# zq0zA$itK=(AN+T*H8Tq#zR+FWj~@C&ADDA9R$9e!5Qr0Li*9m#HJ~MZTxM*@PtO?+(xmV_LXtfUTBA1Jae>xHeV=|-eNi*) z2zEG%UKSwtibkD;8s^gXy&P~Kibza*Hg;?vB8Rc?lAU-e(RqEdHIm5IgAo;SH# z(AXu&*mnuOpu1t@4~X+`31nKQlcwzIxyVE6nbUkfxC&7j#4tZN^%^Mnm z%WikCFIOkdiI6^-R22wYN&Qc18i_YW6C=M)749!QhpZTfEEf)VZDtxrjP1R4>RE7S zsF6o`8hu$47Xju~>VhUbH&}E?>WRr|Fxm>R1?oSrpit=&Nw$MZ9Tk-&5&!zh2$q}O z2nCJlwYO_;(LYRmk4ooxbaAQaY4eB=eT5XDP0nQqN^h7v0pX9BFjsK$V`tEmo5p0p z-TGr6Y;9q!_rTQ5(}-yE-wSBI-(OBjd^Zse$O6w6rPwxK4hK~PJLo=h7A0o!#vEycIOF5TD6mU9O;Rn z1ZY7nxaAwwy7{rIQc^kKmM9@h+XEsVL zciz)lVv82LueC?1<49*)AqpAIQ4Pc)(@_{jnAqVNQ^bbE)og%}vb>st!g>08N?1)$ z}e>g|GZslnqwG@o(&xyP2T3SgI3P<;15zIks?7O z_#@D8ZY~1bN_|Yk%1L0`PK2xoLPa&NsY4G#rqdpeVqbDMM3m;w8D!38 zYDPZ!M!zyGWI3-&WODatlAazs;D^tgHNGhf8yS{Vj6H^kW{;Meo6gI3X4tO+4a1#~ z$7%zI!iWg*G^W@nNOG=I5E`1n_x@Ee$a8L;1!M+F3uvge0-Bpx81=<9NY#losiZh{ zE95YXvA-#ryrYW~*LA|u1gWq@3^!3+D+1fV@#@<0j#`fWJ+#T2?j2Qjl{TNJDtf=y zl&KI9S1EmeJvtYh%sZ$!Ynv_a)#>YHl`SzN#sy01N%Hn$9jG^g>uW(IeC3b9GtYds zx+~rnI66GiIViQKj~leBKVZqxN~H7fE+1i-|H+%VYy*GTO^YJl8qzjQEEz$8WCu%R z1uTOjd9n+GfZIZGJ>)>$DCIy+&!E)zgW|L%*^XVU!XeZp;($`g=qKD%UM+bLK>jW6 z)X`HhVQ~qZrAy%1+A%F`jEeUM!~WY9`@|FXLPRT@gW4E;icitsvRK|u2CV5V#kKEk zWl1WI?aAQnlN@Nxm<{Iu;EPVnZ%Z_)hOz0v&RK(9!%uU^rH!qekKP)1euZv<)M^4^ zwO;HR8oIr;pBdmVT3B(jUqaye!fGR6{9;fG@2R}KJYDI+GhSE>>jKhmc!-54gUPwe z;aEmX#H6lqN}PEn9+JHADu208il<+r6S>}l!;2DcVB7_>V zP50ZSOlCRLo&(eO`6Q&Sq(8ynz|U#P6@i*(T4{DVXq|yM>o{ygx@0I3p*H=Ul|5mgjH!K=rPtOj!q+s)X~-n(^zv_ZqdH<} zLGe*@`kk0Fu0RH84?^F=c2nWTXEY*${Z#Efj~dJ8S3GVGhvurfj7tL4PB4P?xOo%nag&t=~re zS9ddwDSKAISv0TxMe8+!@?A1(!8HYseL>9TR0pPc2Cw{{)ktJkh<{9Vi2wk5^Mm!e zA+N;jj@&Ld(%023>dhg4>U~h0z$^LmQTCA7=C>%bVFnYU#f9_^4z>E#RkwrdjwAH$ zrM-KksYiKR5In%74#Q~g6QIW5h&y}X09Wc95#$m9+T(e6v<|doz13WYXN%322f0VF zLHjG0LvNtuPNl^fFASfEmkkfCxkLfQFt0>xg@F^N4#PcSMRGS}mSzak&#PJ&e?n-$ z!KGLAlAr+A%(l8t{zR2A74kd?x+4>G?-aFj*o!JlE)UnOK#PG35*=5r2Hv#pfdiM{ z3?*0}7!_d^c&Oys_R1i;E0 zSe*>e$YA0K$qRQWB___N!QnVYSq}UxuJLZR;qkyht!+{CpaTwN8CRTVo>U8u4nRj$4+~?{hsug2h*DWYd+)nFSb1vM%MrFUgJvZ-(I5) z?LT{sLO?U(rbL^ZmfV5_K}Yt`V%nuFM5=zKj-;~0gzWRm3ocNX#L}>1L*~rkFtNBc z{LB}(|Jk9hAcddbQ){ML?G80B(~x-$1-lyx9W+|fP?4|$Tf2rdudLr*q|T@31Hvhl zCyx@b3ryoH?+x$g=lfRX#heUzw{4VTgG9eI5h=J zLZ4&;>V%8B&|(BRIa2uz4Jnf00CZv3Ss5h-uJ5XTeYHpt5dbMk!|t%6jKNeeynNcp zJATolzGL^Ssby^VOni$ZkVP_C z87|CPW1S&?!(Vlm1XN+(HR!T7sJfpXl>{4egmq6bXPC(WdGwGeR;P}NnGTEjs-L(N z|1R$0ZY(rsI`fFjEw?eY+|W}k*~q#Onkm~*Mb0(G%bcxFg#D5oc=)=Fog7+V;gFTH zt_OFFGN>H596LUgR9aLCnFL}0lgWB)KG!#2u+8HNz0Y4+x^kKhaC-)5&79B?d7FdI zOr|9DcJC#j5~Y$5?!<#Xt|MCo#%e72frVD2j_&ZStNf_jZy}}};9uLnyxH<&*Emb1 zPnSe}#l>+5%}BQFuy=D!TG@bb%nTafU>?ZQ&?ZMj>+bW4Vl#PA=tw4xB!|;kX{Te^ zEy>!Lfsg7;^`EH=I!^T^5Rch`DKq&ksj6+#SIMqmDPZc$^hwwF0UHii&24re!zsx@ zrkkOVKIKnb?py!|Sq<)^Iq>+?Bi`S8h;<%3w|Ie6Y~%nq35DX*MSk4p_+-GK4&Z}a z0k0K6H5zo`EGDMqWS}?gs|{h-)t?Tk9)#3dIfbm8tBAVY^3gq6`}Yr%Vb2HM29G0W zZGAXD-%bv7?31}`OL^@aU&7W6eIQ9zK!pg?EhydnH;ch}1 z5HEa*BnVB;MDq3pRroNoc;f4EMOHEkv$_Kh1R-v#MtrrndNm}Qb<`tAV`Lfg^#(ua zYX+QL3FbuCP$zHl&TTPxKYUJylI~Og;w(x;#rOgasmM=Ksz?W_Z7%tz$*7Ed7+R}( zu{=a^kJ6J5aO&w7G6knV;kA_%O0z)BF;&?XDa;-cMTbyvA_fPOn1dA&G_sC$+JnWy z>6fuo;C|^0GxdwYhlpV)E(77BQmrwN24y!?V*G6K*$O7Oy?CViMY8}OzBR|Y@(i0^ ze=;&u55J1>SZH-$GT@*${NLLIAoysv^uFSmm)eMMbL!*4;-8oXQIT~aIIf5-nEECI z2JSGAWTOUBjkG2HqIY{8z%9Fp_$`ZU8Tw2D! zN(Kvut*XI0SJ9RjdQ|!0(!}=Gt8=8)G6S62McBv5!xM1zu7{Ok3h~2iRZpoWJG>?y zL#kd1s*6m7{|IVP(7TV= zaZ}*L;+pD5`R}EmEaZPE%QLU7wEoQvwhsv7N~t&qTzSWSofcLRCuhA>$eQI*L%YMt z%>1;J!Dxlaqvdy16JjwM|4t|;6nxMh2R5}>1D>aD>Q1l}PO29gGLQ%we8hww^wl3F ze20j%KN3Pwiel{is?MISfp?$Z4ekR*k}$$_kKG5`nWH_Pf4bI$0bx!ly+{P2 zvvsk6RHPO{?$-sPTGohfkg|?{EQGFvBpG+=8~gQu<)p|vD4TOE&+Ej6&FNqF`Vx}S z%RGP_-E-+Jo(-PiSG40t+Oy9<8Bx}F`w*8n=BACTP#FHUO4MfKbXTA~vV@-)oWMvO zu3S)itEPsA|IrqNvq*(R?jb=2)KJRjsVAkj9p@3Ek(gLSCn8D(e2I2tk&PMB9hej> zPyykg4|rbtGr0xIJyUz3o&F7(Ksx zZFy726$adC)AS##Q>;|;pW>iG{3!LVKs+@5pvvft6kmlb$mlJYfHPIjYxMrlFm+tG z%b!;D9c%={>2j_z_K+nmDGM2B9#NaYzJBFo| zPaklG37%0%k~j<)aAQSm#m@dZe_rrRVn_JcKLIfQQcZ8osapxtVm^je!uUK~@rvOE`=ujMNl5L8Nxiw0F;k&mRmV`ke!*YZo3zPgOQR&F z)14ch28;NdN;5iNqYJc45WZQuG*WpPI%B00_+WuKJ8t7mz6e^X%>t0+S}!srFr=Bt zN2yx&soMB}TtWqpBe1V#a!bT-f*M%vK7zuNjN(+D4){=h7_d_U=Lp($3S)7JCdY2pg6*?G{_Sk|Je zxO6=(p$^}Pj(RR`rd({{Hd{^QiP2Z73^SwmbK?{A{(kw)!?SxB-h66F!>^fp8WVw(=~^v4U{{bsCPrcJ@#9t@8{m7 z*tnK!`2dCNEZ<0Han^(NDS>ISQB~;zMLk~-Xlh!NK-XdGYTTnpXN9PEcBQ{!!N_cD z^9z3{^*Sl7&Md6XG&)ERc=pD%PA~`^F5TnB&+eE-XMobfry~gB0E!R0QhVAzuW+8+ zpU0!hEaXP?W_+~=8R}cAJ8dv)ms{IHQW+o>s_cJNH3>Fc+x-j?-B+Us>g53djH3s<0R5(#towMo~#JB3fiA}~&Rg^LGB z>vjeYtN{HP(Ns zhoMP77GtQ`MiZOE|Z#ee#WKRLaEeZXpGmj9|JHBLNv z7^EWbE6?#@Ux}y?bk!!hl!|2KtG4q$U#8Cj3Cv_0me=qQ(vHn>Yik~#rlv{bmWk3m zUe7NtvpKz~)`sB<(lXn6GRcI{x#mg8x#UBnq5J;ryNUM26izh;(0rF<2Embx z^ciy!F+q1nS8lW91joq}#_tVdEiu{C9uuWgu;>9)GiFW_Ype|H8_yoiHhX)W=x-+3 z%WjRFGG%#-2$P>i1DqPxY|s=n+;>}k&l^hP!bpW4=VisonAE%D5r{eJTmzx2a4iXp zJ6BrTBlMb`kIt+cQtk$eAseDjzWS}RdMt~%90|b^NN5RW!YkmcsoU~rC!-7G+x(hY^&Kok;<*@ZkcOY#Y&xHwbuZJ z@2gdl!{XeEA%C58(7(?QRvv%%*2RJ)Zhl5W8tk>&$E#Vy5hUG1tbZCmoB5BoAYy;KYe7g z05lCTtrP~IolLC7#ftCbV^Bk9+i2(B-7n4R;tvFl% z#9;99e9^%s>jD%Z)bPQN-_k#ev?hyH_Q5cmKAZ)%tkGs!$V7_~5ciacVF$fA5^z7U z^i#pa>*0F?v=VK4P5~#CrBcb%L?u@)f8Pl#wGLbEs;|TI>GTTufe{|&&KBUFm4uNT zl2XSWa>7}^!!o-lKa1=o}Sf#J5eze#I6c7?e2-kzGSv_KU$x;>^}2* zp%>)S1hTxt+~~^eRT-dhQEA_7JNs-`c$j*`NT^d$UWW~}+zQZBf1zrth$!r>X5tQ8 z99j6krM4#tn*#{`paL-A6N{mu$RCUbmeO600_}Ovu%_c8q<6>m1YRzu623G0XtO$T}7an>xt-7{4 zI2wpuqAL9#Y?!N=F*IxU_Cc=TJ35|I<S z>)oQc?3&UXu&8f0-_LQL#kq5W34}3lM34k{6LC+Cu@?+HIL8E*%?Dnj%y0(0JwPcb z3o5QkW7<1qzhoze(QgnFW=wWz$6{aqt@&D0#$V-*c$#_J0n!_zjD@5D`^L}(;)$vg zdnSwjEDZ1lSts%0$AO;gmYP)Gq@}g2aC@8nazvo8P+1Dmu#x?HYH$OO z_ytN$QWQ+3XSVp)w939~`0N6x^bgW=@m5dWUVx1}oFIY{LaP0S`875p8ip=cY#3au zBwH4!5v|FbIIt0h_`C}t4w>-0MHH|q9`C*`#OOWLJ-F~x_}5L6p4}vy-p1%0Lo^YU zdTT!^B9wTIr@_ispHO5ll!(tyy}vZD4Yn!>!+!CHJt9OYp+d8pkI?2(Uyf6g6!*|N zPz??&A&?qm)S)kyQ`;YNhe!oUXgTiXsZ4X8cQdd_`UmVWsEUK7ufBY;z#?n@5hk7a zNbz~#lIEztH=9iS;ii4ni}^$it*-Spg%M63)LLQjg>4s*<^@rZZ-aNc^-Zd?IQKuT z?4OA_b!H{zhEU){@rcdv zLZrr7RMOd0!EuvaI%dsll#&!2{w`+D+3|hC6lj$;09-#}{!lN*MPP{K9;4>X>>h9W| zR+I6hl%Grnp@@rfpyX9-ozuz^i4=yLcyr1EIXHm9k+B86)1TZ6Eajk#J6h}5)1^y& zf+9%WgCh8bgwa}5M~jkwK~&!Dfyl)x0>=v%pV?C@UjE|$`D{;!TZp` zSP|h%eAE0UCPnH+4Ek3uYVG@MY#N_-a2rwnnWBbWqAvu)TW0Q&2Zb%8FdXK;!D==N)?2{fuVB=MGwhEr43eZ@*d)LS&#$|3 z`NRl|k&b3bLFr?dN3fP>R`!{VSXk_hs|JxKVJMtcm5F9-zoasK8oueAXga#|UZ;zp z>JY|YV)018=Oq)zbh`7OcnM$`BrLd$r*A-O-RdkuONj?1O6tuaMh4VI0`dJjEEyFd za6qCg=1k8Kwfk)Sm3ptEt?fMhC8!pfFEUg5yL&xeNP5EWL#Phf^NuZ~Fx_kS)UeRBu|f=!P9W%oz2} z#2t}M8)}NTa=I)ak0pu2b8z9q?V~`goYh{#NoX%LWtWRi`^S{*^i@_lt&T89m~nf1`cT{1Pz0>jtL>1s`|{SlptAZp30@PoV#`!o}ft|?K3P! zR_RI#>7ZPN7n<1-fV@X4De$~8wll4%D85M%nI#=g6%K7NQ_uj5_jO*e1W8k{>8RTZ zcdGy1Ug8gAov}N;I1v+u5v)RNYsvsJ83H z_6mqcMA#O)SBfqJR%arAzIM~rJ{>}~Gs5e=d-?GuBR zDL!<}Yn>q7poki=0uE(dn}O6QT&`hZZiG@X!Xx5JXOe=lCCXu@S-IT@} zeMZxqYm=oq*V{5F^n>~gu&k0PUF()6H4iMo#v3H2t(-Rm!7=*hj<(mcjVQYv-@CO1%5kKvspX zT|gh}Z-0y3#%5I}-8=|m(1)TI{q^msO`VsF7cOoWR|kv`CyCeid_Chv9^KrgD}B|z z#qNIQTlw|8-{Kq6fuFqe(qJYa-}N8v2|U0I6`<}&hM(R68Tcj72fz1yKXSM80C33E z1-HmXqj5iiYfq55>q8q+8|ilfSF~Fp(QhSV=xn;A_tfW-h-^ZmXT*xEvW0V0w9eF1 z-0@L1_j*QJVj_=#(!+n2EMXZ)&NXEK7e(c5kfK1F{EK3PHYq}pF`R_+Im|-&oSek? zehA5LZ4QXe2r(w|O}rsFKLr8(aRkx^_^VTT@a&q%b7Yi_ke^Mw4hLP$UAf_$sId8N zZVL`I&Qu2QFG7GedY7B-o;jr2MuFC*K%?oBUkGl}gD#Q4L;J)(5l9Q&_T9Z+akoIm zvx{ncZq##C8qy=3j<4NLrjKi@%8eXM+h7a&iOWUoEau-@@4c&G;7$&X!*rel*ntK2 ze=bfudkNM!6kz+{8{|0U`aPQywVT{8NHd}2;Qto)els!uKQI7k6I(N9b3$e|4yONc zgHKZ`?*C|4puC{UhAbO*ied=uVZE3*t^M&xp!7fb5;T!fB2mRB4m6B@yec~WpqA&e zI(7-vr4e;%Z0W?+>Q+aXWoiIE?$-2n_`L39qckQINv1BpJWWxfj;2bW7XxRvYfT9X z;shVwN?-gyB{}n?)0v?!_bqH~f4=vRuW*Q!T>1YYl_mbT2J@8*kBC3h!ULRVF>Zvp z)G-=S-Qvu;4#w@#ads`jPEsC1qD7W$A40eFMT-{c3tT9k;c{xh@n_x}}Ux03f)QBca4LBX?zVfpA-Uvk1X;l}ow+ij#ozo^)5 zS5Z%RLtviJA_gj2^>vIv-lqjBf_CC=6-w-U1NrXwv&1`6-4uPHzfeUbOi;WGUe`a#@Z)Q>T`I0WXt9artHV^)k`9zmiX#j1 zV{n2<>wr^@%iIwg4ZHKP$LKE8d)l9jp#k`QCS8(Qpuh_4BOiOAt|v{hz>lu2g|uk$ zbsHTbz>S6Y<1XYV8UDuY)W$7H>ftvjw&&PK_PwWwmzo!Xg#8=y)F;lYz3q;3Q|z%; zmfvcUopf7h{hzfWrx^I>+!JivdJYb3kjJf(3IcQG>N5#5aWs`%)i66eqtmmaNEv=o z{LI6XcpCC*5ZQ$D8Crk|_ChXGA{lY|(H0=!fyi?y!f+a%LX_Ro8hdW8r_ADOHupYYWy`>jjwcBL&wbh8q`+Cv)nQAwy4Gm9x)A`GAP+9 zo<_K6xUfpdG*mrFeL-V)1eu-9-e?JJbBxN?+ySKl5Yx3ycaA6Y&mWF=fLO1C0@OZ5 z)Wti89GEme-{7iK7Ge?Ca$x4}(Anpk?IAvph(=9FYe!Q+ zg8r?|t4=vwl~Nc)bY#!vBmwP$HXznHt@$qBN$e&AMNKvxLRm<0iA?F15$C|#R`}XD z9oy8DwSc=C1&ALAiR}X?zwLvII`9vZ-w7nM<2u1xYPCP4Qz!T5!wi;!Z}zav>i`+{ zzvnn6ng&bX&TO~10L8|#YS!}fe)1-yGu4nUk&R$u0Numz{LH}rOwmJ(i{Mi;SO4tM zD&$V`TlhxF3|D*nT)t^e=lEI~H}cH+Byv+xnL|wadppKL44#lV-t8bJ=_~$_#xEI{ z_Sl!@DOam2=!)vqZfHA(QjWu+WqvFtopG~Oy9-@dRCjeTfkBeCt_MSx5jVX`0$C=#auWmV=UhT78~ zoc^mY0{Z|}ss|AaYt{`^g*+2*z4s|@R+U_aOCcK&rcu8-JLr9Q;^`g}kz$?3eH z@bF+*GfgakqgvIUU)iPcfoH;TZoCypN`~RTCT&!I?qD$?t0c!AJiCbUB1aP;@iKsD zHlIo=)ne=JkshIFk{SLNW#<%}N!)np*tTukHYc`i+qP{R6DMzMJCkH$+qQQ87hAg* zUu}JR(N%rbRb72^etph)jzc{f<*K--UdlRU=v%*F9xCK|m>31+D=xq_CjL~(qN2B` zS$59VJ>&vK5lsQbz67zP&AyecVR`7}rm!o-bK=p1!-F)0HnOH1k$Af)@~cV_1r)DMf@-X6grgK6eSSJZ)+HVHp6o3@AM3P2Ij%K7$XUPapb&%MvGNJRf{&1z(=Xd7h{=s1m2V6pX3dggH@Pn zR4-2;o{Kr-3+TRkdJ5{N(A%dEub=*PlUgQ?by6hhXu#r#adHzP&qR?>;&x;d4xl{> zFAwJjgX0&yg@f;2VfvNv*j;HQ-64r{>7HECl^Y)b+<@NyCKX(0$@OqO|19^a59aPW ztu;^HEq{hm?vUWeZZGqz5l$MI6Q)8D#c@WAmy~@w{jM$#n&6KqFDH~u2(0Rj)~=%` z?DCcuO}DfNDBV!8<3gB6>A~!|=HhY@)iW*O;Edu!-)U0(K$(qb=jN6NO+fo5Np2bM z4w}4b;6W`+hdziWhAwm6Yo-6!PwDdFNA*oND}Kc?rzh!6w&bbf#ib&cDxAm%vXxgB zfZKDF(ep|xqTD|V{1$9D!nJvA$sTmUpJxI*JksxBX0Z*5kVh1xUmK#oO);%;JE@WZq`){i9XsSj-=(hn9`p;?v8j{#MWPj-=# z)D{j1bDiZ0J`N6I6-}bVMKmysG$IQwe9Weh?TiIm&S%-@oFQeP-=GR~%@AI3w+qte z^|UGZ9^Uuy4hJyg`NcI1L#}k$+tIc36<*gd75%Lv<-3E6YgE+`Qic=V+so>82f`>} z_vl?G4u+It!?n_fy0n{;fue{~JCPQ2j5A5*fIXEJ6b%uaea*-sw~6iK%fyBvQ9?-& zHQ*Tit7`J2b~Hp|#ub3z!)%hw`Y+h$hUosawXEpz<4aN>8=wY`z;K+%{B+gob?BPY zulnrv?$YqGwG!J~P^}M55y#E`9wfrL>K^4@|BT4iC&p{oDOTpm_RQ3<$ke}Mq$rsbUXwsiQ4;)`(Dy6vhXh*uT4J zGrGDd>^OO41p7Sn_`TDD^fnPD*WbFys%Y?$Imh?k756jww70{w;u;86iX_|r|Ps zX*Sh>*qmGI6=Po-LHh&sv2K%D1xDAgdm{^MjM(yd!4^d2T6K0GqpTs<``!G+2Y=+$ zWNJEp1#=A@(n1gq>05&v4W0gy%z_`oA~r*$w$Z{E!fUB5WT&L3U1)e+ zM-~_$dAeAqNP~epXWu!EIp&dTnHj7o+FPUCuMX(?1b+|5n1LQ!(6&4EH`0_$;+H0*AWj# zIy2xw>Ox_&L&Gw?xS|zo?wtHDMFJaE?bVMOeL*4jBw4i|d@UpRNOI1qA5^uZ1-Yco zWlh|x%ymI)goRRV%#=w|g&`u-OFMk>@m&;=T-D6`8ttOWuA%yz7a=@!SZwk*IxB46 z$}+Ak=}c*pciAy{%b;<7vNq5YS?$&w5|C8yUJV*(aI9(OiRH9|fgB`OItlJfb96ou zQ!}z5c%yE9_h8<Uta)1&>_wB@IHwQc3<6hQag`#QG2;-P9#htc=D z?&TO?x*=1b-MbBVvP|T!DCVsPZgJuE-0=u(v!@A0z((&@_K565#z(}GlOW^P z^CdK*H|l<_s%Gtt|M1*3aAS=)1fy!dCaMPnsz0r})-=relvNmRbJow%_tCdyejqAn zMpS+%tlb5k@VkQ@_QvM>k|4Y)hyei+4(C2N0(90ZMz1Uv^#ltB20>PL-hdwe=HRr< zk&BG_>HVwohi$g@yuBX%?b?5D3G!~;+*e=J9;^h~wIgs@r}5$!S|9eK?Wf5Yu;$OP zOx4lwbbE|9aSUSO)3dq9y565wC(M57BXoM7DRObI$rz@NfnZi7-6*|DW~FScY_D7q zS1<8q`x4xN%pz;to2zPOb^z#bP;fki*WLKSgNA9Xi9_T}Sv zZD{39l$^H=#sie3YfHu*K_-_FN-7XDEJ3bA1`FnZ%jd^>=!g6?zfBS^2UP_?HMQpw zv3Ex)Dm_SX?eg!_x&F>Y0`bDtGfVhuMjl|C)gPJ&t^4^4ON=g3ZU{)(ihU)&zu~7{ zhh9+50k1GoebL1Mj~M+zY!nM}$=pi$;FMSxb$n(+wXF>-_INvEf;(Q#}zEw0so_sXMfD7d}^Cnx8ICFO<>F{U)|gh zJG9IxZ9ve5EH6XMR~&`FCHkZpjC&Nt6eb;MD{;!?0HV?CeU-(JE@b#OH~?dF6^xT( zAWq)V1ohu7K%o6;;5VX`AJms+xKr2WCZD0i<=4>GmOG#z$QT51$dnQ0Asayj(2B3vNvo|c{ z>6=aPe6jK5-;*s&JpIdr%@$mxo*Bt8m-Zw*U;m-`i29DGM}0QzG+Jmkuep;RDd|Aw zklAxT)swHBdJ)r81O&SiDM2n0a*wk=1SdcAZORoppN*KHw#bEN7n&(T2y>r$aSs~! zT`J-YM(R^_(9CmOe&V$8&pptg5Y5sYc#AA&G%3N(ZT**hPe<0kgy<}WR-t&0VzT_T z>(T?;ST&=kC-|l>(Q_s{H#4t+T;jExd``|gbg)LqYJ^cRAHiV)qeq=^QToMw=NE2#^_Yp-TjiMm-VI~`*i`%i$dH- z#pqXx+~gtT^<~PDtK$$_0~`EZSEtcfC|G1>>PQHd1iw`9LV0r(oMt)PCV{Mr-Xy%G zFC0^#BQ#EyKBt`Lxpw;syw6tLgrE#JXs$4KMt_ztZxHxdUXFXBL~Z1c(mM7o+E_|CXXNN=#vQO7@X03GJ0>ElF)Z3SwkcllYYaO-gQ+e+sXTf=0zd(3YKugaXJ+1H+10I->dD>(k!&fd<&MrX5>yBF}< zrn92;SvAx7bbM{(06_HND@R=<245_qE_a0N6w&6Z$3#Ytq@`xD`Kd5i)^_d zjYWr5Z?QnNeS04_%g&n-8VRqo$RvQJ?1m)UbfCL;&?vB2HSM2f5}_eKT=GVS4Np{{ zM9p_*wVnry8iQ$LlUIyx3q6PkzsY#HxWGoS32iO5x!F}DUa65t{lvCG-zY#4n5jQX zo)Z6`OM&)6noaYteUg}x?{j<-xLlaj$nyyen_Fmd76NlrjUf~6B;XKxf6+%eJCn(n za*TnZsMA@DGZ(<06VLQk;VO0mqc0};_`HkCqr9#zg58Gl7`#iQl!DL~PBB8^lu{~P zCEX#NqOWx?Fv#!(g=j;@zi0usH6o+MHG&*f@3BSg@t)*No>l78ih`_n2WEFc93QxZ zPg{O=U?Z|$^TPb`nqB=IKen=b(zOM55_M}xy{YUVLWd^M)utAgDChN_be@L4@LRj5 zrY1)A+TF@G>SRyOdyUSxsQ#O^a3Lp`TQAgn@{5iC6(ntm)v{+@c0O%eu2x%@4kcg#qv-k2#qW@LUqQSTgdTcn;LM;5jKZdbhGzHFXVx6 zGwRrb;UFF+#$y%dukb}Ll2zcTm(Iu)D=_9GM`0A|O=s!3cF-3=5qs(U|0EaLS^rbg zg_G^S#+)weY$R`tBKxgqG{`U-N{2FOz#WpQMUhsd%GhR<9f~_wHISvpgo0TD=~{g~ zar0v$?FN^+AFUo`kTYdwU7wvzo#n5Yw&jyI_wm0?ZBR1yD*2|5WF31yKYN#(i4~`yQQ2J<{a{HXkqa9)5b|v zZlnx9FzHAY85b?CiIiq8KKVQeAQx-8KZF@dt7?1$s8`I=95y%Hk~}`jJZ?}+=DiWKW-YWk5czX?ab-sCB?E* zt({IX%uio-ZXScPcvHl~8CkrWPal13_6f_-nntwW-*(^j|z$rg2br za?pT_k!3N@;MQ@(u$blwdE>!od=3}Cu>R{GB-lT^O^>A_{rE(&0~pRiMxGm0e`WCI zHlP|E*s|a0seHlr*IkkKT0VqNA4^U>JKd@#JBZEb!Z&HWBIvpn{B?>#6(SvFfGm6F zX@=@g;(D+O`EUAR?IY0m=+*Kik)F-dD&y{c*f^mjh+H}s2K^IpOyFT*GT~J-6gb_f ztlQP$-Ws28MoP9UIxF4i-EE;2m1e?hx(q6BuujA61kIS;LMdouvKs61DUdR6ghhIc z?rT@g?9UH%CLDxk@Q-y5&)*ePS|qw-iGW#{*E^VWx8-yulrB+EgQV1K@10+D!9ib# znoXdR3G{98+qXp}k{8&L3D_yMFOQ16rE_Q8PGA6w3IlF2n0jz1qpo zT!Wx5VTIWlWN!K5did=-*OPH4Tkj0-QoR?wgv;8);XZ=zF`n$)FTGRsi$v9iCny^_ zrp$#fe`}hT;5|83=xkR!&CQKt_2Axv;VTS;7$1o$qNwaE zS^%jSpz@wm2l&S(1EA*6zd^ejA!yQEvJ`vFZag|(om}Y> z;+$hU36B+2G%Ihl@Mmo54R&$kHi2gh>x!BXa0pyV@tFJWP-I&OdWG;`v3tJ=f8nBz z@$jP*Z*UgB2`EVewYLRHo4m@N-)`#I^6)pxQRi0O4exNeoVv&d{C#HLv7fT$Z=mObJ>NLT|U zisK2g#yWAoCLw{_Ebhs5oWC*di!g(i44ML_pjDFBVmhnN7)x5GI?&#c!D zb=b;mzyPeSo1zmX2F9>{_K%Pg48W&7g^$6Izy2)JVR|2Qym}}PB|gj%s=n7G96;3q ziOIcII3St(pwmy5ktQYrv5&rnQ?Zxv%8PXhb*d99eB zqK9Ll|5=UXC1gyng^~H2>8ou+>hrXFsj;6(J({<2|M0y{<8#ikzW9IDIA0{1P9Zju zc+=dYaGtopgwCxNm9%BcC6v^a-ibsAv}|1}2l zOZA(k2Wib{2&uH^iH+LJS4Q5yivo&(qT?sp?K2CV>SeP~P>^WfvRAqSXn@s=1li*u-eo@bWOyx~ z^!|d(oxv-!gBkCC#Qw1lh6c@@7Kv!n)lkvmjL~8QyT?L(Gs1{zQJC%vAS1@gGvx0| zQHpj6ii*u>^mml|ZWFRzSm*hp=nzBGw~kh{|4eN#Kx!xI8csuf>L6bfBu+lE(E5Qg zcx3`&ZD5gzSk21BUdvhvV@+l}ir@x8a1N&!(~OMn1#{2$?}_0{jK|dcX4R~bV)4{I zlu-@hZT^wf!=rx((|BK;Q`b?MZd82Olp9J%^$t#mmU4M=KQh@iNUqq83^6(VCtM*BvAscF-1_}b#b$` zgY^WjL?vR<<=+f)#`0^LpvbJvr_Gvt(sNfcdLQeMpKjgQu0wmmiN`%X%M+x~FNe&m zRrOBxEiJcS>2K__i=jw_h+KpM1(y8Z8j7pdWJQj@Mf-73IlP{JJ=pIsO zXs2$Nrd*|4V0C>A5L&Z$P1Iwga5h8q0>Ph1%Lx=EAcvC|I8~8r{eVKpiUP0Y^BeMj zyPyy_U>6$YCK8A=WesM%I{&S}!QfHX6+2Y2C90HPZr5+lEmmA}dKgCUqv9zY+f=BX z@KW-=+>Q;HmfEuIXyg;;BVbKZ;k=}+V=^{?!HWf(m20(V>8`*#!;h3KYh1_p2~WDg zLdvUF&14Js?@;n(X|tK|aC|D(2#nbMd{2LorQqSdQg10hWKTcH`Bcm_*au-1lrx+Q z%dC(b{M$G;tL|7PvVuy=C0HKZxgx{{=xrJ24|AVR)vA>A$-RK5I zz*ls^8*N+y0_ygzMhkak0m^jReXgW{bAhGq)3PM6%uh|><+n zJXhDmEOh|hr|5{$2A_mGz+{F1HiAk8v@dX?@IU%^_rgw!WLCR8who8XdGJD#?*ei zGLzERukgV2#Ug0;9pL|7@1fS~b_C6nw)MI-H)KS%RB~$;U2O}PO)^l?Ui7r}yuF_R zAu!epb8h0V?0nD?@#(1kyoGy)U-qB0xsiVf5q+Af#U9J%9$7ELxg7}NtAn6BfJ=;~ z4VLx02lsD!m_@%81;TO?AO9lODD?ff$1TsH%<&LpXuJO zino$g;jM@-<{o+29tv zmFSYCv4KWA@9v!E6nKW$HgIR#>r<{_2}b*?V1ZDcaK9`V zUrU6bo7%tzguHCzn2e)`O}_?ub$$UZac#%Ak>vZPboekK_0g`TQwn@9LM2-*dXTw1p|#K_%oWXZ-ie)tYlJ`D}oVuRQxVA z4*t3-wNq^u4*B^EA%N02*AYWKx>`Z47G53H3c>GG%WA%SWNxosS2{G7D#;VRdI<9U z@>SxPJ4gd^^k`pUF1(#O7$A=(m-?MLQ`Z+K`?<0Ndqe#j#4{C@&2&312V6YJ0>R0g z&e_L68Mc=+OXg~^2UsJ1)Dm2W*RM)jZBP$GWnt~*er$=hnXj?G> zytS&Lpe~34p(iz8x3fuHwS;NUch+-0Q#of;*jQ|YJatEZrGbbCWyL>y_%l8<6wJbF zx=^}9n=+2|LERdR0>AZrQ+0yo0N0rbgatbsb;||6_E?RUyBz&0`jV!J`+Jo^6#wV9 z<-DX%?h*F`DMWS@zz*0{|MvmwI~e3Jmg!sr#kwWecB(l+NjbC9|PL{`0-~ z{=&xZ5?0lh1spf`_w~9)sPkrqt9(IGZXo`DfqgsRDZLj0q1jS7lYx(Y>JTVN zmu~Nm!+?IfW&8hl>}BKlzg&|4o%msA`mYNf%i0^xn;a;9FB;RNl+48YqcO$pGSBNe z+cP|BQPu{ROBn2jvF&?_DrAyPf71dKIB~iIi%VCdXx1QYq>xVS*>EZlaS+tI)EeGD znlmuxer;Pe%4niQJGwRMg++rqqmwf)2G=t*E&JSr%=>;VjtCZ3D4U{<1IjkK2d*;aFvI}*|4#|=?;7HQ&L(PhsL|4bv9O%NI;pa8+xyr7XQ^DI!WkbevW1W zCX26TqpN)yOCw+hOj#_we??cnn@c0lil6r~Mh^d?HK+_7QU2{q(65`qn}SyG>f((S zusks+dWn9to?u-62yknjThaE+YHmLui5Q?Ul_oQ39u={o5QBTrh@}-CJQ8_zoJB$K zM~Q`O+jxr*n)F>f!d^v^t>@Pt47uen^R|6ZsS(t?Qwy2A+k52~;GV=XCTfnyks=WB`nN&DqRZ_EfOTXuh+ki-6RFRHPG-r5q; z%1FYvgT}<$Dt#v#Q&0-od?6`wlgNP|R|#19qqnAjPt(pX=K}!PW!$U<8~EAevt|*- zuD9ssCj6CyTxi&Pi71x{TS>9v#(1^s9FZ0=IozrEKHcNITVT-H!#+;z*BWL^*^J)A67$M8(_y>p@IgY=0cC_ZF{$cp<=^Ka{b$QQltDfV~&!eS;`& z_3<~(PB&(lb-}{y&`M2}*PEIqd07vgzP0pnwF_%mg|*EJ)7r}LdLvctmtdh z#4%x4%j6#l6B`5SqaLlHcu`cQ?)!wZZzi!ASRN+7cpvcRj%X{bdK*{n;PvOq^ruF82l~O2X5xEJ z5C%+`?G5g}k)a2c~e5dz;;nU_+tDAt*aI8h@7cW{DmX9o$zug!KNC7MX0vdpsp zadY6Hg-OVjNMo$fv#z$NP^};z3fgd* z2U<=8wL?Wu0q+8Pp|ua|*`GJro%0J&H~ZaUCbl(G!x~V!CQA@ilqztFYyC+v{jqN@yS__ zh_%iNAb+L(YP^~K{^sXqK40Tn7lJ06%Gu|c!(g3n*(qC_dVQR56>n@V8Ey-Tvui%? zq4^98f_z1Qb@nbWT)LvzBd6}8qqqkbJw1Ay?Un!rK}|;Ag`0e>I4V&Jre?@JS?{)D z8u%MG)6g<}+rT_Sk#g)>IbgE%wU$21kN(uq5c0lTh$$XQgrkcx)__~qW^r1-Vl-be z6N@8-VGS4E*bJN*c6%p|#cb5{I=oV+GHlUadgTowa+IOuT`I(62W=R)Ep4eG>)y zszS{Y_2cykvCQ=53U*@W20pbtgKQ6BjS|TYtgRKYT0S=ZGibXJ0g00MtZLCOifS9q zttrF?dyfWoY_{$8HjL%sF3m|=f@`G)f4r7Y-hPvLUE7*&&|)B@jaCs-@rEx2+siMf zJ>0Kl458&sPC7Cuws}Mc#DnO9!33+EA1gBY@o*rTD-M?mEm9F>0d#Xh#oj)iQ_z;}Vm|Qi8!K z0Me_H@eq{Y?u7~=wEq<`DY<;TsGbXCtg>$QxSS^4}qM&x(x7@D@V*w-~e zMDRvHh_9o#;;fSBQ~iQ^Y!qj{D$`Q`*BBIp*yY9>l{*=I>D;FOwBmNmw(+0h=nN0_#-zE9>s z7Ik2!btg4r4zt^jdkW=vuEu1yDKBQu%QJ%U4|>1b69C-}1g+Rw06I{cCg)47gN(@j zQETkbz8%$!Ex?8NpooVYnk96CJ|w1(*j{5U=p>eC0%L39UGIi7xLxuoy-$OWPNXhM z|IJuEB8ys>Jmfd>X5neSYjDZQqD4O5>_Sl^7%?&FlWB{HJZ=_3q|C|?Q}9DrS!?Ra zdmrjSdSYgkLij0d$8TNRZ06;DX``wdm8tmWtW0!iM-*AL`uLs02kEOfVUEm73i-NZjHgFiGtQJG;3tgBV zvJNMR+ge)CtmUWM3O!ve8EPw;7;|&)j0SNU);rH`Z7etU;>!m;*=ejCv7APz!yY7~ zfbGQW5ti$plE~QcI8hiqYQA_FX0jATvG~;$%sGE>f|Go>|0oSP{*xoZ&iw!3h!`aN z!?^~`RWLasR@j+{mr5zgxBz>1{G&v-2sNL|;-G2EcKuaL_f783d34ZSalCdJvLjRhf*Yc$v%T&=>H0oTI@fpA}*yLt&I{b})RSiX+K(C4Fe=`K&z* zGT%g|)M8jwiolB08Vj#@+qBU}!;r3hzDslCAMN`16mv?B=-Vi6;P@d3hCQC97*iGr zL~-!6VkcX3xm2GiLp%elzAN)6cJyzmY>JCnSj~V=9%E_hqHQA;QyXGLwc@^yz~mVYMAS+<6}l_+xdKy`dQh&k`(CYb zaQJsThVjCJvi0ZfRmwlAzm8qh?X4*!PHEup&HmA5Q z8`oAPOAPEL`n-ZFUUdE0x(l7=5d6j~LAph1aC*3^Oa&>(70Id67$D9}N^-!59W8a= zQV%WLfioF=cIu&FIc{k7a{HN|C*VWhEZVMwmaUl(0b{(Jbm(PDH};n9ctv)DuIV_0 zmC#R%4}(`8@-5n7#b}DN`G;`dxi)y;B*mc`-OV_m`Sf`shI~dBS#%kEHEVH9AlGRA zPm%Fpi>T$v$rGI&2^eJ-qlknN7`R+4G(6e0bI8a~Ce`9(iJVRObZjcKR$=`~y$9yw zZ(1*_*%0vFjE%ZsQy*ijPKF1gl?ASs2seRS99UwHUG*#T7-_e+ppQh(e79w_A;qo{ zH4}7PoM2`%xZCo>Bq!-t9IyRUBq_xymmI1`lLKS}(+x~|Qx`iSdba6LcAFMYk!gvS zI#ZtNeT8pm>r7XWcz4e+vN<8nN|$--zl~Xr*y&uWkQNW^)Bct3V0T%IfpxF&2?WI#1}niNqk^;OT~f}uS!GJ zy2-DY$n*}oi%k-xA!Zlrxy0hU^t|93t<{hGrmAi9)#3R}?3VFCxnJ<#i%dV&^qYUs z5=&;Y7kDpRElnN78XXyHO86tcPT!Z4iV(8LY(Xkp_ zQ|$lF7Gc)y+Zk>6-(r86B(Rf^n|v-`8U}i+Y}HEY#M&=*h9784 zj$L7KAJXz<7CGGvJfjp?(iVHz6ABaMNBTrQpKucu5@h|+I)(MgVM;UXbQiBBI^p$wV{cZ4;) zd0~ZE6<81w6rL(5%ElX+t=4C8w6ZHs^rT}L4ima1SBDL zT(U*`WUJcFe$FW5-x!`b;+VN9mZT({w~{}V25)jP>nYnH#4t1BXu6c9;dH_urnp>i zUnjlgGWcRn#yN6YoIUk(M!~RO!zdj3czdF+OYVdL*OR?lZZ-FC%Fv5A6$wH# zq;`PX)RTs?q~8jBcskZZ^v6&-g0A!bmL6;Fui-?<6g3$WkOw4?Lf}T{j z+V@gfbOS`r6VI8Kin^avFoaEAvt!HO7}c7qJw|l7LSF^d?zkFXxvwkPgm! zk*1p!0Rg9$Kk~WCFO=C`j$65O(K^)RvwEB>XaDNskgt#sOoRT1_X*;QpkZIyM_T(= znN{BO*LXr0M$d>kMw24uQ=5$tWnZ7ckZZ4&HQ23sRD5E*>-&^7gVE^iVwlM zzd#$VBolx#wgtNHCxRFR`6%3#n#O9{AflL6byNXpsH?EBHxl>?rZtupsb(S85k|98 zXp`85Z9J%7fmTXGvBKB!$|fo`#!^pp)mS?^@pbyW-Q-QpvT76!H~??M@dIl7YmuS) zqzZSB7d_>c;@O12R#J=I>#j=a<4dHos|~0N$h<0iF@p|^%Er1=fD1W_{uBb8;)lc& z|Clv(aj#+jNmA=An7_JVB@!R8khavJjL5OmvzJNlsgf%z?0DWTvVGV4!TqC?RyxaC zns33Ba0{2k5yJ(M&5Xy#X1Uh!r!icDwwBYVlrUw%`VYeysXGKb*Kc7~+xdC&GR{ln zKf65j)&y;36udsozpXh}*6rnZHAArfJ|_`%B$#bC*qUN*K!E_ZKj3!EhFK&w_vz+y z8VkEQiKM`S0bFB##Arprx6h}^Q84|xmnt+V>nRpqM}LA!Y132$F#qWuUl~Kw0ztvr z$b#G6a2D&U`V*p&V*5?TnkXaoJ!Y2N=a)i(X`ASYA#;H)qS^`7$xv8rf}uERR7!}% zF+0!sG`od;V{)90Zc4v0Sawb;1RT>nuopw{vLyi{#NF){Myx|cQD%N1+MWHt{7K}~ zZg}ndhE=~=eTNA;*c4_eo~$}K_pgMcxP)X($1sWgB=&>tK zrb-pO=XE}T6l(yU}$Ev{O{1hU4*xMGK3`ICfk z$ZAb6&bbH}AE{bsYqJuWgLCR|O^C2br`GH`a(Djtk;mn#f zj!xEU? z3Q4O2AA;w9?;2Yt+qASj1Wjg*T#Q+xEHn>Ae+`-!eEGs~O0eed&UOn3r)#3Ulm_`i zro2|2nQVH?B}-@}8wA7LxAM z?xOG4v5^cc*lEy;xT}&Z%;9RR2iv}E$T(lQ6B&#eU5C&CEPjMvoE3%8QddP}q!Qdx z$caNsf+PvVf-$`}NC}xz^BBTjhG4~*@3@4O)NFL`p748j8UY-9P+qnZU_(zk^}4G0 z;$l(u2(HQU9V9(+5HGfa2omhSm#RvQN)?Fp-~ybk+hDiRG3InUcxD%o5i-R#MA@qs zgH6G;-1ZAbK&2+A-jtcb9v>}yT^F}5Ij$Qs*zeXdr_CSBW9*A%uhINvObWux9`~DU z+r`U3>cS)s#6?Egb%3^Xz<4L~_vO5W^2u^iYysqBY3!mRJpF6J=R2R-veLT+U+ihbJCr)5I zi+2T}#zUp@NkA-6uLRUD0C$$Bet(y@!+;U_FS7r5ApF+@{y&Y1|LqlUF>(I4?ci4J zfBe`^K31l%xS6iS69 zn-#o{fJgy#tzH0RBbsxxxIT_13hMK7`<9H;8^}-=F3-I&s4*t9q>anL3-rvIJqCP= z-adzx4UEe0YGbpajk!kZyq=z)-fA#2TI8|@Sjb5*D5DHsYog5}r}9JNBOWqzow?|v zNWyS2WGvHxRA8+F!R%sfO7>R45%*$4IRJVp zs+=v=dAbXPKVkmgY(#&X=&qFUh=cN>8tA73?GiO>)B29z-h7EkQPGZkjgkv>bysG1 z3T%)~70zbLvuv;r3!=Sw4Q>nR`~E!4y=`M)o05869YQ#d%7#J%oDYnq#Zsp+f}2Cf zhR4ZOVts-lSOshxIT5x$?@gcW2RaZ!rdYPxxaSkhh=wC^@SK1LcS(SX=E|TtTPp9% z%SOx^ZT~=Uosa~%Y@3aID9W_0+qN5b!FvjCJ_dndhBZf$ON>0=_zSgaZ9V% zl#4F**2g7 z@hBKDA|RWtVw$14$TR3Lf55bUEnZ`YrMa_7cQF_^)H?0f-~@OH2}IXR!#T4pm8~-$(_d^!I?*5Ih z?$mC#j9t92YrU5M<&>L3k>snKIKHR2IuF;cQ(@s-&%hv$yVP@Hyj4u)mWS~$^w4Qx z^A>+jKz#_cj)5ui4E}KL5WzC&9rG?3qbXDRs;*F-EvNHys zPb2Pd%($e?5}-HX5%$ese8YdcKdGMVQ=EL85^GCsEWU6B7uRfUbuq7^6jC5u$me#gurhczrMrN$hi8`;$tx$w7{w6s5pxG8$!-3~nP(1b8D9yPV_9m$lB!m=Jl z=@81S3TPRId%d0RS`~<=Z4}0|$W!bx=m2hYXf2+fSDevJhs~ZE2j~6PRH2F5(4<**`(4UI>afvR z`|1vYBMd~)pB7yEc>QwcoQayeupQZ_^zYj{m~!I9Z{a+-NhpdT%jBgoiavo~zhH0K z-FVn72$Y#oUnFvzpr&?Gl8|HCZ;}244O!I#sf3Hn{2oRPGvE+F4sU`S%oM)LQrkk- zpC4mWk%wP&rMx=JJZPxiFaa1ShJx{4`u z>cDE0ftUXdNC#ZED&W4lV&XVj4}lL@Y~)YKP}QSeZ<#>i3l~G>K=ac?5F8=# z%R~^M6Wf9$TH^>!?*0}{xU|H8h%D6gNAKf=ztM=eSTBC+Z32O%Vf9GDQMAmj)0=@( z0@0xNNoiBqA&xX`NWJR&=_e>^@lCPNNyL(NIpnfe?lPVSCQ%Hk;fZ_UGLRQCTR)8X zYt>JiTsxcRp3|w*=5;VhK)^-G;7h-Se(_1{W^P$IJG`Tp2i>f4F`XF}l_@QCO5q&; z!rD*@SE)jK)5XMp-bG_d5p;^nf*j?en!^)J29VtDs2_A!@mnml$+p#@fiOD7#|Rfc zu6EV=N)a9~dF1$mE?0^2h%2*F>b%kvZ$3vy;fKYna_ala_Je!y)Pr-FeAaPcz`Zbh zHytP>dfgN!ZH%Op+72%`LwY^JC6FarMi63j`BynMIP&BC$_8dDMT`xOSUvw&XhLP6 zKb(~6splpi>!Mm<6Z}FH&2FL+*8pf|#;P>Arh{nVpC$Ssir|}XYV=g`jgFO25hEer zBYFMbwqP2QIYCeRbAJ&ZqA>{Bug00+<0+X3s9X>?;=yB3*?Xa^prn$+uM6qT#))J$ z3pnuL*eCLlq#dMCjp`iyHz0LK8r%E92_myV6&DQs=MO@D7N!UCZ9ZL0BF?lSjhk{0bF(9kr2Rd?#iEZQBbJ4>A={W_v zZ`6xdUL)-}C&o;ex?fGpuT+p*6IJ(yk%mmOqYwu>*aaYgjFoOM?k75xJYTqu>%3Un zT!89bvHU34Lgh*C?0<&_I9uzB+723TMM}ledKK@ai}OAA1=0em&RZlA)B$%_eWq|UV63FC! zBH)>9+^<2kJ}v`+cx>c<4S)v;gwywf8Vk@twdXz zrcx&po)nEI*ygeGbZa@?7PkgcLPIHlZeu;#hR5CX(uKBz*XGpEup8IMU^P<-=wFCi z&-r`vw?>pv8o&4%FxaWN)IsU;;;eE&C8^<+DC0*hw$>Fq$Kd=u!LY#4y1jkHZa`6? zq=hPvaurm$c{jzkL0&XXlDZWWowwz6M=U9N?D}4lMakVXwKs$H zTrmCpem~cKbWSLt)j3>53v3Kh;1=iK0?y{@+@U#w3J?X_2|kBmnDfN%^LI4C{Y-iu zKF(iW+?OQq40L_R9%e*6{l5U9_}2XK)<}Y75^It~K4&S6=I-_)OvSOue*TI>$o7v* zln-grnz05Ogo?`ozXs1YZV+cQCC@Jm{5(!LW3>C$=T$kiKDb)%zMLl!@`=oTr!IEk zocf6bDFZj57tS& zWC{Lb`T5S7YnUq{!z`E~s$H*-I6CrvGr^cJvk#UHa7*n7Npw~PM#9^ zijjuawj*LI6@Ekya@CYTL-Ok>?Kh&Si4L^A-9-m`_C5BnSKy+XF16F!MpU@tbJpXH zO-L6*4oLcBKA|lLPD>shMDI3gX^Mk(H$A>+-(|dhTng{6{7I zpRlSdTrAxGt&*P6zDW32Hu<^k6B&;Pm#Jlc>ESB?Z3)M32gmF0#el{e+D+<4#f?&x zI-gx3`SG!E&p?|fA+X?b?~AP8%3JgLGB-z`t+Uv>9Fq*_@_aljGi{C(i>_K5S(bxF zxzCD+ONyOk__Nlvt3h%0`8Bd*M0OL$CPoEXv&vk*{rz~j9CKoyIp1RxOl@3TiT|pN zMX=u>S#(m=Bj7bryxkpUm>j7%jiC!lJ|{DtT2eHaMUr$p8vj2GOq0;?T6`)|2{7H$ zz}3jeNT@~Mw$qtzO>_U|YR<$ku~U0gX{{xB{lhq1ZcXLzP|0Haw~gE^qOPtHS*@}M z@Dq}8o9_GnMcF&{h}t#4nr+**ZQHhO+r8ViZS1yf+qP}nJv*74HTyNGe?aCu;2N5gV2bA`1eD?A!nBgrAHS-5?;0uL^TxhP9!>F6jcC1#&I8s z55LSn0~)(nAO2ITRF)?=7>-dKs+{;B?2Rp7Q6?Te;O2?}Tgt~LB5j3)=@Yl2n_Im= z+(cxM6ek%lHb6kP0L+5vA%v3Y#ZpX~iP2ZQ@Ssc1p>s z5d@mFvx8A!(~^v`pvZ}T9C83xp)^h zh>j66=oa*?>~AJE8UR8*cosy!`ZiDAT@YQLgk({$DG@bS=gh0~-ub6-e+UvC*pa40 zGjX~H@#NNF%S_ZI@J>JI3FN;kJK4sB9~;XrXOczi0bjphD$YsLKhy0!(wiv!+e3-EkMMXC%S%373wl|(04 zc1JKw4g^z7QfL(4|Fay14t)>`{``Vur?E$LyN*|ey9ptJHf>6c7mtb!c*ro*e26}V zFoeW?`OZXFLvFmL@K)QXT{{mu1S7#-(Uzf70~BpXp2PoXIMG6?h{%hPNO>qShFEFe zWk=RNe1~y?+X_h_q_fSLTPtOc8L}AyQPbzrB6@%Z0w0XKJuQfswDr~uKJ^4Zlnh63 z*8vRS!39fT5u5;c1O^E&@qi};;faC40eVA#AP8nvE{MQ?;;{36_%8_V5%HqOsrqq$P$-j<9e#6lT!Jw zFK5$Y$_wq$=~BTvQ7Up4{uY0f{7e^ofbibV4zB;KbrNk1cV&Z1OuX|!moxab)~H3> zhqG!MvZi&iFw>TCD^}9ZT2JMC;6{IGgZmkt<`4OK#|mfR&6OXqM>}=TIIT^39Iw%T z(zj^n96zr7#08lV@5UVj#8%19SW=KUzSrFOwQ6R@p<`eGC@5mbaa5-L1cmd|i2pgN z%*}-p+eI^(f~{bu!@}to%K0-J_iZ!vL~hQu{-+UWI`0tawd8B><}>=sDLz4e#vSHu z++DugCH+P+3`mPc|7o`{4=ne61pL)YingiYJc074GS(Z zcLC&#fF!bYfi?C7-)nh1|5Gn8wh1IHyb|M|xu^*MZU9?}wIg2`K<>xI67W-~8-R&ePOv4wI3kpn*X@WI zPk+X%k%3m_5=G3~-x0Kqv;rsLaH%F^OP^04^=B1b<6W;WC5&emylVOwKGM8OJ3rzgXTg>O=7Kv~T)oZ)h~}07Zx?UmO~Hi#{s+>4 zx@po!JNZ;sOUefqV#civ4n}Yf3oSA{cFD2rR>Q!52u0}~5E}0`pkvtU@D2};cL$i= z^5j{qjSa;)(VsB~$U+{_=2YMX8VEaG^VQYh?@Y2=U)(q`0D{U@@MGCEZ#_dz1)O5B zAUOY$RdAQs;yzJJg>yYF^@?$IcDRC19_&RKH*ipv+wa1g0uZz?!~F@Ey;ov~x6?`BPcw(~li@9{#g9vH)Z3sNHPp{$|G6^<;- zAEKDnvrdoK?UkjQn~YAIX?EF{`gb!d1>TWs1lK?oQ;{%T-H1#1>LS`8-#L`K61Ysl z6M&-*uUEpF(lVju>R`-lva6}nPD->oS=)|=kx~HB2u2;vUZFDa2b#M&dw!XuRg?ISn{7XgtP&K}9IG7T41BX$|`42?Nw`6kA#zS`>y1p4p{LgI*1Xxo#9Bj1 z-6zZhR*$>8QjFOeVQ?_uf|$wr{--Jvio0I_c(^fbUq$8wVdnCzr>m-A+^lnzf0ZK=utASBu@xjEM>zi;m@0f1(LL4Q98yr6^u ztWEfXfrhLk1Yal$3qo^|1)jT0z2Xrk89Z)cgKZ|fZbd#|T4XgHFjqZ+ZU7A{Q&_hWVFXN zQgM2^ToynELSh8oZrH#L@hwsg5|B8K{ZBe%S}Tps>-P-yTm~Z+$?3QI(TgCG;mwaO zWi@fR4V5z;*o^9Fr~iD8fFqjJ?N?<|@RS9FSAJvO^rTwss4);M%cgMhkIn>GM;qbZ z%KNFgFM@M>tAiRwu-JrrIE}V=q6v-dZ4Z^R26gD(&sgYtM*}97EcLSnVD;j%uj_=Y zkpP%al|^d}H_z&1*N{7oW(7<_tt=Yg8+OY35LUeofyw0Nz^<+2kcvAsNeajr^|m56as>w5tiXtWu-M*<}1{e6k}1BYo9Q3t@zVmV6Tv zug*AkR+*52jAYl`$}OMmM$psYeZvFbg3|t%zGh?K_z$O=_5a5bwbpiAHpjo{l79bU zq*@>_+eqC!FUj94%F^ZBy*Gf*yk_laL$)qjmyyc6Q~>_VPsEE&wS z%fr`7CS>qV0=S=#v*F{vrM(uID1~DtXgYR5G^q7ZG6~SMNqbJnU9h{7IaR*BU)T~A z5hipCG-0hC8S3^wKTpe(&`8qLA~Y!(V^Ky3U$oPz(MEAbEBoj4nm8tf3{>Lp6tXe# zo=756(8bP~WavBDB!vP!UWXbO#o#f5K7i8M=RAufSS2E5Nh>V(M)sGuw10X6!;$s)BA^KceUi}X zU_Ji$XVCN4Y}bQNtK!&Yq0uMS?Q&yLUN+F%in3Q%W?#QaI_ros!RuOoHk9Yh0+Fl52zxYzRmY9>HWn%~3LbsTUz5E*hv2C_cst$>r-fLWiQwc)d zscnKASBY#b7+7iPVnr2FF(@lzX|jOs0aLb-*Nq_N##-mv%+qQuvK*40_5Mu+b_Cte z4wjASH5hBzN@2YS`ujDb4I}~wsDxr5EioWwQZT zwcz{l*OI;F+ZZC78(n=NylSqoHChn>%Eh3d#}aot1^3%7tK#A0w=VGP4lHz@8t2`m z_rMY@3MT$oZJKh4NY#W0cq)Az*UglFAd=l3HHrw|SuO&HX>JITAf|+rYbQ*lj`&NK z^Uxr_5nNmtL4mBv*0Pq$m(32E{6^Cz-CsDJGCk4&%0q9F0WS6V#wKUtrQ7=aAA+4* zmE8BK;Odp+n_yGc{l(yL{W-6+!F6(k`e^76D1%@sx)7ySp;eVUF768Kw;HU0zVzy7 zYGVBs0hlWb#QR8SP?mdr^y|x5okHUn>NXG%7lMR^gL?z*^z}c9^~jJGa`QbgTkK71 zooF@}d|bn&Ui%&zFYq_nPkz#QoS0!7T$nwKMLs%%Q3#Xm>g*2yk~Vvtn)KrMdHyD= z9*My~n?x65Ktp^-`UV}y-4^W>N*5^jIY-ysmuR+`nG6X1nQ(A7wp+a}hxrlP>+*|R!*LdLPL;_;bi+Oj7z`B?m~@sI08F3s>hGU@Jm3+BzIcz` zR^Hp;&qy<@z7=1EF)9hi?rsjT_#pI0NoLsvqlvKr(&?A7WgX=ynvMw&TDk!xYYl)mejx zIML60LUvSjp*T*+f%*3Gm%i=$?^a@Ows0?73_@%GtZl&Lf4ixu^SR}X5MW+|Jlx<8 zFoYovsN~6GU}ASd_M{?(Vn#uJhnj6wnfP>hd}Yvqvk49nGU@N>R)e}aDXSe^5argG%XRf zC)E5NZtI0FnN#jTHC6kLe1f$`5N*2G$L`bbW9E5kTFlm@4L4|+JJl^MmgZZT8Dv$C zp%C7>76U5h&LbO`z-oN<*vN$wtm|CP79D1pH`4T8SAj7o zOWG_dClrml^H&7Ks#7HR01BAutFiH&qHr(w=wVItXRcGgzNW_F)*L3!;c;XOB@B6M z2Anc_+iz}LjxE{Em_|K%Sp;-U=v_KgO#b{T+i~q8+s)J+_bow%P+V^2wE0+X{7_4Y zq)3aQvkIeoqIVc*Yek=uAf#15C=sYmkAg9`C9v;{A#NSPuwV2$5R1P)eI~*>z_0LR zEUmCd07+>VgoWn(v2f|$UY1>5%)n0NI)bhb#t#?x6RQavs#601r!^F7xzq<7jnyHQ zia?YrEUfv8%!7SP^Zga#s}vz{I)AwG-pR~Ul(!O)b;&&BE%q7}?ztlF*Kc>+x=}rT zvlZGc?NbI8LbC)6kcXF##mB_N90&8y?s*=-Ak0Pol40AAri-V^TvVR}z4VHczjgZt zv?}xJ?)3_PwP(anJz8bE%qsV>0PT`L9z3I^6Cpd!-d%b(I(F)sbFX|>*-dAac&`7^fu`{XR81OfY*2KGTZ zsE=3E3ua(1uuEU2Xz@|-*^(j;q3PdXyC^o=Qm*N;l$!f^n)a|u{5`TC#%n@URad%M z|1R$7#RG@0R43DC?6~I-XBjYyZR{uGnS^2jhU-4C8+^n3e&;&qgnONn9t>~6N_NVU z*sHpC``ikJ$^WJ;N+*LghLRmmN(??35ae3#fx_t9;BO{)EK0!Ig)C*r|NEjGF)k@* zC1Q7S$uv5cxR?rL$64a)d%b4yR9#)Gg|JSJC$YUkm#7a-KtIPXIU#vKi?!UAl zDW#y3mPyccU`6DVjCG`~ zSt27r*Su0+7rmBVN0dxjQmlC+1=o2Yl_)RYuNgXrK>{r;ww0b&Js?YnA{-@ah^ps@ z-4q*1k{Jpjb=T$LTBf6_ik}-gFrwTTx}d0AYczlyUU)e^v#>@@B9@#634P{_$E1xH zk)?XUYavrmvCBFjr*s=2vZG`uED7F@8hIgbQ!!?4Zm;S^b2Ea|9m1BhDv@%QVwSp7 zzJDM)Fdv_$=*MklQ#OnjIqv{98h>Fam%C$XiKGo_(j=Bk|1b(p-z2h2Tti2cmE0C7 zE16Sc9;&)VMdqe#jtW=Hx0(&iLpbcoL>!#kAuJ!H^J#8tiUAkOK}o3d36d7wq&mnH zw&}>wiQR@~phvc=v`uKwUTzr~USVmAezl5(Qk;IIqAR^Q(jj;O4pL5Vwuq%}lkS9f zL~vdvGop{F=SA71AZ>Y7a+)Y^$1}6KkQ*Rok@f=Ks?yq6+|#fA?%u0Fazb`=E-)Y$ zgDzTn349Kzpxvm|gs2UXg+kY^>_-JDrz9#B`FvSUSt1TAOREOAUAz`fpkuZ00=`nE zY+K61rI0$_Xy*2feoBuxn0k(G>j&7MNybKylh_Ckhf02~}?dGP;>W zWpe!`(uvppa;nn~Sy<0vH;=;K3NiH(S$`X+{duqTBaX!b?*(}VMcd}l(eLH|JjqH+ z9!^dP8a2!;$})b6WM-Arw7T1q^MkO!Wc8#4HR^8UqM67JuzQT?&kb zZCy2LmA+VIu)06|c)7TCI;7h=7{#C2KG=SE9D()P{q}AhqNn4hokiOnd^w&z=|LSd z!Oo`j)!NzRtEx@)N%%bAPsLYH+uincLkEN|C$oR9mUt@e8AYaFT`LKYK4k2jI9l<<_`Dqp#%zp57f`ej%{Y-M zXw+oEasma?oNh+;C%3MfT&FGtqQX%8C()5V@|@t6djz#N7yAV^&p|i=vyBj*ZZv3e ze9wugEgPnXf`__t(~(kaUudy&lAQI?I44>D$WyLqBO@8|NzPQ=elGoU>fWP!U-NRh z1xQ=3{-pm;2<=o@#Pss>@%J}mn`+t42z0#|wJVzkpj?VEoS-sPUN%6I!tcBlTpWS~ zJ#J{x^n;&!Y2V+YYB@~Tx(q;$+9i(tAu+qK7XT26KcFByN;e4k^Wce=6PONKM6$|q zkSSd9EW#iW#KZIFTsVz*o#9&6i^UKt3y>=?X6)?=g&2o$bcslapNV$F zSpsS~1-y_BUc?A5VT>0)!b1QHBMB`0&==3cK$2&M=kFpF@bU;Sp$F7EXQ@kjE5`^4 z!Erxq1%QQ>m0hS}mO$TZatrBSBgyg*Os$xg7R<{BepL4P2$AvG6pJ zUUf}vDrGu#HgYHl23+R$Z}f;NTnrlppzFcV*U`Pb=c}ow>r=i}JlY`JK*+yQs4EUd z-DR6TnhKAt@^aa%nFp|<5zHl{zMq@`W>vtNH}YanjH8cn)*b=%K~0?~awz z)1S6+uNs@i@%%*>QVnzlS#;ZsQ!Yp2NA2{FKWtq~58RKT;xT8dkHJXrcfoeIwMUSi z2HkK~s{zkkAELP4Lg0CG{p2opkjt9uf-troY-@sIgtPi2;OY*W#}{VpJ^X}%YbUqp zkOTA&Y5u&fC0H=K`Ks$>VBr}mz z_}qo#8|#>*^g2td`f(wU9%~T6c%lA%4|YaAtjWJYhiB@W(u&r7b7o*0h~Vxb+0MHd$nN~ zf69t$otvJxu%4LwTVeKS|0d9TbpzhG`g_GV12s832X~Z8dKH>y|4VpV9VDx?K4l_e zSm$Y!J4zL)i;xO7S_oU59F|ONj^B>Vp0SVp4B11&U?%gY8bhGU&vBD8^_34M4vj6R z@k#sup~(qggE+=DmBPmK;>6B{O@1yfL-Ju99#>n3(F;YtuqWj%q>=M_uGAv;jfN{V zH4mO(nr345Jz{DCI|@Kz{nU*uorm5zn^e`FOI`-VC9jVTj=kw<3N#2!FDA!eIc2ml zGcBD`^j+HrT)OTSIi6k zmjGj9V*bAb*#FU2Ozdp`>*M#brndbS8`{4ZX?m$ZqxSrPY;v|8AiG3lQy*A(j3~M! zzDb0!H8(LViLB1**v|`ZSlEJu@p~i<+owU)K|D{`Zo5xW;qWk#*4NX)Xd}9~eX~Xp zO^j$4hc>OzFi|^$1 zhS^ji%Qg6qE-BN1Aw5y;;Jh{+XI1J*{QzVEQf6_!3I%L|!3m zcH7mfhgg>HQe_mDLd27oaQ$xAt+r&!nv%99?M)Ni?YCz>(SLLWxyw*yu<4*mz(o-)MaE;J=sPM`0}p=zxOIjJW8wVy*u8XiL=LTvwysJeJjVnETncRgQmDQsD)gQ z;=P{cSmEd4CM&KcY;=DzTupUlk=FSN1c8Ql#VE;5LJW{LkoCQ%Sr&bL|9uHCa^u56 zd3rSb{y|riE+!MAka1>5;!wOOis;XPCNy(8VSY&V&6DHV(^fTAm*7iY@RULJsP1g}_2D}Uy zk_UzcwGhm5pB5)!+VJvs+Y_v3}HEyc0)}f}3y%UMnXyg|L z^;6c@GSIXAO><(4Sms(D_az}K*_H)f4A+U^2D(#0;1-bMBn*V)9(A4Bt=tWyymwVz zFx4!F_Xr*qs&HzqXvcuv+qQ~1btLoOCgy@F7Ux8WG~u0J(Z3KjAMN7VJ7i|vIgUa# z9E$+2Br5!E_v?Syv{;K4#$ZquPg?%r6*i!2d97mS@-wOXHmyN2x`b_O)8fa>n(wXU zlRXca36A+&YeAr7mGzQQ)zGeV*Q+*J8!rN*0vvsuBncN(8Wbo|#E)ga;g`TvoGArB zYRw;B_wI;H#m+-w34BxHmU`)$1N>g4(WC$w<4O}nhhQP6txqRIidSXD7~0cRL$~0x zb+_YoY$ltrC%e`A;?hi|tKE;jTgtmI%Riffj&fN;qU;d6hHY1;WeCbZvbh<3;3nBN z`w>fMz%WC>j0GFinTu|p02kOrVz5KEPEp=x03o@2I2ro2n?StP!%G?W|Mhb{&}0Vi z*7}pjQdL)P&o*~KtRPn!y=FKWBX%c|U+#X=JaJuyj5sG{%-6P)#Q{r$bYedZbUZ^z ze&QljzE~}nnwGMsmT$r{R9=WTkchdjXn1fob1UZ{vz5Unl|mD8Ehwu-;YgZ+=@7>qBVo$VG2Bb@<}efWhJ_~Xd>eM>-IeKfPH)fscdH5&8Xu< zs*vxmxZe8hE_^u2=C#w7F5%9@Av=&zCRc`NP?N8~UfOIgCK3am-SnHom^Rjoz%@H3 zeotAIfuvE(ech&$NBkd$XUj5>$9FBJlkfbqUy2gX<92<%d~V^{(>-T>)4BKJqAtgE zhnH*rJbbUizpmtv7$wYwabkBZ;2vUg+)@#rI1Rm3kQ6lf0A=h&R-k;#{6O<}KK`DS zF{&eUktJ2<@~AkSEc^XVx|6h4{Txpa9C?+ho%O+f7a)oqDEjG>1#HIMB7ntkM78&# ze7|PjWMa-iU1YGu1#kDAhm!x=t}(6)wpeb(=*LcT*U1yR$G&SdYxu@!eVr-6EX!Od zQp$yK=XPFDPJ5W}hUk!dkc6io^9T+xMlB>C;0P&*0?lemgRGOlI8@|^Z&h1`pf&` zzJA-TD4i^M(M?9m195#pkhcqOvA(Wa&F38xYQwB%Fap`dkC8=vli2gw4d|AIm!tv zxCkRb!uxJt=~f9Z@f6e@dCX48Vk0!Snk-j(*XYKJAsX_o8RJAF#xn^T@dyc6dhH%0 zG8v{s^qC|Kg&TcD0wM`_HoOU$XZm1xz<>pZ6#m#V3K#&UGRB;Nyy4zHW%S+riP$R& zn5L=l?Bo>jrTsujfq6FN{`^Kvt87Lqi9a0(Y(jp9L%30^Y3TzEZ=&*_BCtOqaL->+ zL60!RuREQ>eLV*z3IV$j7f!2|vvamP=OqgjpU zzkpM~=RE%@o0$KL)Wyj9zmvK&x9zvu5dXbt7IXr`*jmjWr12dT31E?gJr&T-_)g+N zRSz{UTNLw3T61$8`Q5^VZKSw0$NF>^o<*e*nRDdf{Di`FW79wRdf%sAqNC$C-6^Gt z5k1tX>lJBGbaTk2qiuE4b;o~2^#t?^9Zn%!(vKX_oyBFwby3IaLUIlTMtO*~^-h1ZFQcF;`hn zXp+_5G40MkMun)xj8mrHBb0WPiq=m+af1Xgr zW_LY3d)%xlo}Zk#up6yCGmjbid%k;SUOHrqt)FxKzSG8$uG&)lF$w9#WYo*WO*~Q3 z%X;0#wW{*e4Fw^}p%!SrjM>-udy_c`0SmuI%)Nt5^X zZ92L#%ki&41pr!90gKliNS4OI*1E2{ZUAuJw8ojf?zW7cY0Wo_hgTzvCdoQoUz^0# zKu@mV8&4zCek>YxVF|IrI88K)`)A8K0TrD8`)%M8#R1{8x3YnD1u#P*FDim!4Ny5< zSXWbGe|H~$QB77Y`FWaXFW>FVk4nlR(B$20(3p+vD?}z*h~CH&CS*n{{GuQrky2Fa zA;XF*9&$uj(8OLbdfZDnzG2%95_tb~#b2F#s_Ttl;l9Uk%&0s}!Kt4lXblhLB7&;F z&)9W!qy2@g(muMf1sM_Q0zY_B(&P7%t#ZPb5D8zHzBq5$!e7N#6T7o*kFRQUu)}k$ zspL{>%pr5EF%!%+Xmbm>b-F7MP0Klqy5w4h5iwBu)pq^0gscW9xL-?C;QeMT`VhGE zXJ{>NFPPO;ZF&QmGTrLbVMe(m<*7+QhKj?^x{G-=YsE@Vs*p&LRLD@ z=MW@tbc$epZUYLUfM(NaAg4K)kcCWSx0njf_NG75w6WjXqL6UIFMu(2y#vavIMYb$$=K#w z;tRp)wDu;Oikn2AC0MwD;v`oJpq`Wt@719b%gImqACZF511aQ2=yL zq4bCM-iBHyaMz*z%Xu*YJ8dU3kkL-;gP`)5G4?}=DFOp3ZVIH24%thT)sgF3cb23S zDsT%5U6HiYIzr-52uOoH7Lv@r0IyKPq#h>+@P%Cq-WLm8c%^EP`w;=ET(I`!ibOAs zeTxHPL;L5fuAvSyAo(5yNzXT!uLawYG7vs*P zyfD}sHvT?Xeuo9aKkKF7B0zpgxJP<+lNIn2nLSP-D8jgTAzwH-WA5q4$(Z>+$S{zh z+b60izox3aULwm0c87I<^NCSOmg?jgx@>fTkzOF(Xdd2!IL{Qco&lm!qi2mQ#rwnGXmU zfR@x}hFW8#~GbYGEmY?8AQ#DmN5z;$_V>epaH=jYo(e|7V=hSs& zQcDmqBCxugqcK8a_v$)5;AJDaZ53vaKN7{WhQ{v$J{dq>sfJZ9x*icXGZ>0lMg{i4 zmrO0L08(r3L&8qx5Wc3FVK`!$KGsizNS*fwYKL6oQ`f42{c9$=uHwoUf#nZnRNd@c z)N^IzD6g#Pa?%bBu8BhoH=kJ%kg=;wP^thq;rsD3jjtr)Ge(*jhdJ6ddZ*z!ZB`?$ zuDP#Dx0n3S4OekHdZ{}LNEcS@w8EmtPBsh(g-XI&tW6dkxwHt&{toZ@h(qhk-&z=- z4U2~7R6~#OZ`?2A1qL;Zuyy6nX3t0&o-HmLj09$Ova+1gIB^*trUwRznv_dh;d1-;i0YM7gT54~ELtFlr1 ziAL3qvV<9^48tg_KIZq55Jc8$&W8QU?IHT=T~~kOLb-qEKLl_+wX++mk$0&l9#O7& z#NC!q-XzjPIawNuu4EF*Of!;*_r+8ug50(@QBLnmQ z>iKMIZ~wn6DSg8|y(WvPyDX(lXb1Er(Hnm>33MOHKmlv#)sBrs;_=S$?`L*lr95iw zmlj@~Tfzj9BpfFW{9eqNh2iZ$I$w{M*GqHy9(C`8coFCBwjNyz$uf;}60*p~;pad1 zd>?(NogW_G@Mn~Nc#Vl%VH(@`?EQYuhc|C`-s~2hIwWf(vq@w}@l9zc+`PmFv2^^z zB!!Sefm4+zh?+EMLI9C`*RTsEa6;!nwUar}^mo4RZ0>!>(+lUbZ2y#9Eh`NX89506 zn|XLPt3->xOitWfR*m`e%4XKKYWli2n=DwMb?cksmmz@k{9X2)g}Ddj`^d5Em?L2% za)UOFCXpFXMxgxWS_c8ow996g@M-NOMC`1%-k|@>wbch5r)CFDA7}G4{K|7aD^1BL z#F}lII5rx6-9exAW4A2@IsycK!!tbpq=Z;v%KXXQNnPWCvwi5t79MotIy!g}+rE=L zJP2Mv@nwvh1nq%Zc)rb#0=TuNPn$3SH7iu3^a>p{24bHU?Oce&yS2p4PO>d`BTZRY z=GjGGTa2eo+5NzcPv0vDX1(ZZ8;6zZ>RAV=c0^+pGQ9f=j!bu`#GbyN-(|#8L9lC3t;X*8obKJYI)kPvL45 z4p#3jEm+U0m~gCqSB49k8+{s_Ixt_tz%Jn`o*Ou}B@{(#+tbiv8nb)tv5O`GPX?r| zC>yRaXinJAFg(aQLuuw0Wsngbe26FGpdIXE>Uz9tY#8GMTA~*)EfKJtA7<0}T!quX zs78P|pbP>qq z5MSLGgwerTqeVy-@FZ+@Z{wKti47V%N)gXA^J|cO?bayO6IXHSls`Bl6b0o#(&KXC zFr%cx%m=kdvj|xbOBcKilXz3+a4^~5eSWm&97Zr8fN+LE!@VOxgTI$C>cq2%D3Dv+ z4+VF%@ahCnDax=W@{Fcj zCPGHYGruz@XmaFlXG{D%MZ%RAGD3AI!?keZEb)WBd@O3}AkIWYSv3yD*uTwE)Y4=o z8O*XQ){bl76RdsW@gSEo;`^2|QjLZFbsEe!#+P%S2IB$GE94`ULr$)I9>)gBR`n&^m>TNO zH&T~LIG}}dBUQAqVnl)JRK1YFyfce1$T$MQSkd8NJItfN?k_>Gt|)o_c}Mp`mXSkj8L;fO23n0=h=76jX{#I-(q)@@%w&iB6w)4=7rZgbJX5 z7*kIdWVDl0skQR8LV;=|E<;hL}F3ig~tgzv! z5zu9r5WG#kBGoi-uBo%OvCvXS??Y`02)lQPj6~z(%B6kDOXacV!Xl?@c7)1WZUJ z>M7gBpR$b9Z%k$)=g=Vfg*jM_^;B@j6TVtp{!Pg^aIBac-?saQb(ksU7|Fm@N>H%L z9OCe>0f(4y9;(-ino|DgF&)83ZOj2E}|s(vM*^g`nK@a+^20Y`{7U@!j%zc zf|5|7!_fx7g*529VJdmmLI&}r+}KDkon+ou#XlQo1=18|mxdCINd*YqFvFBOF{eli zk6*u-8gUCVv5tM3xW$#iju7Ikq!R|JtiV}-033JcZC^m5A(%%swP_&y+$D7_ZdeP0 zg#KBEhV~yYGW`BLko!0$2pB~o_yW#uUIK1OLlehn=k z`)$;WwCq+#y4G%zaK^aP_$ID+ksyM0-ok{fUEPw}_XCNH`>!M{HvnF zjH%_>roF)Cck}P!7Xs1{;74THpfdlQq_&>8FlmwjP7CT_AA+O)p#zw4{_{KAXYNg zSLg*v>`ViJRcxiqtRErdNTkTbcTz@PP_p0!k32VF*3}=TqmFh`+2C^Z#WJ0Qr0Y^Kpy|7mHvor(uRiQA9v+Ff_fbox52Iw) zNeAFBfV5{aqEqD9KMEl+c>hy_U2DD9*j|6`xlwQm;%*cw$DgxjAwyz&Ybk&BJ%<=1 zB##3Ze=*l5=?ZjJuK2!;Y|7ND>y>F`JB6G?%9`N9tm zDeNvlf;d#TbT%LM5rA8P4ac#h#5uEX)S^IcjiBN-7?z*Q@R9!=8`7J97(%e$lj$2p z4g#VC<`CThh$PUzDh9(bwm(R9`XOM25f zFiCiG5yj5DN^SpPWsaWyzN9xi8N?l0S%r_}?HPnc2Rue>(Y-)U$fmv>49^L-A7930Q3NVs4kIQKkP5JR(gEX5gLkSJ=2wx z6xKOTcn>UDsZIXb4l8i{O6jz-iTXVnkuxSIV7R!7lMbNq2I<+1GQb-*>#Q#2=V0se z8VN<1NR)S(1fzx7CI3d`z`)SZAP?oXXLzRB8{3#Es6TnN)VpVwYc5IMebHD5Vl|;J z_09e*x^AtOm(ngMK>aTcODdR=v3IFse&&@EuajB_nyy6`3VW!iutJN;Q2h^JG z*r-k#^{;F0wF0czw%E<0y-^Y8y6-{5d>H{!gwUL=vl@i;tJu}}Dz=YH*^z)({Bc^V z5PeqinJ+bnOWmuC3i}B889$>vy8%*ZXu1@+WW1Xz&Ykpu6h(flqbj{2BM&Ei<E7 zv`aU14S1zgWrT@BLtK&l!*zkemkO;3Z=ik6i z*6Q@#Nq$qC87VIKX>k-3%+z+2uPoLV$G>>R83uh;|J#XG{uUUdAhn~lqiU&4e(7II z@Z*2%+B3T<8MKkQQm9VrhI{isFDr(_@2P^?$)H?IhTF4oXh63ZOB>?nW*AGpJ3lf5 zn_|UsK7{EXD~)S(HZU8hx*BIMG^m6n0>}-~LXLxt+=BW!Kf|KD)AgxZ3WQ z1mL0EITdGA)t$DV7!oDqP9Kz4dTYut)IIXonT+l&3#5Eo_R+tmH(fCEdKf0Hs~mOY zq-kKm=hd$Fs&$XKi8Bd=lw!!gIUhp%BiFbj}9o zWM6-a<#h8cy@~P|ItLza=9RvsbHNKyKpq;7tBJ!EKu3z`;HbQ&!5x}@Ua$}h4%ftC z+XtT#zo4EOM+5S@!j*R{+26FgW^Y#x1b4#iMG{fR zd6y0xaqE22ZJ*kIaL2E|@TA7uY{I1vV9*zO#12M;o&}}5j!599fc7c_`Ms=6dsFAJ&-e1z0OA=$ zju_HY@oo9_)4NMqwN}4JXP>U_@N)I%T#H(}lOOr;2Ywg~_hmQK)?slIEDBW7(JSKR z095ZX69UsBk>aa+CFNlLL;H8Kr%P!svabbiZctV3G5@K|M>gnW8Dwn%wk3BKb-}( z|45UtFfjb@X%g*i=dBh*zgK<7#k6cKTp8~qsSQkaS*{!5MaL~U^MmNnj=v;w9$nDm zja6UI+rvOSfd@Vm_2f5Ealw#RM)ml;+aZbT+cX*9-^2R5Js$7XXpPaPV(IIfn;D8U z3Cvl=GSGbgc00cr{K#2)-|nyZ_oO-Bm`o>%>LNc+o?myny}zedpE4SPW|J9crW@|| z`BkZqzpg|NJRy4Nds)Y)>ZT@8PHB@HWQx37;xi?47F-ww1DsPGS+yZXkOlL)|D;K1 z(sUZR*2kA;w{~KCAUv9;+-@99EXtdCuMjwTdj#Qx+qBswGElqj>6lD0O@k;SeiECZ z8Lj}WFJzwh`sA&;i@1x3SdPR%vGjQP5iWSnt7PGDraA4PT$gOP9+!-`v-WoHJ<1Bt zX0=#HdduRc{zD+?&Nn?lZ9Y-+ByaQbet%xKMkSZ1k$PvU(`Ln=4m_e<@5#pU94#M_ zHJNeM8zS3B=DC|9kL@D0I_aUq`$B_W5#GAhHA_DDvJ%-_Oxu423_y)cAbMjEu~DI8S-@K6|Zi;WIT(ZM0Zevf`2R zgcX;>cf_)*vMid&Yf28Y5?*~$*iRfauawrNy?8oDN(XGMh5TL|^6JBSpIBNlgC*;f zeOOXQ)t04~eqIL}CV@Y`X?9VBom9L+~bQP`vy}-3B>_Ur$Yp5 zh`ca5QjL>FAfRI@IH_;UQUJ&hF0ySFt7jd5F4SGTA zg9|u6rg(E;8jc{}Nar;J@IA9%@hY=_s;o`{=7F$qGwodqjX)j(4H$G!N0r7-E8#5~ zaBa)fk#tO}?3aq`w&c%dPW-)>q$Ik;1#LTt^ zH$5BL8h{%z3NPio8GtD62&&cDREGq1K*k%08-}N$LC3-b8G@ToHVD7G2jN4$86Z!< zju!@w;*+mhT#c`G2rLbQCL^R1X{JXYOazq1@$brF09loAo*Bc$aZnxllN9yA;bL4qYU=Dv!YD`Iai z!PrHQU==_EwPG^kG`KU{_%fl<`$9w5Z9<;x@z79w%a7R09g;TK$2 zUKse|*-Q&{K-LTC^#QeemqA5BbwZ9zru1&h2}gC}4w|S#_wR!}>L@c~CYbZ7(}=IY zgkN{>P!^cDi{c?_b^=MGg40G;RrGz;O(R%iVV4aN9EHo4{|LgNAUyGLt3%`944@e3t|i&%|;vu(lj%3K%e;P6z~_g_4h{Cu`+nX_-?gJ%Ig|7%_m8l{`q(5iLAI|{bK#g=1#FJlE zbR4(Oz1KEJhM7O>KJHwB?`YW|y@Zv(QK~se&3);i@7AoTt;yjf5a&Qq(TZ8N%z^FO zbpbgua|!|`T!|yh05L$Hq5oXI_*vC1ZT?JK43OSL)>m&Q1ODPUC$Y)zUCM=|WiQ=g z??4SD?;QcRFJDNmMD~SSAOY0;0SNiSGm?Eb=5x508$N5!&#$!^BjeA^xJqh@Y$rTb zX?;)ZkUEB!JGG+l;|Ho^KD1)$pXtmkn*60$j2kN4@x$tp2wiyc5I#9}xvg26rUV)$ zNN}_L5Br^{Vhpt3;~6xgSMIp>yyKsM;)gvly~ZxgD7we!uTybPWi?ZGV8yRQzLy@t zrfgb-`rUBVNaSGpR&Ber%2hUgxwd=J0MrCa>NCWUd`Rx;_{Tzr-J)A%?ew(YzP->q zDm|T@H#O0S6Gj*3{PNT$5lJ!`%-ABF8opU3Gf?}x9B(%9<_Y(>2JrKy7oX4C;iRVX z-ijicYd%Lo6mZ<>L5Mw~e;f>^ZXA{)P6mjJL-}P-=?XW`^sImlPIOhqrNzjA zti4!hPe0|EItW9kN{ut?Smq|p3V`yF+p`nP3gbGS5I_$ zW9k)08CAgdGQ2Z0AVG!h{Qk5a1iR^;2*j5^Bf$(>zdz%%r!JKZ!#-)=d~ zxindDd4-1xqEnsPFv>;Mqe=&U{*f|sOyM2{>?d;>@7uI)aiu`fy@Qe4Fz6p?uZkTV z@j3Y1KA-E?^2OD3ijl$d}U0=@m1_eaEFFGRz%POYsf!>$> zcJ8~?O1)^v?+W=2(M_h>JlK8@qX77X`iAQsog~DEhj;T0NZ%C}hmg@-xuCq_GM^-D z_WZe|Cq{;&i+q+$g(0REb%=x2OY^)4->Q#DkQ@*OFYlSS`S2I_B*#*g8Ug!uzB$Je z5|h&fE6*F2+wwiG#?Dhu7zcDxdtFI9LTUrvZK%LgWe;R)qfD20?V=BOJ?ITIMp+mr zd7}GFSSOy_GhYb$xqpLd7LDL7i`ng$!Tr|FxgZ7pbx9~^gLRM*p$0nD-jnN8y_>P% z3(UgCBmvoiUg7OcgjN(VKM0S8%&xGTU@d~QD2_aHR$O2L3>z4H4O%p>C@{35+{&Po zJiweu8_!p)Rgf8yLtRAJK^5!~!BF690sOfCAs{_dV^DN>vY;x zceDRcIZr^q%`}e~zE%S&&30^j{NS~GD^d^ z1Q$$+af9WVj=QX$TXLi(2(s#WVw^BZ%l)EC?HWPe+vSM)IIh&7h4n%oOxzU3u|urj z8%}VP72N$LLX0CODTjfoX@hTMKmKXY5K!%?G#oal1K0#m`ZIO_45~Y^@jbD~s$oQ( zZ$w=Q7nUF`A@a(ryxgmn*Op?E(QjAE%infzT!K&z$f(*oF?@Q9;a5(-4>HAT>r6Zt zc)zx{1~0i8QDpoVM|q;rF9UGK7C8gBr)GfMdHRi2?n27i=yAeD<558)$u%tbvaw7s zQ1-=G1KIp2BAb`~)5{cBnXV-c1I@U{>=CBmCBueFV4ijN=wk-C! zz8$vGdUIwG!J#b%#BtcHc#6CgK0Lxi`-4HFmC>tmspuoTjJF4KsT6nho~7 zcrL`@AL1Z7n&|I{pJyyQGHtwo@_pE66!&X7VWXe;Pq@KeiosLF@C2LyAD>gyHYlD_ zUU@t;T=>w{qQDIwO|{aC5wFZanH6`}OzbX?aQ#IU`O#4J$4>G;9{M#rqL}Qvtw1nl zni#$n0rl|zVqIUQPoW2)o=kTOb%kS!#GzWVkC{?Ra=5qNVgF=|$pjek-}C{rcVM3V zB8tnQKaJ*D;`|GjpYY90meHlo4xDx@pW7>}Sv#edsZxWKly=N1l27U!FGU%I3E%d5 zsy?D(JLyhXT8CE53^q@SnD4YE#Ro{ICn$O-m^!LSGvUKO8b6nW(=WC=yY0DP0F<= zwJSSSW_wAiC{jl;oeO4S>Ui^BKSVn;LB$k`yJ&GRV3*=K-#1nP^Ttt4w)gk!-mRY3 zWAVRcVOYb9m(PY}V1NI~WamhTnYaE~V|dWdEMf26`a>|mbfi`W~a;Nzp=x}dGLHS z)#Phl@@ut-3ZHM~T^U|jm;&h@@3@n_+Wta+7!_8m^;sx{-g-eSoauPXC5SqL&sEQ^ z>^AiJ+TT$V+-+Iad}ZjlXs{R$i>YGGrl%qold63{>@~|tpLjMSCd<8Xe`d(Oxj3(1 zN5|cHQ^2??1nj)7p>QiCG09|3oyM4A7jn9ZVhOQyZ5h4Y6vzTj^6g7Mk<4zl4W}H{_|wSqL*%FIYZ5g%}uO{Wak# z0MsLPc820ZV4Ad}C)k{zYaL~o)LGv?+Riy=L3*ew+I|GT$nfc3x5_V-k&$}02ms-L z?FPXJfj_WRB9}MPC^2a>R*}2B*8$w(i}}dO3Z+EA{b^bOHGCWX`P1W}u-4Ms*^|yxmV{g~%oxAR@ua%ZfE!<5|0alOS}K@^bIIi+%YRj1mD%Sz-r=eyLoVrJObQK3$A|BW6L#flA#cJ`Gpo z#3^U6m^}01o?2KRMue_g*3q7hhg(GPV6B!2($@X15n|C7_MbNfMuEE97)tu`(QVLIG9 ziZM*~U>&EFbJ9`w$3UBIP24MZeDZ7PMqgNLGZBh6U#`B_eLq9Qv@8w(A?6s*G3JPo zpW%m-Um}b}dU<0WcugMHriq9-EB@)_L=~b88OFHWl}E^wR&B4CT(i{7J_Ul*;J zcX~>J^aM6y*msVi&_|0i4ze|ooI^)h0&kD5?Z=(FA=94D9*=w5=V7;WyH__LbB!HK z@q&Nz<){e3d*^gUs_u9TUHXt9vB@6g2lf!ncroMuplH|zcHF|&bFQy(DvS$YTohS} zlR6`dbOB21{iGVXXLb>^D5>eCo}{XyBgpXOAo#T1p-N9?^6_9?t6C?ZG>AOx&QO9C za!Tl^Ebvs(D*HoEEYE;%5- zo|hyCn(U1SZ00RtzL(Px`Owq9VznhS(|ZOhMJ#}j$_&8zQXl$3auEr-VDTdJPNkgZmf1cc31l&z7lR@?%BS2tga%}emci*uSveW zAMcZ9`(HlViz%oDNh;vbT^e@K8SC+j>;lQ#jH`mBzSof4mY$5+nNazWs;G9(yvrZy z5;d257f|mt1HO6Qwde-n9WxYO@p}qwyUz`QA)(4nsZzC5k`qO1QbuN9UWO@|2ElQUW120UcS995WL2D9EnJ110TvS&tnyVA7ZYt^0)KaB~`?-DW=;LJRIN)M|x}V8) zmh9P_6+kfloH0MqwOS=sX<-FF;styMGYEKR2b9~P>X3Il#M;sg@`voNAUM8KsXP=O zUq1QJoU^5jf1MI#9`Pg*``-yeQnXj-uy;1&;wkYCXkdd9dXb>9l>Ad-})BClq{6R6`8 z+XUGc@}sOV*|ZoM2(R-(`vOK1G7yM!YqZUF<%mQ4x&mqP#%aT$6`r>9B_Y>=ob;Qm zziHco?vLjq+g(^!HcD#q}j)x-9zM4kMYt+wS@Rh$W=^ILDO)Q*i=XXL;E372Y z!BdgtS*u4kro%i?4a90?@W7dJQZUO5J%9W7%`LjAS>|@ht=E7n=)@Rw=#wG40@1Gk zM@M!IkOEQ9FahB{@RLvvSPP?8FN8vXHX;dN#gTA+QUwuR7go%qnzL<6J(ruW!kNbJ zBDh{7z;Gil#SIGoCWnh@lu>P}OGW;D`y$&(v;NtlmGsn#Y4_uGKc>L{c8ls^0yVRe z1HXR$>e(xj$h0hK#*5N{qR{EdpgPG2b_EVGp(zP?*^BYisaiDP-eQvEfZFopfVoCK zPs4)ihC0F@cmXU?IDWW5#B8t~jSxCtxg&#Y*JK|)jBA{)Ycc~$~gVwTHRpc0;HSx3&gJ(c;tc(Z@f6C>}?r9hpq{p2Jz|d9(MFn%zMqZbavoXunx^k&!uYV$|b8+VUR0e8O z{R;Vpb?d52O;kjiXW0Zfngtz?Kb?-X`=|L-u#@AE!k>F$7q_pNl_N~{r(*x8ll}N+ z?i;T9MqY@+EhbN=27IcG0Hz<vEMC#tvD>M| zARv;_M0b9kbzxu6`?iaZ`&Yndi3bye+$W-)ll1$8su`!nbhyH6Od5;xOS6LA=ABWB zDu;BCx+cOZJ}nR87Gzf(tV-YlM=JrwBgs=n<49@c>?VWU>5(2lnImFljbyYuw0SV6 zwf8O+FHXk{SRMiN(%3)Mmpj|>2d=h6peiw{z)v6J70fv!_ z9?8UBWl==GUOiI;-co8Am7}8ILc!wA#izx_^#>|8LBg+r!|h$#3T1}in|xx}(|9)p zoDtb)KM@bYR2Fxx45XrQx`&GPMUz!usj=qvAm1>~v>?=d?dSwZCpQM+&=G*I&^rHl z7CM=GVP3FH?|XD{`SyxjL5*TnZ!^C{ZmZUT$h3A@4{;eU(Xn3_has#LfVQ2e&jrR_ zAk{X>yVe7x-xUL9^x;j1m#8M%MA})S8h8pW`E_g=#|;xH8sY|f7_!Q$HfqMCJj=!2 z+$gW12i`h@hZ2jSCS2pHWNW$NWsEUP3rbjlHJs6{6jBH{x5-!vj4b~g<*qylZAGoe z&}7BM6GnyF_rx^~f<2y2uW)haF>vDAY-e_zVemZkWDvb1fJ!|+}B9YOOE!!jhb*-T?`~W zV!NJ-%;~&;kuFNO3@xlh0xzmq6=;30?CzpTdz~q%#Tc$rZLz|MT3<;gYhN7JCx*5Z zt_!rfKDxpR9}Y*H9i?%w z$hTI5FmbJ?88S5PD+b?t(-{vDE`w2`-0-0jCD~XK-ukEE@P&-9yrEb!sWaZwLn5gw zpX|swxum;mT_wJg#d1EVBf)(B(DBlvsA-3k))PLQ^(>cdI6^QHP;;1oA!^DTs9bLW zfO4ZGWGjFCvGy0Q4Se4@0=Wn(CD|&EuT;AzTYm7edXSgLf+9bgB_?g&U1A;r< zt`hNb4nm__v0|!3IbPiO*OQI<66d{T@uXaIi+% z?+Z#6u-hGF`Bm8_b^NyXJoODchuS#tpZa%pCdU7Ofna1}`mZekS{rd2Y)HN{>i_1% zjME0Wqe&2D?Ww(hv#ykt(6ltSRjs9AHM6h2e8Y=OqO~*|7VWgq80oZ+k8UlFC*dqR z+B9c}*%^A;yzb6clIZE`qka!BxfOyH`V>|ZC-v`JHF~uA%#c<2b-y8K->XRrhcI(U zEges7Q%LmF!^?_h#-qCTEP>Y z-EWYslZ6uI3VM4KM-)_Ie?ADew@*LdxBD)EhFTJZHJ06V%D&|}$=UtskG$y6a&DRY zVM%s~&AB5Tx}7?iEliFqH>_JyXxK zQQ6NA@O4~0_7_JbM^}^b7Mv!9-y+>&khu>>d{NO|Uq0PNUazZz4MXv2Ij*q*I--$@ z4VK(p`wY+>emhB$@iWzdd$R+8Wsf77rf%((?ayFs*;;3o0Xdw91BM;{9TrgWVssgo zZZ7RY)SVl*Za%tM7PRq^3`Ec@&0E%#C6Tqh@b zbiZ-gpg(Au4R`v=tm~8hG0gTzOX)t`K+#M@IqMD|GY7f^;+=;}j4e{qg~7I~c32}R ze)61%iOMCq?#M;d_DNSzLIChYEqOsGoN5#bqeu`;_{0Jj6f`|q$bTI|d^e`rXsSlpBP4K}B=83o`Hj1e#r?8)qH*J~?&qA6pmCnNmbe zwWSM@+cifvKR2Us_wODw|| z*Bel3=XtwTT&I3RB))woZX~A*w+ct9WYtEuXTnuZF-Na)#IO`0qkG5k(Bts|^FPf< zMUn4D?NjcZo4iwyIm`TQSH2kRJo_sfW1k;|;}X7v@_I^Sl)^tVl6==nQhEgzMt=~Q z%q*QFUen4}Hsp{8(P*w#C8FIv$U(OVv@}Niq&S_CR?%|hzB3%KdZER!f2Csuu`#lO z5aK58E5n58!r9_D`Qq!W%g2JK4+VP{*m>pwGSdPr^3T7_bp_yn4WBU;o}Rxtl=NLP z-a*f;ot6`6-7j2^*G~`}6W{uEW;t1fau=PhKOWe|?UF#T(O3hKJM>_1ky$gSEX+xN zVe}M~oo2SF%p^o^q9e^vTf)Q&eBw(QHgScE`khi|Y>>je{t)vGDuiMnRH6%-Gl^yTZ2p_P{B0EIWY=pd73k#WezXRYqNQ}c zEV1WbA{9A)IMejOphmsm;M;{l-Z340p9zw@&@@-)a#}H3k^z=}w3htIOzpq3^9kw~ zxqs*HJn7l~44AP?m{$}&aE7lAKg*<6aL5wLCr~NelI5-#Z`Ee4@Y&FSZD9k}%~F`k zUOqa|ooA;QsJryg_-wEzf-4siTmW;Pz9`Wk1wNC-NcFt&Y`v9Soa!9cM?6-TkHwZJnW)p>k{sie>td?&@JJAc zdq24goH&B`Qj1>ixis&mwsM#6ka@q#-`-fO==$FhQ2bBgGoa_+$ZFrNu@@a;)w#1j z1_z+y@>v)d+~)At^YdYSB|QB942@!9{lBV(|0lJRgXRBFJ6ZpK%85BU?RMm!almc8 zZ{Zj=LO56uxEs5Kb^&;hEWtX2rvo0b^`bR)gO15}kGVu-pb>S)whp;Ky{0#SH$8`& zg@;EtsaVCS-*J+-Eu%?tF3~Mgr)ZJPjij5tT}L{3D3wgMvL@}aau<=w!DUG=R`3D* z3un%`#3G7GXtF(0pAQpkGWOaX0W`xo+$g8}i}hrz4pHyx~~$?mU~HK98G(W3U*H+qDr9^U%h)=;mFot;;aN%9Wc# zr%Km@6sMKXYNyL~^j@RsFKUiLTd>sJd)JC!x=Jq=G;+74Y+99aO}!B2lJK(XMZz?! zCj%%yZei~z;Y~D@B1m~HT)H6fDtN$nPBpwf)Pyz)ajF6Qn!o^(wRNc4^g0L)l5~7^ z!F#3ekeh=@vxlRrJ@kuBo>?({QGgN*W7^|?w0pb}iL^n~qR$azKzOuLzt2~%C@ zMY^U?q&NA$v0BPRV;1|%K5xIJEDA+If4gJzpww!hnI7Hj18LnFO~S=!dpk=@j0 z3N7*XhOV(9gcn;P=|-?EdS@}{pd{=s3W8`x)<=(^6ypF1`#t_KTRF?1%mntU2hrBN8r%NR6m+m zoiL){rP%v`+{uUy?&h8EzMd%^vCZxTW zs6kPJ_+~=dUr>02tfmi-*1Wl(YUPAVtagNQgRHkA&miSR*stQ(ToTUr5ScYj(I&67 zK{-!<*Mqz74?ko>`#NmtX91AD)O4>+dhL7_Lf#pBIHJk&TWSdn8=ezt!OAghpRo@L z!(aDs0vm7P!5(zd2xe3U3eX-0P*GPk+;DQ~vAA`1R}UzI;i1B?+!- z40X9GsfYo6?cv@j)(&TB{dpeciGaeT(yYw2tR>k+!c@YQQqf|5BNG`08WU?8UFIJM zvoa$?JKp5ipX`bEcg_>SG!k5;+YJpm9*Y#!2CupZWmHCz3!khRyr@1aTt90BLqV2( zhw+>lx_Ql&#Oi324v2m{fD{^!RN&1~Q7&f+R{OL(^9deM%{eHCeO0~qv;)&Pm~&h_S>21B?w2uj)fo7eq_YpS|RtZca1}Qe>klS4A{SWed(@Aw`cIn=tHrYu2(; zVd~B&=o(rg2Wh)b=ikWx>4RkGTvwQYNxUznAIX)7y_(>hC0GhBQKo_ICWX_2%^Xj{U=YFjFF(gCA6+_sA2|YD~`*^l7a^ zVjo+jr?qiN?unM9){5vWPGmtZ1c`iV5Bgz_fClmoqd_;hPxG=I%w)xmU}hxh?4P6e zOH&sdR-jH&H`?uq8gyPQZzzE(fLM7D!QqwWnbyC&oGeuFQS?mWWSS%-7n(u}zAO?!zi^%nKGxax(WtIv@BMP~hX^v68$es{ zuSGX>0r9uomR+tEE*fcR?{Jl%`- za1B^VCtOZZjlu$B`@*at;Ew;E($tpwK0XZ*Pj_WL)C{fS^bJEH- ztx0+8{T@dq7?Jtszv(#{?ndx{#~shyRt9%W70h|;>5k3MUAsON%aE(?%f^0d+nCgX zuYVpcJXmBS6Y$EdW#S^aRt7X~Py5lAes2j-uqBi}5nnNYB6CuM`cJZaJ=WsX+U~R~-}Me#tA7IgYoFW;y{$b+S09nyhzBgG@OD zCg+M$zz?lKxSdlxJ*RSUMeE>#(fxT4$K(>DID$o<2ioSeu@`q`gR}=KlfXc!G3`7# z_IgaZTDJ8mVMEu{7PW>|mGCz&{;Ca;dpw35c9%${bEtn?t`CKn!3Gi944>P0XPvn5 zEx7KKvQr2}VZgNbXy3XsbP0|-GJS6P&776;XEXYOK_Oo|qV%cJg%tLF4YP}^P?MO% zXVbqD%V>qA)^3y|2tDme7oyTo7@x*5TKqYzH639NOl)@xw6TV5R7B3TlATD$R`*sL zIp6*RMtTwhO^@F`P8z^j6glp;s%28dOj{;6|8vhQ?U=>f zA6W1QHMRYp)4!N9Jf7m;q7*cPu1qruJU1+BGZxq8Lur=)r%vQoRS`8~4;hnRDdotT zv5y&JX@Uw9L=~n;Gt3d@_(P2dPTHfLu3g%Y?bX4X%Yt?nM6Iqditff1P{L8d|C87} z|HEwlAvRMo$+hs9sF*|h)af>l++)3;Nz=c{t}r~om{o1g%uokqZ8*2uz!1f{e)@wh znw5~bRat4iAw65xlUp{G zZ@YhH+O^RwZyc&5)P{W%oO^T=i)5);N1O9+>Kji8Q07aOR*C=OJm@EiwpL78WLYRZ zoSLcJpMK#F+((+WD`%!lLZ!jN^WdW{BhM6|Wg^PaVx>FK@F5E(FFRt*Cr|vUYU}!K zKzk)}Z>4&fO${ZRAKj3-vSb7Ek<6TcXR;7Sxj`P=!fyEY4>FVJs+QFtGdu|g@QQ`S zL$6G1aDF4RH0_?6aiPC;^i)v==GGUH>)gD!BBWs!ek5P*wsYwO_}`!WI#ymnE5g%j zi!WvHO&&o{?O(Rdue-JKLolq^2W*s@l}~o6H4{@RW|FXYt=VC@oq)p3+5V8j;u>k# zG*_I?E^1tkg7E=K)e+RD1Sh>F53!t6dr2}(#-!}S1zG5!Lx$^+tW>kmL?W7d&T`w8!03PC>_?Bvfp!Do-3~idU*KL`dBEQw1erd zJvG4{mIXR06>e_=#Y3+2>&?9#-ftd)vFBZe^R!Dp4#a$ue5P` zsS`d(wL-teZpKh}BqKLAcz$CDHf^6L)L2-w6wGis)M8XfeM^dmq<84pe?ll5qa=~b zr#-phpFVq3(EKjjnVFNA`doQ8N0$U6d6!HD|q_W`oPENRKn}r8qDCYs7?(=t< z5F`FOWXkZ{Y1Xpa=5U_6b1g)>+kf<_37do;M|IB;4Lkk6?!h9QA*5YH5F+@IRy5=3 zf`nCOz^})M35tu&o0hC8kZ}5p^_CsRUDwo{o8-ao%!3694TLC6x4_<2C11dX2PXY= zm(i4w5ZWj>48WO<^Fn3#8seVmWT1uxkWUnZOcKwqU;{S9@e^PsJFrHi@hn;mjas!` zh4Jrt*1Sna&i2msa7Du*IXn1$g;7r!24i=?=%2C%&7nSiVOj1<-7zSHrqfKm1`u;g zU!xOD2Pth|1!c#3WiX{->L7^dmuLL$JQs5^W~ zAl|gtdJ>Q{1y6+F(P=?27F2^c|CwO^3^58Db0G`{24p}ZUDkKi;4~CL>aH_Me9NsO z(;*0M>3>pwQ2RQlb6Gw+fAkP{*fK^>Pa8xKVe3^c(S+9Zh>>rv7 zn-Phm4j{>D2N-_~7iro(2S_E1k=ujueoMzE5#;A9ufzT!;@B6(uTGk)JZe{MymAwL zVDajTXnC{#r!vWl2$^8#02I+PS*f=npHK2L9@vnWv_(5+OLD?pI${&oI&Bk4Qq4|# z{&FYN;E=@``Y0}?dB#e0ym<9uuc^-uD$pm<0#Dz)C&OZkYKh1>Rp1dVgJL$5!3Jhf z5VmxkKb}ZdvvS<)KNmM(Z%#k~+Qkp7h1-3{z*2u0KZ(Yfuho?(L9$Ob6h>x3%VHt- zQh%?Pri^D-OEN8D;53gIbRTL1q$4e`Kg>@gYyfQ;I)}lH-f^+SSU(XN1j8}uS%d#& zLqwmSS(xGtqv66{G+X~2%#ZK(;3?@qJt@Ev42EX)4atOQlqi|TShT)GN_UF!%5U|Z{=i%EhxA#7q zZRpHAi4XFFd~*W+_e2QvQ3L9S9`KEBQ355t&RZdkTETbf@sgKenH($-jun2EDgMjh1)ne5{R4g^69Fwz^9vg)b}d2*V(u^t_g~G2@_Au>p^xBqDo$CT={8{3BYxi3$Xw1N&BPOuYp0lYDo~`r2dQ0L3o_ zojpSXbF{l?x9=yycm_=VZ)#yr{lT-IKrPJRdz$lC3B%M=?_zxXMIEe0cYWN7VkDxR z+v$DdzU=SIXkppX5LkEt!@>`3{I61=9mjYW2m<8%Yth^2WLTi}5dD;VD9gHo7^5Cc z_u18;OyOET(a^n(6V@d5AeokR=MgRP`qA0GYH@y>_FoHEjmCgFe z(;NJOUR7~qE47P@OhNH_#IfDJ{c)Z6v>!jbXVmE|gH4nxHu>5ZHyobWVXNh=uEL0{ zH;E;a*6^W&*%IU>;fLj`E8QaEm&b>fOby<*|0Tk3to)p48cXV54aDv-?Q=g7*Mtk2 zFnk#O5SGNvU#1T3!X2`(rNR&NSqb6Xr|${+UeNw!YKQ$t-av!fhNC((;s_sEU+%x= z*5SF)0(2Y?J)B<;{V|XOB>!XC$@(9#WGt-zJyW$>Yr|<{1iNQN*@1$6c2&!GCLq~t z#5HHJ+hIe)J#G{mluoc=CsvxX#~ObG{fzfbzgnXpVL8zgjI8# zhfV{c@il{c@!tAK^{`Sk3Iu;UqcYVf{v_%nK`@A@rcvx^qk0lDj|tb(%;U3jr*L$C zeoQu+i{n;}%G$usvR*Da@cu}}!RDDf`rv~;nftvgn_kU;fl?EQeFD1nHV$Aha=08k zz<95apQ~<)w}Vz0$s7H0wa{$QIYrgiQ#y-G>m(z>-pj8r7v?azj-!y)_h4K3JE;;7 zpJRFBv>15hWxi1DBp1EPaz|;JX_0|%##S)YhfSJV%vrUB^tdOa;6msr;@bHP$zRLy zJ2#ECf%cJQ2)XkLx-+wt7IyBQ%2k0CDS}o1K&4S7RWRP2d9u3h^>G^z8iaVp zOiEQ&NnV1pr$y@|-w)|R)$|;O+fcUohQT}?(EpAJw3{kinCZpa@D^lB(T2MI)wCxwc?8$GWFP+s@2nax zSeCQDTZ(0f#O(Neh4hYke>Fs_$*jYXRFj|#mhL;bSwjA)4B|GOY%i#QJvL8gTu}sr zGM@cz#lOcWlf(=NI**eK-0}u}qj*mqfr*nXMD71KR_J-)eMI=}_#sV<t_FRJ761*$(*D1@MebVBQ87T!<76TIbs7K0OJ+})8F zFSIm}xmcLt>t?sVtT*zHu{e?;{4dGzxaSGA7>T;MonJirw`)pJNuYbq!Tg_ehL_~3 z!YsKzOy+oJyP!?S1Qb%863HUCFP1^S^6ZW604#8BNhNuP`-*VNKi3RH-3V^9H_&Pb z&|d@XB|+F(RKktK7-&*9ct-$+WyXJ+zU)nPrVFEg9Zcz@_e90##=|V0FmN$1f;ci2 z9=YRmuG_^LDAid|g%CybXJ zY+v4eGnir_h7Ohg+%~RLUtiw2YJ=F_fs1E|z?JK5rB)wyNUj#>M$mCMcUIF4(xez? zAl_6$f6nv;UIvBmY^jhu{MP_pU^kO!Cpi=G!8*Xz98jty#)T+OE0Bk`=TIe3r#cAC zpu8rsMj5{Z-Q)h=s22n#Ju;A> zs-twi5Fya)YeiP{g)c&{cVE5FOBO$8Hv344`!w8o@>I+w_WhbI`_$Rfc+1FBxIP?V z{%-3jH|qPYy`K@q7bz1Ks}(GW|L4VZHLtt=)RmjRVmO$m#$n^7wTDgqw+FiaN+msX zyha4_7Zf%c%6yG#!&Elg0jFwvg(Z2OL+9P<9!39N&oe?Z!lGAr2YpRtmDjCst7nVj z8n?WH4a81|S;}yDA^)l2>sT<$eTxN`xlyOq8rU%UGIH1pfuV;r z^kCV{XA|QN-SI1kryq&X2@hxPi94F)evo81t8DRMUHcy?rI8s4=L=B3QD_T7h$I!W z{(WG$BE95*=^q$sYs~K=Il9U<;<8q9rq_w>Vy(-Ql==k+4z)$AacEwR|H0ThHHp%7 z(VAu3wr$(CZQHi(s$I5i+r}>2w%t2UbVQ$vH#)w&SpOh%jhSa8!cQE)tD zP53SC1Ea1i!lAx+B&YN7`d>=}EQ&+{%gLV)g_Cu8VOE-3SnDgtKjgEgoA>3pvf`HP zBmME7MB=!7zPTD2^Jp2sc&CEA_jhD=rmhpzkml-oyJJY9i25yJ@rSF z=<@aMls|Y8&W51@P{`pW7n7gB<4ASL&fg|kTZtK0&diU1dHqEHAMhI24)5lnW1ze8 z<#=n)wfC2YyOp*Hju;w#Or6V=F52~QyaCdVH{3-rUF=WCcH2m;#l`x9Q;w~<*ZfP#N%F@eE_3 zjsOmvxvw47hCI=(4oxFVt%4aUCbcY|;2zvf z-d2L!Uy!c&PxH2+`b*+W28L4+*MjtW1fSo7?nM)3x&l0zRZficCq#^?c5b!1?|^V$ zPjzLlAylXVHlsFfh8X{BntVpwPl?rtPz7 zUBAKxY%1Tp;3>B6j5AM5z`l%GCku`AQHhRD;j;vn?M}aC^N$JPS8{0ERiY#+(O{hOpvi_$ zSM7F#tIDeG6S!&QwH!ua4C%tN0`i1J3ckY0XWQ}?F^C=0OP~8}ZbL5-e4V=rV3KGa z30U>_AwD2&wx79ew0d@6xYQroqgJlY^)&U`TFm@Qy-U}1ZeJ%K8T9vvi%_3G1h2`N zgxF=V@=FauWlJ_f{z%2k5BX2xuw~!PKm!`>`%~9sPM26voOJ#f9*yvL#T4Rn8O*L{ z2roMIa;Wy$N`}F?;CRb2T!w6%x-5xFFwtaoq!~6JzLb{e)|n_-0#sX8)%>bUPk;|= z{TkN@N7dnFDp4Yzl-WxSA{F_g26D`D z&_3uV_X+u~X>b*LORh);9C2s$zwqWP!cSxRGB(6a92L(_H69?~N=TcLwDK+Aoz z+lEx}c)jh~5zD1^$qQ_-w(txUIhNZ!G|fu#}*qyi0&&%ZRmzL|7h8| zpbsHJ1;^DOE+u zt~*`XyLxm^Bm!?m%H7fRdxP6FO4mL9mfu{r0FwPu3&#tykxs@3^@WE2 zInc5F-!_r|caOl##K`o&no6&=FXK1c5r1?02E&0u(R3e&*;8+>!%NRuMIHZDu4>;P zSlC``g|0qmIwgxP{Pr;WNR(EO*&*pf72-D*QYJAUO@EyTlIm{JFOIy@|F}FJZ1zdC zj!TqgXl-rLrVvo-pG_l7oE@0;c%*+#lk~hDpV%`b<;AdwPyko0G1~9^y!{*O>b4jP z8MV$mkurt zrD#EiI5MAVzOypx*;dtd;-u5`%A|fV1PcvpHNMMAKb;i;QS0((yK@a6qSm3|h^Aso zUn9DITz|_eMVTW^hSCtTENCbS2U`T{eC2z)vz^*~WJHPSPj`6uXBE=Xm9H}g+U@Ow zt#0=m{D?QZ+cntISw`of(z#HgjI(hhlN84kjVx70(fJ7Ib`B1Oq%stBF*H`lwDKT} zjAsBPJGMchb8dCzHYl^Ca=$RS?6p@F_p8ky1N}urdOc4nX2Bu=pj7ioTt7ZtaTxzn zj3O-rc%oRft=tjq^0^FubV(EhvOHJvH-#*iSHGt{7erCpK9_$zZQ{}My5`!?M-Z88 zul8wp%jH^H8~E9jUORDul^LJ*3fPW@Q-w6l!sB*!!|$o#O^nnMiV; zr*newvWocuEV+-u%P7n#F<{ddi9+zins*Ff2MlFF`ElX2on=0@jQr9s;IFkh!tM=j zImffI-p6=t90v?NcT z`-Sc-&RT_=?E-)<4IU3MYGz3mUSjssegrS2BAERyP#JW*Qf_6Vf>~_3CCgdXtvE{EF@xJef=dH#x0k4vPyke_vF{_yyjA93Tr+&u8EE zgz}#qLo>tZ?GVH8%eDaCGyn!N`jhjM0eKweJ1xvuF$0As$(pa0ypY})fdMhQV@?XU z59k;Zs$SnKGae8V+yqgu=mGYRWBdc^g@Dk+nyO2*J28xnjQeKP@#N)(6+852(;;)W z?5ng@KA6+c9Vba)i4n@U;nY*X@y%&=CTCwM2{7>DQ;m`Xh6z!>Ar!?myC&YqH?XeP zwdiq*&vctP;=xnn!Tm!Xxd1Q^g`|;{2xE>L=}z?!cV(%v87$TyC38R1@>T@ zh>c8jDGN?41lnw!6Rqo4_gQwX;GrHt$d6ao#3khyP zt#1&4&nq~|AqB~9CvGD58)Z;U7L6jz61zm!OOVZ@#xWVN>rtzyS!DTa2)+O`cH8r? zwJih0Zt%F(g96kt_Ly8Pwp7EzC!iq7#Y`BNs}jgd%EII{pyAVY-U}U_c;I+Z3-?G>HEIKtgsfmMm1NR}oSIR70_ngNdcs5PFJ0T>EKc zYB}(gYzyJq6jyH}f9F7(rPe@n0DPE?4J;dOrfX)mHSy*sce&t>jHx!*>tLrex2+kT*hWf$;c|h$jW^(6TDvn2oIrH`*hp>0;x=C*jZ20l# zU%n1OJ1BS>8_RmbEkMFYiI^ZC^J|eli0b56NJ|e^YYska|M<1M5=(fRfassV11<5*KPU z2X@!wT!X~LpW<+=%I5bIcve}+ZN(Lc3x7?StH(KP&Pw~x}rchh!UX;ZpHGeC$C z7DH+Dr2%|Gw>lDP0y&AD*Rgzu*#~PFdy$j9IncGFK_Ii_QAvBfq~Iah<+Pn5L?wgMXy9~W6Ws_bEz8f!mHaKo+L@?xg%B{N(*+m%D%z)yy;UXC8GB4WjA z>Rvyv7w9U+Qglz!FH}-8B9vHpL^zg}CjJT>{k*nlx5}l`s*@)!gmadNkYyYwt_4 z@!t3N5fFf(8EP~vyd#zk)B=dQ`OU!@`7&DjGP8$nxCY*(+Q+@HtuBYEiUCg9%x+IC z6${AwolPao7$psLTT^-oldWj9!4(YW8aAzt=||P-sU5;XB-l38(457NnudjeuJWNY zRIqk%Y|~Q5Up9#l1~^;RJG!P<7LSGM0h-#HC#r*+<)qCPzdF={zM~6g=e0U#+}2!x zrrn3r4L8M+IBKu}HmmI(8TPv7F=Yy@#ZmC;z*BpwuV%_jbXAb86CWz@02NdB5^P_) zy`ow~ z++>P)EeBfGVYXMpX&}S$YT=o=xlsga36aR);WkpX7W&Fh-sx;$N0R|x)K=C~ zj2SZd0c}|C?T0f6_v&LqcmzXn5>WJ9eERC3xCa0gz3NJy`&0%UDMuR{DvIChvu`Q$~j^S^G)@cF+Aes4gHL|w86gXrb7tR(FVP6VB4fMH7 z@Qa^Q2r%mk#cW3PZC&~E%7yaJGswy1_r0vD!*`m&jccyVHQU=5_q)Ar;M+9eUgkBc zz`H;Td%<-`avijGdfw>~R*MZ3g$ym|>!|Dhlo#mf>UB}(^^Jf7{kDEe@wU7Q?)dEw z`}=`qXBHyB4?E*+#Rqnh5DU!*e1hQPc&@tbQ$TXsruKa0Pp|i0x8gD(VHE_^4YlNA zU`#~HWvox+(2*IbJ*(QYDOGj!<_ea&|2yk&?G^`0CDRKE!r$G+S0*+5i+l1s6a5SD zF=puUpW_YV{|&qS|8>E$bN+uWcxD#%|8@Qu(bBcYZA0{3t=lvH9GrS5fy4kz!mxvG z4nX`YsM!bKM1(2|Q(0q5`1#BwyxksdEtFoy21TpZv`X`K&s(Aq1Ir;g7ISZKP1s1Dc&~=~VPtg3iE+oZhlqkD3p%}FYXIcJD<_7VmMzgi zlFBEB`NDcn=(Kof60?Z~%hF!ep{Ia2UEX8BP+hov^8Mz0Yg|u8%>`B>V8aL@j1d_# zfWYVr|96xJyrKN+@ec-Sk_YXy5nBx$YZaSl%!{S#^qDCgVf7Wut|(2%nFf1zqBSl( zbiC7P#e9-_9`jR3OXZ;@=uI(joKnzp*gz`se5`nRStXlZSy@zi2#C(|$zp%$@&`u9 z5mJ=L`h_izigqQ#k|?}S%Zj1(mL|5%F0h1c|6gi?zkE64P&h?*aB1-7;N&%H+80t16tc+6)y>$g1wsPJn@bZX5mxfy|Q` zHwr-Y!M3mIluUyds(9G3PJ?vFUSpu+9kzt%jCsUj zx^@a5C+O1Q@pf|X{NDQ0E$wesRb6I94>iTt*^fT!@9KSj9^7p|f8x{c_EAL893St` zh4_aC*Nt2|8#TaVyEzgP&m>8`H0;fbh!=q*jzeX1(zWJY3XSq>~t{ zHLWX0&^btn`8RE_PQ1jG2d8y1=N>0CHr zPNW0}yK#zf{|>^%PNJ8mkNF>=k|8{aBBKss$0Uz95re4RD|k5Yc+fxpf*k>g2`NpW zQ^-N|yzNWbF-0)s`@NXrpoHP)1N;5X^>mOt%+zNf7LY{Lwfp&tcs$fNxSBLcg4;Nl zSIoh$JRUfFwW#hGlo0%ja*(Y$7^CN>Z0*-}>4Id1^%hCm0M`3Fod)PhyTc3;2Ln`! zk4O1EHc8tX!H0s+si-M%&8UzA;v`^)rdFEJyv@kWgnKMkr1=p_p{QztI3`yOWY*pn z>=7Kr85xJ}A%-Yrv@dJx0m@AKr^zE;F)}fY4Tp^U#Y4Nl_wpvWFmyXoGq9lR%VX}h zdOHQx1u#l60cFvXR~^AC^pxD)frz|mDJAJ!`%Kc4G`#B7S4m9e02nvslk&B7c3~ZP z`S}+;t)8pMe^uJKX752nFY$`g-RkcmKA1wm>& zWs%r}DPpVxxOja1zfaalzesR%`TUaL=IH%9CF%KHd&=s5Ts-d>j7SNTi!(^i6KxTqv2i7ohipYfJr%mC-G!>s)QLe||O zESjzzl6;ac$XaAC$Rnr77RYAQeLHr|gg7&CCjuLFs}9hGiN-Z%|0Oae7Z#&9Wfq#r-HaPCz2*FH z(MW_rmk1larjl&wNA=GU|3XUG->pT#RUi^&i$aM+i9E8`$=CpGg_O6NaYggDDs&aKk)$#B*gSl zc~NFvd)T=nW%uJRROkjxsJI@OfTQn%2a7|xK6-T85L-JgrfyP1-ME0deimitBFf%b z*tLjC2Z7>%Cj>?iK|>zT3J1ix+E*9xn2WD)P+L@&{`@(xB_VGZ;e zQ#xh=OPNFjK?~JUGTmfeEiQnJF=|-OF)UCIK^F`~oV5|;%T-O><%W-wD)Xd?>)0Wl zJl^CD;u@9hK|Xcm4YVJn^mjllp{)O7AWv)_w}$r_bSc0$*yQS*+XzuaD_h0vs+MFA z+)c=%^)Ea}FZo1uM>B^iY67~045;;5J#E4IlC1)^Xr{vDLU$CN+FvrL9ReHkZnLos z5+^^_VrRS=!ofum!D^X>);`p+nX1)Wy2r!2N?cBM4mS*fAP1aIU>Uj|@)fMja~pE7 zVng{}TE)(bE8vldR?#e+)iq<$TRL1sv~y{`3NLuR_s9oMzW0(wVyemOqboGigeDF$ zeWf_4m95njRIzBZDNNHiI&V>4Ed<|-Lf-ZP51HsmhIaZ)Vu`@U8cOjIMKr+#hzG%6 zUv9m;g$3uYWHAwiD*Xw5UHkpKS?)Xe&Gv$OGTW~uwjWFE-{x5VjZuEv!@Sme`Q5j& zrQB*|u8SFtxW5!?sII=mq49504N(lMFEGw(QrU^w^BBZyMEZ3_>#S#kRn8ilQrW0u zt42wOS@hA&h{>dfZ@D2<8v?e$$lt?nx#ozo|Cl1Et#NaG{d$Fu$`GDna(ik0Yq_!_ zQ)|lPEQUy9KRP0ZpG@4*z|4_z#|icuCnMqx=Iwvua#Y0>2P1@S0P{-;5b?+ZDPXtW z;Fv(i%-5S9Y5z!Jhg<1!LQYQXsWnLH%r zekD2KTqx`M47{;X^ZDv1#odlapqrBk;?DasKK=qkudSE;r#xf-44qQ8$ZFs{00cjI+|y(ToQIZ+d=B%L2K5-f#~;!P)EPq z6-?4fLNqc2q3D^O;@8jV@%fR7X0(fBL@K0+10Uem5b-5-JHUqP;dxQK8q=WkhyjZT z+q$O!N7lMV5AlVSyA#P2gBaTn$h}EAS&$e+Bc>Q6-c(~F>abGBBMd=)btSt18_56o z(*YfN;DJMo&pbASV`$|l=y7a_^LArTG$GO?K|4wjBQ}N~zb2m!5oSOzNIc-Hxoisu z!}#dwGo?UGkkL0!QE(eVal&#T9NrP{QT(PfoH5E|EpBA3*l#B@ka4?bI3gKhA(Hcq zT3+pLbgYQg$$e)Rx;-#J(9BT3FvcN*!jngU}LJFiixIZAAA5;bzm z7xogh!;8k{m@e^y(sHvhPwG(ws;0p9@?93(K!pYDiY%R*H<3zXjZuAnEwHM5!Q{&ec9sCsXmH6&FJ` zbs;A=2V;b8k#QJBcxA+J{Np+l1J0lXSj2$(Sz4D&y|5-3B?tilHAIHr=ZcdGw1t)6 zL(t}-1OOk*u*o3H?o*lm7C&`He1A?-?KLeM(hJ&#U-n{j;lmI}m?4U>O(`uS#dif; zcXDl9obXgF6@$1jrIBP%!CUNJGp?4xF|`o<7hU@DbRmEMtXD9u$biCS*9!7^yyK^; zOE$6W!!xffv1=gwHP%BZj5WLqB*x zhpsB?A={q;Pzvh#i_MY__2z&qOISzU^F_kCYE|4-2}PAl;7JUnSjE0fORi!KYf}tD zyC9r}{*}0(Plfl$lyXNp)Qzi?$FYIsFiollFmQ|MNks0rfK3+%V$_npBVEqWdNZeQ#i(#e{&m*+%@i z`l(!$>#`O^4Z>}uZ6D#@T->~yb*n8L)ZGBe>FK}C2{x}!@|7#pVBi4xqeVQID(z$y z6>~Xz7ti*y7K~$_d}{9W^>GQ_yE&ht>qADH9>{o# yBHtX@#c!;*F%>)|>CwJ; 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%0Dp=;xjlw6H)`vQ?wxG@cok{0T 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

    L;zG4nTJH`>7e)SZ(3Nf=f7}BO6az1J8FsezQ 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�ise)hQW6nR_N3J>ZjERa$LO z_-yq;9kgx-6}6+OA)gy|^!l?gc^8=+kFMqpHtrNh&qUE3c9#6$Zg_k=LcPw@Zs1DOc5Lfi+kP@kj%*3seiqGzmPO78=+yBwueU>gZ{S6W2-Xn7?+a#2cSG zdPvY*ublzCHBQL=$7AOs%OZUOsNHjR?guBnW|bp<{^{52OkfrZ zHdX9md{^Kq(2;UP)0y*^bc8+lgJ5A~@2=J21rhIYO7FQ5 zw9@N=>wZ}#;k4G%WQ3>^u%TYmwl5 zh3pd&`NL?Vb9}Dz9dPM+M9RtHtuD1#%Y39pL}%DqK=*} zWMyM(@d$1Xqd!!(gT^hZtbc#<254I|ZAHf&RiOr4$+FlDxMKh(8Kcx5SkYSy9ATk3 zWsWSb-v8hcr4)*SDwM%&PHojRcjv4tQ?b!a4Jq&`T*P~TM9$Rka75) z#6(0}XRoUifUxhKn2?<`HFDxBaU6?hCw7KBjSm7$0quaD8>}x3gklJRPzmaZGIB`5 zW)brYw0x+tpFK#4yWpUqi7%rFBiUDb%K4U)({dajXdWn^i1ZM5y;L$%nDTO_6n0zG zOc78g%&nuI-l~T+zgo3*XM%=k@5z}wCX6kiW>AZtjcKA_rE}4GE zIlC>O*BA2rXrnL-P+zS~CLC0p&kR4$nR5t5@|% zrubMU_}<(a57sBgb8x&VCo&ELwYQAKaN*dKDtIfAAK3@~XR%^?A8k&0Wv1qIfr&RQXW4vTWH!D`CqzeY3^heQ7PbAo?6rtKU`81-kmG zO!c?ST1I549~XIMU~RG@IZ60Fijo`AKv2sV){zqz6f)XOU%cp0p8)ag-InZ)S4Dy1 zo~t+wA3$oBq9h{?FqRuUs6I?e?VXO%ugj#hiyVyqgcDDG+wMH@eFl!DO`FqF7zfNC z_X%+nl35E4rwFy25$^j>#h+TAxyIT_KXi??9=-(yMKDX0l*A4wT9z#b+{u5SX|k5+ z3oyOs!{9V`6kIkL5_V&;IUwCYw%NjM*rm`587*dbZz!_zhO6<{ilZQ z8en1b<%Qe?87K6M@2??h0)SQt4a3`m{z%s?7ad-HHDS1Z9haJ6Fc3s}<4V=*lJ)8x z`iJpj*S?G)CeD8w_?`m#TuXV%MCgoZI1aE+S^ZG*4_O_K#ezs{XtS|ckZ%8fLHgCa(V_Xwv-3?ZVv3&Nb;nhr5HJo6^}!{qgH?K1)G3cy)|5{ zNV9LQ1-D_Ww>qB2>t*`CT zxnA-Ep@BGhF7AxmC;@Mwbp~z6S=o8kx}c)I*Tt|N;e-(x0V^dr&rN3tL`ot4bfin+ zPo_&|=P}*g;gi0s%?>h;pABws0-#sU>!i3Ss98Y%c_YyfeoRfj z_r}5OkmL$~=ftY!xNQ9Y!Pq-RXBKW-yRmKCNyWBp+pahj+jc6poqVxv+qP4&lRxX6 z)^__ZRy$|U%Xv5F%{xYadw+T*Qz%w?fIbj9IhgQ1>jM$ffbqU4AwizufVqt2-Q=Y_LgUJh#7n@Zh8Gifw<0&}trnKieA4lwBeX zY-s$K;XfjC;QU}G2LtSm^zT7D_62b;4WT&M<05tD9l}Bw8uMQ&AOPp*$IX8AcYZ%+ z`;tO$OZk1JS<4?aPsXFUypqR{LQD%LfBhdH6gEEz6$I91^AWthvjreC?)Q4kN71mA+#t=R?7yD$lm0c+{%c|N+bsc@EQUMcw4tdSFRZ_Z zK!_aZ7ape*Xp(z`ix+_OT8y+dX>AtlF%^DkGK@I{UbWj}Pi`R6nb5Fe(^5Itp0&FMUgb$pU*BN6XmDWqVLw zf5U?yI&mLyA*0R0aq>=e6iv4xOgvm!HWGC@O=|6|6(w#2uWwXpe1n5a|C|1=dj;qJ z9kY`)v$ObPNyN;={J*9>H2s)yiX{I79#>MpU~?)SiyG)^P@XCCTDoVXoqCzF)xw&m z_oOa6`o~nbwbPw|4J~F&)xpQrP)S@A3|W$iHP`R^WbGtQfHWOS!ZZ+^Eb<`d zp9Zp{K~mR!HG)Mhh#z`9=V3z04wMu$Xg0ep3O%W5VHZTKWo|H&o-I~BzeszWOIONb zTfR8LMIJu$jx&pR*@V1C4TPoXwdzx&kt|f$aeCa`=(iuWeC&Z1G4eX7>=pSD)wMN2Nf!lO(0l#`>br|M4A|C6>9!)rQk-)!8|C5%c2fiiO zrm4FKLW#|Fb(|sk_pnEC#+`{p+j;a~{8+db^tNi|kJuwg+KzA)tRT7$gGXzQ_-PLj z(IBbi?OOJlr#@=sYCwVBrUr&FA+&p8u9+MoZpYE61hOynMxu|~GGsC2MdGpv}iV?SR2UZ|D^wikgbttc8>`=Ho#V?-YL=s({YyUkezjN&7$8)x6`P^AB8x)~#cK_5mk zh6rB3G$4A5A>f(J2sT1bGvc?898Fr;c_VdQe54)e zu*^690hsj}ilY!=*tmG`<)zZq(uTd3ebkUj0bu@_;qBV?MBCdZ`AWtb$)9+$TBfI| zVdm-T9X>1P`c{Af@jyu16q-o6lI|DXQ|0_^>TVh7&f^X~It*(ICbBbt85%f}R%Y^$ zmmdO(=OP>@v=LbXQzKnWLQdd4zy05HLyNeoe)_Ysc?Ko&&0^zyZO3 z+TN|TZytFbl216Wiu2I){5kteTHbFxz2JJGun2|CJSINDnvTU1`;FN{P=?Si{`-VD zZr$2oegq&-h;?6*o~69MSgC&UWN0%RKp~<}Mxh+)FqTx^%LbXaF>gREeP3;oq0s5v zlSWY0CY+|;O{c64ut7qq9ZSkjRz_Ts6>hB=xIRYKKwwK+z-km(SiC`%bu$LeX^FEd zAUM%XsRMI|h7*^Af#{ z;dal;V_;Sie8GtGEENi{g%A*UF3}Od2hro%Vw1)EV%@?PNt2mVRV+Gwnaio{XzlOp z$}SZqd(AWRqW$#&y6od&#j{IMxI*-Ug&STJE-p#LGVJ5_uA-5&l^~_bVX`? z)-$0i(rrQL6;=+9@U3Uv0trXb{CsmPZcbEjnNntvZkE`Rwbjdhuj);~c*;NdPBZR^ zNi$kgRDUGPtPgE zt6snQ!6Nj;Fz+T^)tW~j1u77pcO2iiR}wtO19@DKMQ=YWL|hHGltPvyB?*ax#AySb zLH|UzhuC}C3to9#_BcNY3k1{w&5s){8#g)znOa&tL_0hP_0{Cyb($@Zs)SfCRZWN| zdOjs-c)nM%)T?@_Q6ha2_T(x%CmJZXEd3$K7 zYi$=fgtoT}zhzd?RG9$#J=T4;-^fg~TXES9|4KBkkek2ab!;rV)8P;6>PMA{Kds_v zmv;_=7U~awMAeJCieaApGA>|Dqu)X-=<2;mcWQ^;$Wi&6c+hX%!VwJ-rTY`+&V_2R zS$d?;p{DWdqZVe-_yS+oLAFJ63B~c-ej-5Re1mvclDFXGxeo+@mewT%l1=*rRi4YT zaf>iAnp)_rb8@^`1Fty@r~9jUsvNdznSA3Iw+qQP3G>j{bA9G_`+*-S_p~`Y%);}v zMN_BE&V!F_6F_8>^WQsnPZ;%{cN!t3$acfLs5F#LB_=zZE@~bYz@=M9=P<+BDr}acX$k&c2u{nvr4`TV*Ycp$c8s z7S&B;vbh{$O0vg0;vT*&pckN_z362p8vaWJLd(24OYcvYAZd)1DAOO+vnQwL?Y!DF zD!C}KeCTya7&`G^h&+5kH2pLKCSeL;dJ$#r^f$z>*Sun4VeHePCXeTZID;;p_iYYT z&skYUG1-h}_#M~*RGTLnXl^?7K$(If&8pT=ejlFcaH6c)B=lltEnfo+7nQA=%=!ui z1@+B;N6ox@HXdQ$TF;Vn4g2#w6X)DL^v%t^E$|P0=|&TXQ*vevGI!1|eEAb>5AS2Y z<+wt)ilw1dd59-Zhaz!|-4&_BePm5Rz6Dvv4(q9|2G*}LdPJSqpWl~s{?egI{iv=` zlQBhT6!Jf1lCMVEI*2i&eW5l0<6sISrD=YOtPNCX70YuD{orCi_UF+B&G+~X1=A?;N3!_v}^WaMUN1Bvw&LP z@FG-hEbgwuk2`nZ`^zVDhKmSt_plm$NB$KfArV2Z-#*PIhUdb3y|n2p`V6sAXGwBR@Qwk>ZrWisRtMji=&UX?qP} zYj&WN7gu$zeIxj<*uaLZU>?qg5EOuS!f3X_W!dz!YEn|uwhlH;0?fka`O84y>(geu zB|ShLU$B5y-i0Ro+Hr5breS2MeUne#g$hXI&!W+mZnuZCn)^QF9f$$GU)L0R5=8?A$vfjQX zT{t0K&z_GDsSx;D3Vx1x@`bLqMPw+htryEJHt^qQ&w~>OIUW!Qw>vz(w-zG|U+=>V zIkEA#G}G~5ocMa;jxswpT}1P&T8=*Y_#z-w7+P-@M&@{PLnb zdqwQ9M*fRV*BqOCNW(y6SL*r}nR56!e?LDch!h=9vxo3wEjl!Chf(@NB8z=U>;j?| zj+$2bgdajgEu3Mc)O!DRVpU#}QtFZT(bsIWbPIzFrv2)n#gl*I_-kuNyCP9<RI(v73J+c^yM||537F)&Z(w>!i~XpUtM%*w?#Lz>X1ONRf|S11%f> z<{8#tACc6}V7vfu)m!bfT0cdaF9K9@^N{WsP0oONS1e2qrKIn|QKtiSBaa#2J4lXW z6V*nCT;ER(Bfhj*h+J*TaXj-8ye{G^h_upWCI~|1b#2IdNmfyc`PRo8{a=c2n=^z9^K*lk1ViTnvdWry3?W~f9e^dd>t>UVV8WdGj~{qHy|n&R|(i-6ND-ZYG;du?X>AKek8&H~|-- zF1NBSKqFle!b3U(LN#d^7!a3}EqoQ#Z(!44Ag{ZAab53900ean^Sh|o?n6%NC8ES3 zB+UG}Q?4ANYI)5Te-|<1a0<=Zv0CqJsv)5YivYs5-bII}&5BfN7Oax)h=CrFhGKv_ z4^>7r7bLo%bq#Zf*jH(3DO*5JoUQ~qehjN=vfCOhW?bonqXt85TLA<;j5Wrkufewp zx1+00ZE2bAz_=qYep6x{Xs<;qw8_rCiFq+^7FGg^unak_d=4rHJP1hYAfjYM?xE@q zbx4sips+o2pV@8mSuWX(k4sciZ=7E;e(O$-iV6^;4;LziB=h6>9E*Xgrp~vjVzhCE zjKnnT>!91o!)C}hza{CIUN?zmN@Bzx2Du3Mk(7_CqOq7IAU682@fi%oj0AcM-Zo+c z;&1KX80aOYU^^h5QqY#K6SlaWUd;-f7dWonIN1#Z8xX09-l1~FG{(6#m9^=hue$Li=h zD}|L!E@pSP&A3}K6{)^>>GDXdno{u_@bJlD{>UH`k|Rt5514u3y!OF28ed@VchYI=U@CjWCV;AZd1L?wJvZe!fXX*R=m>1K7lu>Eg0%_W8aL2+=w z6`^m+`r+9;QX5KWKF5QE-VPtt#ebqnF+#mVcWA^{>N{k$emrC z#yQUvg3f}>r0yCH5VkHbB1yOeecg{k2u&O6P3jF-T7fJpitpu@qhp>o^OZHEaHqm> z*@cw|x1=b#c6W3GQ5r~%|L5Aw+{Z@d)a!Us&03kho7NIr1*mia6D!r=nr9eP{qTl* z#^47L(B_)V*7O<+$G8dztu^{XspsW{F0Z^R1~}XW-RKay-&Zq=uLrm|5sP3N~CN)4L_KJ@pD z8|Qz$g@q_WpJ&34q}*$$A-yA^4tsf;Cma?O&|H-2J^va&3EzZH#K&&cH5e`Q) zC%bh{=P~BZJ$xz*95K$pe`Ly?r6kI?qyq>{;HzG8&AMYuWWSNr2(YGMs|cI_l3;;{ z&fp>8acY*-NfI6Y3}(EP9vh;2c~c(kOy#+=0VJf3515E7@DrFDFNfHM{ z9SVzmk2nY#m<7@Ja9IFBcPYA~JvP^#*P+x!`P^}qEtvns_klT+3G(y^f@IXhZ%kUc zU?q>9W0-V0qnf}6SX6-1*>Fqcf|}90S(etn9s9|bzAA|c)3Einza`pZu_g!)+`=Zsu9a=U*2*RBG}P&Nbk(V!JeMs3JNi2Y=w zk2~hC5yMx_N0Ng#WC_xd2!eS6*$a^fIY-#xwiB@I%3Qu5ibd_Gq8vh*r;tcvunOf; z#^-_Vgv<6N9}!u2M>Cm#Qk|QvflY6+mO4=>Td`k*c%r5}h%zHxsSMTUfax+@s%FJ0 zZfu29tX9sItiA_n{@|a0P^6ZO<&Nz#$LzOQ`CtwHIk}6-T6f8xO4L-T06e*VFjvTr z?#$K12q>C}1A|wi>jaXCFr@CxR)|Hpiu|jT>O7|OrwDWdX1+<1J#Ca)H5LswP0|E< zfG_irffq@zo27a?H48-Q14A&nN&vTF{YbdJ2xM}~T;$Kwp(3>gaOABpfriQb&RWM7 z;N*s<{cT;})F-1B{>u(J5t2NB)2L0fCB$mD33Bq9A&v1Kj1(l=jZcYszx{FTwelN; z8t)zAzb$xdO#ihj>4!l4|2+TyQP89RVGYlA(-n!a?&)&L&W2s}>oxW^3mO{|;)&#y z1BOINy2#KsJ|Eww;HVu<&rw$B;U0#VC7iiVcv@~8&|>Vw=T3L*eR=)vuPMjGp{3AN z3hyrxP{{TRIp;)~xw&)W=!bLDi;^bp4H%Q2&87XFp>vp=(ml z`o)#^a2 z+VkKHiB{Tm__0QH5^yGyiw<^X{>8Y@&qnDtS)XbnTopqZ=0F{dpDKxV%qj}d1!=Gn zc-$|bI`POZUi!G3&pfH1Oa1C$Fw-y6kTI!lV>3|4aJj!su_+A7HXVyw4lmKt5VIHo zq8EyYWVhT*Gf$Zj!T)*+`o4@27*=&IXnw+l_-PHW>=#jN0T?1*%DeNsorDP$>>OO< ze){UBNP>D^W_|s>Sh?uuXM3IJkF5TFpMCn)IBsTcx@D2$aW~5)2-W3^4PU-1Dl^=w z5?dcn`dhhC+(%u_CS0XC8BxLuCIja$CT02@D_%z)9g(J?+W|VGp?Pyg7Ew=k zx3fUO5Jmjq*`ZhrtwytXyqQm)ByVjKWP!eBvp39_g|*rn(f2FM5tb67_HuzJs~U*c zToRcV&5*E_uTKmtPDmMQd1-csptY>(3pH5#>Zo%fGX!&#+vQ@$HS@e=>xPtOb_lCm zQd2X9ewhEQvwhf?%M>D+L&}6fTwPsoA44B|0O`K7_10qLf{w+-r%RszC|GPYI~4b+ z@RpGd4uA}eO<$`!OdM{bLxb3X9tA#^6^8qv&3-)E7C{!V-M7alAAS155f@yZC9+Ha z+qy_x8XnL4r*%V09yuWm;Gn17w5^*Q!%^sly45~LLGdg^LMqRBCs%iI5>6eD0^a3) zv;l<}2ZTc!qM1_RGHHzHFNskwfu1UoE)<9|M-9M5Jjwd&M9en zT0u5`Uoa4?QhM+i5Zd+1w5mlO93i518%C)ygk)PoI+z2ur(W9U)9qlG>K61jTg0|m zsKd7mw;?0Ff~FE!3f0?t?AFytPoF}Dn_zzD?x0j=C8A0wSYl{?b5)QhWIMB4llIk#D5x4GGk zt6ZM$hUiDV@%!jlRbZx6`FGTK1NPa$vi3i$BJU}waxizQI2#(2=_mF`XBR*7jd<;e1dmFsP_DVcO4KaOb-13TINVFF~BpY<6Wz zOLPWVf6J7@?-LL%UkW~6&O^R2>)ZyB%IERJ70X26Z_VDeFF0%T`z#<5Pj-zh+ur(b zrr@Psl&JK-NNKg}dLHAHiH~Rq^@LDQgNhs4c)~Ua(jYTakj(2Rf3MRt8`wrF0+6w* zpu0>3zqiv>^W9?2S_3G%A2&oGDVcPwC02dhpQlY6z$@IQY5n0!y*ufma807{&4?o^ zKA#Cpy{*!jS{?LGH2(cP3i@78m-A{MKWJ(Jxe6gW>P8Tqk;w@*(hvQOzR`YbsttYU+wW?M|qn(R9Y;BMi)m24DKQGB00!tBdf(`FD zYLI7|K=Wd0Zen6-{o@vg2w(G8B3@dc&pICFKVBSoOX67@@=FHsKwyMqc!T}#Abn(jE^Q-W!pA|sOB3yv?LGkTmTmTt@PMgMu%wiSErVN-y(q73Xa zrb(jYvIuB9p?5xPPt@koE=je1*7Na0vJAj0U@HsF3()?ML3ySTYbWb<}=i=30@)s3u zub-BkfSKs`LYDOOGeP&q!;z(|+-ok7O1s(6l2Ngv>NqajM+*50qLSpM+FZ}acLRUFn>s|eXMNWbZs<1udB%B_%`|E|w zTk!itOjK6BcMH1F!OpbOII(g*ne?D}wZ+FTPJ$rB0W0*6?DE6Y;sQ`qSGFO9Ub{=n zW1rXep%pMTz$sX-H{{F4g^tXw?3E+I)2_gt^qtxsckpOfzPDMzU&%RsgIgkl2zrC9 zw_F8NE~@F9uPHG1$GeiMJ9B_=alU^9|Fl|{iWtwa{RgrDVYbC)NA zIHCUF%R|#~t=D|OecjDp+HtE%M2ufJumzVLn*jyn9AdC?PRDXRo*$Js4!~@RRhJni zB{$8Iw?P>3WGXG`5>FHi9ApemD_Ll z+TH_To1XU5mOs}cM{*8r;4IqG{9kQ#TX>YH`;Q+lKc>Ec1D*I}{@ZND%KU%d?EilP zbUB#+2cXNu#s0q@zNWP0?D05Ix-K;SwR-Ke8k4vI*cE5LuXLJxv^v0uwTxzuUGu23{aojQAH%I^|1Q z*j8koXsF#($kuyZc;L^M7)3-NS$gKKU|Y)9w%7ta%w#XfHiu+Ie4eOFx)kyF zEErJJ%X> zF*MDhn|ov4#C2d2TOl));&~YjUA30Ovs2eYK?;&8N7xu)a66b9h?L)mSjEE3VGGtE zeSH7&hvTCacE_j_AyjJSlmKR`A;>QoyPe8i-WjXg)Hy=%=4?z7~o(Esl2TJ?@8wyCwV=gxkFW?&bvv3I?x*|D+5IKKEf zWWFB$!_PGsFzW|urZx{|Zf4i^0*|V#Ws4GTa;YUrDJD&2DxP|0+)@bCqNPs4=k;>d;lGD z8axZ!{0&g{!4i*k;lqRXLb#*cy;VtJ4p9H-OntHJwG$yAw!)0pfR1V;P2@doBK8X1Rt?GwqjyCc%? z!`-*60;aP5vjlSH!@h% zEZ~5Qy_T|Vh~&tdla%Iyi&{HQ7>iApHId6qirPFUiz`!%-b`6b`|$Dp)VIlzA&#I* z^_qO`Gr4HHa!eRTVTP9fuSTc1{?eaR4HtvfMW31_pS}J{40cfHQTQRy!W(W)=DS4 zS$SgoVHmGzXLWoPX7cGup82C`s>Ai2Y}v{+`f?>wlS5#Ae3jAMBN?(Zg(Y@*Y1C#n z+)96Ze{79#T01#gB2)Q4p2?a&A^!#K0h_7}Ewg%HUSH+#@*|?;)p5Xm+es4q~SOE{6=7pPIm+R=Sm*CoB3rEok;NUp1aneU| z_9+P0o5R)970>>l%0jfikNC(0$O*X7V~MKAh7DyzGEa_7?g*iAJXLM8#pZkL_afxp5i3|4)q?AE6O`CX46TBc}m( zoZ<;*)~uy;d2Tg7Fy1be9|&&N@vpTk=0XX@Of~aACn+b%zwbK~KNn9{f1vr&R*}v%dN++d_DWYY575i#^vg*;{^c)QCnkvXdBf<)NzxpIQ ze*J#SF3K&4dfds+xb2Sm3*%dzTOMI1_H1_ZE-u~|XmaT60w}gJ{f>$RmzU!VY2pLK zJqpyOnRkdBNvvKcGq2W6$;;xY-DTBVMrBYasrGyxjHSaW7y3%#^?=&BZm9mZ@qmrx zzeq1k96xXWm(t6U)>+(wINEo&Ux9gZHpy`qk=O#S&*T2~!blt(HY|i`^b1vVLF_*+*z(fRY2GNI z1rtOu{b2NgM5WjdBpw+Yf0zMrXyfo-DOk=kJ_I+SdczTn=THQeJRwu;l^j#e zD30rexQd|U#=)+OweaNUgj%1=bw-hWhojHw5K;jQ#+zEkp`5&IZgZeIPW@Z$QW}-{ zzFlvniI51!X}}yrdrD!d$kjijs!o(C3Yi`E&7hvuDs*LC$^x6~-^4i$WI&){;=Pb- zfNPe7+5v>CTax-VnixDyElImdKN6cj|EyR9|#8iUl29 z2kJ`P-BOH`A)%PRwgDO>xgaCNFjB0`FILG&Tla>h!JP2NL8eIhl}lscT=Psm+g|%# zv2g|dq1=-I7>1HUJQic3KSPFTM_3;5Ap{=*bOEfut^E0;_vH=Sz%vuzht-zr6=fRi zzYB3!iRX|IPSd`_i~&Vte~vna62Y$RNvsxycgJP!^R;>f-ch)YX5HM z&X?_X z84YtA1|Fe1cWcq~`nUKP8}saC0f-x3fd+b$^Si9kQtjQdfD?}jBJ8RCFDR$$icVMG zXNvZP2O9C@Rn93VbO&cX8nY63uH=+XT(GdOW~Au#cO*=q z0MGzBIplaXlX-yBYg3D{DJHy20hx{1`f>ly@3ay`22F}Cc10;@X?R%b_D9I4`z!Vo z2Ek=vj|2pJ14*hC{t6G-rWiQtKG4$?>vJL*)E9cr&lS%46eqeqpnD!ZhkWac;{dH1 zS=D-800#rM7_!*eZ_1bt(P6gD{v_ui*xam06{f9FR-vZ1cK3+F-9_L)TrH8KT-YM7 zqX)40Eu$)VVQ$RSxj_D>1s5Z2TPndQ$73Eu8f*L{Dl+$r6&nt0Y+2_ z46m^FpM99At&w+D9E>FVJg8=7mrg$vCWqb*V=*dRozh*g7kBQd!&5=B>~WX9Vc925 z8~(?QvyOzYYns9;W6#;j_>GX$!VFmpCK16S*M{v_Dg{SCc}nav>BmjdMoRkWhV1oN zH3V79%*Sm2zNv#(>1~y*HlJN6j^y^TXCv|AbKsY{aZBE6$h8x^Y_c5zI8Zcp&t-LL@P#;jYcR96!qkz>v++V;lQReI?O7UMw1Dkvnse6s@J7h0EZ*% z{0(U+e3L(vS9IwgA3SleEz&2P5J*^en+_8vnbNXBq~2w63*jWSk!)_{vW zBK=;{XSQIXIh~N*g^wjH^&>J~4>s3*cAMFC*3~tyN?;{$iK&Wd{_v^lQMD#n4!309 z5!OvOXBbvp2T8Og@tD!f5*9UqL6>w3DRvQd{xY8()UttNpZg~(I9G9dl`D=I-fDMI zH@B%dz%l1vGiUAF_)B@uu$*Za%T4x_2RKmf3a$~6m0JiIQr&wBAMuB1dq^2Sg{M_7 zoF}6*h&hqCN%+Va*%So{vFgK$n92u?)IO;EfV#(Sv`4@ocLKR-D2n&R`w?z$Q%JiY zZq&Rh1f^Iufsep&F-%)PEbPE|K zoi22TVGyiHDGhffi$7#9w{MpWxGXI!|MgI0WhY`JvNyJd;pP3Gm6(N{h3S8LC{}A< z*#EGqzOQ?PbKziSZCe%Svxx-vxyz$if1&s^zz6JKovm&rXe3f<{d((hGbbcVEs(b$ zHMk!2nVg)S{yGN8GF;QoN97uPx__Q$=8|=cO4X#bw{GiF2`T#~9A!v~Gt{hL5+=sU z&QB<;_yr|+Gb^L!vnm2iw!gpP?6-ToE4F zq@lCwP*jn}9)}_=di&)rroQTEJ@56}ewYtV%%3s!ALukJ#L60iPI1|eqysDAJb`Ki89^MOUQ8Hu{bel@($a!sxZ22^l`WTorS3y)WT zhYRcT`Ar+wp{@NY9CK&8-fYoJi@N)0Mu zt+9Ts$O?eIR$RW;05KZY9Urr^Aj2|c#Oq(rXtcO9$o+tkm3%eV5!pbx3Y&vCnNcdO zv{}Z-658(t?g=y2j7qk>K!}CUnhlIZq+speURN{T$I7^Fb zfZgQDJl>nY%6WanlB2zgdf){53a`~vPn_ECrxNjj(>Z-GRINK;f<)hqKp%MI=&_lE;fmy&5hs54r{m@v`kKpWchJ5L3mNiye4lDuJv|jC+ts@^?R9`e*+Utaj?^DAH`K2hJFu-6pag zgv(V8v3a4bS!CmZG0)l|Ad&nhw!D;`TSx!a&(|ad%`#9_p#L7WRU=e_*j-4=K0Fst zsI3q3Y`d|z1^@ju(Pew z&KiP`GOLMw)AlnT|y zqE_e%>+eGV)-xlc`I-wdi}5|#GCB&Ar75TLSWNyuhUymudL1o#E*ltEg@i$zq1wSc zy>b=hELeu(C|z{7R#{`%mKGHIOVr{X5EbciQ0C@#(}rU#Vr9E04Tl+tbh&bAgPNsl z&^bX}zI`xz@c~_Y9l|5-NBwv;0ZF4(ddKsSa28O1OM|T;s+fh(CP!YFbmyg;XS*xwcs zQ7647K2N@I(My+0Pq@n&u! zEQYJt6wxu_ku?TO5LN*M&CGVkK8%spu?}F$g1E_6x9;$9md2-gBSq6&AY;;csQBG5 z>c`i(e=bnXXyV4+@K%VVX!}w;m!7{dS|bOCO;Rf5`$0ZR*5+Invd&W+(2boE%|-eS zuJ!~Q4Cu+h1)v3v2-BA7p~~t)i3h66u`Myzfd`z0c_i^Lf;zyDm?XJ_Cp+&t)nA<8 zDsDB}dQc-b{u=n>nlQ_&KnL8hdJXQ{w@U=dKT$Ohqq5pYTCWhB3$q)x31?2Z zj!435gRGrK=iC)3C(xk+Y_?1wsXt?^HcI%i-yI={6}fY-W1t6Hvul9*YaoU^%ar=k zpD@nVYY&#<`rT@5h0&1cO1{ukJW8Y}K3!9$`ovoPnZ&ih28vw%20eP0fwt}%`tyJ- zc`wPvm%I;)JVm|8pCZ>)6Z!z=WVAxO&$L|93#{7~YR$6StcNJt+FiDZ7&(TC_$1u{LR$d>476k<> z9NoqU*@b#~i9GW>(I>qTf4yK@@|H z%2cOy;7rKWIy0=fz1H=3da$ipA_fCtk)Lr8ZHe%0))w<#v;)t$xKFu9zT<ZiW`$)cE2lgIi<-z_yfSuqx}qt2%zTJ~XE=qm&R(6&sVinB zmxT_@rsS_0?o$o25L0xIi&SIj;oSTRo$aDfQZ9W{)>0YOjqXgA3K8c?S!ja zvSl?N4zxklDhx?P#v7-#b9U8AevRGTi=TjQb?|Zj=c_c8dVS>l-%{4;D_PYSoY;~P z4tp}mQu`;hGg}KCZwaBUoG!v=lT*L{_m296H`UKa)(E(St27HHCgb45gdQ?th0FuD05` z-SSC@6GpdK308^Yyclm9qp$iHr4k2h01vjUZFy<%wRbtx2XEpv3Rp=Q7T_NW(f54)&(yGUC^?I#A*R`xTaqob8WF=FPlnDpY-G1V677UqV zpj7i+?aiwo@mjMKfHj?%gP3x{P!Ydg4bh|K=Bj0lKRF4f{K=OmghH{@wE6zQGR)s# zR$Jw(zxnR8jCYqhI(39RnM@c?88N82?vr^J7O1Zd`=^(q0bJ&bnMSr%W`NBR@PCZQ z=$f&BfI%1ruWpxLF}1@3g&i+*4N-)btL!6No&lQx*vreGvhkV@6COs|PBAFNml9I@wlicM;LR`~5UkEZooLGd`+ z-9O?lJ$j#$WJzvX`7(y7Abvt3&Kq8c$$iogrd379wWNPWV&RqM-e6#ZNj&eA<>6i) zb#~S*I!2n7%R$gy7Q~5d90#PTHW?0;;l9geyu&+b4{B>&9>?MyC7cw*MSG4?bUZOf zI0*ERb&}-4(O=pZEi%x!5dxZ#{p)`nQF!C7l4TMru(O{tRn#={!vh65GXQ=8QDDiY z%sD3b64xTpyqQaE^2y|NbU~V!(Enu1-AKSdZ^F#7EVsup!Di)B=H2_x#_y8#rio3G zPZ|!Wi_)B5^{EOKx*GTWvAn14$;+xOvf8_LO>3qb#!pd?NhY8a8pMvT>v|y$)a;-n ztZatSl83Ni0jCpVxeOS5)l!`H^_nHX-xb&~dr|@inoF|$nuO}%)!sKms(ZsJq3=WY zY~=nHI=ySLR3BJkx!L#8CiFCrYOk>vd}S&T(e{-`3muzCbE6)jL9v@$+Sqo9M`$o} zM$ckuxHFbzJRaN$nk3%ccTU6RJ?{HoIWz`}ty^iM_?;rPZ@m7{(v7OXtB^ZP$oAU8 zNJ0`@#?TYxW^=}@pt{q>x+Q1*Frw1+S>iG;Q;|D_8|$x24&?9VdsNbLqTDZR@4$-- zVl0fb?C#e`!er6;&WN&SS~&>T9p`)kd5+L1L{!0?3Uu)`=`C-Sq zK2F#Q{hOCXI=O*#H2Tx6!y$N^53+5%2w!0;5Hos!XNB8miB+?pkR(r3O)oT(<1Mks zhTc*lPN167TU5H3J__;1ZvINZMOC|4QE}wIEIHQV!o-!$qAIh7bTPn5EKnx6%M%<2 z;#T6^{iZJ`tGANJoxYHeT~SycqK=9}Ep^B*-Hn;|&>Ll8;H903>Y4616N{Z;BdS3a z_5n!W9H;Fjd9H8(N>-r{bjUYH1C3D?Z1QfWFqwLFd5#7NwO^ZM?2zeDcl~VC5Cxa0 zQXrJ%FExlc%ov))m+GZqpMBQFT=CUqz&#>1LE{Xl6Q6t>O%K1!fVuri{vFTcXzFxt z>+Ai7J5XjFnB-KJ6nrk$p4Gq&6l45tsB|$B@{rp~?H8iZ=#~p$agrda8q)8|Dr_7DeCXV`3z!w4;wyQAh8w^5@ z-FmuSd7_gG6TnqU{M9zoa(!P%qH?>xV?(KVa7u!W#I!;K1S*A(IWM)Yt)Nyg1;U+J z?aQ6URE;oYtc)lXr0L+jQ1CXLmNTL_HQe}JpQf>fanm5KQMdJcA zV@q6Jb_hDuKJD~0E^IsA{#^t3>{f2pm(Ew`uAz&$Xkp=hpTKq_i8p|NS;Jej0Rvxy zEXhzuRjtjsxR-qfZ5ip@oPTEfhb_%EdUxRM3~o@a~}2L)p27iq1ORaT zxu6)X3k-`JVQB@a)Dv0_cFyoDgL8M{eRKh)$UYvy2FnQ3vM6od3>&<-i;(it-`Au4qYg=eZ{^t8YpaBH{5UU6X*$fU1Pp zksP+u>DH*s4Kn%%g$_Ad0xq_NsMb(wfu{N7vLe6=`E4mOfH&|0iA9e;@CWvGq81YZ zEdAXIpA3vrr_;wKH0+6UcIuNFF?kI#tzXbf*^n+Rf4DsU=v7n}qK0bibekEGW`fWD z@r`Q>Btq~1F!qi;qIC_>X4|%P+O}=mwr$(CZQD9+yHDG;?YAeH%zT(TljjfYPb+(^ zN>yDY(FD2$a#+m%$2&Tg8bu&L@Ah#q9#2IfId5#2Dex)nKC5OM3Ze6ZF z*{SV(oD>n&P!c_5AEC+6$LsLCvk#a(UK7_0h zqZBU%>wjPB=KOiW`Dr^}a&uPrc!A-1H&jP^;ksk<0|3XYm=7hcj2fixs0_4bXpLat zYy&89>4fQ%vB&0PEwu_gmelU~&_LddOLnePQ>`3{ZBB3{(BmUDm7AHgV_LWIbx?}5 zz%A$wS^ZTfq>UZ4?87T)zz2i7j3LufsY^)mb8ukBGzu{DS>VPX^s&&n^+7=6pp(Hq zf{8=k2Cf<_TEDW5MaGj+0hd@mASr9E8FH6DQvSLDK!X7|7>|9p1XnQ_y;oH2#KnG( zXgpeDwLmES1F2cZlyZDaCFB2T0WOh6Ddz3-iWj>`V@jMyh{9%r^a!|O3>ZyxI9#3NZol<)UaB>WDAa*FI6|-hs>_tRTw0B z1ybpqT5>+nP{OiPg&-XY)|IcLC*pFRHW{03*w3Egxwbn|wj8deTm)SQHh7{f7OMA5 z1HO|CR~A64c5U$!5qaf9Jl0``1g#ECBguM-kQl-l6O)kVKdPgt9wV6+=<@=L%~r%q zr}hsu-aaC>#;|5d)9GKL-$V-UkCi0C537r6YNt$1&=y>>R1Boutz?&@G}T`+#@naV zF#X%!Uf-#1oCUP$MHF@+!DLHUAWoMoc@oz|s*LFc;tc#H=E8Zpn82CSm)*PhHvBBo3L8+iz}yJaL|>T z#QEZ}y{V)L-Yd`all8HY2M+n(lVAJWt_8CkU@lmTMTL%=%k}A@V_iq+ErfmJj)zvf zIE=I?SanNGo9GX%!|wJUFNra{{AX%bP}F0QOLQ-4OQ$#yK>6(c!uas^2#@!+4r3C4 zl|y|}iAJP1j&uT2Sm_m8D}1vLK&0EuaB;Bgm;R*{CSjD-z*dS@q|Z9*Lfx2mO{PD+ z#UYeJIz`{`G|F=lwok$y`>aQZBZK&sS&>XON+cQzqC?2TxLVXhYNt9B@u==G=xGz8 zvFwIFj-!?S7`o+7KViec?KNt3{tz|pP!<3%{pUtTZPQWCx)alCW3HFoD>`r!xU85|Q8 zYb;5c$&AwIBZHHeUQutuZXk0PIK9PCzhAld+C{LQ*2BF`a+)SdrdWN^B??7|9Fgj0 zPJ(d_IvnX2{Qc4N)Dh5gMa#6A@Tda+^-K_13j@B?Su3Lan?=BuK^c zN{2w}7~rl24Gd%XdTU!Gv>stF4PZJ;ByEQ^he71P%Kaz+ zh2_DyX`4Pb(Uy=?1^U3G?~hT98lU7@Z+j|J@xkbgRRB0Skze^^>qI_lA9w%FG}>gU zs?P5&nw6kENUDcyUMwI57@vTiWDq-o=;OzQ_yVi5j9?x1ei8ihyY;+duI|O3X3=HW zYre!_L%Z7{aA3_R{R^RNS?9a*Te4N~2<+HS@gF|6Aiuzye;fRHvV z8#cxk!M#%7@wZ(#6jU#(hU~{a>V40haF}fV_gqhuId$E0-^=eeq~vhRXDeu-4<&yg zvo2r;H9pr?CMN-M+CXkS=F!WmowL91Ek#DBFO)RXYoCe9c7!A;njSCB?R-6V_h*&s zg~gg$`b9rfr-#$k2U&qu8|d?mxyFo8xFc}_w$0#`dC(w*Yh)mL!i_u8Y4F81mnT40 z6Bu6fkH;R4F!B9i{*Gd#y*uAIW2D0RP@P!r2UCK(c7$8m;ve^>I5AN}5Wfz-Nu=7c zO?e-xTvCTUfj@CeHR4!8*Goo1DLemy<9B64*ii?ClY{v$cQIH!T9e*4qWoI5 zJs@(9VkHBf)_7amjH+*Cdrbf8a}A~dB-2S#v(%<$Lj}%4E@$`KrlNWyNe!6*T(tnJ z8kE?nb@#w*!tUzvWZXY2Ez0R)y&X{&6$KA^)|05wW9_Bj#x!@$gDWaI7^fa#FycE&C9 zzBOD^W7qLS#8hUtx-H(c@d7Q}fzuuqA};f@MXIF$IddC4ZcKKcWdrBuPC4wsxk_K; zjn7xJ2?XP?I=|=GQDQ@(s}QR&MG6?vEUxHGp-zOFLl)%(C#NB7cI6U&ZMA;9%xvF2 z<>umktk+Ovb0%rVs6Nlo<56)X@RR#+3DD}B@s~m-)NU|SAuqMg zn5ls4t*+*r+Y(P^8+Wl1+L3WNbuC2JO&eJ@%Z2JSgid+I&UTuy4R5Z=cw;*p&tXYR7?>oCEvZv*qK3%)Wp%e1aeo*xF?VIa_N zZbou%vbgwL#pV*GbAD9G^N#%RloTuIS**+Q!8;zFl(gY*Q~V<@5`aw<`B;&bpC}y8 zG1OAzP9$I;C%2>>rVaF5ujy+LrmcM$Pc=2E^hrCL9b1g1kvf&`2(v?osT+2aYB6?q zFn%)k;VwlRa5_NzV7Rkx+|~I!ihqYFAdf6;JF>I1XQRe73aeN4`1t5}5#7oDptt2u zPG||!Jk>5^J)+|>0KsnPkD%b9?nW(;g_#P6Dsa1KAsc@JTO81m_k(l#NUu^5sEyv6 z{jMS|HNt+bQXoWOQm`LsI@Gc-p1Jea<5}-ubaDSbg(n;1e+W-@j{i9i)S{&ox50|$ zJ6m_VH~>5ZQ%96i2)|WG)2QCe@3x(2nBQ=uj=knc!ZGeV|8?aBN5@DpiA5I0OPors zJHx@f5{J|2{x?4=Pxtfdd$W$tVR&udx5>TBdla?nZt8k=-$iaXBKG}tjcfL1-9GpH1%e0wmwE!Wt`1Vp|>RLIx%-O(4<2%>}& z_vziX#JKhI+Li=H4{zhxN9*!Vg!*L|mu-^l#Y71$tFuE(U=k~ful?Ba!uLbx4D6|k ztJS)|$(+vfrJ!FS4=%@wj@wT|x`IpzLevq#Oz`CUUs~SD8uA?eGa>E@H_)`_+l}K^ zSIUZrjvG^zR4SsSF{jj4HD7m8s0)^4V)u=|vL{{wEbvkMvdw5y(k( zjF+s7gm*wu*zxE9aEbK8+Op1Zcza1ldZo#J9@|Wir(2wxY7|~oax!b%*4Ih>o68IR zzpsie*Dubi$v5TkVU7o!YFax5Zhx~HFE&OZSKu>PXT=*rjT1T>2qSGrWP54 zjlJ)Si8f|HH45Q$fp1H8ILM4fndBzEK*_9|ad|b%ik$4gjCgr*+X@4yw zm3%0DZGxIXuQKN(L4!;T${*Zlj*>eMG+H+hMI{ z$Z)|7B56A-A}6?*W_RxP4~qBo>RN#eu1ll$ghaF&aa6GV_PcvEN%(6!kaM^gf&(b4 z@}4$kK>Lu=fCur$gp9ZF3zc1o6VuM*&n9lv%LJ;!ON|$7*L!@fcKpOJ;Qp-To3QFy zsn&T6YxDe>aGbe#7nWb1=}IMeV#uI$-_!LOs~N{IYke7*?I3bLer4(^!cIN;#6bnK zwDsy8*Hmx?5gAp$eOoSH#0P#&grmN1%fBQLESwKEr9zB27vRj_jS-(k-w(f9V~;u8 zk~opx+`L>oQiVthL_u(LsJ|gHXH!|Z`?dCb!PKHTVyxDU%ufE?Jt=`wuydP8(O112 zf1J;)knNdlTvZlXolo$9sRCClcLr%ILj`q|=M-?fIyi{qo=_<&*}oAUIPQ57ymvl2 z$}rX}%(Fq#RnIV+OR{QyXUpm)WokjbpFh{3{eGBIBU_22tvc3v zu{Bwbd)rObDUa-LB${+OxxNBOBV1lMNNIL}g#=2L6wv`zwZ!d$>>UVr%l9U}ND{6T zxhfNW3C0GvmOZmDKWpXL&CL|gSv8NcRaJJpqekQ};lmNOoQQBH6F6PvfZsJC5bBkwidQgT%*8)B z<4Z+;Fzar;$2Ehw`3q-3xY5#z>;-UX0^>?JLr=bF@rWj&;y-YJC<$VbS>R;^($PNr zAK7Zglw_F2MB|%m6qEcoX)uwnxw42UII-bO?LjC7O^xrnJ8W4{PI-l{H!f$ua9Yc` zkY##rBEo>S_(d6rHvPqyoTHIIcaFl>5AKuVa^z(C#JMZ3rW`ql4Cj79_%Ue4;j$)0 zs5GMeIIl;nIj}@xaV83Q^}2S1Q_IJK^0%Q|^D565P(1n_4m)lIV8iJ6`FWdKt1xZI zQ#T+z5OQ-U2Bgfb!j?wZ*1tPP44J+5xb!KtlV{;{1Xg>3VB!<1QSk#r^&+(L`XBdjcO2IA$_Eb2Z3 zvc) zxE+4dDRI{qYn2Uhx3mErGfjMD^b7O@N8w`|9?H@J3i=CsL1g$t8r$_YG~a`T4j7hG+RDvy|N0TL<0X_m`6EbaA4$ah=>khVM0o%TU2Kf zK}w`;;#{BNZk66!Ncrvt`A?RA8Wsa7*&^;qp#AC1%gDD*(QfcW9A?0dm?n4@D#xEY z8rD>$AmXAPFu)ZG((Cd~F- z3V%I!_n+SN4cPvmRsW#_s^qEH$U7-^_waF?LM{I*FC28E7oi+*8K0L8)S@Yb64OBO z1U<1CBKV7Hyf`?RDF3EOrdIQ4#O2Z?0dd;G$gxV}Zvard09Abj$U}SHIaAss2~!$t zl0l&EzT_GXL{k68MV5a{Mq15sy;|8wQ>YKz;549de*J@{t*lWC1TmA)|4#AjMF4hJ!#+rhUglH!-crNx8 z5s_ym8O#eIFDJ?n^Yi~y8~L-!kK)Rw^a@xTe3{1d-uyxzo z2nL-UOs+`^YMGN3`2D~vDw5ZOB*3jFyRTnDl5>X@Tv9lW5U#PvFkKgkv1?9A_fD9CNW-R3>eHoeKhGDx!aU(kgz8=RvfrVNZ$lnu?eK8?ZeL#u+-n%TU8G8g~|=B z)fU0H>yB^Q5a`iXUy@mn{+7-h7qu|G`BRTDjtT86F&JWlt(}aao$TyCr>ty@MZ|}z z{`2i_{JtG3D4*iD{{#Eo_ASr7tV9W50D(9AHcpaGl?(2~uourZnQSG4v27h?^2;4{ zq2t5fXuJSplAc9}2@Vt>^+GzY1230I$k_F&T{1)npQ7hpkArwanv{d%u2Q3~*wMq3 z{>S^#xPQ%U+|JQrV~NiZdda}S>*ce-K{8EvF-c~XZ-xFHP1rG)&l+g&7jU$~1))Ro z9hMchuE+^w8ap*7F-DznJnf2R0mQ>Zjalz!3R@10a2^r1T2IMiO?IaZBQCJHwKvIfQ_|kK>UGlN%D+0TzRLX34wM;qjXlZkH(SBPU2vBN_)6-;^LqrnxmZ znAw-4qqg6xjiX!lQSFwp>j51e!`Rd3B0TOY%9Y?k!(_;o(Ur!w!k-qc;_np%*5l*H zrKuj&d|5%UO9vlHFXqDMBihZ=Bf*1Nmfy7ipz-6=u+D5WyA?^-il9;?_Di;LqMC!~hvQM^hS%htF50zYYHgqj zgNbIy3m8V@M~2Sd1~NAW9MpiH!N+~c5A|9q`8Ma7!xtBCkbOJe4K^j1HuTW-I!;>O+O*y_!FPd{!rDUkAPSdcA*mGk|}8 z`s%mNa+GQBsR92A^>)QwKiE#pc`{C{_Kib`2igxn7dl*|d+?og_l#=t5h$JqaU6M$H}3jJSlkQG zj)=C=rN(wN-{5lvO&!WjsbPnFz@!{Y=Q=V>U&Y1>{1_u~ax|&#df-cR(x2wUyMI@n z=@(3Bbt(jU*o~k&_=8|Fg6AzV#krX%>aN3VgAb3)+SXsE!{h>wKj}jFsON}?|Fghf zuh5z!gShulSZ@8cWV-Y<-ieq$AeiW_(VIJP2%B(HrTV;ZF~nm($HO}(HG;q?xC>-p zu&TiF`IR^)8w$)H&FSxFM*J!d$Vjqy{u=gy{sX+;0B!o8BAord^2ZFU|8xF$OY>KR zkD&Vg8aGM>pw)Mq5}fGyGD&?N;?QP0m-_uF8YtD8fakOE(6AtXjCTYj1)3b+`xk=sMOTxRO29N%;#4zh?9j}tSTSta`i&0AWhmJvYp53 za|9W%U=q{Css{2MJsK1xsZTM|X>ls^&G1J7cs$!<#u;tjUp{GRDh(cIc3okG9@HC# zfzSr1NsI`q$6c<8u#>@OVhmV_RFbAh&l9w&f=mTHPz#VEkRuKxy$DgvCK-}wzg0lg z@qJf#C120VW%%isy~$3>p9D7(ou1rX^ZLkoOeMqSsjREydIM3)bcDO$T93|+rHeSX zjZTkQ*f2f@IW;VLsj34Lto2*Wea6L^OtF7tZGQYRkb}(Wg3Pe2>Q&Aj<`bP6gcZ!4 zqv3}Qf(~`aDulC^!rfqtz(rJ8Z4&yPn(C{}@1RLVQLH;3RquEsWs`qVFKj2MWmyY2 ztVAVAl2cx9p2QpAqbfI-3`?Zy=Da=d!i2Br@`e;uU_bOY20a&6hQJR z0=3J$$aCb*5}K1}2|(Hb+95mqyCyI|Y6<3SI_S=g+AJe=wo$PS zn_o?Ia6Wl=zqe02m*oqyn)$qx8vuT*6^8S}%wce_mancx(Jdt5qE#aV&+)Od05Xikx12zWq z^YPK(T&mQZHc+fcy~wI-#w#7zW)}ZZi1`7n9Bs&|a))ywq)BTvrH9pxmb8@QR?Y!N ze`i)SJO{z*_F<&<=}5tAM$Z*xHajAb;lEdj$U|QO2B9mXssSBNs0)nTz`C8uk7!jd z+xX|-h>+4Dwr4|y1ck1F%GP{37R$5xyplGUI!36p8Nry3;UH^(0Z~&DTn&d*qe4EC z;{Xf?hCfyU1DG#r!rL>C8q_6%@Hr{0eY<}=7{P!!Xe4|lUE8Q-3?NJnmDaJ2+9kY> z)JN{udsNBZT1=a4|w> z$IcS1aIJz8zK{C>ZP1~w2~aMOAq9*_p;>?Etd$bfy>uXh5 z60!k2ubs9lj)ja=d$z<4e+pvUC0+^bx-P^4ph}smq1HuK7>ym{oubQW_V<+_8RhXc z<0eO;^Due?0DV4G7$VRgyq}5bB;#?je{iZ_sIATP?OK{2EB}>xi6I65;yMtBI89mt zRnALh`EfMWUEn8u68RU>UyV=W5Mlt|;s0-BDI6LGd||k@lt5Jb7(_>fWy_EKI0hV7 z1o1J$O*g2haSn1{Kb{^K<1oK{XPW6_WWKxGfqmyh148kdGZN!*%wb}&BupNxa^5j* z=O!{Ow-=g?-QLeX#C5orfJ5-f|K|Q!82GmE1s14dOi+gT`EAsH-X4j^x~tT+0s6#H zvob4od#-tkMD5eYiq%eovtbGY_hOGH?b(#%H)IV#w_mHx$O=p`%P)aY^Y|bvd2K`* zy=V$p4z4?IU+`;CVR|?2@PjIXLqH=rF)Vr0tDBtpr`}w6vZ*`;5hzZnegTby_cB9> z3;NLxnqd?Fh+QF0vg5DFA5$LM0gP2De?EVU4^YqUn;ZxD0kvzD-9?{}tfA5%S>-16 zZW1ZrM1yvl2>%#H2?q|7v!;^=R!IhC1V$auV%S(@K*2Qd99q@mifhL!usPq!g(35I2o8dbL6H_g#sb7(-gBi7 z9YBU1eAR0Iyl#K%RAk_{PVftM)?EPUOArfSkM`+SlYKo#$Wp)PL z`-8lgUEQzWX%_e$pbe1cE5es$sOCJ3u2cwrGQa!o@2kkB_XP(fl*_kNvQuxcdJly{ zuqVN>`?<>aa{O?P${r-6O%h)6Ioex`tr3%lHh$Cxe8(f$w`l1fi28Lm8F1B214nme zd3#$28hkmuGAn&Vy*Af@Z;rHYptDq`XBUeS-^;CVKlxGPk1_9t-lHHrm%aamP5hPp z!RHmJm&f!3`Ta4(NeIa3=2kvg`Qa$uKz4A1;VLmZ>A;xGJ}9HP)Zjt`h@%5oBR9My zq-*0kjJrEYlwQh)#!HVz&py)hEe)stckna#MJ>w^8!Emb1+q51fhRk&Sr4L5f|GS; znWZqYX>SwOkx(aQ=2O&^Rw?|wNZw8M`Sh)N_D$u-NZKs0#I$+wFI==f@m$@COEqY5 zqjhri?4z~dyii%|f@7+wT%U%Q^(0rbfQpzhe5@7F4`o|z zJya^d_liD*EJGjb^+vn*LAf2qVyzVz`vXAk%hZ(I|wxsx2pYzRL?&Uu0IhM(S2Q$mj+~1i2NRk6}JH2c=d7YeSGdDuL2u|XU7LK-PGFC~pI?~4fp zDo(hkv+>yp^k)%zjsFNOa2`w%J2oQ?jmWp+HAu$7Em8aW<>y%49U7}_<{`e6^}V1Ppe4yVeM*< zHVtM#$?u?p;^7m=(+>QBxqjUMh1(JcQMdh!{=JMg!1Ow-5i^HqdfL@%x)i-Sb;G!) z((E`j&HHS2Fh;YoUv0UFit{gcd`~4koFd@$PKu^TE=Wbtr9Q6Pr)f}Ey(1H5f zV{L?FKt=fAHb@K~??TWSG3Y{oj+|;sZ-ZqT--VKH&PpE>ajIZj7hO<+bUI@ATKbUzgjGigOZ0EXE3>1cbn!K*p(FZvnzY8_%N0g~e*}8~?Zh{BwzUXe?tDXPUp2 zO=o_$b|N7PU7dflDc&=aN)WRPv;>A2pp$q9Ry<;wm{eDz`h*F}+9{*;kkHx0jTVtH z2K+7coNg%);x^{#Yc3Dg!W>Nk?N6B^mib45wP4lwa73SeW5{$UO_{%oZ)Hp>ruCLB zj)zB3!Rl#j-d4gh)_ygx$W+gpZ7o z9PmQwSm2=|$pa&(3Bn~xGKaQ_Llusi@^BG+rrHqJ-Ecll1-ldj#)OAWw=E7A%H92VTE9s~?Bj5}SEG*Nbocz`*=T4n_CN$Pv+`o*5S z&7);ayC&R0D&BVtfj`u^zg8+~38h8CZjRrUK24eKUkmN@v3T{Rj;_gMx)j|^>VZMw1(mUoUUH$*}6eDQG6W& zt7gDz%M2*8E#7JK6Law|X5l=2N5~ zmCQj-vClV%PaIEvjTn4k-$q=^)1Ywi?Jr@qwxf1}(ReXOMV%?y&N5u@&^?#`qUf!j<;Y@fJ4q|etj4BBRC_Ma8CE1yQdsJ3}DF}Q^MPSaEg3loK zktik%*|)wdVS_)F>_)hhkDN7PP6@@NR(TTNj3cbO9Ll`B6Z)XV`x}7ka&ns9RvNBd zhKkbu!12u8v{#9eH887kKxSxWM*8;xodR29+m{K_ulAP~l!aBc%9%GIaMngBq~?E8 zg889+n39}A9#Q}w&>3Q&FeQZ7mhE^cSIr>wYV`a4-In|_+bBHF82ZEUnBt)rC={{0 zqa#4Bh{BPD9vL;vMu6s#Yu`sNV7&^K=NST&abK)|1PbNN+!Fw%;eV^>V&N1^V>^6` z0>+#HWMVj=mGA43TD*_}Uh82ka~llvZQO6su&DwJYs(1}Rb-oc3VcY|iS?M;tBJ4; zp&vMp3@o$QSIUS5E2l4}<|+jduOht{lZ9GOLFilTIB>#Jle`=3RQ`Q@$J-_XXquu3 ziv|qz!xB#w{sQPHc>)$Y@*L7opc6v$C7wl8d8SOCGq43qE`xKNg^o=O6OVS`A@H);zWSC&=v3pINY)=xJkIEI+3ugcEbw6gIj z!)J`em{^+s6{2frgABue?DBF~uYOqS_W``*0dAKvgqprKJ1bj5l{E`GD9;KS{~KcVrL z?o{=`EWgr`?6~cWZXyjyXYv$hv@pUHcfLzTsTuWJrz48f`vkj9*?ozT+?kF z?@3XY4Ns7(pPQVq>Re5jSH)s+nP=F?F8!*I$%4VXFLhz(g6h|&MMFeU3 z9x#tmmPs(qsGqXZ+R9n}YgqVA1M((YF!2%JhWVox9mxN#M0g7xA7C*5z*DKi>}L`R zg)^n{MLoC*slwzeW9t4%s0y`a;|513?d7%_W0T-+ zl34vB_Xs}AxPm-I!MXpT{wqv|fnm`>(m>)Vowj(65))754?2<#zr0>|>6l8^5znw) z23UFe(s{E5rZW{$(3y6NRx3M0i3|t`$gWIsTF-q1Z-J>yTynCkg0d260D4vwO*rB+ zWR_g$ACeIc=zJxLOmfJ*E1)J1m^O*qlcSBiBmmFstxA-#yk>wra(}Et#m(g+_*_?k zj3G`me=I~~ccLI^FIgF#rq|{so||7AfwsA8REPvg4PaT5fDGJao6?KA!NkM_u&sqi*wjIxHec5g~ z7_>s}I_n@Lr7PR2<+_fQEDClYvaKrr zaJ3_qz?%rtp&mg$CGiaJg|A-QQh5zIzFWEni|pcHZ+iROUoZ(X(4Q~joT=>DI*$y2 zMBvo%0=Q$MPE>-c9REC5)HNNz)N8n_JJcZVZr%*iA0!PEMf>ZxH}EEU?vocA1nV4_ zzuNT+Ftc@pug2H5L!fnfBNZHIy47Pvw2HQ#IO;dbU#Vc3@4a>JWLj*(8c@GEiir0R zW}h|)_&fI&vE3%;F_8W`;mJBTHxE_P!fcUOZ>xc{1P!o`5fr-{$HvbEMhN=Cso8`@ zg`7epMk6UNCm?*Wcw+ClK_+4YCq>y`VlkQ}w((Gz?7DSbhEV`@JM8+N>^jigNnOXy z-ci{CoxGT}%?3+tvP-)F1@GE7QmG-B&>6$#zrh2ing%YdqE@XH0704-55EUygM0um z`W$SXDyn0H5SfYa7=bvZExzu!!3XaJ)K-BS!Zu??$QJJ{&bnhD43KacJ^c8AwPdJs zu2uCDk7p+islsHwhHcC64bNNMZPwhf1j5+rpcOd87mdL{V8`q?5PpjCxQP?4f8|xk zD!^{ZP+I!&=CUrC!#f?45+CajKECe!PPBD^W_iXk|@g5@MsExVYGlOQ2+q6Qd%Eg2b^yVzR*;WRAMk5@5B2GD*yI z+VcWz&b4Ger}d0@buhwFTdFJZjteZjV$?sb)+6t`z|5CRWDsq(Rt1bd2-qv7jrd?2 zT$Ti5r`O>+bY`7hwGDt}jZQt)4^AXwGby|ORGfO~FDo!HnzrLnMF!ea9NIIYhqElK zLT;kp21n6Q)9%78FrK9stDHpW=Nm(v%=?a1y#+k9roZ z2rKg`FGsx(7%Z5fOfL5VkXL#+Et%mi~5OxADuuG%eJ@_d%iGW1mjM zg{VXLM0W?CLzL+6wsWSgs=gwLcliy%5LJB1jpi6^1jwwzy)PDo;fm4DAlJbx zR8F}CK1W#KBgU+}i&2j|?YQ1Avz~QwD-Jej{63hsO`x`qWHyAKb(4I2PqDHTJqg#n z^g}wppU+Dt-Kd4IRhn$F$Zrtjk8jIq{SKO77GYUZ#;Y(D^otrF)Bg3$ZE2hrx2IkE zOUNH)-{ilsw!;I=@XSz3B#?3-GbEj79765;P~3~?l44GZoB09gQNoO7IixPx^Bhnr zREGn2qn|y{kDCKWjPVmux}q3pR+uu;v!KRB7KJgU!Ea&;<;O2{%7ABM9U(?gIY|xX z28f*zMo>*AQ5)^W2xh@&j2YY`r)BPf+U8}Z?+(uqJ{@~z?oGg2r2T!>9zPcHrp3Rn zKsnZ>U2-T@rnSjMan(kAtoVVngQxP+i{(IvgwHbC5qndbgW)0hS^OZ7sI6w-c1TES ze1}7rK&TsrxaLxj9w!QX9o#_w0qr}Tkohm2%F4j-{|&Y>GPD2BnA_psje&#z+fx$& zTuOI3vJc`e?k8R4B_0;FTjT$~76w9*R1zCkXcl&Inb;zQ;%HqPY0#_`4z*{VxOQ+T zb9kl})?V2Bw6-^WN5`qfItUC~yYnDJ6*(szBiQ?!jy#{8?j!8Ee@x!oFeJqOkQfRM zP?}DK<@t7h-F|CvMVk~EL_-iiY{GvANMxQHuvH}OJ#!_@fJ`t^KD~k(VG<$Dq9y;C zD9Its1~^Eepq4g;4z!oNEPv^`o}1y2ReqU~C3sUui6%zZO*|5vMo(TSratdn=UJuu zDpeWQ)N3+Ua(*^7;Omr`uWae5&3X$QE6yIw)4RGgJxQ~NwtE^Bs^k4bC0%YtnlLtG z9e_D7MG>!4ax7M4=x6>Es!jU!;5#Exm_3uf@4yPqR}k#juDVf@j1vup&;9&Axe%gtl|d~=wO^1Z zbKE||uUTbL^xv?r;*5MOSrS}VCxzcv@;%D;!9y2PsvubKLl(~~x0JHg&~igU$@0am zMGqXhPJ@fubPnc^oXYd{JeVLXtw^r3ei#S$X7f6n?SRsf-DL{ef=NVbsgJ#(&*!(O z8E|4ah(z(C^2MQW1?QJ@eW)AAtNgBaarEPau#YVfd>CS8UZgxu@TsHGeZ9xIp@4+b z&=^AUmeWerm1Ikeo5d~)p*&?+zZ~|_LiOrevyxM`H|>&cmBG#LvDSL36JjyG^hi<+ z6yGepbJhn^kY}xjmHjgkz&>#gDc!QnUL(5$Loe*NRzroXazna{u`VbDkOd`-;c}Xd zgqS2>9L^6E-MR$UM=`+rDwYMZJnn$x0Ez=&`V( zsrj)43(#RSeh52FT#S?lnMnwTGc*=mL=QU=P)WGmo>|3v({G=%yi0P;PqJs|pGeaP zYG88lp3xZ(%nab`+3iRU*R{3w+MpM`P+5!4xsZH-Fg(*g%WMyx+n4xJ3WhxpR2C5G zY^kMgr+fs0Bzs4i4cIwp4J2`hLc9l2GUvx^oLeA|GKSNWE9im^L10Eppe)n#9T+Xi zNDq*O;je4v|B|OD83RbLYLqFIfIN!vT5hT0d@i>iHp4lgbt22>o+}*D!jS&Z@7rb? zt27C7UIo*EWm*>z{KL=@%zz;$ls39%k{MDRYDQsBCFmJJw=ijd2?G)YEDCl(%@!&g zZxK`fLhX^1+ue~6+ta_av4#zr=njCtMJCP&);ujAFkSTIRT?9OSjwk}# z`H2$QrLG&H)+gW}4#Bx}APr}Sedcw6gTo$e3hn)bN0!%nD6k>!kxdqvFEU1gKs_q^ z=8b_}m{Yc!ji5-0F=?TG*v4Ee#3dug1`KjhZ9B>6VI^{!5uMtK-vPJkyL z1vdrE0%5a3a%3<$m9qUDDnW(RW8|MCSq(mdE_2`J{j(wlfRCpZR- z3!hkc)(zZJfiSbK@sOTpCJYl|UgJrX7S1}G8TzF6m|UV=1wVDFwYL2lhTT(Nm^NBk zkV3@ZvbAMGA$#B$wq-+u+_<3orG-2IpTorK5B9|S5fR`)JPoE64>vkbwJ$A>xjlnG zc0Gh~v5%{23Xteth+yD$h2DQI>vv?=XZnjmgHt@~^e&yH`y=S}=)->Ng!Na}GwnKN z;0AM7QApb3kaKyyHgw-cf`n|$mH~i&J#5L+VK;Xh`ie9x*p2+!tE%p|>IvZSoQ?JT6ei75q51&$}<_v$G_w-lmDGD;@;^i}m{%yKI7i7V&tI`B8fnS36OnvAzA{GP9?jw0r z5`)n>lK7|$dT;Wj0JvbMEi|4_^&%g0dRM(gE1k)}!yFLUg^Xd@m3IL>)tUaCdl6of zhYXH!^%RNm2AO+?jruZ9mKaBHH}&E#XRhmnF|Z4mXDSq;bgzEj-3&W010e$GqRmD$ zu~x~Zg-g4M7J;!N`#tyy`Z7!0l+|gC)d{Dl=bcM4p~4;df_<;qc$n|%&Lr#kJt8(Z zzq6P4SfLIbkmH5#G4R^Z<_(~w+c6v6^=8CoLeAtrv_QN(Z#UoW3P4nLJ=!n$D05Ra zd{$H}=|Nj~S^Z$c>WMrcMpY4ok zO&vS!4p^Vx=#|k&A)<&RN`QXA7ymjCP5tVjfz}`Rwdw{4S1a@eVCx?r_!3MGyjf1S z{R;P$q5=o+2!V0T#NAUn9LRcal^8yWYY6PizW0v@5F^-UI4h#|qm5)DA(rYFE zfYR3UG{}`_wD;w;&Sr_5xwpytn`bi^=n>r%fRFB2k&juPG>GHH@w1tRmUqnH4*%)| z3o1Niw1ZT7a1YnFJOg4;hq;Kp#x+O3FsMlBFdf{;yem-J{qy)q`;lu`*`d{BaFodNF&ovK2yvC;X7M zby(|-MV=#6?cQmhRVL8HB?7%e?Me?aJ`+=AhtSfKP9W%&qfI4H8MQ(yR^VkC$d$zQ zQf5evq3J6Kj{&84>-c3k;L!g=;OJ|=%LMtnFw>GE=UfJUh&;Me78)LTU9f~ssm_w8 z(dX)_9Wc-bVFkIU3i;5YL|DQ%ywn_(KR3Lp3h=dAuL(&lWgWso**n0+~^YiVIu~Ny3DZI)Fw`&pTW*ImAZ6h6k zoZb)__&;y-nHn6;%3*33I;H&LNo^g39C{r_1c0z zQ(65yI)75>Mf^E?Kag8-d-+;2ImB^F2z)bwbQ=rU!YOItY zs=t>p0`uIL?DoOo>6fmq3ldDd#DcjDCYt0q#+3@BijJ!w5UeLt2GAKD1rZbHM4-O? z?k7{Oaul14Z#sey(J2S}5KO3-%5=}XyGhLS;@L|c{NRV;JKYF&jzS^K*nsbA5sR;P zC74UOOLda15_d)FE~CVoGX$3p%Sd=IXO6oe`X-|8E%^bjkr1$jpG2hR1Fn!*9rBB< zcm)vEguSA4ZBB${8vCm1$DXvW?LG&^fHjS11ayuGe73OwREriDMe)bL;JoQ@9hWc|@m#P92ZfSaN#s(%%8T=RNF(zMuwlw*dF;TtxNN zCi}MnxpSnNE}%;mo07KmKUY0jYYNCI6&eCOhqoN{?!mT(zgFDGM3`p`@6gDnjHwEXS^r|Bk0r@W0bVjwI>7hAE1@`2L3& zd%>$H40icS#2h>#0Be|H6!FF<8b-0W(=OgS*0h3#e_qn6P7xhvK0jU&E52h1d*4)SRpb$(oZxqs^5OLC^e%SRWZQk49rgCt0u7shj8 zi#oG~m;bR?#$8%2%+vwt@L_t0+}(E;OE>{a6hh7OjIb-!+wzoyqmWoYoh07$wCIvG zI(9|bZq8E@4tKvgq2R{yN~FQsG_cxINWCBR@*~~886DjVnxuC&6huuQ+88_%l(x^O zM$7#ZsH<)w&_j?ak4=nXVYYTcQ)YDyDcaL?x9trE@J{J24I9K|p`!~mk&Yq~iq}hY zJ7%}U6W+-zI3&G)kP#I?ml#cu&plpX67t1JH<3sk?j|>kPH9$H?Y;GEzWlx~bn^CV z)H-)-GUC>qx^77RqdPw)&E+mhPJc#Ix=vH@Ki6S*vn~H*gZ-VAveO~t;_m*UzX$s1 z;#9VdtDZvdtIAV#M-2s`;zEM!3u4x{v#>4iJF`GWXF5nzMAm1ufvciutQL{33waP0 zmMz81Uu9nUmW_ziel#o2x8uuuyg~5ucD4t+8uRk?h9zgR(u>RG%tLfx@|pf!&T|{- zfi%K5Aiq~~AWY9B8^Q)6cu#+sNG$o{q_i+t=$_nGtC2?9jW2J)@DBb~AFkX?`_hlB zQB?DL=0Ud*5q{|eS96CPww_F~D|!C8b0`*zgh%W6Y}xq+joUSv*Ge8qLbX_zZ5Km% zIx*QtYv)XWnaJO_3Kn!}3{hkiyHrpF;C;K@N&w-Cz3#JDXF!PvVrjFcZHq;6J+F}X zr}i#zNZSQL7{#o*Yt@8m&Vw=bOnJJ_&z#&4?qPr{3hiT(c&UNR=OW`E5Im|2c+LayrrNyp2w& z-Kf5u+tGh}{Om{EkZ55Vq9|2-j3gnEoK*Ci6JhFX-Kg@L@-s@V*j@j?@wzW6{X(@T z4L>?PzG8k|@E=hZWZ|V5`r+nALL)ap$DA&nah{mnzXmjFQJFs0=N$+IgyJ*H0n$Ci z4uj39Nf{RAqCxq(bp|1)*n^Gbfh?;^-N^-+?Oge~@3W@$4$22FQy^ueR zv6r$K{o#M@oNor#RCIROT5Do-R-?FaQDq4P!xTZPT;)u(uD0=}y`C;2$&!fLRP&q; z5?^L4FVq?%yf7Z`^jDsx@k5}qpX6**uCEnMY$#Ujv->Y1e3H9Y%}y&KgB-8wZz=}L zUMw%LU0bS}Pns)y`m&Tgds19YydDGeBScpX9rv9VNf9Z$+^uq`-OruQWql||^Mo{% zAj3XB83-Z;cq$?Dk`Q_fppdqK@YZJ9AIpX_0|BOvJ_ReLnbllr5@ZHDjeyos)(@mN zOjciJ?;eTsNGIp1m{UbuikmSHhFO8b4@hWz{j1(Mm&d(R-RVl>rkL$91RX{~qRE~% z0RbvW81PvCu%Kfuh?eoo~E;OAZ171>=K z17gP&Cm~)yz=cZqqbTR^;b2h7D005v24KZe0reBI0en=zGEg)P_g$I0Ho#|dB1$M) z4FDw*NOBPsOXdlCjW-FDbTZ{%py3<#QN*yQS>g%^I0=NNeKe^46AA~trB!A?{lN$iE7v8D6*M0pFY2-E%@8b(kFHSroRxA5 z9@-foeak|$kt=nx39^+NL!={j;4%CgtmiRga}gHw)En<*1g^EU|`3rNR!U-CYtM4w^$8;gIa=aOX2KdOs65ZHtdF$#LT-uwhv)Tw1p zFAuAr{~p#Ff+-y3IvPZT5^Kt2u7;aI$e*NJ2-zP;Nry5=7(Q2O@;AHBS80n$qIrJ9 z&QM!gYbl-L@xaYq>uSf}RrLWIu0nAd5^U7?v{kQo%e!xV{%b#Kq*2&wFx4Esjn4CL z`Z33&Hb=3x5KlHl4|fY`_D%gQPHY?l@?J`pA8KqQojXudw!MZjU>dSV(M1w`R@CxD zJ`~`e(l@hnOxd7f7a>eUU4R%y@^?G`tZ7O;Xd-oq6N;}5B_;fiG+qfv4X0iLwWNyU zMDB0n#@c9<}o$HLNj~2c+ zAlv>ZO?aR!kjxGObY^`uOQJOdEENdb>-_*~q-SjPkr7Z-!`jJzZEbiTF9snoQ`;fp z@Ik19bHW@CHYv%e=#~e$kdWcImZYr2oJoHS`2x@h5G<2(m+_b5iFk4`!CXD}lC$@H z;6%CMiKyy-tbJRaYNSFP1M?$hu&sd&VwDX;bvIr& zVPd<>1xKXn0<89C$_&~tP|c>m?vEJPYS(1yoFWl=%iWp1;`$G%$u^6af|)|O zJ+%IP+Cg~Mcy0ub)b-N=Z8lNbkha)2e69PonC#e9N|OE!x`GojLbSYVAo{Sd(%l|^ zFSMpYeLchl=kNjD|D{*rgzM9to{Wyej;BY9pafoA6V8HKFn$|BUkON%AI+RN-c4o{(wAP5kf`zm?>a6f|6vJK&MK7~ zF_F`HI$7Sq>*TNY^{?sh+nyB19_h#~*Q#|0*pn+Xq+50C6a_pBLSw?+z`+eD{<<@t z(K?SMYJ|^NvJKA{zAfJ6?jIy&4aQ;xldnZK|cHyk-di}E6y5o9M|D;}6?$0;jo$p%lcoISe9eTnE1ZD?}e=e^owkjEU zg6DqY3nr4x(RsscPl%=}m`iiv^;TQ+55@xm)ZB~XiZ&>aau(>6q5i1>xc?Du9zIFu zz-s6I%OjB~(bsDuFgKtE*lpqYtXAiNW`YYCZC5E69N2c0DNdL%IslxkfF`RW4+^Pr zC>a!};#+Dy4{3QNA#J;oU3A*o|1iGYA6Q|hX5;*D08U#|bby{98f;-d#Hh9UU&UX3 z;a}Jy<*-A{)toT$p>q@<3U@4!D-R%-OjnagK+ci@QHzTr59k$It@~(|i|dBdhU&Df zkqnpIGZ98HWp-kU0CSe$6dw-waiq!8L>oGNdT3mMw|V;4WEtZvff#z51;A@^i}SsQ z;9|-6##9&u1?KB+H}6auYGV6q^{}gB_qg~W9x{m%v+qc=6cnl;$F>HNh(Iz9)#8Zb z&J>gpKoCqn3&sfFq7G{Xn<_)Ta~z&i-KBqDJqM|b$Arh%U8`5Uv87YxFT>;L2=zrN z9RNhG#Jx!*N1nl?uqgo%9cmpqkKZ7W)8I@SPUx>RWr#(7?rT=4eRr@OX#ETkZm?k6 z>{?mX$&OB79Y8OENRiRZ2sJ02X(6E9p=JK*@Cxx2!dH?DN%Fl3AY1!A1HQ8L@sfA> z*~bi=H6SgPKk=%+D`3Wija6GL&<%-ocXarg!nF&41;k#|*5DJx@s`dG8tQe9b>Ggv zRN4SQxQIBKcGp!$BkIZ9eOC#rEn4gzZNX{V%HEc=1begOzG$Pw*5In)8aIsMsSF5G z2%6vq-Pc2us=36k7Wa*ADH^Uq(g;qe+y&+~XNIOk2NbFResa}dY{fX67 z1}V1*W~t)^Owv3-eaKtHbG)NG;3>09DBxy|1l z6q2>pTQWH+BR7JxV!p}94%fj}|7G*Dgn$@MBih6(1vA$IFgD(ewEo~)LZC=D_QB9K zrNo+H63IIeiw8Sb8Mw>R_ycl;Tb%6h0L@3b6^F@Z}pcIyd9by z906i?$DJ%042(?)4HLAirl5pM4);n+!x*tJ{UATkZD;L)%ekgeLPm2^Nc!V|&B_?+ zmxP@o;lmzmmmZ|qg?Hesk3D#}>o_vE%1L$ziWNglKigUi4%`C7yBE1->@D-Rb#`pM zSO0r9bsl-OslqiK&?W04sp=oThuoSqQ{Qal;iLYZqJ<4LS-FtM{B1~WVq$`K~W z1tzE=)2Pwmt&>HTvgkAed_-P77qP23qYMt?H3sC+aOerJo~wB2>UBv~lTr=?s%}so z#5yS#*#$Ikjz2EnmoE_w+3&3+clbvs8fY9S)VFMVFzA#Y(kl`;QkCU*V8bMhC?}jm z5^&0on zxn2m#U_MW+E!@ok@Kj`M3`V$&UvX(X4)q{{)j6)R*Uj4TiC;jK1aJzRipnkm{>R2z z^nIw(UnpMpRX7`K)2iSTxnwoa?h|XrH`EOMAsfTsn^l zpg}>Zb=C-g=Bt+{_h^~clQ2Y_lQdx z7rzz_#2;^;AU;+Udrc?Tx4$)j)hi^e1hNr>J9OXyXe($|;mU6u8x-+9yv*FfmXr$K zi{=sDwWQT9E~efOn|VF08m|#I+n;ayQ)?}GnuSDB%8jk9x*~qJPegx^5vkf*N6~XS z^^_@6a_GB5vewtqLJ6dHQ94czW_-9mUZ=p<(FUiR1w@G?7Yq(!1oOQ%pNGvbr@ND= zf*0l~pknn=U+ZF}=vBGE&_rBZnzhd;o+rQBFE{oh`bGvTZm1R-GYrKei;|}WzYR&f z;({r0?~3T|kEoRM)Rr$c^gd@p_}|2fGeZGRLI>f&)4-3_OuAr_TDob=GdP1Q{A~MQ z%B!XKH(23Q#5>`KE+<{oOtaiu=o*?y`*S9*X}z4#er(h8r+b>s3W;Ln>bp9tv5mW` zE1C}u*kpBU{*3N9KQmIPoTOG821h z+Vgqx0HIvlDk91~PaJX9YVp=oK45sCtLN3^xS&_%B;&@7&uOm6tY)<)nHF`wHC?*~ z4`jZ39@jY$zayrlH-F^*y-KovKU8N)On$*+ zu((_-RhOku-F2h1S%j$sf`G*t}7uI(ZZAO38h z$I@QK5^5-_I-R_Xr%-kpnE!g*!bT9MMuej64_h$Q0=}kCt{{NvirJzVCpcbm1jUJr z@&oQPp<)R}KTogo>!=)WAk$02gnIV1ReH&~7<|4sh!-Lmb*DVx2_6{cf^oHc584}& zvSkVnYR@yVBDytJg)=-V9&3J-uO;(J5-Gh zOVFsxfkgC2Q$qPWS1t1ttx#x4X$uMrcfY*=!^a%lCc1zyG6*U_?JzE#;4?&nd57@* z0np$AjzoZ!&)oiJ*!XRO()f4FH=n|A@zF^kfzI-rw3N~07;5OPc0g*C(M?CTA{L92 z-hU^taza*BSw=bUgkL7l9%*m8A=)NS2tWQEI?8VvAC|-}P14D?9L`S&wB}y)%kFg_ zraa4{SrqgN^uVKqk{~B3I2(Xe2FJ!~9j&8j#R!W8$nkN4F$x@sQTMDC_*O}hK(r3R zi1q59O+IXLY?{!{2Out3`!wli2dIe()==F`SS>=)$HfWq8SH>SM4#@x#t;JlazUAm zqxVecAi0Dgg>GHuJj~QR@+LqbL~M4fqNU87{%xAPt;EPCz>{TybEAn;%3Ey)AC^;8 zQWfLU`Ycq?W-A~e@J7uXplt)SBW4IBLQRLDZ)Uf31LFZn^G}24Ug%PXfPS&6Z!z)E5n{eqvMCR%2dLWXrY<%ncfGOSQ>rTi*V{aRmN+zD>HCE(+*jRA{0)`7uqU_r|o8=1Hyd|WKY7eq%ZCYS{BrZv~$Igo5 zcH|V9AtJZ|$~5R+KTj@z+GhgV1J%C;j{&g7VM64!X!Q|7vR17{h3UsPvJi5@4Nw!} zZz@j`9q@EO`K`#Dyue^vdySZ7Mj79zX z1H8pfD2yfYzTU#`Fszhey7JoCm59;aR9i;!{-I85hGGN$Sx5~TvNlyuEsGz2`-6rf zL^B~Er+P(t@h_$`Z}Z~lhQ9U^uQT1gccG>j1bJ}=z({Uj8k;yTv=&OnG?~>?+4Y`e zZ4>4Z%5I5ER{AcD9_8+WgO$L_BG?aO);23*Jf$z&uv?sJ&Y;Ts)~DF0L)e({<8j6L zzJSo<@-<$xIxEzLakK=aPjwH~KWrizJl6W`wZ-o2M%+PWhk#LH+H~mAmCs(;m*W-v;Jv=8x|b&V>`k)WjXUl4HdyZ zy`=A%o}mGzOyt7RFr*uBrzB-mA6@1U9lGF;Qob_0IyAtk)?HvC1k%d{d$He_)RwdK zTWGJwTOzp9s|3vyieHntx1@zLs{+RU%aqOv(1!bbJ`&s|SDJnFRPEUW*wB2{@)>Qq zIA|HuMlpt zUhoBXbj~=rIq^p!X*3+H1;gandu4K10HZ^idHZkaG_g27M=@(m!*lxpyiAPaP0Dd} z_GECvh}l4btG@uo2Sh1-Bh=cC9pB|N z%O@qNFD$A8j@Vc!TLaOgKMBO+r<~Oz0R_EtqOKIM+ndiJcN1Y(V`?IDh~2y{Vkc4P zsWWN9uPo#Mv{!RIQ)#p)j3hKWx+`WN7&CmVD}G#1vXPB;1<0(Efr-&&{n54&2r>f@&q$y-mUV{go_JJM-2_IS+@Qidg(tR+a+3g8d7$Az4D!|}sqZOWb=o`~~r z^R$0U-bqR+PCXqSyX2GR85+(9QcRPvPmI+ptZ3J**|GnISrTESA(SEK8jf_no=jYz z&*ZfIu1^h+tdK}9nC{XuA)4@IP0Fs*|Vx!OjAgzte3p3M$uOMOIbR){+KD` zmkTqtWIBl~q;ZH)?%4NIJ=s|Y{Pr9jJeEJf-&xEl-(*&>$>xA%vIUCr^_CD)Dd@lW zy}dc}6u&C-P{~nuX@uj&cGAWZxg3!yRYIgaUd@kqZ~J2o&xMZ&*||*7nMlH7=pYiP z0jOLYhe3Qt+P2EB^9is325-=x)E9aiMWMI`*hx32PA8N@TJ40ho(It@z0Lh3*$d3h zZ{@X`wiglHShH+4WXjRh;YDuXXy#!>!TH3Ygg!+3D-X5mm+Tak>$CxQ{N^`Xexn5y zg&>*-i(|Trd8V%3x|{lzi%rD3_+kP|8JoZ_`NaxD?5S;fDSDQ)DbkdM65@Vo(XhDv zhd?!D#McP&kmp)L<0s@a1>wT^Mc5tVASE+piM*mN7I7P%F=wsefQ5uJNNA={tThH580sq ztmrZxaa-e9JFF+^ia&%^sv`bz*0LFsCpEKt`z0Calfsp4-kK_BvTs3ESa-R!WbnLj zT@=DXyBb{VtIL&nYb6CBK zcxjmSWOIv2tl=7|!$;dy8G4@P7091%DC&smZ`2XiH(`*+Oo#M(2fn{!Aq~3(!HJK! zRTbZsG!&KuZC{~jPQ++QwDZpq9!FVLjPRHhVGs>CU?p1@QcA9h`0+m+sh5y2ZZ~me z0Av!BnU{)~>Wlru!KkTIjg(=N?N=3?>K|)Vj;b%rpv$0Wy}`X3KbtV#-R{Xa<|lai z;-yR`T=nUIquXZHOjGe5g{$qeHk+u&$YM7w5@_v_|HZ4FLn%vf892R~7WK}jEMHot zi@aU7B%1yz-TLh-mRc-QNah0P6(?n@x=cI{Kk)8LHL2zFrD$m6Bd$qkpCg*LB!ZWl zgaBlrbV^#7aeE?9LusflClRI^z`YMH5=y99ze+!e{urSOFV{8E;i8m%jb^Z6*G^Wv z9y{MtAt%YPHPaoT6o{dpzgl+bHCj3p^~ zBw^Da+g(#HdVPP?t=pclBi9ETC9^{-|3@ek+s<AEUK|&?<$k7I2Xf$X`bu zTiVs8YA>zGcqr;il^yip(w7GGrY99<=bX+ZqkJQ;>tM0+Q&>3rw%rMn-W|pv=Fy!Y z>VI&LYWU^O-#V4o_}@1K`Y~gkzP@Ab2(gIc`?xG2K$Xt(dA|N7yorE%s~&>%;($eg z=1PoD1tebatkLoqr_||q2foP}DglJE5Xa>}#e0@{C;{@}7I}&4qg|d0y*_R^ZPGA5 zVSjPHnR69A?8;=V5z>6mMF3o#gC%%+%`|=Cb>D2X$=hb)?Qs)%IOBQ39C$x?!Y?F2 zgyK_|CXN!7k;>u|;=K>jp!5mdxWF%?ay|5$vB_r{p{DZ$nZ`HHG47qZkGlAs(4o&c zMPk~sxH+WY=L))q@~5u-;fOt00`ohyJSE^A&VpCnm1pcJ44KeQP|8=#1xTCZ6W_OjsQx}x(Q?BAX7gV+>wP{ z)BD&WLe^N=!3l{K_ZbS_5UZPIEaVoFFp)Vyy}=}>r~{OSoh+q>SU)i=1Ovp;84Mc-Oeb1pp(3sS6O#X6 zS2cAKi#o6Kz>-3=CIlk3S0Ls`P`v54KQ#siqtiA$kC`S z7s3Yo(dj}lXq`zzRscM%F*)$)9}k2L4g@VWg62cOP+Dvfcw4k1+msm{(DO6_$bNf# zW2M%MtMRM)UPsRpfjENQSqFoZxz>7dcz96&V8@e(SDr`Tn%%l58F+Yjm00*q)Jl$iTV{1c87NPnl&=+c_&W z|Ftv|P7Gb)>j()Dv+mUqUw2kETjI#VUWhA&Ha&6#CQ=KiE?K#Nf-c{{O0##cl9OaV zs?784LTd8s=EsxzWs6>e&Of@#s+7(0I=QLC@D8N*%QI)O7-FVKIAO4OwF=8{1}6fq z6==Ko=htpR@w<)J-66Ek1mI1FR&RGe;|S@^&@6}IpQ!bXxsIPaBiTDjtS;m4@{wos zuKf$yEgxReu?HDSbB47)as;c9?(&K!V2n-b?B`a$gS^bQQF^aqCq7W=P(Wm>(um(paRr%YudmS_hQ(w^2LmQX2$e}$B=RG-@ev^)r4!DaFuV+DDi4K z`Erq$C=bsY&krhzg&dPeHNHP8>BHVkOar{#jyWUyX;|B!IH6J1?v1SkE~U$HDu(IJ zzma=HXmg6Al4@)MBtt7HUXd>OiZ?RfZWE~BFji6sZV~AzwWYxU7YDr@EBF5Qdl*3m z9fBbBqBmHkU@vIyP)?W%3;&(n5jV7S;DAgEQ*RaRz1oS^;<>JUXbztABL1ipKVS)e;xB*l(W zG9{@pToVm&2|2(5fO}S`vrx(0h!AeSe}iDdqh`9)j%S^zGQ9h1&hPB>)rdk!RXbRH z_{SOXD@g2b*bYH{=vsVT7!F6o=L14E+knws=0^F)^SzwzfB`Y?030pL;gSfyu# zKx-2I@`eyXkoO1(W=un?PM7Q&$}7H9xzw-ilSF+{%$qGik^qgD{WkZH(gUbIVmQd? z#AXwF(sku-iMf>k{DaZtx2_S5VKYX5gL;Kg1p1^k-K+Pk@v7W)#2DF?h>*MO=a@8D74(yHLO_u(7rhNl=&+=U>?OAX=G&kv)e z;=?HFkbCrhbQhN`2I@UXh0zYi5#m{CDrW>ycr=GB_b*h6N-Bg046hnM^~7-vOW3`p z6o-pw9@fAk-H-MfN}@P*l!te6@S~rl(~lEP4TBe%kn3KX zJ%ZQF6TRWRk&xX+ROuZ|o~rU-o7TTv*#P_BfNIOVK1L_T^+`p*QTd3srbyjP!E0sr zSVj;W`16apBv4m^07T_`Ji+2APxhHldNB_hIe8dF4|$B)945skC?m@0MSk2@(Z_G*c^$Y0MJTv?f!%i6W-*pT>?rJKJL0NdG| zdym|izP4X_t`sQ*4{cQykx^9t)6rQjM`YxMpVX1`S2N7E<2q(*@}cxNrV=3=8sPsy6zY;9Ek#)C%QC;;6H*u@4=puW- zk(bK}fEFstwgrT_#1x`do_dlisi<%yoCjOS=#Lh5jLgK#1MCNiP;m7RZ~Me^GZHZd zpQbUo=E~ywKtvb(wY3#K{gu#A zxvDoT7VmfjB@L$pO32F|H=4=brtWY^7(1z_Fc zY$~C5G?lm|vSid0b^(aDeZCO1I;jbR&baQ;Dyq>z#alK_(@%l)mojzPS{|uWtBD2F zEXH)1t=>BR?Gu8g1GzuDeC=?5J;)a+Pkp_3u;5_e2mJh;SqSsG=HR7)+dV?}>18$V z26-^wTDOqXH60!yBNAKDI@i$^X_MC!vaNB!3gARhk65jTdd(^dWy<%3XmE_Dd?RbO z)Fdk;oZqBG$E_7ktrF3FC7v)M{)G#bu61{fXe>epA)vo~GhhVSmm(x9LE^8+I0lx* zX@(S)4UjCQ6?1teo+rMRtM^bzV1dm(ZxR}!t{?*Ny^Gz;Ap#0ntW8{+5bJeJs{$^= z5je2l{i6+j;+)s_r?>~U28B^TGxu>4mA+iZ!s%A5?2txv)mH}uT9MEjFK;c&Z}OI~ z^0K)PoIsWSJ(kqNAf3Zfdx9<%vmjTZ@~JgX_#P~f@nsUv!-mlkB7FwDLTtddg6ZtcZSq!K9K9nsB^E;u6@c!I%G4wcRuFu+|v&GX{}znZ>3 zEF43&kdpWi9n5CeX6nw$`GPMW#X9(p#fqKz|1MTctZXd*ZLzx2(s26CU-e$8*-e11 zWEye8k8Xg!C)2eTBAf2^+z&_*SCLtec5mV=ocV>kZM%AyN-YmTHuY!uIcE> z2E02o^(XJq{`~8HcWEX_4u&atbm+($hhxB|AVw@WcIe3Ip3+(3FXPkki7HmVED_bZ zm^&2Z{*~jy>-lwFgg>leg;9cJVRY_i*J`>7*U{S-Y{sv&fF*}eY>zJ|VG|Lkg=D?v z@0KQO7TIv3UH!zI= zWR#YNsbM|ag~e)^1KN~E!ZOtSM!)Ncuk6yC;~|f`m@)!M(;phX$r^Tx7|dXTa!K0s z5+CK-VXcl$E=p+ruUikMa0;Z*=PL4hW+|SyQHtWLNMSmFYs zk$!DW#hX=E-e_}ai9!K)l6x}hg+2G)1dL5YNnZSLsaj}PQwxLJAg!++*cnNEScVIp zEFDLCe%Afo^cEC(FoQqtl>|b7O%%By3bTsC6iyY$lvW4*0Cd)W84@~mVTVc(Mqb_Mbw6h#KX zB7xLC2ulNv3%NCqGl(9F!AI67yhoay8Np)uxY{je+GPSp+>?!hNlpg3zxqt^Gb=*` zhLc46N7d&DW1DCZFlH?zXil>L{o(!)1p_VvocIA}V8oh<7vYKeZ-LZ-@OH^DnI;1&A*Li?w&(oXA9G zkl>r2a(GGxvrOXjm0UDJ2*sp1M|#Io`VHd<@?)mm;|y#@sj$=ZLyT)o{-_GEoQCl8 zMaHot6N5q9i85x(updO2CB^VfNLj0vSqEV$ob^uSLCq~y-BWX*f@S`VV!n}I+TiFkgbir>J+kqcf-Uj*KN_hGyQo7y zyLV&9<9t_989z-2>*+%YS^;`2_*uSSNWALky58aNTG#}2lJuU>kbi!vL{Hxs#)8p_ zXjZgZAf97n>E^;k_;!=SSii5xwJ<2>W?wo+E`U=6;@R+YznXe{A@)KGg;XoAg#YTXHA5W(ov%&(>fHVXdGecM zT8U^}mG(cp+8v6)A`k6izosi$78FW%k~w)g!~`Z1tR=1U>yqS>Z>O~C`Aygksvc9` z#2r2POl|l9;qn`Z<`~LYWr1`C_(7XApEjxnH2WEF72eI>Uw&t8vhayi(yhp6mC0@N z+(-Ht+~VYOH&j5$Z;ayn0ox-*DP{Rr-4+i}utcw3q5dEo7%7xOwNcwNTn=;J&Fz|W z&wyD?^vyGdy3Cm2l~D`(IyUcYi}})=Q%_za8}C1#0b3NnWL@}|+uH5&gJVG|W+O1+ ziejGjTx-7cd6}>u^dGj$VNzlw@F32_#?hR_-kI51p7^Czl)r&%kI6UD4X9#B6Rjph ztv)poE{+I61b%oU223b0|8n(NECK-SQb>}$amgy7JQz9z2zue z5%=hc?P8O#1BoEc<>xLFHbc9vhtOV~vxIm--Drq(y{ZHiQcI-~_5HuJtBDbGV?P$< zAvgLWJLVu^I}5|{#VhSI`IGg-&q*OcJ=pYw_Esc z0xcL9)~ZQoE=ehtJG=VXf zIZZo(`Zx}KhP(lliK|}-wM_9C#zj|_QILuN#}cb|N@YM!iSu_#uXwMN^0P5YDRi4# zRb6l>sKf7>5HDVEL4EAso(W=m9-K`f_OQ~Rbqpz%b&JjQs{UD!gn*aP5L$uG<$1hf ziF@+Kxz7G>`uUPpKJy*$-M1xH?{i+=>{FZHNhaBSP&x3RGC)T4rrdw}Bhx>rB zoaLhRv^b0T5LtnnZj#F^RBQV5&liqwA0v0R~LQ z8c`jH6emLlL!)5ZM1)eYE2K(CA!U&8p~vP4FFlS{jXpLLE8MWP5QM$0rm_O%JwTFD}DTUfml+m zV=*KZ-Th+|AI};4V3ZIt%JsUA6fCgGh~vpj&Xk*fX2u6=BbeDTGG zq@`0r6$wE6|^?1m_yJ@VTfvnh)MYXtjN)z~ z&t_7hp{mt&(~JMD4VyGEYj)HI&KTEDlRwro(QSQ#(}*|y6G2q9RF0}$ z^1&H~=He$7!W9g$8i&EIqicNBE-~K~bwbXIy^BS;1t1^R9v9&GOu+DaXo?Ae7$ER) z(8*q~@7OeTkiCYgUlLnDDF*n-Lf`-))VZ^%?s^#@=tY|8wf$6LLTm)_+nC0_QPS=s zOCt(V6F?tkPoZZXoaRV6fc`P&&}@@NtC^sYN&plNTn|g zpXZUIYu4Sb4@Yfnv(M?nBE}TPL_%X;KmRHVufFqQ>_Z@P_~Y${&L`resg6F zTHn1emtm=*LQa$*uXX=AhQS4_F`Evi1h3Ivga9f7U<7WsGUjrT3=WN92dJVY5d5J! zcU~XL{1S$rzn;OQu(uP{9;4(3;g(w^!CB311`{s^b872AO)D?A-BcnE5G4k#)H$L& zjSjNQ02YNV6K}qg6IK-lV2(h#CxY)mP_$MJCIGmEiU3ix9X6-#DyKQG~YbYszGLGK|V!2J(F+7Hlo=n}uqv=5MJ(rk;@6QO6^d z8$1iwJI>EC0Ui3`4)o0JH=a*M-Rb{93gN$N#~?0^m;13i*z}&TthLU+KYf#fVD<~cNqcOvLDE16IwN0Yny<8}c1Hi~DZs-R=Z)qw7<3K0d!!fs3Fn3ElrAhZ0i*Rd+Y=D7S zdi9qPqK0`z9u;obXYX2nSsz9OhpoIxVH(?y@~roK46`hm=6h$|_Vzip2le(Bap^)7 zByNJ)&q3fshCz^ID#6P^+eoW0PUeGvl`uXq?vcEt({60^C63ga?H?`%F@DZfU%JZX zKy!&qZ%S?w^UbaH+R`Mx%^^}*SW{iia`knQ&IOTnTO}1mw0l=4lh<2&B#l;bdp)DX z^*vO_AuO@u+vRE(EF!t7F-c_!5&UrM;6+&jphH4C{GQu_w!Bbxt|X`^cO~DL=U!!t zcxaqlzH*mhcaIz~@mdbUvsyQGhx64Zcd9><(7 z4y$uoL9eBthYztqdSL~6P7P!Q{B9}lIb|fQ-7xCN(W}DQGMl4|hIT#KsGe5!y*M|T z?cu=*eXr}!4j1^Rxdzr!BC|d)L&n3CxZIUaj)F{}LcoTqj1ChJXh29Bzp(pAh>2*! zoNtTqj9UXxJcmr4nodl|H9~!k=AfRq*3JJZp_1RR_u@_`(zu@d%~(NZUlh0WySG(Z zKh_ReOLQgexiNz1G5L{TS~g0A&F`!jZ4Hi?>jPg8fv{Op4@6=azZ=FpGHXB?3t+Rz zXyhU10pn|eEw{mzb4lu*$ZLN(2#j$!0aIvHcKhMVH(&3}E1;nExxG+y0z* z1_!lt<```#bB5S8Np*B1*CAZ$w8b$ELfm7_ROTCQl=O}MruaFJL>8a`+=dDwzn-01 z8@(%iRakcG$MQu_GM!LQl|4WxS)CsLK)+#ZF#UvAoORX7a;)3`!`MIY2-dbym}uFy zZQHhO+qP}nW|wW-Rb94iThr&vBs0mpnS49XZ`iliwN_|8l7M?YpSK!GmxrfBvhRI& zk5N<1Z=8>7BK`H>It~#~zx4q`CRp)Km%O-n&yT+@y?-i`zZWL_1xG$G`0x$h0G3j+ z0`~KRHLp+DkpJ}Vzr5i6;mg+pEbt|ha@Tof@ISmm9m{7A?!j&Jy&EL`x7(0&B2{pi z=X^75i`-Cr_{A^&S&RkIq>j7i!XVf?mJ7Ix1Y{~iM~Ls~2X2q0KC`xDuNx`Z2~e71 zwA;l-08qk}V($SwEt2)UHtu4qpF_7hlQ1@r_YC9&qkbwL3V8uI=&ZW7a3?@b(g_1v z>;i@hw9pXWas_w0t-7GfjVuVPtRdmmKmXZ>25pl%?>n-^uWS0WMYza;BT)LugB{%F zsP?fzxY@Vx{o5W7I~dFkVShL@^RjpAm{yXVJ@YSY5{_=srhs+r4R7z=k(B?N-Sv5U z$6vVsFFWYBrK}*#_gjAx<&D4|+=hM>%4Ad%88jHdmW$E)CtoW_S*+7lTH$w@-OmQ{ zrjIlOV;w~5_}-tPlQn-6`1wK`tDt-4*NNfy$?}^pot8R>dN@uMrm`NQ%-hxP1>0O7 zCi}m-I(CNt(5*AFvvd5fUEPSLt^J||!q1L=qWrjE`gLy|EK1}dfFsfv*MM)TtQe@>-6X9pXs3srhPx1*Sz!Mmbm_w8`)0eOI@%nupb|dXr5sp-fIV8Dz z`aEW95x9otL-*2=m2>4JRL;Z> z`)O#(Spm(gN^nmIVcWwGPmo=c|t_U6k_Y_rEP8GkFjY@SfaXUpCgr(ym z_aKNg*O8;1>6l_AUsoo(JzPQh1Lkjsrg7WCIj4STfn)#v4Eqrd7fBIdNfE{+NaJi! zVH_Rkq$F^W0BGZasI;5m*Hp~C>pEB@b>Ldo02HYaPA8S%%9uBzM!(7EX}KP z>9nGLCbD0t^6b@NBjk@jfH-6ry_+a*724BmqXoO*2goXkpxnt#)VHY$Ae#h)`oP^= zH7yoC6=+btAoTxAVxUk)NZdk0kwl0F#C$`UZaJ>=Y|WYlK~-#G9e4S@YyiKnopW4@ z5OAc?nc;dUyz0;Tj=)?jQ%ZNO-_5=HhBW8D1nft11f%nNG~^p}!S z%p#6QRR9d2dN=Pau-2}s%vPb(d8sJ_83lUZR1Ui^8Tr#Qt+q-5NrHj0W56ab@yNxb zwSB+_eIhMxA|TE;2YJ}C?icOoU^YT_l61-I1=Mk*uFA%K7>#Z#b+QwaqKyP5y){EA$t}AMf!;h zeAS|PvVhxBR|rW7ZD=t3qZ@=t(E9V!3F_BJaE9#@oT+Wz;_$^6s>LXRXxfPxsTc!m z;}5(#x}{-})vT2Zw+5dBZYQkMr)&16=5?BFRzCsvg>K z;s<$@^0w6)Dk&evO6N9qu2RlW-4@2!5%+ zk34Q8g(YEiS6xaM;F{hkRwRMaJvgy;{dFT;HP6Y%Ts1k3>}0=rt>~0@ARaa7GUdx$WZ- z8o9&I@ADk5vTcD>K%~2=ug%$phfOrxZpfi4?gSVYsD0yJ@PtOoX;%RDEd9kek0jnA zyF$z#yafgUNl8Xi9|-mCNVaoPEs;iFt#k{yx1XaNbd+*JfHu_kB4By4D==yM8vCc;iXX=rJxRvertX>7asS;FmUWB_RTtT`CtQohO_mQobcGg@$CSV*0SQv`o3O z;tD=5{3)KJc}p}-+n`y zL5gn-)sGdf9ij}wX_bfCmM=v=W$qZoj+}IEaZXA(`@YwRv+z@iRv34)AWP)30q#y& zD60Z1ZlxMQD`UFhh9Q!OjP~oLlu~{dh`(j|dj<(LpQ!983mUUD7_t%LRrESbp;My= zfe4RUIAjgUqa~1!<<1ERuVykMRQxg%uU#BRrnepK0IM-RbCxui%mAxwD?^EY`rfkd-lA+rJD^ptn)eQ7oLjyBh@TVJ&0E+lkmw3cbNs#0ZC1 zEwMeeuy%cRF>?<02wO1a>0L;RTRCHN=veeP@xrgX9?s?`Zr=TOb4s_{PEXO*$-B&N z{W`H$e|>y^HYaYnqNnob==4zvq&+)6KX356ZvQdG9P8f>FBeoj2`kJ+*gMm45GpHM z330j3u7N9U=kvwQ-f3?BT^@dkZt;uyJH4NjKl|sa=%<<-+G*APvb#RcLH@685$z^6 zVz%pumnEdhXFI)zVAryQlTU@1@%L^5T^bkR&7b$Xzk*w*NP&l#+WE7)-#?#Ia}?GT z(p8x2Eplxu(-Ftklk#-4bzu|o0T4aJ(4)%o2{Y{%pVa-b;tk~KL-5cxg%bS2t#)E4^ZRodj`nf&Z#lIL|tLt-h@_k)z#Ie3@ zcAQd(QZjb9+8<9(NQ--b*1miUMyIqg8KJZ?*`e12??f%47vPaoMDs-VL=!}^;C)+U zb{&>zZ@8`$+-zt9Dbmm(HS40Qr%5*H(o%WFKKM3D!g|2)_O^>*@3dr@ff;LMTUILO zYalA(FejrQ>nP@Pt+}K+RyX6qDB=IsZUdGN)hR=b^qNX-O(nqF34&#`%;TtvQ;Jp9 zKwlf>hHu|^_hk@U+GHx!4l*df2rO^J9O(z8JuCE?%FH`PL%KrU5=*l?O@%v5Qi9P+ zpxx{zb=Nqw5W9Qo5dRoWj0SN*xRS!kzrxq3XU1v*dxmuwW|5b`*Qn^Tf{F0npcj!; ze&DCmN>k5htY29Vf2IgbF{f>EnFyz$B38LfZ!u+OPEdcFNPmpE?$)FHU!&-}N{Zz3 z9Ok0vqWbD3NnplYa78(8JANoHmFymN2u(lp%VNm_^_OBzLq zXphv<9;&3B&V~F^+hmzB!j+T}{RXN~wWH98RNHKB^yxTVm7_NM{xyo6yG5!FV7Jd-m z5!IJ-2o>FE9u5~Hxh2B0)wW665tUrfB0OY0m_TQ6&T6VrV!LT!)u@n#Jxpeb!%RqR zV|@=vnOfnNn%6iXv{_;AJ)zGM{=hqQE+FQ#`f=yfF54Y6(~85DMK|MEYiuLsLTUt? z#N(;){3DjA&uFX|lukVO?@pc`p3E8;PpN$jfFJHKe!=a_e<+E`JiD!O}D zU8YcXuAF=e%1iN!m06jqLuGw*oeaYZU)`w2^>F+m-bFNh>upYDgLbm4vCB!UtX3g=a@qR+0exZ<`7Ac- zS{5`uB?fIwhlMiH_Hh5do|LJ!l&Q6LnkaR^5`Gk(u}x0%AR4fyITMDitn<5JCik<3J3ajFB=%u1 zw2cBj+>XL8#WjKLo2VtcO_n;=TNWSsJ z;X)Ab8$ZX(fnd5*7@qebkjBrg4NJV1dJZP;P*JQVwN^8rcMO(Vm5{@rXr@s_9muKe0)&OE>5O~woo1$ z$6CAgo8yRnulj}Mz^WqFH}p3PvQW*IHx8nk)J}fVK*4EhjM)F8zo}aBKlfDy)w9G zpS=D7cbWE>R?5YzMlnmnRyUQ^?D0IAG-zkw9TH63qd87P(bWsH9YyA=aHxAb{FX;g zhG)*qkbo-74DvVHgUfigf&yaGN>!#Ueoyay!&!p;YHq8mGwmfH)+R4pFAj^^+iPcD z!gh&<8gUG5a@!HOwbiVZuvg~Y!8yB`hS9U!@@ksIdiCm^yvQQ!bJ zfcJ|{p{$*&=+R6=t;|ao-3~dvscfXEt3}g>aL_}mbI%%lARJEB-e!5V0Nxs=TWgY%ep?;Zkf> z=O@4Rqi4KMa*0#TYiL&E=_dg*((KB!%V(sy{rTM0h57h{BdzK$%#JH7L9Y3dbpqDN z8*=5WvUiVxZN9}sz0iXT6VYG|o#c^JztkUQ`6%;|8RbZ7VP+w1;IV4&fHt%e5xO)@ zaYn3Up<288FC*#9BoXMcjM=crzta;LEbVDqCNvh0{cc5!u9;WT|GS<|J!?b=Uj5ed zD8`a#WqPCMyg!N(V_5}&9B+A`fLom3;@*IEavPlhH1d#c7v?o#9(~Dq>k!AZ&!mmo z-Q@Ds(>Wczr-H5W)YJhmdp1R;SYNUu983E8@4(-K5uF7*si$4v!1oyO9j3qxy@j@2 zn4h~=&E}cbR?iM?ewo(&ey;2w)%d3X`o-~RGDWuERkl~S0d>uU*T~Y1*+@BxaLXBK z8f2DON6-srOK3Q(lq0p zRfX57yE2La>SfA5r9qVaUk2Ar3f9+1T0->pVNKo`0RWd8VtrRU`pJfPvXjh%2*lHp zV&f!cWUTZo%76nk+nXfQq}cu9XDu8;Iv;NVjDQPwA8y!shavav!$J2P1}@jG?=vPw&aRqmPTlZXNwSKov+^pa(k ztM-<8$DkAaMmz6+clS@Sk}VP{%*0^Xn>F(t?Q$AT<{(WPA!|Xodv30+P~9|XUZ(j< zuKtvpVhM+_fpZKE3t_W1D{5pdWD?T#H@2Z{BCGrjvrL9d&DrE-SKv-E;jk2(m|r#l z^aPyvNie>Fm6yi%nfC%DPdN5O&7*D$<2Xp1;IDls9fHfrtB=96g)a^v4Yy@VmCKP? z$JuiTH{jYw8HbgT}aB5&;D0UDRZq! zwR~D?rvtEfi;JwDh&+B4WNv~|&C}*gShlrEKp54#`WMZ; z@lI)suPKy&>*Ck}$=uikexuy5r2&1o&A6@k{g?*HA|^Yd1NJ~MtywUmGAjegxxkm@ zQLA-Xh-r{B4~0Nqr9>k)Fi;a`IMZ{ht-xgEs9XPF`za7F5vYTa z84de<_(`qPdQgqeNk|C{zCMO%x}pE0sRt6a#4@?g6(t*dG&6UwAG_{(6}8qA4oz4NO2>Pbx78<}e5f z@kZeV3nc`sFZ*K)C63dmq8+s}NcDI`ZNV`RU_nk5LHss$d!es_6#FczVGEk@?(A?5 z?0ccflJkPNv5ozUDI3*zMH0c&bKdZ)d}B~D7!dJ`xh7(EB=0|4xpza5&fDASzQ`t% zi~A6Q-nYVm_!-4uj+k!(l4gswQLf95aHY{7Ao-Gsy&>a%)IjlT+-Zf)p^Hm&pC9u* z8)C9hhWWE}Jr&#U2-ZZd4$$mSD$uDRQ-#J$>?Jl2uoTwv3Tk|@jgTuA+v5J{xn4OY zT<0?S%>Js%`?w4&96sSrgZQpX)sJ2%3{CRsNp zcXf-FYWncY*!OEEfAc=8u=?aY2hR}fvYCus+w;F~723OiGaLaM0*d)E28=2;e*Y4| zCKkCfj7igh{v;Pw!RlBuYus)>kN5+CoK9x^XV=60pIr~j|Lps7tz~P!$$|8fr@t>B z3cEzJEBU+u`r>t66g_lZly1Kny1yoMt*iYY`C#^V?DzREfnIj9v4&&9?$!YUK^rO@ zXLgEtE}<}(9+>Ox=Av#@y^fE9PeP)o15alcu9-vyM#d=ez{Y_W|BK~o8WsE7=bJYM zWk5o@q?JLM_vDb@-{blIo10xG%OK+@YmLMb>_=Ej&~Xj*nXCJwA0&7ksfH9Prc^=1 zf*AuESem23iIH~U-6VC+?^^~{*S_lMRnoOjQa@%is%rnE^fPDnQC1Z`TZJLvn^fy! z?X(I$3ywuHroIJC2GJVTM{1D79jks6Z2p9T5fVR!({L&NlSRoUq6$B@0|D++-+ks1^QI1 zzw73BnVdtc@n5}ROGNu+siK-E?Poai?p?KA|1zN^?OfGdZJ_3x&~4B9QAb*Ug}-IV4i8 zUvzPp!6T#NleUVVy^NwIRVKrgxs+_y=(YB{Y=+$Q3ystEmwTiA*K2}CgE84=k95f- zA{Z+%6Ss{_dJtFnZZfdg>{=}`i&D~btRUQJnQ=h^F4S|2Sth2TDX zV0FK(v}MaobG-xWhPD$7LlhcYFSCv*Dp?ZNJr)Nd<``OjBch4s@0Y8~PPuYy?@U!Y zAyC)Ncgb@0laO#dI5afGWh>+`SnKo_8wLY%fuU#cXpdW@vgdeBh}b8opErbu7!vKT zZJrHNiqiuUEF#(eyajG}c;V?{Emh`xE^D^~IuO*ta~#i)z_M!<+-ebz%xK>~{63L?a4Gf8!qh zolDMF=(^`3pl*s(-fI~6HwB=AiOS9&`6#}p*uhCp##=T_pN4~ydd3AYy`~<{=%M!g zM3bec$!khwsj&Lf-F{_BM}FfURmkf|^?zY}8rrxWSDv(J%A+B{9@bcN5S*(@pp=Ic zann(dBwi__CRr@_g_0n3bSH=`KGBjSD(ng&L4IR~iYQ9|VHty(5Ee>q5kgKAZ7&nR zx@0nftp*u~)HaKB5&qp)bwpvrkszK&XwVfsaJoB*u^2sk+I!L*zZu)4I~;1JvipWR z-A9;m632)Sgknk%xyfF>XWyi`(=jfu#Y6p+cP>jbL36V^%-VGlzIz)?Uv*Ng)AXNv zczV_BtjOE*7)#fj^#aU9kw9Al4vayr&}y_LpjJ+Gmr94>c5qy%!LwPHC^Ay%J^vTm)iHag+I6U5MFF$=Imxc2)z* zXp~-i9MwETwppu|U3s8kvaNKQ^0-fhi4>$~O;xze4WT zD;cPHInc8?w5mp3%~%M@Xk%48rZxlrV#^CTnzL2-6QCp<3kq6mRGvjk5_oH#~g z!m=)mz=U)apOCnwOkg4%?+1YisT-02w1H2`DCg3#%{ZKHsQ!VV^2v@s2DrKGOS`*!2Hkd{d$WYU zdH4qu96*644=QKq(Vm`z6pg}8x@u=$iD)9aIa*4}YODzf{PEDOZ`O4U2-yaKuZz9a zTKF8%2y(v*-eFa=H{4rPij8`@kJe$rK{Wp7c^7rK&>eDVPqJZdA_U5#jM&HQ~XEk))-u>(>D$N7eH`1@bP4KSsA2j{k;AxdyHNCugcvU&7b1N`|t z4=%2#6TJp6s_Cm{d8%h?gols|W-Ne6M)Tsrk0AqVybm58^Z~)pNzG7m!Bt=0!Am6Yj*wnEXMa&-qs4e(g_7nP(d8 zq$G@zaizJP6!HY(!Ypw%`r5{h^bT^yP$)!`PaiWvKxMf9*w&fhPGo>MHJv&SG*N5s~`YPV^4G)Q^%srd9W2SmyB1O2W9hg*=1YQs#S+;J)lq=FyaAILL z&-gPzOn({{rDre&F&Lw)IPx0`+A*1aqmF447iXqFlb1&6H*? z+BIM+ri{91)++fn zBKy$S$wpI?l~vb&AWU(I9CCySfzN*DL#YoL<7O0r!H^Q z-YiLyOiMd|jZjvOrrU5k;Fo$-vtiZo(F9n-g^?OrG_Aw-@z|eA%)z8*x862Cjt>s^{`kcq(-9-0~FYoa#~zA2_( zRYY!39b%!g_@Ef%un-mAaSITpAgscEVh(GEwE!3;Ia z2B;95!C1Ghso3*}0X9QClP#q|zj>uWzE6T{%6T8vt4wxq#F1~$F$gBh5NHmv04cDS zmD<(x!onj(1!6)oe0KtOg9s7B#ptvvvl_4tj*O`oe)E0H={BRZOmtL-8rx?CE6ww z($rYO!V#DojlTJMC7nA5FcMnkwVFJILteiGoQ|8c!#QpL_i?EGQRpsNRbB2~pJXOl zboSfcW6{=r5c;E%c=`0pj)B^{rboalfbo7e}xkCWn4u~@FvVx?2P$+u;_EI4dVnaSBQl6*2#Z!SgSuH41imMI% zj;VJSJ+}ZZ<)Fc(m#TCB9)eqJmW6JeQ!V<2dF>^hoJ;Ro_Uc=O*(@0kO#HWeZ%r|?_N&5M>U)kyxQ;)l~S0Bpx zVCtHyU19^p?v52wU^Ci&X6ajRrfi!M{myj|F)&uYbj9}#k{VSCOcfp}u=*7Z(z;<{ zzpfP_5D;kInNON3Bb`KO4C3eQ9}uym*WuI!!$mtNmUEPUqq7HbQT9B13dJ3ahCNqX zI>R&?iMu^$-XCp`w|EL3kV(GHZpLQs$s6Bez?xsn)Kl`RgW6(*mYM;2W^8hrh#>G7 zjOTt}V~~Tpp|}CUU~FIA{)ID-#2|_Ll4iPmOrg=+0Tm%x!OYL!cgC+rOioilY5XTf zva$Nm7xh9B;u#bD=&GspNxO>IbhX+qSAkSk?Jb_uP-oM&B`b%Ykk>D-kRyVwtR(xy z3-|Oi_$Jk5?_1sJi_A}}Od8vC<^a`rY>(?U(dl^v0`Se7^WYDnSS1J(3ES#%8vS7< zP2XLU%0`T1#)G7*x~ddt22GOcswvl89ofrE)dvIT_~hwI6J@&_FK}%{{`%mf7j*0@ zruQVYODeA!#BJ*00kQM%8)h&E`^=4>9>I1QwuC?I74-~#1-&;f9Z>{gM*vQV+?6}N zqlyaTv+(-*y{$A`o{Amn_HsJa>ABSY>>W)*&$@|OK&?w5jl+G>G}{Y;dWC2;m$X9Gjp=_59=z86KhdDM zx;texJq?)CSxI^UHi;;gXf%shU&)|=G>dF(O%+MX$gVU0-P>sxN;p|XDXgo-q6kqq z&)FQ#SLp1#?VM6`ex8r9<6?4pRQ{&OWu1Ioy?o2el7s0r8pWJkUAj5FxgCd**+SVefe{!>VEsOl}ca6ewKLcZ%4eNf$*DhzT z6VkbP=fhZuoIn`TG|6wNkjY!f1VG>);>aAB{MnBorTaDdbEw&oPTtbIzv|=yY~GNhQodzu$e;SLBGb zY$HT_#s&)>V7OoByT{Q_x2Ej~fvmapKDuP}PTfaZ{|pIx-TOK7jmdiycg(0$`+KUR zY~JnIGWuc>ni@6H6dk^s4Nc3t&}>=23KWvic-L16ulLY{X|u;sYGd$|sCq<_gbeLKHHaAw^IIo_Hgp2^K${ zC{UQWMjdq%-z6bpX_mR9M|Aaeue4}isgE~))t(nLt7Xj9>s7g_?Ixc)UHmYt@%OdA zqf3ZxfVvZ1k^f!=wW}NAo9_l(+ONHtw{apq1*YZrY#V|JC6LW)eHJ5ddZenvVz;Mv zIz7=sSuoGGm5kN@Zt%~3&kZUHz_%`gd~!A`3}h6+${+bh3uTIE;ug2hPN_Nzx&#T; z*Fr4m&R5)iyIvbHI=(UZ3O$0nPXN4DQkGdFr45L~>{TLSAxKkqexHF{zoD;PIj1yg z4WUb|JyluH&3+|}Bap&CZ=80}EAh_wh6PNQMj7(Qe@;WJ!AC2C+{oM5xDqV`ShfAY z6cTG6WX2(;#PT!e<}E3ekgXA-amU$QEYxN8IBMAAXh6Azy{@SC*9WJq>V=;9?ek1J zo=7E=PXCaePz8p-yCX)K3?H_7Q-yI`-efErn|yrIkr5y@`}{y0^12 zN_-Npy)%X;0@1?Q9&?0h_7rxK1djr*-i^BlD^xhAJLD8Z zFz7w01kEt$3ZeW{tHg5@tSHYk0*<;+5OP$Hlw1@N0+Pa@--h$9kSgu}+*d1lB-s+d zM8g>LU1}skv>thPRfRZ_klPu;deqkZms(=$v7Ml>R3YJSDZRv&cUy`cPL-rf(LiKG z4n38WOOOuXD08(G0Z(MgMM$LxECp97Rbpf-FhdGy*7@QjQs~tp#`kaI5%Uz1D*;a> zpf_S`%3i)=+8;Wpq8*V+BtwrAVBHr2es}4(IX5v}v}$hq&z#`+S5iHKN z#a!%tDUW_49OnU`^-RdbzGVLCa3wVg<|A6Shr{kmwgHmKFw-r*tBM0(;-D4))a7J9G}Ldf$g-C$8`tosa7j^mN$MvyWFSNUu#I`_esD!4wh)EDQDnVyXh>n>0pwiVfMv<6m_9>z zpWt)iFjjdB^rKL0fejlG<}hSbMkM4PLTFWUyscvyQUY^okq zK!m6u=2aq7=!;Or$pxaM6Dt$omI=)9Dl=*HIfranjCQWW)%4(It|r1M?}z-^oax0` z2?6cyD+JQB0bZ_#&z4MBm;td2cVDggGBZK9OMrIX?%g1t{0`JsexErju%s)IW%?_| znP&waVx59NLsssr^t@~%9QlHODz6ycr3G~*{Br<+ zT<-yg35)M2L|*R!|%Ly zFt<|-2>pvgYZFe%DMw$hWh~rc=+(dR)h}O|*hK&gZH$rsFB-^UWICizni)eLO&H$g zes5F;kOIs#F7C6I_FFCc>s7bFG}GSM|9II_Jsf;?NS0)jrJ(Vi?`UX;Q#zMSk)lKg zGd?ge1cXT!DL_BOEybYfAs)O$>9@%#6Uvc!mz58^fLLt1m;fYecPhcf6X(z4g%6^X z#O=c|A0adIDy0YiMyBLp+B7=GlDcKdU2@sGE$lelasa^mV6)s6CvI3X!P2ya#--OB<#;S@MWF^qbgb%24YmsAGLwg)T{*)x|US=FhT^-@(n4N06Ukp6(z{cSA>^bo2*3 zcy00hCDGq<@%Zl8!dWxv?Ca!C$;rJ>Mf~s|7cwQhU~OLl6*R(2-p`MHe($HzjFt{q zE0ezFDy0%8`Fx_f&y02HyRA0wd3gx(XGiF|qh0>Ua>&Rk=;7G0G9Eyy4^(YL5 zf0UjiD5C)6!PIv_raqs;#m(z-a|IR$BoJ*63^nii_lrwo|FsRtMX}8yGjzy`5mhiHAmnG- z{>Pk8d=_9Qfp$y3@2^ROM~g&c#O9)GiKAMHa2?WWgI%j$v+E}}8ng8ED}gu`Jz)&u zE-NBdqvtO*+I}q@H|G=tL!J_iI_oIt5Xtn@iW``&G3v`lM_E^PfuGJIcE?3Z3asNZ zRMVHsV3CuHgA($>S3GkgAbkZHjKb_}UL^1}Y@n_g+4`)}f4B zVLrNozGT4py2=u@-wBpgb-FoJeq` zYw{guWg8n@H!4`O3PQe$KoZ_Tg1eVl0LCatK$ z`Pc) z`29^C!V7{z;IbM2Iu88{!qAQlTs8qW`zD6NpOuJKkqHvkL&^Hzyh=X>o2aBw0Xd`O z=L;`a)s}_zA)4Ipj|=;@x*eYco3vydM%FIfnG^!beA5oHr1|x0rx(WeVUk?`-fwV$ z2fz|CAhP__z>Hjt_|x~2sab7 z?(N>MYc<%)G`t#Z&V8}#DkD9rm_oa4Wtd9fR{*PcY`Nk)>;bSmY2gbr+g092?>s_G zqD>V*pT&)ibuP{Fd5Ba!Y+!C2tN}8RrkZy%@|4Ptpfd}@8oP;H73H)69#Np(b8teX z%%Tr5)*%`SC_#gD1S$;RF563)7LmW6rv@*&VK97yO`hM<>sUZ;rDm^85jtarPr(YSAZj~3kI zbS0!bB+e3kIZ1@rX=7YYUrc<%F~cs3r#nrd$%F*eVY4J!Zf}-XYIl{(SHNJxbF#tb zJ@@(hf=&}~BcYLsTt+51(Kb5!A1$EDp5g`je79}*wBv4a27&)T)G0v^JRtpi$kl;+Fs%1v=0bR$j{{l_)3JA z)nY<*z+ssX10*K{qU&cI55>DeBZk4buIR~x0EF9_GJ$w`>A0SLnPq_uS*+Nk7FF5? z=C6s}Eq*550w4eFVfidz+K)pFu$XQWUT#Mjuj7CPAokV;`^2$fHHc}o z&~bVVdaL%X1OR(EZR8(R2d}?BpJi;vgcV38Lt-Mg%0W2>sVR*0L1l9FV@j&v^X~iA zGf0tF43^2M0yve8@xiamQnTLpO@ zY0Xp-w1MO;dvlmU;*x*^_dO4o#mvohPejIUTqW1Su(|j(Sq!utRZJq)mN;Zt4@$Kq z$;6LOMxy#E++DuY5S^6xK|dGsfr8 z;%wALSj@hm50>5C0@?o>>pMWa4QamQmp5G&hQEf7HHJq!UKSN&8YhOXB*2XN7ktW@ z?TAXWpy&%@OBj`Ovh*;{iE{3FCGAj4hzxan)1})}?Q>)ehguo5SUvFakK9N*>5${= zqzg#_bn8Sa7cu0O8&o@U>AnkiKA-au2JL&r)_){gQ`fKYMCfvT^{EH-Rkz(j%1VPO zk_WN!G`%*=G>{9qDWvoNM(j1>UE~q zp-d7La#C*|l83fxKutAQ0Bwwu12a|Jr;@79N&71U{by-s-Nd0+d!H+OfnZ0R{&c(e zwHT5eqf+QBh9OT}z z?H*G5tmtBk3gLYJ=AQjM=zdeZl@djGYxhb?^x)G?D07uxqvl|8s~+j^?L{|+A4 z<9E8HZ>X=ZyMzmwF;T{kvR@AITJJzq>x*_BL#U0S*D1c}ZW-Y}Fk(75^Gc$PZ z*5~&6h}-HL`FNpDYO14%{u!G}dB}h!`;qeno4e?@j~J?;PFgS=K?N*itnQd7(-%+1 z23u8Y_YoHyMeI&d+)j|a5Q^0)?VH0BqE09uyILNafr)*3uJR_jvRm(Wy)5aM5Rw(z zwPD|`N+J4sJ76sAP+hM(hS!P&1w&5@EaNWx-`Ym#P35rfCrr%90w9E0_JLC&&^T(q&8QF`p&9)xO!OEB zh$x8bXHq^OEmDXHWIp$*iC*V%YH&p658&>8ZDvw(4_vG1RrC%)okW%MbZ2BGM>$f|L>bX7hYbeC&E$grgR*yQ&a45uZDZ?>ZQHhu zj?=Mi+qP}nw$V|?wrwZ7_o+I&PStrny!+ew1#8W^=9*);11!_%vSq7hnR}}cOfH%a zs-h*`vok++9K3BuD$D))lLirL%rB=tcSLAyz$8J6f|s4&Gx#?xG;2(ek$ z9RqioU5gs>A&Pm$ZC6|&f^quXl&;X{!fmRM@7pIiPeQGlZ|`p3+x@8C|AlxuBrK;Rd5j7@!OV^wlr zad-4z00_b7oI=d_f7Zs}6Q9KvI;7SexLc4EuP^45?e)Tw=Ao>J7Fhp4IS{upiCKl7 zBysw-I7GNer90Do1yAF>O*=7E<#Tt zzsv`mO+x-tTtd48Lc;pJp zWGra(MqxSBv(Xdf95ajex+hZiqbL0-UD&Jl4MjjBF&c)u6dwx4XBd!PTv+Ew_?9Mo zQ3rWT*%vG2GS1{Rbs+zNCmoU*C72JK6-A{6rKIyE{g_u-2X+X4e|ML0*gHH}+-AyQ z_7Q>yjfhaJG(23LZtml`uJeoTV}Wj?4Y_$E+T_5$Rcz~Jri1)?J!6aZ3eIe)`De#` zv-FN&?afsBqqc&|KoKlJ?yH62l~;SgE`P)dyp@&bO)Olxz{c|!&=EW2XUR`s`7wYu zX)ikXrY{b`qhHY7z0k6o+GNCG1|3o6w^`WOcDHW%a;dl0@vz(oy?nTF{_gnNP z3TLk0Or67|&CL^Hd8amu-HM0fGmgV<>)1=#rRMicjQK53g@&V;x!zfHPA};rz{K7CK)0#MSRNdOk>A% zy*PiZYUgo7AfWNWVpynx@bN!P8rUbpQNU2{&e;ybe)|ta@S}{7>D<9})#JsJT8GsT zSqW&YkDQx(t}KL*R|uk$Sm_;bM1>>xqQ%p2e?h#(p#;uK7C6L$B>+kGreKlpM)~1b zisIN6NGfh{p7B=wCsuR3dam_08ZOyElVk*PC@>dTD{#VJiww$Tzym zHcFO-)SPYIb(S9WnPpn>Vk)ibhGwEDf}3|5-<{exj*xp>;ioM-hYH5&)C~sFd^^h+ z`V~E)!{v5y3O9PEk+Ua|t)OaGb!LSVG%OXYIxfdHM;O<2U{)5*)<;WvV((7c?g zC=HBKp<2r;!$}e3BbtSWv_++Ga_O89AXSYt8{O$jmEcJQ_sVoA*=-(8IP^46L6k5v0{SzHlYM{p5ji7bNTBodqEDtOvZy;q!x~v+ zg})CBtyipX@vg}WR64^B4u4kl+!eYLRoE8&GO)VTno^*6KOJR)YFfFdC*i0 znX_>RGEUi8RbdC3Gl3ArwbTs_C@Cm#C1{bM<+>X6JBI@-u;jI|(nzjdchizK9i5kn z5Ow4O;I=up%~t5ZozAlHd;-)y($<>k^A{@OTHpke2U@FG{`vAs7Z%dK&R#g*eT02* zM(|@PtOdcltSyZ80mxx-V+K~4t+kYA!k9yUI!&fhesQ;NzR?~TY{Jpnx$?n~j5m#% zv|mJZP*0`>tdpbXVRjCF1o57yspZJ z^H|t|#>>&s^uO>lWwqAa3>(*t%V8e;&=1rA+UQ@iXv8*{)-+l}@I<0>L*y6OWiGI# zv%3vfpU2eidhwNe*_GRw>#C+ioYD&!qoWe|pCcdQlJGG7P!IUyp+qWob9!;l4y_K^ zX2Z!|4p3;32cYBCs0uY4G`WHe-4)M@{k93nuLFS>xp32WW04GB9eW@A#RovscifGm za^&T66mfM)yZT3!rNE4i=FWP=DuEiztV9ib$h{rhf%uRd=oa2`s>iI_lsSyGeBk#z znnGIUoj!WpZJJI8fmn9{{PWu4amA+&fvhMfk}@>Kf-wtkTIB*EtvgPzR^k>mTm5C5 zf`db)og3fG8dD~i;WN(lQwdArIRC*?-Mlz<5iAXg$VZK1*=DSz9^9#^e>0qU@u}S$ zu~%$P8M~5@rDMo#+(>=BG%=ZR8ZWW3-onM?;E2 zbqMlyj(2CSSXAL(P3rA5&;ShLu9)t1z1g%i{C(9>+bE7&xvr;`4foL@uZu(Imp73$ zDOjh|+DLDw`KqNdycvy^@`;9QtbD*a>^9T^i}a71?GSdQxIGs7*{PHjtr{s4_q+#| zZ1)uxl5f5h-sdaH*G8a1%dxc?hZmnN9^B%W>eoSA-ODZ_O}x-M|6~t`9>?+AOeT-p z*$?Vn($ZZj9JoT=_tv*g5XTN;8-$j`sh=+5>Z<~jY`mb>!va?ilEs6JgyS+R6;C$#)D*tb);U$^V?UyA2 z3zE=;s!g64KBZ$WloANG$vdU!x99%Tys%m70u=a2GOJUy_ik)qCnB7;r|Ex2!hhlK z|0gbD=HmPxgJ-U^e#dQ$qWz16ih3}W8ZlfPy4kFPS=<31@nF~JKJ}mhG%>Wxs1^5( z7j*I8&)F;(ks?ZeuScT_%L!b?;7=TndCYp9utJ&;o9v&zq6Gdi+um}Fo05wGQKl4bena z7d$^CXvBt%sJY48d!9+EKmT%JKQJs{G?z`_LZJHhQ zi;X=yGz;GnO`J!2`plDt$fZ5$Z?<~nIn=+?i>NWIS|(&#TtUNr&Bdc&DRJD=Y=n&j z@h2v7o^^G5bLrhuB4D$n(JH#e?M2U6Zc_4he|?W!=3EbB83gBz1&~EUG5wy4FJ@+o z%3kkY`Q}e1`ka?4xT>Bdcb1kSE@60L&`Mk*CJT&Ze~jYTGFYd~79)-EFf=U*ZbB7@ z5e{LKu}YfrW@ML^ilku_7BTJAu>&Ta@u;V6ENyVbg@;d03YLK!ucTh#!XCS4uX?yF zRYaL8zMFf_vQa}djmhFNr>loGeI*Jsl@CIHOkBDUOPJQg-JC5@UTP8PcqE~|E`|YF z#eJF^Y=X8VSAK?71U9u##$Y8wHpt%2F{6?2Y%j(LYg>*2&(@3%Bkd0WO)pDbxe=Ke zI5n@g%u+|e9EuMgLpZRjYP7gOc-OL)dCUJ7ruLtO)HdhM;T71JvZs%Ho{6TWsP>78(9m@tP(t-Z0O{rax+^>sY?Nehj?MO|5OOWb zr6pkMt;$`My&O9RE{gT&{j8{O^c?iF-a9L|x?98;0T%s!KGpg&-C(j!h6QJtS{{_Q zF2p0Wg^A(mI3D+Y7jKewm6GQ~{rP;HmPi(yV8+1#hXTs9WKwW5RHOjR{s$x#Sz@L} zE-nKnf6k^2IYC}Re5^83kifYvAD%R#Z0y&tF;E*Nxx{6C?8%Wk-rZ=+MJeoOU6PV@ ztKk3}2AYLcTPxnuwe@Ez>Mg5~^Y?N#NV}`4%4|bU8YoU+;iPelL&Pg~yBRy6OW+x+ z{Wy{b@N|>gYu;d7AH?94?Ky%`Ln` z+`Z1}IcQ844u%>(wGt+KPUi{93nf{@*F~8$)vTZ_WXmr!d_+$2-!68!uFDA*403J@ zKz92|(t)jWH4}XRLEL!DOoz?Ytox;GO;Xv7Iz(C9pHZq(^5hLHWSypFlk~kHbjps0^Qo-2UsC#UH zIH;BvpsHpBFzjgR-G2h9f_Mv!fvQp7)|4!}K8|-PxuB)x(#oq(t71A7Nb_q=D5^k$ zDUi&YEA8JKOJ}x6=CgEQAE(WQ(Z0xK1dtM}%usNM8EjB2JOci9$22K_mmwK8k-v3! zL;5gI8Z>H5vFb#qRKah3qwVmPePbc5@Yx$WDTZ zqUMUasok@9%Mz)Ag+7MrRE~Wi84sVi*MP@)?2gLUWdsLLI2%sa zT0iW6R)QGHp*#51^Kn6WKF@Q-1=T+H+j7lC5-ZEkW%v_9&)^8B0_F{%B#gpICtD(n zr!4X)iEJa^HxExL%+VU%q1rzC$+^*F7buE#eQNJ8c>Po4%d8Xi5&aq0)T^87&PZ7c z`{C&!TZp!8QtE8xK{!2~`l=`S$DOXE%_#C1C}Q%!GdQyNYlNMx_dN)auAzeCa^RVh zrW>y31`*(fgQlB1MDz#Wsn@A|O#lUr9Jo^<%Gb3GFtkgIHsVWaF^+MbBny!y$b}oC z?@J*h(;!y-S*A9&IlNJ(KfW-`wj$V7=6LxW*Ivu~iWi2LZt@m6Li?GdmkySB%a~y* zYNK~lF+@g%wVljilCGL6RdISZooYVs$1kOzt=`+hN}fV4YD0D|ogqK6*CPlWD@u4b zigQ8^QZDN3GBoa|e_sKvQnG{f4CjZ+Xu^^??+9Jd~5(?l?H~w z(bs5qU#hVb3;FdWxmi&@xd($sX2uPg2R<4)Km{(uqA!=(0ML>o3#XdIurf8}nKAgt z#-S+q2w07vtQI8=*LY0!VOn);Y+{uK9zs+dSi)e&ejLN=v$&(SGjAX~vu0}K4g`*u z@ZOmaJ6rUi5vM(ps1(#73eL}B<<)tk0wL2$V}?a*lR}$Q#G9L0pRIF$WWul3!EAf0 zUW+orq&XH~Ty$6t4;HC0Kg488~PQ2s23OWk|$KD-`4w)jm+Z4GC_#~re zcnb;j6<1ti*n@M7(V2KwAr(834w5X9X1fP#!>o7(Sda1%dB`m|_E8Am4|nY10AtRn zhE0Wm4euxM1Va(ZI#2x7|~!kGCh%gLXk8lJO!s-FsVGl7D6`7 zEq{D2;gG)IL6H;0dCwn(Utl4 z=7uy!VoM_x+2ni=nlGc6@415x$7!zi0@Z!O{_3=v7vdGgX4CG~3!EmJ%xk>!V><}Ev2n<=5P-+?k7w{afD^cXLgjJ!lP%05Z4e_tB;v|&e*)P zX1cTFvBajI9+BP~8_Y0vB_c7Km!+D#EL2Zwr+HZF6V7M*WA z5UTUz1#BO8a9{7K8%UTnEOQQ}2MkEq4ntG3WgCOPLvL%}(}3rsLT&VC48P~=Liv1M zDZXZQ2llj8uVKsknF$U#Gyzt3yZ=dA<@Arn(y=HQRcAwv?`86j}R z@H7}a*9~|4TJxy9BMvuyaAx`a6*s4VjAf;7b}!&nZo zqlOk}NzjyYxK{gn>3N<8NNu8KNxFQe6JG>QGfn{|_h*P(g=9!r4OJ(_k)KwVw^=r} z*mu5e>9&Xmu8qqfY_9$Wuc?Vu^HTRNQLPWQN!O4va6qvtC|T8qDJA3Dg43Aj-NyP# z=GPin+`h8Tw!(=yEseoz#?X3lnK^AW0uvOfh&waA^d-*2G>x>uL=mAO(+d_B>fpTF z43c(hg31>6o{bzF#^p95X}LB3!&s$IozL(PWs6XJdI+KhyPk*w25)oT9M$4V65g{w zKZD&{+Vj?#-XEkes_nfdoX|Fl066*axG_cu_N5PK(Vy6^jo;1B7(5{{VA z&kBL>_uKTyNuD1zEg!PCHG(X5gNL#PFzg8SOaPn2LpT?s18MaWYC6x@;v?p#qni(g zZZ}j`8o3SL_px1%X!?EygF<{r?3{M)?(VAT>oZ8rb2ue-98$AwLH8$=s;tyA9-uii zkvJ5C5jBl4%ZoF^dH>~ncDMcQ+Vtgl>6uuzf)txIpv1O{Iqp&><%s`VR!M0YD6 zr(01PpTXO~r$?kOO$MFGk|gS~#Gun#R~|-|I)QKd!--#a*Z0oI@zmCI z+y>4`%C>dy)~CZ#?`_+Q zI)}QzmUhpN9crxq0ivI&Ocyzxq*Zgx?^i(`;s;g&%^Zc+coBqElu5jzW@Z`56%tZ- zlA#Ai&t~T&OXDfso)O_P=q=yZJ@lL24IPQ@rsH#{WI?(umGZO{wjL4dcj0Td3Gc%L z8d9b@NoXFUH6jjk(qC1@>9l)Gs43^TWIL@tWvrw~Ti(fnOwiUEU(52;cL4Wrt5FrJ zEHGFx{v2NXK&8WxY;p_60<#h>#`C}CWQzpLuOGrbw0{sC`zgeJD21}?&K#u|OyK2C zg4CuewYHRL%S(1K97sFSYaGRN@GI_(8g62HN>xaju_M8S=i@Jy?el*c2jnX z#amZ&j4ZxdV>2iyl5B&f80W*YnS-L5m6MPyyz~#}WaL&utKULOhU0$Hj#xLVp^D%J zL0lTx-tFdx9Cg4;Df<&}g=#UfhpJI7&Qq)q&;dJaha9C!zNqW8n`}hmq%mlSk!dW% z>HBc0g{0wJAV6<62I8Xkhu_Ctr=ph1TX;rVOK8SX@8wXlaBE^MBhu;#zR1)C>{l7D z)=WM0=AD7*rELL)=n3Gp0c0NxvoTAPd;m%0+5;h*M=k86UaN}0^|+t%3`g#lnjBOi zS9Lya%f2N@%&STe(YO zC}AN^OP@V5=Z=ym*B+&gI?|VGd)xV$J|42rNf4P;DOgJtm@)HW;5@%Fwff>duH{*| z|8ZX+A9*2KQV*)AIYKwJ3o2`H5vu@1tMmG8@sA(vR(F!5N)iG~qkgIKt+a z`!kVdU;?Ypby1I@#z*25b-s|062pd{>n>c{iG&@tz4Q236-#mP35EF)z`a9pm{>Iv z6a&|P{p_J%q~6D~6_L+L|3j87N{$abBb&elYC_`FE(8nr^1nXZoJ{|9vSazb*vCL7Nty7fp|d-_@~$s6eB`T278IxO`DgX9)Df= z@avae*2E&F7vUVK_V~H+>-F(_3DOx=HNz@H4pCa9{mcl1yD;HcotXRd{U{m^5KS;F z*yh*^B!p>{OBa+4cI8QsPrRmq8cgrU;v^KpEDWy@lxn9E3P7`dXGAwnuHN5Q_ONPO zFduUr)ObKjVG zvPQhrwZmy+td2_oV|1L$Af19*#Tr$0NP>>}odEi7AFUK#;wSlr%8;g3j1`U=8|`h( z8n*H8ay56t!*S*mDdDyomS@|H!-*X3Zo3!&a-V+}?8N_mtbpjCc?Eu~Bnal;W$aK9P3pn{dH1d!6%~;+^cBL1Bf#VcstY$3iNZL`A@qasaJ_ zNxCQx*rUW@kM9o`%y0MUTSxO{Zh+dyj?xFoCCTnI{sk&*AB~FXE^N^A+bu1{#lW$A zf`CDvOQ-;8`XcS^6J;{5$+5ETIoP7Szpio(;u}j6JetwMN>+7IWL-Iy(yk?LKn)a9 zES%~*qW$mpI!SIaR9GQNu0sh1(tFr620{cFfo^xZK6!!m;%PfIvb}G&pa?=?0eS)_ zWXGh;-~q1lkMU-b0OB%7IZ1YFrgvUTqOfS7AU9=}^e9KeMdRQZoBpps#qr-K)ltSw zhq%$i>!HmH*^J}AG>AKtazwe6Th0NfZ-48=8 z${n8yR=1}&PAmSr*2oiCpVn5Jmd@!my^mM>8VQV*str|=hQNpH5L2L5Q*(jNN-4&< z!F&ly#bYYfD^tw280NEDBwvVzmz5xw5;@C=rgm+c6gw6M?TR7u==>YtSmh9jv0v5F z!4F*ri{pe=H&{g3l;#}}$CynK-H5~V8{v?3h!OqB9jAC5q;8RlvF>B6#~`duE1UG& zN{FE?hSUSc!|c*S?*i{fYdtEFs_Gc8cLV)IFQItpjMBJ0dC)FW>Mma&i0H0Hk%s0+ ziz_@Q0plM>8xzaKqDlLFK~oOe)8;*l?&}J%kX_P ztfQ+8h7Aw!&_T7`xgQxa1G~?YV2)SpY5(=i_gko}=8G!^auJpA7{d0{u(#@_xx@g< z^g*bk=E0(0>xCqj{SM7`e;mu;3qsd7O?+GG?$DW?f}9HSH#ur;>F`#otQ~ z<+=#1$k~<6Kh##(GzA-fS2eNJ%phpuk^fq+aKL7UIgJ5nGKB&c<3xb>(Fe4BKW3jd zR@6c88LeQVJ*j5!n>J+peJaan9f|6Ry{hxr#8p4~$OKDPT1G({oqF6e$uxsp4H1_? zK#SYmCfY@nS4e^A2O5-yiv*>>rHI{wXe~Z#!#_YTjrU(0p_S^bR*sr;lYIeNeIO$Q za>L2@(pAr*Z^NUxuF)}xQ^1{GnnRcg!nk=tLfJ%zGWY1=havNyI|Q)c?xfspn)2eol|D|o_sWkpRXADq3*`_krEnpP zXeQRzI5`_9>|Ete3YYs5JiN3n=9k$CV>3!@L^?VV3XW4CfQ% z#9=;O+YIO5TpyeN&JT@=;H!863XdJsKBda}_ziE&`~af5_)B`$q9ZQJ{1f6KF4=nO zS(AUu#uvne#kf*}_=Qrb917X>ZD82Vgoi7I-wtxji{`jkl9i|DR4DGAS%dRWoJ?#! z50|I*Rq2=j>4lBsryjI_;)vAZtB5YHRI~_$6FMI0C`K%>Ut7Xl#F0Fhk*;(^&<@(g zhaRr_RbBFHRl)Eq&df*(vcQ6^UIMZiWACrgUMjNd3430$Ynu;HDu>a21?ui!`xr|5 z_ma_lVi7MmeWHmiF+T{NpuxppY2=}0Rhd#huJu;RNHOQN@KU2XE3HZbkLst_daXJu zv@~-cCfqA=tiqnQP1Cd=Qw=pucC3QZs4q69v4LBx#gg`}%$Mju2;Ds={kB9Ue&GRI z2^YfegZj+&$j0eiO#$2UWX3t$Hu-Lgf_6If=+6TNkMOT4L%Vy>JFi!a@8p$cuki1t zucVK1XzaYN>cTsF4#{ZIlHm>x>}E$-Kdr?n6q6m*DQ@F5g*Ch#^1C(NK0(7NR zIuTWT!>Z0?wYqE$Beyp{sy*s|*l=H|w}B9W@n~{}sCX*EHFFteKLhdMsG`evK43kc ztuF~S&J9-1>-cp0we;mGD|AT{Xsqsj`n4DxP3UHtH`I;kpq6)5m3ER_ZjCu}TW(vw z0;!oS>l(NA}_Gq%V^N~E@z*y7P|gM2<$Gjeifci_Y@+F(0h_tx6dW_7*mUI&qi zI&`(SY5%btX_1qVN7nWoyIx)1Vrg9OHjec4OHONKBNnOb9jvy$uj&}Kd*5allBDc1 z4l|2Kn_>MDEArbfvEZ4zUv(Ek$jJdzwR%z`P>>mF!hnKb3gqtbgobibhO34n&_$bd zUJtP_1`MdbZ8JTuEZWcJq2!t+wJf$jeJ5||lXXqKerw-4uW45Y$4`~QHOn$`md|T( zuel3zLe8fX?Fkrzfk>A6$08R+mrdEth`wlU zYv)9g?;LFPZg%@!>zS@RsU{Ir8y)6$`(FLnUe}(JTgg9p#=uT0v$ScNWGSn9yNxD&8H{=4VF}j zW!qS=$mB<1?_d=cha5`1RT|#_KS_Zgw26*R{~xBoFq!eZtuvOnB`6XR(LoXbqIn(G zT{AhWD&Ji;6-ikCk9W5u6luFh_@{8YKa6gWuc{`aZ!4J*#6DHzI0VEml0YF{7sscj zoPEXP^p~fGxr+r%an{ll{%O&}rwL4vI3%Vm>_Qy}CVSk7y$DZxnO1P)@bJ{kH)+4A?SH%UV5~iWNS)%Qr zcxzl#eh6fuEC&jQov@^`xB9V=R{}vddozC3-QXcyJ(x`t*v$ua^bN&XozCb$w-KQ# zEyJSxJ@>-29r0f&p~f(t=W7UvzMI*|b5yJX%~80B4|Ug#)U&lOM$2sRM9wEN%9%$qI~`h=?yFp!K&z;Z_Ozh6M!Jr`9*X4TH{)Br#PygObC-lO* z*VuY|uU0$y1K_Xy$117;wm(P);1G8Vz@(IE_#HbZBxNEtJ4b8dOlaXA;@jyLW#=ks z*rVL?vS1c@uxil&d8o${PN#FOQ^g;u*Ya?U&WK@5#XV6)4+u^hu`%mJn+u2f>i(c5 zd)9bLP&?jWU6sbllnIkrvzCO+M#$`;mFyQ8% z(I$&H&HeBxhzWc=AjkXuytbn}C|$|xU(i7ho_@v*Kr8@!*#8lNJ_LMFQ%3*+NQl;J z#X4(E=4c&2B}SNP5Z>$x3xJy>xi)4gf!4^M4W#ne>63*6{4x~qF~lGJF54NAkCewk z07*Xu4hEzvevI_dr{ZHFoIv?n-dGs1(Xd09ij5TLs|*K&0;bxOZ=w;54y`B<)Ut&q zG_7Z?QqrtuKW+!YRK3x#KT!@utWc}(N<*Cv28qIU zh>A1y#b4TTtl1_b>4j4_o0xM>W&npo&RsSx&-Tg4um(9UcG}L1CEq6>j5EyksxDag z$x1;T#S4N_8Hfd>+tpX7zp-ScyP*i9_X0>r@rm%Tdgr|v5zC^TlYp8ZhwhA(Wt~lk4rDE0zd>81y4%{n5mOR`yEl{@6+vN@( ziMTg&r(MJ5!V7)gvu0oQX_zrMYm8WgKYF?{Nc($r(APs6p~AaxUD1Us>=XTmNX#cB zmVQBeJB=kHS)$(Rk=ovT47^(Kd_eibt&TI7(FiP6^7@Bj$9$BL!#%@2W_|TlJ?@na%?JZTb1|0L-xjMDVpv~`IC1^WEIG%g2l94Ia5sS}Rh-?tZ9*n@8 zR1NTU-8b*N|GwB|vWf#Xwbeq5!^365wFdf-T@2@2f0#ma3zX0_NuPvmY7sc(i>$j42I zHBSmNyjpGLJsE3ao);CI#m{-PPDuF?N&ur!dEKCePzBug(a^y&g6ZQceh9gye_-)>fAg` zd!CEzarT`;>dZLvbqnU;vBJ8(uB;BA1w-xP&95pDsW9s}=9iA4}c?vi^ z__ey);rwhg$;&l;1jl6@&8ulDtJMk2_I^EVrFhiyyKDMB*n?N_Df4?-9-JL~_rY`oI^chsB& z_|DeNDGQ;^d)|;b1%lYfJH{7|Q~kp5kpu}yT?SbFlfz8L!Z!Eyuy_@;Ba>0cZ>Bwu zl%{%Re3>3+!JZvH1k3w+Jcmu0Vc4PO9g?nSE6~?bXdzRRTjT;p)(#!H-r~IvBjp5i zz5%9@1An3=a|Y;LXEypiJ@1~MXgK6bgDeuQ5|2F6U*$~$_nXZYr|j=Sp&`1Cv}Cjy zlUT{3qb6jF?Sp?WXH2{5I3FJw>NHU{~Y+Fn8Gs$T(#3f9~|DJT&@t?zjup~00 ze+R8Tn5g~v6wC*p0DbSC#S3(|XD4KPr08h7PZprCTg1EF?tL-Lk`tH;mqqM~qDZ-m z%GM*qVsOj!hsrHnw(5Aauq$_g)NQ>Vkh~YhEzQNbP5}OVX0=weJ=FFxss7;P{>+N; zVfetJ`OuXD6ij|tuA@NA#T+N|Af)=X`XEwi5Ou}mw|Ly_4!M+w8NGDqWV%;BTg@jy zvVC+_UZCXsKIg^5ei*jRx#vk09F+A*LRo`}r3Q;<%i9&oLOl}wS)rM0u_)l`8y9r_ ziiOiF3?~Y$^xD~Y<5tWIL@b|R(3URs=@pZaq?9^-o|c?Pn+|VG=idUXJ{gj1VTN9Q zyJwM)MioPDfYv4Qo*4W%IExP($^trP;Ult;hltb3Cp$6r_Zet=5z?kqgYp;MfRiOH zfg_KoaeY;3Pe!o+c! z2CV^tkbY-Ri|Kxs()E5Xur*i4^@D;VaYLwDCzO-f(upGOk&3B$7Ctc|9l#wbnY5RP zcEAX)0n=lg`9SuiWQYGL@SfSQ9qqgiXm#|ibd1*JpL}@9EewTX4?EI zwY}c5?eY(mWDyAh#tlW+@ z3oYXj?R*@M?(w%K8s}6khAQ>iL-RK^OHCH&Sm&K;fQoCB-@EF!!A5f1(YiOg@5VY} zR}40kPnNkD!pi;4v;J>d#&Sh}AiA-g5!I&8)VYgk^II(Ipj%9=08b3{SBi1W$fC^ITnMVAMYgHqkAF#a$ z2s=_8$wEeGlR$QuqNI56{@q_U7c+cLC8xsEfMN#1gL#m68g59%HQ`^R7Mbp!&0YSkFLZr`-r zD+isU6RidZ?c(!PQIzGnFMpT&jWfH3TL^+%WV zjH52B+GDUf`t{ec#duk&<2xLl?VI)=M-_7I+9|hmm7cs4hpQtRiSx{nZSStaT(%Gm z20Cs0&LhJJ_Y$3OAE2_u!UatLngKwbw9^KFXJ;-d;PURE8FwHkFHax_wE+*Lb8Nc}Zd0U+!IT8UwO8bX$kD7pMp;cri4~A8t9sSPm zh8@b&0R?1CSA9dVAgKWeQ&un$?&T=joKN;h14c?TWTu+gn36@;k7+9{EpPPiQnb+w z+6u$FROLzD{Ey{tz(?nwjXq~^XG>Uf=G3ieR!~DE2Zp^?`n1}BfKP89fjSzL`!2?7 zm_dRSb;&%ijJ6dYtf11ns!rUGmU30_Zu0>b20y zJ$vrdxUeoY>iQ<3IfyDYTbZ}!49v9}wZ%2sGgj!54->2xs;PYWn$MKe-%qH zg)R;@red}^hLmH#Fqd1BSu!ebgMdwjTqy3jw&I*nrVp6d|v%Rs_G{-rG zohnh;iQ4QUCz%53nfa*4{R{@ zQVYm7t}-k6ESpO*%V|IOgU}I$VoN$X%|V&-6I5<^Xlm&ZCR*zfWv146Yu`h`-O!~$ zFO3bK-aDw5YtLs2W^U*4s5ao~v{CD4oaxy@CdGpUM1^CG|NU3BYOi`(7!f_v#p@T% ztEh{dQl;b(+VI}Z3zJOySk6fwj`w7V1zuas-(}m@Ra)&vmu^Zv))zpzs%ebqhYeCe z8D&+Qja=ffQ*RWphB`f6!LQSYjpG6ri%aizhKD#aP@`(_GU!%okWXm?3QDnb{WF?= zt)F3av}m*P!akd-I2bFI=)5XaOUR$QqUeVMO`E8McLmTgB#dXseo3jBl70ov(-6do ztiMyBWuZE%2-RmuE#xxL7BkGTg}P3=%Qp6i9*-KI@!p`G4llLH54=UQ0Q55BJsJhy zl!yIYZ``;9Q_v;2J%re~;eIHYO|c1a#_%ynz8*^D$Y`(xY&1q*b$sx^3UwcEINb-j~LG2&3zC%~mH>~*GFic7C+KDj0lF}OCI+TV@x)!neiTBuP@L%jzQz_p2#(lIrpe@Y6I^}`r4&n9 z7Ne-8qs=rb__`lidG-nN?Pd2ZgMJL2x1E_KL7~Ec;>Hx$L_2+xBicio1j`(QF+Pp% z3EN5{hpKHa+WrzmaCG(b_up~^#|%^;T^#A1{Zgz4EUFti7$BLKn)n-s@FaR*Rg`3a zxJ;3v$_0I8qRInZ9SKZmchdcyXg z**6TFo#bnYZ_+iWm84^XZ8MPZjhZs8VaHdWN(c@Fc~})!UF?R@C<6Mb8y}%Y6nXzp zz|5d+#;K-qat+uq$eF-JWJR^8N~)T!Igz=yKZdF*mlyflaAT3ZQHifQOCAz z+qP}n#?HT2?Y&mj`VPLTS)<0$s8Qo&-t|8Bb6vb?&#(Q`%EOOEYh>Rh@yq6HIw1GN z)fT?3v=JRClV?te8x;{O)w<5`=BCeq1I>$3fKPF>{aV>9b;eAIfH}r_`xHUJtJY9e zsY4_tDD(4t<|ycNVQYcNNdQ2Y1sd*SY00?u4?NTFEB-QU{?RbvK_v{bS@LJ_ko4AU znNe|AHv29+#SMs>)7*v;Nb*EDXsI;dF9}*=1+O3XMkaI ztV!U;-;lL){lGC0>dGeFB()t|Dm=dSFSDw$M>ePr{l;b`bbo$(^yWW_jP|mK+zKC9FGssPY5-Fb%8+ z5seOy*%OL>hFL6_2T*JC{J`TvZQ$`m-f+SLGopSd^lqn{)S2vy9-s$RQW4VNmNK=) zB?YYEb`Kq7ebYT3?4Lc`Sd!^v2Kb}|b8CTjLfGsyTc6|vN26 ztO4yGD+QMx3h^zhV2xHKN`^`r&6rDdmnNHtca~*2nxV7|*e9oQk1bS|;70I2=XPKv zkq*kAOIOq?_OCuM0GCDRz*fB{{%x{AHc>@OmV$f<2%fO{iaWvJcWp9>O+`)36uL6( zusLG9N!dWr30_#~(s+l&BmR%4K>l;Y(4~SJI7o98@pfp^Ot3l7ax5ldBrJ_dsF|qy zQ(MS6(i+jA@EN+5V^YYE+L9tqfmHAw2sA?C5yHV7v2?ci3-IGfZ1o{aM9wb(k7cXZ zxFTzvD3+bCJ+0Jdzi@)IV`Kd+tMaS50~__XHUXgxRM1#rZUrC)P-*PIU~($KRD1?h zLVrN)FU&9AhPV_6tRW$vilG-qPIp7PF2AT&d^-#_9%^BPDq`^fv)DixJkPXC^)j%s zI1$QzI5_-1iJw{1jkosCGbY#^A@ zP5mA_s@}7>&w8i;NQ=MybUDjIvYdylE+#sOe^*!NJu*8y@JHWJO~q{EAA9^2Kr(&p z=Susu<+GfMYHmUyt6d;o)H}I^Z(56?YXB$48Ii^x8TS;gjMLd0Pc|nhML1#v9c40m zgZq;k9Zcnh>&VbFPtS%VFF_v$go$++%pRzFOyGDrnb9pE;nXv~A?t>snOOJLzAL8?u}favuwLbFgXw+}8EZsJNXUhr<1ypV60 zpp~M%>2{2VZ+*!r6{xw=zaigzX}=MrIFr9213&)0`06b~fAG!V9DKv|sDrwFWq)&j zAv#BijC@1$)fIdH#Q|CwF5z_x+yD3-(D;`=sS)o5-)V}XZ#{2>_gFPg_HOW&YCqmr zW61RiLk!eDYK~Iz!Y9H}w(D!H_#C=>ja@xC$pyaQ6<8h|PERYJj(wCl#gt`33<}m9 zWEN0C)@_M8N`c}WDHz$AJ22k2_mo5rx-@bEo_%Be^edUcsf9j+fYbYntv6ga^u@p0` zvs5OCjdmA!t~=NjX93nn%H~`8`HfuX!!4WSzpI8Vu3dvPnq~O&llKK!hQ-a_uvxG3 z#a)Rci_4GEiaGHe#Xqe}`__@TGKV3KH4L??io?#d8Y+Kh;RHT!1m1XS_@i|$)*RiU z=V#~_I5IA^47r%JaAqo^Q#7sW`WPr1mUpmWJ_3JXuR5XJX<___?>+li)vB{Wt0rpv z3-ZRl7rQ4omr(nqoa^WP3I!T#UXhBWCTLgo2{IO4Zf69~e3~ zIKKZe7P0>)sthaVf9>%(#Mb`lBi{b*7WAenVOv|bjkCG(dpbksL|qn|vK{TsAzLFB zjHQ-XJ;s0A=B_7Lpc6X1$dS-^=tXbM_!)^`W5v;3p*!6!|2UmJZWnb?b^qt&j=stU z*3tE`>@~vnlcx{8 zOoa~Dqc7RluZ%f>ET2_a)N|p-StpOZLX+UbOZ5l-Qg(v?8a9KUDu2u)9+;9bi3?rWN1N zge4>qQGjGYn&y*=LC=8SJH&@mCec^9_}Mp#(2+^othd=D^GM>C9Zk{w-uZQL1%xo^ zQLy)`P`FYrdB2Ar?%_j$oz9_GGb=l(}B+zycF7k9fI7=XA)2V0_JH z^)KwnK=3|O)5nb!4+Rq%epy>oOWY`a)8&|SV@T!YANOu0E~+!o3J#r67nuz$3dW8qwNk^{M`C)S!93+=$4uRf@J*X;87RoDrq;(PPq zYuEsCYz$-Oub^yWzS&@HtxwPsQ;j$&xA;>k5WjAI67VMd?3c%PYY)|YCS@S@MO^0p z`$-gzQtVUQHI4-!tUxo1lfdX}L2>4?&Bh9oE`ZGxDA}7@q3c}~ZdKw@NBkUge;2JZ z)))rcN^n(11i&uB%XqE3JoRZnPsdLJPZsdsH^N?4hL+&YwfTwLtx<7ah$(kmUc)`9 zyMQYS&(RKnIjm&GIO%8b+>E%<>_F_>V7u5uL*dbjGW(4L+@=t-N zJDhHu>uWAf^~|F97$S;B2DiUx+T1{Euz#tq=*qNWLZHjS{U#U8+~dIaf)eh?;x+XTtJ0s;XJ*Y1sNJ*lEiO6zWvvzltd$p#R7HGD;h|xNTf9STi}nO^ z<9*@HiSwV9$3qITX*rh+)+pw`D48h+B8DOUvx6XcNSD=zP@7UUg*PK4bFi{}DXMO6 zj|HuzkTt<*+P4(2LLzi`%Y+rr57o92r$F|9@d1z|DV4<17iV&ua@SMnwWyOE5zM(< zvCxCU)pNTkQX%R!8)%#F@qcIXnM;;QM`-(etf+8b!1 zHdk>%Qw5BJ>nz@ZVLxD?J9zd9Ku{$FumS8bajwdW6WH=@sKBWZX~~$a4qAEG6ZR)Ov+?PO$=gb@8E!N0Y!jXP;#N&3pBncqukNr zlUt0*Qg!aPL28rux`FNC74u=ij!3AEh{*-5(h8+PeTDYQ?tQ=9*9Dc+3|8T&(Di)X z_#oeppQ6l_PSkD^dSFi$nItIaBYBWWknfkUmbJ8>8G%WsFpxH{Xc!+`zN3&MP{`FZ zH&>H2W+sOgWlF8ni5xTM6HSWj5eVW6xasjac+#<5!oMqwu1eG7?;m92Rk7_4R#)%Q zoKC<)+S8sKaQO zctFhC<@y)Ot80sF?Fp+>GU(aeGuiC?_<;_vce*8FV4Y!{UG6IJ4eOEo(b_2~?(HqR z2LyO&d%h&;*Y&*&82EJNL+#IPw$J+wCwq7iXadR44C4MQ`5?9GRm#UmHDRHYb)Bj< z!z{3hl$&w&KX<2A0U?Va1uM+XJ9KS@p&7+;Q?wC1<8%@qGLzzGsLV>gSJ`D`rVEH*!%-tWY~%>?+e@q-I8jKE z^JE?b_|*@&%@%;T)&Ca7cd(&JOx>WS6t>_)=fU1I(qnX5+|*uO&Hp>AMd1i{dW6{} zok#>YaSE5_T<^3yp=o?$*@TtMYzC(an8l(aB{QG;eip->2{E3(uPdJ9a4Vav*fTW6 z1$<#-+Y4{-xDEk`e0#CP28NkUZ~b0XhBBCH&-nCh zK)F=^53jg`>Y14&zOH<2(pN75;j)Bqs)CH$uZ^8Okydp)J0XM$i}^s&?^kv%B-eeP@jxk@by6>Da5&{m1a}B;Mj+yMfjr zYET{czAvJ^X-FNc%;E`KN3{ zfGVMQ5u!VYF(O);`qHOHLBNXIbwtHtB|xmQviR1V67-|Q1Qk@-A5(z_B77I~Q`5ox zXI8JBmYQ=o3RB#cjQcCwieb`LPWf z(FnzV7{`*v({g*;1Cci`{B9#*;NQEm+3UJ7c;oVxJdk8-IS zIPGw@?mvdk|A;bVV&eF3o0yyGl8zfKfUbAdiP6DQH^M!Mxj3yx`;NbkD+O$AKVu~e zD2YhU16qQ(#?pi4VjM&S34NpXi%B9#Pw|@Bm$yy$!SZ$Gj<@>=KAjGZSNS?+QKrF# zvpthSu)nX=qYA`W+S;h)h_htzPM_n0y8dypl#0YkFj{bv@4g?G2cPZDNm8UJOueWQ z^%E#xqzd>Xs}U>uKMxwD5vdC*7VicS6VVoy!zTxgFW49+F^`jH7{=|s-iCWDgvY4? zpW$7+=y&e2L^MsxRjXq^8hcx+a&?YByGoZ|TCVoeN96OoG`8y4s-b@>+IqInY#&~k zFQ>=`S8=t+Xo@;3R+~4d+nNO-zOh}8dj{>OHMLoWxRn25-O(f=5+t=m-6H9xJMZw; z$^&5q1H-_|t*r~t^lu3!F#+i<15iGK^tw_Yd9{siP8C(*Zw|AHzxeH7zn7lh>$pOg zS@?m(0>cRMKp zyS-Z1RXvVV{I75h`UT2xKF~zzZ`$nO)KWo0mqY8i(=Rd4>Y8OyP-Hk`XFsV@D5pwp zk5lZZRd7TlL^IhPMS&RHpc3sLFfuXPoWG<^J?9hb1iVi&qJXx85EOctjI&xiE7H9~ zyZ94hh~F4&$Zt+D#{C>%^fRc);1sAyC7ApXg<*`b7GGst-*JNzr2;@vpLTVJ5U>E0 zxP39Hn=_USKyIU}UA7T-M@MDNIMkW0pNn+gPR`k?frhSEelH_|{*04XFVdI`YI z!XDbc!Eqf}$T{RsQ{MON4!9ZT=VLCJep^w(JsOHG%tVtEah`K6NS~e z0izuIN&y;ix7W#SuUiDqay`?4V0Fezh({L5y!=K{pg$n2QISee8t#}IKQI`*QVT;~ zGX&!ypBfKLn(Aapym~yH5EOguZtzU&w7KsxpYHzbDCK#UKHbY(JUJmcM0^L?_Zo}E zZ)mWq1?~5GKbNC(Zp-PiNgGpmj=B6%I=QJZm{0(2>$kcc+Bj*yw403;J2;PC1#nf_ zrP~*twAU9V&zA>h(sFpYagSu&I4$nW=v_Vbr2P$rZhqp&)4n3`*MZE(AHWP}8Hpfa zSGl+1(&y^K%q=O!AD_)%BDqu&t&Rl)g-J~vkP^{HNx`yM&5M`jlu<=Bng85x4!|s; z|1elqkVT|bIaOj*q=qml0rV!s59{E3yn{0kkqGIAVW5>mU`$-+dOm>q`#Pe6bRr1( z=SAO`#`b4F3`Ns#?BFO9^pa@RaA}H%@0x)_G)T#kXI*_0l`2edmL<-CE|O3oV8U(xfO5B=Ubf0C&>q zamCo9Yh$XkT)Z0wLV5MiV_>@gxy@IQ?DbV~bKE4X6RhjEkl`?9e(xb*-FEdogE=Wp zAkv(hBEXJ|=aw2w!I?nlg@KuJfkNnLGqHI*>gm1a@L=y&fDLza*RnwJMnhX!j>ifa z@^KUWt7ARivY1eu3BJ|uP0JAJK5cS$CiLMFyj4Rk$`C+2v4bn4es|JlHF4R`iHa(B$IeN49N>Yk zk%Qvqf*@%i(QJy7&1Wl|VK28|X&VrB5oFK5tS+mSYp_QcyMn!@kB6DQvFo}de5WfLPH=Yh%<2{uclp?PH#!fTr8Z> z3*Q~QH$BV393I1%QW^v?FF*YGM-$_T&cIhqGUcYUjUQYs#IJ$Kd`R|WPX3de5Gk2jInp6d(+4#$D`q-_WX4(csN8DI4V^LQTd0z+-VwYVDaDQHV}H*1I7j9=g}V;l0!0&g;yh1KA}A<4 zj`ash0&&=sU4xLfzl=5h#kLpdjrN$p+xx&1>Pvkt{Eu9*dZtL1U`;V2cZ3Z#ef0zv z`<3GX@${Q~jZA7qY6`^(ong=DO`;dY-2ld#SnK;hh>sWjE&elsEC`m-^d=BXGEKWR zSOrV-Jwc#%Zhd#PHcg-o`G0m-&@3B1Lhn=0`C#EpaiqrtZ zU63I4tKx=7%x-QyneL}wJz%gi{d^?lik=XqwEK<{e935+ zD=nD3Rus%lj5Bj9GNLK^F%t>_5}Z^6Z6o3rhM#e_19c9*x;^Na-(2H}GGc{eCK+4W z9WV4f20MNKDF$&eF#e~76lV7SHU|A~eBb}n=9W?%NkVZ*`1iOyFnUsjN&zy3PU4iHOv1T$P6R1oAZMMDRjJSLT&o2b{pLPk_rBifP!TPWVQ zFM`|K4+XZ}UyyxOX0`mID?2ND;k*oQYhxO(IhbH#0WsH~KjqR^RJ|T=KMcQTSSbwc zcNkQPQLS{Z3;AasV|z|M49P;7#8Q%UbKwHLZ}FRJ{(T+maj6U?>ad2%PM{ZC5zuyY zMLzkpiBU6X3@K8wu#9{M7U;(LrvT#WQvPpo$z~tgC55)0|G4GJ_akr7AA^`U}8V0hDfKo z6e-nJRC(X}D(A;y7x7s}U&3oDY5wG4dpT1&dPGBYw_7=fb zfNKY(A<~D*2)18}xkW1MkWRPctWBpHH)_ALGu0CPnpfs{c~ecUnd$l4K9dyYh9#KQ zH|N-?C#RdxtjeU-E?i>+iS6$Xh>v_fMueAEgh*fMm*{#!CyOZUzVT; z3PLTg*uMPEn;*v|K?0n+kt-N?+?n+q>*jsGi=v6brO< z&WMa!kp+ptE}KJ{wvVx6w9i0dATO(~Bw-oE8@=PX69nnFvww?BNYI*4YsqBO;0sJi z^~}V$6|x+yFQBZbIJ1KZYw}ky-X*aGVKW4(tWsdb@1X4p+NLK}%ECar!gW}Sp)Jyq zD~fL@C&`ka2hAEBAQdcnaw9!jNl(O?;{wMaYcInW43H2FUIi+N#|cjn4HB*PDqj90 z5U4ydoIS#(V-j!o&^6K%5~p`Pk`D>LbojjM0Xr#LZ868*zd7CgNt#JTA`HFYWHszcH{Y7A~8Y!#An8f@L zPnDJ5bne#Yb4$@g(gHBQ8)U7aYck4h*nUWYC+@e5`70-t>FC<_p_v>UM_m5 zNMh2iNW+nL*nr`-?W899Ip{4>OYPT7+);sSK38tjG}yy>c3|CvtVc|WJC3`o3Wo_< z6=6l#H2(;-69b|f6LoZjzE_?}QC}ziV!Rk;nIG8HNwO3F!aRt*WXXVO1OG^1ZNyi% zx&K1L5D+>78R4V5N|Ci?8NAVT@zLhVF5g{I3A^q&F9DE9Z45s|>}asc8N`CfuNXMj zACF9WR)ylC@r)CAu`rCl7{L*TuBKVhq>xUE?;YGw< zBr@gpWbP01_tkA)pQ0Sb?yi(NTe~fnb%*((d^_Kc1nW&2_IdwL#M?Id)oxHvJg?z8 z?Z*`OMzM@IX<~Nc5j4D9r0^()J?&#oliXyRAfPY0YWh|VWVaZs-#r-221#_@c#1LT z_UR8Yk~`NmvMDC^1QOxsiPPR7!o2k;7_nKAy?!EYEDR$#+DdyXM17Mk!62?7;ub$~ zz^(K4YQWbiP>cfXe#@R^PG)_t|5$eE*qN`1l z&KSZFii7xtsRYYbP3@Z zU|%q}ezc&M0PxotrI{SofA}~ST%iNKA`f>+D2r0no*MbJ22g#%r1P%`k^IyXlFF*( zS4x_kb4!la5Pkh?UKww`^H*c8&qIBDRmpT|as#jzcrk^oTQDo|SqU*gYg;f$^5bZQ zOmI4S&L-l15o6jqlrzrIi1I9M0<)N)Kw!3Qc&KmiqahO49omd!fREz=c}9;A4GtT9 zy35o)P-To!2wiHk_eQEqjI}@`7k9Q!gKsB4m1i)Bs*zj z3kIs;Q{oyoH6A{f_)=A6dZrB_8E|r=PYozdv|;GuOPI6ZueEQ45D}wmmLfDoiyo)b zE)Sl9TT?iLGiACkgCtttK!N-QM@Es039%?go*Q<0P|{Qp6&?}vpGL2Vj|ST1*5n*5 z=nq+9&x_@f->=0hx#plv)uq6rDh%bd zRd!M9!o`qUl*z>T4Lc1?Yu|)}1&G$msIo3l92^4!urx|XI~SG!n2Sf>B$X#@t(L=0 zYd%!?7@vJv8X!1^b8{7aw(<`&2Cf4&u2k5GzY#<@e9M17Ew{-*EVdaNn_ZQ?&1SD6 z!^6OBLoS4O%3Z${m4vf9MdOK?V3kjKZ4s&7KoCFHrnc5UO*t%4=j(@NTMN)#occI% zUL&4+ZU)?-{}S2AoIvhI`<=jhH$@nN%(#+cEe@O_#0*H#hBO_JW}{TbZJTI`?qrXw zNqzlc!$CwW7DD`Nqpd4(_4MQ(O$jI;m$P+bpaCG{)fxV|@`Jz?dBzT$h{*m!VqvNQS%;VUf#r#xdKkf4Ys3~tX(v<1Di4+^{-cp# zH5V69FvnIBP^#-OkSWAwo)m{_H!&*Sy2UDWKro|cQ_-3B*!ZNJEHc%w$wZH!Tzc{q~kd5 zY4?`gvCtO34JK-9Azi`}zG;q9HWUAoTdN;?rZ#XyyMWk#r1eJKA{>ew(47ha9l~@$ z%28L?Rff!RN~r&`(1x`T5ErSul69u`OCa?UhL}UStxLn6eIYRjSSdsxqcl#zCunhDRkAk&VAZr_6^?UMG-}B8vldK)O8?<#c6uYbh0Jhy!EDa9SDtnjy z%YBvC^gAWOhQJ?nMal)zSd3~l)96dNh=|)r>(j0M^})uQpsN3Dm|!bp@%_>ESs(EI z>HA$j1WEAS*rnl(sJz7f?24DtW~Ex5z2urs-~4mcY&eVX)%?DD-FHpj?sM)7V2waP z0}5ALhs=1nMPKK5(ZJJvc{(x)^sa6`InRTC*pzq9U5n0ZkZX|ZkQ4e8^LTKqQn~K> z@Y>G)etSLIRxQ6~YwoVFZLc`(KbtP^uITD6`r3K(4lrj~K4H+R5Dv_2G%h)?*(OE; z^V)vm_Q6o`UF+Bea~mPJ`guwyz3r&ZD3w+zh!Lx z#VzXadXT$b9uMxvCl`Q@Mx2kwsV07~xZlS4HE~6@d5NtG{*s6uw~Pa@cZE`($1FYJMU7iQtVo#H4H&u-Kj<1j#iMZ22fP`J^Z&ME=J&+5-hHZqh2$_bTycu3i`qI z#+oIi=4MI#nYfWaMXF|4e|e)d?Be0Ur*TmX`(07v1yV6%tf4>N(3fN${A)1pfBjae z7>%*8fP}G8bwnY+OHW@#&lg1@PQn*&jo6v^RV$|VM=hh^sJ%8R*4tx&ZE)P*4M;#` zukIKaN63;alG8B7sb)2_$srUpS>`3(qs<}^^T|iIp4JBcynux@-O2SSiYndKf`Zb} zi;H+piW;UH6(KtoahgDE)XH2K+cdNILb9X>tn?TS@LOCk<8qiqh4@?r!QJGaJ_oXoAbs_-%ZKD!`=oT`G2tmN=ca z>PrTaC_KfxBysY!V;W5QM$e}N2i+;a6>&-f`u6)T?U)3Gt|ly2@ro~hU1Q8HWtvy$ zEettRHo&8@o;4PrvA95IKwNgBhz3uLEdo*ph0P-BoAQ}C{hDrSb==LZ=o>8gDdPH# zhkXTaJkvTzv;fzVOn5T70HA5dY(TkIxFP|gFA9Znq%Zce3VQ6=?OslkX?>pOTzAY2P`6q?!RJ=61EoNQ2xA5s8V0o%)Ew3&R@;Gv05n zTh*L|-(x9MD1oSA_h0?C)7#yil19{Lu~hnM8Kl2n*A%Vi$TfXooT0v7V2x6Lg_#j?NV@S5 zkB{Zq9Krr#iTd>OdiVB0iyGy*6^rfU*Z7#* zEy-2AW-h}bAzS9k#%wQ)HE6lXx-8Tqf~cxOpVs`v^*CL@zC3-OX2GUPnml&?_}{PNc|hp zKFP`gQ^o05fbd#pp+6!JcJSC`R=vajV{$wR(Y^D1I9G_lgH19 z*PTb#7c8ZpA1zGBc-nU;B zj0-DO5J32#v~@!!Gaa~8V|i?+C9=P$wboYp)B-`don@|$EHBT-vXkGG2TuQ-N(Mry zLUq_Q69b~BZE9U95lTI2HCY4$o-_icFonUW%9A^zq*SnD9&hU29V)f(Cno@?e!Plz ztDFRJF;T$CEm`u~&j&GirVkkYfn*;~MPx+ugWmG&9=drnNTkkLtem#=Yi;?-t}hCJ z%6;;dg&60SXAw+$fcFISyjp7KCrIWd$&!gBKe0ChrzrG$4k%lYN^G290+C15<=kyM ziGjP3un;S>2Ws8S?zhDsa-OlNqGtE{EGZ0hyddY0ZhC2ZbQ3<+J0!${6K*#Q&c zf+C%ty~5Y9J9@Z=6LNhx%RFP&S%o+~Q45@+n;pEsQ$c>6=mgNeZ4SD4`vzu`24Wsz z9$UFt_2GQN7h}df-yXc;#^29fM30FiTfI5}-thvGB!klo`H~z)%C+Ft2Vw8%L9C5M4!%ES+P0B>>UVgYIDKcQx~mpgFmFX?^Mt=T6Ne zTFZTWi1$DTYv`V@p<`_CWn`Mlhf5eZOpP!Ml4l6j?qEqx22XUlBNOtbCj6u0BrdUX z)DtswqwH)o_N`Z}HE#$&8&7j8%A9D`Lp3)$rroagXh}B&)L&R?E-5|jAqtuKA@jAYiwf-SkZq-5h)_`1<}b2R%WP~5Qr_K zqV0C;ozf3RnXt&@6g6Nws7fGO3+H5VF^G&ry4fv^UE~$=+HK!U7cUDoAPf=3)43Kg7A zxb8c^yDDwDpG0GB>~>w1-BEXrvAa7q4DxHTLC&=PVQ=&n9t?!Y3)m*)FI(?0#vEDn z0}TEKlWw_2^%AV85KDAE(1#uy2_opvE{^W&n$EtI_?II3%U~tMC}l>#jG!TifYGOt zid`jC>N7GAR|UbM7GKi?Tk<#S%fVPp7^IEvmUtKzeC=t!fBN@akhln)Ct^-9m4qBY z5|IeJb5-HmvoAlSpyjZwT!Yeh41&M-xYLgLx#+1bpa@L?NBr|U5w}#;wW9lo=7Q5$ z*1LbgGKj4sf}l5SHd&Kcv)nM;I|~t;&+D27+D28IMw^?^los4KUs5UWrML~@8;8(S zFMV-OTO3gqn|zjJjA(o@?9GIIIyLH2-mCN#tI1nPfvHLr5%JrDsy?|z0URcp#JJ8R z;GcVy$>T<@OjiyBCt3%W%{Gvtt|(~Uc4wfP^P5#ALD&#pxNOF6OXmp#rtkLwI~V5^ znQU-b4o#n{Xko40ioG~kuCu7ks^apNK42M42)tPkI=Hj>xYD?FAJJb4Gs=2!TH1Ilhy{|Ca#5YbK=QKZmIt4ir z86%)ylw;aaJ^(>OJj;FvUau@0Eo3f!;Tdrn-``3Fnwr;h6VLf=x7HWgo7zt&O_==C zHlRM<}R9zIeWT>ic9tt#{Eq#~K z`pj6`4z5ZMDsK%QOz}aN1+D#uf|{eC<3*c%&521s5Hexy1q+GoY?^Tnxb{G2uj!_~ zK+l=u2>)X~WM=-qC%nvz|Gl6sQ^VSJzXkBs)!mof1XHtnr=0Ml7#bA>&iDq>4F#O#18jdqTTtuesy|;!owm)^3d3r+bs5~7__w(gU7NdI0hrvO) zjw$)|Y|kUna%gcZ37lD>f{v|Rc2#yRtbQ89*FTmTTb&^jgK#kF^<}!d`}3vWlTT{h zEG3DPW{e5$Bb^R)SihR%^yVp04x}K_y~@6?H7O)9XQ8#OCMf&KlgT(Ojn-L*X#OJl?z?4L0L_yP3)gu|5!#IJTDHN%e2S#S($iV-lxg0Az3kb*TpLbGvCte zhDaI{hug*^@BLpW*fDZuEU}4sgyU=8d<)(9BZMs=o9RTgj}$g9`X_9YkB^58(dElR zo$mX>BtvfM1uj`@?dN(YfANMEcSvsT;lVAt1V=ki5p3rj0uBRip1R5SFipq^(+-Eo zZxAhGOh0M{=x6zl^9G2j?QIN(iXceNY?F47j$ZsPbFa#BFT39VjMheH^Ion?&sUe* z+`ryS2)AlJ_Tl3r;v7V})sCJz(p;^DfV^~BKqMs5KE65EeHjHa+snU8yMw(E4C9-BFWLEFaCczh@BkJot0d(4ETLf>?Zp3XM#a?S`4M=`Cag>H0?-Ck#Kg_+F6H~_`~&XMUlx4ag* z)PV!^$&QgLhooZ@{!U&~GW=aRP_Y4edG>CUUO^))^i!|I!5(7%HJG;dmx6)s&4 z5?l^?%n(VDym*f+2w-4kAoG6_-1D#h3PX;Quu+gOl=~G1R$zg|zrSiFhKi~^hrNdU z>8wedy^h?=G0YTMO&CrXnGhVA%$z7h*8+ z1dje!DWT9#L@CdZQX!Kmv@8(BzNDR9;-Wmvy13_Al_;Sn_bcyAOkLxqkO3dzlZliG?O^C+$gId!dqfJ1k6>8O1v;S(Pz{j%DG|ay4YizmiHyX; zv`e_qpq)lo08(!^WGVs{8zD(H5eY%8J~Wm)zi8GgQHq^_jP&yI*DB>SJBPO#c)srq zUq*i{HjnbbgIuLnMgitLEPAXO7&w z*s#92^c7bm%tF7RKfIzPVC%7Z&Dh-YqelnAUM19WaI6yjdw=v(Ng$9g6fLgZYJ%V!7> z8kSC5i64(=k6?@SQ$Mo`hfl~t3hf~b7_{@@h&Zub6S9A_mFQ6LJF0cS3RJ@B$Xjeo zo7%A8XcEP`nyS_`#4E2W3& zSNn|-G=>KVg-%A$PgWa@RiBM(h@`#F9`dM4HFURNUS(6cRhJGF^|gFW0|E#*O4b$? zzjzig9428Zi`lrt5Q<48qgsP}wlXYEjEIPEMv~c`{+%H|dhs>S7<`Yfril`{M{5}3 zVc1cF=q|>Z$__A0z;)rX6ZNGQ*BXc#GK{jvL=WjC)f4>9ogyY6}eMw0b@ zR-6I9ir48yMSEywc1(_8a8g^}9(GC_wiKgV?ha?1*B6;8SZa*Fi`NfGi0LZlblHG>U3PK?%C>n*#bUsucfe) zHOtq(DtdH%y4;~}LOa{1d1h!Ssx>r(b0x~MGK<_TUPmd-GLKYFZAa#1JQm5c*U}Pj z)#fLb3>v7m-BXF)D9))n1}iDBUdlyKEEEEXf%WJyagE|Lru-WwxiTUL=+)UjGQTQI zw)9oM97b*<4NHo>C|&h0_9@KvH~Qx9vpv_;N>s|R_a8Egyat!BY4k1Qhs2;_t$!D; z`j=r0<}`ImN*XZysu~_gg|Y*sk0i5y)jV01Rfrix(_#)I*BMiXV-PR2yv5Hw-_7BB zUfe7AW^m*`A>y`P{ZE^n6<5JXTAXpmSPb!;N{hpvn*mg-W%JIDs$Pzz@6)ZnfTXPW zjPY_Sh`f!g8eKNYNP&Swm}@@K$Yda_ysYfEI(v*@IyMf!S%Dx%Fuj<@cO<4?JiQ+W zo~Ko`C6k9D{2~atFjb15&anBc@_C!9RzWe!7PytAQ{wqiMl*Ux0msTqaA>{SKe{lG z3XRvh`Bgy%%i(!-%I=z{yatYjX865N;D1CIjMUZw#mxZm$vBOF5fjNw`l+E=G#GFO z-eeUfWRJU_E>iywWAD@?S{H3wrfu8aY1`IL+qP|cr)}G|ZQHiZo2MQsZbW@ian|en z0c(!gM{n)A#hGVv=Fb(Ryuxvm(Dgr&Ea-PmegLeyorP zbe#FE+26NOcM#0)O26`F3o);~i~KSlhlOCi?Npc7L|m-#7Dm;Wt5?S_17s(CL@!6x5q*+a%G zra!_;*cQ_z^B}%*Wxj=`quZ}vlWASSo8V5FqrPW(Uru%~0wfBU3u!!53~2b@qqlb}4vHa`IdwP});W{<# z32d*|gg;L!@ZFS?17#%KVe(J|o*sWbjEb4kB@(LNi?Ws5^~xK|5GM7OOA6=v>3vEGD?=Q9oXovB77pzj`oW&Y?j zVPq`dnd$A!69#aB*>QNZVI^$#rc?dX|EQN1bDr*SJ%BDM*%)2HVxTlX})!u(~=O^J914I@yBgj^oPlO-}T4zs^g%B_4S zRe!pAfHM5`L4o*49U|R}aN3?JvO_H*!q3RB7RZ}^v?uMX^cCZlz4S6Q)vdAIMZL90 zlrv4O6a8$UzJR%Dm_&mTy6{7;6Tc0}C8Fb#rZCd0j zMR#?S_3XiRh!8mamN4ifL~_Ma0B^MAZ>GcmCJucPtb9o2@7X2f4# z&8#AojF+Ak+=Ta>7|XR=??eX`}0_XYQzkbf)RJdmW@doiPEG~9P-fGr3;TIlkWtoW@pFO zueL&9Dsz-NR7W~%h0o{b@@WFSIek%pWsE5vJ-FsIYZ7$G;%{lf-r65Bj7Jrtv_UX7 z1qvcYo(@E;klHB~nXRXz5$}#xd9A5EYt5?i?eF(mtBrE29R-mW?~ZELjF&ID8m*_J zcgkpXLoH;D!-n4$OCHq5L!?Q|PO|sXVh!9AR8I5RFz>eoeo2!Z^Q+u)zb;kLJ^s;|c{dHmY!- zPS$!C(WOGg;ppxg?e5G+gI1u+D^)IQF%qThRvN=$T{=U_)@^sKaD!4C7g3my5p{|Hgk=QMy+ZzxwWU$ z%BAns9Xc+y-g+G|Awl2Sw>;|!EX|kd8vVnATDhsH%uwQjzJtaiaa*N0>V^coW3clC z>y@0aMYgh~7mrEC{`%IDzR7v1UE@7waOen)_@RG^9^dO0ZSO^w(=by^wfwz_wSh~u zLUb^2%QDO{V!oAnT_q#PL~LOwtY_~}4<{YRdBOy%1W;NSstTeAXGjg-b-K;l-_z6) z6<;O>p|AcZG!Qd}<~^40_W@oJLL9yFtCwv#Jsf(WHXmYv&$fPxi@mmIjdRP=YRl)N;p*@g=&5@ykW zyOa#0x5@WbfTO}EMQbrsIV9K+V!vJ}LQ9WI@h}#(> zB>8}yfu>IdKUK}hEa`n^K3Ykh7Za6aRb+UUH57_mb#~IRT5z-3xBp7wQP|n8GCs#> z)}~=z^^|QTqo8f!E4t0MIHNv!S27{sd~#50iQ2AirZU>qRktkGs&~2?bfE7Z^xM35 z*!Ys1<&?-Edi8sB`p<)_KVRIeMDDeQz9Z@q*QeaN7ZAI@`|3Ldo z?bJAjC9JYSE2LCeTO$z|HNTtFUxKhcP~Lj>Y!`qxGxpU9M$;9hLN9ubTGZSTd2qVV z>#IwxDq1G!DNz1~KI7L}tIN=By(r>8rs#O%4wx}$ws#HlP;fTR%$jNzfv$5S-=tg-kM7raZ!%}p}eUqCL6j{t7XkLGaUd_bbGhVjGbmkf9r~Em=z3=!tRN=I*fRY52>AXU z28W2tM8xGFtEQEW3&5Q2%-hX!wDa(aWnl;FGO9qR`L_*jZLS|t`;l0+JYP{K9TBwT z602AK<>2E?p@+0vl@~h1eaa#vrN8}hxM3C8T0;_3?4`&|>_Tr5!ZXvoV!hu10qrnw zw9OP5bcLi*L4<#*1yfMy_1H_Fijt8530y zauazFI3M|#k83gJ5qaR&w&|-=t{MVn5K}o^gugx*<5X3bLLya+MXX_iawF%iR-iz*3nDr14^2=@s^eo$j z0WOs`&7ow+KEX@_Ll`@7JIE{3iodj1e`>u&Z1=hoK?zK)-9f=a>k#fs9^D@*bKG1$qcN$r10|Pb_?;Ma66JvKgHwd-oP10tPEK&Jjs6kg8xL z42{V4q{s`qnmY?>CEHfE1*0Qtk{v1rxS8u}Pb-}8a8&z%Uw%9biv4r8+QyMW>2LQ0 z7G!ZE9m5`Q+B`bMeYVNYe|i^osLILa!}>tMfU~R)LzStMdvR%jRPlWxPHnm}#E2L! zQaOm<6FwLsd#HhwK^(sHgNwwK|2Hb&`Cj7PXyD{!!sBb3sca_0?dWqH)X^qRrcJ~z zPZ|d2fi!h%K+u0@U39X^Rw09MprJ6&S{QTUHi+FAJ@@K>H(fkjvA01`C-1;{sdq}cYbZQ! z{_RZYY35q#9PG2cA2q0)sbXT9g#3Da8H{nifTNoOS?I#PfEIVQ)G?i}$ThR1+d8#? zw>M*CMa6v*4p6S(Pqq^&n2tW33Dd2=-0nuO6)DpTT|cj=xE-OTI(-5(1Q$CQjr}LP z`B;o;1*`ekmxEoO_k28;FPay2GHAun$pg8IKl%GNW5~(8Vq^@WDv`a<6{qQn{yKgn zsC(+dj|AG|$mrpn7gYlKg&kEw$xqH$N8(uE*#R!EMlE4Ni5(_80G1;&BwB+XVQT(^ zDsp!ddR(?k~T zCI&T}?c@@~@+!ITD*qjxoXJa3`4w`p!N%hY|HHBmZ;@>%*v;M)R7!gM7g<$xXNykHy%)Zc}qPFLAZdgA)-~)GJ6!B`}FoT*Hd+NR3(p1V!3Qy zMSUE-?JaYa?|T>6kgcnfKd#1Q7uv7ybcX2sg{e_DMk!DFC(+8y6V;CB^;5H>bt(tP zR5ssvLj~zC05l!t*tEVJ_T~h%ARdq6`&3S02*ZydqdS!oGRhwVCvNFcRQ=IxxjE6- z4PqA_hPz1UGIH_mNu5W6nuZP&p^9+|$oA3@j71`g4-*^YKVTf@1N8qnwy^w%W|M)1 z?SEaZn^KdqJzz!XK2d!&8ugpHC5+g&vB;%ijl9x_F6<`t&l7i|uB5^AFj}Gb#aeld zCgZF{v+DH4G8lBANgb3Jp?XPR93j zz3_8j@=SmGB~>;t3i}`cMW{a<)$rByc)f4YK8RSR{RKvmT%-Ox{~yVw>Z*NfH)#|= zIt-95w6qsBLY@`9K9G`Horv~QaJpE9pvahuPHDOLQlz9PvTWN+)JJ>7IknFE3%vJWVGM*(EU}8|k?2s_ojE)<9?|8E*ISD-Pt_JX+TE0WBcsV zw&siBHNb(p#xa$L)y2ORi^fR&rS45zrNeR$s~5Hn>wju1mgm@(=HLA|Y|a`jA1Uf; z)T@04Efli`r{k4ETg3b`+SH`Dw*3@1Lpjv!P8@ZtLbGPs3N%(U<8+T=bo4cCM6_V_D`|nG~BQtn9?6J=T1s8~oPk82EF;*X8EA7lUB#=*?ssFD~YS zK!K2&=IQcEpot%tSoS9`_^Ppj9-=Ku7z9U;bnmzWfpqX>jt!4DH_xnB!+^85O%_}) zE7|0rVpIYjCPNO`uo=8;hgx||R_xh!c1+#llkJsAVq&tqlT7G1GL3?%E|ghnY>-gJ zG~KpYNeeOQUvsTJl)~FUEFx_~r_xxq9kJnDm55&#W$jE75P~ngLcVUMY;?QXIJ69# z;Vyp1M+EsDzE)@F_I7Vq^j$zFihy8~7QthBswZ4ro44vdr!7*Ln+;I_I7)(DKzp9D z>kJ4$V@rfInj}k!z+?n_pu89gxDKS_dJhfwzS)HU4%{{iVIkWNO#i8E$}BrbvCW%t zPS>0{EIZ*m@Eh^sSoz5jokILUPf4-Cisf4Ut6#oTaw3R=NfBI4q@O5FHty%v$)Brz z0RO+cC$9O09i9zKEd4Ky8tZJv8lcv0%Gva3cK{3$?^fTpeb1UDGB0@|=(CEh0QuA$ zc?&PVr`aMs(=MiVf;6FWZ}$WRu{=AmZzH)$&ca0bf3dobw-J%Sd;bah1^w+H(tVJ` z&08R;;Kz9HiAHI};!W5_-)I!Lw5FH7DP{^ppbMF!Xt=Q}n}49Qqe4i47cPk!LvO(H zRJIY5N*SHix4D8@Oeq&XKy%3Ez|63rk2m4mp;8vEv!;7|OjyHk>C2zycf=kH5|*OT zE)Yc^tGv*lo@8Y~15O8MJn%=KJ%e6DU0-5J7_8~qT!zGD=ugE5uws=1DJV&DNq@Gp z$%*qGnr-Tl6oxH0?G6>5EE142?*uer}z{&TDDhfkSdCu{%H4 z3zeybCxTt=5WkrEE>Ljs?UYq6yMS<1wlrtHph$D0BgTzPVWzvRJ&N4oB;xU&pc)^a zN*_uOqf&8CTqWJb4toqokhfz<5eOY^LujhZI*eY~dzL7YD#_QOTvQ~c5VH$o zb=3lZ>P-SVw<^}25c1x-szAaKl34v>d0eI0Lhh5#z3Gzf?;}qCu}A|DALbT~6JA7k z_67{4wYGym-%{LNxIEYW4GZ@F^WVezAGK~K`v1LWu?0?(7Pecj0h9ekQkpR9Qxi&UQ>@HQD`HPxU+|8U5|Lp*qYGkdaE5()MS4> z9Ir*vHL0Oi()U-|T&sxIX;oY8rJ{K`H)wZ_Z9`41+}L!7q&cuIFc{-p?w@piU+>WA z^t=;EE4r}CKn`fh4~FkhkUM5RQeN2OASzQb(*! zXEp>>EG6l2qwB9vc{g>(E0`!ZpwV(&-pLr_udEv#UCTY~S$c|nrgHFs9tetX-oOpy zRcxzjx2UtPA5NO%o+RUD{f7H_HmpK!e=@AuyUooHOUf!0Alm^we`dy^I_5_uv+T&o8^yu0q9&~luX(Tna; zawJgDU8g3H;nbOD;Ds#+n)>X0$Z#m(uV3HM>BkNti0vG6hVtR@vRXeK6nkLkkiB!i zcvha2@>XN08d=OuAA^zf`3UD9*{-CUq9QCmu0W5=N1zG{A9>*k?1`@2F<5%!J&+R+5~?C07Pd;o<9LPnFXfYC1oOF*jOZA8$He@p4izwiIY*`xtY7 zl*Sm)O>x_81XoSxpkIC?+c>Z0z6^O8RNJt+$g{~HFGVcY+kF|6J>&%onrisL1@^0G*PV+B1?;czdFx8jEJc&19d)m+{kC^TT z&HuWeFZ3Hn-&%p;JIVj7QDAWb`a2eXOGIa}&^MJ$ClS;%r zQ{sRg!ZZ~*5s=dF--H?8DN`1Kc%=0Ccr>%(|9;>^e{kli0urQQ_!dVLtrxx+Q6@;; zizHHe7)iMcnN8gsnQ6ebJ!z-ya5XEHw4q@7F%g=I?{15cL%Wl|G_z&)~A;Jaz zIIO!lpVh#?j~6reeHYZ8n>GT%z1QRshWHcl%HGMIT}Q=Ow#yax?2wi0D#u?}*gw@H zLeB4P?{|Q_D+6b3C)TgV+@{s>iWuP2QV6u~cZUECYvFV_ihLO@ZFC(y0+K%;q@S zZFSuo!_xz5I__>!YVSCBNU2pvZ>O=znjuFvR4rJ78_vL-w60Hom*x@ufUS7JP-^o@ z<$(D^VkmYMc{b?;T>2_8p$CG4bh9AqKrIG!WSu3khhyk}L!YT0DHG%qnDC$V#pfU* zW+u=cYASGWG+I#55<)0^U-zJQLqd!nW#bEJ@fpm{i4M3OPaWhB(U=qinQyoWW!&s4z`vD{S5;0DWnT-j0L4qiHFF;YV0K^^td#|Y@ zqY!p*gPvK93P_08IajGCID~fNpd-p(i>07r94Db^bZk7wBiU6V)}KNx>2vA^BzZK&`;nI1gM> z-@0ewHT99kCVle9s&;twK84$sI2JFW<=r})+}!Py#58?BgSHGAG0lSX+MA1wEklfA zvUE^f{WMv+r4beki8iiXMD7h)Q4i{Wqkh!60CSY!xZ}N2PmB+-M`^#tGMH1%avTFV zexck;UW8`K@PUmoeIubi<_2@1XbdvEU;x7rM9U4SJ=D#j1dz}Q>9$&p&Uy=M6vNA8 z5qrhFMTIN<^i?Ma*C?)n#FJuY}JQTL63O!79$kx@T=76QF;9)EZs z3je|*@1Vds^VT+Xb#3QR>C>{umPV!y2TgDY0N=2$w6q!>0arotW|15?H_*wXz(wmI zubt@yi9M?uvY65yoZ?hByJlRi7x3PDrP+WOy+Rv(KfHsR4ouw2wX=kXoX-#msfMsY zowZQQ=2%fzP1>#w3TBS>NVoAy_3o%ZXxoMJS3!zR>SuBg{Nu5x=7}-AsPZ)KX+bNa zyPeYHvxLkwOPvbTwv%Kg)u&0{ffA>KD35sq`&uLOU+&Te;bz3*8A&9mH!3h5q~3+q z9dk7SO22`4>DR7kcNu(DCJ70}S1*y_lAq{Vp3HY3olyJA5mA@!^<{IGDK`Bd)ioW>2zCBl%0uDk0+&xH+gTw74lAMR# zrdRUKtI(EI%Ik5qNSnn;!bk|!@JJrTOI)aIQjs~^8(d$?n>{g4Le!@~>~8{vD4^GTBKR2~XrBw_us29%DGn&uWJ45NKotXZ za;ZC^NT0P&+4Va6TpD&&wUe9eMFa1hbtA4Mo$U8h!|>k)zqr{c@Chx4?3PlqAj(x%Zbpg@^L zVjz!hEE#AeIrcdvQcnwfi?j9;7H3LA^!UAw7-KP;B`D)zpI>%hzN!RuE#f>Pi{T!L z1btpY5}{&rQaL$j1(APBxH0ZXK%da%9&>eJBd763Ec^8fS0{Yfr(9JqmIiZzs&%Uf zMeWm`m!_&GVw)!KEf~q$Ky8AmM@@)!q;83FmHQj$0)hQX5wyP$6h*l~O&iTh8ZQ>R z`GE|^c+^+T)dxXAp6?tw3bktesgV?;=;}&0ahXP_L8m%Xvd-2sndcwtucK#0-~c$u zr@qJw(FNpzA&7b?OneAU+<-TrB((fvwvp`3H_sQFgpnNi>l+J;W4zUE2gFaecf&i% zVZ8D9nep}^xyrQV5IkhP3kbc$76j4TWECxxqLcK-kbacMus9w9ihiK{wIF8QE%*$G zz#;IsNE+ZyINTThy?-{YyACT|MxCYU#SqeY!2~EX&E?6s>>YS_JW#l;%j{YAA-rTk zd1TIo=pq$nLn=&xn3MO*lFfoO;&Fp>xe>gN+`@CyA=42oR~gf~F8mabNVXwGpte2b zPyf2ysmZPF0M2dqt6%A?9o|z&s;!~YbhfxZ_}~|>`Tui5VEZo@4Lkk+8oEBDvGw~p zh2*=_)Bl$Td(}=P;(fds)Fbjb&-)b6+K<;NlE3auttBE6`N-%6&eiv0$}S}Sbkv2F z#*Pk=FO-RInmo(Qz9S6H*YjzmLe+Mg+(JH#Ncn8vqC>nXY+pp>kVxLazDeCn?YkJM z?fvUqObzp|%CTSxhn&5o&+E~RtF3rN4QJPBGXksYQFs{$jeYd45{hge(v=~#%5^ywz)YcadO{K@h zn2n5SI!n%c%OmdbRrTd$2G%;hQLW@p!0U_Yo-1^${{JA5Zqx98Nl?XZ~rVbRk zg&GMmj%MR(lq|O?7RU}pK0IkuQKZyr1FN(gM$gPfpS+Qu%HnZrTdSJ(k$^c0R?sjb zcz8=Zzj0CB6^zVn4tCnhWSsl&6aqAmPj)!P!#1VnF-Q@uO0&+IEUim1)*{N&aQ#@hp( zd62G6Hg@Ic^(0#> zASl$a3@}E|4&Aad%aE{My{S&!<;nL%$HfoBbqcA_up0Oyl&wSGlA^^4Z!PIJflmq_ z*clJ4=p)QCus7ygT>BofonD1Yl_(GU7`eSWLOW-*GO8^*7U~$I3A-dC?LG{bZs62h z6Sa^t0X$kPh=!g)JUPciKqTDldSzC8n5S4U`n8RxU_x^P(!}Fot`Vha_7<_;%F`9c zDDt79o}MLOzz)3jg%h~Fb#~dS$xXk^z=HiJffH``W_iOy8@8hi1x9%|%ay(fEqx^R z?1?~dM7yRJiw8gGpEFl@uOkMi$@r?qmC(rS)G;g8TLpSC+A*rs8?wD?pfAw~2$8_xE)* zH=~xpok9{v=j1+urE5s=~?R9#p4a$E~r!ut+J|Vfk)vYAVk>#eZfWOJ~&hs zGlf)qFkHl{b2-Y)`CZU&@NfTq%oVLE4Of;euGy_DfCjvL?A31ZZ(d(yucMHMO6aD; zaDYq`FnN6@cPF1|J~v%J1)`aoHCK``m#_dBBAyVffa=#VxNIrE7)mbKz*8H;j`3y) zP2~A@*e)Ny;bR!m7G4S*X1oSVbn#j8^NOV%GY)l*k8`6)QpSl^*5BmnIkF(Cw)oAW zIoD&Jo3WtO)DB;-SQ=JoDy(RIs1Gz~c^9GJu`S}+$k~HJ8INV6bcvw1130B zG?#r3DN)+&K{?r9Zpc+%Cxd=sW|Aig0X3fp2FosSh;k&C6)d{lybdDdgXr_gcy;3L zg*Ac$!mV9Hf?#Z>;#Eg5Gu$g{7lL1e4R8EIl2k@a(H}qyDB3xn4N*qZ=8v)L{Ut$8 z{P~Lt7!sAv3Ac1B9fGqCv2-xqt91fO6Tz>beMm&3wpe_1J?`<|KNt=>uDc9F`0kl< z@zGLnAaaS(=G_h>)2_^l+O4u`cdZe#W8NFEGWUM=2df}z40waEr#fmz&-fJFAkHNA z_^@nrm7KRqi;T58rJ%}JUYia%u9P_{j4_?zlsvt>LHsmehtfyCr4pzpnAX5@u*%Jw zC@nz(N<9sR(gDrY9n!?-3jlFKE9HyDecke*?ELQoMunibcn)y-_cBVV49_r3@Yn)? zWzWGXhF+;?lY-%?yjJqFvW)i4Oin&1q-6jc@>}o5$-^OuTW=jfibz4Al3x_<@Zrew zmQSn27$88T?2Ancv{+ZeOX82gZxZXdR{_+GXA44zU66Kg_fd^A!)yA-E@7lf#KFZ0 z;hMnTRh=o==V6AYTcz&!K7-r{$%}MP`K^^TrTQZ(PS-oS%r~1{pFQDT{TyG6Xc#3& zLC{NBo464pTsfV+Lxs{)%*yR1%(}BeZ$9}~^%CF88t#8cKSU{~ZI3f=EKU}0F?FbO z+ABBbcN&@&+YD)7Usz68S2ts(@2Gh41n{9F;Htr)fYdY!q$Xu1;+~Sau@|6mdd6k zY+FSe!{C!q!dXuGoE_U#T*oc;Sv(=LmLlDv^}u-2w0T2q-9(Aa=cNHmqG3!F;ZB+g zPA?f8{g(9cMfF!pO$Ag(-Q88Uqa|;&Y~N$YIb@Tdib9*fi4B~`j{54`MJ#KNVf~#K zOu`i%^t*S@>2nac8_YN&K9;L}%F-jNwX>6jCx7o^_5iEgnT!zv7O-xCe^?TQD96>7 zVj4HUwk0aCEaZ{g$<015@6q&Xb3;PHr>_a8SilPW(EF;d#+EkY&Q>{7!0PmE@I?Mm zF4d9oqBIOsQMGL_CEHBlT6YxYT>fP;?(o%t)$~HHX3S~z<>MB(bTEewO5(@`<_PFr zHP~24Rth)FEi8!QCE79tr?U;PD`3xEyX?3H5CSYdKp-D^ecjKn`DOYODQP!GWbw77V_DEl6{c@YqOT`EABCWA zMJs7dIAnkloJ}6Ge*8 zo%7n3&cVf>cmQ}mD15n(i1(w>i6Qg(&Cdun7cME$;H=^zNdgoqUqQqEFmg7bE9`fE zAhTPMnUD1Fd*SMF8B#v@Z&z7${w}5FUIiL1AHZ5jG#Tb77trC`V_4pQyL4I2?bg@Q z3p2RrQ$Qp8O)sa!>(?16fbQAHQvN*L`*~HX9+!shd`HRfBChU1TSC+Y?id})`N@yW zLp5^WBWwEeEnr#fuAMCCOhpxd9BLMWNmBL~eBPFjG7EY=sZ_`iSJ9XWeB2+(ug<3fi zXlnI+K>@{gE^N$DgcHUwmN*6HM;2|F-KG z**X5#82KR$nV1cBq^{qP7o`=QVZc^_XANMDfGL${5-6)%1}wy&Vnbs!SuB3xOnvhE zxr(R^zTCJii`s=QoHTBT=whittp4oMN7R(B>viKQa)pnIS4up;EqiNws_}OiK3?;ZZ|_s0s8>_0$ah&)xe8{Eau0xyKaA${?A ze7Nmb(dbII%u_5Lue=Dnaot44<h}*hK3*Qj1K*3tvvU&eIsPVlBt3#D ziM~sJm0sJ+`Id`jrL2eM(viLLNAd_&MKUGp--~>&1^1V7TT1pp>N@W5e_xnY)-A*7 z)65bu)PHChCIwovRB{;L_pj)9ft3PA*Gq*^K(N@aqH0+}#NooTEK5_I6|0EsPu0qf{jGiTC0 z$tgupKg)^udPekJbMJn!^^)5Y)7ZwxC9{kBBLDmfyRiJl)jw#1#jfcO%yes? z?d;&b-0C0oGt{vI9qZZIzbBN|d%Tfu;WeC{NlAnQVMV-WhX)r6UnmaHEO@ltA|i&9 zVVPIq$9pK6oOz^qPhB9+Bmxp8!a4(iLJ%IC2meT60IL){_e2_A@wFrL{?w+rpY>GL zX*W?l2m#bv-mVFGUEJUKzxEl%&-NqIjKYbul9~m#Kvz6X|eX&0DxSHLmnd*KKqZ|YIPWkU$SY7Gz9y*(@ zYu+b9H4ixM@qC(w9IZdC9d6uSokk90jSqcq(||>)2K>=2a;3du$_bHqbAac0AS5(2 z7A8bTCja-HvtQ6eVkouJjkr3I{B%J05c6~Y^Yu1RO3P8ANIz5*Mkx+b`yxVS#9BKV zfGjFhk?|*3KhW2Q4+wc*$eAaeOu>&66?Ui{Gnxb-^ew$vx#=zdOt5*PzTJ2eafIMG z`L6ijW57SnRkeRQuVcW_-8jF2F6Nlp=HvJsA{nMv$WKDV4P@i{KKy;BS(ke zMMu39J*NdwS5Q=d-yB}U6~zKtjwDC}6T!3-9uSe8;`xy=ahM)M=%@oskz9YZVH3y> z@?Kw^%?~WO6nr_r;IF1G?XYTLAh5%sI7Z(>@+x&D5_OmX1*#XPubs!}P`!;DE6HrN z4Im}9KIO2Vt`Ru1}%nR$(0K3wHSE?|F8mPjSDB^OmL9k zz$(8Ms=k5`b7XZDUrr~`xUTJwF;hO^FU)LQpzn=S9Nvw8K_MS?#n&*1pNMrj@kLp9GAV&7~0Qo zmd1?rBzc422;9KfoU|Beeu;3B>yX{Cn{;=AgAd2>?rO9CGP9CFtkIUV5Uf9*tGu-9 zlU8zHO4cwIbjwO;js?8Rp6W_oe3ummN>j#zg3+wO)?UHCp+8rC7> z6hitGmDJ4oHdttWCIs^A!C$qH$KO236L_(;X^QVoOSVdvt9+%2+;^rlUUd%p_J zizZBaI}+xzM{rHBkVcqN-RiQ5@j=M>EoW9>(h-jq*A*FIK-6&RkuZO1euNxgCd~gP zIwPAV%mOvveFn7KcpOsvi=cTdAo`G(X9!Y8M}3=;HwRO1X|lSpW)lN@L-B?*4@0Q? z=t3zye|mbVe%;3tti(Y{CtmJZ%;>Zbw=l>;3G;}90mCxPl?CQEUfIPLhL|a=^LFSX z%jHe}P~MMh>5sq2>3Q_`@%3VMlNun>7 z1k!A>Bg~B7U5zl5;pCg6EZ=liQ5w1nUcV;mm?8U*jYGXZ@q zKE}L)*X^kB_YR~fSJjC7zKrFjgF1*5h?N&OCD1jL@r6k1Q8Aj4_uy1UI_@isFU2p}^m=gq!H0^+=ZN9TV1-e4ut*oCR#* zK;IbXx%a%D8AcxYZ^810VAZ-}{9UZP07|DhobqrWNIlJ->1qn_7b6z}o~zidH+Sd# zqesq?)XzEB(DgK_C4zWcl|on_}ACfB{yEF zthLn=R>wSg=!y!AF_z(tslT>>kuR!EyZ!}EuO0Lz-?$Ixn)w{N%9x5tHnkGxbIrsv zD(L3oCOitP{=ecpwHQE^3V1#m>&@iyO?c29 zVPkGqoh!wv9HtZTK30JRBnlzcIS6z5MzmO%i{#US!jofDsq7E#xagX};=Q8`7z9#3 zzf4Rm@^|Od7@v1RQHoJh9>YMz5H-?l4XE{S zQ^k1b^g_e01F;Rt*!Vjm0>40oz$hgk`Q+*0qibTUo@fd|-KWTb_>{eQrtfrX)w827 z=*W6tmlswiPgkR9v_E59cvT*HIX$&ovH)@WHVL+fWUa=`ui8ALwW$dCCpC&I#fD)E zuM2uF9?^Jt+gB8Yjn`A5B?0_aCiP!%e9<(nHq`6dl|y!-j&I_V^^z(C`tVInH%``K zU;}UQv=x4aWBL4*qgEK<0t76S4(<6XXHmKC5Pi*>Dx@4aK;tv3;t>Pz& z-uUlgGlvOQ`ygHiD(>!{05PIlGwV;cKLAJX?MoW1v|Z2}8OK2{hedZBhHP|nZ2rFP zFN2e_@oRhzZ3fi1c(;f;d{?H8PZ$a6_D&|1iX8!$w zJ4Q@H>2T3{m8|a$L9Hlu-+kkXzOeRznbpPl_V#&rCpBbBDPf2=Gfih&_dngSbcEmT z7MB2fXJW~GLpFQz3aRx1uKEjD^TY)g5&0wzH zGN+Y?`|1jjAzb8=<#r*HTpnDIy5Z^Fq#Hp{*jklM#4_7>u?ni?)xLUvG%Unwu!|Ve zl%!}rXH9w&3QcJeIWdU~89qgx%XE&)G6JW^MLl%IMEM%8y1oadf~&iJ+7UY}gJ?n? z%n)FaC#z1~5XBmAS|e2o}{i>6(HsDd2rUT41 zb+dS?1iY;2zIfIhWELzleG$`$(TqRgDGB|0V;1`OtHlD)Psw)N)VvG=T&XzK%aqI7+sB51HgyM(P+6^Mc+*;a!lHd6auo#i2=fTDQN)L-iKYg2Yo0)&p z9X-2wI;rVF%+X-f-nA~)2xzegzG>D-Fad!BMiy5k^{^Lep*6^)P>EAxolaQ?s|Yvy zAUbm8uoNd$`5kCsUL?cW*i${g*ybV{vKMD8I|!Ur+dnvF(*3P9{=JgbiJLKkluS{u z?Xz4>lI&qKdPcPX{mVZ@O%FBhtTcf7u&aUQpxJ!@hiqxkZh%uP zl=e5GQK<64bfbn%m#*wd2uc!E1|+`)NI(h+ z{`xH3dNAVd)W8Hsbq<&-)Xzvw>N~5O>M1JY)n>(dRNE7ZvQFFvUJvd%phd!@UacjS zqTKGTERm^Lll7o=CRN}DQ|-WYzy?PGmF_<@0+r}Gf>24hj%HN~3o{rT>|9Xe+W~OG z4o6!z2wG*|Pt2ZwqK#o%gJbsnc4qoVT_Cd`I#5NQsQpJk1C`3=3#NHJonDZ0vUxn7ixgk* z(s4Kk)7YOkh(KuJsA`eCBn7j$%X^Cj;o#j4O1R<;K8VsFdAeNN5B^FS<{yS-9Y5gM zLG1zXyz9l_{`3~Pac$*st38GTC)Z5aDBE(iz!m)>=slYoY=o!!Z^5@yR8>WE`mq5J z!hw2Q{W=QRq!c|>?GS-6lp3cg{Z{JQg9%2g@E69jjUM z>}1(tO%st8bzqH8XR4(g&uX%^rc=YBG4NnL#&GKD53ft;Yn})xf?1fS8qi_8>!PKq z>P=>&%eAc57P7|L_iEQ3(%=fib?+IrMX-QBXz94P)cfE`Qeyv}YvTV0Ascs%`qZtJ?-6RzP!$Vafw^+W z_?C=ibSTu-OaIoyjP%hekjI#1pOT$wOTgJ}(;0yunG>R84(NlBMQ{cClt*mN zvj=$h1#apMZfS+1`D01d1n&K*2lzTy*xLBNs{!GG-r$dt9#n28G};RvnUB~b-cWc? zaC7A%?;8T*4Xd_ifsAKDj#BU2CDt}_;u)ACe{Dy!-IsY)Ct)Jlj9j{0^Bej$=^MUc z@t>DeL7cLdpQFS2Kh><3tM^WAA?X;zqSZ+e2Vt47UVTV&=~0vT&R-3k2Uc z(euhyrN#)=}4J~<6c{ie4^6q{z0aZ+iy@4tnK+#Ilz6z zC#6t88iij8??l&KIiv(tSaz}KCin90xp9Q>%>*`DO-{D8G~n^i#SR2TWfdNg*cm|A zH6FLUO?|J=>%vxT%q7*Ek~&-(!VQyqH2@0Z!!_@6EwBD^=`c=ZWlasJq=njOu|T&# zp}0e>m~WD3UqP2>DQhlUG?Q+-afhRHRcaZKog|6>XY|o$#Obvs z{t=e72IUn#l`&!|x5ED)#?EOwv$pNFv2EL`xZ+f7+qP}nwr$%sE4FPtG5%_6Yi+z6 z-$~3iX1~YP$8jM#CTG`u51UoKYM8np#oDDIfNhyUbDZZYP(mXNJX?@qqpKlUdq#F% zlo&ToG(^27%G`y87$&r!fiaZ0YnkyRVF4YBcam|SM{x`;FqA!;3XKfsUHLHP~lAQ`%Y2?h_5iWe2K%gnIT~J@KI-nw-G-WK`yvD^@ ztW5PC$Dpi~eHe#T>IIWsh}W1X6-~MNmo)vEZA`tmPfR*ok0nc9wLTrLRw%t{6QA|p z{1_edEJP(SBWUvD0!?BBqq{Dm%FZ<+L&2v7dB=+wsOiL#xsVVv?0YpODidq*5_!w> z+z?7B+-)Q>HiJDeCKop(4V z)-fL)4qe(`n(-{wP7OwUivF5X(qMz|6a$dKfk>0Q8iRT+Ll8?_<65zHZL9n=bB@3JKPB2icBN^@JR!$!X*OmNF^M#x3TzNP_j?j+UC%-H zPk`<(UQeIXF;q`Bv9kN%{Ia977NweR@lG${c-FD9ZT^5@>id~Lf4F!^&Fqr7c`$G< z>Mb50k4L)HHZSdQ*!h2+n5}i~{Q3~0I_iF29HRWPzgl_MKcN=ePFL0N!9K1iv-Dck zF!LC8ZR%Xd*KmItz5rkAh?sq0N-q)YG1yF2f`2z~r`=s647iXc&+fk7-oQtBw*`8$ z*ol5b3q>Y%I!*L${Te+0=hrTN-ya{3Ke^Vv?d_i~Uh6jEcI_XzA4u>Z=W43gdb}1ZOq3e%cmAb)`Uzl~jKwRJD)be(83vNH69>+NkPUmh$RH_q_ z3xSN=SJWHq263X)_^ptE-bI|A=@!PVHk=O&;IjNLe<-wc~D^rPNt3sbujZJ z6P_0&^pW|E>pg$AC>O0Opsg$2Ow_`lnk#BV7ZGWdCS$*X;V@TBqij0(b1Bc#U};dK zuxvqC=P6PgbyvvH7#Zg}Ly*V51HwHKB?D=mPd)Mc?TByaId+892{*YhXZ0f5r^S%c zEWn3nJcDXG=oEFxw2HwqIBOyY6AQW1Xha;Cm9(6{g~m~8U0JK@=5~D7L>*=8NxGYZ zp*@&{ouas`pvnMn1<@e^g{UoOpBa&&losJibnV-R$U1*XO@THNTqmGCVxXK!V$NaD ze#meSFDc1fi^4mEWKjU4`XUl^E|bw;dsus|Lctw@O=VjN^_~M3 zJQdN6@{_BFC)>^s>}&W3S49qh`*!NF^vdc1We))<-T6e!<|A-=ll_LqJ9Q5ff+}s& z4-G%DMP+}&iQK4C3(?Y7k^b1y{b)?31T*qRTdlsp_JVhg;%$-Iyv)n2{FQaH+FePs z{nO)j-MFvPi_k0DRED`x0Lwq0SY9aecdKgdh!B3Mfbvp>JwoVXPt1k%dkE6IwG=lU z@IyRH7+(B7Om1T1G}pM>>TuoMoyr{Yg^kn1h&2sh<}a}5hOTi5SAs5tvN=eW3|1FOC?M|&>SYniP`HXSd zme|qL7Tf8_GP!V$EOm=_i#LjQS`MzFeT5W~+(+1#n?o@Su>^rFd!1WEw9=?y^ovc^ z3v$Ql+xL@wKcg@z_qMPdbR34^`U^j_mG~+J2#HiM{RLBkU;$InUF3y^AYKD!ooenY z9Hn@pHHi{^s@V>bCq`o@j`;rGtZTqSa$S+(2;buGl-uuHppbzg@>>p03MlV`gB;Vg z&Mw!Z-!S;91ONl9N)V)C`ctrzlyGL~*Ni_rm8jFwz z)>UB~RIz9%2a5ywf*zx9lBA} zmrIeK5h;{zDNhPKt*)0@0O2Pr*+~5w*Kf+V4+Fe*1-srB&YP6r>gj&^A0DxBB^=#B z4N5Iv#?08@)(4>SHKiQ~X+Tybr-@4P$V9+bj!@ZBxSfp(PDJ6cUcE~Cz?Md_-}Hf{Tb~P^WYC z`v?e`_@~w}CCN!Iyq#Y90g)3b zm{!PR+dHrle!o3dA>Qs1XUvl_4=86Idk}p}7-y?DVh&FMSucnC61PitEHr_y)`QG; zZa;6X5V@tsm0L)b1F;*6nh`af7?z@UD-(U-P_XNrz?LTYWti~m*{4#*nfS#O-SnEz zOvatEo=5HMEjE@r_$Li*t^keDcpGRuppUg}dakF*Z0{Q#Qetke;;b>8_8;`xT$o-$ zv)dS%@h8(RzN_Vh!$~%9Tikx8@_pZdun%ZtmN6@4vcUp3?M2pn%~Z>CK`rlcyJ&zT zA9r|cM)H*0&7PaZ6i$D!b4sMvC-iP>PI!%B?Vtl-AZ5+)W2bs?d*HxyqZpquLlaU) z;Qa|@Cc7FLXy&k-S*f6U3u5Vtpk-xaX< zxL@9b9hxYpnD}6VIr7(&$aKQbf;aO{yGet5f69K^ssDNga{s%F>D$~?3dN2xi>|Mb zS&jS$RuafJdC0%C;|ZaoiBl}AtQ=XylxBu)E}M1}doLH3Mv=yw)nHL~+R!NhZpF~N zRtG8JWl_JjI_Y z(+Vgi{4FoiP=I07L-H+GzX~F)I%@~Pnb|e#0WnCAPzrbC<{tQ}<3>6pcYD9O6h1h> z(x$CaDBCLGO6xh|M3EDVca@4x@bKi!GzCHv8;?AP(G~*Q=&nsJnA*RHBEmsIoQqAG zDV40m@~(d_$^R%{WrUXmTk(N9%KeBLDkXP%j4(G{F4(E5d2$pJi|2LCAp^iq7_-0s zXD-$Is*TQ~-|!pM-5g&O;$PPZev+L;Pgw7jArMp*Q)D&84e;;ggh{;Zz6!(kxqu#g zj@S_%#_c&v9{R|EMkBuyYMtCw8+-sI5;D(w6LtJA4LWuVB@dcP2iG-We8--Fo$leX zO7??zYKM*}YTiMDvO~P`RSlMy3M0jdWCG7lnpD--2Wlguf5C#c;UjyVfoh^Oh275H zt&M_m)XOp-F0%?%k`pJ0ro_AC$DS6WX;E@6 zdC-)`Q@k6gTqFBgCE{mAo@4o0U~ni4CvSvl>(DgnAonw$FO3U4*E~SC-khAgS#= zgJYNBUz>UUMQOk0WO&pka-K&I`i8@vdvQfLJ~c96w(bG`oKp!$OEfv{ntB7Vct1bV z*bon>i!6yW6{XKnfei7Mf||e7n+60=X57U2Yho+Fdll*w&b`3>1=`o!D5qf}1L<$k zz@;nu)@%4Bv^Pk^JO-NRIf;0U(fR;_Y|r%9k=AkQ$B*y5B-QU3ij zx9sJdlYU%9b^ftTRvUYW-6WY*Ewb+(+eax*m1p<~jVmHTi)y6&NGq+7e~qBy2^Q3r2{Y_0l&g!wsW!7L!-=)XCxB?@;9YTFm(hSTQvgNagYOPRh5J|qVbNcU@R8%()EiiSz zXN5)qY&G?p1bxZAEUi}FYq`gJPKlmVHPUU?QmgrZ8HB!;$rdhxMWYT9Ir6z&bt!z| zAg8~?7bfqi@!3>CoOmwkOB|lJ^-O84MLRmOF0ldy+F{ur2)K7sJA^w?o`&f1xR^pL z5QZW@E`tkjcnTAgF12p(H$f{d=2%XvVa=g;i5;%Rm$E^$=~|1UVsC?OVR=h5rosC) za~$uLW#?@-tu-oj&>JzETC6k0FkN1wz8LQ=s1v-&GZTD9~6YV~kv;e=@+zW(*PdW8dRf);!uJ1c_iB8@b2AL3%3E zj}`i3Lk#rwD4v5OnCQg&>+9RZ+T5>AciH!=1_ltS-t1G*XMD56s3@;wPK8*QQ7TOE375Qp)B4pb!t)kXfpx?=ZUxcAQ zemJ!XL9${DIzmjf`%j#~PBbnA_nv-V2YsYlQ{exZH<>yAqcO+G$@0IVtYggy$4ybB zo=aML$MIy&(JN3L1DxMBQ(Jloc^w{F=FTcRl=0!zf z3bbg$&Cl1%xjJ9(j~=U0<1%bgkP5O2Twndj(b9E|tJS*;{8B7YsbKxmp=gEJ^7y~e zlIepkUF#}cf_>?;9Q#S1s+bljn05T4JkNTcWriw)Qdb169p7FBc2#zskNBOvo|FgT z`NE1OX#t#ykwYoO)8SeWu|1@o7^C78WSPjpM!PrHW9f>#$L@{glW+aniOyd(6u}Z; zB+;IJW5Vqg@31ILBhRXDzZ)I3o%F|<4e!R3=w+*1sN#hEBN+(9H0v3dX ziwi)(3V9>?#gS55QGnmm?da|6dp|m3wELWP2iGi1kcyAV&O%pu0$k1*Eo}2Tk7FdL zL4W!v<7;-^fNdMi1w=vwT1>^8dqHtvYz~K?cJVRl{D%hwI+CPd*ym3;a?{-n(EebY zmCo-xzXcWEh8T`$4$yZw_k*myvsV5-_xqD?J~xlnD**E^kgr?_9Xd2!w6O)dJQyC3 zQ774iM4ryAKV`ch0$0xxjETYj=E=utedd(0TCoElzfKmhjocq<$R&9+E*uq%R~IwZ z$!nm(DJ#6H+vGU^{?aj;tF$lr-DXvX#s~$o%T)DQo^lTGu!L;*1@pDaK)VIzuDH|r z=8uJm?SGxuJo#YLQ#gH5G01zo3BYtqvw@7V54IzXg`5TF5du;7qNR1cfbId(?8N04 zH23nq_KWNJ?P&z@IQzir*R;tneF3T=VtB`GvjB640fQw*G7vOa_uE^OKMT z!>P5pU*{5B;_kN_c{E)mQdO{coK{holokVaKTiWUUq!OWkP(Uk9zO>EpqZZ{f4h{# zxwbejnO}g7h4DD^M}jecDuJ@oJNkqnRt2YiZFV8Ad|{0xj0l?&R6NQ->-!N{GaAHM zKMihA6Qs6*gCWXl`W(n60HdIoIJRrvHjcxN>Jm!5Ad=abn$qt~1fa5R=!!lppq>aD zkKwQ|yON;d7RJh{|L2aN%r!A6^D$OES2-+7f%(JV5?VbTNw}PgU`TNHOwbOK?U(aG zeCmJ<{U(Asy_?rMp(~{=DeF;ZPa=0;s_AK-RSs{pI<|$sM+Z#sYzj9K)hBzR2XUe;pH3yPp zo~Br9tgU|7Gc773r@lNuuZAW0Uvd7_>bJB03V8V3#rnm}5y9%d*lLza11x74wn#P)f8SXa3vvsHFa0k$yi4su<4%U%46>NLTuHtmy7UUcjkf7h6JdZ9%kZe=#x$qp&9z!hBR-kK8vE^pP55xn9|24@o; zcy;NXpr3Q-sG}!vu>2v$AkIh69Sk6tT5Q#|Hj1Svrc z5{k;kAxoE0gM8;mL1Q{$Twt-o?T8Kl830O})7P$Gghzl=8t1ML#JMH_85FokXIYwTQpaW745% zb*av!VkCBZbsW5}b05VwmX}=1WYU5dlSi^-W6#3*u{ig(>l{V(@q8>UH>L55w=xc+ zRjX@n)4>S*;~k=?6K4mOJ+J9s!(=_L&H%Oa2}%|=(+`6P=# zbYWanif<~`x$9=Ljx^#=pEpnz)XtJ|PGn8`RP6yt-Q;ZacF}}iFotNWwzdhVqJTi; z%qB*q6KNC(KZ|BOa|P*Cg~a(l`c%|~tgrgp%1d9WFdsjUb(Q0HSOy$uaVHTtT=XhC zhScmw>ow)qdArG4%}uie4PD>%f8LtLWggN5_b76cX!DW%0wU>fJLT-3+ekz}t>uf5 zqzecc=VuY@s8b=U4i#~Dsii~9V=Izm5&hNBOs@vK%jRAdTfo<*O1-Yq@3zd44Y*9YocdxEql1!XT)A&Y z)qs(>WuAq=H7rj*${?hvJv8qW+r`iooyCxc!@*V_}Z|RekxUie%|XV62SD_N)F?qKj5hl zCEb;*D?5j<$T?FQ@L|{dwWZM^N%qi~>3R5;f^@(PTfkNE5j+zB!p5N)P^qqpn{TKU z&_`Icjr<2`E-p$pZ9|SGM!+cYZF=ieoV`jUko&|nWMF(9N=3bbOoIkdBoL^;3JlUD zj7!b4hI>buV;D*HI4~?tSijAgs!ELWkD>Dpv#C;zowbuH@aWQr!XvObWSr;0hVQ#f z!Lwi^;;I@4AdBIO>~j$eTIJ?nfo1Vc8@;%dU3$2KuU=(VZ|*91T6|y@s8JiHEUA@Q~A9NnOUd|_c$shc?deu)X5G@$<%pKff^=&ZgN*_pT=9Qs?R|Z}R8yW-K%0NN0e-{JeZxwR!M6Q7< zqa*2Tu824Ft8!iG^iAWkGnQZ7>>$Ly3>E|S!oR!&3xjE7vOqi~A<=7Vw_fb@34XM7 z%wF#E)Pth_v(CE-SjNCF@!R*Y=8x9v+mjEB;r~O(9nP98Pp^_}HJu51uGN9^Sy`;cpx=PKR-TMGrpq z1Y8sr9*i0OPn4`bI@=iq!zLZZLcs)W2ONUNo-E1F5e&Ynayu`)xvrx~yhV4p;@I2v zqap1p%mLe+^P;S5#^w7*YZ=mr61Axmxt!Do0BeMh~%x#(2R$2va(E2hCx z#_+vO4LS#9EYr$KjQ$&`6P(v1w#1m(>kH>+CwcQbI$!=y5H2IV#EQm0AGmMZbzZa4qs{9z1hZSiu_ej*N@W{xX7 z)S#%hApG7Nq&)3cMX+4nNTc^=C#dWi1g*Mz1=43S@?+*p7R~+gKbAq$E_~Vlog;26={qil9!W$opJin9; zG?6S#H$D*bmtBab2%7@wrN9|u$9Zqk!!4HKrcW3HsRcDS!ZKa(=V|4FXv&N5mU3HZ z1m>6j9qQ;BeI;2g;Ed}VWpN!h?`?+qQA!IAaI;AV7>)#@Z0a|r^e1lM$nP&f%sct1 z)zV16ebtYK`Elc7lit?;K;HL_K(7*U%SrZ2Rf1QA<1A zVE)Eyh?uJ`9pSn}q;8EnvmP=Q4}ZoR>y-Ja$-X~d4*NZqmuFNES07H!MVsg}EkVfS z29Oc>A|LTn>?MjY^!Jt^UWT43Y?sRR*0%X&;1$+?1-LcaTawhXp@*5oqe~de*-86F zAFiU|My#Otp&s zenkwB{VPYBeR&&J&JF8RYHQTa#&Zl_9cg#Sr0$;(FzQ+ zs`W;cykeA@SV%IhZPOL-Xk_z!h52LY^E@MO7iVr9($i~oY3k0Vz_Aub}dQ@z4hm}&>gPwld*xs0*9GOCjd@O8HRb*|FP;>J1ijt+pU8-)Xg4V&W8FE zJT~G5*ni6+#cB(`p4tmehjRB;m@zO!Mjn>hxZ`i50%zz5PjjJP$79EAR6m}lN@l;@ zXc6+pUSZeLOJ9!pwaM;#;QnF+sbjTo?*t~abGGPF3x-w@HRWC9I{D~eHG-k_+&k)~ z7OOR(#kMMZOi&~^E2klnI2i5L_6sTWV5AyqMx(#P>qp)z|HA9O)~l&ezRlI=6qDnO ze1~h*k4Pf?3{zK8h)hinvXfxst)o4zv%Xi10yREe$Y9vqIqY+m)4xYl7yjJp2xN8) zIj^q;d%CsB`?lR0Wvc(io=MPr98~B+F$XyCm#of(s3DcOjWe3j%Cl?C?;m6CidyQ( zy50gyzch!SZQXzwDB90+gj2dUM;jJ7K zg4j1B+2DCIyoaoT6Ssfn_#cOLW%$Y**4<6aoVgIK)D`aC&sOq%f1^xEVHsOHlu=#o zD{-1jfos|Ig69;ES9GOwgvVb=gf_#QBv`MB87-TD+nbXKy*ezu8z=(WvD>Ob*dfx? zqWr{SM?+3WS*Qvk)#3Ag!{-~Jah3o!YSTPCNvA!~F3?!D^1DmkT6wLXEF4(;5P5%~ zv79o+u|9M!H^5b2CLsaUf2MD?|JZV2W@Y-HrO4O+-)nRBQUsDW%AeZvX&uUrj@c)! z!*}|Q^LZ5Vh7|FX;)8dB_cphC5o9#FO~GJq!@rec9`1uh)s85C)tsHI!W7=Tk`}vr+^ZmO2 zVvCg)WRPttZh;T+J&ZnNx<-5D;{K7q2-0*;cPOeqoAHM(DTyFK-qsP3cT&$Pe;A+jo>7U8K*8P4k9No*lobdm=G?Mx!KBAnX3!1oHk8 zbwLk$=q4$YQaX^FK5RWC1!baBad@`&?VqC|vuSlERQJxa4L8}`i)J2RDFul`=x_D8 z@@!uwzsU7$1zw#cl})y=k!a~I3|%IknI6M+dqaL&a;#Y9D6^PqH(lCFD8+SiEx?R5 z0?t>9y0dJBZPG_ssXDsM_6|1s2R=AA z3rwU!S-j4&%uKponv9*Pvdk^Y=mgb5B)Bw)wIcgG6e`Xr)^rN(ZyVip5BQ~cR6K() zMY5Eqy?b3@dk|hc(u#9qS>yo%W5UYk`Dw5W41`~x!J-%I0Db6wxKjbK%#x=G#zJ8k zh^X{!Ack;2s(Zq?tRhk3$h*%(+wsCUh+(4rtBH88iT;IJf^{Z&?@Z79dS*hrwAi-E93+y*iWnU80P$R~x0YX<`cPno|1qG00Y z1THH>0Q8zW+JC(KU^o)%`xzz^o=FM5Hx8A^1+jkJ`m^>xEp&Cxq4BjH+i2CwIT99Q zv6RwoiCvDaR4E@6p-2?u3Mvs5m7E9&PeyH7phb2F!&D*Luh+$_)&HPoF*P`-Z+Xn; zl>NFAEczKcpW=9ie19ljv!l-U%ES3k)F48_{k|k(A4)p@Nz(A=&j$CWsgmzPJxuo= z97qbrsHMUu1H#u<5QF~n0hWI&0ptUZ2;LD*DQ6ZGAURsWgy%z+GK(k>s1)3kFzj<~ z*sfUGA54-e)WnHt{Z1WlT2QWBe>85(zpQiLAE`+kE0)>oMC*G>pV<{xYL2*hGm~M% zQjp(GEVsk1gaVWMxAo&0681W7;BVLyqj_+>5oz$D*TOKCkuWjpfvaAL3$hrFA-BBy z9+MNveRFwqt)RfL6hTb?%1_VM+(c=3a5LTLzU&s}&A7%5Vpya~!Ui3YF( z=2?PC`cm3aZ_9hOTOudz9$Djfx7!sF%u5py>$||?lhWr<&5@9~CAhvG&#x}ZnTHaF zvuk4F}t9P88)uPF7=8lF+&9IIWe&*YoNXXZ>I2@N_YxnZnGWc>kb?1_x{fe1wG z;pCF2((Z;Bg43M6#2YL97e~!*hoBy{A)$s%J0BR*Jp1nNh&r$?52OhJn)Wq3_fWC;qcckL|;DZ6Ag?uyEFUy$;1b%#tovsU`N3?=8}t=T(+vl`SvCWlv8S;}h>I zT(@*V9HWv{*khk$x+XEP=g}K3w7Si?6m|b{J-PLU+Gyz15Xox-VV+w@lKI2PU#(e| zO*r5nN#xCBNTd`2vMJqRNDgqy6l3N6DygVM2R%eIvz~)CkM*3YHfY1j)s!=}P2-)Q#xSwVFbU~XIu)h674}DeC)ss@2 z)upQuI8(#{q!9Ji3pruudK!{STn8xyh-*ar%fU|J3mjA`1nUmg#1R=YS$#JnX95)` zJPubrs9|fG+Z%X}uVz>x8Jwr4KRFd{h(E*ZOGJ_SNMUedn*@ZeYEiTs4_A_LuSHx< z3l(Bv(kxcc_%0vPDx!(Am+=Do1TpU7Q*%{=;`^}5Vj)|&rZ^f@MupH zTqo*pmmU`p-$H(7a~qb{5QKf z;!6q+&r-fv9qfjbeLV4kQDR7Wik$Qw{Q8v1V5bPIYb!_+Wo>Prc3;4+(Zi#f|IBdz zr4D3aW&WSlfybJgv76(_J}+u#6Y)S*GrhklM?rAMn(PCwAhHB>yF&$}mcljQE5ete zDaXgkDu0n>2|3t4lSFlg8&~~WUREiSMbDUKFq^mv!}RNRzkk#jDD{6`YTn&9n!zC8y@5Kz< z1Gja_bVFB9laAGb5 zrsqdne&^N(4n|U*O=TsnklyCWGIHWM%DbSjiuE0qQDx0zU*1m>rl_i{#^pbKmQPt; zUw?NW&n%?bb^h0F(d{e~>it+kQ{#*-^QD@72s2MAtF4<;VOAnr-dgKnS>qC?gF>H{ zm~LP7(W|H@RrX;99SJyT&$XD1NMM{mkM?+x8uaLmx9+vPVELU}a(GCMIvmcLyEj%j zjVXoTMa_P*VeKQ-GlTH9u^WWr!*b;@u;7t|ZgQ>3?51&=^*JBAhBt+7xyV~E*^?=s zJXDf)eoCn8kCcrZ&!I@FNm~Afj_~^tCYWmrtp#)cu~w6=z@x=KPp=1U3_K@oZ62-b zJ}19qK7bjUoVq<=S!9ju^s&%&RVcT{?p}4eD#(iK86!Zf4eAqd1^C1%#_wHXUbWKb zkl<@7w`ktI&mLP}8$ z2H)K!GqO>{NkSEwu4sX!z^};GfEKQF-&)2p%j(y!X1nCg61bo8 zxqIiBXuL4heEg9*d9U6N=SB<+g=clABxx|AqlR1xRdTx6M^r_OSsEfJBH*edI3*(bzkH*TlLrM zzZ~e4P|!Un0#efhxjCu2Qa`ON$srjf_)zO7`209u3o5!KzI$>=7Mx~N1j<6nci(Sy zM@golq+Z^INTK@EAqz>Yk_$qPgMTyf>|d|E9X%?K@C0(x&8XWXRrLro^!6{QkD*rQ zg+2S4f#!lK$2c*HWuioM@s1?z+*B^txn(Tm@icTyrA)J`ait=i$kvl950&|-B+q1h zH(qPzvY6yu+D&FG1#u*?BAqOjDV2V|{y2@2xqx^Ced0tzTNiBI*8~rm|LB>O`tos zlS-wMP$!bYi{72jkS3E*9!m*kmqmA9G$7+EfVkTrm3$2smS_{E#rs{>qP!RDkT%OyW9&&7hoF{wJS|BSh6E{NfmzGOP_HRaW z^1P^sK}?pCG-2k~E3Pcs*a}Y-dApuB7o<@fOjPaD@X@Lr#W1aRg5d&u@o`+%Md05# zu#yxLC69*pOV~?uT@%!5Q_4@c$WQ!X2({utx6#E3rqMu8zvN%H!Rzjke_ z)l(21n*1E){jCKiw3?p6+YgvwP$55?-HQKu zn?3K(Y#j>D)o1;N+cpV_?l8`;!HGAiJP&JKm&P9N^~lTtQo-<%m>lWJc8E_=K5koVrV^}XcK;*WTiLWN8Z9u zfqIg3+UbOH;sr*|a>m_LaTYExUYUBwY<56J0#o!dX*^m$Y2a zFu6m#rHF03r-UUq;?I+u7lF$WF)EHLQJp~#EcIf&-xKnG9dBcG>Z40H8?X+4?pH(k z*;tHo^*gFu+l^76A@w-38f;h3&HnqSLuA8mL1nRs z3W^hjGvY7yocnjISI^JAyaPZ`M?7q#P~Rj}jkz1Z{$0xvvw5=d!n7l$V;dyJ@-Zfp z3o&F~a73J8mq#giBxmaUD$X?PDm3x&^6%s-Hg#Jxf`#`He6Rm)AdS1HBj`atbkDHCy|cV{+u~l9sZFv!y{0yy_~A z5OL#aEkpQvO;?7Uv6o^$epF_Jz+eok4!35|G5;jtuDtL%Q6p03OLx7*&gTPC2f1;%p9r>YorTVnVXPK|7Kl?go;O3j${tB=;0iU5G0|S@0`H6Lw?U zL&O36EXUAyFlUZN5=G1_;wl>nqTMgWe|gz9s~y}#uoPEQWLniiK)mDis!_g&;Xr^<$0hhqB;7&J!g16I7wJq&B3;_ zdw-R#DB*qJVMI9q6LM~}H`XRCGl*bdsXbK^$(I|HXvd6|anvEudsu;^QnDT{ zw6qwkoQ#p?#=C6Zg9oUgGA*0y+GnFvVFA_tI@VizbHVfkQ>zc}Tc<~fLWF5(?ncBoO`5a?dCcz7C~aExfRr~>ts{mLbm_JSyTA=E~5`Q?;z5C`~)!C=#z-dwCY-CjH*=+L-j<=avCMfipT%c>Li zn(wY|4kbiE)^I#)YC+MiL_n*bQoUTQ`%DeUoX>19@22}n`9iTv%R=+{)|c3~!M{iv z^6!It1=$dGw%tJOk0$;kM?}hpS+B@wYq1?O;9)VA*8GJLBITzh9BVV-i4psd-zc=W zY4SHx`=*}^=+^0p<#ydiJf6)kmnQDn-lw3f06We!PZ=$e4bbyr1BZ+G>yD>LUwX2u z#S9lVTm0-ix;@0ecEjuz_q++e=C-YzDq^5@vblAN-H`m{H<)hVX6~ZVB zwYav{!CyO5(8#8NDm(P#J;Vnw=?7wu8twuF{kM2AeCoRm z2~&?Hqpm(X%wmF=G@ePCAJQR!X77@b=Kc_IQN)nJ*-A$n3o@LfI8V?mG~rr14z!mV z&|>Z0th+`y&+Pl!gm98-DV0I_fSrOu4FQrH+_p1o46+tmH*}B4TRABo$izJQK=#FoQcr@nGG3oVsrWn&2yX&_O3#`d=2kNi1l*}8DN#ax> z$`hYSbJuP@JQN9Bqa+U(&67L0pk&FzTXI6+3G+R608Jn)3s1TL2chXGnFBA|s3faY z7+TavGAJ{}0Ed@?^>4M|dM8DlA{mN&jO=^H{M?5UB$}{@$6j&8SKGo!t-NYL<^@LD zWvw)Lq&2?EQk>+xdjsclvT5~szg#L0C!f1kWq&X~|4}Y0(xUu|$XW4}?Yv+BE(Hw=vYd8;d|u3U zTXliM??{@NfT)ZmayQ@x)BjBdh+se55c$4on#(}SyhBhXrj2vDcEkMj4NJ=> zW&EGNY@GkG2gS<#zhn0rt?jtYf428IJ%fD2(~)bMgET6eO`skUdPg_&0QPn-@t_dH zDJ!&reNIpn8l)QsalBTpWH$GADYp3l@y34G@y z9;t^ydwjq64)KP~rlp6wPi|eXFO9@fJicPsR((1dM{-QApcS~abfwZrA z*JYf%b;so$9s3^d{9o6hSOz5U)ZCRJ;>D&+%PuW6gth+DK{}Qg(aJo?MCe_?dWtE} zL+|gNi>@ywZQmDJH?4jFHRL?~zlQuI5|K)Zs!&5@ixrs&Cq`0|4c}xA(}q%Y*zh_- zQ=j(*D@;1Lm7gkZ${P2k8pk3WD#aX=MFtn>;)|qNh;|8GL3vle9(j_5 zz~M|Yv8EFQKIMJ1RosNO*`GXDTilN6pIQ#tb-ME6Yxq>FhB!djr$66sFE0Y=f2)K! z5o$%xLo2CTX9+ctI0{N7MyeJm?{!?A<5nQDx|dGj`#3oE$GHggwYEJu5;c-RmP8#} ziOo6#l@9Txrsi~5(BJz&PjR=>)S{?T{d0MySSa7TEZz&29 zIS46nR*fz@x4CNY`~1MI5W6dq(KLEClDaCxNt0@U-y`?ZRDTBOdBRpZd)jZU+Uh*~` zwL#%*VHALv_kK16h}2r2!r(;+iz#+aJhIp-Jq+68IecG)`F*{{rLiz5)e9fR>74X_ z$?s3m+kTfIBb>=497!|OVoAZ=g_#O3eH;!^o~oYuRHoSupw>i+q+&)O4U?P;x@i6W zBB!asBF8vmoa`;z9mNvt+-jMzSytGrw0ZZ`agjZ z{@3DQ`qy6%Zbypk41Hs6^=@(SvP*|By`84n)amiOtKuy5%vgbLCni~2?6*`Y(ju~g z1X$Ts8Ngl`t{}p{uytpaVHB?>L}8s)(~@eDr+yiPJU5gO97XBBwl?0J&ubxqRB{!u z%dQ8{q5{DqSGhHJE;57mDHPKXoGEX2N|&89p-P1VI8T`Zbf6;}dwMD6oJ!g?zgN#0 z&glB{#oct=ZV^r#{O=@bQMXd1$rBfY)6gcYp7uT_gEt1SEaeRPc3Z=8;9pEJq9C$^ z0&N0&1o-!tvgkKs-{W4Phn8y}F!b$})Qmg8&s_WirX@NA4tBG;ClO)2%g`1)h%M4ckQi|}tR_|?v-DVoO<7E=a!JqG}d z?iX$&gxSYjpdL?@0)V;?wg<5rUzed+MPg>Tp`>e0B@M*DxBT<{@ve1Ci&IFg7ro9H z9Azof5>xL6^8qr&Wyk{Se2LH#Me#B#@p!-=ggK3IVSLrM0CNS{oOiHNRl&<19y7rp zBFr+Dnq!lXazcvA`CKOqM}29}gRT#rZM6*3;8_%!0Fd5sGg&B$th*OwT)E}$?jt9H zCAv->MY)!W?LV@DjF3GON zB2!vlB;pMvkr$szOAv>`z=T31J4&8Fxh{knH{>i>a_S%ayBtzAG5;tI)Q@{*g$NH! zUVuTi1|&#jG19#CwB3t6+36qw>pLubBYZVYAP3g}AO=bV*y6xyFlRH`%TgNQ#c~oT zE%!tiRvn>%YY7i*$nvDTNeRk*Rqe#Efye!%&PYER#~XmHf3%GzD(hZ~!KuhtIe|E& z{1x1Zj;$EFAD!SLlRP>fiiuJiXi<;4*$cD1 z&t*J#2w?3iH-ml3*pv125;(W2J0H_J+mZ-u_u9%=QqrM43uY*PI z`&pA|An2dLf7J~oct4jPx^*Ks(8~Huh75D!P1Dbt>UrZ=X**@xQ{{;b4?zHWe+1_v zX(f+dzU?{7j?u{mFC81GPDm(n2dT8N^G@#0F+!r9-tA8x@rff1wE6%d%_xJDES*G6 zHOPnq5JpecN@|K|GAn0fqspH+{+ND){0VBvlMvyKg9_SA0kxbrpXe~>2v`B#oqh$X zE4xO)Z-vCGRZ1Tfk(xb6r;#l|moD3XIa+Nu+b#wtQS)nZ#Hc+vN0u9}S&S^f^XD-b z0+hMP0E5oB)mz3M7A=wm`3X%_u0_a-$#Mwr4?`AKvYT7irZp^(Pd-PZUA_)}i$ zC#KKrJjj6>BPtmI5`zq^MQgRW=09Shz3Qb#;CeG01^7rnVzoz@tYr?AYUaL_ctR%V z;=@%xIKQ3CPKizu09_mM+mO(?SGL3$sz*SqJRAR1w7Nl((p+mzYh%?D3_!(UwlXI~ z(0MK)I~3aMa4(230VG9f5J#WMxh8S2#u0pACw2DqqtxP0s!Qthhs zU0oYe{c8u=%Swv$P2_DW$ox$MCT!qG^ueH*_HLG-2!icK!~qZ%!hZj_c}U=*wT(O> zvO@}8BP_Fe-Aqd@avGbRR7DQzl-4ILJet%naEkeTU#ZuRf9rsnT*6p4?zI?7_SLSi z4ja7$TsLGUABaBa#P49UHkFZ;fK@bqomwG@0@PE%JCCoF# zS_-EeAcsaHbW4yUu@kNVZa7`lAew$O6D~kp&J)jQ;llI3&BMP7#^b=2>u%xUfrA@) z*auNMJ3}BNGjd{m92esMR&OVA@l&rMXxPGW<+9?inx~xpping~itKb!7kDlXQWr^NvVRn}6B&^4A)_wH;Pz2VQ6RT>-F)M$ zCK0vKdGgg-y1|1D>S=;(0+yqVG?k-_gsMTx*$_%wORo_E^VrK9M$^v9qFk8&E(mM> zTYAA+nUU?E9U{)(eShca)F?Vh_(6M!$XdnbGGEtMy62?8vM*>)@5-v-XF(6*WI=ZH zSb)Ff_0Ge5+?8`qMZV3@jiLCP7N$Od!W&k8bSNVIU6#19+sI$kYOz<01|ez^mhb}{ z&tB`LT4O^1-qb({*x?B;r>Wjh`)KuIS4}VE_A2M>ECQstbR^H&G?cm0x9seZLcK0X z4~yz`KQ1WXL+4UlFoRMzrCinZsU8+aCC$3)zAEotMtsu3ybg(8$==e*bKGG6$%BIS zY|TZsLHB1@9sa|BpzU?0x&li+8`ij6@UjiFGbH1owK|i51v8%nqz#YvHZX(yZbXfm2+P;R^QrU}RzVENy_8Tyz)ec3tc4zaoSV6Ixnt zY5fM(z-5k}Va_y9yWO_qrChh%=G~7h0B`UAgbGpBFF05f@aY6T8&|ZpH+@EwaIz}S zU%QBfoviSu`0M1dtxusVY5;Kxu|NPU(0d;TTnduW~Kn=E(wiH!!gHZJs-`iL83BzVk1izMHj!d(H-CKb#ct zb7_ayodtXj17wr5Js#j_TR_a?ENH0+IZYYhqiml@@I3w}M3(r$XD9 z)--378e;nKTb4G`Zs9`vkseaJo1^`FjLM^4Me))5|i8POYw_aOifeNpk?yeSv{Os8$yOq zb|VlxV*s=Wou&TYq*%lJ1qqNQaQ@RU;GIB>jsSv2JQnHAp3=q8v8ec6|hp|A^e#?+GC3 z8a;%9PI0>!9d`a&5@QNu|+6JFA#jY=O{gW}>R!nhRFdS8d7U5y}>_5B8oUTS$D3u~42yi!Yg250GX z`+3^L8`UmkJeyanZF5(_GuPcv3Wj~!Km&I3caHLnQ&v$8eC>8yZe@#B&Onp%@^^qC5 zQ(D$zhz$T=FIROqZ5lIg2o=l3s_O42al~gAnUeQ6b2vq5oS5Lkc=9VHb$)rn!y#Kt z61I1&3{3i%k?7&!x#CTmXEd#6O|V|NwzmT zH0zx+w$qNfW-Hfivvz_ebMQnQM2W4jd3kbX)F~6Sv%1N^xkSUCe=PH~){8_4-5iGBIbGBCh`f-6U3hQWYqX+W1FCSo$jo(=0f^*&&$DN)A&pgnBx6OWPe|slXUN^og1o{kn zSdSs2zBoH+BV&-erdZz?w=H^-K}AO!8OvuDSwWO=SzUfQXq|wqdI-3xgnYSS+H6Ob6-Wz=+Wbl3f3<=Y^w)o_`W$d)^pY|XNEGCeFBkB_*kPM?T z#X6ms)x?xaDx`7q?X87-T7Ga@9$S`38~d4_G4Q#2CGmHA-IYCJ#u_qn5kpW`g7$$$ z9gNWckpY)UT9+`0MKhF)Q7k}G^(h2FWPMq;D2gUnmJyTfAkjziS>0yHfj`MpBgy(Y z7pvo8fo+6xF51jT2rG-7a!cy4z2pu(vCJaLC>9eb#<;8j)pGe(d zA52jY?hNt$m+05INi>#I$Up&H^OFPta#6nK6#@K18B&dR*10VqR@{S#1;nnT0x{07 z&;ck_CiZ3uU7@#se{qLp2%&a`lPabJHyW5GSn)NNS-F@FysI-MsHKdgL&RaV6f!Y! z1Dhn>6Lm$NI3p%LO3e(lmBs3!H%$d=f>IzIq28Yi0d08XZ?I%Q`Z1B#d`I&}2+Gl4 z{IG6oyiIB3(2vk=#6gTgM%Wtf_s=%H?}y(NSTNhlSQa6nw)?uz?^mbH2wnYbf)SeS za4S4Ct3BGVCjZ>0VA*sMpc4L#chd7IX-+M`Y>Z-Y>^aaUNDTU!KQgpLqLBV2osRhI z6|!7!9ENg41{!Ay<>yFpY_fdU$^*2x#XF?~YdNSCcHLLUab{?E<^ebj`Sf3!b~buT z6Fhe?$Wd!s1{44#>h0##96$>{0nUdG*FJKE#y~AahQXX31cIeAcL&oZBz$6Y%^|ct6Kvx_D71m_NW2T9(N)> zkt-0p@0(LyGV~R0hVu9EUPw zd9SV6-IV^-v_CUgmcfiw818{w<^qh}6Lb*FLs^_1Uu4X;&yU+i_sXt}7Hzt(X1Fy( z&6qY$>=C%_1E2QdR9bJraq|T}8k8rb5+Nq&B#dphc{L;7RbV^9#F#fFcpZh0j3MHJ z^!IoF!STg97`ASDV3lO^+yq&^49N0PU3~+pq}cN+ z?5EM4X<;AKvyGf)0wpgpbh^`HuYQ`i0H9Xnv~OU3>F3njPBCSv+v8ZI$1CXvVARK1 zHxI(8f`HP2D8I=kveW{eK~tS*5GMkWDMGm<7r=hYM2P^1WK=1W3Uv&DAT*e`6Q2M` zQXI-0Kr)!t4yTbQF(PTP^OuK{1BNEFbIAdq<#O^P>Oo;5n6xlI=iuFP3z1A0U|zQ5xV^-yB}zW1OW4F?W@oPhJ}trL0qWsX@79q0&^nS zPB4I?DAt)#ettMKR7rl-=m>_g!`Oq6SzvuVKVJoUgu7&}MrKeX3nC!NuA{fh5_&`| zY{#!js1+u;0zk9$>$7T&%R;$fK8f|W9Z#L7Bhct_CB-%I0(Rf?+IjlZZVUag@KotG=vUuTdXKEJnej)6%Kyc7_dQx~niCdav;(z!U%CzAFp%VcG;^ z3Mf?@)CyaR0WF<5Yi$sOtmdMwWyc;$Km-@9_kTCGO%-Jx{+K+VS5K{&0ob0A zy4`m5q#^cwk|x>W+CNP26rlU->28>@vv5OA*1U>9AM!EYh7i4V*A>Fg3nVzzz+`uo z;>*-GH%N!FnmKR^(O zAmsnbSr`}?|KHFPCI-g;an7=%DP^}kj@bL5Hcf#6s+#phnghO1eHFsyk6s_5y$T(W zTR<{OtVqC-m?GrsRrxN^SV3w=;*}!<*P5AKdvW3E;A|bkVwzW!c6+fextS|Qqgz3%PRPr|tM`b*|49(H)_I?k@B6~8+ z(2FcmKO*l%B$KgUYaAN8--kLvZ8MgDAZ0_*LaKSXOtMfLOxQlmoPIX0=el`(yup)| zB~G~bC^37evH88FkCSBYn=-4>e2QKRsi5nzj>x>0=|6Y$(e0KSmxz~oSOym+8!Pwg z36$%rmM>eFbnC!%nN%r>njf0>e5c#%W{Y?3I$uvstZJ~X@=%BU&Ut~jb;_kTRs|o5 zXBVjznaD#@6qxowTbWCmivk1gp?4A4MZNq@cIut2LQbu{y%(t7s_Nz_xHP=P>*}Vu zV%DCmNvb}p92l{``yMmvPh?6hyeDK2=4;bl5tqseWxcnOxV`yDrSc~L5=fH^T< z^s?GlX;NI z^PGo};zue=@cT8p&lfMu(ETGU!9sj36oP+!lSwX+)78Zt&$F;YrU`&FlA<ukFUH7_RI5yca+@7-_M`^@erV?q85Fa#H&BL6TUfkD4bQ(;?u9Vl1 zsMKiGS%^OcT>wV2jg@XQBqzXLc!3(lewO(t2a;4GQAXKuDcR-dMOE&lU7&CK`d#nT zBoR`W@tDvm`Usdvq8RYR!grtEoV%uN{(Tn_Z>(B0}=h$yufkqEamVpTfD|m7Cql zu4of|*$BL4pX>mypK0*h?#yf`hb;b^kod&{8QPcnt;4z7A4?TK4d>IB6*W}~2I4zl zQGF*-h-C)W!76nq{@9+*D^tVMS^`c?nCEkli>_zBD4EkDJ~v|Idw9n{DF|;?LSZE* zQ9y@=ATYkeY!oCU9Ox;2N+PIGeVL(R2nUJgLskmk_BvKIds)W2l?Oc!wN(}Ab7EQ) z|MK86{~7pFbMS_88LofmY~V#8*77#-4L*G?eQGXd;D3yVU=AU7hxV?0mDC$;c8^^} zlkA|zd^-ArGt=tTeJmnwCC5Wdo9`b;t>Ob~)8J?dm%bUD$JjLbzpRsM{H*WbiLVR zddi1@tokr+j(UoMg29Y&(|nqIDsi3@>NG5#r+HRFGc0AS`gazjh90I8ggVDRjmhNf zTQlC2aZ=G{YNh!#w}<>dv5=(rS(tNCr4>dh35xkd99j5cCDAQ`21YUfO3$868*Dbr zZVD9zz1eth7wov*w$*T0R)sMh<*k2C(uR0&e6``hCA~zKEVzKljbyUnl&JsKz!aBI`ZB&UCJ(w_9-!HBx5&K$=kvewWQA8v7^3l*}wqd zZgj4>u(3HHw&emUHpHmcF~3AE6f+!1mUCsq0GWO0iuo*%*nI1t?4~(ulvA)WLVa_$ zv-=g~N?S)hSb^jgpCzshti#~qt_7K3>6Bn^)ZLQsr2ZcCb732om|M^iH~qTfb(D^U zfP3}3kL}lAILRWz3ZrDpM1fpbv>tX6i_$w<@_dS%pw7?C*iIsgy)DTjorwZ@px`7K zLo?dBXwbxb&h8&52(!&pgY*aH7JVoRLtRL*;z!4Zv*TH^k)myFoTHON?5+;?;;g9t znNvbT)7T9D0(TPt)46OlfQL?=04UnMYnskk1PEFcHW>8u`flcP9|erkgK_^xwtV3y z;HC0n^zU{U|Rx*#zvIencW zQr_|cO>tcMdT4zfmQnuaT@@3Vg&VgV+_cgMN$|vP>yZX3<9b1@Y62$ecOgtP&jVd& zxUE-w3C2Wz2(YWPL0YCd?Z-Mn_rbi_12C6D4wjw(WJye0`D;KB{rlr|x zre_CbFDM|{sj-#tZ^wavXc-^ev+F7?%|K|`vCIzHDgHpK%RoUvCOi-<;J?}lt>>g zAuCiac#=9fvx8Y;rkb<6Pt$@9Qg+}&267+Xl0NrxUeuV6%&ddXM(GwiSa^2#eV!BJ zy=Dj)99*?uKQ@`rhY}dHUW!f!zdlKX9WOf}thbXdh0$*4?fqB0{+(fK+O6oE-}T1r z5jeDXu0`tEO^I+dDBfy79mx@O%B#1Sca50+*nNX~K;7S4;5?w+O*Q+s!QL83a#_xa zYzG(B4Q_J;E3b5Z|DH^MP6WU>{J$2=;ye#ryl9kfsUr z8p6HDTu+se`+W-rdg0zk!xHSkLc@^A)SnLHi!r-T31!Z4oXLkihUhU@>Za^b=)f0^ z2jAR6#hwZGxKIgtLL1)rl_qc3eKaV?*gMgdgh9)hRfg1%=)qvf_S1vV(Xs}sOspgK z+y>w98FPn9j{;>N3dxWJW>u3l%sCULI1m6r0CNVd_{-oj8I{w;yMG4kOo{Bv@ouJV zs#|cp#6sLUyiNfDi83eJRAE-=a_r#lP%vI0Q1xx&`f95V6wGmMn}U(| z;zW8SYoiu7yBp%Nx@qL)X+BdpyFqp`;60Mnw>*36Z`)jsMct%cROekzQ9_qe~Xwz zb)QpN%{uHE^S_e1=R{GZaYG-t4=a;_MDga|iZ5Y{2$8KXb%tMprcx zGZDhHwkU|0D;-a4wD+j_E};+67xhC&Ja*G1DEci-^OYws+ThErz8tTV@=7$?Vq)UR zst?%omhw9YCO}Q8gj(VW*+NtQ#8@-Q>CMW*g=~vxLK3+|D9lS_CCans zvMCEL+^Y%}&a4Vj7D6c$v0^|JJ*kRPoGxo<;$ae%@)<+T?y%e}GJsWB@}L46ruK_L zN*BkDffBUNi@{Q@WlvDrqghO>M4s>_*-YE z2)5D%=i@V7!C)pB#jF3oe?bY;bkL2n)RER&J+WLsqe0kE@@Bl&STqL~r1rY5soE5w z4*kNz`?(4hR|sgt@vsDf#Ltrs`jT1QIl_-?vje~CR#78bB#(OWtdp3pFDYn}nVAdM zAAUb5P^mi-U=&96FpbXIHfvE5PcU0@C=+kYJ6Beq>Fwvd|aGAe>Ys z2GxWHJWvfUDl~Hz7Z!a&%4C~JExHcm1F^5UQ;xC#Tte~9CUtR%bZ*FbP6na+JLGM0*BRNYuvi{Soh zaAN&><|(37$_txkq<2ym$VPfWS?*k3&llE@GVS)aX2Ef{|J!T?PYao$(J@l}dSxun z&)4f^1Ree%H5vWUu}OVX(3BF(<$PQ?9w>6%fVZ!=6S__}WQL=)lBK--l{3uZs6s~W zZgdqPb`<#-Z&*M72y^uKJ<&$(QH*kl_yyJH@ulQNz8yCmktCuyb}ioG@p|U@V=c|? zfXKS{>xA2SSNq!&-PB?4^E6GW+x_)+s%d5o;p^ezrWO1b*}8GkHMMma$979+SEjy& z{p0X<6y~O<^Mgf;ge6IpV6dwKap4|?xwoT_5oajxb$fTbvcfXjlYZD6#d_GQt zlB=mzef{{o@pkI6{%z_x>(bxmYw3Cn-*(|`=vieNXW-RLZG-ZVeocIXjaVd@tvCjV zNjUJ3{2jz16miimhQ14tD1I2~m0Q2Txqpn=(^qRadL47;0-eDrfEj`}D!nUh0V=l1 z?vpF`z8?Mh1E=BHENjopZRRs0cKF(#xS?iWe7QAtxJgPT6BEEp>Nq1YgOaJlit}Lg zB1Y{TG*1fYfWvonEly6-3f0>R$Wfid~OK9*+eWW81pr=4~!@M|_| z*n-M(Ow+l1K(ayQ)h#A=oa`PgJV?GZmp#z^L_ILR4w=5H83i}lv9h5eTN8&i9WNfL zgBj?gK?4PaR#}OerYzOeiZhoNheI}12=hL9YJvuQsg2VS8}=_cAX=FHSe0opWUW|n zEAC0I(loiJzt(WI2oVjAIeX;{s{jiE2Wih67#OJhOq=ix=uZOgg zR!E(>ZA02n45$5?AVkBbaya!Ezi~&HOpLaK3#OC6%tgr$k*S=uZ(>Wd225$U{a@C^ zAv3R!p?@CeR<~W>vO6A}?mCkJXYvnF3j!zU@}}-Ozvmx^e$%0vM^vVYJg25d#bgV4 zG&WUkF~uk%!hK0G;zYdZYRo8}=NKriuRB*_OoVZy+i2{h5ggZb zE9qG)6~s>m-H~ofpo~B*QAmDl4632zY+n?~6*t&u=ExPB3Q8;KR4~!28lIr6*JT4z zjSn#An36|D4496Ziql4uoXb>aTffix?lx=y72|7Db0YYn&cg}Qv@&GGD5*K}dcXO1 z4)Ck?cRLj0Dawj`!>E_sJPKG!D=S}}kwU+M zsmX>Hcp=mcEm>;VY_fL~==%$NSCM|W3kxJg%hF>3o0+f4_!1BHfqDDZXwR7_dI5%1 zd_Jnr9Kp5{V!e34?n(+i_Im**~$H4;pl2d zWM&)}r!1P_PQ)=lqbN$qC&`>H{P-6DmH3(d37lGOR)Ls?RmjY`_x|Ej=zB?AcBH^tbmlvEtm=*|xN+jzU}2^H9kA~eT$Inwyx?|q*p!}^uM zv$bKAqr!*FtHRUOt&Lu{$}^3tdE?e8Im*tc4DXcFMWoWLv%Z*Ho4J zPR0790j7Kr0?Rg^&{u_ov?gL<2H5r~%%hFyZZ>MqrGX57gS`LU5C4Z^jk}jm1}T6g z@m*heFKRP)mb_db6TSzF)1?RCBN)gW6O>Zkj==(>A0w(vM0e#FI)0wd>}K$28%R^j zPmhK%4(qe4vT5^u%R?cS5F!cXjudC(l^$3WSwM>_4B=Eh}^gQ>UAbSv(V((%oII)3w@{;g<0{SG83FpK>t|h z!!SaaPJQ-YK|Bgw`S*j-Kdv{x8;snipWh z-^QHk+eu==K=PJRge-{x_hHkJ&?C$<1O0-WE8Qnm;{i*@jlFLVYT}O|1BE>jh8Scp z9KfN!HyfcQS+_d~3SB!(6HE<`Dz8180ylZ()HG04W4fIDY;*~OKbKVAxHoL9pIhFH z1zv}*RWUFP;L_SGvutp@z@{coxn3({fDCZ!dcO~Nc4x&_vy$+-LQ`jKbk|R;eXV7R zLHyZ-TF8hE=WvF`{ZFn<#do)02E-a;Q`7>8bu~SxFvmcGW7I2R1MJF2oL*-w$500& zZ}}F&C3KRaU{+%%9PvG`p7p9TrHXj9bs7{JSU;D|5< zse=GXJJB7}Vxax#cH^swMeb0z6=pX)v1A5}tsy4*vCfKhW34+32P_QChB!Kd1X6E! zI)O!Xc9@(@>xOa6A z7uDU@jh=uW)Z*7l=SP=SXOZ2yrV}KvbS$(p9;9|pi_LC|yJk*)n0b8@tXr-rCndKU z?AdMgt+m-s3z<_>ZD~q(nEU9 zX#QBj>Jkg?V-i)~*RykYwLNEtK<6E;e61sZNAEyRb?tJH5i8cP11e~$@ER&#a-nwH z-=h{gh&H~X2D{6uGKP(f!+xv~xLj1Qe1DDpKwu9bA#(~@`Z!SjyeaUn1&tfI={Qn% z#cFCS^SW97nY|@8DK*B)WQo>^DfgazIIP5A-m1`^>&@PEfy!RyfXK0E?tF?v5q0_d ztW290I>xe5g4yNs>I`twaqPst7yVv(H3-6*JAG9Dzkkt)V0%u*&1%3g0?A62&n%>Z zR`F`d8gzBH0e|wl7~y=`w#wp#vS*OsrW9#3?m$nh?-RkZ8Ml-gY1sdjM3c|z5^f<; zN=f2>nmvLri-$;Q10lU_i%1O-a|^ zA*V1+ZR_tSyNj~9MtRwNfmXv6y%spl2=G3!|FhM~D(U!$jhD~2X~gd@~g7kA#>_in73kKGL9 zA(I0&#uaW3Odq|QJMb+C@7gHhr>`KVeWdh?t;|sTd+R>Yfu;K)SZodTEL}40hU(Ji81 zl8Fui<^8jVCr!Ali_?!SJvtJBRuXPKRvsX4V^LLK*SgWAnfeC0`)~5Dj00Q9L0-nL z+#j-1S*M^X2e6Mu_h3_O)e|c7EgMjm(gw&JF7B8D=mW8`)2F*9O<=+EbOW~JC|@|L zvp>$=Ub{H}d@q+WV&#Qr(K%Vj36l?8VXrurw6dsTU^^#Kd8u{^Y9lbZ}6u%F>(|!Gv+K? z>WC4bx2d9J8OY6$c`}nub^6Oum0k+;5C7%1-(s0RI@m4g3gJHZw+_yA=Rgvu6QnNZ z7G)}J)*7?|U>wjA5*~>E>4EabK)_0Q^x&8LuQIlhwDN;7Z|WPw4>%203fNm12?uX` z>dXQZP`FknNZ<*U2&`XSep|k6lCzCyPV%*xZW~zw>z|5>MRthKGvMBf2aXw|nc6{b zT!Bxdmj?R5?p<_NxDrVi8S>;@5)O6q`*#mGJSuTk!2C4w=80!wK84e~Xq-&t<|8K4 zj>?d$So0{i>z6(QU4dAAb@gW<6mXvCG3SVcVxh64E>}iqmA&I2{wczaR8~!Kc?ChG)Aq#CVz;!}XfT1GxwgB#nyn?Cz#co0pFNN2 zOJL@DoVhYF#RVTCfV;8V;n>~mBGbqZmsCf>`PJzK4DpI7i4zz0-4VE<^Oz*K=wk5$ zN$V_3g-I~g893o{d3U|+ozYi>HI*VS9Zcmq> z^itol%$1W@1?zCsXR}v1pe4#ROS>;+h9`0AnMs*TXNI$DBwGAxEnHW$gQ|s@yv)*O zU19)&Mpm=U{*_bIjsaN4>kLqwx{*6eW?;u3ATnF2>)1N(Fh!T{H5)}VI<)F!DYqKaF7 znj4yGQHIhAbySulW4T3M2;aazp14~OgD9H_1)`7mGk{(Yf86!1k+5uIPW6O*o=S7R(tUOQ6j;z57PyMYOVO zuxzqWyB1Y8Z&k>UXk!O^Xn7jm2KS{yS)*Yvd1H*NxBSJuGLH3jF0Wmx?CY(AtzJz% zeJIW2Na81_t2ezOg5hrPC-pJxDGu!8VjiFjN|2$w_C+}+htpS^=n8HWSDRHfNaj-v z%@-%kfyNEeb|b=@T&H}y(zGlF%wbtg3Oxp2JB=6`+b!*84qJy(QCw(yZ-G3{qVTwG zWLKO9bC6rI?&ra{WZhg(SZ;ZC><9gwm%pBY_?=QQL$x#Cv$0G!CcgIjp|olN4W(hO zU9z1nQzNJv2TXYkK9B=|Nf|3#Y>B=qvXoRgC@Blf&_H<2P(d?DFJwpO=um$m`Dm;)+T9x5>+9vqYO0 z`Jyc)VBT|l?_w#9IHJ|$qnO;Yu~puiSdYn4+u^{Y$4@@d(S!+}Sk5d{Z%7jCRI-$x zY{HYF`t7Q5IY<;f{o|p!hEfidIpFEd0(M0SCYd1oij&FTnCq{)q9y*(7IxX+eujRe z0;XYp>IaOJtSE@wi3nY}RA)!bf>rkBVWMEYr zp_5Pupu_ZR$$m3^$r@v1_nNkUx!hQ}-Z+lQ&kzt*%-G>IP9&aYG+{os++(? z{d;)3wWm*Jb-f%e1*^H83!nGh{%QZUYj;%H5~CE+%rG;$*I~MD%QeIjs;;|>P|4qw zkf;U9L53l1!l9(fPV;KQvg194eq6h*4Z)c~+ifD~aVaB!7{X>b#kZn`VL?>}#gKcf zKL~NecK9Kxfelt5eh}2h;_vaMev{~Vd0lW=bss4JER@|SuT=H}2r-Z_8aAHCHtIkc zuP~Vhx2~!IS1E(Lx#F27JQ1%e;$Q;Hh4J`6M3$6mAJ`@sa*&Na8|BD> zBVT}!N(yI=K?-J!LKLmkQu+PpsrJ%LGa8zOfrzBggfBlX2V5q$7n$cXOoAZ^OlUx! z7kPRfZchmpSIn0UB!n4bj-I8#g*}36`uRp=rr5K2z&+7sdpy-!Zh8{}w?;0O%|fz} zvqCA&0(ti@iVAL|l5#&_sDiK9DUN7bI^_Rh`5|iVj~8P_)MI5 zArN--NN_LTCD3!AdtVoVt{D9Sq)(YLLenGHTr+c`!3+>pQgk=QVG8m(gkw{p!rTuG zbXm3pL1;2P;TJ%&8Y)WmcGYmiC&yQCQ*9)(s*vZ>fDIyKqVko(uT<_*-G|i8?BhK= zN^36A4AIJx+O2YX@kF5F6tIykcD`Fd5ZeI4r~B(ERsmEiv8YhkOU!lnnDM@M)06JO z@LG6xSYVN!EOPyvvuA%i;zj3sf4CWyg{;`<+E(pK+Z{JTx_3i}eC)JV&b>UXugvN& zu&1{5(BO!60{(SljaGHR(7JAlI{-6^c<52)>5+#2(rGoKkP1E{^s)HFep#=w5xLZe zSMH{oJGiXtUXCwkCz+!SXGts&9X&Eda!4||1@H|w+*DT4mpH5MiI-XM zM@-e^Ck14@uE!C=UHbSzELj>vomcvL6&D$Z5;wXT#-OSmDKi{c3dBHzP*7imTj$c!YYig_{HMA)fa zBcQbem!=Zhl5`IMo;b;*q1kUB8}LU^w?l-Ths;eb#IHTib}GZCIO*E5FJonj>7!Ca z)Z2EID>CP&!#x-EQm5Dw`mZL+TiTap8Xle1ne>n~01czRZ*HW(l%Ard2o{7Xm#ccyBFEf$14>B-W({j--%&qylkOoic-7O=f>xJe~tZlaNku@ZOxEoXyG7q<0B!99JDJEpm&UA^g z3PSg~dov0g9MksymPO&$($Us|$iOfrPX2voO~5foCI7#K`wm?)KN?;IfmA=e9~dr; zdL?377I6nJ-tV`q<1u)?cN=ZcE%p>~>?NDe6syqdR_JX*3|_iA2o-`I@rfG$WMmkz zKNLzY2gTNDfi$WztrCwWl4#F~)T&Yf=o_=&GfSLp*t~ovC0esQw1OT4YEH)NxAs13 zwgx2Jnua9x5{mr#!4@+D7`J~z*jWbCoex`I)WPj_wozr2+x-r%8y0`PG*h zP{h9f7iI6%CRn&F>85Slwr$(CZQHhOS6Y>}ZKEsAsxe6j_~)lZ_D?G7@BQ zIM}&40Y^-KUY-@N{g)ALyT8>D*jc+D~>-$_A=(V?JF(uy+ocUTMJX;He{{A9<8Ysd!-f{_$=5=L98 zAI=Y;M^I}5W9GF{5GIAm5;=*u!k{j)lh~~v$_g_-4sjX*otdY;Drb1tg&@~r;ktN& zYcb13dw@Iu6rY&UO*uvLF=<42`VwN#c;qYwx`g9iO?`2`Vdos`%Q`hTs+@CrCXyVi z8=`^qhV^y`gal~OmS_I;ARZ(EDIyuO5fwzDAR3=H)1jdnENstc$i15hLqVbwQItCn z?vf*nL=}mWso+I&ikC!)c;xB0U~#LE(qph0RA7|&2LP^jg3EP?D^!E!vcU@iEJ@9n zy92&$3@aVKSMM@0`paX=&}qWZ5R)4>!`5I|bpgJs3FW+a7)(-Z=7Gw^P++6udWGRR z5JdTzwxY1x4Xne9;B)*dUht<%!nai^c>sdo$aW%9@0Hu-0N>zAn#%cQ8`*JP|o6zn~yE6 zy~dd`zL}wmVlnxq_Ue`iMTK^12_uB5WW#_iqc)4@Ex-;8mWvk#p&=k*m7DL{BZK%s zc4Tq|KBfNdF;oh|<+INfw@>I)qKm^&YjnUvUyg$1%_Xs}eSIA3uk$)ePws_lfnVjf zUXgtkl9%@bM$M5-SB8iV9NkL0v%SRZ7D$6Zo96)jX>%Is&I@q-2#xT5yQzKlGd#PRPVLLM+qYWH4iiiIor)ls zt=s$e4E8snzusY|8G(7XZ`b<4>G7y7@->h4mJGHCc>T`s1H6lA7~!DGcj+^(ANXUw zSMu_+GPtwDZ^kZqk}gYJ&K&0oU4?VwaC_~=lviX1t@W%T`%Vo~2%iYn2(UfX8WVTS z)9WcsZ%j{?bwiPZ-LLlsny=}qjTvROypNY`b<0fNgZ;l2z}4t+;Y-y&$!hOGNAyFB zpoq-&rBJirGeF7S?91|%Zk8s3GRPDn;o)(Rjoy4@4>UPfuykdR;*;|>oce@Q&2Ji< zP%>luq_qMic%TZ;8?lo)9NK|AlU-f&^dQ}n9C+ugkNxBBjysoVer zU36y|*T0A&?mz1S3;~|5Mhku(&mG%#Y}(XM;{%hccmuJYcYCygh0i7~H_2*Mgt{oE z^C;nE^e*h>5!jwa&Cf#Pe^x-WcFW%fk{ztyX&gkf;d!$@0Anl)xwp5KstQ`5veX3M zR|JKQ*x#a#)5Rw7hFfB;Q=`bOKO7LtF?!ae@tyJD|@ zFGJRU95Sqo|NSAOA)TE4bI4rR?M75idHiAKDCaOO&k=SS`_sioz>-u!KmzQv^7?q1 z2}lDL(wsdZs#KVHRoCkmT&x>XtdIYPpRena!Xl+eMG2GFj(8l=EK!OTDMchc`^5P} z1XR=4^Wz867oCjd_)9Q~`~Gy6|Bv6>O*H?=@-U+u>4N13{zvZ5CTsxTGKA>e@gq?Q zd{B|H10~5ZP(US>S*IsAO+I+9e%gRIL@yV_M(tXCn!$@i3c^^u300(0`j%I#vB2`z zCyi-(F@U44+<&ABlvjQaAFcT;bL?dQ>gTeK+Typ4JLbB^J61y|7{6=j-N;zUXP#~6 z{EY{CNHJ^`Q^aZ7?umRtIo}diDB&Uu)QOr&iaTOb2 z>FYeU3jQQ!IV+!31(HN%pYU(a<+9Tkipt#H9{!bK{@kf*=ymUbl)$Y2SeMG0U^*R-bDT)bAb}s-VccBbm|=kBM1)TH-pxyU*j)O6 z3{VRD`97Q=rsBYu)B8S$)&R4Fm4Ge*teyhh*zvq*;_RAur7I;-^uCrbuGn;yM*Pnb zHx#AkBsYpBqRG?>^z!x*oqQEaD zyF9`eBB_u=8re?A0}rcX07S6Q5D|3nK?edIB1XsxBlTvR4bhoZ1j`@?{-A9`%d{+SwHik<+cAe=Sd!ui zhvpTb(zNLY6{LG&@Crzhcn>-XZix)5Qq!o$5j~buMwEFPhN0UGKw+XnK@Ahsg~p^8 zrlMkx&hdHDwFs2Kl8L`eOWfuQJ`3g~Y1t6iLrKS$2EB~ocT*mSGi3UCq!gq&r1^=# z5CuTub~Z~30juhdIKH~7nt+|6htfO6;HeN6(GbOp^!>DEb7GrEK(&q*?lnk{D=m&~ z!WFqf=WXZR$_%@p!`k*KDW}R~l!u&T1YFU#)}))DV;JTuA32e-kx0~#oMF`7nr}~e+iD1$N)2$@DyLmE!X;VNRFCCiqc>iAe zSe`e(oAXaMlwm4)VZeWd_jMaf_Q6=njdpcIj7RVWHuo@IQv{Wi(T}aK%U;rjv<`lI z6_#bhWY5TQ5@KQvc9hsxOEX9+qJ=FW)C~92r@DHlV%%```?$5`1Ld#*7J9CMc&vi( z@oc6;!0OmtP?Kfd)gt%VDD@U0Mi5fMZ-?wtrK&S_+EZ0Dwm!+8VI7QpSU%$)(%V!p zU0}W!ovt5HNnB30Di>dfV!&UHYY%>)S*E8#7mIChUIYkDb%#J*?oq9^M@_?6&QCe1 znSrlHvuQHzc62c`_*LfT|dhy|d5A2#y<09VVy_ak{W@ zbsdq^v&5G8dHB4br@4=q|9gA<|HIn<2Xw*6&ivo!3oys+HpL#U>I~o+4@hukdqAQB zS}dX-=J3w6(E=JyQUYi=(Nsx9=j^YuWsekumCzC%M4TRuE;}7=8~TRp%=vY5b$gJS z8GZs#(N)<(P9d6wF=9bUdsdoVncby9I$fP_umqamNP+GEG#$@OJv(NM$<-rUhl5*R?gnQCV{ zy}jG{dCPh=FtY$#U~kKA_T$du=L!(60CCX*bXD2!wbN>?)HICjPj&PYXjjN z77R$+R}u-Nzw;m2$eRQ*fh8z{#h2*xvhB5Y=QL*S`-l;#;96Y3x^*~!2?bkTLQnf# ziVbkp?ksaFt?pHoHNnl`JxVDl#FME4Dc1hS9J9L)@!5{E1iQmBWjHnGw%7=D^kXn7 zj|2#^AV4lLE_0T#7||fb28ncZAWTy25rF*Z0&p^xF)_6(M;s(DlA=*?y9x#-EaD`< zNi-DlqH8_AOzzc1Qqy)C8Wt`1j~<^08SG9 z;~eOSXWucXt~S*meYU_J=Z)#ca4~fK1w^R+9cGGl$^~-Fi}NGK zpzR4tD3&uL$SC0{k=|0*2$n0f72ByXvD_QF;Y52hJApBHT9?t9KYU4Okqkas=GQa# zb0UK#ZTd-DXsKS%W9a2s3u;nXklynt|4$`HqUH2Lr`EIf| zB}f;on`VO~PJJN2bqfK|7MAf=eL=ctecA~GgJ7Cma%9`&2Kz8vLX>!uAm|Bxn)2Q= zPcu~>BUNx!dIx|sh8QO(8{nd{>IIQwh70U zf68ZL+(H3MCj!@Gwr>g8c5u^|Akre76Ww6CX$FF@=Z0XBToH%xLU0t)pA$q3?Hl@% zx$a%JIt$?^{H&UA-H|AM*+tYCzq0{ZBuQo^22tD5(ApiYoE|987%2%T%o{gaN}>$a zH1f73(x9lPf1b_K)vdVO#(AYtv77|urwvxMbldY?Y(U~YU-w# ztgMOc75h^At^_A&q&IL*C8`1GMCOUT`R$aw(nyasRnJBA-Q*Cm;%duSip08lo*092 zvH`mQLu1((J`B}EBg%-H(ZN>Ox_4CDS8iA0;uvxlH0;UtyDH$Zw4*3C;t%D?i)|u6 zXF`Hcurqf9n&&jRcpB(Hvu9OcEX9A_?edf-rjI_wGB{K@rg7Vf`Iju)41A$%C~?|- zkFI?hKqyDVXFK)90HdjZk<~gvAF&Aj#mb)xu{BjD9OOwD&3~hbY4qUFAPl+NW+F;~ ziy`}kPMMA8>sBtl?_)I!cABBj$`O7HiB{N6v&0Y#UwHeB~GC5*d3M zWb?cUV`%fk+-ce0Ix}o{zp~zY?=$go2xk!i=Jz}=hvpDv(xs-{8uLM{P&0|dNLAF* z2xG>^p@$|u1iMPr``K0{$2h5xUW`zhRqQx>wklJM=+iL`o8-o<6FkfUQzF;8;tp~9 zx2=XCAt|90lS%KtAK8My_2*$dnWigo^D&86q0`P z3?tUzqHuDi>D2L81HGkq&h2oOaELpi)Z!prE#tJuTfji&SF#08^We{JHufv5T@Dy7 z_Kjb1q)ER1{$QM<6nxa%%4ytL$DE^;>dKuty=z;S;eGJ50{P71pVadmU zXritu(dFbUW?m*d97av#1>o5lY0xn#GPGX$+EkBh=zv=Tm)m56>Dv)JHq{np#;H%3 z8U$spmfp*RcXrwbtCad-U&#T2^9X#uj);d&t+wdsATl-PErLqE_^88GR)^gD51OZ^ z1@$_7L}ib6)PEX1VF+#XgknatQz*wMVy68>wnVYRXL9Ge!4WM$keYjSazDXW0YwA< zxfymyU%mk#FuDAW?<2t>MEga+ycNvDz*x%v7y^w>E{BD9;*bB$^ z=_!^8cBx2u07xkTl|YV{_<|ExN_U~1DK@vKEnBbUosO!pf8M|CKX%UFN6;oj2RRcOUi_6^d{0$F8wNinP0y>v_?9UQ7$vvO~>J-B*KcTvR3~0 z?+OGtRKi8^VW+nzxHpBNX$z;1n`6R(T>!JfEJuC}Hu^b-Pn?$TMh?dizI4!2Ypyw7 zW_kmjHfK6iU&9>!x`7jxB&=C&qZmV)YQI}FwhXtfuW-7i7?%PL+!~0B%nqbDjJ#xq zFdNmgwH$7VB*K2d)|Ulwm+m0Z#Nw9g3no#!+P&HZ&6Y!jx_!%*7j_xo|w=|uAN!8%uUd87jglys_?Fk2N@PNU7pZ15tBpP z#LcIpz4%MaC*aZi5OqyblPrlIgQvapXJxtBIZh^mdJD6%3(MHvBC!>$iL zGL(*LS6FwfmOlDyp{A3Jjxo+Lwj)m*t$}TCGJ_(4Bequ^207x(z7ETwTuGIuf}Lv;e{t=W{ID6LY@=_-=G7KZ2QiE)Xo% zIfkMv$}!9m+bwPoD9!@`)$|9hXD7WEG05Yc1he-(iHsD6P0G1>6&8$5ID9Wo^2l|2)@I-ni4dPsU0f@ zCg~G9Fr<&s$A}ejwd3IHINPDUi|*T{Q|@63b=B6jOX?t6twY4j>1+mQu&l(K9bo6y zq{G>EYLmszsx01XQI6OUCeSC#arC}uvD>Z3H&nVQ@+yT{Re+t14AU>G<0jqgD&n{;0z(NiS zu(&f-w=vaPeVLdYl0g%Jjb*TM?yzVcO6k^^bvST`2I>_9F044ckFB%>DnDdPSL40S zme<%;p?#M8E_uP_$!WFLEpzepZV+NRHDA#0mRb*`QxRC?b1lT5hFl)Ys#bAjAhcs}9 zE=Rn1`YHLdaQJebb>^k-8fg5Ry(z*J44s`24j-B`teRub3u1Hv6Od7OQ=B7JO~g=7 zTgMB!*^{^Pzn9Iw;s`A4|Fw#@tSM`c&5qFhu5JTQOM)(a|6W`V+boJy5`KiRbAhs^ zA=TNZrBv!_{k-ZvmiiQ2mex#zek$201G~dBlg+O4_u?7G{94YhgNxIf+QKX$QN>JM zpXo=;%VffWlxnQfbmMLRK@IZjegaWz+LwyySVioubbY`4z4*+|&oc!xk4@PE8{_P+S50F!)z?WG{(yn5K4xYA{ziehuE~tNYYoFPDFH=5Wsd} zc8Hbvx!=;&A2Yl9YG%j(-jsY={pzpE!58I)sYVU@*33~27EutfLEnj0fD6bBezc-= z^<*CW*=^L9OB>Q2U__8)*FHBrq1ru@u8n1oZWnLxW#j*~MgVxYf2UrI%R~+Ufc?j% zO1DKi+JxtrTtw@UKTOrSW_$p}r6>T!4bnFgmavYQ1^buv&;qO`MB6 zLFJiLFgqSXKRc{@TW=v|aaBEA$IwkMMiUE;CQsJzWVmvyEGJYZ#`i-Mr-eG6L$*F) z7senEW#DcUIl6XhN%$K&vP>NZ63TabC5Jp`TYVReTpdB74S5O&QplWkLMl(Bs%NQEi}q_^^gb7zNi8|A?6 zl!T3yVT6Ny5H_c$ff6I1&L1O8ZorI!X1jKw^8QY^Q0*!>s542Qf>5Hu>FC0P^zvKp z)%#`v1`n9BLFCTPx-%!$RN0D-59^kA~6H8)ov_$Cj@lSu-U^_o$Ax9V>% z-q^DW{o1cKv)euoSRP#5we?k~i%oPu=v17O49HpM==ExxJ?PkpPcLN#6$&mrdxz|S zuY`o5$Qu5j?xVkkIE%D090z$+f_Murv1zbEmVMGMY3C3RZ z{%kd0ZQ)jU!Xz2NCe)-PCQ34_ktQNm$xVnFAV~zWbwLP`Z0Ir1($npOb;7Gg2umf9 z;e}7HZu$PI08g(N@XZjYDBF!=6zY%vyd{q%<_=<-_0AqfWeGeis!)nRjTnnt3wifO zQM1d4_LMP5*Qc((kM8bJn++>ZP`hjE!iCjSU_(LVRgt}qIP9sIcw;O*gsAXCQiNzj zQJpOrmIcF0ceD}4R&&^~B|nUg_5kKDFzx#__&JJSs2}o>y()->L(sSHb4`iXloDNH ziANa|2M@HR&Kr$+5~<;#zYc9-vC1&Z&;tCR`vJN6qz=xs4o&tT6D-^fEzbnsy8Jov z_T`j&V=(yjw4iC2!3miga)yFcEtkiDCeBg-mxNS?d+Q&~UkXcf%4-n%(6KWdNF79S zd__oL=Jl-2t-P4S$o7ipm=19a#ki42fG7qt(9_QKijHD@r|{3M!2Yk8GBX>;|3lCr zc~j&+-p*VoE%w|+7k)wr5S273ILA;ciGr4PCxpqQh7(@>>-9s-LAaQ)WTz@%e#u7e z>FDaVzWXFcN3_Gk;xK$ubd|Lrad1otQ`WZFPe_gEKOr@dCea74yD%swUv6(m^7VPi z*tR8t;atz#v-B$TS^w&IM^~4a|Af>!gZY0XI$pOxZ0wKYW!6Hdk{^i<6~Q@3P!)yQ z6kkrNCF^*T$vb^ym`skp`o|;Z^ zUxe?rB8rJ%xuhOUV|22?6bHFh?1I;9`MwTd#UFk2Rl%P-ouLq}r9{7cD1ndwe zB_WFde(pVwQXq3aDgf-{Z67-!GYuf$F+25cC@_kNK9mYj+ZfUc9j*%=ptQ}b`PIMd*>6fpKgq+~gs#R7+bp-_i3dcv}t zyet@Iu~euY^mC7j14s~BBiVy6i%i_;Ucj^41!6ojPa1X?CsGCq<%%6ADVS?<`s@0w zY-uM*u(WtEAO&yu80x$MH_zZdBvWae67@S-%iK`a<_wq(w25T)OOE}PN4~|>iwK>P zVK~p&l^hKBl)M8iF`R+}I7$_Y9*60TEhAru2!E}7QA2_8wb4_Lb(TKsSbdt=E^juE zm0muNg+6`ye)Y)n+eL>62n=kJEfba;pIicSCErJc(6B4zWZEHHL_@;=&z3m=iM5&Y z@9?MR#Fq|t8y|{8Y6y*b)O6Lx^!ZUOC^leQurO?gfC_Q6s!fIqS(w~$M}oQFVWcAn z;jFDMJjgaVki4$SBr4GF@))^FCoE;!-MYGKwsEA?<%Q4J%LN`@PrXP^@(KcaK}8YS#(F~$bI~)ZHY>&3b4&Y;^T4h%VU2+Xs3Yh>e`Yue^(3yQi8y0kOPGYg=3az`yl zeG=L*@QqEG3Vf}(n!l|v*gj^Knwsz9FP(S?T10JS@;G`VD{IAHU~+!3;qPaA`DA=+ zz6()^PVL-pJ8VqK&1In`IM8!5Muil0+g8@Q;!}9XRPe{At~=$HI|7_+AX?1joX9Q(?t_Lw$@XZI+;ZR=^AAG*)n2mk`q6HfHxx}*4 z4}g_e__-ql07}T4_HFKydqv3_kZ2&GJ->a8&x^qd&L2BC_H{($=`GA}sa+NCOak7) zVFR;KoOfg5tW;;s{MV$nqwMGe9ltYHZTpYQm0`hA{_nqjKvn*PU4u|)rxU>&qu zNB#4T@YUTzs1oQ(OzIA%B*%c0S|ZcV|3}Jn)s61NM)7#lNY2bs)%^GNT9F+OL5e#K zMI_9{miLWOZ%E=5VGz+&GD;lN01NbexaUMk7Hx~D>Sk}=#0s0-k2&#r6C$9|FScg> zG-I28wuTr&_)B6z^92lgYvV$!8gZn=m7V_Xjisv(w0JlGns>0Ajs_&l0D#eTEM zokli2*(R-58uTopUW?n#eXlJhZxn&!Mg3$pw~!Bvvk1y1vi|7sG6ozk)RIBOf+CI* zpcOMoa&_(GhoAapvzHS%s}rMtFlMW%)@vQU5o9C>r7RJA)wbHPD@wp%9W%e zqk}jGquNC6bipXs=W_nuO=49fQkY~&@DTTt?B9ZSF}fGVUF3!ba=d|<2mH|5zk##< z7i{wTPQn8UW;Qx@eWX)!0+-wAY~DG+NQm!>5%1sNwED-xGjTMOw%ydxCoy1dMwQ%& zS~3-*A)<_&r=Y)Y(Aed0+W+*##+sb$PushPG2P7c5EDABzkWVuWCD zG~6gmfGqWOf$A;a-aQD&7rG(!T|@l>q{9_KAR~tcd2@^>uHJL_<#<`wF1p>tt z;c5&zUwHv~(4;`BFeWTIVt|ljLU{E?jDQeCb`ahKag`i$z`Md#WtT>-_V%=q_61w| zrN+@=L&n*M{H7RUk4L9rGW{P@RntkY1d<|$%VJ!RmlBOuSS@_FCk(}dW#XG_7U&UPy6;?zZGpK1Irm@PePFrBmyCz6Y!>8N(>p<_KD(=DMYY- zZC2c*=Aw7zT|E-FgvIATE?z|xYka(T&&qZ9~aq@U8+bgV_-rXnJWIm7gI^?t-uJp@br=ZfH9 z_{WN1WdE;OBhwnvKLwfp^O~OrqoND9Co6A}_}^AL8$>gkJGDR>uCyM>=OgZ!p)`}J zWp{cGOm^|#=jn6oOtD$S*sr#CTUYmQ#l|tDs*ET#`9!3UI|*%Jl3^oAUdX70`X3?E(J5HiK?RVg=c zMt~@FQAV|&;)kUYt?yIA*sUox4KqoDN_V14Wu0AO05UE-7IGCyv_bAQlHW+eFdIW2 z>8UL(Hru1af8OhQOW{+X-6Non{oh+++L@wRMmB8*EnDqnIb9L}$)$vs7=7?b0F)32W%C7<(!w8ZH98cbs>=${Y2Qp?qT4hE zjIQCuInSAo?ZDo0yhSj;jWFyN5zOYXw)=<>%z_CK-AE?7qv?xz_+L?7pHcj|$ux}- zrZ^#t0PQAUj}a_{DMH!uPDc(+qwQ(HHHatj@LriNQJiy#s=nn?yskhHXhrFZ7cZw! z$+z6INMOiCw`WP&uHUScP_7*8Nc5wSYiwx~2jH|j!GFr8wd(yOAL**kUjwDEpd!pf zG8R#-^}#!F2BX*RnA~=rRXaP2ID{{@fAH}*4b%4?&`Zy%fA0);B>?@9JbGo)L;|}r z_>DtTYvp9oXjnu@A0bXpu?%r~6_)9dTDQ~r&1QWF&UCW=4j@EXxcrI!&M1!#1z2J*y4=dzw+_3svWEDVhm~$6rFX zvo!Ng4l!c8rF>#>>D^}aXMQlf<31?d&n_Hpkw@Cu-8*s?X;|PbRS4h62-r9Tiq9Xo z3VdR^6L2@e&{-|Gt>J;1HXqvBu7GYqVK`S2c^kA~8*YNXB>dqm ziLI{=ihk@v!Y!ZlY8!lfA5=N!kO6F#lXE{DJ9fbNMcZ&B*?>cxJ=%+u2`Rn}8i#iS zgPpF=S!}qn4#fdPNw#z`?j@fEhw47hdPf0D16>UwC6kCFcSde5XlEi623U(HJ*}ha zI8u(}sTt2ZkW5COjjSn1nMc7cFtl-wl2BcV7el;m8jqUm91YvDa`pzgy$|Rany_eT z2SV?}O8F@k*aX;h^LhH;>=g-jOFsS{^QyZBK-R%eD?Ot>8Z}w_sZM(BEiJiTzNiz0w__S-wPCoqhAsE2rZn}gT~iu9icMvo z>?zh=k@v%OBC4*0A!IqZA#f$Eymk0$?%%+wGm5SMo^t;pDlv1i|M!~3xZS?kkCIL8 zkrL?A`AixPAjtqn7Jh)RGZOrhEy{+FogiY(9A7QZik`A#MfU`gkZT-1)6!Gzt}K(d z%Sbp#kIuKFtF0xK{*PyRa73sGgq&w#U2nqDzD|bE)+)0w8PDDuM1n7gMUw(ZTQl{} z@7L?~eRV7+^FwVifWo#0@81deI~1v#@F)D{{w#|LcB4jVfKng`i6NDsc3ZrvbSB?j zG%Sn0Q+k{Yv+{4UJ=627ub*_=*i$ZbN@OCHa6RC5H}wuYQ6B5B`Vt~RgC(g=$u!OF z=84vdu9EDB_NK8tG)ba{GUnuqR9H$4CQr-+77+cRrvu0PfD5_Yj zO*L@tqHLHK<(1S+rZa{>3*)=ZLog>aC!?z&UJpbRYEjdR(4a`nY!XU|E02m*_c`?i zgH1nW%2a?rOcp8qoT~_%7k??dk*u(>iI?JOsTa82dp5X1Pv_{QFVTn$KoP2Q#08M6 zNumjF)SnKK983HCnr5%zWS8hFwU70TKBX`RHyUdVA2-65@njvuk@3ViHq#^Qa(s8= zF)J19n{w=%8gDgVq|lXlp%*~Flh=ifsc?)ACXIsz5Y)Y#6k;3$C~Nv&vMHRMsx5$b z7Ya!CNH^UkL^N*A3WRE{!Z@c5i52$3)+NbbKI%wOtV`yN4FnC9-DLV&sh6FVQPQkH zl=_gZ*;%z^rah$vAW9Z8uo&Zu4Kge*HkWKmEY%(azMadZWW*l+ZhZ#ggK?v@F>uCaTNU zpaO)Gef6O#RBQkJw*~b#vi=mB?wvsJgyEaU+0L*IkWv_L5Xf7h1+=(e4>w~T0amAE z15g`=84??1O919^1|wQ;TugH-rhD0a^VoMLfh?5A4Qojxn4&x6(Y@I7sGL71$J||B z073-bnKN6PYe7FNoZUS%b>)x_2>Y&X6MoY97K}Bm*LkHG-0%L@%Rm0FIjrkFVwUZq z^x$Jc;@+;SX|m+W=$@|;Tw_^-Jv>ZDEHYi)6Y&OEK3a)T>07!jh5!u^$)j6G1fmcU_yL11-d#ZCzbv?zdb(N()8y6p-Pi z#=qszwSgy`J0B6M(g#9qGh96-#S2>U=bhQn{(!fx0w4dLa2wl^__;^TvIc5yN_w1x86IQ+kYMoJ5SHh>Bsr%qt(1x zm6J(V$Skr5safB%-oVK5!7)ltHS`=xfQvjbGbp+dHZN$O@@=}kShh`Ml&s#{*dNYd zb!huuYtjlWv*Z|~qVSH$AS{W5VGMI+af1nsF&y3&idOI{QmSvChweI?EGu1eLW%?s zuPrZ|f#gg5z^u5JF_yFe7?htxE^g(RS)!dhLx2OTRYm)?{XIH;zb&z}R>uMl0ccPO*$-i`d3#4>n zaIoyQ=WtZqzI>z5a#$u9?X`Y$5#{V19 zvu!p81`_~~Daql9K=1VhD?0E{E=*lA!*=Q61ts&v?AQ<9M&3?|8QgEkM~H#ZhALk` zoDniVCp*YjrDoWvz=CBcu2OySjpTGat~Q?3H+@EE9i55mY!qC~9|x!LI>(8hQjocF zQzl<_dftv0!(MI(CtuHSF@_vXj=)>c*T1-(FbM|8Rqf-4Y`x96;i{w{CXSYq&6TU| z3&x#{4sRuA#JKc}1;)>f!=HFMT>0>|1PxK^gwg!2o0Ln;dhEimk6_-wlLHnbz)HM+ z3Be$6U3>w?GwuZkg(f)BqE{o%9G-pWi+&B*3xEDrcG_(Rvpta%(hK1#xETZo@#A?Z zW&HufPz65b6ita^dtro9PgOR%7aTy2_-TyIohIfj6HUZFSpWjs&;S|t=U-bS>4m>9 zx)dYxg|1+bM&&~-@Qx^&0c%l!Wno4KK0*f0D0fo;a8HXaksM~`VP}*yc|jxDUlzUa zVcxtvTlakk^Feo5t9#t(VeDt6#qSqN0II;&?^jlHJjLwCdgn2ZBU5p;?2d3sQK*+# z1MtC|8q2EMg2tcN50{)P+rxtCdpktCJ8(p+@5f&~BpVR-y8MJcQ7N%_BRw$e5_==w zqfdGDfhIubqa#+^+d>DoBImGBiNWK@xK`0! z;jcmwZCYZND&3BVL&J*cZVXcZ;2 z^5n#8U!8|U=3XAC$9Y#-&VJlZkd8FraxocDjqz|WL<$s1W$YgHz+0>ErmbiIq*6EWj3;KaQ?Rg|3|_8KSYch3gAPJop=<^W>KAz@F#?wEIf-y$I!79S|!ok zg75AhAjVLsT8T*^DAWTIKU3E8)bn(f2|VVwU)S5$)!C6+<5ZBUjH!D*6KTMWj5cu6 z{DocOC)fKJN%z;~6?w`5uOzS#=F*<&AODxbqt8zKpo}?Q#(oqGYwrI1(Eq&L6Ia6j zu4ZdbuvoQ9L6#Gsrxg66Io|NS)w*I|O`45*{cX~;@Yyt$zT7yjKG^}ur$FY#RRUIH zdOVn|7P8obNhe@T<>-Sa5Hszom3lK)b+D9Hq= zcAh{wCt}W-)nXfQUS2{sA!ym$gZ?oYY1;mm0E2(^Q&f{4zp{u@mroc;mt~bR*SEba zL;J%lc;|rnc{}liqL84$`fDA45sKlcK!8)7D?-K{X`@h(rI)lsafBy;jvDmqQH?I7C%Y?NnvKp9$mIhbKNSNxhl`Cer!v7$K|48WsW%n zVkoaU79P<8p{6Eod)F*W6IF7-lr35y*Gc$h+-}*0pC@^nY*a1+to&vo{^oZ9<#oMO z$9wGo2{G#c&V1|dTl8k*mg@QEP4@D;x4IMbJT#7smDQBitz^`uf!FNmm#ozSpgRq;>LOQ-pUD)0dND0==AKj(NbNpJ}T0da+ zS2rKPRV(3n^qq2pF6$LI^E+GU4R^oldJ1nlaz$mIZ{0po>hcp~UDPN^B^0buedK_H zfz6m=c>}obUlkG`$?8~>S%Nj$26H&EalkDOpgKv1m)E*2?tya z@UinC#H@-BLEMK4`FkvLgvqbzLeZHVbRz4;F~>M^DDCmGu6+byZN!NTXOXIcv~gV$ zB*)ILNIWrsyEq9(5{7!w0E!OtQ=;2N{a9{+puM)yT)%V_WMaLx6^C$q(~5Yb)>LFZ zD=C4qmcMFd$cYL*hLs<18>qKPn4A_R!3`t6AF!(2QP84`iHlUhYc zTLi1E$mtm1lk0}0N(`6&*Y|<40i)9u65BQ{_eVk~_;6plGY9YK%f;?x4jjwwx6=o? z>s`%0Xr3llc5Q>0my4Ufm{sJ3teZ6`Ft~rhJi%y@x9e5z_KDE=0r%+s8~P!?l7{hd zyoYcG_Aw(i^UCI%q#P&{1*-(!wmo@*JC)t*EHY$*BbAiNd1i=>i#aoAw4$;J3Kh9S zJh<0g1GChBLzh=%bv?&8@W_S%k-OdeNpzyc!v&3!Ni+bPg2}TWB58M#B~DGH6yOdu z!<4Cs*kNjYZ1h?KR{a+HA%#kGrC{k3K-`PLT@l(-rZPX1=jirNsv^b>twcUKn!6+1 zketBh(YO2a6PWjdq>iD6g;xbPDimJfI)tnt7?DN5#>JrSgD*H3!14A$w^sb%p6zbU z{(Q^Qj3PQENAg5LY<{N3THEl>nC}GMxq;-lU<$q4pPXow2m-I(5-Iz;cq3^clErW zs^6_h35PJXMeE-`ZC@YT>wn{Og8q<*zGhp067pm{Y@QS{vRNx+)LdQIRO#LG&%#x$F1%uc3NMgu~y;p7PLL-EVxqQJUcsNkDKL z=^ytM`W|*vxV zUS!}6fIa+8?SsYk`^P{024aK!_)98aa28xvBTfM9<%FYh81I;dMT!(QGKC~k1R0O` zFtvrcJZ+|(zHA$R$q?=NI<34vEfNR>ETlQ?UZ2LP?gf-KlsO@^@ubr>N8SLMZ5GWZ zfEC{lrfhJ!Wbh2YI2-8&k0WRD`@GIJvDBo0@{#E59$?}IJ@XrkhA0=0hHPlUj>t@~ z0NFj1CKpK>LTJX7{pxZcDto!toJ9RWd5I$NjCQ1g5tegUL6u8NNSEAjYJRy)XIT+G zah?E>W-7G+(jc~ymQh6;adP2Gf|QX=FwP?HM4oJH@%Kr%WYgPYfZbc|FA$*;Pq9lV zmX&44-COf#N;;k-t~38QSze|gxjL1gm;`ej-*!*4T}pVZ?)|iVPuzV1N2Eph;;6!8 zz1G+SuqdVp4R#y&JdD+2-{Iiy`&lA1jB^wXBDxGrDlgnm{6v+V`hkUH(IQO56Acpj zgdt_|usf9J+@%x=Q~4Uy8!+Eu?*l#(-`@v{P^0HFRhD*0XK9VSm22h%NWkuj4mhv} zWj41DvYO(`v9N*cTux>v1N#e?K_)0&;_gI+jpr95%RwYURT2b5ry`=5_k|o@;t-L8 zu#iv~*}&~v02hQdN;i37{SqVn(lb=#AJFp8?qVmjZfa*2;UR&(fP_e~nB3)8>?hl& z-9@Tnxb7X#zHgQ`jA9D3Us0^~4u1CRBJF)T@sFUj4or*NZ4FiYGbi9IN>wEhC`xXd z$I&gIyzR7S#rlPmI*O9TMvy1Z4fE$-|B5Z`mmkE@&lGL(^Rmo6_TiEz=RFQHUq=6$i_K z3TsD&#S5t32*JojsMot1<}`{p94w4ysAHzTuT7Wum%*HjmChL5Uj`XKBABfqqsJ^b zI1R=4*>iq|g=$4BM}|8t4rg3YNQzbHcZ&6t_GR%LyfHiJgJH(vFQ3w9%%e$1$Aj%) z5k(k8Z}q32R$G=IBPZaR%i?y91iYCM2t1E?0%q|`)_S*5ysDRy_HnH6)bU7^AT-1&8SMc|9#b338th>+ zBBafL`_~k0X#)f(^{i zrOHQP1yCoeKMc^t^WY2gk}|w2%d*^WMHnrTRpuPlFoxQ$VZ+@zjnI9TVGW}LK~b^k zn0C|wan{U!p&d4Lh09+hY06V=eW8iaB`j56Z$iz(=-eH@UY+`06Dj-~5N>2Q=Rp-x zT-|(q9iQ2yVa<*HO?#MrN*Vs&ss=Wu|5$sbHD&)nq5nkW&nSMhCt%dvNs8H#JlE1Y z!oCf@MPw68x`;^0k~#PDg-$?CvUr%30Pm-@` zgsM(#6`q(BA~dlrOkzfCwRwK}HBFkWv->YDZK0uMgaTNvNA|4#->%Qkb7NC7mth$P z(U?~5Vg69Sizzw_T;Y$W`zXiQogZs~Qv#&8V~GOrTCXR)g@*m%!#0z2)P=|}r=C11 zp83TsE#(KzR7GT{!@`3po3bW;Z)c7~Qx*WxBIzJYZR_2t+BFr`s!f)wMy2mxA1K9>qB2Lwu^@En?$Xf&$TSVYQKdWzI3kH-GI3Kuqt@y<`O5+WQ z!H7VDB>I#92>^ffElkFmB11*8NYN+|!)Q3iZclt*HsJ2s0>z#fI{)_r?CuNkP{D{3 zQ7g1ZULDzPY`6F#E;Q-}en--ZXppwAdiwqz@|YD6@DQo=4)W^*-twtQjy+Q!aXQNL zPWn)suWz^D%9+{E4NOz>JHx(8-x_{~ViVmW9cuJYwY(g~4$gd}iK`c0xpAB-T3{V$!&trLnPJB^K1eq^@;h&WFUQHG)<<5k0?>2!|ZW1t2iLU>Vi>QMFijMRtLfC{P( zvYmEhdNC=SH$!sOc@`2P#1q-D%Afwq$X*`Yz@x_FQxRA7o#A-wz*GAJ*C(-nor zh0~HfbX2fxx5jB-`D^vcT8k&uZ@SD|xW*|Av}ue#6yPr$8`jf^k^?Auu_P)$wNAL? z!vxkW@rWGg)?@WE)(9Yx6{OQPG6dIQa1-dXc~c0KvdwLywhMwqiyG7`kX)>;GqB|( z>e0WW{gMxn#;)Nhcu7HOhaPf+US5z_&tAA>!Y`Q2nZwgW!;6423=RDVU|M!d62A z)o&d?Z4ZcVpY65T$^2yRw5mzPT!79oZ{VDxoasku!jWsWObJ|0uqaHp7)1()Jgi2-Ai)-m`d-}dWpOjIvkW?T+E0R%qPgum-DJp;(#gWmS#O&v>|$^xBg z_tC3j=jGBevp!k$nO2*GUPUeXJ*3tz#imv;3{$-V5$Ds+-TN&t!z&~BlJr&9(EB5MKiZYLMWm}toAH#NBIKdY!xVJTks*pQcK(kskpNjRBoLY<;5X6GVX~#F0K_)G4@AkPh^~z(#Z_wU~ zZX|^I4kQePTvp<+JB%4x7@;TvhaA`7$t@KG(HG8-zf!eEImoteo}&~p^qPfzWpaAy zf9+P$GbfHVaj=slQX|Dex(eSiA8bkeMNjH8qiIg?HO*sj5Aetrv`n@SVLXHfRxQ;S zj1@1(*`Q7Wu!KPsd%EiPlSW@YLmnyJ1s9ps_A#J}Si|a?ifZV?zh0ZgTeDfjkf7ds z{t_(xIn#jSSpL(n(iXuhAnwR^0OS=;9I%qRJnWN72X=!Y#k$N0>l6|@5+dBfR>Mse zGirgDn7`*ZP)C!RecclC)ug+8;G>5{kNj;ggVCK*qh)Ik++Fbc zCu(FXSdG^LLL#U3wjG;Eh4-}jW|UjnvmqVo(%=PnE*TWP^~4nOJqtQ_!r61w_E3=# z3T`Y6@@if83m|4zmEPdFz-qj_rI&vzhapf{$sGl zwB~=a!411#OoMQe3~*%N#tnU4gdnVth zdQk0Jc1_Fv-xo&x&T0q~;7TcCSR;6~uUoixD3Ea^KFL9R#4+5N%dVO{EUtNK;cCX! zwH;$I!S__{yS*+84*x*?Lc@t?WRrquoLjv7D~!D$g_ROb9R4(-cJH)stxtThFO45? zl?nvSO}fa1xagN<7gZJOVTlOJ=@1hqWA#Uq1yTirF#Dn9Wo>Vmp~*BWuA%B?)tVV* z_;*!CZ98v(&U+2Yg#wZyaOT`*UB4nn7~JryF8_IWpRK97Z^EkSyenzb5J1m9RqZU47$`6H%r`oD%HXtCB1u4i zDJk_7Cn+}gok+wih%%=UGGcX?;*gNXRH;@E$}-4(muL`Lp#sOXq}0HL$HP+V?+HU- zJOL6KRUqwBDiX*Bkm433+pYTy*Uz#_sfl`h>zO(hh6MugNpNzP}?}sJgQpgm_`Jo2Zy`44@kl>hE=uq>Ly7v|Z~z zG38{^%a77+(@f)U*fDTz(W4)uo&^r$IA*33$P76;@cxO)be4|&3Q$-Rlkh%J<%yFq zo_K7@RS1hoOz=KBcHn@WK6u7~#cFLX53}=iR&`*ZRN^mCj5ZJpbK21%68j9o9AL<_ z#0>_jznE#F+}I(bXdq)kHL4&285+?EqXMyDE#<2asmVBn(*goKWCn>Lz(Hyd)-Cf! zPfz}AG#Huw69fnx$?R#!Fd*_+@yzu4#pzbD25$_aO{Jl3HkD6C8@a|pdBP|$$cU^7o=k{h z#tNZuQX)3weP!#=R{HDZN(ti*`O`-$t1JFNySIB0l4&Uh2Fw^ZUtMg#Qc3z zW}9cC2AVUq_}6MCQOJAKs9S18{WVW0F2&HNu`uIRQh(=0@7Zv)ka;9~9hbbIBD~3i zH;hEb5$?EeX4UmC##f`~8pp9Tb*ZL_^|KiqiTn%=FAN%S;f{2D+nZa34`aO2 zVtl?WER-SVViJQ!DucOtY~tE01{gJC@;9!w64pUQFLnVWy>F07f^Tbc1_AApoX*uY zkQ_)f)gmBy6!u9wW+wRhbL*0en7nowzGOjAQT!1vng?4(us2n}FC%-vb%?R||C;tJ{J~U&_kv z_C%RLjbCc~1lvNW|J-{8b0%hZEA?;begP+=G7$W`X#6XUiGk%mwP2Ptwe2_AP=0DD z6!5XuY{&ojts4Pv&cSUDzc=)ho*S%Lkxe!7YHO|*uG#Mvicpn_NZP5vY$j7=^SnIV z5sNl$#+dBp`+B>&-AOe~8C7RY)a{r{84NMo!luQTsaIcl-KR-%^>)4kn%x&?f*but@xvFysJ`QUa=B9d7Yb z6S{ukQL>6?(XMyqed424D>9iJT9ue-Y9Q14p_Gjd4#ABufpFBeyw06^IB*u-;?+J> zm_2Fu?#kojoyiG^GN7^ODAhj7X!elkZ+(z~*#b1Rtr|5oGYG|NO3L)_V4IXhDoNwn zyX85u_g`M!8mQTulty8JU6-3*2XOY={(eKUOb)jB86#T`4GIR7Cbc%*&Upc@1n!DK z*0;CplTB-OUP9&&D=BTlW9N=%B_m-G97vnGeeOSddNeycXr@gxQr*b}AW{Mx#Yjw$ zR(H!yz?nvDRycyXN0aVxLxNY655DunL9L6mLfOB7X&p4R_pW+FUR13v{QA2BMHGMN2MJP*EQan<1gqA1iC%5Ulu zE`x-pP*%#4yF~J35)27{xA+tN`5tDWzkM$9Z$BS;sGN>K#Ts9a%BO**xG* z@B+Zzw+W)x<`$Cyn%K6sX8dd}_>bUJazAB3YpGo*%3Tg(1KTn>RuSq+Qna811~wF= zBF7f0D^-&}?b`KH-UbONQzwWmA^G|71f}U))=|*#`~gIgA*33Qh_mCDGMw?mo97>- zOU)ar3MVa(^{Bn)HtHVpmZjT0x;520I;n->q6o+UdlV*P<}f_E7m(wI+X`B->h$Cq z6xnROZ0}5)vJ4<_LRxAnyC%R-;0iq8TR~h?6>J9CenJ$UQsILkEZDn!JI{iD>|aDn z3HS*lfKZ$?q?saXo!2_;3J?hM_fl00IVX@CgM)2L=(q@UbkWyG)OE&2DL&JTtEL^c zDGz0CDs$qh2Dz|VYLGw5@bzNC`uMwfL7|%(Tz@O5)>tC_CR4q9Bx9)34Ti-R)H6U! z3*7@{?L>wTV1^1*g|=e{59n-qu3Ss8=yfIAQG@8H0bIYE{fy6Tf1BH_Kon+bOoP%P zriE#Nv9bsU*sJAnn-2k_n6X(_?$;&q3+vh}RS_4$ z74g`H3Q!sx8Uspan$;^uo*8>i6b4JRGM@;R>n4vSPR{vphN}PxX#7i*tRF=+uBGZ* zEF5>gIACQ=rTYji%t+8>miAeMwu=^UTpw1_7lUI#T7W`!RkBw3&UaGm@ROe>S89c) zRH)>Oy8>|mOf7YY*Pc=$KN{ArlAkg6|?Ox z^b6kch5>Y06`d~Krd4MQDfb*(hk+a;!A*HlhQi`6vk2a0*+=WYjHxoPGzlyt0LD30 zumP+Wba34|{sk+lyS|1r*ls`ZjF=$P};Ul-G@g_0P+5 zXiF`|4E23q0Qdv?mKyRKUh^DGLX1-tU-?Hc8RVwtDWpBTl==Y&Ip_45KUXQ-l*I-; zt&BX6I(#9U4IBBsMg&7^PMej#<@<8+M!06t!o}u~i z8_B$afMj#6TTe7MVt0H1b`g*uNus5log#K0f82^p7#K!VJkiN;dLlKni7j+Gz zY(IkJHu+461Ox~_WX*-q3X zTjr!MhnMZc?cpC|DZ18(%KI~eG7xgMg;j$oi`TBHz1m%7;o~Kqe^81~%d$ZM%swN7 z)al-%>Yi=Zv%^Nc_TxIf%#rgmo?*tt9`fG2B-{csWRv>AtH|XQVO_MwQxM?y0 zILjqFc=IKqF6Z*aC6ww#0dH^hjbN@iSYWoup%VtP5e_Rtssao*Q|DA(vZpM*dPvu9;PxJOA806t3H}N(W0BLl4rYH%1)5^fW?iL}pwz|c;xn@{Yc7F&9zW=Z z`jJwd=iKj>cY6^WZ41X+<+1Z&fD#VeBDBi`Nk-#U?F$JDk~&i++a9BY zW=znyn<{Vy1KbQ}d!~GBfQN634n71?gV_%N6x10hpm6O2n_@i+K1Y;&Y3n|{xoKCn z?>Oj)CtxiYF2H^>=Cy=2bN{<>rSU1*NMs1WXhc&e$`Ks9n|iCOkalUbkT%B^d-p!c zjj--f6PUZ5_zL@q;X4$U5{)h60b_uYBWOhd0T*7pcP&WFrzl-Tgz8NMXgcHqc$!qRL2#t}R6*IP?FpaEIxqR7@LzF8A8~vag!AnY#YW4Z6qdTYAYWK_KJv%CS1lAIK#$t=ho3_dP`$P0T{;6yR zNF7n$rUZr|kmr_qbKwFSm%GYOBe;-F$6ifqBg8;g*){MOn`aDQAVz-oFzwtc*dVfS zMwc#;@{!ITc!T`Z5)XsI`|+56Ai_AKJDf9y=(s8eog51(AwnYy+C9$8i@I!ljkz43 zFbt6pey!U=e4rOgY~T2OVmuYx__p19d3KGhH^2%O9UL^!3TDUvd2$h3fHA*C^C#xY z;fTuxhY+$`nMxT@p(r~fp}2xU>CQx+6gW+Z>{75Wwm7*JXpSJp;!QM7_aZpiGk z$-eEcfz6MV7ui?Z>at!? zrhy?a7(hir62p(GysRr;@5PR*$MDoey|6@G>Dzn(*bs+u^s`Vxvvw8~hX$yO`?cnU zp5cMH!(bm zs#>p|RwqN1FsGI~FH77k8_v*BfyjsI>=3m z%OLnsU=F)&hlJ++in`S|`8Uy}zKp&cLv1;bwZjjvDw8ar^Os)7vr7?A-}6-;VPtX2(k+2@+;xT`!9o%NDFnCwZ%soNU)uQcQj#ZVtdSlc**9?I=I&I)i_ z^<`)-oEN^P?y~-30DxRAM1aZ+k+bQ1VO zV3$HG(_=%7LoTJ`>Zbp6>L(nV+?ZPy8k*i#Nq*|r_mImtbHkkTGkWx{J%DSDE=qg^|$rAy>E^GXX6J4?!TX9=zazD z!Zy-hzl&5Q(3P0P4G2n(p<)WEe3PEuqyv#=pXJt$z_Pm}+G}M~o~^+5N{22{S)920 zD2{;{RgPgP+6>f!Vc3 zgOPXrMcO0^Q34%3x!@WN?~A78U9(%sFkKRB0f>qIZIgo(MasgT1`Y{PD0iGu4M)9Z z-7yJMbh20X7swRxBnxR|nlWDAJ#0!WSaSD+9v*yjt~GQ_3E zRsGbBTlThd3uzYCNt~KZNjY#~IWMneyCMJ@jpd7*`cD1iclthLCzvA!jl{&y0f zDnQXulgEaaJvf%~IukB@r-YYs;2rWHsS;rQBKbUTV?;QOpcLbD9*L4r`S>DcMbqO3 zHUMK%dVu*rFjvOrt#04&%1izYI_NkrP<+U|VE=*da`iakRXNcZg0s9j@ufagv>(rw zd?pkLHnta>CIy5!g2jU71d(($z2yauKe zmsIMQkd*xzi|cZ?Eh{h|0aT!&XSzuv$a7gi(IQ?2{BE2sM3db=SKf6 zuOWEu7FS&*)a5E`$`?qCas6?FjvDJxa|dYW*MeU}PD7rH8YT@;jTD^;peuvzEariZ z2s|{N7E+m2JfMkuD+n~S9Hjz<<GAfP8$n&lBvqaM2cVFgM z{ryW~mw|l#br%qXTY`UM`G?ulO$a`L${js;Sh}Bi4TSCMHwMUOAxHDXfyeMkachi} zSkNg|mjorYI#zyiv3el6eEV;7tb=<$nFTPZmV6Yrd;E!`S|SjgGvk4N?_XF#MRh^1 zvVaij00hkK&?sPGF=d16mXU-e7V+ST&7`G3;A9_hSE zkLuARYJeK;Zs~l%hLT}-{+nR!4Hn)pFh+wIGoq5*>g@fbXE40}@LT-W&iQ(?k(ew%=Q%pO*6P4R6|4FBoGmH(NJVnr=bF!qL_-kWZ?@ zF-Or7JB1n;#SJK|+>#}=xe$Px%c@bQF+@EyI$Ka1`h``{tOdssgZUk#5TH)15gb74 zDpN?3(4{-2h^0S83A(bd^gx-&w#K@zct>3CfsW#WvU)SD9+1po% zwuqkuv5McGPsG;i*biTxOvTRYyj@wXU(NV%bKR$W&G3ES;q_`6$j6)-jKX9`AblQe zpo7dV$gPH_^!4;+@d}Mb;K{pskG-gF2p;2Mx+3&O@_ahpJ>g;geTVPnc@w7Z|A8BM zNShP%8iml);rDX$h<9u=K{O9Oft)J*2!d7O@Q*QsqRf!y4m27OpL$Jx`d)edEorgcuYzK(u2{Sub3eMUdcekYGt)7OD^D;mvX zn6BllnkYtohOQBYETl`bv~&uK>@jOVhC7$MQh~_>h)C!n_HHmT&oL4@#*<_0o4VXi zhmo?pEd_s~QrFb1#6PbpX9Szum;3JRoNz_>SuTP!k8q@dc#e8BHf5+5#h$b)b)h!J zzLd$lplD|Z6dc|Rh#E*wa8Ie)iU+FfPGUR6^2wDCOGq_zDj`0sVxCx*NyIm27U6JE z@4!_U!sjRMj|>wzKk1XUMrwr0>GlL@YCi+`7JaXt=z@aZB^of1<0=HXwya@iEKB%n zIk{Y$*x5@`u|{K>-T|#HCM2mM{nc!Pk77g8K97gLa~q>});TgPO3%9m5hvuQlFw)sJ+6q(z7%9CLxB^Xy*C8vHfh=RDxkCiodsaPvWBjmg42oned_SGb&~OI=X+f-dM| znYmbBzB(3Q7gk&@7vp?U>RG^C91g&948Zd~kP>3mgkQqpb~RV?OyDlydd~_N-l^4o zd@j$_!Q(DHwOikrDBX@Viz(O2Wg%V+a+sdCoAR_~4pMwJKt%<{bK^L3%f1JlH$IPY zwd43XB>GRso@sSy`Aq?Yz6WX_K_|HG^_O5ZiI$)!JgHK# zUVtbVM#-fSx#YR2~m?1T=K=xl7sZ)SbD_GUswjv__y;XHc!P0X>7N79z0#J>Pp9R69{<~^kmo57B5#!e0kT%&NHjyOkdAKa( zSj(Ue%^cTvnprhM8-PWrmGU2nU>Mho!U+Rf5}$+&z)RKzmp+Qu-|3eKm|I4rYko`> z16oyVm;%kGi6ThawUgXtV0)q=18ZvRDfBCZV?V@k%Ogyonml!WUb)7jt~lqUXOie- z#V!#|Ch+^t1za_4Ma{5CUqcmpAwWzSh}y&Pg?tOP=>-N~F=Mf5>XZ7DYfG$sNa@ON z=y(_??VtFIhfi2Se!7qNO(+y=i{bM8i$~gSYCEU!LyyAynPXZ}xapf6k9>2%4J9D` zGvq#YP-mj;(5dJCZmJXm`58qLc6=dK7fCn$htnO4Q%j+$R?j;g5IY!M_NpD#(lAzG zh}on}ct!A`1)?bmNAV_4DaE+p8^g7iuX=cGC1~*%X=$YOT3lbozsGiU`qIO!-ofU20eHjZXSxkGq zIDJ0ZcszOT^w?J7r#x0d6}o)=rde?aRkC<4Kl&t$_PWx)%+bC zX5At`y~AWsX0roK&S;*#Dv8QS+kF_E=gJfo{$G##U)&dDhl1?m#Qc)Vt9QjRA_3bwAZlP|`E(w8;)w8$1Fa~D z@bRmSkD#Y4SEo%Xvy;|{;X9khtj0W#e(*yA=`X6i<62)WC{xOFCM3Eben}Cdtm%GO zB5Fg^#)WKEBXP7b6;fF@mu$goH?3XERhmN=lrMIyk1N>QZ26L<6dEFaSkWUAzcccg zARor~qK&e4g+>+wZ>Hcm&M;^)Mp>hPEs~0@nnGjiEL) zx_jqJyytA))P0NHgEF-eF1kv_-EFZ0CdB#N0qBK4?3*VUu^=G4WMK?dJiMRX80=!Q{LY#Az-STgS}yr@=zA` zE1HUPB-GqvE3UajGc|&{IYB zXmQ&^j`a94ZQ~82Rhhs?OED&%Vy}&vuhRS+js@#P;PMxm?ANHS7GcPBk_MaoP1OW~ zu<++!mY87zAh6l>Zs;<-Q*=4=mtSpD-sjcc3;s3T34GAk&t?<=wFS`KK?r)aSytM^ zZb3K{9SM4>i}JCU_qkY`t}9B;@en;OKts$$(Ylip&ny;m#o5fov?)7nI5r0%{00R< zEqKxS$M703#I?CQHP=qPIr|3X`{6jR%PX05=j?}F2}vuihS|!xL2t*SZlyZSrPYsW zRpZva=D$UMhvfNEcg2RY2?72EHntMMdHXRjGTdF$iXHU-#4{~5EMoTAv2(2FHsYyr z|GGWH4*`Iy^w&r2@VoL|JO)MrB^w1rvX`|lv5UEIGl}Khp8M7U6dqJj8~I*SVj%kt zg2&dqh)tbh*}_JZMF-xnfL#htlaz2p^!z4xi|Lb>yWGe^s0pUfRQ`-=TNsz#3>E?` zeeT3B`$ONrQXzHNAK(wK-Kzxpsxi4aSz?R*?BR9i?iA_@km zCWXBXjE8%`l2MERebXG!9cKtoPxlM%;Dv6Cdn}j4kLo}aV+D2O~}c;D;QxDurBe8O!sGG`xjjK#Wj7Bn@uCO0UEb z$;2bVM2j<8_~Kb^6hZPdsW+;mKguMDm9xe&1@DQx^mEG8QH!C=i5`YHds4(Unu7co z7fB=MNdQY9q#~UPNr32+_eQCtUd!A-_#RlLLlJm+~1IDhqI}31Z*N*q=3oU~d z#GDCqBLBh^fKU;g)HY`=gW$w{r!c;>xULW;v){&j)G!P)Y=)Y$l?4*&mpz27qvwEY zKYSpYv`*JH!FDZE&TZJ!euWn|fuBi9|5H1k-@<&+xr@41p2`Zbk+lBd=-Se)N%l@C zFv}e10XBC_F32@0EmN^&FLk`2$AOh9%lM~uQ)v_AjSUJiUqOfDH#zg4HwO$v7vD!0 z^|cM)=XW6~c2ChvNB68@7*rvsw|(G>t63*3SH~@OY3bH8B^7CNfw%GF5jG4#q=q1Y zm7MfYnT%97aUdzewoYxq&4$H6pTGgQ^7H^)jv&x-1Srrcyf}pSY0u}(G>+qwz|@V` zCEIzk(yF#t?!mg0O8q!NZo5Ve%feuGL|coNGJrd%ZeB35Y{0Vd--gZXRo8o$kcQC! zWTu#8!)P$ReqJ>C?s}P%^nAcc`Iq5!LK`@YiHta$sT#AtQHb;3K9j)PjRhj0os1W; zkEA0ViH^H4=#N4@7z2VnYdJmEDpJ27RE|IuAY#17x*d#*~$Nsb_$LWYaJmT-Na2PK1=NBlIV)N+=X(nuX;Il0PA=p^&|iN!TA8{Ty*dwwup~tjN-T z(MAsd9S$Im=Yeub8ts=;;*1;U&45n3gGH`YJbxE0M&iCVQq?OuM0lnkn%35)+og0i zHKV80;TcB{c-&vN0mb)OPt{v(cMUtJW^s3ZWd-K;1~!Jmc5rC@unrYyPqPz`fc)olg z$esbtJZn3SyWM~rp$C{ic`U~d!8O|@8kxgF-c&f=8$%A?5p>JU9dxcQbLF@PWe!pY zz4tn{T07JK=?EnE(|(4d4<&~;@F>%hl;JEF;J?_)>jXoW+L*P;zH1tb^$rcgXAX9K zHVdkvXeAK&iBp>GQtX>hV&z`}~)Oc(ikhr&jTHOj-iqNQ@snSs>6{%_R#RV^I zyM`uF{;5CK&STrhkMdo1?REO$lYt6SUd&gHQO9$Zwp zlM!;=F_~_JL6aVHfE5cJsb=L6Er+}_cQwhJ=Of20Z({gO?uqY#YhP;qkD6_3Uwf$h z`-x0o(3f&#G*AokK)3cgpZFNd84myYmgV>toCPQ6|Hc;){Qvnyt?AnF*kOgkcVEw|S$X(9v=SNAL-LK%*IDS}YqSlN4N z*)x!%Fv>z=(~=mbC_fi~-No%lekh43vUXofWVU%>h^IWili2RevAZEN;qrzd;@a%C zRDZ^!zx~0AS|qZE^11-Q#z8-2#P06*cf(LV3Q?SF8Mq-Q!)1TR<^M>hLO~$w|0&cI z0gVGqD1-_^hn{Z$wYU);4(4h%l?a|1%hZ(U0y9$OG|5XZ&y1LqAy{!1@%Tf6gNU1; zF^#+r9r*`TWG8eA#L{YPHBYUydtpVD@ff)0IbuXpGwVJ{?N8&s`^3H>?#I@l&7d7p(wb&O2PONZY{S-qB9Pv z=VIQUa*~y~ka525ho!@HqB3A-J2?h+#xw?MKe=Kn$yxd8+SPLShg-Ov0Ay{hYa8Qs z_W<5I7%jr7U^ehfE@y51#dDUhc{XYpGJBN)FTfn}%@#IpQpzynVsTXz&o^4nR>kJ+ zNUA3o@5(394>e7(!4x%dsXh`0DKt1axHUuGx6UdyXbis=OLg|Q7l-=BzTtKMc42X! z^9h&TwR=7FUe9G{W?n2pbVNhWVtUDS+ecLTZK|%K2mmk>&0&V^Q_KB{7ljD|%C3>| z2Kl}Gp09T^gC*sL$o%2IQN>sJUa@^FE6n#n9%l^^5Qp+5ebZt@zk#x>#TV_`K6W@Qa_j8mXiH}cBF!g@-;V6{)-e>|sQl7GU5}ghIfyZk0Qozzbwq04 zWS+nq7)VVSNE7xOPoUjx$*O6U&_?$!md!xhxhPFYn7k_64Y&$!?BAEm z<@}eO783_6=YP7>8r70c-fBbayHsy*VI&_H7)cJ$<>QFDqNs~fUO6%8R9b>@Pd~x{G*H29a zP2#1F055RQq{v_tIt-~z3LBiYt;|3nlKCjJy@b!MrE&f1)O@US_Gw!fUDkW^Zp_MZ z%bs+~3gao)9HdFzT&pmJN>=lyiF*fdzx!kkM&c7f|?_!^)wghDK!{@0BfZl-0 zSYja%np2HS5}FYX=bWhA80v}{sk7;RC27(|4D;ax!~P5Q@c!(?#1>Hgx|@)8tGB_3 z6bi*(1rHs=&ZI@FTvXx=5zkGZ7U3PcTQAJsf zlY-+lAb||Je<-MQ#T2JGS7NM#i=D|cU|VYe?zqC=L!DYAX)(x0>6r4KDz;w_$8PgX`4fjk5`hN1%s?6j z(z9z%i1?TAvvge{M7ry?B@+9`_*=g@S#+VdqJXBDD?z3-Rl_45I=QA~T&mzmw(NP@ zx(mr%AEf{{!AoE7hd9#?n{s5*Vn|nX4~W3ytP}|4aY|Bq0m^UIMdz< z173ZCJOQn5BDk0I*qsx1b79o2r& zX~@eoIH7j3`h72$C7}1RPb&f6hj$C-+R_wS+J=~}>{|mQ+N`~HmGwy4;jI^?PyJUF zQ3@Qzr;wxmH%E}Ai-!XBUct2NqS$0_UG;vSJ}Q$rXvkUsmHR+HQzlzlCQ_WE3{^Zh zDhUIgsUn%CLsBRK1YGzv9#Dabt$=_C8i4@?DM8S|)fhvnPT9a&P<(e^_j&bUu@1Q%@WAP{<3m z?fu2v6+LwTLJ%s!g+8W25rP`3;O`{I?uJr+!bLN8e~dZSVhEZ+pxMmZoA9z;O=U0$ zYPO3YT1~)tZR$}e;jTX?j1lD#7j&V=nP_ixu=Blr(h(toO1XIK>IZW5HqX{FJSB!nQI3Ja3wwx3U3ZRvb(S3? zvWbONa1JTdAlM%HR>V&sRF(+6cwK#Y9r@MorZ9Cz@Qc~)U)WLX)8KQR!^Xes6b4rf z9D`Ctqi7Sj@f3eq6SgT#ImjFg{4dJhDM+)ZU9(Nwwr$(C?X0wI+nHaQm9}lW(zb0@ zT3sEnqr1XVU=$ztc*c=XJ`ox8)?#Kv zj_8&qQ&)nn`gI|b=NcgIse0*g|%U&cc4t|kllv&bD zvD=;)br(1LPj#2g62%21mZhwgDxa$bTxw=L*moIP2!ouQM%F#CP?y?K5 zS(ox<6|gvwfLy&uS*f4T&?ttQBaz}hBy&M}%mWb-t7MUBTtl*I7on7&Nur-N?G@%_ zGNdPh8ox?8A!ov!B86#C1hr$C(tOui@zbr0VC~-``Z9sQQ676H1V!gBPu2t^cxNsJ z)QH4r$C3|7_nD7KUvCcpPEkc}%L$fW!BB~bC@8k6ju!`>4(O8%qy-xXnRIkbYi@ku z*6B%?;?YGg4?_rz`afJH)7xYtz@2-~`f_1&U&0l5y>Dn^0e-rXg%=+*%kn$WwN%JX zv^l{fPBYhGc;?06Ko%{Lfgqb{N0X?wzp^r6g5{OWvldhmnUcxK zg;2rO6(;_*ZzlsJ&$wYRLs^Y=0|@~oxzo}4QA>i{ss#ym!9B=_uQ}=5=Ffyfi#gJF z>7!XLGeiVnb7ElfIh4Oip6n~{qVt_l{ZUy$^AUkjq3Fv6De1ADLc;j%*Xrd@S`k4* zaRITxF!{zmG%%Gpd8~G{LiBMgk8z6I4Lc%$I?m2t_aG|HbRzjJYU0o7QEm^tGy=8qd(iUnD-g9<|J8j}bOU5H z>ZHEkhgvXu#>UYi^2F+36^s=BObMw(>K2`dqE!F|ETkk>V3CXlCJ-74p%I$=DAGqz^H;v;Bhie7XurkmaCj3RKloA3anmo#6B;a#p8X>yI>{e z-ZS|lAiV#u5}51a-O3(u*Sw=LiaY3>$S=4q`Y$*Tk6EH&3NqEF#9+=~u!W&-V~HI2 zXjy;lU--9c5Mq;92>iC!w0W(l?&gN6)Xl?B72cI~xkQ}epPlj<`z~!dwFwS;g^z=? zt>N6LAq0sxE+YsW1u+zUHFO||XtKb+HHn8))-8DrO?^Lq%u%q-p%%K&oa?s-zd!+D z`^tdkk2s`ZaM&N$H~!~KNwcA0m-R-%I>r^KpSqhRR2TD=5QKrNsC;aD_nY9gFBfgb*VIx z{OLeU1lKT7v}S@Vu}`uJj-H_!{OfHrcd)Pf-Q-q!8rKB#m`V2tx_~OyUpDje?kjzN zt_$9D6PT zDu2bve%+92vY`*CkMRk!^ow~80^T1N4qk@)f?l2%!Q?|pv>UHZXHW`V3gJnfm2GUV z!nnPzN_ADiL4zI3Mqe4!Dt5+OgLG^ru{2&{6)d@Iv(1VAoo|?y$JYEHU?!)_${^6C z(S5&ko_+Y63hm^n;gS&Z#b@z3e4?R08bAKt8y8K67b219TQG^P;vW6y6htL&;in17 z3Z65D_CZr~_8W973hv=QZQEIy{sTzM!p-&H&dp!{GmLGG{?F%d9#PA|sAdVd>`75*-WmM5BOeoT{g9t63MqIWh6H86!9($Df%Ag-Tu@o&C62 z)hF2rZ_Up>0&5eS0V&%{YE4 zBf;MBn{2AWD!eGN&1D!Sv=>e1&{bUC&3J2?c-!QK&BmRjn@Lz~tl_6`(2tZDHI?KV zpy6(;C2oKATnA;P5&6nDqsvZcMp`Mby=6ss`|n?q^cv$=_nL$J{6x+In2*BIeSynK z-Oqi4Oe5WD^6u4AhL6Sy-VB;^`O(WXcK%uLq?Qe_1}HPW^nsTHot*jR>atlUd9BU^ zzs~LsVCSG>)&m7=Xe32aB&2_022$l(4JxD#-KJ_|@+w=Uf7?d{wJ=YT_^1y_A9>8yI;UC(LW zmd7)KKEik6s!AX4T?|d}$$aXj=+b>k^@a+ZvdJw(52&gff6nxq?cD(m-m*(&C^`=y z01W)(*F;G5u>3>-8vPK14K_D@e)-vZtEp}T@h@S>uXx~{ZPs=d3Q1Hea8BE? zn>Mer(cjAP_X2&i-%B#Z-v4TuX)6aGt0ZmCqy02UWubslqCMa|W|q~KM|}YFuwfi} zrh~U!hX=e%A}NUKec}D^Rk+fdhpdp^Mt?DW(CiQ^b&te^1orsNNYIXSRwR(}(caQE zRVg?&D)SwhIz>-~XwuH)m|fl~N?#JZoNB72V#Dcw8JGAc;O5Ph5-&#|m@43oqGi{k zHZjai7`cXs!4uE$;7v+&JWWkg?o3}s zWv?EcpgKRYi4Yg#)mr0ErV)pP+SKBma#9&>UiWP>kf!tiIU}uFx)XfH2teJTXC;{V#!6_y zCYhp8yP`Ch7S1B4LM6Kl{DYYicBV;JPGRNZ^JouFqk^P`2N@|5hLwMV75(Il6_{;! z#w9$OB84Amg$sQ~xq)fG_bYHA{3aDPc3k9GwL5V(Pd%`fZJoKK8edp2?VSoq6C@W3 zdXk9B41nf#(!Gj8COU#i*}~|91Fygi4_ajP_Tc{e_uu6uQr2NHG7WJ7)@b%d9ptFN ziMRwfQg_GZzy#u>1T)G77_s^%!3vvB(1VOQZjlksRm@7ob8HOY`ELzj6>&NrwGR

y~ZX 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

_2J4Ytw&*@*{=I>Cj&j#1v_XQ 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≶=3Xj1MG8>9p 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