text:
\section{Introduction}
\label{introduction}
Polygon meshes are an efficient representation of 3D geometry, and are widely used in computer graphics to represent virtual objects and scenes. Automatic mesh generation enables more rapid creation of the 3D objects that populate virtual worlds in games, film, and virtual reality. In addition, meshes are a useful output in computer vision and robotics, enabling planning and interaction in 3D space.

Existing approaches to 3D object synthesis rely on the recombination and deformation of template models \cite{DBLP:journals/tog/KalogerakisCKK12, DBLP:journals/tog/ChaudhuriKGK11}, or a parametric shape family \cite{DBLP:journals/cgf/SmelikTBB14}. Meshes are challenging for deep learning architectures to work with because of their unordered elements and discrete face structures. Instead, recent deep-learning approaches have generated 3D objects using alternative representations of object shape---voxels \cite{DBLP:conf/eccv/ChoyXGCS16}, pointclouds, occupancy functions \cite{DBLP:conf/cvpr/MeschederONNG19}, and surfaces \cite{DBLP:conf/cvpr/GroueixFKRA18}---however mesh reconstruction is left as a post-processing step and can yield results of varying quality. This contrasts with the human approach to mesh creation, where the mesh itself is the central object, and is created directly with 3D modelling software. Human created meshes are compact, and reuse geometric primitives to efficiently represent real-world objects.
\begin{figure}[t]
    \centering
    \includegraphics[width=\linewidth]{graphics/rsz_class-conditional.png}
    \caption{Class conditional $ n $-gon meshes generated by PolyGen.}
    \label{fig:teaser}
\end{figure}
\begin{figure*}[ht]
    \centering
    \includegraphics[width=\linewidth]{graphics/8.pdf}
    \caption{PolyGen first generates mesh vertices (left), and then generates mesh faces conditioned on those vertices (right). Vertices are generated sequentially from lowest to highest on the vertical axis. To generate the next vertex the current sequence of vertex coordinates is passed as context to a vertex Transformer, which outputs a predictive distribution for the next vertex coordinate. The face model takes as input a collection of vertices, and the current sequence of face indices, and outputs a distribution over vertex indices.}
    \label{fig:polygen}
\end{figure*}
Neural autoregressive models have demonstrated a remarkable capacity to model complex, high-dimensional data including images \cite{DBLP:conf/icml/OordKK16}, text \cite{radford2019language} and raw audio waveforms \cite{DBLP:conf/ssw/OordDZSVGKSK16}. Inspired by these methods we present PolyGen, a neural generative model of meshes, that autoregressively estimates a joint distribution over mesh vertices and faces.

PolyGen consists of two parts: A vertex model, that unconditionally models mesh vertices, and a face model, that models the mesh faces conditioned on input vertices. Both components make use of the Transformer architecture \cite{DBLP:conf/nips/VaswaniSPUJGKP17}, which is effective at capturing the long-range dependencies present in mesh data. The vertex model uses a masked Transformer decoder to express a distribution over the vertex sequences. For the face model we combine Transformers with pointer networks \cite{DBLP:conf/nips/VinyalsFJ15} to express a distribution over variable length vertex sequences.

We evaluate the modelling capacity of PolyGen using log-likelihood and predictive accuracy as metrics, and compare statistics of generated samples to real data. We demonstrate conditional mesh generation with object class, images and voxels as input and compare to existing mesh generation methods. Overall, we find that our model is capable of creating diverse and realistic geometry that is directly usable in graphics applications.
\section{PolyGen}
\label{model}
Our goal is to estimate a distribution over meshes $\mathcal{M}$ from which we can generate new examples. A mesh is a collection of 3D vertices $\mathcal{V}$, and polygon faces $F$, that define the shape of a 3D object. We split the modelling task into two parts: i) Generating mesh vertices $\mathcal{V}$, and ii) generating mesh faces $\mathcal{F}$ given vertices. Using the chain rule we have:
\begin{align}
    p(\mathcal{M}) &= p(\mathcal{V}, \mathcal{F}) \\
    &= p(\mathcal{F} | \mathcal{V})p(\mathcal{V})
\end{align}
We use separate vertex and face models, both of which are autoregressive; factoring the joint distribution over vertices and faces into a product of conditional distributions. To generate a mesh we first sample the vertex model, and then pass the resulting vertices as input to the face model, from which we sample faces (see Figure~\ref{fig:polygen}). In addition, we optionally condition both the vertex and face models on a context $\vec{h}$, such as the mesh class identity, an input image, or a voxelized shape.
\begin{figure}[t]
    \centering
    \begin{subfigure}[b]{0.475\linewidth}
        \centering
        \includegraphics[width=0.85\linewidth]{graphics/rsz_tris.png}
        \caption{Triangle mesh}
    \end{subfigure}
    \begin{subfigure}[b]{0.475\linewidth}
        \centering
        \includegraphics[width=0.85\linewidth]{graphics/rsz_ngon.png}
        \caption{$n$-gon mesh}
    \end{subfigure}
    \caption{Triangle meshes consist entirely of triangles. $n$-gon meshes efficiently represent shapes using variable size polygons.
    }
    \label{fig:ngon}
\end{figure}

\subsection{$n$-gon Meshes}
\label{subsec:mesh-representation}
3D meshes typically consist of collections of triangles, but many meshes can be more compactly represented using polygons of variable sizes. Meshes with variable length polygons are called $n$-gon meshes:
\begin{align}
    \mathcal{F}_{\text{tri}} &= \left\{\left(f_1^{(i)}, f_2^{(i)}, f_3^{(i)}\right)\right\}_i \\
    \mathcal{F}_{n\text{-gon}} &= \left\{\left(f_1^{(i)}, f_2^{(i)}, \dotsc,  f_{N_i}^{(i)}\right)\right\}_i
\end{align}
where $N_i$ is the number of faces in the $i$-th polygon and can vary for different faces. This means that large flat surfaces can be represented with a single polygon e.g.\ the top of the circular table in Figure~\ref{fig:ngon}. In this work we opt to represent meshes using $n$-gons rather than triangles. This has two main advantages: The first is that it reduces the size of meshes, as flat surfaces can be specified with a reduced number of faces. Secondly, large polygons can be triangulated in many ways, and these triangulations can be inconsistent across examples. By modelling $n$-gons we factor out this triangulation variability.

A caveat to this approach is that $n$-gons do not uniquely define a 3D surface when $n$ is greater than 3, unless the vertices it references are planar. When rendering non-planar $n$-gons, polygons are first triangulated by e.g.\ projecting vertices to a plane \cite{DBLP:journals/algorithmica/Held01}, which can cause artifacts if the polygon is highly non-planar. In practice we find that most of the $n$-gons produced by our model are either planar, or close to planar, such that this is a minor issue. Triangle meshes are a subset of $n$-gon meshes, and PolyGen can therefore be used to model them if required.

\subsection{Vertex Model}
\label{subsec:vertex-model}
The goal of the vertex model is to express a distribution over sequences of vertices.  We order the vertices from lowest to highest by $z$-coordinate, where $z$ represents the vertical axis. If there are vertices with the same $z$-value, we order by $y$ and then by $x$ value. After re-ordering, we obtain a flattened sequence by concatenating tuples of $(z_i, y_i, x_i)_i$ coordinates. Meshes have variable numbers of vertices, so we use a stopping token $s$ to indicate the end of the vertex sequence. We denote the flattened vertex sequence $\mathcal{V}^{\textrm{seq}}$ and its elements as $v_n , n=1, \dotsc, N_V$. We decompose the joint distribution over $\mathcal{V}^{\textrm{seq}}$ as the product of a series of conditional vertex distributions:
\begin{align}
    p(\mathcal{V}^{\textrm{seq}} ; \theta) & = \prod_{n=1}^{N_V} p(v_n | v_{<n} ; \theta)
\end{align}
We model this distribution using an autoregressive network that outputs at each step the parameters of a predictive distribution for the next vertex coordinate. This predictive distribution is defined over the vertex coordinate values as well as over the stopping token $s$. The model is trained to maximize the log-probability of the observed data with respect to the model parameters $\theta$.

\boldpar{Architecture} The basis of the vertex model architecture is a Transformer decoder \cite{DBLP:conf/nips/VaswaniSPUJGKP17}, a simple and expressive model that has demonstrated significant modeling capacity in a range of domains \cite{DBLP:journals/corr/abs-1904-10509, DBLP:conf/iclr/HuangVUSHSDHDE19, DBLP:conf/icml/ParmarVUKSKT18}. Mesh vertices have strong non-local dependencies, with object symmetries and repeating parts, and the Transformer's ability to aggregate information from any part of the input enables it to capture these dependencies. We use the improved Transformer variant with layer normalization inside the residual path, as in \cite{DBLP:journals/corr/abs-1904-10509, DBLP:journals/corr/abs-1910-06764}. See Figure~\ref{fig:vertex-model} in the appendix for an illustration of the vertex model and appendix C for a full description of the Transformer blocks.
\begin{figure}[t]
    \centering
    \captionsetup[subfigure]{labelformat=empty, font=scriptsize}
    \ULsubfloat[Lamp]{%
       \includegraphics[width=0.92\linewidth]{graphics/class-conditional-30.png}%
    }

    \ULsubfloat[Sofa]{%
       \includegraphics[width=0.92\linewidth]{graphics/class-conditional-47.png}%
    }

    \ULsubfloat[Clock]{%
      \includegraphics[width=0.92\linewidth]{graphics/class-conditional-19.png}%
    }

    \ULsubfloat[Cabinet]{%
      \includegraphics[width=0.92\linewidth]{graphics/class-conditional-12.png}%
    }

    \ULsubfloat[Jar]{%
      \includegraphics[width=0.92\linewidth]{graphics/class-conditional-28.png}%
    }

    \ULsubfloat[Bench]{%
      \includegraphics[width=0.92\linewidth]{graphics/class-conditional-6.png}%
    }

    \ULsubfloat[Monitor]{%
      \includegraphics[width=0.92\linewidth]{graphics/class-conditional-22.png}%
    }

    \ULsubfloat[Chair]{%
      \includegraphics[width=0.92\linewidth]{graphics/class-conditional-18.png}%
    }
    \ULsubfloat[Table]{%
       \includegraphics[width=0.92\linewidth]{graphics/class-conditional-49.png}%
    }
    \caption{Class conditional samples generated by PolyGen using nucleus sampling and top-$p=0.9$.}
    \label{fig:class-conditional-samples}
\end{figure}

