Your dog is tensed on his bed, a bone pressed between his front paws. As you move closer, he stiffens, and you hear a low growl. You reach for the bone, and he snaps.
This is a clear-cut example of resource guarding. This is a totally natural behavior in the animal world – a stray dog, for example, may have to guard the scraps of food they find to be able to eat. In theory, pet dogs should have moved past the need to guard the things they see as resources – after all, they have everything they need in our homes, right? But in reality, many dogs still display this behavior, sometimes in a way that can be dangerous for the people and animals interacting with them.
Dogs view a lot of things as resources – food, toys, their dog bed, sometimes even their people. Food and chews like bones are the most common source of resource guarding, so I will use that as an example throughout this post, but many things can be subject to guarding by your dog.
So what do you do when your dog is resource guarding?
Step one is prevent the situation from escalating. If your dog has a bone, and starts to guard it, do NOT take try to take the bone. Many dog owners think that allowing the dog to keep the bone is reinforcing their bad behavior, but actually, your dog generally is guarding because they feel insecure about the resource, so taking it away will just make the behavior more intense in the future as you will now be viewed as even more of a threat to their resources. Trying to take the bone also significantly increases your chances of a bite happening. There are no "winners" when dealing with aggressive behavior – safety is far more important than showing your dog who's boss. Remember: your dog is not guarding their bone because they are being dominant or to defy you. Most of the time, they are reacting instinctively to the worry that you going to take their resource away, and are trying to prevent that from happening.
There are a few resource guarding protocols online or in publication ("Mine!" by Jean Donaldson is a great reading option for people with resource guarders). The basic idea of many of them is the same: you want to create a good association with you approaching when your dog has the resource they are trying to protect.
You will need to set up a safe scenario here first. So let's say your dog guards his food bowl at breakfast. When he has his breakfast, approach only to the point where he knows you are there, but is not yet reacting – you want to stay at a safe distance and keep your dog under threshold. Once you get to the right spot, toss a super-tasty treat (I like to use something really high-value like hot dog or chicken) into his bowl or as close as you can get and walk away. Repeat this step until your dog is totally comfortable with you approaching at that distance. If he seems happy and relaxed with your approach, start gradually moving closer and closer. In most cases, you should eventually be able to touch or move the bowl without the dog reacting negatively. This works because every step of the process heavily pairs your approach with really good stuff, so you getting closer becomes something awesome instead of something scary.
This is a very simplified version of dealing with a complicated issue. If you have a dog who guards his resources in a way that is dangerous (lunging, snapping, etc.), enlist the help of a behavior professional to make sure your training plan is set up in the correct way. The goal is to always keep the process safe and effective, so that your dog goes from growling when you approach their bone to wagging their tail in excitement.


text:
\section{Introduction}

It is generally known that there are many types of skin diseases, ranging from itching caused by mosquito bites to skin cancer. Traditionally, the diagnosis of skin diseases is based on the comprehensive consideration of the size, shape, color and other visual features of the lesion area. Recently, deep learning methods have been applied to many medical tasks \cite{rajpurkar2017mura,moreira2012inbreast} and obtained remarkable achievements. Using computers to help diagnose skin diseases would be a promising direction. At present, there are many studies \cite{mendoncca2013ph,tschandl2018ham10000} on dermoscopic images and they have achieved promising results. Although there are some works \cite{razeghi2012skin,sun2016benchmark} on clinical skin disease images, their datasets are small. To fill this gap, we first build a clinical skin disease dataset, namely Skin-10, which has 10,218 images of 10 common skin diseases, and we manually marked the skin lesions for each image. Besides, we expand Skin-10 to Skin-100, which covers 100 classes of skin diseases and contains 19,807 clinical images. To the best of our knowledge, the scale of Skin-100 is larger than all existing clinical skin disease datasets. What's more, Skin-10 is the first clinical skin disease dataset that provides bounding boxes. By using the bounding boxes, we could extract more discriminative features and thereby improve the classification performance.

\begin{table*}[!hbt]
    \centering
    \caption{The summary of existing skin disease datasets. In the first row (Type), D and C indicates dermoscopic and clinical, respectively. The fourth row (Annotation?) represents whether the dataset provides bounding boxes or segmentation. }\label{table:dataset_summary}
    \begin{tabular}{|c|c|c|c|c|c|c|c|c|c|}
        \hline
        Dataset &
        PH2\cite{mendoncca2013ph}&
        ISIC &
        Ham10000\cite{tschandl2018ham10000}   &
        \cite{data1998} & \cite{razeghi2012skin}$-1^{st}$ / $-2^{nd}$ & \cite{razeghi2013interactive} & \cite{sun2016benchmark}$-1^{st}$ / $-2^{nd}$ &
        \cite{google} &
        Skin-10 / Skin-100 \\ \hline
        Type  & D &  D &  D  & C  & C / C  & C  & C / C & C & C / C \\
        \#Classes & 3 & - & 7  & 6  & 3 / 7                   & 44                     & 128 / 198   & 26    &10 / 100      \\
        \#Images & 200 & 23,801 & 10,015   & 366 & 90 / 706                 & 2,309                   & 5,619 / 6,584   & 17,777   & 10,218 / 19,807   \\
        Annotation? & Y &  Y & N & N  & N / N & N & N / N & N &Y / N \\

        Year  & 2013  & 2016 & 2018 & 1998  & 2012          & 2013                   &  2016     &2019      & 2019  \\ \hline
    \end{tabular}
\end{table*}

Unlike dermoscopic images, which are hard to obtain because of high expense and inconvenience access \cite{tsang2010global}, clinical images can be captured by easily-accessed devices, like the smartphone. However, there are several difficulties in recognizing skin lesion from a clinical image. (a) the background of clinical images is more complex so that how to reduce background noise interference is an important issue to consider. (b) clinical images cover far more classes of diseases than dermoscopic images, because dermatoscope is designed primarily for skin cancers, like melanoma and basal cell carcinoma, etc. (c) clinical skin disease image classification can be considered as a task of fine-grained classification, which is more difficult than normal classification task (e.g. CIFAR10 \cite{krizhevsky2009learning} and ImageNet \cite{deng2009imagenet}). On the one hand, the lesions of one class of skin diseases may not only appear in different parts of the human body, but also the visual characteristics of these lesions vary greatly, which indicates the high intra-class variance. On the other hand, two lesions that look very similar may belong to different categories, which indicates the low inter-class variance. Despite the above difficulties, it would be helpful for doctors and patients if we can apply deep learning techniques on our datasets to solve those problems.

To verify whether deep neural network works well on the task of clinical skin disease classification, we first benchmark on Skin-10 and Skin-100 using four SOTA CNNs: ResNet50 \cite{he2016deep}, DenseNet121 \cite{huang2017densely}, Nasnetamobile \cite{zoph2018learning} and Pnasnet5large \cite{liu2018progressive}, and we implement ensemble methods based on above four CNN models. Besides, we perform two SOTA object detection models (RetinaNet \cite{lin2017focal} and Faster-RCNN \cite{ren2015faster}) on Skin-10 to detect possible lesion regions on the raw images and then classify the disease based on the region with the highest confidence score. The experimental result shows that the object detection based method can reduce the influence of the background and achieve higher accuracy than plain CNN models.

In summary, this paper has the following contributions. (a) We build two versions of clinical skin disease datasets: Skin-10 and Skin-100. As far as we know, Skin-10 is the first clinical skin disease dataset providing bounding boxes and the scale of Skin-100 is larger than most existing clinical skin disease datasets. (b) We establish the baseline performance of four SOTA CNN models on our datasets. (c) We verify the effectiveness of the ensemble method which achieves the best accuracy on both datasets. (d) We propose an object detection based approach and evaluate its performance on Skin-10.

The remainder of this paper is organized as follows. Section \ref{section:related_work} reviews the existing related skin disease datasets and methods of recognizing skin diseases. In Section \ref{section:dataset}, the details of Skin-10 and Skin-100 are presented. Section \ref{section:method} describes the details of CNN-based, ensemble, and object detection based methods, and analyzes the experimental results. Finally, Section \ref{section:conclusion} offers concluding remarks and future works.

\section{Related Work}
\label{section:related_work}

\subsection{Skin Disease Datasets}

