adjust function signatures to interface