code: func (p *Piece) collides(field *Field, x, y int, angle Angle) bool {
  	size := len(p.blocks)
  	for i := 0; i < size; i++ {
  		for j := 0; j < size; j++ {
  			if field.IsBlocked(x+i, y+j) && p.isBlocked(i, j, angle) {
  				return true
  			}
  		}
  	}
  	return false
  }
docs: // collides returns a boolean value indicating whether
  // the piece at (x, y) with the given angle would collide with the field's blocks.