|
Description  |
|
|
FIELD OF THE INVENTION
The present invention pertains to methods for separating signal sources and
more specifically to the blind separation of multiple sources.
BACKGROUND OF THE INVENTION
Blind source separation denotes observing mixtures of independent sources,
and by making use of these mixed signals only and nothing else, recovering
the original or source signals.
The separation of independent sources from an array of sensors is a classic
but difficult problem in signal processing. Generally, the signal sources
as well as their mixture characteristics are unknown. Without knowledge of
the signal sources, other than a general assumption that the sources are
independent, the signal processing is commonly known in the art as the
"blind separation of sources". The separation is "blind" because nothing
is known about the independent source signals.
A typical example of the blind separation of source signals is where the
source signals are sounds generated by two independent sources, such as
two (or more) separate speakers. An equal number of microphones (two in
this example) are used to produce mixed signals, each composed as a
weighted sum of the source signals. Each of the source signals is delayed
and attenuated in some unknown amount during passage from the speaker to a
microphone, where it is mixed with the delayed and attenuated components
of the other source signals. Multi-path signals, generated by multiple
reflections of the source signals, are further mixed with direct source
signals. This is generally known as the "cocktail party" problem, since a
person generally wishes to listen to a single sound source while filtering
out other interfering sources, including multi-path signals.
Those skilled in the signal processing arts have been eager to solve blind
source separation problems because of their broad application to many
communication fields. In the cellular telecommunications art, for example,
a receiver must eliminate multi-path signals to avoid unacceptable levels
of interference.
Jutten and Herault ("Space or Time Adaptive Signal Processing by Neural
Network Modules", Neural Networks for Computing, Snowbird, Utah, J. S.
Denker, Ed., AIP Conference Proceedings 151, pp. 207-211, 1986) first
introduced a simple neural network with adaptive separation capability. A
detailed discussion of the Jutten-Herault network, refer to Pierre Comon,
et al. "Blind Separation of Sources, Part II: Problem Statement", Signal
Processing 24 (1), pp. 11-20 (1991). Comon et al. observe that the
Jutten-Herault network functions by searching for common zeros of N
functionals through pipelined stochastic iterations. Comon et al. show
that the Jutten-Herault network relies on the assumed independence of the
mixed signals, which follows from the assumption of independent source
signals only if the mixed signals are linear combinations of the source
signals. Comon et al. note that any introduction of non-linearity changes
the problem to one requiring the solution of an overdetermined system on
non-linear equations with several variables.
Generally, the prior art is concerned with instantaneous mixtures but
cannot handle delayed and filtered sources. For example, Platt and Faggin
(Networks For the Separation of Sources That Are Superimposed and
Delayed", Advances in Neural Information Processing Systems, Vol. 4,
Morgan-Kaufmann, San Mateo, Calif., 1992) have proposed a network that
modifies the Jutten-Herault network to also estimate a matrix of time
delays while estimating the Jutten-Herault network mixing matrix. Platt
and Faggin have proposed a new network to separate source signals that are
mixed either with time delays or through filtering. However, Platt and
Faggin also note that their learning technique has multiple stable states
and they cannot predict convergence to a solution (i.e. separate source
signals) except through experimentation.
A blind source separation system that works under real world conditions
would have a multitude of applications: array processing, speech signal
enhancement in the presence of noise, speaker separation in
teleconferencing situations (cocktail party problems), elimination of
multipath reverberation distortion, reducing intersymbol interference, and
others. Current algorithms all have shortcomings that prevent their
successful application to many real world situations, such as wideband
audio recordings.
Accordingly, the provision of a blind source separation system that
operates under real world conditions is highly desirable.
It is a purpose of the present invention to provide a new and improved
blind source separation system
It is another purpose of the present invention to provide a new and
improved blind source separation system that operates under real world
conditions
It is a further purpose of the present invention to provide a new and
improved blind source separation system that has the capabilities of
dealing with sources that have been delayed with respect to each other.
It is still a further purpose of the present invention to provide a new and
improved blind source separation system that is capable of separating
sources which include a sum of multipath copies of the sources distorted
by the environment.
SUMMARY OF THE INVENTION
The above problems and others are at least partially solved and the above
purposes and others are realized in a novel method of recovering source
signals from an equal number of mixed signals including components of the
source signals. As a first step of the method, channel one and two mixed
signals are multiplied by channel one and two adaptive weights to produce
channel one and two product signals, respectively. A channel one filtered
feedback signal is generated from a channel two approximation signal and a
channel two filtered feedback signal is generated from a channel one
approximation signal. The channel one filtered feedback signal is added to
the channel one product signal to produce the channel one approximation
signal and the channel two filtered feedback signal is added to the
channel two product signal to produce the channel two approximation
signal. A nonlinear function is applied to the approximation signals to
produce output signals. The adaptive weights and the filtered feedback
signals are adjusted to maximize entropy of the channel one and channel
two output signals.
In a preferred embodiment of the present invention the step of multiplying
the channel one mixed signal by the channel one adaptive weight to produce
the channel one product signal includes multiplying the channel one mixed
signal by a series of different weights associated with a series of
different delays and doing a summation to produce the channel one product
signal and the step of multiplying the channel two mixed signal by the
channel two adaptive weight to produce the channel two product signal
includes multiplying the channel two mixed signal by a series of different
weights associated with a series of different delays and doing a summation
to produce the channel two product signal. Also, the step of generating
the channel one filtered feedback signal includes multiplying the channel
two approximation signal by a series of different weights associated with
a series of different delays and doing a summation to produce the channel
one filtered feedback signal and the step of generating the channel two
filtered feedback signal includes multiplying the channel one
approximation signal by a series of different weights associated with a
series of different delays and doing a summation to produce the channel
two filtered feedback signal.
BRIEF DESCRIPTION OF THE DRAWINGS
Referring to the drawings:
FIG. 1 is a semi-schematic representation illustrating the blind source
separation problem;
FIG. 2 illustrates several simplified waveforms present in the structure of
FIG. 1;
FIG. 3 is a simplified block/schematic diagram of a prior art blind source
separation system;
FIG. 4 illustrates several simplified waveforms present in the structure of
FIG. 3;
FIG. 5 illustrates a simplified block/schematic diagram of a blind source
separation system in accordance with the present invention; and
FIG. 6 illustrates another simplified block/schematic diagram of a blind
source separation system in accordance with the present invention.
DESCRIPTION OF THE PREFERRED EMBODIMENT
The basic problem of separating blind sources can be seen most clearly by
referring to the simplified representation of FIG. 1. In the specific
examples utilized hereafter, the sources will be signals representative of
sounds, but it should be understood that the source signals could be
anything capable of being sensed and processed, such as light signals,
audio signals, RF signals, vibration measurements, or any system that
might include crosstalk or similar types of interference. In FIG. 1, a
blind source separation system is represented by a classic black box 10
containing (at this time) unknown components. A pair of microphones 11 and
12 provide two inputs to black box 10, which inputs are derived from two
separate independent sources S.sub.1 and S.sub.2. Microphone S.sub.1
provides a first mixed signal a.sub.11 S.sub.1 +a.sub.12 S.sub.2 and
microphone provides a second mixed signal a.sub.21 S.sub.1 +a.sub.22
S.sub.2. As will be understood, the "a's" in the mixed signals represent
some unknown fixed amplitude. Black box 10 only has access to the two
input signals and must separate them into the two original source signals
S.sub.1 and S.sub.2.
In a very simplified example, source signals S.sub.1 and S.sub.2 are
represented, in FIG. 2, by pulses (rectangular wavefoms) 13 and 14,
respectively, with pulse 14 being negative, or the opposite of pulse 13.
The first mixed signal applied to the first input of black box 10 is
represented by waveform 15, which includes a portion (equal to one) of
pulse 13 and a portion (equal to one half in this simplified example) of
pulse 14. Similarly, the second input of black box 10 is represented by
waveform 16, which includes a portion (equal to one) of pulse 14 and a
portion (equal to one half) of pulse 13. It follows that black box 10 must
subtract a portion of pulse 14 from the portion of pulse 13 in the upper
channel to arrive at a pure source signal S.sub.1. Also, black box 10 must
subtract a portion of pulse 13 from the portion of pulse 14 in the lower
channel to arrive at a pure source signal S.sub.2. If the portions of
pulse 14 and pulse 13 subtracted from the portions of pulse 13 and pulse
14, respectively, are exactly correct pure source signals at the outputs
of black box 10 will be achieved. However, the problem is to find a
criterion that determines when the outputs are separated.
Recently, Bell and Sejnowski described that a possible criterion for blind
source separation is mutual information (A. J. Bell and T. J. Sejnowski,
Blind Separation and Blind Deconvolution: An information Theoretic
Approach", Proc. ICASSP, pp. 3415-3418, Detroit Mich., May 9-12, 1995 and
A. J. Bell and T. J. Sejnowski, An Information-maximization Approach to
Blind Separation and Blind Deconvolution", Technical Report INC-9501,
USCD, Institute for Neural Computation, February 1995). A simplified
block/schematic diagram of the Bell and Sejnowski blind source separation
system is illustrated in FIG. 3.
Referring specifically to FIG. 3, two sensors 19 and 20 receive two mixed
signals, represented as x.sub.1 and x.sub.2, from unknown sources. Mixed
signal x.sub.1 is multiplied by a weight w.sub.11 and applied to a summing
circuit 21. Mixed signal x.sub.1 is also multiplied by another weight
w.sub.12 and applied to a summing circuit 22. Similarly, mixed signal
x.sub.2 is multiplied by a weight w.sub.22 and applied to a summing
circuit 22. Mixed signal x.sub.1 is also multiplied by another weight
w.sub.21 and applied to summing circuit 21. Bias weights w.sub.01 and
w.sub.02 are also applied to summing circuits 21 and 22, respectively, to
adjust the mean values of the sums. Output signals from summing circuits
21 and 22 are then applied to output circuits 23 and 24, respectively,
which then pass them through a nonlinear function and supply separated
source signals y.sub.1 and y.sub.2.
Bell and Sejnowski proposed to learn the various weights (W) by minimizing
the mutual information between components of vector y(t)=g(u(t)), where u
is the vector or output signals from summing circuits 21 and 22, and g is
a nonlinear function approximating the cumulative density function of the
sources. Bell and Sejnowski showed that for positively kurtotic signals
(like speech) minimizing the mutual information between components of y is
equal to maximizing the entropy of y, which can be written as
H(y)=-E›ln(f.sub.y (y))!, where f.sub.y (y) denotes the probability
density function of y. Denoting the determinant of the Jacobian of the
whole net by .vertline.J.vertline., f.sub.y (y) can be written as f.sub.X
(x)/.vertline.J.vertline. (Jacobian is a matrix with entries of
.differential.x.sub.i /.differential.y.sub.j). Now, maximizing the entropy
of the output signals leads to maximizing E›ln.vertline.J.vertline.!,
which in turn can be developed into the following stochastic gradient
ascent rule using instances of x(t) and y(t) instead of using the
expectation:
.DELTA.W.varies.(1.times.2y(t)).times.(t).sup.T +›W.sup.T !.sup.-1,
.DELTA.w.sub.o .varies.1-2y(t).
To derive the above adaptation rule, g(y)=1/(1+e.sup.-y) was used as the
nonlinear function to approximate the cumulative density function.
There are several obstacles to applying this and Jutten-Herault algorithms
to real world situations. These include the effect of noise to successful
learning of the separating solution, possibly an unknown number of sources
(especially noise sources), and the assumption that the source signals are
stationary. Most notable is the assumption of the simultaneous mixing of
the sources. In any real-world recording, where the propagation of the
signals through the medium is not instantaneous (like sound through air or
water), there will be phase differences between the sources in the
mixtures. This is illustrated in the several simplified waveforms of FIG.
4. Sources 13 and 14 (previously described in conjunction with FIG. 2) are
mixed to produce first and second mixed signals 25 and 25. However, in
this instance the portion of signal 14 mixed with signal 13 is delayed by
some unknown amount. Similarly, the portion of signal 13 mixed with signal
14 is delayed by some unknown amount. As can be seen from waveforms 27 and
28, separated sources can not be achieved as a linear combination of the
mixtures. Current blind source separation systems can not tolerate these
delays. A related problem is the multipath arrival of the signals. In
general, each sensor is not observing just a clean copy of the source
signal, but a sum of multipath copies distorted by the environment, for
example, by the impulse response of a room.
Referring now to FIG. 5, a simplified block/schematic diagram of a blind
source separation system 30 in accordance with the present invention is
illustrated. To understand the operation of system 30, assume for
simplicity two sources y.sub.1 and y.sub.2 and their two mixtures x.sub.1
and x.sub.2. It will of course be understood that the following
description can be generalized to any number of sources and their
mixtures. Channel one mixed signal x.sub.1 is multiplied by a channel one
adaptive weight w.sub.1 to produce a channel one product signal which is
applied to a summation circuit 32. Also, channel two mixed signal x.sub.2
is multiplied by a channel two adaptive weight w.sub.2 to produce a
channel two product signal which is applied to a summation circuit 33. As
explained previously, bias weights w.sub.01 and w.sub.02 are also applied
to summation circuits 32 and 33, respectively, although in some special
instances these signals may be ignored or built into the other components.
The output signals of summation circuits 32 and 33 are approximation
signals u.sub.1 and u.sub.2, respectively, which are utilized to generate
filtered feedback signals that are then applied to summation circuits 32
and 33, respectively. In this specific embodiment, the channel one
filtered feedback signal is generated by delaying channel two
approximation signal u.sub.2 by a delay d.sub.12 and multiplying the
delayed signal by a weight w.sub.12. Similarly, the channel two filtered
feedback signal is generated by delaying channel one approximation signal
u.sub.1 by a delay d.sub.21 and multiplying the delayed signal by a weight
w.sub.21. Approximation signals u.sub.1 and u.sub.2 are also applied to
output circuits 35 and 36, which pass them through a sigmoid function, to
produce channel one and channel two output signals y.sub.1 and y.sub.2.
The output signals are utilized in an adjustment circuit 37 to adjust
channel one adaptive weight w.sub.1, the channel one filtered feedback
signal, channel two adaptive weight w.sub.2, and the channel one and two
feedback weights and the delays to maximize entropy of the channel one and
channel two output signals y.sub.1 and y.sub.2 and, thereby, recover first
source signal as the output signal y.sub.1 and second source signal as the
output signal y.sub.2.
System 30 thus computes the following, where u.sub.i are the outputs before
the nonlinearities, and w.sub.0i are the bias weights:
u.sub.1 (t)=w.sub.1 x.sub.1 (t)+w.sub.12 u.sub.2 (t-d.sub.12)+w.sub.01
u.sub.2 (t)=w.sub.2 x.sub.2 (t)+w.sub.21 u.sub.1 (t-d.sub.21)+w.sub.02
y.sub.1 (t)=g(u.sub.1 (t))
y.sub.2 (t)=g(u.sub.2 (t))
where g is the logistic function g(u)=1/(1+e.sup.-u). g is also referred to
as a sigmoid function.
The mutual information between outputs y.sub.1 and y.sub.2 is minimized by
maximizing the entropy at the outputs, which is equal to maximizing
E›ln.vertline.J.vertline.!. The determinant of the Jacobian of the network
is now
##EQU1##
ln.vertline.J.vertline.=ln(y'.sub.1)+ln(y'.sub.2)+ln(D) (1)
where D=
##EQU2##
The adaptation rule for each parameter of the network can now be derived
by computing the gradient of ln.vertline.J.vertline. with respect to that
parameter. For w.sub.1 the following is obtained
##EQU3##
For the logistic function .differential.y'.sub.i /.differential.y.sub.i
=1-2y.sub.i. Thus, for the partial derivatives:
##EQU4##
The adaptation rule for w.sub.1 becomes the following from equation (2)
above (similarly for w.sub.2 ):
.DELTA.w.sub.1 .varies.(1-2y.sub.1)x.sub.1 +1/w.sub.1,
.DELTA.w.sub.2 .varies.(1-2y.sub.2)x.sub.2 +1/w.sub.2, (4)
The bias adaptation is .DELTA.w.sub.0i .varies.1-2y.sub.i. The role of
these weights and biases is to scale and to shift the data so as to
maximize the information passed through the sigmoid function g.
For w.sub.12 the partial derivatives are as follows:
##EQU5##
Thus the adaptation for w.sub.12 is the following (similarly for w.sub.21)
:
.DELTA.w.sub.12 .varies.(1-2y.sub.1)u.sub.2 (t-d.sub.12),
.DELTA.w.sub.21 .varies.(1-2y.sub.2)u.sub.1 (t-d.sub.21), (6)
These rules decorrelate the present squashed output y.sub.i from the other
source u.sub.j at delay d.sub.ij, which is equivalent to separation. Note
that in equations (5) and (6) the time indices of u.sub.1 and u.sub.2 are
given in parentheses, whereas for all other variables the time is
implicitly assumed to be t. All the partial derivatives starting from
equation (1) are also taken at time instance t, which is why it is not
necessary to expand the cross partial derivatives recursively backwards
into time.
The partial derivatives for the delay d.sub.12 are:
##EQU6##
which takes advantage of the fact that
##EQU7##
The adaptation rules for the delays become the following (again, only the
time indices for u.sub.i are explicitly written):
.DELTA.d.sub.12 .varies.-(1-2y.sub.1)w.sub.12 u.sub.2 (t-d.sub.12),
.DELTA.d.sub.21 .varies.-(1-2y.sub.2)w.sub.21 u.sub.1 (t-d.sub.21),(8)
It is remarkable that every adaptation rule is local, that is, to adapt a
weight or a delay in a branch of the network, only the data coming in or
going out of the branch are needed. Generalization to N mixtures can thus
be done simply by substituting other indices for 1 and 2 in equations (6)
and (8) and summing such terms.
As can be seen by referring to FIG. 6, a simplified block/schematic diagram
of another blind source separation system 40 in accordance with the
present invention is illustrated. System 40 receives mixed signals x.sub.1
and x.sub.2 at inputs to adaptive filters 42 and 43, respectively. Within
these filters, channel one mixed signal x.sub.1 is essentially multiplied
by a series of different weights associated with a series of different
delays and a summation is done in adaptive filter 42 to produce a channel
one product signal that is applied to a channel one summation circuit 43.
Also, channel two mixed signal x.sub.2 is essentially multiplied by a
series of different weights associated with a series of different delays
and a summation is done in adaptive filter 43 to produce a channel one
product signal that is applied to a channel one summation circuit 44.
Further, as explained previously, bias weights w.sub.01 and w.sub.02 are
also applied to summation circuits 44 and 45, respectively, although in
some special instances these signals may be ignored or built into the
other components.
The output signals of summation circuits 44 and 45 are approximation
signals u.sub.1 and u.sub.2, respectively, which are utilized to generate
filtered feedback signals that are then applied to summation circuits 45
and 44, respectively. In this specific embodiment, the channel one
filtered feedback signal is generated by passing channel two approximation
signal u.sub.2 through another adaptive filter 46 where u.sub.2 is
essentially multiplied by a series of different weights associated with a
series of different delays and a summation is done in adaptive filter 46
to produce a channel one filtered feedback signal that is applied to
channel one summation circuit 44. Also, the channel two filtered feedback
signal is generated by passing channel one approximation signal u.sub.1
through another adaptive filter 47 where u.sub.1 is essentially multiplied
by a series of different weights associated with a series of different
delays and a summation is done in adaptive filter 47 to produce a channel
two filtered feedback signal that is applied to channel two summation
circuit 45. Approximation signals u.sub.1 and u.sub.2 are also applied to
output circuits 48 and 49 which pass u.sub.1 and u.sub.2 through
nonlinearities to produce output signals y.sub.1 and y.sub.2. The output
signals are utilized in an adjustment circuit 50 to adjust channel one and
channel two adaptive filters 42, 43, 46 and 47, to maximize entropy of the
channel one and channel two output signals y.sub.1 and y.sub.2 and,
thereby, recover the first source signal as the output signal y.sub.1 and
the second source signal as the output signal y.sub.2
While adaptive delays suffice for some applications, for most audio signals
they are not enough. The acoustic environment (e.g. a room) imposes a
different impulse response between each source and microphone pair.
Moreover, the microphones may have different characteristics, or at least
their frequency response may differ for sources in different directions.
To overcome these disadvantages, blind source separation system 40 of FIG.
6 is utilized, the operation of which is explained by modeling it as the
convolved mixtures set forth below. For simplicity, two sources in the
z-transform domain are shown, but it will be understood that this can
again be generalized to any number of sources.
X.sub.1 (z)=A.sub.11 (z)S.sub.1 (z)+A.sub.12 (z)S.sub.2 (z),
X.sub.2 (z)=A.sub.22 (z)S.sub.2 (z)+A.sub.21 (z)S.sub.1 (z),(9)
where A.sub.ij are the z-transforms of any kind of filters and S.sub.1 and
S.sub.2 are the sources. Solving for the sources S in terms of the mixture
signals X.sub.1 and X.sub.2 :
S.sub.1 (z)=(A.sub.22 (z)X.sub.1 (z)-A.sub.21 (z)X.sub.2 (z))/G(z),
S.sub.2 (z)=(A.sub.11 (z)X.sub.2 (z)-A.sub.12 (z)X.sub.1 (z))/G(z).(10)
By G(z) is denoted as A.sub.12 (z)A.sub.21 (z)-A.sub.11 (z)A.sub.22 (z).
This gives a feedforward architecture for separation. However, the simple
feedforward architecture by itself does not result in the solution of
equation (10). In addition to separation, it has the side-effect of
whitening the outputs. The whitening effect is avoided by using blind
source separation system 40 of FIG. 6.
In system 40, outputs before nonlinearities (approximation signals) are:
U.sub.1 (z)=W.sub.11 (z)X.sub.1 (z)+W.sub.12 (z)U.sub.2 (z),
U.sub.2 (z)=W.sub.22 (z)X.sub.2 (z)+W.sub.21 (z)U.sub.1 (z),(11)
Using equations (9) and (11) and designating adaptive filter 42 as
W.sub.11, adaptive filter 43 as W.sub.22, adaptive filter 46 as W.sub.12,
and adaptive filter 47 as W.sub.21, a solution for perfect separation and
deconvolution becomes:
W.sub.11 (z)=A.sub.11 (z).sup.-1, W.sub.12 (z)=-A.sub.12 (z)A.sub.11
(z).sup.-1,
W.sub.22 (z)=A.sub.22 (z).sup.-1, W.sub.21 (z)=-A.sub.21 (z)A.sub.22
(z).sup.-1,
By forcing W.sub.11 =W.sub.22 =1, the entropy at the output can be
maximized without whitening the sources. In this case W.sub.11 and
W.sub.22 have the following solutions:
W.sub.11 (z)=1, W.sub.12 (z)=-A.sub.12 (z)A.sub.22 (z).sup.-1,
W.sub.22 (z)=1, W.sub.21 (z)=-A.sub.21 (z)A.sub.11 (z).sup.-1.
The adaptation equations for blind source separation system 40 of FIG. 6
are derived below using, for simplicity, only two sources. In the
following equations, w.sub.iki denotes the weight associated with delay k
from mixture i to approximation signal i, and W.sub.ikj denotes the weight
associated with delay k from approximation signal j to approximation
signal i. Assuming FIR filters for W.sub.ij, in the time domain the
network carries out the following:
##EQU8##
For the Jacobian,
##EQU9##
There will now be three different cases: zero delay weights in direct
filters, other weights in direct filters, and weights in feedback
cross-filters. Following the steps in previous derivations for all these
cases:
.DELTA.w.sub.i0i .varies.(1-2y.sub.i)x.sub.i +1/w.sub.i0i,
.DELTA.w.sub.iki .varies.(1-2y.sub.i)x.sub.i (t-k),
.DELTA.w.sub.ikj .varies.(1-2y.sub.i)u.sub.j (t-k).
The zero delay weights again scale the data to maximize the information
passed through the sigmoid, other weights in the direct branches of the
network decorrelate each output from the corresponding input mixture
(whitening), and the weights of the feedback branches decorrelate each
output y.sub.i from all of the other sources (approximation signals
u.sub.j) at every time instant within the scope of the filters t-k
(separation).
While this embodiment is disclosed using FIR filters, it will be understood
by those skilled in the art that recursive filters (generally known as IIR
filters) could be utilized instead and the adaption rules can be derived
in the same way (as explained above).
Accordingly, a new and novel blind source separation system is disclosed
that operates under real world conditions. The new and improved blind
source separation system has the capabilities of dealing with sources that
have been delayed with respect to each other and is capable of separating
sources which include a sum of multipath copies of the sources distorted
by the environment, which is not possible in prior art systems.
While I have shown and described specific embodiments of the present
invention, further modifications and improvements will occur to those
skilled in the art. I desire it to be understood, therefore, that this
invention is not limited to the particular forms shown and I intend in the
appended claims to cover all modifications that do not depart from the
spirit and scope of this invention.
* * * * *
|
|
|
|
|