text:
\section{INTRODUCTION}
\label{sec:intro}
Optical coherence tomography (OCT) is a well-established, noninvasive clinical imaging tool for in vivo viewing of cross-sectional images of optical nerve head (ONH) tissues with micrometer resolution \cite{RN54}. Although there have been vast improvements in imaging resolution, speed, and depth of OCT imaging, some limitations exist. Since OCT uses coherent illumination, speckle noise is a major source of noise that degrades the image quality of OCT B-scans \cite{RN13}.\\

Speckle noise is a multiplicative noise inherent in coherence imaging and is caused by multiple forward and backward scattering of light waves. It frequently reduces contrast and the grainy speckle noise pattern has been found to limit both the axial and lateral effective image resolution \cite{RN48}. Subtle but important morphological details, such as individual tissue layers \cite{RN33, RN34, RN35} are prevented from being identified and observed \cite{RN39}, making speckle noise detrimental to clinical diagnosis \cite{RN1}. \\

The most common speckle removal approach adopted in commercial OCT machines is B-scan averaging \cite{RN58}. Although high quality images can be produced using this technique, the longer scan durations required for this technique cause other artifacts such as registration errors \cite{RN17}, motion artifacts \cite{RN18} to appear on processed images due to eye or head motion \cite{RN50}. The inability of elderly or young patients to remain fixated for long periods of time further render this technique difficult to obtain 3D scans of the ONH \cite{RN60} of relatively good quality. \\

Furthermore, multi-frame averaging does not prevent OCT signals obtained from locations beneath retinal blood vessels from being significantly diminished due to the scattering at the blood flowing through retinal blood vessels. This phenomenon produces artifacts in OCT images known as retinal shadows. These artifacts appear perpendicular to retinal layers, interrupting tissue layer continuity and causing errors in segmentation \cite{RN23}.  This in turn leads to inaccurate extraction of important structural metrics such as thickness of the retinal nerve fiber layer (RNFL), which is important in glaucoma monitoring \cite{RN24}. Retinal shadows also reduce visibility of deep structures such as the anterior and posterior boundaries of the lamina cribrosa (LC), as weak, reflected signals from these structures are further attenuated by the lower incident light intensity within retinal shadows \cite{RN2}.
Recently, deep learning techniques have shown promise in reducing speckle noise. Mao et al. used a deep, fully convolutional encoding-decoding framework to suppress noise and perform super resolution analysis of input images \cite{RN20}. Later in 2018, Ma et al. proposed an edge-sensitive generative adversarial network (GAN) to remove speckle noise from OCT images produced by commercial scanners \cite{RN21}. Devalla et al. leveraged deep neural networks (DNNs), residual learning, and dilated convolutions to extract multi-scale features and contextual information to recover information lost due to speckle noise in OCT images of the ONH \cite{RN32}. Many other works attempted to remove speckle noise with varying success, with a common recognition of the major quality degrading factor that speckle noise inflict on OCT images \cite{RN40, RN41, RN42}.\\

Some have attempted to remove retinal shadows as well. In 2011, Girard et al. developed two OCT modelling approaches to be used in conjunction, one to compensate for light attenuation and the other to enhance contrast in OCT images \cite{RN2}. Later, in 2018, Vupparaboina et al. illustrated an improvement in choroid representation after shadow compensation \cite{RN26}. Our more recent work \cite{RN27} used a weighted custom loss function that removed shadows from multi-frame averaged images and illuminated faint features within retinal shadows. However, the above-mentioned algorithms require high quality images free from speckle noise and motion artifacts to function well, preventing users in possession of single-frame images and low-cost hardware from availing themselves to this technology. \\

The presence of speckle noise, motion artifacts, and retinal shadows often interact and overlap, complicating processes that attempt to alleviate and remove these quality degrading phenomena \cite{RN33, RN63}. Such attempts are often tedious and prone to errors, because multiple separate processes need to work together to remove each artifact individually, with the ordering of artifact removal causing issues for the other processes. In this study, we aimed to develop an algorithm to remove both speckle noise and retinal shadows within a single step. By doing so, we will be able to reduce the cost of OCT devices by using simpler OCT imaging hardware enhanced by software.

\section{METHODS}
\label{sec:methods}
\subsection{Patient Recruitment}
24 healthy subjects (average age: 28 years) were recruited at the Singapore National Eye Centre (SNEC). All subjects gave written informed consent. This study adhered to the tenets of the Declaration of Helsinki and was approved by the institutional review board of the hospital. The inclusion criteria for healthy subjects were an intraocular pressure (IOP) of less than 21mmHg and healthy optic nerves with a vertical cup-to-disc ratio of $\leq$ 0.5.

\subsection{OCT Imaging}
Recruited subjects were seated and imaged in dark room conditions by a single operator (TAT). A standard spectral domain OCT system (Spectralis; Heidelberg Engineering, Heidelberg, Germany) was used to image both eyes of each subject. Each volume contained 97 horizontal B-scans (32-µm distance between B-scans; 384 A-scans per B-scan) from a rectangular area 15° × 10° centered on the ONH.  We obtained a total of 2628 single-frame B-scans (noisy, without signal averaging) and 2628 multi-frame B-scans (clean, averaged over 75 frames). Enhanced depth imaging (EDI) \cite{RN69} and eye tracking \cite{RN70, RN72} modalities were used during the acquisition.

\subsection{Overall description}
Our algorithm was a single step approach to removing both speckle noise and retinal blood vessel shadows simultaneously. It had two actively-trained networks competing with one another. The first network was referred to as the shadow detector network, and it predicted which pixels would be considered as shadowed pixels. The second network was referred to as the image processor, and it aimed to remove shadows and speckle noise simultaneously from single-frame OCT images such that the first network (shadow detection network) could no longer identify shadowed pixels. Briefly, we trained the shadow detection network once on multi-frame images with added Gaussian noise with their corresponding manually segmented shadow mask as the ground truth. We added Gaussian noise instead of speckle noise as training deep learning models to denoise B-scans with Gaussian noise provided empirically better results. It is unfortunately, difficult to ascertain the reason for this phenomenon.\\

First, binary segmentation masks (size 496 × 384) were manually created for all 2328 training B-scans using ImageJ [29] by one observer (HC) where shadowed pixels were labelled as 1 and shadow-free pixels were labelled as 0. Next, we attempted to model single-frame images by creating "noisy" images. This was done by adding Gaussian noise to multi-frame images. Seven feature representations of each noisy image and its multi-frame counterpart were extracted using three pre-trained perceptual networks in order to train the image processor network to output multi-frame quality images from input noisy images. Finally, we trained the image processor network by passing the multi-frame image (with artificial Gaussian noise) as input and using the predicted binary masks as part of the loss function. More details about the overall algorithm can be found below (Fig. \ref{fig:1}).

\begin{figure}[H]
    \centering
    \includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{figure1.png}
    \caption{Overview of the proposed deep learning framework.}
    \label{fig:1}
\end{figure}

\subsection{Shadow Detection Network and Image Processor Network Architecture}
A neural network inspired by the UNet architecture \cite{RN64} (Fig. \ref{fig:2}) was trained with a simple binary cross entropy loss \cite{RN65}, using the noisy images (multi-frame + Gaussian noise) as inputs and the manually segmented masks as ground truths. This network had a sigmoid layer as its final activation, making it a per-pixel binary classifier. The shadow detector network first performed two convolutions with kernel size 3 and stride 1, followed by a ReLU activation \cite{RN66} after each convolution. Then, images were downsampled with a 2×2 kernel, halving the height and width of the feature maps. This occurred four times, with the number of feature maps at each smaller size increasing from 1 to 64, 128, 256, and 512, respectively. The shadow detection network was comprised of two towers. A downsampling tower halved the dimensions of the input image (size 512 × 512) via maxpooling to capture contextual information such as the spatial arrangement of tissues, and an upsampling tower sequentially restored it back to its original resolution to capture the local information such as tissue texture \cite{RN32}. Output images were then linearly scaled to values between 0 and 1 by subtraction of its minimum value and division by its maximum value.

\begin{figure}[H]
    \centering
    \includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{figure2.png}
    \caption{UNet Architecture used in the shadow detector network.}
    \label{fig:2}
\end{figure}

\subsection{Image Augmentation}
To ensure that our algorithm was robust and functioned on single-frame images with varying levels of noise and retinal shadows, we implemented online image rotation (-45° to 45°), XY translation (-50\% to 50\% of image size), image scaling (-50\% to +50\% of image size) and random horizontal flip during our training.

\subsection{Speckle Noise Modelling}
We needed to add noise to multi-frame images to simulate the speckle noise found in single-frame images. The goal was to train the image processor to remove this artificial noise and in turn enable the image processor network to remove genuine speckle noise found in single-frame OCT images. We found through experiments that speckle noise was able to be modelled as Gaussian noise ($\mu$ = 0, $\sigma$ = 1) multiplied with a uniform distribution (range 0.02 to 0.5). In addition, including a large range for the Gaussian model helped the algorithm to perform robustly on single-frame images, which had varying levels of noise. These numbers were experimentally obtained by qualitative assessment of test images generated from single-frame images. A new noise sample was created for every multi-frame image during training to encourage robust training of the image processor network.

