Field

What a camera does

A camera is three functions of wavelength collapsing a spectrum onto three numbers, which is what an eye is — and they are different three functions. Everything a photograph can and cannot establish about colour follows from that, and from the fact that silicon sees three hundred nanometres past where anybody is looking.

52 essays. Read in order: Capture.

A camera's spectral sensitivities, after the infrared-cut filter. Silicon quantum efficiency times the colour-filter dye times the infrared-cut filter, per channel, on a grid running to 1100 nm rather than to 780. With the filter removed, 68 per cent of the area under the three curves lies beyond the visible band, and all three curves are the same curve out there.

A camera is a fourth observer

part 1
Everything between the photons and the picture, and what each stage decides. The 8 stages of a camera pipeline. Only the second is physics; every one after it is a decision somebody made, and the reason two cameras pointed at the same scene disagree is that they made different ones.

Raw is not a picture

part 1
The blue channel, as the three things multiplied to make it. Silicon's quantum efficiency, the colour-filter dye's transmittance, and their product. The dye is the only stage carrying any colour information and it is clear above about 800 nm — transmittance 0.92 at 900 nm against 0.06 at 550.

Silicon sees past the visible

part 2
How much of what an unfiltered sensor records is invisible. The share of a camera's raw signal coming from beyond 780 nm, against the colour temperature of the lamp, for one surface with a near-infrared reflectance of 0.62. Without the filter it runs from 98 per cent at 2000 K to 51 at 9000; with it, under five per cent everywhere.

The filter that makes colour possible

part 2
One reflectance, four different infrared tails, and what the camera makes of each. The same visible reflectance continued past 780 nm to four different near-infrared values. A spectrophotometer reports only the left-hand part; an unfiltered sensor integrates all of it. The channel spread falls from 0.14 at a tail of 0.05 to 0.02 at 0.85, with nothing about the visible half changed.

Most things are pale in the infrared

part 3
A silicon sensor's best possible impersonation of the standard observer. The 1931 matching functions in outline, and the closest linear combination of the sensor's three sensitivities laid over them; underneath, what is left over at each wavelength. The residual is 31.7 per cent of the matching functions' own magnitude, worst at 440 nm. Colour reproduction is exact if and only if this is zero.

Luther said when it would work

part 2
Two reflectances the camera records as identical. Constructed by projecting onto the null space of the sensor's own sensitivities, so the two raw triples agree to 0.0000 per cent. To the eye they are ΔE00 15.33 apart, which the swatches show.

The camera has its own metamers

part 3
A camera profile is a fit, and the sample set is a hidden argument to it. Per-surface ΔE00 after the best 3 × 3 from raw to XYZ, fitted on 12 surfaces at chroma 0.2 and tested twice: on those same surfaces (mean 0.65) and on 12 at chroma 0.9 (mean 1.75). Both bars come from the same matrix; only the surfaces differ.

A camera profile is a fit

part 3
The best a camera profile can do on the surfaces it was fitted to. Per-surface ΔE00 after the best 3 × 3 from raw to XYZ, fitted on 12 surfaces at chroma 0.7 and tested on those same 12 surfaces — mean 1.45, worst 2.58. This is the most favourable measurement it is possible to make of a camera and it is the one usually published.

No matrix is right everywhere

part 4
A grey edge, reconstructed from a Bayer row, arrives coloured. Above: an achromatic step through 24 sensor sites, with green sampled on the even ones and red on the odd. Interpolating each channel separately reconstructs them from data taken on either side of the edge, so their ratio moves. Below: the resulting chroma, peaking at 144 per cent of the local mean, and 112 per cent once colour differences are interpolated instead.

A grey edge arrives coloured

part 2
Recovering the lamp from a highlight rather than from an assumption. A green scene under illuminant A. The faint curve is the true lamp; the solid one is what the interface component of the glossy surfaces recovers, which is 0.30° from it. Grey-world on the same scene is 42.1° and max-RGB 17.5°, because both are assumptions about the surfaces and a Fresnel reflection is not.

The highlight is the white balance

part 4
Correcting colour costs noise, and the two cannot both be least. Sweeping the colour matrix from its own diagonal — a white balance with no cross terms — to the full least-squares fit. Mean ΔE00 falls from 18.61 to 1.29; photon noise rises by a factor of 1.03. At 10000 photons per pixel.

