March 31, 2003

More on the rules of war

Inspired by Mark A. R. Kleiman, I've been doing some thinking about the morality of the various violations of the rules of war that Iraq is alleged to have committed. As noted before, Mark correctly identifies the two really objectionable practices:
  • Soldiers fighting dressed as civilians.
  • Raising a phony white flag in order to create an ambush.

I totally agree with him about the second practice, and my gut agrees with him about the first, but I'm not sure that the rest of me does. I've spent a fair bit of time trying to puzzle it out and I can't seem to put my finger on exactly what the problem is. I'm hoping writing it up will help me figure it out, or perhaps some reader will have an insightful opinion.

My usual practice when I'm thrashing about like this is to attempt to create a set of alternatives that seem to lie between what's acceptable and what's not acceptable and try to figure out where the bright line lies. So, bring on the hypotheticals.

First, let's stipulate that we believe that conscription isn't a violation of the rules of war. We may not approve of it on moral grounds (I'm not sure I do) but it's certainly conventional behavior so I don't think it can reasonably be considered a violation of the rules of war, at least not at the present time.

Case 1: It's not the uniforms
I think we can all agree that Iraq is being invaded and its resources are low. It's not unreasonable that the Iraqis might want to conscript all the usual suspects into the armed forces. As they're doing now, they send out the brute squads to impress all males old enough to hold a rifle--remember, old AK-47s are a drug on the market.

It's also quite plausible that, due to sanctions and whatever, they don't have enough uniforms for all these new soldiers. Conveniently, they don't really need them, because the Americans and the Brits are wearing such nice distinctive uniforms. So, Saddam Hussein issues a statement on national television.

Dear Americans. In order to resist your Imperialist Invasion, we have had to conscript all able-bodied Iraqi males. Due to a materials shortage, we have relaxed our uniform rules. Any man you see not in a US or UK uniform is an Iraqi soldier and hence a viable target.

Remember that the purpose of uniforms is to distinguish our soldiers from their soldiers and from civilians. This seems to accomplish that goal pretty effectively. One could argue that it doesn't accurately distinguish men from boys and women, but children are pretty easy to distinguish based on size and in Muslim countries women tend to dress sufficiently differently from men that this isn't a source of confusion. In any case, it doesn't seem reasonable to require that clothing manufacture be intact in order for people to defend their homeland.

So, I'm forced to say that this set of actions by Iraq would be fine. Moreover, I would argue that under these circumstances the Iraqi soldiers out of uniform would be entitled to treatment as prisoners of war. They've been announced as soldiers and they're not easily confused with civilians. They just happen to be wearing rather informal and ad hoc uniforms.

Case 2: Just a declaration
Assuming that I've sold you that the previous hypothetical is ok, let's try taking it a step further. Imagine that the government is so disorganized that they can't send the brute squad out to conscript. Instead, they just issue a proclamation that all able bodied males are now in the army and are expected to take up arms and repel the invaders. If, as is rumored, rates of personal firearm possession in Iraq are quite high, this is a pretty feasible proposition.

So, is this a problem? I don't think so so. Considering all the complaining in the blogosphere about how the Iraqis are being forced to fight at gunpoint, it doesn't seem reasonable to argue that someone is less a soldier because he doesn't have a gun to his head.

So, in this case as well, I argue that nothing wrong has been done. The "conscripts" in this case are soldiers and deserve treatment as such.

Case 3: This uniform sure is uncomfortable
Assuming that you were with me as far as Case 2, it's only a short step to Case 3. Once we've decided that any adult male is a soldier, it doesn't much matter whether he's wearing the regulation uniform or the irregular one, aka civilian clothes. So, if regular soldiers decide that their issued uniforms are uncomfortable and decide to change back into the irregular uniform, who's to complain?

Case 4: What we have now
As far as I can tell, Case 3 is different from what we have now in only one respect: No announcement has been made. Instead, Iraqi soldiers have just changed into civilian clothes and kept fighting. But does that mean that all Saddam has to do is go on Al Jazeera and announce that all Iraqis were now soldiers and everything is hunky dory? Somehow I don't think so.

Hmmm.....
This is pretty puzzling, since I seem to have gone in small steps from something that is intuitively acceptable to something that is intuitively unacceptable. That's generally a sign that one of these steps is bogus. At this point I went back through the preceding cases until I found one that activated my yuck reflex. That seems to be Case 2.

I think the problem is that Case 1 and Case 2 are similar on the surface, but in fact are quite different. In Case 1, the fact that the government is actively conscripting means that when can believe them when they say that adult males are soldiers. They may be unwilling soldiers with guns to their heads, but they are soldiers and are presumably making some attempt to kill our soldiers. In Case 2, however, the reason that the government is just making an announcement is that they can't actually force people to fight. Thus, we can't trust them when they say that such and such a group are actually soldiers--they don't have enough control over them to reliably make that assertion.

Note that I'm not claiming that the difference has anything to do with legitimate authority, only with the actual power to force people to fight. So, apparently having a gun to the soldier's heads does make a difference.

That's my tentative conclusion. If one of my readers wanted to wants to write in with their views, I'd love to hear them.

Posted by ekr at 10:23 PM | Comments (16) | TrackBack

What the heck's going on with softwood lumber?

Unless you're really paying attention or you're Canadian, you're probably only dimly aware of the dispute with Canada over softwood lumber. On the other hand, I live with a Canadian and so get to hear all about it all the time. Turns out that softwood lumber is like Canada's number one news story. We're talking an Osama bin Laden scale grievance here--and the worst part is that Americans barely even know it exists.

If you're like me and you probably assumed that it was the usual situation: American industry objects to the fact that foreign industry is undercutting it. American government responds by limiting imports or raising tariffs. American industry protected, American consumers suffer. Another victory for special interests and loss for the world at large.

Maybe, maybe not. First, a little background. The US logging industry has been complaining about Canada's cheap lumber for years. In 1996, Canada and the US signed the ( Softwood Lumber Agreement which imposed limits on export of lumber and added fees for lumber shipments above those limits. However, that agreement expired in 2001 and the US lumber industry naturally wanted to re-impose limits. The US Department of Commerce investigated and concluded that Canada was in fact dumping at below market value and imposed a countervailing duty in March 2002. The average duty is currently at about 8%. Canada has taken the dispute to the WTO, which has issued a preliminary ruling in their favor.

I've been trying to figure out what's going on here. It turns out to be pretty complicated. There are two ways in which it is alleged that Canada subsidized its lumber industry: stumpage fees and environmentally.

Stumpage Fees
In the US, wood either comes from private land and is sold on the open market or from public land in which cse it's mostly sold on the open market through auction. In Canada, 70% of the lumber comes from public land. That lumber is sold to private loggers at a stumpage rate set by the provincial government rather than by open bid. The American lumber industry claims that these stumpage fees are set too low--that is to say below market rate--and therefore constitute a subsidy.

It's really hard to tell from the outside whether the stumpage fees are really being set at below market price. If they are then this really does constitute a subsidy, which would mean that the US lumber interests have a point. My impression from reading a bunch about this issue is that the fees really are too low, but to tell you the truth, I'm way too much of a free trader to care much about this issue. If the Canadians want to sell the US lumber at below market prices, why should I complain about that? Bring on the cheap lumber!

The Environment
It turns out that there's also an environmental issue. A number of environmental groups claim that Canadian forest management practices are environmentally unsound. The accusations involve excessive clearcutting and destruction of aquatic habitats, including that for Pacific Salmon. Now, ordinarily my attitude towards an environmental subsidy would probably be the same as with any other subsidy. If the Canadians want to wreck their environment to give us cheap lumber, great! Unfortunately, a lot of this damage is allegedly happening in border ecosystems between the US and Canada. If Canada is damaging US ecosystems to sell us cheap lumber, that's another story entirely. It's not exactly cheap lumber if we're the ones paying the subsidy.

As you can probably tell, I haven't figured all this out yet. The core issue that I care about is how good the Canadian lumber industry's environmental practices really are and what impact that has on American ecosystems. There seems to be a lot of contention on that point. If any readers out there understand more about this issue than I do, I invite them to write in. It seems like we need to get this figured out before we have another Great Canadian Fishing Blockade on our hands.

Posted by ekr at 07:25 AM | Comments (14) | TrackBack

March 30, 2003

What is the RDA for uranium, anyway?

Reason has an article by Ronald Bailey on depleted uranium (DU) munitions. For those of you who haven't been paying attention, the military uses DU to make tank armor and armor piercing shells. It's 1.7 denser than lead, and so you get better penetrating power. There's been a lot of fuss about alleged toxicity due to the use of DU in the first Gulf War.

There are two potential ways in which DU might be toxic: First, it's very slightly radioactive. Second, it's a heavy metal and heavy metals are inherently toxic. Think lead or mercury poisoning.

The issue of radioactivity isn't very credible to anyone who understands much about chemistry. DU is what's left when you remove the fissionable U-235 from natural uranium. As a consequence, DU is about half as radioactive as natural uranium, so there's not much to worry about on that score.

The heavy metal issue is more worrying, since heavy metals really are toxic. However, Bailey makes a pretty convincing argument that in practice you'd have to eat a lot of DU in order to get sick. The strongest piece of evidence is that uranium miners have high exposures over long periods of time and don't seem to have major health effects. There have been a lot of claims that there are widespread birth defects and cancers in Iraq due to the use of DU munitions but according to Bailey when WHO offered to investigate Iraq refused.

Of course, it's still possible that DU has some negative health effects we haven't detected yet, but the state of the data so far doesn't seem to provide enough evidence to draw the conclusion that it's harmful.

Posted by ekr at 05:34 PM | Comments (4) | TrackBack

XEmacs Ho!

I do almost all of my work under XEmacs. So, what I really wanted was to be able to edit my weblog in XEmacs as well, rather than using Movable Type's form interface. Enter mt.el. Problem solved.

Posted by ekr at 02:43 PM | Comments (4) | TrackBack

Shaolin drunken bald guys

Spent last night watching Shaolin Drunken Monk. The movie is absurd, but it brings up an interesting math problem. In the movie, one of the members of this evil Kung Fu school is murdered by a one-armed man. From this information alone, the rest of the school knows that it's one of their old enemies: Kan. The next day, the master of the school's daughter is kidnapped. From the information that the kidnapper is bald, they conclude that it must be another old enemy: Lao Chung.

So, the question at hand is: how many enemies would you have to have in order to have a reasonable probability of two showing up on the same day--and is this consistent with being able to identify them from this little information? As usual, we'll attack this problem by heavily stylizing it and then using a ridiculous amount of math to work the stylized problem.

How many enemies are needed?
The first calculation is relatively easy to work. Say that the lifetime of the school is 30 years = 10950 days If we assume that enemies are guaranteed to arrive but are distributed independently, the chance that any given enemy will arrive on any given day are 1/10950. So, what are the chances that two enemies will arrive on the same day. This turns out to be the same problem as the famous birthday paradox, just with bigger numbers.

In order to do this computation, it's easiest to work backwards and compute the probability that no two enemies will arrive on the same day (a collision) We can then subtract this number from 1 to get the probability we're interested in. Assume that there are n enemies, numbered E1-En. We'll assign them each a day randomly, starting with E1.

No matter what day E1 shows up, no other enemies have been assigned so the probability his day is unique is 1. When E2 shows up, the probability that he's not on the day E1 is on is (10949/10950). So, the probability that no two enemies are on the same day is (10949/10950)=.9999, and the probability that two enemies on the same day is (1-.9999)=0.0001.

Similarly, when enemy E3 shows up the chance that he'll be on a different day from E1 and E2 is (10948/10950), so the total probability of non-collision is 1 x (10949/10950) x (10948/10950) = .9997, and the probability of a day collision is .0003. Note that each time we multiply the non-collision probability by a slightly smaller fraction, and the overall non-collision probability goes down pretty fast. I'm too lazy to actually do the math, but that's what computers are for, and a simple perl script does the job handily. The evil Kung Fu school needs to have 119 enemies in order to have a > 50% chance that two enemies will arrive on the same day.

Useful hint: You don't really need to go through all the math. Whenever you have n buckets being independently filled with things, you need about square root of n things in order to have a 50% chance of collision. This number isn't exact (it's the limit as n approaches infinity) but it gives the right order of magnitude, which is what we care about here. The estimate for 10,950 buckets is 104.

How much information do you need to identify enemies?
So, we now know that the Evil Kung Fu school needs to have about 119 enemies in order for the events in Shaolin Drunken Monk to be plausible. The next question is: does the evil Kung Fu school have enough information to identify the culprit?

First attempt: Information theory
Assume that each enemy is described by a single phrase, in this case "bald" and "one hand". If the the maximum length of such a phrase is 10 characters and that each character can be any letter or a space (ignoring capitalization), then the number of such phrases is 27^10 = 2*10^14. This would seem to indicate that we can easily express plenty of enemies.

Unfortunately, one of the assumption we just made is bogus. Although in theory we can express 2*10^14 identities 10 character phrases, this means that we have to accept phrases like "acbmjc eky", which aren't particularly meaningful. If we restrict ourselves to meaningful phrases the number of descriptions is a lot lower. In practice, the entropy of English is fairly low, about 1.3 bits per character. This means that a ten character phrase has about 13 bits of information in it, which means it represents about 8192 separate values. This is easily sufficient to represent the number of enemies required.

Second attempt: How many bald guys are there?
However, there's one minor detail to be considered, the actual meaning of the phrases. Not all such phrases are equally informative. There aren't a lot of one-handed men running around, but the world is full of bald guys. The rate of male pattern baldness in Asian men is about 15% for men in their 30s (prime Kung Fu ass-kicking age). So, the probability that two out of their 119 enemies whould be bald is extremely high. Add to this the fact that (at least in Kung Fu movies), most Shaolin monks seem to shave their heads (which is what Lao Chung did) and you come to the conclusion that "bald" isn't likely to be enough to identify any single enemy.

Aren't you glad you had me around to tell you that Kung Fu movies just aren't plausible?

Update:
Terence Spies points out:

enemies of shaolin temples often have bizzare characteristics (one eyed, walks on water, etc), so the remark that he is "bald" presumably says that this is his most prominent feature. Given how remarkable most enemies are, this might narrow it down considerably...
Obviously, more research is needed into the base rate of bizarre characteristics among enemies of evil Kung Fu Schools.
Posted by ekr at 09:31 AM | Comments (12) | TrackBack

March 28, 2003

Violating the rules of war for fun and profit

Mark A. R. Kleiman comments on the morality of Iraqi tactics. Mark finds two tactics particularly objectionable:
  • Soldiers fighting dressed as civilians.
  • Raising a phony white flag in order to create an ambush.

Mark says, quite correctly that:

So the two tactics Kevin picks out -- posing as civilians and phony surrender -- are precisely the two that, if employed, would destroy the basis for warfare as a rule-governed activity. They ought to be condemned, without any asterisk for homeland defense.

However, from the perspective of the perpetrators this is precisely the purpose of the exercise. The Iraqi population is currently composed of some mix of people who wish to fight against the US/UK invasion and people who do not. If the latter fraction is sufficiently large, it becomes extremely difficult for those who desire to resist to mount a successful defense. It's thus in their interest to force the rest of the population to fight, whether they want to or not. One way to do this is to directly threaten them or their families. However, this requires the resisters to constantly monitor the non-resisters to ensure that they're fighting.

A superior approach is to change the non-resisters' incentives so that resisting is their best choice. Ordinarily, non-resisters would try their best to get out of the line of fire either by clearly labelling themselves as non-combatants or (if they're soldiers) by surrendering. The deceptive strategies mentioned above make it impossible for non-resisters to do either because the attackers can't trust anyone claiming to be a noncombatant. This places the non-resisters at risk whatever their behavior. Thus, their best option may be to fight and hope to deter the attack.

I'm not saying I approve of this strategy, but I think it's a rational one for the Iraqi regime to pursue.

Posted by ekr at 09:29 PM | Comments (64) | TrackBack

Medical malpractice and correct incentives

I see from the New York Times that tort reform is stalled in the Senate (courtesy of Medpundit.) I'm having trouble deciding if this is a good or bad thing but I'm fairly certain that the issues that are being talked about are the wrong ones.

Medical malpractice lawsuits serve two purposes:

  • Compensate people who suffer negative medical outcomes.
  • Give doctors an incentive not to make mistakes.

There's no particular reason why these purposes should be served by the same mechanism and a number of good reasons why they shouldn't be. To see why, let's quickly take a look at each of these.

Compensate Victims
Suppose you go in for some kind of medical procedure and things go badly. You suffer. If you had an insurance policy that paid you for bad outcomes, you would at least get a large enough payment to compensate you for your loss. In fact, you can buy such insurance policies right now. Back when I had a job, one of the perks seemed to be this kind of "death and disability" policy. Payments in such policies are generally graded by what kind of loss you suffered: $50,000 for losing an arm, $200,000 for losing an eye, etc.

Incentivize doctors
The second purpose served by malpractice suits is to incentivize doctors to do a good job. Whenever one does any job, there are varying amounts of effort one can exert. Obviously, the patient would prefer that the doctor expend the maximum possible effort for them at all times, but the doctor also has to see other patients, so he has to make tradeoffs. Note that I'm not saying that doctors are intentionally sloppy (though surely some are), but merely that they have a lot of demands on their time and constantly have to make judgments about how much effort to put in on any given case. This isn't necessarily in the patient's interest, since the doctor's judgments may not match those the patient would wish he had made. Since a lot of what doctors do is opaque to the patient, the patient has a lot of difficulty determining if the doctor is making the desired amount of effort. This is a classic example of the principal-agent problem: you are contracting for a service from someone and want to incentivize them to behave the way you would in their position.

In this case, the general form of the solution is to arrange that doctors have a financial incentive to make sure your outcome is good. The simplest thing is just to penalize them whenever a negative outcome occurs. It's true that this isn't entirely fair, since negative outcomes occur even when a doctor puts in the appropriate amount of effort, however, it has the advantage of being much simpler than trying to determine when the doctor is really at fault. An arguably fairer solution would be to penalize doctors whenever it can be determined that they have made a mistake that lead to a negative outcome. The tricky part of any such incentive scheme is deciding: (1) under what conditions the doctors are penalized and (2) how high the penalty should be. Note that these two factors interact, since the less likely the penalty, the higher it has to be in order to provide the proper incentive. [0]


At this point, it's probably helpful to try a simple model. Let's imagine a world with only one disease, S, and only one doctor, D. S has a single treatment, T, which must be performed by D. T can either be done well (TW, which takes 1 hour) or badly (TB, which takes 30 minutes). With TW, the patient has a 100% chance of recovery. With TB, the patient has a 10% chance of serious consequences which will require $100,000 of treatment to fix. If we assume D works 10 hours a day, he can do 10 TWs or 20 TBs. Patients pay $1000 for treatment and being cured is worth $1000.

The next two tables show the social welfare results he administers all TW or all TB.

Table 1: Social welfare if TW is used
Agent Benefit Daily benefit
Doctor $10,00 $10,000
Patients $0 $0
Society $10,000 $10,000

Table 2: Social welfare if TB is used
Agent Benefit (good outcomes) Benefit (bad outcomes) Daily benefit
Doctor $18,000 $2,000 $20,000
Patients $0 -$200,000 -$200,000
Society $18,000 -$198,000 -$180,000

It's pretty clear that all other things being equal D has an incentive to do TB only. He thus makes $20,000 day. On average, two patients a day will suffer a negative outcome, for a total cost of $200,000/day. This isn't good, since total social welfare is -$180,000/day, as shown above. The problem is that the doctor doesn't suffer any consequences from bad outcomes, so he has no incentive to avoid them. That's easy to fix, though: we just fine the doctor $5,001 for each bad outcome. For convenience, assume we give it to the patients. If D still chooses TB, we get the following table.

Table 3: Effect of penalty for bad outcomes
Agent Benefit (good outcomes) Benefit (bad outcomes) Daily benefit
Doctor $18,000 -$8002 $9,998
Patients $0 -$189,998 -$189,998
Society $18,000 -$198,000 -$180,000

Note that we haven't improved societal welfare at all, because we're just transferring money from doctors to patients. However, we've suddenly made it uneconomical for the doctor to choose TB; he could make $10,000 a day safely just by always administering TW. So, that's presumably what he does, which does increase social welfare, as we saw in Table 1.

The important thing to realize at this point is that the incentive structure that's necessary in order to properly compensate victims is almost completely unrelated to the incentive structure required to properly incentivize doctors. With the particular set of payoffs we listed here, it's possible to incentivize doctors to make the efficient choice while not coming even remotely close to compensating patients for their losses. With other sets of assumptions it may be necessary to have penalties far greater than that required to make victims whole (hint: assume that only a small number of negative outcomes actually result in penalties).

In this particular case, we could arrange that patients are fully compensated simply by increasing the penalties that doctors pay full compensation ($100,000) for bad outcomes. However, that's not always possible. Consider a minor variant of the above scenario. The post-TB bad outcome is some delayed set of problems that again require $100,000 to fix. The syndrome also arises spontaneously in 1% of the population. (This isn't a particularly radical notion. Consider how many drugs have headaches and nauseau as listed side effects and how many people have those symptoms naturally.) Now, even if the doctor uses TW, which we know doesn't cause the syndrome, some patients will still suffer. This gives us a new table, shown below. Notice that the last column now represents 10 days in order to show the effect of the 1% outcome.

