Got that speed thing sorted out.  Not entirely clear what's up, but I tried to make the logic flow more obvious to try and explain it.