Correcting colour costs noise

part 4
A clipped channel turns the hue of what is left. CIELAB hue shift against exposure for one saturated stimulus, measured against the same stimulus rendered without clipping. Nothing moves until the first channel reaches the ceiling at 0.25 stops; after that the recorded hue rotates by as much as 67 degrees, with nothing in the scene having changed colour.

A blown highlight turns

part 3
A camera's spectral sensitivities, with the filter removed. Silicon quantum efficiency times the colour-filter dye times nothing else, per channel, on a grid running to 1100 nm rather than to 780. With the filter removed, 68 per cent of the area under the three curves lies beyond the visible band, and all three curves are the same curve out there.

The grid outside every figure

part 4
Everything between the photons and the picture, and what each stage decides. The 8 stages of a camera pipeline. Only the second is physics; every one after it is a decision somebody made, and the reason two cameras pointed at the same scene disagree is that they made different ones.

A photograph is not a measurement

part 5
How wrong a camera profile is, and who it is wrong for. A colour matrix fitted against the 1931 observer, evaluated four ways. Its residual against that observer is ΔE00 0.92 — the Luther failure, which is a property of the sensor and is the honest measurement of the camera. Against a person drawn from a population of 160, the worst-off twentieth report 3.35. And a camera with no spectral error whatever, reporting the standard observer's own tristimulus values exactly, would leave 3.47. The camera is not the problem. It was fitted to somebody who does not exist, and so is the standard it was fitted against.

Fitted to an eye nobody has

part 6
The same flicker, written across the frame. A rolling shutter exposes each row of the sensor at a different moment, so a lamp that flickers above fusion is recorded as bands. There are 1.7 of them here — the readout time times the lamp's frequency, which is a camera setting and not a property of the light — spanning 2.37 stops. Held at matched luminance the lightest band and the darkest are still ΔE00 5.40 apart in colour, because the two drive currents are two spectra and the shutter caught one of each.

The shutter samples the lamp

part 6
The basis a camera balances in is a different basis for every light. A camera's white balance is a per-channel gain on raw values, which is a von Kries adaptation in whatever basis the filter dyes give it. That basis is not a property of the dyes alone: it is the dyes and the light in the room, and it moves when the light does. Each bar is how far the basis has turned, in degrees, from where it sits under D65. A sensor satisfying the Luther condition would have a bar of exactly zero on every row, because for such a sensor the light cancels — which is the one property nobody buys a sensor for.

A camera balances in another basis

part 7
Two lamps of the same colour, and one sheet that is two colours under them. The same brightened sheet under a xenon flash, the same flash behind its cover glass, and a phosphor-converted white LED of nearly the same chromaticity. Each patch is computed relative to its own lamp's white, which is what a perfect white balance does — so everything a camera can see and correct has already been removed. What is left is ΔE00 11.8 between the first and the last, against 3.2 between the two lamps themselves. The LED has no emission below 380 nanometres at all, because its pump die is at 450, so the sheet simply does not fluoresce under it and nothing in the photograph records why.

A camera cannot record the excitation

part 8
The lamps the four conditions shine, where they differ. The short-wave half of what each measurement condition puts on the sample, plotted to 560 nanometres because past that the three are indistinguishable in shape. M₁ is D50 with its ultraviolet; M₂ is the same lamp behind a cut filter at 400 nanometres, and at 360 it is 0.0 per cent of what M₁ delivers; M₀ is a tungsten lamp, which has some ultraviolet, has less than daylight, and is not specified at all by the standard — so two M₀ instruments need not agree with each other. M₃ is not plotted because its lamp is M₂'s; what makes it a fourth condition is a polariser.

The lamp that stopped emitting ultraviolet

part 6
What a camera matrix reports on its own chart, and what it delivers off it. The same camera fitted on charts of increasing chromatic range. The left bar of each pair is the mean error on the chart the matrix was fitted to, which is the number a profile comes with; the right bar is the error on a saturated set it never saw. At the thinnest chart the fit reports 0.19 ΔE00 and delivers 1.65, a factor of 8.6. The gap closes as the chart widens, and it closes because the chart improves rather than because the camera does.

The chart decides the profile

