..######.........##...######...##......##..##....##........##..##....##..##..##..##..##..............##..##........##..##..##..##..............##...######...##..##..##..##........##....##........##..##..##..##..##....##..##....##..##....##..##..##..##...######....######....######....###..###..