added function type, and add geometric multiple
sum more werds