Skip to main content
BMC Nephrology logoLink to BMC Nephrology
. 2017 Feb 20;18:68. doi: 10.1186/s12882-017-0489-6

β-trace protein is highly removed during haemodialysis with high-flux and super high-flux membranes

Carlo Donadio 1,, Danika Tognotti 1, Laura Caponi 2, Aldo Paolicchi 2
PMCID: PMC5319187  PMID: 28219328

Abstract

Background

Serum β-trace protein (βTP, MW 23–29 kDa) is a marker of GFR impairment in renal patients. Recent papers propose to predict residual renal function (RRF) in maintenance haemodialysis (MHD) patients from serum concentrations of βTP and other small proteins, avoiding the collection of urine. Few data are available on the removal of βTP in patients treated with dialysis membranes with different flux characteristics. The aim of this study was to evaluate the effects of haemodialysis with low-flux, high-flux and super high-flux membranes on serum concentrations of ßTP in MHD patients with null RRF.

Methods

Serum ßTP concentrations were measured before and after the first dialysis of the week in 51 MDH patients treated by low-flux (n = 24), high-flux (n = 17), or super high-flux (n = 10) membranes. The removal of β2-microglobulin (β2M, MW 11.8), cystatin C (Cys, MW 13.3), urea and creatinine was also analyzed.

Results

Low-flux membranes did not remove βTP, β2M and Cys whose concentration increased at the end of dialysis. High-flux membrane removed more efficiently β2M and Cys than ßTP. Super high-flux membrane had the highest efficiency to remove ßTP: mean reduction ratio (RR) 53.4%, similar to β2M (59.5%), and Cys (62.0%).

Conclusions

In conclusion, the plasma clearance of small proteins and particularly of βTP is dependent from the permeability of the dialysis membranes Therefore, the reliability of the formulas proposed to predict RRF from serum βTP and other LMWP may be affected by the different permeability of the dialysis membranes.

Keywords: β-trace protein, Low-molecular weight proteins, Maintenance haemodialysis, Permeability of dialysis membranes, Residual renal function

Background

The measurement of residual renal function (RRF) is clinically relevant in the management of maintenance haemodialysis (MHD) patients, since RRF significantly influences the adequacy of dialytic treatment and the survival of MHD patients [13]. A careful monitoring of RRF is particularly relevant when an incremental approach to the initiation of haemodialysis is used [4]. Frequently the evaluation of RRF is obtained from the measurement of urinary clearance of creatinine and urea, collecting the urine from the end of a dialysis to the beginning of the next dialysis and measuring at the same times the serum concentrations of creatinine and urea [5, 6].

β-trace protein (βTP), also known as lipocalin-type prostaglandin D synthase, is a small protein (molecular weight 23–29 kDa, depending on the different glycosylation of the molecule), isolated primarily from cerebrospinal fluid [710]. Like other low-molecular weight proteins (LMWPs), βTP is taken up by tubular cells and actively degraded within their lysosomes [4]. Studies in chronic kidney disease (CKD) patients demonstrated that serum βTP is an adequate marker of glomerular filtration rate (GFR) impairment with a diagnostic accuracy similar to those of serum creatinine, cystatin C (Cys) and β2-microglobulin (β2M) [1115].

Quite recently the possibility to predict RRF in MHD patients from serum concentration of βTP combined with β2M, or with β2M and Cys, has been addressed [16, 17]. The need for studies comparing βTP clearance with high-flux hemodialysis, superflux dialyzers, and high-volume hemodiafiltration, has been highlighted [18]. In fact, the different efficiency of membranes in the removal of βTP from blood could affect the accuracy of formulas proposed to calculate RRF in MHD patients from serum βTP.

The aim of this study was to evaluate the effects of haemodialysis with low-flux, high-flux and super high-flux membranes on serum concentrations of ßTP in MHD patients with null RRF.

Methods

We report the data on serum concentrations of ßTP in 51 MHD patients treated by low flux (n = 24), high-flux (n = 17), and super high-flux (n = 10) membranes. The removal from blood of β2M (MW 11.8), Cys (MW 13.3), urea and creatinine was also analyzed for comparison. These data, unpublished up to now, are from our database of studies on the dialytic efficiency of haemodialysis membranes. Patients were randomly allocated into the different treatment groups.

Study design

