import scala.io.StdIn.{readInt,readLine}
import scala.collection.mutable.ArrayBuffer

object Main {
  def main(args:Array[String]) = {
    val n = readLine.split(" ").map(_.toInt)
    val d = new Array[Int](n(0))
    val g = new Array[ArrayBuffer[Int]](n(0))

    for(i<-0 until n(0)) g(i) = new ArrayBuffer[Int]
    for(i<-0 until n(1)) {
      val v = readLine.split(" ").map(_.toInt)
      g(v(0)) += v(1)
    }

    def scan(i:Int, connected:Int):Unit = {
      if(d(i)==0) d(i) = connected

      if(g(i).length > 0) {
        for(j<-0 until g(i).length) {
          if(d(g(i)(j))==0) {
            scan(g(i)(j), connected)
          }
        }
      }
    }

    var connected = 1
    for(i<-0 until n(0)) {
      if(d(i)==0) {
        scan(i, connected)
        connected += 1
      }
    }

    val q = readInt
    for(i<-0 until q) {
      val s = readLine.split(" ").map(_.toInt)
      if(d(s(0)) == d(s(1))) println("yes")
      else println("no")
    }
  }
}