removed test functions and updated interface