\boldpar{Vertices as discrete variables} We apply 8-bit uniform quantization to the mesh vertices. This reduces the size of meshes as nearby vertices that fall into the same bin are merged. We model the quantized vertex values using a Categorical distribution, and output at each step the logits of the distribution. This approach has been used to model discretized continuous signals in PixelCNN \cite{DBLP:conf/icml/OordKK16}, and WaveNet \cite{DBLP:conf/ssw/OordDZSVGKSK16}, and has the benefit of being able to express distributions without shape limitations. Mesh vertices have strong symmetries and complex dependencies, so the ability to express arbitrary distributions is important. We find 8-bit quantization to be a good trade-off between mesh fidelity, and mesh size. However, it should be noted that 14-bits or higher is typical for lossy mesh compression, and in future work it would be desirable to extend our methods to higher resolution meshes.
\begin{figure}[t]
    \centering
    \includegraphics[width=\linewidth]{graphics/7.pdf}
    \caption{The mesh pointer network produces a distribution over variable length vertex sequences by comparing an output pointer embedding to
    vertex embeddings. In this example the number of vertices under consideration $N_V=4$ and therefore the distribution is over 6 elements.}
    \label{fig:pointer}
\end{figure}

\boldpar{Embeddings} \label{subsec:vertex-model-embeddings} We found the approach of using learned position and value embedding methods proposed in \cite{DBLP:journals/corr/abs-1904-10509} to work well. We  use three embeddings for each input token: A coordinate embedding, that indicates whether the input token is an $x$, $y$, or $z$ coordinate, a position embedding, that indicates which vertex in the sequence the token belongs to, and a value embedding, which expresses a token's quantized coordinate value. We use learned discrete embeddings in each case.

\boldpar{Improving efficiency} \label{subsec:vertex-model-efficiency} One of the downsides of using Transformers for modelling sequential data is that they incur significant computational costs due to the quadratic nature of the attention operation. This presents issues when it comes to scaling our models to larger meshes. To address this, we explored several modifications of the model inspired by \cite{Salimans17}. All of them relieve the computational burden by chunking the sequence into triplets of vertex coordinates and processing each of them at once. The first variant uses a mixture of discretized logistics to model whole 3D vertices. The second replaces the mixture with a MADE-based decoder \citep{Germain15}. Finally, we present variants that use a Transformer decoder but rely on different vertex embedding schemes. These modifications are described in more detail in appendix E.

\subsection{Face Model}
\label{subsec:face-model}
The face model expresses a distribution over a sequence of mesh faces conditioned on the mesh vertices.  We order the faces by their lowest vertex index, then by their next lowest vertex and so on, where the vertices have been ordered from lowest to highest as described in Section \ref{subsec:vertex-model}.  Within a face we cyclically permute the face indices so that the lowest index is first. As with the vertex sequences, we concatenate the faces $(f_1^{(i)}, f_2^{(i)}, \dotsc, f_{N_i}^{(i)})_i$ to form a flattened sequence, with a final stopping token. We write $\mathcal{F}^{\textrm{seq}}$ for this flattened sequence, with elements $f_n, n=1, \dotsc, N_F$.
\begin{align}

    p(\mathcal{F}^{\textrm{seq}} | \mathcal{V} ; \theta)  = \prod_{n=1}^{N_F} p(f_n | f_{<n}, \mathcal{V} ; \theta)
\end{align}
As with the vertex model, we output a distribution over the values of $f$ at each step, and train by maximizing the log-likelihood of $\theta$ over the training set. The distribution is a categorical defined over $\{1, \dotsc, N_V + 2\}$ where $N_V$ is the number of input vertices, and we include two additional values for the end-face $n$ and stopping $s$ tokens.

\boldpar{Mesh pointer networks}
The target distribution $p(f_n | f_{<n}, \mathcal{V} ; \theta)$ is defined over the indices of an input set of vertices, which poses the challenge that the size of this set varies across examples. Pointer networks \cite{DBLP:conf/nips/VinyalsFJ15} propose an elegant solution to this issue; Firstly the input set is embedded using an encoder, and then at each step an autoregressive network outputs a pointer vector that is compared to the input embeddings via a dot-product. The resulting scores are then normalized using a softmax to form a valid distribution over the input set.

In our case we obtain contextual embeddings $\vec{e}_v$ of the input vertices using a Transformer encoder $E$. This has the advantage of bi-directional information aggregation compared to the LSTM used by the original pointer networks. We jointly embed new-face and stopping tokens with the vertices, to obtain a total of $N_V + 2$ input embeddings. A Transformer decoder $D$ operates on the sequence of faces and outputs pointers $\vec{p}_k$ at each step. The target distribution can be obtained as
\begin{align}
    \{\vec{e}_v\}_{v=1}^{N_V} &= E(\mathcal{V} ; \theta) \\
    \vec{p}_n &= D(f_{<n}, \mathcal{V} ; \theta)\\
    p(f_n = k \ | \ f_{<n}, \mathcal{V} ; \theta) &= \text{softmax}_k(\vec{p}_n^T\vec{e}_k)
\end{align}
See Figure~\ref{fig:pointer} for an illustration of the pointer mechanism and Figure~\ref{fig:mesh-model} in the appendix for an illustration of the whole face model. The decoder $D$ is a masked Transformer decoder that operates on sequences of embedded face tokens. It conditions on the input vertices in two ways, via dynamic face embeddings as explained in the next section, and optionally through cross-attention into the sequence of vertex embeddings.

\boldpar{Embeddings} \label{subsec:face-model-embeddings} As with the vertex model we use learned position and value embeddings. We decompose a token's position into the index of the face it belongs to, as well as the location of a token within a face, using separate learned embeddings for both. For value embeddings we follow the approach of pointer networks and simply embed the vertex indices by indexing into the contextual vertex embeddings outputted by the vertex encoder.

\subsection{Masking Invalid Predictions}
\label{subsec:masking}
For both the vertex and face model only certain predictions are valid at each step. For instance, the $z$-coordinates must increase monotonically, and the stopping token can only be placed after an $x$ coordinate. Similarly mesh faces can not have duplicate indices, and every vertex-index must be referenced by at least one face. When evaluating the model we mask the predicted logits to ensure that the model can only make valid predictions. This has a non-negative effect on the model's log-likelihood scores, as it reassigns probability mass in the invalid region to values in the valid region (Table~\ref{table:log-likelihood}). Surprisingly, we found that masking during training to worsen performance to a small degree, so we always train without masking. For a complete description of the masks used, see appendix F.
\begin{figure}[t]
    \centering
    \begin{subfigure}[b]{\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/image-conditional-60.png}
    \end{subfigure}
    \begin{subfigure}[b]{\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/image-conditional-250.png}
    \end{subfigure}
    \begin{subfigure}[b]{\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/image-conditional-76.png}
    \end{subfigure}
    \begin{subfigure}[b]{\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/image-conditional-32.png}
    \end{subfigure}
    \begin{subfigure}[b]{\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/image-conditional-110.png}
    \end{subfigure}
    \caption{Image conditional samples (yellow) generated using nucleus sampling with top-$p$=0.9 and ground truth meshes (blue).}
    \label{fig:image-conditional}
\end{figure}
\begin{table}[t]
    \caption{Modelling performance of unconditional models trained on ShapeNet and baseline methods. Negative log-likelihood is reported in bits per vertex, averaged across test examples. Accuracy refers to the classification accuracy of next step predictions: discrete vertex coordinates for the vertex model, or vertex indices for face models. *Draco is evaluated on triangulated meshes rather than $n$-gon meshes.}
    \label{table:log-likelihood}
    \centering
    \begin{tabular}{@{}lcccc@{}}
        \toprule
                                                  & \multicolumn{2}{c}{Bits per vertex} & \multicolumn{2}{c}{Accuracy} \\ \cmidrule(lr){2-3} \cmidrule(lr){4-5}
    Model & Vertices & Faces & Vertices & Faces \\
    \midrule Uniform & 24.08 & 39.73 & 0.004 & 0.002 \\
    Valid predictions & 21.41 & 25.79 & 0.009 & 0.038 \\
    Draco* \cite{draco} & \multicolumn{2}{c}{Total: 27.68} & - & - \\
        \midrule PolyGen & 2.46 & 1.79 & 0.851 & 0.900 \\
    {\footnotesize - valid predictions} & 2.47 & 1.82 & 0.851 & 0.900 \\
    {\footnotesize - discr. embed. (V)} & 2.56 & - & 0.844 & - \\
    {\footnotesize - data augmentation} & 3.39 & 2.52 & 0.803 & 0.868 \\

    {\footnotesize + cross attention (F)} & - & 1.87 & - & 0.899 \\
    \bottomrule
    \end{tabular}
    \end{table}

\begin{table}[t]
    \caption{Comparison of vertex model variants. The first two columns correspond to the test negative log-likelihood and predictive accuracy (see Table~\ref{table:log-likelihood}). The last column shows training speed in steps per second.}
    \label{table:alternative-vertex-models}
    \centering
    \begin{tabular}{@{}lccc@{}}
        \toprule
        Model & \shortstack{Bits \\ {\small per vertex}} & Accuracy & \shortstack{Steps \\ {\small per sec}} \\
        \midrule
        Mixture & 3.01 & - & 7.19 \\
        MADE decoder & 2.65 & 0.844 & 7.02 \\
        Tr. decoder & 2.50 & 0.851 & 4.07 \\
        {\footnotesize + Tr. embed.} & 2.48 & 0.851 & 4.60 \\
        \midrule
        Base model & 2.46 & 0.851 & 2.98 \\
        \bottomrule
    \end{tabular}
\end{table}
\subsection{Conditional Mesh Generation}
\label{sec:conditional}
We can guide the generation of mesh vertices and faces by conditioning on a context. For instance, we can output vertices consistent with a given object class, or infer the mesh associated with an input image. It is straightforward to extend the vertex and face models to condition on a context $\vec{h}$. We incorporate context in two ways, depending on the domain of the input. For global features like class identity, we project learned class embeddings to a vector that is added to the intermediate Transformer representations following the self-attention layer in each block. For high dimensional inputs like images, or voxels, we jointly train a domain-appropriate encoder that outputs a sequence of context embeddings. The Transformer decoder then performs cross-attention into the embedding sequence, as in the original machine translation Transformer model.

For image inputs we use an encoder consisting of a series of downsampling residual blocks. We use pre-activation residual blocks \cite{DBLP:conf/eccv/HeZRS16}, and downsample three times using convolutions with stride 2, taking input images of size $[256,256,3]$ to feature maps of size $[16,16,E]$ where $E$ is the embedding dimensionality of the model. For voxel inputs we use a similar encoder but with 3D convolutions that takes inputs of shape $[28,28,28,1]$ to spatial embeddings of shape $[7,7,7,E]$. For both input types we add coordinate embeddings to the feature maps before flattening the spatial dimensions. For more architecture details see appendix C.

