PMCCPMCCPMCC

Search tips
Search criteria 

Advanced

 
Logo of cancerinformLink to Publisher's site
 
Cancer Inform. 2009; 7: 271–280.
Published online 2009 December 14.
PMCID: PMC2883306

A Novel Approach for Analysis of the Log-Linear Age-Period-Cohort Model: Application to Lung Cancer Incidence

Abstract

A simple, computationally efficient procedure for analyses of the time period and birth cohort effects on the distribution of the age-specific incidence rates of cancers is proposed. Assuming that cohort effects for neighboring cohorts are almost equal and using the Log-Linear Age-Period-Cohort Model, this procedure allows one to evaluate temporal trends and birth cohort variations of any type of cancer without prior knowledge of the hazard function. This procedure was used to estimate the influence of time period and birth cohort effects on the distribution of the age-specific incidence rates of first primary, microscopically confirmed lung cancer (LC) cases from the SEER9 database. It was shown that since 1975, the time period effect coefficients for men increase up to 1980 and then decrease until 2004. For women, these coefficients increase from 1975 up to 1990 and then remain nearly constant. The LC birth cohort effect coefficients for men and women increase from the cohort of 1890–94 until the cohort of 1925–29, then decrease until the cohort of 1950–54 and then remain almost unchanged. Overall, LC incidence rates, adjusted by period and cohort effects, increase up to the age of about 72–75, turn over, and then fall after the age of 75–78. The peak of the adjusted rates in men is around the age of 77–78, while in women, it is around the age of 72–73. Therefore, these results suggest that the age distribution of the incidence rates in men and women fall at old ages.

Keywords: identifiability problem, temporal trend, cohort effect, cancer incidence, lung cancer

Introduction

It is well recognized that aging plays a fundamental role in the development of cancer in the human adult population. To describe the relationship between cancer incidence rates and the age of cancer presentation several mathematical models have been proposed (see, for example,15 and references therein). In these models, the distribution of incidence rates are presented as a set of numbers, Ii,j(ti), of new cases of a particular type of cancer that have been diagnosed during a given time period, j, per 100,000 population at each of the considered age intervals, ti.

Often, five-year-long age intervals are considered. For instance, 100 years of human life span can be divided on 20 five-year intervals: 0–4, 5–9, 10–14, …, 95–99. The center of these intervals can represent the corresponding age. The values Ii,j(ti), representing cancer incidence in each of these age intervals, are called the age-specific cancer incidence rates (or simply cancer rates). These rates can be collected during one or several calendar years. In the mathematical modeling of the age distribution of cancer rates, a five-year age period is commonly used. For instance, Ii,j(ti) may represent numbers of new cancer cases in each of the aforementioned age intervals diagnosed in the j-th time period that correspond to, for example, 2000–2004. Analyses of this type of data are called cross-sectional studies, because these studies aim to analyze data on people at different ages at the same time period.

The cross-sectional studies of the cancer incidence rate distributions in aging are different from the longitudinal studies of the analogous distributions. In the cross-sectional studies, the number of new cancer diagnoses can be counted simultaneously for different cohorts of people at a given time period, while in the longitudinal studies this data must be obtained for the same cohort of people but in different time periods. Each of these types of studies, cross-sectional vs. longitudinal, has their own advantages and disadvantages. For instance, it is clear that data for cross-sectional studies can be obtained much faster than for the longitudinal studies. In fact, to perform the aforementioned cross-sectional study, one has to collect data over a time period of five years (2000–2004), while for the analogous longitudinal studies, using a cohort of people born, say, in 1905–1909, to get data for all of the considered age intervals one must collect the corresponding incidence rates over 100 years. In addition, studies of cross-sectional data can provide clues to possible time period effects during which data was collected. For instance, implementation of new diagnostic techniques in a particular time period could influence the detection of a given cancer type at earlier ages (age-period effect). On the other hand, longitudinal studies (in contrast to cross-sectional data) can determine the influence of cohort effects on the age distribution of cancer rates (age-cohort effect). For example, dietary and life-style habits characteristic for a given generation of people can affect the cancer incidence rates.

