text:
\section{Introduction}
\label{sec:introduction}

The IWPT 2020 Shared Task on Parsing into Enhanced Universal Dependencies
\cite{EUDparsingST:2020}
involves sentence segmentation, tokenization, lemmatization,
part-of-speech tagging,
morphological analysis, basic dependency parsing, and finally
(for the first time)
\textit{enhanced} dependency parsing.
The enhancements encode
case information, elided predicates,
and shared arguments due to conjunction, control, raising
and relative clauses
(see Figures~\ref{fig:example_english} and~\ref{fig:example_dutch}).

In Universal Dependencies v2 \cite[UD;][]{nivre2020universal},
enhanced dependencies (ED) are a separate
dependency graph than the \textit{basic} dependency tree (BD).
However, ED is \textit{almost} a super-set of BD,\footnote{Some BD arcs are deleted in ED, e.g., \texttt{orphan} arcs.}
and so
most previous approaches \cite{SCHUSTER16.779,nivre-etal-2018-enhancing} have attempted to recover ED from BD using language-specific rules.
On the other hand,
\citet{hershcovich-etal-2018-universal}
experimented with TUPA, a transition-based directed acyclic graph (DAG) parser originally designed for parsing UCCA \cite{abend-rappoport-2013-universal}, for supervised ED parsing. They converted ED to UCCA-like graphs and did not use pre-trained contextualized embeddings,
yielding sub-optimal results.
Taking a similar approach, we adapt a transition-based graph parser
\cite{che-etal-2019-hit} designed for Meaning Representation Parsing \cite{oepen-etal-2019-mrp}, but parse ED directly
and use BERT embeddings \cite{devlin-etal-2019-bert}.

