extend trait