added generation of client