@pexdoc.pcontracts.new_contract()<EOL>def touchstone_noise_data(obj):
if isinstance(obj, dict) and (not obj):<EOL><INDENT>return None<EOL><DEDENT>if (not isinstance(obj, dict)) or (<EOL>isinstance(obj, dict)<EOL>and (sorted(obj.keys()) != sorted(["<STR_LIT>", "<STR_LIT>", "<STR_LIT>", "<STR_LIT>", "<STR_LIT>"]))<EOL>):<EOL><INDENT>raise ValueError(pexdoc.pcontracts.get_exdesc())<EOL><DEDENT>if not (isinstance(obj["<STR_LIT>"], int) and (obj["<STR_LIT>"] > <NUM_LIT:0>)):<EOL><INDENT>raise ValueError(pexdoc.pcontracts.get_exdesc())<EOL><DEDENT>if _check_increasing_real_numpy_vector(obj["<STR_LIT>"]):<EOL><INDENT>raise ValueError(pexdoc.pcontracts.get_exdesc())<EOL><DEDENT>if _check_real_numpy_vector(obj["<STR_LIT>"]):<EOL><INDENT>raise ValueError(pexdoc.pcontracts.get_exdesc())<EOL><DEDENT>if _check_number_numpy_vector(obj["<STR_LIT>"]):<EOL><INDENT>raise ValueError(pexdoc.pcontracts.get_exdesc())<EOL><DEDENT>if not (<EOL>isinstance(obj["<STR_LIT>"], np.ndarray)<EOL>and (len(obj["<STR_LIT>"].shape) == <NUM_LIT:1>)<EOL>and (obj["<STR_LIT>"].shape[<NUM_LIT:0>] > <NUM_LIT:0>)<EOL>and np.all(obj["<STR_LIT>"] >= <NUM_LIT:0>)<EOL>):<EOL><INDENT>raise ValueError(pexdoc.pcontracts.get_exdesc())<EOL><DEDENT>sizes = [obj["<STR_LIT>"].size, obj["<STR_LIT>"].size, obj["<STR_LIT>"].size, obj["<STR_LIT>"].size]<EOL>if set(sizes) != set([obj["<STR_LIT>"]]):<EOL><INDENT>raise ValueError(pexdoc.pcontracts.get_exdesc())<EOL><DEDENT>return None<EOL>
r"""
    Validate if an object is an :ref:`TouchstoneNoiseData` pseudo-type object.

    :param obj: Object
    :type  obj: any

    :raises: RuntimeError (Argument \`*[argument_name]*\` is not valid). The
     token \*[argument_name]\* is replaced by the name of the argument the
     contract is attached to

    :rtype: None