update hap;