text:
\section{\bf Introduction and Results}
Let $G$ be a non-abelian group and $Z(G)$ be its center. One can
associate with $G$ a graph whose vertex set is $G\backslash Z(G)$
 and two vertices are joined by an edge whenever they do not
commute. We call this graph the non-commuting graph of $G$ and it
will be denoted by $\mathcal{A}_G$. The non-commuting graph
$\mathcal{A}_G$ was first introduced by Paul Erd\"os \cite{N} to
formulate the following question: If every complete subgraph of
$\mathcal{A}_G$ is finite, is there a finite bound on the
cardinalities of complete subgraphs of $\mathcal{A}_G$? Neumann
\cite{N} answered positively Erd\"os question by proving that
$|G:Z(G)|=n$ is
finite and $n$ is obviously  the requested finite bound.\\
The non-commuting graph has been studied by many people (see e.g.,
\cite{AAM},\cite{MSZZ} and \cite{P}). It is proved in \cite{WS1}
(resp., in \cite{WS2}) that if $G$ is a finite group with
$\mathcal{A}_G\cong \mathcal{A}_{\mathrm{PSL}(2,q)}$ (resp.,
$\mathcal{A}_G\cong \mathcal{A}_{A_{10}}$), then $G\cong
\mathrm{PSL}(2,q)$ (resp., $G\cong A_{10}$). For any prime power
$q$, let $\mathrm{GL}(2,q)$ (resp. $\mathrm{SL}(2,q)$)  be the
general
 (resp. special)
linear group of degree 2 over the finite field of order $q$. In
this paper we study the groups  whose non-commuting graphs are
isomorphic to either $\mathrm{GL}(2,q)$ or $\mathrm{SL}(2,q)$.
Our main results are the following.
\begin{thm}\label{GL}
Let $G$ be a group such that $\mathcal{A}_G\cong
\mathcal{A}_{\mathrm{GL}(2,q)}$ for some prime power $q>3$. Then
$G/Z(G)\cong \mathrm{PGL}(2,q)$, $G'\cong\mathrm{SL}(2,q)$ and
$Z(G)$ is of order $q-1$. In particular,  if $q$ is even, then
$G=G' \times Z(G)$.
\end{thm}
\begin{thm}\label{SL}
Let $G$ be a group such that $\mathcal{A}_G\cong
\mathcal{A}_{\mathrm{SL}(2,q)}$ for some prime power $q\geq 2$.
Then $G\cong \mathrm{SL}(2,q)$.
\end{thm}
  For any prime power $q$, we
denote by $\mathrm{PGL}(2,q)$ (resp. $\mathrm{PSL}(2,q)$) the
projective general (resp. special) linear group of degree 2 over
the finite field of order $q$.
\section{\bf Proofs}
Here for convenience, we remind some of the properties of
non-commuting graphs and common properties of groups with
isomorphic non-commuting graphs.\\
 Let $G$ and $H$ be two
non-abelian groups such that $\mathcal{A}_G\cong \mathcal{A}_H$.
By Lemma 3.1 of \cite{AAM}, if one of $G$ or $H$ is finite, then
so is the other. The order of $\mathcal{A}_G$ is $|G|-|Z(G)|$ and
so $|G|-|Z(G)|=|H|-|Z(H)|$. The degree of a vertex $x$ in
$\mathcal{A}_G$ is equal to $|G|-|C_G(x)|$. Thus the multisets
 of  degrees of vertices of two graphs
$\mathcal{A}_G$ and $\mathcal{A}_H$ are the same.\\
A non-abelian group $G$ is called an $AC$-group, if the
centralizer  $C_G(x)$ of every non-central element $x$ of $G$ is
abelian. \\
Recall that a non-empty subset $X$ of the vertices of a simple
graph $\Gamma$ is called independent if every two distinct
vertices of $X$ are not joint by an edge in $\Gamma$. Thus an
independent set $S$ of  the non-commuting graph of a group is a
set of pairwise commuting non-central elements of the group.
\begin{lem}\label{lemm}
Let $G$ and $H$ be  two finite non-abelian group with
$\mathcal{A}_G\cong \mathcal{A}_H$. \\
{\rm (1)} \; If $|G|=|H|$, then the multisets (sets with
multiplicities) $\{|C_G(g)|\;:\; g\in G \backslash Z(G)\}$ and
$\{|C_H(h)| \;:\; h\in H \backslash
Z(H)\}$ are equal.\\
{\rm (2)} \; If $G$ is an $AC$-group, then $H$ is also an
$AC$-group.
\end{lem}
\begin{proof}
(1) \; It is straightforward, if we note that the set of
non-adjacent vertices to a vertex $x$   in the non-commuting graph
$H$ is $C_H(x)\backslash Z(H)$, and note that from $|G|=|H|$ we
also have $|Z(G)|=|Z(H)|$, since
$|H|-|Z(H)|=|G|-|Z(G)|$.\\
 (2) \; Note that a subgroup $S$ of a non-abelian group $K$
is abelian if and only if either $S\backslash Z(S)$ is empty or
$S\backslash Z(S)$ is an independent set in the non-commuting
graph $\mathcal{A}_K$.  Let $\phi$ be a graph isomorphism from
$\mathcal{A}_H$ onto $\mathcal{A}_G$. Then it is easy to see that
for each $h\in H\backslash Z(H)$,
$$C_H(h)\backslash Z(H)=\phi^{-1}\big(C_G(\phi(h))\backslash Z(G)\big).  \eqno{(*)}$$
Now since  $G$ is an $AC$-group,  $C_G(g)$ is abelian for all
$g\in G\backslash Z(G)$ and so it follows from $(*)$ and the
remark above that $C_H(h)$ is abelian. Hence $H$ is also an
$AC$-group.
\end{proof}
  Finite non-nilpotent $AC$-groups were completely
characterized by Schmidt \cite{S}.
 We use the following results in our proofs.
\begin{thm}{\rm (\cite[Satz 5.9.]{S})} \label{AC-nonsol}
Let $G$ be a finite non-solvable group. Then $G$ is an $AC$-group
if and only if $G$ satisfies one of the following conditions:
\begin{enumerate}
\item $G/Z(G)\cong \mathrm{PSL}(2,p^n)$ and $G'\cong
\mathrm{SL}(2,p^n)$, where $p$ is a prime and $p^n>3$.
\item  $G/Z(G)\cong\mathrm{PGL}(2,p^n)$ and $G'\cong
\mathrm{SL}(2,p^n)$, where $p$ is a prime and $p^n>3$.
\item $G/Z(G)\cong \mathrm{PSL}(2,9)$   and $G'$
 is a covering group of $A_6$. In particular, $G'$ is isomorphic to
\begin{align*} \mathcal{A}\cong<c_1,c_2,c_3,c_4, k \;|\;
c_1^3=c_2^2=c_3^2=c_4^2=(c_1c_2)^3=(c_1c_3)^2=&\\
=(c_2c_3)^3=(c_3c_4)^3=k^3, (c_1c_4)^2=k,&\\  c_2c_4=k^3c_4c_2,
kc_i=c_ik (i=1, \dots, 4), k^6=1>. &
\end{align*}
\item $G/Z(G)\cong \mathrm{PGL}(2,9)$   and $G'\cong\mathcal{A}$.
\end{enumerate}
\end{thm}
For a finite simple graph $\Gamma$, we denote by $\omega(\Gamma)$
the maximum size of a complete subgraph of $\Gamma$. So
$\omega(\mathcal{A}_G)$ is the maximum number of pairwise
non-commuting elements in a finite non-abelian group $G$.
\begin{thm}{\rm  (Satz 5.12 of \cite{S})}\label{AC-sol}
Let $G$ be a finite non-abelian solvable group.  Then $G$ is an
$AC$-group if and only if $G$ satisfies one of the following
properties:
\begin{enumerate}
\item $G$ is non-nilpotent and it has an abelian normal subgroup $N$ of prime index and
$\omega(\mathcal{A}_G)=|N:Z(G)|+1$.
\item $G/Z(G)$ is a Frobenius group with Frobenius kernel and
complement $F/Z(G)$ and $K/Z(G)$, respectively  and $F$ and $K$
are abelian subgroups of $G$; and
$\omega(\mathcal{A}_G)=|F:Z(G)|+1$.
\item  $G/Z(G)$ is a Frobenius group with Frobenius kernel and
complement $F/Z(G)$ and $K/Z(G)$, respectively; and  $K$ is an
abelian subgroup of $G$, $Z(F)=Z(G)$, and $F/Z(G)$ is of prime
power order; and
$\omega(\mathcal{A}_G)=|F:Z(G)|+\omega(\mathcal{A}_F)$.
\item $G/Z(G)\cong S_4$ and $V$ is a non-abelian subgroup of $G$
such that $V/Z(G)$ is the Klein $4$-group of $G/Z(G)$; and
$\omega(\mathcal{A}_G)=13$.
\item $G=A \times P$, where $A$ is an abelian subgroup and $P$ is an
$AC$-subgroup of prime power order.
\end{enumerate}
\end{thm}
\noindent{\bf Proof of Theorems \ref{GL} and \ref{SL}.} Let
$q_1=p_1^{n_1}>3$ and $q_2=p_2^{n_2}\geq 2$, where $p_1$ and $p_2$
are  two prime numbers. Let  $M_1=\mathrm{GL}(2,q_1)$ and
$M_2=\mathrm{SL}(2,q_2)$ and suppose that $G_1$ and $G_2$ are two
groups such that
$\mathcal{A}_{G_i}\cong \mathcal{A}_{M_i}$ for $i=1,2$.\\
If $q_1=2$, then $M_2\cong S_3$ is the symmetric group of degree
$3$ and so by Proposition 3.2 of \cite{AAM}, $G_2\cong M_2$. If
$q_2=3$, then $M_2$ is a group of order $24$ and its center has
order $2$.  As there is some
 element $g$ with $|C_{G_2}(g)|=6$, we see that there is no normal Sylow
 $3$-subgroup in
$G_2$. Hence $G_2/Z(G_2) \cong A_4$. So either $G_2 \cong M_2$ or
$\mathbb{Z}_2  \times A_4$. But as there are elements $h \in G_2$
with $|C_{G_2}(h)| = 4$, we have  $G_2 \cong M_2$.\\
Now let $q_2>3$. If $q_2$ is even, then $\mathrm{PSL}(2,q_2)\cong
M_2$ and so
$\mathcal{A}_{G_2}\cong\mathcal{A}_{\mathrm{PSL}(2,q_2)}$. Then by
Corollary 5.3 of \cite{AAM}, $G_2\cong \mathrm{PSL}(2,q_2)\cong
M_2$. Therefore we may assume that $q_2\geq 5$ is odd.\\
By Proposition 4.3 of \cite{AAM}, $|G_i|=|M_i|$  for $i=1,2$. By
Lemma 3.5 of \cite{AAM}, $M_i$'s are  $AC$-groups and so by Lemma
\ref{lemm}(2)   $G_i$'s are also $AC$-groups. Now since
$\mathcal{A}_{G_i}\cong \mathcal{A}_{M_i}$ and $|G_i|=|M_i|$, by
Lemma \ref{lemm} we have the following equality between  multisets
$$W_i=\{|C_{G_i}(x)| \;|\; x\in G_i\backslash Z(G_i)\}=\{|C_{M_i}(g)| \;|\; g\in
M_i\backslash Z(M_i)\}, \;\; i=1,2.$$ Also, since the order of two
graphs $\mathcal{A}_{G_i}$ and $\mathcal{A}_{M_i}$ are the same,
we have that $|G_i|-|Z(G_i)|=|M_i|-|Z(M_i)|$ and so
$|Z(G_i)|=|Z(M_i)|$ ($i=1,2$). Therefore, it follows from
Propositions 3.14 and 3.26 of \cite{AAM} that the multiset $W_1$
(resp., $W_2$) consists of three distinct integers $(q_1-1)^2$,
(resp., $(q_2-1)/2$) $q_1^2-1$ (resp., $(q_2+1)/2$) and
$q_1(q_1-1)$ (resp., $q_2$) with multiplicities
$\frac{q_i(q_i+1)}{2}$, $\frac{q_i(q_i-1)}{2}$
and $q_i+1$, respectively.\\

