{"author":{"avatar":"https://nguyencungthanh.github.io/animation_avatar%282%29.PNG","name":"Nguyen Cung Thanh","url":"https://nguyencungthanh.github.io/"},"feed_url":"https://nguyencungthanh.github.io/tags/boolean-functions/feed.json","home_page_url":"https://nguyencungthanh.github.io/tags/boolean-functions/","items":[{"content_html":"\n  \u003cdiv class='e-content'\u003e\n    \u003cp\u003eThe Fourier–Walsh expansion represents functions on $\\Omega_n=\\lbrace-1,1\\rbrace^n$ in an orthonormal basis of coordinate products. The construction proceeds from a measure space to its Hilbert space $L^2$, then uses orthogonality to derive the coefficients and approximation formulas. On the Boolean cube, the integrals defining the inner product become finite averages.\u003c/p\u003e\n\u003cp\u003eThe construction uses real scalars. Background on measurable functions and integration is given in \u003ca href=\"/2026/05/02/abstract-measure-theory/\"  \u003eAbstract measure theory\u003c/a\u003e; the geometry of inner products is discussed in \u003ca href=\"/2026/04/27/hilbert-space/\"  \u003eHilbert Space\u003c/a\u003e.\u003c/p\u003e\n\u003ch2 id=\"1-from-a-set-to-a-space-of-functions\"\u003e1. From a Set to a Space of Functions\u003c/h2\u003e\n\u003ch3 id=\"11-pointwise-vector-operations\"\u003e1.1 Pointwise vector operations\u003c/h3\u003e\n\u003cp\u003eLet $\\Omega$ be an arbitrary set. The functions $f:\\Omega\\to\\mathbb R$ form a vector space $\\mathcal{V}(\\Omega)$ under pointwise operations: $(f+g)(x)=f(x)+g(x)$ and $(\\alpha f)(x)=\\alpha f(x)$ for $x\\in\\Omega$ and $\\alpha\\in\\mathbb R$. Both operations use the vector space structure of the codomain $\\mathbb R$.\u003c/p\u003e\n\u003cp\u003eIf $\\Omega$ has $m$ elements, ordering them identifies a function with its vector of values in $\\mathbb R^m$, so $\\dim\\mathcal{V}(\\Omega)=m$. For a general domain, an inner product can be constructed by integrating products of functions, after imposing measurability and integrability conditions.\u003c/p\u003e\n\u003ch3 id=\"12-measures-and-integration\"\u003e1.2 Measures and integration\u003c/h3\u003e\n\u003cp\u003eA \u003cstrong\u003emeasure space\u003c/strong\u003e $(\\Omega,\\mathcal A,\\mu)$ consists of a set $\\Omega$, a $\\sigma$-algebra $\\mathcal A$ of its subsets, and a measure $\\mu:\\mathcal A\\to[0,\\infty]$. The $\\sigma$-algebra contains $\\Omega$ and is closed under complements and countable unions. The measure is countably additive on disjoint measurable sets and satisfies $\\mu(\\varnothing)=0$.\u003c/p\u003e\n\u003cp\u003eThis structure defines the integral $\\int_\\Omega f(x)\\,\\mathrm{d}\\mu(x)$ for measurable functions whenever the integral exists. If $\\mu(\\Omega)=1$, then $\\mu$ is a probability measure, and integration gives the expectation of a function under that probability distribution.\u003c/p\u003e\n\u003ch2 id=\"2-constructing-the-hilbert-space-l2\"\u003e2. Constructing the Hilbert Space $L^2$\u003c/h2\u003e\n\u003ch3 id=\"21-square-integrability-and-equivalence-classes\"\u003e2.1 Square integrability and equivalence classes\u003c/h3\u003e\n\u003cp\u003eFix a measure space $(\\Omega,\\mathcal A,\\mu)$. The measurable functions $f:\\Omega\\to\\mathbb R$ satisfying $\\int_\\Omega|f(x)|^2\\,\\mathrm{d}\\mu(x)\u0026lt;\\infty$ form a vector space, denoted by $\\mathcal V_2(\\Omega,\\mu)$.\u003c/p\u003e\n\u003cp\u003eTwo such functions are identified when they agree outside a measurable set of measure zero. This is equality \u003cstrong\u003ealmost everywhere\u003c/strong\u003e with respect to $\\mu$. The space $L^2(\\Omega,\\mu)$ consists of the resulting equivalence classes; a function symbol denotes a representative of its class.\u003c/p\u003e\n\u003cp\u003eFor $f,g\\in L^2(\\Omega,\\mu)$, define\u003c/p\u003e\n\u003cp\u003e$$\\langle f,g\\rangle=\\int_\\Omega f(x)g(x)\\,\\mathrm{d}\\mu(x).$$\u003c/p\u003e\n\u003cp\u003eThe integral form of Cauchy–Schwarz ensures that the product is integrable. The integral defines a symmetric bilinear form on equivalence classes, and $\\langle f,f\\rangle=0$ holds if and only if $f=0$ almost everywhere. The form is therefore positive definite. Its induced norm is\u003c/p\u003e\n\u003cp\u003e$$\\lVert f\\rVert_{L^2(\\Omega,\\mu)}=\\left(\\int_\\Omega|f(x)|^2\\,\\mathrm{d}\\mu(x)\\right)^{1/2}.$$\u003c/p\u003e\n\u003cp\u003eOn the original functions, this expression defines a seminorm whose kernel consists of functions that vanish almost everywhere. Over complex scalars, the corresponding inner product uses $f(x)\\overline{g(x)}$ in the integral.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eTheorem 2.1.\u003c/strong\u003e For every measure space $(\\Omega,\\mathcal A,\\mu)$, the space $L^2(\\Omega,\\mu)$ is complete in the norm defined above. Consequently, $\\mathcal{H}=L^2(\\Omega,\\mu)$ is a Hilbert space.\u003c/p\u003e\n\u003cp\u003eCompleteness is the $p=2$ case of the Riesz–Fischer theorem; a proof is given in \u003ca href=\"https://www.math.ucdavis.edu/~hunter/measure_theory/measure_notes_ch7.pdf\"  rel='noopener noreferrer'\u003eHunter\u0026rsquo;s notes, Theorem 7.10\u003c/a\u003e.\u003c/p\u003e\n\u003ch3 id=\"22-counting-and-lebesgue-measures\"\u003e2.2 Counting and Lebesgue measures\u003c/h3\u003e\n\u003cp\u003eCounting measure on $\\lbrace1,\\ldots,m\\rbrace$ identifies $L^2$ with $\\mathbb R^m$. The inner product is $\\langle f,g\\rangle=\\sum_{i=1}^m f(i)g(i)$, so the identification preserves the Euclidean geometry.\u003c/p\u003e\n\u003cp\u003eCounting measure on $\\mathbb N$ gives the sequence space $\\ell^2$. A sequence $a=(a_1,a_2,\\ldots)$ belongs to this space when $\\sum_{j=1}^\\infty|a_j|^2\u0026lt;\\infty$, and its inner product with $b\\in\\ell^2$ is $\\langle a,b\\rangle=\\sum_{j=1}^\\infty a_jb_j$.\u003c/p\u003e\n\u003cp\u003eOn $[0,1]$ with Lebesgue measure $\\lambda$, the same construction gives $L^2([0,1],\\lambda)$ with inner product $\\langle f,g\\rangle=\\int_{[0,1]}f(x)g(x)\\,\\mathrm{d}\\lambda(x)$. Here elements are classes of measurable functions whose squared absolute values have finite integrals, with equality understood almost everywhere.\u003c/p\u003e\n\u003ch3 id=\"23-the-role-of-p2\"\u003e2.3 The role of $p=2$\u003c/h3\u003e\n\u003cp\u003eFor $1\\le p\u0026lt;\\infty$, the space $L^p(\\Omega,\\mu)$ consists of equivalence classes of measurable functions satisfying $\\int_\\Omega|f(x)|^p\\,\\mathrm{d}\\mu(x)\u0026lt;\\infty$. Its norm is\u003c/p\u003e\n\u003cp\u003e$$\\lVert f\\rVert_{L^p(\\Omega,\\mu)}=\\left(\\int_\\Omega|f(x)|^p\\,\\mathrm{d}\\mu(x)\\right)^{1/p}.$$\u003c/p\u003e\n\u003cp\u003eAt $p=\\infty$, the space $L^\\infty(\\Omega,\\mu)$ consists of classes of essentially bounded measurable functions, and its norm is the essential supremum of $|f|$ on $\\Omega$ with respect to $\\mu$.\u003c/p\u003e\n\u003cp\u003eThe Riesz–Fischer theorem gives completeness for every $1\\le p\\le\\infty$, so these spaces are \u003ca href=\"/2025/10/08/banach-space/\"  \u003eBanach spaces\u003c/a\u003e. At $p=2$, the identity $\\lVert f\\rVert_{L^2(\\Omega,\\mu)}^2=\\langle f,f\\rangle$ supplies the geometry of orthogonality and projection used in the Fourier construction.\u003c/p\u003e\n\u003ch2 id=\"3-orthonormal-coordinates-and-orthogonal-projection\"\u003e3. Orthonormal Coordinates and Orthogonal Projection\u003c/h2\u003e\n\u003cp\u003eLet $\\mathcal{H}$ be a Hilbert space of finite dimension $m$, with inner product $\\langle\\cdot,\\cdot\\rangle$. Its induced norm is $\\lVert v\\rVert_{\\mathcal{H}}=\\sqrt{\\langle v,v\\rangle}$.\u003c/p\u003e\n\u003cp\u003eA family $e_1,\\ldots,e_k$ is \u003cstrong\u003eorthonormal\u003c/strong\u003e if $\\langle e_i,e_j\\rangle=\\delta_{ij}$, where $\\delta_{ij}$ equals $1$ for $i=j$ and $0$ otherwise. Such a family is linearly independent: if $\\sum_i a_ie_i=0$, taking the inner product with $e_j$ gives $a_j=0$. An orthonormal family of $m$ vectors therefore forms a basis of $\\mathcal{H}$.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eProposition 3.1.\u003c/strong\u003e If $e_1,\\ldots,e_m$ form an orthonormal basis of $\\mathcal{H}$, then every $v\\in\\mathcal{H}$ has the unique expansion $v=\\sum_{j=1}^{m}\\langle v,e_j\\rangle e_j$.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eProof.\u003c/em\u003e The basis property gives an expansion $v=\\sum_j c_je_j$. Taking the inner product with $e_k$ yields $\\langle v,e_k\\rangle=c_k$ by orthonormality. Thus every coefficient is uniquely determined.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eProposition 3.2.\u003c/strong\u003e Let $\\mathcal{V}=\\operatorname{span}\\lbrace e_1,\\ldots,e_k\\rbrace$, where $e_1,\\ldots,e_k$ are orthonormal. For each $v\\in\\mathcal{H}$, the unique element of $\\mathcal{V}$ minimizing $\\lVert v-u\\rVert_{\\mathcal{H}}$ is $P_{\\mathcal{V}}v=\\sum_{j=1}^{k}\\langle v,e_j\\rangle e_j$.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eProof.\u003c/em\u003e Set $p=P_{\\mathcal{V}}v$. For each $j\\le k$, orthonormality gives $\\langle v-p,e_j\\rangle=0$. Hence $v-p$ is orthogonal to $\\mathcal{V}$. For any $u\\in\\mathcal{V}$, the decomposition $v-u=(v-p)+(p-u)$ is orthogonal, and Pythagoras gives\u003c/p\u003e\n\u003cp\u003e$$\\lVert v-u\\rVert_{\\mathcal{H}}^2=\\lVert v-p\\rVert_{\\mathcal{H}}^2+\\lVert p-u\\rVert_{\\mathcal{H}}^2.$$\u003c/p\u003e\n\u003cp\u003eThe minimum is attained precisely when $u=p$.\u003c/p\u003e\n\u003ch2 id=\"4-fourierwalsh-analysis-on-the-boolean-cube\"\u003e4. Fourier–Walsh Analysis on the Boolean Cube\u003c/h2\u003e\n\u003cp\u003eSet $\\Omega_n=\\lbrace-1,1\\rbrace^n$, take the full $\\sigma$-algebra $\\mathcal A=2^{\\Omega_n}$, and assign each point probability $\\mu(\\lbrace x\\rbrace)=2^{-n}$. Every function on the cube is measurable and square integrable. Since every point has positive probability, the only set of measure zero is the empty set. Equality almost everywhere is therefore pointwise equality, so $L^2(\\Omega_n,\\mu)$ is identified with the entire vector space $\\mathcal{V}(\\Omega_n)$.\u003c/p\u003e\n\u003cp\u003eIn this setting, the integral of any function is a finite average:\u003c/p\u003e\n\u003cp\u003e$$\\int_{\\Omega_n}f(x)\\,\\mathrm{d}\\mu(x)=2^{-n}\\sum_{x\\in\\Omega_n}f(x).$$\u003c/p\u003e\n\u003cp\u003eFor the rest of the article, write $\\mathcal{H}=L^2(\\Omega_n,\\mu)$. If $X=(X_1,\\ldots,X_n)$ is uniformly distributed on $\\Omega_n$, the inner product becomes\u003c/p\u003e\n\u003cp\u003e$$\\langle f,g\\rangle=\\mathbb E[f(X)g(X)]=2^{-n}\\sum_{x\\in\\Omega_n}f(x)g(x).$$\u003c/p\u003e\n\u003cp\u003eThe notation $\\lVert f\\rVert_2$ denotes the $L^2(\\Omega_n,\\mu)$ norm, so $\\lVert f\\rVert_2=(\\mathbb E[f(X)^2])^{1/2}$. The space has dimension $2^n$. The coordinates of $X$ are independent and satisfy $\\mathbb E[X_i]=0$ and $\\mathbb E[X_i^2]=1$.\u003c/p\u003e\n\u003cp\u003eIt remains to construct $2^n$ orthonormal functions.\u003c/p\u003e\n\u003ch3 id=\"41-constructing-the-walsh-basis\"\u003e4.1 Constructing the Walsh Basis\u003c/h3\u003e\n\u003cp\u003eFor a single coordinate with the uniform distribution on $\\lbrace -1,1\\rbrace$, the functions $1$ and $x$ are orthonormal: their squared norms equal $1$, and their inner product is $\\mathbb E[X]=0$. A product construction extends these functions to $n$ coordinates. At coordinate $i$, choose either $1$ or $x_i$, and multiply the choices. A subset $S\\subseteq[n]$, where $[n]=\\lbrace1,\\ldots,n\\rbrace$, records the coordinates contributing $x_i$.\u003c/p\u003e\n\u003cp\u003eFor each $S\\subseteq[n]$, define the \u003cstrong\u003eWalsh function\u003c/strong\u003e $\\chi_S(x)=\\prod_{i\\in S}x_i$, with the convention $\\chi_\\varnothing(x)=1$. These functions are also called \u003cstrong\u003eparity functions\u003c/strong\u003e: $\\chi_S(x)$ equals $1$ when an even number of coordinates indexed by $S$ are negative, and $-1$ when that number is odd.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eTheorem 4.1.\u003c/strong\u003e The family $\\lbrace\\chi_S:S\\subseteq[n]\\rbrace$ is an orthonormal basis of $\\mathcal{H}$.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eProof.\u003c/em\u003e Since $x_i^2=1$, the product of two Walsh functions satisfies $\\chi_S(x)\\chi_T(x)=\\chi_{S\\triangle T}(x)$, where $S\\triangle T$ is the symmetric difference of the two sets. If $S=T$, this product is identically $1$, so $\\langle\\chi_S,\\chi_T\\rangle=1$. If $S\\ne T$, independence and the fact that each coordinate has mean zero imply\u003c/p\u003e\n\u003cp\u003e$$\\langle\\chi_S,\\chi_T\\rangle=\\mathbb E[\\chi_{S\\triangle T}(X)]=\\prod_{i\\in S\\triangle T}\\mathbb E[X_i]=0.$$\u003c/p\u003e\n\u003cp\u003eThus $\\langle\\chi_S,\\chi_T\\rangle=\\delta_{ST}$. There are $2^n$ subsets of $[n]$, giving $2^n$ orthonormal functions in a space of dimension $2^n$. The family therefore forms a basis.\u003c/p\u003e\n\u003ch3 id=\"42-the-fourierwalsh-expansion\"\u003e4.2 The Fourier–Walsh Expansion\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eTheorem 4.2.\u003c/strong\u003e Every function $f:\\Omega_n\\to\\mathbb R$ has the unique representation\u003c/p\u003e\n\u003cp\u003e$$f(x)=\\sum_{S\\subseteq[n]}\\widehat f(S)\\chi_S(x),$$\u003c/p\u003e\n\u003cp\u003ewhere $\\widehat f(S)=\\langle f,\\chi_S\\rangle=\\mathbb E[f(X)\\chi_S(X)]$.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eProof.\u003c/em\u003e Apply Proposition 3.1 to the basis in Theorem 4.1.\u003c/p\u003e\n\u003cp\u003eThe sum is finite and holds at every point of $\\Omega_n$. Each coordinate occurs at most once in a Walsh function, so the expansion is a \u003cstrong\u003emultilinear polynomial\u003c/strong\u003e. It is the unique multilinear polynomial agreeing with $f$ on the cube. The relation $x_i^2=1$ allows distinct polynomials to represent the same function on this domain.\u003c/p\u003e\n\u003cp\u003eThe constant coefficient is $\\widehat f(\\varnothing)=\\mathbb E[f(X)]$. For a singleton set, $\\widehat f(\\lbrace i\\rbrace)=\\mathbb E[f(X)X_i]$ measures alignment with coordinate $i$. Larger sets index products involving several coordinates. The degree of $\\chi_S$ is $|S|$.\u003c/p\u003e\n\u003cp\u003eFor a Boolean function $f:\\Omega_n\\to\\lbrace-1,1\\rbrace$, the product $f(X)\\chi_S(X)$ equals $1$ on agreement and $-1$ on disagreement. Consequently,\u003c/p\u003e\n\u003cp\u003e$$\\widehat f(S)=2\\mathbb P\\bigl(f(X)=\\chi_S(X)\\bigr)-1.$$\u003c/p\u003e\n\u003ch3 id=\"43-parsevals-identity-mean-and-variance\"\u003e4.3 Parseval\u0026rsquo;s Identity, Mean and Variance\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003eTheorem 4.3.\u003c/strong\u003e For every $f\\in\\mathcal{H}$,\u003c/p\u003e\n\u003cp\u003e$$\\lVert f\\rVert_2^2=\\mathbb E[f(X)^2]=\\sum_{S\\subseteq[n]}\\widehat f(S)^2.$$\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eProof.\u003c/em\u003e Substituting the Fourier expansion into the inner product and using orthonormality yields\u003c/p\u003e\n\u003cp\u003e$$\\langle f,f\\rangle=\\sum_{S,T\\subseteq[n]}\\widehat f(S)\\widehat f(T)\\langle\\chi_S,\\chi_T\\rangle=\\sum_{S\\subseteq[n]}\\widehat f(S)^2.$$\u003c/p\u003e\n\u003cp\u003eThe same argument gives $\\langle f,g\\rangle=\\sum_{S\\subseteq[n]}\\widehat f(S)\\widehat g(S)$ for $f,g\\in\\mathcal{H}$. The Fourier transform preserves this inner product when the coefficient space carries the Euclidean inner product.\u003c/p\u003e\n\u003cp\u003eSince $\\widehat f(\\varnothing)=\\mathbb E[f(X)]$, subtracting the mean removes the constant Walsh term. Applying Parseval\u0026rsquo;s identity to the remaining expansion gives\u003c/p\u003e\n\u003cp\u003e$$\\operatorname{Var}(f(X))=\\sum_{\\varnothing\\ne S\\subseteq[n]}\\widehat f(S)^2.$$\u003c/p\u003e\n\u003cp\u003eFor a Boolean function, $f(X)^2=1$, and hence $\\sum_{S\\subseteq[n]}\\widehat f(S)^2=1$.\u003c/p\u003e\n\u003ch3 id=\"44-approximation-by-polynomials-of-bounded-degree\"\u003e4.4 Approximation by Polynomials of Bounded Degree\u003c/h3\u003e\n\u003cp\u003eFor an integer $0\\le d\\le n$, let $\\mathcal V_d$ be the subspace of $\\mathcal{H}$ spanned by the functions $\\chi_S$ with $|S|\\le d$. Equivalently, $\\mathcal V_d$ consists of functions represented by multilinear polynomials of degree at most $d$. Define the truncated expansion by $f_{\\le d}=\\sum_{|S|\\le d}\\widehat f(S)\\chi_S$, where the sum runs over subsets of $[n]$.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eProposition 4.4.\u003c/strong\u003e The function $f_{\\le d}$ is the unique minimizer of $\\lVert f-g\\rVert_2^2=\\mathbb E[(f(X)-g(X))^2]$ over $g\\in\\mathcal V_d$, and its squared approximation error is\u003c/p\u003e\n\u003cp\u003e$$\\lVert f-f_{\\le d}\\rVert_2^2=\\sum_{|S|\u0026gt;d}\\widehat f(S)^2.$$\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eProof.\u003c/em\u003e Proposition 3.2 identifies $f_{\\le d}$ as the orthogonal projection onto $\\mathcal V_d$. The residual contains precisely the omitted Walsh terms, so Parseval\u0026rsquo;s identity gives the error formula.\u003c/p\u003e\n\u003cp\u003eThe minimization uses the uniform $L^2$ norm over $\\mathcal V_d$, with $\\mathbb R$ as the codomain of the approximating function.\u003c/p\u003e\n\u003ch2 id=\"references\"\u003eReferences\u003c/h2\u003e\n\u003cp\u003e[1] O\u0026rsquo;Donnell, R. (2014). \u003ca href=\"https://doi.org/10.1017/CBO9781139814782\"  rel='noopener noreferrer'\u003e\u003cem\u003eAnalysis of Boolean Functions\u003c/em\u003e\u003c/a\u003e. Cambridge University Press. Chapter 1. A \u003ca href=\"https://www.cs.cmu.edu/~odonnell/papers/Analysis-of-Boolean-Functions-by-Ryan-ODonnell.pdf\"  rel='noopener noreferrer'\u003erevised text maintained by the author\u003c/a\u003e is freely available.\u003c/p\u003e\n\u003cp\u003e[2] Hunter, J. K. (2011). \u003ca href=\"https://www.math.ucdavis.edu/~hunter/measure_theory/measure_notes_ch7.pdf\"  rel='noopener noreferrer'\u003e\u003cem\u003eMeasure Theory\u003c/em\u003e, Chapter 7: $L^p$ spaces\u003c/a\u003e. University of California, Davis.\u003c/p\u003e\n  \u003c/div\u003e\n\u003cp\u003e\n  \u003ca href=\"mailto:nguyencungthanh11@gmail.com?subject=Re: A%20note%20on%20Fourier%e2%80%93Walsh%20Analysis%20on%20the%20Boolean%20Cube\" rel='noopener noreferrer'\u003e💬 Reply via e-mail\u003c/a\u003e\n\u003c/p\u003e\n","date_modified":"2026-10-29T00:00:00+00:00","date_published":"2026-10-29T00:00:00+00:00","id":"https://nguyencungthanh.github.io/2026/10/29/fourier-walsh-analysis-on-the-boolean-cube/","summary":"The Fourier–Walsh expansion represents functions on $\\Omega_n=\\lbrace-1,1\\rbrace^n$ in an orthonormal basis of coordinate products. The construction proceeds from a measure space to its Hilbert space $L^2$, then uses orthogonality to derive the coefficients and approximation formulas. On the Boolean cube, the integrals defining the inner product become finite averages.\n","tags":["Fourier Analysis","Boolean Functions","Functional Analysis"],"title":"A note on Fourier–Walsh Analysis on the Boolean Cube","url":"https://nguyencungthanh.github.io/2026/10/29/fourier-walsh-analysis-on-the-boolean-cube/"}],"title":"Tag: Boolean Functions - Nguyen Cung Thanh","version":"https://jsonfeed.org/version/1"}