code: func (c *Cascade) Find(m image.Image) []image.Rectangle {
  	// TODO(crawshaw): Consider de-duping strategies.
  	matches := []image.Rectangle{}
  	w := newWindow(m)
  
  	b := m.Bounds()
  	origScale := c.Size
  	for s := origScale; s.X < b.Dx() && s.Y < b.Dy(); s = s.Add(s.Div(10)) {
  		// translate region and classify
  		tx := image.Pt(s.X/10, 0)
  		ty := image.Pt(0, s.Y/10)
  		for r := image.Rect(0, 0, s.X, s.Y).Add(b.Min); r.In(b); r = r.Add(ty) {
  			for r1 := r; r1.In(b); r1 = r1.Add(tx) {
  				if c.classify(w.subWindow(r1)) {
  					matches = append(matches, r1)
  				}
  			}
  		}
  	}
  	return matches
  }
docs: // Find returns a set of areas of m that match the feature cascade c.