% (find-LATEX "2024-1-C2-expressoes.tex")
% (defun c () (interactive) (find-LATEXsh "lualatex -record 2024-1-C2-expressoes.tex" :end))
% (defun C () (interactive) (find-LATEXsh "lualatex 2024-1-C2-expressoes.tex" "Success!!!"))
% (defun D () (interactive) (find-pdf-page      "~/LATEX/2024-1-C2-expressoes.pdf"))
% (defun d () (interactive) (find-pdftools-page "~/LATEX/2024-1-C2-expressoes.pdf"))
% (defun e () (interactive) (find-LATEX "2024-1-C2-expressoes.tex"))
% (defun o () (interactive) (find-LATEX "2024-1-C2-expressoes.tex"))
% (defun u () (interactive) (find-latex-upload-links "2024-1-C2-expressoes"))
% (defun v () (interactive) (find-2a '(e) '(d)))
% (defun d0 () (interactive) (find-ebuffer "2024-1-C2-expressoes.pdf"))
% (defun cv () (interactive) (C) (ee-kill-this-buffer) (v) (g))
%          (code-eec-LATEX "2024-1-C2-expressoes")
% (find-pdf-page   "~/LATEX/2024-1-C2-expressoes.pdf")
% (find-sh0 "cp -v  ~/LATEX/2024-1-C2-expressoes.pdf /tmp/")
% (find-sh0 "cp -v  ~/LATEX/2024-1-C2-expressoes.pdf /tmp/pen/")
%     (find-xournalpp "/tmp/2024-1-C2-expressoes.pdf")
%   file:///home/edrx/LATEX/2024-1-C2-expressoes.pdf
%               file:///tmp/2024-1-C2-expressoes.pdf
%           file:///tmp/pen/2024-1-C2-expressoes.pdf
%  http://anggtwu.net/LATEX/2024-1-C2-expressoes.pdf
% (find-LATEX "2019.mk")
% (find-Deps1-links "Caepro5 Piecewise2 Maxima2")
% (find-Deps1-cps   "Caepro5 Piecewise2 Maxima2 PercPush1")
% (find-Deps1-anggs "Caepro5 Piecewise2 Maxima2")
% (find-MM-aula-links "2024-1-C2-expressoes" "2" "c2m241exprs" "c2ex")
% (find-Deps1-cps "Verbatim3")

% «.defs»		(to "defs")
% «.defs-T-and-B»	(to "defs-T-and-B")
% «.defs-caepro»	(to "defs-caepro")
% «.defs-pict2e»	(to "defs-pict2e")
% «.defs-maxima»	(to "defs-maxima")
% «.defs-verbatim3»	(to "defs-verbatim3")
% «.defs-percpush»	(to "defs-percpush")
% «.title»		(to "title")
% «.links»		(to "links")
% «.maxima-vs-sympy»	(to "maxima-vs-sympy")
% «.strang-p1»		(to "strang-p1")
% «.strang-p3»		(to "strang-p3")
% «.subarvores»		(to "subarvores")
%   «.percpush»		(to "percpush")
% «.subarvores-2»	(to "subarvores-2")
% «.subarvores-3»	(to "subarvores-3")



\documentclass[oneside,12pt]{article}
\usepackage[colorlinks,citecolor=DarkRed,urlcolor=DarkRed]{hyperref} % (find-es "tex" "hyperref")
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{pict2e}
\usepackage[x11names,svgnames]{xcolor} % (find-es "tex" "xcolor")
\usepackage{colorweb}                  % (find-es "tex" "colorweb")
%\usepackage{tikz}
%
% (find-dn6 "preamble6.lua" "preamble0")
%\usepackage{proof}   % For derivation trees ("%:" lines)
%\input diagxy        % For 2D diagrams ("%D" lines)
%\xyoption{curve}     % For the ".curve=" feature in 2D diagrams
%
\usepackage{edrx21}               % (find-LATEX "edrx21.sty")
\input edrxaccents.tex            % (find-LATEX "edrxaccents.tex")
\input edrx21chars.tex            % (find-LATEX "edrx21chars.tex")
\input edrxheadfoot.tex           % (find-LATEX "edrxheadfoot.tex")
\input edrxgac2.tex               % (find-LATEX "edrxgac2.tex")
%
% (find-es "tex" "geometry")
\usepackage[a6paper, landscape,
            top=1.5cm, bottom=.25cm, left=1cm, right=1cm, includefoot
           ]{geometry}
