diagram improved