title: Trouble creating DefaultDict in Dataclass
body: <p>I am having trouble setting up a simple dataclass using  a new defaultdict(dict).</p>
  <p>If I tell the factory to use 'dict' as below , instantiation fails  with <em>typerror collection.defaultdict object is not callable</em></p>
  <pre><code>from collections import defaultdict
  from dataclasses import dataclass, field
  
  @dataclass
  class ResultSet:
      changed: bool = False
      mqttdata:  defaultdict(dict) = field(default_factory=defaultdict(dict)) # does not work!
  </code></pre>
  <p>It does sorta work using <strong>field(default_factory=defaultdict)</strong> but then my code will fail later when it encounters missing keys - presumably because defaultdict was not set up for dict.</p>
  <p>How do I properly set up a new defaultdict(dict) in a dataclass?</p>