In this connection, it must be emphasized that cross-sectional and longitudinal studies of cancer incidence rates performed independently can provide inconsistent or even confusing results. For instance, recently, using the SEER (Surveillance Epidemiology and End Results) database,6 Harding and colleagues4 analyzed the distribution of age-specific cancer incidence rates. For the vast majority of the examined cancers they found that the rates collected during three time periods, 1979–83, 1989–93 and 1999–2003 (cross-sectional data) increase up to the age of about 80 years and then fall at the oldest ages. However, the longitudinal data for lung cancer (LC) presented by Holford7 showed that the LC cohort risk increases with age, while the LC time period risk falls at old age. Moreover, it was suggested that there was no turnover, if both time period and cohort effects on cancer rates were considered.8

Accounting for time period and cohort effects (age-period-cohort model) represents a main challenge for mathematical modeling of relationship between cancer incidence rates and age of cancer presentation. This is because mathematically this problem falls into a category of so called identifiability problems with multiple estimators.9 In general, parameters to be determined (i.e. estimates for time period and cohort effects) as a solution of the considered problem, cannot be unambiguously identified. In other words, multiple estimators can provide equally good solutions for the problem and “true” age-period-cohort effects are difficult (if not impossible) to estimate simultaneously.915 The only hope for solving this problem (obtain consistent estimation for period and cohort effects) is to utilize an additional assumption on the data that is used.

Until recently, mathematical modeling of the relationship between cancer incidence rates and the age of cancer presentation has been performed exclusively using cross-sectional data.14 To address this short-coming, we are proposing a simple, computationally efficient procedure for analyses of time period and birth cohort effects on the distribution of the age-specific incidence rates of cancers. Assuming that cohort effects for neighboring cohorts are almost equal and using the Log-Linear Age-Period-Cohort (LLAPC) Model, this procedure allows one to evaluate temporal trends and birth cohort variations of any type of cancer without prior knowledge of the hazard function. The proposed approach was used to analyze the influence of the time period and birth cohort effects on the LC incidence rate distributions. Only first primary, microscopically confirmed cases from the SEER9 database6 over the period of 1975–2004 were considered. Using a novel approach, which is valid for any hazard function, we demonstrated that the time period trends in men and women are different in LC, while the cohort trends are similar. We also demonstrated that the distribution of these incidence rates falls at old ages, even after accounting for time period and birth cohort effects.

Materials and Methods

We describe a novel, computationally efficient procedure for the analysis of the time period and birth cohort effects in the frame of the LLAPC model. This procedure is tested on the example of LC.

Data preparation and filtration

In our study, we used data from only the SEER registries6 that correspond to the following nine (SEER9) areas: Atlanta, Connecticut, Detroit, Hawaii, Iowa, New Mexico, San Francisco-Oakland, Seattle-Puget Sound, and Utah. We used these nine registries, rather than the current set of seventeen, because the longitudinal nature of our study requires us to use data dating back two decades when there were only nine registries. First primary, microscopically confirmed LC cases from the SEER9 database for patients with known gender and race were considered to be “filtered” data, whereas the cases where such filtering was not performed were considered to be “raw” data. We used only filtered data that are more reliable and homogeneous than raw data.5,16 The incidence rates, I(t), expressed per 100,000 persons and age-adjusted by the direct method to the 2000 United States standard population,17 and their standard errors, SE, were utilized. The data were combined in six five-year cross-sectional time periods: 1975–79, …, 2000–2004. The gender-specific incidence rates were grouped into 18 five-year age groups: 17 groups, ranging from 0 to 84 years, and the 18th group that included all cases for ages 85+.

A novel procedure for analysis of the LLAPC model

Table 1 presents approximations of the observed incidence rates, Ii,j(ti), as the product of a hazard function, h(ti) (which is a function of age t), the time period effect coefficient, vj, and the birth cohort effect coefficient, ul:

Ii,j(ti)=vjulh(ti)i=1,,n;j=1,,m;l=1,,k;
(1)

where i, j, and l denote the given age interval, time period, and cohort, correspondingly; n, m, and k are numbers of the age intervals, time periods, and cohorts, correspondingly.

Table 1.
Presentation of the observed incidence rates by hazard function, h(t), and the time period (v) and birth cohort (u) coefficients.

