added appropriate return values