0% found this document useful (0 votes)
13 views11 pages

Ijcsm070402 Ghasemalipour

Uploaded by

s.ghasemalipour
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views11 pages

Ijcsm070402 Ghasemalipour

Uploaded by

s.ghasemalipour
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Int. J. Computing Science and Mathematics, Vol. 7, No.

4, 2016 301

Random fuzzy numbers generation with cubic Hermit


membership function and its application in simulation

Behrouz Fathi-Vajargah and


Sara Ghasemalipour*
Department of Statistics,
Faculty of Mathematical Sciences,
University of Guilan, Iran
Email: fathi@guilan.ac.ir
Email: s.ghasemalipour@gmail.com
*Corresponding author

Abstract: Fuzzy numbers play a very important role in linguistic decision


making and some other fuzzy application systems. Several strategies have been
proposed for generating fuzzy number. In this paper, we introduce a new
approach for generating fuzzy numbers based on cubic Hermit curves. Fuzzy
numbers with polynomial membership function are not often in (0, 1) and we
use from cubic Hermit curves for generating fuzzy numbers. Fuzzy numbers
with cubic Hermit membership function are always within the (0, 1). Finally,
we apply these numbers in simulation.

Keywords: generating of fuzzy numbers; cubic Hermit curves; membership


function; simulation.

Reference to this paper should be made as follows: Fathi-Vajargah, B. and


Ghasemalipour, S. (2016) ‘Random fuzzy numbers generation with cubic
Hermit membership function and its application in simulation’, Int. J.
Computing Science and Mathematics, Vol. 7, No. 4, pp.301–311.

Biographical notes: Behrouz Fathi-Vajargah is an Associate Professor at the


University of Guilan, Iran. He received his PhD in Statistics and Random
Algorithms from the University of Reading London, England. His current
research focuses on Monte Carlo simulation and fuzzy theory.

Sara Ghasemalipour received his PhD at the University of Guilan, Iran. She
received her PhD in Applied Mathematics – Random Process from the
University of Guilan, Iran. Her current research focuses on fuzzy statistics and
fuzzy simulation.

1 Introduction

Fuzzy set theory proposed by Zadeh (1965) allows us to process and transform imprecise
information effectively and flexibly. Fuzzy numbers play a significant role among all
fuzzy sets since the predominant representation of information is numeric. Triangular
fuzzy numbers have been extensively applied in fuzzy control and fuzzy decision-making
(Buckley, 1985; Buckley and Chanas, 1989; Gao et al., 2009; Kandel, 1986). However,

Copyright © 2016 Inderscience Enterprises Ltd.


302 B. Fathi-Vajargah and S. Ghasemalipour

some operations of fuzzy numbers can be complicated to perform (Dubois and Prade,
1978; Goetschel and Voxman, 1986). Park and Lee (1994) used the maximum
uncertainty possibility distributions (MUPD) for each individual sensor measurements
are linearly combined to produce the final fuzzy number representation. Makrehchi et al.
(2003) proposed a paradigm of applying an information theoretic model to generate fuzzy
membership functions.
In this paper, we introduce a new approach which is easy to handle. We are going to
generate fuzzy numbers with cubic Hermit curves for left and right membership function.
The rest of this paper is organised as follows: Section 2 contains the basic definitions and
notations of fuzzy number and membership functions. In Section 3, we state the method
of generating fuzzy numbers with polynomial membership function like quadratic,
cubic,... In Section 4, we introduce a new approach for generating of fuzzy numbers by
cubic Hermit curves. In Section 5, we generate the fuzzy numbers by quasi-random
sequences like Halton and Faure and compare them. An application of fuzzy numbers
with cubic Hermit membership function is in Section 6.

2 Definitions and preliminaries

Some basic definitions of fuzzy numbers and membership function are stated here.
Definition 1: If Ω is some set, then a fuzzy subset A of Ω is defined by its membership
function, written by μ A ( x), which produces values in [0, 1] for all x in Ω. So, μ A ( x) is a
function mapping Ω into [0, 1]. When μ A ( x) is always equal to one or zero, we obtain a
crisp (non-fuzzy) subset of Ω.
Definition 2: Alpha-cuts are slices through a fuzzy set producing regular (non-fuzzy) sets.
If A is a fuzzy subset of some set Ω, then an α-cut of A, written A[α ] for all α, 0 < α
≤ 1 is defined as
A[α ] = { x ∈ Ω | μ A ( x) ≥ α } . (1)

