There might be some simplification you could do here.