Capturing unused fields while decoding a JSON object with circe : <p>Suppose I have a case class like the following, and I want to decode a JSON object into it, with all of the fields that haven't been used ending up in a special member for the leftovers:</p>

<pre><code>import io.circe.Json

case class Foo(a: Int, b: String, leftovers: Json)
</code></pre>

<p>What's the best way to do this in Scala with circe?</p>

<p>(Note: I've seen questions like this <a href="https://gitter.im/circe/circe?at=5b4b0058582aaa63076beb77" rel="noreferrer">a few times</a>, so I'm Q-and-A-ing it for posterity.)</p>
