dispatcher state diagram