Single center cross sectional study of prevalent MHD patients. Setting: haemodialysis facility of the Nephrology Division, Dept Medicine, University of Pisa.

Inclusion criteria: age >18 years; dialytic vintage >6 months; residual diuresis null.

Exclusion criteria: incapacity to give informed consent.

Blood samples were drawn before starting and after the end of the first haemodialysis of the week. To minimize a post-dialysis rebound phenomenon, blood samples were drawn 30 min after the end of dialysis. Serum samples were stored into Eppendorf tubes at −20 ° C up to biochemical determinations.

Ethics, consent and permissions

The Institutional Ethical Committee Azienda Ospedaliero-Universitaria Pisana (2395/2007) approved the study on the dialytic efficiency of haemodialysis membranes, that was conducted according to Helsinki declarations. Patients gave verbally their informed consent.

Dialyzers and membranes

Low-flux dialyzers: Polysulfone (F8, Fresenius, Bad Homburg, Germany); Cellulose diacetate (Acepal 1700, Diacepal 16, Hospal, Mirandola, Italy); High-flux dialyzer: Acrylonitrile and sodium methallyl sulfonate copolymer (Nephral 500, Hospal Gambro, Mirandola, Italy); Super high-flux dialyzer: Cellulose triacetate (N190 FH, Nipro, Japan). Main characteristics of the different dialyzers are reported in Table 1.

Table 1.

Main characteristics and properties of the different dialyzers, according to manufacturers data

Permeability Low-flux Low-flux High-flux Super high-flux
Dialysis Membrane Polysulfone Cellulose diacetate Acrylonitrile and sodium methallyl sulfonate copolymer Cellulose triacetate
KUF, mL/h/mmHg 7.5 13–13.7 65 84.7
Surface, m2 1.8 1.6–1.7 2.15 1.9
Urea clearance, mL/min 186 183–190 195 199

KUF = ultrafiltration coefficient; Standard conditions: QB = 200 mL/min; QD = 500 mL/min; TMP 100 mmHg; QUF = 0–10 ml/min

Laboratory methods

Urea was determined by an enzymatic method (UREA/BUN Roche/Cobas; Roche Diagnostics, Mannheim, Germany). Creatinine was measured with a rate-blanked creatinine/Jaffé method (CREA Roche/Hitachi automated analysis for Hitachi 917, Roche Diagnostics, Mannheim, Germany). β2M was measured with an immune-enzymic method (AxSym ß2-Microglobulin, Abbott, Wiesbaden, Germany; mean reference value 0.99 ± 0.16 mg/L). Cys was measured with a particle enhanced immune-nephelometric method (N Latex Cystatin C, Siemens Healthcare, Erlangen, Germany; reference intervals 0.53–0.95 mg/L). βTP was measured with a particle enhanced immune-nephelometric method (N Antiserum to human βTP, Siemens Healthcare, Erlangen, Germany). Reference intervals, calculated in our laboratory, were 0.37–0.77 mg/L in men, and 0.40–0.70 mg/L in women [14].

Statistical analysis

Data are reported as means ± standard deviation. The significances of the differences between groups were assessed using non parametric Mann-Whitney test. Statistical analysis was performed using MedCalc Statistical Software version 16.4.3 (MedCalc Software, Ostend, Belgium). A p value <0.05 was considered statistically significant.

Results

Anthropometric and clinical data of patients are reported in Table 2.

Table 2.

Anthropometric and clinical data of the 51 patients

Haemodialysis membrane Low-flux High-flux Super High-flux
Number (males) 24 (12) 17 (16) 10 (9)
Age, years 65.7 ± 19.7 59.2 ± 11.7 64.6 ± 15.3
Dialysis Vintage, years 4.4 ± 3.2 6.9 ± 4.2x 2.7 ± 1.9**
Body weight, kg 64.0 ± 20.2 73.3 ± 13.3 76.9 ± 20.9
Body height, cm 163 ± 12 169 ± 8.6 171 ± 15.3
BMI, kg/m2 23.6 ± 5.2 25.7 ± 4.5 25.4 ± 3.9
Native kidney disease
 Ischemic nephropathy 12 (50%) 2 (11.8%) 6 (60%)
 Diabetic nephropathy 3 (12.5%) 2 (11.8%) 3 (30%)
 Glomerulonephrites 3 (12.5%) 4 (23.5%) 1 (10%)
 Interstitial nephrites 2 (8.3%) 4 (23.5%) 0
 Chronic kidney disease 2 (8.3%) 3 (17.6%) 0
 ADPKD and congenital nephropathies 2 (8.3%) 2 (11.8%) 0

