complete static methods