# generated by datamodel-codegen:
#   filename:  complex_reference.json
#   timestamp: 2019-07-26T00:00:00+00:00

from __future__ import annotations

from typing import Optional

from pydantic import BaseModel


class A(BaseModel):
    a_property: Optional[B1] = None


class B1(A):
    pass


class B2(A):
    pass


class C1(B1):
    pass


class D1(C1):
    pass


class D1andB2(D1, B2):
    pass


A.update_forward_refs()
B1.update_forward_refs()
B2.update_forward_refs()
C1.update_forward_refs()
D1.update_forward_refs()
D1andB2.update_forward_refs()