We claim that both groups $G_1$ and $G_2$ are not nilpotent.
Suppose, for a contradiction, that $G_i$ is nilpotent, then so is
$G_i/Z(G_i)$. Therefore $G_i/Z(G_i)$ has only one Sylow
$p_i$-subgroup. Since $W_1$ (resp., $W_2$) contains $q_i+1$
elements all equal to $q_1(q_1-1)$ (resp., $q_2$), there exist
two non-central elements $x_1$ and $y_1$ in $G_1$ (resp., $x_2$
and $y_2$ in $G_2$) such that $C_{G_1}(x_1)\not=C_{G_1}(y_1)$ and
$|C_{G_1}(x_1)|=|C_{G_1}(y_1)|=q_1(q_1-1)$ (resp.,
$C_{G_2}(x_2)\not=C_{G_2}(y_2)$ and
$|C_{G_2}(x_2)|=|C_{G_2}(y_2)|=2q_2$). Since $C_{G_i}(x_i)/Z(G_i)$
and $C_{G_i}(y_i)/Z(G_i)$ are of the same order $q_i$, they are
Sylow $p_i$-subgroups of $G_i/Z(G_i)$. It follows that
$C_{G_i}(x_i)/Z(G_i)=C_{G_i}(y_i)/Z(G_i)$ and so
$C_{G_i}(x_i)=C_{G_i}(y_i)$, a contradiction. \\

Now we prove that both $G_1$ and $G_2$ cannot be solvable.
Suppose, for a contradiction, that $G_i$'s are solvable. Then
since $G_i$ are not nilpotent, it follows from  Theorem
\ref{AC-sol} that $G_i$'s satisfy one of properties (1)-(4) in
Theorem \ref{AC-sol}. Since $q_i>3$ is a prime power and $q_2$ is
odd, both of $|G_1/Z(G_1)|=q_1(q_1^2-1)$ and
$|G_2/Z(G_2)|=\frac{q_2(q_2^2-1)}{2}$ cannot equal to $|S_4|=24$.
Therefore $G_i$'s do not satisfy $(4)$. If $G_i$ satisfies either
(1) or (2), then $W_i$ contains only two distinct elements, since
in the case (1), if $x\in N\backslash Z(G_i)$, then
$C_{G_i}(x)=N$; and if $x\in G\backslash N$ then $C_N(x)=Z(G_i)$;
so $|C_{G_i}(x)|\in\big\{|G_i:N||Z(G_i)|,|N|\big\}$ for every
non-central element $x\in G_i$, and in the case (3),
$|C_{G_i}(x)|\in\big\{|K|,|F|\big\}$. This is not possible, since
$W_i$ has exactly three distinct elements.\\
Finally, suppose that $G_i$ satisfies (3). Note that
$C_{G_i}(x)=C_F(x)$ for every non-central element $x\in F$ and
$C_{G_i}(x)$ is equal to the conjugate of $K$ which contains the
non-central element $x$. It follows that the three  distinct
elements of the multiset $W_i'=\{w/|Z(G)| \;|\; w\in W_i\}$ are
$|K/Z(G_i)|, r^k,r^\ell$, where $|F/Z(G)|=r^m$ and  $r$ is a prime
number. This is impossible, since no two of the numbers $q_1$,
$q_1+1$
or $q_1-1$ (resp., $q_2$, $(q_2+1)/2$ or $(q_2-1)/2$) can simultaneously be powers of the same prime.\\

Hence $G_i$'s are  finite non-solvable $AC$-groups. By Theorem
\ref{AC-nonsol}, $G_i$'s satisfy one of the conditions (1)-(4)
stated in Theorem \ref{AC-nonsol}.
 If $G_i$ satisfies (3), then  as $A_6$ has self-centralizing elements of order 4 and
5, $G_i$ contains two elements $x_i,y_i$ such that
$|\frac{C_{G_i}(x_i)}{Z(G_i)}|=4$ and
$|\frac{C_{G_i}(y_i)}{Z(G_i)}|=5$. This implies that
$q_1\in\{4,5\}$ and $q_2=9$. Therefore $|G_1/Z(G_1)|=4\cdot
(4^2-1)$ or $5\cdot (5^2-1)$, which is impossible, since
$|G_1/Z(G_1)|=|\mathrm{PSL}(2,9)|=\frac{9\cdot(9^2-1)}{2}$. Since
$M_2=\mathrm{SL}(2,9)$, $|Z(M_2)|=2$. But $3$ divides $Z(G_2)$ by
Theorem \ref{AC-nonsol}, a contradiction.\\
 If $G_i$ satisfies (4), then  as $\mathrm{PGL}(2,9)$ contains self-centralizing