part 9
A camera matrix fitted under each light, used under each light. Mean ΔE00 over the same surfaces, with the matrix fitted under the row's light and the scene under the column's. The diagonal is what a profile's data sheet quotes and is between 1.0 and 1.2 everywhere. Off it the numbers rise steeply: the matrix fitted under illuminant A reports 1.17 there and delivers 9.34 under a 9000 K daylight, a factor of 8.0. Nothing about the camera changes between cells.

A matrix is fitted under one light

part 9
The dyes a camera has, and the dyes an adaptation basis would want. Three sensor sensitivities drawn twice: faintly, the silicon-and-filter-array set this collection models, and boldly, three Gaussian dyes chosen to make the inverse of their own response matrix a good basis for a white-balance gain. The designed dyes sit at 610, 542, 449 nm with widths of 35, 26, 30 nm — narrower and further apart than the real ones, which is what sharpening looks like when a search rather than a committee does it. They leave 0.97 ΔE00 against the real sensor's 1.62, and they are held within 0.28 of the Luther condition so that the result is still a camera.

A sensor designed for its inverse

part 10
Four cameras that all satisfy the Luther condition exactly. Four sensors whose sensitivities are linear combinations of the colour-matching functions — the theoretical ideal, satisfying the condition to machine precision, each with an adaptation basis that does not move when the light does. They differ only in which linear combination, which the condition does not constrain, and they leave 2.46, 0.97, 1.65, 2.37 ΔE00 after a white balance. The best of them reaches 0.974, which is the best any basis at all achieves. Being a perfect colorimeter costs nothing in adaptation; what costs is the mixing matrix, and the control measured here carries one nobody chose.

The condition chooses no axes

part 10
Which of a camera's three dyes each direction moves. A grid with one column per direction — stiffest on the left, flattest on the right — and one row per parameter of a camera's three dyes. Each cell's bar length is that parameter's share of that direction, so a column with one long bar is a direction that moves one thing. The stiffest column is dominated by blue centre, at a weight of 0.96. The flattest column is spread across blue width, red width, green width — a combination rather than any single number, which is why a specification listing one tolerance per parameter cannot express it.

Where a camera is blind to itself

part 11
A camera's dye widths are free under one requirement and not under another. Three panels, one per dye. In each, a pair of bars per requirement: how far that dye's centre wavelength and its bandwidth can move before the requirement gets five per cent worse. Under the adaptation objective — the one the previous round measured — every width has far more room than its centre, which is the finding that put a tolerance budget on the centres. Throughput and the colour matrix's noise gain, the two requirements that objective was said to be silent about, reach the edge of the search in every direction and hold nothing. What tightens the widths is the Luther residual, which was in the model already. The bottom pair in each panel is what survives all four.

The widths were free because nothing else was asked

part 10
What a camera's dye 1 is allowed to be, under four requirements. The plane a colour-filter dye is designed in: its centre wavelength across, its bandwidth up, both in nanometres, so the two axes are comparable and the shapes mean something. Four outlines, one per requirement, each the set of dyes within five per cent of the designed one on that requirement; the shaded region is where all four hold. Two of the four — throughput and the colour matrix's noise gain — reach the edge of the search in every direction and are invisible as boundaries. The intersection is ±6.8 nanometres of centre and ±13.3 of width, against the adaptation objective's own ±20.6 in width alone.

Two tolerances do not meet in a tolerance

part 11
How far each census row moves when the test set's own description does. A grid of bars, one row per change of light in the census and one bar in each row per number that describes the region the test surfaces are drawn from: how saturated they are, how bright, and how far the two modulations may go together. A bar's length is the elasticity — the proportional change in the published residual for a proportional change in that number. Saturation runs from 0.49 to 0.91 and brightness averages 0.104, so a test set's chroma range is nearly everything and its lightness range is nearly nothing. For scale, the largest elasticity found anywhere among this collection's five declared population widths is about a half — and those at least have declared ranges, while these three numbers have never been quoted with one.

A chart decides what a camera scores

part 11
Two sensitivities from two libraries, under every unit. Two quantities that share no code, no test set and no physical question: how much the adaptation census's residual depends on how saturated its surfaces are, and how much a camera profile's reported error depends on how saturated its test chart is. The first is a mean over fourteen changes of light built from cosine combinations; the second is one number about one silicon sensor scored on Gaussian bumps. Under the published unit they sit at 0.687 and 0.656. Across the whole menu they move together, from about 0.5 under the appearance unit to about 1.15 under plain CIELAB, staying within 12 per cent of each other at the worst point. Two numbers agreeing once is a coincidence; two curves agreeing at six points across a factor of two and a half is a shared mechanism, and the mechanism is the compression the unit applies to a chroma difference.

