<Boundary fill>=
   stack.push (seed);
   while (stack.notEmpty()) {
     pixel = stack.pop();
     pixel.plot(color);
     nghbrs = pixel.neighbors();
     while (nghbrs) {
       neighbor = nghbrs.getPixel();
       if (neighbor.interior() && neighbor.notColored(color)) {
          stack.push(neighbor);
          nghbrs = nghbrs.next();
       }
     }
  }