\subsection{Feature Extraction}
As using mean squared error (MSE) directly on processed images as a loss function was found to produce blurring effects on processed images, we instead applied MSE onto extracted feature representations of noisy images and their corresponding multi-frame B-scans. To extract comprehensive feature representations of each image, we required capable, pre-trained networks for feature extraction. Our framework consisted of three pre-trained and frozen feature extraction networks (Fig. \ref{fig:1}). These frozen networks were used to extract features from input images and will henceforth be referred to as perceptual networks. We used the three classification networks trained on ImageNet as our perceptual networks, namely, EfficientNet-B4 \cite{RN43}, WideResnet101\_2 \cite{RN44}, and Resnext101\_32x8d \cite{RN45}. We leveraged the "ensemble effect" whereby gradients were averaged from three different highly accurate perceptual networks to produce a more accurate backpropagation update \cite{RN68} for the image processor network. High-level feature representations were extracted from the final convolutional layer of EfficientNet-B4, while both intermediate and high level feature representations were extracted from residual block 2, 4, 6, and 8 for WideResnet101\_2 and Resnext101\_32x8d for computation of content and style losses. Each feature representation of a processed image was compared to (using MSE) the feature representation of its corresponding multi-frame image. These comparisons were then included in a custom loss function that we describe in the next section.

\subsection{Loss Function for Training the Shadow Detector and Image Processor networks}
We successfully trained the image processor network and simultaneously removed speckle noise and retinal shadows using a combination of different loss functions. These losses were:

\subsubsection{Shadow Loss}
The shadow loss was defined to ensure that all shadows were effectively removed so that they become indistinguishable from surrounding tissues. When a given image X had been processed, it was passed to the shadow detector network to produce a predicted shadow mask, $M_\text{X}$ (with maximum pixel intensities equal to 1). All pixel intensities were then summed, and then normalized by dividing this sum with the sum of the pixels within the ground truth manually segmented mask. This normalized sum was defined as the shadow loss.

\subsubsection{Content Loss}
We used the content loss to ensure that critical information within all non-shadowed regions of a given image was retained after shadow correction. To compute content loss, we compared intermediate and high-level feature representations between a given processed image D and its corresponding multi-frame image C. Note that the content loss had been used in Style Transfer \cite{RN46} with great success at maintaining fine details and edges. We first applied the manually segmented shadow mask to the processed image, $D_\text{masked}$ and its corresponding multi-frame image, $C_\text{masked}$. This blocked out pixels in the retinal shadows so that the content loss would not be affected by any shadow removed. Next, we extracted feature representations from all perceptual networks for the processed image, and its corresponding multi-frame image. The content loss was then defined as:

\begin{equation} \label{eq:1}
L_\text{content} (D_\text{{masked}},C_\text{{masked}})= \sum\limits_{i=2,4,6,8}\frac{1}{C_{i} H_{i} W_{i}}  \lvert P_{i} (D_\text{masked} )-P_{i} (C_\text{masked} )\rvert^{2}
\end{equation}

\noindent where $P_i$ is a feature representation of the ith selected residual block of a perceptual network. Note that  i=2,4,6,8 for the WideResnet101\_2 and Resnext101\_32x8d perceptual network and i refers to the last convolutional layer of the EfficientNet-B4 perceptual network.

\subsubsection{Style Loss}
To ensure that image textures remained the same in non-shadowed regions after shadow correction, we computed the style loss for masked processed image $D_\text{masked}$ and its corresponding multi-frame image, $C_\text{masked}$. To compute the style loss, we first calculated the Gram matrix of an image to find a representation of its style. Then, the style loss for each image pair ($D_\text{masked}$, $C_\text{masked}$) was defined to be the Euclidian norm between its Gram matrices:

\begin{equation} \label{eq:2}
L_\text{style} (D_\text{masked},C_\text{masked})= \sum_{i} \lvert G_{i} (D_\text{masked} )-G_{i} (C_\text{masked} )\rvert^{2}
\end{equation}

\noindent where $G_i(x)$ is a $C_i \times C_i$ matrix defined as:
\begin{equation} \label{eq:3}
G_{i} (x)= P_{i}(x)_{C_iW_iH_i} \times P_i(x)_{H_iW_iC_i}
\end{equation}

\subsubsection{Total Loss}
The total loss was computed as a weighted sum of the content, style, and shadow losses to ensure all losses were of the same order of magnitude. The shadow loss was set as the reference (as already being normalized) and no weight was assigned. The total loss was defined as:

\begin{equation} \label{eq:4}
L_\text{total} = \sum_{j} (w_j L_\text{content,j} + k_jL_\text{style,j}) + L_\text{shadow}
\end{equation}

\noindent where $w_j$ and $k_j$ are the weights to be derived experimentally; j summed over the type of perceptual network, i.e. EfficientNet-B4, WideResnet101\_2, and Resnext101\_32x8d. To obtain the weight values, we first trained the image processor network without style loss (k=0) to determine all w. We then introduced all style losses and normalized them so that their magnitudes were on the same scale as the content losses. Through this process the weights $w_\text{EfficientNet-B4}$, $w_\text{WideResnet101\_2}$, $w_\text{Resnext101\_32x8d}$, $k_\text{EfficientNet-B4}$, $k_\text{WideResnet101\_2}$, $k_\text{Resnext101\_32x8d}$, were given the following values: $2.86,4,6.67,6.67 \times 10^{-5}$,$1.8 \times 10^{-5}$, $2.1 \times 10^{-5}$ respectively.

\subsection{Training Parameters}
We used 2328 multi-frame averaged B-scans during training and 300 single-frame B-scans with its corresponding multi-frame B-scan during testing. These multi-frame images were used as the ground truth images for the content and style losses, but not for the shadow loss such images still contained shadows. Each B-scan was added with a randomly generated Gaussian noise model (created according to section F). During training, the image processor network learnt how to remove the randomly generated Gaussian noise using content and style losses, and it simultaneously learnt to remove retinal blood vessel shadows through the use of the shadow loss.\\

All training and testing were performed on five Nvidia GTX 1080 Ti cards with CUDA V10.1.105, paired with Nvidia driver V436.48 and cuDNN v7.6.5. Using these hardware specifications, each image took an average of 10.3 ms to be processed. The total training time was 4 days using the Adam optimizer at a learning rate of 1 × 10–5 and a batch size of 6. A learning rate decay was implemented to halve learning rates every 10 epochs. We stopped the training when no improvements in output images could be observed.

\subsection{Noise and Retinal Shadow Removal Metrics}
We used average gradient magnitudes (AGM), the peak-signal-to-noise-ratio (PSNR), the contrast-to-noise-ratio (CNR) and the mean-structural-similarity-index (SSIM) to quantify the noise removal capabilities of our proposed algorithm. All noise removal metrics were normalized with respect to their corresponding multi-frame image for easy comparison. All noise removal metrics were extracted from regions of interest (ROIs) that did not contain retinal shadows to prevent shadow removal from affecting noise removal metrics. We also used the intra-layer contrast (ILC) and the layer-wise pixel intensity (LPI) profiles to assess the proposed algorithm's effectiveness in removing shadows. During testing, we obtained all metrics on noisy, non-averaged single-frame B-scans. All multi-frame B-scans were then aligned to their corresponding single-frame B-scan using rigid translation/rotation transformations using 3D software (Amira, version 5.6; FEI) before noise and shadow removal metrics were extracted.

\subsubsection{Noise Removal Quantitative Assessment}
The AGM was used to quantify the sharpness of output images. We used the AGM implementation found in the Python package Numpy \cite{RN37}, defined as:

\begin{equation}\label{eq:5}
    AGM = \frac{1}{H \times W} \sum_{x}\sum_y \frac{G(x,y)}{\sqrt{2}}
\end{equation}

\noindent where $G(x,y)$,$H$ and $W$ were the gradient vector, height and width of the B-scan respectively.\\

The PSNR (expressed in dB) was used to quantify the noise levels in an image relative to its true signal strength. We used the scikit-image implementation of PSNR defined as:

\begin{equation}\label{eq:6}
    PSNR = -10 \times \log_{10} \frac{\lvert f_0 - \tilde f\rvert^2} {\lvert f_0 \rvert^2}
\end{equation}

\noindent where $f_0$ was the pixel-intensity values of the registered multi-frame B-scan, and $\tilde f$ was the pixel-intensity of the processed B-scan. A higher PSNR suggested that the processed images contained less noise and were of higher quality than images with lower PSNR.\\

The CNR provided an indication of how visible a retinal tissue layer is. It was defined as:

\begin{equation}\label{eq:7}
    CNR = \frac{\lvert \mu_r - \mu_b \rvert}{\sqrt{0.5 \times (\sigma_r^2 + \sigma_b^2)}}
\end{equation}

\noindent where $\mu_r, \mu_b, \sigma_r^2 and \sigma_b^2$ represented the means and variances of pixel intensities for a selected ROI within the tissue 'i' and a randomly chosen ROI from the background,  respectively. Each ROI was chosen as a $20 \times 384$ pixels region at the top of the selected B-scan. A higher CNR suggested superior visibility of tissue 'i' within a given B-scan. We computed the CNR for the RNFL and compared them between single-frame, processed, and multi-frame B-scans. We computed the CNR as a mean of 25 randomly selected ROIs per tissue for each given B-scan, each of size $8 \times 8$ pixels. All ROIs were manually chosen in each tissue by an expert observer (HC) using a custom Python script using the OpenCV \cite{RN75} package.\\

The SSIM was computed to quantify changes in tissue structures (i.e., edges) between a given single-frame/processed image with its corresponding multi-frame image as a reference. The SSIM was based on the computation of three terms: luminance, contrast, and structure, respectively. We used the implementation of the SSIM in the scikit-image package in Python defined as:

\begin{equation}\label{eq:8}
    SSIM(x,y) = \frac{(2\mu_x\mu_y + C_1)}{(\mu_x^2 + \mu_y^2 + C_1)(\sigma_x^2 + \sigma_y^2 + C_2)}
\end{equation}

