6
ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS S. Z. Mahmoodabadi 1,2 (MSc), A. Ahmadian 1,2 (Phd), M. D. Abolhasani 1,2 (Phd) [email protected] , [email protected] , [email protected]  1- Tehran University of Medical Sciences (TUMS), Tehran, Iran 2- Research Center for Science and Technology in Medicine (RCSTIM), Tehran, Iran Abstract: In this work, we have developed and evaluated an electrocardiogram (ECG) feature extraction system based on the multi-resolution wavelet transform. ECG signals from Modified Lead II (MLII) are chosen for processing. The result of applying two wavelet filters (D4 and D6) of different length on the signal is compared. The wavelet filter with scaling function more closely similar to the shape of the ECG signal achieved better detection. In the first step, the ECG signal was de-noised by removing the corresponding wavelet coefficients at higher scales. Then, QRS complexes are detected and each complex is used to locate the peaks of the individual waves, including onsets and offsets of the P and T waves which are present in one cardiac cycle. We evaluated the algorithm on MIT-BIH Database, the manually annotated database, for validation purposes. The proposed QRS detector achieved sensitivity of 75 . 2 % 18 . 99 ± and a positive predictivity of 45 . 4 % 00 . 98 ± over the validation database. Key Words: ECG, Beat Detection, P-QRS-T waves, Daubechies wavelets, Feature Extraction. I. INTRODUCTION The analysis of the ECG has been widely used for diagnosing many cardiac diseases. The ECG is a graphic record of the direction and magnitude of the electrical activity that is generated by depolarization and repolarization of the atria and ventricles. One cardiac cycle in an ECG signal consists of the P-QRS-T waves (Fig. 1). Most of the clinically useful information in the ECG is found in the intervals and amplitudes defined by its features (characteristic wave peaks and time durations). The development of accurate and quick methods for automatic ECG feature extraction is of major importance, especially for the analysis of long recordings (Holters and ambulatory systems). In fact, beat detection is necessary to determine the heart rate, and several related arrhythmias such as Tachycardia, Bradycardia and Heart Rate Variation; it is also necessary for further processing of the signal in order to detect abnormal beats [8]. The ECG feature extraction system provides fundamental features (amplitudes and intervals) to be used in subsequent automatic analysis. Producing an algorithm for the detection of the P wave, QRS complex and T wave in an ECG is a difficult problem due to the time-varying morphology of the signal subject to physiological conditions and the presence of noise [4]. Recently, a number of techniques have been proposed to detect these features [1-3][11]. Here our procedure using Daubechies wavelets is introduced. II. MATERIALS AND METHODS A. Wavelet Transform Mathematically speaking, the wavelet transform is a convolution of the wavelet function ) (t ψ  with the signal ) (t  x . Orthonormal dyadic discrete wavelets are associated with scaling functions ) (t φ . The scaling function can be convolved with the signal to produce approximation coefficients S . The discrete wavelet transform (DWT) can be written as: ∫ = dt t t  x T n m n m ) ( ) ( , , ψ   By choosing an orthonormal wavelet basis, ) ( , t n m ψ  , and we can reconstruct the original.  The approximation coefficient of the signal at the scale m  and location n can be presented by: ∫ = dt t t  x S n m n m ) ( ) ( , , φ (1) In practice our discrete input signal n S , 0 is of finite length N , which is an integer power of 2:  M  N 2 = . Thus the range of scales that can be investigated is . 0  M m < < A discrete approximation of the signal can be shown as = + =  M m m  M t d t  x t  x 1 0 ) ( ) ( ) ( (2) where the mean signal approximation at scale  M is 480-816 343

ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

Embed Size (px)

Citation preview

Page 1: ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

8/3/2019 ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

http://slidepdf.com/reader/full/ecg-feature-extraction-using-daubechies-wavelets 1/6

ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

S. Z. Mahmoodabadi1,2(MSc), A. Ahmadian1,2 (Phd), M. D. Abolhasani1,2(Phd)[email protected], [email protected], [email protected] 

1- Tehran University of Medical Sciences (TUMS), Tehran, Iran

2- Research Center for Science and Technology in Medicine (RCSTIM), Tehran, Iran

Abstract: In this work, we have developed and

evaluated an electrocardiogram (ECG) feature

extraction system based on the multi-resolution wavelet

transform. ECG signals from Modified Lead II (MLII)

are chosen for processing. The result of applying two

wavelet filters (D4 and D6) of different length on the

signal is compared. The wavelet filter with scaling

function more closely similar to the shape of the ECG

signal achieved better detection. In the first step, the

ECG signal was de-noised by removing the

corresponding wavelet coefficients at higher scales.Then, QRS complexes are detected and each complex is

used to locate the peaks of the individual waves,

including onsets and offsets of the P and T waves which

are present in one cardiac cycle. We evaluated the

algorithm on MIT-BIH Database, the manually

annotated database, for validation purposes. The

proposed QRS detector achieved sensitivity of 

75.2%18.99 ± and a positive predictivity of 

45.4%00.98 ± over the validation database.

Key Words: ECG, Beat Detection, P-QRS-T waves,

Daubechies wavelets, Feature Extraction.

I. INTRODUCTION

The analysis of the ECG has been widely used for

diagnosing many cardiac diseases. The ECG is a

graphic record of the direction and magnitude of the

electrical activity that is generated by depolarization

and repolarization of the atria and ventricles. One

cardiac cycle in an ECG signal consists of the P-QRS-T

waves (Fig. 1). Most of the clinically useful information

in the ECG is found in the intervals and amplitudes

defined by its features (characteristic wave peaks and

time durations). The development of accurate and quick methods for automatic ECG feature extraction is of 

major importance, especially for the analysis of long

recordings (Holters and ambulatory systems). In fact,

beat detection is necessary to determine the heart rate,

and several related arrhythmias such as Tachycardia,

Bradycardia and Heart Rate Variation; it is also

necessary for further processing of the signal in order to

detect abnormal beats [8]. The ECG feature extraction

system provides fundamental features (amplitudes and

intervals) to be used in subsequent automatic analysis.

Producing an algorithm for the detection of the P wave,

QRS complex and T wave in an ECG is a difficult

problem due to the time-varying morphology of the

signal subject to physiological conditions and the

presence of noise [4]. Recently, a number of techniques

have been proposed to detect these features [1-3][11].

Here our procedure using Daubechies wavelets is

introduced.

II. MATERIALS AND METHODS

A. Wavelet Transform

Mathematically speaking, the wavelet transform is a

convolution of the wavelet function )(t ψ   with the

signal )(t  x . Orthonormal dyadic discrete wavelets are

associated with scaling functions )(t φ  . The scaling

function can be convolved with the signal to produce

approximation coefficients S . The discrete wavelet

transform (DWT) can be written as:

∫ =

∞−dt t t  xT  nmnm )()( ,, ψ    

By choosing an orthonormal wavelet basis, )(, t nmψ   ,

and we can reconstruct the original.  The

approximation coefficient of the signal at the scale m  

and location n can be presented by:

∫ =∞

∞−dt t t  xS nmnm )()( ,, φ  (1)

In practice our discrete input signal nS ,0 is of finite

length N , which is an integer power of 2: M 

 N  2= .Thus the range of scales that can be investigated is

.0  M m << A discrete approximation of the signal can

be shown as

∑=

+=

 M 

m

m M  t d t  xt  x1

0 )()()( (2)

where the mean signal approximation at scale  M  is

480-816 343

Page 2: ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

8/3/2019 ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

http://slidepdf.com/reader/full/ecg-feature-extraction-using-daubechies-wavelets 2/6

)()( ,, t St  x n M n M  M  φ = (3)

and the detail signal approximation corresponding to

scale m is defined for a finite length signal as

∑=

=

− 12

0,, )()(

m M 

nnmnmm t T t d  ψ   (4)

Adding the approximation of the signal at scale index

 M  to the sum of all detail signal components across

scales gives the approximation of the original signal at

scale index 0. The signal approximation at a specific

scale was a combination of the approximation and

detail at the next lower scale.

)()()( 1 t d t  xt  x mmm −= − (5)

If scale 3=m was chosen, it can be shown that the

signal approximation is given by

)()()()()( 32103 t d t d t d t  xt  x −−−= (6)

corresponding to the successive stripping of high

frequency information (contained within the )(t d m )

from the original signal at each step [4]. This is referred

to as multiresolution analysis of a signal using wavelet

transform, and is the basic of our procedure.

B. Prototype Wavelet Used

The large number of known wavelet families and

functions provides a rich space in which to search for awavelet which will very efficiently represent a signal of 

interest in a large variety of applications. Wavelet

families include Biorthogonal, Coiflet, Harr, Symmlet,

Daubechies wavelets [10], etc. There is no absolute way

to choose a certain wavelet. The choice of the wavelet

function depends on the application. The Haar wavelet

algorithm has the advantage of being simple to compute

and easy to understand. The Daubechies algorithm is

conceptually more complex and has a slightly higher

computational overhead. But, the Daubechies algorithm

picks up detail that is missed by the Haar wavelet

algorithm. Even if a signal is not well represented by

one member of the Db family, it may still be efficiently

represented by another. Selecting a wavelet function

which closely matches the signal to be processed is of 

utmost importance in wavelet applications [9].

Daubechies wavelet family are similar in shape to QRS

complex and their energy spectrum are concentrated

around low frequencies. Fig. 1 shows the details of an

ECG signal with a short burst of noise added to its end.

Below the signal the details for eight wavelet scales are

shown which are scaled for better illustration. Adding

D4 and D6 wavelets were used in the decomposition.

Fig. 1: Multiresolution decomposition of ECG signal containing shortburst of noise. (a) Using D4 (b) Using D6. Source signal, x[n], and

signal details of order m, D2m.

344

Page 3: ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

8/3/2019 ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

http://slidepdf.com/reader/full/ecg-feature-extraction-using-daubechies-wavelets 3/6

The original signal is shown at the top of the plot.

Below the signal the details for eight wavelet scales are

shown which are scaled for better illustration. Adding

together all these details plus the remaining signal

approximation (which is the signal mean) returns the

original signal. Four points are noticeable from the

plots. First, most of the details of the signal are

contained at scale 25. The second point to notice is that

the high frequency burst of noise is captured at thesmallest scales, namely 2

2and 2

1. The third is the

appearance of Daubechies D4 and D6 scaling functions

at higher scales. The last one is the more similarity of 

D6 scaling function to QRS complex than to D4, as it

can be seen by the details of the signal at scale 25.

Because of the latter property the D6 wavelet is

implemented here. Fig. 2 describes approximation of 

the signal showed in Fig. 1. The signal is approximated

by omitting the signal's details beginning from scale 21 

to 28. It is clear that high frequency components

decrease as lower details are removed from the original

signal. As these lower details are removed, signal

becomes smoother and the noise on the T wave in theleft of the figure disappears. We can also see that the

peaks of QRS complexes flatten and P and T waves,

containing lower frequencies becomes more visible. If 

the frequency distribution of details is drawn we may

find better understanding of wavelet transform. A

normal ECG signal along with its frequency distribution

is shown in Fig. 3. The signal is sampled at 360 

sample/second, so the range of real frequency

component of the signal is between 0 to 180 Hz. A

normal signal is used here to omit the interference of 

abnormal beats in frequency distribution. The frequency

response of the original signal shows its main

concentration in the lower frequency range 2 – 40 Hz.

The signal had a large dc component which was

removed to enhance other frequency components of the

signal. The frequency response of the wavelets details is

also shown which are exaggerated to clearly show their

distribution. It can be seen that details at lower scales

constitutes the higher frequencies of the signal.

Although the frequency distribution of the details does

not overlap each other at lower scales up to 23, they

obviously overlap at higher scales. While working with

details of the signal, these overlaps between discrete

distributions should be taken into consideration. The

last plot shows the overall frequency response of the

signal approximation including details up to 28. It

matches the original signal frequency response wellwhile removing the dc and low frequency components

which are not of concern in processing.

C. Description of the Algorithms

The algorithms presented in this section are applied

directly at one run over the whole digitized ECG signal

which are saved as data files provided by Physionet.

Fig. 2: Signal approximation using D6. Source signal, x[n], andomitted signal details of order m, (-) D2m.

Fig. 3: A normal ECG Signal and frequency distribution. The

frequency response of the wavelet details is also shown. Source

signal, x[n], and signal details of order m, D2m.

Fig. 4: Description of the ECG feature extraction algorithm

345

Page 4: ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

8/3/2019 ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

http://slidepdf.com/reader/full/ecg-feature-extraction-using-daubechies-wavelets 4/6

 

Fig. 5: Detection procedure. a) R wave detection b) Q & S Waves detection. c) Zero level detection. d) P & T detection.

