also, keep in mind you wrote "then gosub pass_test and paste image 3, 20, 20"
the *and* operator is what's called a boolean operator. Boolean values are either true or false, 1 or 0.
1 and 0 = 0
0 and 1 = 0
0 and 0 = 0
1 and 1 = 1
The less than operator is also a boolean operator, because it returns a zero or a 1. So it only would make sense to do something like you're doing, if you had function1() and function2() that both returned values, IE:
if blah<foo then myBooleanValue=function1() and function2()
This would make myBooleanValue either 1 or 0, and both function1 and function2 would be called.