%
\begin{document}

% «defs»  (to ".defs")
% (find-LATEX "edrx21defs.tex" "colors")
% (find-LATEX "edrx21.sty")

\def\drafturl{http://anggtwu.net/LATEX/2024-1-C2.pdf}
\def\drafturl{http://anggtwu.net/2024.1-C2.html}
\def\draftfooter{\tiny \href{\drafturl}{\jobname{}} \ColorBrown{\shorttoday{} \hours}}

% (find-LATEX "2024-1-C2-carro.tex" "defs-caepro")
% (find-LATEX "2024-1-C2-carro.tex" "defs-pict2e")

\catcode`\^^J=10
\directlua{dofile "dednat6load.lua"}  % (find-LATEX "dednat6load.lua")

% «defs-T-and-B»  (to ".defs-T-and-B")
\long\def\ColorDarkOrange#1{{\color{orange!90!black}#1}}
\def\T(Total: #1 pts){{\bf(Total: #1)}}
\def\T(Total: #1 pts){{\bf(Total: #1 pts)}}
\def\T(Total: #1 pts){\ColorRed{\bf(Total: #1 pts)}}
\def\B       (#1 pts){\ColorDarkOrange{\bf(#1 pts)}}

% «defs-caepro»  (to ".defs-caepro")
%L dofile "Caepro5.lua"              -- (find-angg "LUA/Caepro5.lua" "LaTeX")
\def\Caurl   #1{\expr{Caurl("#1")}}
\def\Cahref#1#2{\href{\Caurl{#1}}{#2}}
\def\Ca      #1{\Cahref{#1}{#1}}

% «defs-pict2e»  (to ".defs-pict2e")
%L dofile "Piecewise2.lua"           -- (find-LATEX "Piecewise2.lua")
%L --dofile "Escadas1.lua"           -- (find-LATEX "Escadas1.lua")
\def\pictgridstyle{\color{GrayPale}\linethickness{0.3pt}}
\def\pictaxesstyle{\linethickness{0.5pt}}
\def\pictnaxesstyle{\color{GrayPale}\linethickness{0.5pt}}
\celllower=2.5pt

% «defs-maxima»  (to ".defs-maxima")
%L dofile "Maxima2.lua"              -- (find-angg "LUA/Maxima2.lua")
\pu

% «defs-verbatim3»  (to ".defs-verbatim3")
% (c2m241exprsp 4 "defs-verbatim3")
% (c2m241exprsa   "defs-verbatim3")
%L dofile "Verbatim3.lua"            -- (find-LATEX "Verbatim3.lua")
\pu

% «defs-percpush»  (to ".defs-percpush")
% (c2m241exprsp 7 "percpush")
% (c2m241exprsa   "percpush")
%
%L dofile "PercPush1.lua"            -- (find-LATEX "PercPush1.lua")
%L percdo = function (bigstr)
%L     local s = Stack.new()
%L     for _,w in ipairs(split(bitrim(bigstr))) do s:percpush(w) end
%L     return s[1]
%L   end
%L percsa = function (name,bigstr)
%L     output(format("\\sa{%s}{%s}", name, percdo(bigstr)))
%L   end
\def\undcolor#1#2{{\color{#1}\underbrace{\color{black}#2}{}}}
\def\unda#1{\undcolor{black}{#1}}
\def\undb#1{\undcolor{orange}{#1}}
\pu

\def\SLIDE  #1{{\bf #1}}
\def\SLIDENT#1{}



%  _____ _ _   _                               
% |_   _(_) |_| | ___   _ __   __ _  __ _  ___ 
%   | | | | __| |/ _ \ | '_ \ / _` |/ _` |/ _ \
%   | | | | |_| |  __/ | |_) | (_| | (_| |  __/
%   |_| |_|\__|_|\___| | .__/ \__,_|\__, |\___|
%                      |_|          |___/      
%
% «title»  (to ".title")
% (c2m241exprsp 1 "title")
% (c2m241exprsa   "title")

\thispagestyle{empty}

\begin{center}

\vspace*{1.2cm}

{\bf \Large Cálculo 2 - 2024.1}

\bsk

Aula 2: expressões e árvores

\bsk

Eduardo Ochs - RCN/PURO/UFF

\url{http://anggtwu.net/2024.1-C2.html}

\end{center}

\newpage

% «links»  (to ".links")
% (c2m241exprsp 2 "links")
% (c2m241exprsa   "links")

{\bf Links}

\scalebox{0.6}{\def\colwidth{9cm}\firstcol{

\par \Ca{2hT4} ``Releia a dica 7''
\par \Ca{2iQ1} Quadros da aula 1 (18/mar/2023)
\par \Ca{2iQ3} Quadros da aula 2 (19/mar/2023)
\par \Ca{2iQ7} Quadros da aula 3 (20/mar/2023)
\par \Ca{2hT39} Justificativas no formato ``... por ... com ...''
\par \Ca{2hT127} Músculos mentais, jogo colaborativo
\par \Ca{Leit1p37} $(f+g)(x) = f(x)+g(x)$

}\anothercol{
}}

\newpage

{\bf Introdução}


\scalebox{0.6}{\def\colwidth{9cm}\firstcol{

Na primeira aula nós fizemos um monte de exercícios de ``set
comprehensions'', e vocês viram -- por exemplo, na página \Ca{Mpg10},
nestes itens daqui,
%
$$\begin{array}{rcl}
    G & := & \{x∈\{3,4\}, y∈\{1,2,3\}; (y,x)\} \\
    H & := & \{x∈\{3,4\}, y∈\{1,2,3\}; (x,2)\} \\
  \end{array}
$$

que às vezes pra resolver um exercício a gente precisa ``pensar como
um computador''...



}\anothercol{
}}


\newpage

% «maxima-vs-sympy»  (to ".maxima-vs-sympy")
% (c2m241exprsp 4 "maxima-vs-sympy")
% (c2m241exprsa   "maxima-vs-sympy")
% (paep 7 "trees")
% (paea   "trees")

\SLIDE{Maxima vs.\ SymPy}

%V =___________________.
%V |                   |
%V integrate__.__.__.  integrate__.__.__.
%V |          |  |  |  |          |  |  |
%V *___.      x  a  b  fp         u  g  g
%V |   |               |             |  |
%V fp  gp              u             a  b
%V |   |
%V g   x
%V |
%V x
%L defvbt "MV2 maxima"
\pu
%
%V Equality_______________.
%V |                      |
%V Integral__.            Integral__.
%V |         |            |         |
%V Mul__.    Tuple__.__.  fp        Tuple__.__.
%V |    |    |      |  |  |         |      |  |
%V fp   gp   x      a  b  u         u      g  g
%V |    |                                  |  |
%V g    x                                  a  b
%V |
%V x
%L defvbt "MV2 sympy"
\pu

\scalebox{0.6}{\def\colwidth{9cm}\firstcol{

$$\Intx{a}{b}{f'(g(u))g'(u)} = \Intu{g(a)}{g(b)}{f'(u)}$$

$$\vbt{MV2 maxima}$$

}\anothercol{

\vspace*{1.4cm}

$$\vbt{MV2 sympy}$$

}}

\newpage

% «strang-p1»  (to ".strang-p1")
% (c2m241exprsp 5 "strang-p1")
% (c2m241exprsa   "strang-p1")
% (c2m241introp 8 "strang-p1")
% (c2m241introa   "strang-p1")
% (find-es "maxima" "strang-p1")

\SLIDENT{(Strang: p.1)}

%M (%i1) eq1 : 1*x + 2*y = 3;
%M (%o1) 2\,y+x=3
%M (%i2) eq2 : 4*x + 5*y = 6;
%M (%o2) 5\,y+4\,x=6
%M (%i3)              4*eq1;
%M (%o3) 4\,\left(2\,y+x\right)=12
%M (%i4)       expand(4*eq1);
%M (%o4) 8\,y+4\,x=12
%M (%i5) eq3 : expand(4*eq1);
%M (%o5) 8\,y+4\,x=12
%M (%i6) eq4 : eq2 - eq3;
%M (%o6) -\left(3\,y\right)=-6
%M (%i7) eq5 : eq4 / -3;
%M (%o7) y=2
%L maximahead:sa("Strang p.1 a", "")

%M (%i8)             eq5;
%M (%o8) y=2
%M (%i9)                  eq1;
%M (%o9) 2\,y+x=3
%M (%i10) eq6 : subst(eq5, eq1);
%M (%o10) x+4=3
%M (%i11) eq7 : eq6 - 4;
%M (%o11) x=-1
%M (%i12)             [eq7,eq5];
%M (%o12) \left[ x=-1 , y=2 \right] 
%M (%i13)                        eq1;
%M (%o13) 2\,y+x=3
%M (%i14)                             eq2;
%M (%o14) 5\,y+4\,x=6
%M (%i15) eq8 : subst([eq7,eq5], eq1);
%M (%o15) 3=3
%M (%i16) eq9 : subst([eq7,eq5],      eq2);
%M (%o16) 6=6
%L maximahead:sa("Strang p.1 b", "")

%M (%i17) matrix(['eq1, ":", eq1],
%M        ['eq2, ":", eq2],
%M        ['eq3, ":", eq3],
%M        ['eq4, ":", eq4],
%M        ['eq5, ":", eq5],
%M        ['eq6, ":", eq6],
%M        ['eq7, ":", eq7],
%M        ['eq8, ":", eq8],
%M        ['eq9, ":", eq9]);
%M (%o17) \begin{pmatrix}\mathrm{eq1}&\mbox{ : }&2\,y+x=3\cr \mathrm{eq2}&\mbox{ : }&5\,y+4\,x=6\cr \mathrm{eq3}&\mbox{ : }&8\,y+4\,x=12\cr \mathrm{eq4}&\mbox{ : }&-\left(3\,y\right)=-6\cr \mathrm{eq5}&\mbox{ : }&y=2\cr \mathrm{eq6}&\mbox{ : }&x+4=3\cr \mathrm{eq7}&\mbox{ : }&x=-1\cr \mathrm{eq8}&\mbox{ : }&3=3\cr \mathrm{eq9}&\mbox{ : }&6=6\cr \end{pmatrix}
%M (%i18) 
%L maximahead:sa("Strang p.1 c", "")
\pu


\scalebox{0.4}{\def\colwidth{9cm}\firstcol{

\vspace*{0cm}

\def\hboxthreewidth {8cm}
\ga{Strang p.1 a}

}\anothercol{

\vspace*{0cm}

\def\hboxthreewidth {10cm}
\ga{Strang p.1 b}

}\anothercol{

\vspace*{0cm}

\def\hboxthreewidth {8cm}
\ga{Strang p.1 c}

}}




\newpage

% «strang-p3»  (to ".strang-p3")
% (c2m241exprsp 6 "strang-p3")
% (c2m241exprsa   "strang-p3")
% (find-es "maxima" "strang-p3")

\SLIDENT{(Strang: p.3)}

%M (%i1) eq1 : 1*x + 2*y = 3;
%M (%o1) 2\,y+x=3
%M (%i2) eq2 : 4*x + 8*y = 6;
%M (%o2) 8\,y+4\,x=6
%M (%i3)              4*eq1;
%M (%o3) 4\,\left(2\,y+x\right)=12
%M (%i4)       expand(4*eq1);
%M (%o4) 8\,y+4\,x=12
%M (%i5) eq3 : expand(4*eq1);
%M (%o5) 8\,y+4\,x=12
%M (%i6) eq4 : eq2 - eq3;
%M (%o6) 0=-6
%L maximahead:sa("Strang p.3 a", "")

%M (%i7) matrix(['eq1, ":", eq1],
%M        ['eq2, ":", eq2],
%M        ['eq3, ":", eq3],
%M        ['eq4, ":", eq4]);
%M (%o7) \begin{pmatrix}\mathrm{eq1}&\mbox{ : }&2\,y+x=3\cr \mathrm{eq2}&\mbox{ : }&8\,y+4\,x=6\cr \mathrm{eq3}&\mbox{ : }&8\,y+4\,x=12\cr \mathrm{eq4}&\mbox{ : }&0=-6\cr \end{pmatrix}
%M (%i8) 
%L maximahead:sa("Strang p.3 b", "")
\pu


\scalebox{0.6}{\def\colwidth{9cm}\firstcol{

\vspace*{0cm}

\def\hboxthreewidth {10cm}
\ga{Strang p.3 a}

}\anothercol{

\vspace*{0cm}

\def\hboxthreewidth {10cm}
\ga{Strang p.3 b}

}}


\newpage

% «subarvores»  (to ".subarvores")
% (c2m241exprsp 7 "subarvores")
% (c2m241exprsa   "subarvores")
% «percpush»  (to ".percpush")
% (c2m241exprsp 7 "percpush")
% (c2m241exprsa   "percpush")

{\bf Subárvores}

%L percsa("ex1", [=[   a b  f(%u,%u) c %u+%u %u ]=])
%L percsa("ex2", [=[ f a b %b(%u,%u) c %u+%u %u ]=])
\pu

\scalebox{0.5}{\def\colwidth{10cm}\firstcol{

Cada bolinha de uma árvore ``gera'' uma subárvore -- a subárvore
formada por essa bolinha e todas as outras bolinhas abaixo dela.

\msk

A gente quer que cada subárvore corresponda a uma {\sl subexpressão}.
A definição formal de subexpressão é bem complicada, mas tente se
virar usando só essas idéias daqui:

\begin{itemize}

\item subexpressões são trechos da expressão original que são
  expressões completas -- por exemplo, `$2/(x$' não é uma expressão
  completa,

\item se a nossa expressão original for toda ``horizontal'' -- como
  $2/(x+y)$, mas não como $\frac{2}{x+y}$ -- então a gente pode usar
  diagramas de ``underbraces'' pra indicar quais são as subexpressões,
  como nestes dois exemplos (que dão árvores diferentes):
  %
  $$\begin{array}{c}
    \ga{ex1} \\\\[-7pt]
    \ga{ex2}
    \end{array}
  $$

\end{itemize}

\bsk


}\anothercol{

{\bf Exercício}

Encontre uma boa representação em árvore para cada uma das expressões
abaixo. Faça os diagramas de underbraces quando precisar, e lembre que
você vai ter que improvisar em vários lugares, principalmente pra
decidir que nomes pôr nas bolinhas!

\msk

\par a) $2/5$
\par b) $\frac{2}{5}$
\par c) $2/(x+y)$
\par d) $3x+4y$
\par e) $3x+4y=z$
\par f) $f(x)+g(x)$
\par g) $2+3x$
\par h) $2+3·x$
\par i) $2+(3·x)$
\par j) $G := \{x∈\{3,4\}, y∈\{1,2,3\}; (y,x)\}$
\par k) $\{1,2,3\}$