\section{Experiments} \label{experiments}
Our primary evaluation metric is log-likelihood, which we find to correlate well with sample quality. We also report summary statistics for generated meshes, and compare our model to existing approaches using chamfer-distance in the image and voxel conditioned settings.

\subsection{Training Details} \label{subsec:training}
We train all our models on the ShapeNet Core V2 dataset \cite{shapenet2015}, which we subdivide into $92.5\%$ training, $2.5\%$ validation and $5\%$ testing splits. The training set is augmented as described in Section \ref{subsec:augmentation}. In order to reduce the memory requirements of long sequences we filter out meshes with more than 800 vertices, or more than 2800 face indices after pre-processing. We train the vertex and face models for $1e6$ and $5e5$ weight updates respectively, using four V100 GPUs per training run for a total batch size of 16. We use the Adam optimizer with a gradient clipping norm of 1.0, and perform cosine annealing from a maximum learning rate of $3e-4$, with a linear warm up period of 5000 steps. We use a dropout rate of 0.2 for all models.

\subsection{Data Augmentation and Rendering} \label{subsec:augmentation}
In general we observed significant overfitting due to the relatively small size of the ShapeNet dataset, which is exacerbated by the need to filter out large meshes. In order to reduce this effect, we augmented the input meshes by scaling the vertices independently on each axis, using a random piecewise-linear warp for each axis, and by varying the decimation angle used to create $n$-gon meshes. For each input mesh we create 50 augmented versions which are then quantized (Section \ref{subsec:vertex-model}) for use during training. We found that augmentation was necessary to obtain good performance (Table~\ref{table:log-likelihood}). For full details of the augmentations and parameter settings see appendix A.

\boldpar{Rendering} In order to train image-conditional models we create renders of the processed ShapeNet meshes using Blender \cite{Blender}. For each augmented mesh, and each validation and test-set mesh, we create renders at $256 \times 256$ resolution, using randomly chosen lighting, camera and mesh material settings. For more details see appendix B.

\subsection{Unconditional Modelling Performance}
We compare unconditional models trained under varying conditions. As evaluation metrics we report the negative log-likelihood obtained by the models, reported in bits per vertex, as well as the accuracy of next step predictions. For vertex models this is the accuracy of next vertex coordinate predictions, and for face models this is the accuracy of the next vertex index predictions.
In particular we compare the effect of masking invalid predictions (Section \ref{subsec:masking}), of using discrete rather than continuous coordinate embeddings in the vertex model (Section \ref{subsec:vertex-model-embeddings}), of using data augmentation (Section \ref{subsec:augmentation}), and finally of using cross-attention in the face model. Unless otherwise specified we use embeddings of size 256, fully connected layers of size 1024, and 18 and 12 Transformer blocks for the vertex and face models respectively. As there are no existing methods that directly model mesh vertices and faces, we report the scores obtained by models that allocate uniform probability to the whole data domain, as well as models that are uniform over the region of valid predictions. We additionally report the compression rate obtained by Draco \cite{draco}, a mesh compression library. For details of the Draco compression settings see appendix G.

Table~\ref{table:log-likelihood} shows the results obtained by the various models. We find that our models achieve significantly better modelling performance than the uniform and Draco baselines, which illustrates the gains achievable by a learned predictive model. We find that restricting the models predictions to the range of valid values results in a minor improvement in modelling performance, which indicates that the model is effective at assigning low probability to the invalid regions. Using discrete rather than continuous embeddings for vertex coordinates provides a significant improvement, improving bits-per-vertex from 2.56 to 2.46. Surprisingly, using cross-attention in the face model harms performance, which we attribute to overfitting. Data augmentation has a strong effect on performance, with models trained without augmentation losing 1.64 bits per vertex on average. Overall, our best model achieves a log-likelihood score of 4.26 bits per vertex, and $85\%$ and $90\%$ predictive accuracy for the vertex and face models respectively. Figure \ref{fig:unconditional} in the appendix shows random unconditional samples from the best performing model.

Table~\ref{table:alternative-vertex-models} presents a comparison of different variants of the vertex model as discussed in Section \ref{subsec:vertex-model-efficiency}. The results suggest that the proposed variants can achieve a $ 1.5\times $ reduction in training time with a minimal sacrifice in performance. Note that these models used different hyperparameter settings as detailed in Appendix E.
\begin{figure}[t]
    \centering
    \includegraphics[width=\linewidth]{graphics/hist.png}
    \caption{Distribution of mesh statistics for unconditional samples from our model and the ShapeNet test set. We compare samples generated using with nucleus sampling and top-$p=0.9$, to true model samples ($p=1$).}
    \label{fig:sample-statistics}
\end{figure}
\subsection{Statistics of Unconditional Model Samples}
We compare the distribution of certain mesh summaries for samples from our model against the ShapeNet test set.  If our model has closely matched the true data distribution then we expect these summaries to have similar distributions. We draw 1055 samples from our best unconditional model, and discard samples that don't produce a stopping token within 1200 vertices, or 800 faces. We use nucleus sampling \cite{DBLP:journals/corr/abs-1904-09751} which we found to be effective at maintaining sample diversity while reducing the presence of degraded samples. Nucleus sampling helps to reduce sampling degradation by sampling from the smallest subset of tokens that account for top-$p$ of probability mass.

Figure~\ref{fig:sample-statistics} shows the distribution of a number of mesh summaries, for samples from PolyGen as well as the true data distribution. In particular we show: the number of vertices, number of faces, node degree, average face area and average edge length for sampled and true meshes. Although these are coarse descriptions of a 3D mesh, we find our model's samples to have a similar distribution for each mesh statistic. We observe that nucleus sampling with $\text{top-}p = 0.9$ helps to align the model distributions with the true data for a number of statistics. Figure \ref{fig:occ-comparison} shows an example 3D mesh generated by our model compared to a mesh obtained through post-processing an occupancy function \cite{DBLP:conf/cvpr/MeschederONNG19}. We note that the statistics of our mesh resemble human-created meshes to a greater extent.
\begin{table}[t]
    \caption{Modelling performance for conditional models. See Table \ref{table:log-likelihood} for details of bits per vertex, and accuracy scores.}
    \label{table:conditional-log-likelihood}
    \centering
    \begin{tabular}{@{}lccccc@{}}
        \toprule
        & \multicolumn{3}{c}{Bits per vertex} & \multicolumn{2}{c}{Accuracy} \\
    \cmidrule(lr){2-4} \cmidrule(lr){5-6} Context & Vertices & Faces  & Total & Vertices & Faces\\
    \midrule None & 2.46 & 1.79 & 4.26 & 0.851 & 0.900  \\
    Class  & 2.43 & 1.81 & 4.24 & 0.853 & 0.899 \\
    Image  & 2.30 & 1.81 & 4.11 & 0.857 & 0.900 \\
    {\small  + pooling}  & 2.35 & 1.78 & 4.13 & 0.856 & 0.900 \\
    Voxels  & 2.19 & 1.82 & 4.01 & 0.859 & 0.900 \\
    {\small  + pooling}  & 2.28 & 1.79 & 4.07 & 0.856 & 0.900 \\ \bottomrule
    \end{tabular}
\end{table}
\begin{figure}[t]
    \centering
    \begin{subfigure}[b]{0.495\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/rsz_model.png}
        \caption{PolyGen}
    \end{subfigure}
    \begin{subfigure}[b]{0.495\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/rsz_occ-net.png}
        \caption{Occupancy Networks}
    \end{subfigure}

    \caption{Comparison between a 3D mesh generated by PolyGen and a mesh obtained by postprocessing an implicit surface representation (Occupancy Networks \citealp{DBLP:conf/cvpr/MeschederONNG19}). Our model produces a more efficient representation of the 3D shape that resembles a human-constructed mesh.}
    \label{fig:occ-comparison}
\end{figure}
\subsection{Conditional Modelling Performance}
We train vertex and face models with three kinds of conditioning: class labels, images, and voxels. We use the same settings as the best unconditional model: discrete vertex embeddings with no cross attention in the face model. As with the unconditional models we use 18 layers for the vertex model and 12 layers for the face model. Figures \ref{fig:teaser} and \ref{fig:class-conditional-samples} show class-conditional samples. Figures \ref{fig:image-conditional} and \ref{fig:voxel-conditional} show samples from image and voxel conditional models respectively. Note that while we train on the ShapeNet dataset, we show ground truth meshes and inputs for a selection of representative meshes collected from the \citet{turbosquid} online object repository.
\begin{figure}[t]
    \centering
    \includegraphics[width=\linewidth]{graphics/chamfer_dist.png}
    \caption{Symmetric chamfer distance between predicted and target pointclouds by number of predictions. Data refers to pointclouds obtained by uniformly re-sampling the target mesh. }
    \label{fig:chamfer}
\end{figure}
\begin{figure}[t]
    \centering
    \begin{subfigure}[b]{\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/voxel-conditional-152.png}
    \end{subfigure}
    \vspace{5pt}
    \begin{subfigure}[b]{\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/voxel-conditional-42.png}
    \end{subfigure}
    \vspace{5pt}
    \begin{subfigure}[b]{\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/voxel-conditional-49.png}
    \end{subfigure}
    \vspace{5pt}
    \begin{subfigure}[b]{\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/voxel-conditional-83.png}
    \end{subfigure}
    \vspace{5pt}
    \begin{subfigure}[b]{\linewidth}
        \centering
        \includegraphics[width=\linewidth]{graphics/voxel-conditional-106.png}
    \end{subfigure}
    \caption{Voxel conditional (blue, left) samples generated using nucleus sampling with top-$p$=0.9 (yellow) and ground truth meshes (blue, right).}
    \label{fig:voxel-conditional}
\end{figure}
Table~\ref{table:conditional-log-likelihood} shows the impact of conditioning on predictive performance in terms of bits-per-vertex and accuracy. We find that for vertex models, voxel conditioning provides the greatest improvement, followed by images, and then by class labels. This confirms our expectations, as voxels characterize the coarse shape unambiguously, whereas images can be ambiguous depending on the object pose and lighting. However the additional context does not lead to improvements for the face model, with all conditional face models performing slightly worse than the best unconditional model. This is likely because mesh faces are to a large extent determined by the input vertices, and the conditioning context provides relatively little additional information. In terms of predictive accuracy, we see similar effects, with accuracy improving with richer contexts for vertex models, but not for face models. We note that the accuracy ceiling is less than $100\%$, due to the inherent entropy of the vertex and face distributions, and so we expect diminishing gains as models approach this ceiling.

