# Summary

Well done making it this far!
After going through this section, you should know that

 - decorators typically use `*args` and `**kwargs` to work with general functions;
 - decorators can preserve the metadata of the decorated function with `functools.wraps`; and
 - there is a common [decorator blueprint](./decorator-blueprint.md) that you can use as a reference when writing decorators.

Now that you've written some decorators and you're more comfortable with their syntax, you will learn how to write decorators that are more broadly useful.

---

If you have any feedback, [reach out to me at rodrigo@mathspp.com](mailto:rodrigo@mathspp.com).