There are actually four separate algorithms, each of 

which is designated to extract certain features of the

ECG signal. The description of the ECG feature

extraction algorithm is shown in Fig. 4. First, the peak 

of the QRS complex with its high dominated amplitude

in the signal is detected. Then Q and S waves are

detected. The Zero voltage level of the signal is foundnext. P and T waves along with their onsets and offsets

are the last things to be found.  

1)  R Detection :

Peaks of the R waves in signals from the MLII lead

have the largest amplitudes among other leads. In order

to detect the peaks, specific details of the signal were

selected. The procedure of the R wave detection

algorithm is shown in Fig. 5.a . Details 23 – 25 were

kept and all the details were removed. This procedure

removed low frequencies and high frequencies. The

attained signal samples were then squared. Highamplitude transitions of the signal were then more

noticeable, even if R peaks are deformed (Fig. 6). Then

a practically lower limit is applied on the signal to

remove unrelated noisy peaks. Because no subsequent

beats happen less than .25 second, pseudo-beats are also

removed. Detection of R peaks is very important

because they define the cardiac beats and the exactness

of all forthcoming detections is dependent on this.

2)  QS Detection :

Q and S peaks occurs about the R peak with in 0.1

Second. In order to make the peaks noticeable, all the

details of the signal were removed up to detail 25. The