Table 4: Treatment TW plus bad luck
Agent Benefit (good outcomes) Benefit (bad outcomes) benefit for 10 days
Doctor $99,000 -$99,000 $0
Patients $0 $99,000 $99,000
Society $99,000 -$99,000 $99,000

We've now made it completely unprofitable for doctors to provide treatment, since the base rate of illness + compensation is just sufficient to wipe out any profit they might have made. The problem here is that doctors are being forced to compensate people who would have been ill anyway. Those patients are now $99,000 in the black (they paid $1000 for $100,000 worth of treatment). With such a scheme, doctors will simply stop working entirely. At this point it's tempting to try to salvage this scheme by arguing that doctors should only be penalized when it's their fault (in this case when they used treatment TB). However, it's not always possible to detect fault. If it's not, we'll have to compensate everyone or risk leaving some legitimate victims uncompensated. In such cases, it may not be possible to design a set of payoffs that meets both the compensation and incentive goals.

The obvious solution is to use two separate mechanisms. Existing insurance mechanisms work fine for compensating victims. It would be relatively simple to expand them. Existing health insurance already bears some of the risk of negative outcomes since the insurance carrier has to pay for any additional treatment required. What's lacking is a standard mechanism to compensate patients. That could be easily added to existing insurance policies.

Once we've decoupled doctor's incentives from victim compensation, we have a large amount of flexibility to design an appropriate incentive scheme. There are a number of options available for incentivizing doctors, ranging from public censure to fines and even imprisonment for cases of true negligence. Getting the incentives right is tricky, of course, but it is vastly easier if we don't somehow have to compensate victims at the same time. In any case, it's important that any system for incentivizing doctors not be run by doctors themselves. Their incentive to agree (either explicitly or tacitly) not to punish each other is just too large.

The introduction of fines does raise an interesting question: where do the fines go? They could of course just go to the state, but my friend Kevin Dick suggests a more elegant solution: use them to partially subsidize health insurance payments.

Current "tort reform" seems to focus almost entirely on limiting the damages that victims can collect. Typical limits seem to be $250,000 or $500,000. I don't know whether these are the right limits for doctors but in light of the standard "value of life" numbers, but in light of the standard "value of life" numbers I'm pretty confident that they're too low to properly compensate victims.


[0] Gary Becker has done extensive work on the related problem on setting punishment rates and intensities for optimal crime rates. I haven't yet tried to adapt the math to this case, but I suspect that the basic analysis is quite similar. Check out Becker's The Economic Approach to Human Behavior

Update (9:16 AM):
Added final paragraph about current tort reform.

Update (March 29, 19:53):
Ravi Nanavati points out that the original version of the last example (in which treatment TW has a 1% failure rate) actually is an example where the treatment is inefficient and so the outcome is correct. I've modified this to be an example where the syndrome can arise independently of treatment. I believe that this fixes the argument.

Posted by ekr at 07:51 AM | Comments (58) | TrackBack

March 27, 2003

I wouldn't fight if you held a gun to my head... Wait, let me think about that.

As I mentioned previously, during the defense of Stalingrad the Soviets were forced to use increasingly harsh measures to stem desertion. Now, Daniel Drezner reports that the Iraqis are forcing conscripts to fight at gunpoint. I'm not sure what this means in terms of prognosis or what we can do to work around it without killing a lot of basically innocent people.
Posted by ekr at 01:06 PM | Comments (1) | TrackBack

March 26, 2003

Is Baghdad going to be like Stalingrad?

Mark A. R. Kleiman rightly points out that if we're going to talk about how Saddam Hussein is Stalinist we ought to consider the possibility that the Iraqis will defend Baghdad the same way that the Russians defended Stalingrad. (For those who don't know, the Russians conducted a scorched earth defense of Stalingrad over the course of six months and ultimately encircled and more or less destroyed the German forces.)

As it happens, I just finished reading Anthony Beevor's fine history of the Stalingrad campaign. Although there are certain similarities between The current situation and Stalingrad (primarily that SH is a murderous dictator with a cult of personality), there are also a number of factors that lead me to be cautiously optimistic.

The logistics problem isn't as bad

Ultimately what defeated the Germans at Stalingrad was bad logistics. It's a long way from Germany to the Volga and the Germans just weren't prepared to supply their troops properly. Thus, the Germans were cold and starving. We don't really have that problem. Our logistical tail is shorter and our supply technology is a lot better. It may be a bit painful but we shouldn't really have any trouble supplying our troops.

Baghdad doesn't really have any reinforcements

During the siege of Stalingrad, and especially during the final battle, the Soviets were able to draw on resources from outside Stalingrad. Towards the end, German air cover was essentially nonexistent (that logistics problem again) and the Soviet troops were able to operate more or less freely. That's not likely to happen in Iraq, where we maintain pretty much complete air superiority.

We're nicer

The Soviet Union had a terrible desertion problem at Stalingrad. The way that Stalin dealt with it was essentially by ordering summary execution for anyone who was suspected of any kind of shirking. Even so, large numbers of Soviet troops defected to the German side, despite the German's well-deserved reputation for not treating Russian defectors and POWs very well. By contrast, we generally treat POWs pretty well. If we can manage to sell the average Iraqi on that, we should be in pretty good shape.

Of course, the flip side of this argument is that the Germans were prepared to inflict truly horrific casualties on everyone in Stalingrad, civilians included. The rules of engagement we've adopted don't make life anywhere near as unpleasant for the inhabitants of Baghdad. The standard operating procedure when you're laying siege to somewhere is to starve out the inhabitants. Are we prepared to do that with Baghdad? Doubtful. It's not even clear it would really serve our purposes, since it would surely alienate most of the rest of the world.

Posted by ekr at 06:36 PM | Comments (53)

News flash: face recognition techniques suck less

The results of the Face Recognition Vendor Test 2002 are out, and although the spin in the news is good, the results are actually pretty bad. The systems were tested for a number of different tasks, but they're not really acceptable for any of them.

Identity Verification

The most straightforward application is identity verification, in which the system is asked "is this person who they claim to be?" This is analogous to the ticket agent at the airport asking to see your photo ID. There are two ways the system can go wrong in this scenario.
  • Fail to verify someone who is actually correct--this is called a false reject. The flip side of this measurement is the percentage of people who are accepted, the verification rate.
  • Accept someone's identity when they're the wrong person--this is called a false accept.

To some extent, it's possible to trade off these two kinds of errors. Face "closeness" is actually a continuous quantity and so where we set the threshhold for a match controls how many of each type of error we get. It's traditional in testing tasks to report the error probability when the rates are set equal (called the crossover error rate), but for access control applications you generally want the false accept rate to be very low, since accepting someone who is unauthorized is very bad, whereas delaying or rejecting someone who is legitimate isn't so bad.

In these tests, the numbers that were widely reported were for false accept settings of 1%. At this level, the verification rate was 90%, which means that the false reject rate was 10%. That's not very good. You certainly couldn't run an automated access control application that rejected 10% of legitimate users. No work would ever get done.

Identification

The second task was trying to match an image to a list of known people in a database. Performance here is just terrible, and degrades with larger databases. With a database of 37,437 people, the best system got identitication right 73% of the time, and couldn't even get it to within 50 people more than 87% of the time. Even with a database of only 800 people, only 85% of people could be identified.

The only good news here is that it's not at all clear what use the identification task is in the real world, so the fact that the systems are so useless on it may not matter.

Watch List

The final task is to determine whether or not someone is a small watch list. The idea is that you'd have a list of known terrorists (Osama bin Laden, Carlos the Jackal, Glenn Reynolds,...) along with pictures and you'd want to detect and detain them. The system is supposed to detect that a given individual is on the watch list and identify them. Again, we have a tradeoff between detection and identification rate (I wonder if it's easier to just say "this person is on the watch list, but I'm not sure who") and false alarm rate. At false alarm rates of 1%, the detection and identification rate is pretty lousy: 77% for a watch list of 25 people going down to 56% with a watch list of 3000.

This all sounds pretty bad, but you haven't heard the half of it. As we say here at EG, "do the math". Say you're at some detection station at the airport and 100,025 people pass through a day. Say you're unusually unlucky and all 25 people on your watch list of 25 pass through some time during the day. You'll detain about 1% of the non-terrorist population (1000 people), plus 77% (19) of the terrorists. With a known innocent to terrorist ratio of 50 to 1, how much effort will you really be able to put in searching all those people who your face recognition system flagged? Answer, next to none.

Oh, and I must have forgotten to mention, this is all best case performance. No attempt was made to measure error rates for people wearing disguises. However, the fact that error rates increase dramatically for different lighting and poses suggests that it's pretty easy to make a working disguise.


The bottom line here is that while this is impressive work in some abstract sense, it's hard to see it being practically useful in its current state. news.com spins this result as showing that this generation of technology as a big improvement and it does seem to be a lot better than the last generation, but that doesn't mean it doesn't still suck. It just sucks less.

Update:
I just realized what the "Identification" application is for--identifying people from photos for intelligence and law enforcement applications. If the computer can narrow the scope then humans can do the final selection.

Posted by ekr at 09:40 AM | Comments (68)

March 25, 2003

Does anyone NOT know about these bugs???

It's getting less and less attractive to send bug reports to CERT--the network security coordination center. For years people have been complaining that CERT sat on bug reports for a long time rather than releasing them, allowing vendors to stall rather than release fixes. That's why the full disclosure lists such as bugtraq were created in the first place. Unfortunately, it now appears that stuff kept to CERT isn't even secret. Someone calling themselves Hack4Life has stolen a bunch of security advisories from CERT and published them on the net.

This is really unfortunate. Remember that the rationale for CERT is to allow people to report vulnerabilities and then give vendors time to build patches before the bugs are publicly announced. In my opinion, this is a good thing, when executed correctly. Unfortunately, executed correctly means that the bugs are kept secret until patches are available. If they're just going to be posted to bugtraq anyway, the discoverer might as well do it themselves and get the credit.

Can this be fixed? Based on the article CERT doesn't seem too concerned about closing whatever procedural hole allowed this stuff to be released. That's not encouraging.

Posted by ekr at 09:26 AM | Comments (12)

March 24, 2003

Source code for WebDAV/IIS exploit released

A security consultant named Rafael Nunez has just released an exploit for the WebDAV/IIS 5.0 bug announced March 14. Exploits had been circulating in the hacker community but Nunez posted the source code to several public mailing lists, which makes life easier for other people who want to use the bug, as well as making it available to other people who didn't already have it. I'd expect to see a worm based on this bug in the wild fairly shortly. Time to patch if you haven't already.
Posted by ekr at 11:36 PM | Comments (14)

How much is your life worth?

Remember that I said that estimates of the value of a human life vary quite a bit. Unfortunately, all sorts of analyses depend on knowing this number to some precision. Say, for instance, that we're considering spending $500 million on some measure that would save 100 lives a year. If the value of a life is >$5 million then it's worth doing. Otherwise, it's not.

The most recent Science has an article about this. Apparently the Environmental Protection Agency (EPA) used one set of studies to decide on a value of $6 million. The Office of Information and Regulatory Affairs (OIRA) branch of the Office of Management of the Budget (OMB) wants them to use a different standard of $3.7 million. But because the EPA uses cost/benefit analysis to decide whether to make various kinds of regulations, this means that they would make fewer rules, which would be attractive to the White House, which is in favor of less regulation.

To understand what's going on, you have to understand how one computes the value of a human life. You can't just ask someone "how much would I have to pay you to kill you?" because, well, it doesn't much matter how much money I have if I'm dead. Instead, you try to ask the question "How much would I have to pay you to increase your risk of death by x%?" and then Divide payment by risk to produce the total value of a life. [0] Getting the value of a given risk is typically done in one of two ways. One approach is to to just ask people the question via a survey. The second approach is to examine people in high-risk jobs to see how much of a "risk premium" they are being paid.

OIRA's objection is that the wage studies are biased because workers value their lives more than the general population. This isn't totally implausible, since the employed typically have more money and so may value additional money less. When you just use surveys, you get a cost of life of $3.7 million, which supports this claim somewhat. On the other hand, revealed preference studies such as those on high-risk jobs are often considered more likely to reveal people's true values because surveys require people to speculate on their preferences.

OIRA's argument is rendered substantially less convincing by the fact that they also want EPA to adjust its practices in several other ways, all of which would result in less regulation. In particular, OIRA wants EPA to use a higher discount rate (effectively increasing the computed cost of any regulation), value the lives of older people less highly, and measure quality of life as well as well as just death rate. Taken individually, all of these changes are at least potentially plausible, but the fact that they all have the effect of making environmental regulation look less cost-effective makes one wonder if OIRA is fishing for a specific result.

[0] It's of course arguable that just because someone is willing to take a $1 payment for a 1 in a million risk they won't take $500,000 for a one in two risk. However, the risks we're interested in measuring are typically pretty small so it seems reasonable to assume that risk valuation is linear over the relevant range.

Posted by ekr at 10:09 PM | Comments (16)

Intel to protect us from distributed denial of service... not.

Old economics joke:
A physicist, an engineer and an economist are lost on a deserted island. Naturally they're starving and then one day a crate of canned food washes up. The engineer suggests that they take the can to the top of a cliff and drop it, but the physicist complains that then the food will spill out all over the sand. He suggests that they use the engineer's glasses to focus sunlight on the can and melt the solder. The whole time the econonomist is looking at them like they're complete idiots. When they're done talking he says "Why don't you just assume you have a can opener?"
Friday's New Scientist has an article about Intel coming up with a way to prevent distributed denial of service (DDoS) attacks on the Internet. The basic idea behind a DDoS attack is simple: a bunch of computers gang up on a single victim computer. The attackers each send the victim a large number of messages each of which causes it to consume a modest amount of resources (such as memory, CPU, network capacity, etc.) Together, all the attacking computers are able to consume enough resources to crowd out legitimate users.

Generally, the attacking computers are themselves victims. A single attacker will break into a large number of computers, often by releasing a virus or worm. The worm installs a small program on the victim computer, turning it into a zombie. Then, when he wants to attack some victim, he simply contacts each zombie and tells them which computer to attack.

This approach has a number of advantages from the attacker's perspective. First, it allows him to greatly amplify his capabilities. Once activated, the zombies attack the victims directly. Thus, an attacker who might have only a modem or ISDN line can send megabits worth of attack traffic to some victim. Second, it's very difficult to trace a DDoS attack back to the actual attacker. It's of course quite easy to identify the zombies, but it's almost impossible to trace back to the actual attacker.

Obviously, the above issues are disadvantages from the victim's perspective. Faced with the difficulty of finding the actual attacker, defense against DDoS has focused on suppressing the attack traffic from the zombies. There's been quite a bit of work on this front, e.g. by Stefan Savage, Steve Bellovin, and Robert Malan. The basic idea behind all of these approaches is essentially the same, though the implementation varies a bit: figure out where the abusive traffic is coming from and arrange to install filters, hopefully as close to the source(s) as possible.

One problem with all of these approaches is the network links that the abusive traffic are coming from are most likely under someone else's control. Thus, you need some way to tell the routers to install filters. This method has to be automatic (for fast response) and secure (to prevent some attacker from shutting off all your traffic). Distributed authentication on the Internet is always a pretty difficult problem and distributed authorization even moreso (I'll have a lot to say about this later). The canonical approach is to issue everyone on the Internet a digital certificate which they can use to prove their identity. Unfortunately, this has turned out to be a bit of a deployment nightmare. Any security system which depends on universal certificates is generally received with skepticism.

So, what's Intel's brilliant new idea? Use certificates to authenticate the suppression messages. I'd call this assuming you have a can opener.

Posted by ekr at 02:52 PM | Comments (47)

March 23, 2003

Not holding my breath for the Xbox cracking project

Someone is trying to brute force an Xbox signing key. The background here is that Xbox executables are signed with a 2048-bit RSA key. The Xbox unit verifies the signature before it will run an executable. If you had the signing key--which is not required to do the verification--you could make arbitrary executables and get them to run on a standard Xbox. This would be of some modest use, I suppose.

The only problem is that this project is basically insane because the amount of computational power required isn't even close to what's available. Below you can find a table showing the amount of resources it would take factor RSA keys of various sizes in a year (original taken from RSA's Factoring Challenge FAQ.

Key length (bits) Machines Memory
4301trivial
760215,0004 Gb
1020342,000,000170 Gb
16201.6*10^15120 Tb

Note that this table only goes to 1620 bits and the resources required are completely prohibitive. A 2048-bit key will be much harder.

The bottom line here is that this project has essentially no chance of success. It's entirely possible that some new factoring technique will be discovered which will bring 2048-bit keys into the realm of possibility, but just throwing more computing power at it is not going to work.

Posted by ekr at 03:59 PM | Comments (17)

March 22, 2003

What causes peanut allergies?

With all the press over treatment for peanut allergies, this report seems to have been widely overlooked. Essentially, what the authors found is that the use of peanut-based creams on childhood rashes seems to be a significant risk factor for development of peanut allergy. However, it's hard to tell how serious the risk is because the data is pretty noisy (odds ratio=7.49, 95% confidence interval=1.71-32.8).

The bottom line here is that peanut allergies, though rare, are really serious, and the best available treatment (just discovered) doesn't really work that well. It would be a lot better if we could prevent them in the first place. With any luck, this sort of work will point the way.

Posted by ekr at 11:20 PM | Comments (49)

Death by taxes

A reader writes in to ask me whether the argument I made below about civilian deaths due to spending money on wars applies to money extracted from taxpayers in general. That's a more difficult question since it depends on what the government does with that money. Say, for instance, there's some risk that has a 1 in a million chance of killing any given person and the government extracts $1 from each of us to prevent that risk. That's pretty much a wash.

In practice, of course, taxes often introduce a fair amount of inefficency through waste and market distortion. For instance, the government might waste 10% of the money it extracted in taxes through bad decisions, fraud, etc., in which case you could argue that it had killed people. But the flip side of that argument is that maybe there's some market failure that's preventing people from making good risk/cost tradeoffs (this is pretty common with vaccines) so the government can save lives for pennies on the dollar.

The war case is pretty much unique. We're basically spending money on digging big holes in the ground using explosives, so the money spent on that enterprise is pretty much completely lost.

Posted by ekr at 01:36 PM | Comments (12)

Why is noone talking about civilian casualties?

What's amazing to me about the media coverage of the current Iraq conflict is how little attention has been paid to civilian casualties. I know what you're about to say... "Is this guy nuts? The media's been all over this issue." But what I'm talking about isn't Iraqi civilian casualties, but American civilian casualties.

Just because Iraq isn't sending cruise missiles over to American cities doesn't mean that American civilians aren't dying in this war. War is really expensive. That money has to come from somewhere, and in this case it's coming from the American taxpayers. If the taxpayers had that money themselves they'd use it for other things. One thing they might use it for is to take measures to increase their safety. Since that money is now being used to blow stuff up, it's not being used to increase taxpayer safety.

It's worth asking how large this effect is. Estimates for this war are all over the map, but $100 billion is the round number that people have been tossing around. The estimates for how much people are willing to spend to increase safety are all over the map, but the range is about $300,000-$25 million per life saved. The canonical number that planners use is $1 million/life saved. Dividing out, we can see that statistically speaking somewhere between 4000 and 100,000 American civilians are going to die as a result of this war.

A corollary of this observation is that all that expensive high-tech weaponry we're using is killing American civilians. So, when you read that we dropped $20 million worth of smart bombs on Iraq, mentally translate that to "we just killed 20 American civilians to blow up that target". One reason we're spending so much is that we're trying to avoid all the civilian casualties we used to incur with the old dumb weaponry. I have no idea how many American civilians are being killed in order to save the lives of Iraqi civilians, but the number is surely nonzero and could easily be pretty large.

None of this should be taken as an argument for or against the war. Every decision one makes has costs and benefits. However, it's impossible to make rational decisions without first understanding what those costs and benefits are.

Posted by ekr at 01:16 PM | Comments (89)

March 21, 2003

Psychology of bad decisions

The fact that humans have such a hard time making rational decisions has a number of interesting theoretical and practical implications. One of these is that if you understand what sorts of mistakes people are likely make you can exploit it for your advantage. Salesman and advertisers do this all the time, of course. The classic book on this topic is Cialdini's Influence: The Psychology of Persuasion, which is equal parts a manual on how to con people and advice on how to avoid being conned.
Posted by ekr at 10:34 AM | Comments (16)

What Canadian customs can teach us about rational behavior

Humans are terrible at making rational decisions. Anyone who's spent much time with me has heard me go on about this point, but it's an important one. In fact, 2002's Nobel Prize in Economics was awarded to Kahneman and Smith in part for showing just how bad we are at it. (Kahneman did most of his work with Amos Tversky, but Tversky died before the prize was awarded.) The economics and psychology literature is full of examples of humans making completely irrational decisions.

Take for example the sunk cost fallacy. This phenomenon occurs all the time on large development projects. At the beginning of the project you estimate that it will cost $1 million, which seems like a good deal, since the expected value of the end product is $2 million. $1 million later, you realize that you've badly underestimated the scope of the project and it's going to cost $5 million to finish. If you'd known that upfront you would never have signed up but now you're committed to the tune of $1 million and so you hand over the $5 mil. This is a bad decision. Even if the project succeeds for a mere $5 million, you're $4 million in the hole at the end of it, whereas you would have been only $1 million in the hole if you'd just cut your losses.

It's also possible to make the opposite mistake. Let's take the same example, except that this time the overrun is only $1.5 million. Now, it's pretty natural to say "I was only willing to pay $2 million, but this project is going to cost me $2.5 million. The hell with that, I won't pay". This is wrong too. At the time you have to make the decision you're down $1 million. You're being offered the chance to be down $0.5 million (you've paid $2.5 million for something that was only worth $2 million). This isn't good, but it's an improvement over being down $1 million.

The principle in both cases is the same: only marginal costs matter. When deciding whether to take some action, the only thing that matters is the cost and benefit of the action itself, not how much money you might or might not have sunk into the project already. The one exception to this case is when the amounts of money start to become large enough that they're significant fractions of your discretionary income. It doesn't do you any good to know that an additional $2 million would end up reducing your losses by $0.5 million when you don't have that $2 million on the first place.

All this stuff is motherhood and apple pie to economists, of course, but in practice people make this kind of mistake all the time. The worst part is that it happens even to people who know better. Case in point: Over the Christmas holiday my SO and I drove into Canada to visit her parents. We brought about $150 worth of wine as a present. At the border we were informed that we would need to pay $80 in duties. This was pretty annoying and I spent about 10 minutes agonizing over whether or not to pay it. Objectively, this was insane. $80 is a relatively small amount of money and we know for a fact that having the wine was worth $80 to me, because I'd already paid $150 for it! So, why was I stalling?

The really bad news here is that knowing in the abstract sense what the right thing to do doesn't necessarily make you feel any better about it. People's instincts are neither rational nor, apparently, that affected by rational analysis. I'll have a lot more to say on this and related topics in the future.

Posted by ekr at 08:55 AM | Comments (149)

March 18, 2003

Does the public care whether we torture suspected terrorists?

The question of whether torture is acceptable has been occupying commentators lately. Most of the discussion seems to be the usual agonizing about ticking time bombs, kidnap victims, etc. However, if American television is any guide, in reality standards are pretty different. Go and watch any cop show (NYPD Blue, Law and Order, etc.) and you'll see police being portrayed using methods I would call torture on a pretty regular basis. For instance:
  • Pushing the suspect around.
  • Pointing guns in the suspect's face and threatening to shoot him.
  • Threatening to send him to Ryker's Island and label him a snitch or child molestor so that he'll be brutalized.
  • The ever popular leaving the suspect alone in the room with someone who acts like they're going to beat him up or in fact actually strikes him.

Two things are striking about these programs. First, the portrayal of this kind of pressure is almost entirely positive. In many cases it's standard institutional policy and even when it's not authorized procedure, the remaining characters are portrayed as being aware of the practice and winking at it. Even in the most extreme cases when the officers are clearly violating the suspect's rights, the remaining characters just stop the abuse. It's extremely rare to see the offending character suffer any consequences.

Second, the threshold for pressuring suspects turns out to be incredibly low. In discussions of the ethics of torture the scenarios usually involve attempts to prevent some imminent crime, find a ticking bomb or kidnap victim or whatever. However, what's shown in televisions rather different. In all the cases I mentioned above the suspects were being pressured to elicit a confession or to get them to testify against someone else, which strikes me as a considerably less pressing goal.

Now, I don't know whether American police actually do any of these things (though the amazing abuses reported in the brutality cases that make the news suggests that rough methods are employed relatively commonly) and for our purposes it doesn't really matter. Most middle class Americans have far more contact with police through TV dramas than they ever will in person.

So, what conclusion should we draw? I'm not saying that just because Americans watch the police beating up suspects they endorse that practice. Otherwise we'd have to conclude from the popularity of the Sopranos that they thought being a mobster was fine. On the other hand, these are clearly supposed to be realistic shows and so I think it's reasonable to conclude that viewers think that the police actually use substantial pressure for this kind of trivial reason and are more or less OK with that. Is it any surprise then that the US government thinks it's ok to abuse suspects in order to extract information?

Posted by ekr at 10:25 AM | Comments (12)

March 17, 2003

Patents on anti-HIV drugs

Larry Kramer writes to complain about the price of anti-HIV drugs. Here's the money graf.
It is incumbent upon every manufacturer of every anti-H.I.V. drug to people. Almost every such drug on the market -- there are some 18 effective drugs -- has already more than paid for its development in spades, and also earned millions of dollars in additional profit for its makers.

If you're economically minded, the obvious thing to do is to try to build a simple model. Let's assume that there are three types of people suffering from HIV, Rich, Middle, and Poor (denoted by R, M, and P) and that there are nR, nM, and nP of each type of person. Rs are willing to pay up to 100,000/year for anti-HIV drugs, Ms are willing to pay up to $10,000/year for anti-HIV drugs. Ps are willing to pay up to $500/year. At the moment, drugs cost roughly $20,000/year and so only Rs buy them.

So, what happens if the patents on anti-HIV drugs go away? We start to get generic production of he drugs and the price gets driven down roughly to the marginal cost of production. As I understand it the nominal price is roughly $500/year (you didn't think those numbers above were chosen at andom did you?) The result is that now Ms and Ps buy the drugs as well. The result is shown in the table below (for simplicity we're pretending that the current drug manufacturers end up owning the entire market but at a reduced price).

Person type Benefit/person ($) Total benefit
R 19500 19500*nR
M 9500 9500*nM
P 0 0
Drug manufacturers - -19500*nR
Total social welfare - 9500*nR

So, in this case, removing the patents has two results. First, it's a $19500*nR transfer payment from the drug companies to Rs. From a cost/benefit perspective, this is a no-op, since it's a simple transfer payment. However, lowering the price to $500 removes the deadweight loss of all those Ms who couldn't previously afford the drug but can now. Note, however, that the situation for Ps hasn't improved at all, since they can now afford to buy drugs but the price is exactly at their indifference price. (If you like, pretend that their indifference price is epsilon over the market price.) Removing the deadweight loss is a good thing since it increases total societal welfare.

On the other hand, just because something is a good thing, it doesn't necessarily follow that the drug companies should pay for it, which is what Kramer's argument seems to assume. Suppose instead that the US Government were to use tax money to buy out the drug patents. For convenience, assume a head tax and that the population of the US is nUS. This produces the result below.

Person type Benefit/person ($) Total benefit
R 19500 19500*nR
M 9500 9500*nM
P 0 0
Drug manufacturers 0 0
Taxpayers -19500*(nR/nUS) -19500*nR
Total social welfare - 9500*nR

As you can see, total welfare is the same under this scheme as it was under the previous scheme. The only thing that's changed is that we've replaced a large transfer payment from the drug companies with a large transfer payment from the taxpayers. The point here is that the argument isn't about whether cheap anti-HIV drugs are a good thing. Of course it is. The question is who ought to pay for it.

Food is a good thing too, and there are certainly people who are starving, but the way we solve this problem is by buying food and giving it to them, not expecting (or requiring) Safeway to give it to them for free. So, is this case any different? Kramer makes a weak stab at arguing that it is, on the grounds that the taxpayers contributed to the development of the drugs I don't find this argument very convincing. The taxpayers also funded a lot of our food production via agriculture subsidies, but, as I said earlier, we don't use this argument as to why we should get our food for free.

What is different about this situation is that patents make the price disparity between the marginal cost of production and the current price especially high, and thus the deadweight loss is very high. That makes for a great opportunity to increase social welfare but doesn't dictate who should carry the load.

Posted by ekr at 01:12 PM | Comments (0)