For image and voxel conditional models, we also compare to architectures that apply global average pooling to the outputs of the input encoders. We observe that pooling in this way negatively effects the vertex models' performance, but has a small positive effect on the face models' performance.

\subsection{Mesh Reconstruction}
We additionally evaluate the image and voxel conditioned models on mesh reconstruction, where we use symmetric chamfer distance as the reconstruction metric. The symmetric chamfer distance is a distance metric between two point sets $\mathcal{P}$ and $\mathcal{Q}$. It is defined as:
\begin{align}
    \mathcal{L}(\mathcal{P}, \mathcal{Q}) = \sum_{\vec{p} \in \mathcal{P}} \underset{\vec{q} \in \mathcal{Q}}{\text{min}} (\vec{p} - \vec{q})^2 + \sum_{\vec{q} \in \mathcal{Q}} \underset{\vec{p} \in \mathcal{P}}{\text{min}} (\vec{p} - \vec{q})^2
\end{align}
For each example in the test set we draw samples from the conditional model. We sample 2500 points uniformly on the sampled and target mesh and compute the corresponding chamfer distance. We compare our model to AtlasNet \cite{DBLP:conf/cvpr/GroueixFKRA18}, a conditional model that defines a mesh surface using a number of patches that have been Transformer using a deep network. AtlasNet outputs pointclouds and is trained to minimize the chamfer distance to a target pointcloud conditioned on image or pointcloud inputs. Compared to alternative methods, AtlasNet achieves good mesh reconstruction performance, and we therefore view it as a strong baseline. We train AtlasNets models in the image and voxel conditioned settings, that are adapated to use equivalent image and voxel encoders as we use for our model. For more details see appendix D.

Figure~\ref{fig:chamfer} shows the mesh reconstruction results. We find that when making a single prediction, our model performs worse than AtlasNet. This is not unexpected, as AtlasNet optimizes the evaluation metric directly, whereas our model does not. When allowed to make 10 predictions, our model achieves slightly better performance than AtlasNet. Overall we find that while our model does not always produce good mesh reconstructions, it typically produces a very good reconstruction within 10 samples, which may be sufficient for many practical applications.

\section{Related Work}
\label{related-work}
Generative models of 3D objects  exists in a variety of forms, including ordered \cite{DBLP:journals/cgf/NashW17} and unordered \cite{DBLP:conf/iclr/LiZZPS19, DBLP:journals/corr/abs-1906-12320} pointclouds, voxels \cite{DBLP:conf/eccv/ChoyXGCS16, DBLP:conf/nips/0001ZXFT16, DBLP:conf/iccv/TatarchenkoDB17, DBLP:conf/nips/RezendeEMBJH16}. More recently there has been significant progress using functional representations, such as signed distance functions \cite{DBLP:conf/cvpr/ParkFSNL19}, and other implicit functions \cite{DBLP:conf/cvpr/MeschederONNG19}. There are relatively fewer examples of methods that explicitly generate a 3D mesh. Such works primarily use parameterized deformable meshes \cite{DBLP:conf/cvpr/GroueixFKRA18}, or form meshes through a collection of mesh patches.  Our methods are distinguished in that we directly model the mesh data created by people, rather than alternative representations or parameterizations. In addition, our model is probabilistic, which means we can produce diverse output, and respond to ambiguous inputs in a principled way.

PolyGen's vertex model is similar to PointGrow \cite{sun2018pointgrow}, which uses an autoregressive decomposition to model 3D point clouds, outputting discrete coordinate distributions using a self-attention based architecture. PointGrow operates on fixed-length point-clouds rather than variable vertex sequences, and uses a bespoke self-attention architecture, that is relatively shallow in comparison to modern autoregressive models in other domains. By contrast, we use state-of-the-art deep architectures, and model vertices and faces, enabling us to generate high quality 3D meshes.

This work borrows from architectures developed for sequence modelling in natural language processing. This includes the sequence to sequence training paradigm \cite{DBLP:conf/nips/SutskeverVL14}, the Transformer architecture \cite{DBLP:conf/nips/VaswaniSPUJGKP17, DBLP:journals/corr/abs-1904-10509, DBLP:journals/corr/abs-1910-06764}, and pointer networks \cite{DBLP:conf/nips/VinyalsFJ15}. In addition our work is inspired by sequential models of raw data, like WaveNet \cite{DBLP:conf/ssw/OordDZSVGKSK16} PixelRNN and its variants \cite{DBLP:conf/nips/OordKEKVG16, DBLP:conf/iclr/MenickK19}, and Music Transformers \cite{DBLP:conf/iclr/HuangVUSHSDHDE19}.

Our work is also related to Polygon-RNN \cite{DBLP:conf/cvpr/CastrejonKUF17, DBLP:conf/cvpr/AcunaLKF18}, a method for efficient segmentation in computer vision using polygons. Polygon-RNN take an input image and autoregressively outputs a sequence of $xy$ coordinates that implicitly define a segmented region. PolyGen, by contrast operates in 3D space, and explicitly defines the connectivity of several polygons.

Finally our work is related to generative models of graph structured data such as GraphRNN \cite{DBLP:conf/icml/YouYRHL18} and GRAN \cite{DBLP:journals/corr/abs-1910-00760}, in that meshes can be thought of as attributed graphs. These works focus on modelling graph connectivity rather than graph attributes, whereas we model both the node attributes (vertex positions), as well as the incorporating these attributes in our model of the connectivity.

\section{Conclusion}
\label{conclusion}
In this work we present PolyGen, a deep generative model of 3D meshes. We pose the problem of mesh generative as autoregressive sequence modelling, and combine the benefits of Transformers and pointer networks in order to flexibly model variable length mesh sequences. PolyGen is capable of generating coherent and diverse mesh samples, and we believe that it will unlock a range of applications in computer vision, robotics, and  3D content creation.

\section*{Acknowledgements}

The authors thank Dan Rosenbaum, Sander Dieleman, Yujia Li and Craig Donner for useful discussions·

redpajama_set_name: RedPajamaArXiv


