state diagram update