\noindent where $\sigma_x, \mu_y, \sigma_x, \sigma_y, and \sigma_{xy}$ were the local means, standard deviations, and cross-covariance for images x, y.

\subsubsection{Shadow Removal Quantitative Assessment}
We computed the ILC to assess the performance of the proposed algorithm in removing shadows. The ILC was defined as:

\begin{equation}\label{eq:9}
    ILC = \lvert\frac{I_1 - I_2}{I_1 + I_2}\rvert
\end{equation}

\noindent where $I_1$ was the mean pixel intensity from five manually selected ROIs (size 5 ×5 pixels) that are shadow free in a given retinal layer, and $I_2$ was the corresponding value from five neighboring shadowed regions of the same tissue layer. The ILC ranged between 0 and 1, where values close to 0 indicated the absence of retinal shadows and values close to 1 indicated strongly visible blood vessel shadows.\\

We computed the intralayer contrast for multiple tissue layers of the ONH region, namely the RNFL, the photoreceptor layer (PR) and the retinal pigment epithelium (RPE) – before and after application of the proposed algorithm. Results for all metrics were recorded in the form of mean $\pm$ standard deviation.

\section{RESULTS}
When trained on 2328 multi-frame B-scans with online data augmentation, our deep learning framework was able to successfully remove noise and retinal shadows from unseen single-frame B-scans (Fig. \ref{fig:3}). An independent test set of 300 single-frame B-scans was used to evaluate the noise and retinal shadow removal performance of the proposed deep learning framework qualitatively and quantitatively. The mean PSNR, the CNR and the SSIM increased with respect the input single-frame B-scans from $18.5 \pm 0.46$ dB to $20.5 \pm 0.38$ dB, $3.66 \pm 0.92$ to $8.97 \pm 2.60$ and $0.177 \pm 0.004$ to $0.45 \pm 0.09$ respectively. The ILC for the RNFL, the PR, and the RPE decreased from $0.362 \pm 0.133$ to $0.142 \pm 0.102$, $0.449 \pm 0.116$ to $0.090 \pm 0.077$, $0.381 \pm 0.100$ to $0.059 \pm 0.045$ respectively.

\begin{figure}[H]
    \centering
    \includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{figure3.png}
    \caption{Samples of typical B-scans before (left) and after (right) being processed by our algorithm.}
    \label{fig:3}
\end{figure}

\subsection{Denoising Performance – Qualitative Analysis}
The proposed algorithm produced images without common artifacts of images processed by current deep learning frameworks, including blurring and checkerboard patterns. Single-frame B-scans processed by our algorithm looked qualitatively sharper (Fig. \ref{fig:4}) and visually closer to multi-frame B-scans than images produced by the current state-of-the-art algorithm \cite{RN32}. Retinal shadows were effectively removed, improving visible information within retinal shadows. Overall sharpness was retained and visibility of all the ONH tissues was enhanced after being processed by the proposed algorithm.

\begin{figure}[H]
    \centering
    \includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{figure4.png}
    \caption{Qualitative analysis of the proposed noise removal and shadow removal algorithm. Blurring can be seen in the current state-of-the-art (second row) \cite{RN32}.}
    \label{fig:4}
\end{figure}

\subsection{Denoising Performance – Quantitative Analysis}
In Fig. \ref{fig:5}, we compared the AGM, the CNR, the PSNR, and the SSIM of images processed by the proposed algorithm with single-frame images. When evaluated on 300 single-frame B-scans, we observed that the proposed algorithm consistently produced images that are both qualitatively and quantitatively sharper than images produced by the current state-of-the-art (Fig. 4). On average, each image produced by the proposed algorithm were 154\%, 187\%, 11.1\% better than single-frame B-scans in terms of the CNR, the SSIM, the PSNR, respectively. The AGM was also 57.2\% higher than images produced by the current state-of-the-art de-noising algorithm \cite{RN32}.

\begin{figure}[H]
    \centering
    \includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{figure5.png}
    \caption{(from left) CNR, SSIM, and PSNR values improved relative to single-frame images. AGM of the proposed algorithm compared to that of the current state-of-the-art algorithm by Devalla et. al \cite{RN32}.}
    \label{fig:5}
\end{figure}

\subsection{Deshadowing Performance – Quantitative Analysis}
Our proposed algorithm produced images that had improved visibility within retinal shadows. The ILC for the RNFL, the PR, and the RPE improved by $60.0 \pm 29.3\%$, $79.0 \pm 19.4\%$ and $83.4 \pm 15.4\%$ respectively. On average, the ILC improved by $72.9 \pm 25.2\%$ (Fig. \ref{fig:6}). The LPI profiles were also significantly flattened in the RNFL, the PR and the RPE layers (Fig. \ref{fig:7}).

\begin{figure}[H]
    \centering
    \includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{figure6.png}
    \caption{ILC comparison between images denoised by state-of-the-art \cite{RN32} vs proposed algorithm.}
    \label{fig:6}
\end{figure}

\begin{figure}[H]
    \centering
    \includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{figure7.png}
    \caption{LPI profiles of output images along RNFL, PR and RPE layers were significantly flattener than multi-frame B-scans, or B-scans denoised by denoising state-of-the-art \cite{RN32}.}
    \label{fig:7}
\end{figure}

\section{DISCUSSION}
In this study we present a custom deep learning approach that can remove noise and retinal shadows simultaneously from single-frame OCT B-scans of the ONH. All noise removal performance metrics such as the PSNR, the CNR, and the SSIM values consistently showed significant improvements compared to single-frame images. Thus, we may be able to offer a robust deep learning framework to obtain high quality OCT B-scans with reduced scanning duration and minimized patient discomfort.\\
B-scans processed by our algorithm were qualitatively similar to their corresponding multi-frame B-scans, with the added benefit of improved visibility within retinal shadows (Fig. 3, Fig. 4). The SSIM and the CNR were significantly improved with respect to single-frame images by 154\% and 187\%, respectively. The mean AGM was also 57.2\% higher than the current state-of-the-art \cite{RN32}, providing clinicians a markedly sharper image. Image sharpness is critical given that many pathologies require sharp layer boundaries for accurate retinal layer thickness measurements. One example would be quantifying macular edema, which require measurements of retinal thickness in response to therapy \cite{RN29}. Given the significance of retinal layers and connective tissues in the prognosis and diagnosis of ocular pathologies such as glaucoma and age-related macular degeneration, enhanced visibility would improve automated algorithms downstream of the post processing pipeline, namely alignment, registration, segmentation, diagnosis and, ultimately, prognosis.\\
The proposed algorithm did not require any further segmentation, delineation, or identification of shadows by the user. Similar to our previous work \cite{RN27}, the ILC mean and standard deviation decreased with the depth of the retinal layer of interest (Fig. 6), suggesting that performance of the proposed algorithm was consistently better in deeper layers. The proposed algorithm substantially recovered the visibility of the anterior lamina cribrosa (LC) boundary and anterior LC insertion, which may result in a more confident prediction of early glaucoma \cite{RN30}. Moreover, the main load bearing tissues of the eye in the ONH region, such as the LC and adjacent peripapillary sclera, could be monitored for pre-disease biomechanical and morphological changes. Changes in these tissues have been previously identified as risk factors for glaucoma \cite{RN31}. Measurements of the anatomy of such tissues could be more robust and substantially improved after application of the proposed algorithm.\\

In this study, several limitations warrant further discussion. While we did not find any evidence of pathology being obscured or introduced into output images, it is extremely important to validate this in pathological cases. However, we would need to image the exact same tissue region with and without the presence of blood flow (to remove retinal blood vessel shadows). Such experiments would be extremely complex to carry out in vivo, especially in humans, even if blood vessels were to be flushed with saline during experiments. Such validations may be required for full clinical acceptance of this methodology. Furthermore, it would be critical to also confirm that the proposed algorithm would not interfere with another AI algorithm (especially those aimed at diagnosis and prognosis). Nevertheless, it is possible that the proposed algorithm might improve diagnosis and prognosis algorithms by improving the quality of the input data. We aim to test this hypothesis in the future.\\

Furthermore, although the proposed algorithm functioned well on single-frame images from healthy individuals, more work is required to ensure that it can reproduce similar performance on B-scans of eyes with pathophysiological conditions such as glaucoma. This is especially critical for deep learning approaches, which respond unpredictably to input data that is different from images used during training. As this algorithm was trained on single-frame images from a Spectralis OCT device, it is unknown if it can maintain this performance on OCT images from other devices. Each scenario stated above may require a separate training set. Our future studies will therefore focus on validating the performance of the proposed algorithm across devices and between healthy and pathological eyes.

\section{CONCLUSION}
The proposed algorithm successfully removed both noise and retinal shadows from single-frame B-scans. The algorithm also drastically reduced the time needed (3.5 minutes to 10.6s) for medical professionals and patients to obtain high quality post-processed B-scans. This could have significant economic benefits for hospitals by allowing less money reducing expenditure on expensive, high quality OCT machines. Patients would also benefit by a reduction in the time needed to remain in a fixated position during OCT image acquisition. Automated segmentation and diagnosis algorithms could also benefit clinical diagnostics by providing increased structural clarity, improved layer continuity and enhanced visibility both within shadows and retinal layers. The combination of both noise removal and retinal shadow removal algorithms in a single step will improve latency and be a step toward the goal of real-time OCT image processing.