In this table, the approximations of the cross-sectional data for six time periods 1975–79, …, 2000–2004 (index j = 1, …, 6) are shown in columns, while the approximations of the incidence rates for the same cohort groups (longitudinal data) are located along diagonals. We used only the data for the groups over age 30 (i = 7, …, 18), because the incidence rates for these groups were significant (according to SEER practice, the number of cases should exceed 15 to be statistically significant). We consider 17 birth cohorts (l = 1, …, 17), corresponding to birth year ranges of 1890–94, …, 1970–74. From this table one can see that l can be presented as l = ji + 18.

Assuming that the numbers of cases have a Poisson distribution and the mathematical form of the hazard function is known a priori and the LLAPC model is used, one can make adjustments by using the maximum likelihood method for assessing the birth cohort and time period effect coefficients as well as parameters of the hazard function. These coefficients can be estimated by anchoring one time period coefficient (v = 1) and one birth cohort effect coefficient (u = 1).8,18,19 Note: the results of this procedure depend on the hazard function, and also the time period and cohort, to which the coefficients are anchored.

Below we describe a procedure that provides results independent of the hazard function. The hazard function values, presented in Table 1, can be canceled out by dividing the corresponding elements of the neighboring columns with indices j and j + 1 or j + 1 and j. Then from (1), one can obtain a pair of systems:

Ii,j(ti)Ii,j+1(ti)=vjvj+1ulul+1i=7,,18;j=1,,5;l=ji+18
(2)

Ii,j+1(ti)Ii,j(ti)=vj+1vjul+1uli=7,,18;j=1,,5;l=ji+18
(3)

In (2) and (3), Ii,j(ti) can be considered as the observed values of the normally distributed variables with known standard errors, SEi,j. (Because we are using only the incidence rates with numbers of cases larger than 15, the normal distribution can be used instead of the Poisson distribution). Coefficients of variation for these rates can be estimated as:

CVi,j=SEi,jIi,j(ti),i=7,,18;j=1,,6;l=ji+18
(4)

Note: (2) provides 12 × 5 conditional equations for assessing five ratios of the time period coefficients (vj/vj+1, j = 1, …, 5), and 16 ratios of the cohort effect coefficients (ul/ul+1, l = 1, …, 16). Analogously, (3) provides 12 × 5 conditional equations for assessing five ratios of the time period coefficients (vj+1/vj, j = 1, …, 5), and 16 ratios of the cohort effect coefficients (ul+1/ul, l = 1, …, 16). Here, a problem of parameter identifiability arises.7,916 In particular, these systems do not have a single set of best estimates of vj+1/vj and ul+1/ul or vj/vj+1 and ul/ul+1. In fact, suppose we obtained the best estimates of vj+1/vj and ul+1/ul. Now, if we multiply the estimates of vj+1/vj by a constant and divide the estimates of ul+1/ul on this constant, the derived set of new estimates will also be as good as the initially assumed “best” estimates.

In order to solve this identifiability problem, additional assumptions are required.915 Assuming that any pair of the neighboring cohorts has the cohort effect coefficient ratio close to 1, these ratios can be set equal to 1 in (2) and (3). The rationale behind this assumption is that the adjacent cohorts usually overlap in time intervals and thus values of their cohort effect coefficient should be close. Now for estimating five ratios, vj/vj+1 and five ratios vj+1/vj, one has a pair of systems:

Ii,j(ti)Ii,j+1(ti)=vjvj+1i=7,,18;j=1,,5.
(5)

Ii,j+1(ti)Ii,j(ti)=vj+1vji=7,,18;j=1,,5.
(6)

When coefficients of variation (4) are small, the standard errors of the ratios, Ii,j(ti)/Ii,j+1(ti), Ii,j+1(ti)/Ii,j(ti) can be calculated by the standard rules of error propagation.20

SE2(Ii,j(ti)Ii,j+1(ti))=(Ii,j(ti)Ii,j+1(ti))2(SEi,j2(ti)Ii,j2(ti)+SEi,j+12(ti)Ii,j+12(ti))
(7)

SE2(Ii,j+1(ti)Ii,j(ti))=(Ii,j+1(ti)Ii,j(ti))2(SEi,j+12(ti)Ii,j+12(ti)+SEi,j2(ti)Ii,j2(ti))
(8)

