Post Optimality Analysis

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 10

Teshager C.

AAUCC,BAIS dpt Page 1 11/22/2022

Some special issues in simplex solutions

Several complications can occur while solving the LPP problems. Such problems include but not
limited to the following.

1. Tie for the pivot column: - the non basic variable that is selected to the solution is determined
by the largest positive c-z value in the case of maximization problems and the largest negative c-
z value in the case of minimization problems. A problem can arise in the case of tie between the
largest identical c-z values, i.e, two or more columns have exactly the same largest positive or
negative c-z values. In such a situation selection for pivot column can be made arbitrarily.
Regardless of which variable column is choose the optimal solution will eventually be found.

2. Degeneracy (tie for the pivot row):- in some cases there may be a tie for the lowest non
negative ratio for choosing the leaving variable. The main drawback to degeneracy is the
increase in the computation, which reduces the efficiency of the simlex method considerably. As
a general rule, the best way to break the tie between the key rows is to select any leaving variable
arbitrarily, if we are unlucky and cycling does occur, we simply go back and select the other.
Some authors have suggested that in case of tie, the row nearest to the top may be selected.
Similarly if tie has occurred between artificial variable and other variable, the artificial variable
should be selected as leaving variable. Although cycling is theoretically possible, it seldom
occurs in practical problems.
Example: solve the following LPP using simplex
Maximize z = 5x + 3x
Subject to:
C x +x ≤2
C 5x + 2x ≤ 10
C3 -2x -8x ≥ -12
x ,x ≥ 0
3. Unbounded problems: - a solution is unbounded if the objective function can be improved with
out limit. A solution is unbounded if there are no positive ratios (a ratio of values in the quantity
column by values in the pivot column). A negative ratio means that increasing that variable
would increase resources. A zero ratio means that increasing the variable would not use any
resources.
Example: - solve the following using simplex.

Maximize 3x + 2x + x
Subject to:
C1 -3x + 2x + 2x = 8
C2 -3x + 4x + x =7
x ,x x ≥ 0
4. Multiple optimal solutions:-if a zero appears as the c-z value of a non-basic variable (i.e., a
variable that is not in the solution) in the final simplex tableau, it can be concluded that an
1
Teshager C. AAUCC,BAIS dpt Page 2 11/22/2022

alternative solution exists. This is irrespective of whether the variable is a decision or slack or
surplus variable. The presence of zero tells us that variable can be brought in to solution without
increasing or decreasing the value of the objective function.
To find the alternate optimal solution(s), the non basic variable with the c-z value of zero, should
be selected as an entering variable and the simplex process continues.
Example: solve the following using simplex.
Maximize z = 60x + 30x
Subject to:
C 4x + 10x ≤ 100
C 2x + x ≤ 22
C3 3x +3x ≥ 39
x ,x ≥ 0
5. An infeasible problem: - this condition occurs when the problem has incompatible constraints.
Final simplex tableau shows optimal solution as all c-z values are +ve or zero in case of
minimization and –ve or zero in case of maximization. However, observing the solution base, we
find that an artificial variable is present as a basic variable. Both of these values are totally
meaningless since the artificial variable has no meaning. Hence, in such a situation, it is said that
LPP has got an infeasible solution.
Example: solve the following using simplex.
Maximize z = 4x + 3x
Subject to:
C x + x ≤ 50
C x + 2x ≥ 80
C3 3x + 2x ≥ 140
x ,x ≥ 0
6. Redundant constraint:- consider the constraints:

3x + 4x ≤ 7
3x + 4x ≥ 15
It is clear that the second constraint is redundant. Normally redundant constraint does not pose any
problem except the computational work is unnecessarily increased.

Post optimality analysis


I - SENSITIVITY ANALYSIS
Sensitivity analysis, or post optimality analysis carries the LP analysis beyond the determination of the
optimal solution. It begins with the final simplex tableau. Its purpose is to explore how changes in any of
the parameters of a problem would affect the solution.
The optimal solution to LPP is based on the certainty assumption. This means that we assume complete
certainty in the data and relationship of problem namely prices are fixed, resources known, time needed
to produce a unit is set. But in real practice conditions are dynamic and changing. It may therefore be
necessary to understand in what way the variation in their values will affect the optimal result. This is
known as ‘sensitivity analysis’ of LP model.
Issues in sensitivity analysis may be:
- How changes in the profit of a product would affect the optimal solution?
- How changes in the available resources affect the optimal solution?
- How changes in the cost of resources (product) affect the solution?
2
Teshager C. AAUCC,BAIS dpt Page 3 11/22/2022

