edited by richard.g