added database and interfaces