class_docstr: A Wild symbol matches anything, or anything
  without whatever is explicitly excluded.
  
  Parameters
  ==========
  
  name : str
      Name of the Wild instance.
  
  exclude : iterable, optional
      Instances in ``exclude`` will not be matched.
  
  properties : iterable of functions, optional
      Functions, each taking an expressions as input
      and returns a ``bool``. All functions in ``properties``
      need to return ``True`` in order for the Wild instance
      to match the expression.
  
  Examples
  ========
  
  >>> from sympy import Wild, WildFunction, cos, pi
  >>> from sympy.abc import x, y, z
  >>> a = Wild('a')
  >>> x.match(a)
  {a_: x}
  >>> pi.match(a)
  {a_: pi}
  >>> (3*x**2).match(a*x)
  {a_: 3*x}
  >>> cos(x).match(a)
  {a_: cos(x)}
  >>> b = Wild('b', exclude=[x])
  >>> (3*x**2).match(b*x)
  >>> b.match(a)
  {a_: b_}
  >>> A = WildFunction('A')
  >>> A.match(a)
  {a_: A_}
  
  Tips
  ====
  
  When using Wild, be sure to use the exclude
  keyword to make the pattern more precise.
  Without the exclude pattern, you may get matches
  that are technically correct, but not what you
  wanted. For example, using the above without
  exclude:
  
  >>> from sympy import symbols
  >>> a, b = symbols('a b', cls=Wild)
  >>> (2 + 3*y).match(a*x + b*y)
  {a_: 2/x, b_: 3}
  
  This is technically correct, because
  (2/x)*x + 3*y == 2 + 3*y, but you probably
  wanted it to not match at all. The issue is that
  you really did not want a and b to include x and y,
  and the exclude parameter lets you specify exactly
  this.  With the exclude parameter, the pattern will
  not match.
  
  >>> a = Wild('a', exclude=[x, y])
  >>> b = Wild('b', exclude=[x, y])
  >>> (2 + 3*y).match(a*x + b*y)
  
  Exclude also helps remove ambiguity from matches.
  
  >>> E = 2*x**3*y*z
  >>> a, b = symbols('a b', cls=Wild)
  >>> E.match(a*b)
  {a_: 2*y*z, b_: x**3}
  >>> a = Wild('a', exclude=[x, y])
  >>> E.match(a*b)
  {a_: z, b_: 2*x**3*y}
  >>> a = Wild('a', exclude=[x, y, z])
  >>> E.match(a*b)
  {a_: 2, b_: x**3*y*z}
  
  Wild also accepts a ``properties`` parameter:
  
  >>> a = Wild('a', properties=[lambda k: k.is_Integer])
  >>> E.match(a*b)
  {a_: 2, b_: x**3*y*z}