approximation signal remained, was searched for

extermum points about the R peaks formerly detected.

The left point denoted the Q peak and the right one

denotes the S peak. The procedure of the Q and Swaves detection algorithm is shown in Fig. 5.b . A

normal QRS complex indicates that the electrical

impulse has progressed normally from the bundle of 

His to the Purkinje network through the right and left

bundle branches and that normal depolarization of the

right and left ventricles has occurred.

3)  Zero level Detection:

One would think that the electrocardiograph machines

for recording electrocardiograms could determine when

no current is flowing around the heart. However, many

stray currents exist in the body, such as currentsresulting from skin potentials and from differences in

ionic concentrations in different parts of the body.

These stray currents make it impossible for one to

predetermine the exact zero reference level in the

electrocardiogram. At the end of the QRS complex, no

current is flowing around the heart. Even the current of 

injury disappears at this point and the potential of the

electrocardiogram at this instant is zero. This point is

known as the J point. Most people, however, are

conditioned to consider the TP segment of the

346

Page 5: ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

8/3/2019 ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

http://slidepdf.com/reader/full/ecg-feature-extraction-using-daubechies-wavelets 5/6

electrocardiogram as the reference level rather than the

J point which is much easier to be found correctly [7].

By experiment we found that the voltage at this level is

closely equal to the zero crossing of the approximation

