added details to functions