0
0
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
0
0
0
0
01
01
01
01
01
01
01
01
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
}}}
