text:
CLINICAL LABORATORY IMMUNOLOGY
Serological Prevalence of Helicobacter pylori Infection in Saxony-Anhalt, Germany, in 2010
Thomas Wex, Marino Venerito, Juliane Kreutzer, Tobias Götze, Arne Kandulski, Peter Malfertheiner
Thomas Wex
Department of Gastroenterology, Hepatology and Infectious Diseases, Otto von Guericke University, Magdeburg, Leipziger Strasse 44, Magdeburg D-39120, Germany
For correspondence: thomas.wex@med.ovgu.de
Marino Venerito
Juliane Kreutzer
Tobias Götze
Arne Kandulski
Peter Malfertheiner
DOI: 10.1128/CVI.05308-11
Epidemiological studies from different countries have shown a steady decline of the prevalence of Helicobacter pylori infection. In order to investigate the current seroprevalence of H. pylori infection in the area of Magdeburg, a city of the former East Germany, H. pylori antibodies of patients presenting in our emergency wards were analyzed. In total, 2,318 patients (1,181 males and 1,137 females) enrolled between September 2009 and August 2010 were tested for immunoglobulin G (IgG) against H. pylori and anti-CagA antibodies by specific enzyme immunoassay (EIA). Patients with either anti-H. pylori IgG or anti-CagA antibodies were classified as H. pylori positive, whereas the lack of both antibodies led to the assignment of an H. pylori-negative status. The overall seroprevalence of H. pylori infection was 44.4% (n = 1,029 out of 2,318) and did not differ in relation to sex. The proportion of CagA-positive samples was 43.3% of all H. pylori-positive individuals (446 out of 1,029). The seroprevalence showed a birth cohort effect (0 to 20 years of age, 14.6%; 21 to 30 years, 22.4%; 31 to 40 years, 40.6%; 41 to 50 years, 45.5%; 51 to 60 years, 50.8%) up to the age of 60, while it remained between 40.7% and 50.5% for the following decades. Patients younger than 30 years were significantly less H. pylori positive (21.1%) than those older than 30 years of age (47.7%; P < 0.01), whereas CagA status was similar (44.3 versus 43.3%). Notably, young women (<30 years old) had significantly higher CagA positivity (59.3%) than corresponding men (32.5%; P = 0.016). Taken together, seroprevalence of H. pylori infection shows a significant drop in subjects born after 1980 in Saxony-Anhalt but still remains in the range of 40 to 50% in subjects born earlier.
Helicobacter pylori infects almost half of the world's population and is associated with various gastroduodenal pathologies including peptic ulcer disease and gastric cancer (1, 2). Epidemiological studies from different countries have shown a steady decline in the prevalence of H. pylori infection, with broad variability among different ethnicities. Lowest prevalence rates were reported from Australia and North America (2, 9). European studies reported prevalence rates of H. pylori infection between 25 and 60%, whereas the prevalence of the infection in South America and some parts of Asia has been shown to be >80% (2, 7, 9). In the last 15 years epidemiological studies have shown a decline in H. pylori infection rates in different industrialized countries including Germany. In studies conducted in the 1980s and early 1990s in the former West Germany including West Berlin, seroprevalence of H. pylori infection was 39.2% (for subjects aged 18 to 89 years) (4), 38.2% (age, 17 to 64 years) (25), and 47.2% in adolescents (age, 14 to 18 years) (11). Only one of the cited studies reported the proportion of CagA-positive samples that was 57.6% (4). Studies analyzing active infections by either [13C]urea breath test or antigen stool tests revealed prevalence rates of 34.8% (age, 50 to 85 years) (16) and 21.3% (mean age, 46.6 years) (20). Seroprevalence of H. pylori infection was 10% higher in East Germany than in West Germany (48.5% versus 37.9%, respectively) (18). Notably, the largest change in seroprevalence was observed in subjects 60 and 40 years of age in West and East Germany, respectively. The difference between former and new German countries was steady in different age groups but was smallest in young individuals (age, 18 to 29 years), revealing a seroprevalence of 25.4% versus 20.8% (18). Several recent studies have shown a very low prevalence of H. pylori infection in young children, adolescents, and young adults (<30 years old) (3, 10, 17, 24). The age-related increase in H. pylori prevalence does not represent a steady increase in acquisition but, rather, is a birth cohort phenomenon related to the progressive fall in the rate of acquisition of the infection that has occurred during the past 5 decades.
In order to investigate the current prevalence of H. pylori infection in the area of Magdeburg, a city of the former East Germany, we analyzed the seroprevalence of this infection in nonselected patients presenting in our emergency wards with a wide spectrum of disorders. Taking into consideration the proposed role of the CagA pathogenicity island (PAI) in the pathophysiology of this infection (1, 21) as well as the long-lasting persistence of anti-CagA antibodies in serum, two different serological tests (H. pylori IgG and CagA antibodies) were applied (i) to allow a comprehensive analysis of the current seroprevalence and (ii) to calculate the proportion of CagA-bearing strains in the infected individuals.
Study design and subjects.The study was approved by the ethical committee of the Otto von Guericke University, Magdeburg, Germany, as an anonymous epidemiological study (number 2009-86). Therefore, the only data of recruited patients available for statistical analyses were age and sex. According to a new standard operating procedure, all patients who were seen in our emergency wards between September 2009 and August 2010 and from whom a blood sample was taken as part of the routine medical workup were included in the study. No further exclusion and inclusion criteria were applied. If laboratory tests were needed, an aliquot of the serum sample sent to the Central Laboratory of the hospital was obtained and separately stored at −30°C until analysis. From September 2009 until August 2010, 2,479 serum samples were collected. Due to multiple recruitments, missing data, or unclear assignment, 161 serum samples were excluded. Finally, serum samples of 2,318 patients (1,181 males and 1,137 females) were available for analysis. Mean age of the study cohort was 60 ± 20.2 years (range, 1 to 103 years; median, 64 years).
Determination of H. pylori status.Anti-H. pylori IgG and anti-CagA antibodies were analyzed using an H. pylori IgG enzyme-linked immunosorbent assay ([ELISA] catalog number 601040; Biohit, Rosbach, Germany) and a CagA IgG kit (GD33; Genesis Diagnostics Ltd., London, United Kingdom), respectively, according to manufacturers' instructions. Based on the presence of H. pylori-specific IgG (≥30 enzyme immunounits [EIU]) and/or the presence of anti-CagA IgG (>6,25 U/ml), patients were classified as H. pylori positive, whereas the lack of both antibodies led to the assignment of an H. pylori-negative status.
Two out of 2,318 patients revealed anti-CagA antibody levels within the gray zone (6.23 to 6.28 U/ml); they were classified based on the cutoff level of 6.25 U/ml. The proportion of CagA-positive infections was calculated on the basis of the H. pylori-infected subjects.
Statistical analysis.All data were entered into a database using the MicroCal Origin, version 8.0G, program package (Northampton, MA). Age is shown as means and standard deviations and was analyzed by an unpaired Student's t test. Categorical data (e.g., gender or distribution of H. pylori status) are presented as frequencies; comparisons were performed using a chi-square test.
Overall, 1,029 individuals out of 2,318 had a positive H. pylori status, resulting in a seroprevalence of H. pylori infection of 44.4% for the complete cohort (Table 1). The prevalence rates of anti-H. pylori IgG in males (533/1,183, or 45.1%) and females (496/1,137, or 43.4%) were similar and did not significantly differ (Table 2). The H. pylori seroprevalence showed a rather weak birth cohort effect until the age of 60 years, with a remarkable increase in patients between 30 and 40 years of age (Table 1). While individuals between 21 and 30 years old showed a seroprevalence of 22.4%, patients of the next age group (31 to 40 years) revealed almost a 2-fold increase in seroprevalence (40.6%).
Seroprevalence of H. pylori infection and CagA-specific IgG in the study cohort
Seroprevalence of H. pylori infection and CagA-specific IgG stratified to sex and age
The percentage of subjects with CagA-positive infection in the complete cohort was 43.3% (446 out of 1,029 H. pylori-positive individuals) (Table 1) and did not significantly differ between men (41.2%) and women (44.0%) (Table 2). CagA status was rather similar among the different age groups except for the groups of subjects aged 0 to 20 years and 41 to 50 years, which had a high proportion of CagA-positive infections. Notably, a higher prevalence of anti-CagA IgG (54.9%) in the group of subjects aged 41 to 50 years was observed in both genders (male, 53.6%; female, 56.6%). However, the difference in the prevalence of anti-CagA IgG between this and other age subgroups of this cohort did not reach statistical significance. Stratification of individuals according to sex in the different age groups did not reveal significant differences for seroprevalence of H. pylori and CagA-positive infections between men and women (Table 2).
Taking into consideration the significant change in H. pylori seroprevalence between the groups of subjects aged 21 to 30 years and 31 to 40 years, patients were further stratified in two groups using an age of 30 years as a cutoff. Based on this stratification, patients younger than 30 years old were significantly less H. pylori positive (21.1%) than those older than 30 years (47.7%; χ2 test, P < 0.01), whereas the proportion of CagA positivity was almost identical (44.3% and 43.3%) in both of these groups (Table 1). Notably, CagA positivity was significantly higher in younger females (59.3%) than in men of the same age group (32.5%) (Table 2).
Here, we determined an overall H. pylori seroprevalence of 44.4% in a region of the former East Germany. This proportion of positive H. pylori-related seroprevalence is similar to that reported from other European regions. The prevalence of active H. pylori infection was reported to be 41.7% for the Czech Republic in 2006 (6). Seroprevalences of 50.5% and 47% were found in Ireland and Italy, respectively (13, 15). The low H. pylori infection rate in children and adolescents found in our study is in line with reports from other areas of Germany (Ulm and Würzburg in south Germany, and Leipzig in East Germany, close to Magdeburg), where H. pylori prevalence has been shown to be as low as 4 to 9.4% (3, 10, 24). A prospective study conducted between 2000 and 2002 in individuals between 50 and 74 years of age in the Saarland (south Germany) revealed an overall seroprevalence of 52.6% (8) and a proportion of serological CagA positivity of 55.2% (22); both rates are higher than those of this study conducted almost 10 years later. There are no plausible explanations for the observed trend of higher CagA positivity in the group of very young individuals (<20 years old) and the group of subjects 41 to 50 years of age. Whether these findings are caused by low numbers (in particular for the younger individuals) or reflect a pathophysiological phenomenon (e.g., higher infectious rates of CagA-positive strains) cannot be concluded. Since the two serological tests applied in the present study detect different antibodies, both patients with anti-H. pylori IgG and anti-CagA antibodies were classified as H. pylori positive. As CagA antibodies can persist in serum for a long time also after seroconversion for general anti-H. pylori IgG (23), patients were considered H. pylori positive also in the case of sole positivity for anti-CagA antibodies. In this cohort, only 97 of the 1,029 patients classified as H. pylori positive (9.4%) had anti-CagA antibodies but no anti-H. pylori IgG in serum, whereas 91.6% of individuals classified as H. pylori positive had anti-H. pylori IgG. This aspect needs to be considered if H. pylori seroprevalences are compared among various studies. In the present study more than half of the H. pylori-positive individuals (about 56%) were found to be infected with CagA-negative strains. In a study from the 1980s conducted in West Germany in a population with similar ages as ours, a much higher prevalence of anti-CagA antibodies (57.6%) was found (4). As the presence of CagA is associated with a more prominent gastric inflammation and an increased risk of developing peptic ulcer gastric adenocarcinoma (1, 21), the decreased prevalence of anti-CagA antibodies may account for a reduced proportion of patients with H. pylori infection that will develop a symptomatic outcome of the infection in the future.
In the present study young women were found to be predominately infected with a CagA-positive strain. Since this finding is based on a small group of study participants, a prospective study including a larger number of young subjects is need before general conclusions can be drawn.
Previous reports demonstrated a linear birth cohort effect of H. pylori seroprevalence (6, 7, 9, 12–14) in other populations. In our study such an effect was not completely reproducible. Indeed, seroprevalence almost doubled in patients aged between 30 and 40 years compared to rates in those younger than 30 years, while a slight increase in subjects up to the age of 60 years was observed. The steep decrease of H. pylori seroprevalence in subjects younger than 30 years of age observed in our study is remarkable and most likely related to the major socioeconomic changes that occurred in the 1970s in the former East Germany. In fact, a comprehensive housing program was initiated in 1972, leading to the construction of large apartment complexes with centralized heating, water supply, and sewage disposal. In line with this program, in the period from 1975 to 1982 the birth rate in the former East Germany strongly increased (from 1.5 children/woman to 1.7 to 1.95 children per woman), whereas in West Germany the number of children/woman was lower, between 1.3 and 1.4 children per woman (19). In general, an inverse association between H. pylori transmission and improved housing and general levels of household hygiene has been observed. Taking into account that the primary caregiver (usually the infected mother) (24) is the main source of transmission of H. pylori infection, one may speculate that the introduction of the housing program together with the improvement in hygiene led to the strong decline in H. pylori seroprevalence in individuals born in this period. Since these changes happened in the whole of East Germany from 1975 to the 1980s, a similar reduction of H. pylori prevalence can be expected also in other areas as well; however, no other studies concerning H. pylori seroprevalence in former areas of East Germany are currently available. There is no doubt that simultaneously with this housing program other relevant socioeconomic factors affecting the transmission of H. pylori, including the improvement of health care systems (e.g., availability of antibiotics), have probably contributed to the decline of H. pylori seroprevalence in the group of younger individuals. Notably, for a limited time, the improvement in socioeconomic conditions led to a remarkable increase in the birth rate in the former East Germany. This phenomenon may have further facilitated the decline in H. pylori prevalence in this generation.
Furthermore, it should be noted that the seroprevalence of H. pylori infection overestimates the rate of current infections as seroconversion after successful eradication of H. pylori infection may take several years. A previous study analyzed the concordance between serology (anti-H. pylori IgG) and an antigen-based stool test for detecting H. pylori infection in patients from Germany with similar ages as our cohort and found that 83% of seropositive individuals had active infections (5). Based on these data, the estimated current prevalence of an active H. pylori infection in Saxony-Anhalt might be around 35%.
Due to the study design, an assessment of previous antibiotic therapies as well as other demographic data that are known to be associated with H. pylori infection (e.g., education, size of the household, and numbers of siblings) was not possible.
Altogether, we conclude that H. pylori infection is still frequent in the area of Saxony-Anhalt, in particular for individuals older than 30 years of age, where it can be detected in about half of the population. The strong decline in H. pylori seroprevalence in individuals born in the 1970s and later reflects the major socioeconomic changes that occurred in the former East Germany during this period.
We declare that we have no financial interests in the context of this study.
This work was partially supported by a scientific grant from the Roche group.
We thank the endoscopy team for their technical assistance and Ursula Stolz and Marion Holley (Department of Gastroenterology) for their excellent work in this study.
Accepted 7 October 2011.
Accepted manuscript posted online 19 October 2011.
Amieva M. R.,
El-Omar E. M.
. 2008. Host-bacterial interactions in Helicobacter pylori infection. Gastroenterology 134:306–323.
Azevedo N. F.,
Huntington J.,
Goodman K. J.
. 2009. The epidemiology of Helicobacter pylori and public health implications. Helicobacter 14(Suppl. 1):1–7.
Bauer S.,
. 2011. Influence of sociodemographic factors on Helicobacter pylori prevalence variability among schoolchildren in Leipzig, Germany. A long-term follow-up study. Cent. Eur. J. Public Health 19:42–45.
Berg G.,
Bode G.,
Blettner M.,
Boeing H.,
Brenner H.
. 2001. Helicobacter pylori infection and serum ferritin: a population-based study among 1806 adults in Germany. Am. J. Gastroenterol. 96:1014–1018.
Hoffmeister A.,
Koenig W.,
Brenner H.,
Rothenbacher D.
. 2001. Characteristics of differences in Helicobacter pylori serology and 13C-urea breath-testing in an asymptomatic sample of blood donors. Scand. J. Clin. Lab Invest. 61:603–608.
Bures J.,
. 2006. Epidemiology of Helicobacter pylori infection in the Czech Republic. Helicobacter 11:56–65.
Ford A. C.,
Axon A. T. R.
. 2010. Epidemiology of Helicobacter pylori and public health implications. Helicobacter 15(Suppl. 1):1–6.
Gao L.,
. 2010. Sibship size. Helicobacter pylori infection and chronic atrophic gastritis: a population-based study among 9444 older adults from Germany. Int. J. Epidemiol. 39:129–134.
Goh K. L.,
Chan W. K.,
Shiota S.,
Yamaoka Y.
. 2011. Epidemiology of Helicobacter pylori infection and public health implications. Helicobacter 16(Suppl. 1):1–9.
Grimm W.,
Fischbach W.
. 2003. Helicobacter pylori infection in children and juveniles: an epidemiological study on prevalence, socio-economic factors and symptoms. Dtsch. Med. Wochenschr. 128:1878–1883. [In German.]
Hornemann F.,
Nilius M.,
Malfertheiner P. P.,
Bartmann P.
. 1997. Seroprevalence of Helicobacter pylori in German infants and children. Helicobacter 2:176–179.
Muhsen K.,
. 30 May 2011. Interaction between ethnicity, socioeconomic status and Helicobacter pylori sero-prevalence among Israeli children and adolescents. J. Pediatr. Gastroenterol. Nutr. [Epub ahead of print.] doi:10.1097/MPG.0b013e31822676ca.
Murray L. J.,
McCrum E. E.,
Evans A. E.,
Bamford K. B.
. 1997. Epidemiology of Helicobacter pylori infection among 4742 randomly selected subjects from Northern Ireland. Int. J. Epidemiol. 26:880–887.
Pandeya N.,
Whiteman D. C.
, for the Australian Cancer Study. 2011. Prevalence and determinants of Helicobacter pylori sero-positivity in the Australian adult community. J. Gastroenterol. Hepatol. 26:1283–1289.
Ponzetto A.,
. 2001. Seroprevalence of Helicobacter pylori infection among blood donors in Torino, Italy. Minerva Gastroenterol. Dietol. 47:3–7.
Rothenbacher D.,
. 1998. Active infection with Helicobacter pylori in an asymptomatic population of middle aged to elderly people. Epidemiol. Infect. 120:297–303.
. 2002. Dynamics of Helicobacter pylori infection in early childhood in a high-risk group living in Germany: loss of infection higher than acquisition. Aliment. Pharmacol. Ther. 16:1663–1668.
Seher C.,
Thierfelder W.,
Dortschy R.
. 2000. Helicobacter pylori prevalence in the German population. Gesundheitswesen 62:598–603. [In German.]
Statistisches Bundesamt Deutschland. 2011. Total fertility rate of female cohorts. Statistisches Bundesamt, Wiesbaden, Germany. http://www.destatis.de/jetspeed/portal/cms/Sites/destatis/Internet/EN/Graphics/Population/Diagramme/FertilityRateCohorts.psml.
Stettin D.,
. 2007. Infection with Helicobacter pylori—outcome of a cross-sectional investigation. Dtsch. Med. Wochenschr. 132:2677–2682. [In German.]
Tegtmeyer N.,
Wessler S.,
Backert S.
. 2011. Role of the cag-pathogenicity island encoded type IV secretion system in Helicobacter pylori pathogenesis. FEBS J. 278:1190–1202.
Weck M. N.,
Stegmaier C.,
. 2007. Epidemiology of chronic atrophic gastritis: population-based study among 9444 older adults from Germany. Aliment. Pharmacol. Ther. 26:879–887.
. 2009. Helicobacter pylori infection and chronic atrophic gastritis: associations according to severity of disease. Epidemiology 20:569–574.
Weyermann M.,
. 2009. Acquisition of Helicobacter pylori infection in early childhood: independent contributions of infected mothers, fathers, and siblings. Am. J. Gastroenterol. 104:182–189.
Zober A.,
. 1998. Helicobacter pylori infection: prevalence and clinical relevance in a large company. J. Occup. Environ. Med. 40:586–594.
Clinical and Vaccine Immunology Nov 2011, 18 (12) 2109-2112; DOI: 10.1128/CVI.05308-11
You are going to email the following Serological Prevalence of Helicobacter pylori Infection in Saxony-Anhalt, Germany, in 2010