- How changes in contribution rates for each variable affect the solution? etc.
So we see that sensitivity analysis can be used to deal not only with errors in estimating input parameters
to the LP model but with management experiments will possible future changes in the firm that may
affect profits.
There are two approaches to determine how sensitive an optimal solution is to changes. The first method
is simply a "trial and error" approach. This usually involves resolving the entire problem each time one
input data item or parameter is changed. It can take a long time to test a series of possible changes in this
way. Alternatively the current optimum solution (final tableau) may be investigated, making use of the
properties in the simplex criteria. The second method reduces additional computation considerably.
In order to demonstrate sensitivity analysis, let’s use the following LP model:
Let x1= units of model I computer
x2= units of model II computer
Maximize Z= 60x1+ 50x2(profit)
Subject to:
Assembly 4x1+10x2 < 100 Hrs.
Inspection 2x1+ x2 < 22 Hrs
Storage 3x1+ 3x2 < 39 cubic feet
X1, x2 > 0
A. A CHANGE IN THE RHS OF O CONSTRAINT
The first step in determining how a change in the RHS of a constraint would affect the optimal
solution is to examine the shadow prices in the final simplex tableau. Shadow prices are the values in
the Z row in the slack columns.
The final tableau of the above LP problem is:
C 60 50 0 0 0 Quantity
Basis x1 x2 s1 s2 s3
S1 0 0 0 1 6 -16/3 24
X1 60 1 0 0 1 -1/3 9
X2 50 0 1 0 -1 2/3 4 The shadow prices are 0, 10, and 40/3
Z 60 50 0 10 40/3 740 A shadow price is a marginal value. It indicates
C- Z 0 0 0 -10 -40/3 the impact that a one unit change in the amount of
a constraint would have on the objective function.
a shadow price reveals the amount by which the value of the objective would increase if the level of the
constraint was increased by one unit.
For example, if the inspection time increases by 1hr., then the total profit increases by 10br. (10 is the
shadow price for s2 and s2 is slack for inspection).similarly if the storage space increases by 1 cubic feet, then total profits increase by
40/3.on the other hand if inspection time is decreased by 1hr., then total profits decrease by 10br. If
inspection time increases by 2 hrs, then total profits increase by 2*10br. =20br.
What the shadow prices do not tell is the extent to which the level of a constraint can be changed and
still have the same shadow prices. However, at some point, the ability to use additional amount of a
resource will disappear because of the fixed amounts of the constraints. Conversely, a similar situation
can arise when considering the potential impact of a decrease in the RHS of a constraint.
RANGE OF FEASIBILITY/ RHS RANGE:- the range over which we can
change the RHS quantities and still have the same shadow price.

The key to computing the range of feasibility for the constraints lies in the final simplex tableau. For
each constraint, the entries in the associated slack column must be divided in to the values in the
Quantity column.
ASSEMBLY INSPECTION STORAGE
3
Teshager C. AAUCC,BAIS dpt Page 4 11/22/2022

Quantity s1 s2 s3 Q/ s1 Q/ s2 Q/ s3
24 1 6 -16/3 24/1 = 24 24/6 =4 24/ (-16/3) = -4.5
9 0 1 -1/3 9/0 = ∞ 9/ 1= 9 9 / (-1/3) = -27
4 0 -1 2/3 4/0 = ∞ 4/ -1= -4 4/ (2/3) = 6

After computing all the ratios, will apply the following general rules to determine the RHS range for
each constraint:
Allowable decrease : The smallest positive ratio
Allowable Increase: the negative ratio closest to zero.

Note that: the rules are reversed for a minimization problem.


Based on the above mentioned facts the RHS range for the inspection constraint is:
Lower limit + 4 = 22, so lower limit = 22- 4 = 18
Upper limit – 4 = 22, so upper limit = 22 + 4 = 26
Hence RHS range for inspection constraint is between 18 and 26.
Note that if there is no negative ratio, then there will not be upper limit to the level of a constraint.
The RHS range for the assembly constraint is determined as follows:
Upper limit = ∞ (no upper limit since there is no negative ratio)
Lower limit = 100 – 24 = 76
Similarly the RHS range for the storage constraint is between 33 and 43.5.
The values in the slack columns (known as substitution rates) tell us the following: for example, a one
unit increase in inspection time will:

Basis s2
s1 6 1) cause s1 to increase by 6 units ( i.e, 24+6=30)
x1 1 2) cause X to increase by 1 unit ( i.e, 9+1 =10)
X2 -1 3) cause X2 to decrease by 1 unit (i.e, 4 – 1 = 3)
Z 10 4) cause Z to increase by 10 ( i.e, 740 + 10 = 750)

A one cubic feet increase in storage space will:


Basis s3
s1 -16/3 Cause s1 to decrease by 16/3 = 5.33 units , 24 -5.33 = 18.67
x1 -1/3 Cause X to decrease by 1/3 = 0.33 units, 9 – 0.33 = 8.67
X2 2/3 Cause X2 to increase by 2/3 = 0.67 units, 4 + 0.67 = 4.67
Z 40/3=13.33 Cause Z to increase by 43/3 = 13.33 , 740 + 13.33 = 753.33

EXAMPLE
The manager in the above problem is contemplating one of two possible changes in the level of the
storage constraint. One change would be an increase of 3 cubic feet in its level and the other would be
an increase of 8 cubic feet to its level. Determine the revised optimal solution for each possible change.
Solution:
Solution for planned change one: an increase of 3 cubic feet of storage space.

Step-1 check if the change is with in the RHS range of the storage constraint.
-the upper limit is 39+4.5= 43.5. Hence, an increase of 3 cubic feet is with in the RHS range.
Step-2 compute the revised solution for an increase of 3 cubic feet to the storage space:
Basis s3 Quantity current sol.+ Change ( 3* s3 ) = Revised solution
s1 -16/3 24 24 + 3( -16/3) = 8

4
Teshager C. AAUCC,BAIS dpt Page 5 11/22/2022

x1 -1/3 9 9 + 3( -1/3) = 8
X2 2/3 4 4 + 3 (2/3) = 6
Z 40/3=13.33 740 740 + 3 ( 40/3) = 780
Solution for planned change two: an increase of 8 cubic feet of storage space.
Step one: check whether the planned change is with in the RHS range for storage.
- The upper limit is 39 + 4.5. Hence, an increase of 8 c.ft is above the upper limit of the feasible
region. Therefore, the increase above 4.5 units is excess, or slack.
Step two: compute the solution for the feasible region (up to the upper limit of 4.5)

Basis s3 Quantity current sol.+ Change ( 4.5* s3 ) = Revised solution


s1 -16/3 24 24 + 4.5( -16/3) = 0
x1 -1/3 9 9 + 4.5( -1/3) = 7.5
X2 2/3 4 4 + 4.5(2/3) = 7
Z 40/3=13.33 740 740 + 4.5 ( 40/3) = 800
Note however, that beyond the upper limit, s3 would come in to the solution, replacing s1, which would no longer be slack. The amount of
slack would be 8 – 4.5 = 3.5 cubic feet. Consequently, the revised solution would be :
s3= 3.5
X1 = 7.5
X2 = 7
Z = 800 br
EXAMPLE
Suppose the manager in the previous problem is contemplating a decrease in storage space due to an
emergency situation. There are two possibilities being considered (1) a decrease of 6 c.ft. and (2) a
decrease of 9 c.ft. to its level. Determine the revised solutions.
SOLUTION
(1) For a decrease to storage space by 6 c.ft.
Step 1: check whether the change is with in the RHS range:
Lower limit = 39 – 6 = 33. The change is with in the range.
Step 2: compute the revised solution.

Basis s3 Quantity current sol.- Change ( 6* s3 ) = Revised solution


s1 -16/3 24 24 - 6( -16/3) = 56
x1 -1/3 9 9 - 6( -1/3) = 11
X2 2/3 4 4 - 6(2/3) = 0
Z 40/3=13.33 740 740 - 6 ( 40/3) = 660

(2) For a decrease to storage space by 9 c.ft.