This chapter focuses on what drives individual lawyers to volunteer and how to encourage their involvement. More information for individuals who are interested in doing pro bono work can be found at 2.6 'I am an individual lawyer or barrister looking for opportunities to get involved'.
The factors that drive individual volunteers to undertake pro bono work are similar to those of lawyers doing pro bono work under the auspices of their law firm, including the opportunity to use their skills to make a difference, further develop their skills and do interesting work.
However, a distinction can be made between lawyers who are paid by a firm for the time they contribute to pro bono work, and individual volunteers who are completely unpaid and contribute on their own time.3 While both are motivated by a belief in social justice, volunteers are less motivated by the 'business case' for pro bono which can be a motivating factor for law firms.
Taking these different motivations into account can affect a community organisation's use of pro bono resources for its staffing. For example, Monica Taylor (Director, Pro Bono Centre, University of Queensland), who previously set up a telephone advice service at Queensland Advocacy Incorporated (QAI), explained that QAI felt comfortable engaging individual volunteers on the basis that it had limited funding and the service may not continue in the long term, but did not feel comfortable partnering with a firm on this basis because a firm wants more from the partnership than just to provide individuals with assistance.
Senior caseworker at the Welfare Rights Centre in Sydney, Danny Shaw explained that the Centre attracts lawyers to volunteer by promoting the benefits of working in a community legal centre.
Fiona Robson (Supervising Counsel for Telstra Ventures and Telstra Software Group) who has volunteered at Kingsford Legal Centre providing advice during their night advice session suggested that CLCs who are looking for volunteers might want to consider explaining more about what the commitment involves to their target audience, who may be corporate lawyers.
Many CLCs provide practical assistance to their volunteers, for example, by covering the public transport costs of volunteers, to make it easier for them to participate, recognising the value of the contribution they make and the fact that they are doing it for free. Fiona Robson said that one of the things that really helped support her KLC commitment was that Telstra was happy to pay for her taxi home after the advice session each fortnight.
Community legal centres looking for volunteers can advertise opportunities on the website, Community Legal Centres Volunteers (http://www.clcvolunteers.net.au/), which is a national database of CLCs with information about current volunteering opportunities. Individuals interested in volunteering can find out more about volunteering at CLCs or search the database for 'CLCs seeking volunteers'.
Australian Pro Bono Centre, Australian Pro Bono Manual (3rd edition), LexisNexis, Sydney, 2016, Chapter 1.6 Identifying needs and sources of pro bono legal work.
National Association of Community Legal Centres, Working Collaboratively: Community Legal Centres and Volunteers (2014), p 16, http://www.naclc.org.au/resources/NACLC_VOUNTEER2014_WEB.pdf.
1 National Association of Community Legal Centres, Working Collaboratively: Community Legal Centres and Volunteers (2014), p 16, http://www.naclc.org.au/resources/NACLC_VOUNTEER2014_WEB.pdf.
3 National Association of Community Legal Centres, above n 1.http://www.naclc.org.au/resources/NACLC_VOLUNTEERS_web.pdf.


Of the many moving companies based in Atlanta, none offer service quite like the kind that you'll encounter when you choose Bulldog Movers. With more than 30 years of service in Metro Atlanta and beyond, we're one of the largest moving companies around. We have more than 100 nonsmoking employees and nearly 30 oversized moving trucks at our disposal, and we can complete virtually any move that you require.
During your move, you may find that you have a need for a storage unit. If this happens to be the case for you, don't trust your belongings to some storage center that can easily be broken into or damaged by Mother Nature. Instead, turn to Bulldog for safe, secure, dry, and climate-controlled storage. Our facility is located right off I-85 between Ansley Park and Lindbergh, convenient for all Metro Atlanta residents. When you store with Bulldog, you can rest assured that your belongings will be in good hands.
To find out more about what separates Bulldog Movers from other moving companies in the Metro Atlanta area and how we can provide you with a smooth move, please call or email us today.


This casual yet upscale table top is made of teak wood slats that's designed to look like reclaimed wood—perfect for creating the ambiance of a waterside setting. This patio table is weather resistant with the beauty of teak wood and the durability of aluminum. This table top could be matched with a variety of outdoor table bases, bar stools and chairs. This product line is well suited to a variety of outdoor bars and restaurants.


text:
What Can I WATCH ?
For a movie similar to 'Cocoon' ...
1985 Comedy Comedy Drama
Get movie Cocoon
Cocoon is a 1985 science-fiction /fantasy film directed by Ron Howard about a group of elderly people rejuvenated by aliens The movie ... more on Wikipedia
Movies feeling like ...
Joy Trust Fear Surprise Sadness Disgust Anger Anticipation
... I can watch
2007 Adventure Drama Family Fantasy
Get movie Bridge to Terabithia
Bridge to Terabithia is a 2007 fantasy drama film directed by Gábor Csupó and adapted for film by David L. Paterson and Jeff Stockwell ... more on Wikipedia
2013 Comedy Crime Drama Family Thriller
Get movie The Call
The Call is a 2013 American crime thriller film directed by Brad Anderson and written by Richard D'Ovidio. the film stars Abigail ... more on Wikipedia
2005 Adventure Comedy Family Sci-Fi
Get movie Chicken Little
Chicken Little is a 2005 American 3D computer-animated comic science fiction family comedy film produced by Walt Disney Feature ... more on Wikipedia
2011 Action Fantasy Horror Sci-Fi Thriller
Get movie Priest
Priest is a 2011 American post-apocalyptic dystopia science fiction action horror film starring Paul Bettany as the title character ... more on Wikipedia
2003 Action Adventure Comedy Family Sci-Fi
Get movie Spy Kids 3-D: Game Over
Spy Kids 3-D: Game Over (also known as Spy Kids 3: Game Over) is a 2003 American science fantasy adventure film directed by Robert ... more on Wikipedia
1999 Crime Drama Fantasy Mystery
Get movie The Green Mile
The Green Mile is a 1999 American fantasy drama film directed by Frank Darabont and adapted from the 1996 Stephen King novel of the ... more on Wikipedia
1988 Action Adventure Drama Fantasy Romance
Get movie Willow
Wind in the Willows is an Australia n 49-minute made-for-television animated film ... It was originally released in 1988 The film is based on ... more on Wikipedia
1997 Action Adventure Fantasy Sci-Fi Thriller
Get movie Mortal Kombat: Annihilation
Mortal Kombat: Annihilation is a 1997 American martial arts action film directed ... Annihilation's poor reception and box-office performance. ... more on Wikipedia
Underworld: Rise of the Lycans
Get movie Underworld: Rise of the Lycans
Underworld: Rise of the Lycans is a 2009 American action horror film directed by Patrick Tatopoulos . film to the Underworld series , ... more on Wikipedia
2007 Drama Fantasy Mystery Sci-Fi Thriller
Get movie The Nines
The Nines is a 2007 science fantasy psychological thriller drama film written and directed by John August and starring Ryan Reynolds , ... more on Wikipedia
Astérix & Obélix: Mission Cléopâtre
2002 Adventure Comedy Family Fantasy
Get movie Astérix & Obélix: Mission Cléopâtre
Asterix & Obelix: Mission Cleopatra ... is a 2002 French film based on the comic book Astérix et Cléopâtre by René Goscinny and Albert ... more on Wikipedia
Get movie Gulliver's Travels
Gulliver's Travels is a 2010 American fantasy comedy film directed by Rob Letterman and very loosely based on Part One of the 18th- ... more on Wikipedia
Get movie Inspector Gadget
Inspector Gadget is a 1999 live-action action-comedy film loosely based on the 1983 animated cartoon series of the same name . ... more on Wikipedia
1991 Action Comedy Crime Mystery Thriller
Get movie The Last Boy Scout
The Last Boy Scout is a 1991 American action comedy film directed by Tony Scott , starring Bruce Willis , Damon Wayans , Chelsea Field , ... more on Wikipedia
Get movie Spy Kids
Spy Kids is a 2001 American science fantasy family adventure film written and directed by Robert Rodriguez . installment in the Spy Kids ... more on Wikipedia
What Can I WATCH ? About
We partner with some brands and products displayed and linked from our website.
Hosted by: Interserver.
Find movies by emotions
www.wciwatch.com
Copyright © 2020 What Can I WATCH ?. All rights reserved.

redpajama_set_name: RedPajamaCommonCrawl


text:
Education Updates » Education » TTC teacher trainees to reap the benefits of HELB loan for first time ever.
TTC teacher trainees to reap the benefits of HELB loan for first time ever.
Teacher trainees in Teacher Training Colleges (TTC) are set to enjoy Higher Education Loans Board (HELB) funding for first time ever.
Trainee teachers are the only college students who are not included in the disbursement of HELB funding which currently caters for learners in university, diploma, certificate and vocational training.
However the trainee teachers will have to wait longer for government funding since they are yet to be put under the ambit of Kenya Universities and Colleges Central Placement Service (KUCCPS).
KUCCPS is still rolling out plans, including meeting leadership of the Teacher Training Colleges (TTCs), that would lead to the first placement of students.
This even as Early Learning and Basic Education Principal Secretary Julius Jwan announced two weeks ago that recruitment of applicants for pre-service teacher training will be done through KUCCPS.
Dr Jwan said the shift to KUCCPS is progressive and will enable successful students to benefit from HELB, just like the rest of learners placed by the agency to universities and middle-level colleges.
The recruitment and placement of prospective students into TTCs has over the years been through the Ministry of Education.
This means that the students have not been getting HELB funding as they are not considered government-sponsored students.
Section 56 of the Universities Act mandates KUCCPS to 'co-ordinate the placement of the government-sponsored students to universities and colleges.
This means that all students placed in colleges through KUCCPS qualify for State funding.
Jwan said this has now been extended to students who will pursue teacher training in TTCs.
"The new policy means that Kenya Certificate of Secondary Education (KCSE) candidates can now choose to be selected for Diploma in Primary Teacher Education (DPTE) or Diploma in Early Childhood Development Teacher Education (DECTE) when applying for post-secondary education training programmes," said Jwan.
However, it is not clear how soon the placement for students by KUCCPS to TTCs will take place as new schedule released by the agency did not factor them.
KUCCPS only released a roadmap for continuous placement for students to Technical and Vocational Education and Training (TVETS).
The TVETS placement processing schedule for 2021/2022 cycle reveals that whole process will end December 14.
KUCCPS Chief Executive Mercy Wahome, however, said the first call of applications will be done for two weeks.
The student's portal will open between November 15-28 to receive applications for placement to TVET institutions for government sponsorship," reads the plan.
Processing TVET continuous placement will be done between November 29 and December 3 as validation and approval of continuous placement will be done between December 6 and 10.
The continuous placement report will be released on December 14, according to the schedule.
The report, however, explain that updating programmes and capacities by TVET colleges started October 4 and will end this Friday.
During this period, public TVET colleges are required to log in to the KUCCPS portal and review the courses they wish to put on offer for candidates to apply for, including the number of students the colleges require in each of the programmes.
The colleges are also free to make adjustments to the courses and capacity they wish to be put on offer.
And from October 18 to 29, KUCCPS will conduct the validation of programmes and capacities declared by the regulator, Technical Vocational Education and Training Authority (TVETA).
At this stage, KUCCPS will do a check with the TVETA to confirm that only accredited TVET courses and institutions are provided in the KUCCPS for applicants to choose.
Dr Wahome said that uploading the validated programmes and declared capacities will be done between November 1 and 5.
And before the first communication is released to students on applications, KUCCPS internal auditor will conduct programmes and capacities verification between November 8 and 10.
Some 173 public TVET institutions are targeted. The number of TVET programmes available in the last cycle were 362.
Tags: TTC teacher trainees to enjoy HELB loanTTCs
State Department Advertises Employment Opportunities for 8,805 Enumerators And 886 Supervisor Job Vacancies:Requirements and how to apply
Finance Department of Egerton University blows a whistle over strange Sh13.6 million deposited in its bank accounts


text:
Home/School News/Go Titans: T.C. Takes Home 2 Golds, Silver and Points Trophy at State Rowing Championship
School NewsSPORTS
Go Titans: T.C. Takes Home 2 Golds, Silver and Points Trophy at State Rowing Championship
And T.C. competes on May 17 and 18 in Philadelphia at the Stotesbury Cup - the world's largest high school regatta.
James Culum Send an email May 16, 2019
Alexandria, VA – The 2019 T.C. Williams High School rowing teams went the distance and took home two gold medals, a silver in the upper boats portion and the Points trophy at the Virginia Scholastic Rowing Association championships in Occoquan on May 9, 2019.
Racing on an unseasonably chilly day, the men's junior four and women's junior double won gold. The women's 1V eight, racing in the 2V category, won a silver medal.
"I wouldn't have wanted to end my five years on the T.C. Williams crew team with any other group of girls, they definitely showed me their fight this year and inspired me to hold my head up high," said Titan Paula Filios, coxswain of the 1V, and a graduating senior. "It was definitely a plus to have come away with the girls points trophy."
T.C. Williams High School Crew 2019 State Medalists (Courtesy photo)
In the women's junior double final, T.C., with a time of 6:40.50, topped West Albermarle High School's 6:43.05 and Battlefield High School's 6:59.80.
In the men's junior four race, the TC Williams boat won with a time of 5:43.70, ahead of Great Bridge High School's time of 5:45.70 and Oakton High School, which had a time of 5:50.42.
In the women's 2V race, TC Williams, with a time of 5:39.73, came in second to McLean High School's 5:35.60. Oakton placed third with 5:48.33.
The women's lightweight eight, the women's frosh eight, women's junior double, men's lightweight eight and the boy's senior four compete May 17 and 18 in Philadelphia at the Stotesbury Cup, the world's largest high school regatta.
Occoquan Paula Filios Stotesbury Cup T.C. Williams Crew T.C. Williams High School
James Culum
Updated: Alexandria Health Department Addresses Recent U.S. Measles Outbreak
Community Meeting for Seminary Road Complete Streets Project - May 30
To Help Children Succeed, USDA Increases Funding for School Meals Nationwide
Alexandria Schools Superintendent Proposes Budget Focused on Staff Compensation and Holistic Learning Approach
9 New Members Inducted To Alexandria School Board for 3-Year Terms
School Turns Empty Computer Lab into Escape Room for Students


Established in 2006 as a small family business; Fur Source is now an industry leader in home decor, outerwear, and fashion accessories made from real fur. We specialize in luxury fur pieces made with the highest quality Origin Assured North American fur. Fur Source is the parent of the Fur Source family of specialty stores; each focused on products that use natural eco-friendly materials like fur, sheepskin, and leather. We have production and distribution facilities in both the USA and Canada. Shop factory direct on our website to avoid the middle man. Fur Source prices are a fraction of those found in specialty boutiques and departments stores.
Do you have questions or need help finding something? We want to help! We have a dedicated customer service team of fur experts ready to help educate and guide you. Browse through our wide selection of well organized product listings. You will find detailed descriptions and specifications along with high definition images and multiple views of each product. Read through our buying guide articles for more great information and tips. Visit our inspiration blog for design ideas and news about the latest fur fashion trends.
Why real fur? Faux fur cannot replicate the look or feel of genuine fur. Genuine fur is soft to the touch, warm yet breathable and breathtakingly beautiful. Natural materials are eco-friendly; they're biodegradable, renewable and sustainable. It's an excellent alternative to synthetic materials that harm the environment. Synthetic materials can take up to 3x as much energy to produce as real fur. Read more about real fur on the Truth About Fur website.
Are you looking for a custom made fur blanket, rug or coat? We have a dedicated customer service team of fur experts to help inform and advise you. We offer customization and bespoke services on a number of our home decor and outerwear pieces. Our team will work with you to design a piece that you'll fall in love with. Custom made pieces can be ready in as little as 5 working days.
Our head office is in Winnipeg, MB, Canada and we have a US distribution center in New York. Same day shipping and next day delivery are available for pre-made in-stock items. Our shipping team works hard to provide same day shipping from our USA and Canadian distribution centers to over 100 countries around the globe. You have the option to choose between UPS Standard, UPS Express or postal delivery. Whether you want to save on shipping costs or get your order in a hurry, we have a method for you.
Fur Source is the mother of a family of brands. The Fur Source group was founded over a decade ago. We are proud of the reputation that we've earned and the international company that we've become.
All of the Fur Source brands are family run and both founders are still regularly involved in the day-to-day operations. On a busy day you will find the owners working side-by-side with the employees packaging orders or taking customer service calls. This instills a culture where every employee genuinely cares about the quality of the product and customer experiences. You can expect the same great shopping experience at any of our e-commerce websites. The Fur Source family of brands sets the highest standard for product quality, customer service, and competitive pricing.
When the company first began, the owners worked diligently to assist customers directly. As the business has grown, exceptional customer service has remained a central idea. We ensure that all members of the customer service team are well-educated so they can promptly and correctly answer any question a person has. Our dedicated personnel work hard to create and maintain friendly and positive relationships with every customer.
We offer products at factory direct prices in an attempt to maximize the value for the customer. Buying products directly from us means there is no middle man, no expensive advertising and no overhead like a typical brick-and-mortar store. This way we can offer our customers what they want at a price they will love.
We believe in the excellence of our products and feel confident that you will too. Customer satisfaction is something that is very important to us and we welcome the chance to exceed your expectations. We provide a one year guarantee on everything we offer and a 15-day hassle free return policy.
Fur Source is where it all started. It has everything that you need fur-wise, but has grown to specialize in deluxe fur home decor products. Check out our generous selection of fur blankets, throws, pillows, rugs, and apparel.
Fur Hat World began as a specialty fur hat boutique. It has now developed into the premier provider of luxury fur apparel of all types. Take a look at the vast collection of hats, gloves, scarves, coats, jackets, vests, and accessories.
Sheepskin Town is the authority on sheepskin. We cater to all of your sheepskin needs; we offer sheepskin rugs, blankets, pillows, gloves, coats, slippers, as well as medical and baby sheepskin.


Feldemore is a beautifully presented house, recently refurbished and extended to provide substantial living space including a spacious family/garden room.
The accommodation includes an entrance hall with doors to the sitting room and kitchen/breakfast room. The sitting room has views to the front and rear gardens and has oak flooring and a wood burning fire. An archway leads to the impressive family/garden room with a vaulted ceiling, oak frame and under floor heating. A further arch leads to the centrally located kitchen with granite work surfaces, pull-out larder cupboards and a fully integrated fridge/freezer and dishwasher, the kitchen also has underfloor heating. Bedroom 4 and a shower room are located on the ground floor. The utility room has plumbing for a washing machine and also houses the gas fired boiler and hot water tank. From the utility room a door leads to a rear lobby which gives access to the integral garage and workshop, and the front and rear gardens. Both the workshop and integral garage have power points and lighting, the garage has double wooden doors.
From the entrance hall the staircase leads to a galleried landing with oak flooring and gives access to the triple aspect master bedroom with fitted wardrobes and en suite shower room. There are two further bedrooms and a family bathroom.
To the front of the house there is ample parking and raised beds. To the rear of the property the garden has been landscaped and enjoys a westerly aspect. There is a spacious paved dining area that adjoins the family/garden room with steps leading to the garden. The close boarded garden is intermingled with paths, lawn and raised flower/vegetable boxes. There is a garden shed and storage area.
Feldemore is located at the edge of the popular village of Fittleworth, adjacent to Hesworth Common. Fittleworth is an historic Sussex village, within the South Downs National Park, with its ancient church, the Swan Inn (a former coaching inn) and the ancient mill which was once painted by John Constable. There is a popular local primary school and the nearest shopping facilities can be found at Petworth (about 3 miles) and Pulborough (about 2.5 miles), where the main line rail station has services to London (about 70 mins) and the Sussex coast. More extensive facilities are at Arundel, about 8.5 miles to the south, Horsham about 16 miles to the north-east and Chichester, about 14 miles to the south-west. Sporting facilities include golf at several local clubs, racing, motor racing, golf and flying at Goodwood; polo and golf at Cowdray and sailing at Chichester Harbour. There are also many beautiful walking opportunities in the immediate area with access to an extensive network of footpaths and bridleways close by.
Mains electricity, water and drainage. Gas fired central heating with radiators.


text:
Q: Python try/except I'm trying a small program out of the Automate the Boring Stuff book.
I want to ensure that someone inputting a non-int variable will not crash the program. The code kicks out an error saying that the "break" command is not in the loop. Any help would be appreciated.
import random
print ('Hello. What is your name?')
name = input()
secretNumber=random.randint(1,20)
print('Well ' + name + ', I\'m thinking of a number between 1 and 20.')

for guessesTaken in range(1,7):
    print()
    print ('Take a guess')
try:
    guess = int(input())

except ValueError:
    print ('I said guess a number not letters or words.')

    if guess < secretNumber:
        print('Your guess is too low.')
    elif guess > secretNumber:
        print('Your guess is too high.')
    else:
        break

if guess == secretNumber:
    print('Good job! You guessed it.')
else:
    print('Nope the number I was thinking of was ' + str(secretNumber)+' sorry.')

A: Your indentation is not correct. Notice that the try block and everything underneath it is no longer in your for loop.

A: Well, first of all, remember to always post your code in here, thay way you will avoid the downvotes.
At looking at your code i could easily tell you a few things:
1) Indent this piece of code since it is actually out of the for loop.
try:
    guess = int(input())

