added some function modifiers