parameters: (p, q)
return_statement: return p
docstring: Returns the greatest common divisor of p and q
      >>> gcd(48, 180)
      12
docstring_summary: Returns the greatest common divisor of p and q
      >>> gcd(48, 180)
      12
docstring_tokens: Returns the greatest common divisor of p and q >>> gcd ( 48 180 ) 12
function: def gcd(p, q):
      """Returns the greatest common divisor of p and q
      >>> gcd(48, 180)
      12
      """
      # Iterateive Version is faster and uses much less stack space
      while q != 0:
          if p < q: (p,q) = (q,p)
          (p,q) = (q, p % q)
      return p
function_tokens: def gcd ( p , q ) : # Iterateive Version is faster and uses much less stack space while q != 0 : if p < q : ( p , q ) = ( q , p ) ( p , q ) = ( q , p % q ) return p