At Mai Samui Beach Resort & Spa each day brings a new experience as we focus on offering a wide choice of activities in Koh Samui from sporting to cultural to keep you entertained.
Beach Volleyball Available upon request service time 08.00 to 17.00 hrs.
Fishing, Kayaking, Snorkeling Available upon request service time 08.00 to 17.00 hrs.
Mountain Bike Available upon request service time 08.00 to 17.00 hrs.
Petanque Available upon request service time 08.00 to 17.00 hrs.
Squash court and Badminton Service time 08.00 to 18.00 hrs.
Swimming Pool Service time 08.00 to 20.00 hrs.
Mai Samunprai Spa Service time 11.00 to 20.00 hrs.
Remark: All activities please book 1 day in advance at the reception.


text:
Q: Google Calendar API как сделать авторизацию в дестоп приложении C# Нужно что-бы каждый экземпляр приложения был уникальным при попытке подключится к google Calendar API и у меня проблема с тем что соединение хранится даже при выключении приложения и я не могу найти возможности выйти из аккаунта с помощью своего приложения. Пользовался данной литературой

*

*https://developers.google.com/api-client-library/dotnet/guide/aaa_oauth

*https://developers.google.com/api-client-library/dotnet/reference/1.10.0/classGoogle_1_1Apis_1_1Auth_1_1OAuth2_1_1UserCredential#a0d69482e707af645042d4f656231c02e

*https://developers.google.com/api-client-library/dotnet/reference/1.10.0/classGoogle_1_1Apis_1_1Util_1_1Store_1_1FileDataStore
Код для авторизации
        string[] Scopes = { CalendarService.Scope.Calendar };
        string ApplicationName = "Google Calendar API .NET fghj";

        UserCredential credential;

        using (var stream =
            new FileStream("credentials.json", FileMode.Open, FileAccess.Read))
        {

            string credPath = "token.json";
            credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
                GoogleClientSecrets.Load(stream).Secrets,
                Scopes,
                "user",
                CancellationToken.None,
                new FileDataStore(credPath, true)).Result;
            Console.WriteLine("Credential file saved to: " + credPath);
        }

        service = new CalendarService(new BaseClientService.Initializer()
        {
            HttpClientInitializer = credential,
            ApplicationName = ApplicationName,
        });

redpajama_set_name: RedPajamaStackExchange


text:
Q: bash array acting weird I have two folders under /tmp.
From terminal:
ls -d /tmp/firefox-*

