Add update functions. ref #19