update IO