signal, keeping details 21 – 25, before the Q peak. There

is another zero crossing after the S peak. Comparing

these two points is essential for detecting current of 

injury and ST segment shift. The procedure of the zero

level detection algorithm is shown in Fig. 5.c .

4)  P and T Wave Detection: 

These waves are more noticeable when keeping details

24 – 28. At these levels, lower frequencies and high

frequency ripples of the signal are removed. The

extermums of the signal before and after the zero

crossings about each R peak which are formerly

detected denote P and T peaks. Zero crossings of the

signal about the P and T peaks which were detected are

the onset and offset points of the waves, respectively.

The procedure of the P and T waves detection algorithm

is shown in Fig. 5.d .

Implementing these algorithms provides the features of 

the ECG signal which can then be used to annotate the

signal as shown in Fig. 7.

III. RESULTS and VALIDATION

 Results for beat Detection 

The databases for which the program was designed

consist of a small number of records, each of which is

quite large (typically a megabyte or more). Database

records usually originate as multi-channel analog taperecordings that have been digitized and stored as disk 

files. Records are identified by record names, which are

three-digit numbers for MIT DB records. A record is

comprised of several files, which contain signals,

annotations, and specifications of signal attributes. MIT

DB records are each 30 minutes in duration, and are

annotated throughout; by this we mean that each beat

