Problem 1
Use integration by substitution to solve the integral below.
4e^{-7x} , dx
Solution:
\[\begin{align*}
\int 4e^{-7x} \, dx &= \int 4e^{u} \left( \frac{du}{-7} \right) \\
&= \frac{4}{-7} \int e^{u} \, du \\
&= \frac{4}{-7} e^{u} + C \\
&= \frac{4}{-7} e^{-7x} + C
\end{align*}\]
Problem 2
Biologists are treating a pond contaminated with bacteria.
Given the differential equation:
\[
\frac{dN}{dt} = -3150t^4 - 220
\]
Integrating both sides with respect to \(t\):
\[
\int \frac{dN}{dt} \, dt = \int (-3150t^4 - 220) \, dt
\]
This gives us:
\[
N(t) = -630t^5 - 220t + C
\]
where \(C\) is the constant of
integration.
To find the constant \(C\), we use
the initial condition provided: \(N(1) =
6530\). Substituting \(t = 1\)
and \(N(1) = 6530\) into the
equation:
\[
6530 = -630(1)^5 - 220(1) + C
\] \[
6530 = -630 - 220 + C
\] \[
C = 6530 + 630 + 220
\] \[
C = 7380
\]
Therefore, the function \(N(t)\)
is:
\[
N(t) = -630t^5 - 220t + 7380
\]
This function estimates the level of contamination at any time \(t\) since the treatment began.
Problem 3
Find the total area of the red rectangles in the figure below, where
the equation of the line is f ( x ) = 2x 9.
To find the total area of the red rectangles in the figure, we need
to compute the area of each individual rectangle and then sum them
up.
Given that the equation of the line is \(f(x) = 2x - 9\), and assuming that the
rectangles have equal widths, we can choose a width \(\Delta x\) and calculate the height of each
rectangle based on the function \(f(x)\).
Let’s denote the width of each rectangle as \(\Delta x\). Then, the height of each
rectangle is given by the function \(f(x)\) evaluated at the right endpoint of
the rectangle.
So, the area of each rectangle is \((\text{height}) \times (\text{width}) = f(x)
\times \Delta x\).
To find the total area of all rectangles, we sum up the areas of each
rectangle from \(x = 1\) to \(x = 5\):
\[
\text{Total Area} = \sum_{i=1}^{n} f(x_i) \Delta x
\]
where \(n\) is the number of
rectangles and \(x_i\) represents the
right endpoint of each rectangle.
Let’s say we divide the interval \([1,
5]\) into \(n\) equal
subintervals, then \(\Delta x = \frac{{5 -
1}}{n}\).
We then compute \(f(x_i)\) for each
\(x_i\) in the interval \([1, 5]\), which corresponds to the right
endpoint of each rectangle.
Finally, we sum up all the areas of the rectangles using the formula
above.
Problem 4
Find the area of the region bounded by the graphs of the given
equations. y = x 2 - 2x - 2, y = x + 2
To find the area of the region bounded by the graphs of the given
equations \(y = x^2 - 2x - 2\) and
\(y = x + 2\), we need to first
determine the points of intersection between the two curves. The area of
the region will then be the integral of the absolute difference between
the two functions over the interval where they intersect.
To find the intersection points, we set the two equations equal to
each other:
\[
x^2 - 2x - 2 = x + 2
\]
Solving this quadratic equation yields two solutions for \(x\):
\[
x^2 - 2x - 2 - (x + 2) = 0
\] \[
x^2 - 3x - 4 = 0
\]
Factoring the quadratic equation gives:
\[
(x - 4)(x + 1) = 0
\]
So, \(x = 4\) or \(x = -1\).
Next, we need to determine which curve is above the other in each
interval.
For \(x < -1\), \(x^2 - 2x - 2 > x + 2\), so the curve
\(y = x^2 - 2x - 2\) is above the curve
\(y = x + 2\) in this interval.
For \(-1 < x < 4\), \(x + 2 > x^2 - 2x - 2\), so the curve
\(y = x + 2\) is above the curve \(y = x^2 - 2x - 2\) in this interval.
For \(x > 4\), \(x^2 - 2x - 2 > x + 2\), so the curve
\(y = x^2 - 2x - 2\) is above the curve
\(y = x + 2\) in this interval.
Therefore, the integral for the area of the region can be split into
two integrals:
\[
\text{Area} = \int_{-1}^{4} (x + 2 - (x^2 - 2x - 2)) \, dx +
\int_{4}^{\infty} ((x^2 - 2x - 2) - (x + 2)) \, dx
\]
Solving these integrals will give us the area of the region bounded
by the curves.
Problem 5
A beauty supply store expects to sell 110 flat irons during the next
year. It costs $3.75 to store one flat iron for one year. There is a
fixed cost of $8.25 for each order. Find the lot size and the number of
orders per year that will minimize inventory costs.
To minimize the inventory costs, we need to find the lot size and the
number of orders per year that will minimize the total cost.
Let: - \(C\) be the total annual
inventory cost, - \(Q\) be the lot size
(number of flat irons per order), - \(D\) be the demand (number of flat irons to
be sold in a year), - \(S\) be the cost
to store one flat iron for one year, - \(F\) be the fixed cost per order.
The total annual inventory cost \(C\) is given by the sum of the ordering
cost and the carrying cost:
\[
C = \text{Ordering cost} + \text{Carrying cost}
\]
The ordering cost is given by the total number of orders multiplied
by the fixed cost per order:
\[
\text{Ordering cost} = \frac{D}{Q} \times F
\]
The carrying cost is given by the average inventory multiplied by the
cost to store one flat iron for one year:
\[
\text{Carrying cost} = \frac{Q}{2} \times S
\]
Given: - \(D = 110\) flat irons
(demand per year), - \(S = \$3.75\)
(cost to store one flat iron for one year), - \(F = \$8.25\) (fixed cost per order).
We want to find the values of \(Q\)
and the number of orders per year that minimize \(C\).
Substituting the given values into the equations for the ordering
cost and carrying cost, we have:
\[
\text{Ordering cost} = \frac{110}{Q} \times 8.25
\] \[
\text{Carrying cost} = \frac{Q}{2} \times 3.75
\]
The total annual inventory cost \(C\) becomes:
\[
C = \frac{110 \times 8.25}{Q} + \frac{Q \times 3.75}{2}
\]
To minimize \(C\), we differentiate
it with respect to \(Q\), set the
derivative equal to zero, and solve for \(Q\).
\[
\frac{dC}{dQ} = -\frac{110 \times 8.25}{Q^2} + \frac{3.75}{2} = 0
\]
Solving for \(Q\) gives us the
optimal lot size. Then, we can find the number of orders per year by
dividing the total demand by the lot size.
After finding \(Q\), we can
substitute it back into the total annual inventory cost equation to find
the minimum total cost.
Problem 6
Use integration by parts to solve the integral below.
To solve the integral \(\int \ln(9x) \cdot
x^6 \, dx\) using integration by parts, we use the formula:
\[
\int u \, dv = uv - \int v \, du
\]
Let’s choose:
\[
u = \ln(9x) \quad \text{and} \quad dv = x^6 \, dx
\]
Now, we differentiate \(u\) to find
\(du\) and integrate \(dv\) to find \(v\):
\[
du = \frac{1}{9x} \, dx \quad \text{and} \quad v = \frac{1}{7}x^7
\]
Now, we can apply the integration by parts formula:
\[
\int \ln(9x) \cdot x^6 \, dx = uv - \int v \, du
\] \[
= \ln(9x) \cdot \frac{1}{7}x^7 - \int \frac{1}{7}x^7 \cdot \frac{1}{9x}
\, dx
\] \[
= \frac{1}{7}x^7 \ln(9x) - \frac{1}{63} \int x^6 \, dx
\]
Integrating \(\int x^6 \, dx\) gives
us:
\[
= \frac{1}{7}x^7 \ln(9x) - \frac{1}{63} \cdot \frac{1}{7}x^7 + C
\] \[
= \frac{1}{7}x^7 \left(\ln(9x) - \frac{1}{9}\right) + C
\]
Therefore, the solution to the integral \(\int \ln(9x) \cdot x^6 \, dx\) using
integration by parts is:
\[
\frac{1}{7}x^7 \left(\ln(9x) - \frac{1}{9}\right) + C
\]
where \(C\) is the constant of
integration.
Problem 7
Determine whether f ( x ) is a probability density function on the
interval 1, e 6 . If not, determine the value of the definite integral.
f ( x ) = 1/6x
To determine whether \(f(x) =
\frac{1}{6x}\) is a probability density function (PDF) on the
interval \([1, e^6]\), we need to check
two conditions:
- The function \(f(x)\) must be
non-negative for all \(x\) in the
interval.
- The total area under the curve of \(f(x)\) over the interval must be equal to
1.
Let’s evaluate these conditions:
Non-negativity: For \(x\) in the
interval \([1, e^6]\), \(f(x) = \frac{1}{6x}\) is positive since
both \(1\) and \(e^6\) are positive, and the denominator
\(6x\) is positive for \(x > 0\). Therefore, \(f(x)\) is non-negative for all \(x\) in the interval.
Total area under the curve: We need to find the definite integral
of \(f(x)\) over the interval \([1, e^6]\):
\[
\int_{1}^{e^6} \frac{1}{6x} \, dx
\]
Let’s compute this integral:
\[
\int_{1}^{e^6} \frac{1}{6x} \, dx = \frac{1}{6} \int_{1}^{e^6}
\frac{1}{x} \, dx = \frac{1}{6} \ln(x) \Bigg|_{1}^{e^6} = \frac{1}{6}
(\ln(e^6) - \ln(1))
\] \[
= \frac{1}{6} (6 - 0) = 1
\]
Since the integral evaluates to \(1\), which is the desired value for a PDF,
\(f(x)\) is indeed a probability
density function on the interval \([1,
e^6]\).
Therefore, \(f(x) = \frac{1}{6x}\)
is a valid probability density function on the interval \([1, e^6]\).
LS0tDQp0aXRsZTogIkRhdGEgNjA1IEFzc2lnbm1lbnQgMTMiDQphdXRob3I6ICJMYXVyYSBCIg0KZGF0ZTogImByIFN5cy5EYXRlKClgIg0Kb3V0cHV0OiBvcGVuaW50cm86OmxhYl9yZXBvcnQNCi0tLQ0KDQoNClByb2JsZW0gMQ0KDQpVc2UgaW50ZWdyYXRpb24gYnkgc3Vic3RpdHV0aW9uIHRvIHNvbHZlIHRoZSBpbnRlZ3JhbCBiZWxvdy4NCg0KXGludCA0ZV57LTd4fSBcLCBkeA0KDQpTb2x1dGlvbjoNCg0KXGJlZ2lue2FsaWduKn0NClxpbnQgNGVeey03eH0gXCwgZHggJj0gXGludCA0ZV57dX0gXGxlZnQoIFxmcmFje2R1fXstN30gXHJpZ2h0KSBcXA0KJj0gXGZyYWN7NH17LTd9IFxpbnQgZV57dX0gXCwgZHUgXFwNCiY9IFxmcmFjezR9ey03fSBlXnt1fSArIEMgXFwNCiY9IFxmcmFjezR9ey03fSBlXnstN3h9ICsgQw0KXGVuZHthbGlnbip9DQoNCg0KDQoNCg0KUHJvYmxlbSAyDQoNCkJpb2xvZ2lzdHMgYXJlIHRyZWF0aW5nIGEgcG9uZCBjb250YW1pbmF0ZWQgd2l0aCBiYWN0ZXJpYS4gDQoNCkdpdmVuIHRoZSBkaWZmZXJlbnRpYWwgZXF1YXRpb246DQoNClxbDQpcZnJhY3tkTn17ZHR9ID0gLTMxNTB0XjQgLSAyMjANClxdDQoNCkludGVncmF0aW5nIGJvdGggc2lkZXMgd2l0aCByZXNwZWN0IHRvIFwoIHQgXCk6DQoNClxbDQpcaW50IFxmcmFje2ROfXtkdH0gXCwgZHQgPSBcaW50ICgtMzE1MHReNCAtIDIyMCkgXCwgZHQNClxdDQoNClRoaXMgZ2l2ZXMgdXM6DQoNClxbDQpOKHQpID0gLTYzMHReNSAtIDIyMHQgKyBDDQpcXQ0KDQp3aGVyZSBcKCBDIFwpIGlzIHRoZSBjb25zdGFudCBvZiBpbnRlZ3JhdGlvbi4NCg0KVG8gZmluZCB0aGUgY29uc3RhbnQgXCggQyBcKSwgd2UgdXNlIHRoZSBpbml0aWFsIGNvbmRpdGlvbiBwcm92aWRlZDogXCggTigxKSA9IDY1MzAgXCkuIFN1YnN0aXR1dGluZyBcKCB0ID0gMSBcKSBhbmQgXCggTigxKSA9IDY1MzAgXCkgaW50byB0aGUgZXF1YXRpb246DQoNClxbDQo2NTMwID0gLTYzMCgxKV41IC0gMjIwKDEpICsgQw0KXF0NClxbDQo2NTMwID0gLTYzMCAtIDIyMCArIEMNClxdDQpcWw0KQyA9IDY1MzAgKyA2MzAgKyAyMjANClxdDQpcWw0KQyA9IDczODANClxdDQoNClRoZXJlZm9yZSwgdGhlIGZ1bmN0aW9uIFwoIE4odCkgXCkgaXM6DQoNClxbDQpOKHQpID0gLTYzMHReNSAtIDIyMHQgKyA3MzgwDQpcXQ0KDQpUaGlzIGZ1bmN0aW9uIGVzdGltYXRlcyB0aGUgbGV2ZWwgb2YgY29udGFtaW5hdGlvbiBhdCBhbnkgdGltZSBcKCB0IFwpIHNpbmNlIHRoZSB0cmVhdG1lbnQgYmVnYW4uDQoNCg0KDQoNCg0KUHJvYmxlbSAzDQoNCkZpbmQgdGhlIHRvdGFsIGFyZWEgb2YgdGhlIHJlZCByZWN0YW5nbGVzIGluIHRoZSBmaWd1cmUgYmVsb3csIHdoZXJlIHRoZSBlcXVhdGlvbiBvZiB0aGUgbGluZSBpcyBmICggeCApID0gMngg74CtIDkuDQoNCg0KVG8gZmluZCB0aGUgdG90YWwgYXJlYSBvZiB0aGUgcmVkIHJlY3RhbmdsZXMgaW4gdGhlIGZpZ3VyZSwgd2UgbmVlZCB0byBjb21wdXRlIHRoZSBhcmVhIG9mIGVhY2ggaW5kaXZpZHVhbCByZWN0YW5nbGUgYW5kIHRoZW4gc3VtIHRoZW0gdXAuDQoNCkdpdmVuIHRoYXQgdGhlIGVxdWF0aW9uIG9mIHRoZSBsaW5lIGlzIFwoIGYoeCkgPSAyeCAtIDkgXCksIGFuZCBhc3N1bWluZyB0aGF0IHRoZSByZWN0YW5nbGVzIGhhdmUgZXF1YWwgd2lkdGhzLCB3ZSBjYW4gY2hvb3NlIGEgd2lkdGggXCggXERlbHRhIHggXCkgYW5kIGNhbGN1bGF0ZSB0aGUgaGVpZ2h0IG9mIGVhY2ggcmVjdGFuZ2xlIGJhc2VkIG9uIHRoZSBmdW5jdGlvbiBcKCBmKHgpIFwpLg0KDQpMZXQncyBkZW5vdGUgdGhlIHdpZHRoIG9mIGVhY2ggcmVjdGFuZ2xlIGFzIFwoIFxEZWx0YSB4IFwpLiBUaGVuLCB0aGUgaGVpZ2h0IG9mIGVhY2ggcmVjdGFuZ2xlIGlzIGdpdmVuIGJ5IHRoZSBmdW5jdGlvbiBcKCBmKHgpIFwpIGV2YWx1YXRlZCBhdCB0aGUgcmlnaHQgZW5kcG9pbnQgb2YgdGhlIHJlY3RhbmdsZS4NCg0KU28sIHRoZSBhcmVhIG9mIGVhY2ggcmVjdGFuZ2xlIGlzIFwoIChcdGV4dHtoZWlnaHR9KSBcdGltZXMgKFx0ZXh0e3dpZHRofSkgPSBmKHgpIFx0aW1lcyBcRGVsdGEgeCBcKS4NCg0KVG8gZmluZCB0aGUgdG90YWwgYXJlYSBvZiBhbGwgcmVjdGFuZ2xlcywgd2Ugc3VtIHVwIHRoZSBhcmVhcyBvZiBlYWNoIHJlY3RhbmdsZSBmcm9tIFwoIHggPSAxIFwpIHRvIFwoIHggPSA1IFwpOg0KDQpcWw0KXHRleHR7VG90YWwgQXJlYX0gPSBcc3VtX3tpPTF9XntufSBmKHhfaSkgXERlbHRhIHgNClxdDQoNCndoZXJlIFwoIG4gXCkgaXMgdGhlIG51bWJlciBvZiByZWN0YW5nbGVzIGFuZCBcKCB4X2kgXCkgcmVwcmVzZW50cyB0aGUgcmlnaHQgZW5kcG9pbnQgb2YgZWFjaCByZWN0YW5nbGUuDQoNCkxldCdzIHNheSB3ZSBkaXZpZGUgdGhlIGludGVydmFsIFwoIFsxLCA1XSBcKSBpbnRvIFwoIG4gXCkgZXF1YWwgc3ViaW50ZXJ2YWxzLCB0aGVuIFwoIFxEZWx0YSB4ID0gXGZyYWN7ezUgLSAxfX17bn0gXCkuDQoNCldlIHRoZW4gY29tcHV0ZSBcKCBmKHhfaSkgXCkgZm9yIGVhY2ggXCggeF9pIFwpIGluIHRoZSBpbnRlcnZhbCBcKCBbMSwgNV0gXCksIHdoaWNoIGNvcnJlc3BvbmRzIHRvIHRoZSByaWdodCBlbmRwb2ludCBvZiBlYWNoIHJlY3RhbmdsZS4NCg0KRmluYWxseSwgd2Ugc3VtIHVwIGFsbCB0aGUgYXJlYXMgb2YgdGhlIHJlY3RhbmdsZXMgdXNpbmcgdGhlIGZvcm11bGEgYWJvdmUuDQoNCg0KDQoNCg0KUHJvYmxlbSA0DQoNCkZpbmQgdGhlIGFyZWEgb2YgdGhlIHJlZ2lvbiBib3VuZGVkIGJ5IHRoZSBncmFwaHMgb2YgdGhlIGdpdmVuIGVxdWF0aW9ucy4NCnkgPSB4IDIgLSAyeCAtIDIsIHkgPSB4ICsgMg0KDQpUbyBmaW5kIHRoZSBhcmVhIG9mIHRoZSByZWdpb24gYm91bmRlZCBieSB0aGUgZ3JhcGhzIG9mIHRoZSBnaXZlbiBlcXVhdGlvbnMgXCggeSA9IHheMiAtIDJ4IC0gMiBcKSBhbmQgXCggeSA9IHggKyAyIFwpLCB3ZSBuZWVkIHRvIGZpcnN0IGRldGVybWluZSB0aGUgcG9pbnRzIG9mIGludGVyc2VjdGlvbiBiZXR3ZWVuIHRoZSB0d28gY3VydmVzLiBUaGUgYXJlYSBvZiB0aGUgcmVnaW9uIHdpbGwgdGhlbiBiZSB0aGUgaW50ZWdyYWwgb2YgdGhlIGFic29sdXRlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgdHdvIGZ1bmN0aW9ucyBvdmVyIHRoZSBpbnRlcnZhbCB3aGVyZSB0aGV5IGludGVyc2VjdC4NCg0KVG8gZmluZCB0aGUgaW50ZXJzZWN0aW9uIHBvaW50cywgd2Ugc2V0IHRoZSB0d28gZXF1YXRpb25zIGVxdWFsIHRvIGVhY2ggb3RoZXI6DQoNClxbDQp4XjIgLSAyeCAtIDIgPSB4ICsgMg0KXF0NCg0KU29sdmluZyB0aGlzIHF1YWRyYXRpYyBlcXVhdGlvbiB5aWVsZHMgdHdvIHNvbHV0aW9ucyBmb3IgXCggeCBcKToNCg0KXFsNCnheMiAtIDJ4IC0gMiAtICh4ICsgMikgPSAwDQpcXQ0KXFsNCnheMiAtIDN4IC0gNCA9IDANClxdDQoNCkZhY3RvcmluZyB0aGUgcXVhZHJhdGljIGVxdWF0aW9uIGdpdmVzOg0KDQpcWw0KKHggLSA0KSh4ICsgMSkgPSAwDQpcXQ0KDQpTbywgXCggeCA9IDQgXCkgb3IgXCggeCA9IC0xIFwpLg0KDQpOZXh0LCB3ZSBuZWVkIHRvIGRldGVybWluZSB3aGljaCBjdXJ2ZSBpcyBhYm92ZSB0aGUgb3RoZXIgaW4gZWFjaCBpbnRlcnZhbC4NCg0KRm9yIFwoIHggPCAtMSBcKSwgXCggeF4yIC0gMnggLSAyID4geCArIDIgXCksIHNvIHRoZSBjdXJ2ZSBcKCB5ID0geF4yIC0gMnggLSAyIFwpIGlzIGFib3ZlIHRoZSBjdXJ2ZSBcKCB5ID0geCArIDIgXCkgaW4gdGhpcyBpbnRlcnZhbC4NCg0KRm9yIFwoIC0xIDwgeCA8IDQgXCksIFwoIHggKyAyID4geF4yIC0gMnggLSAyIFwpLCBzbyB0aGUgY3VydmUgXCggeSA9IHggKyAyIFwpIGlzIGFib3ZlIHRoZSBjdXJ2ZSBcKCB5ID0geF4yIC0gMnggLSAyIFwpIGluIHRoaXMgaW50ZXJ2YWwuDQoNCkZvciBcKCB4ID4gNCBcKSwgXCggeF4yIC0gMnggLSAyID4geCArIDIgXCksIHNvIHRoZSBjdXJ2ZSBcKCB5ID0geF4yIC0gMnggLSAyIFwpIGlzIGFib3ZlIHRoZSBjdXJ2ZSBcKCB5ID0geCArIDIgXCkgaW4gdGhpcyBpbnRlcnZhbC4NCg0KVGhlcmVmb3JlLCB0aGUgaW50ZWdyYWwgZm9yIHRoZSBhcmVhIG9mIHRoZSByZWdpb24gY2FuIGJlIHNwbGl0IGludG8gdHdvIGludGVncmFsczoNCg0KXFsNClx0ZXh0e0FyZWF9ID0gXGludF97LTF9Xns0fSAoeCArIDIgLSAoeF4yIC0gMnggLSAyKSkgXCwgZHggKyBcaW50X3s0fV57XGluZnR5fSAoKHheMiAtIDJ4IC0gMikgLSAoeCArIDIpKSBcLCBkeA0KXF0NCg0KU29sdmluZyB0aGVzZSBpbnRlZ3JhbHMgd2lsbCBnaXZlIHVzIHRoZSBhcmVhIG9mIHRoZSByZWdpb24gYm91bmRlZCBieSB0aGUgY3VydmVzLg0KDQoNCg0KDQpQcm9ibGVtIDUNCg0KQSBiZWF1dHkgc3VwcGx5IHN0b3JlIGV4cGVjdHMgdG8gc2VsbCAxMTAgZmxhdCBpcm9ucyBkdXJpbmcgdGhlIG5leHQgeWVhci4gSXQgY29zdHMgJDMuNzUgdG8gc3RvcmUgb25lIGZsYXQgaXJvbiBmb3Igb25lIHllYXIuDQpUaGVyZSBpcyBhIGZpeGVkIGNvc3Qgb2YgJDguMjUgZm9yIGVhY2ggb3JkZXIuIEZpbmQgdGhlIGxvdCBzaXplIGFuZCB0aGUgbnVtYmVyIG9mIG9yZGVycyBwZXIgeWVhciB0aGF0IHdpbGwgbWluaW1pemUNCmludmVudG9yeSBjb3N0cy4NCg0KDQpUbyBtaW5pbWl6ZSB0aGUgaW52ZW50b3J5IGNvc3RzLCB3ZSBuZWVkIHRvIGZpbmQgdGhlIGxvdCBzaXplIGFuZCB0aGUgbnVtYmVyIG9mIG9yZGVycyBwZXIgeWVhciB0aGF0IHdpbGwgbWluaW1pemUgdGhlIHRvdGFsIGNvc3QuDQoNCkxldDoNCi0gXCggQyBcKSBiZSB0aGUgdG90YWwgYW5udWFsIGludmVudG9yeSBjb3N0LA0KLSBcKCBRIFwpIGJlIHRoZSBsb3Qgc2l6ZSAobnVtYmVyIG9mIGZsYXQgaXJvbnMgcGVyIG9yZGVyKSwNCi0gXCggRCBcKSBiZSB0aGUgZGVtYW5kIChudW1iZXIgb2YgZmxhdCBpcm9ucyB0byBiZSBzb2xkIGluIGEgeWVhciksDQotIFwoIFMgXCkgYmUgdGhlIGNvc3QgdG8gc3RvcmUgb25lIGZsYXQgaXJvbiBmb3Igb25lIHllYXIsDQotIFwoIEYgXCkgYmUgdGhlIGZpeGVkIGNvc3QgcGVyIG9yZGVyLg0KDQpUaGUgdG90YWwgYW5udWFsIGludmVudG9yeSBjb3N0IFwoIEMgXCkgaXMgZ2l2ZW4gYnkgdGhlIHN1bSBvZiB0aGUgb3JkZXJpbmcgY29zdCBhbmQgdGhlIGNhcnJ5aW5nIGNvc3Q6DQoNClxbDQpDID0gXHRleHR7T3JkZXJpbmcgY29zdH0gKyBcdGV4dHtDYXJyeWluZyBjb3N0fQ0KXF0NCg0KVGhlIG9yZGVyaW5nIGNvc3QgaXMgZ2l2ZW4gYnkgdGhlIHRvdGFsIG51bWJlciBvZiBvcmRlcnMgbXVsdGlwbGllZCBieSB0aGUgZml4ZWQgY29zdCBwZXIgb3JkZXI6DQoNClxbDQpcdGV4dHtPcmRlcmluZyBjb3N0fSA9IFxmcmFje0R9e1F9IFx0aW1lcyBGDQpcXQ0KDQpUaGUgY2FycnlpbmcgY29zdCBpcyBnaXZlbiBieSB0aGUgYXZlcmFnZSBpbnZlbnRvcnkgbXVsdGlwbGllZCBieSB0aGUgY29zdCB0byBzdG9yZSBvbmUgZmxhdCBpcm9uIGZvciBvbmUgeWVhcjoNCg0KXFsNClx0ZXh0e0NhcnJ5aW5nIGNvc3R9ID0gXGZyYWN7UX17Mn0gXHRpbWVzIFMNClxdDQoNCkdpdmVuOg0KLSBcKCBEID0gMTEwIFwpIGZsYXQgaXJvbnMgKGRlbWFuZCBwZXIgeWVhciksDQotIFwoIFMgPSBcJDMuNzUgXCkgKGNvc3QgdG8gc3RvcmUgb25lIGZsYXQgaXJvbiBmb3Igb25lIHllYXIpLA0KLSBcKCBGID0gXCQ4LjI1IFwpIChmaXhlZCBjb3N0IHBlciBvcmRlcikuDQoNCldlIHdhbnQgdG8gZmluZCB0aGUgdmFsdWVzIG9mIFwoIFEgXCkgYW5kIHRoZSBudW1iZXIgb2Ygb3JkZXJzIHBlciB5ZWFyIHRoYXQgbWluaW1pemUgXCggQyBcKS4NCg0KU3Vic3RpdHV0aW5nIHRoZSBnaXZlbiB2YWx1ZXMgaW50byB0aGUgZXF1YXRpb25zIGZvciB0aGUgb3JkZXJpbmcgY29zdCBhbmQgY2FycnlpbmcgY29zdCwgd2UgaGF2ZToNCg0KXFsNClx0ZXh0e09yZGVyaW5nIGNvc3R9ID0gXGZyYWN7MTEwfXtRfSBcdGltZXMgOC4yNQ0KXF0NClxbDQpcdGV4dHtDYXJyeWluZyBjb3N0fSA9IFxmcmFje1F9ezJ9IFx0aW1lcyAzLjc1DQpcXQ0KDQpUaGUgdG90YWwgYW5udWFsIGludmVudG9yeSBjb3N0IFwoIEMgXCkgYmVjb21lczoNCg0KXFsNCkMgPSBcZnJhY3sxMTAgXHRpbWVzIDguMjV9e1F9ICsgXGZyYWN7USBcdGltZXMgMy43NX17Mn0NClxdDQoNClRvIG1pbmltaXplIFwoIEMgXCksIHdlIGRpZmZlcmVudGlhdGUgaXQgd2l0aCByZXNwZWN0IHRvIFwoIFEgXCksIHNldCB0aGUgZGVyaXZhdGl2ZSBlcXVhbCB0byB6ZXJvLCBhbmQgc29sdmUgZm9yIFwoIFEgXCkuDQoNClxbDQpcZnJhY3tkQ317ZFF9ID0gLVxmcmFjezExMCBcdGltZXMgOC4yNX17UV4yfSArIFxmcmFjezMuNzV9ezJ9ID0gMA0KXF0NCg0KU29sdmluZyBmb3IgXCggUSBcKSBnaXZlcyB1cyB0aGUgb3B0aW1hbCBsb3Qgc2l6ZS4gVGhlbiwgd2UgY2FuIGZpbmQgdGhlIG51bWJlciBvZiBvcmRlcnMgcGVyIHllYXIgYnkgZGl2aWRpbmcgdGhlIHRvdGFsIGRlbWFuZCBieSB0aGUgbG90IHNpemUuDQoNCkFmdGVyIGZpbmRpbmcgXCggUSBcKSwgd2UgY2FuIHN1YnN0aXR1dGUgaXQgYmFjayBpbnRvIHRoZSB0b3RhbCBhbm51YWwgaW52ZW50b3J5IGNvc3QgZXF1YXRpb24gdG8gZmluZCB0aGUgbWluaW11bSB0b3RhbCBjb3N0Lg0KDQoNCg0KDQpQcm9ibGVtIDYNCg0KVXNlIGludGVncmF0aW9uIGJ5IHBhcnRzIHRvIHNvbHZlIHRoZSBpbnRlZ3JhbCBiZWxvdy4NCg0KDQpUbyBzb2x2ZSB0aGUgaW50ZWdyYWwgXChcaW50IFxsbig5eCkgXGNkb3QgeF42IFwsIGR4XCkgdXNpbmcgaW50ZWdyYXRpb24gYnkgcGFydHMsIHdlIHVzZSB0aGUgZm9ybXVsYToNCg0KXFsNClxpbnQgdSBcLCBkdiA9IHV2IC0gXGludCB2IFwsIGR1DQpcXQ0KDQpMZXQncyBjaG9vc2U6DQoNClxbDQp1ID0gXGxuKDl4KSBccXVhZCBcdGV4dHthbmR9IFxxdWFkIGR2ID0geF42IFwsIGR4DQpcXQ0KDQpOb3csIHdlIGRpZmZlcmVudGlhdGUgXCh1XCkgdG8gZmluZCBcKGR1XCkgYW5kIGludGVncmF0ZSBcKGR2XCkgdG8gZmluZCBcKHZcKToNCg0KXFsNCmR1ID0gXGZyYWN7MX17OXh9IFwsIGR4IFxxdWFkIFx0ZXh0e2FuZH0gXHF1YWQgdiA9IFxmcmFjezF9ezd9eF43DQpcXQ0KDQpOb3csIHdlIGNhbiBhcHBseSB0aGUgaW50ZWdyYXRpb24gYnkgcGFydHMgZm9ybXVsYToNCg0KXFsNClxpbnQgXGxuKDl4KSBcY2RvdCB4XjYgXCwgZHggPSB1diAtIFxpbnQgdiBcLCBkdQ0KXF0NClxbDQo9IFxsbig5eCkgXGNkb3QgXGZyYWN7MX17N314XjcgLSBcaW50IFxmcmFjezF9ezd9eF43IFxjZG90IFxmcmFjezF9ezl4fSBcLCBkeA0KXF0NClxbDQo9IFxmcmFjezF9ezd9eF43IFxsbig5eCkgLSBcZnJhY3sxfXs2M30gXGludCB4XjYgXCwgZHgNClxdDQoNCkludGVncmF0aW5nIFwoXGludCB4XjYgXCwgZHhcKSBnaXZlcyB1czoNCg0KXFsNCj0gXGZyYWN7MX17N314XjcgXGxuKDl4KSAtIFxmcmFjezF9ezYzfSBcY2RvdCBcZnJhY3sxfXs3fXheNyArIEMNClxdDQpcWw0KPSBcZnJhY3sxfXs3fXheNyBcbGVmdChcbG4oOXgpIC0gXGZyYWN7MX17OX1ccmlnaHQpICsgQw0KXF0NCg0KVGhlcmVmb3JlLCB0aGUgc29sdXRpb24gdG8gdGhlIGludGVncmFsIFwoXGludCBcbG4oOXgpIFxjZG90IHheNiBcLCBkeFwpIHVzaW5nIGludGVncmF0aW9uIGJ5IHBhcnRzIGlzOg0KDQpcWw0KXGZyYWN7MX17N314XjcgXGxlZnQoXGxuKDl4KSAtIFxmcmFjezF9ezl9XHJpZ2h0KSArIEMNClxdDQoNCndoZXJlIFwoQ1wpIGlzIHRoZSBjb25zdGFudCBvZiBpbnRlZ3JhdGlvbi4NCg0KDQoNCg0KUHJvYmxlbSA3DQoNCkRldGVybWluZSB3aGV0aGVyIGYgKCB4ICkgaXMgYSBwcm9iYWJpbGl0eSBkZW5zaXR5IGZ1bmN0aW9uIG9uIHRoZSBpbnRlcnZhbCAxLCBlIDYgLiBJZiBub3QsIGRldGVybWluZSB0aGUgdmFsdWUgb2YgdGhlIGRlZmluaXRlIGludGVncmFsLiBmICggeCApID0gMS82eA0KDQpUbyBkZXRlcm1pbmUgd2hldGhlciBcKCBmKHgpID0gXGZyYWN7MX17Nnh9IFwpIGlzIGEgcHJvYmFiaWxpdHkgZGVuc2l0eSBmdW5jdGlvbiAoUERGKSBvbiB0aGUgaW50ZXJ2YWwgXCggWzEsIGVeNl0gXCksIHdlIG5lZWQgdG8gY2hlY2sgdHdvIGNvbmRpdGlvbnM6DQoNCjEuIFRoZSBmdW5jdGlvbiBcKCBmKHgpIFwpIG11c3QgYmUgbm9uLW5lZ2F0aXZlIGZvciBhbGwgXCggeCBcKSBpbiB0aGUgaW50ZXJ2YWwuDQoyLiBUaGUgdG90YWwgYXJlYSB1bmRlciB0aGUgY3VydmUgb2YgXCggZih4KSBcKSBvdmVyIHRoZSBpbnRlcnZhbCBtdXN0IGJlIGVxdWFsIHRvIDEuDQoNCkxldCdzIGV2YWx1YXRlIHRoZXNlIGNvbmRpdGlvbnM6DQoNCjEuIE5vbi1uZWdhdGl2aXR5OiBGb3IgXCggeCBcKSBpbiB0aGUgaW50ZXJ2YWwgXCggWzEsIGVeNl0gXCksIFwoIGYoeCkgPSBcZnJhY3sxfXs2eH0gXCkgaXMgcG9zaXRpdmUgc2luY2UgYm90aCBcKCAxIFwpIGFuZCBcKCBlXjYgXCkgYXJlIHBvc2l0aXZlLCBhbmQgdGhlIGRlbm9taW5hdG9yIFwoIDZ4IFwpIGlzIHBvc2l0aXZlIGZvciBcKCB4ID4gMCBcKS4gVGhlcmVmb3JlLCBcKCBmKHgpIFwpIGlzIG5vbi1uZWdhdGl2ZSBmb3IgYWxsIFwoIHggXCkgaW4gdGhlIGludGVydmFsLg0KDQoyLiBUb3RhbCBhcmVhIHVuZGVyIHRoZSBjdXJ2ZTogV2UgbmVlZCB0byBmaW5kIHRoZSBkZWZpbml0ZSBpbnRlZ3JhbCBvZiBcKCBmKHgpIFwpIG92ZXIgdGhlIGludGVydmFsIFwoIFsxLCBlXjZdIFwpOg0KDQpcWw0KXGludF97MX1ee2VeNn0gXGZyYWN7MX17Nnh9IFwsIGR4DQpcXQ0KDQpMZXQncyBjb21wdXRlIHRoaXMgaW50ZWdyYWw6DQoNClxbDQpcaW50X3sxfV57ZV42fSBcZnJhY3sxfXs2eH0gXCwgZHggPSBcZnJhY3sxfXs2fSBcaW50X3sxfV57ZV42fSBcZnJhY3sxfXt4fSBcLCBkeCA9IFxmcmFjezF9ezZ9IFxsbih4KSBcQmlnZ3xfezF9XntlXjZ9ID0gXGZyYWN7MX17Nn0gKFxsbihlXjYpIC0gXGxuKDEpKQ0KXF0NClxbDQo9IFxmcmFjezF9ezZ9ICg2IC0gMCkgPSAxDQpcXQ0KDQpTaW5jZSB0aGUgaW50ZWdyYWwgZXZhbHVhdGVzIHRvIFwoIDEgXCksIHdoaWNoIGlzIHRoZSBkZXNpcmVkIHZhbHVlIGZvciBhIFBERiwgXCggZih4KSBcKSBpcyBpbmRlZWQgYSBwcm9iYWJpbGl0eSBkZW5zaXR5IGZ1bmN0aW9uIG9uIHRoZSBpbnRlcnZhbCBcKCBbMSwgZV42XSBcKS4NCg0KVGhlcmVmb3JlLCBcKCBmKHgpID0gXGZyYWN7MX17Nnh9IFwpIGlzIGEgdmFsaWQgcHJvYmFiaWxpdHkgZGVuc2l0eSBmdW5jdGlvbiBvbiB0aGUgaW50ZXJ2YWwgXCggWzEsIGVeNl0gXCkuDQoNCg0K