except (ValueError, NameError):
    print ('I said guess a number not letters or words.')
    break

if guess < secretNumber:
    print('Your guess is too low.')
elif guess > secretNumber:
    print('Your guess is too high.')
else:
    break

2) You should make a break in the except block (like i did above) so it won't execute the next block of if statements or you will also get the exception for NameError because since the guess variable wasn't created the next if statement if guess "<" secretNumber: would throw an exception.
3) This code is kinda broken because if it throws an exception and guess isn't created, the last if statement out of the for loop would also throw an exception, so i recommend you to initialize that variable before the for statment like this: guess = 0.
Your final code should look like this:
import random
print ('Hello. What is your name?')
name = input()
secretNumber=random.randint(1,20)
print('Well ' + name + ', I\'m thinking of a number between 1 and 20.')
guess = 0

for guessesTaken in range(1,7):
    print()
    print ('Take a guess')
    try:
        guess = int(input())

    except (ValueError, NameError):
        print ('I said guess a number not letters or words.')
        break

    if guess < secretNumber:
        print('Your guess is too low.')
    elif guess > secretNumber:
        print('Your guess is too high.')
    else:
        break

if guess == secretNumber:
    print('Good job! You guessed it.')
elif guess == 0:
    None
else:
    print('Nope the number I was thinking of was ' + str(secretNumber)+' sorry.')

There is still room for improvement but this will fulfill your request.
Have a good day =).

redpajama_set_name: RedPajamaStackExchange


text:
Alabama airport worker dies in incident involving American Airlines regional jet
Saturday, December 31st 2022, 9:45 PM CST
(CNN) - A worker at the Montgomery Regional Airport in Alabama died Saturday in an incident on the ramp, the Federal Aviation Administration said Saturday.
The Montgomery Regional Airport said in a statement an American Airlines/Piedmont Airlines ground crew employee was "involved in a fatality" around 3 p.m.
"We are saddened to hear about the tragic loss of a team member of the AA/Piedmont Airlines," said Wade A. Davis, the airport's executive director. "Our thoughts and prayers are with the family during this difficult time."
All flights outbound and inbound at the airport have been grounded until further notice, the statement said. An FAA website listed the airport as closed Saturday evening.
The victim was not named, and the circumstances of the death were not immediately released. The FAA and the National Transportation Safety Board will both investigate.
The flight, operated by regional carrier Envoy Air, was scheduled to depart Montgomery for Dallas-Fort Worth Saturday afternoon, according to the flight tracking site FlightAware.com.


A Pitkin County jury found a local man with an extensive criminal history guilty of burglary and theft Thursday for attempting to steal meat and alcohol from a Snowmass Village hotel in June 2017.
Jeremiah Casper, 41, faces between two and 15 years in prison when he is sentenced Monday. He was acquitted of a misdemeanor criminal trespassing charge.
Casper is already serving time in prison after he was sentenced in Eagle County earlier this year for felony drunken driving, said Deputy District Attorney Don Nottingham. Casper also faces charges in three more pending cases in Pitkin County.
Casper's trial this week in Pitkin County District Court began Tuesday when a jury of seven men and five women began hearing the details of his attempt to steal about 10 pounds of meat and $3,000 worth of alcohol from the Westin Hotel.
At the time, Snowmass Village Police Chief Brian Olson and another officer arrested a half-naked Casper after he allegedly became confrontational with a parking-garage attendant who told him he couldn't sleep in his car in the garage. A Westin chef then showed officers that a hotel access door had been propped open and dozens of bottles of alcohol and large packages of meat had been placed at the bottom of the stairs, according to court documents.
A Westin employee told police he'd caught a shirtless, shoeless man with carts of liquor and meat earlier the same morning Casper was arrested.
Casper is scheduled to go to trial in March for allegedly showing up at the district attorney's Aspen office in September 2017 and telling an office manager he "needed to see what the DA on my case looks like," according to court documents. The then-prosecutor interpreted the request as a threat and also smelled alcohol on Casper, which was a felony violation of his bail bond conditions.
He also is scheduled for a preliminary hearing Dec. 19 for an incident at the Aspen airport in June. Casper was charged with harassment and violating a protection order by drinking alcohol at that time after getting into a disagreement with a parking lot security guard.
Finally, Casper is charged with three counts of harassment for allegedly sending harassing emails to Chief Olson and other Snowmass Village police officers in April.
In April 2015, Casper admitted to stealing a defibrillator from Base Village in Snowmass, though he claimed at the time he was having a medical emergency.