It can be shown that when the numerators and denominators in (5) and (6) are normally distributed and their coefficients of variation are small, then the ratios presented in (5) and (6) will be also normally distributed. In fact, let us assume that we have random variables A1 = a1 + epsilon1 and A2 = a2 + epsilon2, where a1 ≠ 0 and a2 ≠ 0 are constants and epsilon1 and epsilon2 are normally distributed random variables with zero means and standard deviations σ1 and σ2, correspondingly. When coefficients of variation are small (i.e. σ1/a1 [double less-than sign] 1 and σ2/a2 [double less-than sign] 1), then one can express the A1/A2 and A2/A1 ratios in the bivariate Taylor series around a1/a2 and a1/a2, and consider their linear approximations:

A1A2=a1+ɛ1a2+ɛ2=a1a2+1a2ɛ1a1a22ɛ2A2A1=a2+ɛ2a1+ɛ1=a2a1+1a1ɛ2a2a12ɛ1

Because epsilon1 and epsilon2 are normally distributed variables, these linear combinations will be also normally distributed.

In the considered incidence rate data, coefficients of variation are less than 0.1, therefore the errors of the observed incidence rate ratios of the systems (5) and (6) can be considered as normally distributed. For estimation of vj/vj+1 and vj+1/vj, a least squares method can be applied and the most efficient estimates for these ratios are the weighted means of the observed values Ii,j(ti)/Ii,j+1(ti) and Ii,j+1(ti)/Ii,j(ti) averaged through index i correspondingly (weights are given as reciprocals of the square of their standard errors). The SE of the estimates (vj/vj+1)* and (vj+1/vj)* can also be calculated in a standard way (here and below asterisks (*) designate the corresponding estimates):

After anchoring any time period coefficient (for example, assuming that v6 = 1 and SE(v6) = 0), one can obtain step by step the following estimates of vj* derived by the estimated ratios (vj+1/vj)*:

v5*=(v5v6)*;v4*=(v4v5)*v5*;v3*=(v3v4)*v4*;v2*=(v2v3)*v3*;v1*=(v1v2)*v2*
(9)

For the other anchored time period coefficients, the estimates of vj* can be derived analogously by means of the estimates (vj/vj+1)* and (vj+1/vj)*. The SE of vj* can also be calculated by the standard rules of error propagation.

After estimating the time period coefficients, the incidence rates can be corrected for the time effects and the following system can be obtained from (2) and (3):

Ii,jT(ti)Ii,j+1T(ti)=ulul+1l=1,,17;j=1,,5;i=jl+18
(10)

Ii,j+1TIi,jT=ul+1ull=1,,17;j=1,,5;i=jl+18
(11)

Here Ii,jT(ti) denotes incidence rates corrected for the time effects. By the standard rules of error propagation, one can calculate the SE of the incidence rates ratios presented on the left side of (10) and (11). Now, there are 12 × 5 conditional equations for assessing 16 ratios of the cohort effect coefficients ul/ul+1 and the same number of equations for assessing ul+1/ul. Similarly, as for ratios of time period coefficients, the ratios ul/ul+1 and ul+1/ul can be estimated by the weighted means of the incidence rate ratios of the left side of system (10) and (11). Weights should be given according to the SE of the incidence rate ratios (reciprocal of squares of the SE). Then, by choosing an anchored cohort coefficient, say u9 = 1, (SE(u9) = 0), all cohort coefficients and their SE can be estimated step-by-step by a procedure analogous to one used for the time period coefficients:

u10*=(u10u9)*,u11*=(u11u10)*u10*,,u17*=(u17u16)*u16*
(12)

and

u8*=(u8u9)*,u7*=(u7u8)*u8*,,u1*=(u1u2)*u2*
(13)

After evaluating time period and cohort effect coefficients, one can divide the initial incidence rates, Ii,j(ti), with the product of vj* and ul*, to obtain the incidence rates corrected for time period and cohort effects:

Ii,j*(ti)=Ii,j(ti)vj*ul*,i=7,,18;j=1,,6;l=ji+18
(14)

The aforementioned approach looks similar to one used in.18 However, the approach used in18 is based on the assumption that the birth cohort effects are absent. This allows the authors of18 to evaluate coefficients vj. Then, using the obtained time period effects, they correct the observed incidence rates and after that, estimate the ul coefficients. In contrast to,18 our approach uses the assumption that cohort effects for any two neighboring cohorts are almost equal. As can be seen, this assumption is not as strong as one used in.18 In addition, our procedure can assess time period and cohort coefficients without knowing the mathematical form of the hazard function, while the procedure described in18 requires prior knowledge of this function.