\section*{FUNDING}
Supported by Singapore Ministry of Education Academic Research Funds Tier 1 (R-155-000-168-112 to AT; R-397-000-294-114 to MJAG); National University of Singapore Young Investigator Award Grants (NUSYIA FY16 P16, R-155-000-180-133 to AT; NUSYIA FY13 P03, R-397-000-174-133 to MJAG); Singapore Ministry of Education Academic Research Funds Tier 2 (R-397-000-280-112, R-397-000-308-112 to MJAG); and National Medical Research Council Grant NMRC/STAR/0023/2014 (TA).

\section*{DISCLOSURES}
Haris Cheong: None, Sripad Krishna Devalla: None, Thanadet Chuangsuwanich: None, Tin A. Tun: None, Xiaofei Wang: None, Tin Aung: None, Leopold Schmetterer: None, Martin L. Buist: None, Craig Boote: None, Alexandre H. Thiéry: Abyss Processing (Co-Founder), Michaël J. A. Girard: Abyss Processing (Co-Founder)

\bibliographystyle{unsrt}

redpajama_set_name: RedPajamaArXiv


Orion has worked for professional clients across a wide range of photographic fields, including lifestyle, fashion, advertising and portraiture. His most recent experience involves acting as creative lead and photographer on campaigns, editorials, lookbooks, and online imagery for many luxury brands.
Orion has technical expertise in the areas of lighting (both natural and studio), composition, colour quality and model direction, as well as a high-level understanding of multi-image compositing. He has a passion for photography and a commitment to producing a high standard of work, which is reflected in positive client reviews and feedback.
As well as having significant experience shooting with Canon and Nikon cameras, Orion is adept with using digital medium format cameras, including Phase One and Hasselblad. He is proficient with a wide range of photography and editing programs, including Capture One, Photoshop CC, Premiere Pro CC and Light Room, and continuously seeks to develop his knowledge and skills through self-tuition, mentoring and involvement in the industry.


text:
Montana Researchers Use Gene Sequencing To Identify COVID-19 Variants
Montana Public Radio | By Aaron Bolton
Published June 9, 2021 at 8:49 PM MDT
Aaron Bolton
Montana Public Radio
A PCR testing machine at the University of Montana Genomics Core lab in Missoula, Montana.
As health officials continue to roll out COVID-19 vaccines, making sure those vaccines remain effective against new variants of the virus is an important part of controlling the pandemic. Montana's state health department and universities are working to stay on top of the virus evolution.
At the University of Montana Genomics Core lab in Missoula, one machine is capable of extracting RNA particles from COVID-19 nasal swabs.
"This kind [of machine] can work on 96 samples at once," lab manager David Xing says.
Xing explained that the RNA from these samples will be run through another machine that gives positive or negative test results. In the near future, Xing's lab will also be able to sequence the genes of the viruses from COVID-19 tests.
Genetic sequencing allows scientists to identify known COVID-19 variants that federal health officials say are concerning. It also helps them keep an eye out for new variants that could be more infectious, more deadly or able to evade vaccines altogether.
"We just did a trial run. We did the sequencing of around 20 positive samples. We know it's the worst concern," Xing says.
The state health department, Xing's lab and Montana State University have done limited sequencing work so far, identifying about 260 variant cases statewide. A more systematic sequencing effort is in the works so health officials can stay on top of how the virus is changing.
The Montana Department of Public Health and Human Services is using $11.5 million in federal funding to contract with Xing's lab at the University of Montana, labs at Montana State University and Fyr Diagnostics, a private lab in Missoula.
A machine extracts RNA particles from COVID-19 nasal swabs at the University of Montana Genomics Core lab in Missoula, Montana.
The state lab is also bolstering its own sequencing capacity by more than sixfold, according to the state health department's Jim Murphy.
"I think we'll have a good network in Montana that should be able to spot anything new that is circulating around here," Murphy says.
Murphy says the cost of this work makes it impossible to sequence every positive test in Montana, even as case numbers go down. Instead, the state has set its sights on sequencing 10%-15% of all positive samples.
Last week, the state was able to sequence 12% of the positive PCR tests.
Andrew Pekosz, a virologist with Johns Hopkins Bloomberg School of Public Health, says that "12% is a great number to be at."
He says federal health officials haven't offered firm guidance on what percentage of positive COVID-19 tests should be sequenced in order to stay on top of emerging variants.
"But there have been modelers and others that have suggested that if you do that 10%-15% range, you should get a good idea of when something is becoming more dominant in your population," Pekosz says.
He explained that the more people that become infected, the greater the chance new variants will crop up. That means rural states like Montana, with low populations and smaller case numbers, are more likely to see variants imported from elsewhere - versus finding a homegrown strain. Pekosz says that doesn't mean it can't still happen.
"That's why the surveillance efforts are really, really important. I'll also add that there's, on top of that, we are starting to see variants that have different disease severity."
That means identifying the arrival of more severe variants early can help hospitals prepare for sicker patients, allow health officials to inform the public and push the pandemic-related precautions.
Pekosz and other experts say much of the country is just beginning to hit that 10%-15% sequencing goal, namely because labs have to sequence fewer positives as COVID-19 cases are going down.
He added that maintaining that coverage will get harder if cases increase, and it will be important for Montana and other states to continue building their sequencing capacity through the summer months.
"Now is the time that we all prep and get ready for what we expect to be a bit of a surge in the fall, once the weather becomes cooler and people move inside and transmission is much more likely."
Capacity building is already happening at Missoula's Fyr Diagnostics, says CEO Chris Booth, in anticipation of finalizing the company's contract for sequencing work with the state. According to Booth, Fyr is buying new equipment and doubling the size of its lab.
"So as long as we have all the infrastructure set up, we'd be able to do a lot of samples every week, which is great."
Booth says the lab could sequence 300 samples per week — and maybe even more. He added it has been tough to hire enough lab technicians to boost sequencing capacity. There has been a spike in sequencing demand as labs across the country try to prepare for a potential fall surge of COVID-19 cases.
COVID-19Regional NewsCOVID-19University of MontanaDavid XingMontana Department of Public Health and Human ServicesJim MurphyMontana State UniversityAndrew PekoszFYR DiagnosticsChris BoothVaccines
Aaron is Montana Public Radio's Flathead reporter.
See stories by Aaron Bolton
Checking In With A COVID-19 Long-Hauler
Montana Commission Approves $75 Million In Federal Coronavirus Health Spending
How Montana's New Laws Limit Public Health Powers

redpajama_set_name: RedPajamaCommonCrawl


This photograph shows the landscape at the opencast coal mine at Kirkconnel. Tiered heaps of slag are visible, along with holes gouged in the side of cliffs.
Coal has been mined in the Sanquhar and Kirkconnel area since earliest times. In the late 1700s the Duke of Queensberry began to develop the coalfields on his estate, and in 1792 Sanquhar Town Council set up a mine to supply the townspeople with coal. At this time the mines were not major employers, with only 40 miners in Sanquhar and 16 in Kirkonnel recorded in the 'First Statistical Account of Scotland'.
In the early 19th century coal was mined in the parish of Sanquhar from shallow and easily accessible seams. In 1848 the first deep pit at Gateside was sunk, and another at Bankend opened in 1857. The New Gateside Pit was opened in 1891, and five years later Fauldhead Pit, the largest in the coalfield, was commissioned. In 1903 the coal works, by now the largest in private ownership in Scoltand, became a limited company, 'The Sanquhar and Kirkconnel Collieries Limited'. Tower Pit was sunk in 1916, despite war time shortages, and by 1925 over 2,000 miners were employed in the industry.
The mines were nationalised in the wake of the Second World War, and shortly after taking control the National Coal Board developed two drift mines, Rigg and Roger. The 1960s brought a decline in the industry, and although its coal reserves were predicted to last into the 21st century, Fauldhead closed in 1968.


text:
Q: Policy with catching std::bad_alloc So I use Qt a lot with my development and love it. The usual design pattern with Qt objects is to allocate them using new.
Pretty much all of the examples (especially code generated by the Qt designer) do absolutely no checking for the std::bad_alloc exception. Since the objects allocated (usually widgets and such) are small this is hardly ever a problem. After all, if you fail to allocate something like 20 bytes, odds are there's not much you can do to remedy the problem.
Currently, I've adopted a policy of wrapping "large" (anything above a page or two in size) allocations in a try/catch. If that fails, I display a message to the user, pretty much anything smaller, I'll just let the app crash with a std::bad_alloc exception.
So, I wonder what the schools of thought on this are on this?
Is it good policy to check each and every new operation? Or only ones I expect to have the potential to fail?
Also, it is clearly a whole different story when dealing with an embedded environment where resources can be much more constrained. I am asking in the context of a desktop application, but would be interested in answers involving other scenarios as well.

A: I usually catch exceptions at the point where the user has initiated an action. For console application this means in main, for GUI applications I put handlers in places like button on-click handlers and such.
I believe that it makes little sense catching exceptions in the middle of an action, the user usually expects the operation to either succeeds or completely fail.

A: This is a relatively old thread, but it did come up when I was searching for "std::bad_alloc" considerations when doing new/delete overriding here in 2012.
I would not take the concept "oh well nothing you can do anyhow" as a viable option.
I personally use in my own allocations the "if(alloc()){} else { error/handling }" way mentioned above. This way I can properly handle and, or, report each case in their own meaningful context.
Now, some other possible solutions are:
1) Override the new/delete for the application where you can add your own out of memory handling.
Although like other posters state, and in particular with out knowledge of the particular contexts, the main option is probably to just shut down the application.
If this is the case you will want your handler to either have preallocated it's needed memory, and, or, use static memory so hopefully the handler it's self will not become exhausted.
Here you could have at least perhaps a dialog pop up and say something on the lines of:
"The application ran out of memory. This a fatal error and must now self terminate.
The application must be run in the minimum system memory requirements. Send debug reports to xxxx".
The handler could also save any work in progress, etc., fitting the application.
At any rate you wouldn't want to use this for something critical like (warning, amateur humor ahead): the space shuttle, a heart rate monitor, a kidney dialysis machine, etc.
These things require much more robust solutions of course, using fail safes, emergency garbage collection methods, 100% testing/debugging/fuzzing, etc.
2) Similar to the first, set the global "set_new_handler()" with a handler of your own to catch the out of memory condition at a global scope.
Can at least handle things as mentions in #1.