/tmp/firefox-sy2vakcj.default-esr-charlie-cache
/tmp/firefox-sy2vakcj.default-esr-charlie-profile

or
compgen -G /tmp/firefox-*

/tmp/firefox-sy2vakcj.default-esr-charlie-cache
/tmp/firefox-sy2vakcj.default-esr-charlie-profile

And i can store the output in an array as well:
arr=( $(ls -d /tmp/firefox-*) )
echo $arr
tmp/firefox-sy2vakcj.default-esr-charlie-cache  /tmp/firefox-sy2vakcj.default-esr-charlie-profile

echo $arr[1]
tmp/firefox-sy2vakcj.default-esr-charlie-cache

echo $arr[2]
/tmp/firefox-sy2vakcj.default-esr-charlie-profile

so far so good.
But if i attempt the same thing from a script:
    ...
    ...
    arr=( "$(ls -d /tmp/firefox-*)" ) ||( echo "directory doesn't exist" && exit 1)
    #arr=( "$(compgen -G /tmp/firefox-*)" ) ||( echo "directory doesn't exist" && exit 1)
    echo "this is a test for arr[1]: $arr[1]"
    echo "this is a test for arr[2]: $arr[2]"
    ...

I get the output:
From script:
for ls -d this is the output:
+ arr=("$(ls -d /tmp/firefox-*)")
++ ls -d '/tmp/firefox-*'
ls: cannot access '/tmp/firefox-*': No such file or directory
+ echo 'directory doesn'\''t exist'
directory doesn't exist

and for compgen -G , this is the output:
this is a test for arr[1]: /tmp/firefox-sy2vakcj.default-esr-charlie-cache
/tmp/firefox-sy2vakcj.default-esr-charlie-profile[1]
this is a test for arr[2]: /tmp/firefox-sy2vakcj.default-esr-charlie-cache
/tmp/firefox-sy2vakcj.default-esr-charlie-profile[2]

My questions:
1. Why is the glob not expanding in the subshell for the command  ls -d ?
2. With compgen -G, how are the values being stored in the array? the output seems like each entry in the array is storing both the directory entry with the second one with its own index array?
3. Is the output from terminal for both commands different from the script, or am i missing something?

A:

*

*Why is the glob not expanding in the subshell for the command ls -d ?

You've probably turned off globbing by using set -f. To demonstrate:
$ touch firefox-1 firefox-2
$ arr=( firefox-* ); declare -p arr
declare -a arr=([0]="firefox-1" [1]="firefox-2")
$ set -f
$ arr=( firefox-* ); declare -p arr
declare -a arr=([0]="firefox-*")

*With compgen -G, how are the values being stored in the array? the output seems like each entry in the array is storing both the directory entry with the second one with its own index array?

When you do arr=( "$(compgen -G /tmp/firefox-*)" ), the double quotes force the compgen output to be stored as a single element in the array.
In this case, to read the lines of output into an array, use mapfile with a process substitution:
$ mapfile -t arr < <(compgen -G ./firefox-*)
$ declare -p arr
declare -a arr=([0]="./firefox-1" [1]="./firefox-2")

*Is the output from terminal for both commands different from the script, or am i missing something?

Looks like your interactive shell is zsh. Aside from that, you're missing the parameter expansion syntax for array elements requiring the braces (3.5.3 Shell Parameter Expansion), and that bash arrays are indexed starting from zero:
echo "${arr[0]}"


text:
Paddling Around Winston-Salem: An Insider's Guide to Getting on the Water This Summer
Winston-Salem's watershed lakes offer more than 1,000 acres of water perfect for flatwater kayaking, canoeing, and SUP. Visit Winston-Salem/Triad ECO Adventures
If paddling in North Carolina conjures up images of running whitewater in the western reaches of the state and sea kayaking the coast, you may be missing out on one of N.C.'s most diverse paddling destinations. The lush, green hills of Winston-Salem offer up four-season paddling, with an astonishing array of whitewater and flatwater options on rivers and lakes just a short drive from downtown.
Summer is an ideal time to dip into this paddling paradise. From navigating class III rapids to peaceful sunset outings, our guide to the best spots for paddling around Winston-Salem and central N.C. is sure to inspire you to grab a paddle and get on the water.
The Yadkin River Trail
The broad, steady Yadkin River flows past mixed hardwood forest and farmland along the 125-mile Yadkin River Trail. The trail is an ideal route for novice to intermediate paddlers, with 17 access points for half-day to multiple-day trips. Water levels are reliable in any season, and class I-II ripples provide just enough excitement to keep it interesting. The river's largely undeveloped shoreline has a wilderness feel, particularly passing through Pilot Mountain State Park and Tanglewood Park near Winston-Salem, but you're never far from the cities and towns of the Triad.
Need boats, shuttles, or a little help with trip planning? Yadkin River Adventures makes it easy to get on the water. Self-guided two- to six-hour trips start and end at their general store in Rockwood and include gear and shuttle. For more advanced paddlers, consider self-guided two-day trips covering up to 19 miles on the river.
The Triad Watershed Lakes
Lake Higgins is ideal for kayaking, SUP, and canoeing. Melissa Wilkins
A string of three reservoirs east of downtown Winston-Salem have become a paddling destination for not only kayaking, stand-up paddleboarding, and canoeing, but also row boating and sailing as well. Lake Higgins and Lake Brandt, the smaller of the three lakes, are ideal for kayaking, SUP, and canoeing. Launch your own boat or rent solo and tandem kayaks, SUP boards, canoes, and rowboats on either lake. Family-friendly intro to kayaking classes and night paddles are offered throughout the summer on both lakes.
The largest of the three, Lake Townsend, is home of the Lake Townsend Yacht Club, which makes for more motorboat and sailboat traffic, especially in warmer months. Still, the lake's many coves and tributaries offer solitude and distance from summer boaters. Launch your own boat or rent a kayak, sailboat, or rowboat at the marina.
The Uwharrie Lakes Region
Along the western edge of the ancient Uwharrie Mountains, along a dammed portion of the Yadkin River due south of Winston-Salem, miles of flatwater paddling await exploration. Get out on High Rock Lake, Badin Lake, and Lake Tillery to explore more than 20,000 acres of backcountry paddling against the backdrop of some of the oldest and continuously inhabited mountains in the east.
Numerous boat launches and lakefront development make the northernmost lake, High Rock, the most heavily used. Tributaries off the main channel offer more solitude, with miles of shoreline to explore. Long, narrow Lake Tillery is best accessed from the Morrow Mountain State Park boat ramp, where you can launch your own boat or rent a rowboat or canoe during the summer.
Paddle Lake Tillery from the boat launch in Morrow Mountain State Park. Gerry Dincher
Perhaps the best paddling to explore is on the more remote Badin Lake. Bordered by the Uwharrie National Forest to the east, the largely undeveloped lake lies over a portion of the Yadkin that was known as the Narrows. Prior to construction of the dam, rocks squeezed the river through a channel only 30 to 40 feet wide, dropping 90 feet over a mile. For this reason, Badin is up to 190 feet deep in spots, lending to its rich blue hue.
Launch at the Cove Boat Ramp and extend your day trip into a multi-day paddle by camping at nearby Arrowhead Campground. There's also plenty of dispersed backcountry camping in designated areas throughout the Uwharrie National Forest. Uwharrie Hoof & Paddle is your outfitter for kayak and canoe rentals or shuttle service on Badin Lake.
Kayak in Town
On the Mayo River, a series of ledges called the Stairsteps drops through class II-III rapids. bobistraveling
Wrap up your day in Winston-Salem with a sunset paddle on 365-acre Salem Lake. The lake and surrounding seven-mile trail are minutes from downtown but feel a world away. Launch your own kayak, SUP, or canoe, or rent one once you get there and paddle along the wooded shoreline, where wood ducks, loons, woodpeckers, heron, and geese are often your only companions.
And after the summer, you can continue to take advantage of the warm water temperatures at 3,863-acre Belews Lake throughout the fall, winter, and spring. Because the lake was created to cool Duke Power's Belews Creek Steam Station, water temperatures typically remain in the 60s throughout the cooler months, making Belews an ideal paddle when motorboats have been stored for the winter. Other than the occasional fisherman, the lake will be yours to enjoy. Put in at the Piney Bluff Access off Belews Creek Road to kayak 14-plus miles to the lake's northern tip and back for a full day on the lake.
Playboating Around Winston-Salem
One of the biggest surprises on the central N.C. paddling scene? The playboating opportunities on the New, Mayo, and Dan rivers, just a short drive north of Winston-Salem. While sections of all three rivers are ideal for a beginner to intermediate outing, a paddler's 15-minute run can turn into hours of playtime for the whitewater enthusiast.
Put in at New River Trail State Park to surf the waves at Foster Falls, where the river drops approximately 30 feet over 8 ledges. On the shallow and fast-moving Dan River, playboaters head to the river on dam release days for multiple runs on the class II-III rapids through Kibler Valley. On the Mayo River, a series of ledges called the Stairsteps drops through class II-III rapids to a favorite spot called the Boiling Hole.
For gear, advice, and directions, drop by Winston-Salem's Great Outdoor Provision Company. Knowledgeable staff are experts on paddling around Winston-Salem and central North Carolina and can provide intel on river levels and dam releases. During the winter, the outfitter also offers demo days and indoor roll clinics at the local YMCA.
Originally written for OrthoCarolina.
10 of the Toughest Outdoor Adventures in Alabama
Marcus Woolf
Central Illinois Is a Bona Fide Hub for Outdoor Recreation. Here's Proof.
Juniper Rose
Live like a Winston-Salem local whenever, wherever
Get Outside & Explore Winston-Salem, NC
Q&A With Nate English: Berkeley-Based Bike Guru
by Kelly Dunleavy O'Mara
The Dipsea: The Bay Area's Most Historic (and Hardcore) Trail Race
20 Knoxville-Area Adventures to Do This Year
by Logan Mahan
Big Creek and Beyond: Exploring the East Smokies
by James Dziezynski

redpajama_set_name: RedPajamaCommonCrawl


A whole lot of individuals come to feel gardening is challenging to do, but it can be simple if you are conscious of what to do. Obtaining the appropriate data could help anybody and everyone turn into the master of gardening. This article has some terrific data to assist you learn how to tend your backyard garden like a master gardener.
When planting perennials, seek out out these that are resistant to slugs. Snails and slugs can destroy crops in just one particular evening. Snails and slugs like to eat perennials with smooth and slim leaves, specially if they are younger vegetation. Perennials with hairy leaves or bitter flavor are unattractive to snails and slugs, trying to keep them risk-free from harm. Some of examples of these are achillea, heuchera, campanula, helleborus, and euphorbia.
Deciduous shrubs ought to be guarded from the aspects. Tender shrubs are quite sensitive to chilly weather, specifically those that are planted in pots. Tie these canes at the prime, and location a blanket in excess of it. This technique works much better than covering your bushes in plastic, permitting air to circulate and avoiding rotting.
Put a few of inches of natural mulch around every of your vegetable vegetation. When you place mulch around your crops, it keeps the ground far more moist. It will also avoid weeds from expanding. You'll uncover this is a time saver because you won't have to pull them afterwards.
Plant heather to entice helpful bugs. Bees are very attracted to heather. When heather is first shaped for the duration of the spring, it really is an early nectar resource. Spiders, ground beetles and other helpful insects are drawn to heather beds since they will not are inclined to get jostled all around. Since of this, do not overlook to shield your arms when pruning heather beds.
As was pointed out previously, all you truly need to have is a little bit of knowing the basics to see that gardening is not as difficult as it looks. With the appropriate gardening advice, like the guidance highlighted in the suggestions earlier mentioned, you can begin producing landscape masterpieces in your very own back yard.