A is called convex fuzzy set μ A [ λx + (1 − λ) y ] ≥ min{ A( x), A( y )} for λ ∈ [0, 1].

Definition 3: Let A be a fuzzy set with membership function μ A ( x) and A[α ] =


{x | μ A ( x) ≥ α }. Then

μ A ( x) = sup α1Aα ( x), (2)


α ∈[0,1]

where
⎧1, x ∈ Aα
1Aα ( x) = ⎨ (3)
⎩0, otherwise.
Random fuzzy numbers generation with cubic Hermit membership function 303

A general definition of fuzzy number may be found in Buckley and Eslami (2002) and
Klir and Yuan (1995), however our fuzzy numbers will be almost always triangular or
trapezoidal shaped.

Definition 4: A fuzzy number is a fuzzy set like A : R → [0, 1] which satisfies


1 A is uppersemi-continuous
2 A(x) = 0 outside some interval [a, d]
3 there are real numbers a, d such that a ≤ b ≤ c ≤ d
a A(x) is monotonic increasing on [a, b]
b A(x) is monotonic decreasing on [c, d],
c A(x) = 1, where b ≤ x ≤ c.
Then membership function A can be expressed as

⎧ AL ( x), a ≤ x ≤ b,
⎪1, b ≤ x ≤ c,

A( x ) = ⎨ (4)
⎪ AR ( x), c ≤ x ≤ d,
⎪⎩0, otherwise,

where AL : [a, b] → [0, 1] and AU : [c, d] → [0, 1] are left and right membership
functions of fuzzy number A.
Definition 5: A triangular fuzzy number A is defined by three numbers a < b < c where
the base of the triangle is the interval [a, c] and its vertex is at x = b.
In other words, a triangular fuzzy number is a fuzzy number that having membership
function
⎧0, x ≤ a1 , a3 ≤ x,
⎪ x−a
μ A ( x) = ⎪⎪ 1
, a1 ≤ x ≤ a2 , (5)
⎨ 2 1
a − a
⎪ a −x
⎪ 3 , a2 ≤ x ≤ a3 .
⎪⎩ a3 − a2

The above triangular fuzzy number is denoted by A = (a1 / a2 / a3).


The addition and scalar multiplication of fuzzy numbers are defined by the extension
principle and can be equivalently represented in Zadeh (1965), Dubois and Prade (1980)
and Zimmermann (1991) as follows.
304 B. Fathi-Vajargah and S. Ghasemalipour

3 Random fuzzy numbers with polynomial membership function

Membership functions are the building blocks of fuzzy set theory, i.e., fuzziness in a
fuzzy set is determined by its MF. Accordingly, the shapes of MFs are important for a
particular problem since they effect on a fuzzy inference system. They may have different
shapes like triangular, trapezoidal, Gaussian, etc. The only condition a MF must really
satisfy is that it must vary between 0 and 1. It is not easy to find common features among
these different approaches, although we find that:
1 all membership functions are continuous
2 all membership functions map an interval [a, b] to [0, 1]
3 the membership functions are
a either monotonically increasing
b monotonically decreasing
c could be divided into a monotonically increasing or decreasing part.
Here, we consider some types of polynomial membership function.

3.1 Linear membership function


We want to generate a fuzzy number that its membership function be linear function as
y = ax + b. First, we generate the three numbers Z1, Z2, Z3 in (0, 1) and sort them in form
z1, z2, z3. We set n1 = z1, n2 = z2; n3 = z3. Now, the random fuzzy number is N = (n1 / n2 /
n3). The membership function of the left and right of fuzzy number are obtained from the
solving the following equations, respectively
0 = an1 + b, 1 = an2 + b, 1 = an2 + b, 0 = an3 + b. (6)

Figure 1 shows some random fuzzy numbers with linear membership function. Also, we
generated fuzzy numbers by this method and the results are shown in Table 1.