(QRS complex) is described by a label called an

annotation. Typically an annotation file for an MIT DB

record contains about 2000 beat annotations, and

smaller numbers of rhythm and signal quality

annotations [5]. The test protocols described in EC57

standard, require that, for each record, the output of thedevice has been recorded in an annotation file (the “test

annotation file”), in the same format as the reference

annotation file for that record. The programs "bxb,"

"rxr," "epic," and "mxm" (either the versions supplied

on the MIT–BIH Arrhythmia Database CD-ROM or

any later versions released by MIT) or equivalent

should be used to perform the comparisons between the

test annotation files and the reference annotation files

[6]. In order to test the beat detection algorithm which

Fig. 6: Detection of P-Q-R-S-T waves a sample of ECG signal. (a)

Original signal. (b) Removing dc and low frequencies. (c) Detecting

R peaks. (d) Detecting Q and S waves along with zero levels of thesignal. (e) Detecting P and T waves.

Fig. 7: An output annotated signal using the developed program.

is related to R peak detection, an annotation file was

generated. The results of the comparisons, using "bxb"

program is shown in Table 1.

IV. DISCUSSION and CONCLUSION

The wavelet based detector, in contrast to most QRS

detectors found in the literature, allows taking

advantage of characteristics of time-scale analysis.Implementing multi-resolution analysis and successive

stripping of the signal (signal details, )(t d m ) and using

signal approximation by compounding the signal details

were our basic tools. D6 family of Daubechies wavelets

showed better results in contrast to D4. Most of the

details of the signal are contained at lower scales

(mostly scale 25) which need less decomposition, so

faster application of the wavelet. The absence of very 

low (< 2 Hz) and very high (> 40 Hz) frequency

concentration of the ECG signal helped us to denoise

347

Page 6: ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

8/3/2019 ECG FEATURE EXTRACTION USING DAUBECHIES WAVELETS

http://slidepdf.com/reader/full/ecg-feature-extraction-using-daubechies-wavelets 6/6

the signal from movement artifacts and external

interfering noises easily. Keeping certain details (scales

23 – 25) and squaring of the remaining signal

approximation result in good detection of R peaks. The

peaks were detected among several types of beats in

more than 20 minutes signal durations. Choosing

certain details (21 – 25) of the signal made Q and S

peaks easy to find. Zero level detection procedure used,

help us to easily find the ST segment shift with out theneed for J point detection which is usually hard to

detect. Again using certain details (24

– 28) made P and

T waves more noticeable. The proposed wavelet based

feature extraction system achieved good detection 

performance on the MIT – BIH database. The QRS

detector attained sensitivity of  75.2%18.99 ± and a

positive predictivity of  45.4%00.98 ± on the first lead

of the validation databases among 46 records. All the

formerly proposed (to our knowledge) algorithms were

based on beat by beat detection which are more easily

achievable. The novelty of our procedure resides on its

application in one run of the algorithm. That is, the

whole signal samples are processed all at once, takingthe possibility of each kind of beats into account. We

have also tested our algorithm in beat by beat

processing which have shown to be quite good. The

results are better as is reported here in Table 1. The

results for 2 records (102 and 104) of the database were

not reported, because they do not contain the signal of 

MLII lead. Our procedure, the feature extraction using

Daubechies wavlets, is the basic for automatic ECG

arrhythmia detection which is of our concern in the

future to come.

REFFERENCES

[1]  Juan Pablo Martínez, Rute Almeida, Salvador Olmos , AnaPaula Rocha, and Pablo Laguna , A Wavelet-Based ECGDelineator: Evaluation on Standard Databases, IEEE 

Trans. Biomed. Eng., Vol. 51, No. 4, 2004. [2]  Krishna Prasad and J. S. Sahambi , Classification of ECG

