update state system