Consider rewriting for better reading