suggested improvements from Philip