These if/else blocks are coded very nicely, but it would help if they had some extra comments indicating what each block was checking for