predeclarations