Step 1: check whether the planned change is with in the RHS range.
The decrease is below the lower limit.
In general, the substitution rates and the shadow prices do not hold when the lower limit is
exceeded. Consequently, for a decrease in the level of a constraint beyond its lower limit, a new
simplex solution must be generated.
B. A CHANGE IN AN OBJECTIVE FUNCTION COEFFICIENT
There are two cases to consider:
1. changes for a variable that is currently in the solution mix (i.e., non basic variable)
2. changes for a variable that is currently in the solution mix (i.e., basic variable)

5
Teshager C. AAUCC,BAIS dpt Page 6 11/22/2022

A.RANGE OF INSIGNIFICANCE: - the range over which a non-basic


variable’s objective function coefficient can change without causing that
variable to enter the solution mix.

B. RANGE OF OPTIMALITY: - the range over which objective function


coefficient of a variable that is in solution can change with out changing the
optimal values of the decision variables.
Note, however, that such a change would change the optimal value of the objective
function.

Now let’s illustrate the above ranges using the following LP problem and its final tableau.
Maximize 3x + 2x + 5x
Subject to:
C1 x + 2x + 2x ≤ 18
C2 3x + 2x + 6x ≤ 12
C3 2x + 3x + 4x ≤ 12
x ,x x , ≥ 0
C 3 2 5 0 0 0
Basis x x x s s Quantity
s
s 0 0 0 0 1 1/5 -4/5 4/5
x 3 1 0 2 0 3/5 -2/5 12/5
x 2 0 1 0 0 -2/5 3/5 12/5
Z 3 2 6 0 1 0 12
C-Z 0 0 -1 0 -1 0

In the above tableau we see that x is a non- basic variable. To determine the range over which the
objective function coefficient of x would change without changing the optimal solution, recall how a
variable in a max problem enters the solution mix. Because x is not in solution, its objective function
coefficient would need to increase in order for it to come in to solution ( i.e, to make its c-z value
positive). The amount of increase must be greater than the absolute value of its c-z value, which is │-
1│. Therefore, its objective function coefficient must increase by more than 1. Hence, the range of
insignificance for x is 6 or less (i.e, its Z value). In general the rule is: Range of insignificance for a
non- basic variable is ≤ the Z value of the variable. The allowable increase is the absolute value of its
own C-Z value.
Note, however, that the above rules apply only for a max problem. For a min problem, the rules are
based on rules of solving min problems.
For variables which are in solution, the determination of the range of optimality requires a different
approach. The values in the C-Z row must be divided by the corresponding row values of the variable in
question. Hence, we determine the range for x and x as follows:
C- Z / x = 0/1=0, 0/0=∞, -1/2= -0.5, 0/0=∞, -1/ (3/5) = -5/3, 0/ (-2/5) = 0

C-Z/ x = 0/0 = ∞, 0/1 = 0, -1/0= ∞, -1/ (-2/5) = 5/2, 0/ (3/5) = 0

6
Teshager C. AAUCC,BAIS dpt Page 7 11/22/2022

Then, after computing the ratios, we apply the following rules:

Allowable Increase: - the smallest positive ratio of C-Z value and the
variable’s substitution rate.
Allowable decrease: - the smallest negative ratio of C-Z value and the variable
substitution rate.
Note that, if there is no positive ratio, there is no upper limit on that variable’s
objective function coefficient.
Now let’s determine the range of optimality for x and x using the above rules:
For x : Upper Range = 3 + ∞ (no upper range because there is no negative ratio)
Lower Range = 3 – 0.5 = 2.5 (the smallest negative ratio is -0.5)
For x : Upper Range = 2 + 2.5 = 4.5
Lower Range = 2 – 0 = 2 (no negative ratio).

