adding more function