Mean values and standard deviations, or numbers and percentages are reported. The statistical significance (p) of the differences between mean values are indicated as follows: High-flux vs low-flux: x p < 0.05; Super high-flux vs high-flux: ** p < 0.01

Few differences in dialytic prescription were found between the different groups of patients (Table 3).

Table 3.

Dialysis parameters and serum concentrations of urea, creatinine, β-trace protein, β2-microglobulin and cystatin C before (BD) and after (AD) haemodialysis

Low-Flux
n = 24
High-Flux
n = 17
Super High-Flux
n = 10
Mean ± SD Mean ± SD Mean ± SD
Dialysis length, h 3.7 ± 0.5 3.7 ± 0.3 4.2 ± 0.2** §§
Blood flow, mL/min 322 ± 40 368 ± 21x 330 ± 42
Dialysate flow, mL/min 500 500 500
Ultrafiltration, kg 2.8 ± 0.8 3.4 ± 0.9x 3.2 ± 1.0
Urea BD, mg/dL 145 ± 45 159 ± 40 122 ± 45
Urea AD, mg/dL 45 ± 20 48 ± 15 36 ± 18
Creatinine BD, mg/dL 9.5 ± 3.7 11.2 ± 1.9x 10.5 ± 3.5
Creatinine AD, mg/dL 3.7 ± 1.3 4.2 ± 0.9 3.9 ± 1.4
β-Trace protein BD, mg/L 11.8 ± 4.8 10.9 ± 2.2 8.11 ± 2.4**§
β-Trace protein AD, mg/L 14.8 ± 6.6 8.0 ± 2.5 3.8 ± 1.9***§§§
β2-Microglobulin BD, mg/L 39.4 ± 15.3 24.4 ± 3.6xx 29.0 ± 12.0
β2-Microglobulin AD, mg/L 42.9 ± 18.0 9.1 ± 1.4xxx*** 11.4 ± 5.1§§§
Cystatin C BD, mg/L 7.4 ± 1.9 9.36 ± 2.6xx 5.29 ± 0.9***§§
Cystatin C AD, mg/L 7.4 ± 2.4 2.4 ± 0.6xxx 1.9 ± 0.8§§§

Mean values and standard deviations (SD) are reported. The statistical significance (p) of the differences between mean values are indicated as follows: High-flux vs low-flux: x p < 0.05; xx p < 0.01; xxx p < 0.001; Super high-flux vs low-flux: § p < 0.05; §§ p < 0.01; §§§ p < 0.001; Super high-flux vs high-flux: ** p < 0.01; *** p < 0.001

Serum βTP, β2M and Cys decreased significantly after the treatment with super high-flux and high-flux membranes. On the contrary, serum βTP significantly increased in patients treated with low-flux HD, due to the dialytic dehydration. Serum βTP levels increased to a similar extent after polysulfone or cellulose diacetate treatment: +27 ± 23 and +21 ± 22%, respectively (p = 0.50). In patients treated by super high-flux membrane, serum βTP was significantly lower, either before or after dialytic treatment, than in those treated with high-flux and low-flux membranes. The percent reduction ratios of β2-microglobulin, cystatin C and β-trace protein increased progressively according to the flux of the different membranes (Fig. 1).

Fig. 1.

Fig. 1

Percent reduction ratios of β2-microglobulin, cystatin C and β-trace protein in patients treated with dialyzers with different permeability: Low-flux, high-flux, and super high-flux. Percent reduction ratios of urea and creatinine of the same patients are reported for comparison. Mean values and 1 standard deviation from the mean are drawn

In fact, low-flux membranes did not remove any LMWP. High-flux membrane removed more efficiently β2M (reduction ratio 62.0 ± 8.3%) and Cys (RR 73.2 ± 9.0%) than βTP (RR 26.3 ± 18.7%). Super high-flux membrane removed efficiently all the three LMWPs with a similar reduction ratio: β2M (RR 59.5 ± 16.2%), Cys (62.0 ± 7.5%), and βTP (53.4 ± 15.5%). The removal of the small molecules urea and creatinine was very similar with the different membranes, ranging 69.8–71.1% for urea, and 61.0–62.9% for creatinine.