Get galtbaby.com Coupon Codes And Online Deals Delivered Straight To Your Inbox.
Find free online coupon codes for 131,528+ popular stores like Walmart, Kohl's, Macy's, Best Buy, Target & Galtbaby.com and more.
You can submit a Galtbaby.com coupon or your website/store if it is not already available on our website by sending details via email. We will quickly review your submission and publish your offer on our website if it's a good fit.
20% Off Select Chicco Gear ItemsEnjoy your favorite items when you shop at galtbaby.com. Get yours at galtbaby.com!
Save 20% on Select OrdersCheck out the steep discounts at galtbaby.com! These must-have items won't last long.
20% Off Select ItemsDon't miss this opportunity to save at galtbaby.com. Remember, you have only a day left to redeem this offer!
Get an Extra 20% Off Select ItemsIt's time to shop at galtbaby.com! Don't eye it any longer. Check out now!
20% Off Any OrderTreat yourself and your loved ones by using galtbaby.com promo codes today. A fresh approach to shopping.
Up to 20% Off Sale Diono Car SeatsGreat chance to save money with this offer from galtbaby.com. We help you find amazing deals so you can shop without a worry.
20% Off Select ItemsDon't miss this opportunity to save at galtbaby.com. Goundbreaking sale with never before seen prices.
20% Off Regular Priced ItemsChoose from a wide range of selected goods at galtbaby.com and receive amazing discount. Surround yourself with a world of happiness once you check out.
Dwell Studio Vanderbilt Dresser at just $495Galtbaby.com coupons - save massive EXTRA from Galtbaby.com sales or markdowns this week for a limited time. Grab this awesome deal while you can at galtbaby.com. Right now is the best time to buy and claim it as your own.
Baby Home So-Ro Twin Cradle at just $499Huge savings are available by using Galtbaby.com coupons, Galtbaby.com promo codes and Galtbaby.com discount codes. 100% verified Galtbaby.com coupons. A big deal from galtbaby.com that you can't miss! We have your interest at heart.


text:
Material shortages continue to impact new car production
Together with the ongoing chip shortage, a shortage in raw materials, including steel, could further affect the supply and price of new vehicles entering the market, according to new research.
A report by Cox Automotive and accounting firm, Grant Thornton, reveals that the price of aluminium and steel has "skyrocketed" due to increased demand and the complexities of transporting it around the world in the current climate, while plastics and rubber have seen reduced production - is another issue affecting manufacturers.
Owen Edwards, associate director at Grant Thornton UK, said: "There is increasing evidence of supply chain issues, shortages of raw materials and high raw material prices, which could affect the price and supply of new vehicles.
"The demand for hot-rolled coil steel used in the automotive industry for chassis has increased significantly in 2021."
While car production overall is down, many manufacturers are refocusing the available materials towards electric vehicles (EVs), hybrids and SUVs in favour of cheaper and smaller city cars, according to the report.
EVs are expected to account for more than one-in-six new cars acquired in 2021, according to the latest figures from the Society of Motor Manufacturers and Traders (SMMT).
Every car- and van-maker is being impacted by the computer chip crisis, with some delivery times for cars lengthening from three to six months, and many new vans not expected to be delivered until 2022.
The report anticipates supply issues will remain for the remainder of the year and won't be fully resolved until 2022.
However, Edwards says that carmakers have reasons to be optimistic about the short-term outlook.
"They are resistant to disruption and adversity, and demand for vehicles is still robust," he said. "This can be attributed to the way vehicles are sold, through structured finance products."
"We've enjoyed a prolonged period of low-interest rates, making borrowing affordable. Demand is expected to continue this year, but clearly questions remain around the short supply of vehicles."
With vehicle shortages, profit margins for both the new and used car markets are expected to remain high.
The joint report reveals the extent of manufacturer-related disruption within the automotive retail market throughout the pandemic.
Philip Nothard, insight and strategy director for Cox Automotive, said: "What these findings demonstrate is that the new vehicle market is not all doom and gloom, and manufacturers have done extraordinarily well to bounce back their fortunes with some using highly creative methods.
"While there is no doubt that current well-publicised material shortages are causing a slowdown in the new vehicle market and impacting on used supply and demand, manufacturers have demonstrated that they can be agile and adaptable enough to ride these situations out, which offers some hope for future recovery."
Our next event: register now
Register your interest for May 2022
From the most influential policy makers to the most innovative products and services, the Smart Transport Conference 2022 will once again be packed with engaging and insightful content.
Tickets will be available soon. In the meantime, register your interest here to be the first to hear when booking opens, plus exciting speaker and agenda announcements.
Venue: The Queen's Hotel, Leeds
Web producer
Jessica is the web producer at Fleet News, Commercial Fleet, AM and Smart Transport.
UK new car registrations: Plug-in vehicle market continues to rise
New car registrations in May reached 156,737 units, according to new figures from the Society of Motor Manufacturers and Traders (SMMT).
Plug-in vehicles continue to increase market share
Plug-in vehicles continued to increase market share in June according to the latest figures from the Society of Motor Manufacturers and Traders (SMMT).
EVs to account for more than one-in-six cars acquired in 2021
Electric vehicles (EVs) are expected to account for more than one-in-six new cars acquired in 2021.


text:
Q: Detect when user opens file in app I was reading this documentation on how to preview a file on my iOS app.
https://developer.apple.com/library/ios/documentation/FileManagement/Conceptual/DocumentInteraction_TopicsForIOS/Articles/PreviewingandOpeningItems.html#//apple_ref/doc/uid/TP40010410-SW1
Is there any to detect which app did the user choose? Or any way to kno if he actually tapped on any option?
My problem: iBooks large file (> 700mb). User chooses preview, then taps on the top right corner and chooses to open on iBooks. It takes between 20 to 45 seconds until it jumps to iBooks. If I know that the user tapped any app I could at least show a loading or whatever so he knows something is about to happen.

A: You can use UIDocumentInteractionControllerDelegate methods to achieve this. Here are the list of methods:

Apple document link


IDB Invest, the private sector institution of the Inter-American Development Bank (IDB) Group, has provided a loan in Colombian pesos for $20 million to Banco Mundo Mujer, the leading private microfinance bank in Colombia. The funds will be used to finance micro and small entrepreneurs.
The financing allows Banco Mundo Mujer to increase its loan portfolio to support communities with easy and quick access to working capital, strengthening its businesses and productive units. In this way the deal seeks to generate financial inclusion by offering credit products adjusted to the needs and payment capacity of Colombians.
Colombia has around 2.5 million micro, small and medium enterprises. Microcredit remains one of the most important channels of banking. During 2017, the most significant entryway to the financial system for adults included savings accounts and microcredit.
Photo courtesy of Juan G Gutiérrez Forero.


text:
'Cruella' Review: The Punk-Rock, Chaotic Role Emma Stone Was Born to Play
By Anna Menta May 26, 2021 at 9:00am
What to Watch When You're Heartbroken
Andrew Garfield's 'The Amazing Spider-Man' is Netflix's Hottest Movie This Weekend
Abby Monteil's Favorite Movie Creatures of 2021
It's hard not to love a movie that introduces Emma Stone to the opening notes of "She's a Rainbow" by the Rolling Stones while she aggressively brushes her teeth. That's what Cruella—which is coming to theaters and Disney+ with Premier Access on Friday (May 28)—does best: take full advantage of Stone's remarkable talent for playing an unhinged soon-to-be baddie, and pair those talents with a boatload of popular classic rock songs. Even if you go in determined to have a bad time, you'll be won over by the Stone (or Stones) of it all.
In terms of the Disney "canon," Cruella doesn't make much sense as a prequel. In the 1996 live-action movie 101 Dalmatians, the villainous Cruella de Vil (played by Glenn Close, a producer on Cruella) is a sadistically evil, obscenely rich old woman who intends to literally murder puppies so that she can make a coat out of their fur.
Cruella—directed by Craig Gillespie and written by Dana Fox and Tony McNamara—does some creative rejiggering to make Cruella a morally ambiguous, working-class, punk-rock orphan instead. You see, Stone's version of Cruella—whose real name is Estella—has anger issues. Estella's mom urges her daughter to suppress her angry "Cruella" side, but then mom dies being mauled by Dalmatians (yes, really). So Estella joins a duo of petty thieves, Jasper (Joel Fry) and Horace (Paul Walter Hauser), who one day decide to help her achieve her dream of becoming a fashion designer. Estella gets a job as a cleaner at a prestigious fashion house, and eventually gets hired by the ruthless designer Baroness von Hellman (Emma Thompson). Estella is determined to win her approval—until she discovers something that makes her determined to beat the Baroness at her own game.
Photo: Disney
All of the above could have been laughably ridiculous if Emma Stone weren't so freakin' amazing. Cruella feels like the role Stone was born to play. She embraces the punk rock spirit of the 1970s London setting with a bright red wig and thick, messy eyeliner; and, more importantly, with an impending sense of maniacal chaos that builds over the film's 134 minute long runtime. Her haphazard, messy vibe contrasts nicely with the buttoned-up evil of Thompson, who is essentially doing an impression of Miranda Priestly, albeit a very good one. And, to be fair, Estella does try to be a functioning member of polite society. But how is it her fault that that polite society is classist, sexist, and just generally bull-crap?
The first time she snaps, she helps herself to her boss's liquor and adds a splash of anarchy to the previously stuffy window display. Stone stomps around in her combat boots accompanied by—what else?—Nancy Sinatra's "These Boots Are Made For Walkin,'" like a drunken panther on the prowl. When she accidentally breaks something expensive, she stares at the mess in surprise—and just a touch of intrigue—making no move to clean it up. As far as mischief goes, a rogue window display is pretty tame. But through Stone's performance, we understand it's a gateway for Estella's addiction to mayhem. By the time she completes her transformation into Cruella, her affected posh accent now a permanent fixture, you understand this is always who she was meant to be. (Even if she's not quite at puppy-murdering stages of evil.)
Though Stone won her Oscar for playing an aspiring actress with a big dream and a song to sing in 2016's La La Land, it's these chaotic "breaking bad" roles where she truly comes alive. Take 2018's The Favourite, which as Decider's Meghan O'Keefe pointed out, was proof that the actor had what it took to be the big, bad Cruella de Vil. If anything, Stone is more ruthless in The Favourite as the newly hired maid who worms her way into a manipulative relationship with Queen Anne of England in 1708. (Let's not forget her impressive right hook in that scene where she beats up English actor Joe Alwyn.) Stone is technically on the side of the heroes in Zombieland, but it's her badass edge that makes you love her. And though it was short-lived, she excelled in the messiness of a character with borderline personality disorder in the Netflix series Maniac.
The tone of Cruella flits from Oliver Twist to The Devil Wears Prada to Ocean's 11, but Stone is a grounding presence. She's just so confident— so comfortable—being bad! And it doesn't hurt to have hit songs from the '60s and '70s to emphasize just how enjoyable it is to watch Stone in her element. Did I mention that at one point she struts down a runaway to a live performance of "I Wanna Be Your Dog" by the Stooges, surrounded by smoke machines and strobe lighting like she's the star of a rock concert? Because that happens, and it is glorious.
You'll be so won over by Stone's slightly terrifying charm that you'll be willing to forgive the film's at-times ridiculous plot and lengthy runtime. After all, how could you not want more of that?
Watch Cruella on Disney+


