Background
==========

Most of the literature pertaining to hospital-based dental care receipt under a general anaesthetic concerns children \[[@B1]-[@B3]\]. However, a substantial proportion of the 15+-year-old population also require such care \[[@B4]-[@B10]\]. This population includes those who are physically, mentally or medically compromised; those with behavioral problems such as autism or learning disabilities; those with phobias, or those who require treatment not possible under local anaesthesia settings, for example, removal of impacted wisdom teeth.

Hospital-based dental general anaesthetic (DGA) services are resource-intensive and not without risk \[[@B11]\]. Hospitals providing DGA services are usually in large urban centers, meaning rural/remote-dwellers may face financial pressure incurred by time off from work, childcare, travel and accommodation in order to receive such treatment. Considerable care is required in order to be fit for a DGA, including fasting before the procedure, navigating oneself through the hospital system and establishing follow-up care (driving immediately after DGA treatment is not permitted). These may be additional barriers to those already fearful or who find hospital settings stressful.

In Australia, a country with a 15+-year-old population of over 15.5 million in 2002 \[[@B12]\], little is known about the prevalence of adult DGA care in a hospital setting. Defining the extent of the problem is a matter of some importance, both to inform the development of appropriate DGA service provision for those aged 15+ years requiring such care, and to reorient primary dental services so that the demand for such treatment under a hospital-based general anaesthetic might be reduced.

We retrospectively examined hospital separation data collected at a national level in Australia from 1998--1999 to 2004--2005 with the purpose of exploring receipt of DGA care among 15+-year-olds in relation to age, sex, Indigenous status, location and treatment type. We aimed to test three hypotheses in this simple descriptive study: (i) DGA rates among the 15--19-year-old age-group would be higher than their older counterparts; (ii) DGA rates would be higher among those living in rural/remote locations and; (iii) there would be higher rates of extractions as opposed to more conservative procedures.

Methods
=======

Data on dental procedures received by those aged 15+ years admitted to public and private hospitals across all Australian states and territories were accessed from the Australian Institute of Health and Welfare National Hospital Morbidity Database from 1 July 1998 until 30 June 2005. Data were collected for administrative purposes by hospital-employed dentists and recorded in standardised ICD-10-AM (International Statistical Classification of Diseases and Related Health Problems, 10th Revision, Australian Modification) codes, which are patient record codes used throughout Australian hospitals. Because all data were de-identified and collected primarily for administrative purposes, the Human Research Ethics Committee of the University of Adelaide did not consider ethical approval to be necessary for the secondary analysis of such data. The ICD-10-AM dental procedure codes pertaining to extractions or restorations were included. Demographic information was collected and included patients\' age, sex, Indigenous status and residential location. Age was broken down into 5-year groupings, up to the age of 85+ years (15 groups in total). Indigenous status was defined by a person identifying as being Aboriginal, Torres Strait Islander or both, ie the ethnicity of the first Australian inhabitants, and was indicated by self-report in a routine question about ethnic identity upon admission. Separations with Indigenous status \'not stated\' were excluded from the analyses.

Residential location was measured using the Rural, Remote and Metropolitan Areas (RRMA) classification, which is an index based on Statistical Local Areas (SLA) that allocates each SLA in Australia to a category based primarily on population numbers and an index of remoteness. \'Metropolitan\' is defined as any capital city or other metropolitan area with a population of \> 100,000, \'rural\' zones are those with a population ranging from 10--99,000 and \'remote\' areas those with a population of \< 10,000. For the purposes of this study, \'rural\' and \'remote\' zones were combined.

Estimated resident population (ERP) counts of all demographic stratifications (sex, age, Indigenous status, location) for the years 1998--1999 to 2004--2005 were provided by the Australian Bureau of Statistics. DGA incident rates (number of DGA separations for a specified strata/diagnosis divided by the ERP of the same specified strata, multiplied by 100,000) and incident rate ratios were computed along with 95% confidence intervals (95% CI) using a generalised Poisson regression model \[[@B13]\]. Results from the Poisson regression models are presented as non-adjusted and adjusted incident rate ratios to estimate the independent effect of each covariate on the DGA rate. Data were analysed using Intercooled Stata 8.0.

Results
=======