Results and Discussion

Table 2 shows the time period distributions (presented in columns) of the first primary, microscopically confirmed incidence LC rates for women. The observed patterns of the cross-sectional data are shown along columns and longitudinal data along diagonals. The cross-sectional and longitudinal data for the three consecutive cohorts that contain observations for the elderly exhibit turnovers at old age. Analogous observations for men also have turnovers (data not shown).

Table 2.
Filtered LC incidence rates for women collected in the SEER9 database during 1975–2004. Arrows show cohorts that turn over.

The longitudinal patterns shown in Table 2 are different from those presented in.7 In,7 using the raw LC incidence rates for women collected in Connecticut during the years of 1940–1984, it was shown that the longitudinal risks always increased with age (see Table 1 in7). This discrepancy can be explained by the fact that in contrast to,7 where raw data was used, we analyzed filtered SEER9 data collected during 1975–2004.

Figures 1A and and2A2A show the distributions of the filtered incidence rates for men and women, correspondingly.

Figure 1.
Age-specific incidence rates, time period and cohort effect coefficients for LC in men. A) Rates prior to adjustment. B) Rates after adjustment (age-specific weighted means are connected by the use of the spline function). C) Variation of time period ...
Figure 2.
Age-specific incidence rates, time period and cohort effect coefficients for LC in women. A) Rates prior to adjustment. B) Rates after adjustment (age-specific weighted means are connected by the use of the spline function). C) Variation of time period ...

After estimating the time period and birth cohort effects, the incidence rates were adjusted to the 2000–2004 time period and to the 1945–1949 birth cohort. The adjusted rates are shown in Figures 1B and and2B.2B. As can be seen, the adjusted LC incidence rate distributions for both men and women have turnovers at old ages.

The adjusted rates for men and women increase (starting from the age of 30), reach the maximum and then fall at old ages. The differences are only in the age at which the distributions reach the maximum, and in the maximum values of the corresponding incidence rates. For men, this maximum is near the age of 77–78, while for women, it is near the age of 72–73. These patterns are different from the linear patterns (up to the age of 85) obtained in8 by accounting for time period and cohort effects on cancer. Again, this discrepancy can be explained by the use of raw data and an a priori assumed form of the hazard function for the time period and birth cohort adjustments used in,8 whereas we utilized only filtered data and our approach is independent of the hazard function.

Panels C and D of Figures 1 and and22 show the changes of the time period and cohort effect coefficients for men and women, correspondingly. The time period effect coefficients for men increase from the year 1975 to 1980 and then decrease until 2004. For women, these effects increase from 1975 to 1990 and then remain nearly constant. The birth cohort effect coefficients for men and women are similar; they increase from the cohort of 1890–94 until the cohort of 1925–29, then decrease until the cohort of 1950–54 and after that remain almost unchanged. It is possible that the observed temporal differences of the LC rates in men and women can be explained by the gender-specific smoking habits as it was suggested in21 (see also references in that paper).

Conclusion

For analyses of the time period and birth cohort effects on the distribution of the age-specific incidence rates of cancers, a simple, computationally efficient procedure, which does not require any prior knowledge of the hazard function, was proposed. Our approach uses the LLAPC model and assumes that cohort effects for neighboring cohorts are almost equal. The proposed procedure was used for analyzing the influence of the time period and birth cohort effects on the LC incidence rate distributions. However, this procedure can be applied for different types of cancers as well as for epidemiological studies of chronic diseases.

We found that the incidence rates of first primary, microscopically confirmed LC cases from the SEER9 database, adjusted by period and cohort effects, increase for both women and men, then turn over (at ages of about 72–73 and 77–78 for women and men, correspondingly) and fall at older ages. Thus, by utilizing the longitudinal and cross-sectional data and by accounting for time period and cohort effects, we have demonstrated that the LC incidence rates have a turnover at old ages, and the age at which this turnover takes place, is gender-specific. The explanation of this phenomenon should be a subject for future studies.

Footnotes

Disclosures

The authors report no conflicts of interest.

References