Professional Actor, Spotlight removed , Equity and BECTU. Experienced in feature films, short films, TV commercials, corporate, TV ident, TV drama, TV reality, music videos, theatre - plays and musicals.
Martial art trained - black belt in judo.
Experienced stand in and body double.


A recent report from the U.S. Centers for Disease Control and Prevention (CDC) revealed that we are not eating enough of fruits and vegetables on a daily basis. The CDC report stated that in 2009, 67.5% of adults ate fruit less than two times daily and 73.7% ate vegetables less than three times per day.
How much fruit servings per day is recommended for my child?
Children 2-3 years old should have 1 cup per day, 4-8 years old should have 1 - 1½ cups per day.
Girls and boys 9-13 years old should have 1 ½ cups per day.
Girls 14-18 years old 1½ cups per day, whereas for boys it's 2 cups per day.
How many veggie servings per day are recommended for my child?
Children 2-3 years old should have 1 cup per day, 4-8 years old should have 1 ½ cups per day.
Girls 9-13 years old should have 2 cups per day, whereas for boys it's 2 ½ cups per day.
Girls 14-18 years old should have 2 ½ cups per day, whereas for boys it's 3 cups per day.
What about for us parents?
You serve as the best role model for your children. Let them see you eat healthy every day.
Women 19-30 years old should have 2 cups of fruits per day & 2 ½ cups of vegetables per day.
Women 31-50 years old should have 1½ cups of fruits per day & 2 ½ cups of vegetables per day.
Men 19-50 years old should have 2 cups of fruits per day & 3 cups of vegetables per day.
In addition, eating enough fruits and veggies will help with your and your children's overall health. It helps with weight control, prevention of chronic diseases and certain cancers, heart disease, diabetes, and several other illnesses.
An 8 ounce cup of raw fruit, fruit juice or ½ cup of dried fruit counts as a cup of fruit. An 8 ounce cup of raw or cooked veggies, two cups of leafy green veggies, or a cup of pure vegetable juice counts as a cup of veggies.
Two excellent resources to utilize are https://www.fruitsandveggiesmorematters.org and www.supertracker.usda.gov/default.aspx. These websites have lots of examples, pictures and interactive tools to help you know how to make sure your family eats a healthy diet.


text:
The fascinating story behind the strange figures outside Grimsby Library
The acclaimed painter and artist who made them taught Oscar-nominated actor John Hurt, at Grimsby School of Art
Abby Ruston
Like something from Harry Potter, five 11ft statues have been 'floating' outside Grimsby Library for 51 years.
But what are the slightly creepy looking figures and who created them?
Jennie Cartwright, development officer for libraries at Lincs Inspire Ltd, said: "A lot of people find the statues quite scary, or think that they are ghosts, ghouls, the undead.
"They are quite a talking point and we do often get asked what their significance is."
Grimsby Central Library as it looks today from the south side (Image: Rick Byrne / GrimsbyLive)
The art was planned from an early stage, as the minutes of the Libraries and Museum Committee for March 10, 1965 states: "The Committee received a report from the Borough Architect on the proposed works of art to be embodied in the building.
"The Committee also inspected representative models of the proposed art works created by the staff of the School of Art."
These imposing statues took 18 months to make at a studio in a former Walesby school, near Market Rasen, in the late 1960s.
Checking the 'Guardians of Knowledge' statues during their placement in May 1968, on the front of the new Grimsby Central Library (Image: Grimsby Telegraph)
They were the brainchild of Peter Todd, the well-respected, then head of Grimsby School of Art.
In an article about the library statues in 1968, Mr Todd, who was head at the school for 30 years said: "The library is a repository of wisdom and the figures are intended as guardians.
"They will be eye-catching and I don't think people will be able to ignore them."
May 1968: The Guardians of Knowledge statues in place on the front of the new Grimsby Central Library. They were sculpted by Mr P. W. Todd of the Grimsby College of Technology, he can be seen stood on the right of the platform (Image: Grimsby Telegraph)
And over 50 years later, he is certainly right, you can't ignore them.
Fixed to the front of the library in May 1968 ahead of its official opening on September 13, 1968, they have protected the "centre of learning and culture in the town".
Grimsby Central Library was built between 1966 and 1968 to designs by borough architect J M Milner, assisted by Mr E L Shepherd and (researched by) Borough Librarian, Mr E H Trevittto.
The Guardians of Knowledge statues on the side of the Grimsby Central Library, designed by the late Peter Todd (Image: Rick Byrne / GrimsbyLive)
The approximate cost of the new library was £400,000, with £32,000 for furniture and equipment. It replaced a previous library in the town (Mechanics' Institute), destroyed during the Second World War in 1941.
Centrally situated on a site formerly occupied by cottages and a blacksmith's shop, the building was constructed by Ashby and Horner Ltd, of London and Grimsby.
The late painter Peter Todd, who created the iconic statues which still adorn the front of Grimsby Central Lbrary today (Image: Submitted family photo)
Peter Todd was a hugely influential painter on the local art scene, with generations of artists taught by him, most notably Oscar-nominated actor John Hurt, a student at the school, who studied fine art between 1956 and 1958.
John previously said of his mentor: "Peter Todd's influence greatly helped me to start thinking individually and, though I changed direction artistically, I have remained a painter and still try, both as an actor and a painter, to pursue the ideals he planted in my mind all those years ago.
The cloaked central figure - one of five Guardians of Knowledge, on the wall of Grimsby's Central Library (Image: Rick Byrne / GrimsbyLive)
"For this period of my education, I am forever grateful."
Pip Todd-Warmoth, 57, the youngest of Peter's four children, is also an internationally-acclaimed artist. He told how the actor also wrote to his father to mark his 80th birthday.
In extracts from the letter, John Hurt wrote: "There is not a week passes that you do not come into my thoughts and conversation.
John Hurt played Mr Ollivander, the wand-maker, in Harry Potter and the Philosopher's Stone
"Your influence is always with me and has never dimmed. Notice and applause are merely icing on a cake and must never be considered to be paramount. This was your philosophy way back in 1957 and I will warrant that it hasn't changed.
"You graciously passed it on to anyone who was prepared to heed it.
"In all truth, I cannot imagine my life without your influence: You have helped keep a giddy top in some sort of balance. So may I offer my hitherto unspoken thanks."
Three of the five Guardians of Knowledge, designed by the late Peter Todd, the former head of the Grimsby Art College (Image: Rick Byrne / GrimsbyLive)
Pip, was only young when the statues were made, but learned of his father's creations.
Speaking to Grimsby Live about them he said: "I was only five when he was making them.
"He made them up totally - The original statues were welded, they were metal but the powers that be thought that if they eroded they would be quite dangerous, so he decided to make them from fibreglass.
A close up of one of the five 11 foot statues on Grimsby Library (Image: Rick Byrne / GrimsbyLive)
"There's a bronze mixture in the fibreglass to make it look bronze like.
"They were made at home, we lived in an old school in Walesby, he set up a 15ft table.
"They were made of clay then with about 10 pots of boiled rubber, he moulded the clay and they were filled with fibreglass and resin."
Grimsby Telegraph June 1988: Peter Todd, Principal, Grimsby Art School (Image: Grimsby Telegraph)
The statues represent pillars of wisdom and guardians of knowledge and have three designs arranged in a symmetrical pattern - with only the central statue in a shrouded cloak - to represent as Pip suggests: "the mystery of knowldege."
The family are still heavily involved with Grimsby Music Festival and feel a deep sense of pride when they pass the nearby statues.
Self portrait of Peter Todd, the former head of Grimsby Art School (Image: Submitted photo)
Pip, who now lives in London with his family added: "I'm proud they are still there, it's great for the grandchildren to see them."
Mr Todd passed away aged 84, in 2006.
Today The Atrium of the new University Centre, at Grimsby Institute, has been transformed into a gallery and named after him - a self-portrait also adorns the atrium entrance.
Read our selection of nostalgia stories
Strange figures
Wonderland memories
Outdoor bathing
Mississippi showboat
For more top stories and breaking news see Grimsby Live
Follow or contact Grimsby Live
Contact us : Email the reporter who wrote this story .
Follow Grimsby Live on Facebook - Like our Facebook page to get the latest news in your feed and join in the lively discussions in the comments. Click here to give it or message us with a comment or story
Follow us on Twitter - For breaking news and the latest stories, click here to follow Grimsby Live on Twitter .
Follow us on Instagram - On the Grimsby Live Instagram page we like to feature great pictures from our area - and if you tag us in your posts, we could repost your picture on our page! Click here to follow Grimsby Live on Instagram .


Sheriff Craig Webre invites the public to join the Lafourche Parish Sheriff's Office and more than 30 other public service agencies at the 8th Annual Bayou Region Public Safety Expo. This fun-filled event will be held from 10 a.m. to 2 p.m. on Saturday, October 20, 2018, at the Warren J. Harang Jr. Municipal Auditorium, located at 310 North Canal Boulevard in Thibodaux.
This event is free to the public, and there will be information and demonstrations for all ages. The Lafourche Parish Sheriff's Office will display vehicles, tools, and technology used by deputies on a daily basis to keep our citizens safe. Those who attend can get a first-hand look at several vehicles used by LPSO including our mobile command vehicle, crime scene unit, water patrol boat, motorcycle, and a bicycle. We will also have a D.A.R.E. car and the M.R.A.P. (mine-resistant ambush-protected) vehicle which can be utilized in search and rescue following major storms and flooding, as well as by our Lafourche Parish Interagency Crisis Management Unit to keep deputies safe. Explorers from POST 323 will be providing Child IDs, fingerprinting and DNA swabs.
More than 30 public agencies from Lafourche and Terrebonne, including law enforcement, fire, medical and emergency preparedness, will be on hand displaying similar equipment and vehicles such as helicopters, tactical equipment, ambulances, fire trucks and much more. Other activities at the expo include K-9 demonstrations, equipment demonstrations, safety demonstrations, interactive training tools, and child safety seat inspections. Food and drinks will also be available to the public.