DUALITY
Every LP model can have two forms. The original formulation of a problem is referred to as its primal
form. The other form is referred to as its dual form. The dual is a kind of “mirror image” of the primal
because in both its formulation and its solution, the values of the dual are the flip-flop versions of the
primal values. The solution for the primal problem contains the solution to the dual problem, and vice
versa. Consequently, once either the primal or the dual problem has been solved, the solution to the
other is also apparent.
Analysis of the dual can be used to determine the marginal values of resources (i.e., constraints).
Relative to a new product, a manager would want to know what impact adding a new product would
have on the solution to determine how much profit one unit of each resource is equivalent to. This can
help the manager to decide which of several alternative uses of resources is more profitable.
Formulating the dual
All problems formulated in the preceding topics can be classified as primal problems because they were
formulated directly from descriptions of a problem. The dual on the other hand is an alternate
formulation of the problem that requires the existence of the primal.
The following rules guide the formulation of the dual problem:
1. If the primal’ objective is to minimize, the dual’s will be to maximize; and the vice versa
2. The coefficient’s of the primal’s objective function become the RHS values for the dual’s
constraints.
3. The primal’s RHS values become the coefficients of the dual’s objective function.
4. The coefficients of the first “row” of the primal’s constraints become the coefficients of the first
“column” of the dual’s constraint …..
5. The ≤ constraints become ≥ and the vice versa.
To illustrate the formulation of the dual let’s use the following example:
PRIMAL DUAL
Maximize z = 20x + 30x Minimize 40y1 + 44y2 + 48y3
Subject to: Subject to
C x + 4x ≤ 40 C y1 +y2 + y3 ≥ 20
C 2x + 4x ≤ 44 C 4y1 + 4y2 + 4y3 ≥ 30
C3 3x +4x ≤ 48 y1, y2, y3 ≥ 0
x ,x ≥ 0
7
Teshager C. AAUCC,BAIS dpt Page 8 11/22/2022

FORMULATING THE DUAL WHEN THE PRIMAL HAS MIXED CONSTRAINTS


In order to transform a primal problem in to its dual, it is easier if all constraints in a maximization
problem are of the ≤ variety, and in a minimization problem, every constraint is of the ≥ variety.
- To change the direction of a constraint, multiply both sides of the constraint by -1.
- If a constraint is equality, it must be replaced with two constraints, one with a ≤ sign and the other
with a ≥ sign. For example, 4x + 3x = 40 will be replaced by:
4x + 3x ≤ 40
4x + 3x ≥ 40
Then one of these must be multiplied by -1, depending on whether the primal is a max or a min
problem.
EXAMPLE:
Formulate the dual of this LP model.
Maximize z = 50x + 80x
Subject to:
C 3x + 5x ≤ 45
C 4x + 2x ≥16
C3 6x +6x = 30
x ,x ≥ 0

SOLUTION
Since the problem is a max problem, put all the constraints in to the ≤ form. Subsequently, C and C3
will be first adjusted in to ≤ constraints.
- C will be multiplied by -1:
-1(4x + 2x ≥16) becomes -4x - 2x ≤ -16
- C3 is equality, and must be restated as two separate constraints. Thus, it becomes:
6x +6x ≤ 30 and 6x +6x ≥30. Then the second of these must be multiplied by -1.
-1(6x +6x ≥30) becomes -6x -6x ≤ -30
After making the above adjustments, rewrite the LP model again.
Maximize z = 50x + 80x
Subject to:
C 3x + 5x ≤ 45
C -4x - 2x ≤ -16
C3 6x +6x ≤ 30
C4 -6x -6x ≥ -30
x ,x ≥0
The dual of the above problem will be:
Minimize 45y1 - 16y2 + 30y3 – 30y4
Subject to
C 3y1 -4y2 + 6y3 – 6y4 ≥ 50
C 3y1 - 2y2 + 6y3 – 6y4 ≥ 80
y1, y2, y3, y4 ≥ 0
CROSS REFERENCING THE VALUES IN THE PRIMAL AND DUAL FINAL SIMPLEX
TABLEAUS: The flip flopping of values between the primal and the dual carries over to the final
simplex tableaus. The table below is used to cross reference the values in the primal and dual final
simplex tableaus.
8
Teshager C. AAUCC,BAIS dpt Page 9 11/22/2022

PRIMAL HOW LEBELED/ WHERE CORRESPONDENCE IN


FOUND IN THE PRIMAL THE DUAL
-Decision variable x ,x x ,….. s1,s2,s3,…….
- slack variable s1,s2,s3,……. y1,y2,y3,……..

- shadow prices Z row under slack column Quantity column in decision


variable rows.
- solution quantities Quantity column
C-Z row under slack and
decision variable columns

Let’s illustrate the above rules using the example below:


Let x1= units of model I computer
x2= units of model II computer
Maximize Z= 60x1+ 50x2(profit)
Subject to:
Assembly 4x1+10x2 < 100 Hrs.
Inspection 2x1+ x2 < 22 Hrs
Storage 3x1+ 3x2 < 39 cubic feet
X1, x2 > 0
Below is the final simplex tableau of this problem:
C 60 50 0 0 0 Quantity
Basis x1 x2 s1 s2 s3
S1 0 0 0 1 6 -16/3 24
X1 60 1 0 0 1 -1/3 9
X2 50 0 1 0 -1 2/3 4
Z 60 50 0 10 40/3 740
C- Z 0 0 0 -10 -40/3

Below is the final tableau of the dual form of the above problem:
C 100 22 39 0 0
Basis Y1 y2 y3 S1 S2 Quantity
Y3 39 16/3 0 1 1/3 -2/3 40/3
Y2 22 -6 1 0 -1 1 10
Z 76 22 39 -9 -4 740
C- Z 24 0 0 9 4

Notice that:
- The solution quantities of the dual are equal to the shadow prices of the primal (i.e., 40/3 and 10).
- The values of the solution quantities of the primal (i.e., 24, 9, and4) can be found in the C-Z row of
the dual.
- The substitution rates of the primal and dual solutions are also the opposite signs.

ECONOMIC INTERPRETATION OF THE DUAL


Given our example:
For each unit of model I computer the firm produces, it uses 4hrs of assembly,2hrs of inspection, and 3
cubic feet of storage space; it will also obtain a profit of br. 60. hence, for each unit of that model the

9
Teshager C. AAUCC,BAIS dpt Page 10 11/22/2022

firm sacrifices to produce other computers, it will gain those resources but also will give up a profit of
br. 60. Therefore, in order to consider an offer, the amount of scarce resource that will be given up must
produce a return to the firm that is at least equal to the forgone profit. Hence, the value of 4y1 +2y2 +
3y3 must be ≥ 60. This means y1= assembly time used, y2= inspection time used, and y3= amount of
storage space used.
Value received per unit of: resources freed up minimum profit required
- Model- I ( x1) 4y1 +2y2 + 3y3 Br. 60
- Model- II (x2 ) 10y1+y2 + 3y3 Br. 50

*Hence, the constraints of the dual refer to the value of capacity(i.e., scarce resources).
*Naturally the firm wants to minimize the use of the scarce resources. Consequently, the
objective function of the dual problem focuses on minimizing the use of the scarce resources.
Thus: Minimize 100y1 +22y2 + 39y3
* Finally, the optimal dual solution always yields the same value of the objective function as the
primal optimal. In this case it is 740. The interpretation is that the imputed value of the resources that
are required for the optimal solution equals the amount of profit that the optimal solution would
produce.

ADDING ANOTHER VARIABLE


Suppose the manager in our problem is considering a third model computer that will yield a profit of
70br. per unit, and it will require resources of 8 hrs of assembly, 4 hrs of inspection, and 5 cubic feet of
storage space per unit.
Now the original problem is changed to:

Let x1= units of model I computer


x2= units of model II computer
x = units of model III computer
Maximize Z= 60x1+ 50x2 + 70 x (profit)
Subject to:
Assembly 4x1+10x2 + 8 x < 100 Hrs.
Inspection 2x1+ x2 +4 x < 22 Hrs
Storage 3x1+ 3x2 + 5 x < 39 cubic feet
X1, x2, x > 0
The dual constraint for this mode would be8y1 +4y2 + 5y3 ≥ 70
In order to determine if this new variable would come in to the optimal (primal) solution, we can
substitute the dual solution of y1=0, y2= 10, and y3= 40/3(i.e., the shadow prices, or marginal values of
the resources) in to this constraint to see if it would be satisfied. Thus, we find 8(0) + 4(10) + 5(40/3) =
106.67. Because this amount is greater than the new dual constraint, the original solution remains
optimal. Hence, the new variable(x ) would not come in to solution. Conversely, if the dual constraint
has not been satisfied, the new variable would have come in to solution. In this instance the marginal
value of the scarce resources that would be required for the new product exceeds the marginal
contribution to profit that the new model would provide; i.e., 106.67 ≥ 70.
The value of this approach is that it is not necessary to rework the entire problem in order to test the
potential impact that adding a new decision variable would have on the optimal solution.

10

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