implemented simple functions