final additions to implentation