Note, this is just the simple-minded suggestion -- there might actually be a bug hidden here. Comments?