A: The problem is not "where to catch" but "what to do when an exception is caught".
If you want to check, instead of wrapping with try catch you'd better use
    #include <new>
    x = new (std::nothrow) X();
    if (x == NULL) {
        // allocation failed
    }

My usual practice is

*

*in a non-interactive program, catch at main level and display an adequate error message there.

*in a program having a user interaction loop, catch also in the loop so that the user can close some things and try to continue.
Exceptionally, there are other places where a catch is meaningful, but it's rare.

A: Handle the exception when you can. If an allocation fails, and your application can't continue without that bit of memory, why bother checking for the error?
Handle the error when it can be handled, when there is a meaningful way to recover. If there's nothing you can do about the error, just let it propagate.

A: The real question is reallty should you catch  std::bad_alloc exceptions?
I most cases if you run out of memory you are doomed anyway and might consider ending your program.

A: Handle it in main() (or the equivalent top level exception handler in Qt)
The reason is that std::bad_alloc either happens when you exhaust the memory space (2 or 3 GB on 32 bits systems, doesn't happen on 64 bits systems) or when you exhaust swap space. Modern heap allocators aren't tuned to run from swap space, so that will be a slow, noisy death - chances are your users will kill your app well beforehand as it's UI is no longer responding. And on Linux, the OS memory handling is so poor by default that your app is likely to be killed automatically.
So, there is little you can do. Confess you have a bug, and see if you can save any work the user may have done. To be able to do so, it's best to abort as much as possible. Yes, this may in fact lose some of the last user input. But it's that very action that likely triggered the OOM situation.. The goal is to save whatever data you can trust.

redpajama_set_name: RedPajamaStackExchange


text:
Retail customers get free shipping on orders over $50. Use code FREESTING at checkout.
Two Days only - Free Shipping on orders over $50 for Retail Customers Only
Organic Waffles
Gluten Free Organic Waffles
Organic Energy Chews
Organic Cracker Bars™
Organic Energy Gels
Save the Bees
Why Honey
+ Performance
Utilizing an ingredient engineered by nature as opposed to in a laboratory has its benefits. We use honey, a natural form of energy and antioxidants, as the main carbohydrate source for all products.
We think the less you mess with Mother Nature, the better. That's why we're committed to establishing trust with our consumers on the origins and authenticity of our honey products through the True Source Honey Pledge.
In 1954, our founders wanted to provide an alternative to the sugary candy bars available, so, as such, their plan was simple: wholesome ingredients, great taste and, of course, honey.
Is there a question you've been dying to have answered? Chances are, you aren't the only one. Check out our frequently asked questions for the answer you've been searching for.
Do you want to know what's going on in the Honey Stinger world? Stay up-to-date with our latest athlete stories, product launches, and company news.
Hive Life
Hive Life tells inspiring stories, features in-depth conversations and shares hard-won secrets of success from the Hive.
Athletes +
They're setting course records, smashing fastest known times, and summiting the highest peaks in the world. Learn more about the inspiring individuals that are representing us out on the trails, in the water, and everywhere between.
Our Honey Stinger Hive Athletes and Ambassadors have an appetite for activity, adventure, training, and optimal nutrition. They're driven by passion and fueled by Honey Stinger. Sting or Bee Stung!
Honey Stinger partners with New York Road Runners and the TCS New York City Marathon to bring delicious, honey-focused fuel to runners as they take to the city's streets by foot.
Get Your Event
Want Honey Stinger to be a part of your next event? Marathons, mountain-bike races, music festivals, climbing adventures, you name it - Honey Stinger wants to be everywhere our athletes are.
We know the satisfaction of challenging yourself, pushing yourself to your limit and working harder at something than you ever have before. We want to be there when you overcome the feat that you never thought you could.
We care a great deal about doing the right thing for people and for the planet. We're fortunate to work with some great organizations that share our vision.
We understand that sometimes you just need someone to talk to. We are here to help, so please drop us a line, give us a call, or send us a letter. We look forward to hearing from you.
Athlete - Kim Hess
Back To Athletes
Kim hess
Mountaineer / Explorer / Motivational Speaker / Author /
Champion of Female Empowerment / Environmental Conservationist
Kim was born in the flatlands of Tulsa, Oklahoma, which is not exactly something you would expect from an accomplished mountaineer and outdoor enthusiast. At the young age of five, her family relocated to Denver, Colorado, and that was where the adventurer was truly born. Growing up in the Rocky Mountains was the perfect playground for a young girl to unearth the courage to dream big, the confidence and self-worth to chase and defend a wild career, and the motivation and dedication to overcome any and all obstacles that stood in her way. When presented with the challenge of climbing the Seven Summits, the tallest mountain on each of the seven continents, she was all in – no matter how out of reach it felt.
Kim recently joined a small, exclusive group of adventure athletes in March of 2018 by completing the Seven Summits. The seven year road wasn't easy as she conquered one mountain with a broken foot only to break her arm on the descent, managed to survived a 7.8 magnitude earthquake at 21,000 ft on her first Everest attempt, and championed her nearly 70-year-old parents to the summit of the small but mighty Kosciuszko in Australia. With the Seven Summits complete, she has decided there is no rest when chasing your dreams and has decided to take the challenge to the next level. Kim's new mission is to become the youngest American woman to complete the Explorers Grand Slam – an adventure achievement comprised of climbing the Seven Summits as well as traversing to the North and South Poles. Of the 7 billion people on planet Earth, less than 60 have completed this adventure challenge and only 12 of those are women. Kim is vying to be lucky number 13.
Most buzzworthy accomplishment:
On March 11th, Kim, along with her brother, became the first brother-sister team to complete the seven summits, climbing the highest peak on each continent.
Favorite Honey Stinger product:
Pink Lemonade Organic Energy Chews – These literally were my fuel to the summit of Everest. I also LOVE the Gluten Free Salted Caramel Organic Waffles. This is my favorite flavor hands down, and I am allowed to eat gluten!
Favorite quote and/or words of wisdom:
"The greatest pleasure in life is doing what people say you cannot do." – Walter Bagehot
"The only person who can stop you from achieving anything in life is yourself." – Kim Hess
stay up to date with the latest news and special offers
© 2019 EN-R-G Foods, LLC / All Rights Reserved / Privacy Policy


7) MOQ 1 PC. We offer custom made service.
We produce police uniform, military uniform, security uniform, hotel uniform, airlines uniform, hospital uniform, high visibility uniform, school uniform, corporation uniform etc.
Yashi import and export trading CO.LTD founded in 1992.The company is given priority to with clothing design, manufacturing and international trade.In creating excelsior professional foreign trade service team at the same time, we are committed to "integrity, pragmatic, innovative and efficient" the enterprise idea of through in every link of company's business.
Import and export trade companies in the $50 million, up to now has five consecutive terms by the municipal Guangdong government awarded the "civilized unit" title, won the "Guangdong export contribution award", is the national garment export key backbone enterprises.Relying on the profound influence in the domestic clothing market, we currently have orders, production, quality control, customs declaration, shipment and a series of comprehensive function, make foreign trade network extended to five continents over 60 countries and regions.


AMBERBALTICS Page 332: 13 Xmas Coloring Pages Picture Inspirations. Extraordinary Xmas Cards Online Photo Ideas. 13 Astonishing Christmas Stockings In Bulk Image Inspirations. 14 Stunning How To Sew A Christmas Stocking Photo Inspirations. 11 Tremendous Xmas Card Ideas. Best Xmas Gifts For 2018.
Thursday 08th, November 2018 17:54:27: PM. Christmas.. .
Xmas coloring pages christmas tree best of in napisy me free for kidsxmas adults. Xmas coloring pages picture inspirations christmas printable for adultsxmas of minnie mouseelementary. Xmas coloringges picture inspirations of minnie mouse free for kidsxmas adults printable adultsxmas.
Thursday 08th, November 2018 17:53:19: PM. Christmas.. .
Make xmas cards online freepersonalized onlinexmas photo send free email. Greeting cards online for free practic web regarding christmas xmas and happy new year onlinemake. Christmas xmas cards on sale at barnes and noble funny onlinexmas online freexmas free send pinterest for.
Thursday 08th, November 2018 17:53:04: PM. Christmas.. .
Christmas stockings in bulk ancitac hanging set astonishing image inspirations. Large christmas stockings ink small cheap inexpensive red. Christmas astonishingngs in bulk image inspirations mini felt inexpensive cheap.
Thursday 08th, November 2018 17:52:16: PM. Christmas.. .
Maxresdefault how toew christmastocking freeeasonal templatepack youtubetunning photo inspirations. Free simple christmas stocking sewing patterns sew lux fabric and how to with. Christmas how to sew stocking with cuff.
Thursday 08th, November 2018 17:51:41: PM. Christmas.. .
Christmas tremendous xmas card ideas kids craft printable santa holiday hgtv pinterest making creative diy. Xmas card ideas tremendous pinterest handmade for making your own cardsxmas cards. Christmass card ideas maxresdefault handmade pinterest creative fun photo making diy. Tremendouss card ideas awesome christmas cards to make with kids projects fun photo pinterest.
Thursday 08th, November 2018 17:47:28: PM. Christmas.. .
Best gifts for men him top christmas xmas. Best gifts for kids christmas holiday gift ideas boys xmas cool kid mermaid sleeping bag. Best xmas gifts for teens teen boybest 2018best girls years.
Thursday 08th, November 2018 17:46:42: PM. Christmas.. .
Best dog christmas stocking ideas cutesonalized stockings pet remarkable animal. Christmasbunting animaltmas stockings personalized forest kids head hide. Kids animal christmas stockings forest head musical for kidsanimal.
Thursday 08th, November 2018 17:45:14: PM. Christmas.. .
Christmas stocking needlepoint kits fantastic disney. Jeweled ornaments bucillamas stocking kit needlepoint kits online for dogs. Dimensions needlepoint kit snowman bear stocking joannistmas kits walmart.
Thursday 08th, November 2018 17:44:47: PM. Christmas.. .
Christmasocking clip art patterns techflourish collections sewing pattern clipart mini. Christmas stocking sewing pattern how to make national circle youtube. Christmas stocking sewing pattern in july patterns _dsc0021 template free mini.
Thursday 08th, November 2018 17:44:38: PM. Christmas.. .
Diyistmas stocking image ideas stockings pattern felt patternsdiy personalized to sew. Diy christmas stocking stuffer ideas kits stockings pattern hanging postdiy hanger. How to make pompom christmas stocking tos diy hanging postdiy hanger hangers.