Discussion

In the setting of maintenance haemodialysis, a relationship between RRF and serum LMWP concentration has been indicated since long time [19, 20]. Different data indicate a different removal of the various LMWP, determined by the dimensions of the molecules and by the permeability characteristics of the dialysis membranes. In particular, a significantly lower elimination for βTP than Cys and β2M was found both in haemodiafiltration (HDF) and haemofiltration (HF). βTP was only moderately eliminated by HDF and not at all by HF, while standard haemodialysis (HD) with low-flux membranes did not remove any of the three LMWPs [21]. In the same period, another study found that the removal of βTP from the blood was modest and definitely lower than that of β2M after HD and HDF with high-flux dialyzers (KUf ranging 40–69 mL/h/mmHg) [22]. On the contrary, serum levels of βTP were tightly associated to residual diuresis of MHD patients suggesting that βTP serum levels may serve as a surrogate marker for RRF [20]. However, the possibility to evaluate RRF in dialysis patients from serum concentrations of the LMWP cystatin C has been addressed by different studies with conflicting results [23, 24]. No data is available on the effect of dialysis with super high-flux membranes on serum βTP levels.

Formulas based on serum levels of βTP and other LMWP measured before the dialysis session have been recently proposed to predict RRF in MHD patients avoiding urine collection [16, 17]. Some differences can be notices between the two studies. In particular, serum βTP was unaffected by haemodialytic treatment [17], while decreased after high-flux HD and even more after HDF [16]. The editorial comment to these papers proposes some caution notes due to the expected lower dialyzer clearance of βTP, whose MW is higher than β2M and Cys, and to the need for studies comparing βTP clearance with high-flux haemodialysis, superflux dialyzers, and high-volume haemodiafiltration [18].

Our previous results in CKD patients, not dialyzed, demonstrated that βTP is an adequate marker of GFR since its serum concentrations are determined exclusively by GFR and age (multiple correlation coefficient 0.9245) [15].

The present study, which aims to evaluate the effects of haemodialysis with low-flux, high-flux and super high-flux membranes on serum concentrations of ßTP in MHD patients with null RRF, was performed in reports data from a small number of patients, which is a limitation of the study. A strength of the study is the very wide range of permeabilities of the dialytic membranes from low- to super high-flux. No other data are available on the effect of dialysis with super-high flux membranes on serum levels of βTP in MHD patients. The study was undertaken in different patients for the different treatment strategies, which is another limitation of the study. However, dialyzer blood flow, dialysate flow, length and frequency of dialysis were similar in all patients, and blood samples were drawn 30 min after the end of dialysis to minimize eventual rebound phenomenon.

The results of this study demonstrate that the removal of βTP from blood is null with low-flux dialysis membranes, and progressively increases with the increase in the permeability of the membranes. Haemodialysis with super high-flux membrane has the highest efficiency in decreasing serum levels of βTP. The differences among βTP, β2M and Cys, observed during treatments with low- and high-flux membranes, become insignificant using a super high-flux membrane. Due to the different removal efficiency, higher serum βTP were found, before the first dialysis of the week, in patients treated with low- and high-flux membranes than in those treated by super high-flux membrane. These differences may have an impact on the values of residual renal function calculated by means of the recently proposed formulas [16, 17]. We could not evaluate the relevance of this effect in our patients, since they had no residual renal function.

Conclusions

The plasma clearance of small proteins and particularly of βTP is dependent from the permeability of the dialysis membranes. Super high-flux membrane have the highest efficiency to remove ßTP from the blood. The differential elimination of small proteins in the different haemodialysis techniques may affect the reliability of the prediction of residual renal function from serum concentrations of small proteins.

Acknowledgements

Ms Ida Natarelli is gratefully acknowledged for her secretarial assistance.

Funding

Institutional research funding. University of Pisa “Ricerca di ateneo 2008–2010”.

Availability of data and materials

The dataset supporting the conclusions of this article is available in the Mendeley Data repository, v1. http://dx.doi.org/10.17632/776kf9cjyj.2.

Authors’ contributions

