more function added