Figure 1 The generated fuzzy number with linear membership function (see online version
for colours)
Random fuzzy numbers generation with cubic Hermit membership function 305

Table 1 Generated fuzzy numbers with linear membership function

Generated fuzzy numbers Generated fuzzy numbers


(0.1673/0.7689/0.8620) (0.5144/0.8843/0.9899)
(0.1548/0.1999/0.5880) (0.4070/0.7487/0.8256)
(0.3185/0.5341/0.7900) (0.0900/0.1117/0.1363)
(0.1897/0.4952/0.6787) (0.0550/0.1476/0.4950)
(0.5606/0.8507/0.9296) (0.5828/0.6967/0.8154)

3.2 Quadratic membership function


Quadratic function is a function as y = ax2 + bx + c. For generating a fuzzy number with
quadratic membership function, we first generate seven random numbers in (0, 1) and
choose two of them for y1 and y2. We sort the remaining as z1, z2,…,z5 and set n1 = z1,
n11 = z2, n2 = z3, n21 = z4, n3 = z5. The random fuzzy number is N = (n1 / n2 / n3). We obtain
the left membership function with three points (n1, 0), (n11, y1), (n2, 1). Also, we obtain
the right membership function with three points (n2, 1), (n21, y2), (n3, 0). The left and right
membership functions are obtained from the solving the following equations, respectively

⎧0 = an12 + bn1 + c, ⎧1 = an22 + bn2 + c,


⎪ ⎪
⎨ y1 = an11
2
+ bn11 + c, ⎨ y2 = an21
2
+ bn21 + c, (7)
⎪1 = an 2 + bn + c. ⎪0 = an 2 + bn + c.
⎩ 2 2 ⎩ 3 3

Figure 2 is shown some random fuzzy numbers with quadratic membership function. We
generated ten random fuzzy numbers with quadratic membership function and the results
are in Table 2.

Figure 2 The generated fuzzy number with quadratic membership function (see online version
for colours)
306 B. Fathi-Vajargah and S. Ghasemalipour

Table 2 Generated fuzzy numbers with quadratic membership function

Generated fuzzy numbers Generated fuzzy numbers


(0.1248/0.7498/0.8352) (0.3304/0.4139/0.9791)
(0.0319/0.7391/0.9727) (0.0476/0.3488/0.6604)
(0.1386/0.7311/0.8562) (0.0590/0.5197/0.8900)
(0.2284/0.2818/0.6520) (0.4662/0.7833/0.9786)
(0.0354/0.5138/0.5999) (0.0522/0.5511/0.8722)

3.3 Cubic membership function


Cubic function is a function as y = ax3 + bx2 + cx + d. For generating a fuzzy number with
cubic membership function, we first generate eleven random numbers in (0, 1) and
choose four of them for y1 < y2 and y3 > y4. We sort the remaining as z1, z2,…,z7 and set
n1 = z1, n11 = z2, n12 = z3, n2 = z4, n21 = z5, n22 = z6, n3 = z7. The random fuzzy number is
N = (n1 / n2 / n3). We obtain the left membership function with four points (n1, 0),
(n11, y1), (n12, y2), (n2, 1). Also, we obtain the right membership function with four points
(n2, 1), (n21, y2), (n22, y3), (n3, 0). The left and right membership functions are obtained
from the solving the following equations, respectively

⎧0 = an13 + bn12 + cn1 + d , ⎧1 = an23 + bn22 + cn2 + d ,


⎪ ⎪
⎪ y1 = an113
+ bn11
2
+ cn11 + d , ⎪ y3 = an213
+ bn212
+ cn21 + d ,
⎨ ⎨ (8)
⎪ y2 = an12 + bn12 + cn12 + d , ⎪ y4 = an22 + bn22 + cn22 + d ,
3 2 3 2

⎪⎩1 = an23 + bn22 + cn2 + d . ⎪⎩0 = an33 + bn32 + cn3 + d .

Figure 3 is shown some random fuzzy numbers with cubic membership function. We
generated ten random fuzzy numbers with cubic membership function and the results are
in Table 3. As is clear, fuzzy numbers that are generated with quadratic and cubic
membership function, often their membership function values are not in (0, 1). In next
section, we propose a method for generating fuzzy numbers that their membership
function values always are in (0, 1).