CD: study design, clinical follow up of patients, analysis of data, preparation and critical evaluation of the manuscript; DT: analysis of data, preparation and critical evaluation of the manuscript; LC: biochemical determinations, analysis of data, critical evaluation of the manuscript; AP: biochemical determinations, analysis of data, critical evaluation of the manuscript. All authors read and approved the final manuscript.

Competing interests

The authors declare that they have no competing interests. The results presented in this paper have not been published previously in whole or part, except in abstract format.

Consent for publication

Not applicable.

Ethics approval and consent to participate

The Institutional Ethical Committee Azienda Ospedaliero-Universitaria Pisana approved the study on the dialytic efficiency of haemodialysis membranes, that was conducted according to Helsinki declarations. Patients gave their informed consent.

Abbreviations

CKD

Chronic kidney disease

Cys

Cystatin C

GFR

Glomerular filtration rate

LMWP

Low-molecular weight proteins

MHD

Maintenance haemodialysis

MW

Molecular weigth

RRF

Residual renal function

β2M

β2-microglobulin

βTP

β-trace protein

References

  • 1.Stel VS, Dekker FW, Ansell D, et al. Residual renal function at the start of dialysis and clinical outcomes. Nephrol Dial Transplant. 2009;24:3175–82. doi: 10.1093/ndt/gfp264. [DOI] [PubMed] [Google Scholar]
  • 2.Vilar E, Wellsted D, Chandna SM, Greenwood RN, Farrington K. Residual renal function improves outcome in incremental haemodialysis despite reduced dialysis dose. Nephrol Dial Transplant. 2009;24:2502–10. doi: 10.1093/ndt/gfp071. [DOI] [PubMed] [Google Scholar]
  • 3.van der Wal WM, Noordzij M, Dekker FW, et al. Full loss of residual renal function causes higher mortality in dialysis patients; findings from a marginal structural model. Nephrol Dial Transplant. 2011;26:2978–83. doi: 10.1093/ndt/gfq856. [DOI] [PubMed] [Google Scholar]
  • 4.Wong J, Vilar E, Davenport A, Farrington K. Incremental haemodialysis. Nephrol Dial Transplant. 2015;30:1639–48. doi: 10.1093/ndt/gfv231. [DOI] [PubMed] [Google Scholar]
  • 5.Hemodialysis Adequacy 2006 Work Group Clinical practice guidelines for hemodialysis adequacy, update 2006. Am J Kidney Dis. 2006;48(suppl 1):S2–90. doi: 10.1053/j.ajkd.2006.03.051. [DOI] [PubMed] [Google Scholar]
  • 6.European Best Practice Guidelines Section I. Measurement of renal function, when to refer and when to start dialysis. Nephrol Dial Transplant. 2002;17(suppl 7):7–15. doi: 10.1093/ndt/17.suppl_7.7. [DOI] [PubMed] [Google Scholar]
  • 7.Hoffmann A, Conradt HS, Gross G, et al. Purification and chemical characterization of beta-trace protein from human cerebrospinal fluid: its identification as prostaglandin D synthase. J Neurochem. 1993;61:451–6. doi: 10.1111/j.1471-4159.1993.tb02145.x. [DOI] [PubMed] [Google Scholar]
  • 8.Hoffmann A, Nimtz M, Conradt HS. Molecular characterization of beta-trace protein in human serum and urine: a potential diagnostic marker for renal disease. Glycobiology. 1997;7:499–506. doi: 10.1093/glycob/7.4.499. [DOI] [PubMed] [Google Scholar]
  • 9.Whitsed H, Penny R. Beta trace protein. Purification and urinary excretion studies in selected diseases. Clin Chim Acta. 1974;50:111–8. doi: 10.1016/0009-8981(74)90083-7. [DOI] [PubMed] [Google Scholar]
  • 10.Nagata N, Fujimori K, Okazaki I, et al. De novo synthesis, uptake and proteolytic processing of lipocalin-type prostaglandin D synthase, beta-trace, in the kidneys. FEBSJ. 2009;276:7146–58. doi: 10.1111/j.1742-4658.2009.07426.x. [DOI] [PubMed] [Google Scholar]
  • 11.Priem F, Althaus H, Birnbaum M, et al. Beta-Trace protein in serum: a new marker of glomerular filtration rate in the creatinine-blind range. Clin Chem. 1999;45:567–8. [PubMed] [Google Scholar]
  • 12.Priem F, Althaus H, Jung K, et al. Beta-Trace protein is not better than cystatin C as an indicator of reduced glomerular filtration rate. Clin Chem. 2001;47:2181. [PubMed] [Google Scholar]
  • 13.Filler G, Priem F, Lepage N, et al. Beta-Trace protein, cystatin C, beta2-microglobulin, and creatinine compared for detecting impaired glomerular filtration rate in children. Clin Chem. 2002;48:729–36. [PubMed] [Google Scholar]
  • 14.Donadio C, Lucchesi A, Ardini M, et al. Serum levels of beta-trace protein and glomerular filtration rate—preliminary results. J Pharm Biomed Anal. 2003;32:1099–104. doi: 10.1016/S0731-7085(03)00215-2. [DOI] [PubMed] [Google Scholar]
  • 15.Donadio C. Serum and urinary markers of early impairment of GFR in chronic kidney disease patients: diagnostic accuracy of urinary β-trace protein. Am J Physiol Renal Physiol. 2010;299:F1407–23. doi: 10.1152/ajprenal.00507.2009. [DOI] [PubMed] [Google Scholar]
  • 16.Wong J, Sridharan S, Berdeprado J, et al. Predicting residual kidney function in hemodialysis patients using serum β-trace protein and β2-microglobulin. Kidney Int. 2016;89:1090–8. doi: 10.1016/j.kint.2015.12.042. [DOI] [PubMed] [Google Scholar]
  • 17.Shafi T, Michels WM, Levey AS, et al. Estimating residual kidney function in dialysis patients without urine collection. Kidney Int. 2016;89:1099–110. doi: 10.1016/j.kint.2015.10.011. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 18.Davenport A. Measuring residual renal function in dialysis patients: can we dispense with 24-hour urine collections? Kidney Int. 2016;89:978–80. doi: 10.1016/j.kint.2016.02.008. [DOI] [PubMed] [Google Scholar]
  • 19.Brown PH, Kalra PA, Turney JH, Cooper EH. Serum low-molecular-weight proteins in haemodialysis patients: effect of residual renal function. Nephrol Dial Transplant. 1988;3:169–73. [PubMed] [Google Scholar]
  • 20.Kabanda A, Jadoul M, Pochet JM, Lauwerys R, van Ypersele de Strihou C, Bernard A. Determinants of the serum concentrations of low molecular weight proteins in patients on maintenance hemodialysis. Kidney Int. 1994;45:1689–96. doi: 10.1038/ki.1994.221. [DOI] [PubMed] [Google Scholar]
  • 21.Lindstrom V, Grubb A, Alquist Hegbrant M, et al. Different elimination patterns of beta-trace protein, beta2-microglobulin and cystatin C in haemodialysis, haemodiafiltration and haemofiltration. Scand J Clin Lab Invest. 2008;68:685–91. doi: 10.1080/00365510802047693. [DOI] [PubMed] [Google Scholar]
  • 22.Gerhardt T, Poge U, Stoffel-Wagner B, et al. Serum levels of beta-trace protein and its association to diuresis in haemodialysis patients. Nephrol Dial Transplant. 2008;23:309–14. doi: 10.1093/ndt/gfm510. [DOI] [PubMed] [Google Scholar]
  • 23.Hoek FJ, Korevaar JC, Dekker FW, et al. Estimation of residual glomerular filtration rate in dialysis patients from the plasma cystatin C level. Nephrol Dial Transplant. 2007;22:1633–8. doi: 10.1093/ndt/gfm027. [DOI] [PubMed] [Google Scholar]
  • 24.Zhong H, Zhang W, Qin M, Gou Z, Feng P. Validation of cystatin C–based equations for evaluating residual renal function in patients on continuous ambulatory peritoneal dialysis. Nephrol Dial Transplant. 2016 doi: 10.1093/ndt/gfw096. [DOI] [PubMed] [Google Scholar]

Associated Data

This section collects any data citations, data availability statements, or supplementary materials included in this article.

Data Availability Statement

The dataset supporting the conclusions of this article is available in the Mendeley Data repository, v1. http://dx.doi.org/10.17632/776kf9cjyj.2.


Articles from BMC Nephrology are provided here courtesy of BMC

RESOURCES