Vaudoy Communal Cemetery contains three Commonwealth burials of the First World War, two of them unidentified.
3123 Serjeant James O'Loughlin, 1st Bn. Irish Guards, died 6th September 1914, aged 25. Son of James O'Loughlin, of Cordangan, Tipperary.


text:
Skip to content Thursday, January 21st
TheMinotVoice.com
MAFB: Random Acts of Kindness at Dakota Elementary
by: Josh Wolsky | June 4, 2015
Share it via email!
You must be logged in to email a friend!
— Official News Release, Minot Air Force Base —
By Matt Balas, MAFB School Liason Officer
During the month of May, students at Dakota Elementary School learned about random acts of kindness from their school counselor Jade Feller. At the beginning of May, the students learned about what RAOKs are, how they can make a difference and servitude.
"I felt that the beginning of May was the perfect time to introduce RAOKs to the students because it coincided with Teacher Appreciation Week," Feller said.
Students had an opportunity throughout the month to participate in school-led ROAKs including making cards for military members in honor of Armed Forces Day and handing out special treats to parents while they dropped off and picked up their children.
"For students to feel like and understand that they truly are special and can make a difference, I felt it was important for them to not only learn about ROAKs but to actually participate in some practical examples," Feller said. "I couldn't think of any better way for the students to understand the impact of ROAKs than to say thank you to our military members and parents for all they do."
During the last week of May, Feller's teaching focused on learning about and practicing ROAKs outside of school. She also provided the students with numerous examples and recommendations of ROAKs the students could do with their families and impact the lives of others around them.
"After a month of performing various ROAKs, the ultimate goal is for these students to feel good about what they have done and continue to make positive differences in their communities," Feller said. "It doesn't matter if the ROAK is big or small; it is the feeling of doing something good for someone else that will last a lifetime for these children."
Image: Kathryn Lenertz, Dakota Elementary School principal, Col. Roy Collins, 5th Mission Support Group commander, and Jade Feller, Dakota Elementary School counselor, take a photo with participants of the random acts of kindness event, James Townsend, Taylor Link and Benito Isla at Minot Air Force Base, N.D., June 2, 2015. At the beginning of May, the students learned about what RAOKs are and how they can make a difference. (Courtesy photo)
News MAFB Education
Josh Wolsky
Editor and Publisher of TheMinotVoice, Developer of the #ForMinot Network, Co-Host of #GoodTalk Minot, Advocate and Friend of the Souris River, Former City Alderman, and clearly -- all things #MakeMinot. Go ahead, don't wait for permission!
TheMinotVoice.com is hosted on the ForMinot Network | © 2021


Depart London for Siem Reap.
Arrive in Siem Reap, the gateway to the temples of Angkor. Later in the day, you will visit the beautiful pink sandstone temple of Banteay Srei, famous for its intricate and delicate carvings.
Today focus on the 'Petite Circuit', which includes Ankor Thom, Ta Phrom, the Bayon amongst many others.
A morning on Tonle Sap lake and then head back to the temples of Angkor for the afternoon.
Enjoy a morning at leisure in Siem Reap and in the afternoon travel to Battambang via river boat.
Full day Battambang, taking a ride on the 'norry' railway tracks.
This morning you will leave Battambang, heading by road to Kep on the south coast.
Free day to relax in Kep.
Explore the colonial gem of Kampot and from there travel up to Bokor Hill Station.
Travel overland back to Phnom Penh, the capital of Cambodia. You will spend the next two nights in the capital.
Today explore the Royal Palace complex and the Silver Pagoda, and later you will visit the sombre museum of S-21 and the Killing Fields, two sites related to the Khmer Rouge regime.
This morning board a small boat and cruise along the Mekong looking for the rare Irrawaddy dolphin. Later drive to Sen Monorom in Mondulkiri.
Spend the day visiting the Elephant Valley Project.
A free day in Phnom Penh before you board your flight later tonight to fly back to London.
Of course this tour includes Phnom Penh and Siem Reap & Angkor – that goes without saying as no itinerary could not. However, away from these two touristy centres, then you are immediately blazing a trail on the road-less-travelled. Visit Battambang, Cambodia's second city, relax in coastal Kep, spend time with elephants in Mondulkiri and seek the rare Irrawaddy dolphins near Kratie. A genuine South East Asia adventure.


The office building is characterized by large span trusses around the elevator shaft and sharply angled roof design. The steel frame was constructed using advanced Japanese technology.
Tower 2 at One Raffles Place (formerly known as OUB Center), a 213-m high-rise, was constructed adjacent to the existing Tower 1. The structure is mainly built of steel, a relatively rare case for a high rise in Singapore. Long-span trusses were arranged around the elevator shaft to secure space for the office building.
Curtain walls were installed all around the exterior. The sharply angled roof design produces a unique exterior. The redesign was to facilitate the steel work and the precision of construction, and the steel manufacturing costs were reduced. High-level Japanese welding techniques were applied on all sections where welding was technically difficult for local fabrication. As a result, a quality building was constructed.


text:
"""A TF-IDF workflow (term frequency - inverse document frequency).

For an explanation of the TF-IDF algorithm see the following link:
http://en.wikipedia.org/wiki/Tf-idf
"""

# pytype: skip-file

from __future__ import absolute_import
from __future__ import division

import argparse
import glob
import math
import re

import apache_beam as beam
from apache_beam.io import ReadFromText
from apache_beam.io import WriteToText
from apache_beam.options.pipeline_options import PipelineOptions
from apache_beam.options.pipeline_options import SetupOptions
from apache_beam.pvalue import AsSingleton

def read_documents(pipeline, uris):
  """Read the documents at the provided uris and returns (uri, line) pairs."""
  pcolls = []
  for uri in uris:
    pcolls.append(
        pipeline
        | 'Read: %s' % uri >> ReadFromText(uri)
        | 'WithKey: %s' % uri >> beam.Map(lambda v, uri: (uri, v), uri))
  return pcolls | 'FlattenReadPColls' >> beam.Flatten()

class TfIdf(beam.PTransform):
  """A transform containing a basic TF-IDF pipeline.

  The input consists of KV objects where the key is the document's URI and
  the value is a piece of the document's content.
  The output is mapping from terms to scores for each document URI.
  """
  def expand(self, uri_to_content):

    # Compute the total number of documents, and prepare a singleton
    # PCollection to use as side input.
    total_documents = (
        uri_to_content
        | 'GetUris 1' >> beam.Keys()
        | 'GetUniqueUris' >> beam.Distinct()
        | 'CountUris' >> beam.combiners.Count.Globally())

    # Create a collection of pairs mapping a URI to each of the words
    # in the document associated with that that URI.

    def split_into_words(uri_line):
      (uri, line) = uri_line
      return [(uri, w.lower()) for w in re.findall(r'[A-Za-z\']+', line)]

    uri_to_words = (
        uri_to_content
        | 'SplitWords' >> beam.FlatMap(split_into_words))

    # Compute a mapping from each word to the total number of documents
    # in which it appears.
    word_to_doc_count = (
        uri_to_words
        | 'GetUniqueWordsPerDoc' >> beam.Distinct()
        | 'GetWords' >> beam.Values()
        | 'CountDocsPerWord' >> beam.combiners.Count.PerElement())

    # Compute a mapping from each URI to the total number of words in the
    # document associated with that URI.
    uri_to_word_total = (
        uri_to_words
        | 'GetUris 2' >> beam.Keys()
        | 'CountWordsInDoc' >> beam.combiners.Count.PerElement())

    # Count, for each (URI, word) pair, the number of occurrences of that word
    # in the document associated with the URI.
    uri_and_word_to_count = (
        uri_to_words
        | 'CountWord-DocPairs' >> beam.combiners.Count.PerElement())

    # Adjust the above collection to a mapping from (URI, word) pairs to counts
    # into an isomorphic mapping from URI to (word, count) pairs, to prepare
    # for a join by the URI key.
    def shift_keys(uri_word_count):
      return (uri_word_count[0][0], (uri_word_count[0][1], uri_word_count[1]))

    uri_to_word_and_count = (
        uri_and_word_to_count
        | 'ShiftKeys' >> beam.Map(shift_keys))

    # Perform a CoGroupByKey (a sort of pre-join) on the prepared
    # uri_to_word_total and uri_to_word_and_count tagged by 'word totals' and
    # 'word counts' strings. This yields a mapping from URI to a dictionary
    # that maps the above mentioned tag strings to an iterable containing the
    # word total for that URI and word and count respectively.
    #
    # A diagram (in which '[]' just means 'iterable'):
    #
    #   URI: {'word totals': [count],  # Total words within this URI's document.
    #         'word counts': [(word, count),  # Counts of specific words
    #                         (word, count),  # within this URI's document.
    #                         ... ]}
    uri_to_word_and_count_and_total = ({
        'word totals': uri_to_word_total, 'word counts': uri_to_word_and_count
    }
                                       | 'CoGroupByUri' >> beam.CoGroupByKey())

    # Compute a mapping from each word to a (URI, term frequency) pair for each
    # URI. A word's term frequency for a document is simply the number of times
    # that word occurs in the document divided by the total number of words in
    # the document.

    def compute_term_frequency(uri_count_and_total):
      (uri, count_and_total) = uri_count_and_total
      word_and_count = count_and_total['word counts']
      # We have an iterable for one element that we want extracted.
      [word_total] = count_and_total['word totals']
      for word, count in word_and_count:
        yield word, (uri, float(count) / word_total)

    word_to_uri_and_tf = (
        uri_to_word_and_count_and_total
        | 'ComputeTermFrequencies' >> beam.FlatMap(compute_term_frequency))

    # Compute a mapping from each word to its document frequency.
    # A word's document frequency in a corpus is the number of
    # documents in which the word appears divided by the total
    # number of documents in the corpus.
    #
    # This calculation uses a side input, a Dataflow-computed auxiliary value
    # presented to each invocation of our MapFn lambda. The second argument to
    # the function (called total---note that the first argument is a tuple)
    # receives the value we listed after the lambda in Map(). Additional side
    # inputs (and ordinary Python values, too) can be provided to MapFns and
    # DoFns in this way.
    def div_word_count_by_total(word_count, total):
      (word, count) = word_count
      return (word, float(count) / total)

    word_to_df = (
        word_to_doc_count
        | 'ComputeDocFrequencies' >> beam.Map(
            div_word_count_by_total, AsSingleton(total_documents)))

    # Join the term frequency and document frequency collections,
    # each keyed on the word.
    word_to_uri_and_tf_and_df = ({
        'tf': word_to_uri_and_tf, 'df': word_to_df
    }
                                 | 'CoGroupWordsByTf-df' >> beam.CoGroupByKey())

    # Compute a mapping from each word to a (URI, TF-IDF) score for each URI.
    # There are a variety of definitions of TF-IDF
    # ("term frequency - inverse document frequency") score; here we use a
    # basic version that is the term frequency divided by the log of the
    # document frequency.

    def compute_tf_idf(word_tf_and_df):
      (word, tf_and_df) = word_tf_and_df
      [docf] = tf_and_df['df']
      for uri, tf in tf_and_df['tf']:
        yield word, (uri, tf * math.log(1 / docf))

    word_to_uri_and_tfidf = (
        word_to_uri_and_tf_and_df
        | 'ComputeTf-idf' >> beam.FlatMap(compute_tf_idf))

    return word_to_uri_and_tfidf

