new way to use default functions, minor fixes