implemented very bsaic use case of first function