\bsk

Lembre que em Cálculo 1 você aprendeu a chegar direto na resposta
certa, mas C2 é bem diferente de C1... aqui você vai ter que escrever
várias idéias, e se você ficar apagando, rasgando e jogando fora os
papéis em que você escreveu idéias que depois você achou ruins você
vai progredir muito mais devagar do que as pessoas que têm coragem de
guardar tudo!

}}


\newpage

% «subarvores-2»  (to ".subarvores-2")
% (c2m241exprsp 8 "subarvores-2")
% (c2m241exprsa   "subarvores-2")

{\bf Subárvores (2)}

\scalebox{1.0}{\def\colwidth{9cm}\firstcol{

Tente encontrar uma boa representação em árvore para esta expressão
aqui:

$$\text{Seja }
  f(x) = 
  \begin{cases}
     3-x & \text{quando $x<2$}, \\
     2 & \text{quando $2≤x$} \\
  \end{cases}
$$

Depois \standout{releia a dica 3} e veja se cada bolinha da sua árvore
corresponde a um símbolo específico da expressão acima, e se quando
você aponta pra esse símbolo os seus colegas conseguem entender qual é
a menor subárvore -- e a menor subexpressão -- que contém esse
símbolo.

}\anothercol{
}}

\newpage

% «subarvores-3»  (to ".subarvores-3")
% (c2m241exprsp 9 "subarvores-3")
% (c2m241exprsa   "subarvores-3")

