package main import ( "fmt" ) func main() { var x [4][4]int var x2 [4][4]int z := 0 z2 := 1 for i := 0; i<4; i++ { for j := 0; j<4; j++ { fmt.Scan(&z) x[i][j]=z x2[i][j]=z2 z2++ } } x2[3][3]=0 //fmt.Println(x2) a := [4]int{0, 1, 0, -1} b := [4]int{1, 0, -1, 0} for q := 0; q<16; q++ { for i := 0; i<4; i++ { for j := 0; j<4; j++ { if x[i][j]==0 { for k := 0; k<4; k++ { if i+a[k]<0||i+a[k]>3||j+b[k]<0||j+b[k]>3{ continue } if x2[i][j]==x[i+a[k]][j+b[k]] { x[i+a[k]][j+b[k]], x[i][j] = x[i][j], x[i+a[k]][j+b[k]] } } } } } } f := 0 for i := 0; i<4; i++ { for j := 0; j<4; j++ { if x[i][j]!=x2[i][j] { f=1 } } } if f==0 { fmt.Println("Yes") }else { fmt.Println("No") } }