text:
package net.bluemix.questions.web.controllers;

import java.util.Set;

import net.bluemix.questions.data.controllers.SessionRepo;
import net.bluemix.questions.data.models.Question;
import net.bluemix.questions.data.models.Session;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/api/admin/sessions")
public class AdminSessionController {

  @Autowired
  private SessionRepo repo;

  @RequestMapping(value="{id}", method=RequestMethod.DELETE)
  public void delete(@PathVariable Long id) {
    repo.delete(id);
  }

  @RequestMapping(method=RequestMethod.POST)
  public Session create(@RequestBody Session domain) {
    return repo.save(domain);
  }

  @RequestMapping(value="{id}", method=RequestMethod.PUT)
  public Session update(@RequestBody Session domain, @PathVariable Long id) {
    Session session = repo.findOne(id);
    session.setActive(domain.isActive());
    session.setConference(domain.getConference());
    session.setNumber(domain.getNumber());
    session.setPresenter(domain.getPresenter());
    session.setSessionDate(domain.getSessionDate());
    session.setTitle(domain.getTitle());
    return repo.save(session);
  }

  @RequestMapping(value="{id}", method=RequestMethod.GET)
  public Session getSession(@PathVariable Long id) {
    return repo.findOne(id);
  }

  @RequestMapping(value="{sessionId}/questions", method=RequestMethod.GET)
  public Set<Question> getQuestions(@PathVariable Long sessionId) {
    return repo.findOne(sessionId).getQuestions();
  }

}

redpajama_set_name: RedPajamaGithub


Only Diego Elio Pettenò can upload to this branch. If you are Diego Elio Pettenò please log in for upload directions.
Fix PostgreSQL queue manager building on Gentoo and other platforms.
isn't, you cannot rely on just finding one to get the other.
Remove bitmask (these were all just one option).
Fixes timing (yes, it uses sleep).
It is now possible to test the server with valgrind.
Update to remove additional bitmask from server.
Commit for remove options from universal.


text:
ReviewsAlbum Reviews
Album Review: My Chemical Romance – Danger Days: The True Lives Of The Fabulous Killjoys (Warner)
An epic, end-of-days drive, taking in '80s synths, mainstream metal and gleaming pop
By Chris Mandle
When NME first met [a]My Chemical Romance[/a] they were a fresh-faced bunch of punk rock tykes playing a truly incendiary gig at Manchester's cupboard-like Hop & Grape. After frontman Gerard Way dived into the crowd and got a female fan's thumb stuck behind his eyeball, we thought we'd take them out on the town for a drink. Racing upstairs on the bus to whisk everyone off to an all-nighter at Jilly's Rockworld, we were met by the strange sight of the band in pyjamas watching a Dungeons & Dragons DVD. We went out with the support band instead and when we dragged our sorry arses home at 8.30am the next day, we bumped into the band again who were just on their way to see an early screening of the new Harry Potter film.
While this behaviour was hardly tour-diary matter, it spoke volumes about their ambition and their will to mould their own destiny.
After their 2002 debut 'I Brought You My Bullets, You Brought Me Your Love' they struggled in a [a]Nirvana[/a]-esque way to keep their shining pop core under control… but not for that long. Their breakthrough album 'Three Cheers For Sweet Revenge' was a heady mix of pop punk and emo but it was already clear that they'd crossed a notional line and that any pretence of punk 'authenticity' after this would be shot down in flames. They sidestepped this entire debate by relaunching themselves as a bombastic and glossy epic rock outfit with stadium pretensions and anglophile tendencies, relishing in reference points that ranged from Britpop to [a]Queen[/a].
Their fourth album, 'Danger Days: The True Lives Of The Fabulous Killjoys' is the third and final stage of reinventing themselves as a world dominating pop/rock group, and it is utterly fantastic. This is the album they were born to make. It gives us all the things that punk has never been able to provide: romance, sex, the adventure of the open road and sheer nihilism-banishing energy. The usual ill-defined 'concept' is here and yet again at its heart is illicit love across the barricades, with the band playing a bunch of outlaws. This time the star-crossed lovers/gang seem to be racing across some post-ecological-disaster America, a fact that is reinforced by radio DJ interludes in the style of QOTSA's 'Songs For The Deaf'.
If the unexpected influence on 'The Black Parade' was British rock, then here it is US radio of the '70s and '80s… it's as if MCR have become characters in a Grand Theft Auto-style game, creating a feedback loop between a bleak fantasy future and a mainstream golden rock'n'pop past. So the disco synth arpeggios of Giorgio Moroder inform 'Planetary (GO!)', while next single 'SING' and anthemic 'S/C/A/R/E/C/R/O/W' even take on the leather'n'lace of [a]Whitesnake[/a] and the chromium gleam of 'We Built This City' loons Starship. 'Save Yourself, I'll Hold Them Back' pours yet more scorn on the tabloid idea of MCR as a 'suicide cult' to some satisfying classic rock manoeuvres. More than any other band, MCR are coming to resemble [a]Muse[/a], in their size and ambition at least.
Perhaps it's not too fanciful to think that sooner rather than later we may see them at Wembley, given that their ambition has brought them this far and to this glittering achievement already. Never mind that punk bollocks, here are MCR the pop group. And they're amazing.
John Doran


text:
The Rascals were an English rock band formed in Hoylake, Merseyside in 2007. Their debut album Rascalize, was released on 23 June 2008. Its former lead singer Miles Kane has a second band, the Last Shadow Puppets, with Alex Turner of Arctic Monkeys. In August 2009, it was announced that Miles Kane had left the Rascals to focus on a solo career.

History

Early years
Hailing from Hoylake (The Wirral, on Merseyside) in England, the band began writing material as a three piece in September 2007. The Rascals were signed to Deltasonic Records and played their first gig supporting bands, including Arctic Monkeys.

Initial releases
They released their debut EP, Out of Dreams, on 9 December 2007, which contains their first single of the same name. Then, on 18 February 2008, they released their second single, Suspicious Wit.

Rascalize
The Rascals' debut album Rascalize was released on 23 June 2008 (first released on iTunes on 15 June 2008). Although it was not a commercial success, only peaking at #100 on the UK Albums Chart for one week, the album was generally well received by critics.

Appearance in Awaydays
The Rascals perform a cover version of All That Jazz, originally by Echo & The Bunnymen, in the film Awaydays, based on the book by Kevin Sampson. The track is available on the soundtrack which was released on 18 May 2008.

Miles Kane's departure
On 24 August 2009, lead singer Miles Kane confirmed to NME.COM that he had quit The Rascals. Kane stated that he was writing new material and had been in the studio. Greg Mighall and Joe Edwards announced they were working on a film project with 'Awaydays' star Liam Boyle.

Conflicts with the name
Despite carrying the same name as the American band The Rascals, the English band has stated that it was unintentionally copied. Miles Kane used to tell in several interviews that when they were in The Little Flames they were often called "You Little Rascals".

Membership
The group consisted of:
 Miles Kane – Lead vocals and guitar
 Joe Edwards – Bass
 Greg Mighall – Drums

Discography

Album

EPs

Singles

Music videos
 Out of Dreams
 Suspicious Wit
 Freakbeat Phantom
 I'll Give You Sympathy
 I'll Give You Sympathy (Night Time Version)

References

External links
 Profile at Last.fm

English indie rock groups
Musical groups established in 2007
Musical groups from Merseyside
Deltasonic Records artists

redpajama_set_name: RedPajamaWikipedia