Figure 3 The generated fuzzy number with cubic membership function (see online version
for colours)
Random fuzzy numbers generation with cubic Hermit membership function 307

Table 3 Generated fuzzy numbers with cubic membership function

Generated fuzzy numbers Generated fuzzy numbers


(0.1114/0.7290/0.7702) (0.0047/0.1479/0.4108)
(0.0269/0.2497/0.6239) (0.0524/0.2898/0.6711)
(0.1577/0.4352/0.6005) (0.1524/0.4064/0.6042)
(0.0331/0.4269/0.6848) (0.2782/0.5237/0.6319)
(0.0326/0.3832/0.5223) (0.0039/0.2449/0.6409)

4 Random fuzzy numbers with cubic Hermit membership function

In this paper, we introduce a new method for generating the fuzzy numbers. We used
cubic Hermit curves for left and right membership functions. Fuzzy numbers that have
quadratic or cubic membership function, sometimes their membership functions are out
of (0, 1). But, in our method cubic Hermit membership functions always are in (0, 1).
Some researchers investigated about fuzzy numbers. Buckley (2006) used from Bezier
curves to generate fuzzy numbers that their membership function values are always in
(0, 1). Now, we would like to apply Hermit curves to generate fuzzy numbers. Cubic
Hermite curve is also known as parametric cubic curve, and cubic spline. This curve is
used to interpolate given data points that result in a synthetic curve, but not a free form,
unlike the Bezier and B-spline curves. The most commonly used cubic spline is a
three-dimensional planar curve. The curve is defined by two data points that lie at the
beginning and at the end of the curve, along with the slopes at these points. It is
represented by a cubic polynomial. When two end points and their slopes define a curve,
the curve is called a Hermite cubic curve. On the unit interval (0, 1), given a starting
point p0 at t = 0 and an ending point p1 at t = 1 with starting tangent m0 at t = 0 and
ending tangent m1 at t = 1, the polynomial can be defined by

P (t ) = ( 2t 3 − 3t 2 + 1) p0 + ( t 3 − 2t 2 + t ) m0 + ( −2t 3 + 3t 2 ) p1 + ( t 3 − t 2 ) m1 , (9)

where t ∈ [0, 1]. On arbitrary interval (xk, xk+1) is done by


P (t ) = h00 (t ) pk + h10 (t ) ( xk +1 − xk ) mk + h01 (t ) pk +1 + h11 (t ) ( xk +1 − xk ) mk +1 , (10)

and
h00 (t ) = 2t 3 − 3t 2 + 1, h10 (t ) = t 3 − 2t 2 + t , h01 (t ) = −2t 3 + 3t 2 , h11 (t ) = t 3 − t 2 ,

( x − xk )
with t = where h00, h10, h01, h11 are Hermite basis functions. We can
( xk +1 − xk )
decompose the Hermite basis functions into Bernstein polynomials of order 3:
3!
Bk (t ) = t k (1 − t )3− k . (11)
(n − k )!k !

We can write cubic Hermite interpolation in terms of cubic Bzier curves with respect to
the four values p0, p0 + m0 / 3, p1 – m1 / 3, p1 and do Hermite interpolation using the de
Casteljau algorithm. Figure 4 is shown some fuzzy numbers with cubic Hermit
308 B. Fathi-Vajargah and S. Ghasemalipour

membership function. We generated ten random fuzzy numbers with cubic Hermit
membership function and the results are in Table 4.

Figure 4 The generated fuzzy numbers with cubic Hermit membership function (see online
version for colours)

Table 4 Generated fuzzy numbers with cubic Hermit membership function

Generated fuzzy numbers Generated fuzzy numbers


(0.1280/0.5672/0.8456) (0.3718/0.8109/1.3355)
(0.2462/0.6179/0.6254) (0.1562/0.3171/0.4261)
(0.1902/2.1860/2.2135) (0.0927/0.4018/0.5328)
(0.0757/0.8866/0.9039) (0.1627/0.5313/1.0436)
(0.3545/0.9925/1.6199) (0.3007/0.5344/0.8635)

5 Generating of random fuzzy numbers with quasi-random generators