class_docstr_tok: ["A","Wild","symbol","matches","anything",",","or","anything","without","whatever","is","explicitly","excluded",".","Parameters","==========","name",":","str","Name","of","the","Wild","instance",".","exclude",":","iterable",",","optional","Instances","in","``","exclude","``","will","not","be","matched",".","properties",":","iterable","of","functions",",","optional","Functions",",","each","taking","an","expressions","as","input","and","returns","a","``","bool","``",".","All","functions","in","``","properties","``","need","to","return","``","True","``","in","order","for","the","Wild","instance","to","match","the","expression",".","Examples","========",">",">",">","from","sympy","import","Wild",",","WildFunction",",","cos",",","pi",">",">",">","from","sympy.abc","import","x",",","y",",","z",">",">",">","a","=","Wild","(","'","a","'",")",">",">",">","x.match","(","a",")","{","a_",":","x","}",">",">",">","pi.match","(","a",")","{","a_",":","pi","}",">",">",">","(","3","*","x","*","*","2",")",".match","(","a","*","x",")","{","a_",":","3","*","x","}",">",">",">","cos","(","x",")",".match","(","a",")","{","a_",":","cos","(","x",")","}",">",">",">","b","=","Wild","(","'","b","'",",","exclude=","[","x","]",")",">",">",">","(","3","*","x","*","*","2",")",".match","(","b","*","x",")",">",">",">","b.match","(","a",")","{","a_",":","b_","}",">",">",">","A","=","WildFunction","(","'","A","'",")",">",">",">","A.match","(","a",")","{","a_",":","A_","}","Tips","====","When","using","Wild",",","be","sure","to","use","the","exclude","keyword","to","make","the","pattern","more","precise",".","Without","the","exclude","pattern",",","you","may","get","matches","that","are","technically","correct",",","but","not","what","you","wanted",".","For","example",",","using","the","above","without","exclude",":",">",">",">","from","sympy","import","symbols",">",">",">","a",",","b","=","symbols","(","'","a","b","'",",","cls=Wild",")",">",">",">","(","2","+","3","*","y",")",".match","(","a","*","x","+","b","*","y",")","{","a_",":","2\/x",",","b_",":","3","}","This","is","technically","correct",",","because","(","2\/x",")","*","x","+","3","*","y","==","2","+","3","*","y",",","but","you","probably","wanted","it","to","not","match","at","all",".","The","issue","is","that","you","really","did","not","want","a","and","b","to","include","x","and","y",",","and","the","exclude","parameter","lets","you","specify","exactly","this",".","With","the","exclude","parameter",",","the","pattern","will","not","match",".",">",">",">","a","=","Wild","(","'","a","'",",","exclude=","[","x",",","y","]",")",">",">",">","b","=","Wild","(","'","b","'",",","exclude=","[","x",",","y","]",")",">",">",">","(","2","+","3","*","y",")",".match","(","a","*","x","+","b","*","y",")","Exclude","also","helps","remove","ambiguity","from","matches",".",">",">",">","E","=","2","*","x","*","*","3","*","y","*","z",">",">",">","a",",","b","=","symbols","(","'","a","b","'",",","cls=Wild",")",">",">",">","E.match","(","a","*","b",")","{","a_",":","2","*","y","*","z",",","b_",":","x","*","*","3","}",">",">",">","a","=","Wild","(","'","a","'",",","exclude=","[","x",",","y","]",")",">",">",">","E.match","(","a","*","b",")","{","a_",":","z",",","b_",":","2","*","x","*","*","3","*","y","}",">",">",">","a","=","Wild","(","'","a","'",",","exclude=","[","x",",","y",",","z","]",")",">",">",">","E.match","(","a","*","b",")","{","a_",":","2",",","b_",":","x","*","*","3","*","y","*","z","}","Wild","also","accepts","a","``","properties","``","parameter",":",">",">",">","a","=","Wild","(","'","a","'",",","properties=","[","lambda","k",":","k.is_Integer","]",")",">",">",">","E.match","(","a","*","b",")","{","a_",":","2",",","b_",":","x","*","*","3","*","y","*","z","}"]
code: def __new__(cls, name, exclude=(), properties=(), **assumptions):
      exclude = tuple([sympify(x) for x in exclude])
      properties = tuple(properties)
      cls._sanitize(assumptions, cls)
      return Wild.__xnew__(
          cls, name, exclude, properties, **assumptions
      )
  
imports: from __future__ import annotations
  from .assumptions import StdFactKB, _assume_defined
  from .basic import Basic, Atom
  from .cache import cacheit
  from .containers import Tuple
  from .expr import Expr, AtomicExpr
  from .function import AppliedUndef, FunctionClass
  from .kind import NumberKind, UndefinedKind
  from .logic import fuzzy_bool
  from .singleton import S
  from .sorting import ordered
  from .sympify import sympify
  from sympy.logic.boolalg import Boolean
  from sympy.utilities.iterables import sift, is_sequence
  from sympy.utilities.misc import filldedent
  import string
  import re
  import random
  from itertools import product
  from typing import Any
label_desc: Use image node_id 1 for calling the Wild obj's underlying member method code with example usage: obj.__new__(cls, name, exclude, properties) and returns: Wild