+1. Like the implementation being split into 3 small cohesive functions :). Easier to read.