human
Print path from given Source to Destination in 2 | Function to print the path.
Base condition.
Pop stores elements.
Recursive call for printing stack In reverse order.
Function to store the path into The stack , if path exist.
Base condition.
Push current elements.
Condition to check whether reach to the Destination or not.
Increment ' x ' ordinate of source by ( 2 * x + y ) Keeping ' y ' constant.
Increment ' y ' ordinate of source by ( 2 * y + x ) Keeping ' x ' constant.
Pop current elements form stack.
If no path exists.
Utility function to check whether path exist or not.
To store x co - ordinate.
To store y co - ordinate.
Function to find the path.
Print - 1 , if path doesn 't exist.
Driver code.
Function call"
Solution in Python:

=====
Give me a code to print path from given Source to Destination in 2 and the other steps required?
assistant
#Here is code to print path from given Source to Destination in 2 and the other steps required.
 def printExistPath ( sx , sy , last ) :
	if ( len ( sx ) == 0 or len ( sy ) == 0 ) :
		return
	x = sx [ - 1 ] ;
	y = sy [ - 1 ]
	sx . pop ( ) ;
	sy . pop ( ) ;
	printExistPath ( sx , sy , last ) ;
	if ( len ( sx ) == last - 1 ) :
		print ( " ( " + str ( x ) + " , ▁ " + str ( y ) + " ) " , end = ' ' )
	else :
		print ( " ( " + str ( x ) + " , ▁ " + str ( y ) + " ) ▁ - > ▁ " , end = ' ' )
def storePath ( srcX , srcY , destX , destY , sx , sy ) :
	if ( srcX > destX or srcY > destY ) :
		return False ;
	sx . append ( srcX ) ;
	sy . append ( srcY ) ;
	if ( srcX == destX and srcY == destY ) :
		printExistPath ( sx , sy , len ( sx ) ) ;
		return True ;
	if ( storePath ( ( 2 * srcX ) + srcY , srcY , destX , destY , sx , sy ) ) :
		return True ;
	if ( storePath ( srcX , ( 2 * srcY ) + srcX , destX , destY , sx , sy ) ) :
		return True ;
	sx . pop ( ) ;
	sy . pop ( ) ;
	return False ;
def isPathExist ( srcX , srcY , destX , destY ) :
	sx = [ ]
	sy = [ ]
	return storePath ( srcX , srcY , destX , destY , sx , sy ) ;
def printPath ( srcX , srcY , destX , destY ) :
	if ( not isPathExist ( srcX , srcY , destX , destY ) ) :
		print ( " - 1" ) ;
if __name__ == ' _ _ main _ _ ' :
	srcX = 5
	srcY = 8 ;
	destX = 83
	destY = 21 ;
	printPath ( srcX , srcY , destX , destY ) ;