text:
In Memory of Charity Sunshine Tillemann-Dick
by fulbright2017 | Apr 26, 2019 | Alumni Profiles, News | 0 comments
It is not the custom of this newsletter to mark the passing of Fulbrighters. Perhaps we should, as the world is diminished each time we lose a member of our extraordinary community.
But sometimes, that loss is so painful, when that person is young, that we should pause, grieve and remember. This is one such moment, which I share for personal reasons—and so ask your forgiveness.
On April 23, a bright light was lost, a "sunshine" extinguished with the death of Charity Sunshine Tillemann-Dick, a Fulbrighter to Hungary. Charity was an exceptional soprano with a promising career when, 15 years ago, she was diagnosed with pulmonary hypertension, a fatal condition that made singing nearly impossible.
She later told the story of the journey that followed—barely surviving one double lung transplant and then another, enduring family tragedies, and then suffering from skin cancer—in her memoir "The Encore." And yes, she did sing again, gloriously. That story is documented better than I can by the Washington Post, the BBC, CBS News, CNN, and NY Daily News.
I first met Charity when she came to my office at Johns Hopkins University to ask my help to apply for a Fulbright to Hungary. She came from a prominent Hungarian-American family—her grandfather was longtime congressman and Holocaust survivor Tom Lantos, a native of Budapest—and she wanted to study at the Liszt Academy there. It took two attempts, but she did go on that Fulbright.
Like many of us, she did not expect the experience she lived. While she did study voice at the Academy, she gained insight into the challenges posed by a repressive political regime. In 2017, she shared that experience—and her extraordinary singing talents—as the keynote speaker at the Fulbright Association's annual conference.
In her address, she saw the parallels between the physical challenges of her transplants and the cultural challenges of international exchange:
As we engage in the communities we visit, the Fulbright tempers the immune system and the fellow is the transplant, allowing foreign to sit with the native, bringing vital tools for the future and reciprocating with a chance for a new understanding of life.
She wrote to me later, thanking the Association for the chance to "share the evening with the Fulbright family…There were so many bright, decent people working to do good in the world." (Please click here to see a video recording of her speech and singing performance that evening.)
I saw her one last time, only months ago. She clearly was losing her battles, but it never occurred to me to worry or to say goodbye. It was impossible to think that someone so vivacious, so optimistic, so thoroughly joyous to be alive could ever die. Yet here we are, and the Fulbright world is less bright today as we lose one of our most extraordinary talents, taken from us far too soon.


Hope Volunteer Association is dedicated to helping children and teenagers who are faced with the possibility of not being able to obtain an education due to poverty.
Lao Zhou is a 73-year-old volunteer. He suffered from cancer as a youth, but he never surrendered to the disease. Instead, he has always maintained a positive attitude. He exercises every day and is enthusiastic about the public welfare. For over 10 years, he has supported over 150 children for schooling in Nanzheng county.
Yang Yuelin is a worker from a printing company. Due to the similarity in required skills, he installed the equipments with high proficiency throughout the project. In order to help out more, Yang even changed his work schedule to night shift so that he would be able to invest more of his time to volunteer during the daytime.
They are just two of our hundreds of volunteers who labor to make a positive difference in our community.


Home > Travel Journals > Top 10 Things to do in Canada.
Top 10 Things to do in Canada.
Why not also check out our Canada Destination Guide?
The sub-Arctic town of Churchill is self-proclaimed as 'Polar Bear Capital of the World'. Every October and November, 600 to 1,000 polar bears, the largest concentration on the planet, gather on a stretch of Hudson Bay shoreline, waiting for sea ice to form so they can head off to hunt seals.
Visit the Eskimo Museum and the Polar Bear Jail (where any animals that have strolled too close to town are held), then head out in an all-terrain tundra buggy for terrifyingly close but safe encounters with the mighty white bears.
Cities don't often come that old in North America, which makes Québec City a charismatic anomaly. Indeed, amble among its venerable mansions and higgledy-piggledy, cafe-lined alleys and you could almost be in Europe.
It's also the only remaining fortified city on the continent (north of Mexico); in the 17th and 18th centuries, the French built almost three miles of ramparts around the old town, which still exist today. You can make a full loop, either walking beside the bastion or up on the canon-dotted ramparts, for views over the rooftops and mighty St Lawrence River.
Alberta's 232km Icefields Parkway between Jasper and Lake Louise is one of the world's top drives. The road squeezes through the Rockies, via swathes of pungent pine and spruce, sparkling rivers and waterfalls, brilliant-hued lakes, snow-capped mountains and more than 100 glaciers.
It also offers access to some of Canada's best hiking country: the national parks of Banff and Jasper are riddled with everything from easy forest trails to wild, backcountry tramps. Try a day hike at Lake Louise, spend a few days probing the remote Tonquin Valley to be blown away by the Ramparts range, walk up onto the Athabasca Glacier or brave the Glacier Skywalk, a glass-floored platform 280m above the Sunwapta River.
If you are curious about travel to Canada do contact us for more information.
How's this for odds? Orca are spotted on 95 per cent of tours into British Columbia's Johnstone Strait during the peak time of mid-July to mid-September.
In summer, the sleek black-and-white whales (actually a type of dolphin) cluster in this small channel off the north of Vancouver Island to feast on a glut of salmon, joining a wealth of other wildlife, including humpbacks, dolphins, seals and bald eagles.
Spotting orca from a cruise boat is incredible but paddling among them in a kayak offers an even bigger thrill.
Toronto, the capital of Ontario, is the world's most multicultural city; 51 per cent of its population is foreign born, spanning 230 different nationalities.
With such ethnic diversity comes culinary diversity. You can try anything, from Portuguese to Sri Lankan to Ethiopian to Jamaican. Visitors can travel the world via lively neighbourhoods such as Koreatown, Greektown, multiple Chinatowns, Little Iran or the Indo-Pakistani Bazaar.
The city has some of Canada's finest restaurants, with modern French restaurant Alo (alorestaurant.com) topping the list of Canada's 100 Best restaurants on multiple occasions. The city also has St Lawrence Market, a historic food hall packed with butchers, bakers, chocolatiers and cheesemakers, which is also home to the peameal bacon sandwich, a Torontonian favourite.
The railway network of Canada's smallest province was abandoned in 1989, but fortunately, its tracks didn't go to waste. Hard-packed with stone dust, they were repurposed into the Confederation Trail, 435km of gently graded paths that are open to cyclists, walkers and snowmobilers. It's a wonderful way to see this bucolic island of rolling hills, corn and blueberry fields, lazy rivers, pretty clapboard villages, salty fishing harbours and sand dunes.
Try the main trans-island route, which runs for 273km between north-westerly Tignish, a tiny community with French/Irish heritage, to Elmira's East Point Lighthouse.
If you are curious about travel to Canada – or other great cycle rides – do contact us for more information.
Between April and June, hundreds of enormous hunks of Arctic ice, fresh from the glaciers of western Greenland, float right by the coast of Newfoundland, earning this stretch of ocean the nickname 'Iceberg Alley'.
The 'bergs come in all shapes, shades and sizes. Some are big as houses, others are like intricate sculptures. Spot them on cliff walks from fishing villages, such as Twillingate and Bonavista, or head out in a boat or kayak for a closer look, keeping watch for puffins and humpbacks along the way, too.
It's possible to get wet in a variety of wonderful ways in southern Ontario. This is where Niagara Falls thunderously announces the border between Canada and the US. Hop on a Hornblower cruise to sail right up to the famed cascades, then wet your whistle; this region, which is roughly the same latitude as northern Italy, is one of Canada's premier wine-growing areas, with more than 85 vineyards amid the lakes, valleys and rocky escarpments.
Many vineyards offer tours. Some have restaurants and accommodation too. The charming, Victorian-era town of Niagara-on-the-Lake makes a good boozy base.
Following the 1896 Klondike gold rush, the narrow-gauge White Pass & Yukon Railroad (www.wpyr.com) was hastily built through the seemingly impenetrable Coastal Mountains to open up this remote wilderness. It still runs today, between the Alaskan port of Skagway and the Yukon town of Carcross, rumbling past waterfalls and creaking glaciers, winding around mountains, negotiating tunnels and trundling over trestles.
The line's highest point is 873m White Pass, the US/Canada border, where your passport will be checked. The railway then rumbles down to Lake Bennett, now a quiet spot but once a heaving village of prospectors hoping to strike gold.
For centuries, no one knew if this passage even existed. Now, climate change is making it all too easy to pass. But that doesn't diminish the experience of navigating the storied Northwest Passage, the sea route connecting the Atlantic and Pacific through the Arctic Ocean above Canada.
This is about as wild as cruising gets, a voyage amid pristine fjords, immense glaciers, building-sized icebergs and Inuit culture.
Scan around for polar bears, walrus and whales from the deck and head ashore in Zodiacs to explore bleak spots, such as abandoned whaling stations and ancient First Nations sites.
For more ideas on things to do in Canada contact us for further information and a free travel consultation.
Sarah Baxter is a travel writer and editor, working for outlets such as The Telegraph, The Independent, Lonely Planet, Wanderlust and others. She is the author of several books, including A History of the World in 500 Walks and Spiritual Places (Both with Aurum).
Follow Sarah on Instagram @sarahbtravel.
Top 10 Things to do in New Zealand.
Jordan Family Holiday 11 Days.
Highlights of Cuba, 8 Days.
Where to stay in the Maldives.


text:
Nawazuddin Siddiqui's First Look As Manto is Out
After his amazing performance as a fierce cop in Raees, Nawazuddin Siddiqui is ready with his next which happens to be a biopic. Manto, his upcoming movie, is based on the life and times of Saadat Hassan Manto.
Saadat Hassan Manto was hailed as one of the greatest writers in Urdu literature and ever since a biopic on the ace writer was announced, the fans from both sides of the borders were eagerly waiting for it. Nawazuddin finally shared the first look of the film on Twitter.
pic.twitter.com/WKWuFAuEZQ
— Nawazuddin Siddiqui (@Nawazuddin_S) February 2, 2017
The first look is quite impressive and Nawazuddin bears a striking resemblance to the late writer as he's seen wearing a pair of spectacles and a hairstyle similar to that of Manto. The film will be directed Nandita Das and apart from Nawazuddin, another Bollywood actor Rasika Duggal will be seen potraying Manto's wife safia.


