new implementations to database lib