def run(argv=None, save_main_session=True):
  """Main entry point; defines and runs the tfidf pipeline."""
  parser = argparse.ArgumentParser()
  parser.add_argument('--uris', required=True, help='URIs to process.')
  parser.add_argument(
      '--output', required=True, help='Output file to write results to.')
  known_args, pipeline_args = parser.parse_known_args(argv)
  # We use the save_main_session option because one or more DoFn's in this
  # workflow rely on global context (e.g., a module imported at module level).
  pipeline_options = PipelineOptions(pipeline_args)
  pipeline_options.view_as(SetupOptions).save_main_session = save_main_session
  with beam.Pipeline(options=pipeline_options) as p:

    # Read documents specified by the uris command line option.
    pcoll = read_documents(p, glob.glob(known_args.uris))
    # Compute TF-IDF information for each word.
    output = pcoll | TfIdf()
    # Write the output using a "Write" transform that has side effects.
    # pylint: disable=expression-not-assigned
    output | 'write' >> WriteToText(known_args.output)
    # Execute the pipeline and wait until it is completed.

if __name__ == '__main__':
  run()

redpajama_set_name: RedPajamaGithub


Natural Factors CLA Tonalin® The SlimFactor® 1000 mg 180 Softgels | 12 Baskets Nutrition & Health Co.
Natural Factors CLA Tonalin The SlimFactor is sourced from safflower oil and is a natural fat burner, especially when combined with exercise and diet. CLA, or conjugated linoleic acid, helps increase lean muscle mass and decrease body fat, without the unpleasant side effects of many diet aids.
Adults take 2 softgels 3 times daily or as directed by a health care practitioner. Consult a health care practitioner for use beyond 6 months.


text:
Viewing: All publications
Evidence and consultations
(-) Public health
What does the public think about the NHS?
As part of our project on the changing relationship between the NHS and the public, the Fund commissioned some initial polling from Ipsos MORI. The results are in.
By Harry Evans et al - 16 September 2017
The King's Fund response to the Mayor of London's draft health inequalities strategy
We find that the draft strategy is a good start, but we believe as it is finalised its commitments need to be more tightly focused on inequality reduction than they currently are.
The politics of health: what do the public think about the NHS?
Dan Wellings reviews the polls to uncover what the public are looking for from politicians when it comes to the NHS.
By Dan Wellings - 1 June 2017
Public satisfaction with the NHS in 2016
In 2016 the NHS remained popular with the public. In particular, the public values a system that provides high-quality, comprehensive services that are free at the point of use.
By Ruth Robertson - 30 March 2017
What is social prescribing?
Social prescribing enables GPs, nurses and other primary care professionals to refer people to a range of local, non-clinical services. But does it work? And how does it fit in with wider health and care policy?
Inverse care law
The inverse care law describes a perverse relationship between the need for health care and its actual utilisation. John Appleby and Chris Deeming discuss this relationship in this Health Service Journal paper.
By John Appleby et al - 21 June 2001
Voices, Values and Health: Involving the public in moral decisions
Looks at public involvement in policy debates around health-related values via a study on attitudes in London.
By Kristina Staley - 1 January 2001


This animation was created for a Facebook campaign. This means we had to make it shorter and snappier than usual in order to engage the target demographic. After getting an understanding of the client requirements we came up with the concept of 'Five Signs You're Really Lazy', with the final one of these designed to generate leads for the client. Animation for social media campaigns has a potentially huge audience, but you need a strong hook to make your video stand out from the constant background buzz.


text:
Segersta kyrka en kyrkobyggnad som tillhör Hanebo-Segersta församling i Uppsala stift. Kyrkan ligger i samhället Segersta vid älven Ljusnans norra strand mellan Landaforsen och Ljusnans utflöde i Bergviken.

Medeltidskyrkan
Första kyrkan i Segersta byggdes i början av 1200-talet och bestod då av rektangulärt långhus med lägre och smalare kor i öster. Sannolikt tillkom ett kyrktorn i väster. Senare byggdes kyrkan ut åt öster och då tillkom sakristia vid norra sidan och vapenhus vid södra sidan. Vid slutet av 1400-talet eller i början av 1500-talet försågs kyrkans innertak med tegelvalv, tre i långhuset, ett i sakristian och ett i vapenhuset. Långhusets valv försågs med kalkmålningar av mästaren Eghil som var verksam i Hälsingland i början av 1500-talet. 1694 vitlimmades kyrkan invändigt och kalkmålningarna doldes. Vid slutet av 1700-talet räckte inte kyrkan längre till och man började planera för en större kyrkobyggnad.

Nuvarande kyrkobyggnad
Nuvarande kyrka i empirstil uppfördes 1811 efter ritningar av arkitekt Fredrik Blom. Inte förrän 2 augusti 1818 invigdes kyrkan trots att den var färdigbyggd 1811.

Kyrkan består av ett rektangulärt långhus med ett rakt avslutat kor i öster. Norr om koret finns en sakristia. Vid västra sidan finns kyrktornet med huvudingång och vapenhus. Ännu en ingång finns vid södra långsidan och ovanför denna finns en koppartavla med årtalet 1807 och Gustav IV Adolfs namnchiffer. Tornet kröns av en vitmålad lanternin med ett urverk. Lanterninens tornur har tillkommit år 1850. Väggarna är av gråsten och har fönster- och dörromfattningar av tegel. Långhuset täcks av ett sadeltak som är valmat vid östra sidan ovanför koret.

Kyrkorummet har ett golv av lackat trä som är ett trappsteg högre i koret. Innertaket täcks av ett tunnvalv och saknar bärande pelare. En läktare är byggd år 1839. Ovanför det murade altaret finns en kalkmålning som är utförd 1850 av Fredrik Blombergsson.

Inventarier
 I kyrkan finns två oljemålningar. Ena målningen är gjord av Cenovia Dalei, född 1650, och föreställer den törnekrönte Kristus. Andra målningen från 1700-talet har motivet Kristi Himmelsfärd.
 En ljusstake av järn är från medeltiden.
 Två brudkronor är från 1700-talet.
 Orgeln med tio stämmor är byggd 1840 - 1841 av Lars Nordqvist i Alfta. En kororgel är införskaffad år 1992.
 Vid korets norra vägg finns predikstolen från 1851 som är byggd och målad av Fredrik Blombergsson och som ersätter en tidigare predikstol från år 1643. Korgen och ljudtaket är cylinderformade. Predikstolens alla delar är målade i grått och har förgyllda lister och dekorationer. På predikstolens korg står ett timglas från år 1715.
 I tornet hänger två klockor. Storklockan är från 1778 och lillklockan från 1650 och omgjuten 1821.

Orgel
Den nuvarande orgeln byggdes 1841 av Lars Niclas Nordqvist, Alfta. Orgeln är mekanisk med slejflådor. 1911 renoverades och ombyggdes orgeln av Per Johan Johansson, Ore. Orgeln fick då ett fristående spelbord. 1963 renoverades och tillbyggdes orgeln av Einar Berg, Stockholm. Det fristående spelbordet togs då bort.

Bildgalleri

Referenser

Tryckta källor

Webbkällor
 Församlingen informerar om kyrkan
 Segersta hembygdsförening

Noter

Externa länkar
 Svenska kyrkan Bollnäs pastorat

Kyrkobyggnader i Uppsala stift
Kyrkobyggnader i Bollnäs kommun
Kyrkobyggnader invigda 1818
1818 i Sverige

redpajama_set_name: RedPajamaWikipedia


The area of the factory is 40000m2, the area of purifying workshop is 7000m, and fixed assets are about 5,000,000USD. Our main products are Disposable infusion sets, Disposable blood transfusion sets, Disposable Sterile syringe sets, latex glove, disposable infusion set, simple oxygen mask, nebulizer mask, urine cup, hernia mesh, urine bag etc. Now we can manufacture more than 200,000,000 sets per year. Through ten years hard work, our hardware and software have arrived at the first-class in the same factory in china. Our trade mark" LELUN" was apprised the only "famous trade mark" in the same trade in Changzhou city. And We won the title of "High quality produce" by Jiangsu Province in 1991.In 2000, our factory passed through the ISO13485 and got the certificate of CE. We also have the license of exporting by ourselves. Now our products are not only sold to all over the country, but also sold far to the other countries like United States, Europe, Africa, etc.
Our factory persists in the principle of "first quality, high credit, superior service". Sincerely welcome from all over the world to talk business and cooperate with us.
We hope we could have more and future cooperation!!


Nat King Cole; Nelson Riddle; Stan Kenton; Les Baxter; Billy May; Dave Cavanaugh; Frank DeVol; Belford Hendricks; Ralph Carmichael; Natalie Cole; King Cole Trio.; Four Knights (Musical group); Stan Kenton Orchestra.
Nat King Cole, piano, vocals ; The Four Knights, vocals (track 21) ; Natalie Cole, vocals (track 21) ; The King Cole Trio (tracks 2-4, 6, 9-11); Nelson Riddle, arranger (tracks 1, 4, 13, 15, 17, 18, 19, 20 and 22) and conductor (tracks 1, 13, 15, 17, 18, 19, 20) ; Stan Kenton and his orchestra (track 3) ; orchestra conducted by Les Baxter (tracks 4, 14) ; Billy May, arranger and conductor (tracks 5, 7, 21) ; Dave Cavanaugh, arranger and conductor (track 8) ; Frank DeVol, arranger and conductor (track 11) ; Belford Hendricks, orchestra and chorus arranger and conductor (track 12) ; Ralph Carmichael, conductor (track 16) ; other unidentified orchestras.
Recorded August 17, 1951 (track 1) ; November 30, 1943 (tracks 2, 6) ; August 15, 1950 (track 3) ; March 11, 1950 (track 4) ; September 4, 1951 (track 5) ; May 14, 1957 (track 7) ; February 4, 1958 (track 8) ; May 1, 1946 (track 9) ; August 22, 1948 (track 10) ; August 22, 1947 (track 11) ; June 19, 1962 (track 12) ; December 30, 1952 (track 13) ; February 6, 1951 (track 14) ; January 10, 1952 (track 15) ; April 11, 1963 (track 16) ; July 27, 1954 (track 17) ; August 24, 1953 (track 18) ; December 3, 1953 (track 19) ; December 20, 1954 (tracks 20 and 21).
Compact disc;Unforgettable -- (Get your kicks on) Route 66 -- Orange colored sky -- Mona Lisa -- Walkin' my baby back home -- Straighten up and fly right -- Send for me -- Looking back -- You call it madness (but I call it love) -- (I love you) For sentimental reasons -- Nature boy -- Ramblin' rose -- Pretend -- Too young -- Somewhere along the way -- Those lazy-hazy-crazy days of summer -- Smile -- Darling, Je vous aime beaucoup -- Answer me, my love -- A blossom fell -- If I may -- Unforgettable (duet with Natalie Cole).
Unforgettable (duet with Natalie Cole) / Irving Gordon.
Add tags for "The greatest hits". Be the first.
schema:performer <http://viaf.org/viaf/121317265> ; # King Cole Trio.
schema:performer <http://viaf.org/viaf/121024696> ; # Stan Kenton Orchestra.


