added external interfaces