Quasi-random numbers are used for improving the results in applications. Sometimes, the
rand function in Matlab does not follow from uniform distribution in high dimensions.
So, quasi-random numbers like Halton, Sobol,... are applied in these cases. In this paper,
we compare these quasi-random numbers with rand function for generating of fuzzy
numbers and present the results in this section.
Quasi-random numbers are constructed to minimise a measure of their deviation from
uniformity called discrepancy. A quasi-random sequence is normally generated in the
unit s-dimensional hypercube and attempts to fill the hypercube as uniformly as possible.
The original construction of quasi-random sequences was related to the van der Corput
sequence, which is a one-dimension quasi-random sequence based on digital inversion.
Following that, Hickernell (1996) generalised the van der Corput sequence to s
dimensions. In Fathi and Eskandari (2013) was developed the Halton sequence of
generating quasi-random numbers to an optimal sequence which has the inversive
property. Tezuka (1993) formulated the generalised Faure sequence, based on Halton
sequence but using polynomials for reordering. Fathi and Radmoghaddam (2012)
Random fuzzy numbers generation with cubic Hermit membership function 309

represent two methods that mix Faure sequence with the best scrambling Faure sequence
and called them MFaure and M2Faure sequences. Now, we want to generate fuzzy
numbers with polynomial and cubic Hermit membership function by Halton and Faure
sequences and Rand in Matlab. We obtained the number of fuzzy numbers that their
membership function values outside of (0, 1). The results are shown in Table 5, Table 6
and Table 7. In Table 5 and Table 6, it is clear that lower fuzzy numbers are outside the
(0, 1) by Halton sequence and in the next step, the Fuare sequence works best, more of
all, the fuzzy numbers that generated with Rand function in matlab,their membership
function outside of (0, 1). Table 7 shows that the membership function of all of fuzzy
numbers with cubic Hermit membership function generated by Halton and Faure
sequences and Rand function in Matlab are within the (0, 1).
Table 5 Number of fuzzy numbers with quadratic membership function values outside of
(0, 1)

n Rand Halton Faure


100 94 83 88
500 440 431 429
1,000 875 864 854
10,000 8,755 8,686 8,702

Table 6 Number of fuzzy numbers with cubic membership function values outside of (0, 1)

n Rand Halton Faure


100 91 84 90
500 455 440 445
1,000 902 865 889
10,000 8,969 8,761 8,859

Table 7 Number of fuzzy numbers with cubic Hermit membership function values outside of
(0, 1)

N Rand Halton Faure


100 0 0 0
500 0 0 0
1,000 0 0 0
10,000 0 0 0

6 Application

Fuzzy numbers are used in many applications. Whatever fuzzy numbers be closer to its
properties, then we can obtain the better results and we get closer to the real numbers. In
this section, we consider a numerical example to show using stated method in this paper,
we obtain a real solution faster than pervious fuzzy numbers.
Let us now consider a big market with k server. Let the interarrival times of costumer
are fuzzy variables with exponential distribution with λ = (1 / 2 / 3) in minutes and
service times are fuzzy variables with exponential distribution with μ = (3 / 4 / 5) in
310 B. Fathi-Vajargah and S. Ghasemalipour

minutes for k-server. We want to calculate the average chance of ‘all of k-server are busy
at time t’. We should estimate the E[ μλ ] that we used the simulation method in Liu and
Liu (2003). The simulation results are shown in Table 8. Table 8 shows the average
chance of ‘all of k-servers are busy at time t’ for the number of different servers. Here,
we use polynomial and cubic Hermit membership function in generating fuzzy numbers
in simulation method. It is clear that when we use from fuzzy numbers with cubic Hermit
membership function, fewer iterations are needed to achieve results, that is we obtain a
real solution after 200 times iterations in a shorter time. While, if we apply polynomial
membership function, we obtain a real solution after 30,000 times iterations in a more
time.
Table 8 Number of iterations in polynomial and cubic Hermit membership function

Polynomial
n
100 1,000 10,000 30,000
Real solution 0.0318 0.0398 0.0411 0.042
Time(s) 2.55 2.36 15.27 102.45
Cubic Hermit
N
50 100 150 200
Real solution 0.0399 0.0408 0.0418 0.042
Time(s) 2.066 2.934 1.484 1.3873

