Why does this abstract static method return None