many functions

stuff