declaration global functions