There are two types of skin disease images: dermoscopic and clinical. The former is obtained by a dermatoscope, which requires a high-quality magnifying lens and a powerful lighting system. Hence, dermoscopic images have a simpler background, which means that the distribution, number, size, shape, and color of skin lesions are much clearer compared with clinical images. Table \ref{table:dataset_summary} summarizes some existing skin disease datasets. PH2 dataset \cite{mendoncca2013ph} contains 200 dermoscopic images of melanocytic lesions, including 80 common nevi, 80 atypical nevi, and 40 melanomas. HAM10000 \cite{tschandl2018ham10000} collects dermoscopic images from different populations and consists of 10,015 images from 7 classes. ISIC Archive\footnote{https://isic-archive.com/} provides both dermoscopic and clinical images, which are categorized into many classes based on different attributes, such as diagnostic attributes, clinical attributes, etc. ISIC has 23,801 dermoscopic images but only has 100 clinical skin images. The dataset \cite{data1998} is from the UCI machine repository and contains six classes of skin diseases. In \cite{razeghi2012skin}, there are two datasets proposed: 90 dermatological images covering 3 skin disease classes and 706 images covering 7 classes, respectively. The dataset in \cite{razeghi2013interactive} has 44 classes containing 2,309 images. Another two datasets are proposed in \cite{sun2016benchmark}: SD-128, which has 128 classes and 5,619 images, and SD-198, which has 198 classes and 6,584 images. They achieve the classification accuracy of 52.15\% on SD-128 and 50.27\% on SD-198. A recent work proposed by Google \cite{google} develops a deep learning system for diagnosing 26 classes of clinical skin diseases using 17,777 cases. Each case consists of one or several clinical images and metadata, which includes patient demographic information and medical history.

\subsection{Skin Disease Classification}

The methods of skin disease image classification are two-folds. The first relies on hand-crafted features, such as the texture (SIFT, HOG), color (ColorSIFT, ColorHistogram), and edge (Gabor, Sobel) \cite{sun2016benchmark}.  The models, like support vector machines (SVMs), k-nearest neighbors (KNN) and decision trees, are then trained based on above features. The second is deep learning techniques. In \cite{sun2016benchmark}, a pretrained CNN model is used to extract deep features and the result shows that CNN performs better than hand-crafted based methods when the background is complex. In \cite{gessert2018skin}, the authors use a large ensemble of SOTA CNN models and place second at the ISIC 2018 challenge for skin lesion diagnosis. Verma and Pal et al. \cite{ensemble2019} also propose an ensemble method that combines five different data mining techniques. Zhang's work \cite{zhang2019attention} proposes an attention residual learning CNN model to effectively locate the skin lesion of dermoscopic images. Currently, the models generated by the neural architecture search (NAS) technique have been demonstrated to achieve comparable results to the human-designed models in many tasks \cite{automl,elsken2018neural}. In this paper, we compare NAS-designed and human-designed CNN models and perform the ensemble method based on these two types of models. We also evaluate the performance of two SOTA object detection models, which are expected to locate the skin lesion area and reduce the influence of background.

\section{Dataset}
\label{section:dataset}

\begin{figure}[!htb]
    \centering
    \includegraphics[width=0.48\textwidth]{skin100_stat.png}
        \caption{Statistics of Skin-100. A base-2 log scale is used for the Y-axis. For each class, the number of images in the training set is about 3 times the testing set.}
    \label{fig:data_distribution}

\end{figure}

\begin{table}[]
    \centering

    \caption{The statistics of Skin10. For notational convenience, we will use the index value to indicate the corresponding disease category in the following content unless otherwise stated.}
    \label{table:skin10_stat}
    \begin{tabular}{|c|c|c|c|}
        \hline
        Index & Class name & \#Training set & \#Testing set\\\hline
        0 & Acne Vulgaris  & 1598 & 399 \\\hline
        1 & Actinic Keratosis  & 932  & 239 \\\hline
        2 & Atopic Dermatitis Eczema  & 590  & 145 \\\hline
        3 & Basal Cell Carcinoma  & 3249  & 826 \\\hline
        4 & Compound Nevus  &  513 & 127 \\\hline
        5 & Onychomycosis  & 394  & 98 \\\hline
        6 & Rosacea  & 976  & 242 \\\hline
        7 & Seborrheic Keratosis  & 1180  & 291 \\\hline
        8 & Stasis Ulcer  &  407 & 100 \\\hline
        9 & Tinea Corporis  & 379  & 87 \\\hline
    \end{tabular}
\end{table}

Our datasets are built by scraping images from the Internet. We build Skin-10 by selecting 10 classes from the most common skin diseases \cite{hay2014global}. As a result, Skin-10 has 10,218 images and the statistics of Skin-10 is presented in Table \ref{table:skin10_stat}. Additionally, we use a graphical image annotation tool (LabelImg \footnote{https://github.com/tzutalin/labelImg}) to mark skin lesions with bounding boxes for each image in Skin-10. We further build a larger dataset based on Skin-10, namely Skin-100, which has 19,807 images of 100 skin diseases, and each class has over 40 images. The data distribution of Skin-100 is long-tailed, as shown in Fig \ref{fig:data_distribution}. In both Skin-10 and Skin-100, the ratio of the training set to the testing set is set at 3:1.

In some images, the skin lesion is covered or cured. Hence, we perform data cleaning to remove a total of 290 noise images.  The experimental result in Section 4 shows that data cleaning improves the performance of models for all CNN models.

\textbf{Scale} To the best of our knowledge, the scale of Skin-100 is much larger than existing clinical skin disease datasets. As Table \ref{table:dataset_summary} shows, the number of clinical skin disease images in Skin-100 is almost 3 to 200 times than other datasets. Besides, Skin-10 is the first clinical skin disease dataset providing bounding boxes for skin lesion detection \cite{sun2016benchmark,razeghi2012skin,razeghi2013interactive}.

\textbf{Diversity} Our datasets cover different ages, genders and lesion locations. Besides, the difference can be significant within the same class, e.g. the skin disease images from the same class may differ from skin colors and lesion shapes, whereas, the difference can also be subtle between different classes. In a word, our datasets are of high diversity so that it is worthy to evaluate whether deep leaning techniques are feasible in our datasets.

\section{Clinical Skin Disease Image Classification}
\label{section:method}

In order to establish the baseline performance of CNN models on our datasets and not lose generality, we select four representative models from two types of models. (a) the models designed by human experts. (b) the models generated by the NAS algorithm. We also verify the feasibility of the ensemble method using these four models. We further evaluate the effectiveness of two SOTA object detection models. The implementation details and results are described in the following content.

\subsection{CNN based Classification}

\begin{figure}
    \centering
    \includegraphics[width=0.48\textwidth]{ensemblenet.pdf}
    \caption{An overview of EnsembleNet.}
    \label{fig:ensemblenet}
\end{figure}

\begin{figure*}[!hbt]
    \centering
    \includegraphics[width=\textwidth]{skin10ensemble_analysis1.png}
    \caption{Left: The results of different models on Skin-10. Right: the confusion matrix of EnsembleNet. The number 0-9 in the x-axis indicates different class index.}
    \label{fig:skin10ensemble_analysis}
\end{figure*}

In this experiment, two types of SOTA CNN models are used as the baseline models: (a) ResNet50 and DenseNet121, which are designed by human experts. (b) Nasnetamobile and Pnasnet5large, which are generated automatically by the NAS technique. The pretrained models of (a) and (b) are obtained from torchvision\footnote{https://github.com/pytorch/vision/tree/master/torchvision/models} and pretrained-models.pytorch\footnote{https://github.com/Cadene/pretrained-models.pytorch}, respectively. After fine-tuning four base CNN models, we ensemble them into a strong classifier, namely EnsembleNet (shown in Fig \ref{fig:ensemblenet}), by summing the probability prediction of four base models:

\begin{equation}
    \text{EnsembleNet}(x)=\sum_k^K\text{BaseNet}_k(x)
\end{equation}
\noindent where $x$ indicates the input image and $K$ represents the number of base models. In this work, the best result is obtained by setting $K=4$, i.e. combining the prediction results of all base models.

\subsubsection{Settings} Before feeding the training set to the model, we implement a series of data augmentation, including resize, random crop, flips, rotation, and normalization, while for the testing set, we only perform resize and normalization. We use the stochastic gradient descent (SGD) optimizer with an initial learning rate of 0.01. The learning rate will be multiplied by a factor of 0.1 every 10 epochs. The batch size is 64 and the input image size is fixed to 224*224. Cross-entropy is used as the loss function. All baseline models are fine-tuned to converge.

\begin{table}
    \centering

    \caption{The classification accuracy of CNN models on our datasets.
    }
    \label{table:benchmark}
    \begin{tabular}{|c|c|c|c|c|c|c|}
        \hline
        Dataset & \multicolumn{2}{c|}{Skin-10} &  \multicolumn{2}{c|}{Skin-100} &  \multicolumn{2}{c|}{Skin-100-Noise} \\\hline
        \begin{tabular}[c]{@{}c@{}}Top-k\\ Accuracy (\%)\end{tabular}  & Top-1  & Top-3  & Top-1  & Top-5 & Top-1  & Top-5    \\ \hline
        ResNet50   & 74.75 & 94.28 &   47.70   & 74.94 & 40.36 & 68.18        \\
        DenseNet121  & 72.94  & 92.68 & 48.43   & 75.37 & 45.08 &  70.76 \\
        Nasenetamobile  & 75.8  & 94.01 &  46.69 &  73.57 &  45.53 &  73.29 \\
        Pnasnet5large & 76.94 & 94.36 & 48.24 & 73.66 & 47.24 & 73.32 \\
        EnsembleNet & \textbf{79.01} & \textbf{95.34} & \textbf{53.54} & \textbf{79.18} & \textbf{51.96} & \textbf{78.51} \\
        \hline
    \end{tabular}
\end{table}

\subsubsection{Results and Analysis}

Based on the observation that the distribution of our datasets is imbalanced, we use top-k weighted accuracy as the metric. Let $\hat{y}_i$ be the output of the CNN models when the input is $x_i$ and $T^k_i$ be the labels of the $k$ largest elements in $\hat{y}_i$. $y_i$ is the ground-truth label of the $i$-th sample and $w_i$ is the corresponding sample weight. The top-k weighted accuracy on the testing set is given as

\begin{equation}
    A_{\mathrm{top}-k}=\sum_{i=1}^{N} Z_{i}^{k}w_i
\label{eq:top_k}
\end{equation}

\noindent where

\begin{equation}
\begin{aligned} w_{i} &=\frac{\sum_{j} 1\left(y_{j}=y_{i}\right)}{N} \\ Z_{i}^{k} &=\left\{\begin{array}{ll}{1,} & {y_{i} \in \mathbf{T}_{i}^{k}} \\ {0,} & {\text { otherwise }}\end{array}\right.\end{aligned} \notag
\label{eq:w_z}
\end{equation}

\noindent and $N$ is the number of images in the test set.

Table \ref{table:benchmark} presents the results of the baseline models on Skin-10, Skin-100 and Skin-100-Noise. Skin-100-Noise represents the dataset in which there exist many noise images in the training set, while Skin-100 is the opposite. Additionally, we make sure that both Skin-100 and Skin-100-Noise share the same testing set. In this way, we can fairly see from Table \ref{table:benchmark} that removing the noise images contributes to the improvement of classification accuracy for all CNN models, especially for ResNet50, as its top-1 accuracy is improved by 7.34\%. On the other hand, we can also find that, after data cleaning, the performance of models designed by the NAS technique is not improved as much as the human-designed models, which means that these models are more robust and able to extract more discriminative features.

We further employ an ensemble method and we evaluate all possible combinations of base models. The experimental results show that the ensemble of four base models (EnsembleNet) achieves the highest top-1 accuracy (79.01\%), and the ensemble of DenseNet121, Nasnetamobile, and Pnasnet5large obtains the best top-3 accuracy (95.42\%). What's more, all ensemble models outperform any single base model.

\begin{table*}[!hbt]
    \centering

    \caption{The results of different models on Skin-10. The index 0 to 9 indicate the classification accuracy of different classes. The last column is the overall weighted accuracy on Skin-10.}
    \begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|}
        \hline
    \multicolumn{1}{|c|}{\multirow{2}{*}{Model}} & \multicolumn{11}{c|}{Top-1 Accuracy(\%)} \\ \cline{2-12}
\multicolumn{1}{|c|}{} & \multicolumn{1}{c|}{0} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{2} & \multicolumn{1}{c|}{3} & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{5} & \multicolumn{1}{c|}{6} & \multicolumn{1}{c|}{7} & \multicolumn{1}{c|}{8} & \multicolumn{1}{c|}{9} & Overall \\ \hline

ResNet50  & 76.94 & 54.39 & 61.38 & 85.84 & 61.42 & 96.94 & 61.16 & 75.26 & 83.00 & 58.62 & 74.75 \\\hline
DenseNet121  & 76.94  & 45.61 & 59.31 & 85.47 &  59.06& 92.86 & 61.98 & 73.88 & 76.00 &55.17  &72.94   \\ \hline
Nasnetamobile & 79.20  & 51.88 & 67.59 & 85.71 &  64.57 & 94.90 & 66.53 & 75.60 & 84.00 & 57.47  & 75.80   \\ \hline
Pnasnetamobile & \textbf{81.45} & 50.63 & 68.97 & 85.59 & 64.57 & \textbf{98.98} & 64.88 & 80.76 & \textbf{87.00} & 62.07 & 76.94 \\\hline
Faster-RCNN & 79.70 & 60.67 & 47.59 & 87.17 & \textbf{67.72} & \textbf{98.98} & \textbf{77.69} & 78.69 & 76.00 & 63.22 & 77.64 \\ \hline
RetinaNet  & 80.95 & \textbf{61.09} & \textbf{68.97} & \textbf{88.01} & 55.91 & 96.94 & 69.10 & \textbf{83.51} & 71.0 & \textbf{65.52} & \textbf{78.31} \\\hline
    \end{tabular}
    \label{table:obj_det}
\end{table*}

Although EnsembleNet can improve classification accuracy by integrating base models, we can see from Fig \ref{fig:skin10ensemble_analysis} (left) that EnsembleNet and base CNN models have similar performance on Skin-10, e.g. they all achieve high score on class 3, 5 and 8, but perform not well on class 1, 2, 4, and 9. Fig \ref{fig:skin10ensemble_analysis} (right) plots the confusion matrix of EnsembleNet, from which we can see that the classes that confuses EnsembleNet can be divided into two groups: (a) class 0, 2 and 9. (b) class 1, 3, 4, 6 and 7. The reason why the accuracy of class 0 and 3 is relatively higher probably is that they have much more images. But why is the accuracy of class 5 and 8 is high even though the number of images in both classes is not as many as class 0 and 3? Based on the observation of the images of different classes, we find that most of the lesion locations of class 5 and 8 are nails and legs, respectively, while the lesions of other classes are distributed in similar regions (e.g. faces, chest or unknown area) and their visual features also look similar. Hence, we can conclude that for class 5 and 8, most of their lesions are distributed in the specific regions, so the CNN models can correctly classify them even if it does not correctly locate the lesion regions. However, for some classes with similar lesion locations, the CNN models may misclassify the images due to focusing on the wrong region or failure to extract effective and discriminative features from the lesion area.

\subsection{Object Detection based Classification}

To alleviate the problem of the plain CNN models, we evaluate the performance of two SOTA object detection models (RetinaNet and Faster-RCNN), respectively, which are expected to learn to detect and classify based on the skin lesion region. The process is shown in Fig \ref{fig:obnet}.

\begin{figure}
    \centering
    \includegraphics[width=0.48\textwidth]{obnet.pdf}
    \caption{An overview of object detection based method. The final prediction is made based on the box with the highest confidence score.}
    \label{fig:obnet}
\end{figure}

\subsubsection{Settings} The implementation of both RetinaNet and Faster-RCNN are publicly available in mmdetction\footnote{https://github.com/open-mmlab/mmdetection}. The backbone of both models is ResNeXt101\_64x4d. The input images are zoomed to 400$\times$400. The model is optimized by SGD with an initial learning rate of 0.001, and the learning rate is dropped by a factor of 10 every 10 epochs. Besides, for RetinaNet, the focal loss \cite{lin2017focal} is used to replace the commonly used cross-entropy loss, and we set $\alpha=0.25, \gamma=2$.

\subsubsection{Results and Analysis} Mean Average Precision (mAP) is one of the most commonly used metric for the object detection task. However, for Skin-10, each image corresponds to only one class of skin diseases, and we care more about whether the image is classified correctly. Therefore, we take the prediction of the box, which has the highest confidence, as the prediction of the image.

Let $\hat{y}_i$, $y_i$ be the prediction, ground truth for the $i$-th image, respectively. $w_i$ is the sample weight for $i$-th image, as defined in Equation \ref{eq:w_z}. $N$ and $C$ indicate the number of testing images and classes, respectively. Then the top-1 classification accuracy is defined as follows:

\begin{equation}
\begin{aligned}
\text {Accuracy} &=\frac{\sum_{i}^{N} \mathbb{1}\left(\hat{y}_{i}, y_{i}\right)}{N}, \mathbb{1}(p, q)=\left\{\begin{array}{ll}{1} & {\text { if } p=q} \\ {0} & {\text { if } p \neq q}\end{array}\right.\\
\text { s.t. } \hat{y}_{i} &=\underset{n}{\arg \max }\,\, b_{i}^{m n}, m \in\left[1, M_{i}\right], n \in\left[1, C\right]
\end{aligned}
\end{equation}

\noindent where $M^i$ represents the number of predicted boxes in the $i$-th image. $b_{i}^{m n}$ indicates the probability of being predicted as the $n$-th class for the $m$-th box in the $i$-th image.

It can be seen from the result in Table \ref{table:obj_det} that the classification accuracy of most classes is improved by detecting skin lesions. However, we can also find that the classification accuracy of some classes (e.g. class 8) decreases significantly for both RetinaNet and Faster-RCNN, instead. There are several possible explanations for this result. First, the prediction is only based on the box with the highest confidence. In other words, it loses the global features that are important for classification, which further confirms the conclusion of the previous experiment that the reason why base CNN models can achieve higher classification accuracy in some classes (e.g. class 8) is because lesion locations of these classes are unique and not easy to be confused by other classes. Second, although both object detection models can detect lesions well in most cases, it may detect the wrong area or even fail to detect any targets when the skin lesion area is not clear or affected by background noise, thus leading to failure of prediction.

\section{Conclusions and Future Work}
\label{section:conclusion}

In this paper, we investigated how deep learning techniques could help image-based skin disease diagnosis. We developed two versions of clinical skin disease datasets from Internet images: Skin-10, which consists of 10,218 images of 10 common skin disease classes with bounding boxes surrounding the lesion, and Skin-100, which contains 19,807 images of 100 skin disease classes. We found that data cleaning is very important as it can help improve the top-1 accuracy by 4\% on average in our experiments. We also found that the ensemble method makes more efficient use of the dataset and outperforms any single CNN model on both Skin-10 and Skin-100. We further evaluated two SOTA object detection models that are used to reduce the influence of image background. Our results showed that the object detection models outperform the classification based solutions.

Although it is demonstrated that deep learning techniques can achieve satisfactory performance in skin disease image classification, there still exists room for further improvement. Based on the analysis of previous experimental results, we summarize the following directions worth studying in the future. First, the models generated by autoML technique may extract more discriminative features and are more robust to noisy data than human-designed models, therefore we can try to explore autoML technique to generate a task-specific architecture based on clinical skin disease datasets. Second, although the ensemble method is easy to implement and effective, it does not improve the accuracy of some hard-to-classify classes. Thus, how to improve the accuracy of these classes is still a challenging task. Third, object detection based approach can reduce the influence of background by detecting the local region of skin lesions, but it loses the global features. Hence, how to combine global and local features would be another promising work. At last, our dataset is built on Internet images and cannot be open to the public due to copyright issue. We hope the healthcare community can join hands to develop an open and large skin disease dataset.

\bibliographystyle{IEEEtran}

redpajama_set_name: RedPajamaArXiv


"I used to be weak, with frequent fevers, skin rash and I had lost weight" Mawanda Magezi a 42 years old resident of Buccuma village, Kigoma parish- Nyabubare-Bushenyi district, narrates as he recalls how his health conditions used to be before he knew his HIV status. Mawanda is farmer but a retired solider and a person living with HIV, married and with 3 children.
Integrated Community Based Initiatives (ICOBI). All rights reserved.


Welcome to the Sensory Solutions website. Here Sensory Solutions makes available to you a range of information and documents. Please review the following terms and conditions concerning your use of this site. By accessing, using or downloading materials from this Web site you agree to follow and be bound by these terms and conditions.
Copyright © 2003 Sensory Solutions (Pty) Ltd, All Rights Reserved.
b) you will not modify or alter the documents, publications or graphics in any way.
Except as expressly noted above, you may not use, download, upload, copy, print, display, perform, reproduce, publish, license, post, transmit or distribute any information from this Web site in whole or in part without the prior written permission of Sensory Solutions.
This Web site may contain hyperlinks to Web sites controlled by parties other than Sensory Solutions. Sensory Solutions is not responsible for and does not endorse or accept any responsibility over the contents or use of these Web sites.
WARRANTIES AND DISCLAIMERS THE INFORMATION, PRODUCTS AND SERVICES CONTAINED ON THIS WEB SITE MAY BE OUT OF DATE OR INCLUDE OMMISSIONS, INACCURACIES OR OTHER ERRORS. EXCEPT WHERE EXPRESSLY PROVIDED OTHERWISE IN AN AGREEMENT BETWEEN YOU AND SENSORY SOLUTIONS, ALL INFORMATION, PRODUCTS AND SERVICES ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. SENSORY SOLUTIONS HEREBY DISCLAIMS ALL WARRANTIES WITH RESPECT TO THIS INFORMATION, PRODUCTS AND SERVICES, WHETHER EXPRESS OR IMPLIED, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SENSORY SOLUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES, OR DAMAGES FOR LOSS OF PROFITS, REVENUE, DATA OR USE, INCURRED BY YOU OR ANY THIRD PARTY, WHETHER IN AN ACTION IN CONTRACT OR TORT, ARISING FROM YOUR ACCESS TO, OR USE OF, THIS WEB SITE OR ANY OTHER HYPERLINKED WEB SITE. SENSORY SOLUTIONS THE RIGHT TO MAKE CHANGES OR UPDATES TO THIS WEB SITE OR THE PRODUCTS OR PROGRAMS DESCRIBED IN THIS WEB SITE AT ANY TIME WITHOUT NOTICE.


Your cash flow cycle can be inconsistent and unpredictable. To help you succeed we provide an array of solutions to optimize your business cash flow. Whether you need financing for crops, livestock, or major equipment purchases, PNC has solutions to make your business more predictable.
Find cash flow opportunities and get answers.
Agriculture is an industry with unique banking needs due to cash flow seasonality and marketplace cycles.
A custom banking approach is necessary to keep your cash flow consistent and predictable. Whether you're a lifestyle farmer, own a small farm, operate a large commercial farm, or run an agri-business, PNC has the products, services and experience to help you achieve your goals.
A longtime champion of the agriculture industry, PNC recognizes the impact of industry-wide disruptions and offers tools, insights and ideas to help businesses prevail in the face of adversity.
Shortly after Bob Allsbrook took the reins of his family's feed, seed and fertilizer business in 1972, a government dairy buyout caused him to rethink the direction of the company.
Each year, ARC Ferns produces more than 10 million fern liners for growers, nurseries and resellers throughout the country.
An annual financial review helps you see where your farm stands today and make plans to keep it running strong over the short and long term.
MPP adds a new dimension to your insurance coverage. Find out how it can help.
To increase the chances that your farm will be part of your family's future, embrace communication today.
Your cash flow cycle can be inconsistent and unpredictable. We understand the unique challenges your business faces and the special role that cash flow plays in your success. To help you succeed we provide an array of solutions to optimize your business cash flow.Whether you need financing for crops, livestock, or major equipment purchases, PNC has solutions that make your business more predictable, including flexible repayment schedules. Additionally, we can help accelerate the collection of receivables, monitor and project cash, and improve the ways you make payments. We also offer a full suite of online tools and reporting for easy account analysis. Explore all of these solutions in more detail below.
PNC offers business checking accounts with features for the needs of your farm or agri-business.
Talk to us about your agriculture business, where you want it to go, and how we can help you get it there. Your PNC Agricultural Banker will identify key components of your business' revenue cycle, and help you select the options best suited for your needs.
Stop into your neighborhood PNC Bank to discuss your agriculture operation's plans and expectations.
Submit our Contact form below.
You can expect to hear back from a PNC Ag Banker in 1 - 2 days.
Submit our Contact Form and a dedicated Agriculture Banker will get back to you in 1-2 days.
Cash Flow Insight℠ helps you speed up receivables, stay on top of payables, store documents online, and sync with your accounting software.
Which Line of Credit Works for You?
Compare our Business Lines of Credit to find the one best suited to your business needs.
In addition to a business plan and a mission statement, cash flow management is a key component of small business success.
If you own a business, it inevitably will be passed along to someone else in the future. Here's why it's important to plan ahead for the transition.
As reported by the FDIC, based on aggregate loan volume.


text:
Table of Contents » Title 13.1. Corporations » Chapter 12. Virginia Limited Liability Company Act » Article 9. Dissolution » § 13.1-1049.2. Other claims against dissolved limited liability company
Title 13.1. Corporations
Chapter 12. Virginia Limited Liability Company Act
§ 13.1-1049.2. Other claims against dissolved limited liability company.
A. A dissolved limited liability company may also publish notice of its dissolution and request that persons with claims against the dissolved limited liability company present them in accordance with the notice.
B. The notice shall:
1. Be published one time in a newspaper of general circulation in the city or county where the dissolved limited liability company's principal office, or, if none in the Commonwealth, its registered office, is or was last located;
2. Describe the information that must be included in a claim and provide a mailing address where the claim may be sent; and
3. State that a claim against the dissolved limited liability company will be barred unless a proceeding to enforce the claim is commenced prior to the earlier of the expiration of any applicable statute of limitations or three years after the date of publication of the notice.
C. If the dissolved limited liability company publishes a newspaper notice in accordance with subsection B, the claim of each of the following claimants is barred unless the claimant commences a proceeding to enforce the claim against the dissolved limited liability company prior to the earlier of the expiration of any applicable statute of limitations or three years after the publication date of the newspaper notice:
1. A claimant who was not given written notice under § 13.1-1049.1;
2. A claimant whose claim was timely sent to the dissolved limited liability company but not acted on; and
3. A claimant whose claim does not meet the definition of a claim in subsection D of § 13.1-1049.1.
D. A claim that is not barred by subsection C of § 13.1-1049.1 or subsection C of § 13.1-1049.2 may be enforced:
1. Against the dissolved limited liability company, to the extent of its undistributed assets; or
2. Except as provided in subsection D of § 13.1-1049.3, if the assets have been distributed in liquidation, against a member of the dissolved limited liability company to the extent of the member's pro rata share of the claim or the limited liability company assets distributed to the member in liquidation, whichever is less, but a member's total liability for all claims under this section may not exceed the total amount of assets distributed to the member.
2006, c. 912.

redpajama_set_name: RedPajamaCommonCrawl


The Inline Water Filter effectively reduces Chlorine, Taste & Odor, Rust, Dirt and Sediment. Installation instructions included directly on the filter.
Please note: If you Filter system or fridge did not come with a Pressure Limiting Valve (PLV) its highly recommended one is installed when changing your filter. They can be found here. PLV's protect you fridge and kitchen against water hammer and water surges.


text:
Q: how to return JsonP from a WCP request? I want to build a WCF service that will return a JsonP request.  I want it to return the following,
jsonpCallback({"fileNames":"IDR023.T.201705201412.png, IDR023.T.201705201418.png"});
So I created the following WCF Service
IBOM.cs
  [ServiceContract]
    public interface IBOM
    {
        [OperationContract]
        [WebInvoke(Method = "GET",
            ResponseFormat = WebMessageFormat.Json)]
        string GetData();
    }

BOM.cs
 public class BOM : IBOM
    {

        public string GetData()
        {
            return "jsonpCallback({\"fileNames\":\"IDR023.T.201705201412.png, IDR023.T.201705201418.png\"});";

        }
    }

Webconfig
<?xml version="1.0"?>
<configuration>

  <system.web>
    <compilation debug="true" targetFramework="4.0" />
  </system.web>
  <system.serviceModel>
    <services>
      <service name="BomService.BOM" behaviorConfiguration="ServiceBehaviour">
        <!-- Service Endpoints -->
        <!-- Unless fully qualified, address is relative to base address supplied above -->
        <endpoint address ="" binding="webHttpBinding" contract="BomService.IBOM" behaviorConfiguration="web">
          <!--
              Upon deployment, the following identity element should be removed or replaced to reflect the
              identity under which the deployed service runs.  If removed, WCF will infer an appropriate identity
              automatically.
          -->
        </endpoint>
      </service>
    </services>

    <behaviors>
      <serviceBehaviors>
        <behavior name="ServiceBehaviour">
          <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
          <serviceMetadata httpGetEnabled="true"/>
          <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
          <serviceDebug includeExceptionDetailInFaults="false"/>
        </behavior>
      </serviceBehaviors>
      <endpointBehaviors>
        <behavior name="web">
          <webHttp/>
        </behavior>
      </endpointBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
  </system.serviceModel>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>

</configuration>

But I am getting back
"jsonpCallback({\"fileNames\":\"IDR023.T.201705201412.png, IDR023.T.201705201418.png\"});"
I am returning a string and trying to set it up to return what I need.  Is this the best way for JSONP? or is there a better way to achieve what I need
Thanks

A: For anyone who is interested, I worked it out.  Here is the code.
IBOM
[ServiceContract]
public interface IBOM
{
[OperationContract]
[WebInvoke(Method = "GET",
    ResponseFormat = WebMessageFormat.Json)]
Stream GetData();

}
BOM
public class BOM : IBOM
    {
      public Stream GetData()
        {

            string jsCode = "jsonpCallback" + "({\Test:\"" + fileNames +   "\"});";
            WebOperationContext.Current.OutgoingResponse.ContentType = "application/javascript";
            return new MemoryStream(Encoding.UTF8.GetBytes(jsCode));

        }

redpajama_set_name: RedPajamaStackExchange


text:
Q: span is getting added with AspNetDisabled class in sample application. but not in our project if we disable the control In my Project,

<input id="_ctl0_ContentHolderArea_CheckBox1" type="checkbox" name="_ctl0:ContentHolderArea:CheckBox1" disabled="disabled" />

In Sample,

<input id="CheckBox1" type="checkbox" name="CheckBox1" disabled="disabled" />

A: Are you using Framework 4.0? XHTML standards say that only Input types can have a Diasbled parameter (even though it works in most browsers) - so in 4.0 M$ changed the HTML rendering for non-Input tags to use the aspNetDisabled class instead (actaully as well in many cases). If you compile against 3.5 or earlier, you will not get the new class.
Note that there is a .InputAttributes.Add command to (which stops the HTML rendering still putting the Disabled=Disabled parameter out) which can be used for checkboxes and radio buttons instead of Attributes.Add for adding disabled attribute.


Westercon 64 follows the traditional practice of making complimentary space available for other non-commercial fan activities such as other conventions and clubs. Fan Tables will be located in the hallways outside the function rooms, and will not be secured overnight. To request a fan table, contact Bobbie DuFault at fantables [at] westercon64.org.
Note that if your fan group is selling anything subject to California sales tax (such as t-shirts, but not including club and convention memberships), your group will need to have a California resale number ("seller's permit") regardless of your total sales. If your group needs but does not have a California seller's permit, you can obtain a free temporary permit by filing with the California State Board of Equalization (link opens PDF of application form). Also please note that even if your group is tax-exempt under IRS 501(c)(3), you are still subject to collecting and paying California sales tax on taxable merchandise.
You will not need a City of San José business license; groups qualified for fan tables will fall into at least one of the exemptions from San José business taxes.
Bobbie changed her email address, I'll get this fixed. Thanks, Spike.
Email updated. The alias should work, now.
Sorry about that Spike. Verizon sold out to Frontier in my neck of the woods and I didn't realize that we had the fan table data going to that email.
Did you get your fan table request re-submitted?
I'm not Glenn, but I am the person who does most of the website content editing, not to mention the person who committed the typo in the first place. Thanks for reporting it, and it's fixed now.


text:
'''This is a very basic example of docstrings.

    :note: only for demonstration

'''

redpajama_set_name: RedPajamaGithub


On 1/23 Kalyn Comings wrote: During the hard economic times of the past year, journalist Lorilee Craker figured it was time to divulge the financial secrets of the elusive Amish. She conducted her research among multiple Amish homes to discover their tips and tricks to saving cash. Money Secrets of the Amish concludes her findings. Although ... "Money Secrets...."


text:
<!DOCTYPE html>

		<meta charset="utf-8">
		<meta name="viewport" content="width=device-width, initial-scale=1">
		<meta name="description" content="SeventyTwo - Premium Coming Soon Template">
		<meta name="author" content="http://choco-pixel.com">
		<title>SeventyTwo - Premium Coming Soon Template</title>

		<link href="css/bootstrap.min.css" rel="stylesheet">
		<link href="css/font-awesome.min.css" rel="stylesheet">
		<link href="css/bootstrapValidator.min.css" rel="stylesheet">
		<link href="css/ladda-themeless.min.css" rel="stylesheet">
		<link href="css/animate.min.css" rel="stylesheet">
		<link href="css/owl.carousel.css" rel="stylesheet">
		<link href="css/owl.theme.css" rel="stylesheet">
		<link href="css/app.css" rel="stylesheet">

		<link rel="shortcut icon" href="img/favicon/favicon.ico" type="image/x-icon">
		<link rel="icon" href="img/favicon/favicon.ico" type="image/x-icon">

coming soon

							Sed facilisis magna sapien.
							Mauris interdum condimentum vestibulum.

						<form class="form-inline signup" action="php/signupForm.php" role="form" id="signupForm">

								<input type="email" name="email" class="form-control" placeholder="Email address">

								<button type="submit" class="btn btn-theme ladda-button" data-style="expand-left">Get notified!</button>

						</form>

About

							Curabitur molestie libero ut enim egestas
							placerat. Sed facilisis magna sapien, id tincidunt metus
							adipiscing sed. Aliquam viverra sagittis quam vel sagittis.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.
							Mauris interdum condimentum vestibulum. Proin ullamcorper
							lorem adipiscing elit ornare, et lobortis tortor fringilla.
							Curabitur non volutpat justo, at posuere dolor.
							Fusce eu tellus vel tellus porttitor aliquet. Etiam ullamcorper
							laoreet lectus ut suscipit. Quisque luctus felis sed ante elementum condimentum.
							Praesent sagittis odio eu ante sollicitudin, vel commodo
							odio viverra.

Phasellus lobortis

Fusce eu tellus vel tellus porttitor aliquet.
											Etiam ullamcorper laoreet lectus ut suscipit.
											Felis sed ante.

Donec rutrum vitae

Quisque luctus felis sed ante elementum condimentum.
											Praesent sagittis odio eu ante sollicitudin

Nunc consectetur

Sed ipsum nulla, eleifend ac consectetur ut, vehicula sed lacus.
											Quisque lectus sem, vestibulum vel nibh.

Our team

John Doe

								Developer

Fusce pulvinar dui eu dignissim semper. Donec non tellus felis. Vivamus dapibus placerat.

Jessica Smith

								Designer

Sed posuere eu sem ac consectetur. Integer suscipit diam odio, in tincidunt dui aliquet eget.

Tom Wilson

								CEO

Vivamus dapibus placerat tincidunt.
									Donec sit amet justo eget dolor vehicula tincidunt eu ut est.

Sophie Brown

								Product manager

Phasellus malesuada augue erat, quis mollis magna fermentum at. Donec lobortis ante et dictum.

John Doe

								Developer

Fusce pulvinar dui eu dignissim semper. Donec non tellus felis. Vivamus dapibus placerat.

Jessica Smith

								Designer

Sed posuere eu sem ac consectetur. Integer suscipit diam odio, in tincidunt dui aliquet eget.

Tom Wilson

								CEO

Vivamus dapibus placerat tincidunt.
									Donec sit amet justo eget dolor vehicula tincidunt eu ut est.

Contact

							Integer suscipit gravida felis quis ornare.
							Pellentesque consectetur dui eu nulla vestibulum,
							ac euismod diam auctor.

 (123) 456-7890

 (123) 987-6543

 1795 Folsom Ave, Suite 600
 San Francisco, CA 94107

 info@seventytwo.com

						<form class="form-horizontal" action="php/contactForm.php" method="post" role="form" id="contactForm">

									<input type="text" name="name" class="form-control" placeholder="Name">

									<input type="text" name="contactEmail" class="form-control" placeholder="Email">

									<textarea name="message" class="form-control" rows="8" placeholder="Message"></textarea>

									<button type="submit" class="btn btn-theme ladda-button" data-style="expand-left">
										Submit
									</button>

						</form>


"What is the difference between German Rottweilers and American Rottweilers?"
The most obvious difference is that the German Rottweilers now have tails. German breeders must breed in strict compliance to the standard. Their dogs must pass a breed suitability test and have their hips certified before breeding.
American breeders are not required to test their dogs before they breed. American bloodline Rottweilers typically do not meet the breed standard. They do not have the structure or temperament of a correctly bred (German) Rottweiler.
A true Rottweiler exemplifies breed type, possesses a stable temperament and has strong working ability. The Rottweiler should be free from inheritable diseases such as hip dysplasia.
In Germany , both parents of a litter must be temperament tested (BH title), breed tested (Ztp) and have their hips certified. One parent must be Schutzhund titled. These stringent requirements eliminate lesser quality dogs from the gene pool.
ADRK breeders are required to use Dogbase before they can breed a litter. Of course, not every German dog is superior.
Many German dogs exported to the U.S. as adults are "rejects" and are not typical of the quality found in Germany. An experienced importer such as vom Aztlan Kennels should be consulted by people wishing to import a top quality German dog.
In the U.S., a litter of puppies may be registered without any fitness for breeding tests. The American Kennel Club registers pups from any Rottweiler combination (assuming both parents are AKC registered). The parents may have bad hips, missing teeth, yellow eyes, white spots, or weak temperament.
This is why the overall quality of American bloodline dogs is very poor. The majority of strictly American dogs are no longer true Rottweilers. These dogs do not meet the Breed Standard, despite having American Championship titles. Many are oversized with very light eyes, pink mouths, missing teeth, wrinkly heads, unstable temperaments and NO working ability!!
A dog that cannot pass a breed test, temperament test or obtain a Schutzhund title should NOT be bred. The Rottweiler is a working breed. The Rottweiler is always ready to work and will protect his family without being unpredictable and dangerous. The Rottweiler is a loyal friend and eager to please.
We maintain these traits in our kennel by breeding only from the finest German bloodline dogs.
At. Vom Aztlan Rottweilers strives to produce a sound German Rottweiler with exceptional conformation and high drive. A German Rottweiler was bred first and foremost for a clear stable temperament. Our Rottweiler Puppies that we produce are bred with the same intent as the ADRK German Breeders.
Beware of breeders in the US who tell you they breed German Rottweilers. Many European breeders are no better than Americas backyard breeders. Most European countries do not have required breeding standards; hence, their breeding programs are inferior to German bred Rottweilers. Only German born dogs have been bred by the strictest standards in the world. Remember that many breeders will tell you that European Rottweilers or European bloodlines are the same or equal to German bred Rottweilers. We take this task of helping you in determining what temperamental attributes are best suited to your current living situation very seriously. It's our obligation as breeders to aid you and our puppies in a correct placement. All homes are interviewed to assess their needs and to determine the appropriate temperament type for their situation. All of our puppies receive Early Neurological Stimulation and are formally temperament tested.
Our dogs are confident and temperament tests to be kid friendly. Our male Rottweiler puppies for sale. Our female Rottweiler puppies for sale. There are times when older puppies or adults are available to loving homes even if they are not listed. A purchase price of a puppy is only a fraction of the costs a responsible dog ownership entails, and we feel those who are unable or unwilling to afford a quality puppy will not be willing or able to afford quality care. Bargaining over a puppy or an adult dog is absolutely not acceptable in our kennel.
We have two upcoming Rottweiler litters for sale. We hope you'll enjoy your visit and stop back by soon as we are always adding new pictures of our adults and Rottweiler puppies and information and articles about the breed. We breed Rottweilers that can live in any home and competitively compete and campaign at shows and working fields here, in Europe, and the world.
Rottweiler puppies for sale come with AKC registration, health guarantees, hip guarantees, copy of sire and dam pedigrees, legal contract, and Rottweilers can be sent world wide. All our Rottweiler puppies and adult Rottweilers are family raised with our three children. In our Rottweiler breedings, we strive to produce Rottweiler puppies with correct conformation, excellent temperament, good bone substance, and extraordinary heads. Our goal at VAR Rottweilers is to better the Rottweiler breed by producing top quality, sound Rottweiler puppies. With over ten years of Rottweiler breeding experience, we offer German Rottweiler puppies for sale from the best European Rottweiler bloodlines around the world, including the finest ADRK German Rottweiler studs.


text:
@class NCMessagesCollection;

@interface NCMessagesTableViewController : UITableViewController<NCComposeMessageDelegate>

- (instancetype)initWithMessages:(NCMessagesCollection *)messages;
- (void)refreshMessagesWithIndicator;

@end


Presidential candidate and Davao City Mayor Rodrigo Duterte will visit Ilocos Norte on Friday in a bid to woo the Ilocano votes for the May national elections.
Ilocos Norte, a known bailiwick of the Marcoses, is known for its "Solid North" vote, which refers to the strong electoral support of the Ilocanos to the Marcos clan or to politicians they endorsed.
Duterte is expected to arrived at the Laoag International Airport at around 1 p.m. He will have a motorcade to the provincial capitol in Laoag City where he would pay a courtesy call to Gov. Imee Marcos, older sister of Senator Ferdinand Marcos Jr., who is running for the vice presidency.
Governor Imee is the oldest daughter of the late strongman Ferdinand Marcos Sr.
The tough-talking mayor is expected to have a press conference at the provincial capitol at around 2 p.m.
The mayor will also meet with local officials, the Muslim groups in Ilocos Norte, Filipino-Chinese Chamber of Commerce and the women's sector to discuss federalism, among other issues.
Duterte and Gov. Marcos will also meet with Monsignor Mario Garaza of Laoag.
Accompanied by Gov.Marcos, Duterte would visit the Marcos Museum and Mausoleum in Batac where the glass-encased coffin bearing Ferdinand Sr.'s embalmed body. It has been on public display since Ferdinand Sr.'s remains were brought home in 1993.
Before leaving for Manila, Duterte will address students and faculty members of the Mariano Marcos State University at around 4:40 p.m.
In previous speaking engagements, Duterte has said that the late President Marcos was the brightest Philippine President except for the time he refused to step down from office.
Duterte said it was under the Marcos regime when the government introduced "Biyayang Dagat," a program for fishermen, and "Masagana 99," which benefited rice farmers.


text:
Amnesty International UK / Blogs
Belfast and Beyond
Staff blog RSS feed
Hello from the Belfast Youth Group!
Posted 05 Jul 2008, 5:02pm By Fifi
This is Laura from the Belfast Amnesty Youth Group – the first non-school youth group in Northern Ireland. This is just an outline of who we are, and saying hello!
We've been running since the end of February 2008. Our meetings were originally monthly but due to popular demand were changed to fortnightly! Every other Saturday afternoon between 2pm and 4pm, between 10 and 20 young people descend on the Include Youth offices in Rosemary Street. It's a great venue, not least because there are several fab coffee shops nearby. :)
While initial meetings were on general human rights, we began to focus on several campaigns from Amnesty, settling on 'Human Rights In China'. Jaz and Emma led us in making posters, sending postcards, and getting the word out.
Our first action was 26th June. With a convenient backdrop of a massive sculpture of Gulliver, we set up banners (which have disintegrated – rest in peace, banner!), placards, got out our clipboards, and got to work. For several hours, we spoke to shoppers, builders, teenagers and Billy Connolly about the China campaign. There were stickers, origami swans and China postcards everywhere! Luckily it didn't rain until the action was almost over!
Meetings are ongoing, and you're welcome to come along to see what we're all about.
check http://www.bebo.com/AmnestyYouthNI for up-to-date details.
Laura :)
About Amnesty UK Blogs
Our blogs are written by Amnesty International staff, volunteers and other interested individuals, to encourage debate around human rights issues. They do not necessarily represent the views of Amnesty International.
Don't have an account? Create one now
Posted 05 Jul 2008, 5:02pm
By Fifi
...like many not-for-profit organisations, our fundraising has been affected by the coronavirus pandemic. Amnesty International UK depends on the generosity of our supporters to fund our ongoing fight for human rights. Our usual work must continue, and we must now also ensure governments around the world are doing enough to protect vulnerable people during this pandemic. Your donation, however big or small, is valuable.
If you are able to help, please chip in today and help the fight for humanity and human rights to continue.


A mostly sunny day here, and we made it into the low sixties Fahrenheit. However, we now have a winter storm warning and we're looking at as much as 3" of snow before 9 a.m. tomorrow, after the temperature drops below freezing tonight. Currently, it's 56˚F.
Today, I wrote the first 1,060 words of something I'm called "Untitled 43."
And I began reading John Kennedy Toole's The Confederacy of Dunces for the first time since 1996.
After the writing, we went to the post office, where a modest check from Writer's House awaited me (mostly royalties on Threshold), as well as (finally) an ARC of The Best of Caitlín R. Kiernan. Then we visited Irondale Pickers, a marvelous place. On the way home, we stopped at Winn-Dixie, where everyone was buying bread and milk and beer. Spooky made spaghetti.
Lydia wants to be a gargoyle when she grows up.
Congratulations on being in Output today. Great when the breakthrough happens.
Confederacy is my favorite novel. I have never been to New Orleans, certainly not in the time he tells about. It feels like a time capsule. I suspect I will become Miss Trixie when I get old.
Lydia will be an excellent gargoyle, does she have her wings tucked in?
Congrats on the writing and successful trip to the post office!


Bhairab Nath Iron Industires Pvt. Ltd.
The company is involved in manufacturing and selling different iron made products such as furniture, staircase, transformer boxes, etc.
DANFE METAL INDUSTRY is located in Ind.State, Lalitpur, Nepal. Company is working in Industrial equipment, Industrial services, Furniture business activities.
Mitta Traders is involved in the business of making and exporting paintings and thankas and silver handicrafts.


Louisburg sophomore Ben Guetterman puts up a shot over a couple Spring Hill defenders Friday during the Wildcats' game at Spring Hill High School.
"Spring Hill took us out of rhythm a little bit," Louisburg coach Ty Pfannenstiel said. "I knew they had that zone in their pocket and I am surprised they didn't use it the first time we played them. That is the first time a team we have played has primarily went zone against us. We have seen it a few times here and there, but with their length, they were able to cause some problems for us. We were pretty passive against it, we didn't' pass really well out of it and we didn't catch ready to shoot.
Louisburg had a tough time containing Spring Hill senior Brennen Feeback as he recorded a double-double with 19 points and 11 rebounds.


text:
It's Not a "War on Terror"
The FBI's Anthrax TV Show
Using the Patriot Act to Target Patriots
by Cliff Kincaid on August 10, 2004
John Kerry voted for the anti-terrorist law, the USA Patriot Act, but now wants to change it and replace Attorney General John Ashcroft with someone "who actually upholds the Constitution of the United States." However, the liberal critics never cite alleged "abuses" under the law involving the anthrax investigation, which has been driven by Kerry's Democratic colleagues, Senators Patrick Leahy and Thomas Daschle.
The Patriot Act has been used to obtain search warrants against doctors and scientists who had been warning about the threat of bioterrorism in the U.S. The most prominent such cases are Dr. Steven Hatfill and now Dr. Kenneth Berry. No evidence has been produced against either man, but the highly publicized raids on their homes?and the media feeding frenzy?give the fleeting impression that the Bureau is making progress.
Yet it appears that Hatfill and Berry have become FBI targets primarily because they warned America about terrorism that the FBI and the CIA didn't prevent.
The same FBI that falsely implicated security guard Richard Jewell in the Olympic Park bombing has made several mistakes in the anthrax case. The first mistake was assuming that Leahy and Daschle received anthrax letters because they were liberals. Leahy's influential chief of staff, who pushed this theory, was quoted in Marilyn Thompson's book on the case as saying the anthrax killer was a "right-wing zealot." Daschle offered his opinion that the perpetrator probably had a U.S. military background. This fit an FBI profile of the alleged perpetrator. Barbara Hatch Rosenberg, a leading advocate of this view, met with the FBI and Leahy's staff and pointed them toward Hatfill, a former U.S. government scientist. Her views were echoed by New York Times columnist Nicholas Kristof and other media.
Under media assault, Hatfill was labeled a "person of interest" by Ashcroft. After losing several jobs because of government and media scrutiny, he has filed suit against the Justice Department and Kristof and the Times.
The second key FBI mistake was thinking that the Ames strain of anthrax, used in U.S. labs and found in the letters, was not available to foreign terrorists.
These mistakes explain why the Justice Department, in a 29-page report on the Patriot Act, cited dozens of cases in which the law has been beneficial but had only one anthrax-related "success" story. It said that investigators "saved valuable time" by using the Patriot Act to apply for a search warrant for American Media, Inc. in Boca Raton, Florida, the employer of the first anthrax victim.
The reference to "saving valuable time" ignores the fact that it took the FBI nearly a year after the attacks to start a crime-scene investigation of the American Media building. The decontamination of the building only started this July.
Former CIA Director James Woolsey says it is time to change the FBI assumption that the anthrax attacks were perpetrated by "a crazed solitary American microbiologist operating out of a cave" in the U.S.
Such a theory, he pointed out at a June symposium at the American Enterprise Institute, means that the perpetrator was either "a very quick crazed solitary microbiologist" or "a very lucky crazed solitary microbiologist," because he was ready to mail his anthrax letters shortly after al Qaeda hit the U.S. on 9/11.
According to the FBI theory, this crazed scientist even wrote like an Islamic radical, putting references to "Death to Israel" and praise for Allah on the letters, only as a diversion.
Woolsey noted the evidence that in the summer before 9/11, hijacker Muhammad Atta took an associate, who turned out to be one of the other hijackers, in for medical treatment in Florida, near the first anthrax attacks and near where they lived. He had a black lesion on his leg that a doctor and experts say was anthrax-related. Woolsey said, "That raises some interesting questions which again I would suggest we should pursue rather than bury."
Ignoring the al-Qaeda connection to the anthrax attacks, the FBI's targeting of Berry continues the questionable behavior evident in the Hatfill case. As some of their agents wore protective suits to dramatically enter one of Berry's homes, the FBI was telling local officials there was no danger to public health. It looked like another big show and photo opportunity, similar to what occurred when the FBI raided Hatfill's home.
Journalists should be investigating how the Bureau obtained search warrants in the Berry case and what, if any, "evidence" is contained in them. There may be a story here about real abuses of the USA Patriot Act and why the FBI has been unable to solve this nearly three-year-old case.
Cliff Kincaid is the Director of the AIM Center for Investigative Journalism and can be contacted at cliff.kincaid@aim.org.	View the complete archives from Cliff Kincaid.
Comments are turned off for this article.


The government has renewed the emphasis on the privacy element of its identity assurance (IA) programme with the announcement of a new privacy officer role within the GOV.UK Verify team.
The move has been signalled in a Verify blogpost by Toby Stevens (pictured), a long term adviser to the government on privacy issues and chief executive of the Enterprise Privacy Group.
He said it reflects the need to deal with the "healthy tension" between convenience for the user, security and protecting privacy. The Verify team has been using iterative delivery techniques to strike the right balance, but it has been decided that there is a need for someone in the team to represent privacy needs.
He said the new official will provide a focal point for decisions that could affect the use of personal data, and manage the dialogue between Verify users, developers at the Government Digital Service, certified IA providers and the departments that use the service. The new official will also work closely with the independent Privacy and Advisory Group, which has been providing input to the programme.
Stevens is assuming the role on an interim basis, and the Cabinet Office has published an advertisement for someone to take it on long term. It emphasises the advocacy element of the position, and says it would be suited to someone with a hands on working style who can bring together the various teams.
Protecting users' privacy has been an important element of the Verify programme from the beginning. The National Identity Card Programme, which was abandoned with the change of government in 2010, was frequently attacked as a threat to the privacy of people using the cards.
Verify has been developed as an alternative approach with the aim of providing more protection for users' privacy.
It involves using one of nine certified companies to confirm that a service user has provided the correct identity. They perform checks for the initial verification and can then provide authentication to a public authority through an online hub.


What is the countryside like near the surf spots in Central Morocco?
What are the dangers for surfers visiting in Central Morocco?
Are there any shops to buy surfing products close to the North Morocco surf spots?
Are the North Morocco surf spots very crowded?
What are the safety instructions for visitors going to surf spots in Central Morocco?
How is the climate near the surf spots in Central Morocco?


So, chemo has begun. Twice a day Scott mixes up the concoction; it's so dangerous that he wears a mask and gloves to handle the meds. Then we put it in a syringe and give it to our kid. We have to be careful not to touch any dribbles or let it sit on his skin. So bizarre.
Other than trying to cope with it mentally, things are good for now. I thought I'd share this cutie video of Thomas singing and dancing. I was going to wait for Christmas, but I'm sure we'll get some more footage before then (Sorry about the quality; I can't believe how cutting edge that camera was when Thomas was born!).
Our keyboard plays "Jingle Bells". Ava likes to turn it up all the way and sing to it.
This is so darn cute. Check out that Rhythmn he is going to be dancing like his grandpa in no time. Hopefully not the crazy dancing around the house. :)You know what I am talking about.
Ah, the joy of givng chemo. Stuff that they give you dire warnings about getting on to you. But you have to give it to your child. The irony of it all.


text:
Q: when i try to run my discord bot it tells gives me a module error     import discord
from discord.ext import commands

client = commands.bot(command_prefix = '%')

@client.command(name='scp')
async def scp(context):
    mods_channel = client.get_channel(806352117442543616)

    scp = discord.embed(title="scp wiki", description="http://www.scpwiki.com/scp-series", color=0xCC0000)

    await context.message.channel.send(embed=scp)

@client.event
async def on_ready():
    #do stuff

    mods_channel = client.get_channel(806352117442543616)
    await mods_channel.send('i work! ')

@client.event
async def on_typing():
    mods_channel = client.get_channel(806352117442543616)
    await mods_channel.send('i wonder what you are going to say :thinking:')

@client.event
async def on_message(message):
    if message.content == 'hello Irantu' or message.content == 'hello irantu':
        mods_channel = client.get_channel(806352117442543616)
        await mods_channel.send('HI! :smile:')
#run client

Whenever I run it, it gives me TypeError: 'module' object is not callable.
this is for a discord bot that i am making for an scp themed discord server
This was all done with Visual Studio Code using Python 3.9.4.

A: You are trying to call discord.ext.commands.bot, which is a module. You are probably looking for discord.ext.commands.Bot:
from discord.ext import commands

client = commands.Bot(command_prefix="%")


text:
Instagram Has Skyrocketed Since Facebook Acquisition
Though Facebook's purchase of photo application Instagram may not be final yet, Instragram has already been reaping the benefits of being associated with the social network. The app's blog reported that Instagram now has 80 million users, with more than 4 billion photos shared.
By Justin Lafferty
Though Facebook's purchase of photo application Instagram may not be final yet, Instragram has already been reaping the benefits of being associated with the social network. The app's blog reported that Instagram now has 80 million users, with more than 4 billion photos shared.
PC World notes that Instagram started off with about 30 million users as an iPhone app before Facebook's acquisition. The company has since made strides, adding an Android app that opened up the world of Instagram to millions of other smartphone users.
Instagram announced the news on its blog:
We're excited to announce that the Instagram community has grown to over 80 million registered users who have shared nearly 4 billion photos! Since we launched Instagram in October 2010, we've expanded from one platform to two, bringing Instagram to Android users as well as iOS users. As the community has grown, we've seen people sharing photos from all around the world, from South Korea to Bolivia, and even underwater!
We're humbled by the amazing photos from people's lives we see every day on Instagram, and thank you for being part of this growing community.
Readers: Were you an early adopter of Instagram, or have you recently started using it?
http://adweek.it/2jOEf7t


text:
Medical and Life Sciences Translational Fund
Building on the success of the previous Medical and Life Sciences Translational Fund (MLSTF), the University has received further funding from the Medical Research Council (MRC), and Wellcome to continue the scheme. MLSTF supports proof-of-concept projects at the earliest stages of translation. It funds researchers to accelerate the transition from discovery research to translational development projects by supporting preliminary work or feasibility studies to establish the viability of a translational approach.
This fund does not support exploratory basic science.
MLSTF is a consolidated fund comprising devolved funding from MRC and Wellcome. In 2021, the project managed fund will be in excess of £500k to 'pump-prime' the translation of novel therapeutics, devices, diagnostics and other therapeutic interventions (including 'repurposing of existing therapies') toward clinical testing.
Following the success of MLSTF 2020, the Novo Nordisk Innovation Fund call will continue to run alongside MLSTF this year. Projects addressing unmet patient need in diabetes and other cardiometabolic disease (obesity, cardiovascular, liver and renal disease) as well as within the field of rare endocrine and rare non-malignant blood diseases are eligible to apply for this stream.
The University of Oxford and Oxford Biomedica are pleased to announce the new Oxford Biomedica Innovation Fund which will run alongside MLSTF as a pilot funding stream in 2021. Projects focusing on the development of Advanced Medicinal Therapy Products are encouraged to apply. Oxford Biomedica are particularly interested in platform technologies such as lentivirus vectors, AAV, and lipid nanoparticles. Therapeutic areas of interest include gene and cell therapies in oncology, liver and neurology.
This year also welcomes an additional co-funding opportunity with Cancer Research UK (CRUK). This strand of funding will specifically support the translation of CRUK-funded research projects at Oxford. Applicants will have an opportunity to apply for CRUK's Project Development Funds after authorisation by CRUK at the EOI stage.
The Call for proposals and a copy of the Case for support form (also available through IRAMS) can be found here:
MLSTF Case for Support Application Form
The Fund supports goal-oriented translational research projects with a strong scientific rationale and which meet a clear and important translational medical need. Projects should also demonstrate distinct advantages over competing translational approaches that are in development or are already available in the marketplace. Projects should aim to provide sufficient preliminary data to establish proof of concept, strategic merit in a translational context, or the viability of a translational approach (i.e. to provide confidence in the underlying concept, before seeking more substantial funding from other sources), such as MRC Developmental Pathway Funding Scheme (DPFS), or equivalent schemes from other funders, or from industry. An explicit outcome of the award of MLSTF is that projects should subsequently be strong candidates for external follow-on translational funding.
To be competitive, the project proposal should identify a critical path for generating preliminary proof-of-concept data that supports moving to the next stage of translation. The project should be milestone-based with clearly articulated and quantifiable markers, which will form the basis of a rigorous monitoring process that will take place throughout the project's lifetime. All modalities of therapy and diagnostics including engineering/medical technology and bioinformatics approaches are welcomed. The research areas under which applications have been supported in the past include infection, immunity & AMR, vaccine science, oncology, neuroscience, mental health, rare diseases and regenerative medicine.
Applications demonstrating academic-industry collaboration are particularly encouraged, principles and policies of a MRC Industry Collaboration Agreement (MICA) should be followed, with heads of terms being agreed with partners prior to application submission. Please contact your local Research Services team who will be able to assist with this. Where the partner is an existing or prospective spinout, there must be a strong and clear case that the proposed project is a new stream of work and not additional development of the initial technology that was licenced to the spinout. It should also be clear that the spinout is the most appropriate company to support this particular project. A clear statement of how conflict of interest will be managed must be included.
It is envisaged that the available funds will finance in the region of 8-10 projects, with the Translational Research Office (TRO) providing project management support for the scheme and projects where appropriate.
Funding available from MLSTF will be up to £75k per project; awards will be made from MLSTF for direct costs only. Whilst a 'match' contribution is not mandatory, it is strongly encouraged. The cost of individual projects in this case can be up to £150k with applicants being required to demonstrate at least 50% matching from another source of the direct costs awarded. Applicants should note that the University Challenge Seed Fund is currently open for applications (closing date: Thursday 2 September 2021). Researchers should engage with both the TRO and Oxford University Innovation to discuss potential match funding models.
Projects should be in the region of 6-12 months, with funding for 12 month projects requiring full justification. Awards must commence within 2 months of the award being issued. All projects must be completed within 1 year of the start date and/or in line with overarching MRC and Wellcome grant conditions. Please ensure that your project is scheduled accordingly and that the timeline is appropriate to the objectives and milestones set out.
Please note funding will not support: entire translational projects; bridging funding or PhD studentships; continuation of normal research grants; and costs relating to protection of intellectual property. Please also note that PI or co-applicant salary is not an eligible cost. Awards will be managed from the Translational Research Office on behalf of the University. Applications, scores and reviewer comments may be shared with other internal University panels to ensure maximum value for money. An award condition is acceptance of a 'mid-term' review meeting with the Translational Research Office and a panel of experts to discuss progress made towards milestones
Novo Nordisk Innovation Fund
The Novo Nordisk Innovation Fund will be running for again this year under the umbrella of MLSTF. Projects addressing unmet patient need in diabetes and other cardiometabolic disease (obesity, cardiovascular, liver and renal disease) as well as within the field of rare endocrine and rare non-malignant blood diseases are eligible to apply for this stream. High priority will be given to projects that will identify and/or robustly validate novel targets in relevant diseases. Proposals should have or aim for strong human relevance (such as the use of human data, genetics and cells/tissues). Novo Nordisk are also interested in novel therapeutic modality development and drug delivery technologies, including technologies for oral delivery of peptides and proteins, technologies for intracellular delivery or tissue targeting of drugs as well as novel gene therapy approaches. Researchers with relevant programmes of activity are strongly encouraged to apply.
Oxford Biomedica Innovation Fund (OXBIF)
The Oxford Biomedica Innovation Fund will be running as a pilot funding stream in 2021 alongside MLSTF. Projects focusing on the development of Advanced Medicinal Therapy Products are encouraged to apply here. Oxford Biomedica are particularly interested in platform technologies such as lentivirus vectors, AAV, and lipid nanoparticles. Therapeutic areas of interest include, gene and cell therapies in oncology, liver and neurology. Researchers with relevant programmes of activity are strongly encouraged to apply.
To facilitate the co-development of projects with an appropriate Novo Nordisk researcher or an Oxford Biomedica researcher, Oxford-based investigators should submit a non-confidential Expression of Interest (EOI) to the Translational Research Office (TRO) by 12pm on Wednesday 15 September 2021. This EOI should provide a summary of the proposed project, including a summary of supporting background data, objectives and proposed outcomes of the project and a justification for support explaining how your proposal is aligned to the priority areas of Novo Nordisk or Oxford Biomedica as identified above.
Submit an Expression of Interest to the Novo Nordisk Innovation Fund
Submit an Expression of Interest to the Oxford Biomedica Innovation Fund
Funding provided will be in line with MLSTF, up to £75k per project with awards being made for direct costs only. It is anticipated that Novo Nordisk and Oxford Biomedica will each be co-funding two projects through this scheme in 2021. Intellectual property rights arising from NNIF-supported projects and OXBIF-supported projects will vest in the University of Oxford, with Novo Nordisk or Oxford Biomedica having a time-limited first right to negotiate an appropriate commercial licence. For further information please contact the TRO (translationalresearchoffice@medsci.ox.ac.uk).
Co-funding with Cancer Research UK
The TRO is pleased to announce the CRUK co-funding strand this year. This funding will specifically support the translation of CRUK-funded research projects ONLY. Applicants will have an opportunity to leverage CRUK's Project Development Funds after authorisation by CRUK at the EOI stage. A key requirement for this funding strand is that the funding would need to be used to deliver key go/no-go experiments for filing a patent and/or a key inflection point to enable the next step in translational development/commercialisation. It is expected that the investigator would be willing to openly co-operate with CRUK's technology transfer office to develop the IP strategy of the novel technology.
There is no EOI form for CRUK. However, interested applicants are encouraged to contact the TRO to schedule in a meeting with CRUK for non-confidential discussions to see if their proposal is eligible for the CRUK-MLSTF co-funding route. The EOI window is from 23 August to 15 September.


text:
package deployer

import (
	"fmt"

	"github.com/Originate/exosphere/src/types"
	"github.com/Originate/exosphere/src/types/deploy"
)

// GetServiceImageNames returns a mapping from service names to image name on the user's machine
func GetServiceImageNames(deployConfig deploy.Config, dockerCompose types.DockerCompose) map[string]string {
	images := map[string]string{}
	for _, serviceRole := range deployConfig.AppContext.Config.GetSortedServiceRoles() {
		dockerConfig := dockerCompose.Services[serviceRole]
		images[serviceRole] = buildImageName(dockerConfig, deployConfig.GetDockerComposeProjectName(), serviceRole)
	}
	return images
}

func buildImageName(dockerConfig types.DockerConfig, dockerComposeProjectName, serviceRole string) string {
	if dockerConfig.Image != "" {
		return dockerConfig.Image
	}
	return fmt.Sprintf("%s_%s", dockerComposeProjectName, serviceRole)
}


Showtime Construction was created in 2011 to serve the specific needs of local property management companies and income property owners. Showtime Construction has developed its programs based upon the experience and expertise acquired from more 20 years of professional general contracting experience.
No maintenance company is more qualified or better understands property owners' and property managers' specific needs than Showtime Construction.