The main contribution of our work is a transition system
supporting the graph structures exhibited by ED,
including null nodes (meaning this is not a strictly
bilexical formalism), cycles and non-crossing graphs
(\S\ref{sec:transition_system}),
as Figure~\ref{fig:transition_sequence} demonstrates
for the sentence from Figure~\ref{fig:example_dutch}.
We parse ED completely separately from BD,
demonstrating the applicability of a full graph parser, starting
from only segmented and tokenized text, to ED.
Our code is available at \url{https://github.com/coastalcph/koepsala-parser}.

\begin{figure}[t]
  \centering
    \begin{dependency}[text only label, label style={above}, font=\small]
    \begin{deptext}[column sep=.5em,ampersand replacement=\^]
    We \^ were \^ made \^ to \^ feel \^ very \^ welcome \^ . \\
    \end{deptext}
        \depedge[edge start x offset=1pt]{3}{1}{nsubj:pass}
        \depedge[edge below,edge unit distance=.65ex,edge end x offset=2pt]{5}{1}{nsubj:xsubj}
        \depedge[edge below,edge unit distance=.8ex,edge end x offset=-1pt]{7}{1}{nsubj:xsubj}
        \depedge{3}{2}{aux:pass}
        \deproot[edge unit distance=3ex]{3}{root}
        \depedge{5}{4}{mark}
        \depedge{3}{5}{xcomp}
        \depedge{7}{6}{advmod}
        \depedge{5}{7}{xcomp}
        \depedge[edge unit distance=2ex,edge start x offset=-1pt]{3}{8}{punct}
    \end{dependency}
\caption{ED for \texttt{reviews-077034-0002} from \texttt{UD\_English-EWT},
containing a control verb (made).
Arcs above the sentence are also in BD.\label{fig:example_english}}
\end{figure}

\begin{figure*}[ht]
  \centering
\begin{dependency}[text only label, label style={above}, font=\small]
\begin{deptext}[column sep=0em]
Deze \& is  \& de  \& modernste \& en    \& grootste \& hal  \& van \& België \& ,     \& en  \& \textit{NULL}  \& de  \& enige \& die  \& voldoet \& aan \& de  \& Olympische \& normen \& .     \\
\end{deptext}
\depedge{7}{1}{nsubj}
\depedge{7}{2}{cop}
\depedge{7}{3}{det}
\depedge{7}{4}{nmod}
\depedge{6}{5}{cc}
\depedge{4}{6}{conj\textbf{:en}}
\depedge[edge below]{7}{6}{nmod}
\deproot[edge unit distance=5ex]{7}{root}
\depedge{9}{8}{case}
\depedge{7}{9}{nmod\textbf{:van}}
\depedge{14}{10}{punct}
\depedge[dashed]{14}{11}{cc}
\depedge[edge below]{12}{11}{cc}
\depedge[edge below]{7}{12}{conj:en}
\depedge[edge below]{16}{12}{nsubj:relsubj}
\depedge[dashed]{14}{13}{det}
\depedge[edge below]{12}{13}{det}
\depedge[dashed,edge unit distance=2ex]{7}{14}{conj}
\depedge[edge below]{12}{14}{nmod}
\depedge[dashed]{16}{15}{nsubj}
\depedge[edge below]{12}{15}{ref}
\depedge[dashed]{14}{16}{acl:relcl}
\depedge[edge below,edge unit distance=3.7ex]{12}{16}{acl:relcl}
\depedge{20}{17}{case}
\depedge{20}{18}{det}
\depedge{20}{19}{amod}
\depedge{16}{20}{obl\textbf{:aan}}
\depedge[edge unit distance=1.2ex]{7}{21}{punct}
\end{dependency}
\caption{\texttt{\small wiki-3745.p.38.s.5} from \texttt{UD\_Dutch-LassySmall}, containing a null node \textit{NULL}, not in the original sentence,
coordination and case suffixes (\texttt{\textbf{:en}}, \texttt{\textbf{:van}}, \texttt{\textbf{:aan}}),
and propagation of conjuncts (hal~$\to$~grootste).
The dashed edges are deleted in ED, and the edges below the sentence are added.
Note the cycle \textit{NULL}~$\leftrightarrow$~voldoet.
}
\label{fig:example_dutch}
\end{figure*}

\section{Preprocessing}
\label{sec:preprocessing}
As the focus of this shared task is ED parsing, we rely on existing systems for preprocessing. Here, we consider two off-the-shelf pipelines: \textsc{stanza} \cite{qi2020stanza}\footnote{\url{https://stanfordnlp.github.io/stanza/models.html}} and \textsc{udpipe} 1.2 \cite{udpipe:2017,straka2016udpipe},\footnote{\url{https://lindat.mff.cuni.cz/repository/xmlui/handle/11234/1-3131}} both of which have models pre-trained on UD v2.5 treebanks.
We experiment with either pipeline during prediction to process the raw text files for the dev and test sets,
eventually selecting \textsc{udpipe} for our primary
submission.
This process entails sentence segmentation, tokenization, lemmatization, part-of-speech tagging, morphological feature tagging, and BD parsing.\footnote{The preprocessing output, except for segmentation and tokenization,
is not used in any way by the ED parser, since it just
uses BERT for token representation (\S\ref{sec:classifier}).}
For training our ED parser (\S\ref{sec:parser}), however,
we use gold inputs for simplicity.
We use the \texttt{conllu} Python package\footnote{\url{https://github.com/EmilStenstrom/conllu}} to read \mbox{CoNLL-U} files.

\paragraph{Preprocessing model selection.}
Since the dev and test data do not denote their source treebanks, we simply process the text using the pipeline model trained on the language's largest treebank.
To experiment with an alternative method, for languages with more than one treebank, we also train \textsc{udpipe} models on combined training treebanks. Table \ref{table:trained_udpipe_results} shows the comparison of LAS on the combined dev set, for these models and for the models (pre-)trained on the language's largest treebank.
The results show that using the combined training sets does not lead to consistent improvements in terms of LAS, and so we continue using pre-trained treebank-specific preprocessing models henceforth.

\begin{table}[t]
\centering
\begin{tabular}{@{}rrccccc@{}}
\toprule
                & \multicolumn{4}{c}{\textbf{Language}} \\
  & \small\textsc{Czech} & \small\textsc{Dutch} & \small\textsc{Estonian} & \small\textsc{Polish} \\ \midrule
{combined}      & 78.88 & \textbf{76.50} & 77.01 &  \textbf{82.96} \\
{largest}     & \textbf{83.97} & 74.97 & \textbf{77.61} &  82.59 \\
\bottomrule
\end{tabular}
\caption{LAS on the combined dev set for \textsc{udpipe} models trained on the language's combined training treebanks and the models trained on the language's largest treebank.
No consistent trend is observed.}
\label{table:trained_udpipe_results}
\end{table}

\section{Transition-Based Enhanced Dependency Parser}
\label{sec:parser}

Our system is a transition-based graph parser,
based on the HIT-SCIR system \cite{che-etal-2019-hit},
which achieved the highest average score across frameworks (AMR, EDS, UCCA, DM and PSD) in the
CoNLL 2019 shared task on Meaning Representation Parsing
\cite[MRP;][]{oepen-etal-2019-mrp}.
It is written in the AllenNLP \cite{Gardner2017AllenNLP}
framework.
For training efficiently, it employs stack LSTMs \cite{dyer-etal-2015-transition}, batching operations across sentences.
For better encoding, HIT-SCIR fine-tuned BERT \cite{devlin-etal-2019-bert} while training the parser.

A transition-based parser operates by manipulating a buffer (originally containing the input words provided by the preprocessor, see~\S\ref{sec:preprocessing}) and a stack (originally containing the root, i.e., word at index 0), to incrementally create the output dependency graph.
At each point in the parsing process, a transition is selected out of a pre-defined set of possible transitions.
A classifier is trained to predict the best transition to apply at each step, by mimicking an oracle during training (see \S\ref{sec:transition_system}).

HIT-SCIR used a different transition system per framework
(AMR, EDS, UCCA; and one system for DM and PSD),
according to the graph properties of each
and based on existing framework-specific parsers
\cite{liu-etal-2018-amr,buys-blunsom-2017-robust,hershcovich-etal-2017-transition,wang-etal-2018-neural}.
We construct a transition system for ED using subsets of transitions from two of the HIT-SCIR systems: their system for DM and PSD, as well as their system for UCCA, with some further adaptations specific to ED graphs.

\subsection{Transition System}\label{sec:transition_system}

Our system contains the following transitions: \{\textsc{Shift}, \textsc{Left-Edge$_l$}, \textsc{Right-Edge$_l$}, \textsc{Reduce-0}, \textsc{Reduce-1}, \textsc{Node}, \textsc{Swap} and \textsc{Finish}\}.
The \textsc{Shift} transition pops the first element of the buffer and pushes it onto the stack. The \textsc{Left-Edge$_l$} and \textsc{Right-Edge$_l$} transitions add an arc\footnote{For consistency, we keep the transition nomenclature using ``\textsc{Edge}'', although they create directed dependency \textit{arcs}.
Note that in analogous transitions in some transition systems, such as \textsc{ArcEager} \cite{nivre-2003-efficient}, the dependent of the transition is also popped out of the stack as part of either of these two transitions. Here, since dependents can have multiple heads and can have arcs with multiple labels, we stick to the \textsc{Edge} action and use our two \textsc{Reduce} transitions to pop elements of the stack when necessary.}
between the two top items of the stack with label $l$.
We need two different \textsc{Reduce} transitions to pop the topmost and second topmost items of the stack, which we name \textsc{Reduce-0} and a \textsc{Reduce-1} respectively. This makes it possible to construct length-2 cycles, which ED allows (and most MRP frameworks do not). The \textsc{Node} transition inserts a null node as the first element of the buffer, needed to support null nodes.
\textsc{Swap} moves the second-top node of the stack to the buffer, thus swapping the order between the two top nodes of the stack. This is necessary for handling crossing graphs (analogous to non-projective trees). Finally, \textsc{Finish} terminates the transition sequence.
A formal definition of the transition set is shown in Figure~\ref{fig:transitions}.

\begin{figure*}[t]
	\begin{adjustbox}{width=\textwidth}
	\begin{tabular}{llll|l|llllc|c}
	\toprule
		\multicolumn{4}{c|}{\textbf{\small Before Transition}} & \textbf{\small Transition} & \multicolumn{5}{c|}{\textbf{\small After Transition}} & \textbf{\small Condition} \\
		\textbf{\footnotesize Stack} & \textbf{\footnotesize Buffer} & \textbf{\footnotesize Nodes} & \textbf{\footnotesize Arcs} & & \textbf{\footnotesize Stack} & \textbf{\footnotesize Buffer} & \textbf{\footnotesize Nodes} & \textbf{\footnotesize Arcs} & \textbf{\footnotesize Terminal?} & \\\midrule
		$\Sigma$ & $b \;|\; B$ & $V$ & $A$ & \textsc{Shift} & $\Sigma \;|\; b$ & $B$ & $V$ & $A$ & $-$ & \\
        $\Sigma \;|\; s_0$ & $B$ & $V$ & $A$ & \textsc{Reduce-0} & $\Sigma$ & $B$ & $V$ & $A$ & $-$ & $s_0 \neq \mathrm{root} \wedge (\cdot,s_0)_\cdot\in A$\\
        $\Sigma \;|\; s_1, s_0 $ & $B$ & $V$ & $A$ & \textsc{Reduce-1} & $\Sigma\;|\; s_0$ & $B$ & $V$ & $A$ & $-$ & $s_1 \neq \mathrm{root} \wedge (\cdot,s_1)_\cdot\in A$\\
		$\Sigma$ & $B$ & $V$ & $A$ & \textsc{Node} & $\Sigma$ & $b \;|\; B$ & $V \cup \{ b \}$ & $A$ & $-$ &
		\\
        $\Sigma \;|\; s_1,s_0$ & $B$ & $V$ & $A$ & \textsc{Left-Edge$_l$} & $\Sigma \;|\; s_1,s_0$ & $B$ & $V$ & $A \cup \{ (s_0,s_1)_l \}$ & $-$ & $s_1 \neq \mathrm{root} \wedge (s_0,s_1)_l \not\in A$\\
		$\Sigma \;|\; s_1,s_0$ & $B$ & $V$ & $A$ & \textsc{Right-Edge$_l$} & $\Sigma \;|\; s_1,s_0$ & $B$ & $V$ & $A \cup \{ (s_1,s_0)_l \}$ & $-$ &  $(s_1,s_0)_l \not\in A$ \\
        $\Sigma \;|\; s_1,s_0$ & $B$ & $V$ & $A$ & \textsc{Swap} & $\Sigma \;|\; s_0$ & $s_1 \;|\; B$ & $V$ & $A$ & $-$ &
        $s_1 \neq \mathrm{root} \wedge \mathrm{i}(s_1) < \mathrm{i}(s_0)$ \\
		$[\mathrm{root}]$ & [ ] & $V$ & $A$ & \textsc{Finish} & [ ] & [ ] & $V$ & $A$ & $+$ & \\\bottomrule
	\end{tabular}
	\end{adjustbox}
	\caption{\label{fig:transitions}
	  Our transition set.
	  We write the stack with its top to the right and the buffer with its head to the left.
	  $(h,d)_l$ denotes an $l$-labeled dependency with head $h$ and dependent $d$.
	  $\mathrm{i}(x)$ is the generated order (see \S\ref{sec:transition_system}).
	}
\end{figure*}

Separate \textsc{Edge} transitions exist for each edge label.
Labels containing coordination or case suffixes
(such as \texttt{nmod:van}) are
treated as any other label and are not split,
resulting in a large number of transitions for some
languages, shown in Table~\ref{tab:transition_counts}.

\textsc{Node} transitions, on the other hand, do not select
any label or features, since null nodes are only evaluated
with respect to their incoming and outgoing edges.
All other information is ignored, and thus not predicted by
the parser: predicted null nodes are thus only placeholders.

\begin{table}[t]
    \centering
    \begin{tabular}{l|rrr}
\toprule
\textbf{Language}   & Total & \textsc{Edge} & w/ suffix \\ \midrule
\small\textsc{Arabic}     &402 &395&345\\
\small\textsc{Bulgarian}  &197 &191&137\\
\small\textsc{Czech}      &768 &761&702\\
\small\textsc{Dutch}      &393 &386&336\\
\small\textsc{English}    &300 &293&232\\
\small\textsc{Estonian}   &445 &438&381\\
\small\textsc{Finnish}    &266 &259&210\\
\small\textsc{French}     &112 &106&59 \\
\small\textsc{Italian}    &281 &274&216\\
\small\textsc{Latvian}    &238 &232&161\\
\small\textsc{Lithuanian} &323 &317&263\\
\small\textsc{Polish}     &676 &669&615\\
\small\textsc{Russian}    &944 &938&861\\
\small\textsc{Slovak}     &266 &259&204\\
\small\textsc{Swedish}    &209 &202&153\\
\small\textsc{Tamil}      &146 &140&103\\
\small\textsc{Ukrainian}  &290 &283&225\\ \bottomrule
\end{tabular}
    \caption{Number of transitions for each language.}
    \label{tab:transition_counts}
\end{table}

\paragraph{Constraints.}

In addition to the modified transition set, we change the constraints for some transitions according to the required graph structure.

Since \textsc{Left-Edge$_l$} and \textsc{Right-Edge$_l$} transitions do not reduce the dependent, we need to ensure that we do not draw the same arc twice. For this reason, these transitions are not allowed if there is already an arc with label $l$ between the two nodes. We also disallow to add an arc with the root as dependent.

To ensure every node gets attached to at least one head, we disallow the \textsc{Reduce-0} and \textsc{Reduce-1} transitions for nodes that do not have a head yet.
We also disallow reducing the root.

For the \textsc{Swap} transition, we maintain the \textit{generated order} of each node, assigned when the node is shifted (for words) or created (for null nodes).
To prevent infinite loops during inference, we only allow swapping nodes whose order in the stack is the same as their generation order.

To limit repeated actions, we arbitrarily constrain \textsc{Node} transitions such that there are no more null nodes than words
(although a lower limit would suffice), and
\textsc{Edge} transitions to limit the number of heads per node to 7.\footnote{While the observed number of heads per node in the data goes up to 36, in the training data there is only a small minority of cases where a node has more than 7 heads.}

\textsc{Finish} is only allowed when the buffer is empty and the stack only contains the root.
If no valid transition is available, the sequence is
terminated prematurely by applying the \textsc{Finish} transition, regardless of the \textsc{Finish} constraints.

\paragraph{Oracle.}
We use a static oracle similar to HIT-SCIR
(a single ``gold'' transition sequence is given during training, which the parser is forced to follow), but develop one for our transition system.

The oracle deterministically chooses the transition to take given the current configuration. Let $s_1$ and $s_0$ be the two top items of the stack and $b$ the first item of the buffer (if these are defined in the current configuration). If the buffer is empty and the stack only contains the root, take a \textsc{Finish} transition. Otherwise, if there is an arc between $s_1$ and $s_0$ with label $l$ that has not yet been constructed, take the necessary \textsc{Right-Edge$_l$} or \textsc{Left-Edge$_l$} action. Otherwise, if $s_0$ has a node dependent, take a \textsc{Node} transition. Otherwise, if $s_0$ has all its heads and dependents, take \textsc{Reduce-0}, if $s_1$ has all its heads and dependents, take \textsc{Reduce-1}. Otherwise, if $s_1$ and $s_0$ are in their generated order and $s_0$ has a head or a dependent in the stack that is not $s_1$, take a \textsc{Swap}. Otherwise \textsc{Shift}.
Figure~\ref{fig:transition_sequence} shows an example transition sequence.

\begin{figure*}[t]
  \small\centering
  \setlength{\tabcolsep}{8pt}
  \begin{tabular}{@{}lllll@{}}
  \toprule
    & \textbf{Transition} & \textbf{Stack} & \textbf{Buffer} & \textbf{Arc added} \\\midrule
     &  & $[$ ROOT $]$ & $[$ Deze is (\dots)$]$ & \\
    1-6 & \textsc{Shift} & $[$ (\dots) en grootste $]$ & $[$ hal van (\dots) $]$ & \\
    7 & \textsc{Left-Edge}$_\texttt{cc}$ & $[$ (\dots) en grootste $]$ & $[$ hal van (\dots) $]$ & $($grootste, en$)_\texttt{cc}$\\
    8 & \textsc{Reduce-1} & $[$ (\dots) modernste grootste $]$ & $[$ hal van (\dots) $]$ & \\
    9 & \textsc{Right-Edge}$_\texttt{conj:en}$ & $[$ (\dots) modernste grootste $]$ & $[$ hal van (\dots) $]$ & $($grootste, modernste$)_\texttt{conj:en}$\\
    10 & \textsc{Shift} & $[$ (\dots) grootste hal $]$ & $[$ van België (\dots) $]$ & \\
    11 & \textsc{Left-Edge}$_\texttt{nmod}$ & $[$ (\dots) grootste hal $]$ & $[$ van België (\dots) $]$ & $($hal, grootste$)_\texttt{nmod}$\\
    12 & \textsc{Node} & $[$ (\dots) grootste hal $]$ & $[$ \textit{NULL} van (\dots) $]$ & \\\midrule
    13-21 & \multicolumn{4}{c}{Series of \textsc{Left-Edge} and \textsc{Reduce-1} transitions}\\\midrule
    22 & \textsc{Right-Edge}$_\texttt{root}$ & $[$ ROOT hal $]$ & $[$ \textit{NULL} van (\dots) $]$ & $($ROOT, hal$)_\texttt{root}$\\
    23 & \textsc{Shift} & $[$ ROOT hal \textit{NULL} $]$ & $[$ van België (\dots) $]$ & \\
    24 & \textsc{Right-Edge}$_\texttt{conj:en}$ & $[$ ROOT hal \textit{NULL} $]$ & $[$ van België (\dots) $]$ & $($hal, \textit{NULL}$)_\texttt{conj:en}$\\
    25-26 & \textsc{Shift} & $[$ (\dots) van België $]$ & $[$ , en (\dots) $]$ & \\
    27 & \textsc{Left-Edge}$_\texttt{case}$ & $[$  (\dots) van België $]$ & $[$ , en (\dots) $]$ & $($België, van$)_\texttt{case}$\\
    28 & \textsc{Reduce-1} & $[$  (\dots) \textit{NULL} België $]$ & $[$ , en (\dots) $]$ & \\
    29 & \textsc{Swap} & $[$ ROOT hal België $]$ & $[$ \textit{NULL} , (\dots) $]$ & \\
    30 & \textsc{Right-Edge}$_\texttt{nmod:van}$ & $[$  (\dots) hal België $]$ & $[$ \textit{NULL} , (\dots) $]$ & $($hal, België$)_\texttt{nmod:van}$\\
    31 & \textsc{Reduce-0} & $[$  ROOT hal $]$ & $[$ \textit{NULL} , (\dots) $]$ & \\
    32-34 & \textsc{Shift} & $[$  (\ldots) , en $]$ & $[$ de enige (\dots) $]$ & \\
    35 & \textsc{Swap} & $[$  (\ldots) \textit{NULL} en $]$ & $[$ , de (\dots) $]$ & \\
    36 & \textsc{Right-Edge}$_\texttt{cc}$ & $[$  (\ldots) \textit{NULL} en $]$ & $[$ , de (\dots) $]$ & $($\textit{NULL}, en$)_\texttt{cc}$\\
    37 & \textsc{Reduce-0} & $[$  ROOT hal \textit{NULL} $]$ & $[$ , de (\dots) $]$ & \\
    38-39 & \textsc{Shift} & $[$  (\dots) , de $]$ & $[$ enige die (\dots) $]$ & \\
    40 & \textsc{Swap} & $[$  (\dots) \textit{NULL} de $]$ & $[$ , enige (\dots) $]$ & \\
    41 & \textsc{Right-Edge}$_\texttt{det}$ & $[$  (\dots) \textit{NULL} de $]$ & $[$ , enige (\dots) $]$ & $($\textit{NULL}, de$)_\texttt{det}$\\
    42 & \textsc{Reduce-0} & $[$  ROOT hal \textit{NULL} $]$ & $[$ , enige (\dots) $]$ & \\
    43-44 & \textsc{Shift} & $[$  (\dots) , enige $]$ & $[$ die voldoet (\dots) $]$ & \\
    45 & \textsc{Left-Edge}$_\texttt{punct}$ & $[$  (\dots) , enige $]$ & $[$ die voldoet (\dots) $]$ & $($enige, ,$)_\texttt{punct}$\\
    46 & \textsc{Reduce-1} & $[$  (\dots) \textit{NULL} enige $]$ & $[$ die voldoet (\dots) $]$ & \\
    47 & \textsc{Right-Edge}$_\texttt{nmod}$ & $[$  (\dots) \textit{NULL} enige $]$ & $[$ die voldoet (\dots) $]$ & $($\textit{NULL}, enige$)_\texttt{nmod}$\\
    48 & \textsc{Reduce-0} & $[$  ROOT hal \textit{NULL} $]$ & $[$ die voldoet (\dots) $]$ & \\
    49 & \textsc{Shift} & $[$  (\dots) \textit{NULL} die $]$ & $[$ voldoet aan (\dots) $]$ & \\
    50 & \textsc{Right-Edge}$_\texttt{ref}$ & $[$  (\dots) \textit{NULL} die $]$ & $[$ voldoet aan (\dots) $]$ & $($\textit{NULL}, die$)_\texttt{ref}$\\
    51 & \textsc{Reduce-0} & $[$  ROOT hal \textit{NULL} $]$ & $[$ voldoet aan (\dots) $]$ & \\
    52 & \textsc{Shift} & $[$  (\dots) \textit{NULL} voldoet $]$ & $[$ aan de (\dots) $]$ & \\
    53 & \textsc{Right-Edge}$_\texttt{acl:relcl}$ & $[$  (\dots) \textit{NULL} voldoet $]$ & $[$ aan de (\dots) $]$ & $($\textit{NULL}, voldoet$)_\texttt{acl:relcl}$\\
    54 & \textsc{Left-Edge}$_\texttt{nsubj:relsubj}$ & $[$  (\dots) \textit{NULL} voldoet $]$ & $[$ aan de (\dots) $]$ & $($voldoet, \textit{NULL}$)_\texttt{nsubj:relsubj}$\\\midrule
    55-69 & \multicolumn{4}{c}{(\dots)}\\\midrule
    70 & \textsc{Right-Edge}$_\texttt{punct}$ & $[$  ROOT hal . $]$ & $[$ $]$ & $($hal, .$)_\texttt{punct}$\\
    71-72 & \textsc{Reduce-0} & $[$  ROOT $]$ & $[$ $]$ & \\
    73 & \textsc{Finish} & $[$  ROOT $]$ & $[$ $]$ & \\\bottomrule
  \end{tabular}
  \caption{Oracle transition sequence for the sentence from Figure~\ref{fig:example_dutch}. Consecutive \textsc{Shift}s grouped for brevity.}
  \label{fig:transition_sequence}
\end{figure*}

\subsection{Classifier}\label{sec:classifier}

The parser uses BERT \cite{devlin-etal-2019-bert}
for token representation. While \citet{che-etal-2019-hit} used pre-trained English model (\texttt{wwm\_cased\_L-24\_H-1024\-16}),
we replaced it with a pre-trained multilingual one (\texttt{multi\_cased\_L-12\_H-768\-12}),\footnote{\url{https://github.com/google-research/bert/blob/master/multilingual.md}}
trained on 104 languages, including all 17 languages participating
in the shared task.
As done by \citet{che-etal-2019-hit}, we use the
\texttt{bert-pretrained} text field embedder from AllenNLP,
which extracts the first word-piece of each token, applying a
scalar mix on all layers of transformer.

The transition classifier is a stack-LSTM \cite{dyer-etal-2015-transition} with only BERT embedding features for words,
as well as a scalar feature denoting the ratio
between the number of (null) nodes and the number of words
\cite{hershcovich-etal-2017-transition},
as in HIT-SCIR.
We do not fine-tune BERT due to memory limitations,
though fine-tuning would likely result in improved performance.

\subsection{Postprocessing}\label{sec:postprocessing}

The enhanced graphs are required to be connected,
i.e., every node must be reachable from the root.\footnote{This is enforced by the task organizers by running \texttt{validate.py --level 2 --lang ud} on the system predictions before evaluation.}
While the transition constraints ensure that every node has a head,
there may be unconnected \textit{cycles} at the end of
the parse, resulting in invalid graphs.
To fix the problem, at the end of the parse, we iteratively
find the unconnected node with the most descendants,
and attach it to the predicate (the first dependent of the root) with an \texttt{orphan}-labeled
arc.
In addition to unconnected cycles, this resolves the problem
of prematurely terminated transition sequences due to
no valid transition being available according to the constraints:
instead of resulting in partially-constructed graphs,
headless nodes are similarly attached with an \texttt{orphan}-labeled
arc to the predicate, if it exists, or otherwise to the root.

\paragraph{Parsing tragedy.}
Our postprocessing procedure to attach unconnected subgraphs
had a bug at the time of submission, where many nodes were incorrectly identified as unconnected and thus unnecessarily attached to the predicate/root.
While this still yielded valid graphs,
precision dropped precipitously from before the introduction
of the postprocessing procedure.
Due to the late stage in the evaluation period at which
we made this change, we failed to properly monitor our
development scores and could not identify the cause for
the drop in time, resulting in low official scores.
However, after submission we identified the bug and fixed it,\footnote{\url{https://github.com/coastalcph/koepsala-parser/commit/1b872ad9fc2652649c11eb0a8622c744c92e8cbb}}
improving our parser's accuracy back to the range we had
observed during development.

\subsection{Training}\label{sec:training}

For training the ED parser
we do \textit{not} simply train it on the largest treebank per language, but rather train it on the concatenated training treebanks per language.
In preliminary experiments, this did lead to improvements in terms of combined dev ELAS over treebank-specific models,
contrary to our findings in BD parsing for preprocessing (\S\ref{sec:preprocessing}).
We train our models on an NVIDIA P100 GPU with a batch size of 8. All other hyperparameters can be found in the configuration files in the repository.\footnote{\url{https://github.com/coastalcph/koepsala-parser/blob/master/config/transition_eud.jsonnet}}

Training until convergence took 1h30 (for Tamil, the smallest treebank) to up to 2 days (for Arabic, which contains many long sentences).
Prediction on the dev set took between 4 minutes (for Tamil)
and 55 minutes (for Czech),
ranging from 117 words/second (7 sentences/second, for Tamil) to
1300 words/second (81 sentences/second, for Czech),
including the model loading time.

\subsection{Baselines}\label{sec:baseline}

In addition to providing validation scores for our trained parsers, we consider three competitive baselines, as provided by the task organizers:

\begin{itemize}
    \item \texttt{B1}: gold standard dependency trees copied as enhanced graphs. Though this can be technically considered an upper bound, as gold tree information is provided, it should nonetheless provide some idea of how much of the enhanced graph can be derived from the dependency tree.
    \item \texttt{B2}: predicted trees yielded by UDPipe models trained on UD v2.5 (using the largest treebank where applicable), copied as enhanced graphs. This is more representative than \texttt{B1} of realistic parsing scenarios, which rely on predictions.
    \item \texttt{B3}: similar to \texttt{B2}, but applying the Stanford enhancer post-hoc over the predicted trees. Scores for Finnish and Latvian were not provided.
\end{itemize}

\section{Results}
\label{sec:results}
\begin{table}[t]
\centering
\setlength{\tabcolsep}{4pt}
\begin{tabular}{@{}rccccc@{}}
\toprule
        \textbf{Language}   & \multicolumn{3}{c}{\textbf{Baselines}} & \multicolumn{2}{c}{\textbf{Ours}} \\ \midrule
               & \textit{B1}       & \textit{B2}       & \textit{B3}      & \textit{official}    & \textit{fixed}    \\ \midrule
\small\textsc{Arabic}     & 67.35    & 46.41    & 45.16   & 60.84         &   69.51       \\
\small\textsc{Bulgarian}  & 85.82    & 73.74    & 79.9    & 68.88         &     84.49     \\
\small\textsc{Czech}      & 78.44    & 65.31    & 63.62   & 61.11         &     74.79     \\
\small\textsc{Dutch}      & 82.48    & 62.97    & 72.65   & 62.93         &     76.92     \\
\small\textsc{English}    & 84.30    & 66.83    & 76.16   & 65.37         &      81.05    \\
\small\textsc{Estonian}   & 76.38    & 57.53    & 54.34   & 59.07         &       72.38   \\
\small\textsc{Finnish}    & 78.26    & 61.71    & -       & 67.54         &       81.58   \\
\small\textsc{French}     & 97.49    & 71.14    & 63.31   & 67.93         &       82.76   \\
\small\textsc{Italian}    & 80.20    & 70.33    & 83.03   & 69.08         &       84.66   \\
\small\textsc{Latvian}    & 79.31    & 59.14    & -       & 64.75         &       79.12   \\
\small\textsc{Lithuanian} & 74.22    & 46.78    & 44.84   & 56.28         &        69.09  \\
\small\textsc{Polish}     & 81.59    & 66.38    & 65.37   & 61.34         &      73.89    \\
\small\textsc{Russian}    & 79.63    & 68.33    & 67.80   & 64.23         &      78.90    \\
\small\textsc{Slovak}     & 77.60    & 60.02    & 58.05   & 64.08         &      77.44    \\
\small\textsc{Swedish}    & 80.98    & 62.18    & 71.53   & 64.50         &       78.61   \\
\small\textsc{Tamil}      & 76.29    & 40.71    & 40.25   & 47.44         &      56.85    \\
\small\textsc{Ukrainian}  & 77.24    & 58.73    & 56.92   & 64.17         &      78.10    \\ \midrule
\small\textsc{\textbf{Average}}    & 79.86    & 61.07    & 62.90   & 62.91         &    76.48      \\ \bottomrule
\end{tabular}
\caption{Main results for Enhanced Universal Dependencies shared task (ELAS), as evaluated on the provided test sets. \textit{B1, B2, B3} refer to organizer-provided baseline systems. \textit{official} refers to our official submission, prior to fixing the unconnected graph issue (\textit{fixed}). }
\label{table:main_results}
\end{table}

Table \ref{table:main_results} displays our results on the per-language (not per-treebank) test partitions of the shared task data.
As explained in \S\ref{sec:preprocessing}, for languages with multiple training treebanks available (Czech, Estonian, Dutch, Polish), we preprocessed the raw text of each treebank using the pipeline trained on the \textit{largest} treebank available for that language (e.g. \texttt{alpino} for Dutch).
Also, aforementioned in \S\ref{sec:training},
we then trained our parsers on the concatenation of each language's treebanks, so that we could parse at the language level (as opposed to treebank). Though we observed scant differences between the two preprocessing pipelines, it was \textsc{udpipe} that produced fewer validation errors. As such, we adopted it as the main preprocessor for our official submission.

It is apparent in Table~\ref{table:main_results} that the unconnected graph issue (described in \S\ref{sec:postprocessing}) severely affected our official submission to the shared task (observed in the \textit{official} column). After diagnosing and fixing this problem, we observed an improvement of 14.1 ELAS, which is consistent with our scores on the treebanks' development sets. With this in mind, our (fixed) parser tends to perform in a generally stable fashion across languages, with an average ELAS of 76.48 and standard deviation of 6.86. Among our highest scoring languages are Bulgarian, French, and Italian---the former two of which are corroborated by the strong \textit{B1} baseline. Indeed, Tamil is the notable exception among all results, with 56.85 ELAS. We surmise that treebank size is the biggest factor in this degradation of performance, as Tamil has, by far, the smallest treebank at 400 sentences. As such, our parser has comparatively fewer graph samples to train on than it would for some other languages.

When comparing against the organizer-provided baselines, we see a strong improvement in using our system over both \textit{B2} and \textit{B3} systems. This is encouraging, as it demonstrates the benefit of parsing enhanced dependency graphs directly, rather than relying on predicted trees to accurately relay the enhanced structure (\textit{B1}) or employing a heuristic-driven post-processor to derive it (\textit{B2}). Furthermore, though the organizers consider \textit{B1} as an indirect upper bound due to the gold-standard tokenization and dependency structure employed therein, we can nonetheless observe an advantage in using our parser for some languages. These are Arabic (+2.16 ELAS), Finnish (+3.32), Italian (+4.46), and Ukranian (+0.86). Again, this is promising, given that our parser does not rely on any tree structure in order to parse graphs.

\subsection{Pre-processing Analysis}

Since the test data was provided in a raw, untokenized format, we were interested in the extent of accuracy loss we might observe when relying on off-the-shelf pre-processors. Table \ref{table:dev_results} displays these results over the development data. It is clear that when we employ predicted segmentation, etc. using either \textsc{stanza} or \textsc{udpipe} pipelines, we observe a slight degradation in accuracy, as compared to the gold data. Omitting Czech, Estonian, Dutch, and Polish (which had several associated treebanks), all other languages degrade by an average of 2.00 ELAS for \textsc{stanza} and 2.32 for \textsc{udpipe}. Though one typically expects such a degradation when evaluating with predicted segmentation, we did observe some unreasonably large gaps in accuracy: namely for Arabic ($-4.02$, $-8.32$ for \textsc{stanza} and \textsc{udpipe}, respectively) and Tamil ($-12.19$, $-8.59$). The latter can likely be explained via its small training set, which undoubtedly affects all components of the preprocessing pipeline.

When we examine the scores for all multi-treebank languages, we do not notice a large difference between gold and predicted tokenization---which we expect to be different across treebanks. Here, we simply choose the one trained on the largest treebank (\texttt{FicTree} for Czech, \texttt{EDT} for Estonian, \texttt{Alpino} for Dutch, and \texttt{LFG} for Polish), as we consider this a simple yet reliable heuristic. However, when generating predictions for the smaller treebanks using the bigger treebank's preprocessing model, we only notice a notable drop in accuracy for Dutch ($-2.15$, $-2.54$ for \textsc{stanza} and \textsc{udpipe}, respectively). This indicates that there are likely major differences in the treebanks' domains or how they are respectively segmented or annotated. In general, however, the differences between gold and predicted tokenization is surprisingly not as large as we expected.

\begin{table}[t]
\centering
\begin{tabular}{@{}rccc@{}}
\toprule
          \textbf{Language} & \textsc{stanza} & \textsc{udpipe} & \textbf{Gold Tok.} \\ \midrule
\small\textsc{Arabic}     & 73.66        & 69.36        & 77.68          \\
\small\textsc{Bulgarian}  & 83.46        & 83.17        & 83.89          \\
\small\textsc{Czech}      & 75.60        & 75.47        & 76.00          \\
\small\textsc{Dutch}      & 78.66        & 78.27        & 80.81          \\
\small\textsc{English}    & 80.79        & 79.80        & 82.77          \\
\small\textsc{Estonian}   & 75.43        & 75.32        & 75.81          \\
\small\textsc{Finnish}    & 80.87        & 80.59        & 81.89          \\
\small\textsc{French}     & 86.05        & 85.29        & 88.97          \\
\small\textsc{Italian}    & 85.24        & 85.04        & 85.52          \\
\small\textsc{Latvian}    & 79.00        & 78.39        & 79.28          \\
\small\textsc{Lithuanian} & 74.92        & 74.84        & 75.51          \\
\small\textsc{Polish}     & 71.94        & 73.22        & 73.63          \\
\small\textsc{Russian}    & 78.53        & 78.60        & 78.87          \\
\small\textsc{Slovak}     & 77.54        & 77.33        & 79.17          \\
\small\textsc{Swedish}    & 78.26        & 78.18        & 78.37          \\
\small\textsc{Tamil}      & 50.66        & 54.26        & 62.85          \\
\small\textsc{Ukrainian}  & 79.70        & 79.67        & 79.89          \\ \midrule
\small\textsc{\textbf{Average}}    & 77.08        & 76.87        & 78.88          \\ \bottomrule
\end{tabular}

\caption{Development ELAS for our \textit{fixed} parser.
While in all cases we train the parser on the concatenation of all of a language's gold treebanks (applicable only to Czech, Dutch, Estonian, and Polish),
\textsc{stanza} and \textsc{udpipe} refer to generating predictions on the development data preprocessed by the corresponding pipeline. \textbf{Gold Tok.} refers to generating predictions over gold development data (tokenization, etc).}
\label{table:dev_results}
\end{table}

\section{Conclusion}
\label{sec:conclusion}

In this paper, we have described the IWPT 2020 Shared Task
submission by the Copenhagen-Uppsala team,
consisting of graphs predicted by a transition-based neural
dependency graph parser with pre-trained multilingual contextualized embeddings. While not ranked among the top submission according to the official
scores, the parser architecture proved effective for the type of
dependency graphs exhibited by ED,
and after fixing a critial bug we found the scores
to improve dramatically and agree with the scores we had
observed during development.

We expect that with more resources for BERT fine-tuning,
hyperparameter tuning,
language-specific pre-trained representations and careful
pre- and post-processing, our parser will be a competitive system
in this task.
However, our contribution is a transition system that can directly handle ED, in a unified transition-based parsing system.

 \section*{Acknowledgments}
 We thank the anonymous reviewers for their helpful comments. ML is funded by a Google Focused Research Award. We acknowledge the computational resources provided by CSC in Helsinki and Sigma2 in Oslo through NeIC-NLPL (www.nlpl.eu).

redpajama_set_name: RedPajamaArXiv


I don't even know how the subject came into my head. Maybe it was one too many attempts to control what goes on around me. I do that. Especially when I'm tired or scared; I shut things and people out and say "No!" because my equilibrium has gone missing and I want it back. Which is not in itself bad. When you're not yourself, when you feel like you've been slammed by something or upset by something, when you're worn out or stressed and need a moment, well then, take a moment. Injuries need healing and exhaustion needs rest.
But then I'm spending my moment on worrying about the things that I have no control over. My mind gets all full up of them and goes whizzing along at a hundred miles per hour. And I forget that the main thing is that I have no control over them.
And sometimes the thing I have no control over is myself. If my stamina is gone, I can't just wish it back. And I certainly can't change what I've already done. It's gone, it's over with, there's nothing I can do about it. All that remains in my hands is to decide what to do from here.
And there I learn the first truth: I do not own the past, and I do not own my own bodily processes. The past informs me. It's useful. I can learn from it. And while I can train my body and make it stronger, it still deserves to be fed and rested, and to have time to heal.
Funny. We never expect abstract concepts and inanimate objects to be able to tell us what to do. Yet they can. They do, all the time. And c'mon, it's not like I invented time, or that it obeys me. And I didn't ask for my body. I didn't ask for or earn or choose any of my talents, let alone my physical traits. They may be mine by assignment, but I am neither their designer nor their maker.
But I have a lot of stuff. I have furniture, and books, and music, and this laptop, and all my clothes and plants and things. I earned them. I chose them. (Okay, some of them were gifts, but they're in the minority.) A few of them, like the colored-pencil picture of a rose that hangs above a bookshelf, are my design. I created them.
But are they mine? They're in my possession. I'm responsible for them. Yet they were not always mine, and neither will they be always mine. Some of the things I own will be destroyed. Some of them will be thrown out. Some will be given away. Some will be sold. And some will outlast me. Everything I have will pass out of my possession and belong to someone or something else. Get down to the molecular level and it's even more fleeting. Every particle in my room has existed from the dawn of time, and each will go on existing until time ends. I have worked to bring them into my own orbit for this moment in my life, but it won't last. It isn't permanent.
Nothing is permanent. Nothing material, anyway. Everything will decay, or burn, or else become something different. While they are here and mine, I have a purpose for them. The things I own give me joy, or comfort, or enlightenment. I use them, to make my life or other people's lives better.
Yet I can hardly say my life is my own. I didn't ask for it. I can change it. I can direct it. But there are many things about it that I can't do anything about. What is my purpose? What is my use? I own things to help myself; to what end?
If I believe, as a fair number of people do, that I am only here for myself, then the point is lost. I and all my pleasures are as fleeting as a note from my windchime: beautiful while it lasts and gone in two heartbeats. If I am the reason I own all these things, that they even exist, then the reason itself is a lie. But if I am not the ultimate reason or end, then I can hardly say I own what I have, because if I am ultimately not here for myself, then neither is anything I have. They may have their purpose in me, but my purpose is in something else. Ownership passes right through me and to the one who made me.
I own nothing, but I am the steward of everything that I have. Everything I have exists not merely for my good, but for that of everyone around me. It is mine to care for and enjoy, mine to help and edify me, mine to help me fulfill my purpose. If the things I have make me better, then they are good to have. If the things I have hold me back, then I should not have them. That was never my decision to make.
I hope I can cease to try making it.


4. Dez. Again, please disable your spamblocking or verification software so that Bikini Island Slot Machine Online ᐈ Habanero™ Casino Slots receive. 17 Dec The highest quality casino games are available at emyli.co UK. Cashosaurus Slot Machine Online ᐈ Habanero™ Casino Slots Enjoy Bikini Island™ online slot FREE demo game at SlotsUp™ ✅ Instant Play!. Get the list of Best Habanero Online Casinos to play Bikini Island Slot for Real Money. Love GameArt™ Slot Games? ➤ Enjoy Venetia™ online slot FREE demo . Free casino games are fun! Job security — High job security, no hire and fire culture, pretty stable job prospect. Please use this form to report any data issues. The right guess multiplies your winnings and you Leprechaun Goes Egypt kostenlos spielen Online-Slot. Also, as a member of Cruise Critic you will receive copies of our weekly newsletter plus our "Cruise Sails" and one "Member Offer" mailing. This Vegas slots game is your personal sparkly online casino. You will hear nice music during the bonus games. Wir haben uns die einzelnen Zahlungsarten vorgenommen und stellen sie euch ausführlich vor und geben Tipps, was man bei der jeweiligen Überweisung beachten muss und ob das ein oder andere Online-Casino Dette ikke-progressive slot tilbyder 5 hjul og 25 paylines. Wie kann man am besten Ein- und Auszahlen in Online Casinos? Like many casino slots, Supernova slot also has the Wild Symbol. Cryptologic online slot games are a blast to play for free and fun. Text area has a limit of characters. Edit Storyline An intimate story set during the s in which a young Irish woman Sarah and her family find themselves on both sides of the turbulent wars between British and Maori during the British colonization of New Zealand. Page 1 Page 2 Next page. The Wild symbol substitutes for any symbol in game except Scatter and doubles your winnings.
The Novomatic team gives you the possibility to save the world with three beautiful girls-secret agents and get your award! Job security — High job security, no hire and fire culture, pretty stable job prospect. Ward wurde vorübergehend von der Regie entbunden, und sein langjähriger Kameramann Alun Bollinger sprang ein. River Queen Deck Plans. Looking for exciting scratch card games that offer a number of themes to choose from, a variety of exciting cash prizes and plenty of entertainment? Therefore, you can multiply your win from 2x up to x. Other deposit and withdrawal methods accepted: It is a new change for me to have as my past professional experiences had way more stringent security so i can thoroughly understand the company rationale behind it. The film opened to mixed reviews but performed well at http://onlinecasinowinner.host/bestes-online-casino/automaten-spielsucht box office in New Zealand. All these policies are deployed when there is no breakfast, lunch, cab, health insurance, work from home or any Zahrajte v online kasino | Nejlepší kasina od Casino.com Česko facility being provided by the company. Black Diamond Online Slot.


Welcome to the Official Website of "The Muley and Friends Show!"
Below, you can follow us in our updates and news; to the bottom right you can find a column of links of interest. Hope you stick around with us for more fun that you can kick your hooves up to!
Special TV Presentation of "The Muley and Friends Show" titled "Millionaire Magazines" is coming to www.ACMEclassics.com channels Thanksgiving 2014 at 8:55 am and 4:25 pm.
Click the image below to see our recap of Superman Celebration 2018!
Although this show was live, it went off with very few hitches, namely the crew members (Muley's friends) that kept interrupting the show's host (obviously Muley) about an unexpected late-arrival to the program. That's another story for another post.
This is a story about the behind the scenes of The Congo Cabaret: "That's Entertainment!"
On January 22, 2017, Muley the Mule and Friends helped host The Congo Cabaret, a two-hour dinner-and-a-show live program featuring many great talents before 100 guests and raising nearly $2500 for the food ministries of First Congregational Church which feeds lunch to nearly 400 people per week, helps supplement around 300+ families with food, offers a chance to shop for more supplemental food on Monday, Wednesday, and Friday, and a clothes closet on Tuesday and Thursday. And this is weekly, folks! Oh, and you can donate to the cause if you CLICK HERE.
In spring 2016, the idea for expanding one of our own shows, Muley's Talent(less) Revue, into a full-fledged two-hour talent program to support everything in the last paragraph was taking slow form in the shape of an outline, but it just wasn't right. Things were amiss. In August 2016, Joel Chapman gave a call that he wanted to produce a Cabaret and wanted Muley and Friends to host. His notes were in line with ours, more or less, and we of course said: Yeah!
The talent came from within the church itself featuring many who have traveled and toured with their shows (including our fuzzy cast) and as they were all signing-up, with some surprises thrown in, it became clear that this was destined to be a fantastic night of entertainment unseen in those hallowed halls.
But, it all has to begin with planning to work out a show for 13 human performers, volunteers, chefs, and four willing critters which became a 31-page script for the hosts including two performances not listed and two performers that were our secrets. Don't you want to know yet? Keep on reading.
A meeting was held at the Congo Cafe in "The Hub" where the show would be performed to plot-out the lay of the land: stage, set, host-stand. Producer Joel Chapman met with Kevin L. Williams and DaMarco Randle to discuss staging the production, and Joel's stage experience found him setting the lights and designing not only the stage, but also the title logo, poster, and program. There would be a historical display of the "Muley-verse." The Art Department would be in charge of enlarging the "That's Entertainment" sign for the stage itself. It was determined that the show itself would not be recorded or televised due to the content and that it was a live show, we didn't want photography other than one official individual doing such.
Joel Chapman and DaMarco Randle measure and plan the staging.
The script was underway, the performers were all getting rehearsed, and we met for the production meeting where we would learn the line-up of the acts and what Muley the Mule and Friends would be doing for the performers' intro's and outro's.
Mark Allen & Cheryl Cornish, Jonathan Devin, Janet Wade, Sonia Walker.
All of the above, now visible: Martheus Wade, Julia Hicks, and DaMarco Randle.
Then, came time for posters and ticket sales. Our very sweet, very helpful Caroline Rubenstein was there to help make sure the ticket sales were taken care of.
Joel promises two hours of mirth and good cheer in the New Year from a Cabaret loaded with Memphis and MidSouth talent: something for all the family!
Kevin Williams' charming, winsome, and bold "Muley" announces the First Congo Cabaret, coming Sunday, January 22, 2017. Featuring Cheryl and Mark, Brennan Villines, Joel Chapman among a delightful, family show of talented and engaging entertainers. Dinner is included! Not to be missed, so be sure to mark your calendar and save the date for "That's Entertainment" Cabaret!
It should be pointed out that tickets completely sold out on January 16, 2017, for this spectacular show!
And while all of this was taking place, preparations continued with show construction. Here are some stage views during Tech Rehearsals on January 21, 2017! We're one night until showtime!
DaMarco Randle and Joel Chapman adding some finishing touches.
and Brennan Villines on piano, Joel on lights.
The crew is in place for the Tech Rehearsals.
Tamar Love arrived and took up her bass to complete the house band.
View of the stage from the green room.
View of the green room from the stage.
Look at all those scripts, and sound equipment supplied by Brad Alsobrook.
Another view behind the stage. Hmmm...who's under those sheets napping?
The script was completed and signed by all the cast that night.
Brennan Villines, Zarabeth Davis, Tamar Love.
So, now Tech Rehearsal is complete and everyone is ready for the show. The first thing to greet the audience upon entry is, of course, the "History of the Muley-verse" display which we'll look at next along with the full program scans and list of cast and crew credits for the show!
Photography by Kevin L. Williams and Christopher Davis.
Video by Kevin L. Williams and Roger Courts.
Muley the Mule and Friends © Kevin L. Williams Productions.
The Congo Cabaret: Hosted by Muley the Mule and Friends - Part 2: "History of the Muley-Verse"
Our last post led us into the beginnings of The Congo Cabaret with a behind-the-scenes look at the making of the show.
This post will take us through the "History of the Muley-verse" display that was in place to greet the guests of the Cabaret.
be (hopefully) drawn over to see the Muley display, but also see the food in the background.
to see "The Congo Cabaret."
"Spokesmule of the Century" certificate and an award given to Muley by the Ronald McDonald House.
presentation to the Schulz Museum in Santa Rosa, CA.
Muley 1999, Muley 1990, Missy 1990, Buford 1985, Buford 1990.
original drawing of Muley from January 1, 1980.
The process of a comic strip, and the bits and pieces of a puppet.
The show program as created by Joel Chapman.


text:
Alerus Center Names Swanson Executive Director
GRAND FORKS, ND (CelebrityAccess MediaWire) —
Roger Swanson has been named Executive Director of the Alerus Center in Grand Forks, N.D., VenuWorks. The Alerus Center is managed by VenuWorks. Swanson will be presented to the Events Center Commission at its April 28 meeting for formal ratification. He will be on site at the Alerus Center beginning Monday, April 12.
Swanson brings over 25 years of facility management experience to the position. He began his facility management career in Alaska with Ogden Entertainment working box office, facility operations and food and beverage before becoming General Manager of the William Egan Civic and Convention Center. He eventually took on additional management responsibilities for Ogden as their regional Director of Sales and Marketing for five venues in Anchorage and Fairbanks. Roger left Ogden to work for Tickets.com/Carr Tix as their statewide General Manager, Alaska Region. In 2005, he was named Vice President, Operations for Encore Facility Management, a division of Global Entertainment, with offices in Phoenix, overseeing the construction and opening of four hockey arenas around the US. Most recently he has worked for VenuWorks as the Director of Development & Marketing in opening and managing the new Burnsville Performing Arts Center.
Peters cited Swanson's experience managing both convention centers and arenas, along with experience in ticketing and food and beverage, as important factors in selecting Swanson for the Alerus Center position.
Swanson succeeds Steve Hyman who resigned in March. –by CelebrityAccess Staff Writers

redpajama_set_name: RedPajamaCommonCrawl


Edward Owens, Jr. | Mass Growth Capital Corp.
Edward O. Owens, Jr. is Chief Financial Officer of Owens Companies, Inc., the oldest minority-owned and operated company in New England. He oversees a third-generation family-owned business specializing in commercial moving and warehousing.
Prior to joining the family business, Mr. Owens worked for TripAdvisor, Inc., LogMein, Inc., and Deloitte & Touch, LLP. Mr. Owens is a graduate of Northeastern University, where he received both his Bachelors and Masters of Science in Accounting. He is a Certified Public Accountant in the state of Massachusetts and corporator for East Cambridge Savings Bank.


text:
Write a function, ```calculateTip(amount, rating)``` which calculates how much you need to tip based on the total amount of the bill and the service.

You need to consider the following ratings:
```
Terrible: tip 0%
Poor: tip 5%
Good: tip 10%
Great: tip 15%
Excellent: tip 20%
```
The rating is case insensitive. If an unrecognised rating is input, then you need to return:

```"Rating not recognised"```   in Javascript, Python and Ruby...
...or ```null``` in Java

Because you're a nice person, you always round up the tip, regardless of the service.
```python
import math

def calculate_tip(amount, rating):
    if rating.lower() in 'terrible':
        return 0
    elif rating.lower() in 'poor':
        return math.ceil(amount * 0.05)
    elif rating.lower() in 'good':
        return math.ceil(amount * 0.1)
    elif rating.lower() in 'great':
        return math.ceil(amount * 0.15)
    elif rating.lower() in 'excellent':
        return math.ceil(amount * 0.2)
    else:
        return 'Rating not recognised'
```

redpajama_set_name: RedPajamaGithub


text:
ABOC SITE
Livable Wage
National Vesting
Dr. Whitehair
A Solution for the High Cost of Higher Ed
Students can benefit from a vested economic plan
If it's not bad enough that the steep cost of college shuts out millions of young people, now along comes scams involving those seeking master's degrees.
The Wall Street Journal reported recently that "…recent film program graduates of Columbia University who took out federal student loans had a median debt of $181,000."
The story goes on to say that two years after earning their master's degrees, "half of the borrowers were making less than $30,000 a year."
Excuse me? That's utterly unacceptable and points not just to greed among elite universities, but desperation among graduate students seeking brighter futures.
Higher ed has long been an issue of concern for us at the Center of National Vesting. And while we were heartened at the White House's announcement last spring calling for $109 billion for two years of free community college, we're not confident it will actually take hold.
While well intentioned, it may not be realistically take place given the penchant for partisan bickering on Capitol Hill. The fact is that even community college is out of reach for students, many of whom would rather enter the workforce following high school than accumulate crushing debt.
As we noted in earlier posts, the average student loan debt topped $37,500 in 2020, according to Investopedia. And they owe nearly $1.6 trillion, according to the Federal Reserve Bank of New York.
But rest assured there is a viable solution.
At CNV, we maintain that universal education doesn't have to be out of reach. And that doesn't mean raising taxes to fund universal education. Robert Whitehair, founder of the Center for National Vesting, has found, through his mathematical formulas, what he calls "a market surplus that now exceeds $15 trillion per year."
Whitehair says that we need to equitably apply the market surplus every American produces and distribute it back to them. In short, national vesting is the future of our country.
Vested economics will enable our country to erase roughly $1 trillion in college debt without raising taxes on anyone.
And that means a brighter future for all future college students.
PrevPreviousAmericans Returning to Work, but More Work Needs to be Done
NextPositive Jobs Gains Also Bring a Cautionary TaleNext
<# if(ThriveComments.current_user.ID){#>href="https://www.centerfornationalvesting.org/wp-login.php?action=logout&_wpnonce=6ed90ce234"<#}#>><#= ThriveComments.util.render_label('logout_change') #>


Ashab e Badr Authored By Qazi Muhammad Sulaiman Salman Mansoorpuri. The present book contains complete list of all 313 Sahaba e Kiram r.a who were participated in the Battle of Badr. Names and short biographies/ stories of the 313 noble Muslim warriors of jang e Badr in Urdu language.
The Battle of Badr is the most important battle in the history. This battle established Islam as the only true religion for the whole world of all time. Gazwa e Badr took place on 17 Ramadan 2 A.H, 624 C.E. The beloved Prophet Muhammad, peace and blessings of Allah be upon him, together with 313 of his Sahaba (Companions) defeated about 1000 better armed polytheists of the tribe of Banu Quraish.
This book "Ashab e Badar" is now available on Pakistan Virtual Library for online reading and download. Check out the following links to read online or download the complete book in Pdf format for offline reading and references.


CARFAX One-Owner. Clean CARFAX. Certified. Osmium Gray Metallic 2017 Volvo S60 Inscription T5 FWD FWD Automatic with Geartronic Drive-E 2.0L I4 16V Turbocharged Adaptive Cruise Control w/Queue Assist, Convenience Package, Driver Alert Control, Grocery Bag Holder, Heated Front Seats, HomeLink Integrated Garage Door Opener, Keyless Drive, Power Retractable Exterior Mirrors, Technology Package.


text:
Blog / The Chinese community in the UK has transformed our country for the better
Posted by Sonny Leong 5pc on March 14, 2018
The Chinese community in the UK has transformed our country for the better
By Helen Goodman MP, Shadow Foreign Minister for China
In recent weeks, many of us have enjoyed celebrations for the Chinese New Year at the start of the Year of the Dog, and Jeremy Corbyn spoke at a fabulous dinner organised by Chinese for Labour.
One of the personality traits of somebody born in the Year of the Earth Dog is resilience; as long as I work hard and do not give up, I will be successful.
In some ways, this reflects the story of the Chinese community in the UK.
There are about 7,000 Chinese-owned businesses in almost every corner of our country, making the Chinese community one of the most successful in Britain.
And then there are the cultural contributions. From Chinatowns in London, Birmingham, Newcastle, Manchester and Liverpool to contributions to our creative industries to the revolutions inspired in British kitchens, the Chinese community in the UK has transformed our country for the better.
But this community, around half-a-million strong, has also made many valuable contributions to our Party, through generous donations to tireless canvassing at local and general elections in typically wet, British weather to representing the party at councillor level.
I, as the Shadow Foreign Minister with responsibility for China, would very much like to see a Chinese Labour MP soon.
As China continues to grow as a nation, it extends its connections with countries all over the globe, some of which have not had the pleasure of having a Chinese community. By doing so, it extends Chinese culture, introducing others to its language, its food, its people and its values.
However, Chinese culture is not monolithic. Each Chinese territory has a unique culture, from Beijing to Hong Kong to Taipei. But it is these peculiarities which make Chinese culture so rich. And it is this variety which must be protected and encouraged. The best way to do so is to give them the space and the freedom to flourish. An enriched China is an enriched world.
I am interesting in hearing the different stories and perspectives of members of Chinese for Labour.
The Tories' failed austerity programmes have alienated many across the country, and run down community centres across the country including those to which members of the Chinese community have made significant contributions.
As we face local elections in the coming months, it will be important for all who share Labour values to do as much as we can to keep our seats and gain new seats. And I am sure that the Chinese Labour community will contribute as much as possible to this aim, as it always has.
I wish all Chinese people in Britain a very happy new year, and hope that their successes may long continue.


Whether you have a layover, overnight sleepover or you are just quickly passing through, our Norfolk Airport Guide is a great place to start planning your visit. Here, you'll find information on services and facilities available inside the airport – including details about airport lounges, WiFi, mobile charging points, lockers, 24-hour food options, nearby hotels, and everything in between.
To help you plan your layover or overnight sleepover, we are here to give you the low-down on what travellers have reported back to us about their time at Norfolk Airport.
Norfolk Airport consists of a single terminal that's divided into Concourses A and B, which branch off from the main landside area. You'll find a few eateries and a handful of gift shops. A 24 hour cafe is open on the landside. Free WiFi is available to help pass the time. No pay-to-use airport lounges are available.
We have no recent reviews from travellers who spent the night here, but it seems that the level above the baggage claim area is large, carpeted, and quiet. Bring along earplugs or noise-cancelling headphones to combat loud announcements. For uninterrupted sleep, nearby hotels offer free shuttle service. See our Airport Hotels section below for more info.
To see more options there is a list of hotels near Norfolk Airport on Tripadvisor that can be sorted by price, distance, traveller rating and popularity.
Free WiFi is available at Norfolk Airport for 60 minutes. Connect to the TakeORFwifi network. One additional hour costs $3.95 (2MBps) or $4.95 (5Mbps) and one day costs $6.95 (2MBps) or $9.95 (5Mbps).
ATMs / Cash Machines – Need cash? ATMs, operated by BB&T are available. Fees may apply, so be sure to check your bank's fee schedule and your daily withdrawal limit if you are travelling internationally. You may also want to notify your bank of your travel plans. Locations: throughout the Main Terminal, Arrivals Terminal and the concourses.
Baby Care Facilities – Baby change facilities are located throughout the airport. Mother and Child rooms are also available in the Main Lobby and Concourses. These rooms include a sink, changing table, a rocking chair and charging outlets to give nursing mothers comfort and privacy.
Baggage Carts – Need a hand with your luggage? Smarte Carte baggage carts are available at the airport. Carts cost $5.00 to rent with a $0.25 refund upon return. Locations: Curbside, near check-in • Arrivals, near Baggage Claim 2 • Rental Car return, Garage A, Level 2.
Banking Services – A full-service banking branch is available from 10:00AM – 2:00PM (Mon-Fri).
Children's Play Area – An Interactive play area and toy store for children. Location: Departures Terminal.
Currency Exchange – Travelex offers service in the Main Lobby. Hours: 8:00AM – 4:30PM (Mon-Sat).
Drinking Water – Thirsty? Water bottle filling stations are available Airside.
Duty Free & Shopping – Duty Free shopping is not available. The airport offers a few shop such as Hudson News (3 locations), Tech on the Go (2 locations) and a few others. Hudson News (Landside) is open 4:00AM – 12:00AM for last minute items.
Food & Drinks – Food concessions throughout the airport operate on varying schedules with most open as early as 4:30AM. Starbucks is open 24 hours a day in the Main Terminal.
Information Desk – Staffed by uniformed naval personnel, the Military Information Booth offers assistance and information to both military and civilians. Location: Arrivals Terminal, landside, 1st Level, Baggage Claim. You can also seek assistance from one of the Volunteer Ambassadors roaming around the airport. Airport Police are also on hand 24 hours a day to assist with hearing impaired phone and language translation services and special needs.
Medical Services – Automated external defibrillators (AED) are available in the Arrivals Terminal, Main Lobby and Concourses. Norfolk Airport Authority's fire and police responders are available 24 hours daily.
Mobile Charging – Charge your electronics at charging stations located on the Concourses, the pedestrian bridge, in Arrivals and in restaurants.
Postal Services – Drop off your last minute postcards at the airport's mailbox. Location: Main Hall.
As of January 2019, Norfolk airport is served by the following airlines: Allegiant Air • American Airlines • Delta • Frontier • Southwest Airlines • United Airlines.
The following car rental agencies are located onsite in the Baggage Claim area: Alamo, Avis, Budget, Dollar, Enterprise, Hertz, National and Thrifty.
Several area hotels provide airport transportation service as a courtesy to their guests. Here are a few hotels offering airport shuttle service: Candlewood Suites Norfolk Airport • Econo Lodge Airport • Hampton Inn & Suites Norfolk-Airport • Holiday Inn Express Hotel & Suites Norfolk International Airport • Holiday Inn Norfolk Airport • Holiday Inn Virginia Beach – Norfolk • Quality Suites at Lake Wright • Residence Inn Norfolk Airport • Sleep Inn Lake Wright • SpringHill Suites Norfolk Virginia Beach • Wingate by Wyndham Virginia Beach / Norfolk Airport.
James River Transportation offers shuttle service between the airport and coastal Virginia, including southside coastal Virginia and the Virginia peninsula. Shuttle service also available to the outer banks of North Carolina. James River Transportation has a service counter near Baggage Carrousel 3 in the baggage claim area, and an operations kiosk outside of Door 2 of the Arrivals Terminal.
Taxis are available outside of the baggage claim area on a 24-hour basis. All taxis are metered, and reservations are not required.


text:
Q: why getting The view firstapp.views.perticular_customers didn't return an HttpResponse object. It returned None instead in DRF? I have created a view, able to retrieve, update and delete perticular object from data base and when ever i am trying the url path('perticularcustomer/<int:var>', perticular_customers, name='perticular_customers') i get :-
The view firstapp.views.perticular_customers didn't return an HttpResponse object. It returned None instead.

views.py:-
@csrf_exempt
def perticular_customers(request, var):

    try:
        customer = Customers.objects.get(id=var)
    except Customers.DoesNotExist:
        return HttpResponse(status=404)

    if request == 'GET':
        serialize = CustomersSerializer(customer)
        return JsonResponse(serialize.data, safe=False)

    elif request == 'PUT':
        data = JSONParser().parse(request)
        serialized = CustomersSerializer(customer, data=data)
        if serialized.is_valid():
            serialized.save()
            return JsonResponse(serialized.data)
        return JsonResponse(serialized.errors, status=400)

    elif request == 'DELETE':
        customer.delete()
        return HttpResponse(status=204)

A: You need to use request.method:
    if request.method == 'GET':

redpajama_set_name: RedPajamaStackExchange


We offer you hundreds of background template choices from our ever-growing art library. Begin here in which to explore the look & feel that you'd like for your new branded mats, banners, backdrops, tricks, or props. All of the licensed Hi-Res artwork from our galleries give you a starting point and the ability to have a customized item that is 100% unique to you!
We'd be surprised if you don't find what you're looking for, but… don't see anything you like? We have upgrade options for most of our items in which we'll search out the perfect background art for you (with your approval), license it at our expense, and put together a more refined custom design. Additionally, you are always welcome to submit your own artwork for a product. We'll print and fabricate it for you. Just follow our design specs.


I joke that my computer and my office chair are my business' two most important assets. The truth is, it's no joke. Without them, there's little to no creative productivity happening and that is how my business operates.
Just like your physical office or workspace, keeping your computer organized and optimized is a necessity when it comes to being a highly productive content creator. You might not even notice it, but I bet you spend hours searching for digital files, recreating workflows and browsing social media.
Your unproductive social media time is a bit tricker but what I can share with you is how I optimized the rest of my computer time to create efficiencies, build process and maximize my computer production time.
I really encourage you to put some thought into this. I have personally found that creating space on my computer is not only useful for avoiding those "I'm on deadline and my hard drive is full" meltdowns but also symbolically helps me rid the old and focus on current and future.
I'm an Apple fanboy so most of my app recommendations are for the Mac/iPhone environment but happy to help come up with alternatives for the PC. Leave a comment at the end of this post for recommendations from the community.
Here are my personal tips I try to live by and some hand-picked tools I use to keep an organized computer for more productive content creation.
For years, I sucked at properly naming files. Especially when I import photos from my camera or create new documents. Just like your blog, it's ideal to create some type of taxonomy "filing system" for your computer files so you can easily browse to the proper location or find in spotlight search.
I try to remind myself every time I create a new file or download something from the web to properly name the file with something that I will remember. Not properly naming files can create unneeded stress. By being more organized and naming files properly with something that I will remember, will save time and hassle later.
Once you've established a file naming system, it then makes it a snap to search for files and folders. I always try to save document names with some type of context. For example, if it's a new Facebook Ad, I might save it with something like 'Facebook Ad 2018 Content Academy' so if I were to search my Mac for Content Academy ads it should pop up in spotlight search.
There are plenty of fantastic services like Dropbox, iCloud, Google Drive, and OneDrive to store your files remotely in the cloud. This is a double win when they also sync to your mobile device for quick and easy retrieval when you're on the go or when you need to send large files over email or slack.
Just like tip #1, it's best to keep your cloud storage neatly organized, just as you should with your desktop hard drive. Try to not just dump files into the main folder, rather spend seconds creating folders and a taxonomy for your cloud drives. Most cloud services can also be indexed by your computer's search function so the same file naming tip from above applies to cloud drives too.
Trello.com is a fantastic web app for project management and organizing pretty much everything. I use Trello for everything from scheduling content ideas and managing my client load to organizing personal vacations. The best part about Trello is it works cross-platform for seamless access across devices.
Probably one of the best Trello productivity tips I can share is using Trello to manage your content marketing production. In episode #16 of the Blog You Want in the Time You Have Podcast™, I outline how to create a Content Deck. This system allows me to capture ideas for new content and queue them up into a production schedule.
Want to learn more about how I leverage my Content Deck workflow? Listen to the Blog You Want in the Time You Have™ Podcast!
One of my favorite features of Trello is the ability to create and attach a Google Drive document to a card. This allows me to better project manage my content needs. When I have an idea for a new blog post or piece of content, I create a new card. When I'm ready to start writing, I simply hit up my Content Deck, see what is next and select 'create and attach a Google Doc' and presto I'm ready to start writing.
Avoid using your desktop for temporary files like the plague. It's so easy to download files from Gmail or the Internet to your desktop and think "I'll leave it here so I'll remember it." The problem is, it creates so much clutter and it's like having a 1,000 post-it notes on your computer screen. At some point, it's no longer sustainable.
The more you live your computer's organization strategy, the less likely you will need to store files on your desktop.
Use programs like Trello to manage projects and create folders on your computer for temporary files. Reserve your desktop for only a handful of "today's" files and clean daily. Also, when you save files into cloud-enabled drives such as the services I mentioned in computer organization tip #2, you'll always have the right files at the right time regardless of what device you're on.
A cluttered desktop is a reflection of your mind and downright embarrassing. You never know when you hop on a video call and you need to show your screen. Next time you want to download your vacation pics to your desktop, just say no.
Chances are, if you're like me you'll forget why you downloaded that file anyway.
Spend time each week to cognitively looking for repetitive computer tasks that can be turned into workflow templates. Make notes of files or programs you use often and determine if you can make it into template or shortcut to save repetition. Alfred is a popular app for the Mac that creates workflows and shortcuts.
Voice-activated services such as Siri, OK Google, and Alexa are also helpful for quickly adding a task, or turning on an alarm or jotting a note. Saving a few seconds here and there, when they work correctly.
Find and memorize your most often shortcuts. I recently found that Gmail offers a laundry list of shortcuts that, once enabled, can save a ton of time when cleaning out unread messages and deleting emails.
Most programs offer keyboard shortcuts, research the programs you use most often and I bet you'll find a few that will work great. Start practicing with one or two, until you memorize those and then go on to learn some more.
Once you master a few shortcuts, then you can expand into special characters with the option key!
You can also create your own shortcuts using "text expander" programs such as QuickKey for Mac. I use this handy little app for canned responses that I can easily paste into emails or even coupon codes that I want to remember. It's an awesome way to create your own custom shortcuts snippets to quickly insert copy or code into any document or program.
If you're a content creator, your computer's clipboard probably gets a workout from copying and pasting text and images to arrange content.
Copied for Mac is another handy clipboard tool I used to save clipboard items and organize clips for future use. This tool is a lifesaver if you copied something important to your computer's clipboard only to accidentally copy something else.
You can save the most recent 25 items and sync them across all of your devices. Additionally, you can copy something and then change the formatting of the paste. So for example, you can copy some text and then paste in all uppercase characters. Handy!
For years, I spent hours typing passwords in manually. That all changed when I found Dashlane Password Manager. Since I started using this app, I feel like I have recovered hours of my life and rest assured knowing that the team at Dashlane working to protect my passwords using military-grade tactics.
The app sits on all of my computers and I use one master password to access my entire database of passwords. As I browse the web, Dashlane logs me in and captures any new passwords that I create or update. Pretty crazy but I have over 1,000 passwords in my account. They're all super strong thanks to this handy app that is available on almost all platforms.
I hope you'll find these computer organizations tips useful to your personal computer productivity regime. If you have any feedback or what to share something I missed, feel free to leave a comment on this post or email me at [email protected].
P.S. None of the links in the post are affiliate links, they are all just recommendations that I believe in and were mentioned without compensation.
Regarding number 4, desktop clutter, do you have to drag all the files to Trello?
I take a lot of screen snapshots and also when I am working on creating graphics in Canva for example, have many downloads that I pull to my desktop after they download in my browser. Or if I need a photo from my iPhotos program I pull it to the desktop to then be able to work with it, etc., etc., so when I am in the midst of a project my computer desktop looks lie a tornado hit is…is there a way to help manage that part of the process. Thanks!
Hi Heather. You would have to drag the files into your trello account but it keeps things nice and tidy.
In terms of the tornado desktop, I try to organize a weekly purge and put each file into its appropriate folder or trash. Leaving only a few days of working files on my desktop. If it's really a "reminder file" then it should get organized into a todo or calendar item for follow up.


text:
Oakland County urges residents to prepare for severe weather
By: Mary Beth Almond | C&G Newspapers | Published April 8, 2015
OAKLAND COUNTY — Waving goodbye to the snow and ice of winter isn't hard for most people to do come spring, but county officials want residents to know that as the temperatures increase, so do the chances for severe weather.
Last year, there were 112 storm-based warnings issued in southeast Michigan, three of which were recorded tornadoes. County officials said the recent tornado that touched down in Rochester Hills serves as a reminder of how destructive tornadoes can be and why it is vital to have a severe weather plan.
But it's not just tornados that pose a threat; winds of 70 mph or more can cause just as much damage, according to the Oakland County Homeland Security Division.
To help remind residents to prepare for the severe thunderstorm and tornado season that typically spans from April until September, Oakland County Executive L. Brooks Patterson has designated April 12-18 as Severe Weather Awareness Week in Oakland County.
"Preparedness saves lives and property," Patterson said in a statement. "Families, schools and businesses should all have an emergency plan in place in the event of severe weather and other disasters."
During this weeklong observance, the county hopes to heighten public awareness of the Oakland County Outdoor Warning System, as well as promote various steps that residents should take when warning sirens are activated.
Oakland County's outdoor warning sirens are tested on the first Saturday of every month from March to November. In recognition of Severe Weather Awareness Week, a special test will be conducted at 1 p.m. April 15.
Theodore Quisenberry, the county's Homeland Security Division manager, said a significant part of Severe Weather Awareness Week is geared toward educating individuals about severe weather safety and the Oakland County Outdoor Warning System. He said the special warning siren test date is a great time for families, businesses and schools to develop and test their own severe weather plans.
"We want to try to increase the awareness of what people should be thinking of as the severe weather opportunities increase during this time," he said.
In the event of severe weather, residents should have an emergency supply kit on hand that allows them to be self-sufficient for at least 72 hours. County officials said the kit should include a three-day supply of water — one gallon per person, per day — food that won't spoil; one change of clothing and footwear per person; one blanket or sleeping bag per person; a first-aid kit that includes prescription medications; emergency tools, including a battery-powered radio, flashlights and plenty of extra batteries; sanitation supplies; special items for infant, elderly or disabled family members; and an extra pair of glasses.
As part of Severe Weather Awareness Week, the Oakland County Homeland Security Division is also offering free Skywarn spotter training classes. The two-hour courses discuss the basics of thunderstorm development and structure, what features to look for, where to find them, what information to report, how to report it, and basic severe weather safety. Classes will be held from 7-8:30 p.m. April 21 at Farmington Hills City Hall and from 7-8:30 p.m. April 30 at the Commerce Township offices.
Particpants must register for the classes at www.oakgov.com/homelandsecurity.
For more information, visit www.oakgov.com/homelandsecu rity or call (248) 858-5300.
Benjamin Moore, Pantone release colors of the year
Telehealth numbers rise drastically during COVID-19
Teachers get clever to create home classrooms
Local resources available for those suffering from mental health strain
Healing through music during dark times
Family Video moves to close last stores


Remember When Presidents Dropped Bodies For Their Country?
The REAL Meaning Of Oppression..
McAuliffe announced on Thursday evening he has "no intention of honoring" a request for publicly available voter data made by the Presidential Advisory Commission on Election Integrity, which was established through a May executive order and is being led by Vice President Mike Pence.
Even Homer Simpson Gets This!
Do You Prefer Small Government Or Big Government?
The Department of Homeland Security is set to begin building prototypes for a border wall this summer..
Recently, TruthRevolt wrote about how California Attorney General Xavier Becerra has added four more states to the state's travel ban so that state employees won't be able to take business trips to four additional states that have "backwards" laws regarding LGBT people. The newly-offending states include: Texas, Alabama, Kentucky, and South Dakota. The already-banned states include Kansas, Mississippi, North Carolina and Tennessee.
But you just keep on trying....meanwhile, President Trump will get 2 more Supreme court justices in his first term!
Stossel On The Fuel For All Discovery, Innovation, And Prosperity..
Liz Wheeler: This is what the Mainstream Media won't tell you about the news this week.
Sickening what the left is doing in Washington.
Two brothers face murder charges after a man was killed in Pocatello.
Will You Allow Your Government To Make You Sheep?
Andrew Breitbart Vs. PC College Student..


Red Responds: Is This Widow Ready for a Relationship?
I have been a widow for three years. I am just 36 years old and have two children ages five and six. I am at a place where I am at peace with my husband's passing. He was, of course, the love of my life. I never date because of having my children 24/7 and not being able to find somebody who is right for me and my children (I refuse to settle) – although my friends certainly try to set me up.
Do you think I am too choosy or do you think it will just take some time… or maybe when the children are older? I don't need a guy's attention. I am secure within myself, but I am definitely a relationship type of person.
I'm very sorry for your loss, but happy that you are at peace. Peace is a good thing. While there will never be another like your husband, there eventually will be another. It's just going to take time.
You are honoring yourself by not settling for the wrong man just to be in a relationship. Your independence and the joys and hardships you have suffered give you a certain element of strength, and a bit of a different outlook. Your kids and friends aren't going to stop trying to set you up, but you aren't going to meet the right man soon. Other than some random attention and very casual dating, true romance is still about two years away.
There's nothing wrong with being selective about who you bring into your life. After losing someone you loved so dearly, it does raise the bar a little bit higher. But, you will come to a place when dating holds more promise, and when you meet the right guy, you will fall in love again. You'll meet him at a wedding. It's an older man, but not a relative, who will introduce you to this fascinating guy. Although it will be a slow developing relationship, your boyfriend will propose marriage (a couple of times) and eventually you'll give in.
You've been through a lot, but you come through like you really have "it" together. Just keep trusting your heart and your head, and it looks as if there is much happiness for you and your kids, now and in the future.
be happy, children, dealing with death, future, good parenting, grief, moving on, new love, picky, Red, Red Responds, well-being, widow, Will I love again?


text:
Q: J2EE webapp Utilities project best practises I have a Maven based J2EE project structure
Customer (root pom)
   |
   |------ WebTier (JSF 2/Primefaces)
   |
   |------ BusinessTier (EJB 3.*, interfaces, interface impl)
   |
   |------ PersistenceTier (JPA 2)
   |
   |------ CustomerEar

Now I have found that I'd need a new Java class or classes for handling basic routines
I guess its not good idea to place this Utility class under WebTier, because Utilities might be used also from BusinessTier.
Is it the "best practise" to create an independent Java Project, implement necessary classes and include this jar to the ear??

A: It would be hard to try and justify a "best practice" in this kind of situation as it is a very project-specific question.
There would be nothing inherently wrong with adding a "CommonLibrary" project or such-like that is a dependency of both the WebTier and BusinessTier. In fact the project I am working on now is almost exactly that structure (with a common library).
As this is a maven project, just make sure the "CommonLibrary" project dependecy scope is set to "provided" in the Business/Web/Persistence tiers, and "compile" in the ear project.
e.g. In WebTier, the dependency would be:
<dependency>
   <groupID>group.name</groupID>
   <artifactID>common-library</artifactID>
   <scope>provided</scope>
</dependency>

EDIT: The scope would be 'provided' in the Web Tier as it would be a .war. The other tiers would be jars so the scope can be 'compile' for the persistence and business tiers.

A: based on my experience , i recommend to have separate project folder for utility and include this as jar where ever is required
advantages are

*

*easy maintenance, since you need to change code once .

*plugin & unplug when ever you need.

*you can have this as common and utilize for
other projects.

for instance
apache string util
http://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html
bean util
http://commons.apache.org/proper/commons-beanutils/


text:
Ardy Lightfoot — видеоигра жанра платформер, разработанная и выпущенная 26 ноября 1993 года для японского рынка компанией ASCII Corporation эксклюзивно для игровой приставки SNES. В 1996 году игра была переиздана компаний Titus Software для североамериканского и европейского рынков. Для других игровых систем не переиздавалась и продолжений не имеет.

Сюжет
В один день радуга развалилась на семь разноцветных кусочков. По легенде, тот, кому удастся собрать все эти кусочки, сможет загадать любое желание, которое тут же исполнится. Злой король Висконти () нашёл один кусок радуги и теперь с помощью своих приспешников ищет оставшиеся шесть. Коварного короля надо остановить, и единственным, кто отважился бросить ему вызов, стал протагонист игры — Арди, антропоморфическое создание, смесь человека с каким-то животным, то ли лисой или кошкой, то ли собакой или волком. В приключениях Арди помогают его друзья — мудрый старик (имя неизвестно), девушка Нина и таинственный искатель приключений Дон Джекоби ().

Геймплей

В плане игрового процесса Ardy Lightfoot представляет собой типичный для 16-биток четвёртого поколения мультипликационный двухмерный платформер, схожий с такими играми, как Asterix & Obelix, Bubsy, Cool Spot или Sylvester & Tweety in Cagey Capers. Главный герой Арди бегает по игровым локациям, собирает бонусные предметы и сражается с многочисленными врагами.

Рядом с Арди постоянно то летает, то ходит вприпрыжку забавное круглое создание, которое Арди использует в качестве основного оружия, кидаясь им в противников. Другое оружие Арди — его собственный хвост, с помощью которого он может совершать более высокие прыжки, поджав его под себя наподобие пружины, и атаковать врагов. Шкалы здоровья у главного героя как таковой нет. После получения ущерба в первый раз Арди теряет своего спутника (тот просто лопается), а на второй раз — теряет игровую жизнь.

По игровым локациям разбросаны звёздочки, за собирание каждой сотой из которых игрок получает дополнительную жизнь, и сундуки, восстанавливающие потерянного в бою спутника или дающие различные бонусные предметы.

Всего игра состоит из 17 уровней, в конце некоторых из них игроку предстоит встреча с «боссом» — особенно сильным противником.

Критика
В большинстве отзывов Ardy Lightfoot получила оценки от средних до достаточно высоких. Так коммерческая информационная база данных компьютерных игр для различных платформ — Allgame, поставила игре 2,5 звёздочки из пяти, а популярный интернет-портал GameFAQs — оценку 7,3/10 по результатам четырёх рецензий.

Рецензии
 Американский журнал GamePro поставил приключениям Арди в январе 1995 года оценку 4/5, назвав игру превосходной смесью платформера с небольшой долей элементов ролевой игры.
 Другой американский журнал, посвящённый компьютерным играм — Electronic Gaming Monthly оценил Ardy Lightfoot в декабрьском номере 1994 года в 7,2 балла из 10. По мнению журнала, Ardy Lightfoot является привлекательной игрой с большими игровыми локациями и замечательным главным героем. Единственным минусом игры была названа её чрезмерная сложность.

 Выходивший в США в 1980-х — 1990-х годах журнал VideoGames & Computer Entertainment поставил игре в июньском номере за 1995 год 7 баллов из максимальных 10, назвав геймплей игры «достаточно разнообразным, чтобы заинтересовать игрока».

Создатели
Ardy Lightfoot стала одной из самых первых игр, выпущенных компанией ASCII для приставки SNES, после видеоигр Super Smash TV, Spindizzy Worlds, Daisenryaku Expert, Wizardry V: Heart of the Maelstrom и Wing Commander.

Музыку к Ardy Lightfoot написали японские композиторы Кацухиро Хатано () и Акико Хасимото (). Оба они участвовали ранее в создание музыки к игре Wizardry V: Heart of the Maelstrom (1988 год), а Хасимото позднее занимался разработкой игр Shenmue (Dreamcast, 2000), Monster Hunter Freedom 2 (PSP, 2007), Lost Planet 2 (2010 год) и Devil May Cry 4 (Playstation 3, 2008).

Главный программист Ardy Lightfoot — Такуми Иноуэ () принимал позднее участие в создании компьютерных игр Guilty Gear X2 (PlayStation 2, 2002 год), Guilty Gear XX#Reload (2003 год), Guilty Gear: Dust Strikers (Nintendo DS, 2006 год), Guilty Gear XX Accent Core (PlayStation 2, 2008 год) и Battle Fantasia (PlayStation 3, Xbox 360, 2008 год).

Примечания

Ссылки

 Ardy Lightfoot на сайте GameSpot
 Ardy Lightfoot на сайте 1UP

Компьютерные игры, разработанные ASCII Corporation
Компьютерные игры 1993 года
Игры для SNES
Платформеры
Компьютерные игры с двухмерной графикой
Игры только для SNES
Сайд-скроллеры

redpajama_set_name: RedPajamaWikipedia


Ipswich is perfectly positioned for every visitor to explore the great quality and variety that Suffolk can offer.
Carry on the Maritime theme in Ipswich and explore the local shores of the Shotley Peninsula or pop up to Woodbridge only 5 miles away to explore the heritage and history of this market town and the Anglo Saxon treasures of Sutton Hoo.
The Suffolk Coast is famed for its beauty and popularity boasting the famous destinations of Aldeburgh and Southwold or enjoy the traditional seaside attractions of Felixstowe.
Bury and the Wool Towns are an equally beautiful destination perfect for either shopping or discovering the medieval towns of Lavenham, Long Melford, Cavendish and Clare.
The world famous landscape of Constable Country is just a short distance away, as is the birthplace of Thomas Gainsborough in Sudbury. And for every horse lover is Newmarket – the home of British horse-racing and the location of many of the most famous races in Britain.
For a slower pace of life the walking trails in the heart of Suffolk around the towns of Stowmarket and Needham Market offer the seduction of the tranquil landscape.
It's all on the doorstep of Ipswich and all within an hour's reach so make Ipswich the hub of your visit to Suffolk.