Commented on structure; fixed indent levels for clarity