1. Armitage P, Doll R. The age distribution of cancer and a multistage theory of carcinogenesis. Br J Cancer. 1954;8:1–12. [PMC free article] [PubMed]
2. Cook PJ, Doll R, Fellingham SA. A mathematical model for the age distribution of cancer in man. Int J Cancer. 1969;4:93–112. [PubMed]
3. Pompei F, Wilson R. Age distribution of cancer: the incidence turnover at old age. Hum Ecol Risk Assess. 2001;7:1619–50. [PubMed]
4. Harding C, Pompei F, Lee E, Wilson R. Cancer Suppression at Old Age. Cancer Res. 2008;68:4465–78. [PubMed]
5. Mdzinarishvili T, Gleason MX, Kinarsky L, Sherman S. A generalized beta model for age distribution of cancers: application to pancreatic and kidney cancer. Cancer Inform. 2009;7:183–97. [PMC free article] [PubMed]
6. Surveillance, Epidemiology, and End Results (SEER) Program (www.seer.cancer.gov) Limited-Use Data (1973–2004), National Cancer Institute, DCCPS, Surveillance Research Program, Cancer Statistics Branch, released April 2007, based on the November 2006 submission.
7. Holford TR. Understanding the effects of age, period, and cohort on incidence and mortality rates. Annu Rev Public Health. 1991;12:425–57. [PubMed]
8. Meza R, Jeon J, Moolgavkar SH, Luebeck EG. Age-specific incidence of cancer: phases, transitions, and biological implications. Proc Natl Acad Sci U S A. 2008;105:16284–9. [PubMed]
9. Fu WJA. Smoothing Cohort Model in Age-Period-Cohort Analysis with Applications to Homicide Arrest Rates Lung Cancer Mortality Rates. Sociol Method Res. 2008;36:327–61.
10. Mason KO, Mason WM, Winsborough HH, Poole WK. Some Methodological Issues in the Cohort Analysis of Archival Data. Am Sociol Rev. 1973;38:242–58.
11. Rogers WL. Estimable Functions in Age, Period and Cohort Effects. Am Sociol Rev. 1982;47:774–87.
12. Clayton D, Schifflers E. Models for temporal variation in cancer rates. I: age-period and age-cohort models. Statistics in Medicine. 1987;6:449–67. [PubMed]
13. Clayton D, Schifflers E. Models for temporal variation in cancer rates. II: age-period-cohort models. Statistics in Medicine. 1987;6:469–81. [PubMed]
14. Moolgavkar SH, Lee JAH, Stevens RG. Analysis of vital statistical data. In: Rothman K, Greenland S, editors. Modern Epidemiology. 2nd Ed. Lippincott-Raven, PA: 1998. pp. 482–97.
15. Yang Y, Fu WJ, Land K. A Methodological Comparison of Age-Period-Cohort Models: The Intrinsic Estimator and Conventional Generalized Linear Models. Sociol Methodol. 2004;34:75–110.
16. Ries LAG, Young JL, Keel GE, Eisner MP, Lin YD, Horner MJ, editors. SEER Survival Monograph: Cancer Survival Among Adults: U.S. SEER Program, 1988–2001, Patient and Tumor Characteristics National Cancer Institute, SEER Program, NIH Pub. No. 07-6215, Bethesda, MD: 2007
17. Surveillance, Epidemiology, and End Results (SEER) Program Standard Populations (Millions) for Age-Adjustment [cited 2009 Feb 2]Available from: http://seer.cancer.gov/stdpopulations/stdpop.singleagesthru99.txt
18. Luebeck EG, Moolgavkar SH. Multistage carcinogenesis and the incidence of colorectal cancer. Proc Natl Acad Sci U S A. 2002;99:15095–100. [PubMed]
19. Moolgavkar SH, Meza R, Turim J. Pleural and peritoneal mesotheliomas in SEER: age effects and temporal trends, 1973–2005. Cancer Causes Control. 2009;20(6):935–44. [PubMed]
20. Lindberg V. Guide to uncertainties and error propagation Rochester, NY: c1999–2003 [updated 2003 Aug; cited 2009 Feb 2]. Available from: http://www.rit.edu/cos/uphysics/uncertainties/Uncertainties.html
21. Zheng T, Holford TR, Boyle P, et al. Time trend and the age-period-cohort effect on the incidence of histologic types of lung cancer in Connecticut, 1960–1989. Cancer. 2006;74(5):1556–67. [PubMed]

Articles from Cancer Informatics are provided here courtesy of Libertas Academica