add addtup and o*