add explanation and improve naming