Load your family into the 2007 Ford Expedition. It features an automatic transmission, 4-wheel drive, and a powerful 8 cylinder engine. Top features include remote keyless entry, a rear window wiper, a leather steering wheel, heated and ventilated seats, fully automatic headlights, heated door mirrors, a trailer hitch, and more. Back seat passengers will appreciate the rear audio controls, allowing them to make easy adjustments to the stereo system. Third row seats provide an even greater maximum passenger capacity. Premium sound drives 7 speakers, providing you and your passengers a sensational audio experience. Side curtain airbags deploy in extreme circumstances, shielding you and your passengers from collision forces. A Carfax history report indicates just one previous owner. Our team is professional, and we offer a no-pressure environment. We'd be happy to answer any questions that you may have. We are here to help you.


text:




Live Chat 416-214-6363 Email Login
416-214-6363 Login
Our data centre
Server colocation
Email and web hosting
MyExchange
HostPath
Internet and phone bundles
Dial up
  
What is it like to build your own data centre?
Building a data centre that stands out so it can survive in a crowded market is tough, especially with the growing disparity between upstarts and giants, but nevertheless exciting. I speak from having worked on the ground, to eventually guiding the technology and business direction for our business — a cloud and data centre firm. It's a never-ending process of optimizing and shrinking. A smart team oriented business setting with direction, is vital to squeezing innovation out from the engineering team. It sounds tense but that's the game.
Demands hard work
First you need a team of skilled individuals that fit the entire stack to maintain and optimize the physical facilities, HVAC (heating, ventilation, and air conditioning), telecom, network, electrical, hardware, storage and server engineers. There is more. You also need to consider software and the licensing, recurring capital and labour costs, and the late nights in labs discussing continuous improvements.
Requires strict coordination
Much of daily life for these very hard-working engineers is driven by a few – but very important – key performance indicators that include uptime, capacity and performance at each layer of the stack. This is all being done on a shoestring budget, and our engineers take tremendous pride and ownership of 'their' systems. Budget constraints will always be there — unless you work for a web giant, this type of constraint culture isn't apparent.
Power to steer
Depending on vendors for most of the stack severely limits the ability to compete and evolve. Being in control of the stack has many benefits, and controlling more of the stack allows DCs to decide their own destiny, this leads to more comfort and better SLAs that can be offered downstream to clients. This is why it's no surprise that some of the well-known web giants [get others to] build their own custom hardware, lay their own fiber and telecom, and have multiple custom power and cooling solutions.
Getting in-house control of something like cooling isn't a trivial affair, you have to consider humidity, air flow, saturation, pressure and PUE, and you have to have the right skill set to manage all this. It's tough, but once you own this, you're no longer beholden to an HVAC firm, you can keep costs low, and drive down prices.
Unless you have deep pockets to build out at scale and innovate with millions at hand, some of the other alternatives are innovating to be better or different, or being specific, and doing this on a shoestring.
This type of thinking is now necessary, and it directly affects what it's like to build a DC.
A need to be unique
There are an abundance of tools that have enabled the creation and growth of software-defined data centres. By utilizing virtualization and hybrid clouds, multiple facilities are able to operate transparently as one. This is very important because it directly affects a DC's cost structure and ultimately, the prices it sets and the profits it makes.
As you can imagine, it's difficult to battle the web giants on their own turf. This is why business and market perspectives are more important than ever before. Having clean cabling or fast servers isn't as important in the bigger picture. What you really want to focus on are things like carving out a market niche, efficiency, and unit margin per square foot.
Newer and innovative data centre builders are most focused on innovations that help lower capital and operating expenses. The type of data centre and how it is built must also be driven by market need and a specific offering. This means putting on a business hat and thinking about what's a wash, cost substitutions and opportunity cost.
So, what is it like for us to build a data centre in this day and age of giants?
Well, it means staying calm and thinking about business fundamentals and questioning technology standards, and trying to do a lot with very little — this drives innovation. Yes, being specific in this way is risky, but the alternative of trying to do battle with giants who can pivot on a dime has only one unfortunate conclusion.
It's an exciting time, and imposing constraints on oneself makes for creative thinking. It's exciting and scary because the existing large firms are getting bigger and more entrenched. Money isn't an immediate and existential issue for them, but it is (and should be) for an upstart. That means the time is ripe to start anew. We still sleep under our desks when we need to and argue over squeezing out watts from drive cycles, or aggregating virtual blocks over 100 miles. And, I imagine a lot of others in the mid-sized space do the same thing.
Akshay Kalle is the CTO for the Pathway Group of Companies (pathcom.com), tasked with leading its infrastructure growth and innovation efforts. An "intrepreneur" at heart, he is a specialist in machine learning and big data and directs the firm's innovation lab. A holder of multiple graduate degrees in computer science and mathematics, Akshay has carved out a name for himself in the area of applied machine learning. His accomplishments have included AI-driven email filters, smart OSS and monitoring systems, and predictive analytics tools used for finance and personal health, used by large carriers and international Fortune 500 firms. A second generation businessman, he aims to uphold Pathway's brand virtues of ethical conduct, openness and relevance. When he's not working, Akshay can be seen running, even when it's -20 outside. Akshay can be reached at akshay.kalle [at] pathcom [dot]com.
Categories:
News and Media (13)
Business colocation Business Continuity Business Impact Assessment Cancer Recovery Certifications cloud Cloud Privacy Cloud Security Colocation Conferences Consumer Choice Award Customer Service Data Centre Data Privacy Disaster Recovery Disaster Recovery as a Service Entrepreneurship IDS information security info sec intrusion detection systems ISO 27001 : 2013 machine learning Managed Colocation Managed Services Migration Nexus Youth Summit Partnerships Pathway Events Private Data Suite Recognitions Security Security Policy Server Colocation siem SOC 2 SOC 2 Type 2 virtualization vmware partner Windows 2003 Windows XP
We are now a VMware partner – Professional Service Provider
Pathway's CTO Investing in our Future
Why did you choose to support Y2Youth? "The concept is what appealed to me. Although…
Why is cloud security such a big challenge?
Centralizing and delegating control of your mission critical systems and data out of the office…
How to choose a managed service provider during the recession
Oliver Bush, Technical Writer As Canada enters a recession, businesses all over the country have…
Shoring Up the Castle: Using Machine Learning and Data Visualization to Improve Network Security
Todd Howe, Linux Systems Engineer Traditionally, specialists in information security divide into two opposing camps…
Reaching new heights this Christmas
This year, we decided to add an element of adventure to our Christmas party by…
Part 4: The money question
This is really what it's about for most firms: the cost. There are many ingredients…
Part 3: Your identity dictates what you need
A provider can offer anything from raw ingredients for programmers to build online services and…
Services
Latest news
Connect with us!
Facebook
Twitter
Linkedin
Google Plus
 How to find us
 Мap
95 Apple Creek Blvd
Markham ON L3R 1C7
 Contact us
416.214.6363 (Toronto)
1.877.883.8516 (Outside GTA)
Copyright © 2023 Pathway Communications. All Rights Reserved. Pathway Legal


This is a 44 years old Hispanic man from Woodland Hills who had difficulty with breathing through his nose due to a broken nose. His before and after nose surgery pictures show that after rhinoplasty his nose is now straight. He is not only happy to have fixed his broken nose, but also that he is now able to breathe well through his nose. During a his consultation with Dr. Sean Younai who is a board certified plastic surgeon he learned about steps taken during rhinoplasty surgery to fix his broken nose, as well as to straighten his deviated septum. Patient underwent a closed rhinoplasty surgery with septoplasty, turbinectomy, and repair of his nasal fracture on an outpatient basis and recovered well after nose surgery.


EZ Choice Realty & EZ Choice MLS | The newest and most progressive real estate offices!
Tim Kugler is the founding Broker of EZ Choice Realty.
EZ Choice Realty is one of the newest and most progressive real estate offices in all of Central Florida, offering traditional real estate services, real estate consultation and discount real estate services.
EZ Choice Realty aims to provide its clients access to both progressive and highly trained real estate agents who are eager and willing to assist them with all their real estate needs. By offering everything from a traditional, "full service" approach, to a simple real estate consultation ,or even a discount, "flat-fee" listing, there will always be a skilled and qualified agent waiting to assist you at EZ Choice Realty.
Custom Bartlett Pool Home in Fish Hawk Trails!


LOS ANGELES, CA--(Marketwire - February 2, 2011) - Every woman -- with her unique style, size and smart financial sense -- can now have a couture-inspired wedding gown thanks to a first-ever union between renowned celebrity designer Kirstie Kelly and Costco. Kirstie Kelly Signature is kicking off a series of touring trunk shows at select Costco locations. With wedding dresses ranging from $650 to $1,400 -- starting at 40% off retail -- each four-day event offers brides-to-be a limited opportunity to find a designer wedding dress at an unprecedented price.
Complete with a comfortable changing room, lounge for family and friends and an expert bridal consultant, these special event salons offer brides a personalized experience. Each salon features a breadth of sizes from sizes 2 to 24 so that women are more likely to find their size and see immediately what they will look like on their big day. Due to the limited number of dresses available, online appointments are strongly recommended.
"In today's world, many brides-to-be are paying for all or part of their weddings and are becoming very savvy about how to find a beautiful, high-quality wedding gown at an affordable price," said Kirstie Kelly, designer of the Kirstie Kelly Signature collection. "The Kirstie Kelly Signature line offers all the splendor of finding the perfect wedding gown but at a Costco price."
The collection debuts six distinct styles with classic silhouettes; gorgeous fabrics; top-of-the-line fit and finish; and, soft embellishments such as Alencon lace, crystal or pearl beading and handmade flowers and petals. The beautifully designed gowns are available in organza, satin, diuponi or taffeta and perfectly complement a range of skin tones and body types - ideal for both indoor and outdoor weddings.
To see photos and schedule an appointment, visit www.kirstiekelly.com/signature.
Available exclusively at Costco, Kirstie Kelly Signature offers quality couture-inspired bridal gowns for the smart woman who doesn't want to choose between affordability and elegance. To learn more, visit www.kirstiekelly.com.
Kirstie Kelly Signature Collection, exclusively at Costco. Visit www.kirstiekelly.com/signature to shop at select Costco locations.