My Openstack infrastructure is based on vmware VMs, running centos7 and deployed via openstack-ansible, i have tweaked the nova, glance and cinder node so they can communicate with my vCenter. I can now deploy instances that are created as VMware VMs.
I 'm currently trying to make use of the magnum project, the aim would then be to deploy a kubernetes cluster through openstack, as VMware VMs. Here is the problem: 1- for vmware to be able to use glance images, those images must have vmware_ostype property set, so i did and assuming you provide a valid vmware guestId as vmware ostype, instances got deployed without any problems.
2-To be able to use an image with magnum, the image must have the os_distro property set with either fedora-atomic, coreos or ubuntu.
3-I don't want to use ubuntu, for personal reason i want to use fedora-atomic or coreos because i wan't a kubernetes cluster.
the major problems is that now, i get an error form vCenter saying "A specified parameter was not correct: configSpec.guestId". That's not supposed to be like this because the vmware_ostype is a valid vmwre guestId.
With a little bit of digging i discovered that the os_distro property seems to override the vmware_ostype property.
Proof; when trying to create a fedora-atomic image with a valid vmware_ostype (centos7_64Guest) it works like a charm, when adding the os_distro property (fedora-atomic), instance creation fails just at the end (volume creation goes well, but instance get created and the deleted).


Ladies In Beef | Female beef farmers who care passionately about British beef.
Great British Beef Week 2019 will return early, this year from 1 to 7 April, to champion quality home-produced beef as part of a balanced, healthy global-diet.
In its ninth year and at such a significant time for world trade of British beef, Ladies in Beef is calling for farmers, producers and beef lovers to join the celebration and help increase the global love for quality British beef.
The week's key themes will celebrate that beef forms part of the most popular dishes loved around the world and at home. It will also help educate consumers about the environmental and nutritional benefits of beef as part of their diet.
During the week, Red Tractor assured thin cut beefsteaks will be promoted using new international themed recipes to encourage shoppers to try a beef-based dish. Events during the week will also raise money for farming charity, RABI.
Jilly Greed who farms 200 suckler beef cows and youngstock on Devonshire water meadows, explained: "This year, we'll be championing that British beef is a very important part of the global diet, because of its quality, its nutritional and environmental health benefits.
"And at home, our multinational community has shared with us some of the most popular beef dishes we love in Britain today. With multicultural influences making an Italian lasagne, a spaghetti Bolognese, a French beef bourguignon or a Hungarian goulash, a staple part of our menu. From further afield, Asia has given us the beef Massaman or Madras, and we can't forget the classic US beef burger. The beef in those meals can include British beef whether eaten at home or abroad.
"We'd also like shoppers to know that British-farmed beef is good for the environment, with almost half (47%)* of the UK's many breeds of cattle managed on our mountains, moorlands, marshlands and wetland meadows. This grassland increases the absorption of carbon from the atmosphere and has been grazed for thousands of years here, because livestock farming is an established part of our history.
More news stories and information will be released in the weeks leading up to Great British Beef Week 2019, which is supported by the NFU and will use #GBBW for social media posts.
If you would like to get involved with GBBW you can download a range of assets for your social channels here.
Here is NFU President and LiB's cofounder, Minette Batters, explaining why you should join in and share your support!
to increase consumer support for the British beef industry through all outlets.
to own and promote Great British Beef Week each year.
Ladies in Beef will do this by working with supply chain partners to identify PR opportunities to tell the story of farm assured British beef to consumers, covering a range of topics from nutrition and recipe versatility through to sustainability.
We all want quality food that's affordable and safe to eat, which is why Ladies in Beef support the Red Tractor.
The Red Tractor is an independent mark of quality that guarantees the food we're buying comes from farms and food companies that meet high standards of food safety and hygiene, animal welfare and environmental protection.
Great British Beef Week is a national celebration of our fantastic home produced beef - designed to tantalise the taste buds and put some sizzle in our succulent steaks, Sunday roasts, cottage pies, and stir fries!
We established Ladies in Beef to tell the story of British Red Tractor beef. As a mother and a consumer myself, I really value British beef as part of a healthy, nutritious, balanced diet, and appreciate the vital role livestock production plays in the management of our beautiful countryside. It's these messages that I want to communicate to other people.
I wholeheartedly applaud the work Ladies in Beef are doing to raise public awareness of the true meaning of the Red Tractor logo. They have a real passion for the British beef industry, one that I share, and I'm sure they will be very successful in creating and promoting the positive image the industry quite rightly deserves.


text:
Q: Select de uma linha no phpmyadmin Boa tarde pessoal.
Quando desenvolvendo para VB eu utilizei um select utilizando o top, para selecionar determinada linha que eu queria, porém estou desenvolvendo em php agora e estou utilizando o BD do phpmyadmin e gostaria se possível como eu faço para selecionar somente uma linha, pois irei utilizar um loop no php para ir lendo linha por linha.
já testei o limit porém mostra todos dentro do limit, e preciso do select que selecione somente uma linha.
Testei alguns select que o pessoal comentou em vários sites mas sem sucesso.
o último que usei agora foi o:
`SELECT cdAgendamento FROM agendamento WHERE cdAgendamento > 10 AND ROWNUM = 1`

Grato!

A: Mysql vc pode usar o LIMIT.
SELECT cdAgendamento FROM agendamento WHERE cdAgendamento > 10 LIMIT 1


text:
Q: Из пары xml csv нужно сделать json XML:
<Category everyone>
    <Name>VH</Name>
    <Children>
        <Category everyone>
            <Name>Moto</Name>
        </Category>
        <Category>
            <Name>BMW</Name>
            <Children>
                <Category everyone>
                    <Name>Sedan</Name>
                </Category>
                <Category>
                    <Name>Coupe</Name>
                </Category>
            </Children>
    </Children>
</Category>

CSV:
VH.BMW.Sedan;"BMW 320i"
VH.BMW.Coupe;"BMW 330"
VH.Moto;"Yamaha Aim Pro 29"
VH.BMW.Coupe;"BMW 520"

Нужно сделать Json:
[
    {
        "category":"Sedan",
        "forAll": true,
        "parentCategory":"VH.BMW",
        "values":[
            "BMW 320i"
        ]
    },
    {
        "category":"Coupe",
        "forAll": false,
        "parentCategory":"VH.BMW",
        "values":[
            "BMW 330",
            "BMW 520"
        ]
    },
        {
        "category":"Moto",
        "forAll": true,
        "parentCategory":"VH",
        "values":[
            "Yamaha Aim Pro 29"
        ]
    }
]

Я понимаю как парсить XML в strcontainer и как парсить csv с помощью dictionary, но что значит пара xml csv, я не понимаю. Класс Xdocument для C# имеет большой функционал.

A: У меня после исправления XML (<Category everyone="true">) работает вот так:
var ser = new XmlSerializer(typeof(Category));
Category rootCategory;
using (var s = File.OpenText(@"x.xml"))
    rootCategory = (Category)ser.Deserialize(s);

Dictionary<string, Entry> entries = new();
FillDictionary(rootCategory, null);

void FillDictionary(Category category, string parentName)
{
    var entry = new Entry()
    {
        ParentCategory = parentName,
        Category = category.Name,
        ForAll = category.Everyone
    };
    var fullName = parentName == null ? category.Name : $"{parentName}.{category.Name}";
    entries[fullName] = entry;
    if (category.Children != null)
        foreach (var childCategory in category.Children)
            FillDictionary(childCategory, fullName);
}

using (var csv = new Microsoft.VisualBasic.FileIO.TextFieldParser(@"x.csv"))
{
    csv.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.Delimited;
    csv.SetDelimiters(";");
    while (!csv.EndOfData)
    {
        string[] fields = csv.ReadFields();
        var categoryName = fields[0];
        var modelName = fields[1];

        if (!entries.TryGetValue(categoryName, out var entry))
            throw new Exception($"Unexpected category: {categoryName}");

        entry.Values ??= new();
        entry.Values.Add(modelName);
    }
}

var json = JsonSerializer.Serialize(
    entries.Values.Where(v => v.Values != null),
    new JsonSerializerOptions
    {
        WriteIndented = true,
        PropertyNamingPolicy = JsonNamingPolicy.CamelCase
    });
Console.WriteLine(json);

Вспомогательные классы:
class Entry
{
    public string Category { get; set; }
    public bool ForAll { get; set; }
    public string ParentCategory { get; set; }
    public List<string> Values { get; set; }
}

class Category
{
    public string Name { get; set; }

    [XmlArrayItem("Category", IsNullable = false)]
    public Category[] Children { get; set; }

    [XmlAttribute("everyone")]
    public bool Everyone { get; set; }
}

Вместо консоли можно записать результат и в файл:
using (var stream = File.Create(@"x.json"))
using (var writer = new Utf8JsonWriter(stream, new JsonWriterOptions { Indented = true }))
JsonSerializer.Serialize(
    writer,
    entries.Values.Where(v => v.Values != null),
    new JsonSerializerOptions { PropertyNamingPolicy = JsonNamingPolicy.CamelCase });


JOHANNESBURG (Reuters) – Bill Gates is launching his latest scheme to help sub-Saharan Africans living in extreme poverty: he's giving them chickens.
Gates will donate 100,000 birds vaccinated against common diseases under a program he said would boost incomes because chickens are inexpensive to care for, a good investment and help provide nutrition for children.
"If I were living in extreme poverty, I'd want to raise chickens," the Microsoft founder and billionaire philanthropist said on his Twitter feed on Thursday.
Gates said a farmer starting with five hens could earn $1,000 a year, compared with the extreme poverty line of $700 a year. Eventually Gates wants to help 30 percent of rural African families raise chickens, up from 5 percent now.