001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
005
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
004
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
010
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
013
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
021
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
026
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
001
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
002
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
038
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
018
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
027
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
028
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
019
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
025
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
037
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
003
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
007
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
009
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
015
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
016
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
017
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
020
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
046
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
047
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
050
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
057
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
060
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
061
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
062
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
063
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
064
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
055
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
056
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
058
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
059
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
065
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
066
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
068
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
011
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
078
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
079
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
081
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
083
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
084
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
086
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
048
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
049
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
074
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
075
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
080
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
088
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
089
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
090
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
006
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
008
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
041
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
042
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
043
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
044
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
051
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
067
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
082
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
085
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
096
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
097
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
098
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
099
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