text:
Tue Feb 14 2023
Swedish American Hall
2174 Market St San Francisco, CA 94114
This is a fully seated show!
For any event that is listed as 18 or 21 and over, ANY ticket holder unable to present valid identification indicating that they are of age will not be admitted to this event, and will not be eligible for a refund. Any event listed as All Ages, means 6 years of age or older. ALL tickets are standing room only unless otherwise specified. If you need special accomidation, contact info@cafedunord.com.
Support acts are subject to change without refund.
Proof of Vaccination: NOT required for entry.
Proof of Negative Test: NOT required for entry.
Masks: Staff and patrons are not required to wear masks though many do. Touring artists often request that patrons in close proximity wear masks. We recomend bringing a mask if you are able. We remain respectful to artists, staff, and patron's comfort level and safety.
COVID Warning: An inherent risk of exposure to COVID-19 exists in any place where people gather. You assume all risks, hazards, and dangers arising from or relating in any way to the risk of contracting COVID-19 or any other communicable disease or illness, whether occurring before, during, or after the event, however, caused or contracted, and voluntarily waive all claims and potential claims against the Event Organizers, and their affiliated companies relating to such risks. You expressly agree to comply with all laws and the rules of the Event Organizers when attending the event.
**The health screening protocols above are subject to change per show at the artist's request. Any show specific changes will be updated via email prior to the show. Thank you for your patience and cooperation.**
Chuck Prophet and The Make Out Quartet
Chuck Prophet & The Mission Express
Country-Rock
THE LAND THAT TIME FORGOT
Since his neo-psychedelic Green On Red days, Chuck Prophet has been turning out country, folk, blues, and Brill Building classicism. THE LAND THAT TIME FORGET is something different, a weather vane picking up signals from outer space – or maybe it's the Heartland.
Priced out of his beloved hometown, San Francisco, Prophet found himself re-energized in Upstate NY just a few miles from the Vermont border – and made a record that is much a 21st century exorcism as it is America.
The songs inhabit a world where a Fast Kid might be on the run from the truant officer or a handsy boss…or the Immigration Service. These are love songs that turn political on a dime (Love Doesn't Come from the Barrel of a Gun), and melodic hallucinations about kicking back in the Oval Office after hours "talking to my baby, saying baby, let's not fight."
Where else besides a Chuck Prophet LP are songs going to come at you from both the Tenderloin and an English roundabout, with stopovers in Nixonland and a love-struck mirror on a Saturday night while a workingman tries his Best Shirt On? With special appearances by the ghost of Johnny Thunders and Willie Wonka and John the Baptist and the train that brought Abraham Lincoln home one last time.
In Waving Goodbye, a young girl leaves small town attitudes behind to conquer the world one gig at a time. Then there's a dance Marathon, lost in time and reborn as a reality show. According to Womankind, men had their run, but it's over. (The good news is he can still try to sing his way into her heart.)
And it all leads up to 1600 Pennsylvania Avenue where a singer has his say, in two and a half loping verses and a middle eight.
Here's Chuck:
"Have any of you been to a 24-hour Walmart on the outskirts of Pittsburgh after midnight lately? It was just me and a couple tweakers roaming the auto parts aisles. We got along just fine. Long story short, I fixed that guitar by my lonesome and am playing it right now. I'm kind of proud of that."
"I will say this, though, about Ohio. Some of my truest hard earned fans are in Ohio. Go on and call it a fly-over-state, but not while Chrissie Hynde is in earshot, unless you want a vegan boot up your ass. All I'm saying is that a state is a lot more than which candidate won by how many votes. I mean you gotta feel sorry for the conservatives. The only songs they can play at their rallies without getting hit with a cease and desist order are by Ted Nugent and Charlie Daniels. And those two sure aren't shy about expressing their opinions."
THE LAND THAT TIME FORGOT got off the ground in the Money Belt, only to find its legs in the Borscht Belt. Musically it has deep roots, from the Southern Delta to the discos of Munich. There's a kind of folkish inevitability to it, lots of acoustic instruments, on top of each other and side by side. But as much as folk music is the soil all music grows from, it never hurts to have a boiler room. So, there's always a rhythm section shuffling under your feet here.
Written mostly with longtime co-conspirator klipschutz, this LP steps out of Chuck Prophet's comfort zone ("two guitars, bass, and drums"). After nailing three tracks in S.F. with Grammy-winning alchemist Matt Winegar, Prophet confesses, "We hit a wall. Schedules. Money. Towed vehicles: a thousand large to get one van out of lockup."
So he went out on tour, a solo tour. Driving through the Catskills he dropped into Kenny Siegal's Old Soul Studios, in a "5-bedroom Greek Revival listed on the National Registry," Chuck and Kenny immediately began to argue. Over anything. Whether it was too hot or too cold (according to WHOM?). At the end of the day – "a very long day, three weeks of them – let's just say Kenny's the man. At Old Soul, musicians drop in, sometimes complete blind dates. We did everything live. The drummer gigs with Kevin Morby. The bass player, out of some jazz scene. Piano player, an honorary Bad Seed. A mish mash of personalities and styles. Turns out you can make a lot of noise with acoustic instruments, if there are enough of them."
When asked about his life, Prophet is candid and evasive all at once: "What do you want to know. Death, health issues, financial hijinks, I've had them all the past few years. We lost my dad and we lost Stephie's dad too. The basement flooded. My shoulder went out. I got hives over 80% of my body; was quarantined. The only break I caught was when the ear, eye, nose, and throat doctors were all in the same building. Oh, and I almost got killed about seven times in rented cars in snowstorms, lost on the way to gigs. Hey, maybe we should talk about songs instead."
limit 8 per person
For any event that is 18 or 21 and over. Any Ticket holder unable to present valid identification indicating that they are of age will not be admitted to this event, and will not be eligible for a refund.
COVID Warning: An inherent risk of exposure to COVID-19 exists in any place where people gather. You assume all risks, hazards, and dangers arising from or relating in any way to the risk of contracting COVID-19 or any other communicable disease or illness, whether occurring before, during, or after the event, however, caused or contracted, and voluntarily waive all claims and potential claims against the Event Organizers, and their affiliated companies relating to such risks. You expressly agree to comply with all laws and the rules of the Event Organizers when attending the event.
Tue Feb 14 2023 8:00 PM
Swedish American Hall San Francisco CA
This event is 21 and over. Any ticket holder unable to present valid identification indicating that they are at least 21 years of age will not be admitted to this event, and will not be eligible for a refund. For any event that is 18 or 21 and over. Any Ticket holder unable to present valid identification indicating that they are of age will not be admitted to this event, and will not be eligible for a refund.


text:
package com.koroshiya.archive.steppable;

import android.content.Context;
import android.graphics.Point;
import android.support.annotation.Nullable;

import com.koroshiya.controls.JBitmapDrawable;
import com.koroshiya.io_utils.ArchiveParser;
import com.koroshiya.io_utils.ImageParser;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.lang.ref.SoftReference;
import java.util.Enumeration;
import java.util.zip.CRC32;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;

public class JZipArchive extends SteppableArchive{

	private final ZipFile zip;

	public JZipArchive(String path, Context c) throws IOException {

		super(c);

		zip = new ZipFile(path);

        Enumeration<? extends ZipEntry> e = zip.entries();

        while (e.hasMoreElements()) {

            ZipEntry zipEntry = e.nextElement();
            String name = zipEntry.getName();

            if (ImageParser.isSupportedImage(name) && zipEntry.getCompressedSize() > 0 && isValidEntry(zip, zipEntry)) {
                addImageToCache(zipEntry, name);
            }

        }

		if (getTotalPages() > 0){
            super.sort();
		}else {
			throw new IOException("No supported images in "+new File(path).getName());
		}

	}

    private boolean isValidEntry(ZipFile zip, ZipEntry entry){
        InputStream inputStream = null;
        try {
            inputStream = zip.getInputStream(entry);

            byte[] buff = new byte[4096];
            int readLen;
            CRC32 crc32 = new CRC32();

            while ((readLen = inputStream.read(buff)) != -1) {
                crc32.update(buff, 0, readLen);
            }

            try {
                inputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }

            return crc32.getValue() == entry.getCrc();
        } catch (Exception e) {
            if (inputStream != null) {
                try {
                    inputStream.close();
                } catch (IOException ioe) {
                    ioe.printStackTrace();
                }
            }
            return false;
        }
    }

    @Override
    public InputStream getStream(int i) throws IOException {
        JImage j = this.cache.get(i);
        ZipEntry zipEntry = (ZipEntry)j.getImage();
        return zip.getInputStream(zipEntry);
    }

	@Override
    @Nullable
	public SoftReference<JBitmapDrawable> parseImage(int i, int width, boolean resize, boolean allowTrim){

        JImage j = this.cache.get(i);
        ZipEntry zipEntry = (ZipEntry)j.getImage();
        String name = j.getName();
		File f = new File(tempDir, name);

		if (!this.tempDir.exists()){
            createTempDir();
		}

        JBitmapDrawable temp = null;

        try {

            InputStream is = null;
            try {
                if (this.progressive) {
                    if (f.exists() || ArchiveParser.writeStreamToDisk(this.tempDir, zip.getInputStream(zipEntry), name)) {
                        Point p;
                        try {
                            p = ImageParser.getImageSize(f);
                        }catch(IOException ioe){
                            is = new FileInputStream(f);
                            p = ImageParser.getImageSize(is);
                        }
                        is = new FileInputStream(f);
                        temp = ImageParser.parseImageFromDisk(is, p, width, resize, allowTrim);
                    }
                } else {
                        is = zip.getInputStream(zipEntry);
                        Point p = ImageParser.getImageSize(is);
                        is = zip.getInputStream(zipEntry);
                        temp = ImageParser.parseImageFromDisk(is, p, width, resize, allowTrim);
                }
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                if (is != null) {
                    is.close();
                }
            }

        } catch (IOException e) {
            e.printStackTrace();
        }

    	return new SoftReference<>(temp);

    }

    @Override
    public void close(){}

}


text:
Q: Zlib Compression of a large file by chunks in C# I need some help with the zlib compression of a large file.
My problem is that I cannot compress the file by chunk to the same level that I compress it in one go. The result of a compression when I do it by chunks is slightly bigger. However I need to compress files to be the same size as of doing it in one go. I have coded my application in C#. I appreciate if you could please have a look and give me your advice.
Note: I used both DotNetZip and SharpZipLib libraries and found the result of compression of these two libraries are different as well.
       int len = 1 <<16;
       int partSize = 5 <<16;
       MemoryStream ms = new MemoryStream();
       //ZlibStream streamCompressed = new ZlibStream(ms, CompressionMode.Compress, CompressionLevel.Default);
       DeflaterOutputStream streamCompressed = new DeflaterOutputStream(ms,  new Deflater( Deflater.DEFAULT_COMPRESSION, false ),len);
       try
       {
         using var sourceFile = new BinaryReader(File.OpenRead(FilePath));
         while ((bytesToRead = sourceFile.Read(chunk, 0, len)) > 0)
         {
           streamCompressed.Write(chunk, 0, bytesToRead);
           compData = ms.ToArray();
           ms.Position = 0;
           ms.SetLength(0);
           data = AddArrayToArray(data, compData);
           if (data.Length >= partSize)
           {
             //UPLOAD DATA
           }
        }
        ms = new MemoryStream();
        streamCompressed.Flush();
        compData = ms.ToArray();
        data = AddArrayToArray(data, compData);
        //UPLOAD THE LAST PART OF DATA
       }


text:
Milt Jackson – Opus De Funk
Condition : B (EX) / A (NM)
Label: Prestige – P-24048, Prestige – P 24048
Format: 2 × Vinyl, LP, Compilation, Gatefold
Style: Bop, Hard Bop, Jazz-Funk
A1 Opus De Funk 4:05
A2 Buhaina 4:32
A3 I've Lost Your Love 4:59
A4 Soma 5:25
A5 Wonder Why 5:22
B1 My Funny Valentine 4:37
B2 Stonewall 7:42
B3 I Should Care 4:16
B4 Nearness Of You 4:01
B5 Moonray 5:01
C1 Sealer, The 6:29
C2 Ruby, My Dear 4:23
C3 None Shall Wonder 3:52
C4 Ruby 5:48
D1 Invitation 3:50
D2 Stella By Starlight 3:56
D3 Too Close For Comfort 5:11
D4 Poom-A-Loom 6:50
Art Direction – Phil Carroll
Bass – Percy Heath (tracks: A1 to B5), Ron Carter (tracks: C, D)
Compilation Producer – David Turner (2)
Drums – Connie Kay (tracks: A5 to D4), Kenny Clarke (tracks: A1 to A4)
Engineer [Original Recording] – Ray Fowler (tracks: C1 to D4), Rudy Van Gelder (tracks: A1 to B5)
Liner Notes – Thomas Albright
Photography By – Lee Tanner, Peter Breinig
Photography By [Cover] – Phil Bray
Piano – Horace Silver (tracks: A1 to B5), Tommy Flanagan (tracks: C, D)
Producer [Originally] – Bob Weinstock (tracks: A1 to B5), Orrin Keepnews (tracks: C1 to D4)
Tenor Saxophone – Jimmy Heath (tracks: C, D1, D2)
Trumpet – Henry Boozier (tracks: A1 to A4), Kenny Dorham (tracks: C1 to D1, D3, D4), Virgil Jones (tracks: D3, D4)
Vibraphone – Milt Jackson
The catalog# is printed as "P-24048" on cover and spine but as "P 24048" on the labels.
A1 to A4 previously released as Milt Jackson Quintet, Prestige 10" LP 183, recorded June 16, 1954
A5 to B5 previously released as Milt Jackson Quartet, Prestige 7003, recorded May 20, 1955
Side C & D previously released as Invitation, Riverside 446, recorded August 30, October 31, and November 7, 1962
Side A and B recorded at Van Gelder Studios, Hackensack, New Jersey.
Side B and D recorded at Plaza Sound Studios, New York City,
Remastered, 1975, at Fantasy Studios; Berkeley, Ca.


text:
Thunmanfonden är en fond, ursprungligen grundad till förmån för skalden Olof Thunman, vars avkastning tillfaller "uppländsk eller om Uppland förtjänt skald, konstnär eller annan kulturpersonlighet". Fonden grundades till Olof Thunmans 50-årsdag år 1929 efter bidrag från en stor krets enskilda. Bidrog gjorde även Uplands nation, Upplands regementes officerskår och Lundequistska bokhandeln. Fonden utökades år 1939. Efter Olof Thunmans och hans hustrus död förvaltas fonden av Uplands nation som sedan 1976 vartannat år utdelar Thunmanstipendiet till en person eller grupp enligt ovan angivna kriterier.

Stipendiater
1976 Thomas Borgström
1980 Ulla Fries (konstnär)
1982 Magnus Fagerberg
1984 Elsie Johansson (författare)
1986 Johan Schinkler
1988 Bertil Lundén
1990 Håkan Bergström
1992 Åsa Jinder (musiker)
1994 Owe Thörnqvist (sångare och låtskrivare)
1996 Lillemor Alpsjö
1998 Mattias Klum (fotograf)
2000 Stefan Parkman (dirigent)
2002 Göran Ulväng
2004 Anna-Karin Nytell Oldeberg
2006 Marie-Louise Sundquist
2008 Väsen (musikgrupp)
2010 Olle Gällmo (riksspelman)
2012 Veronica Maggio (sångare och låtskrivare)

Källor

Stipendiefonder
Uppland


PLAN INVOLVEMENT: I was adopted by PLAN staff member Joe Wiley two years ago and have been coming to work at PLAN ever since.
BACKGROUND: I have completed Advanced Obedience training at Pet Smart, which makes me eligible to work as a therapy animal someday.
WHY PLAN: I have to work here because I have no transportation anywhere else!
FUN FACT ABOUT ME: I can only raise one ear, but I'm working on the other one.


Six One Minute Plays featuring themes of love, homelessness, being abandoned, an announcement and the question of existence.
All Public Spaces in Belfast City Centre.
The production information was provided by a member of Kabosh Theatre.


Scandal Sneak Peek Season 5, Episode 15: What Do People Really Think of Mellie?
"She might be okay...if she didn't talk."
In the Season 5 episode "Pencils Down," when Mellie Grant (Bellamy Young) makes a very public faux pas, Olivia Pope (Kerry Washington) must decide how far she'll go to fix it. Meanwhile, the Gladiators learn valuable intel about Jake Ballard's (Scott Foley) new love interest, and David Rosen (Joshua Malina) seeks advice about his love triangle with Liz North (Portia de Rossi) and Susan Ross (Artemis Pebdani). See a sneak peek video and photos straight from the episode below!
Need a recap of Scandal Season 5, Episode 14? Watch our new weekly video series Scandal Pops!


Nice to know we are "not fakes"
Most of this is a rehash, but it's good to keep attention on this.
Great you caught this, but there is another thread on it that went up yesterday.
Is this the first feedback we have gotten on anti-retroviral therapy?
Also the Activated Cellular Therapy looks interesting.
Ah, sorry about the re-post. I've been trying to keep up with the forum but I am sure I've been missing some posts.
no worries. Personally, I'd rather get something twice than miss it!


text:
Apple stopped making iPods
Gerald Bax May 11, 2022 2 min read
apple announce To discontinue the iPod touch, the latest model of portable devices for iPod music playback are still available. The first iPod was an introduction Publicly by Steve Jobs on October 23, 2001, Over Twenty Years Ago: Then the hardware was a huge commercial success around the world, helping make Apple the company it is today. The iPhone, the product to which it owes its current success most, is coming six years later.
The first iPod (Apple)
The first iPod model had an ultra-thin 5 GB hard drive, weighed 186 grams, and a battery lasted about ten hours, was only compatible with Apple computers, and cost $399.
2004 iPod minis (Apple)
Over the years, there have been several generations of iPod models: starting in 2004, the iPod mini was small, still with a black and white screen; Since 2005, iPod nano, Thinner, iPod shuffle, without screen; And since 2007 iPod touches – basically iPhones without phone functionality. The production of the iPod nano and shuffle, actually the latest Apple devices that were used exclusively for listening to music, It was discontinued in 2017.
2012 iPod nano (Apple)
iPod touches can be purchased while supplies last. It was presented in its latest version in 2019: in the company's plans it should have attracted those people who do not want or cannot buy an iPhone because it is too expensive. But for most people, there is no point in owning a second device just to listen to music, which can also be done with smartphones.
iPod touch (Apple)
Apple announced the end of an important part of its history, and said that "the soul of the iPod will live on" in all of its music-playing devices, starting with the iPhone.
See also Android, these apps can steal your data: delete it now!
Gerald Bax
"Incurable internet trailblazer. Troublemaker. Explorer. Professional pop culture nerd."
Previous Xbox and Bethesda working on 'multiple' Disney games, for rumor – Nerd4.life
Next It's virtual but it looks real: an Italian artist rebuilt a Japanese station using Unreal Engine 5. The result was amazing
Nearing the release date with Rockstar Games in the final touches, a leak – Multiplayer.it
February 1, 2023 Gerald Bax
Come Here Pirates on Netflix | The invasion scheduled for this year
Hellblade 2 and Starfield have a release window by Jeff Grubb – Multiplayer.it
January 31, 2023 Gerald Bax


However, some drivers disregard these concerns and drive anyway. Whether someone has to get to work at a certain time or they simply do not want to take the time to pull off the road, some people push through and drive even though they are not feeling well. If you were struck by someone who may have had motion sickness, this can be difficult to determine. But if another driver causes a crash and they say that they were not feeling well at the time of the accident, you should take note of this as it may be important to bring up in court.
Aside from motion sickness, drivers may not feel well for many other reasons and this can also lead to an accident. Flu season, for example, is one reason why many people suffer from symptoms that interfere with their driving abilities.


Dr. Gary Adelson is a pathologist from Kingsport, Tennessee and he works at several hospitals in the area, such as Johnston Memorial Hospital and Mountain View Regional Medical Center. He got his diploma from University of California San Diego School of Medicine and did his residency years in Anatomic and Clinical Pathology at University of California San Diego and the University of Virginia. The doctor is certified in Anatomic Pathology & Clinical Pathology, Pathology Recertification and has an experience of more than 20 years.
Dr. Gary Adelson has contributed to 3 publications.
Metabolism of biogenic amines in neuroblastoma and glioma cells in culture.
Skaper, S. D., Adelson, G. L., Seegmiller, J. E.; J Neurochem. 1976 Nov.
Social service training for hospital-based dental residents.
Adelson, G., Sachs, S. A.; Health Soc Work. 1980 May.
Ureteral stenosis secondary to retroperitoneal rheumatoid nodules.
Adelson, G. L., Saypol, D. C., Walker, A. N.; J Urol. 1982 Jan.


text:
Le problème de l'ange est un jeu mathématique conceptuel inventé par le mathématicien John H. Conway en 1982 dans le livre Winning Ways for your Mathematical Plays.

Sur un échiquier de taille supposée infinie, un diable tente de piéger un ange. À chaque coup, le diable élimine l'une des cases du plateau, puis l'ange doit sauter à une case quelconque non éliminée, distante de N cases au maximum, N étant un entier positif fixé au préalable (dénommé « pouvoir » de l'ange). L'ange pouvant « voler », les cases intermédiaires entre sa case de départ et sa case d'arrivée peuvent avoir déjà été éliminées ou non. Seule la distance entre ces deux cases est limitée par le pouvoir de l'ange.

L'objectif du diable est de piéger l'ange sur une « île » située à une distance d'au moins N cases de toute autre case non éliminée du plateau, empêchant ainsi l'ange de se déplacer.

On peut penser a priori que l'ange est beaucoup plus puissant que le diable, car il peut se déplacer tous azimuts sur un plateau de taille infinie, tandis que le diable ne peut éliminer qu'une case à la fois. Toutefois, le diable est lui-même très puissant puisqu'il peut éliminer des cases qui se trouvent à une grande distance de la position actuelle de l'ange et en quelque sorte « piéger le terrain » en prévision du passage de l'ange dans ces régions. Conway et ses collaborateurs avaient ainsi montré très vite qu'un ange de pouvoir 1 perd en moins de 150 coups, et qu'un ange de pouvoir arbitraire, mais qui n'a jamais le droit de reculer (d'aller vers le sud) de plus de 1000 cases, se fait finalement piéger.

La question principale que posait ce jeu a été finalement résolue en 2006 :
 l'ange peut-il échapper indéfiniment au diable, à condition que son pouvoir soit suffisant ?

La réponse est positive, dès que ce pouvoir est supérieur ou égal à 2 : une stratégie gagnante (pour l'ange), due à O. Kloster est décrite ici (en anglais) : , et peut être testée  à l'adresse suivante :

Références

Mathématiques récréatives
Théorie des jeux
John Horton Conway


Meets on the 1st Monday of each month from 8-10am. Agendas and minutes of the meetings are posted on the larimer.org/boards page.
Has been created! This 27 member committee held it's first meeting on April 8, 2019.
They will continue to meet on the 2nd Monday of each month from 8-10am. Agendas and Minutes will be posted on the larimer.org/boards page.
Tuesday, April 23, 2019 (6:30pm) Mental Health Proclamation-Town of Berthoud, Town Hall, 807 Mountain Ave.
Tuesday, April 23, 2019 (6:40pm) Mental Health Proclamation-Estes Park, Town Atrium, 170 MacGregor Ave.
Tuesday, May 21, 2019 (5:30pm) Mental Health Proclamation - City of Fort Collins, Council Chambers, City Hall, 300 LaPorte Ave.