some function added