{\bf Subárvores (3)}

\scalebox{0.6}{\def\colwidth{8.5cm}\firstcol{

Este quadro da aula de 19/mar/2023 -

\ssk

% (find-fline "~/2024.1-C2/" "20240319-C2-2.png")
\Ca{2iQ4} Um quadro da aula de 19/mar/2023

\ssk

tem um exemplo que a gente discutiu em sala,

de uma representação em árvore que é ruim...

% (find-latexscan-links "C2" "arvore-ruim")
% (find-xpdf-page "~/LATEX/2024-1-C2/arvore-ruim.pdf")
$$\includegraphics[height=4cm]{2024-1-C2/arvore-ruim.pdf}$$

O problema dessa representação em árvore é que quando a gente 1)
aponta pro `$=$' do ``$a=b+c$'', 2) a gente pega a bolinha da árvore
que corresponde a esse `$=$', 3) a gente pega a subárvore gerada por
essa bolinha, e 4) a gente volta pro ``$a=b+c$'' e encontra a
subexpressão correspondente a essa subárvore...

\msk

...a gente chega numa ``subexpressão'' que {\sl não é uma expressão
  completa}.

}\anothercol{

Releia a dica 3 desta página:

\ssk

\Ca{2iT12} ``Releia a Dica 7''

\ssk

Ela tem este trecho:

\begin{quotation}
  \noindent
  (...) mas quando a gente está discutindo problemas no papel ou no
  quadro a gente pode ser referir a determinados objetos apontando pra
  eles com o dedo e dizendo ``esse aqui''.
\end{quotation}

No exemplo da coluna da esquerda se eu tou discutindo com um amigo e
eu aponto pro `$=$' do ``$a=b+c$'' e digo ``essa subexpressão aqui''
tudo vai dar errado se ele estiver considerando que a representação em
árvore dessa expressão é a que eu marquei com o `$\frown$'... ele vai
achar que o meu ``essa subexpressão aqui'' se refere a isto:
%
$$=b+c$$

Péssimo! Péssimo!

}}




