final exercise completed with examples