The coincidence was a mechanism

part 12
A camera matrix refitted to minimise each unit, rather than solved in XYZ. Every camera profile here, and as far as can be told every camera profile anybody ships, is a linear least-squares solve in XYZ. That is an objective and it is on nobody's menu: it weights a difference by how large the tristimulus values are. Each row here refits the same 3×3 by direct search to minimise one of the six units instead. The upper bar is how much better the fit gets in that unit; the lower is how far the matrix itself moves, as a relative Frobenius norm. Both matter and they do not agree: CAM16-UCS moves the matrix least, at 0.34 per cent, for the largest improvement of the six, while ΔE*94 moves it 6.8 times as far for less. A score that changes is a report changing; a matrix that changes is the camera rendering different pixels.

The objective nobody chose

part 13
What is read at each distance from the edge of a lit region. Three materials under a half-plane of light, with the boundary at the centre of the horizontal axis and the lit side on the right. The vertical axis is the radiance leaving the surface as a share of what it leaves far inside the lit region. On the unlit side the sample is emitting light while receiving none, so the ratio the model calls a reflectance has a zero denominator there. The distance over which the curve runs from a tenth to nine tenths is 0.21 millimetres on coated paper and 5.1 on pale marble — which is the width of the neighbourhood a point's colour is decided by.

A pixel has an aperture too

part 12
The collection's adaptation census, with its surfaces departed. Each row is one of the fourteen changes of light in this site's adaptation census, and the bar is what a von Kries gain leaves behind. The open marks are the published numbers; the filled ones are the same computation with every one of the hundred and twenty-five test surfaces replaced by what an instrument with an aperture, or a room with a direction in it, actually reports. Nothing moves by more than 9 per cent. A departure that does not depend on the light is very largely absorbed by the observer's own gain, because it changes the reflectance and the gain is applied afterwards. The fourth departure is not on this chart and cannot be: a fluorescent sample has a different curve under every light, so there is no set of reflectances to hand the census at all.

The chart was measured, not photographed

part 13
Each departure over forty-two surfaces rather than one. The same six departures measured over a family of forty-two analytic reflectances — an absorption band of stated centre, width and depth — with the smallest, the median, the ninety-fifth percentile and the largest marked. Every one of them spans more than a factor of three, and the ranking between them is not stable across the family: what decides a departure's size is which sample it is asked about, because a departure is a pairing and the sample is one of the two factors. Quoting any single number for what an observer's age is worth is quoting a choice of example.

The chart was measured by an observer too

part 14
The arguments a standard observer does not have. Seven choices inside a set of colour-matching functions, each with the shape it takes and what it is worth in ΔE₀₀ on a red pigment under a 6500 K radiator. Six are measurements: a field size, an age, a macular density, a cone optical density, three peak wavelengths and a rod contribution. The seventh is not — a change of basis is a change of curves and not a change of observer, and its entry is exactly zero because the space an experiment measures is what an observer is. Printing that zero beside the others is the clearest statement of what the other six are measurements of.

A sensor has no lens

part 15
Three exchanges, two of which move the colour. The documented pipeline is a white balance, a colour matrix, a tone curve and a clip. Each bar is what happens when two neighbours change places, over 30 surfaces the modelled sensor captures: the filled bar is the mean and the tick is the worst patch. Exchanging the balance and the matrix costs 9.2 colour differences at the mean and 13.2 at the worst. Exchanging the curve and the clip costs exactly nothing, and that is a theorem rather than a small number: a monotone curve onto the unit interval commutes with clamping to it.

The order is not in the documentation

part 16
Where the mosaic is filled in, along one row through an edge. A Bayer row across a step from 0.9 to 0.08, in units of the sensor's own ceiling, reconstructed in linear light and reconstructed after the tone curve, with the second undone so the two are compared at the same point in the chain. Away from the edge they agree to 8.3e-14, because a constant interpolates to itself under any curve. At the edge they differ by 5.78 colour differences. Interpolating encoded values pulls an edge towards its dark side.

One step has no choice

