update much better

code func