Arrhythmias using Multi-Resolution Analysis and Neural

Networks, IEEE Trans. Biomed. Eng., 2003. [3]  Cuiwei Li, Chongxun Zheng, and Changfeng Tai,

Detection of ECG Characteristic Points using WaveletTransforms, IEEE Trans. Biomed. Eng., Vol. 42, No. 1, 

1995. [4]  Paul S Addison, The illustrated wavelet transform

handbook , (IOP Pub., 2002).

[5]  George B. Moody, WFDB programmer’s guide (TenthEdition, 2003). 

[6]  Association for the Advancement of MedicalInstrumentation,   EC57 – Testing and reporting . 

  performance results of cardiac rhythm and ST segment 

measurement algorithms, (1999).[7]  Guyton and Hall, Textbook of Medical Physiology (Tenth

Edition,W.B. Saunders Co., 2001).[8]  Robert J. Huzar,   Basic Dysrhythmias, Interpretation and 

 Management (C.V. Mosby Co., 1988).

[9]  Amara Grap, An Introduction to Wavelets,  IEEE Comp.

Sc. And Eng., Vol. 2, No. 2, 1995. 

[10]  Daubechies, I., Ten Lectures on Wavelets, SIAM ,Philadelphia, 1992. 

[11]  J.S Sahambi, S.N. Tandon and R.K.P. Bhatt, Using

Wavelet Transform for ECG Characterization, IEEE Eng.

in Med. and Bio., 1997.

Table 1: Sensitivity (Se) and Positive Predictivity (PP) Results of 

comparison between manual and automatic beat annotation of signals.Signal Records (Rec.) are chosen form MIT DB.

Rec. Se PP

100 100.00% (1830/1830) 100.00% (1830/1830)

101 99.87% (1515/1516) 99.61% (1514/1520)

103 100.00% (1691/1691) 100.00% (1691/1692)

105 82.77% (1682/2057) 81.49% (1682/2057)

106 99.63% (1625/1631) 99.94% (1625/1626)

107 99.94% (1721/1722) 96.96% (1721/1775)

118 100.00% (1821/1821) 99.67% (1821/1827)

119 100.00% (1604/1604) 99.07% (1604/1619)

200 99.91% (2126/2128) 98.20% (2126/2165)

201 100.00% (553/553) 99.64% (553/555)

202 99.94% (1582/1583) 99.87% (1582/1584)

203 94.73% (2303/2431) 98.76% (2303/2332)

205 99.49% (2162/2173) 99.95% (2162/2163)

207 99.62% (1553/1559) 98.73% (1553/1567)

208 96.67% (2324/2404) 96.99% (2324/2396)

209 99.92% (2438/2440) 100.00% (2438/2438)

210 97.99% (2099/2142) 99.71% (2099/2105)

212 100.00% (2240/2240) 100.00% (2240/2240)

213 99.96% (2634/2635) 100.00% (2634/2634)

214 99.73% (1816/1821) 99.84% (1816/1819)

215 99.63% (2708/2718) 100.00% (2708/2708)

217 99.94% (1790/1791) 96.34% (1790/1858)

219 94.52% (1621/1715) 94.30% (1621/1719)

x_108 99.12% (339/342) 93.13% (339/364)

x_109 100.00% (526/526) 99.81% (526/527)

x_111 100.00% (423/423) 99.76% (423/424)

x_112 100.00% (519/519) 98.48% (519/527)

x_113 100.00% (350/350) 79.55% (350/440)

x_114 100.00% (337/337) 99.41% (337/339)

x_115 100.00% (383/383) 100.00% (383/383)

x_116 100.00% (480/480) 100.00% (480/480)

x_117 100.00% (306/306) 86.93% (306/352)x_121 100.00% (367/367) 99.19% (367/370)

x_122 100.00% (511/511) 100.00% (511/511)

x_123 100.00% (301/301) 100.00% (301/301)

x_124 100.00% (313/313) 100.00% (313/313)

x_220 99.77% (429/430) 100.00% (429/429)

x_221 100.00% (491/491) 100.00% 491/491)

x_222 100.00% (445/445) 99.55% (445/447)

348