part 16
A hue circle through a per-channel curve. 28 colours on a circle of constant lightness 55 and chroma 38, each put through the tone curve one channel at a time and read back. The curve is a function of a single number and has no idea what hue is, and it rotates the circle by up to 4.4 degrees — largest at hue 260 — while raising chroma by a factor of 1.27 and lightness by about 1 units.

A contrast control is three controls

part 17
A stop taken in raw, and the same lightness reached afterwards. Each row is a stop of exposure applied to the raw values, against a gain applied after the whole pipeline and solved so that an eighteen per cent grey comes out at the same lightness. The two are then the same brightness by construction and differ by 4.2 colour differences at the mean and 11.1 at the worst patch. A stop is a scalar in front of the curve and is not a scalar behind it.

A stop is not a stop afterwards

part 17
The same highlight, clipped in two places. A ramp running from inside the sensor's range to 1.6 times over it, clipped at the sensor and clipped after the matrix. Below the ceiling the two are identical to the floating-point floor. Above it they part, reaching 21.0 colour differences and 78 degrees of hue. Clipping late keeps a highlight neutral and clipping early keeps its hue, and converters do both.

Two converters and one highlight

part 18
One infrared-cut filter, crossed at four angles. The transmittance of the same interference filter for light crossing it at the centre of a frame and at three steeper angles, from 560 to 760 nm. Its half-transmission edge is at 665 nm straight on and moves to 658, 646 and 630 nm, following the edge wavelength times the square root of one minus the squared sine of the angle over the square of the stack's effective index, 1.8. The deepest reds are what it takes away, and a lamp decides how much light there was in them.

The corner of the frame has another filter

part 19
A black level slightly wrong, through the balance, under daylight. A grey ramp from half a per cent to seventy-two per cent reflectance, with a pedestal error of a tenth, three tenths and one per cent of white left in all three raw channels before the white balance, against the same ramp with none. The horizontal axis is the grey's reflectance, logarithmic. At a three-tenths error a two per cent grey is 2.4 colour differences off, most of it chroma, and a seventy-two per cent grey 0.21. An equal offset in the raw channels is not equal after three different gains.

A black level is multiplied by the balance

part 19
Noise clipped at zero, averaged over a shadow, under tungsten. A grey ramp from black to ten per cent reflectance under tungsten, captured at three illustrative noise levels, with every negative raw reading set to zero before the readings are averaged over an area. Each line is the colour difference between that average and the noiseless grey. At high gain a half per cent grey is 1.04 off and a black frame 0.79; at very high gain the worst is 2.95, at 1.0 per cent. The same readings averaged before any clip come back exactly, at every level. The tint is gone once every channel sits several deviations above zero.

Clipped noise does not average away

part 20
Three corrections for the corner of a frame, each made under daylight. The mean colour difference over twenty-four coloured patches between the centre of a frame and its corner, against the angle light arrives at, after three corrections each fitted under daylight, D65 and used under it: a grey-card gain map, a correction confined to the red channel's row, and a full three-by-three matrix. All three leave the grey exact. At 25° the gain map leaves 1.86, the red row 0.93 and the matrix 0.90; at 35°, 3.81, 1.95 and 1.81. Six more numbers buy almost nothing, because the moved edge is in one channel.

A corner is corrected by one row

part 20
Two matrices blended by colour temperature, under fourteen lamps. For each lamp, with the neutral held exact as a converter holds it: the mean colour difference over twelve test surfaces with a matrix fitted under that lamp (the short bar) and with the tungsten and daylight matrices blended at the weight its correlated colour temperature gives (the long bar). Smooth lamps on or near the locus sit within 6 per cent of their own matrix. The lamps with lines or narrow bands in them sit a median of 2.2 times theirs, from 1.38 for a broadband tube to 5.2 for a three-emitter source.

Two matrices do not reach a white LED

part 20
Four ways to fill in a clipped highlight: a glossy surface with a reflection of the lamp, under tungsten. Twenty-four chart surfaces under tungsten, as a glossy surface with a reflection of the lamp, taken up a ramp until their raw channels reach the sensor's ceiling. Each line is the mean colour difference, at equal lightness, between the true colour and what one response to the clipped reading makes of it: clipping to white, carrying the clipped values through, filling the clipped channel from the surface's own ratio, and filling it from the surface's colour plus the lamp's. At 0.4, where most surfaces have one channel clipped, the four leave 5.87, 4.37, 5.56, 0.00; at 2, 2.90, 26.97, 8.18, 8.18.