\GenericWarning{Success:}{Success!!!}  % Used by `M-x cv'

\end{document}



 (eepitch-shell)
 (eepitch-kill)
 (eepitch-shell)
# (find-fline "~/2023.2-C2/")
# (find-fline "~/LATEX/2023-2-C2/")
# (find-fline "~/bin/djvuize")

cd /tmp/
for i in *.jpg; do echo f $(basename $i .jpg); done
for i in *.png; do echo f $(basename $i .png); done

f () { rm -v $1.pdf;  textcleaner -f 50 -o  5 $1.jpg $1.png; djvuize $1.pdf; xpdf $1.pdf }
f () { rm -v $1.pdf;  textcleaner -f 50 -o 10 $1.jpg $1.png; djvuize $1.pdf; xpdf $1.pdf }
f () { rm -v $1.pdf;  textcleaner -f 50 -o 20 $1.jpg $1.png; djvuize $1.pdf; xpdf $1.pdf }

f () { rm -fv $1.png $1.pdf; djvuize $1.pdf }
f () { rm -fv $1.png $1.pdf; djvuize WHITEBOARDOPTS="-m 1.0 -f 15" $1.pdf; xpdf $1.pdf }
f () { rm -fv $1.png $1.pdf; djvuize WHITEBOARDOPTS="-m 1.0 -f 30" $1.pdf; xpdf $1.pdf }
f () { rm -fv $1.png $1.pdf; djvuize WHITEBOARDOPTS="-m 1.0 -f 45" $1.pdf; xpdf $1.pdf }
f () { rm -fv $1.png $1.pdf; djvuize WHITEBOARDOPTS="-m 0.5" $1.pdf; xpdf $1.pdf }
f () { rm -fv $1.png $1.pdf; djvuize WHITEBOARDOPTS="-m 0.25" $1.pdf; xpdf $1.pdf }
f () { cp -fv $1.png $1.pdf       ~/2024.1-C2/
       cp -fv        $1.pdf ~/LATEX/2024-1-C2/
       cat <<%%%
% (find-latexscan-links "C2" "$1")
%%%
}

f arvore-ruim
# (find-latexscan-links "C2" "arvore-ruim")

% (find-latexscan-links "C2" "arvore-ruim")
% (find-xpdf-page "~/LATEX/2023-2-C2/arvore-ruim.pdf")
\includegraphics[height=8cm]{2023-2-C2/arvore-ruim.pdf}
\includegraphics[width=11cm]{2023-2-C2/arvore-ruim.pdf}


f 20201213_area_em_funcao_de_theta
f 20201213_area_em_funcao_de_x
f 20201213_area_fatias_pizza



% Local Variables:
% coding: utf-8-unix
% ee-tla: "c2ex"
% ee-tla: "c2m241exprs"
% End:
