/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | foam-extend: Open Source CFD                    |
|  \\    /   O peration     | Version:     5.0                                |
|   \\  /    A nd           | Web:         http://www.foam-extend.org         |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       labelList;
    location    "constant";
    object      cellDecomposition;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //


8304
(
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
2
2
2
2
1
1
1
1
1
1
1
1
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
2
1
2
1
2
2
2
2
1
1
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
2
1
2
1
2
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
2
1
2
1
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
1
1
1
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
2
1
1
2
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
2
1
1
1
2
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
2
1
1
1
1
2
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
2
1
1
1
2
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
2
1
1
1
2
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
1
1
1
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
1
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
2
2
2
2
2
2
2
2
2
1
0
1
1
1
0
1
1
2
1
0
2
1
1
2
2
2
2
2
2
2
2
2
2
0
0
1
1
0
0
1
0
2
0
0
2
0
1
2
2
2
2
2
2
2
2
2
2
0
0
1
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
2
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
2
0
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
2
0
0
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
2
0
0
0
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
2
0
0
0
0
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
2
0
0
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
2
2
2
3
2
2
0
0
0
0
0
0
0
0
2
0
0
2
0
0
2
2
2
2
3
2
3
3
3
2
0
0
0
0
0
0
0
0
2
0
0
3
0
0
2
3
2
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
0
0
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
0
0
0
0
0
0
0
0
3
0
0
3
3
0
0
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
0
3
0
0
0
3
0
0
3
3
0
3
3
3
0
0
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
0
0
3
0
3
3
3
3
3
3
3
3
3
3
3
0
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
0
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
)


// ************************************************************************* //