Filling in a highlight is a claim about the surface

part 20
The confusion matrix, and which corner the common lamps are in. Twelve fixtures sorted two ways. Down the page is what their spectra are; across is what flicker says. The two corners on the diagonal are 7 fixtures the classifier gets right. The 3 missed are structured lamps that do not flicker — a white LED and a warm LED on constant drivers, and a three-emitter fixture — and those are the lamps most modern interiors are lit by. The 2 false alarms are smooth lamps that do flicker: a halogen lamp on mains and a tinted radiator, both of which a photograph of a room is quite likely to contain.

Flicker sorts lamps the wrong way

part 21
The statistic a converter would read, under each model. The log ratio of the two channels that are still open, against how bright the surface is, under the two models of what a highlight is. A matt surface over-exposed keeps its own ratio exactly — the line is flat, and it must be, because scaling every channel by the same amount leaves a ratio alone. A glossy surface carries a reflection of the lamp on top of its body colour, so its ratio slides towards the lamp's as the reflection strengthens: -0.086 of a log unit between a quarter of full scale and nine tenths. That slide is the whole of the evidence a converter has for choosing between them.

The converter can choose except where it matters

part 21
The four places a clamp could sit are two pipelines. Every pair of clamp positions, with the largest difference their delivered values reach over a grid of raw inputs that includes negative ones. Two of the six are exactly zero: a clamp at zero commutes with the white balance, which is a positive scale applied channel by channel, and with the tone curve, which is monotone and fixes zero. It does not commute with the colour matrix, which is the only step that mixes the channels — so the four positions collapse to two, before the matrix and after it, and no measurement of any scene can say more than which side a converter is on.

Four places to clamp are two pipelines

part 21
The same chart in two studios and in the room that holds both lamps. Each of the chart's twenty-four surfaces, with the pixels its slide needs at two standard deviations at high gain, on a logarithmic scale. Lit by a 3000 K radiator alone the worst surface needs 16,194; lit by daylight at 6500 K alone, 139,574. Lit by both, 50 and 50 per cent of the light, with a highlight of each lamp read together, the worst needs 10 and the median 6. The studios' hard surfaces sit at different places on the chart, and no surface is hard in both.

Two lamps decide what one lamp could not

part 22
How far each lamp's sensor reading is from what the camera predicts, with RGB + clear. Fourteen lamps, six smooth and eight structured, each scored by how far an ambient-light sensor with red, green, blue and clear channels reads from what the camera's white predicts through a map fitted on smooth radiators and daylights. The smooth lamps score at most 0.057 and the structured at least 0.133; the dashed line is the threshold at the gap's geometric middle, 0.087. The lights the map was fitted on score at most 0.0113. Every lamp falls on its own side of the line.

Two sensors disagree about deep red, not lines

part 22
The calibration error a narrow fourth channel survives, by where it is placed. For a red, green and blue ambient sensor with one more channel 10 nm wide, centred from 450 to 640 nm: the first calibration error at which some lamp of fourteen is misclassified. Dashed: the channel pooled into the whole residual, as the ambient sensor's disagreement was read; its best is ±1.50 per cent. Solid: the channel read on its own, as its departure from what the camera's white predicts for it; its best is ±4.0 per cent, at 450 nm. Crosses mark centres where the channel read alone does not separate the lamps at all. The two horizontal lines are the red, green and blue design (±1 per cent) and the design with a clear channel (±4 per cent).

A narrow channel has to be read on its own

part 23
Four ways to correct the corner, under each of four lamps, at 25°. The mean colour error left on the chart's coloured patches at the corner of the frame, under each lamp, after: the red row fitted under that lamp; one red row fitted on the chart under all four lamps with the grey held under daylight; a grey-card gain map calibrated under daylight; and the worst of the other lamps' rows used by mistake. daylight: 0.93, 1.33, 1.86, 4.91; tungsten: 0.99, 1.45, 1.87, 3.26; white LED: 0.36, 1.39, 3.28, 1.77; fluorescent: 0.37, 1.56, 3.09, 2.45. The pooled row holds every lamp between 1.33 and 1.56.

One row for every lamp costs the lamps that lose least

part 21

All essays