Yeah, it could be cleaner, yeah, there could be a few more null checks, exception handling, corner cases, but I think someone said "keep it simple" and I think I've already let that boat sail.