There were a total of 502,522 hospital admissions for dental care under a general anaesthetic for those aged 15+ years between 1998--1999 and 2004--2005 at a national level in Australia. The overall DGA rate was 472.79 per 100,000. Impacted teeth was the most prevalent diagnosis (63.7 percent), followed by dental caries (12.4 percent; Table [1](#T1){ref-type="table"}). However, there was marked variation in treatment received by age-group, with nearly 80 percent of those aged 15--24 years receiving DGA care for treatment of impacted teeth, which steadily decreased across age-groups to less than 10 percent of those aged 85+ years. The converse was observed for the treatment of dental caries, with less than 3 percent of 15--19 year olds receiving DGA care for this reason, which steadily increased across age-groups to 46.2 percent of those aged 85+ years. Impacted teeth was the most common diagnosis for those aged 15--44 years, followed by dental caries among those aged 25--44 years. Among those aged 44+ years, dental caries was the most common principle diagnosis, followed by impacted teeth (except for those aged 80+ years, where periapical abscess was the 2^nd^most common diagnosis). Disturbances in tooth eruption or anomalies of tooth position were the 2^nd^--4^th^most common reason for DGA receipt among those aged 15--34 years, while periapical abscess was the 3^rd^most common reason for DGA receipt among their 35--79-year-old counterparts. Pathological fracture of tooth was the 4^th^most common reason for DGA receipt among those aged 45--69 years.

######

Ten most common principle diagnoses for DGA receipt among Australians aged 15+ years; 1998--1999 to 2004--2005 by age-group (percent) (top five diagnoses per agegroup highlighted in bold)

                                   AGE GROUP (years)
  -------------------------------- ------------------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
  Impacted teeth                   **63.7**            **79.3**   **79.3**   **71.6**   **62.7**   **49.8**   **37.2**   **27.8**   **21.8**   **18.1**   **15.4**   **14.4**   **8.7**    **9.9**    **9.2**    **7.1**
  Dental caries, unspecified       **12.4**            **2.7**    **3.9**    **9.1**    **15.1**   **22.3**   **28.5**   **32.6**   **33.3**   **34.8**   **34.7**   **35.2**   **43.2**   **41.6**   **43.6**   **46.2**
  Disturbances in tooth eruption   **3.9**             **5.5**    **4.6**    **4.2**    **3.2**    **2.7**    **2.1**    1.6        1.4        1.1        0.9        1.3        0.7        0.8        0.8        0.6
  Anomalies of tooth position      **3.2**             **4.8**    **3.6**    **3.2**    **2.8**    **2.4**    **2.1**    1.3        1.1        0.8        0.7        0.6        0.4        0.4        0.4        0.2
  Periapical abscess w/o sinus     **2.4**             0.3        0.9        **1.6**    **2.7**    **4.0**    **5.5**    **6.4**    **6.9**    **7.4**    **7.7**    **7.1**    **8.6**    **7.9**    **9.6**    **8.5**
  Chronic periodontitis            1.2                 0.7        **1.3**    1.3        1.3        1.4        1.4        1.5        1.6        1.6        1.5        1.2        0.6        0.7        0.5        0.5
  Embedded teeth                   1.0                 **1.2**    1.2        1.3        1.1        0.9        0.6        0.5        0.4        0.4        0.3        0.3        0.3        0.3        0.1        0.3
  Disorder of teeth, unspecified   1.0                 0.5        0.5        0.7        0.8        1.2        1.5        **1.9**    **2.1**    **2.7**    **2.7**    **2.9**    **3.6**    **3.5**    **3.6**    **3.5**
  Other disorders of teeth         0.7                 0.3        0.3        0.5        0.6        0.9        1.2        1.5        1.8        1.8        2.1        2.0        2.2        2.3        1.9        2.3
  Pathological fracture of tooth   0.7                 0.0        0.1        0.1        0.4        0.8        1.6        **2.3**    **3.2**    **3.1**    **3.3**    **3.4**    **3.0**    **2.8**    **3.0**    **3.1**

The overall DGA rate was higher among those aged 15--19 years (1428.41 per 100,000) and lower among those aged 85+ years (117.18 per 100,000) (Table [2](#T2){ref-type="table"}). After adjusting for other covariates, those aged 15--19 years had 13.20 times the DGA rate of those aged 85+ years. Females had 1.46 times the rate of males, while those living in rural/remote locations had 2.70 times the rate of their metropolitan-dwelling counterparts. Those identifying as non-Indigenous had 4.88 times the DGA rate of their Indigenous counterparts.

######

DGA rates, unadjusted incidence rate ratios and generalised adjusted incident rate ratios among Australians aged 15+ years; 1998--1999 to 2004--2005

  Variable              Dental morbidity   Rate per 100,000   95% CI\*           Unadjusted rate ratio   95% CI\*       Adjusted rate ratio†   95% CI\*
  --------------------- ------------------ ------------------ ------------------ ----------------------- -------------- ---------------------- --------------
  Age-group (years)
   15--19               134572             1428.41            1420.78--1436.09   12.19                   11.68--12.72   13.20                  12.65--13.78
   20--24               123453             1317.19            1309.83--1324.58   11.24                   10.77--1.73    12.36                  11.85--12.90
   25--29               67967              662.79             657.80--667.81     5.66                    5.42--5.90     6.14                   5.88--6.41
   30--34               44984              435.51             431.49--439.57     3.72                    3.56--3.88     3.95                   3.78--4.12
   35--39               30145              287.79             284.54--291.06     2.46                    2.35--2.57     2.58                   2.47--2.69
   40--44               23375              238.98             235.93--242.07     2.04                    1.95--2.13     2.13                   2.04--2.22
   45--49               18822              195.82             193.03--198.65     1.67                    1.60--1.75     1.75                   1.67--1.82
   50--54               16261              182.89             179.40--185.02     1.55                    1.49--1.63     1.62                   1.55--1.70
   55--59               12585              173.32             170.31--176.38     1.48                    1.41--1.55     1.54                   1.47--1.61
   60--64               8467               146.20             143.12--149.35     1.25                    1.19--1.31     1.29                   1.23--1.35
   65--69               6347               238.44             234.15--242.80     2.03                    1.94--2.13     2.10                   2.01--2.20
   70--74               5382               228.46             224.05--232.96     1.95                    1.86--2.04     2.02                   1.93--2.11
   74--79               4783               131.91             128.21--135.71     1.13                    1.07--1.18     1.17                   1.11--1.23
   80--84               3201               136.38             131.72--141.21     1.16                    1.10--1.23     1.20                   1.13--1.26
   85+ (ref)            2172               117.18             112.34--122.24

  Sex
   Male (ref)           208178             395.17             393.49--396.86
   Female               294344             549.38             547.41--551.36     1.39                    1.38--1.40     1.46                   1.45--1.47

  Location
   Metropolitan (ref)   371312             402.54             401.26--403.82
   Rural/Remote         294344             960.97             955.77--966.21     2.39                    2.37--2.40     2.70                   2.68--2.72

  Indigenous status
   Indigenous (ref)     4280               210.96             204.70--217.40
   Non-Indigenous       498242             477.77             476.45--479.09     2.26                    2.20--2.33     4.88                   4.73--5.03

\*95% Confidence Intervals computed under standard large sample Poisson assumptions \[13\]

†Generalised Poisson regression model rate ratio estimates are adjusted for all other covariates

When the DGA rate was separated into distinct procedures, the rate for one or more extractions (extraction 1+) was 461.88 per 100,000, while that for one or more restorations (restoration 1+) was 23.55 per 100,000 (note that the two procedures are not mutually exclusive, that is, it is possible for an individual to have had one or more extractions as well as one or more restorations) (Table [3](#T3){ref-type="table"}). After adjusting for potential confounders, those aged 15--19 years had 13.28 times the extraction 1+ rate of their 85+-year-old counterparts, and females had 1.46 times the rate of males. Those living in rural/remote locations had 2.70 times the extraction 1+ rate of those living in metropolitan settings, while those identifying as non-Indigenous had 4.90 times the rate of those identifying as Indigenous. After adjusting for other covariates, those aged 15--19 years had 9.14 times the restoration 1+ rate of those aged 85+ years. Females had 1.42 times the rate of males, while those living in rural/remote locations had 3.96 times the rate of their metropolitan-dwelling counterparts. Extraction 1+ rates among those identifying as non-Indigenous were 1.71 times higher than rates of those identifying as Indigenous.

######

DGA rates by extraction 1+ and restoration 1+, unadjusted incidence rate ratios and generalised adjusted incident rate ratios among Australians aged 15+ years; 1998--1999 to 2004--2005

                        Extractions 1+   Restorations 1+
  --------------------- ---------------- ---------------------------- ---------------------- ---------------------- ------- ---------------------- -------------------- --------------------
  Age-group (years)
   15--19               133326           1415.22 (1407.62--1422.86)   12.26 (11.75--12.80)   13.28 (12.72--13.86)   2857    33.50 (32.35--34.69)   8.68 (6.86--10.99)   9.14 (7.23--11.57)
   20--24               122491           1306.96 (1299.64--1314.33)   11.33 (10.85--1.82)    12.46 (11.93--13.00)   3038    32.40 (31.27--33.58)   8.40 (6.64--1-.63)   9.12 (7.21--11.55)
   25--29               66837            651.76 (646.82--656.74)      5.65 (5.41--5.90)      6.13 (5.87--6.40)      3372    32.87 (31.78--34.00)   8.52 (6.74--10.78)   9.09 (7.19--1.50)
   30--34               43694            423.10 (419.14--427.10)      3.67 (3.51--3.83)      3.89 (3.73--4.07)      3373    32.62 (31.54--33.75)   8.46 (6.69--10.70)   8.78 (6.94--11.11)
   35--39               28744            274.45 (271.29--277.66)      2.38 (2.28--2.49)      2.50 (2.39--2.61)      3174    30.31 (29.27--31.39)   7.86 (6.21--9.94)    8.05 (6.36--10.18)
   40--44               21933            224.22 (221.26--227.22)      1.94 (1.86--2.03)      2.03 (1.94--2.12)      2833    29.02 (27.97--30.11)   7.52 (5.94--9.52)    7.60 (6.00--9.62)
   45--49               17506            182.19 (179.50--184.91)      1.58 (1.51--1.65)      1.65 (1.58--1.72)      2203    22.93 (21.99--23.91)   5.95 (4.69--7.53)    6.08 (4.80--7.70)
   50--54               15152            169.83 (167.14--172.57)      1.47 (1.41--1.54)      1.54 (1.47--1.61)      1643    18.43 (17.56--19.35)   4.78 (3.77--6.06)    4.89 (3.86--6.20)
   55--59               11829            162.90 (159.98--165.87)      1.41 (1.35--1.48)      1.47 (1.40--1.54)      1044    14.39 (13.54--15.29)   3.73 (2.93--4.74)    3.79 (2.98--4.82)
   60--64               8057             139.12 (136.09--142.19)      1.21 (1.15--1.26)      1.24 (1.18--1.30)      507     8.79 (8.06--9.59)      2.28 (1.78--2.92)    2.29 (1.79--2.94)
   65--69               6094             230.06 (225.85--234.35)      1.99 (1.90--2.09)      2.06 (1.96--2.15)      307     10.96 (10.07--11.93)   2.84 (2.22--3.64)    2.88 (2.25--3.68)
   70--74               5224             224.16 (219.79--228.62)      1.94 (1.85--2.04)      2.01 (1.92--2.11)      229     7.40 (6.64--8.25)      1.92 (1.48--2.48)    1.96 (1.52--2.54)
   74--79               4684             129.19 (125.53--132.95)      1.12 (1.06--1.18)      1.16 (1.10--1.22)      171     4.35 (3.72--5.09)      1.13 (0.85--1.49)    1.17 (0.88--1.55)
   80--84               3142             133.93 (129.31--138.72)      1.16 (1.10--1.23)      1.19 (1.13--1.26)      89      3.87 (3.14--4.75)      1.00 (0.73--1.37)    1.03 (0.75--1.40)
   85+                  2138             115.39 (110.59--120.40)                                                    71      3.86 (3.06--4.87)

  Sex
   Male (ref)           203422           386.25 (384.58--387.91)                                                    10371   20.02 (19.65--20.41)
   Female               287429           536.52 (534.57--538.47)      1.39 (1.38--1.40)      1.46 (1.45--1.46)      14540   27.04 (26.60--27.48)   1.35 (1.32--1.38)    1.42 (1.38--1.45)

  Location
   Metropolitan (ref)   362804           393.36 (392.10--394.63)                                                    16178   17.42 (17.16--17.69)
   Rural/Remote         287429           938.05 (932.90--943.22)      2.38 (2.37--2.40)      2.70 (2.69--2.72)      8585    66.17 (64.82--67.56)   3.80 (3.70--3.90)    3.96 (3.86--4.07)

  Indigenous status
   Indigenous (ref)     4178             206.23 (200.04--212.60)                                                    318     30.21 (27.90--32.72)
   Non-Indigenous       486673           466.74 (465.44--468.05)      2.26 (2.20--2.33)      4.90 (4.75--5.06)      24593   23.43 (23.14--23.72)   0.76 (0.72--0.84)    1.71 (1.57--1.85)

\*95% Confidence Intervals computed under standard large sample Poisson assumptions \[13\]

†Generalised Poisson regression model rate ratio estimates are adjusted for all other covariates

The overall DGA rate across age-groups closely matched the extraction 1+ rate (Figure [1](#F1){ref-type="fig"}). The restoration 1+ rate followed a separate, and much lower, trend. DGA rates were the highest among those aged 15--19 years, and followed a downward curvilinear trajectory until the 60--64 year age-group, when a slight increase was observed. The rate fell again among the 75--79 year age-group, and remained steadily at this level across to the 85+ year age-group.

![DGA rates by age-group and procedure, 1998--1999 to 2004--2005.](1472-6831-8-10-1){#F1}

Discussion
==========

This study has shown that treatment of impacted teeth was the most common reason for DGA receipt among 15+ year-old Australians between 1998--1999 and 2004--2005, followed by dental caries treatment. However, the treatment received differed markedly when considered by age. DGA rates were the highest among those aged 15--24 years, and followed a downward trajectory until the 60--64 year age-group, when a slight increase was observed.

It is important to consider the validity and coverage of the information used in this analysis. Data were collected by hospital administrators who may not have, for whatever reasons, the same rigour and thoroughness of researchers using the data for primary investigative purposes. Although data was collected from all hospital-administrated DGAs, it did not include procedures performed outside hospital settings. However, with increasing concerns of litigation and safety, non-hospital administrated DGAs in Australia are few.

That DGA rates were higher among 15--24-year-olds in our study was unsurprising given evidence in the literature that suggests that those in this age-group are more likely to have their wisdom or other impacted teeth removed than their older counterparts \[[@B9],[@B14]\]. However, a sizeable proportion of the 25+-year-old population still received DGA care that, up until the age of 44 years, was predominantly for the removal of impacted teeth. From the age of 45+ years, the most common reason for DGA care was for treatment of dental caries, indicating that removal of impacted teeth among this age-group is perhaps more dangerous or that people in this age-group have already had any problematic impacted teeth removed.

It is important to consider whether the removal of wisdom teeth constitutes a public health problem and, given the scarcity of health resources, if there is an argument that a substantial proportion of such teeth need not be removed at all. Brickley and Shepherd \[[@B15]\] explored the rationale of lower third molar removal, based on the United State\'s National Institutes of Health (NIH) criteria, and concluded that while the most frequent reason for third molar removal in their study was pericoronitis, the next most frequent reason was that the contralateral tooth had been scheduled for removal under general anaesthesia. Of all the teeth scheduled for removal, only 59 percent were justified according to NIH criteria. Some 34 percent of patients might have avoided surgery altogether if NIH criteria had been the basis for intervention and a further 30 percent could have been scheduled for removal of one tooth only. These findings suggest that criteria for removal other than NIH criteria were being applied, resulting in unnecessary treatment under a general anaesthetic. Given that conservative care in a dental clinic setting is almost always preferable to treatment under a hospital-based general anaesthetic, it may be important for policy makers to consider the reasons for DGA care among the 15+-year-old population and to implement changes that encourage less costly and more conservative service provision measures for teeth that may not necessarily require removal.

There is no evidence to suggest why female DGA rates were one and a half times those of their male counterparts, although our findings are supported by the literature \[[@B16],[@B17]\]. Possible explanations include females being more motivated to receive such care or being more fearful about treatment for potential traumatic procedures under local anaesthetic settings. Females, in general, receive dental care more frequently than their male counterparts \[[@B18]\], meaning our findings may be an extension of this general trend.

It is interesting to note that while rural/remote dwellers had 2.7 times the DGA rate of their metropolitan-dwelling counterparts overall, and when one or more extractions were considered, this rate increased to 3.8 when restorations only were considered. This may reflect disparities in access to dental services, with dental personnel for adult populations in rural/remote areas in Australia being scarce \[[@B19],[@B20]\]. Vast geographic distances between rural townships in Australia and limited dental personnel in remote communities mean rural-dwellers may put off dental care until it can no longer be ignored; meaning teeth with carious lesions that may have been treated conservatively in the early stages require more radical treatment once the infection has spread. Rural-dwelling persons in Australia are, on the whole, more socio-economically deprived than metropolitan-dwelling persons \[[@B21]\], with the association between low socio-economic status and dental disease experience being well established \[[@B22]\]. Oral health expectations of rural-remote dwellers may also differ from their metropolitan-dwelling counterparts, with requests for teeth to be retained or removed influenced by access to dental services, a person\'s compliance with oral hygiene, oral health experience of other family members, priority of oral health to family members and familial dental health awareness \[[@B23]\].

It was unsurprising that non-Indigenous DGA rates were higher than their Indigenous counterparts, given that the anatomical features of many Indigenous Australians means that wisdom or other teeth are less likely to be impacted \[[@B24]-[@B26]\]. However, it is important to consider that Indigenous adults are generally reluctant to present for dental care, despite having high levels of untreated dental disease \[[@B27]\]. There is also a general reluctance of Indigenous Australians to present for hospital-based care \[[@B28],[@B29]\], meaning our findings may be an under-estimation of the true need for this type of service provision -- particularly for treatment of dental pathology.

There is limited evidence of the demand for adult DGA service provision in Australia. However, a national-level investigation of the Canadian adult population demonstrated a substantial need for such care, with 12 percent of those surveyed being \'definitely interested\' in GA for their dentistry and a further 42 percent being \'interested depending on cost\' \[[@B6]\]. This increased to 31 percent being interested, and 54 percent being interested depending on cost, when only those with high fear were considered. Dental fear may be one reason why DGA rates persisted through the age-groups examined in our study. Armfield and colleagues \[[@B30]\] reported that the prevalence of high dental fear at a national level in Australia was 16 percent, with this proportion increasing when females only were considered. Those aged 40--64 years had the highest prevalence of high dental fear, while people from higher socio-economic status groups generally had less fear. Although not examined, it is interesting to speculate if perhaps high fear patients were also more likely to desire dental care under hospital-based circumstances. More surveys on the demand and reasons for DGA care among adult populations would be useful.

Our demographic data reflects that reported from an investigation of practice patterns of oral and maxillofacial surgeons (those most qualified to remove impacted teeth) in Australia \[[@B31]\], where the largest proportion of clients seen (29 percent) were in the 18--24-year age group, and a slightly higher proportion (56 percent) were female. The main procedures conducted were for surgical removal of unerupted or partly erupted teeth, thus reflecting our study findings. The predominant location of services provided in both the public and private setting was a hospital theatre. While the main procedure among those aged 18--64 years was for dentoalveolar purposes (ie impaction), among those aged 65+ years, pathology was the predominant reason for a DGA. These findings are directly comparable with our study, with those aged 65+ years receiving DGA care, and most notably, extractions, because of underlying pathology (for example, dental caries) as opposed to treatment for impaction.

Conclusion
==========

Our study has shown that receipt of DGA care among the 15+-year-old Australian population is largely for treatment of impacted teeth, and that differences exist in relation to age, sex, Indigenous status, location and type of care received. Reasons for our findings are likely to be complex but may include access to care issues, limited resources, high treatment needs and behavioural factors. More research is required to better understand the public health implications of DGA receipt among 15+-year-olds, and to determine how demand for the need of such care might be reduced. The findings have public health and dental service provision relevance both in Australia and other nations.

Competing interests
===================

The author(s) declare that they have no competing interests.

Authors\' contributions
=======================

LMJ obtained and analysed the data from the Australian Institute of Health and Welfare Hospital Morbidity Database, and drafted the manuscript. KRT participated in the design of the study and completion of the manuscript. All authors read and approved the final manuscript. There were no sources of funding for this study.

Pre-publication history
=======================

The pre-publication history for this paper can be accessed here:

<http://www.biomedcentral.com/1472-6831/8/10/prepub>

Acknowledgements
================

The authors are grateful to the Australian Institute of Health and Welfare for providing data for this research.


Oscar with ich and cloudy eyes.

Shar created the topic: Oscar with ich and cloudy eyes.

My oscar had real bad ich so i put him in a sick tank and treated with herbtana over night it lost half the ich and is doing well all levels in the tank are good. What should i do to the other tank before i put him back once he is healed?

OFL replied the topic: Oscar with ich and cloudy eyes.

Hi there and welcome to our community.

Have you got any other fish in the other tank? Obviously white spot (as we call it here in the UK) is very contagious so any other fish are likely to contract the condition as well. Heat treatment is a very tried and tested method of clearing up white spot. What you could do is switch the temperature up to about 30°C and leave it like that for two or three days. Obviously, if you've got other fish you got to be careful that you don't cook them.

As for the cloudy eyes, not really sure what's causing that, especially if your water conditions are good. Maybe you could post a photograph if possible.

Shar replied the topic: Oscar with ich and cloudy eyes.

It looks to me like the ich may be on the eyes when i got a closer look. I can try to get a pic. I have a plecko in with him he has no spots. And i did bring the heat to 84f. They are both in the sick tank together. How much water should i change in the main tank? And should i treat it as well? There is no fish in there right now and i sent my husband for a new vacuum cause mines not working properly.

OFL replied the topic: Oscar with ich and cloudy eyes.

I can't really ascertain anything from the photo unfortunately. I can just about see one of the cloudy eyes. Doesn't look too bad, hopefully when everything settles down they will go back to normal. But what concerns me is if you have kept the filter running on your normal tank.

OFL replied the topic: Oscar with ich and cloudy eyes.

Sometimes fish develop a slime coat in order to protect themselves. This could be happening because of what he's gone through, but that's only a guess, I couldn't say for sure to be honest with you. Just want to make sure that the slime coat is any kind of bacterial infection. Just keep an eye on the situation for the next couple of days just to make sure nothing gets worse.

Shar replied the topic: Oscar with ich and cloudy eyes.

Ok fish is doing great! Ich is clear eyes are clear hes back to eating properly.. had to do a bit of hand feeding whatever was on his eyes he couldnt see the food. But all is well. I have a question whats a good vacuum brand cause the two ive baughten are crap..


1. Introduction {#sec1}
===============

Approximately 8% of malignant tumors among adults belong to the OSCC of head and neck \[[@B1]\]. The oropharynx and the mucous membranes of the mouth are considered as the main origins of more than 90% of squamous cell carcinomas \[[@B2]\]. Individuals exposed to the same environment are highly susceptible to head and neck carcinoma, hence the conclusion that genetic factors play an important role in the occurrence of head and neck carcinoma.

Cell differentiation, gene regulation, chromatin remodeling, cancer cell invasion, and metastasis are considered as the major roles played by lncRNAs. Deregulation of lncRNA is further considered as a major causative factor of numerous diseases in mammals. Different studies have demonstrated the importance of lncRNAs as biomarkers in the diagnosis and prognosis of cancers \[[@B3]\].

*LncRNA H19* is the first discovered lncRNA with its gene, located on human chromosome 11p15.5, encoding a 2.3 kb long, polyadenylated, spliced, and capped noncoding RNA \[[@B4]\]. *LncRNA H19* is transcribed only from maternally inherited alleles \[[@B5]\] and is responsible for controlling genome expression at different levels. *H19* influences the chromatin organization by the recruitment of chromatin modifying complex PRC2, and as a miRNA, it decoys sequestering miR-let7 and miR-106a on posttranscriptional control or as a precursor for miR-675-3p and miR-675-5p. *H19* is further capable of inactivating tumor suppressor proteins through interaction with p53 \[[@B6]\]. Possessing the functions of both oncogenes and suppressor genes \[[@B7], [@B8]\], *H19* polymorphism has been reported, by many different studies, to be associated with the development and occurrence of tumors \[[@B9]\].

Based on different studies, single-nucleotide polymorphisms (SNPs) are very important markers linking phenotypic changes to DNA-sequence variations. Research in this field is expected to promote the analysis of human system physiology and explain the molecular basis of the diseases. The risk of developing cancer was shown to possibly increase by rs2839698 \[[@B10]\] and decrease by rs2839698 \[[@B11]\] in *H19*. The purpose of the present study was to determine whether OSCC in the Iranian population is related to single-nucleotide polymorphisms (SNPs) in the *lncRNA H19* gene.

2. Materials and Methods {#sec2}
========================

2.1. Study Subjects {#sec2.1}
-------------------

This case-control study comprised 200 patients, diagnosed with new-onset OSCC by two independent pathologists, and 200 healthy individuals without a history of cancer. The entire case group (OSCC) was selected, without any limitations in age and gender, from the Namazi Hospital affiliated with the Shiraz University of Medical Sciences. Healthy people were randomly selected from those referred to Namazi Hospital as controls. As shown in [Table 1](#tab1){ref-type="table"}, a total of 200 patients with OSCC (44 females (22%) and 156 males, (78%)) aged 15-88 years (the mean age and standard deviation were 59.69 ± 16.24) and 200 healthy controls were enrolled in this study. The controls were frequency-matched with the cases on the basis of gender and age (±5 years old). The examined subjects aged 18-88 years. This study was approved by the Ethics Committee of the Shiraz University of Medical Sciences, Iran. The individuals voluntarily agreed to participate in this experiment as a part of a large prospective research project and completed the written informed consent form. The inclusion and exclusion criteria are listed in [Table 2](#tab2){ref-type="table"}.

2.2. SNP Genotyping {#sec2.2}
-------------------

In this research, the salting out method was employed to isolate DNA from the whole blood samples and DNA purity was measured by spectrophotometry through the use of Eppendorf Biophotometer (Germany). The *LncRNA H19* genomic sequence was obtained from the NCBI site (<http://www.ncbi.nlm.nih.gov>). The primers were designed for T-ARMS-PCR, a rapid and simple technique for identifying SNPs which were further detected \[[@B12]\]. The location of SNPs and T-ARMS-PCR primers are shown in [Table 3](#tab3){ref-type="table"}. PCR reactions consisted of a total volume of 20 *μ*L, containing 50 ng of genomic DNA, 0.5 *μ*M of each primer, 1 U Taq of DNA polymerase, 250 *μ*M of dNTPs, and 1.5 mM of MgCl~2~. The cycling conditions of PCR included initial denaturation at 95°C for 5 minutes, followed by 30 cycles for rs217727 and rs2107425 at 95°C for 30 seconds, annealing temperature for 30 seconds at 65°C for rs217727, 30 seconds at 65.8°C for rs2107425, and extension temperature for 40 seconds at 72°C, with a final extension of 72°C for 10 minutes. The PCR products were verified by 2% agarose gels. To ensure genotyping quality, approximately 20% of the random samples were sequenced and showed no genotyping error.

2.3. Statistical Analysis {#sec2.3}
-------------------------

The Hardy--Weinberg equilibrium (HWE) was assessed using chi-squared (*χ*^2^) test to compare the expected and observed genotype frequencies among the controls. Further used were the unconditional logistic regression analyses to test the relationship of each SNP with case/control status under different genetic models such as dominant, codominant, recessive, and overdominant. Odds ratio (OR) and its corresponding 95% confidence interval (95% CI) were scored to assess the strength of association between the risk of OSCC and *H19* polymorphisms. The results were considered statistically significant at *P* \< 0.05. The analyses were performed using the version 19.0 of the SPSS software.

3. Results {#sec3}
==========

The PCR product sizes of *H19* rs217727 polymorphism were 248 bp for C allele, 200 bp for T allele, and 397 bp for internal control; regarding the *H19* rs2107425 polymorphism, the PCR product sizes were 195 bp for T allele, 124 bp for C allele, and 266 bp for internal control at 2% agarose gel.

The frequency of the two SNPs genotypes and their correlations with OSCC risk are given in [Table 4](#tab4){ref-type="table"}. No significant deviations from Hardy--Weinberg equilibrium were observed with regards to the two polymorphisms in the case and control groups (*P* \> 0.05). Although the frequency of rs217727C allele was significantly lower in OSCC cases compared to the controls, no significant difference was found between the two groups concerning the rs2107425T allele frequency of *H19* gene (*P* \> 0.05), hence the association between the rs217727C allele and the risk reduction of OSCC (*P* = 0.002).

There was no relationship between the OSCC and *H19* rs2107425 genotype. Furthermore, the frequency of TT genotypes of *H19* rs217727 was significantly higher than that in OSCC cases compared to the controls (7.5 vs. 1.5%); TT genotype was associated with 6.04-fold higher risk of OSCC in the codominant model (OR = 6.04, 95%CI = 1.70 − 21.42, *P* = 0.001). In the dominant model, the CT+TT genotypes were associated with 1.62-fold higher risk of OSCC (OR = 1.62, 95%CI = 1.08 − 2.43, *P* = 0.01). Moreover, the *H19* rs217727 polymorphism was related to the 5.32-fold increase in the risk of OSCC in the recessive model (TT vs. CC+CT genotypes) ([Table 5](#tab5){ref-type="table"}).

4. Discussion {#sec4}
=============

In the present molecular epidemiological research, the effects of two *H19* gene polymorphisms (rs217727 and rs2107425) on OSCC susceptibility were investigated through a case-control investigation on southwest Iranian subjects. As far as the authors of the present research are concerned, the present is the first research to evaluate the risk of OSCC associated with *H19* polymorphisms in an Iranian population. In the present study, we used multiple inheritance models (codominant, dominant, recessive, and overdominant) to evaluate the associations between SNPs in H19 gene and OSCC risk. Although a significant association was observed between OSCC risk and *H19* rs217727 polymorphism in dominant, codominant, and recessive models, risk of OSCC and *H19* rs2107425 polymorphism were not correlated. In the overdominant model of inheritance, there were not any association between SNPs and risk of OSCC. The overdominant model of inheritance is an attractive model since a single gene can potentially create the heterotic effect, but only a few such loci have been identified. Our finding in general may be an indicator for a higher susceptibility to cancer development not for a specific cancer.

The important roles of lncRNAs in proliferation, cell cycle regulation, apoptosis, and differentiation have been reported in molecular studies \[[@B13]\]. The expression level, structure, and stability of lncRNA may change by genetic mutation on lncRNA \[[@B14]\], thereby contributing to the pathogenesis of many disorders. For instance, it was shown that the lncRNA level was reduced by allelic changes in rs11752942 through binding micro-RNA, leading to increased esophageal squamous cell proliferation \[[@B15]\]. Different genetic variants of *H19* are able to regulate the aberrant expressions of *H19* and influence the activity of regulatory factors \[[@B16]\]. Many previous studies have corroborated the significant role of *H19* as an oncogenic molecule in different cancer cells and in tumorigenesis. Chen et al. in 2016 suggested that *H19* might increase gastric cancer cell invasion and migration \[[@B17]\]. Similar findings have been observed in the carcinoma cells of esophageal squamous cell \[[@B18], [@B19]\]. It was demonstrated that inhibiting the expression of *H19* in hepatocellular carcinoma cell lines reduced the ability of carcinoma cells to migrate and invade \[[@B20]\]. *LncRNA H19* is capable of increasing the metastasis of pancreatic cancer tissues through highly expressing pancreatic cancer tissues \[[@B21]\].

lncRNA SNPs can further affect the occurrence of tumors as well as the expression and function of genes \[[@B20]\]. Changes in lncRNA polymorphic site may influence its expression level and stability, hence affecting the development of tumors. lncRNA SNPs can influence lncRNA-miRNA interaction and modify and change the stability of lncRNA structures \[[@B22]\]. To date, various studies have shown the association between *H19* polymorphisms and several types of cancer. In a meta-analysis, Chu et al. reported the association between three *H19* polymorphisms (rs2839698, rs217727, and rs2107425) and cancer susceptibility \[[@B16]\]. It was also shown that the polymorphic site of rs217727 on *H19* was associated with the risk of breast cancer (OR = 0.79; 95%CI = 0.55 − 0.97) \[[@B23]\]. In a meta-analysis, the relationship between cancer susceptibility and *lncRNA H19* polymorphisms was studied, where rs2839698 G\>A polymorphism was associated with digestive cancer risk; moreover, in the Caucasian populations, T allele variant of the rs2107425 C\>T polymorphism had a protective effect against cancer progression \[[@B24]\]. It was demonstrated in another study that the rs217727 polymorphic site on *H19* was associated with a certain cancer (OR = 1.31, 95%CI = 1.03 − 1.67) \[[@B11]\]. In European Caucasians, *H19* genetic polymorphisms (rs2107425 and rs2839698) might also be related to the susceptibility of cancer \[[@B25]\]. Yin et al. found that homozygous variant genotype of rs2107425 might increase the risk of lung cancer \[[@B26]\]. Another study suggested that in urothelial cell carcinoma individuals, both *H19* SNPs rs2107425 and rs217727 polymorphic variants were susceptible to increased risks of muscle invasive tumors \[[@B27]\]. Wu et al. observed that an upstream SNP of *H19*, rs2107425, was associated with a lower risk of hepatocellular carcinoma \[[@B28]\].

The present study specified whether the SNP in the *lncRNA H19* gene is associated with OSCC in Iranian individuals by the use of tetra-primer ARMS-PCR which is an accurate, reliable, and simple method for genotyping single-nucleotide polymorphisms. This method includes a PCR reaction in a vial with two pairs of primers followed by electrophoresis on agarose gel \[[@B29]\]. Noteworthy, although previous studies have reported the role of *H19* in various diseases, the present research is the first to investigate the genetic variation of *H19* in association with OSCC in an Iranian population. The controls and cases were similar in baseline characteristic distributions and matched with age. The limitations of the present study were the different ethnic groups living in the southwest of Iran, the low sample size which might have affected the results, and environmental factors. More promising results would be observed with larger sample sizes, validating whether *H19* SNP could affect *H19* expression and OSCC etiology.

5. Conclusions {#sec5}
==============

The present population-based case-control study provided the first evidence that *H19* rs217727 polymorphism might affect the risk of developing OSCC in an Iranian population. However, it is more preferable to use different ethnicities and a larger sample size to verify the results and perform function tests to reveal specific mechanisms.

The researchers thank the Vice-Chancellor of Shiraz University of Medical Sciences for supporting this research (Grant No. 17474).

Data Availability
=================

No data were used to support this study.

Ethical Approval
================

Ethical approval for the investigation was obtained from the Shiraz University of Medical Sciences Ethical Committee (ethical approval number: IR. SUMS. REC.1397, 864).

Conflicts of Interest
=====================

The authors declare that they have no conflicts of interest.

######

Demographic characteristics of the sample.

  Characteristics   Control (%)    Case (%)
  ----------------- -------------- ---------------
  Number            200 (100)      200 (100)
  Males             156 (78)       156 (78)
  Females           44 (22)        44 (22)
  Age               55.21 ± 9.45   59.69 ± 16.24

######

Patient inclusion and exclusion criteria.

  -------------------------------------------------------------------------------------
  Criteria    Description
  ----------- -------------------------------------------------------------------------
  Inclusion   \(i\) Histologically proven squamous cell carcinoma of the oral cavity\
              (ii) Resectable tumor stage III or IV\
              (iii) No tumor-specific pretreatment\
              (iv) Informed consent

  Exclusion   \(i\) Distant metastasis\
              (ii) Secondary malignancies\
              (iii) Pregnancy\
              (iv) No disposing capacity or expected insufficient compliance
  -------------------------------------------------------------------------------------

######

The primers used for detection of rs217727 and rs2107425 polymorphisms in *lncRNA H19* gene.

  Gene polymorphisms   Chr:position                   Product size                  Primers   Sequence (5′ to 3′)
  -------------------- ------------------------------ ----------------------------- --------- ------------------------------
  rs217727             Chr11:1995678                  Outer primers: 397 bp         FO        ATGACTCAGGAATCGGCTCTGGAAGGTG
  RO                   GGGGAAACAGAGTCGTGGAGGCTTTGA
  C allele: 248 bp     FI                             TCATCTTCATGGCCACCCCCTGCTGT
  T allele: 200 bp     RI                             ATATGGTGGCTGGTGGTCAACCGTACG

  rs2107425            Chr11:1999845                  Outer primers: 266 bp         FO        ACTTGAGTCCCAGGCCATGACACTGAAG
  RO                   CGGAATTGGTTGTAGTTGTGGAATCGGA
  T allele: 195 bp     FI                             CGACCTGAAGATCTGGTGCGGCTACT
  C allele: 124 bp     RI                             GGGTCATCTGGGAATAGGACACTCCTG

######

The alleles and genotypes frequency of the *H19* polymorphisms in OSCC cases and healthy Controls.

  Polymorphisms   Alleles *n* (%)   *χ* ^2^       *P* value   Genotypes *n* (%)   *χ* ^2^      *P*  value   *P* value of HWE^a^
  --------------- ----------------- ------------- ----------- ------------------- ------------ ------------ --------------------- ------- ------- ------
  rs217727        C                 T                                             CC           CT           TT
   Case           295 (73.75)       105 (26.25)   8.96        0.002               110 (55)     75 (37.5)    15 (7.5)              11.05   0.004   0.65
   Control        330 (82.5)        70 (17.5)                                     133 (66.5)   64 (32)      3 (1.5)
  rs2107425
   Case           252 (63)          148 (37)      0.04        0.8                 79 (39.5)    94 (47)      27 (13.5)             0.49    0.78    0.90
   Control        249 (62.25)       151 (37.75)                                   74 (37)      101 (50.5)   25 (12.5)

HWE, Hardy--Weinberg equilibrium.

######

The association of *H19* polymorphism and OSCC susceptibility.

  --------------------------------------------------------------------------------------------------------------------
                    Inheritance model   Genotype     Cases *n* (%)\      Controls *n* (%)\   OR (95% CI)   *P* value
                                                     *n* = 200           *n* = 200
  ----------------- ------------------- ------------ ------------------- ------------------- ------------- -----------
  rs217727          Codominant^a^       CC           110 (55)            133 (66.5)

  CT                75 (37.5)           64 (32)      1.47 (0.93-2.15)    0.10

  TT                15 (7.5)            3 (1.5)      6.04 (1.70-21.42)   0.001

  Dominant^b^       CC                  110 (55)     133 (66.5)

  CT+TT             90 (45)             67 (33.5)    1.62 (1.08-2.43)    0.01

  Recessive^c^      CC+CT               185 (92.5)   197 (98.5)

  TT                15 (7.5)            3 (1.5)      5.32 (1.51-18.69)   0.003

  Overdominant^d^   CC+TT               125 (62.5)   136 (68)

  CT                75 (37.5)           64 (32)      1.27 (0.84-1.92)    0.24

  rs2107425         Codominant          CC           79 (39.5)           74 (37)

  CT                94 (47)             101 (50.5)   0.87 (0.57-1.33)    0.52

  TT                27 (13.5)           25 (12.5)    1.01 (0.53-1.89)    0.97

  Dominant          CC                  79 (39.5)    74 (37)

  CT+TT             121 (60.5)          126 (63)     0.89 (0.60-1.34)    0.60

  Recessive         CC+CT               173 (86.5)   175 (87.5)

  TT                27 (13.5)           25 (12.5)    1.09 (0.60-1.95)    0.76

  Overdominant      CC+TT               106 (53)     99 (49.5)

  CT                94 (47)             101 (50.5)   0.86 (0.58-1.28)    0.48
  --------------------------------------------------------------------------------------------------------------------

OR, odd ratio; CI, confidence interval. ^a^Codominant, major allele homozygotes vs. heterozygotes. ^b^Dominant, major allele homozygotes vs. heterozygotes + minor allele homozygotes. ^c^Recessive, major allele homozygotes + heterozygotes vs. minor allele homozygotes. ^d^Overdominant, major allele homozygotes + minor allele homozygotes vs. heterozygotes.

[^1]: Academic Editor: Ian R. Ellis


The mighty Bomber girls climbed the ladder this 2011 season and made the leap to being a State champion after downing Minnehaha Academy 68-61 in the Class AA title battle at Target Center the afternoon of March 19. The victory reversed the result from last year’s final game, and gave Braham it...Read More

In a battle of attrition, the Braham girls held strong at the end to fend off tall Providence Academy 59-50 in the Class AA State semifinals March 18 at the Target Center. The victory locks the Bombers into a classic rematch with Minnehaha Academy in the 2 p.m. championship Saturday, March 19 back a...Read More

Greg Hunt Surging with a strong second half of basketball in yet another exciting Section 7AA championship game, Braham delivered a 63-52 victory over Esko. The March 10 win on the UMD court sends the Bombers to their third straight State tournament. The game began ominously when leading scorer Becc...Read More

Greg Hunt The 2011 Class AA girls basketball tourney is stacking up to be full-bore blast. All eight teams finished in the top 10 in the final rankings, with four teams returning from the 2010 field including defending champ Minnehaha Academy. Here’s a look at the March 16 quarterfinal pairings he...Read More

The Braham girls are hitting on all cylinders after they cruised to wins in their first three playoffs games. The Bombers aim to claim their third straight Section 7AA championship when they face Esko in the title game Thursday, March 10 (7 p.m.) on the University of Minnesota-Duluth court. The Esko...Read More

Playing in the Section 7AA girls basketball quarterfinals at UMD on Saturday, No. 1 South seed Braham pulled away in the second half to defeat rival Rush City 65-35. The Bombers swept all three games with the Tigers this season by limiting them to 15 points in the second stanza. Braham next takes on...Read More


I am fairly new to MM myself, but MiniLyrics is a plug-in. Therefore you need to install the .exe file for MiniLyrics to then extract the "gen_MiniLyrics.dll" which goes into the \MediaMonkey\plugins directory. The embedding script does quiet rightly go into \MediaMonkey\scripts\auto
The plug-in should then show up in Tools\Options within MM

I can't recall whether MiniLyrics does this for you, or if you have to do this manually

If this can help you more:
- Install MiniLyrics ( http://www.crintsoft.com ) for MediaMonkey. The latest versions of Miniyrics support MediaMonkey without you having to do special tricks. So best use the most recent MiniLyrics version.
- Make sure that MiniLyrics is set to automaticly start up with MediaMonkey.
- Install the auto-script (vbs) and the embedder (exe) in MediaMonkey's Scripts\Auto folder, like you already did.

If it still doesn't work, then:
- Make sure that MediaMonkey is running and the "Embedded MiniLyrics" dockable panel is visible.
- Make sure that MiniLyrics is running.
- Execute >>"C:\Program Files\MediaMonkey\Scripts\Auto\MiniLyrics Embedder Console.exe" embed<< (without >> and <<, using Start > Run)

Lyrics exist in
- "timed" or "scrolling" or "synchronised" version (those that scroll automaticly)
- "static" or "unsynchronised" version (those that have to be scrolled manually)

MiniLyrics has a lot of "synchronised" lyrics. That's why it's such a good and famous program. These lyrics contain timing codes that specify when each line of text starts.
Unsynchronised lyrics are basicly just text files, like the texts you can get from lyrics websites. Using MiniLyrics, you can "upgrade" these lyrics to synchronised lyrics.

Right-click MiniLyrics, go to "Skins", and choose a skin from the list. Available skins for iTunes are "iTunes", "iTunes6", "iTunes_5" and "iTunes_SBS".
You can also select "Have nothing on" or something else of course.
The colors, fonts, transparency, background image, ... can be chosen and saved/loaded from within the preferences dialog (Click MiniLyrics, press Ctrl-P, click left on "Lyrics Display").

I guess with "marked Song" -> Options-> Song Text you mean the song text (lyrics) you see in the song properties dialog.
MiniLyrics can be set to write lyrics to mp3 files in 3 formats (ID3v2 unsynchronised, ID3v2 synchronised, Lyrics3v2). I think the ID3v2's are enabled by default, and these can be read by MediaMonkey.

When you add new songs to MediaMonkey, the included lyrics are saved in its database. So when you externally change (or add) lyrics, MediaMonkey won't know about it, because it only looks at the information in the database, and not in the file itself (anymore). To make sure that MediaMonkey reflects the latest file information (like lyrics), rescan the music files, or use the "file monitor" functionality (in the Gold version).

If you do that, MediaMonkey will "see" the lyrics that MiniLyrics has added to the songs.

(It's also possible to let MiniLyrics write the lyrics to text files on your hard disk, and then use a MM script to read these and add them to the database.)

The "EvilTagger" script is probably what you want. It's for Evillyrics, but it should be easy to change it to work with MiniLyrics. But I don't recommend using this way, because the whole point of integrating MiniLyrics is that you can have all beautiful features of this nice program available, and you see scrolling lyrics for almost every song you play (if you enable this).
I only see a possible advantage of your request if you e.g. would like to search with MediaMonkey within song's lyrics. Then the lyrics really have to in the MediaMonkey database.

The script only embeds MiniLyrics ("external" program) into MediaMonkey.

You can set MiniLyrics to automaticly write the lyrics to mp3 using its settings.
Click on MiniLyrics and press Ctrl+P, or alternatively right-click MiniLyrics and choose Tools > Preferences...

Once you're in the options dialog, click on "Lyrics Download" in the left pane. Then, in the right pane you can choose whether to (and how to) automaticly download lyrics, and in which mp3 tags it has to save the lyrics (ID3v2 unsync'ed, ID3v2 sync'ed, Lyrics3v2).


Welcome to the chronicles of the Haanen family. With the advent of our second baby girl, we are filled with more activity and joy than ever before. Follow along with us as we venture through parenthood for the first time...

Sunday, October 5, 2008

Welcome to the World!

Hello family and friends! I'll try my best to tell the story of Sierra's arrival, but it was a whirlwind. Kelly called me at 4pm in the afternoon and said she had an upset stomach. "I have to come home, I'm not feeling so good," she told me. Thinking that this could be it, I finished up my work in the IDEAL offices at Denver Seminary and darted home. When I arrived, she was just hanging out on the couch. We talked about our day for the next couple of hours until she began to complain of "back pain." Although this wasn't uncommon, we began to time her "back pains" starting at about 7pm. "Honey, this just may be it." In a severe state of denial, she told me that they would probably go away and she'd be teaching tomorrow to finish up her year (she only had 2 days left at school!). I encouraged her to prepare sub plans for the next day as if she wasn't going to be there. And so, as contractions started to get more frequent, Kelly was calmly making sub plans in the "outside chance" that she'd have to miss the next day. Pausing every 5-15 minutes or so for a contraction, she kept on working.

At about 9:45 she took a shower and got cleaned up for bed. "I'll just ride out the night and go in tomorrow," she told me. "Maybe you should at least call the doctor and tell her what's happening," I retorted. She reluctantly agreed, and called Dr. Heidi Oster. "It sounds like your in labor. Why don't you come into the hospital." And so Kelly finally sent in a sub request for the next day (still in denial) and we got our bags packed for our 15 minute trek to Sky Ridge Hospital.

We arrived at the hospital at about 11:30 p.m. We checked into the ER, and Kelly calmly gave her the needed info, pausing every 5-10 minutes for "back pain." We checked into the maternity ward upstairs. Jessica, our nurse, did the preliminary exam. As she checked Kelly's cervix, she gave us a look. Kelly thought she was going to send us home. False alarm. Try again. "Well, it looks like your 6cm dialated. Let's get you ready." Already? We were prepared for hours and hours of labor with books, cds, and dvds. Not needed here. We got into the delivery room, and the contractions intensified. While trying to ask 1001 questions about Kelly's non-existent medical history, contractions started to pick up in frequency and intensity. Passing up 8cm, she now finally started to complain. After about a half hour of intense contractions, Dr. Oster gave her the go ahead. "You know that feeling like you have to poop? Well, just go ahead. You'll be pooping out a baby." After about 5 hard pushed in 20 minutes, out came our little daughter--Sierra Noel.

Dad was aghast with emotion. I simutaneously wanted to save my wife from the pain she was going through, but I also knew there was no going back. While holding her left leg, I just kept her covered in prayer, and did what I could to encourage her. And then, to my utter surprise, out came not just a head, but an entire human being. Not fully comprehending the marvel of what just happened, I broke down in tears. I knew that one of the most significant events of my life had just taken place...

Sierra was born at 1:32am, only 2 hours after arriving to the hospital. Here are some of the pictures I took...only after a kind nurse reminded me to get the camera.

Here are her first moments of life. Whisked to mom's chest, and then to in-room incubator, here she is getting cleaned up. Fluid out of the mouth and umbilical cord clipped, she wasn't too happy to be outside of that nice-warm room. But even when she was crying, I couldn't help but melt with love for her.

Here are the first minutes of mom and baby. Kelly was a champ. I couldn't believe how much grace and humor she displayed in the most intense moments of her life.

8lbs 3oz, and 20 inches long. One of the nurses made the comment, "Look at those hands. Those fingers are huge." Yep, she's a Haanen...

6 comments:

Jeff & Kelly...You have been blessed with a great gift...Sierra.And Sierra has been blessed with great parents. Is she blond? Perhaps her hair will be curly like Daddy's. Long fingers but you never mentioned the feet...I am sure they'll be adequate for playing soccer or whatever she chooses!Heaps of Blessing on your family of THREE!Jim & Audrey

Congratulations Jeff & Kelly! What a beautiful girl! You have some great times ahead of you. Thank you for keeping us updated. I imagine Grandma Lynn is anxiously waiting to be with both grandchildren in a few weeks!

Congratulations Jeff & Kelly! She's absolutely beautiful. I agree with Jeff - sounds like Kelly was truly awesome throughout delivery. Thanks for creating the webpage so we can all enjoy your memories as they happen and join with you in your bliss. Enjoy parenthood - there's nothing like it :)

Oh my goodness....I just have to clear my tears to be able to write this. Thank you so much for describing the details of this awesome blessing! I absolutely can't wait to meet your wonderful, beautiful little girl. Congratulations to Mom and Dad!!I'm going to love being a grandparent!!!!


Q:

Can't run the 'dir' or 'Get-ChildItem" command from IIS:\ in powershell

I'm trying to automate some web application deployment tasks so I'm attempting to use powershell to accomplish this.  I have a powershell script and a .bat file.  The batch file is just there to execute the powershell script and contains this text.  I'm on Windows 8 - 64bit.
C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "& '%~dp0\SetupWebServer.ps1' %*

I have some code in the powershell script that runs these commands:
Write-Host "Check for the existence of the Application Pool."
Import-Module WebAdministration
$iisAppPoolName = "SiteName"
$iisAppPoolDotNetVersion = "v4.0"
$iisAppName = "SiteName"

cd IIS:\AppPools\

if (!(Test-Path $iisAppPoolName -PathType Container))
{
     Write-Host "Creating Application Pool"
}

When I get to the CD IIS:\AppPools\ command I get the following error:
cd : Retrieving the COM class factory for component with CLSID {688EEEE5-6A7E-422F-B2E1-6AF00DC944A6} failed due to the
following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
At line:1 char:1
+ cd IIS:\AppPools\
+ ~~~~~~~~~~~~~~~~~
+ CategoryInfo          : NotSpecified: (:) [Set-Location], COMException
+ FullyQualifiedErrorId :
System.Runtime.InteropServices.COMException,Microsoft.PowerShell.Commands.SetLocationCommand

From a separate powershell prompt, I can cd to IIS:\, but I can't run the dir command and get a similar error.  What am I missing?

A:

By specifying SysWOW64 you are forcing Powershell to run in a 32bit context. The WebAdministration module only supports a 64bit context.
Solution:

If the batch file is running 32bit, use SysNative instead of SysWOW64
If the batch file is 64bit, drop the SysWOW64 and use the standard path.


/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.apache.spark.network.util;

import java.util.Locale;
import java.util.Properties;

import com.google.common.primitives.Ints;
import io.netty.util.NettyRuntime;

/**
 * A central location that tracks all the settings we expose to users.
 */
public class TransportConf {

  private final String SPARK_NETWORK_IO_MODE_KEY;
  private final String SPARK_NETWORK_IO_PREFERDIRECTBUFS_KEY;
  private final String SPARK_NETWORK_IO_CONNECTIONTIMEOUT_KEY;
  private final String SPARK_NETWORK_IO_BACKLOG_KEY;
  private final String SPARK_NETWORK_IO_NUMCONNECTIONSPERPEER_KEY;
  private final String SPARK_NETWORK_IO_SERVERTHREADS_KEY;
  private final String SPARK_NETWORK_IO_CLIENTTHREADS_KEY;
  private final String SPARK_NETWORK_IO_RECEIVEBUFFER_KEY;
  private final String SPARK_NETWORK_IO_SENDBUFFER_KEY;
  private final String SPARK_NETWORK_SASL_TIMEOUT_KEY;
  private final String SPARK_NETWORK_IO_MAXRETRIES_KEY;
  private final String SPARK_NETWORK_IO_RETRYWAIT_KEY;
  private final String SPARK_NETWORK_IO_LAZYFD_KEY;
  private final String SPARK_NETWORK_VERBOSE_METRICS;
  private final String SPARK_NETWORK_IO_ENABLETCPKEEPALIVE_KEY;

  private final ConfigProvider conf;

  private final String module;

  public TransportConf(String module, ConfigProvider conf) {
    this.module = module;
    this.conf = conf;
    SPARK_NETWORK_IO_MODE_KEY = getConfKey("io.mode");
    SPARK_NETWORK_IO_PREFERDIRECTBUFS_KEY = getConfKey("io.preferDirectBufs");
    SPARK_NETWORK_IO_CONNECTIONTIMEOUT_KEY = getConfKey("io.connectionTimeout");
    SPARK_NETWORK_IO_BACKLOG_KEY = getConfKey("io.backLog");
    SPARK_NETWORK_IO_NUMCONNECTIONSPERPEER_KEY =  getConfKey("io.numConnectionsPerPeer");
    SPARK_NETWORK_IO_SERVERTHREADS_KEY = getConfKey("io.serverThreads");
    SPARK_NETWORK_IO_CLIENTTHREADS_KEY = getConfKey("io.clientThreads");
    SPARK_NETWORK_IO_RECEIVEBUFFER_KEY = getConfKey("io.receiveBuffer");
    SPARK_NETWORK_IO_SENDBUFFER_KEY = getConfKey("io.sendBuffer");
    SPARK_NETWORK_SASL_TIMEOUT_KEY = getConfKey("sasl.timeout");
    SPARK_NETWORK_IO_MAXRETRIES_KEY = getConfKey("io.maxRetries");
    SPARK_NETWORK_IO_RETRYWAIT_KEY = getConfKey("io.retryWait");
    SPARK_NETWORK_IO_LAZYFD_KEY = getConfKey("io.lazyFD");
    SPARK_NETWORK_VERBOSE_METRICS = getConfKey("io.enableVerboseMetrics");
    SPARK_NETWORK_IO_ENABLETCPKEEPALIVE_KEY = getConfKey("io.enableTcpKeepAlive");
  }

  public int getInt(String name, int defaultValue) {
    return conf.getInt(name, defaultValue);
  }

  public String get(String name, String defaultValue) {
    return conf.get(name, defaultValue);
  }

  private String getConfKey(String suffix) {
    return "spark." + module + "." + suffix;
  }

  public String getModuleName() {
    return module;
  }

  /** IO mode: nio or epoll */
  public String ioMode() {
    return conf.get(SPARK_NETWORK_IO_MODE_KEY, "NIO").toUpperCase(Locale.ROOT);
  }

  /** If true, we will prefer allocating off-heap byte buffers within Netty. */
  public boolean preferDirectBufs() {
    return conf.getBoolean(SPARK_NETWORK_IO_PREFERDIRECTBUFS_KEY, true);
  }

  /** Connect timeout in milliseconds. Default 120 secs. */
  public int connectionTimeoutMs() {
    long defaultNetworkTimeoutS = JavaUtils.timeStringAsSec(
      conf.get("spark.network.timeout", "120s"));
    long defaultTimeoutMs = JavaUtils.timeStringAsSec(
      conf.get(SPARK_NETWORK_IO_CONNECTIONTIMEOUT_KEY, defaultNetworkTimeoutS + "s")) * 1000;
    return (int) defaultTimeoutMs;
  }

  /** Number of concurrent connections between two nodes for fetching data. */
  public int numConnectionsPerPeer() {
    return conf.getInt(SPARK_NETWORK_IO_NUMCONNECTIONSPERPEER_KEY, 1);
  }

  /**
   * Requested maximum length of the queue of incoming connections. If  < 1,
   * the default Netty value of {@link io.netty.util.NetUtil#SOMAXCONN} will be used.
   * Default to -1.
   */
  public int backLog() { return conf.getInt(SPARK_NETWORK_IO_BACKLOG_KEY, -1); }

  /** Number of threads used in the server thread pool. Default to 0, which is 2x#cores. */
  public int serverThreads() { return conf.getInt(SPARK_NETWORK_IO_SERVERTHREADS_KEY, 0); }

  /** Number of threads used in the client thread pool. Default to 0, which is 2x#cores. */
  public int clientThreads() { return conf.getInt(SPARK_NETWORK_IO_CLIENTTHREADS_KEY, 0); }

  /**
   * Receive buffer size (SO_RCVBUF).
   * Note: the optimal size for receive buffer and send buffer should be
   *  latency * network_bandwidth.
   * Assuming latency = 1ms, network_bandwidth = 10Gbps
   *  buffer size should be ~ 1.25MB
   */
  public int receiveBuf() { return conf.getInt(SPARK_NETWORK_IO_RECEIVEBUFFER_KEY, -1); }

  /** Send buffer size (SO_SNDBUF). */
  public int sendBuf() { return conf.getInt(SPARK_NETWORK_IO_SENDBUFFER_KEY, -1); }

  /** Timeout for a single round trip of auth message exchange, in milliseconds. */
  public int authRTTimeoutMs() {
    return (int) JavaUtils.timeStringAsSec(conf.get("spark.network.auth.rpcTimeout",
      conf.get(SPARK_NETWORK_SASL_TIMEOUT_KEY, "30s"))) * 1000;
  }

  /**
   * Max number of times we will try IO exceptions (such as connection timeouts) per request.
   * If set to 0, we will not do any retries.
   */
  public int maxIORetries() { return conf.getInt(SPARK_NETWORK_IO_MAXRETRIES_KEY, 3); }

  /**
   * Time (in milliseconds) that we will wait in order to perform a retry after an IOException.
   * Only relevant if maxIORetries > 0.
   */
  public int ioRetryWaitTimeMs() {
    return (int) JavaUtils.timeStringAsSec(conf.get(SPARK_NETWORK_IO_RETRYWAIT_KEY, "5s")) * 1000;
  }

  /**
   * Minimum size of a block that we should start using memory map rather than reading in through
   * normal IO operations. This prevents Spark from memory mapping very small blocks. In general,
   * memory mapping has high overhead for blocks close to or below the page size of the OS.
   */
  public int memoryMapBytes() {
    return Ints.checkedCast(JavaUtils.byteStringAsBytes(
      conf.get("spark.storage.memoryMapThreshold", "2m")));
  }

  /**
   * Whether to initialize FileDescriptor lazily or not. If true, file descriptors are
   * created only when data is going to be transferred. This can reduce the number of open files.
   */
  public boolean lazyFileDescriptor() {
    return conf.getBoolean(SPARK_NETWORK_IO_LAZYFD_KEY, true);
  }

  /**
   * Whether to track Netty memory detailed metrics. If true, the detailed metrics of Netty
   * PoolByteBufAllocator will be gotten, otherwise only general memory usage will be tracked.
   */
  public boolean verboseMetrics() {
    return conf.getBoolean(SPARK_NETWORK_VERBOSE_METRICS, false);
  }

  /**
   * Whether to enable TCP keep-alive. If true, the TCP keep-alives are enabled, which removes
   * connections that are idle for too long.
   */
  public boolean enableTcpKeepAlive() {
    return conf.getBoolean(SPARK_NETWORK_IO_ENABLETCPKEEPALIVE_KEY, false);
  }

  /**
   * Maximum number of retries when binding to a port before giving up.
   */
  public int portMaxRetries() {
    return conf.getInt("spark.port.maxRetries", 16);
  }

  /**
   * Enables strong encryption. Also enables the new auth protocol, used to negotiate keys.
   */
  public boolean encryptionEnabled() {
    return conf.getBoolean("spark.network.crypto.enabled", false);
  }

  /**
   * The cipher transformation to use for encrypting session data.
   */
  public String cipherTransformation() {
    return conf.get("spark.network.crypto.cipher", "AES/CTR/NoPadding");
  }

  /**
   * The key generation algorithm. This should be an algorithm that accepts a "PBEKeySpec"
   * as input. The default value (PBKDF2WithHmacSHA1) is available in Java 7.
   */
  public String keyFactoryAlgorithm() {
    return conf.get("spark.network.crypto.keyFactoryAlgorithm", "PBKDF2WithHmacSHA1");
  }

  /**
   * How many iterations to run when generating keys.
   *
   * See some discussion about this at: http://security.stackexchange.com/q/3959
   * The default value was picked for speed, since it assumes that the secret has good entropy
   * (128 bits by default), which is not generally the case with user passwords.
   */
  public int keyFactoryIterations() {
    return conf.getInt("spark.network.crypto.keyFactoryIterations", 1024);
  }

  /**
   * Encryption key length, in bits.
   */
  public int encryptionKeyLength() {
    return conf.getInt("spark.network.crypto.keyLength", 128);
  }

  /**
   * Initial vector length, in bytes.
   */
  public int ivLength() {
    return conf.getInt("spark.network.crypto.ivLength", 16);
  }

  /**
   * The algorithm for generated secret keys. Nobody should really need to change this,
   * but configurable just in case.
   */
  public String keyAlgorithm() {
    return conf.get("spark.network.crypto.keyAlgorithm", "AES");
  }

  /**
   * Whether to fall back to SASL if the new auth protocol fails. Enabled by default for
   * backwards compatibility.
   */
  public boolean saslFallback() {
    return conf.getBoolean("spark.network.crypto.saslFallback", true);
  }

  /**
   * Whether to enable SASL-based encryption when authenticating using SASL.
   */
  public boolean saslEncryption() {
    return conf.getBoolean("spark.authenticate.enableSaslEncryption", false);
  }

  /**
   * Maximum number of bytes to be encrypted at a time when SASL encryption is used.
   */
  public int maxSaslEncryptedBlockSize() {
    return Ints.checkedCast(JavaUtils.byteStringAsBytes(
      conf.get("spark.network.sasl.maxEncryptedBlockSize", "64k")));
  }

  /**
   * Whether the server should enforce encryption on SASL-authenticated connections.
   */
  public boolean saslServerAlwaysEncrypt() {
    return conf.getBoolean("spark.network.sasl.serverAlwaysEncrypt", false);
  }

  /**
   * Flag indicating whether to share the pooled ByteBuf allocators between the different Netty
   * channels. If enabled then only two pooled ByteBuf allocators are created: one where caching
   * is allowed (for transport servers) and one where not (for transport clients).
   * When disabled a new allocator is created for each transport servers and clients.
   */
  public boolean sharedByteBufAllocators() {
    return conf.getBoolean("spark.network.sharedByteBufAllocators.enabled", true);
  }

  /**
  * If enabled then off-heap byte buffers will be preferred for the shared ByteBuf allocators.
  */
  public boolean preferDirectBufsForSharedByteBufAllocators() {
    return conf.getBoolean("spark.network.io.preferDirectBufs", true);
  }

  /**
   * The commons-crypto configuration for the module.
   */
  public Properties cryptoConf() {
    return CryptoUtils.toCryptoConf("spark.network.crypto.config.", conf.getAll());
  }

  /**
   * The max number of chunks allowed to be transferred at the same time on shuffle service.
   * Note that new incoming connections will be closed when the max number is hit. The client will
   * retry according to the shuffle retry configs (see `spark.shuffle.io.maxRetries` and
   * `spark.shuffle.io.retryWait`), if those limits are reached the task will fail with fetch
   * failure.
   */
  public long maxChunksBeingTransferred() {
    return conf.getLong("spark.shuffle.maxChunksBeingTransferred", Long.MAX_VALUE);
  }

  /**
   * Percentage of io.serverThreads used by netty to process ChunkFetchRequest.
   * When the config `spark.shuffle.server.chunkFetchHandlerThreadsPercent` is set,
   * shuffle server will use a separate EventLoopGroup to process ChunkFetchRequest messages.
   * Although when calling the async writeAndFlush on the underlying channel to send
   * response back to client, the I/O on the channel is still being handled by
   * {@link org.apache.spark.network.server.TransportServer}'s default EventLoopGroup
   * that's registered with the Channel, by waiting inside the ChunkFetchRequest handler
   * threads for the completion of sending back responses, we are able to put a limit on
   * the max number of threads from TransportServer's default EventLoopGroup that are
   * going to be consumed by writing response to ChunkFetchRequest, which are I/O intensive
   * and could take long time to process due to disk contentions. By configuring a slightly
   * higher number of shuffler server threads, we are able to reserve some threads for
   * handling other RPC messages, thus making the Client less likely to experience timeout
   * when sending RPC messages to the shuffle server. The number of threads used for handling
   * chunked fetch requests are percentage of io.serverThreads (if defined) else it is a percentage
   * of 2 * #cores. However, a percentage of 0 means netty default number of threads which
   * is 2 * #cores ignoring io.serverThreads. The percentage here is configured via
   * spark.shuffle.server.chunkFetchHandlerThreadsPercent. The returned value is rounded off to
   * ceiling of the nearest integer.
   */
  public int chunkFetchHandlerThreads() {
    if (!this.getModuleName().equalsIgnoreCase("shuffle")) {
      return 0;
    }
    int chunkFetchHandlerThreadsPercent =
      Integer.parseInt(conf.get("spark.shuffle.server.chunkFetchHandlerThreadsPercent"));
    int threads =
      this.serverThreads() > 0 ? this.serverThreads() : 2 * NettyRuntime.availableProcessors();
    return (int) Math.ceil(threads * (chunkFetchHandlerThreadsPercent / 100.0));
  }

  /**
   * Whether to use a separate EventLoopGroup to process ChunkFetchRequest messages, it is decided
   * by the config `spark.shuffle.server.chunkFetchHandlerThreadsPercent` is set or not.
   */
  public boolean separateChunkFetchRequest() {
    return conf.getInt("spark.shuffle.server.chunkFetchHandlerThreadsPercent", 0) > 0;
  }

  /**
   * Whether to use the old protocol while doing the shuffle block fetching.
   * It is only enabled while we need the compatibility in the scenario of new spark version
   * job fetching blocks from old version external shuffle service.
   */
  public boolean useOldFetchProtocol() {
    return conf.getBoolean("spark.shuffle.useOldFetchProtocol", false);
  }

}