7 Conclusions

Here, we proposed a method for generating of fuzzy numbers that their right and left
membership function have been generate by cubic Hermit curves. We used this curve
because of the fuzzy numbers that generate by cubic Hermit curves, their membership
function are always within (0, 1), while the polynomial membership function values of
fuzzy numbers sometimes be less than zero or more than one. Also, we generated fuzzy
numbers with quasi-random sequences like Halton, Faure. Finally, we applied this
method in simulation and showed that using these numbers, we can reduce the number of
iterations in simulation. Then, we spend less time causing to answer.

References
Buckley, J.J. (1985) ‘Ranking alternatives using fuzzy numbers’, Fuzzy Sets Syst., Vol. 15, No. 1,
pp.21–31.
Buckley, J.J. (2006) ‘Fuzzy probability and statistics’, Studies in Fuzziness and Soft Computing,
Vol. 196, pp.8–12.
Buckley, J.J. and Chanas, S. (1989) ‘A fast method of ranking alternatives using fuzzy numbers’,
Fuzzy Sets Syst., Vol. 30, No. 3, pp.337–348.
Buckley, J.J. and Eslami, E. (2002) Introduction to Fuzzy Logic and Fuzzy Sets, Physica-Verlag,
Heidelberg, Germany.
Dubois, D. and Prade, H. (1978) ‘Operations on fuzzy numbers’, Int. J. Syst. Sci., Vol. 30,
No. 6, pp.613–626.
Random fuzzy numbers generation with cubic Hermit membership function 311

Dubois, D. and Prade, H. (1980) Fuzzy Sets and System: Theory and Application, Academic Press,
New York.
Fathi, B. and Eskandari, A. (2013) ‘Optimal Halton sequence via inversive scrambling’,
Communications in Statistics – Simulation and Computation, Vol. 42, No. 2, pp.476–484.
Fathi, B. and Radmoghaddam, E. (2012) ‘Optimal Faure sequence via mix Faure with the best
scrambling schemes’, Computer Science and Its Applications, Vol. 2, No. 1, pp.2166–2924.
Gao, S., Zhang, Z. and Cao, C. (2009) ‘Multiplication operation on fuzzy numbers’, Journal of
Software, Vol. 4, No. 4, pp.331–338.
Goetschel, R. and Voxman, W. (1986) ‘Elementary calculus’, Fuzzy Sets Syst., Vol. 18, No. 1,
pp.31–43.
Hickernell, F.J. (1996) ‘Mean square discrepancy of randomized nets’, ACM Transactions on
Modeling and Computer Simulation, Vol. 6, No. 4, pp.274–296.
Kandel, A. (1986) Fuzzy Mathematical Techniques with Applications, Addison-Wesley, New York.
Klir, G.J. and Yuan, B. (1995) Fuzzy Sets and Fuzzy Logic: Theory and Applications, Prentice Hall,
Upper Saddle River, N.J.
Liu, Y.K. and Liu, B.D. (2003) ‘Expected value operator of random fuzzy variable and random
fuzzy expected value models’, International Journal of Uncertainty, Fuzziness and
Knowledge-Based Systems, Vol. 11, No. 2, pp.195–215.
Makrehchi, M., Basir, O. and Kamel, M. (2003) ‘Generation of fuzzy membership function using
information theory measures and genetic algorithm’, Proceeding IFSA’03 Proceedings of the
10th International Fuzzy Systems Association World Congress Conference on Fuzzy sets and
Systems.
Park, S. and Lee, C.S.G. (1994) ‘Generation of fuzzy numbers using maximum uncertainty
possibility distributions’, Fuzzy Systems, IEEE World Congress on Computational
Intelligence.
Tezuka, S. (1993) ‘Polynomial arithmetic analogue of Halton sequences’, ACM Transactions on
Modeling and Computer Simulation, Vol. 3, No. 2, pp.99–107.
Zadeh, L.A. (1965) ‘Fuzzy sets’, Inform. Control, Vol. 8, No. 3, pp.338–353.
Zimmermann, H.J. (1991) Fuzzy Sets Theory and its Application, Kluwer Academic Press,
Dordrecht.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy