For a person who didn't write the code the ranges 0..2, 6..8 etc. are quite enigmatic. Perhaps you could introduce  meaningful names for them