def METHOD_NAME(cls, *args, **kwargs):
    if cls._args_schema is not None:
        return cls._args_schema
    cls._args_schema = super().METHOD_NAME(*args, **kwargs)
    # define Arg Group ""
    _args_schema = cls._args_schema
    _args_schema.account_name = AAZStrArg(
        options=["--account-name"],
        help="The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.",
        required=True,
        id_part="name",
        fmt=AAZStrArgFormat(
            pattern="^[a-z0-9]+$",
            max_length=24,
            min_length=3,
        ),
    )
    _args_schema.resource_group = AAZResourceGroupNameArg(
        required=True,
    )
    # define Arg Group "Parameters"
    _args_schema = cls._args_schema
    _args_schema.name = AAZStrArg(
        options=["--name"],
        arg_group="Parameters",
        help="current value is 'default' for customer initiated migration",
    )
    _args_schema.type = AAZStrArg(
        options=["--type"],
        arg_group="Parameters",
        help="SrpAccountMigrationType in ARM contract which is 'accountMigrations'",
    )
    # define Arg Group "Properties"
    _args_schema = cls._args_schema
    _args_schema.target_sku_name = AAZStrArg(
        options=["--sku", "--target-sku-name"],
        arg_group="Properties",
        help="Target sku name for the account",
        required=True,
        enum={"Premium_LRS": "Premium_LRS", "Premium_ZRS": "Premium_ZRS", "Standard_GRS": "Standard_GRS", "Standard_GZRS": "Standard_GZRS", "Standard_LRS": "Standard_LRS", "Standard_RAGRS": "Standard_RAGRS", "Standard_RAGZRS": "Standard_RAGZRS", "Standard_ZRS": "Standard_ZRS"},
    )
    return cls._args_schema