added in-depth example