def dataset_constructor_kwargs(root_path, **kwargs):
    """Return key-value arguments for dataset constructor. In order to add or
    change arguments pass arguments to this function. The parameter root_path
    must be always specified.

    Args:
      root_path: The root_path for the Dataset.
      kwargs: Arguments to update the defaults.

    Example use:
      # Set "version" to 2, add new parameter "new_par" to "new_value" and
      # remove "firmware_url":
      result = dataset_constructor_kwargs(root_path=root_path,
                                          version=2,
                                          new_par="new_value")
      del result["firmware_url"]
    """
    result = {
        "root_path": root_path,
        "shortname": "shortname",
        "architecture": "architecture",
        "implementation": "implementation",
        "algorithm": "algorithm",
        "version": 1,
        "paper_url": "http://paper.url",
        "firmware_url": "http://firmware.url",
        "licence": "CC BY 4.0",
        "description": "description",
        "url": "http://download.url",
        "firmware_sha256": "abc123",
        "examples_per_shard": 1,
        "measurements_info": {
            "trace1": {
                "type": "power",
                "len": 1024,
            }
        },
        "attack_points_info": {
            "key": {
                "len": 16,
                "max_val": 256
            },
        }
    }
    result.update(kwargs)
    return result