elements of order 8 and 10, $G_i$ contains two elements $t_i$ and
$s_i$ such that $|\frac{C_{G_i}(t_i)}{Z(G_i)}|=8$ and
$|\frac{C_{G_i}(s_i)}{Z(G_i)}|=10$. It follows that
$\{8,10\}\subset \{q_2,\frac{q_2-1}{2},\frac{q_2-1}{2}\}$, which
is a contradiction as $q_2$ is a prime power; and for $i=1$,  it
follows that $q_1=9$. Hence $|Z(M_1)| = 8$. But 3 divides
$|Z(G_1)|$, a contradiction.
Thus $G_i$ does not satisfy both (3) and (4). \\
Now suppose that $G_i$ satisfies either (1) or (2). The group
$\mathrm{PGL}(2,r^m)$ (resp. $\mathrm{PSL}(2,r^m)$) has a
partition $\mathcal{P}$ consisting of $r^m+1$ Sylow $r$-subgroups,
$\frac{(r^m+1)r^m}{2}$ cyclic subgroups of order $r^m-1$ (resp.
$\frac{r^m-1}{\gcd(2,r^m-1)}$) and $\frac{(r^m-1)r^{m}}{2}$
cyclic subgroups of order $r^m+1$ (resp.
$\frac{r^m+1}{\gcd(2,r^m-1)}$) (see pp. 185-187 and p.193 of
\cite{H}). Now \cite[(5.3.3) in p.112]{S} states that if $x\in
G_i\backslash Z(G_i)$, then $C_{G_i}(x_i)/Z(G_i)$ belongs to
$\mathcal{P}$. Suppose that $G_i/Z(G_i)\cong \mathrm{PGL}(2,r^m)$
(resp. $\mathrm{PSL}(2,r^m)$). Thus there exist elements
$g_{i1},g_{i2},g_{i3}\in G_i\backslash Z(G_i)$ such that
$|C_{G_i}(g_{i1})|/|Z(G_i)|=r^m$,
$|C_{G_i}(g_{i2})|/|Z(G_i)|=r^m-1$ (resp.
$\frac{r^m-1}{\gcd(2,r^m-1)}$), $|C_{G_i}(g_{i3})|/|Z(G_i)|=r^m+1$
(resp. $\frac{r^m+1}{\gcd(2,r^m-1)}$).\\
 Therefore, if $G_i/Z(G_i)\cong \mathrm{PGL}(2,r^m)$ (resp. $\mathrm{PSL}(2,r^m)$),
 then $\{q_1-1,q_1,q_1+1\}=\{r^m-1,r^m,r^m+1\}$ (resp.
 $\{\frac{r^m-1}{\gcd(2,r^m-1)},r^m,\frac{r^m+1}{\gcd(2,r^m-1)}\}$ and $\{\frac{q_2-1}{2},\frac{q_2+1}{2},q_2\}=\{r^m-1,r^m,r^m+1\}$ (resp.
 $\{\frac{r^m-1}{\gcd(2,r^m-1)},r^m,\frac{r^m+1}{\gcd(2,r^m-1)}\}$).\\
 It follows that, if $G_2/Z(G_2)\cong \mathrm{PGL}(2,r^m)$
then $q_2=r^m+1$, $\frac{q_2+1}{2}=r^m$ and
$\frac{q_2-1}{2}=r^m-1$. Since $q_2\geq 5$, we have a
contradiction as $3\leq q_2-\frac{q_2-1}{2}=r^m+1-r^m+1=2$. Hence
$G_2/Z(G_2)\cong \mathrm{PSL}(2,r^m)$, $G_2'\cong
\mathrm{SL}(2,r^m)$ and $r^m=q_2$.  Now since
$|G_2'|=|G_2|=|M_2|$, we have that $G_2\cong
M_2=\mathrm{SL}(2,q_2)$. This completes the proof of Theorem
\ref{SL}.\\
Now if  $G_1/Z(G_1)\cong \mathrm{PGL}(2,r^m)$ (resp.
$\mathrm{PSL}(2,r^m)$), it follows that
 $q_1=r^m$ (resp. $q_1=2^m$). Since $\mathrm{PSL}(2,2^m)\cong
 \mathrm{PGL}(2,2^m)$, we have if $G_1$ satisfies either (1)  or
 (2), then $G_1/Z(G_1)\cong \mathrm{PGL}(2,q_1)$ and $G_1'\cong
 \mathrm{SL}(2,q_1)$.\\
 Therefore $G_1$ is a group satisfying the following conditions:
$$G_1/Z(G_1)\cong \mathrm{PGL}(2,q_1) \;\; (\bullet), \;\;  G_1'\cong
\mathrm{SL}(2,q_1)\;\;   \;\;\text{and}\;\; |Z(G_1)|=q_1-1.$$
 If $q_1=2^m$ for some integer $m>1$, then
$\mathrm{SL}(2,q_1)\cong \mathrm{PGL}(2,q_1)\cong
\mathrm{PSL}(2,q_1)$. Thus as $\mathrm{PSL}(2,q_1)$ is a
non-abelian simple group, it follows from $(\bullet)$ that
$G_1=G_1'Z(G_1)$; and since $G_1'$ is also non-abelian simple,
$G_1'\cap Z(G_1)=1$. Therefore $G_1=G_1' \times Z(G_1)$.
   This completes the proof of Theorem \ref{GL}. $\hfill \Box$\\

\noindent{\bf Acknowledgments.} This work was done during author's
sabbatical leave study  in Summer 2007 at ICTP, Trieste, Italy.
He is  grateful to University of Isfahan for its financial
support as well as  ICTP for their warm hospitality. He  was also
supported by the Center of Excellence for Mathematics, University
of Isfahan. The author is indebted to the referee for his/her
careful reading, valuable comments and pointing out a serious
error in the previous version of Theorem \ref{GL}.

redpajama_set_name: RedPajamaArXiv


This sound insulation acoustic material is flexible and open cell foam. It is made from melamine resin. The distinctive feature is its delicate 3-dimensional filigree network composition. It is promptly thermoformable filaments. There is effective use of BASOTECT melamine foam blocks in the product fabrication, under sole marketing rights for India.
Nitrile Rubber (NBR) is a co-polymer of Acrylonitrile and Butadiene. The synthetic rubber is extremely oil-resistant with good mechanical properties. It is perfect in tensile strength, compression set, flexing, and more. The Supreme NBR Sheets are suitable for many industries / applications. They are used in the production of rollers, gaskets, fuel hoses, etc.
There is a range of closed cell and open cell cross-linked block foams. They are EPDM blended. We serve for various densities and hardness, for tapes or gaskets applications.


text:
Q: Determine if a set is a subspace of $\mathbb{C}^4$ I have to determine if
$$
W_1=\left\{(x^1, x^2, x^3, x^4)\in\mathbb{C}^4:\frac{x^1}{x^3}=2,\ x^2=2x^3\right\}
$$
and
$$
W_2=\left\{(x^1, x^2, x^3, x^4)\in\mathbb{C}^4:x^1-3x^2+2x^3=4\right\}
$$
are subspaces of $\mathbb{C}^4$.
My attempt. I immediately conclude that $W_1$ and $W_2$ are not subspaces because $(0, 0, 0, 0)\notin W_1,W_2$. Indeed, in $W_1$, $x^3$ must be different from $0$ and, in $W_2$, $(x^1, x^2, x^3, x^4)=(0, 0, 0, 0)$ does not satisfy $x^1-2x^2+2x^3=4$. Is it right?
Thank You

A: You  are right, fine arguments!

redpajama_set_name: RedPajamaStackExchange


text:
Disruptive Behavior: Why It's Often Misdiagnosed
Tantrums and defiance may mask issues that aren't apparent to teachers and parents
by Child Mind Institute, Inc
Most children have occasional temper tantrums or emotional outbursts, but when kids repeatedly lash out, are defiant, or can't control their tempers, it can impair their functioning in school and cause serious family turmoil.
The first challenge in helping a child manage his behavior better is to understand why he's doing what he's doing. In the same way that a headache or a fever can be caused by many things, frequent outbursts — which clinicians call "emotional dysregulation"— can reflect a number of different underlying issues.
st children have occasional temper tantrums or emotional outbursts, but when kids repeatedly lash out, are defiant, or can't control their tempers, it can impair their functioning in school and cause serious family turmoil.
We tend to associate anxiety with kids freezing, avoiding things they're afraid of, or clinging to parents, notes says Dr. Rachel Busman, a clinical psychologist at the Child Mind Institute. "But you can also see tantrums and complete meltdowns."
"Anxiety is one of those diagnoses that is a great masquerader," explains Dr. Laura Prager, director of the Child Psychiatry Emergency Service at Massachusetts General Hospital. "It can look like a lot of things. Particularly with kids who may not have words to express their feelings, or because no one is listening to them, they might manifest their anxiety with behavioral dysregulation."
Many children with ADHD, especially those who experience impulsivity and hyperactivity, may appear to be intentionally oppositional. These children may have difficulty sitting still, they grab things from other kids, blurt out inappropriate remarks, have difficulty waiting their turn, interrupt others, and act without thinking through the consequences.
These symptoms are more a result of their impaired executive functioning skills—their ability to think ahead and assess the impact of their behavior—than purposeful oppositional behavior.
In a recent study conducted by Dr. Amy Roy of Fordham University, more than 75 percent of children who presented with severe temper outbursts also fit the criteria for ADHD. That doesn't necessarily mean they've been diagnosed with ADHD — in fact the disorder may be overlooked in kids who have a history of aggression.
"What people don't understand is that a lack of focus, an inability to complete work and tolerate boredom, among other symptoms, can contribute to the escalation toward the explosive outbursts," explains Dr. Vasco Lopes, a clinical psychologist. So you have to get to the underlying cause."
When a child acts out repeatedly in school, it's possible that the behavior stems from an undiagnosed learning disorder. Say he has extreme difficulty mastering math skills, and laboring unsuccessfully over a set of problems makes him very frustrated and irritable. Or he knows next period is math class.
"Kids with learning problems can be masters at being deceptive — they don't want to expose their vulnerability. They want to distract you from recognizing their struggle," explains Dr. Nancy Rappaport, a Harvard Medical School professor who specializes in mental health care in school settings. "If a child has problems with writing or math or reading, rather than ask for help or admit that he's stuck, he may rip up an assignment, or start something with another child to create a diversion."
Paying attention to when the problematic behavior happens can lead to exposing a learning issue, she adds. "When parents and teachers are looking for the causes of dysregulation, it helps to note when it happens — to flag weaknesses and get kids support."
Children who have trouble processing sensory information can have extreme and sometimes disruptive behavior when their senses are feeling overwhelmed. They might do things like scream if their faces get wet, throw violent tantrums whenever you try to get them dressed, crash into walls and even people, and put inedible things, including rocks and paint, into their mouths.
Besides tantrums and mood swings, kids with sensory processing issues are also at risk for running away when an environment becomes too overwhelming for them. The "fight or flight" response can kick in when kids are feeling overloaded with sensory input, and their panicked reactions can put them in real danger.
How Anxiety Leads to Disruptive Behavior
Kids who seem oppositional are often severely anxious
Caroline Miller
A 10-year-old boy named James has an outburst in school. Upset by something a classmate says to him, he pushes the other boy, and a shoving-match ensues. When the teacher steps in to break it up, James goes ballistic, throwing papers and books around the classroom and bolting out of the room and down the hall. He is finally contained in the vice principal's office, where staff members try to calm him down. Instead, he kicks the vice principal in a frenzied effort to escape. The staff calls 911, and James ends up in the Emergency Room.
To the uninitiated, James looks like a boy with serious anger issues. It's not the first time he's flown out of control. The school insists that his parents pick him up and take him home for lunch every day because he's been banned from the cafeteria.
Unrecognized anxiety
But what's really going on? "It turns out, after an evaluation, that he is off the charts for social anxiety," reports Dr. Jerry Bubrick, a child psychologist at the Child Mind Institute. "He can't tolerate any—even constructive—criticism. He just will shut down altogether. James is terrified of being embarrassed, so when a boy says something that makes him uncomfortable, he has no skills to deal with it, and he freaks out. Flight or fight."
James's story illustrates something that parents and teachers may not realize—that disruptive behavior is often generated by unrecognized anxiety. A child who appears to be oppositional or aggressive may be reacting to anxiety—anxiety he may, depending on his age, not be able to articulate effectively, or not even fully recognize that he's feeling.
"Especially in younger kids with anxiety you might see freezing and clinging kind of behavior," says Dr. Rachel Busman, a clinical psychologist at the Child Mind Institute, "but you can also see tantrums and complete meltdowns."
A great masquerader
Anxiety manifests in a surprising variety of ways in part because it is based on a physiological response to a threat in the environment, a response that maximizes the body's ability to either face danger or escape danger. So while some children exhibit anxiety by shrinking from situations or objects that trigger fears, some react with overwhelming need to break out of an uncomfortable situation. That behavior, which can be unmanageable, is often misread as anger or opposition.
The more commonly recognized symptoms of anxiety in a child are things like trouble sleeping in his own room or separating from his parents, avoidance of certain activities, a behaviorally inhibited temperament. "Anyone would recognize those symptoms," notes Dr. Prager, co-author of Suicide by Security Blanket, and Other Stories from the Child Psychiatry Emergency Service. But in other cases the anxiety can be hidden.
"When the chief complaint is temper tantrums, or disruption in school, or throwing themselves on the floor while shopping at the mall, it's hard to know what it means," she explains. "But it's not uncommon, when kids like that come in to the ER, for the diagnosis to end up being a pretty profound anxiety disorder."
To demonstrate the surprising range of ways young children express anxiety, Dr. Prager mentions a case she had just seen of a young child who presented with hallucinations, but whose diagnosis she predicted will end up being somewhere on the anxiety spectrum. "Little kids who say they're hearing things or seeing things, for example, may or may not be doing that. These may not be the frank hallucinations we see in older patients who are schizophrenic, for example. They might be a manifestation of anxiety and this is the way the child expresses it."
It's not uncommon for children with serious undiagnosed anxiety to be disruptive at school, where demands and expectations put pressure on them that they can't handle. And it can be very confusing to teachers and other staff members to "read" that behavior, which can seem to come out of nowhere.
Dr. Nancy Rappaport, a Harvard Medical School professor who specializes in mental health care in school settings, sees anxiety as one of the causes of disruptive behavior that makes classroom teaching so challenging. "The trouble is that when kids who are anxious become disruptive they push away the very adults who they need to help them feel secure," notes Dr. Rappaport. "And instead of learning to manage their anxiety, they end up spending half the day in the principal's office."
Dr. Rappaport sees a lot of acting out in school as the result of trauma at home. "Kids who are struggling, not feeling safe at home," she notes, "can act like terrorists at school, with fairly intimidating kinds of behavior." Most at risk, she says, are kids with ADHD who've also experienced trauma. "They're hyper-vigilant, they have no executive functioning, they misread cues and go into combat."
Giving kids tools to handle anxiety
When a teacher is able to build a relationship with a child, to find out what's really going on with him, what's provoking the behavior, she can often give him tools to handle anxiety and prevent meltdowns. In her book, The Behavior Code: A Practical Guide to Understanding and Teaching the Most Challenging Students, Dr. Rappaport offers strategies kids can be taught to use to calm themselves down, from breathing exercises to techniques for distracting themselves.
"When a teacher understands the anxiety underlying the opposition, rather than making the assumption that the child is actively trying to make her miserable, it changes her approach," says Dr. Rappaport, "The teacher is able to join forces with the child himself and the school counselor, to come up with strategies for preventing these situations."
If it sounds labor-intensive for the teacher, it is, she notes, but so is dealing with the aftermath of the same child having a meltdown.
Anxiety confused with ADHD
Anxiety also drives a lot of symptoms in a school setting that areeasily misconstrued as ADHD or defiant behavior.
"I'll see a child who's having difficulty in school: not paying attention, getting up out of his seat all the time, asking a lot of questions, going to the bathroom a lot, getting in other kids' spaces," explains Dr. Busman. "His behavior is disrupting other kids, and is frustrating to the teacher, who's wondering why she has to answer so many questions, and why he's so wrapped up in what other kids are doing, whether they're following the rules."
People tend to assume what's happening with this child is ADHD inattentive type, but it's commonly anxiety. Kids with OCD, mislabeled as inattentive, are actually not asking all those questions because they're not listening, but rather because they need a lot of reassurance.
How to identify anxiety
"It probably occurs more than we think, either anxiety that looks disruptive or anxiety coexisting with disruptive behaviors," Dr. Busman adds. "It all goes back to the fact that kids are complicated and symptoms can overlap diagnostic categories, which is why we need to have really comprehensive and good diagnostic assessment."
First of all, good assessment needs to gather data from multiple sources, not just parents. "We want to talk to teachers and other people involved with the kid's life," she adds, "because sometimes kids that we see are exactly the same at home and at school, sometimes they are like two different children."
And it needs to use rating scales on a full spectrum of behaviors, not just the area that looks the most obvious, to avoid missing things.
Dr. Busman also notes that a child with severe anxiety who's struggling in school might also have attentional or learning issues, but she might need to be treated for the anxiety before she can really be evaluated for those. She uses the example of a teenager with OCD who she's "doing terribly" in school. "She's ritualizing three to four hours a day, and having constant intrusive thoughts—so we need to treat that, to get the anxiety under control before we ask, how is she learning?"

redpajama_set_name: RedPajamaCommonCrawl


REMIDA, established in 1996 in Reggio Emilia, is a cultural project focused on sustainability, creativity, and research on waste materials. It fosters the idea that waste materials, the imperfect, are holders of an ethical message, able to stir reflections, which aim to be an educational resource, thus avoiding the definition of "useless" and "waste".
The materials of REMIDA are supplied by ca. 200 companies that deliver wastages, defective materials, remainder funds or production surplus destined for disposal, which the Centre recovers and proposes as a subject to investigate.
The Center is visited every year by more than 3,000 people among teachers, artists, students, administrators and interested people coming from all over the world. It organizes meetings with schools of every grade, professional development courses and events with the city.
REMIDA is a project of the Istituzione Preschools and Infant Toddler Centres of the Municipality of Reggio Emilia and of Iren Emilia. It is ruled by the Fondazione Reggio Children – Centro Loris Malaguzzi and is supported by a network of volunteers sharing and fostering its aims.


text:
The war is over: How Hoges and Cornell settled with the ATO
Jaclyn Densley
The most expensive tax investigation in Australia's history is officially over. After an investigation lasting eight years, last night the solicitor for Paul Hogan and John Cornell issued a press release advising that his clients "and their related entities have reached a settlement with the Commissioner of Taxation on a 'without admission' basis".
Hogan, Cornell and the ATO have agreed that the terms of the settlement are to be confidential. But as part of the settlement, the Departure Prohibition Order issued against Hogan has been revoked by the Commissioner. The settlement was reached following mediation before former High Court Judge Michael McHugh AC QC, who was brought in by both parties to break the impasse.
The entertainment duo were the chief targets of the Federal Government's $433 million Operation Wickenby witch-hunt for high-profile tax cheats. The ATO claimed they owed up to $150 million in unpaid taxes and penalties. The relationship turned toxic as Hogan branded ATO investigators "clowns" and likened them to the Taliban.
Damaging leaks to the media by government authorities had painted the pair as tax cheats and criminals, with Hogan believing he had incurred lost earnings between $10-15 million per year because no one in business would touch him with a barge pole after his name was tarnished with these accusations. This prompted Hogan to pursue a multimillion dollar compensation case against the Government. In 2010 the Australian Crime Commission called a halt to the criminal investigation of Hogan and Cornell after declaring there was no evidence of a criminal nature against them.
Colicitor Andrew Robinson told Crikey today it has come as a relief to his clients. "I'm not sure if they are happy. I don't think that is the right word. Relief would be a better description," he said.
"They have a life and now they can get on with it. I don't think anyone is proud of what happened. To be pursued for eight years and labelled a criminal by the ACC was just terrible. When they dropped the criminal charges against Paul and John in 2010, I can tell you within a month of that happening we were suddenly able to have meaningful discussions with the Tax Office."
The last point of meaningful discussions made by Robinson is valid as the tax civil matter never made it to court. Objections lodged by Robinson against the various assessments made by the ATO were disallowed by them and Crikey understands it was at this point negotiations on settlement started.
ATO sources have told Crikey that no one is really happy with the settlement. The Government never really got their man while a confidentiality clause prevents Hogan and Cornell spilling the beans on the Government.
"It's a settlement both parties can live with," one source told me. "All the public sees is a press release that has been legalled but they will never find out what really happened. The stuff-ups will never see the light of day."
Crikey understands the settlement reached is a substantial reduction on what the ATO was demanding and that Hogan will not have to sell any of his assets to pay the bill. Hogan's negotiators went in hard on the following points:
That tax haven advice was supplied by the late Graham Hill, QC, who went on to become a judge of the Federal Court. He was also a mate of the tax commissioner Michael D'Ascenzo. The man that mediated the settlement Michael McHugh once described Hill as "probably the leading lawyer in Australia on taxation matters".
Damaging leaks to the media by the Government had compromised the Hogan/Cornell case.
The multi-million dollar compensation case was real and the ATO and the Government were "shit scared" of the ramifications of any potential court matter.
In all my years as a tax investigator and tax consultant, I have never seen anything like the Hogan case that became a public war. Taxpayers have a right to have their tax affairs dealt with in private and the method with which Hogan and Cornell had their personal tax affairs leaked to the media was unprecedented.
While there were right and wrongs from both sides, ultimately commonsense prevailed and the matter was settled.
This article first appeared on Crikey.


I've had several folks asking for prints from the August 21 Total Solar Eclipse.
So I'm now selling prints for anyone who is interested… also will be able to sell prints of any of the other astro images I have on my web site.
If you're interested, contact me.
Here's another shot from the August 21, 2017 total solar eclipse… this is a composite of the Baily's Beads, corona and chromosphere and prominences.
Click on the image or link to see the thumbnail page with links to high resolution images with technical information about the picture and how it was taken.
Here is a composite image of Baily's Beads comprised of six exposures made just before the start of totality at 2nd contact during the August 21, 2017 total eclipse of the Sun.
Here's a shot of the "Newest" Moon with Earthshine during totality.
There's also some stars recorded in the field, the faintest of which is magnitude 8.7.
This is a single 1 second exposure at f/6.5 at ISO 200 at 420mm of focal length.
Diamond rings at 2nd and 3rd contact frame totality during the American Total Solar Eclipse of August 21, 2017.
This is a composite of the diamond rings at the start and end of totality, combined with an HDR Composite of totality made of 14 different exposures.
This is a wide-angle multiple-exposure composite, or what I like to call a "WAMEC", of 28 filtered images during the partial phases of the eclipse combined with one longer one shot unfiltered at totality.
I shot them automated with Solar Eclipse Maestro, one frame every five minutes, and then a seven-minute break between the last partial and totality so that there would be a little extra space for the corona.
You can't really see it here, but in the high-resolution image the partial phases are not symmetrical. Interestingly, the time from C1 to C2 is not the same length as the time from C3 to C4.
Partial phases were shot with a Baader AstroSolar Film filter which produces a bluish-white image of the Sun. I colorized the partial phase images to make the Sun yellow. Exposures for the partial phases was 1/3200th second at f/6.3 at ISO 200.
Totality was shot unfiltered. Exposure was 1/13th second at f/6.3 at ISO 800 at f/3.5.
We were lucky that some high clouds cleared just before the eclipse and that being up on a mountain at Bandit Springs in Oregon at 4,517 feet elevation got us up out of the valley and smoke from forest fires was not a problem. Of course, it was just a matter of luck that the wind was blowing the right way, but the smoke did tend to settle in the valleys.
This high-dynamic-range image of the solar corona which includes about 16 seconds of exposure took 18 hours to manually process.
It is a composite of 14 exposures from 1/4000th second down to 2 seconds at one-stop intervals.
It was put together with special sharpening techniques to reveal detail in the corona.
Be sure to click on the link above for a large image so you can better see details as well as technical information on how the image was taken.


text:
Enjoy Jakarta Astro Indonesia Open
Damai Indah G&CC
Jakarta, Indonesia 15 Feb 2007 - 18 Feb 2007
Mikko makes history with victory in Jakarta
Mikko Ilonen inked his name into the record books when he emerged as the first Finn to win on The European Tour International Schedule following a one stroke success at the Enjoy Jakarta Astro Indonesia Open on Sunday.
The 27 year old battled through the inclement weather and fended off three other challengers to complete the final round in one under par 70. Ilonen delivered a winning total of nine under par 275 at the Damai Indah Golf & Country Club to walk away with a first prize of €134,563 and a priceless two-year exemption to The European Tour.
Filipino Frankie Minoza, who won his own national open two weeks ago, was tied with Ilonen for much of the final day but suffered a double bogey on the 14th hole and finished even par for the day in joint second spot.
Alongside Minoza on eight under par 276 was India's Shiv Kapur, who was round in 67, and Australian Andrew Tampion, who bogeyed the last for a 69 to complete a hugely creditable showing in only his fourth European Tour event.
All four of the leading challengers were hoping to land their maiden European Tour title but in the end that honour went to Ilonen, who could afford the luxury of bogeying the final hole and still claim victory.
"I think it is a big thing for Finnish golf. We've had two wins on the Ladies European, some on the Challenge Tour but none of The European Tour. It is a very special thing for me to be the first one and I'm starting to get some press time again.
"It is really important to be in the media to boost golf back home. Golf is growing in Finland, but I think it's growing a bit slowly. Hopefully I can help it by getting positive media, which should help get more golfers back home and maybe some good golf courses as well," said Ilonen.
Following his tied seventh place finish in Malaysia last week, Ilonen had arrived in Jakarta full of confidence and opened his account with a 66 to shoot right to the top of the leaderboard. He added rounds of 68 and 71 to share the 54 hole lead with Minoza and on Sunday finished the job with three birdies against two bogeys, either side of a delay due to lightning.
He revealed that the enforced weather break had been a help rather than a hindrance, as he could take on board some food. "A few minutes before the announcement was made that we were restarting I had a pretty big lunch and I always feel like I am swinging really softly after I have just eaten. Somehow I hit the middle of the club face all the time."
Third-round leaders Ilonen and Minoza were tied on nine under after ten holes when play was suspended due to lightning at 1.30pm for the fourth consecutive afternoon.
When play resumed one hour and 45 minutes later, Ilonen stole ahead with a birdie on the 12th, only to find himself tied again one hole later when he missed a short birdie attempt after Minoza had drained a 12-footer.
However, the Finn would go ahead for good at the 14th after Minoza found thick rough to the left of the green and duffed his recovery shot en route to a double bogey.
"I hit it left and had a bad lie. I hit a flyer again and my third shot was worse than my first, as it went into the rough and came out with a double bogey. But I never gave up and I kept on fighting. Anything can happen at this course. But Mikko was so good and very steady. He just played on and never looked back. I am not disappointed because I still delivered a good result," said Minoza.
Ilonen had a minor scare on the 17th when he found rough to the side of the green but a superb recovery shot allowed him to remain on 10 under.
That would prove vital at the 18th as he missed a short putt for par but still holed out for bogey to claim his maiden European Tour title.
Tampion mounted a late charge, pulling to within a stroke of Ilonen with a birdie at the 17th but the Australian rookie's hopes evaporated when his wayward drive at the final hole resulted in a bogey, which saw him drop back to eight under.
Tampion, who only turned professional last November after coming through the Qualifying School, took great store from his own performance. "Now I have a benchmark – I know I can compete with the guys here on The European Tour. Obviously I am disappointed to finish as I did, with a bogey, but I have performed well and I am having a ball on Tour," he said.
Kapur, who fired five birdies against a lone bogey, almost stormed to the top at the par five 17th hole when his second shot struck the base of the flag. However, his ball ricocheted into the rough, from where he two putted for par.
"Even if I was nine under and one shot behind, I know that the 18th hole is not easy but it wasn't the case so it's fine," said Kapur, who was the 2005 Asian Tour's Rookie of the Year.
"I started off well and played a couple of decent rounds this week. Anytime you have two solid scores, you are always happy," he added.


text:
A conservative is one who advocates conforming with tradition; whereas, a liberal is one who advocates individual freedom, tolerance, and equality under the law. Therefore, given that America was founded on liberalism, true conservatives are liberals because liberalism is the American tradition.
Libertarians are even more liberal than conservatives, but not because of tradition. Libertarians are liberal because of principle. This is why libertarians and conservatives are often allies.
First though, don't be distracted by the fact that women and minorities were neither equal nor free in the beginning. What is relevant is that by consistently applying the same liberal principles America was founded on, minorities and women have increasingly enjoyed the same benefits of individual freedom and equality under the law.
Of course, conforming with anything is fascism, and it is thus true that conservatives are a little fascist. Then again, many of those who call themselves liberals in America today are actually more conformist than conservatives in many ways. In America, conservatives are often more liberal than liberals, and the Tea Party participants are more liberal than most conservatives or liberals, and libertarians are the most liberal of all.
Libertarians are way more liberal than liberals.
Liberals are OK with gay marriage, but libertarians are OK with gay marriage AND polygamy AND any other combination of men and women you can think of.
Liberal legislation forcibly takes the fruits of your labor and gives it to others, and liberals openly complain that they want to take even more of the fruits of your labor; whereas, no libertarian would ever take the fruits of your labor.
Just last year, Obama's communications director said that Mao Tse-Tung is one of her two favorite philosophers! – to whom she turns most often! In just the last two years, popular liberals hugged and admired the liberal dictators in Cuba and Venezuela! FDR liberals admired European fascists like Mussolini, and European fascists admired FDR. Libertarians don't admire dictators.
Libertarians are more conservative than conservatives.
Conservatives want government out of the gay marriage business, but libertarians want government out of the marriage business entirely. Conservatives are OK with cutting taxes, but libertarians are OK with eliminating taxes, AND the IRS, AND the Federal Reserve.
Conservatives are more liberal than liberals.
Liberals say they want to empower the little guy, but liberals want to disarm the little guy; whereas, conservatives and libertarians respect the little guy.
Conservatives are pretty tolerant of different beliefs; whereas, if you don't believe in Government and Global Warming, then liberals think you must be a moron and a bad person. Therefore, if you think for yourself, then the bias of liberals will harm your career, so to escape oppression by liberals, one must keep quiet entirely unless one is unusually mature and articulate, and even then one must be VERY careful.
Liberal legislation forced media outlets to add liberal content. Then, years later the Supreme Court stopped them. Now, Obama and most of his people have openly championed using force to add liberal content to media outlets – again! Whereas, no conservatives or libertarians want to force any media outlets to add conservative or libertarian content.
While souls are purely speculative, many liberals, libertarians, and conservatives believe in souls, which makes possible a telling comparison. Liberals who believe in souls are willing to kill a fetus – often as late as 9 months – even though they cannot know that that fetus has no soul; whereas, libertarians and conservatives who believe in souls will not kill a fetus – because it might have a soul.
On a related note, given legal abortion, the birth of every child is entirely the woman's choice, but liberal legislation makes the man pay for 18 years of child support even though he had no choice in the birth.
In the workplace, white males must observe politically correct speech codes. Blacks and women can talk about "angry white males", "Tea baggers", "a male coworker with a hot ass", "the guy at the male strip club last night", or "men thinking with their dicks" but if a white male ever said that anything about a female coworker's appearance, or anything about sex, or that anyone got their job through affirmative action, then that would be the end of his career advancement. Also, any woman can ask out any male coworker as much as she wants, but a man cannot ask out a female coworker. There are two kinds of white males exempt from these politically correct rules. With women, tall, good looking, charismatic men are exempt. With minorities, any white male who has built a constituency among minorities is exempt. Bill Clinton is an example of both – hence the most successful white males are Clintonesque – hence American business is failing.
Which brings us to affirmative action, which is where liberal legislation forces individuals to hire more women and minorities than they want to and give them more loans than they want to; whereas, no conservative legislation ever forced anyone to hire more men and whites or give them more loans.
Liberal legislation forces universities to cut men's athletic programs and add women's programs; whereas, no conservative legislation forces universities to cut women's programs. In fact, universities have a "women's studies" department, but no university has a men's studies department.
I don't know whether the douchebags on the left or the assholes on the right have killed and imprisoned more people, but there are two telling differences. From 100 year ago to this day, it is primarily the left that acquired absolute power – and – whereas, either side will kill and imprison those who question their authority, it is the left that killed or imprisoned tens of millions – of their own people – for having incorrect beliefs.
Let's not confuse left wing and liberal or right wing and conservative. Right wing is simply the extent to which any system protects a ruling elite from competition. Hmm … protecting a ruling elite from competition sounds a lot like something the left wing has been doing. Could the right wing have rebranded themselves as left wing? Well, that will have to be a future topic.
Most of the confusion is easily resolved. In America, the discredited right basically went into near extinction, while the equally discredited left successfully rebranded itself with the more respectable term "liberal". Therefore, real liberals started calling themselves libertarians or conservatives.
Of course, libertarians are even more tolerant and freedom loving than conservatives. Libertarian is what every decent kid wants to be when he grows up, and in the end, what every decent person wishes he had been.
I was with you until you said dictators in soviet union, china, north korea, etc are liberal… the credibility of your arguments flew out of the window. You conflate modern American liberalism and democratic socialists with typical extreme leftist thinking… by that account then conservatives and libertarians must be the spawn of fascism.
Hmmm … I thought it was pretty obvious that I was talking about the liberal (leftist) extreme, and comparing it to the extreme right at that point, but thanks, I will edit that part to be more clear.
Clearly, our modern understanding of terms like left/right, liberal/conservative, and libertarian is full of holes. Of course, the reason is attempts by big media and big academia to spin left/liberal as the same thing and as good while spinning right/conservative as the same thing and as bad. Somehow, they also spin libertarianism, which is centrist, as the extreme right, which is truly ludicrous.
It is almost as if liberals are not really liberal. It is almost as if libertarians are the most liberal, and that conservatives may actually be more liberal than liberals.
failure says:
Right on, except for that anti-abortion bullshit. That's people's private business stay out of it, as long as it's not late term, that's just sick.
Also cut this out, it makes you lose credibility. Right wing politicians certainly start wars all the time. "In fact, from 100 year ago to this day, when the left and the right had absolute power, the left killed or imprisoned over 1oo million – of their own people – for having incorrect beliefs. Whereas, the right killed or imprisoned almost no one for having incorrect beliefs."
Archer Garrett says:
By using the modern political labels and contrasting that with their actual meaning (i.e. liberalism vs being a classical liberal) you've shown just how far our vernacular has been perverted. Jefferson was indeed a liberal – but he would have likely taken arms against modern "liberals".
Thanks. You would like my more recent article, "A Progressive Party Platform." It is far more interesting and enlightening than it sounds.
▼Factions (32)
Atlas Shrugged – Makers vs. Takers
▼Myth Busting (103)
Venezuelans Wanted Socialism — Got It Good and Hard
Investing: Professionals vs. Individuals


This residence, conceived for a family consisting of two parents and two children, is the result of a refurbishment with an extension of a 1960s building. Neuroarchitectura has chosen this project as a good example of architecture of wellbeing, therefore it will get over the classical analytical and critical description about the composition, the style and the choice on the materials used, to consider only the aspects dealing with the journal topic. That means it will deal with those features that "silently" affect the occupant and are responsible of a diffuse sense of pleasure which you don't know exactly where it comes from.
Beyond the label of minimalism, which undoubtedly distinguishes most of Burnazzi Feltrin design, we would like to draw our attention towards two areas of the house: the dining area with a view of the village, and the glazed staircase that connects the ground floor with the upper one, where true private living take place.
The dining area is located in a privileged position, as it opens onto a huge window with direct views of the historic center of Pergine, with its castle, church, and revealing the background skyline.with the Brenta mountains and other minor relieves All this gives a sense of control over the surrounding territory, anthropized and not, and also infuses a deep sense of security, typical feeling of being in a place protected by external agents, where you can see what happens without being seen. The sense of control does not result in dominance, since the building's elevation is not such as to allow a view from above, but is reinforced by the relaxing effect of the view of the surrounding green peaks and the sense of identity and belonging to the place, due to the iconic bell tower view. These factors are in perfect adherence to biophylic design, the design protocol that is based on 14 spatial "patterns" based on the main ways to relate with nature. These features are proven to have a beneficial effect on the occupants and, depending on the type of relationship you create, you can reduce stress, improve creativity or clarity of thought, and, in particular conditions and layout, speed up healing processes. In our specific case, we are referring to two patterns defined as "Prospect" and "Refuge", two typical configurations in the Nature Space category (distinct from the other two categories "Nature in Space" and "Nature Simulated") that are important to obtain restorative effects related to the idea of withdrawal and isolation, whether alone or in small groups. The resulting contemplative and relaxing experience for space dedicate to social or dining is a very pitch-perfect strategy, as it is the similar solution adopted in the master bedroom.
Dining Area with the view.
The relationship between the house and the surrounding landscape reveals a strong similitude with Miesian architecture, especially for the use of neutral colors in finishes and the minimalism of furniture, which are in contrast with to the richness of the view and makes this one the ultimate protagonist of the whole environment.
Another very interesting element of this home is the staircase that connects the ground floor with the core of the house in the upper floor. The ramp looks ethereal and uplifted as it does not only lack of the raisers but presents glass threads: the final effect, for those who are unfamiliar with the place, is at the limit of the turmoil. The design choice is courageous since the stair, as element of connection and transition from one environment to another, would require a certain structural reliability, at least at sensory level.
On the contrary, its immateriality, although elegant, feeds the discomfort for a perceived unreliability.
However, since it is a private environment, it is clear that this courageous design choice is satisfying as long as the customer is not only aware of the risks but fully agrees on the final decision. This design solution clearly dissents from Mies idea of New Objectivity, (just to resume the discourse on previously observed assonances), but is evident expression of subjectivity in design. The announced revolution in the paradigm of the project, born from the collaboration of architecture with other scientific and humanistic disciplines, actually resides in the open-end approach, which is analytical, searchesfor specific solutions based on available data, without ever giving any choice for granted or fixed a priori.
The glazed stair let the door to the laundry below.
In this case, the main concern of our client is to get a visual control over the kids even when they are far off, and he thinks that a stair like this would allow supervision during the domestic work within the laundry, located on the intermediate landing. The need for visibility and control overcomes the sense of discomfort offered by transparency. Probably the client is particularly skilled in proprioceptive sensory system: he can easily accept the design solution without being scared, and he expect his children being equally skilled and having a similar perception of the architectural element.
What considerations can we make about the guest who comes to visit ? What can be his immediate reaction?
In a public environment a stair like this could rise problems because the reaction of astonishment and surprise can evolve into two distinct ways: on one hand the sense of mystery might lead to curiosity, which might be resolved in pleasure. On the other hand the perception of danger might let the anxiety take over, creating discomfort.
The stylistic, structural and technological solution adopted in this case has a well-defined (achieved) goal: the glazed staircase is a signal for a "restricted traffic zone" to discourage, rather than denying, the access to foreigners in order to assure the privacy to the areas dedicated to home-working and relaxation.
This solution delivers a message which is whispered rather than waved, and the effectiveness of such discretion demonstrates how the environment has an enormous potential in shaping our actions and our emotional reactions. And this is what neuro-architecture is mainly about.


text:
TRUMP ACQUITTED: Senate failed to reach a two-thirds majority to convict the former president
Sonam Sheth and John L. Dorman
Then-President Donald Trump in Toledo, Ohio, on January 9.
SAUL LOEB/AFP via Getty Images
The Senate acquitted Donald Trump after an impeachment trial over the Capitol siege.
Trump was charged with incitement of insurrection related to the deadly event on January 6.
All 50 Democrats and seven Republicans voted to convict Trump, while 43 Republicans voted to acquit.
The US Senate on Saturday voted to acquit former President Donald Trump after a contentious impeachment trial over the deadly Capitol siege on January 6.
The House of Representatives impeached Trump last month on a charge of incitement of insurrection related to the siege, which resulted in multiple deaths and sent the political sphere into a tailspin.
All 50 Senate Democrats and seven Republicans voted to convict Trump, while 43 Republicans voted to acquit him. A two-thirds majority is required to convict a federal official and remove them from office. In the event of a conviction, the Senate can also vote by simple majority on whether to bar that official from ever holding public office again.
The Republicans who voted to convict Trump were Sens. Mitt Romney of Utah, Lisa Murkowski of Alaska, Bill Cassidy of Louisiana, Susan Collins of Maine, Richard Burr of North Carolina, Ben Sasse of Nebraska, and Pat Toomey of Pennsylvania.
In a statement on Saturday, Trump thanked the senators who voted to acquit, railed against his critics, and called the impeachment trial "yet another phase of the greatest witch hunt in the history of our County."
He added: "No president has ever gone through anything like it, and it continues because our opponents cannot forget the almost 75 million people, the highest number ever for a sitting president, who voted for us just a few short months ago."
The final vote on Trump's acquittal came after a tumultuous trial during which the nine House impeachment managers played hours of video footage and Trump's own remarks to demonstrate how his words paved the way for the Capitol riot.
The oral arguments lasted about 10 hours, with Rep. Jamie Raskin, the lead House impeachment manager, emphasizing that Trump had a "pattern and practice" of inciting violence before the siege, showing that the insurrection wasn't an isolated incident.
"These prior acts of incitement cast a harsh light on Trump's obvious intent" and "unavoidable knowledge of the consequences of his incitement and the clear foreseeability of the violent harm that he unleashed on our people and our republic," Raskin said on Thursday.
"January 6 was not some unexpected, radical break from his normal law-abiding and peaceful disposition. This was his state of mind. This was his essential MO."
The defense, meanwhile, drilled down on two key arguments: Trump's remarks at a "Save America" rally preceding the siege were protected speech under the First Amendment, and even holding an impeachment trial in the first place is unconstitutional given that Trump is out of office and therefore cannot be removed via impeachment.
Trump's attorneys concluded their oral arguments in under three hours, and they relied heavily on "whataboutism," drawing a false parallel between Trump's call for his supporters to stop the peaceful transfer of power and when Democratic lawmakers objected to the electoral results after the 2004 and 2016 presidential races.
One of the lawyers, Bruce Castor Jr., also falsely claimed that the Capitol insurrection wasn't an insurrection.
Democrats abruptly backtrack on their call for witnesses
Senate Majority Leader Chuck Schumer, the New York Democrat.
Saturday's vote to acquit Trump came after an hours-long back-and-forth between Democrats and Republicans on the question of subpoenaing witness testimony.
On Friday evening, CNN published a bombshell report detailing a phone call between Trump and the House Minority Leader Kevin McCarthy on January 6 while the siege was underway. During the conversation, CNN said, Trump refused to call off the rioters despite McCarthy's pleas to do so, and he suggested the insurrectionists cared more about the election than McCarthy did.
"Well, Kevin, I guess these people are more upset about the election than you are," Trump said, CNN reported. McCarthy then told Trump that rioters were breaking into his office, adding, "Who the f--- do you think you're talking to?"
Washington Rep. Jaime Herrera Beutler first revealed the details of the phone call at a town hall earlier this week and confirmed them to CNN. After CNN's story was published with Herrera Beutler's statement, Raskin said he wanted to subpoena the congresswoman for her testimony.
Politico had reported earlier on Saturday that the House managers blindsided Senate Democrats with their request for witnesses, and that although Senate Majority Leader Chuck Schumer had prepared for a vote on witnesses, he got no warning before the House managers forced the vote on Saturday morning.
According to the report, the managers themselves debated the question on Friday night and into Saturday morning, and as of 9 a.m. ET, Senate Democrats still had no inkling of what their House counterparts would do.
The Senate ultimately passed the motion to call witnesses by a vote of 55 to 45, with five Republicans joining with Democrats to vote in favor. But after roughly three hours of debate, Democrats reversed course and struck a deal with Republicans not to call witnesses after all.
Instead, Raskin submitted Herrera Beutler's statement into the Senate record.
'He chose retaining his own power over the safety of Americans,' Democrats say in closing arguments
Trump addresses supporters in Washington on January 6.
In their closing arguments, the House managers emphasized Trump's actions leading up to the siege and hammered down on his refusal to act while it was ongoing.
Rep. David Cicilline, one of the impeachment managers, said Trump's words to McCarthy during their phone call were "essentially saying 'You got what you deserve.'"
He also referred to a separate conversation Trump had with Alabama Sen. Tommy Tuberville during the siege, when Tuberville told Trump that then Vice President Mike Pence had been evacuated from the building amid threats to his safety.
"Not only was the president fully aware of the vice president's situation ... when he was asked for help, when he was asked to defend the Capitol less than 30 minutes after inciting this violence against his own vice president, President Trump refused that request for assistance," Cicilline said.
Rep. Madeleine Dean, another impeachment manager, homed in on how Trump's supporters believed they were acting on his orders when they stormed the Capitol.
"During his speech on January the 6th, Trump supporters chanted his words to him. They even live-tweeted his commands ... during the attack, the insurrectionists at the Capitol chanted Donald Trump's words from his tweets, rallies, and from the speech at the 6th," she said.
"He incited the violence to stop the certification, he attacked the vice president and further incited the insurrection to pressure the vice president to stop the certification, he called Sen. Tuberville to stop the certification, and he refused to send help to Congress," Cicilline said. "And this Congress and the vice president of the United States were in mortal danger because he wanted to stop the certification."
Trump "chose retaining his own power over the safety of Americans. I can't imagine more damning evidence of his state of mind," he continued.
The defense team lobbed allegations of violation of due process and evidence manipulation against House managers.
"The House managers' false narrative is a brazenly dishonest attempt to smear, to cancel, constitutional cancel culture, their number one political opponent, taking neutral statements, commonplace political rhetoric, removing words and facts from context, and ascribing to them the most sinister and malevolent intentions possible," Trump lawyer Michael van der Veen said. "Their story was based not on evidence but on the sheer personal and political animus."
"They should be canceled," he added.
NOW WATCH: A law professor weighs in on how Trump could beat impeachment
More: Trump impeachment Capitol Siege


text:
Prophet sells holy pens which guarantee users will pass examinations
A pastor in Zimbabwe has begun selling 'holy pens' which can make students pass their exams - and the more you pay for one, the better grades you'll get.
Prophet Sham Hungwe of House of Grace International Church in Harare is selling the pens, which cost from $1 up to $20.
According to News24 Zimbabwe the prophet told his congregation those sitting exams only needed faith and one of the special pens to pass. Also ink.
"They are anointed and I declare passes when your children sit for exams. They are said to work for anyone who is sitting for any test," he claimed.
According to Nigerian Watch, one parishioner testified: "My son is not very bright and I think this will help him. With the knowledge he has acquired and this pen from the man of God, I think it is going to work."
One student said he scored highly in his A-levels last year after using the pen he was given by the prophet.
So far UK universities have not banned students from using these pens in examinations, but if they're as good as they say it's only a matter of time.


Sometimes you just have to splurge. Raquel Welch human hair wigs are as luxe as it gets. 100% fine human hair with a natural look and feel. All shine and pure radiance. So don't think of these wigs as an indulgence---think of them as one investment that always pays fabulous dividends.
Raquel Welch human hair wigs are now available in 3 different silhouettes...our Sheer Indulgence Sheer Lines cap includes 100% human hair with a monofilament top, our Sheer Lines monofilament front and machine made base. In addition to the features offered in the Sheer Indulgence top, our Sheer Lines cap includes fine human hair that is individually knotted on 1/8" wide, ultra-sheer netting that goes from ear to ear along the polyurethane front rim of the cap. This netting results in low density, natural looking hairline. You would swear the hair is growing right out of the scalp for amazing off-the-face styling versatility.


text:
Defiant Iraqis Vote Despite Intimidation, Killings
Dozens killed and wounded amid Iraq parliamentary voting.
By MIGUEL MARQUEZ
BAGHDAD, Iraq, March 7, 2010 — -- The voting is done. Now comes time for counting.
Officials at Baghdad's Data Entry Center have begun counting the millions of votes that will decide which of the 6,200 candidates will fill Iraq's 325 parliamentary seats and who will become Iraq's next prime minister.
The government imposed an 8 p.m. curfew for Baghdad. It wasn't clear if there was an imminent threat to the city or if the government simply wanted to curtail political celebrations prior to the preliminary official vote count due to be released in three days.
In Fallujah, the Sunni city in Anbar province west of Baghdad, there were celebrations in the streets with roving groups of young men, police and soldiers shooting guns into the air because of the rumor swirling through town that Ayad Allawi's Iraqiya bloc was ahead in key provinces.
Allawi, a secular Shiite and former Baathist who was interim prime minister in 2004, has cobbled together a political bloc that includes Tariq al-Hashimi, a current Sunni vice president.
Late tonight, the national government also extended the curfew to cover Fallujah.
At around noon today, the violence that marked the morning ended as if on cue. Throughout the afternoon, Baghdad residents headed to the polls in greater numbers.
Iraq Vice President Adel Abdul-Mahdi, who was voting in his home precinct, said the attacks would not stop Iraqis from participating.
"I think the overwhelming majority will defy, will challenge and will vote," Mahdi said.
By day's end, at least 38 people were killed, four of them children, and 73 injured in a series of attacks that got under way throughout the country within minutes of the polls opening at 7 a.m.
In Baghdad, police reported at least 13 homemade bombs and more than two dozen mortars struck several locations throughout the city, including two bombs that collapsed two residential buildings in different parts of Baghdad.
Local television showed pictures of emergency personnel scrambling over the rubble of a residential building. They appeared to have identified signs of life, but no live victims were initially pulled from the building.
Polling Places Become Epicenters of Violence
On the western side of Baghdad, a female suicide bomber blew herself up near a polling center.
In Fallujah, in western Anbar province, there were four attacks, including one in which a gunman fired an AK-47 at a polling station.
In Diyala province north of Baghdad, at least seven bombs exploded near polling stations.
Al Qaeda in Iraq has released statements in recent days threatening Iraqis with death if they voted. But after several hours of attempts, the group was unable to directly attack any of the more than 50,000 polling stations throughout the country -- perhaps a sign that Iraq's elaborate security plan for the protecting polling stations may be working.
More than a million security personnel fanned out across Iraq to protect polling stations and voters.
For more than a week now, Iraqi police and army patrol have been stationed at each polling site in the country. The locations have been swept for bombs, sometimes several times. The security presence was meant to ensure that no bombs could be placed directly in or near polling centers.
Even if directly attacked, the Iraqi government said a plan was in place to have a polling center reopened within 30 minutes.
Despite the attacks, many Iraqis were undeterred.
Qassim Aboudi, a spokesman for Iraq's High Electoral Commission, said turnout was at a moderate level in the early hours and expected the numbers to grow as the day went on.
Abdul Razaq Abdul Hussein, 63, showed off his finger -- stained purple, indicating he had voted.
"I'm very happy," he said. "I feel like today is a feast day."
ABC News' Ali Hussien, Mazin Faiq and Aadel Rashid contributed to this report.


text:
Modern Musicology
Simplify Learning
Developing a Practicing Mindset
With Thomas Sterner
Author of The Practicing Mind
Watch The Video - Simplify Learning
Simplify Learning from Modern Musicology on Vimeo.
I think for students new to music, it's really backward technology to try to get them to figure out where the note is, and also the timing of it. It's brain overload.
I think you would find if you worked with students and you just said, "Look, for next week, forget about the timing, just play the notes. I want you to just play the notes over and over again." Now they know where the notes are on the keyboard when they come back and you focus on the time, so that you're playing actually what's written on the page.
I think the skill would develop to a point where the two of them would just converge. Then you would start to be able to do both of them at the same time. Just like in the golf swing. I've had golf lessons where the pro gave me one thing to do and I would say, "This is really easy." And he would say, "That's because you're only thinking of one thing, you are thinking of 20 things that have to happen in the actual golf swing." But after you've learned all of them, and they are committed your brain. You're just tweaking one thing.
I think the same thing could happen in music, your brain would just get to where it could look at the note on the page and play it. The barrier would drop away. Then reading the timing would do the same thing. When you combine the two, your brain would be working way less. If you look at the way other motor skills are trained, like golf which I'm very familiar with. You learn the different aspects of the swing very independently.
I read one study that said, "If you grip a golf club 60 times a day for 21 days, it will be a total habit in the brain." You won't have to think about it anymore. When you pick up the club, you're going to grip it that way.
The way most people instruct is you do a drill that is just one part of the swing because you're teaching your brain.
You do it with a conscious intention, but without judgment. It's just if I do this 50 times, the brain just going to do it. I'm not going to think about it.
How I learned music as a child; the teacher would put the sheet music on there and you were learning the notes and the rhythm and everything at the same time. They counted out, and you would be sitting there playing.
I wonder if it would be advantageous to take a page out of sports psychologist's books, and just say, "Look, I just want you to learn where the notes are on the keyboard. Forget about the timing, just read the notes." Once you know where the notes are, that's you're done with that.
Now, your brain isn't switch tasking because that's what happens. We know now that there's no such thing as multitasking. People call it multi-tasking, but there is really no such thing as multitasking. The brain just stops one thing and starts another so quickly that we experience it as one activity but it isn't one activity.
Looking at where the note is on the paper, and looking at what the timing is are two different brain functions. The brain is having to stop, start, stop, start, stop, start is exhausting.
I'm wondering if it would be a better idea to start a student and just say, "Look, just play the notes, that's all I want you to do is to play the notes. For the next time, I just want you to play the first eight measures. Just play those notes with your fingers." Then they're done with that.
Then you go, "OK, now let's focus on the time, let's tap the time out." So that their brain isn't trying to learn too many things at one time. I think that might be an interesting experiment.
Previous Article: Hammond Talk
Hammond Organ Clones
Salsa Piano Resources
Mental Play
For Your Pontification
If I were not a physicist, I would probably be a musician. I often think in music. I live my daydreams in music. I see my life in terms of music.
Signup for the Modern Musicology quarterly newsletter. It's groovy!


text:
#ifndef NdbSchemaOp_H
#define NdbSchemaOp_H

#include <NdbDictionary.hpp>

#ifndef DOXYGEN_SHOULD_SKIP_DEPRECATED

  /**
   * Type of attribute
   *
   * NOTE! AttrType is deprecated, use NdbDictionary::Column::Type instead!
   */
  enum AttrType {
    Signed,           ///< Attributes of this type can be read with:
                      ///< NdbRecAttr::int64_value,
                      ///< NdbRecAttr::int32_value,
                      ///< NdbRecAttr::short_value,
                      ///< NdbRecAttr::char_value
    UnSigned,         ///< Attributes of this type can be read with:
                      ///< NdbRecAttr::u_64_value,
                      ///< NdbRecAttr::u_32_value,
                      ///< NdbRecAttr::u_short_value,
                      ///< NdbRecAttr::u_char_value
    Float,            ///< Attributes of this type can be read with:
                      ///< NdbRecAttr::float_value and
                      ///< NdbRecAttr::double_value
    String,           ///< Attributes of this type can be read with:
                      ///< NdbRecAttr::aRef,
                      ///< NdbRecAttr::getAttributeObject
    NoAttrTypeDef     ///< Used for debugging only
  };

  /**
   * @deprecated
   */
  enum NullAttributeType {
    NoNullTypeDefined = -1,
    NotNullAttribute,
    NullAttribute,
    AttributeDefined
  };
  /**
   * Indicates whether the attribute is part of a primary key or not
   */
  enum KeyType {
    Undefined = -1,               ///< Used for debugging only
    NoKey,                        ///< Attribute is not part of primary key
                                  ///< or tuple identity
    TupleKey,                     ///< Attribute is part of primary key
    TupleId                       ///< Attribute is part of tuple identity
                                  ///< (This type of attribute is created
                                  ///< internally, and should not be
                                  ///< manually created.)
  };
  /**
   * Indicate whether the attribute should be stored on disk or not
   * Only for legacy createAttribute().
   */
  enum StorageMode {
    MMBased = NDB_STORAGETYPE_MEMORY,
    DiskBased = NDB_STORAGETYPE_DISK
  };

  /**
   *  Type of fragmentation used for a table
   */
  enum FragmentType {
    Default = 0,                  ///<  (All is default!)
    Single = 1,                   ///< Only one fragment
    All = 2,                      ///< Default value.  One fragment per node group
    DistributionGroup = 3,        ///< Distribution Group used for fragmentation.
                                  ///< One fragment per node group
    DistributionKey = 4,          ///< Distribution Key used for fragmentation.
                                  ///< One fragment per node group.
    AllLarge = 5,                 ///< Sixten fragments per node group.
    DGroupLarge = 6,              ///< Distribution Group used for fragmentation.
                                  ///< Sixten fragments per node group
    DKeyLarge = 7                 ///< Distribution Key used for fragmentation.
                                  ///< Sixten fragments per node group
  };

  /**
   *  Type of table or index.
   */
  enum TableType {
    UndefTableType = 0,
    SystemTable = 1,              ///< Internal.Table cannot be updated by user
    UserTable = 2,                  ///< Normal application table
    UniqueHashIndex = 3,          ///< Unique un-ordered hash index
    HashIndex = 4,                ///< Non-unique un-ordered hash index
    UniqueOrderedIndex = 5,       ///< Unique ordered index
    OrderedIndex = 6              ///< Non-unique ordered index
  };

class NdbSchemaCon;
class Ndb;

/**
 * @class NdbSchemaOp
 * @brief Represents various operations for use in schema transactions
 *
 * This class is used for schema operations, e.g. creating tables and
 * attributes.
 *
 * The NdbSchemaOp object is created using NdbSchemaCon::getNdbSchemaOp.
 *
 * @note  This class is depricated and is now replaced with the class
 *        NdbDictionary.
 */
class NdbSchemaOp
{
  friend class Ndb;
  friend class NdbSchemaCon;

public:

  /**
   * Create a new table in the database.
   *
   * @note The NdbSchemaCon should be closed with
   *       Ndb::closeSchemaTransaction, even if this method fails.
   *
   * @param  aTableName   Table name.  Should not be NULL.
   * @param  aTableSize	  (Performance parameter.)
   *                      Initial size of the data part of the table
   *                      expressed in kByte.
   *                      The database handles
   * 			  bad parameter setting but at a certain
   *                      loss in performance.
   *                      The size given here is
   * 			  the initial size allocated for the table
   *                      storage (the data part).
   * 			  When calculating the data storage one should
   *                      add the size of all attributes (each attribute
   *                      consumes at least 4 bytes) and also an overhead
   *                      of 12 byte.
   *                      Variable size attributes (not supported yet)
   * 			  will have a size of 12 bytes plus the actual
   *                      data storage parts where there is an
   *                      additional overhead based on the size of the
   * 			  variable part.
   *

   * 	                  An example table with 5 attributes:
   *                      one 64 bit attribute, one 32 bit attribute,
   *                      two 16 bit attributes and one array of 64 8 bits.
   *                      This table will consume
   *                        12 (overhead) + 8 + 4 + 2*4 (4 is minimum) + 64 =
   *                        96 bytes per record.
   * 	                  Additionally an overhead of about 2 % as page
   *                      headers and waste should be allocated.
   *                      Thus, 1 million records should consume 96 MBytes
   * 	                  plus the overhead 2 MByte and rounded up to
   *                      100 000 kBytes.
   *

   *                      This parameter is currently not used.
   *
   * @param  aTupleKey	  Indicates if the table has a primary key or not.
   *

   *                        TupleKey means that a primary key
   *                        consisting of one to four attributes
   * 			    (at most one of variable size)
   *                        uniquely identifies each record in the created
   *                        table.
   *

   *                        TupleId means that a tuple identity
   *                        is used.  The tuple identity is
   *                        a unique key indentifying each record of the
   *                        created table.
   *                        The tuple identity is a (non-stored)
   *                        64 bit attribute named NDB$TID.
   *

   *                        When inserting a record (tuple), the method
   *                        NdbOperation::setTupleId
   *                        will generate a unique tuple identity
   *                        and return it to the user.
   *

   *                        When reading, updating or deleting a record
   *                        in a table with TupleId,
   *                        NdbOperation::equal("NDB$TID", value_Uint64)
   *                        can be used to identify the record.
   *

   *                        Legal values: TupleKey or TupleId.
   * @param aNrOfPages	  (Performance parameter.)
   *                      Specifies the initial size of the index storage.
   *                      When calculating the index storage,
   * 			  each key has approximately 14 byte of
   *                      overhead plus the size of the key.
   *                      Each key attribute takes up at least 4 bytes
   *                      of storage.
   *                      Thus a mixed key consisting of a
   *                      64 bit attribute, a 32 bit attribute
   * 			  and a 16 bit attribute will
   *                      consume approx. 30 bytes per key.
   * 			  Thus, the if initial size is to be 1 million rows,
   *                      then aNrOfPages should be set to
   *                      30 M / 8k = 2670 pages.
   *

   *                      This parameter is currently not used.
   *
   * @param aFragmentType Type of fragmentation.

   *                      All (default) means that the
   *                      table fragments are automatically
   *                      distributed on all nodes in the system.

   *                      DistributionGroup and
   *                      DistributionKey are
   *                      also supported. For further details about
   *                      these types see the documentation of
   *                      Ndb::startTransaction.
   * @param aKValue	  (Hash parameter.)
   *                      Only allowed value is 6.
   *                      Later implementations might add flexibility
   * 			  in this parameter.
   * @param aMinLoadFactor  (Hash parameter.)
   *                        This value specifies the load factor when
   *                        starting to shrink the hash table.
   *                        It must be smaller than aMaxLoadFactor.
   *                        Both these factors are given in percentage.
   * @param aMaxLoadFactor  (Hash parameter.)
   *                        This value specifies the load factor when
   *                        starting to split the containers in the local
   *                        hash tables. 100 is the maximum which will
   * 		     	    optimize memory usage (this is the figure
   *                        used for the above calculations).
   * 		       	    A lower figure will store less information in
   *                        each container and thus
   * 		            find the key faster but consume more memory.
   * @param aMemoryType	    Currently only 1 is allowed which specifies
   *                        storage of table in main memory.
   *                        Later 2 will be added where the table is stored
   * 	       		    completely on disk
   *                        and 3 where the index is in main memory but
   * 		            data is on disk.
   *                        If 1 is chosen an individual attribute can
   * 		            still be specified as a disk attribute.
   * @param aStoredTable    If set to false it indicates that the table is
   *                        a temporary table and should not be logged
   *                        to disk.
   *                        In case of a system restart the table will still
   * 	      	   	    be defined and exist but will be empty.
   *                        Thus no checkpointing and
   * 		       	    no logging is performed on the table.
   * 			    The default value is true and indicates a
   *                        normal table with full checkpointing and
   *                        logging activated.
   * @return                Returns 0 when successful and returns -1 otherwise.
   */
  int		createTable(	const char* aTableName,
				Uint32 aTableSize = 8,
				KeyType aTupleKey = TupleKey,
				int aNrOfPages = 2,
				FragmentType aFragmentType = All,
				int aKValue = 6,
				int aMinLoadFactor = 78,
				int aMaxLoadFactor = 80,
				int aMemoryType = 1,
				bool aStoredTable = true);

  /**
   * This is the old function declaration, don't use.
   *
   * @deprecated do not use!
   */
#ifndef NDB_WIN32
  inline int	createTable(	const char* aTableName,
				Uint32 aTableSize,
				KeyType aTupleKey,
				int aNrOfPages,
				FragmentType aFragmentType,
				int aKValue,
				int aMinLoadFactor,
				int aMaxLoadFactor,
				int aMemoryType,
				int aStoredTable){
    return createTable(aTableName,
                       aTableSize,
                       aTupleKey,
                       aNrOfPages,
                       aFragmentType,
                       aKValue,
                       aMinLoadFactor,
                       aMaxLoadFactor,
                       aMemoryType,
                       (aStoredTable == 1 ? true : false));
  }
#endif

  /**
   * Add a new attribute to a database table.
   *
   * Attributes can only be added to a table in the same transaction
   * as the transaction creating the table.
   *
   * @note The NdbSchemaCon transaction should be closed with
   *       Ndb::closeSchemaTransaction, even if this method fails.
   *
   * Example creating an unsigned int attribute belonging to the primary key
   * of the table it is created in:
   * @code
   *   MySchemaOp->createAttribute("Attr1",   // Attribute name
   *                               TupleKey,  // Belongs to primary key
   *                               32,        // 32 bits
   *                               1,         // Not an array attribute
   *                               UnSigned,  // Unsigned type
   *                              );
   * @endcode
   *
   * Example creating a string attribute belonging to the primary key
   * of the table it is created in:
   * @code
   *   MySchemaOp->createAttribute("Attr1",       // Attribute name
   *                               TupleKey,      // Belongs to primary key
   *                               8,             // Each character is 8 bits
   *                               12,            // Max 12 chars in string
   *                               String,        // Attribute if of type string
   *                              );
   * @endcode
   *
   * A distribution key is a set of attributes which are used
   * to distribute the tuples onto the NDB nodes.
   * A distribution group is a part (currently 16 bits)
   * of an attribute used to distribute the tuples onto the NDB nodes.
   * The distribution key uses the NDB Cluster hashing function,
   * while the distribution group uses a simpler function.
   *
   * @param  aAttrName   Attribute name.  Should not be NULL.
   * @param  aTupleKey	 This parameter specifies whether the
   *                     attribute is part of the primary key or not.
   *                     Floats are not allowed in the primary key.
   *

   *                     Legal values: NoKey, TupleKey
   * @param  aAttrSize	 Specifies the size of the elements of the
   *                     attribute.  (An attribute can consist
   *                     of an array of elements.)
   *

   *                     Legal values: 8, 16, 32, 64 and 128 bits.
   * @param  aArraySize	 Size of array.
   *

   *                     Legal values:
   *                     0 = variable-sized array,
   *                     1 = no array, and
   *                     2- = fixed size array.
   *

   *
   *                     Variable-sized array attributes are
   *                     not yet supported.
   *
   *

   *                     There is no upper limit of the array size
   *                     for a single attribute.
   * @param  aAttrType   The attribute type.
   * 			 This is only of interest if calculations are
   *                     made within NDB.
   *

   *                     Legal values: UnSigned, Signed, Float, String
   * @param aStorageMode    Main memory based or disk based attribute.

   *                     Legal values: MMBased, DiskBased
   *

   *
   *                     Disk-based attributes are not yet supported.
   *
   * @param nullable     Set to true if NULL is a correct value for
   *                     the attribute.
   *

   *                     Legal values: true, false
   * @param aStType      Obsolete since wl-2066
   * @param aDistributionKey    Sometimes it is preferable to use a subset
   *                            of the primary key as the distribution key.
   *                            An example is TPC-C where it might be
   *                            good to use the warehouse id and district id
   *                            as the distribution key.
   *

   *                            Locally in the fragments the full primary key
   *                            will still be used with the hashing algorithm.
   *                            Set to 1 if this attribute is part of the
   *                            distribution key.
   *                            All distribution key attributes must be
   *                            defined before
   *                            any other attributes are defined.
   * @param aDistributionGroup    In other applications it is desirable to use
   *                              only a part of an attribute to create the
   *                              distribution key.
   *                              This is applicable for some telecom
   *                              applications.
   *

   *                              In these situations one must provide how many
   *                              bits of the attribute that is to
   *                              be used as the distribution hash value.
   *

   *                              This provides some control to the
   *                              application of the distribution.
   *                              It still needs to be part of a primary key
   *                              the attribute and must be defined as the
   *                              first attribute.
   * @param  aDistributionGroupNoOfBits
   *                              Number of bits to use of the
   *                              distribution group attribute in the
   *                              distribution hash value.
   *

   *                              Currently, only 16 bits is supported. It will
   *                              always be the last 16 bits in the attribute
   *                              which is used for the distribution group.
   * @param aAutoIncrement        Set to autoincrement attribute.
   * @param aDefaultValue         Set a default value of attribute.
   *
   * @return Returns 0 when successful and returns -1 otherwise.
   ****************************************************************************/
  int createAttribute(const char* aAttrName,
		      KeyType aTupleKey = NoKey,
		      int aAttrSize = 32,
		      int aArraySize = 1,
		      AttrType aAttrType = UnSigned,
		      StorageMode aStorageMode = MMBased,
		      bool nullable = false,
		      int aStType= 0, // obsolete
		      int aDistributionKey = 0,
		      int aDistributionGroup = 0,
		      int aDistributionGroupNoOfBits = 16,
                      bool aAutoIncrement = false,
                      const char* aDefaultValue = 0);

  /**
   * @deprecated do not use!
   */
  int createAttribute(const char* aAttrName,
		      KeyType aTupleKey,
		      int aAttrSize,
		      int aArraySize,
		      AttrType aAttrType,
		      StorageMode aStorageMode,
		      NullAttributeType aNullAttr,
		      int aStType, // obsolete
		      int aDistributionKey = 0,
		      int aDistributionGroup = 0,
		      int aDistributionGroupNoOfBits = 16){
    return createAttribute(aAttrName,
			   aTupleKey,
			   aAttrSize,
			   aArraySize,
			   aAttrType,
			   aStorageMode,
			   aNullAttr == NullAttribute,
			   aStType,
			   aDistributionKey,
			   aDistributionGroup,
			   aDistributionGroupNoOfBits);
  }

  const NdbError & getNdbError() const;

protected:

/*****************************************************************************
 *   These are the methods used to create and delete the NdbOperation objects.
 ****************************************************************************/
  			NdbSchemaOp(Ndb* aNdb);

  			~NdbSchemaOp();

/******************************************************************************
 *	These methods are service routines used by the other NDBAPI classes.
 *****************************************************************************/

  void			release();	// Release all memory connected
  					      // to the operations object.

/****************************************************************************
 *	The methods below is the execution part of the NdbSchemaOp class.
 *****************************************************************************/

  int sendRec();
  int sendSignals(Uint32 aNodeId, bool HaveMutex);

  int init(NdbSchemaCon* aSchemaCon);

  /**************************************************************************
   * These are the private variables that are defined in the operation
   * objects.
   **************************************************************************/
  Ndb*			theNdb;		// Point back to the Ndb object.
  NdbSchemaCon* 	theSchemaCon;	// Point back to the connection object.

  class NdbDictionary::Table * m_currentTable;
};

/**
 * Get old attribute type from new type
 *
 * NOTE! attrType is deprecated, use getType instead!
 *
 * @return Type of attribute: { Signed, UnSigned, Float,a String }
 */
inline
AttrType
convertColumnTypeToAttrType(NdbDictionary::Column::Type _type)
{

  switch(_type){
  case NdbDictionary::Column::Bigint:
  case NdbDictionary::Column::Int:
    return Signed;
  case NdbDictionary::Column::Bigunsigned:
  case NdbDictionary::Column::Unsigned:
    return UnSigned;
  case NdbDictionary::Column::Float:
  case NdbDictionary::Column::Olddecimal:
  case NdbDictionary::Column::Olddecimalunsigned:
  case NdbDictionary::Column::Decimal:
  case NdbDictionary::Column::Decimalunsigned:
  case NdbDictionary::Column::Double:
    return Float;
  case NdbDictionary::Column::Char:
  case NdbDictionary::Column::Varchar:
  case NdbDictionary::Column::Binary:
  case NdbDictionary::Column::Varbinary:
    return String;
  default:
    return NoAttrTypeDef;
  }
}
#endif

#endif

redpajama_set_name: RedPajamaGithub