def __init__(
        self,
        default: FIELD_TYPE | _MISSING_TYPE = MISSING,
        default_factory: Callable[[], FIELD_TYPE] | None = None,
        is_var: bool = True,
        annotated_type: GenericType  # pyright: ignore [reportRedeclaration]
        | _MISSING_TYPE = MISSING,
    ) -> None:
        """Initialize the field.

        Args:
            default: The default value for the field.
            default_factory: The default factory for the field.
            is_var: Whether the field is a Var.
            annotated_type: The annotated type for the field.
        """
        self.default = default
        self.default_factory = default_factory
        self.is_var = is_var
        if annotated_type is not MISSING:
            type_origin = get_origin(annotated_type) or annotated_type
            if type_origin is Field and (
                args := getattr(annotated_type, "__args__", None)
            ):
                annotated_type: GenericType = args[0]
                type_origin = get_origin(annotated_type) or annotated_type

            if self.default is MISSING and self.default_factory is None:
                default_value = types.get_default_value_for_type(annotated_type)
                if default_value is None and not types.is_optional(annotated_type):
                    annotated_type = annotated_type | None
                if types.is_immutable(default_value):
                    self.default = default_value
                else:
                    self.default_factory = functools.partial(
                        copy.deepcopy, default_value
                    )
            self.outer_type_ = self.annotated_type = annotated_type

            if type_origin is Annotated:
                type_origin = annotated_type.__origin__  # pyright: ignore [reportAttributeAccessIssue]

            self.type_ = self.type_origin = type_origin
        else:
            self.outer_type_ = self.annotated_type = self.type_ = self.type_origin = Any
Initialize the field.

        Args:
            default: The default value for the field.
            default_factory: The default factory for the field.
            is_var: Whether the field is a Var.
            annotated_type: The annotated type for the field.
        
reflex/vars/base.py